@lokalise/harmony 1.26.1 → 1.27.0

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 (447) hide show
  1. package/dist/harmony.cjs +95 -48
  2. package/dist/harmony.cjs.map +1 -1
  3. package/dist/harmony.mjs +67 -20
  4. package/dist/harmony.mjs.map +1 -1
  5. package/dist/harmony100.cjs +18 -14
  6. package/dist/harmony100.cjs.map +1 -1
  7. package/dist/harmony100.mjs +18 -14
  8. package/dist/harmony100.mjs.map +1 -1
  9. package/dist/harmony101.cjs +13 -35
  10. package/dist/harmony101.cjs.map +1 -1
  11. package/dist/harmony101.mjs +13 -35
  12. package/dist/harmony101.mjs.map +1 -1
  13. package/dist/harmony102.cjs +7 -29
  14. package/dist/harmony102.cjs.map +1 -1
  15. package/dist/harmony102.mjs +6 -28
  16. package/dist/harmony102.mjs.map +1 -1
  17. package/dist/harmony103.cjs +6 -14
  18. package/dist/harmony103.cjs.map +1 -1
  19. package/dist/harmony103.mjs +5 -13
  20. package/dist/harmony103.mjs.map +1 -1
  21. package/dist/harmony104.cjs +6 -16
  22. package/dist/harmony104.cjs.map +1 -1
  23. package/dist/harmony104.mjs +5 -15
  24. package/dist/harmony104.mjs.map +1 -1
  25. package/dist/harmony105.cjs +62 -16
  26. package/dist/harmony105.cjs.map +1 -1
  27. package/dist/harmony105.mjs +61 -15
  28. package/dist/harmony105.mjs.map +1 -1
  29. package/dist/harmony106.cjs +87 -6
  30. package/dist/harmony106.cjs.map +1 -1
  31. package/dist/harmony106.mjs +87 -6
  32. package/dist/harmony106.mjs.map +1 -1
  33. package/dist/harmony107.cjs +18 -57
  34. package/dist/harmony107.cjs.map +1 -1
  35. package/dist/harmony107.mjs +17 -56
  36. package/dist/harmony107.mjs.map +1 -1
  37. package/dist/harmony108.cjs +95 -59
  38. package/dist/harmony108.cjs.map +1 -1
  39. package/dist/harmony108.mjs +95 -59
  40. package/dist/harmony108.mjs.map +1 -1
  41. package/dist/harmony109.cjs +14 -19
  42. package/dist/harmony109.cjs.map +1 -1
  43. package/dist/harmony109.mjs +13 -18
  44. package/dist/harmony109.mjs.map +1 -1
  45. package/dist/harmony110.cjs +13 -10
  46. package/dist/harmony110.cjs.map +1 -1
  47. package/dist/harmony110.mjs +13 -10
  48. package/dist/harmony110.mjs.map +1 -1
  49. package/dist/harmony111.cjs +33 -13
  50. package/dist/harmony111.cjs.map +1 -1
  51. package/dist/harmony111.mjs +33 -13
  52. package/dist/harmony111.mjs.map +1 -1
  53. package/dist/harmony112.cjs +25 -18
  54. package/dist/harmony112.cjs.map +1 -1
  55. package/dist/harmony112.mjs +25 -18
  56. package/dist/harmony112.mjs.map +1 -1
  57. package/dist/harmony113.cjs +7 -12
  58. package/dist/harmony113.cjs.map +1 -1
  59. package/dist/harmony113.mjs +7 -12
  60. package/dist/harmony113.mjs.map +1 -1
  61. package/dist/harmony114.cjs +54 -43
  62. package/dist/harmony114.cjs.map +1 -1
  63. package/dist/harmony114.mjs +56 -45
  64. package/dist/harmony114.mjs.map +1 -1
  65. package/dist/harmony115.cjs +61 -13
  66. package/dist/harmony115.cjs.map +1 -1
  67. package/dist/harmony115.mjs +59 -11
  68. package/dist/harmony115.mjs.map +1 -1
  69. package/dist/harmony116.cjs +19 -7
  70. package/dist/harmony116.cjs.map +1 -1
  71. package/dist/harmony116.mjs +18 -6
  72. package/dist/harmony116.mjs.map +1 -1
  73. package/dist/harmony117.cjs +12 -11
  74. package/dist/harmony117.cjs.map +1 -1
  75. package/dist/harmony117.mjs +12 -11
  76. package/dist/harmony117.mjs.map +1 -1
  77. package/dist/harmony118.cjs +13 -30
  78. package/dist/harmony118.cjs.map +1 -1
  79. package/dist/harmony118.mjs +13 -30
  80. package/dist/harmony118.mjs.map +1 -1
  81. package/dist/harmony119.cjs +14 -12
  82. package/dist/harmony119.cjs.map +1 -1
  83. package/dist/harmony119.mjs +14 -12
  84. package/dist/harmony119.mjs.map +1 -1
  85. package/dist/harmony120.cjs +14 -0
  86. package/dist/harmony120.cjs.map +1 -0
  87. package/dist/harmony120.mjs +14 -0
  88. package/dist/harmony120.mjs.map +1 -0
  89. package/dist/harmony121.cjs +19 -0
  90. package/dist/harmony121.cjs.map +1 -0
  91. package/dist/harmony121.mjs +19 -0
  92. package/dist/harmony121.mjs.map +1 -0
  93. package/dist/harmony122.cjs +24 -0
  94. package/dist/harmony122.cjs.map +1 -0
  95. package/dist/harmony122.mjs +24 -0
  96. package/dist/harmony122.mjs.map +1 -0
  97. package/dist/harmony123.cjs +15 -0
  98. package/dist/harmony123.cjs.map +1 -0
  99. package/dist/harmony123.mjs +15 -0
  100. package/dist/harmony123.mjs.map +1 -0
  101. package/dist/harmony124.cjs +9 -0
  102. package/dist/harmony124.cjs.map +1 -0
  103. package/dist/harmony124.mjs +9 -0
  104. package/dist/harmony124.mjs.map +1 -0
  105. package/dist/harmony125.cjs +15 -0
  106. package/dist/harmony125.cjs.map +1 -0
  107. package/dist/harmony125.mjs +15 -0
  108. package/dist/harmony125.mjs.map +1 -0
  109. package/dist/harmony126.cjs +35 -0
  110. package/dist/harmony126.cjs.map +1 -0
  111. package/dist/harmony126.mjs +35 -0
  112. package/dist/harmony126.mjs.map +1 -0
  113. package/dist/harmony127.cjs +17 -0
  114. package/dist/harmony127.cjs.map +1 -0
  115. package/dist/harmony127.mjs +17 -0
  116. package/dist/harmony127.mjs.map +1 -0
  117. package/dist/harmony128.cjs +49 -0
  118. package/dist/harmony128.cjs.map +1 -0
  119. package/dist/harmony128.mjs +49 -0
  120. package/dist/harmony128.mjs.map +1 -0
  121. package/dist/harmony129.cjs +15 -0
  122. package/dist/harmony129.cjs.map +1 -0
  123. package/dist/harmony129.mjs +15 -0
  124. package/dist/harmony129.mjs.map +1 -0
  125. package/dist/harmony15.cjs +1 -1
  126. package/dist/harmony15.mjs +1 -1
  127. package/dist/harmony20.cjs +1 -1
  128. package/dist/harmony20.mjs +1 -1
  129. package/dist/harmony21.cjs +1 -1
  130. package/dist/harmony21.mjs +1 -1
  131. package/dist/harmony22.cjs +1 -1
  132. package/dist/harmony22.mjs +1 -1
  133. package/dist/harmony23.cjs +1 -1
  134. package/dist/harmony23.mjs +1 -1
  135. package/dist/harmony25.cjs +1 -1
  136. package/dist/harmony25.mjs +1 -1
  137. package/dist/harmony26.cjs +2 -2
  138. package/dist/harmony26.mjs +2 -2
  139. package/dist/harmony27.cjs +2 -2
  140. package/dist/harmony27.mjs +2 -2
  141. package/dist/harmony28.cjs +10 -37
  142. package/dist/harmony28.cjs.map +1 -1
  143. package/dist/harmony28.mjs +10 -37
  144. package/dist/harmony28.mjs.map +1 -1
  145. package/dist/harmony29.cjs +44 -9
  146. package/dist/harmony29.cjs.map +1 -1
  147. package/dist/harmony29.mjs +44 -9
  148. package/dist/harmony29.mjs.map +1 -1
  149. package/dist/harmony3.cjs +3 -3
  150. package/dist/harmony3.mjs +3 -3
  151. package/dist/harmony30.cjs +10 -13
  152. package/dist/harmony30.cjs.map +1 -1
  153. package/dist/harmony30.mjs +10 -13
  154. package/dist/harmony30.mjs.map +1 -1
  155. package/dist/harmony31.cjs +18 -80
  156. package/dist/harmony31.cjs.map +1 -1
  157. package/dist/harmony31.mjs +17 -79
  158. package/dist/harmony31.mjs.map +1 -1
  159. package/dist/harmony32.cjs +10 -110
  160. package/dist/harmony32.cjs.map +1 -1
  161. package/dist/harmony32.mjs +9 -109
  162. package/dist/harmony32.mjs.map +1 -1
  163. package/dist/harmony33.cjs +13 -7
  164. package/dist/harmony33.cjs.map +1 -1
  165. package/dist/harmony33.mjs +13 -7
  166. package/dist/harmony33.mjs.map +1 -1
  167. package/dist/harmony34.cjs +14 -56
  168. package/dist/harmony34.cjs.map +1 -1
  169. package/dist/harmony34.mjs +14 -56
  170. package/dist/harmony34.mjs.map +1 -1
  171. package/dist/harmony35.cjs +14 -24
  172. package/dist/harmony35.cjs.map +1 -1
  173. package/dist/harmony35.mjs +14 -24
  174. package/dist/harmony35.mjs.map +1 -1
  175. package/dist/harmony36.cjs +13 -18
  176. package/dist/harmony36.cjs.map +1 -1
  177. package/dist/harmony36.mjs +13 -18
  178. package/dist/harmony36.mjs.map +1 -1
  179. package/dist/harmony37.cjs +17 -21
  180. package/dist/harmony37.cjs.map +1 -1
  181. package/dist/harmony37.mjs +17 -21
  182. package/dist/harmony37.mjs.map +1 -1
  183. package/dist/harmony38.cjs +10 -6
  184. package/dist/harmony38.cjs.map +1 -1
  185. package/dist/harmony38.mjs +12 -8
  186. package/dist/harmony38.mjs.map +1 -1
  187. package/dist/harmony39.cjs +1 -1
  188. package/dist/harmony39.mjs +1 -1
  189. package/dist/harmony4.cjs +10 -10
  190. package/dist/harmony4.mjs +10 -10
  191. package/dist/harmony40.cjs +1 -1
  192. package/dist/harmony40.mjs +1 -1
  193. package/dist/harmony41.cjs +12 -14
  194. package/dist/harmony41.cjs.map +1 -1
  195. package/dist/harmony41.mjs +12 -14
  196. package/dist/harmony41.mjs.map +1 -1
  197. package/dist/harmony42.cjs +10 -10
  198. package/dist/harmony42.cjs.map +1 -1
  199. package/dist/harmony42.mjs +10 -10
  200. package/dist/harmony42.mjs.map +1 -1
  201. package/dist/harmony43.cjs +14 -12
  202. package/dist/harmony43.cjs.map +1 -1
  203. package/dist/harmony43.mjs +14 -12
  204. package/dist/harmony43.mjs.map +1 -1
  205. package/dist/harmony44.cjs +8 -8
  206. package/dist/harmony44.cjs.map +1 -1
  207. package/dist/harmony44.mjs +8 -8
  208. package/dist/harmony44.mjs.map +1 -1
  209. package/dist/harmony45.cjs +13 -12
  210. package/dist/harmony45.cjs.map +1 -1
  211. package/dist/harmony45.mjs +15 -14
  212. package/dist/harmony45.mjs.map +1 -1
  213. package/dist/harmony46.cjs +10 -7
  214. package/dist/harmony46.cjs.map +1 -1
  215. package/dist/harmony46.mjs +12 -9
  216. package/dist/harmony46.mjs.map +1 -1
  217. package/dist/harmony47.cjs +6 -9
  218. package/dist/harmony47.cjs.map +1 -1
  219. package/dist/harmony47.mjs +8 -11
  220. package/dist/harmony47.mjs.map +1 -1
  221. package/dist/harmony48.cjs +57 -16
  222. package/dist/harmony48.cjs.map +1 -1
  223. package/dist/harmony48.mjs +56 -15
  224. package/dist/harmony48.mjs.map +1 -1
  225. package/dist/harmony49.cjs +81 -19
  226. package/dist/harmony49.cjs.map +1 -1
  227. package/dist/harmony49.mjs +80 -18
  228. package/dist/harmony49.mjs.map +1 -1
  229. package/dist/harmony5.cjs +1 -1
  230. package/dist/harmony5.mjs +1 -1
  231. package/dist/harmony50.cjs +7 -62
  232. package/dist/harmony50.cjs.map +1 -1
  233. package/dist/harmony50.mjs +6 -61
  234. package/dist/harmony50.mjs.map +1 -1
  235. package/dist/harmony51.cjs +24 -7
  236. package/dist/harmony51.cjs.map +1 -1
  237. package/dist/harmony51.mjs +23 -6
  238. package/dist/harmony51.mjs.map +1 -1
  239. package/dist/harmony52.cjs +37 -9
  240. package/dist/harmony52.cjs.map +1 -1
  241. package/dist/harmony52.mjs +37 -9
  242. package/dist/harmony52.mjs.map +1 -1
  243. package/dist/harmony53.cjs +117 -18
  244. package/dist/harmony53.cjs.map +1 -1
  245. package/dist/harmony53.mjs +117 -18
  246. package/dist/harmony53.mjs.map +1 -1
  247. package/dist/harmony54.cjs +21 -23
  248. package/dist/harmony54.cjs.map +1 -1
  249. package/dist/harmony54.mjs +21 -23
  250. package/dist/harmony54.mjs.map +1 -1
  251. package/dist/harmony55.cjs +26 -5
  252. package/dist/harmony55.cjs.map +1 -1
  253. package/dist/harmony55.mjs +26 -5
  254. package/dist/harmony55.mjs.map +1 -1
  255. package/dist/harmony56.cjs +8 -32
  256. package/dist/harmony56.cjs.map +1 -1
  257. package/dist/harmony56.mjs +8 -32
  258. package/dist/harmony56.mjs.map +1 -1
  259. package/dist/harmony57.cjs +50 -32
  260. package/dist/harmony57.cjs.map +1 -1
  261. package/dist/harmony57.mjs +50 -32
  262. package/dist/harmony57.mjs.map +1 -1
  263. package/dist/harmony58.cjs +24 -19
  264. package/dist/harmony58.cjs.map +1 -1
  265. package/dist/harmony58.mjs +24 -19
  266. package/dist/harmony58.mjs.map +1 -1
  267. package/dist/harmony59.cjs +18 -31
  268. package/dist/harmony59.cjs.map +1 -1
  269. package/dist/harmony59.mjs +18 -31
  270. package/dist/harmony59.mjs.map +1 -1
  271. package/dist/harmony6.cjs +4 -4
  272. package/dist/harmony6.mjs +4 -4
  273. package/dist/harmony60.cjs +16 -60
  274. package/dist/harmony60.cjs.map +1 -1
  275. package/dist/harmony60.mjs +15 -59
  276. package/dist/harmony60.mjs.map +1 -1
  277. package/dist/harmony61.cjs +15 -6
  278. package/dist/harmony61.cjs.map +1 -1
  279. package/dist/harmony61.mjs +16 -7
  280. package/dist/harmony61.mjs.map +1 -1
  281. package/dist/harmony62.cjs +61 -8
  282. package/dist/harmony62.cjs.map +1 -1
  283. package/dist/harmony62.mjs +61 -8
  284. package/dist/harmony62.mjs.map +1 -1
  285. package/dist/harmony63.cjs +7 -30
  286. package/dist/harmony63.cjs.map +1 -1
  287. package/dist/harmony63.mjs +6 -29
  288. package/dist/harmony63.mjs.map +1 -1
  289. package/dist/harmony64.cjs +9 -3
  290. package/dist/harmony64.cjs.map +1 -1
  291. package/dist/harmony64.mjs +9 -3
  292. package/dist/harmony64.mjs.map +1 -1
  293. package/dist/harmony65.cjs +18 -6
  294. package/dist/harmony65.cjs.map +1 -1
  295. package/dist/harmony65.mjs +17 -5
  296. package/dist/harmony65.mjs.map +1 -1
  297. package/dist/harmony66.cjs +23 -9
  298. package/dist/harmony66.cjs.map +1 -1
  299. package/dist/harmony66.mjs +22 -8
  300. package/dist/harmony66.mjs.map +1 -1
  301. package/dist/harmony67.cjs +6 -10
  302. package/dist/harmony67.cjs.map +1 -1
  303. package/dist/harmony67.mjs +5 -9
  304. package/dist/harmony67.mjs.map +1 -1
  305. package/dist/harmony68.cjs +29 -54
  306. package/dist/harmony68.cjs.map +1 -1
  307. package/dist/harmony68.mjs +30 -55
  308. package/dist/harmony68.mjs.map +1 -1
  309. package/dist/harmony69.cjs +29 -29
  310. package/dist/harmony69.cjs.map +1 -1
  311. package/dist/harmony69.mjs +30 -30
  312. package/dist/harmony69.mjs.map +1 -1
  313. package/dist/harmony70.cjs +19 -5
  314. package/dist/harmony70.cjs.map +1 -1
  315. package/dist/harmony70.mjs +19 -5
  316. package/dist/harmony70.mjs.map +1 -1
  317. package/dist/harmony71.cjs +31 -9
  318. package/dist/harmony71.cjs.map +1 -1
  319. package/dist/harmony71.mjs +30 -8
  320. package/dist/harmony71.mjs.map +1 -1
  321. package/dist/harmony72.cjs +60 -25
  322. package/dist/harmony72.cjs.map +1 -1
  323. package/dist/harmony72.mjs +59 -24
  324. package/dist/harmony72.mjs.map +1 -1
  325. package/dist/harmony73.cjs +8 -5
  326. package/dist/harmony73.cjs.map +1 -1
  327. package/dist/harmony73.mjs +8 -5
  328. package/dist/harmony73.mjs.map +1 -1
  329. package/dist/harmony74.cjs +6 -19
  330. package/dist/harmony74.cjs.map +1 -1
  331. package/dist/harmony74.mjs +8 -21
  332. package/dist/harmony74.mjs.map +1 -1
  333. package/dist/harmony75.cjs +30 -13
  334. package/dist/harmony75.cjs.map +1 -1
  335. package/dist/harmony75.mjs +29 -12
  336. package/dist/harmony75.mjs.map +1 -1
  337. package/dist/harmony76.cjs +3 -11
  338. package/dist/harmony76.cjs.map +1 -1
  339. package/dist/harmony76.mjs +3 -11
  340. package/dist/harmony76.mjs.map +1 -1
  341. package/dist/harmony77.cjs +5 -20
  342. package/dist/harmony77.cjs.map +1 -1
  343. package/dist/harmony77.mjs +5 -20
  344. package/dist/harmony77.mjs.map +1 -1
  345. package/dist/harmony78.cjs +10 -19
  346. package/dist/harmony78.cjs.map +1 -1
  347. package/dist/harmony78.mjs +9 -18
  348. package/dist/harmony78.mjs.map +1 -1
  349. package/dist/harmony79.cjs +9 -14
  350. package/dist/harmony79.cjs.map +1 -1
  351. package/dist/harmony79.mjs +8 -13
  352. package/dist/harmony79.mjs.map +1 -1
  353. package/dist/harmony80.cjs +57 -26
  354. package/dist/harmony80.cjs.map +1 -1
  355. package/dist/harmony80.mjs +57 -26
  356. package/dist/harmony80.mjs.map +1 -1
  357. package/dist/harmony81.cjs +32 -11
  358. package/dist/harmony81.cjs.map +1 -1
  359. package/dist/harmony81.mjs +32 -11
  360. package/dist/harmony81.mjs.map +1 -1
  361. package/dist/harmony82.cjs +4 -98
  362. package/dist/harmony82.cjs.map +1 -1
  363. package/dist/harmony82.mjs +5 -82
  364. package/dist/harmony82.mjs.map +1 -1
  365. package/dist/harmony83.cjs +6 -18
  366. package/dist/harmony83.cjs.map +1 -1
  367. package/dist/harmony83.mjs +6 -18
  368. package/dist/harmony83.mjs.map +1 -1
  369. package/dist/harmony84.cjs +24 -5
  370. package/dist/harmony84.cjs.map +1 -1
  371. package/dist/harmony84.mjs +23 -4
  372. package/dist/harmony84.mjs.map +1 -1
  373. package/dist/harmony85.cjs +6 -132
  374. package/dist/harmony85.cjs.map +1 -1
  375. package/dist/harmony85.mjs +5 -131
  376. package/dist/harmony85.mjs.map +1 -1
  377. package/dist/harmony86.cjs +21 -12
  378. package/dist/harmony86.cjs.map +1 -1
  379. package/dist/harmony86.mjs +20 -11
  380. package/dist/harmony86.mjs.map +1 -1
  381. package/dist/harmony87.cjs +13 -6
  382. package/dist/harmony87.cjs.map +1 -1
  383. package/dist/harmony87.mjs +12 -5
  384. package/dist/harmony87.mjs.map +1 -1
  385. package/dist/harmony88.cjs +9 -38
  386. package/dist/harmony88.cjs.map +1 -1
  387. package/dist/harmony88.mjs +11 -40
  388. package/dist/harmony88.mjs.map +1 -1
  389. package/dist/harmony89.cjs +21 -60
  390. package/dist/harmony89.cjs.map +1 -1
  391. package/dist/harmony89.mjs +20 -59
  392. package/dist/harmony89.mjs.map +1 -1
  393. package/dist/harmony90.cjs +98 -6
  394. package/dist/harmony90.cjs.map +1 -1
  395. package/dist/harmony90.mjs +81 -6
  396. package/dist/harmony90.mjs.map +1 -1
  397. package/dist/harmony91.cjs +17 -7
  398. package/dist/harmony91.cjs.map +1 -1
  399. package/dist/harmony91.mjs +16 -6
  400. package/dist/harmony91.mjs.map +1 -1
  401. package/dist/harmony92.cjs +21 -5
  402. package/dist/harmony92.cjs.map +1 -1
  403. package/dist/harmony92.mjs +21 -5
  404. package/dist/harmony92.mjs.map +1 -1
  405. package/dist/harmony93.cjs +6 -6
  406. package/dist/harmony93.cjs.map +1 -1
  407. package/dist/harmony93.mjs +5 -5
  408. package/dist/harmony93.mjs.map +1 -1
  409. package/dist/harmony94.cjs +129 -13
  410. package/dist/harmony94.cjs.map +1 -1
  411. package/dist/harmony94.mjs +129 -13
  412. package/dist/harmony94.mjs.map +1 -1
  413. package/dist/harmony95.cjs +13 -63
  414. package/dist/harmony95.cjs.map +1 -1
  415. package/dist/harmony95.mjs +12 -62
  416. package/dist/harmony95.mjs.map +1 -1
  417. package/dist/harmony96.cjs +5 -88
  418. package/dist/harmony96.cjs.map +1 -1
  419. package/dist/harmony96.mjs +5 -88
  420. package/dist/harmony96.mjs.map +1 -1
  421. package/dist/harmony97.cjs +40 -18
  422. package/dist/harmony97.cjs.map +1 -1
  423. package/dist/harmony97.mjs +39 -17
  424. package/dist/harmony97.mjs.map +1 -1
  425. package/dist/harmony98.cjs +60 -96
  426. package/dist/harmony98.cjs.map +1 -1
  427. package/dist/harmony98.mjs +60 -96
  428. package/dist/harmony98.mjs.map +1 -1
  429. package/dist/harmony99.cjs +7 -13
  430. package/dist/harmony99.cjs.map +1 -1
  431. package/dist/harmony99.mjs +7 -13
  432. package/dist/harmony99.mjs.map +1 -1
  433. package/dist/types/src/features/publicApi/hooks/useGetProjectPermissionMetaQuery.d.ts +42 -0
  434. package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +7 -5
  435. package/dist/types/src/features/publicApi/hooks/useListTeamsQuery.d.ts +37 -0
  436. package/dist/types/src/features/publicApi/hooks/useRetrieveTeamQuery.d.ts +37 -0
  437. package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +2 -2
  438. package/dist/types/src/features/publicApi/node.d.ts +21 -9
  439. package/dist/types/src/features/publicApi/permissionTemplates.d.ts +35 -25
  440. package/dist/types/src/features/publicApi/projects.d.ts +178 -5
  441. package/dist/types/src/features/publicApi/team.d.ts +297 -0
  442. package/dist/types/src/features/publicApi/types/paginationTypes.d.ts +12 -0
  443. package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +56 -40
  444. package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +34 -0
  445. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +121 -12
  446. package/dist/types/src/features/publicApi/types/teamTypes.d.ts +257 -0
  447. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"harmony59.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.tsx"],"sourcesContent":["import { MenuItem } from '@lokalise/louis'\nimport { isFreePlan } from '@utils'\nimport { UpgradeIcon } from '../../../UpgradeIcon/UpgradeIcon'\nimport { useProfileMenu } from '../ProfileMenuContext'\nimport styles from './UpgradeMenuItem.module.css'\n\ntype UpgradeMenuItemProps = {\n\t/** URL to the upgrade page or pricing options */\n\tupgradeOptionHref: string\n}\n\n/**\n * A menu item component that displays upgrade call-to-action information.\n * Only renders when upgrade options should be shown (determined by context).\n *\n * The component displays different messages based on the team's current plan:\n * - For free plans: \"Your team is currently on the Free plan\"\n * - For trial plans: \"Free trial ends in X days\"\n *\n * Includes an upgrade icon and \"See upgrade options\" text, styled to draw attention\n * to the upgrade opportunity.\n *\n * @example\n * ```tsx\n * <UpgradeMenuItem upgradeOptionHref=\"/pricing\" />\n * ```\n *\n * @note This component must be used within a ProfileMenu component\n * as it requires access to the ProfileMenu context for plan information\n * and visibility control.\n */\nexport const UpgradeMenuItem = ({ upgradeOptionHref }: UpgradeMenuItemProps) => {\n\tconst { planId, trialDaysLeft, showUpgradeCta } = useProfileMenu()\n\n\tif (!showUpgradeCta) {\n\t\treturn null\n\t}\n\n\tconst isOnFreePlan = isFreePlan(planId)\n\n\tconst daysNoun = trialDaysLeft === 1 ? 'day' : 'days'\n\tconst ctaMessage = isOnFreePlan\n\t\t? 'Your team is currently on the Free plan'\n\t\t: `Free trial ends in ${trialDaysLeft} ${daysNoun}`\n\n\treturn (\n\t\t<MenuItem\n\t\t\tdata-testid=\"sidebar-upgrade-menu-item\"\n\t\t\thref={upgradeOptionHref}\n\t\t\tclassName={`flex-col gap-1 items-start ${styles.container}`}\n\t\t>\n\t\t\t<span className={styles.planCta}>{ctaMessage}</span>\n\t\t\t<div className={`flex-row items-center gap-1 ${styles.upgradeIconWrapper}`}>\n\t\t\t\t<UpgradeIcon />\n\t\t\t\t<span>See upgrade options</span>\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":["useProfileMenu","isFreePlan","jsxs","MenuItem","styles","jsx","UpgradeIcon"],"mappings":";;;;;;;;AA+BO,MAAM,kBAAkB,CAAC,EAAE,wBAA8C;AAC/E,QAAM,EAAE,QAAQ,eAAe,eAAA,IAAmBA,mBAAAA,eAAe;AAEjE,MAAI,CAAC,gBAAgB;AACb,WAAA;AAAA,EAAA;AAGF,QAAA,eAAeC,gBAAW,MAAM;AAEhC,QAAA,WAAW,kBAAkB,IAAI,QAAQ;AAC/C,QAAM,aAAa,eAChB,4CACA,sBAAsB,aAAa,IAAI,QAAQ;AAGjD,SAAAC,2BAAA;AAAA,IAACC,MAAA;AAAA,IAAA;AAAA,MACA,eAAY;AAAA,MACZ,MAAM;AAAA,MACN,WAAW,8BAA8BC,uBAAA,QAAO,SAAS;AAAA,MAEzD,UAAA;AAAA,QAAAC,2BAAA,IAAC,QAAK,EAAA,WAAWD,uBAAO,QAAA,SAAU,UAAW,YAAA;AAAA,wCAC5C,OAAI,EAAA,WAAW,+BAA+BA,+BAAO,kBAAkB,IACvE,UAAA;AAAA,UAAAC,2BAAA,IAACC,YAAY,aAAA,EAAA;AAAA,UACbD,2BAAAA,IAAC,UAAK,UAAmB,sBAAA,CAAA;AAAA,QAAA,EAC1B,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACD;AAEF;;"}
