UNPKG

kubo-rpc-client-esm-cjs

Version:
89 lines 2.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.encodeAddParams = exports.encodeQuery = exports.encodeCID = exports.encodeService = exports.decodePin = void 0; const cid_1 = require("multiformats/cid"); const to_url_search_params_js_1 = require("../../lib/to-url-search-params.js"); /** * @param {object} json * @param {string} json.Name * @param {string} json.Cid * @param {import('../../types.js').Status} json.Status * @returns {import('../../types.js').Pin} */ const decodePin = ({ Name: name, Status: status, Cid: cid }) => { return { cid: cid_1.CID.parse(cid), name, status }; }; exports.decodePin = decodePin; /** * @param {any} service * @returns {string} */ const encodeService = (service) => { if (typeof service === 'string' && service !== '') { return service; } else { throw new TypeError('service name must be passed'); } }; exports.encodeService = encodeService; /** * @param {any} cid * @returns {string} */ const encodeCID = (cid) => { if (cid_1.CID.asCID(cid)) { return cid.toString(); } else { throw new TypeError(`CID instance expected instead of ${typeof cid}`); } }; exports.encodeCID = encodeCID; /** * @param {import('../../types.js').Query & { all?: boolean }} query * @returns {URLSearchParams} */ const encodeQuery = ({ service, cid, name, status, all }) => { const query = (0, to_url_search_params_js_1.toUrlSearchParams)({ service: (0, exports.encodeService)(service), name, force: all ? true : undefined }); if (cid) { for (const value of cid) { query.append('cid', (0, exports.encodeCID)(value)); } } if (status) { for (const value of status) { query.append('status', value); } } return query; }; exports.encodeQuery = encodeQuery; /** * @param {import('../../types.js').AddOptions & {cid:CID}} options * @returns {URLSearchParams} */ const encodeAddParams = ({ cid, service, background, name, origins }) => { const params = (0, to_url_search_params_js_1.toUrlSearchParams)({ arg: (0, exports.encodeCID)(cid), service: (0, exports.encodeService)(service), name, background: background ? true : undefined }); if (origins) { for (const origin of origins) { params.append('origin', origin.toString()); } } return params; }; exports.encodeAddParams = encodeAddParams; //# sourceMappingURL=utils.js.map