UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

100 lines 3.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ImportListResponseSchema = exports.ImportResponseSchema = exports.ImportDetailParamsSchema = exports.ImportStuckParamsSchema = exports.ImportRecentParamsSchema = exports.ImportListParamsSchema = exports.ImportSchema = void 0; const zod_1 = require("zod"); const schemas_1 = require("../../../core/schemas"); /** * MySQL datetime pattern for validation */ const mysqlDatetimePattern = /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/; /** * Import data schema representing a single import record from P21 SISM */ exports.ImportSchema = zod_1.z.object({ importUid: zod_1.z.number().int().describe('Unique identifier for the import'), scheduledImportMasterUid: zod_1.z.number().int().describe('Reference to scheduled import master'), dateCreated: zod_1.z .string() .regex(mysqlDatetimePattern, 'Must be MySQL datetime format: YYYY-MM-DD HH:mm:ss') .describe('MySQL datetime format: YYYY-MM-DD HH:mm:ss'), dateLastModified: zod_1.z .string() .regex(mysqlDatetimePattern, 'Must be MySQL datetime format: YYYY-MM-DD HH:mm:ss') .describe('MySQL datetime format: YYYY-MM-DD HH:mm:ss'), sourceName: zod_1.z.string().max(25).nullable().describe('Source name for the import'), sourceId: zod_1.z.number().int().describe('Source identifier'), importState: zod_1.z.string().max(30).describe('Current state of the import'), jsonData: zod_1.z.string().max(16777215).nullable().describe('JSON data payload for the import'), importStatusCd: zod_1.z.number().int().describe('Import status code'), importResults: zod_1.z.string().max(16777215).nullable().describe('Import processing results'), referenceNo: zod_1.z.string().max(255).nullable().describe('Reference number for tracking'), }); /** * Parameters for listing imports with filtering and pagination */ exports.ImportListParamsSchema = zod_1.z.object({ importState: zod_1.z .enum(['initial', 'hold', 'delivered']) .optional() .describe('Import State [initial|hold|delivered](Default: initial)'), limit: zod_1.z .number() .int() .positive() .max(1000) .optional() .describe('limit number of results (Default: 12)'), offset: zod_1.z.number().int().min(0).optional().describe('offset (Default: 0)'), orderBy: zod_1.z.string().optional().describe('Order By field (Default: import_uid|DESC)'), q: zod_1.z.string().optional().describe('Search query to filter imports'), }); /** * Parameters for recent imports query */ exports.ImportRecentParamsSchema = zod_1.z.object({ hours: zod_1.z .number() .int() .positive() .max(168) .optional() .describe('Hours since created (Default: 48)'), limit: zod_1.z .number() .int() .positive() .max(1000) .optional() .describe('limit number of results (Default: 1000)'), }); /** * Parameters for stuck imports query */ exports.ImportStuckParamsSchema = zod_1.z.object({ hours: zod_1.z .number() .int() .positive() .max(168) .optional() .describe('Hours since stuck (Default: 48)'), limit: zod_1.z .number() .int() .positive() .max(1000) .optional() .describe('limit number of results (Default: 1000)'), }); /** * Parameters for import detail operations */ exports.ImportDetailParamsSchema = zod_1.z.object({ importUid: zod_1.z.string().describe('import.import_uid'), }); /** * Response schemas for import operations */ exports.ImportResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ImportSchema); exports.ImportListResponseSchema = (0, schemas_1.BaseResponseSchema)(zod_1.z.array(exports.ImportSchema)); //# sourceMappingURL=import.js.map