@vpmedia/phaser 1.84.0 → 1.86.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/.oxlintrc.json +28 -0
- package/CHANGELOG.md +6 -0
- package/SECURITY.md +5 -0
- package/commitlint.config.js +117 -0
- package/eslint.config.js +2 -23
- package/lefthook.yml +17 -4
- package/package.json +19 -14
- package/src/phaser/core/animation_manager.js +6 -2
- package/src/phaser/core/game.js +2 -8
- package/src/phaser/core/loader.js +4 -2
- package/src/phaser/core/sound_manager.js +9 -5
- package/src/phaser/display/canvas/tinter.js +4 -2
- package/types/phaser/core/animation_manager.d.ts.map +1 -1
- package/types/phaser/core/game.d.ts +0 -1
- package/types/phaser/core/game.d.ts.map +1 -1
- package/types/phaser/core/loader.d.ts.map +1 -1
- package/types/phaser/core/sound_manager.d.ts.map +1 -1
- package/types/phaser/display/canvas/tinter.d.ts.map +1 -1
package/.oxlintrc.json
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./node_modules/oxlint/configuration_schema.json",
|
|
3
|
+
"env": { "browser": true },
|
|
4
|
+
"plugins": [
|
|
5
|
+
"eslint",
|
|
6
|
+
"import",
|
|
7
|
+
"jsdoc",
|
|
8
|
+
"jsx-a11y",
|
|
9
|
+
"oxc",
|
|
10
|
+
"promise",
|
|
11
|
+
"react-perf",
|
|
12
|
+
"react",
|
|
13
|
+
"typescript",
|
|
14
|
+
"unicorn"
|
|
15
|
+
],
|
|
16
|
+
"categories": {
|
|
17
|
+
"correctness": "warn",
|
|
18
|
+
"nursery": "warn",
|
|
19
|
+
"pedantic": "warn",
|
|
20
|
+
"perf": "warn",
|
|
21
|
+
"restriction": "warn",
|
|
22
|
+
"style": "warn",
|
|
23
|
+
"suspicious": "warn"
|
|
24
|
+
},
|
|
25
|
+
"rules": {
|
|
26
|
+
"no-unused-vars": "off"
|
|
27
|
+
}
|
|
28
|
+
}
|
package/CHANGELOG.md
ADDED
package/SECURITY.md
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
const config = {
|
|
2
|
+
rules: {
|
|
3
|
+
'body-leading-blank': [1, 'always'],
|
|
4
|
+
'body-max-line-length': [2, 'always', 100],
|
|
5
|
+
'footer-leading-blank': [1, 'always'],
|
|
6
|
+
'footer-max-line-length': [2, 'always', 100],
|
|
7
|
+
'header-max-length': [2, 'always', 100],
|
|
8
|
+
'header-trim': [2, 'always'],
|
|
9
|
+
'subject-case': [2, 'never', ['sentence-case', 'start-case', 'pascal-case', 'upper-case']],
|
|
10
|
+
'subject-empty': [2, 'never'],
|
|
11
|
+
'subject-full-stop': [2, 'never', '.'],
|
|
12
|
+
'type-case': [2, 'always', 'lower-case'],
|
|
13
|
+
'type-empty': [2, 'never'],
|
|
14
|
+
'type-enum': [
|
|
15
|
+
2,
|
|
16
|
+
'always',
|
|
17
|
+
['build', 'chore', 'ci', 'docs', 'feat', 'fix', 'perf', 'refactor', 'revert', 'style', 'test'],
|
|
18
|
+
],
|
|
19
|
+
},
|
|
20
|
+
prompt: {
|
|
21
|
+
questions: {
|
|
22
|
+
type: {
|
|
23
|
+
description: "Select the type of change that you're committing",
|
|
24
|
+
enum: {
|
|
25
|
+
feat: {
|
|
26
|
+
description: 'A new feature',
|
|
27
|
+
title: 'Features',
|
|
28
|
+
emoji: '✨',
|
|
29
|
+
},
|
|
30
|
+
fix: {
|
|
31
|
+
description: 'A bug fix',
|
|
32
|
+
title: 'Bug Fixes',
|
|
33
|
+
emoji: '🐛',
|
|
34
|
+
},
|
|
35
|
+
docs: {
|
|
36
|
+
description: 'Documentation only changes',
|
|
37
|
+
title: 'Documentation',
|
|
38
|
+
emoji: '📚',
|
|
39
|
+
},
|
|
40
|
+
style: {
|
|
41
|
+
description:
|
|
42
|
+
'Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)',
|
|
43
|
+
title: 'Styles',
|
|
44
|
+
emoji: '💎',
|
|
45
|
+
},
|
|
46
|
+
refactor: {
|
|
47
|
+
description: 'A code change that neither fixes a bug nor adds a feature',
|
|
48
|
+
title: 'Code Refactoring',
|
|
49
|
+
emoji: '📦',
|
|
50
|
+
},
|
|
51
|
+
perf: {
|
|
52
|
+
description: 'A code change that improves performance',
|
|
53
|
+
title: 'Performance Improvements',
|
|
54
|
+
emoji: '🚀',
|
|
55
|
+
},
|
|
56
|
+
test: {
|
|
57
|
+
description: 'Adding missing tests or correcting existing tests',
|
|
58
|
+
title: 'Tests',
|
|
59
|
+
emoji: '🚨',
|
|
60
|
+
},
|
|
61
|
+
build: {
|
|
62
|
+
description:
|
|
63
|
+
'Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)',
|
|
64
|
+
title: 'Builds',
|
|
65
|
+
emoji: '🛠',
|
|
66
|
+
},
|
|
67
|
+
ci: {
|
|
68
|
+
description:
|
|
69
|
+
'Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)',
|
|
70
|
+
title: 'Continuous Integrations',
|
|
71
|
+
emoji: '⚙️',
|
|
72
|
+
},
|
|
73
|
+
chore: {
|
|
74
|
+
description: "Other changes that don't modify src or test files",
|
|
75
|
+
title: 'Chores',
|
|
76
|
+
emoji: '♻️',
|
|
77
|
+
},
|
|
78
|
+
revert: {
|
|
79
|
+
description: 'Reverts a previous commit',
|
|
80
|
+
title: 'Reverts',
|
|
81
|
+
emoji: '🗑',
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
scope: {
|
|
86
|
+
description: 'What is the scope of this change (e.g. component or file name)',
|
|
87
|
+
},
|
|
88
|
+
subject: {
|
|
89
|
+
description: 'Write a short, imperative tense description of the change',
|
|
90
|
+
},
|
|
91
|
+
body: {
|
|
92
|
+
description: 'Provide a longer description of the change',
|
|
93
|
+
},
|
|
94
|
+
isBreaking: {
|
|
95
|
+
description: 'Are there any breaking changes?',
|
|
96
|
+
},
|
|
97
|
+
breakingBody: {
|
|
98
|
+
description: 'A BREAKING CHANGE commit requires a body. Please enter a longer description of the commit itself',
|
|
99
|
+
},
|
|
100
|
+
breaking: {
|
|
101
|
+
description: 'Describe the breaking changes',
|
|
102
|
+
},
|
|
103
|
+
isIssueAffected: {
|
|
104
|
+
description: 'Does this change affect any open issues?',
|
|
105
|
+
},
|
|
106
|
+
issuesBody: {
|
|
107
|
+
description:
|
|
108
|
+
'If issues are closed, the commit requires a body. Please enter a longer description of the commit itself',
|
|
109
|
+
},
|
|
110
|
+
issues: {
|
|
111
|
+
description: 'Add issue references (e.g. "fix #123", "re #123".)',
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
export default config;
|
package/eslint.config.js
CHANGED
|
@@ -24,7 +24,7 @@ export default [
|
|
|
24
24
|
...globals.vitest,
|
|
25
25
|
...globals.browser,
|
|
26
26
|
...globals.node,
|
|
27
|
-
...globals.
|
|
27
|
+
...globals.es2026,
|
|
28
28
|
},
|
|
29
29
|
parserOptions: {
|
|
30
30
|
ecmaVersion: 'latest',
|
|
@@ -60,6 +60,7 @@ export default [
|
|
|
60
60
|
'unicorn/no-array-for-each': 'off',
|
|
61
61
|
'unicorn/no-array-reverse': 'off',
|
|
62
62
|
'unicorn/no-for-loop': 'off',
|
|
63
|
+
'unicorn/no-immediate-mutation': 'warn',
|
|
63
64
|
'unicorn/no-lonely-if': 'off',
|
|
64
65
|
'unicorn/no-negated-condition': 'off',
|
|
65
66
|
'unicorn/no-nested-ternary': 'off',
|
|
@@ -96,28 +97,6 @@ export default [
|
|
|
96
97
|
'unicorn/prefer-ternary': 'off',
|
|
97
98
|
'unicorn/prevent-abbreviations': 'off',
|
|
98
99
|
'unicorn/switch-case-braces': 'off',
|
|
99
|
-
'jsdoc/require-jsdoc': [
|
|
100
|
-
'warn',
|
|
101
|
-
{
|
|
102
|
-
require: {
|
|
103
|
-
FunctionDeclaration: true,
|
|
104
|
-
MethodDefinition: true,
|
|
105
|
-
ClassDeclaration: false,
|
|
106
|
-
ArrowFunctionExpression: false,
|
|
107
|
-
FunctionExpression: false,
|
|
108
|
-
},
|
|
109
|
-
},
|
|
110
|
-
],
|
|
111
|
-
'jsdoc/check-indentation': 1,
|
|
112
|
-
'jsdoc/check-line-alignment': 1,
|
|
113
|
-
'jsdoc/check-syntax': 1,
|
|
114
|
-
'jsdoc/require-asterisk-prefix': 1,
|
|
115
|
-
'jsdoc/require-description': 1,
|
|
116
|
-
'jsdoc/require-description-complete-sentence': 1,
|
|
117
|
-
'jsdoc/require-hyphen-before-param-description': 1,
|
|
118
|
-
'jsdoc/require-throws': 1,
|
|
119
|
-
'jsdoc/sort-tags': 1,
|
|
120
|
-
'jsdoc/no-undefined-types': 0,
|
|
121
100
|
},
|
|
122
101
|
},
|
|
123
102
|
];
|
package/lefthook.yml
CHANGED
|
@@ -1,13 +1,26 @@
|
|
|
1
|
+
# Lefthook configuration
|
|
2
|
+
# @namespace javascript
|
|
3
|
+
# @copyright Copyright (c) 2025-present VPMedia
|
|
4
|
+
# @author Andras Csizmadia <andras@vpmedia.hu>
|
|
5
|
+
# @version 1.0.0
|
|
6
|
+
# @see https://github.com/evilmartians/lefthook/blob/master/docs/configuration.md
|
|
7
|
+
|
|
1
8
|
pre-commit:
|
|
2
9
|
parallel: false
|
|
3
10
|
commands:
|
|
4
11
|
lint_yaml:
|
|
5
12
|
glob: "*.{yml,yaml}"
|
|
13
|
+
run: yq 'true' {staged_files} > /dev/null
|
|
14
|
+
format_js:
|
|
15
|
+
glob: "*.{js,jsx}"
|
|
6
16
|
run: |
|
|
7
17
|
set -e
|
|
8
|
-
|
|
18
|
+
pnpm exec prettier --write -- {staged_files}
|
|
19
|
+
git add {staged_files} &> /dev/null || true
|
|
9
20
|
lint_js:
|
|
10
21
|
glob: "*.{js,jsx}"
|
|
11
|
-
run:
|
|
12
|
-
|
|
13
|
-
|
|
22
|
+
run: pnpm exec eslint {staged_files}
|
|
23
|
+
commit-msg:
|
|
24
|
+
commands:
|
|
25
|
+
commitlint:
|
|
26
|
+
run: pnpm exec commitlint --edit {1}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vpmedia/phaser",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.86.0",
|
|
4
4
|
"description": "@vpmedia/phaser is the modern ECMAScript port of the popular Phaser game engine v2.6.2",
|
|
5
5
|
"author": "Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -23,21 +23,25 @@
|
|
|
23
23
|
"types": "./types/index.d.ts",
|
|
24
24
|
"type": "module",
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@
|
|
27
|
-
"@vpmedia/simplify": "^1.31.0",
|
|
26
|
+
"@vpmedia/simplify": "^1.45.0",
|
|
28
27
|
"uuid": "^13.0.0"
|
|
29
28
|
},
|
|
30
29
|
"devDependencies": {
|
|
31
|
-
"@
|
|
32
|
-
"@
|
|
33
|
-
"eslint": "^9.
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
30
|
+
"@commitlint/cli": "^20.1.0",
|
|
31
|
+
"@commitlint/config-conventional": "^20.0.0",
|
|
32
|
+
"@eslint/js": "^9.39.1",
|
|
33
|
+
"@types/node": "^24.10.1",
|
|
34
|
+
"@vitest/coverage-v8": "^4.0.13",
|
|
35
|
+
"eslint": "^9.39.1",
|
|
36
|
+
"eslint-plugin-jsdoc": "^61.4.0",
|
|
37
|
+
"eslint-plugin-oxlint": "^1.29.0",
|
|
38
|
+
"eslint-plugin-unicorn": "^62.0.0",
|
|
39
|
+
"globals": "^16.5.0",
|
|
40
|
+
"jsdom": "^27.2.0",
|
|
41
|
+
"oxlint": "^1.29.0",
|
|
38
42
|
"prettier": "^3.6.2",
|
|
39
43
|
"typescript": "^5.9.3",
|
|
40
|
-
"vitest": "^
|
|
44
|
+
"vitest": "^4.0.13"
|
|
41
45
|
},
|
|
42
46
|
"browserslist": [
|
|
43
47
|
"> 0.5%",
|
|
@@ -47,9 +51,10 @@
|
|
|
47
51
|
],
|
|
48
52
|
"scripts": {
|
|
49
53
|
"build": "exit 0",
|
|
50
|
-
"
|
|
54
|
+
"check": "pnpm lint && pnpm test && pnpm typecheck",
|
|
55
|
+
"format": "prettier --write \"./**/*.{js,jsx,mjs,cjs,ts,tsx,json,md,css}\"",
|
|
51
56
|
"lint": "eslint \"**/*.{js,jsx}\"",
|
|
52
|
-
"
|
|
53
|
-
"
|
|
57
|
+
"test": "vitest --coverage --pass-with-no-tests",
|
|
58
|
+
"typecheck": "tsc"
|
|
54
59
|
}
|
|
55
60
|
}
|
|
@@ -312,7 +312,9 @@ export class AnimationManager {
|
|
|
312
312
|
this.sprite.setFrame(this.currentFrame);
|
|
313
313
|
}
|
|
314
314
|
} else {
|
|
315
|
-
this.game.
|
|
315
|
+
this.game.logger.exception('AnimationManager', new Error(ENGINE_ERROR_CANNOT_SET_FRAME), {
|
|
316
|
+
tags: { 'asset.key': value },
|
|
317
|
+
});
|
|
316
318
|
}
|
|
317
319
|
}
|
|
318
320
|
|
|
@@ -338,7 +340,9 @@ export class AnimationManager {
|
|
|
338
340
|
this.sprite.setFrame(this.currentFrame);
|
|
339
341
|
}
|
|
340
342
|
} else {
|
|
341
|
-
this.game.
|
|
343
|
+
this.game.logger.exception('AnimationManager', new Error(ENGINE_ERROR_CANNOT_SET_FRAME_NAME), {
|
|
344
|
+
tags: { 'asset.key': value },
|
|
345
|
+
});
|
|
342
346
|
}
|
|
343
347
|
}
|
|
344
348
|
}
|
package/src/phaser/core/game.js
CHANGED
|
@@ -159,7 +159,8 @@ export class Game {
|
|
|
159
159
|
if (window.PhaserRegistry?.GL_SHADER_INFO_LOG) {
|
|
160
160
|
this.logger.warn('WebGL shader info', { log: window.PhaserRegistry.GL_SHADER_INFO_LOG });
|
|
161
161
|
}
|
|
162
|
-
|
|
162
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
163
|
+
this.logger.exception('Game', typedError);
|
|
163
164
|
}
|
|
164
165
|
}
|
|
165
166
|
if (!isWebGlReady) {
|
|
@@ -217,13 +218,6 @@ export class Game {
|
|
|
217
218
|
this.parseConfigElement(config, 'renderType', RENDER_AUTO);
|
|
218
219
|
this.parseConfigElement(config, 'isForceDisabledAudio', false);
|
|
219
220
|
this.parseConfigElement(config, 'maxParallelDownloads', 16);
|
|
220
|
-
if (config.exceptionHandler) {
|
|
221
|
-
this.exceptionHandler = config.exceptionHandler;
|
|
222
|
-
} else {
|
|
223
|
-
this.exceptionHandler = (e, tags) => {
|
|
224
|
-
this.logger.error(e, tags);
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
221
|
if (config.parent) {
|
|
228
222
|
this.parent = config.parent;
|
|
229
223
|
}
|
|
@@ -850,12 +850,13 @@ export class Loader {
|
|
|
850
850
|
}
|
|
851
851
|
return onload.call(scope, file, xhr);
|
|
852
852
|
} catch (error) {
|
|
853
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
853
854
|
// If this was the last file in the queue and an error is thrown in the create method
|
|
854
855
|
// then it's caught here, so be sure we don't carry on processing it
|
|
855
856
|
if (!scope.hasLoaded) {
|
|
856
857
|
scope.asyncComplete(file, error.message || 'Exception');
|
|
857
858
|
} else {
|
|
858
|
-
scope.game.
|
|
859
|
+
scope.game.logger.exception('Loader', typedError);
|
|
859
860
|
}
|
|
860
861
|
}
|
|
861
862
|
return null;
|
|
@@ -870,10 +871,11 @@ export class Loader {
|
|
|
870
871
|
try {
|
|
871
872
|
return onerror.call(scope, file, xhr);
|
|
872
873
|
} catch (error) {
|
|
874
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
873
875
|
if (!scope.hasLoaded) {
|
|
874
876
|
scope.asyncComplete(file, error.message || 'Exception');
|
|
875
877
|
} else {
|
|
876
|
-
scope.game.
|
|
878
|
+
scope.game.logger.exception('Loader', typedError);
|
|
877
879
|
}
|
|
878
880
|
}
|
|
879
881
|
}
|
|
@@ -60,7 +60,8 @@ export class SoundManager {
|
|
|
60
60
|
} catch (error) {
|
|
61
61
|
this.context = null;
|
|
62
62
|
setAudioDisabledState();
|
|
63
|
-
|
|
63
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
64
|
+
this.game.logger.exception('SoundManager', typedError);
|
|
64
65
|
}
|
|
65
66
|
} else if (window.webkitAudioContext) {
|
|
66
67
|
try {
|
|
@@ -70,11 +71,12 @@ export class SoundManager {
|
|
|
70
71
|
} catch (error) {
|
|
71
72
|
this.context = null;
|
|
72
73
|
setAudioDisabledState();
|
|
73
|
-
|
|
74
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
75
|
+
this.game.logger.exception('SoundManager', typedError);
|
|
74
76
|
}
|
|
75
77
|
}
|
|
76
78
|
if (!this.context) {
|
|
77
|
-
this.game.
|
|
79
|
+
this.game.logger.exception('SoundManager', new Error(ENGINE_ERROR_CREATING_AUDIO_CONTEXT));
|
|
78
80
|
setAudioDisabledState();
|
|
79
81
|
return;
|
|
80
82
|
}
|
|
@@ -196,7 +198,9 @@ export class SoundManager {
|
|
|
196
198
|
error,
|
|
197
199
|
});
|
|
198
200
|
this.removeUnlockHandlers();
|
|
199
|
-
this.game.
|
|
201
|
+
this.game.logger.exception('', error, {
|
|
202
|
+
tags: { 'audio.initialState': initialState, 'audio.state': this.context.state },
|
|
203
|
+
});
|
|
200
204
|
});
|
|
201
205
|
};
|
|
202
206
|
|
|
@@ -258,7 +262,7 @@ export class SoundManager {
|
|
|
258
262
|
})
|
|
259
263
|
.catch((error) => {
|
|
260
264
|
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
261
|
-
this.game.
|
|
265
|
+
this.game.logger.exception('SoundManager', typedError, { tags: { 'asset.key': key } });
|
|
262
266
|
if (typedError.name === 'InvalidStateError') {
|
|
263
267
|
addPageLifecycleCallback(PAGE_LIFECYCLE_STATE_ACTIVE, () => {
|
|
264
268
|
this.decode(key);
|
|
@@ -173,7 +173,8 @@ export const detectCapabilities = (game) => {
|
|
|
173
173
|
try {
|
|
174
174
|
window.PhaserRegistry.CAN_CANVAS_USE_MULTIPLY = canUseNewCanvasBlendModes();
|
|
175
175
|
} catch (error) {
|
|
176
|
-
|
|
176
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
177
|
+
game.logger.exception('Tinter', typedError);
|
|
177
178
|
window.PhaserRegistry.CAN_CANVAS_USE_MULTIPLY = false;
|
|
178
179
|
}
|
|
179
180
|
if (!window.PhaserRegistry.CAN_CANVAS_USE_MULTIPLY) {
|
|
@@ -181,7 +182,8 @@ export const detectCapabilities = (game) => {
|
|
|
181
182
|
try {
|
|
182
183
|
window.PhaserRegistry.CAN_CANVAS_HANDLE_ALPHA = checkInverseAlpha();
|
|
183
184
|
} catch (error) {
|
|
184
|
-
|
|
185
|
+
const typedError = error instanceof Error ? error : new Error(String(error));
|
|
186
|
+
game.logger.exception('Tinter', typedError);
|
|
185
187
|
window.PhaserRegistry.CAN_CANVAS_HANDLE_ALPHA = false;
|
|
186
188
|
}
|
|
187
189
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animation_manager.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/animation_manager.js"],"names":[],"mappings":"AAGA;IACE;;;OAGG;IACH,oBAFW,OAAO,qBAAqB,EAAE,KAAK,EAiB7C;IAdC,4CAAoB;IACpB,+BAAuB;IACvB,yCAAyC;IACzC,cADW,OAAO,YAAY,EAAE,KAAK,CACb;IACxB,wBAAwB;IACxB,aADW,SAAS,CACG;IACvB,yBAA2B;IAC3B,kBAAqB;IACrB,kDAAkD;IAClD,YADW,OAAO,iBAAiB,EAAE,SAAS,CACxB;IACtB,yCAAyC;IACzC,QADW;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;KAAC,CACrB;IAChB,uBAAuB;IACvB,eADW,MAAM,EAAE,CACI;IAGzB;;OAEG;IACH,gBAYC;IAED;;;;;OAKG;IACH,yBAJW,OAAO,iBAAiB,EAAE,SAAS,SACnC,MAAM,GAAC,MAAM,GACX,OAAO,CAwBnB;IA0OD;;OAEG;IACH,iBAZa,MAAM,
|
|
1
|
+
{"version":3,"file":"animation_manager.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/animation_manager.js"],"names":[],"mappings":"AAGA;IACE;;;OAGG;IACH,oBAFW,OAAO,qBAAqB,EAAE,KAAK,EAiB7C;IAdC,4CAAoB;IACpB,+BAAuB;IACvB,yCAAyC;IACzC,cADW,OAAO,YAAY,EAAE,KAAK,CACb;IACxB,wBAAwB;IACxB,aADW,SAAS,CACG;IACvB,yBAA2B;IAC3B,kBAAqB;IACrB,kDAAkD;IAClD,YADW,OAAO,iBAAiB,EAAE,SAAS,CACxB;IACtB,yCAAyC;IACzC,QADW;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;KAAC,CACrB;IAChB,uBAAuB;IACvB,eADW,MAAM,EAAE,CACI;IAGzB;;OAEG;IACH,gBAYC;IAED;;;;;OAKG;IACH,yBAJW,OAAO,iBAAiB,EAAE,SAAS,SACnC,MAAM,GAAC,MAAM,GACX,OAAO,CAwBnB;IA0OD;;OAEG;IACH,iBAZa,MAAM,EAuBlB;IAzBD;;;OAGG;IACH,aAFa,MAAM,CAOlB;IA6BD;;OAEG;IACH,qBAZa,MAAM,EAwBlB;IA1BD;;;OAGG;IACH,iBAFa,MAAM,CAOlB;IAjQD;;;;;OAKG;IACH,yBAJW,OAAO,iBAAiB,EAAE,SAAS,SACnC,MAAM,GAAC,MAAM,GACX,OAAO,CAqBnB;IAED;;;;;;;;OAQG;IACH,UAPW,MAAM,aACN,MAAM,EAAE,GAAC,MAAM,EAAE,cACjB,MAAM,SACN,OAAO,oBACP,OAAO,GACL,SAAS,CA4BrB;IAED;;;;;OAKG;IACH,uBAJW,MAAM,EAAE,GAAC,MAAM,EAAE,oBACjB,OAAO,GACL,OAAO,CAanB;IAED;;;;;;OAMG;IACH,WALW,MAAM,cACN,MAAM,SACN,OAAO,GACL,SAAS,CAoBrB;IAED;;;;OAIG;IACH,YAHW,MAAM,eACN,OAAO,QAMjB;IAED;;;OAGG;IACH,UAFa,OAAO,CAWnB;IAED;;;OAGG;IACH,eAFW,MAAM,QAOhB;IAED;;;OAGG;IACH,mBAFW,MAAM,QAOhB;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,SAAS,CAOrB;IAED;;OAEG;IACH,qBAIC;IAED;;;OAGG;IACH,iBAFa,OAAO,iBAAiB,EAAE,SAAS,CAI/C;IAED;;;OAGG;IACH,kBAFa,MAAM,CAIlB;IAUD;;OAEG;IACH,kBATa,OAAO,EAWnB;IAbD;;;OAGG;IACH,cAFa,OAAO,CAInB;IASD;;;OAGG;IACH,YAFa,MAAM,CAOlB;IA+CK,oBAA0C;CASjD;0BA3VyB,gBAAgB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/game.js"],"names":[],"mappings":"AAqBA;IACE;;;OAGG;IACH,yBAFW,MAAM,EAoDhB;IA9CC,WAAgB;IAChB,WAAW;IACX,eAAgB;IAChB,cAAgB;IAChB,eAAiB;IACjB,yCAAoB;IACpB,oBAAiB;IACjB,kBAAqB;IACrB,gBAAmB;IACnB,2BAAe;IACf,uBAAe;IACf,aAAiB;IACjB,aAAiB;IACjB,aAAgB;IAChB,oBAAiB;IACjB,oBAAiB;IACjB,aAAiB;IACjB,WAAgB;IAChB,qBAAkB;IAClB,aAAiB;IACjB,eAA0B;IAC1B,qBAAqB;IACrB,QADW,MAAM,CACC;IAClB,gCAAgC;IAChC,QADW,iBAAiB,CACV;IAClB,+BAA+B;IAC/B,SADW,gBAAgB,CACR;IACnB,gBAA2B;IAC3B,iBAA4B;IAC5B,eAA0B;IAC1B,kBAAqB;IAkBvB;;OAEG;IACH,aA+BC;IAED;;OAEG;IACH,6BAkBC;IAED;;OAEG;IACH,
|
|
1
|
+
{"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/game.js"],"names":[],"mappings":"AAqBA;IACE;;;OAGG;IACH,yBAFW,MAAM,EAoDhB;IA9CC,WAAgB;IAChB,WAAW;IACX,eAAgB;IAChB,cAAgB;IAChB,eAAiB;IACjB,yCAAoB;IACpB,oBAAiB;IACjB,kBAAqB;IACrB,gBAAmB;IACnB,2BAAe;IACf,uBAAe;IACf,aAAiB;IACjB,aAAiB;IACjB,aAAgB;IAChB,oBAAiB;IACjB,oBAAiB;IACjB,aAAiB;IACjB,WAAgB;IAChB,qBAAkB;IAClB,aAAiB;IACjB,eAA0B;IAC1B,qBAAqB;IACrB,QADW,MAAM,CACC;IAClB,gCAAgC;IAChC,QADW,iBAAiB,CACV;IAClB,+BAA+B;IAC/B,SADW,gBAAgB,CACR;IACnB,gBAA2B;IAC3B,iBAA4B;IAC5B,eAA0B;IAC1B,kBAAqB;IAkBvB;;OAEG;IACH,aA+BC;IAED;;OAEG;IACH,6BAkBC;IAED;;OAEG;IACH,qBA2CC;IAnCK,2BAoFK,iBAAiB,GAAG,KAAK,UApFsB;IACpD,+BA+FK,iBAAiB,GAAG,KAAK,UA/F8B;IAoClE;;;;;OAKG;IACH,2BAJW,MAAM,OACN,MAAM,gBACN,GAAC,QAQX;IAED;;;OAGG;IACH,oBAFW,MAAM,QA2BhB;IAED;;;OAGG;IACH,mBAFW,iBAAiB,GAAG,KAAK,QAQnC;IAED;;;OAGG;IACH,uBAFW,iBAAiB,GAAG,KAAK,QASnC;IAED;;;OAGG;IACH,aAFW,MAAM,QAoBhB;IAED;;OAEG;IACH,gBAwCC;CACF;+BAlU8B,+BAA+B;8BAEhC,8BAA8B;6BAU/B,oBAAoB;sCAFX,UAAU;kCAHd,cAAc;sBAJ1B,YAAY;sBAKZ,YAAY;uBACX,aAAa;6BAEP,oBAAoB;6BAGpB,oBAAoB;sBAC3B,YAAY;qBACb,WAAW;6BACH,oBAAoB;sBAC3B,YAAY;uBAbX,aAAa;uBANb,mBAAmB;uBAcnB,aAAa"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/loader.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/loader.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sound_manager.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/sound_manager.js"],"names":[],"mappings":"AAaA;IACE;;;OAGG;IACH,kBAFW,OAAO,WAAW,EAAE,IAAI,EAuBlC;IApBC,+BAAgB;IAChB,iBAA4B;IAC5B,2BAA2B;IAC3B,SADW,YAAY,CACJ;IACnB,oBAAoB;IACpB,iBAAoB;IACpB,aAA0B;IAC1B,yBAA2B;IAC3B,kBAAqB;IAErB,oBAAuB;IACvB,gBAAmB;IACnB,mBAAyB;IACzB,gBAAgB;IAChB,sBAAsB;IACtB,SADW,KAAK,EAAE,CACD;IACjB,qBAAgC;IAChC,mBAAsB;IACtB,yBAA0B;IAC1B,mBAAyB;IAG3B;;OAEG;IACH,
|
|
1
|
+
{"version":3,"file":"sound_manager.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/sound_manager.js"],"names":[],"mappings":"AAaA;IACE;;;OAGG;IACH,kBAFW,OAAO,WAAW,EAAE,IAAI,EAuBlC;IApBC,+BAAgB;IAChB,iBAA4B;IAC5B,2BAA2B;IAC3B,SADW,YAAY,CACJ;IACnB,oBAAoB;IACpB,iBAAoB;IACpB,aAA0B;IAC1B,yBAA2B;IAC3B,kBAAqB;IAErB,oBAAuB;IACvB,gBAAmB;IACnB,mBAAyB;IACzB,gBAAgB;IAChB,sBAAsB;IACtB,SADW,KAAK,EAAE,CACD;IACjB,qBAAgC;IAChC,mBAAsB;IACtB,yBAA0B;IAC1B,mBAAyB;IAG3B;;OAEG;IACH,aAqDC;IAbG,gBAA+C;IAenD;;OAEG;IACH,kCAIE;IAEF;;OAEG;IACH,iCAME;IAEF;;OAEG;IACH,gCAUE;IAEF;;OAEG;IACH,8BASE;IAEF;;OAEG;IACH,iCASE;IAEF;;;OAGG;IACH,gBAAiB,OAFN,KAEW,UAsCpB;IAEF;;OAEG;IACH,gBASC;IAED;;OAEG;IACH,iBASC;IAED;;OAEG;IACH,kBASC;IAED;;;OAGG;IACH,YAFW,MAAM,QAuBhB;IAED;;;;;OAKG;IACH,0BAJW,KAAK,EAAE,GAAC,MAAM,EAAE,uCAEhB,MAAM,QA0BhB;IAED;;OAEG;IACH,eAqBC;IAED;;;;;;;OAOG;IACH,SANW,MAAM,WACN,MAAM,SACN,OAAO,YACP,OAAO,GACL,KAAK,CAMjB;IAED;;;;OAIG;IACH,eAHW,MAAM,GACJ,WAAW,CAIvB;IAED;;;;OAIG;IACH,cAHW,KAAK,GACH,OAAO,CAanB;IAED;;;;OAIG;IACH,iBAHW,MAAM,GACJ,MAAM,CAclB;IAED;;;;;;OAMG;IACH,UALW,MAAM,WACN,MAAM,SACN,OAAO,GACL,KAAK,CASjB;IAED;;OAEG;IACH,gBAUC;IAJG,iBAA6C;IAMjD;;OAEG;IACH,kBASC;IAED;;OAEG;IACH,gBAYC;IAUD;;OAEG;IACH,gBATa,OAAO,EAuBnB;IAzBD;;;OAGG;IACH,YAFa,OAAO,CAInB;IA6BD;;OAEG;IACH,kBATa,MAAM,EAqBlB;IAvBD;;;OAGG;IACH,cAFa,MAAM,CAIlB;CAkBF;uBAjfsB,aAAa;sBACd,YAAY;yBAJT,gBAAgB;4BAKb,mBAAmB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tinter.d.ts","sourceRoot":"","sources":["../../../../src/phaser/display/canvas/tinter.js"],"names":[],"mappings":"AAUO,yCAJI,MAAM,SACN,MAAM,GACJ,MAAM,CAMlB;AASM,0CALI,MAAM,SACN,MAAM,UACN,iBAAiB,QAoB3B;AASM,0CALI,MAAM,SACN,MAAM,UACN,iBAAiB,QAgC3B;AAOM,qCAHM,OAAO,CAsCnB;AAOM,6CAHM,OAAO,CAsCnB;AAMM,yCAFI,OAAO,oBAAoB,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"tinter.d.ts","sourceRoot":"","sources":["../../../../src/phaser/display/canvas/tinter.js"],"names":[],"mappings":"AAUO,yCAJI,MAAM,SACN,MAAM,GACJ,MAAM,CAMlB;AASM,0CALI,MAAM,SACN,MAAM,UACN,iBAAiB,QAoB3B;AASM,0CALI,MAAM,SACN,MAAM,UACN,iBAAiB,QAgC3B;AAOM,qCAHM,OAAO,CAsCnB;AAOM,6CAHM,OAAO,CAsCnB;AAMM,yCAFI,OAAO,oBAAoB,EAAE,IAAI,QA0B3C"}
|