@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 +1 @@
1
- {"version":3,"file":"harmony83.mjs","sources":["../src/features/permissions/hooks/useCanPerformAction.ts"],"sourcesContent":["import type { Action } from '@features/permissions/action'\nimport { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport { canPerformAction } from '@features/permissions/utils/canPerformAction'\nimport { useMemo } from 'react'\n\n/**\n * React hook to determine if the current user has permission to perform a specific action.\n *\n * This hook is useful for conditionally rendering UI elements or triggering logic\n * based on whether the user can perform a given action.\n * It leverages the permissions context and returns a boolean indicating the user's ability.\n *\n * @param action The action to check permission for (e.g. 'accessMarketingProjects', 'deleteProjects').\n * @returns {boolean} True if the user can perform the action, otherwise false.\n *\n * @example\n * // Check if the user can access marketing projects\n * const canAccess = useCanPerformAction(\"accessMarketingProjects\");\n * if (canAccess) {\n * // show marketing dashboard\n * }\n */\nexport const useCanPerformAction = (action: Action): boolean => {\n\tconst payload = useActionResolverPayload()\n\n\treturn useMemo(() => canPerformAction(action, payload), [action, payload])\n}\n"],"names":[],"mappings":";;;AAsBa,MAAA,sBAAsB,CAAC,WAA4B;AAC/D,QAAM,UAAU,yBAAyB;AAElC,SAAA,QAAQ,MAAM,iBAAiB,QAAQ,OAAO,GAAG,CAAC,QAAQ,OAAO,CAAC;AAC1E;"}
1
+ {"version":3,"file":"harmony83.mjs","sources":["../src/features/publicApi/types/projectTypes.ts"],"sourcesContent":["import { PROJECT_TYPES } from '@features/permissions/types'\nimport {\n\tPERMISSION_ID_SCHEMA,\n\tPERMISSION_SCOPE_SCHEMA,\n} from '@features/publicApi/types/permissionTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\nimport { LANGUAGE_ISO_SCHEMA, LANGUAGE_STATISTICS_SCHEMA } from './languageTypes'\n\nexport const PROJECT_ID_SCHEMA = z.string().regex(/^[a-zA-Z0-9]{22}\\.\\d{8}$/)\nexport type ProjectId = z.infer<typeof PROJECT_ID_SCHEMA>\n\nexport const PROJECT_ID_OR_UUID_SCHEMA = z.union([PROJECT_ID_SCHEMA, z.string().uuid()])\nexport type ProjectIdOrUuid = z.infer<typeof PROJECT_ID_OR_UUID_SCHEMA>\n\nexport const PROJECT_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type ProjectApiBaseHeaders = z.infer<typeof PROJECT_API_BASE_HEADERS_SCHEMA>\n\nexport const PROJECT_TYPE_SCHEMA = z.enum(PROJECT_TYPES)\n\nexport const PROJECT_SETTINGS_SCHEMA = z.object({\n\tper_platform_key_names: z.boolean(),\n\treviewing: z.boolean(),\n\tauto_toggle_unverified: z.boolean(),\n\toffline_translation: z.boolean(),\n\tkey_editing: z.boolean(),\n\tbranching: z.boolean(),\n\tinline_machine_translations: z.boolean(),\n\tcustom_translation_statuses: z.boolean(),\n\tcustom_translation_statuses_allow_multiple: z.boolean(),\n\tsegmentation: z.boolean(),\n\tcontributor_preview_download_enabled: z.boolean(),\n})\n\nexport type ProjectSettings = z.infer<typeof PROJECT_SETTINGS_SCHEMA>\n\nexport const PROJECT_QA_ISSUES_SCHEMA = z.object({\n\tnot_reviewed: z.number(),\n\tunverified: z.number(),\n\tspelling_grammar: z.number(),\n\tinconsistent_placeholders: z.number(),\n\tinconsistent_html: z.number(),\n\tdifferent_number_of_urls: z.number(),\n\tdifferent_urls: z.number(),\n\tleading_whitespace: z.number(),\n\ttrailing_whitespace: z.number(),\n\tdifferent_number_of_email_address: z.number(),\n\tdifferent_email_address: z.number(),\n\tdifferent_brackets: z.number(),\n\tdifferent_numbers: z.number(),\n\tdouble_space: z.number(),\n\tspecial_placeholder: z.number(),\n\tunbalanced_brackets: z.number(),\n})\n\nexport type ProjectQaIssues = z.infer<typeof PROJECT_QA_ISSUES_SCHEMA>\n\nexport const PROJECT_STATISTICS_SCHEMA = z.object({\n\tprogress_total: z.number(),\n\tkeys_total: z.number(),\n\tteam: z.number(),\n\tbase_words: z.number(),\n\tqa_issues_total: z.number(),\n\tqa_issues: PROJECT_QA_ISSUES_SCHEMA,\n\tlanguages: z.array(LANGUAGE_STATISTICS_SCHEMA),\n})\n\nexport const PROJECT_SCHEMA = z.object({\n\tproject_id: PROJECT_ID_SCHEMA,\n\tuuid: z.string().uuid(),\n\tproject_type: PROJECT_TYPE_SCHEMA,\n\tname: z.string(),\n\tdescription: z.string(),\n\tcreated_at: z.string(),\n\tcreated_at_timestamp: z.number(),\n\tcreated_by: z.number(),\n\tcreated_by_email: z.string(),\n\tteam_id: z.number(),\n\tteam_uuid: z.string().uuid(),\n\tbase_language_id: z.number(),\n\tbase_language_iso: z.string(),\n\tbase_project_language_id: z.number(),\n\tbase_project_language_uuid: z.string().uuid(),\n\tsettings: PROJECT_SETTINGS_SCHEMA.optional(),\n\tstatistics: PROJECT_STATISTICS_SCHEMA.optional(),\n})\n\nexport type Project = z.infer<typeof PROJECT_SCHEMA>\n\nexport const CREATE_PROJECT_REQUEST_BODY_SCHEMA = z.object({\n\tname: z.string(),\n\tteam_id: z.string(),\n\tbase_lang_iso: z.string(),\n\tlanguages: z.array(LANGUAGE_ISO_SCHEMA),\n\tproject_type: PROJECT_TYPE_SCHEMA,\n\tis_segmentation_enabled: z.boolean(),\n})\n\nexport type CreateProjectRequestBody = z.infer<typeof CREATE_PROJECT_REQUEST_BODY_SCHEMA>\n\nconst NUMBER_BOOLEAN_SCHEMA = z.union([z.literal(0), z.literal(1)])\n\nexport const LIST_PROJECTS_REQUEST_QUERY_SCHEMA = z.object({\n\tfilter_type: PROJECT_TYPE_SCHEMA.optional(),\n\tfilter_team_id: z.number().optional(),\n\tfilter_names: z.string().optional(),\n\tinclude_statistics: NUMBER_BOOLEAN_SCHEMA.optional(),\n\tinclude_settings: NUMBER_BOOLEAN_SCHEMA.optional(),\n\tlimit: z.number().optional(),\n\tpage: z.number().optional(),\n})\n\nexport type ListProjectsRequestQuery = z.infer<typeof LIST_PROJECTS_REQUEST_QUERY_SCHEMA>\n\nexport const LIST_PROJECTS_SUCCESS_RESPONSE_BODY = z.object({\n\tprojects: z.array(PROJECT_SCHEMA),\n})\n\nexport type ListProjectsSuccessResponseBody = z.infer<typeof LIST_PROJECTS_SUCCESS_RESPONSE_BODY>\n\nexport const PROJECT_ID_PATH_PARAM_SCHEMA = z.object({ projectId: PROJECT_ID_OR_UUID_SCHEMA })\nexport type ProjectIdPathParam = z.infer<typeof PROJECT_ID_PATH_PARAM_SCHEMA>\n\nexport const UPDATE_PROJECT_REQUEST_BODY_SCHEMA = z.object({\n\tname: z.string().min(1),\n\tdescription: z.string().optional(),\n})\n\nexport type UpdateProjectRequestBody = z.infer<typeof UPDATE_PROJECT_REQUEST_BODY_SCHEMA>\n\nconst PROJECT_PERMISSION_DETAILS_META_SCHEMA = z.object({\n\tid: PERMISSION_ID_SCHEMA,\n\tscope: PERMISSION_SCOPE_SCHEMA,\n\ttitle: z.string(),\n\tgroup: z.string(),\n\tdescription: z.string().nullable(),\n\tdependentPermissions: z.array(PERMISSION_ID_SCHEMA).optional(),\n\tdoesSetAllReadOnlyLanguages: z.boolean(),\n\tnewPermission: z.boolean().optional(),\n\tisHidden: z.boolean().optional(),\n})\n\nexport type ProjectPermissionDetailsMeta = z.infer<typeof PROJECT_PERMISSION_DETAILS_META_SCHEMA>\n\nconst PROJECT_PERMISSION_TEMPLATE_DETAILS_META_SCHEMA = z.object({\n\tid: z.number(),\n\trole: z.string(),\n\tpermissions: z.array(PERMISSION_ID_SCHEMA),\n\tdescription: z.string().nullable(),\n\ttag: z.string().nullable(),\n\ttagColor: z.string().nullable(),\n\ttagInfo: z.string().nullable(),\n\tisForMarketingProjects: z.boolean(),\n\tdoesEnableAllReadOnlyLanguages: z.boolean(),\n})\n\nexport type ProjectPermissionTemplateDetailsMeta = z.infer<\n\ttypeof PROJECT_PERMISSION_TEMPLATE_DETAILS_META_SCHEMA\n>\n\nexport const GET_PROJECT_PERMISSION_META_RESPONSE_BODY_SCHEMA = z.object({\n\tproject_id: PROJECT_ID_SCHEMA,\n\tproject_uuid: z.string().uuid(),\n\tpermissions: z.array(PROJECT_PERMISSION_DETAILS_META_SCHEMA),\n\troles: z.array(PROJECT_PERMISSION_TEMPLATE_DETAILS_META_SCHEMA),\n})\n\nexport type GetProjectPermissionMetaResponseBody = z.infer<\n\ttypeof GET_PROJECT_PERMISSION_META_RESPONSE_BODY_SCHEMA\n>\n\nexport const DELETE_PROJECT_RESPONSE_SCHEMA = z.object({\n\tproject_id: PROJECT_ID_SCHEMA,\n\tproject_deleted: z.boolean(),\n})\n\nexport type DeleteProjectResponse = z.infer<typeof DELETE_PROJECT_RESPONSE_SCHEMA>\n"],"names":[],"mappings":";;;;;AASO,MAAM,oBAAoB,EAAE,OAAO,EAAE,MAAM,0BAA0B;AAG/D,MAAA,4BAA4B,EAAE,MAAM,CAAC,mBAAmB,EAAE,OAAO,EAAE,MAAM,CAAC;AAGhF,MAAM,kCAAkC;AAIlC,MAAA,sBAAsB,EAAE,KAAK,aAAa;AAE1C,MAAA,0BAA0B,EAAE,OAAO;AAAA,EAC/C,wBAAwB,EAAE,QAAQ;AAAA,EAClC,WAAW,EAAE,QAAQ;AAAA,EACrB,wBAAwB,EAAE,QAAQ;AAAA,EAClC,qBAAqB,EAAE,QAAQ;AAAA,EAC/B,aAAa,EAAE,QAAQ;AAAA,EACvB,WAAW,EAAE,QAAQ;AAAA,EACrB,6BAA6B,EAAE,QAAQ;AAAA,EACvC,6BAA6B,EAAE,QAAQ;AAAA,EACvC,4CAA4C,EAAE,QAAQ;AAAA,EACtD,cAAc,EAAE,QAAQ;AAAA,EACxB,sCAAsC,EAAE,QAAQ;AACjD,CAAC;AAIY,MAAA,2BAA2B,EAAE,OAAO;AAAA,EAChD,cAAc,EAAE,OAAO;AAAA,EACvB,YAAY,EAAE,OAAO;AAAA,EACrB,kBAAkB,EAAE,OAAO;AAAA,EAC3B,2BAA2B,EAAE,OAAO;AAAA,EACpC,mBAAmB,EAAE,OAAO;AAAA,EAC5B,0BAA0B,EAAE,OAAO;AAAA,EACnC,gBAAgB,EAAE,OAAO;AAAA,EACzB,oBAAoB,EAAE,OAAO;AAAA,EAC7B,qBAAqB,EAAE,OAAO;AAAA,EAC9B,mCAAmC,EAAE,OAAO;AAAA,EAC5C,yBAAyB,EAAE,OAAO;AAAA,EAClC,oBAAoB,EAAE,OAAO;AAAA,EAC7B,mBAAmB,EAAE,OAAO;AAAA,EAC5B,cAAc,EAAE,OAAO;AAAA,EACvB,qBAAqB,EAAE,OAAO;AAAA,EAC9B,qBAAqB,EAAE,OAAO;AAC/B,CAAC;AAIY,MAAA,4BAA4B,EAAE,OAAO;AAAA,EACjD,gBAAgB,EAAE,OAAO;AAAA,EACzB,YAAY,EAAE,OAAO;AAAA,EACrB,MAAM,EAAE,OAAO;AAAA,EACf,YAAY,EAAE,OAAO;AAAA,EACrB,iBAAiB,EAAE,OAAO;AAAA,EAC1B,WAAW;AAAA,EACX,WAAW,EAAE,MAAM,0BAA0B;AAC9C,CAAC;AAEY,MAAA,iBAAiB,EAAE,OAAO;AAAA,EACtC,YAAY;AAAA,EACZ,MAAM,EAAE,OAAO,EAAE,KAAK;AAAA,EACtB,cAAc;AAAA,EACd,MAAM,EAAE,OAAO;AAAA,EACf,aAAa,EAAE,OAAO;AAAA,EACtB,YAAY,EAAE,OAAO;AAAA,EACrB,sBAAsB,EAAE,OAAO;AAAA,EAC/B,YAAY,EAAE,OAAO;AAAA,EACrB,kBAAkB,EAAE,OAAO;AAAA,EAC3B,SAAS,EAAE,OAAO;AAAA,EAClB,WAAW,EAAE,OAAO,EAAE,KAAK;AAAA,EAC3B,kBAAkB,EAAE,OAAO;AAAA,EAC3B,mBAAmB,EAAE,OAAO;AAAA,EAC5B,0BAA0B,EAAE,OAAO;AAAA,EACnC,4BAA4B,EAAE,OAAO,EAAE,KAAK;AAAA,EAC5C,UAAU,wBAAwB,SAAS;AAAA,EAC3C,YAAY,0BAA0B,SAAS;AAChD,CAAC;AAIY,MAAA,qCAAqC,EAAE,OAAO;AAAA,EAC1D,MAAM,EAAE,OAAO;AAAA,EACf,SAAS,EAAE,OAAO;AAAA,EAClB,eAAe,EAAE,OAAO;AAAA,EACxB,WAAW,EAAE,MAAM,mBAAmB;AAAA,EACtC,cAAc;AAAA,EACd,yBAAyB,EAAE,QAAQ;AACpC,CAAC;AAID,MAAM,wBAAwB,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;AAErD,MAAA,qCAAqC,EAAE,OAAO;AAAA,EAC1D,aAAa,oBAAoB,SAAS;AAAA,EAC1C,gBAAgB,EAAE,OAAO,EAAE,SAAS;AAAA,EACpC,cAAc,EAAE,OAAO,EAAE,SAAS;AAAA,EAClC,oBAAoB,sBAAsB,SAAS;AAAA,EACnD,kBAAkB,sBAAsB,SAAS;AAAA,EACjD,OAAO,EAAE,OAAO,EAAE,SAAS;AAAA,EAC3B,MAAM,EAAE,OAAO,EAAE,SAAS;AAC3B,CAAC;AAIY,MAAA,sCAAsC,EAAE,OAAO;AAAA,EAC3D,UAAU,EAAE,MAAM,cAAc;AACjC,CAAC;AAIM,MAAM,+BAA+B,EAAE,OAAO,EAAE,WAAW,0BAA2B,CAAA;AAGhF,MAAA,qCAAqC,EAAE,OAAO;AAAA,EAC1D,MAAM,EAAE,SAAS,IAAI,CAAC;AAAA,EACtB,aAAa,EAAE,OAAO,EAAE,SAAS;AAClC,CAAC;AAID,MAAM,yCAAyC,EAAE,OAAO;AAAA,EACvD,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,OAAO,EAAE,OAAO;AAAA,EAChB,OAAO,EAAE,OAAO;AAAA,EAChB,aAAa,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,sBAAsB,EAAE,MAAM,oBAAoB,EAAE,SAAS;AAAA,EAC7D,6BAA6B,EAAE,QAAQ;AAAA,EACvC,eAAe,EAAE,QAAQ,EAAE,SAAS;AAAA,EACpC,UAAU,EAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAID,MAAM,kDAAkD,EAAE,OAAO;AAAA,EAChE,IAAI,EAAE,OAAO;AAAA,EACb,MAAM,EAAE,OAAO;AAAA,EACf,aAAa,EAAE,MAAM,oBAAoB;AAAA,EACzC,aAAa,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,KAAK,EAAE,OAAO,EAAE,SAAS;AAAA,EACzB,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,SAAS,EAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,wBAAwB,EAAE,QAAQ;AAAA,EAClC,gCAAgC,EAAE,QAAQ;AAC3C,CAAC;AAMY,MAAA,mDAAmD,EAAE,OAAO;AAAA,EACxE,YAAY;AAAA,EACZ,cAAc,EAAE,OAAO,EAAE,KAAK;AAAA,EAC9B,aAAa,EAAE,MAAM,sCAAsC;AAAA,EAC3D,OAAO,EAAE,MAAM,+CAA+C;AAC/D,CAAC;AAMY,MAAA,iCAAiC,EAAE,OAAO;AAAA,EACtD,YAAY;AAAA,EACZ,iBAAiB,EAAE,QAAQ;AAC5B,CAAC;"}
@@ -1,14 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const useActionResolverPayload = require("./harmony139.cjs");
4
- const canPerformAction = require("./harmony88.cjs");
5
- const React = require("react");
6
- const useCanPerformAllActions = (...actions) => {
7
- const payload = useActionResolverPayload.useActionResolverPayload();
8
- return React.useMemo(
9
- () => actions.every((action) => canPerformAction.canPerformAction(action, payload)),
10
- [payload, actions.join()]
11
- );
12
- };
13
- exports.useCanPerformAllActions = useCanPerformAllActions;
3
+ const zod = require("zod");
4
+ const SEVERITY_ENUM = zod.z.enum(["critical", "major", "minor", "neutral"]);
5
+ const ISSUE_SCHEMA = zod.z.object({
6
+ category: zod.z.string(),
7
+ comment: zod.z.string(),
8
+ severity: SEVERITY_ENUM,
9
+ penalty: zod.z.number()
10
+ });
11
+ const SCORE_REQUEST_QUERY_SCHEMA = zod.z.object({
12
+ projectId: zod.z.string(),
13
+ keyId: zod.z.number(),
14
+ languageId: zod.z.string()
15
+ });
16
+ const GET_SCORE_RESPONSE_SCHEMA = zod.z.object({
17
+ score: zod.z.number(),
18
+ hasMajorIssue: zod.z.boolean(),
19
+ hasCriticalIssue: zod.z.boolean(),
20
+ issues: zod.z.array(ISSUE_SCHEMA)
21
+ });
22
+ const DELETE_SCORE_RESPONSE_SCHEMA = zod.z.null();
23
+ const CREATE_SCORE_REQUEST_BODY_SCHEMA = zod.z.object({
24
+ segmentId: zod.z.number(),
25
+ sourceLanguageId: zod.z.number()
26
+ });
27
+ const CREATE_SCORE_RESPONSE_SCHEMA = zod.z.object({
28
+ score: zod.z.number(),
29
+ hasCriticalIssue: zod.z.boolean(),
30
+ hasMajorIssue: zod.z.boolean(),
31
+ issues: zod.z.array(ISSUE_SCHEMA)
32
+ });
33
+ exports.CREATE_SCORE_REQUEST_BODY_SCHEMA = CREATE_SCORE_REQUEST_BODY_SCHEMA;
34
+ exports.CREATE_SCORE_RESPONSE_SCHEMA = CREATE_SCORE_RESPONSE_SCHEMA;
35
+ exports.DELETE_SCORE_RESPONSE_SCHEMA = DELETE_SCORE_RESPONSE_SCHEMA;
36
+ exports.GET_SCORE_RESPONSE_SCHEMA = GET_SCORE_RESPONSE_SCHEMA;
37
+ exports.ISSUE_SCHEMA = ISSUE_SCHEMA;
38
+ exports.SCORE_REQUEST_QUERY_SCHEMA = SCORE_REQUEST_QUERY_SCHEMA;
39
+ exports.SEVERITY_ENUM = SEVERITY_ENUM;
14
40
  //# sourceMappingURL=harmony84.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony84.cjs","sources":["../src/features/permissions/hooks/useCanPerformAllActions.ts"],"sourcesContent":["import type { Action } from '@features/permissions/action'\nimport { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport { canPerformAction } from '@features/permissions/utils/canPerformAction'\nimport { useMemo } from 'react'\n\n/**\n * React hook to determine if the current user has permission to perform all the specified actions.\n *\n * This hook is useful for conditionally rendering UI elements or triggering logic\n * that require the user to have multiple permissions.\n * It returns true only if the user can perform every action in the provided list.\n *\n * @param actions A list of actions to check permissions for (e.g. 'accessMarketingProjects', 'deleteProjects').\n * @returns {boolean} True if the user can perform all actions, otherwise false.\n *\n * @example\n * // Check if the user can both access marketing projects and delete projects\n * const canDoAll = useCanPerformAllActions(\"accessMarketingProjects\", \"deleteProjects\");\n * if (canDoAll) {\n * // show danger zone\n * }\n */\nexport const useCanPerformAllActions = (...actions: Action[]): boolean => {\n\tconst payload = useActionResolverPayload()\n\n\t// The reason for using `actions.join()` is to ensure that the memoization will not recompute\n\t// unless the actions themselves change. This is required as collecting the actions with `...actions`\n\t// will result in a new array reference on every render, which would cause the memoization to invalidate.\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Explained above\n\treturn useMemo(\n\t\t() => actions.every((action) => canPerformAction(action, payload)),\n\t\t[payload, actions.join()],\n\t)\n}\n"],"names":["useActionResolverPayload","useMemo","canPerformAction"],"mappings":";;;;;AAsBa,MAAA,0BAA0B,IAAI,YAA+B;AACzE,QAAM,UAAUA,yBAAAA,yBAAyB;AAMlC,SAAAC,MAAA;AAAA,IACN,MAAM,QAAQ,MAAM,CAAC,WAAWC,iBAAAA,iBAAiB,QAAQ,OAAO,CAAC;AAAA,IACjE,CAAC,SAAS,QAAQ,KAAM,CAAA;AAAA,EACzB;AACD;;"}
