holosphere 1.3.0-alpha3 → 1.3.0-alpha5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * HoloSphere Bundle v1.3.0-alpha3
2
+ * HoloSphere Bundle v1.3.0-alpha5
3
3
  * Holonic Geospatial Communication Infrastructure
4
4
  *
5
5
  * Includes:
@@ -9,7 +9,7 @@
9
9
  * - Ajv (JSON schema validation)
10
10
  *
11
11
  * Usage:
12
- * <script src="https://unpkg.com/holosphere@1.3.0-alpha3/holosphere-bundle.js"></script>
12
+ * <script src="https://unpkg.com/holosphere@1.3.0-alpha5/holosphere-bundle.js"></script>
13
13
  * <script>
14
14
  * const hs = new HoloSphere('myapp');
15
15
  * </script>
@@ -55,9 +55,9 @@ var HoloSphere = (() => {
55
55
  ));
56
56
  var __toCommonJS = (mod2) => __copyProps(__defProp({}, "__esModule", { value: true }), mod2);
57
57
 
58
- // node_modules/gun/gun.js
58
+ // node_modules/.pnpm/gun@0.2020.1241/node_modules/gun/gun.js
59
59
  var require_gun = __commonJS({
60
- "node_modules/gun/gun.js"(exports, module) {
60
+ "node_modules/.pnpm/gun@0.2020.1241/node_modules/gun/gun.js"(exports, module) {
61
61
  (function() {
62
62
  function USE(arg, req) {
63
63
  return req ? __require(arg) : arg.slice ? USE[R(arg)] : function(mod2, path) {
@@ -3145,16 +3145,16 @@ var HoloSphere = (() => {
3145
3145
  }
3146
3146
  });
3147
3147
 
3148
- // node_modules/gun/browser.js
3148
+ // node_modules/.pnpm/gun@0.2020.1241/node_modules/gun/browser.js
3149
3149
  var require_browser = __commonJS({
3150
- "node_modules/gun/browser.js"(exports, module) {
3150
+ "node_modules/.pnpm/gun@0.2020.1241/node_modules/gun/browser.js"(exports, module) {
3151
3151
  module.exports = require_gun();
3152
3152
  }
3153
3153
  });
3154
3154
 
3155
- // node_modules/ajv/dist/compile/codegen/code.js
3155
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js
3156
3156
  var require_code = __commonJS({
3157
- "node_modules/ajv/dist/compile/codegen/code.js"(exports) {
3157
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js"(exports) {
3158
3158
  "use strict";
3159
3159
  Object.defineProperty(exports, "__esModule", { value: true });
3160
3160
  exports.regexpCode = exports.getEsmExportName = exports.getProperty = exports.safeStringify = exports.stringify = exports.strConcat = exports.addCodeArg = exports.str = exports._ = exports.nil = exports._Code = exports.Name = exports.IDENTIFIER = exports._CodeOrName = void 0;
@@ -3306,9 +3306,9 @@ var HoloSphere = (() => {
3306
3306
  }
3307
3307
  });
3308
3308
 
3309
- // node_modules/ajv/dist/compile/codegen/scope.js
3309
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js
3310
3310
  var require_scope = __commonJS({
3311
- "node_modules/ajv/dist/compile/codegen/scope.js"(exports) {
3311
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js"(exports) {
3312
3312
  "use strict";
3313
3313
  Object.defineProperty(exports, "__esModule", { value: true });
3314
3314
  exports.ValueScope = exports.ValueScopeName = exports.Scope = exports.varKinds = exports.UsedValueState = void 0;
@@ -3451,9 +3451,9 @@ var HoloSphere = (() => {
3451
3451
  }
3452
3452
  });
3453
3453
 
3454
- // node_modules/ajv/dist/compile/codegen/index.js
3454
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js
3455
3455
  var require_codegen = __commonJS({
3456
- "node_modules/ajv/dist/compile/codegen/index.js"(exports) {
3456
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js"(exports) {
3457
3457
  "use strict";
3458
3458
  Object.defineProperty(exports, "__esModule", { value: true });
3459
3459
  exports.or = exports.and = exports.not = exports.CodeGen = exports.operators = exports.varKinds = exports.ValueScopeName = exports.ValueScope = exports.Scope = exports.Name = exports.regexpCode = exports.stringify = exports.getProperty = exports.nil = exports.strConcat = exports.str = exports._ = void 0;
@@ -4171,9 +4171,9 @@ var HoloSphere = (() => {
4171
4171
  }
4172
4172
  });
4173
4173
 
4174
- // node_modules/ajv/dist/compile/util.js
4174
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/util.js
4175
4175
  var require_util = __commonJS({
4176
- "node_modules/ajv/dist/compile/util.js"(exports) {
4176
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/util.js"(exports) {
4177
4177
  "use strict";
4178
4178
  Object.defineProperty(exports, "__esModule", { value: true });
4179
4179
  exports.checkStrictMode = exports.getErrorPath = exports.Type = exports.useFunc = exports.setEvaluated = exports.evaluatedPropsToName = exports.mergeEvaluated = exports.eachItem = exports.unescapeJsonPointer = exports.escapeJsonPointer = exports.escapeFragment = exports.unescapeFragment = exports.schemaRefOrVal = exports.schemaHasRulesButRef = exports.schemaHasRules = exports.checkUnknownRules = exports.alwaysValidSchema = exports.toHash = void 0;
@@ -4338,9 +4338,9 @@ var HoloSphere = (() => {
4338
4338
  }
4339
4339
  });
4340
4340
 
4341
- // node_modules/ajv/dist/compile/names.js
4341
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/names.js
4342
4342
  var require_names = __commonJS({
4343
- "node_modules/ajv/dist/compile/names.js"(exports) {
4343
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/names.js"(exports) {
4344
4344
  "use strict";
4345
4345
  Object.defineProperty(exports, "__esModule", { value: true });
4346
4346
  var codegen_1 = require_codegen();
@@ -4377,9 +4377,9 @@ var HoloSphere = (() => {
4377
4377
  }
4378
4378
  });
4379
4379
 
4380
- // node_modules/ajv/dist/compile/errors.js
4380
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js
4381
4381
  var require_errors = __commonJS({
4382
- "node_modules/ajv/dist/compile/errors.js"(exports) {
4382
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js"(exports) {
4383
4383
  "use strict";
4384
4384
  Object.defineProperty(exports, "__esModule", { value: true });
4385
4385
  exports.extendErrors = exports.resetErrorsCount = exports.reportExtraError = exports.reportError = exports.keyword$DataError = exports.keywordError = void 0;
@@ -4499,9 +4499,9 @@ var HoloSphere = (() => {
4499
4499
  }
4500
4500
  });
4501
4501
 
4502
- // node_modules/ajv/dist/compile/validate/boolSchema.js
4502
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js
4503
4503
  var require_boolSchema = __commonJS({
4504
- "node_modules/ajv/dist/compile/validate/boolSchema.js"(exports) {
4504
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js"(exports) {
4505
4505
  "use strict";
4506
4506
  Object.defineProperty(exports, "__esModule", { value: true });
4507
4507
  exports.boolOrEmptySchema = exports.topBoolOrEmptySchema = void 0;
@@ -4550,9 +4550,9 @@ var HoloSphere = (() => {
4550
4550
  }
4551
4551
  });
4552
4552
 
4553
- // node_modules/ajv/dist/compile/rules.js
4553
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js
4554
4554
  var require_rules = __commonJS({
4555
- "node_modules/ajv/dist/compile/rules.js"(exports) {
4555
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js"(exports) {
4556
4556
  "use strict";
4557
4557
  Object.defineProperty(exports, "__esModule", { value: true });
4558
4558
  exports.getRules = exports.isJSONType = void 0;
@@ -4581,9 +4581,9 @@ var HoloSphere = (() => {
4581
4581
  }
4582
4582
  });
4583
4583
 
4584
- // node_modules/ajv/dist/compile/validate/applicability.js
4584
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/applicability.js
4585
4585
  var require_applicability = __commonJS({
4586
- "node_modules/ajv/dist/compile/validate/applicability.js"(exports) {
4586
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/applicability.js"(exports) {
4587
4587
  "use strict";
4588
4588
  Object.defineProperty(exports, "__esModule", { value: true });
4589
4589
  exports.shouldUseRule = exports.shouldUseGroup = exports.schemaHasRulesForType = void 0;
@@ -4604,9 +4604,9 @@ var HoloSphere = (() => {
4604
4604
  }
4605
4605
  });
4606
4606
 
4607
- // node_modules/ajv/dist/compile/validate/dataType.js
4607
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js
4608
4608
  var require_dataType = __commonJS({
4609
- "node_modules/ajv/dist/compile/validate/dataType.js"(exports) {
4609
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js"(exports) {
4610
4610
  "use strict";
4611
4611
  Object.defineProperty(exports, "__esModule", { value: true });
4612
4612
  exports.reportTypeError = exports.checkDataTypes = exports.checkDataType = exports.coerceAndCheckDataType = exports.getJSONTypes = exports.getSchemaTypes = exports.DataType = void 0;
@@ -4788,9 +4788,9 @@ var HoloSphere = (() => {
4788
4788
  }
4789
4789
  });
4790
4790
 
4791
- // node_modules/ajv/dist/compile/validate/defaults.js
4791
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js
4792
4792
  var require_defaults = __commonJS({
4793
- "node_modules/ajv/dist/compile/validate/defaults.js"(exports) {
4793
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js"(exports) {
4794
4794
  "use strict";
4795
4795
  Object.defineProperty(exports, "__esModule", { value: true });
4796
4796
  exports.assignDefaults = void 0;
@@ -4825,9 +4825,9 @@ var HoloSphere = (() => {
4825
4825
  }
4826
4826
  });
4827
4827
 
4828
- // node_modules/ajv/dist/vocabularies/code.js
4828
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js
4829
4829
  var require_code2 = __commonJS({
4830
- "node_modules/ajv/dist/vocabularies/code.js"(exports) {
4830
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js"(exports) {
4831
4831
  "use strict";
4832
4832
  Object.defineProperty(exports, "__esModule", { value: true });
4833
4833
  exports.validateUnion = exports.validateArray = exports.usePattern = exports.callValidateCode = exports.schemaProperties = exports.allSchemaProperties = exports.noPropertyInData = exports.propertyInData = exports.isOwnProperty = exports.hasPropFunc = exports.reportMissingProp = exports.checkMissingProp = exports.checkReportMissingProp = void 0;
@@ -4958,9 +4958,9 @@ var HoloSphere = (() => {
4958
4958
  }
4959
4959
  });
4960
4960
 
4961
- // node_modules/ajv/dist/compile/validate/keyword.js
4961
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js
4962
4962
  var require_keyword = __commonJS({
4963
- "node_modules/ajv/dist/compile/validate/keyword.js"(exports) {
4963
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js"(exports) {
4964
4964
  "use strict";
4965
4965
  Object.defineProperty(exports, "__esModule", { value: true });
4966
4966
  exports.validateKeywordUsage = exports.validSchemaType = exports.funcKeywordCode = exports.macroKeywordCode = void 0;
@@ -5076,9 +5076,9 @@ var HoloSphere = (() => {
5076
5076
  }
5077
5077
  });
5078
5078
 
5079
- // node_modules/ajv/dist/compile/validate/subschema.js
5079
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js
5080
5080
  var require_subschema = __commonJS({
5081
- "node_modules/ajv/dist/compile/validate/subschema.js"(exports) {
5081
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js"(exports) {
5082
5082
  "use strict";
5083
5083
  Object.defineProperty(exports, "__esModule", { value: true });
5084
5084
  exports.extendSubschemaMode = exports.extendSubschemaData = exports.getSubschema = void 0;
@@ -5159,9 +5159,9 @@ var HoloSphere = (() => {
5159
5159
  }
5160
5160
  });
5161
5161
 
5162
- // node_modules/fast-deep-equal/index.js
5162
+ // node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js
5163
5163
  var require_fast_deep_equal = __commonJS({
5164
- "node_modules/fast-deep-equal/index.js"(exports, module) {
5164
+ "node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js"(exports, module) {
5165
5165
  "use strict";
5166
5166
  module.exports = function equal(a, b) {
5167
5167
  if (a === b) return true;
@@ -5194,9 +5194,9 @@ var HoloSphere = (() => {
5194
5194
  }
5195
5195
  });
5196
5196
 
5197
- // node_modules/json-schema-traverse/index.js
5197
+ // node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js
5198
5198
  var require_json_schema_traverse = __commonJS({
5199
- "node_modules/json-schema-traverse/index.js"(exports, module) {
5199
+ "node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js"(exports, module) {
5200
5200
  "use strict";
5201
5201
  var traverse = module.exports = function(schema, opts, cb) {
5202
5202
  if (typeof opts == "function") {
@@ -5282,9 +5282,9 @@ var HoloSphere = (() => {
5282
5282
  }
5283
5283
  });
5284
5284
 
5285
- // node_modules/ajv/dist/compile/resolve.js
5285
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js
5286
5286
  var require_resolve = __commonJS({
5287
- "node_modules/ajv/dist/compile/resolve.js"(exports) {
5287
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js"(exports) {
5288
5288
  "use strict";
5289
5289
  Object.defineProperty(exports, "__esModule", { value: true });
5290
5290
  exports.getSchemaRefs = exports.resolveUrl = exports.normalizeId = exports._getFullPath = exports.getFullPath = exports.inlineRef = void 0;
@@ -5438,9 +5438,9 @@ var HoloSphere = (() => {
5438
5438
  }
5439
5439
  });
5440
5440
 
5441
- // node_modules/ajv/dist/compile/validate/index.js
5441
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js
5442
5442
  var require_validate = __commonJS({
5443
- "node_modules/ajv/dist/compile/validate/index.js"(exports) {
5443
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js"(exports) {
5444
5444
  "use strict";
5445
5445
  Object.defineProperty(exports, "__esModule", { value: true });
5446
5446
  exports.getData = exports.KeywordCxt = exports.validateFunctionCode = void 0;
@@ -5946,9 +5946,9 @@ var HoloSphere = (() => {
5946
5946
  }
5947
5947
  });
5948
5948
 
5949
- // node_modules/ajv/dist/runtime/validation_error.js
5949
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/validation_error.js
5950
5950
  var require_validation_error = __commonJS({
5951
- "node_modules/ajv/dist/runtime/validation_error.js"(exports) {
5951
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/validation_error.js"(exports) {
5952
5952
  "use strict";
5953
5953
  Object.defineProperty(exports, "__esModule", { value: true });
5954
5954
  var ValidationError = class extends Error {
@@ -5962,9 +5962,9 @@ var HoloSphere = (() => {
5962
5962
  }
5963
5963
  });
5964
5964
 
5965
- // node_modules/ajv/dist/compile/ref_error.js
5965
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js
5966
5966
  var require_ref_error = __commonJS({
5967
- "node_modules/ajv/dist/compile/ref_error.js"(exports) {
5967
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js"(exports) {
5968
5968
  "use strict";
5969
5969
  Object.defineProperty(exports, "__esModule", { value: true });
5970
5970
  var resolve_1 = require_resolve();
@@ -5979,9 +5979,9 @@ var HoloSphere = (() => {
5979
5979
  }
5980
5980
  });
5981
5981
 
5982
- // node_modules/ajv/dist/compile/index.js
5982
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/index.js
5983
5983
  var require_compile = __commonJS({
5984
- "node_modules/ajv/dist/compile/index.js"(exports) {
5984
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/index.js"(exports) {
5985
5985
  "use strict";
5986
5986
  Object.defineProperty(exports, "__esModule", { value: true });
5987
5987
  exports.resolveSchema = exports.getCompilingSchema = exports.resolveRef = exports.compileSchema = exports.SchemaEnv = void 0;
@@ -6203,9 +6203,9 @@ var HoloSphere = (() => {
6203
6203
  }
6204
6204
  });
6205
6205
 
6206
- // node_modules/ajv/dist/refs/data.json
6206
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/data.json
6207
6207
  var require_data = __commonJS({
6208
- "node_modules/ajv/dist/refs/data.json"(exports, module) {
6208
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/data.json"(exports, module) {
6209
6209
  module.exports = {
6210
6210
  $id: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",
6211
6211
  description: "Meta-schema for $data reference (JSON AnySchema extension proposal)",
@@ -6222,12 +6222,15 @@ var HoloSphere = (() => {
6222
6222
  }
6223
6223
  });
6224
6224
 
6225
- // node_modules/fast-uri/lib/utils.js
6225
+ // node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/utils.js
6226
6226
  var require_utils = __commonJS({
6227
- "node_modules/fast-uri/lib/utils.js"(exports, module) {
6227
+ "node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/utils.js"(exports, module) {
6228
6228
  "use strict";
6229
6229
  var isUUID = RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);
6230
6230
  var isIPv4 = RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);
6231
+ var isHexPair = RegExp.prototype.test.bind(/^[\da-f]{2}$/iu);
6232
+ var isUnreserved = RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu);
6233
+ var isPathCharacter = RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);
6231
6234
  function stringArrayToHexStripped(input) {
6232
6235
  let acc = "";
6233
6236
  let code = 0;
@@ -6420,27 +6423,77 @@ var HoloSphere = (() => {
6420
6423
  }
6421
6424
  return output.join("");
6422
6425
  }
6423
- function normalizeComponentEncoding(component, esc) {
6424
- const func = esc !== true ? escape : unescape;
6425
- if (component.scheme !== void 0) {
6426
- component.scheme = func(component.scheme);
6427
- }
6428
- if (component.userinfo !== void 0) {
6429
- component.userinfo = func(component.userinfo);
6430
- }
6431
- if (component.host !== void 0) {
6432
- component.host = func(component.host);
6426
+ var HOST_DELIMS = { "@": "%40", "/": "%2F", "?": "%3F", "#": "%23", ":": "%3A" };
6427
+ var HOST_DELIM_RE = /[@/?#:]/g;
6428
+ var HOST_DELIM_NO_COLON_RE = /[@/?#]/g;
6429
+ function reescapeHostDelimiters(host, isIP) {
6430
+ const re = isIP ? HOST_DELIM_NO_COLON_RE : HOST_DELIM_RE;
6431
+ re.lastIndex = 0;
6432
+ return host.replace(re, (ch) => HOST_DELIMS[ch]);
6433
+ }
6434
+ function normalizePercentEncoding(input, decodeUnreserved = false) {
6435
+ if (input.indexOf("%") === -1) {
6436
+ return input;
6433
6437
  }
6434
- if (component.path !== void 0) {
6435
- component.path = func(component.path);
6438
+ let output = "";
6439
+ for (let i = 0; i < input.length; i++) {
6440
+ if (input[i] === "%" && i + 2 < input.length) {
6441
+ const hex = input.slice(i + 1, i + 3);
6442
+ if (isHexPair(hex)) {
6443
+ const normalizedHex = hex.toUpperCase();
6444
+ const decoded = String.fromCharCode(parseInt(normalizedHex, 16));
6445
+ if (decodeUnreserved && isUnreserved(decoded)) {
6446
+ output += decoded;
6447
+ } else {
6448
+ output += "%" + normalizedHex;
6449
+ }
6450
+ i += 2;
6451
+ continue;
6452
+ }
6453
+ }
6454
+ output += input[i];
6436
6455
  }
6437
- if (component.query !== void 0) {
6438
- component.query = func(component.query);
6456
+ return output;
6457
+ }
6458
+ function normalizePathEncoding(input) {
6459
+ let output = "";
6460
+ for (let i = 0; i < input.length; i++) {
6461
+ if (input[i] === "%" && i + 2 < input.length) {
6462
+ const hex = input.slice(i + 1, i + 3);
6463
+ if (isHexPair(hex)) {
6464
+ const normalizedHex = hex.toUpperCase();
6465
+ const decoded = String.fromCharCode(parseInt(normalizedHex, 16));
6466
+ if (decoded !== "." && isUnreserved(decoded)) {
6467
+ output += decoded;
6468
+ } else {
6469
+ output += "%" + normalizedHex;
6470
+ }
6471
+ i += 2;
6472
+ continue;
6473
+ }
6474
+ }
6475
+ if (isPathCharacter(input[i])) {
6476
+ output += input[i];
6477
+ } else {
6478
+ output += escape(input[i]);
6479
+ }
6439
6480
  }
6440
- if (component.fragment !== void 0) {
6441
- component.fragment = func(component.fragment);
6481
+ return output;
6482
+ }
6483
+ function escapePreservingEscapes(input) {
6484
+ let output = "";
6485
+ for (let i = 0; i < input.length; i++) {
6486
+ if (input[i] === "%" && i + 2 < input.length) {
6487
+ const hex = input.slice(i + 1, i + 3);
6488
+ if (isHexPair(hex)) {
6489
+ output += "%" + hex.toUpperCase();
6490
+ i += 2;
6491
+ continue;
6492
+ }
6493
+ }
6494
+ output += escape(input[i]);
6442
6495
  }
6443
- return component;
6496
+ return output;
6444
6497
  }
6445
6498
  function recomposeAuthority(component) {
6446
6499
  const uriTokens = [];
@@ -6455,7 +6508,7 @@ var HoloSphere = (() => {
6455
6508
  if (ipV6res.isIPV6 === true) {
6456
6509
  host = `[${ipV6res.escapedHost}]`;
6457
6510
  } else {
6458
- host = component.host;
6511
+ host = reescapeHostDelimiters(host, false);
6459
6512
  }
6460
6513
  }
6461
6514
  uriTokens.push(host);
@@ -6469,7 +6522,10 @@ var HoloSphere = (() => {
6469
6522
  module.exports = {
6470
6523
  nonSimpleDomain,
6471
6524
  recomposeAuthority,
6472
- normalizeComponentEncoding,
6525
+ reescapeHostDelimiters,
6526
+ normalizePercentEncoding,
6527
+ normalizePathEncoding,
6528
+ escapePreservingEscapes,
6473
6529
  removeDotSegments,
6474
6530
  isIPv4,
6475
6531
  isUUID,
@@ -6479,9 +6535,9 @@ var HoloSphere = (() => {
6479
6535
  }
6480
6536
  });
6481
6537
 
6482
- // node_modules/fast-uri/lib/schemes.js
6538
+ // node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/schemes.js
6483
6539
  var require_schemes = __commonJS({
6484
- "node_modules/fast-uri/lib/schemes.js"(exports, module) {
6540
+ "node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/schemes.js"(exports, module) {
6485
6541
  "use strict";
6486
6542
  var { isUUID } = require_utils();
6487
6543
  var URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
@@ -6689,16 +6745,16 @@ var HoloSphere = (() => {
6689
6745
  }
6690
6746
  });
6691
6747
 
6692
- // node_modules/fast-uri/index.js
6748
+ // node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/index.js
6693
6749
  var require_fast_uri = __commonJS({
6694
- "node_modules/fast-uri/index.js"(exports, module) {
6750
+ "node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/index.js"(exports, module) {
6695
6751
  "use strict";
6696
- var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizeComponentEncoding, isIPv4, nonSimpleDomain } = require_utils();
6752
+ var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, escapePreservingEscapes, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = require_utils();
6697
6753
  var { SCHEMES, getSchemeHandler } = require_schemes();
6698
6754
  function normalize(uri, options) {
6699
6755
  if (typeof uri === "string") {
6700
6756
  uri = /** @type {T} */
6701
- serialize(parse2(uri, options), options);
6757
+ normalizeString(uri, options);
6702
6758
  } else if (typeof uri === "object") {
6703
6759
  uri = /** @type {T} */
6704
6760
  parse2(serialize(uri, options), options);
@@ -6765,19 +6821,9 @@ var HoloSphere = (() => {
6765
6821
  return target;
6766
6822
  }
6767
6823
  function equal(uriA, uriB, options) {
6768
- if (typeof uriA === "string") {
6769
- uriA = unescape(uriA);
6770
- uriA = serialize(normalizeComponentEncoding(parse2(uriA, options), true), { ...options, skipEscape: true });
6771
- } else if (typeof uriA === "object") {
6772
- uriA = serialize(normalizeComponentEncoding(uriA, true), { ...options, skipEscape: true });
6773
- }
6774
- if (typeof uriB === "string") {
6775
- uriB = unescape(uriB);
6776
- uriB = serialize(normalizeComponentEncoding(parse2(uriB, options), true), { ...options, skipEscape: true });
6777
- } else if (typeof uriB === "object") {
6778
- uriB = serialize(normalizeComponentEncoding(uriB, true), { ...options, skipEscape: true });
6779
- }
6780
- return uriA.toLowerCase() === uriB.toLowerCase();
6824
+ const normalizedA = normalizeComparableURI(uriA, options);
6825
+ const normalizedB = normalizeComparableURI(uriB, options);
6826
+ return normalizedA !== void 0 && normalizedB !== void 0 && normalizedA.toLowerCase() === normalizedB.toLowerCase();
6781
6827
  }
6782
6828
  function serialize(cmpts, opts) {
6783
6829
  const component = {
@@ -6802,12 +6848,12 @@ var HoloSphere = (() => {
6802
6848
  if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(component, options);
6803
6849
  if (component.path !== void 0) {
6804
6850
  if (!options.skipEscape) {
6805
- component.path = escape(component.path);
6851
+ component.path = escapePreservingEscapes(component.path);
6806
6852
  if (component.scheme !== void 0) {
6807
6853
  component.path = component.path.split("%3A").join(":");
6808
6854
  }
6809
6855
  } else {
6810
- component.path = unescape(component.path);
6856
+ component.path = normalizePercentEncoding(component.path);
6811
6857
  }
6812
6858
  }
6813
6859
  if (options.reference !== "suffix" && component.scheme) {
@@ -6842,7 +6888,16 @@ var HoloSphere = (() => {
6842
6888
  return uriTokens.join("");
6843
6889
  }
6844
6890
  var URI_PARSE = /^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;
6845
- function parse2(uri, opts) {
6891
+ function getParseError(parsed, matches) {
6892
+ if (matches[2] !== void 0 && parsed.path && parsed.path[0] !== "/") {
6893
+ return 'URI path must start with "/" when authority is present.';
6894
+ }
6895
+ if (typeof parsed.port === "number" && (parsed.port < 0 || parsed.port > 65535)) {
6896
+ return "URI port is malformed.";
6897
+ }
6898
+ return void 0;
6899
+ }
6900
+ function parseWithStatus(uri, opts) {
6846
6901
  const options = Object.assign({}, opts);
6847
6902
  const parsed = {
6848
6903
  scheme: void 0,
@@ -6853,6 +6908,7 @@ var HoloSphere = (() => {
6853
6908
  query: void 0,
6854
6909
  fragment: void 0
6855
6910
  };
6911
+ let malformedAuthorityOrPort = false;
6856
6912
  let isIP = false;
6857
6913
  if (options.reference === "suffix") {
6858
6914
  if (options.scheme) {
@@ -6873,6 +6929,11 @@ var HoloSphere = (() => {
6873
6929
  if (isNaN(parsed.port)) {
6874
6930
  parsed.port = matches[5];
6875
6931
  }
6932
+ const parseError = getParseError(parsed, matches);
6933
+ if (parseError !== void 0) {
6934
+ parsed.error = parsed.error || parseError;
6935
+ malformedAuthorityOrPort = true;
6936
+ }
6876
6937
  if (parsed.host) {
6877
6938
  const ipv4result = isIPv4(parsed.host);
6878
6939
  if (ipv4result === false) {
@@ -6911,14 +6972,18 @@ var HoloSphere = (() => {
6911
6972
  parsed.scheme = unescape(parsed.scheme);
6912
6973
  }
6913
6974
  if (parsed.host !== void 0) {
6914
- parsed.host = unescape(parsed.host);
6975
+ parsed.host = reescapeHostDelimiters(unescape(parsed.host), isIP);
6915
6976
  }
6916
6977
  }
6917
6978
  if (parsed.path) {
6918
- parsed.path = escape(unescape(parsed.path));
6979
+ parsed.path = normalizePathEncoding(parsed.path);
6919
6980
  }
6920
6981
  if (parsed.fragment) {
6921
- parsed.fragment = encodeURI(decodeURIComponent(parsed.fragment));
6982
+ try {
6983
+ parsed.fragment = encodeURI(decodeURIComponent(parsed.fragment));
6984
+ } catch {
6985
+ parsed.error = parsed.error || "URI malformed";
6986
+ }
6922
6987
  }
6923
6988
  }
6924
6989
  if (schemeHandler && schemeHandler.parse) {
@@ -6927,7 +6992,29 @@ var HoloSphere = (() => {
6927
6992
  } else {
6928
6993
  parsed.error = parsed.error || "URI can not be parsed.";
6929
6994
  }
6930
- return parsed;
6995
+ return { parsed, malformedAuthorityOrPort };
6996
+ }
6997
+ function parse2(uri, opts) {
6998
+ return parseWithStatus(uri, opts).parsed;
6999
+ }
7000
+ function normalizeString(uri, opts) {
7001
+ return normalizeStringWithStatus(uri, opts).normalized;
7002
+ }
7003
+ function normalizeStringWithStatus(uri, opts) {
7004
+ const { parsed, malformedAuthorityOrPort } = parseWithStatus(uri, opts);
7005
+ return {
7006
+ normalized: malformedAuthorityOrPort ? uri : serialize(parsed, opts),
7007
+ malformedAuthorityOrPort
7008
+ };
7009
+ }
7010
+ function normalizeComparableURI(uri, opts) {
7011
+ if (typeof uri === "string") {
7012
+ const { normalized, malformedAuthorityOrPort } = normalizeStringWithStatus(uri, opts);
7013
+ return malformedAuthorityOrPort ? void 0 : normalized;
7014
+ }
7015
+ if (typeof uri === "object") {
7016
+ return serialize(uri, opts);
7017
+ }
6931
7018
  }
6932
7019
  var fastUri = {
6933
7020
  SCHEMES,
@@ -6944,9 +7031,9 @@ var HoloSphere = (() => {
6944
7031
  }
6945
7032
  });
6946
7033
 
6947
- // node_modules/ajv/dist/runtime/uri.js
7034
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js
6948
7035
  var require_uri = __commonJS({
6949
- "node_modules/ajv/dist/runtime/uri.js"(exports) {
7036
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js"(exports) {
6950
7037
  "use strict";
6951
7038
  Object.defineProperty(exports, "__esModule", { value: true });
6952
7039
  var uri = require_fast_uri();
@@ -6955,9 +7042,9 @@ var HoloSphere = (() => {
6955
7042
  }
6956
7043
  });
6957
7044
 
6958
- // node_modules/ajv/dist/core.js
7045
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/core.js
6959
7046
  var require_core = __commonJS({
6960
- "node_modules/ajv/dist/core.js"(exports) {
7047
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/core.js"(exports) {
6961
7048
  "use strict";
6962
7049
  Object.defineProperty(exports, "__esModule", { value: true });
6963
7050
  exports.CodeGen = exports.Name = exports.nil = exports.stringify = exports.str = exports._ = exports.KeywordCxt = void 0;
@@ -7566,9 +7653,9 @@ var HoloSphere = (() => {
7566
7653
  }
7567
7654
  });
7568
7655
 
7569
- // node_modules/ajv/dist/vocabularies/core/id.js
7656
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/id.js
7570
7657
  var require_id = __commonJS({
7571
- "node_modules/ajv/dist/vocabularies/core/id.js"(exports) {
7658
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/id.js"(exports) {
7572
7659
  "use strict";
7573
7660
  Object.defineProperty(exports, "__esModule", { value: true });
7574
7661
  var def = {
@@ -7581,9 +7668,9 @@ var HoloSphere = (() => {
7581
7668
  }
7582
7669
  });
7583
7670
 
7584
- // node_modules/ajv/dist/vocabularies/core/ref.js
7671
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js
7585
7672
  var require_ref = __commonJS({
7586
- "node_modules/ajv/dist/vocabularies/core/ref.js"(exports) {
7673
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js"(exports) {
7587
7674
  "use strict";
7588
7675
  Object.defineProperty(exports, "__esModule", { value: true });
7589
7676
  exports.callRef = exports.getValidate = void 0;
@@ -7703,9 +7790,9 @@ var HoloSphere = (() => {
7703
7790
  }
7704
7791
  });
7705
7792
 
7706
- // node_modules/ajv/dist/vocabularies/core/index.js
7793
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js
7707
7794
  var require_core2 = __commonJS({
7708
- "node_modules/ajv/dist/vocabularies/core/index.js"(exports) {
7795
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js"(exports) {
7709
7796
  "use strict";
7710
7797
  Object.defineProperty(exports, "__esModule", { value: true });
7711
7798
  var id_1 = require_id();
@@ -7724,9 +7811,9 @@ var HoloSphere = (() => {
7724
7811
  }
7725
7812
  });
7726
7813
 
7727
- // node_modules/ajv/dist/vocabularies/validation/limitNumber.js
7814
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js
7728
7815
  var require_limitNumber = __commonJS({
7729
- "node_modules/ajv/dist/vocabularies/validation/limitNumber.js"(exports) {
7816
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js"(exports) {
7730
7817
  "use strict";
7731
7818
  Object.defineProperty(exports, "__esModule", { value: true });
7732
7819
  var codegen_1 = require_codegen();
@@ -7756,9 +7843,9 @@ var HoloSphere = (() => {
7756
7843
  }
7757
7844
  });
7758
7845
 
7759
- // node_modules/ajv/dist/vocabularies/validation/multipleOf.js
7846
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js
7760
7847
  var require_multipleOf = __commonJS({
7761
- "node_modules/ajv/dist/vocabularies/validation/multipleOf.js"(exports) {
7848
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js"(exports) {
7762
7849
  "use strict";
7763
7850
  Object.defineProperty(exports, "__esModule", { value: true });
7764
7851
  var codegen_1 = require_codegen();
@@ -7784,9 +7871,9 @@ var HoloSphere = (() => {
7784
7871
  }
7785
7872
  });
7786
7873
 
7787
- // node_modules/ajv/dist/runtime/ucs2length.js
7874
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/ucs2length.js
7788
7875
  var require_ucs2length = __commonJS({
7789
- "node_modules/ajv/dist/runtime/ucs2length.js"(exports) {
7876
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/ucs2length.js"(exports) {
7790
7877
  "use strict";
7791
7878
  Object.defineProperty(exports, "__esModule", { value: true });
7792
7879
  function ucs2length(str) {
@@ -7810,9 +7897,9 @@ var HoloSphere = (() => {
7810
7897
  }
7811
7898
  });
7812
7899
 
7813
- // node_modules/ajv/dist/vocabularies/validation/limitLength.js
7900
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js
7814
7901
  var require_limitLength = __commonJS({
7815
- "node_modules/ajv/dist/vocabularies/validation/limitLength.js"(exports) {
7902
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js"(exports) {
7816
7903
  "use strict";
7817
7904
  Object.defineProperty(exports, "__esModule", { value: true });
7818
7905
  var codegen_1 = require_codegen();
@@ -7842,9 +7929,9 @@ var HoloSphere = (() => {
7842
7929
  }
7843
7930
  });
7844
7931
 
7845
- // node_modules/ajv/dist/vocabularies/validation/pattern.js
7932
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js
7846
7933
  var require_pattern = __commonJS({
7847
- "node_modules/ajv/dist/vocabularies/validation/pattern.js"(exports) {
7934
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js"(exports) {
7848
7935
  "use strict";
7849
7936
  Object.defineProperty(exports, "__esModule", { value: true });
7850
7937
  var code_1 = require_code2();
@@ -7879,9 +7966,9 @@ var HoloSphere = (() => {
7879
7966
  }
7880
7967
  });
7881
7968
 
7882
- // node_modules/ajv/dist/vocabularies/validation/limitProperties.js
7969
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js
7883
7970
  var require_limitProperties = __commonJS({
7884
- "node_modules/ajv/dist/vocabularies/validation/limitProperties.js"(exports) {
7971
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js"(exports) {
7885
7972
  "use strict";
7886
7973
  Object.defineProperty(exports, "__esModule", { value: true });
7887
7974
  var codegen_1 = require_codegen();
@@ -7908,9 +7995,9 @@ var HoloSphere = (() => {
7908
7995
  }
7909
7996
  });
7910
7997
 
7911
- // node_modules/ajv/dist/vocabularies/validation/required.js
7998
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js
7912
7999
  var require_required = __commonJS({
7913
- "node_modules/ajv/dist/vocabularies/validation/required.js"(exports) {
8000
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js"(exports) {
7914
8001
  "use strict";
7915
8002
  Object.defineProperty(exports, "__esModule", { value: true });
7916
8003
  var code_1 = require_code2();
@@ -7990,9 +8077,9 @@ var HoloSphere = (() => {
7990
8077
  }
7991
8078
  });
7992
8079
 
7993
- // node_modules/ajv/dist/vocabularies/validation/limitItems.js
8080
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js
7994
8081
  var require_limitItems = __commonJS({
7995
- "node_modules/ajv/dist/vocabularies/validation/limitItems.js"(exports) {
8082
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js"(exports) {
7996
8083
  "use strict";
7997
8084
  Object.defineProperty(exports, "__esModule", { value: true });
7998
8085
  var codegen_1 = require_codegen();
@@ -8019,9 +8106,9 @@ var HoloSphere = (() => {
8019
8106
  }
8020
8107
  });
8021
8108
 
8022
- // node_modules/ajv/dist/runtime/equal.js
8109
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js
8023
8110
  var require_equal = __commonJS({
8024
- "node_modules/ajv/dist/runtime/equal.js"(exports) {
8111
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js"(exports) {
8025
8112
  "use strict";
8026
8113
  Object.defineProperty(exports, "__esModule", { value: true });
8027
8114
  var equal = require_fast_deep_equal();
@@ -8030,9 +8117,9 @@ var HoloSphere = (() => {
8030
8117
  }
8031
8118
  });
8032
8119
 
8033
- // node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
8120
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
8034
8121
  var require_uniqueItems = __commonJS({
8035
- "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js"(exports) {
8122
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js"(exports) {
8036
8123
  "use strict";
8037
8124
  Object.defineProperty(exports, "__esModule", { value: true });
8038
8125
  var dataType_1 = require_dataType();
@@ -8097,9 +8184,9 @@ var HoloSphere = (() => {
8097
8184
  }
8098
8185
  });
8099
8186
 
8100
- // node_modules/ajv/dist/vocabularies/validation/const.js
8187
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js
8101
8188
  var require_const = __commonJS({
8102
- "node_modules/ajv/dist/vocabularies/validation/const.js"(exports) {
8189
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js"(exports) {
8103
8190
  "use strict";
8104
8191
  Object.defineProperty(exports, "__esModule", { value: true });
8105
8192
  var codegen_1 = require_codegen();
@@ -8126,9 +8213,9 @@ var HoloSphere = (() => {
8126
8213
  }
8127
8214
  });
8128
8215
 
8129
- // node_modules/ajv/dist/vocabularies/validation/enum.js
8216
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js
8130
8217
  var require_enum = __commonJS({
8131
- "node_modules/ajv/dist/vocabularies/validation/enum.js"(exports) {
8218
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js"(exports) {
8132
8219
  "use strict";
8133
8220
  Object.defineProperty(exports, "__esModule", { value: true });
8134
8221
  var codegen_1 = require_codegen();
@@ -8175,9 +8262,9 @@ var HoloSphere = (() => {
8175
8262
  }
8176
8263
  });
8177
8264
 
8178
- // node_modules/ajv/dist/vocabularies/validation/index.js
8265
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js
8179
8266
  var require_validation = __commonJS({
8180
- "node_modules/ajv/dist/vocabularies/validation/index.js"(exports) {
8267
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js"(exports) {
8181
8268
  "use strict";
8182
8269
  Object.defineProperty(exports, "__esModule", { value: true });
8183
8270
  var limitNumber_1 = require_limitNumber();
@@ -8213,9 +8300,9 @@ var HoloSphere = (() => {
8213
8300
  }
8214
8301
  });
8215
8302
 
8216
- // node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
8303
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
8217
8304
  var require_additionalItems = __commonJS({
8218
- "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js"(exports) {
8305
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js"(exports) {
8219
8306
  "use strict";
8220
8307
  Object.defineProperty(exports, "__esModule", { value: true });
8221
8308
  exports.validateAdditionalItems = void 0;
@@ -8266,9 +8353,9 @@ var HoloSphere = (() => {
8266
8353
  }
8267
8354
  });
8268
8355
 
8269
- // node_modules/ajv/dist/vocabularies/applicator/items.js
8356
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js
8270
8357
  var require_items = __commonJS({
8271
- "node_modules/ajv/dist/vocabularies/applicator/items.js"(exports) {
8358
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js"(exports) {
8272
8359
  "use strict";
8273
8360
  Object.defineProperty(exports, "__esModule", { value: true });
8274
8361
  exports.validateTuple = void 0;
@@ -8323,9 +8410,9 @@ var HoloSphere = (() => {
8323
8410
  }
8324
8411
  });
8325
8412
 
8326
- // node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
8413
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
8327
8414
  var require_prefixItems = __commonJS({
8328
- "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js"(exports) {
8415
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js"(exports) {
8329
8416
  "use strict";
8330
8417
  Object.defineProperty(exports, "__esModule", { value: true });
8331
8418
  var items_1 = require_items();
@@ -8340,9 +8427,9 @@ var HoloSphere = (() => {
8340
8427
  }
8341
8428
  });
8342
8429
 
8343
- // node_modules/ajv/dist/vocabularies/applicator/items2020.js
8430
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js
8344
8431
  var require_items2020 = __commonJS({
8345
- "node_modules/ajv/dist/vocabularies/applicator/items2020.js"(exports) {
8432
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js"(exports) {
8346
8433
  "use strict";
8347
8434
  Object.defineProperty(exports, "__esModule", { value: true });
8348
8435
  var codegen_1 = require_codegen();
@@ -8375,9 +8462,9 @@ var HoloSphere = (() => {
8375
8462
  }
8376
8463
  });
8377
8464
 
8378
- // node_modules/ajv/dist/vocabularies/applicator/contains.js
8465
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js
8379
8466
  var require_contains = __commonJS({
8380
- "node_modules/ajv/dist/vocabularies/applicator/contains.js"(exports) {
8467
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js"(exports) {
8381
8468
  "use strict";
8382
8469
  Object.defineProperty(exports, "__esModule", { value: true });
8383
8470
  var codegen_1 = require_codegen();
@@ -8469,9 +8556,9 @@ var HoloSphere = (() => {
8469
8556
  }
8470
8557
  });
8471
8558
 
8472
- // node_modules/ajv/dist/vocabularies/applicator/dependencies.js
8559
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js
8473
8560
  var require_dependencies = __commonJS({
8474
- "node_modules/ajv/dist/vocabularies/applicator/dependencies.js"(exports) {
8561
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js"(exports) {
8475
8562
  "use strict";
8476
8563
  Object.defineProperty(exports, "__esModule", { value: true });
8477
8564
  exports.validateSchemaDeps = exports.validatePropertyDeps = exports.error = void 0;
@@ -8563,9 +8650,9 @@ var HoloSphere = (() => {
8563
8650
  }
8564
8651
  });
8565
8652
 
8566
- // node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
8653
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
8567
8654
  var require_propertyNames = __commonJS({
8568
- "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js"(exports) {
8655
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js"(exports) {
8569
8656
  "use strict";
8570
8657
  Object.defineProperty(exports, "__esModule", { value: true });
8571
8658
  var codegen_1 = require_codegen();
@@ -8606,9 +8693,9 @@ var HoloSphere = (() => {
8606
8693
  }
8607
8694
  });
8608
8695
 
8609
- // node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
8696
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
8610
8697
  var require_additionalProperties = __commonJS({
8611
- "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js"(exports) {
8698
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js"(exports) {
8612
8699
  "use strict";
8613
8700
  Object.defineProperty(exports, "__esModule", { value: true });
8614
8701
  var code_1 = require_code2();
@@ -8712,9 +8799,9 @@ var HoloSphere = (() => {
8712
8799
  }
8713
8800
  });
8714
8801
 
8715
- // node_modules/ajv/dist/vocabularies/applicator/properties.js
8802
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js
8716
8803
  var require_properties = __commonJS({
8717
- "node_modules/ajv/dist/vocabularies/applicator/properties.js"(exports) {
8804
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js"(exports) {
8718
8805
  "use strict";
8719
8806
  Object.defineProperty(exports, "__esModule", { value: true });
8720
8807
  var validate_1 = require_validate();
@@ -8770,9 +8857,9 @@ var HoloSphere = (() => {
8770
8857
  }
8771
8858
  });
8772
8859
 
8773
- // node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
8860
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
8774
8861
  var require_patternProperties = __commonJS({
8775
- "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js"(exports) {
8862
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js"(exports) {
8776
8863
  "use strict";
8777
8864
  Object.defineProperty(exports, "__esModule", { value: true });
8778
8865
  var code_1 = require_code2();
@@ -8844,9 +8931,9 @@ var HoloSphere = (() => {
8844
8931
  }
8845
8932
  });
8846
8933
 
8847
- // node_modules/ajv/dist/vocabularies/applicator/not.js
8934
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js
8848
8935
  var require_not = __commonJS({
8849
- "node_modules/ajv/dist/vocabularies/applicator/not.js"(exports) {
8936
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js"(exports) {
8850
8937
  "use strict";
8851
8938
  Object.defineProperty(exports, "__esModule", { value: true });
8852
8939
  var util_1 = require_util();
@@ -8875,9 +8962,9 @@ var HoloSphere = (() => {
8875
8962
  }
8876
8963
  });
8877
8964
 
8878
- // node_modules/ajv/dist/vocabularies/applicator/anyOf.js
8965
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js
8879
8966
  var require_anyOf = __commonJS({
8880
- "node_modules/ajv/dist/vocabularies/applicator/anyOf.js"(exports) {
8967
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js"(exports) {
8881
8968
  "use strict";
8882
8969
  Object.defineProperty(exports, "__esModule", { value: true });
8883
8970
  var code_1 = require_code2();
@@ -8892,9 +8979,9 @@ var HoloSphere = (() => {
8892
8979
  }
8893
8980
  });
8894
8981
 
8895
- // node_modules/ajv/dist/vocabularies/applicator/oneOf.js
8982
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js
8896
8983
  var require_oneOf = __commonJS({
8897
- "node_modules/ajv/dist/vocabularies/applicator/oneOf.js"(exports) {
8984
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js"(exports) {
8898
8985
  "use strict";
8899
8986
  Object.defineProperty(exports, "__esModule", { value: true });
8900
8987
  var codegen_1 = require_codegen();
@@ -8950,9 +9037,9 @@ var HoloSphere = (() => {
8950
9037
  }
8951
9038
  });
8952
9039
 
8953
- // node_modules/ajv/dist/vocabularies/applicator/allOf.js
9040
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js
8954
9041
  var require_allOf = __commonJS({
8955
- "node_modules/ajv/dist/vocabularies/applicator/allOf.js"(exports) {
9042
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js"(exports) {
8956
9043
  "use strict";
8957
9044
  Object.defineProperty(exports, "__esModule", { value: true });
8958
9045
  var util_1 = require_util();
@@ -8977,9 +9064,9 @@ var HoloSphere = (() => {
8977
9064
  }
8978
9065
  });
8979
9066
 
8980
- // node_modules/ajv/dist/vocabularies/applicator/if.js
9067
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js
8981
9068
  var require_if = __commonJS({
8982
- "node_modules/ajv/dist/vocabularies/applicator/if.js"(exports) {
9069
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js"(exports) {
8983
9070
  "use strict";
8984
9071
  Object.defineProperty(exports, "__esModule", { value: true });
8985
9072
  var codegen_1 = require_codegen();
@@ -9046,9 +9133,9 @@ var HoloSphere = (() => {
9046
9133
  }
9047
9134
  });
9048
9135
 
9049
- // node_modules/ajv/dist/vocabularies/applicator/thenElse.js
9136
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js
9050
9137
  var require_thenElse = __commonJS({
9051
- "node_modules/ajv/dist/vocabularies/applicator/thenElse.js"(exports) {
9138
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js"(exports) {
9052
9139
  "use strict";
9053
9140
  Object.defineProperty(exports, "__esModule", { value: true });
9054
9141
  var util_1 = require_util();
@@ -9064,9 +9151,9 @@ var HoloSphere = (() => {
9064
9151
  }
9065
9152
  });
9066
9153
 
9067
- // node_modules/ajv/dist/vocabularies/applicator/index.js
9154
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js
9068
9155
  var require_applicator = __commonJS({
9069
- "node_modules/ajv/dist/vocabularies/applicator/index.js"(exports) {
9156
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js"(exports) {
9070
9157
  "use strict";
9071
9158
  Object.defineProperty(exports, "__esModule", { value: true });
9072
9159
  var additionalItems_1 = require_additionalItems();
@@ -9112,9 +9199,9 @@ var HoloSphere = (() => {
9112
9199
  }
9113
9200
  });
9114
9201
 
9115
- // node_modules/ajv/dist/vocabularies/format/format.js
9202
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js
9116
9203
  var require_format = __commonJS({
9117
- "node_modules/ajv/dist/vocabularies/format/format.js"(exports) {
9204
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js"(exports) {
9118
9205
  "use strict";
9119
9206
  Object.defineProperty(exports, "__esModule", { value: true });
9120
9207
  var codegen_1 = require_codegen();
@@ -9202,9 +9289,9 @@ var HoloSphere = (() => {
9202
9289
  }
9203
9290
  });
9204
9291
 
9205
- // node_modules/ajv/dist/vocabularies/format/index.js
9292
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/index.js
9206
9293
  var require_format2 = __commonJS({
9207
- "node_modules/ajv/dist/vocabularies/format/index.js"(exports) {
9294
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/index.js"(exports) {
9208
9295
  "use strict";
9209
9296
  Object.defineProperty(exports, "__esModule", { value: true });
9210
9297
  var format_1 = require_format();
@@ -9213,9 +9300,9 @@ var HoloSphere = (() => {
9213
9300
  }
9214
9301
  });
9215
9302
 
9216
- // node_modules/ajv/dist/vocabularies/metadata.js
9303
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/metadata.js
9217
9304
  var require_metadata = __commonJS({
9218
- "node_modules/ajv/dist/vocabularies/metadata.js"(exports) {
9305
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/metadata.js"(exports) {
9219
9306
  "use strict";
9220
9307
  Object.defineProperty(exports, "__esModule", { value: true });
9221
9308
  exports.contentVocabulary = exports.metadataVocabulary = void 0;
@@ -9236,9 +9323,9 @@ var HoloSphere = (() => {
9236
9323
  }
9237
9324
  });
9238
9325
 
9239
- // node_modules/ajv/dist/vocabularies/draft7.js
9326
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js
9240
9327
  var require_draft7 = __commonJS({
9241
- "node_modules/ajv/dist/vocabularies/draft7.js"(exports) {
9328
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js"(exports) {
9242
9329
  "use strict";
9243
9330
  Object.defineProperty(exports, "__esModule", { value: true });
9244
9331
  var core_1 = require_core2();
@@ -9258,9 +9345,9 @@ var HoloSphere = (() => {
9258
9345
  }
9259
9346
  });
9260
9347
 
9261
- // node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js
9348
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js
9262
9349
  var require_dynamicAnchor = __commonJS({
9263
- "node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js"(exports) {
9350
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js"(exports) {
9264
9351
  "use strict";
9265
9352
  Object.defineProperty(exports, "__esModule", { value: true });
9266
9353
  exports.dynamicAnchor = void 0;
@@ -9293,9 +9380,9 @@ var HoloSphere = (() => {
9293
9380
  }
9294
9381
  });
9295
9382
 
9296
- // node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js
9383
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js
9297
9384
  var require_dynamicRef = __commonJS({
9298
- "node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js"(exports) {
9385
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js"(exports) {
9299
9386
  "use strict";
9300
9387
  Object.defineProperty(exports, "__esModule", { value: true });
9301
9388
  exports.dynamicRef = void 0;
@@ -9339,9 +9426,9 @@ var HoloSphere = (() => {
9339
9426
  }
9340
9427
  });
9341
9428
 
9342
- // node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js
9429
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js
9343
9430
  var require_recursiveAnchor = __commonJS({
9344
- "node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js"(exports) {
9431
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js"(exports) {
9345
9432
  "use strict";
9346
9433
  Object.defineProperty(exports, "__esModule", { value: true });
9347
9434
  var dynamicAnchor_1 = require_dynamicAnchor();
@@ -9360,9 +9447,9 @@ var HoloSphere = (() => {
9360
9447
  }
9361
9448
  });
9362
9449
 
9363
- // node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js
9450
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js
9364
9451
  var require_recursiveRef = __commonJS({
9365
- "node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js"(exports) {
9452
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js"(exports) {
9366
9453
  "use strict";
9367
9454
  Object.defineProperty(exports, "__esModule", { value: true });
9368
9455
  var dynamicRef_1 = require_dynamicRef();
@@ -9375,9 +9462,9 @@ var HoloSphere = (() => {
9375
9462
  }
9376
9463
  });
9377
9464
 
9378
- // node_modules/ajv/dist/vocabularies/dynamic/index.js
9465
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/index.js
9379
9466
  var require_dynamic = __commonJS({
9380
- "node_modules/ajv/dist/vocabularies/dynamic/index.js"(exports) {
9467
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/dynamic/index.js"(exports) {
9381
9468
  "use strict";
9382
9469
  Object.defineProperty(exports, "__esModule", { value: true });
9383
9470
  var dynamicAnchor_1 = require_dynamicAnchor();
@@ -9389,9 +9476,9 @@ var HoloSphere = (() => {
9389
9476
  }
9390
9477
  });
9391
9478
 
9392
- // node_modules/ajv/dist/vocabularies/validation/dependentRequired.js
9479
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js
9393
9480
  var require_dependentRequired = __commonJS({
9394
- "node_modules/ajv/dist/vocabularies/validation/dependentRequired.js"(exports) {
9481
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js"(exports) {
9395
9482
  "use strict";
9396
9483
  Object.defineProperty(exports, "__esModule", { value: true });
9397
9484
  var dependencies_1 = require_dependencies();
@@ -9406,9 +9493,9 @@ var HoloSphere = (() => {
9406
9493
  }
9407
9494
  });
9408
9495
 
9409
- // node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js
9496
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js
9410
9497
  var require_dependentSchemas = __commonJS({
9411
- "node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js"(exports) {
9498
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js"(exports) {
9412
9499
  "use strict";
9413
9500
  Object.defineProperty(exports, "__esModule", { value: true });
9414
9501
  var dependencies_1 = require_dependencies();
@@ -9422,9 +9509,9 @@ var HoloSphere = (() => {
9422
9509
  }
9423
9510
  });
9424
9511
 
9425
- // node_modules/ajv/dist/vocabularies/validation/limitContains.js
9512
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitContains.js
9426
9513
  var require_limitContains = __commonJS({
9427
- "node_modules/ajv/dist/vocabularies/validation/limitContains.js"(exports) {
9514
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitContains.js"(exports) {
9428
9515
  "use strict";
9429
9516
  Object.defineProperty(exports, "__esModule", { value: true });
9430
9517
  var util_1 = require_util();
@@ -9442,9 +9529,9 @@ var HoloSphere = (() => {
9442
9529
  }
9443
9530
  });
9444
9531
 
9445
- // node_modules/ajv/dist/vocabularies/next.js
9532
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/next.js
9446
9533
  var require_next = __commonJS({
9447
- "node_modules/ajv/dist/vocabularies/next.js"(exports) {
9534
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/next.js"(exports) {
9448
9535
  "use strict";
9449
9536
  Object.defineProperty(exports, "__esModule", { value: true });
9450
9537
  var dependentRequired_1 = require_dependentRequired();
@@ -9455,9 +9542,9 @@ var HoloSphere = (() => {
9455
9542
  }
9456
9543
  });
9457
9544
 
9458
- // node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js
9545
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js
9459
9546
  var require_unevaluatedProperties = __commonJS({
9460
- "node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js"(exports) {
9547
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js"(exports) {
9461
9548
  "use strict";
9462
9549
  Object.defineProperty(exports, "__esModule", { value: true });
9463
9550
  var codegen_1 = require_codegen();
@@ -9521,9 +9608,9 @@ var HoloSphere = (() => {
9521
9608
  }
9522
9609
  });
9523
9610
 
9524
- // node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js
9611
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js
9525
9612
  var require_unevaluatedItems = __commonJS({
9526
- "node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js"(exports) {
9613
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js"(exports) {
9527
9614
  "use strict";
9528
9615
  Object.defineProperty(exports, "__esModule", { value: true });
9529
9616
  var codegen_1 = require_codegen();
@@ -9565,9 +9652,9 @@ var HoloSphere = (() => {
9565
9652
  }
9566
9653
  });
9567
9654
 
9568
- // node_modules/ajv/dist/vocabularies/unevaluated/index.js
9655
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/unevaluated/index.js
9569
9656
  var require_unevaluated = __commonJS({
9570
- "node_modules/ajv/dist/vocabularies/unevaluated/index.js"(exports) {
9657
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/unevaluated/index.js"(exports) {
9571
9658
  "use strict";
9572
9659
  Object.defineProperty(exports, "__esModule", { value: true });
9573
9660
  var unevaluatedProperties_1 = require_unevaluatedProperties();
@@ -9577,9 +9664,9 @@ var HoloSphere = (() => {
9577
9664
  }
9578
9665
  });
9579
9666
 
9580
- // node_modules/ajv/dist/vocabularies/discriminator/types.js
9667
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/types.js
9581
9668
  var require_types = __commonJS({
9582
- "node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports) {
9669
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports) {
9583
9670
  "use strict";
9584
9671
  Object.defineProperty(exports, "__esModule", { value: true });
9585
9672
  exports.DiscrError = void 0;
@@ -9591,9 +9678,9 @@ var HoloSphere = (() => {
9591
9678
  }
9592
9679
  });
9593
9680
 
9594
- // node_modules/ajv/dist/vocabularies/discriminator/index.js
9681
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js
9595
9682
  var require_discriminator = __commonJS({
9596
- "node_modules/ajv/dist/vocabularies/discriminator/index.js"(exports) {
9683
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js"(exports) {
9597
9684
  "use strict";
9598
9685
  Object.defineProperty(exports, "__esModule", { value: true });
9599
9686
  var codegen_1 = require_codegen();
@@ -9696,9 +9783,9 @@ var HoloSphere = (() => {
9696
9783
  }
9697
9784
  });
9698
9785
 
9699
- // node_modules/ajv/dist/refs/json-schema-2019-09/schema.json
9786
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json
9700
9787
  var require_schema = __commonJS({
9701
- "node_modules/ajv/dist/refs/json-schema-2019-09/schema.json"(exports, module) {
9788
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json"(exports, module) {
9702
9789
  module.exports = {
9703
9790
  $schema: "https://json-schema.org/draft/2019-09/schema",
9704
9791
  $id: "https://json-schema.org/draft/2019-09/schema",
@@ -9740,9 +9827,9 @@ var HoloSphere = (() => {
9740
9827
  }
9741
9828
  });
9742
9829
 
9743
- // node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json
9830
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json
9744
9831
  var require_applicator2 = __commonJS({
9745
- "node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json"(exports, module) {
9832
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json"(exports, module) {
9746
9833
  module.exports = {
9747
9834
  $schema: "https://json-schema.org/draft/2019-09/schema",
9748
9835
  $id: "https://json-schema.org/draft/2019-09/meta/applicator",
@@ -9798,9 +9885,9 @@ var HoloSphere = (() => {
9798
9885
  }
9799
9886
  });
9800
9887
 
9801
- // node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json
9888
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json
9802
9889
  var require_content = __commonJS({
9803
- "node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json"(exports, module) {
9890
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json"(exports, module) {
9804
9891
  module.exports = {
9805
9892
  $schema: "https://json-schema.org/draft/2019-09/schema",
9806
9893
  $id: "https://json-schema.org/draft/2019-09/meta/content",
@@ -9819,9 +9906,9 @@ var HoloSphere = (() => {
9819
9906
  }
9820
9907
  });
9821
9908
 
9822
- // node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json
9909
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json
9823
9910
  var require_core3 = __commonJS({
9824
- "node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json"(exports, module) {
9911
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json"(exports, module) {
9825
9912
  module.exports = {
9826
9913
  $schema: "https://json-schema.org/draft/2019-09/schema",
9827
9914
  $id: "https://json-schema.org/draft/2019-09/meta/core",
@@ -9881,9 +9968,9 @@ var HoloSphere = (() => {
9881
9968
  }
9882
9969
  });
9883
9970
 
9884
- // node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json
9971
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json
9885
9972
  var require_format3 = __commonJS({
9886
- "node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json"(exports, module) {
9973
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json"(exports, module) {
9887
9974
  module.exports = {
9888
9975
  $schema: "https://json-schema.org/draft/2019-09/schema",
9889
9976
  $id: "https://json-schema.org/draft/2019-09/meta/format",
@@ -9900,9 +9987,9 @@ var HoloSphere = (() => {
9900
9987
  }
9901
9988
  });
9902
9989
 
9903
- // node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json
9990
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json
9904
9991
  var require_meta_data = __commonJS({
9905
- "node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json"(exports, module) {
9992
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json"(exports, module) {
9906
9993
  module.exports = {
9907
9994
  $schema: "https://json-schema.org/draft/2019-09/schema",
9908
9995
  $id: "https://json-schema.org/draft/2019-09/meta/meta-data",
@@ -9941,9 +10028,9 @@ var HoloSphere = (() => {
9941
10028
  }
9942
10029
  });
9943
10030
 
9944
- // node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json
10031
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json
9945
10032
  var require_validation2 = __commonJS({
9946
- "node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json"(exports, module) {
10033
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json"(exports, module) {
9947
10034
  module.exports = {
9948
10035
  $schema: "https://json-schema.org/draft/2019-09/schema",
9949
10036
  $id: "https://json-schema.org/draft/2019-09/meta/validation",
@@ -10036,9 +10123,9 @@ var HoloSphere = (() => {
10036
10123
  }
10037
10124
  });
10038
10125
 
10039
- // node_modules/ajv/dist/refs/json-schema-2019-09/index.js
10126
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/index.js
10040
10127
  var require_json_schema_2019_09 = __commonJS({
10041
- "node_modules/ajv/dist/refs/json-schema-2019-09/index.js"(exports) {
10128
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-2019-09/index.js"(exports) {
10042
10129
  "use strict";
10043
10130
  Object.defineProperty(exports, "__esModule", { value: true });
10044
10131
  var metaSchema = require_schema();
@@ -10069,9 +10156,9 @@ var HoloSphere = (() => {
10069
10156
  }
10070
10157
  });
10071
10158
 
10072
- // node_modules/ajv/dist/2019.js
10159
+ // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/2019.js
10073
10160
  var require__ = __commonJS({
10074
- "node_modules/ajv/dist/2019.js"(exports, module) {
10161
+ "node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/2019.js"(exports, module) {
10075
10162
  "use strict";
10076
10163
  Object.defineProperty(exports, "__esModule", { value: true });
10077
10164
  exports.MissingRefError = exports.ValidationError = exports.CodeGen = exports.Name = exports.nil = exports.stringify = exports.str = exports._ = exports.KeywordCxt = exports.Ajv2019 = void 0;
@@ -10165,7 +10252,7 @@ var HoloSphere = (() => {
10165
10252
  version: () => version
10166
10253
  });
10167
10254
 
10168
- // node_modules/h3-js/dist/browser/h3-js.es.js
10255
+ // node_modules/.pnpm/h3-js@4.4.0/node_modules/h3-js/dist/browser/h3-js.es.js
10169
10256
  var libh3 = (function(libh32) {
10170
10257
  libh32 = libh32 || {};
10171
10258
  var Module = typeof libh32 !== "undefined" ? libh32 : {};
@@ -24328,9 +24415,19 @@ var HoloSphere = (() => {
24328
24415
  }
24329
24416
  );
24330
24417
  if (originalData && !originalData._invalidHologram) {
24331
- return attachHologramMeta(originalData, hologram.soul);
24418
+ const withMeta = attachHologramMeta(originalData, hologram.soul);
24419
+ if (withMeta._hologram?.sourceHolon && typeof holoInstance.getHolonName === "function") {
24420
+ try {
24421
+ const sourceHolonName = await holoInstance.getHolonName(withMeta._hologram.sourceHolon);
24422
+ if (sourceHolonName) {
24423
+ withMeta._hologram = { ...withMeta._hologram, sourceHolonName };
24424
+ }
24425
+ } catch {
24426
+ }
24427
+ }
24428
+ return withMeta;
24332
24429
  } else {
24333
- console.warn(`!!! Original data NOT FOUND for soul: ${hologram.soul}. Removing broken hologram.`);
24430
+ console.warn(`Could not resolve hologram soul: ${hologram.soul} (target not present locally)`);
24334
24431
  return null;
24335
24432
  }
24336
24433
  } else {
@@ -24348,6 +24445,23 @@ var HoloSphere = (() => {
24348
24445
  }
24349
24446
 
24350
24447
  // federation.js
24448
+ async function getHolonName(holosphere, space) {
24449
+ if (!holosphere || !space) return null;
24450
+ try {
24451
+ const settings = await holosphere.get(space, "settings", space);
24452
+ if (!settings) return null;
24453
+ if (Array.isArray(settings)) {
24454
+ const found = settings.find((s) => s && typeof s.name === "string" && s.name.trim() !== "");
24455
+ return found ? found.name : null;
24456
+ }
24457
+ if (typeof settings.name === "string" && settings.name.trim() !== "") {
24458
+ return settings.name;
24459
+ }
24460
+ return null;
24461
+ } catch {
24462
+ return null;
24463
+ }
24464
+ }
24351
24465
  async function federate(holosphere, spaceId1, spaceId2, password1 = null, password2 = null, bidirectional = true, lensConfig = {}) {
24352
24466
  if (!spaceId1 || !spaceId2) {
24353
24467
  throw new Error("federate: Missing required space IDs");
@@ -24450,7 +24564,14 @@ var HoloSphere = (() => {
24450
24564
  }
24451
24565
  const subscriptions2 = [];
24452
24566
  let lastNotificationTime = {};
24567
+ const partnerNames = /* @__PURE__ */ new Map();
24453
24568
  if (fedInfo.inbound && fedInfo.inbound.length > 0) {
24569
+ await Promise.all(
24570
+ fedInfo.inbound.map(async (space) => {
24571
+ const name = await getHolonName(holosphere, space);
24572
+ partnerNames.set(space, name);
24573
+ })
24574
+ );
24454
24575
  for (const federatedSpace of fedInfo.inbound) {
24455
24576
  for (const lens of lenses) {
24456
24577
  try {
@@ -24465,10 +24586,13 @@ var HoloSphere = (() => {
24465
24586
  }
24466
24587
  lastNotificationTime[key] = now;
24467
24588
  }
24468
- if (!data.federation) {
24469
- data.federation = {
24589
+ if (!data._federation) {
24590
+ const partnerName = partnerNames.get(federatedSpace);
24591
+ data._federation = {
24470
24592
  origin: federatedSpace,
24471
- timestamp: now
24593
+ sourceLens: lens,
24594
+ timestamp: now,
24595
+ ...partnerName ? { originName: partnerName } : {}
24472
24596
  };
24473
24597
  }
24474
24598
  await callback(data, federatedSpace, lens);
@@ -24641,7 +24765,14 @@ var HoloSphere = (() => {
24641
24765
  includeFederated = true,
24642
24766
  resolveReferences = true,
24643
24767
  maxFederatedSpaces = -1,
24644
- timeout = 1e4
24768
+ timeout = 1e4,
24769
+ // When `resolveReferences` is on, source-soul fetches that fail get
24770
+ // replaced with `{ id, _hologram: { isHologram: false, error } }`
24771
+ // error stubs (federation.js around line 654). By default we filter
24772
+ // those out of the response so consumers never render broken-card
24773
+ // placeholders. Set `includeUnresolvedStubs: true` if you actually
24774
+ // want to surface the failure to the user (e.g. an admin/debug view).
24775
+ includeUnresolvedStubs = false
24645
24776
  } = options;
24646
24777
  console.log(`resolveReferences option: ${resolveReferences}`);
24647
24778
  console.log(`Querying specific IDs:`, queryIds ? queryIds.join(", ") : "No (fetching all)");
@@ -24661,6 +24792,25 @@ var HoloSphere = (() => {
24661
24792
  const federatedSpaces = maxFederatedSpaces === -1 ? fedInfo.inbound : fedInfo.inbound.slice(0, maxFederatedSpaces);
24662
24793
  spacesToQuery = spacesToQuery.concat(federatedSpaces);
24663
24794
  }
24795
+ const remoteSpaces = spacesToQuery.filter((s) => s !== holon);
24796
+ const spaceNames = /* @__PURE__ */ new Map();
24797
+ await Promise.all(
24798
+ remoteSpaces.map(async (space) => {
24799
+ const name = await getHolonName(holosphere, space);
24800
+ spaceNames.set(space, name);
24801
+ })
24802
+ );
24803
+ const tagWithSource = (item, space) => {
24804
+ if (!item || space === holon) return item;
24805
+ const originName = spaceNames.get(space);
24806
+ const fed = {
24807
+ ...item._federation || {},
24808
+ origin: space,
24809
+ sourceLens: lens
24810
+ };
24811
+ if (originName) fed.originName = originName;
24812
+ return { ...item, _federation: fed };
24813
+ };
24664
24814
  for (const currentSpace of spacesToQuery) {
24665
24815
  if (queryIds && Array.isArray(queryIds)) {
24666
24816
  console.log(`Fetching specific IDs from ${currentSpace}: ${queryIds.join(", ")}`);
@@ -24669,7 +24819,7 @@ var HoloSphere = (() => {
24669
24819
  fetchPromises.push(
24670
24820
  holosphere.get(currentSpace, lens, itemId).then((item) => {
24671
24821
  if (item) {
24672
- fetchedItems.set(itemId, item);
24822
+ fetchedItems.set(itemId, tagWithSource(item, currentSpace));
24673
24823
  }
24674
24824
  }).catch((err) => console.warn(`Error fetching item ${itemId} from ${currentSpace}: ${err.message}`))
24675
24825
  );
@@ -24683,7 +24833,7 @@ var HoloSphere = (() => {
24683
24833
  holosphere.getAll(currentSpace, lens).then((items) => {
24684
24834
  for (const item of items) {
24685
24835
  if (item && item[idField] && !fetchedItems.has(item[idField])) {
24686
- fetchedItems.set(item[idField], item);
24836
+ fetchedItems.set(item[idField], tagWithSource(item, currentSpace));
24687
24837
  }
24688
24838
  }
24689
24839
  }).catch((err) => console.warn(`Error fetching all items from ${currentSpace}: ${err.message}`))
@@ -24715,7 +24865,21 @@ var HoloSphere = (() => {
24715
24865
  );
24716
24866
  console.log(`Original data found via soul path:`, JSON.stringify(originalData));
24717
24867
  if (originalData) {
24718
- result[i] = attachHologramMeta(originalData, item.soul);
24868
+ const withMeta = attachHologramMeta(originalData, item.soul);
24869
+ if (withMeta._hologram?.sourceHolon) {
24870
+ let sourceHolonName = spaceNames.get(withMeta._hologram.sourceHolon);
24871
+ if (sourceHolonName === void 0) {
24872
+ sourceHolonName = await getHolonName(holosphere, withMeta._hologram.sourceHolon);
24873
+ spaceNames.set(withMeta._hologram.sourceHolon, sourceHolonName);
24874
+ }
24875
+ if (sourceHolonName) {
24876
+ withMeta._hologram = {
24877
+ ...withMeta._hologram,
24878
+ sourceHolonName
24879
+ };
24880
+ }
24881
+ }
24882
+ result[i] = withMeta;
24719
24883
  } else {
24720
24884
  result[i] = {
24721
24885
  id: item.id,
@@ -24787,9 +24951,13 @@ var HoloSphere = (() => {
24787
24951
  };
24788
24952
  return base;
24789
24953
  });
24790
- return aggregatedData;
24954
+ return includeUnresolvedStubs ? aggregatedData : aggregatedData.filter(isResolved);
24791
24955
  }
24792
- return result;
24956
+ return includeUnresolvedStubs ? result : result.filter(isResolved);
24957
+ }
24958
+ function isResolved(item) {
24959
+ if (!item || typeof item !== "object") return false;
24960
+ return item._hologram?.isHologram !== false;
24793
24961
  }
24794
24962
  async function propagate(holosphere, holon, lens, data, options = {}) {
24795
24963
  if (!holosphere || !holon || !lens || !data) {
@@ -24817,7 +24985,7 @@ var HoloSphere = (() => {
24817
24985
  try {
24818
24986
  const fedInfo = await getFederation(holosphere, holon, password);
24819
24987
  if (fedInfo && fedInfo.outbound && fedInfo.outbound.length > 0) {
24820
- let spaces = fedInfo.outbound;
24988
+ let spaces = fedInfo.outbound.filter((s) => String(s) !== String(holon));
24821
24989
  if (targetSpaces && Array.isArray(targetSpaces) && targetSpaces.length > 0) {
24822
24990
  spaces = spaces.filter((space) => targetSpaces.includes(space));
24823
24991
  }
@@ -24839,6 +25007,7 @@ var HoloSphere = (() => {
24839
25007
  });
24840
25008
  if (spaces.length > 0) {
24841
25009
  const isAlreadyHologram = holosphere.isHologram(data);
25010
+ const ownName = await getHolonName(holosphere, holon);
24842
25011
  const propagatePromises = spaces.map(async (targetSpace) => {
24843
25012
  try {
24844
25013
  let payloadToPut;
@@ -24848,7 +25017,8 @@ var HoloSphere = (() => {
24848
25017
  sourceLens: lens,
24849
25018
  // The lens from which this data is being propagated
24850
25019
  propagatedAt: Date.now(),
24851
- originalId: data.id
25020
+ originalId: data.id,
25021
+ ...ownName ? { originName: ownName } : {}
24852
25022
  };
24853
25023
  if (useHolograms && !isAlreadyHologram) {
24854
25024
  const newHologram = holosphere.createHologram(holon, lens, data);
@@ -24868,6 +25038,10 @@ var HoloSphere = (() => {
24868
25038
  }
24869
25039
  };
24870
25040
  }
25041
+ if (String(targetSpace) === String(holon)) {
25042
+ result.skipped++;
25043
+ return true;
25044
+ }
24871
25045
  await holosphere.put(targetSpace, lens, payloadToPut, null, {
24872
25046
  disableHologramRedirection: true,
24873
25047
  autoPropagate: false
@@ -24933,6 +25107,7 @@ var HoloSphere = (() => {
24933
25107
  if (parentHexagons.length > 0) {
24934
25108
  result.parentPropagation.messages.push(`Found ${parentHexagons.length} parent hexagons to propagate to: ${parentHexagons.join(", ")}`);
24935
25109
  const isAlreadyHologram = holosphere.isHologram(data);
25110
+ const ownNameParent = await getHolonName(holosphere, holon);
24936
25111
  const parentPropagatePromises = parentHexagons.map(async (parentHexagon) => {
24937
25112
  try {
24938
25113
  let payloadToPut;
@@ -24945,8 +25120,9 @@ var HoloSphere = (() => {
24945
25120
  originalId: data.id,
24946
25121
  propagationType: "parent",
24947
25122
  // Indicate this is parent propagation
24948
- parentLevel: holonResolution - getResolution(parentHexagon)
25123
+ parentLevel: holonResolution - getResolution(parentHexagon),
24949
25124
  // How many levels up
25125
+ ...ownNameParent ? { originName: ownNameParent } : {}
24950
25126
  };
24951
25127
  if (useHolograms && !isAlreadyHologram) {
24952
25128
  const newHologram = holosphere.createHologram(holon, lens, data);
@@ -25214,6 +25390,61 @@ var HoloSphere = (() => {
25214
25390
  }
25215
25391
 
25216
25392
  // content.js
25393
+ var READ_TIMEOUT_MS = 8e3;
25394
+ function onceWithTimeout(node, timeoutMs = READ_TIMEOUT_MS) {
25395
+ return new Promise((resolve) => {
25396
+ let done = false;
25397
+ const finish = (v) => {
25398
+ if (!done) {
25399
+ done = true;
25400
+ resolve(v);
25401
+ }
25402
+ };
25403
+ node.once((data) => finish(data));
25404
+ if (timeoutMs > 0) {
25405
+ setTimeout(() => finish(null), timeoutMs);
25406
+ }
25407
+ });
25408
+ }
25409
+ function sanitizeForStorage(value, path = "", seen = /* @__PURE__ */ new WeakSet(), warnings = []) {
25410
+ if (value === null) return null;
25411
+ const t = typeof value;
25412
+ if (t === "number") {
25413
+ if (!Number.isFinite(value)) {
25414
+ warnings.push(`${path || "<root>"}: ${value} (non-finite number)`);
25415
+ return void 0;
25416
+ }
25417
+ return value;
25418
+ }
25419
+ if (t === "string" || t === "boolean") return value;
25420
+ if (t === "undefined" || t === "function" || t === "symbol" || t === "bigint") {
25421
+ warnings.push(`${path || "<root>"}: ${t}`);
25422
+ return void 0;
25423
+ }
25424
+ if (t === "object") {
25425
+ if (seen.has(value)) {
25426
+ warnings.push(`${path || "<root>"}: circular reference`);
25427
+ return void 0;
25428
+ }
25429
+ seen.add(value);
25430
+ if (Array.isArray(value)) {
25431
+ const out2 = [];
25432
+ for (let i = 0; i < value.length; i++) {
25433
+ const cleaned = sanitizeForStorage(value[i], `${path}[${i}]`, seen, warnings);
25434
+ out2.push(cleaned === void 0 ? null : cleaned);
25435
+ }
25436
+ return out2;
25437
+ }
25438
+ const out = {};
25439
+ for (const k of Object.keys(value)) {
25440
+ const cleaned = sanitizeForStorage(value[k], path ? `${path}.${k}` : k, seen, warnings);
25441
+ if (cleaned !== void 0) out[k] = cleaned;
25442
+ }
25443
+ return out;
25444
+ }
25445
+ warnings.push(`${path || "<root>"}: unsupported type ${t}`);
25446
+ return void 0;
25447
+ }
25217
25448
  async function put(holoInstance, holon, lens, data, password = null, options = {}) {
25218
25449
  if (!data) {
25219
25450
  throw new Error("put: Missing required data parameter");
@@ -25311,13 +25542,17 @@ var HoloSphere = (() => {
25311
25542
  }
25312
25543
  return new Promise((resolve, reject) => {
25313
25544
  try {
25314
- let dataToStore = { ...data };
25315
- if (dataToStore._meta !== void 0) {
25316
- delete dataToStore._meta;
25317
- }
25318
- if (dataToStore._hologram !== void 0) {
25319
- delete dataToStore._hologram;
25545
+ const sanitizeWarnings = [];
25546
+ let dataToStore = sanitizeForStorage(data, "", /* @__PURE__ */ new WeakSet(), sanitizeWarnings) || {};
25547
+ if (sanitizeWarnings.length > 0) {
25548
+ console.warn(
25549
+ `holosphere.put: sanitized ${sanitizeWarnings.length} field(s) at ${targetHolon}/${targetLens}/${targetKey} (id=${data.id}):`,
25550
+ sanitizeWarnings
25551
+ );
25320
25552
  }
25553
+ if (dataToStore._meta !== void 0) delete dataToStore._meta;
25554
+ if (dataToStore._hologram !== void 0) delete dataToStore._hologram;
25555
+ if (!isHologram2 && dataToStore._federation !== void 0) delete dataToStore._federation;
25321
25556
  const payload = JSON.stringify(dataToStore);
25322
25557
  const putCallback = async (ack) => {
25323
25558
  if (ack.err) {
@@ -25465,7 +25700,19 @@ var HoloSphere = (() => {
25465
25700
  console.error("get: Missing required parameters");
25466
25701
  return null;
25467
25702
  }
25468
- const { resolveHolograms = true, validationOptions = {}, visited } = options;
25703
+ const {
25704
+ resolveHolograms = true,
25705
+ validationOptions = {},
25706
+ visited,
25707
+ timeout = READ_TIMEOUT_MS,
25708
+ // `_deleted: true` is the soft-tombstone convention used by the bot,
25709
+ // the web dashboard, and the MCP council tools. Pre-this fix the
25710
+ // library was unaware of it and every caller filtered defensively.
25711
+ // Now `get` returns `null` for tombstoned records by default; pass
25712
+ // `includeDeleted: true` to surface them (admin/debug views,
25713
+ // history reconstruction, etc.).
25714
+ includeDeleted = false
25715
+ } = options;
25469
25716
  let schema = null;
25470
25717
  if (holoInstance.strict) {
25471
25718
  schema = await holoInstance.getSchema(lens);
@@ -25501,6 +25748,10 @@ var HoloSphere = (() => {
25501
25748
  resolve(null);
25502
25749
  return;
25503
25750
  }
25751
+ if (!includeDeleted && parsed._deleted === true) {
25752
+ resolve(null);
25753
+ return;
25754
+ }
25504
25755
  if (resolveHolograms && holoInstance.isHologram(parsed)) {
25505
25756
  const resolvedValue = await holoInstance.resolveHologram(parsed, {
25506
25757
  followHolograms: resolveHolograms,
@@ -25509,13 +25760,7 @@ var HoloSphere = (() => {
25509
25760
  currentDepth: options.currentDepth || 0
25510
25761
  });
25511
25762
  if (resolvedValue === null) {
25512
- console.warn(`Broken hologram detected at ${holon}/${lens}/${key}. Removing it...`);
25513
- try {
25514
- await holoInstance.delete(holon, lens, key, password);
25515
- console.log(`Successfully removed broken hologram from ${holon}/${lens}/${key}`);
25516
- } catch (cleanupError) {
25517
- console.error(`Failed to remove broken hologram at ${holon}/${lens}/${key}:`, cleanupError);
25518
- }
25763
+ console.warn(`Hologram at ${holon}/${lens}/${key} did not resolve (soul=${parsed.soul}); skipping.`);
25519
25764
  resolve(null);
25520
25765
  return;
25521
25766
  }
@@ -25545,17 +25790,23 @@ var HoloSphere = (() => {
25545
25790
  }
25546
25791
  };
25547
25792
  const dataPath = password ? user.get("private").get(lens).get(key) : holoInstance.gun.get(holoInstance.appname).get(holon).get(lens).get(key);
25548
- dataPath.once(handleData);
25793
+ onceWithTimeout(dataPath, timeout).then(handleData);
25549
25794
  });
25550
25795
  } catch (error) {
25551
25796
  console.error("Error in get:", error);
25552
25797
  return null;
25553
25798
  }
25554
25799
  }
25555
- async function getAll(holoInstance, holon, lens, password = null) {
25800
+ async function getAll(holoInstance, holon, lens, password = null, options = {}) {
25556
25801
  if (!holon || !lens) {
25557
25802
  throw new Error("getAll: Missing required parameters");
25558
25803
  }
25804
+ const {
25805
+ timeout = READ_TIMEOUT_MS,
25806
+ // See `get` above: `_deleted: true` records are dropped from the
25807
+ // response unless the caller opts in.
25808
+ includeDeleted = false
25809
+ } = options;
25559
25810
  const schema = await holoInstance.getSchema(lens);
25560
25811
  if (!schema && holoInstance.strict) {
25561
25812
  throw new Error("getAll: Schema required in strict mode");
@@ -25607,7 +25858,7 @@ var HoloSphere = (() => {
25607
25858
  const output = /* @__PURE__ */ new Map();
25608
25859
  const pendingProcessing = [];
25609
25860
  const dataPath = password ? user.get("private").get(lens) : holoInstance.gun.get(holoInstance.appname).get(holon).get(lens);
25610
- const shallowOnce = () => new Promise((res) => dataPath.once((d) => res(d)));
25861
+ const shallowOnce = () => onceWithTimeout(dataPath, timeout);
25611
25862
  const processShallow = (data) => {
25612
25863
  if (!data) {
25613
25864
  resolve([]);
@@ -25630,6 +25881,7 @@ var HoloSphere = (() => {
25630
25881
  try {
25631
25882
  const parsed = await holoInstance.parse(itemData);
25632
25883
  if (!parsed || !parsed.id) return;
25884
+ if (!includeDeleted && parsed._deleted === true) return;
25633
25885
  if (holoInstance.isHologram(parsed)) {
25634
25886
  try {
25635
25887
  const resolved = await holoInstance.resolveHologram(parsed, {
@@ -25638,12 +25890,7 @@ var HoloSphere = (() => {
25638
25890
  currentDepth: 0
25639
25891
  });
25640
25892
  if (resolved === null) {
25641
- console.warn(`Broken hologram detected in getAll for key ${key}. Removing it...`);
25642
- try {
25643
- await holoInstance.delete(holon, lens, key, password);
25644
- } catch (cleanupError) {
25645
- console.error(`Failed to remove broken hologram at ${holon}/${lens}/${key}:`, cleanupError);
25646
- }
25893
+ console.warn(`Hologram at ${holon}/${lens}/${key} did not resolve (soul=${parsed.soul}); skipping.`);
25647
25894
  return;
25648
25895
  }
25649
25896
  if (resolved && resolved !== parsed) {
@@ -25679,11 +25926,7 @@ var HoloSphere = (() => {
25679
25926
  if (typeof inline !== "object" || inline === null) {
25680
25927
  return processItem(inline, key);
25681
25928
  }
25682
- return new Promise((resolveItem) => {
25683
- dataPath.get(key).once((itemData) => {
25684
- processItem(itemData, key).then(resolveItem, resolveItem);
25685
- });
25686
- });
25929
+ return onceWithTimeout(dataPath.get(key), timeout).then((itemData) => processItem(itemData, key));
25687
25930
  })).then(() => resolve(Array.from(output.values())));
25688
25931
  };
25689
25932
  (async () => {
@@ -26687,7 +26930,7 @@ var HoloSphere = (() => {
26687
26930
  throw error;
26688
26931
  }
26689
26932
  }
26690
- async function subscribeGlobal(holoInstance, tableName, key, callback, options = {}) {
26933
+ function subscribeGlobal(holoInstance, tableName, key, callback, options = {}) {
26691
26934
  const dataPath = holoInstance.gun.get(holoInstance.appname).get(tableName);
26692
26935
  let active = true;
26693
26936
  if (key) {
@@ -26932,7 +27175,7 @@ var HoloSphere = (() => {
26932
27175
  }
26933
27176
  return list;
26934
27177
  }
26935
- async function subscribe(holoInstance, holon, lens, callback) {
27178
+ function subscribe(holoInstance, holon, lens, callback) {
26936
27179
  if (!holon || !lens) {
26937
27180
  throw new Error("subscribe: Missing holon or lens parameters:", holon, lens);
26938
27181
  }
@@ -26955,6 +27198,10 @@ var HoloSphere = (() => {
26955
27198
  parsed = resolved;
26956
27199
  }
26957
27200
  }
27201
+ if (parsed !== null && (typeof parsed !== "object" || Array.isArray(parsed))) {
27202
+ console.warn(`[holosphere.subscribe] dropping non-object payload at ${holon}/${lens}/${key}:`, typeof parsed);
27203
+ return;
27204
+ }
26958
27205
  if (holoInstance.subscriptions[subscriptionId]) {
26959
27206
  callback(parsed, key);
26960
27207
  }
@@ -26974,7 +27221,7 @@ var HoloSphere = (() => {
26974
27221
  // Store the listener too (optional, maybe needed for close?)
26975
27222
  };
26976
27223
  return {
26977
- unsubscribe: async () => {
27224
+ unsubscribe: () => {
26978
27225
  const sub = holoInstance.subscriptions[subscriptionId];
26979
27226
  if (!sub) {
26980
27227
  return;
@@ -27100,10 +27347,10 @@ var HoloSphere = (() => {
27100
27347
  return `${holoInstance.appname}:${holonId}`;
27101
27348
  }
27102
27349
 
27103
- // node_modules/@noble/hashes/esm/crypto.js
27350
+ // node_modules/.pnpm/@noble+hashes@1.8.0/node_modules/@noble/hashes/esm/crypto.js
27104
27351
  var crypto = typeof globalThis === "object" && "crypto" in globalThis ? globalThis.crypto : void 0;
27105
27352
 
27106
- // node_modules/@noble/hashes/esm/utils.js
27353
+ // node_modules/.pnpm/@noble+hashes@1.8.0/node_modules/@noble/hashes/esm/utils.js
27107
27354
  function isBytes(a) {
27108
27355
  return a instanceof Uint8Array || ArrayBuffer.isView(a) && a.constructor.name === "Uint8Array";
27109
27356
  }
@@ -27239,7 +27486,7 @@ var HoloSphere = (() => {
27239
27486
  throw new Error("crypto.getRandomValues must be defined");
27240
27487
  }
27241
27488
 
27242
- // node_modules/@noble/hashes/esm/_md.js
27489
+ // node_modules/.pnpm/@noble+hashes@1.8.0/node_modules/@noble/hashes/esm/_md.js
27243
27490
  function setBigUint64(view, byteOffset, value, isLE) {
27244
27491
  if (typeof view.setBigUint64 === "function")
27245
27492
  return view.setBigUint64(byteOffset, value, isLE);
@@ -27359,7 +27606,7 @@ var HoloSphere = (() => {
27359
27606
  1541459225
27360
27607
  ]);
27361
27608
 
27362
- // node_modules/@noble/hashes/esm/sha2.js
27609
+ // node_modules/.pnpm/@noble+hashes@1.8.0/node_modules/@noble/hashes/esm/sha2.js
27363
27610
  var SHA256_K = /* @__PURE__ */ Uint32Array.from([
27364
27611
  1116352408,
27365
27612
  1899447441,
@@ -27499,7 +27746,7 @@ var HoloSphere = (() => {
27499
27746
  };
27500
27747
  var sha256 = /* @__PURE__ */ createHasher(() => new SHA256());
27501
27748
 
27502
- // node_modules/@noble/hashes/esm/hmac.js
27749
+ // node_modules/.pnpm/@noble+hashes@1.8.0/node_modules/@noble/hashes/esm/hmac.js
27503
27750
  var HMAC = class extends Hash {
27504
27751
  constructor(hash, _key) {
27505
27752
  super();
@@ -27567,7 +27814,7 @@ var HoloSphere = (() => {
27567
27814
  var hmac = (hash, key, message) => new HMAC(hash, key).update(message).digest();
27568
27815
  hmac.create = (hash, key) => new HMAC(hash, key);
27569
27816
 
27570
- // node_modules/@noble/curves/esm/utils.js
27817
+ // node_modules/.pnpm/@noble+curves@1.9.7/node_modules/@noble/curves/esm/utils.js
27571
27818
  var _0n = /* @__PURE__ */ BigInt(0);
27572
27819
  var _1n = /* @__PURE__ */ BigInt(1);
27573
27820
  function _abool2(value, title = "") {
@@ -27720,7 +27967,7 @@ var HoloSphere = (() => {
27720
27967
  };
27721
27968
  }
27722
27969
 
27723
- // node_modules/@noble/curves/esm/abstract/modular.js
27970
+ // node_modules/.pnpm/@noble+curves@1.9.7/node_modules/@noble/curves/esm/abstract/modular.js
27724
27971
  var _0n2 = BigInt(0);
27725
27972
  var _1n2 = BigInt(1);
27726
27973
  var _2n = /* @__PURE__ */ BigInt(2);
@@ -28065,7 +28312,7 @@ var HoloSphere = (() => {
28065
28312
  return isLE ? numberToBytesLE(reduced, fieldLen) : numberToBytesBE(reduced, fieldLen);
28066
28313
  }
28067
28314
 
28068
- // node_modules/@noble/curves/esm/abstract/curve.js
28315
+ // node_modules/.pnpm/@noble+curves@1.9.7/node_modules/@noble/curves/esm/abstract/curve.js
28069
28316
  var _0n3 = BigInt(0);
28070
28317
  var _1n3 = BigInt(1);
28071
28318
  function negateCt(condition, item) {
@@ -28343,7 +28590,7 @@ var HoloSphere = (() => {
28343
28590
  return { CURVE, Fp, Fn };
28344
28591
  }
28345
28592
 
28346
- // node_modules/@noble/curves/esm/abstract/weierstrass.js
28593
+ // node_modules/.pnpm/@noble+curves@1.9.7/node_modules/@noble/curves/esm/abstract/weierstrass.js
28347
28594
  var divNearest = (num, den) => (num + (num >= 0 ? den : -den) / _2n2) / den;
28348
28595
  function _splitEndoScalar(k, basis, n) {
28349
28596
  const [[a1, b1], [a2, b2]] = basis;
@@ -29357,13 +29604,13 @@ var HoloSphere = (() => {
29357
29604
  return _ecdsa_new_output_to_legacy(c, signs);
29358
29605
  }
29359
29606
 
29360
- // node_modules/@noble/curves/esm/_shortw_utils.js
29607
+ // node_modules/.pnpm/@noble+curves@1.9.7/node_modules/@noble/curves/esm/_shortw_utils.js
29361
29608
  function createCurve(curveDef, defHash) {
29362
29609
  const create = (hash) => weierstrass({ ...curveDef, hash });
29363
29610
  return { ...create(defHash), create };
29364
29611
  }
29365
29612
 
29366
- // node_modules/@noble/curves/esm/secp256k1.js
29613
+ // node_modules/.pnpm/@noble+curves@1.9.7/node_modules/@noble/curves/esm/secp256k1.js
29367
29614
  var secp256k1_CURVE = {
29368
29615
  p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
29369
29616
  n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
@@ -29406,7 +29653,7 @@ var HoloSphere = (() => {
29406
29653
  var Fpk1 = Field(secp256k1_CURVE.p, { sqrt: sqrtMod });
29407
29654
  var secp256k1 = createCurve({ ...secp256k1_CURVE, Fp: Fpk1, lowS: true, endo: secp256k1_ENDO }, sha256);
29408
29655
 
29409
- // node_modules/@scure/base/lib/esm/index.js
29656
+ // node_modules/.pnpm/@scure+base@1.2.6/node_modules/@scure/base/lib/esm/index.js
29410
29657
  function isBytes2(a) {
29411
29658
  return a instanceof Uint8Array || ArrayBuffer.isView(a) && a.constructor.name === "Uint8Array";
29412
29659
  }
@@ -30224,6 +30471,7 @@ var HoloSphere = (() => {
30224
30471
  this.openai = null;
30225
30472
  this.subscriptions = {};
30226
30473
  this.schemaCache = /* @__PURE__ */ new Map();
30474
+ this._holonNameCache = /* @__PURE__ */ new Map();
30227
30475
  this._allowedAuthors = /* @__PURE__ */ new Set();
30228
30476
  }
30229
30477
  /**
@@ -30277,8 +30525,8 @@ var HoloSphere = (() => {
30277
30525
  }
30278
30526
  return get(this, holon, lens, key, password, options);
30279
30527
  }
30280
- async getAll(holon, lens, password = null) {
30281
- return getAll(this, holon, lens, password);
30528
+ async getAll(holon, lens, password = null, options = {}) {
30529
+ return getAll(this, holon, lens, password, options);
30282
30530
  }
30283
30531
  async parse(rawData) {
30284
30532
  return parse(this, rawData);
@@ -30330,8 +30578,10 @@ var HoloSphere = (() => {
30330
30578
  /**
30331
30579
  * Subscribe to real-time changes in a global table.
30332
30580
  * v2-compatible: subscribeGlobal(lens, key, callback, options)
30581
+ *
30582
+ * Returns synchronously — see {@link subscribe}.
30333
30583
  */
30334
- async subscribeGlobal(lens, keyOrCallback, callbackOrOptions, options = {}) {
30584
+ subscribeGlobal(lens, keyOrCallback, callbackOrOptions, options = {}) {
30335
30585
  let key, callback;
30336
30586
  if (typeof keyOrCallback === "function") {
30337
30587
  callback = keyOrCallback;
@@ -30387,12 +30637,50 @@ var HoloSphere = (() => {
30387
30637
  getHolonScalespace(holon) {
30388
30638
  return getHolonScalespace(holon);
30389
30639
  }
30390
- async subscribe(holon, lens, callback) {
30640
+ /**
30641
+ * Subscribe to real-time changes for a holon/lens.
30642
+ *
30643
+ * Synchronous return: `{ unsubscribe: () => void }`. Callers do not
30644
+ * need to `await` — both `const s = holosphere.subscribe(...)` and
30645
+ * `const s = await holosphere.subscribe(...)` yield the same shape.
30646
+ */
30647
+ subscribe(holon, lens, callback) {
30391
30648
  return subscribe(this, holon, lens, callback);
30392
30649
  }
30393
30650
  notifySubscribers(data) {
30394
30651
  return notifySubscribers(this, data);
30395
30652
  }
30653
+ /**
30654
+ * Resolve a holon's display name from its `settings/<holon>` record.
30655
+ * Cached per-instance so repeated lookups (e.g. one per hologram in a
30656
+ * federated batch) only fetch once. Returns `null` when no name is set.
30657
+ *
30658
+ * Used internally by `resolveHologram` to stamp
30659
+ * `_hologram.sourceHolonName` so every consumer of a resolved hologram
30660
+ * already has the display name without a second round-trip.
30661
+ */
30662
+ async getHolonName(holonId) {
30663
+ if (!holonId) return null;
30664
+ const key = String(holonId);
30665
+ if (this._holonNameCache.has(key)) return this._holonNameCache.get(key);
30666
+ try {
30667
+ const settings = await this.get(key, "settings", key);
30668
+ let name = null;
30669
+ if (settings) {
30670
+ if (Array.isArray(settings)) {
30671
+ const found = settings.find((s) => s && typeof s.name === "string" && s.name.trim() !== "");
30672
+ name = found ? found.name : null;
30673
+ } else if (typeof settings.name === "string" && settings.name.trim() !== "") {
30674
+ name = settings.name;
30675
+ }
30676
+ }
30677
+ this._holonNameCache.set(key, name);
30678
+ return name;
30679
+ } catch {
30680
+ this._holonNameCache.set(key, null);
30681
+ return null;
30682
+ }
30683
+ }
30396
30684
  generateId() {
30397
30685
  return generateId();
30398
30686
  }