@zapier/zapier-sdk-cli 0.16.0 → 0.16.3

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/cli.cjs +22 -5
  3. package/dist/cli.mjs +22 -5
  4. package/dist/index.cjs +1 -1
  5. package/dist/index.mjs +1 -1
  6. package/dist/package.json +8 -2
  7. package/dist/src/cli.js +2 -1
  8. package/dist/src/utils/cli-generator.js +23 -2
  9. package/dist/tsconfig.tsbuildinfo +1 -1
  10. package/package.json +11 -5
  11. package/src/cli.test.ts +0 -28
  12. package/src/cli.ts +0 -96
  13. package/src/generators/ast-generator.test.ts +0 -908
  14. package/src/generators/ast-generator.ts +0 -774
  15. package/src/index.ts +0 -12
  16. package/src/plugins/add/index.test.ts +0 -58
  17. package/src/plugins/add/index.ts +0 -177
  18. package/src/plugins/add/schemas.ts +0 -35
  19. package/src/plugins/buildManifest/index.test.ts +0 -679
  20. package/src/plugins/buildManifest/index.ts +0 -131
  21. package/src/plugins/buildManifest/schemas.ts +0 -55
  22. package/src/plugins/bundleCode/index.ts +0 -128
  23. package/src/plugins/bundleCode/schemas.ts +0 -24
  24. package/src/plugins/generateAppTypes/index.test.ts +0 -679
  25. package/src/plugins/generateAppTypes/index.ts +0 -227
  26. package/src/plugins/generateAppTypes/schemas.ts +0 -61
  27. package/src/plugins/getLoginConfigPath/index.ts +0 -45
  28. package/src/plugins/getLoginConfigPath/schemas.ts +0 -10
  29. package/src/plugins/index.ts +0 -8
  30. package/src/plugins/login/index.ts +0 -135
  31. package/src/plugins/login/schemas.ts +0 -13
  32. package/src/plugins/logout/index.ts +0 -37
  33. package/src/plugins/logout/schemas.ts +0 -8
  34. package/src/plugins/mcp/index.ts +0 -43
  35. package/src/plugins/mcp/schemas.ts +0 -13
  36. package/src/sdk.ts +0 -45
  37. package/src/telemetry/builders.ts +0 -113
  38. package/src/telemetry/events.ts +0 -39
  39. package/src/types/sdk.ts +0 -8
  40. package/src/utils/api/client.ts +0 -44
  41. package/src/utils/auth/login.ts +0 -214
  42. package/src/utils/cli-generator-utils.ts +0 -169
  43. package/src/utils/cli-generator.test.ts +0 -195
  44. package/src/utils/cli-generator.ts +0 -784
  45. package/src/utils/constants.ts +0 -9
  46. package/src/utils/directory-detection.ts +0 -23
  47. package/src/utils/errors.ts +0 -26
  48. package/src/utils/getCallablePromise.ts +0 -21
  49. package/src/utils/log.ts +0 -23
  50. package/src/utils/manifest-helpers.ts +0 -25
  51. package/src/utils/package-manager-detector.ts +0 -83
  52. package/src/utils/parameter-resolver.ts +0 -1075
  53. package/src/utils/schema-formatter.ts +0 -153
  54. package/src/utils/serializeAsync.ts +0 -26
  55. package/src/utils/spinner.ts +0 -23
  56. package/src/utils/version-checker.test.ts +0 -239
  57. package/src/utils/version-checker.ts +0 -237
  58. package/tsconfig.build.json +0 -18
  59. package/tsconfig.json +0 -19
  60. package/tsup.config.ts +0 -23
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # @zapier/zapier-sdk-cli
2
2
 
3
+ ## 0.16.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 142c1ce: Fix CLI UX issues: stdout truncation when piped, nullable schema detection for Zod 4, error body display, and auto Content-Type for JSON bodies
8
+ - Updated dependencies [142c1ce]
9
+ - @zapier/zapier-sdk@0.16.1
10
+ - @zapier/zapier-sdk-mcp@0.4.1
11
+
12
+ ## 0.16.2
13
+
14
+ ### Patch Changes
15
+
16
+ - 0434971: Make zapier-sdk-cli and zapier-sdk-cli-login packages public
17
+ - Updated dependencies [0434971]
18
+ - @zapier/zapier-sdk-cli-login@0.3.6
19
+ - @zapier/zapier-sdk@0.16.0
20
+
21
+ ## 0.16.1
22
+
23
+ ### Patch Changes
24
+
25
+ - e80d094: Fix CLI to extract JSON body from Response objects instead of showing raw Response representation. Adds error handling for invalid JSON responses with helpful error messages.
26
+
3
27
  ## 0.16.0
4
28
 
