Commit graph

2475 commits

Author SHA1 Message Date
Jordan Eldredge
f622abcf67 Improve objects tests now that all maki methods are stubbed out
Now we can assume all methods exist and we can also start a list of unimplemented methods
2019-08-24 20:54:20 -07:00
Jordan Eldredge
777ef90be5 Don't lint on too many params, when the params are defined by Maki 2019-08-24 20:43:12 -07:00
Jordan Eldredge
6a26e77de5 Stub out missing methods
These were auto-generated with the ESLint rule
2019-08-24 20:41:14 -07:00
Jordan Eldredge
35f758e635 Add fixable rule to report missing Maki methods 2019-08-24 20:36:07 -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