Commit graph

7 commits

Author SHA1 Message Date
Johannes Millan
ce91c8b1dc Merge branch 'master' into feat/operation-logs
Resolve merge conflicts:
- package.json: use @types/node@^22.19.5
- sync-form.const.ts: keep eslint-disable for naming convention
- global-config.effects.ts: remove extra blank line
- unlink-all-tasks-on-provider-deletion.effects.ts: keep deprecation notice
- auto-fix-typia-errors.ts: keep better-typed getValueByPath
- undo-task-delete.meta-reducer.spec.ts: keep getLastDeletePayload import
- Accept deletions for files refactored into operation-logs architecture
2026-01-10 17:08:09 +01:00
Johannes Millan
e6da7ced37 chore(deps): upgrade ESLint to v9 with flat config
- Upgrade eslint from v8 to v9.39.2
- Upgrade typescript-eslint to v8.52.0 (unified package)
- Add angular-eslint package for flat config support
- Migrate from .eslintrc.json to eslint.config.js (flat config)
- Update package configs for sync-md, automations, boilerplate-solid-js
- Remove unused eslint-disable directives
- Fix lint errors (empty interface, template eqeqeq)

BREAKING: Requires Node.js 18.18+ (ESLint 9 requirement)
2026-01-10 16:08:11 +01:00
Johannes Millan
db990b7018 refactor: integrate pfapi into oplog 2 2026-01-07 13:37:05 +01:00
Johannes Millan
2a9b84caf0 fix(api): add missing await in replace-token endpoint
The /replace-token endpoint was calling replaceToken() without await,
causing the response to return an unresolved Promise instead of the
actual token. This is the same class of bug as the email verification
race condition fixed in fd6499f13.

Also adds unit tests for the setCounter() fix from issue #5812:
- Tests for creating new counters with all mandatory fields
- Tests for updating existing counters (only countOnDay)
- Tests for incrementCounter and decrementCounter behavior
- Tests for error handling (invalid keys, negative values)
2026-01-01 12:24:32 +01:00
Johannes Millan
357360ddf3 feat: replace background gradient with background tint 2025-09-05 11:32:54 +02:00
Johannes Millan
f11b97aeae fix: resolve unit test failures caused by task model changes
- Fix DialogScheduleTaskComponent test to use jasmine.objectContaining() for task parameter validation
- Update InputDurationDirective tests to match new regex validation behavior that only accepts specific patterns (Nh, Nm, Nh Nm)
- Comment out plugin-related test files to reduce noise during stabilization
- Add required fields (projectId, timeSpentOnDay, attachments) to task mocks
- Build plugin-api package to resolve module import issues
- All 1412 unit tests now passing
2025-06-27 21:49:01 +02:00
Johannes Millan
d4d81bf511 feat(plugin-api): create foundational plugin API package
- Add @super-productivity/plugin-api package with TypeScript definitions
- Define core plugin interfaces, types, and manifest structure
- Add plugin hooks system for event-driven architecture
- Create plugin API type definitions and constants
- Add documentation and development guidelines
2025-06-27 18:13:19 +02:00