{"version":3,"file":"methods-Cwsy79oP.mjs","names":[],"sources":["../src/modules/auth/methods.ts"],"sourcesContent":["import { client } from '~/lib/fetch';\nimport type { ApiResponse } from '~/lib/api';\n\nimport { assignPermission } from '~/helpers/permissions/decorator';\n\nimport type { Namespace } from '~/modules/namespaces/types';\nimport type { User } from '~/modules/users/types';\n\nimport type { UserPermissions } from './types';\n\n/**\n * Get logged user info\n *\n *\n * @returns The logged user info\n */\nexport async function getCurrentUser(): Promise<User> {\n  const { content } = await client.fetch<ApiResponse<User>>('/auth/me');\n\n  return content;\n}\nassignPermission(getCurrentUser, 'GET /auth/me');\n\n/**\n * Get logged user accessible namespaces\n *\n * @returns Namespaces\n */\nexport async function getCurrentNamespaces(): Promise<\n  Omit<Namespace, 'fetchLogin' | 'fetchOptions'>[]\n> {\n  const { content } = await client.fetch<\n    ApiResponse<Omit<Namespace, 'fetchLogin' | 'fetchOptions'>[]>\n  >('/auth/me/namespaces');\n\n  return content;\n}\nassignPermission(getCurrentNamespaces, 'GET /auth/me/namespaces');\n\n/**\n * Get logged user permissions\n *\n * @returns Permissions\n */\nexport async function getCurrentPermissions(): Promise<UserPermissions> {\n  const { content } = await client.fetch<ApiResponse<UserPermissions>>(\n    '/auth/me/permissions'\n  );\n\n  return content;\n}\nassignPermission(getCurrentPermissions, 'GET /auth/me/permissions');\n"],"mappings":";;;;;;;;;;;AAgBA,SAAsB;;;;kDAAgC;EACpD,MAAM,EAAE,kBAAkB,OAAO,MAAyB,WAAW;AAErE,SAAO;;;;AAET,iBAAiB,gBAAgB,eAAe;;;;;;AAOhD,SAAsB;;;;wDAEpB;EACA,MAAM,EAAE,kBAAkB,OAAO,MAE/B,sBAAsB;AAExB,SAAO;;;;AAET,iBAAiB,sBAAsB,0BAA0B;;;;;;AAOjE,SAAsB;;;;yDAAkD;EACtE,MAAM,EAAE,kBAAkB,OAAO,MAC/B,uBACD;AAED,SAAO;;;;AAET,iBAAiB,uBAAuB,2BAA2B"}