@flighthq/effects-gl 0.3.0-next.1220.6982c21 → 0.3.0-next.1248.f867198

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/effects-gl",
3
- "version": "0.3.0-next.1220.6982c21",
3
+ "version": "0.3.0-next.1248.f867198",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/flighthq/flight.git",
@@ -36,11 +36,11 @@
36
36
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
37
37
  },
38
38
  "dependencies": {
39
- "@flighthq/adjustments": "0.3.0-next.1220.6982c21",
40
- "@flighthq/effects": "0.3.0-next.1220.6982c21",
41
- "@flighthq/geometry": "0.3.0-next.1220.6982c21",
42
- "@flighthq/render-gl": "0.3.0-next.1220.6982c21",
43
- "@flighthq/types": "0.3.0-next.1220.6982c21"
39
+ "@flighthq/adjustments": "0.3.0-next.1248.f867198",
40
+ "@flighthq/effects": "0.3.0-next.1248.f867198",
41
+ "@flighthq/geometry": "0.3.0-next.1248.f867198",
42
+ "@flighthq/render-gl": "0.3.0-next.1248.f867198",
43
+ "@flighthq/types": "0.3.0-next.1248.f867198"
44
44
  },
45
45
  "devDependencies": {
46
46
  "typescript": "^5.3.0"
@@ -1,37 +1,43 @@
1
- vi.hoisted(() => {
1
+ import type * as GldropshadoweffectModule from './glDropShadowEffect';
2
+ import type * as GleffectblitshaderModule from './glEffectBlitShader';
3
+
4
+ // Mocked per file with doMock plus dynamic imports of the subject, not top-level hoisted vi.mock.
5
+ // The suite runs isolate:false over a shared module registry, so a hoisted mock is registered for
6
+ // every file in the worker rather than this one -- see the rule in the root vitest config.
7
+ let applyDropShadowEffectToGl: typeof GldropshadoweffectModule.applyDropShadowEffectToGl;
8
+ let defaultGlDropShadowEffectRunner: typeof GldropshadoweffectModule.defaultGlDropShadowEffectRunner;
9
+ let applyGlEffectBlitPass: typeof GleffectblitshaderModule.applyGlEffectBlitPass;
10
+ let applyGlEffectErasePass: typeof GleffectblitshaderModule.applyGlEffectErasePass;
11
+
12
+ beforeAll(async () => {
2
13
  vi.resetModules();
14
+ vi.doMock('@flighthq/render-gl/contract', () => {
15
+ let nextTargetId = 0;
16
+ return {
17
+ acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
18
+ ...descriptor,
19
+ id: `scratch-${nextTargetId++}`,
20
+ texture: {},
21
+ })),
22
+ clearGlRenderTarget: vi.fn(),
23
+ releaseGlRenderTarget: vi.fn(),
24
+ };
25
+ });
26
+ vi.doMock('./glEffectBlitShader', () => ({
27
+ applyGlEffectBlitOffsetPass: vi.fn(),
28
+ applyGlEffectBlitPass: vi.fn(),
29
+ applyGlEffectErasePass: vi.fn(),
30
+ }));
31
+ vi.doMock('./glEffectBoxBlur', () => ({
32
+ applyGlEffectBoxBlur: vi.fn(),
33
+ }));
34
+ vi.doMock('./glEffectTintShader', () => ({
35
+ applyGlEffectTintPass: vi.fn(),
36
+ }));
37
+ ({ applyDropShadowEffectToGl, defaultGlDropShadowEffectRunner } = await import('./glDropShadowEffect'));
38
+ ({ applyGlEffectBlitPass, applyGlEffectErasePass } = await import('./glEffectBlitShader'));
3
39
  });
4
40
 
