@mx-space/api-client 0.0.5 → 0.3.1

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 (170) hide show
  1. package/build/index.cjs.js +411 -53
  2. package/build/index.cjs.js.map +1 -1
  3. package/build/index.cjs.min.js +1 -1
  4. package/build/index.cjs.min.js.map +1 -1
  5. package/build/index.d.ts +463 -108
  6. package/build/index.esm.js +411 -53
  7. package/build/index.esm.js.map +1 -1
  8. package/build/index.esm.min.js +1 -1
  9. package/build/index.esm.min.js.map +1 -1
  10. package/build/index.umd.js +411 -53
  11. package/build/index.umd.js.map +1 -1
  12. package/build/index.umd.min.js +1 -1
  13. package/build/index.umd.min.js.map +1 -1
  14. package/esm/core/attachRequest.js +4 -0
  15. package/esm/core/attachRequest.js.map +1 -1
  16. package/esm/core/client.d.ts +2 -9
  17. package/esm/core/client.js +16 -2
  18. package/esm/core/client.js.map +1 -1
  19. package/esm/core/controllers/aggregate.d.ts +44 -0
  20. package/esm/core/controllers/aggregate.js +40 -0
  21. package/esm/core/controllers/aggregate.js.map +1 -0
  22. package/esm/core/controllers/all.d.ts +13 -2
  23. package/esm/core/controllers/all.js +38 -9
  24. package/esm/core/controllers/all.js.map +1 -1
  25. package/esm/core/controllers/base.d.ts +29 -0
  26. package/esm/core/controllers/base.js +25 -0
  27. package/esm/core/controllers/base.js.map +1 -0
  28. package/esm/core/controllers/category.d.ts +44 -0
  29. package/esm/core/controllers/category.js +66 -0
  30. package/esm/core/controllers/category.js.map +1 -0
  31. package/esm/core/controllers/index.d.ts +0 -2
  32. package/esm/core/controllers/index.js +0 -3
  33. package/esm/core/controllers/index.js.map +1 -1
  34. package/esm/core/controllers/link.d.ts +9 -0
  35. package/esm/core/controllers/link.js +10 -0
  36. package/esm/core/controllers/link.js.map +1 -0
  37. package/esm/core/controllers/project.d.ts +9 -0
  38. package/esm/core/controllers/project.js +10 -0
  39. package/esm/core/controllers/project.js.map +1 -0
  40. package/esm/core/controllers/recently.d.ts +33 -0
  41. package/esm/core/controllers/recently.js +32 -0
  42. package/esm/core/controllers/recently.js.map +1 -0
  43. package/esm/core/controllers/say.d.ts +22 -0
  44. package/esm/core/controllers/say.js +19 -0
  45. package/esm/core/controllers/say.js.map +1 -0
  46. package/esm/core/controllers/search.d.ts +58 -0
  47. package/esm/core/controllers/search.js +26 -0
  48. package/esm/core/controllers/search.js.map +1 -0
  49. package/esm/core/controllers/snippet.d.ts +18 -0
  50. package/esm/core/controllers/snippet.js +17 -0
  51. package/esm/core/controllers/snippet.js.map +1 -0
  52. package/esm/core/controllers/user.d.ts +28 -0
  53. package/esm/core/controllers/user.js +29 -0
  54. package/esm/core/controllers/user.js.map +1 -0
  55. package/esm/core/define.d.ts +19 -0
  56. package/esm/core/define.js +12 -0
  57. package/esm/core/define.js.map +1 -0
  58. package/esm/interfaces/options.d.ts +1 -0
  59. package/esm/interfaces/options.js +2 -0
  60. package/esm/interfaces/options.js.map +1 -0
  61. package/esm/interfaces/request.d.ts +9 -3
  62. package/esm/models/aggregate.d.ts +47 -0
  63. package/esm/models/aggregate.js +6 -0
  64. package/esm/models/aggregate.js.map +1 -0
  65. package/esm/models/category.d.ts +24 -0
  66. package/esm/models/category.js +6 -0
  67. package/esm/models/category.js.map +1 -0
  68. package/esm/models/link.d.ts +17 -0
  69. package/esm/models/link.js +11 -0
  70. package/esm/models/link.js.map +1 -0
  71. package/esm/models/project.d.ts +16 -0
  72. package/esm/models/project.js +2 -0
  73. package/esm/models/project.js.map +1 -0
  74. package/esm/models/recently.d.ts +5 -0
  75. package/esm/models/recently.js +2 -0
  76. package/esm/models/recently.js.map +1 -0
  77. package/esm/models/say.d.ts +6 -0
  78. package/esm/models/say.js +2 -0
  79. package/esm/models/say.js.map +1 -0
  80. package/esm/models/setting.d.ts +66 -0
  81. package/esm/models/setting.js +2 -0
  82. package/esm/models/setting.js.map +1 -0
  83. package/esm/models/snippet.d.ts +14 -0
  84. package/esm/models/snippet.js +7 -0
  85. package/esm/models/snippet.js.map +1 -0
  86. package/esm/models/user.d.ts +29 -0
  87. package/esm/models/user.js +2 -0
  88. package/esm/models/user.js.map +1 -0
  89. package/esm/utils/index.d.ts +4 -0
  90. package/esm/utils/index.js +38 -0
  91. package/esm/utils/index.js.map +1 -1
  92. package/lib/core/attachRequest.js +4 -0
  93. package/lib/core/attachRequest.js.map +1 -1
  94. package/lib/core/client.d.ts +2 -9
  95. package/lib/core/client.js +16 -2
  96. package/lib/core/client.js.map +1 -1
  97. package/lib/core/controllers/aggregate.d.ts +44 -0
  98. package/lib/core/controllers/aggregate.js +44 -0
  99. package/lib/core/controllers/aggregate.js.map +1 -0
  100. package/lib/core/controllers/all.d.ts +13 -2
  101. package/lib/core/controllers/all.js +52 -11
  102. package/lib/core/controllers/all.js.map +1 -1
  103. package/lib/core/controllers/base.d.ts +29 -0
  104. package/lib/core/controllers/base.js +29 -0
  105. package/lib/core/controllers/base.js.map +1 -0
  106. package/lib/core/controllers/category.d.ts +44 -0
  107. package/lib/core/controllers/category.js +70 -0
  108. package/lib/core/controllers/category.js.map +1 -0
  109. package/lib/core/controllers/index.d.ts +0 -2
  110. package/lib/core/controllers/index.js +0 -3
  111. package/lib/core/controllers/index.js.map +1 -1
  112. package/lib/core/controllers/link.d.ts +9 -0
  113. package/lib/core/controllers/link.js +14 -0
  114. package/lib/core/controllers/link.js.map +1 -0
  115. package/lib/core/controllers/project.d.ts +9 -0
  116. package/lib/core/controllers/project.js +14 -0
  117. package/lib/core/controllers/project.js.map +1 -0
  118. package/lib/core/controllers/recently.d.ts +33 -0
  119. package/lib/core/controllers/recently.js +36 -0
  120. package/lib/core/controllers/recently.js.map +1 -0
  121. package/lib/core/controllers/say.d.ts +22 -0
  122. package/lib/core/controllers/say.js +23 -0
  123. package/lib/core/controllers/say.js.map +1 -0
  124. package/lib/core/controllers/search.d.ts +58 -0
  125. package/lib/core/controllers/search.js +30 -0
  126. package/lib/core/controllers/search.js.map +1 -0
  127. package/lib/core/controllers/snippet.d.ts +18 -0
  128. package/lib/core/controllers/snippet.js +21 -0
  129. package/lib/core/controllers/snippet.js.map +1 -0
  130. package/lib/core/controllers/user.d.ts +28 -0
  131. package/lib/core/controllers/user.js +33 -0
  132. package/lib/core/controllers/user.js.map +1 -0
  133. package/lib/core/define.d.ts +19 -0
  134. package/lib/core/define.js +16 -0
  135. package/lib/core/define.js.map +1 -0
  136. package/lib/interfaces/options.d.ts +1 -0
  137. package/lib/interfaces/options.js +3 -0
  138. package/lib/interfaces/options.js.map +1 -0
  139. package/lib/interfaces/request.d.ts +9 -3
  140. package/lib/models/aggregate.d.ts +47 -0
  141. package/lib/models/aggregate.js +9 -0
  142. package/lib/models/aggregate.js.map +1 -0
  143. package/lib/models/category.d.ts +24 -0
  144. package/lib/models/category.js +9 -0
  145. package/lib/models/category.js.map +1 -0
  146. package/lib/models/link.d.ts +17 -0
  147. package/lib/models/link.js +14 -0
  148. package/lib/models/link.js.map +1 -0
  149. package/lib/models/project.d.ts +16 -0
  150. package/lib/models/project.js +3 -0
  151. package/lib/models/project.js.map +1 -0
  152. package/lib/models/recently.d.ts +5 -0
  153. package/lib/models/recently.js +3 -0
  154. package/lib/models/recently.js.map +1 -0
  155. package/lib/models/say.d.ts +6 -0
  156. package/lib/models/say.js +3 -0
  157. package/lib/models/say.js.map +1 -0
  158. package/lib/models/setting.d.ts +66 -0
  159. package/lib/models/setting.js +3 -0
  160. package/lib/models/setting.js.map +1 -0
  161. package/lib/models/snippet.d.ts +14 -0
  162. package/lib/models/snippet.js +10 -0
  163. package/lib/models/snippet.js.map +1 -0
  164. package/lib/models/user.d.ts +29 -0
  165. package/lib/models/user.js +3 -0
  166. package/lib/models/user.js.map +1 -0
  167. package/lib/utils/index.d.ts +4 -0
  168. package/lib/utils/index.js +42 -1
  169. package/lib/utils/index.js.map +1 -1
  170. package/package.json +11 -11
