UNPKG

@ozmap/ozn-sdk

Version:

OZN SDK is a powerful tool for developers to build their own applications on top of OZN using TMForum pattern.

66 lines (65 loc) 2.64 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.serviceQualificationOutputSchema = exports.RelatedEntitySchema = exports.EligibilityUnavailabilityReasonSchema = exports.ServiceQualificationAddressSchema = exports.serviceQualificationByIdInputSchema = void 0; const zod_1 = require("zod"); const shared_1 = require("./shared"); exports.serviceQualificationByIdInputSchema = zod_1.z.object({ serviceQualificationItem: zod_1.z .array(zod_1.z.object({ service: zod_1.z.object({ place: shared_1.externalSystemsSchema, }), })) .nonempty(), }); const GeographicLocationSchema = zod_1.z.object({ name: zod_1.z.string(), type: zod_1.z.string(), geometry: zod_1.z.array(zod_1.z.object({ x: zod_1.z.number(), y: zod_1.z.number(), z: zod_1.z.number().or(zod_1.z.null()), })), }); exports.ServiceQualificationAddressSchema = zod_1.z.object({ type: zod_1.z.string(), geographicLocation: GeographicLocationSchema, }); const ResourceLocationSchema = zod_1.z.object({ type: zod_1.z.string(), labelType: zod_1.z.string(), name: zod_1.z.string(), description: zod_1.z.string().or(zod_1.z.null()), parentLocation: zod_1.z.string(), address: exports.ServiceQualificationAddressSchema, }); exports.EligibilityUnavailabilityReasonSchema = zod_1.z.object({ code: zod_1.z.string().or(zod_1.z.null()).nullable(), label: zod_1.z.string().or(zod_1.z.null()).nullable(), }); const CharacteristicSchema = zod_1.z.object({ name: zod_1.z.string(), valueType: zod_1.z.string(), value: zod_1.z.string(), }); exports.RelatedEntitySchema = zod_1.z.object({ '@type': zod_1.z.string(), qualificationResult: zod_1.z.string(), characteristic: zod_1.z.array(CharacteristicSchema), resourceSpecification: shared_1.ResourceSpecificationSchema, resourceLocation: ResourceLocationSchema, eligibilityUnavailabilityReason: zod_1.z.array(exports.EligibilityUnavailabilityReasonSchema), }); const ServiceSchema = zod_1.z.object({ serviceCharacteristic: zod_1.z.array(CharacteristicSchema), relatedEntity: zod_1.z.array(exports.RelatedEntitySchema), }); const ServiceQualificationItemSchema = zod_1.z.object({ qualificationResult: zod_1.z.string(), service: ServiceSchema, eligibilityUnavailabilityReason: zod_1.z.array(exports.EligibilityUnavailabilityReasonSchema), }); exports.serviceQualificationOutputSchema = zod_1.z.object({ provideUnavailabilityReason: zod_1.z.boolean(), serviceQualificationItem: zod_1.z.array(ServiceQualificationItemSchema), });