@kulkan/kulterra-api-client 1.3.0 → 1.3.2
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.
- package/CHANGELOG.md +13 -0
- package/README.md +171 -116
- package/dist/index.d.mts +26 -52
- package/dist/index.d.ts +26 -52
- package/dist/index.js +69 -153
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +63 -140
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/endpoints/auth.ts","../src/endpoints/user.ts","../src/endpoints/health-check.ts","../src/endpoints/company.ts","../src/endpoints/project.ts","../src/endpoints/property.ts","../src/create-api-client.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type {\n AuthSessionResponse,\n AuthUserResponse,\n IApiResponse,\n LoginRequest,\n LogoutRequest,\n OAuthGoogleCallbackRequest,\n OAuthGoogleStartResponse,\n RefreshRequest,\n RegisterRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst AUTH_BASE = '/api/v1/auth' as const;\n\n/**\n * POST /api/v1/auth/register\n */\nexport async function postRegister(\n http: HttpClient,\n body: RegisterRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, RegisterRequest>(\n `${AUTH_BASE}/register`,\n body,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/login\n */\nexport async function postLogin(\n http: HttpClient,\n body: LoginRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, LoginRequest>(\n `${AUTH_BASE}/login`,\n body,\n );\n return data;\n}\n\n/**\n * GET /api/v1/auth/oauth/google/start?redirectUri=...\n */\nexport async function getGoogleOAuthStart(\n http: HttpClient,\n redirectUri: string,\n): Promise<IApiResponse<OAuthGoogleStartResponse>> {\n const q = new URLSearchParams({ redirectUri });\n const { data } = await http.get<IApiResponse<OAuthGoogleStartResponse>>(\n `${AUTH_BASE}/oauth/google/start?${q.toString()}`,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/oauth/google/callback\n */\nexport async function postGoogleOAuthCallback(\n http: HttpClient,\n body: OAuthGoogleCallbackRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, OAuthGoogleCallbackRequest>(\n `${AUTH_BASE}/oauth/google/callback`,\n body,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/refresh\n */\nexport async function postRefresh(\n http: HttpClient,\n body: RefreshRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, RefreshRequest>(\n `${AUTH_BASE}/refresh`,\n body,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/logout — 204 No Content (no JSON body).\n */\nexport async function postLogout(http: HttpClient, body: LogoutRequest): Promise<void> {\n await http.post<undefined, LogoutRequest>(`${AUTH_BASE}/logout`, body);\n}\n\n/**\n * GET /api/v1/auth/me — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMe(\n http: HttpClient,\n accessToken: string,\n): Promise<IApiResponse<AuthUserResponse>> {\n const { data } = await http.get<IApiResponse<AuthUserResponse>>(`${AUTH_BASE}/me`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n","import type {\n GetUsersQueryByTokenRequest,\n IApiResponse,\n IPaginatedByTokenResponse,\n ToAdminUsersResponse,\n ToSAdminUsersResponse,\n UpdateUserBySAdminRequest,\n UpdateUserByUserRequest,\n UpdateUserRoleByAdminRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst USER_BASE = '/api/v1/users' as const;\n\n// GET\n\n/**\n * GET /api/v1/users — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getUsers(\n http: HttpClient,\n accessToken: string,\n userQuery: GetUsersQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ToAdminUsersResponse | ToSAdminUsersResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ToAdminUsersResponse | ToSAdminUsersResponse>>\n >(`${USER_BASE}`, {\n params: userQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/users/:userId — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getUserById(\n http: HttpClient,\n accessToken: string,\n { userId }: { userId: string },\n): Promise<IApiResponse<ToSAdminUsersResponse>> {\n const { data } = await http.get<IApiResponse<ToSAdminUsersResponse>>(`${USER_BASE}/${userId}`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/users/me — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateMe(\n http: HttpClient,\n accessToken: string,\n patch: UpdateUserByUserRequest,\n): Promise<void> {\n await http.patch<void, UpdateUserByUserRequest>(`${USER_BASE}/me`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n\n/**\n * PATCH /api/v1/users/:userId/role — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateRoleUserByAdmin(\n http: HttpClient,\n accessToken: string,\n { userId }: { userId: string },\n body: UpdateUserRoleByAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateUserRoleByAdminRequest>(`${USER_BASE}/${userId}/role`, body, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n\n/**\n * PATCH /api/v1/users/:userId — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateUserBySAdmin(\n http: HttpClient,\n accessToken: string,\n { userId }: { userId: string },\n patch: UpdateUserBySAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateUserBySAdminRequest>(`${USER_BASE}/${userId}`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n","import type { IApiResponse, HealthCheck } from '@kulkan/kulterra-contracts';\nimport type { HttpClient } from '../http-client';\n\n/** Same path as `/api/${v1}/health-check` on the server when `v1` is the string `'v1'`. */\nconst HEALTH_CHECK_PATH = '/api/v1/health-check' as const;\n\n/**\n * GET /api/v1/health-check — server liveness.\n *\n * Returns the full JSON the server sends (`IApiResponse<HealthCheck>`).\n *\n * **Why not `data.data` here?** Adapters like Axios wrap the HTTP body in a property also\n * called `data`. That outer `data` is the entire `res.json(...)` object. The inner\n * `IApiResponse.data` is the `HealthCheck` payload — use `.data` on the **returned** value,\n * e.g. `(await fetchHealthCheck(http)).data`.\n */\nexport async function fetchHealthCheck(http: HttpClient): Promise<IApiResponse<HealthCheck>> {\n const { data: body } = await http.get<IApiResponse<HealthCheck>>(HEALTH_CHECK_PATH);\n\n return body;\n}\n","import type {\n AdminCompanyResponse,\n CreateCompanyRequest,\n GetCompaniesQueryRequest,\n IApiResponse,\n IPaginatedResponse,\n PublicCompanyResponse,\n SAdminCompanyResponse,\n UpdateCompanyByAdminRequest,\n UpdateCompanyBySAdminRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst COMPANY_BASE = '/api/v1/companies' as const;\n\n// GET\n\n/**\n * GET /api/v1/companies — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getCompanies(\n http: HttpClient,\n accessToken: string,\n companyQuery: GetCompaniesQueryRequest,\n): Promise<IApiResponse<IPaginatedResponse<PublicCompanyResponse | SAdminCompanyResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedResponse<PublicCompanyResponse | SAdminCompanyResponse>>\n >(`${COMPANY_BASE}`, {\n params: companyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/my — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyCompany(\n http: HttpClient,\n accessToken: string,\n): Promise<IApiResponse<AdminCompanyResponse>> {\n const { data } = await http.get<IApiResponse<AdminCompanyResponse>>(`${COMPANY_BASE}/my`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companyId — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getCompanyById(\n http: HttpClient,\n accessToken: string,\n { companyId }: { companyId: string },\n): Promise<IApiResponse<SAdminCompanyResponse>> {\n const { data } = await http.get<IApiResponse<SAdminCompanyResponse>>(\n `${COMPANY_BASE}/${companyId}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// POST\n\n/**\n * POST /api/v1/companies — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreateCompany(\n http: HttpClient,\n accessToken: string,\n newCompanyRequest: CreateCompanyRequest,\n): Promise<IApiResponse<SAdminCompanyResponse>> {\n const { data } = await http.post<IApiResponse<SAdminCompanyResponse>>(\n `${COMPANY_BASE}`,\n newCompanyRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/companies/my — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateMyCompany(\n http: HttpClient,\n accessToken: string,\n patch: UpdateCompanyByAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateCompanyByAdminRequest>(`${COMPANY_BASE}/my`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n\n/**\n * PATCH /api/v1/companies/:id — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateCompanyBySAdmin(\n http: HttpClient,\n accessToken: string,\n { companyId }: { companyId: string },\n patch: UpdateCompanyBySAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateCompanyBySAdminRequest>(`${COMPANY_BASE}/${companyId}`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n","import type {\n CreateProjectRequest,\n GetProjectsQueryByTokenRequest,\n IApiResponse,\n IPaginatedByTokenResponse,\n OwnerProjectResponse,\n ProjectResponse,\n PublicProjectResponse,\n UpdateProjectRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst PROJECT_BASE = '/api/v1/companies' as const;\n\n// GET\n\n/**\n * GET /api/v1/companies/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProjects(\n http: HttpClient,\n accessToken: string,\n projectQuery: GetProjectsQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>\n >(`${PROJECT_BASE}/projects`, {\n params: projectQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/my/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyProjects(\n http: HttpClient,\n accessToken: string,\n projectQuery: GetProjectsQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ProjectResponse | OwnerProjectResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ProjectResponse | OwnerProjectResponse>>\n >(`${PROJECT_BASE}/my/projects`, {\n params: projectQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/my/projects/:projectSlug — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyProjectBySlug(\n http: HttpClient,\n accessToken: string,\n { projectSlug }: { projectSlug: string },\n): Promise<IApiResponse<ProjectResponse | OwnerProjectResponse>> {\n const { data } = await http.get<IApiResponse<ProjectResponse | OwnerProjectResponse>>(\n `${PROJECT_BASE}/my/projects/${projectSlug}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects/:projectSlug — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProjectByCompanyAndSlug(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n): Promise<IApiResponse<ProjectResponse | PublicProjectResponse>> {\n const { data } = await http.get<IApiResponse<ProjectResponse | PublicProjectResponse>>(\n `${PROJECT_BASE}/${companySlug}/projects/${projectSlug}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProjectsByCompany(\n http: HttpClient,\n accessToken: string,\n { companySlug }: { companySlug: string },\n projectQuery: GetProjectsQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>\n >(`${PROJECT_BASE}/${companySlug}/projects`, {\n params: projectQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n// POST\n\n/**\n * POST /api/v1/companies/my/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreateProjectByAdmin(\n http: HttpClient,\n accessToken: string,\n newProjectRequest: CreateProjectRequest,\n): Promise<IApiResponse<ProjectResponse>> {\n const { data } = await http.post<IApiResponse<ProjectResponse>>(\n `${PROJECT_BASE}/my/projects`,\n newProjectRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * POST /api/v1/companies/:companySlug/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreateProjectBySAdmin(\n http: HttpClient,\n accessToken: string,\n { companySlug }: { companySlug: string },\n newProjectRequest: CreateProjectRequest,\n): Promise<IApiResponse<ProjectResponse>> {\n const { data } = await http.post<IApiResponse<ProjectResponse>>(\n `${PROJECT_BASE}/${companySlug}/projects`,\n newProjectRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/companies/my/projects/:projectSlug — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateProjectByAdmin(\n http: HttpClient,\n accessToken: string,\n { projectSlug }: { projectSlug: string },\n patch: UpdateProjectRequest,\n): Promise<void> {\n await http.patch<void, UpdateProjectRequest>(\n `${PROJECT_BASE}/my/projects/${projectSlug}`,\n patch,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n}\n\n/**\n * PATCH /api/v1/companies/:companySlug/projects/:projectSlug — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateProjectBySAdmin(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n patch: UpdateProjectRequest,\n): Promise<void> {\n await http.patch<void, UpdateProjectRequest>(\n `${PROJECT_BASE}/${companySlug}/projects/${projectSlug}`,\n patch,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n}\n","import type {\n BuyerPropertyResponse,\n CreatePropertyRequest,\n GetPropertiesQueryByTokenRequest,\n IApiResponse,\n IPaginatedByTokenResponse,\n PropertyResponse,\n PublicPropertyResponse,\n UpdatePropertyRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst PROPERTY_BASE = '/api/v1' as const;\n\n// GET\n\n/**\n * GET /api/v1/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProperties(\n http: HttpClient,\n accessToken: string,\n propertyQuery: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>\n >(`${PROPERTY_BASE}/properties`, {\n params: propertyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/properties/my — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyProperties(\n http: HttpClient,\n accessToken: string,\n propertyQuery: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<BuyerPropertyResponse>>> {\n const { data } = await http.get<IApiResponse<IPaginatedByTokenResponse<BuyerPropertyResponse>>>(\n `${PROPERTY_BASE}/properties/my`,\n {\n params: propertyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/properties/my/:propertyId — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyPropertyById(\n http: HttpClient,\n accessToken: string,\n { propertyId }: { propertyId: string },\n): Promise<IApiResponse<BuyerPropertyResponse>> {\n const { data } = await http.get<IApiResponse<BuyerPropertyResponse>>(\n `${PROPERTY_BASE}/properties/my/${propertyId}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/my/projects/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertiesByAdmin(\n http: HttpClient,\n accessToken: string,\n propertyQuery: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<PropertyResponse>>> {\n const { data } = await http.get<IApiResponse<IPaginatedByTokenResponse<PropertyResponse>>>(\n `${PROPERTY_BASE}/companies/my/projects/properties`,\n {\n params: propertyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/my/projects/:projectSlug/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertiesByProjectByAdmin(\n http: HttpClient,\n accessToken: string,\n { projectSlug }: { projectSlug: string },\n propertyQuery: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<PropertyResponse>>> {\n const { data } = await http.get<IApiResponse<IPaginatedByTokenResponse<PropertyResponse>>>(\n `${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties`,\n {\n params: propertyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/my/projects/:projectSlug/properties/:propertyCode — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertyByProjectAndCodeByAdmin(\n http: HttpClient,\n accessToken: string,\n { projectSlug, propertyCode }: { projectSlug: string; propertyCode: string },\n): Promise<IApiResponse<PropertyResponse>> {\n const { data } = await http.get<IApiResponse<PropertyResponse>>(\n `${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties/${propertyCode}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects/:projectSlug/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertiesByProject(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n propertyQuery: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>\n >(`${PROPERTY_BASE}/companies/${companySlug}/projects/${projectSlug}/properties`, {\n params: propertyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects/:projectSlug/properties/:propertyCode — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertyByProjectAndCode(\n http: HttpClient,\n accessToken: string,\n {\n companySlug,\n projectSlug,\n propertyCode,\n }: { companySlug: string; projectSlug: string; propertyCode: string },\n): Promise<IApiResponse<PropertyResponse | PublicPropertyResponse>> {\n const { data } = await http.get<IApiResponse<PropertyResponse | PublicPropertyResponse>>(\n `${PROPERTY_BASE}/companies/${companySlug}/projects/${projectSlug}/properties/${propertyCode}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// POST\n\n/**\n * POST /api/v1/companies/my/projects/:projectSlug/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreatePropertyByAdmin(\n http: HttpClient,\n accessToken: string,\n { projectSlug }: { projectSlug: string },\n newPropertyRequest: CreatePropertyRequest,\n): Promise<IApiResponse<PropertyResponse>> {\n const { data } = await http.post<IApiResponse<PropertyResponse>>(\n `${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties`,\n newPropertyRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * POST /api/v1/companies/:companySlug/projects/:projectSlug/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreatePropertyBySAdmin(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n newPropertyRequest: CreatePropertyRequest,\n): Promise<IApiResponse<PropertyResponse>> {\n const { data } = await http.post<IApiResponse<PropertyResponse>>(\n `${PROPERTY_BASE}/companies/${companySlug}/projects/${projectSlug}/properties`,\n newPropertyRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/companies/my/projects/:projectSlug/properties/:propertyCode — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdatePropertyByAdmin(\n http: HttpClient,\n accessToken: string,\n { projectSlug, propertyCode }: { projectSlug: string; propertyCode: string },\n patch: UpdatePropertyRequest,\n): Promise<void> {\n await http.patch<void, UpdatePropertyRequest>(\n `${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties/${propertyCode}`,\n patch,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n}\n\n/**\n * PATCH /api/v1/companies/:companySlug/projects/:projectSlug/properties/:propertyCode — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdatePropertyBySAdmin(\n http: HttpClient,\n accessToken: string,\n {\n companySlug,\n projectSlug,\n propertyCode,\n }: { companySlug: string; projectSlug: string; propertyCode: string },\n patch: UpdatePropertyRequest,\n): Promise<void> {\n await http.patch<void, UpdatePropertyRequest>(\n `${PROPERTY_BASE}/companies/${companySlug}/projects/${projectSlug}/properties/${propertyCode}`,\n patch,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n}\n","import {\n getGoogleOAuthStart,\n getMe,\n postGoogleOAuthCallback,\n postLogin,\n postLogout,\n postRefresh,\n postRegister,\n} from './endpoints/auth';\nimport {\n getUserById,\n getUsers,\n patchUpdateMe,\n patchUpdateRoleUserByAdmin,\n patchUpdateUserBySAdmin,\n} from './endpoints/user';\nimport { fetchHealthCheck } from './endpoints/health-check';\nimport type { HttpClient } from './http-client';\nimport {\n getCompanies,\n getCompanyById,\n getMyCompany,\n patchUpdateCompanyBySAdmin,\n patchUpdateMyCompany,\n postCreateCompany,\n} from './endpoints/company';\nimport {\n getMyProjectBySlug,\n getMyProjects,\n getProjectByCompanyAndSlug,\n getProjectsByCompany,\n getProjects,\n patchUpdateProjectByAdmin,\n patchUpdateProjectBySAdmin,\n postCreateProjectByAdmin,\n postCreateProjectBySAdmin,\n} from './endpoints/project';\nimport {\n getMyProperties,\n getMyPropertyById,\n getProperties,\n getPropertiesByAdmin,\n getPropertiesByProject,\n getPropertiesByProjectByAdmin,\n getPropertyByProjectAndCode,\n getPropertyByProjectAndCodeByAdmin,\n patchUpdatePropertyByAdmin,\n patchUpdatePropertyBySAdmin,\n postCreatePropertyByAdmin,\n postCreatePropertyBySAdmin,\n} from './endpoints/property';\n\nexport interface CreateApiClientOptions {\n /**\n * Preconfigured HTTP client (e.g. Axios instance with `baseURL` set).\n * Paths in this library are relative to that base (e.g. `/api/v1/...`).\n * Both `get` and `post` are required for auth flows.\n */\n readonly http: HttpClient;\n}\n\nexport interface ApiClient {\n readonly healthCheck: () => ReturnType<typeof fetchHealthCheck>;\n readonly auth: {\n readonly register: (\n body: Parameters<typeof postRegister>[1],\n ) => ReturnType<typeof postRegister>;\n readonly login: (body: Parameters<typeof postLogin>[1]) => ReturnType<typeof postLogin>;\n readonly getGoogleOAuthStart: (redirectUri: string) => ReturnType<typeof getGoogleOAuthStart>;\n readonly postGoogleOAuthCallback: (\n body: Parameters<typeof postGoogleOAuthCallback>[1],\n ) => ReturnType<typeof postGoogleOAuthCallback>;\n readonly refresh: (body: Parameters<typeof postRefresh>[1]) => ReturnType<typeof postRefresh>;\n readonly logout: (body: Parameters<typeof postLogout>[1]) => ReturnType<typeof postLogout>;\n readonly me: (accessToken: string) => ReturnType<typeof getMe>;\n };\n readonly user: {\n readonly users: (\n accessToken: string,\n userQuery: Parameters<typeof getUsers>[2],\n ) => ReturnType<typeof getUsers>;\n readonly userById: (\n accessToken: Parameters<typeof getUserById>[1],\n { userId }: Parameters<typeof getUserById>[2],\n ) => ReturnType<typeof getUserById>;\n readonly updateMe: (\n accessToken: Parameters<typeof patchUpdateMe>[1],\n patch: Parameters<typeof patchUpdateMe>[2],\n ) => ReturnType<typeof patchUpdateMe>;\n readonly updateRoleUserByAdmin: (\n accessToken: Parameters<typeof patchUpdateRoleUserByAdmin>[1],\n { userId }: Parameters<typeof patchUpdateRoleUserByAdmin>[2],\n body: Parameters<typeof patchUpdateRoleUserByAdmin>[3],\n ) => ReturnType<typeof patchUpdateRoleUserByAdmin>;\n readonly updateUserBySAdmin: (\n accessToken: Parameters<typeof patchUpdateUserBySAdmin>[1],\n { userId }: Parameters<typeof patchUpdateUserBySAdmin>[2],\n patch: Parameters<typeof patchUpdateUserBySAdmin>[3],\n ) => ReturnType<typeof patchUpdateUserBySAdmin>;\n };\n readonly company: {\n readonly companies: (\n accessToken: Parameters<typeof getCompanies>[1],\n companyQuery: Parameters<typeof getCompanies>[2],\n ) => ReturnType<typeof getCompanies>;\n readonly myCompany: (\n accessToken: Parameters<typeof getMyCompany>[1],\n ) => ReturnType<typeof getMyCompany>;\n readonly companyById: (\n accessToken: Parameters<typeof getCompanyById>[1],\n { companyId }: Parameters<typeof getCompanyById>[2],\n ) => ReturnType<typeof getCompanyById>;\n readonly createCompany: (\n accessToken: Parameters<typeof postCreateCompany>[1],\n newCompanyRequest: Parameters<typeof postCreateCompany>[2],\n ) => ReturnType<typeof postCreateCompany>;\n readonly updateMyCompany: (\n accessToken: Parameters<typeof patchUpdateMyCompany>[1],\n patch: Parameters<typeof patchUpdateMyCompany>[2],\n ) => ReturnType<typeof patchUpdateMyCompany>;\n readonly updateCompanyBySAdmin: (\n accessToken: Parameters<typeof patchUpdateCompanyBySAdmin>[1],\n { companyId }: Parameters<typeof patchUpdateCompanyBySAdmin>[2],\n patch: Parameters<typeof patchUpdateCompanyBySAdmin>[3],\n ) => ReturnType<typeof patchUpdateCompanyBySAdmin>;\n };\n readonly project: {\n readonly projects: (\n accessToken: Parameters<typeof getProjects>[1],\n projectQuery: Parameters<typeof getProjects>[2],\n ) => ReturnType<typeof getProjects>;\n readonly myProjects: (\n accessToken: Parameters<typeof getMyProjects>[1],\n projectQuery: Parameters<typeof getMyProjects>[2],\n ) => ReturnType<typeof getMyProjects>;\n readonly myProjectBySlug: (\n accessToken: Parameters<typeof getMyProjectBySlug>[1],\n { projectSlug }: Parameters<typeof getMyProjectBySlug>[2],\n ) => ReturnType<typeof getMyProjectBySlug>;\n readonly projectByCompanyAndSlug: (\n accessToken: Parameters<typeof getProjectByCompanyAndSlug>[1],\n { companySlug, projectSlug }: Parameters<typeof getProjectByCompanyAndSlug>[2],\n ) => ReturnType<typeof getProjectByCompanyAndSlug>;\n readonly projectsByCompany: (\n accessToken: Parameters<typeof getProjectsByCompany>[1],\n { companySlug }: Parameters<typeof getProjectsByCompany>[2],\n projectQuery: Parameters<typeof getProjectsByCompany>[3],\n ) => ReturnType<typeof getProjectsByCompany>;\n readonly createProjectByAdmin: (\n accessToken: Parameters<typeof postCreateProjectByAdmin>[1],\n newProjectRequest: Parameters<typeof postCreateProjectByAdmin>[2],\n ) => ReturnType<typeof postCreateProjectByAdmin>;\n readonly createProjectBySAdmin: (\n accessToken: Parameters<typeof postCreateProjectBySAdmin>[1],\n { companySlug }: Parameters<typeof postCreateProjectBySAdmin>[2],\n newProjectRequest: Parameters<typeof postCreateProjectBySAdmin>[3],\n ) => ReturnType<typeof postCreateProjectBySAdmin>;\n readonly updateProjectByAdmin: (\n accessToken: Parameters<typeof patchUpdateProjectByAdmin>[1],\n { projectSlug }: Parameters<typeof patchUpdateProjectByAdmin>[2],\n patch: Parameters<typeof patchUpdateProjectByAdmin>[3],\n ) => ReturnType<typeof patchUpdateProjectByAdmin>;\n readonly updateProjectBySAdmin: (\n accessToken: Parameters<typeof patchUpdateProjectBySAdmin>[1],\n { companySlug, projectSlug }: Parameters<typeof patchUpdateProjectBySAdmin>[2],\n patch: Parameters<typeof patchUpdateProjectBySAdmin>[3],\n ) => ReturnType<typeof patchUpdateProjectBySAdmin>;\n };\n readonly property: {\n readonly properties: (\n accessToken: Parameters<typeof getProperties>[1],\n propertyQuery: Parameters<typeof getProperties>[2],\n ) => ReturnType<typeof getProperties>;\n readonly myProperties: (\n accessToken: Parameters<typeof getMyProperties>[1],\n propertyQuery: Parameters<typeof getMyProperties>[2],\n ) => ReturnType<typeof getMyProperties>;\n readonly myPropertyById: (\n accessToken: Parameters<typeof getMyPropertyById>[1],\n { propertyId }: Parameters<typeof getMyPropertyById>[2],\n ) => ReturnType<typeof getMyPropertyById>;\n readonly propertiesByAdmin: (\n accessToken: Parameters<typeof getPropertiesByAdmin>[1],\n propertyQuery: Parameters<typeof getPropertiesByAdmin>[2],\n ) => ReturnType<typeof getPropertiesByAdmin>;\n readonly propertiesByProjectByAdmin: (\n accessToken: Parameters<typeof getPropertiesByProjectByAdmin>[1],\n { projectSlug }: Parameters<typeof getPropertiesByProjectByAdmin>[2],\n propertyQuery: Parameters<typeof getPropertiesByProjectByAdmin>[3],\n ) => ReturnType<typeof getPropertiesByProjectByAdmin>;\n readonly propertyByProjectAndCodeByAdmin: (\n accessToken: Parameters<typeof getPropertyByProjectAndCodeByAdmin>[1],\n { projectSlug, propertyCode }: Parameters<typeof getPropertyByProjectAndCodeByAdmin>[2],\n ) => ReturnType<typeof getPropertyByProjectAndCodeByAdmin>;\n readonly propertiesByProject: (\n accessToken: Parameters<typeof getPropertiesByProject>[1],\n { companySlug, projectSlug }: Parameters<typeof getPropertiesByProject>[2],\n propertyQuery: Parameters<typeof getPropertiesByProject>[3],\n ) => ReturnType<typeof getPropertiesByProject>;\n readonly propertyByProjectAndCode: (\n accessToken: Parameters<typeof getPropertyByProjectAndCode>[1],\n { companySlug, projectSlug, propertyCode }: Parameters<typeof getPropertyByProjectAndCode>[2],\n ) => ReturnType<typeof getPropertyByProjectAndCode>;\n readonly createPropertyByAdmin: (\n accessToken: Parameters<typeof postCreatePropertyByAdmin>[1],\n { projectSlug }: Parameters<typeof postCreatePropertyByAdmin>[2],\n newPropertyRequest: Parameters<typeof postCreatePropertyByAdmin>[3],\n ) => ReturnType<typeof postCreatePropertyByAdmin>;\n readonly createPropertyBySAdmin: (\n accessToken: Parameters<typeof postCreatePropertyBySAdmin>[1],\n { companySlug, projectSlug }: Parameters<typeof postCreatePropertyBySAdmin>[2],\n newPropertyRequest: Parameters<typeof postCreatePropertyBySAdmin>[3],\n ) => ReturnType<typeof postCreatePropertyBySAdmin>;\n readonly updatePropertyByAdmin: (\n accessToken: Parameters<typeof patchUpdatePropertyByAdmin>[1],\n { projectSlug, propertyCode }: Parameters<typeof patchUpdatePropertyByAdmin>[2],\n patch: Parameters<typeof patchUpdatePropertyByAdmin>[3],\n ) => ReturnType<typeof patchUpdatePropertyByAdmin>;\n readonly updatePropertyBySAdmin: (\n accessToken: Parameters<typeof patchUpdatePropertyBySAdmin>[1],\n { companySlug, projectSlug, propertyCode }: Parameters<typeof patchUpdatePropertyBySAdmin>[2],\n patch: Parameters<typeof patchUpdatePropertyBySAdmin>[3],\n ) => ReturnType<typeof patchUpdatePropertyBySAdmin>;\n };\n}\n\n/**\n * Creates a typed API client backed by the provided HTTP implementation.\n */\nexport function createApiClient(options: CreateApiClientOptions): ApiClient {\n const { http } = options;\n\n return {\n healthCheck: () => fetchHealthCheck(http),\n auth: {\n register: (body) => postRegister(http, body),\n login: (body) => postLogin(http, body),\n getGoogleOAuthStart: (redirectUri) => getGoogleOAuthStart(http, redirectUri),\n postGoogleOAuthCallback: (body) => postGoogleOAuthCallback(http, body),\n refresh: (body) => postRefresh(http, body),\n logout: (body) => postLogout(http, body),\n me: (accessToken) => getMe(http, accessToken),\n },\n user: {\n users: (accessToken, userQuery) => getUsers(http, accessToken, userQuery),\n userById: (accessToken, { userId }) => getUserById(http, accessToken, { userId }),\n updateMe: (accessToken, patch) => patchUpdateMe(http, accessToken, patch),\n updateRoleUserByAdmin: (accessToken, { userId }, body) =>\n patchUpdateRoleUserByAdmin(http, accessToken, { userId }, body),\n updateUserBySAdmin: (accessToken, { userId }, patch) =>\n patchUpdateUserBySAdmin(http, accessToken, { userId }, patch),\n },\n company: {\n companies: (accessToken, companyQuery) => getCompanies(http, accessToken, companyQuery),\n myCompany: (accessToken) => getMyCompany(http, accessToken),\n companyById: (accessToken, { companyId }) => getCompanyById(http, accessToken, { companyId }),\n createCompany: (accessToken, newCompanyRequest) =>\n postCreateCompany(http, accessToken, newCompanyRequest),\n updateMyCompany: (accessToken, patch) => patchUpdateMyCompany(http, accessToken, patch),\n updateCompanyBySAdmin: (accessToken, { companyId }, patch) =>\n patchUpdateCompanyBySAdmin(http, accessToken, { companyId }, patch),\n },\n project: {\n projects: (accessToken, projectQuery) => getProjects(http, accessToken, projectQuery),\n myProjects: (accessToken, projectQuery) => getMyProjects(http, accessToken, projectQuery),\n myProjectBySlug: (accessToken, { projectSlug }) =>\n getMyProjectBySlug(http, accessToken, { projectSlug }),\n projectByCompanyAndSlug: (accessToken, { companySlug, projectSlug }) =>\n getProjectByCompanyAndSlug(http, accessToken, { companySlug, projectSlug }),\n projectsByCompany: (accessToken, { companySlug }, projectQuery) =>\n getProjectsByCompany(http, accessToken, { companySlug }, projectQuery),\n createProjectByAdmin: (accessToken, newProjectRequest) =>\n postCreateProjectByAdmin(http, accessToken, newProjectRequest),\n createProjectBySAdmin: (accessToken, { companySlug }, newProjectRequest) =>\n postCreateProjectBySAdmin(http, accessToken, { companySlug }, newProjectRequest),\n updateProjectByAdmin: (accessToken, { projectSlug }, patch) =>\n patchUpdateProjectByAdmin(http, accessToken, { projectSlug }, patch),\n updateProjectBySAdmin: (accessToken, { companySlug, projectSlug }, patch) =>\n patchUpdateProjectBySAdmin(http, accessToken, { companySlug, projectSlug }, patch),\n },\n property: {\n properties: (accessToken, propertyQuery) => getProperties(http, accessToken, propertyQuery),\n myProperties: (accessToken, propertyQuery) =>\n getMyProperties(http, accessToken, propertyQuery),\n myPropertyById: (accessToken, { propertyId }) =>\n getMyPropertyById(http, accessToken, { propertyId }),\n propertiesByAdmin: (accessToken, propertyQuery) =>\n getPropertiesByAdmin(http, accessToken, propertyQuery),\n propertiesByProjectByAdmin: (accessToken, { projectSlug }, propertyQuery) =>\n getPropertiesByProjectByAdmin(http, accessToken, { projectSlug }, propertyQuery),\n propertyByProjectAndCodeByAdmin: (accessToken, { projectSlug, propertyCode }) =>\n getPropertyByProjectAndCodeByAdmin(http, accessToken, { projectSlug, propertyCode }),\n propertiesByProject: (accessToken, { companySlug, projectSlug }, propertyQuery) =>\n getPropertiesByProject(http, accessToken, { companySlug, projectSlug }, propertyQuery),\n propertyByProjectAndCode: (accessToken, { companySlug, projectSlug, propertyCode }) =>\n getPropertyByProjectAndCode(http, accessToken, { companySlug, projectSlug, propertyCode }),\n createPropertyByAdmin: (accessToken, { projectSlug }, newPropertyRequest) =>\n postCreatePropertyByAdmin(http, accessToken, { projectSlug }, newPropertyRequest),\n createPropertyBySAdmin: (accessToken, { companySlug, projectSlug }, newPropertyRequest) =>\n postCreatePropertyBySAdmin(\n http,\n accessToken,\n { companySlug, projectSlug },\n newPropertyRequest,\n ),\n updatePropertyByAdmin: (accessToken, { projectSlug, propertyCode }, patch) =>\n patchUpdatePropertyByAdmin(http, accessToken, { projectSlug, propertyCode }, patch),\n updatePropertyBySAdmin: (accessToken, { companySlug, projectSlug, propertyCode }, patch) =>\n patchUpdatePropertyBySAdmin(\n http,\n accessToken,\n { companySlug, projectSlug, propertyCode },\n patch,\n ),\n },\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/endpoints/health-check.ts","../src/endpoints/auth.ts","../src/endpoints/user.ts","../src/endpoints/company.ts","../src/endpoints/project.ts","../src/endpoints/property.ts","../src/create-api-client.ts"],"names":["API_BASE","COMPANY_BASE"],"mappings":"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","file":"index.js","sourcesContent":["import type { IApiResponse, HealthCheck } from '@kulkan/kulterra-contracts';\nimport type { HttpClient } from '../http-client';\n\n/** Same path as `/api/${v1}/health-check` on the server when `v1` is the string `'v1'`. */\nconst HEALTH_CHECK_PATH = '/api/v1/health-check' as const;\n\n/**\n * GET /api/v1/health-check — server liveness.\n *\n * Returns the full JSON the server sends (`IApiResponse<HealthCheck>`).\n *\n * **Why not `data.data` here?** Adapters like Axios wrap the HTTP body in a property also\n * called `data`. That outer `data` is the entire `res.json(...)` object. The inner\n * `IApiResponse.data` is the `HealthCheck` payload — use `.data` on the **returned** value,\n * e.g. `(await fetchHealthCheck(http)).data`.\n */\nexport async function fetchHealthCheck(http: HttpClient): Promise<IApiResponse<HealthCheck>> {\n const { data: body } = await http.get<IApiResponse<HealthCheck>>(HEALTH_CHECK_PATH);\n\n return body;\n}\n","import type {\n AuthSessionResponse,\n AuthUserResponse,\n IApiResponse,\n LoginRequest,\n LogoutRequest,\n OAuthGoogleCallbackRequest,\n OAuthGoogleStartResponse,\n RefreshRequest,\n RegisterRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst AUTH_BASE = '/api/v1/auth' as const;\n\n/**\n * POST /api/v1/auth/register\n */\nexport async function postRegister(\n http: HttpClient,\n body: RegisterRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, RegisterRequest>(\n `${AUTH_BASE}/register`,\n body,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/login\n */\nexport async function postLogin(\n http: HttpClient,\n body: LoginRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, LoginRequest>(\n `${AUTH_BASE}/login`,\n body,\n );\n return data;\n}\n\n/**\n * GET /api/v1/auth/oauth/google/start?redirectUri=...\n */\nexport async function getGoogleOAuthStart(\n http: HttpClient,\n redirectUri: string,\n): Promise<IApiResponse<OAuthGoogleStartResponse>> {\n const q = new URLSearchParams({ redirectUri });\n const { data } = await http.get<IApiResponse<OAuthGoogleStartResponse>>(\n `${AUTH_BASE}/oauth/google/start?${q.toString()}`,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/oauth/google/callback\n */\nexport async function postGoogleOAuthCallback(\n http: HttpClient,\n body: OAuthGoogleCallbackRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, OAuthGoogleCallbackRequest>(\n `${AUTH_BASE}/oauth/google/callback`,\n body,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/refresh\n */\nexport async function postRefresh(\n http: HttpClient,\n body: RefreshRequest,\n): Promise<IApiResponse<AuthSessionResponse>> {\n const { data } = await http.post<IApiResponse<AuthSessionResponse>, RefreshRequest>(\n `${AUTH_BASE}/refresh`,\n body,\n );\n return data;\n}\n\n/**\n * POST /api/v1/auth/logout — 204 No Content (no JSON body).\n */\nexport async function postLogout(http: HttpClient, body: LogoutRequest): Promise<void> {\n await http.post<undefined, LogoutRequest>(`${AUTH_BASE}/logout`, body);\n}\n\n/**\n * GET /api/v1/auth/me — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMe(\n http: HttpClient,\n accessToken: string,\n): Promise<IApiResponse<AuthUserResponse>> {\n const { data } = await http.get<IApiResponse<AuthUserResponse>>(`${AUTH_BASE}/me`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n","import type {\n GetUsersQueryByTokenRequest,\n IApiResponse,\n IPaginatedByTokenResponse,\n ToAdminUsersResponse,\n ToSAdminUsersResponse,\n UpdateUserBySAdminRequest,\n UpdateUserByUserRequest,\n UpdateUserRoleByAdminRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst API_BASE = '/api/v1' as const;\nconst USER_BASE = `${API_BASE}/users` as const;\n\n// GET\n\n/**\n * GET /api/v1/users — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getUsers(\n http: HttpClient,\n accessToken: string,\n userQuery: GetUsersQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ToAdminUsersResponse | ToSAdminUsersResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ToAdminUsersResponse | ToSAdminUsersResponse>>\n >(USER_BASE, {\n params: userQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/users/:userId — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getUserById(\n http: HttpClient,\n accessToken: string,\n { userId }: { userId: string },\n): Promise<IApiResponse<ToSAdminUsersResponse>> {\n const { data } = await http.get<IApiResponse<ToSAdminUsersResponse>>(`${USER_BASE}/${userId}`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/me — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateMe(\n http: HttpClient,\n accessToken: string,\n patch: UpdateUserByUserRequest,\n): Promise<void> {\n await http.patch<void, UpdateUserByUserRequest>(`${API_BASE}/me`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n\n/**\n * PATCH /api/v1/users/:userId/role — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateUserRoleByAdmin(\n http: HttpClient,\n accessToken: string,\n { userId }: { userId: string },\n body: UpdateUserRoleByAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateUserRoleByAdminRequest>(`${USER_BASE}/${userId}/role`, body, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n\n/**\n * PATCH /api/v1/users/:userId — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateUserBySAdmin(\n http: HttpClient,\n accessToken: string,\n { userId }: { userId: string },\n patch: UpdateUserBySAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateUserBySAdminRequest>(`${USER_BASE}/${userId}`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n","import type {\n AdminCompanyResponse,\n CreateCompanyRequest,\n GetCompaniesQueryRequest,\n IApiResponse,\n IPaginatedResponse,\n PublicCompanyResponse,\n SAdminCompanyResponse,\n UpdateCompanyByAdminRequest,\n UpdateCompanyBySAdminRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst API_BASE = '/api/v1' as const;\nconst COMPANY_BASE = `${API_BASE}/companies` as const;\n\n// GET\n\n/**\n * GET /api/v1/companies — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getCompanies(\n http: HttpClient,\n accessToken: string,\n companyQuery: GetCompaniesQueryRequest,\n): Promise<IApiResponse<IPaginatedResponse<PublicCompanyResponse | SAdminCompanyResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedResponse<PublicCompanyResponse | SAdminCompanyResponse>>\n >(COMPANY_BASE, {\n params: companyQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/me/company — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyCompany(\n http: HttpClient,\n accessToken: string,\n): Promise<IApiResponse<AdminCompanyResponse>> {\n const { data } = await http.get<IApiResponse<AdminCompanyResponse>>(`${API_BASE}/me/company`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getCompanyBySlug(\n http: HttpClient,\n accessToken: string,\n { companySlug }: { companySlug: string },\n): Promise<IApiResponse<PublicCompanyResponse | SAdminCompanyResponse>> {\n const { data } = await http.get<IApiResponse<PublicCompanyResponse | SAdminCompanyResponse>>(\n `${COMPANY_BASE}/${companySlug}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// POST\n\n/**\n * POST /api/v1/companies — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreateCompany(\n http: HttpClient,\n accessToken: string,\n newCompanyRequest: CreateCompanyRequest,\n): Promise<IApiResponse<SAdminCompanyResponse>> {\n const { data } = await http.post<IApiResponse<SAdminCompanyResponse>>(\n COMPANY_BASE,\n newCompanyRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/me/company — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateMyCompany(\n http: HttpClient,\n accessToken: string,\n patch: UpdateCompanyByAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateCompanyByAdminRequest>(`${API_BASE}/me/company`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n\n/**\n * PATCH /api/v1/companies/:companyId — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateCompanyBySAdmin(\n http: HttpClient,\n accessToken: string,\n { companyId }: { companyId: string },\n patch: UpdateCompanyBySAdminRequest,\n): Promise<void> {\n await http.patch<void, UpdateCompanyBySAdminRequest>(`${COMPANY_BASE}/${companyId}`, patch, {\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n}\n","import type {\n CreateProjectRequest,\n GetProjectsQueryByTokenRequest,\n IApiResponse,\n IPaginatedByTokenResponse,\n OwnerProjectResponse,\n ProjectResponse,\n PublicProjectResponse,\n UpdateProjectRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst API_BASE = '/api/v1' as const;\nconst COMPANY_BASE = `${API_BASE}/companies` as const;\n\n// GET\n\n/**\n * GET /api/v1/companies/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProjects(\n http: HttpClient,\n accessToken: string,\n projectQuery: GetProjectsQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>\n >(`${API_BASE}/projects`, {\n params: projectQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/me/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyProjects(\n http: HttpClient,\n accessToken: string,\n projectQuery: GetProjectsQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<OwnerProjectResponse>>> {\n const { data } = await http.get<IApiResponse<IPaginatedByTokenResponse<OwnerProjectResponse>>>(\n `${API_BASE}/me/projects`,\n {\n params: projectQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/me/projects/:projectId — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyProjectById(\n http: HttpClient,\n accessToken: string,\n { projectId }: { projectId: string },\n): Promise<IApiResponse<OwnerProjectResponse>> {\n const { data } = await http.get<IApiResponse<OwnerProjectResponse>>(\n `${API_BASE}/me/projects/${projectId}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects/:projectSlug — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProjectByCompanyAndSlug(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n): Promise<IApiResponse<ProjectResponse | PublicProjectResponse>> {\n const { data } = await http.get<IApiResponse<ProjectResponse | PublicProjectResponse>>(\n `${COMPANY_BASE}/${companySlug}/projects/${projectSlug}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProjectsByCompany(\n http: HttpClient,\n accessToken: string,\n { companySlug }: { companySlug: string },\n projectQuery: GetProjectsQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<ProjectResponse | PublicProjectResponse>>\n >(`${COMPANY_BASE}/${companySlug}/projects`, {\n params: projectQuery,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n// POST\n\n/**\n * POST /api/v1/companies/:companySlug/projects — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreateProject(\n http: HttpClient,\n accessToken: string,\n { companySlug }: { companySlug: string },\n newProjectRequest: CreateProjectRequest,\n): Promise<IApiResponse<ProjectResponse>> {\n const { data } = await http.post<IApiResponse<ProjectResponse>>(\n `${COMPANY_BASE}/${companySlug}/projects`,\n newProjectRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/companies/:companySlug/projects/:projectSlug — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateProject(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n patch: UpdateProjectRequest,\n): Promise<void> {\n await http.patch<void, UpdateProjectRequest>(\n `${COMPANY_BASE}/${companySlug}/projects/${projectSlug}`,\n patch,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n}\n","import type {\n BuyerPropertyResponse,\n CreatePropertyRequest,\n GetPropertiesQueryByTokenRequest,\n IApiResponse,\n IPaginatedByTokenResponse,\n PropertyResponse,\n PublicPropertyResponse,\n UpdatePropertyRequest,\n} from '@kulkan/kulterra-contracts';\n\nimport type { HttpClient } from '../http-client';\n\nconst API_BASE = '/api/v1' as const;\nconst COMPANY_BASE = `${API_BASE}/companies` as const;\n\n// GET\n\n/**\n * GET /api/v1/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getProperties(\n http: HttpClient,\n accessToken: string,\n query: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>\n >(`${API_BASE}/properties`, {\n params: query,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/me/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyProperties(\n http: HttpClient,\n accessToken: string,\n query: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<BuyerPropertyResponse>>> {\n const { data } = await http.get<IApiResponse<IPaginatedByTokenResponse<BuyerPropertyResponse>>>(\n `${API_BASE}/me/properties`,\n {\n params: query,\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/me/properties/:propertyId — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getMyPropertyById(\n http: HttpClient,\n accessToken: string,\n { propertyId }: { propertyId: string },\n): Promise<IApiResponse<BuyerPropertyResponse>> {\n const { data } = await http.get<IApiResponse<BuyerPropertyResponse>>(\n `${API_BASE}/me/properties/${propertyId}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects/:projectSlug/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertiesByProject(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n query: GetPropertiesQueryByTokenRequest,\n): Promise<IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>> {\n const { data } = await http.get<\n IApiResponse<IPaginatedByTokenResponse<PropertyResponse | PublicPropertyResponse>>\n >(`${COMPANY_BASE}/${companySlug}/projects/${projectSlug}/properties`, {\n params: query,\n headers: { Authorization: `Bearer ${accessToken}` },\n });\n return data;\n}\n\n/**\n * GET /api/v1/companies/:companySlug/projects/:projectSlug/properties/:propertyCode — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function getPropertyByProjectAndCode(\n http: HttpClient,\n accessToken: string,\n {\n companySlug,\n projectSlug,\n propertyCode,\n }: { companySlug: string; projectSlug: string; propertyCode: string },\n): Promise<IApiResponse<PropertyResponse | PublicPropertyResponse>> {\n const { data } = await http.get<IApiResponse<PropertyResponse | PublicPropertyResponse>>(\n `${COMPANY_BASE}/${companySlug}/projects/${projectSlug}/properties/${propertyCode}`,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// POST\n\n/**\n * POST /api/v1/companies/:companySlug/projects/:projectSlug/properties — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function postCreateProperty(\n http: HttpClient,\n accessToken: string,\n { companySlug, projectSlug }: { companySlug: string; projectSlug: string },\n newPropertyRequest: CreatePropertyRequest,\n): Promise<IApiResponse<PropertyResponse>> {\n const { data } = await http.post<IApiResponse<PropertyResponse>>(\n `${COMPANY_BASE}/${companySlug}/projects/${projectSlug}/properties`,\n newPropertyRequest,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n return data;\n}\n\n// PATCH\n\n/**\n * PATCH /api/v1/companies/:companySlug/projects/:projectSlug/properties/:propertyCode — 204 No Content (no JSON body) — requires `Authorization: Bearer <accessToken>`.\n */\nexport async function patchUpdateProperty(\n http: HttpClient,\n accessToken: string,\n {\n companySlug,\n projectSlug,\n propertyCode,\n }: { companySlug: string; projectSlug: string; propertyCode: string },\n patch: UpdatePropertyRequest,\n): Promise<void> {\n await http.patch<void, UpdatePropertyRequest>(\n `${COMPANY_BASE}/${companySlug}/projects/${projectSlug}/properties/${propertyCode}`,\n patch,\n {\n headers: { Authorization: `Bearer ${accessToken}` },\n },\n );\n}\n","import { fetchHealthCheck } from './endpoints/health-check';\nimport type { HttpClient } from './http-client';\nimport {\n getGoogleOAuthStart,\n getMe,\n postGoogleOAuthCallback,\n postLogin,\n postLogout,\n postRefresh,\n postRegister,\n} from './endpoints/auth';\nimport {\n getUserById,\n getUsers,\n patchUpdateMe,\n patchUpdateUserBySAdmin,\n patchUpdateUserRoleByAdmin,\n} from './endpoints/user';\nimport {\n getCompanies,\n getCompanyBySlug,\n getMyCompany,\n patchUpdateCompanyBySAdmin,\n patchUpdateMyCompany,\n postCreateCompany,\n} from './endpoints/company';\nimport {\n getMyProjectById,\n getMyProjects,\n getProjectByCompanyAndSlug,\n getProjects,\n getProjectsByCompany,\n patchUpdateProject,\n postCreateProject,\n} from './endpoints/project';\nimport {\n getMyProperties,\n getMyPropertyById,\n getProperties,\n getPropertiesByProject,\n getPropertyByProjectAndCode,\n patchUpdateProperty,\n postCreateProperty,\n} from './endpoints/property';\n\nexport interface CreateApiClientOptions {\n /**\n * Preconfigured HTTP client (e.g. Axios instance with `baseURL` set).\n * Paths in this library are relative to that base (e.g. `/api/v1/...`).\n * The HTTP implementation must support the methods used by this client,\n * including GET, POST, and PATCH.\n */\n readonly http: HttpClient;\n}\n\nexport interface ApiClient {\n readonly healthCheck: () => ReturnType<typeof fetchHealthCheck>;\n readonly auth: {\n readonly register: (\n body: Parameters<typeof postRegister>[1],\n ) => ReturnType<typeof postRegister>;\n readonly login: (body: Parameters<typeof postLogin>[1]) => ReturnType<typeof postLogin>;\n readonly getGoogleOAuthStart: (redirectUri: string) => ReturnType<typeof getGoogleOAuthStart>;\n readonly postGoogleOAuthCallback: (\n body: Parameters<typeof postGoogleOAuthCallback>[1],\n ) => ReturnType<typeof postGoogleOAuthCallback>;\n readonly refresh: (body: Parameters<typeof postRefresh>[1]) => ReturnType<typeof postRefresh>;\n readonly logout: (body: Parameters<typeof postLogout>[1]) => ReturnType<typeof postLogout>;\n readonly me: (accessToken: string) => ReturnType<typeof getMe>;\n };\n readonly user: {\n readonly users: (\n accessToken: string,\n userQuery: Parameters<typeof getUsers>[2],\n ) => ReturnType<typeof getUsers>;\n readonly userById: (\n accessToken: Parameters<typeof getUserById>[1],\n { userId }: Parameters<typeof getUserById>[2],\n ) => ReturnType<typeof getUserById>;\n readonly updateMe: (\n accessToken: Parameters<typeof patchUpdateMe>[1],\n patch: Parameters<typeof patchUpdateMe>[2],\n ) => ReturnType<typeof patchUpdateMe>;\n readonly updateUserRoleByAdmin: (\n accessToken: Parameters<typeof patchUpdateUserRoleByAdmin>[1],\n { userId }: Parameters<typeof patchUpdateUserRoleByAdmin>[2],\n body: Parameters<typeof patchUpdateUserRoleByAdmin>[3],\n ) => ReturnType<typeof patchUpdateUserRoleByAdmin>;\n readonly updateUserBySAdmin: (\n accessToken: Parameters<typeof patchUpdateUserBySAdmin>[1],\n { userId }: Parameters<typeof patchUpdateUserBySAdmin>[2],\n patch: Parameters<typeof patchUpdateUserBySAdmin>[3],\n ) => ReturnType<typeof patchUpdateUserBySAdmin>;\n };\n readonly company: {\n readonly companies: (\n accessToken: Parameters<typeof getCompanies>[1],\n companyQuery: Parameters<typeof getCompanies>[2],\n ) => ReturnType<typeof getCompanies>;\n readonly myCompany: (\n accessToken: Parameters<typeof getMyCompany>[1],\n ) => ReturnType<typeof getMyCompany>;\n readonly companyBySlug: (\n accessToken: Parameters<typeof getCompanyBySlug>[1],\n { companySlug }: Parameters<typeof getCompanyBySlug>[2],\n ) => ReturnType<typeof getCompanyBySlug>;\n readonly createCompany: (\n accessToken: Parameters<typeof postCreateCompany>[1],\n newCompanyRequest: Parameters<typeof postCreateCompany>[2],\n ) => ReturnType<typeof postCreateCompany>;\n readonly updateMyCompany: (\n accessToken: Parameters<typeof patchUpdateMyCompany>[1],\n patch: Parameters<typeof patchUpdateMyCompany>[2],\n ) => ReturnType<typeof patchUpdateMyCompany>;\n readonly updateCompanyBySAdmin: (\n accessToken: Parameters<typeof patchUpdateCompanyBySAdmin>[1],\n { companyId }: Parameters<typeof patchUpdateCompanyBySAdmin>[2],\n patch: Parameters<typeof patchUpdateCompanyBySAdmin>[3],\n ) => ReturnType<typeof patchUpdateCompanyBySAdmin>;\n };\n readonly project: {\n readonly projects: (\n accessToken: Parameters<typeof getProjects>[1],\n projectQuery: Parameters<typeof getProjects>[2],\n ) => ReturnType<typeof getProjects>;\n readonly myProjects: (\n accessToken: Parameters<typeof getMyProjects>[1],\n projectQuery: Parameters<typeof getMyProjects>[2],\n ) => ReturnType<typeof getMyProjects>;\n readonly myProjectById: (\n accessToken: Parameters<typeof getMyProjectById>[1],\n { projectId }: Parameters<typeof getMyProjectById>[2],\n ) => ReturnType<typeof getMyProjectById>;\n readonly projectByCompanyAndSlug: (\n accessToken: Parameters<typeof getProjectByCompanyAndSlug>[1],\n { companySlug, projectSlug }: Parameters<typeof getProjectByCompanyAndSlug>[2],\n ) => ReturnType<typeof getProjectByCompanyAndSlug>;\n readonly projectsByCompany: (\n accessToken: Parameters<typeof getProjectsByCompany>[1],\n { companySlug }: Parameters<typeof getProjectsByCompany>[2],\n projectQuery: Parameters<typeof getProjectsByCompany>[3],\n ) => ReturnType<typeof getProjectsByCompany>;\n readonly createProject: (\n accessToken: Parameters<typeof postCreateProject>[1],\n { companySlug }: Parameters<typeof postCreateProject>[2],\n newProjectRequest: Parameters<typeof postCreateProject>[3],\n ) => ReturnType<typeof postCreateProject>;\n readonly updateProject: (\n accessToken: Parameters<typeof patchUpdateProject>[1],\n { companySlug, projectSlug }: Parameters<typeof patchUpdateProject>[2],\n patch: Parameters<typeof patchUpdateProject>[3],\n ) => ReturnType<typeof patchUpdateProject>;\n };\n readonly property: {\n readonly properties: (\n accessToken: Parameters<typeof getProperties>[1],\n propertyQuery: Parameters<typeof getProperties>[2],\n ) => ReturnType<typeof getProperties>;\n readonly myProperties: (\n accessToken: Parameters<typeof getMyProperties>[1],\n propertyQuery: Parameters<typeof getMyProperties>[2],\n ) => ReturnType<typeof getMyProperties>;\n readonly myPropertyById: (\n accessToken: Parameters<typeof getMyPropertyById>[1],\n { propertyId }: Parameters<typeof getMyPropertyById>[2],\n ) => ReturnType<typeof getMyPropertyById>;\n readonly propertiesByProject: (\n accessToken: Parameters<typeof getPropertiesByProject>[1],\n { companySlug, projectSlug }: Parameters<typeof getPropertiesByProject>[2],\n propertyQuery: Parameters<typeof getPropertiesByProject>[3],\n ) => ReturnType<typeof getPropertiesByProject>;\n readonly propertyByProjectAndCode: (\n accessToken: Parameters<typeof getPropertyByProjectAndCode>[1],\n { companySlug, projectSlug, propertyCode }: Parameters<typeof getPropertyByProjectAndCode>[2],\n ) => ReturnType<typeof getPropertyByProjectAndCode>;\n readonly createProperty: (\n accessToken: Parameters<typeof postCreateProperty>[1],\n { companySlug, projectSlug }: Parameters<typeof postCreateProperty>[2],\n newPropertyRequest: Parameters<typeof postCreateProperty>[3],\n ) => ReturnType<typeof postCreateProperty>;\n readonly updateProperty: (\n accessToken: Parameters<typeof patchUpdateProperty>[1],\n { companySlug, projectSlug, propertyCode }: Parameters<typeof patchUpdateProperty>[2],\n patch: Parameters<typeof patchUpdateProperty>[3],\n ) => ReturnType<typeof patchUpdateProperty>;\n };\n}\n\n/**\n * Creates a typed API client backed by the provided HTTP implementation.\n */\nexport function createApiClient(options: CreateApiClientOptions): ApiClient {\n const { http } = options;\n\n return {\n healthCheck: () => fetchHealthCheck(http),\n auth: {\n register: (body) => postRegister(http, body),\n login: (body) => postLogin(http, body),\n getGoogleOAuthStart: (redirectUri) => getGoogleOAuthStart(http, redirectUri),\n postGoogleOAuthCallback: (body) => postGoogleOAuthCallback(http, body),\n refresh: (body) => postRefresh(http, body),\n logout: (body) => postLogout(http, body),\n me: (accessToken) => getMe(http, accessToken),\n },\n user: {\n users: (accessToken, userQuery) => getUsers(http, accessToken, userQuery),\n userById: (accessToken, { userId }) => getUserById(http, accessToken, { userId }),\n updateMe: (accessToken, patch) => patchUpdateMe(http, accessToken, patch),\n updateUserRoleByAdmin: (accessToken, { userId }, body) =>\n patchUpdateUserRoleByAdmin(http, accessToken, { userId }, body),\n updateUserBySAdmin: (accessToken, { userId }, patch) =>\n patchUpdateUserBySAdmin(http, accessToken, { userId }, patch),\n },\n company: {\n companies: (accessToken, companyQuery) => getCompanies(http, accessToken, companyQuery),\n myCompany: (accessToken) => getMyCompany(http, accessToken),\n companyBySlug: (accessToken, { companySlug }) =>\n getCompanyBySlug(http, accessToken, { companySlug }),\n createCompany: (accessToken, newCompanyRequest) =>\n postCreateCompany(http, accessToken, newCompanyRequest),\n updateMyCompany: (accessToken, patch) => patchUpdateMyCompany(http, accessToken, patch),\n updateCompanyBySAdmin: (accessToken, { companyId }, patch) =>\n patchUpdateCompanyBySAdmin(http, accessToken, { companyId }, patch),\n },\n project: {\n projects: (accessToken, projectQuery) => getProjects(http, accessToken, projectQuery),\n myProjects: (accessToken, projectQuery) => getMyProjects(http, accessToken, projectQuery),\n myProjectById: (accessToken, { projectId }) =>\n getMyProjectById(http, accessToken, { projectId }),\n projectByCompanyAndSlug: (accessToken, { companySlug, projectSlug }) =>\n getProjectByCompanyAndSlug(http, accessToken, { companySlug, projectSlug }),\n projectsByCompany: (accessToken, { companySlug }, projectQuery) =>\n getProjectsByCompany(http, accessToken, { companySlug }, projectQuery),\n createProject: (accessToken, { companySlug }, newProjectRequest) =>\n postCreateProject(http, accessToken, { companySlug }, newProjectRequest),\n updateProject: (accessToken, { companySlug, projectSlug }, patch) =>\n patchUpdateProject(http, accessToken, { companySlug, projectSlug }, patch),\n },\n property: {\n properties: (accessToken, propertyQuery) => getProperties(http, accessToken, propertyQuery),\n myProperties: (accessToken, propertyQuery) =>\n getMyProperties(http, accessToken, propertyQuery),\n myPropertyById: (accessToken, { propertyId }) =>\n getMyPropertyById(http, accessToken, { propertyId }),\n propertiesByProject: (accessToken, { companySlug, projectSlug }, propertyQuery) =>\n getPropertiesByProject(http, accessToken, { companySlug, projectSlug }, propertyQuery),\n propertyByProjectAndCode: (accessToken, { companySlug, projectSlug, propertyCode }) =>\n getPropertyByProjectAndCode(http, accessToken, { companySlug, projectSlug, propertyCode }),\n createProperty: (accessToken, { companySlug, projectSlug }, newPropertyRequest) =>\n postCreateProperty(http, accessToken, { companySlug, projectSlug }, newPropertyRequest),\n updateProperty: (accessToken, { companySlug, projectSlug, propertyCode }, patch) =>\n patchUpdateProperty(http, accessToken, { companySlug, projectSlug, propertyCode }, patch),\n },\n };\n}\n"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
// src/endpoints/health-check.ts
|
|
2
|
+
var HEALTH_CHECK_PATH = "/api/v1/health-check";
|
|
3
|
+
async function fetchHealthCheck(http) {
|
|
4
|
+
const { data: body } = await http.get(HEALTH_CHECK_PATH);
|
|
5
|
+
return body;
|
|
6
|
+
}
|
|
7
|
+
|
|
1
8
|
// src/endpoints/auth.ts
|
|
2
9
|
var AUTH_BASE = "/api/v1/auth";
|
|
3
10
|
async function postRegister(http, body) {
|
|
@@ -46,9 +53,10 @@ async function getMe(http, accessToken) {
|
|
|
46
53
|
}
|
|
47
54
|
|
|
48
55
|
// src/endpoints/user.ts
|
|
49
|
-
var
|
|
56
|
+
var API_BASE = "/api/v1";
|
|
57
|
+
var USER_BASE = `${API_BASE}/users`;
|
|
50
58
|
async function getUsers(http, accessToken, userQuery) {
|
|
51
|
-
const { data } = await http.get(
|
|
59
|
+
const { data } = await http.get(USER_BASE, {
|
|
52
60
|
params: userQuery,
|
|
53
61
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
54
62
|
});
|
|
@@ -61,11 +69,11 @@ async function getUserById(http, accessToken, { userId }) {
|
|
|
61
69
|
return data;
|
|
62
70
|
}
|
|
63
71
|
async function patchUpdateMe(http, accessToken, patch) {
|
|
64
|
-
await http.patch(`${
|
|
72
|
+
await http.patch(`${API_BASE}/me`, patch, {
|
|
65
73
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
66
74
|
});
|
|
67
75
|
}
|
|
68
|
-
async function
|
|
76
|
+
async function patchUpdateUserRoleByAdmin(http, accessToken, { userId }, body) {
|
|
69
77
|
await http.patch(`${USER_BASE}/${userId}/role`, body, {
|
|
70
78
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
71
79
|
});
|
|
@@ -76,31 +84,25 @@ async function patchUpdateUserBySAdmin(http, accessToken, { userId }, patch) {
|
|
|
76
84
|
});
|
|
77
85
|
}
|
|
78
86
|
|
|
79
|
-
// src/endpoints/health-check.ts
|
|
80
|
-
var HEALTH_CHECK_PATH = "/api/v1/health-check";
|
|
81
|
-
async function fetchHealthCheck(http) {
|
|
82
|
-
const { data: body } = await http.get(HEALTH_CHECK_PATH);
|
|
83
|
-
return body;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
87
|
// src/endpoints/company.ts
|
|
87
|
-
var
|
|
88
|
+
var API_BASE2 = "/api/v1";
|
|
89
|
+
var COMPANY_BASE = `${API_BASE2}/companies`;
|
|
88
90
|
async function getCompanies(http, accessToken, companyQuery) {
|
|
89
|
-
const { data } = await http.get(
|
|
91
|
+
const { data } = await http.get(COMPANY_BASE, {
|
|
90
92
|
params: companyQuery,
|
|
91
93
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
92
94
|
});
|
|
93
95
|
return data;
|
|
94
96
|
}
|
|
95
97
|
async function getMyCompany(http, accessToken) {
|
|
96
|
-
const { data } = await http.get(`${
|
|
98
|
+
const { data } = await http.get(`${API_BASE2}/me/company`, {
|
|
97
99
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
98
100
|
});
|
|
99
101
|
return data;
|
|
100
102
|
}
|
|
101
|
-
async function
|
|
103
|
+
async function getCompanyBySlug(http, accessToken, { companySlug }) {
|
|
102
104
|
const { data } = await http.get(
|
|
103
|
-
`${COMPANY_BASE}/${
|
|
105
|
+
`${COMPANY_BASE}/${companySlug}`,
|
|
104
106
|
{
|
|
105
107
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
106
108
|
}
|
|
@@ -109,7 +111,7 @@ async function getCompanyById(http, accessToken, { companyId }) {
|
|
|
109
111
|
}
|
|
110
112
|
async function postCreateCompany(http, accessToken, newCompanyRequest) {
|
|
111
113
|
const { data } = await http.post(
|
|
112
|
-
|
|
114
|
+
COMPANY_BASE,
|
|
113
115
|
newCompanyRequest,
|
|
114
116
|
{
|
|
115
117
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
@@ -118,7 +120,7 @@ async function postCreateCompany(http, accessToken, newCompanyRequest) {
|
|
|
118
120
|
return data;
|
|
119
121
|
}
|
|
120
122
|
async function patchUpdateMyCompany(http, accessToken, patch) {
|
|
121
|
-
await http.patch(`${
|
|
123
|
+
await http.patch(`${API_BASE2}/me/company`, patch, {
|
|
122
124
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
123
125
|
});
|
|
124
126
|
}
|
|
@@ -129,24 +131,28 @@ async function patchUpdateCompanyBySAdmin(http, accessToken, { companyId }, patc
|
|
|
129
131
|
}
|
|
130
132
|
|
|
131
133
|
// src/endpoints/project.ts
|
|
132
|
-
var
|
|
134
|
+
var API_BASE3 = "/api/v1";
|
|
135
|
+
var COMPANY_BASE2 = `${API_BASE3}/companies`;
|
|
133
136
|
async function getProjects(http, accessToken, projectQuery) {
|
|
134
|
-
const { data } = await http.get(`${
|
|
137
|
+
const { data } = await http.get(`${API_BASE3}/projects`, {
|
|
135
138
|
params: projectQuery,
|
|
136
139
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
137
140
|
});
|
|
138
141
|
return data;
|
|
139
142
|
}
|
|
140
143
|
async function getMyProjects(http, accessToken, projectQuery) {
|
|
141
|
-
const { data } = await http.get(
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
144
|
+
const { data } = await http.get(
|
|
145
|
+
`${API_BASE3}/me/projects`,
|
|
146
|
+
{
|
|
147
|
+
params: projectQuery,
|
|
148
|
+
headers: { Authorization: `Bearer ${accessToken}` }
|
|
149
|
+
}
|
|
150
|
+
);
|
|
145
151
|
return data;
|
|
146
152
|
}
|
|
147
|
-
async function
|
|
153
|
+
async function getMyProjectById(http, accessToken, { projectId }) {
|
|
148
154
|
const { data } = await http.get(
|
|
149
|
-
`${
|
|
155
|
+
`${API_BASE3}/me/projects/${projectId}`,
|
|
150
156
|
{
|
|
151
157
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
152
158
|
}
|
|
@@ -155,7 +161,7 @@ async function getMyProjectBySlug(http, accessToken, { projectSlug }) {
|
|
|
155
161
|
}
|
|
156
162
|
async function getProjectByCompanyAndSlug(http, accessToken, { companySlug, projectSlug }) {
|
|
157
163
|
const { data } = await http.get(
|
|
158
|
-
`${
|
|
164
|
+
`${COMPANY_BASE2}/${companySlug}/projects/${projectSlug}`,
|
|
159
165
|
{
|
|
160
166
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
161
167
|
}
|
|
@@ -163,25 +169,15 @@ async function getProjectByCompanyAndSlug(http, accessToken, { companySlug, proj
|
|
|
163
169
|
return data;
|
|
164
170
|
}
|
|
165
171
|
async function getProjectsByCompany(http, accessToken, { companySlug }, projectQuery) {
|
|
166
|
-
const { data } = await http.get(`${
|
|
172
|
+
const { data } = await http.get(`${COMPANY_BASE2}/${companySlug}/projects`, {
|
|
167
173
|
params: projectQuery,
|
|
168
174
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
169
175
|
});
|
|
170
176
|
return data;
|
|
171
177
|
}
|
|
172
|
-
async function
|
|
173
|
-
const { data } = await http.post(
|
|
174
|
-
`${PROJECT_BASE}/my/projects`,
|
|
175
|
-
newProjectRequest,
|
|
176
|
-
{
|
|
177
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
178
|
-
}
|
|
179
|
-
);
|
|
180
|
-
return data;
|
|
181
|
-
}
|
|
182
|
-
async function postCreateProjectBySAdmin(http, accessToken, { companySlug }, newProjectRequest) {
|
|
178
|
+
async function postCreateProject(http, accessToken, { companySlug }, newProjectRequest) {
|
|
183
179
|
const { data } = await http.post(
|
|
184
|
-
`${
|
|
180
|
+
`${COMPANY_BASE2}/${companySlug}/projects`,
|
|
185
181
|
newProjectRequest,
|
|
186
182
|
{
|
|
187
183
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
@@ -189,18 +185,9 @@ async function postCreateProjectBySAdmin(http, accessToken, { companySlug }, new
|
|
|
189
185
|
);
|
|
190
186
|
return data;
|
|
191
187
|
}
|
|
192
|
-
async function
|
|
193
|
-
await http.patch(
|
|
194
|
-
`${PROJECT_BASE}/my/projects/${projectSlug}`,
|
|
195
|
-
patch,
|
|
196
|
-
{
|
|
197
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
198
|
-
}
|
|
199
|
-
);
|
|
200
|
-
}
|
|
201
|
-
async function patchUpdateProjectBySAdmin(http, accessToken, { companySlug, projectSlug }, patch) {
|
|
188
|
+
async function patchUpdateProject(http, accessToken, { companySlug, projectSlug }, patch) {
|
|
202
189
|
await http.patch(
|
|
203
|
-
`${
|
|
190
|
+
`${COMPANY_BASE2}/${companySlug}/projects/${projectSlug}`,
|
|
204
191
|
patch,
|
|
205
192
|
{
|
|
206
193
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
@@ -209,19 +196,20 @@ async function patchUpdateProjectBySAdmin(http, accessToken, { companySlug, proj
|
|
|
209
196
|
}
|
|
210
197
|
|
|
211
198
|
// src/endpoints/property.ts
|
|
212
|
-
var
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
199
|
+
var API_BASE4 = "/api/v1";
|
|
200
|
+
var COMPANY_BASE3 = `${API_BASE4}/companies`;
|
|
201
|
+
async function getProperties(http, accessToken, query) {
|
|
202
|
+
const { data } = await http.get(`${API_BASE4}/properties`, {
|
|
203
|
+
params: query,
|
|
216
204
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
217
205
|
});
|
|
218
206
|
return data;
|
|
219
207
|
}
|
|
220
|
-
async function getMyProperties(http, accessToken,
|
|
208
|
+
async function getMyProperties(http, accessToken, query) {
|
|
221
209
|
const { data } = await http.get(
|
|
222
|
-
`${
|
|
210
|
+
`${API_BASE4}/me/properties`,
|
|
223
211
|
{
|
|
224
|
-
params:
|
|
212
|
+
params: query,
|
|
225
213
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
226
214
|
}
|
|
227
215
|
);
|
|
@@ -229,45 +217,16 @@ async function getMyProperties(http, accessToken, propertyQuery) {
|
|
|
229
217
|
}
|
|
230
218
|
async function getMyPropertyById(http, accessToken, { propertyId }) {
|
|
231
219
|
const { data } = await http.get(
|
|
232
|
-
`${
|
|
220
|
+
`${API_BASE4}/me/properties/${propertyId}`,
|
|
233
221
|
{
|
|
234
222
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
235
223
|
}
|
|
236
224
|
);
|
|
237
225
|
return data;
|
|
238
226
|
}
|
|
239
|
-
async function
|
|
240
|
-
const { data } = await http.get(
|
|
241
|
-
|
|
242
|
-
{
|
|
243
|
-
params: propertyQuery,
|
|
244
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
245
|
-
}
|
|
246
|
-
);
|
|
247
|
-
return data;
|
|
248
|
-
}
|
|
249
|
-
async function getPropertiesByProjectByAdmin(http, accessToken, { projectSlug }, propertyQuery) {
|
|
250
|
-
const { data } = await http.get(
|
|
251
|
-
`${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties`,
|
|
252
|
-
{
|
|
253
|
-
params: propertyQuery,
|
|
254
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
255
|
-
}
|
|
256
|
-
);
|
|
257
|
-
return data;
|
|
258
|
-
}
|
|
259
|
-
async function getPropertyByProjectAndCodeByAdmin(http, accessToken, { projectSlug, propertyCode }) {
|
|
260
|
-
const { data } = await http.get(
|
|
261
|
-
`${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties/${propertyCode}`,
|
|
262
|
-
{
|
|
263
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
264
|
-
}
|
|
265
|
-
);
|
|
266
|
-
return data;
|
|
267
|
-
}
|
|
268
|
-
async function getPropertiesByProject(http, accessToken, { companySlug, projectSlug }, propertyQuery) {
|
|
269
|
-
const { data } = await http.get(`${PROPERTY_BASE}/companies/${companySlug}/projects/${projectSlug}/properties`, {
|
|
270
|
-
params: propertyQuery,
|
|
227
|
+
async function getPropertiesByProject(http, accessToken, { companySlug, projectSlug }, query) {
|
|
228
|
+
const { data } = await http.get(`${COMPANY_BASE3}/${companySlug}/projects/${projectSlug}/properties`, {
|
|
229
|
+
params: query,
|
|
271
230
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
272
231
|
});
|
|
273
232
|
return data;
|
|
@@ -278,26 +237,16 @@ async function getPropertyByProjectAndCode(http, accessToken, {
|
|
|
278
237
|
propertyCode
|
|
279
238
|
}) {
|
|
280
239
|
const { data } = await http.get(
|
|
281
|
-
`${
|
|
282
|
-
{
|
|
283
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
284
|
-
}
|
|
285
|
-
);
|
|
286
|
-
return data;
|
|
287
|
-
}
|
|
288
|
-
async function postCreatePropertyByAdmin(http, accessToken, { projectSlug }, newPropertyRequest) {
|
|
289
|
-
const { data } = await http.post(
|
|
290
|
-
`${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties`,
|
|
291
|
-
newPropertyRequest,
|
|
240
|
+
`${COMPANY_BASE3}/${companySlug}/projects/${projectSlug}/properties/${propertyCode}`,
|
|
292
241
|
{
|
|
293
242
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
294
243
|
}
|
|
295
244
|
);
|
|
296
245
|
return data;
|
|
297
246
|
}
|
|
298
|
-
async function
|
|
247
|
+
async function postCreateProperty(http, accessToken, { companySlug, projectSlug }, newPropertyRequest) {
|
|
299
248
|
const { data } = await http.post(
|
|
300
|
-
`${
|
|
249
|
+
`${COMPANY_BASE3}/${companySlug}/projects/${projectSlug}/properties`,
|
|
301
250
|
newPropertyRequest,
|
|
302
251
|
{
|
|
303
252
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
@@ -305,22 +254,13 @@ async function postCreatePropertyBySAdmin(http, accessToken, { companySlug, proj
|
|
|
305
254
|
);
|
|
306
255
|
return data;
|
|
307
256
|
}
|
|
308
|
-
async function
|
|
309
|
-
await http.patch(
|
|
310
|
-
`${PROPERTY_BASE}/companies/my/projects/${projectSlug}/properties/${propertyCode}`,
|
|
311
|
-
patch,
|
|
312
|
-
{
|
|
313
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
314
|
-
}
|
|
315
|
-
);
|
|
316
|
-
}
|
|
317
|
-
async function patchUpdatePropertyBySAdmin(http, accessToken, {
|
|
257
|
+
async function patchUpdateProperty(http, accessToken, {
|
|
318
258
|
companySlug,
|
|
319
259
|
projectSlug,
|
|
320
260
|
propertyCode
|
|
321
261
|
}, patch) {
|
|
322
262
|
await http.patch(
|
|
323
|
-
`${
|
|
263
|
+
`${COMPANY_BASE3}/${companySlug}/projects/${projectSlug}/properties/${propertyCode}`,
|
|
324
264
|
patch,
|
|
325
265
|
{
|
|
326
266
|
headers: { Authorization: `Bearer ${accessToken}` }
|
|
@@ -346,13 +286,13 @@ function createApiClient(options) {
|
|
|
346
286
|
users: (accessToken, userQuery) => getUsers(http, accessToken, userQuery),
|
|
347
287
|
userById: (accessToken, { userId }) => getUserById(http, accessToken, { userId }),
|
|
348
288
|
updateMe: (accessToken, patch) => patchUpdateMe(http, accessToken, patch),
|
|
349
|
-
|
|
289
|
+
updateUserRoleByAdmin: (accessToken, { userId }, body) => patchUpdateUserRoleByAdmin(http, accessToken, { userId }, body),
|
|
350
290
|
updateUserBySAdmin: (accessToken, { userId }, patch) => patchUpdateUserBySAdmin(http, accessToken, { userId }, patch)
|
|
351
291
|
},
|
|
352
292
|
company: {
|
|
353
293
|
companies: (accessToken, companyQuery) => getCompanies(http, accessToken, companyQuery),
|
|
354
294
|
myCompany: (accessToken) => getMyCompany(http, accessToken),
|
|
355
|
-
|
|
295
|
+
companyBySlug: (accessToken, { companySlug }) => getCompanyBySlug(http, accessToken, { companySlug }),
|
|
356
296
|
createCompany: (accessToken, newCompanyRequest) => postCreateCompany(http, accessToken, newCompanyRequest),
|
|
357
297
|
updateMyCompany: (accessToken, patch) => patchUpdateMyCompany(http, accessToken, patch),
|
|
358
298
|
updateCompanyBySAdmin: (accessToken, { companyId }, patch) => patchUpdateCompanyBySAdmin(http, accessToken, { companyId }, patch)
|
|
@@ -360,41 +300,24 @@ function createApiClient(options) {
|
|
|
360
300
|
project: {
|
|
361
301
|
projects: (accessToken, projectQuery) => getProjects(http, accessToken, projectQuery),
|
|
362
302
|
myProjects: (accessToken, projectQuery) => getMyProjects(http, accessToken, projectQuery),
|
|
363
|
-
|
|
303
|
+
myProjectById: (accessToken, { projectId }) => getMyProjectById(http, accessToken, { projectId }),
|
|
364
304
|
projectByCompanyAndSlug: (accessToken, { companySlug, projectSlug }) => getProjectByCompanyAndSlug(http, accessToken, { companySlug, projectSlug }),
|
|
365
305
|
projectsByCompany: (accessToken, { companySlug }, projectQuery) => getProjectsByCompany(http, accessToken, { companySlug }, projectQuery),
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
updateProjectByAdmin: (accessToken, { projectSlug }, patch) => patchUpdateProjectByAdmin(http, accessToken, { projectSlug }, patch),
|
|
369
|
-
updateProjectBySAdmin: (accessToken, { companySlug, projectSlug }, patch) => patchUpdateProjectBySAdmin(http, accessToken, { companySlug, projectSlug }, patch)
|
|
306
|
+
createProject: (accessToken, { companySlug }, newProjectRequest) => postCreateProject(http, accessToken, { companySlug }, newProjectRequest),
|
|
307
|
+
updateProject: (accessToken, { companySlug, projectSlug }, patch) => patchUpdateProject(http, accessToken, { companySlug, projectSlug }, patch)
|
|
370
308
|
},
|
|
371
309
|
property: {
|
|
372
310
|
properties: (accessToken, propertyQuery) => getProperties(http, accessToken, propertyQuery),
|
|
373
311
|
myProperties: (accessToken, propertyQuery) => getMyProperties(http, accessToken, propertyQuery),
|
|
374
312
|
myPropertyById: (accessToken, { propertyId }) => getMyPropertyById(http, accessToken, { propertyId }),
|
|
375
|
-
propertiesByAdmin: (accessToken, propertyQuery) => getPropertiesByAdmin(http, accessToken, propertyQuery),
|
|
376
|
-
propertiesByProjectByAdmin: (accessToken, { projectSlug }, propertyQuery) => getPropertiesByProjectByAdmin(http, accessToken, { projectSlug }, propertyQuery),
|
|
377
|
-
propertyByProjectAndCodeByAdmin: (accessToken, { projectSlug, propertyCode }) => getPropertyByProjectAndCodeByAdmin(http, accessToken, { projectSlug, propertyCode }),
|
|
378
313
|
propertiesByProject: (accessToken, { companySlug, projectSlug }, propertyQuery) => getPropertiesByProject(http, accessToken, { companySlug, projectSlug }, propertyQuery),
|
|
379
314
|
propertyByProjectAndCode: (accessToken, { companySlug, projectSlug, propertyCode }) => getPropertyByProjectAndCode(http, accessToken, { companySlug, projectSlug, propertyCode }),
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
http,
|
|
383
|
-
accessToken,
|
|
384
|
-
{ companySlug, projectSlug },
|
|
385
|
-
newPropertyRequest
|
|
386
|
-
),
|
|
387
|
-
updatePropertyByAdmin: (accessToken, { projectSlug, propertyCode }, patch) => patchUpdatePropertyByAdmin(http, accessToken, { projectSlug, propertyCode }, patch),
|
|
388
|
-
updatePropertyBySAdmin: (accessToken, { companySlug, projectSlug, propertyCode }, patch) => patchUpdatePropertyBySAdmin(
|
|
389
|
-
http,
|
|
390
|
-
accessToken,
|
|
391
|
-
{ companySlug, projectSlug, propertyCode },
|
|
392
|
-
patch
|
|
393
|
-
)
|
|
315
|
+
createProperty: (accessToken, { companySlug, projectSlug }, newPropertyRequest) => postCreateProperty(http, accessToken, { companySlug, projectSlug }, newPropertyRequest),
|
|
316
|
+
updateProperty: (accessToken, { companySlug, projectSlug, propertyCode }, patch) => patchUpdateProperty(http, accessToken, { companySlug, projectSlug, propertyCode }, patch)
|
|
394
317
|
}
|
|
395
318
|
};
|
|
396
319
|
}
|
|
397
320
|
|
|
398
|
-
export { createApiClient, getCompanies,
|
|
321
|
+
export { createApiClient, getCompanies, getCompanyBySlug, getGoogleOAuthStart, getMe, getMyCompany, getMyProjectById, getMyProjects, getMyProperties, getMyPropertyById, getProjectByCompanyAndSlug, getProjects, getProjectsByCompany, getProperties, getPropertiesByProject, getPropertyByProjectAndCode, getUserById, getUsers, patchUpdateCompanyBySAdmin, patchUpdateMe, patchUpdateMyCompany, patchUpdateProject, patchUpdateProperty, patchUpdateUserBySAdmin, patchUpdateUserRoleByAdmin, postCreateCompany, postCreateProject, postCreateProperty, postGoogleOAuthCallback, postLogin, postLogout, postRefresh, postRegister };
|
|
399
322
|
//# sourceMappingURL=index.mjs.map
|
|
400
323
|
//# sourceMappingURL=index.mjs.map
|