Files
手瓜一十雪 2c565fbd8d Switch from @snowluma/sqlite to node:sqlite (sync)
Remove the in-tree @snowluma/sqlite wrapper and vendored better-sqlite3 prebuilts; migrate consumers to node:sqlite's synchronous API. Replaced imports and types (Database/Statement -> DatabaseSync/StatementSync), updated PRAGMA calls to use exec, and adjusted code in onebot (media/message/reaction stores) and protocol (identity service). Vite config no longer bundles sqlite native binaries and references to the sqlite workspace were removed. Also delete the packages/sqlite package and its native prebuild artifacts, and add a couple of unrelated AST improvements in proton: use a module-level shared wrapper cache and add an inheritance cache to avoid repeated scans. Minor import reordering/cleanup applied where needed.
2026-05-26 21:59:26 +08:00

380 lines
16 KiB
JSON

{
"name": "@snowluma/protocol",
"version": "1.9.2",
"private": true,
"type": "module",
"description": "SnowLuma protocol — the protocol-layer between QQ wire bytes and typed events. Owns: identity service (uid↔uin cache with SQLite persistence), event bus, packet pipeline (incoming SSO packet → QQEventVariant), msg-push decoders, element-builder (MessageElement → wire elems[]), highway upload protocol (file/image/video/ptt), OIDB envelope helper, and the event/notice/request type vocabulary. Consumers (@snowluma/core, @snowluma/onebot) talk to this package through `BridgeContext` for runtime calls and the standalone classes (IdentityService, BridgeEventBus, IncomingPacketPipeline) for composition. Per-file subpath exports mirror the legacy `core/src/bridge/*` layout 1:1 so the previous `import { …} from '../bridge/<x>'` collapses to `import { … } from '@snowluma/protocol/<x>'`.",
"main": "./src/index.ts",
"types": "./src/index.ts",
"exports": {
".": {
"types": "./src/index.ts",
"default": "./src/index.ts"
},
"./events": {
"types": "./src/events.ts",
"default": "./src/events.ts"
},
"./event-bus": {
"types": "./src/event-bus.ts",
"default": "./src/event-bus.ts"
},
"./identity-service": {
"types": "./src/identity-service.ts",
"default": "./src/identity-service.ts"
},
"./packet-pipeline": {
"types": "./src/packet-pipeline.ts",
"default": "./src/packet-pipeline.ts"
},
"./element-builder": {
"types": "./src/element-builder.ts",
"default": "./src/element-builder.ts"
},
"./bridge-oidb": {
"types": "./src/bridge-oidb.ts",
"default": "./src/bridge-oidb.ts"
},
"./oidb-service": {
"types": "./src/oidb-service.ts",
"default": "./src/oidb-service.ts"
},
"./oidb-services/reaction/set-reaction": {
"types": "./src/oidb-services/reaction/set-reaction.ts",
"default": "./src/oidb-services/reaction/set-reaction.ts"
},
"./oidb-services/reaction/fetch-reaction-summary": {
"types": "./src/oidb-services/reaction/fetch-reaction-summary.ts",
"default": "./src/oidb-services/reaction/fetch-reaction-summary.ts"
},
"./oidb-services/reaction/get-emoji-likes": {
"types": "./src/oidb-services/reaction/get-emoji-likes.ts",
"default": "./src/oidb-services/reaction/get-emoji-likes.ts"
},
"./oidb-services/interaction/send-poke": {
"types": "./src/oidb-services/interaction/send-poke.ts",
"default": "./src/oidb-services/interaction/send-poke.ts"
},
"./oidb-services/interaction/send-like": {
"types": "./src/oidb-services/interaction/send-like.ts",
"default": "./src/oidb-services/interaction/send-like.ts"
},
"./oidb-services/interaction/set-essence": {
"types": "./src/oidb-services/interaction/set-essence.ts",
"default": "./src/oidb-services/interaction/set-essence.ts"
},
"./oidb-services/profile/set-profile": {
"types": "./src/oidb-services/profile/set-profile.ts",
"default": "./src/oidb-services/profile/set-profile.ts"
},
"./oidb-services/profile/set-self-long-nick": {
"types": "./src/oidb-services/profile/set-self-long-nick.ts",
"default": "./src/oidb-services/profile/set-self-long-nick.ts"
},
"./oidb-services/profile/set-input-status": {
"types": "./src/oidb-services/profile/set-input-status.ts",
"default": "./src/oidb-services/profile/set-input-status.ts"
},
"./oidb-services/profile/get-like": {
"types": "./src/oidb-services/profile/get-like.ts",
"default": "./src/oidb-services/profile/get-like.ts"
},
"./oidb-services/profile/get-unidirectional-friend-list": {
"types": "./src/oidb-services/profile/get-unidirectional-friend-list.ts",
"default": "./src/oidb-services/profile/get-unidirectional-friend-list.ts"
},
"./oidb-services/friend/handle-friend-request": {
"types": "./src/oidb-services/friend/handle-friend-request.ts",
"default": "./src/oidb-services/friend/handle-friend-request.ts"
},
"./oidb-services/friend/delete-friend": {
"types": "./src/oidb-services/friend/delete-friend.ts",
"default": "./src/oidb-services/friend/delete-friend.ts"
},
"./oidb-services/friend/set-friend-remark": {
"types": "./src/oidb-services/friend/set-friend-remark.ts",
"default": "./src/oidb-services/friend/set-friend-remark.ts"
},
"./oidb-services/misc/translate-en-to-zh": {
"types": "./src/oidb-services/misc/translate-en-to-zh.ts",
"default": "./src/oidb-services/misc/translate-en-to-zh.ts"
},
"./oidb-services/misc/click-inline-keyboard-button": {
"types": "./src/oidb-services/misc/click-inline-keyboard-button.ts",
"default": "./src/oidb-services/misc/click-inline-keyboard-button.ts"
},
"./oidb-services/misc/send-group-sign": {
"types": "./src/oidb-services/misc/send-group-sign.ts",
"default": "./src/oidb-services/misc/send-group-sign.ts"
},
"./oidb-services/web/force-fetch-client-key": {
"types": "./src/oidb-services/web/force-fetch-client-key.ts",
"default": "./src/oidb-services/web/force-fetch-client-key.ts"
},
"./oidb-services/web/get-pskey": {
"types": "./src/oidb-services/web/get-pskey.ts",
"default": "./src/oidb-services/web/get-pskey.ts"
},
"./oidb-services/extras/group-todo": {
"types": "./src/oidb-services/extras/group-todo.ts",
"default": "./src/oidb-services/extras/group-todo.ts"
},
"./oidb-services/extras/get-stranger-status": {
"types": "./src/oidb-services/extras/get-stranger-status.ts",
"default": "./src/oidb-services/extras/get-stranger-status.ts"
},
"./oidb-services/extras/fetch-ai-voice-list": {
"types": "./src/oidb-services/extras/fetch-ai-voice-list.ts",
"default": "./src/oidb-services/extras/fetch-ai-voice-list.ts"
},
"./oidb-services/extras/fetch-ai-voice": {
"types": "./src/oidb-services/extras/fetch-ai-voice.ts",
"default": "./src/oidb-services/extras/fetch-ai-voice.ts"
},
"./oidb-services/contacts/fetch-friend-list-page": {
"types": "./src/oidb-services/contacts/fetch-friend-list-page.ts",
"default": "./src/oidb-services/contacts/fetch-friend-list-page.ts"
},
"./oidb-services/contacts/fetch-group-list": {
"types": "./src/oidb-services/contacts/fetch-group-list.ts",
"default": "./src/oidb-services/contacts/fetch-group-list.ts"
},
"./oidb-services/contacts/fetch-group-member-list-page": {
"types": "./src/oidb-services/contacts/fetch-group-member-list-page.ts",
"default": "./src/oidb-services/contacts/fetch-group-member-list-page.ts"
},
"./oidb-services/contacts/fetch-user-profile": {
"types": "./src/oidb-services/contacts/fetch-user-profile.ts",
"default": "./src/oidb-services/contacts/fetch-user-profile.ts"
},
"./oidb-services/contacts/fetch-user-profile-by-uid": {
"types": "./src/oidb-services/contacts/fetch-user-profile-by-uid.ts",
"default": "./src/oidb-services/contacts/fetch-user-profile-by-uid.ts"
},
"./oidb-services/contacts/fetch-group-requests": {
"types": "./src/oidb-services/contacts/fetch-group-requests.ts",
"default": "./src/oidb-services/contacts/fetch-group-requests.ts"
},
"./oidb-services/contacts/fetch-download-rkeys": {
"types": "./src/oidb-services/contacts/fetch-download-rkeys.ts",
"default": "./src/oidb-services/contacts/fetch-download-rkeys.ts"
},
"./oidb-services/group-admin/mute-member": {
"types": "./src/oidb-services/group-admin/mute-member.ts",
"default": "./src/oidb-services/group-admin/mute-member.ts"
},
"./oidb-services/group-admin/mute-all": {
"types": "./src/oidb-services/group-admin/mute-all.ts",
"default": "./src/oidb-services/group-admin/mute-all.ts"
},
"./oidb-services/group-admin/set-add-option": {
"types": "./src/oidb-services/group-admin/set-add-option.ts",
"default": "./src/oidb-services/group-admin/set-add-option.ts"
},
"./oidb-services/group-admin/set-search": {
"types": "./src/oidb-services/group-admin/set-search.ts",
"default": "./src/oidb-services/group-admin/set-search.ts"
},
"./oidb-services/group-admin/set-add-request": {
"types": "./src/oidb-services/group-admin/set-add-request.ts",
"default": "./src/oidb-services/group-admin/set-add-request.ts"
},
"./oidb-services/group-admin/kick-member": {
"types": "./src/oidb-services/group-admin/kick-member.ts",
"default": "./src/oidb-services/group-admin/kick-member.ts"
},
"./oidb-services/group-admin/kick-members": {
"types": "./src/oidb-services/group-admin/kick-members.ts",
"default": "./src/oidb-services/group-admin/kick-members.ts"
},
"./oidb-services/group-admin/leave-group": {
"types": "./src/oidb-services/group-admin/leave-group.ts",
"default": "./src/oidb-services/group-admin/leave-group.ts"
},
"./oidb-services/group-admin/set-admin": {
"types": "./src/oidb-services/group-admin/set-admin.ts",
"default": "./src/oidb-services/group-admin/set-admin.ts"
},
"./oidb-services/group-admin/set-member-card": {
"types": "./src/oidb-services/group-admin/set-member-card.ts",
"default": "./src/oidb-services/group-admin/set-member-card.ts"
},
"./oidb-services/group-admin/set-group-name": {
"types": "./src/oidb-services/group-admin/set-group-name.ts",
"default": "./src/oidb-services/group-admin/set-group-name.ts"
},
"./oidb-services/group-admin/set-special-title": {
"types": "./src/oidb-services/group-admin/set-special-title.ts",
"default": "./src/oidb-services/group-admin/set-special-title.ts"
},
"./oidb-services/group-admin/set-group-remark": {
"types": "./src/oidb-services/group-admin/set-group-remark.ts",
"default": "./src/oidb-services/group-admin/set-group-remark.ts"
},
"./oidb-services/group-admin/get-at-all-remain": {
"types": "./src/oidb-services/group-admin/get-at-all-remain.ts",
"default": "./src/oidb-services/group-admin/get-at-all-remain.ts"
},
"./oidb-services/shared": {
"types": "./src/oidb-services/shared.ts",
"default": "./src/oidb-services/shared.ts"
},
"./oidb-services/group-file/publish-group-file": {
"types": "./src/oidb-services/group-file/publish-group-file.ts",
"default": "./src/oidb-services/group-file/publish-group-file.ts"
},
"./oidb-services/group-file/get-group-file-count": {
"types": "./src/oidb-services/group-file/get-group-file-count.ts",
"default": "./src/oidb-services/group-file/get-group-file-count.ts"
},
"./oidb-services/group-file/upload-group-file-request": {
"types": "./src/oidb-services/group-file/upload-group-file-request.ts",
"default": "./src/oidb-services/group-file/upload-group-file-request.ts"
},
"./oidb-services/group-file/upload-private-file-request": {
"types": "./src/oidb-services/group-file/upload-private-file-request.ts",
"default": "./src/oidb-services/group-file/upload-private-file-request.ts"
},
"./oidb-services/group-file/list-group-files-page": {
"types": "./src/oidb-services/group-file/list-group-files-page.ts",
"default": "./src/oidb-services/group-file/list-group-files-page.ts"
},
"./oidb-services/group-file/get-group-file-url": {
"types": "./src/oidb-services/group-file/get-group-file-url.ts",
"default": "./src/oidb-services/group-file/get-group-file-url.ts"
},
"./oidb-services/group-file/get-private-file-url": {
"types": "./src/oidb-services/group-file/get-private-file-url.ts",
"default": "./src/oidb-services/group-file/get-private-file-url.ts"
},
"./oidb-services/group-file/delete-group-file": {
"types": "./src/oidb-services/group-file/delete-group-file.ts",
"default": "./src/oidb-services/group-file/delete-group-file.ts"
},
"./oidb-services/group-file/move-group-file": {
"types": "./src/oidb-services/group-file/move-group-file.ts",
"default": "./src/oidb-services/group-file/move-group-file.ts"
},
"./oidb-services/group-file/create-group-folder": {
"types": "./src/oidb-services/group-file/create-group-folder.ts",
"default": "./src/oidb-services/group-file/create-group-folder.ts"
},
"./oidb-services/group-file/delete-group-folder": {
"types": "./src/oidb-services/group-file/delete-group-folder.ts",
"default": "./src/oidb-services/group-file/delete-group-folder.ts"
},
"./oidb-services/group-file/rename-group-folder": {
"types": "./src/oidb-services/group-file/rename-group-folder.ts",
"default": "./src/oidb-services/group-file/rename-group-folder.ts"
},
"./oidb-services/group-file/get-group-ptt-url": {
"types": "./src/oidb-services/group-file/get-group-ptt-url.ts",
"default": "./src/oidb-services/group-file/get-group-ptt-url.ts"
},
"./oidb-services/group-file/get-private-ptt-url": {
"types": "./src/oidb-services/group-file/get-private-ptt-url.ts",
"default": "./src/oidb-services/group-file/get-private-ptt-url.ts"
},
"./oidb-services/group-file/get-group-video-url": {
"types": "./src/oidb-services/group-file/get-group-video-url.ts",
"default": "./src/oidb-services/group-file/get-group-video-url.ts"
},
"./oidb-services/group-file/get-private-video-url": {
"types": "./src/oidb-services/group-file/get-private-video-url.ts",
"default": "./src/oidb-services/group-file/get-private-video-url.ts"
},
"./bridge-context": {
"types": "./src/bridge-context.ts",
"default": "./src/bridge-context.ts"
},
"./qq-info": {
"types": "./src/qq-info.ts",
"default": "./src/qq-info.ts"
},
"./format": {
"types": "./src/format.ts",
"default": "./src/format.ts"
},
"./msg-push": {
"types": "./src/msg-push/index.ts",
"default": "./src/msg-push/index.ts"
},
"./msg-push/registry": {
"types": "./src/msg-push/registry.ts",
"default": "./src/msg-push/registry.ts"
},
"./msg-push/context": {
"types": "./src/msg-push/context.ts",
"default": "./src/msg-push/context.ts"
},
"./msg-push/decoders/event-0x2dc": {
"types": "./src/msg-push/decoders/event-0x2dc.ts",
"default": "./src/msg-push/decoders/event-0x2dc.ts"
},
"./highway": {
"types": "./src/highway/highway-client.ts",
"default": "./src/highway/highway-client.ts"
},
"./highway/utils": {
"types": "./src/highway/utils.ts",
"default": "./src/highway/utils.ts"
},
"./highway/pipeline": {
"types": "./src/highway/pipeline.ts",
"default": "./src/highway/pipeline.ts"
},
"./highway/image-upload": {
"types": "./src/highway/image-upload.ts",
"default": "./src/highway/image-upload.ts"
},
"./highway/ptt-upload": {
"types": "./src/highway/ptt-upload.ts",
"default": "./src/highway/ptt-upload.ts"
},
"./highway/video-upload": {
"types": "./src/highway/video-upload.ts",
"default": "./src/highway/video-upload.ts"
},
"./highway/ffmpeg-addon": {
"types": "./src/highway/ffmpeg-addon.ts",
"default": "./src/highway/ffmpeg-addon.ts"
},
"./web/group-album": {
"types": "./src/web/group-album.ts",
"default": "./src/web/group-album.ts"
},
"./web/group-essence": {
"types": "./src/web/group-essence.ts",
"default": "./src/web/group-essence.ts"
},
"./web/group-honor": {
"types": "./src/web/group-honor.ts",
"default": "./src/web/group-honor.ts"
},
"./web/group-notice": {
"types": "./src/web/group-notice.ts",
"default": "./src/web/group-notice.ts"
},
"./web/request-util": {
"types": "./src/web/request-util.ts",
"default": "./src/web/request-util.ts"
}
},
"scripts": {
"test": "vitest run",
"bench": "vitest bench --run",
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@snowluma/common": "workspace:*",
"@snowluma/proto-defs": "workspace:*",
"@snowluma/proton": "workspace:*"
},
"devDependencies": {
"@types/node": "^24.12.2",
"typescript": "catalog:",
"vite": "catalog:",
"vitest": "^4.1.4"
}
}