json10 13.0.22 → 13.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app.d.ts +1 -0
- package/app.js +6 -34
- package/app.js.map +1 -1
- package/index.js +1 -1
- package/lib/index.js +1 -1
- package/package.json +3 -3
- package/tmp-environment.json +30 -31
- package/websql/README.md +24 -0
- package/websql/esm2020/json10.mjs +5 -0
- package/websql/esm2020/lib/index.mjs +56 -0
- package/websql/esm2020/public-api.mjs +2 -0
- package/websql/fesm2015/json10.mjs +63 -0
- package/websql/fesm2015/json10.mjs.map +1 -0
- package/websql/fesm2020/json10.mjs +63 -0
- package/websql/fesm2020/json10.mjs.map +1 -0
- package/websql/json10.d.ts +5 -0
- package/websql/lib/index.d.ts +15 -0
- package/websql/package.json +31 -0
- package/websql/public-api.d.ts +1 -0
package/app.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function dummy1664632099637(): void;
|
package/app.js
CHANGED
|
@@ -1,34 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
/* */
|
|
8
|
-
/* */
|
|
9
|
-
/* */
|
|
10
|
-
/* */
|
|
11
|
-
/* */
|
|
12
|
-
/* */
|
|
13
|
-
/* */
|
|
14
|
-
/* */
|
|
15
|
-
/* */
|
|
16
|
-
/* */
|
|
17
|
-
/* */
|
|
18
|
-
/* */
|
|
19
|
-
/* */
|
|
20
|
-
/* */
|
|
21
|
-
/* */
|
|
22
|
-
/* */
|
|
23
|
-
/* */
|
|
24
|
-
/* */
|
|
25
|
-
/* */
|
|
26
|
-
/* */
|
|
27
|
-
/* */
|
|
28
|
-
/* */
|
|
29
|
-
/* */
|
|
30
|
-
/* */
|
|
31
|
-
/* */
|
|
32
|
-
/* */
|
|
33
|
-
/* */
|
|
34
|
-
//# sourceMappingURL=/Users/dfilipiak/projects/npm/json10/tmp-bundle-release/bundle/project/json10/bundle-nocutsrc/app.js.map
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dummy1664632099637 = void 0;
|
|
4
|
+
function dummy1664632099637() { }
|
|
5
|
+
exports.dummy1664632099637 = dummy1664632099637;
|
|
6
|
+
//# sourceMappingURL=/Users/dariusz/projects/npm/json10/tmp-bundle-release/bundle/project/json10/bundle-nocutsrc/app.js.map
|
package/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../tmp-source-bundle/app.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../tmp-source-bundle/app.ts"],"names":[],"mappings":";;;AAAA,SAAgB,kBAAkB,KAAK,CAAC;AAAxC,gDAAwC"}
|
package/index.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
var tslib_1 = require("tslib");
|
|
4
4
|
(0, tslib_1.__exportStar)(require("./lib"), exports);
|
|
5
|
-
//# sourceMappingURL=/Users/
|
|
5
|
+
//# sourceMappingURL=/Users/dariusz/projects/npm/json10/tmp-bundle-release/bundle/project/json10/bundle-nocutsrc/index.js.map
|
package/lib/index.js
CHANGED
|
@@ -62,4 +62,4 @@ var JSON10 = /** @class */ (function () {
|
|
|
62
62
|
return JSON10;
|
|
63
63
|
}());
|
|
64
64
|
exports.JSON10 = JSON10;
|
|
65
|
-
//# sourceMappingURL=/Users/
|
|
65
|
+
//# sourceMappingURL=/Users/dariusz/projects/npm/json10/tmp-bundle-release/bundle/project/json10/bundle-nocutsrc/lib/index.js.map
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "json10",
|
|
3
3
|
"description": "Handle circural references, comments and many more inside JSON",
|
|
4
|
-
"version": "13.0.
|
|
4
|
+
"version": "13.0.23",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "mocha --require ts-node/register src/**/*.spec.ts",
|
|
7
7
|
"test:watch": "mocha --compilers ts-node/register src/**/*.spec.ts --watch"
|
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
},
|
|
22
22
|
"homepage": "https://github.com/darekf77/json10#readme",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"lodash-walk-object": "~13.0.
|
|
24
|
+
"lodash-walk-object": "~13.0.23"
|
|
25
25
|
},
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"private": false,
|
|
28
|
-
"lastBuildTagHash": "
|
|
28
|
+
"lastBuildTagHash": "f435ce415cab72c66116185162e3af61d0ff91f0",
|
|
29
29
|
"devDependencies": {}
|
|
30
30
|
}
|
package/tmp-environment.json
CHANGED
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
},
|
|
45
45
|
"name": "json10",
|
|
46
46
|
"description": "Handle circural references, comments and many more inside JSON",
|
|
47
|
-
"version": "13.0.
|
|
47
|
+
"version": "13.0.23",
|
|
48
48
|
"scripts": {
|
|
49
49
|
"test": "mocha --require ts-node/register src/**/*.spec.ts",
|
|
50
50
|
"test:watch": "mocha --compilers ts-node/register src/**/*.spec.ts --watch"
|
|
@@ -64,15 +64,14 @@
|
|
|
64
64
|
},
|
|
65
65
|
"homepage": "https://github.com/darekf77/json10#readme",
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"lodash-walk-object": "~13.0.
|
|
67
|
+
"lodash-walk-object": "~13.0.23"
|
|
68
68
|
},
|
|
69
69
|
"license": "MIT",
|
|
70
70
|
"private": false,
|
|
71
|
-
"lastBuildTagHash": "
|
|
71
|
+
"lastBuildTagHash": "f435ce415cab72c66116185162e3af61d0ff91f0",
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"@angular-devkit/build-angular": "~13.2.5",
|
|
74
74
|
"@angular-devkit/core": "~13.2.6",
|
|
75
|
-
"@angular/animations": "~13.2.0",
|
|
76
75
|
"@angular/cdk": "~13.2.4",
|
|
77
76
|
"@angular/cli": "~13.2.5",
|
|
78
77
|
"@angular/common": "~13.2.0",
|
|
@@ -139,13 +138,13 @@
|
|
|
139
138
|
"@types/vinyl": "2.0.2",
|
|
140
139
|
"@types/watch": "1.0.0",
|
|
141
140
|
"accepts": "1.3.4",
|
|
141
|
+
"any-project-cli": "~0.0.9",
|
|
142
142
|
"axios": "0.17.1",
|
|
143
|
-
"background-worker-process": "~13.0.
|
|
143
|
+
"background-worker-process": "~13.0.21",
|
|
144
144
|
"bcryptjs": "2.4.3",
|
|
145
|
-
"better-sqlite3": "7.
|
|
145
|
+
"better-sqlite3": "7.6.2",
|
|
146
146
|
"body-parser": "1.18.2",
|
|
147
147
|
"bootstrap": "5.1.3",
|
|
148
|
-
"bs4-breakpoint": "13.0.28",
|
|
149
148
|
"buffer-shims": "1.0.0",
|
|
150
149
|
"callsite-record": "4.1.3",
|
|
151
150
|
"chai": "4.2.0",
|
|
@@ -180,10 +179,10 @@
|
|
|
180
179
|
"fbgraph": "1.4.1",
|
|
181
180
|
"file-loader": "1.1.5",
|
|
182
181
|
"firedev": "^13",
|
|
183
|
-
"firedev-crud": "~13.0.
|
|
184
|
-
"firedev-crud-deamon": "~13.0.
|
|
185
|
-
"firedev-ports": "~13.0.
|
|
186
|
-
"firedev-storage": "~13.0.
|
|
182
|
+
"firedev-crud": "~13.0.29",
|
|
183
|
+
"firedev-crud-deamon": "~13.0.20",
|
|
184
|
+
"firedev-ports": "~13.0.23",
|
|
185
|
+
"firedev-storage": "~13.0.15",
|
|
187
186
|
"fkill": "6.1.0",
|
|
188
187
|
"font-awesome": "4.7.0",
|
|
189
188
|
"fs-extra": "8.1.0",
|
|
@@ -194,17 +193,17 @@
|
|
|
194
193
|
"http-proxy": "1.16.2",
|
|
195
194
|
"http-proxy-middleware": "0.19.1",
|
|
196
195
|
"http-server": "0.11.1",
|
|
197
|
-
"incremental-compiler": "~13.0.
|
|
196
|
+
"incremental-compiler": "~13.0.26",
|
|
198
197
|
"inquirer": "7.3.3",
|
|
199
198
|
"inquirer-autocomplete-prompt": "1.3.0",
|
|
200
199
|
"is-elevated": "3.0.0",
|
|
201
|
-
"isomorphic-region-loader": "1.0.2",
|
|
200
|
+
"isomorphic-region-loader": "~1.0.2",
|
|
202
201
|
"istanbul-instrumenter-loader": "2.0.0",
|
|
203
202
|
"jasmine-core": "4.0.0",
|
|
204
203
|
"jscodeshift": "0.6.3",
|
|
205
204
|
"json-stringify-safe": "5.0.1",
|
|
206
|
-
"json10": "~13.0.
|
|
207
|
-
"json10-writer": "~13.0.
|
|
205
|
+
"json10": "~13.0.22",
|
|
206
|
+
"json10-writer": "~13.0.20",
|
|
208
207
|
"json5": "2.1.3",
|
|
209
208
|
"json5-writer": "0.2.0",
|
|
210
209
|
"karma": "6.3.0",
|
|
@@ -228,11 +227,11 @@
|
|
|
228
227
|
"mkdirp": "0.5.1",
|
|
229
228
|
"mocha": "5.2.0",
|
|
230
229
|
"moment": "2.22.2",
|
|
231
|
-
"morphi": "~13.0.
|
|
230
|
+
"morphi": "~13.0.47",
|
|
232
231
|
"ng-packagr": "13.0.0",
|
|
233
232
|
"ng-talkback": "~13.0.14",
|
|
234
|
-
"ng2-logger": "~13.0.
|
|
235
|
-
"ng2-rest": "~13.0.
|
|
233
|
+
"ng2-logger": "~13.0.25",
|
|
234
|
+
"ng2-rest": "~13.0.30",
|
|
236
235
|
"ng4-icons": "~13.0.16",
|
|
237
236
|
"ng4-modal": "~13.0.18",
|
|
238
237
|
"ngx-bootstrap": "8.0.0",
|
|
@@ -271,25 +270,25 @@
|
|
|
271
270
|
"sloc": "0.2.0",
|
|
272
271
|
"socket.io": "2.4.1",
|
|
273
272
|
"sort-package-json": "1.11.0",
|
|
274
|
-
"static-columns": "13.0.
|
|
273
|
+
"static-columns": "~13.0.23",
|
|
275
274
|
"string-similarity": "4.0.2",
|
|
276
275
|
"sudo-block": "3.0.0",
|
|
277
276
|
"systeminformation": "3.45.7",
|
|
278
277
|
"task.js": "0.1.5",
|
|
279
|
-
"tnp-cli": "~13.0.
|
|
280
|
-
"tnp-config": "~13.0.
|
|
281
|
-
"tnp-core": "~13.0.
|
|
282
|
-
"tnp-db": "~13.0.
|
|
283
|
-
"tnp-helpers": "~13.0.
|
|
284
|
-
"tnp-models": "~13.0.
|
|
278
|
+
"tnp-cli": "~13.0.25",
|
|
279
|
+
"tnp-config": "~13.0.31",
|
|
280
|
+
"tnp-core": "~13.0.65",
|
|
281
|
+
"tnp-db": "~13.0.30",
|
|
282
|
+
"tnp-helpers": "~13.0.36",
|
|
283
|
+
"tnp-models": "~13.0.24",
|
|
285
284
|
"tnp-ui": "~13.0.19",
|
|
286
285
|
"ts-debug": "1.3.0",
|
|
287
286
|
"ts-loader": "2.3.1",
|
|
288
287
|
"ts-node": "10.7.0",
|
|
289
288
|
"tslib": "~2.3.0",
|
|
290
|
-
"typeorm": "~0.
|
|
289
|
+
"typeorm": "~0.3.7",
|
|
291
290
|
"typescript": "~4.5.2",
|
|
292
|
-
"typescript-class-helpers": "~13.0.
|
|
291
|
+
"typescript-class-helpers": "~13.0.25",
|
|
293
292
|
"typescript-formatter": "~7.2.2",
|
|
294
293
|
"underscore": "1.9.1",
|
|
295
294
|
"uuid": "8.3.2",
|
|
@@ -300,9 +299,9 @@
|
|
|
300
299
|
}
|
|
301
300
|
},
|
|
302
301
|
"build": {
|
|
303
|
-
"number":
|
|
304
|
-
"date": "2022-
|
|
305
|
-
"hash": "
|
|
302
|
+
"number": 191,
|
|
303
|
+
"date": "2022-10-01T13:48:13.000Z",
|
|
304
|
+
"hash": "f255932a5da353d63001be7715d70dfc3fdfb9a8",
|
|
306
305
|
"options": {}
|
|
307
306
|
},
|
|
308
307
|
"currentProjectName": "json10",
|
|
@@ -310,7 +309,7 @@
|
|
|
310
309
|
"currentProjectLaunchConfiguration": "{\"version\":\"0.2.0\",\"configurations\":[{\"type\":\"node\",\"request\":\"launch\",\"name\":\"Launch Server standalone\",\"program\":\"${workspaceFolder}/run.js\",\"args\":[\"--ENVoverride=%7B%0A%20%20%20%20%22clientProjectName%22%3A%20%22json10%22%0A%7D\"],\"runtimeArgs\":[\"--nolazy\",\"-r\",\"ts-node/register\",\"--experimental-worker\"]},{\"name\":\"Debugger with ng serve\",\"type\":\"chrome\",\"request\":\"launch\",\"preLaunchTask\":\"Ng Serve\",\"postDebugTask\":\"terminateall\",\"sourceMaps\":true,\"webRoot\":\"${workspaceFolder}\",\"sourceMapPathOverrides\":{\"webpack:/*\":\"${webRoot}/*\",\"/./*\":\"${webRoot}/*\",\"/tmp-src/*\":\"${webRoot}/*\",\"/*\":\"*\",\"/./~/*\":\"${webRoot}/node_modules/*\"}},{\"type\":\"node\",\"request\":\"attach\",\"name\":\"Attach to global cli tool\",\"port\":9229,\"skipFiles\":[\"<node_internals>/**\"]}],\"compounds\":[{\"name\":\"Debug backend/frontend\",\"configurations\":[\"Launch Server standalone\",\"Debugger with ng serve\"]}]}",
|
|
311
310
|
"currentProjectTasksConfiguration": "{\"version\":\"2.0.0\",\"tasks\":[{\"label\":\"terminateall\",\"command\":\"echo ${input:terminate}\",\"type\":\"shell\",\"problemMatcher\":[]},{\"label\":\"Ng Serve\",\"type\":\"shell\",\"command\":\"tnp build\",\"isBackground\":true,\"presentation\":{\"reveal\":\"always\"},\"group\":{\"kind\":\"build\",\"isDefault\":true},\"problemMatcher\":{\"owner\":\"typescript\",\"source\":\"ts\",\"applyTo\":\"closedDocuments\",\"fileLocation\":[\"relative\",\"${cwd}\"],\"pattern\":\"$tsc\",\"background\":{\"activeOnStart\":true,\"beginsPattern\":{\"regexp\":\"(.*?)\"},\"endsPattern\":{\"regexp\":\"Compiled |Failed to compile.\"}}}}],\"inputs\":[{\"id\":\"terminate\",\"type\":\"command\",\"command\":\"workbench.action.tasks.terminate\",\"args\":\"terminateAll\"}]}",
|
|
312
311
|
"currentProjectType": "isomorphic-lib",
|
|
313
|
-
"currentFrameworkVersion": "13.0.
|
|
312
|
+
"currentFrameworkVersion": "13.0.102",
|
|
314
313
|
"currentProjectIsStrictSite": false,
|
|
315
314
|
"currentProjectIsDependencySite": false,
|
|
316
315
|
"currentProjectIsStatic": false,
|
package/websql/README.md
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# MyLib
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
+
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbjEwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvanNvbjEwL3Byb2plY3RzL2pzb24xMC9zcmMvanNvbjEwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { _ } from 'tnp-core/websql';
|
|
2
|
+
import { walk } from 'lodash-walk-object/websql';
|
|
3
|
+
import { CLASS } from 'typescript-class-helpers/websql';
|
|
4
|
+
// import { Log } from 'ng2-logger/websql'
|
|
5
|
+
// const log = Log.create('JSON10')
|
|
6
|
+
// let counter = 0
|
|
7
|
+
export class JSON10 {
|
|
8
|
+
static structureArray(anyJSON, options) {
|
|
9
|
+
let pathes = [];
|
|
10
|
+
const { include, exclude } = options || {};
|
|
11
|
+
walk.Object(anyJSON, (value, lodashPath) => {
|
|
12
|
+
if (!_.isUndefined(value)) {
|
|
13
|
+
pathes.push(lodashPath);
|
|
14
|
+
}
|
|
15
|
+
}, { include, exclude, checkCircural: true });
|
|
16
|
+
return pathes;
|
|
17
|
+
}
|
|
18
|
+
static cleaned(json, onCircs, options) {
|
|
19
|
+
// console.log('BETTER SRUGUB', json)
|
|
20
|
+
const result = _.isArray(json) ? [] : {};
|
|
21
|
+
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
22
|
+
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
23
|
+
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
24
|
+
if (_.isObject(value) && options.isCircural) {
|
|
25
|
+
_.set(result, lodashPath, null);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
_.set(result, lodashPath, _.cloneDeep(value));
|
|
29
|
+
}
|
|
30
|
+
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
31
|
+
if (_.isFunction(onCircs)) {
|
|
32
|
+
onCircs(circs);
|
|
33
|
+
}
|
|
34
|
+
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
35
|
+
}
|
|
36
|
+
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
37
|
+
const json = this.cleaned(anyJSON, onCircs);
|
|
38
|
+
return JSON.stringify(json, replace, spaces);
|
|
39
|
+
}
|
|
40
|
+
static parse(json, circs = []) {
|
|
41
|
+
let res = JSON.parse(json);
|
|
42
|
+
if (_.isArray(circs)) {
|
|
43
|
+
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
44
|
+
if (circuralTargetPath === '') {
|
|
45
|
+
_.set(res, pathToObj, res);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
let v = _.get(res, circuralTargetPath);
|
|
49
|
+
_.set(res, pathToObj, v);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
return res;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlLXdlYnNxbC9qc29uMTAvcHJvamVjdHMvanNvbjEwL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQVUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEQsMENBQTBDO0FBQzFDLG1DQUFtQztBQUVuQyxrQkFBa0I7QUFFbEIsTUFBTSxPQUFPLE1BQU07SUFFVixNQUFNLENBQUMsY0FBYyxDQUFDLE9BQWUsRUFBRSxPQUFvRDtRQUNoRyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUE7UUFDZixNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sSUFBSSxFQUFTLENBQUM7UUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFFekMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7YUFDeEI7UUFFSCxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBQzdDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFHTSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFnQyxFQUFFLE9BSzNEO1FBQ0QscUNBQXFDO1FBQ3JDLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO1FBQ3hDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFOUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsT0FBTyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUV0RyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUVoRixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDM0MsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFBO2FBQ2hDO2lCQUFNO2dCQUNMLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7YUFDOUM7UUFFSCxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUUzRCxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDekIsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ2Y7UUFFRCxPQUFPLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSyxPQUFlLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2xGLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQWUsRUFBRSxPQUFhLEVBQUUsTUFBZSxFQUFFLE9BQWdDO1FBQ3ZHLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQVksRUFBRSxRQUFnQixFQUFFO1FBQ2xELElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7Z0JBRWxELElBQUksa0JBQWtCLEtBQUssRUFBRSxFQUFFO29CQUM3QixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUE7aUJBQzNCO3FCQUFNO29CQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLGtCQUFrQixDQUFDLENBQUM7b0JBQ3ZDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQTtpQkFDekI7WUFFSCxDQUFDLENBQUMsQ0FBQTtTQUNIO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBfIH0gZnJvbSAndG5wLWNvcmUvd2Vic3FsJztcbmltcG9ydCB7IHdhbGssIE1vZGVscyB9IGZyb20gJ2xvZGFzaC13YWxrLW9iamVjdC93ZWJzcWwnO1xuZXhwb3J0IHR5cGUgQ2lyYyA9IE1vZGVscy5DaXJjO1xuaW1wb3J0IHsgQ0xBU1MgfSBmcm9tICd0eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvd2Vic3FsJztcbi8vIGltcG9ydCB7IExvZyB9IGZyb20gJ25nMi1sb2dnZXIvd2Vic3FsJ1xuLy8gY29uc3QgbG9nID0gTG9nLmNyZWF0ZSgnSlNPTjEwJylcblxuLy8gbGV0IGNvdW50ZXIgPSAwXG5cbmV4cG9ydCBjbGFzcyBKU09OMTAge1xuXG4gIHB1YmxpYyBzdGF0aWMgc3RydWN0dXJlQXJyYXkoYW55SlNPTjogT2JqZWN0LCBvcHRpb25zPzogeyBpbmNsdWRlPzogc3RyaW5nW107IGV4Y2x1ZGU/OiBzdHJpbmdbXSB9KSB7XG4gICAgbGV0IHBhdGhlcyA9IFtdXG4gICAgY29uc3QgeyBpbmNsdWRlLCBleGNsdWRlIH0gPSBvcHRpb25zIHx8IHt9IGFzIGFueTtcbiAgICB3YWxrLk9iamVjdChhbnlKU09OLCAodmFsdWUsIGxvZGFzaFBhdGgpID0+IHtcblxuICAgICAgaWYgKCFfLmlzVW5kZWZpbmVkKHZhbHVlKSkge1xuICAgICAgICBwYXRoZXMucHVzaChsb2Rhc2hQYXRoKVxuICAgICAgfVxuXG4gICAgfSwgeyBpbmNsdWRlLCBleGNsdWRlLCBjaGVja0NpcmN1cmFsOiB0cnVlIH0pXG4gICAgcmV0dXJuIHBhdGhlcztcbiAgfVxuXG5cbiAgcHVibGljIHN0YXRpYyBjbGVhbmVkKGpzb24sIG9uQ2lyY3M/OiAoY2lyY3M6IENpcmNbXSkgPT4gYW55LCBvcHRpb25zPzpcbiAgICB7XG4gICAgICBleGNsdWRlPzogc3RyaW5nW107XG4gICAgICBpbmNsdWRlPzogc3RyaW5nW107XG4gICAgICBicmVhZHRoV2Fsaz86IGJvb2xlYW47XG4gICAgfSkge1xuICAgIC8vIGNvbnNvbGUubG9nKCdCRVRURVIgU1JVR1VCJywganNvbilcbiAgICBjb25zdCByZXN1bHQgPSBfLmlzQXJyYXkoanNvbikgPyBbXSA6IHt9XG4gICAgY29uc3QgY2xhc3NGTiA9IENMQVNTLk9CSkVDVChqc29uKS5pc0NsYXNzT2JqZWN0ICYmIENMQVNTLmdldEZyb21PYmplY3QoanNvbik7XG5cbiAgICBjb25zdCB7IGV4Y2x1ZGUsIGluY2x1ZGUsIGJyZWFkdGhXYWxrIH0gPSBvcHRpb25zIHx8IHsgZXhjbHVkZTogW10sIGluY2x1ZGU6IFtdLCBicmVhZHRoV2FsazogZmFsc2UgfTtcblxuICAgIGNvbnN0IHsgY2lyY3MgfSA9IHdhbGsuT2JqZWN0KGpzb24sICh2YWx1ZSwgbG9kYXNoUGF0aCwgY2hhbmdlVmFsdWVUbywgb3B0aW9ucykgPT4ge1xuXG4gICAgICBpZiAoXy5pc09iamVjdCh2YWx1ZSkgJiYgb3B0aW9ucy5pc0NpcmN1cmFsKSB7XG4gICAgICAgIF8uc2V0KHJlc3VsdCwgbG9kYXNoUGF0aCwgbnVsbClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIF8uc2V0KHJlc3VsdCwgbG9kYXNoUGF0aCwgXy5jbG9uZURlZXAodmFsdWUpKVxuICAgICAgfVxuXG4gICAgfSwgeyBpbmNsdWRlLCBleGNsdWRlLCBicmVhZHRoV2FsaywgY2hlY2tDaXJjdXJhbDogdHJ1ZSB9KTtcblxuICAgIGlmIChfLmlzRnVuY3Rpb24ob25DaXJjcykpIHtcbiAgICAgIG9uQ2lyY3MoY2lyY3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIF8uaXNGdW5jdGlvbihjbGFzc0ZOKSA/IF8ubWVyZ2UobmV3IChjbGFzc0ZOIGFzIGFueSkoKSwgcmVzdWx0KSA6IHJlc3VsdDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgc3RyaW5naWZ5KGFueUpTT046IE9iamVjdCwgcmVwbGFjZT86IGFueSwgc3BhY2VzPzogbnVtYmVyLCBvbkNpcmNzPzogKGNpcmNzOiBDaXJjW10pID0+IGFueSkge1xuICAgIGNvbnN0IGpzb24gPSB0aGlzLmNsZWFuZWQoYW55SlNPTiwgb25DaXJjcyk7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGpzb24sIHJlcGxhY2UsIHNwYWNlcyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHBhcnNlKGpzb246IHN0cmluZywgY2lyY3M6IENpcmNbXSA9IFtdKSB7XG4gICAgbGV0IHJlcyA9IEpTT04ucGFyc2UoanNvbik7XG4gICAgaWYgKF8uaXNBcnJheShjaXJjcykpIHtcbiAgICAgIGNpcmNzLmZvckVhY2goKHsgY2lyY3VyYWxUYXJnZXRQYXRoLCBwYXRoVG9PYmogfSkgPT4ge1xuXG4gICAgICAgIGlmIChjaXJjdXJhbFRhcmdldFBhdGggPT09ICcnKSB7XG4gICAgICAgICAgXy5zZXQocmVzLCBwYXRoVG9PYmosIHJlcylcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsZXQgdiA9IF8uZ2V0KHJlcywgY2lyY3VyYWxUYXJnZXRQYXRoKTtcbiAgICAgICAgICBfLnNldChyZXMsIHBhdGhUb09iaiwgdilcbiAgICAgICAgfVxuXG4gICAgICB9KVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './lib';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1idW5kbGUtd2Vic3FsL2pzb24xMC9wcm9qZWN0cy9qc29uMTAvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG4iXX0=
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { _ } from 'tnp-core/websql';
|
|
2
|
+
import { walk } from 'lodash-walk-object/websql';
|
|
3
|
+
import { CLASS } from 'typescript-class-helpers/websql';
|
|
4
|
+
|
|
5
|
+
// import { Log } from 'ng2-logger/websql'
|
|
6
|
+
// const log = Log.create('JSON10')
|
|
7
|
+
// let counter = 0
|
|
8
|
+
class JSON10 {
|
|
9
|
+
static structureArray(anyJSON, options) {
|
|
10
|
+
let pathes = [];
|
|
11
|
+
const { include, exclude } = options || {};
|
|
12
|
+
walk.Object(anyJSON, (value, lodashPath) => {
|
|
13
|
+
if (!_.isUndefined(value)) {
|
|
14
|
+
pathes.push(lodashPath);
|
|
15
|
+
}
|
|
16
|
+
}, { include, exclude, checkCircural: true });
|
|
17
|
+
return pathes;
|
|
18
|
+
}
|
|
19
|
+
static cleaned(json, onCircs, options) {
|
|
20
|
+
// console.log('BETTER SRUGUB', json)
|
|
21
|
+
const result = _.isArray(json) ? [] : {};
|
|
22
|
+
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
23
|
+
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
24
|
+
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
25
|
+
if (_.isObject(value) && options.isCircural) {
|
|
26
|
+
_.set(result, lodashPath, null);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
_.set(result, lodashPath, _.cloneDeep(value));
|
|
30
|
+
}
|
|
31
|
+
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
32
|
+
if (_.isFunction(onCircs)) {
|
|
33
|
+
onCircs(circs);
|
|
34
|
+
}
|
|
35
|
+
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
36
|
+
}
|
|
37
|
+
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
38
|
+
const json = this.cleaned(anyJSON, onCircs);
|
|
39
|
+
return JSON.stringify(json, replace, spaces);
|
|
40
|
+
}
|
|
41
|
+
static parse(json, circs = []) {
|
|
42
|
+
let res = JSON.parse(json);
|
|
43
|
+
if (_.isArray(circs)) {
|
|
44
|
+
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
45
|
+
if (circuralTargetPath === '') {
|
|
46
|
+
_.set(res, pathToObj, res);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
let v = _.get(res, circuralTargetPath);
|
|
50
|
+
_.set(res, pathToObj, v);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return res;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Generated bundle index. Do not edit.
|
|
60
|
+
*/
|
|
61
|
+
|
|
62
|
+
export { JSON10 };
|
|
63
|
+
//# sourceMappingURL=json10.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json10.mjs","sources":["../../../tmp-libs-for-bundle-websql/json10/projects/json10/src/lib/index.ts","../../../tmp-libs-for-bundle-websql/json10/projects/json10/src/json10.ts"],"sourcesContent":["import { _ } from 'tnp-core/websql';\nimport { walk, Models } from 'lodash-walk-object/websql';\nexport type Circ = Models.Circ;\nimport { CLASS } from 'typescript-class-helpers/websql';\n// import { Log } from 'ng2-logger/websql'\n// const log = Log.create('JSON10')\n\n// let counter = 0\n\nexport class JSON10 {\n\n public static structureArray(anyJSON: Object, options?: { include?: string[]; exclude?: string[] }) {\n let pathes = []\n const { include, exclude } = options || {} as any;\n walk.Object(anyJSON, (value, lodashPath) => {\n\n if (!_.isUndefined(value)) {\n pathes.push(lodashPath)\n }\n\n }, { include, exclude, checkCircural: true })\n return pathes;\n }\n\n\n public static cleaned(json, onCircs?: (circs: Circ[]) => any, options?:\n {\n exclude?: string[];\n include?: string[];\n breadthWalk?: boolean;\n }) {\n // console.log('BETTER SRUGUB', json)\n const result = _.isArray(json) ? [] : {}\n const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);\n\n const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };\n\n const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {\n\n if (_.isObject(value) && options.isCircural) {\n _.set(result, lodashPath, null)\n } else {\n _.set(result, lodashPath, _.cloneDeep(value))\n }\n\n }, { include, exclude, breadthWalk, checkCircural: true });\n\n if (_.isFunction(onCircs)) {\n onCircs(circs)\n }\n\n return _.isFunction(classFN) ? _.merge(new (classFN as any)(), result) : result;\n }\n\n public static stringify(anyJSON: Object, replace?: any, spaces?: number, onCircs?: (circs: Circ[]) => any) {\n const json = this.cleaned(anyJSON, onCircs);\n return JSON.stringify(json, replace, spaces);\n }\n\n public static parse(json: string, circs: Circ[] = []) {\n let res = JSON.parse(json);\n if (_.isArray(circs)) {\n circs.forEach(({ circuralTargetPath, pathToObj }) => {\n\n if (circuralTargetPath === '') {\n _.set(res, pathToObj, res)\n } else {\n let v = _.get(res, circuralTargetPath);\n _.set(res, pathToObj, v)\n }\n\n })\n }\n return res;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { _ } from 'tnp-core/websql';
|
|
2
|
+
import { walk } from 'lodash-walk-object/websql';
|
|
3
|
+
import { CLASS } from 'typescript-class-helpers/websql';
|
|
4
|
+
|
|
5
|
+
// import { Log } from 'ng2-logger/websql'
|
|
6
|
+
// const log = Log.create('JSON10')
|
|
7
|
+
// let counter = 0
|
|
8
|
+
class JSON10 {
|
|
9
|
+
static structureArray(anyJSON, options) {
|
|
10
|
+
let pathes = [];
|
|
11
|
+
const { include, exclude } = options || {};
|
|
12
|
+
walk.Object(anyJSON, (value, lodashPath) => {
|
|
13
|
+
if (!_.isUndefined(value)) {
|
|
14
|
+
pathes.push(lodashPath);
|
|
15
|
+
}
|
|
16
|
+
}, { include, exclude, checkCircural: true });
|
|
17
|
+
return pathes;
|
|
18
|
+
}
|
|
19
|
+
static cleaned(json, onCircs, options) {
|
|
20
|
+
// console.log('BETTER SRUGUB', json)
|
|
21
|
+
const result = _.isArray(json) ? [] : {};
|
|
22
|
+
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
23
|
+
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
24
|
+
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
25
|
+
if (_.isObject(value) && options.isCircural) {
|
|
26
|
+
_.set(result, lodashPath, null);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
_.set(result, lodashPath, _.cloneDeep(value));
|
|
30
|
+
}
|
|
31
|
+
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
32
|
+
if (_.isFunction(onCircs)) {
|
|
33
|
+
onCircs(circs);
|
|
34
|
+
}
|
|
35
|
+
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
36
|
+
}
|
|
37
|
+
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
38
|
+
const json = this.cleaned(anyJSON, onCircs);
|
|
39
|
+
return JSON.stringify(json, replace, spaces);
|
|
40
|
+
}
|
|
41
|
+
static parse(json, circs = []) {
|
|
42
|
+
let res = JSON.parse(json);
|
|
43
|
+
if (_.isArray(circs)) {
|
|
44
|
+
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
45
|
+
if (circuralTargetPath === '') {
|
|
46
|
+
_.set(res, pathToObj, res);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
let v = _.get(res, circuralTargetPath);
|
|
50
|
+
_.set(res, pathToObj, v);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return res;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Generated bundle index. Do not edit.
|
|
60
|
+
*/
|
|
61
|
+
|
|
62
|
+
export { JSON10 };
|
|
63
|
+
//# sourceMappingURL=json10.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json10.mjs","sources":["../../../tmp-libs-for-bundle-websql/json10/projects/json10/src/lib/index.ts","../../../tmp-libs-for-bundle-websql/json10/projects/json10/src/json10.ts"],"sourcesContent":["import { _ } from 'tnp-core/websql';\nimport { walk, Models } from 'lodash-walk-object/websql';\nexport type Circ = Models.Circ;\nimport { CLASS } from 'typescript-class-helpers/websql';\n// import { Log } from 'ng2-logger/websql'\n// const log = Log.create('JSON10')\n\n// let counter = 0\n\nexport class JSON10 {\n\n public static structureArray(anyJSON: Object, options?: { include?: string[]; exclude?: string[] }) {\n let pathes = []\n const { include, exclude } = options || {} as any;\n walk.Object(anyJSON, (value, lodashPath) => {\n\n if (!_.isUndefined(value)) {\n pathes.push(lodashPath)\n }\n\n }, { include, exclude, checkCircural: true })\n return pathes;\n }\n\n\n public static cleaned(json, onCircs?: (circs: Circ[]) => any, options?:\n {\n exclude?: string[];\n include?: string[];\n breadthWalk?: boolean;\n }) {\n // console.log('BETTER SRUGUB', json)\n const result = _.isArray(json) ? [] : {}\n const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);\n\n const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };\n\n const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {\n\n if (_.isObject(value) && options.isCircural) {\n _.set(result, lodashPath, null)\n } else {\n _.set(result, lodashPath, _.cloneDeep(value))\n }\n\n }, { include, exclude, breadthWalk, checkCircural: true });\n\n if (_.isFunction(onCircs)) {\n onCircs(circs)\n }\n\n return _.isFunction(classFN) ? _.merge(new (classFN as any)(), result) : result;\n }\n\n public static stringify(anyJSON: Object, replace?: any, spaces?: number, onCircs?: (circs: Circ[]) => any) {\n const json = this.cleaned(anyJSON, onCircs);\n return JSON.stringify(json, replace, spaces);\n }\n\n public static parse(json: string, circs: Circ[] = []) {\n let res = JSON.parse(json);\n if (_.isArray(circs)) {\n circs.forEach(({ circuralTargetPath, pathToObj }) => {\n\n if (circuralTargetPath === '') {\n _.set(res, pathToObj, res)\n } else {\n let v = _.get(res, circuralTargetPath);\n _.set(res, pathToObj, v)\n }\n\n })\n }\n return res;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Models } from 'lodash-walk-object/websql';
|
|
2
|
+
export declare type Circ = Models.Circ;
|
|
3
|
+
export declare class JSON10 {
|
|
4
|
+
static structureArray(anyJSON: Object, options?: {
|
|
5
|
+
include?: string[];
|
|
6
|
+
exclude?: string[];
|
|
7
|
+
}): any[];
|
|
8
|
+
static cleaned(json: any, onCircs?: (circs: Circ[]) => any, options?: {
|
|
9
|
+
exclude?: string[];
|
|
10
|
+
include?: string[];
|
|
11
|
+
breadthWalk?: boolean;
|
|
12
|
+
}): any;
|
|
13
|
+
static stringify(anyJSON: Object, replace?: any, spaces?: number, onCircs?: (circs: Circ[]) => any): string;
|
|
14
|
+
static parse(json: string, circs?: Circ[]): any;
|
|
15
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "json10",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"peerDependencies": {
|
|
5
|
+
"@angular/common": "^13.2.0",
|
|
6
|
+
"@angular/core": "^13.2.0"
|
|
7
|
+
},
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"tslib": "^2.3.0"
|
|
10
|
+
},
|
|
11
|
+
"module": "fesm2015/json10.mjs",
|
|
12
|
+
"es2020": "fesm2020/json10.mjs",
|
|
13
|
+
"esm2020": "esm2020/json10.mjs",
|
|
14
|
+
"fesm2020": "fesm2020/json10.mjs",
|
|
15
|
+
"fesm2015": "fesm2015/json10.mjs",
|
|
16
|
+
"typings": "json10.d.ts",
|
|
17
|
+
"exports": {
|
|
18
|
+
"./package.json": {
|
|
19
|
+
"default": "./package.json"
|
|
20
|
+
},
|
|
21
|
+
".": {
|
|
22
|
+
"types": "./json10.d.ts",
|
|
23
|
+
"esm2020": "./esm2020/json10.mjs",
|
|
24
|
+
"es2020": "./fesm2020/json10.mjs",
|
|
25
|
+
"es2015": "./fesm2015/json10.mjs",
|
|
26
|
+
"node": "./fesm2015/json10.mjs",
|
|
27
|
+
"default": "./fesm2020/json10.mjs"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"sideEffects": false
|
|
31
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lib';
|