@@ -1,5 +1,16 @@
1
- import { NoteController, PostController } from '.';
1
+ import { AggregateController } from './aggregate';
2
+ import { CategoryController } from './category';
2
3
  import { CommentController } from './comment';
4
+ import { LinkController } from './link';
5
+ import { NoteController } from './note';
3
6
  import { PageController } from './page';
4
- export declare const allControllers: (typeof NoteController | typeof PostController | typeof CommentController | typeof PageController)[];
7
+ import { PostController } from './post';
8
+ import { ProjectController } from './project';
9
+ import { RecentlyController } from './recently';
10
+ import { SayController } from './say';
11
+ import { SearchController } from './search';
12
+ import { SnippetController } from './snippet';
13
+ import { UserController } from './user';
14
+ export 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 SnippetController | typeof UserController)[];
5
15
  export declare const allContollerNames: string[];
16
+ export { AggregateController, CategoryController, CommentController, LinkController, NoteController, PageController, PostController, ProjectController, RecentlyController, SayController, SearchController, SnippetController, UserController, };
@@ -1,19 +1,60 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.allContollerNames = exports.allControllers = void 0;
4
- const _1 = require(".");
3
+ exports.UserController = exports.SnippetController = exports.SearchController = exports.SayController = exports.RecentlyController = exports.ProjectController = exports.PostController = exports.PageController = exports.NoteController = exports.LinkController = exports.CommentController = exports.CategoryController = exports.AggregateController = exports.allContollerNames = exports.allControllers = void 0;
4
+ const aggregate_1 = require("./aggregate");
5
+ Object.defineProperty(exports, "AggregateController", { enumerable: true, get: function () { return aggregate_1.AggregateController; } });
6
+ const category_1 = require("./category");
7
+ Object.defineProperty(exports, "CategoryController", { enumerable: true, get: function () { return category_1.CategoryController; } });
5
8
  const comment_1 = require("./comment");
