@zimtsui/typechat 0.0.89 → 0.0.90

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.
@@ -1,3 +1,3 @@
1
1
  import { Verbatim } from '../../verbatim.ts';
2
- import './attr-escape.ts';
2
+ import './escape.ts';
3
3
  export declare function encode<vdm extends Verbatim.Decl.Map.Proto>(vdm: vdm): string;
@@ -1,7 +1,7 @@
1
1
  import Handlebars from 'handlebars';
2
2
  import Assets from "../../assets.js";
3
3
  import assert from 'node:assert';
4
- import "./attr-escape.js";
4
+ import "./escape.js";
5
5
  const template = Handlebars.compile(Assets.verbatim.declarations);
6
6
  export function encode(vdm) {
7
7
  const vds = Object.entries(vdm).map(([name, body]) => {
@@ -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;AACrC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,kBAAkB,CAAC;AAG1B,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,GAAG,SAAS,CAAC,QAAQ,EAAE;gBACjC,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;AACjC,OAAO,aAAa,CAAC;AAGrB,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,GAAG,SAAS,CAAC,QAAQ,EAAE;gBACjC,QAAQ,EAAE,SAAS,CAAC,QAAQ;aAC/B,CAAC,CACL;SACJ,CAAC,CACL;KACJ,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,33 @@
1
+ import Handlebars from 'handlebars';
2
+ import assert from 'node:assert';
3
+ function assertXmlAttr(value) {
4
+ assert(/^[^<>&'"]+$/.test(value));
5
+ return value;
6
+ }
7
+ Handlebars.registerHelper('AssertXmlAttr', (value) => {
8
+ assert(typeof value === 'string');
9
+ return new Handlebars.SafeString(assertXmlAttr(value));
10
+ });
11
+ function escapeXmlAttr(value) {
12
+ return value
13
+ .replaceAll('&', '&amp;')
14
+ .replaceAll('<', '&lt;')
15
+ .replaceAll('>', '&gt;')
16
+ .replaceAll('"', '&quot;')
17
+ .replaceAll("'", '&apos;');
18
+ }
19
+ Handlebars.registerHelper('XmlAttr', (value) => {
20
+ assert(typeof value === 'string');
21
+ return new Handlebars.SafeString(escapeXmlAttr(value));
22
+ });
23
+ function escapeXmlBody(value) {
24
+ return value
25
+ .replaceAll('&', '&amp;')
26
+ .replaceAll('<', '&lt;')
27
+ .replaceAll('>', '&gt;');
28
+ }
29
+ Handlebars.registerHelper('XmlBody', (value) => {
30
+ assert(typeof value === 'string');
31
+ return new Handlebars.SafeString(escapeXmlBody(value));
32
+ });
33
+ //# sourceMappingURL=escape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escape.js","sourceRoot":"","sources":["../../../src/verbatim/codec/escape.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,aAAa,CAAC;AAGjC,SAAS,aAAa,CAAC,KAAa;IAChC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,OAAO,KAAK,CAAC;AACjB,CAAC;AACD,UAAU,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,KAAc,EAAE,EAAE;IAC1D,MAAM,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IAClC,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAGH,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,KAAK;SACP,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAC7B;AACL,CAAC;AACD,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAc,EAAE,EAAE;IACpD,MAAM,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IAClC,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAGH,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,KAAK;SACP,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAC3B;AACL,CAAC;AACD,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAc,EAAE,EAAE;IACpD,MAAM,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IAClC,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { MIMEType } from 'whatwg-mimetype';
2
- import './attr-escape.ts';
2
+ import './escape.ts';
3
3
  export declare function encode(mimeType: MIMEType, text: string): string;
@@ -1,7 +1,7 @@
1
1
  import Handlebars from 'handlebars';
2
2
  import Assets from "../../assets.js";
3
3
  import { loggers } from "../../telemetry.js";
4
- import "./attr-escape.js";
4
+ import "./escape.js";
5
5
  const template = Handlebars.compile(Assets.verbatim.quotation);
6
6
  export function encode(mimeType, text) {
7
7
  if (text.includes(']]>'))
@@ -1 +1 @@
1
- {"version":3,"file":"quotation.js","sourceRoot":"","sources":["../../../src/verbatim/codec/quotation.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,kBAAkB,CAAC;AAG1B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAQ/E,MAAM,UAAU,MAAM,CAAC,QAAkB,EAAE,IAAY;IACnD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;IACvG,OAAO,QAAQ,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"quotation.js","sourceRoot":"","sources":["../../../src/verbatim/codec/quotation.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,aAAa,CAAC;AAGrB,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAQ/E,MAAM,UAAU,MAAM,CAAC,QAAkB,EAAE,IAAY;IACnD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;IACvG,OAAO,QAAQ,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC"}
@@ -3,3 +3,9 @@ import { Verbatim } from '../../verbatim.ts';
3
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 const XML_ATTR_NAME: RegExp;
7
+ export declare const XML_ATTR_VAL: RegExp;
8
+ export declare const XML_ATTR: RegExp;
9
+ export declare const XML_ATTRS: RegExp;
10
+ export declare const VBT_ARG: RegExp;
11
+ export declare const VBT_REQ: RegExp;
@@ -29,27 +29,53 @@ export function decode(str, vdm) {
29
29
  }
30
30
  return parts;
31
31
  }
32
- const XML_ATTR_VAL = /(?<attr_val_quote>['"])(?<attr_val_body>[\s\S]+?)\k<attr_val_quote>/;
33
- const REQUEST = new RegExp(`<verbatim:request\\s+name\\s*=\\s*(?:${XML_ATTR_VAL.source})\\s*>` +
34
- `(?<verbatim_body>[\\s\\S]*?)` +
35
- `</verbatim:request\\s*>`);
36
- const ARG_CDATA = new RegExp(`<verbatim:parameter\\s+name\\s*=\\s*(?:${XML_ATTR_VAL.source})\\s*>` +
37
- `\\s*<!\\[CDATA\\[(?<arg_cdata_body>[\\s\\S]*?)\\]\\]>\\s*` +
32
+ export const XML_ATTR_NAME = /(?<attr_name>[a-zA-Z_:][a-zA-Z0-9._:-]*)/;
33
+ export const XML_ATTR_VAL = /(?<attr_val_quote>['"])(?<attr_val_body>[\s\S]+?)\k<attr_val_quote>/;
34
+ export const XML_ATTR = new RegExp(`(?:${XML_ATTR_NAME.source})\\s*=\\s*(?:${XML_ATTR_VAL.source})`);
35
+ export const XML_ATTRS = new RegExp(`(?:${XML_ATTR.source}\\s*)*`);
36
+ export const VBT_ARG = new RegExp(`<verbatim:parameter\\s+(?<vbt_arg_attrs>${XML_ATTRS.source})\\s*>` +
37
+ `\\s*<!\\[CDATA\\[(?<vbt_arg_cdata_body>[\\s\\S]*?)\\]\\]>\\s*` +
38
38
  `</verbatim:parameter\\s*>`);
39
- function extractArgs(str) {
40
- const results = {};
41
- for (const match of str.matchAll(new RegExp(ARG_CDATA, 'g'))) {
42
- if (results[match.groups.attr_val_body] === undefined) { }
39
+ export const VBT_REQ = new RegExp(`<verbatim:request\\s+(?<vbt_req_attrs>${XML_ATTRS.source})\\s*>` +
40
+ `(?<vbt_req_body>[\\s\\S]*?)` +
41
+ `</verbatim:request\\s*>`);
42
+ function extractArgs(argsString) {
43
+ const args = {};
44
+ for (const argMatch of argsString.matchAll(new RegExp(VBT_ARG, 'g'))) {
45
+ const argAttrs = {};
46
+ for (const argAttrMatch of argMatch.groups.vbt_arg_attrs.matchAll(new RegExp(XML_ATTR, 'g'))) {
47
+ if (argAttrs[argAttrMatch.groups.attr_name] === undefined) { }
48
+ else
49
+ throw new SyntaxError(`Duplicate attribute ${argAttrMatch.groups.attr_name} in argument.`);
50
+ argAttrs[argAttrMatch.groups.attr_name] = argAttrMatch.groups.attr_val_body;
51
+ }
52
+ if (argAttrs['name']) { }
53
+ else
54
+ throw new SyntaxError('Attribute `name` is required in argument.');
55
+ const argCdataBody = argMatch.groups.vbt_arg_cdata_body;
56
+ if (args[argAttrs['name']] === undefined) { }
43
57
  else
44
- throw new SyntaxError('Duplicate argument of parameter ' + match.groups.attr_val_body);
45
- results[match.groups.attr_val_body] = match.groups.arg_cdata_body;
58
+ throw new SyntaxError(`Duplicate argument of parameter ${argAttrs['name']}`);
59
+ args[argAttrs['name']] = argCdataBody;
46
60
  }
47
- return results;
61
+ return args;
48
62
  }
49
- function extractRequests(requests) {
50
- const results = [];
51
- for (const match of requests.matchAll(new RegExp(REQUEST, 'g')))
52
- results.push([match.groups.attr_val_body, extractArgs(match.groups.verbatim_body)]);
53
- return results;
63
+ function extractRequests(reqsString) {
64
+ const reqs = [];
65
+ for (const reqMatch of reqsString.matchAll(new RegExp(VBT_REQ, 'g'))) {
66
+ const reqAttrs = {};
67
+ for (const reqAttrMatch of reqMatch.groups.vbt_req_attrs.matchAll(new RegExp(XML_ATTR, 'g'))) {
68
+ if (reqAttrs[reqAttrMatch.groups.attr_name] === undefined) { }
69
+ else
70
+ throw new SyntaxError(`Duplicate attribute ${reqAttrMatch.groups.attr_name} in request.`);
71
+ reqAttrs[reqAttrMatch.groups.attr_name] = reqAttrMatch.groups.attr_val_body;
72
+ }
73
+ if (reqAttrs['name']) { }
74
+ else
75
+ throw new SyntaxError('Attribute `name` is required in request.');
76
+ const reqArgs = extractArgs(reqMatch.groups.vbt_req_body);
77
+ reqs.push([reqAttrs['name'], reqArgs]);
78
+ }
79
+ return reqs;
54
80
  }
55
81
  //# sourceMappingURL=request.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/verbatim/codec/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/verbatim/codec/request.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { MIMEType } from 'whatwg-mimetype';
2
- import './attr-escape.ts';
2
+ import './escape.ts';
3
3
  export declare function encode(name: string, mimeType: MIMEType, text: string): string;
@@ -1,7 +1,7 @@
1
1
  import Handlebars from 'handlebars';
2
2
  import Assets from "../../assets.js";
3
3
  import { loggers } from "../../telemetry.js";
4
- import "./attr-escape.js";
4
+ import "./escape.js";
5
5
  const template = Handlebars.compile(Assets.verbatim.response);
6
6
  export function encode(name, mimeType, text) {
7
7
  if (text.includes(']]>'))
@@ -1 +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;AAE7C,OAAO,kBAAkB,CAAC;AAG1B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAS9E,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,QAAkB,EAAE,IAAY;IACjE,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,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC"}
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;AAE7C,OAAO,aAAa,CAAC;AAGrB,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAiB,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAS9E,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,QAAkB,EAAE,IAAY;IACjE,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,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zimtsui/typechat",
3
- "version": "0.0.89",
3
+ "version": "0.0.90",
4
4
  "exports": {
5
5
  ".": "./build/exports.js",
6
6
  "./assets": "./build/assets.js",
package/.codex DELETED
File without changes
@@ -1,11 +0,0 @@
1
- import Handlebars from 'handlebars';
2
- function escapeXmlAttr(value) {
3
- return value
4
- .replaceAll('&', '&amp;')
5
- .replaceAll('<', '&lt;')
6
- .replaceAll('"', '&quot;');
7
- }
8
- Handlebars.registerHelper('XmlAttr', (value) => {
9
- return new Handlebars.SafeString(escapeXmlAttr(String(value)));
10
- });
11
- //# sourceMappingURL=attr-escape.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attr-escape.js","sourceRoot":"","sources":["../../../src/verbatim/codec/attr-escape.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,KAAK;SACP,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAc,EAAE,EAAE;IACpD,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC,CAAC"}