@lokalise/harmony 2.1.0-exp-testingContracts.1 → 2.1.0-exp-testingContracts.3

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 (345) hide show
  1. package/dist/harmony.cjs +0 -1
  2. package/dist/harmony.cjs.map +1 -1
  3. package/dist/harmony.mjs +1 -2
  4. package/dist/harmony103.cjs +1 -1
  5. package/dist/harmony103.mjs +1 -1
  6. package/dist/harmony104.cjs +7 -7
  7. package/dist/harmony104.mjs +7 -7
  8. package/dist/harmony106.cjs +2 -2
  9. package/dist/harmony106.mjs +2 -2
  10. package/dist/harmony107.cjs +2 -165
  11. package/dist/harmony107.cjs.map +1 -1
  12. package/dist/harmony107.mjs +3 -166
  13. package/dist/harmony107.mjs.map +1 -1
  14. package/dist/harmony108.cjs +16 -42
  15. package/dist/harmony108.cjs.map +1 -1
  16. package/dist/harmony108.mjs +16 -42
  17. package/dist/harmony108.mjs.map +1 -1
  18. package/dist/harmony109.cjs +75 -13
  19. package/dist/harmony109.cjs.map +1 -1
  20. package/dist/harmony109.mjs +75 -13
  21. package/dist/harmony109.mjs.map +1 -1
  22. package/dist/harmony110.cjs +10 -10
  23. package/dist/harmony110.cjs.map +1 -1
  24. package/dist/harmony110.mjs +10 -10
  25. package/dist/harmony110.mjs.map +1 -1
  26. package/dist/harmony111.cjs +35 -13
  27. package/dist/harmony111.cjs.map +1 -1
  28. package/dist/harmony111.mjs +34 -12
  29. package/dist/harmony111.mjs.map +1 -1
  30. package/dist/harmony112.cjs +8 -10
  31. package/dist/harmony112.cjs.map +1 -1
  32. package/dist/harmony112.mjs +9 -11
  33. package/dist/harmony112.mjs.map +1 -1
  34. package/dist/harmony113.cjs +47 -21
  35. package/dist/harmony113.cjs.map +1 -1
  36. package/dist/harmony113.mjs +46 -20
  37. package/dist/harmony113.mjs.map +1 -1
  38. package/dist/harmony114.cjs +10 -4
  39. package/dist/harmony114.cjs.map +1 -1
  40. package/dist/harmony114.mjs +9 -3
  41. package/dist/harmony114.mjs.map +1 -1
  42. package/dist/harmony115.cjs +13 -17
  43. package/dist/harmony115.cjs.map +1 -1
  44. package/dist/harmony115.mjs +13 -17
  45. package/dist/harmony115.mjs.map +1 -1
  46. package/dist/harmony116.cjs +161 -71
  47. package/dist/harmony116.cjs.map +1 -1
  48. package/dist/harmony116.mjs +161 -71
  49. package/dist/harmony116.mjs.map +1 -1
  50. package/dist/harmony117.cjs +42 -10
  51. package/dist/harmony117.cjs.map +1 -1
  52. package/dist/harmony117.mjs +43 -11
  53. package/dist/harmony117.mjs.map +1 -1
  54. package/dist/harmony118.cjs +12 -34
  55. package/dist/harmony118.cjs.map +1 -1
  56. package/dist/harmony118.mjs +12 -34
  57. package/dist/harmony118.mjs.map +1 -1
  58. package/dist/harmony119.cjs +13 -10
  59. package/dist/harmony119.cjs.map +1 -1
  60. package/dist/harmony119.mjs +12 -9
  61. package/dist/harmony119.mjs.map +1 -1
  62. package/dist/harmony120.cjs +9 -45
  63. package/dist/harmony120.cjs.map +1 -1
  64. package/dist/harmony120.mjs +11 -47
  65. package/dist/harmony120.mjs.map +1 -1
  66. package/dist/harmony121.cjs +20 -8
  67. package/dist/harmony121.cjs.map +1 -1
  68. package/dist/harmony121.mjs +20 -8
  69. package/dist/harmony121.mjs.map +1 -1
  70. package/dist/harmony123.cjs +87 -7
  71. package/dist/harmony123.cjs.map +1 -1
  72. package/dist/harmony123.mjs +87 -7
  73. package/dist/harmony123.mjs.map +1 -1
  74. package/dist/harmony124.cjs +30 -17
  75. package/dist/harmony124.cjs.map +1 -1
  76. package/dist/harmony124.mjs +30 -17
  77. package/dist/harmony124.mjs.map +1 -1
  78. package/dist/harmony125.cjs +20 -8
  79. package/dist/harmony125.cjs.map +1 -1
  80. package/dist/harmony125.mjs +20 -8
  81. package/dist/harmony125.mjs.map +1 -1
  82. package/dist/harmony126.cjs +7 -8
  83. package/dist/harmony126.cjs.map +1 -1
  84. package/dist/harmony126.mjs +7 -8
  85. package/dist/harmony126.mjs.map +1 -1
  86. package/dist/harmony127.cjs +16 -14
  87. package/dist/harmony127.cjs.map +1 -1
  88. package/dist/harmony127.mjs +16 -14
  89. package/dist/harmony127.mjs.map +1 -1
  90. package/dist/harmony128.cjs +8 -20
  91. package/dist/harmony128.cjs.map +1 -1
  92. package/dist/harmony128.mjs +8 -20
  93. package/dist/harmony128.mjs.map +1 -1
  94. package/dist/harmony129.cjs +7 -86
  95. package/dist/harmony129.cjs.map +1 -1
  96. package/dist/harmony129.mjs +7 -86
  97. package/dist/harmony129.mjs.map +1 -1
  98. package/dist/harmony130.cjs +15 -30
  99. package/dist/harmony130.cjs.map +1 -1
  100. package/dist/harmony130.mjs +15 -30
  101. package/dist/harmony130.mjs.map +1 -1
  102. package/dist/harmony132.cjs +2 -2
  103. package/dist/harmony132.mjs +2 -2
  104. package/dist/harmony133.cjs +2 -2
  105. package/dist/harmony133.mjs +2 -2
  106. package/dist/harmony134.cjs +3 -3
  107. package/dist/harmony134.mjs +3 -3
  108. package/dist/harmony135.cjs +1 -1
  109. package/dist/harmony135.mjs +1 -1
  110. package/dist/harmony136.cjs +3 -3
  111. package/dist/harmony136.mjs +3 -3
  112. package/dist/harmony137.cjs +2 -2
  113. package/dist/harmony137.mjs +2 -2
  114. package/dist/harmony138.cjs +2 -2
  115. package/dist/harmony138.mjs +2 -2
  116. package/dist/harmony139.cjs +2 -2
  117. package/dist/harmony139.mjs +2 -2
  118. package/dist/harmony140.cjs +2 -2
  119. package/dist/harmony140.mjs +2 -2
  120. package/dist/harmony141.cjs +3 -3
  121. package/dist/harmony141.mjs +3 -3
  122. package/dist/harmony143.cjs +1 -1
  123. package/dist/harmony143.mjs +1 -1
  124. package/dist/harmony148.cjs +10 -3
  125. package/dist/harmony148.cjs.map +1 -1
  126. package/dist/harmony148.mjs +10 -3
  127. package/dist/harmony148.mjs.map +1 -1
  128. package/dist/harmony149.cjs +3 -3
  129. package/dist/harmony149.cjs.map +1 -1
  130. package/dist/harmony149.mjs +3 -3
  131. package/dist/harmony149.mjs.map +1 -1
  132. package/dist/harmony150.cjs +3 -3
  133. package/dist/harmony150.cjs.map +1 -1
  134. package/dist/harmony150.mjs +3 -3
  135. package/dist/harmony150.mjs.map +1 -1
  136. package/dist/harmony151.cjs +3 -14
  137. package/dist/harmony151.cjs.map +1 -1
  138. package/dist/harmony151.mjs +3 -14
  139. package/dist/harmony151.mjs.map +1 -1
  140. package/dist/harmony152.cjs +7 -7
  141. package/dist/harmony152.cjs.map +1 -1
  142. package/dist/harmony152.mjs +7 -7
  143. package/dist/harmony152.mjs.map +1 -1
  144. package/dist/harmony153.cjs +14 -3
  145. package/dist/harmony153.cjs.map +1 -1
  146. package/dist/harmony153.mjs +14 -3
  147. package/dist/harmony153.mjs.map +1 -1
  148. package/dist/harmony154.cjs +3 -10
  149. package/dist/harmony154.cjs.map +1 -1
  150. package/dist/harmony154.mjs +3 -10
  151. package/dist/harmony154.mjs.map +1 -1
  152. package/dist/harmony160.cjs +9 -32
  153. package/dist/harmony160.cjs.map +1 -1
  154. package/dist/harmony160.mjs +8 -31
  155. package/dist/harmony160.mjs.map +1 -1
  156. package/dist/harmony161.cjs +3 -6
  157. package/dist/harmony161.cjs.map +1 -1
  158. package/dist/harmony161.mjs +3 -6
  159. package/dist/harmony161.mjs.map +1 -1
  160. package/dist/harmony162.cjs +6 -3
  161. package/dist/harmony162.cjs.map +1 -1
  162. package/dist/harmony162.mjs +6 -3
  163. package/dist/harmony162.mjs.map +1 -1
  164. package/dist/harmony163.cjs +21 -6
  165. package/dist/harmony163.cjs.map +1 -1
  166. package/dist/harmony163.mjs +21 -6
  167. package/dist/harmony163.mjs.map +1 -1
  168. package/dist/harmony164.cjs +3 -21
  169. package/dist/harmony164.cjs.map +1 -1
  170. package/dist/harmony164.mjs +3 -21
  171. package/dist/harmony164.mjs.map +1 -1
  172. package/dist/harmony165.cjs +9 -3
  173. package/dist/harmony165.cjs.map +1 -1
  174. package/dist/harmony165.mjs +9 -3
  175. package/dist/harmony165.mjs.map +1 -1
  176. package/dist/harmony166.cjs +3 -9
  177. package/dist/harmony166.cjs.map +1 -1
  178. package/dist/harmony166.mjs +3 -9
  179. package/dist/harmony166.mjs.map +1 -1
  180. package/dist/harmony167.cjs +32 -6
  181. package/dist/harmony167.cjs.map +1 -1
  182. package/dist/harmony167.mjs +31 -5
  183. package/dist/harmony167.mjs.map +1 -1
  184. package/dist/harmony168.cjs +1 -1
  185. package/dist/harmony168.mjs +1 -1
  186. package/dist/harmony169.cjs +1 -1
  187. package/dist/harmony169.mjs +1 -1
  188. package/dist/harmony17.cjs +1 -1
  189. package/dist/harmony17.mjs +1 -1
  190. package/dist/harmony170.cjs +2 -2
  191. package/dist/harmony170.mjs +2 -2
  192. package/dist/harmony171.cjs +11 -4
  193. package/dist/harmony171.cjs.map +1 -1
  194. package/dist/harmony171.mjs +11 -4
  195. package/dist/harmony171.mjs.map +1 -1
  196. package/dist/harmony172.cjs +15 -10
  197. package/dist/harmony172.cjs.map +1 -1
  198. package/dist/harmony172.mjs +15 -10
  199. package/dist/harmony172.mjs.map +1 -1
  200. package/dist/harmony173.cjs +18 -13
  201. package/dist/harmony173.cjs.map +1 -1
  202. package/dist/harmony173.mjs +18 -13
  203. package/dist/harmony173.mjs.map +1 -1
  204. package/dist/harmony174.cjs +10 -19
  205. package/dist/harmony174.cjs.map +1 -1
  206. package/dist/harmony174.mjs +10 -19
  207. package/dist/harmony174.mjs.map +1 -1
  208. package/dist/harmony175.cjs +4 -12
  209. package/dist/harmony175.cjs.map +1 -1
  210. package/dist/harmony175.mjs +4 -12
  211. package/dist/harmony175.mjs.map +1 -1
  212. package/dist/harmony20.cjs +1 -1
  213. package/dist/harmony20.mjs +1 -1
  214. package/dist/harmony28.cjs +1 -1
  215. package/dist/harmony28.mjs +1 -1
  216. package/dist/harmony29.cjs +1 -1
  217. package/dist/harmony29.mjs +1 -1
  218. package/dist/harmony32.cjs +1 -1
  219. package/dist/harmony32.mjs +1 -1
  220. package/dist/harmony33.cjs +1 -1
  221. package/dist/harmony33.mjs +1 -1
  222. package/dist/harmony34.cjs +1 -1
  223. package/dist/harmony34.mjs +1 -1
  224. package/dist/harmony39.cjs +1 -1
  225. package/dist/harmony39.mjs +1 -1
  226. package/dist/harmony40.cjs +1 -1
  227. package/dist/harmony40.mjs +1 -1
  228. package/dist/harmony41.cjs +1 -1
  229. package/dist/harmony41.mjs +1 -1
  230. package/dist/harmony42.cjs +2 -2
  231. package/dist/harmony42.mjs +2 -2
  232. package/dist/harmony43.cjs +2 -2
  233. package/dist/harmony43.mjs +2 -2
  234. package/dist/harmony44.cjs +1 -1
  235. package/dist/harmony44.mjs +1 -1
  236. package/dist/harmony53.cjs +3 -3
  237. package/dist/harmony53.cjs.map +1 -1
  238. package/dist/harmony53.mjs +1 -1
  239. package/dist/harmony53.mjs.map +1 -1
  240. package/dist/harmony78.cjs +74 -74
  241. package/dist/harmony78.cjs.map +1 -1
  242. package/dist/harmony78.mjs +1 -1
  243. package/dist/harmony78.mjs.map +1 -1
  244. package/dist/harmony79.cjs +52 -52
  245. package/dist/harmony79.cjs.map +1 -1
  246. package/dist/harmony79.mjs +1 -1
  247. package/dist/harmony79.mjs.map +1 -1
  248. package/dist/harmony80.cjs +4 -4
  249. package/dist/harmony80.cjs.map +1 -1
  250. package/dist/harmony80.mjs +1 -1
  251. package/dist/harmony80.mjs.map +1 -1
  252. package/dist/harmony81.cjs +18 -18
  253. package/dist/harmony81.cjs.map +1 -1
  254. package/dist/harmony81.mjs +1 -1
  255. package/dist/harmony81.mjs.map +1 -1
  256. package/dist/harmony82.cjs +15 -15
  257. package/dist/harmony82.cjs.map +1 -1
  258. package/dist/harmony82.mjs +1 -1
  259. package/dist/harmony82.mjs.map +1 -1
  260. package/dist/harmony83.cjs +96 -96
  261. package/dist/harmony83.cjs.map +1 -1
  262. package/dist/harmony83.mjs +1 -1
  263. package/dist/harmony83.mjs.map +1 -1
  264. package/dist/harmony84.cjs +24 -24
  265. package/dist/harmony84.cjs.map +1 -1
  266. package/dist/harmony84.mjs +1 -1
  267. package/dist/harmony84.mjs.map +1 -1
  268. package/dist/harmony85.cjs +14 -14
  269. package/dist/harmony85.cjs.map +1 -1
  270. package/dist/harmony85.mjs +1 -1
  271. package/dist/harmony85.mjs.map +1 -1
  272. package/dist/harmony86.cjs +2 -2
  273. package/dist/harmony86.cjs.map +1 -1
  274. package/dist/harmony86.mjs +1 -1
  275. package/dist/harmony86.mjs.map +1 -1
  276. package/dist/harmony87.cjs +40 -40
  277. package/dist/harmony87.cjs.map +1 -1
  278. package/dist/harmony87.mjs +1 -1
  279. package/dist/harmony87.mjs.map +1 -1
  280. package/dist/harmony88.cjs +27 -27
  281. package/dist/harmony88.cjs.map +1 -1
  282. package/dist/harmony88.mjs +1 -1
  283. package/dist/harmony88.mjs.map +1 -1
  284. package/dist/harmony89.cjs +10 -10
  285. package/dist/harmony89.cjs.map +1 -1
  286. package/dist/harmony89.mjs +1 -1
  287. package/dist/harmony89.mjs.map +1 -1
  288. package/dist/harmony90.cjs +1 -3
  289. package/dist/harmony90.cjs.map +1 -1
  290. package/dist/harmony90.mjs +2 -4
  291. package/dist/harmony90.mjs.map +1 -1
  292. package/dist/harmony97.cjs +2 -2
  293. package/dist/harmony97.mjs +2 -2
  294. package/dist/harmony99.cjs +2 -2
  295. package/dist/harmony99.mjs +2 -2
  296. package/dist/types/src/features/auth/core/types/jwtTokenPayload.d.ts +8 -35
  297. package/dist/types/src/features/auth/core/types/jwtTokenPayload.fixture.d.ts +1 -1
  298. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +4 -4
  299. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +3 -3
  300. package/dist/types/src/features/auth/frontend/hooks/useGetPromotedClassicSessionJwtQuery.d.ts +1 -1
  301. package/dist/types/src/features/auth/frontend/services/generateTokenFromClassicSession.d.ts +4 -1
  302. package/dist/types/src/features/auth/frontend/services/refreshExpiredToken.d.ts +4 -1
  303. package/dist/types/src/features/navigation/hooks/useNavigationQueries.d.ts +56 -56
  304. package/dist/types/src/features/publicApi/TESTING_CONTRACTS.d.ts +57 -2
  305. package/dist/types/src/features/publicApi/contributors.d.ts +260 -5
  306. package/dist/types/src/features/publicApi/hooks/useAddContributorsMutation.d.ts +7 -7
  307. package/dist/types/src/features/publicApi/hooks/useAddLanguagesToProjectMutation.d.ts +2 -2
  308. package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +14 -14
  309. package/dist/types/src/features/publicApi/hooks/useCreateScoreMutation.d.ts +3 -3
  310. package/dist/types/src/features/publicApi/hooks/useGetProjectPermissionMetaQuery.d.ts +1 -1
  311. package/dist/types/src/features/publicApi/hooks/useGetScoreQuery.d.ts +1 -1
  312. package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +1 -1
  313. package/dist/types/src/features/publicApi/hooks/useGetUserTokenQuery.d.ts +1 -1
  314. package/dist/types/src/features/publicApi/hooks/useListContributorsQuery.d.ts +1 -1
  315. package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +1 -1
  316. package/dist/types/src/features/publicApi/hooks/useListProjectLanguagesQuery.d.ts +1 -1
  317. package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +2 -2
  318. package/dist/types/src/features/publicApi/hooks/useListTeamUsersQuery.d.ts +1 -1
  319. package/dist/types/src/features/publicApi/hooks/useListTeamsQuery.d.ts +2 -2
  320. package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +3 -3
  321. package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +1 -1
  322. package/dist/types/src/features/publicApi/hooks/useRetrieveTeamQuery.d.ts +1 -1
  323. package/dist/types/src/features/publicApi/hooks/useRetrieveUserPermissions.d.ts +2 -2
  324. package/dist/types/src/features/publicApi/hooks/useUpdateContributorMutation.d.ts +5 -5
  325. package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +13 -13
  326. package/dist/types/src/features/publicApi/languages.d.ts +106 -3
  327. package/dist/types/src/features/publicApi/permissionTemplates.d.ts +54 -1
  328. package/dist/types/src/features/publicApi/projects.d.ts +520 -6
  329. package/dist/types/src/features/publicApi/score.d.ts +102 -3
  330. package/dist/types/src/features/publicApi/team.d.ts +102 -2
  331. package/dist/types/src/features/publicApi/teamUsers.d.ts +125 -3
  332. package/dist/types/src/features/publicApi/types/contributorTypes.d.ts +84 -834
  333. package/dist/types/src/features/publicApi/types/languageTypes.d.ts +22 -212
  334. package/dist/types/src/features/publicApi/types/paginationTypes.d.ts +2 -8
  335. package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +71 -76
  336. package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +48 -24
  337. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +211 -1097
  338. package/dist/types/src/features/publicApi/types/scoreTypes.d.ts +32 -96
  339. package/dist/types/src/features/publicApi/types/sharedTypes.d.ts +30 -126
  340. package/dist/types/src/features/publicApi/types/teamRoleTypes.d.ts +7 -2
  341. package/dist/types/src/features/publicApi/types/teamTypes.d.ts +65 -328
  342. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +91 -208
  343. package/dist/types/src/features/publicApi/types/userTokenTypes.d.ts +9 -39
  344. package/dist/types/src/features/publicApi/userToken.d.ts +19 -1
  345. package/package.json +4 -4
