@shapediver/viewer.rendering-engine.animation-frame-engine 2.7.10 → 2.8.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.
@@ -1,9 +1,11 @@
1
1
  import { AnimationFrameCallback, IAnimationFrameEngine } from "../interfaces/IAnimationFrameEngine";
2
2
  export declare class AnimationFrameEngine implements IAnimationFrameEngine {
3
3
  #private;
4
+ private static _instance;
4
5
  private _animationFrameCallbacks;
5
6
  private _lastTime;
6
- constructor();
7
+ private constructor();
8
+ static get instance(): AnimationFrameEngine;
7
9
  addAnimationFrameCallback(cb: AnimationFrameCallback): string;
8
10
  removeAnimationFrameCallback(token: string): boolean;
9
11
  private animate;
@@ -1 +1 @@
1
- {"version":3,"file":"AnimationFrameEngine.d.ts","sourceRoot":"","sources":["../../src/implementation/AnimationFrameEngine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAKpG,qBACa,oBAAqB,YAAW,qBAAqB;;IAG9D,OAAO,CAAC,wBAAwB,CAEzB;IACP,OAAO,CAAC,SAAS,CAAa;;IAiBvB,yBAAyB,CAAC,EAAE,EAAE,sBAAsB,GAAG,MAAM;IAO7D,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAa3D,OAAO,CAAC,OAAO;CAelB"}
1
+ {"version":3,"file":"AnimationFrameEngine.d.ts","sourceRoot":"","sources":["../../src/implementation/AnimationFrameEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAKpG,qBAAa,oBAAqB,YAAW,qBAAqB;;IAM9D,OAAO,CAAC,MAAM,CAAC,SAAS,CAAuB;IAE/C,OAAO,CAAC,wBAAwB,CAEzB;IACP,OAAO,CAAC,SAAS,CAAa;IAM9B,OAAO;IAQP,WAAkB,QAAQ,yBAEzB;IAMM,yBAAyB,CAAC,EAAE,EAAE,sBAAsB,GAAG,MAAM;IAO7D,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAa3D,OAAO,CAAC,OAAO;CAelB"}
@@ -11,12 +11,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
11
  }) : function(o, v) {
12
12
  o["default"] = v;
13
13
  });
14
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
15
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
- return c > 3 && r && Object.defineProperty(target, key, r), r;
19
- };
20
14
  var __importStar = (this && this.__importStar) || function (mod) {
21
15
  if (mod && mod.__esModule) return mod;
22
16
  var result = {};
@@ -24,9 +18,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
18
  __setModuleDefault(result, mod);
25
19
  return result;
26
20
  };
27
- var __metadata = (this && this.__metadata) || function (k, v) {
28
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
29
- };
30
21
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
31
22
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
32
23
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
@@ -35,22 +26,26 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
35
26
  var _AnimationFrameEngine_animationEngine, _AnimationFrameEngine_uuidGenerator;
36
27
  Object.defineProperty(exports, "__esModule", { value: true });
37
28
  exports.AnimationFrameEngine = void 0;
38
- const tsyringe_1 = require("tsyringe");
39
29
  const TWEEN = __importStar(require("@tweenjs/tween.js"));
40
30
  const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
41
31
  const viewer_rendering_engine_animation_engine_1 = require("@shapediver/viewer.rendering-engine.animation-engine");
