Commit graph

2470 commits

Author SHA1 Message Date
Jordan Eldredge
4b98df70cb Test method arity in standard library 2019-11-30 13:42:53 -08:00
Jordan Eldredge
cc09a8b9be Add modern integration tests (#881)
* add 2 test skins

* Add simple integration tests

* Simplify test skins
2019-11-30 13:42:53 -08:00
Jordan Eldredge
a864a842b3 Persist skin URL to query param 2019-11-30 13:42:53 -08:00
jberg
7bdad849ef Add missing config classes (#874)
* Add missing config classes

* fix test
2019-11-30 13:42:53 -08:00
Jordan Eldredge
74049b88bd Add flag to state indicating when skin is loaded 2019-11-30 13:42:53 -08:00
Jordan Eldredge
ec67b40fc4 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-11-30 13:42:53 -08:00
jberg
a95d215b59 Fix filename slashes (#880)
* Fix windows filename slashes

* add comment

* readXml will already convert the slashes
2019-11-30 13:42:53 -08:00
jberg
63a2e99a78 Fix script group finding (#877) 2019-11-30 13:42:53 -08:00
Jordan Eldredge
be2ab37809 Fix typing for Desktop 2019-11-30 13:42:53 -08:00
Jordan Eldredge
60c0ad1e16 Actually use useDispatch 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e79520dbdd 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-11-30 13:42:53 -08:00
Jordan Eldredge
0472033fba Make Desktop a functional component with hooks 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e3b3eab63e Make AlbumsTable a functional component 2019-11-30 13:42:53 -08:00
Jordan Eldredge
ab6d1ff3bb 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-11-30 13:42:53 -08:00
Jordan Eldredge
567ad29a76 Use react-redux hooks for MainWindow/index
This is the last main window component still using the HOC!
2019-11-30 13:42:53 -08:00
Jordan Eldredge
c1cfd98b21 Remove unused types 2019-11-30 13:42:53 -08:00
Jordan Eldredge
cc578845a6 Use react-redux for Position and Repeat 2019-11-30 13:42:53 -08:00
Jordan Eldredge
9b9421ae54 Use react-redux hooks in Shade 2019-11-30 13:42:53 -08:00
Jordan Eldredge
80c4e2fa10 Use react-redux hooks in Shuffle 2019-11-30 13:42:53 -08:00
Jordan Eldredge
81b5bcfdfd Use react-redux hooks in Time 2019-11-30 13:42:53 -08:00
Jordan Eldredge
f51e51eea2 Use hooks for main context window 2019-11-30 13:42:53 -08:00
Jordan Eldredge
f4230553a8 Type PlaylistTogggleButton 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e7c474e7f6 Inline style 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e345d07e41 Use react-redux hooks for Marquee 2019-11-30 13:42:53 -08:00
Jordan Eldredge
822391c401 Clean up unused type 2019-11-30 13:42:53 -08:00
Jordan Eldredge
f32de1e653 Use react-redux hooks in a few more places 2019-11-30 13:42:53 -08:00
Jordan Eldredge
d6454510a9 Refactor Marquee to use hooks
This actually removes a bunch of edgecases/race conditions
2019-11-30 13:42:53 -08:00
jberg
b2cc88ae0b add button left/rightclick functions (#878) 2019-11-30 13:42:53 -08:00
jberg
943078f256 Add delete opcode (#869) 2019-11-30 13:42:53 -08:00
jberg
e9950e83ce Add some unimplemented methods to classes (#872)
* Add some unimplemented methods to classes

* fix test
2019-11-30 13:42:53 -08:00
jberg
f633e676ce Pass store into skin loading (#875) 2019-11-30 13:42:53 -08:00
jberg
2ffc3ee237 Add more nodes to initialize (#873) 2019-11-30 13:42:53 -08:00
jberg
b732613826 Add some more methods to classes (#871)
* Add some more methods to classes

* fix test
2019-11-30 13:42:53 -08:00
jberg
19b3132ade First check object type for subclass (#870) 2019-11-30 13:42:53 -08:00
jberg
0297eb726a Convert null MAKI objects to global NULL value (#866)
* Coerce null MAKI objects to 0

* use global NULL value
2019-11-30 13:42:53 -08:00
Jordan Eldredge
e58647964b Add a simple way to change skins 2019-11-30 13:42:53 -08:00
jberg
920ed4558c 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-11-30 13:42:53 -08:00
Jordan Eldredge
a85baef757 Custom ESLint rule to validate Maki classes (#868) 2019-11-30 13:42:53 -08:00
Jordan Eldredge
0aeeff413d Add unique ID to each node in the state tree 2019-11-30 13:42:53 -08:00
Jordan Eldredge
d1dedf01c5 Add glob dependency and allow rules that only warn 2019-11-30 13:42:53 -08:00
Jordan Eldredge
9702c92b2e no-else-return 2019-11-30 13:42:53 -08:00
Jordan Eldredge
56ff4153ba eqeqeq 2019-11-30 13:42:53 -08:00
Jordan Eldredge
c1162dd74b Don't return await from async func 2019-11-30 13:42:53 -08:00
Jordan Eldredge
dfe7797c7f Don't ignore undefined variables 2019-11-30 13:42:53 -08:00
Jordan Eldredge
cc0aa9682f Prefer const in modern 2019-11-30 13:42:53 -08:00
Jordan Eldredge
5e048bc4f0 Clean up unused variables 2019-11-30 13:42:53 -08:00
Jordan Eldredge
c1d6b64b9f Remove dupes 2019-11-30 13:42:53 -08:00
Jordan Eldredge
23a9d7e906 Turn back on linting for modern 2019-11-30 13:42:53 -08:00
Jordan Eldredge
73b025bf12 Ensure ESLint is running on Travis
It used to run as part of Jest. When I moved it back to its own thing,
I guess I forgot to add it back to Travis.
2019-11-30 13:42:53 -08:00
jberg
d8e3383d2b Remove xml schema and warn instead of error for missing parsers (#865) 2019-11-30 13:42:53 -08:00