@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
55 lines • 2.59 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.UserGroupMappingResponseSchema = exports.UserGroupMappingRequestSchema = exports.UserGroupDetailResponseSchema = exports.UserGroupDetailSchema = exports.UserGroupMembershipResponseSchema = exports.UserGroupMembershipSchema = exports.UserGroupMembershipParamsSchema = exports.UserGroupListResponseSchema = exports.UserGroupListParamsSchema = exports.UserGroupSchema = void 0;
const zod_1 = require("zod");
const schemas_1 = require("../../../core/schemas");
// User Group schemas
exports.UserGroupSchema = zod_1.z.object({
id: zod_1.z.number(),
parentId: zod_1.z.number(),
title: zod_1.z.string(),
level: zod_1.z.number(),
lft: zod_1.z.number(),
rgt: zod_1.z.number(),
});
exports.UserGroupListParamsSchema = schemas_1.BaseGetParamsSchema.extend({
orderBy: zod_1.z.string().optional(),
parentIdList: zod_1.z.string().optional(),
});
// Response schemas using BaseResponseSchema (8-field format)
exports.UserGroupListResponseSchema = (0, schemas_1.BaseResponseSchema)(zod_1.z.array(exports.UserGroupSchema));
// Parameters for user's groups endpoint (/users/{id}/groups)
exports.UserGroupMembershipParamsSchema = schemas_1.BaseGetParamsSchema.extend({
limit: zod_1.z.number().optional().default(10),
offset: zod_1.z.number().optional().default(0),
});
// User's group membership schema - returned by /users/{id}/groups
exports.UserGroupMembershipSchema = zod_1.z.object({
userId: zod_1.z.number(),
username: zod_1.z.string(),
groupId: zod_1.z.number(),
title: zod_1.z.string(),
});
// User's groups response with pagination
exports.UserGroupMembershipResponseSchema = (0, schemas_1.BaseResponseSchema)(zod_1.z.array(exports.UserGroupMembershipSchema));
// User group detail schema (for /users/:id/groups/:groupId)
exports.UserGroupDetailSchema = zod_1.z.object({
id: zod_1.z.number(),
groupId: zod_1.z.number(),
userId: zod_1.z.number(),
title: zod_1.z.string(),
level: zod_1.z.number(),
});
exports.UserGroupDetailResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.UserGroupDetailSchema);
// User group mapping schemas
exports.UserGroupMappingRequestSchema = zod_1.z.object({
groupId: zod_1.z.number(),
// Additional fields as needed based on implementation
});
exports.UserGroupMappingResponseSchema = (0, schemas_1.BaseResponseSchema)(zod_1.z.object({
id: zod_1.z.number(),
groupId: zod_1.z.number(),
userId: zod_1.z.number(),
created: zod_1.z.boolean(),
}));
//# sourceMappingURL=groups.js.map