1
+ {"version":3,"file":"harmony84.cjs","sources":["../src/features/publicApi/types/scoreTypes.ts"],"sourcesContent":["import { z } from 'zod'\n\nexport const SEVERITY_ENUM = z.enum(['critical', 'major', 'minor', 'neutral'])\n\nexport type Severity = z.infer<typeof SEVERITY_ENUM>\n\nexport const ISSUE_SCHEMA = z.object({\n\tcategory: z.string(),\n\tcomment: z.string(),\n\tseverity: SEVERITY_ENUM,\n\tpenalty: z.number(),\n})\n\nexport type Issue = z.infer<typeof ISSUE_SCHEMA>\n\nexport const SCORE_REQUEST_QUERY_SCHEMA = z.object({\n\tprojectId: z.string(),\n\tkeyId: z.number(),\n\tlanguageId: z.string(),\n})\n\nexport type ScoreRequestQuery = z.infer<typeof SCORE_REQUEST_QUERY_SCHEMA>\n\nexport const GET_SCORE_RESPONSE_SCHEMA = z.object({\n\tscore: z.number(),\n\thasMajorIssue: z.boolean(),\n\thasCriticalIssue: z.boolean(),\n\tissues: z.array(ISSUE_SCHEMA),\n})\n\nexport type GetScoreResponseBody = z.infer<typeof GET_SCORE_RESPONSE_SCHEMA>\n\nexport const DELETE_SCORE_RESPONSE_SCHEMA = z.null()\n\nexport type DeleteScoreResponseBody = z.infer<typeof DELETE_SCORE_RESPONSE_SCHEMA>\n\nexport const CREATE_SCORE_REQUEST_BODY_SCHEMA = z.object({\n\tsegmentId: z.number(),\n\tsourceLanguageId: z.number(),\n})\n\nexport type CreateScoreRequestBody = z.infer<typeof CREATE_SCORE_REQUEST_BODY_SCHEMA>\n\nexport const CREATE_SCORE_RESPONSE_SCHEMA = z.object({\n\tscore: z.number(),\n\thasCriticalIssue: z.boolean(),\n\thasMajorIssue: z.boolean(),\n\tissues: z.array(ISSUE_SCHEMA),\n})\n\nexport type CreateScoreResponseBody = z.infer<typeof CREATE_SCORE_RESPONSE_SCHEMA>\n"],"names":["z"],"mappings":";;;AAEa,MAAA,gBAAgBA,MAAE,KAAK,CAAC,YAAY,SAAS,SAAS,SAAS,CAAC;AAIhE,MAAA,eAAeA,MAAE,OAAO;AAAA,EACpC,UAAUA,MAAE,OAAO;AAAA,EACnB,SAASA,MAAE,OAAO;AAAA,EAClB,UAAU;AAAA,EACV,SAASA,MAAE,OAAO;AACnB,CAAC;AAIY,MAAA,6BAA6BA,MAAE,OAAO;AAAA,EAClD,WAAWA,MAAE,OAAO;AAAA,EACpB,OAAOA,MAAE,OAAO;AAAA,EAChB,YAAYA,MAAE,OAAO;AACtB,CAAC;AAIY,MAAA,4BAA4BA,MAAE,OAAO;AAAA,EACjD,OAAOA,MAAE,OAAO;AAAA,EAChB,eAAeA,MAAE,QAAQ;AAAA,EACzB,kBAAkBA,MAAE,QAAQ;AAAA,EAC5B,QAAQA,IAAAA,EAAE,MAAM,YAAY;AAC7B,CAAC;AAIY,MAAA,+BAA+BA,MAAE,KAAK;AAItC,MAAA,mCAAmCA,MAAE,OAAO;AAAA,EACxD,WAAWA,MAAE,OAAO;AAAA,EACpB,kBAAkBA,MAAE,OAAO;AAC5B,CAAC;AAIY,MAAA,+BAA+BA,MAAE,OAAO;AAAA,EACpD,OAAOA,MAAE,OAAO;AAAA,EAChB,kBAAkBA,MAAE,QAAQ;AAAA,EAC5B,eAAeA,MAAE,QAAQ;AAAA,EACzB,QAAQA,IAAAA,EAAE,MAAM,YAAY;AAC7B,CAAC;;;;;;;;"}
@@ -1,14 +1,40 @@
1
- import { useActionResolverPayload } from "./harmony139.mjs";
2
- import { canPerformAction } from "./harmony88.mjs";
3
- import { useMemo } from "react";
4
- const useCanPerformAllActions = (...actions) => {
5
- const payload = useActionResolverPayload();
6
- return useMemo(
7
- () => actions.every((action) => canPerformAction(action, payload)),
8
- [payload, actions.join()]
9
- );
10
- };
1
+ import { z } from "zod";
2
+ const SEVERITY_ENUM = z.enum(["critical", "major", "minor", "neutral"]);
3
+ const ISSUE_SCHEMA = z.object({
4
+ category: z.string(),
5
+ comment: z.string(),
6
+ severity: SEVERITY_ENUM,
7
+ penalty: z.number()
8
+ });
9
+ const SCORE_REQUEST_QUERY_SCHEMA = z.object({
10
+ projectId: z.string(),
11
+ keyId: z.number(),
12
+ languageId: z.string()
13
+ });
14
+ const GET_SCORE_RESPONSE_SCHEMA = z.object({
15
+ score: z.number(),
16
+ hasMajorIssue: z.boolean(),
17
+ hasCriticalIssue: z.boolean(),
18
+ issues: z.array(ISSUE_SCHEMA)
19
+ });
20
+ const DELETE_SCORE_RESPONSE_SCHEMA = z.null();
21
+ const CREATE_SCORE_REQUEST_BODY_SCHEMA = z.object({
22
+ segmentId: z.number(),
23
+ sourceLanguageId: z.number()
24
+ });
25
+ const CREATE_SCORE_RESPONSE_SCHEMA = z.object({
26
+ score: z.number(),
27
+ hasCriticalIssue: z.boolean(),
28
+ hasMajorIssue: z.boolean(),
29
+ issues: z.array(ISSUE_SCHEMA)
30
+ });
11
31
  export {
12
- useCanPerformAllActions
32
+ CREATE_SCORE_REQUEST_BODY_SCHEMA,
33
+ CREATE_SCORE_RESPONSE_SCHEMA,
34
+ DELETE_SCORE_RESPONSE_SCHEMA,
35
+ GET_SCORE_RESPONSE_SCHEMA,
36
+ ISSUE_SCHEMA,
37
+ SCORE_REQUEST_QUERY_SCHEMA,
38
+ SEVERITY_ENUM
13
39
  };
