@stacksjs/defaults 0.75.50 → 0.75.51
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: stacks-chat
|
|
3
|
-
description: Use when implementing chat messaging in Stacks - sending messages to Slack (webhooks, bot tokens, block kit), Discord (webhooks, bot tokens, embeds), Microsoft Teams (adaptive cards, webhooks), the BaseChatDriver abstraction, retry logic, multi-channel chat routing, or READING a person's conversations from iMessage, Slack and Discord and archiving them there (the inbox drivers). Covers @stacksjs/chat.
|
|
3
|
+
description: Use when implementing chat messaging in Stacks - sending messages to Slack (webhooks, bot tokens, block kit), Discord (webhooks, bot tokens, embeds), Microsoft Teams (adaptive cards, webhooks), the BaseChatDriver abstraction, retry logic, multi-channel chat routing, or READING a person's conversations from iMessage, WhatsApp, Slack and Discord and archiving them there (the inbox drivers). Covers @stacksjs/chat.
|
|
4
4
|
license: MIT
|
|
5
5
|
compatibility: Bun >= 1.3.0, TypeScript
|
|
6
6
|
allowed-tools: Read Edit Write Bash Grep Glob
|
|
@@ -354,6 +354,7 @@ import { inbox } from '@stacksjs/chat'
|
|
|
354
354
|
|
|
355
355
|
const drivers = [
|
|
356
356
|
inbox.createInboxDriver('imessage', {}), // chat.db, needs Full Disk Access
|
|
357
|
+
inbox.createInboxDriver('whatsapp', {}), // WhatsApp for Mac's ChatStorage.sqlite, same
|
|
357
358
|
inbox.createInboxDriver('slack', { token: env.SLACK_USER_TOKEN }), // xoxp user token
|
|
358
359
|
inbox.createInboxDriver('discord', { token: env.DISCORD_BOT_TOKEN, userId }), // bot token
|
|
359
360
|
]
|
|
@@ -371,6 +372,7 @@ What archiving does is part of every conversation (`conversation.archive`):
|
|
|
371
372
|
| Provider | `mode` | Effect in the real app |
|
|
372
373
|
|---|---|---|
|
|
373
374
|
| iMessage | `confirm` | With a `controller`, Messages' own Delete on the row found by name; without one, opens the conversation for the person to delete. Apple has no API, and editing chat.db is ignored or synced everywhere. |
|
|
375
|
+
| WhatsApp | `native` | With a `controller`, WhatsApp's own Archive on the row found by name, reported `removed` only once WhatsApp records it (`ZARCHIVED`); `unarchive` unarchives. Without one, `confirm`: opens the chat (`whatsapp://send?phone=`) for the person, or `unsupported` for a group, which has no link. |
|
|
374
376
|
| Slack DM / group DM | `native` | `conversations.close`; Slack reopens it when someone writes. `unarchive` reopens. |
|
|
375
377
|
| Slack public channel | `native` | `conversations.leave`; `unarchive` rejoins. |
|
|
376
378
|
| Slack private channel | `unsupported` | Untouched: leaving would need a re-invite. |
|
|
@@ -385,6 +387,15 @@ controller the driver only opens the conversation in Messages for the person to
|
|
|
385
387
|
from Recently Deleted, and `confirmDeletes: true` accepts Messages' alert too.
|
|
386
388
|
Attic (`~/Code/Apps/attic`, `app/Desktop/messages-control.swift`) is the reference.
|
|
387
389
|
|
|
390
|
+
WhatsApp is read from WhatsApp for Mac's `ChatStorage.sqlite` (a Core Data
|
|
391
|
+
store in its group container, so Full Disk Access again), never written. Its
|
|
392
|
+
`controller` is `{ archive(names), unarchive(names) }`, given the chat's name
|
|
393
|
+
and formatted number. Message types map onto the inbox shape: captions come
|
|
394
|
+
from the media item's title, contact cards and locations become text, deleted
|
|
395
|
+
messages are `unsent`, group events and calls are `kind: 'event'`. Reactions and
|
|
396
|
+
quoted replies sit in protobuf blobs the driver does not decode, so they are
|
|
397
|
+
absent rather than guessed. Status updates and broadcast lists are not listed.
|
|
398
|
+
|
|
388
399
|
A conversation deleted in Messages sits in Recently Deleted for 30 days:
|
|
389
400
|
`conversation.visible` is false and `conversation.deleted` counts what is still
|
|
390
401
|
recoverable. `messages(id, { includeDeleted: true })` reads those messages, so an
|
package/ide/vscode/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"publisher": "Stacks",
|
|
3
3
|
"name": "vscode-stacks",
|
|
4
4
|
"displayName": "Stacks",
|
|
5
|
-
"version": "0.75.
|
|
5
|
+
"version": "0.75.51",
|
|
6
6
|
"description": "Stacks, built into VS Code: stx templates, pickier linting and formatting, encrypted env files, the dev server preview and every buddy command. No other extensions required.",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"funding": "https://github.com/sponsors/chrisbbreuer",
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@stacksjs/defaults",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"sideEffects": false,
|
|
5
|
-
"version": "0.75.
|
|
5
|
+
"version": "0.75.51",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "git+https://github.com/stacksjs/stacks.git",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"dependencies": {
|
|
56
56
|
"@iconify-json/f7": "^1.2.2",
|
|
57
57
|
"@iconify-json/hugeicons": "^1.2.35",
|
|
58
|
-
"@stacksjs/mobile": "^0.75.
|
|
58
|
+
"@stacksjs/mobile": "^0.75.51",
|
|
59
59
|
"@stacksjs/sanitizer": "^0.2.348",
|
|
60
60
|
"ts-qr-codes": "^0.1.8"
|
|
61
61
|
}
|