refactor: use shared JSON mutation clients

This commit is contained in:
2026-08-02 05:29:50 +02:00
parent 43feca0244
commit 820ea5eeab
+5 -13
View File
@@ -1,4 +1,4 @@
import { apiFetch, type ApiSettings } from "@govoplan/core-webui"; import { apiFetch, apiPatchJson, apiPostJson, type ApiSettings } from "@govoplan/core-webui";
export type OrganizationUnitItem = { export type OrganizationUnitItem = {
id: string; id: string;
@@ -183,14 +183,6 @@ export type FunctionAssignmentChangePayload = {
metadata?: Record<string, unknown>; metadata?: Record<string, unknown>;
}; };
function post<T, P extends Record<string, unknown>>(settings: ApiSettings, path: string, payload: P): Promise<T> {
return apiFetch<T>(settings, path, { method: "POST", body: JSON.stringify(payload) });
}
function patch<T, P extends Record<string, unknown>>(settings: ApiSettings, path: string, payload: P): Promise<T> {
return apiFetch<T>(settings, path, { method: "PATCH", body: JSON.stringify(payload) });
}
export function getOrganizationModel(settings: ApiSettings): Promise<OrganizationModel> { export function getOrganizationModel(settings: ApiSettings): Promise<OrganizationModel> {
return apiFetch<OrganizationModel>(settings, "/api/v1/organizations/model"); return apiFetch<OrganizationModel>(settings, "/api/v1/organizations/model");
} }
@@ -223,7 +215,7 @@ export function getIdmSettings(settings: ApiSettings): Promise<IdmSettings> {
} }
export function patchIdmSettings(settings: ApiSettings, payload: IdmSettingsPayload): Promise<IdmSettings> { export function patchIdmSettings(settings: ApiSettings, payload: IdmSettingsPayload): Promise<IdmSettings> {
return patch(settings, "/api/v1/idm/settings", payload); return apiPatchJson(settings, "/api/v1/idm/settings", payload);
} }
export function searchOrganizationIdentityOptions(settings: ApiSettings, query = "", limit = 50): Promise<IdentityListResponse> { export function searchOrganizationIdentityOptions(settings: ApiSettings, query = "", limit = 50): Promise<IdentityListResponse> {
@@ -238,7 +230,7 @@ export function createOrganizationFunctionAssignment(
settings: ApiSettings, settings: ApiSettings,
payload: OrganizationFunctionAssignmentPayload payload: OrganizationFunctionAssignmentPayload
): Promise<OrganizationFunctionAssignmentItem> { ): Promise<OrganizationFunctionAssignmentItem> {
return post(settings, "/api/v1/idm/organization-function-assignments", payload); return apiPostJson(settings, "/api/v1/idm/organization-function-assignments", payload);
} }
export function patchOrganizationFunctionAssignment( export function patchOrganizationFunctionAssignment(
@@ -246,7 +238,7 @@ export function patchOrganizationFunctionAssignment(
id: string, id: string,
payload: Partial<OrganizationFunctionAssignmentPayload> payload: Partial<OrganizationFunctionAssignmentPayload>
): Promise<OrganizationFunctionAssignmentItem> { ): Promise<OrganizationFunctionAssignmentItem> {
return patch(settings, `/api/v1/idm/organization-function-assignments/${encodeURIComponent(id)}`, payload); return apiPatchJson(settings, `/api/v1/idm/organization-function-assignments/${encodeURIComponent(id)}`, payload);
} }
export function getFunctionAssignmentChanges(settings: ApiSettings): Promise<FunctionAssignmentChangeList> { export function getFunctionAssignmentChanges(settings: ApiSettings): Promise<FunctionAssignmentChangeList> {
@@ -261,7 +253,7 @@ export function createFunctionAssignmentChange(
settings: ApiSettings, settings: ApiSettings,
payload: FunctionAssignmentChangePayload payload: FunctionAssignmentChangePayload
): Promise<FunctionAssignmentChange> { ): Promise<FunctionAssignmentChange> {
return post(settings, "/api/v1/idm/function-assignment-changes", payload); return apiPostJson(settings, "/api/v1/idm/function-assignment-changes", payload);
} }
export function actOnFunctionAssignmentChange( export function actOnFunctionAssignmentChange(