@rpgjs/client 5.0.0-alpha.23 → 5.0.0-alpha.25

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.
Files changed (187) hide show
  1. package/dist/{index30.js → Game/AnimationManager.js} +1 -1
  2. package/dist/Game/AnimationManager.js.map +1 -0
  3. package/dist/{index24.js → Game/Event.js} +2 -2
  4. package/dist/Game/Event.js.map +1 -0
  5. package/dist/{index29.js → Game/Map.js} +6 -6
  6. package/dist/Game/Map.js.map +1 -0
  7. package/dist/{index22.js → Game/Object.js} +4 -4
  8. package/dist/Game/Object.js.map +1 -0
  9. package/dist/{index23.js → Game/Player.js} +2 -2
  10. package/dist/Game/Player.js.map +1 -0
  11. package/dist/{index9.js → Gui/Gui.js} +10 -11
  12. package/dist/{index9.js.map → Gui/Gui.js.map} +1 -1
  13. package/dist/{index19.js → Resource.js} +1 -1
  14. package/dist/Resource.js.map +1 -0
  15. package/dist/RpgClientEngine.d.ts +66 -115
  16. package/dist/{index2.js → RpgClientEngine.js} +234 -176
  17. package/dist/RpgClientEngine.js.map +1 -0
  18. package/dist/{index18.js → Sound.js} +1 -1
  19. package/dist/Sound.js.map +1 -0
  20. package/dist/{index35.js → components/animations/animation.ce.js} +3 -3
  21. package/dist/components/animations/animation.ce.js.map +1 -0
  22. package/dist/{index34.js → components/animations/hit.ce.js} +1 -1
  23. package/dist/components/animations/hit.ce.js.map +1 -0
  24. package/dist/{index12.js → components/animations/index.js} +3 -3
  25. package/dist/components/animations/index.js.map +1 -0
  26. package/dist/{index17.js → components/character.ce.js} +4 -4
  27. package/dist/components/character.ce.js.map +1 -0
  28. package/dist/{index51.js → components/dynamics/parse-value.js} +1 -1
  29. package/dist/components/dynamics/parse-value.js.map +1 -0
  30. package/dist/{index40.js → components/dynamics/text.ce.js} +2 -2
  31. package/dist/components/dynamics/text.ce.js.map +1 -0
  32. package/dist/{index11.js → components/gui/box.ce.js} +8 -8
  33. package/dist/components/gui/box.ce.js.map +1 -0
  34. package/dist/{index10.js → components/gui/dialogbox/index.ce.js} +4 -4
  35. package/dist/components/gui/dialogbox/index.ce.js.map +1 -0
  36. package/dist/{index52.js → components/gui/dialogbox/itemMenu.ce.js} +1 -1
  37. package/dist/components/gui/dialogbox/itemMenu.ce.js.map +1 -0
  38. package/dist/{index47.js → components/gui/dialogbox/selection.ce.js} +4 -4
  39. package/dist/components/gui/dialogbox/selection.ce.js.map +1 -0
  40. package/dist/components/gui/mobile/index.d.ts +1 -1
  41. package/dist/{index25.js → components/gui/mobile/index.js} +5 -5
  42. package/dist/components/gui/mobile/index.js.map +1 -0
  43. package/dist/components/gui/mobile/mobile.ce.js +17 -0
  44. package/dist/components/gui/mobile/mobile.ce.js.map +1 -0
  45. package/dist/{index13.js → components/prebuilt/hp-bar.ce.js} +1 -1
  46. package/dist/components/prebuilt/hp-bar.ce.js.map +1 -0
  47. package/dist/{index14.js → components/prebuilt/light-halo.ce.js} +2 -3
  48. package/dist/components/prebuilt/light-halo.ce.js.map +1 -0
  49. package/dist/{index26.js → components/scenes/canvas.ce.js} +6 -7
  50. package/dist/components/scenes/canvas.ce.js.map +1 -0
  51. package/dist/{index46.js → components/scenes/draw-map.ce.js} +3 -3
  52. package/dist/components/scenes/draw-map.ce.js.map +1 -0
  53. package/dist/{index16.js → components/scenes/event-layer.ce.js} +4 -4
  54. package/dist/components/scenes/event-layer.ce.js.map +1 -0
  55. package/dist/{index6.js → core/inject.js} +2 -2
  56. package/dist/core/inject.js.map +1 -0
  57. package/dist/{index5.js → core/setup.js} +4 -4
  58. package/dist/core/setup.js.map +1 -0
  59. package/dist/index.d.ts +1 -0
  60. package/dist/index.js +25 -24
  61. package/dist/index.js.map +1 -1
  62. package/dist/{index8.js → module.js} +10 -5
  63. package/dist/module.js.map +1 -0
  64. package/dist/{index20.js → node_modules/.pnpm/@signe_di@2.6.0/node_modules/@signe/di/dist/index.js} +1 -1
  65. package/dist/node_modules/.pnpm/@signe_di@2.6.0/node_modules/@signe/di/dist/index.js.map +1 -0
  66. package/dist/{index45.js → node_modules/.pnpm/@signe_reactive@2.6.0/node_modules/@signe/reactive/dist/index.js} +216 -11
  67. package/dist/node_modules/.pnpm/@signe_reactive@2.6.0/node_modules/@signe/reactive/dist/index.js.map +1 -0
  68. package/dist/{index32.js → node_modules/.pnpm/@signe_room@2.6.0/node_modules/@signe/room/dist/index.js} +29 -30
  69. package/dist/node_modules/.pnpm/@signe_room@2.6.0/node_modules/@signe/room/dist/index.js.map +1 -0
  70. package/dist/{index42.js → node_modules/.pnpm/@signe_sync@2.6.0/node_modules/@signe/sync/dist/chunk-7QVYU63E.js} +1 -1
  71. package/dist/node_modules/.pnpm/@signe_sync@2.6.0/node_modules/@signe/sync/dist/chunk-7QVYU63E.js.map +1 -0
  72. package/dist/{index33.js → node_modules/.pnpm/@signe_sync@2.6.0/node_modules/@signe/sync/dist/client/index.js} +5 -5
  73. package/dist/node_modules/.pnpm/@signe_sync@2.6.0/node_modules/@signe/sync/dist/client/index.js.map +1 -0
  74. package/dist/{index28.js → node_modules/.pnpm/@signe_sync@2.6.0/node_modules/@signe/sync/dist/index.js} +3 -3
  75. package/dist/node_modules/.pnpm/@signe_sync@2.6.0/node_modules/@signe/sync/dist/index.js.map +1 -0
  76. package/dist/{index48.js → node_modules/.pnpm/dset@3.1.4/node_modules/dset/dist/index.js} +1 -1
  77. package/dist/node_modules/.pnpm/dset@3.1.4/node_modules/dset/dist/index.js.map +1 -0
  78. package/dist/{index43.js → node_modules/.pnpm/partysocket@1.1.3/node_modules/partysocket/dist/chunk-HAC622V3.js} +2 -15
  79. package/dist/node_modules/.pnpm/partysocket@1.1.3/node_modules/partysocket/dist/chunk-HAC622V3.js.map +1 -0
  80. package/dist/{index44.js → node_modules/.pnpm/partysocket@1.1.3/node_modules/partysocket/dist/chunk-S74YV6PU.js} +2 -5
  81. package/dist/node_modules/.pnpm/partysocket@1.1.3/node_modules/partysocket/dist/chunk-S74YV6PU.js.map +1 -0
  82. package/dist/{index50.js → node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/index.js} +813 -100
  83. package/dist/node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/index.js.map +1 -0
  84. package/dist/{index36.js → presets/animation.js} +1 -1
  85. package/dist/presets/animation.js.map +1 -0
  86. package/dist/{index39.js → presets/faceset.js} +1 -1
  87. package/dist/presets/faceset.js.map +1 -0
  88. package/dist/presets/index.js +14 -0
  89. package/dist/presets/index.js.map +1 -0
  90. package/dist/{index37.js → presets/lpc.js} +1 -1
  91. package/dist/presets/lpc.js.map +1 -0
  92. package/dist/{index38.js → presets/rmspritesheet.js} +1 -1
  93. package/dist/presets/rmspritesheet.js.map +1 -0
  94. package/dist/{index27.js → services/AbstractSocket.js} +1 -1
  95. package/dist/services/AbstractSocket.js.map +1 -0
  96. package/dist/{index21.js → services/keyboardControls.js} +1 -1
  97. package/dist/services/keyboardControls.js.map +1 -0
  98. package/dist/{index7.js → services/loadMap.js} +2 -2
  99. package/dist/services/loadMap.js.map +1 -0
  100. package/dist/{index4.js → services/mmorpg.js} +6 -6
  101. package/dist/services/mmorpg.js.map +1 -0
  102. package/dist/services/standalone.d.ts +3 -0
  103. package/dist/{index3.js → services/standalone.js} +18 -12
  104. package/dist/services/standalone.js.map +1 -0
  105. package/package.json +9 -9
  106. package/src/Gui/Gui.ts +0 -1
  107. package/src/RpgClientEngine.ts +298 -182
  108. package/src/components/character.ce +2 -3
  109. package/src/components/gui/mobile/index.ts +1 -1
  110. package/src/components/gui/mobile/mobile.ce +73 -88
  111. package/src/components/prebuilt/light-halo.ce +2 -71
  112. package/src/components/scenes/canvas.ce +0 -10
  113. package/src/components/scenes/event-layer.ce +1 -0
  114. package/src/index.ts +2 -1
  115. package/src/module.ts +6 -1
  116. package/src/services/standalone.ts +16 -7
  117. package/vite.config.ts +4 -2
  118. package/dist/Game/TransitionManager.d.ts +0 -56
  119. package/dist/index10.js.map +0 -1
  120. package/dist/index11.js.map +0 -1
  121. package/dist/index12.js.map +0 -1
  122. package/dist/index13.js.map +0 -1
  123. package/dist/index14.js.map +0 -1
  124. package/dist/index15.js +0 -14
  125. package/dist/index15.js.map +0 -1
  126. package/dist/index16.js.map +0 -1
  127. package/dist/index17.js.map +0 -1
  128. package/dist/index18.js.map +0 -1
  129. package/dist/index19.js.map +0 -1
  130. package/dist/index2.js.map +0 -1
  131. package/dist/index20.js.map +0 -1
  132. package/dist/index21.js.map +0 -1
  133. package/dist/index22.js.map +0 -1
  134. package/dist/index23.js.map +0 -1
  135. package/dist/index24.js.map +0 -1
  136. package/dist/index25.js.map +0 -1
  137. package/dist/index26.js.map +0 -1
  138. package/dist/index27.js.map +0 -1
  139. package/dist/index28.js.map +0 -1
  140. package/dist/index29.js.map +0 -1
  141. package/dist/index3.js.map +0 -1
  142. package/dist/index30.js.map +0 -1
  143. package/dist/index31.js +0 -53
  144. package/dist/index31.js.map +0 -1
  145. package/dist/index32.js.map +0 -1
  146. package/dist/index33.js.map +0 -1
  147. package/dist/index34.js.map +0 -1
  148. package/dist/index35.js.map +0 -1
  149. package/dist/index36.js.map +0 -1
  150. package/dist/index37.js.map +0 -1
  151. package/dist/index38.js.map +0 -1
  152. package/dist/index39.js.map +0 -1
  153. package/dist/index4.js.map +0 -1
  154. package/dist/index40.js.map +0 -1
  155. package/dist/index41.js +0 -43
  156. package/dist/index41.js.map +0 -1
  157. package/dist/index42.js.map +0 -1
  158. package/dist/index43.js.map +0 -1
  159. package/dist/index44.js.map +0 -1
  160. package/dist/index45.js.map +0 -1
  161. package/dist/index46.js.map +0 -1
  162. package/dist/index47.js.map +0 -1
  163. package/dist/index48.js.map +0 -1
  164. package/dist/index49.js +0 -7
  165. package/dist/index49.js.map +0 -1
  166. package/dist/index5.js.map +0 -1
  167. package/dist/index50.js.map +0 -1
  168. package/dist/index51.js.map +0 -1
  169. package/dist/index52.js.map +0 -1
  170. package/dist/index53.js +0 -6
  171. package/dist/index53.js.map +0 -1
  172. package/dist/index54.js +0 -12
  173. package/dist/index54.js.map +0 -1
  174. package/dist/index55.js +0 -113
  175. package/dist/index55.js.map +0 -1
  176. package/dist/index56.js +0 -136
  177. package/dist/index56.js.map +0 -1
  178. package/dist/index57.js +0 -137
  179. package/dist/index57.js.map +0 -1
  180. package/dist/index58.js +0 -112
  181. package/dist/index58.js.map +0 -1
  182. package/dist/index59.js +0 -9
  183. package/dist/index59.js.map +0 -1
  184. package/dist/index6.js.map +0 -1
  185. package/dist/index7.js.map +0 -1
  186. package/dist/index8.js.map +0 -1
  187. package/src/Game/TransitionManager.ts +0 -75
