pixi-fusion 1.1.0 → 2.0.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/README.md CHANGED
@@ -96,7 +96,6 @@ This monorepo contains configuration for VSCode editor. It doesn't mean that you
96
96
  2. To build monorepo use: `npm run build`
97
97
  3. To lint monorepo use: `npm run lint`
98
98
  4. To initialize pre-commit hooks use: `npm run prepare`
99
- 5. To run storybook `npm run storybook`
100
99
 
101
100
  ## Workflow
102
101
 
@@ -12,7 +12,7 @@ export const GameContext = createContext({
12
12
  endTime: null
13
13
  });
14
14
  export const GameContextProvider = ({ children, timeout: inputTimeout = 0, events }) => {
15
- const timerRef = useRef();
15
+ const timerRef = useRef(null);
16
16
  const timeout = Math.max(0, inputTimeout);
17
17
  const [status, setStatus] = useState(GameStatus.READY);
18
18
  const [startTime, setStartTime] = useState(null);
@@ -80,7 +80,9 @@ export const GameContextProvider = ({ children, timeout: inputTimeout = 0, event
80
80
  const stop = () => {
81
81
  const newStatus = GameStatus.COMPLETED;
82
82
  const newEndTime = +new Date();
83
- clearTimeout(timerRef.current);
83
+ if (timerRef.current) {
84
+ clearTimeout(timerRef.current);
85
+ }
84
86
  setEndTime(+new Date());
85
87
  setStatus(GameStatus.COMPLETED);
86
88
  events?.onStop?.({
@@ -94,7 +96,9 @@ export const GameContextProvider = ({ children, timeout: inputTimeout = 0, event
94
96
  const pause = () => {
95
97
  const newStatus = GameStatus.PAUSED;
96
98
  const newPausedAtTime = +new Date();
97
- clearTimeout(timerRef.current);
99
+ if (timerRef.current) {
100
+ clearTimeout(timerRef.current);
101
+ }
98
102
  setStatus(GameStatus.PAUSED);
99
103
  setPausedAtTime(newPausedAtTime);
100
104
  events?.onPause?.({
package/package.json CHANGED
@@ -5,13 +5,13 @@
5
5
  "url": "https://github.com/laverve/fusion/issues"
6
6
  },
7
7
  "dependencies": {
8
- "@types/matter-js": "^0.19.7",
8
+ "@types/matter-js": "^0.19.8",
9
9
  "matter-js": "^0.20.0",
10
- "pixi.js": "^8.5.1",
11
- "pixi-viewport": "^5.0.3"
10
+ "pixi.js": "^8.6.6",
11
+ "pixi-viewport": "^6.0.3"
12
12
  },
13
13
  "peerDependencies": {
14
- "react": "^18.2.0"
14
+ "react": "^19.0.0"
15
15
  },
16
16
  "description": "This module offers a set of common components needed for playing games.",
17
17
  "keywords": [
@@ -47,6 +47,6 @@
47
47
  "build": "tsc",
48
48
  "build:dev": "tsc -w"
49
49
  },
50
- "version": "1.1.0",
50
+ "version": "2.0.0",
51
51
  "webpack": "./src/index.ts"
52
52
  }
@@ -43,7 +43,7 @@ export const GameContextProvider: React.FC<GameContextProviderProps> = ({
43
43
  timeout: inputTimeout = 0,
44
44
  events
45
45
  }) => {
46
- const timerRef = useRef<NodeJS.Timeout>();
46
+ const timerRef = useRef<NodeJS.Timeout>(null);
47
47
  const timeout = Math.max(0, inputTimeout);
48
48
 
49
49
  const [status, setStatus] = useState(GameStatus.READY);
@@ -125,7 +125,9 @@ export const GameContextProvider: React.FC<GameContextProviderProps> = ({
125
125
  const newStatus = GameStatus.COMPLETED;
126
126
  const newEndTime = +new Date();
127
127
 
128
- clearTimeout(timerRef.current);
128
+ if (timerRef.current) {
129
+ clearTimeout(timerRef.current);
130
+ }
129
131
  setEndTime(+new Date());
130
132
  setStatus(GameStatus.COMPLETED);
131
133
 
@@ -142,7 +144,9 @@ export const GameContextProvider: React.FC<GameContextProviderProps> = ({
142
144
  const newStatus = GameStatus.PAUSED;
143
145
  const newPausedAtTime = +new Date();
144
146
 
145
- clearTimeout(timerRef.current);
147
+ if (timerRef.current) {
148
+ clearTimeout(timerRef.current);
149
+ }
146
150
  setStatus(GameStatus.PAUSED);
147
151
  setPausedAtTime(newPausedAtTime);
148
152