@infrab4a/connect-nestjs 1.1.0-beta.0 → 1.1.0-beta.12

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/index.cjs.js CHANGED
@@ -7,6 +7,12 @@ var connect = require('@infrab4a/connect');
7
7
  var common = require('@nestjs/common');
8
8
  var nestjsFirebase = require('nestjs-firebase');
9
9
 
10
+ const ES_CONFIG = 'ES_CONFIG';
11
+
12
+ const HASURA_OPTIONS = 'HASURA_OPTIONS';
13
+
14
+ const FIREBASE_STORAGE = 'FIREBASE_STORAGE';
15
+
10
16
  /******************************************************************************
11
17
  Copyright (c) Microsoft Corporation.
12
18
 
@@ -42,10 +48,6 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
42
48
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
43
49
  };
44
50
 
45
- const ES_CONFIG = 'ES_CONFIG';
46
-
47
- const HASURA_OPTIONS = 'HASURA_OPTIONS';
48
-
49
51
  exports.NativeElasticSearchAdapter = class NativeElasticSearchAdapter {
50
52
  constructor(config) {
51
53
  this.logger = connect.DebugHelper.from(this);
@@ -98,11 +100,11 @@ exports.NativeElasticSearchAdapter = class NativeElasticSearchAdapter {
98
100
  id: data.identifiersFields.length > 1
99
101
  ? JSON.stringify(data.identifier)
100
102
  : Object.values(data.identifier).shift().toString(),
101
- document: data,
103
+ document: data.toPlain(),
102
104
  };
103
105
  try {
104
- await this.client.index(req);
105
- logger.log({ req, res: undefined });
106
+ const res = await this.client.index(req);
107
+ logger.log({ req, res });
106
108
  }
107
109
  catch (error) {
108
110
  logger.error({ req, res: error });
@@ -282,29 +284,75 @@ class ConnectFirestoreService {
282
284
  }
283
285
  }
284
286
 
287
+ var NestElasticSeachModule_1;
288
+ exports.NestElasticSeachModule = NestElasticSeachModule_1 = class NestElasticSeachModule {
289
+ static initializeApp(options) {
290
+ return {
291
+ module: NestElasticSeachModule_1,
292
+ providers: [{ provide: ES_CONFIG, useValue: options }],
293
+ exports: [ES_CONFIG],
294
+ };
295
+ }
296
+ };
297
+ exports.NestElasticSeachModule = NestElasticSeachModule_1 = __decorate([
298
+ common.Module({
299
+ providers: [
300
+ exports.NativeElasticSearchAdapter,
301
+ {
302
+ provide: connect.ProductsIndex,
303
+ useFactory: (adapter) => new connect.ProductsIndex(adapter),
304
+ inject: [exports.NativeElasticSearchAdapter],
305
+ },
306
+ ],
307
+ exports: [connect.ProductsIndex],
308
+ })
309
+ ], exports.NestElasticSeachModule);
310
+
311
+ exports.NestStorageModule = class NestStorageModule {
312
+ };
313
+ exports.NestStorageModule = __decorate([
314
+ common.Module({
315
+ providers: [
316
+ {
317
+ provide: FIREBASE_STORAGE,
318
+ useFactory: (firebaseAdmin) => firebaseAdmin.storage,
319
+ inject: [nestjsFirebase.FirebaseConstants.FIREBASE_TOKEN],
320
+ },
321
+ ],
322
+ exports: [FIREBASE_STORAGE],
323
+ })
324
+ ], exports.NestStorageModule);
325
+
285
326
  var NestFirestoreModule_1;
286
327
  exports.NestFirestoreModule = NestFirestoreModule_1 = class NestFirestoreModule {
287
328
  static initializeApp(options) {
329
+ var _a;
288
330
  return {
289
331
  module: NestFirestoreModule_1,
290
332
  imports: [
291
333
  nestjsFirebase.FirebaseModule.forRoot({
292
- googleApplicationCredential: options.firebase.googleApplicationCredential,
334
+ googleApplicationCredential: (_a = options === null || options === void 0 ? void 0 : options.firebase) === null || _a === void 0 ? void 0 : _a.googleApplicationCredential,
293
335
  }),
336
+ exports.NestStorageModule,
294
337
  ],
295
- exports: [nestjsFirebase.FirebaseModule],
338
+ exports: [nestjsFirebase.FirebaseModule, exports.NestStorageModule],
296
339
  };
297
340
  }
298
341
  };
299
342
  exports.NestFirestoreModule = NestFirestoreModule_1 = __decorate([
300
343
  common.Module({
301
344
  providers: [
345
+ {
346
+ provide: ConnectFirestoreService,
347
+ useFactory: (firebaseAdmin) => new ConnectFirestoreService(firebaseAdmin.firestore),
348
+ inject: [nestjsFirebase.FirebaseConstants.FIREBASE_TOKEN],
349
+ },
302
350
  {
303
351
  provide: 'FirestoreOptions',
304
- useFactory: (firebaseAdmin) => ({
305
- firestore: new ConnectFirestoreService(firebaseAdmin.firestore),
352
+ useFactory: (connectFirestoreService) => ({
353
+ firestore: connectFirestoreService,
306
354
  }),
307
- inject: [nestjsFirebase.FirebaseConstants.FIREBASE_TOKEN],
355
+ inject: [ConnectFirestoreService],
308
356
  },
309
357
  {
310
358
  provide: 'BeautyProfileRepository',
@@ -524,6 +572,7 @@ exports.NestFirestoreModule = NestFirestoreModule_1 = __decorate([
524
572
  'SubscriptionMaterializationRepository',
525
573
  'SubscriptionSummaryRepository',
526
574
  connect.ProductVariantFirestoreRepository,
575
+ ConnectFirestoreService,
527
576
  ],
528
577
  })
529
578
  ], exports.NestFirestoreModule);
@@ -534,11 +583,11 @@ exports.NestHasuraGraphQLModule = NestHasuraGraphQLModule_1 = class NestHasuraGr
534
583
  return {
535
584
  module: NestHasuraGraphQLModule_1,
536
585
  providers: [{ provide: HASURA_OPTIONS, useValue: options }],
586
+ exports: [HASURA_OPTIONS],
537
587
  };
538
588
  }
539
589
  };
540
590
  exports.NestHasuraGraphQLModule = NestHasuraGraphQLModule_1 = __decorate([
541
- common.Global(),
542
591
  common.Module({
543
592
  providers: [
544
593
  {
@@ -676,12 +725,14 @@ exports.NestConnectModule = NestConnectModule_1 = class NestConnectModule {
676
725
  return {
677
726
  module: NestConnectModule_1,
678
727
  imports: [
679
- ...(options.firebase ? [exports.NestFirestoreModule] : []),
728
+ ...(options.firebase ? [exports.NestFirestoreModule.initializeApp({ firebase: options.firebase })] : []),
680
729
  ...(connect.isNil(options === null || options === void 0 ? void 0 : options.hasura) ? [] : [exports.NestHasuraGraphQLModule.initializeApp(options.hasura)]),
730
+ ...(connect.isNil(options === null || options === void 0 ? void 0 : options.elasticSearch) ? [] : [exports.NestElasticSeachModule.initializeApp(options.elasticSearch)]),
681
731
  ],
682
732
  exports: [
683
733
  ...(options.firebase ? [exports.NestFirestoreModule] : []),
684
734
  ...(connect.isNil(options === null || options === void 0 ? void 0 : options.hasura) ? [] : [exports.NestHasuraGraphQLModule]),
735
+ ...(connect.isNil(options === null || options === void 0 ? void 0 : options.elasticSearch) ? [] : [exports.NestElasticSeachModule]),
685
736
  ],
686
737
  };
687
738
  }
@@ -693,3 +744,6 @@ exports.NestConnectModule = NestConnectModule_1 = __decorate([
693
744
  exports.ConnectCollectionService = ConnectCollectionService;
694
745
  exports.ConnectDocumentService = ConnectDocumentService;
695
746
  exports.ConnectFirestoreService = ConnectFirestoreService;
747
+ exports.ES_CONFIG = ES_CONFIG;
748
+ exports.FIREBASE_STORAGE = FIREBASE_STORAGE;
749
+ exports.HASURA_OPTIONS = HASURA_OPTIONS;
package/index.esm.js CHANGED
@@ -1,8 +1,14 @@
1
1
  import { Client } from '@elastic/elasticsearch';
2
- import { DebugHelper, isEmpty, NotFoundError, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, CampaignHashtagFirestoreRepository, CampaignDashboardFirestoreRepository, SubscriptionEditionFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, ShopSettingsFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, SubscriptionMaterializationFirestoreRepository, SubscriptionSummaryFirestoreRepository, ProductVariantFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewsHasuraGraphQLRepository, VariantHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, isNil } from '@infrab4a/connect';
3
- import { Injectable, Inject, Module, Global } from '@nestjs/common';
2
+ import { DebugHelper, isEmpty, NotFoundError, ProductsIndex, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, CampaignHashtagFirestoreRepository, CampaignDashboardFirestoreRepository, SubscriptionEditionFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, ShopSettingsFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, SubscriptionMaterializationFirestoreRepository, SubscriptionSummaryFirestoreRepository, ProductVariantFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewsHasuraGraphQLRepository, VariantHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, isNil } from '@infrab4a/connect';
3
+ import { Injectable, Inject, Module } from '@nestjs/common';
4
4
  import { FirebaseConstants, FirebaseModule } from 'nestjs-firebase';
5
5
 
6
+ const ES_CONFIG = 'ES_CONFIG';
7
+
8
+ const HASURA_OPTIONS = 'HASURA_OPTIONS';
9
+
10
+ const FIREBASE_STORAGE = 'FIREBASE_STORAGE';
11
+
6
12
  /******************************************************************************
7
13
  Copyright (c) Microsoft Corporation.
8
14
 
@@ -38,10 +44,6 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
38
44
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
39
45
  };
40
46
 
41
- const ES_CONFIG = 'ES_CONFIG';
42
-
43
- const HASURA_OPTIONS = 'HASURA_OPTIONS';
44
-
45
47
  let NativeElasticSearchAdapter = class NativeElasticSearchAdapter {
46
48
  constructor(config) {
47
49
  this.logger = DebugHelper.from(this);
@@ -94,11 +96,11 @@ let NativeElasticSearchAdapter = class NativeElasticSearchAdapter {
94
96
  id: data.identifiersFields.length > 1
95
97
  ? JSON.stringify(data.identifier)
96
98
  : Object.values(data.identifier).shift().toString(),
97
- document: data,
99
+ document: data.toPlain(),
98
100
  };
99
101
  try {
100
- await this.client.index(req);
101
- logger.log({ req, res: undefined });
102
+ const res = await this.client.index(req);
103
+ logger.log({ req, res });
102
104
  }
103
105
  catch (error) {
104
106
  logger.error({ req, res: error });
@@ -278,29 +280,75 @@ class ConnectFirestoreService {
278
280
  }
279
281
  }
280
282
 
283
+ var NestElasticSeachModule_1;
284
+ let NestElasticSeachModule = NestElasticSeachModule_1 = class NestElasticSeachModule {
285
+ static initializeApp(options) {
286
+ return {
287
+ module: NestElasticSeachModule_1,
288
+ providers: [{ provide: ES_CONFIG, useValue: options }],
289
+ exports: [ES_CONFIG],
290
+ };
291
+ }
292
+ };
293
+ NestElasticSeachModule = NestElasticSeachModule_1 = __decorate([
294
+ Module({
295
+ providers: [
296
+ NativeElasticSearchAdapter,
297
+ {
298
+ provide: ProductsIndex,
299
+ useFactory: (adapter) => new ProductsIndex(adapter),
300
+ inject: [NativeElasticSearchAdapter],
301
+ },
302
+ ],
303
+ exports: [ProductsIndex],
304
+ })
305
+ ], NestElasticSeachModule);
306
+
307
+ let NestStorageModule = class NestStorageModule {
308
+ };
309
+ NestStorageModule = __decorate([
310
+ Module({
311
+ providers: [
312
+ {
313
+ provide: FIREBASE_STORAGE,
314
+ useFactory: (firebaseAdmin) => firebaseAdmin.storage,
315
+ inject: [FirebaseConstants.FIREBASE_TOKEN],
316
+ },
317
+ ],
318
+ exports: [FIREBASE_STORAGE],
319
+ })
320
+ ], NestStorageModule);
321
+
281
322
  var NestFirestoreModule_1;
282
323
  let NestFirestoreModule = NestFirestoreModule_1 = class NestFirestoreModule {
283
324
  static initializeApp(options) {
325
+ var _a;
284
326
  return {
285
327
  module: NestFirestoreModule_1,
286
328
  imports: [
287
329
  FirebaseModule.forRoot({
288
- googleApplicationCredential: options.firebase.googleApplicationCredential,
330
+ googleApplicationCredential: (_a = options === null || options === void 0 ? void 0 : options.firebase) === null || _a === void 0 ? void 0 : _a.googleApplicationCredential,
289
331
  }),
332
+ NestStorageModule,
290
333
  ],
291
- exports: [FirebaseModule],
334
+ exports: [FirebaseModule, NestStorageModule],
292
335
  };
293
336
  }
294
337
  };
295
338
  NestFirestoreModule = NestFirestoreModule_1 = __decorate([
296
339
  Module({
297
340
  providers: [
341
+ {
342
+ provide: ConnectFirestoreService,
343
+ useFactory: (firebaseAdmin) => new ConnectFirestoreService(firebaseAdmin.firestore),
344
+ inject: [FirebaseConstants.FIREBASE_TOKEN],
345
+ },
298
346
  {
299
347
  provide: 'FirestoreOptions',
300
- useFactory: (firebaseAdmin) => ({
301
- firestore: new ConnectFirestoreService(firebaseAdmin.firestore),
348
+ useFactory: (connectFirestoreService) => ({
349
+ firestore: connectFirestoreService,
302
350
  }),
303
- inject: [FirebaseConstants.FIREBASE_TOKEN],
351
+ inject: [ConnectFirestoreService],
304
352
  },
305
353
  {
306
354
  provide: 'BeautyProfileRepository',
@@ -520,6 +568,7 @@ NestFirestoreModule = NestFirestoreModule_1 = __decorate([
520
568
  'SubscriptionMaterializationRepository',
521
569
  'SubscriptionSummaryRepository',
522
570
  ProductVariantFirestoreRepository,
571
+ ConnectFirestoreService,
523
572
  ],
524
573
  })
525
574
  ], NestFirestoreModule);
@@ -530,11 +579,11 @@ let NestHasuraGraphQLModule = NestHasuraGraphQLModule_1 = class NestHasuraGraphQ
530
579
  return {
531
580
  module: NestHasuraGraphQLModule_1,
532
581
  providers: [{ provide: HASURA_OPTIONS, useValue: options }],
582
+ exports: [HASURA_OPTIONS],
533
583
  };
534
584
  }
535
585
  };
536
586
  NestHasuraGraphQLModule = NestHasuraGraphQLModule_1 = __decorate([
537
- Global(),
538
587
  Module({
539
588
  providers: [
540
589
  {
@@ -672,12 +721,14 @@ let NestConnectModule = NestConnectModule_1 = class NestConnectModule {
672
721
  return {
673
722
  module: NestConnectModule_1,
674
723
  imports: [
675
- ...(options.firebase ? [NestFirestoreModule] : []),
724
+ ...(options.firebase ? [NestFirestoreModule.initializeApp({ firebase: options.firebase })] : []),
676
725
  ...(isNil(options === null || options === void 0 ? void 0 : options.hasura) ? [] : [NestHasuraGraphQLModule.initializeApp(options.hasura)]),
726
+ ...(isNil(options === null || options === void 0 ? void 0 : options.elasticSearch) ? [] : [NestElasticSeachModule.initializeApp(options.elasticSearch)]),
677
727
  ],
678
728
  exports: [
679
729
  ...(options.firebase ? [NestFirestoreModule] : []),
680
730
  ...(isNil(options === null || options === void 0 ? void 0 : options.hasura) ? [] : [NestHasuraGraphQLModule]),
731
+ ...(isNil(options === null || options === void 0 ? void 0 : options.elasticSearch) ? [] : [NestElasticSeachModule]),
681
732
  ],
682
733
  };
683
734
  }
@@ -686,4 +737,4 @@ NestConnectModule = NestConnectModule_1 = __decorate([
686
737
  Module({})
687
738
  ], NestConnectModule);
688
739
 
689
- export { ConnectCollectionService, ConnectDocumentService, ConnectFirestoreService, NativeElasticSearchAdapter, NestConnectModule, NestFirestoreModule, NestHasuraGraphQLModule };
740
+ export { ConnectCollectionService, ConnectDocumentService, ConnectFirestoreService, ES_CONFIG, FIREBASE_STORAGE, HASURA_OPTIONS, NativeElasticSearchAdapter, NestConnectModule, NestElasticSeachModule, NestFirestoreModule, NestHasuraGraphQLModule, NestStorageModule };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infrab4a/connect-nestjs",
3
- "version": "1.1.0-beta.0",
3
+ "version": "1.1.0-beta.12",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org"
6
6
  },
@@ -1,2 +1,3 @@
1
1
  export * from './es-config.const';
2
2
  export * from './hasura-options.const';
3
+ export * from './storage.const';
@@ -0,0 +1 @@
1
+ export declare const FIREBASE_STORAGE = "FIREBASE_STORAGE";
package/src/index.d.ts CHANGED
@@ -1,4 +1,7 @@
1
+ export * from './consts';
1
2
  export * from './infra';
2
3
  export * from './nest-connect.module';
4
+ export * from './nest-elastic-search.module';
3
5
  export * from './nest-firestore.module';
4
6
  export * from './nest-hasura-graphql.module';
7
+ export * from './nest-storage.module';
@@ -13,7 +13,7 @@ export declare class NativeElasticSearchAdapter<T extends BaseModel<T> = any> im
13
13
  constructor(config: ESClientOptions);
14
14
  get(index: string, id: string): Promise<T>;
15
15
  query(index: string, query: any): Promise<ElasticSearchResult<T>>;
16
- save(index: string, data: Partial<T>): Promise<void>;
16
+ save(index: string, data: T): Promise<void>;
17
17
  update(index: string, id: string, data: Partial<T>): Promise<void>;
18
18
  delete(index: string, id: string): Promise<void>;
19
19
  }
@@ -1,10 +1,12 @@
1
1
  import { DynamicModule } from '@nestjs/common';
2
+ import { ESClientOptions } from './infra';
2
3
  import { HasuraGraphQLOptions } from './nest-hasura-graphql.module';
3
4
  export declare class NestConnectModule {
4
5
  static initializeApp(options: {
5
6
  firebase?: {
6
7
  googleApplicationCredential: string;
7
8
  };
9
+ elasticSearch?: ESClientOptions;
8
10
  hasura: HasuraGraphQLOptions;
9
11
  }): DynamicModule;
10
12
  }
@@ -0,0 +1,2 @@
1
+ export declare class NestStorageModule {
2
+ }