@mx-space/api-client 1.4.2 → 1.5.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 (201) hide show
  1. package/controllers/activity.ts +39 -0
  2. package/controllers/aggregate.ts +2 -1
  3. package/controllers/index.ts +4 -0
  4. package/dist/adaptors/axios.d.cts +6 -0
  5. package/dist/adaptors/axios.global.js +29 -7
  6. package/dist/adaptors/fetch.d.cts +5 -0
  7. package/dist/adaptors/ky.d.cts +26 -0
  8. package/dist/adaptors/ky.global.js +2 -2
  9. package/dist/adaptors/umi-request.d.cts +6 -0
  10. package/dist/adaptors/umi-request.global.js +9 -1
  11. package/dist/index.cjs +23 -6
  12. package/dist/index.d.cts +1497 -0
  13. package/dist/index.d.ts +31 -4
  14. package/dist/index.global.js +21 -4
  15. package/dist/index.js +22 -5
  16. package/dtos/comment.ts +7 -4
  17. package/esm/apps/core/src/modules/subscribe/subscribe.constant.d.ts +12 -0
  18. package/esm/apps/core/src/modules/subscribe/subscribe.constant.js +16 -0
  19. package/esm/apps/core/src/modules/subscribe/subscribe.constant.js.map +1 -0
  20. package/esm/packages/api-client/adaptors/axios.d.ts +4 -0
  21. package/esm/packages/api-client/adaptors/axios.js +37 -0
  22. package/esm/packages/api-client/adaptors/axios.js.map +1 -0
  23. package/esm/packages/api-client/adaptors/fetch.d.ts +2 -0
  24. package/esm/packages/api-client/adaptors/fetch.js +95 -0
  25. package/esm/packages/api-client/adaptors/fetch.js.map +1 -0
  26. package/esm/packages/api-client/adaptors/ky.d.ts +23 -0
  27. package/esm/packages/api-client/adaptors/ky.js +62 -0
  28. package/esm/packages/api-client/adaptors/ky.js.map +1 -0
  29. package/esm/packages/api-client/adaptors/umi-request.d.ts +4 -0
  30. package/esm/packages/api-client/adaptors/umi-request.js +31 -0
  31. package/esm/packages/api-client/adaptors/umi-request.js.map +1 -0
  32. package/esm/packages/api-client/controllers/aggregate.d.ts +64 -0
  33. package/esm/packages/api-client/controllers/aggregate.js +46 -0
  34. package/esm/packages/api-client/controllers/aggregate.js.map +1 -0
  35. package/esm/packages/api-client/controllers/base.d.ts +43 -0
  36. package/esm/packages/api-client/controllers/base.js +27 -0
  37. package/esm/packages/api-client/controllers/base.js.map +1 -0
  38. package/esm/packages/api-client/controllers/category.d.ts +120 -0
  39. package/esm/packages/api-client/controllers/category.js +68 -0
  40. package/esm/packages/api-client/controllers/category.js.map +1 -0
  41. package/esm/packages/api-client/controllers/comment.d.ts +81 -0
  42. package/esm/packages/api-client/controllers/comment.js +47 -0
  43. package/esm/packages/api-client/controllers/comment.js.map +1 -0
  44. package/esm/packages/api-client/controllers/index.d.ts +19 -0
  45. package/esm/packages/api-client/controllers/index.js +60 -0
  46. package/esm/packages/api-client/controllers/index.js.map +1 -0
  47. package/esm/packages/api-client/controllers/link.d.ts +20 -0
  48. package/esm/packages/api-client/controllers/link.js +21 -0
  49. package/esm/packages/api-client/controllers/link.js.map +1 -0
  50. package/esm/packages/api-client/controllers/note.d.ts +103 -0
  51. package/esm/packages/api-client/controllers/note.js +68 -0
  52. package/esm/packages/api-client/controllers/note.js.map +1 -0
  53. package/esm/packages/api-client/controllers/page.d.ts +59 -0
  54. package/esm/packages/api-client/controllers/page.js +42 -0
  55. package/esm/packages/api-client/controllers/page.js.map +1 -0
  56. package/esm/packages/api-client/controllers/post.d.ts +72 -0
  57. package/esm/packages/api-client/controllers/post.js +52 -0
  58. package/esm/packages/api-client/controllers/post.js.map +1 -0
  59. package/esm/packages/api-client/controllers/project.d.ts +15 -0
  60. package/esm/packages/api-client/controllers/project.js +12 -0
  61. package/esm/packages/api-client/controllers/project.js.map +1 -0
  62. package/esm/packages/api-client/controllers/recently.d.ts +110 -0
  63. package/esm/packages/api-client/controllers/recently.js +49 -0
  64. package/esm/packages/api-client/controllers/recently.js.map +1 -0
  65. package/esm/packages/api-client/controllers/say.d.ts +37 -0
  66. package/esm/packages/api-client/controllers/say.js +21 -0
  67. package/esm/packages/api-client/controllers/say.js.map +1 -0
  68. package/esm/packages/api-client/controllers/search.d.ts +87 -0
  69. package/esm/packages/api-client/controllers/search.js +28 -0
  70. package/esm/packages/api-client/controllers/search.js.map +1 -0
  71. package/esm/packages/api-client/controllers/severless.d.ts +24 -0
  72. package/esm/packages/api-client/controllers/severless.js +16 -0
  73. package/esm/packages/api-client/controllers/severless.js.map +1 -0
  74. package/esm/packages/api-client/controllers/snippet.d.ts +24 -0
  75. package/esm/packages/api-client/controllers/snippet.js +19 -0
  76. package/esm/packages/api-client/controllers/snippet.js.map +1 -0
  77. package/esm/packages/api-client/controllers/subscribe.d.ts +64 -0
  78. package/esm/packages/api-client/controllers/subscribe.js +35 -0
  79. package/esm/packages/api-client/controllers/subscribe.js.map +1 -0
  80. package/esm/packages/api-client/controllers/topic.d.ts +26 -0
  81. package/esm/packages/api-client/controllers/topic.js +18 -0
  82. package/esm/packages/api-client/controllers/topic.js.map +1 -0
  83. package/esm/packages/api-client/controllers/user.d.ts +70 -0
  84. package/esm/packages/api-client/controllers/user.js +40 -0
  85. package/esm/packages/api-client/controllers/user.js.map +1 -0
  86. package/esm/packages/api-client/core/attach-request.d.ts +2 -0
  87. package/esm/packages/api-client/core/attach-request.js +36 -0
  88. package/esm/packages/api-client/core/attach-request.js.map +1 -0
  89. package/esm/packages/api-client/core/client.d.ts +29 -0
  90. package/esm/packages/api-client/core/client.js +193 -0
  91. package/esm/packages/api-client/core/client.js.map +1 -0
  92. package/esm/packages/api-client/core/error.d.ts +6 -0
  93. package/esm/packages/api-client/core/error.js +9 -0
  94. package/esm/packages/api-client/core/error.js.map +1 -0
  95. package/esm/packages/api-client/core/index.d.ts +2 -0
  96. package/esm/packages/api-client/core/index.js +3 -0
  97. package/esm/packages/api-client/core/index.js.map +1 -0
  98. package/esm/packages/api-client/dtos/comment.d.ts +8 -0
  99. package/esm/packages/api-client/dtos/comment.js +2 -0
  100. package/esm/packages/api-client/dtos/comment.js.map +1 -0
  101. package/esm/packages/api-client/dtos/index.d.ts +1 -0
  102. package/esm/packages/api-client/dtos/index.js +2 -0
  103. package/esm/packages/api-client/dtos/index.js.map +1 -0
  104. package/esm/packages/api-client/index.d.ts +8 -0
  105. package/esm/packages/api-client/index.js +9 -0
  106. package/esm/packages/api-client/index.js.map +1 -0
  107. package/esm/packages/api-client/interfaces/adapter.d.ts +14 -0
  108. package/esm/packages/api-client/interfaces/adapter.js +2 -0
  109. package/esm/packages/api-client/interfaces/adapter.js.map +1 -0
  110. package/esm/packages/api-client/interfaces/client.d.ts +13 -0
  111. package/esm/packages/api-client/interfaces/client.js +2 -0
  112. package/esm/packages/api-client/interfaces/client.js.map +1 -0
  113. package/esm/packages/api-client/interfaces/controller.d.ts +4 -0
  114. package/esm/packages/api-client/interfaces/controller.js +2 -0
  115. package/esm/packages/api-client/interfaces/controller.js.map +1 -0
  116. package/esm/packages/api-client/interfaces/instance.d.ts +7 -0
  117. package/esm/packages/api-client/interfaces/instance.js +2 -0
  118. package/esm/packages/api-client/interfaces/instance.js.map +1 -0
  119. package/esm/packages/api-client/interfaces/options.d.ts +1 -0
  120. package/esm/packages/api-client/interfaces/options.js +2 -0
  121. package/esm/packages/api-client/interfaces/options.js.map +1 -0
  122. package/esm/packages/api-client/interfaces/params.d.ts +4 -0
  123. package/esm/packages/api-client/interfaces/params.js +2 -0
  124. package/esm/packages/api-client/interfaces/params.js.map +1 -0
  125. package/esm/packages/api-client/interfaces/request.d.ts +44 -0
  126. package/esm/packages/api-client/interfaces/request.js +2 -0
  127. package/esm/packages/api-client/interfaces/request.js.map +1 -0
  128. package/esm/packages/api-client/interfaces/types.d.ts +2 -0
  129. package/esm/packages/api-client/interfaces/types.js +2 -0
  130. package/esm/packages/api-client/interfaces/types.js.map +1 -0
  131. package/esm/packages/api-client/models/aggregate.d.ts +67 -0
  132. package/esm/packages/api-client/models/aggregate.js +6 -0
  133. package/esm/packages/api-client/models/aggregate.js.map +1 -0
  134. package/esm/packages/api-client/models/base.d.ts +40 -0
  135. package/esm/packages/api-client/models/base.js +2 -0
  136. package/esm/packages/api-client/models/base.js.map +1 -0
  137. package/esm/packages/api-client/models/category.d.ts +22 -0
  138. package/esm/packages/api-client/models/category.js +6 -0
  139. package/esm/packages/api-client/models/category.js.map +1 -0
  140. package/esm/packages/api-client/models/comment.d.ts +39 -0
  141. package/esm/packages/api-client/models/comment.js +13 -0
  142. package/esm/packages/api-client/models/comment.js.map +1 -0
  143. package/esm/packages/api-client/models/index.d.ts +16 -0
  144. package/esm/packages/api-client/models/index.js +17 -0
  145. package/esm/packages/api-client/models/index.js.map +1 -0
  146. package/esm/packages/api-client/models/link.d.ts +22 -0
  147. package/esm/packages/api-client/models/link.js +14 -0
  148. package/esm/packages/api-client/models/link.js.map +1 -0
  149. package/esm/packages/api-client/models/note.d.ts +38 -0
  150. package/esm/packages/api-client/models/note.js +2 -0
  151. package/esm/packages/api-client/models/note.js.map +1 -0
  152. package/esm/packages/api-client/models/page.d.ts +14 -0
  153. package/esm/packages/api-client/models/page.js +7 -0
  154. package/esm/packages/api-client/models/page.js.map +1 -0
  155. package/esm/packages/api-client/models/post.d.ts +17 -0
  156. package/esm/packages/api-client/models/post.js +2 -0
  157. package/esm/packages/api-client/models/post.js.map +1 -0
  158. package/esm/packages/api-client/models/project.d.ts +11 -0
  159. package/esm/packages/api-client/models/project.js +2 -0
  160. package/esm/packages/api-client/models/project.js.map +1 -0
  161. package/esm/packages/api-client/models/recently.d.ts +20 -0
  162. package/esm/packages/api-client/models/recently.js +7 -0
  163. package/esm/packages/api-client/models/recently.js.map +1 -0
  164. package/esm/packages/api-client/models/say.d.ts +6 -0
  165. package/esm/packages/api-client/models/say.js +2 -0
  166. package/esm/packages/api-client/models/say.js.map +1 -0
  167. package/esm/packages/api-client/models/setting.d.ts +66 -0
  168. package/esm/packages/api-client/models/setting.js +2 -0
  169. package/esm/packages/api-client/models/setting.js.map +1 -0
  170. package/esm/packages/api-client/models/snippet.d.ts +18 -0
  171. package/esm/packages/api-client/models/snippet.js +8 -0
  172. package/esm/packages/api-client/models/snippet.js.map +1 -0
  173. package/esm/packages/api-client/models/subscribe.d.ts +3 -0
  174. package/esm/packages/api-client/models/subscribe.js +2 -0
  175. package/esm/packages/api-client/models/subscribe.js.map +1 -0
  176. package/esm/packages/api-client/models/topic.d.ts +8 -0
  177. package/esm/packages/api-client/models/topic.js +2 -0
  178. package/esm/packages/api-client/models/topic.js.map +1 -0
  179. package/esm/packages/api-client/models/user.d.ts +21 -0
  180. package/esm/packages/api-client/models/user.js +2 -0
  181. package/esm/packages/api-client/models/user.js.map +1 -0
  182. package/esm/packages/api-client/tsup.config.d.ts +2 -0
  183. package/esm/packages/api-client/tsup.config.js +14 -0
  184. package/esm/packages/api-client/tsup.config.js.map +1 -0
  185. package/esm/packages/api-client/utils/auto-bind.d.ts +4 -0
  186. package/esm/packages/api-client/utils/auto-bind.js +36 -0
  187. package/esm/packages/api-client/utils/auto-bind.js.map +1 -0
  188. package/esm/packages/api-client/utils/camelcase-keys.d.ts +6 -0
  189. package/esm/packages/api-client/utils/camelcase-keys.js +23 -0
  190. package/esm/packages/api-client/utils/camelcase-keys.js.map +1 -0
  191. package/esm/packages/api-client/utils/index.d.ts +5 -0
  192. package/esm/packages/api-client/utils/index.js +43 -0
  193. package/esm/packages/api-client/utils/index.js.map +1 -0
  194. package/esm/packages/api-client/utils/path.d.ts +1 -0
  195. package/esm/packages/api-client/utils/path.js +7 -0
  196. package/esm/packages/api-client/utils/path.js.map +1 -0
  197. package/esm/packages/api-client/vitest.config.d.ts +2 -0
  198. package/esm/packages/api-client/vitest.config.js +15 -0
  199. package/esm/packages/api-client/vitest.config.js.map +1 -0
  200. package/models/comment.ts +3 -0
  201. package/package.json +5 -5