14
40
  //# sourceMappingURL=harmony84.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony84.mjs","sources":["../src/features/permissions/hooks/useCanPerformAllActions.ts"],"sourcesContent":["import type { Action } from '@features/permissions/action'\nimport { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport { canPerformAction } from '@features/permissions/utils/canPerformAction'\nimport { useMemo } from 'react'\n\n/**\n * React hook to determine if the current user has permission to perform all the specified actions.\n *\n * This hook is useful for conditionally rendering UI elements or triggering logic\n * that require the user to have multiple permissions.\n * It returns true only if the user can perform every action in the provided list.\n *\n * @param actions A list of actions to check permissions for (e.g. 'accessMarketingProjects', 'deleteProjects').\n * @returns {boolean} True if the user can perform all actions, otherwise false.\n *\n * @example\n * // Check if the user can both access marketing projects and delete projects\n * const canDoAll = useCanPerformAllActions(\"accessMarketingProjects\", \"deleteProjects\");\n * if (canDoAll) {\n * // show danger zone\n * }\n */\nexport const useCanPerformAllActions = (...actions: Action[]): boolean => {\n\tconst payload = useActionResolverPayload()\n\n\t// The reason for using `actions.join()` is to ensure that the memoization will not recompute\n\t// unless the actions themselves change. This is required as collecting the actions with `...actions`\n\t// will result in a new array reference on every render, which would cause the memoization to invalidate.\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Explained above\n\treturn useMemo(\n\t\t() => actions.every((action) => canPerformAction(action, payload)),\n\t\t[payload, actions.join()],\n\t)\n}\n"],"names":[],"mappings":";;;AAsBa,MAAA,0BAA0B,IAAI,YAA+B;AACzE,QAAM,UAAU,yBAAyB;AAMlC,SAAA;AAAA,IACN,MAAM,QAAQ,MAAM,CAAC,WAAW,iBAAiB,QAAQ,OAAO,CAAC;AAAA,IACjE,CAAC,SAAS,QAAQ,KAAM,CAAA;AAAA,EACzB;AACD;"}
