@ukwhatn/wikidot 4.0.2 → 4.0.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/README.md +46 -30
- package/dist/index.cjs +206 -215
- package/dist/index.d.cts +56 -4
- package/dist/index.d.ts +56 -4
- package/dist/index.js +2169 -238
- package/package.json +1 -1
- package/dist/shared/index-7dqqxq7x.js +0 -105
- package/dist/shared/index-f2eh3ykk.js +0 -172
- package/dist/shared/index-kka6e8cb.js +0 -627
- package/dist/shared/index-ytknx2hn.js +0 -980
package/package.json
CHANGED
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
4
|
-
var __defProp = Object.defineProperty;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __toESM = (mod, isNodeMode, target) => {
|
|
8
|
-
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
9
|
-
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
10
|
-
for (let key of __getOwnPropNames(mod))
|
|
11
|
-
if (!__hasOwnProp.call(to, key))
|
|
12
|
-
__defProp(to, key, {
|
|
13
|
-
get: () => mod[key],
|
|
14
|
-
enumerable: true
|
|
15
|
-
});
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __legacyDecorateClassTS = function(decorators, target, key, desc) {
|
|
19
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
21
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
22
|
-
else
|
|
23
|
-
for (var i = decorators.length - 1;i >= 0; i--)
|
|
24
|
-
if (d = decorators[i])
|
|
25
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
26
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
27
|
-
};
|
|
28
|
-
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
29
|
-
|
|
30
|
-
// src/common/errors/base.ts
|
|
31
|
-
class WikidotError extends Error {
|
|
32
|
-
name;
|
|
33
|
-
constructor(message) {
|
|
34
|
-
super(message);
|
|
35
|
-
this.name = this.constructor.name;
|
|
36
|
-
Object.setPrototypeOf(this, new.target.prototype);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
class UnexpectedError extends WikidotError {
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
// src/common/errors/amc.ts
|
|
44
|
-
class AMCError extends WikidotError {
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
class AMCHttpError extends AMCError {
|
|
48
|
-
statusCode;
|
|
49
|
-
constructor(message, statusCode) {
|
|
50
|
-
super(message);
|
|
51
|
-
this.statusCode = statusCode;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
class WikidotStatusError extends AMCError {
|
|
56
|
-
statusCode;
|
|
57
|
-
constructor(message, statusCode) {
|
|
58
|
-
super(message);
|
|
59
|
-
this.statusCode = statusCode;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
class ResponseDataError extends AMCError {
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
// src/common/errors/session.ts
|
|
67
|
-
class SessionError extends WikidotError {
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
class SessionCreateError extends SessionError {
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
class LoginRequiredError extends SessionError {
|
|
74
|
-
constructor(message = "Login is required for this operation") {
|
|
75
|
-
super(message);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
// src/common/errors/target.ts
|
|
80
|
-
class NotFoundException extends WikidotError {
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
class TargetExistsError extends WikidotError {
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
class TargetError extends WikidotError {
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
class ForbiddenError extends WikidotError {
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
class NoElementError extends WikidotError {
|
|
93
|
-
}
|
|
94
|
-
// src/common/types/result.ts
|
|
95
|
-
import { err, errAsync, ok, okAsync, ResultAsync } from "neverthrow";
|
|
96
|
-
var wdOk = (value) => ok(value);
|
|
97
|
-
var wdErr = (error) => err(error);
|
|
98
|
-
var wdOkAsync = (value) => okAsync(value);
|
|
99
|
-
var wdErrAsync = (error) => errAsync(error);
|
|
100
|
-
var fromPromise = (promise, errorMapper) => ResultAsync.fromPromise(promise, errorMapper);
|
|
101
|
-
var combineResults = (results) => ResultAsync.combine(results);
|
|
102
|
-
export { __toESM, __legacyDecorateClassTS, __require, WikidotError, UnexpectedError, AMCError, AMCHttpError, WikidotStatusError, ResponseDataError, SessionError, SessionCreateError, LoginRequiredError, NotFoundException, TargetExistsError, TargetError, ForbiddenError, NoElementError, wdOk, wdErr, wdOkAsync, wdErrAsync, fromPromise, combineResults };
|
|
103
|
-
|
|
104
|
-
//# debugId=A3764A26372D2C2364756E2164756E21
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL2NvbW1vbi9lcnJvcnMvYmFzZS50cyIsICJzcmMvY29tbW9uL2Vycm9ycy9hbWMudHMiLCAic3JjL2NvbW1vbi9lcnJvcnMvc2Vzc2lvbi50cyIsICJzcmMvY29tbW9uL2Vycm9ycy90YXJnZXQudHMiLCAic3JjL2NvbW1vbi90eXBlcy9yZXN1bHQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiLyoqXG4gKiBXaWtpZG9044Op44Kk44OW44Op44Oq44Gu5Z+65bqV44Ko44Op44O844Kv44Op44K5XG4gKiDlhajjgabjga7jgqvjgrnjgr/jg6Djgqjjg6njg7zjga/jgZPjga7jgq/jg6njgrnjgpLntpnmib/jgZnjgotcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFdpa2lkb3RFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgLyoqIOOCqOODqeODvOWQjSAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIOOCqOODqeODvOODoeODg+OCu+ODvOOCuFxuICAgKi9cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBuZXcudGFyZ2V0LnByb3RvdHlwZSk7XG4gIH1cbn1cblxuLyoqXG4gKiDkuojmnJ/jgZvjgazjgqjjg6njg7xcbiAqIOWGhemDqOeahOOBquS4jeaVtOWQiOOChOODkOOCsOOCkuihqOOBmVxuICovXG5leHBvcnQgY2xhc3MgVW5leHBlY3RlZEVycm9yIGV4dGVuZHMgV2lraWRvdEVycm9yIHt9XG4iLAogICAgImltcG9ydCB7IFdpa2lkb3RFcnJvciB9IGZyb20gJy4vYmFzZSc7XG5cbi8qKlxuICogQWpheCBNb2R1bGUgQ29ubmVjdG9y6Zai6YCj44Gu5Z+65bqV44Ko44Op44O8XG4gKi9cbmV4cG9ydCBjbGFzcyBBTUNFcnJvciBleHRlbmRzIFdpa2lkb3RFcnJvciB7fVxuXG4vKipcbiAqIEhUVFDjgrnjg4bjg7zjgr/jgrnjgrPjg7zjg4njgqjjg6njg7xcbiAqIEFNQ+OBuOOBruODquOCr+OCqOOCueODiOOBjEhUVFDjgqjjg6njg7zjgaflpLHmlZfjgZfjgZ/loLTlkIhcbiAqL1xuZXhwb3J0IGNsYXNzIEFNQ0h0dHBFcnJvciBleHRlbmRzIEFNQ0Vycm9yIHtcbiAgLyoqIEhUVFDjgrnjg4bjg7zjgr/jgrnjgrPjg7zjg4kgKi9cbiAgcHVibGljIHJlYWRvbmx5IHN0YXR1c0NvZGU6IG51bWJlcjtcblxuICAvKipcbiAgICogQHBhcmFtIG1lc3NhZ2UgLSDjgqjjg6njg7zjg6Hjg4Pjgrvjg7zjgrhcbiAgICogQHBhcmFtIHN0YXR1c0NvZGUgLSBIVFRQ44K544OG44O844K/44K544Kz44O844OJXG4gICAqL1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHN0YXR1c0NvZGU6IG51bWJlcikge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMuc3RhdHVzQ29kZSA9IHN0YXR1c0NvZGU7XG4gIH1cbn1cblxuLyoqXG4gKiBXaWtpZG9044K544OG44O844K/44K544Kz44O844OJ44Ko44Op44O8XG4gKiBBTUPjg6zjgrnjg53jg7Pjgrnjga5zdGF0dXPjgYxva+OBp+OBquOBhOWgtOWQiFxuICovXG5leHBvcnQgY2xhc3MgV2lraWRvdFN0YXR1c0Vycm9yIGV4dGVuZHMgQU1DRXJyb3Ige1xuICAvKiogV2lraWRvdOOCueODhuODvOOCv+OCueOCs+ODvOODieaWh+Wtl+WIlyAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzQ29kZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIOOCqOODqeODvOODoeODg+OCu+ODvOOCuFxuICAgKiBAcGFyYW0gc3RhdHVzQ29kZSAtIOOCueODhuODvOOCv+OCueOCs+ODvOODie+8iOS+izogJ25vdF9vaycsICd0cnlfYWdhaW4n77yJXG4gICAqL1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHN0YXR1c0NvZGU6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMuc3RhdHVzQ29kZSA9IHN0YXR1c0NvZGU7XG4gIH1cbn1cblxuLyoqXG4gKiDjg6zjgrnjg53jg7Pjgrnjg4fjg7zjgr/jgqjjg6njg7xcbiAqIOODrOOCueODneODs+OCueOBruODkeODvOOCueOBq+WkseaVl+OBl+OBn+WgtOWQiFxuICovXG5leHBvcnQgY2xhc3MgUmVzcG9uc2VEYXRhRXJyb3IgZXh0ZW5kcyBBTUNFcnJvciB7fVxuIiwKICAgICJpbXBvcnQgeyBXaWtpZG90RXJyb3IgfSBmcm9tICcuL2Jhc2UnO1xuXG4vKipcbiAqIOOCu+ODg+OCt+ODp+ODs+mWoumAo+OBruWfuuW6leOCqOODqeODvFxuICovXG5leHBvcnQgY2xhc3MgU2Vzc2lvbkVycm9yIGV4dGVuZHMgV2lraWRvdEVycm9yIHt9XG5cbi8qKlxuICog44K744OD44K344On44Oz5L2c5oiQ5aSx5pWX44Ko44Op44O8XG4gKiDjg63jgrDjgqTjg7PoqabooYzjgYzlpLHmlZfjgZfjgZ/loLTlkIjjgavjgrnjg63jg7xcbiAqL1xuZXhwb3J0IGNsYXNzIFNlc3Npb25DcmVhdGVFcnJvciBleHRlbmRzIFNlc3Npb25FcnJvciB7fVxuXG4vKipcbiAqIOODreOCsOOCpOODs+W/hemgiOOCqOODqeODvFxuICog6KqN6Ki844GM5b+F6KaB44Gq5pON5L2c44KS5pyq44Ot44Kw44Kk44Oz54q25oWL44Gn5a6f6KGM44GX44Gf5aC05ZCI44Gr44K544Ot44O8XG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dpblJlcXVpcmVkRXJyb3IgZXh0ZW5kcyBTZXNzaW9uRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlID0gJ0xvZ2luIGlzIHJlcXVpcmVkIGZvciB0aGlzIG9wZXJhdGlvbicpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuIiwKICAgICJpbXBvcnQgeyBXaWtpZG90RXJyb3IgfSBmcm9tICcuL2Jhc2UnO1xuXG4vKipcbiAqIOODquOCveODvOOCueacqueZuuimi+OCqOODqeODvFxuICog6KaB5rGC44GV44KM44Gf44Oq44K944O844K544GM5a2Y5Zyo44GX44Gq44GE5aC05ZCIXG4gKi9cbmV4cG9ydCBjbGFzcyBOb3RGb3VuZEV4Y2VwdGlvbiBleHRlbmRzIFdpa2lkb3RFcnJvciB7fVxuXG4vKipcbiAqIOODquOCveODvOOCueaXouWtmOOCqOODqeODvFxuICog5L2c5oiQ44GX44KI44GG44Go44GX44Gf44Oq44K944O844K544GM5pei44Gr5a2Y5Zyo44GZ44KL5aC05ZCIXG4gKi9cbmV4cG9ydCBjbGFzcyBUYXJnZXRFeGlzdHNFcnJvciBleHRlbmRzIFdpa2lkb3RFcnJvciB7fVxuXG4vKipcbiAqIOOCv+ODvOOCsuODg+ODiOeKtuaFi+OCqOODqeODvFxuICog44Oq44K944O844K544GM5pON5L2c5LiN5Y+v6IO944Gq54q25oWL44Gu5aC05ZCI77yI44Ot44OD44Kv5Lit44Gq44Gp77yJXG4gKi9cbmV4cG9ydCBjbGFzcyBUYXJnZXRFcnJvciBleHRlbmRzIFdpa2lkb3RFcnJvciB7fVxuXG4vKipcbiAqIOOCouOCr+OCu+OCueaLkuWQpuOCqOODqeODvFxuICog5qip6ZmQ5LiN6Laz44Gn5pON5L2c44GM5ouS5ZCm44GV44KM44Gf5aC05ZCIXG4gKi9cbmV4cG9ydCBjbGFzcyBGb3JiaWRkZW5FcnJvciBleHRlbmRzIFdpa2lkb3RFcnJvciB7fVxuXG4vKipcbiAqIEhUTUzopoHntKDmnKrnmbropovjgqjjg6njg7xcbiAqIOODkeODvOOCueS4reOBq+W/heimgeOBquimgee0oOOBjOimi+OBpOOBi+OCieOBquOBhOWgtOWQiFxuICovXG5leHBvcnQgY2xhc3MgTm9FbGVtZW50RXJyb3IgZXh0ZW5kcyBXaWtpZG90RXJyb3Ige31cbiIsCiAgICAiaW1wb3J0IHsgZXJyLCBlcnJBc3luYywgb2ssIG9rQXN5bmMsIHR5cGUgUmVzdWx0LCBSZXN1bHRBc3luYyB9IGZyb20gJ25ldmVydGhyb3cnO1xuaW1wb3J0IHR5cGUgeyBXaWtpZG90RXJyb3IgfSBmcm9tICcuLi9lcnJvcnMnO1xuXG4vKiog5ZCM5pyfUmVzdWx05Z6L44Ko44Kk44Oq44Ki44K5ICovXG5leHBvcnQgdHlwZSBXaWtpZG90UmVzdWx0PFQ+ID0gUmVzdWx0PFQsIFdpa2lkb3RFcnJvcj47XG5cbi8qKiDpnZ7lkIzmnJ9SZXN1bHTlnovjgqjjgqTjg6rjgqLjgrkgKi9cbmV4cG9ydCB0eXBlIFdpa2lkb3RSZXN1bHRBc3luYzxUPiA9IFJlc3VsdEFzeW5jPFQsIFdpa2lkb3RFcnJvcj47XG5cbi8qKiDmiJDlip9SZXN1bHTjgpLnlJ/miJAgKi9cbmV4cG9ydCBjb25zdCB3ZE9rID0gPFQ+KHZhbHVlOiBUKTogV2lraWRvdFJlc3VsdDxUPiA9PiBvayh2YWx1ZSk7XG5cbi8qKiDjgqjjg6njg7xSZXN1bHTjgpLnlJ/miJAgKi9cbmV4cG9ydCBjb25zdCB3ZEVyciA9IDxFIGV4dGVuZHMgV2lraWRvdEVycm9yPihlcnJvcjogRSk6IFdpa2lkb3RSZXN1bHQ8bmV2ZXI+ID0+IGVycihlcnJvcik7XG5cbi8qKiDmiJDlip9SZXN1bHRBc3luY+OCkueUn+aIkCAqL1xuZXhwb3J0IGNvbnN0IHdkT2tBc3luYyA9IDxUPih2YWx1ZTogVCk6IFdpa2lkb3RSZXN1bHRBc3luYzxUPiA9PiBva0FzeW5jKHZhbHVlKTtcblxuLyoqIOOCqOODqeODvFJlc3VsdEFzeW5j44KS55Sf5oiQICovXG5leHBvcnQgY29uc3Qgd2RFcnJBc3luYyA9IDxFIGV4dGVuZHMgV2lraWRvdEVycm9yPihlcnJvcjogRSk6IFdpa2lkb3RSZXN1bHRBc3luYzxuZXZlcj4gPT5cbiAgZXJyQXN5bmMoZXJyb3IpO1xuXG4vKiogUHJvbWlzZeOBi+OCieOBruWkieaPmyAqL1xuZXhwb3J0IGNvbnN0IGZyb21Qcm9taXNlID0gPFQ+KFxuICBwcm9taXNlOiBQcm9taXNlPFQ+LFxuICBlcnJvck1hcHBlcjogKGVycm9yOiB1bmtub3duKSA9PiBXaWtpZG90RXJyb3Jcbik6IFdpa2lkb3RSZXN1bHRBc3luYzxUPiA9PiBSZXN1bHRBc3luYy5mcm9tUHJvbWlzZShwcm9taXNlLCBlcnJvck1hcHBlcik7XG5cbi8qKiDopIfmlbBSZXN1bHRBc3luY+OBrue1kOWQiCAqL1xuZXhwb3J0IGNvbnN0IGNvbWJpbmVSZXN1bHRzID0gPFQ+KHJlc3VsdHM6IFdpa2lkb3RSZXN1bHRBc3luYzxUPltdKTogV2lraWRvdFJlc3VsdEFzeW5jPFRbXT4gPT5cbiAgUmVzdWx0QXN5bmMuY29tYmluZShyZXN1bHRzKTtcbiIKICBdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlPLE1BQWUscUJBQXFCLE1BQU07QUFBQSxFQUV0QjtBQUFBLEVBS3pCLFdBQVcsQ0FBQyxTQUFpQjtBQUFBLElBQzNCLE1BQU0sT0FBTztBQUFBLElBQ2IsS0FBSyxPQUFPLEtBQUssWUFBWTtBQUFBLElBQzdCLE9BQU8sZUFBZSxNQUFNLFdBQVcsU0FBUztBQUFBO0FBRXBEO0FBQUE7QUFNTyxNQUFNLHdCQUF3QixhQUFhO0FBQUM7OztBQ2pCNUMsTUFBTSxpQkFBaUIsYUFBYTtBQUFDO0FBQUE7QUFNckMsTUFBTSxxQkFBcUIsU0FBUztBQUFBLEVBRXpCO0FBQUEsRUFNaEIsV0FBVyxDQUFDLFNBQWlCLFlBQW9CO0FBQUEsSUFDL0MsTUFBTSxPQUFPO0FBQUEsSUFDYixLQUFLLGFBQWE7QUFBQTtBQUV0QjtBQUFBO0FBTU8sTUFBTSwyQkFBMkIsU0FBUztBQUFBLEVBRS9CO0FBQUEsRUFNaEIsV0FBVyxDQUFDLFNBQWlCLFlBQW9CO0FBQUEsSUFDL0MsTUFBTSxPQUFPO0FBQUEsSUFDYixLQUFLLGFBQWE7QUFBQTtBQUV0QjtBQUFBO0FBTU8sTUFBTSwwQkFBMEIsU0FBUztBQUFDOzs7QUMxQzFDLE1BQU0scUJBQXFCLGFBQWE7QUFBQztBQUFBO0FBTXpDLE1BQU0sMkJBQTJCLGFBQWE7QUFBQztBQUFBO0FBTS9DLE1BQU0sMkJBQTJCLGFBQWE7QUFBQSxFQUNuRCxXQUFXLENBQUMsVUFBVSx3Q0FBd0M7QUFBQSxJQUM1RCxNQUFNLE9BQU87QUFBQTtBQUVqQjs7O0FDZk8sTUFBTSwwQkFBMEIsYUFBYTtBQUFDO0FBQUE7QUFNOUMsTUFBTSwwQkFBMEIsYUFBYTtBQUFDO0FBQUE7QUFNOUMsTUFBTSxvQkFBb0IsYUFBYTtBQUFDO0FBQUE7QUFNeEMsTUFBTSx1QkFBdUIsYUFBYTtBQUFDO0FBQUE7QUFNM0MsTUFBTSx1QkFBdUIsYUFBYTtBQUFDOztBQzlCbEQ7QUFVTyxJQUFNLE9BQU8sQ0FBSSxVQUErQixHQUFHLEtBQUs7QUFHeEQsSUFBTSxRQUFRLENBQXlCLFVBQW1DLElBQUksS0FBSztBQUduRixJQUFNLFlBQVksQ0FBSSxVQUFvQyxRQUFRLEtBQUs7QUFHdkUsSUFBTSxhQUFhLENBQXlCLFVBQ2pELFNBQVMsS0FBSztBQUdULElBQU0sY0FBYyxDQUN6QixTQUNBLGdCQUMwQixZQUFZLFlBQVksU0FBUyxXQUFXO0FBR2pFLElBQU0saUJBQWlCLENBQUksWUFDaEMsWUFBWSxRQUFRLE9BQU87IiwKICAiZGVidWdJZCI6ICJBMzc2NEEyNjM3MkQyQzIzNjQ3NTZFMjE2NDc1NkUyMSIsCiAgIm5hbWVzIjogW10KfQ==
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
NoElementError,
|
|
3
|
-
UnexpectedError,
|
|
4
|
-
fromPromise
|
|
5
|
-
} from "./index-7dqqxq7x.js";
|
|
6
|
-
|
|
7
|
-
// src/module/page/page-revision.ts
|
|
8
|
-
import * as cheerio from "cheerio";
|
|
9
|
-
class PageRevision {
|
|
10
|
-
page;
|
|
11
|
-
id;
|
|
12
|
-
revNo;
|
|
13
|
-
createdBy;
|
|
14
|
-
createdAt;
|
|
15
|
-
comment;
|
|
16
|
-
_source = null;
|
|
17
|
-
_html = null;
|
|
18
|
-
constructor(data) {
|
|
19
|
-
this.page = data.page;
|
|
20
|
-
this.id = data.id;
|
|
21
|
-
this.revNo = data.revNo;
|
|
22
|
-
this.createdBy = data.createdBy;
|
|
23
|
-
this.createdAt = data.createdAt;
|
|
24
|
-
this.comment = data.comment;
|
|
25
|
-
}
|
|
26
|
-
isSourceAcquired() {
|
|
27
|
-
return this._source !== null;
|
|
28
|
-
}
|
|
29
|
-
isHtmlAcquired() {
|
|
30
|
-
return this._html !== null;
|
|
31
|
-
}
|
|
32
|
-
get source() {
|
|
33
|
-
return this._source;
|
|
34
|
-
}
|
|
35
|
-
set source(value) {
|
|
36
|
-
this._source = value;
|
|
37
|
-
}
|
|
38
|
-
get html() {
|
|
39
|
-
return this._html;
|
|
40
|
-
}
|
|
41
|
-
set html(value) {
|
|
42
|
-
this._html = value;
|
|
43
|
-
}
|
|
44
|
-
getSource() {
|
|
45
|
-
return fromPromise((async () => {
|
|
46
|
-
if (this._source) {
|
|
47
|
-
return this._source.wikiText;
|
|
48
|
-
}
|
|
49
|
-
const result = await this.page.site.amcRequest([
|
|
50
|
-
{
|
|
51
|
-
moduleName: "history/PageSourceModule",
|
|
52
|
-
revision_id: this.id
|
|
53
|
-
}
|
|
54
|
-
]);
|
|
55
|
-
if (result.isErr()) {
|
|
56
|
-
throw result.error;
|
|
57
|
-
}
|
|
58
|
-
const response = result.value[0];
|
|
59
|
-
if (!response) {
|
|
60
|
-
throw new NoElementError("Empty response from PageSourceModule");
|
|
61
|
-
}
|
|
62
|
-
const html = String(response.body ?? "");
|
|
63
|
-
const $ = cheerio.load(html);
|
|
64
|
-
const sourceElem = $("div.page-source");
|
|
65
|
-
if (sourceElem.length === 0) {
|
|
66
|
-
throw new NoElementError("Source element not found");
|
|
67
|
-
}
|
|
68
|
-
const sourceText = sourceElem.text();
|
|
69
|
-
return sourceText;
|
|
70
|
-
})(), (error) => {
|
|
71
|
-
if (error instanceof NoElementError) {
|
|
72
|
-
return error;
|
|
73
|
-
}
|
|
74
|
-
return new UnexpectedError(`Failed to get revision source: ${String(error)}`);
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
getHtml() {
|
|
78
|
-
return fromPromise((async () => {
|
|
79
|
-
if (this._html) {
|
|
80
|
-
return this._html;
|
|
81
|
-
}
|
|
82
|
-
const result = await this.page.site.amcRequest([
|
|
83
|
-
{
|
|
84
|
-
moduleName: "history/PageVersionModule",
|
|
85
|
-
revision_id: this.id
|
|
86
|
-
}
|
|
87
|
-
]);
|
|
88
|
-
if (result.isErr()) {
|
|
89
|
-
throw result.error;
|
|
90
|
-
}
|
|
91
|
-
const response = result.value[0];
|
|
92
|
-
if (!response) {
|
|
93
|
-
throw new NoElementError("Empty response from PageVersionModule");
|
|
94
|
-
}
|
|
95
|
-
const html = String(response.body ?? "");
|
|
96
|
-
const $ = cheerio.load(html);
|
|
97
|
-
const contentElem = $("#page-content");
|
|
98
|
-
if (contentElem.length === 0) {
|
|
99
|
-
this._html = html;
|
|
100
|
-
return html;
|
|
101
|
-
}
|
|
102
|
-
const contentHtml = contentElem.html() ?? "";
|
|
103
|
-
this._html = contentHtml;
|
|
104
|
-
return contentHtml;
|
|
105
|
-
})(), (error) => {
|
|
106
|
-
if (error instanceof NoElementError) {
|
|
107
|
-
return error;
|
|
108
|
-
}
|
|
109
|
-
return new UnexpectedError(`Failed to get revision HTML: ${String(error)}`);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
toString() {
|
|
113
|
-
return `PageRevision(id=${this.id}, revNo=${this.revNo})`;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
class PageRevisionCollection extends Array {
|
|
118
|
-
page;
|
|
119
|
-
constructor(page, revisions) {
|
|
120
|
-
super();
|
|
121
|
-
this.page = page;
|
|
122
|
-
if (revisions) {
|
|
123
|
-
this.push(...revisions);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
findById(id) {
|
|
127
|
-
return this.find((revision) => revision.id === id);
|
|
128
|
-
}
|
|
129
|
-
getSources() {
|
|
130
|
-
return fromPromise((async () => {
|
|
131
|
-
const results = await Promise.all(this.map(async (revision) => {
|
|
132
|
-
const result = await revision.getSource();
|
|
133
|
-
if (result.isErr()) {
|
|
134
|
-
throw result.error;
|
|
135
|
-
}
|
|
136
|
-
return result.value;
|
|
137
|
-
}));
|
|
138
|
-
return results;
|
|
139
|
-
})(), (error) => {
|
|
140
|
-
if (error instanceof NoElementError) {
|
|
141
|
-
return error;
|
|
142
|
-
}
|
|
143
|
-
return new UnexpectedError(`Failed to get sources: ${String(error)}`);
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
getHtmls() {
|
|
147
|
-
return fromPromise((async () => {
|
|
148
|
-
const results = await Promise.all(this.map(async (revision) => {
|
|
149
|
-
const result = await revision.getHtml();
|
|
150
|
-
if (result.isErr()) {
|
|
151
|
-
throw result.error;
|
|
152
|
-
}
|
|
153
|
-
return result.value;
|
|
154
|
-
}));
|
|
155
|
-
return results;
|
|
156
|
-
})(), (error) => {
|
|
157
|
-
if (error instanceof NoElementError) {
|
|
158
|
-
return error;
|
|
159
|
-
}
|
|
160
|
-
return new UnexpectedError(`Failed to get HTMLs: ${String(error)}`);
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
export {
|
|
165
|
-
PageRevisionCollection,
|
|
166
|
-
PageRevision
|
|
167
|
-
};
|
|
168
|
-
|
|
169
|
-
export { PageRevision, PageRevisionCollection };
|
|
170
|
-
|
|
171
|
-
//# debugId=2CCA5AB31F653C1264756E2164756E21
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL21vZHVsZS9wYWdlL3BhZ2UtcmV2aXNpb24udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiaW1wb3J0ICogYXMgY2hlZXJpbyBmcm9tICdjaGVlcmlvJztcbmltcG9ydCB7IE5vRWxlbWVudEVycm9yLCBVbmV4cGVjdGVkRXJyb3IgfSBmcm9tICcuLi8uLi9jb21tb24vZXJyb3JzJztcbmltcG9ydCB7IGZyb21Qcm9taXNlLCB0eXBlIFdpa2lkb3RSZXN1bHRBc3luYyB9IGZyb20gJy4uLy4uL2NvbW1vbi90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IEFic3RyYWN0VXNlciB9IGZyb20gJy4uL3VzZXInO1xuaW1wb3J0IHR5cGUgeyBQYWdlIH0gZnJvbSAnLi9wYWdlJztcbmltcG9ydCB0eXBlIHsgUGFnZVNvdXJjZSB9IGZyb20gJy4vcGFnZS1zb3VyY2UnO1xuXG4vKipcbiAqIOODmuODvOOCuOODquODk+OCuOODp+ODs+ODh+ODvOOCv1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VSZXZpc2lvbkRhdGEge1xuICBwYWdlOiBQYWdlO1xuICBpZDogbnVtYmVyO1xuICByZXZObzogbnVtYmVyO1xuICBjcmVhdGVkQnk6IEFic3RyYWN0VXNlcjtcbiAgY3JlYXRlZEF0OiBEYXRlO1xuICBjb21tZW50OiBzdHJpbmc7XG59XG5cbi8qKlxuICog44Oa44O844K444Gu44Oq44OT44K444On44Oz77yI57eo6ZuG5bGl5q2044Gu44OQ44O844K444On44Oz77yJXG4gKi9cbmV4cG9ydCBjbGFzcyBQYWdlUmV2aXNpb24ge1xuICAvKiog44Oq44OT44K444On44Oz44GM5bGe44GZ44KL44Oa44O844K4ICovXG4gIHB1YmxpYyByZWFkb25seSBwYWdlOiBQYWdlO1xuXG4gIC8qKiDjg6rjg5Pjgrjjg6fjg7NJRCAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaWQ6IG51bWJlcjtcblxuICAvKiog44Oq44OT44K444On44Oz55Wq5Y+3ICovXG4gIHB1YmxpYyByZWFkb25seSByZXZObzogbnVtYmVyO1xuXG4gIC8qKiDjg6rjg5Pjgrjjg6fjg7PkvZzmiJDogIUgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNyZWF0ZWRCeTogQWJzdHJhY3RVc2VyO1xuXG4gIC8qKiDjg6rjg5Pjgrjjg6fjg7PkvZzmiJDml6XmmYIgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNyZWF0ZWRBdDogRGF0ZTtcblxuICAvKiog57eo6ZuG44Kz44Oh44Oz44OIICovXG4gIHB1YmxpYyByZWFkb25seSBjb21tZW50OiBzdHJpbmc7XG5cbiAgLyoqIOOCveODvOOCueOCs+ODvOODie+8iOWGhemDqOOCreODo+ODg+OCt+ODpe+8iSAqL1xuICBwcml2YXRlIF9zb3VyY2U6IFBhZ2VTb3VyY2UgfCBudWxsID0gbnVsbDtcblxuICAvKiogSFRNTOihqOekuu+8iOWGhemDqOOCreODo+ODg+OCt+ODpe+8iSAqL1xuICBwcml2YXRlIF9odG1sOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihkYXRhOiBQYWdlUmV2aXNpb25EYXRhKSB7XG4gICAgdGhpcy5wYWdlID0gZGF0YS5wYWdlO1xuICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgIHRoaXMucmV2Tm8gPSBkYXRhLnJldk5vO1xuICAgIHRoaXMuY3JlYXRlZEJ5ID0gZGF0YS5jcmVhdGVkQnk7XG4gICAgdGhpcy5jcmVhdGVkQXQgPSBkYXRhLmNyZWF0ZWRBdDtcbiAgICB0aGlzLmNvbW1lbnQgPSBkYXRhLmNvbW1lbnQ7XG4gIH1cblxuICAvKipcbiAgICog44K944O844K544Kz44O844OJ44GM5Y+W5b6X5riI44G/44GL44Gp44GG44GLXG4gICAqL1xuICBpc1NvdXJjZUFjcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zb3VyY2UgIT09IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogSFRNTOihqOekuuOBjOWPluW+l+a4iOOBv+OBi+OBqeOBhuOBi1xuICAgKi9cbiAgaXNIdG1sQWNxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2h0bWwgIT09IG51bGw7XG4gIH1cblxuICAvKipcbiAgICog44K944O844K544Kz44O844OJ77yI44Kt44Oj44OD44K344Ol5riI44G/77yJ44KS5Y+W5b6XXG4gICAqL1xuICBnZXQgc291cmNlKCk6IFBhZ2VTb3VyY2UgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fc291cmNlO1xuICB9XG5cbiAgLyoqXG4gICAqIOOCveODvOOCueOCs+ODvOODieOCkuioreWumlxuICAgKi9cbiAgc2V0IHNvdXJjZSh2YWx1ZTogUGFnZVNvdXJjZSB8IG51bGwpIHtcbiAgICB0aGlzLl9zb3VyY2UgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIVE1M6KGo56S677yI44Kt44Oj44OD44K344Ol5riI44G/77yJ44KS5Y+W5b6XXG4gICAqL1xuICBnZXQgaHRtbCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5faHRtbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBIVE1M6KGo56S644KS6Kit5a6aXG4gICAqL1xuICBzZXQgaHRtbCh2YWx1ZTogc3RyaW5nIHwgbnVsbCkge1xuICAgIHRoaXMuX2h0bWwgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiDjg6rjg5Pjgrjjg6fjg7Pjga7jgr3jg7zjgrnjgpLlj5blvpfjgZnjgovvvIhSRVYtMDAx77yJXG4gICAqIEByZXR1cm5zIOOCveODvOOCueaWh+Wtl+WIl1xuICAgKi9cbiAgZ2V0U291cmNlKCk6IFdpa2lkb3RSZXN1bHRBc3luYzxzdHJpbmc+IHtcbiAgICByZXR1cm4gZnJvbVByb21pc2UoXG4gICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAvLyDjgq3jg6Pjg4Pjgrfjg6XjgYzjgYLjgozjgbDov5TjgZlcbiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLl9zb3VyY2Uud2lraVRleHQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnBhZ2Uuc2l0ZS5hbWNSZXF1ZXN0KFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBtb2R1bGVOYW1lOiAnaGlzdG9yeS9QYWdlU291cmNlTW9kdWxlJyxcbiAgICAgICAgICAgIHJldmlzaW9uX2lkOiB0aGlzLmlkLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0pO1xuXG4gICAgICAgIGlmIChyZXN1bHQuaXNFcnIoKSkge1xuICAgICAgICAgIHRocm93IHJlc3VsdC5lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gcmVzdWx0LnZhbHVlWzBdO1xuICAgICAgICBpZiAoIXJlc3BvbnNlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IE5vRWxlbWVudEVycm9yKCdFbXB0eSByZXNwb25zZSBmcm9tIFBhZ2VTb3VyY2VNb2R1bGUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGh0bWwgPSBTdHJpbmcocmVzcG9uc2UuYm9keSA/PyAnJyk7XG4gICAgICAgIGNvbnN0ICQgPSBjaGVlcmlvLmxvYWQoaHRtbCk7XG5cbiAgICAgICAgLy8g44K944O844K544Kz44O844OJ44GvPGRpdiBjbGFzcz1cInBhZ2Utc291cmNlXCI+5YaF44Gr44GC44KLXG4gICAgICAgIGNvbnN0IHNvdXJjZUVsZW0gPSAkKCdkaXYucGFnZS1zb3VyY2UnKTtcbiAgICAgICAgaWYgKHNvdXJjZUVsZW0ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IE5vRWxlbWVudEVycm9yKCdTb3VyY2UgZWxlbWVudCBub3QgZm91bmQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNvdXJjZVRleHQgPSBzb3VyY2VFbGVtLnRleHQoKTtcbiAgICAgICAgcmV0dXJuIHNvdXJjZVRleHQ7XG4gICAgICB9KSgpLFxuICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIE5vRWxlbWVudEVycm9yKSB7XG4gICAgICAgICAgcmV0dXJuIGVycm9yO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXcgVW5leHBlY3RlZEVycm9yKGBGYWlsZWQgdG8gZ2V0IHJldmlzaW9uIHNvdXJjZTogJHtTdHJpbmcoZXJyb3IpfWApO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICog44Oq44OT44K444On44Oz44GuSFRNTOOCkuWPluW+l+OBmeOCi++8iFJFVi0wMDLvvIlcbiAgICogQHJldHVybnMgSFRNTOaWh+Wtl+WIl1xuICAgKi9cbiAgZ2V0SHRtbCgpOiBXaWtpZG90UmVzdWx0QXN5bmM8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGZyb21Qcm9taXNlKFxuICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgLy8g44Kt44Oj44OD44K344Ol44GM44GC44KM44Gw6L+U44GZXG4gICAgICAgIGlmICh0aGlzLl9odG1sKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2h0bWw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnBhZ2Uuc2l0ZS5hbWNSZXF1ZXN0KFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBtb2R1bGVOYW1lOiAnaGlzdG9yeS9QYWdlVmVyc2lvbk1vZHVsZScsXG4gICAgICAgICAgICByZXZpc2lvbl9pZDogdGhpcy5pZCxcbiAgICAgICAgICB9LFxuICAgICAgICBdKTtcblxuICAgICAgICBpZiAocmVzdWx0LmlzRXJyKCkpIHtcbiAgICAgICAgICB0aHJvdyByZXN1bHQuZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IHJlc3VsdC52YWx1ZVswXTtcbiAgICAgICAgaWYgKCFyZXNwb25zZSkge1xuICAgICAgICAgIHRocm93IG5ldyBOb0VsZW1lbnRFcnJvcignRW1wdHkgcmVzcG9uc2UgZnJvbSBQYWdlVmVyc2lvbk1vZHVsZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaHRtbCA9IFN0cmluZyhyZXNwb25zZS5ib2R5ID8/ICcnKTtcbiAgICAgICAgY29uc3QgJCA9IGNoZWVyaW8ubG9hZChodG1sKTtcblxuICAgICAgICAvLyBIVE1M44Kz44Oz44OG44Oz44OE44GvPGRpdiBpZD1cInBhZ2UtY29udGVudFwiPuWGheOBq+OBguOCi1xuICAgICAgICBjb25zdCBjb250ZW50RWxlbSA9ICQoJyNwYWdlLWNvbnRlbnQnKTtcbiAgICAgICAgaWYgKGNvbnRlbnRFbGVtLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIC8vIHBhZ2UtY29udGVudOOBjOOBquOBhOWgtOWQiOOBr2JvZHnlhajkvZPjgpLov5TjgZlcbiAgICAgICAgICB0aGlzLl9odG1sID0gaHRtbDtcbiAgICAgICAgICByZXR1cm4gaHRtbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbnRlbnRIdG1sID0gY29udGVudEVsZW0uaHRtbCgpID8/ICcnO1xuICAgICAgICB0aGlzLl9odG1sID0gY29udGVudEh0bWw7XG4gICAgICAgIHJldHVybiBjb250ZW50SHRtbDtcbiAgICAgIH0pKCksXG4gICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgTm9FbGVtZW50RXJyb3IpIHtcbiAgICAgICAgICByZXR1cm4gZXJyb3I7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBVbmV4cGVjdGVkRXJyb3IoYEZhaWxlZCB0byBnZXQgcmV2aXNpb24gSFRNTDogJHtTdHJpbmcoZXJyb3IpfWApO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgUGFnZVJldmlzaW9uKGlkPSR7dGhpcy5pZH0sIHJldk5vPSR7dGhpcy5yZXZOb30pYDtcbiAgfVxufVxuXG4vKipcbiAqIOODmuODvOOCuOODquODk+OCuOODp+ODs+OCs+ODrOOCr+OCt+ODp+ODs1xuICovXG5leHBvcnQgY2xhc3MgUGFnZVJldmlzaW9uQ29sbGVjdGlvbiBleHRlbmRzIEFycmF5PFBhZ2VSZXZpc2lvbj4ge1xuICBwdWJsaWMgcmVhZG9ubHkgcGFnZTogUGFnZSB8IG51bGw7XG5cbiAgY29uc3RydWN0b3IocGFnZTogUGFnZSB8IG51bGwsIHJldmlzaW9ucz86IFBhZ2VSZXZpc2lvbltdKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnBhZ2UgPSBwYWdlO1xuICAgIGlmIChyZXZpc2lvbnMpIHtcbiAgICAgIHRoaXMucHVzaCguLi5yZXZpc2lvbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJROOBp+aknOe0olxuICAgKiBAcGFyYW0gaWQgLSDjg6rjg5Pjgrjjg6fjg7NJRFxuICAgKiBAcmV0dXJucyDjg6rjg5Pjgrjjg6fjg7PvvIjlrZjlnKjjgZfjgarjgYTloLTlkIjjga91bmRlZmluZWTvvIlcbiAgICovXG4gIGZpbmRCeUlkKGlkOiBudW1iZXIpOiBQYWdlUmV2aXNpb24gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZpbmQoKHJldmlzaW9uKSA9PiByZXZpc2lvbi5pZCA9PT0gaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWFqOODquODk+OCuOODp+ODs+OBruOCveODvOOCueOCkuS4gOaLrOWPluW+l+OBmeOCi1xuICAgKiBAcmV0dXJucyDjgr3jg7zjgrnmloflrZfliJfjga7phY3liJdcbiAgICovXG4gIGdldFNvdXJjZXMoKTogV2lraWRvdFJlc3VsdEFzeW5jPHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIGZyb21Qcm9taXNlKFxuICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgIHRoaXMubWFwKGFzeW5jIChyZXZpc2lvbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmV2aXNpb24uZ2V0U291cmNlKCk7XG4gICAgICAgICAgICBpZiAocmVzdWx0LmlzRXJyKCkpIHtcbiAgICAgICAgICAgICAgdGhyb3cgcmVzdWx0LmVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdC52YWx1ZTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gcmVzdWx0cztcbiAgICAgIH0pKCksXG4gICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgTm9FbGVtZW50RXJyb3IpIHtcbiAgICAgICAgICByZXR1cm4gZXJyb3I7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBVbmV4cGVjdGVkRXJyb3IoYEZhaWxlZCB0byBnZXQgc291cmNlczogJHtTdHJpbmcoZXJyb3IpfWApO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICog5YWo44Oq44OT44K444On44Oz44GuSFRNTOOCkuS4gOaLrOWPluW+l+OBmeOCi1xuICAgKiBAcmV0dXJucyBIVE1M5paH5a2X5YiX44Gu6YWN5YiXXG4gICAqL1xuICBnZXRIdG1scygpOiBXaWtpZG90UmVzdWx0QXN5bmM8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gZnJvbVByb21pc2UoXG4gICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgdGhpcy5tYXAoYXN5bmMgKHJldmlzaW9uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCByZXZpc2lvbi5nZXRIdG1sKCk7XG4gICAgICAgICAgICBpZiAocmVzdWx0LmlzRXJyKCkpIHtcbiAgICAgICAgICAgICAgdGhyb3cgcmVzdWx0LmVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdC52YWx1ZTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gcmVzdWx0cztcbiAgICAgIH0pKCksXG4gICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgTm9FbGVtZW50RXJyb3IpIHtcbiAgICAgICAgICByZXR1cm4gZXJyb3I7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBVbmV4cGVjdGVkRXJyb3IoYEZhaWxlZCB0byBnZXQgSFRNTHM6ICR7U3RyaW5nKGVycm9yKX1gKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iCiAgXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBQUE7QUFzQk8sTUFBTSxhQUFhO0FBQUEsRUFFUjtBQUFBLEVBR0E7QUFBQSxFQUdBO0FBQUEsRUFHQTtBQUFBLEVBR0E7QUFBQSxFQUdBO0FBQUEsRUFHUixVQUE2QjtBQUFBLEVBRzdCLFFBQXVCO0FBQUEsRUFFL0IsV0FBVyxDQUFDLE1BQXdCO0FBQUEsSUFDbEMsS0FBSyxPQUFPLEtBQUs7QUFBQSxJQUNqQixLQUFLLEtBQUssS0FBSztBQUFBLElBQ2YsS0FBSyxRQUFRLEtBQUs7QUFBQSxJQUNsQixLQUFLLFlBQVksS0FBSztBQUFBLElBQ3RCLEtBQUssWUFBWSxLQUFLO0FBQUEsSUFDdEIsS0FBSyxVQUFVLEtBQUs7QUFBQTtBQUFBLEVBTXRCLGdCQUFnQixHQUFZO0FBQUEsSUFDMUIsT0FBTyxLQUFLLFlBQVk7QUFBQTtBQUFBLEVBTTFCLGNBQWMsR0FBWTtBQUFBLElBQ3hCLE9BQU8sS0FBSyxVQUFVO0FBQUE7QUFBQSxNQU1wQixNQUFNLEdBQXNCO0FBQUEsSUFDOUIsT0FBTyxLQUFLO0FBQUE7QUFBQSxNQU1WLE1BQU0sQ0FBQyxPQUEwQjtBQUFBLElBQ25DLEtBQUssVUFBVTtBQUFBO0FBQUEsTUFNYixJQUFJLEdBQWtCO0FBQUEsSUFDeEIsT0FBTyxLQUFLO0FBQUE7QUFBQSxNQU1WLElBQUksQ0FBQyxPQUFzQjtBQUFBLElBQzdCLEtBQUssUUFBUTtBQUFBO0FBQUEsRUFPZixTQUFTLEdBQStCO0FBQUEsSUFDdEMsT0FBTyxhQUNKLFlBQVk7QUFBQSxNQUVYLElBQUksS0FBSyxTQUFTO0FBQUEsUUFDaEIsT0FBTyxLQUFLLFFBQVE7QUFBQSxNQUN0QjtBQUFBLE1BRUEsTUFBTSxTQUFTLE1BQU0sS0FBSyxLQUFLLEtBQUssV0FBVztBQUFBLFFBQzdDO0FBQUEsVUFDRSxZQUFZO0FBQUEsVUFDWixhQUFhLEtBQUs7QUFBQSxRQUNwQjtBQUFBLE1BQ0YsQ0FBQztBQUFBLE1BRUQsSUFBSSxPQUFPLE1BQU0sR0FBRztBQUFBLFFBQ2xCLE1BQU0sT0FBTztBQUFBLE1BQ2Y7QUFBQSxNQUVBLE1BQU0sV0FBVyxPQUFPLE1BQU07QUFBQSxNQUM5QixJQUFJLENBQUMsVUFBVTtBQUFBLFFBQ2IsTUFBTSxJQUFJLGVBQWUsc0NBQXNDO0FBQUEsTUFDakU7QUFBQSxNQUVBLE1BQU0sT0FBTyxPQUFPLFNBQVMsUUFBUSxFQUFFO0FBQUEsTUFDdkMsTUFBTSxJQUFZLGFBQUssSUFBSTtBQUFBLE1BRzNCLE1BQU0sYUFBYSxFQUFFLGlCQUFpQjtBQUFBLE1BQ3RDLElBQUksV0FBVyxXQUFXLEdBQUc7QUFBQSxRQUMzQixNQUFNLElBQUksZUFBZSwwQkFBMEI7QUFBQSxNQUNyRDtBQUFBLE1BRUEsTUFBTSxhQUFhLFdBQVcsS0FBSztBQUFBLE1BQ25DLE9BQU87QUFBQSxPQUNOLEdBQ0gsQ0FBQyxVQUFVO0FBQUEsTUFDVCxJQUFJLGlCQUFpQixnQkFBZ0I7QUFBQSxRQUNuQyxPQUFPO0FBQUEsTUFDVDtBQUFBLE1BQ0EsT0FBTyxJQUFJLGdCQUFnQixrQ0FBa0MsT0FBTyxLQUFLLEdBQUc7QUFBQSxLQUVoRjtBQUFBO0FBQUEsRUFPRixPQUFPLEdBQStCO0FBQUEsSUFDcEMsT0FBTyxhQUNKLFlBQVk7QUFBQSxNQUVYLElBQUksS0FBSyxPQUFPO0FBQUEsUUFDZCxPQUFPLEtBQUs7QUFBQSxNQUNkO0FBQUEsTUFFQSxNQUFNLFNBQVMsTUFBTSxLQUFLLEtBQUssS0FBSyxXQUFXO0FBQUEsUUFDN0M7QUFBQSxVQUNFLFlBQVk7QUFBQSxVQUNaLGFBQWEsS0FBSztBQUFBLFFBQ3BCO0FBQUEsTUFDRixDQUFDO0FBQUEsTUFFRCxJQUFJLE9BQU8sTUFBTSxHQUFHO0FBQUEsUUFDbEIsTUFBTSxPQUFPO0FBQUEsTUFDZjtBQUFBLE1BRUEsTUFBTSxXQUFXLE9BQU8sTUFBTTtBQUFBLE1BQzlCLElBQUksQ0FBQyxVQUFVO0FBQUEsUUFDYixNQUFNLElBQUksZUFBZSx1Q0FBdUM7QUFBQSxNQUNsRTtBQUFBLE1BRUEsTUFBTSxPQUFPLE9BQU8sU0FBUyxRQUFRLEVBQUU7QUFBQSxNQUN2QyxNQUFNLElBQVksYUFBSyxJQUFJO0FBQUEsTUFHM0IsTUFBTSxjQUFjLEVBQUUsZUFBZTtBQUFBLE1BQ3JDLElBQUksWUFBWSxXQUFXLEdBQUc7QUFBQSxRQUU1QixLQUFLLFFBQVE7QUFBQSxRQUNiLE9BQU87QUFBQSxNQUNUO0FBQUEsTUFFQSxNQUFNLGNBQWMsWUFBWSxLQUFLLEtBQUs7QUFBQSxNQUMxQyxLQUFLLFFBQVE7QUFBQSxNQUNiLE9BQU87QUFBQSxPQUNOLEdBQ0gsQ0FBQyxVQUFVO0FBQUEsTUFDVCxJQUFJLGlCQUFpQixnQkFBZ0I7QUFBQSxRQUNuQyxPQUFPO0FBQUEsTUFDVDtBQUFBLE1BQ0EsT0FBTyxJQUFJLGdCQUFnQixnQ0FBZ0MsT0FBTyxLQUFLLEdBQUc7QUFBQSxLQUU5RTtBQUFBO0FBQUEsRUFHRixRQUFRLEdBQVc7QUFBQSxJQUNqQixPQUFPLG1CQUFtQixLQUFLLGFBQWEsS0FBSztBQUFBO0FBRXJEO0FBQUE7QUFLTyxNQUFNLCtCQUErQixNQUFvQjtBQUFBLEVBQzlDO0FBQUEsRUFFaEIsV0FBVyxDQUFDLE1BQW1CLFdBQTRCO0FBQUEsSUFDekQsTUFBTTtBQUFBLElBQ04sS0FBSyxPQUFPO0FBQUEsSUFDWixJQUFJLFdBQVc7QUFBQSxNQUNiLEtBQUssS0FBSyxHQUFHLFNBQVM7QUFBQSxJQUN4QjtBQUFBO0FBQUEsRUFRRixRQUFRLENBQUMsSUFBc0M7QUFBQSxJQUM3QyxPQUFPLEtBQUssS0FBSyxDQUFDLGFBQWEsU0FBUyxPQUFPLEVBQUU7QUFBQTtBQUFBLEVBT25ELFVBQVUsR0FBaUM7QUFBQSxJQUN6QyxPQUFPLGFBQ0osWUFBWTtBQUFBLE1BQ1gsTUFBTSxVQUFVLE1BQU0sUUFBUSxJQUM1QixLQUFLLElBQUksT0FBTyxhQUFhO0FBQUEsUUFDM0IsTUFBTSxTQUFTLE1BQU0sU0FBUyxVQUFVO0FBQUEsUUFDeEMsSUFBSSxPQUFPLE1BQU0sR0FBRztBQUFBLFVBQ2xCLE1BQU0sT0FBTztBQUFBLFFBQ2Y7QUFBQSxRQUNBLE9BQU8sT0FBTztBQUFBLE9BQ2YsQ0FDSDtBQUFBLE1BQ0EsT0FBTztBQUFBLE9BQ04sR0FDSCxDQUFDLFVBQVU7QUFBQSxNQUNULElBQUksaUJBQWlCLGdCQUFnQjtBQUFBLFFBQ25DLE9BQU87QUFBQSxNQUNUO0FBQUEsTUFDQSxPQUFPLElBQUksZ0JBQWdCLDBCQUEwQixPQUFPLEtBQUssR0FBRztBQUFBLEtBRXhFO0FBQUE7QUFBQSxFQU9GLFFBQVEsR0FBaUM7QUFBQSxJQUN2QyxPQUFPLGFBQ0osWUFBWTtBQUFBLE1BQ1gsTUFBTSxVQUFVLE1BQU0sUUFBUSxJQUM1QixLQUFLLElBQUksT0FBTyxhQUFhO0FBQUEsUUFDM0IsTUFBTSxTQUFTLE1BQU0sU0FBUyxRQUFRO0FBQUEsUUFDdEMsSUFBSSxPQUFPLE1BQU0sR0FBRztBQUFBLFVBQ2xCLE1BQU0sT0FBTztBQUFBLFFBQ2Y7QUFBQSxRQUNBLE9BQU8sT0FBTztBQUFBLE9BQ2YsQ0FDSDtBQUFBLE1BQ0EsT0FBTztBQUFBLE9BQ04sR0FDSCxDQUFDLFVBQVU7QUFBQSxNQUNULElBQUksaUJBQWlCLGdCQUFnQjtBQUFBLFFBQ25DLE9BQU87QUFBQSxNQUNUO0FBQUEsTUFDQSxPQUFPLElBQUksZ0JBQWdCLHdCQUF3QixPQUFPLEtBQUssR0FBRztBQUFBLEtBRXRFO0FBQUE7QUFFSjsiLAogICJkZWJ1Z0lkIjogIjJDQ0E1QUIzMUY2NTNDMTI2NDc1NkUyMTY0NzU2RTIxIiwKICAibmFtZXMiOiBbXQp9
|