1
+ {"version":3,"file":"harmony59.cjs","sources":["../src/features/publicApi/types/userTokenTypes.ts"],"sourcesContent":["import { AUTHORIZATION_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\nexport const JWT_TOKEN_SCHEMA = z.object({\n\taccessToken: z.string(),\n\trefreshToken: z.string(),\n})\n\nexport type JwtToken = z.infer<typeof JWT_TOKEN_SCHEMA>\n\nconst X_CSRF_TOKEN_SCHEMA = z.union([\n\tz.object({ 'X-Csrf-Token': z.string() }),\n\tz.object({ 'X-CSRF-Token': z.string() }),\n\tz.object({ 'x-csrf-token': z.string() }),\n\tz.object({ 'X-CSRF-TOKEN': z.string() }),\n])\n\nexport const USER_TOKEN_REQUEST_HEADER_SCHEMA = z.union([\n\tAUTHORIZATION_HEADER_SCHEMA,\n\tX_CSRF_TOKEN_SCHEMA,\n])\n\nexport type UserTokenRequestHeader = z.infer<typeof USER_TOKEN_REQUEST_HEADER_SCHEMA>\n"],"names":["z","AUTHORIZATION_HEADER_SCHEMA"],"mappings":";;;;AAGa,MAAA,mBAAmBA,MAAE,OAAO;AAAA,EACxC,aAAaA,MAAE,OAAO;AAAA,EACtB,cAAcA,MAAE,OAAO;AACxB,CAAC;AAID,MAAM,sBAAsBA,MAAE,MAAM;AAAA,EACnCA,MAAE,OAAO,EAAE,gBAAgBA,IAAAA,EAAE,UAAU;AAAA,EACvCA,MAAE,OAAO,EAAE,gBAAgBA,IAAAA,EAAE,UAAU;AAAA,EACvCA,MAAE,OAAO,EAAE,gBAAgBA,IAAAA,EAAE,UAAU;AAAA,EACvCA,IAAAA,EAAE,OAAO,EAAE,gBAAgBA,IAAE,EAAA,OAAA,EAAU,CAAA;AACxC,CAAC;AAEY,MAAA,mCAAmCA,MAAE,MAAM;AAAA,EACvDC,YAAA;AAAA,EACA;AACD,CAAC;;;"}
@@ -1,34 +1,21 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- import { MenuItem } from "@lokalise/louis";
3
- import { isFreePlan } from "./harmony7.mjs";
4
- import { UpgradeIcon } from "./harmony74.mjs";
5
- import { useProfileMenu } from "./harmony70.mjs";
6
- import styles from "./harmony75.mjs";
7
- const UpgradeMenuItem = ({ upgradeOptionHref }) => {
8
- const { planId, trialDaysLeft, showUpgradeCta } = useProfileMenu();
9
- if (!showUpgradeCta) {
10
- return null;
11
- }
12
- const isOnFreePlan = isFreePlan(planId);
13
- const daysNoun = trialDaysLeft === 1 ? "day" : "days";
14
- const ctaMessage = isOnFreePlan ? "Your team is currently on the Free plan" : `Free trial ends in ${trialDaysLeft} ${daysNoun}`;
15
- return /* @__PURE__ */ jsxs(
16
- MenuItem,
17
- {
18
- "data-testid": "sidebar-upgrade-menu-item",
19
- href: upgradeOptionHref,
20
- className: `flex-col gap-1 items-start ${styles.container}`,
21
- children: [
22
- /* @__PURE__ */ jsx("span", { className: styles.planCta, children: ctaMessage }),
23
- /* @__PURE__ */ jsxs("div", { className: `flex-row items-center gap-1 ${styles.upgradeIconWrapper}`, children: [
24
- /* @__PURE__ */ jsx(UpgradeIcon, {}),
25
- /* @__PURE__ */ jsx("span", { children: "See upgrade options" })
26
- ] })
27
- ]
28
- }
29
- );
30
- };
1
+ import { AUTHORIZATION_HEADER_SCHEMA } from "./harmony55.mjs";
2
+ import { z } from "zod";
3
+ const JWT_TOKEN_SCHEMA = z.object({
4
+ accessToken: z.string(),
5
+ refreshToken: z.string()
6
+ });
7
+ const X_CSRF_TOKEN_SCHEMA = z.union([
8
+ z.object({ "X-Csrf-Token": z.string() }),
9
+ z.object({ "X-CSRF-Token": z.string() }),
10
+ z.object({ "x-csrf-token": z.string() }),
11
+ z.object({ "X-CSRF-TOKEN": z.string() })
12
+ ]);
13
+ const USER_TOKEN_REQUEST_HEADER_SCHEMA = z.union([
14
+ AUTHORIZATION_HEADER_SCHEMA,
15
+ X_CSRF_TOKEN_SCHEMA
16
+ ]);
31
17
  export {
32
- UpgradeMenuItem
18
+ JWT_TOKEN_SCHEMA,
19
+ USER_TOKEN_REQUEST_HEADER_SCHEMA
33
20
  };
