@rpgjs/client 5.0.0-alpha.10 → 5.0.0-alpha.3

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 (115) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/Game/EffectManager.d.ts +5 -0
  3. package/dist/RpgClient.d.ts +68 -99
  4. package/dist/RpgClientEngine.d.ts +4 -86
  5. package/dist/components/effects/index.d.ts +4 -0
  6. package/dist/components/index.d.ts +1 -2
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.js +1 -2
  9. package/dist/index.js.map +1 -1
  10. package/dist/index10.js +1 -1
  11. package/dist/index11.js +4 -4
  12. package/dist/index11.js.map +1 -1
  13. package/dist/index12.js +2 -6
  14. package/dist/index12.js.map +1 -1
  15. package/dist/index13.js +2 -2
  16. package/dist/index13.js.map +1 -1
  17. package/dist/index14.js +35 -95
  18. package/dist/index14.js.map +1 -1
  19. package/dist/index15.js +186 -45
  20. package/dist/index15.js.map +1 -1
  21. package/dist/index16.js +5 -187
  22. package/dist/index16.js.map +1 -1
  23. package/dist/index17.js +383 -5
  24. package/dist/index17.js.map +1 -1
  25. package/dist/index18.js +28 -384
  26. package/dist/index18.js.map +1 -1
  27. package/dist/index19.js +17 -24
  28. package/dist/index19.js.map +1 -1
  29. package/dist/index2.js +25 -147
  30. package/dist/index2.js.map +1 -1
  31. package/dist/index20.js +2413 -16
  32. package/dist/index20.js.map +1 -1
  33. package/dist/index21.js +88 -2395
  34. package/dist/index21.js.map +1 -1
  35. package/dist/index22.js +103 -108
  36. package/dist/index22.js.map +1 -1
  37. package/dist/index23.js +57 -95
  38. package/dist/index23.js.map +1 -1
  39. package/dist/index24.js +12 -62
  40. package/dist/index24.js.map +1 -1
  41. package/dist/index25.js +37 -18
  42. package/dist/index25.js.map +1 -1
  43. package/dist/index26.js +3 -25
  44. package/dist/index26.js.map +1 -1
  45. package/dist/index27.js +314 -87
  46. package/dist/index27.js.map +1 -1
  47. package/dist/index28.js +21 -37
  48. package/dist/index28.js.map +1 -1
  49. package/dist/index29.js +9 -3
  50. package/dist/index29.js.map +1 -1
  51. package/dist/index3.js +2 -2
  52. package/dist/index30.js +6 -317
  53. package/dist/index30.js.map +1 -1
  54. package/dist/index31.js +171 -24
  55. package/dist/index31.js.map +1 -1
  56. package/dist/index32.js +497 -7
  57. package/dist/index32.js.map +1 -1
  58. package/dist/index33.js +9 -8
  59. package/dist/index33.js.map +1 -1
  60. package/dist/index34.js +4400 -9
  61. package/dist/index34.js.map +1 -1
  62. package/dist/index35.js +85 -4397
  63. package/dist/index35.js.map +1 -1
  64. package/dist/index36.js +55 -310
  65. package/dist/index36.js.map +1 -1
  66. package/dist/index37.js +15 -169
  67. package/dist/index37.js.map +1 -1
  68. package/dist/index38.js +15 -496
  69. package/dist/index38.js.map +1 -1
  70. package/dist/index4.js +5 -18
  71. package/dist/index4.js.map +1 -1
  72. package/dist/index5.js +1 -2
  73. package/dist/index5.js.map +1 -1
  74. package/dist/index6.js +1 -1
  75. package/dist/index7.js +2 -10
  76. package/dist/index7.js.map +1 -1
  77. package/dist/index8.js +6 -24
  78. package/dist/index8.js.map +1 -1
  79. package/dist/index9.js +2 -2
  80. package/dist/presets/index.d.ts +0 -102
  81. package/dist/services/loadMap.d.ts +2 -123
  82. package/dist/services/mmorpg.d.ts +3 -7
  83. package/package.json +12 -14
  84. package/src/Game/{AnimationManager.ts → EffectManager.ts} +2 -2
  85. package/src/Game/Object.ts +0 -69
  86. package/src/RpgClient.ts +67 -101
  87. package/src/RpgClientEngine.ts +24 -159
  88. package/src/components/character.ce +33 -74
  89. package/src/components/{animations → effects}/animation.ce +5 -3
  90. package/src/components/{animations → effects}/index.ts +1 -1
  91. package/src/components/index.ts +1 -2
  92. package/src/components/scenes/draw-map.ce +23 -6
  93. package/src/components/scenes/element-map.ce +23 -0
  94. package/src/components/scenes/event-layer.ce +3 -3
  95. package/src/core/setup.ts +0 -2
  96. package/src/index.ts +1 -1
  97. package/src/module.ts +5 -23
  98. package/src/presets/index.ts +1 -5
  99. package/src/services/loadMap.ts +2 -131
  100. package/src/services/mmorpg.ts +4 -20
  101. package/tsconfig.json +1 -1
  102. package/vite.config.ts +1 -1
  103. package/dist/Game/AnimationManager.d.ts +0 -8
  104. package/dist/components/animations/index.d.ts +0 -4
  105. package/dist/index39.js +0 -61
  106. package/dist/index39.js.map +0 -1
  107. package/dist/index40.js +0 -20
  108. package/dist/index40.js.map +0 -1
  109. package/dist/index41.js +0 -82
  110. package/dist/index41.js.map +0 -1
  111. package/dist/presets/animation.d.ts +0 -31
  112. package/dist/presets/lpc.d.ts +0 -89
  113. package/src/presets/animation.ts +0 -46
  114. package/src/presets/lpc.ts +0 -108
  115. /package/src/components/{animations → effects}/hit.ce +0 -0
