- TextAlign: column alignment for embeds using real gg sans font metrics - EmbedHelpers: per-player grid/column layouts immune to 1024-char field limit - Layout: domain-aware formatting wrapper (wrank, bringer, cockroach, tgCount) - PersistentMessage: multi-slot support for independently-updatable embeds - Leaderboard: weekly rankings + highlights embed (most kills/deaths, next Bringer) - Result: per-TG breakdown with wRankAtSubmission snapshot for historical accuracy - /tg call, /tg poll confirm-no, /tg-admin score-inject, result/leaderboard post commands - Fix: CharacterRegistry wasn't hydrating ownerKey, breaking K/D bot-wide - Fix: Leaderboard.buildEntries used current week instead of passed-in week param - /tg-admin test-align: permanent calibration tool for embed text alignment Includes data/emojis/anima-mastery.json for new combat stat icons.
26 lines
No EOL
821 B
JSON
26 lines
No EOL
821 B
JSON
{
|
|
"name": "tg-bot",
|
|
"version": "2.0.0",
|
|
"description": "Cabal Online TG planning and tracking bot",
|
|
"main": "src/index.ts",
|
|
"scripts": {
|
|
"start": "ts-node -r tsconfig-paths/register src/index.ts",
|
|
"dev": "nodemon",
|
|
"register": "ts-node -r tsconfig-paths/register src/index.ts --register",
|
|
"aliases": "ts-node scripts/generate-aliases.ts",
|
|
"upload-emojis": "ts-node -r tsconfig-paths/register scripts/upload-emojis.ts",
|
|
"split-emojis": "ts-node -r tsconfig-paths/register scripts/split-emojis.ts"
|
|
},
|
|
"dependencies": {
|
|
"discord.js": "^14.15.3",
|
|
"node-cron": "^3.0.3"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^20.19.41",
|
|
"@types/node-cron": "^3.0.0",
|
|
"nodemon": "^3.1.0",
|
|
"ts-node": "^10.9.2",
|
|
"tsconfig-paths": "^4.2.0",
|
|
"typescript": "^5.4.0"
|
|
}
|
|
} |