@things-factory/setting-base 5.0.7 → 6.0.0-alpha.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.
Files changed (30) hide show
  1. package/dist-server/index.js +3 -16
  2. package/dist-server/index.js.map +1 -1
  3. package/dist-server/migrations/index.js.map +1 -1
  4. package/dist-server/service/index.js +5 -18
  5. package/dist-server/service/index.js.map +1 -1
  6. package/dist-server/service/partner-setting/index.js.map +1 -1
  7. package/dist-server/service/partner-setting/partner-setting-mutation.js +23 -34
  8. package/dist-server/service/partner-setting/partner-setting-mutation.js.map +1 -1
  9. package/dist-server/service/partner-setting/partner-setting-query.js +71 -84
  10. package/dist-server/service/partner-setting/partner-setting-query.js.map +1 -1
  11. package/dist-server/service/partner-setting/partner-setting-type.js +24 -33
  12. package/dist-server/service/partner-setting/partner-setting-type.js.map +1 -1
  13. package/dist-server/service/partner-setting/partner-setting.js +44 -52
  14. package/dist-server/service/partner-setting/partner-setting.js.map +1 -1
  15. package/dist-server/service/setting/index.js.map +1 -1
  16. package/dist-server/service/setting/setting-mutation.js +37 -48
  17. package/dist-server/service/setting/setting-mutation.js.map +1 -1
  18. package/dist-server/service/setting/setting-query.js +61 -83
  19. package/dist-server/service/setting/setting-query.js.map +1 -1
  20. package/dist-server/service/setting/setting-type.js +28 -36
  21. package/dist-server/service/setting/setting-type.js.map +1 -1
  22. package/dist-server/service/setting/setting.js +28 -37
  23. package/dist-server/service/setting/setting.js.map +1 -1
  24. package/dist-server/tsconfig.tsbuildinfo +1 -0
  25. package/package.json +4 -4
  26. package/server/service/partner-setting/partner-setting-mutation.ts +17 -13
  27. package/server/service/partner-setting/partner-setting-query.ts +18 -16
  28. package/server/service/partner-setting/partner-setting.ts +15 -14
  29. package/server/service/setting/setting-mutation.ts +20 -18
  30. package/server/service/setting/setting-query.ts +36 -36