@@ -1,20 +1,33 @@
1
- import { teamContext, featureFlagContext, projectPermissionsContext } from "./harmony123.mjs";
2
- import { useContext, useMemo } from "react";
3
- const useActionResolverPayload = () => {
4
- const teamRole = useContext(teamContext);
5
- const enabledFeatureFlags = useContext(featureFlagContext);
6
- const { permissions: projectPermissions, projectType } = useContext(projectPermissionsContext);
7
- return useMemo(
8
- () => ({
9
- enabledFeatureFlags,
10
- teamRole,
11
- projectPermissions,
12
- projectType
13
- }),
14
- [enabledFeatureFlags, teamRole, projectPermissions, projectType]
15
- );
16
- };
1
+ const navigationItems = [
2
+ {
3
+ key: "editor",
4
+ labelKey: "Editor",
5
+ path: ({ projectId }) => `/project/${projectId}/editor`
6
+ },
7
+ {
8
+ key: "dashboard",
9
+ labelKey: "Download",
10
+ path: ({ projectId }) => `/project/${projectId}/dashboard`
11
+ },
12
+ {
13
+ key: "contributors",
14
+ labelKey: "Contributors",
15
+ path: ({ projectId }) => `/project/${projectId}/contributors`
16
+ },
17
+ {
18
+ key: "orders",
19
+ labelKey: "Human proofreading",
20
+ path: ({ projectId }) => `/project/${projectId}/orders`,
21
+ shouldShow: ({ flags }) => flags.ap_feature_hraas === "on"
22
+ },
23
+ {
24
+ key: "billing",
25
+ labelKey: "Billing",
26
+ path: ({ projectId }) => `/project/${projectId}/billing`,
27
+ shouldShow: ({ flags }) => flags.ap_feature_billing === "on"
28
+ }
29
+ ];
17
30
  export {
18
- useActionResolverPayload
31
+ navigationItems
19
32
  };
