diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 983bc2f..1107725 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,6 +10,8 @@ jobs: runs-on: ubuntu-latest permissions: contents: write + id-token: write + attestations: write steps: - uses: actions/checkout@v4 @@ -26,6 +28,13 @@ jobs: npm ci npm run build + - name: Attest release binaries + uses: actions/attest-build-provenance@v2 + with: + subject-path: | + obsidian-miku-plugin/main.js + obsidian-miku-plugin/styles.css + - name: Create release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/manifest.json b/manifest.json index 0e683e4..f4dcd49 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "miku-plugin-hybrid", "name": "Miku Hybrid", - "version": "1.0.3", + "version": "1.0.4", "minAppVersion": "1.5.0", "description": "Switch Miku-inspired theme modes and optional dashboard widgets with built-in hybrid styling.", "author": "Nattaya Buck", diff --git a/obsidian-miku-plugin/manifest.json b/obsidian-miku-plugin/manifest.json index 0e683e4..f4dcd49 100644 --- a/obsidian-miku-plugin/manifest.json +++ b/obsidian-miku-plugin/manifest.json @@ -1,7 +1,7 @@ { "id": "miku-plugin-hybrid", "name": "Miku Hybrid", - "version": "1.0.3", + "version": "1.0.4", "minAppVersion": "1.5.0", "description": "Switch Miku-inspired theme modes and optional dashboard widgets with built-in hybrid styling.", "author": "Nattaya Buck", diff --git a/obsidian-miku-plugin/package.json b/obsidian-miku-plugin/package.json index aed429f..a7310cc 100644 --- a/obsidian-miku-plugin/package.json +++ b/obsidian-miku-plugin/package.json @@ -1,6 +1,6 @@ { "name": "obsidian-miku-plugin", - "version": "1.0.3", + "version": "1.0.4", "description": "Hatsune Miku inspired Obsidian plugin with widgets and theme switching.", "main": "main.js", "scripts": { diff --git a/obsidian-miku-plugin/src/ascii-art.ts b/obsidian-miku-plugin/src/ascii-art.ts index a53ba99..1446c66 100644 --- a/obsidian-miku-plugin/src/ascii-art.ts +++ b/obsidian-miku-plugin/src/ascii-art.ts @@ -108,7 +108,7 @@ export function normalizeAsciiArtPreset(preset: string): MikuAsciiArtPreset { : "panel"; } -export function getDashboardAsciiArt(preset: MikuAsciiArtPreset | string): string | null { +export function getDashboardAsciiArt(preset: MikuAsciiArtPreset): string | null { const normalized = normalizeAsciiArtPreset(preset); if (normalized === "off") { return null; diff --git a/obsidian-miku-plugin/src/settings-tab.ts b/obsidian-miku-plugin/src/settings-tab.ts index 649efae..9d17d00 100644 --- a/obsidian-miku-plugin/src/settings-tab.ts +++ b/obsidian-miku-plugin/src/settings-tab.ts @@ -26,7 +26,7 @@ export class MikuSettingTab extends PluginSettingTab { const { containerEl } = this; containerEl.empty(); - new Setting(containerEl).setName("Miku Hybrid Settings").setHeading(); + new Setting(containerEl).setName("General").setHeading(); new Setting(containerEl).setDesc("No audio features are included by design."); diff --git a/obsidian-miku-plugin/src/theme-manager.ts b/obsidian-miku-plugin/src/theme-manager.ts index 8ad99a3..8933b24 100644 --- a/obsidian-miku-plugin/src/theme-manager.ts +++ b/obsidian-miku-plugin/src/theme-manager.ts @@ -4,16 +4,18 @@ const ROOT_CLASS = "miku-plugin-enabled"; export class ThemeManager { apply(settings: MikuPluginSettings): void { - document.body.classList.add(ROOT_CLASS); - document.body.dataset.mikuTheme = settings.themeMode; - document.body.dataset.mikuReducedMotion = settings.reducedMotion ? "true" : "false"; - document.body.style.setProperty("--miku-glow-intensity", String(settings.glowIntensity)); + const body = activeDocument.body; + body.classList.add(ROOT_CLASS); + body.dataset.mikuTheme = settings.themeMode; + body.dataset.mikuReducedMotion = settings.reducedMotion ? "true" : "false"; + body.style.setProperty("--miku-glow-intensity", String(settings.glowIntensity)); } cleanup(): void { - document.body.classList.remove(ROOT_CLASS); - delete document.body.dataset.mikuTheme; - delete document.body.dataset.mikuReducedMotion; - document.body.style.removeProperty("--miku-glow-intensity"); + const body = activeDocument.body; + body.classList.remove(ROOT_CLASS); + delete body.dataset.mikuTheme; + delete body.dataset.mikuReducedMotion; + body.style.removeProperty("--miku-glow-intensity"); } } diff --git a/obsidian-miku-plugin/versions.json b/obsidian-miku-plugin/versions.json index 2cbde9b..8a7b3a3 100644 --- a/obsidian-miku-plugin/versions.json +++ b/obsidian-miku-plugin/versions.json @@ -3,5 +3,6 @@ "1.0.0": "1.5.0", "1.0.1": "1.5.0", "1.0.2": "1.5.0", - "1.0.3": "1.5.0" + "1.0.3": "1.5.0", + "1.0.4": "1.5.0" } diff --git a/versions.json b/versions.json index 2cbde9b..8a7b3a3 100644 --- a/versions.json +++ b/versions.json @@ -3,5 +3,6 @@ "1.0.0": "1.5.0", "1.0.1": "1.5.0", "1.0.2": "1.5.0", - "1.0.3": "1.5.0" + "1.0.3": "1.5.0", + "1.0.4": "1.5.0" }