@anvailabs/agentbrowser-mcp 1.8.15 → 1.8.17

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/bin.js CHANGED
@@ -119,12 +119,24 @@ function IsAsyncIterator2(value) {
119
119
  function IsIterator2(value) {
120
120
  return IsObject2(value) && globalThis.Symbol.iterator in value;
121
121
  }
122
+ function IsStandardObject(value) {
123
+ return IsObject2(value) && (globalThis.Object.getPrototypeOf(value) === Object.prototype || globalThis.Object.getPrototypeOf(value) === null);
124
+ }
122
125
  function IsPromise(value) {
123
126
  return value instanceof globalThis.Promise;
124
127
  }
125
128
  function IsDate2(value) {
126
129
  return value instanceof Date && globalThis.Number.isFinite(value.getTime());
127
130
  }
131
+ function IsMap(value) {
132
+ return value instanceof globalThis.Map;
133
+ }
134
+ function IsSet(value) {
135
+ return value instanceof globalThis.Set;
136
+ }
137
+ function IsTypedArray(value) {
138
+ return globalThis.ArrayBuffer.isView(value);
139
+ }
128
140
  function IsUint8Array2(value) {
129
141
  return value instanceof globalThis.Uint8Array;
130
142
  }
@@ -2647,9 +2659,9 @@ var TransformEncodeBuilder = class {
2647
2659
  this.decode = decode;
2648
2660
  }
2649
2661
  EncodeTransform(encode, schema) {
2650
- const Encode = (value) => schema[TransformKind].Encode(encode(value));
2651
- const Decode = (value) => this.decode(schema[TransformKind].Decode(value));
2652
- const Codec = { Encode, Decode };
2662
+ const Encode2 = (value) => schema[TransformKind].Encode(encode(value));
2663
+ const Decode2 = (value) => this.decode(schema[TransformKind].Decode(value));
2664
+ const Codec = { Encode: Encode2, Decode: Decode2 };
2653
2665
  return { ...schema, [TransformKind]: Codec };
2654
2666
  }
2655
2667
  EncodeSchema(encode, schema) {
@@ -4032,202 +4044,1226 @@ function Errors(...args) {
4032
4044
  return new ValueErrorIterator(iterator);
4033
4045
  }
4034
4046
 
4035
- // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/transform/decode.mjs
4036
- var TransformDecodeCheckError = class extends TypeBoxError {
4037
- constructor(schema, value, error2) {
4038
- super(`Unable to decode value as it does not match the expected schema`);
4039
- this.schema = schema;
4040
- this.value = value;
4047
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/assert/assert.mjs
4048
+ var __classPrivateFieldSet = function(receiver, state, value, kind, f) {
4049
+ if (kind === "m") throw new TypeError("Private method is not writable");
4050
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4051
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
4052
+ return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
4053
+ };
4054
+ var __classPrivateFieldGet = function(receiver, state, kind, f) {
4055
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4056
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4057
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
4058
+ };
4059
+ var _AssertError_instances;
4060
+ var _AssertError_iterator;
4061
+ var _AssertError_Iterator;
4062
+ var AssertError = class extends TypeBoxError {
4063
+ constructor(iterator) {
4064
+ const error2 = iterator.First();
4065
+ super(error2 === void 0 ? "Invalid Value" : error2.message);
4066
+ _AssertError_instances.add(this);
4067
+ _AssertError_iterator.set(this, void 0);
4068
+ __classPrivateFieldSet(this, _AssertError_iterator, iterator, "f");
4041
4069
  this.error = error2;
4042
4070
  }
4071
+ /** Returns an iterator for each error in this value. */
4072
+ Errors() {
4073
+ return new ValueErrorIterator(__classPrivateFieldGet(this, _AssertError_instances, "m", _AssertError_Iterator).call(this));
4074
+ }
4043
4075
  };
4044
- var TransformDecodeError = class extends TypeBoxError {
4045
- constructor(schema, path, value, error2) {
4046
- super(error2 instanceof Error ? error2.message : "Unknown error");
4076
+ _AssertError_iterator = /* @__PURE__ */ new WeakMap(), _AssertError_instances = /* @__PURE__ */ new WeakSet(), _AssertError_Iterator = function* _AssertError_Iterator2() {
4077
+ if (this.error)
4078
+ yield this.error;
4079
+ yield* __classPrivateFieldGet(this, _AssertError_iterator, "f");
4080
+ };
4081
+ function AssertValue(schema, references, value) {
4082
+ if (Check(schema, references, value))
4083
+ return;
4084
+ throw new AssertError(Errors(schema, references, value));
4085
+ }
4086
+ function Assert(...args) {
4087
+ return args.length === 3 ? AssertValue(args[0], args[1], args[2]) : AssertValue(args[0], [], args[1]);
4088
+ }
4089
+
4090
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/clone/clone.mjs
4091
+ function FromObject10(value) {
4092
+ const Acc = {};
4093
+ for (const key of Object.getOwnPropertyNames(value)) {
4094
+ Acc[key] = Clone2(value[key]);
4095
+ }
4096
+ for (const key of Object.getOwnPropertySymbols(value)) {
4097
+ Acc[key] = Clone2(value[key]);
4098
+ }
4099
+ return Acc;
4100
+ }
4101
+ function FromArray9(value) {
4102
+ return value.map((element) => Clone2(element));
4103
+ }
4104
+ function FromTypedArray(value) {
4105
+ return value.slice();
4106
+ }
4107
+ function FromMap(value) {
4108
+ return new Map(Clone2([...value.entries()]));
4109
+ }
4110
+ function FromSet(value) {
4111
+ return new Set(Clone2([...value.entries()]));
4112
+ }
4113
+ function FromDate4(value) {
4114
+ return new Date(value.toISOString());
4115
+ }
4116
+ function FromValue2(value) {
4117
+ return value;
4118
+ }
4119
+ function Clone2(value) {
4120
+ if (IsArray2(value))
4121
+ return FromArray9(value);
4122
+ if (IsDate2(value))
4123
+ return FromDate4(value);
4124
+ if (IsTypedArray(value))
4125
+ return FromTypedArray(value);
4126
+ if (IsMap(value))
4127
+ return FromMap(value);
4128
+ if (IsSet(value))
4129
+ return FromSet(value);
4130
+ if (IsObject2(value))
4131
+ return FromObject10(value);
4132
+ if (IsValueType(value))
4133
+ return FromValue2(value);
4134
+ throw new Error("ValueClone: Unable to clone value");
4135
+ }
4136
+
4137
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/create/create.mjs
4138
+ var ValueCreateError = class extends TypeBoxError {
4139
+ constructor(schema, message) {
4140
+ super(message);
4047
4141
  this.schema = schema;
4048
- this.path = path;
4049
- this.value = value;
4050
- this.error = error2;
4051
4142
  }
4052
4143
  };
4053
- function Default(schema, path, value) {
4054
- try {
4055
- return IsTransform(schema) ? schema[TransformKind].Decode(value) : value;
4056
- } catch (error2) {
4057
- throw new TransformDecodeError(schema, path, value, error2);
4144
+ function FromDefault(value) {
4145
+ return IsFunction2(value) ? value() : Clone2(value);
4146
+ }
4147
+ function FromAny4(schema, references) {
4148
+ if (HasPropertyKey2(schema, "default")) {
4149
+ return FromDefault(schema.default);
4150
+ } else {
4151
+ return {};
4152
+ }
4153
+ }
4154
+ function FromArgument4(schema, references) {
4155
+ return {};
4156
+ }
4157
+ function FromArray10(schema, references) {
4158
+ if (schema.uniqueItems === true && !HasPropertyKey2(schema, "default")) {
4159
+ throw new ValueCreateError(schema, "Array with the uniqueItems constraint requires a default value");
4160
+ } else if ("contains" in schema && !HasPropertyKey2(schema, "default")) {
4161
+ throw new ValueCreateError(schema, "Array with the contains constraint requires a default value");
4162
+ } else if ("default" in schema) {
4163
+ return FromDefault(schema.default);
4164
+ } else if (schema.minItems !== void 0) {
4165
+ return Array.from({ length: schema.minItems }).map((item) => {
4166
+ return Visit7(schema.items, references);
4167
+ });
4168
+ } else {
4169
+ return [];
4058
4170
  }
4059
4171
  }
4060
- function FromArray9(schema, references, path, value) {
4061
- return IsArray2(value) ? Default(schema, path, value.map((value2, index) => Visit7(schema.items, references, `${path}/${index}`, value2))) : Default(schema, path, value);
4172
+ function FromAsyncIterator6(schema, references) {
4173
+ if (HasPropertyKey2(schema, "default")) {
4174
+ return FromDefault(schema.default);
4175
+ } else {
4176
+ return (async function* () {
4177
+ })();
4178
+ }
4062
4179
  }
4063
- function FromIntersect11(schema, references, path, value) {
4064
- if (!IsObject2(value) || IsValueType(value))
4065
- return Default(schema, path, value);
4066
- const knownEntries = KeyOfPropertyEntries(schema);
4067
- const knownKeys = knownEntries.map((entry) => entry[0]);
4068
- const knownProperties = { ...value };
4069
- for (const [knownKey, knownSchema] of knownEntries)
4070
- if (knownKey in knownProperties) {
4071
- knownProperties[knownKey] = Visit7(knownSchema, references, `${path}/${knownKey}`, knownProperties[knownKey]);
4072
- }
4073
- if (!IsTransform(schema.unevaluatedProperties)) {
4074
- return Default(schema, path, knownProperties);
4180
+ function FromBigInt4(schema, references) {
4181
+ if (HasPropertyKey2(schema, "default")) {
4182
+ return FromDefault(schema.default);
4183
+ } else {
4184
+ return BigInt(0);
4075
4185
  }
4076
- const unknownKeys = Object.getOwnPropertyNames(knownProperties);
4077
- const unevaluatedProperties = schema.unevaluatedProperties;
4078
- const unknownProperties = { ...knownProperties };
4079
- for (const key of unknownKeys)
4080
- if (!knownKeys.includes(key)) {
4081
- unknownProperties[key] = Default(unevaluatedProperties, `${path}/${key}`, unknownProperties[key]);
4186
+ }
4187
+ function FromBoolean4(schema, references) {
4188
+ if (HasPropertyKey2(schema, "default")) {
4189
+ return FromDefault(schema.default);
4190
+ } else {
4191
+ return false;
4192
+ }
4193
+ }
4194
+ function FromConstructor6(schema, references) {
4195
+ if (HasPropertyKey2(schema, "default")) {
4196
+ return FromDefault(schema.default);
4197
+ } else {
4198
+ const value = Visit7(schema.returns, references);
4199
+ if (typeof value === "object" && !Array.isArray(value)) {
4200
+ return class {
4201
+ constructor() {
4202
+ for (const [key, val] of Object.entries(value)) {
4203
+ const self = this;
4204
+ self[key] = val;
4205
+ }
4206
+ }
4207
+ };
4208
+ } else {
4209
+ return class {
4210
+ };
4082
4211
  }
4083
- return Default(schema, path, unknownProperties);
4212
+ }
4084
4213
  }
4085
- function FromImport3(schema, references, path, value) {
4086
- const additional = globalThis.Object.values(schema.$defs);
4214
+ function FromDate5(schema, references) {
4215
+ if (HasPropertyKey2(schema, "default")) {
4216
+ return FromDefault(schema.default);
4217
+ } else if (schema.minimumTimestamp !== void 0) {
4218
+ return new Date(schema.minimumTimestamp);
4219
+ } else {
4220
+ return /* @__PURE__ */ new Date();
4221
+ }
4222
+ }
4223
+ function FromFunction6(schema, references) {
4224
+ if (HasPropertyKey2(schema, "default")) {
4225
+ return FromDefault(schema.default);
4226
+ } else {
4227
+ return () => Visit7(schema.returns, references);
4228
+ }
4229
+ }
4230
+ function FromImport3(schema, references) {
4231
+ const definitions = globalThis.Object.values(schema.$defs);
4087
4232
  const target = schema.$defs[schema.$ref];
4088
- const result = Visit7(target, [...references, ...additional], path, value);
4089
- return Default(schema, path, result);
4233
+ return Visit7(target, [...references, ...definitions]);
4234
+ }
4235
+ function FromInteger4(schema, references) {
4236
+ if (HasPropertyKey2(schema, "default")) {
4237
+ return FromDefault(schema.default);
4238
+ } else if (schema.minimum !== void 0) {
4239
+ return schema.minimum;
4240
+ } else {
4241
+ return 0;
4242
+ }
4090
4243
  }
4091
- function FromNot4(schema, references, path, value) {
4092
- return Default(schema, path, Visit7(schema.not, references, path, value));
4244
+ function FromIntersect11(schema, references) {
4245
+ if (HasPropertyKey2(schema, "default")) {
4246
+ return FromDefault(schema.default);
4247
+ } else {
4248
+ const value = schema.allOf.reduce((acc, schema2) => {
4249
+ const next = Visit7(schema2, references);
4250
+ return typeof next === "object" ? { ...acc, ...next } : next;
4251
+ }, {});
4252
+ if (!Check(schema, references, value))
4253
+ throw new ValueCreateError(schema, "Intersect produced invalid value. Consider using a default value.");
4254
+ return value;
4255
+ }
4093
4256
  }
4094
- function FromObject10(schema, references, path, value) {
4095
- if (!IsObject2(value))
4096
- return Default(schema, path, value);
4097
- const knownKeys = KeyOfPropertyKeys(schema);
4098
- const knownProperties = { ...value };
4099
- for (const key of knownKeys) {
4100
- if (!HasPropertyKey2(knownProperties, key))
4101
- continue;
4102
- if (IsUndefined2(knownProperties[key]) && (!IsUndefined3(schema.properties[key]) || TypeSystemPolicy.IsExactOptionalProperty(knownProperties, key)))
4103
- continue;
4104
- knownProperties[key] = Visit7(schema.properties[key], references, `${path}/${key}`, knownProperties[key]);
4257
+ function FromIterator6(schema, references) {
4258
+ if (HasPropertyKey2(schema, "default")) {
4259
+ return FromDefault(schema.default);
4260
+ } else {
4261
+ return (function* () {
4262
+ })();
4105
4263
  }
4106
- if (!IsSchema(schema.additionalProperties)) {
4107
- return Default(schema, path, knownProperties);
4264
+ }
4265
+ function FromLiteral5(schema, references) {
4266
+ if (HasPropertyKey2(schema, "default")) {
4267
+ return FromDefault(schema.default);
4268
+ } else {
4269
+ return schema.const;
4108
4270
  }
4109
- const unknownKeys = Object.getOwnPropertyNames(knownProperties);
4110
- const additionalProperties = schema.additionalProperties;
4111
- const unknownProperties = { ...knownProperties };
4112
- for (const key of unknownKeys)
4113
- if (!knownKeys.includes(key)) {
4114
- unknownProperties[key] = Default(additionalProperties, `${path}/${key}`, unknownProperties[key]);
4115
- }
4116
- return Default(schema, path, unknownProperties);
4117
4271
  }
4118
- function FromRecord6(schema, references, path, value) {
4119
- if (!IsObject2(value))
4120
- return Default(schema, path, value);
4121
- const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0];
4122
- const knownKeys = new RegExp(pattern);
4123
- const knownProperties = { ...value };
4124
- for (const key of Object.getOwnPropertyNames(value))
4125
- if (knownKeys.test(key)) {
4126
- knownProperties[key] = Visit7(schema.patternProperties[pattern], references, `${path}/${key}`, knownProperties[key]);
4272
+ function FromNever4(schema, references) {
4273
+ if (HasPropertyKey2(schema, "default")) {
4274
+ return FromDefault(schema.default);
4275
+ } else {
4276
+ throw new ValueCreateError(schema, "Never types cannot be created. Consider using a default value.");
4277
+ }
4278
+ }
4279
+ function FromNot4(schema, references) {
4280
+ if (HasPropertyKey2(schema, "default")) {
4281
+ return FromDefault(schema.default);
4282
+ } else {
4283
+ throw new ValueCreateError(schema, "Not types must have a default value");
4284
+ }
4285
+ }
4286
+ function FromNull4(schema, references) {
4287
+ if (HasPropertyKey2(schema, "default")) {
4288
+ return FromDefault(schema.default);
4289
+ } else {
4290
+ return null;
4291
+ }
4292
+ }
4293
+ function FromNumber4(schema, references) {
4294
+ if (HasPropertyKey2(schema, "default")) {
4295
+ return FromDefault(schema.default);
4296
+ } else if (schema.minimum !== void 0) {
4297
+ return schema.minimum;
4298
+ } else {
4299
+ return 0;
4300
+ }
4301
+ }
4302
+ function FromObject11(schema, references) {
4303
+ if (HasPropertyKey2(schema, "default")) {
4304
+ return FromDefault(schema.default);
4305
+ } else {
4306
+ const required = new Set(schema.required);
4307
+ const Acc = {};
4308
+ for (const [key, subschema] of Object.entries(schema.properties)) {
4309
+ if (!required.has(key))
4310
+ continue;
4311
+ Acc[key] = Visit7(subschema, references);
4127
4312
  }
4128
- if (!IsSchema(schema.additionalProperties)) {
4129
- return Default(schema, path, knownProperties);
4313
+ return Acc;
4130
4314
  }
4131
- const unknownKeys = Object.getOwnPropertyNames(knownProperties);
4132
- const additionalProperties = schema.additionalProperties;
4133
- const unknownProperties = { ...knownProperties };
4134
- for (const key of unknownKeys)
4135
- if (!knownKeys.test(key)) {
4136
- unknownProperties[key] = Default(additionalProperties, `${path}/${key}`, unknownProperties[key]);
4315
+ }
4316
+ function FromPromise6(schema, references) {
4317
+ if (HasPropertyKey2(schema, "default")) {
4318
+ return FromDefault(schema.default);
4319
+ } else {
4320
+ return Promise.resolve(Visit7(schema.item, references));
4321
+ }
4322
+ }
4323
+ function FromRecord6(schema, references) {
4324
+ if (HasPropertyKey2(schema, "default")) {
4325
+ return FromDefault(schema.default);
4326
+ } else {
4327
+ return {};
4328
+ }
4329
+ }
4330
+ function FromRef7(schema, references) {
4331
+ if (HasPropertyKey2(schema, "default")) {
4332
+ return FromDefault(schema.default);
4333
+ } else {
4334
+ return Visit7(Deref(schema, references), references);
4335
+ }
4336
+ }
4337
+ function FromRegExp4(schema, references) {
4338
+ if (HasPropertyKey2(schema, "default")) {
4339
+ return FromDefault(schema.default);
4340
+ } else {
4341
+ throw new ValueCreateError(schema, "RegExp types cannot be created. Consider using a default value.");
4342
+ }
4343
+ }
4344
+ function FromString4(schema, references) {
4345
+ if (schema.pattern !== void 0) {
4346
+ if (!HasPropertyKey2(schema, "default")) {
4347
+ throw new ValueCreateError(schema, "String types with patterns must specify a default value");
4348
+ } else {
4349
+ return FromDefault(schema.default);
4350
+ }
4351
+ } else if (schema.format !== void 0) {
4352
+ if (!HasPropertyKey2(schema, "default")) {
4353
+ throw new ValueCreateError(schema, "String types with formats must specify a default value");
4354
+ } else {
4355
+ return FromDefault(schema.default);
4137
4356
  }
4138
- return Default(schema, path, unknownProperties);
4357
+ } else {
4358
+ if (HasPropertyKey2(schema, "default")) {
4359
+ return FromDefault(schema.default);
4360
+ } else if (schema.minLength !== void 0) {
4361
+ return Array.from({ length: schema.minLength }).map(() => " ").join("");
4362
+ } else {
4363
+ return "";
4364
+ }
4365
+ }
4139
4366
  }
4140
- function FromRef7(schema, references, path, value) {
4141
- const target = Deref(schema, references);
4142
- return Default(schema, path, Visit7(target, references, path, value));
4367
+ function FromSymbol4(schema, references) {
4368
+ if (HasPropertyKey2(schema, "default")) {
4369
+ return FromDefault(schema.default);
4370
+ } else if ("value" in schema) {
4371
+ return Symbol.for(schema.value);
4372
+ } else {
4373
+ return /* @__PURE__ */ Symbol();
4374
+ }
4143
4375
  }
4144
- function FromThis3(schema, references, path, value) {
4145
- const target = Deref(schema, references);
4146
- return Default(schema, path, Visit7(target, references, path, value));
4376
+ function FromTemplateLiteral6(schema, references) {
4377
+ if (HasPropertyKey2(schema, "default")) {
4378
+ return FromDefault(schema.default);
4379
+ }
4380
+ if (!IsTemplateLiteralFinite(schema))
4381
+ throw new ValueCreateError(schema, "Can only create template literals that produce a finite variants. Consider using a default value.");
4382
+ const generated = TemplateLiteralGenerate(schema);
4383
+ return generated[0];
4147
4384
  }
4148
- function FromTuple8(schema, references, path, value) {
4149
- return IsArray2(value) && IsArray2(schema.items) ? Default(schema, path, schema.items.map((schema2, index) => Visit7(schema2, references, `${path}/${index}`, value[index]))) : Default(schema, path, value);
4385
+ function FromThis3(schema, references) {
4386
+ if (recursiveDepth++ > recursiveMaxDepth)
4387
+ throw new ValueCreateError(schema, "Cannot create recursive type as it appears possibly infinite. Consider using a default.");
4388
+ if (HasPropertyKey2(schema, "default")) {
4389
+ return FromDefault(schema.default);
4390
+ } else {
4391
+ return Visit7(Deref(schema, references), references);
4392
+ }
4150
4393
  }
4151
- function FromUnion13(schema, references, path, value) {
4152
- for (const subschema of schema.anyOf) {
4153
- if (!Check(subschema, references, value))
4154
- continue;
4155
- const decoded = Visit7(subschema, references, path, value);
4156
- return Default(schema, path, decoded);
4394
+ function FromTuple8(schema, references) {
4395
+ if (HasPropertyKey2(schema, "default")) {
4396
+ return FromDefault(schema.default);
4397
+ }
4398
+ if (schema.items === void 0) {
4399
+ return [];
4400
+ } else {
4401
+ return Array.from({ length: schema.minItems }).map((_, index) => Visit7(schema.items[index], references));
4402
+ }
4403
+ }
4404
+ function FromUndefined4(schema, references) {
4405
+ if (HasPropertyKey2(schema, "default")) {
4406
+ return FromDefault(schema.default);
4407
+ } else {
4408
+ return void 0;
4409
+ }
4410
+ }
4411
+ function FromUnion13(schema, references) {
4412
+ if (HasPropertyKey2(schema, "default")) {
4413
+ return FromDefault(schema.default);
4414
+ } else if (schema.anyOf.length === 0) {
4415
+ throw new Error("ValueCreate.Union: Cannot create Union with zero variants");
4416
+ } else {
4417
+ return Visit7(schema.anyOf[0], references);
4418
+ }
4419
+ }
4420
+ function FromUint8Array4(schema, references) {
4421
+ if (HasPropertyKey2(schema, "default")) {
4422
+ return FromDefault(schema.default);
4423
+ } else if (schema.minByteLength !== void 0) {
4424
+ return new Uint8Array(schema.minByteLength);
4425
+ } else {
4426
+ return new Uint8Array(0);
4427
+ }
4428
+ }
4429
+ function FromUnknown4(schema, references) {
4430
+ if (HasPropertyKey2(schema, "default")) {
4431
+ return FromDefault(schema.default);
4432
+ } else {
4433
+ return {};
4434
+ }
4435
+ }
4436
+ function FromVoid4(schema, references) {
4437
+ if (HasPropertyKey2(schema, "default")) {
4438
+ return FromDefault(schema.default);
4439
+ } else {
4440
+ return void 0;
4441
+ }
4442
+ }
4443
+ function FromKind3(schema, references) {
4444
+ if (HasPropertyKey2(schema, "default")) {
4445
+ return FromDefault(schema.default);
4446
+ } else {
4447
+ throw new Error("User defined types must specify a default value");
4157
4448
  }
4158
- return Default(schema, path, value);
4159
4449
  }
4160
- function Visit7(schema, references, path, value) {
4450
+ function Visit7(schema, references) {
4161
4451
  const references_ = Pushref(schema, references);
4162
4452
  const schema_ = schema;
4163
- switch (schema[Kind]) {
4453
+ switch (schema_[Kind]) {
4454
+ case "Any":
4455
+ return FromAny4(schema_, references_);
4456
+ case "Argument":
4457
+ return FromArgument4(schema_, references_);
4164
4458
  case "Array":
4165
- return FromArray9(schema_, references_, path, value);
4459
+ return FromArray10(schema_, references_);
4460
+ case "AsyncIterator":
4461
+ return FromAsyncIterator6(schema_, references_);
4462
+ case "BigInt":
4463
+ return FromBigInt4(schema_, references_);
4464
+ case "Boolean":
4465
+ return FromBoolean4(schema_, references_);
4466
+ case "Constructor":
4467
+ return FromConstructor6(schema_, references_);
4468
+ case "Date":
4469
+ return FromDate5(schema_, references_);
4470
+ case "Function":
4471
+ return FromFunction6(schema_, references_);
4166
4472
  case "Import":
4167
- return FromImport3(schema_, references_, path, value);
4473
+ return FromImport3(schema_, references_);
4474
+ case "Integer":
4475
+ return FromInteger4(schema_, references_);
4168
4476
  case "Intersect":
4169
- return FromIntersect11(schema_, references_, path, value);
4477
+ return FromIntersect11(schema_, references_);
4478
+ case "Iterator":
4479
+ return FromIterator6(schema_, references_);
4480
+ case "Literal":
4481
+ return FromLiteral5(schema_, references_);
4482
+ case "Never":
4483
+ return FromNever4(schema_, references_);
4170
4484
  case "Not":
4171
- return FromNot4(schema_, references_, path, value);
4485
+ return FromNot4(schema_, references_);
4486
+ case "Null":
4487
+ return FromNull4(schema_, references_);
4488
+ case "Number":
4489
+ return FromNumber4(schema_, references_);
4172
4490
  case "Object":
4173
- return FromObject10(schema_, references_, path, value);
4491
+ return FromObject11(schema_, references_);
4492
+ case "Promise":
4493
+ return FromPromise6(schema_, references_);
4174
4494
  case "Record":
4175
- return FromRecord6(schema_, references_, path, value);
4495
+ return FromRecord6(schema_, references_);
4176
4496
  case "Ref":
4177
- return FromRef7(schema_, references_, path, value);
4497
+ return FromRef7(schema_, references_);
4498
+ case "RegExp":
4499
+ return FromRegExp4(schema_, references_);
4500
+ case "String":
4501
+ return FromString4(schema_, references_);
4178
4502
  case "Symbol":
4179
- return Default(schema_, path, value);
4503
+ return FromSymbol4(schema_, references_);
4504
+ case "TemplateLiteral":
4505
+ return FromTemplateLiteral6(schema_, references_);
4180
4506
  case "This":
4181
- return FromThis3(schema_, references_, path, value);
4507
+ return FromThis3(schema_, references_);
4182
4508
  case "Tuple":
4183
- return FromTuple8(schema_, references_, path, value);
4509
+ return FromTuple8(schema_, references_);
4510
+ case "Undefined":
4511
+ return FromUndefined4(schema_, references_);
4184
4512
  case "Union":
4185
- return FromUnion13(schema_, references_, path, value);
4513
+ return FromUnion13(schema_, references_);
4514
+ case "Uint8Array":
4515
+ return FromUint8Array4(schema_, references_);
4516
+ case "Unknown":
4517
+ return FromUnknown4(schema_, references_);
4518
+ case "Void":
4519
+ return FromVoid4(schema_, references_);
4186
4520
  default:
4187
- return Default(schema_, path, value);
4521
+ if (!type_exports2.Has(schema_[Kind]))
4522
+ throw new ValueCreateError(schema_, "Unknown type");
4523
+ return FromKind3(schema_, references_);
4188
4524
  }
4189
4525
  }
4190
- function TransformDecode(schema, references, value) {
4191
- return Visit7(schema, references, "", value);
4526
+ var recursiveMaxDepth = 512;
4527
+ var recursiveDepth = 0;
4528
+ function Create2(...args) {
4529
+ recursiveDepth = 0;
4530
+ return args.length === 2 ? Visit7(args[0], args[1]) : Visit7(args[0], []);
4192
4531
  }
4193
4532
 
4194
- // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/transform/encode.mjs
4195
- var TransformEncodeCheckError = class extends TypeBoxError {
4196
- constructor(schema, value, error2) {
4197
- super(`The encoded value does not match the expected schema`);
4533
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/cast/cast.mjs
4534
+ var ValueCastError = class extends TypeBoxError {
4535
+ constructor(schema, message) {
4536
+ super(message);
4198
4537
  this.schema = schema;
4199
- this.value = value;
4200
- this.error = error2;
4201
4538
  }
4202
4539
  };
4203
- var TransformEncodeError = class extends TypeBoxError {
4204
- constructor(schema, path, value, error2) {
4205
- super(`${error2 instanceof Error ? error2.message : "Unknown error"}`);
4206
- this.schema = schema;
4207
- this.path = path;
4208
- this.value = value;
4209
- this.error = error2;
4540
+ function ScoreUnion(schema, references, value) {
4541
+ if (schema[Kind] === "Object" && typeof value === "object" && !IsNull2(value)) {
4542
+ const object = schema;
4543
+ const keys = Object.getOwnPropertyNames(value);
4544
+ const entries = Object.entries(object.properties);
4545
+ return entries.reduce((acc, [key, schema2]) => {
4546
+ const literal = schema2[Kind] === "Literal" && schema2.const === value[key] ? 100 : 0;
4547
+ const checks = Check(schema2, references, value[key]) ? 10 : 0;
4548
+ const exists = keys.includes(key) ? 1 : 0;
4549
+ return acc + (literal + checks + exists);
4550
+ }, 0);
4551
+ } else if (schema[Kind] === "Union") {
4552
+ const schemas = schema.anyOf.map((schema2) => Deref(schema2, references));
4553
+ const scores = schemas.map((schema2) => ScoreUnion(schema2, references, value));
4554
+ return Math.max(...scores);
4555
+ } else {
4556
+ return Check(schema, references, value) ? 1 : 0;
4210
4557
  }
4211
- };
4212
- function Default2(schema, path, value) {
4213
- try {
4214
- return IsTransform(schema) ? schema[TransformKind].Encode(value) : value;
4215
- } catch (error2) {
4216
- throw new TransformEncodeError(schema, path, value, error2);
4558
+ }
4559
+ function SelectUnion(union, references, value) {
4560
+ const schemas = union.anyOf.map((schema) => Deref(schema, references));
4561
+ let [select, best] = [schemas[0], 0];
4562
+ for (const schema of schemas) {
4563
+ const score = ScoreUnion(schema, references, value);
4564
+ if (score > best) {
4565
+ select = schema;
4566
+ best = score;
4567
+ }
4217
4568
  }
4569
+ return select;
4218
4570
  }
4219
- function FromArray10(schema, references, path, value) {
4220
- const defaulted = Default2(schema, path, value);
4221
- return IsArray2(defaulted) ? defaulted.map((value2, index) => Visit8(schema.items, references, `${path}/${index}`, value2)) : defaulted;
4571
+ function CastUnion(union, references, value) {
4572
+ if ("default" in union) {
4573
+ return typeof value === "function" ? union.default : Clone2(union.default);
4574
+ } else {
4575
+ const schema = SelectUnion(union, references, value);
4576
+ return Cast(schema, references, value);
4577
+ }
4222
4578
  }
4223
- function FromImport4(schema, references, path, value) {
4579
+ function DefaultClone(schema, references, value) {
4580
+ return Check(schema, references, value) ? Clone2(value) : Create2(schema, references);
4581
+ }
4582
+ function Default(schema, references, value) {
4583
+ return Check(schema, references, value) ? value : Create2(schema, references);
4584
+ }
4585
+ function FromArray11(schema, references, value) {
4586
+ if (Check(schema, references, value))
4587
+ return Clone2(value);
4588
+ const created = IsArray2(value) ? Clone2(value) : Create2(schema, references);
4589
+ const minimum = IsNumber2(schema.minItems) && created.length < schema.minItems ? [...created, ...Array.from({ length: schema.minItems - created.length }, () => null)] : created;
4590
+ const maximum = IsNumber2(schema.maxItems) && minimum.length > schema.maxItems ? minimum.slice(0, schema.maxItems) : minimum;
4591
+ const casted = maximum.map((value2) => Visit8(schema.items, references, value2));
4592
+ if (schema.uniqueItems !== true)
4593
+ return casted;
4594
+ const unique = [...new Set(casted)];
4595
+ if (!Check(schema, references, unique))
4596
+ throw new ValueCastError(schema, "Array cast produced invalid data due to uniqueItems constraint");
4597
+ return unique;
4598
+ }
4599
+ function FromConstructor7(schema, references, value) {
4600
+ if (Check(schema, references, value))
4601
+ return Create2(schema, references);
4602
+ const required = new Set(schema.returns.required || []);
4603
+ const result = function() {
4604
+ };
4605
+ for (const [key, property] of Object.entries(schema.returns.properties)) {
4606
+ if (!required.has(key) && value.prototype[key] === void 0)
4607
+ continue;
4608
+ result.prototype[key] = Visit8(property, references, value.prototype[key]);
4609
+ }
4610
+ return result;
4611
+ }
4612
+ function FromImport4(schema, references, value) {
4613
+ const definitions = globalThis.Object.values(schema.$defs);
4614
+ const target = schema.$defs[schema.$ref];
4615
+ return Visit8(target, [...references, ...definitions], value);
4616
+ }
4617
+ function IntersectAssign(correct, value) {
4618
+ if (IsObject2(correct) && !IsObject2(value) || !IsObject2(correct) && IsObject2(value))
4619
+ return correct;
4620
+ if (!IsObject2(correct) || !IsObject2(value))
4621
+ return value;
4622
+ return globalThis.Object.getOwnPropertyNames(correct).reduce((result, key) => {
4623
+ const property = key in value ? IntersectAssign(correct[key], value[key]) : correct[key];
4624
+ return { ...result, [key]: property };
4625
+ }, {});
4626
+ }
4627
+ function FromIntersect12(schema, references, value) {
4628
+ if (Check(schema, references, value))
4629
+ return value;
4630
+ const correct = Create2(schema, references);
4631
+ const assigned = IntersectAssign(correct, value);
4632
+ return Check(schema, references, assigned) ? assigned : correct;
4633
+ }
4634
+ function FromNever5(schema, references, value) {
4635
+ throw new ValueCastError(schema, "Never types cannot be cast");
4636
+ }
4637
+ function FromObject12(schema, references, value) {
4638
+ if (Check(schema, references, value))
4639
+ return value;
4640
+ if (value === null || typeof value !== "object")
4641
+ return Create2(schema, references);
4642
+ const required = new Set(schema.required || []);
4643
+ const result = {};
4644
+ for (const [key, property] of Object.entries(schema.properties)) {
4645
+ if (!required.has(key) && value[key] === void 0)
4646
+ continue;
4647
+ result[key] = Visit8(property, references, value[key]);
4648
+ }
4649
+ if (typeof schema.additionalProperties === "object") {
4650
+ const propertyNames = Object.getOwnPropertyNames(schema.properties);
4651
+ for (const propertyName of Object.getOwnPropertyNames(value)) {
4652
+ if (propertyNames.includes(propertyName))
4653
+ continue;
4654
+ result[propertyName] = Visit8(schema.additionalProperties, references, value[propertyName]);
4655
+ }
4656
+ }
4657
+ return result;
4658
+ }
4659
+ function FromRecord7(schema, references, value) {
4660
+ if (Check(schema, references, value))
4661
+ return Clone2(value);
4662
+ if (value === null || typeof value !== "object" || Array.isArray(value) || value instanceof Date)
4663
+ return Create2(schema, references);
4664
+ const subschemaPropertyName = Object.getOwnPropertyNames(schema.patternProperties)[0];
4665
+ const subschema = schema.patternProperties[subschemaPropertyName];
4666
+ const result = {};
4667
+ for (const [propKey, propValue] of Object.entries(value)) {
4668
+ result[propKey] = Visit8(subschema, references, propValue);
4669
+ }
4670
+ return result;
4671
+ }
4672
+ function FromRef8(schema, references, value) {
4673
+ return Visit8(Deref(schema, references), references, value);
4674
+ }
4675
+ function FromThis4(schema, references, value) {
4676
+ return Visit8(Deref(schema, references), references, value);
4677
+ }
4678
+ function FromTuple9(schema, references, value) {
4679
+ if (Check(schema, references, value))
4680
+ return Clone2(value);
4681
+ if (!IsArray2(value))
4682
+ return Create2(schema, references);
4683
+ if (schema.items === void 0)
4684
+ return [];
4685
+ return schema.items.map((schema2, index) => Visit8(schema2, references, value[index]));
4686
+ }
4687
+ function FromUnion14(schema, references, value) {
4688
+ return Check(schema, references, value) ? Clone2(value) : CastUnion(schema, references, value);
4689
+ }
4690
+ function Visit8(schema, references, value) {
4691
+ const references_ = IsString2(schema.$id) ? Pushref(schema, references) : references;
4692
+ const schema_ = schema;
4693
+ switch (schema[Kind]) {
4694
+ // --------------------------------------------------------------
4695
+ // Structural
4696
+ // --------------------------------------------------------------
4697
+ case "Array":
4698
+ return FromArray11(schema_, references_, value);
4699
+ case "Constructor":
4700
+ return FromConstructor7(schema_, references_, value);
4701
+ case "Import":
4702
+ return FromImport4(schema_, references_, value);
4703
+ case "Intersect":
4704
+ return FromIntersect12(schema_, references_, value);
4705
+ case "Never":
4706
+ return FromNever5(schema_, references_, value);
4707
+ case "Object":
4708
+ return FromObject12(schema_, references_, value);
4709
+ case "Record":
4710
+ return FromRecord7(schema_, references_, value);
4711
+ case "Ref":
4712
+ return FromRef8(schema_, references_, value);
4713
+ case "This":
4714
+ return FromThis4(schema_, references_, value);
4715
+ case "Tuple":
4716
+ return FromTuple9(schema_, references_, value);
4717
+ case "Union":
4718
+ return FromUnion14(schema_, references_, value);
4719
+ // --------------------------------------------------------------
4720
+ // DefaultClone
4721
+ // --------------------------------------------------------------
4722
+ case "Date":
4723
+ case "Symbol":
4724
+ case "Uint8Array":
4725
+ return DefaultClone(schema, references, value);
4726
+ // --------------------------------------------------------------
4727
+ // Default
4728
+ // --------------------------------------------------------------
4729
+ default:
4730
+ return Default(schema_, references_, value);
4731
+ }
4732
+ }
4733
+ function Cast(...args) {
4734
+ return args.length === 3 ? Visit8(args[0], args[1], args[2]) : Visit8(args[0], [], args[1]);
4735
+ }
4736
+
4737
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/clean/clean.mjs
4738
+ function IsCheckable(schema) {
4739
+ return IsKind(schema) && schema[Kind] !== "Unsafe";
4740
+ }
4741
+ function FromArray12(schema, references, value) {
4742
+ if (!IsArray2(value))
4743
+ return value;
4744
+ return value.map((value2) => Visit9(schema.items, references, value2));
4745
+ }
4746
+ function FromImport5(schema, references, value) {
4747
+ const definitions = globalThis.Object.values(schema.$defs);
4748
+ const target = schema.$defs[schema.$ref];
4749
+ return Visit9(target, [...references, ...definitions], value);
4750
+ }
4751
+ function FromIntersect13(schema, references, value) {
4752
+ const unevaluatedProperties = schema.unevaluatedProperties;
4753
+ const intersections = schema.allOf.map((schema2) => Visit9(schema2, references, Clone2(value)));
4754
+ const composite = intersections.reduce((acc, value2) => IsObject2(value2) ? { ...acc, ...value2 } : value2, {});
4755
+ if (!IsObject2(value) || !IsObject2(composite) || !IsKind(unevaluatedProperties))
4756
+ return composite;
4757
+ const knownkeys = KeyOfPropertyKeys(schema);
4758
+ for (const key of Object.getOwnPropertyNames(value)) {
4759
+ if (knownkeys.includes(key))
4760
+ continue;
4761
+ if (Check(unevaluatedProperties, references, value[key])) {
4762
+ composite[key] = Visit9(unevaluatedProperties, references, value[key]);
4763
+ }
4764
+ }
4765
+ return composite;
4766
+ }
4767
+ function FromObject13(schema, references, value) {
4768
+ if (!IsObject2(value) || IsArray2(value))
4769
+ return value;
4770
+ const additionalProperties = schema.additionalProperties;
4771
+ for (const key of Object.getOwnPropertyNames(value)) {
4772
+ if (HasPropertyKey2(schema.properties, key)) {
4773
+ value[key] = Visit9(schema.properties[key], references, value[key]);
4774
+ continue;
4775
+ }
4776
+ if (IsKind(additionalProperties) && Check(additionalProperties, references, value[key])) {
4777
+ value[key] = Visit9(additionalProperties, references, value[key]);
4778
+ continue;
4779
+ }
4780
+ delete value[key];
4781
+ }
4782
+ return value;
4783
+ }
4784
+ function FromRecord8(schema, references, value) {
4785
+ if (!IsObject2(value))
4786
+ return value;
4787
+ const additionalProperties = schema.additionalProperties;
4788
+ const propertyKeys = Object.getOwnPropertyNames(value);
4789
+ const [propertyKey, propertySchema] = Object.entries(schema.patternProperties)[0];
4790
+ const propertyKeyTest = new RegExp(propertyKey);
4791
+ for (const key of propertyKeys) {
4792
+ if (propertyKeyTest.test(key)) {
4793
+ value[key] = Visit9(propertySchema, references, value[key]);
4794
+ continue;
4795
+ }
4796
+ if (IsKind(additionalProperties) && Check(additionalProperties, references, value[key])) {
4797
+ value[key] = Visit9(additionalProperties, references, value[key]);
4798
+ continue;
4799
+ }
4800
+ delete value[key];
4801
+ }
4802
+ return value;
4803
+ }
4804
+ function FromRef9(schema, references, value) {
4805
+ return Visit9(Deref(schema, references), references, value);
4806
+ }
4807
+ function FromThis5(schema, references, value) {
4808
+ return Visit9(Deref(schema, references), references, value);
4809
+ }
4810
+ function FromTuple10(schema, references, value) {
4811
+ if (!IsArray2(value))
4812
+ return value;
4813
+ if (IsUndefined2(schema.items))
4814
+ return [];
4815
+ const length = Math.min(value.length, schema.items.length);
4816
+ for (let i = 0; i < length; i++) {
4817
+ value[i] = Visit9(schema.items[i], references, value[i]);
4818
+ }
4819
+ return value.length > length ? value.slice(0, length) : value;
4820
+ }
4821
+ function FromUnion15(schema, references, value) {
4822
+ for (const inner of schema.anyOf) {
4823
+ if (IsCheckable(inner) && Check(inner, references, value)) {
4824
+ return Visit9(inner, references, value);
4825
+ }
4826
+ }
4827
+ return value;
4828
+ }
4829
+ function Visit9(schema, references, value) {
4830
+ const references_ = IsString2(schema.$id) ? Pushref(schema, references) : references;
4831
+ const schema_ = schema;
4832
+ switch (schema_[Kind]) {
4833
+ case "Array":
4834
+ return FromArray12(schema_, references_, value);
4835
+ case "Import":
4836
+ return FromImport5(schema_, references_, value);
4837
+ case "Intersect":
4838
+ return FromIntersect13(schema_, references_, value);
4839
+ case "Object":
4840
+ return FromObject13(schema_, references_, value);
4841
+ case "Record":
4842
+ return FromRecord8(schema_, references_, value);
4843
+ case "Ref":
4844
+ return FromRef9(schema_, references_, value);
4845
+ case "This":
4846
+ return FromThis5(schema_, references_, value);
4847
+ case "Tuple":
4848
+ return FromTuple10(schema_, references_, value);
4849
+ case "Union":
4850
+ return FromUnion15(schema_, references_, value);
4851
+ default:
4852
+ return value;
4853
+ }
4854
+ }
4855
+ function Clean(...args) {
4856
+ return args.length === 3 ? Visit9(args[0], args[1], args[2]) : Visit9(args[0], [], args[1]);
4857
+ }
4858
+
4859
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/convert/convert.mjs
4860
+ function IsStringNumeric(value) {
4861
+ return IsString2(value) && !isNaN(value) && !isNaN(parseFloat(value));
4862
+ }
4863
+ function IsValueToString(value) {
4864
+ return IsBigInt2(value) || IsBoolean2(value) || IsNumber2(value);
4865
+ }
4866
+ function IsValueTrue(value) {
4867
+ return value === true || IsNumber2(value) && value === 1 || IsBigInt2(value) && value === BigInt("1") || IsString2(value) && (value.toLowerCase() === "true" || value === "1");
4868
+ }
4869
+ function IsValueFalse(value) {
4870
+ return value === false || IsNumber2(value) && (value === 0 || Object.is(value, -0)) || IsBigInt2(value) && value === BigInt("0") || IsString2(value) && (value.toLowerCase() === "false" || value === "0" || value === "-0");
4871
+ }
4872
+ function IsTimeStringWithTimeZone(value) {
4873
+ return IsString2(value) && /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(value);
4874
+ }
4875
+ function IsTimeStringWithoutTimeZone(value) {
4876
+ return IsString2(value) && /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(value);
4877
+ }
4878
+ function IsDateTimeStringWithTimeZone(value) {
4879
+ return IsString2(value) && /^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(value);
4880
+ }
4881
+ function IsDateTimeStringWithoutTimeZone(value) {
4882
+ return IsString2(value) && /^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(value);
4883
+ }
4884
+ function IsDateString(value) {
4885
+ return IsString2(value) && /^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(value);
4886
+ }
4887
+ function TryConvertLiteralString(value, target) {
4888
+ const conversion = TryConvertString(value);
4889
+ return conversion === target ? conversion : value;
4890
+ }
4891
+ function TryConvertLiteralNumber(value, target) {
4892
+ const conversion = TryConvertNumber(value);
4893
+ return conversion === target ? conversion : value;
4894
+ }
4895
+ function TryConvertLiteralBoolean(value, target) {
4896
+ const conversion = TryConvertBoolean(value);
4897
+ return conversion === target ? conversion : value;
4898
+ }
4899
+ function TryConvertLiteral(schema, value) {
4900
+ return IsString2(schema.const) ? TryConvertLiteralString(value, schema.const) : IsNumber2(schema.const) ? TryConvertLiteralNumber(value, schema.const) : IsBoolean2(schema.const) ? TryConvertLiteralBoolean(value, schema.const) : value;
4901
+ }
4902
+ function TryConvertBoolean(value) {
4903
+ return IsValueTrue(value) ? true : IsValueFalse(value) ? false : value;
4904
+ }
4905
+ function TryConvertBigInt(value) {
4906
+ const truncateInteger = (value2) => value2.split(".")[0];
4907
+ return IsStringNumeric(value) ? BigInt(truncateInteger(value)) : IsNumber2(value) ? BigInt(Math.trunc(value)) : IsValueFalse(value) ? BigInt(0) : IsValueTrue(value) ? BigInt(1) : value;
4908
+ }
4909
+ function TryConvertString(value) {
4910
+ return IsSymbol2(value) && value.description !== void 0 ? value.description.toString() : IsValueToString(value) ? value.toString() : value;
4911
+ }
4912
+ function TryConvertNumber(value) {
4913
+ return IsStringNumeric(value) ? parseFloat(value) : IsValueTrue(value) ? 1 : IsValueFalse(value) ? 0 : value;
4914
+ }
4915
+ function TryConvertInteger(value) {
4916
+ return IsStringNumeric(value) ? parseInt(value) : IsNumber2(value) ? Math.trunc(value) : IsValueTrue(value) ? 1 : IsValueFalse(value) ? 0 : value;
4917
+ }
4918
+ function TryConvertNull(value) {
4919
+ return IsString2(value) && value.toLowerCase() === "null" ? null : value;
4920
+ }
4921
+ function TryConvertUndefined(value) {
4922
+ return IsString2(value) && value === "undefined" ? void 0 : value;
4923
+ }
4924
+ function TryConvertDate(value) {
4925
+ return IsDate2(value) ? value : IsNumber2(value) ? new Date(value) : IsValueTrue(value) ? /* @__PURE__ */ new Date(1) : IsValueFalse(value) ? /* @__PURE__ */ new Date(0) : IsStringNumeric(value) ? new Date(parseInt(value)) : IsTimeStringWithoutTimeZone(value) ? /* @__PURE__ */ new Date(`1970-01-01T${value}.000Z`) : IsTimeStringWithTimeZone(value) ? /* @__PURE__ */ new Date(`1970-01-01T${value}`) : IsDateTimeStringWithoutTimeZone(value) ? /* @__PURE__ */ new Date(`${value}.000Z`) : IsDateTimeStringWithTimeZone(value) ? new Date(value) : IsDateString(value) ? /* @__PURE__ */ new Date(`${value}T00:00:00.000Z`) : value;
4926
+ }
4927
+ function Default2(value) {
4928
+ return value;
4929
+ }
4930
+ function FromArray13(schema, references, value) {
4931
+ const elements = IsArray2(value) ? value : [value];
4932
+ return elements.map((element) => Visit10(schema.items, references, element));
4933
+ }
4934
+ function FromBigInt5(schema, references, value) {
4935
+ return TryConvertBigInt(value);
4936
+ }
4937
+ function FromBoolean5(schema, references, value) {
4938
+ return TryConvertBoolean(value);
4939
+ }
4940
+ function FromDate6(schema, references, value) {
4941
+ return TryConvertDate(value);
4942
+ }
4943
+ function FromImport6(schema, references, value) {
4944
+ const definitions = globalThis.Object.values(schema.$defs);
4945
+ const target = schema.$defs[schema.$ref];
4946
+ return Visit10(target, [...references, ...definitions], value);
4947
+ }
4948
+ function FromInteger5(schema, references, value) {
4949
+ return TryConvertInteger(value);
4950
+ }
4951
+ function FromIntersect14(schema, references, value) {
4952
+ return schema.allOf.reduce((value2, schema2) => Visit10(schema2, references, value2), value);
4953
+ }
4954
+ function FromLiteral6(schema, references, value) {
4955
+ return TryConvertLiteral(schema, value);
4956
+ }
4957
+ function FromNull5(schema, references, value) {
4958
+ return TryConvertNull(value);
4959
+ }
4960
+ function FromNumber5(schema, references, value) {
4961
+ return TryConvertNumber(value);
4962
+ }
4963
+ function FromObject14(schema, references, value) {
4964
+ if (!IsObject2(value) || IsArray2(value))
4965
+ return value;
4966
+ for (const propertyKey of Object.getOwnPropertyNames(schema.properties)) {
4967
+ if (!HasPropertyKey2(value, propertyKey))
4968
+ continue;
4969
+ value[propertyKey] = Visit10(schema.properties[propertyKey], references, value[propertyKey]);
4970
+ }
4971
+ return value;
4972
+ }
4973
+ function FromRecord9(schema, references, value) {
4974
+ const isConvertable = IsObject2(value) && !IsArray2(value);
4975
+ if (!isConvertable)
4976
+ return value;
4977
+ const propertyKey = Object.getOwnPropertyNames(schema.patternProperties)[0];
4978
+ const property = schema.patternProperties[propertyKey];
4979
+ for (const [propKey, propValue] of Object.entries(value)) {
4980
+ value[propKey] = Visit10(property, references, propValue);
4981
+ }
4982
+ return value;
4983
+ }
4984
+ function FromRef10(schema, references, value) {
4985
+ return Visit10(Deref(schema, references), references, value);
4986
+ }
4987
+ function FromString5(schema, references, value) {
4988
+ return TryConvertString(value);
4989
+ }
4990
+ function FromSymbol5(schema, references, value) {
4991
+ return IsString2(value) || IsNumber2(value) ? Symbol(value) : value;
4992
+ }
4993
+ function FromThis6(schema, references, value) {
4994
+ return Visit10(Deref(schema, references), references, value);
4995
+ }
4996
+ function FromTuple11(schema, references, value) {
4997
+ const isConvertable = IsArray2(value) && !IsUndefined2(schema.items);
4998
+ if (!isConvertable)
4999
+ return value;
5000
+ return value.map((value2, index) => {
5001
+ return index < schema.items.length ? Visit10(schema.items[index], references, value2) : value2;
5002
+ });
5003
+ }
5004
+ function FromUndefined5(schema, references, value) {
5005
+ return TryConvertUndefined(value);
5006
+ }
5007
+ function FromUnion16(schema, references, value) {
5008
+ for (const subschema of schema.anyOf) {
5009
+ if (Check(subschema, references, value)) {
5010
+ return value;
5011
+ }
5012
+ }
5013
+ for (const subschema of schema.anyOf) {
5014
+ const converted = Visit10(subschema, references, Clone2(value));
5015
+ if (!Check(subschema, references, converted))
5016
+ continue;
5017
+ return converted;
5018
+ }
5019
+ return value;
5020
+ }
5021
+ function Visit10(schema, references, value) {
5022
+ const references_ = Pushref(schema, references);
5023
+ const schema_ = schema;
5024
+ switch (schema[Kind]) {
5025
+ case "Array":
5026
+ return FromArray13(schema_, references_, value);
5027
+ case "BigInt":
5028
+ return FromBigInt5(schema_, references_, value);
5029
+ case "Boolean":
5030
+ return FromBoolean5(schema_, references_, value);
5031
+ case "Date":
5032
+ return FromDate6(schema_, references_, value);
5033
+ case "Import":
5034
+ return FromImport6(schema_, references_, value);
5035
+ case "Integer":
5036
+ return FromInteger5(schema_, references_, value);
5037
+ case "Intersect":
5038
+ return FromIntersect14(schema_, references_, value);
5039
+ case "Literal":
5040
+ return FromLiteral6(schema_, references_, value);
5041
+ case "Null":
5042
+ return FromNull5(schema_, references_, value);
5043
+ case "Number":
5044
+ return FromNumber5(schema_, references_, value);
5045
+ case "Object":
5046
+ return FromObject14(schema_, references_, value);
5047
+ case "Record":
5048
+ return FromRecord9(schema_, references_, value);
5049
+ case "Ref":
5050
+ return FromRef10(schema_, references_, value);
5051
+ case "String":
5052
+ return FromString5(schema_, references_, value);
5053
+ case "Symbol":
5054
+ return FromSymbol5(schema_, references_, value);
5055
+ case "This":
5056
+ return FromThis6(schema_, references_, value);
5057
+ case "Tuple":
5058
+ return FromTuple11(schema_, references_, value);
5059
+ case "Undefined":
5060
+ return FromUndefined5(schema_, references_, value);
5061
+ case "Union":
5062
+ return FromUnion16(schema_, references_, value);
5063
+ default:
5064
+ return Default2(value);
5065
+ }
5066
+ }
5067
+ function Convert(...args) {
5068
+ return args.length === 3 ? Visit10(args[0], args[1], args[2]) : Visit10(args[0], [], args[1]);
5069
+ }
5070
+
5071
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/transform/decode.mjs
5072
+ var TransformDecodeCheckError = class extends TypeBoxError {
5073
+ constructor(schema, value, error2) {
5074
+ super(`Unable to decode value as it does not match the expected schema`);
5075
+ this.schema = schema;
5076
+ this.value = value;
5077
+ this.error = error2;
5078
+ }
5079
+ };
5080
+ var TransformDecodeError = class extends TypeBoxError {
5081
+ constructor(schema, path, value, error2) {
5082
+ super(error2 instanceof Error ? error2.message : "Unknown error");
5083
+ this.schema = schema;
5084
+ this.path = path;
5085
+ this.value = value;
5086
+ this.error = error2;
5087
+ }
5088
+ };
5089
+ function Default3(schema, path, value) {
5090
+ try {
5091
+ return IsTransform(schema) ? schema[TransformKind].Decode(value) : value;
5092
+ } catch (error2) {
5093
+ throw new TransformDecodeError(schema, path, value, error2);
5094
+ }
5095
+ }
5096
+ function FromArray14(schema, references, path, value) {
5097
+ return IsArray2(value) ? Default3(schema, path, value.map((value2, index) => Visit11(schema.items, references, `${path}/${index}`, value2))) : Default3(schema, path, value);
5098
+ }
5099
+ function FromIntersect15(schema, references, path, value) {
5100
+ if (!IsObject2(value) || IsValueType(value))
5101
+ return Default3(schema, path, value);
5102
+ const knownEntries = KeyOfPropertyEntries(schema);
5103
+ const knownKeys = knownEntries.map((entry) => entry[0]);
5104
+ const knownProperties = { ...value };
5105
+ for (const [knownKey, knownSchema] of knownEntries)
5106
+ if (knownKey in knownProperties) {
5107
+ knownProperties[knownKey] = Visit11(knownSchema, references, `${path}/${knownKey}`, knownProperties[knownKey]);
5108
+ }
5109
+ if (!IsTransform(schema.unevaluatedProperties)) {
5110
+ return Default3(schema, path, knownProperties);
5111
+ }
5112
+ const unknownKeys = Object.getOwnPropertyNames(knownProperties);
5113
+ const unevaluatedProperties = schema.unevaluatedProperties;
5114
+ const unknownProperties = { ...knownProperties };
5115
+ for (const key of unknownKeys)
5116
+ if (!knownKeys.includes(key)) {
5117
+ unknownProperties[key] = Default3(unevaluatedProperties, `${path}/${key}`, unknownProperties[key]);
5118
+ }
5119
+ return Default3(schema, path, unknownProperties);
5120
+ }
5121
+ function FromImport7(schema, references, path, value) {
5122
+ const additional = globalThis.Object.values(schema.$defs);
5123
+ const target = schema.$defs[schema.$ref];
5124
+ const result = Visit11(target, [...references, ...additional], path, value);
5125
+ return Default3(schema, path, result);
5126
+ }
5127
+ function FromNot5(schema, references, path, value) {
5128
+ return Default3(schema, path, Visit11(schema.not, references, path, value));
5129
+ }
5130
+ function FromObject15(schema, references, path, value) {
5131
+ if (!IsObject2(value))
5132
+ return Default3(schema, path, value);
5133
+ const knownKeys = KeyOfPropertyKeys(schema);
5134
+ const knownProperties = { ...value };
5135
+ for (const key of knownKeys) {
5136
+ if (!HasPropertyKey2(knownProperties, key))
5137
+ continue;
5138
+ if (IsUndefined2(knownProperties[key]) && (!IsUndefined3(schema.properties[key]) || TypeSystemPolicy.IsExactOptionalProperty(knownProperties, key)))
5139
+ continue;
5140
+ knownProperties[key] = Visit11(schema.properties[key], references, `${path}/${key}`, knownProperties[key]);
5141
+ }
5142
+ if (!IsSchema(schema.additionalProperties)) {
5143
+ return Default3(schema, path, knownProperties);
5144
+ }
5145
+ const unknownKeys = Object.getOwnPropertyNames(knownProperties);
5146
+ const additionalProperties = schema.additionalProperties;
5147
+ const unknownProperties = { ...knownProperties };
5148
+ for (const key of unknownKeys)
5149
+ if (!knownKeys.includes(key)) {
5150
+ unknownProperties[key] = Default3(additionalProperties, `${path}/${key}`, unknownProperties[key]);
5151
+ }
5152
+ return Default3(schema, path, unknownProperties);
5153
+ }
5154
+ function FromRecord10(schema, references, path, value) {
5155
+ if (!IsObject2(value))
5156
+ return Default3(schema, path, value);
5157
+ const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0];
5158
+ const knownKeys = new RegExp(pattern);
5159
+ const knownProperties = { ...value };
5160
+ for (const key of Object.getOwnPropertyNames(value))
5161
+ if (knownKeys.test(key)) {
5162
+ knownProperties[key] = Visit11(schema.patternProperties[pattern], references, `${path}/${key}`, knownProperties[key]);
5163
+ }
5164
+ if (!IsSchema(schema.additionalProperties)) {
5165
+ return Default3(schema, path, knownProperties);
5166
+ }
5167
+ const unknownKeys = Object.getOwnPropertyNames(knownProperties);
5168
+ const additionalProperties = schema.additionalProperties;
5169
+ const unknownProperties = { ...knownProperties };
5170
+ for (const key of unknownKeys)
5171
+ if (!knownKeys.test(key)) {
5172
+ unknownProperties[key] = Default3(additionalProperties, `${path}/${key}`, unknownProperties[key]);
5173
+ }
5174
+ return Default3(schema, path, unknownProperties);
5175
+ }
5176
+ function FromRef11(schema, references, path, value) {
5177
+ const target = Deref(schema, references);
5178
+ return Default3(schema, path, Visit11(target, references, path, value));
5179
+ }
5180
+ function FromThis7(schema, references, path, value) {
5181
+ const target = Deref(schema, references);
5182
+ return Default3(schema, path, Visit11(target, references, path, value));
5183
+ }
5184
+ function FromTuple12(schema, references, path, value) {
5185
+ return IsArray2(value) && IsArray2(schema.items) ? Default3(schema, path, schema.items.map((schema2, index) => Visit11(schema2, references, `${path}/${index}`, value[index]))) : Default3(schema, path, value);
5186
+ }
5187
+ function FromUnion17(schema, references, path, value) {
5188
+ for (const subschema of schema.anyOf) {
5189
+ if (!Check(subschema, references, value))
5190
+ continue;
5191
+ const decoded = Visit11(subschema, references, path, value);
5192
+ return Default3(schema, path, decoded);
5193
+ }
5194
+ return Default3(schema, path, value);
5195
+ }
5196
+ function Visit11(schema, references, path, value) {
5197
+ const references_ = Pushref(schema, references);
5198
+ const schema_ = schema;
5199
+ switch (schema[Kind]) {
5200
+ case "Array":
5201
+ return FromArray14(schema_, references_, path, value);
5202
+ case "Import":
5203
+ return FromImport7(schema_, references_, path, value);
5204
+ case "Intersect":
5205
+ return FromIntersect15(schema_, references_, path, value);
5206
+ case "Not":
5207
+ return FromNot5(schema_, references_, path, value);
5208
+ case "Object":
5209
+ return FromObject15(schema_, references_, path, value);
5210
+ case "Record":
5211
+ return FromRecord10(schema_, references_, path, value);
5212
+ case "Ref":
5213
+ return FromRef11(schema_, references_, path, value);
5214
+ case "Symbol":
5215
+ return Default3(schema_, path, value);
5216
+ case "This":
5217
+ return FromThis7(schema_, references_, path, value);
5218
+ case "Tuple":
5219
+ return FromTuple12(schema_, references_, path, value);
5220
+ case "Union":
5221
+ return FromUnion17(schema_, references_, path, value);
5222
+ default:
5223
+ return Default3(schema_, path, value);
5224
+ }
5225
+ }
5226
+ function TransformDecode(schema, references, value) {
5227
+ return Visit11(schema, references, "", value);
5228
+ }
5229
+
5230
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/transform/encode.mjs
5231
+ var TransformEncodeCheckError = class extends TypeBoxError {
5232
+ constructor(schema, value, error2) {
5233
+ super(`The encoded value does not match the expected schema`);
5234
+ this.schema = schema;
5235
+ this.value = value;
5236
+ this.error = error2;
5237
+ }
5238
+ };
5239
+ var TransformEncodeError = class extends TypeBoxError {
5240
+ constructor(schema, path, value, error2) {
5241
+ super(`${error2 instanceof Error ? error2.message : "Unknown error"}`);
5242
+ this.schema = schema;
5243
+ this.path = path;
5244
+ this.value = value;
5245
+ this.error = error2;
5246
+ }
5247
+ };
5248
+ function Default4(schema, path, value) {
5249
+ try {
5250
+ return IsTransform(schema) ? schema[TransformKind].Encode(value) : value;
5251
+ } catch (error2) {
5252
+ throw new TransformEncodeError(schema, path, value, error2);
5253
+ }
5254
+ }
5255
+ function FromArray15(schema, references, path, value) {
5256
+ const defaulted = Default4(schema, path, value);
5257
+ return IsArray2(defaulted) ? defaulted.map((value2, index) => Visit12(schema.items, references, `${path}/${index}`, value2)) : defaulted;
5258
+ }
5259
+ function FromImport8(schema, references, path, value) {
4224
5260
  const additional = globalThis.Object.values(schema.$defs);
4225
5261
  const target = schema.$defs[schema.$ref];
4226
- const result = Default2(schema, path, value);
4227
- return Visit8(target, [...references, ...additional], path, result);
5262
+ const result = Default4(schema, path, value);
5263
+ return Visit12(target, [...references, ...additional], path, result);
4228
5264
  }
4229
- function FromIntersect12(schema, references, path, value) {
4230
- const defaulted = Default2(schema, path, value);
5265
+ function FromIntersect16(schema, references, path, value) {
5266
+ const defaulted = Default4(schema, path, value);
4231
5267
  if (!IsObject2(value) || IsValueType(value))
4232
5268
  return defaulted;
4233
5269
  const knownEntries = KeyOfPropertyEntries(schema);
@@ -4235,7 +5271,7 @@ function FromIntersect12(schema, references, path, value) {
4235
5271
  const knownProperties = { ...defaulted };
4236
5272
  for (const [knownKey, knownSchema] of knownEntries)
4237
5273
  if (knownKey in knownProperties) {
4238
- knownProperties[knownKey] = Visit8(knownSchema, references, `${path}/${knownKey}`, knownProperties[knownKey]);
5274
+ knownProperties[knownKey] = Visit12(knownSchema, references, `${path}/${knownKey}`, knownProperties[knownKey]);
4239
5275
  }
4240
5276
  if (!IsTransform(schema.unevaluatedProperties)) {
4241
5277
  return knownProperties;
@@ -4245,15 +5281,15 @@ function FromIntersect12(schema, references, path, value) {
4245
5281
  const properties = { ...knownProperties };
4246
5282
  for (const key of unknownKeys)
4247
5283
  if (!knownKeys.includes(key)) {
4248
- properties[key] = Default2(unevaluatedProperties, `${path}/${key}`, properties[key]);
5284
+ properties[key] = Default4(unevaluatedProperties, `${path}/${key}`, properties[key]);
4249
5285
  }
4250
5286
  return properties;
4251
5287
  }
4252
- function FromNot5(schema, references, path, value) {
4253
- return Default2(schema.not, path, Default2(schema, path, value));
5288
+ function FromNot6(schema, references, path, value) {
5289
+ return Default4(schema.not, path, Default4(schema, path, value));
4254
5290
  }
4255
- function FromObject11(schema, references, path, value) {
4256
- const defaulted = Default2(schema, path, value);
5291
+ function FromObject16(schema, references, path, value) {
5292
+ const defaulted = Default4(schema, path, value);
4257
5293
  if (!IsObject2(defaulted))
4258
5294
  return defaulted;
4259
5295
  const knownKeys = KeyOfPropertyKeys(schema);
@@ -4263,7 +5299,7 @@ function FromObject11(schema, references, path, value) {
4263
5299
  continue;
4264
5300
  if (IsUndefined2(knownProperties[key]) && (!IsUndefined3(schema.properties[key]) || TypeSystemPolicy.IsExactOptionalProperty(knownProperties, key)))
4265
5301
  continue;
4266
- knownProperties[key] = Visit8(schema.properties[key], references, `${path}/${key}`, knownProperties[key]);
5302
+ knownProperties[key] = Visit12(schema.properties[key], references, `${path}/${key}`, knownProperties[key]);
4267
5303
  }
4268
5304
  if (!IsSchema(schema.additionalProperties)) {
4269
5305
  return knownProperties;
@@ -4273,12 +5309,12 @@ function FromObject11(schema, references, path, value) {
4273
5309
  const properties = { ...knownProperties };
4274
5310
  for (const key of unknownKeys)
4275
5311
  if (!knownKeys.includes(key)) {
4276
- properties[key] = Default2(additionalProperties, `${path}/${key}`, properties[key]);
5312
+ properties[key] = Default4(additionalProperties, `${path}/${key}`, properties[key]);
4277
5313
  }
4278
5314
  return properties;
4279
5315
  }
4280
- function FromRecord7(schema, references, path, value) {
4281
- const defaulted = Default2(schema, path, value);
5316
+ function FromRecord11(schema, references, path, value) {
5317
+ const defaulted = Default4(schema, path, value);
4282
5318
  if (!IsObject2(value))
4283
5319
  return defaulted;
4284
5320
  const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0];
@@ -4286,7 +5322,7 @@ function FromRecord7(schema, references, path, value) {
4286
5322
  const knownProperties = { ...defaulted };
4287
5323
  for (const key of Object.getOwnPropertyNames(value))
4288
5324
  if (knownKeys.test(key)) {
4289
- knownProperties[key] = Visit8(schema.patternProperties[pattern], references, `${path}/${key}`, knownProperties[key]);
5325
+ knownProperties[key] = Visit12(schema.patternProperties[pattern], references, `${path}/${key}`, knownProperties[key]);
4290
5326
  }
4291
5327
  if (!IsSchema(schema.additionalProperties)) {
4292
5328
  return knownProperties;
@@ -4296,126 +5332,126 @@ function FromRecord7(schema, references, path, value) {
4296
5332
  const properties = { ...knownProperties };
4297
5333
  for (const key of unknownKeys)
4298
5334
  if (!knownKeys.test(key)) {
4299
- properties[key] = Default2(additionalProperties, `${path}/${key}`, properties[key]);
5335
+ properties[key] = Default4(additionalProperties, `${path}/${key}`, properties[key]);
4300
5336
  }
4301
5337
  return properties;
4302
5338
  }
4303
- function FromRef8(schema, references, path, value) {
5339
+ function FromRef12(schema, references, path, value) {
4304
5340
  const target = Deref(schema, references);
4305
- const resolved = Visit8(target, references, path, value);
4306
- return Default2(schema, path, resolved);
5341
+ const resolved = Visit12(target, references, path, value);
5342
+ return Default4(schema, path, resolved);
4307
5343
  }
4308
- function FromThis4(schema, references, path, value) {
5344
+ function FromThis8(schema, references, path, value) {
4309
5345
  const target = Deref(schema, references);
4310
- const resolved = Visit8(target, references, path, value);
4311
- return Default2(schema, path, resolved);
5346
+ const resolved = Visit12(target, references, path, value);
5347
+ return Default4(schema, path, resolved);
4312
5348
  }
4313
- function FromTuple9(schema, references, path, value) {
4314
- const value1 = Default2(schema, path, value);
4315
- return IsArray2(schema.items) ? schema.items.map((schema2, index) => Visit8(schema2, references, `${path}/${index}`, value1[index])) : [];
5349
+ function FromTuple13(schema, references, path, value) {
5350
+ const value1 = Default4(schema, path, value);
5351
+ return IsArray2(schema.items) ? schema.items.map((schema2, index) => Visit12(schema2, references, `${path}/${index}`, value1[index])) : [];
4316
5352
  }
4317
- function FromUnion14(schema, references, path, value) {
5353
+ function FromUnion18(schema, references, path, value) {
4318
5354
  for (const subschema of schema.anyOf) {
4319
5355
  if (!Check(subschema, references, value))
4320
5356
  continue;
4321
- const value1 = Visit8(subschema, references, path, value);
4322
- return Default2(schema, path, value1);
5357
+ const value1 = Visit12(subschema, references, path, value);
5358
+ return Default4(schema, path, value1);
4323
5359
  }
4324
5360
  for (const subschema of schema.anyOf) {
4325
- const value1 = Visit8(subschema, references, path, value);
5361
+ const value1 = Visit12(subschema, references, path, value);
4326
5362
  if (!Check(schema, references, value1))
4327
5363
  continue;
4328
- return Default2(schema, path, value1);
5364
+ return Default4(schema, path, value1);
4329
5365
  }
4330
- return Default2(schema, path, value);
5366
+ return Default4(schema, path, value);
4331
5367
  }
4332
- function Visit8(schema, references, path, value) {
5368
+ function Visit12(schema, references, path, value) {
4333
5369
  const references_ = Pushref(schema, references);
4334
5370
  const schema_ = schema;
4335
5371
  switch (schema[Kind]) {
4336
5372
  case "Array":
4337
- return FromArray10(schema_, references_, path, value);
5373
+ return FromArray15(schema_, references_, path, value);
4338
5374
  case "Import":
4339
- return FromImport4(schema_, references_, path, value);
5375
+ return FromImport8(schema_, references_, path, value);
4340
5376
  case "Intersect":
4341
- return FromIntersect12(schema_, references_, path, value);
5377
+ return FromIntersect16(schema_, references_, path, value);
4342
5378
  case "Not":
4343
- return FromNot5(schema_, references_, path, value);
5379
+ return FromNot6(schema_, references_, path, value);
4344
5380
  case "Object":
4345
- return FromObject11(schema_, references_, path, value);
5381
+ return FromObject16(schema_, references_, path, value);
4346
5382
  case "Record":
4347
- return FromRecord7(schema_, references_, path, value);
5383
+ return FromRecord11(schema_, references_, path, value);
4348
5384
  case "Ref":
4349
- return FromRef8(schema_, references_, path, value);
5385
+ return FromRef12(schema_, references_, path, value);
4350
5386
  case "This":
4351
- return FromThis4(schema_, references_, path, value);
5387
+ return FromThis8(schema_, references_, path, value);
4352
5388
  case "Tuple":
4353
- return FromTuple9(schema_, references_, path, value);
5389
+ return FromTuple13(schema_, references_, path, value);
4354
5390
  case "Union":
4355
- return FromUnion14(schema_, references_, path, value);
5391
+ return FromUnion18(schema_, references_, path, value);
4356
5392
  default:
4357
- return Default2(schema_, path, value);
5393
+ return Default4(schema_, path, value);
4358
5394
  }
4359
5395
  }
4360
5396
  function TransformEncode(schema, references, value) {
4361
- return Visit8(schema, references, "", value);
5397
+ return Visit12(schema, references, "", value);
4362
5398
  }
4363
5399
 
4364
5400
  // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/transform/has.mjs
4365
- function FromArray11(schema, references) {
4366
- return IsTransform(schema) || Visit9(schema.items, references);
5401
+ function FromArray16(schema, references) {
5402
+ return IsTransform(schema) || Visit13(schema.items, references);
4367
5403
  }
4368
- function FromAsyncIterator6(schema, references) {
4369
- return IsTransform(schema) || Visit9(schema.items, references);
5404
+ function FromAsyncIterator7(schema, references) {
5405
+ return IsTransform(schema) || Visit13(schema.items, references);
4370
5406
  }
4371
- function FromConstructor6(schema, references) {
4372
- return IsTransform(schema) || Visit9(schema.returns, references) || schema.parameters.some((schema2) => Visit9(schema2, references));
5407
+ function FromConstructor8(schema, references) {
5408
+ return IsTransform(schema) || Visit13(schema.returns, references) || schema.parameters.some((schema2) => Visit13(schema2, references));
4373
5409
  }
4374
- function FromFunction6(schema, references) {
4375
- return IsTransform(schema) || Visit9(schema.returns, references) || schema.parameters.some((schema2) => Visit9(schema2, references));
5410
+ function FromFunction7(schema, references) {
5411
+ return IsTransform(schema) || Visit13(schema.returns, references) || schema.parameters.some((schema2) => Visit13(schema2, references));
4376
5412
  }
4377
- function FromIntersect13(schema, references) {
4378
- return IsTransform(schema) || IsTransform(schema.unevaluatedProperties) || schema.allOf.some((schema2) => Visit9(schema2, references));
5413
+ function FromIntersect17(schema, references) {
5414
+ return IsTransform(schema) || IsTransform(schema.unevaluatedProperties) || schema.allOf.some((schema2) => Visit13(schema2, references));
4379
5415
  }
4380
- function FromImport5(schema, references) {
5416
+ function FromImport9(schema, references) {
4381
5417
  const additional = globalThis.Object.getOwnPropertyNames(schema.$defs).reduce((result, key) => [...result, schema.$defs[key]], []);
4382
5418
  const target = schema.$defs[schema.$ref];
4383
- return IsTransform(schema) || Visit9(target, [...additional, ...references]);
5419
+ return IsTransform(schema) || Visit13(target, [...additional, ...references]);
4384
5420
  }
4385
- function FromIterator6(schema, references) {
4386
- return IsTransform(schema) || Visit9(schema.items, references);
5421
+ function FromIterator7(schema, references) {
5422
+ return IsTransform(schema) || Visit13(schema.items, references);
4387
5423
  }
4388
- function FromNot6(schema, references) {
4389
- return IsTransform(schema) || Visit9(schema.not, references);
5424
+ function FromNot7(schema, references) {
5425
+ return IsTransform(schema) || Visit13(schema.not, references);
4390
5426
  }
4391
- function FromObject12(schema, references) {
4392
- return IsTransform(schema) || Object.values(schema.properties).some((schema2) => Visit9(schema2, references)) || IsSchema(schema.additionalProperties) && Visit9(schema.additionalProperties, references);
5427
+ function FromObject17(schema, references) {
5428
+ return IsTransform(schema) || Object.values(schema.properties).some((schema2) => Visit13(schema2, references)) || IsSchema(schema.additionalProperties) && Visit13(schema.additionalProperties, references);
4393
5429
  }
4394
- function FromPromise6(schema, references) {
4395
- return IsTransform(schema) || Visit9(schema.item, references);
5430
+ function FromPromise7(schema, references) {
5431
+ return IsTransform(schema) || Visit13(schema.item, references);
4396
5432
  }
4397
- function FromRecord8(schema, references) {
5433
+ function FromRecord12(schema, references) {
4398
5434
  const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0];
4399
5435
  const property = schema.patternProperties[pattern];
4400
- return IsTransform(schema) || Visit9(property, references) || IsSchema(schema.additionalProperties) && IsTransform(schema.additionalProperties);
5436
+ return IsTransform(schema) || Visit13(property, references) || IsSchema(schema.additionalProperties) && IsTransform(schema.additionalProperties);
4401
5437
  }
4402
- function FromRef9(schema, references) {
5438
+ function FromRef13(schema, references) {
4403
5439
  if (IsTransform(schema))
4404
5440
  return true;
4405
- return Visit9(Deref(schema, references), references);
5441
+ return Visit13(Deref(schema, references), references);
4406
5442
  }
4407
- function FromThis5(schema, references) {
5443
+ function FromThis9(schema, references) {
4408
5444
  if (IsTransform(schema))
4409
5445
  return true;
4410
- return Visit9(Deref(schema, references), references);
5446
+ return Visit13(Deref(schema, references), references);
4411
5447
  }
4412
- function FromTuple10(schema, references) {
4413
- return IsTransform(schema) || !IsUndefined2(schema.items) && schema.items.some((schema2) => Visit9(schema2, references));
5448
+ function FromTuple14(schema, references) {
5449
+ return IsTransform(schema) || !IsUndefined2(schema.items) && schema.items.some((schema2) => Visit13(schema2, references));
4414
5450
  }
4415
- function FromUnion15(schema, references) {
4416
- return IsTransform(schema) || schema.anyOf.some((schema2) => Visit9(schema2, references));
5451
+ function FromUnion19(schema, references) {
5452
+ return IsTransform(schema) || schema.anyOf.some((schema2) => Visit13(schema2, references));
4417
5453
  }
4418
- function Visit9(schema, references) {
5454
+ function Visit13(schema, references) {
4419
5455
  const references_ = Pushref(schema, references);
4420
5456
  const schema_ = schema;
4421
5457
  if (schema.$id && visited.has(schema.$id))
@@ -4424,35 +5460,35 @@ function Visit9(schema, references) {
4424
5460
  visited.add(schema.$id);
4425
5461
  switch (schema[Kind]) {
4426
5462
  case "Array":
4427
- return FromArray11(schema_, references_);
5463
+ return FromArray16(schema_, references_);
4428
5464
  case "AsyncIterator":
4429
- return FromAsyncIterator6(schema_, references_);
5465
+ return FromAsyncIterator7(schema_, references_);
4430
5466
  case "Constructor":
4431
- return FromConstructor6(schema_, references_);
5467
+ return FromConstructor8(schema_, references_);
4432
5468
  case "Function":
4433
- return FromFunction6(schema_, references_);
5469
+ return FromFunction7(schema_, references_);
4434
5470
  case "Import":
4435
- return FromImport5(schema_, references_);
5471
+ return FromImport9(schema_, references_);
4436
5472
  case "Intersect":
4437
- return FromIntersect13(schema_, references_);
5473
+ return FromIntersect17(schema_, references_);
4438
5474
  case "Iterator":
4439
- return FromIterator6(schema_, references_);
5475
+ return FromIterator7(schema_, references_);
4440
5476
  case "Not":
4441
- return FromNot6(schema_, references_);
5477
+ return FromNot7(schema_, references_);
4442
5478
  case "Object":
4443
- return FromObject12(schema_, references_);
5479
+ return FromObject17(schema_, references_);
4444
5480
  case "Promise":
4445
- return FromPromise6(schema_, references_);
5481
+ return FromPromise7(schema_, references_);
4446
5482
  case "Record":
4447
- return FromRecord8(schema_, references_);
5483
+ return FromRecord12(schema_, references_);
4448
5484
  case "Ref":
4449
- return FromRef9(schema_, references_);
5485
+ return FromRef13(schema_, references_);
4450
5486
  case "This":
4451
- return FromThis5(schema_, references_);
5487
+ return FromThis9(schema_, references_);
4452
5488
  case "Tuple":
4453
- return FromTuple10(schema_, references_);
5489
+ return FromTuple14(schema_, references_);
4454
5490
  case "Union":
4455
- return FromUnion15(schema_, references_);
5491
+ return FromUnion19(schema_, references_);
4456
5492
  default:
4457
5493
  return IsTransform(schema);
4458
5494
  }
@@ -4460,8 +5496,604 @@ function Visit9(schema, references) {
4460
5496
  var visited = /* @__PURE__ */ new Set();
4461
5497
  function HasTransform(schema, references) {
4462
5498
  visited.clear();
4463
- return Visit9(schema, references);
5499
+ return Visit13(schema, references);
5500
+ }
5501
+
5502
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/decode/decode.mjs
5503
+ function Decode(...args) {
5504
+ const [schema, references, value] = args.length === 3 ? [args[0], args[1], args[2]] : [args[0], [], args[1]];
5505
+ if (!Check(schema, references, value))
5506
+ throw new TransformDecodeCheckError(schema, value, Errors(schema, references, value).First());
5507
+ return HasTransform(schema, references) ? TransformDecode(schema, references, value) : value;
5508
+ }
5509
+
5510
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/default/default.mjs
5511
+ function ValueOrDefault(schema, value) {
5512
+ const defaultValue = HasPropertyKey2(schema, "default") ? schema.default : void 0;
5513
+ const clone = IsFunction2(defaultValue) ? defaultValue() : Clone2(defaultValue);
5514
+ return IsUndefined2(value) ? clone : IsObject2(value) && IsObject2(clone) ? Object.assign(clone, value) : value;
5515
+ }
5516
+ function HasDefaultProperty(schema) {
5517
+ return IsKind(schema) && "default" in schema;
5518
+ }
5519
+ function FromArray17(schema, references, value) {
5520
+ if (IsArray2(value)) {
5521
+ for (let i = 0; i < value.length; i++) {
5522
+ value[i] = Visit14(schema.items, references, value[i]);
5523
+ }
5524
+ return value;
5525
+ }
5526
+ const defaulted = ValueOrDefault(schema, value);
5527
+ if (!IsArray2(defaulted))
5528
+ return defaulted;
5529
+ for (let i = 0; i < defaulted.length; i++) {
5530
+ defaulted[i] = Visit14(schema.items, references, defaulted[i]);
5531
+ }
5532
+ return defaulted;
5533
+ }
5534
+ function FromDate7(schema, references, value) {
5535
+ return IsDate2(value) ? value : ValueOrDefault(schema, value);
5536
+ }
5537
+ function FromImport10(schema, references, value) {
5538
+ const definitions = globalThis.Object.values(schema.$defs);
5539
+ const target = schema.$defs[schema.$ref];
5540
+ return Visit14(target, [...references, ...definitions], value);
5541
+ }
5542
+ function FromIntersect18(schema, references, value) {
5543
+ const defaulted = ValueOrDefault(schema, value);
5544
+ return schema.allOf.reduce((acc, schema2) => {
5545
+ const next = Visit14(schema2, references, defaulted);
5546
+ return IsObject2(next) ? { ...acc, ...next } : next;
5547
+ }, {});
5548
+ }
5549
+ function FromObject18(schema, references, value) {
5550
+ const defaulted = ValueOrDefault(schema, value);
5551
+ if (!IsObject2(defaulted))
5552
+ return defaulted;
5553
+ const knownPropertyKeys = Object.getOwnPropertyNames(schema.properties);
5554
+ for (const key of knownPropertyKeys) {
5555
+ const propertyValue = Visit14(schema.properties[key], references, defaulted[key]);
5556
+ if (IsUndefined2(propertyValue))
5557
+ continue;
5558
+ defaulted[key] = Visit14(schema.properties[key], references, defaulted[key]);
5559
+ }
5560
+ if (!HasDefaultProperty(schema.additionalProperties))
5561
+ return defaulted;
5562
+ for (const key of Object.getOwnPropertyNames(defaulted)) {
5563
+ if (knownPropertyKeys.includes(key))
5564
+ continue;
5565
+ defaulted[key] = Visit14(schema.additionalProperties, references, defaulted[key]);
5566
+ }
5567
+ return defaulted;
5568
+ }
5569
+ function FromRecord13(schema, references, value) {
5570
+ const defaulted = ValueOrDefault(schema, value);
5571
+ if (!IsObject2(defaulted))
5572
+ return defaulted;
5573
+ const additionalPropertiesSchema = schema.additionalProperties;
5574
+ const [propertyKeyPattern, propertySchema] = Object.entries(schema.patternProperties)[0];
5575
+ const knownPropertyKey = new RegExp(propertyKeyPattern);
5576
+ for (const key of Object.getOwnPropertyNames(defaulted)) {
5577
+ if (!(knownPropertyKey.test(key) && HasDefaultProperty(propertySchema)))
5578
+ continue;
5579
+ defaulted[key] = Visit14(propertySchema, references, defaulted[key]);
5580
+ }
5581
+ if (!HasDefaultProperty(additionalPropertiesSchema))
5582
+ return defaulted;
5583
+ for (const key of Object.getOwnPropertyNames(defaulted)) {
5584
+ if (knownPropertyKey.test(key))
5585
+ continue;
5586
+ defaulted[key] = Visit14(additionalPropertiesSchema, references, defaulted[key]);
5587
+ }
5588
+ return defaulted;
5589
+ }
5590
+ function FromRef14(schema, references, value) {
5591
+ return Visit14(Deref(schema, references), references, ValueOrDefault(schema, value));
5592
+ }
5593
+ function FromThis10(schema, references, value) {
5594
+ return Visit14(Deref(schema, references), references, value);
5595
+ }
5596
+ function FromTuple15(schema, references, value) {
5597
+ const defaulted = ValueOrDefault(schema, value);
5598
+ if (!IsArray2(defaulted) || IsUndefined2(schema.items))
5599
+ return defaulted;
5600
+ const [items, max] = [schema.items, Math.max(schema.items.length, defaulted.length)];
5601
+ for (let i = 0; i < max; i++) {
5602
+ if (i < items.length)
5603
+ defaulted[i] = Visit14(items[i], references, defaulted[i]);
5604
+ }
5605
+ return defaulted;
5606
+ }
5607
+ function FromUnion20(schema, references, value) {
5608
+ const defaulted = ValueOrDefault(schema, value);
5609
+ for (const inner of schema.anyOf) {
5610
+ const result = Visit14(inner, references, Clone2(defaulted));
5611
+ if (Check(inner, references, result)) {
5612
+ return result;
5613
+ }
5614
+ }
5615
+ return defaulted;
5616
+ }
5617
+ function Visit14(schema, references, value) {
5618
+ const references_ = Pushref(schema, references);
5619
+ const schema_ = schema;
5620
+ switch (schema_[Kind]) {
5621
+ case "Array":
5622
+ return FromArray17(schema_, references_, value);
5623
+ case "Date":
5624
+ return FromDate7(schema_, references_, value);
5625
+ case "Import":
5626
+ return FromImport10(schema_, references_, value);
5627
+ case "Intersect":
5628
+ return FromIntersect18(schema_, references_, value);
5629
+ case "Object":
5630
+ return FromObject18(schema_, references_, value);
5631
+ case "Record":
5632
+ return FromRecord13(schema_, references_, value);
5633
+ case "Ref":
5634
+ return FromRef14(schema_, references_, value);
5635
+ case "This":
5636
+ return FromThis10(schema_, references_, value);
5637
+ case "Tuple":
5638
+ return FromTuple15(schema_, references_, value);
5639
+ case "Union":
5640
+ return FromUnion20(schema_, references_, value);
5641
+ default:
5642
+ return ValueOrDefault(schema_, value);
5643
+ }
5644
+ }
5645
+ function Default5(...args) {
5646
+ return args.length === 3 ? Visit14(args[0], args[1], args[2]) : Visit14(args[0], [], args[1]);
5647
+ }
5648
+
5649
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/pointer/pointer.mjs
5650
+ var pointer_exports = {};
5651
+ __export(pointer_exports, {
5652
+ Delete: () => Delete3,
5653
+ Format: () => Format,
5654
+ Get: () => Get3,
5655
+ Has: () => Has3,
5656
+ Set: () => Set4,
5657
+ ValuePointerRootDeleteError: () => ValuePointerRootDeleteError,
5658
+ ValuePointerRootSetError: () => ValuePointerRootSetError
5659
+ });
5660
+ var ValuePointerRootSetError = class extends TypeBoxError {
5661
+ constructor(value, path, update) {
5662
+ super("Cannot set root value");
5663
+ this.value = value;
5664
+ this.path = path;
5665
+ this.update = update;
5666
+ }
5667
+ };
5668
+ var ValuePointerRootDeleteError = class extends TypeBoxError {
5669
+ constructor(value, path) {
5670
+ super("Cannot delete root value");
5671
+ this.value = value;
5672
+ this.path = path;
5673
+ }
5674
+ };
5675
+ function Escape2(component) {
5676
+ return component.indexOf("~") === -1 ? component : component.replace(/~1/g, "/").replace(/~0/g, "~");
5677
+ }
5678
+ function* Format(pointer) {
5679
+ if (pointer === "")
5680
+ return;
5681
+ let [start, end] = [0, 0];
5682
+ for (let i = 0; i < pointer.length; i++) {
5683
+ const char = pointer.charAt(i);
5684
+ if (char === "/") {
5685
+ if (i === 0) {
5686
+ start = i + 1;
5687
+ } else {
5688
+ end = i;
5689
+ yield Escape2(pointer.slice(start, end));
5690
+ start = i + 1;
5691
+ }
5692
+ } else {
5693
+ end = i;
5694
+ }
5695
+ }
5696
+ yield Escape2(pointer.slice(start));
5697
+ }
5698
+ function Set4(value, pointer, update) {
5699
+ if (pointer === "")
5700
+ throw new ValuePointerRootSetError(value, pointer, update);
5701
+ let [owner, next, key] = [null, value, ""];
5702
+ for (const component of Format(pointer)) {
5703
+ if (next[component] === void 0)
5704
+ next[component] = {};
5705
+ owner = next;
5706
+ next = next[component];
5707
+ key = component;
5708
+ }
5709
+ owner[key] = update;
5710
+ }
5711
+ function Delete3(value, pointer) {
5712
+ if (pointer === "")
5713
+ throw new ValuePointerRootDeleteError(value, pointer);
5714
+ let [owner, next, key] = [null, value, ""];
5715
+ for (const component of Format(pointer)) {
5716
+ if (next[component] === void 0 || next[component] === null)
5717
+ return;
5718
+ owner = next;
5719
+ next = next[component];
5720
+ key = component;
5721
+ }
5722
+ if (Array.isArray(owner)) {
5723
+ const index = parseInt(key);
5724
+ owner.splice(index, 1);
5725
+ } else {
5726
+ delete owner[key];
5727
+ }
5728
+ }
5729
+ function Has3(value, pointer) {
5730
+ if (pointer === "")
5731
+ return true;
5732
+ let [owner, next, key] = [null, value, ""];
5733
+ for (const component of Format(pointer)) {
5734
+ if (next[component] === void 0)
5735
+ return false;
5736
+ owner = next;
5737
+ next = next[component];
5738
+ key = component;
5739
+ }
5740
+ return Object.getOwnPropertyNames(owner).includes(key);
5741
+ }
5742
+ function Get3(value, pointer) {
5743
+ if (pointer === "")
5744
+ return value;
5745
+ let current = value;
5746
+ for (const component of Format(pointer)) {
5747
+ if (current[component] === void 0)
5748
+ return void 0;
5749
+ current = current[component];
5750
+ }
5751
+ return current;
5752
+ }
5753
+
5754
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/equal/equal.mjs
5755
+ function ObjectType3(left, right) {
5756
+ if (!IsObject2(right))
5757
+ return false;
5758
+ const leftKeys = [...Object.keys(left), ...Object.getOwnPropertySymbols(left)];
5759
+ const rightKeys = [...Object.keys(right), ...Object.getOwnPropertySymbols(right)];
5760
+ if (leftKeys.length !== rightKeys.length)
5761
+ return false;
5762
+ return leftKeys.every((key) => Equal(left[key], right[key]));
5763
+ }
5764
+ function DateType3(left, right) {
5765
+ return IsDate2(right) && left.getTime() === right.getTime();
5766
+ }
5767
+ function ArrayType3(left, right) {
5768
+ if (!IsArray2(right) || left.length !== right.length)
5769
+ return false;
5770
+ return left.every((value, index) => Equal(value, right[index]));
5771
+ }
5772
+ function TypedArrayType(left, right) {
5773
+ if (!IsTypedArray(right) || left.length !== right.length || Object.getPrototypeOf(left).constructor.name !== Object.getPrototypeOf(right).constructor.name)
5774
+ return false;
5775
+ return left.every((value, index) => Equal(value, right[index]));
5776
+ }
5777
+ function ValueType(left, right) {
5778
+ return left === right;
5779
+ }
5780
+ function Equal(left, right) {
5781
+ if (IsDate2(left))
5782
+ return DateType3(left, right);
5783
+ if (IsTypedArray(left))
5784
+ return TypedArrayType(left, right);
5785
+ if (IsArray2(left))
5786
+ return ArrayType3(left, right);
5787
+ if (IsObject2(left))
5788
+ return ObjectType3(left, right);
5789
+ if (IsValueType(left))
5790
+ return ValueType(left, right);
5791
+ throw new Error("ValueEquals: Unable to compare value");
5792
+ }
5793
+
5794
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/delta/delta.mjs
5795
+ var Insert = Object2({
5796
+ type: Literal("insert"),
5797
+ path: String2(),
5798
+ value: Unknown()
5799
+ });
5800
+ var Update = Object2({
5801
+ type: Literal("update"),
5802
+ path: String2(),
5803
+ value: Unknown()
5804
+ });
5805
+ var Delete4 = Object2({
5806
+ type: Literal("delete"),
5807
+ path: String2()
5808
+ });
5809
+ var Edit = Union([Insert, Update, Delete4]);
5810
+ var ValueDiffError = class extends TypeBoxError {
5811
+ constructor(value, message) {
5812
+ super(message);
5813
+ this.value = value;
5814
+ }
5815
+ };
5816
+ function CreateUpdate(path, value) {
5817
+ return { type: "update", path, value };
5818
+ }
5819
+ function CreateInsert(path, value) {
5820
+ return { type: "insert", path, value };
5821
+ }
5822
+ function CreateDelete(path) {
5823
+ return { type: "delete", path };
5824
+ }
5825
+ function AssertDiffable(value) {
5826
+ if (globalThis.Object.getOwnPropertySymbols(value).length > 0)
5827
+ throw new ValueDiffError(value, "Cannot diff objects with symbols");
5828
+ }
5829
+ function* ObjectType4(path, current, next) {
5830
+ AssertDiffable(current);
5831
+ AssertDiffable(next);
5832
+ if (!IsStandardObject(next))
5833
+ return yield CreateUpdate(path, next);
5834
+ const currentKeys = globalThis.Object.getOwnPropertyNames(current);
5835
+ const nextKeys = globalThis.Object.getOwnPropertyNames(next);
5836
+ for (const key of nextKeys) {
5837
+ if (HasPropertyKey2(current, key))
5838
+ continue;
5839
+ yield CreateInsert(`${path}/${key}`, next[key]);
5840
+ }
5841
+ for (const key of currentKeys) {
5842
+ if (!HasPropertyKey2(next, key))
5843
+ continue;
5844
+ if (Equal(current, next))
5845
+ continue;
5846
+ yield* Visit15(`${path}/${key}`, current[key], next[key]);
5847
+ }
5848
+ for (const key of currentKeys) {
5849
+ if (HasPropertyKey2(next, key))
5850
+ continue;
5851
+ yield CreateDelete(`${path}/${key}`);
5852
+ }
5853
+ }
5854
+ function* ArrayType4(path, current, next) {
5855
+ if (!IsArray2(next))
5856
+ return yield CreateUpdate(path, next);
5857
+ for (let i = 0; i < Math.min(current.length, next.length); i++) {
5858
+ yield* Visit15(`${path}/${i}`, current[i], next[i]);
5859
+ }
5860
+ for (let i = 0; i < next.length; i++) {
5861
+ if (i < current.length)
5862
+ continue;
5863
+ yield CreateInsert(`${path}/${i}`, next[i]);
5864
+ }
5865
+ for (let i = current.length - 1; i >= 0; i--) {
5866
+ if (i < next.length)
5867
+ continue;
5868
+ yield CreateDelete(`${path}/${i}`);
5869
+ }
5870
+ }
5871
+ function* TypedArrayType2(path, current, next) {
5872
+ if (!IsTypedArray(next) || current.length !== next.length || globalThis.Object.getPrototypeOf(current).constructor.name !== globalThis.Object.getPrototypeOf(next).constructor.name)
5873
+ return yield CreateUpdate(path, next);
5874
+ for (let i = 0; i < Math.min(current.length, next.length); i++) {
5875
+ yield* Visit15(`${path}/${i}`, current[i], next[i]);
5876
+ }
5877
+ }
5878
+ function* ValueType2(path, current, next) {
5879
+ if (current === next)
5880
+ return;
5881
+ yield CreateUpdate(path, next);
5882
+ }
5883
+ function* Visit15(path, current, next) {
5884
+ if (IsStandardObject(current))
5885
+ return yield* ObjectType4(path, current, next);
5886
+ if (IsArray2(current))
5887
+ return yield* ArrayType4(path, current, next);
5888
+ if (IsTypedArray(current))
5889
+ return yield* TypedArrayType2(path, current, next);
5890
+ if (IsValueType(current))
5891
+ return yield* ValueType2(path, current, next);
5892
+ throw new ValueDiffError(current, "Unable to diff value");
5893
+ }
5894
+ function Diff(current, next) {
5895
+ return [...Visit15("", current, next)];
5896
+ }
5897
+ function IsRootUpdate(edits) {
5898
+ return edits.length > 0 && edits[0].path === "" && edits[0].type === "update";
5899
+ }
5900
+ function IsIdentity(edits) {
5901
+ return edits.length === 0;
5902
+ }
5903
+ function Patch(current, edits) {
5904
+ if (IsRootUpdate(edits)) {
5905
+ return Clone2(edits[0].value);
5906
+ }
5907
+ if (IsIdentity(edits)) {
5908
+ return Clone2(current);
5909
+ }
5910
+ const clone = Clone2(current);
5911
+ for (const edit of edits) {
5912
+ switch (edit.type) {
5913
+ case "insert": {
5914
+ pointer_exports.Set(clone, edit.path, edit.value);
5915
+ break;
5916
+ }
5917
+ case "update": {
5918
+ pointer_exports.Set(clone, edit.path, edit.value);
5919
+ break;
5920
+ }
5921
+ case "delete": {
5922
+ pointer_exports.Delete(clone, edit.path);
5923
+ break;
5924
+ }
5925
+ }
5926
+ }
5927
+ return clone;
5928
+ }
5929
+
5930
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/encode/encode.mjs
5931
+ function Encode(...args) {
5932
+ const [schema, references, value] = args.length === 3 ? [args[0], args[1], args[2]] : [args[0], [], args[1]];
5933
+ const encoded = HasTransform(schema, references) ? TransformEncode(schema, references, value) : value;
5934
+ if (!Check(schema, references, encoded))
5935
+ throw new TransformEncodeCheckError(schema, encoded, Errors(schema, references, encoded).First());
5936
+ return encoded;
5937
+ }
5938
+
5939
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/mutate/mutate.mjs
5940
+ function IsStandardObject2(value) {
5941
+ return IsObject2(value) && !IsArray2(value);
5942
+ }
5943
+ var ValueMutateError = class extends TypeBoxError {
5944
+ constructor(message) {
5945
+ super(message);
5946
+ }
5947
+ };
5948
+ function ObjectType5(root, path, current, next) {
5949
+ if (!IsStandardObject2(current)) {
5950
+ pointer_exports.Set(root, path, Clone2(next));
5951
+ } else {
5952
+ const currentKeys = Object.getOwnPropertyNames(current);
5953
+ const nextKeys = Object.getOwnPropertyNames(next);
5954
+ for (const currentKey of currentKeys) {
5955
+ if (!nextKeys.includes(currentKey)) {
5956
+ delete current[currentKey];
5957
+ }
5958
+ }
5959
+ for (const nextKey of nextKeys) {
5960
+ if (!currentKeys.includes(nextKey)) {
5961
+ current[nextKey] = null;
5962
+ }
5963
+ }
5964
+ for (const nextKey of nextKeys) {
5965
+ Visit16(root, `${path}/${nextKey}`, current[nextKey], next[nextKey]);
5966
+ }
5967
+ }
5968
+ }
5969
+ function ArrayType5(root, path, current, next) {
5970
+ if (!IsArray2(current)) {
5971
+ pointer_exports.Set(root, path, Clone2(next));
5972
+ } else {
5973
+ for (let index = 0; index < next.length; index++) {
5974
+ Visit16(root, `${path}/${index}`, current[index], next[index]);
5975
+ }
5976
+ current.splice(next.length);
5977
+ }
4464
5978
  }
5979
+ function TypedArrayType3(root, path, current, next) {
5980
+ if (IsTypedArray(current) && current.length === next.length) {
5981
+ for (let i = 0; i < current.length; i++) {
5982
+ current[i] = next[i];
5983
+ }
5984
+ } else {
5985
+ pointer_exports.Set(root, path, Clone2(next));
5986
+ }
5987
+ }
5988
+ function ValueType3(root, path, current, next) {
5989
+ if (current === next)
5990
+ return;
5991
+ pointer_exports.Set(root, path, next);
5992
+ }
5993
+ function Visit16(root, path, current, next) {
5994
+ if (IsArray2(next))
5995
+ return ArrayType5(root, path, current, next);
5996
+ if (IsTypedArray(next))
5997
+ return TypedArrayType3(root, path, current, next);
5998
+ if (IsStandardObject2(next))
5999
+ return ObjectType5(root, path, current, next);
6000
+ if (IsValueType(next))
6001
+ return ValueType3(root, path, current, next);
6002
+ }
6003
+ function IsNonMutableValue(value) {
6004
+ return IsTypedArray(value) || IsValueType(value);
6005
+ }
6006
+ function IsMismatchedValue(current, next) {
6007
+ return IsStandardObject2(current) && IsArray2(next) || IsArray2(current) && IsStandardObject2(next);
6008
+ }
6009
+ function Mutate(current, next) {
6010
+ if (IsNonMutableValue(current) || IsNonMutableValue(next))
6011
+ throw new ValueMutateError("Only object and array types can be mutated at the root level");
6012
+ if (IsMismatchedValue(current, next))
6013
+ throw new ValueMutateError("Cannot assign due type mismatch of assignable values");
6014
+ Visit16(current, "", current, next);
6015
+ }
6016
+
6017
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/parse/parse.mjs
6018
+ var ParseError = class extends TypeBoxError {
6019
+ constructor(message) {
6020
+ super(message);
6021
+ }
6022
+ };
6023
+ var ParseRegistry;
6024
+ (function(ParseRegistry2) {
6025
+ const registry = /* @__PURE__ */ new Map([
6026
+ ["Assert", (type, references, value) => {
6027
+ Assert(type, references, value);
6028
+ return value;
6029
+ }],
6030
+ ["Cast", (type, references, value) => Cast(type, references, value)],
6031
+ ["Clean", (type, references, value) => Clean(type, references, value)],
6032
+ ["Clone", (_type, _references, value) => Clone2(value)],
6033
+ ["Convert", (type, references, value) => Convert(type, references, value)],
6034
+ ["Decode", (type, references, value) => HasTransform(type, references) ? TransformDecode(type, references, value) : value],
6035
+ ["Default", (type, references, value) => Default5(type, references, value)],
6036
+ ["Encode", (type, references, value) => HasTransform(type, references) ? TransformEncode(type, references, value) : value]
6037
+ ]);
6038
+ function Delete5(key) {
6039
+ registry.delete(key);
6040
+ }
6041
+ ParseRegistry2.Delete = Delete5;
6042
+ function Set5(key, callback) {
6043
+ registry.set(key, callback);
6044
+ }
6045
+ ParseRegistry2.Set = Set5;
6046
+ function Get4(key) {
6047
+ return registry.get(key);
6048
+ }
6049
+ ParseRegistry2.Get = Get4;
6050
+ })(ParseRegistry || (ParseRegistry = {}));
6051
+ var ParseDefault = [
6052
+ "Clone",
6053
+ "Clean",
6054
+ "Default",
6055
+ "Convert",
6056
+ "Assert",
6057
+ "Decode"
6058
+ ];
6059
+ function ParseValue(operations, type, references, value) {
6060
+ return operations.reduce((value2, operationKey) => {
6061
+ const operation = ParseRegistry.Get(operationKey);
6062
+ if (IsUndefined2(operation))
6063
+ throw new ParseError(`Unable to find Parse operation '${operationKey}'`);
6064
+ return operation(type, references, value2);
6065
+ }, value);
6066
+ }
6067
+ function Parse(...args) {
6068
+ const [operations, schema, references, value] = args.length === 4 ? [args[0], args[1], args[2], args[3]] : args.length === 3 ? IsArray2(args[0]) ? [args[0], args[1], [], args[2]] : [ParseDefault, args[0], args[1], args[2]] : args.length === 2 ? [ParseDefault, args[0], [], args[1]] : (() => {
6069
+ throw new ParseError("Invalid Arguments");
6070
+ })();
6071
+ return ParseValue(operations, schema, references, value);
6072
+ }
6073
+
6074
+ // ../../node_modules/.pnpm/@sinclair+typebox@0.34.52/node_modules/@sinclair/typebox/build/esm/value/value/value.mjs
6075
+ var value_exports2 = {};
6076
+ __export(value_exports2, {
6077
+ Assert: () => Assert,
6078
+ Cast: () => Cast,
6079
+ Check: () => Check,
6080
+ Clean: () => Clean,
6081
+ Clone: () => Clone2,
6082
+ Convert: () => Convert,
6083
+ Create: () => Create2,
6084
+ Decode: () => Decode,
6085
+ Default: () => Default5,
6086
+ Diff: () => Diff,
6087
+ Edit: () => Edit,
6088
+ Encode: () => Encode,
6089
+ Equal: () => Equal,
6090
+ Errors: () => Errors,
6091
+ Hash: () => Hash,
6092
+ Mutate: () => Mutate,
6093
+ Parse: () => Parse,
6094
+ Patch: () => Patch,
6095
+ ValueErrorIterator: () => ValueErrorIterator
6096
+ });
4465
6097
 
4466
6098
  // ../protocol/dist/types.js
4467
6099
  var REF_PATTERN = /^e\d+_\d+$/;
@@ -4480,6 +6112,7 @@ var DELIVERED_ACTION_TYPES = [
4480
6112
  "dblclick",
4481
6113
  "hover",
4482
6114
  "fill",
6115
+ "typeText",
4483
6116
  "clear",
4484
6117
  "check",
4485
6118
  "uncheck",
@@ -4614,6 +6247,7 @@ var ACTION_TYPE_LITERALS = [
4614
6247
  "hover",
4615
6248
  "fill",
4616
6249
  "type",
6250
+ "typeText",
4617
6251
  "clear",
4618
6252
  "press",
4619
6253
  "select",
@@ -4752,6 +6386,14 @@ var FillActionSchema = Type.Object({
4752
6386
  sensitive: Type.Optional(Type.Boolean()),
4753
6387
  expectValue: Type.Optional(Type.String())
4754
6388
  });
6389
+ var TypeTextActionSchema = Type.Object({
6390
+ type: Type.Literal("typeText"),
6391
+ target: Type.Optional(ElementTargetSchema),
6392
+ // Bounded: typing duration scales per character, so an unbounded value
6393
+ // would let one action hold the page's action path for minutes.
6394
+ value: Type.String({ minLength: 1, maxLength: 5e3 }),
6395
+ delay: Type.Optional(Type.Integer({ minimum: 0, maximum: 1e3 }))
6396
+ });
4755
6397
  var SelectActionSchema = Type.Object({
4756
6398
  type: Type.Literal("select"),
4757
6399
  target: ElementTargetSchema,
@@ -4820,6 +6462,7 @@ var PlanStepSchema = Type.Object({
4820
6462
  deltaY: Type.Optional(Type.Number()),
4821
6463
  key: Type.Optional(Type.String()),
4822
6464
  count: Type.Optional(Type.Integer({ minimum: 1, maximum: 20 })),
6465
+ delay: Type.Optional(Type.Integer({ minimum: 0, maximum: 1e3 })),
4823
6466
  direction: Type.Optional(Type.Union([
4824
6467
  Type.Literal("up"),
4825
6468
  Type.Literal("down"),
@@ -4889,6 +6532,7 @@ var ActionSchema = Type.Union([
4889
6532
  DblClickActionSchema,
4890
6533
  HoverActionSchema,
4891
6534
  FillActionSchema,
6535
+ TypeTextActionSchema,
4892
6536
  ClearActionSchema,
4893
6537
  CheckActionSchema,
4894
6538
  UncheckActionSchema,
@@ -5034,7 +6678,7 @@ var Character;
5034
6678
  })(Character || (Character = {}));
5035
6679
  var Identifier;
5036
6680
  (function(Identifier2) {
5037
- function Encode($id) {
6681
+ function Encode2($id) {
5038
6682
  const buffer = [];
5039
6683
  for (let i = 0; i < $id.length; i++) {
5040
6684
  const code = $id.charCodeAt(i);
@@ -5046,7 +6690,7 @@ var Identifier;
5046
6690
  }
5047
6691
  return buffer.join("").replace(/__/g, "_");
5048
6692
  }
5049
- Identifier2.Encode = Encode;
6693
+ Identifier2.Encode = Encode2;
5050
6694
  })(Identifier || (Identifier = {}));
5051
6695
  function StringConstant(value) {
5052
6696
  if (!IsString2(value))
@@ -5098,13 +6742,13 @@ var TypeCompiler;
5098
6742
  function IsAnyOrUnknown2(schema) {
5099
6743
  return schema[Kind] === "Any" || schema[Kind] === "Unknown";
5100
6744
  }
5101
- function* FromAny4(schema, references, value) {
6745
+ function* FromAny5(schema, references, value) {
5102
6746
  yield "true";
5103
6747
  }
5104
- function* FromArgument4(schema, references, value) {
6748
+ function* FromArgument5(schema, references, value) {
5105
6749
  yield "true";
5106
6750
  }
5107
- function* FromArray12(schema, references, value) {
6751
+ function* FromArray18(schema, references, value) {
5108
6752
  yield `Array.isArray(${value})`;
5109
6753
  const [parameter, accumulator] = [CreateParameter("value", "any"), CreateParameter("acc", "number")];
5110
6754
  if (IsNumber2(schema.maxItems))
@@ -5128,10 +6772,10 @@ var TypeCompiler;
5128
6772
  yield `((${parameter}) => { ${block} )(${value})`;
5129
6773
  }
5130
6774
  }
5131
- function* FromAsyncIterator7(schema, references, value) {
6775
+ function* FromAsyncIterator8(schema, references, value) {
5132
6776
  yield `(typeof value === 'object' && Symbol.asyncIterator in ${value})`;
5133
6777
  }
5134
- function* FromBigInt4(schema, references, value) {
6778
+ function* FromBigInt6(schema, references, value) {
5135
6779
  yield `(typeof ${value} === 'bigint')`;
5136
6780
  if (IsBigInt2(schema.exclusiveMaximum))
5137
6781
  yield `${value} < BigInt(${schema.exclusiveMaximum})`;
@@ -5144,13 +6788,13 @@ var TypeCompiler;
5144
6788
  if (IsBigInt2(schema.multipleOf))
5145
6789
  yield `(${value} % BigInt(${schema.multipleOf})) === 0`;
5146
6790
  }
5147
- function* FromBoolean4(schema, references, value) {
6791
+ function* FromBoolean6(schema, references, value) {
5148
6792
  yield `(typeof ${value} === 'boolean')`;
5149
6793
  }
5150
- function* FromConstructor7(schema, references, value) {
5151
- yield* Visit10(schema.returns, references, `${value}.prototype`);
6794
+ function* FromConstructor9(schema, references, value) {
6795
+ yield* Visit17(schema.returns, references, `${value}.prototype`);
5152
6796
  }
5153
- function* FromDate4(schema, references, value) {
6797
+ function* FromDate8(schema, references, value) {
5154
6798
  yield `(${value} instanceof Date) && Number.isFinite(${value}.getTime())`;
5155
6799
  if (IsNumber2(schema.exclusiveMaximumTimestamp))
5156
6800
  yield `${value}.getTime() < ${schema.exclusiveMaximumTimestamp}`;
@@ -5163,16 +6807,16 @@ var TypeCompiler;
5163
6807
  if (IsNumber2(schema.multipleOfTimestamp))
5164
6808
  yield `(${value}.getTime() % ${schema.multipleOfTimestamp}) === 0`;
5165
6809
  }
5166
- function* FromFunction7(schema, references, value) {
6810
+ function* FromFunction8(schema, references, value) {
5167
6811
  yield `(typeof ${value} === 'function')`;
5168
6812
  }
5169
- function* FromImport6(schema, references, value) {
6813
+ function* FromImport11(schema, references, value) {
5170
6814
  const members = globalThis.Object.getOwnPropertyNames(schema.$defs).reduce((result, key) => {
5171
6815
  return [...result, schema.$defs[key]];
5172
6816
  }, []);
5173
- yield* Visit10(Ref(schema.$ref), [...references, ...members], value);
6817
+ yield* Visit17(Ref(schema.$ref), [...references, ...members], value);
5174
6818
  }
5175
- function* FromInteger4(schema, references, value) {
6819
+ function* FromInteger6(schema, references, value) {
5176
6820
  yield `Number.isInteger(${value})`;
5177
6821
  if (IsNumber2(schema.exclusiveMaximum))
5178
6822
  yield `${value} < ${schema.exclusiveMaximum}`;
@@ -5185,7 +6829,7 @@ var TypeCompiler;
5185
6829
  if (IsNumber2(schema.multipleOf))
5186
6830
  yield `(${value} % ${schema.multipleOf}) === 0`;
5187
6831
  }
5188
- function* FromIntersect14(schema, references, value) {
6832
+ function* FromIntersect19(schema, references, value) {
5189
6833
  const check1 = schema.allOf.map((schema2) => CreateExpression(schema2, references, value)).join(" && ");
5190
6834
  if (schema.unevaluatedProperties === false) {
5191
6835
  const keyCheck = CreateVariable(`${new RegExp(KeyOfPattern(schema))};`);
@@ -5199,10 +6843,10 @@ var TypeCompiler;
5199
6843
  yield `(${check1})`;
5200
6844
  }
5201
6845
  }
5202
- function* FromIterator7(schema, references, value) {
6846
+ function* FromIterator8(schema, references, value) {
5203
6847
  yield `(typeof value === 'object' && Symbol.iterator in ${value})`;
5204
6848
  }
5205
- function* FromLiteral5(schema, references, value) {
6849
+ function* FromLiteral7(schema, references, value) {
5206
6850
  if (typeof schema.const === "number" || typeof schema.const === "boolean") {
5207
6851
  yield `(${value} === ${schema.const})`;
5208
6852
  } else if (typeof schema.const === "string") {
@@ -5211,17 +6855,17 @@ var TypeCompiler;
5211
6855
  throw Error("Invalid Literal Value");
5212
6856
  }
5213
6857
  }
5214
- function* FromNever4(schema, references, value) {
6858
+ function* FromNever6(schema, references, value) {
5215
6859
  yield `false`;
5216
6860
  }
5217
- function* FromNot7(schema, references, value) {
6861
+ function* FromNot8(schema, references, value) {
5218
6862
  const expression = CreateExpression(schema.not, references, value);
5219
6863
  yield `(!${expression})`;
5220
6864
  }
5221
- function* FromNull4(schema, references, value) {
6865
+ function* FromNull6(schema, references, value) {
5222
6866
  yield `(${value} === null)`;
5223
6867
  }
5224
- function* FromNumber4(schema, references, value) {
6868
+ function* FromNumber6(schema, references, value) {
5225
6869
  yield Policy.IsNumberLike(value);
5226
6870
  if (IsNumber2(schema.exclusiveMaximum))
5227
6871
  yield `${value} < ${schema.exclusiveMaximum}`;
@@ -5234,7 +6878,7 @@ var TypeCompiler;
5234
6878
  if (IsNumber2(schema.multipleOf))
5235
6879
  yield `(${value} % ${schema.multipleOf}) === 0`;
5236
6880
  }
5237
- function* FromObject13(schema, references, value) {
6881
+ function* FromObject19(schema, references, value) {
5238
6882
  yield Policy.IsObjectLike(value);
5239
6883
  if (IsNumber2(schema.minProperties))
5240
6884
  yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}`;
@@ -5245,7 +6889,7 @@ var TypeCompiler;
5245
6889
  const memberExpression = MemberExpression(value, knownKey);
5246
6890
  const property = schema.properties[knownKey];
5247
6891
  if (schema.required && schema.required.includes(knownKey)) {
5248
- yield* Visit10(property, references, memberExpression);
6892
+ yield* Visit17(property, references, memberExpression);
5249
6893
  if (ExtendsUndefinedCheck(property) || IsAnyOrUnknown2(property))
5250
6894
  yield `(${StringConstant(knownKey)} in ${value})`;
5251
6895
  } else {
@@ -5267,10 +6911,10 @@ var TypeCompiler;
5267
6911
  yield `(Object.getOwnPropertyNames(${value}).every(key => ${keys}.includes(key) || ${expression}))`;
5268
6912
  }
5269
6913
  }
5270
- function* FromPromise7(schema, references, value) {
6914
+ function* FromPromise8(schema, references, value) {
5271
6915
  yield `${value} instanceof Promise`;
5272
6916
  }
5273
- function* FromRecord9(schema, references, value) {
6917
+ function* FromRecord14(schema, references, value) {
5274
6918
  yield Policy.IsRecordLike(value);
5275
6919
  if (IsNumber2(schema.minProperties))
5276
6920
  yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}`;
@@ -5283,13 +6927,13 @@ var TypeCompiler;
5283
6927
  const expression = `(${variable}.test(key) ? ${check1} : ${check2})`;
5284
6928
  yield `(Object.entries(${value}).every(([key, value]) => ${expression}))`;
5285
6929
  }
5286
- function* FromRef10(schema, references, value) {
6930
+ function* FromRef15(schema, references, value) {
5287
6931
  const target = Deref(schema, references);
5288
6932
  if (state.functions.has(schema.$ref))
5289
6933
  return yield `${CreateFunctionName(schema.$ref)}(${value})`;
5290
- yield* Visit10(target, references, value);
6934
+ yield* Visit17(target, references, value);
5291
6935
  }
5292
- function* FromRegExp4(schema, references, value) {
6936
+ function* FromRegExp5(schema, references, value) {
5293
6937
  const variable = CreateVariable(`${new RegExp(schema.source, schema.flags)};`);
5294
6938
  yield `(typeof ${value} === 'string')`;
5295
6939
  if (IsNumber2(schema.maxLength))
@@ -5298,7 +6942,7 @@ var TypeCompiler;
5298
6942
  yield `${value}.length >= ${schema.minLength}`;
5299
6943
  yield `${variable}.test(${value})`;
5300
6944
  }
5301
- function* FromString4(schema, references, value) {
6945
+ function* FromString6(schema, references, value) {
5302
6946
  yield `(typeof ${value} === 'string')`;
5303
6947
  if (IsNumber2(schema.maxLength))
5304
6948
  yield `${value}.length <= ${schema.maxLength}`;
@@ -5312,18 +6956,18 @@ var TypeCompiler;
5312
6956
  yield `format(${StringConstant(schema.format)}, ${value})`;
5313
6957
  }
5314
6958
  }
5315
- function* FromSymbol4(schema, references, value) {
6959
+ function* FromSymbol6(schema, references, value) {
5316
6960
  yield `(typeof ${value} === 'symbol')`;
5317
6961
  }
5318
- function* FromTemplateLiteral6(schema, references, value) {
6962
+ function* FromTemplateLiteral7(schema, references, value) {
5319
6963
  yield `(typeof ${value} === 'string')`;
5320
6964
  const variable = CreateVariable(`${new RegExp(schema.pattern)};`);
5321
6965
  yield `${variable}.test(${value})`;
5322
6966
  }
5323
- function* FromThis6(schema, references, value) {
6967
+ function* FromThis11(schema, references, value) {
5324
6968
  yield `${CreateFunctionName(schema.$ref)}(${value})`;
5325
6969
  }
5326
- function* FromTuple11(schema, references, value) {
6970
+ function* FromTuple16(schema, references, value) {
5327
6971
  yield `Array.isArray(${value})`;
5328
6972
  if (schema.items === void 0)
5329
6973
  return yield `${value}.length === 0`;
@@ -5333,32 +6977,32 @@ var TypeCompiler;
5333
6977
  yield `${expression}`;
5334
6978
  }
5335
6979
  }
5336
- function* FromUndefined4(schema, references, value) {
6980
+ function* FromUndefined6(schema, references, value) {
5337
6981
  yield `${value} === undefined`;
5338
6982
  }
5339
- function* FromUnion16(schema, references, value) {
6983
+ function* FromUnion21(schema, references, value) {
5340
6984
  const expressions = schema.anyOf.map((schema2) => CreateExpression(schema2, references, value));
5341
6985
  yield `(${expressions.join(" || ")})`;
5342
6986
  }
5343
- function* FromUint8Array4(schema, references, value) {
6987
+ function* FromUint8Array5(schema, references, value) {
5344
6988
  yield `${value} instanceof Uint8Array`;
5345
6989
  if (IsNumber2(schema.maxByteLength))
5346
6990
  yield `(${value}.length <= ${schema.maxByteLength})`;
5347
6991
  if (IsNumber2(schema.minByteLength))
5348
6992
  yield `(${value}.length >= ${schema.minByteLength})`;
5349
6993
  }
5350
- function* FromUnknown4(schema, references, value) {
6994
+ function* FromUnknown5(schema, references, value) {
5351
6995
  yield "true";
5352
6996
  }
5353
- function* FromVoid4(schema, references, value) {
6997
+ function* FromVoid5(schema, references, value) {
5354
6998
  yield Policy.IsVoidLike(value);
5355
6999
  }
5356
- function* FromKind3(schema, references, value) {
7000
+ function* FromKind4(schema, references, value) {
5357
7001
  const instance = state.instances.size;
5358
7002
  state.instances.set(instance, schema);
5359
7003
  yield `kind(${StringConstant(schema[Kind])}, ${instance}, ${value})`;
5360
7004
  }
5361
- function* Visit10(schema, references, value, useHoisting = true) {
7005
+ function* Visit17(schema, references, value, useHoisting = true) {
5362
7006
  const references_ = IsString2(schema.$id) ? [...references, schema] : references;
5363
7007
  const schema_ = schema;
5364
7008
  if (useHoisting && IsString2(schema.$id)) {
@@ -5374,75 +7018,75 @@ var TypeCompiler;
5374
7018
  }
5375
7019
  switch (schema_[Kind]) {
5376
7020
  case "Any":
5377
- return yield* FromAny4(schema_, references_, value);
7021
+ return yield* FromAny5(schema_, references_, value);
5378
7022
  case "Argument":
5379
- return yield* FromArgument4(schema_, references_, value);
7023
+ return yield* FromArgument5(schema_, references_, value);
5380
7024
  case "Array":
5381
- return yield* FromArray12(schema_, references_, value);
7025
+ return yield* FromArray18(schema_, references_, value);
5382
7026
  case "AsyncIterator":
5383
- return yield* FromAsyncIterator7(schema_, references_, value);
7027
+ return yield* FromAsyncIterator8(schema_, references_, value);
5384
7028
  case "BigInt":
5385
- return yield* FromBigInt4(schema_, references_, value);
7029
+ return yield* FromBigInt6(schema_, references_, value);
5386
7030
  case "Boolean":
5387
- return yield* FromBoolean4(schema_, references_, value);
7031
+ return yield* FromBoolean6(schema_, references_, value);
5388
7032
  case "Constructor":
5389
- return yield* FromConstructor7(schema_, references_, value);
7033
+ return yield* FromConstructor9(schema_, references_, value);
5390
7034
  case "Date":
5391
- return yield* FromDate4(schema_, references_, value);
7035
+ return yield* FromDate8(schema_, references_, value);
5392
7036
  case "Function":
5393
- return yield* FromFunction7(schema_, references_, value);
7037
+ return yield* FromFunction8(schema_, references_, value);
5394
7038
  case "Import":
5395
- return yield* FromImport6(schema_, references_, value);
7039
+ return yield* FromImport11(schema_, references_, value);
5396
7040
  case "Integer":
5397
- return yield* FromInteger4(schema_, references_, value);
7041
+ return yield* FromInteger6(schema_, references_, value);
5398
7042
  case "Intersect":
5399
- return yield* FromIntersect14(schema_, references_, value);
7043
+ return yield* FromIntersect19(schema_, references_, value);
5400
7044
  case "Iterator":
5401
- return yield* FromIterator7(schema_, references_, value);
7045
+ return yield* FromIterator8(schema_, references_, value);
5402
7046
  case "Literal":
5403
- return yield* FromLiteral5(schema_, references_, value);
7047
+ return yield* FromLiteral7(schema_, references_, value);
5404
7048
  case "Never":
5405
- return yield* FromNever4(schema_, references_, value);
7049
+ return yield* FromNever6(schema_, references_, value);
5406
7050
  case "Not":
5407
- return yield* FromNot7(schema_, references_, value);
7051
+ return yield* FromNot8(schema_, references_, value);
5408
7052
  case "Null":
5409
- return yield* FromNull4(schema_, references_, value);
7053
+ return yield* FromNull6(schema_, references_, value);
5410
7054
  case "Number":
5411
- return yield* FromNumber4(schema_, references_, value);
7055
+ return yield* FromNumber6(schema_, references_, value);
5412
7056
  case "Object":
5413
- return yield* FromObject13(schema_, references_, value);
7057
+ return yield* FromObject19(schema_, references_, value);
5414
7058
  case "Promise":
5415
- return yield* FromPromise7(schema_, references_, value);
7059
+ return yield* FromPromise8(schema_, references_, value);
5416
7060
  case "Record":
5417
- return yield* FromRecord9(schema_, references_, value);
7061
+ return yield* FromRecord14(schema_, references_, value);
5418
7062
  case "Ref":
5419
- return yield* FromRef10(schema_, references_, value);
7063
+ return yield* FromRef15(schema_, references_, value);
5420
7064
  case "RegExp":
5421
- return yield* FromRegExp4(schema_, references_, value);
7065
+ return yield* FromRegExp5(schema_, references_, value);
5422
7066
  case "String":
5423
- return yield* FromString4(schema_, references_, value);
7067
+ return yield* FromString6(schema_, references_, value);
5424
7068
  case "Symbol":
5425
- return yield* FromSymbol4(schema_, references_, value);
7069
+ return yield* FromSymbol6(schema_, references_, value);
5426
7070
  case "TemplateLiteral":
5427
- return yield* FromTemplateLiteral6(schema_, references_, value);
7071
+ return yield* FromTemplateLiteral7(schema_, references_, value);
5428
7072
  case "This":
5429
- return yield* FromThis6(schema_, references_, value);
7073
+ return yield* FromThis11(schema_, references_, value);
5430
7074
  case "Tuple":
5431
- return yield* FromTuple11(schema_, references_, value);
7075
+ return yield* FromTuple16(schema_, references_, value);
5432
7076
  case "Undefined":
5433
- return yield* FromUndefined4(schema_, references_, value);
7077
+ return yield* FromUndefined6(schema_, references_, value);
5434
7078
  case "Union":
5435
- return yield* FromUnion16(schema_, references_, value);
7079
+ return yield* FromUnion21(schema_, references_, value);
5436
7080
  case "Uint8Array":
5437
- return yield* FromUint8Array4(schema_, references_, value);
7081
+ return yield* FromUint8Array5(schema_, references_, value);
5438
7082
  case "Unknown":
5439
- return yield* FromUnknown4(schema_, references_, value);
7083
+ return yield* FromUnknown5(schema_, references_, value);
5440
7084
  case "Void":
5441
- return yield* FromVoid4(schema_, references_, value);
7085
+ return yield* FromVoid5(schema_, references_, value);
5442
7086
  default:
5443
7087
  if (!type_exports2.Has(schema_[Kind]))
5444
7088
  throw new TypeCompilerUnknownTypeError(schema);
5445
- return yield* FromKind3(schema_, references_, value);
7089
+ return yield* FromKind4(schema_, references_, value);
5446
7090
  }
5447
7091
  }
5448
7092
  const state = {
@@ -5456,7 +7100,7 @@ var TypeCompiler;
5456
7100
  // exterior kind instances
5457
7101
  };
5458
7102
  function CreateExpression(schema, references, value, useHoisting = true) {
5459
- return `(${[...Visit10(schema, references, value, useHoisting)].join(" && ")})`;
7103
+ return `(${[...Visit17(schema, references, value, useHoisting)].join(" && ")})`;
5460
7104
  }
5461
7105
  function CreateFunctionName($id) {
5462
7106
  return `check_${Identifier.Encode($id)}`;
@@ -5470,7 +7114,7 @@ var TypeCompiler;
5470
7114
  const [newline, pad] = ["\n", (length) => "".padStart(length, " ")];
5471
7115
  const parameter = CreateParameter("value", "any");
5472
7116
  const returns = CreateReturns("boolean");
5473
- const expression = [...Visit10(schema, references, value, useHoisting)].map((expression2) => `${pad(4)}${expression2}`).join(` &&${newline}`);
7117
+ const expression = [...Visit17(schema, references, value, useHoisting)].map((expression2) => `${pad(4)}${expression2}`).join(` &&${newline}`);
5474
7118
  return `function ${name}(${parameter})${returns} {${newline}${pad(2)}return (${newline}${expression}${newline}${pad(2)})
5475
7119
  }`;
5476
7120
  }
@@ -5716,6 +7360,95 @@ var ControlGrantSchema = Type.Intersect([
5716
7360
  Type.Object({ token: Type.String() })
5717
7361
  ]);
5718
7362
 
7363
+ // ../protocol/dist/autofill.js
7364
+ var text = () => Type.String({ minLength: 1, maxLength: 512 });
7365
+ var strict = { additionalProperties: false };
7366
+ var AutofillMatchSchema = Type.Object({
7367
+ role: Type.Optional(text()),
7368
+ label: Type.Optional(text()),
7369
+ labelRegex: Type.Optional(text()),
7370
+ dataAutomationId: Type.Optional(text()),
7371
+ block: Type.Optional(Type.Object({ id: Type.Optional(text()), label: Type.Optional(text()) }, { ...strict, minProperties: 1 }))
7372
+ }, { ...strict, minProperties: 1 });
7373
+ var AutofillRequestSchema = Type.Object({
7374
+ fields: Type.Array(Type.Object({
7375
+ match: AutofillMatchSchema,
7376
+ value: Type.Optional(Type.String({ maxLength: 8192 })),
7377
+ option: Type.Optional(Type.Object({ value: Type.String({ maxLength: 8192 }) }, strict)),
7378
+ verify: Type.Optional(Type.Union([Type.Literal("exact"), Type.Literal("none")])),
7379
+ strategy: Type.Optional(Type.Union([Type.Literal("native-input"), Type.Literal("native-select")]))
7380
+ }, strict), { minItems: 1, maxItems: 50 }),
7381
+ policy: Type.Optional(Type.Object({
7382
+ onAmbiguous: Type.Optional(Type.Union([Type.Literal("fail"), Type.Literal("skip")])),
7383
+ onVerifyFail: Type.Optional(Type.Union([Type.Literal("fail"), Type.Literal("skip"), Type.Literal("retry")])),
7384
+ maxReobserve: Type.Optional(Type.Integer({ minimum: 0, maximum: 5 })),
7385
+ settleMs: Type.Optional(Type.Integer({ minimum: 0, maximum: 2e3 })),
7386
+ timeoutMs: Type.Optional(Type.Integer({ minimum: 1, maximum: 24e4 }))
7387
+ }, strict))
7388
+ }, strict);
7389
+ var AutofillReceiptSchema = Type.Object({
7390
+ field: Type.Integer({ minimum: 0, maximum: 49 }),
7391
+ match: AutofillMatchSchema,
7392
+ resolvedRef: Type.Optional(Type.String()),
7393
+ blockIdentity: Type.Optional(Type.String()),
7394
+ actionId: Type.Optional(Type.String()),
7395
+ status: Type.Union(["verified", "unverified", "skipped", "failed", "uncertain", "not_attempted"].map((value) => Type.Literal(value))),
7396
+ verified: Type.Boolean(),
7397
+ actual: Type.Optional(Type.String({ maxLength: 512 })),
7398
+ actualTruncated: Type.Optional(Type.Boolean()),
7399
+ error: Type.Optional(Type.Object({ code: Type.String(), message: Type.String() }, strict))
7400
+ }, strict);
7401
+ var AutofillReportSchema = Type.Object({
7402
+ ok: Type.Boolean(),
7403
+ receipts: Type.Array(AutofillReceiptSchema, { maxItems: 50 }),
7404
+ elapsedMs: Type.Number({ minimum: 0 }),
7405
+ snapshot: Type.Optional(Type.Object({
7406
+ artifactId: Type.String(),
7407
+ contentType: Type.Optional(Type.String()),
7408
+ sizeBytes: Type.Optional(Type.Integer({ minimum: 0 })),
7409
+ warnings: Type.Optional(Type.Array(Type.String()))
7410
+ }, strict)),
7411
+ snapshotError: Type.Optional(Type.String())
7412
+ }, strict);
7413
+ function labelPattern(pattern) {
7414
+ const start = pattern.startsWith("^");
7415
+ const end = pattern.endsWith("$");
7416
+ const body = pattern.slice(start ? 1 : 0, end ? -1 : void 0);
7417
+ const parts = body.split(".*");
7418
+ if (parts.some((p) => /[\\[\]{}()+?*|.^$]/.test(p)))
7419
+ throw new Error("labelRegex supports only literals, .* and optional ^/$ anchors");
7420
+ return (label) => {
7421
+ let offset = 0;
7422
+ for (const [index, part] of parts.entries()) {
7423
+ const at = label.indexOf(part, offset);
7424
+ if (at < 0 || index === 0 && start && at !== 0)
7425
+ return false;
7426
+ offset = at + part.length;
7427
+ }
7428
+ if (!end)
7429
+ return true;
7430
+ const last = parts[parts.length - 1] ?? "";
7431
+ return label.endsWith(last) && (parts.length > 1 || !start || offset === label.length);
7432
+ };
7433
+ }
7434
+ function parseAutofillRequest(input) {
7435
+ if (!value_exports2.Check(AutofillRequestSchema, input))
7436
+ throw new Error("Invalid autofill request: bounded fields[] and policy required; unknown properties are rejected");
7437
+ const request = structuredClone(input);
7438
+ for (const field of request.fields) {
7439
+ if (field.value === void 0 === (field.option === void 0))
7440
+ throw new Error("Each autofill field requires exactly one of value or option.value");
7441
+ const match = field.match;
7442
+ if (!match.label && !match.labelRegex && !match.dataAutomationId)
7443
+ throw new Error("Each autofill match requires label, labelRegex or dataAutomationId");
7444
+ if (match.labelRegex !== void 0)
7445
+ labelPattern(match.labelRegex);
7446
+ if (field.strategy === "native-input" && field.value === void 0 || field.strategy === "native-select" && field.option === void 0)
7447
+ throw new Error("Autofill strategy does not match value/option");
7448
+ }
7449
+ return request;
7450
+ }
7451
+
5719
7452
  // ../sdk-typescript/dist/client.js
5720
7453
  var AgentBrowserError = class extends Error {
5721
7454
  code;
@@ -5745,7 +7478,7 @@ var HttpClient = class {
5745
7478
  async requestJson(path, init = {}) {
5746
7479
  const operationId = path.startsWith("/v1/sessions/") && !path.includes("/control") && init.method && init.method !== "GET" ? init.operationId ?? this.headers["x-agentbrowser-operation-id"] ?? crypto.randomUUID() : void 0;
5747
7480
  const controller = new AbortController();
5748
- const timeoutId = setTimeout(() => controller.abort(), this.timeoutMs);
7481
+ const timeoutId = setTimeout(() => controller.abort(), init.timeoutMs ?? this.timeoutMs);
5749
7482
  try {
5750
7483
  const response = await fetch(`${this.baseUrl}${path}`, {
5751
7484
  method: init.method ?? "GET",
@@ -5887,7 +7620,15 @@ var SessionsClient = class {
5887
7620
  const body = await this.http.requestJson(`/v1/sessions/${sessionId}/events/replay${query}`);
5888
7621
  return body.events;
5889
7622
  }
5890
- /** TD-BROWSER-8: execute a batched action plan; returns per-step results. */
7623
+ /** Structured native form filling; choose an operation ID before dispatch. */
7624
+ async autofill(sessionId, pageId, request, options = {}) {
7625
+ return this.http.requestJson(`/v1/sessions/${sessionId}/pages/${pageId}/autofill`, {
7626
+ method: "POST",
7627
+ body: request,
7628
+ ...options,
7629
+ timeoutMs: Math.min(24e4, request.policy?.timeoutMs ?? 24e4) + 3e4
7630
+ });
7631
+ }
5891
7632
  async plan(sessionId, pageId, actions, options = {}) {
5892
7633
  return this.http.requestJson(`/v1/sessions/${sessionId}/pages/${pageId}/plan`, {
5893
7634
  method: "POST",
@@ -6093,6 +7834,35 @@ function buildTools(client) {
6093
7834
  return await client.sessions.snapshot(sessionId, pageId);
6094
7835
  }
6095
7836
  },
7837
+ {
7838
+ name: "browser_autofill",
7839
+ description: "Fill and verify structured fields in one serial server operation. Match labels within a unique fieldset block (id or legend label). Supports native text inputs and single selects; custom widgets are refused. Verification retries only read; uncertain writes stop the batch. Returns per-field receipts and an authorized raw HTML artifact. Performs no explicit submit action; page input/change handlers may commit effects. After a lost response, inspect browser_operation before any further write.",
7840
+ inputSchema: {
7841
+ type: "object",
7842
+ additionalProperties: false,
7843
+ properties: {
7844
+ sessionId: { type: "string" },
7845
+ pageId: { type: "string" },
7846
+ ...AutofillRequestSchema.properties
7847
+ },
7848
+ required: ["sessionId", "pageId", "fields"]
7849
+ },
7850
+ handler: async (args) => {
7851
+ const [sessionId, pageId] = sessionAndPage(args);
7852
+ if (!client.sessions.autofill)
7853
+ throw new UsageError("Client does not support autofill");
7854
+ let payload;
7855
+ try {
7856
+ payload = parseAutofillRequest({
7857
+ fields: args.fields,
7858
+ ...args.policy !== void 0 ? { policy: args.policy } : {}
7859
+ });
7860
+ } catch (error2) {
7861
+ throw new UsageError(error2 instanceof Error ? error2.message : "Invalid autofill request");
7862
+ }
7863
+ return await client.sessions.autofill(sessionId, pageId, payload, ...operationOptions(args));
7864
+ }
7865
+ },
6096
7866
  {
6097
7867
  name: "browser_plan",
6098
7868
  description: "Execute a batched action plan in one call (TD-BROWSER-8). Each action: {action: fill|click|press|scroll, target?: {ref}, value?, key?}. Steps run sequentially; the first hard failure aborts with per-step results. Best paired with browser_snapshot: address refs from its `fields` in one round trip. A step for a field that only appears after a prior step (Phase 2) may declare `waitForLabel` (substring match on the element name) instead of `target` - the executor waits for it to appear (bounded by `waitMs`, default 5000) and resolves the ref itself; a miss aborts the plan with a typed PLAN_WAIT_TIMEOUT. On forms with repeated field labels (multi-section layouts, generically-labeled toggles), keep a plan to one section or logical group and re-observe between sections: self-heal matches stale refs by role and label, so identical labels make long plans abort mid-way even when every ref was valid at plan start.",
@@ -6214,7 +7984,7 @@ function buildTools(client) {
6214
7984
  },
6215
7985
  {
6216
7986
  name: "browser_act",
6217
- description: 'Perform an action on an element by ref: click, dblclick, hover, fill, clear, check, uncheck, select, upload, scroll, press, wait, goBack, goForward, reload, or handle a dialog. upload attaches local file(s) (paths array, absolute paths only) to a file input; its target ref is optional, but when a page has several input[type=file] elements (hidden Dropzone inputs are common), call browser_observe with include:["fileInputs"] first and pass target.ref; with no ref the page must have exactly one input[type=file]. Elements are addressed by the ref from browser_observe, never by CSS selector or XPath. If the page changed since the observation, the action fails with STALE_TARGET: call browser_observe again and use the new refs; do not retry the old one. Pass remap: true to opt into healing a replaced control: the stack re-observes, matches the original element by role and name, and retries when exactly one candidate survives; the response reports the ref span as remap {from, to}. When a targeted action times out (ACTION_TIMEOUT), the failure details name the ref, what element covers it (blockedBy) and a screenshot artifact id captured at the deadline, so one retry after observing is usually enough. press accepts count (1-20): the keypress repeats inside one action with a single revision bump - use it for spinbutton-style controls, where the revision bump from each individual press would invalidate the ref before the next press. After opening a custom dropdown or combobox, its options often render 0.5-2s later: follow with a wait action ({action: "wait", condition: {until: "selectorVisible", selector: ...}} or "minElements") or re-observe before reading the options; filling a custom combobox input alone may not open the menu and the typed text can be dropped on blur - select from the rendered option refs instead.',
7987
+ description: 'Perform an action on an element by ref: click, dblclick, hover, fill, clear, check, uncheck, select, upload, scroll, press, wait, goBack, goForward, reload, or handle a dialog. upload attaches local file(s) (paths array, absolute paths only) to a file input; its target ref is optional, but when a page has several input[type=file] elements (hidden Dropzone inputs are common), call browser_observe with include:["fileInputs"] first and pass target.ref; with no ref the page must have exactly one input[type=file]. Elements are addressed by the ref from browser_observe, never by CSS selector or XPath. If the page changed since the observation, the action fails with STALE_TARGET: call browser_observe again and use the new refs; do not retry the old one. Pass remap: true to opt into healing a replaced control: the stack re-observes, matches the original element by role and name, and retries when exactly one candidate survives; the response reports the ref span as remap {from, to}. When a targeted action times out (ACTION_TIMEOUT), the failure details name the ref, what element covers it (blockedBy) and a screenshot artifact id captured at the deadline, so one retry after observing is usually enough. typeText types text as real per-character keystrokes (unlike fill, which sets the value and fires one input event): use it for search-as-you-type boxes and typeahead filters that ignore programmatic value setting; delay (0-1000ms) spaces out the characters for debounced filters. press accepts count (1-20): the keypress repeats inside one action with a single revision bump - use it for spinbutton-style controls, where the revision bump from each individual press would invalidate the ref before the next press. After opening a custom dropdown or combobox, its options often render 0.5-2s later: follow with a wait action ({action: "wait", condition: {until: "selectorVisible", selector: ...}} or "minElements") or re-observe before reading the options; filling a custom combobox input alone may not open the menu and the typed text can be dropped on blur - select from the rendered option refs instead.',
6218
7988
  inputSchema: {
6219
7989
  type: "object",
6220
7990
  properties: {
@@ -6387,7 +8157,7 @@ function buildMcpServer(deps) {
6387
8157
  for (const tool of tools) {
6388
8158
  if (deps.sessionId && Array.isArray(tool.inputSchema.required))
6389
8159
  tool.inputSchema.required = tool.inputSchema.required.filter((name) => name !== "sessionId");
6390
- if (["browser_act", "browser_plan", "browser_navigate"].includes(tool.name)) {
8160
+ if (["browser_act", "browser_plan", "browser_autofill", "browser_navigate"].includes(tool.name)) {
6391
8161
  tool.inputSchema.properties.operationId = {
6392
8162
  type: "string",
6393
8163
  pattern: "^[a-zA-Z0-9_-]{1,128}$",
@@ -6471,7 +8241,7 @@ function buildMcpServer(deps) {
6471
8241
  try {
6472
8242
  if (deps.sessionId && args.sessionId !== void 0 && args.sessionId !== deps.sessionId)
6473
8243
  throw new UsageError("This MCP connection is bound to another session");
6474
- if (deps.sessionId && ["browser_act", "browser_plan", "browser_navigate"].includes(name) && args.operationId === void 0)
8244
+ if (deps.sessionId && ["browser_act", "browser_plan", "browser_autofill", "browser_navigate"].includes(name) && args.operationId === void 0)
6475
8245
  throw new UsageError("operationId is required for a delegated mutation; choose it before dispatch so a lost response can be reconciled");
6476
8246
  const result = await tool.handler(deps.sessionId ? { ...args, sessionId: deps.sessionId } : args);
6477
8247
  return ok(message.id, textResult(result));