Commit graph

2475 commits

Author SHA1 Message Date
Jordan Eldredge
729d651a60 Add some generic methods for dealing with selectors 2019-08-24 22:17:44 -07:00
Jordan Eldredge
948c96dc64 Allow private methods in objects test 2019-08-24 22:17:28 -07:00
Jordan Eldredge
b52879475f Don't complain about private methods 2019-08-24 21:46:16 -07:00
Jordan Eldredge
b67ebc2ca2
[WIP] Give Maki objects access to Redux state (#882)
* Share uids between maki objects and state tree

* Start to add xml tree
2019-08-24 21:10:00 -07:00
Jordan Eldredge
3af4d703d6
Avoid messagebox logs in our tests (#884)
This was a fun one
2019-08-23 08:19:32 -07:00
Jordan Eldredge
e7637b3b3c Test method arity in standard library 2019-08-23 08:18:24 -07:00
Jordan Eldredge
dac6585675
Add modern integration tests (#881)
* add 2 test skins

* Add simple integration tests

* Simplify test skins
2019-08-21 21:42:07 -07:00
Jordan Eldredge
66e5091811 Persist skin URL to query param 2019-08-21 21:41:41 -07:00
jberg
d17333d428 Add missing config classes (#874)
* Add missing config classes

* fix test
2019-08-21 21:04:13 -07:00
Jordan Eldredge
1a7be6bce7 Add flag to state indicating when skin is loaded 2019-08-21 20:15:11 -07:00
Jordan Eldredge
e3b5031f29 Extract browser-only functions into Utils
This will make it easier to mock out these methods in tests to use Node apporaches to these problems
2019-08-21 20:06:11 -07:00
jberg
bae6a56458 Fix filename slashes (#880)
* Fix windows filename slashes

* add comment

* readXml will already convert the slashes
2019-08-21 16:30:21 -07:00
jberg
0fc4aacbbc Fix script group finding (#877) 2019-08-21 14:35:59 -07:00
Jordan Eldredge
84651f4567 Fix typing for Desktop 2019-08-20 09:19:19 -07:00
Jordan Eldredge
983b574da2 Actually use useDispatch 2019-08-20 09:10:12 -07:00
Jordan Eldredge
0b3d28767f Don't allow global access to all of window
We had a bug where `stop()` was undefined but it fell back to the function on window which was inplicitly in the global scope.

This should reduce that kind of thing.
2019-08-20 07:43:23 -07:00
Jordan Eldredge
6a53539776 Make Desktop a functional component with hooks 2019-08-20 07:43:23 -07:00
Jordan Eldredge
2a5798012f Make AlbumsTable a functional component 2019-08-20 07:43:23 -07:00
Jordan Eldredge
5407426325 Fix the stop button
Aparently window.stop() is a thing, and ESLint/TypeScript let me do this. Sigh.

A potential fix: https://github.com/facebook/create-react-app/pull/1840
2019-08-20 07:43:23 -07:00
Jordan Eldredge
7a1191c1e5 Use react-redux hooks for MainWindow/index
This is the last main window component still using the HOC!
2019-08-20 07:43:23 -07:00
Jordan Eldredge
54eba236ef Remove unused types 2019-08-20 07:43:23 -07:00
Jordan Eldredge
7212b9e895 Use react-redux for Position and Repeat 2019-08-20 07:43:23 -07:00
Jordan Eldredge
cc0e1aa5ee Use react-redux hooks in Shade 2019-08-20 07:43:23 -07:00
Jordan Eldredge
576689642a Use react-redux hooks in Shuffle 2019-08-20 07:43:23 -07:00
Jordan Eldredge
2e95a04ec9 Use react-redux hooks in Time 2019-08-20 07:43:23 -07:00
Jordan Eldredge
357c139af5 Use hooks for main context window 2019-08-20 07:43:23 -07:00
Jordan Eldredge
a0c01272bd Type PlaylistTogggleButton 2019-08-20 07:43:23 -07:00
Jordan Eldredge
3cb7de0ba0 Inline style 2019-08-20 07:43:23 -07:00
Jordan Eldredge
2c7c449b1a Use react-redux hooks for Marquee 2019-08-20 07:43:23 -07:00
Jordan Eldredge
eaf9e8e27a Clean up unused type 2019-08-20 07:43:23 -07:00
Jordan Eldredge
6f54b5aeab Use react-redux hooks in a few more places 2019-08-20 07:43:23 -07:00
Jordan Eldredge
48bd60bff7 Refactor Marquee to use hooks
This actually removes a bunch of edgecases/race conditions
2019-08-20 07:43:23 -07:00
jberg
533d7f3f8f add button left/rightclick functions (#878) 2019-08-20 07:40:45 -07:00
jberg
ceb85fa4be
Add delete opcode (#869) 2019-08-19 14:43:06 -07:00
jberg
59689fa827 Add some unimplemented methods to classes (#872)
* Add some unimplemented methods to classes

* fix test
2019-08-19 10:25:27 -07:00
jberg
378c9c595b Pass store into skin loading (#875) 2019-08-19 10:22:44 -07:00
jberg
39c3a25c0a Add more nodes to initialize (#873) 2019-08-19 10:22:18 -07:00
jberg
8ab2990f20 Add some more methods to classes (#871)
* Add some more methods to classes

* fix test
2019-08-19 10:21:31 -07:00
jberg
eda8d028c2 First check object type for subclass (#870) 2019-08-19 10:20:51 -07:00
jberg
b32520a122 Convert null MAKI objects to global NULL value (#866)
* Coerce null MAKI objects to 0

* use global NULL value
2019-08-19 09:10:46 -07:00
Jordan Eldredge
0ea8cc6561 Add a simple way to change skins 2019-08-19 06:34:43 -07:00
jberg
51f06c8e4c Add more modern skins that partially render (#867)
* Add more modern skins that partially render

* Use skinUrls from archive instead of including skin zips

* add a few more skins from archive
2019-08-19 06:29:04 -07:00
Jordan Eldredge
52dfa6801a
Custom ESLint rule to validate Maki classes (#868) 2019-08-19 06:27:47 -07:00
Jordan Eldredge
0deca6f156 Add unique ID to each node in the state tree 2019-08-19 06:26:26 -07:00
Jordan Eldredge
287f226d32 Add glob dependency and allow rules that only warn 2019-08-18 14:26:31 -07:00
Jordan Eldredge
0f7bf53868 no-else-return 2019-08-18 14:23:01 -07:00
Jordan Eldredge
995e16143d eqeqeq 2019-08-18 14:22:07 -07:00
Jordan Eldredge
2b4c2dca97 Don't return await from async func 2019-08-18 14:21:24 -07:00
Jordan Eldredge
95208d173b Don't ignore undefined variables 2019-08-18 14:20:17 -07:00
Jordan Eldredge
a8d98ee432 Prefer const in modern 2019-08-18 14:19:16 -07:00