@@ -1,4 +1,4 @@
1
- import { BehaviorSubject, filter, combineLatest, map, finalize } from 'rxjs';
1
+ import { BehaviorSubject, filter, combineLatest, map, finalize, Observable } from 'rxjs';
2
2
 
3
3
  var __defProp = Object.defineProperty;
4
4
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
@@ -209,7 +209,7 @@ var trackDependency = /* @__PURE__ */ __name((signal2) => {
209
209
  reactiveStore.currentDependencyTracker(signal2);
210
210
  }
211
211
  }, "trackDependency");
212
- function signal(defaultValue) {
212
+ function signal(defaultValue, options) {
213
213
  let subject;
214
214
  if (Array.isArray(defaultValue)) {
215
215
  subject = new ArraySubject(defaultValue);
@@ -231,12 +231,21 @@ function signal(defaultValue) {
231
231
  return getValue();
232
232
  }, "fn");
233
233
  fn.set = (value) => {
234
- if (subject instanceof ArraySubject) {
235
- subject.items = value;
236
- } else if (subject instanceof ObjectSubject) {
237
- subject.obj = value;
234
+ const currentValue = getValue();
235
+ let shouldEmit = true;
236
+ if (options?.equal) {
237
+ shouldEmit = !options.equal(currentValue, value);
238
238
  } else {
239
- subject.next(value);
239
+ shouldEmit = currentValue !== value;
240
+ }
241
+ if (shouldEmit) {
242
+ if (subject instanceof ArraySubject) {
243
+ subject.items = value;
244
+ } else if (subject instanceof ObjectSubject) {
245
+ subject.obj = value;
246
+ } else {
247
+ subject.next(value);
248
+ }
240
249
  }
241
250
  };
242
251
  fn._isFrozen = false;
@@ -293,9 +302,18 @@ function computed(computeFunction, disposableFn) {
293
302
  disposableFn = lastComputedValue;
294
303
  }
295
304
  reactiveStore.currentDependencyTracker = previousTracker;
296
- const computedObservable = combineLatest([
305
+ const observables = [
297
306
  ...dependencies
298
- ].map((signal2) => signal2.observable)).pipe(filter(() => !init), map(() => computeFunction()), finalize(() => disposableFn?.()));
307
+ ].map((dep) => {
308
+ if (isComputed(dep) && "dependencies" in dep) {
309
+ const computedDep = dep;
310
+ if (computedDep.dependencies.size === 0) {
311
+ return new BehaviorSubject(computedDep()).asObservable();
312
+ }
313
+ }
314
+ return dep.observable;
315
+ });
316
+ const computedObservable = combineLatest(observables).pipe(filter(() => !init), map(() => computeFunction()), finalize(() => disposableFn?.()));
299
317
  const fn = /* @__PURE__ */ __name(function() {
300
318
  trackDependency(fn);
301
319
  return lastComputedValue;
@@ -310,6 +328,193 @@ function computed(computeFunction, disposableFn) {
310
328
  return fn;
311
329
  }
312
330
  __name(computed, "computed");
331
+ function linkedSignal(computationOrOptions, simpleOptions) {
332
+ const dependencies = /* @__PURE__ */ new Set();
333
+ let init = true;
334
+ let lastComputedValue;
335
+ let computeFunction;
336
+ let sourceSignal;
337
+ let computationFn;
338
+ let equalFn;
339
+ let previousValue;
340
+ let isOverridden = false;
341
+ let overriddenValue;
342
+ let depVersion = 0;
343
+ let overrideDepVersion = null;
344
+ if (typeof computationOrOptions === "function") {
345
+ computeFunction = computationOrOptions;
346
+ equalFn = simpleOptions?.equal;
347
+ } else {
348
+ const options = computationOrOptions;
349
+ sourceSignal = options.source;
350
+ computationFn = options.computation;
351
+ equalFn = options.equal;
352
+ if (typeof sourceSignal === "function" && !isSignal(sourceSignal)) {
353
+ const sourceFn = sourceSignal;
354
+ computeFunction = /* @__PURE__ */ __name(() => {
355
+ const sourceValue = sourceFn();
356
+ if (computationFn.length > 1) {
357
+ const result = computationFn(sourceValue, previousValue);
358
+ previousValue = {
359
+ source: sourceValue,
360
+ value: result
361
+ };
362
+ return result;
363
+ } else {
364
+ const result = computationFn(sourceValue);
365
+ previousValue = {
366
+ source: sourceValue,
367
+ value: result
368
+ };
369
+ return result;
370
+ }
371
+ }, "computeFunction");
372
+ } else {
373
+ const source = typeof sourceSignal === "function" ? sourceSignal : sourceSignal;
374
+ computeFunction = /* @__PURE__ */ __name(() => {
375
+ const sourceValue = source();
376
+ if (computationFn.length > 1) {
377
+ const result = computationFn(sourceValue, previousValue);
378
+ previousValue = {
379
+ source: sourceValue,
380
+ value: result
381
+ };
382
+ return result;
383
+ } else {
384
+ const result = computationFn(sourceValue);
385
+ previousValue = {
386
+ source: sourceValue,
387
+ value: result
388
+ };
389
+ return result;
390
+ }
391
+ }, "computeFunction");
392
+ }
393
+ }
394
+ const previousTracker = reactiveStore.currentDependencyTracker;
395
+ reactiveStore.currentDependencyTracker = (signal2) => {
396
+ dependencies.add(signal2);
397
+ };
398
+ if (sourceSignal && typeof sourceSignal === "function" && !isSignal(sourceSignal)) {
399
+ lastComputedValue = computeFunction();
400
+ } else if (sourceSignal && isSignal(sourceSignal)) {
401
+ dependencies.add(sourceSignal);
402
+ lastComputedValue = computeFunction();
403
+ } else {
404
+ lastComputedValue = computeFunction();
405
+ }
406
+ reactiveStore.currentDependencyTracker = previousTracker;
407
+ const subject = new BehaviorSubject(lastComputedValue);
408
+ const observables = [
409
+ ...dependencies
410
+ ].map((dep) => {
411
+ if (isComputed(dep) && "dependencies" in dep) {
412
+ const computedDep = dep;
413
+ if (computedDep.dependencies.size === 0) {
414
+ return new BehaviorSubject(computedDep()).asObservable();
415
+ }
416
+ }
417
+ return dep.observable;
418
+ });
419
+ let linkedObservable;
420
+ if (observables.length > 0) {
421
+ linkedObservable = combineLatest(observables).pipe(filter(() => !init), map(() => {
422
+ const computed2 = computeFunction();
423
+ if (equalFn) {
424
+ if (!equalFn(lastComputedValue, computed2)) {
425
+ lastComputedValue = computed2;
426
+ isOverridden = false;
427
+ }
428
+ } else {
429
+ if (lastComputedValue !== computed2) {
430
+ lastComputedValue = computed2;
431
+ isOverridden = false;
432
+ }
433
+ }
434
+ return lastComputedValue;
435
+ }));
436
+ } else {
437
+ linkedObservable = subject.asObservable().pipe(filter(() => !init));
438
+ }
439
+ const fn = /* @__PURE__ */ __name(function() {
440
+ trackDependency(fn);
441
+ if (isOverridden && dependencies.size > 0) {
442
+ if (overrideDepVersion !== depVersion) {
443
+ const computed2 = computeFunction();
444
+ isOverridden = false;
445
+ overriddenValue = void 0;
446
+ lastComputedValue = computed2;
447
+ overrideDepVersion = null;
448
+ return computed2;
449
+ }
450
+ return overriddenValue;
451
+ }
452
+ if (isOverridden) {
453
+ return overriddenValue;
454
+ }
455
+ if (dependencies.size === 0) {
456
+ const computed2 = computeFunction();
457
+ lastComputedValue = computed2;
458
+ }
459
+ return lastComputedValue;
460
+ }, "fn");
461
+ fn.observable = new Observable((observer) => {
462
+ const depSubscription = linkedObservable.subscribe((value) => {
463
+ if (dependencies.size > 0) {
464
+ depVersion++;
465
+ isOverridden = false;
466
+ overrideDepVersion = null;
467
+ lastComputedValue = value;
468
+ } else {
469
+ lastComputedValue = value;
470
+ }
471
+ observer.next(value);
472
+ });
473
+ let subjectSubscription;
474
+ if (dependencies.size === 0) {
475
+ subjectSubscription = subject.pipe(filter(() => !init)).subscribe((value) => {
476
+ observer.next(value);
477
+ });
478
+ }
479
+ observer.next(lastComputedValue);
480
+ return () => {
481
+ depSubscription.unsubscribe();
482
+ if (subjectSubscription) {
483
+ subjectSubscription.unsubscribe();
484
+ }
485
+ };
486
+ });
487
+ fn.subscription = fn.observable.subscribe(() => {
488
+ });
489
+ fn.dependencies = dependencies;
490
+ fn._subject = subject;
491
+ fn.set = (value) => {
492
+ if (!isOverridden) {
493
+ overrideDepVersion = depVersion;
494
+ if (computationFn && sourceSignal) {
495
+ const sourceValue = untracked(() => {
496
+ if (typeof sourceSignal === "function") {
497
+ const source = sourceSignal;
498
+ return isSignal(source) ? source() : sourceSignal();
499
+ }
500
+ return sourceSignal();
501
+ });
502
+ previousValue = {
503
+ source: sourceValue,
504
+ value
505
+ };
506
+ }
507
+ }
508
+ isOverridden = true;
509
+ overriddenValue = value;
510
+ lastComputedValue = value;
511
+ subject.next(value);
512
+ };
513
+ reactiveStore.currentSubscriptionsTracker?.(fn.subscription);
514
+ init = false;
515
+ return fn;
516
+ }
517
+ __name(linkedSignal, "linkedSignal");
313
518
  function untracked(fn) {
314
519
  const prevDepTracker = reactiveStore.currentDependencyTracker;
315
520
  const prevSubTracker = reactiveStore.currentSubscriptionsTracker;
@@ -331,5 +536,5 @@ function effect(fn) {
331
536
  }
332
537
  __name(effect, "effect");
333
538
 
334
- export { ArraySubject, ObjectSubject, computed, effect, isArraySubject, isComputed, isObjectSubject, isSignal, signal, untracked };
335
- //# sourceMappingURL=index45.js.map
539
+ export { ArraySubject, ObjectSubject, computed, effect, isArraySubject, isComputed, isObjectSubject, isSignal, linkedSignal, signal, untracked };
540
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../../../../node_modules/.pnpm/@signe+reactive@2.6.0/node_modules/@signe/reactive/dist/index.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\n\n// src/ArraySubject.ts\nimport { BehaviorSubject } from \"rxjs\";\nvar ArraySubject = class extends BehaviorSubject {\n static {\n __name(this, \"ArraySubject\");\n }\n _items = [];\n constructor(items = []) {\n super({\n type: \"init\",\n items\n });\n this.createProxy(items);\n }\n createProxy(items) {\n this._items = new Proxy(items, {\n get: /* @__PURE__ */ __name((target, prop, receiver) => {\n const origMethod = target[prop];\n if (typeof origMethod === \"function\") {\n return (...args) => {\n let changeType = \"update\";\n let index = void 0;\n let isMutateFn = false;\n let itemsToEmit = [];\n let changeSplice = true;\n switch (prop) {\n case \"push\":\n index = target.length;\n changeType = \"add\";\n isMutateFn = true;\n break;\n case \"pop\":\n index = target.length - 1;\n changeType = \"remove\";\n isMutateFn = true;\n break;\n case \"unshift\":\n index = 0;\n changeType = \"add\";\n isMutateFn = true;\n break;\n case \"shift\":\n index = 0;\n changeType = \"remove\";\n isMutateFn = true;\n break;\n case \"splice\":\n index = args[0];\n const deleteCount = args[1];\n const newItems = args.slice(2);\n itemsToEmit = newItems;\n if (deleteCount > 0 && newItems.length === 0) {\n changeType = \"remove\";\n } else if (deleteCount === 0 && newItems.length > 0) {\n changeType = \"add\";\n } else if (deleteCount === 0 && newItems.length === 0) {\n changeSplice = false;\n } else {\n changeType = \"update\";\n }\n isMutateFn = true;\n break;\n }\n const result = origMethod.apply(target, args);\n if (isMutateFn && changeSplice) {\n if (prop === \"splice\") {\n this.next({\n type: changeType,\n index,\n items: itemsToEmit\n });\n } else {\n this.next({\n type: changeType,\n index,\n items: args\n });\n }\n }\n return result;\n };\n }\n return Reflect.get(target, prop, receiver);\n }, \"get\"),\n set: /* @__PURE__ */ __name((target, prop, value) => {\n const index = !isNaN(Number(prop)) ? Number(prop) : void 0;\n target[prop] = value;\n this.next({\n type: \"update\",\n index,\n items: [\n value\n ]\n });\n return true;\n }, \"set\")\n });\n }\n get items() {\n return this._items;\n }\n set items(newItems) {\n this.createProxy(newItems);\n this.next({\n type: \"reset\",\n items: newItems\n });\n }\n};\nvar isArraySubject = /* @__PURE__ */ __name((value) => {\n return \"_items\" in value;\n}, \"isArraySubject\");\n\n// src/ObjectSubject.ts\nimport { BehaviorSubject as BehaviorSubject2 } from \"rxjs\";\nvar ObjectSubject = class extends BehaviorSubject2 {\n static {\n __name(this, \"ObjectSubject\");\n }\n _obj;\n constructor(obj = {}) {\n super({\n type: \"init\",\n value: obj\n });\n this.createProxy(obj);\n }\n createProxy(obj) {\n this._obj = new Proxy(obj, {\n get: /* @__PURE__ */ __name((target, prop, receiver) => {\n return Reflect.get(target, prop, receiver);\n }, \"get\"),\n set: /* @__PURE__ */ __name((target, prop, value, receiver) => {\n const key = prop;\n const changeType = key in target ? \"update\" : \"add\";\n target[key] = value;\n this.next({\n type: changeType,\n key,\n value\n });\n return true;\n }, \"set\"),\n deleteProperty: /* @__PURE__ */ __name((target, prop) => {\n const key = prop;\n if (key in target) {\n const value = target[key];\n delete target[key];\n this.next({\n type: \"remove\",\n key,\n value\n });\n return true;\n }\n return false;\n }, \"deleteProperty\")\n });\n }\n get obj() {\n return this._obj;\n }\n set obj(newObj) {\n this.createProxy(newObj);\n this.next({\n type: \"reset\",\n value: newObj\n });\n }\n};\nvar isObjectSubject = /* @__PURE__ */ __name((value) => {\n return \"_obj\" in value;\n}, \"isObjectSubject\");\n\n// src/signal.ts\nimport { BehaviorSubject as BehaviorSubject3, combineLatest, filter, finalize, map, Observable } from \"rxjs\";\nvar getGlobalReactiveStore = /* @__PURE__ */ __name(() => {\n const globalKey = \"__REACTIVE_STORE__\";\n if (typeof globalThis !== \"undefined\") {\n if (!globalThis[globalKey]) {\n globalThis[globalKey] = {\n currentDependencyTracker: null,\n currentSubscriptionsTracker: null\n };\n }\n return globalThis[globalKey];\n }\n let globalObj;\n if (typeof window !== \"undefined\") {\n globalObj = window;\n } else if (typeof process !== \"undefined\" && process.versions && process.versions.node) {\n globalObj = Function(\"return this\")();\n } else if (typeof self !== \"undefined\") {\n globalObj = self;\n } else {\n console.warn(\"Unable to find global object, using local instance\");\n return {\n currentDependencyTracker: null,\n currentSubscriptionsTracker: null\n };\n }\n if (!globalObj[globalKey]) {\n globalObj[globalKey] = {\n currentDependencyTracker: null,\n currentSubscriptionsTracker: null\n };\n }\n return globalObj[globalKey];\n}, \"getGlobalReactiveStore\");\nvar reactiveStore = getGlobalReactiveStore();\nvar trackDependency = /* @__PURE__ */ __name((signal2) => {\n if (reactiveStore.currentDependencyTracker) {\n reactiveStore.currentDependencyTracker(signal2);\n }\n}, \"trackDependency\");\nfunction signal(defaultValue, options) {\n let subject;\n if (Array.isArray(defaultValue)) {\n subject = new ArraySubject(defaultValue);\n } else if (typeof defaultValue === \"object\" && defaultValue !== null) {\n subject = new ObjectSubject(defaultValue);\n } else {\n subject = new BehaviorSubject3(defaultValue);\n }\n const getValue = /* @__PURE__ */ __name(() => {\n if (subject instanceof ArraySubject) {\n return subject.items;\n } else if (subject instanceof ObjectSubject) {\n return subject.obj;\n }\n return subject.value;\n }, \"getValue\");\n const fn = /* @__PURE__ */ __name(function() {\n trackDependency(fn);\n return getValue();\n }, \"fn\");\n fn.set = (value) => {\n const currentValue = getValue();\n let shouldEmit = true;\n if (options?.equal) {\n shouldEmit = !options.equal(currentValue, value);\n } else {\n shouldEmit = currentValue !== value;\n }\n if (shouldEmit) {\n if (subject instanceof ArraySubject) {\n subject.items = value;\n } else if (subject instanceof ObjectSubject) {\n subject.obj = value;\n } else {\n subject.next(value);\n }\n }\n };\n fn._isFrozen = false;\n fn.freeze = () => {\n fn._isFrozen = true;\n };\n fn.unfreeze = () => {\n fn._isFrozen = false;\n if (subject instanceof ArraySubject) {\n subject.next({\n type: \"init\",\n items: subject.items\n });\n } else if (subject instanceof ObjectSubject) {\n subject.next({\n type: \"init\",\n value: subject.obj\n });\n } else {\n subject.next(subject.value);\n }\n };\n fn.mutate = (mutateFn) => {\n const value = getValue();\n mutateFn(value);\n };\n fn.update = (updateFn) => {\n const updatedValue = updateFn(getValue());\n fn.set(updatedValue);\n };\n fn.observable = subject.asObservable().pipe(filter(() => !fn._isFrozen));\n fn._subject = subject;\n return fn;\n}\n__name(signal, \"signal\");\nfunction isSignal(value) {\n return !!(value && value.observable);\n}\n__name(isSignal, \"isSignal\");\nfunction isComputed(value) {\n return isSignal(value) && !!value.dependencies;\n}\n__name(isComputed, \"isComputed\");\nfunction computed(computeFunction, disposableFn) {\n const dependencies = /* @__PURE__ */ new Set();\n let init = true;\n let lastComputedValue;\n const previousTracker = reactiveStore.currentDependencyTracker;\n reactiveStore.currentDependencyTracker = (signal2) => {\n dependencies.add(signal2);\n };\n lastComputedValue = computeFunction();\n if (computeFunction[\"isEffect\"]) {\n disposableFn = lastComputedValue;\n }\n reactiveStore.currentDependencyTracker = previousTracker;\n const observables = [\n ...dependencies\n ].map((dep) => {\n if (isComputed(dep) && \"dependencies\" in dep) {\n const computedDep = dep;\n if (computedDep.dependencies.size === 0) {\n return new BehaviorSubject3(computedDep()).asObservable();\n }\n }\n return dep.observable;\n });\n const computedObservable = combineLatest(observables).pipe(filter(() => !init), map(() => computeFunction()), finalize(() => disposableFn?.()));\n const fn = /* @__PURE__ */ __name(function() {\n trackDependency(fn);\n return lastComputedValue;\n }, \"fn\");\n fn.observable = computedObservable;\n fn.subscription = computedObservable.subscribe((value) => {\n lastComputedValue = value;\n });\n fn.dependencies = dependencies;\n reactiveStore.currentSubscriptionsTracker?.(fn.subscription);\n init = false;\n return fn;\n}\n__name(computed, \"computed\");\nfunction linkedSignal(computationOrOptions, simpleOptions) {\n const dependencies = /* @__PURE__ */ new Set();\n let init = true;\n let lastComputedValue;\n let computeFunction;\n let sourceSignal;\n let computationFn;\n let equalFn;\n let previousValue;\n let isOverridden = false;\n let overriddenValue;\n let lastComputedBeforeOverride;\n let depVersion = 0;\n let overrideDepVersion = null;\n if (typeof computationOrOptions === \"function\") {\n computeFunction = computationOrOptions;\n equalFn = simpleOptions?.equal;\n } else {\n const options = computationOrOptions;\n sourceSignal = options.source;\n computationFn = options.computation;\n equalFn = options.equal;\n if (typeof sourceSignal === \"function\" && !isSignal(sourceSignal)) {\n const sourceFn = sourceSignal;\n computeFunction = /* @__PURE__ */ __name(() => {\n const sourceValue = sourceFn();\n if (computationFn.length > 1) {\n const result = computationFn(sourceValue, previousValue);\n previousValue = {\n source: sourceValue,\n value: result\n };\n return result;\n } else {\n const result = computationFn(sourceValue);\n previousValue = {\n source: sourceValue,\n value: result\n };\n return result;\n }\n }, \"computeFunction\");\n } else {\n const source = typeof sourceSignal === \"function\" ? sourceSignal : sourceSignal;\n computeFunction = /* @__PURE__ */ __name(() => {\n const sourceValue = source();\n if (computationFn.length > 1) {\n const result = computationFn(sourceValue, previousValue);\n previousValue = {\n source: sourceValue,\n value: result\n };\n return result;\n } else {\n const result = computationFn(sourceValue);\n previousValue = {\n source: sourceValue,\n value: result\n };\n return result;\n }\n }, \"computeFunction\");\n }\n }\n const previousTracker = reactiveStore.currentDependencyTracker;\n reactiveStore.currentDependencyTracker = (signal2) => {\n dependencies.add(signal2);\n };\n if (sourceSignal && typeof sourceSignal === \"function\" && !isSignal(sourceSignal)) {\n lastComputedValue = computeFunction();\n lastComputedBeforeOverride = lastComputedValue;\n } else if (sourceSignal && isSignal(sourceSignal)) {\n dependencies.add(sourceSignal);\n lastComputedValue = computeFunction();\n lastComputedBeforeOverride = lastComputedValue;\n } else {\n lastComputedValue = computeFunction();\n lastComputedBeforeOverride = lastComputedValue;\n }\n reactiveStore.currentDependencyTracker = previousTracker;\n const subject = new BehaviorSubject3(lastComputedValue);\n const observables = [\n ...dependencies\n ].map((dep) => {\n if (isComputed(dep) && \"dependencies\" in dep) {\n const computedDep = dep;\n if (computedDep.dependencies.size === 0) {\n return new BehaviorSubject3(computedDep()).asObservable();\n }\n }\n return dep.observable;\n });\n let linkedObservable;\n if (observables.length > 0) {\n linkedObservable = combineLatest(observables).pipe(filter(() => !init), map(() => {\n const computed2 = computeFunction();\n if (equalFn) {\n if (!equalFn(lastComputedValue, computed2)) {\n lastComputedValue = computed2;\n isOverridden = false;\n }\n } else {\n if (lastComputedValue !== computed2) {\n lastComputedValue = computed2;\n isOverridden = false;\n }\n }\n return lastComputedValue;\n }));\n } else {\n linkedObservable = subject.asObservable().pipe(filter(() => !init));\n }\n const fn = /* @__PURE__ */ __name(function() {\n trackDependency(fn);\n if (isOverridden && dependencies.size > 0) {\n if (overrideDepVersion !== depVersion) {\n const computed2 = computeFunction();\n isOverridden = false;\n overriddenValue = void 0;\n lastComputedValue = computed2;\n lastComputedBeforeOverride = computed2;\n overrideDepVersion = null;\n return computed2;\n }\n return overriddenValue;\n }\n if (isOverridden) {\n return overriddenValue;\n }\n if (dependencies.size === 0) {\n const computed2 = computeFunction();\n lastComputedValue = computed2;\n lastComputedBeforeOverride = computed2;\n }\n return lastComputedValue;\n }, \"fn\");\n fn.observable = new Observable((observer) => {\n const depSubscription = linkedObservable.subscribe((value) => {\n if (dependencies.size > 0) {\n depVersion++;\n isOverridden = false;\n overrideDepVersion = null;\n lastComputedValue = value;\n lastComputedBeforeOverride = value;\n } else {\n lastComputedValue = value;\n lastComputedBeforeOverride = value;\n }\n observer.next(value);\n });\n let subjectSubscription;\n if (dependencies.size === 0) {\n subjectSubscription = subject.pipe(filter(() => !init)).subscribe((value) => {\n observer.next(value);\n });\n }\n observer.next(lastComputedValue);\n return () => {\n depSubscription.unsubscribe();\n if (subjectSubscription) {\n subjectSubscription.unsubscribe();\n }\n };\n });\n fn.subscription = fn.observable.subscribe(() => {\n });\n fn.dependencies = dependencies;\n fn._subject = subject;\n fn.set = (value) => {\n if (!isOverridden) {\n lastComputedBeforeOverride = lastComputedValue;\n overrideDepVersion = depVersion;\n if (computationFn && sourceSignal) {\n const sourceValue = untracked(() => {\n if (typeof sourceSignal === \"function\") {\n const source = sourceSignal;\n return isSignal(source) ? source() : sourceSignal();\n }\n return sourceSignal();\n });\n previousValue = {\n source: sourceValue,\n value\n };\n }\n }\n isOverridden = true;\n overriddenValue = value;\n lastComputedValue = value;\n subject.next(value);\n };\n reactiveStore.currentSubscriptionsTracker?.(fn.subscription);\n init = false;\n return fn;\n}\n__name(linkedSignal, \"linkedSignal\");\nfunction untracked(fn) {\n const prevDepTracker = reactiveStore.currentDependencyTracker;\n const prevSubTracker = reactiveStore.currentSubscriptionsTracker;\n reactiveStore.currentDependencyTracker = null;\n reactiveStore.currentSubscriptionsTracker = null;\n try {\n return fn();\n } finally {\n reactiveStore.currentDependencyTracker = prevDepTracker;\n reactiveStore.currentSubscriptionsTracker = prevSubTracker;\n }\n}\n__name(untracked, \"untracked\");\n\n// src/effect.ts\nfunction effect(fn) {\n fn[\"isEffect\"] = true;\n return computed(fn);\n}\n__name(effect, \"effect\");\nexport {\n ArraySubject,\n ObjectSubject,\n computed,\n effect,\n isArraySubject,\n isComputed,\n isObjectSubject,\n isSignal,\n linkedSignal,\n signal,\n untracked\n};\n//# sourceMappingURL=index.js.map"],"names":["BehaviorSubject2","BehaviorSubject3"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,8 +1,7 @@
1
- import { dset } from './index48.js';
2
- import * as external from './index49.js';
3
- import { createStatesSnapshot, syncClass, generateShortUUID as generateShortUUID$1, load, id, sync, persist, getByPath, DELETE_TOKEN } from './index28.js';
4
- import { signal } from './index45.js';
5
- import { object as objectType, number as numberType, boolean as booleanType, enum as enumType, string as stringType } from './index50.js';
1
+ import { dset } from '../../../../../dset@3.1.4/node_modules/dset/dist/index.js';
2
+ import z from '../../../../../zod@3.24.2/node_modules/zod/lib/index.js';
3
+ import { createStatesSnapshot, syncClass, generateShortUUID as generateShortUUID$1, load, id, sync, persist, getByPath, DELETE_TOKEN } from '../../../../../@signe_sync@2.6.0/node_modules/@signe/sync/dist/index.js';
4
+ import { signal } from '../../../../../@signe_reactive@2.6.0/node_modules/@signe/reactive/dist/index.js';
6
5
 
7
6
  var __defProp = Object.defineProperty;
8
7
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
@@ -445,9 +444,9 @@ function createCorsInterceptor(options = {}) {
445
444
  __name(createCorsInterceptor, "createCorsInterceptor");
446
445
 
447
446
  // src/server.ts
448
- var Message = external.object({
449
- action: external.string(),
450
- value: external.any()
447
+ var Message = z.object({
448
+ action: z.string(),
449
+ value: z.any()
451
450
  });
452
451
  var Server = class {
453
452
  static {
@@ -2166,38 +2165,38 @@ function _ts_metadata(k, v) {
2166
2165
  }
2167
2166
  __name(_ts_metadata, "_ts_metadata");
2168
2167
  var MAX_PLAYERS_PER_SHARD = 75;
2169
- objectType({
2170
- name: stringType(),
2171
- balancingStrategy: enumType([
2168
+ z.object({
2169
+ name: z.string(),
2170
+ balancingStrategy: z.enum([
2172
2171
  "round-robin",
2173
2172
  "least-connections",
2174
2173
  "random"
2175
2174
  ]),
2176
- public: booleanType(),
2177
- maxPlayersPerShard: numberType().int().positive(),
2178
- minShards: numberType().int().min(0),
2179
- maxShards: numberType().int().positive().optional()
2175
+ public: z.boolean(),
2176
+ maxPlayersPerShard: z.number().int().positive(),
2177
+ minShards: z.number().int().min(0),
2178
+ maxShards: z.number().int().positive().optional()
2180
2179
  });
2181
- objectType({
2182
- shardId: stringType(),
2183
- roomId: stringType(),
2184
- url: stringType().url(),
2185
- maxConnections: numberType().int().positive()
2180
+ z.object({
2181
+ shardId: z.string(),
2182
+ roomId: z.string(),
2183
+ url: z.string().url(),
2184
+ maxConnections: z.number().int().positive()
2186
2185
  });
2187
- objectType({
2188
- connections: numberType().int().min(0),
2189
- status: enumType([
2186
+ z.object({
2187
+ connections: z.number().int().min(0),
2188
+ status: z.enum([
2190
2189
  "active",
2191
2190
  "maintenance",
2192
2191
  "draining"
2193
2192
  ]).optional()
2194
2193
  });
2195
- objectType({
2196
- roomId: stringType(),
2197
- targetShardCount: numberType().int().positive(),
2198
- shardTemplate: objectType({
2199
- urlTemplate: stringType(),
2200
- maxConnections: numberType().int().positive()
2194
+ z.object({
2195
+ roomId: z.string(),
2196
+ targetShardCount: z.number().int().positive(),
2197
+ shardTemplate: z.object({
2198
+ urlTemplate: z.string(),
2199
+ maxConnections: z.number().int().positive()
2201
2200
  }).optional()
2202
2201
  });
2203
2202
  var RoomConfig = class RoomConfig2 {
@@ -2630,4 +2629,4 @@ function createRequireSessionGuard(storage) {
2630
2629
  __name(createRequireSessionGuard, "createRequireSessionGuard");
2631
2630
 
2632
2631
  export { Action, ClientIo, Guard, MockConnection, Request2 as Request, Room, RoomGuard, Server, ServerIo, ServerResponse, Shard, WorldRoom, createRequireSessionGuard, request, testRoom, tick };
2633
- //# sourceMappingURL=index32.js.map
2632
+ //# sourceMappingURL=index.js.map