huge update #264
Conversation
…r to keep square brackets, fix bug where songs were not being fetched due to 401 error from Genius
…ching songlist for it
This project uses Bun and has a bun.lockb, so no need for package-lock.json
Added markdown report generation for BulkUpdateHelper, AutoTrackerHelper, and main.ts (Download Images).
Failed files are now logged directly to <vault_root>/MDB - <action> error report <date>.md instead of just logging to the console.
Filename formatting standardized to match the existing Bulk Import feature layout.
Modified downloadImagesInFile to return rich {success, error, skipped} objects for exact failure tracking.
Fixed attachTemplate merge strategy: template properties no longer override or reorder API fields. Template-only keys are now appended after all API data. Added explicit tags-to-bottom logic so tags always appears as the last frontmatter property regardless of merge order.
Add files via upload
|
As I hinted at in the other PR, a 6k+ changed lines PR is impressive (though with AI, less so). But it is not fun to review. I would appreciate it if you could, instead of making one big PR with lots of features, make multiple smaller PRs, one for each feature/change. |
mProjectsCode
left a comment
There was a problem hiding this comment.
Well, I did a rough pass over the code. And to be honest, it is not great.
- How can you, in some places, use the
styles.cssfile and create new classes, but in others, you use JS to set styles directly? - This PR is way too big. There are features that I like (e.g. more robust and consistent time parsing, the migration to the secrets API) but there are also features that I don't like (e.g. the auto updater). If you had made smaller, separate PRs, I could easily merge the ones I like now, and we could discuss the others separately. But with one big PR that is not possible.
|
It seems this happens when someone have zero actual coding experience, so this entire PR was essentially just me 'vibe coding' to get some features working for my own vault. I was secretly hoping some of the cool concepts could be refactored and merged properly, but it seems scope of changes is way too massive and chaotic for a manual review. I really appreciate you taking the time to look over it! |
|
Also, I actually thought the 'auto-updater' was a really cool feature. It basically auto-checks if your 'unreleased' or 'airing' media has finally been released. It was a massive quality-of-life improvement for my vault |
- Corrected the parameter order in updateNote() for bulk helpers. - Fixed silent toggle (overwrite) in the 5th parameter position. - Disabled opening new tabs (openNoteFinal) during bulk runs. - Updated BulkUpdate, BulkRecreate, and AutoTracker helpers.
Note
Developer's Note: This PR builds upon the foundation of version/PR #260 My initial goal was strictly to improve IGDB games and TMDB series metadata, but it naturally evolved into adding these larger quality-of-life and automation features.
Full transparency: The code in this PR was heavily co-authored with AI assistance. While I have extensively tested these features in my own vaults and encountered zero bugs (everything works perfectly on my end), I acknowledge that this is a massive commit. I understand it will likely require manual code review, refactoring, or architectural adjustments by the maintainers to perfectly align with the plugin's core standards. My ultimate hope is that you find these features as useful as I do, and that this PR can serve as a strong foundation for eventually bringing them into the main release!
🚀 Summary
This PR introduces a massive set of features, UI refinements, and core improvements to the Media DB plugin, dramatically enhancing automation, API fetching, and property customization workflows for users managing large media vaults.
Key highlights include comprehensive Bulk Operations, an Auto-Tracker engine for airing/release statuses, deeper TMDB/IGDB integration, rich image previews in search, and a completely revamped Drag & Drop Property Mapping UI featuring granular controls for auto-tagging, wiki-links, and property pinning.
✨ Auto-Tracker & Automation
airingandreleasedstate changes. The status keywords are fully customizable in the Settings panel, allowing users to map their own localized or personal status names.🗂️ Powerful Bulk Operations
Added robust bulk actions accessible at the folder level or globally via the left-side Ribbon:
🛠️ UI & Property Mapping Revamp
The Property Mapping modal has been widened, redesigned, and supercharged to handle granular property-level tuning:
PIN): Pin any property to the absolute bottom of the frontmatter. Crucially, if multiple properties are pinned, they strictly respect your custom Drag & Drop order![[Wiki-link]]. (Note: The legacy global wiki-link setting was also kept intact specifically for users relying heavily on manual templates).genresto generate#genre/action).⚙️ Core Enhancements & QoL
streamingServicesfields.