Commit graph

217 commits

Author SHA1 Message Date
sean2077
e81c7c8ad9
Merge branch 'docs/marketplace-availability' 2026-07-22 06:31:27 +08:00
sean2077
f76dde62d8
docs: reflect official marketplace availability 2026-07-22 06:30:57 +08:00
sean2077
b74a6610b3
Merge branch 'chore/release-2-10-2' 2026-07-21 20:56:54 +08:00
sean2077
6eb2fc31f8
release: 2.10.2 2026-07-21 20:56:39 +08:00
sean2077
038053f036
Merge branch 'fix/marketplace-hardening' 2026-07-21 20:53:56 +08:00
sean2077
b48ac2d153
fix: satisfy marketplace safety review 2026-07-21 20:53:43 +08:00
sean2077
6d265ba20b
Merge branch 'chore/release-2-10-1' 2026-07-21 17:57:44 +08:00
sean2077
aa15c26d47
release: 2.10.1 2026-07-21 17:57:19 +08:00
sean2077
494124e906
Merge branch 'fix/release-workflow' 2026-07-21 16:59:31 +08:00
sean2077
2bce517849
ci: make releases tag-driven 2026-07-21 16:47:19 +08:00
semantic-release-bot
08bcdc92ee chore(release): 2.10.0 [skip ci]
## [2.10.0](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.9.2...2.10.0) (2026-07-21)
2026-07-21 08:16:01 +00:00
sean2077
b7857f20d7
Merge branch 'fix/review-remediation' 2026-07-21 16:15:11 +08:00
sean2077
bdbe762390
fix: harden runtime safety boundaries 2026-07-21 16:05:28 +08:00
sean2077
57ca0e101e
fix: preserve settings integrity and compatibility
Migrate custom query credentials to SecretStorage and apply custom parameters at request time. Preserve configuration-order scheduling, transactional reorder rollback, and older Obsidian fallback metadata. Align the production bundle with the official ES2021 target while retaining the frozen size gates.
2026-07-21 15:12:19 +08:00
sean2077
affeda7894
Merge branch 'feat/settings-secret-migration' 2026-07-21 14:04:13 +08:00
sean2077
f2b5ddd610
fix: support accessible settings reordering 2026-07-21 13:57:32 +08:00
sean2077
52d5120803
fix: prevent settings layout clipping 2026-07-21 12:57:01 +08:00
sean2077
fc7d780cba
feat: migrate API credentials to SecretStorage 2026-07-21 12:01:44 +08:00
semantic-release-bot
a78e3349cb chore(release): 2.9.2 [skip ci]
## [2.9.2](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.9.1...2.9.2) (2026-07-21)
2026-07-21 02:40:18 +00:00
sean2077
e78c7a8d30
Merge branch 'fix/deep-modernization' 2026-07-21 10:38:50 +08:00
sean2077
8461ce5486
Merge remote-tracking branch 'origin/master' into fix/deep-modernization 2026-07-21 10:32:51 +08:00
sean2077
bdf3350ed1
ci: enforce deterministic quality gates 2026-07-21 10:13:58 +08:00
sean2077
c27db1c274
fix: harden plugin runtime boundaries 2026-07-21 10:13:09 +08:00
semantic-release-bot
a75b3bb533 chore(release): 2.9.1 [skip ci]
## [2.9.1](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.9.0...2.9.1) (2026-07-20)
2026-07-20 22:56:54 +00:00
sean2077
7b0d7b6db3
Merge branch 'fix/plugin-review-scan' 2026-07-21 06:52:44 +08:00
sean2077
d206d8bd5f
fix: resolve Obsidian plugin review findings 2026-07-21 06:52:23 +08:00
sean2077
05641fda17
chore: add dual-host agent harness 2026-07-21 06:30:01 +08:00
semantic-release-bot
f023fa11ed chore(release): 2.9.0 [skip ci]
## [2.9.0](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.8.7...2.9.0) (2026-03-17)

### Features

