@mx-space/api-client 0.6.3 → 0.7.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.
- package/adaptors/axios.ts +38 -0
- package/adaptors/umi-request.ts +33 -0
- package/build/index.cjs.js +28 -27
- package/build/index.cjs.js.map +1 -1
- package/build/index.cjs.min.js +1 -1
- package/build/index.cjs.min.js.map +1 -1
- package/build/index.esm.js +29 -27
- package/build/index.esm.js.map +1 -1
- package/build/index.esm.min.js +1 -1
- package/build/index.esm.min.js.map +1 -1
- package/build/index.umd.js +28 -27
- package/build/index.umd.js.map +1 -1
- package/build/index.umd.min.js +1 -1
- package/build/index.umd.min.js.map +1 -1
- package/controllers/aggregate.ts +69 -0
- package/controllers/base.ts +32 -0
- package/controllers/category.ts +118 -0
- package/controllers/comment.ts +68 -0
- package/controllers/index.ts +66 -0
- package/controllers/link.ts +28 -0
- package/controllers/note.ts +96 -0
- package/controllers/page.ts +64 -0
- package/controllers/post.ts +94 -0
- package/controllers/project.ts +27 -0
- package/controllers/recently.ts +53 -0
- package/controllers/say.ts +40 -0
- package/controllers/search.ts +108 -0
- package/controllers/snippet.ts +36 -0
- package/controllers/user.ts +51 -0
- package/core/attach-request.ts +43 -0
- package/core/client.ts +239 -0
- package/core/error.ts +10 -0
- package/core/index.ts +2 -0
- package/coverage/clover.xml +570 -0
- package/coverage/coverage-final.json +30 -0
- package/coverage/lcov-report/adaptors/axios.ts.html +199 -0
- package/coverage/lcov-report/adaptors/index.html +131 -0
- package/coverage/lcov-report/adaptors/umi-request.ts.html +184 -0
- package/coverage/lcov-report/auto-bind.ts.html +229 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/controllers/aggregate.ts.html +292 -0
- package/coverage/lcov-report/controllers/base.ts.html +181 -0
- package/coverage/lcov-report/controllers/category.ts.html +439 -0
- package/coverage/lcov-report/controllers/comment.ts.html +289 -0
- package/coverage/lcov-report/controllers/index.html +326 -0
- package/coverage/lcov-report/controllers/index.ts.html +283 -0
- package/coverage/lcov-report/controllers/link.ts.html +169 -0
- package/coverage/lcov-report/controllers/note.ts.html +373 -0
- package/coverage/lcov-report/controllers/page.ts.html +277 -0
- package/coverage/lcov-report/controllers/post.ts.html +367 -0
- package/coverage/lcov-report/controllers/project.ts.html +166 -0
- package/coverage/lcov-report/controllers/recently.ts.html +244 -0
- package/coverage/lcov-report/controllers/say.ts.html +205 -0
- package/coverage/lcov-report/controllers/search.ts.html +409 -0
- package/coverage/lcov-report/controllers/snippet.ts.html +193 -0
- package/coverage/lcov-report/controllers/user.ts.html +238 -0
- package/coverage/lcov-report/core/attach-request.ts.html +214 -0
- package/coverage/lcov-report/core/client.ts.html +802 -0
- package/coverage/lcov-report/core/error.ts.html +115 -0
- package/coverage/lcov-report/core/index.html +161 -0
- package/coverage/lcov-report/core/index.ts.html +91 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +191 -0
- package/coverage/lcov-report/index.ts.html +244 -0
- package/coverage/lcov-report/models/aggregate.ts.html +298 -0
- package/coverage/lcov-report/models/category.ts.html +160 -0
- package/coverage/lcov-report/models/index.html +131 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +196 -0
- package/coverage/lcov-report/utils/auto-bind.ts.html +229 -0
- package/coverage/lcov-report/utils/index.html +131 -0
- package/coverage/lcov-report/utils/index.ts.html +244 -0
- package/coverage/lcov.info +1164 -0
- package/dtos/comment.ts +9 -0
- package/esm/adaptors/axios.d.ts +3 -3
- package/esm/adaptors/axios.js +5 -17
- package/esm/adaptors/axios.js.map +1 -1
- package/esm/adaptors/umi-request.d.ts +3 -3
- package/esm/adaptors/umi-request.js +1 -0
- package/esm/adaptors/umi-request.js.map +1 -1
- package/esm/controllers/aggregate.d.ts +32 -10
- package/esm/controllers/aggregate.js +2 -2
- package/esm/controllers/aggregate.js.map +1 -1
- package/esm/controllers/base.d.ts +19 -7
- package/esm/controllers/base.js +1 -1
- package/esm/controllers/base.js.map +1 -1
- package/esm/controllers/category.d.ts +68 -12
- package/esm/controllers/category.js +3 -3
- package/esm/controllers/category.js.map +1 -1
- package/esm/controllers/comment.d.ts +49 -12
- package/esm/controllers/comment.js +1 -1
- package/esm/controllers/comment.js.map +1 -1
- package/esm/controllers/index.js.map +1 -1
- package/esm/controllers/link.d.ts +9 -2
- package/esm/controllers/link.js +1 -1
- package/esm/controllers/link.js.map +1 -1
- package/esm/controllers/note.d.ts +48 -13
- package/esm/controllers/note.js +2 -2
- package/esm/controllers/note.js.map +1 -1
- package/esm/controllers/page.d.ts +28 -9
- package/esm/controllers/page.js +2 -2
- package/esm/controllers/page.js.map +1 -1
- package/esm/controllers/post.d.ts +30 -12
- package/esm/controllers/post.js +2 -2
- package/esm/controllers/post.js.map +1 -1
- package/esm/controllers/project.d.ts +8 -2
- package/esm/controllers/project.js +1 -1
- package/esm/controllers/project.js.map +1 -1
- package/esm/controllers/recently.d.ts +35 -7
- package/esm/controllers/recently.js +1 -1
- package/esm/controllers/recently.js.map +1 -1
- package/esm/controllers/say.d.ts +20 -5
- package/esm/controllers/say.js +1 -1
- package/esm/controllers/say.js.map +1 -1
- package/esm/controllers/search.d.ts +178 -14
- package/esm/controllers/search.js +3 -3
- package/esm/controllers/search.js.map +1 -1
- package/esm/controllers/snippet.d.ts +21 -6
- package/esm/controllers/snippet.js +1 -1
- package/esm/controllers/snippet.js.map +1 -1
- package/esm/controllers/user.d.ts +33 -7
- package/esm/controllers/user.js +1 -1
- package/esm/controllers/user.js.map +1 -1
- package/esm/core/attach-request.d.ts +1 -1
- package/esm/core/attach-request.js.map +1 -1
- package/esm/core/client.d.ts +12 -28
- package/esm/core/client.js +23 -21
- package/esm/core/client.js.map +1 -1
- package/esm/core/error.js.map +1 -1
- package/esm/core/index.js.map +1 -1
- package/esm/dtos/comment.js.map +1 -1
- package/esm/index.d.ts +2 -1
- package/esm/index.js +1 -1
- package/esm/index.js.map +1 -1
- package/esm/interfaces/adapter.d.ts +9 -8
- package/esm/interfaces/adapter.js.map +1 -1
- package/esm/interfaces/client.d.ts +1 -1
- package/esm/interfaces/client.js.map +1 -1
- package/esm/interfaces/controller.js.map +1 -1
- package/esm/interfaces/instance.js.map +1 -1
- package/esm/interfaces/options.js.map +1 -1
- package/esm/interfaces/params.js.map +1 -1
- package/esm/interfaces/request.d.ts +22 -13
- package/esm/interfaces/request.js.map +1 -1
- package/esm/interfaces/types.d.ts +2 -0
- package/esm/interfaces/types.js +2 -0
- package/esm/interfaces/types.js.map +1 -0
- package/esm/models/aggregate.js.map +1 -1
- package/esm/models/base.js.map +1 -1
- package/esm/models/category.js.map +1 -1
- package/esm/models/comment.js.map +1 -1
- package/esm/models/index.js.map +1 -1
- package/esm/models/link.js.map +1 -1
- package/esm/models/note.js.map +1 -1
- package/esm/models/page.js.map +1 -1
- package/esm/models/post.js.map +1 -1
- package/esm/models/project.js.map +1 -1
- package/esm/models/recently.js.map +1 -1
- package/esm/models/say.js.map +1 -1
- package/esm/models/setting.js.map +1 -1
- package/esm/models/snippet.js.map +1 -1
- package/esm/models/user.js.map +1 -1
- package/esm/utils/auto-bind.js.map +1 -1
- package/esm/utils/index.d.ts +1 -1
- package/esm/utils/index.js +2 -2
- package/esm/utils/index.js.map +1 -1
- package/index.ts +13 -0
- package/interfaces/adapter.ts +35 -0
- package/interfaces/client.ts +6 -0
- package/interfaces/controller.ts +5 -0
- package/interfaces/instance.ts +8 -0
- package/interfaces/options.ts +1 -0
- package/interfaces/params.ts +4 -0
- package/interfaces/request.ts +82 -0
- package/interfaces/types.ts +3 -0
- package/jest.config.js +12 -0
- package/lib/adaptors/axios.d.ts +3 -3
- package/lib/adaptors/axios.js +5 -17
- package/lib/adaptors/axios.js.map +1 -1
- package/lib/adaptors/umi-request.d.ts +3 -3
- package/lib/adaptors/umi-request.js +1 -0
- package/lib/adaptors/umi-request.js.map +1 -1
- package/lib/controllers/aggregate.d.ts +32 -10
- package/lib/controllers/aggregate.js.map +1 -1
- package/lib/controllers/base.d.ts +19 -7
- package/lib/controllers/base.js.map +1 -1
- package/lib/controllers/category.d.ts +68 -12
- package/lib/controllers/category.js +1 -1
- package/lib/controllers/category.js.map +1 -1
- package/lib/controllers/comment.d.ts +49 -12
- package/lib/controllers/comment.js.map +1 -1
- package/lib/controllers/index.js.map +1 -1
- package/lib/controllers/link.d.ts +9 -2
- package/lib/controllers/link.js.map +1 -1
- package/lib/controllers/note.d.ts +48 -13
- package/lib/controllers/note.js +1 -1
- package/lib/controllers/note.js.map +1 -1
- package/lib/controllers/page.d.ts +28 -9
- package/lib/controllers/page.js +1 -1
- package/lib/controllers/page.js.map +1 -1
- package/lib/controllers/post.d.ts +30 -12
- package/lib/controllers/post.js +1 -1
- package/lib/controllers/post.js.map +1 -1
- package/lib/controllers/project.d.ts +8 -2
- package/lib/controllers/project.js.map +1 -1
- package/lib/controllers/recently.d.ts +35 -7
- package/lib/controllers/recently.js.map +1 -1
- package/lib/controllers/say.d.ts +20 -5
- package/lib/controllers/say.js.map +1 -1
- package/lib/controllers/search.d.ts +178 -14
- package/lib/controllers/search.js +2 -2
- package/lib/controllers/search.js.map +1 -1
- package/lib/controllers/snippet.d.ts +21 -6
- package/lib/controllers/snippet.js.map +1 -1
- package/lib/controllers/user.d.ts +33 -7
- package/lib/controllers/user.js.map +1 -1
- package/lib/core/attach-request.d.ts +1 -1
- package/lib/core/attach-request.js.map +1 -1
- package/lib/core/client.d.ts +12 -28
- package/lib/core/client.js +21 -20
- package/lib/core/client.js.map +1 -1
- package/lib/core/error.js.map +1 -1
- package/lib/core/index.js.map +1 -1
- package/lib/dtos/comment.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +1 -2
- package/lib/index.js.map +1 -1
- package/lib/interfaces/adapter.d.ts +9 -8
- package/lib/interfaces/adapter.js.map +1 -1
- package/lib/interfaces/client.d.ts +1 -1
- package/lib/interfaces/client.js.map +1 -1
- package/lib/interfaces/controller.js.map +1 -1
- package/lib/interfaces/instance.js.map +1 -1
- package/lib/interfaces/options.js.map +1 -1
- package/lib/interfaces/params.js.map +1 -1
- package/lib/interfaces/request.d.ts +22 -13
- package/lib/interfaces/request.js.map +1 -1
- package/lib/interfaces/types.d.ts +2 -0
- package/lib/interfaces/types.js +3 -0
- package/lib/interfaces/types.js.map +1 -0
- package/lib/models/aggregate.js.map +1 -1
- package/lib/models/base.js.map +1 -1
- package/lib/models/category.js.map +1 -1
- package/lib/models/comment.js.map +1 -1
- package/lib/models/index.js.map +1 -1
- package/lib/models/link.js.map +1 -1
- package/lib/models/note.js.map +1 -1
- package/lib/models/page.js.map +1 -1
- package/lib/models/post.js.map +1 -1
- package/lib/models/project.js.map +1 -1
- package/lib/models/recently.js.map +1 -1
- package/lib/models/say.js.map +1 -1
- package/lib/models/setting.js.map +1 -1
- package/lib/models/snippet.js.map +1 -1
- package/lib/models/user.js.map +1 -1
- package/lib/utils/auto-bind.js.map +1 -1
- package/lib/utils/index.d.ts +1 -1
- package/lib/utils/index.js +2 -2
- package/lib/utils/index.js.map +1 -1
- package/models/aggregate.ts +71 -0
- package/models/base.ts +43 -0
- package/models/category.ts +25 -0
- package/models/comment.ts +37 -0
- package/models/index.ts +14 -0
- package/models/link.ts +23 -0
- package/models/note.ts +37 -0
- package/models/page.ts +20 -0
- package/models/post.ts +16 -0
- package/models/project.ts +12 -0
- package/models/recently.ts +7 -0
- package/models/say.ts +7 -0
- package/models/setting.ts +68 -0
- package/models/snippet.ts +18 -0
- package/models/user.ts +27 -0
- package/package.json +10 -44
- package/tsconfig.build.json +6 -0
- package/tsconfig.cjs.json +7 -0
- package/tsconfig.json +13 -11
- package/tsconfig.types.json +18 -0
- package/types/adaptors/axios.d.ts +3 -0
- package/types/adaptors/umi-request.d.ts +3 -0
- package/types/controllers/aggregate.d.ts +64 -0
- package/types/controllers/base.d.ts +39 -0
- package/types/controllers/category.d.ts +114 -0
- package/types/controllers/comment.d.ts +81 -0
- package/types/controllers/index.d.ts +16 -0
- package/types/controllers/link.d.ts +16 -0
- package/types/controllers/note.d.ts +94 -0
- package/types/controllers/page.d.ts +59 -0
- package/types/controllers/post.d.ts +72 -0
- package/types/controllers/project.d.ts +15 -0
- package/types/controllers/recently.d.ts +61 -0
- package/types/controllers/say.d.ts +37 -0
- package/types/controllers/search.d.ts +247 -0
- package/types/controllers/snippet.d.ts +33 -0
- package/types/controllers/user.d.ts +54 -0
- package/types/core/attach-request.d.ts +2 -0
- package/types/core/client.d.ts +29 -0
- package/types/core/error.d.ts +6 -0
- package/types/core/index.d.ts +2 -0
- package/types/dtos/comment.d.ts +6 -0
- package/types/index.d.ts +7 -0
- package/types/interfaces/adapter.d.ts +14 -0
- package/types/interfaces/client.d.ts +5 -0
- package/types/interfaces/controller.d.ts +4 -0
- package/types/interfaces/instance.d.ts +7 -0
- package/types/interfaces/options.d.ts +1 -0
- package/types/interfaces/params.d.ts +4 -0
- package/types/interfaces/request.d.ts +43 -0
- package/types/interfaces/types.d.ts +2 -0
- package/types/models/aggregate.d.ts +53 -0
- package/types/models/base.d.ts +37 -0
- package/types/models/category.d.ts +22 -0
- package/types/models/comment.d.ts +34 -0
- package/types/models/index.d.ts +14 -0
- package/types/models/link.d.ts +20 -0
- package/types/models/note.d.ts +30 -0
- package/types/models/page.d.ts +14 -0
- package/types/models/post.d.ts +15 -0
- package/types/models/project.d.ts +11 -0
- package/types/models/recently.d.ts +6 -0
- package/types/models/say.d.ts +6 -0
- package/types/models/setting.d.ts +66 -0
- package/types/models/snippet.d.ts +16 -0
- package/types/models/user.d.ts +21 -0
- package/types/utils/auto-bind.d.ts +4 -0
- package/types/utils/index.d.ts +5 -0
- package/utils/auto-bind.ts +48 -0
- package/utils/index.ts +53 -0
- package/build/index.d.ts +0 -932
- package/readme.md +0 -84
|
@@ -1,27 +1,39 @@
|
|
|
1
|
-
import { IRequestHandler, RequestProxyResult } from
|
|
2
|
-
import { PaginateResult } from
|
|
1
|
+
import { IRequestHandler, RequestProxyResult } from '../interfaces/request';
|
|
2
|
+
import { PaginateResult } from '../models/base';
|
|
3
3
|
import { HTTPClient } from '../core';
|
|
4
|
-
export declare abstract class BaseCrudController<T> {
|
|
4
|
+
export declare abstract class BaseCrudController<T, ResponseWrapper> {
|
|
5
5
|
protected client: HTTPClient;
|
|
6
6
|
base: string;
|
|
7
7
|
constructor(client: HTTPClient);
|
|
8
|
-
get proxy(): IRequestHandler
|
|
9
|
-
getById(id: string): RequestProxyResult<T>;
|
|
8
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
9
|
+
getById(id: string): RequestProxyResult<T, ResponseWrapper>;
|
|
10
10
|
getAll(): RequestProxyResult<{
|
|
11
11
|
data: T[];
|
|
12
|
-
}, {
|
|
12
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
13
13
|
[key: string]: any;
|
|
14
14
|
data: {
|
|
15
15
|
data: T[];
|
|
16
16
|
};
|
|
17
|
+
} : ResponseWrapper extends {
|
|
18
|
+
data: {
|
|
19
|
+
data: T[];
|
|
20
|
+
};
|
|
21
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
22
|
+
data: {
|
|
23
|
+
data: T[];
|
|
24
|
+
};
|
|
17
25
|
}>;
|
|
18
26
|
/**
|
|
19
27
|
* 带分页的查询
|
|
20
28
|
* @param page
|
|
21
29
|
* @param perPage
|
|
22
30
|
*/
|
|
23
|
-
getAllPaginated(page?: number, perPage?: number): RequestProxyResult<PaginateResult<T>, {
|
|
31
|
+
getAllPaginated(page?: number, perPage?: number): RequestProxyResult<PaginateResult<T>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
24
32
|
[key: string]: any;
|
|
25
33
|
data: PaginateResult<T>;
|
|
34
|
+
} : ResponseWrapper extends {
|
|
35
|
+
data: PaginateResult<T>;
|
|
36
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
37
|
+
data: PaginateResult<T>;
|
|
26
38
|
}>;
|
|
27
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../controllers/base.ts"],"names":[],"mappings":";;;AAEA,iDAA4C;AAG5C,MAAsB,kBAAkB;IAEtC,YAAsB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QACtC,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IACD,IAAW,KAAK;QACd,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;AA1BD,gDA0BC"}
|
|
@@ -1,28 +1,43 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler, RequestProxyResult, ResponseProxyExtraRaw } from '../interfaces/request';
|
|
3
4
|
import { HTTPClient } from '../core/client';
|
|
4
5
|
import { CategoryModel, CategoryType, CategoryWithChildrenModel, TagModel } from '../models/category';
|
|
5
6
|
import { PostModel } from '../models/post';
|
|
6
|
-
|
|
7
|
+
declare module '../core/client' {
|
|
8
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
9
|
+
category: CategoryController<ResponseWrapper>;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export declare class CategoryController<ResponseWrapper> implements IController {
|
|
7
13
|
private client;
|
|
8
14
|
name: string;
|
|
9
15
|
base: string;
|
|
10
16
|
constructor(client: HTTPClient);
|
|
11
|
-
get proxy():
|
|
17
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
12
18
|
getAllCategories(): RequestProxyResult<{
|
|
13
19
|
data: CategoryModel[];
|
|
14
|
-
}>;
|
|
20
|
+
}, ResponseWrapper>;
|
|
15
21
|
getAllTags(): RequestProxyResult<{
|
|
16
22
|
data: TagModel[];
|
|
17
|
-
}>;
|
|
23
|
+
}, ResponseWrapper>;
|
|
18
24
|
getCategoryDetail(id: string): Promise<ResponseProxyExtraRaw<CategoryWithChildrenModel>>;
|
|
19
25
|
getCategoryDetail(ids: string[]): Promise<ResponseProxyExtraRaw<Map<string, CategoryWithChildrenModel>>>;
|
|
20
26
|
getCategoryByIdOrSlug(idOrSlug: string): Promise<CategoryModel & {
|
|
21
27
|
children: Pick<PostModel, "id" | "title" | "slug" | "modified" | "created">[];
|
|
22
28
|
} & {
|
|
23
|
-
$raw: {
|
|
29
|
+
$raw: ResponseWrapper extends {
|
|
30
|
+
data: infer T;
|
|
31
|
+
} ? ResponseWrapper : ResponseWrapper extends unknown ? {
|
|
24
32
|
[i: string]: any;
|
|
25
|
-
data: {
|
|
33
|
+
data: (ResponseWrapper extends unknown ? {
|
|
34
|
+
[key: string]: any;
|
|
35
|
+
data: CategoryWithChildrenModel;
|
|
36
|
+
} : ResponseWrapper extends {
|
|
37
|
+
data: CategoryWithChildrenModel;
|
|
38
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
39
|
+
data: CategoryWithChildrenModel;
|
|
40
|
+
}) extends unknown ? {
|
|
26
41
|
type: CategoryType;
|
|
27
42
|
count: number;
|
|
28
43
|
slug: string;
|
|
@@ -30,8 +45,15 @@ export declare class CategoryController implements IController {
|
|
|
30
45
|
created: string;
|
|
31
46
|
id: string;
|
|
32
47
|
children: Pick<PostModel, "id" | "title" | "slug" | "modified" | "created">[];
|
|
48
|
+
} : ResponseWrapper extends unknown ? {
|
|
49
|
+
[key: string]: any;
|
|
50
|
+
data: CategoryWithChildrenModel;
|
|
51
|
+
} : ResponseWrapper extends {
|
|
52
|
+
data: CategoryWithChildrenModel;
|
|
53
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
54
|
+
data: CategoryWithChildrenModel;
|
|
33
55
|
};
|
|
34
|
-
};
|
|
56
|
+
} : ResponseWrapper;
|
|
35
57
|
$request: {
|
|
36
58
|
[k: string]: string;
|
|
37
59
|
path: string;
|
|
@@ -42,13 +64,47 @@ export declare class CategoryController implements IController {
|
|
|
42
64
|
tag: string;
|
|
43
65
|
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
44
66
|
} & {
|
|
45
|
-
$raw: {
|
|
67
|
+
$raw: ResponseWrapper extends {
|
|
68
|
+
data: infer T;
|
|
69
|
+
} ? ResponseWrapper : ResponseWrapper extends unknown ? {
|
|
46
70
|
[i: string]: any;
|
|
47
|
-
data: {
|
|
71
|
+
data: (ResponseWrapper extends unknown ? {
|
|
72
|
+
[key: string]: any;
|
|
73
|
+
data: {
|
|
74
|
+
tag: string;
|
|
75
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
76
|
+
};
|
|
77
|
+
} : ResponseWrapper extends {
|
|
78
|
+
data: {
|
|
79
|
+
tag: string;
|
|
80
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
81
|
+
};
|
|
82
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
83
|
+
data: {
|
|
84
|
+
tag: string;
|
|
85
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
86
|
+
};
|
|
87
|
+
}) extends unknown ? {
|
|
48
88
|
tag: string;
|
|
49
89
|
data: Pick<PostModel, "id" | "title" | "slug" | "created" | "category">[];
|
|
90
|
+
} : ResponseWrapper extends unknown ? {
|
|
91
|
+
[key: string]: any;
|
|
92
|
+
data: {
|
|
93
|
+
tag: string;
|
|
94
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
95
|
+
};
|
|
96
|
+
} : ResponseWrapper extends {
|
|
97
|
+
data: {
|
|
98
|
+
tag: string;
|
|
99
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
100
|
+
};
|
|
101
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
102
|
+
data: {
|
|
103
|
+
tag: string;
|
|
104
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
105
|
+
};
|
|
50
106
|
};
|
|
51
|
-
};
|
|
107
|
+
} : ResponseWrapper;
|
|
52
108
|
$request: {
|
|
53
109
|
[k: string]: string;
|
|
54
110
|
path: string;
|
|
@@ -46,7 +46,7 @@ class CategoryController {
|
|
|
46
46
|
ids: ids.join(','),
|
|
47
47
|
},
|
|
48
48
|
});
|
|
49
|
-
const entries = data
|
|
49
|
+
const entries = data?.entries;
|
|
50
50
|
if (!entries) {
|
|
51
51
|
throw new error_1.RequestError('data structure error', 500, data.$request.path, data);
|
|
52
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"category.js","sourceRoot":"","sources":["../../controllers/category.ts"],"names":[],"mappings":";;;AAOA,mCAAmE;AACnE,iDAA4C;AAE5C,yCAA4C;AAC5C,iDAM2B;AAY3B,MAAa,kBAAkB;IAG7B,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAFtC,SAAI,GAAG,UAAU,CAAA;QACjB,SAAI,GAAG,YAAY,CAAA;QAEjB,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,gBAAgB;QAId,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YACpB,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,EAAE,OAAO,CAAA;YAC7B,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,oBAAY,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;AAxFD,gDAwFC"}
|
|
@@ -1,44 +1,81 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { PaginationParams } from '../interfaces/params';
|
|
4
|
+
import { IRequestHandler } from '../interfaces/request';
|
|
5
|
+
import { PaginateResult } from '../models/base';
|
|
6
|
+
import { CommentModel } from '../models/comment';
|
|
6
7
|
import { HTTPClient } from '../core';
|
|
7
8
|
import { CommentDto } from '../dtos/comment';
|
|
8
|
-
|
|
9
|
+
declare module '../core/client' {
|
|
10
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
11
|
+
comment: CommentController<ResponseWrapper>;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export declare class CommentController<ResponseWrapper> implements IController {
|
|
9
15
|
private readonly client;
|
|
10
16
|
base: string;
|
|
11
17
|
name: string;
|
|
12
18
|
constructor(client: HTTPClient);
|
|
13
|
-
get proxy(): IRequestHandler
|
|
19
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
14
20
|
/**
|
|
15
21
|
* 根据 comment id 获取评论, 包括子评论
|
|
16
22
|
*/
|
|
17
|
-
getById(id: string): RequestProxyResult<CommentModel
|
|
23
|
+
getById(id: string): import("../interfaces/request").RequestProxyResult<CommentModel & {
|
|
24
|
+
ref: string;
|
|
25
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
26
|
+
[key: string]: any;
|
|
27
|
+
data: CommentModel & {
|
|
28
|
+
ref: string;
|
|
29
|
+
};
|
|
30
|
+
} : ResponseWrapper extends {
|
|
31
|
+
data: CommentModel & {
|
|
32
|
+
ref: string;
|
|
33
|
+
};
|
|
34
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
35
|
+
data: CommentModel & {
|
|
36
|
+
ref: string;
|
|
37
|
+
};
|
|
38
|
+
}>;
|
|
18
39
|
/**
|
|
19
40
|
* 获取文章的评论列表
|
|
20
41
|
* @param refId 文章 Id
|
|
21
42
|
*/
|
|
22
|
-
getByRefId(refId: string, pagination?: PaginationParams): RequestProxyResult<PaginateResult<CommentModel & {
|
|
43
|
+
getByRefId(refId: string, pagination?: PaginationParams): import("../interfaces/request").RequestProxyResult<PaginateResult<CommentModel & {
|
|
23
44
|
ref: string;
|
|
24
|
-
}>, {
|
|
45
|
+
}>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
25
46
|
[key: string]: any;
|
|
26
47
|
data: PaginateResult<CommentModel & {
|
|
27
48
|
ref: string;
|
|
28
49
|
}>;
|
|
50
|
+
} : ResponseWrapper extends {
|
|
51
|
+
data: PaginateResult<CommentModel & {
|
|
52
|
+
ref: string;
|
|
53
|
+
}>;
|
|
54
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
55
|
+
data: PaginateResult<CommentModel & {
|
|
56
|
+
ref: string;
|
|
57
|
+
}>;
|
|
29
58
|
}>;
|
|
30
59
|
/**
|
|
31
60
|
* 评论
|
|
32
61
|
*/
|
|
33
|
-
comment(refId: string, data: CommentDto): RequestProxyResult<CommentModel, {
|
|
62
|
+
comment(refId: string, data: CommentDto): import("../interfaces/request").RequestProxyResult<CommentModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
34
63
|
[key: string]: any;
|
|
35
64
|
data: CommentModel;
|
|
65
|
+
} : ResponseWrapper extends {
|
|
66
|
+
data: CommentModel;
|
|
67
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
68
|
+
data: CommentModel;
|
|
36
69
|
}>;
|
|
37
70
|
/**
|
|
38
71
|
* 回复评论
|
|
39
72
|
*/
|
|
40
|
-
reply(commentId: string, data: CommentDto): RequestProxyResult<CommentModel, {
|
|
73
|
+
reply(commentId: string, data: CommentDto): import("../interfaces/request").RequestProxyResult<CommentModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
41
74
|
[key: string]: any;
|
|
42
75
|
data: CommentModel;
|
|
76
|
+
} : ResponseWrapper extends {
|
|
77
|
+
data: CommentModel;
|
|
78
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
79
|
+
data: CommentModel;
|
|
43
80
|
}>;
|
|
44
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"comment.js","sourceRoot":"","sources":["../../controllers/comment.ts"],"names":[],"mappings":";;;AAMA,iDAA4C;AAa5C,MAAa,iBAAiB;IAI5B,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAH/C,SAAI,GAAG,UAAU,CAAA;QACjB,SAAI,GAAG,SAAS,CAAA;QAGd,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,EAAkC,CAAA;IAC7D,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,KAAa,EAAE,aAA+B,EAAE;QACzD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,UAAU,CAAA;QACjC,OAAO,IAAI,CAAC,KAAK;aACd,GAAG,CAAC,KAAK,CAAC;aACV,GAAG,CAAiD;YACnD,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE;SAC9C,CAAC,CAAA;IACN,CAAC;IACD;;OAEG;IACH,OAAO,CAAC,KAAa,EAAE,IAAgB;QACrC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAe;YAC1C,IAAI;SACL,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAiB,EAAE,IAAgB;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAe;YACpD,IAAI;SACL,CAAC,CAAA;IACJ,CAAC;CACF;AAhDD,8CAgDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../controllers/index.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AAoD/C,oGApDO,+BAAmB,OAoDP;AAnDrB,yCAA+C;AAoD7C,mGApDO,6BAAkB,OAoDP;AAnDpB,uCAA6C;AAoD3C,kGApDO,2BAAiB,OAoDP;AAnDnB,iCAAuC;AAoDrC,+FApDO,qBAAc,OAoDP;AAnDhB,iCAAuC;AAoDrC,+FApDO,qBAAc,OAoDP;AAnDhB,iCAAuC;AAoDrC,+FApDO,qBAAc,OAoDP;AAnDhB,iCAAuC;AAoDrC,+FApDO,qBAAc,OAoDP;AAnDhB,uCAA6C;AAoD3C,kGApDO,2BAAiB,OAoDP;AAnDnB,yCAA+C;AAoD7C,mGApDO,6BAAkB,OAoDP;AAnDpB,+BAAqC;AAoDnC,8FApDO,mBAAa,OAoDP;AAnDf,qCAA2C;AAoDzC,iGApDO,yBAAgB,OAoDP;AAnDlB,uCAA6C;AAoD3C,kGApDO,2BAAiB,OAoDP;AAnDnB,iCAAuC;AAoDrC,+FApDO,qBAAc,OAoDP;AAlDH,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;IAEN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,WAAW;CACH,CAAA"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { LinkModel } from '../models/link';
|
|
2
3
|
import { HTTPClient } from '../core';
|
|
3
4
|
import { BaseCrudController } from './base';
|
|
4
|
-
|
|
5
|
+
declare module '../core/client' {
|
|
6
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
7
|
+
link: LinkController<ResponseWrapper>;
|
|
8
|
+
friend: LinkController<ResponseWrapper>;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export declare class LinkController<ResponseWrapper> extends BaseCrudController<LinkModel, ResponseWrapper> {
|
|
5
12
|
protected readonly client: HTTPClient;
|
|
6
13
|
constructor(client: HTTPClient);
|
|
7
14
|
name: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../controllers/link.ts"],"names":[],"mappings":";;;AAEA,iDAA4C;AAE5C,iCAA2C;AAY3C,MAAa,cAAgC,SAAQ,yBAGpD;IACC,YAA+B,MAAkB;QAC/C,KAAK,CAAC,MAAM,CAAC,CAAA;QADgB,WAAM,GAAN,MAAM,CAAY;QAKjD,SAAI,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACzB,SAAI,GAAG,OAAO,CAAA;QAJZ,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;CAIF;AAXD,wCAWC"}
|
|
@@ -1,59 +1,94 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler } from '../interfaces/request';
|
|
4
|
+
import { SelectFields } from '../interfaces/types';
|
|
5
|
+
import { PaginateResult } from '../models/base';
|
|
6
|
+
import { NoteModel, NoteWrappedPayload } from '../models/note';
|
|
6
7
|
import { HTTPClient } from '../core/client';
|
|
8
|
+
declare module '../core/client' {
|
|
9
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
10
|
+
note: NoteController<ResponseWrapper>;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
7
13
|
export declare type NoteListOptions = {
|
|
8
14
|
select?: SelectFields<keyof NoteModel>;
|
|
9
15
|
year?: number;
|
|
10
16
|
sortBy?: 'weather' | 'mood' | 'title' | 'created' | 'modified';
|
|
11
17
|
sortOrder?: 1 | -1;
|
|
12
18
|
};
|
|
13
|
-
export declare class NoteController implements IController {
|
|
19
|
+
export declare class NoteController<ResponseWrapper> implements IController {
|
|
14
20
|
private client;
|
|
15
21
|
base: string;
|
|
16
22
|
name: string;
|
|
17
23
|
constructor(client: HTTPClient);
|
|
18
|
-
get proxy(): IRequestHandler
|
|
24
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
19
25
|
/**
|
|
20
26
|
* 最新日记
|
|
21
27
|
*/
|
|
22
|
-
getLatest(): RequestProxyResult<NoteWrappedPayload
|
|
28
|
+
getLatest(): import("../interfaces/request").RequestProxyResult<NoteWrappedPayload, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
29
|
+
[key: string]: any;
|
|
30
|
+
data: NoteWrappedPayload;
|
|
31
|
+
} : ResponseWrapper extends {
|
|
32
|
+
data: NoteWrappedPayload;
|
|
33
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
34
|
+
data: NoteWrappedPayload;
|
|
35
|
+
}>;
|
|
23
36
|
/**
|
|
24
37
|
* 获取一篇日记
|
|
25
38
|
* @param id id | nid
|
|
26
39
|
* @param password 访问密码
|
|
27
40
|
*/
|
|
28
|
-
getNoteById(id: string | number, password?: string): RequestProxyResult<NoteWrappedPayload, {
|
|
41
|
+
getNoteById(id: string | number, password?: string): import("../interfaces/request").RequestProxyResult<NoteWrappedPayload, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
29
42
|
[key: string]: any;
|
|
30
43
|
data: NoteWrappedPayload;
|
|
44
|
+
} : ResponseWrapper extends {
|
|
45
|
+
data: NoteWrappedPayload;
|
|
46
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
47
|
+
data: NoteWrappedPayload;
|
|
31
48
|
}>;
|
|
32
49
|
/**
|
|
33
50
|
* 日记列表分页
|
|
34
51
|
*/
|
|
35
|
-
getList(page?: number, perPage?: number, options?: NoteListOptions): RequestProxyResult<PaginateResult<NoteModel>, {
|
|
52
|
+
getList(page?: number, perPage?: number, options?: NoteListOptions): import("../interfaces/request").RequestProxyResult<PaginateResult<NoteModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
36
53
|
[key: string]: any;
|
|
37
54
|
data: PaginateResult<NoteModel>;
|
|
55
|
+
} : ResponseWrapper extends {
|
|
56
|
+
data: PaginateResult<NoteModel>;
|
|
57
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
58
|
+
data: PaginateResult<NoteModel>;
|
|
38
59
|
}>;
|
|
39
60
|
/**
|
|
40
61
|
* 获取当前日记的上下各 n / 2 篇日记
|
|
41
62
|
*/
|
|
42
|
-
getMiddleList(id: string, size?: number): RequestProxyResult<{
|
|
63
|
+
getMiddleList(id: string, size?: number): import("../interfaces/request").RequestProxyResult<{
|
|
43
64
|
data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[];
|
|
44
65
|
size: number;
|
|
45
|
-
}, {
|
|
66
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
46
67
|
[key: string]: any;
|
|
47
68
|
data: {
|
|
48
69
|
data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[];
|
|
49
70
|
size: number;
|
|
50
71
|
};
|
|
72
|
+
} : ResponseWrapper extends {
|
|
73
|
+
data: {
|
|
74
|
+
data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[];
|
|
75
|
+
size: number;
|
|
76
|
+
};
|
|
77
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
78
|
+
data: {
|
|
79
|
+
data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[];
|
|
80
|
+
size: number;
|
|
81
|
+
};
|
|
51
82
|
}>;
|
|
52
83
|
/**
|
|
53
84
|
* 喜欢这篇日记
|
|
54
85
|
*/
|
|
55
|
-
likeIt(id: string | number): RequestProxyResult<never, {
|
|
86
|
+
likeIt(id: string | number): import("../interfaces/request").RequestProxyResult<never, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
56
87
|
[key: string]: any;
|
|
57
88
|
data: never;
|
|
89
|
+
} : ResponseWrapper extends {
|
|
90
|
+
data: never;
|
|
91
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
92
|
+
data: never;
|
|
58
93
|
}>;
|
|
59
94
|
}
|
package/lib/controllers/note.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"note.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"note.js","sourceRoot":"","sources":["../../controllers/note.ts"],"names":[],"mappings":";;;AAMA,iDAA4C;AAmB5C,MAAa,cAAc;IAIzB,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAHtC,SAAI,GAAG,OAAO,CAAA;QACd,SAAI,GAAG,MAAM,CAAA;QAGX,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IACD,IAAI,KAAK;QACP,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,EAAsB,CAAA;IACpD,CAAC;IAED;;;;OAIG;IAEH,WAAW,CAAC,EAAmB,EAAE,QAAiB;QAChD,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;YAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAqB;gBAC3D,MAAM,EAAE,EAAE,QAAQ,EAAE;aACrB,CAAC,CAAA;SACH;aAAM;YACL,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAqB,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;SACxE;IACH,CAAC;IAED;;OAEG;IAEH,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,UAA2B,EAAE;QAC3D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B;YAC/C,MAAM,EAAE;gBACN,IAAI;gBACJ,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC;gBACzB,MAAM;gBACN,SAAS;gBACT,IAAI;aACL;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,EAAU,EAAE,IAAI,GAAG,CAAC;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAG3B;YACD,MAAM,EAAE,EAAE,IAAI,EAAE;SACjB,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,EAAmB;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,EAAS,CAAA;IACzC,CAAC;CACF;AAtED,wCAsEC"}
|
|
@@ -1,40 +1,59 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { SelectFields } from
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler } from '../interfaces/request';
|
|
4
|
+
import { SelectFields } from '../interfaces/types';
|
|
5
|
+
import { PaginateResult } from '../models/base';
|
|
6
|
+
import { PageModel } from '../models/page';
|
|
5
7
|
import { HTTPClient } from '../core';
|
|
8
|
+
declare module '../core/client' {
|
|
9
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
10
|
+
page: PageController<ResponseWrapper>;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
6
13
|
export declare type PageListOptions = {
|
|
7
14
|
select?: SelectFields<keyof PageModel>;
|
|
8
15
|
sortBy?: 'order' | 'subtitle' | 'title' | 'created' | 'modified';
|
|
9
16
|
sortOrder?: 1 | -1;
|
|
10
17
|
};
|
|
11
|
-
export declare class PageController implements IController {
|
|
18
|
+
export declare class PageController<ResponseWrapper> implements IController {
|
|
12
19
|
private readonly client;
|
|
13
20
|
constructor(client: HTTPClient);
|
|
14
21
|
base: string;
|
|
15
22
|
name: string;
|
|
16
|
-
get proxy():
|
|
23
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
17
24
|
/**
|
|
18
25
|
* 页面列表
|
|
19
26
|
*/
|
|
20
|
-
getList(page?: number, perPage?: number, options?: PageListOptions): import("../interfaces/request").RequestProxyResult<PaginateResult<PageModel>, {
|
|
27
|
+
getList(page?: number, perPage?: number, options?: PageListOptions): import("../interfaces/request").RequestProxyResult<PaginateResult<PageModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
21
28
|
[key: string]: any;
|
|
22
29
|
data: PaginateResult<PageModel>;
|
|
30
|
+
} : ResponseWrapper extends {
|
|
31
|
+
data: PaginateResult<PageModel>;
|
|
32
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
33
|
+
data: PaginateResult<PageModel>;
|
|
23
34
|
}>;
|
|
24
35
|
/**
|
|
25
36
|
* 页面详情
|
|
26
37
|
*/
|
|
27
|
-
getById(id: string): import("../interfaces/request").RequestProxyResult<PageModel, {
|
|
38
|
+
getById(id: string): import("../interfaces/request").RequestProxyResult<PageModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
28
39
|
[key: string]: any;
|
|
29
40
|
data: PageModel;
|
|
41
|
+
} : ResponseWrapper extends {
|
|
42
|
+
data: PageModel;
|
|
43
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
44
|
+
data: PageModel;
|
|
30
45
|
}>;
|
|
31
46
|
/**
|
|
32
47
|
* 根据路径获取页面
|
|
33
48
|
* @param slug 路径
|
|
34
49
|
* @returns
|
|
35
50
|
*/
|
|
36
|
-
getBySlug(slug: string): import("../interfaces/request").RequestProxyResult<PageModel, {
|
|
51
|
+
getBySlug(slug: string): import("../interfaces/request").RequestProxyResult<PageModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
37
52
|
[key: string]: any;
|
|
38
53
|
data: PageModel;
|
|
54
|
+
} : ResponseWrapper extends {
|
|
55
|
+
data: PageModel;
|
|
56
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
57
|
+
data: PageModel;
|
|
39
58
|
}>;
|
|
40
59
|
}
|
package/lib/controllers/page.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../controllers/page.ts"],"names":[],"mappings":";;;AAMA,iDAA4C;AAkB5C,MAAa,cAAc;IACzB,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAG/C,SAAI,GAAG,OAAO,CAAA;QACd,SAAI,GAAG,MAAM,CAAA;QAHX,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IAGD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IACD;;OAEG;IACH,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,UAA2B,EAAE;QAC3D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B;YAC/C,MAAM,EAAE;gBACN,IAAI;gBACJ,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC;gBACzB,MAAM;gBACN,SAAS;aACV;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,EAAa,CAAA;IACxC,CAAC;IACD;;;;OAIG;IACH,SAAS,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAY,EAAE,CAAC,CAAA;IACjD,CAAC;CACF;AAvCD,wCAuCC"}
|
|
@@ -1,54 +1,72 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler, RequestProxyResult } from '../interfaces/request';
|
|
4
|
+
import { SelectFields } from '../interfaces/types';
|
|
5
|
+
import { PaginateResult } from '../models/base';
|
|
6
|
+
import { PostModel } from '../models/post';
|
|
6
7
|
import { HTTPClient } from '../core/client';
|
|
8
|
+
declare module '../core/client' {
|
|
9
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
10
|
+
post: PostController<ResponseWrapper>;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
7
13
|
export declare type PostListOptions = {
|
|
8
14
|
select?: SelectFields<keyof PostModel>;
|
|
9
15
|
year?: number;
|
|
10
16
|
sortBy?: 'categoryId' | 'title' | 'created' | 'modified';
|
|
11
17
|
sortOrder?: 1 | -1;
|
|
12
18
|
};
|
|
13
|
-
export declare class PostController implements IController {
|
|
19
|
+
export declare class PostController<ResponseWrapper> implements IController {
|
|
14
20
|
private client;
|
|
15
21
|
constructor(client: HTTPClient);
|
|
16
22
|
base: string;
|
|
17
23
|
name: string;
|
|
18
|
-
get proxy():
|
|
24
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
19
25
|
/**
|
|
20
26
|
* 获取文章列表分页
|
|
21
27
|
* @param page
|
|
22
28
|
* @param perPage
|
|
23
29
|
* @returns
|
|
24
30
|
*/
|
|
25
|
-
getList(page?: number, perPage?: number, options?: PostListOptions): RequestProxyResult<PaginateResult<PostModel>, {
|
|
31
|
+
getList(page?: number, perPage?: number, options?: PostListOptions): RequestProxyResult<PaginateResult<PostModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
26
32
|
[key: string]: any;
|
|
27
33
|
data: PaginateResult<PostModel>;
|
|
34
|
+
} : ResponseWrapper extends {
|
|
35
|
+
data: PaginateResult<PostModel>;
|
|
36
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
37
|
+
data: PaginateResult<PostModel>;
|
|
28
38
|
}>;
|
|
29
39
|
/**
|
|
30
40
|
* 根据分类和路径查找文章
|
|
31
41
|
* @param categoryName
|
|
32
42
|
* @param slug
|
|
33
43
|
*/
|
|
34
|
-
getPost(categoryName: string, slug: string): RequestProxyResult<PostModel>;
|
|
44
|
+
getPost(categoryName: string, slug: string): RequestProxyResult<PostModel, ResponseWrapper>;
|
|
35
45
|
/**
|
|
36
46
|
* 根据 ID 查找文章
|
|
37
47
|
* @param id
|
|
38
48
|
*/
|
|
39
|
-
getPost(id: string): RequestProxyResult<PostModel>;
|
|
49
|
+
getPost(id: string): RequestProxyResult<PostModel, ResponseWrapper>;
|
|
40
50
|
/**
|
|
41
51
|
* 获取最新的文章
|
|
42
52
|
*/
|
|
43
|
-
getLatest(): RequestProxyResult<PostModel, {
|
|
53
|
+
getLatest(): RequestProxyResult<PostModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
44
54
|
[key: string]: any;
|
|
45
55
|
data: PostModel;
|
|
56
|
+
} : ResponseWrapper extends {
|
|
57
|
+
data: PostModel;
|
|
58
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
59
|
+
data: PostModel;
|
|
46
60
|
}>;
|
|
47
61
|
/**
|
|
48
62
|
* 点赞
|
|
49
63
|
*/
|
|
50
|
-
thumbsUp(id: string): RequestProxyResult<void, {
|
|
64
|
+
thumbsUp(id: string): RequestProxyResult<void, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
51
65
|
[key: string]: any;
|
|
52
66
|
data: void;
|
|
67
|
+
} : ResponseWrapper extends {
|
|
68
|
+
data: void;
|
|
69
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
70
|
+
data: void;
|
|
53
71
|
}>;
|
|
54
72
|
}
|