beatsaber-bot-core 0.2.0-dev.12 → 0.2.0-dev.14
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/lib/api/composed/beatleader.js.map +1 -1
- package/lib/cmd/bsmap/id-search.js +1 -1
- package/lib/cmd/bsmap/id-search.js.map +1 -1
- package/lib/cmd/bsmap/key-search.js +5 -5
- package/lib/cmd/bsmap/key-search.js.map +1 -1
- package/lib/cmd/bsmap/latest.js +1 -1
- package/lib/cmd/bsmap/latest.js.map +1 -1
- package/lib/cmd/deprecated/me.d.ts +1 -1
- package/lib/cmd/deprecated/me.js +2 -2
- package/lib/cmd/deprecated/me.js.map +1 -1
- package/lib/cmd/deprecated/whois.js +1 -1
- package/lib/cmd/deprecated/whois.js.map +1 -1
- package/lib/cmd/rank.js +3 -3
- package/lib/cmd/rank.js.map +1 -1
- package/lib/cmd/score.d.ts +1 -1
- package/lib/cmd/score.js +7 -2
- package/lib/cmd/score.js.map +1 -1
- package/lib/config.d.ts +13 -1
- package/lib/i18n/index.js +2 -35
- package/lib/i18n/index.js.map +1 -1
- package/lib/i18n/parser.d.ts +14 -0
- package/lib/i18n/parser.js +163 -0
- package/lib/i18n/parser.js.map +1 -0
- package/lib/i18n/zh-cn.json +1 -1
- package/lib/img-render/components/rankScoreItem.d.ts +3 -0
- package/lib/img-render/components/rankScoreItem.js +6 -2
- package/lib/img-render/components/rankScoreItem.js.map +1 -1
- package/lib/img-render/index.d.ts +12 -10
- package/lib/img-render/index.js.map +1 -1
- package/lib/img-render/result/bs-score-with-rank.js +13 -1
- package/lib/img-render/result/bs-score-with-rank.js.map +1 -1
- package/lib/interface/render.d.ts +6 -5
- package/lib/utils/index.d.ts +2 -0
- package/lib/utils/index.js +3 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/puppeteer.d.ts +20 -0
- package/lib/utils/puppeteer.js +87 -0
- package/lib/utils/puppeteer.js.map +1 -0
- package/lib/utils/s3.d.ts +10 -0
- package/lib/utils/s3.js +45 -0
- package/lib/utils/s3.js.map +1 -0
- package/lib/ws/beatsaver.js +1 -1
- package/lib/ws/beatsaver.js.map +1 -1
- package/package.json +3 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"beatleader.js","sourceRoot":"","sources":["../../../src/api/composed/beatleader.ts"],"names":[],"mappings":";;;AACA,4CAAwC;AAExC,mEAA0D;
|
1
|
+
{"version":3,"file":"beatleader.js","sourceRoot":"","sources":["../../../src/api/composed/beatleader.ts"],"names":[],"mappings":"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"}
|
@@ -29,7 +29,7 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
29
29
|
};
|
30
30
|
const image = await c.render.renderMap(res.data, onStartRender);
|
31
31
|
// upload to s3?
|
32
|
-
await c.session.
|
32
|
+
await c.session.sendImgBuffer(image);
|
33
33
|
await c.session.sendAudioByUrl(res.data.versions[0].previewURL);
|
34
34
|
});
|
35
35
|
//# sourceMappingURL=id-search.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"id-search.js","sourceRoot":"","sources":["../../../src/cmd/bsmap/id-search.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,qCAAgE;AAEhE,MAAM,QAAQ,GAAG,oBAAoB,CAAA;AACrC,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,IAAI,CAAC,CAAC,iBAAiB;KAC/B,QAAQ,CAAC,KAAK,CAAC;KACf,QAAQ,CAAC,MAAM,CAAC;KAChB,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,MAAM,CAAC;IACjB,sDAAsD;KACrD,cAAc,CAAC,mCAAmC,CAAC;KACnD,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAChD,OAAM;IACR,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,0BAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IACjD,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAExE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACnD,MAAM,IAAI,2BAAkB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IAClD,CAAC;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;SACrC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IAC/D,gBAAgB;IAChB,MAAM,CAAC,CAAC,OAAO,CAAC,
|
1
|
+
{"version":3,"file":"id-search.js","sourceRoot":"","sources":["../../../src/cmd/bsmap/id-search.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,qCAAgE;AAEhE,MAAM,QAAQ,GAAG,oBAAoB,CAAA;AACrC,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,IAAI,CAAC,CAAC,iBAAiB;KAC/B,QAAQ,CAAC,KAAK,CAAC;KACf,QAAQ,CAAC,MAAM,CAAC;KAChB,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,MAAM,CAAC;IACjB,sDAAsD;KACrD,cAAc,CAAC,mCAAmC,CAAC;KACnD,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAChD,OAAM;IACR,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,0BAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IACjD,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAExE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACnD,MAAM,IAAI,2BAAkB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IAClD,CAAC;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;SACrC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IAC/D,gBAAgB;IAChB,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IACpC,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;AACjE,CAAC,CAAC,CAAA"}
|
@@ -31,11 +31,11 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
31
31
|
key: key,
|
32
32
|
length: toBeSend.length,
|
33
33
|
});
|
34
|
-
c.session.sendQuote(text);
|
34
|
+
await c.session.sendQuote(text);
|
35
35
|
// consider merge maps image
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
36
|
+
for (const item of toBeSend) {
|
37
|
+
await c.session.sendImgBuffer(await item.img);
|
38
|
+
await c.session.sendAudioByUrl(item.bsmap.versions[0].previewURL);
|
39
|
+
}
|
40
40
|
});
|
41
41
|
//# sourceMappingURL=key-search.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"key-search.js","sourceRoot":"","sources":["../../../src/cmd/bsmap/key-search.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAgB9C,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,QAAQ,CAAC,CAAC,aAAa;KAC/B,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,UAAU,CAAC;KACpB,QAAQ,CAAC,OAAO,CAAC;KACjB,cAAc,CAAC,mCAAmC,CAAC;KACnD,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,CAAA;IACjB,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACpB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACtB,CAAC,CAAC,OAAO,CAAC,SAAS,CACjB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,GAAG,EAAE,CAAC,CAC9D,CAAA;IACH,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACzE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;QACrB,CAAC,CAAC,OAAO,CAAC,SAAS,CACjB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,CAAC,CAC3D,CAAA;QACD,OAAM;IACR,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;SACrC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjD,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC;QAC1C,KAAK,EAAE,EAAE;KACV,CAAC,CAAC,CAAA;IACH,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE;QAC3D,GAAG,EAAE,GAAG;QACR,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAA;IACF,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;
|
1
|
+
{"version":3,"file":"key-search.js","sourceRoot":"","sources":["../../../src/cmd/bsmap/key-search.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAgB9C,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,QAAQ,CAAC,CAAC,aAAa;KAC/B,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,UAAU,CAAC;KACpB,QAAQ,CAAC,OAAO,CAAC;KACjB,cAAc,CAAC,mCAAmC,CAAC;KACnD,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,CAAA;IACjB,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACpB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACtB,CAAC,CAAC,OAAO,CAAC,SAAS,CACjB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,GAAG,EAAE,CAAC,CAC9D,CAAA;IACH,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACzE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;QACrB,CAAC,CAAC,OAAO,CAAC,SAAS,CACjB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,CAAC,CAC3D,CAAA;QACD,OAAM;IACR,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;SACrC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjD,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC;QAC1C,KAAK,EAAE,EAAE;KACV,CAAC,CAAC,CAAA;IACH,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE;QAC3D,GAAG,EAAE,GAAG;QACR,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAA;IACF,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAE/B,4BAA4B;IAC5B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAA;QAC7C,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IACnE,CAAC;AACH,CAAC,CAAC,CAAA"}
|
package/lib/cmd/bsmap/latest.js
CHANGED
@@ -29,7 +29,7 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
29
29
|
image: c.render.renderMap(item),
|
30
30
|
}));
|
31
31
|
for (const msg of msgs) {
|
32
|
-
await c.session.
|
32
|
+
await c.session.sendImgBuffer(await msg.image);
|
33
33
|
await c.session.sendAudioByUrl(msg.audio);
|
34
34
|
}
|
35
35
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"latest.js","sourceRoot":"","sources":["../../../src/cmd/bsmap/latest.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAE9C,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,QAAQ,CAAC;KACjB,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,UAAU,CAAC;KACpB,cAAc,CAAC,mCAAmC,CAAC;KACnD,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE;SAC9C,SAAS,CAAC,CAAC,CAAC;SACZ,aAAa,CAAC,CAAC,CAAC,CAAA;IAEnB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;QACrB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;QAClD,CAAC,CAAC,OAAO,CAAC,UAAU,CAClB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CACtD,CAAA;QACD,OAAM;IACR,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;IACzD,gCAAgC;IAChC,oBAAoB;IACpB,6CAA6C;IAC7C,8CAA8C;IAC9C,SAAS;IACT,MAAM;IACN,IAAI;IACJ,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU;QAClC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;KAChC,CAAC,CAAC,CAAA;IACH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,CAAC,OAAO,CAAC,
|
1
|
+
{"version":3,"file":"latest.js","sourceRoot":"","sources":["../../../src/cmd/bsmap/latest.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAE9C,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,QAAQ,CAAC;KACjB,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,UAAU,CAAC;KACpB,cAAc,CAAC,mCAAmC,CAAC;KACnD,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE;SAC9C,SAAS,CAAC,CAAC,CAAC;SACZ,aAAa,CAAC,CAAC,CAAC,CAAA;IAEnB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;QACrB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;QAClD,CAAC,CAAC,OAAO,CAAC,UAAU,CAClB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CACtD,CAAA;QACD,OAAM;IACR,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;IACzD,gCAAgC;IAChC,oBAAoB;IACpB,6CAA6C;IAC7C,8CAA8C;IAC9C,SAAS;IACT,MAAM;IACN,IAAI;IACJ,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU;QAClC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;KAChC,CAAC,CAAC,CAAA;IACH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAA;QAC9C,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC,CAAC,CAAA"}
|
package/lib/cmd/deprecated/me.js
CHANGED
@@ -57,10 +57,10 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
57
57
|
return;
|
58
58
|
}
|
59
59
|
const img = await c.render.renderScore(scoreReq.data.id.toString(), rankPlatform);
|
60
|
-
c.session.
|
60
|
+
await c.session.sendImgBuffer(img);
|
61
61
|
return;
|
62
62
|
}
|
63
63
|
const img = await c.render.renderRank(accountId, rankPlatform);
|
64
|
-
c.session.
|
64
|
+
await c.session.sendImgBuffer(img);
|
65
65
|
});
|
66
66
|
//# sourceMappingURL=me.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"me.js","sourceRoot":"","sources":["../../../src/cmd/deprecated/me.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"me.js","sourceRoot":"","sources":["../../../src/cmd/deprecated/me.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"whois.js","sourceRoot":"","sources":["../../../src/cmd/deprecated/whois.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,2CAAsC;AAEtC,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,KAAK,CAAC;KACd,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;KACjC,cAAc,CAAC,mCAAmC,CAAC;KACnD,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAA;IACpE,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAA;QACjE,OAAM;IACR,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACrE,IAAI,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IACpD,SAAS,KAAK,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAA;QACnE,OAAM;IACR,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;SACrC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC9D,CAAC,CAAC,OAAO,CAAC,
|
1
|
+
{"version":3,"file":"whois.js","sourceRoot":"","sources":["../../../src/cmd/deprecated/whois.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,2CAAsC;AAEtC,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,KAAK,CAAC;KACd,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;KACjC,cAAc,CAAC,mCAAmC,CAAC;KACnD,QAAQ,CAAC,OAAO,CAAC;KACjB,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC3C,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAA;IACpE,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAA;QACjE,OAAM;IACR,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACrE,IAAI,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IACpD,SAAS,KAAK,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAA;QACnE,OAAM;IACR,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;SACrC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC9D,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC,CAAC,CAAA"}
|
package/lib/cmd/rank.js
CHANGED
@@ -30,12 +30,12 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
30
30
|
uid = c.session.mentions[0].id;
|
31
31
|
}
|
32
32
|
const { blAccount, ssAccount } = await c.db.getUserAccountsByUid(uid);
|
33
|
-
let accountId = interface_1.Platform.BL && blAccount
|
33
|
+
let accountId = interface_1.Platform.BL && blAccount?.platformUid;
|
34
34
|
if (c.input) {
|
35
35
|
accountId = c.input;
|
36
36
|
}
|
37
37
|
else if (!accountId) {
|
38
|
-
accountId = interface_1.Platform.SS && ssAccount
|
38
|
+
accountId = interface_1.Platform.SS && ssAccount?.platformUid;
|
39
39
|
}
|
40
40
|
if (!accountId && !c.input) {
|
41
41
|
// c.session.sendQuote(c.session.text('commands.bsbot.me.not-found'))
|
@@ -50,6 +50,6 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
50
50
|
// }
|
51
51
|
const rankPlatform = c.options.p == 'ss' ? interface_1.Platform.SS : interface_1.Platform.BL;
|
52
52
|
const img = await c.render.renderRank(accountId, rankPlatform);
|
53
|
-
await c.session.
|
53
|
+
await c.session.sendImgBuffer(img);
|
54
54
|
});
|
55
55
|
//# sourceMappingURL=rank.js.map
|
package/lib/cmd/rank.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rank.js","sourceRoot":"","sources":["../../src/cmd/rank.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,2CAAsC;AAEtC,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,MAAM,CAAC;KACf,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;KACjC,cAAc,CAAC,mCAAmC,CAAC;KACnD,QAAQ,CAAC,QAAQ,CAAC;KAClB,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC5C,QAAQ,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC5C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KACzC,QAAQ,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KACzC,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC1C,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC1C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAA;IAChE,oDAAoD;IACpD,UAAU;IACV,0BAA0B;IAC1B,WAAW;IACX,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;IACxB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChC,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACrE,IAAI,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,
|
1
|
+
{"version":3,"file":"rank.js","sourceRoot":"","sources":["../../src/cmd/rank.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,2CAAsC;AAEtC,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,MAAM,CAAC;KACf,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;KACjC,cAAc,CAAC,mCAAmC,CAAC;KACnD,QAAQ,CAAC,QAAQ,CAAC;KAClB,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC5C,QAAQ,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC5C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KACzC,QAAQ,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KACzC,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC1C,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC1C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;KAC7C,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAA;IAChE,oDAAoD;IACpD,UAAU;IACV,0BAA0B;IAC1B,WAAW;IACX,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;IACxB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChC,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACrE,IAAI,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,EAAE,WAAW,CAAA;IAErD,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACZ,SAAS,GAAG,CAAC,CAAC,KAAK,CAAA;IACrB,CAAC;SAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtB,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,EAAE,WAAW,CAAA;IACnD,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3B,qEAAqE;QACrE,MAAM,KAAK,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAA;IACxC,CAAC;IACD,gCAAgC;IAChC,oBAAoB;IACpB,6CAA6C;IAC7C,8CAA8C;IAC9C,SAAS;IACT,MAAM;IACN,IAAI;IACJ,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAA;IACpE,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC9D,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;AACpC,CAAC,CAAC,CAAA"}
|
package/lib/cmd/score.d.ts
CHANGED
package/lib/cmd/score.js
CHANGED
@@ -34,10 +34,15 @@ exports.default = () => new builder_1.CommandBuilder()
|
|
34
34
|
const mapId = c.input;
|
35
35
|
const score = await c.api.BeatLeader.wrapperResult().getScoreByPlayerIdAndMapId(accountId, mapId, diffOption);
|
36
36
|
if (!score.isSuccess()) {
|
37
|
-
throw new errors_1.ScoreNotFoundError({
|
37
|
+
throw new errors_1.ScoreNotFoundError({
|
38
|
+
user: accountId,
|
39
|
+
id: mapId,
|
40
|
+
diff: diffOption.difficulty,
|
41
|
+
mode: c.options.m,
|
42
|
+
});
|
38
43
|
}
|
39
44
|
const platform = c.options.p == 'ss' ? interface_1.Platform.SS : interface_1.Platform.BL;
|
40
45
|
const img = await c.render.renderScore(score.data.id.toString(), platform);
|
41
|
-
await c.session.
|
46
|
+
await c.session.sendImgBuffer(img);
|
42
47
|
});
|
43
48
|
//# sourceMappingURL=score.js.map
|
package/lib/cmd/score.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"score.js","sourceRoot":"","sources":["../../src/cmd/score.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,2CAAsC;AACtC,mCAAqC;AACrC,qCAA0E;AAC1E,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,OAAO,CAAC,CAAC,aAAa;KAC9B,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;KACjC,SAAS,CAAC,GAAG,EAAE,kBAAkB,CAAC;KAClC,SAAS,CAAC,GAAG,EAAE,aAAa,CAAC;KAC7B,QAAQ,CAAC,SAAS,CAAC;KACnB,QAAQ,CAAC,QAAQ,CAAC;KAClB,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,kCAAkC;IAClC,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;IACxB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChC,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACrE,IAAI,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IACpD,SAAS,KAAK,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,oCAA2B,EAAE,CAAA;IACzC,CAAC;IAED,IAAI,UAAU,CAAA;IACd,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC/B,UAAU,GAAG;YACX,UAAU,EAAE,IAAA,mBAAW,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SAClB,CAAA;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAA;IAErB,MAAM,KAAK,GACT,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,0BAA0B,CAC/D,SAAS,EACT,KAAK,EACL,UAAU,CACX,CAAA;IACH,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,2BAAkB,CAAC,
|
1
|
+
{"version":3,"file":"score.js","sourceRoot":"","sources":["../../src/cmd/score.ts"],"names":[],"mappings":";;AAAA,2CAA8C;AAC9C,2CAAsC;AACtC,mCAAqC;AACrC,qCAA0E;AAC1E,kBAAe,GAAG,EAAE,CAClB,IAAI,wBAAc,EAAE;KACjB,OAAO,CAAC,OAAO,CAAC,CAAC,aAAa;KAC9B,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;KACjC,SAAS,CAAC,GAAG,EAAE,kBAAkB,CAAC;KAClC,SAAS,CAAC,GAAG,EAAE,aAAa,CAAC;KAC7B,QAAQ,CAAC,SAAS,CAAC;KACnB,QAAQ,CAAC,QAAQ,CAAC;KAClB,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,kCAAkC;IAClC,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;IACxB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChC,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACrE,IAAI,SAAS,GAAG,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IACpD,SAAS,KAAK,oBAAQ,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAA;IAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,oCAA2B,EAAE,CAAA;IACzC,CAAC;IAED,IAAI,UAAU,CAAA;IACd,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC/B,UAAU,GAAG;YACX,UAAU,EAAE,IAAA,mBAAW,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SAClB,CAAA;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAA;IAErB,MAAM,KAAK,GACT,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,0BAA0B,CAC/D,SAAS,EACT,KAAK,EACL,UAAU,CACX,CAAA;IACH,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,2BAAkB,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,UAAU,CAAC,UAAU;YAC3B,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SAClB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAQ,CAAC,EAAE,CAAA;IAChE,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAA;IAC1E,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;AACpC,CAAC,CAAC,CAAA"}
|
package/lib/config.d.ts
CHANGED
@@ -5,13 +5,25 @@ export interface BSAbility {
|
|
5
5
|
};
|
6
6
|
}
|
7
7
|
export interface Config {
|
8
|
+
preferPuppeteerMode: 'local-plugin' | 'remote';
|
9
|
+
broswerlessWSEndpoint: string;
|
10
|
+
uploadImageToS3: {
|
11
|
+
enable: boolean;
|
12
|
+
s3AccessKey: string;
|
13
|
+
s3SecretKey: string;
|
14
|
+
endpoint: string;
|
15
|
+
region: string | undefined;
|
16
|
+
bucketName: string;
|
17
|
+
keyPrefix: string;
|
18
|
+
baseURL: string;
|
19
|
+
};
|
20
|
+
renderMode: 'local' | 'remote';
|
8
21
|
beatSaverHost: string;
|
9
22
|
beatSaverWSURL: string;
|
10
23
|
remoteRenderURL: string;
|
11
24
|
minRawMatchMapIdLength: number;
|
12
25
|
defaultWaitTimeout: number;
|
13
26
|
rankWaitTimeout: number;
|
14
|
-
renderMode: 'local' | 'remote';
|
15
27
|
bsOauthClientId: string;
|
16
28
|
bsOauthClientSecret: string;
|
17
29
|
blOauthClientId: string;
|
package/lib/i18n/index.js
CHANGED
@@ -24,6 +24,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
24
24
|
};
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
26
26
|
exports.tran = exports.loadI18nConfig = void 0;
|
27
|
+
const parser_1 = require("../i18n/parser");
|
27
28
|
const i18nObj = {};
|
28
29
|
init().then((_) => console.log('i18n loaded'));
|
29
30
|
async function init() {
|
@@ -58,16 +59,6 @@ function loadI18nConfig(lang, obj) {
|
|
58
59
|
console.log(`overwrite i18n ${lang} `);
|
59
60
|
}
|
60
61
|
exports.loadI18nConfig = loadI18nConfig;
|
61
|
-
function safeEval(expr, context) {
|
62
|
-
try {
|
63
|
-
const fn = new Function(...Object.keys(context), `return ${expr}`);
|
64
|
-
return fn(...Object.values(context));
|
65
|
-
}
|
66
|
-
catch (e) {
|
67
|
-
console.error(expr, context, e);
|
68
|
-
return expr;
|
69
|
-
}
|
70
|
-
}
|
71
62
|
function tran(path, params = {}, lang = 'zh-cn') {
|
72
63
|
const keys = path.split('.');
|
73
64
|
let result = i18nObj[lang];
|
@@ -80,33 +71,9 @@ function tran(path, params = {}, lang = 'zh-cn') {
|
|
80
71
|
}
|
81
72
|
}
|
82
73
|
if (typeof result === 'string') {
|
83
|
-
return
|
74
|
+
return (0, parser_1.interpolate)(result, params);
|
84
75
|
}
|
85
76
|
return null;
|
86
77
|
}
|
87
78
|
exports.tran = tran;
|
88
|
-
function interpolateString(str, context) {
|
89
|
-
// 正则表达式匹配三元表达式
|
90
|
-
const regex = /\{\{(.*?)\?\s*'(.*?)'\s*:\s*'(.*?)'\s*\}\}/;
|
91
|
-
let match;
|
92
|
-
// 递归解析
|
93
|
-
while ((match = regex.exec(str)) !== null) {
|
94
|
-
const [fullMatch, condition, trueValue, falseValue] = match;
|
95
|
-
// 递归解析 trueValue 和 falseValue 以处理嵌套情况
|
96
|
-
const resolvedTrueValue = interpolateString(trueValue, context);
|
97
|
-
const resolvedFalseValue = interpolateString(falseValue, context);
|
98
|
-
// 计算条件表达式
|
99
|
-
let result = safeEval(condition, context);
|
100
|
-
if (typeof result === 'string') {
|
101
|
-
result = false;
|
102
|
-
}
|
103
|
-
const replacement = result ? resolvedTrueValue : resolvedFalseValue;
|
104
|
-
// 替换匹配到的三元表达式
|
105
|
-
str = str.replace(fullMatch, replacement);
|
106
|
-
}
|
107
|
-
// 替换变量插值
|
108
|
-
const variableRegex = /\{\{(.*?)\}\}/g;
|
109
|
-
str = str.replace(variableRegex, (match, expr) => safeEval(expr, context));
|
110
|
-
return str;
|
111
|
-
}
|
112
79
|
//# sourceMappingURL=index.js.map
|
package/lib/i18n/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,OAAO,GAAG,EAAE,CAAA;AAElB,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;AAE9C,KAAK,UAAU,IAAI;IACjB,mBAAmB;IACnB,MAAM,EAAE,GAAG,wDAAa,cAAc,GAAC,CAAA;IACvC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;AACvB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAI;IACpB,OAAO,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AACjE,CAAC;AAED,SAAS,KAAK,CAAC,MAAM,EAAE,GAAG,OAAO;IAC/B,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,MAAM,CAAA;IAClC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;IAC9B,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;oBAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACtD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAA;AAClC,CAAC;AAED,SAAgB,cAAc,CAAC,IAAY,EAAE,GAAQ;IACnD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC/B,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAA;AACxC,CAAC;AAJD,wCAIC;AAED,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA2C;AAE3C,MAAM,OAAO,GAAG,EAAE,CAAA;AAElB,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;AAE9C,KAAK,UAAU,IAAI;IACjB,mBAAmB;IACnB,MAAM,EAAE,GAAG,wDAAa,cAAc,GAAC,CAAA;IACvC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;AACvB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAI;IACpB,OAAO,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AACjE,CAAC;AAED,SAAS,KAAK,CAAC,MAAM,EAAE,GAAG,OAAO;IAC/B,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,MAAM,CAAA;IAClC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;IAC9B,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;oBAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACtD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAA;AAClC,CAAC;AAED,SAAgB,cAAc,CAAC,IAAY,EAAE,GAAQ;IACnD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC/B,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAA;AACxC,CAAC;AAJD,wCAIC;AAED,SAAgB,IAAI,CAAC,IAAY,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,GAAG,OAAO;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE1B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,IAAA,oBAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAjBD,oBAiBC"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export declare class Parser {
|
2
|
+
private template;
|
3
|
+
private data;
|
4
|
+
private tokens;
|
5
|
+
private current;
|
6
|
+
constructor(template: string, data: any);
|
7
|
+
private tokenize;
|
8
|
+
private match;
|
9
|
+
private consume;
|
10
|
+
private parseExpression;
|
11
|
+
private parseInterpolation;
|
12
|
+
parse(): string;
|
13
|
+
}
|
14
|
+
export declare function interpolate(template: string, data: any): string;
|
@@ -0,0 +1,163 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.interpolate = exports.Parser = void 0;
|
4
|
+
var TokenType;
|
5
|
+
(function (TokenType) {
|
6
|
+
TokenType[TokenType["TEXT"] = 0] = "TEXT";
|
7
|
+
TokenType[TokenType["OPEN_BRACE"] = 1] = "OPEN_BRACE";
|
8
|
+
TokenType[TokenType["CLOSE_BRACE"] = 2] = "CLOSE_BRACE";
|
9
|
+
TokenType[TokenType["IDENTIFIER"] = 3] = "IDENTIFIER";
|
10
|
+
TokenType[TokenType["QUESTION"] = 4] = "QUESTION";
|
11
|
+
TokenType[TokenType["COLON"] = 5] = "COLON";
|
12
|
+
TokenType[TokenType["STRING"] = 6] = "STRING";
|
13
|
+
})(TokenType || (TokenType = {}));
|
14
|
+
// 插值解析Parser {{}},暂时没转义支持
|
15
|
+
// "😯,没有找到用户「{{user}}」的谱面「{{id}} ({{mode ? '{{mode}}' : '' }} {{diff ? '-{{diff}}' : '' }})」的打分数据"
|
16
|
+
class Parser {
|
17
|
+
template;
|
18
|
+
data;
|
19
|
+
tokens = [];
|
20
|
+
current = 0;
|
21
|
+
constructor(template, data) {
|
22
|
+
this.template = template;
|
23
|
+
this.data = data;
|
24
|
+
this.tokenize();
|
25
|
+
}
|
26
|
+
tokenize() {
|
27
|
+
let current = 0;
|
28
|
+
while (current < this.template.length) {
|
29
|
+
let char = this.template[current];
|
30
|
+
if (char === '\\' && current + 1 < this.template.length) {
|
31
|
+
// 处理转义字符
|
32
|
+
const nextChar = this.template[current + 1];
|
33
|
+
if (nextChar === '{' ||
|
34
|
+
nextChar === '}' ||
|
35
|
+
nextChar === '?' ||
|
36
|
+
nextChar === ':' ||
|
37
|
+
nextChar === "'" ||
|
38
|
+
nextChar === '\\') {
|
39
|
+
this.tokens.push({ type: TokenType.TEXT, value: nextChar });
|
40
|
+
current += 2;
|
41
|
+
continue;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
if (char === '{' && this.template[current + 1] === '{') {
|
45
|
+
this.tokens.push({ type: TokenType.OPEN_BRACE, value: '{{' });
|
46
|
+
current += 2;
|
47
|
+
continue;
|
48
|
+
}
|
49
|
+
if (char === '}' && this.template[current + 1] === '}') {
|
50
|
+
this.tokens.push({ type: TokenType.CLOSE_BRACE, value: '}}' });
|
51
|
+
current += 2;
|
52
|
+
continue;
|
53
|
+
}
|
54
|
+
if (char === '?') {
|
55
|
+
this.tokens.push({ type: TokenType.QUESTION, value: '?' });
|
56
|
+
current++;
|
57
|
+
continue;
|
58
|
+
}
|
59
|
+
if (char === ':') {
|
60
|
+
this.tokens.push({ type: TokenType.COLON, value: ':' });
|
61
|
+
current++;
|
62
|
+
continue;
|
63
|
+
}
|
64
|
+
if (char === "'") {
|
65
|
+
let value = '';
|
66
|
+
char = this.template[++current];
|
67
|
+
while (char !== "'" && current < this.template.length) {
|
68
|
+
if (char === '\\' && current + 1 < this.template.length) {
|
69
|
+
char = this.template[++current];
|
70
|
+
}
|
71
|
+
value += char;
|
72
|
+
char = this.template[++current];
|
73
|
+
}
|
74
|
+
if (char === "'")
|
75
|
+
current++;
|
76
|
+
this.tokens.push({ type: TokenType.STRING, value });
|
77
|
+
continue;
|
78
|
+
}
|
79
|
+
if (/[a-zA-Z0-9_]/.test(char)) {
|
80
|
+
let value = '';
|
81
|
+
while (/[a-zA-Z0-9_]/.test(char)) {
|
82
|
+
value += char;
|
83
|
+
char = this.template[++current];
|
84
|
+
}
|
85
|
+
this.tokens.push({ type: TokenType.IDENTIFIER, value });
|
86
|
+
continue;
|
87
|
+
}
|
88
|
+
if (/\s/.test(char)) {
|
89
|
+
current++;
|
90
|
+
continue;
|
91
|
+
}
|
92
|
+
let value = '';
|
93
|
+
while (current < this.template.length &&
|
94
|
+
char !== '{' &&
|
95
|
+
char !== '}' &&
|
96
|
+
char !== '?' &&
|
97
|
+
char !== ':' &&
|
98
|
+
char !== "'" &&
|
99
|
+
!/[a-zA-Z0-9_]/.test(char)) {
|
100
|
+
if (char === '\\' && current + 1 < this.template.length) {
|
101
|
+
value += this.template[++current];
|
102
|
+
}
|
103
|
+
else {
|
104
|
+
value += char;
|
105
|
+
}
|
106
|
+
char = this.template[++current];
|
107
|
+
}
|
108
|
+
if (value) {
|
109
|
+
this.tokens.push({ type: TokenType.TEXT, value });
|
110
|
+
}
|
111
|
+
}
|
112
|
+
}
|
113
|
+
match(...types) {
|
114
|
+
if (this.current >= this.tokens.length)
|
115
|
+
return false;
|
116
|
+
return types.includes(this.tokens[this.current].type);
|
117
|
+
}
|
118
|
+
consume(type) {
|
119
|
+
if (this.match(type)) {
|
120
|
+
return this.tokens[this.current++];
|
121
|
+
}
|
122
|
+
throw new Error(`Expected token type ${type}, but got ${this.tokens[this.current].type}`);
|
123
|
+
}
|
124
|
+
parseExpression() {
|
125
|
+
if (this.match(TokenType.OPEN_BRACE)) {
|
126
|
+
this.consume(TokenType.OPEN_BRACE);
|
127
|
+
const result = this.parseInterpolation();
|
128
|
+
this.consume(TokenType.CLOSE_BRACE);
|
129
|
+
return result;
|
130
|
+
}
|
131
|
+
if (this.match(TokenType.STRING)) {
|
132
|
+
const tmp = this.consume(TokenType.STRING).value;
|
133
|
+
return interpolate(tmp, this.data);
|
134
|
+
}
|
135
|
+
return this.consume(TokenType.TEXT).value;
|
136
|
+
}
|
137
|
+
parseInterpolation() {
|
138
|
+
const identifier = this.consume(TokenType.IDENTIFIER).value;
|
139
|
+
if (this.match(TokenType.QUESTION)) {
|
140
|
+
this.consume(TokenType.QUESTION);
|
141
|
+
const truePart = this.parseExpression();
|
142
|
+
this.consume(TokenType.COLON);
|
143
|
+
const falsePart = this.parseExpression();
|
144
|
+
return this.data[identifier] ? truePart : falsePart;
|
145
|
+
}
|
146
|
+
return this.data[identifier]?.toString() || '';
|
147
|
+
}
|
148
|
+
parse() {
|
149
|
+
console.log(this.current, this.tokens);
|
150
|
+
let result = '';
|
151
|
+
while (this.current < this.tokens.length) {
|
152
|
+
result += this.parseExpression();
|
153
|
+
}
|
154
|
+
return result;
|
155
|
+
}
|
156
|
+
}
|
157
|
+
exports.Parser = Parser;
|
158
|
+
function interpolate(template, data) {
|
159
|
+
const parser = new Parser(template, data);
|
160
|
+
return parser.parse();
|
161
|
+
}
|
162
|
+
exports.interpolate = interpolate;
|
163
|
+
//# sourceMappingURL=parser.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/i18n/parser.ts"],"names":[],"mappings":"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"}
|
package/lib/i18n/zh-cn.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"common":{"hello":"你好,我是 bsbot","ping":"pong","render":{"wait":"开始渲染啦,请耐心等待 {{sec}} s"}},"ws":{"subscribe":{"update":"Hello {{username}},你关注的谱师「{{mapperName}}」更新啦!✨"}},"commands":{"bsbot":{"help":{"description":"查看帮助 (WIP)","usage":"bbhelp 查看使用方法","examples":"示例\nbbhelp\nbsbot.help"},"message":{"network-error":"☹️似乎发生了网络错误,请稍后重试吧"},"cmp":{"description":"compare 指令 (WIP)"},"who":{"description":"用于查询所@用户对应的 BeatLeader/ScoreSaber 面板","usage":"输入 bbwho 并@某人,如果他/她/它绑定了ScoreSaber Id(也就是 steam 的用户 Id),会查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbbwho @someone\nbsbot.who @someone\nbsbot.who -p ss @someone","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"},"need-at":"谁?plz 重新执行指令并@ ta","not-bind":"你要查询的ta,还没有绑定哦"},"rank":{"description":"用于查询指定 scoreSaberID 对应用户的 BeatLeader/ScoreSaber 面板","usage":"输入 bbrank + scoreSaberId(也就是steamId)查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbbrank 2169974796454690\nbsbot.rank 2169974796454690\nbsbot.rank -p ss 2169974796454690","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"}},"me":{"description":"用于查询自己绑定用户对应的 BeatLeader/ScoreSaber 面板","usage":"输入 bbme,如果已经绑定了ScoreSaber Id(也就是 steam 的用户 Id),会查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbsbot.me\nbbme\nbbme -p ss","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"},"not-found":"Ops,似乎还没有绑定到 ScoreSaber 或 BeatLeader","score-not-found":"
|
1
|
+
{"common":{"hello":"你好,我是 bsbot","ping":"pong","render":{"wait":"开始渲染啦,请耐心等待 {{sec}} s"}},"ws":{"subscribe":{"update":"Hello {{username}},你关注的谱师「{{mapperName}}」更新啦!✨"}},"commands":{"bsbot":{"help":{"description":"查看帮助 (WIP)","usage":"bbhelp 查看使用方法","examples":"示例\nbbhelp\nbsbot.help"},"message":{"network-error":"☹️似乎发生了网络错误,请稍后重试吧"},"cmp":{"description":"compare 指令 (WIP)"},"who":{"description":"用于查询所@用户对应的 BeatLeader/ScoreSaber 面板","usage":"输入 bbwho 并@某人,如果他/她/它绑定了ScoreSaber Id(也就是 steam 的用户 Id),会查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbbwho @someone\nbsbot.who @someone\nbsbot.who -p ss @someone","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"},"need-at":"谁?plz 重新执行指令并@ ta","not-bind":"你要查询的ta,还没有绑定哦"},"rank":{"description":"用于查询指定 scoreSaberID 对应用户的 BeatLeader/ScoreSaber 面板","usage":"输入 bbrank + scoreSaberId(也就是steamId)查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbbrank 2169974796454690\nbsbot.rank 2169974796454690\nbsbot.rank -p ss 2169974796454690","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"}},"me":{"description":"用于查询自己绑定用户对应的 BeatLeader/ScoreSaber 面板","usage":"输入 bbme,如果已经绑定了ScoreSaber Id(也就是 steam 的用户 Id),会查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbsbot.me\nbbme\nbbme -p ss","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"},"not-found":"Ops,似乎还没有绑定到 ScoreSaber 或 BeatLeader","score-not-found":"😯,没有找到用户「{{user}}」的谱面「{{id}} ({{mode ? '{{mode}}' : '' }} {{diff ? '-{{diff}}' : '' }})」的打分数据"},"bind":{"description":"绑定自己的 ScoreSaberId(也就是 steam 的用户 Id,仅公开信息,无需验证)","usage":"输入 bbbind,后接 userId,按照提示即可绑定","examples":"示例\nbsbot.bind 76561198339986544\nbbbind 76561198339986544","bs":{"not-found":"☹️什么没有找到,这个 code 真的有效吗?","network-error":"☹️似乎发生了网络错误,请稍后重试吧","unknown-error":"☹️不知道发生了什么,暂时无法绑定,请稍后重试吧","invalid-token":"无效 token,请确认给出的 code 有效。","success":"成功绑定 BeatSaver 用户 {{name}}({{id}})"},"bl":{"not-found":"☹️什么没有找到,这个 code 真的有效吗?","network-error":"☹️似乎发生了网络错误,请稍后重试吧","unknown-error":"☹️不知道发生了什么,暂时无法绑定,请稍后重试吧","invalid-token":"无效 token,请确认给出的 code 有效。","success":"成功绑定 BeatLeader 用户 {{name}}({{id}})"},"network-error":"☹️似乎发生了网络错误,请稍后重试吧","exist":"另外,你已经绑定了「{{id}}」,继续绑定丢失当前绑定哦","cancel":"已取消","timeout":"已超时取消","not-found":"Ops,没有找到 id 为「{{id}}」的 {{platform]} 用户","ack-prompt":"确定要绑定「{{user}}」吗,30 秒内回复「y」或「yes」以确认,超时或回复其他内容取消操作","success":"🎉,成功绑定「{{user}}」啦"},"score":{"description":"查询用户在Beatleader 上的某次打分成绩,并生成渲染图。","usage":"1. bbscore 加上 beatleader 的 scoreId,即可生成渲染图。\n2. bbscore 加上 Beatsaver 的 mapId,即可查询自己绑定的Bealeader账号关于该谱面的最高打分,并生成渲染图\n3. bbscore 加上 Beatsaver 的 mapId 并@某人,即可查询该用户绑定的Bealeader账号关于该谱面的最高打分,并生成渲染图","examples":"示例\nbsbot.score 13887221\nbbscore 33b62\nbbscore 33b62@someone","not-a-score-id":"似乎不是一个 score ID","not-bind":"你还没有绑定哦,使用 bind 指令进行绑定吧","who-not-bind":"你要查询的ta,还没有绑定哦"},"search":{"description":"按关键词进行谱面搜索","usage":"通过关键字进行谱面搜索,会发送将最相关的 3 个谱面。","examples":"示例\nbsbot.search megalovania\nbbsou megalovania\nbbsearch megalovania","success":"为你奉上关于「{{key}}」的{{length}}首谱面 🎉","not-found":"Ops,关于「{{key}}」什么都没找到","too-long-key":"关键词长度不应该超过 15 哦,因为这样容易什么都找不到,较长的部分已经帮你截掉啦,正在搜索中「{{key}}」"},"id":{"description":"按谱面id查找谱面。","usage":"根据谱面ID查找谱面。","examples":"示例\nbsbot.id 36677\nbbid 36677\n!bsr 36677\n36677","error-map-id":"「{{input}}」似乎不是一个 mapId,正确的 mapId 是这样的哦(3877a)","not-found":"Ops! 似乎没有找到 id 为「{{input}}」的谱面"},"latest":{"description":"查找最新的三首谱面。","usage":"获取最新的三首谱面。","examples":"示例\nbsbot.latest\nbsbot.new\nbbnew","info":"为你奉上最新的 3 首谱面 🎉"},"subscribe":{"description":"订阅 BeatSaber 相关的事件,并主动推送。(RC)","usage":"通过 bbsub 订阅 BeatSaber 相关的事件,当特定事件发生时会进行主动推送。","examples":"示例\nbsbot.subscribe\nbbsub","alert":{"no-bind-bs-id":"你还未绑定 beatsaver,快使用 bbbindbs 进行绑定吧","not-success":"订阅失败,可能是因为凭证已经过期","success":"成功订阅BeatSaver通知,当新通知出现时,会主动推送给你。","invalid-token":"似乎token 已经失效了,快使用 bbbindbs 重新进行绑定吧"},"beatleader":{"exist":"当前群聊/频道已订阅 BeatLeader 打分更新事件","success":"成功订阅 BeatLeader 打分更新事件,当参与群员出现满足条件的打分事件时,会主动推送"},"beatsaver":{"exist":"当前群聊/频道已订阅 BeatSaver 谱面更新事件","success":"成功订阅 BeatSaver 谱面更新事件,当参与群员发布新谱面时,会主动推送"},"info":{"none":"当前群聊/频道没有任何 BeatSaber 事件订阅。","header":"当前群聊/频道 BeatSaber 订阅如下:","body-item":"订阅类型「{{type}}」, 共 {{cnt}} 名参与成员","body-item-include-you":"(包括你哦)"},"join":{"description":"加入本群聊订阅的 BeatSaber 相关的事件","usage":"","examples":"示例\nbsbot.subscribe\nbbsub","success":{"beatleader":"成功加入本群Beatleader订阅组,当你打出高分时,会在本群推送","beatsaver":"成功加入本群订阅组,当你发布新谱面时,会在本群推送"},"nosub":{"beatleader":"当前群组/频道未启用 beatleader 打分订阅","beatsaver":"当前群组/频道未启用 beatsaver 谱师订阅"}},"leave":{"description":"离开本群 BeatSaber 相关事件订阅组","usage":"","examples":"示例\nbsbot.subscribe 查看当前会话的订阅信息\nbbsub\nbbsub --type beatsaver 为当前会话订阅 beatsaver 新谱面事件,当特定新谱面出现,会主动推送\nbbsub --type beatleader 为当前会话订阅 beatleader 打分事件,当满足要求的打分事件出现,会主动推送\nbbsub --type alert 订阅个人 BeatSaver 通知,当 beatsaver 新通知出现,会主动推送","not-exist":{"beatleader":"你还未加入当前群组/频道的 beatleader 打分订阅,无需离开","beatsaver":null},"success":{"beatleader":"成功离开本群「beatleader」订阅组,当你打出高分时,不会再在本群推送了","beatsaver":"成功离开本群「beatsaver」订阅组,当你发布新谱面时,不会再在本群推送了"}}},"unsubscribe":{"description":"取消订阅 BeatSaber 相关的事件。(RC)","usage":"取消通过 bbsub 订阅的 BeatSaber 相关的事件,当特定事件发生时不会进行主动推送。","examples":"示例\nbsbot.unsubscribe\nbbunsub","nosub":{"beatleader":"当前群组/频道未启用 beatleader 打分订阅","beatsaver":"当前群组/频道未启用 beatsaver 谱师订阅"},"success":{"beatleader":"成功禁用 beatleader 打分订阅","beatsaver":"成功禁用 beatsaver 谱师订阅"},"cancel-all":"已成功取消所有更新订阅","cancel":"已取消对谱师「{id}」的更新订阅"}}},"_config":{"beatSaverHost":"BeatSaverOrigin,例如:https://api.beatsaver.com","beatSaverWSHost":"BeatSaverWebSocketOrigin,用于实时监听谱面更新,例如wss://ws.beatsaver.com/maps","renderMode":"谱面图是由插件本地生成/远程获取"}}
|
@@ -12,4 +12,7 @@ interface ScoreItemProps {
|
|
12
12
|
self: boolean;
|
13
13
|
}
|
14
14
|
export declare function RankScoreItem(props: ScoreItemProps): import("react/jsx-runtime").JSX.Element;
|
15
|
+
export declare function ScoreItemSkeleton({ isRegionRank }: {
|
16
|
+
isRegionRank: boolean;
|
17
|
+
}): import("react/jsx-runtime").JSX.Element;
|
15
18
|
export {};
|
@@ -26,13 +26,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
27
27
|
};
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
29
|
-
exports.RankScoreItem = void 0;
|
29
|
+
exports.ScoreItemSkeleton = exports.RankScoreItem = void 0;
|
30
30
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
31
31
|
const dayjs_1 = __importDefault(require("dayjs"));
|
32
32
|
const flag_1 = __importStar(require("../../img-render/components/flag"));
|
33
33
|
const utils_1 = require("../../img-render/utils");
|
34
34
|
function RankScoreItem(props) {
|
35
|
-
return ((0, jsx_runtime_1.jsx)("div", { className:
|
35
|
+
return ((0, jsx_runtime_1.jsx)("div", { className: `${props.self ? 'gradient-border' : ''} bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`, children: (0, jsx_runtime_1.jsxs)("div", { className: "skew-x-12 relative", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center translate-x-2 justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex gap-2", children: [(0, jsx_runtime_1.jsxs)("div", { className: 'w-12 h-12 relative', children: [(0, jsx_runtime_1.jsx)("img", { src: props.avatar, className: "shadow-lg w-12 h-12 rounded-full object-cover" }), (0, jsx_runtime_1.jsx)("div", { className: 'w-3 h-3 absolute bottom-0 right-3', children: (0, jsx_runtime_1.jsx)(flag_1.default, { flagNationCode: props.countryCode }) })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { className: 'line-clamp-1 text-ellipsis max-w-[100px]', children: props.name }), (0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [!props.isRegionRank && (0, jsx_runtime_1.jsx)(flag_1.EarchIcon, {}), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", props.globalRank] })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-end -translate-x-2 -skew-x-3", children: [(0, jsx_runtime_1.jsxs)("div", { children: [(props.acc * 100).toFixed(2), " %"] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'space-x-1', children: props.modifiers.split(',').map((it) => ((0, jsx_runtime_1.jsx)("span", { children: it }, it))) }), (0, jsx_runtime_1.jsx)("div", { children: (0, utils_1.numberWithCommas)(props.score) })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between mt-0 px-4 -translate-x-4", children: [(0, jsx_runtime_1.jsx)("div", { className: "flex gap-2", children: (0, jsx_runtime_1.jsx)("div", { className: "flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60", children: (0, jsx_runtime_1.jsx)("div", { children: (0, utils_1.formatDate)((0, dayjs_1.default)(props.date * 1000).toDate(), 'YY 年 MM 月 DD 日') }) }) }), (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("div", { className: "flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300", children: (0, jsx_runtime_1.jsxs)("div", { children: [" ", props.pp.toFixed(2), " PP"] }) }) })] })] }) }));
|
36
36
|
}
|
37
37
|
exports.RankScoreItem = RankScoreItem;
|
38
|
+
function ScoreItemSkeleton({ isRegionRank }) {
|
39
|
+
return ((0, jsx_runtime_1.jsx)("div", { className: `bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`, children: (0, jsx_runtime_1.jsxs)("div", { className: "skew-x-12 relative", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center translate-x-2 justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex gap-2", children: [(0, jsx_runtime_1.jsx)("div", { className: 'w-12 h-12 relative', children: (0, jsx_runtime_1.jsx)("img", { src: `https://avatar.iran.liara.run/public`, className: "shadow-lg w-12 h-12 rounded-full object-cover" }) }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { className: 'line-clamp-1 text-ellipsis max-w-[100px]', children: "\u865A\u4F4D\u4EE5\u5F85" }), (0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [!isRegionRank && (0, jsx_runtime_1.jsx)(flag_1.EarchIcon, {}), (0, jsx_runtime_1.jsx)("span", { children: "# 0 " })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-end -translate-x-2 -skew-x-3", children: [(0, jsx_runtime_1.jsx)("div", { children: "0.00 %" }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'space-x-1', children: " " }), (0, jsx_runtime_1.jsx)("div", { children: "000,000" })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between mt-0 px-4 -translate-x-4", children: [(0, jsx_runtime_1.jsx)("div", { className: "flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60", children: (0, jsx_runtime_1.jsx)("div", { children: "00 \u5E74 00 \u6708 00 \u65E5" }) }), (0, jsx_runtime_1.jsx)("div", { className: "flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300", children: (0, jsx_runtime_1.jsx)("div", { children: " 0.00 PP" }) })] })] }) }));
|
40
|
+
}
|
41
|
+
exports.ScoreItemSkeleton = ScoreItemSkeleton;
|
38
42
|
//# sourceMappingURL=rankScoreItem.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rankScoreItem.js","sourceRoot":"","sources":["../../../src/img-render/components/rankScoreItem.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,qEAA+D;AAC/D,8CAAiE;AAejE,SAAgB,aAAa,CAAC,KAAqB;IACjD,OAAO,CACL,gCACE,SAAS,EAAE
|
1
|
+
{"version":3,"file":"rankScoreItem.js","sourceRoot":"","sources":["../../../src/img-render/components/rankScoreItem.tsx"],"names":[],"mappings":"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"}
|
@@ -1,22 +1,24 @@
|
|
1
|
+
/// <reference types="node" />
|
1
2
|
import { APIService } from '../api';
|
2
3
|
import { RenderOption } from './interfaces';
|
3
4
|
import { Config } from '../config';
|
4
5
|
import { BSMap } from '../api/interfaces/beatsaver';
|
5
6
|
import { ImgRender, Platform } from '../interface';
|
6
|
-
type HtmlToImgBufferConverter = (html: string, onRenderStart?: () => void, onRenderError?: (e: any) => void) => Promise<
|
7
|
+
type HtmlToImgBufferConverter = (html: string, onRenderStart?: () => void, onRenderError?: (e: any) => void) => Promise<Buffer>;
|
8
|
+
type UrlToImgBufferConverter = HtmlToImgBufferConverter;
|
7
9
|
export declare abstract class RenderService implements ImgRender {
|
8
10
|
config: Config;
|
9
11
|
api: APIService;
|
10
12
|
baseConfig: Partial<RenderOption>;
|
11
13
|
htmlToImgBufferConverter: HtmlToImgBufferConverter;
|
12
|
-
urlToImgBufferConverter:
|
13
|
-
renderRank(accountId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
14
|
-
_renderRank: (accountId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<
|
15
|
-
renderScore(scoreId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
16
|
-
_renderScore: (scoreId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<
|
17
|
-
renderMapById(mapId: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
18
|
-
renderMap(map: BSMap, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
19
|
-
renderUrl(url: string): Promise<
|
20
|
-
_renderMap: (bsMap: BSMap, renderOpts: RenderOption) => Promise<
|
14
|
+
urlToImgBufferConverter: UrlToImgBufferConverter;
|
15
|
+
renderRank(accountId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
16
|
+
_renderRank: (accountId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<Buffer>;
|
17
|
+
renderScore(scoreId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
18
|
+
_renderScore: (scoreId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<Buffer>;
|
19
|
+
renderMapById(mapId: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
20
|
+
renderMap(map: BSMap, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
21
|
+
renderUrl(url: string): Promise<Buffer>;
|
22
|
+
_renderMap: (bsMap: BSMap, renderOpts: RenderOption) => Promise<Buffer>;
|
21
23
|
}
|
22
24
|
export {};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/img-render/index.ts"],"names":[],"mappings":";;;;;;AACA,qCAMiB;AACjB,4DAAyC;AAGzC,gDAA6C;AAE7C,2CAAiD;AAEjD,MAAM,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAA;AAUrB,MAAsB,aAAa;IACjC,MAAM,CAAQ;IACd,GAAG,CAAY;IACf,UAAU,CAAuB;IACjC,wBAAwB,CAA0B;IAClD,uBAAuB,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/img-render/index.ts"],"names":[],"mappings":"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"}
|
@@ -13,9 +13,21 @@ const utils_1 = require("../../img-render/utils");
|
|
13
13
|
const progressbar_1 = __importDefault(require("../../img-render/components/progressbar"));
|
14
14
|
function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, }) {
|
15
15
|
const bg = 'https://www.loliapi.com/acg/pc/';
|
16
|
+
let aroundScore = aroundScores
|
17
|
+
.slice(0, 7)
|
18
|
+
.map((it) => ({ ...it, template: false }));
|
19
|
+
let regionTopScore = regionTopScores
|
20
|
+
.slice(0, 7)
|
21
|
+
.map((it) => ({ ...it, template: false }));
|
22
|
+
if (aroundScore.length < 7) {
|
23
|
+
aroundScore = aroundScore.concat(new Array(7 - aroundScore.length).fill({ template: true }));
|
24
|
+
}
|
25
|
+
if (regionTopScore.length < 7) {
|
26
|
+
regionTopScore = regionTopScore.concat(new Array(7 - regionTopScore.length).fill({ template: true }));
|
27
|
+
}
|
16
28
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none', id: "render-result", children: [(0, jsx_runtime_1.jsx)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white flex flex-col justify-between z-10', children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between items-start gap-2 grow', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-start justify-between text-xl font-bold grow h-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 items-center justify-between text-2xl font-bold", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-16 w-16 rounded-full', src: score.player.avatar, fallback: score.player.name.slice(0, 1) }), (0, jsx_runtime_1.jsx)("div", { children: score.player.name })] }), (0, jsx_runtime_1.jsx)("div", { className: "text-xl text-ellipsis line-clamp-2", children: score.song.name }), (0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 h-52", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-52 w-52 rounded-md', src: score.song.cover, fallback: score.song.name.slice(0, 1) }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs font-bold flex flex-col items-start justify-between grow w-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-2 items-center text-sm", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-4 w-4 rounded-full', src: bsMap.uploader.avatar, fallback: score.song.mapper.slice(0, 1) }), (0, jsx_runtime_1.jsx)("div", { className: "flex items-center justify-between", children: (0, jsx_runtime_1.jsx)("div", { className: "text-ellipsis line-clamp-1", children: score.song.mapper }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.HeartPulse, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.metadata.bpm.toFixed(0) })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Key, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsx)("span", { children: score.song.id.toLowerCase().replaceAll('x', '') })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Clock, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.formatDuration)(bsMap.metadata.duration) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center text-ellipsis col-span-2 line-clamp-1", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Calendar, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.formatTime)(bsMap.lastPublishedAt) })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center space-x-2 justify-between font-normal", children: [(0, jsx_runtime_1.jsx)(progressbar_1.default, { value: bsMap.stats.score * 100 }), (0, jsx_runtime_1.jsxs)("span", { children: [(bsMap.stats.score * 100).toFixed(2), " %"] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ThumbsUp, { className: "h-3 w-3 mr-0.5" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.upvotes })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ThumbsDown, { className: "h-3 w-3 mr-0.5" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.downvotes })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'text-lg min-w-60 flex flex-col leading-6', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex justify-between items-center", children: [(0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.pp.toFixed(2), " PP"] }), (0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.rank] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Accuracy" }), (0, jsx_runtime_1.jsxs)("span", { children: [(score.accuracy * 100).toFixed(2), " %"] })] }), score.fullCombo && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Full Combo" }), (0, jsx_runtime_1.jsx)(lucide_react_1.Check, {})] })), score.maxCombo && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Max Combo" }), (0, jsx_runtime_1.jsx)("span", { children: score.maxCombo })] })), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Missed Notes" }), (0, jsx_runtime_1.jsx)("span", { children: score.missedNotes })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Total Mistakes" }), (0, jsx_runtime_1.jsx)("span", { children: score.missedNotes })] }), score.modifiers && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Modifiers" }), (0, jsx_runtime_1.jsx)("span", { children: score.modifiers })] }))] })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 ", children: difficulties
|
17
29
|
.filter((it) => it.mode === 1)
|
18
|
-
.map((diff) => ((0, jsx_runtime_1.jsx)(RankDifficulty_1.RankDifficulty, { difficulty: diff.difficultyName, stars: diff.stars, current: score.difficulty.id === diff.id }, diff.difficultyName))) }), (0, jsx_runtime_1.jsxs)("div", { className: "align-end mt-2 mb-2", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-xl font-bold", children: "AccGraph" }), (0, jsx_runtime_1.jsx)(scoregraph_1.default, { scoreId: score.id, scoreInfo: score, statistic: statistic, bsor: bsor, height: 240, width: 480 })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between gap-2 items-
|
30
|
+
.map((diff) => ((0, jsx_runtime_1.jsx)(RankDifficulty_1.RankDifficulty, { difficulty: diff.difficultyName, stars: diff.stars, current: score.difficulty.id === diff.id }, diff.difficultyName))) }), (0, jsx_runtime_1.jsxs)("div", { className: "align-end mt-2 mb-2", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-xl font-bold", children: "AccGraph" }), (0, jsx_runtime_1.jsx)(scoregraph_1.default, { scoreId: score.id, scoreInfo: score, statistic: statistic, bsor: bsor, height: 240, width: 480 })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between gap-2 items-start mt-auto', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col items-start gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'text-white font-bold text-3xl mr-auto', children: "Global Rank" }), aroundScore.map((cur, idx) => !cur.template ? ((0, jsx_runtime_1.jsx)(rankScoreItem_1.RankScoreItem, { name: cur.player.name, date: cur.timepost, countryCode: cur.player.country ?? 'CN', avatar: cur.player.avatar, globalRank: cur.rank, score: cur.modifiedScore, modifiers: cur.modifiers, isRegionRank: false, acc: cur.accuracy, pp: cur.pp, self: cur.player.id === score.playerId }, cur.id)) : ((0, jsx_runtime_1.jsx)(rankScoreItem_1.ScoreItemSkeleton, { isRegionRank: false }, idx)))] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col items-start gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'text-white font-bold text-3xl mr-auto', children: "Region Top Rank" }), regionTopScore.map((cur, idx) => !cur.template ? ((0, jsx_runtime_1.jsx)(rankScoreItem_1.RankScoreItem, { name: cur.player.name, date: cur.timepost, countryCode: cur.player.country ?? 'CN', avatar: cur.player.avatar, globalRank: cur.rank, score: cur.modifiedScore, modifiers: cur.modifiers, isRegionRank: true, acc: cur.accuracy, pp: cur.pp, self: cur.player.id === score.playerId }, cur.id)) : ((0, jsx_runtime_1.jsx)(rankScoreItem_1.ScoreItemSkeleton, { isRegionRank: true }, idx)))] })] })] }) }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover w-full', loading: 'eager' })] }) }));
|
19
31
|
}
|
20
32
|
exports.default = BLRankScore;
|
21
33
|
//# sourceMappingURL=bs-score-with-rank.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"bs-score-with-rank.js","sourceRoot":"","sources":["../../../src/img-render/result/bs-score-with-rank.tsx"],"names":[],"mappings":";;;;;;AAAA,+CAQqB;AACrB,0EAAiD;AAIjD,
|
1
|
+
{"version":3,"file":"bs-score-with-rank.js","sourceRoot":"","sources":["../../../src/img-render/result/bs-score-with-rank.tsx"],"names":[],"mappings":"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"}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="node" />
|
1
2
|
import { Config } from '../config';
|
2
3
|
import { APIService } from '../api';
|
3
4
|
import { RenderOption } from '../img-render/interfaces';
|
@@ -12,10 +13,10 @@ export interface ImgRender {
|
|
12
13
|
_renderRank: (accountId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<any>;
|
13
14
|
_renderScore: (scoreId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<any>;
|
14
15
|
_renderMap: (bsMap: BSMap, renderOpts: RenderOption) => Promise<any>;
|
15
|
-
renderRank(accountId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
16
|
-
renderScore(scoreId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
17
|
-
renderMapById(mapId: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
18
|
-
renderMap(map: BSMap, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
19
|
-
renderUrl(url: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
16
|
+
renderRank(accountId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
17
|
+
renderScore(scoreId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
18
|
+
renderMapById(mapId: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
19
|
+
renderMap(map: BSMap, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
20
|
+
renderUrl(url: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
20
21
|
}
|
21
22
|
export {};
|
package/lib/utils/index.d.ts
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
export * from './cache';
|
2
|
+
export * from './s3';
|
3
|
+
export * from './puppeteer';
|
2
4
|
export declare const fetchWithCache: <T>(...args: any[]) => Promise<T>;
|
3
5
|
export declare const handleWSEventWithCache: (fnThat: any, fn: any, ttl: any, eventParser: any, eventFilter: any, eventIdSelector: any) => (event: any) => Promise<void>;
|
4
6
|
export declare const sleep: (millsec?: number) => Promise<void>;
|
package/lib/utils/index.js
CHANGED
@@ -18,6 +18,8 @@ exports.convertDiff = exports.sleep = exports.handleWSEventWithCache = exports.f
|
|
18
18
|
const cache_1 = require("../utils/cache");
|
19
19
|
const lru_cache_1 = require("lru-cache");
|
20
20
|
__exportStar(require("./cache"), exports);
|
21
|
+
__exportStar(require("./s3"), exports);
|
22
|
+
__exportStar(require("./puppeteer"), exports);
|
21
23
|
const fetchWithCache = async (...args) => {
|
22
24
|
const res = cache_1.cache.get(args);
|
23
25
|
if (res) {
|
@@ -44,7 +46,7 @@ const handleWSEventWithCache = (fnThat, fn, ttl, eventParser, eventFilter, event
|
|
44
46
|
return async function (event) {
|
45
47
|
const data = eventParser(event);
|
46
48
|
const key = eventIdSelector(data);
|
47
|
-
if (eventFilter(data) || WSCache.get(key)) {
|
49
|
+
if (!eventFilter(data) || WSCache.get(key)) {
|
48
50
|
// console.log(`${key} hit cache, skip it, remainingTTL: `, WSCache.getRemainingTTL(key))
|
49
51
|
return;
|
50
52
|
}
|
package/lib/utils/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAAqC;AACrC,yCAAoC;AAEpC,0CAAuB;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAAqC;AACrC,yCAAoC;AAEpC,0CAAuB;AACvB,uCAAoB;AAEpB,8CAA2B;AAEpB,MAAM,cAAc,GAAG,KAAK,EAAK,GAAG,IAAI,EAAc,EAAE;IAC7D,MAAM,GAAG,GAAG,aAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC3B,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,GAAQ,CAAA;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAO,CAAC,CAAA;IACtE,aAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACvB,OAAO,MAAW,CAAA;AACpB,CAAC,CAAA;AARY,QAAA,cAAc,kBAQ1B;AAED,6CAA6C;AAEtC,MAAM,sBAAsB,GAAG,CACpC,MAAM,EACN,EAAE,EACF,GAAG,EACH,WAAW,EACX,WAAW,EACX,eAAe,EACf,EAAE;IACF,MAAM,OAAO,GAAG,IAAI,oBAAQ,CAAC;QAC3B,GAAG,EAAE,GAAG;QACR,IAAI,EAAE,EAAE;QACR,eAAe,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAClC,6CAA6C;QAC7C,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE,IAAI;QACjB,GAAG,EAAE,GAAG;KACT,CAAC,CAAA;IAEF,OAAO,KAAK,WAAW,KAAU;QAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3C,yFAAyF;YACzF,OAAM;QACR,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACtB,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAChC,CAAC,CAAA;AACH,CAAC,CAAA;AA9BY,QAAA,sBAAsB,0BA8BlC;AAEM,MAAM,KAAK,GAAG,KAAK,EAAE,UAAkB,IAAI,EAAE,EAAE;IACpD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAJY,QAAA,KAAK,SAIjB;AAED,MAAM,OAAO,GAAG;IACd,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,MAAM;IACT,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,YAAY;IAChB,KAAK,EAAE,YAAY;CACpB,CAAA;AAEM,MAAM,WAAW,GAAG,CAAC,IAAmB,EAAE,EAAE;IACjD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AACpC,CAAC,CAAA;AALY,QAAA,WAAW,eAKvB"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
/// <reference types="node" />
|
2
|
+
import { Browser, ScreenshotClip, ScreenshotOptions } from 'puppeteer-core';
|
3
|
+
import { Config } from '../config';
|
4
|
+
export interface PuppeteerProvider {
|
5
|
+
browser: Browser;
|
6
|
+
ok: boolean;
|
7
|
+
}
|
8
|
+
export declare class RemotePuppeteerProvider implements PuppeteerProvider {
|
9
|
+
browser: Browser;
|
10
|
+
constructor(config: Config);
|
11
|
+
get ok(): boolean;
|
12
|
+
}
|
13
|
+
export declare class PuppeteerRender {
|
14
|
+
browserHolders: PuppeteerProvider[];
|
15
|
+
get browser(): Browser;
|
16
|
+
get ok(): false | PuppeteerProvider;
|
17
|
+
constructor(providers: PuppeteerProvider[]);
|
18
|
+
renderHTML(html: string, selector: string, onStart?: () => void, screenShotOption?: (clip: ScreenshotClip) => ScreenshotOptions): Promise<Buffer>;
|
19
|
+
screenshotURL(url: string, selector: string, onStart?: () => void, screenShotOption?: (clip: ScreenshotClip) => ScreenshotOptions): Promise<Buffer>;
|
20
|
+
}
|
@@ -0,0 +1,87 @@
|
|
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
|
+
exports.PuppeteerRender = exports.RemotePuppeteerProvider = void 0;
|
7
|
+
const puppeteer_core_1 = __importDefault(require("puppeteer-core"));
|
8
|
+
const index_1 = require("./index");
|
9
|
+
class RemotePuppeteerProvider {
|
10
|
+
browser;
|
11
|
+
constructor(config) {
|
12
|
+
puppeteer_core_1.default
|
13
|
+
.connect({ browserWSEndpoint: config.broswerlessWSEndpoint })
|
14
|
+
.then((res) => {
|
15
|
+
console.log('connect to browser successful');
|
16
|
+
this.browser = res;
|
17
|
+
})
|
18
|
+
.catch((e) => {
|
19
|
+
console.error('connection error', e);
|
20
|
+
});
|
21
|
+
}
|
22
|
+
get ok() {
|
23
|
+
return this.browser != null || this.browser != undefined;
|
24
|
+
}
|
25
|
+
}
|
26
|
+
exports.RemotePuppeteerProvider = RemotePuppeteerProvider;
|
27
|
+
class PuppeteerRender {
|
28
|
+
browserHolders;
|
29
|
+
get browser() {
|
30
|
+
const provider = this.browserHolders.find((it) => it.ok);
|
31
|
+
if (provider) {
|
32
|
+
return provider.browser;
|
33
|
+
}
|
34
|
+
throw Error('NoSuitablePuppeteerProviderFound');
|
35
|
+
}
|
36
|
+
get ok() {
|
37
|
+
return this.browserHolders.find((it) => it.ok) ?? false;
|
38
|
+
}
|
39
|
+
constructor(providers) {
|
40
|
+
// unsafe singleton, but enough for now
|
41
|
+
this.browserHolders = providers;
|
42
|
+
}
|
43
|
+
async renderHTML(html, selector, onStart, screenShotOption) {
|
44
|
+
onStart?.();
|
45
|
+
const page = await this.browser.newPage();
|
46
|
+
await page.setContent(html);
|
47
|
+
await page.setViewport({
|
48
|
+
width: 1920,
|
49
|
+
height: 1080,
|
50
|
+
deviceScaleFactor: 2,
|
51
|
+
});
|
52
|
+
const elm = await page.waitForSelector(selector, { timeout: 5000 });
|
53
|
+
const clip = await elm.boundingBox();
|
54
|
+
const u8Arr = await elm.screenshot(screenShotOption
|
55
|
+
? screenShotOption(clip)
|
56
|
+
: {
|
57
|
+
clip: clip,
|
58
|
+
type: 'png',
|
59
|
+
});
|
60
|
+
await page.close();
|
61
|
+
return Buffer.from(u8Arr);
|
62
|
+
}
|
63
|
+
async screenshotURL(url, selector, onStart, screenShotOption) {
|
64
|
+
onStart?.();
|
65
|
+
const page = await this.browser.newPage();
|
66
|
+
await page.setViewport({
|
67
|
+
width: 1920,
|
68
|
+
height: 1080,
|
69
|
+
deviceScaleFactor: 2,
|
70
|
+
});
|
71
|
+
await page.goto(url, { timeout: 0, waitUntil: 'domcontentloaded' });
|
72
|
+
const elm = await page.waitForSelector(selector, { timeout: 20000 });
|
73
|
+
// wait for potential animation
|
74
|
+
await (0, index_1.sleep)(1000);
|
75
|
+
const clip = await elm.boundingBox();
|
76
|
+
const buffer = await elm.screenshot(screenShotOption
|
77
|
+
? screenShotOption(clip)
|
78
|
+
: {
|
79
|
+
clip: clip,
|
80
|
+
type: 'png',
|
81
|
+
});
|
82
|
+
await page.close();
|
83
|
+
return Buffer.from(buffer);
|
84
|
+
}
|
85
|
+
}
|
86
|
+
exports.PuppeteerRender = PuppeteerRender;
|
87
|
+
//# sourceMappingURL=puppeteer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../../src/utils/puppeteer.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
/// <reference types="node" />
|
2
|
+
import { Config } from '../config';
|
3
|
+
export declare class TmpFileStorage {
|
4
|
+
private s3Client;
|
5
|
+
private readonly bucket;
|
6
|
+
private readonly keyPrefix;
|
7
|
+
private readonly baseURL;
|
8
|
+
constructor(config: Config);
|
9
|
+
uploadImg(buffer: Buffer, mimeType?: string): Promise<string>;
|
10
|
+
}
|
package/lib/utils/s3.js
ADDED
@@ -0,0 +1,45 @@
|
|
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
|
+
exports.TmpFileStorage = void 0;
|
7
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
8
|
+
const crypto_1 = __importDefault(require("crypto"));
|
9
|
+
class TmpFileStorage {
|
10
|
+
s3Client;
|
11
|
+
bucket;
|
12
|
+
keyPrefix = '';
|
13
|
+
baseURL = '';
|
14
|
+
// env sdk, env
|
15
|
+
constructor(config) {
|
16
|
+
const s3 = new client_s3_1.S3Client({
|
17
|
+
region: config.uploadImageToS3.region ?? 'auto',
|
18
|
+
endpoint: config.uploadImageToS3.endpoint,
|
19
|
+
credentials: {
|
20
|
+
accessKeyId: config.uploadImageToS3.s3AccessKey,
|
21
|
+
secretAccessKey: config.uploadImageToS3.s3SecretKey,
|
22
|
+
},
|
23
|
+
});
|
24
|
+
this.bucket = config.uploadImageToS3.bucketName;
|
25
|
+
this.keyPrefix = config.uploadImageToS3.keyPrefix;
|
26
|
+
this.baseURL = config.uploadImageToS3.baseURL;
|
27
|
+
this.s3Client = s3;
|
28
|
+
}
|
29
|
+
async uploadImg(buffer, mimeType) {
|
30
|
+
// md5 digest
|
31
|
+
const md5 = crypto_1.default.createHash('md5').update(buffer).digest('hex');
|
32
|
+
const key = this.keyPrefix ? `${this.keyPrefix}-${md5}` : md5;
|
33
|
+
const params = {
|
34
|
+
Bucket: this.bucket,
|
35
|
+
Key: key,
|
36
|
+
Body: buffer,
|
37
|
+
ContentType: mimeType ?? 'image/png',
|
38
|
+
};
|
39
|
+
const command = new client_s3_1.PutObjectCommand(params);
|
40
|
+
const data = await this.s3Client.send(command);
|
41
|
+
return `${this.baseURL}${key}`;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
exports.TmpFileStorage = TmpFileStorage;
|
45
|
+
//# sourceMappingURL=s3.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"s3.js","sourceRoot":"","sources":["../../src/utils/s3.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA+D;AAC/D,oDAA2B;AAG3B,MAAa,cAAc;IACjB,QAAQ,CAAU;IACT,MAAM,CAAQ;IACd,SAAS,GAAW,EAAE,CAAA;IACtB,OAAO,GAAW,EAAE,CAAA;IACrC,eAAe;IACf,YAAY,MAAc;QACxB,MAAM,EAAE,GAAG,IAAI,oBAAQ,CAAC;YACtB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC,MAAM,IAAI,MAAM;YAC/C,QAAQ,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ;YACzC,WAAW,EAAE;gBACX,WAAW,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW;gBAC/C,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW;aACpD;SACF,CAAC,CAAA;QACF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC,UAAU,CAAA;QAC/C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC,SAAS,CAAA;QACjD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,CAAA;QAC7C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc,EAAE,QAAiB;QAC/C,aAAa;QACb,MAAM,GAAG,GAAG,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACjE,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;QAC7D,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,QAAQ,IAAI,WAAW;SACrC,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,4BAAgB,CAAC,MAAM,CAAC,CAAA;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9C,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,CAAA;IAChC,CAAC;CACF;AAnCD,wCAmCC"}
|
package/lib/ws/beatsaver.js
CHANGED
@@ -48,7 +48,7 @@ class BeatSaverWSHandler {
|
|
48
48
|
}
|
49
49
|
await session.send(`本群谱师 「<at id="${item.account.uid}"/> (${bsmap.uploader.name})」刚刚发布了新谱面,「${bsmap.name}」`);
|
50
50
|
// text + mention element
|
51
|
-
await session.
|
51
|
+
await session.sendImgBuffer(await image);
|
52
52
|
await session.sendAudioByUrl(bsmap.versions[0].previewURL);
|
53
53
|
}
|
54
54
|
}
|
package/lib/ws/beatsaver.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"beatsaver.js","sourceRoot":"","sources":["../../src/ws/beatsaver.ts"],"names":[],"mappings":";;;AAOA,mCAAuD;AAEvD,MAAa,kBAAkB;IACZ,MAAM,CAAQ;IACvB,MAAM,CAAe;IACrB,UAAU,CAA2B;IAC7C,KAAK,GAAW,6BAA6B,CAAA;IACrC,EAAE,CAAO;IACjB,MAAM,CAAQ;IACd,YACE,EAAS,EACT,MAAqB,EACrB,MAAc,EACd,MAAc,EACd,UAAqC;QAErC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;IACxC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;IACxC,CAAC;IAED,WAAW,CAAC,KAAK;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAqB,CAAA;IACzD,CAAC;IAED,WAAW,GAAG,CAAC,IAAsB,EAAE,EAAE;QACvC,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,YAAY;YAC1B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,WAAW,CAAC;YACvD,IAAI,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM,CAC/B,CAAA;IACH,CAAC,CAAA;IACD,eAAe,GAAG,CAAC,IAAsB,EAAE,EAAE,CAC3C,SAAS,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;IAE7E,KAAK,CAAC,WAAW,CAAC,IAAsB;QACtC,2EAA2E;QAE3E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAY,CAAA;QAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAA;QAChC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,kCAAkC,CACpE,MAAM,EACN,WAAW,CACZ,CAAA;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAClC,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,SAAS,CAAC,IAAI,IAAI,eAAe,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,IAAI,IAAI,CACtE,CAAA;QACD,eAAe;QACf,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC1C,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAC1E,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,SAAQ;YACV,CAAC;YACD,MAAM,OAAO,CAAC,IAAI,CAChB,iBAAiB,IAAI,CAAC,OAAO,CAAC,GAAG,QAAQ,KAAK,CAAC,QAAQ,CAAC,IAAI,eAAe,KAAK,CAAC,IAAI,GAAG,CACzF,CAAA;YACD,yBAAyB;YACzB,MAAM,OAAO,CAAC,
|
1
|
+
{"version":3,"file":"beatsaver.js","sourceRoot":"","sources":["../../src/ws/beatsaver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "beatsaber-bot-core",
|
3
3
|
"description": "一个用于新版 Steam 家庭的库存监控 Bot 插件",
|
4
|
-
"version": "0.2.0-dev.
|
4
|
+
"version": "0.2.0-dev.14",
|
5
5
|
"types": "lib/index.d.ts",
|
6
6
|
"files": [
|
7
7
|
"lib"
|
@@ -52,12 +52,14 @@
|
|
52
52
|
"access": "public"
|
53
53
|
},
|
54
54
|
"dependencies": {
|
55
|
+
"@aws-sdk/client-s3": "^3.658.1",
|
55
56
|
"@loskir/styled-qr-code-node": "^1.5.1",
|
56
57
|
"chart.js": "^4.4.3",
|
57
58
|
"country-flag-icons": "^1.5.11",
|
58
59
|
"dayjs": "^1.11.3",
|
59
60
|
"lru-cache": "^11.0.1",
|
60
61
|
"lucide-react": "^0.379.0",
|
62
|
+
"puppeteer-core": "^23.4.1",
|
61
63
|
"react": "^18.3.1",
|
62
64
|
"react-dom": "^18.3.1"
|
63
65
|
},
|