@aws-amplify/data-schema 1.17.5 → 1.19.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/dist/cjs/SchemaProcessor.js +154 -6
- package/dist/cjs/SchemaProcessor.js.map +1 -1
- package/dist/cjs/runtime/internals/ai/conversationMessageDeserializers.js +12 -0
- package/dist/cjs/runtime/internals/ai/conversationMessageDeserializers.js.map +1 -1
- package/dist/cjs/runtime/internals/ai/conversationMessageSerializers.js +12 -0
- package/dist/cjs/runtime/internals/ai/conversationMessageSerializers.js.map +1 -1
- package/dist/esm/ClientSchema/Core/ClientCustomOperations.d.ts +9 -6
- package/dist/esm/CustomOperation.d.ts +1 -1
- package/dist/esm/SchemaProcessor.mjs +154 -6
- package/dist/esm/SchemaProcessor.mjs.map +1 -1
- package/dist/esm/ai/types/ConversationMessageContent.d.ts +14 -3
- package/dist/esm/ai/types/contentBlocks.d.ts +8 -0
- package/dist/esm/runtime/bridge-types.d.ts +3 -1
- package/dist/esm/runtime/internals/ai/conversationMessageDeserializers.mjs +12 -0
- package/dist/esm/runtime/internals/ai/conversationMessageDeserializers.mjs.map +1 -1
- package/dist/esm/runtime/internals/ai/conversationMessageSerializers.d.ts +8 -0
- package/dist/esm/runtime/internals/ai/conversationMessageSerializers.mjs +12 -0
- package/dist/esm/runtime/internals/ai/conversationMessageSerializers.mjs.map +1 -1
- package/dist/meta/cjs.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/ClientSchema/Core/ClientCustomOperations.ts +14 -15
- package/src/CustomOperation.ts +1 -1
- package/src/SchemaProcessor.ts +212 -12
- package/src/ai/types/ConversationMessageContent.ts +20 -1
- package/src/ai/types/contentBlocks.ts +19 -0
- package/src/runtime/bridge-types.ts +8 -1
- package/src/runtime/internals/ai/conversationMessageDeserializers.ts +13 -0
- package/src/runtime/internals/ai/conversationMessageSerializers.ts +16 -0
|
@@ -1,27 +1,38 @@
|
|
|
1
|
-
import { ImageBlock, ToolResultBlock, ToolUseBlock } from './contentBlocks';
|
|
1
|
+
import { ImageBlock, DocumentBlock, ToolResultBlock, ToolUseBlock } from './contentBlocks';
|
|
2
2
|
export interface ConversationMessageTextContent {
|
|
3
3
|
text: string;
|
|
4
4
|
image?: never;
|
|
5
|
+
document?: never;
|
|
5
6
|
toolUse?: never;
|
|
6
7
|
toolResult?: never;
|
|
7
8
|
}
|
|
8
9
|
export interface ConversationMessageImageContent {
|
|
9
10
|
text?: never;
|
|
10
11
|
image: ImageBlock;
|
|
12
|
+
document?: never;
|
|
11
13
|
toolUse?: never;
|
|
12
14
|
toolResult?: never;
|
|
13
15
|
}
|
|
16
|
+
export interface ConversationMessageDocumentContent {
|
|
17
|
+
text?: never;
|
|
18
|
+
image?: never;
|
|
19
|
+
toolUse?: never;
|
|
20
|
+
toolResult?: never;
|
|
21
|
+
document: DocumentBlock;
|
|
22
|
+
}
|
|
14
23
|
export interface ConversationMessageToolUseContent {
|
|
15
24
|
text?: never;
|
|
16
25
|
image?: never;
|
|
26
|
+
document?: never;
|
|
17
27
|
toolUse: ToolUseBlock;
|
|
18
28
|
toolResult?: never;
|
|
19
29
|
}
|
|
20
30
|
export interface ConversationMessageToolResultContent {
|
|
21
31
|
text?: never;
|
|
22
32
|
image?: never;
|
|
33
|
+
document?: never;
|
|
23
34
|
toolUse?: never;
|
|
24
35
|
toolResult: ToolResultBlock;
|
|
25
36
|
}
|
|
26
|
-
export type ConversationMessageContent = ConversationMessageTextContent | ConversationMessageImageContent | ConversationMessageToolUseContent | ConversationMessageToolResultContent;
|
|
27
|
-
export type ConversationSendMessageInputContent = Omit<ConversationMessageTextContent, 'toolUse'> | Omit<ConversationMessageImageContent, 'toolUse'> | Omit<ConversationMessageToolResultContent, 'toolUse'>;
|
|
37
|
+
export type ConversationMessageContent = ConversationMessageTextContent | ConversationMessageImageContent | ConversationMessageDocumentContent | ConversationMessageToolUseContent | ConversationMessageToolResultContent;
|
|
38
|
+
export type ConversationSendMessageInputContent = Omit<ConversationMessageTextContent, 'toolUse'> | Omit<ConversationMessageImageContent, 'toolUse'> | Omit<ConversationMessageDocumentContent, 'toolUse'> | Omit<ConversationMessageToolResultContent, 'toolUse'>;
|
|
@@ -3,10 +3,18 @@ import type { ToolResultContent } from './ToolResultContent';
|
|
|
3
3
|
interface BytesImageSource {
|
|
4
4
|
bytes: Uint8Array;
|
|
5
5
|
}
|
|
6
|
+
interface BytesDocumentSource {
|
|
7
|
+
bytes: Uint8Array;
|
|
8
|
+
}
|
|
6
9
|
export interface ImageBlock {
|
|
7
10
|
format: 'gif' | 'jpeg' | 'png' | 'webp';
|
|
8
11
|
source: BytesImageSource;
|
|
9
12
|
}
|
|
13
|
+
export interface DocumentBlock {
|
|
14
|
+
format: 'pdf' | 'csv' | 'doc' | 'docx' | 'xls' | 'xlsx' | 'html' | 'txt' | 'md';
|
|
15
|
+
name: string;
|
|
16
|
+
source: BytesDocumentSource;
|
|
17
|
+
}
|
|
10
18
|
export interface ToolUseBlock {
|
|
11
19
|
toolUseId: string;
|
|
12
20
|
name: string;
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
import { Observable } from 'rxjs';
|
|
12
12
|
import { CustomHeaders, ModelSortDirection } from './client';
|
|
13
13
|
import { AiAction, AiCategory } from './internals/ai/getCustomUserAgentDetails';
|
|
14
|
+
import { CustomType } from '../CustomType';
|
|
15
|
+
import { RefType } from '../RefType';
|
|
14
16
|
export declare namespace AmplifyServer {
|
|
15
17
|
interface ContextToken {
|
|
16
18
|
readonly value: symbol;
|
|
@@ -177,7 +179,7 @@ export interface InputType {
|
|
|
177
179
|
}
|
|
178
180
|
type ScalarType = 'ID' | 'String' | 'Int' | 'Float' | 'AWSDate' | 'AWSTime' | 'AWSDateTime' | 'AWSTimestamp' | 'AWSEmail' | 'AWSURL' | 'AWSIPAddress' | 'Boolean' | 'AWSJSON' | 'AWSPhone';
|
|
179
181
|
export type FieldType = ScalarType | EnumType | ModelFieldType | NonModelFieldType;
|
|
180
|
-
export type InputFieldType = ScalarType | EnumType | InputType
|
|
182
|
+
export type InputFieldType = ScalarType | EnumType | InputType | CustomType<any> | RefType<any, any>;
|
|
181
183
|
export type FieldAttribute = ModelAttribute;
|
|
182
184
|
/**
|
|
183
185
|
* Field-level Relationship Definitions
|
|
@@ -6,6 +6,9 @@ const deserializeContent = (content) => content.map((block) => {
|
|
|
6
6
|
if (block.image) {
|
|
7
7
|
return deserializeImageBlock(block);
|
|
8
8
|
}
|
|
9
|
+
if (block.document) {
|
|
10
|
+
return deserializeDocumentBlock(block);
|
|
11
|
+
}
|
|
9
12
|
if (block.toolUse) {
|
|
10
13
|
return deserializeToolUseBlock(block);
|
|
11
14
|
}
|
|
@@ -23,6 +26,15 @@ const deserializeImageBlock = ({ image }) => ({
|
|
|
23
26
|
},
|
|
24
27
|
},
|
|
25
28
|
});
|
|
29
|
+
const deserializeDocumentBlock = ({ document }) => ({
|
|
30
|
+
document: {
|
|
31
|
+
...document,
|
|
32
|
+
source: {
|
|
33
|
+
...document.source,
|
|
34
|
+
bytes: fromBase64(document.source.bytes),
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
});
|
|
26
38
|
const deserializeJsonBlock = ({ json }) => ({
|
|
27
39
|
json: JSON.parse(json),
|
|
28
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversationMessageDeserializers.mjs","sources":["../../../../../src/runtime/internals/ai/conversationMessageDeserializers.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { fromBase64 } from '@smithy/util-base64';\nexport const deserializeContent = (content) => content.map((block) => {\n if (block.image) {\n return deserializeImageBlock(block);\n }\n if (block.toolUse) {\n return deserializeToolUseBlock(block);\n }\n if (block.toolResult) {\n return deserializeToolResultBlock(block);\n }\n return removeNullsFromBlock(block);\n});\nconst deserializeImageBlock = ({ image }) => ({\n image: {\n ...image,\n source: {\n ...image.source,\n bytes: fromBase64(image.source.bytes),\n },\n },\n});\nconst deserializeJsonBlock = ({ json }) => ({\n json: JSON.parse(json),\n});\nconst deserializeToolUseBlock = ({ toolUse }) => ({\n toolUse: {\n ...toolUse,\n input: JSON.parse(toolUse.input),\n },\n});\nconst deserializeToolResultBlock = ({ toolResult, }) => ({\n toolResult: {\n toolUseId: toolResult.toolUseId,\n content: toolResult.content.map((toolResultBlock) => {\n if (toolResultBlock.image) {\n return deserializeImageBlock(toolResultBlock);\n }\n if (toolResultBlock.json) {\n return deserializeJsonBlock(toolResultBlock);\n }\n return removeNullsFromBlock(toolResultBlock);\n }),\n },\n});\nconst removeNullsFromBlock = (block) => Object.fromEntries(Object.entries(block).filter(([_, v]) => v !== null));\n"],"names":[],"mappings":";;AAAA;AACA;AAEY,MAAC,kBAAkB,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AACtE,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;AACrB,QAAQ,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC5C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE;AACvB,QAAQ,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;AAC9C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE;AAC1B,QAAQ,OAAO,0BAA0B,CAAC,KAAK,CAAC,CAAC;AACjD,KAAK;AACL,IAAI,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC,EAAE;AACH,MAAM,qBAAqB,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM;AAC9C,IAAI,KAAK,EAAE;AACX,QAAQ,GAAG,KAAK;AAChB,QAAQ,MAAM,EAAE;AAChB,YAAY,GAAG,KAAK,CAAC,MAAM;AAC3B,YAAY,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AACjD,SAAS;AACT,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM;AAC5C,IAAI,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC1B,CAAC,CAAC,CAAC;AACH,MAAM,uBAAuB,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM;AAClD,IAAI,OAAO,EAAE;AACb,QAAQ,GAAG,OAAO;AAClB,QAAQ,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AACxC,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,0BAA0B,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM;AACzD,IAAI,UAAU,EAAE;AAChB,QAAQ,SAAS,EAAE,UAAU,CAAC,SAAS;AACvC,QAAQ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,eAAe,KAAK;AAC7D,YAAY,IAAI,eAAe,CAAC,KAAK,EAAE;AACvC,gBAAgB,OAAO,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAC9D,aAAa;AACb,YAAY,IAAI,eAAe,CAAC,IAAI,EAAE;AACtC,gBAAgB,OAAO,oBAAoB,CAAC,eAAe,CAAC,CAAC;AAC7D,aAAa;AACb,YAAY,OAAO,oBAAoB,CAAC,eAAe,CAAC,CAAC;AACzD,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"conversationMessageDeserializers.mjs","sources":["../../../../../src/runtime/internals/ai/conversationMessageDeserializers.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { fromBase64 } from '@smithy/util-base64';\nexport const deserializeContent = (content) => content.map((block) => {\n if (block.image) {\n return deserializeImageBlock(block);\n }\n if (block.document) {\n return deserializeDocumentBlock(block);\n }\n if (block.toolUse) {\n return deserializeToolUseBlock(block);\n }\n if (block.toolResult) {\n return deserializeToolResultBlock(block);\n }\n return removeNullsFromBlock(block);\n});\nconst deserializeImageBlock = ({ image }) => ({\n image: {\n ...image,\n source: {\n ...image.source,\n bytes: fromBase64(image.source.bytes),\n },\n },\n});\nconst deserializeDocumentBlock = ({ document }) => ({\n document: {\n ...document,\n source: {\n ...document.source,\n bytes: fromBase64(document.source.bytes),\n },\n },\n});\nconst deserializeJsonBlock = ({ json }) => ({\n json: JSON.parse(json),\n});\nconst deserializeToolUseBlock = ({ toolUse }) => ({\n toolUse: {\n ...toolUse,\n input: JSON.parse(toolUse.input),\n },\n});\nconst deserializeToolResultBlock = ({ toolResult, }) => ({\n toolResult: {\n toolUseId: toolResult.toolUseId,\n content: toolResult.content.map((toolResultBlock) => {\n if (toolResultBlock.image) {\n return deserializeImageBlock(toolResultBlock);\n }\n if (toolResultBlock.json) {\n return deserializeJsonBlock(toolResultBlock);\n }\n return removeNullsFromBlock(toolResultBlock);\n }),\n },\n});\nconst removeNullsFromBlock = (block) => Object.fromEntries(Object.entries(block).filter(([_, v]) => v !== null));\n"],"names":[],"mappings":";;AAAA;AACA;AAEY,MAAC,kBAAkB,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AACtE,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;AACrB,QAAQ,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC5C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;AACxB,QAAQ,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;AAC/C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE;AACvB,QAAQ,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;AAC9C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE;AAC1B,QAAQ,OAAO,0BAA0B,CAAC,KAAK,CAAC,CAAC;AACjD,KAAK;AACL,IAAI,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC,EAAE;AACH,MAAM,qBAAqB,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM;AAC9C,IAAI,KAAK,EAAE;AACX,QAAQ,GAAG,KAAK;AAChB,QAAQ,MAAM,EAAE;AAChB,YAAY,GAAG,KAAK,CAAC,MAAM;AAC3B,YAAY,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AACjD,SAAS;AACT,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,wBAAwB,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM;AACpD,IAAI,QAAQ,EAAE;AACd,QAAQ,GAAG,QAAQ;AACnB,QAAQ,MAAM,EAAE;AAChB,YAAY,GAAG,QAAQ,CAAC,MAAM;AAC9B,YAAY,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;AACpD,SAAS;AACT,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM;AAC5C,IAAI,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC1B,CAAC,CAAC,CAAC;AACH,MAAM,uBAAuB,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM;AAClD,IAAI,OAAO,EAAE;AACb,QAAQ,GAAG,OAAO;AAClB,QAAQ,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AACxC,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,0BAA0B,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM;AACzD,IAAI,UAAU,EAAE;AAChB,QAAQ,SAAS,EAAE,UAAU,CAAC,SAAS;AACvC,QAAQ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,eAAe,KAAK;AAC7D,YAAY,IAAI,eAAe,CAAC,KAAK,EAAE;AACvC,gBAAgB,OAAO,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAC9D,aAAa;AACb,YAAY,IAAI,eAAe,CAAC,IAAI,EAAE;AACtC,gBAAgB,OAAO,oBAAoB,CAAC,eAAe,CAAC,CAAC;AAC7D,aAAa;AACb,YAAY,OAAO,oBAAoB,CAAC,eAAe,CAAC,CAAC;AACzD,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;;;;"}
|
|
@@ -9,6 +9,14 @@ export declare const serializeContent: (content: ConversationMessageContent[]) =
|
|
|
9
9
|
};
|
|
10
10
|
format: "gif" | "jpeg" | "png" | "webp";
|
|
11
11
|
};
|
|
12
|
+
} | {
|
|
13
|
+
document: {
|
|
14
|
+
source: {
|
|
15
|
+
bytes: string;
|
|
16
|
+
};
|
|
17
|
+
format: "pdf" | "csv" | "doc" | "docx" | "xls" | "xlsx" | "html" | "txt" | "md";
|
|
18
|
+
name: string;
|
|
19
|
+
};
|
|
12
20
|
} | {
|
|
13
21
|
toolResult: {
|
|
14
22
|
content: ({
|
|
@@ -7,6 +7,9 @@ const serializeContent = (content) => content.map((block) => {
|
|
|
7
7
|
if (block.image) {
|
|
8
8
|
return serializeImageBlock(block);
|
|
9
9
|
}
|
|
10
|
+
if (block.document) {
|
|
11
|
+
return serializeDocumentBlock(block);
|
|
12
|
+
}
|
|
10
13
|
if (block.toolResult) {
|
|
11
14
|
return serializeToolResultBlock(block);
|
|
12
15
|
}
|
|
@@ -32,6 +35,15 @@ const serializeImageBlock = ({ image }) => ({
|
|
|
32
35
|
},
|
|
33
36
|
},
|
|
34
37
|
});
|
|
38
|
+
const serializeDocumentBlock = ({ document, }) => ({
|
|
39
|
+
document: {
|
|
40
|
+
...document,
|
|
41
|
+
source: {
|
|
42
|
+
...document.source,
|
|
43
|
+
bytes: toBase64(document.source.bytes),
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
});
|
|
35
47
|
const serializeJsonBlock = ({ json }) => ({
|
|
36
48
|
json: JSON.stringify(json),
|
|
37
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversationMessageSerializers.mjs","sources":["../../../../../src/runtime/internals/ai/conversationMessageSerializers.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { toBase64 } from '@smithy/util-base64';\nexport const serializeAiContext = (aiContext) => JSON.stringify(aiContext);\nexport const serializeContent = (content) => content.map((block) => {\n if (block.image) {\n return serializeImageBlock(block);\n }\n if (block.toolResult) {\n return serializeToolResultBlock(block);\n }\n return block;\n});\nexport const serializeToolConfiguration = ({ tools }) => ({\n tools: Object.entries(tools).map(([name, tool]) => ({\n toolSpec: {\n name,\n description: tool.description,\n inputSchema: {\n json: JSON.stringify(tool.inputSchema.json),\n },\n },\n })),\n});\nconst serializeImageBlock = ({ image }) => ({\n image: {\n ...image,\n source: {\n ...image.source,\n bytes: toBase64(image.source.bytes),\n },\n },\n});\nconst serializeJsonBlock = ({ json }) => ({\n json: JSON.stringify(json),\n});\nconst serializeToolResultBlock = ({ toolResult, }) => ({\n toolResult: {\n ...toolResult,\n content: toolResult.content.map((toolResultBlock) => {\n if (toolResultBlock.image) {\n return serializeImageBlock(toolResultBlock);\n }\n if (toolResultBlock.json) {\n return serializeJsonBlock(toolResultBlock);\n }\n return toolResultBlock;\n }),\n },\n});\n"],"names":[],"mappings":";;AAAA;AACA;AAEY,MAAC,kBAAkB,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;AAC/D,MAAC,gBAAgB,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AACpE,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;AACrB,QAAQ,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC1C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE;AAC1B,QAAQ,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;AAC/C,KAAK;AACL,IAAI,OAAO,KAAK,CAAC;AACjB,CAAC,EAAE;AACS,MAAC,0BAA0B,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM;AAC1D,IAAI,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM;AACxD,QAAQ,QAAQ,EAAE;AAClB,YAAY,IAAI;AAChB,YAAY,WAAW,EAAE,IAAI,CAAC,WAAW;AACzC,YAAY,WAAW,EAAE;AACzB,gBAAgB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AAC3D,aAAa;AACb,SAAS;AACT,KAAK,CAAC,CAAC;AACP,CAAC,EAAE;AACH,MAAM,mBAAmB,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM;AAC5C,IAAI,KAAK,EAAE;AACX,QAAQ,GAAG,KAAK;AAChB,QAAQ,MAAM,EAAE;AAChB,YAAY,GAAG,KAAK,CAAC,MAAM;AAC3B,YAAY,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAC/C,SAAS;AACT,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,kBAAkB,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM;AAC1C,IAAI,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;AAC9B,CAAC,CAAC,CAAC;AACH,MAAM,wBAAwB,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM;AACvD,IAAI,UAAU,EAAE;AAChB,QAAQ,GAAG,UAAU;AACrB,QAAQ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,eAAe,KAAK;AAC7D,YAAY,IAAI,eAAe,CAAC,KAAK,EAAE;AACvC,gBAAgB,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAC5D,aAAa;AACb,YAAY,IAAI,eAAe,CAAC,IAAI,EAAE;AACtC,gBAAgB,OAAO,kBAAkB,CAAC,eAAe,CAAC,CAAC;AAC3D,aAAa;AACb,YAAY,OAAO,eAAe,CAAC;AACnC,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"conversationMessageSerializers.mjs","sources":["../../../../../src/runtime/internals/ai/conversationMessageSerializers.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { toBase64 } from '@smithy/util-base64';\nexport const serializeAiContext = (aiContext) => JSON.stringify(aiContext);\nexport const serializeContent = (content) => content.map((block) => {\n if (block.image) {\n return serializeImageBlock(block);\n }\n if (block.document) {\n return serializeDocumentBlock(block);\n }\n if (block.toolResult) {\n return serializeToolResultBlock(block);\n }\n return block;\n});\nexport const serializeToolConfiguration = ({ tools }) => ({\n tools: Object.entries(tools).map(([name, tool]) => ({\n toolSpec: {\n name,\n description: tool.description,\n inputSchema: {\n json: JSON.stringify(tool.inputSchema.json),\n },\n },\n })),\n});\nconst serializeImageBlock = ({ image }) => ({\n image: {\n ...image,\n source: {\n ...image.source,\n bytes: toBase64(image.source.bytes),\n },\n },\n});\nconst serializeDocumentBlock = ({ document, }) => ({\n document: {\n ...document,\n source: {\n ...document.source,\n bytes: toBase64(document.source.bytes),\n },\n },\n});\nconst serializeJsonBlock = ({ json }) => ({\n json: JSON.stringify(json),\n});\nconst serializeToolResultBlock = ({ toolResult, }) => ({\n toolResult: {\n ...toolResult,\n content: toolResult.content.map((toolResultBlock) => {\n if (toolResultBlock.image) {\n return serializeImageBlock(toolResultBlock);\n }\n if (toolResultBlock.json) {\n return serializeJsonBlock(toolResultBlock);\n }\n return toolResultBlock;\n }),\n },\n});\n"],"names":[],"mappings":";;AAAA;AACA;AAEY,MAAC,kBAAkB,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;AAC/D,MAAC,gBAAgB,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AACpE,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;AACrB,QAAQ,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC1C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;AACxB,QAAQ,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC;AAC7C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE;AAC1B,QAAQ,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;AAC/C,KAAK;AACL,IAAI,OAAO,KAAK,CAAC;AACjB,CAAC,EAAE;AACS,MAAC,0BAA0B,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM;AAC1D,IAAI,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM;AACxD,QAAQ,QAAQ,EAAE;AAClB,YAAY,IAAI;AAChB,YAAY,WAAW,EAAE,IAAI,CAAC,WAAW;AACzC,YAAY,WAAW,EAAE;AACzB,gBAAgB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AAC3D,aAAa;AACb,SAAS;AACT,KAAK,CAAC,CAAC;AACP,CAAC,EAAE;AACH,MAAM,mBAAmB,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM;AAC5C,IAAI,KAAK,EAAE;AACX,QAAQ,GAAG,KAAK;AAChB,QAAQ,MAAM,EAAE;AAChB,YAAY,GAAG,KAAK,CAAC,MAAM;AAC3B,YAAY,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAC/C,SAAS;AACT,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,sBAAsB,GAAG,CAAC,EAAE,QAAQ,GAAG,MAAM;AACnD,IAAI,QAAQ,EAAE;AACd,QAAQ,GAAG,QAAQ;AACnB,QAAQ,MAAM,EAAE;AAChB,YAAY,GAAG,QAAQ,CAAC,MAAM;AAC9B,YAAY,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,SAAS;AACT,KAAK;AACL,CAAC,CAAC,CAAC;AACH,MAAM,kBAAkB,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM;AAC1C,IAAI,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;AAC9B,CAAC,CAAC,CAAC;AACH,MAAM,wBAAwB,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM;AACvD,IAAI,UAAU,EAAE;AAChB,QAAQ,GAAG,UAAU;AACrB,QAAQ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,eAAe,KAAK;AAC7D,YAAY,IAAI,eAAe,CAAC,KAAK,EAAE;AACvC,gBAAgB,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAC5D,aAAa;AACb,YAAY,IAAI,eAAe,CAAC,IAAI,EAAE;AACtC,gBAAgB,OAAO,kBAAkB,CAAC,eAAe,CAAC,CAAC;AAC3D,aAAa;AACb,YAAY,OAAO,eAAe,CAAC;AACnC,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;;;;"}
|