api-internal-modules.ts 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. import { Module } from '@nestjs/common';
  2. import { CacheModule } from '../cache/cache.module';
  3. import { ConfigModule } from '../config/config.module';
  4. import { ConnectionModule } from '../connection/connection.module';
  5. import { DataImportModule } from '../data-import/data-import.module';
  6. import { JobQueueModule } from '../job-queue/job-queue.module';
  7. import { createDynamicGraphQlModulesForPlugins } from '../plugin/dynamic-plugin-api.module';
  8. import { ServiceModule } from '../service/service.module';
  9. import { ConfigurableOperationCodec } from './common/configurable-operation-codec';
  10. import { CustomFieldRelationResolverService } from './common/custom-field-relation-resolver.service';
  11. import { IdCodecService } from './common/id-codec.service';
  12. import { AdministratorResolver } from './resolvers/admin/administrator.resolver';
  13. import { AssetResolver } from './resolvers/admin/asset.resolver';
  14. import { AuthResolver } from './resolvers/admin/auth.resolver';
  15. import { ChannelResolver } from './resolvers/admin/channel.resolver';
  16. import { CollectionResolver } from './resolvers/admin/collection.resolver';
  17. import { CountryResolver } from './resolvers/admin/country.resolver';
  18. import { CustomerGroupResolver } from './resolvers/admin/customer-group.resolver';
  19. import { CustomerResolver } from './resolvers/admin/customer.resolver';
  20. import { DraftOrderResolver } from './resolvers/admin/draft-order.resolver';
  21. import { FacetResolver } from './resolvers/admin/facet.resolver';
  22. import { GlobalSettingsResolver } from './resolvers/admin/global-settings.resolver';
  23. import { ImportResolver } from './resolvers/admin/import.resolver';
  24. import { JobResolver } from './resolvers/admin/job.resolver';
  25. import { OrderResolver } from './resolvers/admin/order.resolver';
  26. import { PaymentMethodResolver } from './resolvers/admin/payment-method.resolver';
  27. import { ProductOptionResolver } from './resolvers/admin/product-option.resolver';
  28. import { ProductResolver } from './resolvers/admin/product.resolver';
  29. import { PromotionResolver } from './resolvers/admin/promotion.resolver';
  30. import { RoleResolver } from './resolvers/admin/role.resolver';
  31. import { SearchResolver } from './resolvers/admin/search.resolver';
  32. import { SellerResolver } from './resolvers/admin/seller.resolver';
  33. import { ShippingMethodResolver } from './resolvers/admin/shipping-method.resolver';
  34. import { StockLocationResolver } from './resolvers/admin/stock-location.resolver';
  35. import { TagResolver } from './resolvers/admin/tag.resolver';
  36. import { TaxCategoryResolver } from './resolvers/admin/tax-category.resolver';
  37. import { TaxRateResolver } from './resolvers/admin/tax-rate.resolver';
  38. import { ZoneResolver } from './resolvers/admin/zone.resolver';
  39. import { AdministratorEntityResolver } from './resolvers/entity/administrator-entity.resolver';
  40. import { AssetEntityResolver } from './resolvers/entity/asset-entity.resolver';
  41. import { ChannelEntityResolver } from './resolvers/entity/channel-entity.resolver';
  42. import { CollectionEntityResolver } from './resolvers/entity/collection-entity.resolver';
  43. import { CountryEntityResolver } from './resolvers/entity/country-entity.resolver';
  44. import {
  45. CustomerAdminEntityResolver,
  46. CustomerEntityResolver,
  47. } from './resolvers/entity/customer-entity.resolver';
  48. import { CustomerGroupEntityResolver } from './resolvers/entity/customer-group-entity.resolver';
  49. import { FacetEntityResolver } from './resolvers/entity/facet-entity.resolver';
  50. import { FacetValueEntityResolver } from './resolvers/entity/facet-value-entity.resolver';
  51. import {
  52. FulfillmentAdminEntityResolver,
  53. FulfillmentEntityResolver,
  54. } from './resolvers/entity/fulfillment-entity.resolver';
  55. import { FulfillmentLineEntityResolver } from './resolvers/entity/fulfillment-line-entity.resolver';
  56. import { JobEntityResolver } from './resolvers/entity/job-entity.resolver';
  57. import { OrderAdminEntityResolver, OrderEntityResolver } from './resolvers/entity/order-entity.resolver';
  58. import { OrderLineEntityResolver } from './resolvers/entity/order-line-entity.resolver';
  59. import {
  60. PaymentAdminEntityResolver,
  61. PaymentEntityResolver,
  62. } from './resolvers/entity/payment-entity.resolver';
  63. import { PaymentMethodEntityResolver } from './resolvers/entity/payment-method-entity.resolver';
  64. import {
  65. ProductAdminEntityResolver,
  66. ProductEntityResolver,
  67. } from './resolvers/entity/product-entity.resolver';
  68. import { ProductOptionEntityResolver } from './resolvers/entity/product-option-entity.resolver';
  69. import { ProductOptionGroupEntityResolver } from './resolvers/entity/product-option-group-entity.resolver';
  70. import {
  71. ProductVariantAdminEntityResolver,
  72. ProductVariantEntityResolver,
  73. } from './resolvers/entity/product-variant-entity.resolver';
  74. import { RefundEntityResolver } from './resolvers/entity/refund-entity.resolver';
  75. import { RefundLineEntityResolver } from './resolvers/entity/refund-line-entity.resolver';
  76. import { RoleEntityResolver } from './resolvers/entity/role-entity.resolver';
  77. import { ShippingLineEntityResolver } from './resolvers/entity/shipping-line-entity.resolver';
  78. import { ShippingMethodEntityResolver } from './resolvers/entity/shipping-method-entity.resolver';
  79. import { TaxRateEntityResolver } from './resolvers/entity/tax-rate-entity.resolver';
  80. import { UserEntityResolver } from './resolvers/entity/user-entity.resolver';
  81. import { ZoneEntityResolver } from './resolvers/entity/zone-entity.resolver';
  82. import { ShopAuthResolver } from './resolvers/shop/shop-auth.resolver';
  83. import { ShopCustomerResolver } from './resolvers/shop/shop-customer.resolver';
  84. import { ShopEnvironmentResolver } from './resolvers/shop/shop-environment.resolver';
  85. import { ShopOrderResolver } from './resolvers/shop/shop-order.resolver';
  86. import { ShopProductsResolver } from './resolvers/shop/shop-products.resolver';
  87. const adminResolvers = [
  88. AdministratorResolver,
  89. AssetResolver,
  90. AuthResolver,
  91. ChannelResolver,
  92. CollectionResolver,
  93. CountryResolver,
  94. CustomerGroupResolver,
  95. CustomerResolver,
  96. DraftOrderResolver,
  97. FacetResolver,
  98. GlobalSettingsResolver,
  99. ImportResolver,
  100. JobResolver,
  101. OrderResolver,
  102. PaymentMethodResolver,
  103. ProductOptionResolver,
  104. ProductResolver,
  105. PromotionResolver,
  106. RoleResolver,
  107. SearchResolver,
  108. ShippingMethodResolver,
  109. StockLocationResolver,
  110. TagResolver,
  111. TaxCategoryResolver,
  112. TaxRateResolver,
  113. SellerResolver,
  114. ZoneResolver,
  115. ];
  116. const shopResolvers = [
  117. ShopAuthResolver,
  118. ShopCustomerResolver,
  119. ShopOrderResolver,
  120. ShopProductsResolver,
  121. ShopEnvironmentResolver,
  122. ];
  123. export const entityResolvers = [
  124. AssetEntityResolver,
  125. ChannelEntityResolver,
  126. CollectionEntityResolver,
  127. CountryEntityResolver,
  128. CustomerEntityResolver,
  129. CustomerGroupEntityResolver,
  130. FacetEntityResolver,
  131. FacetValueEntityResolver,
  132. FulfillmentEntityResolver,
  133. FulfillmentLineEntityResolver,
  134. OrderEntityResolver,
  135. OrderLineEntityResolver,
  136. PaymentEntityResolver,
  137. ProductEntityResolver,
  138. ProductOptionEntityResolver,
  139. ProductOptionGroupEntityResolver,
  140. ProductVariantEntityResolver,
  141. RefundEntityResolver,
  142. RefundLineEntityResolver,
  143. RoleEntityResolver,
  144. ShippingLineEntityResolver,
  145. UserEntityResolver,
  146. TaxRateEntityResolver,
  147. ShippingMethodEntityResolver,
  148. ZoneEntityResolver,
  149. ];
  150. export const adminEntityResolvers = [
  151. AdministratorEntityResolver,
  152. CustomerAdminEntityResolver,
  153. OrderAdminEntityResolver,
  154. PaymentMethodEntityResolver,
  155. FulfillmentAdminEntityResolver,
  156. PaymentAdminEntityResolver,
  157. ProductVariantAdminEntityResolver,
  158. ProductAdminEntityResolver,
  159. JobEntityResolver,
  160. ];
  161. /**
  162. * The internal module containing some shared providers used by more than
  163. * one API module.
  164. */
  165. @Module({
  166. imports: [ConfigModule, ServiceModule, CacheModule, ConnectionModule.forRoot()],
  167. providers: [IdCodecService, ConfigurableOperationCodec, CustomFieldRelationResolverService],
  168. exports: [
  169. IdCodecService,
  170. CacheModule,
  171. ConfigModule,
  172. ConfigurableOperationCodec,
  173. CustomFieldRelationResolverService,
  174. ServiceModule,
  175. ConnectionModule.forRoot(),
  176. ],
  177. })
  178. export class ApiSharedModule {}
  179. /**
  180. * The internal module containing the Admin GraphQL API resolvers
  181. */
  182. @Module({
  183. imports: [
  184. ApiSharedModule,
  185. JobQueueModule,
  186. DataImportModule,
  187. ...createDynamicGraphQlModulesForPlugins('admin'),
  188. ],
  189. providers: [...adminResolvers, ...entityResolvers, ...adminEntityResolvers],
  190. exports: [...adminResolvers],
  191. })
  192. export class AdminApiModule {}
  193. /**
  194. * The internal module containing the Shop GraphQL API resolvers
  195. */
  196. @Module({
  197. imports: [ApiSharedModule, ...createDynamicGraphQlModulesForPlugins('shop')],
  198. providers: [...shopResolvers, ...entityResolvers],
  199. exports: [...shopResolvers],
  200. })
  201. export class ShopApiModule {}