34c0a11b4e
Added separate class for syncing multiple preference fields with stores
...
This will make the sync code less boilerplate-y. Instead of manually
subscribing back and forth, this will be done inside the class in
correct order and in any amount.
Types are a bit wonky though.
2026-08-30 11:52:07 +02:00
38d84d0830
Merge pull request #178 from koloml/feature/test-storage-entities
...
Covering base entity and entities controller classes into tests
2026-08-29 21:39:46 -04:00
cfb4c71f58
Capture and store last seen user flags from the booru
...
Main use case for these flags is to notify when something they're trying
to use will not be usable due to authorization or their role on the
site. Specifically, it will be also used later to detect when user
is a part of staff and show them staff-specific features.
2026-06-21 21:53:50 +04:00
a6eae657c7
Added comment for the storage helper instance in EntitiesController
2026-06-21 15:36:14 +04:00
3e5266ca7b
Expose storage in EntitiesController for testing purposes
...
- Storage can now be mocked
- Class can be loaded even if chrome storage is not present globally
- It will not throw an error if storage not found in runtime
2026-06-21 15:29:42 +04:00
f311676097
Merge pull request #177 from koloml/feature/test-preferences-api
...
Testing behavior of internal preferences class
2026-06-20 14:16:06 -04:00
a0e52955e6
Sonar: Added readonly to private members
2026-06-20 22:10:51 +04:00
74554bc9f6
Covering cacheable preferences into tests
2026-06-20 22:03:11 +04:00
3404877091
Sonar: Replacing string.match(regexp) with regexp.exec(string)
2026-06-14 03:19:54 +04:00
ed3db1240c
Signaling to TypeScript that match is present when function returns true
2026-06-14 03:15:51 +04:00
9a6274c815
Sonar: Marked special characters and RegExps as readonly
2026-06-14 03:13:45 +04:00
a909180798
Fixed terms not trimming out the whitespaces
2026-06-14 01:29:17 +04:00
40aa02ff70
Fixed quoted term not processing starting & ending quotes
2026-06-14 00:32:47 +04:00
de57432594
Fixed wrong index used when checking for ) character
2026-06-13 22:46:08 +04:00
74f113412e
Fixed space being mandatory before ) and ^
2026-06-13 22:44:57 +04:00
3e0495a529
Moved parentheses check to run before dirty text content extraction
2026-06-13 22:42:57 +04:00
736c0917c0
Reversed + → conversion with dash-encoded characters conversion
...
This way encoded `+` character will properly decode after other `+` were
dealt with
2026-06-13 22:01:14 +04:00
f01bfe8ae0
Removed erroneous - → conversion for tag links
2026-06-13 22:00:20 +04:00
726c4dfe58
Added tests for tag name extraction from tag links & search queries
2026-06-13 21:56:31 +04:00
c12b00817b
Compare value to undefined instead of calling typeof
2026-04-05 18:35:26 +04:00
b4419b5de3
Validate exclusive and conditional as optional booleans
2026-04-05 18:33:34 +04:00
a45248cebf
Fixed crashing build due to missing trailing comma
2026-04-05 18:02:54 +04:00
c777b57efb
Merge remote-tracking branch 'origin/release/0.7.1' into feature/conditional-presets
...
# Conflicts:
# src/content/components/extension/presets/PresetTableRow.ts
# src/lib/extension/entities/TagEditorPreset.ts
# src/lib/extension/transporting/exporters.ts
# src/routes/features/presets/[id]/edit/+page.svelte
2026-04-05 18:01:33 +04:00
f581f84065
Presets: Added conditional presets option
...
Now presets can be configured to show up only when specific tag is
provided.
2026-04-05 17:52:15 +04:00
83c7608e99
Presets: Added flag for making it "exclusive"
...
This will make it so only one tag will be active from marked preset.
This can be useful for some tags that cannot be together in the editor,
for example, rating tags.
2026-03-22 04:09:18 +04:00
74866949bb
Added Tag Presets, popup editor for them, implemented presets image edit
2026-03-12 00:17:45 +04:00
58b620ef09
Renaming Philomena and scraping-related classes directory
2026-03-07 17:35:38 +04:00
9445b1e862
Restructuring and renaming content components and their initialization
2026-03-07 17:22:13 +04:00
9024883949
Refactoring how preferences classes provide access to fields inside
...
Instead of constantly implementing these weird methods to read or update
values, there will be fields inside the preferences which contain
methods to read or update them.
2026-03-07 06:41:28 +04:00
dc29c6ca69
Renaming for tagging profiles and preferences classes
2026-02-28 22:49:57 +04:00
9031055ec9
Replace the tag link text to resolved tag name when possible
2026-02-26 03:30:10 +04:00
8194a84ef7
Fix pluses not being decoded from the path
2026-02-26 03:28:48 +04:00
2bdb789777
Support links to /search?q= when detecting tag links to replace
2026-02-25 20:47:22 +04:00
dfdab180ee
Added option to decorate tag links in forum posts
2026-02-23 17:51:27 +04:00
fccd79292d
Fixed tags list didn't update itself once last group was deleted
2026-02-09 10:59:40 +04:00
8dfc5f49f9
Merge pull request #143 from koloml/feature/code-reorganization
...
Slight change in code organization for content script components
2026-01-09 08:48:59 +04:00
2ecd37512f
Moving all content_scripts-related components under $content directory
...
Having $lib/component with just $component was a bit confusing,
especially since $lib is also used in Svelte components all over the
place. This move will hopefully make it less confusing for me.
2026-01-09 07:06:58 +04:00
c8ff80d445
Move list of tag categories into the tags config script
2026-01-09 06:55:51 +04:00
5fd6dee999
Added constant with the full name of the plugin
2026-01-09 05:27:11 +04:00
8356956b2e
Making dropdown link icon active for both boorus
...
Furbooru was updated to the latest version of Philomena a few days ago.
Now it uses icons in tag dropdown just like on Derpibooru.
2025-09-22 05:05:52 +04:00
c6b9250d71
Merge pull request #132 from koloml/feature/add-to-profile-icon
...
Derpibooru: Added icon to the tag dropdown option
2025-08-13 17:27:05 +04:00
c330aa303a
Derpibooru: Added icon to the tag dropdown option
2025-08-13 17:24:36 +04:00
79cd9bc44d
Reduced the space used by the tag category headline
...
This is mainly affecting the Derpibooru version of the extension. Tags
list on Derpibooru is using flex with gaps instead of flex with margins
appearing like gaps (what currently Furbooru uses). This change would
likely be applied to the Furbooru as well.
2025-08-13 15:56:31 +04:00
8822a2581b
Store last same site status of the imported object
2025-08-08 20:40:57 +04:00
83d27cc966
Add $site property to identify what site entity was created for
2025-08-08 19:47:44 +04:00
8fe1ca4914
Merge pull request #98 from koloml/feature/bulk-import-and-export
...
Bulk import/export of tagging profiles and groups
2025-08-04 13:46:03 +04:00
48f278ae95
Added TODO about missing "migration" progress for entities
2025-08-04 13:40:19 +04:00
6bd7116df2
Added validation logic for the group entity
2025-08-04 13:32:35 +04:00
470021ee8c
Validators: Using functions for common value checks
2025-08-04 13:32:19 +04:00
e27257516d
Validator: Support up to version 2 of profiles entity
2025-07-27 21:44:52 +04:00