Skip to content

Commit 0e41ed0

Browse files
Merge pull request #7 from LibraryLibrarian/feature/multi-account-support
multi account support
2 parents 7ea09ab + 478c405 commit 0e41ed0

19 files changed

Lines changed: 1092 additions & 519 deletions

.github/workflows/ci.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ jobs:
5959
- name: Analyze (fail on infos)
6060
run: dart analyze --fatal-infos
6161
- name: Test
62+
if: ${{ hashFiles('test/**/*_test.dart') != '' }}
6263
run: flutter test
6364

6465
example-android:

.vscode/launch.json

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
// IntelliSense を使用して利用可能な属性を学べます。
3+
// 既存の属性の説明をホバーして表示します。
4+
// 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
5+
"version": "0.2.0",
6+
"configurations": [
7+
{
8+
"name": "misskey_auth",
9+
"request": "launch",
10+
"type": "dart"
11+
},
12+
{
13+
"name": "misskey_auth (profile mode)",
14+
"request": "launch",
15+
"type": "dart",
16+
"flutterMode": "profile"
17+
},
18+
{
19+
"name": "misskey_auth (release mode)",
20+
"request": "launch",
21+
"type": "dart",
22+
"flutterMode": "release"
23+
},
24+
{
25+
"name": "example",
26+
"cwd": "example",
27+
"request": "launch",
28+
"type": "dart"
29+
},
30+
{
31+
"name": "example (profile mode)",
32+
"cwd": "example",
33+
"request": "launch",
34+
"type": "dart",
35+
"flutterMode": "profile"
36+
},
37+
{
38+
"name": "example (release mode)",
39+
"cwd": "example",
40+
"request": "launch",
41+
"type": "dart",
42+
"flutterMode": "release"
43+
}
44+
]
45+
}

CHANGELOG.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,32 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.1.3-beta] - 2025-08-15
9+
10+
### Added
11+
- Multi-account token management via `TokenStore` abstraction
12+
- Default secure implementation: `SecureTokenStore` (backed by `flutter_secure_storage`)
13+
- High-level API `MisskeyAuthManager` to orchestrate OAuth/MiAuth authentication and token persistence
14+
- Models and types for account/token management: `StoredToken`, `AccountKey`, `AccountEntry`
15+
- Public exports for store/manager types from `misskey_auth.dart`
16+
17+
### Changed
18+
- `MisskeyOAuthClient` and `MisskeyMiAuthClient` no longer persist tokens; they only perform the authentication flow and return results
19+
- Constructors now focus on networking concerns (`Dio` and timeouts)
20+
21+
### Removed
22+
- Storage-related APIs from clients:
23+
- `MisskeyOAuthClient.getStoredAccessToken()`
24+
- `MisskeyOAuthClient.clearTokens()`
25+
- `MisskeyMiAuthClient.getStoredAccessToken()`
26+
- `MisskeyMiAuthClient.clearTokens()`
27+
- `MisskeyMiAuthClient` constructor parameter for storage injection
28+
29+
### Breaking Changes
30+
- Removed storage APIs from both `MisskeyOAuthClient` and `MisskeyMiAuthClient` (use `MisskeyAuthManager` and `TokenStore` instead)
31+
- `MisskeyMiAuthClient` constructor signature changed (storage parameter removed)
32+
- Token lifecycle (save/read/delete) responsibilities moved from clients to `TokenStore`/`MisskeyAuthManager`
33+
834
## [0.1.2-beta] - 2025-08-15
935

1036
### Added

0 commit comments

Comments
 (0)