1
+ {"version":3,"file":"harmony84.mjs","sources":["../src/features/publicApi/types/scoreTypes.ts"],"sourcesContent":["import { z } from 'zod'\n\nexport const SEVERITY_ENUM = z.enum(['critical', 'major', 'minor', 'neutral'])\n\nexport type Severity = z.infer<typeof SEVERITY_ENUM>\n\nexport const ISSUE_SCHEMA = z.object({\n\tcategory: z.string(),\n\tcomment: z.string(),\n\tseverity: SEVERITY_ENUM,\n\tpenalty: z.number(),\n})\n\nexport type Issue = z.infer<typeof ISSUE_SCHEMA>\n\nexport const SCORE_REQUEST_QUERY_SCHEMA = z.object({\n\tprojectId: z.string(),\n\tkeyId: z.number(),\n\tlanguageId: z.string(),\n})\n\nexport type ScoreRequestQuery = z.infer<typeof SCORE_REQUEST_QUERY_SCHEMA>\n\nexport const GET_SCORE_RESPONSE_SCHEMA = z.object({\n\tscore: z.number(),\n\thasMajorIssue: z.boolean(),\n\thasCriticalIssue: z.boolean(),\n\tissues: z.array(ISSUE_SCHEMA),\n})\n\nexport type GetScoreResponseBody = z.infer<typeof GET_SCORE_RESPONSE_SCHEMA>\n\nexport const DELETE_SCORE_RESPONSE_SCHEMA = z.null()\n\nexport type DeleteScoreResponseBody = z.infer<typeof DELETE_SCORE_RESPONSE_SCHEMA>\n\nexport const CREATE_SCORE_REQUEST_BODY_SCHEMA = z.object({\n\tsegmentId: z.number(),\n\tsourceLanguageId: z.number(),\n})\n\nexport type CreateScoreRequestBody = z.infer<typeof CREATE_SCORE_REQUEST_BODY_SCHEMA>\n\nexport const CREATE_SCORE_RESPONSE_SCHEMA = z.object({\n\tscore: z.number(),\n\thasCriticalIssue: z.boolean(),\n\thasMajorIssue: z.boolean(),\n\tissues: z.array(ISSUE_SCHEMA),\n})\n\nexport type CreateScoreResponseBody = z.infer<typeof CREATE_SCORE_RESPONSE_SCHEMA>\n"],"names":[],"mappings":";AAEa,MAAA,gBAAgB,EAAE,KAAK,CAAC,YAAY,SAAS,SAAS,SAAS,CAAC;AAIhE,MAAA,eAAe,EAAE,OAAO;AAAA,EACpC,UAAU,EAAE,OAAO;AAAA,EACnB,SAAS,EAAE,OAAO;AAAA,EAClB,UAAU;AAAA,EACV,SAAS,EAAE,OAAO;AACnB,CAAC;AAIY,MAAA,6BAA6B,EAAE,OAAO;AAAA,EAClD,WAAW,EAAE,OAAO;AAAA,EACpB,OAAO,EAAE,OAAO;AAAA,EAChB,YAAY,EAAE,OAAO;AACtB,CAAC;AAIY,MAAA,4BAA4B,EAAE,OAAO;AAAA,EACjD,OAAO,EAAE,OAAO;AAAA,EAChB,eAAe,EAAE,QAAQ;AAAA,EACzB,kBAAkB,EAAE,QAAQ;AAAA,EAC5B,QAAQ,EAAE,MAAM,YAAY;AAC7B,CAAC;AAIY,MAAA,+BAA+B,EAAE,KAAK;AAItC,MAAA,mCAAmC,EAAE,OAAO;AAAA,EACxD,WAAW,EAAE,OAAO;AAAA,EACpB,kBAAkB,EAAE,OAAO;AAC5B,CAAC;AAIY,MAAA,+BAA+B,EAAE,OAAO;AAAA,EACpD,OAAO,EAAE,OAAO;AAAA,EAChB,kBAAkB,EAAE,QAAQ;AAAA,EAC5B,eAAe,EAAE,QAAQ;AAAA,EACzB,QAAQ,EAAE,MAAM,YAAY;AAC7B,CAAC;"}
@@ -1,14 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const useActionResolverPayload = require("./harmony139.cjs");
4
- const canPerformAction = require("./harmony88.cjs");
5
- const React = require("react");
6
- const useCanPerformAnyAction = (...actions) => {
7
- const payload = useActionResolverPayload.useActionResolverPayload();
8
- return React.useMemo(
9
- () => actions.some((action) => canPerformAction.canPerformAction(action, payload)),
10
- [payload, actions.join()]
11
- );
12
- };
13
- exports.useCanPerformAnyAction = useCanPerformAnyAction;
3
+ const zod = require("zod");
4
+ const AUTHORIZATION_HEADER_SCHEMA = zod.z.union([
5
+ zod.z.object({ authorization: zod.z.string() }),
6
+ zod.z.object({ AUTHORIZATION: zod.z.string() })
7
+ ]);
8
+ const APU_TOKEN_AUTH_HEADER_SCHEMA = zod.z.union([
9
+ zod.z.object({ "X-API-Token": zod.z.string() }),
10
+ zod.z.object({ "X-Api-Token": zod.z.string() }),
11
+ zod.z.object({ "x-api-token": zod.z.string() }),
12
+ zod.z.object({ "X-API-TOKEN": zod.z.string() })
13
+ ]);
14
+ const AUTHENTICATION_HEADERS_SCHEMA = zod.z.union([
15
+ AUTHORIZATION_HEADER_SCHEMA,
16
+ APU_TOKEN_AUTH_HEADER_SCHEMA
17
+ ]);
18
+ const API_PLUGIN_HEADER_SCHEMA = zod.z.union([
19
+ zod.z.object({ "X-Lokalise-Plugin": zod.z.string() }),
20
+ zod.z.object({ "x-lokalise-plugin": zod.z.string() }),
21
+ zod.z.object({ "X-LOKALISE-PLUGIN": zod.z.string() })
22
+ ]);
23
+ const BASE_API_ENDPOINT_HEADER_SCHEMA = AUTHENTICATION_HEADERS_SCHEMA.and(API_PLUGIN_HEADER_SCHEMA);
24
+ exports.API_PLUGIN_HEADER_SCHEMA = API_PLUGIN_HEADER_SCHEMA;
25
+ exports.APU_TOKEN_AUTH_HEADER_SCHEMA = APU_TOKEN_AUTH_HEADER_SCHEMA;
26
+ exports.AUTHENTICATION_HEADERS_SCHEMA = AUTHENTICATION_HEADERS_SCHEMA;
27
+ exports.AUTHORIZATION_HEADER_SCHEMA = AUTHORIZATION_HEADER_SCHEMA;
28
+ exports.BASE_API_ENDPOINT_HEADER_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA;
14
29
  //# sourceMappingURL=harmony85.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony85.cjs","sources":["../src/features/permissions/hooks/useCanPerformAnyAction.ts"],"sourcesContent":["import type { Action } from '@features/permissions/action'\nimport { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport { canPerformAction } from '@features/permissions/utils/canPerformAction'\nimport { useMemo } from 'react'\n\n/**\n * React hook to determine if the current user has permission to perform at least one of the specified actions.\n *\n * This hook is useful for conditionally rendering UI elements or triggering logic\n * that should be available if the user has any of a set of permissions.\n * It returns true if the user can perform at least one action in the provided list.\n *\n * @param actions A list of actions to check permissions for (e.g. 'accessMarketingProjects', 'deleteProjects').\n * @returns {boolean} True if the user can perform any action, otherwise false.\n *\n * @example\n * // Check if the user can either access marketing projects or delete projects\n * const canDoAny = useCanPerformAnyAction(\"accessMarketingProjects\", \"deleteProjects\");\n * if (canDoAny) {\n * // show details or enable actions\n * }\n */\nexport const useCanPerformAnyAction = (...actions: Action[]): boolean => {\n\tconst payload = useActionResolverPayload()\n\n\t// The reason for using `actions.join()` is to ensure that the memoization will not recompute\n\t// unless the actions themselves change. This is required as collecting the actions with `...actions`\n\t// will result in a new array reference on every render, which would cause the memoization to invalidate.\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Explained above\n\treturn useMemo(\n\t\t() => actions.some((action) => canPerformAction(action, payload)),\n\t\t[payload, actions.join()],\n\t)\n}\n"],"names":["useActionResolverPayload","useMemo","canPerformAction"],"mappings":";;;;;AAsBa,MAAA,yBAAyB,IAAI,YAA+B;AACxE,QAAM,UAAUA,yBAAAA,yBAAyB;AAMlC,SAAAC,MAAA;AAAA,IACN,MAAM,QAAQ,KAAK,CAAC,WAAWC,iBAAAA,iBAAiB,QAAQ,OAAO,CAAC;AAAA,IAChE,CAAC,SAAS,QAAQ,KAAM,CAAA;AAAA,EACzB;AACD;;"}
