@hraness/ghostget 0.18.13 → 0.18.14
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/CHANGELOG.md +17 -0
- package/README.md +12 -7
- package/dist/apple-photos-client.js +1 -1
- package/dist/beeper-client.js +42 -6
- package/dist/{imessage-direct-install-2gm3kge7.js → imessage-direct-install-5nftwc6p.js} +1 -1
- package/dist/{index-maa9hb5z.js → index-g6na3p6k.js} +1 -1
- package/dist/{index-en5hycxp.js → index-kaav16fd.js} +4 -2
- package/dist/{index-2ymnp8xv.js → index-qcf2f6wm.js} +5 -1
- package/dist/{messaging-automation-j4274hvc.js → messaging-automation-58s1366z.js} +1 -1
- package/dist/messaging-automation-api.js +2 -2
- package/dist/{messaging-native-install-8w1j36ah.js → messaging-native-install-c90nv501.js} +1 -1
- package/dist/{whatsapp-automation-runtime-hgh1e9rm.js → whatsapp-automation-runtime-ke1dx91p.js} +1 -1
- package/docs/messaging-automation.md +14 -7
- package/package.json +8 -4
- package/skills/ghostget/references/install.md +5 -5
- package/src/assets/adapters/beeper/wrench-web-adapter.json +37 -1
- package/src/assets/adapters/beeper/wrench-web-adapter.v2.4.0.json +1500 -0
- package/src/beeper-client-types.ts +1 -1
- package/src/control/menubar-cli.ts +3 -1
- package/src/control/menubar-icon.ts +4 -0
- package/src/messaging-automation-descriptors.ts +9 -1
- package/src/messaging-automation-factory.ts +7 -5
- package/src/messaging-automation-server.ts +2 -2
- package/src/messaging-automation-types.ts +3 -2
- package/src/messaging-automation-validation.ts +5 -1
- package/src/plugins/beeper-linked-device/plugin.ts +3 -1
- package/src/provider-plugin-contract-identity.ts +11 -2
- package/src/providers/beeper-automation.ts +447 -0
- package/src/providers/beeper-local-runtime.ts +61 -21
- package/src/providers/beeper-local.ts +4 -4
- package/src/providers/beeper-omni.ts +9 -2
- package/src/providers/messaging-native-install.ts +2 -1
- package/src/version.ts +1 -1
|
@@ -978,7 +978,7 @@ export function materializeBeeperMessagingRead(
|
|
|
978
978
|
"tombstones",
|
|
979
979
|
"continuation",
|
|
980
980
|
"completeness",
|
|
981
|
-
], [], "messaging.read output");
|
|
981
|
+
], ["canonicalSelfUserId"], "messaging.read output");
|
|
982
982
|
if (source.accountId !== parsed.accountId || source.conversationId !== parsed.conversationId) {
|
|
983
983
|
drift("messaging.read output", "must bind input account and conversation");
|
|
984
984
|
}
|
|
@@ -987,6 +987,13 @@ export function materializeBeeperMessagingRead(
|
|
|
987
987
|
"messaging.read output.selfUserId",
|
|
988
988
|
2_048,
|
|
989
989
|
);
|
|
990
|
+
const canonicalSelfUserId = source.canonicalSelfUserId === undefined || source.canonicalSelfUserId === null
|
|
991
|
+
? null
|
|
992
|
+
: beeperRawIdentifier(
|
|
993
|
+
source.canonicalSelfUserId,
|
|
994
|
+
"messaging.read output.canonicalSelfUserId",
|
|
995
|
+
2_048,
|
|
996
|
+
);
|
|
990
997
|
const requestCursor = parsed.beforeCursor ?? parsed.afterCursor;
|
|
991
998
|
if (source.requestCursor !== requestCursor) {
|
|
992
999
|
drift("messaging.read output.requestCursor", "must bind the requested cursor");
|
|
@@ -1025,7 +1032,7 @@ export function materializeBeeperMessagingRead(
|
|
|
1025
1032
|
);
|
|
1026
1033
|
if (
|
|
1027
1034
|
isSender !== null
|
|
1028
|
-
&& isSender !== (senderId === selfUserId)
|
|
1035
|
+
&& isSender !== (senderId === selfUserId || (canonicalSelfUserId !== null && senderId === canonicalSelfUserId))
|
|
1029
1036
|
) drift(
|
|
1030
1037
|
"messaging.read output.messages",
|
|
1031
1038
|
"must bind direction to the exact self user ID",
|
|
@@ -62,8 +62,9 @@ export async function ensureImsgNativeResources(installDirectory: string, enviro
|
|
|
62
62
|
|
|
63
63
|
/** Owner setup only. Installing resources never pairs, opens Messages, changes
|
|
64
64
|
* OS permissions, connects a provider, or grants messaging authority. */
|
|
65
|
-
export async function installBundledMessagingRuntime(provider: "imessage" | "whatsapp", environment: Environment = process.env): Promise<{ version: string; sha256: string; alreadyPresent?: boolean }> {
|
|
65
|
+
export async function installBundledMessagingRuntime(provider: "imessage" | "whatsapp" | "beeper", environment: Environment = process.env): Promise<{ version: string; sha256: string; alreadyPresent?: boolean }> {
|
|
66
66
|
if (process.platform !== "darwin" || process.arch !== "arm64") throw new Error("Bundled messaging runtimes require Apple silicon macOS");
|
|
67
|
+
if (provider === "beeper") throw new Error("Beeper has no bundled messaging runtime; the pinned local CLI and running Beeper Desktop are installed separately");
|
|
67
68
|
if (provider !== "imessage" && provider !== "whatsapp") throw new Error("Unknown messaging runtime");
|
|
68
69
|
const bytes = await readBundledMessagingAsset(provider), directory = await mkdtemp(join(await realpath(tmpdir()), "wrench-messaging-install-")); await chmod(directory, 0o700);
|
|
69
70
|
const path = join(directory, "runtime"), file = await open(path, constants.O_CREAT | constants.O_EXCL | constants.O_WRONLY | constants.O_NOFOLLOW, 0o500);
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** Canonical immutable Ghostget package release identity. */
|
|
2
|
-
export const GHOSTGET_VERSION = "0.18.
|
|
2
|
+
export const GHOSTGET_VERSION = "0.18.14" as const;
|