aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js
diff options
context:
space:
mode:
authorNevena Bojovic <nenabojov@gmail.com>2022-03-01 20:05:50 +0100
committerNevena Bojovic <nenabojov@gmail.com>2022-03-01 20:05:50 +0100
commit291803c31f829fe0d32bb3207bc11def95a7408c (patch)
treec7d43107d79291b19d8c9eceefbe91c9f9a52acf /sandbox/testAppNevena/Front/node_modules/@schematics/angular/utility/json-file.js
parent1fa69862057db4db53cfda5be9c24b4228ef63f7 (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.js74
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;