1
+ {"version":3,"file":"harmony85.cjs","sources":["../src/features/publicApi/types/sharedTypes.ts"],"sourcesContent":["import { z } from 'zod'\n\nexport const AUTHORIZATION_HEADER_SCHEMA = z.union([\n\tz.object({ authorization: z.string() }),\n\tz.object({ AUTHORIZATION: z.string() }),\n])\n\nexport const APU_TOKEN_AUTH_HEADER_SCHEMA = z.union([\n\tz.object({ 'X-API-Token': z.string() }),\n\tz.object({ 'X-Api-Token': z.string() }),\n\tz.object({ 'x-api-token': z.string() }),\n\tz.object({ 'X-API-TOKEN': z.string() }),\n])\n\nexport const AUTHENTICATION_HEADERS_SCHEMA = z.union([\n\tAUTHORIZATION_HEADER_SCHEMA,\n\tAPU_TOKEN_AUTH_HEADER_SCHEMA,\n])\n\nexport type AuthenticationHeaders = z.infer<typeof AUTHENTICATION_HEADERS_SCHEMA>\n\nexport const API_PLUGIN_HEADER_SCHEMA = z.union([\n\tz.object({ 'X-Lokalise-Plugin': z.string() }),\n\tz.object({ 'x-lokalise-plugin': z.string() }),\n\tz.object({ 'X-LOKALISE-PLUGIN': z.string() }),\n])\n\nexport type ApiPluginHeader = z.infer<typeof API_PLUGIN_HEADER_SCHEMA>\n\nexport const BASE_API_ENDPOINT_HEADER_SCHEMA =\n\tAUTHENTICATION_HEADERS_SCHEMA.and(API_PLUGIN_HEADER_SCHEMA)\n\nexport type BaseApiEndpointHeader = z.infer<typeof BASE_API_ENDPOINT_HEADER_SCHEMA>\n"],"names":["z"],"mappings":";;;AAEa,MAAA,8BAA8BA,MAAE,MAAM;AAAA,EAClDA,MAAE,OAAO,EAAE,eAAeA,IAAAA,EAAE,UAAU;AAAA,EACtCA,IAAAA,EAAE,OAAO,EAAE,eAAeA,IAAE,EAAA,OAAA,EAAU,CAAA;AACvC,CAAC;AAEY,MAAA,+BAA+BA,MAAE,MAAM;AAAA,EACnDA,MAAE,OAAO,EAAE,eAAeA,IAAAA,EAAE,UAAU;AAAA,EACtCA,MAAE,OAAO,EAAE,eAAeA,IAAAA,EAAE,UAAU;AAAA,EACtCA,MAAE,OAAO,EAAE,eAAeA,IAAAA,EAAE,UAAU;AAAA,EACtCA,IAAAA,EAAE,OAAO,EAAE,eAAeA,IAAE,EAAA,OAAA,EAAU,CAAA;AACvC,CAAC;AAEY,MAAA,gCAAgCA,MAAE,MAAM;AAAA,EACpD;AAAA,EACA;AACD,CAAC;AAIY,MAAA,2BAA2BA,MAAE,MAAM;AAAA,EAC/CA,MAAE,OAAO,EAAE,qBAAqBA,IAAAA,EAAE,UAAU;AAAA,EAC5CA,MAAE,OAAO,EAAE,qBAAqBA,IAAAA,EAAE,UAAU;AAAA,EAC5CA,IAAAA,EAAE,OAAO,EAAE,qBAAqBA,IAAE,EAAA,OAAA,EAAU,CAAA;AAC7C,CAAC;AAIY,MAAA,kCACZ,8BAA8B,IAAI,wBAAwB;;;;;;"}
@@ -1,14 +1,29 @@
1
- import { useActionResolverPayload } from "./harmony139.mjs";
2
- import { canPerformAction } from "./harmony88.mjs";
3
- import { useMemo } from "react";
4
- const useCanPerformAnyAction = (...actions) => {
5
- const payload = useActionResolverPayload();
6
- return useMemo(
7
- () => actions.some((action) => canPerformAction(action, payload)),
8
- [payload, actions.join()]
9
- );
10
- };
1
+ import { z } from "zod";
2
+ const AUTHORIZATION_HEADER_SCHEMA = z.union([
3
+ z.object({ authorization: z.string() }),
4
+ z.object({ AUTHORIZATION: z.string() })
5
+ ]);
6
+ const APU_TOKEN_AUTH_HEADER_SCHEMA = z.union([
7
+ z.object({ "X-API-Token": z.string() }),
8
+ z.object({ "X-Api-Token": z.string() }),
9
+ z.object({ "x-api-token": z.string() }),
10
+ z.object({ "X-API-TOKEN": z.string() })
11
+ ]);
12
+ const AUTHENTICATION_HEADERS_SCHEMA = z.union([
13
+ AUTHORIZATION_HEADER_SCHEMA,
14
+ APU_TOKEN_AUTH_HEADER_SCHEMA
15
+ ]);
16
+ const API_PLUGIN_HEADER_SCHEMA = z.union([
17
+ z.object({ "X-Lokalise-Plugin": z.string() }),
18
+ z.object({ "x-lokalise-plugin": z.string() }),
19
+ z.object({ "X-LOKALISE-PLUGIN": z.string() })
20
+ ]);
21
+ const BASE_API_ENDPOINT_HEADER_SCHEMA = AUTHENTICATION_HEADERS_SCHEMA.and(API_PLUGIN_HEADER_SCHEMA);
11
22
  export {
12
- useCanPerformAnyAction
23
+ API_PLUGIN_HEADER_SCHEMA,
24
+ APU_TOKEN_AUTH_HEADER_SCHEMA,
25
+ AUTHENTICATION_HEADERS_SCHEMA,
26
+ AUTHORIZATION_HEADER_SCHEMA,
27
+ BASE_API_ENDPOINT_HEADER_SCHEMA
13
28
  };
14
29
  //# sourceMappingURL=harmony85.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony85.mjs","sources":["../src/features/permissions/hooks/useCanPerformAnyAction.ts"],"sourcesContent":["import type { Action } from '@features/permissions/action'\nimport { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport { canPerformAction } from '@features/permissions/utils/canPerformAction'\nimport { useMemo } from 'react'\n\n/**\n * React hook to determine if the current user has permission to perform at least one of the specified actions.\n *\n * This hook is useful for conditionally rendering UI elements or triggering logic\n * that should be available if the user has any of a set of permissions.\n * It returns true if the user can perform at least one action in the provided list.\n *\n * @param actions A list of actions to check permissions for (e.g. 'accessMarketingProjects', 'deleteProjects').\n * @returns {boolean} True if the user can perform any action, otherwise false.\n *\n * @example\n * // Check if the user can either access marketing projects or delete projects\n * const canDoAny = useCanPerformAnyAction(\"accessMarketingProjects\", \"deleteProjects\");\n * if (canDoAny) {\n * // show details or enable actions\n * }\n */\nexport const useCanPerformAnyAction = (...actions: Action[]): boolean => {\n\tconst payload = useActionResolverPayload()\n\n\t// The reason for using `actions.join()` is to ensure that the memoization will not recompute\n\t// unless the actions themselves change. This is required as collecting the actions with `...actions`\n\t// will result in a new array reference on every render, which would cause the memoization to invalidate.\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Explained above\n\treturn useMemo(\n\t\t() => actions.some((action) => canPerformAction(action, payload)),\n\t\t[payload, actions.join()],\n\t)\n}\n"],"names":[],"mappings":";;;AAsBa,MAAA,yBAAyB,IAAI,YAA+B;AACxE,QAAM,UAAU,yBAAyB;AAMlC,SAAA;AAAA,IACN,MAAM,QAAQ,KAAK,CAAC,WAAW,iBAAiB,QAAQ,OAAO,CAAC;AAAA,IAChE,CAAC,SAAS,QAAQ,KAAM,CAAA;AAAA,EACzB;AACD;"}
1
+ {"version":3,"file":"harmony85.mjs","sources":["../src/features/publicApi/types/sharedTypes.ts"],"sourcesContent":["import { z } from 'zod'\n\nexport const AUTHORIZATION_HEADER_SCHEMA = z.union([\n\tz.object({ authorization: z.string() }),\n\tz.object({ AUTHORIZATION: z.string() }),\n])\n\nexport const APU_TOKEN_AUTH_HEADER_SCHEMA = z.union([\n\tz.object({ 'X-API-Token': z.string() }),\n\tz.object({ 'X-Api-Token': z.string() }),\n\tz.object({ 'x-api-token': z.string() }),\n\tz.object({ 'X-API-TOKEN': z.string() }),\n])\n\nexport const AUTHENTICATION_HEADERS_SCHEMA = z.union([\n\tAUTHORIZATION_HEADER_SCHEMA,\n\tAPU_TOKEN_AUTH_HEADER_SCHEMA,\n])\n\nexport type AuthenticationHeaders = z.infer<typeof AUTHENTICATION_HEADERS_SCHEMA>\n\nexport const API_PLUGIN_HEADER_SCHEMA = z.union([\n\tz.object({ 'X-Lokalise-Plugin': z.string() }),\n\tz.object({ 'x-lokalise-plugin': z.string() }),\n\tz.object({ 'X-LOKALISE-PLUGIN': z.string() }),\n])\n\nexport type ApiPluginHeader = z.infer<typeof API_PLUGIN_HEADER_SCHEMA>\n\nexport const BASE_API_ENDPOINT_HEADER_SCHEMA =\n\tAUTHENTICATION_HEADERS_SCHEMA.and(API_PLUGIN_HEADER_SCHEMA)\n\nexport type BaseApiEndpointHeader = z.infer<typeof BASE_API_ENDPOINT_HEADER_SCHEMA>\n"],"names":[],"mappings":";AAEa,MAAA,8BAA8B,EAAE,MAAM;AAAA,EAClD,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU;AAAA,EACtC,EAAE,OAAO,EAAE,eAAe,EAAE,OAAA,EAAU,CAAA;AACvC,CAAC;AAEY,MAAA,+BAA+B,EAAE,MAAM;AAAA,EACnD,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU;AAAA,EACtC,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU;AAAA,EACtC,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU;AAAA,EACtC,EAAE,OAAO,EAAE,eAAe,EAAE,OAAA,EAAU,CAAA;AACvC,CAAC;AAEY,MAAA,gCAAgC,EAAE,MAAM;AAAA,EACpD;AAAA,EACA;AACD,CAAC;AAIY,MAAA,2BAA2B,EAAE,MAAM;AAAA,EAC/C,EAAE,OAAO,EAAE,qBAAqB,EAAE,UAAU;AAAA,EAC5C,EAAE,OAAO,EAAE,qBAAqB,EAAE,UAAU;AAAA,EAC5C,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAA,EAAU,CAAA;AAC7C,CAAC;AAIY,MAAA,kCACZ,8BAA8B,IAAI,wBAAwB;"}
@@ -1,12 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const useActionResolverPayload = require("./harmony139.cjs");
4
- const hasAny = require("./harmony140.cjs");
5
- const React = require("react");
6
- const useHasAnyFeatureFlags = (...features) => {
7
- const { enabledFeatureFlags } = useActionResolverPayload.useActionResolverPayload();
8
- const key = features.join("");
9
- return React.useMemo(() => hasAny.hasAny(enabledFeatureFlags, ...features), [key, enabledFeatureFlags]);
10
- };
11
- exports.useHasAnyFeatureFlags = useHasAnyFeatureFlags;
3
+ const types = require("./harmony45.cjs");
4
+ const zod = require("zod");
5
+ const TEAM_ROLE_SCHEMA = zod.z.enum(types.TEAM_ROLES);
6
+ exports.TEAM_ROLE_SCHEMA = TEAM_ROLE_SCHEMA;
12
7
  //# sourceMappingURL=harmony86.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony86.cjs","sources":["../src/features/permissions/hooks/useHasAnyFeatureFlags.ts"],"sourcesContent":["import { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport type { FeatureFlag } from '@features/permissions/types'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport { useMemo } from 'react'\n\nexport const useHasAnyFeatureFlags = (...features: FeatureFlag[]) => {\n\tconst { enabledFeatureFlags } = useActionResolverPayload()\n\tconst key = features.join('')\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Using key as spreading parameters will create a new array on every render.\n\treturn useMemo(() => hasAny(enabledFeatureFlags, ...features), [key, enabledFeatureFlags])\n}\n"],"names":["useActionResolverPayload","useMemo","hasAny"],"mappings":";;;;;AAKa,MAAA,wBAAwB,IAAI,aAA4B;AAC9D,QAAA,EAAE,oBAAoB,IAAIA,kDAAyB;AACnD,QAAA,MAAM,SAAS,KAAK,EAAE;AAGrB,SAAAC,MAAA,QAAQ,MAAMC,OAAAA,OAAO,qBAAqB,GAAG,QAAQ,GAAG,CAAC,KAAK,mBAAmB,CAAC;AAC1F;;"}
