@sendbird/cli 0.0.0-stage → 0.3.0-alpha.1
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/.claude-plugin/plugin.json +11 -0
- package/.codex-plugin/plugin.json +33 -0
- package/LICENSE +13 -0
- package/NOTICE.md +1105 -0
- package/PROVENANCE.md +15 -0
- package/README.md +457 -2
- package/dist/acl.d.ts +2 -0
- package/dist/acl.js +12 -0
- package/dist/acl.js.map +1 -0
- package/dist/billing-plan.d.ts +68 -0
- package/dist/billing-plan.js +235 -0
- package/dist/billing-plan.js.map +1 -0
- package/dist/browser.d.ts +1 -0
- package/dist/browser.js +20 -0
- package/dist/browser.js.map +1 -0
- package/dist/calls-catalog.d.ts +79 -0
- package/dist/calls-catalog.js +322 -0
- package/dist/calls-catalog.js.map +1 -0
- package/dist/calls-credits.d.ts +31 -0
- package/dist/calls-credits.js +224 -0
- package/dist/calls-credits.js.map +1 -0
- package/dist/calls-trial.d.ts +45 -0
- package/dist/calls-trial.js +77 -0
- package/dist/calls-trial.js.map +1 -0
- package/dist/calls.d.ts +10 -0
- package/dist/calls.js +470 -0
- package/dist/calls.js.map +1 -0
- package/dist/catalog.d.ts +67 -0
- package/dist/catalog.js +784 -0
- package/dist/catalog.js.map +1 -0
- package/dist/cli.d.ts +6 -0
- package/dist/cli.js +502 -0
- package/dist/cli.js.map +1 -0
- package/dist/core.d.ts +86 -0
- package/dist/core.js +531 -0
- package/dist/core.js.map +1 -0
- package/dist/diagnostics.d.ts +206 -0
- package/dist/diagnostics.js +664 -0
- package/dist/diagnostics.js.map +1 -0
- package/dist/discovery.d.ts +700 -0
- package/dist/discovery.js +838 -0
- package/dist/discovery.js.map +1 -0
- package/dist/docs.d.ts +31 -0
- package/dist/docs.js +137 -0
- package/dist/docs.js.map +1 -0
- package/dist/features.d.ts +131 -0
- package/dist/features.js +227 -0
- package/dist/features.js.map +1 -0
- package/dist/generated-api.d.ts +116 -0
- package/dist/generated-api.js +118 -0
- package/dist/generated-api.js.map +1 -0
- package/dist/human-format.d.ts +40 -0
- package/dist/human-format.js +205 -0
- package/dist/human-format.js.map +1 -0
- package/dist/human-list.d.ts +2 -0
- package/dist/human-list.js +368 -0
- package/dist/human-list.js.map +1 -0
- package/dist/human-output.d.ts +10 -0
- package/dist/human-output.js +1351 -0
- package/dist/human-output.js.map +1 -0
- package/dist/human-pro.d.ts +3 -0
- package/dist/human-pro.js +201 -0
- package/dist/human-pro.js.map +1 -0
- package/dist/human-progress.d.ts +5 -0
- package/dist/human-progress.js +49 -0
- package/dist/human-progress.js.map +1 -0
- package/dist/local.d.ts +42 -0
- package/dist/local.js +707 -0
- package/dist/local.js.map +1 -0
- package/dist/oauth-callback.d.ts +3 -0
- package/dist/oauth-callback.js +66 -0
- package/dist/oauth-callback.js.map +1 -0
- package/dist/oauth-lock.d.ts +6 -0
- package/dist/oauth-lock.js +212 -0
- package/dist/oauth-lock.js.map +1 -0
- package/dist/oauth.d.ts +32 -0
- package/dist/oauth.js +493 -0
- package/dist/oauth.js.map +1 -0
- package/dist/presentation.d.ts +208 -0
- package/dist/presentation.js +156 -0
- package/dist/presentation.js.map +1 -0
- package/dist/pro-api-catalog.d.ts +24 -0
- package/dist/pro-api-catalog.js +619 -0
- package/dist/pro-api-catalog.js.map +1 -0
- package/dist/pro-api.d.ts +10 -0
- package/dist/pro-api.js +338 -0
- package/dist/pro-api.js.map +1 -0
- package/dist/project.d.ts +34 -0
- package/dist/project.js +62 -0
- package/dist/project.js.map +1 -0
- package/dist/recovery.d.ts +41 -0
- package/dist/recovery.js +417 -0
- package/dist/recovery.js.map +1 -0
- package/dist/runner.d.ts +47 -0
- package/dist/runner.js +603 -0
- package/dist/runner.js.map +1 -0
- package/dist/sdk-catalog.d.ts +69 -0
- package/dist/sdk-catalog.js +527 -0
- package/dist/sdk-catalog.js.map +1 -0
- package/dist/sdk-config.d.ts +19 -0
- package/dist/sdk-config.js +85 -0
- package/dist/sdk-config.js.map +1 -0
- package/dist/sdk-dto.d.ts +244 -0
- package/dist/sdk-dto.js +98 -0
- package/dist/sdk-dto.js.map +1 -0
- package/dist/sdk-limits.d.ts +2 -0
- package/dist/sdk-limits.js +3 -0
- package/dist/sdk-limits.js.map +1 -0
- package/dist/sdk-node-file-reader.d.ts +6 -0
- package/dist/sdk-node-file-reader.js +38 -0
- package/dist/sdk-node-file-reader.js.map +1 -0
- package/dist/sdk-pro-catalog.d.ts +22 -0
- package/dist/sdk-pro-catalog.js +234 -0
- package/dist/sdk-pro-catalog.js.map +1 -0
- package/dist/sdk-pro-runtime.d.ts +31 -0
- package/dist/sdk-pro-runtime.js +293 -0
- package/dist/sdk-pro-runtime.js.map +1 -0
- package/dist/sdk-query.d.ts +10 -0
- package/dist/sdk-query.js +29 -0
- package/dist/sdk-query.js.map +1 -0
- package/dist/sdk-runtime.d.ts +15 -0
- package/dist/sdk-runtime.js +685 -0
- package/dist/sdk-runtime.js.map +1 -0
- package/dist/sdk-worker.d.ts +1 -0
- package/dist/sdk-worker.js +26 -0
- package/dist/sdk-worker.js.map +1 -0
- package/dist/sdk.d.ts +29 -0
- package/dist/sdk.js +346 -0
- package/dist/sdk.js.map +1 -0
- package/dist/search-engine.d.ts +17 -0
- package/dist/search-engine.js +54 -0
- package/dist/search-engine.js.map +1 -0
- package/dist/search-intents.d.ts +2 -0
- package/dist/search-intents.js +98 -0
- package/dist/search-intents.js.map +1 -0
- package/dist/search.d.ts +7 -0
- package/dist/search.js +58 -0
- package/dist/search.js.map +1 -0
- package/dist/secret-output.d.ts +2 -0
- package/dist/secret-output.js +108 -0
- package/dist/secret-output.js.map +1 -0
- package/dist/shell.d.ts +3 -0
- package/dist/shell.js +14 -0
- package/dist/shell.js.map +1 -0
- package/dist/skills.d.ts +210 -0
- package/dist/skills.js +374 -0
- package/dist/skills.js.map +1 -0
- package/dist/value-semantics.d.ts +70 -0
- package/dist/value-semantics.js +173 -0
- package/dist/value-semantics.js.map +1 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +3 -0
- package/dist/version.js.map +1 -0
- package/dist/windows.d.ts +4 -0
- package/dist/windows.js +136 -0
- package/dist/windows.js.map +1 -0
- package/dist/workflows.d.ts +228 -0
- package/dist/workflows.js +1207 -0
- package/dist/workflows.js.map +1 -0
- package/package.json +86 -4
- package/plugin.json +22 -0
- package/references/agent-guide.json +196 -0
- package/references/commands.md +247 -0
- package/references/dashboard-inventory.json +14796 -0
- package/references/docs-index.json +2709 -0
- package/references/sdk-commands.json +15065 -0
- package/references/workflows.json +1246 -0
- package/skills/sendbird/SKILL.md +96 -0
- package/skills/sendbird/agents/openai.yaml +4 -0
- package/skills/sendbird/references/build-chat-app.md +49 -0
- package/skills/sendbird/references/client-guide.md +34 -0
- package/skills/sendbird/references/client-plugin-bridge.md +77 -0
- package/skills/sendbird/references/client-plugin-install.md +39 -0
- package/skills/sendbird/references/operational-checks.md +35 -0
- package/skills/sendbird/references/pro-capabilities.md +52 -0
- package/skills/sendbird/scripts/client-guide.mjs +283 -0
- package/skills/sendbird/scripts/client-plugin-bridge.mjs +703 -0
- package/skills/sendbird-setup/SKILL.md +18 -0
- package/skills/sendbird-setup/agents/openai.yaml +4 -0
- package/skills/sendbird-setup/references/onboarding.md +73 -0
- package/skills/sendbird-setup/scripts/install-cli.mjs +447 -0
- package/skills/sendbird-setup/scripts/npm-run.mjs +34 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type Options } from "./runner.js";
|
|
3
|
+
export declare const sdkConfigSchema: z.ZodObject<{
|
|
4
|
+
app_id: z.ZodString;
|
|
5
|
+
environment: z.ZodEnum<{
|
|
6
|
+
prod: "prod";
|
|
7
|
+
staging: "staging";
|
|
8
|
+
}>;
|
|
9
|
+
region: z.ZodString;
|
|
10
|
+
region_family: z.ZodEnum<{
|
|
11
|
+
standard: "standard";
|
|
12
|
+
delight: "delight";
|
|
13
|
+
}>;
|
|
14
|
+
api_host: z.ZodURL;
|
|
15
|
+
ws_host: z.ZodURL;
|
|
16
|
+
}, z.core.$strict>;
|
|
17
|
+
export type SdkConfig = z.infer<typeof sdkConfigSchema>;
|
|
18
|
+
export declare function discoverSdkConfig(opts: Options): Promise<SdkConfig>;
|
|
19
|
+
export declare function readSdkConfig(file: string, appId: string, env: "prod" | "staging"): SdkConfig;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { CliError, profile, request, encodeSegment } from "./core.js";
|
|
4
|
+
import { transport, verify, context } from "./runner.js";
|
|
5
|
+
export const sdkConfigSchema = z
|
|
6
|
+
.object({
|
|
7
|
+
app_id: z.string().min(1),
|
|
8
|
+
environment: z.enum(["prod", "staging"]),
|
|
9
|
+
region: z.string().min(1),
|
|
10
|
+
region_family: z.enum(["standard", "delight"]),
|
|
11
|
+
api_host: z.url(),
|
|
12
|
+
ws_host: z.url(),
|
|
13
|
+
})
|
|
14
|
+
.strict();
|
|
15
|
+
export async function discoverSdkConfig(opts) {
|
|
16
|
+
opts = context(opts);
|
|
17
|
+
const p = profile(opts.profile);
|
|
18
|
+
// context() already resolves saved/project defaults and clears a stale app.
|
|
19
|
+
const appId = opts.appId;
|
|
20
|
+
if (!appId)
|
|
21
|
+
throw new CliError("E_CONTEXT", "Pass --app-id or select an app before discovering SDK endpoints", 2);
|
|
22
|
+
const t = transport(opts);
|
|
23
|
+
const app = (await request(t, {
|
|
24
|
+
method: "GET",
|
|
25
|
+
path: `/dashboard/applications/${encodeSegment(appId)}/get_detail/`,
|
|
26
|
+
appId,
|
|
27
|
+
}));
|
|
28
|
+
if (app.app_id !== appId ||
|
|
29
|
+
typeof app.region !== "string" ||
|
|
30
|
+
(app.is_delight_region !== undefined &&
|
|
31
|
+
typeof app.is_delight_region !== "boolean"))
|
|
32
|
+
throw new CliError("E_SCHEMA", "App detail lacks app/region binding", 8);
|
|
33
|
+
const auth = await verify(t);
|
|
34
|
+
const orgs = auth.organizations ?? (auth.organization ? [auth.organization] : []);
|
|
35
|
+
const orgId = opts.orgId;
|
|
36
|
+
// Dashboard treats only an omitted family flag as Standard; null/strings
|
|
37
|
+
// remain invalid. Explicit app ownership must agree with the selected org.
|
|
38
|
+
const appOrg = app.organization && typeof app.organization === "object"
|
|
39
|
+
? app.organization.uid
|
|
40
|
+
: undefined;
|
|
41
|
+
if (orgId && typeof appOrg === "string" && appOrg !== orgId)
|
|
42
|
+
throw new CliError("E_CONTEXT", "Application does not belong to selected organization", 5);
|
|
43
|
+
const boundOrg = orgId ?? (typeof appOrg === "string" ? appOrg : undefined);
|
|
44
|
+
const candidates = boundOrg ? orgs.filter((o) => o.uid === boundOrg) : orgs;
|
|
45
|
+
if (!candidates.length)
|
|
46
|
+
throw new CliError("E_CONTEXT", "Selected organization is not in the authenticated session", 5);
|
|
47
|
+
const family = app.is_delight_region ? "delight" : "standard";
|
|
48
|
+
const pairs = candidates
|
|
49
|
+
.map((o) => o[family === "delight" ? "delight_regions" : "regions"]?.[app.region])
|
|
50
|
+
.filter((r) => typeof r?.api_url === "string" && typeof r?.ws_url === "string");
|
|
51
|
+
const unique = [
|
|
52
|
+
...new Map(pairs.map((r) => [`${r.api_url}\n${r.ws_url}`, r])).values(),
|
|
53
|
+
];
|
|
54
|
+
if (unique.length !== 1)
|
|
55
|
+
throw new CliError("E_CONTEXT", unique.length
|
|
56
|
+
? "Multiple region routes; select --org-id explicitly"
|
|
57
|
+
: "No SDK route in the authenticated region metadata", 5);
|
|
58
|
+
const result = sdkConfigSchema.safeParse({
|
|
59
|
+
app_id: appId,
|
|
60
|
+
environment: p.env,
|
|
61
|
+
region: app.region,
|
|
62
|
+
region_family: family,
|
|
63
|
+
api_host: unique[0].api_url,
|
|
64
|
+
ws_host: unique[0].ws_url,
|
|
65
|
+
});
|
|
66
|
+
if (!result.success)
|
|
67
|
+
throw new CliError("E_SCHEMA", "SDK region metadata is invalid", 8);
|
|
68
|
+
return result.data;
|
|
69
|
+
}
|
|
70
|
+
export function readSdkConfig(file, appId, env) {
|
|
71
|
+
let value;
|
|
72
|
+
try {
|
|
73
|
+
value = JSON.parse(readFileSync(file, "utf8"));
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
throw new CliError("E_INPUT", "Cannot read SDK config JSON file", 2);
|
|
77
|
+
}
|
|
78
|
+
const result = sdkConfigSchema.safeParse(value);
|
|
79
|
+
if (!result.success)
|
|
80
|
+
throw new CliError("E_INPUT", "SDK config must be the unmodified JSON from app sdk-config", 2);
|
|
81
|
+
if (result.data.app_id !== appId || result.data.environment !== env)
|
|
82
|
+
throw new CliError("E_CONTEXT", "SDK config belongs to a different app or environment", 5);
|
|
83
|
+
return result.data;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=sdk-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-config.js","sourceRoot":"","sources":["../src/sdk-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACvE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC9C,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE;CACjB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAa;IACnD,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,4EAA4E;IAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,IAAI,CAAC,KAAK;QACR,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,iEAAiE,EACjE,CAAC,CACF,CAAC;IACJ,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,GAAG,GAAG,CAAC,MAAM,OAAO,CAAC,CAAC,EAAE;QAC5B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,2BAA2B,aAAa,CAAC,KAAK,CAAC,cAAc;QACnE,KAAK;KACN,CAAC,CAA4B,CAAC;IAC/B,IACE,GAAG,CAAC,MAAM,KAAK,KAAK;QACpB,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAC9B,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS;YAClC,OAAO,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC;QAE7C,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,qCAAqC,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,IAAI,GACR,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,yEAAyE;IACzE,2EAA2E;IAC3E,MAAM,MAAM,GACV,GAAG,CAAC,YAAY,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACtD,CAAC,CAAE,GAAG,CAAC,YAAkC,CAAC,GAAG;QAC7C,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,KAAK,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,KAAK;QACzD,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,sDAAsD,EACtD,CAAC,CACF,CAAC;IACJ,MAAM,QAAQ,GAAG,KAAK,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC5E,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,CAAC,UAAU,CAAC,MAAM;QACpB,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,2DAA2D,EAC3D,CAAC,CACF,CAAC;IACJ,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9D,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CAEF,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAEvD,EAAE,CAAC,GAAG,CAAC,MAAgB,CAAC,CAC5B;SACA,MAAM,CACL,CAAC,CAAC,EAA4C,EAAE,CAC9C,OAAO,CAAC,EAAE,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,EAAE,MAAM,KAAK,QAAQ,CAClE,CAAC;IACJ,MAAM,MAAM,GAAG;QACb,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;KACxE,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QACrB,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,MAAM,CAAC,MAAM;YACX,CAAC,CAAC,oDAAoD;YACtD,CAAC,CAAC,mDAAmD,EACvD,CAAC,CACF,CAAC;IACJ,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC;QACvC,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,CAAC,CAAC,GAAG;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO;QAC3B,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;KAC1B,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,OAAO;QACjB,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AACD,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,KAAa,EACb,GAAuB;IAEvB,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,QAAQ,CAAC,SAAS,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,OAAO;QACjB,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,4DAA4D,EAC5D,CAAC,CACF,CAAC;IACJ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG;QACjE,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,sDAAsD,EACtD,CAAC,CACF,CAAC;IACJ,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
/** Plain SDK response projections. Never return SDK instances or authenticated SDK URL getters. */
|
|
2
|
+
import type { User } from "@sendbird/chat";
|
|
3
|
+
import type { BaseMessage } from "@sendbird/chat/message";
|
|
4
|
+
export declare function user(u: User): {
|
|
5
|
+
restriction_info?: {
|
|
6
|
+
type: string | null;
|
|
7
|
+
end_at: number;
|
|
8
|
+
description: string;
|
|
9
|
+
} | undefined;
|
|
10
|
+
preferred_languages?: string[] | null | undefined;
|
|
11
|
+
last_seen_at?: number | null | undefined;
|
|
12
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
13
|
+
user_id: string;
|
|
14
|
+
nickname: string;
|
|
15
|
+
};
|
|
16
|
+
export declare function message(m: BaseMessage): {
|
|
17
|
+
reactions: {
|
|
18
|
+
key: string;
|
|
19
|
+
user_ids: string[];
|
|
20
|
+
}[];
|
|
21
|
+
thread_info: {
|
|
22
|
+
reply_count: number;
|
|
23
|
+
} | undefined;
|
|
24
|
+
poll_id?: number | null | undefined;
|
|
25
|
+
type: string;
|
|
26
|
+
message: string;
|
|
27
|
+
sender: {
|
|
28
|
+
restriction_info?: {
|
|
29
|
+
type: string | null;
|
|
30
|
+
end_at: number;
|
|
31
|
+
description: string;
|
|
32
|
+
} | undefined;
|
|
33
|
+
preferred_languages?: string[] | null | undefined;
|
|
34
|
+
last_seen_at?: number | null | undefined;
|
|
35
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
36
|
+
user_id: string;
|
|
37
|
+
nickname: string;
|
|
38
|
+
};
|
|
39
|
+
translations: object;
|
|
40
|
+
meta_arrays?: {
|
|
41
|
+
key: string;
|
|
42
|
+
value: string[];
|
|
43
|
+
}[] | undefined;
|
|
44
|
+
mentioned_user_ids?: string[] | null | undefined;
|
|
45
|
+
mentioned_users?: {
|
|
46
|
+
restriction_info?: {
|
|
47
|
+
type: string | null;
|
|
48
|
+
end_at: number;
|
|
49
|
+
description: string;
|
|
50
|
+
} | undefined;
|
|
51
|
+
preferred_languages?: string[] | null | undefined;
|
|
52
|
+
last_seen_at?: number | null | undefined;
|
|
53
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
54
|
+
user_id: string;
|
|
55
|
+
nickname: string;
|
|
56
|
+
}[] | undefined;
|
|
57
|
+
mention_type?: import("@sendbird/chat/message").MentionType | null | undefined;
|
|
58
|
+
message_id: number;
|
|
59
|
+
channel_url: string;
|
|
60
|
+
created_at: number;
|
|
61
|
+
updated_at: number;
|
|
62
|
+
custom_type: string;
|
|
63
|
+
data: string;
|
|
64
|
+
parent_message_id: number;
|
|
65
|
+
} | {
|
|
66
|
+
reactions: {
|
|
67
|
+
key: string;
|
|
68
|
+
user_ids: string[];
|
|
69
|
+
}[];
|
|
70
|
+
thread_info: {
|
|
71
|
+
reply_count: number;
|
|
72
|
+
} | undefined;
|
|
73
|
+
type: string;
|
|
74
|
+
name: string;
|
|
75
|
+
mime_type: string;
|
|
76
|
+
size: number;
|
|
77
|
+
url: unknown;
|
|
78
|
+
requires_auth: boolean;
|
|
79
|
+
thumbnails: {
|
|
80
|
+
url: unknown;
|
|
81
|
+
width: number;
|
|
82
|
+
height: number;
|
|
83
|
+
real_width: number;
|
|
84
|
+
real_height: number;
|
|
85
|
+
}[];
|
|
86
|
+
sender: {
|
|
87
|
+
restriction_info?: {
|
|
88
|
+
type: string | null;
|
|
89
|
+
end_at: number;
|
|
90
|
+
description: string;
|
|
91
|
+
} | undefined;
|
|
92
|
+
preferred_languages?: string[] | null | undefined;
|
|
93
|
+
last_seen_at?: number | null | undefined;
|
|
94
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
95
|
+
user_id: string;
|
|
96
|
+
nickname: string;
|
|
97
|
+
};
|
|
98
|
+
meta_arrays?: {
|
|
99
|
+
key: string;
|
|
100
|
+
value: string[];
|
|
101
|
+
}[] | undefined;
|
|
102
|
+
mentioned_user_ids?: string[] | null | undefined;
|
|
103
|
+
mentioned_users?: {
|
|
104
|
+
restriction_info?: {
|
|
105
|
+
type: string | null;
|
|
106
|
+
end_at: number;
|
|
107
|
+
description: string;
|
|
108
|
+
} | undefined;
|
|
109
|
+
preferred_languages?: string[] | null | undefined;
|
|
110
|
+
last_seen_at?: number | null | undefined;
|
|
111
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
112
|
+
user_id: string;
|
|
113
|
+
nickname: string;
|
|
114
|
+
}[] | undefined;
|
|
115
|
+
mention_type?: import("@sendbird/chat/message").MentionType | null | undefined;
|
|
116
|
+
message_id: number;
|
|
117
|
+
channel_url: string;
|
|
118
|
+
created_at: number;
|
|
119
|
+
updated_at: number;
|
|
120
|
+
custom_type: string;
|
|
121
|
+
data: string;
|
|
122
|
+
parent_message_id: number;
|
|
123
|
+
} | {
|
|
124
|
+
reactions: {
|
|
125
|
+
key: string;
|
|
126
|
+
user_ids: string[];
|
|
127
|
+
}[];
|
|
128
|
+
thread_info: {
|
|
129
|
+
reply_count: number;
|
|
130
|
+
} | undefined;
|
|
131
|
+
type: string;
|
|
132
|
+
message: string;
|
|
133
|
+
meta_arrays?: {
|
|
134
|
+
key: string;
|
|
135
|
+
value: string[];
|
|
136
|
+
}[] | undefined;
|
|
137
|
+
mentioned_user_ids?: string[] | null | undefined;
|
|
138
|
+
mentioned_users?: {
|
|
139
|
+
restriction_info?: {
|
|
140
|
+
type: string | null;
|
|
141
|
+
end_at: number;
|
|
142
|
+
description: string;
|
|
143
|
+
} | undefined;
|
|
144
|
+
preferred_languages?: string[] | null | undefined;
|
|
145
|
+
last_seen_at?: number | null | undefined;
|
|
146
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
147
|
+
user_id: string;
|
|
148
|
+
nickname: string;
|
|
149
|
+
}[] | undefined;
|
|
150
|
+
mention_type?: import("@sendbird/chat/message").MentionType | null | undefined;
|
|
151
|
+
message_id: number;
|
|
152
|
+
channel_url: string;
|
|
153
|
+
created_at: number;
|
|
154
|
+
updated_at: number;
|
|
155
|
+
custom_type: string;
|
|
156
|
+
data: string;
|
|
157
|
+
parent_message_id: number;
|
|
158
|
+
} | {
|
|
159
|
+
reactions: {
|
|
160
|
+
key: string;
|
|
161
|
+
user_ids: string[];
|
|
162
|
+
}[];
|
|
163
|
+
thread_info: {
|
|
164
|
+
reply_count: number;
|
|
165
|
+
} | undefined;
|
|
166
|
+
type: string;
|
|
167
|
+
files: {
|
|
168
|
+
name: string | null;
|
|
169
|
+
mime_type: string | null;
|
|
170
|
+
size: number;
|
|
171
|
+
url: unknown;
|
|
172
|
+
}[];
|
|
173
|
+
sender: {
|
|
174
|
+
restriction_info?: {
|
|
175
|
+
type: string | null;
|
|
176
|
+
end_at: number;
|
|
177
|
+
description: string;
|
|
178
|
+
} | undefined;
|
|
179
|
+
preferred_languages?: string[] | null | undefined;
|
|
180
|
+
last_seen_at?: number | null | undefined;
|
|
181
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
182
|
+
user_id: string;
|
|
183
|
+
nickname: string;
|
|
184
|
+
};
|
|
185
|
+
meta_arrays?: {
|
|
186
|
+
key: string;
|
|
187
|
+
value: string[];
|
|
188
|
+
}[] | undefined;
|
|
189
|
+
mentioned_user_ids?: string[] | null | undefined;
|
|
190
|
+
mentioned_users?: {
|
|
191
|
+
restriction_info?: {
|
|
192
|
+
type: string | null;
|
|
193
|
+
end_at: number;
|
|
194
|
+
description: string;
|
|
195
|
+
} | undefined;
|
|
196
|
+
preferred_languages?: string[] | null | undefined;
|
|
197
|
+
last_seen_at?: number | null | undefined;
|
|
198
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
199
|
+
user_id: string;
|
|
200
|
+
nickname: string;
|
|
201
|
+
}[] | undefined;
|
|
202
|
+
mention_type?: import("@sendbird/chat/message").MentionType | null | undefined;
|
|
203
|
+
message_id: number;
|
|
204
|
+
channel_url: string;
|
|
205
|
+
created_at: number;
|
|
206
|
+
updated_at: number;
|
|
207
|
+
custom_type: string;
|
|
208
|
+
data: string;
|
|
209
|
+
parent_message_id: number;
|
|
210
|
+
} | {
|
|
211
|
+
reactions: {
|
|
212
|
+
key: string;
|
|
213
|
+
user_ids: string[];
|
|
214
|
+
}[];
|
|
215
|
+
thread_info: {
|
|
216
|
+
reply_count: number;
|
|
217
|
+
} | undefined;
|
|
218
|
+
type: import("@sendbird/chat/message").MessageType;
|
|
219
|
+
meta_arrays?: {
|
|
220
|
+
key: string;
|
|
221
|
+
value: string[];
|
|
222
|
+
}[] | undefined;
|
|
223
|
+
mentioned_user_ids?: string[] | null | undefined;
|
|
224
|
+
mentioned_users?: {
|
|
225
|
+
restriction_info?: {
|
|
226
|
+
type: string | null;
|
|
227
|
+
end_at: number;
|
|
228
|
+
description: string;
|
|
229
|
+
} | undefined;
|
|
230
|
+
preferred_languages?: string[] | null | undefined;
|
|
231
|
+
last_seen_at?: number | null | undefined;
|
|
232
|
+
connection_status?: import("@sendbird/chat").UserOnlineState | undefined;
|
|
233
|
+
user_id: string;
|
|
234
|
+
nickname: string;
|
|
235
|
+
}[] | undefined;
|
|
236
|
+
mention_type?: import("@sendbird/chat/message").MentionType | null | undefined;
|
|
237
|
+
message_id: number;
|
|
238
|
+
channel_url: string;
|
|
239
|
+
created_at: number;
|
|
240
|
+
updated_at: number;
|
|
241
|
+
custom_type: string;
|
|
242
|
+
data: string;
|
|
243
|
+
parent_message_id: number;
|
|
244
|
+
};
|
package/dist/sdk-dto.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { redact } from "./core.js";
|
|
2
|
+
export function user(u) {
|
|
3
|
+
return {
|
|
4
|
+
user_id: u.userId,
|
|
5
|
+
nickname: u.nickname,
|
|
6
|
+
...(u.connectionStatus !== undefined
|
|
7
|
+
? { connection_status: u.connectionStatus }
|
|
8
|
+
: {}),
|
|
9
|
+
...(u.lastSeenAt !== undefined ? { last_seen_at: u.lastSeenAt } : {}),
|
|
10
|
+
...(u.preferredLanguages !== undefined
|
|
11
|
+
? { preferred_languages: u.preferredLanguages }
|
|
12
|
+
: {}),
|
|
13
|
+
...("restrictionInfo" in u &&
|
|
14
|
+
u.restrictionInfo &&
|
|
15
|
+
typeof u.restrictionInfo === "object"
|
|
16
|
+
? {
|
|
17
|
+
restriction_info: (() => {
|
|
18
|
+
const r = u.restrictionInfo;
|
|
19
|
+
return {
|
|
20
|
+
type: r.restrictionType,
|
|
21
|
+
end_at: r.endAt,
|
|
22
|
+
description: r.description,
|
|
23
|
+
};
|
|
24
|
+
})(),
|
|
25
|
+
}
|
|
26
|
+
: {}),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export function message(m) {
|
|
30
|
+
return {
|
|
31
|
+
message_id: m.messageId,
|
|
32
|
+
channel_url: m.channelUrl,
|
|
33
|
+
created_at: m.createdAt,
|
|
34
|
+
updated_at: m.updatedAt,
|
|
35
|
+
custom_type: m.customType,
|
|
36
|
+
data: m.data,
|
|
37
|
+
parent_message_id: m.parentMessageId,
|
|
38
|
+
...(m.mentionType !== undefined ? { mention_type: m.mentionType } : {}),
|
|
39
|
+
...(m.mentionedUsers
|
|
40
|
+
? { mentioned_users: m.mentionedUsers.map(user) }
|
|
41
|
+
: {}),
|
|
42
|
+
...(m.mentionedUserIds !== undefined
|
|
43
|
+
? { mentioned_user_ids: m.mentionedUserIds }
|
|
44
|
+
: {}),
|
|
45
|
+
...(m.metaArrays
|
|
46
|
+
? {
|
|
47
|
+
meta_arrays: m.metaArrays.map((a) => ({
|
|
48
|
+
key: a.key,
|
|
49
|
+
value: a.value,
|
|
50
|
+
})),
|
|
51
|
+
}
|
|
52
|
+
: {}),
|
|
53
|
+
...(m.isUserMessage()
|
|
54
|
+
? {
|
|
55
|
+
type: "text",
|
|
56
|
+
message: m.message,
|
|
57
|
+
sender: user(m.sender),
|
|
58
|
+
translations: m.translations,
|
|
59
|
+
...(m.poll !== undefined ? { poll_id: m.poll?.id ?? null } : {}),
|
|
60
|
+
}
|
|
61
|
+
: m.isFileMessage()
|
|
62
|
+
? {
|
|
63
|
+
type: "file",
|
|
64
|
+
name: m.name,
|
|
65
|
+
mime_type: m.type,
|
|
66
|
+
size: m.size,
|
|
67
|
+
url: redact(m.plainUrl),
|
|
68
|
+
requires_auth: m.requireAuth,
|
|
69
|
+
thumbnails: m.thumbnails?.map((t) => ({
|
|
70
|
+
url: redact(t.plainUrl),
|
|
71
|
+
width: t.width,
|
|
72
|
+
height: t.height,
|
|
73
|
+
real_width: t.realWidth,
|
|
74
|
+
real_height: t.realHeight,
|
|
75
|
+
})),
|
|
76
|
+
sender: user(m.sender),
|
|
77
|
+
}
|
|
78
|
+
: m.isAdminMessage()
|
|
79
|
+
? { type: "admin", message: m.message }
|
|
80
|
+
: m.isMultipleFilesMessage()
|
|
81
|
+
? {
|
|
82
|
+
type: "multiple_files",
|
|
83
|
+
files: m.fileInfoList.map((f) => ({
|
|
84
|
+
name: f.fileName,
|
|
85
|
+
mime_type: f.mimeType,
|
|
86
|
+
size: f.fileSize,
|
|
87
|
+
url: redact(f.plainUrl),
|
|
88
|
+
})),
|
|
89
|
+
sender: user(m.sender),
|
|
90
|
+
}
|
|
91
|
+
: { type: m.messageType }),
|
|
92
|
+
reactions: m.reactions?.map((r) => ({ key: r.key, user_ids: r.userIds })),
|
|
93
|
+
thread_info: m.threadInfo
|
|
94
|
+
? { reply_count: m.threadInfo.replyCount }
|
|
95
|
+
: undefined,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=sdk-dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-dto.js","sourceRoot":"","sources":["../src/sdk-dto.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-limits.js","sourceRoot":"","sources":["../src/sdk-limits.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The pinned Chat SDK reads compressed WebSocket Blob frames with FileReader.
|
|
3
|
+
* Node has Blob.arrayBuffer() but no FileReader, so provide only the methods
|
|
4
|
+
* that SDK path needs inside the isolated SDK worker.
|
|
5
|
+
*/
|
|
6
|
+
export declare function installNodeFileReader(): void;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The pinned Chat SDK reads compressed WebSocket Blob frames with FileReader.
|
|
3
|
+
* Node has Blob.arrayBuffer() but no FileReader, so provide only the methods
|
|
4
|
+
* that SDK path needs inside the isolated SDK worker.
|
|
5
|
+
*/
|
|
6
|
+
export function installNodeFileReader() {
|
|
7
|
+
if (typeof globalThis.FileReader !== "undefined")
|
|
8
|
+
return;
|
|
9
|
+
class NodeFileReader {
|
|
10
|
+
result = null;
|
|
11
|
+
error = null;
|
|
12
|
+
onload = null;
|
|
13
|
+
onerror = null;
|
|
14
|
+
onloadend = null;
|
|
15
|
+
readAsArrayBuffer(blob) {
|
|
16
|
+
this.read(blob.arrayBuffer());
|
|
17
|
+
}
|
|
18
|
+
readAsText(blob) {
|
|
19
|
+
this.read(blob.text());
|
|
20
|
+
}
|
|
21
|
+
read(value) {
|
|
22
|
+
void value.then((result) => {
|
|
23
|
+
this.result = result;
|
|
24
|
+
this.onload?.();
|
|
25
|
+
this.onloadend?.();
|
|
26
|
+
}, (error) => {
|
|
27
|
+
this.error = error;
|
|
28
|
+
this.onerror?.();
|
|
29
|
+
this.onloadend?.();
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
Object.defineProperty(globalThis, "FileReader", {
|
|
34
|
+
configurable: true,
|
|
35
|
+
value: NodeFileReader,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=sdk-node-file-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-node-file-reader.js","sourceRoot":"","sources":["../src/sdk-node-file-reader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,IAAI,OAAO,UAAU,CAAC,UAAU,KAAK,WAAW;QAAE,OAAO;IACzD,MAAM,cAAc;QAClB,MAAM,GAAgC,IAAI,CAAC;QAC3C,KAAK,GAAY,IAAI,CAAC;QACtB,MAAM,GAAwB,IAAI,CAAC;QACnC,OAAO,GAAwB,IAAI,CAAC;QACpC,SAAS,GAAwB,IAAI,CAAC;QAEtC,iBAAiB,CAAC,IAAU;YAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAChC,CAAC;QAED,UAAU,CAAC,IAAU;YACnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzB,CAAC;QAEO,IAAI,CAAC,KAAoC;YAC/C,KAAK,KAAK,CAAC,IAAI,CACb,CAAC,MAAM,EAAE,EAAE;gBACT,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;gBAChB,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACrB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACrB,CAAC,CACF,CAAC;QACJ,CAAC;KACF;IACD,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,YAAY,EAAE;QAC9C,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,cAAc;KACtB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** Pro SDK operations retain Chat-user permissions; none use management keys. */
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import type { SdkDefinition } from "./sdk-catalog.js";
|
|
4
|
+
export declare const metaArray: z.ZodObject<{
|
|
5
|
+
key: z.ZodString;
|
|
6
|
+
value: z.ZodArray<z.ZodString>;
|
|
7
|
+
}, z.core.$strict>;
|
|
8
|
+
export declare const expressiveFields: {
|
|
9
|
+
mention_type: z.ZodOptional<z.ZodEnum<{
|
|
10
|
+
channel: "channel";
|
|
11
|
+
users: "users";
|
|
12
|
+
}>>;
|
|
13
|
+
mentioned_user_ids: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
14
|
+
meta_arrays: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
15
|
+
key: z.ZodString;
|
|
16
|
+
value: z.ZodArray<z.ZodString>;
|
|
17
|
+
}, z.core.$strict>>>;
|
|
18
|
+
};
|
|
19
|
+
export declare const translationFields: {
|
|
20
|
+
translation_target_languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
21
|
+
};
|
|
22
|
+
export declare function proSdkDefinitions(message: z.ZodType, user: z.ZodType): SdkDefinition[];
|