9
+ Object.defineProperty(exports, "CommentController", { enumerable: true, get: function () { return comment_1.CommentController; } });
10
+ const link_1 = require("./link");
11
+ Object.defineProperty(exports, "LinkController", { enumerable: true, get: function () { return link_1.LinkController; } });
12
+ const note_1 = require("./note");
13
+ Object.defineProperty(exports, "NoteController", { enumerable: true, get: function () { return note_1.NoteController; } });
6
14
  const page_1 = require("./page");
15
+ Object.defineProperty(exports, "PageController", { enumerable: true, get: function () { return page_1.PageController; } });
16
+ const post_1 = require("./post");
17
+ Object.defineProperty(exports, "PostController", { enumerable: true, get: function () { return post_1.PostController; } });
18
+ const project_1 = require("./project");
19
+ Object.defineProperty(exports, "ProjectController", { enumerable: true, get: function () { return project_1.ProjectController; } });
20
+ const recently_1 = require("./recently");
21
+ Object.defineProperty(exports, "RecentlyController", { enumerable: true, get: function () { return recently_1.RecentlyController; } });
22
+ const say_1 = require("./say");
23
+ Object.defineProperty(exports, "SayController", { enumerable: true, get: function () { return say_1.SayController; } });
24
+ const search_1 = require("./search");
25
+ Object.defineProperty(exports, "SearchController", { enumerable: true, get: function () { return search_1.SearchController; } });
26
+ const snippet_1 = require("./snippet");
27
+ Object.defineProperty(exports, "SnippetController", { enumerable: true, get: function () { return snippet_1.SnippetController; } });
28
+ const user_1 = require("./user");
29
+ Object.defineProperty(exports, "UserController", { enumerable: true, get: function () { return user_1.UserController; } });
7
30
  exports.allControllers = [
8
- _1.NoteController,
9
- _1.PostController,
10
- page_1.PageController,
31
+ aggregate_1.AggregateController,
32
+ category_1.CategoryController,
11
33
  comment_1.CommentController,
34
+ link_1.LinkController,
35
+ note_1.NoteController,
36
+ page_1.PageController,
37
+ post_1.PostController,
38
+ project_1.ProjectController,
39
+ recently_1.RecentlyController,
40
+ say_1.SayController,
41
+ search_1.SearchController,
42
+ snippet_1.SnippetController,
43
+ user_1.UserController,
44
+ ];
45
+ exports.allContollerNames = [
46
+ 'aggregate',
47
+ 'category',
48
+ 'comment',
49
+ 'link',
50
+ 'note',
51
+ 'page',
52
+ 'post',
53
+ 'project',
54
+ 'recently',
55
+ 'say',
56
+ 'search',
57
+ 'snippet',
58
+ 'user',
12
59
  ];
13
- // export const allClientName = allClients.map((c) =>
14
- // c.name.replace('Client', '').toLowerCase(),
15
- // )
16
- // Why not code like before
17
- // In order to tree shake unnecessary client
18
- exports.allContollerNames = ['note', 'post', 'page', 'comment'];
19
60
  //# sourceMappingURL=all.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"all.js","sourceRoot":"","sources":["../../../src/core/controllers/all.ts"],"names":[],"mappings":";;;AAAA,wBAAkD;AAClD,uCAA6C;AAC7C,iCAAuC;AAE1B,QAAA,cAAc,GAAG;IAC5B,iBAAc;IACd,iBAAc;IACd,qBAAc;IACd,2BAAiB;CAClB,CAAA;AAED,qDAAqD;AACrD,gDAAgD;AAChD,IAAI;AACJ,2BAA2B;AAC3B,4CAA4C;AAC/B,QAAA,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA"}