34
21
  //# sourceMappingURL=harmony59.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony59.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.tsx"],"sourcesContent":["import { MenuItem } from '@lokalise/louis'\nimport { isFreePlan } from '@utils'\nimport { UpgradeIcon } from '../../../UpgradeIcon/UpgradeIcon'\nimport { useProfileMenu } from '../ProfileMenuContext'\nimport styles from './UpgradeMenuItem.module.css'\n\ntype UpgradeMenuItemProps = {\n\t/** URL to the upgrade page or pricing options */\n\tupgradeOptionHref: string\n}\n\n/**\n * A menu item component that displays upgrade call-to-action information.\n * Only renders when upgrade options should be shown (determined by context).\n *\n * The component displays different messages based on the team's current plan:\n * - For free plans: \"Your team is currently on the Free plan\"\n * - For trial plans: \"Free trial ends in X days\"\n *\n * Includes an upgrade icon and \"See upgrade options\" text, styled to draw attention\n * to the upgrade opportunity.\n *\n * @example\n * ```tsx\n * <UpgradeMenuItem upgradeOptionHref=\"/pricing\" />\n * ```\n *\n * @note This component must be used within a ProfileMenu component\n * as it requires access to the ProfileMenu context for plan information\n * and visibility control.\n */\nexport const UpgradeMenuItem = ({ upgradeOptionHref }: UpgradeMenuItemProps) => {\n\tconst { planId, trialDaysLeft, showUpgradeCta } = useProfileMenu()\n\n\tif (!showUpgradeCta) {\n\t\treturn null\n\t}\n\n\tconst isOnFreePlan = isFreePlan(planId)\n\n\tconst daysNoun = trialDaysLeft === 1 ? 'day' : 'days'\n\tconst ctaMessage = isOnFreePlan\n\t\t? 'Your team is currently on the Free plan'\n\t\t: `Free trial ends in ${trialDaysLeft} ${daysNoun}`\n\n\treturn (\n\t\t<MenuItem\n\t\t\tdata-testid=\"sidebar-upgrade-menu-item\"\n\t\t\thref={upgradeOptionHref}\n\t\t\tclassName={`flex-col gap-1 items-start ${styles.container}`}\n\t\t>\n\t\t\t<span className={styles.planCta}>{ctaMessage}</span>\n\t\t\t<div className={`flex-row items-center gap-1 ${styles.upgradeIconWrapper}`}>\n\t\t\t\t<UpgradeIcon />\n\t\t\t\t<span>See upgrade options</span>\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":[],"mappings":";;;;;;AA+BO,MAAM,kBAAkB,CAAC,EAAE,wBAA8C;AAC/E,QAAM,EAAE,QAAQ,eAAe,eAAA,IAAmB,eAAe;AAEjE,MAAI,CAAC,gBAAgB;AACb,WAAA;AAAA,EAAA;AAGF,QAAA,eAAe,WAAW,MAAM;AAEhC,QAAA,WAAW,kBAAkB,IAAI,QAAQ;AAC/C,QAAM,aAAa,eAChB,4CACA,sBAAsB,aAAa,IAAI,QAAQ;AAGjD,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,eAAY;AAAA,MACZ,MAAM;AAAA,MACN,WAAW,8BAA8B,OAAO,SAAS;AAAA,MAEzD,UAAA;AAAA,QAAA,oBAAC,QAAK,EAAA,WAAW,OAAO,SAAU,UAAW,YAAA;AAAA,6BAC5C,OAAI,EAAA,WAAW,+BAA+B,OAAO,kBAAkB,IACvE,UAAA;AAAA,UAAA,oBAAC,aAAY,EAAA;AAAA,UACb,oBAAC,UAAK,UAAmB,sBAAA,CAAA;AAAA,QAAA,EAC1B,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACD;AAEF;"}
