Commit graph

45 commits

Author SHA1 Message Date
wvffle
c1494c8894 Migrate some components 2022-09-06 09:26:36 +00:00
wvffle
7eca32e006 Couple fixes 2022-09-06 09:26:36 +00:00
wvffle
0b263dce71 Test changes 2022-09-06 09:26:36 +00:00
wvffle
e8f65455b8 Migrate EditList.vue 2022-09-06 09:26:36 +00:00
wvffle
5b95a8f954 Migrate some components 2022-09-06 09:26:36 +00:00
wvffle
68f2450c93 Migrate FileUpload component and fix uploading files 2022-09-06 09:26:36 +00:00
wvffle
1c395c01b0 Migrate upload form 2022-09-06 09:26:36 +00:00
wvffle
2f2409f9f2 Migrate some components 2022-09-06 09:26:36 +00:00
wvffle
14a61d5fe4 Migrate settings 2022-09-06 09:26:36 +00:00
wvffle
5ea5ad3c2a Use navigation guards and migrate a couple of components 2022-09-06 09:26:36 +00:00
wvffle
97e7049333 Rewrite player logic
This commit will bring:
- Gapless play! (Fix #739)
- Chunked queue shuffling - we play first track after first 50 queue items are shuffled, then we shuffle chunks of 50 queue items with each new animation frame.
- We can now restore original queue order after shuffling! (Part of #1506)
- Preloading whole tracks into LRU cache (Should fix #1812)
- Preloading multiple tracks at once
2022-09-06 09:26:36 +00:00
wvffle
8d63ee689f Fix metadata type 2022-09-06 09:26:36 +00:00
wvffle
f06c040b50 Add markdown enhancements
This commit will bring:
- Linking to other users with `@username`
- Linking to tags with `#tag`
- Opening external links in new tab (Fix #1647)
- Single line breaks to avoid confusion for non-technical users (Fix #1377)
- 😒 support...
- Email encoding in markdown
- Markdown editor now auto-resizes to accomodate content (Fix #1379)

NOTE: This only works in very few places. We need to wait for #1835 to have those features available widely
2022-09-06 09:26:36 +00:00
wvffle
f470e0649e Better fav button in queue item 2022-09-06 09:26:36 +00:00
wvffle
c87bf7e6b8 Queue component enhancements
This commit provides following queue component enhancements:
- Use a virtual list to render queue items. We now render ~25-30 items at once compared to `queue.length` items. (Fix #1471)
- Faster queue opening and a smoother open animation. (Fix #1471)
- Faster song enqueueing: When enqueueing a playlist or an album, we modify the state only once compared to `tracks.length` modifications before.
- When opening the queue, current track is now already pre-scrolled and centered. This resolves an issue with big queues, where the track list was slowly scrolling to a random position.
- Dragging a track onto the edge of the track list will now scroll the container. You reorder a track from the very top to the very bottom even when you have 3000 tracks in the queue!
- Ability to use scroll wheel while reordering track items
- Track reordering on mobile devices! Currently dragging to edge is disabled
- Responsivity fixes
- Allow click outside modal (Fix #1581)
2022-09-06 09:26:36 +00:00
wvffle
bd1a92c5f1 Set operator-linebreak to before 2022-09-06 09:26:36 +00:00
wvffle
2323cf70d7 Update vite 2022-09-06 09:26:36 +00:00
wvffle
951d339904 Fix audio playback 2022-09-06 09:26:36 +00:00
wvffle
b8f5f5d6ef Fix #1297 2022-09-06 09:26:36 +00:00
wvffle
bbdb3dcb9d Fix auto-fixable linter issues 2022-09-06 09:26:36 +00:00
wvffle
09c1aba30d Rename <modal> to <semantic-modal> 2022-09-06 09:26:36 +00:00
wvffle
e03e2ec901 Migrate home component
Adds some code that is a starter to #1316 and #1534 but depends on #1827
2022-09-06 09:26:36 +00:00
wvffle
7408fe17ec Fix radio button 2022-09-06 09:26:36 +00:00
wvffle
c5f7022869 Migrate a bunch of components 2022-09-06 09:26:36 +00:00
wvffle
779d71abbc Migrate a bunch of components 2022-09-06 09:26:36 +00:00
wvffle
b597dc4a71 Migrate Settings and SettingsGroup 2022-09-06 09:26:36 +00:00
wvffle
8d5464c28e Workaround vuejs/core/pull/4512 2022-09-06 09:26:36 +00:00
wvffle
77594351ae Remove PlayOptions and Report mixins 2022-09-06 09:26:36 +00:00
wvffle
cec34d49fa Rewrite player component to script setup 2022-09-06 09:26:36 +00:00
wvffle
8c11b6d0ea Rewrite queue 2022-09-06 09:26:36 +00:00
wvffle
03e29b3fbc Fix playlist modal error handling 2022-09-06 09:26:36 +00:00
wvffle
e608089557 Fix router warnings 2022-09-06 09:26:36 +00:00
wvffle
442f9ce0d7 Fix v-if keys 2022-09-06 09:26:36 +00:00
wvffle
a8fd0e3f28 Migrate rest of ordering/pagination mixins to composables 2022-09-06 09:26:36 +00:00
Kasper Seweryn
9e0596d136 Move *.js to *.ts 2022-09-06 09:26:36 +00:00
Kasper Seweryn
561c1d868c Migrate rest of inputs to new v-model 2022-09-06 09:26:36 +00:00
Kasper Seweryn
bf009440ff Migrate attachment input to new v-model
It also automatically cleans up attachments that users uploaded and decided not to use
2022-09-06 09:26:36 +00:00
Kasper Seweryn
2f80e0935f Migrate a couple of components to new v-model and cleanup linting stuff 2022-09-06 09:26:36 +00:00
Kasper Seweryn
16d437be62 Migrate Translations mixin to useSharedLabels composable 2022-09-06 09:26:36 +00:00
Kasper Seweryn
b7d66232f6 Remove vue 2 filters
Fixes #1759
2022-09-06 09:26:36 +00:00
Kasper Seweryn
51435d0742 Fix currentRoute 2022-09-06 09:26:36 +00:00
Kasper Seweryn
7c5d259c2b Add vue 3 and compat 2022-09-06 09:26:36 +00:00
Kasper Seweryn
6a9b21a6a7 Rename AppModule to InitModule 2022-09-06 09:26:36 +00:00
Kasper Seweryn
a7cc3de3f3 Move locales.ts to locales.json and remove unused i18n script 2022-09-06 09:26:36 +00:00
Kasper Seweryn
2b40707f4f Cleanup a lot of stuff
I've replaced `lodash` with `lodash-es`, so it can be tree-shaken

`~/modules` is a directory with application modules that run before app is mounted. Useful for configuration, web socket connection, and other stuff

`~/composables` is a directory with our custom composables. Much like `~/utils` but each util is in its own file
2022-09-06 09:26:36 +00:00