© 2026 Hedgehog Software, LLC
export const getAllPermissionsGroups = async < View extends CollectionViewParamType['view'], >({ view, }: CollectionViewParamType) => { if (view === 'select') { const permissionsGroupsQuery = apiQuery({ url: 'v2/permission-groups', queryParsers: { view: parseAsString.withDefault('select') }, }); return await Effect.runPromise( permissionsGroupsQuery({ view }).pipe( Effect.flatMap( validateResponse(Schema.Array(PermissionGroupSelectSchema)), ), Effect.provide(ApiHttpClientLayer), ), ); } // Handle 'list' view const permissionsGroupsQuery = apiQuery({ url: 'v2/permission-groups', queryParsers: { view: parseAsString.withDefault('list') }, }); return await Effect.runPromise( permissionsGroupsQuery({ view }) .pipe( Effect.flatMap(validateResponse(Schema.Array(PermissionsGroupListSchema))), Effect.provide(ApiHttpClientLayer), ), ); };
getAllPermissionsGroups
Promise<PermissionGroupSelectSchema[]> | Promise<PermissionsGroupListSchema[]>
ky
export async function getAllPermissions< View extends CollectionViewParamType['view'], >({ view }: CollectionViewParamType) { const apiClient = await getApiClient(); return await apiClient .get<PermissionResultType<View>>('v2/permissions', { searchParams: { view, }, }) .json(); }
view