@mx-space/api-client 0.7.0 → 0.7.3
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 +34 -32
- package/adaptors/umi-request.ts +25 -22
- package/build/index.cjs.js +30 -32
- 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 +30 -32
- 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 +30 -32
- 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 +9 -5
- package/controllers/base.ts +3 -3
- package/controllers/category.ts +18 -7
- package/controllers/comment.ts +10 -6
- package/controllers/index.ts +4 -0
- package/controllers/link.ts +11 -4
- package/controllers/note.ts +11 -7
- package/controllers/page.ts +10 -5
- package/controllers/post.ts +15 -8
- package/controllers/project.ts +10 -3
- package/controllers/recently.ts +10 -5
- package/controllers/say.ts +10 -5
- package/controllers/search.ts +14 -7
- package/controllers/severless.ts +31 -0
- package/controllers/snippet.ts +11 -6
- package/controllers/user.ts +10 -5
- package/core/attach-request.ts +1 -1
- package/core/client.ts +37 -47
- package/coverage/clover.xml +357 -337
- package/coverage/coverage-final.json +27 -26
- package/coverage/lcov-report/adaptors/axios.ts.html +50 -44
- package/coverage/lcov-report/adaptors/index.html +24 -24
- package/coverage/lcov-report/adaptors/umi-request.ts.html +42 -33
- package/coverage/lcov-report/auto-bind.ts.html +229 -0
- package/coverage/lcov-report/controllers/aggregate.ts.html +23 -11
- package/coverage/lcov-report/controllers/base.ts.html +6 -6
- package/coverage/lcov-report/controllers/category.ts.html +48 -15
- package/coverage/lcov-report/controllers/comment.ts.html +23 -11
- package/coverage/lcov-report/controllers/index.html +26 -11
- package/coverage/lcov-report/controllers/index.ts.html +40 -28
- package/coverage/lcov-report/controllers/link.ts.html +31 -10
- package/coverage/lcov-report/controllers/note.ts.html +24 -12
- package/coverage/lcov-report/controllers/page.ts.html +25 -10
- package/coverage/lcov-report/controllers/post.ts.html +39 -18
- package/coverage/lcov-report/controllers/project.ts.html +30 -9
- package/coverage/lcov-report/controllers/recently.ts.html +25 -10
- package/coverage/lcov-report/controllers/say.ts.html +26 -11
- package/coverage/lcov-report/controllers/search.ts.html +33 -12
- package/coverage/lcov-report/controllers/severless.ts.html +178 -0
- package/coverage/lcov-report/controllers/snippet.ts.html +26 -11
- package/coverage/lcov-report/controllers/user.ts.html +25 -10
- package/coverage/lcov-report/core/attach-request.ts.html +14 -14
- package/coverage/lcov-report/core/client.ts.html +120 -150
- package/coverage/lcov-report/core/error.ts.html +2 -2
- package/coverage/lcov-report/core/index.html +18 -18
- package/coverage/lcov-report/core/index.ts.html +3 -3
- package/coverage/lcov-report/index.html +34 -34
- package/coverage/lcov-report/index.ts.html +244 -0
- package/coverage/lcov-report/models/aggregate.ts.html +1 -1
- package/coverage/lcov-report/models/category.ts.html +4 -4
- package/coverage/lcov-report/models/index.html +1 -1
- package/coverage/lcov-report/utils/auto-bind.ts.html +20 -20
- package/coverage/lcov-report/utils/index.html +1 -1
- package/coverage/lcov-report/utils/index.ts.html +7 -7
- package/coverage/lcov.info +615 -577
- package/esm/adaptors/axios.d.ts +2 -2
- package/esm/adaptors/axios.js +1 -0
- package/esm/adaptors/axios.js.map +1 -1
- package/esm/adaptors/umi-request.d.ts +2 -2
- package/esm/adaptors/umi-request.js +1 -0
- package/esm/adaptors/umi-request.js.map +1 -1
- package/esm/controllers/aggregate.d.ts +25 -8
- package/esm/controllers/aggregate.js.map +1 -1
- package/esm/controllers/base.d.ts +17 -5
- package/esm/controllers/category.d.ts +64 -13
- package/esm/controllers/category.js.map +1 -1
- package/esm/controllers/comment.d.ts +42 -10
- package/esm/controllers/comment.js.map +1 -1
- package/esm/controllers/index.d.ts +4 -3
- package/esm/controllers/index.js +4 -1
- package/esm/controllers/index.js.map +1 -1
- package/esm/controllers/link.d.ts +5 -4
- package/esm/controllers/link.js.map +1 -1
- package/esm/controllers/note.d.ts +42 -12
- package/esm/controllers/note.js.map +1 -1
- package/esm/controllers/page.d.ts +22 -8
- package/esm/controllers/page.js.map +1 -1
- package/esm/controllers/post.d.ts +24 -11
- package/esm/controllers/post.js.map +1 -1
- package/esm/controllers/project.d.ts +4 -3
- package/esm/controllers/project.js.map +1 -1
- package/esm/controllers/recently.d.ts +30 -8
- package/esm/controllers/recently.js.map +1 -1
- package/esm/controllers/say.d.ts +15 -5
- package/esm/controllers/say.js.map +1 -1
- package/esm/controllers/search.d.ts +168 -9
- package/esm/controllers/search.js.map +1 -1
- package/esm/controllers/severless.d.ts +24 -0
- package/esm/controllers/severless.js +16 -0
- package/esm/controllers/severless.js.map +1 -0
- package/esm/controllers/snippet.d.ts +17 -7
- package/esm/controllers/snippet.js.map +1 -1
- package/esm/controllers/user.d.ts +28 -8
- 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 +9 -6
- package/esm/core/client.js +13 -32
- package/esm/core/client.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/client.d.ts +1 -1
- package/esm/interfaces/request.d.ts +22 -13
- 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/post.d.ts +0 -1
- package/index.ts +2 -1
- package/interfaces/adapter.ts +29 -24
- package/interfaces/client.ts +1 -1
- package/interfaces/request.ts +45 -20
- package/{types/helper.d.ts → interfaces/types.ts} +0 -0
- package/lib/adaptors/axios.d.ts +2 -2
- package/lib/adaptors/axios.js +1 -0
- package/lib/adaptors/axios.js.map +1 -1
- package/lib/adaptors/umi-request.d.ts +2 -2
- package/lib/adaptors/umi-request.js +1 -0
- package/lib/adaptors/umi-request.js.map +1 -1
- package/lib/controllers/aggregate.d.ts +25 -8
- package/lib/controllers/aggregate.js.map +1 -1
- package/lib/controllers/base.d.ts +17 -5
- package/lib/controllers/category.d.ts +64 -13
- package/lib/controllers/category.js.map +1 -1
- package/lib/controllers/comment.d.ts +42 -10
- package/lib/controllers/comment.js.map +1 -1
- package/lib/controllers/index.d.ts +4 -3
- package/lib/controllers/index.js +5 -1
- package/lib/controllers/index.js.map +1 -1
- package/lib/controllers/link.d.ts +5 -4
- package/lib/controllers/link.js.map +1 -1
- package/lib/controllers/note.d.ts +42 -12
- package/lib/controllers/note.js.map +1 -1
- package/lib/controllers/page.d.ts +22 -8
- package/lib/controllers/page.js.map +1 -1
- package/lib/controllers/post.d.ts +24 -11
- package/lib/controllers/post.js.map +1 -1
- package/lib/controllers/project.d.ts +4 -3
- package/lib/controllers/project.js.map +1 -1
- package/lib/controllers/recently.d.ts +30 -8
- package/lib/controllers/recently.js.map +1 -1
- package/lib/controllers/say.d.ts +15 -5
- package/lib/controllers/say.js.map +1 -1
- package/lib/controllers/search.d.ts +168 -9
- package/lib/controllers/search.js.map +1 -1
- package/lib/controllers/severless.d.ts +24 -0
- package/lib/controllers/severless.js +20 -0
- package/lib/controllers/severless.js.map +1 -0
- package/lib/controllers/snippet.d.ts +17 -7
- package/lib/controllers/snippet.js.map +1 -1
- package/lib/controllers/user.d.ts +28 -8
- 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 +9 -6
- package/lib/core/client.js +13 -33
- package/lib/core/client.js.map +1 -1
- package/lib/core/index.js +5 -1
- package/lib/core/index.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +6 -3
- package/lib/index.js.map +1 -1
- package/lib/interfaces/adapter.d.ts +9 -8
- package/lib/interfaces/client.d.ts +1 -1
- package/lib/interfaces/request.d.ts +22 -13
- 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/index.js +5 -1
- package/lib/models/index.js.map +1 -1
- package/lib/models/post.d.ts +0 -1
- package/models/post.ts +0 -1
- package/package.json +12 -12
- package/tsconfig.json +25 -4
- 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 +17 -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/severless.d.ts +24 -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 +14 -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
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler, RequestProxyResult, ResponseProxyExtraRaw } from '../interfaces/request';
|
|
4
|
+
import { HTTPClient } from '../core/client';
|
|
5
|
+
import { CategoryModel, CategoryType, CategoryWithChildrenModel, TagModel } from '../models/category';
|
|
6
|
+
import { PostModel } from '../models/post';
|
|
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 {
|
|
13
|
+
private client;
|
|
14
|
+
name: string;
|
|
15
|
+
base: string;
|
|
16
|
+
constructor(client: HTTPClient);
|
|
17
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
18
|
+
getAllCategories(): RequestProxyResult<{
|
|
19
|
+
data: CategoryModel[];
|
|
20
|
+
}, ResponseWrapper>;
|
|
21
|
+
getAllTags(): RequestProxyResult<{
|
|
22
|
+
data: TagModel[];
|
|
23
|
+
}, ResponseWrapper>;
|
|
24
|
+
getCategoryDetail(id: string): Promise<ResponseProxyExtraRaw<CategoryWithChildrenModel>>;
|
|
25
|
+
getCategoryDetail(ids: string[]): Promise<ResponseProxyExtraRaw<Map<string, CategoryWithChildrenModel>>>;
|
|
26
|
+
getCategoryByIdOrSlug(idOrSlug: string): Promise<CategoryModel & {
|
|
27
|
+
children: Pick<PostModel, "id" | "title" | "slug" | "modified" | "created">[];
|
|
28
|
+
} & {
|
|
29
|
+
$raw: ResponseWrapper extends {
|
|
30
|
+
data: infer T;
|
|
31
|
+
} ? ResponseWrapper : ResponseWrapper extends unknown ? {
|
|
32
|
+
[i: string]: any;
|
|
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 ? {
|
|
41
|
+
type: CategoryType;
|
|
42
|
+
count: number;
|
|
43
|
+
slug: string;
|
|
44
|
+
name: string;
|
|
45
|
+
created: string;
|
|
46
|
+
id: string;
|
|
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;
|
|
55
|
+
};
|
|
56
|
+
} : ResponseWrapper;
|
|
57
|
+
$request: {
|
|
58
|
+
[k: string]: string;
|
|
59
|
+
path: string;
|
|
60
|
+
method: string;
|
|
61
|
+
};
|
|
62
|
+
}>;
|
|
63
|
+
getTagByName(name: string): Promise<{
|
|
64
|
+
tag: string;
|
|
65
|
+
data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[];
|
|
66
|
+
} & {
|
|
67
|
+
$raw: ResponseWrapper extends {
|
|
68
|
+
data: infer T;
|
|
69
|
+
} ? ResponseWrapper : ResponseWrapper extends unknown ? {
|
|
70
|
+
[i: string]: any;
|
|
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 ? {
|
|
88
|
+
tag: string;
|
|
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
|
+
};
|
|
106
|
+
};
|
|
107
|
+
} : ResponseWrapper;
|
|
108
|
+
$request: {
|
|
109
|
+
[k: string]: string;
|
|
110
|
+
path: string;
|
|
111
|
+
method: string;
|
|
112
|
+
};
|
|
113
|
+
}>;
|
|
114
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
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';
|
|
7
|
+
import { HTTPClient } from '../core';
|
|
8
|
+
import { CommentDto } from '../dtos/comment';
|
|
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 {
|
|
15
|
+
private readonly client;
|
|
16
|
+
base: string;
|
|
17
|
+
name: string;
|
|
18
|
+
constructor(client: HTTPClient);
|
|
19
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
20
|
+
/**
|
|
21
|
+
* 根据 comment id 获取评论, 包括子评论
|
|
22
|
+
*/
|
|
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
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* 获取文章的评论列表
|
|
41
|
+
* @param refId 文章 Id
|
|
42
|
+
*/
|
|
43
|
+
getByRefId(refId: string, pagination?: PaginationParams): import("../interfaces/request").RequestProxyResult<PaginateResult<CommentModel & {
|
|
44
|
+
ref: string;
|
|
45
|
+
}>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
46
|
+
[key: string]: any;
|
|
47
|
+
data: PaginateResult<CommentModel & {
|
|
48
|
+
ref: string;
|
|
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
|
+
}>;
|
|
58
|
+
}>;
|
|
59
|
+
/**
|
|
60
|
+
* 评论
|
|
61
|
+
*/
|
|
62
|
+
comment(refId: string, data: CommentDto): import("../interfaces/request").RequestProxyResult<CommentModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
63
|
+
[key: string]: any;
|
|
64
|
+
data: CommentModel;
|
|
65
|
+
} : ResponseWrapper extends {
|
|
66
|
+
data: CommentModel;
|
|
67
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
68
|
+
data: CommentModel;
|
|
69
|
+
}>;
|
|
70
|
+
/**
|
|
71
|
+
* 回复评论
|
|
72
|
+
*/
|
|
73
|
+
reply(commentId: string, data: CommentDto): import("../interfaces/request").RequestProxyResult<CommentModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
74
|
+
[key: string]: any;
|
|
75
|
+
data: CommentModel;
|
|
76
|
+
} : ResponseWrapper extends {
|
|
77
|
+
data: CommentModel;
|
|
78
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
79
|
+
data: CommentModel;
|
|
80
|
+
}>;
|
|
81
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { AggregateController } from './aggregate';
|
|
2
|
+
import { CategoryController } from './category';
|
|
3
|
+
import { CommentController } from './comment';
|
|
4
|
+
import { LinkController } from './link';
|
|
5
|
+
import { NoteController } from './note';
|
|
6
|
+
import { PageController } from './page';
|
|
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 { ServerlessController } from './severless';
|
|
13
|
+
import { SnippetController } from './snippet';
|
|
14
|
+
import { UserController } from './user';
|
|
15
|
+
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 ServerlessController | typeof SnippetController | typeof UserController)[];
|
|
16
|
+
export declare const allContollerNames: readonly ["aggregate", "category", "comment", "link", "note", "page", "post", "project", "recently", "say", "search", "snippet", "serverless", "user", "friend", "master", "shorthand"];
|
|
17
|
+
export { AggregateController, CategoryController, CommentController, LinkController, NoteController, PageController, PostController, ProjectController, RecentlyController, SayController, SearchController, SnippetController, ServerlessController, UserController, };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { LinkModel } from '../models/link';
|
|
3
|
+
import { HTTPClient } from '../core';
|
|
4
|
+
import { BaseCrudController } from './base';
|
|
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> {
|
|
12
|
+
protected readonly client: HTTPClient;
|
|
13
|
+
constructor(client: HTTPClient);
|
|
14
|
+
name: string[];
|
|
15
|
+
base: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
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';
|
|
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
|
+
}
|
|
13
|
+
export declare type NoteListOptions = {
|
|
14
|
+
select?: SelectFields<keyof NoteModel>;
|
|
15
|
+
year?: number;
|
|
16
|
+
sortBy?: 'weather' | 'mood' | 'title' | 'created' | 'modified';
|
|
17
|
+
sortOrder?: 1 | -1;
|
|
18
|
+
};
|
|
19
|
+
export declare class NoteController<ResponseWrapper> implements IController {
|
|
20
|
+
private client;
|
|
21
|
+
base: string;
|
|
22
|
+
name: string;
|
|
23
|
+
constructor(client: HTTPClient);
|
|
24
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
25
|
+
/**
|
|
26
|
+
* 最新日记
|
|
27
|
+
*/
|
|
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
|
+
}>;
|
|
36
|
+
/**
|
|
37
|
+
* 获取一篇日记
|
|
38
|
+
* @param id id | nid
|
|
39
|
+
* @param password 访问密码
|
|
40
|
+
*/
|
|
41
|
+
getNoteById(id: string | number, password?: string): import("../interfaces/request").RequestProxyResult<NoteWrappedPayload, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
data: NoteWrappedPayload;
|
|
44
|
+
} : ResponseWrapper extends {
|
|
45
|
+
data: NoteWrappedPayload;
|
|
46
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
47
|
+
data: NoteWrappedPayload;
|
|
48
|
+
}>;
|
|
49
|
+
/**
|
|
50
|
+
* 日记列表分页
|
|
51
|
+
*/
|
|
52
|
+
getList(page?: number, perPage?: number, options?: NoteListOptions): import("../interfaces/request").RequestProxyResult<PaginateResult<NoteModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
53
|
+
[key: string]: any;
|
|
54
|
+
data: PaginateResult<NoteModel>;
|
|
55
|
+
} : ResponseWrapper extends {
|
|
56
|
+
data: PaginateResult<NoteModel>;
|
|
57
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
58
|
+
data: PaginateResult<NoteModel>;
|
|
59
|
+
}>;
|
|
60
|
+
/**
|
|
61
|
+
* 获取当前日记的上下各 n / 2 篇日记
|
|
62
|
+
*/
|
|
63
|
+
getMiddleList(id: string, size?: number): import("../interfaces/request").RequestProxyResult<{
|
|
64
|
+
data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[];
|
|
65
|
+
size: number;
|
|
66
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
67
|
+
[key: string]: any;
|
|
68
|
+
data: {
|
|
69
|
+
data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[];
|
|
70
|
+
size: number;
|
|
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
|
+
};
|
|
82
|
+
}>;
|
|
83
|
+
/**
|
|
84
|
+
* 喜欢这篇日记
|
|
85
|
+
*/
|
|
86
|
+
likeIt(id: string | number): import("../interfaces/request").RequestProxyResult<never, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
87
|
+
[key: string]: any;
|
|
88
|
+
data: never;
|
|
89
|
+
} : ResponseWrapper extends {
|
|
90
|
+
data: never;
|
|
91
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
92
|
+
data: never;
|
|
93
|
+
}>;
|
|
94
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
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';
|
|
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
|
+
}
|
|
13
|
+
export declare type PageListOptions = {
|
|
14
|
+
select?: SelectFields<keyof PageModel>;
|
|
15
|
+
sortBy?: 'order' | 'subtitle' | 'title' | 'created' | 'modified';
|
|
16
|
+
sortOrder?: 1 | -1;
|
|
17
|
+
};
|
|
18
|
+
export declare class PageController<ResponseWrapper> implements IController {
|
|
19
|
+
private readonly client;
|
|
20
|
+
constructor(client: HTTPClient);
|
|
21
|
+
base: string;
|
|
22
|
+
name: string;
|
|
23
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
24
|
+
/**
|
|
25
|
+
* 页面列表
|
|
26
|
+
*/
|
|
27
|
+
getList(page?: number, perPage?: number, options?: PageListOptions): import("../interfaces/request").RequestProxyResult<PaginateResult<PageModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
28
|
+
[key: string]: any;
|
|
29
|
+
data: PaginateResult<PageModel>;
|
|
30
|
+
} : ResponseWrapper extends {
|
|
31
|
+
data: PaginateResult<PageModel>;
|
|
32
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
33
|
+
data: PaginateResult<PageModel>;
|
|
34
|
+
}>;
|
|
35
|
+
/**
|
|
36
|
+
* 页面详情
|
|
37
|
+
*/
|
|
38
|
+
getById(id: string): import("../interfaces/request").RequestProxyResult<PageModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
39
|
+
[key: string]: any;
|
|
40
|
+
data: PageModel;
|
|
41
|
+
} : ResponseWrapper extends {
|
|
42
|
+
data: PageModel;
|
|
43
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
44
|
+
data: PageModel;
|
|
45
|
+
}>;
|
|
46
|
+
/**
|
|
47
|
+
* 根据路径获取页面
|
|
48
|
+
* @param slug 路径
|
|
49
|
+
* @returns
|
|
50
|
+
*/
|
|
51
|
+
getBySlug(slug: string): import("../interfaces/request").RequestProxyResult<PageModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
52
|
+
[key: string]: any;
|
|
53
|
+
data: PageModel;
|
|
54
|
+
} : ResponseWrapper extends {
|
|
55
|
+
data: PageModel;
|
|
56
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
57
|
+
data: PageModel;
|
|
58
|
+
}>;
|
|
59
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
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';
|
|
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
|
+
}
|
|
13
|
+
export declare type PostListOptions = {
|
|
14
|
+
select?: SelectFields<keyof PostModel>;
|
|
15
|
+
year?: number;
|
|
16
|
+
sortBy?: 'categoryId' | 'title' | 'created' | 'modified';
|
|
17
|
+
sortOrder?: 1 | -1;
|
|
18
|
+
};
|
|
19
|
+
export declare class PostController<ResponseWrapper> implements IController {
|
|
20
|
+
private client;
|
|
21
|
+
constructor(client: HTTPClient);
|
|
22
|
+
base: string;
|
|
23
|
+
name: string;
|
|
24
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
25
|
+
/**
|
|
26
|
+
* 获取文章列表分页
|
|
27
|
+
* @param page
|
|
28
|
+
* @param perPage
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
31
|
+
getList(page?: number, perPage?: number, options?: PostListOptions): RequestProxyResult<PaginateResult<PostModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
data: PaginateResult<PostModel>;
|
|
34
|
+
} : ResponseWrapper extends {
|
|
35
|
+
data: PaginateResult<PostModel>;
|
|
36
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
37
|
+
data: PaginateResult<PostModel>;
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* 根据分类和路径查找文章
|
|
41
|
+
* @param categoryName
|
|
42
|
+
* @param slug
|
|
43
|
+
*/
|
|
44
|
+
getPost(categoryName: string, slug: string): RequestProxyResult<PostModel, ResponseWrapper>;
|
|
45
|
+
/**
|
|
46
|
+
* 根据 ID 查找文章
|
|
47
|
+
* @param id
|
|
48
|
+
*/
|
|
49
|
+
getPost(id: string): RequestProxyResult<PostModel, ResponseWrapper>;
|
|
50
|
+
/**
|
|
51
|
+
* 获取最新的文章
|
|
52
|
+
*/
|
|
53
|
+
getLatest(): RequestProxyResult<PostModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
54
|
+
[key: string]: any;
|
|
55
|
+
data: PostModel;
|
|
56
|
+
} : ResponseWrapper extends {
|
|
57
|
+
data: PostModel;
|
|
58
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
59
|
+
data: PostModel;
|
|
60
|
+
}>;
|
|
61
|
+
/**
|
|
62
|
+
* 点赞
|
|
63
|
+
*/
|
|
64
|
+
thumbsUp(id: string): RequestProxyResult<void, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
65
|
+
[key: string]: any;
|
|
66
|
+
data: void;
|
|
67
|
+
} : ResponseWrapper extends {
|
|
68
|
+
data: void;
|
|
69
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
70
|
+
data: void;
|
|
71
|
+
}>;
|
|
72
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { ProjectModel } from '../models/project';
|
|
3
|
+
import { HTTPClient } from '../core';
|
|
4
|
+
import { BaseCrudController } from './base';
|
|
5
|
+
declare module '../core/client' {
|
|
6
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
7
|
+
project: ProjectController<ResponseWrapper>;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export declare class ProjectController<ResponseWrapper> extends BaseCrudController<ProjectModel, ResponseWrapper> {
|
|
11
|
+
protected readonly client: HTTPClient;
|
|
12
|
+
constructor(client: HTTPClient);
|
|
13
|
+
base: string;
|
|
14
|
+
name: string;
|
|
15
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler } from '../interfaces/request';
|
|
4
|
+
import { RecentlyModel } from '../models/recently';
|
|
5
|
+
import { HTTPClient } from '../core';
|
|
6
|
+
declare module '../core/client' {
|
|
7
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
8
|
+
recently: RecentlyController<ResponseWrapper>;
|
|
9
|
+
shorthand: RecentlyController<ResponseWrapper>;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export declare class RecentlyController<ResponseWrapper> implements IController {
|
|
13
|
+
private readonly client;
|
|
14
|
+
base: string;
|
|
15
|
+
name: string[];
|
|
16
|
+
constructor(client: HTTPClient);
|
|
17
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
18
|
+
/**
|
|
19
|
+
* 获取最新一条
|
|
20
|
+
*/
|
|
21
|
+
getLatestOne(): import("../interfaces/request").RequestProxyResult<RecentlyModel, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
22
|
+
[key: string]: any;
|
|
23
|
+
data: RecentlyModel;
|
|
24
|
+
} : ResponseWrapper extends {
|
|
25
|
+
data: RecentlyModel;
|
|
26
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
27
|
+
data: RecentlyModel;
|
|
28
|
+
}>;
|
|
29
|
+
getAll(): import("../interfaces/request").RequestProxyResult<{
|
|
30
|
+
data: RecentlyModel[];
|
|
31
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
data: {
|
|
34
|
+
data: RecentlyModel[];
|
|
35
|
+
};
|
|
36
|
+
} : ResponseWrapper extends {
|
|
37
|
+
data: {
|
|
38
|
+
data: RecentlyModel[];
|
|
39
|
+
};
|
|
40
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
41
|
+
data: {
|
|
42
|
+
data: RecentlyModel[];
|
|
43
|
+
};
|
|
44
|
+
}>;
|
|
45
|
+
getList(before?: string | undefined, after?: string | undefined, size?: number | number): import("../interfaces/request").RequestProxyResult<{
|
|
46
|
+
data: RecentlyModel[];
|
|
47
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
48
|
+
[key: string]: any;
|
|
49
|
+
data: {
|
|
50
|
+
data: RecentlyModel[];
|
|
51
|
+
};
|
|
52
|
+
} : ResponseWrapper extends {
|
|
53
|
+
data: {
|
|
54
|
+
data: RecentlyModel[];
|
|
55
|
+
};
|
|
56
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
57
|
+
data: {
|
|
58
|
+
data: RecentlyModel[];
|
|
59
|
+
};
|
|
60
|
+
}>;
|
|
61
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { IRequestAdapter } from '../interfaces/adapter';
|
|
2
|
+
import { IController } from '../interfaces/controller';
|
|
3
|
+
import { IRequestHandler } from '../interfaces/request';
|
|
4
|
+
import { SayModel } from '../models/say';
|
|
5
|
+
import { HTTPClient } from '../core';
|
|
6
|
+
import { BaseCrudController } from './base';
|
|
7
|
+
declare module '../core/client' {
|
|
8
|
+
interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
|
|
9
|
+
say: SayController<ResponseWrapper>;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export declare class SayController<ResponseWrapper> extends BaseCrudController<SayModel, ResponseWrapper> implements IController {
|
|
13
|
+
protected client: HTTPClient;
|
|
14
|
+
base: string;
|
|
15
|
+
name: string;
|
|
16
|
+
constructor(client: HTTPClient);
|
|
17
|
+
get proxy(): IRequestHandler<ResponseWrapper>;
|
|
18
|
+
/**
|
|
19
|
+
* 获取随机一条
|
|
20
|
+
*/
|
|
21
|
+
getRandom(): import("../interfaces/request").RequestProxyResult<{
|
|
22
|
+
data: SayModel | null;
|
|
23
|
+
}, ResponseWrapper, ResponseWrapper extends unknown ? {
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
data: {
|
|
26
|
+
data: SayModel | null;
|
|
27
|
+
};
|
|
28
|
+
} : ResponseWrapper extends {
|
|
29
|
+
data: {
|
|
30
|
+
data: SayModel | null;
|
|
31
|
+
};
|
|
32
|
+
} ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
|
|
33
|
+
data: {
|
|
34
|
+
data: SayModel | null;
|
|
35
|
+
};
|
|
36
|
+
}>;
|
|
37
|
+
}
|