@tsparticles/ember 4.3.2 → 4.5.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.
package/CHANGELOG.md CHANGED
@@ -3,30 +3,34 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [4.3.2](https://github.com/tsparticles/tsparticles/compare/v4.3.1...v4.3.2) (2026-07-10)
6
+ # [4.5.0](https://github.com/tsparticles/tsparticles/compare/v4.4.0...v4.5.0) (2026-10-25)
7
7
 
8
- **Note:** Version bump only for package @tsparticles/ember
8
+ ### Bug Fixes
9
9
 
10
+ - fixed some issues in mcp server and some coderabbit reports ([4700d3e](https://github.com/tsparticles/tsparticles/commit/4700d3e953f3a3a1930db064a6b6b21d61233cdf))
10
11
 
12
+ # [4.4.0](https://github.com/tsparticles/tsparticles/compare/v4.3.3...v4.4.0) (2026-08-30)
11
13
 
14
+ ### Bug Fixes
12
15
 
16
+ - various fixes for 4.4.0 ([475d06d](https://github.com/tsparticles/tsparticles/commit/475d06da27e1497bb097c0822fcfcb72d7142456))
13
17
 
14
- ## [4.3.1](https://github.com/tsparticles/tsparticles/compare/v4.3.0...v4.3.1) (2026-07-01)
18
+ ## [4.3.3](https://github.com/tsparticles/tsparticles/compare/v4.3.2...v4.3.3) (2026-07-23)
15
19
 
16
20
  **Note:** Version bump only for package @tsparticles/ember
17
21
 
22
+ ## [4.3.2](https://github.com/tsparticles/tsparticles/compare/v4.3.1...v4.3.2) (2026-07-10)
18
23
 
24
+ **Note:** Version bump only for package @tsparticles/ember
19
25
 
26
+ ## [4.3.1](https://github.com/tsparticles/tsparticles/compare/v4.3.0...v4.3.1) (2026-07-01)
20
27
 
28
+ **Note:** Version bump only for package @tsparticles/ember
21
29
 
22
30
  # [4.3.0](https://github.com/tsparticles/tsparticles/compare/v4.2.1...v4.3.0) (2026-06-27)
23
31
 
24
32
  **Note:** Version bump only for package @tsparticles/ember
25
33
 
26
-
27
-
28
-
29
-
30
34
  ## [4.2.1](https://github.com/tsparticles/tsparticles/compare/v4.2.0...v4.2.1) (2026-06-19)
31
35
 
32
36
  **Note:** Version bump only for package @tsparticles/ember
package/package.dist.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/ember",
3
- "version": "4.3.2",
3
+ "version": "4.5.0",
4
4
  "description": "Ember.js component for using tsParticles",
5
5
  "repository": {
6
6
  "type": "git",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/ember",
3
- "version": "4.3.2",
3
+ "version": "4.5.0",
4
4
  "description": "Official tsParticles Ember.js Component - Easily create highly customizable particle, confetti and fireworks animations and use them as animated backgrounds for your website.",
5
5
  "keywords": [
6
6
  "ember-addon",
@@ -39,15 +39,17 @@
39
39
  "lint:js": "eslint . --cache",
40
40
  "lint:js:fix": "eslint . --fix",
41
41
  "start": "ember serve",
42
- "test": "npm-run-all --print-name \"lint\" \"test:*\"",
42
+ "test": "pnpm run test:vitest",
43
43
  "test:ember": "echo test",
44
44
  "test:ember-compatibility": "echo ember try:each",
45
45
  "prepack": "ember ts:precompile",
46
46
  "postpack": "ember ts:clean",
47
- "version": "node ../../scripts/resolve-dist-package.cjs && git add package.dist.json"
47
+ "version": "node ../../scripts/resolve-dist-package.cjs && git add package.dist.json",
48
+ "test:vitest": "vitest run --config vitest.config.ts",
49
+ "test:ci": "pnpm run test:vitest"
48
50
  },
49
51
  "dependencies": {
50
- "@tsparticles/engine": "4.3.2",
52
+ "@tsparticles/engine": "4.5.0",
51
53
  "ember-auto-import": "^2.13.1",
52
54
  "ember-cli-babel": "^8.3.1",
53
55
  "ember-cli-htmlbars": "^7.0.1",
@@ -63,7 +65,8 @@
63
65
  "@embroider/test-setup": "^4.0.0",
64
66
  "@glimmer/component": "^2.1.1",
65
67
  "@glimmer/tracking": "^1.1.2",
66
- "@tsparticles/preset-snow": "4.3.2",
68
+ "@tsconfig/ember": "^3.0.12",
69
+ "@tsparticles/preset-snow": "4.5.0",
67
70
  "@types/ember": "^4.0.11",
68
71
  "@types/ember__application": "^4.0.11",
69
72
  "@types/ember__array": "^4.0.10",
@@ -84,9 +87,9 @@
84
87
  "@types/ember__utils": "^4.0.7",
85
88
  "@types/qunit": "^2.19.14",
86
89
  "@types/rsvp": "^4.0.9",
87
- "@types/sinon": "^21.0.1",
90
+ "@types/sinon": "^22.0.0",
88
91
  "broccoli-asset-rev": "^3.0.0",
89
- "ember-cli": "~7.0.1",
92
+ "ember-cli": "~7.1.0",
90
93
  "ember-cli-dependency-checker": "^3.4.0",
91
94
  "ember-cli-inject-live-reload": "^2.1.0",
92
95
  "ember-cli-sri": "^2.1.1",
@@ -101,20 +104,21 @@
101
104
  "ember-source-channel-url": "^3.0.0",
102
105
  "ember-template-lint": "^7.9.3",
103
106
  "ember-try": "^4.0.0",
104
- "eslint": "^10.6.0",
107
+ "eslint": "^10.13.0",
105
108
  "eslint-config-prettier": "^10.1.8",
106
- "eslint-plugin-ember": "^13.4.0",
107
- "eslint-plugin-n": "^18.2.1",
108
- "eslint-plugin-prettier": "^5.5.6",
109
+ "eslint-plugin-ember": "^13.5.0",
110
+ "eslint-plugin-n": "^18.3.0",
111
+ "eslint-plugin-prettier": "^5.5.7",
109
112
  "eslint-plugin-qunit": "^8.2.6",
110
113
  "loader.js": "^4.7.0",
111
114
  "npm-run-all": "^4.1.5",
112
- "prettier": "^3.9.4",
115
+ "prettier": "^3.9.10",
113
116
  "qunit": "^2.26.0",
114
- "qunit-dom": "^3.5.1",
115
- "tsparticles": "4.3.2",
117
+ "qunit-dom": "^3.6.0",
118
+ "tsparticles": "4.5.0",
116
119
  "typescript": "^6.0.3",
117
- "webpack": "^5.108.0"
120
+ "vitest": "^5.0.0",
121
+ "webpack": "^5.112.2"
118
122
  },
119
123
  "engines": {
120
124
  "node": "14.* || 16.* || >= 18"
@@ -145,5 +149,5 @@
145
149
  "peerDependencies": {
146
150
  "@tsparticles/engine": "workspace:*"
147
151
  },
148
- "gitHead": "527bc42f2324fbb9b93262efa3d90a5517532b8b"
152
+ "gitHead": "a637373a03c008ab38edaaecf6524ec4b8e332c0"
149
153
  }
@@ -0,0 +1,67 @@
1
+ /* eslint-disable */
2
+ import { describe, expect, it, vi } from 'vitest';
3
+
4
+ const { initMock } = vi.hoisted(() => ({
5
+ initMock: vi.fn(async () => Promise.resolve()),
6
+ }));
7
+
8
+ vi.mock('@tsparticles/engine', () => ({
9
+ tsParticles: {
10
+ init: initMock,
11
+ },
12
+ }));
13
+
14
+ type EngineModule = typeof import('../addon/utils/init-particles-engine.js');
15
+
16
+ async function loadEngineModule(): Promise<EngineModule> {
17
+ vi.resetModules();
18
+
19
+ return await import('../addon/utils/init-particles-engine.js');
20
+ }
21
+
22
+ describe('initParticlesEngine (ember addon)', () => {
23
+ it('calls the init callback with the engine and initializes it', async () => {
24
+ const { tsParticles } = await import('@tsparticles/engine');
25
+
26
+ (tsParticles.init as ReturnType<typeof vi.fn>).mockClear();
27
+
28
+ const module = await loadEngineModule(),
29
+ init = vi.fn(async () => Promise.resolve());
30
+
31
+ await module.initParticlesEngine(init);
32
+
33
+ expect(init).toHaveBeenCalledTimes(1);
34
+ expect(init).toHaveBeenCalledWith(tsParticles);
35
+ expect(tsParticles.init).toHaveBeenCalledTimes(1);
36
+ expect(module.isParticlesEngineInitialized()).toBe(true);
37
+ });
38
+
39
+ it('does not re-run the init when already initialized', async () => {
40
+ const module = await loadEngineModule(),
41
+ init = vi.fn(async () => Promise.resolve());
42
+
43
+ await module.initParticlesEngine(init);
44
+ await module.initParticlesEngine(init);
45
+
46
+ expect(init).toHaveBeenCalledTimes(1);
47
+ });
48
+
49
+ it('throws when the init callback changes across the app lifecycle', async () => {
50
+ const module = await loadEngineModule(),
51
+ first = module.initParticlesEngine(async () => Promise.resolve());
52
+
53
+ await expect(
54
+ module.initParticlesEngine(async () => Promise.resolve()),
55
+ ).rejects.toThrow(/stable across the app lifecycle/i);
56
+
57
+ await first;
58
+ });
59
+
60
+ it('resolves the wait helper', async () => {
61
+ const module = await loadEngineModule();
62
+
63
+ await expect(
64
+ module.waitForParticlesEngineInitialization(),
65
+ ).resolves.toBeUndefined();
66
+ });
67
+ });
@@ -0,0 +1,8 @@
1
+ import { defineConfig } from 'vitest/config';
2
+
3
+ export default defineConfig({
4
+ test: {
5
+ environment: 'node',
6
+ include: ['tests-vitest/**/*.test.ts'],
7
+ },
8
+ });