@juzi/wechaty 1.0.5 → 1.0.8

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 (43) hide show
  1. package/dist/cjs/src/package-json.js +4 -4
  2. package/dist/cjs/src/sayable/deliver-sayable.js +1 -1
  3. package/dist/cjs/src/sayable/deliver-sayable.js.map +1 -1
  4. package/dist/cjs/src/sayable/sayable-to-payload.js +1 -1
  5. package/dist/cjs/src/sayable/sayable-to-payload.js.map +1 -1
  6. package/dist/cjs/src/sayable/types.d.ts +2 -2
  7. package/dist/cjs/src/sayable/types.d.ts.map +1 -1
  8. package/dist/cjs/src/user-modules/contact.d.ts.map +1 -1
  9. package/dist/cjs/src/user-modules/contact.js +18 -4
  10. package/dist/cjs/src/user-modules/contact.js.map +1 -1
  11. package/dist/cjs/src/user-modules/room.d.ts.map +1 -1
  12. package/dist/cjs/src/user-modules/room.js +8 -7
  13. package/dist/cjs/src/user-modules/room.js.map +1 -1
  14. package/dist/cjs/src/user-modules/room.spec.js +20 -0
  15. package/dist/cjs/src/user-modules/room.spec.js.map +1 -1
  16. package/dist/cjs/src/wechaty-mixins/puppet-mixin.js +1 -1
  17. package/dist/cjs/src/wechaty-mixins/puppet-mixin.js.map +1 -1
  18. package/dist/esm/src/package-json.js +4 -4
  19. package/dist/esm/src/sayable/deliver-sayable.js +1 -1
  20. package/dist/esm/src/sayable/deliver-sayable.js.map +1 -1
  21. package/dist/esm/src/sayable/sayable-to-payload.js +1 -1
  22. package/dist/esm/src/sayable/sayable-to-payload.js.map +1 -1
  23. package/dist/esm/src/sayable/types.d.ts +2 -2
  24. package/dist/esm/src/sayable/types.d.ts.map +1 -1
  25. package/dist/esm/src/user-modules/contact.d.ts.map +1 -1
  26. package/dist/esm/src/user-modules/contact.js +18 -4
  27. package/dist/esm/src/user-modules/contact.js.map +1 -1
  28. package/dist/esm/src/user-modules/room.d.ts.map +1 -1
  29. package/dist/esm/src/user-modules/room.js +8 -7
  30. package/dist/esm/src/user-modules/room.js.map +1 -1
  31. package/dist/esm/src/user-modules/room.spec.js +20 -0
  32. package/dist/esm/src/user-modules/room.spec.js.map +1 -1
  33. package/dist/esm/src/wechaty-mixins/puppet-mixin.js +1 -1
  34. package/dist/esm/src/wechaty-mixins/puppet-mixin.js.map +1 -1
  35. package/package.json +3 -3
  36. package/src/package-json.ts +4 -4
  37. package/src/sayable/deliver-sayable.ts +1 -1
  38. package/src/sayable/sayable-to-payload.ts +1 -1
  39. package/src/sayable/types.ts +2 -2
  40. package/src/user-modules/contact.ts +19 -8
  41. package/src/user-modules/room.spec.ts +24 -0
  42. package/src/user-modules/room.ts +9 -8
  43. package/src/wechaty-mixins/puppet-mixin.ts +1 -1
@@ -300,7 +300,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
300
300
  */
301
301
  async sync (): Promise<void> {
302
302
  await this.wechaty.puppet.roomPayloadDirty(this.id)
303
- await this.wechaty.puppet.roomMemberPayloadDirty(this.id)
303
+ // await this.wechaty.puppet.roomMemberPayloadDirty(this.id)
304
304
  await this.ready(true)
305
305
  }
306
306
 
@@ -330,6 +330,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
330
330
 
331
331
  const doReady = async (id: string): Promise<void> => {
332
332
  try {
333
+ await this.wechaty.puppet.roomMemberPayloadDirty(id)
333
334
  await this.wechaty.Contact.find({ id })
334
335
  } catch (e) {
335
336
  this.wechaty.emitError(e)
@@ -465,7 +466,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
465
466
  /**
466
467
  * 1. string
467
468
  */
468
- let mentionList: ContactInterface[] = []
469
+ let mentionList: (ContactInterface | '@all')[] = []
469
470
  let quoteMessage: MessageInterface | undefined
470
471
  let options: SayOptionsObject
471
472
 
@@ -478,14 +479,14 @@ class RoomMixin extends MixinBase implements SayableSayer {
478
479
  mentionList = varList as ContactInterface[]
479
480
  }
480
481
 
481
- const allIsContact = mentionList.every(c => ContactImpl.valid(c))
482
+ const allIsContact = mentionList.every(c => ContactImpl.valid(c) || (c as string) === '@all')
482
483
  if (!allIsContact) {
483
484
  throw new Error('mentionList must be contact when not using TemplateStringsArray function call.')
484
485
  }
485
486
 
486
487
  const AT_SEPARATOR = FOUR_PER_EM_SPACE
487
488
  const mentionAlias = await Promise.all(mentionList.map(async contact =>
488
- '@' + (await this.alias(contact) || contact.name()),
489
+ '@' + (contact === '@all' ? 'all' : await this.alias(contact) || contact.name()),
489
490
  ))
490
491
  const mentionText = mentionAlias.join(AT_SEPARATOR)
491
492
 
@@ -502,7 +503,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
502
503
  this.id,
503
504
  text,
504
505
  {
505
- mentionIdList: mentionList.map(c => c.id),
506
+ mentionIdList: mentionList.map(c => c === '@all' ? '@all' : c.id),
506
507
  quoteId: quoteMessage.id,
507
508
  },
508
509
  )
@@ -510,7 +511,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
510
511
  msgId = await this.wechaty.puppet.messageSendText(
511
512
  this.id,
512
513
  text,
513
- mentionList.map(c => c.id),
514
+ mentionList.map(c => c === '@all' ? '@all' : c.id),
514
515
  )
515
516
  }
516
517
 
@@ -528,7 +529,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
528
529
  textList: TemplateStringsArray,
529
530
  ...varList: unknown[]
530
531
  ) {
531
- const mentionList = varList.filter(c => ContactImpl.valid(c)) as ContactInterface[]
532
+ const mentionList = varList.filter(c => ContactImpl.valid(c) || c === '@all') as (ContactInterface | '@all')[]
532
533
 
533
534
  // const receiver = {
534
535
  // contactId : (mentionList.length && mentionList[0].id) || undefined,
@@ -583,7 +584,7 @@ class RoomMixin extends MixinBase implements SayableSayer {
583
584
  return this.wechaty.puppet.messageSendText(
584
585
  this.id,
585
586
  finalText,
586
- mentionList.map(c => c.id),
587
+ mentionList.map(c => c === '@all' ? '@all' : c.id),
587
588
  )
588
589
  }
589
590
  }
@@ -387,7 +387,7 @@ const puppetMixin = <MixinBase extends WechatifyUserModuleMixin & GErrorMixin &
387
387
  // issue #254
388
388
  if (payload.removeeIdList.includes(puppet.currentUserId)) {
389
389
  await puppet.roomPayloadDirty(payload.roomId)
390
- await puppet.roomMemberPayloadDirty(payload.roomId)
390
+ // await puppet.roomMemberPayloadDirty(payload.roomId)
391
391
  }
392
392
  } catch (e) {
393
393
  this.emit('error', GError.from(e))