UNPKG

@contentgrid/uri-template

Version:

RFC6570 URI template parser and expander

33 lines (30 loc) 1.02 kB
import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib'; import createUriTemplate from 'uri-templates'; var _UriTemplate_parsed; class UriTemplate { constructor(template) { this.template = template; _UriTemplate_parsed.set(this, void 0); __classPrivateFieldSet(this, _UriTemplate_parsed, createUriTemplate(template), "f"); } expand(values) { if (Array.isArray(values)) { let i = 0; return __classPrivateFieldGet(this, _UriTemplate_parsed, "f").fill(_varName => { return values[i++]; }); } else { return __classPrivateFieldGet(this, _UriTemplate_parsed, "f").fill(values); } } get variables() { return __classPrivateFieldGet(this, _UriTemplate_parsed, "f").varNames; } match(uri) { var _a; return (_a = __classPrivateFieldGet(this, _UriTemplate_parsed, "f").fromUri(uri)) !== null && _a !== void 0 ? _a : null; } } _UriTemplate_parsed = new WeakMap(); export { UriTemplate as default }; //# sourceMappingURL=index.mjs.map