@tsparticles/plugin-interactivity 4.0.0-alpha.21 → 4.0.0-alpha.23

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 (98) hide show
  1. package/221.min.js +1 -1
  2. package/703.min.js +1 -1
  3. package/{esm → browser/BaseClasses}/ExternalInteractorBase.js +1 -1
  4. package/browser/{ParticlesInteractorBase.js → BaseClasses/ParticlesInteractorBase.js} +1 -1
  5. package/browser/InteractionManager.js +11 -9
  6. package/browser/InteractivityEventListeners.js +13 -5
  7. package/browser/InteractivityPlugin.js +1 -3
  8. package/browser/InteractivityPluginInstance.js +4 -2
  9. package/browser/Options/Classes/Events/DivEvent.js +1 -1
  10. package/browser/Options/Classes/Interactivity.js +1 -1
  11. package/browser/index.js +6 -6
  12. package/{browser → cjs/BaseClasses}/ExternalInteractorBase.js +1 -1
  13. package/{esm → cjs/BaseClasses}/ParticlesInteractorBase.js +1 -1
  14. package/cjs/InteractionManager.js +11 -9
  15. package/cjs/InteractivityEventListeners.js +13 -5
  16. package/cjs/InteractivityPlugin.js +1 -3
  17. package/cjs/InteractivityPluginInstance.js +4 -2
  18. package/cjs/Options/Classes/Events/DivEvent.js +1 -1
  19. package/cjs/Options/Classes/Interactivity.js +1 -1
  20. package/cjs/index.js +6 -6
  21. package/dist_browser_InteractivityPluginInstance_js.js +4 -4
  22. package/dist_browser_InteractivityPlugin_js.js +3 -3
  23. package/{cjs → esm/BaseClasses}/ExternalInteractorBase.js +1 -1
  24. package/{cjs → esm/BaseClasses}/ParticlesInteractorBase.js +1 -1
  25. package/esm/InteractionManager.js +11 -9
  26. package/esm/InteractivityEventListeners.js +13 -5
  27. package/esm/InteractivityPlugin.js +1 -3
  28. package/esm/InteractivityPluginInstance.js +4 -2
  29. package/esm/Interfaces/IMouseData.js +1 -0
  30. package/esm/Interfaces/IParticleInteractorBase.js +1 -0
  31. package/esm/Interfaces/IParticlesInteractor.js +1 -0
  32. package/esm/Options/Classes/Events/DivEvent.js +1 -1
  33. package/esm/Options/Classes/Interactivity.js +1 -1
  34. package/esm/index.js +6 -6
  35. package/package.json +2 -2
  36. package/report.html +1 -1
  37. package/tsparticles.plugin.interactivity.js +38 -38
  38. package/tsparticles.plugin.interactivity.min.js +2 -2
  39. package/types/{ExternalInteractorBase.d.ts → BaseClasses/ExternalInteractorBase.d.ts} +4 -4
  40. package/types/{ParticlesInteractorBase.d.ts → BaseClasses/ParticlesInteractorBase.d.ts} +4 -4
  41. package/types/InteractionManager.d.ts +3 -2
  42. package/types/{IExternalInteractor.d.ts → Interfaces/IExternalInteractor.d.ts} +4 -4
  43. package/types/Interfaces/IInteractor.d.ts +7 -0
  44. package/types/{IInteractor.d.ts → Interfaces/IParticleInteractorBase.d.ts} +4 -7
  45. package/types/{IParticlesInteractor.d.ts → Interfaces/IParticlesInteractor.d.ts} +2 -2
  46. package/types/Options/Classes/Events/DivEvent.d.ts +1 -1
  47. package/types/Options/Classes/Interactivity.d.ts +1 -1
  48. package/types/Options/Interfaces/Events/IDivEvent.d.ts +1 -1
  49. package/types/Options/Interfaces/IInteractivity.d.ts +1 -1
  50. package/types/index.d.ts +10 -9
  51. package/types/types.d.ts +1 -1
  52. package/umd/{ExternalInteractorBase.js → BaseClasses/ExternalInteractorBase.js} +2 -2
  53. package/umd/{ParticlesInteractorBase.js → BaseClasses/ParticlesInteractorBase.js} +2 -2
  54. package/umd/InteractionManager.js +12 -10
  55. package/umd/InteractivityEventListeners.js +14 -6
  56. package/umd/InteractivityPlugin.js +1 -3
  57. package/umd/InteractivityPluginInstance.js +4 -2
  58. package/umd/Interfaces/IParticlesInteractor.js +12 -0
  59. package/umd/Options/Classes/Events/DivEvent.js +2 -2
  60. package/umd/Options/Classes/Interactivity.js +2 -2
  61. package/umd/index.js +7 -7
  62. /package/browser/{DivType.js → Enums/DivType.js} +0 -0
  63. /package/browser/{InteractivityDetect.js → Enums/InteractivityDetect.js} +0 -0
  64. /package/browser/{InteractorType.js → Enums/InteractorType.js} +0 -0
  65. /package/browser/{IExternalInteractor.js → Interfaces/IExternalInteractor.js} +0 -0
  66. /package/browser/{IInteractivityData.js → Interfaces/IInteractivityData.js} +0 -0
  67. /package/browser/{IInteractor.js → Interfaces/IInteractor.js} +0 -0
  68. /package/browser/{IMouseData.js → Interfaces/IMouseData.js} +0 -0
  69. /package/browser/{IParticlesInteractor.js → Interfaces/IParticleInteractorBase.js} +0 -0
  70. /package/{cjs → browser/Interfaces}/IParticlesInteractor.js +0 -0
  71. /package/cjs/{DivType.js → Enums/DivType.js} +0 -0
  72. /package/cjs/{InteractivityDetect.js → Enums/InteractivityDetect.js} +0 -0
  73. /package/cjs/{InteractorType.js → Enums/InteractorType.js} +0 -0
  74. /package/cjs/{IExternalInteractor.js → Interfaces/IExternalInteractor.js} +0 -0
  75. /package/cjs/{IInteractivityData.js → Interfaces/IInteractivityData.js} +0 -0
  76. /package/cjs/{IInteractor.js → Interfaces/IInteractor.js} +0 -0
  77. /package/cjs/{IMouseData.js → Interfaces/IMouseData.js} +0 -0
  78. /package/{esm/IExternalInteractor.js → cjs/Interfaces/IParticleInteractorBase.js} +0 -0
  79. /package/{esm → cjs/Interfaces}/IParticlesInteractor.js +0 -0
  80. /package/esm/{DivType.js → Enums/DivType.js} +0 -0
  81. /package/esm/{InteractivityDetect.js → Enums/InteractivityDetect.js} +0 -0
  82. /package/esm/{InteractorType.js → Enums/InteractorType.js} +0 -0
  83. /package/esm/{IInteractivityData.js → Interfaces/IExternalInteractor.js} +0 -0
  84. /package/esm/{IInteractor.js → Interfaces/IInteractivityData.js} +0 -0
  85. /package/esm/{IMouseData.js → Interfaces/IInteractor.js} +0 -0
  86. /package/types/{DivType.d.ts → Enums/DivType.d.ts} +0 -0
  87. /package/types/{InteractivityDetect.d.ts → Enums/InteractivityDetect.d.ts} +0 -0
  88. /package/types/{InteractorType.d.ts → Enums/InteractorType.d.ts} +0 -0
  89. /package/types/{IInteractivityData.d.ts → Interfaces/IInteractivityData.d.ts} +0 -0
  90. /package/types/{IMouseData.d.ts → Interfaces/IMouseData.d.ts} +0 -0
  91. /package/umd/{DivType.js → Enums/DivType.js} +0 -0
  92. /package/umd/{InteractivityDetect.js → Enums/InteractivityDetect.js} +0 -0
  93. /package/umd/{InteractorType.js → Enums/InteractorType.js} +0 -0
  94. /package/umd/{IExternalInteractor.js → Interfaces/IExternalInteractor.js} +0 -0
  95. /package/umd/{IInteractivityData.js → Interfaces/IInteractivityData.js} +0 -0
  96. /package/umd/{IInteractor.js → Interfaces/IInteractor.js} +0 -0
  97. /package/umd/{IMouseData.js → Interfaces/IMouseData.js} +0 -0
  98. /package/umd/{IParticlesInteractor.js → Interfaces/IParticleInteractorBase.js} +0 -0
