UNPKG

@yoroi/common

Version:

The Common package of Yoroi SDK

26 lines (25 loc) 1.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseCacheRecord = exports.isCacheRecord = exports.cacheRecordSchemaMaker = void 0; var _zod = _interopRequireDefault(require("zod")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const cacheRecordSchemaMaker = recordSchema => { return _zod.default.object({ record: recordSchema, expires: _zod.default.number().nonnegative(), hash: _zod.default.string() // Zod is not infering the type correctly when using interface }); }; exports.cacheRecordSchemaMaker = cacheRecordSchemaMaker; const isCacheRecord = (recordSchema, data) => { return cacheRecordSchemaMaker(recordSchema).safeParse(data).success; }; exports.isCacheRecord = isCacheRecord; const parseCacheRecord = (recordSchema, data) => { return isCacheRecord(recordSchema, data) ? data : undefined; }; exports.parseCacheRecord = parseCacheRecord; //# sourceMappingURL=cache-record-schema-maker.js.map