json10 13.1.42 → 13.1.44
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/assets/shared/shared_folder_info.txt +1 -1
- package/browser/README.md +24 -24
- package/browser/esm2020/json10.mjs +4 -4
- package/browser/esm2020/lib/index.mjs +53 -53
- package/browser/esm2020/public-api.mjs +1 -1
- package/browser/fesm2015/json10.mjs +51 -51
- package/browser/fesm2020/json10.mjs +51 -51
- package/browser/json10.d.ts +4 -4
- package/browser/lib/index.d.ts +14 -14
- package/client/README.md +24 -24
- package/client/esm2020/json10.mjs +4 -4
- package/client/esm2020/lib/index.mjs +53 -53
- package/client/esm2020/public-api.mjs +1 -1
- package/client/fesm2015/json10.mjs +51 -51
- package/client/fesm2020/json10.mjs +51 -51
- package/client/json10.d.ts +4 -4
- package/client/lib/index.d.ts +14 -14
- package/client/package.json +42 -41
- package/index.d.ts +1 -1
- package/index.js.map +1 -1
- package/lib/index.d.ts +15 -15
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
- package/package.json_devDependencies.json +224 -224
- package/package.json_tnp.json5 +54 -51
- package/tmp-environment.json +49 -46
- package/websql/README.md +24 -24
- package/websql/esm2020/json10.mjs +4 -4
- package/websql/esm2020/lib/index.mjs +53 -53
- package/websql/esm2020/public-api.mjs +1 -1
- package/websql/fesm2015/json10.mjs +51 -51
- package/websql/fesm2020/json10.mjs +51 -51
- package/websql/json10.d.ts +4 -4
- package/websql/lib/index.d.ts +14 -14
package/tmp-environment.json
CHANGED
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
],
|
|
13
13
|
"ignoreDepsPattern": [],
|
|
14
14
|
"dependencies": {},
|
|
15
|
-
"linkedFolders": []
|
|
15
|
+
"linkedFolders": [],
|
|
16
|
+
"npmFixes": []
|
|
16
17
|
},
|
|
17
18
|
"linkedProjects": [],
|
|
18
19
|
"smartContainerBuildTarget": "",
|
|
@@ -47,7 +48,7 @@
|
|
|
47
48
|
},
|
|
48
49
|
"name": "json10",
|
|
49
50
|
"description": "Handle circural references, comments and many more inside JSON",
|
|
50
|
-
"version": "13.1.
|
|
51
|
+
"version": "13.1.44",
|
|
51
52
|
"scripts": {
|
|
52
53
|
"test": "mocha --require ts-node/register src/**/*.spec.ts",
|
|
53
54
|
"test:watch": "mocha --compilers ts-node/register src/**/*.spec.ts --watch"
|
|
@@ -67,14 +68,15 @@
|
|
|
67
68
|
},
|
|
68
69
|
"homepage": "https://github.com/darekf77/json10#readme",
|
|
69
70
|
"dependencies": {
|
|
70
|
-
"lodash-walk-object": "~13.1.
|
|
71
|
+
"lodash-walk-object": "~13.1.44"
|
|
71
72
|
},
|
|
72
73
|
"license": "MIT",
|
|
73
74
|
"private": false,
|
|
74
|
-
"lastBuildTagHash": "
|
|
75
|
+
"lastBuildTagHash": "81100ef6e51faf630a26e8a67abba06260697806",
|
|
75
76
|
"devDependencies": {
|
|
76
77
|
"@angular-devkit/build-angular": "~13.3.9",
|
|
77
78
|
"@angular-devkit/core": "~13.3.9",
|
|
79
|
+
"@angular-material-extensions/fab-menu": "~6.1.0",
|
|
78
80
|
"@angular/animations": "~13.3.0",
|
|
79
81
|
"@angular/cdk": "~13.3.9",
|
|
80
82
|
"@angular/cli": "~13.3.9",
|
|
@@ -94,6 +96,11 @@
|
|
|
94
96
|
"@iconify/icons-fa-solid": "1.2.2",
|
|
95
97
|
"@iconify/icons-mdi": "1.2.1",
|
|
96
98
|
"@mdi/js": "6.5.95",
|
|
99
|
+
"@ng-matero/extensions": "13.3.2",
|
|
100
|
+
"@ngneat/falso": "6.4.0",
|
|
101
|
+
"@ngneat/hot-toast": "4",
|
|
102
|
+
"@ngneat/overview": "3.0.0",
|
|
103
|
+
"@ngneat/until-destroy": "9.2.3",
|
|
97
104
|
"@ngrx/component-store": "~13.0.2",
|
|
98
105
|
"@ngrx/data": "~13.0.2",
|
|
99
106
|
"@ngrx/effects": "~13.0.2",
|
|
@@ -102,16 +109,10 @@
|
|
|
102
109
|
"@ngrx/schematics": "~13.0.2",
|
|
103
110
|
"@ngrx/store": "~13.0.2",
|
|
104
111
|
"@ngrx/store-devtools": "~13.0.2",
|
|
105
|
-
"@ngx-formly/bootstrap": "6.0.0-next.8",
|
|
106
112
|
"@ngx-formly/core": "6.0.0-next.8",
|
|
107
|
-
"@ngx-formly/ionic": "4.6.3",
|
|
108
113
|
"@ngx-formly/material": "6.0.0-next.8",
|
|
109
|
-
"@ngx-loading-bar/core": "6.0.2",
|
|
110
|
-
"@ngx-loading-bar/http-client": "6.0.2",
|
|
111
|
-
"@ngx-loading-bar/router": "6.0.2",
|
|
112
114
|
"@ngx-translate/core": "14.0.0",
|
|
113
115
|
"@ngx-translate/http-loader": "7.0.0",
|
|
114
|
-
"@swimlane/ngx-datatable": "20.0.0",
|
|
115
116
|
"@types/chai": "4.1.2",
|
|
116
117
|
"@types/chokidar": "2.1.3",
|
|
117
118
|
"@types/dateformat": "1.0.1",
|
|
@@ -142,14 +143,16 @@
|
|
|
142
143
|
"@types/vinyl": "2.0.2",
|
|
143
144
|
"@types/watch": "1.0.0",
|
|
144
145
|
"accepts": "1.3.4",
|
|
145
|
-
"
|
|
146
|
+
"angular-material-css-vars": "5.0.0",
|
|
147
|
+
"any-project-cli": "~13.1.26",
|
|
146
148
|
"axios": "1.3.5",
|
|
147
|
-
"background-worker-process": "~13.1.
|
|
149
|
+
"background-worker-process": "~13.1.43",
|
|
148
150
|
"base32": "0.0.7",
|
|
149
151
|
"bcryptjs": "2.4.3",
|
|
150
152
|
"better-sqlite3": "7.6.2",
|
|
151
153
|
"body-parser": "1.18.2",
|
|
152
154
|
"bootstrap": "4.6.2",
|
|
155
|
+
"bs4-breakpoint": "13.0.33",
|
|
153
156
|
"buffer-shims": "1.0.0",
|
|
154
157
|
"callsite-record": "4.1.3",
|
|
155
158
|
"chai": "4.2.0",
|
|
@@ -158,6 +161,7 @@
|
|
|
158
161
|
"cheerio": "1.0.0-rc.3",
|
|
159
162
|
"chokidar": "3.5.1",
|
|
160
163
|
"circular-json": "0.5.1",
|
|
164
|
+
"class-validator": "0.14.0",
|
|
161
165
|
"command-exists": "1.2.2",
|
|
162
166
|
"compression": "1.7.4",
|
|
163
167
|
"concurrently": "3.5.1",
|
|
@@ -181,16 +185,15 @@
|
|
|
181
185
|
"express": "4.16.3",
|
|
182
186
|
"express-fileupload": "1.4.0",
|
|
183
187
|
"express-session": "1.17.3",
|
|
184
|
-
"fbgraph": "1.4.1",
|
|
185
188
|
"file-loader": "1.1.5",
|
|
186
189
|
"file-saver": "2.0.5",
|
|
187
190
|
"firedev": "^13",
|
|
188
|
-
"firedev-crud": "~13.1.
|
|
189
|
-
"firedev-crud-deamon": "~13.1.
|
|
190
|
-
"firedev-ports": "~13.1.
|
|
191
|
-
"firedev-storage": "~13.
|
|
192
|
-
"firedev-typeorm": "~13.1.
|
|
193
|
-
"firedev-ui": "~13.
|
|
191
|
+
"firedev-crud": "~13.1.48",
|
|
192
|
+
"firedev-crud-deamon": "~13.1.38",
|
|
193
|
+
"firedev-ports": "~13.1.42",
|
|
194
|
+
"firedev-storage": "~13.2.35",
|
|
195
|
+
"firedev-typeorm": "~13.1.30",
|
|
196
|
+
"firedev-ui": "~13.2.7",
|
|
194
197
|
"fkill": "6.1.0",
|
|
195
198
|
"font-awesome": "4.7.0",
|
|
196
199
|
"form-data": "4.0.0",
|
|
@@ -199,21 +202,22 @@
|
|
|
199
202
|
"glob": "7.1.2",
|
|
200
203
|
"gulp": "3.9.1",
|
|
201
204
|
"hostile": "1.3.3",
|
|
205
|
+
"howler": "2.2.3",
|
|
202
206
|
"http-proxy": "1.16.2",
|
|
203
207
|
"http-proxy-middleware": "0.19.1",
|
|
204
208
|
"http-server": "0.11.1",
|
|
205
209
|
"immutable": "4.3.0",
|
|
206
|
-
"incremental-compiler": "~13.1.
|
|
210
|
+
"incremental-compiler": "~13.1.25",
|
|
207
211
|
"inquirer": "7.3.3",
|
|
208
212
|
"inquirer-autocomplete-prompt": "1.3.0",
|
|
209
213
|
"is-elevated": "3.0.0",
|
|
210
|
-
"isomorphic-region-loader": "~13.1.
|
|
214
|
+
"isomorphic-region-loader": "~13.1.36",
|
|
211
215
|
"istanbul-instrumenter-loader": "2.0.0",
|
|
212
216
|
"jasmine-core": "4.0.0",
|
|
213
217
|
"jscodeshift": "0.6.3",
|
|
214
218
|
"json-stringify-safe": "5.0.1",
|
|
215
|
-
"json10": "~13.1.
|
|
216
|
-
"json10-writer": "~13.1.
|
|
219
|
+
"json10": "~13.1.43",
|
|
220
|
+
"json10-writer": "~13.1.39",
|
|
217
221
|
"json5": "2.1.3",
|
|
218
222
|
"json5-writer": "0.2.0",
|
|
219
223
|
"jszip": "3.10.1",
|
|
@@ -228,23 +232,20 @@
|
|
|
228
232
|
"lockfile": "1.0.4",
|
|
229
233
|
"lodash": "4.17.4",
|
|
230
234
|
"lowdb": "1.0.0",
|
|
231
|
-
"magic-renamer": "~13.1.
|
|
235
|
+
"magic-renamer": "~13.1.40",
|
|
232
236
|
"material-design-icons": "3.0.1",
|
|
233
237
|
"method-override": "2.3.10",
|
|
234
238
|
"minimist": "1.2.0",
|
|
235
239
|
"mkdirp": "0.5.1",
|
|
236
240
|
"mocha": "5.2.0",
|
|
237
241
|
"moment": "2.22.2",
|
|
238
|
-
"morphi": "~13.2.
|
|
242
|
+
"morphi": "~13.2.10",
|
|
243
|
+
"ng-in-viewport": "13.0.1",
|
|
239
244
|
"ng-packagr": "13.0.0",
|
|
240
245
|
"ng-talkback": "~13.1.19",
|
|
241
|
-
"ng2-
|
|
242
|
-
"ng2-
|
|
243
|
-
"ng2-rest": "~13.2.4",
|
|
244
|
-
"ng4-icons": "~13.1.21",
|
|
245
|
-
"ng4-modal": "~13.1.23",
|
|
246
|
+
"ng2-logger": "~13.1.24",
|
|
247
|
+
"ng2-rest": "~13.2.7",
|
|
246
248
|
"ngx-ace-wrapper": "12",
|
|
247
|
-
"ngx-bootstrap": "2.0.2",
|
|
248
249
|
"ngx-editor": "12.2.1",
|
|
249
250
|
"ngx-highlightjs": "6.1.3",
|
|
250
251
|
"ngx-moment": "6.0.2",
|
|
@@ -252,8 +253,7 @@
|
|
|
252
253
|
"ngx-progressbar": "8.0.0",
|
|
253
254
|
"ngx-scrollbar": "9.0.2",
|
|
254
255
|
"ngx-store": "3.1.1",
|
|
255
|
-
"ngx-
|
|
256
|
-
"ngx-wig": "1.2.7",
|
|
256
|
+
"ngx-typed-js": "2.1.1",
|
|
257
257
|
"node-cli-tester": "~13.1.19",
|
|
258
258
|
"node-localstorage": "2.1.6",
|
|
259
259
|
"node-notifier": "6.0.0",
|
|
@@ -266,6 +266,7 @@
|
|
|
266
266
|
"passport": "0.3.2",
|
|
267
267
|
"passport-http-bearer": "1.0.1",
|
|
268
268
|
"password-hash": "1.2.2",
|
|
269
|
+
"pica": "9.0.1",
|
|
269
270
|
"portfinder": "1.0.21",
|
|
270
271
|
"prettier": "2.5.1",
|
|
271
272
|
"progress": "2.0.3",
|
|
@@ -284,29 +285,30 @@
|
|
|
284
285
|
"socket.io": "2.4.1",
|
|
285
286
|
"sort-package-json": "1.11.0",
|
|
286
287
|
"sql.js": "1.8.0",
|
|
287
|
-
"static-columns": "~13.3.
|
|
288
|
+
"static-columns": "~13.3.6",
|
|
288
289
|
"string-similarity": "4.0.2",
|
|
289
290
|
"sudo-block": "3.0.0",
|
|
290
291
|
"systeminformation": "3.45.7",
|
|
291
292
|
"task.js": "0.1.5",
|
|
292
|
-
"
|
|
293
|
-
"tnp-
|
|
294
|
-
"tnp-
|
|
295
|
-
"tnp-
|
|
296
|
-
"tnp-
|
|
297
|
-
"tnp-
|
|
298
|
-
"tnp-
|
|
293
|
+
"threads": "1.7.0",
|
|
294
|
+
"tnp-cli": "~13.1.59",
|
|
295
|
+
"tnp-config": "~13.1.75",
|
|
296
|
+
"tnp-core": "~13.2.19",
|
|
297
|
+
"tnp-db": "~13.1.20",
|
|
298
|
+
"tnp-helpers": "~13.1.37",
|
|
299
|
+
"tnp-models": "~13.1.26",
|
|
299
300
|
"ts-debug": "1.3.0",
|
|
300
301
|
"ts-loader": "2.3.1",
|
|
301
302
|
"ts-node": "10.7.0",
|
|
302
303
|
"tslib": "~2.3.0",
|
|
303
304
|
"typeorm": "~0.3.10",
|
|
304
305
|
"typescript": "~4.6.2",
|
|
305
|
-
"typescript-class-helpers": "~13.2.
|
|
306
|
+
"typescript-class-helpers": "~13.2.12",
|
|
306
307
|
"typescript-formatter": "~7.2.2",
|
|
307
308
|
"underscore": "1.9.1",
|
|
308
309
|
"uuid": "8.3.2",
|
|
309
310
|
"validator": "9.2.0",
|
|
311
|
+
"video.js": "8.3.0",
|
|
310
312
|
"vpn-split": "~13.1.23",
|
|
311
313
|
"watch": "1.0.2",
|
|
312
314
|
"yup": "1.1.1",
|
|
@@ -314,16 +316,17 @@
|
|
|
314
316
|
}
|
|
315
317
|
},
|
|
316
318
|
"build": {
|
|
317
|
-
"number":
|
|
318
|
-
"date": "2023-
|
|
319
|
-
"hash": "
|
|
319
|
+
"number": 250,
|
|
320
|
+
"date": "2023-06-01T12:46:26.000Z",
|
|
321
|
+
"hash": "9813456456aa743d2e5a7753f97743549c430375",
|
|
320
322
|
"options": {}
|
|
321
323
|
},
|
|
322
324
|
"currentProjectName": "json10",
|
|
325
|
+
"currentProjectGenericName": "json10",
|
|
323
326
|
"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\"]}]}",
|
|
324
327
|
"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\"}]}",
|
|
325
328
|
"currentProjectType": "isomorphic-lib",
|
|
326
|
-
"currentFrameworkVersion": "13.1.
|
|
329
|
+
"currentFrameworkVersion": "13.1.198",
|
|
327
330
|
"currentProjectIsStrictSite": false,
|
|
328
331
|
"currentProjectIsDependencySite": false,
|
|
329
332
|
"currentProjectIsStatic": false,
|
package/websql/README.md
CHANGED
|
@@ -1,24 +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.
|
|
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.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
5
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbjEwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvanNvbjEwL3Byb2plY3RzL2pzb24xMC9zcmMvanNvbjEwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
import { _ } from 'tnp-core/websql';
|
|
2
|
-
import { walk } from 'lodash-walk-object/websql';
|
|
3
|
-
import { CLASS } from 'typescript-class-helpers/websql';
|
|
4
|
-
export class JSON10 {
|
|
5
|
-
static structureArray(anyJSON, options) {
|
|
6
|
-
let pathes = [];
|
|
7
|
-
const { include, exclude } = options || {};
|
|
8
|
-
walk.Object(anyJSON, (value, lodashPath) => {
|
|
9
|
-
if (!_.isUndefined(value)) {
|
|
10
|
-
pathes.push(lodashPath);
|
|
11
|
-
}
|
|
12
|
-
}, { include, exclude, checkCircural: true });
|
|
13
|
-
return pathes;
|
|
14
|
-
}
|
|
15
|
-
static cleaned(json, onCircs, options) {
|
|
16
|
-
const result = _.isArray(json) ? [] : {};
|
|
17
|
-
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
18
|
-
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
19
|
-
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
20
|
-
if (_.isObject(value) && options.isCircural) {
|
|
21
|
-
_.set(result, lodashPath, null);
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
_.set(result, lodashPath, _.cloneDeep(value));
|
|
25
|
-
}
|
|
26
|
-
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
27
|
-
if (_.isFunction(onCircs)) {
|
|
28
|
-
onCircs(circs);
|
|
29
|
-
}
|
|
30
|
-
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
31
|
-
}
|
|
32
|
-
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
33
|
-
const json = this.cleaned(anyJSON, onCircs);
|
|
34
|
-
return JSON.stringify(json, replace, spaces);
|
|
35
|
-
}
|
|
36
|
-
static parse(json, circs = []) {
|
|
37
|
-
let res = JSON.parse(json);
|
|
38
|
-
if (_.isArray(circs)) {
|
|
39
|
-
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
40
|
-
if (circuralTargetPath === '') {
|
|
41
|
-
_.set(res, pathToObj, res);
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
let v = _.get(res, circuralTargetPath);
|
|
45
|
-
_.set(res, pathToObj, v);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
return res;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
;
|
|
53
|
-
({}); // @--end-of-file-for-module=json10 lib/index.ts
|
|
1
|
+
import { _ } from 'tnp-core/websql';
|
|
2
|
+
import { walk } from 'lodash-walk-object/websql';
|
|
3
|
+
import { CLASS } from 'typescript-class-helpers/websql';
|
|
4
|
+
export class JSON10 {
|
|
5
|
+
static structureArray(anyJSON, options) {
|
|
6
|
+
let pathes = [];
|
|
7
|
+
const { include, exclude } = options || {};
|
|
8
|
+
walk.Object(anyJSON, (value, lodashPath) => {
|
|
9
|
+
if (!_.isUndefined(value)) {
|
|
10
|
+
pathes.push(lodashPath);
|
|
11
|
+
}
|
|
12
|
+
}, { include, exclude, checkCircural: true });
|
|
13
|
+
return pathes;
|
|
14
|
+
}
|
|
15
|
+
static cleaned(json, onCircs, options) {
|
|
16
|
+
const result = _.isArray(json) ? [] : {};
|
|
17
|
+
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
18
|
+
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
19
|
+
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
20
|
+
if (_.isObject(value) && options.isCircural) {
|
|
21
|
+
_.set(result, lodashPath, null);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
_.set(result, lodashPath, _.cloneDeep(value));
|
|
25
|
+
}
|
|
26
|
+
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
27
|
+
if (_.isFunction(onCircs)) {
|
|
28
|
+
onCircs(circs);
|
|
29
|
+
}
|
|
30
|
+
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
31
|
+
}
|
|
32
|
+
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
33
|
+
const json = this.cleaned(anyJSON, onCircs);
|
|
34
|
+
return JSON.stringify(json, replace, spaces);
|
|
35
|
+
}
|
|
36
|
+
static parse(json, circs = []) {
|
|
37
|
+
let res = JSON.parse(json);
|
|
38
|
+
if (_.isArray(circs)) {
|
|
39
|
+
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
40
|
+
if (circuralTargetPath === '') {
|
|
41
|
+
_.set(res, pathToObj, res);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
let v = _.get(res, circuralTargetPath);
|
|
45
|
+
_.set(res, pathToObj, v);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
return res;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
;
|
|
53
|
+
({}); // @--end-of-file-for-module=json10 lib/index.ts
|
|
54
54
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlLXdlYnNxbC9qc29uMTAvcHJvamVjdHMvanNvbjEwL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQVUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFNeEQsTUFBTSxPQUFPLE1BQU07SUFFVixNQUFNLENBQUMsY0FBYyxDQUFDLE9BQWUsRUFBRSxPQUFvRDtRQUNoRyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUE7UUFDZixNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sSUFBSSxFQUFTLENBQUM7UUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFFekMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7YUFDeEI7UUFFSCxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBQzdDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFHTSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFnQyxFQUFFLE9BSzNEO1FBRUQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7UUFDeEMsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5RSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBRXRHLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBRWhGLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO2dCQUMzQyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUE7YUFDaEM7aUJBQU07Z0JBQ0wsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTthQUM5QztRQUVILENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTNELElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN6QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDZjtRQUVELE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFLLE9BQWUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbEYsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBZSxFQUFFLE9BQWEsRUFBRSxNQUFlLEVBQUUsT0FBZ0M7UUFDdkcsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBWSxFQUFFLFFBQWdCLEVBQUU7UUFDbEQsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtnQkFFbEQsSUFBSSxrQkFBa0IsS0FBSyxFQUFFLEVBQUU7b0JBQzdCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQTtpQkFDM0I7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztvQkFDdkMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFBO2lCQUN6QjtZQUVILENBQUMsQ0FBQyxDQUFBO1NBQ0g7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsZ0RBQWdEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5pbXBvcnQgeyB3YWxrLCBNb2RlbHMgfSBmcm9tICdsb2Rhc2gtd2Fsay1vYmplY3Qvd2Vic3FsJztcbmV4cG9ydCB0eXBlIENpcmMgPSBNb2RlbHMuQ2lyYztcbmltcG9ydCB7IENMQVNTIH0gZnJvbSAndHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3dlYnNxbCc7XG5cblxuXG5cblxuZXhwb3J0IGNsYXNzIEpTT04xMCB7XG5cbiAgcHVibGljIHN0YXRpYyBzdHJ1Y3R1cmVBcnJheShhbnlKU09OOiBPYmplY3QsIG9wdGlvbnM/OiB7IGluY2x1ZGU/OiBzdHJpbmdbXTsgZXhjbHVkZT86IHN0cmluZ1tdIH0pIHtcbiAgICBsZXQgcGF0aGVzID0gW11cbiAgICBjb25zdCB7IGluY2x1ZGUsIGV4Y2x1ZGUgfSA9IG9wdGlvbnMgfHwge30gYXMgYW55O1xuICAgIHdhbGsuT2JqZWN0KGFueUpTT04sICh2YWx1ZSwgbG9kYXNoUGF0aCkgPT4ge1xuXG4gICAgICBpZiAoIV8uaXNVbmRlZmluZWQodmFsdWUpKSB7XG4gICAgICAgIHBhdGhlcy5wdXNoKGxvZGFzaFBhdGgpXG4gICAgICB9XG5cbiAgICB9LCB7IGluY2x1ZGUsIGV4Y2x1ZGUsIGNoZWNrQ2lyY3VyYWw6IHRydWUgfSlcbiAgICByZXR1cm4gcGF0aGVzO1xuICB9XG5cblxuICBwdWJsaWMgc3RhdGljIGNsZWFuZWQoanNvbiwgb25DaXJjcz86IChjaXJjczogQ2lyY1tdKSA9PiBhbnksIG9wdGlvbnM/OlxuICAgIHtcbiAgICAgIGV4Y2x1ZGU/OiBzdHJpbmdbXTtcbiAgICAgIGluY2x1ZGU/OiBzdHJpbmdbXTtcbiAgICAgIGJyZWFkdGhXYWxrPzogYm9vbGVhbjtcbiAgICB9KSB7XG5cbiAgICBjb25zdCByZXN1bHQgPSBfLmlzQXJyYXkoanNvbikgPyBbXSA6IHt9XG4gICAgY29uc3QgY2xhc3NGTiA9IENMQVNTLk9CSkVDVChqc29uKS5pc0NsYXNzT2JqZWN0ICYmIENMQVNTLmdldEZyb21PYmplY3QoanNvbik7XG5cbiAgICBjb25zdCB7IGV4Y2x1ZGUsIGluY2x1ZGUsIGJyZWFkdGhXYWxrIH0gPSBvcHRpb25zIHx8IHsgZXhjbHVkZTogW10sIGluY2x1ZGU6IFtdLCBicmVhZHRoV2FsazogZmFsc2UgfTtcblxuICAgIGNvbnN0IHsgY2lyY3MgfSA9IHdhbGsuT2JqZWN0KGpzb24sICh2YWx1ZSwgbG9kYXNoUGF0aCwgY2hhbmdlVmFsdWVUbywgb3B0aW9ucykgPT4ge1xuXG4gICAgICBpZiAoXy5pc09iamVjdCh2YWx1ZSkgJiYgb3B0aW9ucy5pc0NpcmN1cmFsKSB7XG4gICAgICAgIF8uc2V0KHJlc3VsdCwgbG9kYXNoUGF0aCwgbnVsbClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIF8uc2V0KHJlc3VsdCwgbG9kYXNoUGF0aCwgXy5jbG9uZURlZXAodmFsdWUpKVxuICAgICAgfVxuXG4gICAgfSwgeyBpbmNsdWRlLCBleGNsdWRlLCBicmVhZHRoV2FsaywgY2hlY2tDaXJjdXJhbDogdHJ1ZSB9KTtcblxuICAgIGlmIChfLmlzRnVuY3Rpb24ob25DaXJjcykpIHtcbiAgICAgIG9uQ2lyY3MoY2lyY3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIF8uaXNGdW5jdGlvbihjbGFzc0ZOKSA/IF8ubWVyZ2UobmV3IChjbGFzc0ZOIGFzIGFueSkoKSwgcmVzdWx0KSA6IHJlc3VsdDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgc3RyaW5naWZ5KGFueUpTT046IE9iamVjdCwgcmVwbGFjZT86IGFueSwgc3BhY2VzPzogbnVtYmVyLCBvbkNpcmNzPzogKGNpcmNzOiBDaXJjW10pID0+IGFueSkge1xuICAgIGNvbnN0IGpzb24gPSB0aGlzLmNsZWFuZWQoYW55SlNPTiwgb25DaXJjcyk7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGpzb24sIHJlcGxhY2UsIHNwYWNlcyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHBhcnNlKGpzb246IHN0cmluZywgY2lyY3M6IENpcmNbXSA9IFtdKSB7XG4gICAgbGV0IHJlcyA9IEpTT04ucGFyc2UoanNvbik7XG4gICAgaWYgKF8uaXNBcnJheShjaXJjcykpIHtcbiAgICAgIGNpcmNzLmZvckVhY2goKHsgY2lyY3VyYWxUYXJnZXRQYXRoLCBwYXRoVG9PYmogfSkgPT4ge1xuXG4gICAgICAgIGlmIChjaXJjdXJhbFRhcmdldFBhdGggPT09ICcnKSB7XG4gICAgICAgICAgXy5zZXQocmVzLCBwYXRoVG9PYmosIHJlcylcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsZXQgdiA9IF8uZ2V0KHJlcywgY2lyY3VyYWxUYXJnZXRQYXRoKTtcbiAgICAgICAgICBfLnNldChyZXMsIHBhdGhUb09iaiwgdilcbiAgICAgICAgfVxuXG4gICAgICB9KVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT1qc29uMTAgbGliL2luZGV4LnRzIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './lib';
|
|
1
|
+
export * from './lib';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1idW5kbGUtd2Vic3FsL2pzb24xMC9wcm9qZWN0cy9qc29uMTAvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG4iXX0=
|
|
@@ -2,59 +2,59 @@ import { _ } from 'tnp-core/websql';
|
|
|
2
2
|
import { walk } from 'lodash-walk-object/websql';
|
|
3
3
|
import { CLASS } from 'typescript-class-helpers/websql';
|
|
4
4
|
|
|
5
|
-
class JSON10 {
|
|
6
|
-
static structureArray(anyJSON, options) {
|
|
7
|
-
let pathes = [];
|
|
8
|
-
const { include, exclude } = options || {};
|
|
9
|
-
walk.Object(anyJSON, (value, lodashPath) => {
|
|
10
|
-
if (!_.isUndefined(value)) {
|
|
11
|
-
pathes.push(lodashPath);
|
|
12
|
-
}
|
|
13
|
-
}, { include, exclude, checkCircural: true });
|
|
14
|
-
return pathes;
|
|
15
|
-
}
|
|
16
|
-
static cleaned(json, onCircs, options) {
|
|
17
|
-
const result = _.isArray(json) ? [] : {};
|
|
18
|
-
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
19
|
-
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
20
|
-
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
21
|
-
if (_.isObject(value) && options.isCircural) {
|
|
22
|
-
_.set(result, lodashPath, null);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
_.set(result, lodashPath, _.cloneDeep(value));
|
|
26
|
-
}
|
|
27
|
-
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
28
|
-
if (_.isFunction(onCircs)) {
|
|
29
|
-
onCircs(circs);
|
|
30
|
-
}
|
|
31
|
-
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
32
|
-
}
|
|
33
|
-
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
34
|
-
const json = this.cleaned(anyJSON, onCircs);
|
|
35
|
-
return JSON.stringify(json, replace, spaces);
|
|
36
|
-
}
|
|
37
|
-
static parse(json, circs = []) {
|
|
38
|
-
let res = JSON.parse(json);
|
|
39
|
-
if (_.isArray(circs)) {
|
|
40
|
-
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
41
|
-
if (circuralTargetPath === '') {
|
|
42
|
-
_.set(res, pathToObj, res);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
let v = _.get(res, circuralTargetPath);
|
|
46
|
-
_.set(res, pathToObj, v);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
return res;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
;
|
|
5
|
+
class JSON10 {
|
|
6
|
+
static structureArray(anyJSON, options) {
|
|
7
|
+
let pathes = [];
|
|
8
|
+
const { include, exclude } = options || {};
|
|
9
|
+
walk.Object(anyJSON, (value, lodashPath) => {
|
|
10
|
+
if (!_.isUndefined(value)) {
|
|
11
|
+
pathes.push(lodashPath);
|
|
12
|
+
}
|
|
13
|
+
}, { include, exclude, checkCircural: true });
|
|
14
|
+
return pathes;
|
|
15
|
+
}
|
|
16
|
+
static cleaned(json, onCircs, options) {
|
|
17
|
+
const result = _.isArray(json) ? [] : {};
|
|
18
|
+
const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);
|
|
19
|
+
const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };
|
|
20
|
+
const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {
|
|
21
|
+
if (_.isObject(value) && options.isCircural) {
|
|
22
|
+
_.set(result, lodashPath, null);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
_.set(result, lodashPath, _.cloneDeep(value));
|
|
26
|
+
}
|
|
27
|
+
}, { include, exclude, breadthWalk, checkCircural: true });
|
|
28
|
+
if (_.isFunction(onCircs)) {
|
|
29
|
+
onCircs(circs);
|
|
30
|
+
}
|
|
31
|
+
return _.isFunction(classFN) ? _.merge(new classFN(), result) : result;
|
|
32
|
+
}
|
|
33
|
+
static stringify(anyJSON, replace, spaces, onCircs) {
|
|
34
|
+
const json = this.cleaned(anyJSON, onCircs);
|
|
35
|
+
return JSON.stringify(json, replace, spaces);
|
|
36
|
+
}
|
|
37
|
+
static parse(json, circs = []) {
|
|
38
|
+
let res = JSON.parse(json);
|
|
39
|
+
if (_.isArray(circs)) {
|
|
40
|
+
circs.forEach(({ circuralTargetPath, pathToObj }) => {
|
|
41
|
+
if (circuralTargetPath === '') {
|
|
42
|
+
_.set(res, pathToObj, res);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
let v = _.get(res, circuralTargetPath);
|
|
46
|
+
_.set(res, pathToObj, v);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return res;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
;
|
|
54
54
|
({}); // @--end-of-file-for-module=json10 lib/index.ts
|
|
55
55
|
|
|
56
|
-
/**
|
|
57
|
-
* Generated bundle index. Do not edit.
|
|
56
|
+
/**
|
|
57
|
+
* Generated bundle index. Do not edit.
|
|
58
58
|
*/
|
|
59
59
|
|
|
60
60
|
export { JSON10 };
|