1
+ {"version":3,"file":"harmony59.mjs","sources":["../src/features/publicApi/types/userTokenTypes.ts"],"sourcesContent":["import { AUTHORIZATION_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\nexport const JWT_TOKEN_SCHEMA = z.object({\n\taccessToken: z.string(),\n\trefreshToken: z.string(),\n})\n\nexport type JwtToken = z.infer<typeof JWT_TOKEN_SCHEMA>\n\nconst X_CSRF_TOKEN_SCHEMA = z.union([\n\tz.object({ 'X-Csrf-Token': z.string() }),\n\tz.object({ 'X-CSRF-Token': z.string() }),\n\tz.object({ 'x-csrf-token': z.string() }),\n\tz.object({ 'X-CSRF-TOKEN': z.string() }),\n])\n\nexport const USER_TOKEN_REQUEST_HEADER_SCHEMA = z.union([\n\tAUTHORIZATION_HEADER_SCHEMA,\n\tX_CSRF_TOKEN_SCHEMA,\n])\n\nexport type UserTokenRequestHeader = z.infer<typeof USER_TOKEN_REQUEST_HEADER_SCHEMA>\n"],"names":[],"mappings":";;AAGa,MAAA,mBAAmB,EAAE,OAAO;AAAA,EACxC,aAAa,EAAE,OAAO;AAAA,EACtB,cAAc,EAAE,OAAO;AACxB,CAAC;AAID,MAAM,sBAAsB,EAAE,MAAM;AAAA,EACnC,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU;AAAA,EACvC,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU;AAAA,EACvC,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU;AAAA,EACvC,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAA,EAAU,CAAA;AACxC,CAAC;AAEY,MAAA,mCAAmC,EAAE,MAAM;AAAA,EACvD;AAAA,EACA;AACD,CAAC;"}
package/dist/harmony6.cjs CHANGED
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const louis = require("@lokalise/louis");
5
- const styles_module = require("./harmony49.cjs");
6
- const DropdownContent = require("./harmony62.cjs");
7
- const NavigationTabsItem = require("./harmony63.cjs");
8
- const helpers = require("./harmony64.cjs");
5
+ const styles_module = require("./harmony61.cjs");
6
+ const DropdownContent = require("./harmony74.cjs");
7
+ const NavigationTabsItem = require("./harmony75.cjs");
8
+ const helpers = require("./harmony76.cjs");
9
9
  const NavigationTabs = ({ navigation, activeItem }) => /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Project", children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: styles_module.default.navigationTabList, "aria-orientation": "horizontal", children: navigation.filter(helpers.isNavigationItemVisible).map((item) => {
10
10
  var _a, _b, _c;
