UNPKG

ng2-json-editor

Version:

Angular2 component for editing large json documents

62 lines 2.31 kB
/* * This file is part of ng2-json-editor. * Copyright (C) 2016 CERN. * * ng2-json-editor is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * ng2-json-editor is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with ng2-json-editor; if not, write to the Free Software Foundation, Inc., * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * In applying this license, CERN does not * waive the privileges and immunities granted to it by virtue of its status * as an Intergovernmental Organization or submit itself to any jurisdiction. */ import { Injectable } from '@angular/core'; import { PathUtilService } from './path-util.service'; var JsonSchemaService = (function () { function JsonSchemaService(pathUtilService) { this.pathUtilService = pathUtilService; } JsonSchemaService.prototype.setSchema = function (schema) { this.schema = schema; }; /** * Returns the schema extracted from this path */ JsonSchemaService.prototype.forPathArray = function (path) { return path .reduce(function (schema, pathEl) { if (isNaN(pathEl) && pathEl !== '-') { return schema.properties[pathEl]; } else { return schema.items; } }, this.schema); }; /** * Returns the schema extracted from the json-pointer string */ JsonSchemaService.prototype.forPathString = function (path) { var pathArray = this.pathUtilService.toPathArray(path); return this.forPathArray(pathArray); }; return JsonSchemaService; }()); export { JsonSchemaService }; JsonSchemaService.decorators = [ { type: Injectable }, ]; /** @nocollapse */ JsonSchemaService.ctorParameters = function () { return [ { type: PathUtilService, }, ]; }; //# sourceMappingURL=json-schema.service.js.map