1
+ {"version":3,"file":"all.js","sourceRoot":"","sources":["../../../src/core/controllers/all.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AA+C/C,oGA/CO,+BAAmB,OA+CP;AA9CrB,yCAA+C;AA+C7C,mGA/CO,6BAAkB,OA+CP;AA9CpB,uCAA6C;AA+C3C,kGA/CO,2BAAiB,OA+CP;AA9CnB,iCAAuC;AA+CrC,+FA/CO,qBAAc,OA+CP;AA9ChB,iCAAuC;AA+CrC,+FA/CO,qBAAc,OA+CP;AA9ChB,iCAAuC;AA+CrC,+FA/CO,qBAAc,OA+CP;AA9ChB,iCAAuC;AA+CrC,+FA/CO,qBAAc,OA+CP;AA9ChB,uCAA6C;AA+C3C,kGA/CO,2BAAiB,OA+CP;AA9CnB,yCAA+C;AA+C7C,mGA/CO,6BAAkB,OA+CP;AA9CpB,+BAAqC;AA+CnC,8FA/CO,mBAAa,OA+CP;AA9Cf,qCAA2C;AA+CzC,iGA/CO,yBAAgB,OA+CP;AA9ClB,uCAA6C;AA+C3C,kGA/CO,2BAAiB,OA+CP;AA9CnB,iCAAuC;AA+CrC,+FA/CO,qBAAc,OA+CP;AA7CH,QAAA,cAAc,GAAG;IAC5B,+BAAmB;IACnB,6BAAkB;IAClB,2BAAiB;IACjB,qBAAc;IACd,qBAAc;IACd,qBAAc;IACd,qBAAc;IACd,2BAAiB;IACjB,6BAAkB;IAClB,mBAAa;IACb,yBAAgB;IAChB,2BAAiB;IACjB,qBAAc;CACf,CAAA;AAEY,QAAA,iBAAiB,GAAG;IAC/B,WAAW;IACX,UAAU;IACV,SAAS;IACT,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,UAAU;IACV,KAAK;IACL,QAAQ;IACR,SAAS;IACT,MAAM;CACP,CAAA"}
@@ -0,0 +1,29 @@
1
+ import { PaginateResult } from "../../models/base";
2
+ import { HTTPClient } from '..';
3
+ export declare abstract class BaseCrudController<T> {
4
+ protected client: HTTPClient;
5
+ base: string;
6
+ constructor(client: HTTPClient);
7
+ protected get proxy(): import("../../interfaces/request").IRequestHandler;
8
+ getById(id: string): import("../../interfaces/request").RequestProxyResult<T, {
9
+ [key: string]: any;
10
+ data: T;
11
+ }>;
12
+ getAll(): import("../../interfaces/request").RequestProxyResult<{
13
+ data: T[];
14
+ }, {
15
+ [key: string]: any;
16
+ data: {
17
+ data: T[];
18
+ };
19
+ }>;
20
+ /**
21
+ * 带分页的查询
22
+ * @param page
23
+ * @param perPage
24
+ */
25
+ getAllPaginated(page?: number, perPage?: number): import("../../interfaces/request").RequestProxyResult<PaginateResult<T>, {
26
+ [key: string]: any;
27
+ data: PaginateResult<T>;
28
+ }>;
29
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseCrudController = void 0;
4
+ class BaseCrudController {
5
+ constructor(client) {
6
+ this.client = client;
7
+ }
8
+ get proxy() {
9
+ return this.client.proxy(this.base);
10
+ }
11
+ getById(id) {
12
+ return this.proxy(id).get();
13
+ }
14
+ getAll() {
15
+ return this.proxy.all.get();
16
+ }
17
+ /**
18
+ * 带分页的查询
19
+ * @param page
20
+ * @param perPage
21
+ */
22
+ getAllPaginated(page, perPage) {
23
+ return this.proxy.get({
24
+ params: { page, size: perPage },
25
+ });
26
+ }
27
+ }
28
+ exports.BaseCrudController = BaseCrudController;
29
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/core/controllers/base.ts"],"names":[],"mappings":";;;AAGA,MAAsB,kBAAkB;IAEtC,YAAsB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAC5C,IAAc,KAAK;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,EAAK,CAAA;IAChC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAiB,CAAA;IAC5C,CAAC;IACD;;;;OAIG;IACH,eAAe,CAAC,IAAa,EAAE,OAAgB;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB;YACvC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE;SAChC,CAAC,CAAA;IACJ,CAAC;CACF;AAxBD,gDAwBC"}
@@ -0,0 +1,44 @@
1
+ import { IController } from "../../interfaces/controller";
2
+ import { ResponseProxyExtraRaw } from "../../interfaces/request";
3
+ import { CategoryWithChildrenModel, TagModel } from "../../models/category";
4
+ import { CategoryModel, PostModel } from "../../models/post";
5
+ import { HTTPClient } from '..';
6
+ export declare class CategoryController implements IController {
7
+ private client;
8
+ name: string;
9
+ base: string;
10
+ constructor(client: HTTPClient);
11
+ private get proxy();
12
+ getAllCategories(): import("../../interfaces/request").RequestProxyResult<{
13
+ data: CategoryModel[];
14
+ }, {
15
+ [key: string]: any;
16
+ data: {
17
+ data: CategoryModel[];
18
+ };
19
+ }>;
20
+ getAllTags(): import("../../interfaces/request").RequestProxyResult<{
21
+ data: TagModel[];
22
+ }, {
23
+ [key: string]: any;
24
+ data: {
25
+ data: TagModel[];
26
+ };
27
+ }>;
28
+ getCategoryDetail(id: string): Promise<ResponseProxyExtraRaw<CategoryWithChildrenModel>>;
29
+ getCategoryDetail(ids: string[]): Promise<ResponseProxyExtraRaw<Map<string, CategoryWithChildrenModel>>>;
30
+ getCategoryByIdOrSlug(idOrSlug: string): Promise<ResponseProxyExtraRaw<CategoryWithChildrenModel, {
31
+ [key: string]: any;
32
+ data: CategoryWithChildrenModel;
33
+ }>>;
34
+ getTagByName(name: string): Promise<ResponseProxyExtraRaw<{
35
+ tag: string;
36
+ data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
37
+ }, {
38
+ [key: string]: any;
39
+ data: {
40
+ tag: string;
41
+ data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
42
+ };
43
+ }>>;
44
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CategoryController = void 0;
4
+ const category_1 = require("../../models/category");
5
+ const utils_1 = require("../../utils");
6
+ const __1 = require("..");
7
+ class CategoryController {
8
+ constructor(client) {
9
+ this.client = client;
10
+ this.name = 'category';
11
+ this.base = 'categories';
12
+ }
13
+ get proxy() {
14
+ return this.client.proxy(this.base);
15
+ }
16
+ getAllCategories() {
17
+ return this.proxy.get({
18
+ params: {
19
+ type: category_1.CategoryType.Category,
20
+ },
21
+ });
22
+ }
23
+ getAllTags() {
24
+ return this.proxy.get({
25
+ params: {
26
+ type: category_1.CategoryType.Tag,
27
+ },
28
+ });
29
+ }
30
+ async getCategoryDetail(ids) {
31
+ if (typeof ids === 'string') {
32
+ const data = await this.proxy.get({
33
+ params: {
34
+ ids: ids,
35
+ },
36
+ });
37
+ const result = Object.values(data.entries)[0];
38
+ (0, utils_1.attachRawFromOneToAnthor)(data, result);
39
+ return result;
40
+ }
41
+ else if (Array.isArray(ids)) {
42
+ const data = await this.proxy.get({
43
+ params: {
44
+ ids: ids.join(','),
45
+ },
46
+ });
47
+ const entries = data === null || data === void 0 ? void 0 : data.entries;
48
+ if (!entries) {
49
+ throw new __1.RequestError('data structure error', 500, data.$request.path, data);
50
+ }
51
+ const map = new Map(Object.entries(entries).map(([id, value]) => [id.toLowerCase(), value]));
52
+ (0, utils_1.attachRawFromOneToAnthor)(data, map);
53
+ return map;
54
+ }
55
+ }
56
+ async getCategoryByIdOrSlug(idOrSlug) {
57
+ const res = await this.proxy(idOrSlug).get();
58
+ return (0, utils_1.destructureData)(res);
59
+ }
60
+ async getTagByName(name) {
61
+ const res = await this.proxy(name).get({
62
+ params: {
63
+ tag: 1,
64
+ },
65
+ });
66
+ return res;
67
+ }
68
+ }
69
+ exports.CategoryController = CategoryController;
70
+ //# sourceMappingURL=category.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category.js","sourceRoot":"","sources":["../../../src/core/controllers/category.ts"],"names":[],"mappings":";;;AAEA,oDAK0B;AAE1B,uCAAmE;AACnE,0BAA6C;AAE7C,MAAa,kBAAkB;IAG7B,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAFtC,SAAI,GAAG,UAAU,CAAA;QACjB,SAAI,GAAG,YAAY,CAAA;IACsB,CAAC;IAE1C,IAAY,KAAK;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B;YAC/C,MAAM,EAAE;gBACN,IAAI,EAAE,uBAAY,CAAC,QAAQ;aAC5B;SACF,CAAC,CAAA;IACJ,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAuB;YAC1C,MAAM,EAAE;gBACN,IAAI,EAAE,uBAAY,CAAC,GAAG;aACvB;SACF,CAAC,CAAA;IACJ,CAAC;IAQD,KAAK,CAAC,iBAAiB,CAAC,GAAsB;QAC5C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB;gBACjD,MAAM,EAAE;oBACN,GAAG,EAAE,GAAG;iBACT;aACF,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7C,IAAA,gCAAwB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YACtC,OAAO,MAAM,CAAA;SACd;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB;gBACjD,MAAM,EAAE;oBACN,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;iBACnB;aACF,CAAC,CAAA;YACF,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,CAAA;YAC7B,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,gBAAY,CACpB,sBAAsB,EACtB,GAAG,EACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAClB,IAAI,CACL,CAAA;aACF;YAED,MAAM,GAAG,GAAG,IAAI,GAAG,CACjB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC,CACxE,CAAA;YAED,IAAA,gCAAwB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,OAAO,GAAG,CAAA;SACX;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,EAA6B,CAAA;QACvE,OAAO,IAAA,uBAAe,EAAC,GAAG,CAAe,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAGnC;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,CAAC;aACP;SACF,CAAC,CAAA;QAEF,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AAnFD,gDAmFC"}
@@ -1,3 +1 @@
1
- export * from './note';
2
- export * from './post';
3
1
  export * from './all';
@@ -10,8 +10,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./note"), exports);
14
- __exportStar(require("./post"), exports);
15
- // organize-imports-ignore
16
13
  __exportStar(require("./all"), exports);
17
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAsB;AACtB,yCAAsB;AACtB,0BAA0B;AAC1B,wCAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAqB"}
@@ -0,0 +1,9 @@
1
+ import { LinkModel } from "../../models/link";
2
+ import { HTTPClient } from '..';
3
+ import { BaseCrudController } from './base';
4
+ export declare class LinkController extends BaseCrudController<LinkModel> {
5
+ protected readonly client: HTTPClient;
6
+ constructor(client: HTTPClient);
7
+ name: string;
8
+ base: string;
9
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LinkController = void 0;
4
+ const base_1 = require("./base");
5
+ class LinkController extends base_1.BaseCrudController {
6
+ constructor(client) {
7
+ super(client);
8
+ this.client = client;
9
+ this.name = 'link';
10
+ this.base = 'links';
11
+ }
12
+ }
13
+ exports.LinkController = LinkController;
14
+ //# sourceMappingURL=link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.js","sourceRoot":"","sources":["../../../src/core/controllers/link.ts"],"names":[],"mappings":";;;AAEA,iCAA2C;AAE3C,MAAa,cAAe,SAAQ,yBAA6B;IAC/D,YAA+B,MAAkB;QAC/C,KAAK,CAAC,MAAM,CAAC,CAAA;QADgB,WAAM,GAAN,MAAM,CAAY;QAIjD,SAAI,GAAG,MAAM,CAAA;QACb,SAAI,GAAG,OAAO,CAAA;IAHd,CAAC;CAIF;AAPD,wCAOC"}
@@ -0,0 +1,9 @@
1
+ import { ProjectModel } from "../../models/project";
2
+ import { HTTPClient } from '..';
3
+ import { BaseCrudController } from './base';
4
+ export declare class ProjectController extends BaseCrudController<ProjectModel> {
5
+ protected readonly client: HTTPClient;
6
+ constructor(client: HTTPClient);
7
+ base: string;
8
+ name: string;
9
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectController = void 0;
4
+ const base_1 = require("./base");
5
+ class ProjectController extends base_1.BaseCrudController {
6
+ constructor(client) {
7
+ super(client);
8
+ this.client = client;
9
+ this.base = 'projects';
10
+ this.name = 'project';
11
+ }
12
+ }
13
+ exports.ProjectController = ProjectController;
14
+ //# sourceMappingURL=project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/core/controllers/project.ts"],"names":[],"mappings":";;;AAEA,iCAA2C;AAE3C,MAAa,iBAAkB,SAAQ,yBAAgC;IACrE,YAA+B,MAAkB;QAC/C,KAAK,CAAC,MAAM,CAAC,CAAA;QADgB,WAAM,GAAN,MAAM,CAAY;QAIjD,SAAI,GAAG,UAAU,CAAA;QACjB,SAAI,GAAG,SAAS,CAAA;IAHhB,CAAC;CAIF;AAPD,8CAOC"}
@@ -0,0 +1,33 @@
1
+ import { IController } from "../../interfaces/controller";
2
+ import { RecentlyModel } from "../../models/recently";
3
+ import { HTTPClient } from '..';
4
+ export declare class RecentlyController implements IController {
5
+ private readonly client;
6
+ base: string;
7
+ name: string;
8
+ constructor(client: HTTPClient);
9
+ get proxy(): import("../../interfaces/request").IRequestHandler;
10
+ /**
11
+ * 获取最新一条
12
+ */
13
+ getLatestOne(): import("../../interfaces/request").RequestProxyResult<RecentlyModel, {
14
+ [key: string]: any;
15
+ data: RecentlyModel;
16
+ }>;
17
+ getAll(): import("../../interfaces/request").RequestProxyResult<{
18
+ data: RecentlyModel[];
19
+ }, {
20
+ [key: string]: any;
21
+ data: {
22
+ data: RecentlyModel[];
23
+ };
24
+ }>;
25
+ getList(before?: string | undefined, after?: string | undefined, size?: number | number): import("../../interfaces/request").RequestProxyResult<{
26
+ data: RecentlyModel[];
27
+ }, {
28
+ [key: string]: any;
29
+ data: {
30
+ data: RecentlyModel[];
31
+ };
32
+ }>;
33
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecentlyController = void 0;
4
+ class RecentlyController {
5
+ constructor(client) {
6
+ this.client = client;
7
+ this.base = 'recently';
8
+ this.name = 'recently';
9
+ }
10
+ get proxy() {
11
+ return this.client.proxy(this.base);
12
+ }
13
+ /**
14
+ * 获取最新一条
15
+ */
16
+ getLatestOne() {
17
+ return this.proxy.latest.get();
18
+ }
19
+ getAll() {
20
+ return this.proxy.all.get();
21
+ }
22
+ getList(before, after, size) {
23
+ if (!before && !after) {
24
+ throw new Error('you can only choose `before` or `after`');
25
+ }
26
+ return this.proxy.get({
27
+ params: {
28
+ before,
29
+ after,
30
+ size,
31
+ },
32
+ });
33
+ }
34
+ }
35
+ exports.RecentlyController = RecentlyController;
36
+ //# sourceMappingURL=recently.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recently.js","sourceRoot":"","sources":["../../../src/core/controllers/recently.ts"],"names":[],"mappings":";;;AAIA,MAAa,kBAAkB;IAI7B,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAH/C,SAAI,GAAG,UAAU,CAAA;QACjB,SAAI,GAAG,UAAU,CAAA;IAEiC,CAAC;IAEnD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IACD;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAiB,CAAA;IAC/C,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAA6B,CAAA;IACxD,CAAC;IAED,OAAO,CACL,MAA2B,EAC3B,KAA0B,EAC1B,IAAsB;QAEtB,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;SAC3D;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B;YAC/C,MAAM,EAAE;gBACN,MAAM;gBACN,KAAK;gBACL,IAAI;aACL;SACF,CAAC,CAAA;IACJ,CAAC;CACF;AApCD,gDAoCC"}
@@ -0,0 +1,22 @@
1
+ import { IController } from "../../interfaces/controller";
2
+ import { SayModel } from "../../models/say";
3
+ import { HTTPClient } from '..';
4
+ import { BaseCrudController } from './base';
5
+ export declare class SayController extends BaseCrudController<SayModel> implements IController {
6
+ protected client: HTTPClient;
7
+ base: string;
8
+ name: string;
9
+ constructor(client: HTTPClient);
10
+ protected get proxy(): import("../../interfaces/request").IRequestHandler;
11
+ /**
12
+ * 获取随机一条
13
+ */
14
+ getRandom(): import("../../interfaces/request").RequestProxyResult<{
15
+ data: SayModel | null;
16
+ }, {
17
+ [key: string]: any;
18
+ data: {
19
+ data: SayModel | null;
20
+ };
21
+ }>;
22
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SayController = void 0;
4
+ const base_1 = require("./base");
5
+ class SayController extends base_1.BaseCrudController {
6
+ constructor(client) {
7
+ super(client);
8
+ this.client = client;
9
+ this.base = 'says';
10
+ this.name = 'say';
11
+ }
12
+ get proxy() {
13
+ return this.client.proxy(this.base);
14
+ }
15
+ /**
16
+ * 获取随机一条
17
+ */
18
+ getRandom() {
19
+ return this.proxy.random.get();
20
+ }
21
+ }
22
+ exports.SayController = SayController;
23
+ //# sourceMappingURL=say.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"say.js","sourceRoot":"","sources":["../../../src/core/controllers/say.ts"],"names":[],"mappings":";;;AAGA,iCAA2C;AAE3C,MAAa,aACX,SAAQ,yBAA4B;IAMpC,YAAsB,MAAkB;QACtC,KAAK,CAAC,MAAM,CAAC,CAAA;QADO,WAAM,GAAN,MAAM,CAAY;QAHxC,SAAI,GAAG,MAAM,CAAA;QACb,SAAI,GAAG,KAAK,CAAA;IAIZ,CAAC;IAED,IAAc,KAAK;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAA6B,CAAA;IAC3D,CAAC;CACF;AArBD,sCAqBC"}
@@ -0,0 +1,58 @@
1
+ import { IController } from "../../interfaces/controller";
2
+ import { RequestProxyResult } from "../../interfaces/request";
3
+ import { PaginateResult } from "../../models/base";
4
+ import { NoteModel } from "../../models/note";
5
+ import { PostModel } from "../../models/post";
6
+ import { HTTPClient } from '..';
7
+ declare type SearchOption = {
8
+ orderBy?: string;
9
+ order?: number;
10
+ rawAlgolia?: boolean;
11
+ };
12
+ export declare class SearchController implements IController {
13
+ private readonly client;
14
+ base: string;
15
+ name: string;
16
+ constructor(client: HTTPClient);
17
+ get proxy(): import("../../interfaces/request").IRequestHandler;
18
+ search(type: 'note', keyword: string, options?: Omit<SearchOption, 'rawAlgolia'>): Promise<RequestProxyResult<PaginateResult<Pick<NoteModel, 'modified' | 'id' | 'title' | 'created' | 'nid'>>>>;
19
+ search(type: 'post', keyword: string, options?: Omit<SearchOption, 'rawAlgolia'>): Promise<RequestProxyResult<PaginateResult<Pick<PostModel, 'modified' | 'id' | 'title' | 'created' | 'slug' | 'category'>>>>;
20
+ /**
21
+ * 从 algolya 搜索
22
+ * https://www.algolia.com/doc/api-reference/api-methods/search/
23
+ * @param keyword
24
+ * @param options
25
+ * @returns
26
+ */
27
+ searchByAlgolia(keyword: string, options?: SearchOption): RequestProxyResult<RequestProxyResult<PaginateResult<Pick<PostModel, "created" | "id" | "modified" | "title" | "slug" | "category">> & {
28
+ /**
29
+ * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
30
+ */
31
+ raw?: any;
32
+ }, {
33
+ [key: string]: any;
34
+ data: PaginateResult<Pick<PostModel, "created" | "id" | "modified" | "title" | "slug" | "category">> & {
35
+ /**
36
+ * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
37
+ */
38
+ raw?: any;
39
+ };
40
+ }>, {
41
+ [key: string]: any;
42
+ data: RequestProxyResult<PaginateResult<Pick<PostModel, "created" | "id" | "modified" | "title" | "slug" | "category">> & {
43
+ /**
44
+ * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
45
+ */
46
+ raw?: any;
47
+ }, {
48
+ [key: string]: any;
49
+ data: PaginateResult<Pick<PostModel, "created" | "id" | "modified" | "title" | "slug" | "category">> & {
50
+ /**
51
+ * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
52
+ */
53
+ raw?: any;
54
+ };
55
+ }>;
56
+ }>;
57
+ }
58
+ export {};
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchController = void 0;
4
+ class SearchController {
5
+ constructor(client) {
6
+ this.client = client;
7
+ this.base = 'search';
8
+ this.name = 'search';
9
+ }
10
+ get proxy() {
11
+ return this.client.proxy(this.base);
12
+ }
13
+ search(type, keyword, options = {}) {
14
+ return this.proxy(type).get({
15
+ params: Object.assign({ keyword }, options),
16
+ });
17
+ }
18
+ /**
19
+ * 从 algolya 搜索
20
+ * https://www.algolia.com/doc/api-reference/api-methods/search/
21
+ * @param keyword
22
+ * @param options
23
+ * @returns
24
+ */
25
+ searchByAlgolia(keyword, options) {
26
+ return this.proxy('algolia').get({ params: Object.assign({ keyword }, options) });
27
+ }
28
+ }
29
+ exports.SearchController = SearchController;
30
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/core/controllers/search.ts"],"names":[],"mappings":";;;AAaA,MAAa,gBAAgB;IAI3B,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAH/C,SAAI,GAAG,QAAQ,CAAA;QACf,SAAI,GAAG,QAAQ,CAAA;IAEmC,CAAC;IAEnD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IA2BD,MAAM,CACJ,IAAgB,EAChB,OAAe,EACf,UAA4C,EAAE;QAE9C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;YAC1B,MAAM,kBAAI,OAAO,IAAK,OAAO,CAAE;SAChC,CAAC,CAAA;IACJ,CAAC;IACD;;;;;;OAMG;IACH,eAAe,CAAC,OAAe,EAAE,OAAsB;QACrD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAc9B,EAAE,MAAM,kBAAI,OAAO,IAAK,OAAO,CAAE,EAAE,CAAC,CAAA;IACxC,CAAC;CACF;AApED,4CAoEC"}
@@ -0,0 +1,18 @@
1
+ import { IController } from "../../interfaces/controller";
2
+ import { SnippetModel } from "../../models/snippet";
3
+ import { HTTPClient } from '..';
4
+ export declare class SnippetController implements IController {
5
+ protected client: HTTPClient;
6
+ base: string;
7
+ name: string;
8
+ constructor(client: HTTPClient);
9
+ get proxy(): import("../../interfaces/request").IRequestHandler;
10
+ getById(id: string): import("../../interfaces/request").RequestProxyResult<SnippetModel, {
11
+ [key: string]: any;
12
+ data: SnippetModel;
13
+ }>;
14
+ getByReferenceAndName(reference: string, name: string): import("../../interfaces/request").RequestProxyResult<SnippetModel, {
15
+ [key: string]: any;
16
+ data: SnippetModel;
17
+ }>;
18
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SnippetController = void 0;
4
+ class SnippetController {
5
+ constructor(client) {
6
+ this.client = client;
7
+ this.base = 'snippets';
8
+ this.name = 'snippet';
9
+ }
10
+ get proxy() {
11
+ return this.client.proxy(this.base);
12
+ }
13
+ getById(id) {
14
+ return this.proxy(id).get();
15
+ }
16
+ getByReferenceAndName(reference, name) {
17
+ return this.proxy(reference)(name).get();
18
+ }
19
+ }
20
+ exports.SnippetController = SnippetController;
21
+ //# sourceMappingURL=snippet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snippet.js","sourceRoot":"","sources":["../../../src/core/controllers/snippet.ts"],"names":[],"mappings":";;;AAIA,MAAa,iBAAiB;IAI5B,YAAsB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAHxC,SAAI,GAAG,UAAU,CAAA;QACjB,SAAI,GAAG,SAAS,CAAA;IAE2B,CAAC;IAE5C,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,EAAgB,CAAA;IAC3C,CAAC;IAED,qBAAqB,CAAC,SAAiB,EAAE,IAAY;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAgB,CAAA;IACxD,CAAC;CACF;AAjBD,8CAiBC"}