11
11
  if (item.dropdown) {
package/dist/harmony6.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { Menu, MenuList } from "@lokalise/louis";
3
- import classes from "./harmony49.mjs";
4
- import { DropdownContent } from "./harmony62.mjs";
5
- import { NavigationTabsItem } from "./harmony63.mjs";
6
- import { isNavigationItemVisible } from "./harmony64.mjs";
3
+ import classes from "./harmony61.mjs";
4
+ import { DropdownContent } from "./harmony74.mjs";
5
+ import { NavigationTabsItem } from "./harmony75.mjs";
6
+ import { isNavigationItemVisible } from "./harmony76.mjs";
7
7
  const NavigationTabs = ({ navigation, activeItem }) => /* @__PURE__ */ jsx("nav", { "aria-label": "Project", children: /* @__PURE__ */ jsx("ul", { className: classes.navigationTabList, "aria-orientation": "horizontal", children: navigation.filter(isNavigationItemVisible).map((item) => {
8
8
  var _a, _b, _c;
9
9
  if (item.dropdown) {
@@ -1,62 +1,18 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const floatingUi_core = require("./harmony85.cjs");
5
- const louis = require("@lokalise/louis");
6
- const useEffectOnce = require("./harmony11.cjs");
7
- const clsx = require("./harmony48.cjs");
8
- const React = require("react");
9
- const Tasks_module = require("./harmony86.cjs");
10
- const TasksContext = require("./harmony87.cjs");
11
- const TasksPopover = require("./harmony88.cjs");
12
- const TasksProvider = require("./harmony89.cjs");
13
- const taskEvents = require("./harmony90.cjs");
14
- const Tasks = TasksProvider.withTasksContext(() => {
15
- const [open, setOpen] = React.useState(false);
16
- const { tasksCount } = TasksContext.useTasks();
17
- useEffectOnce.useEffectOnce(() => {
18
- const showDialog = () => {
19
- setOpen(true);
20
- };
21
- document.addEventListener(taskEvents.TaskEvents.ShowDialog, showDialog);
22
- return () => {
23
- document.removeEventListener(taskEvents.TaskEvents.ShowDialog, showDialog);
24
- };
25
- });
26
- return /* @__PURE__ */ jsxRuntime.jsx(louis.Tooltip, { tooltip: "Tasks", placement: "right", children: /* @__PURE__ */ jsxRuntime.jsx(
27
- louis.Popover,
28
- {
29
- content: /* @__PURE__ */ jsxRuntime.jsx(TasksPopover.TasksPopover, {}),
30
- placement: "right",
31
- open,
32
- onOpenChange: setOpen,
33
- middlewares: [
34
- floatingUi_core.shift({
35
- // Adding some spacing to the top and bottom so the popover
36
- // doesn't extend to the edges of the screen.
37
- padding: {
38
- top: 32,
39
- bottom: 32
40
- }
41
- })
42
- ],
43
- children: (visible) => /* @__PURE__ */ jsxRuntime.jsxs(
44
- louis.Button,
45
- {
46
- type: "button",
47
- "data-testid": "sidebar-tasks-widget-button",
48
- "aria-label": "Tasks",
49
- className: clsx.clsx(Tasks_module.default.navItem, {
50
- [Tasks_module.default.activeNavItem]: visible
51
- }),
52
- children: [
53
- /* @__PURE__ */ jsxRuntime.jsx(louis.JobIcon, { size: "25px" }),
54
- tasksCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Tasks_module.default.badge, "aria-label": `${tasksCount} items requiring attention`, children: tasksCount > 9 ? "9+" : tasksCount })
55
- ]
56
- }
57
- )
58
- }
59
- ) });
60
- });
61
- exports.Tasks = Tasks;
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ function r(e) {
4
+ var t, f, n = "";
5
+ if ("string" == typeof e || "number" == typeof e) n += e;
6
+ else if ("object" == typeof e) if (Array.isArray(e)) {
7
+ var o = e.length;
8
+ for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
9
+ } else for (f in e) e[f] && (n && (n += " "), n += f);
10
+ return n;
11
+ }
12
+ function clsx() {
13
+ for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
14
+ return n;
15
+ }
16
+ exports.clsx = clsx;
17
+ exports.default = clsx;
62
18
  //# sourceMappingURL=harmony60.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony60.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/Tasks.tsx"],"sourcesContent":["import { shift } from '@floating-ui/core'\nimport { Button, JobIcon, Popover, Tooltip } from '@lokalise/louis'\nimport { useEffectOnce } from '@utils'\nimport clsx from 'clsx'\nimport { useState } from 'react'\nimport styles from './Tasks.module.css'\nimport { useTasks } from './TasksContext'\nimport { TasksPopover } from './TasksPopover/TasksPopover'\nimport { withTasksContext } from './TasksProvider'\nimport { TaskEvents } from './utils/taskEvents'\n\nexport const Tasks = withTasksContext(() => {\n\tconst [open, setOpen] = useState(false)\n\n\tconst { tasksCount } = useTasks()\n\n\tuseEffectOnce(() => {\n\t\tconst showDialog = () => {\n\t\t\tsetOpen(true)\n\t\t}\n\n\t\tdocument.addEventListener(TaskEvents.ShowDialog, showDialog)\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener(TaskEvents.ShowDialog, showDialog)\n\t\t}\n\t})\n\n\treturn (\n\t\t<Tooltip tooltip=\"Tasks\" placement=\"right\">\n\t\t\t<Popover\n\t\t\t\tcontent={<TasksPopover />}\n\t\t\t\tplacement=\"right\"\n\t\t\t\topen={open}\n\t\t\t\tonOpenChange={setOpen}\n\t\t\t\tmiddlewares={[\n\t\t\t\t\tshift({\n\t\t\t\t\t\t// Adding some spacing to the top and bottom so the popover\n\t\t\t\t\t\t// doesn't extend to the edges of the screen.\n\t\t\t\t\t\tpadding: {\n\t\t\t\t\t\t\ttop: 32,\n\t\t\t\t\t\t\tbottom: 32,\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{(visible) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tdata-testid=\"sidebar-tasks-widget-button\"\n\t\t\t\t\t\taria-label=\"Tasks\"\n\t\t\t\t\t\tclassName={clsx(styles.navItem, {\n\t\t\t\t\t\t\t[styles.activeNavItem]: visible,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<JobIcon size=\"25px\" />\n\t\t\t\t\t\t{tasksCount > 0 && (\n\t\t\t\t\t\t\t<div className={styles.badge} aria-label={`${tasksCount} items requiring attention`}>\n\t\t\t\t\t\t\t\t{tasksCount > 9 ? '9+' : tasksCount}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Button>\n\t\t\t\t)}\n\t\t\t</Popover>\n\t\t</Tooltip>\n\t)\n})\n"],"names":["withTasksContext","useState","useTasks","useEffectOnce","TaskEvents","jsx","Tooltip","Popover","TasksPopover","shift","jsxs","Button","clsx","styles","JobIcon"],"mappings":";;;;;;;;;;;;;AAWa,MAAA,QAAQA,+BAAiB,MAAM;AAC3C,QAAM,CAAC,MAAM,OAAO,IAAIC,MAAAA,SAAS,KAAK;AAEhC,QAAA,EAAE,WAAW,IAAIC,sBAAS;AAEhCC,gBAAAA,cAAc,MAAM;AACnB,UAAM,aAAa,MAAM;AACxB,cAAQ,IAAI;AAAA,IACb;AAES,aAAA,iBAAiBC,sBAAW,YAAY,UAAU;AAE3D,WAAO,MAAM;AACH,eAAA,oBAAoBA,sBAAW,YAAY,UAAU;AAAA,IAC/D;AAAA,EAAA,CACA;AAED,SACEC,2BAAA,IAAAC,MAAA,SAAA,EAAQ,SAAQ,SAAQ,WAAU,SAClC,UAAAD,2BAAA;AAAA,IAACE,MAAA;AAAA,IAAA;AAAA,MACA,wCAAUC,aAAa,cAAA,EAAA;AAAA,MACvB,WAAU;AAAA,MACV;AAAA,MACA,cAAc;AAAA,MACd,aAAa;AAAA,QACZC,sBAAM;AAAA;AAAA;AAAA,UAGL,SAAS;AAAA,YACR,KAAK;AAAA,YACL,QAAQ;AAAA,UAAA;AAAA,QAET,CAAA;AAAA,MACF;AAAA,MAEC,WAAC,YACDC,2BAAA;AAAA,QAACC,MAAA;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL,eAAY;AAAA,UACZ,cAAW;AAAA,UACX,WAAWC,KAAAA,KAAKC,aAAA,QAAO,SAAS;AAAA,YAC/B,CAACA,aAAAA,QAAO,aAAa,GAAG;AAAA,UAAA,CACxB;AAAA,UAED,UAAA;AAAA,YAACR,2BAAAA,IAAAS,MAAA,SAAA,EAAQ,MAAK,OAAO,CAAA;AAAA,YACpB,aAAa,KACZT,+BAAA,OAAA,EAAI,WAAWQ,aAAO,QAAA,OAAO,cAAY,GAAG,UAAU,8BACrD,UAAa,aAAA,IAAI,OAAO,WAC1B,CAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAEF;AAAA,EAAA,GAGH;AAEF,CAAC;;"}
1
+ {"version":3,"file":"harmony60.cjs","sources":["../node_modules/clsx/dist/clsx.mjs"],"sourcesContent":["function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;"],"names":[],"mappings":";;AAAA,SAAS,EAAE,GAAE;AAAC,MAAI,GAAE,GAAE,IAAE;AAAG,MAAG,YAAU,OAAO,KAAG,YAAU,OAAO,EAAE,MAAG;AAAA,WAAU,YAAU,OAAO,EAAE,KAAG,MAAM,QAAQ,CAAC,GAAE;AAAC,QAAI,IAAE,EAAE;AAAO,SAAI,IAAE,GAAE,IAAE,GAAE,IAAI,GAAE,CAAC,MAAI,IAAE,EAAE,EAAE,CAAC,CAAC,OAAK,MAAI,KAAG,MAAK,KAAG;AAAA,EAAE,MAAM,MAAI,KAAK,EAAE,GAAE,CAAC,MAAI,MAAI,KAAG,MAAK,KAAG;AAAG,SAAO;AAAC;AAAQ,SAAS,OAAM;AAAC,WAAQ,GAAE,GAAE,IAAE,GAAE,IAAE,IAAG,IAAE,UAAU,QAAO,IAAE,GAAE,IAAI,EAAC,IAAE,UAAU,CAAC,OAAK,IAAE,EAAE,CAAC,OAAK,MAAI,KAAG,MAAK,KAAG;AAAG,SAAO;AAAC;;;","x_google_ignoreList":[0]}
@@ -1,62 +1,18 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { shift } from "./harmony85.mjs";
3
- import { Tooltip, Popover, Button, JobIcon } from "@lokalise/louis";
4
- import { useEffectOnce } from "./harmony11.mjs";
5
- import { clsx } from "./harmony48.mjs";
6
- import { useState } from "react";
7
- import styles from "./harmony86.mjs";
8
- import { useTasks } from "./harmony87.mjs";
9
- import { TasksPopover } from "./harmony88.mjs";
10
- import { withTasksContext } from "./harmony89.mjs";
11
- import { TaskEvents } from "./harmony90.mjs";
12
- const Tasks = withTasksContext(() => {
13
- const [open, setOpen] = useState(false);
14
- const { tasksCount } = useTasks();
15
- useEffectOnce(() => {
16
- const showDialog = () => {
17
- setOpen(true);
18
- };
19
- document.addEventListener(TaskEvents.ShowDialog, showDialog);
20
- return () => {
21
- document.removeEventListener(TaskEvents.ShowDialog, showDialog);
22
- };
23
- });
24
- return /* @__PURE__ */ jsx(Tooltip, { tooltip: "Tasks", placement: "right", children: /* @__PURE__ */ jsx(
25
- Popover,
26
- {
27
- content: /* @__PURE__ */ jsx(TasksPopover, {}),
28
- placement: "right",
29
- open,
30
- onOpenChange: setOpen,
31
- middlewares: [
32
- shift({
33
- // Adding some spacing to the top and bottom so the popover
34
- // doesn't extend to the edges of the screen.
35
- padding: {
36
- top: 32,
37
- bottom: 32
38
- }
39
- })
40
- ],
41
- children: (visible) => /* @__PURE__ */ jsxs(
42
- Button,
43
- {
44
- type: "button",
45
- "data-testid": "sidebar-tasks-widget-button",
46
- "aria-label": "Tasks",
47
- className: clsx(styles.navItem, {
48
- [styles.activeNavItem]: visible
49
- }),
50
- children: [
51
- /* @__PURE__ */ jsx(JobIcon, { size: "25px" }),
52
- tasksCount > 0 && /* @__PURE__ */ jsx("div", { className: styles.badge, "aria-label": `${tasksCount} items requiring attention`, children: tasksCount > 9 ? "9+" : tasksCount })
53
- ]
54
- }
55
- )
56
- }
57
- ) });
58
- });
1
+ function r(e) {
2
+ var t, f, n = "";
3
+ if ("string" == typeof e || "number" == typeof e) n += e;
4
+ else if ("object" == typeof e) if (Array.isArray(e)) {
5
+ var o = e.length;
6
+ for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
7
+ } else for (f in e) e[f] && (n && (n += " "), n += f);
8
+ return n;
9
+ }
10
+ function clsx() {
11
+ for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
12
+ return n;
13
+ }
59
14
  export {
60
- Tasks
15
+ clsx,
16
+ clsx as default
61
17
  };
62
18
  //# sourceMappingURL=harmony60.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony60.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/Tasks.tsx"],"sourcesContent":["import { shift } from '@floating-ui/core'\nimport { Button, JobIcon, Popover, Tooltip } from '@lokalise/louis'\nimport { useEffectOnce } from '@utils'\nimport clsx from 'clsx'\nimport { useState } from 'react'\nimport styles from './Tasks.module.css'\nimport { useTasks } from './TasksContext'\nimport { TasksPopover } from './TasksPopover/TasksPopover'\nimport { withTasksContext } from './TasksProvider'\nimport { TaskEvents } from './utils/taskEvents'\n\nexport const Tasks = withTasksContext(() => {\n\tconst [open, setOpen] = useState(false)\n\n\tconst { tasksCount } = useTasks()\n\n\tuseEffectOnce(() => {\n\t\tconst showDialog = () => {\n\t\t\tsetOpen(true)\n\t\t}\n\n\t\tdocument.addEventListener(TaskEvents.ShowDialog, showDialog)\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener(TaskEvents.ShowDialog, showDialog)\n\t\t}\n\t})\n\n\treturn (\n\t\t<Tooltip tooltip=\"Tasks\" placement=\"right\">\n\t\t\t<Popover\n\t\t\t\tcontent={<TasksPopover />}\n\t\t\t\tplacement=\"right\"\n\t\t\t\topen={open}\n\t\t\t\tonOpenChange={setOpen}\n\t\t\t\tmiddlewares={[\n\t\t\t\t\tshift({\n\t\t\t\t\t\t// Adding some spacing to the top and bottom so the popover\n\t\t\t\t\t\t// doesn't extend to the edges of the screen.\n\t\t\t\t\t\tpadding: {\n\t\t\t\t\t\t\ttop: 32,\n\t\t\t\t\t\t\tbottom: 32,\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{(visible) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tdata-testid=\"sidebar-tasks-widget-button\"\n\t\t\t\t\t\taria-label=\"Tasks\"\n\t\t\t\t\t\tclassName={clsx(styles.navItem, {\n\t\t\t\t\t\t\t[styles.activeNavItem]: visible,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<JobIcon size=\"25px\" />\n\t\t\t\t\t\t{tasksCount > 0 && (\n\t\t\t\t\t\t\t<div className={styles.badge} aria-label={`${tasksCount} items requiring attention`}>\n\t\t\t\t\t\t\t\t{tasksCount > 9 ? '9+' : tasksCount}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Button>\n\t\t\t\t)}\n\t\t\t</Popover>\n\t\t</Tooltip>\n\t)\n})\n"],"names":[],"mappings":";;;;;;;;;;;AAWa,MAAA,QAAQ,iBAAiB,MAAM;AAC3C,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,KAAK;AAEhC,QAAA,EAAE,WAAW,IAAI,SAAS;AAEhC,gBAAc,MAAM;AACnB,UAAM,aAAa,MAAM;AACxB,cAAQ,IAAI;AAAA,IACb;AAES,aAAA,iBAAiB,WAAW,YAAY,UAAU;AAE3D,WAAO,MAAM;AACH,eAAA,oBAAoB,WAAW,YAAY,UAAU;AAAA,IAC/D;AAAA,EAAA,CACA;AAED,SACE,oBAAA,SAAA,EAAQ,SAAQ,SAAQ,WAAU,SAClC,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,6BAAU,cAAa,EAAA;AAAA,MACvB,WAAU;AAAA,MACV;AAAA,MACA,cAAc;AAAA,MACd,aAAa;AAAA,QACZ,MAAM;AAAA;AAAA;AAAA,UAGL,SAAS;AAAA,YACR,KAAK;AAAA,YACL,QAAQ;AAAA,UAAA;AAAA,QAET,CAAA;AAAA,MACF;AAAA,MAEC,WAAC,YACD;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL,eAAY;AAAA,UACZ,cAAW;AAAA,UACX,WAAW,KAAK,OAAO,SAAS;AAAA,YAC/B,CAAC,OAAO,aAAa,GAAG;AAAA,UAAA,CACxB;AAAA,UAED,UAAA;AAAA,YAAC,oBAAA,SAAA,EAAQ,MAAK,OAAO,CAAA;AAAA,YACpB,aAAa,KACZ,oBAAA,OAAA,EAAI,WAAW,OAAO,OAAO,cAAY,GAAG,UAAU,8BACrD,UAAa,aAAA,IAAI,OAAO,WAC1B,CAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAEF;AAAA,EAAA,GAGH;AAEF,CAAC;"}
1
+ {"version":3,"file":"harmony60.mjs","sources":["../node_modules/clsx/dist/clsx.mjs"],"sourcesContent":["function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;"],"names":[],"mappings":"AAAA,SAAS,EAAE,GAAE;AAAC,MAAI,GAAE,GAAE,IAAE;AAAG,MAAG,YAAU,OAAO,KAAG,YAAU,OAAO,EAAE,MAAG;AAAA,WAAU,YAAU,OAAO,EAAE,KAAG,MAAM,QAAQ,CAAC,GAAE;AAAC,QAAI,IAAE,EAAE;AAAO,SAAI,IAAE,GAAE,IAAE,GAAE,IAAI,GAAE,CAAC,MAAI,IAAE,EAAE,EAAE,CAAC,CAAC,OAAK,MAAI,KAAG,MAAK,KAAG;AAAA,EAAE,MAAM,MAAI,KAAK,EAAE,GAAE,CAAC,MAAI,MAAI,KAAG,MAAK,KAAG;AAAG,SAAO;AAAC;AAAQ,SAAS,OAAM;AAAC,WAAQ,GAAE,GAAE,IAAE,GAAE,IAAE,IAAG,IAAE,UAAU,QAAO,IAAE,GAAE,IAAI,EAAC,IAAE,UAAU,CAAC,OAAK,IAAE,EAAE,CAAC,OAAK,MAAI,KAAG,MAAK,KAAG;AAAG,SAAO;AAAC;","x_google_ignoreList":[0]}
@@ -1,12 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const breadcrumbsItem = "_breadcrumbsItem_1hm6a_1";
4
- const breadcrumbs = "_breadcrumbs_1hm6a_1";
3
+ const headerContainer = "_headerContainer_1cubo_1";
4
+ const navigationTabList = "_navigationTabList_1cubo_8";
5
+ const navigationTab = "_navigationTab_1cubo_8";
6
+ const headerContent = "_headerContent_1cubo_34";
7
+ const staticEnabled = "_staticEnabled_1cubo_50";
5
8
  const classes = {
6
- breadcrumbsItem,
7
- breadcrumbs
9
+ headerContainer,
10
+ navigationTabList,
11
+ navigationTab,
12
+ headerContent,
13
+ staticEnabled
8
14
  };
9
- exports.breadcrumbs = breadcrumbs;
10
- exports.breadcrumbsItem = breadcrumbsItem;
11
15
  exports.default = classes;
16
+ exports.headerContainer = headerContainer;
17
+ exports.headerContent = headerContent;
18
+ exports.navigationTab = navigationTab;
19
+ exports.navigationTabList = navigationTabList;
20
+ exports.staticEnabled = staticEnabled;
12
21
  //# sourceMappingURL=harmony61.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony61.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony61.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -1,12 +1,21 @@
1
- const breadcrumbsItem = "_breadcrumbsItem_1hm6a_1";
2
- const breadcrumbs = "_breadcrumbs_1hm6a_1";
1
+ const headerContainer = "_headerContainer_1cubo_1";
2
+ const navigationTabList = "_navigationTabList_1cubo_8";
3
+ const navigationTab = "_navigationTab_1cubo_8";
4
+ const headerContent = "_headerContent_1cubo_34";
5
+ const staticEnabled = "_staticEnabled_1cubo_50";
3
6
  const classes = {
4
- breadcrumbsItem,
5
- breadcrumbs
7
+ headerContainer,
8
+ navigationTabList,
9
+ navigationTab,
10
+ headerContent,
11
+ staticEnabled
6
12
  };
7
13
  export {
8
- breadcrumbs,
9
- breadcrumbsItem,
10
- classes as default
14
+ classes as default,
15
+ headerContainer,
16
+ headerContent,
17
+ navigationTab,
18
+ navigationTabList,
19
+ staticEnabled
11
20
  };
12
21
  //# sourceMappingURL=harmony61.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony61.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"harmony61.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1,11 +1,64 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const louis = require("@lokalise/louis");
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
5
3
  const React = require("react");
6
- const DropdownContent = ({ items }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
7
- !!index && item.some((value) => value.visible) && /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {}),
8
- item.filter(({ visible }) => visible).map(({ link, label, onClick }) => /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: link || "#", "aria-label": label, onClick, children: label }, label))
9
- ] }, item[0].label)) });
10
- exports.DropdownContent = DropdownContent;
4
+ const utils = require("./harmony90.cjs");
5
+ function useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1e3, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize } = {}) {
6
+ const skipResize = React.useRef(skipOnMount);
7
+ const onResizeRef = utils.useCallbackRef(onResize);
8
+ const [size, setSize] = React.useState({
9
+ width: void 0,
10
+ height: void 0
11
+ });
12
+ const { refProxy, refElement } = utils.useRefProxy(targetRef);
13
+ const { box } = observerOptions || {};
14
+ const resizeCallback = React.useCallback((entries) => {
15
+ if (!handleWidth && !handleHeight)
16
+ return;
17
+ if (skipResize.current) {
18
+ skipResize.current = false;
19
+ return;
20
+ }
21
+ const shouldSetSize = (prevSize, nextSize) => handleWidth && prevSize.width !== nextSize.width || handleHeight && prevSize.height !== nextSize.height;
22
+ entries.forEach((entry) => {
23
+ const dimensions = utils.getDimensions(entry, box);
24
+ setSize((prevSize) => {
25
+ if (!shouldSetSize(prevSize, dimensions))
26
+ return prevSize;
27
+ onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({
28
+ width: dimensions.width,
29
+ height: dimensions.height,
30
+ entry
31
+ });
32
+ return dimensions;
33
+ });
34
+ });
35
+ }, [handleWidth, handleHeight, skipResize, box]);
36
+ const resizeHandler = React.useCallback(utils.patchResizeCallback(resizeCallback, refreshMode, refreshRate, refreshOptions), [
37
+ resizeCallback,
38
+ refreshMode,
39
+ refreshRate,
40
+ refreshOptions
41
+ ]);
42
+ React.useEffect(() => {
43
+ let resizeObserver;
44
+ if (refElement) {
45
+ resizeObserver = new window.ResizeObserver(resizeHandler);
46
+ resizeObserver.observe(refElement, observerOptions);
47
+ } else if (size.width || size.height) {
48
+ onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({
49
+ width: null,
50
+ height: null,
51
+ entry: null
52
+ });
53
+ setSize({ width: void 0, height: void 0 });
54
+ }
55
+ return () => {
56
+ var _a, _b, _c;
57
+ (_a = resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect) === null || _a === void 0 ? void 0 : _a.call(resizeObserver);
58
+ (_c = (_b = resizeHandler).cancel) === null || _c === void 0 ? void 0 : _c.call(_b);
59
+ };
60
+ }, [resizeHandler, refElement]);
61
+ return Object.assign({ ref: refProxy }, size);
62
+ }
63
+ exports.default = useResizeDetector;
11
64
  //# sourceMappingURL=harmony62.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony62.cjs","sources":["../src/components/NavigationPanel/components/DropdownContent/DropdownContent.tsx"],"sourcesContent":["import { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { Fragment } from 'react'\nimport type { DropdownItem } from '../../types/navigation'\n\nexport const DropdownContent = ({ items }: { items: DropdownItem[][] }) => (\n\t<>\n\t\t{items.map((item, index) => (\n\t\t\t<Fragment key={item[0].label}>\n\t\t\t\t{!!index && item.some((value) => value.visible) && <MenuDivider />}\n\t\t\t\t{item\n\t\t\t\t\t.filter(({ visible }) => visible)\n\t\t\t\t\t.map(({ link, label, onClick }) => (\n\t\t\t\t\t\t<MenuItem key={label} href={link || '#'} aria-label={label} onClick={onClick}>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t))}\n\t\t\t</Fragment>\n\t\t))}\n\t</>\n)\n"],"names":["jsx","Fragment","jsxs","MenuDivider","MenuItem"],"mappings":";;;;;AAIO,MAAM,kBAAkB,CAAC,EAAE,MAAA,MACjCA,2BAAAA,IAAAC,WAAAA,UAAA,EACE,UAAM,MAAA,IAAI,CAAC,MAAM,UACjBC,2BAAAA,KAACD,MAAAA,UAAA,EACC,UAAA;AAAA,EAAC,CAAA,CAAC,SAAS,KAAK,KAAK,CAAC,UAAU,MAAM,OAAO,KAAKD,+BAACG,MAAAA,aAAY,CAAA,CAAA;AAAA,EAC/D,KACC,OAAO,CAAC,EAAE,cAAc,OAAO,EAC/B,IAAI,CAAC,EAAE,MAAM,OAAO,QAAQ,MAC3BH,+BAAAI,MAAAA,UAAA,EAAqB,MAAM,QAAQ,KAAK,cAAY,OAAO,SAC1D,UADa,MAAA,GAAA,KAEf,CACA;AAAA,EAAA,GARY,KAAK,CAAC,EAAE,KASvB,CACA,EACF,CAAA;;"}
