@rezi-ui/node 0.1.0-alpha.45 → 0.1.0-alpha.48

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.
@@ -0,0 +1,257 @@
1
+ /**
2
+ * packages/node/src/frameAudit.ts — Optional end-to-end frame audit utilities.
3
+ *
4
+ * Enable with:
5
+ * REZI_FRAME_AUDIT=1
6
+ *
7
+ * Optional:
8
+ * REZI_FRAME_AUDIT_LOG=/tmp/rezi-frame-audit.ndjson
9
+ * REZI_FRAME_AUDIT_NATIVE=1
10
+ * REZI_FRAME_AUDIT_NATIVE_RING=<bytes>
11
+ *
12
+ * Defaults:
13
+ * - When REZI_FRAME_AUDIT=1 and REZI_FRAME_AUDIT_LOG is unset, records are
14
+ * written to /tmp/rezi-frame-audit.ndjson to avoid polluting terminal output.
15
+ */
16
+ import { appendFileSync, mkdirSync, writeFileSync } from "node:fs";
17
+ import { join } from "node:path";
18
+ import { performance } from "node:perf_hooks";
19
+ function readEnv(name) {
20
+ const raw = process.env[name];
21
+ if (typeof raw !== "string")
22
+ return null;
23
+ const value = raw.trim();
24
+ return value.length > 0 ? value : null;
25
+ }
26
+ function envFlag(name, fallback = false) {
27
+ const value = readEnv(name);
28
+ if (value === null)
29
+ return fallback;
30
+ const norm = value.toLowerCase();
31
+ return norm === "1" || norm === "true" || norm === "yes" || norm === "on";
32
+ }
33
+ function envPositiveInt(name, fallback) {
34
+ const value = readEnv(name);
35
+ if (value === null)
36
+ return fallback;
37
+ const parsed = Number(value);
38
+ if (!Number.isFinite(parsed) || !Number.isInteger(parsed) || parsed <= 0)
39
+ return fallback;
40
+ return parsed;
41
+ }
42
+ function toHex32(v) {
43
+ return `0x${(v >>> 0).toString(16).padStart(8, "0")}`;
44
+ }
45
+ function hashFnv1a32(bytes, end) {
46
+ const n = Math.max(0, Math.min(end, bytes.byteLength));
47
+ let h = 0x811c9dc5;
48
+ for (let i = 0; i < n; i++) {
49
+ h ^= bytes[i] ?? 0;
50
+ h = Math.imul(h, 0x01000193);
51
+ }
52
+ return h >>> 0;
53
+ }
54
+ function sliceHex(bytes, start, end) {
55
+ const s = Math.max(0, Math.min(start, bytes.byteLength));
56
+ const e = Math.max(s, Math.min(end, bytes.byteLength));
57
+ let out = "";
58
+ for (let i = s; i < e; i++) {
59
+ out += (bytes[i] ?? 0).toString(16).padStart(2, "0");
60
+ }
61
+ return out;
62
+ }
63
+ function readHeaderU32(bytes, offset) {
64
+ if (offset < 0 || offset + 4 > bytes.byteLength)
65
+ return null;
66
+ try {
67
+ return new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength).getUint32(offset, true);
68
+ }
69
+ catch {
70
+ return null;
71
+ }
72
+ }
73
+ function decodeOpcodeHistogram(bytes) {
74
+ const cmdCount = readHeaderU32(bytes, 24);
75
+ const cmdOffset = readHeaderU32(bytes, 16);
76
+ const cmdBytes = readHeaderU32(bytes, 20);
77
+ if (cmdCount === null || cmdOffset === null || cmdBytes === null) {
78
+ return Object.freeze({ histogram: Object.freeze({}), valid: false });
79
+ }
80
+ if (cmdCount === 0) {
81
+ return Object.freeze({ histogram: Object.freeze({}), valid: true });
82
+ }
83
+ if (cmdOffset < 0 || cmdBytes < 0 || cmdOffset + cmdBytes > bytes.byteLength) {
84
+ return Object.freeze({ histogram: Object.freeze({}), valid: false });
85
+ }
86
+ const dv = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
87
+ let off = cmdOffset;
88
+ const end = cmdOffset + cmdBytes;
89
+ const hist = Object.create(null);
90
+ for (let i = 0; i < cmdCount; i++) {
91
+ if (off + 8 > end) {
92
+ return Object.freeze({ histogram: Object.freeze(hist), valid: false });
93
+ }
94
+ const opcode = dv.getUint16(off + 0, true);
95
+ const size = dv.getUint32(off + 4, true);
96
+ if (size < 8 || off + size > end) {
97
+ return Object.freeze({ histogram: Object.freeze(hist), valid: false });
98
+ }
99
+ const key = String(opcode);
100
+ hist[key] = (hist[key] ?? 0) + 1;
101
+ off += size;
102
+ }
103
+ return Object.freeze({ histogram: Object.freeze(hist), valid: off === end });
104
+ }
105
+ function nowUs() {
106
+ return Math.round(performance.now() * 1000);
107
+ }
108
+ const FRAME_AUDIT_ENABLED = envFlag("REZI_FRAME_AUDIT", false);
109
+ const FRAME_AUDIT_LOG_PATH = readEnv("REZI_FRAME_AUDIT_LOG") ?? (FRAME_AUDIT_ENABLED ? "/tmp/rezi-frame-audit.ndjson" : null);
110
+ const FRAME_AUDIT_STDERR_MIRROR = envFlag("REZI_FRAME_AUDIT_STDERR_MIRROR", false);
111
+ const FRAME_AUDIT_DUMP_DIR = readEnv("REZI_FRAME_AUDIT_DUMP_DIR");
112
+ const FRAME_AUDIT_DUMP_ROUTE = readEnv("REZI_FRAME_AUDIT_DUMP_ROUTE");
113
+ const FRAME_AUDIT_DUMP_MAX = envPositiveInt("REZI_FRAME_AUDIT_DUMP_MAX", 0);
114
+ let frameAuditDumpCount = 0;
115
+ export { FRAME_AUDIT_ENABLED };
116
+ export const FRAME_AUDIT_NATIVE_ENABLED = FRAME_AUDIT_ENABLED && envFlag("REZI_FRAME_AUDIT_NATIVE", true);
117
+ export const FRAME_AUDIT_NATIVE_RING_BYTES = envPositiveInt("REZI_FRAME_AUDIT_NATIVE_RING", 4 << 20);
118
+ // Match zr_debug category/code values.
119
+ export const ZR_DEBUG_CAT_FRAME = 1;
120
+ export const ZR_DEBUG_CAT_DRAWLIST = 3;
121
+ export const ZR_DEBUG_CAT_PERF = 6;
122
+ export const ZR_DEBUG_CODE_FRAME_BEGIN = 0x0100;
123
+ export const ZR_DEBUG_CODE_FRAME_SUBMIT = 0x0101;
124
+ export const ZR_DEBUG_CODE_FRAME_PRESENT = 0x0102;
125
+ export const ZR_DEBUG_CODE_FRAME_RESIZE = 0x0103;
126
+ export const ZR_DEBUG_CODE_DRAWLIST_VALIDATE = 0x0300;
127
+ export const ZR_DEBUG_CODE_DRAWLIST_EXECUTE = 0x0301;
128
+ export const ZR_DEBUG_CODE_DRAWLIST_CMD = 0x0302;
129
+ export const ZR_DEBUG_CODE_PERF_TIMING = 0x0600;
130
+ export const ZR_DEBUG_CODE_PERF_DIFF_PATH = 0x0601;
131
+ function readContextRoute() {
132
+ const g = globalThis;
133
+ if (typeof g.__reziFrameAuditContext !== "function")
134
+ return null;
135
+ try {
136
+ const ctx = g.__reziFrameAuditContext();
137
+ const route = ctx.route;
138
+ return typeof route === "string" && route.length > 0 ? route : null;
139
+ }
140
+ catch {
141
+ return null;
142
+ }
143
+ }
144
+ function sanitizeFileToken(value) {
145
+ return value.replace(/[^a-zA-Z0-9._-]/g, "_");
146
+ }
147
+ export function maybeDumpDrawlistBytes(scope, stage, frameSeq, bytes) {
148
+ if (!FRAME_AUDIT_ENABLED)
149
+ return;
150
+ if (FRAME_AUDIT_DUMP_DIR === null)
151
+ return;
152
+ if (FRAME_AUDIT_DUMP_MAX <= 0)
153
+ return;
154
+ if (frameAuditDumpCount >= FRAME_AUDIT_DUMP_MAX)
155
+ return;
156
+ const route = readContextRoute();
157
+ if (FRAME_AUDIT_DUMP_ROUTE !== null && route !== FRAME_AUDIT_DUMP_ROUTE)
158
+ return;
159
+ try {
160
+ mkdirSync(FRAME_AUDIT_DUMP_DIR, { recursive: true });
161
+ const seq = Number.isInteger(frameSeq) && frameSeq > 0 ? frameSeq : 0;
162
+ const routeToken = route ? sanitizeFileToken(route) : "unknown";
163
+ const scopeToken = sanitizeFileToken(scope);
164
+ const stageToken = sanitizeFileToken(stage);
165
+ const stamp = `${Date.now()}`.padStart(13, "0");
166
+ const base = `${stamp}-pid${process.pid}-seq${seq}-${routeToken}-${scopeToken}-${stageToken}`;
167
+ writeFileSync(join(FRAME_AUDIT_DUMP_DIR, `${base}.bin`), bytes);
168
+ const meta = JSON.stringify({
169
+ ts: new Date().toISOString(),
170
+ pid: process.pid,
171
+ frameSeq: seq,
172
+ route,
173
+ scope,
174
+ stage,
175
+ byteLen: bytes.byteLength,
176
+ hash32: toHex32(hashFnv1a32(bytes, bytes.byteLength)),
177
+ }, null, 2);
178
+ writeFileSync(join(FRAME_AUDIT_DUMP_DIR, `${base}.json`), `${meta}\n`, "utf8");
179
+ frameAuditDumpCount += 1;
180
+ }
181
+ catch {
182
+ // Optional diagnostics must never affect runtime behavior.
183
+ }
184
+ }
185
+ export function drawlistFingerprint(bytes) {
186
+ const byteLen = bytes.byteLength;
187
+ const prefixLen = Math.min(4096, byteLen);
188
+ const cmdCount = readHeaderU32(bytes, 24);
189
+ const totalSize = readHeaderU32(bytes, 12);
190
+ const head16 = sliceHex(bytes, 0, Math.min(16, byteLen));
191
+ const tailStart = Math.max(0, byteLen - 16);
192
+ const tail16 = sliceHex(bytes, tailStart, byteLen);
193
+ const decoded = decodeOpcodeHistogram(bytes);
194
+ return Object.freeze({
195
+ byteLen,
196
+ hash32: toHex32(hashFnv1a32(bytes, byteLen)),
197
+ prefixHash32: toHex32(hashFnv1a32(bytes, prefixLen)),
198
+ cmdCount,
199
+ totalSize,
200
+ head16,
201
+ tail16,
202
+ opcodeHistogram: decoded.histogram,
203
+ cmdStreamValid: decoded.valid,
204
+ });
205
+ }
206
+ export function createFrameAuditLogger(scope) {
207
+ if (!FRAME_AUDIT_ENABLED) {
208
+ return Object.freeze({
209
+ enabled: false,
210
+ emit: () => { },
211
+ });
212
+ }
213
+ const writeLine = (line) => {
214
+ try {
215
+ if (FRAME_AUDIT_LOG_PATH !== null) {
216
+ appendFileSync(FRAME_AUDIT_LOG_PATH, `${line}\n`, "utf8");
217
+ if (!FRAME_AUDIT_STDERR_MIRROR) {
218
+ return;
219
+ }
220
+ }
221
+ else if (!FRAME_AUDIT_STDERR_MIRROR) {
222
+ return;
223
+ }
224
+ process.stderr.write(`${line}\n`);
225
+ }
226
+ catch {
227
+ // Optional diagnostics must never affect runtime behavior.
228
+ }
229
+ };
230
+ const g = globalThis;
231
+ if (typeof g.__reziFrameAuditSink !== "function") {
232
+ g.__reziFrameAuditSink = writeLine;
233
+ }
234
+ return Object.freeze({
235
+ enabled: true,
236
+ emit: (stage, fields = Object.freeze({})) => {
237
+ try {
238
+ const context = typeof g.__reziFrameAuditContext === "function" ? g.__reziFrameAuditContext() : null;
239
+ const line = JSON.stringify({
240
+ ts: new Date().toISOString(),
241
+ tUs: nowUs(),
242
+ pid: process.pid,
243
+ layer: "node",
244
+ scope,
245
+ stage,
246
+ ...(context ?? {}),
247
+ ...fields,
248
+ });
249
+ writeLine(line);
250
+ }
251
+ catch {
252
+ // Optional diagnostics must never affect runtime behavior.
253
+ }
254
+ },
255
+ });
256
+ }
257
+ //# sourceMappingURL=frameAudit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frameAudit.js","sourceRoot":"","sources":["../src/frameAudit.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,KAAK,EACV,KAAK,eAAe,EAIrB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EACL,KAAK,uBAAuB,EAG7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,YAAY,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,uBAAuB,EACvB,6BAA6B,EAC7B,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,0BAA0B,EAC1B,aAAa,EACb,iCAAiC,EACjC,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD,MAAM,MAAM,aAAa,GAAG,QAAQ,CAClC,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,eAAe,CAAC,CAChE,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,QAAQ,CAAC;IAC7C,YAAY,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,GAAG,eAAe,CAAC;IAChC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAC7B,QAAQ,CAAC;IACP,yCAAyC;IACzC,OAAO,EAAE,WAAW,CAAC;IACrB,gEAAgE;IAChE,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAC5C,CAAC,CAAC;AAsJL,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAwC1E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,GAAE,iBAAsB,GAAG,WAAW,CAE7E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,KAAK,EACV,KAAK,eAAe,EAIrB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EACL,KAAK,uBAAuB,EAG7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,YAAY,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,uBAAuB,EACvB,6BAA6B,EAC7B,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,0BAA0B,EAC1B,aAAa,EACb,iCAAiC,EACjC,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD,MAAM,MAAM,aAAa,GAAG,QAAQ,CAClC,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,eAAe,CAAC,CAChE,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,QAAQ,CAAC;IAC7C,YAAY,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,GAAG,eAAe,CAAC;IAChC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAC7B,QAAQ,CAAC;IACP,yCAAyC;IACzC,OAAO,EAAE,WAAW,CAAC;IACrB,gEAAgE;IAChE,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAC5C,CAAC,CAAC;AAmJL,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAwC1E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,GAAE,iBAAsB,GAAG,WAAW,CAE7E"}
package/dist/index.js CHANGED
@@ -12,11 +12,8 @@ setDefaultTailSourceFactory(createNodeTailSource);
12
12
  function isFiniteNumber(value) {
13
13
  return typeof value === "number" && Number.isFinite(value);
14
14
  }
