nxt-json-view 15.0.0 → 16.0.0-alpha.1
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/README.md +21 -37
- package/esm2020/lib/json-view/json-view.component.mjs +5 -8
- package/esm2020/lib/json-view-item/json-view-item.component.mjs +6 -5
- package/esm2020/lib/json-view.module.mjs +4 -4
- package/esm2020/lib/utils/interfaces.mjs +2 -0
- package/esm2020/lib/utils/utils.mjs +7 -1
- package/esm2020/public-api.mjs +1 -2
- package/fesm2015/nxt-json-view.mjs +22 -18
- package/fesm2015/nxt-json-view.mjs.map +1 -1
- package/fesm2020/nxt-json-view.mjs +22 -18
- package/fesm2020/nxt-json-view.mjs.map +1 -1
- package/lib/json-view/json-view.component.d.ts +5 -7
- package/lib/json-view-item/json-view-item.component.d.ts +3 -5
- package/lib/utils/interfaces.d.ts +5 -0
- package/lib/utils/utils.d.ts +6 -0
- package/package.json +3 -3
- package/public-api.d.ts +1 -1
package/README.md
CHANGED
|
@@ -1,49 +1,43 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Angular JSON viewer
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://github.com/Liquid-JS/nxt-components/blob/master/LICENSE)
|
|
4
|
+
[](https://www.npmjs.com/package/nxt-json-view)
|
|
5
|
+
[](https://www.npmjs.com/package/nxt-json-view)
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
An interactive JSON view component for Angular.
|
|
6
8
|
|
|
7
|
-
|
|
9
|
+
## Quick links
|
|
8
10
|
|
|
9
|
-
|
|
11
|
+
- [Demo](https://liquid-js.github.io/nxt-components/demo/json-view)
|
|
12
|
+
- [Getting started](https://liquid-js.github.io/nxt-components/demo/json-view/getting-started)
|
|
13
|
+
- [API docs](https://liquid-js.github.io/nxt-components/nxt-json-view)
|
|
10
14
|
|
|
11
|
-
|
|
12
|
-
npm install nxt-json-view --save
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## use
|
|
16
|
-
|
|
17
|
-
- Install the dependency package:`nxt-json-view`
|
|
15
|
+
### Installing
|
|
18
16
|
|
|
19
17
|
```sh
|
|
20
|
-
npm install nxt-json-view
|
|
18
|
+
npm install --save nxt-json-view
|
|
21
19
|
```
|
|
22
20
|
|
|
23
|
-
|
|
21
|
+
### Import JSON view module
|
|
24
22
|
|
|
25
23
|
```ts
|
|
26
|
-
import { JsonViewModule } from 'nxt-json-view'
|
|
24
|
+
import { JsonViewModule } from 'nxt-json-view'
|
|
27
25
|
|
|
28
26
|
@NgModule({
|
|
29
|
-
|
|
30
|
-
AppComponent
|
|
31
|
-
],
|
|
27
|
+
...
|
|
32
28
|
imports: [
|
|
33
|
-
|
|
29
|
+
...
|
|
34
30
|
JsonViewModule
|
|
35
|
-
]
|
|
36
|
-
bootstrap: [AppComponent]
|
|
31
|
+
]
|
|
37
32
|
})
|
|
38
|
-
export class AppModule { }
|
|
39
33
|
```
|
|
40
34
|
|
|
41
|
-
|
|
35
|
+
### Prepare JSON data
|
|
42
36
|
|
|
43
|
-
```
|
|
37
|
+
```ts
|
|
44
38
|
data = {
|
|
45
39
|
"name": "nxt-json-view",
|
|
46
|
-
"url": "https://github.com/
|
|
40
|
+
"url": "https://github.com/Liquid-JS/nxt-components/tree/master/packages/json-view",
|
|
47
41
|
"string": "github",
|
|
48
42
|
"number": 88,
|
|
49
43
|
"boolean": true,
|
|
@@ -63,21 +57,11 @@ data = {
|
|
|
63
57
|
],
|
|
64
58
|
"date": new Date(),
|
|
65
59
|
"null": null
|
|
66
|
-
}
|
|
60
|
+
}
|
|
67
61
|
```
|
|
68
62
|
|
|
69
|
-
|
|
63
|
+
### Use it in a template
|
|
70
64
|
|
|
71
65
|
```html
|
|
72
66
|
<nxt-json-view [data]="data"></nxt-json-view>
|
|
73
67
|
```
|
|
74
|
-
|
|
75
|
-
# Document
|
|
76
|
-
|
|
77
|
-
- `data` - `Object` - Data
|
|
78
|
-
- `levelOpen` - `number` - Initialize the number of layers to be expanded (initial value: 0)
|
|
79
|
-
|
|
80
|
-
# stand by
|
|
81
|
-
|
|
82
|
-
- If the project is helpful to you, please click on the star,Thank you
|
|
83
|
-
- If you have ideas, questions, and bugs about the project, welcome to discuss.
|
|
@@ -2,15 +2,12 @@ import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "../json-view-item/json-view-item.component";
|
|
4
4
|
export class JsonViewComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.level = 0;
|
|
7
|
-
}
|
|
8
5
|
}
|
|
9
|
-
JsonViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
10
|
-
JsonViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
6
|
+
JsonViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
JsonViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: JsonViewComponent, selector: "nxt-json-view", inputs: { data: "data", levelOpen: "levelOpen", levelLabels: "levelLabels" }, ngImport: i0, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i1.JsonViewItemComponent, selector: "nxt-json-view-item", inputs: ["data", "key", "level", "levelOpen", "levelLabels"] }] });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewComponent, decorators: [{
|
|
12
9
|
type: Component,
|
|
13
|
-
args: [{ selector: 'nxt-json-view', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"
|
|
10
|
+
args: [{ selector: 'nxt-json-view', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n" }]
|
|
14
11
|
}], propDecorators: { data: [{
|
|
15
12
|
type: Input
|
|
16
13
|
}], levelOpen: [{
|
|
@@ -18,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
18
15
|
}], levelLabels: [{
|
|
19
16
|
type: Input
|
|
20
17
|
}] } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2pzb24tdmlldy9zcmMvbGliL2pzb24tdmlldy9qc29uLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvanNvbi12aWV3L3NyYy9saWIvanNvbi12aWV3L2pzb24tdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7O0FBU25FLE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7a0dBQWpCLGlCQUFpQixtSUNUOUIsc09BT0E7MkZERWEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNJLGVBQWUsaUJBR1YsaUJBQWlCLENBQUMsUUFBUTs4QkFJaEMsSUFBSTtzQkFBWixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IExldmVsTGFiZWxzIH0gZnJvbSAnLi4vdXRpbHMvaW50ZXJmYWNlcydcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdueHQtanNvbi12aWV3JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vanNvbi12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9qc29uLXZpZXcuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZFxufSlcbmV4cG9ydCBjbGFzcyBKc29uVmlld0NvbXBvbmVudCB7XG4gICAgLyoqIEpTT04gZGF0YSwgYW55IHZhbGlkIEpTT04gb2JqZWN0ICovXG4gICAgQElucHV0KCkgZGF0YTogYW55XG4gICAgLyoqIEluaXRpYWwgbnVtYmVyIG9mIGxldmVscyB0byBiZSBleHBhbmRlZCAqL1xuICAgIEBJbnB1dCgpIGxldmVsT3Blbj86IG51bWJlclxuICAgIC8qKiBDdXN0b20gbGFiZWxzIGZvciBlbGVtZW50cyB3aXRoaW4gdGhlIGhpZXJhcmN5ICovXG4gICAgQElucHV0KCkgbGV2ZWxMYWJlbHM/OiBMZXZlbExhYmVsc1xufVxuIiwiPGRpdiBjbGFzcz1cIm54dC1qc29uLXZpZXdcIj5cbiAgICA8bnh0LWpzb24tdmlldy1pdGVtIFtkYXRhXT1cImRhdGFcIlxuICAgICAgICBbbGV2ZWxdPVwiMFwiXG4gICAgICAgIFtsZXZlbE9wZW5dPVwibGV2ZWxPcGVuXCJcbiAgICAgICAgW2xldmVsTGFiZWxzXT1cImxldmVsTGFiZWxzXCJcbiAgICAgICAgY2xhc3M9XCJqc29uLXZpZXdcIj48L254dC1qc29uLXZpZXctaXRlbT5cbjwvZGl2PlxuIl19
|
|
@@ -2,6 +2,7 @@ import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
|
2
2
|
import { isArray, isBoolean, isNumber, isObject, isString, isUndefined } from '../utils/utils';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@angular/common";
|
|
5
|
+
/** @internal */
|
|
5
6
|
export class JsonViewItemComponent {
|
|
6
7
|
constructor() {
|
|
7
8
|
this.level = 0;
|
|
@@ -85,11 +86,11 @@ export class JsonViewItemComponent {
|
|
|
85
86
|
this.isOpen = !this.isOpen;
|
|
86
87
|
}
|
|
87
88
|
}
|
|
88
|
-
JsonViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
89
|
-
JsonViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
89
|
+
JsonViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
90
|
+
JsonViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: { data: "data", key: "key", level: "level", levelOpen: "levelOpen", levelLabels: "levelLabels" }, ngImport: i0, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color:var(--nxt-json-view-color-key, #92278f)}.json-view .value{color:var(--nxt-json-view-color-value, #000000)}.json-view .value .string{color:var(--nxt-json-view-color-string, #3ab54a)}.json-view .value .number{color:var(--nxt-json-view-color-number, #25aae2)}.json-view .value .boolean{color:var(--nxt-json-view-color-boolean, #aa0d91)}.json-view .value .null{color:var(--nxt-json-view-color-null, #f1592a)}.json-view .children{margin-left:1em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: ["data", "key", "level", "levelOpen", "levelLabels"] }] });
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewItemComponent, decorators: [{
|
|
91
92
|
type: Component,
|
|
92
|
-
args: [{ selector: 'nxt-json-view-item', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color
|
|
93
|
+
args: [{ selector: 'nxt-json-view-item', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color:var(--nxt-json-view-color-key, #92278f)}.json-view .value{color:var(--nxt-json-view-color-value, #000000)}.json-view .value .string{color:var(--nxt-json-view-color-string, #3ab54a)}.json-view .value .number{color:var(--nxt-json-view-color-number, #25aae2)}.json-view .value .boolean{color:var(--nxt-json-view-color-boolean, #aa0d91)}.json-view .value .null{color:var(--nxt-json-view-color-null, #f1592a)}.json-view .children{margin-left:1em}\n"] }]
|
|
93
94
|
}], propDecorators: { data: [{
|
|
94
95
|
type: Input
|
|
95
96
|
}], key: [{
|
|
@@ -101,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
101
102
|
}], levelLabels: [{
|
|
102
103
|
type: Input
|
|
103
104
|
}] } });
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi12aWV3LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvanNvbi12aWV3L3NyYy9saWIvanNvbi12aWV3LWl0ZW0vanNvbi12aWV3LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvanNvbi12aWV3L3NyYy9saWIvanNvbi12aWV3LWl0ZW0vanNvbi12aWV3LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFM0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7OztBQUU5RixnQkFBZ0I7QUFPaEIsTUFBTSxPQUFPLHFCQUFxQjtJQU5sQztRQW1CYSxVQUFLLEdBQVcsQ0FBQyxDQUFBO1FBSTFCLFdBQU0sR0FBWSxLQUFLLENBQUE7UUFFdkIsZ0JBQVcsR0FBWSxLQUFLLENBQUE7UUFJNUIsYUFBUSxHQUFZLEtBQUssQ0FBQTtRQUN6QixZQUFPLEdBQVksS0FBSyxDQUFBO1FBQ3hCLFdBQU0sR0FBWSxLQUFLLENBQUE7UUFDdkIsaUJBQVksR0FBOEIsRUFBRSxDQUFBO0tBb0UvQztJQTVGRyxJQUNJLElBQUksQ0FBQyxJQUFxQjtRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQTtRQUNqQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7U0FDZDtJQUNMLENBQUM7SUFDRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUE7SUFDckIsQ0FBQztJQWlCRCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksRUFBRSxD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QXJCLHFCQUFxQixvS0NYbEMsMmlDQTZCQSxnaUNEbEJhLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNJLG9CQUFvQixpQkFHZixpQkFBaUIsQ0FBQyxRQUFROzhCQUtyQyxJQUFJO3NCQURQLEtBQUs7Z0JBVUcsR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IExldmVsTGFiZWxzIH0gZnJvbSAnLi4vdXRpbHMvaW50ZXJmYWNlcydcbmltcG9ydCB7IGlzQXJyYXksIGlzQm9vbGVhbiwgaXNOdW1iZXIsIGlzT2JqZWN0LCBpc1N0cmluZywgaXNVbmRlZmluZWQgfSBmcm9tICcuLi91dGlscy91dGlscydcblxuLyoqIEBpbnRlcm5hbCAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdueHQtanNvbi12aWV3LWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9qc29uLXZpZXctaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vanNvbi12aWV3LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZFxufSlcbmV4cG9ydCBjbGFzcyBKc29uVmlld0l0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgX2RhdGE/OiBhbnlcbiAgICBASW5wdXQoKVxuICAgIHNldCBkYXRhKGRhdGE6IGFueSB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLl9kYXRhID0gZGF0YVxuICAgICAgICBpZiAodGhpcy5pc0luaXQpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdCgpXG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IGRhdGEoKTogYW55IHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGFcbiAgICB9XG4gICAgQElucHV0KCkga2V5Pzogc3RyaW5nXG4gICAgQElucHV0KCkgbGV2ZWw6IG51bWJlciA9IDBcbiAgICBASW5wdXQoKSBsZXZlbE9wZW4/OiBudW1iZXJcbiAgICBASW5wdXQoKSBsZXZlbExhYmVscz86IExldmVsTGFiZWxzXG5cbiAgICBpc09wZW46IGJvb2xlYW4gPSBmYWxzZVxuICAgIGNoaWxkcmVuS2V5cz86IHN0cmluZ1tdXG4gICAgaGFzQ2hpbGRyZW46IGJvb2xlYW4gPSBmYWxzZVxuICAgIGRhdGFUeXBlPzogc3RyaW5nXG4gICAgdmFsdWU6IGFueVxuICAgIHZhbHVlVHlwZT86IHN0cmluZ1xuICAgIGlzT2JqZWN0OiBib29sZWFuID0gZmFsc2VcbiAgICBpc0FycmF5OiBib29sZWFuID0gZmFsc2VcbiAgICBpc0luaXQ6IGJvb2xlYW4gPSBmYWxzZVxuICAgIF9sZXZlbExhYmVsczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5pbml0KClcbiAgICAgICAgdGhpcy5pc0luaXQgPSB0cnVlXG4gICAgfVxuXG4gICAgaW5pdCgpIHtcbiAgICAgICAgdGhpcy5sZXZlbExhYmVsSGFuZGxlKClcbiAgICAgICAgdGhpcy5sZXZlbE9wZW5IYW5kbGUoKVxuICAgICAgICB0aGlzLmNoaWxkcmVuS2V5c0hhbmRsZSgpXG4gICAgICAgIHRoaXMuZGF0YUhhbmRsZSgpXG4gICAgfVxuXG4gICAgbGV2ZWxMYWJlbEhhbmRsZSgpIHtcbiAgICAgICAgaWYgKHRoaXMubGV2ZWxMYWJlbHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5fbGV2ZWxMYWJlbHMgPSB0aGlzLmxldmVsTGFiZWxzW3RoaXMubGV2ZWxdIHx8IHt9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsZXZlbE9wZW5IYW5kbGUoKSB7XG4gICAgICAgIGlmICghaXNVbmRlZmluZWQodGhpcy5sZXZlbE9wZW4pICYmICh0aGlzLmxldmVsIDw9IHRoaXMubGV2ZWxPcGVuKSkge1xuICAgICAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGlsZHJlbktleXNIYW5kbGUoKSB7XG4gICAgICAgIGlmIChpc09iamVjdCh0aGlzLmRhdGEpKSB7XG4gICAgICAgICAgICB0aGlzLmNoaWxkcmVuS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuZGF0YSlcbiAgICAgICAgICAgIGlmICh0aGlzLmNoaWxkcmVuS2V5cyAmJiB0aGlzLmNoaWxkcmVuS2V5cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhc0NoaWxkcmVuID0gdHJ1ZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGF0YUhhbmRsZSgpIHtcbiAgICAgICAgaWYgKGlzT2JqZWN0KHRoaXMuZGF0YSkpIHtcbiAgICAgICAgICAgIHRoaXMuaXNPYmplY3QgPSB0cnVlXG4gICAgICAgICAgICB0aGlzLmRhdGFUeXBlID0gJ09iamVjdCdcbiAgICAgICAgICAgIGlmIChpc0FycmF5KHRoaXMuZGF0YSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzQXJyYXkgPSB0cnVlXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhVHlwZSA9ICdBcnJheSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmtleSAmJiB0aGlzLl9sZXZlbExhYmVsc1t0aGlzLmtleV0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFUeXBlID0gdGhpcy5fbGV2ZWxMYWJlbHNbdGhpcy5rZXldXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5kYXRhXG4gICAgICAgICAgICBpZiAoaXNTdHJpbmcodGhpcy5kYXRhKSkge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWVUeXBlID0gJ3N0cmluZydcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNOdW1iZXIodGhpcy5kYXRhKSkge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWVUeXBlID0gJ251bWJlcidcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNCb29sZWFuKHRoaXMuZGF0YSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlVHlwZSA9ICdib29sZWFuJ1xuICAgICAgICAgICAgfSBlbHNlIGlmIChudWxsID09PSB0aGlzLmRhdGEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlVHlwZSA9ICdudWxsJ1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSAnbnVsbCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRvZ2dsZSgpIHtcbiAgICAgICAgaWYgKCEodGhpcy5jaGlsZHJlbktleXMgJiYgdGhpcy5jaGlsZHJlbktleXMubGVuZ3RoKSkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pc09wZW4gPSAhdGhpcy5pc09wZW5cbiAgICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJqc29uLXZpZXdcIj5cbiAgICA8YSAoY2xpY2spPVwidG9nZ2xlKClcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b2dnbGVyXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnY29sbGFwc2UnOiBpc09wZW4sICdleHBhbmQnOiAhaXNPcGVufVwiXG4gICAgICAgICAgICBbc3R5bGUudmlzaWJpbGl0eV09XCJoYXNDaGlsZHJlbj8ndmlzaWJsZSc6J2hpZGRlbidcIj48L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwia2V5XCJcbiAgICAgICAgICAgICpuZ0lmPVwia2V5XCI+XG4gICAgICAgICAgICA8c3Bhbj57e2tleX19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+OiA8L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc09iamVjdFwiPlxuICAgICAgICAgICAgICAgIHt7IGRhdGFUeXBlIH19XG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc0FycmF5XCI+WyB7eyAkYW55KGRhdGEpPy5sZW5ndGggfX0gXTwvc3Bhbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWlzT2JqZWN0ICYmIHZhbHVlVHlwZVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwidmFsdWVUeXBlXCI+e3sgdmFsdWUgfX08L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2E+XG4gICAgPGRpdiBjbGFzcz1cImNoaWxkcmVuXCJcbiAgICAgICAgKm5nSWY9XCJoYXNDaGlsZHJlbiAmJiBpc09wZW5cIj5cbiAgICAgICAgPG54dC1qc29uLXZpZXctaXRlbSAqbmdGb3I9XCJsZXQgX2tleSBvZiBjaGlsZHJlbktleXNcIlxuICAgICAgICAgICAgW2RhdGFdPVwiZGF0YVtfa2V5XVwiXG4gICAgICAgICAgICBba2V5XT1cIl9rZXlcIlxuICAgICAgICAgICAgW2xldmVsXT1cImxldmVsKzFcIlxuICAgICAgICAgICAgW2xldmVsT3Blbl09XCJsZXZlbE9wZW5cIlxuICAgICAgICAgICAgW2xldmVsTGFiZWxzXT1cImxldmVsTGFiZWxzXCI+PC9ueHQtanNvbi12aWV3LWl0ZW0+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -5,11 +5,11 @@ import { JsonViewComponent } from './json-view/json-view.component';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class JsonViewModule {
|
|
7
7
|
}
|
|
8
|
-
JsonViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
9
|
-
JsonViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
8
|
+
JsonViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
JsonViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, declarations: [JsonViewItemComponent,
|
|
10
10
|
JsonViewComponent], imports: [CommonModule], exports: [JsonViewComponent] });
|
|
11
|
-
JsonViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
11
|
+
JsonViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, imports: [CommonModule] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, decorators: [{
|
|
13
13
|
type: NgModule,
|
|
14
14
|
args: [{
|
|
15
15
|
declarations: [
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2pzb24tdmlldy9zcmMvbGliL3V0aWxzL2ludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTGV2ZWxMYWJlbHMge1xuICAgIFtsZXZlbDogbnVtYmVyXTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxufVxuIl19
|
|
@@ -1,19 +1,25 @@
|
|
|
1
|
+
/** @internal */
|
|
1
2
|
export function isObject(value) {
|
|
2
3
|
return value !== null && typeof value === 'object';
|
|
3
4
|
}
|
|
5
|
+
/** @internal */
|
|
4
6
|
export function isArray(value) {
|
|
5
7
|
return Array.isArray(value);
|
|
6
8
|
}
|
|
9
|
+
/** @internal */
|
|
7
10
|
export function isUndefined(value) {
|
|
8
11
|
return typeof value === 'undefined';
|
|
9
12
|
}
|
|
13
|
+
/** @internal */
|
|
10
14
|
export function isString(value) {
|
|
11
15
|
return typeof value === 'string';
|
|
12
16
|
}
|
|
17
|
+
/** @internal */
|
|
13
18
|
export function isNumber(value) {
|
|
14
19
|
return typeof value === 'number';
|
|
15
20
|
}
|
|
21
|
+
/** @internal */
|
|
16
22
|
export function isBoolean(value) {
|
|
17
23
|
return typeof value === 'boolean';
|
|
18
24
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9qc29uLXZpZXcvc3JjL2xpYi91dGlscy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUFDaEIsTUFBTSxVQUFVLFFBQVEsQ0FBQyxLQUFVO0lBQy9CLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUE7QUFDdEQsQ0FBQztBQUVELGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsT0FBTyxDQUFDLEtBQVU7SUFDOUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQy9CLENBQUM7QUFFRCxnQkFBZ0I7QUFDaEIsTUFBTSxVQUFVLFdBQVcsQ0FBSSxLQUFvQjtJQUMvQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFdBQVcsQ0FBQTtBQUN2QyxDQUFDO0FBRUQsZ0JBQWdCO0FBQ2hCLE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBVTtJQUMvQixPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQTtBQUNwQyxDQUFDO0FBRUQsZ0JBQWdCO0FBQ2hCLE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBVTtJQUMvQixPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQTtBQUNwQyxDQUFDO0FBRUQsZ0JBQWdCO0FBQ2hCLE1BQU0sVUFBVSxTQUFTLENBQUMsS0FBVTtJQUNoQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQTtBQUNyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzT2JqZWN0KHZhbHVlOiBhbnkpOiB2YWx1ZSBpcyBvYmplY3Qge1xuICAgIHJldHVybiB2YWx1ZSAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnXG59XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0FycmF5KHZhbHVlOiBhbnkpOiB2YWx1ZSBpcyB1bmtub3duW10ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKVxufVxuXG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gaXNVbmRlZmluZWQ8VD4odmFsdWU6IFQgfCB1bmRlZmluZWQpOiB2YWx1ZSBpcyB1bmRlZmluZWQge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnXG59XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1N0cmluZyh2YWx1ZTogYW55KTogdmFsdWUgaXMgc3RyaW5nIHtcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJ1xufVxuXG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gaXNOdW1iZXIodmFsdWU6IGFueSk6IHZhbHVlIGlzIG51bWJlciB7XG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcidcbn1cblxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQm9vbGVhbih2YWx1ZTogYW55KTogdmFsdWUgaXMgYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nXG59XG4iXX0=
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export * from './lib/json-view-item/json-view-item.component';
|
|
2
1
|
export * from './lib/json-view.module';
|
|
3
2
|
export * from './lib/json-view/json-view.component';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2pzb24tdmlldy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFBO0FBQ3RDLGNBQWMscUNBQXFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9qc29uLXZpZXcubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvanNvbi12aWV3L2pzb24tdmlldy5jb21wb25lbnQnXG5leHBvcnQgeyBMZXZlbExhYmVscyB9IGZyb20gJy4vbGliL3V0aWxzL2ludGVyZmFjZXMnXG4iXX0=
|
|
@@ -1,27 +1,34 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
3
1
|
import * as i1 from '@angular/common';
|
|
4
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
5
5
|
|
|
6
|
+
/** @internal */
|
|
6
7
|
function isObject(value) {
|
|
7
8
|
return value !== null && typeof value === 'object';
|
|
8
9
|
}
|
|
10
|
+
/** @internal */
|
|
9
11
|
function isArray(value) {
|
|
10
12
|
return Array.isArray(value);
|
|
11
13
|
}
|
|
14
|
+
/** @internal */
|
|
12
15
|
function isUndefined(value) {
|
|
13
16
|
return typeof value === 'undefined';
|
|
14
17
|
}
|
|
18
|
+
/** @internal */
|
|
15
19
|
function isString(value) {
|
|
16
20
|
return typeof value === 'string';
|
|
17
21
|
}
|
|
22
|
+
/** @internal */
|
|
18
23
|
function isNumber(value) {
|
|
19
24
|
return typeof value === 'number';
|
|
20
25
|
}
|
|
26
|
+
/** @internal */
|
|
21
27
|
function isBoolean(value) {
|
|
22
28
|
return typeof value === 'boolean';
|
|
23
29
|
}
|
|
24
30
|
|
|
31
|
+
/** @internal */
|
|
25
32
|
class JsonViewItemComponent {
|
|
26
33
|
constructor() {
|
|
27
34
|
this.level = 0;
|
|
@@ -105,11 +112,11 @@ class JsonViewItemComponent {
|
|
|
105
112
|
this.isOpen = !this.isOpen;
|
|
106
113
|
}
|
|
107
114
|
}
|
|
108
|
-
JsonViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
109
|
-
JsonViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
115
|
+
JsonViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
116
|
+
JsonViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: { data: "data", key: "key", level: "level", levelOpen: "levelOpen", levelLabels: "levelLabels" }, ngImport: i0, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color:var(--nxt-json-view-color-key, #92278f)}.json-view .value{color:var(--nxt-json-view-color-value, #000000)}.json-view .value .string{color:var(--nxt-json-view-color-string, #3ab54a)}.json-view .value .number{color:var(--nxt-json-view-color-number, #25aae2)}.json-view .value .boolean{color:var(--nxt-json-view-color-boolean, #aa0d91)}.json-view .value .null{color:var(--nxt-json-view-color-null, #f1592a)}.json-view .children{margin-left:1em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: ["data", "key", "level", "levelOpen", "levelLabels"] }] });
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewItemComponent, decorators: [{
|
|
111
118
|
type: Component,
|
|
112
|
-
args: [{ selector: 'nxt-json-view-item', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color
|
|
119
|
+
args: [{ selector: 'nxt-json-view-item', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color:var(--nxt-json-view-color-key, #92278f)}.json-view .value{color:var(--nxt-json-view-color-value, #000000)}.json-view .value .string{color:var(--nxt-json-view-color-string, #3ab54a)}.json-view .value .number{color:var(--nxt-json-view-color-number, #25aae2)}.json-view .value .boolean{color:var(--nxt-json-view-color-boolean, #aa0d91)}.json-view .value .null{color:var(--nxt-json-view-color-null, #f1592a)}.json-view .children{margin-left:1em}\n"] }]
|
|
113
120
|
}], propDecorators: { data: [{
|
|
114
121
|
type: Input
|
|
115
122
|
}], key: [{
|
|
@@ -123,15 +130,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
123
130
|
}] } });
|
|
124
131
|
|
|
125
132
|
class JsonViewComponent {
|
|
126
|
-
constructor() {
|
|
127
|
-
this.level = 0;
|
|
128
|
-
}
|
|
129
133
|
}
|
|
130
|
-
JsonViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
131
|
-
JsonViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
134
|
+
JsonViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
135
|
+
JsonViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: JsonViewComponent, selector: "nxt-json-view", inputs: { data: "data", levelOpen: "levelOpen", levelLabels: "levelLabels" }, ngImport: i0, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: ["data", "key", "level", "levelOpen", "levelLabels"] }] });
|
|
136
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewComponent, decorators: [{
|
|
133
137
|
type: Component,
|
|
134
|
-
args: [{ selector: 'nxt-json-view', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"
|
|
138
|
+
args: [{ selector: 'nxt-json-view', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n" }]
|
|
135
139
|
}], propDecorators: { data: [{
|
|
136
140
|
type: Input
|
|
137
141
|
}], levelOpen: [{
|
|
@@ -142,11 +146,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
142
146
|
|
|
143
147
|
class JsonViewModule {
|
|
144
148
|
}
|
|
145
|
-
JsonViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
146
|
-
JsonViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
149
|
+
JsonViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
150
|
+
JsonViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, declarations: [JsonViewItemComponent,
|
|
147
151
|
JsonViewComponent], imports: [CommonModule], exports: [JsonViewComponent] });
|
|
148
|
-
JsonViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
149
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
152
|
+
JsonViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, imports: [CommonModule] });
|
|
153
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, decorators: [{
|
|
150
154
|
type: NgModule,
|
|
151
155
|
args: [{
|
|
152
156
|
declarations: [
|
|
@@ -166,5 +170,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
166
170
|
* Generated bundle index. Do not edit.
|
|
167
171
|
*/
|
|
168
172
|
|
|
169
|
-
export { JsonViewComponent,
|
|
173
|
+
export { JsonViewComponent, JsonViewModule };
|
|
170
174
|
//# sourceMappingURL=nxt-json-view.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nxt-json-view.mjs","sources":["../../../packages/json-view/src/lib/utils/utils.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.html","../../../packages/json-view/src/lib/json-view/json-view.component.ts","../../../packages/json-view/src/lib/json-view/json-view.component.html","../../../packages/json-view/src/lib/json-view.module.ts","../../../packages/json-view/src/nxt-json-view.ts"],"sourcesContent":["export function isObject(value: any): value is object {\n return value !== null && typeof value === 'object'\n}\n\nexport function isArray(value: any): value is unknown[] {\n return Array.isArray(value)\n}\n\nexport function isUndefined<T>(value: T | undefined): value is undefined {\n return typeof value === 'undefined'\n}\n\nexport function isString(value: any): value is string {\n return typeof value === 'string'\n}\n\nexport function isNumber(value: any): value is number {\n return typeof value === 'number'\n}\n\nexport function isBoolean(value: any): value is boolean {\n return typeof value === 'boolean'\n}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core'\nimport { isArray, isBoolean, isNumber, isObject, isString, isUndefined } from '../utils/utils'\n\n@Component({\n selector: 'nxt-json-view-item',\n templateUrl: './json-view-item.component.html',\n styleUrls: ['./json-view-item.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewItemComponent implements OnInit {\n private _data?: any\n @Input()\n set data(data: any | undefined) {\n this._data = data\n if (this.isInit) {\n this.init()\n }\n }\n get data(): any | undefined {\n return this._data\n }\n @Input() key?: string\n @Input() level: number = 0\n @Input() levelOpen?: number\n @Input() levelLabels?: { [key: number]: { [key: string]: string } }\n\n isOpen: boolean = false\n childrenKeys?: string[]\n hasChildren: boolean = false\n dataType?: string\n value: any\n valueType?: string\n isObject: boolean = false\n isArray: boolean = false\n isInit: boolean = false\n _levelLabels: { [key: string]: string } = {}\n\n ngOnInit() {\n this.init()\n this.isInit = true\n }\n\n init() {\n this.levelLabelHandle()\n this.levelOpenHandle()\n this.childrenKeysHandle()\n this.dataHandle()\n }\n\n levelLabelHandle() {\n if (this.levelLabels !== undefined) {\n this._levelLabels = this.levelLabels[this.level] || {}\n }\n }\n\n levelOpenHandle() {\n if (!isUndefined(this.levelOpen) && (this.level <= this.levelOpen)) {\n this.isOpen = true\n }\n }\n\n childrenKeysHandle() {\n if (isObject(this.data)) {\n this.childrenKeys = Object.keys(this.data)\n if (this.childrenKeys && this.childrenKeys.length) {\n this.hasChildren = true\n }\n }\n }\n\n dataHandle() {\n if (isObject(this.data)) {\n this.isObject = true\n this.dataType = 'Object'\n if (isArray(this.data)) {\n this.isArray = true\n this.dataType = 'Array'\n }\n if (this.key && this._levelLabels[this.key]) {\n this.dataType = this._levelLabels[this.key]\n }\n } else {\n this.value = this.data\n if (isString(this.data)) {\n this.valueType = 'string'\n } else if (isNumber(this.data)) {\n this.valueType = 'number'\n } else if (isBoolean(this.data)) {\n this.valueType = 'boolean'\n } else if (null === this.data) {\n this.valueType = 'null'\n this.value = 'null'\n }\n }\n }\n\n toggle() {\n if (!(this.childrenKeys && this.childrenKeys.length)) {\n return\n }\n this.isOpen = !this.isOpen\n }\n\n}\n","<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core'\n\n@Component({\n selector: 'nxt-json-view',\n templateUrl: './json-view.component.html',\n styleUrls: ['./json-view.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewComponent {\n\n @Input() data: any\n @Input() levelOpen?: number\n @Input() levelLabels?: { [key: number]: { [key: string]: string } }\n\n key?: string\n level: number = 0\n\n}\n","<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"level\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { JsonViewItemComponent } from './json-view-item/json-view-item.component'\nimport { JsonViewComponent } from './json-view/json-view.component'\n\n@NgModule({\n declarations: [\n JsonViewItemComponent,\n JsonViewComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n JsonViewComponent\n ]\n})\nexport class JsonViewModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.JsonViewItemComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nxt-json-view.mjs","sources":["../../../packages/json-view/src/lib/utils/utils.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.html","../../../packages/json-view/src/lib/json-view/json-view.component.ts","../../../packages/json-view/src/lib/json-view/json-view.component.html","../../../packages/json-view/src/lib/json-view.module.ts","../../../packages/json-view/src/nxt-json-view.ts"],"sourcesContent":["/** @internal */\nexport function isObject(value: any): value is object {\n return value !== null && typeof value === 'object'\n}\n\n/** @internal */\nexport function isArray(value: any): value is unknown[] {\n return Array.isArray(value)\n}\n\n/** @internal */\nexport function isUndefined<T>(value: T | undefined): value is undefined {\n return typeof value === 'undefined'\n}\n\n/** @internal */\nexport function isString(value: any): value is string {\n return typeof value === 'string'\n}\n\n/** @internal */\nexport function isNumber(value: any): value is number {\n return typeof value === 'number'\n}\n\n/** @internal */\nexport function isBoolean(value: any): value is boolean {\n return typeof value === 'boolean'\n}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core'\nimport { LevelLabels } from '../utils/interfaces'\nimport { isArray, isBoolean, isNumber, isObject, isString, isUndefined } from '../utils/utils'\n\n/** @internal */\n@Component({\n selector: 'nxt-json-view-item',\n templateUrl: './json-view-item.component.html',\n styleUrls: ['./json-view-item.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewItemComponent implements OnInit {\n private _data?: any\n @Input()\n set data(data: any | undefined) {\n this._data = data\n if (this.isInit) {\n this.init()\n }\n }\n get data(): any | undefined {\n return this._data\n }\n @Input() key?: string\n @Input() level: number = 0\n @Input() levelOpen?: number\n @Input() levelLabels?: LevelLabels\n\n isOpen: boolean = false\n childrenKeys?: string[]\n hasChildren: boolean = false\n dataType?: string\n value: any\n valueType?: string\n isObject: boolean = false\n isArray: boolean = false\n isInit: boolean = false\n _levelLabels: { [key: string]: string } = {}\n\n ngOnInit() {\n this.init()\n this.isInit = true\n }\n\n init() {\n this.levelLabelHandle()\n this.levelOpenHandle()\n this.childrenKeysHandle()\n this.dataHandle()\n }\n\n levelLabelHandle() {\n if (this.levelLabels !== undefined) {\n this._levelLabels = this.levelLabels[this.level] || {}\n }\n }\n\n levelOpenHandle() {\n if (!isUndefined(this.levelOpen) && (this.level <= this.levelOpen)) {\n this.isOpen = true\n }\n }\n\n childrenKeysHandle() {\n if (isObject(this.data)) {\n this.childrenKeys = Object.keys(this.data)\n if (this.childrenKeys && this.childrenKeys.length) {\n this.hasChildren = true\n }\n }\n }\n\n dataHandle() {\n if (isObject(this.data)) {\n this.isObject = true\n this.dataType = 'Object'\n if (isArray(this.data)) {\n this.isArray = true\n this.dataType = 'Array'\n }\n if (this.key && this._levelLabels[this.key]) {\n this.dataType = this._levelLabels[this.key]\n }\n } else {\n this.value = this.data\n if (isString(this.data)) {\n this.valueType = 'string'\n } else if (isNumber(this.data)) {\n this.valueType = 'number'\n } else if (isBoolean(this.data)) {\n this.valueType = 'boolean'\n } else if (null === this.data) {\n this.valueType = 'null'\n this.value = 'null'\n }\n }\n }\n\n toggle() {\n if (!(this.childrenKeys && this.childrenKeys.length)) {\n return\n }\n this.isOpen = !this.isOpen\n }\n\n}\n","<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core'\nimport { LevelLabels } from '../utils/interfaces'\n\n@Component({\n selector: 'nxt-json-view',\n templateUrl: './json-view.component.html',\n styleUrls: ['./json-view.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewComponent {\n /** JSON data, any valid JSON object */\n @Input() data: any\n /** Initial number of levels to be expanded */\n @Input() levelOpen?: number\n /** Custom labels for elements within the hierarcy */\n @Input() levelLabels?: LevelLabels\n}\n","<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { JsonViewItemComponent } from './json-view-item/json-view-item.component'\nimport { JsonViewComponent } from './json-view/json-view.component'\n\n@NgModule({\n declarations: [\n JsonViewItemComponent,\n JsonViewComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n JsonViewComponent\n ]\n})\nexport class JsonViewModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.JsonViewItemComponent"],"mappings":"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"}
|
|
@@ -1,27 +1,34 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
3
1
|
import * as i1 from '@angular/common';
|
|
4
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
5
5
|
|
|
6
|
+
/** @internal */
|
|
6
7
|
function isObject(value) {
|
|
7
8
|
return value !== null && typeof value === 'object';
|
|
8
9
|
}
|
|
10
|
+
/** @internal */
|
|
9
11
|
function isArray(value) {
|
|
10
12
|
return Array.isArray(value);
|
|
11
13
|
}
|
|
14
|
+
/** @internal */
|
|
12
15
|
function isUndefined(value) {
|
|
13
16
|
return typeof value === 'undefined';
|
|
14
17
|
}
|
|
18
|
+
/** @internal */
|
|
15
19
|
function isString(value) {
|
|
16
20
|
return typeof value === 'string';
|
|
17
21
|
}
|
|
22
|
+
/** @internal */
|
|
18
23
|
function isNumber(value) {
|
|
19
24
|
return typeof value === 'number';
|
|
20
25
|
}
|
|
26
|
+
/** @internal */
|
|
21
27
|
function isBoolean(value) {
|
|
22
28
|
return typeof value === 'boolean';
|
|
23
29
|
}
|
|
24
30
|
|
|
31
|
+
/** @internal */
|
|
25
32
|
class JsonViewItemComponent {
|
|
26
33
|
constructor() {
|
|
27
34
|
this.level = 0;
|
|
@@ -105,11 +112,11 @@ class JsonViewItemComponent {
|
|
|
105
112
|
this.isOpen = !this.isOpen;
|
|
106
113
|
}
|
|
107
114
|
}
|
|
108
|
-
JsonViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
109
|
-
JsonViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
115
|
+
JsonViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
116
|
+
JsonViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: { data: "data", key: "key", level: "level", levelOpen: "levelOpen", levelLabels: "levelLabels" }, ngImport: i0, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color:var(--nxt-json-view-color-key, #92278f)}.json-view .value{color:var(--nxt-json-view-color-value, #000000)}.json-view .value .string{color:var(--nxt-json-view-color-string, #3ab54a)}.json-view .value .number{color:var(--nxt-json-view-color-number, #25aae2)}.json-view .value .boolean{color:var(--nxt-json-view-color-boolean, #aa0d91)}.json-view .value .null{color:var(--nxt-json-view-color-null, #f1592a)}.json-view .children{margin-left:1em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: ["data", "key", "level", "levelOpen", "levelLabels"] }] });
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewItemComponent, decorators: [{
|
|
111
118
|
type: Component,
|
|
112
|
-
args: [{ selector: 'nxt-json-view-item', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color
|
|
119
|
+
args: [{ selector: 'nxt-json-view-item', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n", styles: [".json-view a{cursor:pointer;text-decoration:none}.json-view .toggler{width:1em;padding:0;display:block;text-align:center;float:left}.json-view .collapse:before{content:\"-\"}.json-view .expand:before{content:\"+\"}.json-view .key{color:var(--nxt-json-view-color-key, #92278f)}.json-view .value{color:var(--nxt-json-view-color-value, #000000)}.json-view .value .string{color:var(--nxt-json-view-color-string, #3ab54a)}.json-view .value .number{color:var(--nxt-json-view-color-number, #25aae2)}.json-view .value .boolean{color:var(--nxt-json-view-color-boolean, #aa0d91)}.json-view .value .null{color:var(--nxt-json-view-color-null, #f1592a)}.json-view .children{margin-left:1em}\n"] }]
|
|
113
120
|
}], propDecorators: { data: [{
|
|
114
121
|
type: Input
|
|
115
122
|
}], key: [{
|
|
@@ -123,15 +130,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
123
130
|
}] } });
|
|
124
131
|
|
|
125
132
|
class JsonViewComponent {
|
|
126
|
-
constructor() {
|
|
127
|
-
this.level = 0;
|
|
128
|
-
}
|
|
129
133
|
}
|
|
130
|
-
JsonViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
131
|
-
JsonViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
134
|
+
JsonViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
135
|
+
JsonViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: JsonViewComponent, selector: "nxt-json-view", inputs: { data: "data", levelOpen: "levelOpen", levelLabels: "levelLabels" }, ngImport: i0, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: JsonViewItemComponent, selector: "nxt-json-view-item", inputs: ["data", "key", "level", "levelOpen", "levelLabels"] }] });
|
|
136
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewComponent, decorators: [{
|
|
133
137
|
type: Component,
|
|
134
|
-
args: [{ selector: 'nxt-json-view', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"
|
|
138
|
+
args: [{ selector: 'nxt-json-view', encapsulation: ViewEncapsulation.Emulated, template: "<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n" }]
|
|
135
139
|
}], propDecorators: { data: [{
|
|
136
140
|
type: Input
|
|
137
141
|
}], levelOpen: [{
|
|
@@ -142,11 +146,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
142
146
|
|
|
143
147
|
class JsonViewModule {
|
|
144
148
|
}
|
|
145
|
-
JsonViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
146
|
-
JsonViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
149
|
+
JsonViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
150
|
+
JsonViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, declarations: [JsonViewItemComponent,
|
|
147
151
|
JsonViewComponent], imports: [CommonModule], exports: [JsonViewComponent] });
|
|
148
|
-
JsonViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
149
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
152
|
+
JsonViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, imports: [CommonModule] });
|
|
153
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: JsonViewModule, decorators: [{
|
|
150
154
|
type: NgModule,
|
|
151
155
|
args: [{
|
|
152
156
|
declarations: [
|
|
@@ -166,5 +170,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
166
170
|
* Generated bundle index. Do not edit.
|
|
167
171
|
*/
|
|
168
172
|
|
|
169
|
-
export { JsonViewComponent,
|
|
173
|
+
export { JsonViewComponent, JsonViewModule };
|
|
170
174
|
//# sourceMappingURL=nxt-json-view.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nxt-json-view.mjs","sources":["../../../packages/json-view/src/lib/utils/utils.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.html","../../../packages/json-view/src/lib/json-view/json-view.component.ts","../../../packages/json-view/src/lib/json-view/json-view.component.html","../../../packages/json-view/src/lib/json-view.module.ts","../../../packages/json-view/src/nxt-json-view.ts"],"sourcesContent":["export function isObject(value: any): value is object {\n return value !== null && typeof value === 'object'\n}\n\nexport function isArray(value: any): value is unknown[] {\n return Array.isArray(value)\n}\n\nexport function isUndefined<T>(value: T | undefined): value is undefined {\n return typeof value === 'undefined'\n}\n\nexport function isString(value: any): value is string {\n return typeof value === 'string'\n}\n\nexport function isNumber(value: any): value is number {\n return typeof value === 'number'\n}\n\nexport function isBoolean(value: any): value is boolean {\n return typeof value === 'boolean'\n}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core'\nimport { isArray, isBoolean, isNumber, isObject, isString, isUndefined } from '../utils/utils'\n\n@Component({\n selector: 'nxt-json-view-item',\n templateUrl: './json-view-item.component.html',\n styleUrls: ['./json-view-item.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewItemComponent implements OnInit {\n private _data?: any\n @Input()\n set data(data: any | undefined) {\n this._data = data\n if (this.isInit) {\n this.init()\n }\n }\n get data(): any | undefined {\n return this._data\n }\n @Input() key?: string\n @Input() level: number = 0\n @Input() levelOpen?: number\n @Input() levelLabels?: { [key: number]: { [key: string]: string } }\n\n isOpen: boolean = false\n childrenKeys?: string[]\n hasChildren: boolean = false\n dataType?: string\n value: any\n valueType?: string\n isObject: boolean = false\n isArray: boolean = false\n isInit: boolean = false\n _levelLabels: { [key: string]: string } = {}\n\n ngOnInit() {\n this.init()\n this.isInit = true\n }\n\n init() {\n this.levelLabelHandle()\n this.levelOpenHandle()\n this.childrenKeysHandle()\n this.dataHandle()\n }\n\n levelLabelHandle() {\n if (this.levelLabels !== undefined) {\n this._levelLabels = this.levelLabels[this.level] || {}\n }\n }\n\n levelOpenHandle() {\n if (!isUndefined(this.levelOpen) && (this.level <= this.levelOpen)) {\n this.isOpen = true\n }\n }\n\n childrenKeysHandle() {\n if (isObject(this.data)) {\n this.childrenKeys = Object.keys(this.data)\n if (this.childrenKeys && this.childrenKeys.length) {\n this.hasChildren = true\n }\n }\n }\n\n dataHandle() {\n if (isObject(this.data)) {\n this.isObject = true\n this.dataType = 'Object'\n if (isArray(this.data)) {\n this.isArray = true\n this.dataType = 'Array'\n }\n if (this.key && this._levelLabels[this.key]) {\n this.dataType = this._levelLabels[this.key]\n }\n } else {\n this.value = this.data\n if (isString(this.data)) {\n this.valueType = 'string'\n } else if (isNumber(this.data)) {\n this.valueType = 'number'\n } else if (isBoolean(this.data)) {\n this.valueType = 'boolean'\n } else if (null === this.data) {\n this.valueType = 'null'\n this.value = 'null'\n }\n }\n }\n\n toggle() {\n if (!(this.childrenKeys && this.childrenKeys.length)) {\n return\n }\n this.isOpen = !this.isOpen\n }\n\n}\n","<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core'\n\n@Component({\n selector: 'nxt-json-view',\n templateUrl: './json-view.component.html',\n styleUrls: ['./json-view.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewComponent {\n\n @Input() data: any\n @Input() levelOpen?: number\n @Input() levelLabels?: { [key: number]: { [key: string]: string } }\n\n key?: string\n level: number = 0\n\n}\n","<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"level\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { JsonViewItemComponent } from './json-view-item/json-view-item.component'\nimport { JsonViewComponent } from './json-view/json-view.component'\n\n@NgModule({\n declarations: [\n JsonViewItemComponent,\n JsonViewComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n JsonViewComponent\n ]\n})\nexport class JsonViewModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.JsonViewItemComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nxt-json-view.mjs","sources":["../../../packages/json-view/src/lib/utils/utils.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.ts","../../../packages/json-view/src/lib/json-view-item/json-view-item.component.html","../../../packages/json-view/src/lib/json-view/json-view.component.ts","../../../packages/json-view/src/lib/json-view/json-view.component.html","../../../packages/json-view/src/lib/json-view.module.ts","../../../packages/json-view/src/nxt-json-view.ts"],"sourcesContent":["/** @internal */\nexport function isObject(value: any): value is object {\n return value !== null && typeof value === 'object'\n}\n\n/** @internal */\nexport function isArray(value: any): value is unknown[] {\n return Array.isArray(value)\n}\n\n/** @internal */\nexport function isUndefined<T>(value: T | undefined): value is undefined {\n return typeof value === 'undefined'\n}\n\n/** @internal */\nexport function isString(value: any): value is string {\n return typeof value === 'string'\n}\n\n/** @internal */\nexport function isNumber(value: any): value is number {\n return typeof value === 'number'\n}\n\n/** @internal */\nexport function isBoolean(value: any): value is boolean {\n return typeof value === 'boolean'\n}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core'\nimport { LevelLabels } from '../utils/interfaces'\nimport { isArray, isBoolean, isNumber, isObject, isString, isUndefined } from '../utils/utils'\n\n/** @internal */\n@Component({\n selector: 'nxt-json-view-item',\n templateUrl: './json-view-item.component.html',\n styleUrls: ['./json-view-item.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewItemComponent implements OnInit {\n private _data?: any\n @Input()\n set data(data: any | undefined) {\n this._data = data\n if (this.isInit) {\n this.init()\n }\n }\n get data(): any | undefined {\n return this._data\n }\n @Input() key?: string\n @Input() level: number = 0\n @Input() levelOpen?: number\n @Input() levelLabels?: LevelLabels\n\n isOpen: boolean = false\n childrenKeys?: string[]\n hasChildren: boolean = false\n dataType?: string\n value: any\n valueType?: string\n isObject: boolean = false\n isArray: boolean = false\n isInit: boolean = false\n _levelLabels: { [key: string]: string } = {}\n\n ngOnInit() {\n this.init()\n this.isInit = true\n }\n\n init() {\n this.levelLabelHandle()\n this.levelOpenHandle()\n this.childrenKeysHandle()\n this.dataHandle()\n }\n\n levelLabelHandle() {\n if (this.levelLabels !== undefined) {\n this._levelLabels = this.levelLabels[this.level] || {}\n }\n }\n\n levelOpenHandle() {\n if (!isUndefined(this.levelOpen) && (this.level <= this.levelOpen)) {\n this.isOpen = true\n }\n }\n\n childrenKeysHandle() {\n if (isObject(this.data)) {\n this.childrenKeys = Object.keys(this.data)\n if (this.childrenKeys && this.childrenKeys.length) {\n this.hasChildren = true\n }\n }\n }\n\n dataHandle() {\n if (isObject(this.data)) {\n this.isObject = true\n this.dataType = 'Object'\n if (isArray(this.data)) {\n this.isArray = true\n this.dataType = 'Array'\n }\n if (this.key && this._levelLabels[this.key]) {\n this.dataType = this._levelLabels[this.key]\n }\n } else {\n this.value = this.data\n if (isString(this.data)) {\n this.valueType = 'string'\n } else if (isNumber(this.data)) {\n this.valueType = 'number'\n } else if (isBoolean(this.data)) {\n this.valueType = 'boolean'\n } else if (null === this.data) {\n this.valueType = 'null'\n this.value = 'null'\n }\n }\n }\n\n toggle() {\n if (!(this.childrenKeys && this.childrenKeys.length)) {\n return\n }\n this.isOpen = !this.isOpen\n }\n\n}\n","<div class=\"json-view\">\n <a (click)=\"toggle()\">\n <span class=\"toggler\"\n [ngClass]=\"{'collapse': isOpen, 'expand': !isOpen}\"\n [style.visibility]=\"hasChildren?'visible':'hidden'\"></span>\n <span class=\"key\"\n *ngIf=\"key\">\n <span>{{key}}</span>\n <span>: </span>\n </span>\n <span class=\"value\">\n <span *ngIf=\"isObject\">\n {{ dataType }}\n <span *ngIf=\"isArray\">[ {{ $any(data)?.length }} ]</span>\n </span>\n <span *ngIf=\"!isObject && valueType\"\n [ngClass]=\"valueType\">{{ value }}</span>\n </span>\n </a>\n <div class=\"children\"\n *ngIf=\"hasChildren && isOpen\">\n <nxt-json-view-item *ngFor=\"let _key of childrenKeys\"\n [data]=\"data[_key]\"\n [key]=\"_key\"\n [level]=\"level+1\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"></nxt-json-view-item>\n </div>\n</div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core'\nimport { LevelLabels } from '../utils/interfaces'\n\n@Component({\n selector: 'nxt-json-view',\n templateUrl: './json-view.component.html',\n styleUrls: ['./json-view.component.scss'],\n encapsulation: ViewEncapsulation.Emulated\n})\nexport class JsonViewComponent {\n /** JSON data, any valid JSON object */\n @Input() data: any\n /** Initial number of levels to be expanded */\n @Input() levelOpen?: number\n /** Custom labels for elements within the hierarcy */\n @Input() levelLabels?: LevelLabels\n}\n","<div class=\"nxt-json-view\">\n <nxt-json-view-item [data]=\"data\"\n [level]=\"0\"\n [levelOpen]=\"levelOpen\"\n [levelLabels]=\"levelLabels\"\n class=\"json-view\"></nxt-json-view-item>\n</div>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { JsonViewItemComponent } from './json-view-item/json-view-item.component'\nimport { JsonViewComponent } from './json-view/json-view.component'\n\n@NgModule({\n declarations: [\n JsonViewItemComponent,\n JsonViewComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n JsonViewComponent\n ]\n})\nexport class JsonViewModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.JsonViewItemComponent"],"mappings":"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"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
+
import { LevelLabels } from '../utils/interfaces';
|
|
1
2
|
import * as i0 from "@angular/core";
|
|
2
3
|
export declare class JsonViewComponent {
|
|
4
|
+
/** JSON data, any valid JSON object */
|
|
3
5
|
data: any;
|
|
6
|
+
/** Initial number of levels to be expanded */
|
|
4
7
|
levelOpen?: number;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
[key: string]: string;
|
|
8
|
-
};
|
|
9
|
-
};
|
|
10
|
-
key?: string;
|
|
11
|
-
level: number;
|
|
8
|
+
/** Custom labels for elements within the hierarcy */
|
|
9
|
+
levelLabels?: LevelLabels;
|
|
12
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<JsonViewComponent, never>;
|
|
13
11
|
static ɵcmp: i0.ɵɵComponentDeclaration<JsonViewComponent, "nxt-json-view", never, { "data": "data"; "levelOpen": "levelOpen"; "levelLabels": "levelLabels"; }, {}, never, never, false, never>;
|
|
14
12
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { OnInit } from '@angular/core';
|
|
2
|
+
import { LevelLabels } from '../utils/interfaces';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/** @internal */
|
|
3
5
|
export declare class JsonViewItemComponent implements OnInit {
|
|
4
6
|
private _data?;
|
|
5
7
|
set data(data: any | undefined);
|
|
@@ -7,11 +9,7 @@ export declare class JsonViewItemComponent implements OnInit {
|
|
|
7
9
|
key?: string;
|
|
8
10
|
level: number;
|
|
9
11
|
levelOpen?: number;
|
|
10
|
-
levelLabels?:
|
|
11
|
-
[key: number]: {
|
|
12
|
-
[key: string]: string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
12
|
+
levelLabels?: LevelLabels;
|
|
15
13
|
isOpen: boolean;
|
|
16
14
|
childrenKeys?: string[];
|
|
17
15
|
hasChildren: boolean;
|
package/lib/utils/utils.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
|
+
/** @internal */
|
|
1
2
|
export declare function isObject(value: any): value is object;
|
|
3
|
+
/** @internal */
|
|
2
4
|
export declare function isArray(value: any): value is unknown[];
|
|
5
|
+
/** @internal */
|
|
3
6
|
export declare function isUndefined<T>(value: T | undefined): value is undefined;
|
|
7
|
+
/** @internal */
|
|
4
8
|
export declare function isString(value: any): value is string;
|
|
9
|
+
/** @internal */
|
|
5
10
|
export declare function isNumber(value: any): value is number;
|
|
11
|
+
/** @internal */
|
|
6
12
|
export declare function isBoolean(value: any): value is boolean;
|
package/package.json
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"name": "nxt-json-view",
|
|
3
3
|
"description": "Angular component for interactive json view.",
|
|
4
4
|
"bugs": "https://github.com/Liquid-JS/nxt-components/issues",
|
|
5
|
-
"version": "
|
|
5
|
+
"version": "16.0.0-alpha.1",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": "https://github.com/Liquid-JS/nxt-components.git",
|
|
8
8
|
"homepage": "https://github.com/Liquid-JS/nxt-components/tree/master/packages/json-view",
|
|
9
9
|
"peerDependencies": {
|
|
10
|
-
"@angular/common": "^15.2.
|
|
11
|
-
"@angular/core": "^15.2.
|
|
10
|
+
"@angular/common": "^15.2.3",
|
|
11
|
+
"@angular/core": "^15.2.3"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"tslib": "^2.5.0"
|
package/public-api.d.ts
CHANGED