wechaty-puppet-matrix 0.0.4
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/LICENSE +202 -0
- package/README.md +14 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/src/cleanup.d.ts +4 -0
- package/dist/cjs/src/cleanup.d.ts.map +1 -0
- package/dist/cjs/src/cleanup.js +31 -0
- package/dist/cjs/src/config.d.ts +5 -0
- package/dist/cjs/src/config.d.ts.map +1 -0
- package/dist/cjs/src/config.js +10 -0
- package/dist/cjs/src/engine-schema.d.ts +76 -0
- package/dist/cjs/src/engine-schema.d.ts.map +1 -0
- package/dist/cjs/src/engine-schema.js +14 -0
- package/dist/cjs/src/matrix/cache-manager.d.ts +58 -0
- package/dist/cjs/src/matrix/cache-manager.d.ts.map +1 -0
- package/dist/cjs/src/matrix/cache-manager.js +286 -0
- package/dist/cjs/src/matrix/events/event-friendship.d.ts +6 -0
- package/dist/cjs/src/matrix/events/event-friendship.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event-friendship.js +109 -0
- package/dist/cjs/src/matrix/events/event-message.d.ts +6 -0
- package/dist/cjs/src/matrix/events/event-message.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event-message.js +5 -0
- package/dist/cjs/src/matrix/events/event-room-invite.d.ts +6 -0
- package/dist/cjs/src/matrix/events/event-room-invite.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event-room-invite.js +55 -0
- package/dist/cjs/src/matrix/events/event-room-join.d.ts +6 -0
- package/dist/cjs/src/matrix/events/event-room-join.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event-room-join.js +127 -0
- package/dist/cjs/src/matrix/events/event-room-leave.d.ts +8 -0
- package/dist/cjs/src/matrix/events/event-room-leave.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event-room-leave.js +83 -0
- package/dist/cjs/src/matrix/events/event-room-topic.d.ts +6 -0
- package/dist/cjs/src/matrix/events/event-room-topic.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event-room-topic.js +56 -0
- package/dist/cjs/src/matrix/events/event.d.ts +28 -0
- package/dist/cjs/src/matrix/events/event.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/event.js +42 -0
- package/dist/cjs/src/matrix/events/mod.d.ts +3 -0
- package/dist/cjs/src/matrix/events/mod.d.ts.map +1 -0
- package/dist/cjs/src/matrix/events/mod.js +21 -0
- package/dist/cjs/src/matrix/messages/message-appmsg.d.ts +57 -0
- package/dist/cjs/src/matrix/messages/message-appmsg.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-appmsg.js +60 -0
- package/dist/cjs/src/matrix/messages/message-audio.d.ts +32 -0
- package/dist/cjs/src/matrix/messages/message-audio.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-audio.js +17 -0
- package/dist/cjs/src/matrix/messages/message-emotion.d.ts +13 -0
- package/dist/cjs/src/matrix/messages/message-emotion.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-emotion.js +32 -0
- package/dist/cjs/src/matrix/messages/message-image.d.ts +33 -0
- package/dist/cjs/src/matrix/messages/message-image.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-image.js +14 -0
- package/dist/cjs/src/matrix/messages/message-miniprogram.d.ts +4 -0
- package/dist/cjs/src/matrix/messages/message-miniprogram.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-miniprogram.js +21 -0
- package/dist/cjs/src/matrix/messages/message-sysmsg.d.ts +18 -0
- package/dist/cjs/src/matrix/messages/message-sysmsg.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-sysmsg.js +76 -0
- package/dist/cjs/src/matrix/messages/message-video.d.ts +43 -0
- package/dist/cjs/src/matrix/messages/message-video.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/message-video.js +20 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-pat.d.ts +14 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-pat.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-pat.js +11 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-revokemsg.d.ts +19 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-revokemsg.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-revokemsg.js +48 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-sysmsgtemplate.d.ts +59 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-sysmsgtemplate.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-sysmsgtemplate.js +61 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-todo.d.ts +31 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-todo.d.ts.map +1 -0
- package/dist/cjs/src/matrix/messages/sysmsg/message-todo.js +16 -0
- package/dist/cjs/src/matrix/schema-mapper/contact.d.ts +4 -0
- package/dist/cjs/src/matrix/schema-mapper/contact.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/contact.js +62 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-appmsg.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-appmsg.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-appmsg.js +100 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-refermsg.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-refermsg.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-refermsg.js +67 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-room.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-room.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-room.js +40 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-single-chat.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-single-chat.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-single-chat.js +11 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-sysmsg.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-sysmsg.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-sysmsg.js +41 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-type.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-type.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser-type.js +65 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser.d.ts +13 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/message-parser.js +20 -0
- package/dist/cjs/src/matrix/schema-mapper/message/mod.d.ts +3 -0
- package/dist/cjs/src/matrix/schema-mapper/message/mod.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message/mod.js +17 -0
- package/dist/cjs/src/matrix/schema-mapper/message.d.ts +6 -0
- package/dist/cjs/src/matrix/schema-mapper/message.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/message.js +47 -0
- package/dist/cjs/src/matrix/schema-mapper/room.d.ts +6 -0
- package/dist/cjs/src/matrix/schema-mapper/room.d.ts.map +1 -0
- package/dist/cjs/src/matrix/schema-mapper/room.js +27 -0
- package/dist/cjs/src/matrix/service/request.d.ts +290 -0
- package/dist/cjs/src/matrix/service/request.d.ts.map +1 -0
- package/dist/cjs/src/matrix/service/request.js +1315 -0
- package/dist/cjs/src/matrix/types.d.ts +34 -0
- package/dist/cjs/src/matrix/types.d.ts.map +1 -0
- package/dist/cjs/src/matrix/types.js +30 -0
- package/dist/cjs/src/matrix/utils/cached-promise.d.ts +5 -0
- package/dist/cjs/src/matrix/utils/cached-promise.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/cached-promise.js +22 -0
- package/dist/cjs/src/matrix/utils/image-decrypt.d.ts +7 -0
- package/dist/cjs/src/matrix/utils/image-decrypt.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/image-decrypt.js +158 -0
- package/dist/cjs/src/matrix/utils/index.d.ts +4 -0
- package/dist/cjs/src/matrix/utils/index.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/index.js +32 -0
- package/dist/cjs/src/matrix/utils/is-type.d.ts +9 -0
- package/dist/cjs/src/matrix/utils/is-type.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/is-type.js +72 -0
- package/dist/cjs/src/matrix/utils/regex.d.ts +3 -0
- package/dist/cjs/src/matrix/utils/regex.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/regex.js +14 -0
- package/dist/cjs/src/matrix/utils/runner.d.ts +3 -0
- package/dist/cjs/src/matrix/utils/runner.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/runner.js +12 -0
- package/dist/cjs/src/matrix/utils/string.d.ts +2 -0
- package/dist/cjs/src/matrix/utils/string.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/string.js +7 -0
- package/dist/cjs/src/matrix/utils/xml-to-json.d.ts +5 -0
- package/dist/cjs/src/matrix/utils/xml-to-json.d.ts.map +1 -0
- package/dist/cjs/src/matrix/utils/xml-to-json.js +51 -0
- package/dist/cjs/src/mod.d.ts +5 -0
- package/dist/cjs/src/mod.d.ts.map +1 -0
- package/dist/cjs/src/mod.js +9 -0
- package/dist/cjs/src/package-json.d.ts +3 -0
- package/dist/cjs/src/package-json.d.ts.map +1 -0
- package/dist/cjs/src/package-json.js +4 -0
- package/dist/cjs/src/package-json.spec.d.ts +3 -0
- package/dist/cjs/src/package-json.spec.d.ts.map +1 -0
- package/dist/cjs/src/package-json.spec.js +9 -0
- package/dist/cjs/src/puppet-matrix.d.ts +114 -0
- package/dist/cjs/src/puppet-matrix.d.ts.map +1 -0
- package/dist/cjs/src/puppet-matrix.js +1037 -0
- package/dist/cjs/tests/integration.spec.d.ts +3 -0
- package/dist/cjs/tests/integration.spec.d.ts.map +1 -0
- package/dist/cjs/tests/integration.spec.js +7 -0
- package/dist/cjs/tests/tap.spec.d.ts +3 -0
- package/dist/cjs/tests/tap.spec.d.ts.map +1 -0
- package/dist/cjs/tests/tap.spec.js +32 -0
- package/dist/esm/src/cleanup.d.ts +4 -0
- package/dist/esm/src/cleanup.d.ts.map +1 -0
- package/dist/esm/src/cleanup.js +24 -0
- package/dist/esm/src/config.d.ts +5 -0
- package/dist/esm/src/config.d.ts.map +1 -0
- package/dist/esm/src/config.js +5 -0
- package/dist/esm/src/engine-schema.d.ts +76 -0
- package/dist/esm/src/engine-schema.d.ts.map +1 -0
- package/dist/esm/src/engine-schema.js +11 -0
- package/dist/esm/src/matrix/cache-manager.d.ts +58 -0
- package/dist/esm/src/matrix/cache-manager.d.ts.map +1 -0
- package/dist/esm/src/matrix/cache-manager.js +279 -0
- package/dist/esm/src/matrix/events/event-friendship.d.ts +6 -0
- package/dist/esm/src/matrix/events/event-friendship.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event-friendship.js +84 -0
- package/dist/esm/src/matrix/events/event-message.d.ts +6 -0
- package/dist/esm/src/matrix/events/event-message.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event-message.js +3 -0
- package/dist/esm/src/matrix/events/event-room-invite.d.ts +6 -0
- package/dist/esm/src/matrix/events/event-room-invite.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event-room-invite.js +53 -0
- package/dist/esm/src/matrix/events/event-room-join.d.ts +6 -0
- package/dist/esm/src/matrix/events/event-room-join.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event-room-join.js +125 -0
- package/dist/esm/src/matrix/events/event-room-leave.d.ts +8 -0
- package/dist/esm/src/matrix/events/event-room-leave.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event-room-leave.js +79 -0
- package/dist/esm/src/matrix/events/event-room-topic.d.ts +6 -0
- package/dist/esm/src/matrix/events/event-room-topic.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event-room-topic.js +54 -0
- package/dist/esm/src/matrix/events/event.d.ts +28 -0
- package/dist/esm/src/matrix/events/event.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/event.js +37 -0
- package/dist/esm/src/matrix/events/mod.d.ts +3 -0
- package/dist/esm/src/matrix/events/mod.d.ts.map +1 -0
- package/dist/esm/src/matrix/events/mod.js +14 -0
- package/dist/esm/src/matrix/messages/message-appmsg.d.ts +57 -0
- package/dist/esm/src/matrix/messages/message-appmsg.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-appmsg.js +56 -0
- package/dist/esm/src/matrix/messages/message-audio.d.ts +32 -0
- package/dist/esm/src/matrix/messages/message-audio.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-audio.js +14 -0
- package/dist/esm/src/matrix/messages/message-emotion.d.ts +13 -0
- package/dist/esm/src/matrix/messages/message-emotion.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-emotion.js +28 -0
- package/dist/esm/src/matrix/messages/message-image.d.ts +33 -0
- package/dist/esm/src/matrix/messages/message-image.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-image.js +11 -0
- package/dist/esm/src/matrix/messages/message-miniprogram.d.ts +4 -0
- package/dist/esm/src/matrix/messages/message-miniprogram.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-miniprogram.js +18 -0
- package/dist/esm/src/matrix/messages/message-sysmsg.d.ts +18 -0
- package/dist/esm/src/matrix/messages/message-sysmsg.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-sysmsg.js +69 -0
- package/dist/esm/src/matrix/messages/message-video.d.ts +43 -0
- package/dist/esm/src/matrix/messages/message-video.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/message-video.js +17 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-pat.d.ts +14 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-pat.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-pat.js +8 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-revokemsg.d.ts +19 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-revokemsg.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-revokemsg.js +43 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-sysmsgtemplate.d.ts +59 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-sysmsgtemplate.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-sysmsgtemplate.js +56 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-todo.d.ts +31 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-todo.d.ts.map +1 -0
- package/dist/esm/src/matrix/messages/sysmsg/message-todo.js +13 -0
- package/dist/esm/src/matrix/schema-mapper/contact.d.ts +4 -0
- package/dist/esm/src/matrix/schema-mapper/contact.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/contact.js +36 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-appmsg.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-appmsg.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-appmsg.js +73 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-refermsg.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-refermsg.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-refermsg.js +40 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-room.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-room.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-room.js +36 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-single-chat.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-single-chat.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-single-chat.js +7 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-sysmsg.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-sysmsg.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-sysmsg.js +37 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-type.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-type.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser-type.js +38 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser.d.ts +13 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/message-parser.js +15 -0
- package/dist/esm/src/matrix/schema-mapper/message/mod.d.ts +3 -0
- package/dist/esm/src/matrix/schema-mapper/message/mod.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message/mod.js +14 -0
- package/dist/esm/src/matrix/schema-mapper/message.d.ts +6 -0
- package/dist/esm/src/matrix/schema-mapper/message.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/message.js +21 -0
- package/dist/esm/src/matrix/schema-mapper/room.d.ts +6 -0
- package/dist/esm/src/matrix/schema-mapper/room.d.ts.map +1 -0
- package/dist/esm/src/matrix/schema-mapper/room.js +22 -0
- package/dist/esm/src/matrix/service/request.d.ts +290 -0
- package/dist/esm/src/matrix/service/request.d.ts.map +1 -0
- package/dist/esm/src/matrix/service/request.js +1286 -0
- package/dist/esm/src/matrix/types.d.ts +34 -0
- package/dist/esm/src/matrix/types.d.ts.map +1 -0
- package/dist/esm/src/matrix/types.js +27 -0
- package/dist/esm/src/matrix/utils/cached-promise.d.ts +5 -0
- package/dist/esm/src/matrix/utils/cached-promise.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/cached-promise.js +18 -0
- package/dist/esm/src/matrix/utils/image-decrypt.d.ts +7 -0
- package/dist/esm/src/matrix/utils/image-decrypt.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/image-decrypt.js +153 -0
- package/dist/esm/src/matrix/utils/index.d.ts +4 -0
- package/dist/esm/src/matrix/utils/index.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/index.js +24 -0
- package/dist/esm/src/matrix/utils/is-type.d.ts +9 -0
- package/dist/esm/src/matrix/utils/is-type.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/is-type.js +62 -0
- package/dist/esm/src/matrix/utils/regex.d.ts +3 -0
- package/dist/esm/src/matrix/utils/regex.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/regex.js +11 -0
- package/dist/esm/src/matrix/utils/runner.d.ts +3 -0
- package/dist/esm/src/matrix/utils/runner.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/runner.js +9 -0
- package/dist/esm/src/matrix/utils/string.d.ts +2 -0
- package/dist/esm/src/matrix/utils/string.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/string.js +3 -0
- package/dist/esm/src/matrix/utils/xml-to-json.d.ts +5 -0
- package/dist/esm/src/matrix/utils/xml-to-json.d.ts.map +1 -0
- package/dist/esm/src/matrix/utils/xml-to-json.js +45 -0
- package/dist/esm/src/mod.d.ts +5 -0
- package/dist/esm/src/mod.d.ts.map +1 -0
- package/dist/esm/src/mod.js +4 -0
- package/dist/esm/src/package-json.d.ts +3 -0
- package/dist/esm/src/package-json.d.ts.map +1 -0
- package/dist/esm/src/package-json.js +1 -0
- package/dist/esm/src/package-json.spec.d.ts +3 -0
- package/dist/esm/src/package-json.spec.d.ts.map +1 -0
- package/dist/esm/src/package-json.spec.js +7 -0
- package/dist/esm/src/puppet-matrix.d.ts +114 -0
- package/dist/esm/src/puppet-matrix.d.ts.map +1 -0
- package/dist/esm/src/puppet-matrix.js +1007 -0
- package/dist/esm/tests/integration.spec.d.ts +3 -0
- package/dist/esm/tests/integration.spec.d.ts.map +1 -0
- package/dist/esm/tests/integration.spec.js +5 -0
- package/dist/esm/tests/tap.spec.d.ts +3 -0
- package/dist/esm/tests/tap.spec.d.ts.map +1 -0
- package/dist/esm/tests/tap.spec.js +7 -0
- package/package.json +98 -0
- package/src/cleanup.ts +36 -0
- package/src/config.ts +15 -0
- package/src/engine-schema.ts +171 -0
- package/src/matrix/cache-manager.ts +359 -0
- package/src/matrix/events/event-friendship.ts +116 -0
- package/src/matrix/events/event-message.ts +7 -0
- package/src/matrix/events/event-room-invite.ts +64 -0
- package/src/matrix/events/event-room-join.ts +200 -0
- package/src/matrix/events/event-room-leave.ts +111 -0
- package/src/matrix/events/event-room-topic.ts +73 -0
- package/src/matrix/events/event.ts +60 -0
- package/src/matrix/events/mod.ts +16 -0
- package/src/matrix/messages/message-appmsg.ts +131 -0
- package/src/matrix/messages/message-audio.ts +48 -0
- package/src/matrix/messages/message-emotion.ts +68 -0
- package/src/matrix/messages/message-image.ts +46 -0
- package/src/matrix/messages/message-miniprogram.ts +45 -0
- package/src/matrix/messages/message-sysmsg.ts +106 -0
- package/src/matrix/messages/message-video.ts +62 -0
- package/src/matrix/messages/sysmsg/message-pat.ts +22 -0
- package/src/matrix/messages/sysmsg/message-revokemsg.ts +70 -0
- package/src/matrix/messages/sysmsg/message-sysmsgtemplate.ts +133 -0
- package/src/matrix/messages/sysmsg/message-todo.ts +45 -0
- package/src/matrix/schema-mapper/contact.ts +37 -0
- package/src/matrix/schema-mapper/message/message-parser-appmsg.ts +78 -0
- package/src/matrix/schema-mapper/message/message-parser-refermsg.ts +53 -0
- package/src/matrix/schema-mapper/message/message-parser-room.ts +62 -0
- package/src/matrix/schema-mapper/message/message-parser-single-chat.ts +12 -0
- package/src/matrix/schema-mapper/message/message-parser-sysmsg.ts +62 -0
- package/src/matrix/schema-mapper/message/message-parser-type.ts +48 -0
- package/src/matrix/schema-mapper/message/message-parser.ts +35 -0
- package/src/matrix/schema-mapper/message/mod.ts +17 -0
- package/src/matrix/schema-mapper/message.ts +30 -0
- package/src/matrix/schema-mapper/room.ts +28 -0
- package/src/matrix/service/request.ts +1944 -0
- package/src/matrix/types.ts +37 -0
- package/src/matrix/utils/cached-promise.ts +25 -0
- package/src/matrix/utils/image-decrypt.ts +198 -0
- package/src/matrix/utils/index.ts +34 -0
- package/src/matrix/utils/is-type.ts +72 -0
- package/src/matrix/utils/regex.ts +15 -0
- package/src/matrix/utils/runner.ts +12 -0
- package/src/matrix/utils/string.ts +3 -0
- package/src/matrix/utils/xml-to-json.ts +59 -0
- package/src/mod.ts +10 -0
- package/src/package-json.spec.ts +10 -0
- package/src/package-json.ts +11 -0
- package/src/puppet-matrix.ts +1402 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { EmojiMessagePayload } from './messages/message-emotion.js'
|
|
2
|
+
|
|
3
|
+
// 消息类型:1|文本 3|图片 34|语音 42|名片 43|视频 47|动态表情 48|地理位置 49|分享链接或附件 2001|红包 2002|小程序 2003|群邀请 10000|系统消息
|
|
4
|
+
export enum WechatMessageType {
|
|
5
|
+
Text = 1,
|
|
6
|
+
Image = 3,
|
|
7
|
+
Voice = 34,
|
|
8
|
+
VerifyMsg = 37,
|
|
9
|
+
PossibleFriendMsg = 40,
|
|
10
|
+
ShareCard = 42,
|
|
11
|
+
Video = 43,
|
|
12
|
+
Emoticon = 47,
|
|
13
|
+
Location = 48,
|
|
14
|
+
App = 49,
|
|
15
|
+
VoipMsg = 50,
|
|
16
|
+
StatusNotify = 51,
|
|
17
|
+
VoipNotify = 52,
|
|
18
|
+
VoipInvite = 53,
|
|
19
|
+
MicroVideo = 62,
|
|
20
|
+
VerifyMsgEnterprise = 65,
|
|
21
|
+
Transfer = 2000, // 转账
|
|
22
|
+
RedEnvelope = 2001, // 红包
|
|
23
|
+
MiniProgram = 2002, // 小程序
|
|
24
|
+
GroupInvite = 2003, // 群邀请
|
|
25
|
+
File = 2004, // 文件消息
|
|
26
|
+
SysNotice = 9999,
|
|
27
|
+
Sys = 10000,
|
|
28
|
+
SysTemplate = 10002, // NOTIFY 服务通知
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export type FileBoxMetadataMessageType = 'unknown' | 'emoticon';
|
|
32
|
+
export type FileBoxMetadataMessagePayload = EmojiMessagePayload;
|
|
33
|
+
|
|
34
|
+
export interface FileBoxMetadataMessage {
|
|
35
|
+
type: FileBoxMetadataMessageType,
|
|
36
|
+
payload: FileBoxMetadataMessagePayload
|
|
37
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const PromiseCache = new Map<string, Promise<any>>()
|
|
2
|
+
|
|
3
|
+
export async function CachedPromise<T> (key: string, promise: Promise<T>): Promise<T> {
|
|
4
|
+
const cache = PromiseCache.get(key)
|
|
5
|
+
if (cache) {
|
|
6
|
+
return cache
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
PromiseCache.set(key, promise)
|
|
10
|
+
return promise.finally(() => PromiseCache.delete(key))
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
type PromiseFunc<T> = () => Promise<T>;
|
|
14
|
+
|
|
15
|
+
export async function CachedPromiseFunc<T> (key: string, promiseFunc: PromiseFunc<T>): Promise<T> {
|
|
16
|
+
const cache = PromiseCache.get(key)
|
|
17
|
+
if (cache) {
|
|
18
|
+
return cache
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
const promise = promiseFunc()
|
|
22
|
+
|
|
23
|
+
PromiseCache.set(key, promise)
|
|
24
|
+
return promise.finally(() => PromiseCache.delete(key))
|
|
25
|
+
}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import fs from 'fs'
|
|
2
|
+
|
|
3
|
+
let xorCache:string|null = null
|
|
4
|
+
// let xor = '9a9a' // 异或值(十六进制)
|
|
5
|
+
// xor = hexToBin(xor)
|
|
6
|
+
|
|
7
|
+
const xorLen = 2
|
|
8
|
+
|
|
9
|
+
function ImageDecrypt (dataPath: string, messageId: string) {
|
|
10
|
+
// 读取文件,获取到十六进制数据
|
|
11
|
+
try {
|
|
12
|
+
const data = fs.readFileSync(dataPath, 'hex')
|
|
13
|
+
const res = handleEncrypted(data) // 解密后的十六进制数据
|
|
14
|
+
const extension = getNameExtension(res.substring(0, 4))
|
|
15
|
+
// console.debug(extension)
|
|
16
|
+
const imageInfo = {
|
|
17
|
+
base64: Buffer.from(res, 'hex').toString('base64'),
|
|
18
|
+
extension,
|
|
19
|
+
fileName: `message-${messageId}-url-thumb.${extension}`,
|
|
20
|
+
}
|
|
21
|
+
// console.debug(imageInfo)
|
|
22
|
+
return imageInfo
|
|
23
|
+
} catch (err) {
|
|
24
|
+
console.error(err)
|
|
25
|
+
}
|
|
26
|
+
throw new Error('ImageDecrypt fail')
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// 解密加密数据
|
|
30
|
+
function handleEncrypted (strEncrypted: string) {
|
|
31
|
+
// 先获取异或值(仅限于jpg文件)
|
|
32
|
+
const code = getXor(strEncrypted.substring(0, 4))
|
|
33
|
+
const strLength = strEncrypted.length
|
|
34
|
+
let source = ''
|
|
35
|
+
const list = []
|
|
36
|
+
for (let i = 0; i < strLength; i = i + xorLen) {
|
|
37
|
+
const str = strEncrypted.substring(0, xorLen)
|
|
38
|
+
strEncrypted = strEncrypted.substring(xorLen)
|
|
39
|
+
const res = hexXor(str, code)
|
|
40
|
+
list.push(res)
|
|
41
|
+
}
|
|
42
|
+
source = list.join('')
|
|
43
|
+
// console.debug(source)
|
|
44
|
+
return source
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// 获取异或值
|
|
48
|
+
/**
|
|
49
|
+
*
|
|
50
|
+
* @param str strEncrypted.substring(0, 4)
|
|
51
|
+
* @return xor
|
|
52
|
+
*/
|
|
53
|
+
function getXor (str: string): string {
|
|
54
|
+
if (typeof xorCache === 'string') {
|
|
55
|
+
return xorCache
|
|
56
|
+
}
|
|
57
|
+
const str01 = str.substring(0, 2)
|
|
58
|
+
const str23 = str.substring(2)
|
|
59
|
+
for (const head of dataHead) {
|
|
60
|
+
const h = head.hex
|
|
61
|
+
const h01 = h.substring(0, 2)
|
|
62
|
+
const h23 = h.substring(2)
|
|
63
|
+
const code = hexXor(h01, str01)
|
|
64
|
+
const testResult = hexXor(str23, code)
|
|
65
|
+
if (testResult === h23) {
|
|
66
|
+
xorCache = code
|
|
67
|
+
return xorCache
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
throw new Error('getXor error')
|
|
71
|
+
}
|
|
72
|
+
void getXor
|
|
73
|
+
|
|
74
|
+
// 获取文件名后缀
|
|
75
|
+
function getNameExtension (hex: string) {
|
|
76
|
+
// console.debug(hex)
|
|
77
|
+
const res = dataHead.find(function (item) {
|
|
78
|
+
return item.hex === hex
|
|
79
|
+
})!.name
|
|
80
|
+
return res
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// 十六进制转二进制
|
|
84
|
+
function hexToBin (str: string) {
|
|
85
|
+
const hexArray = [
|
|
86
|
+
{ bin: '0000', hex: '0' },
|
|
87
|
+
{ bin: '0001', hex: '1' },
|
|
88
|
+
{ bin: '0010', hex: '2' },
|
|
89
|
+
{ bin: '0011', hex: '3' },
|
|
90
|
+
{ bin: '0100', hex: '4' },
|
|
91
|
+
{ bin: '0101', hex: '5' },
|
|
92
|
+
{ bin: '0110', hex: '6' },
|
|
93
|
+
{ bin: '0111', hex: '7' },
|
|
94
|
+
{ bin: '1000', hex: '8' },
|
|
95
|
+
{ bin: '1001', hex: '9' },
|
|
96
|
+
{ bin: '1010', hex: 'a' },
|
|
97
|
+
{ bin: '1011', hex: 'b' },
|
|
98
|
+
{ bin: '1100', hex: 'c' },
|
|
99
|
+
{ bin: '1101', hex: 'd' },
|
|
100
|
+
{ bin: '1110', hex: 'e' },
|
|
101
|
+
{ bin: '1111', hex: 'f' },
|
|
102
|
+
] as const
|
|
103
|
+
let value = ''
|
|
104
|
+
for (let i = 0; i < str.length; i++) {
|
|
105
|
+
value += hexArray.find(function (item) {
|
|
106
|
+
return item.hex === str[i]
|
|
107
|
+
})!.bin
|
|
108
|
+
}
|
|
109
|
+
return value
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// 二进制转十六进制
|
|
113
|
+
function binToHex (str: string) {
|
|
114
|
+
const hexArray = [
|
|
115
|
+
{ bin: '0000', hex: '0' },
|
|
116
|
+
{ bin: '0001', hex: '1' },
|
|
117
|
+
{ bin: '0010', hex: '2' },
|
|
118
|
+
{ bin: '0011', hex: '3' },
|
|
119
|
+
{ bin: '0100', hex: '4' },
|
|
120
|
+
{ bin: '0101', hex: '5' },
|
|
121
|
+
{ bin: '0110', hex: '6' },
|
|
122
|
+
{ bin: '0111', hex: '7' },
|
|
123
|
+
{ bin: '1000', hex: '8' },
|
|
124
|
+
{ bin: '1001', hex: '9' },
|
|
125
|
+
{ bin: '1010', hex: 'a' },
|
|
126
|
+
{ bin: '1011', hex: 'b' },
|
|
127
|
+
{ bin: '1100', hex: 'c' },
|
|
128
|
+
{ bin: '1101', hex: 'd' },
|
|
129
|
+
{ bin: '1110', hex: 'e' },
|
|
130
|
+
{ bin: '1111', hex: 'f' },
|
|
131
|
+
]
|
|
132
|
+
let value = ''
|
|
133
|
+
const list: string[] = []
|
|
134
|
+
while (str.length > 4) {
|
|
135
|
+
list.push(str.substring(0, 4))
|
|
136
|
+
str = str.substring(4)
|
|
137
|
+
}
|
|
138
|
+
list.push(str)
|
|
139
|
+
for (let i = 0; i < list.length; i++) {
|
|
140
|
+
value += hexArray.find(function (item) {
|
|
141
|
+
return item.bin === list[i]
|
|
142
|
+
})!.hex
|
|
143
|
+
}
|
|
144
|
+
return value
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
// 获取计算结果
|
|
148
|
+
// function getResult (a: string) {
|
|
149
|
+
// const A = hexToBin(a)
|
|
150
|
+
// const B = xor
|
|
151
|
+
// let d = ''
|
|
152
|
+
// for (let i = 0; i < A.length; i++) {
|
|
153
|
+
// if (A[i] === B[i]) {
|
|
154
|
+
// d = d.concat('0')
|
|
155
|
+
// } else {
|
|
156
|
+
// d = d.concat('1')
|
|
157
|
+
// }
|
|
158
|
+
// }
|
|
159
|
+
// return binToHex(d)
|
|
160
|
+
// }
|
|
161
|
+
|
|
162
|
+
function hexXor (a: string, b: string) {
|
|
163
|
+
const A = hexToBin(a)
|
|
164
|
+
const B = hexToBin(b)
|
|
165
|
+
let d = ''
|
|
166
|
+
for (let i = 0; i < A.length; i++) {
|
|
167
|
+
if (A[i] === B[i]) {
|
|
168
|
+
d = d.concat('0')
|
|
169
|
+
} else {
|
|
170
|
+
d = d.concat('1')
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return binToHex(d)
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
// 扩展名-十六进制表
|
|
177
|
+
const dataHead = [
|
|
178
|
+
{
|
|
179
|
+
hex: 'ffd8',
|
|
180
|
+
name: 'jpg',
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
hex: '8950',
|
|
184
|
+
name: 'png',
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
hex: '4749',
|
|
188
|
+
name: 'gif',
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
hex: '424d',
|
|
192
|
+
name: 'bmp',
|
|
193
|
+
},
|
|
194
|
+
]
|
|
195
|
+
|
|
196
|
+
export {
|
|
197
|
+
ImageDecrypt,
|
|
198
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import axios from 'axios'
|
|
2
|
+
import { URL } from 'url'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* 延时函数
|
|
6
|
+
* @param {*} ms 毫秒
|
|
7
|
+
*/
|
|
8
|
+
export async function delay (ms:number):Promise<void> {
|
|
9
|
+
return new Promise((resolve) => setTimeout(resolve, ms))
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* 上传文件
|
|
14
|
+
*/
|
|
15
|
+
export async function putFileTransfer (fileName: string, fileData: Buffer): Promise<string> {
|
|
16
|
+
const res = await axios.put(`https://transfer.sh/${fileName}`, fileData)
|
|
17
|
+
if (res.data) {
|
|
18
|
+
const parseUrl = new URL(res.data)
|
|
19
|
+
return parseUrl.origin + '/get' + parseUrl.pathname
|
|
20
|
+
}
|
|
21
|
+
return ''
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* 获取带后缀的文件名
|
|
26
|
+
* @param path
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
export function getFileName (path:string): string {
|
|
30
|
+
const pos1 = path.lastIndexOf('/')
|
|
31
|
+
const pos2 = path.lastIndexOf('\\')
|
|
32
|
+
const pos = Math.max(pos1, pos2)
|
|
33
|
+
if (pos < 0) { return path } else { return path.substring(pos + 1) }
|
|
34
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
const officeWxid = [
|
|
2
|
+
'medianote',
|
|
3
|
+
'floatbottle',
|
|
4
|
+
'qmessage',
|
|
5
|
+
'fmessage',
|
|
6
|
+
'exmail_tool',
|
|
7
|
+
'weixin',
|
|
8
|
+
'newsapp', 'fmessage', 'filehelper', 'weibo', 'qqmail', 'tmessage',
|
|
9
|
+
'qmessage', 'qqsync', 'floatbottle', 'lbsapp', 'shakeapp', 'medianote', 'qqfriend',
|
|
10
|
+
'readerapp', 'blogapp', 'facebookapp', 'masssendapp', 'meishiapp', 'feedsapp', 'voip',
|
|
11
|
+
'blogappweixin', 'weixin', 'brandsessionholder', 'weixinreminder', 'wxid_novlwrv3lqwv11',
|
|
12
|
+
'gh_22b87fa7cb3c', 'officialaccounts', 'notification_messages', 'wxid_novlwrv3lqwv11',
|
|
13
|
+
'gh_22b87fa7cb3c', 'wxitil', 'userexperience_alarm', 'notification_messages',
|
|
14
|
+
]
|
|
15
|
+
export function isRoomId (id?: string): boolean {
|
|
16
|
+
if (!id) {
|
|
17
|
+
return false
|
|
18
|
+
}
|
|
19
|
+
return /@chatroom$/.test(id)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function isIMRoomId (id?: string): boolean {
|
|
23
|
+
if (!id) {
|
|
24
|
+
return false
|
|
25
|
+
}
|
|
26
|
+
return /@im.chatroom$/.test(id)
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export function isContactId (id?: string): boolean {
|
|
30
|
+
if (!id) {
|
|
31
|
+
return false
|
|
32
|
+
}
|
|
33
|
+
return !isRoomId(id) && !isIMRoomId(id) && !isIMContactId(id)
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export function isIMContactId (id?: string): boolean {
|
|
37
|
+
if (!id) {
|
|
38
|
+
return false
|
|
39
|
+
}
|
|
40
|
+
return /@openim$/.test(id)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function isContactOfficialId (id?: string): boolean {
|
|
44
|
+
if (!id) {
|
|
45
|
+
return false
|
|
46
|
+
// throw new Error('no id')
|
|
47
|
+
}
|
|
48
|
+
return /^gh_/i.test(id) || officeWxid.includes(id)
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function isStrangerV1 (strangerId?: string): boolean {
|
|
52
|
+
if (!strangerId) {
|
|
53
|
+
return false
|
|
54
|
+
// throw new Error('no id')
|
|
55
|
+
}
|
|
56
|
+
return /^v1_/i.test(strangerId)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function isStrangerV2 (strangerId?: string): boolean {
|
|
60
|
+
if (!strangerId) {
|
|
61
|
+
return false
|
|
62
|
+
// throw new Error('no id')
|
|
63
|
+
}
|
|
64
|
+
return /^v2_/i.test(strangerId)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function isPayload (payload?: object): boolean {
|
|
68
|
+
if (payload && Object.keys(payload).length > 0) {
|
|
69
|
+
return true
|
|
70
|
+
}
|
|
71
|
+
return false
|
|
72
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type RegexHandler<T> = (matchedRegexIndex: number, match: RegExpMatchArray) => Promise<T>;
|
|
2
|
+
|
|
3
|
+
export async function parseTextWithRegexList<T> (text: string, regexList: RegExp[], handler: RegexHandler<T>) : Promise<T | null> {
|
|
4
|
+
for (let i = 0; i < regexList.length; ++i) {
|
|
5
|
+
const regex = regexList[i]!
|
|
6
|
+
const match = text.match(regex)
|
|
7
|
+
if (!match) {
|
|
8
|
+
continue
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
return await handler(i, match)
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
return null
|
|
15
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { parseString, Builder } from 'xml2js'
|
|
2
|
+
import { log } from '@juzi/wechaty-puppet'
|
|
3
|
+
|
|
4
|
+
export async function xmlToJson (xml: string): Promise<any> {
|
|
5
|
+
const firstIndex = xml.indexOf('<')
|
|
6
|
+
if (firstIndex !== 0) {
|
|
7
|
+
xml = xml.substring(firstIndex, xml.length)
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
return new Promise((resolve) => {
|
|
11
|
+
parseString(xml, { explicitArray: false }, (err, result) => {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
13
|
+
if (err && Object.keys(err).length !== 0) {
|
|
14
|
+
log.warn(JSON.stringify(err))
|
|
15
|
+
}
|
|
16
|
+
return resolve(result)
|
|
17
|
+
})
|
|
18
|
+
})
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export async function JsonToXml (json: any): Promise<string> {
|
|
22
|
+
const builder = new Builder()
|
|
23
|
+
const xml = builder.buildObject(json)
|
|
24
|
+
return xml
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function getNickName (linkList: any, name: string) {
|
|
28
|
+
const otherObjectArray = linkList.filter((link: any) =>
|
|
29
|
+
name.includes(link.$.name),
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
if (!otherObjectArray || otherObjectArray.length === 0) {
|
|
33
|
+
return null
|
|
34
|
+
}
|
|
35
|
+
const otherObject = otherObjectArray[0]
|
|
36
|
+
const inviteeList = otherObject.memberlist.member
|
|
37
|
+
|
|
38
|
+
const inviteeIdList = inviteeList.length
|
|
39
|
+
? inviteeList.map((i: any) => i.nickname)
|
|
40
|
+
: inviteeList.nickname
|
|
41
|
+
return inviteeIdList
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function getUserName (linkList: any, name: string) {
|
|
45
|
+
const otherObjectArray = linkList.filter((link: any) =>
|
|
46
|
+
name.includes(link.$.name),
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
if (!otherObjectArray || otherObjectArray.length === 0) {
|
|
50
|
+
return null
|
|
51
|
+
}
|
|
52
|
+
const otherObject = otherObjectArray[0]
|
|
53
|
+
const inviteeList = otherObject.memberlist.member
|
|
54
|
+
|
|
55
|
+
const inviteeIdList = inviteeList.length
|
|
56
|
+
? inviteeList.map((i: any) => i.username)
|
|
57
|
+
: inviteeList.username
|
|
58
|
+
return inviteeIdList
|
|
59
|
+
}
|
package/src/mod.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env -S node --no-warnings --loader ts-node/esm
|
|
2
|
+
|
|
3
|
+
import { test } from 'tstest'
|
|
4
|
+
|
|
5
|
+
import { packageJson } from './package-json.js'
|
|
6
|
+
|
|
7
|
+
test('Make sure the packageJson is fresh in source code', async t => {
|
|
8
|
+
const keyNum = Object.keys(packageJson).length
|
|
9
|
+
t.equal(keyNum, 0, 'packageJson should be empty in source code, only updated before publish to NPM')
|
|
10
|
+
})
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file will be overwrite when we publish NPM module
|
|
3
|
+
* by scripts/generate_version.ts
|
|
4
|
+
*/
|
|
5
|
+
import type { PackageJson } from 'type-fest'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Huan(202108):
|
|
9
|
+
* The below default values is only for unit testing
|
|
10
|
+
*/
|
|
11
|
+
export const packageJson: PackageJson = {}
|