package/dist/index.d.ts CHANGED
@@ -92,6 +92,30 @@ declare class RequestError extends Error {
92
92
  constructor(message: string, status: number, path: string, raw: any);
93
93
  }
94
94
 
95
+ declare module '@mx-space/api-client' {
96
+ interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
97
+ activity: ActivityController<ResponseWrapper>;
98
+ }
99
+ }
100
+ /**
101
+ * @support core >= 4.3.0
102
+ */
103
+ declare class ActivityController<ResponseWrapper> implements IController {
104
+ private client;
105
+ base: string;
106
+ name: string;
107
+ constructor(client: HTTPClient);
108
+ get proxy(): IRequestHandler<ResponseWrapper>;
109
+ likeIt(type: 'Post' | 'Note', id: string): RequestProxyResult<never, ResponseWrapper, ResponseWrapper extends unknown ? {
110
+ [key: string]: any;
111
+ data: never;
112
+ } : ResponseWrapper extends {
113
+ data: never;
114
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
115
+ data: never;
116
+ }>;
117
+ }
118
+
95
119
  type SortOrder = 'asc' | 'desc';
96
120
 
97
121
  interface Count {
@@ -586,6 +610,7 @@ interface CommentModel extends BaseModel {
586
610
  children: CommentModel[];
587
611
  isWhispers?: boolean;
588
612
  location?: string;
613
+ source?: string;
589
614
  }
590
615
  interface CommentRef {
591
616
  id: string;
@@ -600,11 +625,13 @@ declare enum CommentState {
600
625
  Junk = 2
601
626
  }
602
627
 
603
- declare class CommentDto {
628
+ interface CommentDto {
604
629
  author: string;
605
630
  text: string;
606
631
  mail: string;
607
632
  url?: string;
633
+ source?: 'github' | 'google';
634
+ avatar?: string;
608
635
  }
609
636
 
610
637
  declare module '@mx-space/api-client' {
@@ -1440,8 +1467,8 @@ declare class UserController<ResponseWrapper> implements IController {
1440
1467
  }>;
1441
1468
  }
1442
1469
 
1443
- declare const allControllers: (typeof AggregateController | typeof CategoryController | typeof CommentController | typeof LinkController | typeof NoteController | typeof PageController | typeof PostController | typeof ProjectController | typeof RecentlyController | typeof SayController | typeof SearchController | typeof ServerlessController | typeof SnippetController | typeof SubscribeController | typeof TopicController | typeof UserController)[];
1444
- declare const allContollerNames: readonly ["aggregate", "category", "comment", "link", "note", "page", "post", "project", "topic", "recently", "say", "search", "snippet", "serverless", "subscribe", "user", "friend", "master", "shorthand"];
1470
+ declare const allControllers: (typeof ActivityController | typeof AggregateController | typeof CategoryController | typeof CommentController | typeof LinkController | typeof NoteController | typeof PageController | typeof PostController | typeof ProjectController | typeof RecentlyController | typeof SayController | typeof SearchController | typeof ServerlessController | typeof SnippetController | typeof SubscribeController | typeof TopicController | typeof UserController)[];
1471
+ declare const allContollerNames: readonly ["activity", "aggregate", "category", "comment", "link", "note", "page", "post", "project", "topic", "recently", "say", "search", "snippet", "serverless", "subscribe", "user", "friend", "master", "shorthand"];
1445
1472
 
1446
1473
  declare enum SnippetType {
1447
1474
  JSON = "json",
@@ -1467,4 +1494,4 @@ interface SnippetModel<T = unknown> extends BaseModel {
1467
1494
  */
1468
1495
  declare const camelcaseKeys: <T = any>(obj: any) => T;
1469
1496
 
1470
- export { AdminExtraModel, AggregateController, AggregateRoot, AggregateRootWithTheme, AggregateStat, AggregateTop, AggregateTopNote, AggregateTopPost, AlgoliaSearchOptionsModel, BackupOptionsModel, BaiduSearchOptionsModel, BaseCommentIndexModel, BaseModel, CategoryController, CategoryEntries, CategoryModel, CategoryType, CategoryWithChildrenModel, CommentController, CommentDto, CommentModel, CommentOptionsModel, CommentRef, CommentState, Coordinate, Count, EnumPageType, HTTPClient, IConfig, IConfigKeys, Image, LinkController, LinkModel, LinkState, LinkType, MailOptionsModel, ModelWithLiked, NoteController, NoteModel, NoteMusicRecord, NoteWrappedPayload, NoteWrappedWithLikedPayload, PageController, PageModel, Pager, PaginateResult, PostController, PostModel, ProjectController, ProjectModel, RecentlyAttitudeEnum, RecentlyAttitudeResultEnum, RecentlyController, RecentlyModel, RecentlyRefType, RecentlyRefTypes, RefType, RequestError, SayController, SayModel, SearchController, SeoOptionModel, ServerlessController, SnippetController, SnippetModel, SnippetType, SubscribeAllBit, SubscribeController, SubscribeNoteCreateBit, SubscribePostCreateBit, SubscribeRecentCreateBit, SubscribeSayCreateBit, SubscribeType, SubscribeTypeToBitMap, TLogin, TagModel, TextBaseModel, TimelineData, TimelineType, TopicController, TopicModel, Url, UrlOptionModel, UserController, UserModel, allContollerNames, allControllers, createClient, createClient as default, camelcaseKeys as simpleCamelcaseKeys };
1497
+ export { ActivityController, AdminExtraModel, AggregateController, AggregateRoot, AggregateRootWithTheme, AggregateStat, AggregateTop, AggregateTopNote, AggregateTopPost, AlgoliaSearchOptionsModel, BackupOptionsModel, BaiduSearchOptionsModel, BaseCommentIndexModel, BaseModel, CategoryController, CategoryEntries, CategoryModel, CategoryType, CategoryWithChildrenModel, CommentController, CommentDto, CommentModel, CommentOptionsModel, CommentRef, CommentState, Coordinate, Count, EnumPageType, HTTPClient, IConfig, IConfigKeys, Image, LinkController, LinkModel, LinkState, LinkType, MailOptionsModel, ModelWithLiked, NoteController, NoteModel, NoteMusicRecord, NoteWrappedPayload, NoteWrappedWithLikedPayload, PageController, PageModel, Pager, PaginateResult, PostController, PostModel, ProjectController, ProjectModel, RecentlyAttitudeEnum, RecentlyAttitudeResultEnum, RecentlyController, RecentlyModel, RecentlyRefType, RecentlyRefTypes, RefType, RequestError, SayController, SayModel, SearchController, SeoOptionModel, ServerlessController, SnippetController, SnippetModel, SnippetType, SubscribeAllBit, SubscribeController, SubscribeNoteCreateBit, SubscribePostCreateBit, SubscribeRecentCreateBit, SubscribeSayCreateBit, SubscribeType, SubscribeTypeToBitMap, TLogin, TagModel, TextBaseModel, TimelineData, TimelineType, TopicController, TopicModel, Url, UrlOptionModel, UserController, UserModel, allContollerNames, allControllers, createClient, createClient as default, camelcaseKeys as simpleCamelcaseKeys };
@@ -100,6 +100,25 @@
100
100
  return self;
101
101
  }
102
102
 
103
+ // controllers/activity.ts
104
+ var ActivityController = class {
105
+ constructor(client) {
106
+ this.client = client;
107
+ this.base = "activity";
108
+ this.name = "activity";
109
+ autoBind(this);
110
+ }
111
+ get proxy() {
112
+ return this.client.proxy(this.base);
113
+ }
114
+ likeIt(type, id) {
115
+ return this.proxy.like.post({
116
+ type,
117
+ id
118
+ });
119
+ }
120
+ };
121
+
103
122
  // controllers/aggregate.ts
104
123
  var AggregateController = class {
105
124
  constructor(client) {
@@ -720,6 +739,7 @@
720
739
 
721
740
  // controllers/index.ts
722
741
  var allControllers = [
742
+ ActivityController,
723
743
  AggregateController,
724
744
  CategoryController,
725
745
  CommentController,
@@ -738,6 +758,7 @@
738
758
  UserController
739
759
  ];
740
760
  var allContollerNames = [
761
+ "activity",
741
762
  "aggregate",
742
763
  "category",
743
764
  "comment",
@@ -1047,10 +1068,6 @@
1047
1068
  all: SubscribeAllBit
1048
1069
  };
1049
1070
 
1050
- // dtos/comment.ts
1051
- var CommentDto = class {
1052
- };
1053
-
1054
1071
  // index.ts
1055
1072
  var api_client_default = createClient;
1056
1073
  })();
package/dist/index.js CHANGED
@@ -98,6 +98,25 @@ function autoBind(self, { include, exclude } = {}) {
98
98
  return self;
99
99
  }
100
100
 
101
+ // controllers/activity.ts
102
+ var ActivityController = class {
103
+ constructor(client) {
104
+ this.client = client;
105
+ this.base = "activity";
106
+ this.name = "activity";
107
+ autoBind(this);
108
+ }
109
+ get proxy() {
110
+ return this.client.proxy(this.base);
111
+ }
112
+ likeIt(type, id) {
113
+ return this.proxy.like.post({
114
+ type,
115
+ id
116
+ });
117
+ }
118
+ };
119
+
101
120
  // controllers/aggregate.ts
102
121
  var AggregateController = class {
103
122
  constructor(client) {
@@ -718,6 +737,7 @@ var UserController = class {
718
737
 
719
738
  // controllers/index.ts
720
739
  var allControllers = [
740
+ ActivityController,
721
741
  AggregateController,
722
742
  CategoryController,
723
743
  CommentController,
@@ -736,6 +756,7 @@ var allControllers = [
736
756
  UserController
737
757
  ];
738
758
  var allContollerNames = [
759
+ "activity",
739
760
  "aggregate",
740
761
  "category",
741
762
  "comment",
@@ -1045,18 +1066,14 @@ var SubscribeTypeToBitMap = {
1045
1066
  all: SubscribeAllBit
1046
1067
  };
1047
1068
 
1048
- // dtos/comment.ts
1049
- var CommentDto = class {
1050
- };
1051
-
1052
1069
  // index.ts
1053
1070
  var api_client_default = createClient;
1054
1071
  export {
1072
+ ActivityController,
1055
1073
  AggregateController,
1056
1074
  CategoryController,
1057
1075
  CategoryType,
1058
1076
  CommentController,
1059
- CommentDto,
1060
1077
  CommentState,
1061
1078
  EnumPageType,
1062
1079
  LinkController,
package/dtos/comment.ts CHANGED
@@ -1,9 +1,12 @@
1
- export class CommentDto {
2
- author!: string
1
+ export interface CommentDto {
2
+ author: string
3
3
 
4
- text!: string
4
+ text: string
5
5
 
6
- mail!: string
6
+ mail: string
7
7
 
8
8
  url?: string
9
+
10
+ source?: 'github' | 'google'
11
+ avatar?: string
9
12
  }
@@ -0,0 +1,12 @@
1
+ export declare const SubscribePostCreateBit: number;
2
+ export declare const SubscribeNoteCreateBit: number;
3
+ export declare const SubscribeSayCreateBit: number;
4
+ export declare const SubscribeRecentCreateBit: number;
5
+ export declare const SubscribeAllBit: number;
6
+ export declare const SubscribeTypeToBitMap: {
7
+ post_c: number;
8
+ note_c: number;
9
+ say_c: number;
10
+ recently_c: number;
11
+ all: number;
12
+ };
@@ -0,0 +1,16 @@
1
+ export const SubscribePostCreateBit = 1 << 0;
2
+ export const SubscribeNoteCreateBit = 1 << 1;
3
+ export const SubscribeSayCreateBit = 1 << 2;
4
+ export const SubscribeRecentCreateBit = 1 << 3;
5
+ export const SubscribeAllBit = SubscribePostCreateBit |
6
+ SubscribeNoteCreateBit |
7
+ SubscribeSayCreateBit |
8
+ SubscribeRecentCreateBit;
9
+ export const SubscribeTypeToBitMap = {
10
+ post_c: SubscribePostCreateBit,
11
+ note_c: SubscribeNoteCreateBit,
12
+ say_c: SubscribeSayCreateBit,
13
+ recently_c: SubscribeRecentCreateBit,
14
+ all: SubscribeAllBit,
15
+ };
16
+ //# sourceMappingURL=subscribe.constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscribe.constant.js","sourceRoot":"","sources":["../../../../../../../../apps/core/src/modules/subscribe/subscribe.constant.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,IAAI,CAAC,CAAA;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,IAAI,CAAC,CAAA;AAC5C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,CAAA;AAC3C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,IAAI,CAAC,CAAA;AAC9C,MAAM,CAAC,MAAM,eAAe,GAC1B,sBAAsB;IACtB,sBAAsB;IACtB,qBAAqB;IACrB,wBAAwB,CAAA;AAE1B,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;IAC9B,KAAK,EAAE,qBAAqB;IAC5B,UAAU,EAAE,wBAAwB;IACpC,GAAG,EAAE,eAAe;CACrB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { IRequestAdapter } from '~/interfaces/adapter';
2
+ import type { AxiosInstance, AxiosResponse } from 'axios';
3
+ export declare const axiosAdaptor: IRequestAdapter<AxiosInstance, AxiosResponse<unknown>>;
4
+ export default axiosAdaptor;
@@ -0,0 +1,37 @@
1
+ import axios from 'axios';
2
+ // eslint-disable-next-line spaced-comment
3
+ const $http = /*#__PURE__*/ axios.create({});
4
+ // ignore axios `method` declare not assignable to `Method`
5
+ export const axiosAdaptor = Object.preventExtensions({
6
+ get default() {
7
+ return $http;
8
+ },
9
+ responseWrapper: {},
10
+ get(url, options) {
11
+ // @ts-ignore
12
+ return $http.get(url, options);
13
+ },
14
+ post(url, options) {
15
+ const { data, ...config } = options || {};
16
+ // @ts-ignore
17
+ return $http.post(url, data, config);
18
+ },
19
+ put(url, options) {
20
+ const { data, ...config } = options || {};
21
+ // @ts-ignore
22
+ return $http.put(url, data, config);
23
+ },
24
+ delete(url, options) {
25
+ const { ...config } = options || {};
26
+ // @ts-ignore
27
+ return $http.delete(url, config);
28
+ },
29
+ patch(url, options) {
30
+ const { data, ...config } = options || {};
31
+ // @ts-ignore
32
+ return $http.patch(url, data, config);
33
+ },
34
+ });
35
+ // eslint-disable-next-line import/no-default-export
36
+ export default axiosAdaptor;
37
+ //# sourceMappingURL=axios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios.js","sourceRoot":"","sources":["../../../../adaptors/axios.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,0CAA0C;AAC1C,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;AAE5C,2DAA2D;AAC3D,MAAM,CAAC,MAAM,YAAY,GAGrB,MAAM,CAAC,iBAAiB,CAAC;IAC3B,IAAI,OAAO;QACT,OAAO,KAAK,CAAA;IACd,CAAC;IACD,eAAe,EAAE,EAAmC;IACpD,GAAG,CAAC,GAAG,EAAE,OAAO;QACd,aAAa;QACb,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAChC,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,OAAO;QACf,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QACzC,aAAa;QACb,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IACtC,CAAC;IACD,GAAG,CAAC,GAAG,EAAE,OAAO;QACd,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QACzC,aAAa;QACb,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IACrC,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,OAAO;QACjB,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QACnC,aAAa;QACb,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAClC,CAAC;IACD,KAAK,CAAC,GAAG,EAAE,OAAO;QAChB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QACzC,aAAa;QACb,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IACvC,CAAC;CACF,CAAC,CAAA;AAEF,oDAAoD;AACpD,eAAe,YAAY,CAAA"}
@@ -0,0 +1,2 @@
1
+ import type { IRequestAdapter } from '~/interfaces/adapter';
2
+ export declare const fetchAdaptor: IRequestAdapter<typeof fetch>;
@@ -0,0 +1,95 @@
1
+ const jsonDataAttachResponse = async (response) => {
2
+ const cloned = response.clone();
3
+ let data = {};
4
+ const contentType = cloned.headers.get('Content-Type')?.split(';')[0].trim() || '';
5
+ switch (contentType) {
6
+ case 'application/json': {
7
+ data = await cloned.json();
8
+ break;
9
+ }
10
+ default: {
11
+ // const clonedAgain = cloned.clone()
12
+ // data = await cloned.json().catch(() => clonedAgain.text())
13
+ data = await cloned.text();
14
+ break;
15
+ }
16
+ }
17
+ const nextResponse = Object.assign({}, response, {
18
+ data,
19
+ });
20
+ if (response.ok) {
21
+ return nextResponse;
22
+ }
23
+ else {
24
+ return Promise.reject(nextResponse);
25
+ }
26
+ };
27
+ /**
28
+ * transform options to fetch options
29
+ * @param options
30
+ * @returns
31
+ */
32
+ const parseOptions = (options) => {
33
+ const { headers = {}, data, ...rest } = options;
34
+ if (typeof data === 'object' && !(data instanceof FormData)) {
35
+ const key = 'Content-Type';
36
+ const value = 'application/json';
37
+ if (Array.isArray(headers)) {
38
+ headers.push([key, value]);
39
+ }
40
+ else if (Object.prototype.toString.call(headers) === '[object Object]') {
41
+ headers[key] = value;
42
+ }
43
+ else if (headers instanceof Headers) {
44
+ headers.append(key, value);
45
+ }
46
+ }
47
+ return {
48
+ headers,
49
+ body: typeof data === 'object' ? JSON.stringify(data) : data,
50
+ ...rest,
51
+ };
52
+ };
53
+ // @ts-ignore
54
+ export const fetchAdaptor = Object.preventExtensions({
55
+ get default() {
56
+ return fetch;
57
+ },
58
+ async delete(url, options) {
59
+ const data = await fetch(url, {
60
+ ...options,
61
+ method: 'DELETE',
62
+ });
63
+ return jsonDataAttachResponse(data);
64
+ },
65
+ async get(url, options) {
66
+ const response = await fetch(url, {
67
+ ...options,
68
+ method: 'GET',
69
+ });
70
+ return jsonDataAttachResponse(response);
71
+ },
72
+ async patch(url, options) {
73
+ const response = await fetch(url, {
74
+ ...parseOptions(options),
75
+ method: 'PATCH',
76
+ });
77
+ return jsonDataAttachResponse(response);
78
+ },
79
+ async post(url, options) {
80
+ const response = await fetch(url, {
81
+ ...parseOptions(options),
82
+ method: 'POST',
83
+ });
84
+ return jsonDataAttachResponse(response);
85
+ },
86
+ async put(url, options) {
87
+ const response = await fetch(url, {
88
+ ...parseOptions(options),
89
+ method: 'PUT',
90
+ });
91
+ return jsonDataAttachResponse(response);
92
+ },
93
+ responseWrapper: {},
94
+ });
95
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../adaptors/fetch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { ResponsePromise } from 'ky';
2
+ import type { KyInstance } from 'ky/distribution/types/ky';
3
+ export declare const createKyAdaptor: (ky: KyInstance) => Readonly<{
4
+ responseWrapper: ResponsePromise;
5
+ } & {
6
+ default: KyInstance;
7
+ get<P = unknown>(url: string, options?: Omit<import("../interfaces/instance").RequestOptions, "data"> | undefined): import("~/interfaces/adapter").IAdaptorRequestResponseType<P>;
8
+ post<P_1 = unknown>(url: string, options: Partial<import("../interfaces/instance").RequestOptions>): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_1>;
9
+ patch<P_2 = unknown>(url: string, options: Partial<import("../interfaces/instance").RequestOptions>): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_2>;
10
+ delete<P_3 = unknown>(url: string, options?: Omit<import("../interfaces/instance").RequestOptions, "data"> | undefined): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_3>;
11
+ put<P_4 = unknown>(url: string, options: Partial<import("../interfaces/instance").RequestOptions>): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_4>;
12
+ }>;
13
+ export declare const defaultKyAdaptor: Readonly<{
14
+ responseWrapper: ResponsePromise;
15
+ } & {
16
+ default: KyInstance;
17
+ get<P = unknown>(url: string, options?: Omit<import("../interfaces/instance").RequestOptions, "data"> | undefined): import("~/interfaces/adapter").IAdaptorRequestResponseType<P>;
18
+ post<P_1 = unknown>(url: string, options: Partial<import("../interfaces/instance").RequestOptions>): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_1>;
19
+ patch<P_2 = unknown>(url: string, options: Partial<import("../interfaces/instance").RequestOptions>): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_2>;
20
+ delete<P_3 = unknown>(url: string, options?: Omit<import("../interfaces/instance").RequestOptions, "data"> | undefined): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_3>;
21
+ put<P_4 = unknown>(url: string, options: Partial<import("../interfaces/instance").RequestOptions>): import("~/interfaces/adapter").IAdaptorRequestResponseType<P_4>;
22
+ }>;
23
+ export default defaultKyAdaptor;
@@ -0,0 +1,62 @@
1
+ import ky from 'ky';
2
+ // eslint-disable-next-line spaced-comment
3
+ const $http = /*#__PURE__*/ ky.create({});
4
+ // TODO post data not only json,
5
+ const getDataFromKyResponse = async (response) => {
6
+ const res = await response;
7
+ const isJsonType = res.headers
8
+ .get('content-type')
9
+ ?.includes('application/json');
10
+ const json = isJsonType ? await res.clone().json() : null;
11
+ const result = {
12
+ ...res,
13
+ data: json ?? (await res.clone().text()),
14
+ };
15
+ return result;
16
+ };
17
+ export const createKyAdaptor = (ky) => {
18
+ const adaptor = Object.preventExtensions({
19
+ get default() {
20
+ return ky;
21
+ },
22
+ responseWrapper: {},
23
+ get(url, options) {
24
+ return getDataFromKyResponse(ky.get(url, options));
25
+ },
26
+ post(url, options) {
27
+ const data = options.data;
28
+ delete options.data;
29
+ const kyOptions = {
30
+ ...options,
31
+ json: data,
32
+ };
33
+ return getDataFromKyResponse(ky.post(url, kyOptions));
34
+ },
35
+ put(url, options) {
36
+ const data = options.data;
37
+ delete options.data;
38
+ const kyOptions = {
39
+ ...options,
40
+ json: data,
41
+ };
42
+ return getDataFromKyResponse(ky.put(url, kyOptions));
43
+ },
44
+ patch(url, options) {
45
+ const data = options.data;
46
+ delete options.data;
47
+ const kyOptions = {
48
+ ...options,
49
+ json: data,
50
+ };
51
+ return getDataFromKyResponse(ky.patch(url, kyOptions));
52
+ },
53
+ delete(url, options) {
54
+ return getDataFromKyResponse(ky.delete(url, options));
55
+ },
56
+ });
57
+ return adaptor;
58
+ };
59
+ export const defaultKyAdaptor = createKyAdaptor($http);
60
+ // eslint-disable-next-line import/no-default-export
61
+ export default defaultKyAdaptor;
62
+ //# sourceMappingURL=ky.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ky.js","sourceRoot":"","sources":["../../../../adaptors/ky.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAKnB,0CAA0C;AAC1C,MAAM,KAAK,GAAe,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;AACrD,gCAAgC;AAChC,MAAM,qBAAqB,GAAG,KAAK,EAAE,QAAyB,EAAE,EAAE;IAChE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAA;IAE1B,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO;SAC3B,GAAG,CAAC,cAAc,CAAC;QACpB,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IAChC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAEzD,MAAM,MAAM,GAER;QACF,GAAG,GAAG;QACN,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;KACzC,CAAA;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAc,EAAE,EAAE;IAChD,MAAM,OAAO,GACX,MAAM,CAAC,iBAAiB,CAAC;QACvB,IAAI,OAAO;YACT,OAAO,EAAE,CAAA;QACX,CAAC;QAED,eAAe,EAAE,EAA4B;QAC7C,GAAG,CAAC,GAAG,EAAE,OAAO;YACd,OAAO,qBAAqB,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAA;QACpD,CAAC;QACD,IAAI,CAAC,GAAG,EAAE,OAAO;YACf,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;YACzB,OAAO,OAAO,CAAC,IAAI,CAAA;YACnB,MAAM,SAAS,GAAY;gBACzB,GAAG,OAAO;gBACV,IAAI,EAAE,IAAI;aACX,CAAA;YAED,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;QACvD,CAAC;QACD,GAAG,CAAC,GAAG,EAAE,OAAO;YACd,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;YACzB,OAAO,OAAO,CAAC,IAAI,CAAA;YACnB,MAAM,SAAS,GAAY;gBACzB,GAAG,OAAO;gBACV,IAAI,EAAE,IAAI;aACX,CAAA;YACD,OAAO,qBAAqB,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;QACtD,CAAC;QAED,KAAK,CAAC,GAAG,EAAE,OAAO;YAChB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;YACzB,OAAO,OAAO,CAAC,IAAI,CAAA;YACnB,MAAM,SAAS,GAAY;gBACzB,GAAG,OAAO;gBACV,IAAI,EAAE,IAAI;aACX,CAAA;YACD,OAAO,qBAAqB,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,OAAO;YACjB,OAAO,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAA;QACvD,CAAC;KACF,CAAC,CAAA;IACJ,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;AAEtD,oDAAoD;AACpD,eAAe,gBAAgB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { IRequestAdapter } from '~/interfaces/adapter';
2
+ import type { RequestMethod, RequestResponse } from 'umi-request';
3
+ export declare const umiAdaptor: IRequestAdapter<RequestMethod<true>, RequestResponse>;
4
+ export default umiAdaptor;
@@ -0,0 +1,31 @@
1
+ import { extend } from 'umi-request';
2
+ // eslint-disable-next-line spaced-comment
3
+ const $http = /*#__PURE__*/ extend({
4
+ getResponse: true,
5
+ requestType: 'json',
6
+ responseType: 'json',
7
+ });
8
+ export const umiAdaptor = Object.preventExtensions({
9
+ get default() {
10
+ return $http;
11
+ },
12
+ responseWrapper: {},
13
+ get(url, options) {
14
+ return $http.get(url, options);
15
+ },
16
+ post(url, options) {
17
+ return $http.post(url, options);
18
+ },
19
+ put(url, options) {
20
+ return $http.put(url, options);
21
+ },
22
+ delete(url, options) {
23
+ return $http.delete(url, options);
24
+ },
25
+ patch(url, options) {
26
+ return $http.patch(url, options);
27
+ },
28
+ });
29
+ // eslint-disable-next-line import/no-default-export
30
+ export default umiAdaptor;
31
+ //# sourceMappingURL=umi-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"umi-request.js","sourceRoot":"","sources":["../../../../adaptors/umi-request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIpC,0CAA0C;AAC1C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,MAAM;IACnB,YAAY,EAAE,MAAM;CACrB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,UAAU,GAGnB,MAAM,CAAC,iBAAiB,CAAC;IAC3B,IAAI,OAAO;QACT,OAAO,KAAK,CAAA;IACd,CAAC;IACD,eAAe,EAAE,EAA4B;IAC7C,GAAG,CAAC,GAAG,EAAE,OAAO;QACd,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAChC,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,OAAO;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACjC,CAAC;IACD,GAAG,CAAC,GAAG,EAAE,OAAO;QACd,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAChC,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,OAAO;QACjB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACnC,CAAC;IACD,KAAK,CAAC,GAAG,EAAE,OAAO;QAChB,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAClC,CAAC;CACF,CAAC,CAAA;AAEF,oDAAoD;AACpD,eAAe,UAAU,CAAA"}
@@ -0,0 +1,64 @@
1
+ import type { IRequestAdapter } from '~/interfaces/adapter';
2
+ import type { IController } from '~/interfaces/controller';
3
+ import type { SortOrder } from '~/interfaces/options';
4
+ import type { IRequestHandler, RequestProxyResult } from '~/interfaces/request';
5
+ import type { AggregateRootWithTheme, AggregateStat, AggregateTop, TimelineData, TimelineType } from '~/models/aggregate';
6
+ import type { HTTPClient } from '../core';
7
+ declare module '../core/client' {
8
+ interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
9
+ aggregate: AggregateController<ResponseWrapper>;
10
+ }
11
+ }
12
+ export declare class AggregateController<ResponseWrapper> implements IController {
13
+ private client;
14
+ base: string;
15
+ name: string;
16
+ constructor(client: HTTPClient);
17
+ get proxy(): IRequestHandler<ResponseWrapper>;
18
+ /**
19
+ * 获取聚合数据
20
+ */
21
+ getAggregateData<Theme>(theme?: string): RequestProxyResult<AggregateRootWithTheme<Theme>, ResponseWrapper>;
22
+ /**
23
+ * 获取最新发布的内容
24
+ */
25
+ getTop(size?: number): RequestProxyResult<AggregateTop, ResponseWrapper, ResponseWrapper extends unknown ? {
26
+ [key: string]: any;
27
+ data: AggregateTop;
28
+ } : ResponseWrapper extends {
29
+ data: AggregateTop;
30
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
31
+ data: AggregateTop;
32
+ }>;
33
+ getTimeline(options?: {
34
+ sort?: SortOrder;
35
+ type?: TimelineType;
36
+ year?: number;
37
+ }): RequestProxyResult<{
38
+ data: TimelineData;
39
+ }, ResponseWrapper, ResponseWrapper extends unknown ? {
40
+ [key: string]: any;
41
+ data: {
42
+ data: TimelineData;
43
+ };
44
+ } : ResponseWrapper extends {
45
+ data: {
46
+ data: TimelineData;
47
+ };
48
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
49
+ data: {
50
+ data: TimelineData;
51
+ };
52
+ }>;
53
+ /**
54
+ * 获取聚合数据统计
55
+ */
56
+ getStat(): RequestProxyResult<AggregateStat, ResponseWrapper, ResponseWrapper extends unknown ? {
57
+ [key: string]: any;
58
+ data: AggregateStat;
59
+ } : ResponseWrapper extends {
60
+ data: AggregateStat;
61
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
62
+ data: AggregateStat;
63
+ }>;
64
+ }
@@ -0,0 +1,46 @@
1
+ import { sortOrderToNumber } from '~/utils';
2
+ import { autoBind } from '~/utils/auto-bind';
3
+ export class AggregateController {
4
+ constructor(client) {
5
+ this.client = client;
6
+ this.base = 'aggregate';
7
+ this.name = 'aggregate';
8
+ autoBind(this);
9
+ }
10
+ get proxy() {
11
+ return this.client.proxy(this.base);
12
+ }
13
+ /**
14
+ * 获取聚合数据
15
+ */
16
+ getAggregateData(theme) {
17
+ return this.proxy.get({
18
+ params: {
19
+ theme,
20
+ },
21
+ });
22
+ }
23
+ /**
24
+ * 获取最新发布的内容
25
+ */
26
+ getTop(size = 5) {
27
+ return this.proxy.top.get({ params: { size } });
28
+ }
29
+ getTimeline(options) {
30
+ const { sort, type, year } = options || {};
31
+ return this.proxy.timeline.get({
32
+ params: {
33
+ sort: sort && sortOrderToNumber(sort),
34
+ type,
35
+ year,
36
+ },
37
+ });
38
+ }
39
+ /**
40
+ * 获取聚合数据统计
41
+ */
42
+ getStat() {
43
+ return this.proxy.stat.get();
44
+ }
45
+ }
46
+ //# sourceMappingURL=aggregate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../../../controllers/aggregate.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAW5C,MAAM,OAAO,mBAAmB;IAG9B,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAFtC,SAAI,GAAG,WAAW,CAAA;QAClB,SAAI,GAAG,WAAW,CAAA;QAEhB,QAAQ,CAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IACD,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED;;OAEG;IACH,gBAAgB,CACd,KAAc;QAEd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgC;YACnD,MAAM,EAAE;gBACN,KAAK;aACN;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,GAAG,CAAC;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAe,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,WAAW,CAAC,OAIX;QACC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAyB;YACrD,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC;gBACrC,IAAI;gBACJ,IAAI;aACL;SACF,CAAC,CAAA;IACJ,CAAC;IACD;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAiB,CAAA;IAC7C,CAAC;CACF"}