5
- vi.mock('@flighthq/render-gl/contract', () => {
6
- let nextTargetId = 0;
7
- return {
8
- acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
9
- ...descriptor,
10
- id: `scratch-${nextTargetId++}`,
11
- texture: {},
12
- })),
13
- clearGlRenderTarget: vi.fn(),
14
- releaseGlRenderTarget: vi.fn(),
15
- };
16
- });
17
-
18
- vi.mock('./glEffectBlitShader', () => ({
19
- applyGlEffectBlitOffsetPass: vi.fn(),
20
- applyGlEffectBlitPass: vi.fn(),
21
- applyGlEffectErasePass: vi.fn(),
22
- }));
23
-
24
- vi.mock('./glEffectBoxBlur', () => ({
25
- applyGlEffectBoxBlur: vi.fn(),
26
- }));
27
-
28
- vi.mock('./glEffectTintShader', () => ({
29
- applyGlEffectTintPass: vi.fn(),
30
- }));
31
-
32
- import { applyDropShadowEffectToGl, defaultGlDropShadowEffectRunner } from './glDropShadowEffect';
33
- import { applyGlEffectBlitPass, applyGlEffectErasePass } from './glEffectBlitShader';
34
-
35
41
  describe('applyDropShadowEffectToGl', () => {
36
42
  it('is a function', () => {
37
43
  expect(typeof applyDropShadowEffectToGl).toBe('function');
@@ -85,7 +91,7 @@ beforeEach(() => {
85
91
  });
86
92
 
87
93
  afterAll(() => {
88
- vi.doUnmock('@flighthq/render-gl');
94
+ vi.doUnmock('@flighthq/render-gl/contract');
89
95
  vi.doUnmock('./glEffectBlitShader');
90
96
  vi.doUnmock('./glEffectBoxBlur');
91
97
  vi.doUnmock('./glEffectTintShader');
@@ -1,25 +1,30 @@
1
- const glMock = vi.hoisted(() => ({
1
+ import type * as GlEffectBoxBlurModule from './glEffectBoxBlur';
2
+
3
+ // Mocked per file with doMock plus a dynamic import of the subject, not a top-level hoisted vi.mock.
4
+ // The suite runs isolate:false over a shared module registry, so a hoisted mock is registered for
5
+ // every file in the worker rather than this one -- see the rule in the root vitest config.
6
+ const glMock = {
2
7
  ONE: 1,
3
8
  ZERO: 0,
4
9
  blendFunc: vi.fn(),
5
10
  uniform1f: vi.fn(),
6
11
  uniform2f: vi.fn(),
7
12
  uniform4f: vi.fn(),
8
- }));
13
+ };
14
+
15
+ let applyGlEffectBoxBlur: typeof GlEffectBoxBlurModule.applyGlEffectBoxBlur;
9
16
 
10
- vi.hoisted(() => {
17
+ beforeAll(async () => {
11
18
  vi.resetModules();
19
+ vi.doMock('@flighthq/render-gl/contract', () => ({
20
+ compileGlFullscreenProgram: vi.fn(() => ({ program: {}, vao: {} })),
21
+ drawGlFullscreenPass: vi.fn((_state, _loc, _textures, _dest, setUniforms) => {
22
+ setUniforms(glMock as never, {} as never);
23
+ }),
24
+ }));
25
+ ({ applyGlEffectBoxBlur } = await import('./glEffectBoxBlur'));
12
26
  });
13
27
 
14
- vi.mock('@flighthq/render-gl/contract', () => ({
15
- compileGlFullscreenProgram: vi.fn(() => ({ program: {}, vao: {} })),
16
- drawGlFullscreenPass: vi.fn((_state, _loc, _textures, _dest, setUniforms) => {
17
- setUniforms(glMock as never, {} as never);
18
- }),
19
- }));
20
-
21
- import { applyGlEffectBoxBlur } from './glEffectBoxBlur';
22
-
23
28
  describe('applyGlEffectBoxBlur', () => {
24
29
  it('is a function', () => {
25
30
  expect(typeof applyGlEffectBoxBlur).toBe('function');
@@ -44,7 +49,7 @@ beforeEach(() => {
44
49
  });
45
50
 
46
51
  afterAll(() => {
47
- vi.doUnmock('@flighthq/render-gl');
52
+ vi.doUnmock('@flighthq/render-gl/contract');
48
53
  vi.resetModules();
49
54
  });
50
55
 
@@ -1,40 +1,49 @@
1
- vi.hoisted(() => {
1
+ import type * as ContractModule from '@flighthq/render-gl/contract';
2
+
3
+ import type * as GleffectblitshaderModule from './glEffectBlitShader';
4
+ import type * as GleffectboxblurModule from './glEffectBoxBlur';
5
+ import type * as GlinnergloweffectModule from './glInnerGlowEffect';
6
+
7
+ // Mocked per file with doMock plus dynamic imports of the subject, not top-level hoisted vi.mock.
8
+ // The suite runs isolate:false over a shared module registry, so a hoisted mock is registered for
9
+ // every file in the worker rather than this one -- see the rule in the root vitest config.
10
+ let drawGlFullscreenPass: typeof ContractModule.drawGlFullscreenPass;
11
+ let applyGlEffectBlitPass: typeof GleffectblitshaderModule.applyGlEffectBlitPass;
12
+ let applyGlEffectBoxBlur: typeof GleffectboxblurModule.applyGlEffectBoxBlur;
13
+ let applyInnerGlowEffectToGl: typeof GlinnergloweffectModule.applyInnerGlowEffectToGl;
14
+ let defaultGlInnerGlowEffectRunner: typeof GlinnergloweffectModule.defaultGlInnerGlowEffectRunner;
15
+
16
+ beforeAll(async () => {
2
17
  vi.resetModules();
18
+ vi.doMock('@flighthq/render-gl/contract', () => {
19
+ let nextTargetId = 0;
20
+ return {
21
+ acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
22
+ ...descriptor,
23
+ id: `scratch-${nextTargetId++}`,
24
+ texture: {},
25
+ })),
26
+ clearGlRenderTarget: vi.fn(),
27
+ compileGlFullscreenProgram: vi.fn(() => ({ program: {}, vao: {} })),
28
+ drawGlFullscreenPass: vi.fn(),
29
+ releaseGlRenderTarget: vi.fn(),
30
+ };
31
+ });
32
+ vi.doMock('./glEffectBlitShader', () => ({
33
+ applyGlEffectBlitPass: vi.fn(),
34
+ }));
35
+ vi.doMock('./glEffectBoxBlur', () => ({
36
+ applyGlEffectBoxBlur: vi.fn(),
37
+ }));
38
+ vi.doMock('./glEffectTintShader', () => ({
39
+ applyGlEffectInvertTintPass: vi.fn(),
40
+ }));
41
+ ({ drawGlFullscreenPass } = await import('@flighthq/render-gl/contract'));
42
+ ({ applyGlEffectBlitPass } = await import('./glEffectBlitShader'));
43
+ ({ applyGlEffectBoxBlur } = await import('./glEffectBoxBlur'));
44
+ ({ applyInnerGlowEffectToGl, defaultGlInnerGlowEffectRunner } = await import('./glInnerGlowEffect'));
3
45
  });
4
46
 
5
- vi.mock('@flighthq/render-gl/contract', () => {
6
- let nextTargetId = 0;
7
- return {
8
- acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
9
- ...descriptor,
10
- id: `scratch-${nextTargetId++}`,
11
- texture: {},
12
- })),
13
- clearGlRenderTarget: vi.fn(),
14
- compileGlFullscreenProgram: vi.fn(() => ({ program: {}, vao: {} })),
15
- drawGlFullscreenPass: vi.fn(),
16
- releaseGlRenderTarget: vi.fn(),
17
- };
18
- });
19
-
20
- vi.mock('./glEffectBlitShader', () => ({
21
- applyGlEffectBlitPass: vi.fn(),
22
- }));
23
-
24
- vi.mock('./glEffectBoxBlur', () => ({
25
- applyGlEffectBoxBlur: vi.fn(),
26
- }));
27
-
28
- vi.mock('./glEffectTintShader', () => ({
29
- applyGlEffectInvertTintPass: vi.fn(),
30
- }));
31
-
32
- import { drawGlFullscreenPass } from '@flighthq/render-gl/contract';
33
-
34
- import { applyGlEffectBlitPass } from './glEffectBlitShader';
35
- import { applyGlEffectBoxBlur } from './glEffectBoxBlur';
36
- import { applyInnerGlowEffectToGl, defaultGlInnerGlowEffectRunner } from './glInnerGlowEffect';
37
-
38
47
  describe('applyInnerGlowEffectToGl', () => {
39
48
  it('is a function', () => {
40
49
  expect(typeof applyInnerGlowEffectToGl).toBe('function');
@@ -125,7 +134,7 @@ beforeEach(() => {
125
134
  });
126
135
 
127
136
  afterAll(() => {
128
- vi.doUnmock('@flighthq/render-gl');
137
+ vi.doUnmock('@flighthq/render-gl/contract');
129
138
  vi.doUnmock('./glEffectBlitShader');
130
139
  vi.doUnmock('./glEffectBoxBlur');
131
140
  vi.doUnmock('./glEffectTintShader');
@@ -1,41 +1,50 @@
1
- vi.hoisted(() => {
1
+ import type * as ContractModule from '@flighthq/render-gl/contract';
2
+
3
+ import type * as GleffectblitshaderModule from './glEffectBlitShader';
4
+ import type * as GleffectboxblurModule from './glEffectBoxBlur';
5
+ import type * as GlinnershadoweffectModule from './glInnerShadowEffect';
6
+
7
+ // Mocked per file with doMock plus dynamic imports of the subject, not top-level hoisted vi.mock.
8
+ // The suite runs isolate:false over a shared module registry, so a hoisted mock is registered for
9
+ // every file in the worker rather than this one -- see the rule in the root vitest config.
10
+ let drawGlFullscreenPass: typeof ContractModule.drawGlFullscreenPass;
11
+ let applyGlEffectBlitPass: typeof GleffectblitshaderModule.applyGlEffectBlitPass;
12
+ let applyGlEffectBoxBlur: typeof GleffectboxblurModule.applyGlEffectBoxBlur;
13
+ let applyInnerShadowEffectToGl: typeof GlinnershadoweffectModule.applyInnerShadowEffectToGl;
14
+ let defaultGlInnerShadowEffectRunner: typeof GlinnershadoweffectModule.defaultGlInnerShadowEffectRunner;
15
+
16
+ beforeAll(async () => {
2
17
  vi.resetModules();
18
+ vi.doMock('@flighthq/render-gl/contract', () => {
19
+ let nextTargetId = 0;
20
+ return {
21
+ acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
22
+ ...descriptor,
23
+ id: `scratch-${nextTargetId++}`,
24
+ texture: {},
25
+ })),
26
+ clearGlRenderTarget: vi.fn(),
27
+ compileGlFullscreenProgram: vi.fn(() => ({ program: {}, vao: {} })),
28
+ drawGlFullscreenPass: vi.fn(),
29
+ releaseGlRenderTarget: vi.fn(),
30
+ };
31
+ });
32
+ vi.doMock('./glEffectBlitShader', () => ({
33
+ applyGlEffectBlitOffsetPass: vi.fn(),
34
+ applyGlEffectBlitPass: vi.fn(),
35
+ }));
36
+ vi.doMock('./glEffectBoxBlur', () => ({
37
+ applyGlEffectBoxBlur: vi.fn(),
38
+ }));
39
+ vi.doMock('./glEffectTintShader', () => ({
40
+ applyGlEffectInvertTintPass: vi.fn(),
41
+ }));
42
+ ({ drawGlFullscreenPass } = await import('@flighthq/render-gl/contract'));
43
+ ({ applyGlEffectBlitPass } = await import('./glEffectBlitShader'));
44
+ ({ applyGlEffectBoxBlur } = await import('./glEffectBoxBlur'));
45
+ ({ applyInnerShadowEffectToGl, defaultGlInnerShadowEffectRunner } = await import('./glInnerShadowEffect'));
3
46
  });
4
47
 
5
- vi.mock('@flighthq/render-gl/contract', () => {
6
- let nextTargetId = 0;
7
- return {
8
- acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
9
- ...descriptor,
10
- id: `scratch-${nextTargetId++}`,
11
- texture: {},
12
- })),
13
- clearGlRenderTarget: vi.fn(),
14
- compileGlFullscreenProgram: vi.fn(() => ({ program: {}, vao: {} })),
15
- drawGlFullscreenPass: vi.fn(),
16
- releaseGlRenderTarget: vi.fn(),
17
- };
18
- });
19
-
20
- vi.mock('./glEffectBlitShader', () => ({
21
- applyGlEffectBlitOffsetPass: vi.fn(),
22
- applyGlEffectBlitPass: vi.fn(),
23
- }));
24
-
25
- vi.mock('./glEffectBoxBlur', () => ({
26
- applyGlEffectBoxBlur: vi.fn(),
27
- }));
28
-
29
- vi.mock('./glEffectTintShader', () => ({
30
- applyGlEffectInvertTintPass: vi.fn(),
31
- }));
32
-
33
- import { drawGlFullscreenPass } from '@flighthq/render-gl/contract';
34
-
35
- import { applyGlEffectBlitPass } from './glEffectBlitShader';
36
- import { applyGlEffectBoxBlur } from './glEffectBoxBlur';
37
- import { applyInnerShadowEffectToGl, defaultGlInnerShadowEffectRunner } from './glInnerShadowEffect';
38
-
39
48
  describe('applyInnerShadowEffectToGl', () => {
40
49
  it('is a function', () => {
41
50
  expect(typeof applyInnerShadowEffectToGl).toBe('function');
@@ -125,7 +134,7 @@ beforeEach(() => {
125
134
  });
126
135
 
127
136
  afterAll(() => {
128
- vi.doUnmock('@flighthq/render-gl');
137
+ vi.doUnmock('@flighthq/render-gl/contract');
129
138
  vi.doUnmock('./glEffectBlitShader');
130
139
  vi.doUnmock('./glEffectBoxBlur');
131
140
  vi.doUnmock('./glEffectTintShader');
@@ -1,36 +1,42 @@
1
- vi.hoisted(() => {
1
+ import type * as GleffectblitshaderModule from './glEffectBlitShader';
2
+ import type * as GloutergloweffectModule from './glOuterGlowEffect';
3
+
4
+ // Mocked per file with doMock plus dynamic imports of the subject, not top-level hoisted vi.mock.
5
+ // The suite runs isolate:false over a shared module registry, so a hoisted mock is registered for
6
+ // every file in the worker rather than this one -- see the rule in the root vitest config.
7
+ let applyGlEffectBlitPass: typeof GleffectblitshaderModule.applyGlEffectBlitPass;
8
+ let applyGlEffectErasePass: typeof GleffectblitshaderModule.applyGlEffectErasePass;
9
+ let applyOuterGlowEffectToGl: typeof GloutergloweffectModule.applyOuterGlowEffectToGl;
10
+ let defaultGlOuterGlowEffectRunner: typeof GloutergloweffectModule.defaultGlOuterGlowEffectRunner;
11
+
12
+ beforeAll(async () => {
2
13
  vi.resetModules();
14
+ vi.doMock('@flighthq/render-gl/contract', () => {
15
+ let nextTargetId = 0;
16
+ return {
17
+ acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
18
+ ...descriptor,
19
+ id: `scratch-${nextTargetId++}`,
20
+ texture: {},
21
+ })),
22
+ clearGlRenderTarget: vi.fn(),
23
+ releaseGlRenderTarget: vi.fn(),
24
+ };
25
+ });
26
+ vi.doMock('./glEffectBlitShader', () => ({
27
+ applyGlEffectBlitPass: vi.fn(),
28
+ applyGlEffectErasePass: vi.fn(),
29
+ }));
30
+ vi.doMock('./glEffectBoxBlur', () => ({
31
+ applyGlEffectBoxBlur: vi.fn(),
32
+ }));
33
+ vi.doMock('./glEffectTintShader', () => ({
34
+ applyGlEffectTintPass: vi.fn(),
35
+ }));
36
+ ({ applyGlEffectBlitPass, applyGlEffectErasePass } = await import('./glEffectBlitShader'));
37
+ ({ applyOuterGlowEffectToGl, defaultGlOuterGlowEffectRunner } = await import('./glOuterGlowEffect'));
3
38
  });
4
39
 
5
- vi.mock('@flighthq/render-gl/contract', () => {
6
- let nextTargetId = 0;
7
- return {
8
- acquireGlRenderTarget: vi.fn((_state, _pool, descriptor) => ({
9
- ...descriptor,
10
- id: `scratch-${nextTargetId++}`,
11
- texture: {},
12
- })),
13
- clearGlRenderTarget: vi.fn(),
14
- releaseGlRenderTarget: vi.fn(),
15
- };
16
- });
17
-
18
- vi.mock('./glEffectBlitShader', () => ({
19
- applyGlEffectBlitPass: vi.fn(),
20
- applyGlEffectErasePass: vi.fn(),
21
- }));
22
-
23
- vi.mock('./glEffectBoxBlur', () => ({
24
- applyGlEffectBoxBlur: vi.fn(),
25
- }));
26
-
27
- vi.mock('./glEffectTintShader', () => ({
28
- applyGlEffectTintPass: vi.fn(),
29
- }));
30
-
31
- import { applyGlEffectBlitPass, applyGlEffectErasePass } from './glEffectBlitShader';
32
- import { applyOuterGlowEffectToGl, defaultGlOuterGlowEffectRunner } from './glOuterGlowEffect';
33
-
34
40
  describe('applyOuterGlowEffectToGl', () => {
35
41
  it('is a function', () => {
36
42
  expect(typeof applyOuterGlowEffectToGl).toBe('function');
@@ -84,7 +90,7 @@ beforeEach(() => {
84
90
  });
85
91
 
86
92
  afterAll(() => {
87
- vi.doUnmock('@flighthq/render-gl');
93
+ vi.doUnmock('@flighthq/render-gl/contract');
88
94
  vi.doUnmock('./glEffectBlitShader');
89
95
  vi.doUnmock('./glEffectBoxBlur');
90
96
  vi.doUnmock('./glEffectTintShader');