@infrab4a/connect-angular 0.12.6 → 0.13.0-beta.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/bundles/infrab4a-connect-angular.umd.js +256 -276
- package/bundles/infrab4a-connect-angular.umd.js.map +1 -1
- package/esm2015/lib/angular-connect.module.js +22 -6
- package/esm2015/lib/angular-firebase-auth.module.js +19 -33
- package/esm2015/lib/angular-firestore.module.js +138 -138
- package/esm2015/lib/factories/firebase-app.factory.js +18 -0
- package/esm2015/lib/factories/firebase-firestore.factory.js +3 -0
- package/esm2015/lib/providers/firebase-app.provider.js +12 -0
- package/esm2015/lib/providers/firebase-firestore.provider.js +8 -0
- package/esm2015/lib/providers/index.js +3 -0
- package/esm2015/lib/services/auth.service.js +16 -13
- package/esm2015/lib/services/cart.service.js +2 -6
- package/esm2015/lib/services/checkout-subscription.service.js +6 -37
- package/esm2015/lib/services/checkout.service.js +3 -3
- package/esm2015/lib/services/coupon.service.js +10 -29
- package/esm2015/lib/services/errors/index.js +1 -2
- package/esm2015/lib/services/order.service.js +11 -13
- package/fesm2015/infrab4a-connect-angular.js +244 -261
- package/fesm2015/infrab4a-connect-angular.js.map +1 -1
- package/lib/angular-connect.module.d.ts +4 -5
- package/lib/angular-firebase-auth.module.d.ts +3 -4
- package/lib/angular-firestore.module.d.ts +3 -4
- package/lib/factories/firebase-app.factory.d.ts +4 -0
- package/lib/factories/firebase-firestore.factory.d.ts +2 -0
- package/lib/providers/firebase-app.provider.d.ts +17 -0
- package/lib/providers/firebase-firestore.provider.d.ts +7 -0
- package/lib/providers/index.d.ts +2 -0
- package/lib/services/auth.service.d.ts +5 -3
- package/lib/services/checkout-subscription.service.d.ts +2 -7
- package/lib/services/coupon.service.d.ts +2 -3
- package/lib/services/errors/index.d.ts +0 -1
- package/lib/services/order.service.d.ts +3 -3
- package/package.json +3 -4
- package/esm2015/lib/services/errors/group-invalid-coupon.error.js +0 -7
- package/lib/services/errors/group-invalid-coupon.error.d.ts +0 -5
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
|
-
import { AngularFireModule, FIREBASE_APP_NAME, FIREBASE_OPTIONS, } from '@angular/fire';
|
|
3
|
-
import { AngularFirestore } from '@angular/fire/firestore';
|
|
4
2
|
import { Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, UserAddressFirestoreRepository, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, ProductVariantFirestoreRepository, UserPaymentMethodFirestoreRepository, } from '@infrab4a/connect';
|
|
3
|
+
import { FIREBASE_APP_NAME, FIREBASE_OPTIONS, FirebaseAppProvider } from './providers';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
export class AngularFirestoreModule {
|
|
7
6
|
static initializeApp(options, nameOrConfig) {
|
|
@@ -15,323 +14,324 @@ export class AngularFirestoreModule {
|
|
|
15
14
|
}
|
|
16
15
|
}
|
|
17
16
|
AngularFirestoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
18
|
-
AngularFirestoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule
|
|
17
|
+
AngularFirestoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule });
|
|
19
18
|
AngularFirestoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, providers: [
|
|
19
|
+
FirebaseAppProvider,
|
|
20
20
|
{
|
|
21
21
|
provide: 'BeautyProfileRepository',
|
|
22
|
-
useFactory: (
|
|
23
|
-
return new UserBeautyProfileFirestoreRepository(
|
|
22
|
+
useFactory: (app, userRepository) => {
|
|
23
|
+
return new UserBeautyProfileFirestoreRepository(app.firestore(), userRepository);
|
|
24
24
|
},
|
|
25
|
-
deps: [
|
|
25
|
+
deps: [FirebaseAppProvider, 'UserRepository'],
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
28
|
provide: 'Buy2WinRepository',
|
|
29
|
-
useFactory: (
|
|
30
|
-
return new Buy2WinFirestoreRepository(
|
|
29
|
+
useFactory: (app) => {
|
|
30
|
+
return new Buy2WinFirestoreRepository(app.firestore());
|
|
31
31
|
},
|
|
32
|
-
deps: [
|
|
32
|
+
deps: [FirebaseAppProvider],
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
provide: 'CategoryRepository',
|
|
36
|
-
useFactory: (
|
|
37
|
-
return new CategoryFirestoreRepository(
|
|
36
|
+
useFactory: (app) => {
|
|
37
|
+
return new CategoryFirestoreRepository(app.firestore());
|
|
38
38
|
},
|
|
39
|
-
deps: [
|
|
39
|
+
deps: [FirebaseAppProvider],
|
|
40
40
|
},
|
|
41
41
|
{
|
|
42
42
|
provide: 'CheckoutRepository',
|
|
43
|
-
useFactory: (
|
|
44
|
-
return new CheckoutFirestoreRepository(
|
|
43
|
+
useFactory: (app) => {
|
|
44
|
+
return new CheckoutFirestoreRepository(app.firestore());
|
|
45
45
|
},
|
|
46
|
-
deps: [
|
|
46
|
+
deps: [FirebaseAppProvider],
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
49
|
provide: 'CheckoutSubscriptionRepository',
|
|
50
|
-
useFactory: (
|
|
51
|
-
return new CheckoutSubscriptionFirestoreRepository(
|
|
50
|
+
useFactory: (app) => {
|
|
51
|
+
return new CheckoutSubscriptionFirestoreRepository(app.firestore());
|
|
52
52
|
},
|
|
53
|
-
deps: [
|
|
53
|
+
deps: [FirebaseAppProvider],
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
provide: 'CouponRepository',
|
|
57
|
-
useFactory: (
|
|
58
|
-
return new CouponFirestoreRepository(
|
|
57
|
+
useFactory: (app) => {
|
|
58
|
+
return new CouponFirestoreRepository(app.firestore());
|
|
59
59
|
},
|
|
60
|
-
deps: [
|
|
60
|
+
deps: [FirebaseAppProvider],
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
provide: 'EditionRepository',
|
|
64
|
-
useFactory: (
|
|
65
|
-
return new SubscriptionEditionFirestoreRepository(
|
|
64
|
+
useFactory: (app, subscriptionRepository) => {
|
|
65
|
+
return new SubscriptionEditionFirestoreRepository(app.firestore(), subscriptionRepository);
|
|
66
66
|
},
|
|
67
|
-
deps: [
|
|
67
|
+
deps: [FirebaseAppProvider, 'SubscriptionRepository'],
|
|
68
68
|
},
|
|
69
69
|
{
|
|
70
70
|
provide: 'HomeRepository',
|
|
71
|
-
useFactory: (
|
|
72
|
-
return new HomeFirestoreRepository(
|
|
71
|
+
useFactory: (app) => {
|
|
72
|
+
return new HomeFirestoreRepository(app.firestore());
|
|
73
73
|
},
|
|
74
|
-
deps: [
|
|
74
|
+
deps: [FirebaseAppProvider],
|
|
75
75
|
},
|
|
76
76
|
{
|
|
77
77
|
provide: 'LeadRepository',
|
|
78
|
-
useFactory: (
|
|
79
|
-
return new LeadFirestoreRepository(
|
|
78
|
+
useFactory: (app) => {
|
|
79
|
+
return new LeadFirestoreRepository(app.firestore());
|
|
80
80
|
},
|
|
81
|
-
deps: [
|
|
81
|
+
deps: [FirebaseAppProvider],
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
84
|
provide: 'LegacyOrderRepository',
|
|
85
|
-
useFactory: (
|
|
86
|
-
return new LegacyOrderFirestoreRepository(
|
|
85
|
+
useFactory: (app) => {
|
|
86
|
+
return new LegacyOrderFirestoreRepository(app.firestore());
|
|
87
87
|
},
|
|
88
|
-
deps: [
|
|
88
|
+
deps: [FirebaseAppProvider],
|
|
89
89
|
},
|
|
90
90
|
{
|
|
91
91
|
provide: 'ShopMenuRepository',
|
|
92
|
-
useFactory: (
|
|
93
|
-
return new ShopMenuFirestoreRepository(
|
|
92
|
+
useFactory: (app) => {
|
|
93
|
+
return new ShopMenuFirestoreRepository(app.firestore());
|
|
94
94
|
},
|
|
95
|
-
deps: [
|
|
95
|
+
deps: [FirebaseAppProvider],
|
|
96
96
|
},
|
|
97
97
|
{
|
|
98
98
|
provide: 'OrderRepository',
|
|
99
|
-
useFactory: (
|
|
100
|
-
return new OrderFirestoreRepository(
|
|
99
|
+
useFactory: (app) => {
|
|
100
|
+
return new OrderFirestoreRepository(app.firestore());
|
|
101
101
|
},
|
|
102
|
-
deps: [
|
|
102
|
+
deps: [FirebaseAppProvider],
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
105
|
provide: 'PaymentRepository',
|
|
106
|
-
useFactory: (
|
|
107
|
-
return new PaymentFirestoreRepository(
|
|
106
|
+
useFactory: (app) => {
|
|
107
|
+
return new PaymentFirestoreRepository(app.firestore());
|
|
108
108
|
},
|
|
109
|
-
deps: [
|
|
109
|
+
deps: [FirebaseAppProvider],
|
|
110
110
|
},
|
|
111
111
|
{
|
|
112
112
|
provide: 'ProductRepository',
|
|
113
|
-
useFactory: (
|
|
114
|
-
return new ProductFirestoreRepository(
|
|
113
|
+
useFactory: (app) => {
|
|
114
|
+
return new ProductFirestoreRepository(app.firestore());
|
|
115
115
|
},
|
|
116
|
-
deps: [
|
|
116
|
+
deps: [FirebaseAppProvider],
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
provide: 'SubscriptionPaymentRepository',
|
|
120
|
-
useFactory: (
|
|
121
|
-
return new SubscriptionPaymentFirestoreRepository(
|
|
120
|
+
useFactory: (app, subscriptionRepository) => {
|
|
121
|
+
return new SubscriptionPaymentFirestoreRepository(app.firestore(), subscriptionRepository);
|
|
122
122
|
},
|
|
123
|
-
deps: [
|
|
123
|
+
deps: [FirebaseAppProvider, 'SubscriptionRepository'],
|
|
124
124
|
},
|
|
125
125
|
{
|
|
126
126
|
provide: 'SubscriptionPlanRepository',
|
|
127
|
-
useFactory: (
|
|
128
|
-
return new SubscriptionPlanFirestoreRepository(
|
|
127
|
+
useFactory: (app) => {
|
|
128
|
+
return new SubscriptionPlanFirestoreRepository(app.firestore());
|
|
129
129
|
},
|
|
130
|
-
deps: [
|
|
130
|
+
deps: [FirebaseAppProvider],
|
|
131
131
|
},
|
|
132
132
|
{
|
|
133
133
|
provide: 'SubscriptionProductRepository',
|
|
134
|
-
useFactory: (
|
|
135
|
-
return new SubscriptionProductFirestoreRepository(
|
|
134
|
+
useFactory: (app) => {
|
|
135
|
+
return new SubscriptionProductFirestoreRepository(app.firestore());
|
|
136
136
|
},
|
|
137
|
-
deps: [
|
|
137
|
+
deps: [FirebaseAppProvider],
|
|
138
138
|
},
|
|
139
139
|
{
|
|
140
140
|
provide: 'SubscriptionRepository',
|
|
141
|
-
useFactory: (
|
|
142
|
-
return new SubscriptionFirestoreRepository(
|
|
141
|
+
useFactory: (app) => {
|
|
142
|
+
return new SubscriptionFirestoreRepository(app.firestore());
|
|
143
143
|
},
|
|
144
|
-
deps: [
|
|
144
|
+
deps: [FirebaseAppProvider],
|
|
145
145
|
},
|
|
146
146
|
{
|
|
147
147
|
provide: 'UserRepository',
|
|
148
|
-
useFactory: (
|
|
149
|
-
return new UserFirestoreRepository(
|
|
148
|
+
useFactory: (app) => {
|
|
149
|
+
return new UserFirestoreRepository(app.firestore());
|
|
150
150
|
},
|
|
151
|
-
deps: [
|
|
151
|
+
deps: [FirebaseAppProvider],
|
|
152
152
|
},
|
|
153
153
|
{
|
|
154
154
|
provide: 'UserAddressRepository',
|
|
155
|
-
useFactory: (
|
|
156
|
-
return new UserAddressFirestoreRepository(
|
|
155
|
+
useFactory: (app, userRepository) => {
|
|
156
|
+
return new UserAddressFirestoreRepository(app.firestore(), userRepository);
|
|
157
157
|
},
|
|
158
|
-
deps: [
|
|
158
|
+
deps: [FirebaseAppProvider, 'UserRepository'],
|
|
159
159
|
},
|
|
160
160
|
{
|
|
161
161
|
provide: 'UserPaymentMethodRepository',
|
|
162
|
-
useFactory: (
|
|
163
|
-
return new UserPaymentMethodFirestoreRepository(
|
|
162
|
+
useFactory: (app, userRepository) => {
|
|
163
|
+
return new UserPaymentMethodFirestoreRepository(app.firestore(), userRepository);
|
|
164
164
|
},
|
|
165
|
-
deps: [
|
|
165
|
+
deps: [FirebaseAppProvider, 'UserRepository'],
|
|
166
166
|
},
|
|
167
167
|
{
|
|
168
168
|
provide: 'VariantRepository',
|
|
169
|
-
useFactory: (
|
|
170
|
-
return new ProductVariantFirestoreRepository(
|
|
169
|
+
useFactory: (app, productRepository) => {
|
|
170
|
+
return new ProductVariantFirestoreRepository(app.firestore(), productRepository);
|
|
171
171
|
},
|
|
172
|
-
deps: [
|
|
172
|
+
deps: [FirebaseAppProvider, 'ProductRepository'],
|
|
173
173
|
},
|
|
174
|
-
]
|
|
174
|
+
] });
|
|
175
175
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, decorators: [{
|
|
176
176
|
type: NgModule,
|
|
177
177
|
args: [{
|
|
178
|
-
imports: [AngularFireModule],
|
|
179
178
|
providers: [
|
|
179
|
+
FirebaseAppProvider,
|
|
180
180
|
{
|
|
181
181
|
provide: 'BeautyProfileRepository',
|
|
182
|
-
useFactory: (
|
|
183
|
-
return new UserBeautyProfileFirestoreRepository(
|
|
182
|
+
useFactory: (app, userRepository) => {
|
|
183
|
+
return new UserBeautyProfileFirestoreRepository(app.firestore(), userRepository);
|
|
184
184
|
},
|
|
185
|
-
deps: [
|
|
185
|
+
deps: [FirebaseAppProvider, 'UserRepository'],
|
|
186
186
|
},
|
|
187
187
|
{
|
|
188
188
|
provide: 'Buy2WinRepository',
|
|
189
|
-
useFactory: (
|
|
190
|
-
return new Buy2WinFirestoreRepository(
|
|
189
|
+
useFactory: (app) => {
|
|
190
|
+
return new Buy2WinFirestoreRepository(app.firestore());
|
|
191
191
|
},
|
|
192
|
-
deps: [
|
|
192
|
+
deps: [FirebaseAppProvider],
|
|
193
193
|
},
|
|
194
194
|
{
|
|
195
195
|
provide: 'CategoryRepository',
|
|
196
|
-
useFactory: (
|
|
197
|
-
return new CategoryFirestoreRepository(
|
|
196
|
+
useFactory: (app) => {
|
|
197
|
+
return new CategoryFirestoreRepository(app.firestore());
|
|
198
198
|
},
|
|
199
|
-
deps: [
|
|
199
|
+
deps: [FirebaseAppProvider],
|
|
200
200
|
},
|
|
201
201
|
{
|
|
202
202
|
provide: 'CheckoutRepository',
|
|
203
|
-
useFactory: (
|
|
204
|
-
return new CheckoutFirestoreRepository(
|
|
203
|
+
useFactory: (app) => {
|
|
204
|
+
return new CheckoutFirestoreRepository(app.firestore());
|
|
205
205
|
},
|
|
206
|
-
deps: [
|
|
206
|
+
deps: [FirebaseAppProvider],
|
|
207
207
|
},
|
|
208
208
|
{
|
|
209
209
|
provide: 'CheckoutSubscriptionRepository',
|
|
210
|
-
useFactory: (
|
|
211
|
-
return new CheckoutSubscriptionFirestoreRepository(
|
|
210
|
+
useFactory: (app) => {
|
|
211
|
+
return new CheckoutSubscriptionFirestoreRepository(app.firestore());
|
|
212
212
|
},
|
|
213
|
-
deps: [
|
|
213
|
+
deps: [FirebaseAppProvider],
|
|
214
214
|
},
|
|
215
215
|
{
|
|
216
216
|
provide: 'CouponRepository',
|
|
217
|
-
useFactory: (
|
|
218
|
-
return new CouponFirestoreRepository(
|
|
217
|
+
useFactory: (app) => {
|
|
218
|
+
return new CouponFirestoreRepository(app.firestore());
|
|
219
219
|
},
|
|
220
|
-
deps: [
|
|
220
|
+
deps: [FirebaseAppProvider],
|
|
221
221
|
},
|
|
222
222
|
{
|
|
223
223
|
provide: 'EditionRepository',
|
|
224
|
-
useFactory: (
|
|
225
|
-
return new SubscriptionEditionFirestoreRepository(
|
|
224
|
+
useFactory: (app, subscriptionRepository) => {
|
|
225
|
+
return new SubscriptionEditionFirestoreRepository(app.firestore(), subscriptionRepository);
|
|
226
226
|
},
|
|
227
|
-
deps: [
|
|
227
|
+
deps: [FirebaseAppProvider, 'SubscriptionRepository'],
|
|
228
228
|
},
|
|
229
229
|
{
|
|
230
230
|
provide: 'HomeRepository',
|
|
231
|
-
useFactory: (
|
|
232
|
-
return new HomeFirestoreRepository(
|
|
231
|
+
useFactory: (app) => {
|
|
232
|
+
return new HomeFirestoreRepository(app.firestore());
|
|
233
233
|
},
|
|
234
|
-
deps: [
|
|
234
|
+
deps: [FirebaseAppProvider],
|
|
235
235
|
},
|
|
236
236
|
{
|
|
237
237
|
provide: 'LeadRepository',
|
|
238
|
-
useFactory: (
|
|
239
|
-
return new LeadFirestoreRepository(
|
|
238
|
+
useFactory: (app) => {
|
|
239
|
+
return new LeadFirestoreRepository(app.firestore());
|
|
240
240
|
},
|
|
241
|
-
deps: [
|
|
241
|
+
deps: [FirebaseAppProvider],
|
|
242
242
|
},
|
|
243
243
|
{
|
|
244
244
|
provide: 'LegacyOrderRepository',
|
|
245
|
-
useFactory: (
|
|
246
|
-
return new LegacyOrderFirestoreRepository(
|
|
245
|
+
useFactory: (app) => {
|
|
246
|
+
return new LegacyOrderFirestoreRepository(app.firestore());
|
|
247
247
|
},
|
|
248
|
-
deps: [
|
|
248
|
+
deps: [FirebaseAppProvider],
|
|
249
249
|
},
|
|
250
250
|
{
|
|
251
251
|
provide: 'ShopMenuRepository',
|
|
252
|
-
useFactory: (
|
|
253
|
-
return new ShopMenuFirestoreRepository(
|
|
252
|
+
useFactory: (app) => {
|
|
253
|
+
return new ShopMenuFirestoreRepository(app.firestore());
|
|
254
254
|
},
|
|
255
|
-
deps: [
|
|
255
|
+
deps: [FirebaseAppProvider],
|
|
256
256
|
},
|
|
257
257
|
{
|
|
258
258
|
provide: 'OrderRepository',
|
|
259
|
-
useFactory: (
|
|
260
|
-
return new OrderFirestoreRepository(
|
|
259
|
+
useFactory: (app) => {
|
|
260
|
+
return new OrderFirestoreRepository(app.firestore());
|
|
261
261
|
},
|
|
262
|
-
deps: [
|
|
262
|
+
deps: [FirebaseAppProvider],
|
|
263
263
|
},
|
|
264
264
|
{
|
|
265
265
|
provide: 'PaymentRepository',
|
|
266
|
-
useFactory: (
|
|
267
|
-
return new PaymentFirestoreRepository(
|
|
266
|
+
useFactory: (app) => {
|
|
267
|
+
return new PaymentFirestoreRepository(app.firestore());
|
|
268
268
|
},
|
|
269
|
-
deps: [
|
|
269
|
+
deps: [FirebaseAppProvider],
|
|
270
270
|
},
|
|
271
271
|
{
|
|
272
272
|
provide: 'ProductRepository',
|
|
273
|
-
useFactory: (
|
|
274
|
-
return new ProductFirestoreRepository(
|
|
273
|
+
useFactory: (app) => {
|
|
274
|
+
return new ProductFirestoreRepository(app.firestore());
|
|
275
275
|
},
|
|
276
|
-
deps: [
|
|
276
|
+
deps: [FirebaseAppProvider],
|
|
277
277
|
},
|
|
278
278
|
{
|
|
279
279
|
provide: 'SubscriptionPaymentRepository',
|
|
280
|
-
useFactory: (
|
|
281
|
-
return new SubscriptionPaymentFirestoreRepository(
|
|
280
|
+
useFactory: (app, subscriptionRepository) => {
|
|
281
|
+
return new SubscriptionPaymentFirestoreRepository(app.firestore(), subscriptionRepository);
|
|
282
282
|
},
|
|
283
|
-
deps: [
|
|
283
|
+
deps: [FirebaseAppProvider, 'SubscriptionRepository'],
|
|
284
284
|
},
|
|
285
285
|
{
|
|
286
286
|
provide: 'SubscriptionPlanRepository',
|
|
287
|
-
useFactory: (
|
|
288
|
-
return new SubscriptionPlanFirestoreRepository(
|
|
287
|
+
useFactory: (app) => {
|
|
288
|
+
return new SubscriptionPlanFirestoreRepository(app.firestore());
|
|
289
289
|
},
|
|
290
|
-
deps: [
|
|
290
|
+
deps: [FirebaseAppProvider],
|
|
291
291
|
},
|
|
292
292
|
{
|
|
293
293
|
provide: 'SubscriptionProductRepository',
|
|
294
|
-
useFactory: (
|
|
295
|
-
return new SubscriptionProductFirestoreRepository(
|
|
294
|
+
useFactory: (app) => {
|
|
295
|
+
return new SubscriptionProductFirestoreRepository(app.firestore());
|
|
296
296
|
},
|
|
297
|
-
deps: [
|
|
297
|
+
deps: [FirebaseAppProvider],
|
|
298
298
|
},
|
|
299
299
|
{
|
|
300
300
|
provide: 'SubscriptionRepository',
|
|
301
|
-
useFactory: (
|
|
302
|
-
return new SubscriptionFirestoreRepository(
|
|
301
|
+
useFactory: (app) => {
|
|
302
|
+
return new SubscriptionFirestoreRepository(app.firestore());
|
|
303
303
|
},
|
|
304
|
-
deps: [
|
|
304
|
+
deps: [FirebaseAppProvider],
|
|
305
305
|
},
|
|
306
306
|
{
|
|
307
307
|
provide: 'UserRepository',
|
|
308
|
-
useFactory: (
|
|
309
|
-
return new UserFirestoreRepository(
|
|
308
|
+
useFactory: (app) => {
|
|
309
|
+
return new UserFirestoreRepository(app.firestore());
|
|
310
310
|
},
|
|
311
|
-
deps: [
|
|
311
|
+
deps: [FirebaseAppProvider],
|
|
312
312
|
},
|
|
313
313
|
{
|
|
314
314
|
provide: 'UserAddressRepository',
|
|
315
|
-
useFactory: (
|
|
316
|
-
return new UserAddressFirestoreRepository(
|
|
315
|
+
useFactory: (app, userRepository) => {
|
|
316
|
+
return new UserAddressFirestoreRepository(app.firestore(), userRepository);
|
|
317
317
|
},
|
|
318
|
-
deps: [
|
|
318
|
+
deps: [FirebaseAppProvider, 'UserRepository'],
|
|
319
319
|
},
|
|
320
320
|
{
|
|
321
321
|
provide: 'UserPaymentMethodRepository',
|
|
322
|
-
useFactory: (
|
|
323
|
-
return new UserPaymentMethodFirestoreRepository(
|
|
322
|
+
useFactory: (app, userRepository) => {
|
|
323
|
+
return new UserPaymentMethodFirestoreRepository(app.firestore(), userRepository);
|
|
324
324
|
},
|
|
325
|
-
deps: [
|
|
325
|
+
deps: [FirebaseAppProvider, 'UserRepository'],
|
|
326
326
|
},
|
|
327
327
|
{
|
|
328
328
|
provide: 'VariantRepository',
|
|
329
|
-
useFactory: (
|
|
330
|
-
return new ProductVariantFirestoreRepository(
|
|
329
|
+
useFactory: (app, productRepository) => {
|
|
330
|
+
return new ProductVariantFirestoreRepository(app.firestore(), productRepository);
|
|
331
331
|
},
|
|
332
|
-
deps: [
|
|
332
|
+
deps: [FirebaseAppProvider, 'ProductRepository'],
|
|
333
333
|
},
|
|
334
334
|
],
|
|
335
335
|
}]
|
|
336
336
|
}] });
|
|
337
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1maXJlc3RvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9saWIvYW5ndWxhci1maXJlc3RvcmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzdELE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGdCQUFnQixHQUdqQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUMxRCxPQUFPLEVBRUwsMEJBQTBCLEVBRzFCLDJCQUEyQixFQUUzQiwyQkFBMkIsRUFDM0IsdUNBQXVDLEVBR3ZDLHlCQUF5QixFQUV6Qix1QkFBdUIsRUFHdkIsdUJBQXVCLEVBRXZCLDhCQUE4QixFQUM5QiwyQkFBMkIsRUFHM0Isd0JBQXdCLEVBRXhCLDBCQUEwQixFQUUxQiwwQkFBMEIsRUFDMUIsc0NBQXNDLEVBQ3RDLCtCQUErQixFQUMvQixzQ0FBc0MsRUFFdEMsbUNBQW1DLEVBRW5DLHNDQUFzQyxFQUl0Qyw4QkFBOEIsRUFDOUIsb0NBQW9DLEVBQ3BDLHVCQUF1QixFQUd2QixpQ0FBaUMsRUFFakMsb0NBQW9DLEdBQ3JDLE1BQU0sbUJBQW1CLENBQUE7O0FBMEsxQixNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLE1BQU0sQ0FBQyxhQUFhLENBQ2xCLE9BQXdCLEVBQ3hCLFlBQXlDO1FBRXpDLE9BQU87WUFDTCxRQUFRLEVBQUUsc0JBQXNCO1lBQ2hDLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFO2dCQUNoRCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFO2FBQ3ZEO1NBQ0YsQ0FBQTtJQUNILENB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RSxtQkFBbUIsQ0FBQzt5QkFDOUM7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBBbmd1bGFyRmlyZU1vZHVsZSxcbiAgRklSRUJBU0VfQVBQX05BTUUsXG4gIEZJUkVCQVNFX09QVElPTlMsXG4gIEZpcmViYXNlQXBwQ29uZmlnLFxuICBGaXJlYmFzZU9wdGlvbnMsXG59IGZyb20gJ0Bhbmd1bGFyL2ZpcmUnXG5pbXBvcnQgeyBBbmd1bGFyRmlyZXN0b3JlIH0gZnJvbSAnQGFuZ3VsYXIvZmlyZS9maXJlc3RvcmUnXG5pbXBvcnQge1xuICBCZWF1dHlQcm9maWxlUmVwb3NpdG9yeSxcbiAgQnV5MldpbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIEJ1eTJXaW5SZXBvc2l0b3J5LFxuICBDYXRlZ29yeVJlcG9zaXRvcnksXG4gIENhdGVnb3J5RmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgQ2hlY2tvdXRSZXBvc2l0b3J5LFxuICBDaGVja291dEZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIENoZWNrb3V0U3Vic2NyaXB0aW9uRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgQ2hlY2tvdXRTdWJzY3JpcHRpb25SZXBvc2l0b3J5LFxuICBDb3Vwb25SZXBvc2l0b3J5LFxuICBDb3Vwb25GaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBFZGl0aW9uUmVwb3NpdG9yeSxcbiAgSG9tZUZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIEhvbWVSZXBvc2l0b3J5LFxuICBMZWFkUmVwb3NpdG9yeSxcbiAgTGVhZEZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIExlZ2FjeU9yZGVyUmVwb3NpdG9yeSxcbiAgTGVnYWN5T3JkZXJGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBTaG9wTWVudUZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFNob3BNZW51UmVwb3NpdG9yeSxcbiAgT3JkZXJSZXBvc2l0b3J5LFxuICBPcmRlckZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFBheW1lbnRSZXBvc2l0b3J5LFxuICBQYXltZW50RmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgUHJvZHVjdFJlcG9zaXRvcnksXG4gIFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBTdWJzY3JpcHRpb25FZGl0aW9uRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uUGF5bWVudEZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFN1YnNjcmlwdGlvblBheW1lbnRSZXBvc2l0b3J5LFxuICBTdWJzY3JpcHRpb25QbGFuRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uUGxhblJlcG9zaXRvcnksXG4gIFN1YnNjcmlwdGlvblByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBTdWJzY3JpcHRpb25Qcm9kdWN0UmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uUmVwb3NpdG9yeSxcbiAgVXNlckFkZHJlc3NSZXBvc2l0b3J5LFxuICBVc2VyQWRkcmVzc0ZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFVzZXJCZWF1dHlQcm9maWxlRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgVXNlckZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFVzZXJSZXBvc2l0b3J5LFxuICBWYXJpYW50UmVwb3NpdG9yeSxcbiAgUHJvZHVjdFZhcmlhbnRGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBVc2VyUGF5bWVudE1ldGhvZFJlcG9zaXRvcnksXG4gIFVzZXJQYXltZW50TWV0aG9kRmlyZXN0b3JlUmVwb3NpdG9yeSxcbn0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtBbmd1bGFyRmlyZU1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdCZWF1dHlQcm9maWxlUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlLCB1c2VyUmVwb3NpdG9yeTogVXNlckZpcmVzdG9yZVJlcG9zaXRvcnkpOiBCZWF1dHlQcm9maWxlUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgVXNlckJlYXV0eVByb2ZpbGVGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUsIHVzZXJSZXBvc2l0b3J5KVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtBbmd1bGFyRmlyZXN0b3JlLCAnVXNlclJlcG9zaXRvcnknXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdCdXkyV2luUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlKTogQnV5MldpblJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IEJ1eTJXaW5GaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmVdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0NhdGVnb3J5UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlKTogQ2F0ZWdvcnlSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBDYXRlZ29yeUZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbQW5ndWxhckZpcmVzdG9yZV0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnQ2hlY2tvdXRSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChmaXJlc3RvcmU6IEFuZ3VsYXJGaXJlc3RvcmUpOiBDaGVja291dFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IENoZWNrb3V0RmlyZXN0b3JlUmVwb3NpdG9yeShmaXJlc3RvcmUuZmlyZXN0b3JlKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtBbmd1bGFyRmlyZXN0b3JlXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdDaGVja291dFN1YnNjcmlwdGlvblJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IENoZWNrb3V0U3Vic2NyaXB0aW9uUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgQ2hlY2tvdXRTdWJzY3JpcHRpb25GaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmVdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0NvdXBvblJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IENvdXBvblJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IENvdXBvbkZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbQW5ndWxhckZpcmVzdG9yZV0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnRWRpdGlvblJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKFxuICAgICAgICBmaXJlc3RvcmU6IEFuZ3VsYXJGaXJlc3RvcmUsXG4gICAgICAgIHN1YnNjcmlwdGlvblJlcG9zaXRvcnk6IFN1YnNjcmlwdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gICAgICApOiBFZGl0aW9uUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uRWRpdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSwgc3Vic2NyaXB0aW9uUmVwb3NpdG9yeSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbQW5ndWxhckZpcmVzdG9yZSwgJ1N1YnNjcmlwdGlvblJlcG9zaXRvcnknXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdIb21lUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlKTogSG9tZVJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IEhvbWVGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmVdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0xlYWRSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChmaXJlc3RvcmU6IEFuZ3VsYXJGaXJlc3RvcmUpOiBMZWFkUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgTGVhZEZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbQW5ndWxhckZpcmVzdG9yZV0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnTGVnYWN5T3JkZXJSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChmaXJlc3RvcmU6IEFuZ3VsYXJGaXJlc3RvcmUpOiBMZWdhY3lPcmRlclJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IExlZ2FjeU9yZGVyRmlyZXN0b3JlUmVwb3NpdG9yeShmaXJlc3RvcmUuZmlyZXN0b3JlKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtBbmd1bGFyRmlyZXN0b3JlXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdTaG9wTWVudVJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IFNob3BNZW51UmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU2hvcE1lbnVGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmVdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ09yZGVyUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlKTogT3JkZXJSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBPcmRlckZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbQW5ndWxhckZpcmVzdG9yZV0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnUGF5bWVudFJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IFBheW1lbnRSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQYXltZW50RmlyZXN0b3JlUmVwb3NpdG9yeShmaXJlc3RvcmUuZmlyZXN0b3JlKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtBbmd1bGFyRmlyZXN0b3JlXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdQcm9kdWN0UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlKTogUHJvZHVjdFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmVdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1N1YnNjcmlwdGlvblBheW1lbnRSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChcbiAgICAgICAgZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlLFxuICAgICAgICBzdWJzY3JpcHRpb25SZXBvc2l0b3J5OiBTdWJzY3JpcHRpb25GaXJlc3RvcmVSZXBvc2l0b3J5LFxuICAgICAgKTogU3Vic2NyaXB0aW9uUGF5bWVudFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvblBheW1lbnRGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUsIHN1YnNjcmlwdGlvblJlcG9zaXRvcnkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmUsICdTdWJzY3JpcHRpb25SZXBvc2l0b3J5J10sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnU3Vic2NyaXB0aW9uUGxhblJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IFN1YnNjcmlwdGlvblBsYW5SZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBTdWJzY3JpcHRpb25QbGFuRmlyZXN0b3JlUmVwb3NpdG9yeShmaXJlc3RvcmUuZmlyZXN0b3JlKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtBbmd1bGFyRmlyZXN0b3JlXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdTdWJzY3JpcHRpb25Qcm9kdWN0UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoZmlyZXN0b3JlOiBBbmd1bGFyRmlyZXN0b3JlKTogU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvblByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZS5maXJlc3RvcmUpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmVdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1N1YnNjcmlwdGlvblJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IFN1YnNjcmlwdGlvblJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbQW5ndWxhckZpcmVzdG9yZV0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnVXNlclJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSk6IFVzZXJSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBVc2VyRmlyZXN0b3JlUmVwb3NpdG9yeShmaXJlc3RvcmUuZmlyZXN0b3JlKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtBbmd1bGFyRmlyZXN0b3JlXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdVc2VyQWRkcmVzc1JlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSwgdXNlclJlcG9zaXRvcnk6IFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5KTogVXNlckFkZHJlc3NSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBVc2VyQWRkcmVzc0ZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSwgdXNlclJlcG9zaXRvcnkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmUsICdVc2VyUmVwb3NpdG9yeSddLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1VzZXJQYXltZW50TWV0aG9kUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoXG4gICAgICAgIGZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSxcbiAgICAgICAgdXNlclJlcG9zaXRvcnk6IFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICAgICAgKTogVXNlclBheW1lbnRNZXRob2RSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBVc2VyUGF5bWVudE1ldGhvZEZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSwgdXNlclJlcG9zaXRvcnkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmUsICdVc2VyUmVwb3NpdG9yeSddLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1ZhcmlhbnRSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChmaXJlc3RvcmU6IEFuZ3VsYXJGaXJlc3RvcmUsIHByb2R1Y3RSZXBvc2l0b3J5OiBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeSk6IFZhcmlhbnRSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9kdWN0VmFyaWFudEZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlLmZpcmVzdG9yZSwgcHJvZHVjdFJlcG9zaXRvcnkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0FuZ3VsYXJGaXJlc3RvcmUsICdQcm9kdWN0UmVwb3NpdG9yeSddLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJGaXJlc3RvcmVNb2R1bGUge1xuICBzdGF0aWMgaW5pdGlhbGl6ZUFwcChcbiAgICBvcHRpb25zOiBGaXJlYmFzZU9wdGlvbnMsXG4gICAgbmFtZU9yQ29uZmlnPzogc3RyaW5nIHwgRmlyZWJhc2VBcHBDb25maWcsXG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QW5ndWxhckZpcmVNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFuZ3VsYXJGaXJlc3RvcmVNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBGSVJFQkFTRV9PUFRJT05TLCB1c2VWYWx1ZTogb3B0aW9ucyB9LFxuICAgICAgICB7IHByb3ZpZGU6IEZJUkVCQVNFX0FQUF9OQU1FLCB1c2VWYWx1ZTogbmFtZU9yQ29uZmlnIH0sXG4gICAgICBdLFxuICAgIH1cbiAgfVxufVxuIl19
|
|
337
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1maXJlc3RvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9saWIvYW5ndWxhci1maXJlc3RvcmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRTdELE9BQU8sRUFFTCwwQkFBMEIsRUFHMUIsMkJBQTJCLEVBRTNCLDJCQUEyQixFQUMzQix1Q0FBdUMsRUFHdkMseUJBQXlCLEVBRXpCLHVCQUF1QixFQUd2Qix1QkFBdUIsRUFFdkIsOEJBQThCLEVBQzlCLDJCQUEyQixFQUczQix3QkFBd0IsRUFFeEIsMEJBQTBCLEVBRTFCLDBCQUEwQixFQUMxQixzQ0FBc0MsRUFDdEMsK0JBQStCLEVBQy9CLHNDQUFzQyxFQUV0QyxtQ0FBbUMsRUFFbkMsc0NBQXNDLEVBSXRDLDhCQUE4QixFQUM5QixvQ0FBb0MsRUFDcEMsdUJBQXVCLEVBR3ZCLGlDQUFpQyxFQUVqQyxvQ0FBb0MsR0FDckMsTUFBTSxtQkFBbUIsQ0FBQTtBQUUxQixPQUFPLEVBQTZCLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFBOztBQWdMakgsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxNQUFNLENBQUMsYUFBYSxDQUNsQixPQUF3QixFQUN4QixZQUF5QztRQUV6QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHNCQUFzQjtZQUNoQyxTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtnQkFDaEQsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRTthQUN2RDtTQUNGLENBQUE7SUFDSCxDQUFDOztvSEFaVSxzQkFBc0I7cUhBQXRCLHNCQUFzQjtxSEFBdEIsc0JBQXNCLGFB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NkMsRUFDMUIsRUFBRTtnQ0FDckIsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFBOzRCQUNsRixDQUFDOzRCQUNELElBQUksRUFBRSxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDO3lCQUNqRDtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEZpcmViYXNlQXBwQ29uZmlnLCBGaXJlYmFzZU9wdGlvbnMgfSBmcm9tICdAZmlyZWJhc2UvYXBwLXR5cGVzJ1xuaW1wb3J0IHtcbiAgQmVhdXR5UHJvZmlsZVJlcG9zaXRvcnksXG4gIEJ1eTJXaW5GaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBCdXkyV2luUmVwb3NpdG9yeSxcbiAgQ2F0ZWdvcnlSZXBvc2l0b3J5LFxuICBDYXRlZ29yeUZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIENoZWNrb3V0UmVwb3NpdG9yeSxcbiAgQ2hlY2tvdXRGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBDaGVja291dFN1YnNjcmlwdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIENoZWNrb3V0U3Vic2NyaXB0aW9uUmVwb3NpdG9yeSxcbiAgQ291cG9uUmVwb3NpdG9yeSxcbiAgQ291cG9uRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgRWRpdGlvblJlcG9zaXRvcnksXG4gIEhvbWVGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBIb21lUmVwb3NpdG9yeSxcbiAgTGVhZFJlcG9zaXRvcnksXG4gIExlYWRGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBMZWdhY3lPcmRlclJlcG9zaXRvcnksXG4gIExlZ2FjeU9yZGVyRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgU2hvcE1lbnVGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBTaG9wTWVudVJlcG9zaXRvcnksXG4gIE9yZGVyUmVwb3NpdG9yeSxcbiAgT3JkZXJGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBQYXltZW50UmVwb3NpdG9yeSxcbiAgUGF5bWVudEZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFByb2R1Y3RSZXBvc2l0b3J5LFxuICBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uRWRpdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFN1YnNjcmlwdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFN1YnNjcmlwdGlvblBheW1lbnRGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBTdWJzY3JpcHRpb25QYXltZW50UmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uUGxhbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFN1YnNjcmlwdGlvblBsYW5SZXBvc2l0b3J5LFxuICBTdWJzY3JpcHRpb25Qcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnksXG4gIFN1YnNjcmlwdGlvblJlcG9zaXRvcnksXG4gIFVzZXJBZGRyZXNzUmVwb3NpdG9yeSxcbiAgVXNlckFkZHJlc3NGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBVc2VyQmVhdXR5UHJvZmlsZUZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICBVc2VyUmVwb3NpdG9yeSxcbiAgVmFyaWFudFJlcG9zaXRvcnksXG4gIFByb2R1Y3RWYXJpYW50RmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgVXNlclBheW1lbnRNZXRob2RSZXBvc2l0b3J5LFxuICBVc2VyUGF5bWVudE1ldGhvZEZpcmVzdG9yZVJlcG9zaXRvcnksXG59IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuXG5pbXBvcnQgeyBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwLCBGSVJFQkFTRV9BUFBfTkFNRSwgRklSRUJBU0VfT1BUSU9OUywgRmlyZWJhc2VBcHBQcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXJzJ1xuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICBGaXJlYmFzZUFwcFByb3ZpZGVyLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdCZWF1dHlQcm9maWxlUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoXG4gICAgICAgIGFwcDogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCxcbiAgICAgICAgdXNlclJlcG9zaXRvcnk6IFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICAgICAgKTogQmVhdXR5UHJvZmlsZVJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFVzZXJCZWF1dHlQcm9maWxlRmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCksIHVzZXJSZXBvc2l0b3J5KVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyLCAnVXNlclJlcG9zaXRvcnknXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdCdXkyV2luUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogQnV5MldpblJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IEJ1eTJXaW5GaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlcl0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnQ2F0ZWdvcnlSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChhcHA6IENvbm5lY3RBbmd1bGFyRmlyZWJhc2VBcHApOiBDYXRlZ29yeVJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IENhdGVnb3J5RmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0ZpcmViYXNlQXBwUHJvdmlkZXJdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0NoZWNrb3V0UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogQ2hlY2tvdXRSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBDaGVja291dEZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdDaGVja291dFN1YnNjcmlwdGlvblJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGFwcDogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCk6IENoZWNrb3V0U3Vic2NyaXB0aW9uUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgQ2hlY2tvdXRTdWJzY3JpcHRpb25GaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlcl0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnQ291cG9uUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogQ291cG9uUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgQ291cG9uRmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0ZpcmViYXNlQXBwUHJvdmlkZXJdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0VkaXRpb25SZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChcbiAgICAgICAgYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwLFxuICAgICAgICBzdWJzY3JpcHRpb25SZXBvc2l0b3J5OiBTdWJzY3JpcHRpb25GaXJlc3RvcmVSZXBvc2l0b3J5LFxuICAgICAgKTogRWRpdGlvblJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbkVkaXRpb25GaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSwgc3Vic2NyaXB0aW9uUmVwb3NpdG9yeSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlciwgJ1N1YnNjcmlwdGlvblJlcG9zaXRvcnknXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdIb21lUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogSG9tZVJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IEhvbWVGaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlcl0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnTGVhZFJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGFwcDogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCk6IExlYWRSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBMZWFkRmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0ZpcmViYXNlQXBwUHJvdmlkZXJdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0xlZ2FjeU9yZGVyUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogTGVnYWN5T3JkZXJSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBMZWdhY3lPcmRlckZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdTaG9wTWVudVJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGFwcDogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCk6IFNob3BNZW51UmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU2hvcE1lbnVGaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlcl0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnT3JkZXJSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChhcHA6IENvbm5lY3RBbmd1bGFyRmlyZWJhc2VBcHApOiBPcmRlclJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IE9yZGVyRmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0ZpcmViYXNlQXBwUHJvdmlkZXJdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1BheW1lbnRSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChhcHA6IENvbm5lY3RBbmd1bGFyRmlyZWJhc2VBcHApOiBQYXltZW50UmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUGF5bWVudEZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdQcm9kdWN0UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogUHJvZHVjdFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlcl0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnU3Vic2NyaXB0aW9uUGF5bWVudFJlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKFxuICAgICAgICBhcHA6IENvbm5lY3RBbmd1bGFyRmlyZWJhc2VBcHAsXG4gICAgICAgIHN1YnNjcmlwdGlvblJlcG9zaXRvcnk6IFN1YnNjcmlwdGlvbkZpcmVzdG9yZVJlcG9zaXRvcnksXG4gICAgICApOiBTdWJzY3JpcHRpb25QYXltZW50UmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uUGF5bWVudEZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpLCBzdWJzY3JpcHRpb25SZXBvc2l0b3J5KVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyLCAnU3Vic2NyaXB0aW9uUmVwb3NpdG9yeSddLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1N1YnNjcmlwdGlvblBsYW5SZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChhcHA6IENvbm5lY3RBbmd1bGFyRmlyZWJhc2VBcHApOiBTdWJzY3JpcHRpb25QbGFuUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uUGxhbkZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdTdWJzY3JpcHRpb25Qcm9kdWN0UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvblByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5KGFwcC5maXJlc3RvcmUoKSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlcl0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnU3Vic2NyaXB0aW9uUmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwKTogU3Vic2NyaXB0aW9uUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uRmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCkpXG4gICAgICB9LFxuICAgICAgZGVwczogW0ZpcmViYXNlQXBwUHJvdmlkZXJdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ1VzZXJSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChhcHA6IENvbm5lY3RBbmd1bGFyRmlyZWJhc2VBcHApOiBVc2VyUmVwb3NpdG9yeSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgVXNlckZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpKVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdVc2VyQWRkcmVzc1JlcG9zaXRvcnknLFxuICAgICAgdXNlRmFjdG9yeTogKGFwcDogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCwgdXNlclJlcG9zaXRvcnk6IFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5KTogVXNlckFkZHJlc3NSZXBvc2l0b3J5ID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBVc2VyQWRkcmVzc0ZpcmVzdG9yZVJlcG9zaXRvcnkoYXBwLmZpcmVzdG9yZSgpLCB1c2VyUmVwb3NpdG9yeSlcbiAgICAgIH0sXG4gICAgICBkZXBzOiBbRmlyZWJhc2VBcHBQcm92aWRlciwgJ1VzZXJSZXBvc2l0b3J5J10sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnVXNlclBheW1lbnRNZXRob2RSZXBvc2l0b3J5JyxcbiAgICAgIHVzZUZhY3Rvcnk6IChcbiAgICAgICAgYXBwOiBDb25uZWN0QW5ndWxhckZpcmViYXNlQXBwLFxuICAgICAgICB1c2VyUmVwb3NpdG9yeTogVXNlckZpcmVzdG9yZVJlcG9zaXRvcnksXG4gICAgICApOiBVc2VyUGF5bWVudE1ldGhvZFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFVzZXJQYXltZW50TWV0aG9kRmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCksIHVzZXJSZXBvc2l0b3J5KVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyLCAnVXNlclJlcG9zaXRvcnknXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6ICdWYXJpYW50UmVwb3NpdG9yeScsXG4gICAgICB1c2VGYWN0b3J5OiAoXG4gICAgICAgIGFwcDogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCxcbiAgICAgICAgcHJvZHVjdFJlcG9zaXRvcnk6IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICAgICAgKTogVmFyaWFudFJlcG9zaXRvcnkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb2R1Y3RWYXJpYW50RmlyZXN0b3JlUmVwb3NpdG9yeShhcHAuZmlyZXN0b3JlKCksIHByb2R1Y3RSZXBvc2l0b3J5KVxuICAgICAgfSxcbiAgICAgIGRlcHM6IFtGaXJlYmFzZUFwcFByb3ZpZGVyLCAnUHJvZHVjdFJlcG9zaXRvcnknXSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyRmlyZXN0b3JlTW9kdWxlIHtcbiAgc3RhdGljIGluaXRpYWxpemVBcHAoXG4gICAgb3B0aW9uczogRmlyZWJhc2VPcHRpb25zLFxuICAgIG5hbWVPckNvbmZpZz86IHN0cmluZyB8IEZpcmViYXNlQXBwQ29uZmlnLFxuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFuZ3VsYXJGaXJlc3RvcmVNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFuZ3VsYXJGaXJlc3RvcmVNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBGSVJFQkFTRV9PUFRJT05TLCB1c2VWYWx1ZTogb3B0aW9ucyB9LFxuICAgICAgICB7IHByb3ZpZGU6IEZJUkVCQVNFX0FQUF9OQU1FLCB1c2VWYWx1ZTogbmFtZU9yQ29uZmlnIH0sXG4gICAgICBdLFxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { isObject, isString } from '@infrab4a/connect';
|
|
2
|
+
import firebase from 'firebase/app';
|
|
3
|
+
export const FirebaseAppFactory = (options, zone, nameOrConfig) => {
|
|
4
|
+
const name = ((isString(nameOrConfig) && nameOrConfig) || '[DEFAULT]').toString();
|
|
5
|
+
const config = ((isObject(nameOrConfig) && nameOrConfig) || {});
|
|
6
|
+
config.name = config.name || name;
|
|
7
|
+
const existingApp = firebase.apps.filter((firebaseApp) => firebaseApp && firebaseApp.name === config.name)[0];
|
|
8
|
+
const app = existingApp || zone.runOutsideAngular(() => firebase.initializeApp(options, config));
|
|
9
|
+
try {
|
|
10
|
+
if (JSON.stringify(options) !== JSON.stringify(app.options)) {
|
|
11
|
+
console.error('error', `${app.name} Firebase App already initialized with different options : '.'
|
|
12
|
+
}`);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
catch (e) { }
|
|
16
|
+
return app;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UtYXBwLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL2xpYi9mYWN0b3JpZXMvZmlyZWJhc2UtYXBwLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN0RCxPQUFPLFFBQVEsTUFBTSxjQUFjLENBQUE7QUFFbkMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsT0FBd0IsRUFDeEIsSUFBWSxFQUNaLFlBQWdELEVBQ2hELEVBQUU7SUFDRixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLFlBQVksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ2pGLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxDQUFzQixDQUFBO0lBRXBGLE1BQU0sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUE7SUFFakMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUU3RyxNQUFNLEdBQUcsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLE1BQWEsQ0FBQyxDQUFDLENBQUE7SUFFdkcsSUFBSTtRQUNGLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMzRCxPQUFPLENBQUMsS0FBSyxDQUNYLE9BQU8sRUFDUCxHQUFHLEdBQUcsQ0FBQyxJQUFJO1VBQ1QsQ0FDSCxDQUFBO1NBQ0Y7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUU7SUFFZCxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGaXJlYmFzZUFwcENvbmZpZywgRmlyZWJhc2VPcHRpb25zIH0gZnJvbSAnQGZpcmViYXNlL2FwcC10eXBlcydcbmltcG9ydCB7IGlzT2JqZWN0LCBpc1N0cmluZyB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuaW1wb3J0IGZpcmViYXNlIGZyb20gJ2ZpcmViYXNlL2FwcCdcblxuZXhwb3J0IGNvbnN0IEZpcmViYXNlQXBwRmFjdG9yeSA9IChcbiAgb3B0aW9uczogRmlyZWJhc2VPcHRpb25zLFxuICB6b25lOiBOZ1pvbmUsXG4gIG5hbWVPckNvbmZpZz86IHN0cmluZyB8IEZpcmViYXNlQXBwQ29uZmlnIHwgbnVsbCxcbikgPT4ge1xuICBjb25zdCBuYW1lID0gKChpc1N0cmluZyhuYW1lT3JDb25maWcpICYmIG5hbWVPckNvbmZpZykgfHwgJ1tERUZBVUxUXScpLnRvU3RyaW5nKClcbiAgY29uc3QgY29uZmlnID0gKChpc09iamVjdChuYW1lT3JDb25maWcpICYmIG5hbWVPckNvbmZpZykgfHwge30pIGFzIEZpcmViYXNlQXBwQ29uZmlnXG5cbiAgY29uZmlnLm5hbWUgPSBjb25maWcubmFtZSB8fCBuYW1lXG5cbiAgY29uc3QgZXhpc3RpbmdBcHAgPSBmaXJlYmFzZS5hcHBzLmZpbHRlcigoZmlyZWJhc2VBcHApID0+IGZpcmViYXNlQXBwICYmIGZpcmViYXNlQXBwLm5hbWUgPT09IGNvbmZpZy5uYW1lKVswXVxuXG4gIGNvbnN0IGFwcCA9IGV4aXN0aW5nQXBwIHx8IHpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gZmlyZWJhc2UuaW5pdGlhbGl6ZUFwcChvcHRpb25zLCBjb25maWcgYXMgYW55KSlcblxuICB0cnkge1xuICAgIGlmIChKU09OLnN0cmluZ2lmeShvcHRpb25zKSAhPT0gSlNPTi5zdHJpbmdpZnkoYXBwLm9wdGlvbnMpKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAnZXJyb3InLFxuICAgICAgICBgJHthcHAubmFtZX0gRmlyZWJhc2UgQXBwIGFscmVhZHkgaW5pdGlhbGl6ZWQgd2l0aCBkaWZmZXJlbnQgb3B0aW9ucyA6ICcuJ1xuICAgICAgICB9YCxcbiAgICAgIClcbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHt9XG5cbiAgcmV0dXJuIGFwcFxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import firebase from 'firebase';
|
|
2
|
+
export const FirebaseFirestoreFactory = () => firebase.firestore();
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UtZmlyZXN0b3JlLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL2xpYi9mYWN0b3JpZXMvZmlyZWJhc2UtZmlyZXN0b3JlLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxRQUFRLE1BQU0sVUFBVSxDQUFBO0FBRS9CLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLEdBQTJCLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaXJlYmFzZUZpcmVzdG9yZSBhcyBGaXJlYmFzZUZpcmVzdG9yZVR5cGVzIH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcbmltcG9ydCBmaXJlYmFzZSBmcm9tICdmaXJlYmFzZSdcblxuZXhwb3J0IGNvbnN0IEZpcmViYXNlRmlyZXN0b3JlRmFjdG9yeSA9ICgpOiBGaXJlYmFzZUZpcmVzdG9yZVR5cGVzID0+IGZpcmViYXNlLmZpcmVzdG9yZSgpXG4iXX0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { InjectionToken, NgZone, Optional } from '@angular/core';
|
|
2
|
+
import { FirebaseAppFactory } from '../factories/firebase-app.factory';
|
|
3
|
+
export const FIREBASE_OPTIONS = new InjectionToken('connect-angular.app.options');
|
|
4
|
+
export const FIREBASE_APP_NAME = new InjectionToken('connect-angular.app.nameOrConfig');
|
|
5
|
+
export class ConnectAngularFirebaseApp {
|
|
6
|
+
}
|
|
7
|
+
export const FirebaseAppProvider = {
|
|
8
|
+
provide: ConnectAngularFirebaseApp,
|
|
9
|
+
useFactory: FirebaseAppFactory,
|
|
10
|
+
deps: [FIREBASE_OPTIONS, NgZone, [new Optional(), FIREBASE_APP_NAME]],
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UtYXBwLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9saWIvcHJvdmlkZXJzL2ZpcmViYXNlLWFwcC5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFFdEUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQWtCLDZCQUE2QixDQUFDLENBQUE7QUFDbEcsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQ2pELGtDQUFrQyxDQUNuQyxDQUFBO0FBRUQsTUFBTSxPQUFPLHlCQUF5QjtDQU9yQztBQUVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLE9BQU8sRUFBRSx5QkFBeUI7SUFDbEMsVUFBVSxFQUFFLGtCQUFrQjtJQUM5QixJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixDQUFDLENBQUM7Q0FDdEUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBOZ1pvbmUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEZpcmViYXNlQXBwQ29uZmlnLCBGaXJlYmFzZU9wdGlvbnMgfSBmcm9tICdAZmlyZWJhc2UvYXBwLXR5cGVzJ1xuXG5pbXBvcnQgeyBGaXJlYmFzZUFwcEZhY3RvcnkgfSBmcm9tICcuLi9mYWN0b3JpZXMvZmlyZWJhc2UtYXBwLmZhY3RvcnknXG5cbmV4cG9ydCBjb25zdCBGSVJFQkFTRV9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPEZpcmViYXNlT3B0aW9ucz4oJ2Nvbm5lY3QtYW5ndWxhci5hcHAub3B0aW9ucycpXG5leHBvcnQgY29uc3QgRklSRUJBU0VfQVBQX05BTUUgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nIHwgRmlyZWJhc2VBcHBDb25maWcgfCB1bmRlZmluZWQ+KFxuICAnY29ubmVjdC1hbmd1bGFyLmFwcC5uYW1lT3JDb25maWcnLFxuKVxuXG5leHBvcnQgY2xhc3MgQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCBpbXBsZW1lbnRzIFBhcnRpYWw8ZmlyZWJhc2UuYXBwLkFwcD4ge1xuICBuYW1lOiBzdHJpbmdcbiAgb3B0aW9uczoge31cbiAgYXV0aDogKCkgPT4gZmlyZWJhc2UuYXV0aC5BdXRoXG4gIHN0b3JhZ2U6IChzdG9yYWdlQnVja2V0Pzogc3RyaW5nKSA9PiBmaXJlYmFzZS5zdG9yYWdlLlN0b3JhZ2VcbiAgZmlyZXN0b3JlOiAoKSA9PiBmaXJlYmFzZS5maXJlc3RvcmUuRmlyZXN0b3JlXG4gIGZ1bmN0aW9uczogKHJlZ2lvbj86IHN0cmluZykgPT4gZmlyZWJhc2UuZnVuY3Rpb25zLkZ1bmN0aW9uc1xufVxuXG5leHBvcnQgY29uc3QgRmlyZWJhc2VBcHBQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogQ29ubmVjdEFuZ3VsYXJGaXJlYmFzZUFwcCxcbiAgdXNlRmFjdG9yeTogRmlyZWJhc2VBcHBGYWN0b3J5LFxuICBkZXBzOiBbRklSRUJBU0VfT1BUSU9OUywgTmdab25lLCBbbmV3IE9wdGlvbmFsKCksIEZJUkVCQVNFX0FQUF9OQU1FXV0sXG59XG4iXX0=
|