* decompose plugin and settings into service-oriented architecture ([62d855f](62d855ffbd))
2026-03-17 10:35:37 +00:00
sean2077
62d855ffbd
feat: decompose plugin and settings into service-oriented architecture
Extract 6 core services from the monolithic plugin.ts (819→284 lines):
- EventBus: unified typed event system replacing 3 ad-hoc notification mechanisms
- TimeRuleScheduler: pure time-rule matching and scheduling logic
- StyleManager: CSS variable injection, image analysis with size caching
- BackgroundManager: lifecycle, timer management, and background selection
- BackgroundPersistence: immutable vault file I/O (no longer mutates BackgroundItem)
- Logger: centralized logging with consistent prefix

Decompose settings-tab.ts (1417→147 lines) into 4 focused sections:
- BasicSettingsSection, ModeSettingsSection, BgManagementSection, ApiSettingsSection

Additional improvements:
- Enable TypeScript strict mode
- Pin all devDependency versions for reproducible builds
- Template method pattern for provider updateImageCache/deinit/fetchPage
- Move safeString() to BaseWallpaperApi, consolidate ID generation
- Fix 26 bugs: deleteApi missing deinit, getImages infinite loop, settings-view
  memory leak, manual mode bounds check, statusBar DOM leak, test API ID collision,
  rule lookup by .name→.id, DragSort cleanup, perPage ordering, and more
2026-03-17 18:34:41 +08:00
semantic-release-bot
198e3d2e56 chore(release): 2.8.7 [skip ci]
## [2.8.7](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.8.6...2.8.7) (2026-01-21)

### Fixes

* enable sentence-case eslint rules and fix 36 UI text violations ([27ea8c8](27ea8c8e54))
2026-01-21 02:02:11 +00:00
sean2077
27ea8c8e54
fix: enable sentence-case eslint rules and fix 36 UI text violations 2026-01-21 10:00:43 +08:00
semantic-release-bot
73fa940062 chore(release): 2.8.6 [skip ci]
## [2.8.6](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.8.5...2.8.6) (2026-01-05)

### Fixes

* apply sentence case to UI text for Obsidian plugin validation ([72f8ba2](72f8ba22d8))
2026-01-05 02:43:20 +00:00
sean2077
72f8ba22d8
fix: apply sentence case to UI text for Obsidian plugin validation
- Remove eslint-disable comment and emoji from status bar text
- Convert gradient names, time rules, and dropdown labels to sentence case
- Fix Title Case violations in i18n/en.ts, wallhaven.ts, unsplash.ts, pixabay.ts, default-settings.ts
2026-01-05 10:42:05 +08:00
sean2077
3dc1a506cc
docs: fix formatting in README and README.zh.md for better readability 2025-12-06 15:00:45 +08:00
sean2077
a525e87ce5
docs: update hero section with new descriptions and styles 2025-12-06 14:54:35 +08:00
sean2077
fb1a6f27fd
docs: update readme 2025-12-06 13:47:15 +08:00
sean2077
f8d16d11ff
Revert "ci: add GitHub Actions workflow for deploying to CloudBase Static Hosting"
This reverts commit faf2f95b63.
2025-12-05 23:10:04 +08:00
sean2077
faf2f95b63
ci: add GitHub Actions workflow for deploying to CloudBase Static Hosting 2025-12-05 22:40:24 +08:00
sean2077
f150814a04
docs: improve landing page 2025-12-05 22:01:11 +08:00
sean2077
3f817ca8d3
chore: update .gitignore to include .internal directory and remove issues.md 2025-12-05 17:11:17 +08:00
sean2077
5ee7061b8d
docs: update homepage html 2025-12-05 16:53:02 +08:00
semantic-release-bot
64a18a1618 chore(release): 2.8.5 [skip ci]
## [2.8.5](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.8.4...2.8.5) (2025-12-05)

### Fixes