1
+ {"version":3,"file":"harmony62.cjs","sources":["../node_modules/react-resize-detector/build/useResizeDetector.js"],"sourcesContent":["import { useRef, useState, useCallback, useEffect } from 'react';\nimport { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from './utils.js';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1000, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize, } = {}) {\n // If `skipOnMount` is enabled, skip the first resize event\n const skipResize = useRef(skipOnMount);\n // Wrap the `onResize` callback with a ref to avoid re-renders\n const onResizeRef = useCallbackRef(onResize);\n const [size, setSize] = useState({\n width: undefined,\n height: undefined,\n });\n // Create a proxy ref to handle conditional rendering and dynamic ref changes of the target element\n const { refProxy, refElement } = useRefProxy(targetRef);\n const { box } = observerOptions || {};\n const resizeCallback = useCallback((entries) => {\n if (!handleWidth && !handleHeight)\n return;\n if (skipResize.current) {\n skipResize.current = false;\n return;\n }\n // Only update the size if one of the observed dimensions has changed\n const shouldSetSize = (prevSize, nextSize) => (handleWidth && prevSize.width !== nextSize.width) || (handleHeight && prevSize.height !== nextSize.height);\n entries.forEach((entry) => {\n const dimensions = getDimensions(entry, box);\n setSize((prevSize) => {\n if (!shouldSetSize(prevSize, dimensions))\n return prevSize;\n onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({\n width: dimensions.width,\n height: dimensions.height,\n entry,\n });\n return dimensions;\n });\n });\n }, [handleWidth, handleHeight, skipResize, box]);\n // Throttle/Debounce the resize event if refreshMode is configured\n const resizeHandler = useCallback(patchResizeCallback(resizeCallback, refreshMode, refreshRate, refreshOptions), [\n resizeCallback,\n refreshMode,\n refreshRate,\n refreshOptions,\n ]);\n // Attach ResizeObserver to the element\n useEffect(() => {\n let resizeObserver;\n if (refElement) {\n resizeObserver = new window.ResizeObserver(resizeHandler);\n resizeObserver.observe(refElement, observerOptions);\n }\n // If refElement is not available, reset the size\n else if (size.width || size.height) {\n onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({\n width: null,\n height: null,\n entry: null,\n });\n setSize({ width: undefined, height: undefined });\n }\n // Disconnect the ResizeObserver when the component is unmounted\n return () => {\n var _a, _b, _c;\n (_a = resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect) === null || _a === void 0 ? void 0 : _a.call(resizeObserver);\n (_c = (_b = resizeHandler).cancel) === null || _c === void 0 ? void 0 : _c.call(_b);\n };\n }, [resizeHandler, refElement]);\n return Object.assign({ ref: refProxy }, size);\n}\n\nexport { useResizeDetector as default };\n//# sourceMappingURL=useResizeDetector.js.map\n"],"names":["useRef","useCallbackRef","useState","useRefProxy","useCallback","getDimensions","patchResizeCallback","useEffect"],"mappings":";;;;AAIA,SAAS,kBAAkB,EAAE,cAAc,OAAO,aAAa,cAAc,KAAM,gBAAgB,cAAc,MAAM,eAAe,MAAM,WAAW,iBAAiB,SAAW,IAAG,IAAI;AAEtL,QAAM,aAAaA,MAAM,OAAC,WAAW;AAErC,QAAM,cAAcC,MAAc,eAAC,QAAQ;AAC3C,QAAM,CAAC,MAAM,OAAO,IAAIC,eAAS;AAAA,IAC7B,OAAO;AAAA,IACP,QAAQ;AAAA,EAChB,CAAK;AAED,QAAM,EAAE,UAAU,eAAeC,MAAAA,YAAY,SAAS;AACtD,QAAM,EAAE,QAAQ,mBAAmB,CAAE;AACrC,QAAM,iBAAiBC,kBAAY,CAAC,YAAY;AAC5C,QAAI,CAAC,eAAe,CAAC;AACjB;AACJ,QAAI,WAAW,SAAS;AACpB,iBAAW,UAAU;AACrB;AAAA,IACZ;AAEQ,UAAM,gBAAgB,CAAC,UAAU,aAAc,eAAe,SAAS,UAAU,SAAS,SAAW,gBAAgB,SAAS,WAAW,SAAS;AAClJ,YAAQ,QAAQ,CAAC,UAAU;AACvB,YAAM,aAAaC,MAAAA,cAAc,OAAO,GAAG;AAC3C,cAAQ,CAAC,aAAa;AAClB,YAAI,CAAC,cAAc,UAAU,UAAU;AACnC,iBAAO;AACX,wBAAgB,QAAQ,gBAAgB,SAAS,SAAS,YAAY;AAAA,UAClE,OAAO,WAAW;AAAA,UAClB,QAAQ,WAAW;AAAA,UACnB;AAAA,QACpB,CAAiB;AACD,eAAO;AAAA,MACvB,CAAa;AAAA,IACb,CAAS;AAAA,EACJ,GAAE,CAAC,aAAa,cAAc,YAAY,GAAG,CAAC;AAE/C,QAAM,gBAAgBD,MAAAA,YAAYE,MAAmB,oBAAC,gBAAgB,aAAa,aAAa,cAAc,GAAG;AAAA,IAC7G;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACR,CAAK;AAEDC,QAAAA,UAAU,MAAM;AACZ,QAAI;AACJ,QAAI,YAAY;AACZ,uBAAiB,IAAI,OAAO,eAAe,aAAa;AACxD,qBAAe,QAAQ,YAAY,eAAe;AAAA,IAC9D,WAEiB,KAAK,SAAS,KAAK,QAAQ;AAChC,sBAAgB,QAAQ,gBAAgB,SAAS,SAAS,YAAY;AAAA,QAClE,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,MACvB,CAAa;AACD,cAAQ,EAAE,OAAO,QAAW,QAAQ,OAAS,CAAE;AAAA,IAC3D;AAEQ,WAAO,MAAM;AACT,UAAI,IAAI,IAAI;AACZ,OAAC,KAAK,mBAAmB,QAAQ,mBAAmB,SAAS,SAAS,eAAe,gBAAgB,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,cAAc;AAC5J,OAAC,MAAM,KAAK,eAAe,YAAY,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,EAAE;AAAA,IACrF;AAAA,EACT,GAAO,CAAC,eAAe,UAAU,CAAC;AAC9B,SAAO,OAAO,OAAO,EAAE,KAAK,SAAQ,GAAI,IAAI;AAChD;;","x_google_ignoreList":[0]}
@@ -1,11 +1,64 @@
1
- import { jsx, Fragment, jsxs } from "react/jsx-runtime";
2
- import { MenuDivider, MenuItem } from "@lokalise/louis";
3
- import { Fragment as Fragment$1 } from "react";
4
- const DropdownContent = ({ items }) => /* @__PURE__ */ jsx(Fragment, { children: items.map((item, index) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
5
- !!index && item.some((value) => value.visible) && /* @__PURE__ */ jsx(MenuDivider, {}),
6
- item.filter(({ visible }) => visible).map(({ link, label, onClick }) => /* @__PURE__ */ jsx(MenuItem, { href: link || "#", "aria-label": label, onClick, children: label }, label))
7
- ] }, item[0].label)) });
1
+ import { useRef, useState, useCallback, useEffect } from "react";
2
+ import { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from "./harmony90.mjs";
3
+ function useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1e3, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize } = {}) {
4
+ const skipResize = useRef(skipOnMount);
5
+ const onResizeRef = useCallbackRef(onResize);
6
+ const [size, setSize] = useState({
7
+ width: void 0,
8
+ height: void 0
9
+ });
10
+ const { refProxy, refElement } = useRefProxy(targetRef);
11
+ const { box } = observerOptions || {};
12
+ const resizeCallback = useCallback((entries) => {
13
+ if (!handleWidth && !handleHeight)
14
+ return;
15
+ if (skipResize.current) {
16
+ skipResize.current = false;
17
+ return;
18
+ }
19
+ const shouldSetSize = (prevSize, nextSize) => handleWidth && prevSize.width !== nextSize.width || handleHeight && prevSize.height !== nextSize.height;
20
+ entries.forEach((entry) => {
21
+ const dimensions = getDimensions(entry, box);
22
+ setSize((prevSize) => {
23
+ if (!shouldSetSize(prevSize, dimensions))
24
+ return prevSize;
25
+ onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({
26
+ width: dimensions.width,
27
+ height: dimensions.height,
28
+ entry
29
+ });
30
+ return dimensions;
31
+ });
32
+ });
33
+ }, [handleWidth, handleHeight, skipResize, box]);
34
+ const resizeHandler = useCallback(patchResizeCallback(resizeCallback, refreshMode, refreshRate, refreshOptions), [
35
+ resizeCallback,
36
+ refreshMode,
37
+ refreshRate,
38
+ refreshOptions
39
+ ]);
40
+ useEffect(() => {
41
+ let resizeObserver;
42
+ if (refElement) {
43
+ resizeObserver = new window.ResizeObserver(resizeHandler);
44
+ resizeObserver.observe(refElement, observerOptions);
45
+ } else if (size.width || size.height) {
46
+ onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({
47
+ width: null,
48
+ height: null,
49
+ entry: null
50
+ });
51
+ setSize({ width: void 0, height: void 0 });
52
+ }
53
+ return () => {
54
+ var _a, _b, _c;
55
+ (_a = resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect) === null || _a === void 0 ? void 0 : _a.call(resizeObserver);
56
+ (_c = (_b = resizeHandler).cancel) === null || _c === void 0 ? void 0 : _c.call(_b);
57
+ };
58
+ }, [resizeHandler, refElement]);
59
+ return Object.assign({ ref: refProxy }, size);
60
+ }
8
61
  export {
9
- DropdownContent
62
+ useResizeDetector as default
10
63
  };