package/dist/index14.js CHANGED
@@ -1,108 +1,48 @@
1
- import { useProps, useDefineProps, computed, signal, effect, mount, tick, h, Container, loop, Sprite } from 'canvasengine';
2
- import { Particle } from '@canvasengine/presets';
3
- import { Direction, ModulesToken } from '@rpgjs/common';
4
- import { RpgClientEngine } from './index2.js';
1
+ import { useProps, useDefineProps, computed, effect, h, Canvas, loop, Viewport, cond, Container } from 'canvasengine';
5
2
  import { inject } from './index6.js';
3
+ import { RpgClientEngine } from './index2.js';
4
+ import component$1 from './index28.js';
5
+ import { RpgGui } from './index9.js';
6
6
 
7
7
  function component($$props) {
8
8
  useProps($$props);
9
- const defineProps = useDefineProps($$props);
10
- var _a = defineProps(), object = _a.object, id = _a.id;
11
- var client = inject(RpgClientEngine);
12
- var hooks = inject(ModulesToken);
13
- var spritesheets = client.spritesheets;
14
- var playerId = client.playerId;
15
- var componentsBehind = client.spriteComponentsBehind;
16
- var componentsInFront = client.spriteComponentsInFront;
17
- var isMe = computed(function () { return id() === playerId; });
18
- var x = object.x, y = object.y, tint = object.tint, direction = object.direction, animationName = object.animationName, animationCurrentIndex = object.animationCurrentIndex, emitParticleTrigger = object.emitParticleTrigger, particleName = object.particleName, graphics = object.graphics, hitbox = object.hitbox;
19
- var particleSettings = client.particleSettings;
20
- var canControls = function () { return isMe() && object.canMove(); };
21
- var keyboardControls = client.globalConfig.keyboardControls;
22
- var controls = signal({
23
- down: {
24
- repeat: true,
25
- bind: keyboardControls.down,
26
- keyDown: function () {
27
- if (canControls())
28
- client.processInput({ input: Direction.Down });
29
- },
30
- },
31
- up: {
32
- repeat: true,
33
- bind: keyboardControls.up,
34
- keyDown: function () {
35
- if (canControls())
36
- client.processInput({ input: Direction.Up });
37
- },
38
- },
39
- left: {
40
- repeat: true,
41
- bind: keyboardControls.left,
42
- keyDown: function () {
43
- if (canControls())
44
- client.processInput({ input: Direction.Left });
45
- },
46
- },
47
- right: {
48
- repeat: true,
49
- bind: keyboardControls.right,
50
- keyDown: function () {
51
- if (canControls())
52
- client.processInput({ input: Direction.Right });
53
- },
54
- },
55
- action: {
56
- bind: keyboardControls.action,
57
- keyDown: function () {
58
- if (canControls()) {
59
- client.processAction({ action: 'action' });
60
- // particleName.set('hit')
61
- // emitParticleTrigger.start()
62
- // object.flash('red')
63
- }
64
- },
65
- },
66
- });
67
- var sheet = function (graphicId) {
68
- return {
69
- definition: spritesheets.get(graphicId),
70
- playing: animationName,
71
- params: {
72
- direction: direction
73
- },
74
- onFinish: function () {
75
- animationCurrentIndex.update(function (index) { return index + 1; });
9
+ useDefineProps($$props);
10
+ var __assign = (this && this.__assign) || function () {
11
+ __assign = Object.assign || function(t) {
12
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
13
+ s = arguments[i];
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
15
+ t[p] = s[p];
76
16
  }
17
+ return t;
77
18
  };
19
+ return __assign.apply(this, arguments);
78
20
  };
79
- var previousAnimationName = animationName();
21
+ var engine = inject(RpgClientEngine);
22
+ var guiService = inject(RpgGui);
23
+ var sceneData = engine.sceneMap.data;
24
+ var gui = guiService.gui;
25
+ var worldWidth = computed(function () { var _a; return (_a = sceneData()) === null || _a === void 0 ? void 0 : _a.width; });
26
+ var worldHeight = computed(function () { var _a; return (_a = sceneData()) === null || _a === void 0 ? void 0 : _a.height; });
80
27
  effect(function () {
81
- var currentAnimationName = animationName();
82
- // If animation changed externally (not through setAnimation), reset the state
83
- if (currentAnimationName !== previousAnimationName && object.animationIsPlaying && object.animationIsPlaying()) {
84
- // Check if this is a movement animation (walk, stand) that should interrupt custom animations
85
- var movementAnimations = ['walk', 'stand'];
86
- if (movementAnimations.includes(currentAnimationName)) {
87
- if (typeof object.resetAnimationState === 'function') {
88
- object.resetAnimationState();
89
- }
90
- }
28
+ if (sceneData() && !sceneData().component) {
29
+ throw new Error("Warning ! You need to define a component for the scene. Use provideLoadMap() to define a component for the scene.");
91
30
  }
92
- previousAnimationName = currentAnimationName;
93
- });
94
- mount(function (element) {
95
- hooks.callHooks("client-sprite-onInit", element.componentInstance);
96
- hooks.callHooks("client-sceneMap-onAddSprite", client.sceneMap, element.componentInstance);
97
- return function () {
98
- hooks.callHooks("client-sprite-onDestroy", element.componentInstance);
99
- hooks.callHooks("client-sceneMap-onRemoveSprite", client.sceneMap, element.componentInstance);
100
- };
101
- });
102
- tick(function () {
103
- hooks.callHooks("client-sprite-onUpdate");
104
31
  });
105
- let $this = h(Container, { x, y, zIndex: y, viewportFollow: isMe, controls }, [loop(componentsBehind, component => h(Container, null, h(component, { object }))), h(Particle, { emit: emitParticleTrigger, settings: particleSettings, zIndex: 1000, name: particleName }), h(Container, null, loop(graphics, graphicId => h(Sprite, { sheet: sheet(graphicId), direction, tint, hitbox }))), loop(componentsInFront, component => h(Container, null, h(component, { object })))]);
32
+ var onGuiFinish = function (gui, data) {
33
+ guiService.guiClose(gui.name, data);
34
+ };
35
+ var onGuiInteraction = function (gui, name, data) {
36
+ guiService.guiInteraction(gui.name, name, data);
37
+ };
38
+ var clamp = {
39
+ direction: "all"
40
+ };
41
+ let $this = h(Canvas, { width: computed(() => engine.width()), height: computed(() => engine.height()) }, [h(Viewport, { worldWidth, worldHeight, clamp }, cond(sceneData, () => h(component$1))), loop(gui, gui => h(Container, { display: 'flex' }, cond(gui.display, () => h(gui.component, { ...gui.data(), onFinish: (data) => {
42
+ onGuiFinish(gui, data);
43
+ }, onInteraction: (name, data) => {
44
+ onGuiInteraction(gui, name, data);
45
+ } }))))]);
106
46
  return $this
107
47
  }
108
48
 
@@ -1 +1 @@
1
- {"version":3,"file":"index14.js","sources":["../src/components/character.ce"],"sourcesContent":["<Container x y zIndex={y} viewportFollow={isMe} controls>\n @for (component of componentsBehind) {\n <Container>\n <component object />\n </Container>\n } \n <Particle emit={@emitParticleTrigger} settings={@particleSettings} zIndex={1000} name={particleName} />\n <Container>\n @for (graphicId of graphics) {\n <Sprite sheet={@sheet(@graphicId)} direction tint hitbox />\n }\n </Container>\n @for (component of componentsInFront) {\n <Container>\n <component object />\n </Container>\n } \n</Container>\n\n<script>\n import { signal, effect, mount, computed, tick } from \"canvasengine\";\n import { Particle } from \"@canvasengine/presets\";\n import { GameEngineToken, ModulesToken } from \"@rpgjs/common\";\n import { RpgClientEngine } from \"../RpgClientEngine\";\n import { inject } from \"../core/inject\"; \n import { Direction } from \"@rpgjs/common\";\n import Hit from \"./effects/hit.ce\";\n\n const { object, id } = defineProps();\n \n const client = inject(RpgClientEngine);\n const hooks = inject(ModulesToken);\n\n const spritesheets = client.spritesheets;\n const playerId = client.playerId;\n const componentsBehind = client.spriteComponentsBehind;\n const componentsInFront = client.spriteComponentsInFront;\n const isMe = computed(() => id() === playerId);\n\n const { \n x, \n y, \n tint, \n direction, \n animationName, \n animationCurrentIndex,\n emitParticleTrigger, \n particleName, \n graphics, \n hitbox \n } = object;\n\n const particleSettings = client.particleSettings;\n\n const canControls = () => isMe() && object.canMove()\n const keyboardControls = client.globalConfig.keyboardControls;\n\n const controls = signal({\n down: {\n repeat: true,\n bind: keyboardControls.down,\n keyDown() {\n if (canControls()) client.processInput({ input: Direction.Down })\n },\n },\n up: {\n repeat: true,\n bind: keyboardControls.up,\n keyDown() {\n if (canControls()) client.processInput({ input: Direction.Up })\n },\n },\n left: {\n repeat: true,\n bind: keyboardControls.left,\n keyDown() {\n if (canControls()) client.processInput({ input: Direction.Left })\n },\n },\n right: {\n repeat: true,\n bind: keyboardControls.right,\n keyDown() {\n if (canControls()) client.processInput({ input: Direction.Right })\n },\n },\n action: {\n bind: keyboardControls.action,\n keyDown() {\n if (canControls()) {\n client.processAction({ action: 'action' })\n // particleName.set('hit') \n // emitParticleTrigger.start()\n // object.flash('red')\n }\n },\n },\n });\n\n const sheet = (graphicId) => {\n return {\n definition: spritesheets.get(graphicId),\n playing: animationName,\n params: {\n direction\n },\n onFinish() {\n animationCurrentIndex.update(index => index + 1)\n }\n };\n }\n\n // Track animation changes to reset animation state when needed\n let previousAnimationName = animationName();\n effect(() => {\n const currentAnimationName = animationName();\n \n // If animation changed externally (not through setAnimation), reset the state\n if (currentAnimationName !== previousAnimationName && object.animationIsPlaying && object.animationIsPlaying()) {\n // Check if this is a movement animation (walk, stand) that should interrupt custom animations\n const movementAnimations = ['walk', 'stand'];\n if (movementAnimations.includes(currentAnimationName)) {\n if (typeof object.resetAnimationState === 'function') {\n object.resetAnimationState();\n }\n }\n }\n \n previousAnimationName = currentAnimationName;\n });\n\n mount((element) => {\n hooks.callHooks(\"client-sprite-onInit\", element.componentInstance)\n hooks.callHooks(\"client-sceneMap-onAddSprite\", client.sceneMap, element.componentInstance)\n\n return () => {\n hooks.callHooks(\"client-sprite-onDestroy\", element.componentInstance)\n hooks.callHooks(\"client-sceneMap-onRemoveSprite\", client.sceneMap, element.componentInstance)\n }\n })\n\n tick(() => {\n hooks.callHooks(\"client-sprite-onUpdate\")\n })\n</script>"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index14.js","sources":["../src/components/scenes/canvas.ce"],"sourcesContent":["<Canvas width={@engine.width} height={@engine.height}>\n <Viewport worldWidth worldHeight clamp>\n @if (sceneData) {\n <SceneMap />\n }\n </Viewport>\n @for (gui of gui) {\n <Container display=\"flex\">\n @if (gui.display) {\n <gui.component ...gui.data() onFinish={(data) => {\n onGuiFinish(gui, data)\n }} onInteraction={(name, data) => {\n onGuiInteraction(gui, name, data)\n }} /> \n }\n </Container>\n } \n</Canvas>\n\n<script>\n import { signal, computed, effect } from \"canvasengine\";\n import { inject } from \"../../core/inject\";\n import { RpgClientEngine } from \"../../RpgClientEngine\";\n import SceneMap from './draw-map.ce'\n import { RpgGui } from \"../../Gui/Gui\";\n\n const engine = inject(RpgClientEngine);\n const guiService = inject(RpgGui);\n const sceneData = engine.sceneMap.data\n const gui = guiService.gui\n const worldWidth = computed(() => sceneData()?.width)\n const worldHeight = computed(() => sceneData()?.height)\n\n effect(() => {\n if (sceneData() && !sceneData().component) {\n throw new Error(\"Warning ! You need to define a component for the scene. Use provideLoadMap() to define a component for the scene.\")\n }\n })\n\n const onGuiFinish = (gui, data) => {\n guiService.guiClose(gui.name, data)\n }\n\n const onGuiInteraction = (gui, name, data) => {\n guiService.guiInteraction(gui.name, name, data)\n }\n \n const clamp = {\n direction: \"all\"\n }\n</script>\n"],"names":["SceneMap"],"mappings":"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"}
package/dist/index15.js CHANGED
@@ -1,50 +1,191 @@
1
- import { useProps, useDefineProps, computed, effect, h, Canvas, loop, Viewport, cond, Container } from 'canvasengine';
2
- import { inject } from './index6.js';
3
- import { RpgClientEngine } from './index2.js';
4
- import component$1 from './index31.js';
5
- import { RpgGui } from './index9.js';
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
3
 
7
- function component($$props) {
8
- useProps($$props);
9
- useDefineProps($$props);
10
- var __assign = (this && this.__assign) || function () {
11
- __assign = Object.assign || function(t) {
12
- for (var s, i = 1, n = arguments.length; i < n; i++) {
13
- s = arguments[i];
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
15
- t[p] = s[p];
4
+ // src/inject.ts
5
+ function provide(context, name, value) {
6
+ context.set("inject:" + name, value);
7
+ return value;
8
+ }
9
+ __name(provide, "provide");
10
+ function isInjected(context, name) {
11
+ return context.get("injected:" + name) === true;
12
+ }
13
+ __name(isInjected, "isInjected");
14
+ function isProvided(context, name) {
15
+ return context.get("inject:" + name) !== void 0;
16
+ }
17
+ __name(isProvided, "isProvided");
18
+ function inject(context, service, args = []) {
19
+ const isClass = typeof service === "function";
20
+ const name = isClass ? service.name : service;
21
+ const value = context.get("inject:" + name);
22
+ if (value) {
23
+ context.set("injected:" + name, true);
24
+ return value;
25
+ }
26
+ throw new Error(`Injection provider ${name} not found`);
27
+ }
28
+ __name(inject, "inject");
29
+ function override(providers, newProvider, options) {
30
+ let { upsert = false, key } = options ?? {};
31
+ if (!key) {
32
+ key = typeof newProvider === "function" ? newProvider.name : newProvider.provide;
33
+ }
34
+ const flatProviders = providers.flat();
35
+ const exists = flatProviders.some((provider) => {
36
+ if (typeof provider === "function") {
37
+ return provider.name === key;
38
+ } else if (typeof provider === "object") {
39
+ return provider.provide === key;
40
+ }
41
+ return false;
42
+ });
43
+ const mappedProviders = flatProviders.map((provider) => {
44
+ if (typeof provider === "function" && provider.name === key) {
45
+ return newProvider;
46
+ } else if (typeof provider === "object" && provider.provide === key) {
47
+ return newProvider;
48
+ }
49
+ return provider;
50
+ });
51
+ if (upsert && !exists) {
52
+ mappedProviders.push(newProvider);
53
+ }
54
+ return mappedProviders;
55
+ }
56
+ __name(override, "override");
57
+ function findProviders(providers, name) {
58
+ const results = [];
59
+ for (const provider of providers) {
60
+ if (Array.isArray(provider)) {
61
+ results.push(...findProviders(provider, name));
62
+ } else if (findProvider(provider, name)) {
63
+ results.push(provider);
64
+ }
65
+ }
66
+ return results;
67
+ }
68
+ __name(findProviders, "findProviders");
69
+ function findProvider(providers, name) {
70
+ if (!Array.isArray(providers)) {
71
+ if (typeof providers === "object" && "provide" in providers) {
72
+ const provider = providers;
73
+ const providerName = typeof provider.provide === "function" ? provider.provide.name : provider.provide;
74
+ if (name instanceof RegExp) {
75
+ if (name.test(providerName)) return providers;
76
+ } else {
77
+ if (providerName === name) return providers;
78
+ }
79
+ }
80
+ return null;
81
+ }
82
+ for (const provider of providers) {
83
+ if (Array.isArray(provider)) {
84
+ const found = findProvider(provider, name);
85
+ if (found) return found;
86
+ continue;
87
+ }
88
+ if (typeof provider === "object" && "provide" in provider) {
89
+ const providerName = typeof provider.provide === "function" ? provider.provide.name : provider.provide;
90
+ if (name instanceof RegExp) {
91
+ if (name.test(providerName)) return provider;
92
+ } else {
93
+ if (providerName === name) return provider;
94
+ }
95
+ }
96
+ }
97
+ return null;
98
+ }
99
+ __name(findProvider, "findProvider");
100
+
101
+ // src/merge-config.ts
102
+ function processProvider(mergedConfig, baseConfig, provider) {
103
+ if (Array.isArray(provider)) {
104
+ for (const nestedProvider of provider) {
105
+ processProvider(mergedConfig, baseConfig, nestedProvider);
106
+ }
107
+ return;
108
+ }
109
+ const existingProvider = findProvider(baseConfig.providers, provider.provide);
110
+ if (existingProvider) {
111
+ mergedConfig.providers = override(mergedConfig.providers, provider);
112
+ } else {
113
+ mergedConfig.providers.push(provider);
114
+ }
115
+ }
116
+ __name(processProvider, "processProvider");
117
+ function mergeConfig(baseConfig, config) {
118
+ const mergedConfig = {
119
+ ...baseConfig,
120
+ ...config,
121
+ providers: [
122
+ ...baseConfig.providers
123
+ ]
124
+ // Start with a copy of base providers
125
+ };
126
+ for (const provider of config.providers) {
127
+ processProvider(mergedConfig, baseConfig, provider);
128
+ }
129
+ return mergedConfig;
130
+ }
131
+ __name(mergeConfig, "mergeConfig");
132
+
133
+ // src/provider.ts
134
+ async function injector(context, providers) {
135
+ providers = providers.flat();
136
+ for (const provider of providers) {
137
+ let token;
138
+ let instance;
139
+ if (typeof provider === "function") {
140
+ token = provider;
141
+ instance = new provider(context);
142
+ } else {
143
+ token = provider.provide;
144
+ const provideUserClass = provider.useClass;
145
+ const isClass = typeof provideUserClass === "function";
146
+ if (isClass) {
147
+ instance = new provideUserClass(context);
148
+ } else if ("useValue" in provider) {
149
+ instance = provider.useValue;
150
+ } else if ("useFactory" in provider) {
151
+ instance = provider.useFactory?.(context);
152
+ if (instance instanceof Promise) {
153
+ instance = await instance;
16
154
  }
17
- return t;
18
- };
19
- return __assign.apply(this, arguments);
20
- };
21
- var engine = inject(RpgClientEngine);
22
- var guiService = inject(RpgGui);
23
- var sceneData = engine.sceneMap.data;
24
- var gui = guiService.gui;
25
- var worldWidth = computed(function () { var _a; return (_a = sceneData()) === null || _a === void 0 ? void 0 : _a.width; });
26
- var worldHeight = computed(function () { var _a; return (_a = sceneData()) === null || _a === void 0 ? void 0 : _a.height; });
27
- effect(function () {
28
- if (sceneData() && !sceneData().component) {
29
- throw new Error("Warning ! You need to define a component for the scene. Use provideLoadMap() to define a component for the scene.");
30
- }
31
- });
32
- var onGuiFinish = function (gui, data) {
33
- guiService.guiClose(gui.name, data);
34
- };
35
- var onGuiInteraction = function (gui, name, data) {
36
- guiService.guiInteraction(gui.name, name, data);
37
- };
38
- var clamp = {
39
- direction: "all"
40
- };
41
- let $this = h(Canvas, { width: computed(() => engine.width()), height: computed(() => engine.height()) }, [h(Viewport, { worldWidth, worldHeight, clamp }, cond(sceneData, () => h(component$1))), loop(gui, gui => h(Container, { display: 'flex' }, cond(gui.display, () => h(gui.component, { ...gui.data(), onFinish: (data) => {
42
- onGuiFinish(gui, data);
43
- }, onInteraction: (name, data) => {
44
- onGuiInteraction(gui, name, data);
45
- } }))))]);
46
- return $this
155
+ } else if ("useExisting" in provider) {
156
+ instance = inject(context, provider.useExisting);
47
157
  }
158
+ }
159
+ const name = typeof token === "function" ? token.name : token;
160
+ provide(context, name, instance);
161
+ }
162
+ }
163
+ __name(injector, "injector");
164
+
165
+ // src/context.ts
166
+ var Context = class {
167
+ static {
168
+ __name(this, "Context");
169
+ }
170
+ /** Internal storage for injected values */
171
+ values = {};
172
+ /**
173
+ * Sets a value in the context
174
+ * @param key - Unique identifier for the value
175
+ * @param value - Value to store
176
+ */
177
+ set(key, value) {
178
+ this.values[key] = value;
179
+ }
180
+ /**
181
+ * Retrieves a value from the context
182
+ * @param key - Unique identifier for the value
183
+ * @returns The stored value or undefined if not found
184
+ */
185
+ get(key) {
186
+ return this.values[key];
187
+ }
188
+ };
48
189
 
49
- export { component as default };
190
+ export { Context, findProvider, findProviders, inject, injector, isInjected, isProvided, mergeConfig, override, provide };
50
191
  //# sourceMappingURL=index15.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index15.js","sources":["../src/components/scenes/canvas.ce"],"sourcesContent":["<Canvas width={@engine.width} height={@engine.height}>\n <Viewport worldWidth worldHeight clamp>\n @if (sceneData) {\n <SceneMap />\n }\n </Viewport>\n @for (gui of gui) {\n <Container display=\"flex\">\n @if (gui.display) {\n <gui.component ...gui.data() onFinish={(data) => {\n onGuiFinish(gui, data)\n }} onInteraction={(name, data) => {\n onGuiInteraction(gui, name, data)\n }} /> \n }\n </Container>\n } \n</Canvas>\n\n<script>\n import { signal, computed, effect } from \"canvasengine\";\n import { inject } from \"../../core/inject\";\n import { RpgClientEngine } from \"../../RpgClientEngine\";\n import SceneMap from './draw-map.ce'\n import { RpgGui } from \"../../Gui/Gui\";\n\n const engine = inject(RpgClientEngine);\n const guiService = inject(RpgGui);\n const sceneData = engine.sceneMap.data\n const gui = guiService.gui\n const worldWidth = computed(() => sceneData()?.width)\n const worldHeight = computed(() => sceneData()?.height)\n\n effect(() => {\n if (sceneData() && !sceneData().component) {\n throw new Error(\"Warning ! You need to define a component for the scene. Use provideLoadMap() to define a component for the scene.\")\n }\n })\n\n const onGuiFinish = (gui, data) => {\n guiService.guiClose(gui.name, data)\n }\n\n const onGuiInteraction = (gui, name, data) => {\n guiService.guiInteraction(gui.name, name, data)\n }\n \n const clamp = {\n direction: \"all\"\n }\n</script>\n"],"names":["SceneMap"],"mappings":"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"}
1
+ {"version":3,"file":"index15.js","sources":["../../../node_modules/.pnpm/@signe+di@2.3.3/node_modules/@signe/di/dist/index.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\n\n// src/inject.ts\nfunction provide(context, name, value) {\n context.set(\"inject:\" + name, value);\n return value;\n}\n__name(provide, \"provide\");\nfunction isInjected(context, name) {\n return context.get(\"injected:\" + name) === true;\n}\n__name(isInjected, \"isInjected\");\nfunction isProvided(context, name) {\n return context.get(\"inject:\" + name) !== void 0;\n}\n__name(isProvided, \"isProvided\");\nfunction inject(context, service, args = []) {\n const isClass = typeof service === \"function\";\n const name = isClass ? service.name : service;\n const value = context.get(\"inject:\" + name);\n if (value) {\n context.set(\"injected:\" + name, true);\n return value;\n }\n throw new Error(`Injection provider ${name} not found`);\n}\n__name(inject, \"inject\");\nfunction override(providers, newProvider, options) {\n let { upsert = false, key } = options ?? {};\n if (!key) {\n key = typeof newProvider === \"function\" ? newProvider.name : newProvider.provide;\n }\n const flatProviders = providers.flat();\n const exists = flatProviders.some((provider) => {\n if (typeof provider === \"function\") {\n return provider.name === key;\n } else if (typeof provider === \"object\") {\n return provider.provide === key;\n }\n return false;\n });\n const mappedProviders = flatProviders.map((provider) => {\n if (typeof provider === \"function\" && provider.name === key) {\n return newProvider;\n } else if (typeof provider === \"object\" && provider.provide === key) {\n return newProvider;\n }\n return provider;\n });\n if (upsert && !exists) {\n mappedProviders.push(newProvider);\n }\n return mappedProviders;\n}\n__name(override, \"override\");\nfunction findProviders(providers, name) {\n const results = [];\n for (const provider of providers) {\n if (Array.isArray(provider)) {\n results.push(...findProviders(provider, name));\n } else if (findProvider(provider, name)) {\n results.push(provider);\n }\n }\n return results;\n}\n__name(findProviders, \"findProviders\");\nfunction findProvider(providers, name) {\n if (!Array.isArray(providers)) {\n if (typeof providers === \"object\" && \"provide\" in providers) {\n const provider = providers;\n const providerName = typeof provider.provide === \"function\" ? provider.provide.name : provider.provide;\n if (name instanceof RegExp) {\n if (name.test(providerName)) return providers;\n } else {\n if (providerName === name) return providers;\n }\n }\n return null;\n }\n for (const provider of providers) {\n if (Array.isArray(provider)) {\n const found = findProvider(provider, name);\n if (found) return found;\n continue;\n }\n if (typeof provider === \"object\" && \"provide\" in provider) {\n const providerName = typeof provider.provide === \"function\" ? provider.provide.name : provider.provide;\n if (name instanceof RegExp) {\n if (name.test(providerName)) return provider;\n } else {\n if (providerName === name) return provider;\n }\n }\n }\n return null;\n}\n__name(findProvider, \"findProvider\");\n\n// src/merge-config.ts\nfunction processProvider(mergedConfig, baseConfig, provider) {\n if (Array.isArray(provider)) {\n for (const nestedProvider of provider) {\n processProvider(mergedConfig, baseConfig, nestedProvider);\n }\n return;\n }\n const existingProvider = findProvider(baseConfig.providers, provider.provide);\n if (existingProvider) {\n mergedConfig.providers = override(mergedConfig.providers, provider);\n } else {\n mergedConfig.providers.push(provider);\n }\n}\n__name(processProvider, \"processProvider\");\nfunction mergeConfig(baseConfig, config) {\n const mergedConfig = {\n ...baseConfig,\n ...config,\n providers: [\n ...baseConfig.providers\n ]\n // Start with a copy of base providers\n };\n for (const provider of config.providers) {\n processProvider(mergedConfig, baseConfig, provider);\n }\n return mergedConfig;\n}\n__name(mergeConfig, \"mergeConfig\");\n\n// src/provider.ts\nasync function injector(context, providers) {\n providers = providers.flat();\n for (const provider of providers) {\n let token;\n let instance;\n if (typeof provider === \"function\") {\n token = provider;\n instance = new provider(context);\n } else {\n token = provider.provide;\n const provideUserClass = provider.useClass;\n const isClass = typeof provideUserClass === \"function\";\n if (isClass) {\n instance = new provideUserClass(context);\n } else if (\"useValue\" in provider) {\n instance = provider.useValue;\n } else if (\"useFactory\" in provider) {\n instance = provider.useFactory?.(context);\n if (instance instanceof Promise) {\n instance = await instance;\n }\n } else if (\"useExisting\" in provider) {\n instance = inject(context, provider.useExisting);\n }\n }\n const name = typeof token === \"function\" ? token.name : token;\n provide(context, name, instance);\n }\n}\n__name(injector, \"injector\");\n\n// src/context.ts\nvar Context = class {\n static {\n __name(this, \"Context\");\n }\n /** Internal storage for injected values */\n values = {};\n /**\n * Sets a value in the context\n * @param key - Unique identifier for the value\n * @param value - Value to store\n */\n set(key, value) {\n this.values[key] = value;\n }\n /**\n * Retrieves a value from the context\n * @param key - Unique identifier for the value\n * @returns The stored value or undefined if not found\n */\n get(key) {\n return this.values[key];\n }\n};\nexport {\n Context,\n findProvider,\n findProviders,\n inject,\n injector,\n isInjected,\n isProvided,\n mergeConfig,\n override,\n provide\n};\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index16.js CHANGED
@@ -1,191 +1,9 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
- // src/inject.ts
5
- function provide(context, name, value) {
6
- context.set("inject:" + name, value);
7
- return value;
8
- }
9
- __name(provide, "provide");
10
- function isInjected(context, name) {
11
- return context.get("injected:" + name) === true;
12
- }
13
- __name(isInjected, "isInjected");
14
- function isProvided(context, name) {
15
- return context.get("inject:" + name) !== void 0;
16
- }
17
- __name(isProvided, "isProvided");
18
- function inject(context, service, args = []) {
19
- const isClass = typeof service === "function";
20
- const name = isClass ? service.name : service;
21
- const value = context.get("inject:" + name);
22
- if (value) {
23
- context.set("injected:" + name, true);
24
- return value;
25
- }
26
- throw new Error(`Injection provider ${name} not found`);
27
- }
28
- __name(inject, "inject");
29
- function override(providers, newProvider, options) {
30
- let { upsert = false, key } = options ?? {};
31
- if (!key) {
32
- key = typeof newProvider === "function" ? newProvider.name : newProvider.provide;
33
- }
34
- const flatProviders = providers.flat();
35
- const exists = flatProviders.some((provider) => {
36
- if (typeof provider === "function") {
37
- return provider.name === key;
38
- } else if (typeof provider === "object") {
39
- return provider.provide === key;
40
- }
41
- return false;
42
- });
43
- const mappedProviders = flatProviders.map((provider) => {
44
- if (typeof provider === "function" && provider.name === key) {
45
- return newProvider;
46
- } else if (typeof provider === "object" && provider.provide === key) {
47
- return newProvider;
48
- }
49
- return provider;
50
- });
51
- if (upsert && !exists) {
52
- mappedProviders.push(newProvider);
1
+ const WebSocketToken = "websocket";
2
+ class AbstractWebsocket {
3
+ constructor(context) {
4
+ this.context = context;
53
5
  }
54
- return mappedProviders;
55
6
  }
56
- __name(override, "override");
57
- function findProviders(providers, name) {
58
- const results = [];
59
- for (const provider of providers) {
60
- if (Array.isArray(provider)) {
61
- results.push(...findProviders(provider, name));
62
- } else if (findProvider(provider, name)) {
63
- results.push(provider);
64
- }
65
- }
66
- return results;
67
- }
68
- __name(findProviders, "findProviders");
69
- function findProvider(providers, name) {
70
- if (!Array.isArray(providers)) {
71
- if (typeof providers === "object" && "provide" in providers) {
72
- const provider = providers;
73
- const providerName = typeof provider.provide === "function" ? provider.provide.name : provider.provide;
74
- if (name instanceof RegExp) {
75
- if (name.test(providerName)) return providers;
76
- } else {
77
- if (providerName === name) return providers;
78
- }
79
- }
80
- return null;
81
- }
82
- for (const provider of providers) {
83
- if (Array.isArray(provider)) {
84
- const found = findProvider(provider, name);
85
- if (found) return found;
86
- continue;
87
- }
88
- if (typeof provider === "object" && "provide" in provider) {
89
- const providerName = typeof provider.provide === "function" ? provider.provide.name : provider.provide;
90
- if (name instanceof RegExp) {
91
- if (name.test(providerName)) return provider;
92
- } else {
93
- if (providerName === name) return provider;
94
- }
95
- }
96
- }
97
- return null;
98
- }
99
- __name(findProvider, "findProvider");
100
-
101
- // src/merge-config.ts
102
- function processProvider(mergedConfig, baseConfig, provider) {
103
- if (Array.isArray(provider)) {
104
- for (const nestedProvider of provider) {
105
- processProvider(mergedConfig, baseConfig, nestedProvider);
106
- }
107
- return;
108
- }
109
- const existingProvider = findProvider(baseConfig.providers, provider.provide);
110
- if (existingProvider) {
111
- mergedConfig.providers = override(mergedConfig.providers, provider);
112
- } else {
113
- mergedConfig.providers.push(provider);
114
- }
115
- }
116
- __name(processProvider, "processProvider");
117
- function mergeConfig(baseConfig, config) {
118
- const mergedConfig = {
119
- ...baseConfig,
120
- ...config,
121
- providers: [
122
- ...baseConfig.providers
123
- ]
124
- // Start with a copy of base providers
125
- };
126
- for (const provider of config.providers) {
127
- processProvider(mergedConfig, baseConfig, provider);
128
- }
129
- return mergedConfig;
130
- }
131
- __name(mergeConfig, "mergeConfig");
132
-
133
- // src/provider.ts
134
- async function injector(context, providers) {
135
- providers = providers.flat();
136
- for (const provider of providers) {
137
- let token;
138
- let instance;
139
- if (typeof provider === "function") {
140
- token = provider;
141
- instance = new provider(context);
142
- } else {
143
- token = provider.provide;
144
- const provideUserClass = provider.useClass;
145
- const isClass = typeof provideUserClass === "function";
146
- if (isClass) {
147
- instance = new provideUserClass(context);
148
- } else if ("useValue" in provider) {
149
- instance = provider.useValue;
150
- } else if ("useFactory" in provider) {
151
- instance = provider.useFactory?.(context);
152
- if (instance instanceof Promise) {
153
- instance = await instance;
154
- }
155
- } else if ("useExisting" in provider) {
156
- instance = inject(context, provider.useExisting);
157
- }
158
- }
159
- const name = typeof token === "function" ? token.name : token;
160
- provide(context, name, instance);
161
- }
162
- }
163
- __name(injector, "injector");
164
-
165
- // src/context.ts
166
- var Context = class {
167
- static {
168
- __name(this, "Context");
169
- }
170
- /** Internal storage for injected values */
171
- values = {};
172
- /**
173
- * Sets a value in the context
174
- * @param key - Unique identifier for the value
175
- * @param value - Value to store
176
- */
177
- set(key, value) {
178
- this.values[key] = value;
179
- }
180
- /**
181
- * Retrieves a value from the context
182
- * @param key - Unique identifier for the value
183
- * @returns The stored value or undefined if not found
184
- */
185
- get(key) {
186
- return this.values[key];
187
- }
188
- };
189
7
 
190
- export { Context, findProvider, findProviders, inject, injector, isInjected, isProvided, mergeConfig, override, provide };
8
+ export { AbstractWebsocket, WebSocketToken };
191
9
  //# sourceMappingURL=index16.js.map