1
+ {"version":3,"file":"harmony86.cjs","sources":["../src/features/publicApi/types/teamRoleTypes.ts"],"sourcesContent":["import { TEAM_ROLES } from '@features/permissions/types'\nimport { z } from 'zod'\n\nexport const TEAM_ROLE_SCHEMA = z.enum(TEAM_ROLES)\n"],"names":["z","TEAM_ROLES"],"mappings":";;;;AAGa,MAAA,mBAAmBA,IAAAA,EAAE,KAAKC,MAAU,UAAA;;"}
@@ -1,12 +1,7 @@
1
- import { useActionResolverPayload } from "./harmony139.mjs";
2
- import { hasAny } from "./harmony140.mjs";
3
- import { useMemo } from "react";
4
- const useHasAnyFeatureFlags = (...features) => {
5
- const { enabledFeatureFlags } = useActionResolverPayload();
6
- const key = features.join("");
7
- return useMemo(() => hasAny(enabledFeatureFlags, ...features), [key, enabledFeatureFlags]);
8
- };
1
+ import { TEAM_ROLES } from "./harmony45.mjs";
2
+ import { z } from "zod";
3
+ const TEAM_ROLE_SCHEMA = z.enum(TEAM_ROLES);
9
4
  export {
10
- useHasAnyFeatureFlags
5
+ TEAM_ROLE_SCHEMA
11
6
  };
12
7
  //# sourceMappingURL=harmony86.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony86.mjs","sources":["../src/features/permissions/hooks/useHasAnyFeatureFlags.ts"],"sourcesContent":["import { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport type { FeatureFlag } from '@features/permissions/types'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport { useMemo } from 'react'\n\nexport const useHasAnyFeatureFlags = (...features: FeatureFlag[]) => {\n\tconst { enabledFeatureFlags } = useActionResolverPayload()\n\tconst key = features.join('')\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Using key as spreading parameters will create a new array on every render.\n\treturn useMemo(() => hasAny(enabledFeatureFlags, ...features), [key, enabledFeatureFlags])\n}\n"],"names":[],"mappings":";;;AAKa,MAAA,wBAAwB,IAAI,aAA4B;AAC9D,QAAA,EAAE,oBAAoB,IAAI,yBAAyB;AACnD,QAAA,MAAM,SAAS,KAAK,EAAE;AAGrB,SAAA,QAAQ,MAAM,OAAO,qBAAqB,GAAG,QAAQ,GAAG,CAAC,KAAK,mBAAmB,CAAC;AAC1F;"}
1
+ {"version":3,"file":"harmony86.mjs","sources":["../src/features/publicApi/types/teamRoleTypes.ts"],"sourcesContent":["import { TEAM_ROLES } from '@features/permissions/types'\nimport { z } from 'zod'\n\nexport const TEAM_ROLE_SCHEMA = z.enum(TEAM_ROLES)\n"],"names":[],"mappings":";;AAGa,MAAA,mBAAmB,EAAE,KAAK,UAAU;"}
@@ -1,12 +1,87 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const useActionResolverPayload = require("./harmony139.cjs");
4
- const has = require("./harmony141.cjs");
5
- const React = require("react");
6
- const useHasAllFeatureFlags = (...features) => {
7
- const { enabledFeatureFlags } = useActionResolverPayload.useActionResolverPayload();
8
- const key = features.join("");
9
- return React.useMemo(() => has.has(enabledFeatureFlags, ...features), [key, enabledFeatureFlags]);
10
- };
11
- exports.useHasAllFeatureFlags = useHasAllFeatureFlags;
3
+ const paginationTypes = require("./harmony80.cjs");
4
+ const sharedTypes = require("./harmony85.cjs");
5
+ const zod = require("zod");
6
+ const TEAM_API_BASE_HEADERS_SCHEMA = sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA;
7
+ const EXTENDED_DATE_TIME_SCHEMA = zod.z.union([
8
+ zod.z.string().refine((val) => /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2} \(.*\)$/.test(val), {
9
+ message: "Invalid datetime format"
10
+ }),
11
+ zod.z.string().datetime({ offset: true }),
12
+ zod.z.string().datetime()
13
+ ]);
14
+ const TEAMS_QUOTA_METRICS = [
15
+ "users",
16
+ "keys",
17
+ "projects",
18
+ "mau",
19
+ "trafficBytes",
20
+ "ai_words"
21
+ ];
22
+ const TEAMS_QUOTA_METRICS_SCHEMA = zod.z.enum(TEAMS_QUOTA_METRICS);
23
+ const TEAMS_QUOTA_USAGE_SCHEMA = zod.z.record(TEAMS_QUOTA_METRICS_SCHEMA, zod.z.number());
24
+ const TEAMS_QUOTA_ALLOWED_SCHEMA = zod.z.record(TEAMS_QUOTA_METRICS_SCHEMA, zod.z.number());
25
+ const LIST_TEAMS_QUERY_SCHEMA = paginationTypes.PAGINATION_QUERY_PARAMS_SCHEMA;
26
+ const LIST_TEAMS_RESPONSE_SCHEMA = zod.z.object({
27
+ teams: zod.z.array(
28
+ zod.z.object({
29
+ team_id: zod.z.number(),
30
+ // TODO: This should not be optional, but the API is not consistent yet
31
+ uuid: zod.z.string().uuid().optional(),
32
+ name: zod.z.string(),
33
+ plan: zod.z.string(),
34
+ logo_url: zod.z.string().nullable(),
35
+ role: zod.z.string(),
36
+ created_at: EXTENDED_DATE_TIME_SCHEMA,
37
+ created_at_timestamp: zod.z.number(),
38
+ quota_usage: TEAMS_QUOTA_USAGE_SCHEMA,
39
+ quota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA
40
+ })
41
+ )
42
+ });
43
+ const TEAM_QUOTA_METRICS_SCHEMA = zod.z.object({
44
+ id: zod.z.number().nullable().optional(),
45
+ users: zod.z.number(),
46
+ keys: zod.z.number(),
47
+ projects: zod.z.number(),
48
+ mau: zod.z.number(),
49
+ trafficBytes: zod.z.number(),
50
+ aiWords: zod.z.number()
51
+ });
52
+ const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA;
53
+ const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA;
54
+ const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = zod.z.object({
55
+ teamId: zod.z.union([zod.z.string().uuid(), zod.z.number()])
56
+ });
57
+ const RETRIEVE_TEAM_RESPONSE_SCHEMA = zod.z.object({
58
+ team: zod.z.object({
59
+ team_id: zod.z.number(),
60
+ // TODO: This should not be optional, but the API is not consistent yet
61
+ uuid: zod.z.string().uuid().optional(),
62
+ name: zod.z.string(),
63
+ plan_name: zod.z.string(),
64
+ created_at: EXTENDED_DATE_TIME_SCHEMA,
65
+ created_at_timestamp: zod.z.number(),
66
+ logo_url: zod.z.string().nullable(),
67
+ role: zod.z.string(),
68
+ quota_usage: TEAM_QUOTA_USAGE_SCHEMA,
69
+ quota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,
70
+ is_team_suspended: zod.z.boolean(),
71
+ is_end_of_trial_active: zod.z.boolean(),
72
+ trial_days_left: zod.z.number()
73
+ })
74
+ });
75
+ exports.LIST_TEAMS_QUERY_SCHEMA = LIST_TEAMS_QUERY_SCHEMA;
76
+ exports.LIST_TEAMS_RESPONSE_SCHEMA = LIST_TEAMS_RESPONSE_SCHEMA;
77
+ exports.RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = RETRIEVE_TEAM_PATH_PARAMS_SCHEMA;
78
+ exports.RETRIEVE_TEAM_RESPONSE_SCHEMA = RETRIEVE_TEAM_RESPONSE_SCHEMA;
79
+ exports.TEAMS_QUOTA_ALLOWED_SCHEMA = TEAMS_QUOTA_ALLOWED_SCHEMA;
80
+ exports.TEAMS_QUOTA_METRICS = TEAMS_QUOTA_METRICS;
81
+ exports.TEAMS_QUOTA_METRICS_SCHEMA = TEAMS_QUOTA_METRICS_SCHEMA;
82
+ exports.TEAMS_QUOTA_USAGE_SCHEMA = TEAMS_QUOTA_USAGE_SCHEMA;
83
+ exports.TEAM_API_BASE_HEADERS_SCHEMA = TEAM_API_BASE_HEADERS_SCHEMA;
84
+ exports.TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_ALLOWED_SCHEMA;
85
+ exports.TEAM_QUOTA_METRICS_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA;
86
+ exports.TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_USAGE_SCHEMA;
12
87
  //# sourceMappingURL=harmony87.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony87.cjs","sources":["../src/features/permissions/hooks/useHasAllFeatureFlags.ts"],"sourcesContent":["import { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport type { FeatureFlag } from '@features/permissions/types'\nimport { has } from '@features/permissions/utils/has'\nimport { useMemo } from 'react'\n\nexport const useHasAllFeatureFlags = (...features: FeatureFlag[]) => {\n\tconst { enabledFeatureFlags } = useActionResolverPayload()\n\tconst key = features.join('')\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Using key as spreading parameters will create a new array on every render.\n\treturn useMemo(() => has(enabledFeatureFlags, ...features), [key, enabledFeatureFlags])\n}\n"],"names":["useActionResolverPayload","useMemo","has"],"mappings":";;;;;AAKa,MAAA,wBAAwB,IAAI,aAA4B;AAC9D,QAAA,EAAE,oBAAoB,IAAIA,kDAAyB;AACnD,QAAA,MAAM,SAAS,KAAK,EAAE;AAGrB,SAAAC,MAAA,QAAQ,MAAMC,IAAAA,IAAI,qBAAqB,GAAG,QAAQ,GAAG,CAAC,KAAK,mBAAmB,CAAC;AACvF;;"}
