@rytass/cms-base-nestjs-graphql-module 0.1.24 → 0.1.26

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 (147) hide show
  1. package/CHANGELOG.md +306 -0
  2. package/__tests__/enums.spec.ts +76 -0
  3. package/__tests__/language-decorator.spec.ts +17 -0
  4. package/__tests__/quadrats-element-scalar.spec.ts +123 -0
  5. package/llms.txt +361 -0
  6. package/package.json +10 -6
  7. package/project.json +23 -0
  8. package/src/cms-base-graphql.module.ts +101 -0
  9. package/src/constants/enum/base-action.enum.ts +17 -0
  10. package/src/constants/enum/base-resource.enum.ts +4 -0
  11. package/src/constants/option-providers.ts +35 -0
  12. package/src/data-loaders/article.dataloader.ts +84 -0
  13. package/src/data-loaders/members.dataloader.ts +36 -0
  14. package/src/decorators/language.decorator.ts +45 -0
  15. package/src/dto/article-collection.dto.ts +9 -0
  16. package/src/dto/article-multi-language-content.dto.ts +18 -0
  17. package/src/dto/article-signature-step.dto.ts +10 -0
  18. package/src/dto/article-signature.dto.ts +21 -0
  19. package/src/dto/article-stage-version.dto.ts +23 -0
  20. package/src/dto/article-version-content.input.ts +18 -0
  21. package/src/dto/article.dto.ts +16 -0
  22. package/src/dto/articles.args.ts +16 -0
  23. package/src/dto/backstage-article-collection.dto.ts +9 -0
  24. package/src/dto/backstage-article.args.ts +20 -0
  25. package/src/dto/backstage-article.dto.ts +14 -0
  26. package/src/dto/backstage-category.dto.ts +5 -0
  27. package/src/dto/base-article.dto.ts +19 -0
  28. package/src/dto/base-category.dto.ts +13 -0
  29. package/src/dto/categories.args.ts +27 -0
  30. package/src/dto/category-multi-language-name.dto.ts +10 -0
  31. package/src/dto/category-multi-language-name.input.ts +10 -0
  32. package/src/dto/category.dto.ts +8 -0
  33. package/src/dto/collection.dto.ts +13 -0
  34. package/src/dto/create-article.args.ts +27 -0
  35. package/src/dto/create-category.args.ts +15 -0
  36. package/src/dto/custom-field.input.ts +10 -0
  37. package/src/dto/update-article.args.ts +8 -0
  38. package/src/dto/update-category.args.ts +8 -0
  39. package/src/dto/user.dto.ts +10 -0
  40. package/{index.d.ts → src/index.ts} +2 -0
  41. package/src/mutations/article.mutations.ts +177 -0
  42. package/src/mutations/category.mutations.ts +78 -0
  43. package/src/queries/article.queries.ts +71 -0
  44. package/src/queries/category.queries.ts +53 -0
  45. package/src/resolvers/article-signature.resolver.ts +29 -0
  46. package/src/resolvers/article.resolver.ts +41 -0
  47. package/src/resolvers/backstage-article.resolver.ts +161 -0
  48. package/src/resolvers/backstage-category.resolver.ts +40 -0
  49. package/src/scalars/quadrats-element.scalar.ts +56 -0
  50. package/src/typings/cms-graphql-base-providers.ts +3 -0
  51. package/{typings/cms-graphql-base-root-module-async-options.dto.d.ts → src/typings/cms-graphql-base-root-module-async-options.dto.ts} +6 -4
  52. package/{typings/cms-graphql-base-root-module-option-factory.d.ts → src/typings/cms-graphql-base-root-module-option-factory.ts} +2 -1
  53. package/src/typings/cms-graphql-base-root-module-options.dto.ts +11 -0
  54. package/src/typings/dto/resolved-create-article-args.dto.ts +33 -0
  55. package/src/typings/dto/resolved-create-category-args.dto.ts +19 -0
  56. package/tsconfig.build.json +8 -0
  57. package/LICENSE +0 -21
  58. package/cms-base-graphql.module.d.ts +0 -9
  59. package/cms-base-graphql.module.js +0 -114
  60. package/constants/enum/base-action.enum.d.ts +0 -14
  61. package/constants/enum/base-action.enum.js +0 -17
  62. package/constants/enum/base-resource.enum.d.ts +0 -4
  63. package/constants/enum/base-resource.enum.js +0 -7
  64. package/constants/option-providers.d.ts +0 -2
  65. package/constants/option-providers.js +0 -20
  66. package/data-loaders/article.dataloader.d.ts +0 -17
  67. package/data-loaders/article.dataloader.js +0 -68
  68. package/data-loaders/members.dataloader.d.ts +0 -8
  69. package/data-loaders/members.dataloader.js +0 -56
  70. package/decorators/language.decorator.d.ts +0 -2
  71. package/decorators/language.decorator.js +0 -32
  72. package/dto/article-collection.dto.d.ts +0 -5
  73. package/dto/article-collection.dto.js +0 -27
  74. package/dto/article-multi-language-content.dto.d.ts +0 -7
  75. package/dto/article-multi-language-content.dto.js +0 -41
  76. package/dto/article-signature-step.dto.d.ts +0 -4
  77. package/dto/article-signature-step.dto.js +0 -28
  78. package/dto/article-signature.dto.d.ts +0 -7
  79. package/dto/article-signature.dto.js +0 -44
  80. package/dto/article-stage-version.dto.d.ts +0 -9
  81. package/dto/article-stage-version.dto.js +0 -59
  82. package/dto/article-version-content.input.d.ts +0 -7
  83. package/dto/article-version-content.input.js +0 -43
  84. package/dto/article.dto.d.ts +0 -7
  85. package/dto/article.dto.js +0 -37
  86. package/dto/articles.args.d.ts +0 -6
  87. package/dto/articles.args.js +0 -48
  88. package/dto/backstage-article-collection.dto.d.ts +0 -5
  89. package/dto/backstage-article-collection.dto.js +0 -27
  90. package/dto/backstage-article.args.d.ts +0 -6
  91. package/dto/backstage-article.args.js +0 -38
  92. package/dto/backstage-article.dto.d.ts +0 -6
  93. package/dto/backstage-article.dto.js +0 -38
  94. package/dto/backstage-category.dto.d.ts +0 -3
  95. package/dto/backstage-category.dto.js +0 -16
  96. package/dto/base-article.dto.d.ts +0 -7
  97. package/dto/base-article.dto.js +0 -47
  98. package/dto/base-category.dto.d.ts +0 -5
  99. package/dto/base-category.dto.js +0 -33
  100. package/dto/categories.args.d.ts +0 -8
  101. package/dto/categories.args.js +0 -62
  102. package/dto/category-multi-language-name.dto.d.ts +0 -4
  103. package/dto/category-multi-language-name.dto.js +0 -28
  104. package/dto/category-multi-language-name.input.d.ts +0 -4
  105. package/dto/category-multi-language-name.input.js +0 -30
  106. package/dto/category.dto.d.ts +0 -4
  107. package/dto/category.dto.js +0 -24
  108. package/dto/collection.dto.d.ts +0 -5
  109. package/dto/collection.dto.js +0 -33
  110. package/dto/create-article.args.d.ts +0 -11
  111. package/dto/create-article.args.js +0 -71
  112. package/dto/create-category.args.d.ts +0 -7
  113. package/dto/create-category.args.js +0 -45
  114. package/dto/custom-field.input.d.ts +0 -4
  115. package/dto/custom-field.input.js +0 -28
  116. package/dto/update-article.args.d.ts +0 -4
  117. package/dto/update-article.args.js +0 -24
  118. package/dto/update-category.args.d.ts +0 -4
  119. package/dto/update-category.args.js +0 -24
  120. package/dto/user.dto.d.ts +0 -4
  121. package/dto/user.dto.js +0 -28
  122. package/index.cjs.js +0 -2334
  123. package/index.js +0 -8
  124. package/mutations/article.mutations.d.ts +0 -22
  125. package/mutations/article.mutations.js +0 -338
  126. package/mutations/category.mutations.d.ts +0 -15
  127. package/mutations/category.mutations.js +0 -134
  128. package/queries/article.queries.d.ts +0 -16
  129. package/queries/article.queries.js +0 -132
  130. package/queries/category.queries.d.ts +0 -13
  131. package/queries/category.queries.js +0 -124
  132. package/resolvers/article-signature.resolver.d.ts +0 -10
  133. package/resolvers/article-signature.resolver.js +0 -68
  134. package/resolvers/article.resolver.d.ts +0 -14
  135. package/resolvers/article.resolver.js +0 -95
  136. package/resolvers/backstage-article.resolver.d.ts +0 -33
  137. package/resolvers/backstage-article.resolver.js +0 -296
  138. package/resolvers/backstage-category.resolver.d.ts +0 -8
  139. package/resolvers/backstage-category.resolver.js +0 -76
  140. package/scalars/quadrats-element.scalar.d.ts +0 -3
  141. package/scalars/quadrats-element.scalar.js +0 -47
  142. package/typings/cms-graphql-base-providers.d.ts +0 -3
  143. package/typings/cms-graphql-base-providers.js +0 -5
  144. package/typings/cms-graphql-base-root-module-options.dto.d.ts +0 -6
  145. package/typings/dto/resolved-create-article-args.dto.d.ts +0 -24
  146. package/typings/dto/resolved-create-category-args.dto.d.ts +0 -13
  147. /package/{typings/custom-field-value.type.d.ts → src/typings/custom-field-value.type.ts} +0 -0
