@book000/pixivts 0.9.0 โ 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/checks.d.ts +21 -0
- package/dist/checks.d.ts.map +1 -0
- package/dist/checks.js +85 -0
- package/dist/checks.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/options.d.ts +19 -4
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +60 -1
- package/dist/options.js.map +1 -1
- package/dist/pixiv.d.ts +2 -2
- package/dist/pixiv.js +2 -2
- package/dist/pixiv.test.d.ts +2 -0
- package/dist/pixiv.test.d.ts.map +1 -0
- package/dist/pixiv.test.js +225 -0
- package/dist/pixiv.test.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/endpoints/v1/illust/detail.d.ts +5 -0
- package/dist/types/endpoints/v1/illust/detail.d.ts.map +1 -1
- package/dist/types/endpoints/v1/illust/detail.js +17 -0
- package/dist/types/endpoints/v1/illust/detail.js.map +1 -1
- package/dist/types/endpoints/v1/illust/recommended.d.ts +7 -2
- package/dist/types/endpoints/v1/illust/recommended.d.ts.map +1 -1
- package/dist/types/endpoints/v1/illust/recommended.js +34 -0
- package/dist/types/endpoints/v1/illust/recommended.js.map +1 -1
- package/dist/types/endpoints/v1/illust/series.d.ts +6 -1
- package/dist/types/endpoints/v1/illust/series.d.ts.map +1 -1
- package/dist/types/endpoints/v1/illust/series.js +26 -0
- package/dist/types/endpoints/v1/illust/series.js.map +1 -1
- package/dist/types/endpoints/v1/novel/recommended.d.ts +6 -1
- package/dist/types/endpoints/v1/novel/recommended.d.ts.map +1 -1
- package/dist/types/endpoints/v1/novel/recommended.js +29 -0
- package/dist/types/endpoints/v1/novel/recommended.js.map +1 -1
- package/dist/types/endpoints/v1/novel/text.d.ts +12 -2
- package/dist/types/endpoints/v1/novel/text.d.ts.map +1 -1
- package/dist/types/endpoints/v1/novel/text.js +26 -0
- package/dist/types/endpoints/v1/novel/text.js.map +1 -1
- package/dist/types/endpoints/v1/search/illust.d.ts +5 -0
- package/dist/types/endpoints/v1/search/illust.d.ts.map +1 -1
- package/dist/types/endpoints/v1/search/illust.js +32 -0
- package/dist/types/endpoints/v1/search/illust.js.map +1 -1
- package/dist/types/endpoints/v1/search/novel.d.ts +5 -0
- package/dist/types/endpoints/v1/search/novel.d.ts.map +1 -1
- package/dist/types/endpoints/v1/search/novel.js +32 -0
- package/dist/types/endpoints/v1/search/novel.js.map +1 -1
- package/dist/types/endpoints/v1/user/detail.d.ts +5 -0
- package/dist/types/endpoints/v1/user/detail.d.ts.map +1 -1
- package/dist/types/endpoints/v1/user/detail.js +23 -0
- package/dist/types/endpoints/v1/user/detail.js.map +1 -1
- package/dist/types/endpoints/v2/novel/detail.d.ts +5 -0
- package/dist/types/endpoints/v2/novel/detail.d.ts.map +1 -1
- package/dist/types/endpoints/v2/novel/detail.js +17 -0
- package/dist/types/endpoints/v2/novel/detail.js.map +1 -1
- package/dist/types/endpoints/v2/novel/series.d.ts +7 -2
- package/dist/types/endpoints/v2/novel/series.d.ts.map +1 -1
- package/dist/types/endpoints/v2/novel/series.js +26 -0
- package/dist/types/endpoints/v2/novel/series.js.map +1 -1
- package/dist/types/error-response.d.ts +1 -1
- package/dist/types/error-response.d.ts.map +1 -1
- package/dist/types/pixiv-common.d.ts +17 -1
- package/dist/types/pixiv-common.d.ts.map +1 -1
- package/dist/types/pixiv-common.js +61 -0
- package/dist/types/pixiv-common.js.map +1 -1
- package/dist/types/pixiv-illust-series.d.ts +4 -0
- package/dist/types/pixiv-illust-series.d.ts.map +1 -1
- package/dist/types/pixiv-illust-series.js +23 -0
- package/dist/types/pixiv-illust-series.js.map +1 -1
- package/dist/types/pixiv-illust.d.ts +5 -1
- package/dist/types/pixiv-illust.d.ts.map +1 -1
- package/dist/types/pixiv-illust.js +49 -0
- package/dist/types/pixiv-illust.js.map +1 -1
- package/dist/types/pixiv-novel-series.d.ts +7 -0
- package/dist/types/pixiv-novel-series.d.ts.map +1 -1
- package/dist/types/pixiv-novel-series.js +38 -0
- package/dist/types/pixiv-novel-series.js.map +1 -1
- package/dist/types/pixiv-novel.d.ts +6 -2
- package/dist/types/pixiv-novel.d.ts.map +1 -1
- package/dist/types/pixiv-novel.js +39 -0
- package/dist/types/pixiv-novel.js.map +1 -1
- package/dist/types/pixiv-user.d.ts +14 -1
- package/dist/types/pixiv-user.d.ts.map +1 -1
- package/dist/types/pixiv-user.js +91 -0
- package/dist/types/pixiv-user.js.map +1 -1
- package/dist/utils.d.ts +2 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +8 -0
- package/dist/utils.js.map +1 -0
- package/dist/utils.test.d.ts +2 -0
- package/dist/utils.test.d.ts.map +1 -0
- package/dist/utils.test.js +10 -0
- package/dist/utils.test.js.map +1 -0
- package/package.json +24 -3
package/dist/checks.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type CheckFunction<T> = (data: T) => boolean;
|
|
2
|
+
export type CheckFunctions<T> = {
|
|
3
|
+
[key: string]: CheckFunction<T>;
|
|
4
|
+
};
|
|
5
|
+
export declare abstract class BaseSimpleCheck<T> {
|
|
6
|
+
abstract checks(): CheckFunctions<T>;
|
|
7
|
+
getFailedChecks(data: T, reThrow?: boolean): string[];
|
|
8
|
+
is(data: T): data is T;
|
|
9
|
+
throwIfFailed(data: T): boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare abstract class BaseMultipleCheck<T, U> {
|
|
12
|
+
abstract requestChecks(): CheckFunctions<T>;
|
|
13
|
+
abstract responseChecks(): CheckFunctions<U>;
|
|
14
|
+
getFailureRequestChecks(data: T, reThrow?: boolean): string[];
|
|
15
|
+
isRequest(data: T): data is T;
|
|
16
|
+
throwIfRequestFailed(data: T): boolean;
|
|
17
|
+
getFailedResponseChecks(data: U, reThrow?: boolean): string[];
|
|
18
|
+
isResponse(data: U): data is U;
|
|
19
|
+
throwIfResponseFailed(data: U): boolean;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=checks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAA;AACnD,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;CAChC,CAAA;AAED,8BAAsB,eAAe,CAAC,CAAC;IACrC,QAAQ,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAEpC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,UAAQ,GAAG,MAAM,EAAE;IAenD,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC;IAItB,aAAa,CAAC,IAAI,EAAE,CAAC;CAOtB;AAED,8BAAsB,iBAAiB,CAAC,CAAC,EAAE,CAAC;IAC1C,QAAQ,CAAC,aAAa,IAAI,cAAc,CAAC,CAAC,CAAC;IAE3C,QAAQ,CAAC,cAAc,IAAI,cAAc,CAAC,CAAC,CAAC;IAE5C,uBAAuB,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,UAAQ,GAAG,MAAM,EAAE;IAe3D,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC;IAI7B,oBAAoB,CAAC,IAAI,EAAE,CAAC;IAQ5B,uBAAuB,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,UAAQ,GAAG,MAAM,EAAE;IAe3D,UAAU,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC;IAI9B,qBAAqB,CAAC,IAAI,EAAE,CAAC;CAO9B"}
|
package/dist/checks.js
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseMultipleCheck = exports.BaseSimpleCheck = void 0;
|
|
4
|
+
class BaseSimpleCheck {
|
|
5
|
+
getFailedChecks(data, reThrow = false) {
|
|
6
|
+
const checks = this.checks();
|
|
7
|
+
return Object.keys(checks).filter((key) => {
|
|
8
|
+
// ๅคฑๆใชใtrueใ่ฟใ
|
|
9
|
+
try {
|
|
10
|
+
return !checks[key](data); // Trueใใคไพๅคใ็บ็ใใชใๅ ดๅใฏๆๅ (falseใ่ฟใ)
|
|
11
|
+
}
|
|
12
|
+
catch (error) {
|
|
13
|
+
if (reThrow) {
|
|
14
|
+
throw error;
|
|
15
|
+
}
|
|
16
|
+
return true; // ไพๅคใฎๅ ดๅใฏๅคฑๆ (true)
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
is(data) {
|
|
21
|
+
return this.getFailedChecks(data).length === 0;
|
|
22
|
+
}
|
|
23
|
+
throwIfFailed(data) {
|
|
24
|
+
const failedChecks = this.getFailedChecks(data, true);
|
|
25
|
+
if (failedChecks.length > 0) {
|
|
26
|
+
throw new Error(`Failed checks: ${failedChecks.join(', ')}`);
|
|
27
|
+
}
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.BaseSimpleCheck = BaseSimpleCheck;
|
|
32
|
+
class BaseMultipleCheck {
|
|
33
|
+
getFailureRequestChecks(data, reThrow = false) {
|
|
34
|
+
const checks = this.requestChecks();
|
|
35
|
+
return Object.keys(checks).filter((key) => {
|
|
36
|
+
// ๅคฑๆใชใtrueใ่ฟใ
|
|
37
|
+
try {
|
|
38
|
+
return !checks[key](data); // Trueใใคไพๅคใ็บ็ใใชใๅ ดๅใฏๆๅ (falseใ่ฟใ)
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
if (reThrow) {
|
|
42
|
+
throw error;
|
|
43
|
+
}
|
|
44
|
+
return true; // ไพๅคใฎๅ ดๅใฏๅคฑๆ (true)
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
isRequest(data) {
|
|
49
|
+
return this.getFailureRequestChecks(data).length === 0;
|
|
50
|
+
}
|
|
51
|
+
throwIfRequestFailed(data) {
|
|
52
|
+
const failedChecks = this.getFailureRequestChecks(data, true);
|
|
53
|
+
if (failedChecks.length > 0) {
|
|
54
|
+
throw new Error(`Failed checks: ${failedChecks.join(', ')}`);
|
|
55
|
+
}
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
getFailedResponseChecks(data, reThrow = false) {
|
|
59
|
+
const checks = this.responseChecks();
|
|
60
|
+
return Object.keys(checks).filter((key) => {
|
|
61
|
+
// ๅคฑๆใชใtrueใ่ฟใ
|
|
62
|
+
try {
|
|
63
|
+
return !checks[key](data); // Trueใใคไพๅคใ็บ็ใใชใๅ ดๅใฏๆๅ (falseใ่ฟใ)
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
if (reThrow) {
|
|
67
|
+
throw error;
|
|
68
|
+
}
|
|
69
|
+
return true; // ไพๅคใฎๅ ดๅใฏๅคฑๆ (true)
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
isResponse(data) {
|
|
74
|
+
return this.getFailedResponseChecks(data).length === 0;
|
|
75
|
+
}
|
|
76
|
+
throwIfResponseFailed(data) {
|
|
77
|
+
const failedChecks = this.getFailedResponseChecks(data, true);
|
|
78
|
+
if (failedChecks.length > 0) {
|
|
79
|
+
throw new Error(`Failed checks: ${failedChecks.join(', ')}`);
|
|
80
|
+
}
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
exports.BaseMultipleCheck = BaseMultipleCheck;
|
|
85
|
+
//# sourceMappingURL=checks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -16,6 +16,8 @@ export * from './types/pixiv-illust';
|
|
|
16
16
|
export * from './types/pixiv-novel-series';
|
|
17
17
|
export * from './types/pixiv-novel';
|
|
18
18
|
export * from './types/pixiv-user';
|
|
19
|
+
export * from './checks';
|
|
19
20
|
export * from './options';
|
|
20
21
|
export { default as Pixiv } from './pixiv';
|
|
22
|
+
export * from './utils';
|
|
21
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0CAA0C,CAAA;AACxD,cAAc,oCAAoC,CAAA;AAClD,cAAc,yCAAyC,CAAA;AACvD,cAAc,oCAAoC,CAAA;AAClD,cAAc,wCAAwC,CAAA;AACtD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,mCAAmC,CAAA;AACjD,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0CAA0C,CAAA;AACxD,cAAc,oCAAoC,CAAA;AAClD,cAAc,yCAAyC,CAAA;AACvD,cAAc,oCAAoC,CAAA;AAClD,cAAc,wCAAwC,CAAA;AACtD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,mCAAmC,CAAA;AACjD,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA;AAC1C,cAAc,SAAS,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -36,7 +36,9 @@ __exportStar(require("./types/pixiv-illust"), exports);
|
|
|
36
36
|
__exportStar(require("./types/pixiv-novel-series"), exports);
|
|
37
37
|
__exportStar(require("./types/pixiv-novel"), exports);
|
|
38
38
|
__exportStar(require("./types/pixiv-user"), exports);
|
|
39
|
+
__exportStar(require("./checks"), exports);
|
|
39
40
|
__exportStar(require("./options"), exports);
|
|
40
41
|
var pixiv_1 = require("./pixiv");
|
|
41
42
|
Object.defineProperty(exports, "Pixiv", { enumerable: true, get: function () { return __importDefault(pixiv_1).default; } });
|
|
43
|
+
__exportStar(require("./utils"), exports);
|
|
42
44
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,2EAAwD;AACxD,qEAAkD;AAClD,0EAAuD;AACvD,qEAAkD;AAClD,yEAAsD;AACtD,kEAA+C;AAC/C,qEAAkD;AAClD,oEAAiD;AACjD,mEAAgD;AAChD,oEAAiD;AACjD,oEAAiD;AACjD,yDAAsC;AACtC,uDAAoC;AACpC,8DAA2C;AAC3C,uDAAoC;AACpC,6DAA0C;AAC1C,sDAAmC;AACnC,qDAAkC;AAClC,4CAAyB;AACzB,iCAA0C;AAAjC,+GAAA,OAAO,OAAS"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,2EAAwD;AACxD,qEAAkD;AAClD,0EAAuD;AACvD,qEAAkD;AAClD,yEAAsD;AACtD,kEAA+C;AAC/C,qEAAkD;AAClD,oEAAiD;AACjD,mEAAgD;AAChD,oEAAiD;AACjD,oEAAiD;AACjD,yDAAsC;AACtC,uDAAoC;AACpC,8DAA2C;AAC3C,uDAAoC;AACpC,6DAA0C;AAC1C,sDAAmC;AACnC,qDAAkC;AAClC,2CAAwB;AACxB,4CAAyB;AACzB,iCAA0C;AAAjC,+GAAA,OAAO,OAAS;AACzB,0CAAuB"}
|
package/dist/options.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { GetV1NovelRecommendedRequest } from './types/endpoints/v1/novel/recomme
|
|
|
10
10
|
import { GetV1SearchNovelRequest } from './types/endpoints/v1/search/novel';
|
|
11
11
|
import { GetV2NovelSeriesRequest } from './types/endpoints/v2/novel/series';
|
|
12
12
|
import { GetV1UserDetailRequest } from './types/endpoints/v1/user/detail';
|
|
13
|
+
import { BaseSimpleCheck, CheckFunctions } from './checks';
|
|
13
14
|
/**
|
|
14
15
|
* ๆค็ดขๅฏพ่ฑก
|
|
15
16
|
*/
|
|
@@ -23,6 +24,9 @@ export declare enum SearchTarget {
|
|
|
23
24
|
/** ใญใผใฏใผใ */
|
|
24
25
|
KEYWORD = "keyword"
|
|
25
26
|
}
|
|
27
|
+
export declare class SearchTargetCheck extends BaseSimpleCheck<SearchTarget> {
|
|
28
|
+
checks(): CheckFunctions<SearchTarget>;
|
|
29
|
+
}
|
|
26
30
|
/**
|
|
27
31
|
* ใฝใผใ
|
|
28
32
|
*/
|
|
@@ -34,6 +38,9 @@ export declare enum SearchSort {
|
|
|
34
38
|
/** ไบบๆฐ้ */
|
|
35
39
|
POPULAR_DESC = "popular_desc"
|
|
36
40
|
}
|
|
41
|
+
export declare class SearchSortCheck extends BaseSimpleCheck<SearchSort> {
|
|
42
|
+
checks(): CheckFunctions<SearchSort>;
|
|
43
|
+
}
|
|
37
44
|
/**
|
|
38
45
|
* ๅฏพ่ฑกๆ้
|
|
39
46
|
*/
|
|
@@ -45,6 +52,9 @@ export declare enum SearchIllustDuration {
|
|
|
45
52
|
/** 1ใถๆไปฅๅ
*/
|
|
46
53
|
WITHIN_LAST_MONTH = "within_last_month"
|
|
47
54
|
}
|
|
55
|
+
export declare class SearchIllustDurationCheck extends BaseSimpleCheck<SearchIllustDuration> {
|
|
56
|
+
checks(): CheckFunctions<SearchIllustDuration>;
|
|
57
|
+
}
|
|
48
58
|
/**
|
|
49
59
|
* OSใใฃใซใฟ
|
|
50
60
|
*/
|
|
@@ -54,6 +64,9 @@ export declare enum Filter {
|
|
|
54
64
|
/** Android */
|
|
55
65
|
FOR_ANDROID = "for_android"
|
|
56
66
|
}
|
|
67
|
+
export declare class FilterCheck extends BaseSimpleCheck<Filter> {
|
|
68
|
+
checks(): CheckFunctions<Filter>;
|
|
69
|
+
}
|
|
57
70
|
/**
|
|
58
71
|
* ใใใฏใใผใฏๅ
ฌ้็ฏๅฒ
|
|
59
72
|
*/
|
|
@@ -63,14 +76,16 @@ export declare enum BookmarkRestrict {
|
|
|
63
76
|
/** ้ๅ
ฌ้ */
|
|
64
77
|
PRIVATE = "private"
|
|
65
78
|
}
|
|
79
|
+
export declare class BookmarkRestrictCheck extends BaseSimpleCheck<BookmarkRestrict> {
|
|
80
|
+
checks(): CheckFunctions<BookmarkRestrict>;
|
|
81
|
+
}
|
|
66
82
|
/**
|
|
67
|
-
*
|
|
83
|
+
* ใชใใธใงใฏใใฎไธ้จใๅฟ
้ ใซใใใใไปฅๅคใฏใชใใทใงใใซใซใใ
|
|
68
84
|
*
|
|
85
|
+
* @see https://mongolyy.hatenablog.com/entry/2022/03/10/001139
|
|
69
86
|
* @see https://qiita.com/yuu_1st/items/71c4fc9cc95a72fa4df9
|
|
70
87
|
*/
|
|
71
|
-
type SomeRequired<T, K extends keyof T> = T &
|
|
72
|
-
[P in K]-?: T[P];
|
|
73
|
-
};
|
|
88
|
+
type SomeRequired<T, K extends keyof T> = Partial<Omit<T, K>> & Required<Pick<T, K>>;
|
|
74
89
|
/**
|
|
75
90
|
* ใชใใธใงใฏใใฎ็นๅฎใใญใใใฃใไธๆธใใใ
|
|
76
91
|
*
|
package/dist/options.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAA;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAA;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,0CAA0C,CAAA;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAA;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAA;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAA;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAA;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAA;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
|
package/dist/options.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BookmarkRestrict = exports.Filter = exports.SearchIllustDuration = exports.SearchSort = exports.SearchTarget = void 0;
|
|
3
|
+
exports.BookmarkRestrictCheck = exports.BookmarkRestrict = exports.FilterCheck = exports.Filter = exports.SearchIllustDurationCheck = exports.SearchIllustDuration = exports.SearchSortCheck = exports.SearchSort = exports.SearchTargetCheck = exports.SearchTarget = void 0;
|
|
4
|
+
const checks_1 = require("./checks");
|
|
4
5
|
/**
|
|
5
6
|
* ๆค็ดขๅฏพ่ฑก
|
|
6
7
|
*/
|
|
@@ -15,6 +16,20 @@ var SearchTarget;
|
|
|
15
16
|
/** ใญใผใฏใผใ */
|
|
16
17
|
SearchTarget["KEYWORD"] = "keyword";
|
|
17
18
|
})(SearchTarget = exports.SearchTarget || (exports.SearchTarget = {}));
|
|
19
|
+
class SearchTargetCheck extends checks_1.BaseSimpleCheck {
|
|
20
|
+
checks() {
|
|
21
|
+
return {
|
|
22
|
+
main: (data) => typeof data === 'string' &&
|
|
23
|
+
[
|
|
24
|
+
SearchTarget.PARTIAL_MATCH_FOR_TAGS,
|
|
25
|
+
SearchTarget.EXACT_MATCH_FOR_TAGS,
|
|
26
|
+
SearchTarget.TITLE_AND_CAPTION,
|
|
27
|
+
SearchTarget.KEYWORD,
|
|
28
|
+
].includes(data),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.SearchTargetCheck = SearchTargetCheck;
|
|
18
33
|
/**
|
|
19
34
|
* ใฝใผใ
|
|
20
35
|
*/
|
|
@@ -27,6 +42,19 @@ var SearchSort;
|
|
|
27
42
|
/** ไบบๆฐ้ */
|
|
28
43
|
SearchSort["POPULAR_DESC"] = "popular_desc";
|
|
29
44
|
})(SearchSort = exports.SearchSort || (exports.SearchSort = {}));
|
|
45
|
+
class SearchSortCheck extends checks_1.BaseSimpleCheck {
|
|
46
|
+
checks() {
|
|
47
|
+
return {
|
|
48
|
+
main: (data) => typeof data === 'string' &&
|
|
49
|
+
[
|
|
50
|
+
SearchSort.DATE_DESC,
|
|
51
|
+
SearchSort.DATE_ASC,
|
|
52
|
+
SearchSort.POPULAR_DESC,
|
|
53
|
+
].includes(data),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.SearchSortCheck = SearchSortCheck;
|
|
30
58
|
/**
|
|
31
59
|
* ๅฏพ่ฑกๆ้
|
|
32
60
|
*/
|
|
@@ -39,6 +67,19 @@ var SearchIllustDuration;
|
|
|
39
67
|
/** 1ใถๆไปฅๅ
*/
|
|
40
68
|
SearchIllustDuration["WITHIN_LAST_MONTH"] = "within_last_month";
|
|
41
69
|
})(SearchIllustDuration = exports.SearchIllustDuration || (exports.SearchIllustDuration = {}));
|
|
70
|
+
class SearchIllustDurationCheck extends checks_1.BaseSimpleCheck {
|
|
71
|
+
checks() {
|
|
72
|
+
return {
|
|
73
|
+
main: (data) => typeof data === 'string' &&
|
|
74
|
+
[
|
|
75
|
+
SearchIllustDuration.WITHIN_LAST_DAY,
|
|
76
|
+
SearchIllustDuration.WITHIN_LAST_WEEK,
|
|
77
|
+
SearchIllustDuration.WITHIN_LAST_MONTH,
|
|
78
|
+
].includes(data),
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.SearchIllustDurationCheck = SearchIllustDurationCheck;
|
|
42
83
|
/**
|
|
43
84
|
* OSใใฃใซใฟ
|
|
44
85
|
*/
|
|
@@ -49,6 +90,15 @@ var Filter;
|
|
|
49
90
|
/** Android */
|
|
50
91
|
Filter["FOR_ANDROID"] = "for_android";
|
|
51
92
|
})(Filter = exports.Filter || (exports.Filter = {}));
|
|
93
|
+
class FilterCheck extends checks_1.BaseSimpleCheck {
|
|
94
|
+
checks() {
|
|
95
|
+
return {
|
|
96
|
+
main: (data) => typeof data === 'string' &&
|
|
97
|
+
[Filter.FOR_IOS, Filter.FOR_ANDROID].includes(data),
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
exports.FilterCheck = FilterCheck;
|
|
52
102
|
/**
|
|
53
103
|
* ใใใฏใใผใฏๅ
ฌ้็ฏๅฒ
|
|
54
104
|
*/
|
|
@@ -59,4 +109,13 @@ var BookmarkRestrict;
|
|
|
59
109
|
/** ้ๅ
ฌ้ */
|
|
60
110
|
BookmarkRestrict["PRIVATE"] = "private";
|
|
61
111
|
})(BookmarkRestrict = exports.BookmarkRestrict || (exports.BookmarkRestrict = {}));
|
|
112
|
+
class BookmarkRestrictCheck extends checks_1.BaseSimpleCheck {
|
|
113
|
+
checks() {
|
|
114
|
+
return {
|
|
115
|
+
main: (data) => typeof data === 'string' &&
|
|
116
|
+
[BookmarkRestrict.PUBLIC, BookmarkRestrict.PRIVATE].includes(data),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
exports.BookmarkRestrictCheck = BookmarkRestrictCheck;
|
|
62
121
|
//# sourceMappingURL=options.js.map
|
package/dist/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
|
package/dist/pixiv.d.ts
CHANGED
|
@@ -66,7 +66,7 @@ export default class Pixiv {
|
|
|
66
66
|
* @param options ใชใใทใงใณ
|
|
67
67
|
* @returns ใฌในใใณใน
|
|
68
68
|
*/
|
|
69
|
-
|
|
69
|
+
illustRecommended(options?: RecommendedIllustOptions): Promise<AxiosResponse<GetV1IllustRecommendedResponse, any>>;
|
|
70
70
|
/**
|
|
71
71
|
* ใคใฉในใใใใใฏใใผใฏใใใ
|
|
72
72
|
*
|
|
@@ -109,7 +109,7 @@ export default class Pixiv {
|
|
|
109
109
|
* @param options ใชใใทใงใณ
|
|
110
110
|
* @returns ใฌในใใณใน
|
|
111
111
|
*/
|
|
112
|
-
|
|
112
|
+
novelRecommended(options?: RecommendedNovelOptions): Promise<AxiosResponse<GetV1NovelRecommendedResponse, any>>;
|
|
113
113
|
/**
|
|
114
114
|
* ๅฐ่ชฌใทใชใผใบใฎ่ฉณ็ดฐๆ
ๅ ฑใๅๅพใใใ
|
|
115
115
|
*
|
package/dist/pixiv.js
CHANGED
|
@@ -136,7 +136,7 @@ class Pixiv {
|
|
|
136
136
|
* @param options ใชใใทใงใณ
|
|
137
137
|
* @returns ใฌในใใณใน
|
|
138
138
|
*/
|
|
139
|
-
async
|
|
139
|
+
async illustRecommended(options = {}) {
|
|
140
140
|
const parameters = {
|
|
141
141
|
...this.convertSnakeToCamel(options),
|
|
142
142
|
filter: options.filter || options_1.Filter.FOR_IOS,
|
|
@@ -261,7 +261,7 @@ class Pixiv {
|
|
|
261
261
|
* @param options ใชใใทใงใณ
|
|
262
262
|
* @returns ใฌในใใณใน
|
|
263
263
|
*/
|
|
264
|
-
async
|
|
264
|
+
async novelRecommended(options = {}) {
|
|
265
265
|
const parameters = {
|
|
266
266
|
...this.convertSnakeToCamel(options),
|
|
267
267
|
// filter: options.filter || 'for_ios',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pixiv.test.d.ts","sourceRoot":"","sources":["../src/pixiv.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
/* eslint-disable no-console */
|
|
7
|
+
const pixiv_1 = __importDefault(require("./pixiv"));
|
|
8
|
+
const detail_1 = require("./types/endpoints/v1/illust/detail");
|
|
9
|
+
const recommended_1 = require("./types/endpoints/v1/illust/recommended");
|
|
10
|
+
const series_1 = require("./types/endpoints/v1/illust/series");
|
|
11
|
+
const recommended_2 = require("./types/endpoints/v1/novel/recommended");
|
|
12
|
+
const text_1 = require("./types/endpoints/v1/novel/text");
|
|
13
|
+
const illust_1 = require("./types/endpoints/v1/search/illust");
|
|
14
|
+
const novel_1 = require("./types/endpoints/v1/search/novel");
|
|
15
|
+
const detail_2 = require("./types/endpoints/v1/user/detail");
|
|
16
|
+
const detail_3 = require("./types/endpoints/v2/novel/detail");
|
|
17
|
+
const series_2 = require("./types/endpoints/v2/novel/series");
|
|
18
|
+
const utils_1 = require("./utils");
|
|
19
|
+
jest.setTimeout(120000); // 120sec
|
|
20
|
+
describe('pixiv', () => {
|
|
21
|
+
let pixiv;
|
|
22
|
+
beforeAll(async () => {
|
|
23
|
+
const pixivRefreshToken = process.env.PIXIV_REFRESH_TOKEN;
|
|
24
|
+
if (!pixivRefreshToken) {
|
|
25
|
+
throw new Error('PIXIV_REFRESH_TOKEN is not set');
|
|
26
|
+
}
|
|
27
|
+
pixiv = await pixiv_1.default.of(pixivRefreshToken);
|
|
28
|
+
});
|
|
29
|
+
it('illustDetail:107565629', async () => {
|
|
30
|
+
const illustDetail = await pixiv.illustDetail({
|
|
31
|
+
illustId: 107565629,
|
|
32
|
+
});
|
|
33
|
+
expect(illustDetail.status).toBe(200);
|
|
34
|
+
expect(illustDetail.data.illust.id).toBe(107565629);
|
|
35
|
+
expect(illustDetail.data.illust.title).toBe('ใใใญใกใใ่กฃ่ฃ
็ใฆใฟใใฟใ๏ฝใไฝ');
|
|
36
|
+
expect(illustDetail.data.illust.type).toBe('illust');
|
|
37
|
+
// "square_medium": "https://i.pximg.net/c/360x360_70/img-master/img/2023/04/27/13/39/51/107565629_p0_square1200.jpg",
|
|
38
|
+
expect(illustDetail.data.illust.image_urls.square_medium).toMatch(/^https:\/\/i\.pximg\.net\/c\/360x360_70\/img-master\/img\/.+_square1200\.jpg$/);
|
|
39
|
+
// "medium": "https://i.pximg.net/c/540x540_70/img-master/img/2023/04/27/13/39/51/107565629_p0_master1200.jpg",
|
|
40
|
+
expect(illustDetail.data.illust.image_urls.medium).toMatch(/^https:\/\/i\.pximg\.net\/c\/540x540_70\/img-master\/img\/.+_master1200\.jpg$/);
|
|
41
|
+
// "large": "https://i.pximg.net/c/600x1200_90/img-master/img/2023/04/27/13/39/51/107565629_p0_master1200.jpg",
|
|
42
|
+
expect(illustDetail.data.illust.image_urls.large).toMatch(/^https:\/\/i\.pximg\.net\/c\/600x1200_90\/img-master\/img\/.+_master1200\.jpg$/);
|
|
43
|
+
expect(illustDetail.data.illust.caption).toBe('');
|
|
44
|
+
expect(illustDetail.data.illust.restrict).toBe(0);
|
|
45
|
+
expect(illustDetail.data.illust.user.id).toBe(16668308);
|
|
46
|
+
expect(illustDetail.data.illust.user.name).toBe('ๆกใใก');
|
|
47
|
+
expect(illustDetail.data.illust.user.account).toBe('yukitohoshizora');
|
|
48
|
+
// https://i.pximg.net/user-profile/img/
|
|
49
|
+
expect(illustDetail.data.illust.user.profile_image_urls.medium).toMatch(/^https:\/\/i\.pximg\.net\/user-profile\/img\/.+\.png$/);
|
|
50
|
+
expect(illustDetail.data.illust.tags.length).toBeGreaterThan(0);
|
|
51
|
+
expect(illustDetail.data.illust.tools).toBeDefined();
|
|
52
|
+
expect(illustDetail.data.illust.tools.length).toBe(0);
|
|
53
|
+
expect(illustDetail.data.illust.create_date).toBe('2023-04-27T13:39:51+09:00');
|
|
54
|
+
expect(illustDetail.data.illust.page_count).toBe(1);
|
|
55
|
+
expect(illustDetail.data.illust.width).toBe(1728);
|
|
56
|
+
expect(illustDetail.data.illust.height).toBe(2626);
|
|
57
|
+
expect(illustDetail.data.illust.sanity_level).toBe(2);
|
|
58
|
+
expect(illustDetail.data.illust.x_restrict).toBe(0);
|
|
59
|
+
expect(illustDetail.data.illust.series).toBeNull();
|
|
60
|
+
// "original_image_url": "https://i.pximg.net/img-original/img/2023/04/27/13/39/51/107565629_p0.png",
|
|
61
|
+
expect(illustDetail.data.illust.meta_single_page.original_image_url).toMatch(/^https:\/\/i\.pximg\.net\/img-original\/img\/.+_p0\.png$/);
|
|
62
|
+
expect(illustDetail.data.illust.meta_pages).toHaveLength(0);
|
|
63
|
+
expect(illustDetail.data.illust.total_bookmarks).toBeGreaterThan(0);
|
|
64
|
+
expect(illustDetail.data.illust.total_view).toBeGreaterThan(0);
|
|
65
|
+
expect(illustDetail.data.illust.visible).toBe(true);
|
|
66
|
+
expect(illustDetail.data.illust.illust_ai_type).toBe(1);
|
|
67
|
+
expect(illustDetail.data.illust.illust_book_style).toBe(0);
|
|
68
|
+
const check = new detail_1.GetV1IllustDetailCheck();
|
|
69
|
+
expect(() => check.throwIfResponseFailed(illustDetail.data)).not.toThrow();
|
|
70
|
+
});
|
|
71
|
+
it('searchIllust', async () => {
|
|
72
|
+
const searchIllust = await pixiv.searchIllust({
|
|
73
|
+
word: 'ใใญใฉใคใ',
|
|
74
|
+
});
|
|
75
|
+
expect(searchIllust.status).toBe(200);
|
|
76
|
+
expect(searchIllust.data).toBeDefined();
|
|
77
|
+
expect(searchIllust.data.illusts).toBeDefined();
|
|
78
|
+
expect(searchIllust.data.illusts).toHaveLength(30);
|
|
79
|
+
const check = new illust_1.GetV1SearchIllustCheck();
|
|
80
|
+
expect(() => check.throwIfResponseFailed(searchIllust.data)).not.toThrow();
|
|
81
|
+
});
|
|
82
|
+
it('recommendedIllust', async () => {
|
|
83
|
+
const recommendedIllust = await pixiv.illustRecommended();
|
|
84
|
+
expect(recommendedIllust.status).toBe(200);
|
|
85
|
+
expect(recommendedIllust.data).toBeDefined();
|
|
86
|
+
expect(recommendedIllust.data.illusts).toBeDefined();
|
|
87
|
+
expect(recommendedIllust.data.illusts.length).toBeGreaterThan(0);
|
|
88
|
+
const check = new recommended_1.GetV1IllustRecommendedCheck();
|
|
89
|
+
expect(() => check.throwIfResponseFailed(recommendedIllust.data)).not.toThrow();
|
|
90
|
+
});
|
|
91
|
+
it('illustSeries', async () => {
|
|
92
|
+
const illustSeries = await pixiv.illustSeries({
|
|
93
|
+
illustSeriesId: 147483,
|
|
94
|
+
});
|
|
95
|
+
expect(illustSeries.status).toBe(200);
|
|
96
|
+
expect(illustSeries.data).toBeDefined();
|
|
97
|
+
expect(illustSeries.data.illust_series_detail.title).toBe('ใใญใฉใคใๅญฆใใญ');
|
|
98
|
+
expect(illustSeries.data.illusts).toBeDefined();
|
|
99
|
+
expect(illustSeries.data.illusts.length).toBeGreaterThan(0);
|
|
100
|
+
const check = new series_1.GetV1IllustSeriesCheck();
|
|
101
|
+
expect(() => check.throwIfResponseFailed(illustSeries.data)).not.toThrow();
|
|
102
|
+
});
|
|
103
|
+
it('novelDetail', async () => {
|
|
104
|
+
const novelDetail = await pixiv.novelDetail({
|
|
105
|
+
novelId: 13574875,
|
|
106
|
+
});
|
|
107
|
+
expect(novelDetail.status).toBe(200);
|
|
108
|
+
expect(novelDetail.data).toBeDefined();
|
|
109
|
+
expect(novelDetail.data.novel).toBeDefined();
|
|
110
|
+
expect(novelDetail.data.novel.id).toBe(13574875);
|
|
111
|
+
expect(novelDetail.data.novel.title).toBe('ใใใฏใพใใง้ต็คใๅฅใงใ็ดฐๆใฎๅฆใ');
|
|
112
|
+
expect(novelDetail.data.novel.caption).toBe('่ฒใ
ใจ็ฌ่ช่งฃ้ใ่จญๅฎๆ้ ใใใใพใใ<br />ๅผตใ่ฉฐใใใใฎใๅคใใจใไบบใฏใใคใ็ ด่ฃใใใ<br /><br />Twitterใใฃใฆใพใโใ<strong><a href="https://twitter.com/somari1101" target="_blank">twitter/somari1101</a></strong>ใ');
|
|
113
|
+
expect(novelDetail.data.novel.restrict).toBe(0);
|
|
114
|
+
expect(novelDetail.data.novel.x_restrict).toBe(0);
|
|
115
|
+
expect(novelDetail.data.novel.is_original).toBe(false);
|
|
116
|
+
expect(novelDetail.data.novel.image_urls).toBeDefined();
|
|
117
|
+
expect(novelDetail.data.novel.image_urls.large).toMatch(/^https:\/\/i\.pximg\.net\/c\/240x480_80\/novel-cover-master\/img\/.+_master1200\.jpg$/);
|
|
118
|
+
expect(novelDetail.data.novel.image_urls.medium).toMatch(/^https:\/\/i\.pximg\.net\/c\/176x352\/novel-cover-master\/img\/.+_master1200\.jpg$/);
|
|
119
|
+
expect(novelDetail.data.novel.image_urls.square_medium).toMatch(/^https:\/\/i\.pximg\.net\/c\/128x128\/novel-cover-master\/img\/.+_square1200\.jpg$/);
|
|
120
|
+
expect(novelDetail.data.novel.create_date).toBe('2020-08-22T21:24:48+09:00');
|
|
121
|
+
expect(novelDetail.data.novel.page_count).toBe(7);
|
|
122
|
+
expect(novelDetail.data.novel.text_length).toBe(6931);
|
|
123
|
+
expect(novelDetail.data.novel.user).toBeDefined();
|
|
124
|
+
expect(novelDetail.data.novel.user.id).toBe(53003997);
|
|
125
|
+
expect(novelDetail.data.novel.user.name).toBe('่้ -ใใพใ-');
|
|
126
|
+
expect(novelDetail.data.novel.user.account).toBe('user_wrmt2824');
|
|
127
|
+
expect(novelDetail.data.novel.user.profile_image_urls).toBeDefined();
|
|
128
|
+
expect(novelDetail.data.novel.user.profile_image_urls.medium).toMatch(/^https:\/\/i\.pximg\.net\/user-profile\/img\/.+\.jpg$/);
|
|
129
|
+
expect(novelDetail.data.novel.user.is_followed).toBeDefined();
|
|
130
|
+
expect(novelDetail.data.novel.series).toStrictEqual({});
|
|
131
|
+
expect(novelDetail.data.novel.is_bookmarked).toBeDefined();
|
|
132
|
+
expect(novelDetail.data.novel.total_bookmarks).toBeGreaterThan(0);
|
|
133
|
+
expect(novelDetail.data.novel.total_view).toBeGreaterThan(0);
|
|
134
|
+
expect(novelDetail.data.novel.visible).toBe(true);
|
|
135
|
+
expect(novelDetail.data.novel.total_comments).toBeGreaterThan(0);
|
|
136
|
+
expect(novelDetail.data.novel.is_muted).toBeDefined();
|
|
137
|
+
expect(novelDetail.data.novel.is_mypixiv_only).toBeDefined();
|
|
138
|
+
expect(novelDetail.data.novel.is_x_restricted).toBe(false);
|
|
139
|
+
expect(novelDetail.data.novel.novel_ai_type).toBe(0);
|
|
140
|
+
const check = new detail_3.GetV2NovelDetailCheck();
|
|
141
|
+
expect(() => check.throwIfResponseFailed(novelDetail.data)).not.toThrow();
|
|
142
|
+
});
|
|
143
|
+
it('novelText', async () => {
|
|
144
|
+
const novelText = await pixiv.novelText({
|
|
145
|
+
novelId: 13574875,
|
|
146
|
+
});
|
|
147
|
+
expect(novelText.status).toBe(200);
|
|
148
|
+
expect(novelText.data).toBeDefined();
|
|
149
|
+
expect(novelText.data).toMatchSnapshot();
|
|
150
|
+
expect(novelText.data.novel_text).toBeDefined();
|
|
151
|
+
expect(novelText.data.novel_text.length).toBeGreaterThan(0);
|
|
152
|
+
if (!(0, utils_1.isEmptyObject)(novelText.data.novel_marker)) {
|
|
153
|
+
expect(novelText.data.novel_marker.page).toBeGreaterThan(0);
|
|
154
|
+
}
|
|
155
|
+
expect(novelText.data.series_prev).toStrictEqual({});
|
|
156
|
+
expect(novelText.data.series_next).toStrictEqual({});
|
|
157
|
+
const check = new text_1.GetV1NovelTextCheck();
|
|
158
|
+
expect(() => check.throwIfResponseFailed(novelText.data)).not.toThrow();
|
|
159
|
+
});
|
|
160
|
+
it('searchNovel', async () => {
|
|
161
|
+
const searchNovel = await pixiv.searchNovel({
|
|
162
|
+
word: 'ใใญใฉใคใ',
|
|
163
|
+
});
|
|
164
|
+
expect(searchNovel.status).toBe(200);
|
|
165
|
+
expect(searchNovel.data).toBeDefined();
|
|
166
|
+
expect(searchNovel.data.novels).toBeDefined();
|
|
167
|
+
expect(searchNovel.data.novels).toHaveLength(30);
|
|
168
|
+
const check = new novel_1.GetV1SearchNovelCheck();
|
|
169
|
+
expect(() => check.throwIfResponseFailed(searchNovel.data)).not.toThrow();
|
|
170
|
+
});
|
|
171
|
+
it('recommendedNovel', async () => {
|
|
172
|
+
const novelRecommended = await pixiv.novelRecommended();
|
|
173
|
+
expect(novelRecommended.status).toBe(200);
|
|
174
|
+
expect(novelRecommended.data).toBeDefined();
|
|
175
|
+
expect(novelRecommended.data.novels).toBeDefined();
|
|
176
|
+
expect(novelRecommended.data.novels.length).toBeGreaterThan(0);
|
|
177
|
+
const check = new recommended_2.GetV1NovelRecommendedCheck();
|
|
178
|
+
expect(() => check.throwIfResponseFailed(novelRecommended.data)).not.toThrow();
|
|
179
|
+
});
|
|
180
|
+
it('novelSeries', async () => {
|
|
181
|
+
const novelSeries = await pixiv.novelSeries({
|
|
182
|
+
seriesId: 10181799,
|
|
183
|
+
});
|
|
184
|
+
expect(novelSeries.status).toBe(200);
|
|
185
|
+
expect(novelSeries.data).toBeDefined();
|
|
186
|
+
expect(novelSeries.data.novel_series_detail.title).toBe('ใใใใใใฟ');
|
|
187
|
+
expect(novelSeries.data.novels).toBeDefined();
|
|
188
|
+
expect(novelSeries.data.novels.length).toBeGreaterThan(0);
|
|
189
|
+
const check = new series_2.GetV2NovelSeriesCheck();
|
|
190
|
+
expect(() => check.throwIfResponseFailed(novelSeries.data)).not.toThrow();
|
|
191
|
+
});
|
|
192
|
+
it('userDetail', async () => {
|
|
193
|
+
const userDetail = await pixiv.userDetail({
|
|
194
|
+
userId: 16568776,
|
|
195
|
+
});
|
|
196
|
+
expect(userDetail.status).toBe(200);
|
|
197
|
+
expect(userDetail.data).toBeDefined();
|
|
198
|
+
expect(userDetail.data.user).toBeDefined();
|
|
199
|
+
expect(userDetail.data.user.id).toBe(16568776);
|
|
200
|
+
expect(userDetail.data.user.name).toBe('ihcamot');
|
|
201
|
+
expect(userDetail.data).toMatchSnapshot();
|
|
202
|
+
const check = new detail_2.GetV1UserDetailCheck();
|
|
203
|
+
expect(() => check.throwIfResponseFailed(userDetail.data)).not.toThrow();
|
|
204
|
+
});
|
|
205
|
+
it('parseQueryString', async () => {
|
|
206
|
+
const qs = 'https://example.com?a=1&b=2&c=3';
|
|
207
|
+
const parsed = pixiv_1.default.parseQueryString(qs);
|
|
208
|
+
expect(parsed).toStrictEqual({
|
|
209
|
+
a: '1',
|
|
210
|
+
b: '2',
|
|
211
|
+
c: '3',
|
|
212
|
+
});
|
|
213
|
+
});
|
|
214
|
+
it('isError', async () => {
|
|
215
|
+
const error = {
|
|
216
|
+
error: {
|
|
217
|
+
user_message: 'Rate limit exceeded.',
|
|
218
|
+
message: '',
|
|
219
|
+
reason: '',
|
|
220
|
+
},
|
|
221
|
+
};
|
|
222
|
+
expect(pixiv_1.default.isError(error)).toBe(true);
|
|
223
|
+
});
|
|
224
|
+
});
|
|
225
|
+
//# sourceMappingURL=pixiv.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pixiv.test.js","sourceRoot":"","sources":["../src/pixiv.test.ts"],"names":[],"mappings":"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"}
|