@teamlearners/clawops 0.39.0 → 0.41.0
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/README.md +60 -0
- package/dist/agent/index.cjs +77 -77
- package/dist/agent/index.js +4 -4
- package/dist/agent/livekit/index.cjs +9 -9
- package/dist/agent/livekit/index.js +2 -2
- package/dist/{chunk-UOUNMCXE.cjs → chunk-7ZFSDBM6.cjs} +4 -4
- package/dist/{chunk-UOUNMCXE.cjs.map → chunk-7ZFSDBM6.cjs.map} +1 -1
- package/dist/chunk-H2KILE5I.js +6 -0
- package/dist/{chunk-NDFDYCFM.js.map → chunk-H2KILE5I.js.map} +1 -1
- package/dist/{chunk-OBGKLTIN.cjs → chunk-MXEZQRIL.cjs} +2 -2
- package/dist/chunk-MXEZQRIL.cjs.map +1 -0
- package/dist/{chunk-W4XFMJFU.js → chunk-OS5WZMBK.js} +3 -3
- package/dist/{chunk-W4XFMJFU.js.map → chunk-OS5WZMBK.js.map} +1 -1
- package/dist/{chunk-54GBFYZT.js → chunk-SXXOAPMG.js} +2 -2
- package/dist/chunk-SXXOAPMG.js.map +1 -0
- package/dist/chunk-WTG2QGQU.cjs +8 -0
- package/dist/{chunk-FI2WH67N.cjs.map → chunk-WTG2QGQU.cjs.map} +1 -1
- package/dist/{client-B_GblPxW.d.cts → client-DfN4wQXU.d.cts} +228 -27
- package/dist/{client-B_GblPxW.d.ts → client-DfN4wQXU.d.ts} +228 -27
- package/dist/index.cjs +148 -52
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +120 -25
- package/dist/index.js.map +1 -1
- package/dist/solapi/index.cjs +7 -7
- package/dist/solapi/index.d.cts +2 -2
- package/dist/solapi/index.d.ts +2 -2
- package/dist/solapi/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-54GBFYZT.js.map +0 -1
- package/dist/chunk-FI2WH67N.cjs +0 -8
- package/dist/chunk-NDFDYCFM.js +0 -6
- package/dist/chunk-OBGKLTIN.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var chunkLLPMUDNE_cjs = require('./chunk-LLPMUDNE.cjs');
|
|
6
|
-
var
|
|
7
|
-
var
|
|
6
|
+
var chunkMXEZQRIL_cjs = require('./chunk-MXEZQRIL.cjs');
|
|
7
|
+
var chunkWTG2QGQU_cjs = require('./chunk-WTG2QGQU.cjs');
|
|
8
8
|
var zod = require('zod');
|
|
9
9
|
var crypto = require('crypto');
|
|
10
10
|
|
|
@@ -15,14 +15,19 @@ function validateBaseUrl(url) {
|
|
|
15
15
|
try {
|
|
16
16
|
parsed = new URL(url);
|
|
17
17
|
} catch {
|
|
18
|
-
throw new
|
|
18
|
+
throw new chunkMXEZQRIL_cjs.ClawOpsError(`Invalid base_url: ${url}`);
|
|
19
19
|
}
|
|
20
20
|
if (parsed.protocol === "https:") return url;
|
|
21
21
|
if (parsed.protocol === "http:" && LOCALHOST_HOSTS.has(parsed.hostname)) return url;
|
|
22
|
-
throw new
|
|
22
|
+
throw new chunkMXEZQRIL_cjs.ClawOpsError(
|
|
23
23
|
`base_url\uC740 HTTPS\uB97C \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4 (\uBC1B\uC740 \uAC12: '${url}'). \uB85C\uCEEC \uAC1C\uBC1C \uC2DC\uC5D0\uB294 http://localhost\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.`
|
|
24
24
|
);
|
|
25
25
|
}
|
|
26
|
+
function serializeBody(body) {
|
|
27
|
+
if (body instanceof FormData) return { payload: body, contentType: null };
|
|
28
|
+
if (!body) return { payload: void 0, contentType: "application/json" };
|
|
29
|
+
return { payload: JSON.stringify(body), contentType: "application/json" };
|
|
30
|
+
}
|
|
26
31
|
var APIClient = class {
|
|
27
32
|
_apiKey;
|
|
28
33
|
_baseURL;
|
|
@@ -43,7 +48,7 @@ var APIClient = class {
|
|
|
43
48
|
Authorization: `Bearer ${this._apiKey}`,
|
|
44
49
|
"Content-Type": "application/json",
|
|
45
50
|
Accept: "application/json",
|
|
46
|
-
"User-Agent": `claw-ops-node/${
|
|
51
|
+
"User-Agent": `claw-ops-node/${chunkWTG2QGQU_cjs.VERSION}`,
|
|
47
52
|
...this._defaultHeaders
|
|
48
53
|
};
|
|
49
54
|
if (extra) Object.assign(headers, extra);
|
|
@@ -51,6 +56,9 @@ var APIClient = class {
|
|
|
51
56
|
}
|
|
52
57
|
async _send(method2, path, options = {}) {
|
|
53
58
|
const headers = this._buildHeaders(options.extraHeaders);
|
|
59
|
+
const { payload, contentType } = serializeBody(options.body);
|
|
60
|
+
if (contentType === null) delete headers["Content-Type"];
|
|
61
|
+
else headers["Content-Type"] = contentType;
|
|
54
62
|
const params = new URLSearchParams();
|
|
55
63
|
const queryObj = { ...options.query, ...options.extraQuery };
|
|
56
64
|
for (const [k, v] of Object.entries(queryObj)) {
|
|
@@ -68,7 +76,7 @@ var APIClient = class {
|
|
|
68
76
|
response = await this._fetch(url, {
|
|
69
77
|
method: method2,
|
|
70
78
|
headers,
|
|
71
|
-
body:
|
|
79
|
+
body: payload,
|
|
72
80
|
signal: controller.signal
|
|
73
81
|
});
|
|
74
82
|
} catch (err) {
|
|
@@ -79,14 +87,14 @@ var APIClient = class {
|
|
|
79
87
|
await this._sleep(this._retryDelay(this._maxRetries - retriesLeft));
|
|
80
88
|
continue;
|
|
81
89
|
}
|
|
82
|
-
throw new
|
|
90
|
+
throw new chunkMXEZQRIL_cjs.APITimeoutError({ method: method2, url });
|
|
83
91
|
}
|
|
84
92
|
if (retriesLeft > 0) {
|
|
85
93
|
retriesLeft--;
|
|
86
94
|
await this._sleep(this._retryDelay(this._maxRetries - retriesLeft));
|
|
87
95
|
continue;
|
|
88
96
|
}
|
|
89
|
-
throw new
|
|
97
|
+
throw new chunkMXEZQRIL_cjs.APIConnectionError({ method: method2, url });
|
|
90
98
|
} finally {
|
|
91
99
|
clearTimeout(timeoutId);
|
|
92
100
|
}
|
|
@@ -102,7 +110,7 @@ var APIClient = class {
|
|
|
102
110
|
} catch {
|
|
103
111
|
body = null;
|
|
104
112
|
}
|
|
105
|
-
throw
|
|
113
|
+
throw chunkMXEZQRIL_cjs.makeStatusError(response.status, body, response.headers, { method: method2, url });
|
|
106
114
|
}
|
|
107
115
|
}
|
|
108
116
|
async _request(method2, path, options = {}) {
|
|
@@ -113,11 +121,11 @@ var APIClient = class {
|
|
|
113
121
|
try {
|
|
114
122
|
json = await response.json();
|
|
115
123
|
} catch {
|
|
116
|
-
throw new
|
|
124
|
+
throw new chunkMXEZQRIL_cjs.APIResponseValidationError({ status: response.status }, { method: method2, url });
|
|
117
125
|
}
|
|
118
126
|
const parsed = options.castTo.safeParse(json);
|
|
119
127
|
if (!parsed.success) {
|
|
120
|
-
throw new
|
|
128
|
+
throw new chunkMXEZQRIL_cjs.APIResponseValidationError({ status: response.status }, { method: method2, url });
|
|
121
129
|
}
|
|
122
130
|
return parsed.data;
|
|
123
131
|
}
|
|
@@ -324,9 +332,22 @@ var AssignmentLinks = class extends APIResource {
|
|
|
324
332
|
};
|
|
325
333
|
var BlockedRecipientSchema = zod.z.object({
|
|
326
334
|
id: zod.z.string(),
|
|
327
|
-
/**
|
|
328
|
-
|
|
329
|
-
|
|
335
|
+
/**
|
|
336
|
+
* 수신거부한 상대. **채널과 무관하게 항상 이 칸에 들어갑니다** —
|
|
337
|
+
* `call`·`message` 면 국내 표기로 정규화된 전화번호(예 `'01012345678'`),
|
|
338
|
+
* `email` 이면 소문자로 정규화된 이메일 주소(예 `'kim@example.com'`).
|
|
339
|
+
*
|
|
340
|
+
* 채널이 늘어도 이 칸 하나만 읽으면 됩니다.
|
|
341
|
+
*/
|
|
342
|
+
recipient: zod.z.string(),
|
|
343
|
+
/**
|
|
344
|
+
* ⚠️ `email` 이 2026-09-07 에 추가됐습니다. 이 값을 **enum 으로 좁히지 마세요** —
|
|
345
|
+
* 서버가 채널을 늘리면 옛 SDK 가 파싱 단계에서 통째로 실패합니다. 실제로 그 일이
|
|
346
|
+
* 있었습니다: `['call','message']` 로 굳혀 둔 탓에, 이메일 항목이 하나라도 섞이면
|
|
347
|
+
* 목록 조회 전체가 깨졌습니다. 알려진 값은 `BlockedChannel` 로 노출하되 파싱은
|
|
348
|
+
* 열어 둡니다.
|
|
349
|
+
*/
|
|
350
|
+
channel: zod.z.string(),
|
|
330
351
|
/** 지금 차단 중인지. 해제분도 이력으로 조회되므로 이 값으로 구분한다. */
|
|
331
352
|
active: zod.z.boolean(),
|
|
332
353
|
source: zod.z.string(),
|
|
@@ -344,16 +365,17 @@ var BlockedRecipientSchema = zod.z.object({
|
|
|
344
365
|
// src/resources/blocked-recipients.ts
|
|
345
366
|
var BlockedRecipients = class extends APIResource {
|
|
346
367
|
/**
|
|
347
|
-
*
|
|
368
|
+
* 수신거부 명단에 등록합니다.
|
|
348
369
|
*
|
|
349
|
-
*
|
|
370
|
+
* `recipient` 의 형식은 `channel` 이 정합니다 — `call`·`message` 는 **전화번호**(하이픈·`+82`
|
|
371
|
+
* 표기 모두 허용, 국내 표기로 정규화되어 저장), `email` 은 **이메일 주소**(소문자로 정규화).
|
|
350
372
|
*
|
|
351
|
-
* **멱등입니다** — 이미 차단 중인 (
|
|
373
|
+
* **멱등입니다** — 이미 차단 중인 (대상, 채널)을 다시 등록해도 에러가 아니라 기존 항목을
|
|
352
374
|
* 돌려줍니다. 같은 사람이 수신거부를 두 번 요청하는 것은 정상 상황이기 때문입니다.
|
|
353
375
|
*/
|
|
354
376
|
async create(params, options = {}) {
|
|
355
377
|
const body = stripNotGiven({
|
|
356
|
-
|
|
378
|
+
recipient: params.recipient,
|
|
357
379
|
channel: params.channel,
|
|
358
380
|
source: params.source,
|
|
359
381
|
sourceRef: params.sourceRef,
|
|
@@ -372,7 +394,7 @@ var BlockedRecipients = class extends APIResource {
|
|
|
372
394
|
async list(params = {}, options = {}) {
|
|
373
395
|
const query = stripNotGiven({
|
|
374
396
|
channel: params.channel,
|
|
375
|
-
|
|
397
|
+
recipient: params.recipient,
|
|
376
398
|
status: params.status,
|
|
377
399
|
page: params.page,
|
|
378
400
|
pageSize: params.pageSize
|
|
@@ -418,14 +440,11 @@ var BlockedRecipients = class extends APIResource {
|
|
|
418
440
|
*/
|
|
419
441
|
async release(blockId, params = {}, options = {}) {
|
|
420
442
|
const body = stripNotGiven({ note: params.note });
|
|
421
|
-
return this._client._deleteWithResponse(
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
...options
|
|
427
|
-
}
|
|
428
|
-
);
|
|
443
|
+
return this._client._deleteWithResponse(`${this._basePath}/blocked-recipients/${blockId}`, {
|
|
444
|
+
body: Object.keys(body).length ? body : void 0,
|
|
445
|
+
castTo: BlockedRecipientSchema,
|
|
446
|
+
...options
|
|
447
|
+
});
|
|
429
448
|
}
|
|
430
449
|
};
|
|
431
450
|
var CallSchema = zod.z.object({
|
|
@@ -712,6 +731,16 @@ var KakaoBrandTemplateSchema = zod.z.object({
|
|
|
712
731
|
createdAt: zod.z.string(),
|
|
713
732
|
updatedAt: zod.z.string()
|
|
714
733
|
}).passthrough();
|
|
734
|
+
var KakaoBrandImageSchema = zod.z.object({
|
|
735
|
+
id: zod.z.string(),
|
|
736
|
+
/** 업로드할 때 지정한 말풍선 유형. 규격이 유형마다 달라 다른 유형엔 재사용할 수 없다. */
|
|
737
|
+
bubbleType: zod.z.string(),
|
|
738
|
+
/** `'main'` | `'sub'`. 서브는 와이드리스트형에만 있다(메인 2:1, 서브 1:1). */
|
|
739
|
+
slot: zod.z.string(),
|
|
740
|
+
/** 업로드한 원본 파일 이름. */
|
|
741
|
+
name: zod.z.string().nullable(),
|
|
742
|
+
createdAt: zod.z.string()
|
|
743
|
+
}).passthrough();
|
|
715
744
|
var KakaoChannelCategorySchema = zod.z.object({
|
|
716
745
|
/** 채널 연결의 `categoryCode` 에 그대로 보내는 값. */
|
|
717
746
|
code: zod.z.string(),
|
|
@@ -883,6 +912,63 @@ var KakaoBrandTemplates = class extends APIResource {
|
|
|
883
912
|
return page;
|
|
884
913
|
}
|
|
885
914
|
};
|
|
915
|
+
var KakaoBrandImages = class extends APIResource {
|
|
916
|
+
get _path() {
|
|
917
|
+
return `${this._basePath}/kakao/brand-images`;
|
|
918
|
+
}
|
|
919
|
+
/**
|
|
920
|
+
* 이미지를 올리고 발송에 쓸 `id` 를 받는다.
|
|
921
|
+
*
|
|
922
|
+
* ```ts
|
|
923
|
+
* const image = await client.kakao.brandImages.upload({
|
|
924
|
+
* file: readFileSync('banner.png'),
|
|
925
|
+
* filename: 'banner.png',
|
|
926
|
+
* bubbleType: 'WIDE',
|
|
927
|
+
* });
|
|
928
|
+
* await client.messages.create({
|
|
929
|
+
* to: '01012345678',
|
|
930
|
+
* from: '07012345678',
|
|
931
|
+
* brand: {
|
|
932
|
+
* channelId,
|
|
933
|
+
* free: { chatBubbleType: 'WIDE', content: '신메뉴가 나왔어요.', imageId: image.id },
|
|
934
|
+
* },
|
|
935
|
+
* });
|
|
936
|
+
* ```
|
|
937
|
+
*
|
|
938
|
+
* ⚠️ `TEXT` 는 이미지 자리가 없어 `400` 이다. 자동완성에 뜨지만 쓸 수 없다.
|
|
939
|
+
*
|
|
940
|
+
* ⚠️ **상한은 5MB 다.** 넘으면 `400`, 10MB 를 넘으면 업로드 검증기가 먼저 끊어 `413` 이고
|
|
941
|
+
* **`code` 가 없다** — 즉 "너무 크다" 가 두 모양으로 온다.
|
|
942
|
+
*
|
|
943
|
+
* @param params.filename 원본 파일 이름. 목록에서 사람이 알아볼 유일한 단서다.
|
|
944
|
+
* @param params.slot 와이드리스트형에서 작은 항목에 쓸 이미지면 `'sub'`. 기본은 `'main'`.
|
|
945
|
+
*/
|
|
946
|
+
async upload(params, options = {}) {
|
|
947
|
+
const form = new FormData();
|
|
948
|
+
const blob = params.file instanceof Blob ? params.file : new Blob([params.file]);
|
|
949
|
+
form.append("image", blob, params.filename);
|
|
950
|
+
form.append("bubbleType", params.bubbleType);
|
|
951
|
+
if (params.slot) form.append("slot", params.slot);
|
|
952
|
+
return this._client._post(this._path, {
|
|
953
|
+
body: form,
|
|
954
|
+
castTo: zod.z.object({ id: zod.z.string() }).passthrough(),
|
|
955
|
+
...options
|
|
956
|
+
});
|
|
957
|
+
}
|
|
958
|
+
/** 올려 둔 이미지 목록. **`id` 를 잃었을 때 되찾는 경로다.** */
|
|
959
|
+
async list(params = {}, options = {}) {
|
|
960
|
+
const query = stripNotGiven({ page: params.page, pageSize: params.pageSize });
|
|
961
|
+
const path = this._path;
|
|
962
|
+
const raw = await this._client._get(path, {
|
|
963
|
+
castTo: PageSchema(KakaoBrandImageSchema),
|
|
964
|
+
query: Object.keys(query).length ? query : void 0,
|
|
965
|
+
...options
|
|
966
|
+
});
|
|
967
|
+
const page = new Page(raw.data, raw.meta);
|
|
968
|
+
page._setClient(this._client, path, KakaoBrandImageSchema, query);
|
|
969
|
+
return page;
|
|
970
|
+
}
|
|
971
|
+
};
|
|
886
972
|
var Kakao = class extends APIResource {
|
|
887
973
|
get channels() {
|
|
888
974
|
return new KakaoChannels(this._client, this._accountId);
|
|
@@ -894,6 +980,10 @@ var Kakao = class extends APIResource {
|
|
|
894
980
|
get brandTemplates() {
|
|
895
981
|
return new KakaoBrandTemplates(this._client, this._accountId);
|
|
896
982
|
}
|
|
983
|
+
/** 자유형 말풍선에 실을 이미지. 템플릿형은 이미지가 템플릿에 들어 있어 필요 없다. */
|
|
984
|
+
get brandImages() {
|
|
985
|
+
return new KakaoBrandImages(this._client, this._accountId);
|
|
986
|
+
}
|
|
897
987
|
/**
|
|
898
988
|
* 채널 연결 시 지정할 업종 카테고리 목록.
|
|
899
989
|
*
|
|
@@ -936,7 +1026,12 @@ var MessageSchema = zod.z.object({
|
|
|
936
1026
|
}).passthrough();
|
|
937
1027
|
|
|
938
1028
|
// src/resources/messages.ts
|
|
939
|
-
var
|
|
1029
|
+
var sendBlock = (p) => p && stripNotGiven({
|
|
1030
|
+
ChannelId: p.channelId,
|
|
1031
|
+
TemplateId: p.templateId,
|
|
1032
|
+
Variables: p.variables,
|
|
1033
|
+
Free: p.free
|
|
1034
|
+
});
|
|
940
1035
|
var Messages = class extends APIResource {
|
|
941
1036
|
/**
|
|
942
1037
|
* 문자(SMS/LMS/MMS) 또는 카카오 알림톡·브랜드 메시지를 발송합니다.
|
|
@@ -975,8 +1070,8 @@ var Messages = class extends APIResource {
|
|
|
975
1070
|
MediaUrl: params.mediaUrl,
|
|
976
1071
|
IdempotencyKey: params.idempotencyKey,
|
|
977
1072
|
// 중첩 객체는 손으로 조립한다 — stripNotGiven 은 한 겹만 훑는다.
|
|
978
|
-
Kakao:
|
|
979
|
-
Brand:
|
|
1073
|
+
Kakao: sendBlock(params.kakao),
|
|
1074
|
+
Brand: sendBlock(params.brand),
|
|
980
1075
|
Fallback: params.fallback && stripNotGiven({
|
|
981
1076
|
Type: params.fallback.type,
|
|
982
1077
|
Subject: params.fallback.subject,
|
|
@@ -1295,7 +1390,7 @@ var AccountContext = class {
|
|
|
1295
1390
|
return new Kakao(this._client, this._accountId);
|
|
1296
1391
|
}
|
|
1297
1392
|
};
|
|
1298
|
-
var WebhookVerificationError = class extends
|
|
1393
|
+
var WebhookVerificationError = class extends chunkMXEZQRIL_cjs.ClawOpsError {
|
|
1299
1394
|
constructor(message = "Webhook \uC11C\uBA85\uC774 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.") {
|
|
1300
1395
|
super(message);
|
|
1301
1396
|
this.name = "WebhookVerificationError";
|
|
@@ -1325,11 +1420,11 @@ var ClawOps = class extends APIClient {
|
|
|
1325
1420
|
constructor(options = {}) {
|
|
1326
1421
|
let apiKey = options.apiKey ?? process.env.CLAWOPS_API_KEY;
|
|
1327
1422
|
if (!apiKey) {
|
|
1328
|
-
throw new
|
|
1423
|
+
throw new chunkMXEZQRIL_cjs.ClawOpsError("apiKey\uB97C \uC9C0\uC815\uD558\uAC70\uB098 CLAWOPS_API_KEY \uD658\uACBD\uBCC0\uC218\uB97C \uC124\uC815\uD558\uC138\uC694.");
|
|
1329
1424
|
}
|
|
1330
1425
|
let accountId = options.accountId ?? process.env.CLAWOPS_ACCOUNT_ID;
|
|
1331
1426
|
if (!accountId) {
|
|
1332
|
-
throw new
|
|
1427
|
+
throw new chunkMXEZQRIL_cjs.ClawOpsError("accountId\uB97C \uC9C0\uC815\uD558\uAC70\uB098 CLAWOPS_ACCOUNT_ID \uD658\uACBD\uBCC0\uC218\uB97C \uC124\uC815\uD558\uC138\uC694.");
|
|
1333
1428
|
}
|
|
1334
1429
|
const baseURL = options.baseURL ?? process.env.CLAWOPS_BASE_URL ?? chunkLLPMUDNE_cjs.DEFAULT_BASE_URL;
|
|
1335
1430
|
super({
|
|
@@ -1386,79 +1481,79 @@ var client_default_default = ClawOps;
|
|
|
1386
1481
|
|
|
1387
1482
|
Object.defineProperty(exports, "APIConnectionError", {
|
|
1388
1483
|
enumerable: true,
|
|
1389
|
-
get: function () { return
|
|
1484
|
+
get: function () { return chunkMXEZQRIL_cjs.APIConnectionError; }
|
|
1390
1485
|
});
|
|
1391
1486
|
Object.defineProperty(exports, "APIError", {
|
|
1392
1487
|
enumerable: true,
|
|
1393
|
-
get: function () { return
|
|
1488
|
+
get: function () { return chunkMXEZQRIL_cjs.APIError; }
|
|
1394
1489
|
});
|
|
1395
1490
|
Object.defineProperty(exports, "APIResponseValidationError", {
|
|
1396
1491
|
enumerable: true,
|
|
1397
|
-
get: function () { return
|
|
1492
|
+
get: function () { return chunkMXEZQRIL_cjs.APIResponseValidationError; }
|
|
1398
1493
|
});
|
|
1399
1494
|
Object.defineProperty(exports, "APIStatusError", {
|
|
1400
1495
|
enumerable: true,
|
|
1401
|
-
get: function () { return
|
|
1496
|
+
get: function () { return chunkMXEZQRIL_cjs.APIStatusError; }
|
|
1402
1497
|
});
|
|
1403
1498
|
Object.defineProperty(exports, "APITimeoutError", {
|
|
1404
1499
|
enumerable: true,
|
|
1405
|
-
get: function () { return
|
|
1500
|
+
get: function () { return chunkMXEZQRIL_cjs.APITimeoutError; }
|
|
1406
1501
|
});
|
|
1407
1502
|
Object.defineProperty(exports, "AgentConnectionError", {
|
|
1408
1503
|
enumerable: true,
|
|
1409
|
-
get: function () { return
|
|
1504
|
+
get: function () { return chunkMXEZQRIL_cjs.AgentConnectionError; }
|
|
1410
1505
|
});
|
|
1411
1506
|
Object.defineProperty(exports, "AgentError", {
|
|
1412
1507
|
enumerable: true,
|
|
1413
|
-
get: function () { return
|
|
1508
|
+
get: function () { return chunkMXEZQRIL_cjs.AgentError; }
|
|
1414
1509
|
});
|
|
1415
1510
|
Object.defineProperty(exports, "AuthenticationError", {
|
|
1416
1511
|
enumerable: true,
|
|
1417
|
-
get: function () { return
|
|
1512
|
+
get: function () { return chunkMXEZQRIL_cjs.AuthenticationError; }
|
|
1418
1513
|
});
|
|
1419
1514
|
Object.defineProperty(exports, "BadRequestError", {
|
|
1420
1515
|
enumerable: true,
|
|
1421
|
-
get: function () { return
|
|
1516
|
+
get: function () { return chunkMXEZQRIL_cjs.BadRequestError; }
|
|
1422
1517
|
});
|
|
1423
1518
|
Object.defineProperty(exports, "ClawOpsError", {
|
|
1424
1519
|
enumerable: true,
|
|
1425
|
-
get: function () { return
|
|
1520
|
+
get: function () { return chunkMXEZQRIL_cjs.ClawOpsError; }
|
|
1426
1521
|
});
|
|
1427
1522
|
Object.defineProperty(exports, "ConflictError", {
|
|
1428
1523
|
enumerable: true,
|
|
1429
|
-
get: function () { return
|
|
1524
|
+
get: function () { return chunkMXEZQRIL_cjs.ConflictError; }
|
|
1430
1525
|
});
|
|
1431
1526
|
Object.defineProperty(exports, "InternalServerError", {
|
|
1432
1527
|
enumerable: true,
|
|
1433
|
-
get: function () { return
|
|
1528
|
+
get: function () { return chunkMXEZQRIL_cjs.InternalServerError; }
|
|
1434
1529
|
});
|
|
1435
1530
|
Object.defineProperty(exports, "NotFoundError", {
|
|
1436
1531
|
enumerable: true,
|
|
1437
|
-
get: function () { return
|
|
1532
|
+
get: function () { return chunkMXEZQRIL_cjs.NotFoundError; }
|
|
1438
1533
|
});
|
|
1439
1534
|
Object.defineProperty(exports, "PermissionDeniedError", {
|
|
1440
1535
|
enumerable: true,
|
|
1441
|
-
get: function () { return
|
|
1536
|
+
get: function () { return chunkMXEZQRIL_cjs.PermissionDeniedError; }
|
|
1442
1537
|
});
|
|
1443
1538
|
Object.defineProperty(exports, "RateLimitError", {
|
|
1444
1539
|
enumerable: true,
|
|
1445
|
-
get: function () { return
|
|
1540
|
+
get: function () { return chunkMXEZQRIL_cjs.RateLimitError; }
|
|
1446
1541
|
});
|
|
1447
1542
|
Object.defineProperty(exports, "ServiceUnavailableError", {
|
|
1448
1543
|
enumerable: true,
|
|
1449
|
-
get: function () { return
|
|
1544
|
+
get: function () { return chunkMXEZQRIL_cjs.ServiceUnavailableError; }
|
|
1450
1545
|
});
|
|
1451
1546
|
Object.defineProperty(exports, "SolapiBridgeError", {
|
|
1452
1547
|
enumerable: true,
|
|
1453
|
-
get: function () { return
|
|
1548
|
+
get: function () { return chunkMXEZQRIL_cjs.SolapiBridgeError; }
|
|
1454
1549
|
});
|
|
1455
1550
|
Object.defineProperty(exports, "UnprocessableEntityError", {
|
|
1456
1551
|
enumerable: true,
|
|
1457
|
-
get: function () { return
|
|
1552
|
+
get: function () { return chunkMXEZQRIL_cjs.UnprocessableEntityError; }
|
|
1458
1553
|
});
|
|
1459
1554
|
Object.defineProperty(exports, "VERSION", {
|
|
1460
1555
|
enumerable: true,
|
|
1461
|
-
get: function () { return
|
|
1556
|
+
get: function () { return chunkWTG2QGQU_cjs.VERSION; }
|
|
1462
1557
|
});
|
|
1463
1558
|
exports.APIClient = APIClient;
|
|
1464
1559
|
exports.AccountContext = AccountContext;
|
|
@@ -1467,6 +1562,7 @@ exports.BlockedRecipients = BlockedRecipients;
|
|
|
1467
1562
|
exports.Calls = Calls;
|
|
1468
1563
|
exports.ClawOps = ClawOps;
|
|
1469
1564
|
exports.Kakao = Kakao;
|
|
1565
|
+
exports.KakaoBrandImages = KakaoBrandImages;
|
|
1470
1566
|
exports.KakaoBrandTemplates = KakaoBrandTemplates;
|
|
1471
1567
|
exports.KakaoChannels = KakaoChannels;
|
|
1472
1568
|
exports.KakaoTemplates = KakaoTemplates;
|