@juzi/wechaty 1.0.114 → 1.0.116

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.
Files changed (135) hide show
  1. package/dist/cjs/src/mods/impls.d.ts +3 -3
  2. package/dist/cjs/src/mods/impls.d.ts.map +1 -1
  3. package/dist/cjs/src/mods/impls.js +3 -1
  4. package/dist/cjs/src/mods/impls.js.map +1 -1
  5. package/dist/cjs/src/mods/users.d.ts +1 -1
  6. package/dist/cjs/src/mods/users.d.ts.map +1 -1
  7. package/dist/cjs/src/package-json.js +4 -4
  8. package/dist/cjs/src/sayable/deliver-sayable.d.ts.map +1 -1
  9. package/dist/cjs/src/sayable/deliver-sayable.js +6 -0
  10. package/dist/cjs/src/sayable/deliver-sayable.js.map +1 -1
  11. package/dist/cjs/src/sayable/message-to-sayable.d.ts.map +1 -1
  12. package/dist/cjs/src/sayable/message-to-sayable.js +4 -0
  13. package/dist/cjs/src/sayable/message-to-sayable.js.map +1 -1
  14. package/dist/cjs/src/sayable/payload-to-sayable.d.ts.map +1 -1
  15. package/dist/cjs/src/sayable/payload-to-sayable.js +4 -0
  16. package/dist/cjs/src/sayable/payload-to-sayable.js.map +1 -1
  17. package/dist/cjs/src/sayable/sayable-to-payload.d.ts.map +1 -1
  18. package/dist/cjs/src/sayable/sayable-to-payload.js +6 -0
  19. package/dist/cjs/src/sayable/sayable-to-payload.js.map +1 -1
  20. package/dist/cjs/src/sayable/types.d.ts +2 -2
  21. package/dist/cjs/src/sayable/types.d.ts.map +1 -1
  22. package/dist/cjs/src/sayable/types.js.map +1 -1
  23. package/dist/cjs/src/user-modules/channel-card.d.ts +39 -0
  24. package/dist/cjs/src/user-modules/channel-card.d.ts.map +1 -0
  25. package/dist/cjs/src/user-modules/channel-card.js +57 -0
  26. package/dist/cjs/src/user-modules/channel-card.js.map +1 -0
  27. package/dist/cjs/src/user-modules/channel.d.ts +0 -2
  28. package/dist/cjs/src/user-modules/channel.d.ts.map +1 -1
  29. package/dist/cjs/src/user-modules/channel.js +0 -6
  30. package/dist/cjs/src/user-modules/channel.js.map +1 -1
  31. package/dist/cjs/src/user-modules/consult-card.d.ts +42 -0
  32. package/dist/cjs/src/user-modules/consult-card.d.ts.map +1 -0
  33. package/dist/cjs/src/user-modules/consult-card.js +63 -0
  34. package/dist/cjs/src/user-modules/consult-card.js.map +1 -0
  35. package/dist/cjs/src/user-modules/message.d.ts +4 -0
  36. package/dist/cjs/src/user-modules/message.d.ts.map +1 -1
  37. package/dist/cjs/src/user-modules/message.js +23 -0
  38. package/dist/cjs/src/user-modules/message.js.map +1 -1
  39. package/dist/cjs/src/user-modules/mod.d.ts +5 -3
  40. package/dist/cjs/src/user-modules/mod.d.ts.map +1 -1
  41. package/dist/cjs/src/user-modules/mod.js +5 -1
  42. package/dist/cjs/src/user-modules/mod.js.map +1 -1
  43. package/dist/cjs/src/wechaty/wechaty-base.d.ts +21 -116
  44. package/dist/cjs/src/wechaty/wechaty-base.d.ts.map +1 -1
  45. package/dist/cjs/src/wechaty/wechaty-base.js +1 -1
  46. package/dist/cjs/src/wechaty/wechaty-impl.spec.js +9 -5
  47. package/dist/cjs/src/wechaty/wechaty-impl.spec.js.map +1 -1
  48. package/dist/cjs/src/wechaty-mixins/login-mixin.d.ts +18 -30
  49. package/dist/cjs/src/wechaty-mixins/login-mixin.d.ts.map +1 -1
  50. package/dist/cjs/src/wechaty-mixins/misc-mixin.d.ts +12 -0
  51. package/dist/cjs/src/wechaty-mixins/misc-mixin.d.ts.map +1 -1
  52. package/dist/cjs/src/wechaty-mixins/plugin-mixin.d.ts +16 -12
  53. package/dist/cjs/src/wechaty-mixins/plugin-mixin.d.ts.map +1 -1
  54. package/dist/cjs/src/wechaty-mixins/puppet-mixin.d.ts +28 -2
  55. package/dist/cjs/src/wechaty-mixins/puppet-mixin.d.ts.map +1 -1
  56. package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.d.ts +6 -2
  57. package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.d.ts.map +1 -1
  58. package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.js +6 -0
  59. package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.js.map +1 -1
  60. package/dist/esm/src/mods/impls.d.ts +3 -3
  61. package/dist/esm/src/mods/impls.d.ts.map +1 -1
  62. package/dist/esm/src/mods/impls.js +1 -1
  63. package/dist/esm/src/mods/impls.js.map +1 -1
  64. package/dist/esm/src/mods/users.d.ts +1 -1
  65. package/dist/esm/src/mods/users.d.ts.map +1 -1
  66. package/dist/esm/src/package-json.js +4 -4
  67. package/dist/esm/src/sayable/deliver-sayable.d.ts.map +1 -1
  68. package/dist/esm/src/sayable/deliver-sayable.js +7 -1
  69. package/dist/esm/src/sayable/deliver-sayable.js.map +1 -1
  70. package/dist/esm/src/sayable/message-to-sayable.d.ts.map +1 -1
  71. package/dist/esm/src/sayable/message-to-sayable.js +4 -0
  72. package/dist/esm/src/sayable/message-to-sayable.js.map +1 -1
  73. package/dist/esm/src/sayable/payload-to-sayable.d.ts.map +1 -1
  74. package/dist/esm/src/sayable/payload-to-sayable.js +4 -0
  75. package/dist/esm/src/sayable/payload-to-sayable.js.map +1 -1
  76. package/dist/esm/src/sayable/sayable-to-payload.d.ts.map +1 -1
  77. package/dist/esm/src/sayable/sayable-to-payload.js +7 -1
  78. package/dist/esm/src/sayable/sayable-to-payload.js.map +1 -1
  79. package/dist/esm/src/sayable/types.d.ts +2 -2
  80. package/dist/esm/src/sayable/types.d.ts.map +1 -1
  81. package/dist/esm/src/sayable/types.js.map +1 -1
  82. package/dist/esm/src/user-modules/channel-card.d.ts +39 -0
  83. package/dist/esm/src/user-modules/channel-card.d.ts.map +1 -0
  84. package/dist/esm/src/user-modules/channel-card.js +54 -0
  85. package/dist/esm/src/user-modules/channel-card.js.map +1 -0
  86. package/dist/esm/src/user-modules/channel.d.ts +0 -2
  87. package/dist/esm/src/user-modules/channel.d.ts.map +1 -1
  88. package/dist/esm/src/user-modules/channel.js +0 -6
  89. package/dist/esm/src/user-modules/channel.js.map +1 -1
  90. package/dist/esm/src/user-modules/consult-card.d.ts +42 -0
  91. package/dist/esm/src/user-modules/consult-card.d.ts.map +1 -0
  92. package/dist/esm/src/user-modules/consult-card.js +60 -0
  93. package/dist/esm/src/user-modules/consult-card.js.map +1 -0
  94. package/dist/esm/src/user-modules/message.d.ts +4 -0
  95. package/dist/esm/src/user-modules/message.d.ts.map +1 -1
  96. package/dist/esm/src/user-modules/message.js +23 -0
  97. package/dist/esm/src/user-modules/message.js.map +1 -1
  98. package/dist/esm/src/user-modules/mod.d.ts +5 -3
  99. package/dist/esm/src/user-modules/mod.d.ts.map +1 -1
  100. package/dist/esm/src/user-modules/mod.js +3 -1
  101. package/dist/esm/src/user-modules/mod.js.map +1 -1
  102. package/dist/esm/src/wechaty/wechaty-base.d.ts +21 -116
  103. package/dist/esm/src/wechaty/wechaty-base.d.ts.map +1 -1
  104. package/dist/esm/src/wechaty/wechaty-base.js +1 -1
  105. package/dist/esm/src/wechaty/wechaty-impl.spec.js +9 -5
  106. package/dist/esm/src/wechaty/wechaty-impl.spec.js.map +1 -1
  107. package/dist/esm/src/wechaty-mixins/login-mixin.d.ts +18 -30
  108. package/dist/esm/src/wechaty-mixins/login-mixin.d.ts.map +1 -1
  109. package/dist/esm/src/wechaty-mixins/misc-mixin.d.ts +12 -0
  110. package/dist/esm/src/wechaty-mixins/misc-mixin.d.ts.map +1 -1
  111. package/dist/esm/src/wechaty-mixins/plugin-mixin.d.ts +16 -12
  112. package/dist/esm/src/wechaty-mixins/plugin-mixin.d.ts.map +1 -1
  113. package/dist/esm/src/wechaty-mixins/puppet-mixin.d.ts +28 -2
  114. package/dist/esm/src/wechaty-mixins/puppet-mixin.d.ts.map +1 -1
  115. package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.d.ts +6 -2
  116. package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.d.ts.map +1 -1
  117. package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.js +7 -1
  118. package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.js.map +1 -1
  119. package/package.json +3 -3
  120. package/src/mods/impls.ts +6 -0
  121. package/src/mods/users.ts +2 -0
  122. package/src/package-json.ts +4 -4
  123. package/src/sayable/deliver-sayable.ts +12 -0
  124. package/src/sayable/message-to-sayable.ts +6 -0
  125. package/src/sayable/payload-to-sayable.ts +6 -0
  126. package/src/sayable/sayable-to-payload.ts +6 -0
  127. package/src/sayable/types.ts +4 -0
  128. package/src/user-modules/channel-card.ts +85 -0
  129. package/src/user-modules/channel.ts +0 -8
  130. package/src/user-modules/consult-card.ts +94 -0
  131. package/src/user-modules/message.ts +37 -0
  132. package/src/user-modules/mod.ts +16 -0
  133. package/src/wechaty/wechaty-base.ts +1 -1
  134. package/src/wechaty/wechaty-impl.spec.ts +6 -0
  135. package/src/wechaty-mixins/wechatify-user-module-mixin.ts +12 -0
