Philipp Wolfer
|
a59a542967
|
moved OAuth2Authenticator to auth package
|
2023-12-10 14:19:23 +01:00 |
|
Philipp Wolfer
|
ab0e50f7aa
|
Prompt user for auth after service requireing auth added
|
2023-12-09 23:17:43 +01:00 |
|
Philipp Wolfer
|
9449a29fb1
|
service auth, edit and delete now all support --service flag
If a service name is given, this will be used. If not the user is
prompted to select one.
|
2023-12-09 23:16:33 +01:00 |
|
Philipp Wolfer
|
c21715d36b
|
Fixed last timestamp for beam loves not getting loaded
|
2023-12-09 22:42:04 +01:00 |
|
Philipp Wolfer
|
76fd7cfeb4
|
Allow default value for boolean select
Default for both service delete conformation and disabling Maloja
autofix is now "no".
|
2023-12-09 22:15:40 +01:00 |
|
Philipp Wolfer
|
e7d596b4e0
|
Allow specifying --timestamp 0
|
2023-12-09 18:56:23 +01:00 |
|
Philipp Wolfer
|
08514e5eac
|
Fixed file extension for config file in paramter documentation
|
2023-12-09 17:42:03 +01:00 |
|
Philipp Wolfer
|
d6ca8d33f7
|
Mark user interface strings
For now exclude command help, as cobra itself is not localizable yet.
|
2023-12-09 16:43:14 +01:00 |
|
Philipp Wolfer
|
20f1732858
|
Use positional arguments for source and target in beam commands
|
2023-12-08 17:59:37 +01:00 |
|
Philipp Wolfer
|
3ab0ce1cc6
|
Restructured cmd files
|
2023-12-08 17:38:20 +01:00 |
|
Philipp Wolfer
|
543a9c666d
|
Implemented service delete command
|
2023-12-08 17:27:32 +01:00 |
|
Philipp Wolfer
|
7f2db58462
|
Implemented service list command
|
2023-12-08 08:56:10 +01:00 |
|
Philipp Wolfer
|
58a47a43e7
|
Implemented service edit command
|
2023-12-08 08:38:17 +01:00 |
|
Philipp Wolfer
|
c6c0723e27
|
Renamed config command to service, make auth a subcommand
|
2023-12-07 23:55:20 +01:00 |
|
Philipp Wolfer
|
9c363cc06d
|
Use config.ServiceConfig across API
|
2023-12-07 23:55:20 +01:00 |
|
Philipp Wolfer
|
091b3c2f49
|
Prevent adding duplicate services
|
2023-12-07 23:09:16 +01:00 |
|
Philipp Wolfer
|
8743a9d81c
|
Moved prompt helpers into cli package
|
2023-12-07 22:32:08 +01:00 |
|
Philipp Wolfer
|
c9fa21be73
|
Dynamic per-backend configuration options
|
2023-12-07 22:20:27 +01:00 |
|
Philipp Wolfer
|
ae5f1c5f26
|
Basic TUI to add new service configuration
|
2023-12-07 22:20:27 +01:00 |
|
Philipp Wolfer
|
ce5cdceb1f
|
Initialize config if it does not exist, set database relative to config dir
|
2023-12-07 22:20:27 +01:00 |
|
Philipp Wolfer
|
a9e07915ce
|
Transfer command refactoring
Make transfer command processing even more modular
|
2023-12-05 08:24:42 +01:00 |
|
Philipp Wolfer
|
7c85ba05ab
|
refactor: generic common cmd processing
|
2023-12-04 08:08:30 +01:00 |
|
Philipp Wolfer
|
a87686af57
|
Reduced code redundancy in import processing
|
2023-12-03 17:10:50 +01:00 |
|
Philipp Wolfer
|
b169dd2cc4
|
auth: generate oauth2 state randomly
|
2023-11-28 18:13:40 +01:00 |
|
Philipp Wolfer
|
5b8f4788f9
|
lastfm: authentication
|
2023-11-27 14:47:46 +01:00 |
|
Philipp Wolfer
|
46e6a667c8
|
Added constants for app name and version, use custom user-agent
|
2023-11-24 08:58:31 +01:00 |
|
Philipp Wolfer
|
857661ebf9
|
Restructured code, moved all modules into internal
For now all modules are considered internal. This might change later
|
2023-11-24 01:24:54 +01:00 |
|
Philipp Wolfer
|
fb285930c0
|
Avoid double closing of export progress channel
|
2023-11-23 22:45:50 +01:00 |
|
Philipp Wolfer
|
f447a259d4
|
OAuth2Strategy interface to abstract the details of the login flow
This allows implementing clients the deviate from the standard OAuth2 flow
|
2023-11-23 14:41:31 +01:00 |
|
Philipp Wolfer
|
e29d8e2a63
|
Custom OAuth2 TokenSource to persist refreshed tokens in database
|
2023-11-22 17:24:30 +01:00 |
|
Philipp Wolfer
|
d0739aad0f
|
Use config from OAuth2Authenticator for auth command
|
2023-11-22 08:41:18 +01:00 |
|
Philipp Wolfer
|
cf3747bde2
|
Fixed oauth token refresh for source
|
2023-11-22 08:21:43 +01:00 |
|
Philipp Wolfer
|
117014a977
|
Change project license to GPLv3
Individual files, mainly the models and the HTTP clients stay under MIT
|
2023-11-22 08:05:23 +01:00 |
|
Philipp Wolfer
|
1af484e0f6
|
Fixed storing last import timestamp
|
2023-11-21 18:14:11 +01:00 |
|
Philipp Wolfer
|
fa7732c538
|
Autenticate OAuth backends
|
2023-11-21 17:51:13 +01:00 |
|
Philipp Wolfer
|
94704f9cd0
|
WIP: Authenticate
|
2023-11-21 16:43:40 +01:00 |
|
Philipp Wolfer
|
3d3685d8bc
|
Initial implementation for Spotify listens export
|
2023-11-21 16:42:59 +01:00 |
|
Philipp Wolfer
|
74f2a3cef7
|
Use port 2369 as standard port for OAuth callbacks
|
2023-11-21 08:52:25 +01:00 |
|
Philipp Wolfer
|
14d944c7ad
|
Basic "scotty auth" implementation
|
2023-11-19 23:56:31 +01:00 |
|
Philipp Wolfer
|
8b227cb514
|
Better naming, distingiush between "service" and "backend"
|
2023-11-19 22:54:42 +01:00 |
|
Philipp Wolfer
|
6e330daf06
|
Implemented progressbar for export/import
|
2023-11-19 13:56:06 +01:00 |
|
Philipp Wolfer
|
298697dcfc
|
Run exporter in goroutine
Use channel to pass data from exporter to importer
|
2023-11-17 07:41:46 +01:00 |
|
Philipp Wolfer
|
bae81d9b08
|
If import fails report the last timestamp
|
2023-11-15 09:20:52 +01:00 |
|
Philipp Wolfer
|
36f8f3e311
|
Use nested map for service configs
|
2023-11-15 07:35:28 +01:00 |
|
Philipp Wolfer
|
c8146355c1
|
Database support to store the last processed timestamp
|
2023-11-14 17:19:01 +01:00 |
|
Philipp Wolfer
|
503449c43d
|
Removed unused CLI flag added by default implementation
|
2023-11-14 15:14:54 +01:00 |
|
Philipp Wolfer
|
27685d617a
|
Implemented "beam --timestamp {n}"
|
2023-11-13 23:55:47 +01:00 |
|
Philipp Wolfer
|
aa453e4dc2
|
ListenBrainz: Fix love import and rate limit check
|
2023-11-13 11:42:09 +01:00 |
|
Philipp Wolfer
|
ead323eaed
|
Import result can report total and processed items
|
2023-11-12 18:41:29 +01:00 |
|
Philipp Wolfer
|
516de905bd
|
Renamed interfaces ListenImport|Export to ListensImport|Export
|
2023-11-12 18:40:00 +01:00 |
|