1
+ {"version":3,"file":"harmony87.cjs","sources":["../src/features/publicApi/types/teamTypes.ts"],"sourcesContent":["import { PAGINATION_QUERY_PARAMS_SCHEMA } from '@features/publicApi/types/paginationTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\n// Shared schema\nexport const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type TeamApiBaseHeaders = z.infer<typeof TEAM_API_BASE_HEADERS_SCHEMA>\n\n/**\n * TODO - created_at is using custom format like 2024-10-03 09:45:52 (Etc/UTC)\n * instead of ISO 8601 which is expected by ZOD and we need a custom datetime schema\n */\nconst EXTENDED_DATE_TIME_SCHEMA = z.union([\n\tz.string().refine((val) => /^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} \\(.*\\)$/.test(val), {\n\t\tmessage: 'Invalid datetime format',\n\t}),\n\tz.string().datetime({ offset: true }),\n\tz.string().datetime(),\n])\n\n// There are too many differences between teams list and retrieving team\n// It is better to keep schemas separately\n\n// List teams\nexport const TEAMS_QUOTA_METRICS = [\n\t'users',\n\t'keys',\n\t'projects',\n\t'mau',\n\t'trafficBytes',\n\t'ai_words',\n] as const\n\nexport const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS)\nexport type TeamsQuotaMetrics = z.infer<typeof TEAMS_QUOTA_METRICS_SCHEMA>\n\nexport const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaUsage = z.infer<typeof TEAMS_QUOTA_USAGE_SCHEMA>\n\nexport const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaAllowed = z.infer<typeof TEAMS_QUOTA_ALLOWED_SCHEMA>\n\nexport const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA\nexport type ListTeamsQueryParams = z.infer<typeof LIST_TEAMS_QUERY_SCHEMA>\n\nexport const LIST_TEAMS_RESPONSE_SCHEMA = z.object({\n\tteams: z.array(\n\t\tz.object({\n\t\t\tteam_id: z.number(),\n\t\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\t\tuuid: z.string().uuid().optional(),\n\t\t\tname: z.string(),\n\t\t\tplan: z.string(),\n\t\t\tlogo_url: z.string().nullable(),\n\t\t\trole: z.string(),\n\t\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\t\tcreated_at_timestamp: z.number(),\n\t\t\tquota_usage: TEAMS_QUOTA_USAGE_SCHEMA,\n\t\t\tquota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA,\n\t\t}),\n\t),\n})\n\nexport type ListTeamsResponse = z.infer<typeof LIST_TEAMS_RESPONSE_SCHEMA>\n\n// Retrieve team\nexport const TEAM_QUOTA_METRICS_SCHEMA = z.object({\n\tid: z.number().nullable().optional(),\n\tusers: z.number(),\n\tkeys: z.number(),\n\tprojects: z.number(),\n\tmau: z.number(),\n\ttrafficBytes: z.number(),\n\taiWords: z.number(),\n})\n\nexport type TeamQuotaMetrics = z.infer<typeof TEAM_QUOTA_METRICS_SCHEMA>\n\nexport const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaUsage = z.infer<typeof TEAM_QUOTA_USAGE_SCHEMA>\n\nexport const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaAllowed = z.infer<typeof TEAM_QUOTA_ALLOWED_SCHEMA>\n\nexport const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({\n\tteamId: z.union([z.string().uuid(), z.number()]),\n})\n\nexport type RetrieveTeamPathParams = z.infer<typeof RETRIEVE_TEAM_PATH_PARAMS_SCHEMA>\n\nexport const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({\n\tteam: z.object({\n\t\tteam_id: z.number(),\n\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\tuuid: z.string().uuid().optional(),\n\t\tname: z.string(),\n\t\tplan_name: z.string(),\n\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\tcreated_at_timestamp: z.number(),\n\t\tlogo_url: z.string().nullable(),\n\t\trole: z.string(),\n\t\tquota_usage: TEAM_QUOTA_USAGE_SCHEMA,\n\t\tquota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,\n\t\tis_team_suspended: z.boolean(),\n\t\tis_end_of_trial_active: z.boolean(),\n\t\ttrial_days_left: z.number(),\n\t}),\n})\n\nexport type RetrieveTeamResponse = z.infer<typeof RETRIEVE_TEAM_RESPONSE_SCHEMA>\n"],"names":["BASE_API_ENDPOINT_HEADER_SCHEMA","z","PAGINATION_QUERY_PARAMS_SCHEMA"],"mappings":";;;;;AAKO,MAAM,+BAA+BA,YAAAA;AAQ5C,MAAM,4BAA4BC,MAAE,MAAM;AAAA,EACzCA,MAAE,OAAS,EAAA,OAAO,CAAC,QAAQ,+CAA+C,KAAK,GAAG,GAAG;AAAA,IACpF,SAAS;AAAA,EAAA,CACT;AAAA,EACDA,MAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,MAAM;AAAA,EACpCA,IAAA,EAAE,OAAO,EAAE,SAAS;AACrB,CAAC;AAMM,MAAM,sBAAsB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEa,MAAA,6BAA6BA,IAAAA,EAAE,KAAK,mBAAmB;AAG7D,MAAM,2BAA2BA,IAAAA,EAAE,OAAO,4BAA4BA,IAAAA,EAAE,OAAQ,CAAA;AAGhF,MAAM,6BAA6BA,IAAAA,EAAE,OAAO,4BAA4BA,IAAAA,EAAE,OAAQ,CAAA;AAGlF,MAAM,0BAA0BC,gBAAAA;AAG1B,MAAA,6BAA6BD,MAAE,OAAO;AAAA,EAClD,OAAOA,IAAE,EAAA;AAAA,IACRA,IAAAA,EAAE,OAAO;AAAA,MACR,SAASA,MAAE,OAAO;AAAA;AAAA,MAElB,MAAMA,IAAAA,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,MACjC,MAAMA,MAAE,OAAO;AAAA,MACf,MAAMA,MAAE,OAAO;AAAA,MACf,UAAUA,IAAA,EAAE,OAAO,EAAE,SAAS;AAAA,MAC9B,MAAMA,MAAE,OAAO;AAAA,MACf,YAAY;AAAA,MACZ,sBAAsBA,MAAE,OAAO;AAAA,MAC/B,aAAa;AAAA,MACb,eAAe;AAAA,IACf,CAAA;AAAA,EAAA;AAEH,CAAC;AAKY,MAAA,4BAA4BA,MAAE,OAAO;AAAA,EACjD,IAAIA,IAAAA,EAAE,OAAS,EAAA,SAAA,EAAW,SAAS;AAAA,EACnC,OAAOA,MAAE,OAAO;AAAA,EAChB,MAAMA,MAAE,OAAO;AAAA,EACf,UAAUA,MAAE,OAAO;AAAA,EACnB,KAAKA,MAAE,OAAO;AAAA,EACd,cAAcA,MAAE,OAAO;AAAA,EACvB,SAASA,MAAE,OAAO;AACnB,CAAC;AAIM,MAAM,0BAA0B;AAGhC,MAAM,4BAA4B;AAG5B,MAAA,mCAAmCA,MAAE,OAAO;AAAA,EACxD,QAAQA,IAAAA,EAAE,MAAM,CAACA,IAAE,EAAA,OAAS,EAAA,KAAQ,GAAAA,MAAE,QAAQ,CAAC;AAChD,CAAC;AAIY,MAAA,gCAAgCA,MAAE,OAAO;AAAA,EACrD,MAAMA,MAAE,OAAO;AAAA,IACd,SAASA,MAAE,OAAO;AAAA;AAAA,IAElB,MAAMA,IAAAA,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,IACjC,MAAMA,MAAE,OAAO;AAAA,IACf,WAAWA,MAAE,OAAO;AAAA,IACpB,YAAY;AAAA,IACZ,sBAAsBA,MAAE,OAAO;AAAA,IAC/B,UAAUA,IAAA,EAAE,OAAO,EAAE,SAAS;AAAA,IAC9B,MAAMA,MAAE,OAAO;AAAA,IACf,aAAa;AAAA,IACb,eAAe;AAAA,IACf,mBAAmBA,MAAE,QAAQ;AAAA,IAC7B,wBAAwBA,MAAE,QAAQ;AAAA,IAClC,iBAAiBA,MAAE,OAAO;AAAA,EAC1B,CAAA;AACF,CAAC;;;;;;;;;;;;;"}
@@ -1,12 +1,87 @@
1
- import { useActionResolverPayload } from "./harmony139.mjs";
2
- import { has } from "./harmony141.mjs";
3
- import { useMemo } from "react";
4
- const useHasAllFeatureFlags = (...features) => {
5
- const { enabledFeatureFlags } = useActionResolverPayload();
6
- const key = features.join("");
7
- return useMemo(() => has(enabledFeatureFlags, ...features), [key, enabledFeatureFlags]);
8
- };
1
+ import { PAGINATION_QUERY_PARAMS_SCHEMA } from "./harmony80.mjs";
2
+ import { BASE_API_ENDPOINT_HEADER_SCHEMA } from "./harmony85.mjs";
3
+ import { z } from "zod";
4
+ const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA;
5
+ const EXTENDED_DATE_TIME_SCHEMA = z.union([
6
+ z.string().refine((val) => /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2} \(.*\)$/.test(val), {
7
+ message: "Invalid datetime format"
8
+ }),
9
+ z.string().datetime({ offset: true }),
10
+ z.string().datetime()
11
+ ]);
12
+ const TEAMS_QUOTA_METRICS = [
13
+ "users",
14
+ "keys",
15
+ "projects",
16
+ "mau",
17
+ "trafficBytes",
18
+ "ai_words"
19
+ ];
20
+ const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS);
21
+ const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number());
22
+ const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number());
23
+ const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA;
24
+ const LIST_TEAMS_RESPONSE_SCHEMA = z.object({
25
+ teams: z.array(
26
+ z.object({
27
+ team_id: z.number(),
28
+ // TODO: This should not be optional, but the API is not consistent yet
29
+ uuid: z.string().uuid().optional(),
30
+ name: z.string(),
31
+ plan: z.string(),
32
+ logo_url: z.string().nullable(),
33
+ role: z.string(),
34
+ created_at: EXTENDED_DATE_TIME_SCHEMA,
35
+ created_at_timestamp: z.number(),
36
+ quota_usage: TEAMS_QUOTA_USAGE_SCHEMA,
37
+ quota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA
38
+ })
39
+ )
40
+ });
41
+ const TEAM_QUOTA_METRICS_SCHEMA = z.object({
42
+ id: z.number().nullable().optional(),
43
+ users: z.number(),
44
+ keys: z.number(),
45
+ projects: z.number(),
46
+ mau: z.number(),
47
+ trafficBytes: z.number(),
48
+ aiWords: z.number()
49
+ });
50
+ const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA;
51
+ const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA;
52
+ const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({
53
+ teamId: z.union([z.string().uuid(), z.number()])
54
+ });
55
+ const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({
56
+ team: z.object({
57
+ team_id: z.number(),
58
+ // TODO: This should not be optional, but the API is not consistent yet
59
+ uuid: z.string().uuid().optional(),
60
+ name: z.string(),
61
+ plan_name: z.string(),
62
+ created_at: EXTENDED_DATE_TIME_SCHEMA,
63
+ created_at_timestamp: z.number(),
64
+ logo_url: z.string().nullable(),
65
+ role: z.string(),
66
+ quota_usage: TEAM_QUOTA_USAGE_SCHEMA,
67
+ quota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,
68
+ is_team_suspended: z.boolean(),
69
+ is_end_of_trial_active: z.boolean(),
70
+ trial_days_left: z.number()
71
+ })
72
+ });
9
73
  export {
10
- useHasAllFeatureFlags
74
+ LIST_TEAMS_QUERY_SCHEMA,
75
+ LIST_TEAMS_RESPONSE_SCHEMA,
76
+ RETRIEVE_TEAM_PATH_PARAMS_SCHEMA,
77
+ RETRIEVE_TEAM_RESPONSE_SCHEMA,
78
+ TEAMS_QUOTA_ALLOWED_SCHEMA,
79
+ TEAMS_QUOTA_METRICS,
80
+ TEAMS_QUOTA_METRICS_SCHEMA,
81
+ TEAMS_QUOTA_USAGE_SCHEMA,
82
+ TEAM_API_BASE_HEADERS_SCHEMA,
83
+ TEAM_QUOTA_ALLOWED_SCHEMA,
84
+ TEAM_QUOTA_METRICS_SCHEMA,
85
+ TEAM_QUOTA_USAGE_SCHEMA
11
86
  };