15
- function isRgb(value) {
16
- if (!value || typeof value !== "object")
17
- return false;
18
- const candidate = value;
19
- return isFiniteNumber(candidate.r) && isFiniteNumber(candidate.g) && isFiniteNumber(candidate.b);
15
+ function isRgb24(value) {
16
+ return isFiniteNumber(value) && value >= 0 && value <= 0x00ff_ffff;
20
17
  }
21
18
  function isSpacingToken(value) {
22
19
  return isFiniteNumber(value) && Number.isInteger(value) && value >= 0;
@@ -28,7 +25,7 @@ function readLegacyThemeColors(theme) {
28
25
  if (!colors || typeof colors !== "object")
29
26
  return null;
30
27
  const candidate = colors;
31
- if (!isRgb(candidate.fg) || !isRgb(candidate.bg))
28
+ if (!isRgb24(candidate.fg) || !isRgb24(candidate.bg))
32
29
  return null;
33
30
  return candidate;
34
31
  }
@@ -134,7 +131,6 @@ function toBackendConfig(config) {
134
131
  ...(config.executionMode !== undefined ? { executionMode: config.executionMode } : {}),
135
132
  ...(config.fpsCap !== undefined ? { fpsCap: config.fpsCap } : {}),
136
133
  ...(config.maxEventBytes !== undefined ? { maxEventBytes: config.maxEventBytes } : {}),
137
- ...(config.drawlistVersion !== undefined ? { drawlistVersion: config.drawlistVersion } : {}),
138
134
  ...(config.frameTransport !== undefined ? { frameTransport: config.frameTransport } : {}),
139
135
  ...(config.frameSabSlotCount !== undefined
140
136
  ? { frameSabSlotCount: config.frameSabSlotCount }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,SAAS,EACT,YAAY,EACZ,2BAA2B,GAC5B,MAAM,eAAe,CAAC;AACvB,OAAO,EAGL,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAiC,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAEL,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAwBzD,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,2BAA2B,CAAC,oBAAoB,CAAC,CAAC;AA6ClD,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,KAAK,CAAC,KAAc;IAC3B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,SAAS,GAAG,KAAkD,CAAC;IACrE,OAAO,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAA0C;IACvE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,MAAM,GAAI,KAA8B,CAAC,MAAM,CAAC;IACtD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,SAAS,GAAG,MAAkE,CAAC;IACrF,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,SAA4B,CAAC;AACtC,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA0C;IAClE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,YAAY,CAAC,OAAO,CAAC;IACrE,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;gBAAE,OAAO,YAAY,CAAC,OAAO,CAAC;QAC1D,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAiC,CAAC;QACjD,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,IACE,cAAc,CAAC,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,CAAC;YAClB,cAAc,CAAC,IAAI,CAAC,EACpB,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC,OAAO,CAAC;AAC9B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA0C;IACpE,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC;IACvE,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC;IAC3B,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,GAAG,UAAU;YACb,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,IAAI;YACZ,kBAAkB,EAAE,IAAI;YACxB,oBAAoB,EAAE,IAAI;YAC1B,iBAAiB,EAAE,IAAI;YACvB,iBAAiB,EAAE,IAAI;SACxB,CAAC;QACF,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc;IACrB,MAAM,UAAU,GAAI,UAAyE;SAC1F,OAAO,CAAC;IACX,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC/D,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC3B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,aAAa,CAAC,GAAsB;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,WAAW,CAAC,MAAiC;IACpD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/F,GAAG,CAAC,MAAM,CAAC,sBAAsB,KAAK,SAAS;YAC7C,CAAC,CAAC,EAAE,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,EAAE;YAC3D,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,yBAAyB,KAAK,SAAS;YAChD,CAAC,CAAC,EAAE,yBAAyB,EAAE,MAAM,CAAC,yBAAyB,EAAE;YACjE,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,6BAA6B,KAAK,SAAS;YACpD,CAAC,CAAC,EAAE,6BAA6B,EAAE,MAAM,CAAC,6BAA6B,EAAE;YACzE,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAiC;IACxD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAI,IAA6B;IAC5D,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IAEtE,MAAM,GAAG,GAAG,SAAS,CAAC;QACpB,OAAO;QACP,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1C,CAAC,CAAC;IACH,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9F,IAAI,SAAS,EAAE,CAAC;QACd,+BAA+B,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE;QACtC,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE;QACpC,KAAK,EAAE,OAAO;QACd,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE;QAC7C,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,KAAK;KAChB,CAAe,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAA4B,EAAE;IAC9D,OAAO,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}