11
64
  //# sourceMappingURL=harmony62.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony62.mjs","sources":["../src/components/NavigationPanel/components/DropdownContent/DropdownContent.tsx"],"sourcesContent":["import { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { Fragment } from 'react'\nimport type { DropdownItem } from '../../types/navigation'\n\nexport const DropdownContent = ({ items }: { items: DropdownItem[][] }) => (\n\t<>\n\t\t{items.map((item, index) => (\n\t\t\t<Fragment key={item[0].label}>\n\t\t\t\t{!!index && item.some((value) => value.visible) && <MenuDivider />}\n\t\t\t\t{item\n\t\t\t\t\t.filter(({ visible }) => visible)\n\t\t\t\t\t.map(({ link, label, onClick }) => (\n\t\t\t\t\t\t<MenuItem key={label} href={link || '#'} aria-label={label} onClick={onClick}>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t))}\n\t\t\t</Fragment>\n\t\t))}\n\t</>\n)\n"],"names":["Fragment"],"mappings":";;;AAIO,MAAM,kBAAkB,CAAC,EAAE,MAAA,MACjC,oBAAA,UAAA,EACE,UAAM,MAAA,IAAI,CAAC,MAAM,UACjB,qBAACA,YAAA,EACC,UAAA;AAAA,EAAC,CAAA,CAAC,SAAS,KAAK,KAAK,CAAC,UAAU,MAAM,OAAO,KAAK,oBAAC,aAAY,CAAA,CAAA;AAAA,EAC/D,KACC,OAAO,CAAC,EAAE,cAAc,OAAO,EAC/B,IAAI,CAAC,EAAE,MAAM,OAAO,QAAQ,MAC3B,oBAAA,UAAA,EAAqB,MAAM,QAAQ,KAAK,cAAY,OAAO,SAC1D,UADa,MAAA,GAAA,KAEf,CACA;AAAA,EAAA,GARY,KAAK,CAAC,EAAE,KASvB,CACA,EACF,CAAA;"}
