appproject-components 1.0.41 → 1.0.43

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.
@@ -1,14 +1,126 @@
1
- import { Component } from '@angular/core';
1
+ import { Component, Inject, Input, ViewChild } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ import * as i1 from "@ionic/angular";
4
+ import * as i2 from "@angular/common/http";
5
+ import * as i3 from "../tree-view/tree-view.component";
3
6
  export class ModelTreeviewComponent {
4
- constructor() { }
7
+ constructor(config, modalCtrl, httpClient, loadingCtrl) {
8
+ this.config = config;
9
+ this.modalCtrl = modalCtrl;
10
+ this.httpClient = httpClient;
11
+ this.loadingCtrl = loadingCtrl;
12
+ this.titulo = "Selecionar";
13
+ this.textoPesquisa = "";
14
+ this.maximizar = false;
15
+ this.BASE_API = this.config.apiUrl;
16
+ }
5
17
  ngOnInit() {
6
18
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ModelTreeviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: ModelTreeviewComponent, selector: "kb-model-treeview", ngImport: i0, template: "<p>model-treeview works!</p>\n", styles: [""] }); }
19
+ ionViewDidEnter() {
20
+ this.atualizaArvoreEntidade(this.tipo);
21
+ }
22
+ async atualizaArvoreEntidade(tipo) {
23
+ let subscriptionC;
24
+ this.treeView.cadastro = this.subscribeId;
25
+ let loading = await this.showLoading("Pesquisando...", true);
26
+ loading.onDidDismiss().then(() => {
27
+ subscriptionC?.unsubscribe();
28
+ });
29
+ this.url = this.url.startsWith('http') ? this.url : `${this.BASE_API}/${this.url}`;
30
+ var url = this.url.replace('<<EMPRESA>>', this.empresaSelecionadaId.toString());
31
+ var url = this.url.replace('<<FILTRO>>', '');
32
+ // if (this.textoPesquisa) {
33
+ // url += `?filtro=${this.textoPesquisa}`;
34
+ // }
35
+ subscriptionC = this.httpClient.get(url).subscribe({
36
+ next: (result) => {
37
+ /*
38
+ empresaContato.forEach((ec) => {
39
+ ec.LabelTree = ec.Nome;
40
+ ec.EmpresaContatoPaiId = null; //campo ficticio para montar arvore
41
+ ec.ClicableTree = true;
42
+ });
43
+
44
+ this.treeView.campoId = "EmpresaContatoId";
45
+ this.treeView.campoPai = "EmpresaContatoPaiId";
46
+ this.treeView.campoLabel = "LabelTree";
47
+ this.treeView.itens = empresaContato;
48
+ this.treeView.arvoreClick(false);
49
+ */
50
+ if (!this.campoPai) {
51
+ this.campoPai = `${this.campoId}Pai`;
52
+ }
53
+ result.forEach((cc) => {
54
+ cc.LabelTree = cc[this.campoLabel];
55
+ if (!cc[this.campoPai]) {
56
+ cc[this.campoPai] = null;
57
+ }
58
+ if (this.filterFunction != null) {
59
+ const clicable = [{ ...cc }].find(this.filterFunction);
60
+ if (clicable != null && cc.ClicableTree == null) {
61
+ cc.ClicableTree = true;
62
+ }
63
+ else {
64
+ cc.ClicableTree = false;
65
+ }
66
+ }
67
+ else {
68
+ cc.ClicableTree = true;
69
+ }
70
+ });
71
+ console.log('tree result', result);
72
+ this.treeView.campoId = this.campoId;
73
+ this.treeView.campoPai = this.campoPai;
74
+ this.treeView.campoLabel = this.campoLabel;
75
+ this.treeView.itens = result;
76
+ this.treeView.arvoreClick(false);
77
+ loading.dismiss();
78
+ },
79
+ error: (error) => {
80
+ loading.dismiss();
81
+ console.log("Erro ao carregar os registros.<br>Tente mais tarde.");
82
+ }
83
+ });
84
+ }
85
+ clickRegistro(evento) {
86
+ if (evento.Id > 0) {
87
+ this.modalCtrl.dismiss({ Id: evento.Id });
88
+ }
89
+ }
90
+ expandir() {
91
+ this.treeView.expandir();
92
+ }
93
+ //utils
94
+ async showLoading(msg, cancelable = false) {
95
+ const loading = await this.loadingCtrl.create({
96
+ message: msg,
97
+ backdropDismiss: cancelable
98
+ //duration: 2000
99
+ });
100
+ /*
101
+ loading.onDidDismiss().then(() => {
102
+ console.log('loading dissmissed', request);
103
+ if (request.subscription) {
104
+ request.subscription.unsubscribe();
105
+ }
106
+ });
107
+ */
108
+ await loading.present();
109
+ return loading;
110
+ }
111
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ModelTreeviewComponent, deps: [{ token: 'LibConfigService' }, { token: i1.ModalController }, { token: i2.HttpClient }, { token: i1.LoadingController }], target: i0.ɵɵFactoryTarget.Component }); }
112
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: ModelTreeviewComponent, selector: "kb-model-treeview", inputs: { textoPesquisa: "textoPesquisa" }, viewQueries: [{ propertyName: "treeView", first: true, predicate: ["treeViewComp"], descendants: true }], ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"secondary\">\n <ion-title>{{ titulo }}</ion-title>\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"atualizaArvoreEntidade(tipo)\">\n <ion-icon slot=\"icon-only\" name=\"refresh\"></ion-icon>\n </ion-button>\n <ion-button (click)=\"modalCtrl.dismiss()\">Fechar</ion-button>\n </ion-buttons>\n </ion-toolbar>\n </ion-header>\n \n <ion-content>\n <ion-item>\n <ion-button style=\"box-shadow: #4c8dff 0px 2px 2px 0.05px;\" fill=\"outline\" (click)=\"expandir()\">\n <ion-icon name=\"expand-outline\"></ion-icon>\n </ion-button> \n </ion-item>\n <kb-tree-view #treeViewComp [campoId]=\"campoId\" [campoPai]=\"campoPai\" [campoLabel]=\"'LabelTree'\" (selecionarRegistro)=\"clickRegistro($event)\"></kb-tree-view>\n </ion-content>", styles: [""], dependencies: [{ kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i1.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i1.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i1.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i1.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: i3.TreeViewComponent, selector: "kb-tree-view", inputs: ["itens", "campoId", "campoPai", "campoLabel", "cadastro", "endpoint", "caixaClass", "currentSearch"], outputs: ["beforeUpdate", "selecionarRegistro"] }] }); }
9
113
  }