12
87
  //# sourceMappingURL=harmony87.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony87.mjs","sources":["../src/features/permissions/hooks/useHasAllFeatureFlags.ts"],"sourcesContent":["import { useActionResolverPayload } from '@features/permissions/hooks/useActionResolverPayload'\nimport type { FeatureFlag } from '@features/permissions/types'\nimport { has } from '@features/permissions/utils/has'\nimport { useMemo } from 'react'\n\nexport const useHasAllFeatureFlags = (...features: FeatureFlag[]) => {\n\tconst { enabledFeatureFlags } = useActionResolverPayload()\n\tconst key = features.join('')\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: Using key as spreading parameters will create a new array on every render.\n\treturn useMemo(() => has(enabledFeatureFlags, ...features), [key, enabledFeatureFlags])\n}\n"],"names":[],"mappings":";;;AAKa,MAAA,wBAAwB,IAAI,aAA4B;AAC9D,QAAA,EAAE,oBAAoB,IAAI,yBAAyB;AACnD,QAAA,MAAM,SAAS,KAAK,EAAE;AAGrB,SAAA,QAAQ,MAAM,IAAI,qBAAqB,GAAG,QAAQ,GAAG,CAAC,KAAK,mBAAmB,CAAC;AACvF;"}
1
+ {"version":3,"file":"harmony87.mjs","sources":["../src/features/publicApi/types/teamTypes.ts"],"sourcesContent":["import { PAGINATION_QUERY_PARAMS_SCHEMA } from '@features/publicApi/types/paginationTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\n// Shared schema\nexport const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type TeamApiBaseHeaders = z.infer<typeof TEAM_API_BASE_HEADERS_SCHEMA>\n\n/**\n * TODO - created_at is using custom format like 2024-10-03 09:45:52 (Etc/UTC)\n * instead of ISO 8601 which is expected by ZOD and we need a custom datetime schema\n */\nconst EXTENDED_DATE_TIME_SCHEMA = z.union([\n\tz.string().refine((val) => /^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} \\(.*\\)$/.test(val), {\n\t\tmessage: 'Invalid datetime format',\n\t}),\n\tz.string().datetime({ offset: true }),\n\tz.string().datetime(),\n])\n\n// There are too many differences between teams list and retrieving team\n// It is better to keep schemas separately\n\n// List teams\nexport const TEAMS_QUOTA_METRICS = [\n\t'users',\n\t'keys',\n\t'projects',\n\t'mau',\n\t'trafficBytes',\n\t'ai_words',\n] as const\n\nexport const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS)\nexport type TeamsQuotaMetrics = z.infer<typeof TEAMS_QUOTA_METRICS_SCHEMA>\n\nexport const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaUsage = z.infer<typeof TEAMS_QUOTA_USAGE_SCHEMA>\n\nexport const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaAllowed = z.infer<typeof TEAMS_QUOTA_ALLOWED_SCHEMA>\n\nexport const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA\nexport type ListTeamsQueryParams = z.infer<typeof LIST_TEAMS_QUERY_SCHEMA>\n\nexport const LIST_TEAMS_RESPONSE_SCHEMA = z.object({\n\tteams: z.array(\n\t\tz.object({\n\t\t\tteam_id: z.number(),\n\t\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\t\tuuid: z.string().uuid().optional(),\n\t\t\tname: z.string(),\n\t\t\tplan: z.string(),\n\t\t\tlogo_url: z.string().nullable(),\n\t\t\trole: z.string(),\n\t\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\t\tcreated_at_timestamp: z.number(),\n\t\t\tquota_usage: TEAMS_QUOTA_USAGE_SCHEMA,\n\t\t\tquota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA,\n\t\t}),\n\t),\n})\n\nexport type ListTeamsResponse = z.infer<typeof LIST_TEAMS_RESPONSE_SCHEMA>\n\n// Retrieve team\nexport const TEAM_QUOTA_METRICS_SCHEMA = z.object({\n\tid: z.number().nullable().optional(),\n\tusers: z.number(),\n\tkeys: z.number(),\n\tprojects: z.number(),\n\tmau: z.number(),\n\ttrafficBytes: z.number(),\n\taiWords: z.number(),\n})\n\nexport type TeamQuotaMetrics = z.infer<typeof TEAM_QUOTA_METRICS_SCHEMA>\n\nexport const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaUsage = z.infer<typeof TEAM_QUOTA_USAGE_SCHEMA>\n\nexport const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaAllowed = z.infer<typeof TEAM_QUOTA_ALLOWED_SCHEMA>\n\nexport const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({\n\tteamId: z.union([z.string().uuid(), z.number()]),\n})\n\nexport type RetrieveTeamPathParams = z.infer<typeof RETRIEVE_TEAM_PATH_PARAMS_SCHEMA>\n\nexport const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({\n\tteam: z.object({\n\t\tteam_id: z.number(),\n\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\tuuid: z.string().uuid().optional(),\n\t\tname: z.string(),\n\t\tplan_name: z.string(),\n\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\tcreated_at_timestamp: z.number(),\n\t\tlogo_url: z.string().nullable(),\n\t\trole: z.string(),\n\t\tquota_usage: TEAM_QUOTA_USAGE_SCHEMA,\n\t\tquota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,\n\t\tis_team_suspended: z.boolean(),\n\t\tis_end_of_trial_active: z.boolean(),\n\t\ttrial_days_left: z.number(),\n\t}),\n})\n\nexport type RetrieveTeamResponse = z.infer<typeof RETRIEVE_TEAM_RESPONSE_SCHEMA>\n"],"names":[],"mappings":";;;AAKO,MAAM,+BAA+B;AAQ5C,MAAM,4BAA4B,EAAE,MAAM;AAAA,EACzC,EAAE,OAAS,EAAA,OAAO,CAAC,QAAQ,+CAA+C,KAAK,GAAG,GAAG;AAAA,IACpF,SAAS;AAAA,EAAA,CACT;AAAA,EACD,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,MAAM;AAAA,EACpC,EAAE,OAAO,EAAE,SAAS;AACrB,CAAC;AAMM,MAAM,sBAAsB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEa,MAAA,6BAA6B,EAAE,KAAK,mBAAmB;AAG7D,MAAM,2BAA2B,EAAE,OAAO,4BAA4B,EAAE,OAAQ,CAAA;AAGhF,MAAM,6BAA6B,EAAE,OAAO,4BAA4B,EAAE,OAAQ,CAAA;AAGlF,MAAM,0BAA0B;AAG1B,MAAA,6BAA6B,EAAE,OAAO;AAAA,EAClD,OAAO,EAAE;AAAA,IACR,EAAE,OAAO;AAAA,MACR,SAAS,EAAE,OAAO;AAAA;AAAA,MAElB,MAAM,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,MACjC,MAAM,EAAE,OAAO;AAAA,MACf,MAAM,EAAE,OAAO;AAAA,MACf,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,MAC9B,MAAM,EAAE,OAAO;AAAA,MACf,YAAY;AAAA,MACZ,sBAAsB,EAAE,OAAO;AAAA,MAC/B,aAAa;AAAA,MACb,eAAe;AAAA,IACf,CAAA;AAAA,EAAA;AAEH,CAAC;AAKY,MAAA,4BAA4B,EAAE,OAAO;AAAA,EACjD,IAAI,EAAE,OAAS,EAAA,SAAA,EAAW,SAAS;AAAA,EACnC,OAAO,EAAE,OAAO;AAAA,EAChB,MAAM,EAAE,OAAO;AAAA,EACf,UAAU,EAAE,OAAO;AAAA,EACnB,KAAK,EAAE,OAAO;AAAA,EACd,cAAc,EAAE,OAAO;AAAA,EACvB,SAAS,EAAE,OAAO;AACnB,CAAC;AAIM,MAAM,0BAA0B;AAGhC,MAAM,4BAA4B;AAG5B,MAAA,mCAAmC,EAAE,OAAO;AAAA,EACxD,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAS,EAAA,KAAQ,GAAA,EAAE,QAAQ,CAAC;AAChD,CAAC;AAIY,MAAA,gCAAgC,EAAE,OAAO;AAAA,EACrD,MAAM,EAAE,OAAO;AAAA,IACd,SAAS,EAAE,OAAO;AAAA;AAAA,IAElB,MAAM,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,IACjC,MAAM,EAAE,OAAO;AAAA,IACf,WAAW,EAAE,OAAO;AAAA,IACpB,YAAY;AAAA,IACZ,sBAAsB,EAAE,OAAO;AAAA,IAC/B,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,IAC9B,MAAM,EAAE,OAAO;AAAA,IACf,aAAa;AAAA,IACb,eAAe;AAAA,IACf,mBAAmB,EAAE,QAAQ;AAAA,IAC7B,wBAAwB,EAAE,QAAQ;AAAA,IAClC,iBAAiB,EAAE,OAAO;AAAA,EAC1B,CAAA;AACF,CAAC;"}