@anthropic-ai/sdk 0.71.0 → 0.71.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.
Files changed (47) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/client.d.mts +1 -1
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +1 -1
  5. package/client.d.ts.map +1 -1
  6. package/helpers/beta/json-schema.d.mts +1 -1
  7. package/helpers/beta/json-schema.d.ts +1 -1
  8. package/helpers/beta/json-schema.js +1 -1
  9. package/helpers/beta/json-schema.mjs +1 -1
  10. package/helpers/beta/zod.d.mts +1 -1
  11. package/helpers/beta/zod.d.ts +1 -1
  12. package/helpers/beta/zod.js +1 -1
  13. package/helpers/beta/zod.mjs +1 -1
  14. package/lib/BetaMessageStream.d.mts +7 -2
  15. package/lib/BetaMessageStream.d.mts.map +1 -1
  16. package/lib/BetaMessageStream.d.ts +7 -2
  17. package/lib/BetaMessageStream.d.ts.map +1 -1
  18. package/lib/BetaMessageStream.js +9 -7
  19. package/lib/BetaMessageStream.js.map +1 -1
  20. package/lib/BetaMessageStream.mjs +9 -7
  21. package/lib/BetaMessageStream.mjs.map +1 -1
  22. package/lib/beta-parser.d.mts +8 -3
  23. package/lib/beta-parser.d.mts.map +1 -1
  24. package/lib/beta-parser.d.ts +8 -3
  25. package/lib/beta-parser.d.ts.map +1 -1
  26. package/lib/beta-parser.js +30 -16
  27. package/lib/beta-parser.js.map +1 -1
  28. package/lib/beta-parser.mjs +30 -16
  29. package/lib/beta-parser.mjs.map +1 -1
  30. package/package.json +1 -1
  31. package/resources/beta/messages/messages.d.mts +2 -2
  32. package/resources/beta/messages/messages.d.ts +2 -2
  33. package/resources/beta/messages/messages.js +3 -3
  34. package/resources/beta/messages/messages.js.map +1 -1
  35. package/resources/beta/messages/messages.mjs +3 -3
  36. package/resources/beta/messages/messages.mjs.map +1 -1
  37. package/src/client.ts +1 -1
  38. package/src/helpers/beta/json-schema.ts +1 -1
  39. package/src/helpers/beta/zod.ts +1 -1
  40. package/src/lib/BetaMessageStream.ts +11 -4
  41. package/src/lib/beta-parser.ts +37 -15
  42. package/src/resources/beta/messages/messages.ts +5 -5
  43. package/src/version.ts +1 -1
  44. package/version.d.mts +1 -1
  45. package/version.d.ts +1 -1
  46. package/version.js +1 -1
  47. package/version.mjs +1 -1
@@ -1,3 +1,4 @@
1
+ import type { Logger } from '../client';
1
2
  import { AnthropicError } from '../core/error';
2
3
  import {
3
4
  BetaContentBlock,
@@ -29,22 +30,33 @@ export type ParsedBetaMessage<ParsedT> = BetaMessage & {
29
30
  };
30
31
 
31
32
  export type ParsedBetaContentBlock<ParsedT> =
32
- | (BetaTextBlock & { parsed: ParsedT | null })
33
+ | (BetaTextBlock & { parsed_output: ParsedT | null })
33
34
  | Exclude<BetaContentBlock, BetaTextBlock>;
34
35
 
35
36
  export function maybeParseBetaMessage<Params extends BetaParseableMessageCreateParams | null>(
36
37
  message: BetaMessage,
37
38
  params: Params,
39
+ opts: { logger: Logger },
38
40
  ): ParsedBetaMessage<ExtractParsedContentFromBetaParams<NonNullable<Params>>> {
39
41
  if (!params || !('parse' in (params.output_format ?? {}))) {
40
42
  return {
41
43
  ...message,
42
44
  content: message.content.map((block) => {
43
45
  if (block.type === 'text') {
44
- return {
45
- ...block,
46
- parsed: null,
47
- };
46
+ const parsedBlock = Object.defineProperty({ ...block }, 'parsed_output', {
47
+ value: null,
48
+ enumerable: false,
49
+ }) as ParsedBetaContentBlock<ExtractParsedContentFromBetaParams<NonNullable<Params>>>;
50
+
51
+ return Object.defineProperty(parsedBlock, 'parsed', {
52
+ get() {
53
+ opts.logger.warn(
54
+ 'The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead.',
55
+ );
56
+ return null;
57
+ },
58
+ enumerable: false,
59
+ });
48
60
  }
49
61
  return block;
50
62
  }),
@@ -52,28 +64,38 @@ export function maybeParseBetaMessage<Params extends BetaParseableMessageCreateP
52
64
  } as ParsedBetaMessage<ExtractParsedContentFromBetaParams<NonNullable<Params>>>;
53
65
  }
54
66
 
55
- return parseBetaMessage(message, params);
67
+ return parseBetaMessage(message, params, opts);
56
68
  }
57
69
 
58
70
  export function parseBetaMessage<Params extends BetaParseableMessageCreateParams>(
59
71
  message: BetaMessage,
60
72
  params: Params,
73
+ opts: { logger: Logger },
61
74
  ): ParsedBetaMessage<ExtractParsedContentFromBetaParams<Params>> {
62
- let firstParsed: ReturnType<typeof parseBetaOutputFormat<Params>> | null = null;
75
+ let firstParsedOutput: ReturnType<typeof parseBetaOutputFormat<Params>> | null = null;
63
76
 
64
77
  const content: Array<ParsedBetaContentBlock<ExtractParsedContentFromBetaParams<Params>>> =
65
78
  message.content.map((block) => {
66
79
  if (block.type === 'text') {
67
- const parsed = parseBetaOutputFormat(params, block.text);
80
+ const parsedOutput = parseBetaOutputFormat(params, block.text);
68
81
 
69
- if (firstParsed === null) {
70
- firstParsed = parsed;
82
+ if (firstParsedOutput === null) {
83
+ firstParsedOutput = parsedOutput;
71
84
  }
72
85
 
73
- return {
74
- ...block,
75
- parsed,
76
- };
86
+ const parsedBlock = Object.defineProperty({ ...block }, 'parsed_output', {
87
+ value: parsedOutput,
88
+ enumerable: false,
89
+ }) as ParsedBetaContentBlock<ExtractParsedContentFromBetaParams<Params>>;
90
+ return Object.defineProperty(parsedBlock, 'parsed', {
91
+ get() {
92
+ opts.logger.warn(
93
+ 'The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead.',
94
+ );
95
+ return parsedOutput;
96
+ },
97
+ enumerable: false,
98
+ });
77
99
  }
78
100
  return block;
79
101
  });
@@ -81,7 +103,7 @@ export function parseBetaMessage<Params extends BetaParseableMessageCreateParams
81
103
  return {
82
104
  ...message,
83
105
  content,
84
- parsed_output: firstParsed,
106
+ parsed_output: firstParsedOutput,
85
107
  } as ParsedBetaMessage<ExtractParsedContentFromBetaParams<Params>>;
86
108
  }
87
109
 
@@ -123,7 +123,7 @@ export class Messages extends APIResource {
123
123
 
124
124
  /**
125
125
  * Send a structured list of input messages with text and/or image content, along with an expected `output_format` and
126
- * the response will be automatically parsed and available in the `parsed` property of the message.
126
+ * the response will be automatically parsed and available in the `parsed_output` property of the message.
127
127
  *
128
128
  * @example
129
129
  * ```ts
@@ -134,7 +134,7 @@ export class Messages extends APIResource {
134
134
  * output_format: zodOutputFormat(z.object({ answer: z.number() }), 'math'),
135
135
  * });
136
136
  *
137
- * console.log(message.parsed?.answer); // 4
137
+ * console.log(message.parsed_output?.answer); // 4
138
138
  * ```
139
139
  */
140
140
  parse<Params extends MessageCreateParamsNonStreaming>(
@@ -149,9 +149,9 @@ export class Messages extends APIResource {
149
149
  ]),
150
150
  };
151
151
 
152
- return this.create(params, options).then((message) => parseBetaMessage(message, params)) as APIPromise<
153
- ParsedBetaMessage<ExtractParsedContentFromBetaParams<Params>>
154
- >;
152
+ return this.create(params, options).then((message) =>
153
+ parseBetaMessage(message, params, { logger: this._client.logger ?? console }),
154
+ ) as APIPromise<ParsedBetaMessage<ExtractParsedContentFromBetaParams<Params>>>;
155
155
  }
156
156
 
157
157
  /**
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '0.71.0'; // x-release-please-version
1
+ export const VERSION = '0.71.1'; // x-release-please-version
package/version.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.71.0";
1
+ export declare const VERSION = "0.71.1";
2
2
  //# sourceMappingURL=version.d.mts.map
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.71.0";
1
+ export declare const VERSION = "0.71.1";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '0.71.0'; // x-release-please-version
4
+ exports.VERSION = '0.71.1'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '0.71.0'; // x-release-please-version
1
+ export const VERSION = '0.71.1'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map