unframer 2.22.0 → 2.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/framer.js CHANGED
@@ -10015,7 +10015,7 @@ function steps(numSteps, direction = 'end') {
10015
10015
  return clamp(0, 1, rounded / numSteps);
10016
10016
  };
10017
10017
  }
10018
- // /:https://app.framerstatic.com/framer.WEKEHMWW.mjs
10018
+ // /:https://app.framerstatic.com/framer.VDKYGJXW.mjs
10019
10019
  const react_11 = __importDefault(require("react"));
10020
10020
  const react_12 = require("react");
10021
10021
  const react_13 = require("react");
@@ -13122,7 +13122,7 @@ var MarkSuspenseEffects = {
13122
13122
  function renderPage(Page4, defaultPageStyle) {
13123
13123
  const props = {
13124
13124
  style: defaultPageStyle,
13125
- 'data-framer-root': true,
13125
+ 'data-framer-root': '',
13126
13126
  };
13127
13127
  return react_11.default.isValidElement(Page4) ? react_11.default.cloneElement(Page4, props) : react_11.default.createElement(Page4, props);
13128
13128
  }
@@ -30444,26 +30444,36 @@ var CustomCursorContext = /* @__PURE__ */ (0, react_1.createContext)({
30444
30444
  });
30445
30445
  var replaceCursorClassName = 'framer-cursor-none';
30446
30446
  var cursorComponentClassName = 'framer-pointer-events-none';
30447
+ function getActiveDefinitions(map2, previousDefinitions, newDefinitions) {
30448
+ const allCursors = {};
30449
+ for (const [, hashes,] of map2) {
30450
+ for (const hash2 of hashes) {
30451
+ const value = allCursors[hash2] ?? previousDefinitions[hash2] ?? newDefinitions[hash2];
30452
+ if (value)
30453
+ allCursors[hash2] = value;
30454
+ }
30455
+ }
30456
+ return allCursors;
30457
+ }
30447
30458
  var CustomCursorContextProvider = /* @__PURE__ */ (0, react_13.memo)(function CustomCursorList({ children, }) {
30448
30459
  const value = useConstant2(() => {
30449
30460
  const events = /* @__PURE__ */ new Set();
30450
30461
  let allCursors = {};
30462
+ const byCaller = /* @__PURE__ */ new Map();
30451
30463
  return {
30452
30464
  onRegisterCursors: (callback) => {
30453
30465
  callback(allCursors);
30454
30466
  events.add(callback);
30455
30467
  return () => events.delete(callback);
30456
30468
  },
30457
- registerCursors: (cursors) => {
30458
- const nextCursors = {};
30459
- for (const key7 in cursors) {
30460
- const cursor = allCursors[key7] ?? cursors[key7];
30461
- if (cursor)
30462
- nextCursors[key7] = cursor;
30463
- }
30464
- allCursors = nextCursors;
30469
+ registerCursors: (cursors, id3) => {
30470
+ byCaller.set(id3, Object.keys(cursors));
30471
+ allCursors = getActiveDefinitions(byCaller, allCursors, cursors);
30465
30472
  for (const callback of events)
30466
30473
  callback(allCursors);
30474
+ return () => {
30475
+ byCaller.delete(id3);
30476
+ };
30467
30477
  },
30468
30478
  };
30469
30479
  });
@@ -30712,9 +30722,10 @@ var CustomCursorComponent = /* @__PURE__ */ (0, react_13.memo)(function CustomCu
30712
30722
  function useCustomCursors(webPageCursors) {
30713
30723
  const { registerCursors, } = (0, react_2.useContext)(CustomCursorContext);
30714
30724
  const cursors = useConstant2(() => webPageCursors);
30725
+ const id3 = (0, react_2.useId)();
30715
30726
  (0, react_3.useLayoutEffect)(() => {
30716
- registerCursors(cursors);
30717
- }, [registerCursors,]);
30727
+ return registerCursors(cursors, id3);
30728
+ }, [registerCursors, id3,]);
30718
30729
  }
30719
30730
  var Polygon = {
30720
30731
  /**
@@ -33791,6 +33802,22 @@ var CompatibilityDatabaseCollection = class {
33791
33802
  return Number(left.pointer) - Number(right.pointer);
33792
33803
  }
33793
33804
  };
33805
+ function compareArray(left, right, collation11) {
33806
+ const leftLength = left.value.length;
33807
+ const rightLength = right.value.length;
33808
+ if (leftLength < rightLength)
33809
+ return -1;
33810
+ if (leftLength > rightLength)
33811
+ return 1;
33812
+ for (let i = 0; i < leftLength; i++) {
33813
+ const leftItem = left.value[i];
33814
+ const rightItem = right.value[i];
33815
+ const result = compare(leftItem, rightItem, collation11);
33816
+ if (result !== 0)
33817
+ return result;
33818
+ }
33819
+ return 0;
33820
+ }
33794
33821
  function castArray(value, definition) {
33795
33822
  switch (value == null ? void 0 : value.type) {
33796
33823
  case 'array': {
@@ -33805,6 +33832,13 @@ function castArray(value, definition) {
33805
33832
  }
33806
33833
  return null;
33807
33834
  }
33835
+ function compareBoolean(left, right) {
33836
+ if (left.value < right.value)
33837
+ return -1;
33838
+ if (left.value > right.value)
33839
+ return 1;
33840
+ return 0;
33841
+ }
33808
33842
  function castBoolean(value) {
33809
33843
  switch (value == null ? void 0 : value.type) {
33810
33844
  case 'boolean': {
@@ -33820,10 +33854,17 @@ function castBoolean(value) {
33820
33854
  }
33821
33855
  return null;
33822
33856
  }
33823
- function toBoolean(value) {
33857
+ function valueToBoolean(value) {
33824
33858
  const cast = castBoolean(value);
33825
33859
  return (cast == null ? void 0 : cast.value) ?? false;
33826
33860
  }
33861
+ function compareColor(left, right) {
33862
+ if (left.value < right.value)
33863
+ return -1;
33864
+ if (left.value > right.value)
33865
+ return 1;
33866
+ return 0;
33867
+ }
33827
33868
  function castColor(value) {
33828
33869
  switch (value == null ? void 0 : value.type) {
33829
33870
  case 'color': {
@@ -33832,6 +33873,15 @@ function castColor(value) {
33832
33873
  }
33833
33874
  return null;
33834
33875
  }
33876
+ function compareDate(left, right) {
33877
+ const leftDate = new Date(left.value);
33878
+ const rightDate = new Date(right.value);
33879
+ if (leftDate < rightDate)
33880
+ return -1;
33881
+ if (leftDate > rightDate)
33882
+ return 1;
33883
+ return 0;
33884
+ }
33835
33885
  function castDate(value) {
33836
33886
  switch (value == null ? void 0 : value.type) {
33837
33887
  case 'date': {
@@ -33851,6 +33901,13 @@ function castDate(value) {
33851
33901
  }
33852
33902
  return null;
33853
33903
  }
33904
+ function compareEnum(left, right) {
33905
+ if (left.value < right.value)
33906
+ return -1;
33907
+ if (left.value > right.value)
33908
+ return 1;
33909
+ return 0;
33910
+ }
33854
33911
  function castEnum(value) {
33855
33912
  switch (value == null ? void 0 : value.type) {
33856
33913
  case 'enum': {
@@ -33865,6 +33922,13 @@ function castEnum(value) {
33865
33922
  }
33866
33923
  return null;
33867
33924
  }
33925
+ function compareFile(left, right) {
33926
+ if (left.value < right.value)
33927
+ return -1;
33928
+ if (left.value > right.value)
33929
+ return 1;
33930
+ return 0;
33931
+ }
33868
33932
  function castFile(value) {
33869
33933
  switch (value == null ? void 0 : value.type) {
33870
33934
  case 'file': {
@@ -33873,6 +33937,15 @@ function castFile(value) {
33873
33937
  }
33874
33938
  return null;
33875
33939
  }
33940
+ function compareLink(left, right) {
33941
+ const leftEncoded = JSON.stringify(left.value);
33942
+ const rightEncoded = JSON.stringify(right.value);
33943
+ if (leftEncoded < rightEncoded)
33944
+ return -1;
33945
+ if (leftEncoded > rightEncoded)
33946
+ return 1;
33947
+ return 0;
33948
+ }
33876
33949
  function castLink(value) {
33877
33950
  switch (value == null ? void 0 : value.type) {
33878
33951
  case 'link': {
@@ -33896,6 +33969,13 @@ function castLink(value) {
33896
33969
  }
33897
33970
  return null;
33898
33971
  }
33972
+ function compareNumber(left, right) {
33973
+ if (left.value < right.value)
33974
+ return -1;
33975
+ if (left.value > right.value)
33976
+ return 1;
33977
+ return 0;
33978
+ }
33899
33979
  function castNumber(value) {
33900
33980
  switch (value == null ? void 0 : value.type) {
33901
33981
  case 'number':
@@ -33912,10 +33992,32 @@ function castNumber(value) {
33912
33992
  }
33913
33993
  return null;
33914
33994
  }
33915
- function toNumber2(value) {
33995
+ function valueToNumber(value) {
33916
33996
  const cast = castNumber(value);
33917
33997
  return (cast == null ? void 0 : cast.value) ?? null;
33918
33998
  }
33999
+ function compareObject(left, right, collation11) {
34000
+ const leftKeys = Object.keys(left.value).sort();
34001
+ const rightKeys = Object.keys(right.value).sort();
34002
+ if (leftKeys.length < rightKeys.length)
34003
+ return -1;
34004
+ if (leftKeys.length > rightKeys.length)
34005
+ return 1;
34006
+ for (let i = 0; i < leftKeys.length; i++) {
34007
+ const leftKey = leftKeys[i];
34008
+ const rightKey = rightKeys[i];
34009
+ if (leftKey < rightKey)
34010
+ return -1;
34011
+ if (leftKey > rightKey)
34012
+ return 1;
34013
+ const leftValue = left.value[leftKey] ?? null;
34014
+ const rightValue = right.value[rightKey] ?? null;
34015
+ const result = compare(leftValue, rightValue, collation11);
34016
+ if (result !== 0)
34017
+ return result;
34018
+ }
34019
+ return 0;
34020
+ }
33919
34021
  function castObject(value, definition) {
33920
34022
  switch (value == null ? void 0 : value.type) {
33921
34023
  case 'object': {
@@ -33933,6 +34035,15 @@ function castObject(value, definition) {
33933
34035
  }
33934
34036
  return null;
33935
34037
  }
34038
+ function compareResponsiveImage(left, right) {
34039
+ const leftEncoded = JSON.stringify(left.value);
34040
+ const rightEncoded = JSON.stringify(right.value);
34041
+ if (leftEncoded < rightEncoded)
34042
+ return -1;
34043
+ if (leftEncoded > rightEncoded)
34044
+ return 1;
34045
+ return 0;
34046
+ }
33936
34047
  function castResponsiveImage(value) {
33937
34048
  switch (value == null ? void 0 : value.type) {
33938
34049
  case 'responsiveimage': {
@@ -33941,6 +34052,15 @@ function castResponsiveImage(value) {
33941
34052
  }
33942
34053
  return null;
33943
34054
  }
34055
+ function compareRichText(left, right) {
34056
+ const leftValue = left.value;
34057
+ const rightValue = right.value;
34058
+ if (leftValue < rightValue)
34059
+ return -1;
34060
+ if (leftValue > rightValue)
34061
+ return 1;
34062
+ return 0;
34063
+ }
33944
34064
  function castRichText(value) {
33945
34065
  switch (value == null ? void 0 : value.type) {
33946
34066
  case 'richtext': {
@@ -33949,6 +34069,19 @@ function castRichText(value) {
33949
34069
  }
33950
34070
  return null;
33951
34071
  }
34072
+ function compareString(left, right, collation11) {
34073
+ let leftValue = left.value;
34074
+ let rightValue = right.value;
34075
+ if (collation11.type === 0) {
34076
+ leftValue = left.value.toLowerCase();
34077
+ rightValue = right.value.toLowerCase();
34078
+ }
34079
+ if (leftValue < rightValue)
34080
+ return -1;
34081
+ if (leftValue > rightValue)
34082
+ return 1;
34083
+ return 0;
34084
+ }
33952
34085
  function castString(value) {
33953
34086
  switch (value == null ? void 0 : value.type) {
33954
34087
  case 'string': {
@@ -33963,7 +34096,7 @@ function castString(value) {
33963
34096
  }
33964
34097
  return null;
33965
34098
  }
33966
- function toString(value) {
34099
+ function valueToString(value) {
33967
34100
  const cast = castString(value);
33968
34101
  return (cast == null ? void 0 : cast.value) ?? null;
33969
34102
  }
@@ -34113,8 +34246,8 @@ var DatabaseValue = {
34113
34246
  });
34114
34247
  },
34115
34248
  contains(source, target, collation11) {
34116
- let sourceValue = toString(source);
34117
- let targetValue = toString(target);
34249
+ let sourceValue = valueToString(source);
34250
+ let targetValue = valueToString(target);
34118
34251
  if (isNull(sourceValue))
34119
34252
  return false;
34120
34253
  if (isNull(targetValue))
@@ -34126,8 +34259,8 @@ var DatabaseValue = {
34126
34259
  return sourceValue.includes(targetValue);
34127
34260
  },
34128
34261
  startsWith(source, target, collation11) {
34129
- let sourceValue = toString(source);
34130
- let targetValue = toString(target);
34262
+ let sourceValue = valueToString(source);
34263
+ let targetValue = valueToString(target);
34131
34264
  if (isNull(sourceValue))
34132
34265
  return false;
34133
34266
  if (isNull(targetValue))
@@ -34139,8 +34272,8 @@ var DatabaseValue = {
34139
34272
  return sourceValue.startsWith(targetValue);
34140
34273
  },
34141
34274
  endsWith(source, target, collation11) {
34142
- let sourceValue = toString(source);
34143
- let targetValue = toString(target);
34275
+ let sourceValue = valueToString(source);
34276
+ let targetValue = valueToString(target);
34144
34277
  if (isNull(sourceValue))
34145
34278
  return false;
34146
34279
  if (isNull(targetValue))
@@ -34199,143 +34332,51 @@ function compare(left, right, collation11) {
34199
34332
  switch (left.type) {
34200
34333
  case 'array': {
34201
34334
  assert(left.type === right.type);
34202
- const leftLength = left.value.length;
34203
- const rightLength = right.value.length;
34204
- if (leftLength < rightLength)
34205
- return -1;
34206
- if (leftLength > rightLength)
34207
- return 1;
34208
- for (let i = 0; i < leftLength; i++) {
34209
- const leftItem = left.value[i];
34210
- const rightItem = right.value[i];
34211
- assert(!isUndefined(leftItem), 'Left item must exist');
34212
- assert(!isUndefined(rightItem), 'Right item must exist');
34213
- const result = compare(leftItem, rightItem, collation11);
34214
- if (result !== 0)
34215
- return result;
34216
- }
34217
- return 0;
34335
+ return compareArray(left, right, collation11);
34218
34336
  }
34219
34337
  case 'boolean': {
34220
34338
  assert(left.type === right.type);
34221
- if (left.value < right.value)
34222
- return -1;
34223
- if (left.value > right.value)
34224
- return 1;
34225
- return 0;
34339
+ return compareBoolean(left, right);
34226
34340
  }
34227
34341
  case 'color': {
34228
34342
  assert(left.type === right.type);
34229
- if (left.value < right.value)
34230
- return -1;
34231
- if (left.value > right.value)
34232
- return 1;
34233
- return 0;
34343
+ return compareColor(left, right);
34234
34344
  }
34235
34345
  case 'date': {
34236
34346
  assert(left.type === right.type);
34237
- const leftDate = new Date(left.value);
34238
- const rightDate = new Date(right.value);
34239
- if (leftDate < rightDate)
34240
- return -1;
34241
- if (leftDate > rightDate)
34242
- return 1;
34243
- return 0;
34347
+ return compareDate(left, right);
34244
34348
  }
34245
34349
  case 'enum': {
34246
34350
  assert(left.type === right.type);
34247
- if (left.value < right.value)
34248
- return -1;
34249
- if (left.value > right.value)
34250
- return 1;
34251
- return 0;
34351
+ return compareEnum(left, right);
34252
34352
  }
34253
34353
  case 'file': {
34254
34354
  assert(left.type === right.type);
34255
- if (left.value < right.value)
34256
- return -1;
34257
- if (left.value > right.value)
34258
- return 1;
34259
- return 0;
34355
+ return compareFile(left, right);
34260
34356
  }
34261
34357
  case 'link': {
34262
34358
  assert(left.type === right.type);
34263
- const leftEncoded = JSON.stringify(left.value);
34264
- const rightEncoded = JSON.stringify(right.value);
34265
- if (leftEncoded < rightEncoded)
34266
- return -1;
34267
- if (leftEncoded > rightEncoded)
34268
- return 1;
34269
- return 0;
34359
+ return compareLink(left, right);
34270
34360
  }
34271
34361
  case 'number': {
34272
34362
  assert(left.type === right.type);
34273
- if (left.value < right.value)
34274
- return -1;
34275
- if (left.value > right.value)
34276
- return 1;
34277
- return 0;
34363
+ return compareNumber(left, right);
34278
34364
  }
34279
34365
  case 'object': {
34280
34366
  assert(left.type === right.type);
34281
- const leftKeys = Object.keys(left.value).sort();
34282
- const rightKeys = Object.keys(right.value).sort();
34283
- if (leftKeys.length < rightKeys.length)
34284
- return -1;
34285
- if (leftKeys.length > rightKeys.length)
34286
- return 1;
34287
- for (let i = 0; i < leftKeys.length; i++) {
34288
- const leftKey = leftKeys[i];
34289
- const rightKey = rightKeys[i];
34290
- assert(!isUndefined(leftKey), 'Left key must exist');
34291
- assert(!isUndefined(rightKey), 'Left key must exist');
34292
- if (leftKey < rightKey)
34293
- return -1;
34294
- if (leftKey > rightKey)
34295
- return 1;
34296
- const leftValue = left.value[leftKey];
34297
- const rightValue = right.value[rightKey];
34298
- assert(!isUndefined(leftValue), 'Left value must exist');
34299
- assert(!isUndefined(rightValue), 'Right value must exist');
34300
- const result = compare(leftValue, rightValue, collation11);
34301
- if (result !== 0)
34302
- return result;
34303
- }
34304
- return 0;
34367
+ return compareObject(left, right, collation11);
34305
34368
  }
34306
34369
  case 'responsiveimage': {
34307
34370
  assert(left.type === right.type);
34308
- const leftEncoded = JSON.stringify(left.value);
34309
- const rightEncoded = JSON.stringify(right.value);
34310
- if (leftEncoded < rightEncoded)
34311
- return -1;
34312
- if (leftEncoded > rightEncoded)
34313
- return 1;
34314
- return 0;
34371
+ return compareResponsiveImage(left, right);
34315
34372
  }
34316
34373
  case 'richtext': {
34317
34374
  assert(left.type === right.type);
34318
- const leftValue = left.value;
34319
- const rightValue = right.value;
34320
- if (leftValue < rightValue)
34321
- return -1;
34322
- if (leftValue > rightValue)
34323
- return 1;
34324
- return 0;
34375
+ return compareRichText(left, right);
34325
34376
  }
34326
34377
  case 'string': {
34327
34378
  assert(left.type === right.type);
34328
- let leftValue = left.value;
34329
- let rightValue = right.value;
34330
- if (collation11.type === 0) {
34331
- leftValue = left.value.toLowerCase();
34332
- rightValue = right.value.toLowerCase();
34333
- }
34334
- if (leftValue < rightValue)
34335
- return -1;
34336
- if (leftValue > rightValue)
34337
- return 1;
34338
- return 0;
34379
+ return compareString(left, right, collation11);
34339
34380
  }
34340
34381
  default: {
34341
34382
  assertNever(left);
@@ -35046,7 +35087,8 @@ var RelationalProject = class extends RelationalNode {
35046
35087
  this.input = input;
35047
35088
  this.projections = projections;
35048
35089
  this.passthrough = passthrough;
35049
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
35090
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
35091
+ this.inputGroup = input.getGroup();
35050
35092
  }
35051
35093
  getHash() {
35052
35094
  return calculateHash('RelationalProject', this.inputGroup.id, ...this.projections, this.passthrough);
@@ -35199,19 +35241,6 @@ var ScalarCase = class extends ScalarNode {
35199
35241
  getHash() {
35200
35242
  return calculateHash('ScalarCase', this.input, ...this.conditions, this.otherwise);
35201
35243
  }
35202
- toString() {
35203
- let result = 'CASE';
35204
- if (this.input) {
35205
- result = `${result} ${this.input}`;
35206
- }
35207
- for (const { when, then, } of this.conditions) {
35208
- result = `${result} WHEN ${when} THEN ${then}`;
35209
- }
35210
- if (this.otherwise) {
35211
- result = `${result} ELSE ${this.otherwise}`;
35212
- }
35213
- return `${result} END`;
35214
- }
35215
35244
  optimize(optimizer) {
35216
35245
  var _a, _b;
35217
35246
  (_a = this.input) == null ? void 0 : _a.optimize(optimizer);
@@ -35239,6 +35268,7 @@ var ScalarCase = class extends ScalarNode {
35239
35268
  input: ((_a = this.input) == null ? void 0 : _a.evaluate(context, tuple)) ?? null,
35240
35269
  conditions: evaluateArray(this.conditions.map((condition) => evaluateObject({
35241
35270
  when: condition.when.evaluate(context, tuple),
35271
+ // biome-ignore lint/suspicious/noThenProperty: Existing name.
35242
35272
  then: condition.then.evaluate(context, tuple),
35243
35273
  }))),
35244
35274
  otherwise: ((_b = this.otherwise) == null ? void 0 : _b.evaluate(context, tuple)) ?? null,
@@ -35252,7 +35282,7 @@ var ScalarCase = class extends ScalarNode {
35252
35282
  }
35253
35283
  else {
35254
35284
  for (const { when, then, } of conditions) {
35255
- if (toBoolean(when)) {
35285
+ if (valueToBoolean(when)) {
35256
35286
  return then;
35257
35287
  }
35258
35288
  }
@@ -35698,7 +35728,8 @@ var RelationalFilter = class extends RelationalNode {
35698
35728
  super(input.isSynchronous && predicate.isSynchronous);
35699
35729
  this.input = input;
35700
35730
  this.predicate = predicate;
35701
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
35731
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
35732
+ this.inputGroup = input.getGroup();
35702
35733
  }
35703
35734
  getHash() {
35704
35735
  return calculateHash('RelationalFilter', this.inputGroup.id, this.predicate);
@@ -35736,7 +35767,7 @@ var RelationalFilter = class extends RelationalNode {
35736
35767
  }));
35737
35768
  return input.filter((_, index) => {
35738
35769
  const predicate = predicates[index] ?? null;
35739
- return toBoolean(predicate);
35770
+ return valueToBoolean(predicate);
35740
35771
  });
35741
35772
  }
35742
35773
  };
@@ -35787,8 +35818,10 @@ var RelationalIntersection = class extends RelationalNode {
35787
35818
  super(left.isSynchronous && right.isSynchronous);
35788
35819
  this.left = left;
35789
35820
  this.right = right;
35790
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup', this.left.getGroup());
35791
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup', this.right.getGroup());
35821
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup');
35822
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup');
35823
+ this.leftGroup = left.getGroup();
35824
+ this.rightGroup = right.getGroup();
35792
35825
  }
35793
35826
  getHash() {
35794
35827
  return calculateHash('RelationalIntersection', this.leftGroup.id, this.rightGroup.id);
@@ -35856,9 +35889,6 @@ var ScalarEquals = class extends ScalarNode {
35856
35889
  getHash() {
35857
35890
  return calculateHash('ScalarEquals', this.left, this.right);
35858
35891
  }
35859
- toString() {
35860
- return `${this.left} == ${this.right}`;
35861
- }
35862
35892
  optimize(optimizer) {
35863
35893
  const leftCost = this.left.optimize(optimizer);
35864
35894
  const rightCost = this.right.optimize(optimizer);
@@ -35886,8 +35916,10 @@ var RelationalLeftJoin = class extends RelationalNode {
35886
35916
  this.left = left;
35887
35917
  this.right = right;
35888
35918
  this.constraint = constraint;
35889
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup', this.left.getGroup());
35890
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup', this.right.getGroup());
35919
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup');
35920
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup');
35921
+ this.leftGroup = left.getGroup();
35922
+ this.rightGroup = right.getGroup();
35891
35923
  }
35892
35924
  getHash() {
35893
35925
  return calculateHash('RelationalLeftJoin', this.leftGroup.id, this.rightGroup.id, this.constraint);
@@ -35990,7 +36022,7 @@ var RelationalLeftJoin = class extends RelationalNode {
35990
36022
  tuple.merge(leftTuple);
35991
36023
  tuple.merge(rightTuple);
35992
36024
  const value = yield* this.constraint.evaluate(context, tuple);
35993
- if (toBoolean(value)) {
36025
+ if (valueToBoolean(value)) {
35994
36026
  result.push(tuple);
35995
36027
  hasMatch = true;
35996
36028
  }
@@ -36008,8 +36040,10 @@ var RelationalRightJoin = class extends RelationalNode {
36008
36040
  this.left = left;
36009
36041
  this.right = right;
36010
36042
  this.constraint = constraint;
36011
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup', this.left.getGroup());
36012
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup', this.right.getGroup());
36043
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup');
36044
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup');
36045
+ this.leftGroup = left.getGroup();
36046
+ this.rightGroup = right.getGroup();
36013
36047
  }
36014
36048
  getHash() {
36015
36049
  return calculateHash('RelationalRightJoin', this.leftGroup.id, this.rightGroup.id, this.constraint);
@@ -36112,7 +36146,7 @@ var RelationalRightJoin = class extends RelationalNode {
36112
36146
  tuple.merge(rightTuple);
36113
36147
  tuple.merge(leftTuple);
36114
36148
  const value = yield* this.constraint.evaluate(context, tuple);
36115
- if (toBoolean(value)) {
36149
+ if (valueToBoolean(value)) {
36116
36150
  result.push(tuple);
36117
36151
  hasMatch = true;
36118
36152
  }
@@ -36168,8 +36202,10 @@ var RelationalUnion = class extends RelationalNode {
36168
36202
  super(left.isSynchronous && right.isSynchronous);
36169
36203
  this.left = left;
36170
36204
  this.right = right;
36171
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup', this.left.getGroup());
36172
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup', this.right.getGroup());
36205
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'leftGroup');
36206
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'rightGroup');
36207
+ this.leftGroup = left.getGroup();
36208
+ this.rightGroup = right.getGroup();
36173
36209
  }
36174
36210
  getHash() {
36175
36211
  return calculateHash('RelationalUnion', this.leftGroup.id, this.rightGroup.id);
@@ -36237,9 +36273,6 @@ var ScalarAnd = class extends ScalarNode {
36237
36273
  getHash() {
36238
36274
  return calculateHash('ScalarAnd', this.left, this.right);
36239
36275
  }
36240
- toString() {
36241
- return `${this.left} && ${this.right}`;
36242
- }
36243
36276
  optimize(optimizer) {
36244
36277
  const leftCost = this.left.optimize(optimizer);
36245
36278
  const rightCost = this.right.optimize(optimizer);
@@ -36257,7 +36290,7 @@ var ScalarAnd = class extends ScalarNode {
36257
36290
  });
36258
36291
  return {
36259
36292
  type: 'boolean',
36260
- value: toBoolean(left) && toBoolean(right),
36293
+ value: valueToBoolean(left) && valueToBoolean(right),
36261
36294
  };
36262
36295
  }
36263
36296
  };
@@ -36272,16 +36305,13 @@ var ScalarConstant = class extends ScalarNode {
36272
36305
  getHash() {
36273
36306
  return calculateHash('ScalarConstant', this.definition, this.value);
36274
36307
  }
36275
- toString() {
36276
- return DatabaseValue.stringify(this.value);
36277
- }
36278
36308
  optimize() {
36279
36309
  return new Cost(0);
36280
36310
  }
36281
36311
  getOptimized() {
36282
36312
  return this;
36283
36313
  }
36284
- // eslint-disable-next-line require-yield
36314
+ // biome-ignore lint/correctness/useYield: Required by the super class.
36285
36315
  *evaluate() {
36286
36316
  return this.value;
36287
36317
  }
@@ -36310,9 +36340,6 @@ var ScalarContains = class extends ScalarNode {
36310
36340
  getHash() {
36311
36341
  return calculateHash('ScalarContains', this.source, this.target);
36312
36342
  }
36313
- toString() {
36314
- return `CONTAINS(${this.source}, ${this.target})`;
36315
- }
36316
36343
  optimize(optimizer) {
36317
36344
  const sourceCost = this.source.optimize(optimizer);
36318
36345
  const targetCost = this.target.optimize(optimizer);
@@ -36358,9 +36385,6 @@ var ScalarEndsWith = class extends ScalarNode {
36358
36385
  getHash() {
36359
36386
  return calculateHash('ScalarEndsWith', this.source, this.target);
36360
36387
  }
36361
- toString() {
36362
- return `ENDS_WITH(${this.source}, ${this.target})`;
36363
- }
36364
36388
  optimize(optimizer) {
36365
36389
  const sourceCost = this.source.optimize(optimizer);
36366
36390
  const targetCost = this.target.optimize(optimizer);
@@ -36402,9 +36426,6 @@ var ScalarGreaterThan = class extends ScalarNode {
36402
36426
  getHash() {
36403
36427
  return calculateHash('ScalarGreaterThan', this.left, this.right);
36404
36428
  }
36405
- toString() {
36406
- return `${this.left} > ${this.right}`;
36407
- }
36408
36429
  optimize(optimizer) {
36409
36430
  const leftCost = this.left.optimize(optimizer);
36410
36431
  const rightCost = this.right.optimize(optimizer);
@@ -36446,9 +36467,6 @@ var ScalarGreaterThanOrEqual = class extends ScalarNode {
36446
36467
  getHash() {
36447
36468
  return calculateHash('ScalarGreaterThanOrEqual', this.left, this.right);
36448
36469
  }
36449
- toString() {
36450
- return `${this.left} >= ${this.right}`;
36451
- }
36452
36470
  optimize(optimizer) {
36453
36471
  const leftCost = this.left.optimize(optimizer);
36454
36472
  const rightCost = this.right.optimize(optimizer);
@@ -36490,9 +36508,6 @@ var ScalarLessThan = class extends ScalarNode {
36490
36508
  getHash() {
36491
36509
  return calculateHash('ScalarLessThan', this.left, this.right);
36492
36510
  }
36493
- toString() {
36494
- return `${this.left} < ${this.right}`;
36495
- }
36496
36511
  optimize(optimizer) {
36497
36512
  const leftCost = this.left.optimize(optimizer);
36498
36513
  const rightCost = this.right.optimize(optimizer);
@@ -36534,9 +36549,6 @@ var ScalarLessThanOrEqual = class extends ScalarNode {
36534
36549
  getHash() {
36535
36550
  return calculateHash('ScalarLessThanOrEqual', this.left, this.right);
36536
36551
  }
36537
- toString() {
36538
- return `${this.left} <= ${this.right}`;
36539
- }
36540
36552
  optimize(optimizer) {
36541
36553
  const leftCost = this.left.optimize(optimizer);
36542
36554
  const rightCost = this.right.optimize(optimizer);
@@ -36578,9 +36590,6 @@ var ScalarNotEquals = class extends ScalarNode {
36578
36590
  getHash() {
36579
36591
  return calculateHash('ScalarNotEquals', this.left, this.right);
36580
36592
  }
36581
- toString() {
36582
- return `${this.left} != ${this.right}`;
36583
- }
36584
36593
  optimize(optimizer) {
36585
36594
  const leftCost = this.left.optimize(optimizer);
36586
36595
  const rightCost = this.right.optimize(optimizer);
@@ -36622,9 +36631,6 @@ var ScalarOr = class extends ScalarNode {
36622
36631
  getHash() {
36623
36632
  return calculateHash('ScalarOr', this.left, this.right);
36624
36633
  }
36625
- toString() {
36626
- return `${this.left} || ${this.right}`;
36627
- }
36628
36634
  optimize(optimizer) {
36629
36635
  const leftCost = this.left.optimize(optimizer);
36630
36636
  const rightCost = this.right.optimize(optimizer);
@@ -36642,7 +36648,7 @@ var ScalarOr = class extends ScalarNode {
36642
36648
  });
36643
36649
  return {
36644
36650
  type: 'boolean',
36645
- value: toBoolean(left) || toBoolean(right),
36651
+ value: valueToBoolean(left) || valueToBoolean(right),
36646
36652
  };
36647
36653
  }
36648
36654
  };
@@ -36670,9 +36676,6 @@ var ScalarStartsWith = class extends ScalarNode {
36670
36676
  getHash() {
36671
36677
  return calculateHash('ScalarStartsWith', this.source, this.target);
36672
36678
  }
36673
- toString() {
36674
- return `STARTS_WITH(${this.source}, ${this.target})`;
36675
- }
36676
36679
  optimize(optimizer) {
36677
36680
  const sourceCost = this.source.optimize(optimizer);
36678
36681
  const targetCost = this.target.optimize(optimizer);
@@ -36697,7 +36700,8 @@ var ScalarStartsWith = class extends ScalarNode {
36697
36700
  var Explorer = class {
36698
36701
  constructor(normalizer) {
36699
36702
  this.normalizer = normalizer;
36700
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'memo', this.normalizer.memo);
36703
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'memo');
36704
+ this.memo = normalizer.memo;
36701
36705
  }
36702
36706
  explore(before) {
36703
36707
  const group = before.getGroup();
@@ -36903,7 +36907,8 @@ var RelationalLimit = class extends RelationalNode {
36903
36907
  this.input = input;
36904
36908
  this.limit = limit;
36905
36909
  this.ordering = ordering;
36906
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
36910
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
36911
+ this.inputGroup = input.getGroup();
36907
36912
  }
36908
36913
  getHash() {
36909
36914
  return calculateHash('RelationalLimit', this.inputGroup.id, this.limit);
@@ -36939,7 +36944,7 @@ var RelationalLimit = class extends RelationalNode {
36939
36944
  input: this.input.evaluate(context),
36940
36945
  limit: this.limit.evaluate(context, void 0),
36941
36946
  });
36942
- const value = toNumber2(limit) ?? Infinity;
36947
+ const value = valueToNumber(limit) ?? Infinity;
36943
36948
  if (value === Infinity)
36944
36949
  return input;
36945
36950
  return input.slice(0, value);
@@ -36951,7 +36956,8 @@ var RelationalOffset = class extends RelationalNode {
36951
36956
  this.input = input;
36952
36957
  this.offset = offset;
36953
36958
  this.ordering = ordering;
36954
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
36959
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
36960
+ this.inputGroup = input.getGroup();
36955
36961
  }
36956
36962
  getHash() {
36957
36963
  return calculateHash('RelationalOffset', this.inputGroup.id, this.offset);
@@ -36987,7 +36993,7 @@ var RelationalOffset = class extends RelationalNode {
36987
36993
  input: this.input.evaluate(context),
36988
36994
  offset: this.offset.evaluate(context, void 0),
36989
36995
  });
36990
- const value = toNumber2(offset) ?? 0;
36996
+ const value = valueToNumber(offset) ?? 0;
36991
36997
  if (value === 0)
36992
36998
  return input;
36993
36999
  return input.slice(value);
@@ -37001,8 +37007,9 @@ var ScalarArray = class extends ScalarNode {
37001
37007
  this.ordering = ordering;
37002
37008
  this.referencedFields = referencedFields;
37003
37009
  this.referencedOuterFields = referencedOuterFields;
37004
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
37010
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
37005
37011
  (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'definition');
37012
+ this.inputGroup = input.getGroup();
37006
37013
  const itemDefinitions = {};
37007
37014
  const namedFieldEntries = Object.entries(namedFields);
37008
37015
  for (const [name, field,] of namedFieldEntries) {
@@ -37026,9 +37033,6 @@ var ScalarArray = class extends ScalarNode {
37026
37033
  }
37027
37034
  return calculateHash('ScalarArray', this.inputGroup.id, namedFieldIds, this.ordering, this.referencedFields, this.referencedOuterFields);
37028
37035
  }
37029
- toString() {
37030
- return `ARRAY(${this.inputGroup.id})`;
37031
- }
37032
37036
  getInputRequiredProps() {
37033
37037
  const resolvedFields = new Fields();
37034
37038
  const fields = Object.values(this.namedFields);
@@ -37082,9 +37086,6 @@ var ScalarCast = class extends ScalarNode {
37082
37086
  getHash() {
37083
37087
  return calculateHash('ScalarCast', this.input, this.definition);
37084
37088
  }
37085
- toString() {
37086
- return `CAST(${this.input} AS ${this.definition.type.toUpperCase()})`;
37087
- }
37088
37089
  optimize(optimizer) {
37089
37090
  return this.input.optimize(optimizer);
37090
37091
  }
@@ -37105,20 +37106,18 @@ var ScalarFlatArray = class extends ScalarNode {
37105
37106
  this.ordering = ordering;
37106
37107
  this.referencedFields = referencedFields;
37107
37108
  this.referencedOuterFields = referencedOuterFields;
37108
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
37109
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
37109
37110
  (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'definition');
37111
+ this.inputGroup = input.getGroup();
37110
37112
  this.definition = {
37111
37113
  type: 'array',
37112
37114
  isNullable: false,
37113
- definition: this.field.definition,
37115
+ definition: field.definition,
37114
37116
  };
37115
37117
  }
37116
37118
  getHash() {
37117
37119
  return calculateHash('ScalarFlatArray', this.inputGroup.id, this.field.id, this.ordering, this.referencedFields, this.referencedOuterFields);
37118
37120
  }
37119
- toString() {
37120
- return `FLAT_ARRAY(${this.inputGroup.id})`;
37121
- }
37122
37121
  getInputRequiredProps() {
37123
37122
  const resolvedFields = new Fields();
37124
37123
  if (!isUndefined(this.field.collection)) {
@@ -37175,9 +37174,6 @@ var ScalarIn = class extends ScalarNode {
37175
37174
  getHash() {
37176
37175
  return calculateHash('ScalarIn', this.left, this.right);
37177
37176
  }
37178
- toString() {
37179
- return `${this.left} IN ${this.right}`;
37180
- }
37181
37177
  optimize(optimizer) {
37182
37178
  const leftCost = this.left.optimize(optimizer);
37183
37179
  const rightCost = this.right.optimize(optimizer);
@@ -37223,9 +37219,6 @@ var ScalarIndexOf = class extends ScalarNode {
37223
37219
  getHash() {
37224
37220
  return calculateHash('ScalarIndexOf', this.source, this.target);
37225
37221
  }
37226
- toString() {
37227
- return `INDEX_OF(${this.source}, ${this.target})`;
37228
- }
37229
37222
  optimize(optimizer) {
37230
37223
  const sourceCost = this.source.optimize(optimizer);
37231
37224
  const targetCost = this.target.optimize(optimizer);
@@ -37259,9 +37252,6 @@ var ScalarLength = class extends ScalarNode {
37259
37252
  getHash() {
37260
37253
  return calculateHash('ScalarLength', this.input);
37261
37254
  }
37262
- toString() {
37263
- return `LENGTH(${this.input})`;
37264
- }
37265
37255
  optimize(optimizer) {
37266
37256
  return this.input.optimize(optimizer);
37267
37257
  }
@@ -37289,9 +37279,6 @@ var ScalarNot = class extends ScalarNode {
37289
37279
  getHash() {
37290
37280
  return calculateHash('ScalarNot', this.input);
37291
37281
  }
37292
- toString() {
37293
- return `NOT ${this.input}`;
37294
- }
37295
37282
  optimize(optimizer) {
37296
37283
  return this.input.optimize(optimizer);
37297
37284
  }
@@ -37303,7 +37290,7 @@ var ScalarNot = class extends ScalarNode {
37303
37290
  const input = yield* this.input.evaluate(context, tuple);
37304
37291
  return {
37305
37292
  type: 'boolean',
37306
- value: !toBoolean(input),
37293
+ value: !valueToBoolean(input),
37307
37294
  };
37308
37295
  }
37309
37296
  };
@@ -37331,9 +37318,6 @@ var ScalarNotIn = class extends ScalarNode {
37331
37318
  getHash() {
37332
37319
  return calculateHash('ScalarNotIn', this.left, this.right);
37333
37320
  }
37334
- toString() {
37335
- return `${this.left} NOT IN ${this.right}`;
37336
- }
37337
37321
  optimize(optimizer) {
37338
37322
  const leftCost = this.left.optimize(optimizer);
37339
37323
  const rightCost = this.right.optimize(optimizer);
@@ -37369,21 +37353,19 @@ var ScalarVariable = class extends ScalarNode {
37369
37353
  super(referencedFields, referencedOuterFields, true);
37370
37354
  this.field = field;
37371
37355
  this.isOuterField = isOuterField;
37372
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'definition', this.field.definition);
37356
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'definition');
37357
+ this.definition = field.definition;
37373
37358
  }
37374
37359
  getHash() {
37375
37360
  return calculateHash('ScalarVariable', this.field.id, this.isOuterField);
37376
37361
  }
37377
- toString() {
37378
- return `"${this.field.name}" /* ${this.field.id} */`;
37379
- }
37380
37362
  optimize() {
37381
37363
  return new Cost(0);
37382
37364
  }
37383
37365
  getOptimized() {
37384
37366
  return this;
37385
37367
  }
37386
- // eslint-disable-next-line require-yield
37368
+ // biome-ignore lint/correctness/useYield: Required by the super class.
37387
37369
  *evaluate(context, tuple) {
37388
37370
  if (this.isOuterField) {
37389
37371
  assert(context, 'Context must exist');
@@ -37701,7 +37683,8 @@ var EnforcerResolve = class extends EnforcerNode {
37701
37683
  super(false);
37702
37684
  this.input = input;
37703
37685
  this.fields = fields;
37704
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
37686
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
37687
+ this.inputGroup = input.getGroup();
37705
37688
  }
37706
37689
  getHash() {
37707
37690
  return calculateHash('EnforcerResolve', this.inputGroup.id, this.fields);
@@ -37785,7 +37768,8 @@ var EnforcerSort = class extends EnforcerNode {
37785
37768
  super(input.isSynchronous);
37786
37769
  this.input = input;
37787
37770
  this.ordering = ordering;
37788
- (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup', this.input.getGroup());
37771
+ (0, chunk_H7SXYDQJ_js_1.__publicField)(this, 'inputGroup');
37772
+ this.inputGroup = input.getGroup();
37789
37773
  }
37790
37774
  getHash() {
37791
37775
  return calculateHash('EnforcerSort', this.inputGroup.id, this.ordering);