Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ jobs:
- name: Analyze (fail on infos)
run: dart analyze --fatal-infos
- name: Test
if: ${{ hashFiles('test/**/*_test.dart') != '' }}
run: flutter test

example-android:
Expand Down
45 changes: 45 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
// IntelliSense を使用して利用可能な属性を学べます。
// 既存の属性の説明をホバーして表示します。
// 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "misskey_auth",
"request": "launch",
"type": "dart"
},
{
"name": "misskey_auth (profile mode)",
"request": "launch",
"type": "dart",
"flutterMode": "profile"
},
{
"name": "misskey_auth (release mode)",
"request": "launch",
"type": "dart",
"flutterMode": "release"
},
{
"name": "example",
"cwd": "example",
"request": "launch",
"type": "dart"
},
{
"name": "example (profile mode)",
"cwd": "example",
"request": "launch",
"type": "dart",
"flutterMode": "profile"
},
{
"name": "example (release mode)",
"cwd": "example",
"request": "launch",
"type": "dart",
"flutterMode": "release"
}
]
}
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,32 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.1.3-beta] - 2025-08-15

### Added
- Multi-account token management via `TokenStore` abstraction
- Default secure implementation: `SecureTokenStore` (backed by `flutter_secure_storage`)
- High-level API `MisskeyAuthManager` to orchestrate OAuth/MiAuth authentication and token persistence
- Models and types for account/token management: `StoredToken`, `AccountKey`, `AccountEntry`
- Public exports for store/manager types from `misskey_auth.dart`

### Changed
- `MisskeyOAuthClient` and `MisskeyMiAuthClient` no longer persist tokens; they only perform the authentication flow and return results
- Constructors now focus on networking concerns (`Dio` and timeouts)

### Removed
- Storage-related APIs from clients:
- `MisskeyOAuthClient.getStoredAccessToken()`
- `MisskeyOAuthClient.clearTokens()`
- `MisskeyMiAuthClient.getStoredAccessToken()`
- `MisskeyMiAuthClient.clearTokens()`
- `MisskeyMiAuthClient` constructor parameter for storage injection

### Breaking Changes
- Removed storage APIs from both `MisskeyOAuthClient` and `MisskeyMiAuthClient` (use `MisskeyAuthManager` and `TokenStore` instead)
- `MisskeyMiAuthClient` constructor signature changed (storage parameter removed)
- Token lifecycle (save/read/delete) responsibilities moved from clients to `TokenStore`/`MisskeyAuthManager`

## [0.1.2-beta] - 2025-08-15

### Added
Expand Down
Loading
Loading