@zimtsui/typechat 0.0.77 → 0.0.79

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 (43) hide show
  1. package/README.md +1 -0
  2. package/assets/verbatim/declarations.handlebars +1 -2
  3. package/assets/verbatim/instruction.md +22 -13
  4. package/assets/verbatim/response.handlebars +1 -0
  5. package/assets/verbatim/system.handlebars +1 -0
  6. package/build/assets.d.ts +2 -0
  7. package/build/assets.js +2 -0
  8. package/build/assets.js.map +1 -1
  9. package/build/compatible-engine.d/anthropic/message-codec.d.ts +0 -3
  10. package/build/compatible-engine.d/anthropic/message-codec.js +12 -7
  11. package/build/compatible-engine.d/anthropic/message-codec.js.map +1 -1
  12. package/build/compatible-engine.d/google/message-codec.d.ts +0 -3
  13. package/build/compatible-engine.d/google/message-codec.js +11 -7
  14. package/build/compatible-engine.d/google/message-codec.js.map +1 -1
  15. package/build/compatible-engine.d/openai-chatcompletions/message-codec.d.ts +0 -3
  16. package/build/compatible-engine.d/openai-chatcompletions/message-codec.js +11 -7
  17. package/build/compatible-engine.d/openai-chatcompletions/message-codec.js.map +1 -1
  18. package/build/compatible-engine.d/openai-responses/message-codec.js +11 -4
  19. package/build/compatible-engine.d/openai-responses/message-codec.js.map +1 -1
  20. package/build/engine.js +4 -13
  21. package/build/engine.js.map +1 -1
  22. package/build/native-engines.d/google/message-codec.js +11 -4
  23. package/build/native-engines.d/google/message-codec.js.map +1 -1
  24. package/build/native-engines.d/openai-responses/message-codec.js +11 -4
  25. package/build/native-engines.d/openai-responses/message-codec.js.map +1 -1
  26. package/build/tsconfig.tsbuildinfo +1 -1
  27. package/build/verbatim/codec/declarations.js +10 -5
  28. package/build/verbatim/codec/declarations.js.map +1 -1
  29. package/build/verbatim/codec/request.d.ts +1 -3
  30. package/build/verbatim/codec/request.js +13 -11
  31. package/build/verbatim/codec/request.js.map +1 -1
  32. package/build/verbatim/codec/response.d.ts +1 -0
  33. package/build/verbatim/codec/response.js +10 -0
  34. package/build/verbatim/codec/response.js.map +1 -0
  35. package/build/verbatim/codec/system.d.ts +1 -0
  36. package/build/verbatim/codec/system.js +10 -0
  37. package/build/verbatim/codec/system.js.map +1 -0
  38. package/build/verbatim/codec.d.ts +2 -0
  39. package/build/verbatim/codec.js +2 -0
  40. package/build/verbatim/codec.js.map +1 -1
  41. package/build/verbatim.d.ts +4 -3
  42. package/build/verbatim.js.map +1 -1
  43. package/package.json +1 -1
@@ -1,12 +1,16 @@
1
1
  import Handlebars from 'handlebars';
2
2
  import Assets from "../../assets.js";
3
+ import assert from 'node:assert';
3
4
  const template = Handlebars.compile(Assets.verbatim.declarations);