* resolve all Required issues from official plugin review (PR [#7359](https://github.com/sean2077/obsidian-dynamic-theme-background/issues/7359)) ([fd83d70](fd83d70519))
2025-12-05 05:37:31 +00:00
sean2077
fd83d70519
fix: resolve all Required issues from official plugin review (PR #7359) 2025-12-05 13:36:47 +08:00
Sean
2ed4e7ebd0
Merge pull request #27 from sean2077/dependabot/npm_and_yarn/all-deps-8d02512df4
build(deps-dev): bump the all-deps group across 1 directory with 4 updates
2025-12-05 10:55:46 +08:00
dependabot[bot]
e36bc616c2
build(deps-dev): bump the all-deps group across 1 directory with 4 updates
Bumps the all-deps group with 4 updates in the / directory: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin), [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser), [prettier](https://github.com/prettier/prettier) and [stylelint](https://github.com/stylelint/stylelint).


Updates `@typescript-eslint/eslint-plugin` from 8.47.0 to 8.48.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.48.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.47.0 to 8.48.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.48.0/packages/parser)

Updates `prettier` from 3.6.2 to 3.7.3
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.6.2...3.7.3)

Updates `stylelint` from 16.25.0 to 16.26.1
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.25.0...16.26.1)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.48.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-deps
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.48.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-deps
- dependency-name: prettier
  dependency-version: 3.7.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-deps
- dependency-name: stylelint
  dependency-version: 16.26.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 06:12:05 +00:00
sean2077
c90157f047
build: update deps 2025-11-18 15:01:53 +08:00
Sean
adabc17b16
Merge pull request #25 from sean2077/dependabot/npm_and_yarn/all-deps-9dbc238f15
build(deps-dev): bump the all-deps group across 1 directory with 6 updates
2025-11-17 17:22:43 +08:00
dependabot[bot]
5d7f90a0b2
build(deps-dev): bump the all-deps group across 1 directory with 6 updates
Bumps the all-deps group with 6 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [obsidian](https://github.com/obsidianmd/obsidian-api) | `1.10.2-1` | `1.10.3` |
| [esbuild](https://github.com/evanw/esbuild) | `0.25.12` | `0.27.0` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `24.10.0` | `24.10.1` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.46.3` | `8.46.4` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.46.3` | `8.46.4` |
| [eslint-plugin-obsidianmd](https://github.com/obsidianmd/eslint-plugin) | `0.1.8` | `0.1.9` |



Updates `obsidian` from 1.10.2-1 to 1.10.3
- [Changelog](https://github.com/obsidianmd/obsidian-api/blob/master/CHANGELOG.md)
- [Commits](https://github.com/obsidianmd/obsidian-api/commits)

Updates `esbuild` from 0.25.12 to 0.27.0
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.25.12...v0.27.0)

Updates `@types/node` from 24.10.0 to 24.10.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@typescript-eslint/eslint-plugin` from 8.46.3 to 8.46.4
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.4/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.46.3 to 8.46.4
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.4/packages/parser)

Updates `eslint-plugin-obsidianmd` from 0.1.8 to 0.1.9
- [Release notes](https://github.com/obsidianmd/eslint-plugin/releases)
- [Commits](https://github.com/obsidianmd/eslint-plugin/compare/0.1.8...0.1.9)

---
updated-dependencies:
- dependency-name: obsidian
  dependency-version: 1.10.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-deps
- dependency-name: esbuild
  dependency-version: 0.27.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all-deps
- dependency-name: "@types/node"
  dependency-version: 24.10.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-deps
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.46.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-deps
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.46.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-deps
- dependency-name: eslint-plugin-obsidianmd
  dependency-version: 0.1.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 05:24:43 +00:00
sean2077
d2e085f98a
chore: update package.json to set author and upgrade all dependencies to latest versions 2025-11-05 20:55:37 +08:00
semantic-release-bot
ec61036325 chore(release): 2.8.4 [skip ci]
## [2.8.4](https://github.com/sean2077/obsidian-dynamic-theme-background/compare/2.8.3...2.8.4) (2025-11-05)

### Fixes

* resolve ESLint errors for Obsidian plugin validation ([d3663dc](d3663dc7bc))
2025-11-05 12:45:47 +00:00