20
33
  //# sourceMappingURL=harmony124.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony124.mjs","sources":["../src/features/permissions/hooks/useActionResolverPayload.ts"],"sourcesContent":["import {\n\tfeatureFlagContext,\n\tprojectPermissionsContext,\n\tteamContext,\n} from '@features/permissions/context/ActionsContext'\nimport type { ActionResolverPayload } from '@features/permissions/types'\nimport { useContext, useMemo } from 'react'\n\nexport const useActionResolverPayload = (): ActionResolverPayload => {\n\tconst teamRole = useContext(teamContext)\n\tconst enabledFeatureFlags = useContext(featureFlagContext)\n\tconst { permissions: projectPermissions, projectType } = useContext(projectPermissionsContext)\n\n\treturn useMemo(\n\t\t() =>\n\t\t\t({\n\t\t\t\tenabledFeatureFlags,\n\t\t\t\tteamRole,\n\t\t\t\tprojectPermissions,\n\t\t\t\tprojectType,\n\t\t\t}) satisfies ActionResolverPayload,\n\t\t[enabledFeatureFlags, teamRole, projectPermissions, projectType],\n\t)\n}\n"],"names":[],"mappings":";;AAQO,MAAM,2BAA2B,MAA6B;AAC9D,QAAA,WAAW,WAAW,WAAW;AACjC,QAAA,sBAAsB,WAAW,kBAAkB;AACzD,QAAM,EAAE,aAAa,oBAAoB,YAAY,IAAI,WAAW,yBAAyB;AAEtF,SAAA;AAAA,IACN,OACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF,CAAC,qBAAqB,UAAU,oBAAoB,WAAW;AAAA,EAChE;AACD;"}
1
+ {"version":3,"file":"harmony124.mjs","sources":["../src/features/navigation/schemas/navigationSchema.ts"],"sourcesContent":["import type { DropdownItem, NavItemIcon } from '@features/navigation/types/navigation'\n\nexport type NavKey = 'editor' | 'contributors' | 'orders' | 'billing' | 'settings' | 'dashboard'\n\nexport interface NavigationItem {\n\tkey: NavKey\n\tlabelKey: string // TODO: i18n key inside this package\n\tpath: ({ projectId }: { projectId: string }) => string\n\n\ticon?: NavItemIcon\n\tdropdown?: DropdownItem[][]\n\tbadge?: number | ((ctx: NavCtx) => number)\n\n\tshouldShow?: (ctx: NavCtx) => boolean\n\tdisabled?: boolean | ((ctx: NavCtx) => boolean)\n\tisActive?: (pathname: string) => boolean // custom match, else fallback\n}\n\n/** What the gate functions receive */\nexport interface NavCtx {\n\tflags: Record<string, string>\n\tpathname: string\n\tpermissions?: Array<string> // e.g. contributor admin_rights //TODO: Provide type for permissions\n}\n\n// TODO: Handle Translations on harmony side.\nexport const navigationItems: NavigationItem[] = [\n\t{\n\t\tkey: 'editor',\n\t\tlabelKey: 'Editor',\n\t\tpath: ({ projectId }) => `/project/${projectId}/editor`,\n\t},\n\t{\n\t\tkey: 'dashboard',\n\t\tlabelKey: 'Download',\n\t\tpath: ({ projectId }) => `/project/${projectId}/dashboard`,\n\t},\n\t{\n\t\tkey: 'contributors',\n\t\tlabelKey: 'Contributors',\n\t\tpath: ({ projectId }) => `/project/${projectId}/contributors`,\n\t},\n\n\t{\n\t\tkey: 'orders',\n\t\tlabelKey: 'Human proofreading',\n\t\tpath: ({ projectId }) => `/project/${projectId}/orders`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_hraas === 'on',\n\t},\n\t{\n\t\tkey: 'billing',\n\t\tlabelKey: 'Billing',\n\t\tpath: ({ projectId }) => `/project/${projectId}/billing`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_billing === 'on',\n\t},\n]\n"],"names":[],"mappings":"AA0BO,MAAM,kBAAoC;AAAA,EAChD;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EAEA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,qBAAqB;AAAA,EACvD;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,uBAAuB;AAAA,EAAA;AAE1D;"}
@@ -1,11 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const hasAny = (seed, ...items) => {
4
- if (!seed) return false;
5
- if (items.length === 0) return false;
6
- const seedArray = Array.isArray(seed) ? seed : [seed];
7
- if (seedArray.length === 0) return false;
8
- return items.some((item) => seedArray.includes(item));
9
- };
10
- exports.hasAny = hasAny;
3
+ const v4 = require("zod/v4");
4
+ const teamRoleTypes = require("./harmony86.cjs");
5
+ const JWT_TOKEN_PAYLOAD_SCHEMA = v4.z.object({
6
+ userId: v4.z.number(),
7
+ userUuid: v4.z.string().uuid(),
8
+ teamId: v4.z.number(),
9
+ teamUuid: v4.z.string().uuid(),
10
+ userTeamRole: teamRoleTypes.TEAM_ROLE_SCHEMA,
11
+ userEmail: v4.z.string().email(),
12
+ userName: v4.z.string(),
13
+ userCurrentTeamId: v4.z.number(),
14
+ planId: v4.z.number(),
15
+ planName: v4.z.string(),
16
+ isProviderAlpha: v4.z.boolean(),
17
+ isFullyAuthenticated: v4.z.boolean(),
18
+ isEndOfTrialActive: v4.z.boolean(),
19
+ isTeamSuspended: v4.z.boolean(),
20
+ exp: v4.z.number()
21
+ });
22
+ exports.JWT_TOKEN_PAYLOAD_SCHEMA = JWT_TOKEN_PAYLOAD_SCHEMA;
11
23
  //# sourceMappingURL=harmony125.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony125.cjs","sources":["../src/features/permissions/utils/hasAny.ts"],"sourcesContent":["export const hasAny = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.some((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":";;AAAa,MAAA,SAAS,CAAmB,SAA8B,UAAe;AACjF,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,KAAK,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACrD;;"}
1
+ {"version":3,"file":"harmony125.cjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod/v4'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\tisEndOfTrialActive: z.boolean(),\n\tisTeamSuspended: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":["z","TEAM_ROLE_SCHEMA"],"mappings":";;;;AAGa,MAAA,2BAA2BA,KAAE,OAAO;AAAA,EAChD,QAAQA,KAAE,OAAO;AAAA,EACjB,UAAUA,GAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQA,KAAE,OAAO;AAAA,EACjB,UAAUA,GAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAcC,cAAA;AAAA,EACd,WAAWD,GAAA,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAUA,KAAE,OAAO;AAAA,EACnB,mBAAmBA,KAAE,OAAO;AAAA,EAC5B,QAAQA,KAAE,OAAO;AAAA,EACjB,UAAUA,KAAE,OAAO;AAAA,EACnB,iBAAiBA,KAAE,QAAQ;AAAA,EAC3B,sBAAsBA,KAAE,QAAQ;AAAA,EAChC,oBAAoBA,KAAE,QAAQ;AAAA,EAC9B,iBAAiBA,KAAE,QAAQ;AAAA,EAC3B,KAAKA,KAAE,OAAO;AACf,CAAC;;"}
@@ -1,11 +1,23 @@
1
- const hasAny = (seed, ...items) => {
2
- if (!seed) return false;
3
- if (items.length === 0) return false;
4
- const seedArray = Array.isArray(seed) ? seed : [seed];
5
- if (seedArray.length === 0) return false;
6
- return items.some((item) => seedArray.includes(item));
7
- };
1
+ import { z } from "zod/v4";
2
+ import { TEAM_ROLE_SCHEMA } from "./harmony86.mjs";
3
+ const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({
4
+ userId: z.number(),
5
+ userUuid: z.string().uuid(),
6
+ teamId: z.number(),
7
+ teamUuid: z.string().uuid(),
8
+ userTeamRole: TEAM_ROLE_SCHEMA,
9
+ userEmail: z.string().email(),
10
+ userName: z.string(),
11
+ userCurrentTeamId: z.number(),
12
+ planId: z.number(),
13
+ planName: z.string(),
14
+ isProviderAlpha: z.boolean(),
15
+ isFullyAuthenticated: z.boolean(),
16
+ isEndOfTrialActive: z.boolean(),
17
+ isTeamSuspended: z.boolean(),
18
+ exp: z.number()
19
+ });
8
20
  export {
9
- hasAny
21
+ JWT_TOKEN_PAYLOAD_SCHEMA
10
22
  };
11
23
  //# sourceMappingURL=harmony125.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony125.mjs","sources":["../src/features/permissions/utils/hasAny.ts"],"sourcesContent":["export const hasAny = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.some((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":"AAAa,MAAA,SAAS,CAAmB,SAA8B,UAAe;AACjF,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,KAAK,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACrD;"}
1
+ {"version":3,"file":"harmony125.mjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod/v4'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\tisEndOfTrialActive: z.boolean(),\n\tisTeamSuspended: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":[],"mappings":";;AAGa,MAAA,2BAA2B,EAAE,OAAO;AAAA,EAChD,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAc;AAAA,EACd,WAAW,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAU,EAAE,OAAO;AAAA,EACnB,mBAAmB,EAAE,OAAO;AAAA,EAC5B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO;AAAA,EACnB,iBAAiB,EAAE,QAAQ;AAAA,EAC3B,sBAAsB,EAAE,QAAQ;AAAA,EAChC,oBAAoB,EAAE,QAAQ;AAAA,EAC9B,iBAAiB,EAAE,QAAQ;AAAA,EAC3B,KAAK,EAAE,OAAO;AACf,CAAC;"}
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const has = (seed, ...items) => {
4
- if (!seed) return false;
5
- if (items.length === 0) return false;
6
- const seedArray = Array.isArray(seed) ? seed : [seed];
7
- if (seedArray.length === 0) return false;
8
- return items.every((item) => seedArray.includes(item));
9
- };
10
- exports.has = has;
3
+ const React = require("react");
4
+ const featureFlagContext = React.createContext(void 0);
5
+ const teamContext = React.createContext(void 0);
6
+ const projectPermissionsContext = React.createContext({});
7
+ exports.featureFlagContext = featureFlagContext;
8
+ exports.projectPermissionsContext = projectPermissionsContext;
9
+ exports.teamContext = teamContext;
11
10
  //# sourceMappingURL=harmony126.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony126.cjs","sources":["../src/features/permissions/utils/has.ts"],"sourcesContent":["export const has = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.every((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":";;AAAa,MAAA,MAAM,CAAmB,SAA8B,UAAe;AAC9E,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,MAAM,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACtD;;"}
1
+ {"version":3,"file":"harmony126.cjs","sources":["../src/features/permissions/context/ActionsContext.tsx"],"sourcesContent":["import type {\n\tFeatureFlag,\n\tLegacyProjectPermission,\n\tProjectPermission,\n\tProjectType,\n\tTeamRole,\n} from '@features/permissions/types'\nimport { createContext } from 'react'\n\nexport const featureFlagContext = createContext<FeatureFlag[] | undefined>(undefined)\n\nexport const teamContext = createContext<TeamRole | undefined>(undefined)\n\ntype ProjectPermissionsContextType = {\n\tpermissions?: (ProjectPermission | LegacyProjectPermission)[]\n\tprojectType?: ProjectType\n}\nexport const projectPermissionsContext = createContext<ProjectPermissionsContextType>({})\n"],"names":["createContext"],"mappings":";;;AASa,MAAA,qBAAqBA,oBAAyC,MAAS;AAEvE,MAAA,cAAcA,oBAAoC,MAAS;AAM3D,MAAA,4BAA4BA,MAA6C,cAAA,CAAE,CAAA;;;;"}
@@ -1,11 +1,10 @@
1
- const has = (seed, ...items) => {
2
- if (!seed) return false;
3
- if (items.length === 0) return false;
4
- const seedArray = Array.isArray(seed) ? seed : [seed];
5
- if (seedArray.length === 0) return false;
6
- return items.every((item) => seedArray.includes(item));
7
- };
1
+ import { createContext } from "react";
2
+ const featureFlagContext = createContext(void 0);
3
+ const teamContext = createContext(void 0);
4
+ const projectPermissionsContext = createContext({});
8
5
  export {
9
- has
6
+ featureFlagContext,
7
+ projectPermissionsContext,
8
+ teamContext
10
9
  };
11
10
  //# sourceMappingURL=harmony126.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony126.mjs","sources":["../src/features/permissions/utils/has.ts"],"sourcesContent":["export const has = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.every((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":"AAAa,MAAA,MAAM,CAAmB,SAA8B,UAAe;AAC9E,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,MAAM,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACtD;"}