4
5
  export function encode(vdm) {
5
- const vds = Object.entries(vdm).map(([name, body]) => ({
6
- name,
7
- description: body.description,
8
- parameters: body.parameters,
9
- }));
6
+ const vds = Object.entries(vdm).map(([name, body]) => {
7
+ assert(/^[^<>&'"]+$/.test(name));
8
+ return ({
9
+ name,
10
+ description: body.description,
11
+ parameters: body.parameters,
12
+ });
13
+ });
10
14
  return template({
11
15
  declarations: vds.map(declaration => ({
12
16
  name: declaration.name,
@@ -15,6 +19,7 @@ export function encode(vdm) {
15
19
  name,
16
20
  description: parameter.description,
17
21
  mimeType: parameter.mimeType,
22
+ required: parameter.required,
18
23
  })),
19
24
  })),
20
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../../src/verbatim/codec/declarations.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAqBlF,MAAM,UAAU,MAAM,CAClB,GAAQ;IAER,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAC/B,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACf,IAAI;QACJ,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;KAC9B,CAA4B,CAChC,CAAC;IAEF,OAAO,QAAQ,CAAC;QACZ,YAAY,EAAE,GAAG,CAAC,GAAG,CACjB,WAAW,CAAC,EAAE,CAAC,CAAC;YACZ,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,CAClD,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpB,IAAI;gBACJ,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,QAAQ,EAAE,SAAS,CAAC,QAAQ;aAC/B,CAAC,CACL;SACJ,CAAC,CACL;KACJ,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../../src/verbatim/codec/declarations.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,MAAM,MAAM,aAAa,CAAC;AAGjC,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAsBlF,MAAM,UAAU,MAAM,CAClB,GAAQ;IAER,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAC/B,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;QACb,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC;YACJ,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAA4B,CAAC;IAClC,CAAC,CACJ,CAAC;IAEF,OAAO,QAAQ,CAAC;QACZ,YAAY,EAAE,GAAG,CAAC,GAAG,CACjB,WAAW,CAAC,EAAE,CAAC,CAAC;YACZ,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,CAClD,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpB,IAAI;gBACJ,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,QAAQ,EAAE,SAAS,CAAC,QAAQ;aAC/B,CAAC,CACL;SACJ,CAAC,CACL;KACJ,CAAC,CAAC;AACP,CAAC"}
@@ -1,7 +1,5 @@
1
1
  import { Verbatim } from '../../verbatim.ts';
2
2
  /**
3
- * @throws {@link Invalid}
3
+ * @throws {@link SyntaxError}
4
4
  */
5
5
  export declare function decode<vdm extends Verbatim.Decl.Map.Proto>(str: string, vdm: vdm): Verbatim.Request.From<vdm>[];
6
- export declare class Invalid extends Error {
7
- }
@@ -1,32 +1,34 @@
1
1
  import { Verbatim } from "../../verbatim.js";
2
2
  /**
3
- * @throws {@link Invalid}
3
+ * @throws {@link SyntaxError}
4
4
  */
5
5
  export function decode(str, vdm) {
6
6
  const parts = [];
7
7
  const requests = extractRequests(str);
8
8
  for (const [channelName, args] of requests) {
9
- const vdbody = vdm[channelName];
10
- if (vdbody) { }
9
+ const params = vdm[channelName]?.parameters;
10
+ if (params) { }
11
11
  else
12
- throw new Invalid('Channel not found: ' + channelName);
13
- const paramNames = Object.keys(vdbody.parameters);
12
+ throw new SyntaxError('Channel not found: ' + channelName);
13
+ const paramNames = Object.keys(params);
14
14
  const argNames = Object.keys(args);
15
- for (const paramName of paramNames)
15
+ for (const paramName of paramNames) {
16
+ if (params[paramName].required) { }
17
+ else
18
+ continue;
16
19
  if (argNames.includes(paramName)) { }
17
20
  else
18
- throw new Invalid(`Argument of parameter ${paramName} of channel ${channelName} is missing.`);
21
+ throw new SyntaxError(`Argument of required parameter ${paramName} of channel ${channelName} is missing.`);
22
+ }
19
23
  for (const argName of argNames)
20
24
  if (paramNames.includes(argName)) { }
21
25
  else
22
- throw new Invalid(`Parameter ${argName} is not defined in channel ${channelName}.`);
26
+ throw new SyntaxError(`Parameter ${argName} is not defined in channel ${channelName}.`);
23
27
  const options = { name: channelName, args };
24
28
  parts.push(Verbatim.Request.create(options));
25
29
  }
26
30
  return parts;
27
31
  }
28
- export class Invalid extends Error {
29
- }
30
32
  const XML_ATTR_VAL = /(?<attr_val_quote>['"])(?<attr_val_body>[\s\S]+?)\k<attr_val_quote>/;
31
33
  const REQUEST = new RegExp(`<verbatim:request\\s+name\\s*=\\s*(?:${XML_ATTR_VAL.source})\\s*>` +
32
34
  `(?<verbatim_body>[\\s\\S]*?)` +
@@ -39,7 +41,7 @@ function extractArgs(str) {
39
41
  for (const match of str.matchAll(new RegExp(ARG_CDATA, 'g'))) {
40
42
  if (results[match.groups.attr_val_body] === undefined) { }
41
43
  else
42
- throw new Invalid('Duplicate argument of parameter ' + match.groups.attr_val_body);
44
+ throw new SyntaxError('Duplicate argument of parameter ' + match.groups.attr_val_body);
43
45
  results[match.groups.attr_val_body] = match.groups.arg_cdata_body;
44
46
  }
45
47
  return results;
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/verbatim/codec/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,MAAM,UAAU,MAAM,CAEpB,GAAW,EAAE,GAAQ;IAEnB,MAAM,KAAK,GAA+B,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACtC,KAAK,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;QAChC,IAAI,MAAM,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,OAAO,CAAC,qBAAqB,GAAG,WAAW,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,KAAK,MAAM,SAAS,IAAI,UAAU;YAC9B,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA,CAAC;;gBAChC,MAAM,IAAI,OAAO,CAAC,yBAAyB,SAAS,eAAe,WAAW,cAAc,CAAC,CAAC;QACtG,KAAK,MAAM,OAAO,IAAI,QAAQ;YAC1B,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;;gBAChC,MAAM,IAAI,OAAO,CAAC,aAAa,OAAO,8BAA8B,WAAW,GAAG,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAsC,CAAC;QAChF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,OAAO,OAAQ,SAAQ,KAAK;CAAE;AAGpC,MAAM,YAAY,GAAG,qEAAqE,CAAC;AAC3F,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,wCAAwC,YAAY,CAAC,MAAM,QAAQ;IACnE,8BAA8B;IAC9B,yBAAyB,CAC5B,CAAC;AACF,MAAM,SAAS,GAAG,IAAI,MAAM,CACxB,0CAA0C,YAAY,CAAC,MAAM,QAAQ;IACrE,2DAA2D;IAC3D,2BAA2B,CAC9B,CAAC;AAEF,SAAS,WAAW,CAAC,GAAW;IAC5B,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3D,IAAI,OAAO,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,KAAK,SAAS,EAAE,CAAC,CAAA,CAAC;;YACvD,MAAM,IAAI,OAAO,CAAC,kCAAkC,GAAG,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,CAAC;QACzF,OAAO,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,GAAG,KAAK,CAAC,MAAO,CAAC,cAAe,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACrC,MAAM,OAAO,GAAqD,EAAE,CAAC;IACrE,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,EAAE,WAAW,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,CAAC,CAAC,CAAC;IAC5F,OAAO,OAAO,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/verbatim/codec/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,MAAM,UAAU,MAAM,CAEpB,GAAW,EAAE,GAAQ;IAEnB,MAAM,KAAK,GAA+B,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACtC,KAAK,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;QAC5C,IAAI,MAAM,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,WAAW,CAAC,qBAAqB,GAAG,WAAW,CAAC,CAAC;QAC/E,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,SAAS,CAAE,CAAC,QAAQ,EAAE,CAAC,CAAA,CAAC;;gBAAM,SAAS;YAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA,CAAC;;gBAChC,MAAM,IAAI,WAAW,CAAC,kCAAkC,SAAS,eAAe,WAAW,cAAc,CAAC,CAAC;QACnH,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,QAAQ;YAC1B,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;;gBAChC,MAAM,IAAI,WAAW,CAAC,aAAa,OAAO,8BAA8B,WAAW,GAAG,CAAC,CAAC;QAChG,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAsC,CAAC;QAChF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAID,MAAM,YAAY,GAAG,qEAAqE,CAAC;AAC3F,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,wCAAwC,YAAY,CAAC,MAAM,QAAQ;IACnE,8BAA8B;IAC9B,yBAAyB,CAC5B,CAAC;AACF,MAAM,SAAS,GAAG,IAAI,MAAM,CACxB,0CAA0C,YAAY,CAAC,MAAM,QAAQ;IACrE,2DAA2D;IAC3D,2BAA2B,CAC9B,CAAC;AAEF,SAAS,WAAW,CAAC,GAAW;IAC5B,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3D,IAAI,OAAO,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,KAAK,SAAS,EAAE,CAAC,CAAA,CAAC;;YACvD,MAAM,IAAI,WAAW,CAAC,kCAAkC,GAAG,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,CAAC;QAC7F,OAAO,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,GAAG,KAAK,CAAC,MAAO,CAAC,cAAe,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACrC,MAAM,OAAO,GAAqD,EAAE,CAAC;IACrE,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,EAAE,WAAW,CAAC,KAAK,CAAC,MAAO,CAAC,aAAc,CAAC,CAAC,CAAC,CAAC;IAC5F,OAAO,OAAO,CAAC;AACnB,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function encode(name: string, mimeType: string, text: string): string;
@@ -0,0 +1,10 @@
1
+ import Handlebars from 'handlebars';
2
+ import Assets from "../../assets.js";
3
+ import { loggers } from "../../telemetry.js";
4
+ const template = Handlebars.compile(Assets.verbatim.response);
5
+ export function encode(name, mimeType, text) {
6
+ if (text.includes(']]>'))
7
+ loggers.message.warn('The text contains "]]>", which is not allowed in XML CDATA sections. ');
8
+ return template({ name, mimeType, text });
9
+ }
10
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/verbatim/codec/response.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAS9E,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,QAAgB,EAAE,IAAY;IAC/D,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;IAClG,OAAO,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9C,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function encode(name: string, mimeType: string, text: string): string;
@@ -0,0 +1,10 @@
1
+ import Handlebars from 'handlebars';
2
+ import Assets from "../../assets.js";
3
+ import { loggers } from "../../telemetry.js";
4
+ const template = Handlebars.compile(Assets.verbatim.system);
5
+ export function encode(name, mimeType, text) {
6
+ if (text.includes(']]>'))
7
+ loggers.message.warn('The text contains "]]>", which is not allowed in XML CDATA sections. ');
8
+ return template({ name, mimeType, text });
9
+ }
10
+ //# sourceMappingURL=system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../../src/verbatim/codec/system.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAS5E,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,QAAgB,EAAE,IAAY;IAC/D,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;IAClG,OAAO,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9C,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export * as Declarations from './codec/declarations.ts';
2
2
  export * as Request from './codec/request.ts';
3
+ export * as System from './codec/system.ts';
4
+ export * as Response from './codec/response.ts';
@@ -1,3 +1,5 @@
1
1
  export * as Declarations from "./codec/declarations.js";
2
2
  export * as Request from "./codec/request.js";
3
+ export * as System from "./codec/system.js";
4
+ export * as Response from "./codec/response.js";
3
5
  //# sourceMappingURL=codec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/verbatim/codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/verbatim/codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC"}
@@ -11,15 +11,16 @@ export declare namespace Verbatim {
11
11
  name: string;
12
12
  }
13
13
  type Args<parameters extends Verbatim.Decl.Params.Proto> = {
14
- [name in keyof parameters]: string;
14
+ [name in keyof parameters]: parameters[name]['required'] extends true ? string : string | void;
15
15
  };
16
16
  namespace Params {
17
- type Proto = Record<string, Verbatim.Decl.Para.Body>;
17
+ type Proto = Record<string, Verbatim.Decl.Param.Body>;
18
18
  }
19
- namespace Para {
19
+ namespace Param {
20
20
  interface Body {
21
21
  description: string;
22
22
  mimeType: string;
23
+ required: boolean;
23
24
  }
24
25
  }
25
26
  type Extract<vdm extends Verbatim.Decl.Map.Proto, nameu extends Verbatim.Name.From<vdm>> = nameu extends infer name extends Verbatim.Name.From<vdm> ? Verbatim.Decl<name, vdm[name]['parameters']> : never;
@@ -1 +1 @@
1
- {"version":3,"file":"verbatim.js","sourceRoot":"","sources":["../src/verbatim.ts"],"names":[],"mappings":"AACA,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC;AAGzB,MAAM,KAAW,QAAQ,CA2IxB;AA3ID,WAAiB,QAAQ;IAkFrB,MAAa,OAAO;QAET,IAAI,CAAa;QACjB,IAAI,CAAuC;QAClD,YAAsB,EAAuB;YACzC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QAEM,MAAM,CAAC,MAAM,CAChB,EAAoC;YAEpC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAA6B,CAAC;QAChE,CAAC;KACJ;IAdY,gBAAO,UAcnB,CAAA;AA2CL,CAAC,EA3IgB,QAAQ,KAAR,QAAQ,QA2IxB"}
1
+ {"version":3,"file":"verbatim.js","sourceRoot":"","sources":["../src/verbatim.ts"],"names":[],"mappings":"AACA,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC;AAGzB,MAAM,KAAW,QAAQ,CA4IxB;AA5ID,WAAiB,QAAQ;IAmFrB,MAAa,OAAO;QAET,IAAI,CAAa;QACjB,IAAI,CAAuC;QAClD,YAAsB,EAAuB;YACzC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QAEM,MAAM,CAAC,MAAM,CAChB,EAAoC;YAEpC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAA6B,CAAC;QAChE,CAAC;KACJ;IAdY,gBAAO,UAcnB,CAAA;AA2CL,CAAC,EA5IgB,QAAQ,KAAR,QAAQ,QA4IxB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zimtsui/typechat",
3
- "version": "0.0.77",
3
+ "version": "0.0.79",
4
4
  "exports": {
5
5
  ".": "./build/exports.js",
6
6
  "./assets": "./build/assets.js",