5
29
  ### Minor Changes
package/dist/cli.cjs CHANGED
@@ -911,7 +911,7 @@ function analyzeZodField(name, schema, functionInfo) {
911
911
  baseSchema = baseSchema._zod.def.innerType;
912
912
  } else {
913
913
  const zodDef = baseSchema._zod?.def;
914
- if (zodDef?.typeName === "ZodNullable" && zodDef.innerType) {
914
+ if (zodDef?.type === "nullable" && zodDef.innerType) {
915
915
  baseSchema = zodDef.innerType;
916
916
  continue;
917
917
  }
@@ -1077,7 +1077,24 @@ function createCommandConfig(cliCommandName, functionInfo, sdk2) {
1077
1077
  return;
1078
1078
  }
1079
1079
  const sdkObj = sdk2;
1080
- const result = await sdkObj[functionInfo.name](resolvedParams);
1080
+ let result = await sdkObj[functionInfo.name](resolvedParams);
1081
+ if (result instanceof Response) {
1082
+ const response = result;
1083
+ let body;
1084
+ const text = await response.text().catch(() => "[unable to read body]");
1085
+ try {
1086
+ body = JSON.parse(text);
1087
+ } catch {
1088
+ throw new Error(
1089
+ `Failed to parse response as JSON (status: ${response.status}). Body: ${text.slice(0, 500)}`
1090
+ );
1091
+ }
1092
+ result = {
1093
+ statusCode: response.status,
1094
+ headers: Object.fromEntries(response.headers.entries()),
1095
+ body
1096
+ };
1097
+ }
1081
1098
  const items = result?.data ? result.data : result;
1082
1099
  if (shouldUseJson) {
1083
1100
  console.log(JSON.stringify(items, null, 2));
@@ -1628,7 +1645,7 @@ var LoginSchema = zod.z.object({
1628
1645
 
1629
1646
  // package.json
1630
1647
  var package_default = {
1631
- version: "0.16.0"};
1648
+ version: "0.16.3"};
1632
1649
 
1633
1650
  // src/telemetry/builders.ts
1634
1651
  function createCliBaseEvent(context = {}) {
@@ -2907,7 +2924,7 @@ function createZapierCliSdk(options = {}) {
2907
2924
  // package.json with { type: 'json' }
2908
2925
  var package_default2 = {
2909
2926
  name: "@zapier/zapier-sdk-cli",
2910
- version: "0.16.0"};
2927
+ version: "0.16.3"};
2911
2928
  function detectPackageManager(cwd = process.cwd()) {
2912
2929
  const ua = process.env.npm_config_user_agent;
2913
2930
  if (ua) {
@@ -3158,5 +3175,5 @@ program.exitOverride();
3158
3175
  }
3159
3176
  }
3160
3177
  await versionCheckPromise;
3161
- process.exit(exitCode);
3178
+ process.exitCode = exitCode;
3162
3179
  })();
package/dist/cli.mjs CHANGED
@@ -875,7 +875,7 @@ function analyzeZodField(name, schema, functionInfo) {
875
875
  baseSchema = baseSchema._zod.def.innerType;
876
876
  } else {
877
877
  const zodDef = baseSchema._zod?.def;
878
- if (zodDef?.typeName === "ZodNullable" && zodDef.innerType) {
878
+ if (zodDef?.type === "nullable" && zodDef.innerType) {
879
879
  baseSchema = zodDef.innerType;
880
880
  continue;
881
881
  }
@@ -1041,7 +1041,24 @@ function createCommandConfig(cliCommandName, functionInfo, sdk2) {
1041
1041
  return;
1042
1042
  }
1043
1043
  const sdkObj = sdk2;
1044
- const result = await sdkObj[functionInfo.name](resolvedParams);
1044
+ let result = await sdkObj[functionInfo.name](resolvedParams);
1045
+ if (result instanceof Response) {
1046
+ const response = result;
1047
+ let body;
1048
+ const text = await response.text().catch(() => "[unable to read body]");
1049
+ try {
1050
+ body = JSON.parse(text);
1051
+ } catch {
1052
+ throw new Error(
1053
+ `Failed to parse response as JSON (status: ${response.status}). Body: ${text.slice(0, 500)}`
1054
+ );
1055
+ }
1056
+ result = {
1057
+ statusCode: response.status,
1058
+ headers: Object.fromEntries(response.headers.entries()),
1059
+ body
1060
+ };
1061
+ }
1045
1062
  const items = result?.data ? result.data : result;
1046
1063
  if (shouldUseJson) {
1047
1064
  console.log(JSON.stringify(items, null, 2));
@@ -1592,7 +1609,7 @@ var LoginSchema = z.object({
1592
1609
 
1593
1610
  // package.json
1594
1611
  var package_default = {
1595
- version: "0.16.0"};
1612
+ version: "0.16.3"};
1596
1613
 
1597
1614
  // src/telemetry/builders.ts
1598
1615
  function createCliBaseEvent(context = {}) {
@@ -2871,7 +2888,7 @@ function createZapierCliSdk(options = {}) {
2871
2888
  // package.json with { type: 'json' }
2872
2889
  var package_default2 = {
2873
2890
  name: "@zapier/zapier-sdk-cli",
2874
- version: "0.16.0"};
2891
+ version: "0.16.3"};
2875
2892
  function detectPackageManager(cwd = process.cwd()) {
2876
2893
  const ua = process.env.npm_config_user_agent;
2877
2894
  if (ua) {
@@ -3122,5 +3139,5 @@ program.exitOverride();
3122
3139
  }
3123
3140
  }
3124
3141
  await versionCheckPromise;
3125
- process.exit(exitCode);
3142
+ process.exitCode = exitCode;
3126
3143
  })();
package/dist/index.cjs CHANGED
@@ -291,7 +291,7 @@ var LoginSchema = zod.z.object({
291
291
 
292
292
  // package.json
293
293
  var package_default = {
294
- version: "0.16.0"};
294
+ version: "0.16.3"};
295
295
 
296
296
  // src/telemetry/builders.ts
297
297
  function createCliBaseEvent(context = {}) {
package/dist/index.mjs CHANGED
@@ -260,7 +260,7 @@ var LoginSchema = z.object({
260
260
 
261
261
  // package.json
262
262
  var package_default = {
263
- version: "0.16.0"};
263
+ version: "0.16.3"};
264
264
 
265
265
  // src/telemetry/builders.ts
266
266
  function createCliBaseEvent(context = {}) {
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zapier/zapier-sdk-cli",
3
- "version": "0.16.0",
3
+ "version": "0.16.3",
4
4
  "description": "Command line interface for Zapier SDK",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",
@@ -36,8 +36,14 @@
36
36
  ],
37
37
  "author": "",
38
38
  "license": "SEE LICENSE IN LICENSE",
39
+ "files": [
40
+ "dist",
41
+ "bin",
42
+ "README.md",
43
+ "CHANGELOG.md"
44
+ ],
39
45
  "publishConfig": {
40
- "access": "restricted"
46
+ "access": "public"
41
47
  },
42
48
  "dependencies": {
43
49
  "@zapier/zapier-sdk": "workspace:*",
package/dist/src/cli.js CHANGED
@@ -68,5 +68,6 @@ program.exitOverride();
68
68
  }
69
69
  // Wait for version checking to complete
70
70
  await versionCheckPromise;
71
- process.exit(exitCode);
71
+ // Use exitCode instead of exit() to allow stdout to flush when piped
72
+ process.exitCode = exitCode;
72
73
  })();
@@ -44,8 +44,9 @@ function analyzeZodField(name, schema, functionInfo) {
44
44
  }
45
45
  else {
46
46
  // Check for ZodNullable - nullable doesn't affect CLI required status, but we need to unwrap it to get the base type
47
+ // Use _zod.def.type for Zod 4 compatibility (matches patterns elsewhere in codebase)
47
48
  const zodDef = baseSchema._zod?.def;
48
- if (zodDef?.typeName === "ZodNullable" && zodDef.innerType) {
49
+ if (zodDef?.type === "nullable" && zodDef.innerType) {
49
50
  baseSchema = zodDef.innerType;
50
51
  continue;
51
52
  }
@@ -226,7 +227,27 @@ function createCommandConfig(cliCommandName, functionInfo, sdk) {
226
227
  }
227
228
  // Call the SDK method and handle non-paginated results
228
229
  const sdkObj = sdk;
229
- const result = await sdkObj[functionInfo.name](resolvedParams);
230
+ let result = await sdkObj[functionInfo.name](resolvedParams);
231
+ // Handle Response objects by wrapping in a structured envelope
232
+ if (result instanceof Response) {
233
+ const response = result;
234
+ let body;
235
+ // Read as text first to preserve body for error messages
236
+ const text = await response
237
+ .text()
238
+ .catch(() => "[unable to read body]");
239
+ try {
240
+ body = JSON.parse(text);
241
+ }
242
+ catch {
243
+ throw new Error(`Failed to parse response as JSON (status: ${response.status}). Body: ${text.slice(0, 500)}`);
244
+ }
245
+ result = {
246
+ statusCode: response.status,
247
+ headers: Object.fromEntries(response.headers.entries()),
248
+ body,
249
+ };
250
+ }
230
251
  const items = result?.data
231
252
  ? result.data
232
253
  : result;