| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
|
| |
We're deciding against alphabetical sorting here because the labels do
make up logical groups. Generic metadata is at the top, then any date
information, and then lastly any association counts.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Instead of a generic "Search...", let's have "Contains..." which more
accurately describes what this field does.
|
|
|
|
| |
This was missed in the migration to Svelecte 4.0.
|
|
|
|
|
|
| |
Now that we've had some time to use hircine, we think that this is a
better default. Oftentimes comics have covers that are double-sided, so
it makes more sense to align the cover to the left.
|
| |
|
|
|
|
|
|
| |
We have yet to fully investigate why this happens, but a recent update
to some package broke the application of this rule. For now fall back to
applying it in Svelte's <style> block.
|
| |
|
|
|
|
|
|
|
| |
This includes a migration to a flat eslint.config.js, which will now
also automatically ignore items from .gitignore. eslint-plugin-svelte
3.0 comes with a couple of changes to recommended rules as well, these
are also addressed in this commit.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This check was missed in the migration to Svelte 5 as we inverted the
functionality of the functions checking for pending state. Where
previously the functions checked for equality, now they check for
inequality, and these two checks were never inverted. This causes
hircine to pop up a warning about pending changes when the user is
trying to leave a "Comic not found" page.
|
| |
|
|
|
|
|
|
|
|
|
| |
Corrupt zip files would already make hircine throw an error, but
depending on the exact problem it would not report which file (or even
which entry in a zip file) is affected. Use ZipFile.testzip() to catch
common problems and make sure to re-raise any exception within as a
BadZipFile exception. This makes sure to also report decompression
problems that are raised as a zlib.error exception, for example.
|
| |
|
| |
|
|
|
|
|
| |
We basically already had a function that does what we need here, so
there's no need to reimplement it just for TagPill.
|
|
|
|
|
| |
This gives better visual feedback, especially in the ComicDetails tab
where clicking on a Pill is a separate action.
|
|
|
|
| |
This seems to not be needed anymore with the up-to-date icon pack.
|
|
|
|
|
|
| |
Where before we handled the styling of pills (such as their icons and
colours) in multiple different places, instead centralize all of this in
the base Pill component.
|
| |
|
| |
|
|
|
|
|
|
| |
Instead of hiding the URL behind a button with an icon, make it more
prominent as a full item in the details grid. The user can then interact
with it more directly.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also, whilst here, shorten the prop definition.
|
| |
|
|
|
|
|
| |
This makes prop passing nicer and is in line with how the rest of the
app formats this kind of thing.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of repeatedly supplying Card content in all the places it is
required, it makes more sense to create dedicated ComicCard and
ArchiveCard components. These wrap around Card itself and can be used in
a more straightforward and consistent fashion.
Whilst we are here, simplify and streamline the display of Comic and
Archive metadata by introducing a Card footer. The footer is used for
information on page count, release date, and archive size.
|
| |
|
| |
|
|
|
|
|
| |
Instead of showing the generic "Select..." placeholder, use a more
specific "Include..." or "Exclude..." placeholder.
|
|
|
|
|
|
| |
This commit switches around a couple of existing accelerators to make
them easier to activate with just the left hand on the keyboard and more
easily allow the addition of accelerators for all filter fields.
|
|
|
|
|
|
|
| |
The following commit will introduce accelerators for each filter field,
creating the need to have all fields visible (since otherwise the
accelerators cannot be bound right away). Therefore, do away with the
"Exclude" expander and show all filters right away.
|
| |
|
|
|
|
|
|
| |
With the association count filters in place we may now also allow the
user to filter for associations that do not have a matching counterparts
(artists without a comic, for example).
|