@juzi/wechaty 1.0.159 → 1.0.161
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/dist/cjs/src/io.js +40 -40
- package/dist/cjs/src/io.js.map +1 -1
- package/dist/cjs/src/package-json.js +4 -4
- package/dist/cjs/src/schemas/logger.d.ts +2 -0
- package/dist/cjs/src/schemas/logger.d.ts.map +1 -0
- package/dist/cjs/src/schemas/logger.js +3 -0
- package/dist/cjs/src/schemas/logger.js.map +1 -0
- package/dist/cjs/src/schemas/mod.d.ts +2 -1
- package/dist/cjs/src/schemas/mod.d.ts.map +1 -1
- package/dist/cjs/src/schemas/mod.js.map +1 -1
- package/dist/cjs/src/schemas/wechaty-options.d.ts +19 -0
- package/dist/cjs/src/schemas/wechaty-options.d.ts.map +1 -1
- package/dist/cjs/src/user-mixins/wechatify.d.ts +23 -0
- package/dist/cjs/src/user-mixins/wechatify.d.ts.map +1 -1
- package/dist/cjs/src/user-mixins/wechatify.js +25 -0
- package/dist/cjs/src/user-mixins/wechatify.js.map +1 -1
- package/dist/cjs/src/user-modules/call.d.ts +4 -0
- package/dist/cjs/src/user-modules/call.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/call.js +6 -7
- package/dist/cjs/src/user-modules/call.js.map +1 -1
- package/dist/cjs/src/user-modules/channel-card.d.ts +2 -0
- package/dist/cjs/src/user-modules/channel-card.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/channel-card.js +2 -3
- package/dist/cjs/src/user-modules/channel-card.js.map +1 -1
- package/dist/cjs/src/user-modules/channel.d.ts +2 -0
- package/dist/cjs/src/user-modules/channel.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/channel.js +2 -3
- package/dist/cjs/src/user-modules/channel.js.map +1 -1
- package/dist/cjs/src/user-modules/chat-history.d.ts +2 -0
- package/dist/cjs/src/user-modules/chat-history.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/chat-history.js +2 -3
- package/dist/cjs/src/user-modules/chat-history.js.map +1 -1
- package/dist/cjs/src/user-modules/consult-card.d.ts +2 -0
- package/dist/cjs/src/user-modules/consult-card.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/consult-card.js +3 -4
- package/dist/cjs/src/user-modules/consult-card.js.map +1 -1
- package/dist/cjs/src/user-modules/contact-self.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/contact-self.js +8 -9
- package/dist/cjs/src/user-modules/contact-self.js.map +1 -1
- package/dist/cjs/src/user-modules/contact.d.ts +2 -0
- package/dist/cjs/src/user-modules/contact.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/contact.js +36 -37
- package/dist/cjs/src/user-modules/contact.js.map +1 -1
- package/dist/cjs/src/user-modules/delay.d.ts +2 -0
- package/dist/cjs/src/user-modules/delay.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/douyin-one-click-phone-collection.d.ts +2 -0
- package/dist/cjs/src/user-modules/douyin-one-click-phone-collection.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/douyin-one-click-phone-collection.js +2 -3
- package/dist/cjs/src/user-modules/douyin-one-click-phone-collection.js.map +1 -1
- package/dist/cjs/src/user-modules/favorite.d.ts +21 -0
- package/dist/cjs/src/user-modules/favorite.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/favorite.js +1 -21
- package/dist/cjs/src/user-modules/favorite.js.map +1 -1
- package/dist/cjs/src/user-modules/friendship.d.ts +2 -0
- package/dist/cjs/src/user-modules/friendship.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/friendship.js +11 -12
- package/dist/cjs/src/user-modules/friendship.js.map +1 -1
- package/dist/cjs/src/user-modules/im-specific.d.ts +2 -0
- package/dist/cjs/src/user-modules/im-specific.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/im-specific.js +1 -2
- package/dist/cjs/src/user-modules/im-specific.js.map +1 -1
- package/dist/cjs/src/user-modules/image.d.ts +22 -0
- package/dist/cjs/src/user-modules/image.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/image.js +5 -6
- package/dist/cjs/src/user-modules/image.js.map +1 -1
- package/dist/cjs/src/user-modules/location.d.ts +2 -0
- package/dist/cjs/src/user-modules/location.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/location.js +2 -3
- package/dist/cjs/src/user-modules/location.js.map +1 -1
- package/dist/cjs/src/user-modules/message.d.ts +2 -0
- package/dist/cjs/src/user-modules/message.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/message.js +55 -55
- package/dist/cjs/src/user-modules/message.js.map +1 -1
- package/dist/cjs/src/user-modules/mini-program.d.ts +2 -0
- package/dist/cjs/src/user-modules/mini-program.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/mini-program.js +2 -3
- package/dist/cjs/src/user-modules/mini-program.js.map +1 -1
- package/dist/cjs/src/user-modules/moment.d.ts +21 -0
- package/dist/cjs/src/user-modules/moment.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/moment.js +5 -25
- package/dist/cjs/src/user-modules/moment.js.map +1 -1
- package/dist/cjs/src/user-modules/money.d.ts +2 -0
- package/dist/cjs/src/user-modules/money.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/post.d.ts +2 -0
- package/dist/cjs/src/user-modules/post.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/post.js +25 -25
- package/dist/cjs/src/user-modules/post.js.map +1 -1
- package/dist/cjs/src/user-modules/premium-online-appointment-card.d.ts +2 -0
- package/dist/cjs/src/user-modules/premium-online-appointment-card.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/premium-online-appointment-card.js +2 -3
- package/dist/cjs/src/user-modules/premium-online-appointment-card.js.map +1 -1
- package/dist/cjs/src/user-modules/room-invitation.d.ts +2 -0
- package/dist/cjs/src/user-modules/room-invitation.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/room-invitation.js +10 -11
- package/dist/cjs/src/user-modules/room-invitation.js.map +1 -1
- package/dist/cjs/src/user-modules/room.d.ts +2 -0
- package/dist/cjs/src/user-modules/room.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/room.js +43 -43
- package/dist/cjs/src/user-modules/room.js.map +1 -1
- package/dist/cjs/src/user-modules/tag-group.d.ts +2 -0
- package/dist/cjs/src/user-modules/tag-group.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/tag-group.js +13 -14
- package/dist/cjs/src/user-modules/tag-group.js.map +1 -1
- package/dist/cjs/src/user-modules/tag.d.ts +2 -0
- package/dist/cjs/src/user-modules/tag.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/tag.js +21 -22
- package/dist/cjs/src/user-modules/tag.js.map +1 -1
- package/dist/cjs/src/user-modules/url-link.d.ts +2 -0
- package/dist/cjs/src/user-modules/url-link.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/url-link.js +2 -3
- package/dist/cjs/src/user-modules/url-link.js.map +1 -1
- package/dist/cjs/src/user-modules/voice.d.ts +2 -0
- package/dist/cjs/src/user-modules/voice.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/voice.js +8 -9
- package/dist/cjs/src/user-modules/voice.js.map +1 -1
- package/dist/cjs/src/user-modules/wecom.d.ts +3 -1
- package/dist/cjs/src/user-modules/wecom.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/wecom.js +2 -3
- package/dist/cjs/src/user-modules/wecom.js.map +1 -1
- package/dist/cjs/src/user-modules/wxxd-order.d.ts +2 -0
- package/dist/cjs/src/user-modules/wxxd-order.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/wxxd-order.js +9 -10
- package/dist/cjs/src/user-modules/wxxd-order.js.map +1 -1
- package/dist/cjs/src/user-modules/wxxd-product.d.ts +2 -0
- package/dist/cjs/src/user-modules/wxxd-product.d.ts.map +1 -1
- package/dist/cjs/src/user-modules/wxxd-product.js +6 -7
- package/dist/cjs/src/user-modules/wxxd-product.js.map +1 -1
- package/dist/cjs/src/wechaty/wechaty-base.d.ts +21 -37
- package/dist/cjs/src/wechaty/wechaty-base.d.ts.map +1 -1
- package/dist/cjs/src/wechaty/wechaty-base.js +17 -17
- package/dist/cjs/src/wechaty/wechaty-base.js.map +1 -1
- package/dist/cjs/src/wechaty/wechaty-skeleton.d.ts +15 -4
- package/dist/cjs/src/wechaty/wechaty-skeleton.d.ts.map +1 -1
- package/dist/cjs/src/wechaty/wechaty-skeleton.js +17 -6
- package/dist/cjs/src/wechaty/wechaty-skeleton.js.map +1 -1
- package/dist/cjs/src/wechaty-mixins/gerror-mixin.d.ts +3 -2
- package/dist/cjs/src/wechaty-mixins/gerror-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/io-mixin.d.ts +12 -6
- package/dist/cjs/src/wechaty-mixins/io-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/io-mixin.js +8 -8
- package/dist/cjs/src/wechaty-mixins/io-mixin.js.map +1 -1
- package/dist/cjs/src/wechaty-mixins/login-mixin.d.ts +53 -19
- package/dist/cjs/src/wechaty-mixins/login-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/login-mixin.js +5 -5
- package/dist/cjs/src/wechaty-mixins/login-mixin.js.map +1 -1
- package/dist/cjs/src/wechaty-mixins/misc-mixin.d.ts +15 -10
- package/dist/cjs/src/wechaty-mixins/misc-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/misc-mixin.js +1 -1
- package/dist/cjs/src/wechaty-mixins/misc-mixin.js.map +1 -1
- package/dist/cjs/src/wechaty-mixins/plugin-mixin.d.ts +18 -12
- package/dist/cjs/src/wechaty-mixins/plugin-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/plugin-mixin.js +5 -5
- package/dist/cjs/src/wechaty-mixins/plugin-mixin.js.map +1 -1
- package/dist/cjs/src/wechaty-mixins/puppet-mixin.d.ts +16 -34
- package/dist/cjs/src/wechaty-mixins/puppet-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/puppet-mixin.js +90 -90
- package/dist/cjs/src/wechaty-mixins/puppet-mixin.js.map +1 -1
- package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.d.ts +3 -2
- package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.d.ts.map +1 -1
- package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.js +4 -4
- package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.js.map +1 -1
- package/dist/esm/src/io.js +40 -40
- package/dist/esm/src/io.js.map +1 -1
- package/dist/esm/src/package-json.js +4 -4
- package/dist/esm/src/schemas/logger.d.ts +2 -0
- package/dist/esm/src/schemas/logger.d.ts.map +1 -0
- package/dist/esm/src/schemas/logger.js +2 -0
- package/dist/esm/src/schemas/logger.js.map +1 -0
- package/dist/esm/src/schemas/mod.d.ts +2 -1
- package/dist/esm/src/schemas/mod.d.ts.map +1 -1
- package/dist/esm/src/schemas/mod.js.map +1 -1
- package/dist/esm/src/schemas/wechaty-options.d.ts +19 -0
- package/dist/esm/src/schemas/wechaty-options.d.ts.map +1 -1
- package/dist/esm/src/user-mixins/wechatify.d.ts +23 -0
- package/dist/esm/src/user-mixins/wechatify.d.ts.map +1 -1
- package/dist/esm/src/user-mixins/wechatify.js +25 -0
- package/dist/esm/src/user-mixins/wechatify.js.map +1 -1
- package/dist/esm/src/user-modules/call.d.ts +4 -0
- package/dist/esm/src/user-modules/call.d.ts.map +1 -1
- package/dist/esm/src/user-modules/call.js +6 -7
- package/dist/esm/src/user-modules/call.js.map +1 -1
- package/dist/esm/src/user-modules/channel-card.d.ts +2 -0
- package/dist/esm/src/user-modules/channel-card.d.ts.map +1 -1
- package/dist/esm/src/user-modules/channel-card.js +2 -3
- package/dist/esm/src/user-modules/channel-card.js.map +1 -1
- package/dist/esm/src/user-modules/channel.d.ts +2 -0
- package/dist/esm/src/user-modules/channel.d.ts.map +1 -1
- package/dist/esm/src/user-modules/channel.js +2 -3
- package/dist/esm/src/user-modules/channel.js.map +1 -1
- package/dist/esm/src/user-modules/chat-history.d.ts +2 -0
- package/dist/esm/src/user-modules/chat-history.d.ts.map +1 -1
- package/dist/esm/src/user-modules/chat-history.js +2 -3
- package/dist/esm/src/user-modules/chat-history.js.map +1 -1
- package/dist/esm/src/user-modules/consult-card.d.ts +2 -0
- package/dist/esm/src/user-modules/consult-card.d.ts.map +1 -1
- package/dist/esm/src/user-modules/consult-card.js +3 -4
- package/dist/esm/src/user-modules/consult-card.js.map +1 -1
- package/dist/esm/src/user-modules/contact-self.d.ts.map +1 -1
- package/dist/esm/src/user-modules/contact-self.js +8 -9
- package/dist/esm/src/user-modules/contact-self.js.map +1 -1
- package/dist/esm/src/user-modules/contact.d.ts +2 -0
- package/dist/esm/src/user-modules/contact.d.ts.map +1 -1
- package/dist/esm/src/user-modules/contact.js +36 -37
- package/dist/esm/src/user-modules/contact.js.map +1 -1
- package/dist/esm/src/user-modules/delay.d.ts +2 -0
- package/dist/esm/src/user-modules/delay.d.ts.map +1 -1
- package/dist/esm/src/user-modules/douyin-one-click-phone-collection.d.ts +2 -0
- package/dist/esm/src/user-modules/douyin-one-click-phone-collection.d.ts.map +1 -1
- package/dist/esm/src/user-modules/douyin-one-click-phone-collection.js +2 -3
- package/dist/esm/src/user-modules/douyin-one-click-phone-collection.js.map +1 -1
- package/dist/esm/src/user-modules/favorite.d.ts +21 -0
- package/dist/esm/src/user-modules/favorite.d.ts.map +1 -1
- package/dist/esm/src/user-modules/favorite.js +1 -21
- package/dist/esm/src/user-modules/favorite.js.map +1 -1
- package/dist/esm/src/user-modules/friendship.d.ts +2 -0
- package/dist/esm/src/user-modules/friendship.d.ts.map +1 -1
- package/dist/esm/src/user-modules/friendship.js +11 -12
- package/dist/esm/src/user-modules/friendship.js.map +1 -1
- package/dist/esm/src/user-modules/im-specific.d.ts +2 -0
- package/dist/esm/src/user-modules/im-specific.d.ts.map +1 -1
- package/dist/esm/src/user-modules/im-specific.js +1 -2
- package/dist/esm/src/user-modules/im-specific.js.map +1 -1
- package/dist/esm/src/user-modules/image.d.ts +22 -0
- package/dist/esm/src/user-modules/image.d.ts.map +1 -1
- package/dist/esm/src/user-modules/image.js +5 -6
- package/dist/esm/src/user-modules/image.js.map +1 -1
- package/dist/esm/src/user-modules/location.d.ts +2 -0
- package/dist/esm/src/user-modules/location.d.ts.map +1 -1
- package/dist/esm/src/user-modules/location.js +2 -3
- package/dist/esm/src/user-modules/location.js.map +1 -1
- package/dist/esm/src/user-modules/message.d.ts +2 -0
- package/dist/esm/src/user-modules/message.d.ts.map +1 -1
- package/dist/esm/src/user-modules/message.js +56 -56
- package/dist/esm/src/user-modules/message.js.map +1 -1
- package/dist/esm/src/user-modules/mini-program.d.ts +2 -0
- package/dist/esm/src/user-modules/mini-program.d.ts.map +1 -1
- package/dist/esm/src/user-modules/mini-program.js +2 -3
- package/dist/esm/src/user-modules/mini-program.js.map +1 -1
- package/dist/esm/src/user-modules/moment.d.ts +21 -0
- package/dist/esm/src/user-modules/moment.d.ts.map +1 -1
- package/dist/esm/src/user-modules/moment.js +5 -25
- package/dist/esm/src/user-modules/moment.js.map +1 -1
- package/dist/esm/src/user-modules/money.d.ts +2 -0
- package/dist/esm/src/user-modules/money.d.ts.map +1 -1
- package/dist/esm/src/user-modules/post.d.ts +2 -0
- package/dist/esm/src/user-modules/post.d.ts.map +1 -1
- package/dist/esm/src/user-modules/post.js +25 -25
- package/dist/esm/src/user-modules/post.js.map +1 -1
- package/dist/esm/src/user-modules/premium-online-appointment-card.d.ts +2 -0
- package/dist/esm/src/user-modules/premium-online-appointment-card.d.ts.map +1 -1
- package/dist/esm/src/user-modules/premium-online-appointment-card.js +2 -3
- package/dist/esm/src/user-modules/premium-online-appointment-card.js.map +1 -1
- package/dist/esm/src/user-modules/room-invitation.d.ts +2 -0
- package/dist/esm/src/user-modules/room-invitation.d.ts.map +1 -1
- package/dist/esm/src/user-modules/room-invitation.js +10 -11
- package/dist/esm/src/user-modules/room-invitation.js.map +1 -1
- package/dist/esm/src/user-modules/room.d.ts +2 -0
- package/dist/esm/src/user-modules/room.d.ts.map +1 -1
- package/dist/esm/src/user-modules/room.js +44 -44
- package/dist/esm/src/user-modules/room.js.map +1 -1
- package/dist/esm/src/user-modules/tag-group.d.ts +2 -0
- package/dist/esm/src/user-modules/tag-group.d.ts.map +1 -1
- package/dist/esm/src/user-modules/tag-group.js +13 -14
- package/dist/esm/src/user-modules/tag-group.js.map +1 -1
- package/dist/esm/src/user-modules/tag.d.ts +2 -0
- package/dist/esm/src/user-modules/tag.d.ts.map +1 -1
- package/dist/esm/src/user-modules/tag.js +21 -22
- package/dist/esm/src/user-modules/tag.js.map +1 -1
- package/dist/esm/src/user-modules/url-link.d.ts +2 -0
- package/dist/esm/src/user-modules/url-link.d.ts.map +1 -1
- package/dist/esm/src/user-modules/url-link.js +2 -3
- package/dist/esm/src/user-modules/url-link.js.map +1 -1
- package/dist/esm/src/user-modules/voice.d.ts +2 -0
- package/dist/esm/src/user-modules/voice.d.ts.map +1 -1
- package/dist/esm/src/user-modules/voice.js +8 -9
- package/dist/esm/src/user-modules/voice.js.map +1 -1
- package/dist/esm/src/user-modules/wecom.d.ts +3 -1
- package/dist/esm/src/user-modules/wecom.d.ts.map +1 -1
- package/dist/esm/src/user-modules/wecom.js +2 -3
- package/dist/esm/src/user-modules/wecom.js.map +1 -1
- package/dist/esm/src/user-modules/wxxd-order.d.ts +2 -0
- package/dist/esm/src/user-modules/wxxd-order.d.ts.map +1 -1
- package/dist/esm/src/user-modules/wxxd-order.js +9 -10
- package/dist/esm/src/user-modules/wxxd-order.js.map +1 -1
- package/dist/esm/src/user-modules/wxxd-product.d.ts +2 -0
- package/dist/esm/src/user-modules/wxxd-product.d.ts.map +1 -1
- package/dist/esm/src/user-modules/wxxd-product.js +6 -7
- package/dist/esm/src/user-modules/wxxd-product.js.map +1 -1
- package/dist/esm/src/wechaty/wechaty-base.d.ts +21 -37
- package/dist/esm/src/wechaty/wechaty-base.d.ts.map +1 -1
- package/dist/esm/src/wechaty/wechaty-base.js +17 -17
- package/dist/esm/src/wechaty/wechaty-base.js.map +1 -1
- package/dist/esm/src/wechaty/wechaty-skeleton.d.ts +15 -4
- package/dist/esm/src/wechaty/wechaty-skeleton.d.ts.map +1 -1
- package/dist/esm/src/wechaty/wechaty-skeleton.js +17 -6
- package/dist/esm/src/wechaty/wechaty-skeleton.js.map +1 -1
- package/dist/esm/src/wechaty-mixins/gerror-mixin.d.ts +3 -2
- package/dist/esm/src/wechaty-mixins/gerror-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/io-mixin.d.ts +12 -6
- package/dist/esm/src/wechaty-mixins/io-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/io-mixin.js +8 -8
- package/dist/esm/src/wechaty-mixins/io-mixin.js.map +1 -1
- package/dist/esm/src/wechaty-mixins/login-mixin.d.ts +53 -19
- package/dist/esm/src/wechaty-mixins/login-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/login-mixin.js +5 -5
- package/dist/esm/src/wechaty-mixins/login-mixin.js.map +1 -1
- package/dist/esm/src/wechaty-mixins/misc-mixin.d.ts +15 -10
- package/dist/esm/src/wechaty-mixins/misc-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/misc-mixin.js +1 -1
- package/dist/esm/src/wechaty-mixins/misc-mixin.js.map +1 -1
- package/dist/esm/src/wechaty-mixins/plugin-mixin.d.ts +18 -12
- package/dist/esm/src/wechaty-mixins/plugin-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/plugin-mixin.js +5 -5
- package/dist/esm/src/wechaty-mixins/plugin-mixin.js.map +1 -1
- package/dist/esm/src/wechaty-mixins/puppet-mixin.d.ts +16 -34
- package/dist/esm/src/wechaty-mixins/puppet-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/puppet-mixin.js +90 -90
- package/dist/esm/src/wechaty-mixins/puppet-mixin.js.map +1 -1
- package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.d.ts +3 -2
- package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.d.ts.map +1 -1
- package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.js +4 -4
- package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.js.map +1 -1
- package/package.json +3 -3
- package/src/io.ts +40 -40
- package/src/package-json.ts +4 -4
- package/src/schemas/logger.ts +1 -0
- package/src/schemas/mod.ts +4 -0
- package/src/schemas/wechaty-options.ts +21 -0
- package/src/user-mixins/wechatify.ts +26 -0
- package/src/user-modules/call.ts +6 -7
- package/src/user-modules/channel-card.ts +2 -3
- package/src/user-modules/channel.ts +2 -3
- package/src/user-modules/chat-history.ts +2 -3
- package/src/user-modules/consult-card.ts +3 -5
- package/src/user-modules/contact-self.ts +8 -11
- package/src/user-modules/contact.ts +36 -40
- package/src/user-modules/douyin-one-click-phone-collection.ts +2 -3
- package/src/user-modules/favorite.ts +1 -2
- package/src/user-modules/friendship.ts +11 -12
- package/src/user-modules/im-specific.ts +1 -2
- package/src/user-modules/image.ts +5 -6
- package/src/user-modules/location.ts +2 -3
- package/src/user-modules/message.ts +55 -56
- package/src/user-modules/mini-program.ts +2 -3
- package/src/user-modules/moment.ts +5 -6
- package/src/user-modules/post.ts +25 -25
- package/src/user-modules/premium-online-appointment-card.ts +2 -3
- package/src/user-modules/room-invitation.ts +10 -11
- package/src/user-modules/room.ts +43 -44
- package/src/user-modules/tag-group.ts +13 -14
- package/src/user-modules/tag.ts +21 -22
- package/src/user-modules/url-link.ts +2 -3
- package/src/user-modules/voice.ts +8 -9
- package/src/user-modules/wecom.ts +3 -3
- package/src/user-modules/wxxd-order.ts +9 -10
- package/src/user-modules/wxxd-product.ts +6 -7
- package/src/wechaty/wechaty-base.ts +17 -17
- package/src/wechaty/wechaty-skeleton.ts +21 -8
- package/src/wechaty-mixins/io-mixin.ts +8 -8
- package/src/wechaty-mixins/login-mixin.ts +5 -5
- package/src/wechaty-mixins/misc-mixin.ts +1 -1
- package/src/wechaty-mixins/plugin-mixin.ts +5 -5
- package/src/wechaty-mixins/puppet-mixin.ts +97 -86
- package/src/wechaty-mixins/wechatify-user-module-mixin.ts +4 -4
- package/dist/cjs/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.d.ts +0 -3
- package/dist/cjs/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.d.ts.map +0 -1
- package/dist/cjs/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.js +0 -121
- package/dist/cjs/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.js.map +0 -1
- package/dist/esm/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.d.ts +0 -3
- package/dist/esm/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.d.ts.map +0 -1
- package/dist/esm/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.js +0 -96
- package/dist/esm/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.js.map +0 -1
- package/src/wechaty-mixins/puppet-mixin-dirty-pool.spec.ts +0 -144
|
@@ -23,7 +23,6 @@ import type {
|
|
|
23
23
|
import type { Constructor } from 'clone-class'
|
|
24
24
|
import type * as PUPPET from '@juzi/wechaty-puppet'
|
|
25
25
|
import { validationMixin } from '../user-mixins/validation.js'
|
|
26
|
-
import { log } from '../config.js'
|
|
27
26
|
|
|
28
27
|
import {
|
|
29
28
|
wechatifyMixinBase,
|
|
@@ -62,7 +61,7 @@ function isUnsupportedError (e: unknown): boolean {
|
|
|
62
61
|
class VoiceMixin extends wechatifyMixinBase() {
|
|
63
62
|
|
|
64
63
|
static create (id: string): VoiceInterface {
|
|
65
|
-
log.verbose('Voice', 'static create(%s)', id)
|
|
64
|
+
this.log.verbose('Voice', 'static create(%s)', id)
|
|
66
65
|
|
|
67
66
|
const voice = new this(id)
|
|
68
67
|
return voice
|
|
@@ -72,7 +71,7 @@ class VoiceMixin extends wechatifyMixinBase() {
|
|
|
72
71
|
public id: string,
|
|
73
72
|
) {
|
|
74
73
|
super()
|
|
75
|
-
log.verbose('Voice', 'constructor(%s)', id)
|
|
74
|
+
this.log.verbose('Voice', 'constructor(%s)', id)
|
|
76
75
|
}
|
|
77
76
|
|
|
78
77
|
/**
|
|
@@ -85,11 +84,11 @@ class VoiceMixin extends wechatifyMixinBase() {
|
|
|
85
84
|
* path. A genuine runtime error from a working `messageVoice` is rethrown.
|
|
86
85
|
*/
|
|
87
86
|
async file (): Promise<FileBoxInterface> {
|
|
88
|
-
log.verbose('Voice', 'file() for id: "%s"', this.id)
|
|
87
|
+
this.log.verbose('Voice', 'file() for id: "%s"', this.id)
|
|
89
88
|
const puppet = this.wechaty.puppet
|
|
90
89
|
// puppet built against an old wechaty-puppet without the method at all
|
|
91
90
|
if (typeof (puppet as { messageVoice?: unknown }).messageVoice !== 'function') {
|
|
92
|
-
log.verbose('Voice', 'file() messageVoice() absent, fallback to messageFile()')
|
|
91
|
+
this.log.verbose('Voice', 'file() messageVoice() absent, fallback to messageFile()')
|
|
93
92
|
return puppet.messageFile(this.id)
|
|
94
93
|
}
|
|
95
94
|
try {
|
|
@@ -99,7 +98,7 @@ class VoiceMixin extends wechatifyMixinBase() {
|
|
|
99
98
|
if (!isUnsupportedError(e)) {
|
|
100
99
|
throw e
|
|
101
100
|
}
|
|
102
|
-
log.verbose('Voice', 'file() messageVoice() unsupported, fallback to messageFile(): %s', (e as Error).message)
|
|
101
|
+
this.log.verbose('Voice', 'file() messageVoice() unsupported, fallback to messageFile(): %s', (e as Error).message)
|
|
103
102
|
const fileBox = await puppet.messageFile(this.id)
|
|
104
103
|
return fileBox
|
|
105
104
|
}
|
|
@@ -119,11 +118,11 @@ class VoiceMixin extends wechatifyMixinBase() {
|
|
|
119
118
|
* does not silently drop `noSpeech` and re-run its own paid ASR).
|
|
120
119
|
*/
|
|
121
120
|
async text (): Promise<PUPPET.payloads.VoiceText> {
|
|
122
|
-
log.verbose('Voice', 'text() for id: "%s"', this.id)
|
|
121
|
+
this.log.verbose('Voice', 'text() for id: "%s"', this.id)
|
|
123
122
|
const puppet = this.wechaty.puppet
|
|
124
123
|
// puppet built against an old wechaty-puppet without the method at all
|
|
125
124
|
if (typeof (puppet as { messageVoiceText?: unknown }).messageVoiceText !== 'function') {
|
|
126
|
-
log.verbose('Voice', 'text() messageVoiceText() absent, fallback to messagePayload().text')
|
|
125
|
+
this.log.verbose('Voice', 'text() messageVoiceText() absent, fallback to messagePayload().text')
|
|
127
126
|
const payload = await puppet.messagePayload(this.id)
|
|
128
127
|
return { text: payload.text || '', noSpeech: false }
|
|
129
128
|
}
|
|
@@ -134,7 +133,7 @@ class VoiceMixin extends wechatifyMixinBase() {
|
|
|
134
133
|
if (!isUnsupportedError(e)) {
|
|
135
134
|
throw e
|
|
136
135
|
}
|
|
137
|
-
log.verbose('Voice', 'text() messageVoiceText() unsupported, fallback to messagePayload().text: %s', (e as Error).message)
|
|
136
|
+
this.log.verbose('Voice', 'text() messageVoiceText() unsupported, fallback to messagePayload().text: %s', (e as Error).message)
|
|
138
137
|
const payload = await puppet.messagePayload(this.id)
|
|
139
138
|
return { text: payload.text || '', noSpeech: false }
|
|
140
139
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { types } from '@juzi/wechaty-puppet'
|
|
2
2
|
import type { Constructor } from 'clone-class'
|
|
3
3
|
|
|
4
4
|
import { validationMixin } from '../user-mixins/validation.js'
|
|
@@ -41,7 +41,7 @@ class WecomMixin extends wechatifyMixinBase() {
|
|
|
41
41
|
const filteredRoomIds = Array.from(rawRoomIdSet).filter(id => !actualRoomIdSet.has(id))
|
|
42
42
|
|
|
43
43
|
if (filteredRoomIds.length) {
|
|
44
|
-
log.warn(`these rooms cannot be applied with anti-spam strategy: ${filteredRoomIds}`)
|
|
44
|
+
this.log.warn(`these rooms cannot be applied with anti-spam strategy: ${filteredRoomIds}`)
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
if (actualRoomIdSet.size) {
|
|
@@ -58,7 +58,7 @@ class WecomMixin extends wechatifyMixinBase() {
|
|
|
58
58
|
*/
|
|
59
59
|
constructor () {
|
|
60
60
|
super()
|
|
61
|
-
log.verbose('Wecom', 'constructor()')
|
|
61
|
+
this.log.verbose('Wecom', 'constructor()')
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
}
|
|
@@ -2,7 +2,6 @@ import type { Constructor } from 'clone-class'
|
|
|
2
2
|
import type { PaginationRequest } from '@juzi/wechaty-puppet/filters'
|
|
3
3
|
import * as PUPPET from '@juzi/wechaty-puppet'
|
|
4
4
|
|
|
5
|
-
import { log } from '../config.js'
|
|
6
5
|
import { poolifyMixin } from '../user-mixins/poolify.js'
|
|
7
6
|
import { validationMixin } from '../user-mixins/validation.js'
|
|
8
7
|
import { wechatifyMixin } from '../user-mixins/wechatify.js'
|
|
@@ -26,14 +25,14 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
26
25
|
public readonly id: string,
|
|
27
26
|
) {
|
|
28
27
|
super()
|
|
29
|
-
log.silly('WxxdOrder', 'constructor(%s)', id)
|
|
28
|
+
this.log.silly('WxxdOrder', 'constructor(%s)', id)
|
|
30
29
|
}
|
|
31
30
|
|
|
32
31
|
/**
|
|
33
32
|
* List all orders
|
|
34
33
|
*/
|
|
35
34
|
static async list (query: PaginationRequest) {
|
|
36
|
-
log.verbose('WxxdOrder', 'list(%s)', JSON.stringify(query))
|
|
35
|
+
this.log.verbose('WxxdOrder', 'list(%s)', JSON.stringify(query))
|
|
37
36
|
|
|
38
37
|
return await this.wechaty.puppet.listWxxdOrders(query)
|
|
39
38
|
}
|
|
@@ -44,7 +43,7 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
44
43
|
static async find (
|
|
45
44
|
query: string | { id: string },
|
|
46
45
|
): Promise<WxxdOrderInterface | undefined> {
|
|
47
|
-
log.verbose('WxxdOrder', 'find(%s)', JSON.stringify(query))
|
|
46
|
+
this.log.verbose('WxxdOrder', 'find(%s)', JSON.stringify(query))
|
|
48
47
|
|
|
49
48
|
const id = typeof query === 'string' ? query : query.id
|
|
50
49
|
|
|
@@ -68,7 +67,7 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
68
67
|
* Send delivery for an order
|
|
69
68
|
*/
|
|
70
69
|
static async deliverySend (orderId: string, deliveryId: string, waybillId: string) {
|
|
71
|
-
log.verbose('WxxdOrder', 'deliverySend(%s, %s, %s)', orderId, deliveryId, waybillId)
|
|
70
|
+
this.log.verbose('WxxdOrder', 'deliverySend(%s, %s, %s)', orderId, deliveryId, waybillId)
|
|
72
71
|
return this.wechaty.puppet.wxxdOrderDeliverySend({ orderId, deliveryId, waybillId })
|
|
73
72
|
}
|
|
74
73
|
|
|
@@ -76,7 +75,7 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
76
75
|
* Generate after sale order
|
|
77
76
|
*/
|
|
78
77
|
static async genAfterSaleOrder (orderId: string, reason: string) {
|
|
79
|
-
log.verbose('WxxdOrder', 'genAfterSaleOrder(%s, %s)', orderId, reason)
|
|
78
|
+
this.log.verbose('WxxdOrder', 'genAfterSaleOrder(%s, %s)', orderId, reason)
|
|
80
79
|
return this.wechaty.puppet.wxxdOrderGenAfterSaleOrder({ orderId, reason })
|
|
81
80
|
}
|
|
82
81
|
|
|
@@ -84,7 +83,7 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
84
83
|
* Update order merchant notes
|
|
85
84
|
*/
|
|
86
85
|
static async updateWxxdMerchantnotes (orderId: string, merchantNotes: string) {
|
|
87
|
-
log.verbose('WxxdOrder', 'updateWxxdMerchantnotes(%s, %s)', orderId, merchantNotes)
|
|
86
|
+
this.log.verbose('WxxdOrder', 'updateWxxdMerchantnotes(%s, %s)', orderId, merchantNotes)
|
|
88
87
|
return this.wechaty.puppet.updateWxxdMerchantnotes(orderId, merchantNotes)
|
|
89
88
|
}
|
|
90
89
|
|
|
@@ -93,10 +92,10 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
93
92
|
}
|
|
94
93
|
|
|
95
94
|
async ready (forceSync = false): Promise<void> {
|
|
96
|
-
log.silly('WxxdOrder', 'ready() @ %s with id="%s"', this.wechaty.puppet, this.id)
|
|
95
|
+
this.log.silly('WxxdOrder', 'ready() @ %s with id="%s"', this.wechaty.puppet, this.id)
|
|
97
96
|
|
|
98
97
|
if (!forceSync && this.isReady()) {
|
|
99
|
-
log.silly('WxxdOrder', 'ready() isReady() true')
|
|
98
|
+
this.log.silly('WxxdOrder', 'ready() isReady() true')
|
|
100
99
|
return
|
|
101
100
|
}
|
|
102
101
|
|
|
@@ -104,7 +103,7 @@ class WxxdOrderMixin extends MixinBase {
|
|
|
104
103
|
this.payload = await this.wechaty.puppet.wxxdOrderPayload(this.id)
|
|
105
104
|
} catch (e) {
|
|
106
105
|
this.wechaty.emitError(e)
|
|
107
|
-
log.verbose('WxxdOrder', 'ready() this.wechaty.puppet.wxxdOrderPayload(%s) exception: %s',
|
|
106
|
+
this.log.verbose('WxxdOrder', 'ready() this.wechaty.puppet.wxxdOrderPayload(%s) exception: %s',
|
|
108
107
|
this.id,
|
|
109
108
|
(e as Error).message,
|
|
110
109
|
)
|
|
@@ -2,7 +2,6 @@ import type { Constructor } from 'clone-class'
|
|
|
2
2
|
import type { PaginationRequest } from '@juzi/wechaty-puppet/filters'
|
|
3
3
|
import * as PUPPET from '@juzi/wechaty-puppet'
|
|
4
4
|
|
|
5
|
-
import { log } from '../config.js'
|
|
6
5
|
import { poolifyMixin } from '../user-mixins/poolify.js'
|
|
7
6
|
import { validationMixin } from '../user-mixins/validation.js'
|
|
8
7
|
import { wechatifyMixin } from '../user-mixins/wechatify.js'
|
|
@@ -26,14 +25,14 @@ class WxxdProductMixin extends MixinBase {
|
|
|
26
25
|
public readonly id: string,
|
|
27
26
|
) {
|
|
28
27
|
super()
|
|
29
|
-
log.silly('WxxdProduct', 'constructor(%s)', id)
|
|
28
|
+
this.log.silly('WxxdProduct', 'constructor(%s)', id)
|
|
30
29
|
}
|
|
31
30
|
|
|
32
31
|
/**
|
|
33
32
|
* List all products
|
|
34
33
|
*/
|
|
35
34
|
static async list (query: PaginationRequest) {
|
|
36
|
-
log.verbose('WxxdProduct', 'list(%s)', JSON.stringify(query))
|
|
35
|
+
this.log.verbose('WxxdProduct', 'list(%s)', JSON.stringify(query))
|
|
37
36
|
|
|
38
37
|
return await this.wechaty.puppet.listWxxdProducts(query)
|
|
39
38
|
}
|
|
@@ -44,7 +43,7 @@ class WxxdProductMixin extends MixinBase {
|
|
|
44
43
|
static async find (
|
|
45
44
|
query: string | { id: string },
|
|
46
45
|
): Promise<WxxdProductInterface | undefined> {
|
|
47
|
-
log.verbose('WxxdProduct', 'find(%s)', JSON.stringify(query))
|
|
46
|
+
this.log.verbose('WxxdProduct', 'find(%s)', JSON.stringify(query))
|
|
48
47
|
|
|
49
48
|
const id = typeof query === 'string' ? query : query.id
|
|
50
49
|
|
|
@@ -69,10 +68,10 @@ class WxxdProductMixin extends MixinBase {
|
|
|
69
68
|
}
|
|
70
69
|
|
|
71
70
|
async ready (forceSync = false): Promise<void> {
|
|
72
|
-
log.silly('WxxdProduct', 'ready() @ %s with id="%s"', this.wechaty.puppet, this.id)
|
|
71
|
+
this.log.silly('WxxdProduct', 'ready() @ %s with id="%s"', this.wechaty.puppet, this.id)
|
|
73
72
|
|
|
74
73
|
if (!forceSync && this.isReady()) {
|
|
75
|
-
log.silly('WxxdProduct', 'ready() isReady() true')
|
|
74
|
+
this.log.silly('WxxdProduct', 'ready() isReady() true')
|
|
76
75
|
return
|
|
77
76
|
}
|
|
78
77
|
|
|
@@ -80,7 +79,7 @@ class WxxdProductMixin extends MixinBase {
|
|
|
80
79
|
this.payload = await this.wechaty.puppet.wxxdProductPayload(this.id)
|
|
81
80
|
} catch (e) {
|
|
82
81
|
this.wechaty.emitError(e)
|
|
83
|
-
log.verbose('WxxdProduct', 'ready() this.wechaty.puppet.wxxdProductPayload(%s) exception: %s',
|
|
82
|
+
this.log.verbose('WxxdProduct', 'ready() this.wechaty.puppet.wxxdProductPayload(%s) exception: %s',
|
|
84
83
|
this.id,
|
|
85
84
|
(e as Error).message,
|
|
86
85
|
)
|
|
@@ -169,41 +169,41 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
169
169
|
override __options: WechatyOptions = {},
|
|
170
170
|
) {
|
|
171
171
|
super(__options)
|
|
172
|
-
log.verbose('Wechaty', 'constructor()')
|
|
172
|
+
this.log.verbose('Wechaty', 'constructor()')
|
|
173
173
|
|
|
174
174
|
this.__memory = this.__options.memory
|
|
175
175
|
this.wechaty = this
|
|
176
176
|
}
|
|
177
177
|
|
|
178
178
|
override async start (): Promise<void> {
|
|
179
|
-
log.verbose('Wechaty', 'start()')
|
|
179
|
+
this.log.verbose('Wechaty', 'start()')
|
|
180
180
|
await this.init()
|
|
181
181
|
return super.start()
|
|
182
182
|
}
|
|
183
183
|
|
|
184
184
|
override async onStart (): Promise<void> {
|
|
185
|
-
log.verbose('Wechaty', 'onStart()')
|
|
185
|
+
this.log.verbose('Wechaty', 'onStart()')
|
|
186
186
|
|
|
187
|
-
log.verbose('Wechaty', '<%s>(%s) onStart() v%s is starting...',
|
|
187
|
+
this.log.verbose('Wechaty', '<%s>(%s) onStart() v%s is starting...',
|
|
188
188
|
this.__options.puppet || config.systemPuppetName(),
|
|
189
189
|
this.__options.name || '',
|
|
190
190
|
this.version(),
|
|
191
191
|
)
|
|
192
|
-
log.verbose('Wechaty', 'id: %s', this.id)
|
|
192
|
+
this.log.verbose('Wechaty', 'id: %s', this.id)
|
|
193
193
|
|
|
194
194
|
const lifeTimer = setInterval(() => {
|
|
195
|
-
log.silly('Wechaty', 'onStart() setInterval() this timer is to keep Wechaty running...')
|
|
195
|
+
this.log.silly('Wechaty', 'onStart() setInterval() this timer is to keep Wechaty running...')
|
|
196
196
|
}, 1000 * 60 * 60)
|
|
197
197
|
this._stopCallbackList.push(() => clearInterval(lifeTimer))
|
|
198
198
|
|
|
199
199
|
this.emit('start')
|
|
200
|
-
log.verbose('Wechaty', 'onStart() ... done')
|
|
200
|
+
this.log.verbose('Wechaty', 'onStart() ... done')
|
|
201
201
|
}
|
|
202
202
|
|
|
203
203
|
override async onStop (): Promise<void> {
|
|
204
|
-
log.verbose('Wechaty', 'onStop()')
|
|
204
|
+
this.log.verbose('Wechaty', 'onStop()')
|
|
205
205
|
|
|
206
|
-
log.verbose('Wechaty', '<%s> onStop() v%s is stopping ...',
|
|
206
|
+
this.log.verbose('Wechaty', '<%s> onStop() v%s is stopping ...',
|
|
207
207
|
this.__options.puppet || config.systemPuppetName(),
|
|
208
208
|
this.version(),
|
|
209
209
|
)
|
|
@@ -213,7 +213,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
213
213
|
this._stopCallbackList.length = 0
|
|
214
214
|
|
|
215
215
|
this.emit('stop')
|
|
216
|
-
log.verbose('Wechaty', 'onStop() ... done')
|
|
216
|
+
this.log.verbose('Wechaty', 'onStop() ... done')
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
/**
|
|
@@ -273,7 +273,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
273
273
|
async say (
|
|
274
274
|
sayable: Sayable,
|
|
275
275
|
): Promise<void> {
|
|
276
|
-
log.verbose('Wechaty', 'say(%s)', sayable)
|
|
276
|
+
this.log.verbose('Wechaty', 'say(%s)', sayable)
|
|
277
277
|
await this.currentUser.say(sayable)
|
|
278
278
|
}
|
|
279
279
|
|
|
@@ -294,7 +294,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
294
294
|
contacts: ContactInterface[],
|
|
295
295
|
options?: { media?: PUPPET.types.CallMediaType },
|
|
296
296
|
): Promise<CallInterface> {
|
|
297
|
-
log.verbose('Wechaty', 'call(%d contacts, %s)', contacts.length, JSON.stringify(options ?? {}))
|
|
297
|
+
this.log.verbose('Wechaty', 'call(%d contacts, %s)', contacts.length, JSON.stringify(options ?? {}))
|
|
298
298
|
|
|
299
299
|
if (contacts.length === 0) {
|
|
300
300
|
throw new Error('Wechaty.call() requires at least one contact')
|
|
@@ -317,7 +317,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
317
317
|
async publish (
|
|
318
318
|
post: PostInterface,
|
|
319
319
|
): Promise<void | PostInterface> {
|
|
320
|
-
log.verbose('Wechaty', 'publish(%s)',
|
|
320
|
+
this.log.verbose('Wechaty', 'publish(%s)',
|
|
321
321
|
(post.payload.sayableList as PUPPET.payloads.Sayable[])
|
|
322
322
|
.map(s => s.type).join(','),
|
|
323
323
|
)
|
|
@@ -331,7 +331,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
331
331
|
async unpublish (
|
|
332
332
|
post: PostInterface,
|
|
333
333
|
): Promise<void> {
|
|
334
|
-
log.verbose('Wechaty', 'unpublish(%s)', post.id)
|
|
334
|
+
this.log.verbose('Wechaty', 'unpublish(%s)', post.id)
|
|
335
335
|
|
|
336
336
|
if (!post.id) {
|
|
337
337
|
throw new Error('cannot unpublish a post without id')
|
|
@@ -346,7 +346,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
346
346
|
id: string,
|
|
347
347
|
code: string,
|
|
348
348
|
): Promise<void> {
|
|
349
|
-
log.verbose('Wechaty', 'enterVerifyCode(%s, %s)', id, code)
|
|
349
|
+
this.log.verbose('Wechaty', 'enterVerifyCode(%s, %s)', id, code)
|
|
350
350
|
|
|
351
351
|
return this.puppet.enterVerifyCode(id, code)
|
|
352
352
|
}
|
|
@@ -354,14 +354,14 @@ class WechatyBase extends mixinBase implements SayableSayer {
|
|
|
354
354
|
async cancelVerifyCode (
|
|
355
355
|
id: string,
|
|
356
356
|
): Promise<void> {
|
|
357
|
-
log.verbose('Wechaty', 'cancelVerifyCode(%s)', id)
|
|
357
|
+
this.log.verbose('Wechaty', 'cancelVerifyCode(%s)', id)
|
|
358
358
|
|
|
359
359
|
return this.puppet.cancelVerifyCode(id)
|
|
360
360
|
}
|
|
361
361
|
|
|
362
362
|
async refreshQrCode (
|
|
363
363
|
): Promise<void> {
|
|
364
|
-
log.verbose('Wechaty', 'refreshQrCode(%s)')
|
|
364
|
+
this.log.verbose('Wechaty', 'refreshQrCode(%s)')
|
|
365
365
|
|
|
366
366
|
if (this.isLoggedIn) {
|
|
367
367
|
throw new Error('cannot refresh qr because bot is logged in')
|
|
@@ -20,19 +20,31 @@
|
|
|
20
20
|
import { MemoryCard } from 'memory-card'
|
|
21
21
|
import { log } from '@juzi/wechaty-puppet'
|
|
22
22
|
import * as UUID from 'uuid'
|
|
23
|
-
import type { Loggable } from 'brolog'
|
|
24
23
|
|
|
25
24
|
import {
|
|
26
25
|
WechatyEventEmitter,
|
|
27
26
|
WechatyEventName,
|
|
28
27
|
} from '../schemas/mod.js'
|
|
29
28
|
|
|
29
|
+
import type { LoggerLike } from '../schemas/logger.js'
|
|
30
30
|
import type { WechatyOptions } from '../schemas/wechaty-options.js'
|
|
31
31
|
|
|
32
32
|
abstract class WechatySkeleton extends WechatyEventEmitter {
|
|
33
33
|
|
|
34
|
-
static readonly log:
|
|
35
|
-
|
|
34
|
+
static readonly log: LoggerLike = log
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Effective logger for this Wechaty instance.
|
|
38
|
+
*
|
|
39
|
+
* Populated in the following order (see puppet-mixin):
|
|
40
|
+
* 1. `puppet.log` — the logger the puppet ended up using
|
|
41
|
+
* (which, when {@link WechatyOptions.logger} is supplied, is
|
|
42
|
+
* the caller's logger).
|
|
43
|
+
* 2. the built-in brolog `log` — hard fallback for the pre-init
|
|
44
|
+
* window and for puppets that have not adopted `puppet.log`.
|
|
45
|
+
*/
|
|
46
|
+
__log: LoggerLike = log
|
|
47
|
+
get log (): LoggerLike { return this.__log }
|
|
36
48
|
|
|
37
49
|
/**
|
|
38
50
|
* the UUID of the Wechaty
|
|
@@ -77,20 +89,20 @@ abstract class WechatySkeleton extends WechatyEventEmitter {
|
|
|
77
89
|
* by skipping the second time initialization.
|
|
78
90
|
*/
|
|
79
91
|
async init (): Promise<void> {
|
|
80
|
-
log.verbose('WechatySkeleton', 'init()')
|
|
92
|
+
this.log.verbose('WechatySkeleton', 'init()')
|
|
81
93
|
|
|
82
94
|
if (!this.__memory) {
|
|
83
95
|
this.__memory = new MemoryCard(this.__options.name)
|
|
84
96
|
try {
|
|
85
97
|
await this.__memory.load()
|
|
86
98
|
} catch (_) {
|
|
87
|
-
log.silly('WechatySkeleton', 'onStart() memory.load() had already loaded')
|
|
99
|
+
this.log.silly('WechatySkeleton', 'onStart() memory.load() had already loaded')
|
|
88
100
|
}
|
|
89
101
|
}
|
|
90
102
|
}
|
|
91
103
|
|
|
92
104
|
async start (): Promise<void> {
|
|
93
|
-
log.verbose('WechatySkeleton', 'start()')
|
|
105
|
+
this.log.verbose('WechatySkeleton', 'start()')
|
|
94
106
|
// no super.start()
|
|
95
107
|
|
|
96
108
|
/**
|
|
@@ -100,12 +112,12 @@ abstract class WechatySkeleton extends WechatyEventEmitter {
|
|
|
100
112
|
}
|
|
101
113
|
|
|
102
114
|
async stop (): Promise<void> {
|
|
103
|
-
log.verbose('WechatySkeleton', 'stop()')
|
|
115
|
+
this.log.verbose('WechatySkeleton', 'stop()')
|
|
104
116
|
// no super.stop()
|
|
105
117
|
}
|
|
106
118
|
|
|
107
119
|
override on (event: WechatyEventName, listener: (...args: any[]) => any): this {
|
|
108
|
-
log.verbose('WechatySkeleton', 'on(%s, listener) registering... listenerCount: %s',
|
|
120
|
+
this.log.verbose('WechatySkeleton', 'on(%s, listener) registering... listenerCount: %s',
|
|
109
121
|
event,
|
|
110
122
|
this.listenerCount(event),
|
|
111
123
|
)
|
|
@@ -117,6 +129,7 @@ abstract class WechatySkeleton extends WechatyEventEmitter {
|
|
|
117
129
|
|
|
118
130
|
type WechatySkeletonProtectedProperty =
|
|
119
131
|
| '__events'
|
|
132
|
+
| '__log'
|
|
120
133
|
| '__memory'
|
|
121
134
|
| '__options'
|
|
122
135
|
| 'memory'
|
|
@@ -36,7 +36,7 @@ const ioMixin = <MixinBase extends typeof WechatySkeleton & GErrorMixin> (mixinB
|
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
override async start (): Promise<void> {
|
|
39
|
-
log.verbose('WechatyIoMixin', 'start()')
|
|
39
|
+
this.log.verbose('WechatyIoMixin', 'start()')
|
|
40
40
|
|
|
41
41
|
await super.start()
|
|
42
42
|
|
|
@@ -48,13 +48,13 @@ const ioMixin = <MixinBase extends typeof WechatySkeleton & GErrorMixin> (mixinB
|
|
|
48
48
|
* Clean the memory leak-ed io (?)
|
|
49
49
|
*/
|
|
50
50
|
if (this.__io) {
|
|
51
|
-
log.error('WechatyIoMixin', 'start() found existing io instance: stopping...')
|
|
51
|
+
this.log.error('WechatyIoMixin', 'start() found existing io instance: stopping...')
|
|
52
52
|
try {
|
|
53
53
|
await this.__io.stop()
|
|
54
54
|
} catch (e) {
|
|
55
55
|
this.emitError(e)
|
|
56
56
|
}
|
|
57
|
-
log.error('WechatyIoMixin', 'start() found existing io instance: stopping... done')
|
|
57
|
+
this.log.error('WechatyIoMixin', 'start() found existing io instance: stopping... done')
|
|
58
58
|
this.__io = undefined
|
|
59
59
|
}
|
|
60
60
|
|
|
@@ -66,13 +66,13 @@ const ioMixin = <MixinBase extends typeof WechatySkeleton & GErrorMixin> (mixinB
|
|
|
66
66
|
wechaty : this as any, // <- FIXME: remove any, Huan(202111)
|
|
67
67
|
})
|
|
68
68
|
|
|
69
|
-
log.verbose('WechatyIoMixin', 'start() starting io ...')
|
|
69
|
+
this.log.verbose('WechatyIoMixin', 'start() starting io ...')
|
|
70
70
|
await this.__io.start()
|
|
71
|
-
log.verbose('WechatyIoMixin', 'start() starting io ... done')
|
|
71
|
+
this.log.verbose('WechatyIoMixin', 'start() starting io ... done')
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
override async stop (): Promise<void> {
|
|
75
|
-
log.verbose('WechatyIoMixin', 'stop()')
|
|
75
|
+
this.log.verbose('WechatyIoMixin', 'stop()')
|
|
76
76
|
|
|
77
77
|
try {
|
|
78
78
|
if (!this.__io) {
|
|
@@ -83,9 +83,9 @@ const ioMixin = <MixinBase extends typeof WechatySkeleton & GErrorMixin> (mixinB
|
|
|
83
83
|
this.__io = undefined
|
|
84
84
|
|
|
85
85
|
try {
|
|
86
|
-
log.verbose('WechatyIoMixin', 'stop() starting io ...')
|
|
86
|
+
this.log.verbose('WechatyIoMixin', 'stop() starting io ...')
|
|
87
87
|
await io.stop()
|
|
88
|
-
log.verbose('WechatyIoMixin', 'stop() starting io ... done')
|
|
88
|
+
this.log.verbose('WechatyIoMixin', 'stop() starting io ... done')
|
|
89
89
|
} catch (e) {
|
|
90
90
|
this.emitError(e)
|
|
91
91
|
}
|
|
@@ -49,7 +49,7 @@ const loginMixin = <MixinBase extends typeof WechatySkeleton & PuppetMixin & GEr
|
|
|
49
49
|
} catch (e) {
|
|
50
50
|
this.emit('error', e)
|
|
51
51
|
|
|
52
|
-
log.warn('WechatyLoginMixin', 'get isLoggedIn puppet instance is not ready yet')
|
|
52
|
+
this.log.warn('WechatyLoginMixin', 'get isLoggedIn puppet instance is not ready yet')
|
|
53
53
|
// https://github.com/wechaty/wechaty/issues/1878
|
|
54
54
|
return false
|
|
55
55
|
}
|
|
@@ -63,7 +63,7 @@ const loginMixin = <MixinBase extends typeof WechatySkeleton & PuppetMixin & GEr
|
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
override async init (): Promise<void> {
|
|
66
|
-
log.verbose('WechatyLoginMixin', 'init()')
|
|
66
|
+
this.log.verbose('WechatyLoginMixin', 'init()')
|
|
67
67
|
await super.init()
|
|
68
68
|
|
|
69
69
|
if (this.__loginMixinInited) {
|
|
@@ -80,7 +80,7 @@ const loginMixin = <MixinBase extends typeof WechatySkeleton & PuppetMixin & GEr
|
|
|
80
80
|
* await bot.logout()
|
|
81
81
|
*/
|
|
82
82
|
async logout (reason?: string): Promise<void> {
|
|
83
|
-
log.verbose('WechatyLoginMixin', 'logout()')
|
|
83
|
+
this.log.verbose('WechatyLoginMixin', 'logout()')
|
|
84
84
|
await this.puppet.logout(reason)
|
|
85
85
|
}
|
|
86
86
|
|
|
@@ -88,7 +88,7 @@ const loginMixin = <MixinBase extends typeof WechatySkeleton & PuppetMixin & GEr
|
|
|
88
88
|
* @deprecated: use `isLoggedIn` property instead. will be removed after Dec 31, 2022
|
|
89
89
|
*/
|
|
90
90
|
logonoff (): boolean {
|
|
91
|
-
log.warn('WechatyLoginMixin', 'logonoff() is deprecated: use `isLoggedIn` property instead.\n%s', new Error().stack)
|
|
91
|
+
this.log.warn('WechatyLoginMixin', 'logonoff() is deprecated: use `isLoggedIn` property instead.\n%s', new Error().stack)
|
|
92
92
|
return this.isLoggedIn
|
|
93
93
|
}
|
|
94
94
|
|
|
@@ -97,7 +97,7 @@ const loginMixin = <MixinBase extends typeof WechatySkeleton & PuppetMixin & GEr
|
|
|
97
97
|
* @deprecated use {@link Wechaty#currentUser} instead
|
|
98
98
|
*/
|
|
99
99
|
userSelf () {
|
|
100
|
-
log.warn('WechatyLoginMixin', 'userSelf() deprecated: use currentUser instead.\n%s',
|
|
100
|
+
this.log.warn('WechatyLoginMixin', 'userSelf() deprecated: use currentUser instead.\n%s',
|
|
101
101
|
new Error().stack,
|
|
102
102
|
)
|
|
103
103
|
return this.currentUser
|
|
@@ -66,7 +66,7 @@ const miscMixin = <MixinBase extends typeof WechatySkeleton & PuppetMixin & GErr
|
|
|
66
66
|
* @private
|
|
67
67
|
*/
|
|
68
68
|
ding (data?: string): void {
|
|
69
|
-
log.silly('WechatyMiscMixin', 'ding(%s)', data || '')
|
|
69
|
+
this.log.silly('WechatyMiscMixin', 'ding(%s)', data || '')
|
|
70
70
|
|
|
71
71
|
try {
|
|
72
72
|
this.puppet.ding(data)
|
|
@@ -58,16 +58,16 @@ const pluginMixin = <MixinBase extends typeof WechatySkeleton & GErrorMixin & Mi
|
|
|
58
58
|
)[]
|
|
59
59
|
): WechatyPluginUninstaller {
|
|
60
60
|
const pluginList = plugins.flat()
|
|
61
|
-
log.verbose('WechatyPluginMixin', 'use() total %d plugins', pluginList.length)
|
|
61
|
+
this.log.verbose('WechatyPluginMixin', 'use() total %d plugins', pluginList.length)
|
|
62
62
|
|
|
63
63
|
const uninstallerList: WechatyPluginUninstaller[] = []
|
|
64
64
|
|
|
65
65
|
for (const plugin of pluginList) {
|
|
66
|
-
log.verbose('WechatyPluginMixin', 'use() installing Plugin %s on Wechaty %s ...', plugin.name, this.name())
|
|
66
|
+
this.log.verbose('WechatyPluginMixin', 'use() installing Plugin %s on Wechaty %s ...', plugin.name, this.name())
|
|
67
67
|
|
|
68
68
|
const uninstaller = plugin(this as any) // <- Huan(202110): TODO: remove any
|
|
69
69
|
if (isWechatyPluginUninstaller(uninstaller)) {
|
|
70
|
-
log.verbose('WechatyPluginMixin', 'use() saving uninstaller for Plugin %s on Wechaty %s ...', plugin.name, this.name())
|
|
70
|
+
this.log.verbose('WechatyPluginMixin', 'use() saving uninstaller for Plugin %s on Wechaty %s ...', plugin.name, this.name())
|
|
71
71
|
uninstallerList.push(uninstaller)
|
|
72
72
|
}
|
|
73
73
|
}
|
|
@@ -76,9 +76,9 @@ const pluginMixin = <MixinBase extends typeof WechatySkeleton & GErrorMixin & Mi
|
|
|
76
76
|
* Return the function to uninstall all plugins
|
|
77
77
|
*/
|
|
78
78
|
return () => uninstallerList.forEach(uninstaller => {
|
|
79
|
-
log.verbose('WechatyPluginMixin', 'use() uninstalling Plugin %s on Wechaty %s ...', uninstaller.name, this.name())
|
|
79
|
+
this.log.verbose('WechatyPluginMixin', 'use() uninstalling Plugin %s on Wechaty %s ...', uninstaller.name, this.name())
|
|
80
80
|
uninstaller()
|
|
81
|
-
log.verbose('WechatyPluginMixin', 'use() uninstalling Plugin %s on Wechaty %s ... done', uninstaller.name, this.name())
|
|
81
|
+
this.log.verbose('WechatyPluginMixin', 'use() uninstalling Plugin %s on Wechaty %s ... done', uninstaller.name, this.name())
|
|
82
82
|
})
|
|
83
83
|
}
|
|
84
84
|
|