@colijnit/sharedcomponents 1.0.19 → 1.0.20
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/bundles/colijnit-sharedcomponents.umd.js +550 -134
- package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
- package/colijnit-sharedcomponents.d.ts +9 -7
- package/colijnit-sharedcomponents.metadata.json +1 -1
- package/esm2015/colijnit-sharedcomponents.js +10 -8
- package/esm2015/lib/assets/dictionary/text.properties.js +11 -0
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +94 -23
- package/esm2015/lib/components/stock/stock-information/stock-information.component.js +1 -1
- package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +37 -29
- package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +1 -1
- package/esm2015/lib/components/stock/stock.component.js +18 -5
- package/esm2015/lib/components/stock/stock.module.js +3 -3
- package/esm2015/lib/enum/icon.enum.js +1 -1
- package/esm2015/lib/enum/language-code.enum.js +8 -0
- package/esm2015/lib/model/icon-svg.js +1 -1
- package/esm2015/lib/service/dictionary.service.js +76 -0
- package/esm2015/lib/service/options.service.js +71 -0
- package/esm2015/lib/service/shared-connector.service.js +262 -0
- package/esm2015/lib/service/shared.service.js +30 -0
- package/esm2015/lib/service/stock.service.js +37 -30
- package/esm2015/lib/utils/string-utils.js +64 -0
- package/esm2015/public-api.js +2 -1
- package/fesm2015/colijnit-sharedcomponents.js +462 -118
- package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
- package/lib/assets/dictionary/text.properties.d.ts +3 -0
- package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +24 -7
- package/lib/components/send-method-dialog/style/_layout.scss +5 -0
- package/lib/components/stock/stock-information/stock-information.component.d.ts +1 -1
- package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +6 -6
- package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +1 -1
- package/lib/components/stock/stock.component.d.ts +6 -2
- package/lib/components/stock/style/_layout.scss +6 -0
- package/lib/enum/language-code.enum.d.ts +6 -0
- package/lib/service/dictionary.service.d.ts +21 -0
- package/lib/service/options.service.d.ts +13 -0
- package/lib/service/{ione-connector-adapter.service.d.ts → shared-connector.service.d.ts} +9 -7
- package/lib/service/shared.service.d.ts +8 -0
- package/lib/service/stock.service.d.ts +9 -8
- package/lib/utils/string-utils.d.ts +22 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/3rdpartylicenses.txt +0 -1116
- package/esm2015/lib/service/ione-connector-adapter.service.js +0 -251
- package/favicon.ico +0 -0
- package/index.html +0 -12
- package/main.5240c1941fea0abc7a9c.js +0 -1
- package/polyfills.4a44032b137d291298c3.js +0 -1
- package/runtime.f2046bab7c02026dc21f.js +0 -1
- package/styles.b3b98643e0f0f94bdd12.css +0 -110
|
@@ -1,251 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { Articles } from "@colijnit/articleapi/build/articles";
|
|
3
|
-
import { Sharedapi } from "@colijnit/sharedapi/build/sharedapi";
|
|
4
|
-
import { Printer } from "@colijnit/sharedapi/build/model/report/printer.bo";
|
|
5
|
-
import { Injectable } from "@angular/core";
|
|
6
|
-
import { BusinessObjectFactory } from "../factory/business-object-factory";
|
|
7
|
-
import { PrintStockStickers } from "@colijnit/sharedapi/build/model/print-stock-stickers";
|
|
8
|
-
import { ArticleStockBo } from "@colijnit/articleapi/build/model/article-stock.bo";
|
|
9
|
-
import { StockHistoryBo } from "@colijnit/articleapi/build/model/stock-history.bo";
|
|
10
|
-
import { StockStickersPrintLayoutsBo } from "@colijnit/sharedapi/build/model/report/stock-stickers-print-layouts.bo";
|
|
11
|
-
import { ArticleDetailsBo } from "@colijnit/articleapi/build/model/article-details.bo";
|
|
12
|
-
import { StockStatus } from "@colijnit/articleapi/build/model/stock-status.bo";
|
|
13
|
-
import { StockManagementWarehouses } from "@colijnit/articleapi/build/model/stock-management-warehouses.bo";
|
|
14
|
-
import { StockLocation } from "@colijnit/articleapi/build/model/stock-location.bo";
|
|
15
|
-
import * as i0 from "@angular/core";
|
|
16
|
-
export class IoneConnectorAdapterService {
|
|
17
|
-
constructor() {
|
|
18
|
-
this._boFactory = new BusinessObjectFactory();
|
|
19
|
-
}
|
|
20
|
-
connect(options) {
|
|
21
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
if (this.options === undefined) {
|
|
23
|
-
this.options = options;
|
|
24
|
-
this.connector = new Articles(options);
|
|
25
|
-
this.sharedConnector = new Sharedapi(options);
|
|
26
|
-
this.options.session = this.connector.session && this.sharedConnector.session;
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
disconnect() {
|
|
31
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
this.options = undefined;
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
getAllPrinters(showAll = true) {
|
|
36
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
-
return new Promise((resolve, reject) => {
|
|
38
|
-
return this.sharedConnector.listAllPrinters(showAll).then((result) => {
|
|
39
|
-
if (result.validationResult && result.validationResult.success) {
|
|
40
|
-
if (result.resultObject) {
|
|
41
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(Printer, result.resultObject));
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
reject(result.validationMessagesAsString);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
getPrintStockStickers(request) {
|
|
52
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
-
return new Promise((resolve, reject) => {
|
|
54
|
-
return this.sharedConnector.getPrintStockStickers(request).then((result) => {
|
|
55
|
-
if (result.validationResult && result.validationResult.success) {
|
|
56
|
-
if (result.resultObject) {
|
|
57
|
-
resolve(this._boFactory.makeWithRawBackendData(PrintStockStickers, result.resultObject));
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
reject(result.validationMessagesAsString);
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
getStockStickerPrintLayouts(stockStickersPrintLayoutsBo) {
|
|
68
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
69
|
-
return new Promise((resolve, reject) => {
|
|
70
|
-
return this.sharedConnector.getStockStickerPrintLayouts(stockStickersPrintLayoutsBo).then((result) => {
|
|
71
|
-
if (result.validationResult && result.validationResult.success) {
|
|
72
|
-
if (result.resultObject) {
|
|
73
|
-
resolve(this._boFactory.makeWithRawBackendData(stockStickersPrintLayoutsBo, result.resultObject));
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
reject(result.validationMessagesAsString);
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
getArticleFullObject(goodId) {
|
|
84
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
-
return new Promise((resolve, reject) => {
|
|
86
|
-
return this.connector.getArticleFullObject(goodId).then((result) => {
|
|
87
|
-
// if (result.validationResult && result.validationResult.success) {
|
|
88
|
-
// if (result.resultObject) {
|
|
89
|
-
// resolve(this._boFactory.makeWithRawBackendData(ArticleExtended, result.resultObject));
|
|
90
|
-
// }
|
|
91
|
-
// } else {
|
|
92
|
-
// reject(result.validationMessagesAsString);
|
|
93
|
-
// }
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
getStockHistory(request) {
|
|
99
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
100
|
-
return new Promise((resolve, reject) => {
|
|
101
|
-
return this.connector.getStockHistory(request).then((result) => {
|
|
102
|
-
if (result.validationResult && result.validationResult.success) {
|
|
103
|
-
if (result.resultObject && result.resultObject.hasOwnProperty("stockHistory")) {
|
|
104
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockHistoryBo, result.resultObject.stockHistory));
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
reject(result.validationMessagesAsString);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
getStockInformation(data) {
|
|
115
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
-
return new Promise((resolve, reject) => {
|
|
117
|
-
return this.connector.getStockInformation(data).then((result) => {
|
|
118
|
-
if (result.validationResult && result.validationResult.success) {
|
|
119
|
-
if (result.resultObjects) {
|
|
120
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleStockBo, result.resultObjects));
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
reject(result.validationMessagesAsString);
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
});
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
getStockManagementWarehouses() {
|
|
131
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
132
|
-
return new Promise((resolve, reject) => {
|
|
133
|
-
return this.connector.getStockManagementWarehouses().then((result) => {
|
|
134
|
-
if (result.validationResult && result.validationResult.success) {
|
|
135
|
-
if (result.resultObjects) {
|
|
136
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockManagementWarehouses, result.resultObjects));
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
reject(result.validationMessagesAsString);
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
});
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
getStockManagementLocations(warehouseNo) {
|
|
147
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
-
return new Promise((resolve, reject) => {
|
|
149
|
-
return this.connector.getStockManagementLocations(warehouseNo).then((result) => {
|
|
150
|
-
if (result.validationResult && result.validationResult.success) {
|
|
151
|
-
if (result.resultObjects) {
|
|
152
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockLocation, result.resultObjects));
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
reject(result.validationMessagesAsString);
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
});
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
getArticleDetails(data) {
|
|
163
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
164
|
-
return new Promise((resolve, reject) => {
|
|
165
|
-
return this.connector.getArticleDetails(data).then((result) => {
|
|
166
|
-
if (result.validationResult && result.validationResult.success) {
|
|
167
|
-
if (result.resultObjects) {
|
|
168
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleDetailsBo, result.resultObjects));
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
else {
|
|
172
|
-
reject(result.validationMessagesAsString);
|
|
173
|
-
}
|
|
174
|
-
});
|
|
175
|
-
});
|
|
176
|
-
});
|
|
177
|
-
}
|
|
178
|
-
updateArticleDetails(data) {
|
|
179
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
180
|
-
return new Promise((resolve, reject) => {
|
|
181
|
-
return this.connector.updateArticleDetails(data).then((result) => __awaiter(this, void 0, void 0, function* () {
|
|
182
|
-
if (result.validationResult && result.validationResult.success) {
|
|
183
|
-
yield this.commit();
|
|
184
|
-
resolve(true);
|
|
185
|
-
}
|
|
186
|
-
else {
|
|
187
|
-
reject(result.validationMessagesAsString);
|
|
188
|
-
}
|
|
189
|
-
}));
|
|
190
|
-
});
|
|
191
|
-
});
|
|
192
|
-
}
|
|
193
|
-
lockArticleDetails(data) {
|
|
194
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
195
|
-
return new Promise((resolve, reject) => {
|
|
196
|
-
return this.connector.lockArticleDetails(data).then((result) => __awaiter(this, void 0, void 0, function* () {
|
|
197
|
-
if (result.validationResult && result.validationResult.success) {
|
|
198
|
-
yield this.commit();
|
|
199
|
-
resolve(true);
|
|
200
|
-
}
|
|
201
|
-
else {
|
|
202
|
-
reject(result.validationMessagesAsString);
|
|
203
|
-
}
|
|
204
|
-
}));
|
|
205
|
-
});
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
getStockStatus() {
|
|
209
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
210
|
-
return new Promise((resolve, reject) => {
|
|
211
|
-
return this.connector.getStockState().then((result) => {
|
|
212
|
-
if (result.validationResult && result.validationResult.success) {
|
|
213
|
-
if (result.resultObjects) {
|
|
214
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockStatus, result.resultObjects));
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
else {
|
|
218
|
-
reject(result.validationMessagesAsString);
|
|
219
|
-
}
|
|
220
|
-
});
|
|
221
|
-
});
|
|
222
|
-
});
|
|
223
|
-
}
|
|
224
|
-
getStockStickerTemplates(data) {
|
|
225
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
226
|
-
return new Promise((resolve, reject) => {
|
|
227
|
-
return this.sharedConnector.getStockStickerPrintLayouts(data).then((result) => {
|
|
228
|
-
if (result.validationResult && result.validationResult.success) {
|
|
229
|
-
if (result.resultObject) {
|
|
230
|
-
resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockStickersPrintLayoutsBo, result.resultObject));
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
else {
|
|
234
|
-
reject(result.validationMessagesAsString);
|
|
235
|
-
}
|
|
236
|
-
});
|
|
237
|
-
});
|
|
238
|
-
});
|
|
239
|
-
}
|
|
240
|
-
commit() {
|
|
241
|
-
return this.connector.commit();
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
IoneConnectorAdapterService.ɵprov = i0.ɵɵdefineInjectable({ factory: function IoneConnectorAdapterService_Factory() { return new IoneConnectorAdapterService(); }, token: IoneConnectorAdapterService, providedIn: "root" });
|
|
245
|
-
IoneConnectorAdapterService.decorators = [
|
|
246
|
-
{ type: Injectable, args: [{
|
|
247
|
-
providedIn: "root"
|
|
248
|
-
},] }
|
|
249
|
-
];
|
|
250
|
-
IoneConnectorAdapterService.ctorParameters = () => [];
|
|
251
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9uZS1jb25uZWN0b3ItYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2UvaW9uZS1jb25uZWN0b3ItYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDN0QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzlELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUMxRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSXpDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBRXhGLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUVqRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDakYsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFFbkgsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFDckYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzdFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQzFHLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxvREFBb0QsQ0FBQzs7QUFPakYsTUFBTSxPQUFPLDJCQUEyQjtJQVF0QztRQUhRLGVBQVUsR0FBMEIsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO0lBSXhFLENBQUM7SUFFWSxPQUFPLENBQUMsT0FBWTs7WUFDL0IsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFNB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MEIsQ0FBQyxDQUFDO3FCQUMzQztnQkFDSCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUFBO0lBRU0sTUFBTTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNqQyxDQUFDOzs7O1lBbE5GLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXJ0aWNsZXN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9hcnRpY2xlc1wiO1xyXG5pbXBvcnQge1NoYXJlZGFwaX0gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvc2hhcmVkYXBpXCI7XHJcbmltcG9ydCB7UHJpbnRlcn0gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcmVwb3J0L3ByaW50ZXIuYm9cIjtcclxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0FydGljbGVFeHRlbmRlZH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm9cIjtcclxuaW1wb3J0IHtEYXRhU2VydmljZVJlc3BvbnNlRGF0YX0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2RhdGEtc2VydmljZS1yZXNwb25zZS1kYXRhXCI7XHJcbmltcG9ydCB7RGF0YVNlcnZpY2VSZXNwb25zZURhdGEgYXMgRGF0YVNlcnZpY2VSZXNwb25zZX0gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvZGF0YS1zZXJ2aWNlLXJlc3BvbnNlLWRhdGFcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCIuLi9mYWN0b3J5L2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcbmltcG9ydCB7UHJpbnRTdG9ja1N0aWNrZXJzfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5pbXBvcnQge0dldFN0b2NrSGlzdG9yeVJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9nZXQtc3RvY2staGlzdG9yeS1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9ja1wiO1xyXG5pbXBvcnQge1N0b2NrSGlzdG9yeUJvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2staGlzdG9yeS5ib1wiO1xyXG5pbXBvcnQge1N0b2NrU3RpY2tlcnNQcmludExheW91dHNCb30gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcmVwb3J0L3N0b2NrLXN0aWNrZXJzLXByaW50LWxheW91dHMuYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2tNYW5hZ2VtZW50fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay1tYW5hZ2VtZW50XCI7XHJcbmltcG9ydCB7QXJ0aWNsZURldGFpbHNCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZGV0YWlscy5ib1wiO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ib1wiO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1sb2NhdGlvbi5ib1wiO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIlxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIElvbmVDb25uZWN0b3JBZGFwdGVyU2VydmljZSB7XHJcbiAgcHVibGljIG9wdGlvbnM6IGFueTtcclxuICBwdWJsaWMgY29ubmVjdG9yOiBBcnRpY2xlcztcclxuICBwdWJsaWMgc2hhcmVkQ29ubmVjdG9yOiBTaGFyZWRhcGk7XHJcblxyXG4gIHByaXZhdGUgX2JvRmFjdG9yeTogQnVzaW5lc3NPYmplY3RGYWN0b3J5ID0gbmV3IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSgpO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgY29ubmVjdChvcHRpb25zOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLm9wdGlvbnMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xyXG4gICAgICB0aGlzLmNvbm5lY3RvciA9IG5ldyBBcnRpY2xlcyhvcHRpb25zKTtcclxuICAgICAgdGhpcy5zaGFyZWRDb25uZWN0b3IgPSBuZXcgU2hhcmVkYXBpKG9wdGlvbnMpO1xyXG4gICAgICB0aGlzLm9wdGlvbnMuc2Vzc2lvbiA9IHRoaXMuY29ubmVjdG9yLnNlc3Npb24gJiYgdGhpcy5zaGFyZWRDb25uZWN0b3Iuc2Vzc2lvbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBkaXNjb25uZWN0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEFsbFByaW50ZXJzKHNob3dBbGw6IGJvb2xlYW4gPSB0cnVlKTogUHJvbWlzZTxQcmludGVyW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuc2hhcmVkQ29ubmVjdG9yLmxpc3RBbGxQcmludGVycyhzaG93QWxsKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3QpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShQcmludGVyLCByZXN1bHQucmVzdWx0T2JqZWN0KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRQcmludFN0b2NrU3RpY2tlcnMocmVxdWVzdDogUHJpbnRTdG9ja1N0aWNrZXJzKTogUHJvbWlzZTxQcmludFN0b2NrU3RpY2tlcnM+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuc2hhcmVkQ29ubmVjdG9yLmdldFByaW50U3RvY2tTdGlja2VycyhyZXF1ZXN0KS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3QpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShQcmludFN0b2NrU3RpY2tlcnMsIHJlc3VsdC5yZXN1bHRPYmplY3QpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja1N0aWNrZXJQcmludExheW91dHMoc3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvOiBTdG9ja1N0aWNrZXJzUHJpbnRMYXlvdXRzQm8pOiBQcm9taXNlPFN0b2NrU3RpY2tlcnNQcmludExheW91dHNCb1tdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNoYXJlZENvbm5lY3Rvci5nZXRTdG9ja1N0aWNrZXJQcmludExheW91dHMoc3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3QpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShzdG9ja1N0aWNrZXJzUHJpbnRMYXlvdXRzQm8sIHJlc3VsdC5yZXN1bHRPYmplY3QpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlRnVsbE9iamVjdChnb29kSWQ6IG51bWJlcik6IFByb21pc2U8QXJ0aWNsZUV4dGVuZGVkPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRBcnRpY2xlRnVsbE9iamVjdChnb29kSWQpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICAvLyBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgIC8vICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3QpIHtcclxuICAgICAgICAvLyAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShBcnRpY2xlRXh0ZW5kZWQsIHJlc3VsdC5yZXN1bHRPYmplY3QpKTtcclxuICAgICAgICAvLyAgIH1cclxuICAgICAgICAvLyB9IGVsc2Uge1xyXG4gICAgICAgIC8vICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFN0b2NrSGlzdG9yeShyZXF1ZXN0OiBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0KTogUHJvbWlzZTxTdG9ja0hpc3RvcnlCb1tdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja0hpc3RvcnkocmVxdWVzdCkudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdCAmJiByZXN1bHQucmVzdWx0T2JqZWN0Lmhhc093blByb3BlcnR5KFwic3RvY2tIaXN0b3J5XCIpKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoU3RvY2tIaXN0b3J5Qm8sIHJlc3VsdC5yZXN1bHRPYmplY3Quc3RvY2tIaXN0b3J5KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tJbmZvcm1hdGlvbihkYXRhOiBBcnRpY2xlU3RvY2spOiBQcm9taXNlPEFydGljbGVTdG9ja0JvW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFN0b2NrSW5mb3JtYXRpb24oZGF0YSkudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdHMpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShBcnRpY2xlU3RvY2tCbywgcmVzdWx0LnJlc3VsdE9iamVjdHMpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKTogUHJvbWlzZTxTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0cykge1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMsIHJlc3VsdC5yZXN1bHRPYmplY3RzKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTm86IG51bWJlcik6IFByb21pc2U8U3RvY2tMb2NhdGlvbltdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTm8pLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3RzKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoU3RvY2tMb2NhdGlvbiwgcmVzdWx0LnJlc3VsdE9iamVjdHMpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEFydGljbGVEZXRhaWxzKGRhdGE6IEFydGljbGVTdG9ja01hbmFnZW1lbnQpOiBQcm9taXNlPEFydGljbGVEZXRhaWxzQm9bXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0QXJ0aWNsZURldGFpbHMoZGF0YSkudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdHMpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShBcnRpY2xlRGV0YWlsc0JvLCByZXN1bHQucmVzdWx0T2JqZWN0cykpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgdXBkYXRlQXJ0aWNsZURldGFpbHMoZGF0YTogQXJ0aWNsZURldGFpbHNCbyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IudXBkYXRlQXJ0aWNsZURldGFpbHMoZGF0YSkudGhlbihhc3luYyAocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmNvbW1pdCgpO1xyXG4gICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBwdWJsaWMgYXN5bmMgbG9ja0FydGljbGVEZXRhaWxzKGRhdGE6IEFydGljbGVTdG9ja01hbmFnZW1lbnQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmxvY2tBcnRpY2xlRGV0YWlscyhkYXRhKS50aGVuKGFzeW5jIChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGF3YWl0IHRoaXMuY29tbWl0KCk7XHJcbiAgICAgICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFN0b2NrU3RhdHVzKCk6IFByb21pc2U8U3RvY2tTdGF0dXNbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0U3RvY2tTdGF0ZSgpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3RzKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoU3RvY2tTdGF0dXMsIHJlc3VsdC5yZXN1bHRPYmplY3RzKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja1N0aWNrZXJUZW1wbGF0ZXMoZGF0YTogU3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvKTogUHJvbWlzZTxTdG9ja1N0aWNrZXJzUHJpbnRMYXlvdXRzQm9bXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5zaGFyZWRDb25uZWN0b3IuZ2V0U3RvY2tTdGlja2VyUHJpbnRMYXlvdXRzKGRhdGEpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdCkge1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KFN0b2NrU3RpY2tlcnNQcmludExheW91dHNCbywgcmVzdWx0LnJlc3VsdE9iamVjdCkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29tbWl0KCk6IFByb21pc2U8RGF0YVNlcnZpY2VSZXNwb25zZURhdGE+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5jb21taXQoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
package/favicon.ico
DELETED
|
Binary file
|
package/index.html
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head>
|
|
2
|
-
<meta charset="utf-8">
|
|
3
|
-
<title>Sharedcomponents</title>
|
|
4
|
-
<base href="/">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
|
-
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
|
7
|
-
<style>@charset "UTF-8";@import url(https://fonts.googleapis.com/css?family=Roboto:400,500);@import url(https://fonts.googleapis.com/css2?family=Public+Sans&display=swap);body,html{margin:0;overflow:hidden}body,html{width:100%;height:100%}</style><link rel="stylesheet" href="styles.b3b98643e0f0f94bdd12.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles.b3b98643e0f0f94bdd12.css"></noscript></head>
|
|
8
|
-
<body>
|
|
9
|
-
<app-root></app-root>
|
|
10
|
-
<script src="runtime.f2046bab7c02026dc21f.js" defer></script><script src="polyfills.4a44032b137d291298c3.js" defer></script><script src="main.5240c1941fea0abc7a9c.js" defer></script>
|
|
11
|
-
|
|
12
|
-
</body></html>
|