@nodegx/mcp 0.2.4 → 0.2.6

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.
@@ -32,9 +32,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
32
32
  ));
33
33
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
34
34
 
35
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/codegen/code.js
35
+ // ../../node_modules/ajv/dist/compile/codegen/code.js
36
36
  var require_code = __commonJS({
37
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/codegen/code.js"(exports2) {
37
+ "../../node_modules/ajv/dist/compile/codegen/code.js"(exports2) {
38
38
  "use strict";
39
39
  Object.defineProperty(exports2, "__esModule", { value: true });
40
40
  exports2.regexpCode = exports2.getEsmExportName = exports2.getProperty = exports2.safeStringify = exports2.stringify = exports2.strConcat = exports2.addCodeArg = exports2.str = exports2._ = exports2.nil = exports2._Code = exports2.Name = exports2.IDENTIFIER = exports2._CodeOrName = void 0;
@@ -186,9 +186,9 @@ var require_code = __commonJS({
186
186
  }
187
187
  });
188
188
 
189
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/codegen/scope.js
189
+ // ../../node_modules/ajv/dist/compile/codegen/scope.js
190
190
  var require_scope = __commonJS({
191
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/codegen/scope.js"(exports2) {
191
+ "../../node_modules/ajv/dist/compile/codegen/scope.js"(exports2) {
192
192
  "use strict";
193
193
  Object.defineProperty(exports2, "__esModule", { value: true });
194
194
  exports2.ValueScope = exports2.ValueScopeName = exports2.Scope = exports2.varKinds = exports2.UsedValueState = void 0;
@@ -331,9 +331,9 @@ var require_scope = __commonJS({
331
331
  }
332
332
  });
333
333
 
334
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/codegen/index.js
334
+ // ../../node_modules/ajv/dist/compile/codegen/index.js
335
335
  var require_codegen = __commonJS({
336
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/codegen/index.js"(exports2) {
336
+ "../../node_modules/ajv/dist/compile/codegen/index.js"(exports2) {
337
337
  "use strict";
338
338
  Object.defineProperty(exports2, "__esModule", { value: true });
339
339
  exports2.or = exports2.and = exports2.not = exports2.CodeGen = exports2.operators = exports2.varKinds = exports2.ValueScopeName = exports2.ValueScope = exports2.Scope = exports2.Name = exports2.regexpCode = exports2.stringify = exports2.getProperty = exports2.nil = exports2.strConcat = exports2.str = exports2._ = void 0;
@@ -1051,9 +1051,9 @@ var require_codegen = __commonJS({
1051
1051
  }
1052
1052
  });
1053
1053
 
1054
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/util.js
1054
+ // ../../node_modules/ajv/dist/compile/util.js
1055
1055
  var require_util = __commonJS({
1056
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/util.js"(exports2) {
1056
+ "../../node_modules/ajv/dist/compile/util.js"(exports2) {
1057
1057
  "use strict";
1058
1058
  Object.defineProperty(exports2, "__esModule", { value: true });
1059
1059
  exports2.checkStrictMode = exports2.getErrorPath = exports2.Type = exports2.useFunc = exports2.setEvaluated = exports2.evaluatedPropsToName = exports2.mergeEvaluated = exports2.eachItem = exports2.unescapeJsonPointer = exports2.escapeJsonPointer = exports2.escapeFragment = exports2.unescapeFragment = exports2.schemaRefOrVal = exports2.schemaHasRulesButRef = exports2.schemaHasRules = exports2.checkUnknownRules = exports2.alwaysValidSchema = exports2.toHash = void 0;
@@ -1218,9 +1218,9 @@ var require_util = __commonJS({
1218
1218
  }
1219
1219
  });
1220
1220
 
1221
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/names.js
1221
+ // ../../node_modules/ajv/dist/compile/names.js
1222
1222
  var require_names = __commonJS({
1223
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/names.js"(exports2) {
1223
+ "../../node_modules/ajv/dist/compile/names.js"(exports2) {
1224
1224
  "use strict";
1225
1225
  Object.defineProperty(exports2, "__esModule", { value: true });
1226
1226
  var codegen_1 = require_codegen();
@@ -1257,9 +1257,9 @@ var require_names = __commonJS({
1257
1257
  }
1258
1258
  });
1259
1259
 
1260
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/errors.js
1260
+ // ../../node_modules/ajv/dist/compile/errors.js
1261
1261
  var require_errors = __commonJS({
1262
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/errors.js"(exports2) {
1262
+ "../../node_modules/ajv/dist/compile/errors.js"(exports2) {
1263
1263
  "use strict";
1264
1264
  Object.defineProperty(exports2, "__esModule", { value: true });
1265
1265
  exports2.extendErrors = exports2.resetErrorsCount = exports2.reportExtraError = exports2.reportError = exports2.keyword$DataError = exports2.keywordError = void 0;
@@ -1379,9 +1379,9 @@ var require_errors = __commonJS({
1379
1379
  }
1380
1380
  });
1381
1381
 
1382
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/boolSchema.js
1382
+ // ../../node_modules/ajv/dist/compile/validate/boolSchema.js
1383
1383
  var require_boolSchema = __commonJS({
1384
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/boolSchema.js"(exports2) {
1384
+ "../../node_modules/ajv/dist/compile/validate/boolSchema.js"(exports2) {
1385
1385
  "use strict";
1386
1386
  Object.defineProperty(exports2, "__esModule", { value: true });
1387
1387
  exports2.boolOrEmptySchema = exports2.topBoolOrEmptySchema = void 0;
@@ -1430,9 +1430,9 @@ var require_boolSchema = __commonJS({
1430
1430
  }
1431
1431
  });
1432
1432
 
1433
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/rules.js
1433
+ // ../../node_modules/ajv/dist/compile/rules.js
1434
1434
  var require_rules = __commonJS({
1435
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/rules.js"(exports2) {
1435
+ "../../node_modules/ajv/dist/compile/rules.js"(exports2) {
1436
1436
  "use strict";
1437
1437
  Object.defineProperty(exports2, "__esModule", { value: true });
1438
1438
  exports2.getRules = exports2.isJSONType = void 0;
@@ -1461,9 +1461,9 @@ var require_rules = __commonJS({
1461
1461
  }
1462
1462
  });
1463
1463
 
1464
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/applicability.js
1464
+ // ../../node_modules/ajv/dist/compile/validate/applicability.js
1465
1465
  var require_applicability = __commonJS({
1466
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/applicability.js"(exports2) {
1466
+ "../../node_modules/ajv/dist/compile/validate/applicability.js"(exports2) {
1467
1467
  "use strict";
1468
1468
  Object.defineProperty(exports2, "__esModule", { value: true });
1469
1469
  exports2.shouldUseRule = exports2.shouldUseGroup = exports2.schemaHasRulesForType = void 0;
@@ -1484,9 +1484,9 @@ var require_applicability = __commonJS({
1484
1484
  }
1485
1485
  });
1486
1486
 
1487
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/dataType.js
1487
+ // ../../node_modules/ajv/dist/compile/validate/dataType.js
1488
1488
  var require_dataType = __commonJS({
1489
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/dataType.js"(exports2) {
1489
+ "../../node_modules/ajv/dist/compile/validate/dataType.js"(exports2) {
1490
1490
  "use strict";
1491
1491
  Object.defineProperty(exports2, "__esModule", { value: true });
1492
1492
  exports2.reportTypeError = exports2.checkDataTypes = exports2.checkDataType = exports2.coerceAndCheckDataType = exports2.getJSONTypes = exports2.getSchemaTypes = exports2.DataType = void 0;
@@ -1668,9 +1668,9 @@ var require_dataType = __commonJS({
1668
1668
  }
1669
1669
  });
1670
1670
 
1671
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/defaults.js
1671
+ // ../../node_modules/ajv/dist/compile/validate/defaults.js
1672
1672
  var require_defaults = __commonJS({
1673
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/defaults.js"(exports2) {
1673
+ "../../node_modules/ajv/dist/compile/validate/defaults.js"(exports2) {
1674
1674
  "use strict";
1675
1675
  Object.defineProperty(exports2, "__esModule", { value: true });
1676
1676
  exports2.assignDefaults = void 0;
@@ -1705,9 +1705,9 @@ var require_defaults = __commonJS({
1705
1705
  }
1706
1706
  });
1707
1707
 
1708
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/code.js
1708
+ // ../../node_modules/ajv/dist/vocabularies/code.js
1709
1709
  var require_code2 = __commonJS({
1710
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/code.js"(exports2) {
1710
+ "../../node_modules/ajv/dist/vocabularies/code.js"(exports2) {
1711
1711
  "use strict";
1712
1712
  Object.defineProperty(exports2, "__esModule", { value: true });
1713
1713
  exports2.validateUnion = exports2.validateArray = exports2.usePattern = exports2.callValidateCode = exports2.schemaProperties = exports2.allSchemaProperties = exports2.noPropertyInData = exports2.propertyInData = exports2.isOwnProperty = exports2.hasPropFunc = exports2.reportMissingProp = exports2.checkMissingProp = exports2.checkReportMissingProp = void 0;
@@ -1838,9 +1838,9 @@ var require_code2 = __commonJS({
1838
1838
  }
1839
1839
  });
1840
1840
 
1841
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/keyword.js
1841
+ // ../../node_modules/ajv/dist/compile/validate/keyword.js
1842
1842
  var require_keyword = __commonJS({
1843
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/keyword.js"(exports2) {
1843
+ "../../node_modules/ajv/dist/compile/validate/keyword.js"(exports2) {
1844
1844
  "use strict";
1845
1845
  Object.defineProperty(exports2, "__esModule", { value: true });
1846
1846
  exports2.validateKeywordUsage = exports2.validSchemaType = exports2.funcKeywordCode = exports2.macroKeywordCode = void 0;
@@ -1956,9 +1956,9 @@ var require_keyword = __commonJS({
1956
1956
  }
1957
1957
  });
1958
1958
 
1959
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/subschema.js
1959
+ // ../../node_modules/ajv/dist/compile/validate/subschema.js
1960
1960
  var require_subschema = __commonJS({
1961
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/subschema.js"(exports2) {
1961
+ "../../node_modules/ajv/dist/compile/validate/subschema.js"(exports2) {
1962
1962
  "use strict";
1963
1963
  Object.defineProperty(exports2, "__esModule", { value: true });
1964
1964
  exports2.extendSubschemaMode = exports2.extendSubschemaData = exports2.getSubschema = void 0;
@@ -2039,9 +2039,9 @@ var require_subschema = __commonJS({
2039
2039
  }
2040
2040
  });
2041
2041
 
2042
- // ../../../../OpenNoodl/node_modules/fast-deep-equal/index.js
2042
+ // ../../node_modules/fast-deep-equal/index.js
2043
2043
  var require_fast_deep_equal = __commonJS({
2044
- "../../../../OpenNoodl/node_modules/fast-deep-equal/index.js"(exports2, module2) {
2044
+ "../../node_modules/fast-deep-equal/index.js"(exports2, module2) {
2045
2045
  "use strict";
2046
2046
  module2.exports = function equal(a, b) {
2047
2047
  if (a === b) return true;
@@ -2074,9 +2074,9 @@ var require_fast_deep_equal = __commonJS({
2074
2074
  }
2075
2075
  });
2076
2076
 
2077
- // ../../../../OpenNoodl/node_modules/json-schema-traverse/index.js
2077
+ // ../../node_modules/json-schema-traverse/index.js
2078
2078
  var require_json_schema_traverse = __commonJS({
2079
- "../../../../OpenNoodl/node_modules/json-schema-traverse/index.js"(exports2, module2) {
2079
+ "../../node_modules/json-schema-traverse/index.js"(exports2, module2) {
2080
2080
  "use strict";
2081
2081
  var traverse = module2.exports = function(schema, opts, cb) {
2082
2082
  if (typeof opts == "function") {
@@ -2162,9 +2162,9 @@ var require_json_schema_traverse = __commonJS({
2162
2162
  }
2163
2163
  });
2164
2164
 
2165
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/resolve.js
2165
+ // ../../node_modules/ajv/dist/compile/resolve.js
2166
2166
  var require_resolve = __commonJS({
2167
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/resolve.js"(exports2) {
2167
+ "../../node_modules/ajv/dist/compile/resolve.js"(exports2) {
2168
2168
  "use strict";
2169
2169
  Object.defineProperty(exports2, "__esModule", { value: true });
2170
2170
  exports2.getSchemaRefs = exports2.resolveUrl = exports2.normalizeId = exports2._getFullPath = exports2.getFullPath = exports2.inlineRef = void 0;
@@ -2318,9 +2318,9 @@ var require_resolve = __commonJS({
2318
2318
  }
2319
2319
  });
2320
2320
 
2321
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/index.js
2321
+ // ../../node_modules/ajv/dist/compile/validate/index.js
2322
2322
  var require_validate = __commonJS({
2323
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/validate/index.js"(exports2) {
2323
+ "../../node_modules/ajv/dist/compile/validate/index.js"(exports2) {
2324
2324
  "use strict";
2325
2325
  Object.defineProperty(exports2, "__esModule", { value: true });
2326
2326
  exports2.getData = exports2.KeywordCxt = exports2.validateFunctionCode = void 0;
@@ -2826,9 +2826,9 @@ var require_validate = __commonJS({
2826
2826
  }
2827
2827
  });
2828
2828
 
2829
- // ../../../../OpenNoodl/node_modules/ajv/dist/runtime/validation_error.js
2829
+ // ../../node_modules/ajv/dist/runtime/validation_error.js
2830
2830
  var require_validation_error = __commonJS({
2831
- "../../../../OpenNoodl/node_modules/ajv/dist/runtime/validation_error.js"(exports2) {
2831
+ "../../node_modules/ajv/dist/runtime/validation_error.js"(exports2) {
2832
2832
  "use strict";
2833
2833
  Object.defineProperty(exports2, "__esModule", { value: true });
2834
2834
  var ValidationError = class extends Error {
@@ -2842,9 +2842,9 @@ var require_validation_error = __commonJS({
2842
2842
  }
2843
2843
  });
2844
2844
 
2845
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/ref_error.js
2845
+ // ../../node_modules/ajv/dist/compile/ref_error.js
2846
2846
  var require_ref_error = __commonJS({
2847
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/ref_error.js"(exports2) {
2847
+ "../../node_modules/ajv/dist/compile/ref_error.js"(exports2) {
2848
2848
  "use strict";
2849
2849
  Object.defineProperty(exports2, "__esModule", { value: true });
2850
2850
  var resolve_1 = require_resolve();
@@ -2859,9 +2859,9 @@ var require_ref_error = __commonJS({
2859
2859
  }
2860
2860
  });
2861
2861
 
2862
- // ../../../../OpenNoodl/node_modules/ajv/dist/compile/index.js
2862
+ // ../../node_modules/ajv/dist/compile/index.js
2863
2863
  var require_compile = __commonJS({
2864
- "../../../../OpenNoodl/node_modules/ajv/dist/compile/index.js"(exports2) {
2864
+ "../../node_modules/ajv/dist/compile/index.js"(exports2) {
2865
2865
  "use strict";
2866
2866
  Object.defineProperty(exports2, "__esModule", { value: true });
2867
2867
  exports2.resolveSchema = exports2.getCompilingSchema = exports2.resolveRef = exports2.compileSchema = exports2.SchemaEnv = void 0;
@@ -3083,9 +3083,9 @@ var require_compile = __commonJS({
3083
3083
  }
3084
3084
  });
3085
3085
 
3086
- // ../../../../OpenNoodl/node_modules/ajv/dist/refs/data.json
3086
+ // ../../node_modules/ajv/dist/refs/data.json
3087
3087
  var require_data = __commonJS({
3088
- "../../../../OpenNoodl/node_modules/ajv/dist/refs/data.json"(exports2, module2) {
3088
+ "../../node_modules/ajv/dist/refs/data.json"(exports2, module2) {
3089
3089
  module2.exports = {
3090
3090
  $id: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",
3091
3091
  description: "Meta-schema for $data reference (JSON AnySchema extension proposal)",
@@ -3102,9 +3102,9 @@ var require_data = __commonJS({
3102
3102
  }
3103
3103
  });
3104
3104
 
3105
- // ../../../../OpenNoodl/node_modules/fast-uri/lib/utils.js
3105
+ // ../../node_modules/fast-uri/lib/utils.js
3106
3106
  var require_utils = __commonJS({
3107
- "../../../../OpenNoodl/node_modules/fast-uri/lib/utils.js"(exports2, module2) {
3107
+ "../../node_modules/fast-uri/lib/utils.js"(exports2, module2) {
3108
3108
  "use strict";
3109
3109
  var isUUID = RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);
3110
3110
  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);
@@ -3415,9 +3415,9 @@ var require_utils = __commonJS({
3415
3415
  }
3416
3416
  });
3417
3417
 
3418
- // ../../../../OpenNoodl/node_modules/fast-uri/lib/schemes.js
3418
+ // ../../node_modules/fast-uri/lib/schemes.js
3419
3419
  var require_schemes = __commonJS({
3420
- "../../../../OpenNoodl/node_modules/fast-uri/lib/schemes.js"(exports2, module2) {
3420
+ "../../node_modules/fast-uri/lib/schemes.js"(exports2, module2) {
3421
3421
  "use strict";
3422
3422
  var { isUUID } = require_utils();
3423
3423
  var URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
@@ -3625,9 +3625,9 @@ var require_schemes = __commonJS({
3625
3625
  }
3626
3626
  });
3627
3627
 
3628
- // ../../../../OpenNoodl/node_modules/fast-uri/index.js
3628
+ // ../../node_modules/fast-uri/index.js
3629
3629
  var require_fast_uri = __commonJS({
3630
- "../../../../OpenNoodl/node_modules/fast-uri/index.js"(exports2, module2) {
3630
+ "../../node_modules/fast-uri/index.js"(exports2, module2) {
3631
3631
  "use strict";
3632
3632
  var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, escapePreservingEscapes, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = require_utils();
3633
3633
  var { SCHEMES, getSchemeHandler } = require_schemes();
@@ -3917,9 +3917,9 @@ var require_fast_uri = __commonJS({
3917
3917
  }
3918
3918
  });
3919
3919
 
3920
- // ../../../../OpenNoodl/node_modules/ajv/dist/runtime/uri.js
3920
+ // ../../node_modules/ajv/dist/runtime/uri.js
3921
3921
  var require_uri = __commonJS({
3922
- "../../../../OpenNoodl/node_modules/ajv/dist/runtime/uri.js"(exports2) {
3922
+ "../../node_modules/ajv/dist/runtime/uri.js"(exports2) {
3923
3923
  "use strict";
3924
3924
  Object.defineProperty(exports2, "__esModule", { value: true });
3925
3925
  var uri = require_fast_uri();
@@ -3928,9 +3928,9 @@ var require_uri = __commonJS({
3928
3928
  }
3929
3929
  });
3930
3930
 
3931
- // ../../../../OpenNoodl/node_modules/ajv/dist/core.js
3931
+ // ../../node_modules/ajv/dist/core.js
3932
3932
  var require_core = __commonJS({
3933
- "../../../../OpenNoodl/node_modules/ajv/dist/core.js"(exports2) {
3933
+ "../../node_modules/ajv/dist/core.js"(exports2) {
3934
3934
  "use strict";
3935
3935
  Object.defineProperty(exports2, "__esModule", { value: true });
3936
3936
  exports2.CodeGen = exports2.Name = exports2.nil = exports2.stringify = exports2.str = exports2._ = exports2.KeywordCxt = void 0;
@@ -4539,9 +4539,9 @@ var require_core = __commonJS({
4539
4539
  }
4540
4540
  });
4541
4541
 
4542
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/core/id.js
4542
+ // ../../node_modules/ajv/dist/vocabularies/core/id.js
4543
4543
  var require_id = __commonJS({
4544
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/core/id.js"(exports2) {
4544
+ "../../node_modules/ajv/dist/vocabularies/core/id.js"(exports2) {
4545
4545
  "use strict";
4546
4546
  Object.defineProperty(exports2, "__esModule", { value: true });
4547
4547
  var def2 = {
@@ -4554,9 +4554,9 @@ var require_id = __commonJS({
4554
4554
  }
4555
4555
  });
4556
4556
 
4557
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/core/ref.js
4557
+ // ../../node_modules/ajv/dist/vocabularies/core/ref.js
4558
4558
  var require_ref = __commonJS({
4559
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/core/ref.js"(exports2) {
4559
+ "../../node_modules/ajv/dist/vocabularies/core/ref.js"(exports2) {
4560
4560
  "use strict";
4561
4561
  Object.defineProperty(exports2, "__esModule", { value: true });
4562
4562
  exports2.callRef = exports2.getValidate = void 0;
@@ -4676,9 +4676,9 @@ var require_ref = __commonJS({
4676
4676
  }
4677
4677
  });
4678
4678
 
4679
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/core/index.js
4679
+ // ../../node_modules/ajv/dist/vocabularies/core/index.js
4680
4680
  var require_core2 = __commonJS({
4681
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/core/index.js"(exports2) {
4681
+ "../../node_modules/ajv/dist/vocabularies/core/index.js"(exports2) {
4682
4682
  "use strict";
4683
4683
  Object.defineProperty(exports2, "__esModule", { value: true });
4684
4684
  var id_1 = require_id();
@@ -4697,9 +4697,9 @@ var require_core2 = __commonJS({
4697
4697
  }
4698
4698
  });
4699
4699
 
4700
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitNumber.js
4700
+ // ../../node_modules/ajv/dist/vocabularies/validation/limitNumber.js
4701
4701
  var require_limitNumber = __commonJS({
4702
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitNumber.js"(exports2) {
4702
+ "../../node_modules/ajv/dist/vocabularies/validation/limitNumber.js"(exports2) {
4703
4703
  "use strict";
4704
4704
  Object.defineProperty(exports2, "__esModule", { value: true });
4705
4705
  var codegen_1 = require_codegen();
@@ -4729,9 +4729,9 @@ var require_limitNumber = __commonJS({
4729
4729
  }
4730
4730
  });
4731
4731
 
4732
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/multipleOf.js
4732
+ // ../../node_modules/ajv/dist/vocabularies/validation/multipleOf.js
4733
4733
  var require_multipleOf = __commonJS({
4734
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/multipleOf.js"(exports2) {
4734
+ "../../node_modules/ajv/dist/vocabularies/validation/multipleOf.js"(exports2) {
4735
4735
  "use strict";
4736
4736
  Object.defineProperty(exports2, "__esModule", { value: true });
4737
4737
  var codegen_1 = require_codegen();
@@ -4757,9 +4757,9 @@ var require_multipleOf = __commonJS({
4757
4757
  }
4758
4758
  });
4759
4759
 
4760
- // ../../../../OpenNoodl/node_modules/ajv/dist/runtime/ucs2length.js
4760
+ // ../../node_modules/ajv/dist/runtime/ucs2length.js
4761
4761
  var require_ucs2length = __commonJS({
4762
- "../../../../OpenNoodl/node_modules/ajv/dist/runtime/ucs2length.js"(exports2) {
4762
+ "../../node_modules/ajv/dist/runtime/ucs2length.js"(exports2) {
4763
4763
  "use strict";
4764
4764
  Object.defineProperty(exports2, "__esModule", { value: true });
4765
4765
  function ucs2length(str) {
@@ -4783,9 +4783,9 @@ var require_ucs2length = __commonJS({
4783
4783
  }
4784
4784
  });
4785
4785
 
4786
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitLength.js
4786
+ // ../../node_modules/ajv/dist/vocabularies/validation/limitLength.js
4787
4787
  var require_limitLength = __commonJS({
4788
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitLength.js"(exports2) {
4788
+ "../../node_modules/ajv/dist/vocabularies/validation/limitLength.js"(exports2) {
4789
4789
  "use strict";
4790
4790
  Object.defineProperty(exports2, "__esModule", { value: true });
4791
4791
  var codegen_1 = require_codegen();
@@ -4815,9 +4815,9 @@ var require_limitLength = __commonJS({
4815
4815
  }
4816
4816
  });
4817
4817
 
4818
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/pattern.js
4818
+ // ../../node_modules/ajv/dist/vocabularies/validation/pattern.js
4819
4819
  var require_pattern = __commonJS({
4820
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/pattern.js"(exports2) {
4820
+ "../../node_modules/ajv/dist/vocabularies/validation/pattern.js"(exports2) {
4821
4821
  "use strict";
4822
4822
  Object.defineProperty(exports2, "__esModule", { value: true });
4823
4823
  var code_1 = require_code2();
@@ -4852,9 +4852,9 @@ var require_pattern = __commonJS({
4852
4852
  }
4853
4853
  });
4854
4854
 
4855
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitProperties.js
4855
+ // ../../node_modules/ajv/dist/vocabularies/validation/limitProperties.js
4856
4856
  var require_limitProperties = __commonJS({
4857
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitProperties.js"(exports2) {
4857
+ "../../node_modules/ajv/dist/vocabularies/validation/limitProperties.js"(exports2) {
4858
4858
  "use strict";
4859
4859
  Object.defineProperty(exports2, "__esModule", { value: true });
4860
4860
  var codegen_1 = require_codegen();
@@ -4881,9 +4881,9 @@ var require_limitProperties = __commonJS({
4881
4881
  }
4882
4882
  });
4883
4883
 
4884
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/required.js
4884
+ // ../../node_modules/ajv/dist/vocabularies/validation/required.js
4885
4885
  var require_required = __commonJS({
4886
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/required.js"(exports2) {
4886
+ "../../node_modules/ajv/dist/vocabularies/validation/required.js"(exports2) {
4887
4887
  "use strict";
4888
4888
  Object.defineProperty(exports2, "__esModule", { value: true });
4889
4889
  var code_1 = require_code2();
@@ -4963,9 +4963,9 @@ var require_required = __commonJS({
4963
4963
  }
4964
4964
  });
4965
4965
 
4966
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitItems.js
4966
+ // ../../node_modules/ajv/dist/vocabularies/validation/limitItems.js
4967
4967
  var require_limitItems = __commonJS({
4968
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/limitItems.js"(exports2) {
4968
+ "../../node_modules/ajv/dist/vocabularies/validation/limitItems.js"(exports2) {
4969
4969
  "use strict";
4970
4970
  Object.defineProperty(exports2, "__esModule", { value: true });
4971
4971
  var codegen_1 = require_codegen();
@@ -4992,9 +4992,9 @@ var require_limitItems = __commonJS({
4992
4992
  }
4993
4993
  });
4994
4994
 
4995
- // ../../../../OpenNoodl/node_modules/ajv/dist/runtime/equal.js
4995
+ // ../../node_modules/ajv/dist/runtime/equal.js
4996
4996
  var require_equal = __commonJS({
4997
- "../../../../OpenNoodl/node_modules/ajv/dist/runtime/equal.js"(exports2) {
4997
+ "../../node_modules/ajv/dist/runtime/equal.js"(exports2) {
4998
4998
  "use strict";
4999
4999
  Object.defineProperty(exports2, "__esModule", { value: true });
5000
5000
  var equal = require_fast_deep_equal();
@@ -5003,9 +5003,9 @@ var require_equal = __commonJS({
5003
5003
  }
5004
5004
  });
5005
5005
 
5006
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
5006
+ // ../../node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
5007
5007
  var require_uniqueItems = __commonJS({
5008
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js"(exports2) {
5008
+ "../../node_modules/ajv/dist/vocabularies/validation/uniqueItems.js"(exports2) {
5009
5009
  "use strict";
5010
5010
  Object.defineProperty(exports2, "__esModule", { value: true });
5011
5011
  var dataType_1 = require_dataType();
@@ -5070,9 +5070,9 @@ var require_uniqueItems = __commonJS({
5070
5070
  }
5071
5071
  });
5072
5072
 
5073
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/const.js
5073
+ // ../../node_modules/ajv/dist/vocabularies/validation/const.js
5074
5074
  var require_const = __commonJS({
5075
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/const.js"(exports2) {
5075
+ "../../node_modules/ajv/dist/vocabularies/validation/const.js"(exports2) {
5076
5076
  "use strict";
5077
5077
  Object.defineProperty(exports2, "__esModule", { value: true });
5078
5078
  var codegen_1 = require_codegen();
@@ -5099,9 +5099,9 @@ var require_const = __commonJS({
5099
5099
  }
5100
5100
  });
5101
5101
 
5102
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/enum.js
5102
+ // ../../node_modules/ajv/dist/vocabularies/validation/enum.js
5103
5103
  var require_enum = __commonJS({
5104
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/enum.js"(exports2) {
5104
+ "../../node_modules/ajv/dist/vocabularies/validation/enum.js"(exports2) {
5105
5105
  "use strict";
5106
5106
  Object.defineProperty(exports2, "__esModule", { value: true });
5107
5107
  var codegen_1 = require_codegen();
@@ -5148,9 +5148,9 @@ var require_enum = __commonJS({
5148
5148
  }
5149
5149
  });
5150
5150
 
5151
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/index.js
5151
+ // ../../node_modules/ajv/dist/vocabularies/validation/index.js
5152
5152
  var require_validation = __commonJS({
5153
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/validation/index.js"(exports2) {
5153
+ "../../node_modules/ajv/dist/vocabularies/validation/index.js"(exports2) {
5154
5154
  "use strict";
5155
5155
  Object.defineProperty(exports2, "__esModule", { value: true });
5156
5156
  var limitNumber_1 = require_limitNumber();
@@ -5186,9 +5186,9 @@ var require_validation = __commonJS({
5186
5186
  }
5187
5187
  });
5188
5188
 
5189
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
5189
+ // ../../node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
5190
5190
  var require_additionalItems = __commonJS({
5191
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js"(exports2) {
5191
+ "../../node_modules/ajv/dist/vocabularies/applicator/additionalItems.js"(exports2) {
5192
5192
  "use strict";
5193
5193
  Object.defineProperty(exports2, "__esModule", { value: true });
5194
5194
  exports2.validateAdditionalItems = void 0;
@@ -5239,9 +5239,9 @@ var require_additionalItems = __commonJS({
5239
5239
  }
5240
5240
  });
5241
5241
 
5242
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/items.js
5242
+ // ../../node_modules/ajv/dist/vocabularies/applicator/items.js
5243
5243
  var require_items = __commonJS({
5244
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/items.js"(exports2) {
5244
+ "../../node_modules/ajv/dist/vocabularies/applicator/items.js"(exports2) {
5245
5245
  "use strict";
5246
5246
  Object.defineProperty(exports2, "__esModule", { value: true });
5247
5247
  exports2.validateTuple = void 0;
@@ -5296,9 +5296,9 @@ var require_items = __commonJS({
5296
5296
  }
5297
5297
  });
5298
5298
 
5299
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
5299
+ // ../../node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
5300
5300
  var require_prefixItems = __commonJS({
5301
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js"(exports2) {
5301
+ "../../node_modules/ajv/dist/vocabularies/applicator/prefixItems.js"(exports2) {
5302
5302
  "use strict";
5303
5303
  Object.defineProperty(exports2, "__esModule", { value: true });
5304
5304
  var items_1 = require_items();
@@ -5313,9 +5313,9 @@ var require_prefixItems = __commonJS({
5313
5313
  }
5314
5314
  });
5315
5315
 
5316
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/items2020.js
5316
+ // ../../node_modules/ajv/dist/vocabularies/applicator/items2020.js
5317
5317
  var require_items2020 = __commonJS({
5318
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/items2020.js"(exports2) {
5318
+ "../../node_modules/ajv/dist/vocabularies/applicator/items2020.js"(exports2) {
5319
5319
  "use strict";
5320
5320
  Object.defineProperty(exports2, "__esModule", { value: true });
5321
5321
  var codegen_1 = require_codegen();
@@ -5348,9 +5348,9 @@ var require_items2020 = __commonJS({
5348
5348
  }
5349
5349
  });
5350
5350
 
5351
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/contains.js
5351
+ // ../../node_modules/ajv/dist/vocabularies/applicator/contains.js
5352
5352
  var require_contains = __commonJS({
5353
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/contains.js"(exports2) {
5353
+ "../../node_modules/ajv/dist/vocabularies/applicator/contains.js"(exports2) {
5354
5354
  "use strict";
5355
5355
  Object.defineProperty(exports2, "__esModule", { value: true });
5356
5356
  var codegen_1 = require_codegen();
@@ -5442,9 +5442,9 @@ var require_contains = __commonJS({
5442
5442
  }
5443
5443
  });
5444
5444
 
5445
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/dependencies.js
5445
+ // ../../node_modules/ajv/dist/vocabularies/applicator/dependencies.js
5446
5446
  var require_dependencies = __commonJS({
5447
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/dependencies.js"(exports2) {
5447
+ "../../node_modules/ajv/dist/vocabularies/applicator/dependencies.js"(exports2) {
5448
5448
  "use strict";
5449
5449
  Object.defineProperty(exports2, "__esModule", { value: true });
5450
5450
  exports2.validateSchemaDeps = exports2.validatePropertyDeps = exports2.error = void 0;
@@ -5536,9 +5536,9 @@ var require_dependencies = __commonJS({
5536
5536
  }
5537
5537
  });
5538
5538
 
5539
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
5539
+ // ../../node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
5540
5540
  var require_propertyNames = __commonJS({
5541
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js"(exports2) {
5541
+ "../../node_modules/ajv/dist/vocabularies/applicator/propertyNames.js"(exports2) {
5542
5542
  "use strict";
5543
5543
  Object.defineProperty(exports2, "__esModule", { value: true });
5544
5544
  var codegen_1 = require_codegen();
@@ -5579,9 +5579,9 @@ var require_propertyNames = __commonJS({
5579
5579
  }
5580
5580
  });
5581
5581
 
5582
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
5582
+ // ../../node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
5583
5583
  var require_additionalProperties = __commonJS({
5584
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js"(exports2) {
5584
+ "../../node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js"(exports2) {
5585
5585
  "use strict";
5586
5586
  Object.defineProperty(exports2, "__esModule", { value: true });
5587
5587
  var code_1 = require_code2();
@@ -5685,9 +5685,9 @@ var require_additionalProperties = __commonJS({
5685
5685
  }
5686
5686
  });
5687
5687
 
5688
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/properties.js
5688
+ // ../../node_modules/ajv/dist/vocabularies/applicator/properties.js
5689
5689
  var require_properties = __commonJS({
5690
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/properties.js"(exports2) {
5690
+ "../../node_modules/ajv/dist/vocabularies/applicator/properties.js"(exports2) {
5691
5691
  "use strict";
5692
5692
  Object.defineProperty(exports2, "__esModule", { value: true });
5693
5693
  var validate_1 = require_validate();
@@ -5743,9 +5743,9 @@ var require_properties = __commonJS({
5743
5743
  }
5744
5744
  });
5745
5745
 
5746
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
5746
+ // ../../node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
5747
5747
  var require_patternProperties = __commonJS({
5748
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js"(exports2) {
5748
+ "../../node_modules/ajv/dist/vocabularies/applicator/patternProperties.js"(exports2) {
5749
5749
  "use strict";
5750
5750
  Object.defineProperty(exports2, "__esModule", { value: true });
5751
5751
  var code_1 = require_code2();
@@ -5817,9 +5817,9 @@ var require_patternProperties = __commonJS({
5817
5817
  }
5818
5818
  });
5819
5819
 
5820
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/not.js
5820
+ // ../../node_modules/ajv/dist/vocabularies/applicator/not.js
5821
5821
  var require_not = __commonJS({
5822
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/not.js"(exports2) {
5822
+ "../../node_modules/ajv/dist/vocabularies/applicator/not.js"(exports2) {
5823
5823
  "use strict";
5824
5824
  Object.defineProperty(exports2, "__esModule", { value: true });
5825
5825
  var util_1 = require_util();
@@ -5848,9 +5848,9 @@ var require_not = __commonJS({
5848
5848
  }
5849
5849
  });
5850
5850
 
5851
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/anyOf.js
5851
+ // ../../node_modules/ajv/dist/vocabularies/applicator/anyOf.js
5852
5852
  var require_anyOf = __commonJS({
5853
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/anyOf.js"(exports2) {
5853
+ "../../node_modules/ajv/dist/vocabularies/applicator/anyOf.js"(exports2) {
5854
5854
  "use strict";
5855
5855
  Object.defineProperty(exports2, "__esModule", { value: true });
5856
5856
  var code_1 = require_code2();
@@ -5865,9 +5865,9 @@ var require_anyOf = __commonJS({
5865
5865
  }
5866
5866
  });
5867
5867
 
5868
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/oneOf.js
5868
+ // ../../node_modules/ajv/dist/vocabularies/applicator/oneOf.js
5869
5869
  var require_oneOf = __commonJS({
5870
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/oneOf.js"(exports2) {
5870
+ "../../node_modules/ajv/dist/vocabularies/applicator/oneOf.js"(exports2) {
5871
5871
  "use strict";
5872
5872
  Object.defineProperty(exports2, "__esModule", { value: true });
5873
5873
  var codegen_1 = require_codegen();
@@ -5923,9 +5923,9 @@ var require_oneOf = __commonJS({
5923
5923
  }
5924
5924
  });
5925
5925
 
5926
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/allOf.js
5926
+ // ../../node_modules/ajv/dist/vocabularies/applicator/allOf.js
5927
5927
  var require_allOf = __commonJS({
5928
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/allOf.js"(exports2) {
5928
+ "../../node_modules/ajv/dist/vocabularies/applicator/allOf.js"(exports2) {
5929
5929
  "use strict";
5930
5930
  Object.defineProperty(exports2, "__esModule", { value: true });
5931
5931
  var util_1 = require_util();
@@ -5950,9 +5950,9 @@ var require_allOf = __commonJS({
5950
5950
  }
5951
5951
  });
5952
5952
 
5953
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/if.js
5953
+ // ../../node_modules/ajv/dist/vocabularies/applicator/if.js
5954
5954
  var require_if = __commonJS({
5955
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/if.js"(exports2) {
5955
+ "../../node_modules/ajv/dist/vocabularies/applicator/if.js"(exports2) {
5956
5956
  "use strict";
5957
5957
  Object.defineProperty(exports2, "__esModule", { value: true });
5958
5958
  var codegen_1 = require_codegen();
@@ -6019,9 +6019,9 @@ var require_if = __commonJS({
6019
6019
  }
6020
6020
  });
6021
6021
 
6022
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/thenElse.js
6022
+ // ../../node_modules/ajv/dist/vocabularies/applicator/thenElse.js
6023
6023
  var require_thenElse = __commonJS({
6024
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/thenElse.js"(exports2) {
6024
+ "../../node_modules/ajv/dist/vocabularies/applicator/thenElse.js"(exports2) {
6025
6025
  "use strict";
6026
6026
  Object.defineProperty(exports2, "__esModule", { value: true });
6027
6027
  var util_1 = require_util();
@@ -6037,9 +6037,9 @@ var require_thenElse = __commonJS({
6037
6037
  }
6038
6038
  });
6039
6039
 
6040
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/index.js
6040
+ // ../../node_modules/ajv/dist/vocabularies/applicator/index.js
6041
6041
  var require_applicator = __commonJS({
6042
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/applicator/index.js"(exports2) {
6042
+ "../../node_modules/ajv/dist/vocabularies/applicator/index.js"(exports2) {
6043
6043
  "use strict";
6044
6044
  Object.defineProperty(exports2, "__esModule", { value: true });
6045
6045
  var additionalItems_1 = require_additionalItems();
@@ -6085,9 +6085,9 @@ var require_applicator = __commonJS({
6085
6085
  }
6086
6086
  });
6087
6087
 
6088
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/format/format.js
6088
+ // ../../node_modules/ajv/dist/vocabularies/format/format.js
6089
6089
  var require_format = __commonJS({
6090
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/format/format.js"(exports2) {
6090
+ "../../node_modules/ajv/dist/vocabularies/format/format.js"(exports2) {
6091
6091
  "use strict";
6092
6092
  Object.defineProperty(exports2, "__esModule", { value: true });
6093
6093
  var codegen_1 = require_codegen();
@@ -6175,9 +6175,9 @@ var require_format = __commonJS({
6175
6175
  }
6176
6176
  });
6177
6177
 
6178
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/format/index.js
6178
+ // ../../node_modules/ajv/dist/vocabularies/format/index.js
6179
6179
  var require_format2 = __commonJS({
6180
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/format/index.js"(exports2) {
6180
+ "../../node_modules/ajv/dist/vocabularies/format/index.js"(exports2) {
6181
6181
  "use strict";
6182
6182
  Object.defineProperty(exports2, "__esModule", { value: true });
6183
6183
  var format_1 = require_format();
@@ -6186,9 +6186,9 @@ var require_format2 = __commonJS({
6186
6186
  }
6187
6187
  });
6188
6188
 
6189
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/metadata.js
6189
+ // ../../node_modules/ajv/dist/vocabularies/metadata.js
6190
6190
  var require_metadata = __commonJS({
6191
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/metadata.js"(exports2) {
6191
+ "../../node_modules/ajv/dist/vocabularies/metadata.js"(exports2) {
6192
6192
  "use strict";
6193
6193
  Object.defineProperty(exports2, "__esModule", { value: true });
6194
6194
  exports2.contentVocabulary = exports2.metadataVocabulary = void 0;
@@ -6209,9 +6209,9 @@ var require_metadata = __commonJS({
6209
6209
  }
6210
6210
  });
6211
6211
 
6212
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/draft7.js
6212
+ // ../../node_modules/ajv/dist/vocabularies/draft7.js
6213
6213
  var require_draft7 = __commonJS({
6214
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/draft7.js"(exports2) {
6214
+ "../../node_modules/ajv/dist/vocabularies/draft7.js"(exports2) {
6215
6215
  "use strict";
6216
6216
  Object.defineProperty(exports2, "__esModule", { value: true });
6217
6217
  var core_1 = require_core2();
@@ -6231,9 +6231,9 @@ var require_draft7 = __commonJS({
6231
6231
  }
6232
6232
  });
6233
6233
 
6234
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/discriminator/types.js
6234
+ // ../../node_modules/ajv/dist/vocabularies/discriminator/types.js
6235
6235
  var require_types = __commonJS({
6236
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports2) {
6236
+ "../../node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports2) {
6237
6237
  "use strict";
6238
6238
  Object.defineProperty(exports2, "__esModule", { value: true });
6239
6239
  exports2.DiscrError = void 0;
@@ -6245,9 +6245,9 @@ var require_types = __commonJS({
6245
6245
  }
6246
6246
  });
6247
6247
 
6248
- // ../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/discriminator/index.js
6248
+ // ../../node_modules/ajv/dist/vocabularies/discriminator/index.js
6249
6249
  var require_discriminator = __commonJS({
6250
- "../../../../OpenNoodl/node_modules/ajv/dist/vocabularies/discriminator/index.js"(exports2) {
6250
+ "../../node_modules/ajv/dist/vocabularies/discriminator/index.js"(exports2) {
6251
6251
  "use strict";
6252
6252
  Object.defineProperty(exports2, "__esModule", { value: true });
6253
6253
  var codegen_1 = require_codegen();
@@ -6350,9 +6350,9 @@ var require_discriminator = __commonJS({
6350
6350
  }
6351
6351
  });
6352
6352
 
6353
- // ../../../../OpenNoodl/node_modules/ajv/dist/refs/json-schema-draft-07.json
6353
+ // ../../node_modules/ajv/dist/refs/json-schema-draft-07.json
6354
6354
  var require_json_schema_draft_07 = __commonJS({
6355
- "../../../../OpenNoodl/node_modules/ajv/dist/refs/json-schema-draft-07.json"(exports2, module2) {
6355
+ "../../node_modules/ajv/dist/refs/json-schema-draft-07.json"(exports2, module2) {
6356
6356
  module2.exports = {
6357
6357
  $schema: "http://json-schema.org/draft-07/schema#",
6358
6358
  $id: "http://json-schema.org/draft-07/schema#",
@@ -6507,9 +6507,9 @@ var require_json_schema_draft_07 = __commonJS({
6507
6507
  }
6508
6508
  });
6509
6509
 
6510
- // ../../../../OpenNoodl/node_modules/ajv/dist/ajv.js
6510
+ // ../../node_modules/ajv/dist/ajv.js
6511
6511
  var require_ajv = __commonJS({
6512
- "../../../../OpenNoodl/node_modules/ajv/dist/ajv.js"(exports2, module2) {
6512
+ "../../node_modules/ajv/dist/ajv.js"(exports2, module2) {
6513
6513
  "use strict";
6514
6514
  Object.defineProperty(exports2, "__esModule", { value: true });
6515
6515
  exports2.MissingRefError = exports2.ValidationError = exports2.CodeGen = exports2.Name = exports2.nil = exports2.stringify = exports2.str = exports2._ = exports2.KeywordCxt = exports2.Ajv = void 0;
@@ -6743,20 +6743,20 @@ var require_src = __commonJS({
6743
6743
  }
6744
6744
  const VISITING = 1;
6745
6745
  const DONE = 2;
6746
- const state = /* @__PURE__ */ new Map();
6746
+ const state2 = /* @__PURE__ */ new Map();
6747
6747
  const ordered = [];
6748
6748
  const refused = [];
6749
6749
  const visit = (m) => {
6750
- if (state.get(m) === DONE) return !("refused" in m);
6751
- state.set(m, VISITING);
6750
+ if (state2.get(m) === DONE) return !("refused" in m);
6751
+ state2.set(m, VISITING);
6752
6752
  let reason;
6753
6753
  for (const needed of m.requires || []) {
6754
6754
  const other = byName.get(needed);
6755
6755
  if (!other) reason = reason || `it needs "${needed}", which is not installed in this project`;
6756
- else if (other === m || state.get(other) === VISITING) reason = reason || `it needs "${needed}", which needs it in turn`;
6756
+ else if (other === m || state2.get(other) === VISITING) reason = reason || `it needs "${needed}", which needs it in turn`;
6757
6757
  else if (!visit(other)) reason = reason || `it needs "${needed}", which was not loaded`;
6758
6758
  }
6759
- state.set(m, DONE);
6759
+ state2.set(m, DONE);
6760
6760
  if (reason) {
6761
6761
  m.refused = reason;
6762
6762
  delete m.index;
@@ -6913,9 +6913,9 @@ var require_src = __commonJS({
6913
6913
  }
6914
6914
  });
6915
6915
 
6916
- // ../../../../OpenNoodl/node_modules/react/cjs/react.production.js
6916
+ // ../../node_modules/react/cjs/react.production.js
6917
6917
  var require_react_production = __commonJS({
6918
- "../../../../OpenNoodl/node_modules/react/cjs/react.production.js"(exports2) {
6918
+ "../../node_modules/react/cjs/react.production.js"(exports2) {
6919
6919
  "use strict";
6920
6920
  var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element");
6921
6921
  var REACT_PORTAL_TYPE = Symbol.for("react.portal");
@@ -7351,9 +7351,9 @@ var require_react_production = __commonJS({
7351
7351
  }
7352
7352
  });
7353
7353
 
7354
- // ../../../../OpenNoodl/node_modules/react/cjs/react.development.js
7354
+ // ../../node_modules/react/cjs/react.development.js
7355
7355
  var require_react_development = __commonJS({
7356
- "../../../../OpenNoodl/node_modules/react/cjs/react.development.js"(exports2, module2) {
7356
+ "../../node_modules/react/cjs/react.development.js"(exports2, module2) {
7357
7357
  "use strict";
7358
7358
  "production" !== process.env.NODE_ENV && (function() {
7359
7359
  function defineDeprecationWarning(methodName, info) {
@@ -8458,9 +8458,9 @@ var require_react_development = __commonJS({
8458
8458
  }
8459
8459
  });
8460
8460
 
8461
- // ../../../../OpenNoodl/node_modules/react/index.js
8461
+ // ../../node_modules/react/index.js
8462
8462
  var require_react = __commonJS({
8463
- "../../../../OpenNoodl/node_modules/react/index.js"(exports2, module2) {
8463
+ "../../node_modules/react/index.js"(exports2, module2) {
8464
8464
  "use strict";
8465
8465
  if (process.env.NODE_ENV === "production") {
8466
8466
  module2.exports = require_react_production();
@@ -8769,6 +8769,121 @@ var init_blockrun = __esm({
8769
8769
  }
8770
8770
  });
8771
8771
 
8772
+ // ../noodl-runtime/src/pressguard.ts
8773
+ var pressguard_exports = {};
8774
+ __export(pressguard_exports, {
8775
+ DOUBLE_PRESS_MS: () => DOUBLE_PRESS_MS,
8776
+ SAVE_HOLD_CAP_MS: () => SAVE_HOLD_CAP_MS,
8777
+ beginPressUpdate: () => beginPressUpdate,
8778
+ endPressUpdate: () => endPressUpdate,
8779
+ holdForWrite: () => holdForWrite,
8780
+ holdOptionsForWrite: () => holdOptionsForWrite,
8781
+ isPressHeld: () => isPressHeld,
8782
+ notePress: () => notePress,
8783
+ pressKeys: () => pressKeys,
8784
+ resetPressGuard: () => resetPressGuard
8785
+ });
8786
+ function state() {
8787
+ const g = globalThis;
8788
+ let s = g[GLOBAL_KEY];
8789
+ if (!s) {
8790
+ s = { holds: /* @__PURE__ */ new WeakMap(), awaitingUpdate: [], cause: null, depth: 0 };
8791
+ g[GLOBAL_KEY] = s;
8792
+ }
8793
+ return s;
8794
+ }
8795
+ function holdOf(key) {
8796
+ const s = state();
8797
+ let h = s.holds.get(key);
8798
+ if (!h) {
8799
+ h = { writes: 0, until: 0 };
8800
+ s.holds.set(key, h);
8801
+ }
8802
+ return h;
8803
+ }
8804
+ function pressKeys(node, outputName) {
8805
+ const n = node;
8806
+ const output = n.hasOutput && n.hasOutput(outputName) && n.getOutput ? n.getOutput(outputName) : void 0;
8807
+ const targets = output && output.connections ? output.connections.map((c) => c.node) : [];
8808
+ return targets.length > 0 ? Array.from(new Set(targets)) : [node];
8809
+ }
8810
+ function isPressHeld(keys, now = Date.now()) {
8811
+ const s = state();
8812
+ for (const key of keys) {
8813
+ const h = s.holds.get(key);
8814
+ if (h && (h.writes > 0 || h.until > now)) return true;
8815
+ }
8816
+ return false;
8817
+ }
8818
+ function notePress(keys, now = Date.now()) {
8819
+ state().awaitingUpdate.push({ keys, at: now });
8820
+ }
8821
+ function beginPressUpdate() {
8822
+ const s = state();
8823
+ s.depth++;
8824
+ if (s.depth > 1) return;
8825
+ s.cause = s.awaitingUpdate.length > 0 ? s.awaitingUpdate : null;
8826
+ s.awaitingUpdate = [];
8827
+ }
8828
+ function endPressUpdate() {
8829
+ const s = state();
8830
+ s.depth = Math.max(0, s.depth - 1);
8831
+ if (s.depth > 0) return;
8832
+ s.cause = null;
8833
+ }
8834
+ function holdForWrite(now = Date.now()) {
8835
+ const s = state();
8836
+ if (!s.cause) return void 0;
8837
+ const held = [];
8838
+ for (const press of s.cause) {
8839
+ for (const key of press.keys) {
8840
+ const h = holdOf(key);
8841
+ h.writes++;
8842
+ h.until = Math.max(h.until, press.at + DOUBLE_PRESS_MS);
8843
+ held.push(h);
8844
+ }
8845
+ }
8846
+ let released = false;
8847
+ const release = () => {
8848
+ if (released) return;
8849
+ released = true;
8850
+ clearTimeout(cap);
8851
+ for (const h of held) h.writes = Math.max(0, h.writes - 1);
8852
+ };
8853
+ const cap = setTimeout(release, SAVE_HOLD_CAP_MS);
8854
+ if (typeof cap === "object" && cap !== null && "unref" in cap) cap.unref();
8855
+ return release;
8856
+ }
8857
+ function holdOptionsForWrite(options) {
8858
+ const release = holdForWrite();
8859
+ if (!release) return options;
8860
+ const o = options;
8861
+ const success = o.success;
8862
+ const error = o.error;
8863
+ return Object.assign({}, options, {
8864
+ success: (...args) => {
8865
+ release();
8866
+ return success ? success(...args) : void 0;
8867
+ },
8868
+ error: (...args) => {
8869
+ release();
8870
+ return error ? error(...args) : void 0;
8871
+ }
8872
+ });
8873
+ }
8874
+ function resetPressGuard() {
8875
+ const g = globalThis;
8876
+ g[GLOBAL_KEY] = void 0;
8877
+ }
8878
+ var DOUBLE_PRESS_MS, SAVE_HOLD_CAP_MS, GLOBAL_KEY;
8879
+ var init_pressguard = __esm({
8880
+ "../noodl-runtime/src/pressguard.ts"() {
8881
+ DOUBLE_PRESS_MS = 500;
8882
+ SAVE_HOLD_CAP_MS = 15e3;
8883
+ GLOBAL_KEY = "__nodegxPressGuard";
8884
+ }
8885
+ });
8886
+
8772
8887
  // ../noodl-runtime/src/events.js
8773
8888
  var require_events = __commonJS({
8774
8889
  "../noodl-runtime/src/events.js"(exports2, module2) {
@@ -8938,10 +9053,10 @@ var require_events = __commonJS({
8938
9053
  }
8939
9054
  }
8940
9055
  function _onceWrap(target, type, listener) {
8941
- var state = { fired: false, wrapFn: void 0, target, type, listener };
8942
- var wrapped = onceWrapper.bind(state);
9056
+ var state2 = { fired: false, wrapFn: void 0, target, type, listener };
9057
+ var wrapped = onceWrapper.bind(state2);
8943
9058
  wrapped.listener = listener;
8944
- state.wrapFn = wrapped;
9059
+ state2.wrapFn = wrapped;
8945
9060
  return wrapped;
8946
9061
  }
8947
9062
  EventEmitter6.prototype.once = function once2(type, listener) {
@@ -9700,35 +9815,35 @@ var require_collection = __commonJS({
9700
9815
  function batchStateOf(self2) {
9701
9816
  const existing = self2[BATCH_STATE];
9702
9817
  if (existing !== void 0) return existing;
9703
- const state = { depth: 0, pendingChange: false };
9818
+ const state2 = { depth: 0, pendingChange: false };
9704
9819
  try {
9705
9820
  Object.defineProperty(self2, BATCH_STATE, {
9706
- value: state,
9821
+ value: state2,
9707
9822
  enumerable: false,
9708
9823
  writable: false,
9709
9824
  configurable: true
9710
9825
  });
9711
9826
  } catch (e) {
9712
9827
  }
9713
- return state;
9828
+ return state2;
9714
9829
  }
9715
9830
  function withBatch(self2, body) {
9716
- const state = batchStateOf(self2);
9717
- state.depth++;
9831
+ const state2 = batchStateOf(self2);
9832
+ state2.depth++;
9718
9833
  try {
9719
9834
  return body();
9720
9835
  } finally {
9721
- state.depth--;
9722
- if (state.depth === 0 && state.pendingChange) {
9723
- state.pendingChange = false;
9836
+ state2.depth--;
9837
+ if (state2.depth === 0 && state2.pendingChange) {
9838
+ state2.pendingChange = false;
9724
9839
  self2.notify("change");
9725
9840
  }
9726
9841
  }
9727
9842
  }
9728
9843
  function notifyChange(self2) {
9729
- const state = self2[BATCH_STATE];
9730
- if (state !== void 0 && state.depth > 0) {
9731
- state.pendingChange = true;
9844
+ const state2 = self2[BATCH_STATE];
9845
+ if (state2 !== void 0 && state2.depth > 0) {
9846
+ state2.pendingChange = true;
9732
9847
  return;
9733
9848
  }
9734
9849
  self2.notify("change");
@@ -10686,8 +10801,8 @@ function runOnChangeDynamicPorts(inputNames, displayNames) {
10686
10801
  });
10687
10802
  }
10688
10803
  function runOnValueChange(node, inputName) {
10689
- const state = node._runOnValueChange;
10690
- return !state || state[inputName] !== false;
10804
+ const state2 = node._runOnValueChange;
10805
+ return !state2 || state2[inputName] !== false;
10691
10806
  }
10692
10807
  function valueDidChange(previous, next) {
10693
10808
  if (!isComparableValue(previous) || !isComparableValue(next)) return true;
@@ -12362,6 +12477,7 @@ var require_nodecontext = __commonJS({
12362
12477
  init_runtimeerror();
12363
12478
  init_tracebuffer();
12364
12479
  init_blockrun();
12480
+ init_pressguard();
12365
12481
  var EventEmitter6 = require_events();
12366
12482
  var NodeRegister = require_noderegister();
12367
12483
  var TimerScheduler = require_timerscheduler();
@@ -12493,29 +12609,34 @@ var require_nodecontext = __commonJS({
12493
12609
  var loop = true, iterations = 0;
12494
12610
  this.updateIteration++;
12495
12611
  this.isUpdating = true;
12496
- while (loop && iterations < 10) {
12497
- var dirtyNodes = this._dirtyNodes;
12498
- this._dirtyNodes = [];
12499
- for (i2 = 0, len = dirtyNodes.length; i2 < len; ++i2) {
12500
- try {
12501
- if (!dirtyNodes[i2]._deleted) {
12502
- dirtyNodes[i2].update();
12612
+ beginPressUpdate();
12613
+ try {
12614
+ while (loop && iterations < 10) {
12615
+ var dirtyNodes = this._dirtyNodes;
12616
+ this._dirtyNodes = [];
12617
+ for (i2 = 0, len = dirtyNodes.length; i2 < len; ++i2) {
12618
+ try {
12619
+ if (!dirtyNodes[i2]._deleted) {
12620
+ dirtyNodes[i2].update();
12621
+ }
12622
+ } catch (e) {
12623
+ console.error(e, e.stack);
12503
12624
  }
12504
- } catch (e) {
12505
- console.error(e, e.stack);
12506
12625
  }
12507
- }
12508
- var callbacks = this.callbacksAfterUpdate;
12509
- this.callbacksAfterUpdate = [];
12510
- for (i2 = 0, len = callbacks.length; i2 < len; i2++) {
12511
- try {
12512
- callbacks[i2]();
12513
- } catch (e) {
12514
- console.error(e);
12626
+ var callbacks = this.callbacksAfterUpdate;
12627
+ this.callbacksAfterUpdate = [];
12628
+ for (i2 = 0, len = callbacks.length; i2 < len; i2++) {
12629
+ try {
12630
+ callbacks[i2]();
12631
+ } catch (e) {
12632
+ console.error(e);
12633
+ }
12515
12634
  }
12635
+ loop = this.callbacksAfterUpdate.length > 0 || this._dirtyNodes.length > 0;
12636
+ iterations++;
12516
12637
  }
12517
- loop = this.callbacksAfterUpdate.length > 0 || this._dirtyNodes.length > 0;
12518
- iterations++;
12638
+ } finally {
12639
+ endPressUpdate();
12519
12640
  }
12520
12641
  this.isUpdating = false;
12521
12642
  };
@@ -13472,12 +13593,12 @@ var require_editorconnection = __commonJS({
13472
13593
  content: JSON.stringify({ events })
13473
13594
  });
13474
13595
  };
13475
- EditorConnection.prototype.sendTraceState = function(state) {
13596
+ EditorConnection.prototype.sendTraceState = function(state2) {
13476
13597
  this.send({
13477
13598
  cmd: "traceState",
13478
13599
  type: "viewer",
13479
13600
  clientId: this.clientId,
13480
- content: JSON.stringify(state)
13601
+ content: JSON.stringify(state2)
13481
13602
  });
13482
13603
  };
13483
13604
  EditorConnection.prototype.sendPortValues = function(values) {
@@ -13520,12 +13641,12 @@ var require_editorconnection = __commonJS({
13520
13641
  }
13521
13642
  this.send(message);
13522
13643
  };
13523
- EditorConnection.prototype.sendBlockTraceState = function(state) {
13644
+ EditorConnection.prototype.sendBlockTraceState = function(state2) {
13524
13645
  const message = {
13525
13646
  cmd: "blockTraceState",
13526
13647
  type: "viewer",
13527
13648
  clientId: this.clientId,
13528
- content: JSON.stringify(state)
13649
+ content: JSON.stringify(state2)
13529
13650
  };
13530
13651
  if (this.isConnected()) {
13531
13652
  try {
@@ -14704,14 +14825,14 @@ var require_nodemodel = __commonJS({
14704
14825
  this.outputPorts = {};
14705
14826
  };
14706
14827
  NodeModel.prototype = Object.create(EventSender2.prototype);
14707
- NodeModel.prototype.setParameter = function(name2, value2, state) {
14708
- if (state) {
14828
+ NodeModel.prototype.setParameter = function(name2, value2, state2) {
14829
+ if (state2) {
14709
14830
  if (!this.stateParameters) this.stateParameters = {};
14710
- if (!this.stateParameters[state]) this.stateParameters[state] = {};
14831
+ if (!this.stateParameters[state2]) this.stateParameters[state2] = {};
14711
14832
  if (value2 === void 0) {
14712
- delete this.stateParameters[state][name2];
14833
+ delete this.stateParameters[state2][name2];
14713
14834
  } else {
14714
- this.stateParameters[state][name2] = value2;
14835
+ this.stateParameters[state2][name2] = value2;
14715
14836
  }
14716
14837
  } else {
14717
14838
  if (value2 === void 0) {
@@ -14720,7 +14841,7 @@ var require_nodemodel = __commonJS({
14720
14841
  this.parameters[name2] = value2;
14721
14842
  }
14722
14843
  }
14723
- this.emit("parameterUpdated", { name: name2, value: value2, state });
14844
+ this.emit("parameterUpdated", { name: name2, value: value2, state: state2 });
14724
14845
  };
14725
14846
  NodeModel.prototype.setParameters = function(parameters) {
14726
14847
  Object.keys(parameters).forEach((name2) => {
@@ -14733,21 +14854,21 @@ var require_nodemodel = __commonJS({
14733
14854
  NodeModel.prototype.setStateTransitions = function(stateTransitions) {
14734
14855
  this.stateTransitions = stateTransitions;
14735
14856
  };
14736
- NodeModel.prototype.setStateTransitionParamter = function(parameter, curve, state) {
14857
+ NodeModel.prototype.setStateTransitionParamter = function(parameter, curve, state2) {
14737
14858
  if (!this.stateTransitions) {
14738
14859
  this.stateTransitions = {};
14739
14860
  }
14740
14861
  if (curve) {
14741
- this.stateTransitions[state][parameter] = curve;
14862
+ this.stateTransitions[state2][parameter] = curve;
14742
14863
  } else {
14743
- delete this.stateTransitions[state][parameter];
14864
+ delete this.stateTransitions[state2][parameter];
14744
14865
  }
14745
14866
  };
14746
- NodeModel.prototype.setDefaultStateTransition = function(stateTransition, state) {
14867
+ NodeModel.prototype.setDefaultStateTransition = function(stateTransition, state2) {
14747
14868
  if (!this.defaultStateTransitions) {
14748
14869
  this.defaultStateTransitions = {};
14749
14870
  }
14750
- this.defaultStateTransitions[state] = stateTransition;
14871
+ this.defaultStateTransitions[state2] = stateTransition;
14751
14872
  };
14752
14873
  NodeModel.prototype.addInputPort = function(port) {
14753
14874
  this.inputPorts[port.name] = port;
@@ -14831,8 +14952,8 @@ var require_nodemodel = __commonJS({
14831
14952
  nodeData.stateParameters && node.setStateParameters(nodeData.stateParameters);
14832
14953
  nodeData.stateTransitions && node.setStateTransitions(nodeData.stateTransitions);
14833
14954
  if (nodeData.defaultStateTransitions) {
14834
- for (const state in nodeData.defaultStateTransitions) {
14835
- node.setDefaultStateTransition(nodeData.defaultStateTransitions[state], state);
14955
+ for (const state2 in nodeData.defaultStateTransitions) {
14956
+ node.setDefaultStateTransition(nodeData.defaultStateTransitions[state2], state2);
14836
14957
  }
14837
14958
  }
14838
14959
  nodeData.ports && nodeData.ports.forEach(function(port) {
@@ -15357,44 +15478,44 @@ var require_graphmodel = __commonJS({
15357
15478
  this.variants.push(variant);
15358
15479
  this.emit("variantUpdated", variant);
15359
15480
  };
15360
- GraphModel2.prototype.updateVariantParameter = function(variantName, variantTypeName, parameterName, parameterValue, state) {
15481
+ GraphModel2.prototype.updateVariantParameter = function(variantName, variantTypeName, parameterName, parameterValue, state2) {
15361
15482
  const variant = this.getVariant(variantTypeName, variantName);
15362
15483
  if (!variant) {
15363
15484
  console.log("updateVariantParameter: can't find variant", variantName, variantTypeName);
15364
15485
  return;
15365
15486
  }
15366
- if (!state) {
15487
+ if (!state2) {
15367
15488
  if (parameterValue === void 0) {
15368
15489
  delete variant.parameters[parameterName];
15369
15490
  } else {
15370
15491
  variant.parameters[parameterName] = parameterValue;
15371
15492
  }
15372
15493
  } else {
15373
- if (!variant.stateParameters.hasOwnProperty(state)) {
15374
- variant.stateParameters[state] = {};
15494
+ if (!variant.stateParameters.hasOwnProperty(state2)) {
15495
+ variant.stateParameters[state2] = {};
15375
15496
  }
15376
15497
  if (parameterValue === void 0) {
15377
- delete variant.stateParameters[state][parameterName];
15498
+ delete variant.stateParameters[state2][parameterName];
15378
15499
  } else {
15379
- variant.stateParameters[state][parameterName] = parameterValue;
15500
+ variant.stateParameters[state2][parameterName] = parameterValue;
15380
15501
  }
15381
15502
  }
15382
15503
  this.emit("variantUpdated", variant);
15383
15504
  };
15384
- GraphModel2.prototype.updateVariantDefaultStateTransition = function(variantName, variantTypeName, transition2, state) {
15505
+ GraphModel2.prototype.updateVariantDefaultStateTransition = function(variantName, variantTypeName, transition2, state2) {
15385
15506
  const variant = this.getVariant(variantTypeName, variantName);
15386
15507
  if (!variant) return;
15387
- variant.defaultStateTransitions[state] = transition2;
15508
+ variant.defaultStateTransitions[state2] = transition2;
15388
15509
  this.emit("variantUpdated", variant);
15389
15510
  };
15390
15511
  GraphModel2.prototype.updateVariantStateTransition = function(args) {
15391
- const { variantTypeName, variantName, state, parameterName, curve } = args;
15512
+ const { variantTypeName, variantName, state: state2, parameterName, curve } = args;
15392
15513
  const variant = this.getVariant(variantTypeName, variantName);
15393
15514
  if (!variant) return;
15394
- if (!variant.stateTransitions[state]) {
15395
- variant.stateTransitions[state] = {};
15515
+ if (!variant.stateTransitions[state2]) {
15516
+ variant.stateTransitions[state2] = {};
15396
15517
  }
15397
- variant.stateTransitions[state][parameterName] = curve;
15518
+ variant.stateTransitions[state2][parameterName] = curve;
15398
15519
  };
15399
15520
  GraphModel2.prototype.deleteVariant = function(typename, name2) {
15400
15521
  const i2 = this.variants.findIndex((v) => v.name === name2 && v.typename === typename);
@@ -17721,9 +17842,9 @@ var init_logic_search_tags = __esm({
17721
17842
  }
17722
17843
  });
17723
17844
 
17724
- // ../../../../OpenNoodl/node_modules/lodash.difference/index.js
17845
+ // ../../node_modules/lodash.difference/index.js
17725
17846
  var require_lodash = __commonJS({
17726
- "../../../../OpenNoodl/node_modules/lodash.difference/index.js"(exports2, module2) {
17847
+ "../../node_modules/lodash.difference/index.js"(exports2, module2) {
17727
17848
  var LARGE_ARRAY_SIZE = 200;
17728
17849
  var HASH_UNDEFINED = "__lodash_hash_undefined__";
17729
17850
  var MAX_SAFE_INTEGER = 9007199254740991;
@@ -18290,46 +18411,46 @@ var init_resolvedtarget = __esm({
18290
18411
  * node that re-resolves each frame costs one string comparison.
18291
18412
  */
18292
18413
  report(node, target) {
18293
- const state = this._stateFor(node);
18294
- if (!state) return;
18295
- let instances = state.byGraphNode.get(node.id);
18414
+ const state2 = this._stateFor(node);
18415
+ if (!state2) return;
18416
+ let instances = state2.byGraphNode.get(node.id);
18296
18417
  if (!instances) {
18297
18418
  instances = /* @__PURE__ */ new Map();
18298
- state.byGraphNode.set(node.id, instances);
18419
+ state2.byGraphNode.set(node.id, instances);
18299
18420
  }
18300
18421
  instances.set(node, target);
18301
- this._flush(node, state, instances);
18422
+ this._flush(node, state2, instances);
18302
18423
  }
18303
18424
  /** Drop an instance. Call from `_onNodeDeleted`, or this map is a leak. */
18304
18425
  forget(node) {
18305
- const state = this._stateFor(node);
18306
- if (!state) return;
18307
- const instances = state.byGraphNode.get(node.id);
18426
+ const state2 = this._stateFor(node);
18427
+ if (!state2) return;
18428
+ const instances = state2.byGraphNode.get(node.id);
18308
18429
  if (!instances) return;
18309
18430
  instances.delete(node);
18310
18431
  if (instances.size === 0) {
18311
- state.byGraphNode.delete(node.id);
18312
- state.lastSent.delete(node.id);
18432
+ state2.byGraphNode.delete(node.id);
18433
+ state2.lastSent.delete(node.id);
18313
18434
  return;
18314
18435
  }
18315
- this._flush(node, state, instances);
18436
+ this._flush(node, state2, instances);
18316
18437
  }
18317
18438
  _stateFor(node) {
18318
18439
  const context = node.context;
18319
18440
  if (!context) return void 0;
18320
- let state = this._byContext.get(context);
18321
- if (!state) {
18322
- state = { byGraphNode: /* @__PURE__ */ new Map(), lastSent: /* @__PURE__ */ new Map() };
18323
- this._byContext.set(context, state);
18441
+ let state2 = this._byContext.get(context);
18442
+ if (!state2) {
18443
+ state2 = { byGraphNode: /* @__PURE__ */ new Map(), lastSent: /* @__PURE__ */ new Map() };
18444
+ this._byContext.set(context, state2);
18324
18445
  }
18325
- return state;
18446
+ return state2;
18326
18447
  }
18327
- _flush(node, state, instances) {
18448
+ _flush(node, state2, instances) {
18328
18449
  const labels = [];
18329
18450
  instances.forEach((label) => labels.push(label));
18330
18451
  const summary = summariseTargets(labels);
18331
- if (state.lastSent.has(node.id) && state.lastSent.get(node.id) === summary) return;
18332
- state.lastSent.set(node.id, summary);
18452
+ if (state2.lastSent.has(node.id) && state2.lastSent.get(node.id) === summary) return;
18453
+ state2.lastSent.set(node.id, summary);
18333
18454
  const editorConnection = node.context && node.context.editorConnection;
18334
18455
  if (!editorConnection || !editorConnection.isRunningLocally()) return;
18335
18456
  if (typeof editorConnection.sendNodeSubLabel !== "function") return;
@@ -20488,9 +20609,9 @@ function typeOfPort(io, plug, name2) {
20488
20609
  return port ? port.type : "*";
20489
20610
  }
20490
20611
  function callPortMentions(block, mentions) {
20491
- const state = block.extraState;
20492
- if (!state || typeof state !== "object") return;
20493
- const ports = state[CALL_PORTS_STATE_KEY];
20612
+ const state2 = block.extraState;
20613
+ if (!state2 || typeof state2 !== "object") return;
20614
+ const ports = state2[CALL_PORTS_STATE_KEY];
20494
20615
  if (!ports || typeof ports !== "object") return;
20495
20616
  pushDeclaredRows(ports.inputs, "input", mentions);
20496
20617
  pushDeclaredRows(ports.outputs, "output", mentions);
@@ -29027,7 +29148,7 @@ var init_RestAuthAdapter = __esm({
29027
29148
  return false;
29028
29149
  }
29029
29150
  const code = params.get("code");
29030
- const state = params.get("state");
29151
+ const state2 = params.get("state");
29031
29152
  const providerError = params.get("error_description") || params.get("error");
29032
29153
  if (!code && !providerError) return false;
29033
29154
  params.delete("code");
@@ -29041,7 +29162,7 @@ var init_RestAuthAdapter = __esm({
29041
29162
  setTimeout(() => this.emitAuthEvent("oauthReturn", this.oauthReturn), 0);
29042
29163
  return true;
29043
29164
  }
29044
- if (pending.state && state !== pending.state) {
29165
+ if (pending.state && state2 !== pending.state) {
29045
29166
  this.oauthReturn = {
29046
29167
  inProgress: false,
29047
29168
  succeeded: false,
@@ -30878,6 +30999,7 @@ var require_cloudstore = __commonJS({
30878
30999
  var Model14 = require_model();
30879
31000
  var Collection5 = require_collection();
30880
31001
  var CloudFile2 = require_cloudfile();
31002
+ var { holdOptionsForWrite: holdOptionsForWrite2 } = (init_pressguard(), __toCommonJS(pressguard_exports));
30881
31003
  var { ParseWireAdapter: ParseWireAdapter2 } = (init_ParseWireAdapter(), __toCommonJS(ParseWireAdapter_exports));
30882
31004
  var { RestDataAdapter: RestDataAdapter2 } = (init_RestDataAdapter(), __toCommonJS(RestDataAdapter_exports));
30883
31005
  var { makeRestSerializer: makeRestSerializer2, filterSchemaFor: filterSchemaFor2 } = (init_restSerialize(), __toCommonJS(restSerialize_exports));
@@ -31017,22 +31139,22 @@ var require_cloudstore = __commonJS({
31017
31139
  this._adapter.fetch(this._handle(), options);
31018
31140
  }
31019
31141
  create(options) {
31020
- this._adapter.create(this._handle(), options);
31142
+ this._adapter.create(this._handle(), holdOptionsForWrite2(options));
31021
31143
  }
31022
31144
  increment(options) {
31023
- this._adapter.increment(this._handle(), options);
31145
+ this._adapter.increment(this._handle(), holdOptionsForWrite2(options));
31024
31146
  }
31025
31147
  save(options) {
31026
- this._adapter.save(this._handle(), options);
31148
+ this._adapter.save(this._handle(), holdOptionsForWrite2(options));
31027
31149
  }
31028
31150
  delete(options) {
31029
- this._adapter.delete(this._handle(), options);
31151
+ this._adapter.delete(this._handle(), holdOptionsForWrite2(options));
31030
31152
  }
31031
31153
  addRelation(options) {
31032
- this._adapter.addRelation(this._handle(), options);
31154
+ this._adapter.addRelation(this._handle(), holdOptionsForWrite2(options));
31033
31155
  }
31034
31156
  removeRelation(options) {
31035
- this._adapter.removeRelation(this._handle(), options);
31157
+ this._adapter.removeRelation(this._handle(), holdOptionsForWrite2(options));
31036
31158
  }
31037
31159
  uploadFile(options) {
31038
31160
  this._adapter.uploadFile(this._handle(), options);
@@ -31166,6 +31288,9 @@ var require_cloudstore = __commonJS({
31166
31288
  for (var key in item) {
31167
31289
  if (key === "objectId" || key === "ACL") continue;
31168
31290
  var _type = schema && schema.properties && schema.properties[key] ? schema.properties[key].type : void 0;
31291
+ if (_type === void 0 && item[key] && item[key].__type === "Pointer" && item[key].objectId !== void 0) {
31292
+ _type = "Pointer";
31293
+ }
31169
31294
  const value2 = _deserializeJSON(item[key], _type, modelScope);
31170
31295
  if (Array.isArray(value2) && sameList(m.get(key), value2)) continue;
31171
31296
  m.set(key, value2);
@@ -32551,7 +32676,9 @@ var require_dbmodelnode2 = __commonJS({
32551
32676
  // off it and created a row per request from data that had not arrived. The twin
32552
32677
  // (`Model2`) already said "bound"; this one now says what it does too, and names the
32553
32678
  // port that means what this one promised.
32554
- description: "Fires when the Id binds a record, and again when a Fetch finishes reading it \u2014 a bind has read nothing, so use Done to act on data that is really there"
32679
+ // P112-OWN026-RECORDBYIDMEMORY — a bind of a record nothing in memory holds now reads it first, and fires this
32680
+ // when the answer lands; a bind of a record already held fires it at once, as before.
32681
+ description: "Fires when the Id binds a record already in memory, when a record the Id names is first read from the backend, and when a Fetch finishes reading it; use Done to act on the answer to a Fetch"
32555
32682
  },
32556
32683
  changed: {
32557
32684
  type: "signal",
@@ -32671,10 +32798,25 @@ var require_dbmodelnode2 = __commonJS({
32671
32798
  this.setModel(void 0);
32672
32799
  return;
32673
32800
  }
32674
- const model2 = (this.nodeScope.modelScope || Model14).get(id);
32675
- this.setModel(model2);
32801
+ const scope = this.nodeScope.modelScope || Model14;
32802
+ const held = scope.exists(id);
32803
+ const model2 = scope.get(id);
32804
+ this.setModel(model2, { announce: held });
32805
+ if (!held) this.readOnBind();
32676
32806
  },
32677
- setModel: function(model2) {
32807
+ /**
32808
+ * P112-OWN026-RECORDBYIDMEMORY — the read a bind makes for a record nothing in memory holds. The same read as
32809
+ * `Fetch` and the same `scheduleOnce` key, so a `Fetch` pulsed in the same pass makes one request, not two; but
32810
+ * no outcome is minted: a bind is a value, not an invocation (ERG-001's corpus row pins the Id path as having no
32811
+ * `Done`/`Failure`). A failed read is still said: on `Error`, and as a warning.
32812
+ */
32813
+ readOnBind: function() {
32814
+ this.scheduleOnce("Fetch", () => {
32815
+ if (!this._internal.collectionId && !this._internal.pendingFetch?.length) this.sendSignalOnOutput("fetched");
32816
+ else this.readFromBackend();
32817
+ });
32818
+ },
32819
+ setModel: function(model2, options) {
32678
32820
  if (this._internal.model)
32679
32821
  this._internal.model.off("change", this._internal.onModelChangedCallback);
32680
32822
  this._internal.model = model2;
@@ -32684,7 +32826,7 @@ var require_dbmodelnode2 = __commonJS({
32684
32826
  for (const key in model2.data) {
32685
32827
  if (this.hasOutput("prop-" + key)) this.flagOutputDirty("prop-" + key);
32686
32828
  }
32687
- this.sendSignalOnOutput("fetched");
32829
+ if (options?.announce !== false) this.sendSignalOnOutput("fetched");
32688
32830
  },
32689
32831
  _onNodeDeleted: function() {
32690
32832
  Node17.prototype._onNodeDeleted.call(this);
@@ -32732,51 +32874,66 @@ var require_dbmodelnode2 = __commonJS({
32732
32874
  }
32733
32875
  },
32734
32876
  scheduleFetch: function() {
32735
- const _this = this;
32736
32877
  const internal2 = this._internal;
32737
32878
  const pending = internal2.pendingFetch || (internal2.pendingFetch = []);
32738
32879
  pending.push(this.beginOutcome());
32739
- this.scheduleOnce("Fetch", function() {
32740
- const tokens = internal2.pendingFetch || [];
32741
- internal2.pendingFetch = [];
32742
- if (internal2.modelId === void 0 || internal2.modelId === null || internal2.modelId === "") {
32743
- _this.setError("Missing Id.", tokens);
32744
- return;
32745
- }
32746
- const cloudstore = CloudStore7.forBackend(_this.nodeScope.modelScope, internal2.backendId);
32747
- if (!cloudstore) {
32748
- _this.setError(
32749
- `The backend this node is set to ("${internal2.backendId}") is not configured in this project.`,
32750
- tokens
32751
- );
32752
- return;
32753
- }
32754
- cloudstore.fetch({
32755
- collection: internal2.collectionId,
32756
- objectId: internal2.modelId,
32757
- // Get the objectId part of the model id
32758
- success: function(response) {
32759
- const model2 = cloudstore._fromJSON(response, internal2.collectionId);
32760
- if (internal2.model !== model2) {
32761
- if (internal2.model)
32762
- internal2.model.off("change", internal2.onModelChangedCallback);
32763
- internal2.model = model2;
32764
- model2.on("change", internal2.onModelChangedCallback);
32765
- }
32766
- _this.flagOutputDirty("id");
32767
- delete response.objectId;
32768
- for (const key in response) {
32769
- if (_this.hasOutput("prop-" + key)) _this.flagOutputDirty("prop-" + key);
32770
- }
32771
- _this.sendSignalOnOutput("fetched");
32772
- reportOutcomes(_this, tokens, "done");
32773
- },
32774
- error: function(err) {
32775
- _this.setError(err || "Failed to fetch.", tokens);
32880
+ this.scheduleOnce("Fetch", () => this.readFromBackend());
32881
+ },
32882
+ /**
32883
+ * The one read, for a `Fetch` and for a bind (`readOnBind`). It settles every `Fetch` that is pending when it
32884
+ * runs; a bind adds none, so a read with no `Fetch` behind it reports no outcome.
32885
+ */
32886
+ readFromBackend: function() {
32887
+ const _this = this;
32888
+ const internal2 = this._internal;
32889
+ const tokens = internal2.pendingFetch || [];
32890
+ internal2.pendingFetch = [];
32891
+ const fail = (err) => tokens.length > 0 ? _this.setError(err, tokens) : _this.setBindError(err);
32892
+ if (internal2.modelId === void 0 || internal2.modelId === null || internal2.modelId === "") {
32893
+ fail("Missing Id.");
32894
+ return;
32895
+ }
32896
+ const cloudstore = CloudStore7.forBackend(_this.nodeScope.modelScope, internal2.backendId);
32897
+ if (!cloudstore) {
32898
+ fail(`The backend this node is set to ("${internal2.backendId}") is not configured in this project.`);
32899
+ return;
32900
+ }
32901
+ cloudstore.fetch({
32902
+ collection: internal2.collectionId,
32903
+ objectId: internal2.modelId,
32904
+ // Get the objectId part of the model id
32905
+ success: function(response) {
32906
+ const model2 = cloudstore._fromJSON(response, internal2.collectionId);
32907
+ if (internal2.model !== model2) {
32908
+ if (internal2.model)
32909
+ internal2.model.off("change", internal2.onModelChangedCallback);
32910
+ internal2.model = model2;
32911
+ model2.on("change", internal2.onModelChangedCallback);
32776
32912
  }
32777
- });
32913
+ _this.flagOutputDirty("id");
32914
+ delete response.objectId;
32915
+ for (const key in response) {
32916
+ if (_this.hasOutput("prop-" + key)) _this.flagOutputDirty("prop-" + key);
32917
+ }
32918
+ _this.sendSignalOnOutput("fetched");
32919
+ reportOutcomes(_this, tokens, "done");
32920
+ },
32921
+ error: function(err) {
32922
+ fail(err || "Failed to fetch.");
32923
+ }
32778
32924
  });
32779
32925
  },
32926
+ /** A bind's read failed: the reason on `Error` and on the editor's warning channel, and no outcome (see `readOnBind`). */
32927
+ setBindError: function(err) {
32928
+ this._internal.error = err;
32929
+ this.flagOutputDirty("error");
32930
+ if (this.context.editorConnection) {
32931
+ this.context.editorConnection.sendWarning(this.nodeScope.componentOwner.name, this.id, STORAGE_OP_ERROR_CODE2, {
32932
+ showGlobally: true,
32933
+ message: err
32934
+ });
32935
+ }
32936
+ },
32780
32937
  // Dead: nothing calls this. `userInputSetter` — the only writer of `inputValues` — is
32781
32938
  // reached only through a `prop-` *input*, and `updatePorts` publishes the `prop-` ports
32782
32939
  // as outputs. Kept because deleting a method is an edit to a shipping definition.
@@ -33693,12 +33850,57 @@ var require_setdbmodelpropertiesnode = __commonJS({
33693
33850
  const names = typeof value2 === "string" ? value2.split(",").map((n) => n.trim()).filter((n) => n !== "") : [];
33694
33851
  this._internal.onlyIfUnchanged = names.length > 0 ? names : void 0;
33695
33852
  }
33853
+ },
33854
+ /**
33855
+ * P112 OWN-026 FIX-03 A — **a change by an amount is one node, no script.**
33856
+ *
33857
+ * A count, score, balance or progress that two tabs or devices change must be changed on the
33858
+ * backend by the amount. That was `Noodl.Records.increment` in a Function node, so the
33859
+ * shortest graph (read the value, add one in a Function, write it back whole) was the unsafe
33860
+ * one, and a model under pressure took it (t1-nodegx-3: two tabs, one planet, not two). Now
33861
+ * it is this node with the field named here and the amount wired in. The backend adds it
33862
+ * (`cloudstore.increment`, atomic on the NodeGX backend), and the record shows the total the
33863
+ * backend answers with. The other properties are saved as before, first, so Only If
33864
+ * Unchanged still guards them and a refused save adds nothing.
33865
+ */
33866
+ addTo: {
33867
+ type: "string",
33868
+ displayName: "Add To",
33869
+ group: "General",
33870
+ description: "Property names, comma-separated (e.g. points). For these, the value wired in is an amount added to what the backend holds, in one step on the backend, instead of replacing it: two devices adding at once both count. Wire the amount (1, -1, 5). The record then shows the backend's total. Leave empty to write every value as given.",
33871
+ set: function(value2) {
33872
+ const names = typeof value2 === "string" ? value2.split(",").map((n) => n.trim()).filter((n) => n !== "") : [];
33873
+ this._internal.addTo = names.length > 0 ? names : void 0;
33874
+ }
33696
33875
  }
33697
33876
  },
33698
33877
  // ERG-001 §4: declared once in `dbmodelcrudbase.addBaseInfo` for the whole family; `stored`
33699
33878
  // was one of §0.2 Result 2's four spellings of a single displayed "Done".
33700
33879
  outputs: {},
33701
33880
  methods: {
33881
+ /**
33882
+ * FIX-03 A — the wired values split into amounts to add (the Add To names) and values to
33883
+ * write. A string is the refusal: an Add To property whose value is not a number.
33884
+ */
33885
+ _splitAdds: function() {
33886
+ const values = this._internal.inputValues;
33887
+ const names = this._internal.addTo || [];
33888
+ const adds = {};
33889
+ const rest = {};
33890
+ for (const key in values) {
33891
+ if (names.indexOf(key) === -1) {
33892
+ rest[key] = values[key];
33893
+ continue;
33894
+ }
33895
+ const raw = values[key];
33896
+ const amount = typeof raw === "number" ? raw : typeof raw === "string" && raw.trim() !== "" ? Number(raw) : NaN;
33897
+ if (!Number.isFinite(amount)) {
33898
+ return `Add To names "${key}", whose value (${JSON.stringify(raw)}) is not a number. Wire the amount to add, such as 1 or -1.`;
33899
+ }
33900
+ adds[key] = amount;
33901
+ }
33902
+ return { adds, rest };
33903
+ },
33702
33904
  scheduleSave: function() {
33703
33905
  const _this = this;
33704
33906
  const internal2 = this._internal;
@@ -33712,6 +33914,12 @@ var require_setdbmodelpropertiesnode = __commonJS({
33712
33914
  return;
33713
33915
  }
33714
33916
  const model2 = internal2.model;
33917
+ const split = _this._splitAdds();
33918
+ if (typeof split === "string") {
33919
+ _this.setError(split, tokens);
33920
+ return;
33921
+ }
33922
+ const { adds, rest } = split;
33715
33923
  let ifMatch;
33716
33924
  if (internal2.onlyIfUnchanged) {
33717
33925
  ifMatch = {};
@@ -33736,23 +33944,56 @@ var require_setdbmodelpropertiesnode = __commonJS({
33736
33944
  const cloudstore = _this.cloudStore(tokens);
33737
33945
  if (!cloudstore) return;
33738
33946
  const before2 = {};
33739
- for (const key in internal2.inputValues) {
33947
+ for (const key in rest) {
33740
33948
  before2[key] = model2.get(key);
33741
- model2.set(key, internal2.inputValues[key], { resolve: true });
33949
+ model2.set(key, rest[key], { resolve: true });
33950
+ }
33951
+ const addNames = Object.keys(adds);
33952
+ const addThenReport = function() {
33953
+ if (addNames.length === 0) {
33954
+ reportOutcomes(_this, tokens, "done");
33955
+ return;
33956
+ }
33957
+ cloudstore.increment({
33958
+ collection: internal2.collectionId,
33959
+ objectId: model2.getId(),
33960
+ properties: adds,
33961
+ success: function(response) {
33962
+ for (const key in response) model2.set(key, response[key]);
33963
+ reportOutcomes(_this, tokens, "done");
33964
+ },
33965
+ error: function(err) {
33966
+ const what = addNames.join(", ");
33967
+ _this.setError(
33968
+ Object.keys(rest).length > 0 ? `The other properties were saved, but adding to ${what} failed: ${err || "no reason given"}` : err || `Failed to add to ${what}.`,
33969
+ tokens
33970
+ );
33971
+ }
33972
+ });
33973
+ };
33974
+ const acl = _this._getACL();
33975
+ let data = rest;
33976
+ if (internal2.storeProperties === "all") {
33977
+ data = Object.assign({}, model2.data);
33978
+ for (const name2 of addNames) delete data[name2];
33979
+ }
33980
+ if (addNames.length > 0 && Object.keys(data).length === 0 && acl === void 0 && !ifMatch) {
33981
+ addThenReport();
33982
+ return;
33742
33983
  }
33743
33984
  cloudstore.save({
33744
33985
  collection: internal2.collectionId,
33745
33986
  objectId: model2.getId(),
33746
33987
  // Get the objectId part of the model id
33747
- data: internal2.storeProperties === "all" ? model2.data : internal2.inputValues,
33988
+ data,
33748
33989
  // Only store input values by default, if not explicitly specified
33749
- acl: _this._getACL(),
33990
+ acl,
33750
33991
  ifMatch,
33751
33992
  success: function(response) {
33752
33993
  for (const key in response) {
33753
33994
  model2.set(key, response[key]);
33754
33995
  }
33755
- reportOutcomes(_this, tokens, "done");
33996
+ addThenReport();
33756
33997
  },
33757
33998
  error: function(err, detail) {
33758
33999
  for (const key in before2) model2.set(key, before2[key]);
@@ -33780,8 +34021,18 @@ var require_setdbmodelpropertiesnode = __commonJS({
33780
34021
  this.setError("Missing Record Id", tokens);
33781
34022
  return;
33782
34023
  }
33783
- for (const i2 in internal2.inputValues) {
33784
- internal2.model.set(i2, internal2.inputValues[i2], { resolve: true });
34024
+ const split = this._splitAdds();
34025
+ if (typeof split === "string") {
34026
+ this.setError(split, tokens);
34027
+ return;
34028
+ }
34029
+ const model2 = internal2.model;
34030
+ for (const i2 in split.rest) {
34031
+ model2.set(i2, split.rest[i2], { resolve: true });
34032
+ }
34033
+ for (const name2 in split.adds) {
34034
+ const held = Number(model2.get(name2));
34035
+ model2.set(name2, (Number.isFinite(held) ? held : 0) + split.adds[name2]);
33785
34036
  }
33786
34037
  reportOutcomes(this, tokens, "done");
33787
34038
  });
@@ -41488,9 +41739,9 @@ var require_tocsv = __commonJS({
41488
41739
  }
41489
41740
  });
41490
41741
 
41491
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/util.js
41742
+ // ../../node_modules/fast-xml-parser/src/util.js
41492
41743
  var require_util2 = __commonJS({
41493
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/util.js"(exports2) {
41744
+ "../../node_modules/fast-xml-parser/src/util.js"(exports2) {
41494
41745
  "use strict";
41495
41746
  var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
41496
41747
  var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
@@ -41562,9 +41813,9 @@ var require_util2 = __commonJS({
41562
41813
  }
41563
41814
  });
41564
41815
 
41565
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/validator.js
41816
+ // ../../node_modules/fast-xml-parser/src/validator.js
41566
41817
  var require_validator = __commonJS({
41567
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/validator.js"(exports2) {
41818
+ "../../node_modules/fast-xml-parser/src/validator.js"(exports2) {
41568
41819
  "use strict";
41569
41820
  var util2 = require_util2();
41570
41821
  var defaultOptions = {
@@ -41874,9 +42125,9 @@ var require_validator = __commonJS({
41874
42125
  }
41875
42126
  });
41876
42127
 
41877
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
42128
+ // ../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
41878
42129
  var require_OptionsBuilder = __commonJS({
41879
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
42130
+ "../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
41880
42131
  var { DANGEROUS_PROPERTY_NAMES, criticalProperties } = require_util2();
41881
42132
  var defaultOnDangerousProperty = (name2) => {
41882
42133
  if (DANGEROUS_PROPERTY_NAMES.includes(name2)) {
@@ -42000,9 +42251,9 @@ var require_OptionsBuilder = __commonJS({
42000
42251
  }
42001
42252
  });
42002
42253
 
42003
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
42254
+ // ../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
42004
42255
  var require_xmlNode = __commonJS({
42005
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
42256
+ "../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
42006
42257
  "use strict";
42007
42258
  var XmlNode = class {
42008
42259
  constructor(tagname) {
@@ -42027,9 +42278,9 @@ var require_xmlNode = __commonJS({
42027
42278
  }
42028
42279
  });
42029
42280
 
42030
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
42281
+ // ../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
42031
42282
  var require_DocTypeReader = __commonJS({
42032
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
42283
+ "../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
42033
42284
  var util2 = require_util2();
42034
42285
  var DocTypeReader = class {
42035
42286
  constructor(options) {
@@ -42315,9 +42566,9 @@ var require_DocTypeReader = __commonJS({
42315
42566
  }
42316
42567
  });
42317
42568
 
42318
- // ../../../../OpenNoodl/node_modules/strnum/strnum.js
42569
+ // ../../node_modules/strnum/strnum.js
42319
42570
  var require_strnum = __commonJS({
42320
- "../../../../OpenNoodl/node_modules/strnum/strnum.js"(exports2, module2) {
42571
+ "../../node_modules/strnum/strnum.js"(exports2, module2) {
42321
42572
  var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;
42322
42573
  var numRegex = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/;
42323
42574
  var consider = {
@@ -42403,9 +42654,9 @@ var require_strnum = __commonJS({
42403
42654
  }
42404
42655
  });
42405
42656
 
42406
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/ignoreAttributes.js
42657
+ // ../../node_modules/fast-xml-parser/src/ignoreAttributes.js
42407
42658
  var require_ignoreAttributes = __commonJS({
42408
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/ignoreAttributes.js"(exports2, module2) {
42659
+ "../../node_modules/fast-xml-parser/src/ignoreAttributes.js"(exports2, module2) {
42409
42660
  function getIgnoreAttributesFn(ignoreAttributes) {
42410
42661
  if (typeof ignoreAttributes === "function") {
42411
42662
  return ignoreAttributes;
@@ -42428,9 +42679,9 @@ var require_ignoreAttributes = __commonJS({
42428
42679
  }
42429
42680
  });
42430
42681
 
42431
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
42682
+ // ../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
42432
42683
  var require_OrderedObjParser = __commonJS({
42433
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
42684
+ "../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
42434
42685
  "use strict";
42435
42686
  var util2 = require_util2();
42436
42687
  var xmlNode = require_xmlNode();
@@ -43033,9 +43284,9 @@ var require_OrderedObjParser = __commonJS({
43033
43284
  }
43034
43285
  });
43035
43286
 
43036
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/node2json.js
43287
+ // ../../node_modules/fast-xml-parser/src/xmlparser/node2json.js
43037
43288
  var require_node2json = __commonJS({
43038
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
43289
+ "../../node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
43039
43290
  "use strict";
43040
43291
  function prettify(node, options) {
43041
43292
  return compress(node, options);
@@ -43120,9 +43371,9 @@ var require_node2json = __commonJS({
43120
43371
  }
43121
43372
  });
43122
43373
 
43123
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
43374
+ // ../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
43124
43375
  var require_XMLParser = __commonJS({
43125
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
43376
+ "../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
43126
43377
  var { buildOptions } = require_OptionsBuilder();
43127
43378
  var OrderedObjParser = require_OrderedObjParser();
43128
43379
  var { prettify } = require_node2json();
@@ -43178,9 +43429,9 @@ var require_XMLParser = __commonJS({
43178
43429
  }
43179
43430
  });
43180
43431
 
43181
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
43432
+ // ../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
43182
43433
  var require_orderedJs2Xml = __commonJS({
43183
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
43434
+ "../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
43184
43435
  var EOL = "\n";
43185
43436
  function toXml(jArray, options) {
43186
43437
  let indentation = "";
@@ -43313,9 +43564,9 @@ var require_orderedJs2Xml = __commonJS({
43313
43564
  }
43314
43565
  });
43315
43566
 
43316
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
43567
+ // ../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
43317
43568
  var require_json2xml = __commonJS({
43318
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
43569
+ "../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
43319
43570
  "use strict";
43320
43571
  var buildFromOrderedJs = require_orderedJs2Xml();
43321
43572
  var getIgnoreAttributesFn = require_ignoreAttributes();
@@ -43562,9 +43813,9 @@ var require_json2xml = __commonJS({
43562
43813
  }
43563
43814
  });
43564
43815
 
43565
- // ../../../../OpenNoodl/node_modules/fast-xml-parser/src/fxp.js
43816
+ // ../../node_modules/fast-xml-parser/src/fxp.js
43566
43817
  var require_fxp = __commonJS({
43567
- "../../../../OpenNoodl/node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
43818
+ "../../node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
43568
43819
  "use strict";
43569
43820
  var validator = require_validator();
43570
43821
  var XMLParser2 = require_XMLParser();
@@ -47401,10 +47652,10 @@ var init_sse_connection = __esm({
47401
47652
  this._reconnectTimer = null;
47402
47653
  }
47403
47654
  }
47404
- _setState(state) {
47405
- if (this.state === state) return;
47406
- this.state = state;
47407
- if (!this._disposed && this._options.onState) this._options.onState(state);
47655
+ _setState(state2) {
47656
+ if (this.state === state2) return;
47657
+ this.state = state2;
47658
+ if (!this._disposed && this._options.onState) this._options.onState(state2);
47408
47659
  }
47409
47660
  _onOpen() {
47410
47661
  if (this._disposed) return;
@@ -48028,7 +48279,7 @@ var require_sse = __commonJS({
48028
48279
  maxReconnectDelay: internal2.maxReconnectDelay,
48029
48280
  maxRetries: internal2.maxRetries,
48030
48281
  dedupeById: internal2.dedupeById,
48031
- onState: (state) => this.handleState(state),
48282
+ onState: (state2) => this.handleState(state2),
48032
48283
  onFrame: (frame) => this.handleFrame(frame),
48033
48284
  onError: (message) => this.handleError(message),
48034
48285
  // P107-C56 (P109 ISL-030, ruled "Send them when they change"): Retry Count and Duplicates Suppressed are sent when
@@ -48053,17 +48304,17 @@ var require_sse = __commonJS({
48053
48304
  internal2.connection = null;
48054
48305
  if (connection) connection.dispose();
48055
48306
  },
48056
- handleState(state) {
48307
+ handleState(state2) {
48057
48308
  const internal2 = internalOf(this);
48058
- internal2.connectionState = state;
48309
+ internal2.connectionState = state2;
48059
48310
  this.flagOutputDirty("connectionState");
48060
48311
  this.flagOutputDirty("connected");
48061
48312
  this.flagOutputDirty("retryCount");
48062
- if (state === "open") this.flagOutputDirty("lastError");
48063
- if (state === "open") this.sendSignalOnOutput("onOpen");
48064
- if (state === "closed" || state === "error") this.sendSignalOnOutput("onClose");
48065
- if (state === "open") this.settleConnect("done");
48066
- if (state === "error") {
48313
+ if (state2 === "open") this.flagOutputDirty("lastError");
48314
+ if (state2 === "open") this.sendSignalOnOutput("onOpen");
48315
+ if (state2 === "closed" || state2 === "error") this.sendSignalOnOutput("onClose");
48316
+ if (state2 === "open") this.settleConnect("done");
48317
+ if (state2 === "error") {
48067
48318
  const conn = internalOf(this).connection;
48068
48319
  this.settleConnect(
48069
48320
  "failure",
@@ -49639,18 +49890,18 @@ var init_globalstore = __esm({
49639
49890
  */
49640
49891
  getSnapshot(storeName) {
49641
49892
  const record = this.ensure(storeName);
49642
- const state = {};
49893
+ const state2 = {};
49643
49894
  const byReference = [];
49644
49895
  for (const key of Object.keys(record.model.data)) {
49645
49896
  let escaped = false;
49646
- state[key] = cloneValue(record.model.data[key], /* @__PURE__ */ new WeakSet(), () => {
49897
+ state2[key] = cloneValue(record.model.data[key], /* @__PURE__ */ new WeakSet(), () => {
49647
49898
  escaped = true;
49648
49899
  });
49649
49900
  if (escaped) byReference.push(key);
49650
49901
  }
49651
49902
  return {
49652
49903
  storeName: record.name,
49653
- state,
49904
+ state: state2,
49654
49905
  takenAt: Date.now(),
49655
49906
  revision: record.revision,
49656
49907
  byReference
@@ -50586,12 +50837,12 @@ var require_globalstoresubscribenode = __commonJS({
50586
50837
  * yields the whole state. The single-key case matters — an author watching `count`
50587
50838
  * wants the number, not `{ count: n }`.
50588
50839
  */
50589
- projectValue: function(state) {
50840
+ projectValue: function(state2) {
50590
50841
  const keys = this._internal.keyList;
50591
- if (keys.length === 0) return state;
50592
- if (keys.length === 1) return state[keys[0]];
50842
+ if (keys.length === 0) return state2;
50843
+ if (keys.length === 1) return state2[keys[0]];
50593
50844
  const projected = {};
50594
- for (const key of keys) projected[key] = state[key];
50845
+ for (const key of keys) projected[key] = state2[key];
50595
50846
  return projected;
50596
50847
  },
50597
50848
  _onNodeDeleted: function() {
@@ -51503,13 +51754,13 @@ var init_statehistory = __esm({
51503
51754
  const snapshot = globalStoreManager.getSnapshot(record.storeName);
51504
51755
  const tracked = record.trackSet;
51505
51756
  if (!tracked) return snapshot;
51506
- const state = {};
51757
+ const state2 = {};
51507
51758
  for (const key of Object.keys(snapshot.state)) {
51508
- if (tracked.has(key)) state[key] = snapshot.state[key];
51759
+ if (tracked.has(key)) state2[key] = snapshot.state[key];
51509
51760
  }
51510
51761
  return {
51511
51762
  storeName: snapshot.storeName,
51512
- state,
51763
+ state: state2,
51513
51764
  takenAt: snapshot.takenAt,
51514
51765
  revision: snapshot.revision,
51515
51766
  byReference: snapshot.byReference.filter((key) => tracked.has(key))
@@ -55639,6 +55890,23 @@ function addFocusActions(definition4, options) {
55639
55890
  }
55640
55891
  });
55641
55892
  }
55893
+ function addTakenOnceWhileSaving(definition4, options) {
55894
+ const output = definition4.outputProps && definition4.outputProps[options.outputName];
55895
+ if (!output) throw new Error(`addTakenOnceWhileSaving: no output prop ${options.outputName}`);
55896
+ output.takenOnceWhileSaving = true;
55897
+ addInputs(definition4, {
55898
+ repeatWhileSaving: {
55899
+ type: "boolean",
55900
+ group: "General",
55901
+ displayName: "Repeat While Saving",
55902
+ description: `Off (the default): when ${options.one} starts a save, the next ${options.press} is ignored until the backend has answered, and for at least half a second, so a double press saves once. Controls wired to the same node share this. On: every ${options.press} fires, for a control that saves each quick tap`,
55903
+ default: false,
55904
+ set(value2) {
55905
+ this._internal.repeatWhileSaving = !!value2;
55906
+ }
55907
+ }
55908
+ });
55909
+ }
55642
55910
  var _styleSheets, FOCUSABLE_SELECTOR, utils_default;
55643
55911
  var init_utils2 = __esm({
55644
55912
  "../noodl-viewer-react/src/nodes/controls/utils.ts"() {
@@ -55650,6 +55918,7 @@ var init_utils2 = __esm({
55650
55918
  updateStylesForClass,
55651
55919
  addControlEventsAndStates,
55652
55920
  addFocusActions,
55921
+ addTakenOnceWhileSaving,
55653
55922
  controlEvents
55654
55923
  };
55655
55924
  }
@@ -56489,9 +56758,9 @@ var init_drag_drop = __esm({
56489
56758
  }
56490
56759
  });
56491
56760
 
56492
- // ../../../../OpenNoodl/node_modules/webfontloader/webfontloader.js
56761
+ // ../../node_modules/webfontloader/webfontloader.js
56493
56762
  var require_webfontloader = __commonJS({
56494
- "../../../../OpenNoodl/node_modules/webfontloader/webfontloader.js"(exports2, module2) {
56763
+ "../../node_modules/webfontloader/webfontloader.js"(exports2, module2) {
56495
56764
  (function() {
56496
56765
  function aa(a, b, c) {
56497
56766
  return a.call.apply(a.bind, arguments);
@@ -59598,9 +59867,9 @@ var init_node_shared_port_definitions = __esm({
59598
59867
  }
59599
59868
  });
59600
59869
 
59601
- // ../../../../OpenNoodl/node_modules/react-dom/cjs/react-dom.production.js
59870
+ // ../../node_modules/react-dom/cjs/react-dom.production.js
59602
59871
  var require_react_dom_production = __commonJS({
59603
- "../../../../OpenNoodl/node_modules/react-dom/cjs/react-dom.production.js"(exports2) {
59872
+ "../../node_modules/react-dom/cjs/react-dom.production.js"(exports2) {
59604
59873
  "use strict";
59605
59874
  var React33 = require_react();
59606
59875
  function formatProdErrorMessage(code) {
@@ -59747,9 +60016,9 @@ var require_react_dom_production = __commonJS({
59747
60016
  }
59748
60017
  });
59749
60018
 
59750
- // ../../../../OpenNoodl/node_modules/react-dom/cjs/react-dom.development.js
60019
+ // ../../node_modules/react-dom/cjs/react-dom.development.js
59751
60020
  var require_react_dom_development = __commonJS({
59752
- "../../../../OpenNoodl/node_modules/react-dom/cjs/react-dom.development.js"(exports2) {
60021
+ "../../node_modules/react-dom/cjs/react-dom.development.js"(exports2) {
59753
60022
  "use strict";
59754
60023
  "production" !== process.env.NODE_ENV && (function() {
59755
60024
  function noop2() {
@@ -59991,9 +60260,9 @@ var require_react_dom_development = __commonJS({
59991
60260
  }
59992
60261
  });
59993
60262
 
59994
- // ../../../../OpenNoodl/node_modules/react-dom/index.js
60263
+ // ../../node_modules/react-dom/index.js
59995
60264
  var require_react_dom = __commonJS({
59996
- "../../../../OpenNoodl/node_modules/react-dom/index.js"(exports2, module2) {
60265
+ "../../node_modules/react-dom/index.js"(exports2, module2) {
59997
60266
  "use strict";
59998
60267
  function checkDCE() {
59999
60268
  if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === "undefined" || typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== "function") {
@@ -60405,9 +60674,9 @@ var init_mergedeep = __esm({
60405
60674
  }
60406
60675
  });
60407
60676
 
60408
- // ../../../../OpenNoodl/node_modules/bezier-easing/index.js
60677
+ // ../../node_modules/bezier-easing/index.js
60409
60678
  var require_bezier_easing = __commonJS({
60410
- "../../../../OpenNoodl/node_modules/bezier-easing/index.js"(exports2, module2) {
60679
+ "../../node_modules/bezier-easing/index.js"(exports2, module2) {
60411
60680
  var NEWTON_ITERATIONS = 4;
60412
60681
  var NEWTON_MIN_SLOPE = 1e-3;
60413
60682
  var SUBDIVISION_PRECISION = 1e-7;
@@ -60797,7 +61066,8 @@ __export(react_component_node_exports, {
60797
61066
  DATA_ATTRIBUTES_RULE: () => DATA_ATTRIBUTES_RULE,
60798
61067
  DATA_ATTRIBUTE_NAME_PATTERN: () => DATA_ATTRIBUTE_NAME_PATTERN,
60799
61068
  NoodlReactComponent: () => NoodlReactComponent,
60800
- createNodeFromReactComponent: () => createNodeFromReactComponent
61069
+ createNodeFromReactComponent: () => createNodeFromReactComponent,
61070
+ guardedPressHandler: () => guardedPressHandler
60801
61071
  });
60802
61072
  function addOutputPropHandler(node, propCallbacks, propPath) {
60803
61073
  const props = propPath ? node.props[propPath] : node.props;
@@ -60814,9 +61084,22 @@ function addOutputPropHandler(node, propCallbacks, propPath) {
60814
61084
  }
60815
61085
  node.forceUpdate();
60816
61086
  }
61087
+ function guardedPressHandler(node, name2) {
61088
+ return () => {
61089
+ if (!node._internal.repeatWhileSaving) {
61090
+ const keys = pressKeys(node, name2);
61091
+ if (isPressHeld(keys)) return;
61092
+ notePress(keys);
61093
+ if (node.context) node.context.scheduleUpdate();
61094
+ }
61095
+ node.sendSignalOnOutput(name2);
61096
+ };
61097
+ }
60817
61098
  function addPrimitiveOutputPropHandler(node, name2, output) {
60818
61099
  let prop;
60819
- if (output.type === "signal") {
61100
+ if (output.type === "signal" && output.takenOnceWhileSaving) {
61101
+ prop = guardedPressHandler(node, name2);
61102
+ } else if (output.type === "signal") {
60820
61103
  prop = () => {
60821
61104
  node.sendSignalOnOutput(name2);
60822
61105
  };
@@ -61802,9 +62085,9 @@ function createNodeFromReactComponent(def2) {
61802
62085
  getParametersForStates(states) {
61803
62086
  const params = {};
61804
62087
  if (this.variant) {
61805
- for (const state of states) {
61806
- if (this.variant.stateParameters && this.variant.stateParameters.hasOwnProperty(state)) {
61807
- mergeDeep(params, this.variant.stateParameters[state]);
62088
+ for (const state2 of states) {
62089
+ if (this.variant.stateParameters && this.variant.stateParameters.hasOwnProperty(state2)) {
62090
+ mergeDeep(params, this.variant.stateParameters[state2]);
61808
62091
  }
61809
62092
  }
61810
62093
  }
@@ -61818,9 +62101,9 @@ function createNodeFromReactComponent(def2) {
61818
62101
  }
61819
62102
  }
61820
62103
  if (this.model.stateParameters) {
61821
- for (const state of states) {
61822
- if (this.model.stateParameters.hasOwnProperty(state)) {
61823
- mergeDeep(params, this.model.stateParameters[state]);
62104
+ for (const state2 of states) {
62105
+ if (this.model.stateParameters.hasOwnProperty(state2)) {
62106
+ mergeDeep(params, this.model.stateParameters[state2]);
61824
62107
  }
61825
62108
  }
61826
62109
  }
@@ -61831,20 +62114,20 @@ function createNodeFromReactComponent(def2) {
61831
62114
  const newState = addedStates.length ? addedStates[0] : "neutral";
61832
62115
  return newState === "" ? "neutral" : newState;
61833
62116
  },
61834
- _getDefaultTransition(state) {
61835
- if (this.model.defaultStateTransitions && this.model.defaultStateTransitions[state] && this.model.defaultStateTransitions[state].curve) {
61836
- return this.model.defaultStateTransitions[state];
61837
- } else if (this.variant && this.variant.defaultStateTransitions && this.variant.defaultStateTransitions[state] && this.variant.defaultStateTransitions[state].curve) {
61838
- return this.variant.defaultStateTransitions[state];
62117
+ _getDefaultTransition(state2) {
62118
+ if (this.model.defaultStateTransitions && this.model.defaultStateTransitions[state2] && this.model.defaultStateTransitions[state2].curve) {
62119
+ return this.model.defaultStateTransitions[state2];
62120
+ } else if (this.variant && this.variant.defaultStateTransitions && this.variant.defaultStateTransitions[state2] && this.variant.defaultStateTransitions[state2].curve) {
62121
+ return this.variant.defaultStateTransitions[state2];
61839
62122
  }
61840
62123
  },
61841
- _getStateTransition(state) {
62124
+ _getStateTransition(state2) {
61842
62125
  let transitions = {};
61843
- if (this.model.stateTransitions && this.model.stateTransitions[state]) {
61844
- Object.assign(transitions, this.model.stateTransitions[state]);
62126
+ if (this.model.stateTransitions && this.model.stateTransitions[state2]) {
62127
+ Object.assign(transitions, this.model.stateTransitions[state2]);
61845
62128
  }
61846
- if (this.variant && this.variant.stateTransitions && this.variant.stateTransitions[state]) {
61847
- Object.assign(transitions, this.variant.stateTransitions[state]);
62129
+ if (this.variant && this.variant.stateTransitions && this.variant.stateTransitions[state2]) {
62130
+ Object.assign(transitions, this.variant.stateTransitions[state2]);
61848
62131
  }
61849
62132
  return transitions;
61850
62133
  },
@@ -62093,6 +62376,7 @@ var init_react_component_node = __esm({
62093
62376
  "use strict";
62094
62377
  import_react4 = __toESM(require_react());
62095
62378
  import_react_dom = __toESM(require_react_dom());
62379
+ init_pressguard();
62096
62380
  init_kit_node_boundary();
62097
62381
  init_iconSourceProblem();
62098
62382
  init_dom_boundingbox_oberver();
@@ -62328,6 +62612,7 @@ var init_button = __esm({
62328
62612
  node_shared_port_definitions_default.addShadowInputs(ButtonNode);
62329
62613
  utils_default.addControlEventsAndStates(ButtonNode);
62330
62614
  utils_default.addFocusActions(ButtonNode, { noun: "button" });
62615
+ utils_default.addTakenOnceWhileSaving(ButtonNode, { outputName: "onClick", one: "a click", press: "click" });
62331
62616
  button_default = createNodeFromReactComponent(ButtonNode);
62332
62617
  }
62333
62618
  });
@@ -65306,6 +65591,7 @@ var init_text_input = __esm({
65306
65591
  styleTag: "inputWrapper"
65307
65592
  });
65308
65593
  utils_default.addControlEventsAndStates(TextInputNode);
65594
+ utils_default.addTakenOnceWhileSaving(TextInputNode, { outputName: "onEnter", one: "Enter", press: "Enter" });
65309
65595
  TextInputModule = createNodeFromReactComponent(TextInputNode);
65310
65596
  TextInputModule.setup = function(context, graphModel) {
65311
65597
  if (!context.editorConnection || !context.editorConnection.isRunningLocally()) {
@@ -66793,9 +67079,9 @@ var init_navigation_stack = __esm({
66793
67079
  }
66794
67080
  });
66795
67081
 
66796
- // type-stub:/Users/richardosborne/vscode_projects/OpenNoodl-worktrees/own020-pack024/packages/noodl-viewer-react/src/types.ts
67082
+ // type-stub:packages/noodl-viewer-react/src/types.ts
66797
67083
  var require_types2 = __commonJS({
66798
- "type-stub:/Users/richardosborne/vscode_projects/OpenNoodl-worktrees/own020-pack024/packages/noodl-viewer-react/src/types.ts"(exports2, module2) {
67084
+ "type-stub:packages/noodl-viewer-react/src/types.ts"(exports2, module2) {
66799
67085
  var noop2 = new Proxy(function() {
66800
67086
  }, { get: () => noop2, apply: () => noop2 });
66801
67087
  module2.exports = new Proxy({}, { get: () => noop2 });
@@ -70343,9 +70629,9 @@ var init_css_definition = __esm({
70343
70629
  }
70344
70630
  });
70345
70631
 
70346
- // ../../../../OpenNoodl/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js
70632
+ // ../../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js
70347
70633
  var require_react_is_production_min = __commonJS({
70348
- "../../../../OpenNoodl/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js"(exports2) {
70634
+ "../../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js"(exports2) {
70349
70635
  "use strict";
70350
70636
  var b = "function" === typeof Symbol && Symbol.for;
70351
70637
  var c = b ? Symbol.for("react.element") : 60103;
@@ -70456,9 +70742,9 @@ var require_react_is_production_min = __commonJS({
70456
70742
  }
70457
70743
  });
70458
70744
 
70459
- // ../../../../OpenNoodl/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js
70745
+ // ../../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js
70460
70746
  var require_react_is_development = __commonJS({
70461
- "../../../../OpenNoodl/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js"(exports2) {
70747
+ "../../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js"(exports2) {
70462
70748
  "use strict";
70463
70749
  if (process.env.NODE_ENV !== "production") {
70464
70750
  (function() {
@@ -70611,9 +70897,9 @@ var require_react_is_development = __commonJS({
70611
70897
  }
70612
70898
  });
70613
70899
 
70614
- // ../../../../OpenNoodl/node_modules/prop-types/node_modules/react-is/index.js
70900
+ // ../../node_modules/prop-types/node_modules/react-is/index.js
70615
70901
  var require_react_is = __commonJS({
70616
- "../../../../OpenNoodl/node_modules/prop-types/node_modules/react-is/index.js"(exports2, module2) {
70902
+ "../../node_modules/prop-types/node_modules/react-is/index.js"(exports2, module2) {
70617
70903
  "use strict";
70618
70904
  if (process.env.NODE_ENV === "production") {
70619
70905
  module2.exports = require_react_is_production_min();
@@ -70623,9 +70909,9 @@ var require_react_is = __commonJS({
70623
70909
  }
70624
70910
  });
70625
70911
 
70626
- // ../../../../OpenNoodl/node_modules/object-assign/index.js
70912
+ // ../../node_modules/object-assign/index.js
70627
70913
  var require_object_assign = __commonJS({
70628
- "../../../../OpenNoodl/node_modules/object-assign/index.js"(exports2, module2) {
70914
+ "../../node_modules/object-assign/index.js"(exports2, module2) {
70629
70915
  "use strict";
70630
70916
  var getOwnPropertySymbols = Object.getOwnPropertySymbols;
70631
70917
  var hasOwnProperty = Object.prototype.hasOwnProperty;
@@ -70693,25 +70979,25 @@ var require_object_assign = __commonJS({
70693
70979
  }
70694
70980
  });
70695
70981
 
70696
- // ../../../../OpenNoodl/node_modules/prop-types/lib/ReactPropTypesSecret.js
70982
+ // ../../node_modules/prop-types/lib/ReactPropTypesSecret.js
70697
70983
  var require_ReactPropTypesSecret = __commonJS({
70698
- "../../../../OpenNoodl/node_modules/prop-types/lib/ReactPropTypesSecret.js"(exports2, module2) {
70984
+ "../../node_modules/prop-types/lib/ReactPropTypesSecret.js"(exports2, module2) {
70699
70985
  "use strict";
70700
70986
  var ReactPropTypesSecret = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
70701
70987
  module2.exports = ReactPropTypesSecret;
70702
70988
  }
70703
70989
  });
70704
70990
 
70705
- // ../../../../OpenNoodl/node_modules/prop-types/lib/has.js
70991
+ // ../../node_modules/prop-types/lib/has.js
70706
70992
  var require_has = __commonJS({
70707
- "../../../../OpenNoodl/node_modules/prop-types/lib/has.js"(exports2, module2) {
70993
+ "../../node_modules/prop-types/lib/has.js"(exports2, module2) {
70708
70994
  module2.exports = Function.call.bind(Object.prototype.hasOwnProperty);
70709
70995
  }
70710
70996
  });
70711
70997
 
70712
- // ../../../../OpenNoodl/node_modules/prop-types/checkPropTypes.js
70998
+ // ../../node_modules/prop-types/checkPropTypes.js
70713
70999
  var require_checkPropTypes = __commonJS({
70714
- "../../../../OpenNoodl/node_modules/prop-types/checkPropTypes.js"(exports2, module2) {
71000
+ "../../node_modules/prop-types/checkPropTypes.js"(exports2, module2) {
70715
71001
  "use strict";
70716
71002
  var printWarning = function() {
70717
71003
  };
@@ -70775,9 +71061,9 @@ var require_checkPropTypes = __commonJS({
70775
71061
  }
70776
71062
  });
70777
71063
 
70778
- // ../../../../OpenNoodl/node_modules/prop-types/factoryWithTypeCheckers.js
71064
+ // ../../node_modules/prop-types/factoryWithTypeCheckers.js
70779
71065
  var require_factoryWithTypeCheckers = __commonJS({
70780
- "../../../../OpenNoodl/node_modules/prop-types/factoryWithTypeCheckers.js"(exports2, module2) {
71066
+ "../../node_modules/prop-types/factoryWithTypeCheckers.js"(exports2, module2) {
70781
71067
  "use strict";
70782
71068
  var ReactIs = require_react_is();
70783
71069
  var assign = require_object_assign();
@@ -71218,9 +71504,9 @@ var require_factoryWithTypeCheckers = __commonJS({
71218
71504
  }
71219
71505
  });
71220
71506
 
71221
- // ../../../../OpenNoodl/node_modules/prop-types/factoryWithThrowingShims.js
71507
+ // ../../node_modules/prop-types/factoryWithThrowingShims.js
71222
71508
  var require_factoryWithThrowingShims = __commonJS({
71223
- "../../../../OpenNoodl/node_modules/prop-types/factoryWithThrowingShims.js"(exports2, module2) {
71509
+ "../../node_modules/prop-types/factoryWithThrowingShims.js"(exports2, module2) {
71224
71510
  "use strict";
71225
71511
  var ReactPropTypesSecret = require_ReactPropTypesSecret();
71226
71512
  function emptyFunction() {
@@ -71274,9 +71560,9 @@ var require_factoryWithThrowingShims = __commonJS({
71274
71560
  }
71275
71561
  });
71276
71562
 
71277
- // ../../../../OpenNoodl/node_modules/prop-types/index.js
71563
+ // ../../node_modules/prop-types/index.js
71278
71564
  var require_prop_types = __commonJS({
71279
- "../../../../OpenNoodl/node_modules/prop-types/index.js"(exports2, module2) {
71565
+ "../../node_modules/prop-types/index.js"(exports2, module2) {
71280
71566
  if (process.env.NODE_ENV !== "production") {
71281
71567
  ReactIs = require_react_is();
71282
71568
  throwOnDirectAccess = true;
@@ -71289,9 +71575,9 @@ var require_prop_types = __commonJS({
71289
71575
  }
71290
71576
  });
71291
71577
 
71292
- // ../../../../OpenNoodl/node_modules/clsx/dist/clsx.js
71578
+ // ../../node_modules/clsx/dist/clsx.js
71293
71579
  var require_clsx = __commonJS({
71294
- "../../../../OpenNoodl/node_modules/clsx/dist/clsx.js"(exports2, module2) {
71580
+ "../../node_modules/clsx/dist/clsx.js"(exports2, module2) {
71295
71581
  function r(e2) {
71296
71582
  var o, t, f = "";
71297
71583
  if ("string" == typeof e2 || "number" == typeof e2) f += e2;
@@ -71309,9 +71595,9 @@ var require_clsx = __commonJS({
71309
71595
  }
71310
71596
  });
71311
71597
 
71312
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/shims.js
71598
+ // ../../node_modules/react-draggable/build/cjs/utils/shims.js
71313
71599
  var require_shims = __commonJS({
71314
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/shims.js"(exports2) {
71600
+ "../../node_modules/react-draggable/build/cjs/utils/shims.js"(exports2) {
71315
71601
  "use strict";
71316
71602
  Object.defineProperty(exports2, "__esModule", {
71317
71603
  value: true
@@ -71343,9 +71629,9 @@ var require_shims = __commonJS({
71343
71629
  }
71344
71630
  });
71345
71631
 
71346
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/getPrefix.js
71632
+ // ../../node_modules/react-draggable/build/cjs/utils/getPrefix.js
71347
71633
  var require_getPrefix = __commonJS({
71348
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/getPrefix.js"(exports2) {
71634
+ "../../node_modules/react-draggable/build/cjs/utils/getPrefix.js"(exports2) {
71349
71635
  "use strict";
71350
71636
  Object.defineProperty(exports2, "__esModule", {
71351
71637
  value: true
@@ -71391,9 +71677,9 @@ var require_getPrefix = __commonJS({
71391
71677
  }
71392
71678
  });
71393
71679
 
71394
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/domFns.js
71680
+ // ../../node_modules/react-draggable/build/cjs/utils/domFns.js
71395
71681
  var require_domFns = __commonJS({
71396
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/domFns.js"(exports2) {
71682
+ "../../node_modules/react-draggable/build/cjs/utils/domFns.js"(exports2) {
71397
71683
  "use strict";
71398
71684
  Object.defineProperty(exports2, "__esModule", {
71399
71685
  value: true
@@ -71606,9 +71892,9 @@ var require_domFns = __commonJS({
71606
71892
  }
71607
71893
  });
71608
71894
 
71609
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/positionFns.js
71895
+ // ../../node_modules/react-draggable/build/cjs/utils/positionFns.js
71610
71896
  var require_positionFns = __commonJS({
71611
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/positionFns.js"(exports2) {
71897
+ "../../node_modules/react-draggable/build/cjs/utils/positionFns.js"(exports2) {
71612
71898
  "use strict";
71613
71899
  Object.defineProperty(exports2, "__esModule", {
71614
71900
  value: true
@@ -71733,9 +72019,9 @@ var require_positionFns = __commonJS({
71733
72019
  }
71734
72020
  });
71735
72021
 
71736
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/log.js
72022
+ // ../../node_modules/react-draggable/build/cjs/utils/log.js
71737
72023
  var require_log2 = __commonJS({
71738
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/utils/log.js"(exports2) {
72024
+ "../../node_modules/react-draggable/build/cjs/utils/log.js"(exports2) {
71739
72025
  "use strict";
71740
72026
  Object.defineProperty(exports2, "__esModule", {
71741
72027
  value: true
@@ -71747,9 +72033,9 @@ var require_log2 = __commonJS({
71747
72033
  }
71748
72034
  });
71749
72035
 
71750
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/DraggableCore.js
72036
+ // ../../node_modules/react-draggable/build/cjs/DraggableCore.js
71751
72037
  var require_DraggableCore = __commonJS({
71752
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/DraggableCore.js"(exports2) {
72038
+ "../../node_modules/react-draggable/build/cjs/DraggableCore.js"(exports2) {
71753
72039
  "use strict";
71754
72040
  Object.defineProperty(exports2, "__esModule", {
71755
72041
  value: true
@@ -72125,9 +72411,9 @@ var require_DraggableCore = __commonJS({
72125
72411
  }
72126
72412
  });
72127
72413
 
72128
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/Draggable.js
72414
+ // ../../node_modules/react-draggable/build/cjs/Draggable.js
72129
72415
  var require_Draggable = __commonJS({
72130
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/Draggable.js"(exports2) {
72416
+ "../../node_modules/react-draggable/build/cjs/Draggable.js"(exports2) {
72131
72417
  "use strict";
72132
72418
  Object.defineProperty(exports2, "__esModule", {
72133
72419
  value: true
@@ -72493,9 +72779,9 @@ var require_Draggable = __commonJS({
72493
72779
  }
72494
72780
  });
72495
72781
 
72496
- // ../../../../OpenNoodl/node_modules/react-draggable/build/cjs/cjs.js
72782
+ // ../../node_modules/react-draggable/build/cjs/cjs.js
72497
72783
  var require_cjs = __commonJS({
72498
- "../../../../OpenNoodl/node_modules/react-draggable/build/cjs/cjs.js"(exports2, module2) {
72784
+ "../../node_modules/react-draggable/build/cjs/cjs.js"(exports2, module2) {
72499
72785
  "use strict";
72500
72786
  var {
72501
72787
  default: Draggable2,
@@ -72970,9 +73256,9 @@ var init_drag = __esm({
72970
73256
  }
72971
73257
  });
72972
73258
 
72973
- // ../../../../OpenNoodl/node_modules/@better-scroll/core/dist/core.js
73259
+ // ../../node_modules/@better-scroll/core/dist/core.js
72974
73260
  var require_core3 = __commonJS({
72975
- "../../../../OpenNoodl/node_modules/@better-scroll/core/dist/core.js"(exports2, module2) {
73261
+ "../../node_modules/@better-scroll/core/dist/core.js"(exports2, module2) {
72976
73262
  (function(global2, factory) {
72977
73263
  typeof exports2 === "object" && typeof module2 !== "undefined" ? factory(exports2) : typeof define === "function" && define.amd ? define(["exports"], factory) : (global2 = typeof globalThis !== "undefined" ? globalThis : global2 || self, factory(global2.BScroll = {}));
72978
73264
  })(exports2, (function(exports3) {
@@ -75318,9 +75604,9 @@ var require_core3 = __commonJS({
75318
75604
  }
75319
75605
  });
75320
75606
 
75321
- // ../../../../OpenNoodl/node_modules/@better-scroll/mouse-wheel/dist/mouse-wheel.min.js
75607
+ // ../../node_modules/@better-scroll/mouse-wheel/dist/mouse-wheel.min.js
75322
75608
  var require_mouse_wheel_min = __commonJS({
75323
- "../../../../OpenNoodl/node_modules/@better-scroll/mouse-wheel/dist/mouse-wheel.min.js"(exports2, module2) {
75609
+ "../../node_modules/@better-scroll/mouse-wheel/dist/mouse-wheel.min.js"(exports2, module2) {
75324
75610
  !(function(e, t) {
75325
75611
  "object" == typeof exports2 && "undefined" != typeof module2 ? module2.exports = t() : "function" == typeof define && define.amd ? define(t) : (e = "undefined" != typeof globalThis ? globalThis : e || self).MouseWheel = t();
75326
75612
  })(exports2, function() {
@@ -75452,9 +75738,9 @@ var require_mouse_wheel_min = __commonJS({
75452
75738
  }
75453
75739
  });
75454
75740
 
75455
- // ../../../../OpenNoodl/node_modules/@better-scroll/scroll-bar/dist/scroll-bar.min.js
75741
+ // ../../node_modules/@better-scroll/scroll-bar/dist/scroll-bar.min.js
75456
75742
  var require_scroll_bar_min = __commonJS({
75457
- "../../../../OpenNoodl/node_modules/@better-scroll/scroll-bar/dist/scroll-bar.min.js"(exports2, module2) {
75743
+ "../../node_modules/@better-scroll/scroll-bar/dist/scroll-bar.min.js"(exports2, module2) {
75458
75744
  !(function(t, e) {
75459
75745
  "object" == typeof exports2 && "undefined" != typeof module2 ? module2.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).ScrollBar = e();
75460
75746
  })(exports2, function() {
@@ -83295,15 +83581,15 @@ function updatePorts3(nodeId, parameters, editorConnection) {
83295
83581
  });
83296
83582
  }
83297
83583
  states = states ? states.split(",") : void 0;
83298
- states && states.forEach(function(state) {
83584
+ states && states.forEach(function(state2) {
83299
83585
  values && values.forEach(function(value2) {
83300
83586
  ports.push({
83301
83587
  plug: "input",
83302
83588
  type: parameters["type-" + value2] || "number",
83303
- group: state + " Values",
83304
- name: "value-" + state + "-" + value2,
83589
+ group: state2 + " Values",
83590
+ name: "value-" + state2 + "-" + value2,
83305
83591
  displayName: value2,
83306
- editorName: state + "|" + value2
83592
+ editorName: state2 + "|" + value2
83307
83593
  });
83308
83594
  });
83309
83595
  if (values && parameters["useTransitions"] !== false) {
@@ -83312,23 +83598,23 @@ function updatePorts3(nodeId, parameters, editorConnection) {
83312
83598
  type: "curve",
83313
83599
  displayName: "Default",
83314
83600
  default: { curve: [0, 0, 0.58, 1], dur: 300, delay: 0 },
83315
- group: state + " Transitions",
83316
- name: "transitiondef-" + state
83601
+ group: state2 + " Transitions",
83602
+ name: "transitiondef-" + state2
83317
83603
  });
83318
83604
  values.forEach(function(value2) {
83319
83605
  if (parameters["type-" + value2] === void 0 || parameters["type-" + value2] === "number" || parameters["type-" + value2] === "color") {
83320
83606
  ports.push({
83321
83607
  plug: "input",
83322
83608
  type: { name: "curve" },
83323
- default: parameters["transitiondef-" + state] || {
83609
+ default: parameters["transitiondef-" + state2] || {
83324
83610
  curve: [0, 0, 0.58, 1],
83325
83611
  dur: 300,
83326
83612
  delay: 0
83327
83613
  },
83328
- group: state + " Transitions",
83329
- name: "transition-" + state + "-" + value2,
83614
+ group: state2 + " Transitions",
83615
+ name: "transition-" + state2 + "-" + value2,
83330
83616
  displayName: value2,
83331
- editorName: "Transition " + state + "|" + value2
83617
+ editorName: "Transition " + state2 + "|" + value2
83332
83618
  });
83333
83619
  }
83334
83620
  });
@@ -83336,22 +83622,22 @@ function updatePorts3(nodeId, parameters, editorConnection) {
83336
83622
  ports.push({
83337
83623
  plug: "input",
83338
83624
  type: { name: "signal", allowConnectionsOnly: true },
83339
- displayName: "To " + state,
83340
- name: "to-" + state,
83625
+ displayName: "To " + state2,
83626
+ name: "to-" + state2,
83341
83627
  group: "Go to state"
83342
83628
  });
83343
83629
  ports.push({
83344
83630
  plug: "output",
83345
83631
  type: "boolean",
83346
- displayName: "At " + state,
83347
- name: "at-" + state,
83632
+ displayName: "At " + state2,
83633
+ name: "at-" + state2,
83348
83634
  group: "Current state"
83349
83635
  });
83350
83636
  ports.push({
83351
83637
  plug: "output",
83352
83638
  type: "signal",
83353
- displayName: "Has Reached " + state,
83354
- name: "reached-" + state,
83639
+ displayName: "Has Reached " + state2,
83640
+ name: "reached-" + state2,
83355
83641
  group: "Current state"
83356
83642
  });
83357
83643
  });
@@ -83778,20 +84064,20 @@ var init_states = __esm({
83778
84064
  { port, transition: transition2 }
83779
84065
  );
83780
84066
  },
83781
- jumpToState: function(state) {
84067
+ jumpToState: function(state2) {
83782
84068
  const internal2 = this._internal;
83783
84069
  if (!internal2.states) return;
83784
- if (!state) state = internal2.states[0];
83785
- if (internal2.state === state) return;
84070
+ if (!state2) state2 = internal2.states[0];
84071
+ if (internal2.state === state2) return;
83786
84072
  internal2.animation.stop();
83787
- const prefix = "value-" + state + "-";
84073
+ const prefix = "value-" + state2 + "-";
83788
84074
  for (const i2 in internal2.values) {
83789
84075
  const v = internal2.values[i2];
83790
84076
  const typed = typedStateValue(internal2.stateParameterTypes["type-" + v], internal2.stateParameters[prefix + v]);
83791
84077
  internal2.currentValues[v] = typed ? typed.value : internal2.stateParameters[prefix + v] || 0;
83792
84078
  this.flagOutputDirty(v);
83793
84079
  }
83794
- internal2.state = state;
84080
+ internal2.state = state2;
83795
84081
  this.flagOutputDirty("currentState");
83796
84082
  if (internal2.valuesAreInitialised) {
83797
84083
  this.sendSignalOnOutput("stateChanged");
@@ -83822,21 +84108,21 @@ var init_states = __esm({
83822
84108
  this.flagOutputDirty("error");
83823
84109
  this.reportOutcome(token, "failure", { code: "states/no-states", message });
83824
84110
  },
83825
- scheduleGoToState: function(state, token) {
84111
+ scheduleGoToState: function(state2, token) {
83826
84112
  const _this = this;
83827
84113
  const internal2 = this._internal;
83828
- if (state && internal2.states && internal2.states.indexOf(state) !== -1) {
84114
+ if (state2 && internal2.states && internal2.states.indexOf(state2) !== -1) {
83829
84115
  this.setDiagnostic(UNKNOWN_STATE_CODE, null);
83830
84116
  }
83831
84117
  if (!internal2.goToStateQueue) internal2.goToStateQueue = [];
83832
84118
  const queue = internal2.goToStateQueue;
83833
84119
  const pendingTarget = queue.length > 0 ? queue[queue.length - 1].state : internal2.state;
83834
- if (state && pendingTarget === state) {
84120
+ if (state2 && pendingTarget === state2) {
83835
84121
  if (token) this.reportOutcome(token, "unchanged");
83836
84122
  return;
83837
84123
  }
83838
- queue.push({ state, token });
83839
- this._internal.goToState = state;
84124
+ queue.push({ state: state2, token });
84125
+ this._internal.goToState = state2;
83840
84126
  if (this.hasScheduledGoToState) return;
83841
84127
  this.hasScheduledGoToState = true;
83842
84128
  this.scheduleAfterInputsHaveUpdated(function() {
@@ -83855,36 +84141,36 @@ var init_states = __esm({
83855
84141
  * has necessarily been set. Guarding here also means the queue is unaffected — a rejected
83856
84142
  * state leaves `internal.state` alone, so a later request for a real state still works.
83857
84143
  */
83858
- _failUnknownState: function(state, token) {
84144
+ _failUnknownState: function(state2, token) {
83859
84145
  const states = this._internal.states || [];
83860
- const suggestion = nearestName(state, states);
83861
- const message = 'Cannot go to state "' + state + '" \u2014 this node has no such state. Its states are: ' + (states.length > 0 ? states.join(", ") : "(none defined)") + "." + (suggestion ? ' Did you mean "' + suggestion + '"?' : "");
84146
+ const suggestion = nearestName(state2, states);
84147
+ const message = 'Cannot go to state "' + state2 + '" \u2014 this node has no such state. Its states are: ' + (states.length > 0 ? states.join(", ") : "(none defined)") + "." + (suggestion ? ' Did you mean "' + suggestion + '"?' : "");
83862
84148
  this._internal.error = message;
83863
84149
  this.flagOutputDirty("error");
83864
- this.raiseRuntimeError(UNKNOWN_STATE_CODE, message, { requested: state, states: states.slice() });
84150
+ this.raiseRuntimeError(UNKNOWN_STATE_CODE, message, { requested: state2, states: states.slice() });
83865
84151
  if (token) {
83866
84152
  this.reportOutcome(token, "failure", { code: UNKNOWN_STATE_CODE, message, raise: false });
83867
84153
  } else {
83868
84154
  this.sendSignalOnOutput("failure");
83869
84155
  }
83870
84156
  },
83871
- goToState: function(state, settleImmediately, token) {
84157
+ goToState: function(state2, settleImmediately, token) {
83872
84158
  const internal2 = this._internal;
83873
84159
  if (!internal2.states) {
83874
84160
  if (token) this._failNoStates(token);
83875
84161
  return;
83876
84162
  }
83877
- if (!state) state = internal2.states[0];
83878
- if (internal2.state === state) {
84163
+ if (!state2) state2 = internal2.states[0];
84164
+ if (internal2.state === state2) {
83879
84165
  if (token) this.reportOutcome(token, "unchanged");
83880
84166
  return;
83881
84167
  }
83882
- if (internal2.states.indexOf(state) === -1) {
83883
- this._failUnknownState(state, token);
84168
+ if (internal2.states.indexOf(state2) === -1) {
84169
+ this._failUnknownState(state2, token);
83884
84170
  return;
83885
84171
  }
83886
84172
  if (!internal2.valuesAreInitialised) {
83887
- this.jumpToState(state);
84173
+ this.jumpToState(state2);
83888
84174
  if (token) this.reportOutcome(token, "done");
83889
84175
  } else {
83890
84176
  internal2.animation.stop();
@@ -83896,14 +84182,14 @@ var init_states = __esm({
83896
84182
  internal2.startValues[v] = internal2.currentValues[v];
83897
84183
  const typed = typedStateValue(
83898
84184
  internal2.stateParameterTypes["type-" + v],
83899
- internal2.stateParameters["value-" + state + "-" + v]
84185
+ internal2.stateParameters["value-" + state2 + "-" + v]
83900
84186
  );
83901
84187
  if (typed) {
83902
84188
  internal2.currentValues[v] = typed.value;
83903
84189
  this.flagOutputDirty(v);
83904
84190
  } else {
83905
- const ownPort = "transition-" + state + "-" + v;
83906
- const defaultPort = "transitiondef-" + state;
84191
+ const ownPort = "transition-" + state2 + "-" + v;
84192
+ const defaultPort = "transitiondef-" + state2;
83907
84193
  let transitionCurve = internal2.stateParameters[ownPort];
83908
84194
  let fromPort = ownPort;
83909
84195
  if (!transitionCurve) {
@@ -83919,7 +84205,7 @@ var init_states = __esm({
83919
84205
  transitionCurve = fromPort === ownPort && stateDefault && (setsAtOnce(stateDefault) || curveAccepted(stateDefault.curve)) ? stateDefault : DEFAULT_TRANSITION;
83920
84206
  }
83921
84207
  if (setsAtOnce(transitionCurve)) {
83922
- internal2.currentValues[v] = internal2.stateParameters["value-" + state + "-" + v];
84208
+ internal2.currentValues[v] = internal2.stateParameters["value-" + state2 + "-" + v];
83923
84209
  this.flagOutputDirty(v);
83924
84210
  } else {
83925
84211
  internal2.transitionFuncs[v] = (0, import_bezier_easing4.default)(transitionCurve.curve);
@@ -83935,7 +84221,7 @@ var init_states = __esm({
83935
84221
  internal2.animation.delay = delay;
83936
84222
  internal2.animation.start();
83937
84223
  }
83938
- internal2.state = state;
84224
+ internal2.state = state2;
83939
84225
  this.flagOutputDirty("currentState");
83940
84226
  this.sendSignalOnOutput("stateChanged");
83941
84227
  this.updateAtStatePorts();
@@ -89280,7 +89566,7 @@ var init_userservice = __esm({
89280
89566
  if (adapter.getCurrentUser(this._defaultHandle()) === void 0) delete this.current;
89281
89567
  this.events.emit("sessionLost");
89282
89568
  });
89283
- adapter.events.on("oauthReturn", (state) => this.events.emit("oauthReturn", state));
89569
+ adapter.events.on("oauthReturn", (state2) => this.events.emit("oauthReturn", state2));
89284
89570
  }
89285
89571
  /**
89286
89572
  * BAK-004: the state of a sign-in returning from a provider or a magic link.
@@ -90356,7 +90642,7 @@ var init_signinwith = __esm({
90356
90642
  initialize() {
90357
90643
  this._internal.signingIn = false;
90358
90644
  const service = userservice_default.instance;
90359
- service.on("oauthReturn", (state) => this.applyReturn(state));
90645
+ service.on("oauthReturn", (state2) => this.applyReturn(state2));
90360
90646
  if (service.oauthReturn && (service.oauthReturn.inProgress || service.oauthReturn.succeeded !== void 0)) {
90361
90647
  this.applyReturn(service.oauthReturn);
90362
90648
  }
@@ -90471,8 +90757,8 @@ var init_signinwith = __esm({
90471
90757
  * no token is minted for it. Minting one there would leave it open when the real answer
90472
90758
  * arrived and the second report would raise `outcome/duplicate`.
90473
90759
  */
90474
- applyReturn(state) {
90475
- if (state.inProgress) {
90760
+ applyReturn(state2) {
90761
+ if (state2.inProgress) {
90476
90762
  this._internal.signingIn = true;
90477
90763
  this.flagOutputDirty("signingIn");
90478
90764
  return;
@@ -90482,15 +90768,15 @@ var init_signinwith = __esm({
90482
90768
  this._internal.signingIn = false;
90483
90769
  this.flagOutputDirty("signingIn");
90484
90770
  const tokens = [this.beginOutcome()];
90485
- if (state.succeeded) {
90486
- this._internal.notice = state.notice;
90771
+ if (state2.succeeded) {
90772
+ this._internal.notice = state2.notice;
90487
90773
  this._internal.error = void 0;
90488
90774
  this.flagOutputDirty("notice");
90489
90775
  this.flagOutputDirty("error");
90490
90776
  reportOutcomes(this, tokens, "done");
90491
90777
  return;
90492
90778
  }
90493
- this.setError(state.error || "Sign-in could not be completed.", tokens);
90779
+ this.setError(state2.error || "Sign-in could not be completed.", tokens);
90494
90780
  },
90495
90781
  /**
90496
90782
  * The launcher half — hand over to the provider, which navigates the browser away.
@@ -93388,9 +93674,9 @@ var init_transition2 = __esm({
93388
93674
  }
93389
93675
  });
93390
93676
 
93391
- // ../../../../OpenNoodl/node_modules/lodash.isequal/index.js
93677
+ // ../../node_modules/lodash.isequal/index.js
93392
93678
  var require_lodash2 = __commonJS({
93393
- "../../../../OpenNoodl/node_modules/lodash.isequal/index.js"(exports2, module2) {
93679
+ "../../node_modules/lodash.isequal/index.js"(exports2, module2) {
93394
93680
  var LARGE_ARRAY_SIZE = 200;
93395
93681
  var HASH_UNDEFINED = "__lodash_hash_undefined__";
93396
93682
  var COMPARE_PARTIAL_FLAG = 1;