@@ -1,124 +0,0 @@
1
- import { Query, Args, ID, Resolver } from '@nestjs/graphql';
2
- import { MULTIPLE_LANGUAGE_MODE, DEFAULT_LANGUAGE, CategoryBaseService } from '@rytass/cms-base-nestjs-module';
3
- import { CategoriesArgs } from '../dto/categories.args.js';
4
- import { IsPublic, AllowActions } from '@rytass/member-base-nestjs-module';
5
- import { CategoryDto } from '../dto/category.dto.js';
6
- import { Language } from '../decorators/language.decorator.js';
7
- import { BackstageCategoryDto } from '../dto/backstage-category.dto.js';
8
- import { Inject } from '@nestjs/common';
9
- import { BaseAction } from '../constants/enum/base-action.enum.js';
10
- import { BaseResource } from '../constants/enum/base-resource.enum.js';
11
-
12
- function _ts_decorate(decorators, target, key, desc) {
13
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
16
- return c > 3 && r && Object.defineProperty(target, key, r), r;
17
- }
18
- function _ts_metadata(k, v) {
19
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
20
- }
21
- function _ts_param(paramIndex, decorator) {
22
- return function(target, key) {
23
- decorator(target, key, paramIndex);
24
- };
25
- }
26
- class CategoryQueries {
27
- multiLanguage;
28
- categoryService;
29
- constructor(multiLanguage, categoryService){
30
- this.multiLanguage = multiLanguage;
31
- this.categoryService = categoryService;
32
- }
33
- async category(id, language = DEFAULT_LANGUAGE) {
34
- if (this.multiLanguage) {
35
- return this.categoryService.findById(id, language);
36
- }
37
- return this.categoryService.findById(id);
38
- }
39
- categories(args, language = DEFAULT_LANGUAGE) {
40
- return this.categoryService.findAll({
41
- ...args,
42
- language: this.multiLanguage ? language : null
43
- });
44
- }
45
- backstageCategory(id) {
46
- return this.categoryService.findById(id);
47
- }
48
- backstageCategories(args) {
49
- return this.categoryService.findAll(args);
50
- }
51
- }
52
- _ts_decorate([
53
- Query(()=>CategoryDto),
54
- IsPublic(),
55
- _ts_param(0, Args('id', {
56
- type: ()=>ID
57
- })),
58
- _ts_param(1, Language()),
59
- _ts_metadata("design:type", Function),
60
- _ts_metadata("design:paramtypes", [
61
- String,
62
- String
63
- ]),
64
- _ts_metadata("design:returntype", Promise)
65
- ], CategoryQueries.prototype, "category", null);
66
- _ts_decorate([
67
- Query(()=>[
68
- CategoryDto
69
- ]),
70
- IsPublic(),
71
- _ts_param(0, Args()),
72
- _ts_param(1, Language()),
73
- _ts_metadata("design:type", Function),
74
- _ts_metadata("design:paramtypes", [
75
- typeof CategoriesArgs === "undefined" ? Object : CategoriesArgs,
76
- String
77
- ]),
78
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
79
- ], CategoryQueries.prototype, "categories", null);
80
- _ts_decorate([
81
- Query(()=>BackstageCategoryDto),
82
- AllowActions([
83
- [
84
- BaseResource.CATEGORY,
85
- BaseAction.READ
86
- ]
87
- ]),
88
- _ts_param(0, Args('id', {
89
- type: ()=>ID
90
- })),
91
- _ts_metadata("design:type", Function),
92
- _ts_metadata("design:paramtypes", [
93
- String
94
- ]),
95
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
96
- ], CategoryQueries.prototype, "backstageCategory", null);
97
- _ts_decorate([
98
- Query(()=>[
99
- BackstageCategoryDto
100
- ]),
101
- AllowActions([
102
- [
103
- BaseResource.CATEGORY,
104
- BaseAction.LIST
105
- ]
106
- ]),
107
- _ts_param(0, Args()),
108
- _ts_metadata("design:type", Function),
109
- _ts_metadata("design:paramtypes", [
110
- typeof CategoriesArgs === "undefined" ? Object : CategoriesArgs
111
- ]),
112
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
113
- ], CategoryQueries.prototype, "backstageCategories", null);
114
- CategoryQueries = _ts_decorate([
115
- Resolver(),
116
- _ts_param(0, Inject(MULTIPLE_LANGUAGE_MODE)),
117
- _ts_metadata("design:type", Function),
118
- _ts_metadata("design:paramtypes", [
119
- Boolean,
120
- typeof CategoryBaseService === "undefined" ? Object : CategoryBaseService
121
- ])
122
- ], CategoryQueries);
123
-
124
- export { CategoryQueries };
@@ -1,10 +0,0 @@
1
- import { UserDto } from '../dto/user.dto';
2
- import { MemberDataLoader } from '../data-loaders/members.dataloader';
3
- import { ArticleSignatureEntity } from '@rytass/cms-base-nestjs-module';
4
- import { ArticleSignatureStepDto } from '../dto/article-signature-step.dto';
5
- export declare class ArticleSignatureResolver {
6
- private readonly memberDataloader;
7
- constructor(memberDataloader: MemberDataLoader);
8
- signer(signature: ArticleSignatureEntity): Promise<UserDto | null> | null;
9
- step(signature: ArticleSignatureEntity): ArticleSignatureStepDto;
10
- }
@@ -1,68 +0,0 @@
1
- import { ResolveField, Root, Resolver } from '@nestjs/graphql';
2
- import { ArticleSignatureDto } from '../dto/article-signature.dto.js';
3
- import { UserDto } from '../dto/user.dto.js';
4
- import { Authenticated } from '@rytass/member-base-nestjs-module';
5
- import { MemberDataLoader } from '../data-loaders/members.dataloader.js';
6
- import { DEFAULT_SIGNATURE_LEVEL, ArticleSignatureEntity } from '@rytass/cms-base-nestjs-module';
7
- import { ArticleSignatureStepDto } from '../dto/article-signature-step.dto.js';
8
-
9
- function _ts_decorate(decorators, target, key, desc) {
10
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
- return c > 3 && r && Object.defineProperty(target, key, r), r;
14
- }
15
- function _ts_metadata(k, v) {
16
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
17
- }
18
- function _ts_param(paramIndex, decorator) {
19
- return function(target, key) {
20
- decorator(target, key, paramIndex);
21
- };
22
- }
23
- class ArticleSignatureResolver {
24
- memberDataloader;
25
- constructor(memberDataloader){
26
- this.memberDataloader = memberDataloader;
27
- }
28
- signer(signature) {
29
- return signature.signerId ? this.memberDataloader.loader.load(signature.signerId) : null;
30
- }
31
- step(signature) {
32
- return signature.signatureLevel ?? {
33
- id: DEFAULT_SIGNATURE_LEVEL,
34
- name: DEFAULT_SIGNATURE_LEVEL
35
- };
36
- }
37
- }
38
- _ts_decorate([
39
- ResolveField(()=>UserDto, {
40
- nullable: true
41
- }),
42
- Authenticated(),
43
- _ts_param(0, Root()),
44
- _ts_metadata("design:type", Function),
45
- _ts_metadata("design:paramtypes", [
46
- typeof ArticleSignatureEntity === "undefined" ? Object : ArticleSignatureEntity
47
- ]),
48
- _ts_metadata("design:returntype", Object)
49
- ], ArticleSignatureResolver.prototype, "signer", null);
50
- _ts_decorate([
51
- ResolveField(()=>ArticleSignatureStepDto),
52
- Authenticated(),
53
- _ts_param(0, Root()),
54
- _ts_metadata("design:type", Function),
55
- _ts_metadata("design:paramtypes", [
56
- typeof ArticleSignatureEntity === "undefined" ? Object : ArticleSignatureEntity
57
- ]),
58
- _ts_metadata("design:returntype", typeof ArticleSignatureStepDto === "undefined" ? Object : ArticleSignatureStepDto)
59
- ], ArticleSignatureResolver.prototype, "step", null);
60
- ArticleSignatureResolver = _ts_decorate([
61
- Resolver(()=>ArticleSignatureDto),
62
- _ts_metadata("design:type", Function),
63
- _ts_metadata("design:paramtypes", [
64
- typeof MemberDataLoader === "undefined" ? Object : MemberDataLoader
65
- ])
66
- ], ArticleSignatureResolver);
67
-
68
- export { ArticleSignatureResolver };
@@ -1,14 +0,0 @@
1
- import { MemberDataLoader } from '../data-loaders/members.dataloader';
2
- import { UserDto } from '../dto/user.dto';
3
- import { type ArticleBaseDto } from '@rytass/cms-base-nestjs-module';
4
- import { CategoryDto } from '../dto/category.dto';
5
- import { ArticleDataLoader } from '../data-loaders/article.dataloader';
6
- export declare class ArticleResolver {
7
- private readonly memberDataloader;
8
- private readonly articleDataloader;
9
- private readonly multiLanguage;
10
- constructor(memberDataloader: MemberDataLoader, articleDataloader: ArticleDataLoader, multiLanguage: boolean);
11
- articleId(article: ArticleBaseDto): string;
12
- releasedBy(article: ArticleBaseDto): Promise<UserDto | null> | null;
13
- categories(article: ArticleBaseDto, language?: string): Promise<CategoryDto[]>;
14
- }
@@ -1,95 +0,0 @@
1
- import { ResolveField, Root, Resolver } from '@nestjs/graphql';
2
- import { ArticleDto } from '../dto/article.dto.js';
3
- import { MemberDataLoader } from '../data-loaders/members.dataloader.js';
4
- import { UserDto } from '../dto/user.dto.js';
5
- import { IsPublic } from '@rytass/member-base-nestjs-module';
6
- import { MULTIPLE_LANGUAGE_MODE, DEFAULT_LANGUAGE } from '@rytass/cms-base-nestjs-module';
7
- import { CategoryDto } from '../dto/category.dto.js';
8
- import { ArticleDataLoader } from '../data-loaders/article.dataloader.js';
9
- import { Language } from '../decorators/language.decorator.js';
10
- import { Inject } from '@nestjs/common';
11
-
12
- function _ts_decorate(decorators, target, key, desc) {
13
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
16
- return c > 3 && r && Object.defineProperty(target, key, r), r;
17
- }
18
- function _ts_metadata(k, v) {
19
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
20
- }
21
- function _ts_param(paramIndex, decorator) {
22
- return function(target, key) {
23
- decorator(target, key, paramIndex);
24
- };
25
- }
26
- class ArticleResolver {
27
- memberDataloader;
28
- articleDataloader;
29
- multiLanguage;
30
- constructor(memberDataloader, articleDataloader, multiLanguage){
31
- this.memberDataloader = memberDataloader;
32
- this.articleDataloader = articleDataloader;
33
- this.multiLanguage = multiLanguage;
34
- }
35
- articleId(article) {
36
- return article.id.split(':')[0];
37
- }
38
- releasedBy(article) {
39
- return article.releasedBy ? this.memberDataloader.loader.load(article.releasedBy) : null;
40
- }
41
- categories(article, language = DEFAULT_LANGUAGE) {
42
- return this.articleDataloader.categoriesLoader.load({
43
- articleId: article.id,
44
- language: this.multiLanguage ? language : DEFAULT_LANGUAGE
45
- });
46
- }
47
- }
48
- _ts_decorate([
49
- ResolveField(()=>String),
50
- IsPublic(),
51
- _ts_param(0, Root()),
52
- _ts_metadata("design:type", Function),
53
- _ts_metadata("design:paramtypes", [
54
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
55
- ]),
56
- _ts_metadata("design:returntype", String)
57
- ], ArticleResolver.prototype, "articleId", null);
58
- _ts_decorate([
59
- ResolveField(()=>UserDto, {
60
- nullable: true
61
- }),
62
- IsPublic(),
63
- _ts_param(0, Root()),
64
- _ts_metadata("design:type", Function),
65
- _ts_metadata("design:paramtypes", [
66
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
67
- ]),
68
- _ts_metadata("design:returntype", Object)
69
- ], ArticleResolver.prototype, "releasedBy", null);
70
- _ts_decorate([
71
- ResolveField(()=>[
72
- CategoryDto
73
- ]),
74
- IsPublic(),
75
- _ts_param(0, Root()),
76
- _ts_param(1, Language()),
77
- _ts_metadata("design:type", Function),
78
- _ts_metadata("design:paramtypes", [
79
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto,
80
- String
81
- ]),
82
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
83
- ], ArticleResolver.prototype, "categories", null);
84
- ArticleResolver = _ts_decorate([
85
- Resolver(()=>ArticleDto),
86
- _ts_param(2, Inject(MULTIPLE_LANGUAGE_MODE)),
87
- _ts_metadata("design:type", Function),
88
- _ts_metadata("design:paramtypes", [
89
- typeof MemberDataLoader === "undefined" ? Object : MemberDataLoader,
90
- typeof ArticleDataLoader === "undefined" ? Object : ArticleDataLoader,
91
- Boolean
92
- ])
93
- ], ArticleResolver);
94
-
95
- export { ArticleResolver };
@@ -1,33 +0,0 @@
1
- import { MemberDataLoader } from '../data-loaders/members.dataloader';
2
- import { UserDto } from '../dto/user.dto';
3
- import { ArticleSignatureDataLoader, ArticleStage, ArticleVersionDataLoader, ArticleDataLoader as ModuleArticleDataLoader, type ArticleBaseDto } from '@rytass/cms-base-nestjs-module';
4
- import { CategoryDto } from '../dto/category.dto';
5
- import { ArticleDataLoader } from '../data-loaders/article.dataloader';
6
- import { BackstageArticleDto } from '../dto/backstage-article.dto';
7
- import { ArticleMultiLanguageContentDto } from '../dto/article-multi-language-content.dto';
8
- import { QuadratsElement } from '@quadrats/core';
9
- import { ArticleStageVersionDto } from '../dto/article-stage-version.dto';
10
- import { ArticleSignatureDto } from '../dto/article-signature.dto';
11
- export declare class BackstageArticleResolver {
12
- private readonly memberDataloader;
13
- private readonly articleDataloader;
14
- private readonly multiLanguage;
15
- private readonly articleVersionDataLoader;
16
- private readonly moduleArticleDataLoader;
17
- private readonly versionSignaturesLoader;
18
- constructor(memberDataloader: MemberDataLoader, articleDataloader: ArticleDataLoader, multiLanguage: boolean, articleVersionDataLoader: ArticleVersionDataLoader, moduleArticleDataLoader: ModuleArticleDataLoader, versionSignaturesLoader: ArticleSignatureDataLoader);
19
- id(article: ArticleBaseDto): string;
20
- articleId(article: ArticleBaseDto): string;
21
- submittedBy(article: ArticleBaseDto): Promise<UserDto | null> | null;
22
- lastEditor(article: ArticleBaseDto): Promise<UserDto | null> | null;
23
- releasedBy(article: ArticleBaseDto): Promise<UserDto | null> | null;
24
- categories(article: ArticleBaseDto, language?: string): Promise<CategoryDto[]>;
25
- title(article: ArticleBaseDto): string;
26
- description(article: ArticleBaseDto): string | null;
27
- content(article: ArticleBaseDto): QuadratsElement[];
28
- multiLanguageContents(article: ArticleBaseDto): ArticleMultiLanguageContentDto[];
29
- versions(article: ArticleBaseDto): Promise<BackstageArticleDto[]>;
30
- stage(article: ArticleBaseDto): Promise<ArticleStage>;
31
- signatures(article: ArticleBaseDto): Promise<ArticleSignatureDto[]>;
32
- stageVersions(article: ArticleBaseDto): Promise<ArticleStageVersionDto>;
33
- }
@@ -1,296 +0,0 @@
1
- import { ResolveField, ID, Root, Resolver } from '@nestjs/graphql';
2
- import { MemberDataLoader } from '../data-loaders/members.dataloader.js';
3
- import { UserDto } from '../dto/user.dto.js';
4
- import { Authenticated } from '@rytass/member-base-nestjs-module';
5
- import { ArticleStage, MULTIPLE_LANGUAGE_MODE, DEFAULT_LANGUAGE, ArticleVersionDataLoader, ArticleDataLoader as ArticleDataLoader$1, ArticleSignatureDataLoader } from '@rytass/cms-base-nestjs-module';
6
- import { CategoryDto } from '../dto/category.dto.js';
7
- import { ArticleDataLoader } from '../data-loaders/article.dataloader.js';
8
- import { Language } from '../decorators/language.decorator.js';
9
- import { Inject, BadRequestException } from '@nestjs/common';
10
- import { BackstageArticleDto } from '../dto/backstage-article.dto.js';
11
- import { ArticleMultiLanguageContentDto } from '../dto/article-multi-language-content.dto.js';
12
- import { QuadratsContentScalar } from '../scalars/quadrats-element.scalar.js';
13
- import { ArticleStageVersionDto } from '../dto/article-stage-version.dto.js';
14
- import { ArticleSignatureDto } from '../dto/article-signature.dto.js';
15
-
16
- function _ts_decorate(decorators, target, key, desc) {
17
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
20
- return c > 3 && r && Object.defineProperty(target, key, r), r;
21
- }
22
- function _ts_metadata(k, v) {
23
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
24
- }
25
- function _ts_param(paramIndex, decorator) {
26
- return function(target, key) {
27
- decorator(target, key, paramIndex);
28
- };
29
- }
30
- class BackstageArticleResolver {
31
- memberDataloader;
32
- articleDataloader;
33
- multiLanguage;
34
- articleVersionDataLoader;
35
- moduleArticleDataLoader;
36
- versionSignaturesLoader;
37
- constructor(memberDataloader, articleDataloader, multiLanguage, articleVersionDataLoader, moduleArticleDataLoader, versionSignaturesLoader){
38
- this.memberDataloader = memberDataloader;
39
- this.articleDataloader = articleDataloader;
40
- this.multiLanguage = multiLanguage;
41
- this.articleVersionDataLoader = articleVersionDataLoader;
42
- this.moduleArticleDataLoader = moduleArticleDataLoader;
43
- this.versionSignaturesLoader = versionSignaturesLoader;
44
- }
45
- id(article) {
46
- return `${article.id}:${article.version}`;
47
- }
48
- articleId(article) {
49
- return article.id;
50
- }
51
- submittedBy(article) {
52
- return article.submittedBy ? this.memberDataloader.loader.load(article.submittedBy) : null;
53
- }
54
- lastEditor(article) {
55
- return article.updatedBy ? this.memberDataloader.loader.load(article.updatedBy) : null;
56
- }
57
- releasedBy(article) {
58
- return article.releasedBy ? this.memberDataloader.loader.load(article.releasedBy) : null;
59
- }
60
- categories(article, language = DEFAULT_LANGUAGE) {
61
- return this.articleDataloader.categoriesLoaderNoCache.load({
62
- articleId: article.id,
63
- language: this.multiLanguage ? language : DEFAULT_LANGUAGE
64
- });
65
- }
66
- title(article) {
67
- if ('title' in article && !this.multiLanguage) {
68
- return article.title;
69
- }
70
- throw new BadRequestException('Title field is not available in multi-language mode.');
71
- }
72
- description(article) {
73
- if ('description' in article && !this.multiLanguage) {
74
- return article.description ?? null;
75
- }
76
- throw new BadRequestException('Description field is not available in multi-language mode.');
77
- }
78
- content(article) {
79
- if ('content' in article && !this.multiLanguage) {
80
- return article.content;
81
- }
82
- throw new BadRequestException('Content field is not available in multi-language mode.');
83
- }
84
- multiLanguageContents(article) {
85
- if ('multiLanguageContents' in article) {
86
- return article.multiLanguageContents;
87
- }
88
- return [
89
- {
90
- language: DEFAULT_LANGUAGE,
91
- title: article.title,
92
- description: article.description,
93
- content: article.content
94
- }
95
- ];
96
- }
97
- versions(article) {
98
- return this.articleVersionDataLoader.versionsLoader.load(article.id);
99
- }
100
- stage(article) {
101
- return this.moduleArticleDataLoader.stageLoader.load({
102
- id: article.id,
103
- version: article.version
104
- });
105
- }
106
- signatures(article) {
107
- return this.versionSignaturesLoader.versionSignaturesLoader.load({
108
- id: article.id,
109
- version: article.version
110
- });
111
- }
112
- async stageVersions(article) {
113
- const versions = await this.articleVersionDataLoader.stageVersionsLoader.load(article.id);
114
- return {
115
- id: article.id,
116
- draft: versions[ArticleStage.DRAFT] ?? null,
117
- reviewing: versions[ArticleStage.REVIEWING] ?? null,
118
- verified: versions[ArticleStage.VERIFIED] ?? null,
119
- scheduled: versions[ArticleStage.SCHEDULED] ?? null,
120
- released: versions[ArticleStage.RELEASED] ?? null
121
- };
122
- }
123
- }
124
- _ts_decorate([
125
- ResolveField(()=>ID),
126
- Authenticated(),
127
- _ts_param(0, Root()),
128
- _ts_metadata("design:type", Function),
129
- _ts_metadata("design:paramtypes", [
130
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
131
- ]),
132
- _ts_metadata("design:returntype", String)
133
- ], BackstageArticleResolver.prototype, "id", null);
134
- _ts_decorate([
135
- ResolveField(()=>String),
136
- Authenticated(),
137
- _ts_param(0, Root()),
138
- _ts_metadata("design:type", Function),
139
- _ts_metadata("design:paramtypes", [
140
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
141
- ]),
142
- _ts_metadata("design:returntype", String)
143
- ], BackstageArticleResolver.prototype, "articleId", null);
144
- _ts_decorate([
145
- ResolveField(()=>UserDto, {
146
- nullable: true
147
- }),
148
- Authenticated(),
149
- _ts_param(0, Root()),
150
- _ts_metadata("design:type", Function),
151
- _ts_metadata("design:paramtypes", [
152
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
153
- ]),
154
- _ts_metadata("design:returntype", Object)
155
- ], BackstageArticleResolver.prototype, "submittedBy", null);
156
- _ts_decorate([
157
- ResolveField(()=>UserDto, {
158
- nullable: true
159
- }),
160
- Authenticated(),
161
- _ts_param(0, Root()),
162
- _ts_metadata("design:type", Function),
163
- _ts_metadata("design:paramtypes", [
164
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
165
- ]),
166
- _ts_metadata("design:returntype", Object)
167
- ], BackstageArticleResolver.prototype, "lastEditor", null);
168
- _ts_decorate([
169
- ResolveField(()=>UserDto, {
170
- nullable: true
171
- }),
172
- Authenticated(),
173
- _ts_param(0, Root()),
174
- _ts_metadata("design:type", Function),
175
- _ts_metadata("design:paramtypes", [
176
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
177
- ]),
178
- _ts_metadata("design:returntype", Object)
179
- ], BackstageArticleResolver.prototype, "releasedBy", null);
180
- _ts_decorate([
181
- ResolveField(()=>[
182
- CategoryDto
183
- ]),
184
- Authenticated(),
185
- _ts_param(0, Root()),
186
- _ts_param(1, Language()),
187
- _ts_metadata("design:type", Function),
188
- _ts_metadata("design:paramtypes", [
189
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto,
190
- String
191
- ]),
192
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
193
- ], BackstageArticleResolver.prototype, "categories", null);
194
- _ts_decorate([
195
- ResolveField(()=>String),
196
- Authenticated(),
197
- _ts_param(0, Root()),
198
- _ts_metadata("design:type", Function),
199
- _ts_metadata("design:paramtypes", [
200
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
201
- ]),
202
- _ts_metadata("design:returntype", String)
203
- ], BackstageArticleResolver.prototype, "title", null);
204
- _ts_decorate([
205
- ResolveField(()=>String, {
206
- nullable: true
207
- }),
208
- Authenticated(),
209
- _ts_param(0, Root()),
210
- _ts_metadata("design:type", Function),
211
- _ts_metadata("design:paramtypes", [
212
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
213
- ]),
214
- _ts_metadata("design:returntype", Object)
215
- ], BackstageArticleResolver.prototype, "description", null);
216
- _ts_decorate([
217
- ResolveField(()=>QuadratsContentScalar),
218
- Authenticated(),
219
- _ts_param(0, Root()),
220
- _ts_metadata("design:type", Function),
221
- _ts_metadata("design:paramtypes", [
222
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
223
- ]),
224
- _ts_metadata("design:returntype", Array)
225
- ], BackstageArticleResolver.prototype, "content", null);
226
- _ts_decorate([
227
- ResolveField(()=>[
228
- ArticleMultiLanguageContentDto
229
- ]),
230
- Authenticated(),
231
- _ts_param(0, Root()),
232
- _ts_metadata("design:type", Function),
233
- _ts_metadata("design:paramtypes", [
234
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
235
- ]),
236
- _ts_metadata("design:returntype", Array)
237
- ], BackstageArticleResolver.prototype, "multiLanguageContents", null);
238
- _ts_decorate([
239
- ResolveField(()=>[
240
- BackstageArticleDto
241
- ]),
242
- Authenticated(),
243
- _ts_param(0, Root()),
244
- _ts_metadata("design:type", Function),
245
- _ts_metadata("design:paramtypes", [
246
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
247
- ]),
248
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
249
- ], BackstageArticleResolver.prototype, "versions", null);
250
- _ts_decorate([
251
- ResolveField(()=>ArticleStage),
252
- Authenticated(),
253
- _ts_param(0, Root()),
254
- _ts_metadata("design:type", Function),
255
- _ts_metadata("design:paramtypes", [
256
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
257
- ]),
258
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
259
- ], BackstageArticleResolver.prototype, "stage", null);
260
- _ts_decorate([
261
- ResolveField(()=>[
262
- ArticleSignatureDto
263
- ]),
264
- Authenticated(),
265
- _ts_param(0, Root()),
266
- _ts_metadata("design:type", Function),
267
- _ts_metadata("design:paramtypes", [
268
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
269
- ]),
270
- _ts_metadata("design:returntype", typeof Promise === "undefined" ? Object : Promise)
271
- ], BackstageArticleResolver.prototype, "signatures", null);
272
- _ts_decorate([
273
- ResolveField(()=>ArticleStageVersionDto),
274
- Authenticated(),
275
- _ts_param(0, Root()),
276
- _ts_metadata("design:type", Function),
277
- _ts_metadata("design:paramtypes", [
278
- typeof ArticleBaseDto === "undefined" ? Object : ArticleBaseDto
279
- ]),
280
- _ts_metadata("design:returntype", Promise)
281
- ], BackstageArticleResolver.prototype, "stageVersions", null);
282
- BackstageArticleResolver = _ts_decorate([
283
- Resolver(()=>BackstageArticleDto),
284
- _ts_param(2, Inject(MULTIPLE_LANGUAGE_MODE)),
285
- _ts_metadata("design:type", Function),
286
- _ts_metadata("design:paramtypes", [
287
- typeof MemberDataLoader === "undefined" ? Object : MemberDataLoader,
288
- typeof ArticleDataLoader === "undefined" ? Object : ArticleDataLoader,
289
- Boolean,
290
- typeof ArticleVersionDataLoader === "undefined" ? Object : ArticleVersionDataLoader,
291
- typeof ArticleDataLoader$1 === "undefined" ? Object : ArticleDataLoader$1,
292
- typeof ArticleSignatureDataLoader === "undefined" ? Object : ArticleSignatureDataLoader
293
- ])
294
- ], BackstageArticleResolver);
295
-
296
- export { BackstageArticleResolver };
@@ -1,8 +0,0 @@
1
- import { type CategoryBaseDto } from '@rytass/cms-base-nestjs-module';
2
- import { CategoryMultiLanguageNameDto } from '../dto/category-multi-language-name.dto';
3
- export declare class BackstageCategoryResolver {
4
- private readonly multiLanguage;
5
- constructor(multiLanguage: boolean);
6
- name(category: CategoryBaseDto): string;
7
- multiLanguageNames(category: CategoryBaseDto): CategoryMultiLanguageNameDto[];
8
- }