UNPKG

smart-track

Version:

A TypeScript SDK for integrating with tracking services using the Beckn protocol. Provides adapters for package tracking with built-in error handling, retry logic, and type safety.

53 lines 2.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.becknMetadataSchema = exports.BecknAction = exports.CountryCode = void 0; const zod_1 = require("zod"); const uuid_1 = require("uuid"); var CountryCode; (function (CountryCode) { CountryCode["IND"] = "IND"; CountryCode["USA"] = "USA"; CountryCode["AUS"] = "AUS"; CountryCode["GBR"] = "GBR"; CountryCode["CAN"] = "CAN"; CountryCode["DEU"] = "DEU"; CountryCode["FRA"] = "FRA"; CountryCode["JPN"] = "JPN"; CountryCode["CHN"] = "CHN"; CountryCode["RUS"] = "RUS"; })(CountryCode || (exports.CountryCode = CountryCode = {})); var BecknAction; (function (BecknAction) { BecknAction["TRACK"] = "track"; BecknAction["ORDER"] = "order"; BecknAction["STATUS"] = "status"; BecknAction["SEARCH"] = "search"; })(BecknAction || (exports.BecknAction = BecknAction = {})); const BecknUri = { BAP_ID: "https://example.com/bap", BPP_ID: "https://example.com/bpp", BAP_URI: "https://example.com/bap-uri", BPP_URI: "https://example.com/bpp-uri", }; var BacknCoreVersion; (function (BacknCoreVersion) { BacknCoreVersion["V0_9_1"] = "0.9.1"; })(BacknCoreVersion || (BacknCoreVersion = {})); //TODO: Provide default values exports.becknMetadataSchema = zod_1.z.object({ domain: zod_1.z.string().default("nic2004:55204"), country: zod_1.z.nativeEnum(CountryCode).default(CountryCode.IND), city: zod_1.z.string(), action: zod_1.z.nativeEnum(BecknAction), core_version: zod_1.z.nativeEnum(BacknCoreVersion).default(BacknCoreVersion.V0_9_1), bap_id: zod_1.z.string().url().default(BecknUri.BAP_ID), bap_uri: zod_1.z.string().url().default(BecknUri.BAP_URI), bpp_id: zod_1.z.string().url().default(BecknUri.BPP_ID), bpp_uri: zod_1.z.string().url().default(BecknUri.BPP_URI), transaction_id: zod_1.z.string().default((0, uuid_1.v4)()), message_id: zod_1.z.string().default((0, uuid_1.v4)()), timestamp: zod_1.z.coerce.date().default(() => new Date()), key: zod_1.z.string().optional(), ttl: zod_1.z.string().optional(), }); //# sourceMappingURL=payload.types.js.map