diff options
author | Nevena Bojovic <nenabojov@gmail.com> | 2022-03-01 20:05:50 +0100 |
---|---|---|
committer | Nevena Bojovic <nenabojov@gmail.com> | 2022-03-01 20:05:50 +0100 |
commit | 291803c31f829fe0d32bb3207bc11def95a7408c (patch) | |
tree | c7d43107d79291b19d8c9eceefbe91c9f9a52acf /sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js | |
parent | 1fa69862057db4db53cfda5be9c24b4228ef63f7 (diff) |
Urađena test aplikacija. Povezan front i back.
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js')
-rw-r--r-- | sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js b/sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js new file mode 100644 index 00000000..4fc5525d --- /dev/null +++ b/sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js @@ -0,0 +1,74 @@ +"use strict"; +/** + * @license + * Copyright Google LLC All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +Object.defineProperty(exports, "__esModule", { value: true }); +exports.JSONFile = void 0; +const jsonc_parser_1 = require("jsonc-parser"); +/** @internal */ +class JSONFile { + constructor(host, path) { + this.host = host; + this.path = path; + const buffer = this.host.read(this.path); + if (buffer) { + this.content = buffer.toString(); + } + else { + throw new Error(`Could not read '${path}'.`); + } + } + get JsonAst() { + if (this._jsonAst) { + return this._jsonAst; + } + const errors = []; + this._jsonAst = (0, jsonc_parser_1.parseTree)(this.content, errors, { allowTrailingComma: true }); + if (errors.length) { + const { error, offset } = errors[0]; + throw new Error(`Failed to parse "${this.path}" as JSON AST Object. ${(0, jsonc_parser_1.printParseErrorCode)(error)} at location: ${offset}.`); + } + return this._jsonAst; + } + get(jsonPath) { + const jsonAstNode = this.JsonAst; + if (!jsonAstNode) { + return undefined; + } + if (jsonPath.length === 0) { + return (0, jsonc_parser_1.getNodeValue)(jsonAstNode); + } + const node = (0, jsonc_parser_1.findNodeAtLocation)(jsonAstNode, jsonPath); + return node === undefined ? undefined : (0, jsonc_parser_1.getNodeValue)(node); + } + modify(jsonPath, value, insertInOrder) { + let getInsertionIndex; + if (insertInOrder === undefined) { + const property = jsonPath.slice(-1)[0]; + getInsertionIndex = (properties) => [...properties, property].sort().findIndex((p) => p === property); + } + else if (insertInOrder !== false) { + getInsertionIndex = insertInOrder; + } + const edits = (0, jsonc_parser_1.modify)(this.content, jsonPath, value, { + getInsertionIndex, + formattingOptions: { + insertSpaces: true, + tabSize: 2, + }, + }); + this.content = (0, jsonc_parser_1.applyEdits)(this.content, edits); + this.host.overwrite(this.path, this.content); + this._jsonAst = undefined; + } + remove(jsonPath) { + if (this.get(jsonPath) !== undefined) { + this.modify(jsonPath, undefined); + } + } +} +exports.JSONFile = JSONFile; |