vue-phaserjs 3.9.0 → 4.1.0

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 (3) hide show
  1. package/dist/index.d.ts +1083 -246
  2. package/dist/index.js +39 -72
  3. package/package.json +9 -9
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { Fragment, computed, createCommentVNode, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, inject, nextTick, onMounted, onUnmounted, openBlock, provide, ref, renderSlot, shallowRef, toValue, useTemplateRef, watch } from "vue";
2
- import { ID_SEPARATOR, InvalidOperationError, NotFoundError, NotInitializedError, Operation, checkIsPlainObject, getOrCreate, takeOne, toKebabCase } from "@esposter/shared";
2
+ import { ID_SEPARATOR, InvalidOperationError, NotFoundError, NotInitializedError, Operation, getOrCreate, takeOne, toKebabCase } from "@esposter/shared";
3
3
  import ClickOutside from "phaser4-rex-plugins/plugins/clickoutside.js";
4
- import { Animations, Cameras, Core, Game, Loader, Scene, Scenes, Tilemaps, Tweens, Utils } from "phaser";
4
+ import { Cameras, Core, Game, Loader, Scene, Scenes, Tilemaps, Tweens, Utils } from "phaser";
5
5
  import { defineStore, storeToRefs } from "pinia";
6
- import { parseTileset, parseXmlString } from "parse-tmx";
6
+ import { parseTileset } from "parse-tmx";
7
7
  //#region src/services/emit/constants.ts
8
8
  const EVENT_PREFIX = "on";
9
9
  //#endregion
@@ -538,6 +538,21 @@ const TintSetterMap = {
538
538
  }
539
539
  };
540
540
  //#endregion
541
+ //#region src/services/setterMap/shared/RenderableSetterMap.ts
542
+ const RenderableSetterMap = {
543
+ ...AlphaSetterMap,
544
+ ...BlendModeSetterMap,
545
+ ...DepthSetterMap,
546
+ ...MaskSetterMap,
547
+ ...OriginSetterMap,
548
+ ...RenderNodesSetterMap,
549
+ ...ScrollFactorSetterMap,
550
+ ...TintSetterMap,
551
+ ...TransformSetterMap,
552
+ ...VisibleSetterMap,
553
+ ...GlobalSetterMap
554
+ };
555
+ //#endregion
541
556
  //#region src/services/setterMap/BitmapTextSetterMap.ts
