@zapier/zapier-sdk 0.18.4 → 1.0.2
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 +23 -0
- package/README.md +12 -3
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +11 -6
- package/dist/api/client.test.js +82 -27
- package/dist/api/index.d.ts +3 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +2 -3
- package/dist/api/schemas.d.ts +5 -5
- package/dist/api/types.d.ts +8 -3
- package/dist/api/types.d.ts.map +1 -1
- package/dist/auth.d.ts +54 -26
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +211 -39
- package/dist/auth.test.js +338 -64
- package/dist/constants.d.ts +14 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +14 -0
- package/dist/credentials.d.ts +57 -0
- package/dist/credentials.d.ts.map +1 -0
- package/dist/credentials.js +174 -0
- package/dist/index.cjs +346 -48
- package/dist/index.d.mts +213 -29
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.mjs +326 -47
- package/dist/plugins/api/index.d.ts +2 -0
- package/dist/plugins/api/index.d.ts.map +1 -1
- package/dist/plugins/api/index.js +8 -4
- package/dist/plugins/eventEmission/index.d.ts.map +1 -1
- package/dist/plugins/eventEmission/index.js +1 -3
- package/dist/plugins/eventEmission/index.test.js +14 -17
- package/dist/plugins/getAction/schemas.d.ts +1 -1
- package/dist/plugins/getInputFieldsSchema/schemas.d.ts +1 -1
- package/dist/plugins/listActions/index.test.js +1 -0
- package/dist/plugins/listActions/schemas.d.ts +1 -1
- package/dist/plugins/listInputFieldChoices/schemas.d.ts +1 -1
- package/dist/plugins/listInputFields/schemas.d.ts +1 -1
- package/dist/plugins/manifest/index.d.ts.map +1 -1
- package/dist/plugins/manifest/index.js +10 -2
- package/dist/plugins/manifest/index.test.js +46 -6
- package/dist/plugins/runAction/schemas.d.ts +1 -1
- package/dist/schemas/Action.d.ts +1 -1
- package/dist/sdk.d.ts +1 -0
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.test.js +5 -4
- package/dist/types/credentials.d.ts +65 -0
- package/dist/types/credentials.d.ts.map +1 -0
- package/dist/types/credentials.js +42 -0
- package/dist/types/properties.d.ts +1 -1
- package/dist/types/sdk.d.ts +12 -3
- package/dist/types/sdk.d.ts.map +1 -1
- package/dist/utils/logging.d.ts +13 -0
- package/dist/utils/logging.d.ts.map +1 -0
- package/dist/utils/logging.js +20 -0
- package/package.json +2 -2
|
@@ -7,8 +7,8 @@ export declare const ListActionsSchema: z.ZodObject<{
|
|
|
7
7
|
_def: z.core.$ZodStringDef & import("../..").PositionalMetadata;
|
|
8
8
|
};
|
|
9
9
|
actionType: z.ZodOptional<z.ZodEnum<{
|
|
10
|
-
search: "search";
|
|
11
10
|
filter: "filter";
|
|
11
|
+
search: "search";
|
|
12
12
|
read: "read";
|
|
13
13
|
read_bulk: "read_bulk";
|
|
14
14
|
run: "run";
|
|
@@ -13,8 +13,8 @@ export declare const ListInputFieldChoicesSchema: z.ZodObject<{
|
|
|
13
13
|
_def: z.core.$ZodStringDef & import("../..").PositionalMetadata;
|
|
14
14
|
};
|
|
15
15
|
actionType: z.ZodEnum<{
|
|
16
|
-
search: "search";
|
|
17
16
|
filter: "filter";
|
|
17
|
+
search: "search";
|
|
18
18
|
read: "read";
|
|
19
19
|
read_bulk: "read_bulk";
|
|
20
20
|
run: "run";
|
|
@@ -7,8 +7,8 @@ export declare const ListInputFieldsSchema: z.ZodObject<{
|
|
|
7
7
|
_def: z.core.$ZodStringDef & import("../..").PositionalMetadata;
|
|
8
8
|
};
|
|
9
9
|
actionType: z.ZodEnum<{
|
|
10
|
-
search: "search";
|
|
11
10
|
filter: "filter";
|
|
11
|
+
search: "search";
|
|
12
12
|
read: "read";
|
|
13
13
|
read_bulk: "read_bulk";
|
|
14
14
|
run: "run";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/manifest/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,4BAA4B,EAC5B,QAAQ,EACR,aAAa,EACb,2BAA2B,EAC3B,cAAc,EACd,WAAW,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAgB3C,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE;QACP,4BAA4B,EAAE,4BAA4B,CAAC;QAC3D,cAAc,EAAE,cAAc,CAAC;QAC/B,mBAAmB,EAAE,CACnB,OAAO,EAAE,0BAA0B,KAChC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACxC,cAAc,EAAE,CACd,OAAO,EAAE,qBAAqB,KAC3B,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACnC,eAAe,EAAE,CAAC,OAAO,EAAE;YACzB,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,QAAQ,CAAC;SACpB,KAAK,WAAW,GAAG,IAAI,CAAC;QACzB,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE;YAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5C,iBAAiB,EAAE,CAAC,OAAO,EAAE;YAC3B,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,SAAS,CAAC,EAAE,OAAO,CAAC;SACrB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,CAAC,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,QAAQ,CAAA;SAAE,KAAK,OAAO,CAAC;QAC3E,iBAAiB,EAAE,CAAC,OAAO,EAAE;YAC3B,MAAM,EAAE,MAAM,CAAC;YACf,QAAQ,EAAE,QAAQ,CAAC;SACpB,KAAK,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC;QACrC,oBAAoB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;KACtE,CAAC;CACH;AA2BD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/manifest/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,8 +35,16 @@ export async function readManifestFromFile(filePath) {
|
|
|
35
35
|
const content = await readFile(resolvedPath);
|
|
36
36
|
return parseManifestContent(content, resolvedPath);
|
|
37
37
|
}
|
|
38
|
-
catch {
|
|
39
|
-
|
|
38
|
+
catch (error) {
|
|
39
|
+
// Silently return null for "file not found" errors (expected for first-time users)
|
|
40
|
+
const isFileNotFound = (error &&
|
|
41
|
+
typeof error === "object" &&
|
|
42
|
+
"code" in error &&
|
|
43
|
+
error.code === "ENOENT") ||
|
|
44
|
+
(error instanceof Error && error.message.includes("File not found"));
|
|
45
|
+
if (!isFileNotFound) {
|
|
46
|
+
console.warn(`⚠️ Failed to read manifest from ${filePath}`);
|
|
47
|
+
}
|
|
40
48
|
return null;
|
|
41
49
|
}
|
|
42
50
|
}
|
|
@@ -247,14 +247,35 @@ describe("manifestPlugin", () => {
|
|
|
247
247
|
expect(mockResolve).toHaveBeenCalledWith("manifest.json");
|
|
248
248
|
expect(mockReadFile).toHaveBeenCalledWith("/resolved/manifest.json");
|
|
249
249
|
});
|
|
250
|
-
it("should
|
|
251
|
-
|
|
250
|
+
it("should silently return null when file does not exist (ENOENT)", async () => {
|
|
251
|
+
const enoentError = Object.assign(new Error("ENOENT: no such file"), {
|
|
252
|
+
code: "ENOENT",
|
|
253
|
+
});
|
|
254
|
+
mockReadFile.mockRejectedValue(enoentError);
|
|
252
255
|
const sdk = createTestSdk({ manifestPath: "nonexistent.json" });
|
|
253
256
|
const context = sdk.getContext();
|
|
254
257
|
// Trigger file loading by calling a function
|
|
255
258
|
await context.getVersionedImplementationId("slack");
|
|
256
|
-
// Verify
|
|
257
|
-
expect(console.warn).
|
|
259
|
+
// Verify no warning is logged when file simply doesn't exist
|
|
260
|
+
expect(console.warn).not.toHaveBeenCalled();
|
|
261
|
+
});
|
|
262
|
+
it("should silently return null when file does not exist (browser fallback)", async () => {
|
|
263
|
+
mockReadFile.mockRejectedValue(new Error("File not found: /some/path"));
|
|
264
|
+
const sdk = createTestSdk({ manifestPath: "nonexistent.json" });
|
|
265
|
+
const context = sdk.getContext();
|
|
266
|
+
// Trigger file loading by calling a function
|
|
267
|
+
await context.getVersionedImplementationId("slack");
|
|
268
|
+
// Verify no warning is logged when file simply doesn't exist
|
|
269
|
+
expect(console.warn).not.toHaveBeenCalled();
|
|
270
|
+
});
|
|
271
|
+
it("should handle file read errors gracefully", async () => {
|
|
272
|
+
mockReadFile.mockRejectedValue(new Error("Permission denied"));
|
|
273
|
+
const sdk = createTestSdk({ manifestPath: "protected.json" });
|
|
274
|
+
const context = sdk.getContext();
|
|
275
|
+
// Trigger file loading by calling a function
|
|
276
|
+
await context.getVersionedImplementationId("slack");
|
|
277
|
+
// Verify file loading errors (other than file not found) are logged
|
|
278
|
+
expect(console.warn).toHaveBeenCalledWith(expect.stringContaining("Failed to read manifest from protected.json"));
|
|
258
279
|
});
|
|
259
280
|
it("should handle invalid JSON gracefully", async () => {
|
|
260
281
|
mockReadFile.mockResolvedValue("invalid json content");
|
|
@@ -558,10 +579,29 @@ describe("readManifestFromFile", () => {
|
|
|
558
579
|
},
|
|
559
580
|
});
|
|
560
581
|
});
|
|
561
|
-
it("should
|
|
562
|
-
|
|
582
|
+
it("should return null without warning when file does not exist (ENOENT)", async () => {
|
|
583
|
+
vi.spyOn(console, "warn").mockImplementation(() => { });
|
|
584
|
+
const enoentError = Object.assign(new Error("ENOENT: no such file"), {
|
|
585
|
+
code: "ENOENT",
|
|
586
|
+
});
|
|
587
|
+
mockReadFile.mockRejectedValue(enoentError);
|
|
588
|
+
const result = await readManifestFromFile("nonexistent.json");
|
|
589
|
+
expect(result).toBeNull();
|
|
590
|
+
expect(console.warn).not.toHaveBeenCalled();
|
|
591
|
+
});
|
|
592
|
+
it("should return null without warning when file does not exist (browser fallback)", async () => {
|
|
593
|
+
vi.spyOn(console, "warn").mockImplementation(() => { });
|
|
594
|
+
mockReadFile.mockRejectedValue(new Error("File not found: /some/path"));
|
|
563
595
|
const result = await readManifestFromFile("nonexistent.json");
|
|
564
596
|
expect(result).toBeNull();
|
|
597
|
+
expect(console.warn).not.toHaveBeenCalled();
|
|
598
|
+
});
|
|
599
|
+
it("should handle file read errors with warning", async () => {
|
|
600
|
+
vi.spyOn(console, "warn").mockImplementation(() => { });
|
|
601
|
+
mockReadFile.mockRejectedValue(new Error("Permission denied"));
|
|
602
|
+
const result = await readManifestFromFile("protected.json");
|
|
603
|
+
expect(result).toBeNull();
|
|
604
|
+
expect(console.warn).toHaveBeenCalledWith(expect.stringContaining("Failed to read manifest from protected.json"));
|
|
565
605
|
});
|
|
566
606
|
it("should handle invalid JSON content", async () => {
|
|
567
607
|
mockReadFile.mockResolvedValue("invalid json");
|
|
@@ -6,8 +6,8 @@ export declare const RunActionSchema: z.ZodObject<{
|
|
|
6
6
|
_def: z.core.$ZodStringDef & import("../..").PositionalMetadata;
|
|
7
7
|
};
|
|
8
8
|
actionType: z.ZodEnum<{
|
|
9
|
-
search: "search";
|
|
10
9
|
filter: "filter";
|
|
10
|
+
search: "search";
|
|
11
11
|
read: "read";
|
|
12
12
|
read_bulk: "read_bulk";
|
|
13
13
|
run: "run";
|
package/dist/schemas/Action.d.ts
CHANGED
|
@@ -8,8 +8,8 @@ export declare const ActionItemSchema: z.ZodObject<{
|
|
|
8
8
|
app_key: z.ZodString;
|
|
9
9
|
app_version: z.ZodOptional<z.ZodString>;
|
|
10
10
|
action_type: z.ZodEnum<{
|
|
11
|
-
search: "search";
|
|
12
11
|
filter: "filter";
|
|
12
|
+
search: "search";
|
|
13
13
|
read: "read";
|
|
14
14
|
read_bulk: "read_bulk";
|
|
15
15
|
run: "run";
|
package/dist/sdk.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export declare function createZapierSdkWithoutRegistry(options?: ZapierSdkOption
|
|
|
17
17
|
meta: Record<string, PluginMeta>;
|
|
18
18
|
} & import(".").EventEmissionContext & {
|
|
19
19
|
api: import("./api").ApiClient;
|
|
20
|
+
resolveCredentials: () => Promise<import("./auth").ResolvedCredentials | undefined>;
|
|
20
21
|
} & {
|
|
21
22
|
getVersionedImplementationId: import("./plugins/manifest/schemas").GetVersionedImplementationId;
|
|
22
23
|
resolveAppKeys: import("./plugins/manifest/schemas").ResolveAppKeys;
|
package/dist/sdk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,GAAG,EACH,MAAM,EACN,wBAAwB,EACxB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACX,MAAM,gBAAgB,CAAC;AA2BxB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAAG;AAG3D,wBAAgB,SAAS,CACvB,WAAW,GAAG,EAAE,EAChB,eAAe,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAClC,EAED,OAAO,GAAE,gBAAqB,EAC9B,UAAU,GAAE,WAA+B,EAC3C,cAAc,GAAE,eAAiD;;cAKrD,gBAAgB,EAAE,SAAS,SAAS,cAAc,UAClD,MAAM,CACZ,WAAW,GAAG;QAAE,UAAU,IAAI,eAAe,CAAA;KAAE,EAC/C,gBAAgB,EAChB,SAAS,CACV,qBACiB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,GAAG,CACJ,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,EAC7C,eAAe,GAAG,WAAW,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CACnE;EA8DJ;AAED,wBAAgB,8BAA8B,CAAC,OAAO,GAAE,gBAAqB;UApFnE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,GAAG,EACH,MAAM,EACN,wBAAwB,EACxB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACX,MAAM,gBAAgB,CAAC;AA2BxB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAAG;AAG3D,wBAAgB,SAAS,CACvB,WAAW,GAAG,EAAE,EAChB,eAAe,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAClC,EAED,OAAO,GAAE,gBAAqB,EAC9B,UAAU,GAAE,WAA+B,EAC3C,cAAc,GAAE,eAAiD;;cAKrD,gBAAgB,EAAE,SAAS,SAAS,cAAc,UAClD,MAAM,CACZ,WAAW,GAAG;QAAE,UAAU,IAAI,eAAe,CAAA;KAAE,EAC/C,gBAAgB,EAChB,SAAS,CACV,qBACiB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,GAAG,CACJ,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,EAC7C,eAAe,GAAG,WAAW,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CACnE;EA8DJ;AAED,wBAAgB,8BAA8B,CAAC,OAAO,GAAE,gBAAqB;UApFnE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;;;;;;;;;;;;;+BAD2B,CAAC;kBAC/C,CAAC;;;;kBAKG,CAAC;iBAAyB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuH/C;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAMzE"}
|
package/dist/sdk.test.js
CHANGED
|
@@ -243,15 +243,16 @@ describe("Environment Variable Support", () => {
|
|
|
243
243
|
expect(actualUrl).toMatch(new RegExp(`^${customBaseUrl}`));
|
|
244
244
|
expect(actualUrl).toContain("/api/v0/");
|
|
245
245
|
});
|
|
246
|
-
it("should accept
|
|
246
|
+
it("should accept credentials with clientId in SDK options", async () => {
|
|
247
247
|
delete process.env.ZAPIER_BASE_URL;
|
|
248
248
|
vi.resetModules();
|
|
249
249
|
const { createZapierSdk } = await import("./sdk");
|
|
250
250
|
const sdk = createZapierSdk({
|
|
251
|
-
|
|
252
|
-
|
|
251
|
+
credentials: {
|
|
252
|
+
clientId: "test-client-id",
|
|
253
|
+
},
|
|
253
254
|
});
|
|
254
|
-
// Verify SDK was created successfully with
|
|
255
|
+
// Verify SDK was created successfully with credentials option
|
|
255
256
|
expect(sdk).toBeDefined();
|
|
256
257
|
expect(sdk.listApps).toBeDefined();
|
|
257
258
|
});
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credentials type definitions
|
|
3
|
+
*
|
|
4
|
+
* The credentials system provides a unified way to authenticate with Zapier APIs.
|
|
5
|
+
* It supports multiple credential types:
|
|
6
|
+
* - String: A token (JWT or API key) used directly
|
|
7
|
+
* - Client credentials: OAuth client ID + secret exchanged for a token
|
|
8
|
+
* - PKCE: OAuth client ID for interactive login (CLI only)
|
|
9
|
+
* - Function: Lazy/dynamic credential resolution
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Client credentials for OAuth client_credentials flow.
|
|
13
|
+
* The SDK will exchange these for an access token.
|
|
14
|
+
*/
|
|
15
|
+
export interface ClientCredentialsObject {
|
|
16
|
+
type?: "client_credentials";
|
|
17
|
+
clientId: string;
|
|
18
|
+
clientSecret: string;
|
|
19
|
+
baseUrl?: string;
|
|
20
|
+
scope?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* PKCE credentials for interactive OAuth flow.
|
|
24
|
+
* Only works when @zapier/zapier-sdk-cli-login is available.
|
|
25
|
+
*/
|
|
26
|
+
export interface PkceCredentialsObject {
|
|
27
|
+
type?: "pkce";
|
|
28
|
+
clientId: string;
|
|
29
|
+
baseUrl?: string;
|
|
30
|
+
scope?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Union of all credential object types.
|
|
34
|
+
*/
|
|
35
|
+
export type CredentialsObject = ClientCredentialsObject | PkceCredentialsObject;
|
|
36
|
+
/**
|
|
37
|
+
* Resolved credentials - what a credentials function must return.
|
|
38
|
+
* Either a string (token) or a credentials object.
|
|
39
|
+
* Functions are not allowed to return other functions.
|
|
40
|
+
*/
|
|
41
|
+
export type ResolvedCredentials = string | CredentialsObject;
|
|
42
|
+
/**
|
|
43
|
+
* Credentials can be:
|
|
44
|
+
* - A string (token or API key)
|
|
45
|
+
* - A credentials object (client_credentials or pkce)
|
|
46
|
+
* - A function that returns credentials (sync or async)
|
|
47
|
+
*/
|
|
48
|
+
export type Credentials = ResolvedCredentials | (() => ResolvedCredentials | Promise<ResolvedCredentials>);
|
|
49
|
+
/**
|
|
50
|
+
* Type guard for client credentials objects.
|
|
51
|
+
*/
|
|
52
|
+
export declare function isClientCredentials(credentials: ResolvedCredentials): credentials is ClientCredentialsObject;
|
|
53
|
+
/**
|
|
54
|
+
* Type guard for PKCE credentials objects.
|
|
55
|
+
*/
|
|
56
|
+
export declare function isPkceCredentials(credentials: ResolvedCredentials): credentials is PkceCredentialsObject;
|
|
57
|
+
/**
|
|
58
|
+
* Type guard for credentials objects (either type).
|
|
59
|
+
*/
|
|
60
|
+
export declare function isCredentialsObject(credentials: ResolvedCredentials): credentials is CredentialsObject;
|
|
61
|
+
/**
|
|
62
|
+
* Type guard for credentials functions.
|
|
63
|
+
*/
|
|
64
|
+
export declare function isCredentialsFunction(credentials: Credentials): credentials is () => ResolvedCredentials | Promise<ResolvedCredentials>;
|
|
65
|
+
//# sourceMappingURL=credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/types/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,qBAAqB,CAAC;AAEhF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAE/D;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,mBAAmB,GAC/B,WAAW,IAAI,uBAAuB,CAOxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,mBAAmB,GAC/B,WAAW,IAAI,qBAAqB,CAOtC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,mBAAmB,GAC/B,WAAW,IAAI,iBAAiB,CAMlC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,WAAW,GACvB,WAAW,IAAI,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAEzE"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credentials type definitions
|
|
3
|
+
*
|
|
4
|
+
* The credentials system provides a unified way to authenticate with Zapier APIs.
|
|
5
|
+
* It supports multiple credential types:
|
|
6
|
+
* - String: A token (JWT or API key) used directly
|
|
7
|
+
* - Client credentials: OAuth client ID + secret exchanged for a token
|
|
8
|
+
* - PKCE: OAuth client ID for interactive login (CLI only)
|
|
9
|
+
* - Function: Lazy/dynamic credential resolution
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Type guard for client credentials objects.
|
|
13
|
+
*/
|
|
14
|
+
export function isClientCredentials(credentials) {
|
|
15
|
+
return (typeof credentials === "object" &&
|
|
16
|
+
credentials !== null &&
|
|
17
|
+
"clientId" in credentials &&
|
|
18
|
+
"clientSecret" in credentials);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Type guard for PKCE credentials objects.
|
|
22
|
+
*/
|
|
23
|
+
export function isPkceCredentials(credentials) {
|
|
24
|
+
return (typeof credentials === "object" &&
|
|
25
|
+
credentials !== null &&
|
|
26
|
+
"clientId" in credentials &&
|
|
27
|
+
!("clientSecret" in credentials));
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Type guard for credentials objects (either type).
|
|
31
|
+
*/
|
|
32
|
+
export function isCredentialsObject(credentials) {
|
|
33
|
+
return (typeof credentials === "object" &&
|
|
34
|
+
credentials !== null &&
|
|
35
|
+
"clientId" in credentials);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Type guard for credentials functions.
|
|
39
|
+
*/
|
|
40
|
+
export function isCredentialsFunction(credentials) {
|
|
41
|
+
return typeof credentials === "function";
|
|
42
|
+
}
|
|
@@ -3,8 +3,8 @@ export declare const AppKeyPropertySchema: z.ZodString & {
|
|
|
3
3
|
_def: z.core.$ZodStringDef & import("..").PositionalMetadata;
|
|
4
4
|
};
|
|
5
5
|
export declare const ActionTypePropertySchema: z.ZodEnum<{
|
|
6
|
-
search: "search";
|
|
7
6
|
filter: "filter";
|
|
7
|
+
search: "search";
|
|
8
8
|
read: "read";
|
|
9
9
|
read_bulk: "read_bulk";
|
|
10
10
|
run: "run";
|
package/dist/types/sdk.d.ts
CHANGED
|
@@ -4,14 +4,23 @@
|
|
|
4
4
|
import type { EventCallback } from "./events";
|
|
5
5
|
import type { EventEmissionConfig } from "../plugins/eventEmission";
|
|
6
6
|
import type { Manifest } from "../plugins/manifest";
|
|
7
|
+
import type { Credentials } from "./credentials";
|
|
7
8
|
export interface BaseSdkOptions {
|
|
9
|
+
/**
|
|
10
|
+
* Authentication credentials. Can be:
|
|
11
|
+
* - A string (token or API key)
|
|
12
|
+
* - An object with clientId/clientSecret for client_credentials flow
|
|
13
|
+
* - An object with clientId (no secret) for PKCE flow
|
|
14
|
+
* - A function returning any of the above
|
|
15
|
+
*/
|
|
16
|
+
credentials?: Credentials;
|
|
17
|
+
/**
|
|
18
|
+
* @deprecated Use `credentials` instead.
|
|
19
|
+
*/
|
|
8
20
|
token?: string;
|
|
9
|
-
getToken?: () => Promise<string | undefined>;
|
|
10
21
|
onEvent?: EventCallback;
|
|
11
22
|
fetch?: typeof fetch;
|
|
12
23
|
baseUrl?: string;
|
|
13
|
-
authBaseUrl?: string;
|
|
14
|
-
authClientId?: string;
|
|
15
24
|
trackingBaseUrl?: string;
|
|
16
25
|
debug?: boolean;
|
|
17
26
|
manifestPath?: string;
|
package/dist/types/sdk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/types/sdk.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/types/sdk.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAGD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,4CAA4C,CAAC;AACrG,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,6CAA6C,CAAC;AACvG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AACpF,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,oCAAoC,CAAC;AAChG,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,qCAAqC,CAAC;AAClG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAMlE,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAA;KAAE,CAAC,CAAC;IAC/D,YAAY,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAGD,MAAM,WAAW,kBACf,SAAQ,0BAA0B,EAChC,4BAA4B,EAC5B,kCAAkC,EAClC,mCAAmC,EACnC,uBAAuB;CAE1B;AAUD,MAAM,WAAW,SACf,SAAQ,UAAU,CAChB,sBAAsB,GACpB,mBAAmB,GACnB,kBAAkB,GAClB,sBAAsB,GACtB,sBAAsB,GACtB,oBAAoB,GACpB,yBAAyB,GACzB,uBAAuB,GACvB,uBAAuB,GACvB,iCAAiC,GACjC,+BAA+B,GAC/B,qCAAqC,GACrC,sCAAsC,GACtC,6BAA6B,GAC7B,kCAAkC,GAClC,mCAAmC,GACnC,qBAAqB,GACrB,wBAAwB,GACxB,qBAAqB,GACrB,iBAAiB,CACpB;IAED,IAAI,EAAE,WAAW,GAAG,aAAa,CAAC;CACnC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logging utilities for the SDK
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Log a deprecation warning. Each unique message is only logged once per process.
|
|
6
|
+
*/
|
|
7
|
+
export declare function logDeprecation(message: string): void;
|
|
8
|
+
/**
|
|
9
|
+
* Reset the set of logged deprecation warnings.
|
|
10
|
+
* Useful for testing.
|
|
11
|
+
*/
|
|
12
|
+
export declare function resetDeprecationWarnings(): void;
|
|
13
|
+
//# sourceMappingURL=logging.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAIpD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logging utilities for the SDK
|
|
3
|
+
*/
|
|
4
|
+
const loggedDeprecations = new Set();
|
|
5
|
+
/**
|
|
6
|
+
* Log a deprecation warning. Each unique message is only logged once per process.
|
|
7
|
+
*/
|
|
8
|
+
export function logDeprecation(message) {
|
|
9
|
+
if (loggedDeprecations.has(message))
|
|
10
|
+
return;
|
|
11
|
+
loggedDeprecations.add(message);
|
|
12
|
+
console.warn(`[zapier-sdk] Deprecation: ${message}`);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Reset the set of logged deprecation warnings.
|
|
16
|
+
* Useful for testing.
|
|
17
|
+
*/
|
|
18
|
+
export function resetDeprecationWarnings() {
|
|
19
|
+
loggedDeprecations.clear();
|
|
20
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zapier/zapier-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Complete Zapier SDK - combines all Zapier SDK packages",
|
|
5
5
|
"main": "dist/index.cjs",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"tsup": "^8.5.0",
|
|
53
53
|
"typescript": "^5.8.3",
|
|
54
54
|
"vitest": "^3.2.3",
|
|
55
|
-
"@zapier/zapier-sdk-cli-login": "0.
|
|
55
|
+
"@zapier/zapier-sdk-cli-login": "0.4.0"
|
|
56
56
|
},
|
|
57
57
|
"scripts": {
|
|
58
58
|
"build": "tsup",
|