@@ -0,0 +1,94 @@
1
+ import type * as PUPPET from '@juzi/wechaty-puppet'
2
+
3
+ import type { Constructor } from 'clone-class'
4
+ import { log } from '../config.js'
5
+
6
+ import { validationMixin } from '../user-mixins/validation.js'
7
+
8
+ import {
9
+ wechatifyMixinBase,
10
+ } from '../user-mixins/wechatify.js'
11
+
12
+ class ConsultCardMixin extends wechatifyMixinBase() {
13
+
14
+ /**
15
+ *
16
+ * Create
17
+ *
18
+ */
19
+ static async create (msgType: number, componentType: number, componentId: number): Promise<ConsultCardInterface> {
20
+ log.verbose('ConsultCard', 'create()')
21
+
22
+ const payload: PUPPET.payloads.ConsultCard = {
23
+ msgType,
24
+ componentType,
25
+ componentId,
26
+ }
27
+
28
+ return new this(payload)
29
+ }
30
+
31
+ /*
32
+ * @hideconstructor
33
+ */
34
+ constructor (
35
+ public readonly payload: PUPPET.payloads.ConsultCard,
36
+ ) {
37
+ super()
38
+ log.verbose('ConsultCard', 'constructor()')
39
+ }
40
+
41
+ msgType (): number {
42
+ return this.payload.msgType
43
+ }
44
+
45
+ componentType (): number {
46
+ return this.payload.componentType
47
+ }
48
+
49
+ componentId (): number {
50
+ return this.payload.componentId
51
+ }
52
+
53
+ // 接收/查询时的详细字段
54
+ id (): number | undefined {
55
+ return this.payload.id
56
+ }
57
+
58
+ cardType (): number | undefined {
59
+ return this.payload.cardType
60
+ }
61
+
62
+ name (): string | undefined {
63
+ return this.payload.name
64
+ }
65
+
66
+ content (): string | undefined {
67
+ return this.payload.content
68
+ }
69
+
70
+ status (): number | undefined {
71
+ return this.payload.status
72
+ }
73
+
74
+ statusMsg (): number | undefined {
75
+ return this.payload.statusMsg
76
+ }
77
+
78
+ }
79
+
80
+ class ConsultCardImpl extends validationMixin(ConsultCardMixin)<ConsultCardInterface>() { }
81
+ interface ConsultCardInterface extends ConsultCardImpl { }
82
+
83
+ type ConsultCardConstructor = Constructor<
84
+ ConsultCardInterface,
85
+ typeof ConsultCardImpl
86
+ >
87
+
88
+ export type {
89
+ ConsultCardConstructor,
90
+ ConsultCardInterface,
91
+ }
92
+ export {
93
+ ConsultCardImpl,
94
+ }
@@ -71,6 +71,12 @@ import type {
71
71
  import type {
72
72
  ChannelInterface,
73
73
  } from './channel.js'
74
+ import type {
75
+ ChannelCardInterface,
76
+ } from './channel-card.js'
77
+ import type {
78
+ ConsultCardInterface,
79
+ } from './consult-card.js'
74
80
 
75
81
  import { validationMixin } from '../user-mixins/validation.js'
76
82
  import type { ContactSelfImpl } from './contact-self.js'
@@ -88,6 +94,7 @@ const ALLOW_PREVIEW_TYPES = [
88
94
  PUPPET.types.Message.Video,
89
95
  PUPPET.types.Message.Url,
90
96
  PUPPET.types.Message.Channel,
97
+ PUPPET.types.Message.ChannelCard,
91
98
  PUPPET.types.Message.Post,
92
99
  ]
93
100
 
@@ -1387,6 +1394,36 @@ class MessageMixin extends MixinBase implements SayableSayer {
1387
1394
  return new this.wechaty.Channel(channelPayload)
1388
1395
  }
1389
1396
 
1397
+ public async toChannelCard (): Promise<ChannelCardInterface> {
1398
+ log.verbose('Message', 'toChannelCard()')
1399
+
1400
+ if (!this.payload) {
1401
+ throw new Error('no payload')
1402
+ }
1403
+
1404
+ if (this.type() !== PUPPET.types.Message.ChannelCard) {
1405
+ throw new Error('message not a ChannelCard')
1406
+ }
1407
+
1408
+ const channelCardPayload = await this.wechaty.puppet.messageChannelCard(this.id)
1409
+ return new this.wechaty.ChannelCard(channelCardPayload)
1410
+ }
1411
+
1412
+ public async toConsultCard (): Promise<ConsultCardInterface> {
1413
+ log.verbose('Message', 'toConsultCard()')
1414
+
1415
+ if (!this.payload) {
1416
+ throw new Error('no payload')
1417
+ }
1418
+
1419
+ if (this.type() !== PUPPET.types.Message.ConsultCard) {
1420
+ throw new Error('message not a ConsultCard')
1421
+ }
1422
+
1423
+ const consultCardPayload = await this.wechaty.puppet.messageConsultCard(this.id)
1424
+ return new this.wechaty.ConsultCard(consultCardPayload)
1425
+ }
1426
+
1390
1427
  public async toCallRecord (): Promise<CallRecordInterface> {
1391
1428
  log.verbose('Message', 'toCallRecord()')
1392
1429
 
@@ -107,6 +107,16 @@ import {
107
107
  ChannelInterface,
108
108
  ChannelConstructor,
109
109
  } from './channel.js'
110
+ import {
111
+ ChannelCardImpl,
112
+ ChannelCardInterface,
113
+ ChannelCardConstructor,
114
+ } from './channel-card.js'
115
+ import {
116
+ ConsultCardImpl,
117
+ ConsultCardInterface,
118
+ ConsultCardConstructor,
119
+ } from './consult-card.js'
110
120
  import {
111
121
  CallRecordImpl,
112
122
  CallRecordInterface,
@@ -144,6 +154,8 @@ export type {
144
154
  DelayInterface,
145
155
  UrlLinkInterface,
146
156
  ChannelInterface,
157
+ ChannelCardInterface,
158
+ ConsultCardInterface,
147
159
  CallRecordInterface,
148
160
  ChatHistoryInterface,
149
161
  WecomInterface,
@@ -168,6 +180,8 @@ export type {
168
180
  TagGroupConstructor,
169
181
  UrlLinkConstructor,
170
182
  ChannelConstructor,
183
+ ChannelCardConstructor,
184
+ ConsultCardConstructor,
171
185
  CallRecordConstructor,
172
186
  ChatHistoryConstructor,
173
187
  WecomConstructor,
@@ -194,6 +208,8 @@ export {
194
208
  TagGroupImpl,
195
209
  UrlLinkImpl,
196
210
  ChannelImpl,
211
+ ChannelCardImpl,
212
+ ConsultCardImpl,
197
213
  CallRecordImpl,
198
214
  ChatHistoryImpl,
199
215
  WecomImpl,
@@ -219,7 +219,7 @@ class WechatyBase extends mixinBase implements SayableSayer {
219
219
  * > Tips:
220
220
  * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table)
221
221
  *
222
- * @param {(string | Contact | FileBox | UrlLink | MiniProgram | Location | Channel)} sayable
222
+ * @param {(string | Contact | FileBox | UrlLink | MiniProgram | Location | Channel | ChannelCard | ConsultCard)} sayable
223
223
  * send text, Contact, or file to bot. </br>
224
224
  * You can use {@link https://www.npmjs.com/package/file-box|FileBox} to send file
225
225
  *
@@ -21,6 +21,8 @@ import type {
21
21
  UrlLinkConstructor,
22
22
  MessageInterface,
23
23
  ChannelConstructor,
24
+ ChannelCardConstructor,
25
+ ConsultCardConstructor,
24
26
  MomentConstructor,
25
27
  CallRecordConstructor,
26
28
  ChatHistoryConstructor,
@@ -53,6 +55,8 @@ test('Wechaty interface', async t => {
53
55
  TagGroup : TagGroupConstructor
54
56
  UrlLink : UrlLinkConstructor
55
57
  Channel : ChannelConstructor
58
+ ChannelCard : ChannelCardConstructor
59
+ ConsultCard : ConsultCardConstructor
56
60
  Moment : MomentConstructor
57
61
  CallRecord : CallRecordConstructor
58
62
  ChatHistory : ChatHistoryConstructor
@@ -76,6 +80,8 @@ test('Wechaty interface', async t => {
76
80
  = this.TagGroup
77
81
  = this.UrlLink
78
82
  = this.Channel
83
+ = this.ChannelCard
84
+ = this.ConsultCard
79
85
  = this.Moment
80
86
  = this.CallRecord
81
87
  = this.ChatHistory
@@ -16,6 +16,8 @@ import {
16
16
  TagGroupImpl,
17
17
  UrlLinkImpl,
18
18
  ChannelImpl,
19
+ ChannelCardImpl,
20
+ ConsultCardImpl,
19
21
  MomentImpl,
20
22
  CallRecordImpl,
21
23
  ChatHistoryImpl,
@@ -36,6 +38,8 @@ import {
36
38
  TagGroupConstructor,
37
39
  UrlLinkConstructor,
38
40
  ChannelConstructor,
41
+ ChannelCardConstructor,
42
+ ConsultCardConstructor,
39
43
  MomentConstructor,
40
44
  CallRecordConstructor,
41
45
  ChatHistoryConstructor,
@@ -73,6 +77,8 @@ const wechatifyUserModuleMixin = <MixinBase extends typeof WechatySkeleton> (mix
73
77
  __wechatifiedTagGroup? : TagGroupConstructor
74
78
  __wechatifiedUrlLink? : UrlLinkConstructor
75
79
  __wechatifiedChannel? : ChannelConstructor
80
+ __wechatifiedChannelCard? : ChannelCardConstructor
81
+ __wechatifiedConsultCard? : ConsultCardConstructor
76
82
  __wechatifiedMoment? : MomentConstructor
77
83
  __wechatifiedCallRecord? : CallRecordConstructor
78
84
  __wechatifiedChatHistory? : ChatHistoryConstructor
@@ -93,6 +99,8 @@ const wechatifyUserModuleMixin = <MixinBase extends typeof WechatySkeleton> (mix
93
99
  get TagGroup () : TagGroupConstructor { return guardWechatify(this.__wechatifiedTagGroup) }
94
100
  get UrlLink () : UrlLinkConstructor { return guardWechatify(this.__wechatifiedUrlLink) }
95
101
  get Channel () : ChannelConstructor { return guardWechatify(this.__wechatifiedChannel) }
102
+ get ChannelCard () : ChannelCardConstructor { return guardWechatify(this.__wechatifiedChannelCard) }
103
+ get ConsultCard () : ConsultCardConstructor { return guardWechatify(this.__wechatifiedConsultCard) }
96
104
  get Moment () : MomentConstructor { return guardWechatify(this.__wechatifiedMoment) }
97
105
  get CallRecord () : CallRecordConstructor { return guardWechatify(this.__wechatifiedCallRecord) }
98
106
  get ChatHistory () : ChatHistoryConstructor { return guardWechatify(this.__wechatifiedChatHistory) }
@@ -133,6 +141,8 @@ const wechatifyUserModuleMixin = <MixinBase extends typeof WechatySkeleton> (mix
133
141
  this.__wechatifiedTagGroup = wechatifyUserModule(TagGroupImpl)(this as any)
134
142
  this.__wechatifiedUrlLink = wechatifyUserModule(UrlLinkImpl)(this as any)
135
143
  this.__wechatifiedChannel = wechatifyUserModule(ChannelImpl)(this as any)
144
+ this.__wechatifiedChannelCard = wechatifyUserModule(ChannelCardImpl)(this as any)
145
+ this.__wechatifiedConsultCard = wechatifyUserModule(ConsultCardImpl)(this as any)
136
146
  this.__wechatifiedMoment = wechatifyUserModule(MomentImpl)(this as any)
137
147
  this.__wechatifiedCallRecord = wechatifyUserModule(CallRecordImpl)(this as any)
138
148
  this.__wechatifiedChatHistory = wechatifyUserModule(ChatHistoryImpl)(this as any)
@@ -173,6 +183,8 @@ type ProtectedPropertyWechatifyUserModuleMixin =
173
183
  | '__wechatifiedTagGroup'
174
184
  | '__wechatifiedUrlLink'
175
185
  | '__wechatifiedChannel'
186
+ | '__wechatifiedChannelCard'
187
+ | '__wechatifiedConsultCard'
176
188
  | '__wechatifiedMoment'
177
189
  | '__wechatifiedCallRecord'
178
190
  | '__wechatifiedChatHistory'