542
557
  const BitmapTextSetterMap = {
543
558
  align: (gameObject) => (value) => {
@@ -576,17 +591,7 @@ const BitmapTextSetterMap = {
576
591
  if (value === void 0) return;
577
592
  gameObject.wordWrapCharCode = value;
578
593
  },
579
- ...AlphaSetterMap,
580
- ...BlendModeSetterMap,
581
- ...DepthSetterMap,
582
- ...MaskSetterMap,
583
- ...OriginSetterMap,
584
- ...RenderNodesSetterMap,
585
- ...ScrollFactorSetterMap,
586
- ...TintSetterMap,
587
- ...TransformSetterMap,
588
- ...VisibleSetterMap,
589
- ...GlobalSetterMap
594
+ ...RenderableSetterMap
590
595
  };
591
596
  //#endregion
592
597
  //#region src/components/BitmapText.vue
@@ -760,7 +765,7 @@ const MultiFile = Loader.MultiFile;
760
765
  const PUBLIC_FOLDER = "public";
761
766
  var TiledJSONExternalFile = class extends MultiFile {
762
767
  constructor(loader, key, tilemapURL, path, baseURL, tilemapXhrSettings, tilesetXhrSettings) {
763
- if (checkIsPlainObject(key)) {
768
+ if (typeof key !== "string") {
764
769
  const configuration = key;
765
770
  key = GetFastValue(configuration, "key");
766
771
  tilemapURL = GetFastValue(configuration, "url");
@@ -775,7 +780,7 @@ var TiledJSONExternalFile = class extends MultiFile {
775
780
  this.config.baseURL = baseURL;
776
781
  this.config.tilesetXhrSettings = tilesetXhrSettings;
777
782
  }
778
- async addToCache() {
783
+ addToCache() {
779
784
  if (!this.isReadyToProcess()) return;
780
785
  const [tilemapFile, ...tilesetFiles] = this.files;
781
786
  if (!(tilemapFile.type === "json" && Object.hasOwn(tilemapFile.data, "tilesets"))) return;
@@ -784,18 +789,19 @@ var TiledJSONExternalFile = class extends MultiFile {
784
789
  const loader = this.loader;
785
790
  const files = this.files;
786
791
  this.complete = true;
787
- await Promise.all(tilesetFiles.map(async (tilesetFile) => {
792
+ for (const tilesetFile of tilesetFiles) {
788
793
  const responseText = tilesetFile.xhrLoader?.responseText;
789
794
  if (!responseText) throw new InvalidOperationError(Operation.Read, this.addToCache.name, tilesetFile.key);
790
- const responseData = await parseXmlString(responseText);
791
- const tilesetData = parseTileset(responseData.tileset);
795
+ const tilesetData = parseTileset(responseText).match((parsedTileset) => parsedTileset, (error) => {
796
+ throw error;
797
+ });
792
798
  const index = tilesetFile.tilesetIndex;
793
799
  Object.assign(tilemapData.tilesets[index], tilesetData, {
794
- imageheight: tilesetData.image.height,
795
- imagewidth: tilesetData.image.width,
800
+ imageheight: tilesetData.image?.height,
801
+ imagewidth: tilesetData.image?.width,
796
802
  source: void 0
797
803
  });
798
- }));
804
+ }
799
805
  loader.cacheManager.tilemap.add(tilemapKey, {
800
806
  data: tilemapData,
801
807
  format: Tilemaps.Formats.TILED_JSON
@@ -835,6 +841,7 @@ var TiledJSONExternalFile = class extends MultiFile {
835
841
  //#endregion
836
842
  //#region src/services/shared/constants.ts
837
843
  const TILEMAP_TILED_JSON_EXTERNAL_KEY = "tilemapTiledJSONExternal";
844
+ const ANIMATION_COMPLETE_EVENT_PREFIX = "animationcomplete-";
838
845
  //#endregion
839
846
  //#region src/plugins/registerTiledJSONExternalLoader.ts
840
847
  const FileTypesManager = Loader.FileTypesManager;
@@ -956,20 +963,10 @@ const TextureCropSetterMap = { ...BaseTextureSetterMap };
956
963
  //#endregion
957
964
  //#region src/services/setterMap/ImageSetterMap.ts
958
965
  const ImageSetterMap = {
959
- ...AlphaSetterMap,
960
- ...BlendModeSetterMap,
961
- ...DepthSetterMap,
966
+ ...RenderableSetterMap,
962
967
  ...FlipSetterMap,
963
- ...MaskSetterMap,
964
- ...OriginSetterMap,
965
- ...RenderNodesSetterMap,
966
- ...ScrollFactorSetterMap,
967
968
  ...SizeSetterMap,
968
- ...TextureCropSetterMap,
969
- ...TintSetterMap,
970
- ...TransformSetterMap,
971
- ...VisibleSetterMap,
972
- ...GlobalSetterMap
969
+ ...TextureCropSetterMap
973
970
  };
974
971
  //#endregion
975
972
  //#region src/components/Image.vue
@@ -1207,21 +1204,11 @@ const PathFollowerComponentSetterMap = { path: (gameObject) => (value) => {
1207
1204
  //#endregion
1208
1205
  //#region src/services/setterMap/PathFollowerSetterMap.ts
1209
1206
  const PathFollowerSetterMap = {
1210
- ...AlphaSetterMap,
1211
- ...BlendModeSetterMap,
1212
- ...DepthSetterMap,
1207
+ ...RenderableSetterMap,
1213
1208
  ...FlipSetterMap,
1214
- ...MaskSetterMap,
1215
- ...OriginSetterMap,
1216
1209
  ...PathFollowerComponentSetterMap,
1217
- ...RenderNodesSetterMap,
1218
- ...ScrollFactorSetterMap,
1219
1210
  ...SizeSetterMap,
1220
- ...TextureSetterMap,
1221
- ...TintSetterMap,
1222
- ...TransformSetterMap,
1223
- ...VisibleSetterMap,
1224
- ...GlobalSetterMap
1211
+ ...TextureSetterMap
1225
1212
  };
1226
1213
  //#endregion
1227
1214
  //#region src/components/PathFollower.vue
@@ -1506,7 +1493,7 @@ const AnimationSetterMap = {
1506
1493
  completionListeners.set(gameObject, listeners);
1507
1494
  for (const configuration of configurations) {
1508
1495
  if (!configuration.key) continue;
1509
- const event = `${Animations.Events.ANIMATION_COMPLETE_KEY}${configuration.key}`;
1496
+ const event = `${ANIMATION_COMPLETE_EVENT_PREFIX}${configuration.key}`;
1510
1497
  const previousListener = listeners.get(event);
1511
1498
  if (previousListener) gameObject.off(event, previousListener);
1512
1499
  const listener = () => {
@@ -1622,19 +1609,9 @@ const TextSetterMap = {
1622
1609
  emit("update:width", gameObject.width);
1623
1610
  emit("update:displayWidth", gameObject.displayWidth);
1624
1611
  },
1625
- ...AlphaSetterMap,
1626
- ...BlendModeSetterMap,
1612
+ ...RenderableSetterMap,
1627
1613
  ...ComputedSizeSetterMap,
1628
- ...DepthSetterMap,
1629
- ...FlipSetterMap,
1630
- ...MaskSetterMap,
1631
- ...OriginSetterMap,
1632
- ...RenderNodesSetterMap,
1633
- ...ScrollFactorSetterMap,
1634
- ...TintSetterMap,
1635
- ...TransformSetterMap,
1636
- ...VisibleSetterMap,
1637
- ...GlobalSetterMap
1614
+ ...FlipSetterMap
1638
1615
  };
1639
1616
  //#endregion
1640
1617
  //#region src/store/text.ts
@@ -1668,20 +1645,10 @@ const _sfc_main$21 = /*@__PURE__*/ defineComponent({
1668
1645
  //#endregion
1669
1646
  //#region src/services/setterMap/TileSpriteSetterMap.ts
1670
1647
  const TileSpriteSetterMap = {
1671
- ...AlphaSetterMap,
1672
- ...BlendModeSetterMap,
1648
+ ...RenderableSetterMap,
1673
1649
  ...ComputedSizeSetterMap,
1674
- ...DepthSetterMap,
1675
1650
  ...FlipSetterMap,
1676
- ...MaskSetterMap,
1677
- ...OriginSetterMap,
1678
- ...RenderNodesSetterMap,
1679
- ...ScrollFactorSetterMap,
1680
- ...TextureSetterMap,
1681
- ...TintSetterMap,
1682
- ...TransformSetterMap,
1683
- ...VisibleSetterMap,
1684
- ...GlobalSetterMap
1651
+ ...TextureSetterMap
1685
1652
  };
1686
1653
  //#endregion
1687
1654
  //#region src/components/TileSprite.vue
@@ -1906,4 +1873,4 @@ const sleepScene = (scene, durationMs) => new Promise((resolve) => {
1906
1873
  scene.events.once(Scenes.Events.SHUTDOWN, settle);
1907
1874
  });
1908
1875
  //#endregion
1909
- export { AlphaSetterMap, AlphaSingleSetterMap, AnimationSetterMap, _sfc_main as Arc, ArcSetterMap, BaseTextureSetterMap, _sfc_main$1 as BitmapText, BitmapTextSetterMap, BlendModeSetterMap, _sfc_main$2 as Circle, ComputedSizeSetterMap, _sfc_main$3 as Container, ContainerSetterMap, _sfc_main$4 as Curve, CurveSetterMap, DepthSetterMap, DisplaySizeSetterMap, EVENT_PREFIX, _sfc_main$5 as Ellipse, EllipseSetterMap, ExternalSceneStore, FlipSetterMap, _sfc_main$6 as Game, GameObjectEventMap, GameObjectSetterMap, GlobalSetterMap, _sfc_main$7 as Graphics, GraphicsSetterMap, _sfc_main$8 as Image, ImageSetterMap, InjectionKeyMap, _sfc_main$9 as IsoBox, IsoBoxSetterMap, IsoSetterMap, _sfc_main$10 as IsoTriangle, IsoTriangleSetterMap, Lifecycle, _sfc_main$11 as Line, LineSetterMap, MaskSetterMap, _sfc_main$12 as Nineslice, NinesliceSetterMap, OriginSetterMap, _sfc_main$13 as Particles, ParticlesSetterMap, _sfc_main$14 as PathFollower, PathFollowerComponentSetterMap, PathFollowerSetterMap, _sfc_main$15 as Polygon, PolygonSetterMap, _sfc_main$16 as Rectangle, RectangleSetterMap, RenderNodesSetterMap, _sfc_main$17 as RenderTexture, RenderTextureSetterMap, _sfc_main$18 as Scene, ScrollFactorSetterMap, ShapeSetterMap, SizeSetterMap, _sfc_main$19 as Sprite, SpriteSetterMap, _sfc_main$20 as Star, StarSetterMap, TILEMAP_TILED_JSON_EXTERNAL_KEY, _sfc_main$21 as Text, TextSetterMap, TextureCropSetterMap, TextureSetterMap, _sfc_main$22 as TileSprite, TileSpriteSetterMap, TiledJSONExternalFile, _sfc_main$23 as Tilemap, TilemapFile, TilesetFile, TintSetterMap, TransformSetterMap, _sfc_main$24 as Triangle, TriangleSetterMap, TweenSetterMap, _sfc_main$25 as Video, VideoSetterMap, VisibleSetterMap, _sfc_main$26 as Zone, ZoneSetterMap, checkIsEvent, createSceneClass, getDepthInsertIndex, getEventName, getInitializeGameObjectLifecycleHook, getScene, getUpdateEvent, onCreate, onInit, onNextTick, onPreload, onShutdown, onUpdate, pushGameObject, pushListener, registerTiledJSONExternalLoader, resetLifecycleListeners, runLifecycleListeners, runSceneShutdown, sleepScene, useAnimations, useCameraStore, useGame, useInitializeGameObject, useInitializeGameObjectEvents, useInitializeGameObjectSetters, useInjectSceneKey, useInputStore, usePhaserStore, useTextStore, useTween };
1876
+ export { ANIMATION_COMPLETE_EVENT_PREFIX, AlphaSetterMap, AlphaSingleSetterMap, AnimationSetterMap, _sfc_main as Arc, ArcSetterMap, BaseTextureSetterMap, _sfc_main$1 as BitmapText, BitmapTextSetterMap, BlendModeSetterMap, _sfc_main$2 as Circle, ComputedSizeSetterMap, _sfc_main$3 as Container, ContainerSetterMap, _sfc_main$4 as Curve, CurveSetterMap, DepthSetterMap, DisplaySizeSetterMap, EVENT_PREFIX, _sfc_main$5 as Ellipse, EllipseSetterMap, ExternalSceneStore, FlipSetterMap, _sfc_main$6 as Game, GameObjectEventMap, GameObjectSetterMap, GlobalSetterMap, _sfc_main$7 as Graphics, GraphicsSetterMap, _sfc_main$8 as Image, ImageSetterMap, InjectionKeyMap, _sfc_main$9 as IsoBox, IsoBoxSetterMap, IsoSetterMap, _sfc_main$10 as IsoTriangle, IsoTriangleSetterMap, Lifecycle, _sfc_main$11 as Line, LineSetterMap, MaskSetterMap, _sfc_main$12 as Nineslice, NinesliceSetterMap, OriginSetterMap, _sfc_main$13 as Particles, ParticlesSetterMap, _sfc_main$14 as PathFollower, PathFollowerComponentSetterMap, PathFollowerSetterMap, _sfc_main$15 as Polygon, PolygonSetterMap, _sfc_main$16 as Rectangle, RectangleSetterMap, RenderNodesSetterMap, _sfc_main$17 as RenderTexture, RenderTextureSetterMap, RenderableSetterMap, _sfc_main$18 as Scene, ScrollFactorSetterMap, ShapeSetterMap, SizeSetterMap, _sfc_main$19 as Sprite, SpriteSetterMap, _sfc_main$20 as Star, StarSetterMap, TILEMAP_TILED_JSON_EXTERNAL_KEY, _sfc_main$21 as Text, TextSetterMap, TextureCropSetterMap, TextureSetterMap, _sfc_main$22 as TileSprite, TileSpriteSetterMap, TiledJSONExternalFile, _sfc_main$23 as Tilemap, TilemapFile, TilesetFile, TintSetterMap, TransformSetterMap, _sfc_main$24 as Triangle, TriangleSetterMap, TweenSetterMap, _sfc_main$25 as Video, VideoSetterMap, VisibleSetterMap, _sfc_main$26 as Zone, ZoneSetterMap, checkIsEvent, createSceneClass, getDepthInsertIndex, getEventName, getInitializeGameObjectLifecycleHook, getScene, getUpdateEvent, onCreate, onInit, onNextTick, onPreload, onShutdown, onUpdate, pushGameObject, pushListener, registerTiledJSONExternalLoader, resetLifecycleListeners, runLifecycleListeners, runSceneShutdown, sleepScene, useAnimations, useCameraStore, useGame, useInitializeGameObject, useInitializeGameObjectEvents, useInitializeGameObjectSetters, useInjectSceneKey, useInputStore, usePhaserStore, useTextStore, useTween };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue-phaserjs",
3
- "version": "3.9.0",
3
+ "version": "4.1.0",
4
4
  "description": "A component library to integrate Phaser Framework with Vue.",
5
5
  "keywords": [
6
6
  "component-library",
@@ -54,25 +54,25 @@
54
54
  },
55
55
  "devDependencies": {
56
56
  "@arethetypeswrong/core": "^0.18.5",
57
- "@esposter/configuration": "3.9.0",
57
+ "@esposter/configuration": "4.1.0",
58
58
  "@vue/test-utils": "^2.5.1",
59
59
  "publint": "^0.3.25",
60
- "tsdown": "^0.23.0",
60
+ "tsdown": "^0.23.1",
61
61
  "type-fest": "^5.10.0",
62
62
  "typedoc": "^0.28.20",
63
- "vitest": "^5.0.3",
64
- "vue-tsc": "^3.3.11"
63
+ "vitest": "^5.0.4",
64
+ "vue-tsc": "3.3.11"
65
65
  },
66
66
  "peerDependencies": {
67
- "@esposter/shared": "3.8.1",
68
- "parse-tmx": "3.8.1",
67
+ "@esposter/shared": "4.1.0",
68
+ "parse-tmx": "4.1.0",
69
69
  "phaser": "^4.2.1",
70
70
  "phaser4-rex-plugins": "^4.2.0",
71
71
  "pinia": "^4.0.3",
72
- "vue": "^3.5.43"
72
+ "vue": "^3.5.44"
73
73
  },
74
74
  "inlinedDependencies": {
75
75
  "type-fest": "5.10.0"
76
76
  },
77
- "gitHead": "f9f6208c35e6cff4ed33910623c798cd88f09301"
77
+ "gitHead": "68de4c22fa7591bf6f6cc0fab2c9a906d8c4d71a"
78
78
  }