1
+ {"version":3,"file":"harmony62.mjs","sources":["../node_modules/react-resize-detector/build/useResizeDetector.js"],"sourcesContent":["import { useRef, useState, useCallback, useEffect } from 'react';\nimport { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from './utils.js';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1000, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize, } = {}) {\n // If `skipOnMount` is enabled, skip the first resize event\n const skipResize = useRef(skipOnMount);\n // Wrap the `onResize` callback with a ref to avoid re-renders\n const onResizeRef = useCallbackRef(onResize);\n const [size, setSize] = useState({\n width: undefined,\n height: undefined,\n });\n // Create a proxy ref to handle conditional rendering and dynamic ref changes of the target element\n const { refProxy, refElement } = useRefProxy(targetRef);\n const { box } = observerOptions || {};\n const resizeCallback = useCallback((entries) => {\n if (!handleWidth && !handleHeight)\n return;\n if (skipResize.current) {\n skipResize.current = false;\n return;\n }\n // Only update the size if one of the observed dimensions has changed\n const shouldSetSize = (prevSize, nextSize) => (handleWidth && prevSize.width !== nextSize.width) || (handleHeight && prevSize.height !== nextSize.height);\n entries.forEach((entry) => {\n const dimensions = getDimensions(entry, box);\n setSize((prevSize) => {\n if (!shouldSetSize(prevSize, dimensions))\n return prevSize;\n onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({\n width: dimensions.width,\n height: dimensions.height,\n entry,\n });\n return dimensions;\n });\n });\n }, [handleWidth, handleHeight, skipResize, box]);\n // Throttle/Debounce the resize event if refreshMode is configured\n const resizeHandler = useCallback(patchResizeCallback(resizeCallback, refreshMode, refreshRate, refreshOptions), [\n resizeCallback,\n refreshMode,\n refreshRate,\n refreshOptions,\n ]);\n // Attach ResizeObserver to the element\n useEffect(() => {\n let resizeObserver;\n if (refElement) {\n resizeObserver = new window.ResizeObserver(resizeHandler);\n resizeObserver.observe(refElement, observerOptions);\n }\n // If refElement is not available, reset the size\n else if (size.width || size.height) {\n onResizeRef === null || onResizeRef === void 0 ? void 0 : onResizeRef({\n width: null,\n height: null,\n entry: null,\n });\n setSize({ width: undefined, height: undefined });\n }\n // Disconnect the ResizeObserver when the component is unmounted\n return () => {\n var _a, _b, _c;\n (_a = resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect) === null || _a === void 0 ? void 0 : _a.call(resizeObserver);\n (_c = (_b = resizeHandler).cancel) === null || _c === void 0 ? void 0 : _c.call(_b);\n };\n }, [resizeHandler, refElement]);\n return Object.assign({ ref: refProxy }, size);\n}\n\nexport { useResizeDetector as default };\n//# sourceMappingURL=useResizeDetector.js.map\n"],"names":[],"mappings":";;AAIA,SAAS,kBAAkB,EAAE,cAAc,OAAO,aAAa,cAAc,KAAM,gBAAgB,cAAc,MAAM,eAAe,MAAM,WAAW,iBAAiB,SAAW,IAAG,IAAI;AAEtL,QAAM,aAAa,OAAO,WAAW;AAErC,QAAM,cAAc,eAAe,QAAQ;AAC3C,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS;AAAA,IAC7B,OAAO;AAAA,IACP,QAAQ;AAAA,EAChB,CAAK;AAED,QAAM,EAAE,UAAU,eAAe,YAAY,SAAS;AACtD,QAAM,EAAE,QAAQ,mBAAmB,CAAE;AACrC,QAAM,iBAAiB,YAAY,CAAC,YAAY;AAC5C,QAAI,CAAC,eAAe,CAAC;AACjB;AACJ,QAAI,WAAW,SAAS;AACpB,iBAAW,UAAU;AACrB;AAAA,IACZ;AAEQ,UAAM,gBAAgB,CAAC,UAAU,aAAc,eAAe,SAAS,UAAU,SAAS,SAAW,gBAAgB,SAAS,WAAW,SAAS;AAClJ,YAAQ,QAAQ,CAAC,UAAU;AACvB,YAAM,aAAa,cAAc,OAAO,GAAG;AAC3C,cAAQ,CAAC,aAAa;AAClB,YAAI,CAAC,cAAc,UAAU,UAAU;AACnC,iBAAO;AACX,wBAAgB,QAAQ,gBAAgB,SAAS,SAAS,YAAY;AAAA,UAClE,OAAO,WAAW;AAAA,UAClB,QAAQ,WAAW;AAAA,UACnB;AAAA,QACpB,CAAiB;AACD,eAAO;AAAA,MACvB,CAAa;AAAA,IACb,CAAS;AAAA,EACJ,GAAE,CAAC,aAAa,cAAc,YAAY,GAAG,CAAC;AAE/C,QAAM,gBAAgB,YAAY,oBAAoB,gBAAgB,aAAa,aAAa,cAAc,GAAG;AAAA,IAC7G;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACR,CAAK;AAED,YAAU,MAAM;AACZ,QAAI;AACJ,QAAI,YAAY;AACZ,uBAAiB,IAAI,OAAO,eAAe,aAAa;AACxD,qBAAe,QAAQ,YAAY,eAAe;AAAA,IAC9D,WAEiB,KAAK,SAAS,KAAK,QAAQ;AAChC,sBAAgB,QAAQ,gBAAgB,SAAS,SAAS,YAAY;AAAA,QAClE,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,MACvB,CAAa;AACD,cAAQ,EAAE,OAAO,QAAW,QAAQ,OAAS,CAAE;AAAA,IAC3D;AAEQ,WAAO,MAAM;AACT,UAAI,IAAI,IAAI;AACZ,OAAC,KAAK,mBAAmB,QAAQ,mBAAmB,SAAS,SAAS,eAAe,gBAAgB,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,cAAc;AAC5J,OAAC,MAAM,KAAK,eAAe,YAAY,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,EAAE;AAAA,IACrF;AAAA,EACT,GAAO,CAAC,eAAe,UAAU,CAAC;AAC9B,SAAO,OAAO,OAAO,EAAE,KAAK,SAAQ,GAAI,IAAI;AAChD;","x_google_ignoreList":[0]}