10
114
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ModelTreeviewComponent, decorators: [{
11
115
  type: Component,
12
- args: [{ selector: 'kb-model-treeview', template: "<p>model-treeview works!</p>\n" }]
13
- }], ctorParameters: () => [] });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtdHJlZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvbW9kZWwtdHJlZXZpZXcvbW9kZWwtdHJlZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvbW9kZWwtdHJlZXZpZXcvbW9kZWwtdHJlZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFPbEQsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs4R0FMVSxzQkFBc0I7a0dBQXRCLHNCQUFzQix5RENQbkMsZ0NBQ0E7OzJGRE1hLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrYi1tb2RlbC10cmVldmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RlbC10cmVldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21vZGVsLXRyZWV2aWV3LmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBNb2RlbFRyZWV2aWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiIsIjxwPm1vZGVsLXRyZWV2aWV3IHdvcmtzITwvcD5cbiJdfQ==
116
+ args: [{ selector: 'kb-model-treeview', template: "<ion-header>\n <ion-toolbar color=\"secondary\">\n <ion-title>{{ titulo }}</ion-title>\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"atualizaArvoreEntidade(tipo)\">\n <ion-icon slot=\"icon-only\" name=\"refresh\"></ion-icon>\n </ion-button>\n <ion-button (click)=\"modalCtrl.dismiss()\">Fechar</ion-button>\n </ion-buttons>\n </ion-toolbar>\n </ion-header>\n \n <ion-content>\n <ion-item>\n <ion-button style=\"box-shadow: #4c8dff 0px 2px 2px 0.05px;\" fill=\"outline\" (click)=\"expandir()\">\n <ion-icon name=\"expand-outline\"></ion-icon>\n </ion-button> \n </ion-item>\n <kb-tree-view #treeViewComp [campoId]=\"campoId\" [campoPai]=\"campoPai\" [campoLabel]=\"'LabelTree'\" (selecionarRegistro)=\"clickRegistro($event)\"></kb-tree-view>\n </ion-content>" }]
117
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
118
+ type: Inject,
119
+ args: ['LibConfigService']
120
+ }] }, { type: i1.ModalController }, { type: i2.HttpClient }, { type: i1.LoadingController }], propDecorators: { textoPesquisa: [{
121
+ type: Input
122
+ }], treeView: [{
123
+ type: ViewChild,
124
+ args: ["treeViewComp"]
125
+ }] } });
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtdHJlZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvbW9kZWwtdHJlZXZpZXcvbW9kZWwtdHJlZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvbW9kZWwtdHJlZXZpZXcvbW9kZWwtdHJlZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBV3ZGLE1BQU0sT0FBTyxzQkFBc0I7SUFzQmpDLFlBQWdELE1BQWlCLEVBQ3hELFNBQTBCLEVBQ3pCLFVBQXNCLEVBQ3RCLFdBQThCO1FBSFEsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUN4RCxjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQUN6QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGdCQUFXLEdBQVgsV0FBVyxDQUFtQjtRQXhCeEMsV0FBTSxHQUFXLFlBQVksQ0FBQztRQUlyQixrQkFBYSxHQUFXLEVBQUUsQ0FBQztRQWFwQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBRzNCLGFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUljLENBQUM7SUFFN0MsUUFBUTtJQUNSLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQixDQUFDLElBQVk7UUFDdkMsSUFBSSxhQUEyQixDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7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QixPQUFPLENBQUMsR0FBRyxDQUFDLHFEQUFxRCxDQUFDLENBQUM7WUFDckUsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUVMLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBTTtRQUNsQixJQUFJLE1BQU0sQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxPQUFPO0lBQ1AsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFXLEVBQUUsYUFBc0IsS0FBSztRQUN4RCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDO1lBQzVDLE9BQU8sRUFBRSxHQUFHO1lBQ1osZUFBZSxFQUFFLFVBQVU7WUFDM0IsZ0JBQWdCO1NBQ2pCLENBQUMsQ0FBQztRQUNIOzs7Ozs7O1VBT0U7UUFDRixNQUFNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4QixPQUFPLE9BQU8sQ0FBQztJQUVqQixDQUFDOzhHQTFJVSxzQkFBc0Isa0JBc0JiLGtCQUFrQjtrR0F0QjNCLHNCQUFzQiwrTUNYbkMsbTFCQW1CZ0I7OzJGRFJILHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxtQkFBbUI7OzBCQTBCaEIsTUFBTTsyQkFBQyxrQkFBa0I7Z0lBakI3QixhQUFhO3NCQUFyQixLQUFLO2dCQWNxQixRQUFRO3NCQUFsQyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgUHJlZGljYXRlLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVHJlZVZpZXdDb21wb25lbnQgfSBmcm9tICcuLi90cmVlLXZpZXcvdHJlZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2FkaW5nQ29udHJvbGxlciwgTW9kYWxDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgTGliQ29uZmlnIH0gZnJvbSAnLi4vbGliLWNvbmZpZyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna2ItbW9kZWwtdHJlZXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vbW9kZWwtdHJlZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RlbC10cmVldmlldy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vZGVsVHJlZXZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICB0aXR1bG86IHN0cmluZyA9IFwiU2VsZWNpb25hclwiO1xuICBjYW1wb0lkOiBzdHJpbmc7XG4gIGNhbXBvUGFpOiBzdHJpbmc7XG4gIGNhbXBvTGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dG9QZXNxdWlzYTogc3RyaW5nID0gXCJcIjtcbiAgZW1wcmVzYVNlbGVjaW9uYWRhSWQ6IG51bWJlcjtcbiAgZW1wcmVzYUNvbnRhYmlsaWRhZGVJZDogbnVtYmVyO1xuICBsaXN0YUFydm9yZTogYW55W107XG4gIHRpcG86IHN0cmluZztcbiAgLy91cmwgZGEgQVBJIHBhcmEgcGVzcXVpc2FyIG9zIGl0ZW5zXG4gIHVybDogc3RyaW5nO1xuICBzdWJzY3JpcHRpb25DbGljazogU3Vic2NyaXB0aW9uO1xuICBzdWJzY3JpYmVJZDogc3RyaW5nO1xuICAvL2Z1bsOnw6NvIHBhcmEgZmlsdHJhciByZWdpc3Ryb3MgcXVlIHBvZGVtIHNlciBjbGljYWRvc1xuICBmaWx0ZXJGdW5jdGlvbjogUHJlZGljYXRlPGFueT47XG4gIC8vZXNwZWNpZmljb3NcbiAgcGxhbm9Db250YXM6IG51bWJlcjtcbiAgbWF4aW1pemFyOiBib29sZWFuID0gZmFsc2U7XG4gIEBWaWV3Q2hpbGQoXCJ0cmVlVmlld0NvbXBcIikgdHJlZVZpZXc6IFRyZWVWaWV3Q29tcG9uZW50O1xuXG4gIEJBU0VfQVBJID0gdGhpcy5jb25maWcuYXBpVXJsO1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KCdMaWJDb25maWdTZXJ2aWNlJykgcHJpdmF0ZSBjb25maWc6IExpYkNvbmZpZyxcbiAgICBwdWJsaWMgbW9kYWxDdHJsOiBNb2RhbENvbnRyb2xsZXIsXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgbG9hZGluZ0N0cmw6IExvYWRpbmdDb250cm9sbGVyKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIGlvblZpZXdEaWRFbnRlcigpIHtcbiAgICB0aGlzLmF0dWFsaXphQXJ2b3JlRW50aWRhZGUodGhpcy50aXBvKTtcbiAgfVxuXG4gIGFzeW5jIGF0dWFsaXphQXJ2b3JlRW50aWRhZGUodGlwbzogc3RyaW5nKSB7XG4gICAgbGV0IHN1YnNjcmlwdGlvbkM6IFN1YnNjcmlwdGlvbjtcbiAgICB0aGlzLnRyZWVWaWV3LmNhZGFzdHJvID0gdGhpcy5zdWJzY3JpYmVJZDtcbiAgICBsZXQgbG9hZGluZyA9IGF3YWl0IHRoaXMuc2hvd0xvYWRpbmcoXCJQZXNxdWlzYW5kby4uLlwiLCB0cnVlKTtcbiAgICBsb2FkaW5nLm9uRGlkRGlzbWlzcygpLnRoZW4oKCkgPT4ge1xuICAgICAgc3Vic2NyaXB0aW9uQz8udW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcblxuICAgIHRoaXMudXJsID0gdGhpcy51cmwuc3RhcnRzV2l0aCgnaHR0cCcpID8gdGhpcy51cmwgOiBgJHt0aGlzLkJBU0VfQVBJfS8ke3RoaXMudXJsfWA7XG5cbiAgICB2YXIgdXJsID0gdGhpcy51cmwucmVwbGFjZSgnPDxFTVBSRVNBPj4nLCB0aGlzLmVtcHJlc2FTZWxlY2lvbmFkYUlkLnRvU3RyaW5nKCkpO1xuICAgIHZhciB1cmwgPSB0aGlzLnVybC5yZXBsYWNlKCc8PEZJTFRSTz4+JywgJycpO1xuICAgIC8vIGlmICh0aGlzLnRleHRvUGVzcXVpc2EpIHtcbiAgICAvLyAgIHVybCArPSBgP2ZpbHRybz0ke3RoaXMudGV4dG9QZXNxdWlzYX1gO1xuICAgIC8vIH1cblxuICAgIHN1YnNjcmlwdGlvbkMgPSB0aGlzLmh0dHBDbGllbnQuZ2V0KHVybCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXN1bHQ6IGFueVtdKSA9PiB7XG5cblxuICAgICAgICAvKlxuICAgICAgICBlbXByZXNhQ29udGF0by5mb3JFYWNoKChlYykgPT4ge1xuICAgICAgICAgIGVjLkxhYmVsVHJlZSA9IGVjLk5vbWU7XG4gICAgICAgICAgZWMuRW1wcmVzYUNvbnRhdG9QYWlJZCA9IG51bGw7IC8vY2FtcG8gZmljdGljaW8gcGFyYSBtb250YXIgYXJ2b3JlXG4gICAgICAgICAgZWMuQ2xpY2FibGVUcmVlID0gdHJ1ZTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy50cmVlVmlldy5jYW1wb0lkID0gXCJFbXByZXNhQ29udGF0b0lkXCI7XG4gICAgICAgIHRoaXMudHJlZVZpZXcuY2FtcG9QYWkgPSBcIkVtcHJlc2FDb250YXRvUGFpSWRcIjtcbiAgICAgICAgdGhpcy50cmVlVmlldy5jYW1wb0xhYmVsID0gXCJMYWJlbFRyZWVcIjtcbiAgICAgICAgdGhpcy50cmVlVmlldy5pdGVucyA9IGVtcHJlc2FDb250YXRvO1xuICAgICAgICB0aGlzLnRyZWVWaWV3LmFydm9yZUNsaWNrKGZhbHNlKTtcbiAgICAgICAgKi9cblxuXG4gICAgICAgIGlmICghdGhpcy5jYW1wb1BhaSkge1xuICAgICAgICAgIHRoaXMuY2FtcG9QYWkgPSBgJHt0aGlzLmNhbXBvSWR9UGFpYDtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgcmVzdWx0LmZvckVhY2goKGNjKSA9PiB7XG4gICAgICAgICAgY2MuTGFiZWxUcmVlID0gY2NbdGhpcy5jYW1wb0xhYmVsXTtcbiAgICAgICAgICBpZiAoIWNjW3RoaXMuY2FtcG9QYWldKSB7XG4gICAgICAgICAgICBjY1t0aGlzLmNhbXBvUGFpXSA9IG51bGw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHRoaXMuZmlsdGVyRnVuY3Rpb24gIT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc3QgY2xpY2FibGUgPSBbeyAuLi5jYyB9XS5maW5kKHRoaXMuZmlsdGVyRnVuY3Rpb24pO1xuICAgICAgICAgICAgaWYgKGNsaWNhYmxlICE9IG51bGwgJiYgY2MuQ2xpY2FibGVUcmVlID09IG51bGwpIHtcbiAgICAgICAgICAgICAgY2MuQ2xpY2FibGVUcmVlID0gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNjLkNsaWNhYmxlVHJlZSA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjYy5DbGljYWJsZVRyZWUgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc29sZS5sb2coJ3RyZWUgcmVzdWx0JywgcmVzdWx0KTtcblxuICAgICAgICB0aGlzLnRyZWVWaWV3LmNhbXBvSWQgPSB0aGlzLmNhbXBvSWQ7XG4gICAgICAgIHRoaXMudHJlZVZpZXcuY2FtcG9QYWkgPSB0aGlzLmNhbXBvUGFpO1xuICAgICAgICB0aGlzLnRyZWVWaWV3LmNhbXBvTGFiZWwgPSB0aGlzLmNhbXBvTGFiZWw7XG4gICAgICAgIHRoaXMudHJlZVZpZXcuaXRlbnMgPSByZXN1bHQ7XG4gICAgICAgIHRoaXMudHJlZVZpZXcuYXJ2b3JlQ2xpY2soZmFsc2UpO1xuXG4gICAgICAgIGxvYWRpbmcuZGlzbWlzcygpO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgbG9hZGluZy5kaXNtaXNzKCk7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiRXJybyBhbyBjYXJyZWdhciBvcyByZWdpc3Ryb3MuPGJyPlRlbnRlIG1haXMgdGFyZGUuXCIpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gIH1cblxuICBjbGlja1JlZ2lzdHJvKGV2ZW50bykge1xuICAgIGlmIChldmVudG8uSWQgPiAwKSB7XG4gICAgICB0aGlzLm1vZGFsQ3RybC5kaXNtaXNzKHsgSWQ6IGV2ZW50by5JZCB9KTtcbiAgICB9XG4gIH1cblxuICBleHBhbmRpcigpIHtcbiAgICB0aGlzLnRyZWVWaWV3LmV4cGFuZGlyKCk7ICBcbiAgfVxuXG4gIC8vdXRpbHNcbiAgYXN5bmMgc2hvd0xvYWRpbmcobXNnOiBzdHJpbmcsIGNhbmNlbGFibGU6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8SFRNTElvbkxvYWRpbmdFbGVtZW50PiB7XG4gICAgY29uc3QgbG9hZGluZyA9IGF3YWl0IHRoaXMubG9hZGluZ0N0cmwuY3JlYXRlKHtcbiAgICAgIG1lc3NhZ2U6IG1zZyxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogY2FuY2VsYWJsZVxuICAgICAgLy9kdXJhdGlvbjogMjAwMFxuICAgIH0pO1xuICAgIC8qXG4gICAgbG9hZGluZy5vbkRpZERpc21pc3MoKS50aGVuKCgpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKCdsb2FkaW5nIGRpc3NtaXNzZWQnLCByZXF1ZXN0KTtcbiAgICAgIGlmIChyZXF1ZXN0LnN1YnNjcmlwdGlvbikge1xuICAgICAgICByZXF1ZXN0LnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICAgICovXG4gICAgYXdhaXQgbG9hZGluZy5wcmVzZW50KCk7XG4gICAgcmV0dXJuIGxvYWRpbmc7XG5cbiAgfVxuICBcbn1cbiIsIjxpb24taGVhZGVyPlxuICAgIDxpb24tdG9vbGJhciBjb2xvcj1cInNlY29uZGFyeVwiPlxuICAgICAgPGlvbi10aXRsZT57eyB0aXR1bG8gfX08L2lvbi10aXRsZT5cbiAgICAgIDxpb24tYnV0dG9ucyBzbG90PVwiZW5kXCI+XG4gICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJhdHVhbGl6YUFydm9yZUVudGlkYWRlKHRpcG8pXCI+XG4gICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwicmVmcmVzaFwiPjwvaW9uLWljb24+XG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cIm1vZGFsQ3RybC5kaXNtaXNzKClcIj5GZWNoYXI8L2lvbi1idXR0b24+XG4gICAgICA8L2lvbi1idXR0b25zPlxuICAgIDwvaW9uLXRvb2xiYXI+XG4gIDwvaW9uLWhlYWRlcj5cbiAgXG4gIDxpb24tY29udGVudD5cbiAgICA8aW9uLWl0ZW0+XG4gICAgICA8aW9uLWJ1dHRvbiBzdHlsZT1cImJveC1zaGFkb3c6ICAjNGM4ZGZmIDBweCAycHggMnB4IDAuMDVweDtcIiBmaWxsPVwib3V0bGluZVwiIChjbGljayk9XCJleHBhbmRpcigpXCI+XG4gICAgICAgIDxpb24taWNvbiBuYW1lPVwiZXhwYW5kLW91dGxpbmVcIj48L2lvbi1pY29uPlxuICAgICAgPC9pb24tYnV0dG9uPiAgICBcbiAgICA8L2lvbi1pdGVtPlxuICAgIDxrYi10cmVlLXZpZXcgI3RyZWVWaWV3Q29tcCBbY2FtcG9JZF09XCJjYW1wb0lkXCIgW2NhbXBvUGFpXT1cImNhbXBvUGFpXCIgW2NhbXBvTGFiZWxdPVwiJ0xhYmVsVHJlZSdcIiAoc2VsZWNpb25hclJlZ2lzdHJvKT1cImNsaWNrUmVnaXN0cm8oJGV2ZW50KVwiPjwva2ItdHJlZS12aWV3PlxuICA8L2lvbi1jb250ZW50PiJdfQ==
@@ -0,0 +1,104 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../tree-view-nivel/tree-view-nivel.component";
5
+ export class TreeViewComponent {
6
+ constructor() {
7
+ this.itens = [];
8
+ this.caixaClass = 'caixa';
9
+ this.beforeUpdate = new EventEmitter();
10
+ this.selecionarRegistro = new EventEmitter();
11
+ this.arvore = [];
12
+ }
13
+ ngOnInit() {
14
+ //throw new Error('Method not implemented.');
15
+ }
16
+ montaArvore(pai, arvore) {
17
+ if (arvore && arvore.length > 0) {
18
+ //procurar os filhos de cada no
19
+ arvore.forEach(f => {
20
+ //console.log('no atual:', f, );
21
+ let filhos = this.itens.filter(i => i[this.campoPai] == f.Id);
22
+ //console.log('filhos atual:', filhos);
23
+ f.Filhos = [];
24
+ filhos.forEach(fi => {
25
+ f.Filhos.push({ Id: fi[this.campoId], Pai: f.Id, Label: fi[this.campoLabel], Filhos: [], Expandido: false, Clicable: (fi['ClicableTree'] == null || fi['ClicableTree'] === true) });
26
+ });
27
+ return this.montaArvore(0, f.Filhos);
28
+ });
29
+ return 0;
30
+ }
31
+ else {
32
+ //console.log('sem filhos');
33
+ return 0;
34
+ }
35
+ }
36
+ arvoreClick(before = true) {
37
+ if (this.beforeUpdate && before) {
38
+ this.beforeUpdate.emit();
39
+ return;
40
+ }
41
+ this.arvore = [];
42
+ //console.log('tree itens', this.itens);
43
+ if (this.itens && this.itens.length > 0) {
44
+ //montar arvore pais
45
+ this.itens.forEach(it => {
46
+ if (it[this.campoPai] == null) {
47
+ //é pai
48
+ this.arvore.push({ Id: it[this.campoId], Pai: null, Label: it[this.campoLabel], Filhos: [], Expandido: false, Clicable: (it['ClicableTree'] == null || it['ClicableTree'] === true) });
49
+ }
50
+ });
51
+ this.montaArvore(0, this.arvore);
52
+ console.log('arvore', this.arvore);
53
+ }
54
+ }
55
+ expandir(arvore = null) {
56
+ if (arvore == null) {
57
+ arvore = this.arvore;
58
+ }
59
+ if (arvore && arvore.length > 0) {
60
+ //procurar os filhos de cada no
61
+ arvore.forEach(f => {
62
+ //expandir
63
+ f.Expandido = true;
64
+ return this.expandir(f.Filhos);
65
+ });
66
+ return 0;
67
+ }
68
+ else {
69
+ //console.log('sem filhos');
70
+ return 0;
71
+ }
72
+ }
73
+ carregarRegistro(node) {
74
+ console.log('carrega registro', node);
75
+ this.selecionarRegistro.next({ Cadastro: this.cadastro, Id: node.Id });
76
+ }
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TreeViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: TreeViewComponent, selector: "kb-tree-view", inputs: { itens: "itens", campoId: "campoId", campoPai: "campoPai", campoLabel: "campoLabel", cadastro: "cadastro", endpoint: "endpoint", caixaClass: "caixaClass", currentSearch: "currentSearch" }, outputs: { beforeUpdate: "beforeUpdate", selecionarRegistro: "selecionarRegistro" }, ngImport: i0, template: "<div style=\"position: relative; height: auto; padding-left: 2%; background-color: white;\">\n \n <div *ngIf=\"arvore\" [class]=\"caixaClass\" style=\"padding-left: 6px; font-size: 12px;\">\n <!-- raiz -->\n <div *ngFor=\"let raiz of arvore\" class=\"coluna\">\n <kb-tree-view-nivel [nivel]=\"0\" [node]=\"raiz\" [currentSearch]=\"currentSearch\" (nivelClick)=\"raiz.Clicable === true ? carregarRegistro(raiz) : null\">\n </kb-tree-view-nivel> \n \n <div *ngIf=\"raiz.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel1 of raiz.Filhos\" draggable=\"true\">\n <kb-tree-view-nivel [nivel]=\"1\" [node]=\"nivel1\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel1.Clicable === true ? carregarRegistro(nivel1): null\">\n </kb-tree-view-nivel> \n \n <div *ngIf=\"nivel1 && nivel1.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel2 of nivel1.Filhos\">\n <kb-tree-view-nivel [nivel]=\"2\" [node]=\"nivel2\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel2.Clicable === true ? carregarRegistro(nivel2): null\">\n </kb-tree-view-nivel> \n \n <div *ngIf=\"nivel2 && nivel2.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel3 of nivel2.Filhos\">\n <kb-tree-view-nivel [nivel]=\"3\" [node]=\"nivel3\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel3.Clicable === true ? carregarRegistro(nivel3): null\">\n </kb-tree-view-nivel>\n \n <div *ngIf=\"nivel3 && nivel3.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel4 of nivel3.Filhos\">\n <kb-tree-view-nivel [nivel]=\"4\" [node]=\"nivel4\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel4.Clicable === true ? carregarRegistro(nivel4): null\">\n </kb-tree-view-nivel>\n \n <div *ngIf=\"nivel4 && nivel4.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel5 of nivel4.Filhos\">\n <kb-tree-view-nivel [nivel]=\"5\" [node]=\"nivel5\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel5.Clicable === true ? carregarRegistro(nivel5): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel5 && nivel5.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel6 of nivel5.Filhos\">\n <kb-tree-view-nivel [nivel]=\"6\" [node]=\"nivel6\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel6.Clicable === true ? carregarRegistro(nivel6): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel6 && nivel6.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel7 of nivel6.Filhos\">\n <kb-tree-view-nivel [nivel]=\"7\" [node]=\"nivel7\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel7.Clicable === true ? carregarRegistro(nivel7): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel7 && nivel7.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel8 of nivel7.Filhos\">\n <kb-tree-view-nivel [nivel]=\"8\" [node]=\"nivel8\"\n (nivelClick)=\"nivel8.Clicable === true ? carregarRegistro(nivel8): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel8 && nivel8.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel9 of nivel8.Filhos\">\n <kb-tree-view-nivel [nivel]=\"9\" [node]=\"nivel9\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel9.Clicable === true ? carregarRegistro(nivel9): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel9 && nivel9.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel10 of nivel9.Filhos\">\n <kb-tree-view-nivel [nivel]=\"10\" [node]=\"nivel10\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel10.Clicable === true ? carregarRegistro(nivel10): null\"></kb-tree-view-nivel>\n \n </div>\n \n </div>\n </div>\n \n </div>\n \n \n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n \n \n \n </div>\n \n </div>\n \n </div>\n \n </div>\n </div>\n </div>", styles: [".boxSeta{margin:2px;font-size:large;color:#09459e;cursor:pointer}.caixa{border:2px transparent solid;padding:3px;width:100%;position:relative;overflow-y:auto;background-color:#fff;border-radius:5px;height:100%}.coluna{padding-bottom:10px}.filho{padding-top:6px}.node-link{cursor:pointer}.caixa-agrupado{border:2px transparent solid;padding:3px;height:701px;width:100%;position:relative;overflow-y:auto;border-radius:5px;background-color:#fff}.caixa-empresa{border:2px transparent solid;padding:3px;height:340px;width:100%;position:relative;overflow-y:auto;border-radius:5px;background-color:#fff}\n"], dependencies: [{ 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: i2.TreeViewNivelComponent, selector: "kb-tree-view-nivel", inputs: ["node", "nivel", "currentSearch"], outputs: ["nivelClick"] }] }); }
79
+ }
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TreeViewComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ selector: 'kb-tree-view', template: "<div style=\"position: relative; height: auto; padding-left: 2%; background-color: white;\">\n \n <div *ngIf=\"arvore\" [class]=\"caixaClass\" style=\"padding-left: 6px; font-size: 12px;\">\n <!-- raiz -->\n <div *ngFor=\"let raiz of arvore\" class=\"coluna\">\n <kb-tree-view-nivel [nivel]=\"0\" [node]=\"raiz\" [currentSearch]=\"currentSearch\" (nivelClick)=\"raiz.Clicable === true ? carregarRegistro(raiz) : null\">\n </kb-tree-view-nivel> \n \n <div *ngIf=\"raiz.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel1 of raiz.Filhos\" draggable=\"true\">\n <kb-tree-view-nivel [nivel]=\"1\" [node]=\"nivel1\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel1.Clicable === true ? carregarRegistro(nivel1): null\">\n </kb-tree-view-nivel> \n \n <div *ngIf=\"nivel1 && nivel1.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel2 of nivel1.Filhos\">\n <kb-tree-view-nivel [nivel]=\"2\" [node]=\"nivel2\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel2.Clicable === true ? carregarRegistro(nivel2): null\">\n </kb-tree-view-nivel> \n \n <div *ngIf=\"nivel2 && nivel2.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel3 of nivel2.Filhos\">\n <kb-tree-view-nivel [nivel]=\"3\" [node]=\"nivel3\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel3.Clicable === true ? carregarRegistro(nivel3): null\">\n </kb-tree-view-nivel>\n \n <div *ngIf=\"nivel3 && nivel3.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel4 of nivel3.Filhos\">\n <kb-tree-view-nivel [nivel]=\"4\" [node]=\"nivel4\" [currentSearch]=\"currentSearch\" (nivelClick)=\"nivel4.Clicable === true ? carregarRegistro(nivel4): null\">\n </kb-tree-view-nivel>\n \n <div *ngIf=\"nivel4 && nivel4.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel5 of nivel4.Filhos\">\n <kb-tree-view-nivel [nivel]=\"5\" [node]=\"nivel5\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel5.Clicable === true ? carregarRegistro(nivel5): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel5 && nivel5.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel6 of nivel5.Filhos\">\n <kb-tree-view-nivel [nivel]=\"6\" [node]=\"nivel6\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel6.Clicable === true ? carregarRegistro(nivel6): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel6 && nivel6.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel7 of nivel6.Filhos\">\n <kb-tree-view-nivel [nivel]=\"7\" [node]=\"nivel7\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel7.Clicable === true ? carregarRegistro(nivel7): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel7 && nivel7.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel8 of nivel7.Filhos\">\n <kb-tree-view-nivel [nivel]=\"8\" [node]=\"nivel8\"\n (nivelClick)=\"nivel8.Clicable === true ? carregarRegistro(nivel8): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel8 && nivel8.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel9 of nivel8.Filhos\">\n <kb-tree-view-nivel [nivel]=\"9\" [node]=\"nivel9\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel9.Clicable === true ? carregarRegistro(nivel9): null\"></kb-tree-view-nivel>\n \n <div *ngIf=\"nivel9 && nivel9.Expandido\" class=\"filho\">\n <div *ngFor=\"let nivel10 of nivel9.Filhos\">\n <kb-tree-view-nivel [nivel]=\"10\" [node]=\"nivel10\" [currentSearch]=\"currentSearch\"\n (nivelClick)=\"nivel10.Clicable === true ? carregarRegistro(nivel10): null\"></kb-tree-view-nivel>\n \n </div>\n \n </div>\n </div>\n \n </div>\n \n \n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n </div>\n \n </div>\n \n \n \n </div>\n \n </div>\n \n </div>\n \n </div>\n </div>\n </div>", styles: [".boxSeta{margin:2px;font-size:large;color:#09459e;cursor:pointer}.caixa{border:2px transparent solid;padding:3px;width:100%;position:relative;overflow-y:auto;background-color:#fff;border-radius:5px;height:100%}.coluna{padding-bottom:10px}.filho{padding-top:6px}.node-link{cursor:pointer}.caixa-agrupado{border:2px transparent solid;padding:3px;height:701px;width:100%;position:relative;overflow-y:auto;border-radius:5px;background-color:#fff}.caixa-empresa{border:2px transparent solid;padding:3px;height:340px;width:100%;position:relative;overflow-y:auto;border-radius:5px;background-color:#fff}\n"] }]
83
+ }], propDecorators: { itens: [{
84
+ type: Input
85
+ }], campoId: [{
86
+ type: Input
87
+ }], campoPai: [{
88
+ type: Input
89
+ }], campoLabel: [{
90
+ type: Input
91
+ }], cadastro: [{
92
+ type: Input
93
+ }], endpoint: [{
94
+ type: Input
95
+ }], caixaClass: [{
96
+ type: Input
97
+ }], beforeUpdate: [{
98
+ type: Output
99
+ }], currentSearch: [{
100
+ type: Input
101
+ }], selecionarRegistro: [{
102
+ type: Output
103
+ }] } });
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FwcHByb2plY3QtY29tcG9uZW50cy9zcmMvbGliL3RyZWUtdmlldy90cmVlLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvdHJlZS12aWV3L3RyZWUtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUS9FLE1BQU0sT0FBTyxpQkFBaUI7SUFMOUI7UUFNVyxVQUFLLEdBQVUsRUFBRSxDQUFDO1FBT2xCLGVBQVUsR0FBVyxPQUFPLENBQUM7UUFDNUIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWxDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFbEQsV0FBTSxHQUFXLEVBQUUsQ0FBQztLQXNFckI7SUFwRUMsUUFBUTtRQUNOLDZDQUE2QztJQUMvQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEdBQVcsRUFBRSxNQUFjO1FBQ3JDLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQy9CLCtCQUErQjtZQUMvQixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNqQixnQ0FBZ0M7Z0JBQ2hDLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlELHVDQUF1QztnQkFDdkMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxFQUFFLENB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QUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQzs4R0FsRlUsaUJBQWlCO2tHQUFqQixpQkFBaUIsK1VDUjlCLHl3S0ErRlU7OzJGRHZGRyxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsY0FBYzs4QkFLZixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNFLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJlZSB9IGZyb20gJ2FwcHByb2plY3QtbGliJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna2ItdHJlZS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi90cmVlLXZpZXcuY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xuICBASW5wdXQoKSBpdGVuczogYW55W10gPSBbXTtcbiAgQElucHV0KCkgY2FtcG9JZDogc3RyaW5nO1xuICBASW5wdXQoKSBjYW1wb1BhaTogc3RyaW5nO1xuICBASW5wdXQoKSBjYW1wb0xhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNhZGFzdHJvOiBzdHJpbmc7XG4gIC8vc2VyYSBvIG5vbWUgZGEgY2hhbWFkYSBwdXQsIGV4OiBbZW5kcG9pbnQ6IENlbnRyb0N1c3RvUGFpXS9pZC9wYWlcbiAgQElucHV0KCkgZW5kcG9pbnQ6IHN0cmluZztcbiAgQElucHV0KCkgY2FpeGFDbGFzczogc3RyaW5nID0gJ2NhaXhhJztcbiAgQE91dHB1dCgpIGJlZm9yZVVwZGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTsgIFxuICBASW5wdXQoKSBjdXJyZW50U2VhcmNoOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBzZWxlY2lvbmFyUmVnaXN0cm8gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgYXJ2b3JlOiBUcmVlW10gPSBbXTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvL3Rocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIG1vbnRhQXJ2b3JlKHBhaTogbnVtYmVyLCBhcnZvcmU6IFRyZWVbXSk6IG51bWJlciB7XG4gICAgaWYgKGFydm9yZSAmJiBhcnZvcmUubGVuZ3RoID4gMCkge1xuICAgICAgLy9wcm9jdXJhciBvcyBmaWxob3MgZGUgY2FkYSBub1xuICAgICAgYXJ2b3JlLmZvckVhY2goZiA9PiB7XG4gICAgICAgIC8vY29uc29sZS5sb2coJ25vIGF0dWFsOicsIGYsICk7XG4gICAgICAgIGxldCBmaWxob3MgPSB0aGlzLml0ZW5zLmZpbHRlcihpID0+IGlbdGhpcy5jYW1wb1BhaV0gPT0gZi5JZCk7XG4gICAgICAgIC8vY29uc29sZS5sb2coJ2ZpbGhvcyBhdHVhbDonLCBmaWxob3MpO1xuICAgICAgICBmLkZpbGhvcyA9IFtdO1xuICAgICAgICBmaWxob3MuZm9yRWFjaChmaSA9PiB7XG4gICAgICAgICAgZi5GaWxob3MucHVzaCh7IElkOiBmaVt0aGlzLmNhbXBvSWRdLCBQYWk6IGYuSWQsIExhYmVsOiBmaVt0aGlzLmNhbXBvTGFiZWxdLCBGaWxob3M6IFtdLCBFeHBhbmRpZG86IGZhbHNlLCBDbGljYWJsZTogKGZpWydDbGljYWJsZVRyZWUnXSA9PSBudWxsIHx8IGZpWydDbGljYWJsZVRyZWUnXSA9PT0gdHJ1ZSkgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcy5tb250YUFydm9yZSgwLCBmLkZpbGhvcyk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiAwO1xuICAgIH0gZWxzZSB7XG4gICAgICAvL2NvbnNvbGUubG9nKCdzZW0gZmlsaG9zJyk7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gIH1cblxuICBhcnZvcmVDbGljayhiZWZvcmU6IGJvb2xlYW4gPSB0cnVlKSB7XG4gICAgaWYgKHRoaXMuYmVmb3JlVXBkYXRlICYmIGJlZm9yZSkge1xuICAgICAgdGhpcy5iZWZvcmVVcGRhdGUuZW1pdCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFydm9yZSA9IFtdO1xuICAgIC8vY29uc29sZS5sb2coJ3RyZWUgaXRlbnMnLCB0aGlzLml0ZW5zKTtcbiAgICBpZiAodGhpcy5pdGVucyAmJiB0aGlzLml0ZW5zLmxlbmd0aCA+IDApIHtcbiAgICAgIC8vbW9udGFyIGFydm9yZSBwYWlzXG4gICAgICB0aGlzLml0ZW5zLmZvckVhY2goaXQgPT4ge1xuICAgICAgICBpZiAoaXRbdGhpcy5jYW1wb1BhaV0gPT0gbnVsbCkge1xuICAgICAgICAgIC8vw6kgcGFpXG4gICAgICAgICAgdGhpcy5hcnZvcmUucHVzaCh7IElkOiBpdFt0aGlzLmNhbXBvSWRdLCBQYWk6IG51bGwsIExhYmVsOiBpdFt0aGlzLmNhbXBvTGFiZWxdLCBGaWxob3M6IFtdLCBFeHBhbmRpZG86IGZhbHNlLCBDbGljYWJsZTogKGl0WydDbGljYWJsZVRyZWUnXSA9PSBudWxsIHx8IGl0WydDbGljYWJsZVRyZWUnXSA9PT0gdHJ1ZSkgfSk7XG5cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIHRoaXMubW9udGFBcnZvcmUoMCwgdGhpcy5hcnZvcmUpO1xuXG4gICAgICBjb25zb2xlLmxvZygnYXJ2b3JlJywgdGhpcy5hcnZvcmUpO1xuICAgIH1cbiAgfVxuXG4gIGV4cGFuZGlyKGFydm9yZTogVHJlZVtdID0gbnVsbCk6IG51bWJlciB7XG4gICAgaWYgKGFydm9yZSA9PSBudWxsKSB7XG4gICAgICBhcnZvcmUgPSB0aGlzLmFydm9yZTtcbiAgICB9XG4gICAgaWYgKGFydm9yZSAmJiBhcnZvcmUubGVuZ3RoID4gMCkge1xuICAgICAgLy9wcm9jdXJhciBvcyBmaWxob3MgZGUgY2FkYSBub1xuICAgICAgYXJ2b3JlLmZvckVhY2goZiA9PiB7XG4gICAgICAgIC8vZXhwYW5kaXJcbiAgICAgICAgZi5FeHBhbmRpZG8gPSB0cnVlO1xuICAgICAgICByZXR1cm4gdGhpcy5leHBhbmRpcihmLkZpbGhvcyk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiAwO1xuICAgIH0gZWxzZSB7XG4gICAgICAvL2NvbnNvbGUubG9nKCdzZW0gZmlsaG9zJyk7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gIH1cblxuICBjYXJyZWdhclJlZ2lzdHJvKG5vZGU6IFRyZWUpIHtcbiAgICBjb25zb2xlLmxvZygnY2FycmVnYSByZWdpc3RybycsIG5vZGUpO1xuICAgIHRoaXMuc2VsZWNpb25hclJlZ2lzdHJvLm5leHQoeyBDYWRhc3RybzogdGhpcy5jYWRhc3RybywgSWQ6IG5vZGUuSWQgfSk7XG4gIH1cbn1cbiIsIjxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogYXV0bzsgcGFkZGluZy1sZWZ0OiAyJTsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XCI+XG4gICAgICBcbiAgICA8ZGl2ICpuZ0lmPVwiYXJ2b3JlXCIgW2NsYXNzXT1cImNhaXhhQ2xhc3NcIiBzdHlsZT1cInBhZGRpbmctbGVmdDogNnB4OyBmb250LXNpemU6IDEycHg7XCI+XG4gICAgICA8IS0tIHJhaXogLS0+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByYWl6IG9mIGFydm9yZVwiIGNsYXNzPVwiY29sdW5hXCI+XG4gICAgICAgIDxrYi10cmVlLXZpZXctbml2ZWwgW25pdmVsXT1cIjBcIiBbbm9kZV09XCJyYWl6XCIgW2N1cnJlbnRTZWFyY2hdPVwiY3VycmVudFNlYXJjaFwiIChuaXZlbENsaWNrKT1cInJhaXouQ2xpY2FibGUgPT09IHRydWUgPyBjYXJyZWdhclJlZ2lzdHJvKHJhaXopIDogbnVsbFwiPlxuICAgICAgICA8L2tiLXRyZWUtdmlldy1uaXZlbD4gICAgICAgIFxuICBcbiAgICAgICAgPGRpdiAqbmdJZj1cInJhaXouRXhwYW5kaWRvXCIgY2xhc3M9XCJmaWxob1wiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5pdmVsMSBvZiByYWl6LkZpbGhvc1wiIGRyYWdnYWJsZT1cInRydWVcIj5cbiAgICAgICAgICAgIDxrYi10cmVlLXZpZXctbml2ZWwgW25pdmVsXT1cIjFcIiBbbm9kZV09XCJuaXZlbDFcIiBbY3VycmVudFNlYXJjaF09XCJjdXJyZW50U2VhcmNoXCIgKG5pdmVsQ2xpY2spPVwibml2ZWwxLkNsaWNhYmxlID09PSB0cnVlID8gY2FycmVnYXJSZWdpc3RybyhuaXZlbDEpOiBudWxsXCI+XG4gICAgICAgICAgICA8L2tiLXRyZWUtdmlldy1uaXZlbD4gICAgICAgICAgXG4gIFxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5pdmVsMSAmJiBuaXZlbDEuRXhwYW5kaWRvXCIgY2xhc3M9XCJmaWxob1wiPlxuICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBuaXZlbDIgb2Ygbml2ZWwxLkZpbGhvc1wiPlxuICAgICAgICAgICAgICAgIDxrYi10cmVlLXZpZXctbml2ZWwgW25pdmVsXT1cIjJcIiBbbm9kZV09XCJuaXZlbDJcIiBbY3VycmVudFNlYXJjaF09XCJjdXJyZW50U2VhcmNoXCIgKG5pdmVsQ2xpY2spPVwibml2ZWwyLkNsaWNhYmxlID09PSB0cnVlID8gY2FycmVnYXJSZWdpc3RybyhuaXZlbDIpOiBudWxsXCI+XG4gICAgICAgICAgICAgICAgPC9rYi10cmVlLXZpZXctbml2ZWw+ICAgICAgICAgICAgICBcbiAgXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5pdmVsMiAmJiBuaXZlbDIuRXhwYW5kaWRvXCIgY2xhc3M9XCJmaWxob1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgbml2ZWwzIG9mIG5pdmVsMi5GaWxob3NcIj5cbiAgICAgICAgICAgICAgICAgICAgPGtiLXRyZWUtdmlldy1uaXZlbCBbbml2ZWxdPVwiM1wiIFtub2RlXT1cIm5pdmVsM1wiIFtjdXJyZW50U2VhcmNoXT1cImN1cnJlbnRTZWFyY2hcIiAobml2ZWxDbGljayk9XCJuaXZlbDMuQ2xpY2FibGUgPT09IHRydWUgPyBjYXJyZWdhclJlZ2lzdHJvKG5pdmVsMyk6IG51bGxcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9rYi10cmVlLXZpZXctbml2ZWw+XG4gIFxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibml2ZWwzICYmIG5pdmVsMy5FeHBhbmRpZG9cIiBjbGFzcz1cImZpbGhvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgbml2ZWw0IG9mIG5pdmVsMy5GaWxob3NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxrYi10cmVlLXZpZXctbml2ZWwgW25pdmVsXT1cIjRcIiBbbm9kZV09XCJuaXZlbDRcIiBbY3VycmVudFNlYXJjaF09XCJjdXJyZW50U2VhcmNoXCIgKG5pdmVsQ2xpY2spPVwibml2ZWw0LkNsaWNhYmxlID09PSB0cnVlID8gY2FycmVnYXJSZWdpc3RybyhuaXZlbDQpOiBudWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2tiLXRyZWUtdmlldy1uaXZlbD5cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibml2ZWw0ICYmIG5pdmVsNC5FeHBhbmRpZG9cIiBjbGFzcz1cImZpbGhvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5pdmVsNSBvZiBuaXZlbDQuRmlsaG9zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGtiLXRyZWUtdmlldy1uaXZlbCBbbml2ZWxdPVwiNVwiIFtub2RlXT1cIm5pdmVsNVwiIFtjdXJyZW50U2VhcmNoXT1cImN1cnJlbnRTZWFyY2hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5pdmVsQ2xpY2spPVwibml2ZWw1LkNsaWNhYmxlID09PSB0cnVlID8gY2FycmVnYXJSZWdpc3RybyhuaXZlbDUpOiBudWxsXCI+PC9rYi10cmVlLXZpZXctbml2ZWw+XG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJuaXZlbDUgJiYgbml2ZWw1LkV4cGFuZGlkb1wiIGNsYXNzPVwiZmlsaG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5pdmVsNiBvZiBuaXZlbDUuRmlsaG9zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxrYi10cmVlLXZpZXctbml2ZWwgW25pdmVsXT1cIjZcIiBbbm9kZV09XCJuaXZlbDZcIiBbY3VycmVudFNlYXJjaF09XCJjdXJyZW50U2VhcmNoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobml2ZWxDbGljayk9XCJuaXZlbDYuQ2xpY2FibGUgPT09IHRydWUgPyBjYXJyZWdhclJlZ2lzdHJvKG5pdmVsNik6IG51bGxcIj48L2tiLXRyZWUtdmlldy1uaXZlbD5cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJuaXZlbDYgJiYgbml2ZWw2LkV4cGFuZGlkb1wiIGNsYXNzPVwiZmlsaG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBuaXZlbDcgb2Ygbml2ZWw2LkZpbGhvc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGtiLXRyZWUtdmlldy1uaXZlbCBbbml2ZWxdPVwiN1wiIFtub2RlXT1cIm5pdmVsN1wiIFtjdXJyZW50U2VhcmNoXT1cImN1cnJlbnRTZWFyY2hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobml2ZWxDbGljayk9XCJuaXZlbDcuQ2xpY2FibGUgPT09IHRydWUgPyBjYXJyZWdhclJlZ2lzdHJvKG5pdmVsNyk6IG51bGxcIj48L2tiLXRyZWUtdmlldy1uaXZlbD5cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibml2ZWw3ICYmIG5pdmVsNy5FeHBhbmRpZG9cIiBjbGFzcz1cImZpbGhvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5pdmVsOCBvZiBuaXZlbDcuRmlsaG9zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGtiLXRyZWUtdmlldy1uaXZlbCBbbml2ZWxdPVwiOFwiIFtub2RlXT1cIm5pdmVsOFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobml2ZWxDbGljayk9XCJuaXZlbDguQ2xpY2FibGUgPT09IHRydWUgPyBjYXJyZWdhclJlZ2lzdHJvKG5pdmVsOCk6IG51bGxcIj48L2tiLXRyZWUtdmlldy1uaXZlbD5cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5pdmVsOCAmJiBuaXZlbDguRXhwYW5kaWRvXCIgY2xhc3M9XCJmaWxob1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgbml2ZWw5IG9mIG5pdmVsOC5GaWxob3NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGtiLXRyZWUtdmlldy1uaXZlbCBbbml2ZWxdPVwiOVwiIFtub2RlXT1cIm5pdmVsOVwiIFtjdXJyZW50U2VhcmNoXT1cImN1cnJlbnRTZWFyY2hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuaXZlbENsaWNrKT1cIm5pdmVsOS5DbGljYWJsZSA9PT0gdHJ1ZSA/IGNhcnJlZ2FyUmVnaXN0cm8obml2ZWw5KTogbnVsbFwiPjwva2ItdHJlZS12aWV3LW5pdmVsPlxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5pdmVsOSAmJiBuaXZlbDkuRXhwYW5kaWRvXCIgY2xhc3M9XCJmaWxob1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5pdmVsMTAgb2Ygbml2ZWw5LkZpbGhvc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGtiLXRyZWUtdmlldy1uaXZlbCBbbml2ZWxdPVwiMTBcIiBbbm9kZV09XCJuaXZlbDEwXCIgW2N1cnJlbnRTZWFyY2hdPVwiY3VycmVudFNlYXJjaFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuaXZlbENsaWNrKT1cIm5pdmVsMTAuQ2xpY2FibGUgPT09IHRydWUgPyBjYXJyZWdhclJlZ2lzdHJvKG5pdmVsMTApOiBudWxsXCI+PC9rYi10cmVlLXZpZXctbml2ZWw+XG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgXG4gIFxuICBcbiAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4iXX0=
@@ -0,0 +1,50 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/platform-browser";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "@ionic/angular";
6
+ export class TreeViewNivelComponent {
7
+ constructor(sanitizer) {
8
+ this.sanitizer = sanitizer;
9
+ this.nivelClick = new EventEmitter();
10
+ this.identacao = '';
11
+ }
12
+ ngOnInit() {
13
+ for (let i = 0; i < this.nivel; i++) {
14
+ this.identacao += '<span>&nbsp;&nbsp;&nbsp;&nbsp;</span>';
15
+ }
16
+ //console.log('IDENT', this.identacao)
17
+ }
18
+ nodeClick() {
19
+ if (this.nivelClick) {
20
+ this.nivelClick.emit(this.node);
21
+ }
22
+ }
23
+ highlight(texto) {
24
+ if (!this.currentSearch)
25
+ return texto;
26
+ let index = texto.toLowerCase().indexOf(this.currentSearch.toLowerCase());
27
+ //console.log(index);
28
+ if (index >= 0) {
29
+ return this.sanitizer.bypassSecurityTrustHtml(texto.substring(0, index) + '<strong style="background-color: yellow !important;">' + texto.substring(index, index + this.currentSearch.length) + '</strong>' + texto.substring(index + this.currentSearch.length)); //texto.replace(this.textoPesquisa, `<strong>${this.textoPesquisa}</strong>`);
30
+ }
31
+ else {
32
+ return texto;
33
+ }
34
+ }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TreeViewNivelComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
36
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: TreeViewNivelComponent, selector: "kb-tree-view-nivel", inputs: { node: "node", nivel: "nivel", currentSearch: "currentSearch" }, outputs: { nivelClick: "nivelClick" }, ngImport: i0, template: "<span [innerHtml]=\"identacao\" class=\"node-link\"></span>\n<!-- mostrar a seta se tiver filhos ou se for raiz (nivel = 0)-->\n<span class=\"node-link\" *ngIf=\"!node.Expandido && (node.Filhos.length > 0 || nivel == 0)\" (click)=\"node.Expandido = !node.Expandido\"\n class=\"boxSeta\">\n <ion-icon name=\"chevron-forward-outline\"></ion-icon>\n</span>\n<span class=\"node-link\" *ngIf=\"node.Expandido\" (click)=\"node.Expandido = !node.Expandido\" class=\"boxSeta\">\n <ion-icon name=\"chevron-down-outline\"></ion-icon>\n</span>\n<!--\n<span *ngIf=\"!node.Expandido\">&nbsp;&nbsp;&nbsp;</span>\n-->\n\n<!-- \n<span [class]=\"{ 'node-link' : node.Clicable === true, 'node-disabled': node.Clicable === false }\" (click)=\"nodeClick()\" title=\"{{ node.Label }}\"> {{ node.Label }}</span>\n-->\n<span [class]=\"{ 'node-link' : node.Clicable === true, 'node-disabled': node.Clicable === false }\" (click)=\"nodeClick()\" title=\"{{ node.Label }}\" [innerHTML]=\"highlight(node.Label)\"></span>\n", styles: [".node-link{cursor:pointer}.node-disabled{cursor:auto;color:#a9a9a9}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
37
+ }
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TreeViewNivelComponent, decorators: [{
39
+ type: Component,
40
+ args: [{ selector: 'kb-tree-view-nivel', template: "<span [innerHtml]=\"identacao\" class=\"node-link\"></span>\n<!-- mostrar a seta se tiver filhos ou se for raiz (nivel = 0)-->\n<span class=\"node-link\" *ngIf=\"!node.Expandido && (node.Filhos.length > 0 || nivel == 0)\" (click)=\"node.Expandido = !node.Expandido\"\n class=\"boxSeta\">\n <ion-icon name=\"chevron-forward-outline\"></ion-icon>\n</span>\n<span class=\"node-link\" *ngIf=\"node.Expandido\" (click)=\"node.Expandido = !node.Expandido\" class=\"boxSeta\">\n <ion-icon name=\"chevron-down-outline\"></ion-icon>\n</span>\n<!--\n<span *ngIf=\"!node.Expandido\">&nbsp;&nbsp;&nbsp;</span>\n-->\n\n<!-- \n<span [class]=\"{ 'node-link' : node.Clicable === true, 'node-disabled': node.Clicable === false }\" (click)=\"nodeClick()\" title=\"{{ node.Label }}\"> {{ node.Label }}</span>\n-->\n<span [class]=\"{ 'node-link' : node.Clicable === true, 'node-disabled': node.Clicable === false }\" (click)=\"nodeClick()\" title=\"{{ node.Label }}\" [innerHTML]=\"highlight(node.Label)\"></span>\n", styles: [".node-link{cursor:pointer}.node-disabled{cursor:auto;color:#a9a9a9}\n"] }]
41
+ }], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { nivelClick: [{
42
+ type: Output
43
+ }], node: [{
44
+ type: Input
45
+ }], nivel: [{
46
+ type: Input
47
+ }], currentSearch: [{
48
+ type: Input
49
+ }] } });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS12aWV3LW5pdmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FwcHByb2plY3QtY29tcG9uZW50cy9zcmMvbGliL3RyZWUtdmlldy1uaXZlbC90cmVlLXZpZXctbml2ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvdHJlZS12aWV3LW5pdmVsL3RyZWUtdmlldy1uaXZlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVEvRSxNQUFNLE9BQU8sc0JBQXNCO0lBUWpDLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFQakMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLMUMsY0FBUyxHQUFXLEVBQUUsQ0FBQztJQUV3QixDQUFDO0lBRWhELFFBQVE7UUFDTixLQUFLLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUMsSUFBSSxDQUFDLEtBQUssRUFBQyxDQUFDLEVBQUUsRUFBRTtZQUM5QixJQUFJLENBQUMsU0FBUyxJQUFJLHVDQUF1QyxDQUFDO1NBQzNEO1FBQ0Qsc0NBQXNDO0lBQ3hDLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQztJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWE7WUFDckIsT0FBTyxLQUFLLENBQUM7UUFDZixJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUMxRSxxQkFBcUI7UUFDckIsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFO1lBQ2QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLHVEQUF1RCxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLFdBQVcsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBRSw4RUFBOEU7U0FDblY7YUFBTTtZQUNMLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDOzhHQWpDVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiwyS0NSbkMsdytCQWlCQTs7MkZEVGEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG9CQUFvQjtpRkFLcEIsVUFBVTtzQkFBbkIsTUFBTTtnQkFDRSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna2ItdHJlZS12aWV3LW5pdmVsJywgICAgXG4gIHRlbXBsYXRlVXJsOiAnLi90cmVlLXZpZXctbml2ZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdHJlZS12aWV3LW5pdmVsLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBUcmVlVmlld05pdmVsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQE91dHB1dCgpIG5pdmVsQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIG5vZGU6IGFueTtcbiAgQElucHV0KCkgbml2ZWw6IG51bWJlcjtcbiAgQElucHV0KCkgY3VycmVudFNlYXJjaDogc3RyaW5nOyAgXG5cbiAgaWRlbnRhY2FvOiBzdHJpbmcgPSAnJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBmb3IgKGxldCBpPTA7IGk8dGhpcy5uaXZlbDtpKyspIHtcbiAgICAgIHRoaXMuaWRlbnRhY2FvICs9ICc8c3Bhbj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L3NwYW4+JztcbiAgICB9XG4gICAgLy9jb25zb2xlLmxvZygnSURFTlQnLCB0aGlzLmlkZW50YWNhbylcbiAgfVxuXG4gIG5vZGVDbGljaygpIHtcbiAgICBpZiAodGhpcy5uaXZlbENsaWNrKSB7XG4gICAgICB0aGlzLm5pdmVsQ2xpY2suZW1pdCh0aGlzLm5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIGhpZ2hsaWdodCh0ZXh0bzogc3RyaW5nKTogYW55IHsgICAgXG4gICAgaWYgKCF0aGlzLmN1cnJlbnRTZWFyY2gpXG4gICAgICByZXR1cm4gdGV4dG87XG4gICAgbGV0IGluZGV4ID0gdGV4dG8udG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMuY3VycmVudFNlYXJjaC50b0xvd2VyQ2FzZSgpKTtcbiAgICAvL2NvbnNvbGUubG9nKGluZGV4KTtcbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHRleHRvLnN1YnN0cmluZygwLCBpbmRleCkgKyAnPHN0cm9uZyBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IHllbGxvdyAhaW1wb3J0YW50O1wiPicgKyB0ZXh0by5zdWJzdHJpbmcoaW5kZXgsIGluZGV4ICsgdGhpcy5jdXJyZW50U2VhcmNoLmxlbmd0aCkgKyAnPC9zdHJvbmc+JyArIHRleHRvLnN1YnN0cmluZyhpbmRleCArIHRoaXMuY3VycmVudFNlYXJjaC5sZW5ndGgpKTsgIC8vdGV4dG8ucmVwbGFjZSh0aGlzLnRleHRvUGVzcXVpc2EsIGA8c3Ryb25nPiR7dGhpcy50ZXh0b1Blc3F1aXNhfTwvc3Ryb25nPmApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGV4dG87XG4gICAgfVxuICB9XG59XG4iLCI8c3BhbiBbaW5uZXJIdG1sXT1cImlkZW50YWNhb1wiIGNsYXNzPVwibm9kZS1saW5rXCI+PC9zcGFuPlxuPCEtLSBtb3N0cmFyIGEgc2V0YSBzZSB0aXZlciBmaWxob3Mgb3Ugc2UgZm9yIHJhaXogKG5pdmVsID0gMCktLT5cbjxzcGFuIGNsYXNzPVwibm9kZS1saW5rXCIgKm5nSWY9XCIhbm9kZS5FeHBhbmRpZG8gJiYgKG5vZGUuRmlsaG9zLmxlbmd0aCA+IDAgfHwgbml2ZWwgPT0gMClcIiAoY2xpY2spPVwibm9kZS5FeHBhbmRpZG8gPSAhbm9kZS5FeHBhbmRpZG9cIlxuICBjbGFzcz1cImJveFNldGFcIj5cbiAgPGlvbi1pY29uIG5hbWU9XCJjaGV2cm9uLWZvcndhcmQtb3V0bGluZVwiPjwvaW9uLWljb24+XG48L3NwYW4+XG48c3BhbiBjbGFzcz1cIm5vZGUtbGlua1wiICpuZ0lmPVwibm9kZS5FeHBhbmRpZG9cIiAoY2xpY2spPVwibm9kZS5FeHBhbmRpZG8gPSAhbm9kZS5FeHBhbmRpZG9cIiBjbGFzcz1cImJveFNldGFcIj5cbiAgPGlvbi1pY29uIG5hbWU9XCJjaGV2cm9uLWRvd24tb3V0bGluZVwiPjwvaW9uLWljb24+XG48L3NwYW4+XG48IS0tXG48c3BhbiAqbmdJZj1cIiFub2RlLkV4cGFuZGlkb1wiPiZuYnNwOyZuYnNwOyZuYnNwOzwvc3Bhbj5cbi0tPlxuXG48IS0tIFxuPHNwYW4gW2NsYXNzXT1cInsgJ25vZGUtbGluaycgOiBub2RlLkNsaWNhYmxlID09PSB0cnVlLCAnbm9kZS1kaXNhYmxlZCc6IG5vZGUuQ2xpY2FibGUgPT09IGZhbHNlIH1cIiAoY2xpY2spPVwibm9kZUNsaWNrKClcIiB0aXRsZT1cInt7IG5vZGUuTGFiZWwgfX1cIj4ge3sgbm9kZS5MYWJlbCB9fTwvc3Bhbj5cbi0tPlxuPHNwYW4gW2NsYXNzXT1cInsgJ25vZGUtbGluaycgOiBub2RlLkNsaWNhYmxlID09PSB0cnVlLCAnbm9kZS1kaXNhYmxlZCc6IG5vZGUuQ2xpY2FibGUgPT09IGZhbHNlIH1cIiAoY2xpY2spPVwibm9kZUNsaWNrKClcIiB0aXRsZT1cInt7IG5vZGUuTGFiZWwgfX1cIiBbaW5uZXJIVE1MXT1cImhpZ2hsaWdodChub2RlLkxhYmVsKVwiPjwvc3Bhbj5cbiJdfQ==
@@ -18,10 +18,12 @@ export * from './lib/input-arquivo/input-arquivo.component';
18
18
  export * from './lib/entity-edit/entity-edit.component';
