@po-ui/ng-sync 5.22.0 → 6.0.0
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/{esm2015/lib/index.js → esm2020/lib/index.mjs} +0 -0
- package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +0 -0
- package/{esm2015/lib/models/po-data-message.model.js → esm2020/lib/models/po-data-message.model.mjs} +0 -0
- package/{esm2015/lib/models/po-data-transform.model.js → esm2020/lib/models/po-data-transform.model.mjs} +0 -0
- package/esm2020/lib/models/po-entity/po-entity.model.mjs +214 -0
- package/{esm2015/lib/models/po-event-sourcing-error-response.model.js → esm2020/lib/models/po-event-sourcing-error-response.model.mjs} +0 -0
- package/{esm2015/lib/models/po-network-status.model.js → esm2020/lib/models/po-network-status.model.mjs} +0 -0
- package/{esm2015/lib/models/po-network-type.enum.js → esm2020/lib/models/po-network-type.enum.mjs} +0 -0
- package/esm2020/lib/models/po-query-builder/po-query-builder.model.mjs +238 -0
- package/{esm2015/lib/models/po-request-type.enum.js → esm2020/lib/models/po-request-type.enum.mjs} +0 -0
- package/esm2020/lib/po-sync.module.mjs +45 -0
- package/{esm2015/lib/services/po-event-sourcing/enums/po-event-sourcing-operation.enum.js → esm2020/lib/services/po-event-sourcing/enums/po-event-sourcing-operation.enum.mjs} +0 -0
- package/{esm2015/lib/services/po-event-sourcing/index.js → esm2020/lib/services/po-event-sourcing/index.mjs} +0 -0
- package/{esm2015/lib/services/po-event-sourcing/interfaces/po-event-sourcing-item.interface.js → esm2020/lib/services/po-event-sourcing/interfaces/po-event-sourcing-item.interface.mjs} +0 -0
- package/{esm2015/lib/services/po-event-sourcing/interfaces/po-event-sourcing-summary-item.interface.js → esm2020/lib/services/po-event-sourcing/interfaces/po-event-sourcing-summary-item.interface.mjs} +0 -0
- package/esm2020/lib/services/po-event-sourcing/po-event-sourcing.service.mjs +372 -0
- package/{esm2015/lib/services/po-http-client/interfaces/po-http-header-option.interface.js → esm2020/lib/services/po-http-client/interfaces/po-http-header-option.interface.mjs} +0 -0
- package/{esm2015/lib/services/po-http-client/interfaces/po-http-request-data.interface.js → esm2020/lib/services/po-http-client/interfaces/po-http-request-data.interface.mjs} +0 -0
- package/{esm2015/lib/services/po-http-client/interfaces/po-response-api.interface.js → esm2020/lib/services/po-http-client/interfaces/po-response-api.interface.mjs} +0 -0
- package/esm2020/lib/services/po-http-client/po-http-client.service.mjs +148 -0
- package/{esm2015/lib/services/po-http-client/po-http-request-type.enum.js → esm2020/lib/services/po-http-client/po-http-request-type.enum.mjs} +0 -0
- package/esm2020/lib/services/po-network/po-network.service.mjs +58 -0
- package/{esm2015/lib/services/po-schema/index.js → esm2020/lib/services/po-schema/index.mjs} +0 -0
- package/esm2020/lib/services/po-schema/po-schema-definition/po-schema-definition.service.mjs +77 -0
- package/{esm2015/lib/services/po-schema/po-schema-util/po-schema-util.model.js → esm2020/lib/services/po-schema/po-schema-util/po-schema-util.model.mjs} +0 -0
- package/esm2020/lib/services/po-schema/po-schema.service.mjs +174 -0
- package/{esm2015/lib/services/po-sync/interfaces/po-sync-config.interface.js → esm2020/lib/services/po-sync/interfaces/po-sync-config.interface.mjs} +0 -0
- package/{esm2015/lib/services/po-sync/interfaces/po-sync-field-options.interface.js → esm2020/lib/services/po-sync/interfaces/po-sync-field-options.interface.mjs} +0 -0
- package/{esm2015/lib/services/po-sync/interfaces/po-sync-response.interface.js → esm2020/lib/services/po-sync/interfaces/po-sync-response.interface.mjs} +0 -0
- package/{esm2015/lib/services/po-sync/interfaces/po-sync-schema.interface.js → esm2020/lib/services/po-sync/interfaces/po-sync-schema.interface.mjs} +0 -0
- package/esm2020/lib/services/po-sync/po-sync.service.mjs +325 -0
- package/{esm2015/lib/utils/utils.js → esm2020/lib/utils/utils.mjs} +0 -0
- package/esm2020/po-ui-ng-sync.mjs +5 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/fesm2015/{po-ui-ng-sync.js → po-ui-ng-sync.mjs} +217 -201
- package/fesm2015/po-ui-ng-sync.mjs.map +1 -0
- package/fesm2020/po-ui-ng-sync.mjs +2018 -0
- package/fesm2020/po-ui-ng-sync.mjs.map +1 -0
- package/lib/po-sync.module.d.ts +5 -0
- package/lib/services/po-event-sourcing/po-event-sourcing.service.d.ts +3 -0
- package/lib/services/po-http-client/po-http-client.service.d.ts +3 -0
- package/lib/services/po-network/po-network.service.d.ts +3 -0
- package/lib/services/po-schema/po-schema-definition/po-schema-definition.service.d.ts +3 -0
- package/lib/services/po-schema/po-schema.service.d.ts +3 -0
- package/lib/services/po-sync/po-sync.service.d.ts +3 -0
- package/package.json +25 -13
- package/po-ui-ng-sync-6.0.0.tgz +0 -0
- package/po-ui-ng-sync.d.ts +1 -4
- package/schematics/migrations.json +5 -0
- package/schematics/ng-add/index.js +4 -4
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/index.spec.js +4 -4
- package/schematics/ng-add/index.spec.js.map +1 -1
- package/schematics/ng-generate/schema/index.js +2 -2
- package/schematics/ng-generate/schema/index.js.map +1 -1
- package/schematics/ng-generate/schema/index.spec.js +3 -3
- package/schematics/ng-generate/schema/index.spec.js.map +1 -1
- package/schematics/ng-update/v2/index.js +6 -6
- package/schematics/ng-update/v2/index.js.map +1 -1
- package/schematics/ng-update/v3/index.js +1 -1
- package/schematics/ng-update/v3/index.js.map +1 -1
- package/schematics/ng-update/v4/index.js +1 -1
- package/schematics/ng-update/v4/index.js.map +1 -1
- package/schematics/ng-update/v5/index.js +1 -1
- package/schematics/ng-update/v5/index.js.map +1 -1
- package/schematics/ng-update/v6/changes.d.ts +2 -0
- package/schematics/ng-update/v6/changes.js +14 -0
- package/schematics/ng-update/v6/changes.js.map +1 -0
- package/schematics/ng-update/v6/index.d.ts +1 -0
- package/schematics/ng-update/v6/index.js +16 -0
- package/schematics/ng-update/v6/index.js.map +1 -0
- package/bundles/po-ui-ng-sync.umd.js +0 -3002
- package/bundles/po-ui-ng-sync.umd.js.map +0 -1
- package/esm2015/lib/models/po-entity/po-entity.model.js +0 -229
- package/esm2015/lib/models/po-query-builder/po-query-builder.model.js +0 -241
- package/esm2015/lib/po-sync.module.js +0 -31
- package/esm2015/lib/services/po-event-sourcing/po-event-sourcing.service.js +0 -411
- package/esm2015/lib/services/po-http-client/po-http-client.service.js +0 -147
- package/esm2015/lib/services/po-network/po-network.service.js +0 -58
- package/esm2015/lib/services/po-schema/po-schema-definition/po-schema-definition.service.js +0 -80
- package/esm2015/lib/services/po-schema/po-schema.service.js +0 -198
- package/esm2015/lib/services/po-sync/po-sync.service.js +0 -336
- package/esm2015/po-ui-ng-sync.js +0 -9
- package/fesm2015/po-ui-ng-sync.js.map +0 -1
- package/po-ui-ng-sync-5.22.0.tgz +0 -0
- package/po-ui-ng-sync.metadata.json +0 -1
|
@@ -1,336 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { forkJoin, Observable, of, Subject, timer } from 'rxjs';
|
|
4
|
-
import { expand, map, mergeMap, reduce } from 'rxjs/operators';
|
|
5
|
-
import { validateParameter, validateArray } from '../../utils/utils';
|
|
6
|
-
import { PoDataMessage, PoEntity } from '../../models';
|
|
7
|
-
import { PoEventSourcingService } from '../po-event-sourcing/po-event-sourcing.service';
|
|
8
|
-
import { PoHttpClientService } from '../po-http-client/po-http-client.service';
|
|
9
|
-
import { PoNetworkService } from '../po-network/po-network.service';
|
|
10
|
-
import { PoRequestType } from '../../models/po-request-type.enum';
|
|
11
|
-
import { PoSchemaDefinitionService } from './../po-schema/po-schema-definition/po-schema-definition.service';
|
|
12
|
-
import { PoSchemaService } from './../po-schema/po-schema.service';
|
|
13
|
-
import { PoSchemaUtil } from './../po-schema/po-schema-util/po-schema-util.model';
|
|
14
|
-
/**
|
|
15
|
-
* @description
|
|
16
|
-
*
|
|
17
|
-
* O `PoSyncService` é utilizado para configurar toda a base de dados que receberá as informações que serão
|
|
18
|
-
* armazenadas *offline* vindas do servidor. Nele ocorre toda a preparação dos modelos de dados retornados por
|
|
19
|
-
* cada consulta.
|
|
20
|
-
*/
|
|
21
|
-
export class PoSyncService {
|
|
22
|
-
constructor(poEventSourcingService, poHttpClient, poNetworkService, poSchemaDefinitionService, poSchemaService) {
|
|
23
|
-
this.poEventSourcingService = poEventSourcingService;
|
|
24
|
-
this.poHttpClient = poHttpClient;
|
|
25
|
-
this.poNetworkService = poNetworkService;
|
|
26
|
-
this.poSchemaDefinitionService = poSchemaDefinitionService;
|
|
27
|
-
this.poSchemaService = poSchemaService;
|
|
28
|
-
this.models = [];
|
|
29
|
-
this.finishSyncSubject = new Subject();
|
|
30
|
-
this.isSyncEnabled = true;
|
|
31
|
-
this.syncing = false;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Destrói todas as chaves do *storage* referentes ao `po-sync`, ou seja,
|
|
35
|
-
* as definições dos *schemas*, os registros de cada *schema* e a fila
|
|
36
|
-
* de eventos que estão para ser enviados ao servidor *(EventSourcing)*.
|
|
37
|
-
*
|
|
38
|
-
* > Para que não venham ocorrer erros em ações que dependam das definições dos *schemas*,
|
|
39
|
-
* recomenda-se utilizar o método `prepare()` em seguida.
|
|
40
|
-
*
|
|
41
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Alterando as definições dos schemas](/guides/sync-fundamentals).
|
|
42
|
-
*
|
|
43
|
-
* @returns {Promise<any>} Promessa que é resolvida quando as chaves referentes ao `po-sync` forem destruídas.
|
|
44
|
-
*/
|
|
45
|
-
destroy() {
|
|
46
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
const destroyFunction = () => __awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
yield this.poSchemaService.destroySchemasRecords();
|
|
49
|
-
yield this.poSchemaDefinitionService.destroy();
|
|
50
|
-
yield this.poEventSourcingService.destroyEventSourcingQueue();
|
|
51
|
-
});
|
|
52
|
-
return this.poSchemaService.limitedCallWrap(destroyFunction);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Desabilita todos os tipos de sincronização de dados (periódica, reativa e manual).
|
|
57
|
-
*
|
|
58
|
-
* > Para habilitar novamente a sincronização utilize o método [`PoSyncService.enableSync()`](documentation/po-sync#enable-sync).
|
|
59
|
-
*/
|
|
60
|
-
disableSync() {
|
|
61
|
-
this.isSyncEnabled = false;
|
|
62
|
-
if (this.timer && this.subscription) {
|
|
63
|
-
this.subscription.unsubscribe();
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* <a id="enable-sync"></a>
|
|
68
|
-
* Habilita todos os tipos de sincronização de dados (periódica, reativa e manual).
|
|
69
|
-
*
|
|
70
|
-
* Por padrão, sempre que se inicializa uma aplicação com PO Sync as sincronizações já estão habilitadas.
|
|
71
|
-
*/
|
|
72
|
-
enableSync() {
|
|
73
|
-
this.isSyncEnabled = true;
|
|
74
|
-
this.createSubscribe();
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Método que disponibiliza a partir de sua inscrição o evento de retorno das operações da fila de eventos que
|
|
78
|
-
* foram enviadas ao servidor. A cada operação enviada para o servidor, será disparado um evento para a inscrição
|
|
79
|
-
* deste método.
|
|
80
|
-
*
|
|
81
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Capturando respostas da sincronização](/guides/sync-fundamentals).
|
|
82
|
-
*
|
|
83
|
-
* @returns {Observable<PoSyncResponse>} Observable com um objeto do tipo `PoSyncResponse`.
|
|
84
|
-
*/
|
|
85
|
-
getResponses() {
|
|
86
|
-
return this.poEventSourcingService.responsesSubject();
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Retorna uma instância de `PoEntity` para um determinado *schema*.
|
|
90
|
-
*
|
|
91
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Manipulando os registros de um schema](/guides/sync-fundamentals).
|
|
92
|
-
*
|
|
93
|
-
* @param {string} schemaName Nome do *schema*.
|
|
94
|
-
* @returns {PoEntity} Objeto para efetuar consultas e alterações nos dados.
|
|
95
|
-
*/
|
|
96
|
-
getModel(schemaName) {
|
|
97
|
-
const model = this.models[schemaName];
|
|
98
|
-
if (!model) {
|
|
99
|
-
throw new Error('Model not found: ' + schemaName);
|
|
100
|
-
}
|
|
101
|
-
return model;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Insere uma requisição HTTP na fila de eventos do `po-sync`.
|
|
105
|
-
*
|
|
106
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Inserindo requisições HTTP na fila de eventos](/guides/sync-fundamentals).
|
|
107
|
-
*
|
|
108
|
-
* @param {PoHttpRequestData} poHttpRequestData Dados da requisição HTTP.
|
|
109
|
-
* @param {string} customRequestId Identificador customizado da requisição HTTP.
|
|
110
|
-
* @returns {Promise<number>} Promessa com o identificador da requisição HTTP criada.
|
|
111
|
-
*/
|
|
112
|
-
insertHttpCommand(requestData, customRequestId) {
|
|
113
|
-
validateParameter({ requestData });
|
|
114
|
-
return this.poEventSourcingService.httpCommand(requestData, customRequestId);
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Efetua uma chamada na API do servidor para realizar a carga inicial dos dados. Deve ser chamado apenas uma vez
|
|
118
|
-
* na aplicação, após a preparação dos *schemas* realizada através do método `PoSyncService.prepare()`.
|
|
119
|
-
*
|
|
120
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Carga inicial dos dados](/guides/sync-fundamentals).
|
|
121
|
-
*
|
|
122
|
-
* @returns {Observable<Array<{ entity: string, data: Array<any> }>>} Observable que notificará quando a
|
|
123
|
-
* carga inicial for concluída.
|
|
124
|
-
*/
|
|
125
|
-
loadData() {
|
|
126
|
-
const loads = [];
|
|
127
|
-
this.schemas.forEach(el => loads.push(this.loadEntityData(el)));
|
|
128
|
-
return forkJoin(loads);
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Responsável por notificar sempre que houver sincronismo.
|
|
132
|
-
*
|
|
133
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Notificação pós-sincronização](/guides/sync-fundamentals).
|
|
134
|
-
*
|
|
135
|
-
* @returns {Observable<any>} Observable que é disparado a cada sincronismo realizado.
|
|
136
|
-
*/
|
|
137
|
-
onSync() {
|
|
138
|
-
if (!this.eventSub) {
|
|
139
|
-
this.eventSub = Observable.create(e => {
|
|
140
|
-
this.emitter = e;
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
return this.eventSub;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Prepara a aplicação criando os schemas e aplica as configurações.
|
|
147
|
-
*
|
|
148
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Preparando a aplicação](/guides/sync-fundamentals).
|
|
149
|
-
*
|
|
150
|
-
* @param {Array<PoSyncSchema>} schemas Lista de *schemas* a serem preparados.
|
|
151
|
-
* @param {PoSyncConfig} config Configurações adicionais.
|
|
152
|
-
* @returns {Promise<any>} Promessa que é resolvida quando a aplicação estiver preparada para a utilização do `po-sync`.
|
|
153
|
-
*/
|
|
154
|
-
prepare(schemas, config) {
|
|
155
|
-
validateArray({ schemas });
|
|
156
|
-
const defaultSyncConfig = {
|
|
157
|
-
type: this.poNetworkService.getConnectionStatus().type,
|
|
158
|
-
period: 60,
|
|
159
|
-
dataTransform: new PoDataMessage()
|
|
160
|
-
};
|
|
161
|
-
this.schemas = schemas;
|
|
162
|
-
this.config = config || defaultSyncConfig;
|
|
163
|
-
this.config.dataTransform = this.config.dataTransform || new PoDataMessage();
|
|
164
|
-
this.poEventSourcingService.config = this.config;
|
|
165
|
-
this.startTimer(this.config.period);
|
|
166
|
-
this.reactiveSync();
|
|
167
|
-
this.poEventSourcingService.onSaveData().subscribe(() => this.sync());
|
|
168
|
-
return this.saveSchemas().then(() => {
|
|
169
|
-
this.schemas.forEach(schema => {
|
|
170
|
-
this.models[schema.name] = new PoEntity(this.poEventSourcingService, schema, this.poSchemaService);
|
|
171
|
-
});
|
|
172
|
-
return Promise.resolve();
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Remove um item da fila de eventos que espera a sincronização.
|
|
177
|
-
*
|
|
178
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Capturando respostas da sincronização](/guides/sync-fundamentals).
|
|
179
|
-
*
|
|
180
|
-
* @param {any} idEventSourcing Identificador do item da fila de eventos.
|
|
181
|
-
* @returns {Promise<any>} Promessa que é resolvida quando o item da fila de eventos é removido.
|
|
182
|
-
*/
|
|
183
|
-
removeItemOfSync(idEventSourcing) {
|
|
184
|
-
return this.poEventSourcingService.removeEventSourcingItem(idEventSourcing);
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Reenvia os comandos pendentes na fila (inclusão, alteração e exclusão) e busca novos dados do servidor.
|
|
188
|
-
*
|
|
189
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Capturando respostas da sincronização](/guides/sync-fundamentals).
|
|
190
|
-
*
|
|
191
|
-
* @returns {Promise<any>} Promessa que resolve o sincronismo disparado.
|
|
192
|
-
*/
|
|
193
|
-
resumeSync() {
|
|
194
|
-
if (!this.canSync()) {
|
|
195
|
-
const finishSyncSubscription = this.finishSyncSubject.asObservable().subscribe(() => {
|
|
196
|
-
finishSyncSubscription.unsubscribe();
|
|
197
|
-
return this.sync();
|
|
198
|
-
});
|
|
199
|
-
return Promise.resolve();
|
|
200
|
-
}
|
|
201
|
-
return this.sync();
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Dispara o sincronismo enviando os eventos pendentes (inclusão, alteração e exclusão) e buscando novos dados do servidor.
|
|
205
|
-
*
|
|
206
|
-
* O sincronismo somente será executado depois que o acesso a base de dados local do dispositivo for liberada.
|
|
207
|
-
*
|
|
208
|
-
* > Veja mais detalhes em [Fundamentos do PO Sync - Sincronização manual](/guides/sync-fundamentals).
|
|
209
|
-
*
|
|
210
|
-
* @returns {Promise<any>} Promessa que é resolvida quando o sincronismo for finalizado.
|
|
211
|
-
*/
|
|
212
|
-
sync() {
|
|
213
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
214
|
-
if (this.canSync()) {
|
|
215
|
-
this.startSync();
|
|
216
|
-
try {
|
|
217
|
-
yield this.poEventSourcingService.syncSend();
|
|
218
|
-
yield this.poEventSourcingService.syncGet();
|
|
219
|
-
if (this.emitter) {
|
|
220
|
-
this.emitter.next();
|
|
221
|
-
}
|
|
222
|
-
this.finishSync();
|
|
223
|
-
}
|
|
224
|
-
catch (error) {
|
|
225
|
-
this.syncError();
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
canSync() {
|
|
231
|
-
if (this.syncing || !this.isSyncEnabled) {
|
|
232
|
-
return false;
|
|
233
|
-
}
|
|
234
|
-
else {
|
|
235
|
-
const currentConnection = this.poNetworkService.getConnectionStatus();
|
|
236
|
-
const isConfiguredConnection = this.config && currentConnection.type === this.config.type;
|
|
237
|
-
const isConfigIncludesType = this.config && this.config.type instanceof Array && this.config.type.includes(currentConnection.type);
|
|
238
|
-
return currentConnection.status && (!this.config || isConfiguredConnection || isConfigIncludesType);
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
createSubscribe() {
|
|
242
|
-
if (this.timer) {
|
|
243
|
-
this.subscription = this.timer.subscribe(() => {
|
|
244
|
-
this.sync().then(() => {
|
|
245
|
-
this.subscription.unsubscribe();
|
|
246
|
-
this.subscription = null;
|
|
247
|
-
this.timer = null;
|
|
248
|
-
this.startTimer(this.config.period);
|
|
249
|
-
});
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
finishSync() {
|
|
254
|
-
this.syncing = false;
|
|
255
|
-
this.finishSyncSubject.next();
|
|
256
|
-
}
|
|
257
|
-
getOnePage(schema, page = 1) {
|
|
258
|
-
const params = [];
|
|
259
|
-
params.push(`${this.config.dataTransform.getPageSizeParamName()}=${schema.pageSize}`);
|
|
260
|
-
params.push(`${this.config.dataTransform.getPageParamName()}=${page}`);
|
|
261
|
-
const url = `${PoSchemaUtil.getUrl(schema, PoRequestType.GET)}?${params.join('&')}`;
|
|
262
|
-
return this.poHttpClient.get(url).pipe(map(response => response.body), mergeMap(responseBody => {
|
|
263
|
-
const now = new Date().getTime();
|
|
264
|
-
responseBody[this.config.dataTransform.getItemsFieldName()].map(item => {
|
|
265
|
-
item.SyncInsertedDateTime = now;
|
|
266
|
-
item.SyncUpdatedDateTime = null;
|
|
267
|
-
item.SyncExclusionDateTime = null;
|
|
268
|
-
item.SyncDeleted = false;
|
|
269
|
-
item.SyncStatus = 2;
|
|
270
|
-
});
|
|
271
|
-
return this.poSchemaService
|
|
272
|
-
.updateAll(schema, responseBody[this.config.dataTransform.getItemsFieldName()])
|
|
273
|
-
.then(() => responseBody);
|
|
274
|
-
}));
|
|
275
|
-
}
|
|
276
|
-
loadEntityData(schema) {
|
|
277
|
-
let page = 1;
|
|
278
|
-
return this.getOnePage(schema, page).pipe(expand(data => {
|
|
279
|
-
this.config.dataTransform.transform(data);
|
|
280
|
-
const hasNext = this.config.dataTransform.hasNext();
|
|
281
|
-
if (hasNext) {
|
|
282
|
-
return this.getOnePage(schema, ++page);
|
|
283
|
-
}
|
|
284
|
-
else {
|
|
285
|
-
return of();
|
|
286
|
-
}
|
|
287
|
-
}), reduce((acc, obj) => {
|
|
288
|
-
acc.data = acc.data.concat(obj[this.config.dataTransform.getItemsFieldName()]);
|
|
289
|
-
return acc;
|
|
290
|
-
}, {
|
|
291
|
-
entity: schema.name,
|
|
292
|
-
data: []
|
|
293
|
-
}));
|
|
294
|
-
}
|
|
295
|
-
reactiveSync() {
|
|
296
|
-
this.poNetworkService.onChange().subscribe(networkStatus => {
|
|
297
|
-
if (networkStatus.status) {
|
|
298
|
-
this.startTimer(this.config.period);
|
|
299
|
-
return this.sync();
|
|
300
|
-
}
|
|
301
|
-
if (this.subscription) {
|
|
302
|
-
this.subscription.unsubscribe();
|
|
303
|
-
}
|
|
304
|
-
});
|
|
305
|
-
}
|
|
306
|
-
saveSchemas() {
|
|
307
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
308
|
-
const storageSchemas = yield this.poSchemaDefinitionService.getAll();
|
|
309
|
-
this.schemas.forEach(schema => (schema.lastSync = PoSchemaUtil.getLastSync(storageSchemas, schema.name)));
|
|
310
|
-
return this.poSchemaDefinitionService.saveAll(this.schemas);
|
|
311
|
-
});
|
|
312
|
-
}
|
|
313
|
-
startSync() {
|
|
314
|
-
this.syncing = true;
|
|
315
|
-
}
|
|
316
|
-
startTimer(period) {
|
|
317
|
-
if (period && this.isSyncEnabled) {
|
|
318
|
-
this.timer = timer(period * 1000);
|
|
319
|
-
this.createSubscribe();
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
syncError() {
|
|
323
|
-
this.finishSync();
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
PoSyncService.decorators = [
|
|
327
|
-
{ type: Injectable }
|
|
328
|
-
];
|
|
329
|
-
PoSyncService.ctorParameters = () => [
|
|
330
|
-
{ type: PoEventSourcingService },
|
|
331
|
-
{ type: PoHttpClientService },
|
|
332
|
-
{ type: PoNetworkService },
|
|
333
|
-
{ type: PoSchemaDefinitionService },
|
|
334
|
-
{ type: PoSchemaService }
|
|
335
|
-
];
|
|
336
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3luYy9zcmMvbGliL3NlcnZpY2VzL3BvLXN5bmMvcG8tc3luYy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RSxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBS2xGOzs7Ozs7R0FNRztBQUVILE1BQU0sT0FBTyxhQUFhO0lBYXhCLFlBQ1Usc0JBQThDLEVBQzlDLFlBQWlDLEVBQ2pDLGdCQUFrQyxFQUNsQyx5QkFBb0QsRUFDcEQsZUFBZ0M7UUFKaEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ3BELG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQWpCMUMsV0FBTSxHQUFvQixFQUFFLENBQUM7UUFLckIsc0JBQWlCLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUM7UUFDdkQsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFHOUIsWUFBTyxHQUFZLEtBQUssQ0FBQztJQVM5QixDQUFDO0lBRUo7Ozs7Ozs7Ozs7O09BV0c7SUFDRyxPQUFPOztZQUNYLE1BQU0sZUFBZSxHQUFHLEdBQVMsRUFBRTtnQkFDakMsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQ25ELE1BQU0sSUFBSSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUMvQyxNQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1lBQ2hFLENBQUMsQ0FBQSxDQUFDO1lBRUYsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvRCxDQUFDO0tBQUE7SUFFRDs7OztPQUlHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBRTNCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsUUFBUSxDQUFDLFVBQWtCO1FBQ3pCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLEdBQUcsVUFBVSxDQUFDLENBQUM7U0FDbkQ7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILGlCQUFpQixDQUFDLFdBQThCLEVBQUUsZUFBd0I7UUFDeEUsaUJBQWlCLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRW5DLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsUUFBUTtRQUNOLE1BQU0sS0FBSyxHQUE0RCxFQUFFLENBQUM7UUFDMUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNwQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUNuQixDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILE9BQU8sQ0FBQyxPQUE0QixFQUFFLE1BQXFCO1FBQ3pELGFBQWEsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFFM0IsTUFBTSxpQkFBaUIsR0FBaUI7WUFDdEMsSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLElBQUk7WUFDdEQsTUFBTSxFQUFFLEVBQUU7WUFDVixhQUFhLEVBQUUsSUFBSSxhQUFhLEVBQUU7U0FDbkMsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxJQUFJLGlCQUFpQixDQUFDO1FBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxJQUFJLElBQUksYUFBYSxFQUFFLENBQUM7UUFDN0UsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ2pELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUV0RSxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNyRyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxnQkFBZ0IsQ0FBQyxlQUFvQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsVUFBVTtRQUNSLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDbkIsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDbEYsc0JBQXNCLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDMUI7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDRyxJQUFJOztZQUNSLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBRWpCLElBQUk7b0JBQ0YsTUFBTSxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQzdDLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUU1QyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7d0JBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7cUJBQ3JCO29CQUVELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztpQkFDbkI7Z0JBQUMsT0FBTyxLQUFLLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2lCQUNsQjthQUNGO1FBQ0gsQ0FBQztLQUFBO0lBRU8sT0FBTztRQUNiLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkMsT0FBTyxLQUFLLENBQUM7U0FDZDthQUFNO1lBQ0wsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUN0RSxNQUFNLHNCQUFzQixHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksaUJBQWlCLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQzFGLE1BQU0sb0JBQW9CLEdBQ3hCLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQVksS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV4RyxPQUFPLGlCQUFpQixDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxzQkFBc0IsSUFBSSxvQkFBb0IsQ0FBQyxDQUFDO1NBQ3JHO0lBQ0gsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNoQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztvQkFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7b0JBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdEMsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVPLFVBQVU7UUFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTyxVQUFVLENBQUMsTUFBb0IsRUFBRSxPQUFlLENBQUM7UUFDdkQsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFFdkUsTUFBTSxHQUFHLEdBQUcsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBRXBGLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUNwQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQzlCLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUN0QixNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNyRSxJQUFJLENBQUMsb0JBQW9CLEdBQUcsR0FBRyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUNoQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztnQkFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLElBQUksQ0FBQyxlQUFlO2lCQUN4QixTQUFTLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7aUJBQzlFLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGNBQWMsQ0FBQyxNQUFvQjtRQUN6QyxJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FDdkMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BELElBQUksT0FBTyxFQUFFO2dCQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUN4QztpQkFBTTtnQkFDTCxPQUFPLEVBQUUsRUFBRSxDQUFDO2FBQ2I7UUFDSCxDQUFDLENBQUMsRUFDRixNQUFNLENBQ0osQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDWCxHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRSxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsRUFDRDtZQUNFLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNuQixJQUFJLEVBQUUsRUFBRTtTQUNULENBQ0YsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN6RCxJQUFJLGFBQWEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDcEMsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDcEI7WUFFRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDakM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFYSxXQUFXOztZQUN2QixNQUFNLGNBQWMsR0FBd0IsTUFBTSxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDMUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMxRyxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlELENBQUM7S0FBQTtJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRU8sVUFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNoQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7O1lBN1ZGLFVBQVU7OztZQW5CRixzQkFBc0I7WUFDdEIsbUJBQW1CO1lBRW5CLGdCQUFnQjtZQUVoQix5QkFBeUI7WUFDekIsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBleHBhbmQsIG1hcCwgbWVyZ2VNYXAsIHJlZHVjZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHZhbGlkYXRlUGFyYW1ldGVyLCB2YWxpZGF0ZUFycmF5IH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMnO1xuXG5pbXBvcnQgeyBQb0RhdGFNZXNzYWdlLCBQb0VudGl0eSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBQb0V2ZW50U291cmNpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vcG8tZXZlbnQtc291cmNpbmcvcG8tZXZlbnQtc291cmNpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBQb0h0dHBDbGllbnRTZXJ2aWNlIH0gZnJvbSAnLi4vcG8taHR0cC1jbGllbnQvcG8taHR0cC1jbGllbnQuc2VydmljZSc7XG5pbXBvcnQgeyBQb0h0dHBSZXF1ZXN0RGF0YSB9IGZyb20gJy4uL3BvLWh0dHAtY2xpZW50L2ludGVyZmFjZXMvcG8taHR0cC1yZXF1ZXN0LWRhdGEuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvTmV0d29ya1NlcnZpY2UgfSBmcm9tICcuLi9wby1uZXR3b3JrL3BvLW5ldHdvcmsuc2VydmljZSc7XG5pbXBvcnQgeyBQb1JlcXVlc3RUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3BvLXJlcXVlc3QtdHlwZS5lbnVtJztcbmltcG9ydCB7IFBvU2NoZW1hRGVmaW5pdGlvblNlcnZpY2UgfSBmcm9tICcuLy4uL3BvLXNjaGVtYS9wby1zY2hlbWEtZGVmaW5pdGlvbi9wby1zY2hlbWEtZGVmaW5pdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBvU2NoZW1hU2VydmljZSB9IGZyb20gJy4vLi4vcG8tc2NoZW1hL3BvLXNjaGVtYS5zZXJ2aWNlJztcbmltcG9ydCB7IFBvU2NoZW1hVXRpbCB9IGZyb20gJy4vLi4vcG8tc2NoZW1hL3BvLXNjaGVtYS11dGlsL3BvLXNjaGVtYS11dGlsLm1vZGVsJztcbmltcG9ydCB7IFBvU3luY0NvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcy9wby1zeW5jLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9TeW5jUmVzcG9uc2UgfSBmcm9tICcuLi9wby1zeW5jL2ludGVyZmFjZXMvcG8tc3luYy1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9TeW5jU2NoZW1hIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXN5bmMtc2NoZW1hLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogTyBgUG9TeW5jU2VydmljZWAgw6kgdXRpbGl6YWRvIHBhcmEgY29uZmlndXJhciB0b2RhIGEgYmFzZSBkZSBkYWRvcyBxdWUgcmVjZWJlcsOhIGFzIGluZm9ybWHDp8O1ZXMgcXVlIHNlcsOjb1xuICogYXJtYXplbmFkYXMgKm9mZmxpbmUqIHZpbmRhcyBkbyBzZXJ2aWRvci4gTmVsZSBvY29ycmUgdG9kYSBhIHByZXBhcmHDp8OjbyBkb3MgbW9kZWxvcyBkZSBkYWRvcyByZXRvcm5hZG9zIHBvclxuICogY2FkYSBjb25zdWx0YS5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBvU3luY1NlcnZpY2Uge1xuICBtb2RlbHM6IEFycmF5PFBvRW50aXR5PiA9IFtdO1xuXG4gIHByaXZhdGUgY29uZmlnOiBQb1N5bmNDb25maWc7XG4gIHByaXZhdGUgZW1pdHRlcjogYW55O1xuICBwcml2YXRlIGV2ZW50U3ViOiBPYnNlcnZhYmxlPGFueT47XG4gIHByaXZhdGUgZmluaXNoU3luY1N1YmplY3Q6IFN1YmplY3Q8bnVsbD4gPSBuZXcgU3ViamVjdDxudWxsPigpO1xuICBwcml2YXRlIGlzU3luY0VuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBwcml2YXRlIHNjaGVtYXM6IEFycmF5PFBvU3luY1NjaGVtYT47XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgc3luY2luZzogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIHRpbWVyOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwb0V2ZW50U291cmNpbmdTZXJ2aWNlOiBQb0V2ZW50U291cmNpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcG9IdHRwQ2xpZW50OiBQb0h0dHBDbGllbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcG9OZXR3b3JrU2VydmljZTogUG9OZXR3b3JrU2VydmljZSxcbiAgICBwcml2YXRlIHBvU2NoZW1hRGVmaW5pdGlvblNlcnZpY2U6IFBvU2NoZW1hRGVmaW5pdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb1NjaGVtYVNlcnZpY2U6IFBvU2NoZW1hU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIERlc3Ryw7NpIHRvZGFzIGFzIGNoYXZlcyBkbyAqc3RvcmFnZSogcmVmZXJlbnRlcyBhbyBgcG8tc3luY2AsIG91IHNlamEsXG4gICAqIGFzIGRlZmluacOnw7VlcyBkb3MgKnNjaGVtYXMqLCBvcyByZWdpc3Ryb3MgZGUgY2FkYSAqc2NoZW1hKiBlIGEgZmlsYVxuICAgKiBkZSBldmVudG9zIHF1ZSBlc3TDo28gcGFyYSBzZXIgZW52aWFkb3MgYW8gc2Vydmlkb3IgKihFdmVudFNvdXJjaW5nKSouXG4gICAqXG4gICAqID4gUGFyYSBxdWUgbsOjbyB2ZW5oYW0gb2NvcnJlciBlcnJvcyBlbSBhw6fDtWVzIHF1ZSBkZXBlbmRhbSBkYXMgZGVmaW5pw6fDtWVzIGRvcyAqc2NoZW1hcyosXG4gICAqIHJlY29tZW5kYS1zZSB1dGlsaXphciBvIG3DqXRvZG8gYHByZXBhcmUoKWAgZW0gc2VndWlkYS5cbiAgICpcbiAgICogPiBWZWphIG1haXMgZGV0YWxoZXMgZW0gW0Z1bmRhbWVudG9zIGRvIFBPIFN5bmMgLSBBbHRlcmFuZG8gYXMgZGVmaW5pw6fDtWVzIGRvcyBzY2hlbWFzXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUHJvbWVzc2EgcXVlIMOpIHJlc29sdmlkYSBxdWFuZG8gYXMgY2hhdmVzIHJlZmVyZW50ZXMgYW8gYHBvLXN5bmNgIGZvcmVtIGRlc3RydcOtZGFzLlxuICAgKi9cbiAgYXN5bmMgZGVzdHJveSgpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IGRlc3Ryb3lGdW5jdGlvbiA9IGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHRoaXMucG9TY2hlbWFTZXJ2aWNlLmRlc3Ryb3lTY2hlbWFzUmVjb3JkcygpO1xuICAgICAgYXdhaXQgdGhpcy5wb1NjaGVtYURlZmluaXRpb25TZXJ2aWNlLmRlc3Ryb3koKTtcbiAgICAgIGF3YWl0IHRoaXMucG9FdmVudFNvdXJjaW5nU2VydmljZS5kZXN0cm95RXZlbnRTb3VyY2luZ1F1ZXVlKCk7XG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLnBvU2NoZW1hU2VydmljZS5saW1pdGVkQ2FsbFdyYXAoZGVzdHJveUZ1bmN0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXNhYmlsaXRhIHRvZG9zIG9zIHRpcG9zIGRlIHNpbmNyb25pemHDp8OjbyBkZSBkYWRvcyAocGVyacOzZGljYSwgcmVhdGl2YSBlIG1hbnVhbCkuXG4gICAqXG4gICAqID4gUGFyYSBoYWJpbGl0YXIgbm92YW1lbnRlIGEgc2luY3Jvbml6YcOnw6NvIHV0aWxpemUgbyBtw6l0b2RvIFtgUG9TeW5jU2VydmljZS5lbmFibGVTeW5jKClgXShkb2N1bWVudGF0aW9uL3BvLXN5bmMjZW5hYmxlLXN5bmMpLlxuICAgKi9cbiAgZGlzYWJsZVN5bmMoKSB7XG4gICAgdGhpcy5pc1N5bmNFbmFibGVkID0gZmFsc2U7XG5cbiAgICBpZiAodGhpcy50aW1lciAmJiB0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogPGEgaWQ9XCJlbmFibGUtc3luY1wiPjwvYT5cbiAgICogSGFiaWxpdGEgdG9kb3Mgb3MgdGlwb3MgZGUgc2luY3Jvbml6YcOnw6NvIGRlIGRhZG9zIChwZXJpw7NkaWNhLCByZWF0aXZhIGUgbWFudWFsKS5cbiAgICpcbiAgICogUG9yIHBhZHLDo28sIHNlbXByZSBxdWUgc2UgaW5pY2lhbGl6YSB1bWEgYXBsaWNhw6fDo28gY29tIFBPIFN5bmMgYXMgc2luY3Jvbml6YcOnw7VlcyBqw6EgZXN0w6NvIGhhYmlsaXRhZGFzLlxuICAgKi9cbiAgZW5hYmxlU3luYygpIHtcbiAgICB0aGlzLmlzU3luY0VuYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuY3JlYXRlU3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogTcOpdG9kbyBxdWUgZGlzcG9uaWJpbGl6YSBhIHBhcnRpciBkZSBzdWEgaW5zY3Jpw6fDo28gbyBldmVudG8gZGUgcmV0b3JubyBkYXMgb3BlcmHDp8O1ZXMgZGEgZmlsYSBkZSBldmVudG9zIHF1ZVxuICAgKiBmb3JhbSBlbnZpYWRhcyBhbyBzZXJ2aWRvci4gQSBjYWRhIG9wZXJhw6fDo28gZW52aWFkYSBwYXJhIG8gc2Vydmlkb3IsIHNlcsOhIGRpc3BhcmFkbyB1bSBldmVudG8gcGFyYSBhIGluc2NyacOnw6NvXG4gICAqIGRlc3RlIG3DqXRvZG8uXG4gICAqXG4gICAqID4gVmVqYSBtYWlzIGRldGFsaGVzIGVtIFtGdW5kYW1lbnRvcyBkbyBQTyBTeW5jIC0gQ2FwdHVyYW5kbyByZXNwb3N0YXMgZGEgc2luY3Jvbml6YcOnw6NvXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHJldHVybnMge09ic2VydmFibGU8UG9TeW5jUmVzcG9uc2U+fSBPYnNlcnZhYmxlIGNvbSB1bSBvYmpldG8gZG8gdGlwbyBgUG9TeW5jUmVzcG9uc2VgLlxuICAgKi9cbiAgZ2V0UmVzcG9uc2VzKCk6IE9ic2VydmFibGU8UG9TeW5jUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5wb0V2ZW50U291cmNpbmdTZXJ2aWNlLnJlc3BvbnNlc1N1YmplY3QoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRvcm5hIHVtYSBpbnN0w6JuY2lhIGRlIGBQb0VudGl0eWAgcGFyYSB1bSBkZXRlcm1pbmFkbyAqc2NoZW1hKi5cbiAgICpcbiAgICogPiBWZWphIG1haXMgZGV0YWxoZXMgZW0gW0Z1bmRhbWVudG9zIGRvIFBPIFN5bmMgLSBNYW5pcHVsYW5kbyBvcyByZWdpc3Ryb3MgZGUgdW0gc2NoZW1hXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHNjaGVtYU5hbWUgTm9tZSBkbyAqc2NoZW1hKi5cbiAgICogQHJldHVybnMge1BvRW50aXR5fSBPYmpldG8gcGFyYSBlZmV0dWFyIGNvbnN1bHRhcyBlIGFsdGVyYcOnw7VlcyBub3MgZGFkb3MuXG4gICAqL1xuICBnZXRNb2RlbChzY2hlbWFOYW1lOiBzdHJpbmcpOiBQb0VudGl0eSB7XG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsc1tzY2hlbWFOYW1lXTtcbiAgICBpZiAoIW1vZGVsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01vZGVsIG5vdCBmb3VuZDogJyArIHNjaGVtYU5hbWUpO1xuICAgIH1cbiAgICByZXR1cm4gbW9kZWw7XG4gIH1cblxuICAvKipcbiAgICogSW5zZXJlIHVtYSByZXF1aXNpw6fDo28gSFRUUCBuYSBmaWxhIGRlIGV2ZW50b3MgZG8gYHBvLXN5bmNgLlxuICAgKlxuICAgKiA+IFZlamEgbWFpcyBkZXRhbGhlcyBlbSBbRnVuZGFtZW50b3MgZG8gUE8gU3luYyAtIEluc2VyaW5kbyByZXF1aXNpw6fDtWVzIEhUVFAgbmEgZmlsYSBkZSBldmVudG9zXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHBhcmFtIHtQb0h0dHBSZXF1ZXN0RGF0YX0gcG9IdHRwUmVxdWVzdERhdGEgRGFkb3MgZGEgcmVxdWlzacOnw6NvIEhUVFAuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjdXN0b21SZXF1ZXN0SWQgSWRlbnRpZmljYWRvciBjdXN0b21pemFkbyBkYSByZXF1aXNpw6fDo28gSFRUUC5cbiAgICogQHJldHVybnMge1Byb21pc2U8bnVtYmVyPn0gUHJvbWVzc2EgY29tIG8gaWRlbnRpZmljYWRvciBkYSByZXF1aXNpw6fDo28gSFRUUCBjcmlhZGEuXG4gICAqL1xuICBpbnNlcnRIdHRwQ29tbWFuZChyZXF1ZXN0RGF0YTogUG9IdHRwUmVxdWVzdERhdGEsIGN1c3RvbVJlcXVlc3RJZD86IHN0cmluZyk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgdmFsaWRhdGVQYXJhbWV0ZXIoeyByZXF1ZXN0RGF0YSB9KTtcblxuICAgIHJldHVybiB0aGlzLnBvRXZlbnRTb3VyY2luZ1NlcnZpY2UuaHR0cENvbW1hbmQocmVxdWVzdERhdGEsIGN1c3RvbVJlcXVlc3RJZCk7XG4gIH1cblxuICAvKipcbiAgICogRWZldHVhIHVtYSBjaGFtYWRhIG5hIEFQSSBkbyBzZXJ2aWRvciBwYXJhIHJlYWxpemFyIGEgY2FyZ2EgaW5pY2lhbCBkb3MgZGFkb3MuIERldmUgc2VyIGNoYW1hZG8gYXBlbmFzIHVtYSB2ZXpcbiAgICogbmEgYXBsaWNhw6fDo28sIGFww7NzIGEgcHJlcGFyYcOnw6NvIGRvcyAqc2NoZW1hcyogcmVhbGl6YWRhIGF0cmF2w6lzIGRvIG3DqXRvZG8gYFBvU3luY1NlcnZpY2UucHJlcGFyZSgpYC5cbiAgICpcbiAgICogPiBWZWphIG1haXMgZGV0YWxoZXMgZW0gW0Z1bmRhbWVudG9zIGRvIFBPIFN5bmMgLSBDYXJnYSBpbmljaWFsIGRvcyBkYWRvc10oL2d1aWRlcy9zeW5jLWZ1bmRhbWVudGFscykuXG4gICAqXG4gICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPEFycmF5PHsgZW50aXR5OiBzdHJpbmcsIGRhdGE6IEFycmF5PGFueT4gfT4+fSBPYnNlcnZhYmxlIHF1ZSBub3RpZmljYXLDoSBxdWFuZG8gYVxuICAgKiBjYXJnYSBpbmljaWFsIGZvciBjb25jbHXDrWRhLlxuICAgKi9cbiAgbG9hZERhdGEoKTogT2JzZXJ2YWJsZTxBcnJheTx7IGVudGl0eTogc3RyaW5nOyBkYXRhOiBBcnJheTxhbnk+IH0+PiB7XG4gICAgY29uc3QgbG9hZHM6IEFycmF5PE9ic2VydmFibGU8eyBlbnRpdHk6IHN0cmluZzsgZGF0YTogQXJyYXk8YW55PiB9Pj4gPSBbXTtcbiAgICB0aGlzLnNjaGVtYXMuZm9yRWFjaChlbCA9PiBsb2Fkcy5wdXNoKHRoaXMubG9hZEVudGl0eURhdGEoZWwpKSk7XG4gICAgcmV0dXJuIGZvcmtKb2luKGxvYWRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNwb25zw6F2ZWwgcG9yIG5vdGlmaWNhciBzZW1wcmUgcXVlIGhvdXZlciBzaW5jcm9uaXNtby5cbiAgICpcbiAgICogPiBWZWphIG1haXMgZGV0YWxoZXMgZW0gW0Z1bmRhbWVudG9zIGRvIFBPIFN5bmMgLSBOb3RpZmljYcOnw6NvIHDDs3Mtc2luY3Jvbml6YcOnw6NvXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHJldHVybnMge09ic2VydmFibGU8YW55Pn0gT2JzZXJ2YWJsZSBxdWUgw6kgZGlzcGFyYWRvIGEgY2FkYSBzaW5jcm9uaXNtbyByZWFsaXphZG8uXG4gICAqL1xuICBvblN5bmMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAoIXRoaXMuZXZlbnRTdWIpIHtcbiAgICAgIHRoaXMuZXZlbnRTdWIgPSBPYnNlcnZhYmxlLmNyZWF0ZShlID0+IHtcbiAgICAgICAgdGhpcy5lbWl0dGVyID0gZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5ldmVudFN1YjtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVwYXJhIGEgYXBsaWNhw6fDo28gY3JpYW5kbyBvcyBzY2hlbWFzIGUgYXBsaWNhIGFzIGNvbmZpZ3VyYcOnw7Vlcy5cbiAgICpcbiAgICogPiBWZWphIG1haXMgZGV0YWxoZXMgZW0gW0Z1bmRhbWVudG9zIGRvIFBPIFN5bmMgLSBQcmVwYXJhbmRvIGEgYXBsaWNhw6fDo29dKC9ndWlkZXMvc3luYy1mdW5kYW1lbnRhbHMpLlxuICAgKlxuICAgKiBAcGFyYW0ge0FycmF5PFBvU3luY1NjaGVtYT59IHNjaGVtYXMgTGlzdGEgZGUgKnNjaGVtYXMqIGEgc2VyZW0gcHJlcGFyYWRvcy5cbiAgICogQHBhcmFtIHtQb1N5bmNDb25maWd9IGNvbmZpZyBDb25maWd1cmHDp8O1ZXMgYWRpY2lvbmFpcy5cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUHJvbWVzc2EgcXVlIMOpIHJlc29sdmlkYSBxdWFuZG8gYSBhcGxpY2HDp8OjbyBlc3RpdmVyIHByZXBhcmFkYSBwYXJhIGEgdXRpbGl6YcOnw6NvIGRvIGBwby1zeW5jYC5cbiAgICovXG4gIHByZXBhcmUoc2NoZW1hczogQXJyYXk8UG9TeW5jU2NoZW1hPiwgY29uZmlnPzogUG9TeW5jQ29uZmlnKTogUHJvbWlzZTxhbnk+IHtcbiAgICB2YWxpZGF0ZUFycmF5KHsgc2NoZW1hcyB9KTtcblxuICAgIGNvbnN0IGRlZmF1bHRTeW5jQ29uZmlnOiBQb1N5bmNDb25maWcgPSB7XG4gICAgICB0eXBlOiB0aGlzLnBvTmV0d29ya1NlcnZpY2UuZ2V0Q29ubmVjdGlvblN0YXR1cygpLnR5cGUsXG4gICAgICBwZXJpb2Q6IDYwLFxuICAgICAgZGF0YVRyYW5zZm9ybTogbmV3IFBvRGF0YU1lc3NhZ2UoKVxuICAgIH07XG5cbiAgICB0aGlzLnNjaGVtYXMgPSBzY2hlbWFzO1xuICAgIHRoaXMuY29uZmlnID0gY29uZmlnIHx8IGRlZmF1bHRTeW5jQ29uZmlnO1xuICAgIHRoaXMuY29uZmlnLmRhdGFUcmFuc2Zvcm0gPSB0aGlzLmNvbmZpZy5kYXRhVHJhbnNmb3JtIHx8IG5ldyBQb0RhdGFNZXNzYWdlKCk7XG4gICAgdGhpcy5wb0V2ZW50U291cmNpbmdTZXJ2aWNlLmNvbmZpZyA9IHRoaXMuY29uZmlnO1xuICAgIHRoaXMuc3RhcnRUaW1lcih0aGlzLmNvbmZpZy5wZXJpb2QpO1xuICAgIHRoaXMucmVhY3RpdmVTeW5jKCk7XG4gICAgdGhpcy5wb0V2ZW50U291cmNpbmdTZXJ2aWNlLm9uU2F2ZURhdGEoKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zeW5jKCkpO1xuXG4gICAgcmV0dXJuIHRoaXMuc2F2ZVNjaGVtYXMoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMuc2NoZW1hcy5mb3JFYWNoKHNjaGVtYSA9PiB7XG4gICAgICAgIHRoaXMubW9kZWxzW3NjaGVtYS5uYW1lXSA9IG5ldyBQb0VudGl0eSh0aGlzLnBvRXZlbnRTb3VyY2luZ1NlcnZpY2UsIHNjaGVtYSwgdGhpcy5wb1NjaGVtYVNlcnZpY2UpO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHVtIGl0ZW0gZGEgZmlsYSBkZSBldmVudG9zIHF1ZSBlc3BlcmEgYSBzaW5jcm9uaXphw6fDo28uXG4gICAqXG4gICAqID4gVmVqYSBtYWlzIGRldGFsaGVzIGVtIFtGdW5kYW1lbnRvcyBkbyBQTyBTeW5jIC0gQ2FwdHVyYW5kbyByZXNwb3N0YXMgZGEgc2luY3Jvbml6YcOnw6NvXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHBhcmFtIHthbnl9IGlkRXZlbnRTb3VyY2luZyBJZGVudGlmaWNhZG9yIGRvIGl0ZW0gZGEgZmlsYSBkZSBldmVudG9zLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBQcm9tZXNzYSBxdWUgw6kgcmVzb2x2aWRhIHF1YW5kbyBvIGl0ZW0gZGEgZmlsYSBkZSBldmVudG9zIMOpIHJlbW92aWRvLlxuICAgKi9cbiAgcmVtb3ZlSXRlbU9mU3luYyhpZEV2ZW50U291cmNpbmc6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMucG9FdmVudFNvdXJjaW5nU2VydmljZS5yZW1vdmVFdmVudFNvdXJjaW5nSXRlbShpZEV2ZW50U291cmNpbmcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZW52aWEgb3MgY29tYW5kb3MgcGVuZGVudGVzIG5hIGZpbGEgKGluY2x1c8OjbywgYWx0ZXJhw6fDo28gZSBleGNsdXPDo28pIGUgYnVzY2Egbm92b3MgZGFkb3MgZG8gc2Vydmlkb3IuXG4gICAqXG4gICAqID4gVmVqYSBtYWlzIGRldGFsaGVzIGVtIFtGdW5kYW1lbnRvcyBkbyBQTyBTeW5jIC0gQ2FwdHVyYW5kbyByZXNwb3N0YXMgZGEgc2luY3Jvbml6YcOnw6NvXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUHJvbWVzc2EgcXVlIHJlc29sdmUgbyBzaW5jcm9uaXNtbyBkaXNwYXJhZG8uXG4gICAqL1xuICByZXN1bWVTeW5jKCk6IFByb21pc2U8YW55PiB7XG4gICAgaWYgKCF0aGlzLmNhblN5bmMoKSkge1xuICAgICAgY29uc3QgZmluaXNoU3luY1N1YnNjcmlwdGlvbiA9IHRoaXMuZmluaXNoU3luY1N1YmplY3QuYXNPYnNlcnZhYmxlKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgZmluaXNoU3luY1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICByZXR1cm4gdGhpcy5zeW5jKCk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zeW5jKCk7XG4gIH1cblxuICAvKipcbiAgICogRGlzcGFyYSBvIHNpbmNyb25pc21vIGVudmlhbmRvIG9zIGV2ZW50b3MgcGVuZGVudGVzIChpbmNsdXPDo28sIGFsdGVyYcOnw6NvIGUgZXhjbHVzw6NvKSBlIGJ1c2NhbmRvIG5vdm9zIGRhZG9zIGRvIHNlcnZpZG9yLlxuICAgKlxuICAgKiBPIHNpbmNyb25pc21vIHNvbWVudGUgc2Vyw6EgZXhlY3V0YWRvIGRlcG9pcyBxdWUgbyBhY2Vzc28gYSBiYXNlIGRlIGRhZG9zIGxvY2FsIGRvIGRpc3Bvc2l0aXZvIGZvciBsaWJlcmFkYS5cbiAgICpcbiAgICogPiBWZWphIG1haXMgZGV0YWxoZXMgZW0gW0Z1bmRhbWVudG9zIGRvIFBPIFN5bmMgLSBTaW5jcm9uaXphw6fDo28gbWFudWFsXSgvZ3VpZGVzL3N5bmMtZnVuZGFtZW50YWxzKS5cbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUHJvbWVzc2EgcXVlIMOpIHJlc29sdmlkYSBxdWFuZG8gbyBzaW5jcm9uaXNtbyBmb3IgZmluYWxpemFkby5cbiAgICovXG4gIGFzeW5jIHN5bmMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICBpZiAodGhpcy5jYW5TeW5jKCkpIHtcbiAgICAgIHRoaXMuc3RhcnRTeW5jKCk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHRoaXMucG9FdmVudFNvdXJjaW5nU2VydmljZS5zeW5jU2VuZCgpO1xuICAgICAgICBhd2FpdCB0aGlzLnBvRXZlbnRTb3VyY2luZ1NlcnZpY2Uuc3luY0dldCgpO1xuXG4gICAgICAgIGlmICh0aGlzLmVtaXR0ZXIpIHtcbiAgICAgICAgICB0aGlzLmVtaXR0ZXIubmV4dCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5maW5pc2hTeW5jKCk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aGlzLnN5bmNFcnJvcigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2FuU3luYygpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5zeW5jaW5nIHx8ICF0aGlzLmlzU3luY0VuYWJsZWQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY3VycmVudENvbm5lY3Rpb24gPSB0aGlzLnBvTmV0d29ya1NlcnZpY2UuZ2V0Q29ubmVjdGlvblN0YXR1cygpO1xuICAgICAgY29uc3QgaXNDb25maWd1cmVkQ29ubmVjdGlvbiA9IHRoaXMuY29uZmlnICYmIGN1cnJlbnRDb25uZWN0aW9uLnR5cGUgPT09IHRoaXMuY29uZmlnLnR5cGU7XG4gICAgICBjb25zdCBpc0NvbmZpZ0luY2x1ZGVzVHlwZSA9XG4gICAgICAgIHRoaXMuY29uZmlnICYmIHRoaXMuY29uZmlnLnR5cGUgaW5zdGFuY2VvZiBBcnJheSAmJiB0aGlzLmNvbmZpZy50eXBlLmluY2x1ZGVzKGN1cnJlbnRDb25uZWN0aW9uLnR5cGUpO1xuXG4gICAgICByZXR1cm4gY3VycmVudENvbm5lY3Rpb24uc3RhdHVzICYmICghdGhpcy5jb25maWcgfHwgaXNDb25maWd1cmVkQ29ubmVjdGlvbiB8fCBpc0NvbmZpZ0luY2x1ZGVzVHlwZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVTdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGltZXIpIHtcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy50aW1lci5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnN5bmMoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgICAgICB0aGlzLnRpbWVyID0gbnVsbDtcbiAgICAgICAgICB0aGlzLnN0YXJ0VGltZXIodGhpcy5jb25maWcucGVyaW9kKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbmlzaFN5bmMoKTogdm9pZCB7XG4gICAgdGhpcy5zeW5jaW5nID0gZmFsc2U7XG4gICAgdGhpcy5maW5pc2hTeW5jU3ViamVjdC5uZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIGdldE9uZVBhZ2Uoc2NoZW1hOiBQb1N5bmNTY2hlbWEsIHBhZ2U6IG51bWJlciA9IDEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgIHBhcmFtcy5wdXNoKGAke3RoaXMuY29uZmlnLmRhdGFUcmFuc2Zvcm0uZ2V0UGFnZVNpemVQYXJhbU5hbWUoKX09JHtzY2hlbWEucGFnZVNpemV9YCk7XG4gICAgcGFyYW1zLnB1c2goYCR7dGhpcy5jb25maWcuZGF0YVRyYW5zZm9ybS5nZXRQYWdlUGFyYW1OYW1lKCl9PSR7cGFnZX1gKTtcblxuICAgIGNvbnN0IHVybCA9IGAke1BvU2NoZW1hVXRpbC5nZXRVcmwoc2NoZW1hLCBQb1JlcXVlc3RUeXBlLkdFVCl9PyR7cGFyYW1zLmpvaW4oJyYnKX1gO1xuXG4gICAgcmV0dXJuIHRoaXMucG9IdHRwQ2xpZW50LmdldCh1cmwpLnBpcGUoXG4gICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2UuYm9keSksXG4gICAgICBtZXJnZU1hcChyZXNwb25zZUJvZHkgPT4ge1xuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgICAgcmVzcG9uc2VCb2R5W3RoaXMuY29uZmlnLmRhdGFUcmFuc2Zvcm0uZ2V0SXRlbXNGaWVsZE5hbWUoKV0ubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgIGl0ZW0uU3luY0luc2VydGVkRGF0ZVRpbWUgPSBub3c7XG4gICAgICAgICAgaXRlbS5TeW5jVXBkYXRlZERhdGVUaW1lID0gbnVsbDtcbiAgICAgICAgICBpdGVtLlN5bmNFeGNsdXNpb25EYXRlVGltZSA9IG51bGw7XG4gICAgICAgICAgaXRlbS5TeW5jRGVsZXRlZCA9IGZhbHNlO1xuICAgICAgICAgIGl0ZW0uU3luY1N0YXR1cyA9IDI7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcy5wb1NjaGVtYVNlcnZpY2VcbiAgICAgICAgICAudXBkYXRlQWxsKHNjaGVtYSwgcmVzcG9uc2VCb2R5W3RoaXMuY29uZmlnLmRhdGFUcmFuc2Zvcm0uZ2V0SXRlbXNGaWVsZE5hbWUoKV0pXG4gICAgICAgICAgLnRoZW4oKCkgPT4gcmVzcG9uc2VCb2R5KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZEVudGl0eURhdGEoc2NoZW1hOiBQb1N5bmNTY2hlbWEpOiBPYnNlcnZhYmxlPHsgZW50aXR5OiBzdHJpbmc7IGRhdGE6IEFycmF5PGFueT4gfT4ge1xuICAgIGxldCBwYWdlID0gMTtcbiAgICByZXR1cm4gdGhpcy5nZXRPbmVQYWdlKHNjaGVtYSwgcGFnZSkucGlwZShcbiAgICAgIGV4cGFuZChkYXRhID0+IHtcbiAgICAgICAgdGhpcy5jb25maWcuZGF0YVRyYW5zZm9ybS50cmFuc2Zvcm0oZGF0YSk7XG4gICAgICAgIGNvbnN0IGhhc05leHQgPSB0aGlzLmNvbmZpZy5kYXRhVHJhbnNmb3JtLmhhc05leHQoKTtcbiAgICAgICAgaWYgKGhhc05leHQpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRPbmVQYWdlKHNjaGVtYSwgKytwYWdlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICByZWR1Y2UoXG4gICAgICAgIChhY2MsIG9iaikgPT4ge1xuICAgICAgICAgIGFjYy5kYXRhID0gYWNjLmRhdGEuY29uY2F0KG9ialt0aGlzLmNvbmZpZy5kYXRhVHJhbnNmb3JtLmdldEl0ZW1zRmllbGROYW1lKCldKTtcbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZW50aXR5OiBzY2hlbWEubmFtZSxcbiAgICAgICAgICBkYXRhOiBbXVxuICAgICAgICB9XG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhY3RpdmVTeW5jKCk6IHZvaWQge1xuICAgIHRoaXMucG9OZXR3b3JrU2VydmljZS5vbkNoYW5nZSgpLnN1YnNjcmliZShuZXR3b3JrU3RhdHVzID0+IHtcbiAgICAgIGlmIChuZXR3b3JrU3RhdHVzLnN0YXR1cykge1xuICAgICAgICB0aGlzLnN0YXJ0VGltZXIodGhpcy5jb25maWcucGVyaW9kKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3luYygpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2F2ZVNjaGVtYXMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICBjb25zdCBzdG9yYWdlU2NoZW1hczogQXJyYXk8UG9TeW5jU2NoZW1hPiA9IGF3YWl0IHRoaXMucG9TY2hlbWFEZWZpbml0aW9uU2VydmljZS5nZXRBbGwoKTtcbiAgICB0aGlzLnNjaGVtYXMuZm9yRWFjaChzY2hlbWEgPT4gKHNjaGVtYS5sYXN0U3luYyA9IFBvU2NoZW1hVXRpbC5nZXRMYXN0U3luYyhzdG9yYWdlU2NoZW1hcywgc2NoZW1hLm5hbWUpKSk7XG4gICAgcmV0dXJuIHRoaXMucG9TY2hlbWFEZWZpbml0aW9uU2VydmljZS5zYXZlQWxsKHRoaXMuc2NoZW1hcyk7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0U3luYygpOiB2b2lkIHtcbiAgICB0aGlzLnN5bmNpbmcgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFRpbWVyKHBlcmlvZCk6IHZvaWQge1xuICAgIGlmIChwZXJpb2QgJiYgdGhpcy5pc1N5bmNFbmFibGVkKSB7XG4gICAgICB0aGlzLnRpbWVyID0gdGltZXIocGVyaW9kICogMTAwMCk7XG4gICAgICB0aGlzLmNyZWF0ZVN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3luY0Vycm9yKCk6IHZvaWQge1xuICAgIHRoaXMuZmluaXNoU3luYygpO1xuICB9XG59XG4iXX0=
|
package/esm2015/po-ui-ng-sync.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
export { PoEventSourcingService as ɵa } from './lib/services/po-event-sourcing';
|
|
6
|
-
export { PoSchemaService as ɵb } from './lib/services/po-schema';
|
|
7
|
-
export { PoSchemaDefinitionService as ɵc } from './lib/services/po-schema/po-schema-definition/po-schema-definition.service';
|
|
8
|
-
export { PoSchemaService as ɵd } from './lib/services/po-schema/po-schema.service';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdWktbmctc3luYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3N5bmMvc3JjL3BvLXVpLW5nLXN5bmMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDOUUsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDM0gsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtQb0V2ZW50U291cmNpbmdTZXJ2aWNlIGFzIMm1YX0gZnJvbSAnLi9saWIvc2VydmljZXMvcG8tZXZlbnQtc291cmNpbmcnO1xuZXhwb3J0IHtQb1NjaGVtYVNlcnZpY2UgYXMgybVifSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wby1zY2hlbWEnO1xuZXhwb3J0IHtQb1NjaGVtYURlZmluaXRpb25TZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvcG8tc2NoZW1hL3BvLXNjaGVtYS1kZWZpbml0aW9uL3BvLXNjaGVtYS1kZWZpbml0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtQb1NjaGVtYVNlcnZpY2UgYXMgybVkfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wby1zY2hlbWEvcG8tc2NoZW1hLnNlcnZpY2UnOyJdfQ==
|