1
+ {"version":3,"file":"harmony126.mjs","sources":["../src/features/permissions/context/ActionsContext.tsx"],"sourcesContent":["import type {\n\tFeatureFlag,\n\tLegacyProjectPermission,\n\tProjectPermission,\n\tProjectType,\n\tTeamRole,\n} from '@features/permissions/types'\nimport { createContext } from 'react'\n\nexport const featureFlagContext = createContext<FeatureFlag[] | undefined>(undefined)\n\nexport const teamContext = createContext<TeamRole | undefined>(undefined)\n\ntype ProjectPermissionsContextType = {\n\tpermissions?: (ProjectPermission | LegacyProjectPermission)[]\n\tprojectType?: ProjectType\n}\nexport const projectPermissionsContext = createContext<ProjectPermissionsContextType>({})\n"],"names":[],"mappings":";AASa,MAAA,qBAAqB,cAAyC,MAAS;AAEvE,MAAA,cAAc,cAAoC,MAAS;AAM3D,MAAA,4BAA4B,cAA6C,CAAE,CAAA;"}
@@ -1,18 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const accessMarketingProjects = require("./harmony148.cjs");
4
- const deleteProjects = require("./harmony149.cjs");
5
- const manageContributors = require("./harmony150.cjs");
6
- const canDownloadFiles = require("./harmony151.cjs");
7
- const canUploadFiles = require("./harmony152.cjs");
8
- const createProjects = require("./harmony153.cjs");
9
- const actionResolvers = {
10
- accessMarketingProjects: accessMarketingProjects.accessMarketingProjects,
11
- canDownloadFiles: canDownloadFiles.canDownloadFiles,
12
- canUploadFiles: canUploadFiles.canUploadFiles,
13
- createProjects: createProjects.createProjects,
14
- deleteProjects: deleteProjects.deleteProjects,
15
- manageContributors: manageContributors.manageContributors
3
+ const ActionsContext = require("./harmony126.cjs");
4
+ const React = require("react");
5
+ const useActionResolverPayload = () => {
6
+ const teamRole = React.useContext(ActionsContext.teamContext);
7
+ const enabledFeatureFlags = React.useContext(ActionsContext.featureFlagContext);
8
+ const { permissions: projectPermissions, projectType } = React.useContext(ActionsContext.projectPermissionsContext);
9
+ return React.useMemo(
10
+ () => ({
11
+ enabledFeatureFlags,
12
+ teamRole,
13
+ projectPermissions,
14
+ projectType
15
+ }),
16
+ [enabledFeatureFlags, teamRole, projectPermissions, projectType]
17
+ );
16
18
  };
17
- exports.actionResolvers = actionResolvers;
19
+ exports.useActionResolverPayload = useActionResolverPayload;
18
20
  //# sourceMappingURL=harmony127.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony127.cjs","sources":["../src/features/permissions/action.ts"],"sourcesContent":["import { accessMarketingProjects } from '@features/permissions/action-resolvers/accessMarketingProjects'\nimport { deleteProjects } from '@features/permissions/action-resolvers/deleteProjects'\nimport { manageContributors } from '@features/permissions/action-resolvers/manageContributors'\nimport { canDownloadFiles } from './action-resolvers/canDownloadFiles'\nimport { canUploadFiles } from './action-resolvers/canUploadFiles'\nimport { createProjects } from './action-resolvers/createProjects'\nimport type { ActionResolver } from './types'\n\nexport const actionResolvers = {\n\taccessMarketingProjects,\n\tcanDownloadFiles,\n\tcanUploadFiles,\n\tcreateProjects,\n\tdeleteProjects,\n\tmanageContributors,\n} satisfies Record<string, ActionResolver>\n\nexport type Action = keyof typeof actionResolvers\n"],"names":["accessMarketingProjects","canDownloadFiles","canUploadFiles","createProjects","deleteProjects","manageContributors"],"mappings":";;;;;;;;AAQO,MAAM,kBAAkB;AAAA,EAAA,yBAC9BA,wBAAA;AAAA,EAAA,kBACAC,iBAAA;AAAA,EAAA,gBACAC,eAAA;AAAA,EAAA,gBACAC,eAAA;AAAA,EAAA,gBACAC,eAAA;AAAA,EACAC,oBAAAA,mBAAAA;AACD;;"}
1
+ {"version":3,"file":"harmony127.cjs","sources":["../src/features/permissions/hooks/useActionResolverPayload.ts"],"sourcesContent":["import {\n\tfeatureFlagContext,\n\tprojectPermissionsContext,\n\tteamContext,\n} from '@features/permissions/context/ActionsContext'\nimport type { ActionResolverPayload } from '@features/permissions/types'\nimport { useContext, useMemo } from 'react'\n\nexport const useActionResolverPayload = (): ActionResolverPayload => {\n\tconst teamRole = useContext(teamContext)\n\tconst enabledFeatureFlags = useContext(featureFlagContext)\n\tconst { permissions: projectPermissions, projectType } = useContext(projectPermissionsContext)\n\n\treturn useMemo(\n\t\t() =>\n\t\t\t({\n\t\t\t\tenabledFeatureFlags,\n\t\t\t\tteamRole,\n\t\t\t\tprojectPermissions,\n\t\t\t\tprojectType,\n\t\t\t}) satisfies ActionResolverPayload,\n\t\t[enabledFeatureFlags, teamRole, projectPermissions, projectType],\n\t)\n}\n"],"names":["useContext","teamContext","featureFlagContext","projectPermissionsContext","useMemo"],"mappings":";;;;AAQO,MAAM,2BAA2B,MAA6B;AAC9D,QAAA,WAAWA,iBAAWC,0BAAW;AACjC,QAAA,sBAAsBD,iBAAWE,iCAAkB;AACzD,QAAM,EAAE,aAAa,oBAAoB,YAAY,IAAIF,MAAAA,WAAWG,eAAAA,yBAAyB;AAEtF,SAAAC,MAAA;AAAA,IACN,OACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF,CAAC,qBAAqB,UAAU,oBAAoB,WAAW;AAAA,EAChE;AACD;;"}
@@ -1,18 +1,20 @@
1
- import { accessMarketingProjects } from "./harmony148.mjs";
2
- import { deleteProjects } from "./harmony149.mjs";
3
- import { manageContributors } from "./harmony150.mjs";
4
- import { canDownloadFiles } from "./harmony151.mjs";
5
- import { canUploadFiles } from "./harmony152.mjs";
6
- import { createProjects } from "./harmony153.mjs";
7
- const actionResolvers = {
8
- accessMarketingProjects,
9
- canDownloadFiles,
10
- canUploadFiles,
11
- createProjects,
12
- deleteProjects,
13
- manageContributors
1
+ import { teamContext, featureFlagContext, projectPermissionsContext } from "./harmony126.mjs";
2
+ import { useContext, useMemo } from "react";
3
+ const useActionResolverPayload = () => {
4
+ const teamRole = useContext(teamContext);
5
+ const enabledFeatureFlags = useContext(featureFlagContext);
6
+ const { permissions: projectPermissions, projectType } = useContext(projectPermissionsContext);
7
+ return useMemo(
8
+ () => ({
9
+ enabledFeatureFlags,
10
+ teamRole,
11
+ projectPermissions,
12
+ projectType
13
+ }),
14
+ [enabledFeatureFlags, teamRole, projectPermissions, projectType]
15
+ );
14
16
  };
15
17
  export {
16
- actionResolvers
18
+ useActionResolverPayload
17
19
  };
18
20
  //# sourceMappingURL=harmony127.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony127.mjs","sources":["../src/features/permissions/action.ts"],"sourcesContent":["import { accessMarketingProjects } from '@features/permissions/action-resolvers/accessMarketingProjects'\nimport { deleteProjects } from '@features/permissions/action-resolvers/deleteProjects'\nimport { manageContributors } from '@features/permissions/action-resolvers/manageContributors'\nimport { canDownloadFiles } from './action-resolvers/canDownloadFiles'\nimport { canUploadFiles } from './action-resolvers/canUploadFiles'\nimport { createProjects } from './action-resolvers/createProjects'\nimport type { ActionResolver } from './types'\n\nexport const actionResolvers = {\n\taccessMarketingProjects,\n\tcanDownloadFiles,\n\tcanUploadFiles,\n\tcreateProjects,\n\tdeleteProjects,\n\tmanageContributors,\n} satisfies Record<string, ActionResolver>\n\nexport type Action = keyof typeof actionResolvers\n"],"names":[],"mappings":";;;;;;AAQO,MAAM,kBAAkB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;"}
1
+ {"version":3,"file":"harmony127.mjs","sources":["../src/features/permissions/hooks/useActionResolverPayload.ts"],"sourcesContent":["import {\n\tfeatureFlagContext,\n\tprojectPermissionsContext,\n\tteamContext,\n} from '@features/permissions/context/ActionsContext'\nimport type { ActionResolverPayload } from '@features/permissions/types'\nimport { useContext, useMemo } from 'react'\n\nexport const useActionResolverPayload = (): ActionResolverPayload => {\n\tconst teamRole = useContext(teamContext)\n\tconst enabledFeatureFlags = useContext(featureFlagContext)\n\tconst { permissions: projectPermissions, projectType } = useContext(projectPermissionsContext)\n\n\treturn useMemo(\n\t\t() =>\n\t\t\t({\n\t\t\t\tenabledFeatureFlags,\n\t\t\t\tteamRole,\n\t\t\t\tprojectPermissions,\n\t\t\t\tprojectType,\n\t\t\t}) satisfies ActionResolverPayload,\n\t\t[enabledFeatureFlags, teamRole, projectPermissions, projectType],\n\t)\n}\n"],"names":[],"mappings":";;AAQO,MAAM,2BAA2B,MAA6B;AAC9D,QAAA,WAAW,WAAW,WAAW;AACjC,QAAA,sBAAsB,WAAW,kBAAkB;AACzD,QAAM,EAAE,aAAa,oBAAoB,YAAY,IAAI,WAAW,yBAAyB;AAEtF,SAAA;AAAA,IACN,OACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF,CAAC,qBAAqB,UAAU,oBAAoB,WAAW;AAAA,EAChE;AACD;"}
@@ -1,23 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const zod = require("zod");
4
- const teamRoleTypes = require("./harmony86.cjs");
5
- const JWT_TOKEN_PAYLOAD_SCHEMA = zod.z.object({
6
- userId: zod.z.number(),
7
- userUuid: zod.z.string().uuid(),
8
- teamId: zod.z.number(),
9
- teamUuid: zod.z.string().uuid(),
10
- userTeamRole: teamRoleTypes.TEAM_ROLE_SCHEMA,
11
- userEmail: zod.z.string().email(),
12
- userName: zod.z.string(),
13
- userCurrentTeamId: zod.z.number(),
14
- planId: zod.z.number(),
15
- planName: zod.z.string(),
16
- isProviderAlpha: zod.z.boolean(),
17
- isFullyAuthenticated: zod.z.boolean(),
18
- isEndOfTrialActive: zod.z.boolean(),
19
- isTeamSuspended: zod.z.boolean(),
20
- exp: zod.z.number()
21
- });
22
- exports.JWT_TOKEN_PAYLOAD_SCHEMA = JWT_TOKEN_PAYLOAD_SCHEMA;
3
+ const hasAny = (seed, ...items) => {
4
+ if (!seed) return false;
5
+ if (items.length === 0) return false;
6
+ const seedArray = Array.isArray(seed) ? seed : [seed];
7
+ if (seedArray.length === 0) return false;
8
+ return items.some((item) => seedArray.includes(item));
9
+ };
10
+ exports.hasAny = hasAny;
23
11
  //# sourceMappingURL=harmony128.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony128.cjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\tisEndOfTrialActive: z.boolean(),\n\tisTeamSuspended: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":["z","TEAM_ROLE_SCHEMA"],"mappings":";;;;AAGa,MAAA,2BAA2BA,MAAE,OAAO;AAAA,EAChD,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,IAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,IAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAcC,cAAA;AAAA,EACd,WAAWD,IAAA,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAUA,MAAE,OAAO;AAAA,EACnB,mBAAmBA,MAAE,OAAO;AAAA,EAC5B,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,MAAE,OAAO;AAAA,EACnB,iBAAiBA,MAAE,QAAQ;AAAA,EAC3B,sBAAsBA,MAAE,QAAQ;AAAA,EAChC,oBAAoBA,MAAE,QAAQ;AAAA,EAC9B,iBAAiBA,MAAE,QAAQ;AAAA,EAC3B,KAAKA,MAAE,OAAO;AACf,CAAC;;"}
1
+ {"version":3,"file":"harmony128.cjs","sources":["../src/features/permissions/utils/hasAny.ts"],"sourcesContent":["export const hasAny = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.some((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":";;AAAa,MAAA,SAAS,CAAmB,SAA8B,UAAe;AACjF,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,KAAK,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACrD;;"}
@@ -1,23 +1,11 @@
1
- import { z } from "zod";
2
- import { TEAM_ROLE_SCHEMA } from "./harmony86.mjs";
3
- const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({
4
- userId: z.number(),
5
- userUuid: z.string().uuid(),
6
- teamId: z.number(),
7
- teamUuid: z.string().uuid(),
8
- userTeamRole: TEAM_ROLE_SCHEMA,
9
- userEmail: z.string().email(),
10
- userName: z.string(),
11
- userCurrentTeamId: z.number(),
12
- planId: z.number(),
13
- planName: z.string(),
14
- isProviderAlpha: z.boolean(),
15
- isFullyAuthenticated: z.boolean(),
16
- isEndOfTrialActive: z.boolean(),
17
- isTeamSuspended: z.boolean(),
18
- exp: z.number()
19
- });
1
+ const hasAny = (seed, ...items) => {
2
+ if (!seed) return false;
3
+ if (items.length === 0) return false;
4
+ const seedArray = Array.isArray(seed) ? seed : [seed];
5
+ if (seedArray.length === 0) return false;
6
+ return items.some((item) => seedArray.includes(item));
7
+ };
20
8
  export {
21
- JWT_TOKEN_PAYLOAD_SCHEMA
9
+ hasAny
22
10
  };
23
11
  //# sourceMappingURL=harmony128.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony128.mjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\tisEndOfTrialActive: z.boolean(),\n\tisTeamSuspended: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":[],"mappings":";;AAGa,MAAA,2BAA2B,EAAE,OAAO;AAAA,EAChD,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAc;AAAA,EACd,WAAW,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAU,EAAE,OAAO;AAAA,EACnB,mBAAmB,EAAE,OAAO;AAAA,EAC5B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO;AAAA,EACnB,iBAAiB,EAAE,QAAQ;AAAA,EAC3B,sBAAsB,EAAE,QAAQ;AAAA,EAChC,oBAAoB,EAAE,QAAQ;AAAA,EAC9B,iBAAiB,EAAE,QAAQ;AAAA,EAC3B,KAAK,EAAE,OAAO;AACf,CAAC;"}
1
+ {"version":3,"file":"harmony128.mjs","sources":["../src/features/permissions/utils/hasAny.ts"],"sourcesContent":["export const hasAny = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.some((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":"AAAa,MAAA,SAAS,CAAmB,SAA8B,UAAe;AACjF,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,KAAK,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACrD;"}
@@ -1,90 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const permissions = require("./harmony154.cjs");
4
- const getProjectNavigationVisibilityMap = (project, adminRights, isFeatureEnabled) => {
5
- var _a, _b;
6
- return {
7
- upload: {
8
- visible: permissions.hasAdminRight(adminRights, "upload"),
9
- disabled: false
10
- },
11
- download: {
12
- visible: permissions.hasAdminRight(adminRights, "download"),
13
- disabled: false
14
- },
15
- // TODO: HOME-1009, Clean up after permission management
16
- // -- There is a plan for "Install apps" permission. Right..?
17
- apps: {
18
- visible: true,
19
- disabled: false
20
- },
21
- // TODO: HOME-1009, Clean up after permission management
22
- // -- There is a plan for "Install apps" permission. Right..?
23
- contentManagement: {
24
- visible: project.project_type === "content_integration" && permissions.hasAdminRight(adminRights, "keys"),
25
- disabled: false
26
- },
27
- editor: {
28
- visible: true,
29
- disabled: false
30
- },
31
- files: {
32
- visible: isFeatureEnabled("lionLfcFilesManagement") && project.project_type === "paged_documents" && permissions.hasAnyAdminRight(adminRights, ["upload", "download"]),
33
- disabled: false
34
- },
35
- tasks: {
36
- visible: permissions.hasAdminRight(adminRights, "tasks"),
37
- disabled: false
38
- },
39
- contributors: {
40
- visible: permissions.hasAdminRight(adminRights, "contributors"),
41
- disabled: false
42
- },
43
- workflows: {
44
- visible: permissions.hasAdminRight(adminRights, "settings"),
45
- disabled: false
46
- },
47
- screenshots: {
48
- visible: permissions.hasAdminRight(adminRights, "screenshots"),
49
- disabled: false
50
- },
51
- glossary: {
52
- visible: permissions.hasAdminRight(adminRights, "glossary"),
53
- disabled: false
54
- },
55
- more: {
56
- visible: true,
57
- disabled: false
58
- },
59
- settings: {
60
- visible: permissions.hasAdminRight(adminRights, "settings"),
61
- disabled: false
62
- },
63
- branches: {
64
- visible: !!((_a = project.settings) == null ? void 0 : _a.branching) && permissions.hasAnyAdminRight(adminRights, ["branches_create", "create_branches", "branches_merge"]),
65
- disabled: false
66
- },
67
- otaBundles: {
68
- visible: permissions.hasAnyAdminRight(adminRights, ["download", "settings", "keys"]) && project.project_type === "localization_files",
69
- disabled: false
70
- },
71
- automations: {
72
- visible: permissions.hasAdminRight(adminRights, "settings"),
73
- disabled: false
74
- },
75
- duplicateFinder: {
76
- visible: permissions.hasAdminRight(adminRights, "keys") && project.project_type === "localization_files",
77
- disabled: false
78
- },
79
- activity: {
80
- visible: !!((_b = project.settings) == null ? void 0 : _b.offline_translation) || permissions.hasAdminRight(adminRights, "activity"),
81
- disabled: false
82
- },
83
- statistics: {
84
- visible: permissions.hasAdminRight(adminRights, "statistics"),
85
- disabled: false
86
- }
87
- };
3
+ const has = (seed, ...items) => {
4
+ if (!seed) return false;
5
+ if (items.length === 0) return false;
6
+ const seedArray = Array.isArray(seed) ? seed : [seed];
7
+ if (seedArray.length === 0) return false;
8
+ return items.every((item) => seedArray.includes(item));
88
9
  };
89
- exports.getProjectNavigationVisibilityMap = getProjectNavigationVisibilityMap;
10
+ exports.has = has;
90
11
  //# sourceMappingURL=harmony129.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony129.cjs","sources":["../src/features/navigation/utils/toolbarVisibility.ts"],"sourcesContent":["import { hasAdminRight, hasAnyAdminRight } from '@features/auth/utils/permissions'\nimport type { Project } from '@features/node'\n\ntype ToolbarVisibility = {\n\tdisabled: boolean\n\tvisible: boolean\n}\n\nexport type ToolbarVisibilityMap = {\n\tupload: ToolbarVisibility\n\tdownload: ToolbarVisibility\n\tapps: ToolbarVisibility\n\tcontentManagement: ToolbarVisibility\n\teditor: ToolbarVisibility\n\tfiles: ToolbarVisibility\n\ttasks: ToolbarVisibility\n\tworkflows: ToolbarVisibility\n\tcontributors: ToolbarVisibility\n\tscreenshots: ToolbarVisibility\n\tglossary: ToolbarVisibility\n\tmore: ToolbarVisibility\n\tsettings: ToolbarVisibility\n\tbranches: ToolbarVisibility\n\totaBundles: ToolbarVisibility\n\tautomations: ToolbarVisibility\n\tduplicateFinder: ToolbarVisibility\n\tactivity: ToolbarVisibility\n\tstatistics: ToolbarVisibility\n}\n\nexport const getProjectNavigationVisibilityMap = (\n\tproject: Project,\n\tadminRights: string[],\n\tisFeatureEnabled: (key: string) => boolean,\n): ToolbarVisibilityMap => ({\n\tupload: {\n\t\tvisible: hasAdminRight(adminRights, 'upload'),\n\t\tdisabled: false,\n\t},\n\tdownload: {\n\t\tvisible: hasAdminRight(adminRights, 'download'),\n\t\tdisabled: false,\n\t},\n\t// TODO: HOME-1009, Clean up after permission management\n\t// -- There is a plan for \"Install apps\" permission. Right..?\n\tapps: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\t// TODO: HOME-1009, Clean up after permission management\n\t// -- There is a plan for \"Install apps\" permission. Right..?\n\tcontentManagement: {\n\t\tvisible: project.project_type === 'content_integration' && hasAdminRight(adminRights, 'keys'),\n\t\tdisabled: false,\n\t},\n\teditor: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\tfiles: {\n\t\tvisible:\n\t\t\tisFeatureEnabled('lionLfcFilesManagement') &&\n\t\t\tproject.project_type === 'paged_documents' &&\n\t\t\thasAnyAdminRight(adminRights, ['upload', 'download']),\n\t\tdisabled: false,\n\t},\n\ttasks: {\n\t\tvisible: hasAdminRight(adminRights, 'tasks'),\n\t\tdisabled: false,\n\t},\n\tcontributors: {\n\t\tvisible: hasAdminRight(adminRights, 'contributors'),\n\t\tdisabled: false,\n\t},\n\tworkflows: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tscreenshots: {\n\t\tvisible: hasAdminRight(adminRights, 'screenshots'),\n\t\tdisabled: false,\n\t},\n\tglossary: {\n\t\tvisible: hasAdminRight(adminRights, 'glossary'),\n\t\tdisabled: false,\n\t},\n\tmore: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\tsettings: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tbranches: {\n\t\tvisible:\n\t\t\t!!project.settings?.branching &&\n\t\t\thasAnyAdminRight(adminRights, ['branches_create', 'create_branches', 'branches_merge']),\n\t\tdisabled: false,\n\t},\n\totaBundles: {\n\t\tvisible:\n\t\t\thasAnyAdminRight(adminRights, ['download', 'settings', 'keys']) &&\n\t\t\tproject.project_type === 'localization_files',\n\t\tdisabled: false,\n\t},\n\tautomations: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tduplicateFinder: {\n\t\tvisible: hasAdminRight(adminRights, 'keys') && project.project_type === 'localization_files',\n\t\tdisabled: false,\n\t},\n\tactivity: {\n\t\tvisible: !!project.settings?.offline_translation || hasAdminRight(adminRights, 'activity'),\n\t\tdisabled: false,\n\t},\n\tstatistics: {\n\t\tvisible: hasAdminRight(adminRights, 'statistics'),\n\t\tdisabled: false,\n\t},\n})\n"],"names":["hasAdminRight","hasAnyAdminRight"],"mappings":";;;AA8BO,MAAM,oCAAoC,CAChD,SACA,aACA,qBAC2B;;AAAA;AAAA,IAC3B,QAAQ;AAAA,MACP,SAASA,YAAAA,cAAc,aAAa,QAAQ;AAAA,MAC5C,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA;AAAA;AAAA,IAGA,MAAM;AAAA,MACL,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA;AAAA;AAAA,IAGA,mBAAmB;AAAA,MAClB,SAAS,QAAQ,iBAAiB,yBAAyBA,YAAA,cAAc,aAAa,MAAM;AAAA,MAC5F,UAAU;AAAA,IACX;AAAA,IACA,QAAQ;AAAA,MACP,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACN,SACC,iBAAiB,wBAAwB,KACzC,QAAQ,iBAAiB,qBACzBC,YAAAA,iBAAiB,aAAa,CAAC,UAAU,UAAU,CAAC;AAAA,MACrD,UAAU;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACN,SAASD,YAAAA,cAAc,aAAa,OAAO;AAAA,MAC3C,UAAU;AAAA,IACX;AAAA,IACA,cAAc;AAAA,MACb,SAASA,YAAAA,cAAc,aAAa,cAAc;AAAA,MAClD,UAAU;AAAA,IACX;AAAA,IACA,WAAW;AAAA,MACV,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACZ,SAASA,YAAAA,cAAc,aAAa,aAAa;AAAA,MACjD,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACL,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SACC,CAAC,GAAC,aAAQ,aAAR,mBAAkB,cACpBC,6BAAiB,aAAa,CAAC,mBAAmB,mBAAmB,gBAAgB,CAAC;AAAA,MACvF,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,MACX,SACCA,YAAAA,iBAAiB,aAAa,CAAC,YAAY,YAAY,MAAM,CAAC,KAC9D,QAAQ,iBAAiB;AAAA,MAC1B,UAAU;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACZ,SAASD,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,iBAAiB;AAAA,MAChB,SAASA,YAAc,cAAA,aAAa,MAAM,KAAK,QAAQ,iBAAiB;AAAA,MACxE,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAAS,CAAC,GAAC,aAAQ,aAAR,mBAAkB,wBAAuBA,YAAA,cAAc,aAAa,UAAU;AAAA,MACzF,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,MACX,SAASA,YAAAA,cAAc,aAAa,YAAY;AAAA,MAChD,UAAU;AAAA,IAAA;AAAA,EAEZ;AAAA;;"}
1
+ {"version":3,"file":"harmony129.cjs","sources":["../src/features/permissions/utils/has.ts"],"sourcesContent":["export const has = <T extends string>(seed: T | T[] | undefined, ...items: T[]) => {\n\tif (!seed) return false\n\tif (items.length === 0) return false\n\tconst seedArray = Array.isArray(seed) ? seed : [seed]\n\tif (seedArray.length === 0) return false\n\treturn items.every((item) => seedArray.includes(item))\n}\n"],"names":[],"mappings":";;AAAa,MAAA,MAAM,CAAmB,SAA8B,UAAe;AAC9E,MAAA,CAAC,KAAa,QAAA;AACd,MAAA,MAAM,WAAW,EAAU,QAAA;AAC/B,QAAM,YAAY,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAChD,MAAA,UAAU,WAAW,EAAU,QAAA;AACnC,SAAO,MAAM,MAAM,CAAC,SAAS,UAAU,SAAS,IAAI,CAAC;AACtD;;"}
@@ -1,90 +1,11 @@
1
- import { hasAdminRight, hasAnyAdminRight } from "./harmony154.mjs";
2
- const getProjectNavigationVisibilityMap = (project, adminRights, isFeatureEnabled) => {
3
- var _a, _b;
4
- return {
5
- upload: {
6
- visible: hasAdminRight(adminRights, "upload"),
7
- disabled: false
8
- },
9
- download: {
10
- visible: hasAdminRight(adminRights, "download"),
11
- disabled: false
12
- },
13
- // TODO: HOME-1009, Clean up after permission management
14
- // -- There is a plan for "Install apps" permission. Right..?
15
- apps: {
16
- visible: true,
17
- disabled: false
18
- },
19
- // TODO: HOME-1009, Clean up after permission management
20
- // -- There is a plan for "Install apps" permission. Right..?
21
- contentManagement: {
22
- visible: project.project_type === "content_integration" && hasAdminRight(adminRights, "keys"),
23
- disabled: false
24
- },
25
- editor: {
26
- visible: true,
27
- disabled: false
28
- },
29
- files: {
30
- visible: isFeatureEnabled("lionLfcFilesManagement") && project.project_type === "paged_documents" && hasAnyAdminRight(adminRights, ["upload", "download"]),
31
- disabled: false
32
- },
33
- tasks: {
34
- visible: hasAdminRight(adminRights, "tasks"),
35
- disabled: false
36
- },
37
- contributors: {
38
- visible: hasAdminRight(adminRights, "contributors"),
39
- disabled: false
40
- },
41
- workflows: {
42
- visible: hasAdminRight(adminRights, "settings"),
43
- disabled: false
44
- },
45
- screenshots: {
46
- visible: hasAdminRight(adminRights, "screenshots"),
47
- disabled: false
48
- },
49
- glossary: {
50
- visible: hasAdminRight(adminRights, "glossary"),
51
- disabled: false
52
- },
53
- more: {
54
- visible: true,
55
- disabled: false
56
- },
57
- settings: {
58
- visible: hasAdminRight(adminRights, "settings"),
59
- disabled: false
60
- },
61
- branches: {
62
- visible: !!((_a = project.settings) == null ? void 0 : _a.branching) && hasAnyAdminRight(adminRights, ["branches_create", "create_branches", "branches_merge"]),
63
- disabled: false
64
- },
65
- otaBundles: {
66
- visible: hasAnyAdminRight(adminRights, ["download", "settings", "keys"]) && project.project_type === "localization_files",
67
- disabled: false
68
- },
69
- automations: {
70
- visible: hasAdminRight(adminRights, "settings"),
71
- disabled: false
72
- },
73
- duplicateFinder: {
74
- visible: hasAdminRight(adminRights, "keys") && project.project_type === "localization_files",
75
- disabled: false
76
- },
77
- activity: {
78
- visible: !!((_b = project.settings) == null ? void 0 : _b.offline_translation) || hasAdminRight(adminRights, "activity"),
79
- disabled: false
80
- },
81
- statistics: {
82
- visible: hasAdminRight(adminRights, "statistics"),
83
- disabled: false
84
- }
85
- };
1
+ const has = (seed, ...items) => {
2
+ if (!seed) return false;
3
+ if (items.length === 0) return false;
4
+ const seedArray = Array.isArray(seed) ? seed : [seed];
5
+ if (seedArray.length === 0) return false;
6
+ return items.every((item) => seedArray.includes(item));
86
7
  };
87
8
  export {
88
- getProjectNavigationVisibilityMap
9
+ has
89
10
  };
90
11
  //# sourceMappingURL=harmony129.mjs.map