@@ -4,13 +4,13 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./InteractorType.js"], factory);
7
+ define(["require", "exports", "../Enums/InteractorType.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ExternalInteractorBase = void 0;
13
- const InteractorType_js_1 = require("./InteractorType.js");
13
+ const InteractorType_js_1 = require("../Enums/InteractorType.js");
14
14
  class ExternalInteractorBase {
15
15
  type = InteractorType_js_1.InteractorType.external;
16
16
  container;
@@ -4,13 +4,13 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./InteractorType.js"], factory);
7
+ define(["require", "exports", "../Enums/InteractorType.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ParticlesInteractorBase = void 0;
13
- const InteractorType_js_1 = require("./InteractorType.js");
13
+ const InteractorType_js_1 = require("../Enums/InteractorType.js");
14
14
  class ParticlesInteractorBase {
15
15
  type = InteractorType_js_1.InteractorType.particles;
16
16
  container;
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "@tsparticles/engine", "./InteractivityConstants.js", "./InteractivityEventListeners.js", "./InteractorType.js"], factory);
7
+ define(["require", "exports", "@tsparticles/engine", "./InteractivityConstants.js", "./InteractivityEventListeners.js", "./Enums/InteractorType.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -13,7 +13,7 @@
13
13
  const engine_1 = require("@tsparticles/engine");
14
14
  const InteractivityConstants_js_1 = require("./InteractivityConstants.js");
15
15
  const InteractivityEventListeners_js_1 = require("./InteractivityEventListeners.js");
16
- const InteractorType_js_1 = require("./InteractorType.js");
16
+ const InteractorType_js_1 = require("./Enums/InteractorType.js");
17
17
  class InteractionManager {
18
18
  container;
19
19
  interactivityData;
@@ -144,14 +144,7 @@
144
144
  interactor.handleClickMode?.(mode, interactivityData);
145
145
  }
146
146
  }
147
- async init() {
148
- const interactors = await this._engine.getInteractors?.(this.container, true);
149
- if (!interactors) {
150
- return;
151
- }
152
- this._interactors = interactors;
153
- this._externalInteractors = [];
154
- this._particleInteractors = [];
147
+ init() {
155
148
  this._eventListeners.init();
156
149
  for (const interactor of this._interactors) {
157
150
  switch (interactor.type) {
@@ -165,6 +158,15 @@
165
158
  interactor.init();
166
159
  }
167
160
  }
161
+ async initInteractors() {
162
+ const interactors = await this._engine.getInteractors?.(this.container, true);
163
+ if (!interactors) {
164
+ return;
165
+ }
166
+ this._interactors = interactors;
167
+ this._externalInteractors = [];
168
+ this._particleInteractors = [];
169
+ }
168
170
  particlesInteract(particle, delta) {
169
171
  const { interactivityData } = this;
170
172
  for (const interactor of this._externalInteractors) {
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "@tsparticles/engine", "./InteractivityConstants.js", "./InteractivityDetect.js"], factory);
7
+ define(["require", "exports", "@tsparticles/engine", "./InteractivityConstants.js", "./Enums/InteractivityDetect.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -12,7 +12,7 @@
12
12
  exports.InteractivityEventListeners = void 0;
13
13
  const engine_1 = require("@tsparticles/engine");
14
14
  const InteractivityConstants_js_1 = require("./InteractivityConstants.js");
15
- const InteractivityDetect_js_1 = require("./InteractivityDetect.js");
15
+ const InteractivityDetect_js_1 = require("./Enums/InteractivityDetect.js");
16
16
  class InteractivityEventListeners {
17
17
  _canPush = true;
18
18
  _clickPositionPlugins;
@@ -103,18 +103,26 @@
103
103
  }
104
104
  const html = interactivityEl, canvas = container.canvas;
105
105
  canvas.setPointerEvents(html === canvas.element ? "initial" : "none");
106
- if (!(options.interactivity?.events.onHover.enable || options.interactivity?.events.onClick.enable)) {
106
+ if (add && !(options.interactivity?.events.onHover.enable || options.interactivity?.events.onClick.enable)) {
107
107
  return;
108
108
  }
109
109
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.mouseMoveEvent, handlers.mouseMove, add);
110
110
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.touchStartEvent, handlers.touchStart, add);
111
111
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.touchMoveEvent, handlers.touchMove, add);
112
- if (options.interactivity.events.onClick.enable) {
112
+ if (add) {
113
+ if (options.interactivity?.events.onClick.enable) {
114
+ (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.touchEndEvent, handlers.touchEndClick, add);
115
+ (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.mouseUpEvent, handlers.mouseUp, add);
116
+ (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.mouseDownEvent, handlers.mouseDown, add);
117
+ }
118
+ else {
119
+ (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.touchEndEvent, handlers.touchEnd, add);
120
+ }
121
+ }
122
+ else {
113
123
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.touchEndEvent, handlers.touchEndClick, add);
114
124
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.mouseUpEvent, handlers.mouseUp, add);
115
125
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.mouseDownEvent, handlers.mouseDown, add);
116
- }
117
- else {
118
126
  (0, engine_1.manageListener)(interactivityEl, InteractivityConstants_js_1.touchEndEvent, handlers.touchEnd, add);
119
127
  }
120
128
  (0, engine_1.manageListener)(interactivityEl, mouseLeaveTmpEvent, handlers.mouseLeave, add);
@@ -84,9 +84,7 @@ var __importStar = (this && this.__importStar) || (function () {
84
84
  return;
85
85
  }
86
86
  for (const interactor of interactors) {
87
- if (interactor.loadParticlesOptions) {
88
- interactor.loadParticlesOptions(options, source);
89
- }
87
+ interactor.loadParticlesOptions?.(options, source);
90
88
  }
91
89
  }
92
90
  needsPlugin() {
@@ -50,10 +50,12 @@
50
50
  this.interactionManager.externalInteract(delta);
51
51
  }
52
52
  async preInit() {
53
- await this.interactionManager.init();
53
+ await this.interactionManager.initInteractors();
54
+ this.interactionManager.init();
54
55
  }
55
56
  async redrawInit() {
56
- await this.interactionManager.init();
57
+ await this.interactionManager.initInteractors();
58
+ this.interactionManager.init();
57
59
  }
58
60
  start() {
59
61
  this.interactionManager.addListeners();
@@ -0,0 +1,12 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ });
@@ -4,14 +4,14 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "@tsparticles/engine", "../../../DivType.js"], factory);
7
+ define(["require", "exports", "@tsparticles/engine", "../../../Enums/DivType.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.DivEvent = void 0;
13
13
  const engine_1 = require("@tsparticles/engine");
14
- const DivType_js_1 = require("../../../DivType.js");
14
+ const DivType_js_1 = require("../../../Enums/DivType.js");
15
15
  class DivEvent {
16
16
  enable;
17
17
  mode;
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "@tsparticles/engine", "./Events/Events.js", "../../InteractivityDetect.js", "./Modes/Modes.js"], factory);
7
+ define(["require", "exports", "@tsparticles/engine", "./Events/Events.js", "../../Enums/InteractivityDetect.js", "./Modes/Modes.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -12,7 +12,7 @@
12
12
  exports.Interactivity = void 0;
13
13
  const engine_1 = require("@tsparticles/engine");
14
14
  const Events_js_1 = require("./Events/Events.js");
15
- const InteractivityDetect_js_1 = require("../../InteractivityDetect.js");
15
+ const InteractivityDetect_js_1 = require("../../Enums/InteractivityDetect.js");
16
16
  const Modes_js_1 = require("./Modes/Modes.js");
17
17
  class Interactivity {
18
18
  detectsOn;
package/umd/index.js CHANGED
@@ -40,7 +40,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
40
40
  if (v !== undefined) module.exports = v;
41
41
  }
42
42
  else if (typeof define === "function" && define.amd) {
43
- define(["require", "exports", "@tsparticles/engine", "./DivType.js", "./ExternalInteractorBase.js", "./InteractivityConstants.js", "./InteractivityDetect.js", "./InteractorType.js", "./ParticlesInteractorBase.js", "./utils.js", "./Options/Classes/Events/DivEvent.js", "./Options/Classes/Modes/Modes.js"], factory);
43
+ define(["require", "exports", "@tsparticles/engine", "./BaseClasses/ExternalInteractorBase.js", "./BaseClasses/ParticlesInteractorBase.js", "./InteractivityConstants.js", "./Enums/DivType.js", "./Enums/InteractivityDetect.js", "./Enums/InteractorType.js", "./utils.js", "./Options/Classes/Events/DivEvent.js", "./Options/Classes/Modes/Modes.js"], factory);
44
44
  }
45
45
  })(function (require, exports) {
46
46
  "use strict";
@@ -50,7 +50,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
50
50
  exports.ensureInteractivityPluginLoaded = ensureInteractivityPluginLoaded;
51
51
  const engine_1 = require("@tsparticles/engine");
52
52
  async function loadInteractivityPlugin(engine) {
53
- engine.checkVersion("4.0.0-alpha.21");
53
+ engine.checkVersion("4.0.0-alpha.23");
54
54
  await engine.register(async (e) => {
55
55
  const interactivityEngine = e, { InteractivityPlugin } = await (__syncRequire ? Promise.resolve().then(() => __importStar(require("./InteractivityPlugin.js"))) : new Promise((resolve_1, reject_1) => { require(["./InteractivityPlugin.js"], resolve_1, reject_1); }).then(__importStar));
56
56
  interactivityEngine.addPlugin(new InteractivityPlugin(interactivityEngine));
@@ -82,12 +82,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
82
82
  throw new Error("tsParticles Interactivity Plugin is not loaded");
83
83
  }
84
84
  }
85
- __exportStar(require("./DivType.js"), exports);
86
- __exportStar(require("./ExternalInteractorBase.js"), exports);
85
+ __exportStar(require("./BaseClasses/ExternalInteractorBase.js"), exports);
86
+ __exportStar(require("./BaseClasses/ParticlesInteractorBase.js"), exports);
87
87
  __exportStar(require("./InteractivityConstants.js"), exports);
88
- __exportStar(require("./InteractivityDetect.js"), exports);
89
- __exportStar(require("./InteractorType.js"), exports);
90
- __exportStar(require("./ParticlesInteractorBase.js"), exports);
88
+ __exportStar(require("./Enums/DivType.js"), exports);
89
+ __exportStar(require("./Enums/InteractivityDetect.js"), exports);
90
+ __exportStar(require("./Enums/InteractorType.js"), exports);
91
91
  __exportStar(require("./utils.js"), exports);
92
92
  __exportStar(require("./Options/Classes/Events/DivEvent.js"), exports);
93
93
  __exportStar(require("./Options/Classes/Modes/Modes.js"), exports);
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes