managarten/packages/bot-services/package.json
Till-JS c2c80efc50 feat(matrix-bots): add i18n system and direct message fallback
- Add I18nService with per-user language preferences (de/en)
- Add !language/!sprache command to all 4 bots (todo, calendar, contacts, clock)
- Add fallback behavior: messages without commands create tasks/events/contacts/timers
- Improve clock bot duration parsing to accept bare numbers as minutes (e.g. "25" = 25min)
- Add support for more duration formats: "25 minuten", "1 stunde", etc.

Language preferences stored in SessionService, default configurable via BOT_DEFAULT_LANGUAGE env var.
2026-02-02 16:07:27 +01:00

88 lines
2.1 KiB
JSON

{
"name": "@manacore/bot-services",
"version": "0.1.0",
"private": true,
"description": "Shared business logic services for Matrix bots and Gateway",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
"exports": {
".": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
},
"./todo": {
"types": "./dist/todo/index.d.ts",
"default": "./dist/todo/index.js"
},
"./calendar": {
"types": "./dist/calendar/index.d.ts",
"default": "./dist/calendar/index.js"
},
"./clock": {
"types": "./dist/clock/index.d.ts",
"default": "./dist/clock/index.js"
},
"./ai": {
"types": "./dist/ai/index.d.ts",
"default": "./dist/ai/index.js"
},
"./session": {
"types": "./dist/session/index.d.ts",
"default": "./dist/session/index.js"
},
"./transcription": {
"types": "./dist/transcription/index.d.ts",
"default": "./dist/transcription/index.js"
},
"./credit": {
"types": "./dist/credit/index.d.ts",
"default": "./dist/credit/index.js"
},
"./i18n": {
"types": "./dist/i18n/index.d.ts",
"default": "./dist/i18n/index.js"
},
"./nutrition": {
"types": "./dist/nutrition/index.d.ts",
"default": "./dist/nutrition/index.js"
},
"./quotes": {
"types": "./dist/quotes/index.d.ts",
"default": "./dist/quotes/index.js"
},
"./stats": {
"types": "./dist/stats/index.d.ts",
"default": "./dist/stats/index.js"
},
"./docs": {
"types": "./dist/docs/index.d.ts",
"default": "./dist/docs/index.js"
},
"./shared": {
"types": "./dist/shared/index.d.ts",
"default": "./dist/shared/index.js"
}
},
"scripts": {
"build": "tsc",
"type-check": "tsc --noEmit",
"clean": "rm -rf dist",
"lint": "eslint .",
"prepublishOnly": "pnpm build"
},
"dependencies": {
"@nestjs/common": "^11.0.20",
"@nestjs/config": "^4.0.2",
"date-fns": "^4.1.0",
"ioredis": "^5.4.2"
},
"peerDependencies": {
"@nestjs/common": "^10.0.0 || ^11.0.0",
"@nestjs/config": "^3.0.0 || ^4.0.0"
},
"devDependencies": {
"@types/ioredis": "^5.0.0",
"@types/node": "^24.10.1",
"typescript": "^5.9.3"
}
}