42
- let AnimationFrameEngine = class AnimationFrameEngine {
43
- // #endregion Properties (4)
32
+ class AnimationFrameEngine {
33
+ // #endregion Properties (5)
44
34
  // #region Constructors (1)
45
35
  constructor() {
46
- // #region Properties (4)
36
+ // #region Properties (5)
37
+ _AnimationFrameEngine_animationEngine.set(this, viewer_rendering_engine_animation_engine_1.AnimationEngine.instance);
38
+ _AnimationFrameEngine_uuidGenerator.set(this, viewer_shared_services_1.UuidGenerator.instance);
47
39
  this._animationFrameCallbacks = {};
48
40
  this._lastTime = 0;
49
- _AnimationFrameEngine_animationEngine.set(this, tsyringe_1.container.resolve(viewer_rendering_engine_animation_engine_1.AnimationEngine));
50
- _AnimationFrameEngine_uuidGenerator.set(this, tsyringe_1.container.resolve(viewer_shared_services_1.UuidGenerator));
51
41
  this.animate(0);
52
42
  }
53
43
  // #endregion Constructors (1)
44
+ // #region Public Static Accessors (1)
45
+ static get instance() {
46
+ return this._instance || (this._instance = new this());
47
+ }
48
+ // #endregion Public Static Accessors (1)
54
49
  // #region Public Methods (2)
55
50
  addAnimationFrameCallback(cb) {
56
51
  const token = __classPrivateFieldGet(this, _AnimationFrameEngine_uuidGenerator, "f").create();
@@ -76,11 +71,7 @@ let AnimationFrameEngine = class AnimationFrameEngine {
76
71
  for (let a in this._animationFrameCallbacks)
77
72
  this._animationFrameCallbacks[a](time, deltaTime, runningAnimation);
78
73
  }
79
- };
80
- _AnimationFrameEngine_animationEngine = new WeakMap(), _AnimationFrameEngine_uuidGenerator = new WeakMap();
81
- AnimationFrameEngine = __decorate([
82
- (0, tsyringe_1.singleton)(),
83
- __metadata("design:paramtypes", [])
84
- ], AnimationFrameEngine);
74
+ }
85
75
  exports.AnimationFrameEngine = AnimationFrameEngine;
76
+ _AnimationFrameEngine_animationEngine = new WeakMap(), _AnimationFrameEngine_uuidGenerator = new WeakMap();
86
77
  //# sourceMappingURL=AnimationFrameEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnimationFrameEngine.js","sourceRoot":"","sources":["../../src/implementation/AnimationFrameEngine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAgD;AAEhD,yDAA0C;AAC1C,+EAAmE;AACnE,mHAAuF;AAGvF,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAW7B,4BAA4B;IAE5B,2BAA2B;IAE3B;QAdA,yBAAyB;QAEjB,6BAAwB,GAE5B,EAAE,CAAC;QACC,cAAS,GAAW,CAAC,CAAC;QAE9B,gDAA8D,oBAAS,CAAC,OAAO,CAAC,0DAAe,CAAC,EAAC;QACjG,8CAAwD,oBAAS,CAAC,OAAO,CAAC,sCAAa,CAAC,EAAC;QAOrF,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,8BAA8B;IAE9B,6BAA6B;IAEtB,yBAAyB,CAAC,EAA0B;QACvD,MAAM,KAAK,GAAG,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,CAAC;QAC3C,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAE1C,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,4BAA4B,CAAC,KAAa;QAC7C,IAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAEvD,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAE,GAAG,SAAS,CAAC;QAExD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,gCAAgC;IAEhC,8BAA8B;IAEtB,OAAO,CAAC,IAAY;QACxB,kDAAkD;QAClD,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5D,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEnB,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QACxE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,MAAM,gBAAgB,GAAG,uBAAA,IAAI,6CAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEjE,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,wBAAwB;YACtC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC5E,CAAC;CAGJ,CAAA;;AA1DY,oBAAoB;IADhC,IAAA,oBAAS,GAAE;;GACC,oBAAoB,CA0DhC;AA1DY,oDAAoB"}
1
+ {"version":3,"file":"AnimationFrameEngine.js","sourceRoot":"","sources":["../../src/implementation/AnimationFrameEngine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yDAA0C;AAC1C,+EAAmE;AACnE,mHAAuF;AAEvF,MAAa,oBAAoB;IAa7B,4BAA4B;IAE5B,2BAA2B;IAE3B;QAhBA,yBAAyB;QAEzB,gDAA6C,0DAAe,CAAC,QAAQ,EAAC;QACtE,8CAAyC,sCAAa,CAAC,QAAQ,EAAC;QAIxD,6BAAwB,GAE5B,EAAE,CAAC;QACC,cAAS,GAAW,CAAC,CAAC;QAO1B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,8BAA8B;IAE9B,sCAAsC;IAE/B,MAAM,KAAK,QAAQ;QACtB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,yCAAyC;IAEzC,6BAA6B;IAEtB,yBAAyB,CAAC,EAA0B;QACvD,MAAM,KAAK,GAAG,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,CAAC;QAC3C,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAE1C,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,4BAA4B,CAAC,KAAa;QAC7C,IAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAEvD,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAE,GAAG,SAAS,CAAC;QAExD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,gCAAgC;IAEhC,8BAA8B;IAEtB,OAAO,CAAC,IAAY;QACxB,kDAAkD;QAClD,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5D,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEnB,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QACxE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,MAAM,gBAAgB,GAAG,uBAAA,IAAI,6CAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEjE,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,wBAAwB;YACtC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC5E,CAAC;CAGJ;AApED,oDAoEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapediver/viewer.rendering-engine.animation-frame-engine",
3
- "version": "2.7.10",
3
+ "version": "2.8.0",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "Michael Oppitz <michael@shapediver.com>",
@@ -39,11 +39,10 @@
39
39
  "testEnvironment": "node"
40
40
  },
41
41
  "dependencies": {
42
- "@shapediver/viewer.rendering-engine.animation-engine": "2.7.10",
43
- "@shapediver/viewer.shared.services": "2.7.10",
42
+ "@shapediver/viewer.rendering-engine.animation-engine": "2.8.0",
43
+ "@shapediver/viewer.shared.services": "2.8.0",
44
44
  "@tweenjs/tween.js": "^18.6.4",
45
- "gl-matrix": "3.3.0",
46
- "tsyringe": "^4.5.0"
45
+ "gl-matrix": "3.3.0"
47
46
  },
48
- "gitHead": "08d9680d3b199406d1c6bedc8fbeed3d1ad6a385"
47
+ "gitHead": "9caee20107c5d71e43de33edc14ee19d62ec268b"
49
48
  }
@@ -1,31 +1,39 @@
1
- import { container, singleton } from "tsyringe";
2
1
  import { AnimationFrameCallback, IAnimationFrameEngine } from "../interfaces/IAnimationFrameEngine";
3
2
  import * as TWEEN from '@tweenjs/tween.js'
4
3
  import { UuidGenerator } from "@shapediver/viewer.shared.services";
5
4
  import { AnimationEngine } from "@shapediver/viewer.rendering-engine.animation-engine";
6
5
 
7
- @singleton()
8
6
  export class AnimationFrameEngine implements IAnimationFrameEngine {
9
- // #region Properties (4)
7
+ // #region Properties (5)
8
+
9
+ readonly #animationEngine: AnimationEngine = AnimationEngine.instance;
10
+ readonly #uuidGenerator: UuidGenerator = UuidGenerator.instance;
11
+
12
+ private static _instance: AnimationFrameEngine;
10
13
 
11
14
  private _animationFrameCallbacks: {
12
15
  [key: string]: AnimationFrameCallback
13
16
  } = {};
14
17
  private _lastTime: number = 0;
15
18
 
16
- readonly #animationEngine: AnimationEngine = <AnimationEngine>container.resolve(AnimationEngine);
17
- readonly #uuidGenerator: UuidGenerator = <UuidGenerator>container.resolve(UuidGenerator);
18
-
19
- // #endregion Properties (4)
19
+ // #endregion Properties (5)
20
20
 
21
21
  // #region Constructors (1)
22
22
 
23
- constructor() {
23
+ private constructor() {
24
24
  this.animate(0);
25
25
  }
26
26
 
27
27
  // #endregion Constructors (1)
28
28
 
29
+ // #region Public Static Accessors (1)
30
+
31
+ public static get instance() {
32
+ return this._instance || (this._instance = new this());
33
+ }
34
+
35
+ // #endregion Public Static Accessors (1)
36
+
29
37
  // #region Public Methods (2)
30
38
 
31
39
  public addAnimationFrameCallback(cb: AnimationFrameCallback): string {