19
19
  export * from './lib/input-checkbox/input-checkbox.component';
20
20
  export * from './lib/input-radio/input-radio.component';
21
+ export * from './lib/tree-view/tree-view.component';
22
+ export * from './lib/tree-view-nivel/tree-view-nivel.component';
21
23
  //buttons
22
24
  export * from './lib/buttons/btn-action/btn-action.component';
23
25
  export * from './lib/buttons/btn-cancelar/btn-cancelar.component';
24
26
  export * from './lib/buttons/btn-excluir/btn-excluir.component';
25
27
  export * from './lib/buttons/btn-novo/btn-novo.component';
26
28
  export * from './lib/buttons/btn-salvar/btn-salvar.component';
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FwcHByb2plY3QtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELHVDQUF1QztBQUN2QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELFNBQVM7QUFDVCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0NBQStDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYXBwcHJvamVjdC1jb21wb25lbnRzXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBwcHJvamVjdC1jb21wb25lbnRzLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcHBwcm9qZWN0LWNvbXBvbmVudHMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBwcHJvamVjdC1jb21wb25lbnRzLm1vZHVsZSc7XHJcbi8vZXhwb3J0IG1hbnVhbCBkb3MgY29tcG9uZW50ZXMgY3JpYWRvc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9iYXNlSW5wdXRDb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXQtZm9ybWF0L2lucHV0LWZvcm1hdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1zZWxlY3QvaW5wdXQtc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0LXBlc3F1aXNhL2lucHV0LXBlc3F1aXNhLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0LXZhbG9yL2lucHV0LXZhbG9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVsLXRyZWV2aWV3L21vZGVsLXRyZWV2aWV3LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0LWFyZWEvaW5wdXQtYXJlYS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1jZXAvaW5wdXQtY2VwLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0LWFycXVpdm8vaW5wdXQtYXJxdWl2by5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnRpdHktZWRpdC9lbnRpdHktZWRpdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1yYWRpby9pbnB1dC1yYWRpby5jb21wb25lbnQnO1xyXG4vL2J1dHRvbnNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9ucy9idG4tYWN0aW9uL2J0bi1hY3Rpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9ucy9idG4tY2FuY2VsYXIvYnRuLWNhbmNlbGFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbnMvYnRuLWV4Y2x1aXIvYnRuLWV4Y2x1aXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9ucy9idG4tbm92by9idG4tbm92by5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b25zL2J0bi1zYWx2YXIvYnRuLXNhbHZhci5jb21wb25lbnQnOyJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FwcHByb2plY3QtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELHVDQUF1QztBQUN2QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxTQUFTO0FBQ1QsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLCtDQUErQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGFwcHByb2plY3QtY29tcG9uZW50c1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwcHByb2plY3QtY29tcG9uZW50cy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBwcHJvamVjdC1jb21wb25lbnRzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwcHByb2plY3QtY29tcG9uZW50cy5tb2R1bGUnO1xyXG4vL2V4cG9ydCBtYW51YWwgZG9zIGNvbXBvbmVudGVzIGNyaWFkb3NcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFzZUlucHV0Q29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0LWZvcm1hdC9pbnB1dC1mb3JtYXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXQtc2VsZWN0L2lucHV0LXNlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1wZXNxdWlzYS9pbnB1dC1wZXNxdWlzYS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC12YWxvci9pbnB1dC12YWxvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbC10cmVldmlldy9tb2RlbC10cmVldmlldy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1hcmVhL2lucHV0LWFyZWEuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXQtY2VwL2lucHV0LWNlcC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dC1hcnF1aXZvL2lucHV0LWFycXVpdm8uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW50aXR5LWVkaXQvZW50aXR5LWVkaXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXQtY2hlY2tib3gvaW5wdXQtY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXQtcmFkaW8vaW5wdXQtcmFkaW8uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdHJlZS12aWV3L3RyZWUtdmlldy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90cmVlLXZpZXctbml2ZWwvdHJlZS12aWV3LW5pdmVsLmNvbXBvbmVudCc7XHJcbi8vYnV0dG9uc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b25zL2J0bi1hY3Rpb24vYnRuLWFjdGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b25zL2J0bi1jYW5jZWxhci9idG4tY2FuY2VsYXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9ucy9idG4tZXhjbHVpci9idG4tZXhjbHVpci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b25zL2J0bi1ub3ZvL2J0bi1ub3ZvLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbnMvYnRuLXNhbHZhci9idG4tc2FsdmFyLmNvbXBvbmVudCc7Il19