@@ -1,7 +1,9 @@
1
- import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx, Directive } from 'type-graphql'
2
- import { getRepository, SelectQueryBuilder } from 'typeorm'
3
- import { Domain, Filter, Pagination, Sorting, buildQuery, ObjectRef } from '@things-factory/shell'
1
+ import { Arg, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
2
+ import { SelectQueryBuilder } from 'typeorm'
3
+
4
4
  import { User } from '@things-factory/auth-base'
5
+ import { buildQuery, Domain, Filter, getRepository, ObjectRef, Pagination, Sorting } from '@things-factory/shell'
6
+
5
7
  import { Setting } from '../setting/setting'
6
8
  import { PartnerSetting } from './partner-setting'
7
9
  import { PartnerSettingList } from './partner-setting-type'
@@ -12,13 +14,13 @@ export class PartnerSettingQuery {
12
14
  async partnerSetting(
13
15
  @Arg('name') name: string,
14
16
  @Arg('partnerDomainId') partnerDomainId: string,
15
- @Ctx() context: any
17
+ @Ctx() context: ResolverContext
16
18
  ): Promise<PartnerSetting> {
17
- const { domain }: { domain: Domain } = context.state
18
- const setting: Setting = await getRepository(Setting).findOne({ where: { domain, name } })
19
+ const { domain } = context.state
20
+ const setting: Setting = await getRepository(Setting).findOne({ where: { domain: { id: domain.id }, name } })
19
21
 
20
22
  const partnerSetting: PartnerSetting = await getRepository(PartnerSetting).findOne({
21
- where: { domain, setting, partnerDomain: partnerDomainId }
23
+ where: { domain: { id: domain.id }, setting: { id: setting.id }, partnerDomain: { id: partnerDomainId } }
22
24
  })
23
25
 
24
26
  if (!partnerSetting) throw new Error(`${name} setting is not found`)
@@ -32,7 +34,7 @@ export class PartnerSettingQuery {
32
34
  @Arg('pagination', type => Pagination) pagination: Pagination,
33
35
  @Arg('sortings', type => [Sorting]) sortings: Sorting[],
34
36
  @Arg('partnerDomain', type => ObjectRef) partnerDomain: ObjectRef,
35
- @Ctx() context: any
37
+ @Ctx() context: ResolverContext
36
38
  ): Promise<PartnerSettingList> {
37
39
  const qb: SelectQueryBuilder<PartnerSetting> = getRepository(PartnerSetting).createQueryBuilder()
38
40
  buildQuery(qb, { filters, pagination, sortings }, context)
@@ -45,12 +47,12 @@ export class PartnerSettingQuery {
45
47
 
46
48
  @FieldResolver(type => Domain)
47
49
  async partnerDomain(@Root() partnerSetting: PartnerSetting): Promise<Domain> {
48
- return await getRepository(Domain).findOne(partnerSetting.partnerDomainId)
50
+ return await getRepository(Domain).findOneBy({ id: partnerSetting.partnerDomainId })
49
51
  }
50
52
 
51
53
  @FieldResolver(type => Setting)
52
54
  async setting(@Root() partnerSetting: PartnerSetting): Promise<Setting> {
53
- return await getRepository(Setting).findOne(partnerSetting.settingId)
55
+ return await getRepository(Setting).findOneBy({ id: partnerSetting.settingId })
54
56
  }
55
57
 
56
58
  @FieldResolver(type => String)
@@ -59,7 +61,7 @@ export class PartnerSettingQuery {
59
61
  return partnerSetting.setting.name
60
62
  }
61
63
 
62
- return (await getRepository(Setting).findOne(partnerSetting.settingId))?.name
64
+ return (await getRepository(Setting).findOneBy({ id: partnerSetting.settingId }))?.name
63
65
  }
64
66
 
65
67
  async description(@Root() partnerSetting: PartnerSetting): Promise<string> {
@@ -67,7 +69,7 @@ export class PartnerSettingQuery {
67
69
  return partnerSetting.setting.description
68
70
  }
69
71
 
70
- return (await getRepository(Setting).findOne(partnerSetting.settingId))?.description
72
+ return (await getRepository(Setting).findOneBy({ id: partnerSetting.settingId }))?.description
71
73
  }
72
74
 
73
75
  async category(@Root() partnerSetting: PartnerSetting): Promise<string> {
@@ -75,21 +77,21 @@ export class PartnerSettingQuery {
75
77
  return partnerSetting.setting.category
76
78
  }
77
79
 
78
- return (await getRepository(Setting).findOne(partnerSetting.settingId))?.category
80
+ return (await getRepository(Setting).findOneBy({ id: partnerSetting.settingId }))?.category
79
81
  }
80
82
 
81
83
  @FieldResolver(type => Domain)
82
84
  async domain(@Root() partnerSetting: PartnerSetting): Promise<Domain> {
83
- return await getRepository(Domain).findOne(partnerSetting.domainId)
85
+ return await getRepository(Domain).findOneBy({ id: partnerSetting.domainId })
84
86
  }
85
87
 
86
88
  @FieldResolver(type => User)
87
89
  async updater(@Root() partnerSetting: PartnerSetting): Promise<User> {
88
- return await getRepository(User).findOne(partnerSetting.updaterId)
90
+ return await getRepository(User).findOneBy({ id: partnerSetting.updaterId })
89
91
  }
90
92
 
91
93
  @FieldResolver(type => User)
92
94
  async creator(@Root() partnerSetting: PartnerSetting): Promise<User> {
93
- return await getRepository(User).findOne(partnerSetting.creatorId)
95
+ return await getRepository(User).findOneBy({ id: partnerSetting.creatorId })
94
96
  }
95
97
  }
@@ -1,20 +1,21 @@
1
+ import { Field, ID, ObjectType } from 'type-graphql'
1
2
  import {
2
- EntityManager,
3
- Repository,
4
- getRepository,
3
+ Column,
5
4
  CreateDateColumn,
6
- UpdateDateColumn,
7
5
  Entity,
6
+ EntityManager,
7
+ getRepository,
8
8
  Index,
9
- Column,
10
- RelationId,
11
9
  ManyToOne,
12
- PrimaryGeneratedColumn
10
+ PrimaryGeneratedColumn,
11
+ RelationId,
12
+ Repository,
13
+ UpdateDateColumn
13
14
  } from 'typeorm'
14
- import { ObjectType, Field, Int, ID, registerEnumType } from 'type-graphql'
15
15
 
16
- import { Domain } from '@things-factory/shell'
17
16
  import { User } from '@things-factory/auth-base'
17
+ import { Domain } from '@things-factory/shell'
18
+
18
19
  import { Setting } from '../setting/setting'
19
20
 
20
21
  @Entity()
@@ -97,14 +98,14 @@ export class PartnerSetting {
97
98
  const partnerSettingRepo: Repository<PartnerSetting> =
98
99
  tx?.getRepository(PartnerSetting) || getRepository(PartnerSetting)
99
100
  const settingRepo: Repository<Setting> = tx?.getRepository(Setting) || getRepository(Setting)
100
- const setting: Setting = await settingRepo.findOne({ domain, name })
101
+ const setting: Setting = await settingRepo.findOneBy({ domain: { id: domain.id }, name })
101
102
 
102
103
  if (!setting) throw new Error(`No setting found has '${name}' as its name`)
103
104
 
104
- const domainSetting: PartnerSetting = await partnerSettingRepo.findOne({
105
- domain,
106
- partnerDomain: partnerDomain,
107
- setting
105
+ const domainSetting: PartnerSetting = await partnerSettingRepo.findOneBy({
106
+ domain: { id: domain.id },
107
+ partnerDomain: { id: partnerDomain.id },
108
+ setting: { id: setting.id }
108
109
  })
109
110
 
110
111
  return domainSetting?.value || setting?.value
@@ -1,7 +1,6 @@
1
- import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'
2
- import { EntityManager, getRepository, In } from 'typeorm'
3
- import { Domain } from '@things-factory/shell'
4
- import { User } from '@things-factory/auth-base'
1
+ import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'
2
+ import { In } from 'typeorm'
3
+
5
4
  import { Setting } from './setting'
6
5
  import { NewSetting, SettingPatch } from './setting-type'
7
6
 
@@ -10,8 +9,8 @@ export class SettingMutation {
10
9
  @Directive('@transaction')
11
10
  @Directive('@privilege(category: "setting", privilege: "mutation")')
12
11
  @Mutation(returns => Setting, { description: 'To create new Setting' })
13
- async createSetting(@Arg('setting') setting: NewSetting, @Ctx() context: any): Promise<Setting> {
14
- const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
12
+ async createSetting(@Arg('setting') setting: NewSetting, @Ctx() context: ResolverContext): Promise<Setting> {
13
+ const { tx, domain, user } = context.state
15
14
  return await tx.getRepository(Setting).save({
16
15
  domain,
17
16
  ...setting,
@@ -26,12 +25,12 @@ export class SettingMutation {
26
25
  async updateSetting(
27
26
  @Arg('name') name: string,
28
27
  @Arg('patch') patch: SettingPatch,
29
- @Ctx() context: any
28
+ @Ctx() context: ResolverContext
30
29
  ): Promise<Setting> {
31
- const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
30
+ const { tx, domain, user } = context.state
32
31
 
33
32
  const repository = tx.getRepository(Setting)
34
- const setting = await repository.findOne({ domain, name })
33
+ const setting = await repository.findOneBy({ domain: { id: domain.id }, name })
35
34
 
36
35
  return await repository.save({
37
36
  creater: user,
@@ -47,9 +46,9 @@ export class SettingMutation {
47
46
  @Mutation(returns => [Setting], { description: "To modify multiple Settings' information" })
48
47
  async updateMultipleSetting(
49
48
  @Arg('patches', type => [SettingPatch]) patches: SettingPatch[],
50
- @Ctx() context: any
49
+ @Ctx() context: ResolverContext
51
50
  ): Promise<Setting[]> {
52
- const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
51
+ const { tx, domain, user } = context.state
53
52
 
54
53
  let results = []
55
54
  const _createRecords = patches.filter((patch: any) => patch.cuFlag === '+')
@@ -61,7 +60,7 @@ export class SettingMutation {
61
60
  const newRecord = _createRecords[i]
62
61
 
63
62
  const result = await settingRepo.save({
64
- domain,
63
+ domain: { id: domain.id },
65
64
  creator: user,
66
65
  updater: user,
67
66
  ...newRecord
@@ -74,7 +73,7 @@ export class SettingMutation {
74
73
  if (_updateRecords.length > 0) {
75
74
  for (let i = 0; i < _updateRecords.length; i++) {
76
75
  const newRecord = _updateRecords[i]
77
- const setting = await settingRepo.findOne({ id: newRecord.id })
76
+ const setting = await settingRepo.findOneBy({ id: newRecord.id })
78
77
 
79
78
  const result = await settingRepo.save({
80
79
  ...setting,
@@ -92,8 +91,8 @@ export class SettingMutation {
92
91
  @Directive('@transaction')
93
92
  @Directive('@privilege(category: "setting", privilege: "mutation")')
94
93
  @Mutation(returns => Boolean, { description: 'To delete Setting' })
95
- async deleteSetting(@Arg('name') name: string, @Ctx() context: any): Promise<boolean> {
96
- const { tx, domain }: { tx: EntityManager; domain: Domain } = context.state
94
+ async deleteSetting(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {
95
+ const { tx, domain } = context.state
97
96
 
98
97
  await tx.getRepository(Setting).delete({ domain, name })
99
98
  return true
@@ -102,11 +101,14 @@ export class SettingMutation {
102
101
  @Directive('@transaction')
103
102
  @Directive('@privilege(category: "setting", privilege: "mutation")')
104
103
  @Mutation(returns => Boolean, { description: 'To delete multiple settings' })
105
- async deleteSettings(@Arg('names', type => [String]) names: string[], @Ctx() context: any): Promise<boolean> {
106
- const { tx, domain }: { tx: EntityManager; domain: Domain } = context.state
104
+ async deleteSettings(
105
+ @Arg('names', type => [String]) names: string[],
106
+ @Ctx() context: ResolverContext
107
+ ): Promise<boolean> {
108
+ const { tx, domain } = context.state
107
109
 
108
110
  await tx.getRepository(Setting).delete({
109
- domain,
111
+ domain: { id: domain.id },
110
112
  name: In(names)
111
113
  })
112
114
 
@@ -1,11 +1,11 @@
1
- import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx, Directive } from 'type-graphql'
2
- import { getRepository, In } from 'typeorm'
3
- import { Domain, ListParam, buildQuery } from '@things-factory/shell'
1
+ import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'
2
+
4
3
  import { User } from '@things-factory/auth-base'
4
+ import { buildQuery, Domain, getRepository, ListParam } from '@things-factory/shell'
5
+
6
+ import { PartnerSetting } from '../partner-setting/partner-setting'
5
7
  import { Setting } from './setting'
6
8
  import { SettingList } from './setting-type'
7
- import { Partner } from '@things-factory/auth-base'
8
- import { PartnerSetting } from '../partner-setting/partner-setting'
9
9
 
10
10
  @Resolver(Setting)
11
11
  export class SettingQuery {
@@ -14,19 +14,19 @@ export class SettingQuery {
14
14
  async setting(
15
15
  @Arg('name') name: string,
16
16
  @Arg('partnerDomainId', { nullable: true }) partnerDomainId: string,
17
- @Ctx() context: any
17
+ @Ctx() context: ResolverContext
18
18
  ): Promise<Setting> {
19
- const { domain }: { domain: Domain } = context.state
19
+ const { domain } = context.state
20
20
 
21
- let setting: Setting = await getRepository(Setting).findOne({ where: { domain, name } })
21
+ let setting: Setting = await getRepository(Setting).findOne({ where: { domain: { id: domain.id }, name } })
22
22
  if (!setting) throw new Error(`${name} setting not found`)
23
23
 
24
24
  if (partnerDomainId) {
25
- const partnerDomain: Domain = await getRepository(Domain).findOne(partnerDomainId)
26
- const partnerSetting: PartnerSetting = await getRepository(PartnerSetting).findOne({
27
- setting,
28
- domain,
29
- partnerDomain
25
+ const partnerDomain: Domain = await getRepository(Domain).findOneBy({ id: partnerDomainId })
26
+ const partnerSetting: PartnerSetting = await getRepository(PartnerSetting).findOneBy({
27
+ setting: { id: setting.id },
28
+ domain: { id: domain.id },
29
+ partnerDomain: { id: partnerDomain.id }
30
30
  })
31
31
  if (partnerSetting) setting.value = partnerSetting.value
32
32
  }
@@ -36,7 +36,7 @@ export class SettingQuery {
36
36
 
37
37
  @Directive('@privilege(category: "setting", privilege: "query")')
38
38
  @Query(returns => SettingList, { description: 'To fetch multiple Settings' })
39
- async settings(@Args() params: ListParam, @Ctx() context: any): Promise<SettingList> {
39
+ async settings(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<SettingList> {
40
40
  const queryBuilder = getRepository(Setting).createQueryBuilder()
41
41
  buildQuery(queryBuilder, params, context)
42
42
 
@@ -44,40 +44,40 @@ export class SettingQuery {
44
44
  return { items, total }
45
45
  }
46
46
 
47
- @FieldResolver(type => Domain)
48
- async value(@Root() setting: Setting, @Ctx() context: any) {
49
- const { user, domain } = context.state
50
- const userDomains: Domain[] = user.domains
51
- let value: string = setting.value
47
+ // @FieldResolver(type => Domain)
48
+ // async value(@Root() setting: Setting, @Ctx() context: ResolverContext) {
49
+ // const { user, domain } = context.state
50
+ // const userDomains: Domain[] = user.domains
51
+ // let value: string = setting.value
52
52
 
53
- const partner: Partner = await getRepository(Partner).findOne({
54
- where: { domain, partnerDomain: In(userDomains.map((userDomain: Domain) => userDomain.id)) },
55
- relations: ['partnerDomain']
56
- })
57
- if (partner?.partnerDomain) {
58
- const partnerSetting: PartnerSetting = await getRepository(PartnerSetting).findOne({
59
- setting,
60
- domain,
61
- partnerDomain: partner.partnerDomain
62
- })
63
- if (partnerSetting) value = partnerSetting.value
64
- }
53
+ // const partner: Partner = await getRepository(Partner).findOne({
54
+ // where: { domain: { id: domain.id }, partnerDomain: In(userDomains.map((userDomain: Domain) => userDomain.id)) },
55
+ // relations: ['partnerDomain']
56
+ // })
57
+ // if (partner?.partnerDomain) {
58
+ // const partnerSetting: PartnerSetting = await getRepository(PartnerSetting).findOne({
59
+ // setting,
60
+ // domain,
61
+ // partnerDomain: partner.partnerDomain
62
+ // })
63
+ // if (partnerSetting) value = partnerSetting.value
64
+ // }
65
65
 
66
- return value
67
- }
66
+ // return value
67
+ // }
68
68
 
69
69
  @FieldResolver(type => Domain)
70
70
  async domain(@Root() setting: Setting) {
71
- return await getRepository(Domain).findOne(setting.domainId)
71
+ return await getRepository(Domain).findOneBy({ id: setting.domainId })
72
72
  }
73
73
 
74
74
  @FieldResolver(type => User)
75
75
  async updater(@Root() setting: Setting): Promise<User> {
76
- return await getRepository(User).findOne(setting.updaterId)
76
+ return await getRepository(User).findOneBy({ id: setting.updaterId })
77
77
  }
78
78
 
79
79
  @FieldResolver(type => User)
80
80
  async creator(@Root() setting: Setting): Promise<User> {
81
- return await getRepository(User).findOne(setting.creatorId)
81
+ return await getRepository(User).findOneBy({ id: setting.creatorId })
82
82
  }
83
83
  }