hans
b0c9fe7b98
Refactor theme management to use ValueListenableBuilder for effective theme updates
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-07-01 16:56:30 +02:00
hans
f8dcaf3c6c
Refactor theme management to use ValueNotifier for reactive updates
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-07-01 16:35:31 +02:00
hans
93f90a3f72
Fix DebugAuthInterface logout method
...
Added environment key to ArcaneEnvironment constructor
Renamed switchEnvironment parameter in ArcaneEnvironment constructor
Bumped arcane_helper_utils dependency version
2025-05-19 17:00:27 +02:00
hans
c2cfb46d82
Fix authentication interface and service methods for logout and login.
2025-05-19 17:00:01 +02:00
hans
077956b8ba
Organize theme service
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-05-14 11:12:02 +02:00
hans
55ff65ba32
Remove unnecessary notifyListeners calls
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-05-14 11:11:45 +02:00
hans
7bf5a6d33d
Update ServiceProvider to make service instances optional
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-05-13 15:00:58 +02:00
hans
515c7fb5b1
Fixes the notifier for feature flags and updates the example
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-05-13 14:31:21 +02:00
hans
1eab50b0f5
Update example documentation
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-30 14:41:26 +02:00
hans
88210ce1bc
Added requiredServiceOfType getter on ArcaneServiceProvider
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 19:52:58 +02:00
hans
25b456a664
Broke up arcane service into separate files
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 19:18:38 +02:00
hans
3ef93bb3f9
Renamed serviceInstances => registeredServices and added a removeService method
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 18:56:48 +02:00
hans
d1daf0e39f
Renamed getters on ArcaneService
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 17:25:27 +02:00
hans
304c6c8094
Re-add service locators. They should be called as:
...
ArcaneService.of<MyService>(context)
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 17:09:55 +02:00
hans
d069eb0fd3
Remove 'of' and 'requiredOf' locators
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 16:43:21 +02:00
hans
c3eb677b05
Try using a mixin instead
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 16:41:34 +02:00
hans
a04038afc3
Put service locators in an extension
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 16:40:20 +02:00
hans
87f86d8117
Update service provider
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 16:32:53 +02:00
hans
8711eae4d8
Fix updateShouldNotify on ArcaneServiceProvider
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 15:00:48 +02:00
hans
87eabf0293
Made ArcaneTheme private (_ArcaneTheme)
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:33:30 +02:00
hans
186e6531b2
Made the switchEnvironment field in ArcaneEnvironment private (_switchEnvironment)
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
83aaa3b446
Remove unused import
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
c5c0009cb4
Moved platform brightness checking from ArcaneApp to ArcaneThemeSwitcher, where it is more appropriate
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
599ade3981
Check for empty interfaces before initializing them in the logger
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
6fb304a4a1
Only send log messages to the LoggingInterfaces if the logging service has been initialized
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
9f1b26e097
Extra log messages will not longer be added to the log stream if more than one LoggingInterface is registered
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
b7c55913e9
Made ArcaneServiceProvider.of(context) nullable
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
1510ded49d
Rename onEnvironmentChanged to switchEnvironment
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
6764d8074a
Setting a theme style now automatically switches to that theme
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
3fd38d3b26
Added logStream to logger. Updated example code.
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
68595f0a20
Re-add getters on ArcaneTheme
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
bfa5c646d7
Fixes bug with following/unfollowing system theme
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
e402308f7b
Fixes broken tests
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
23f0387389
Fixes tests and updates reactive theme
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
cfd9052442
Fixes the reactive theme service to properly follow the system brightness
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
58817b349d
Fixed late initialized value in logging service
2025-04-29 14:16:17 +02:00
hans
39160c223e
Removed arcane theme from service provider
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
2c8596d517
Fixed theme
...
- fixed: currentMode, dark, light now actually emit new values when changed
- added: getters for lightTheme, darkTheme, and systemTheme
- breaking: currentMode -> systemTheme
- added: currentTheme
- breaking: currentMode => currentTheme
- change: Arcane.theme.followSystemTheme(context) required to follow system theme
- change: After following the system theme, calling Arcane.theme.switchTheme() cancels following the system theme
- added: ArcaneReactiveTheme is now registered in ArcaneServiceProvider when using ArcaneApp
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
e9ba80bcc2
Minor change
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
253f2914be
Remove debug logging
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
ab880a2f5b
Minor fix to fileAndLineParts calculation
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
cf4cf1306b
Fix module/method/fileAndLineNumber calculations in logging service
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
0c5b947809
Logging service:
...
- added: reset()
- added: `skipAutodetection` option for module, method, and metadata
- added: unregisterInterface()
- Created FileAndLineNumber mixin
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
Hans Kokx
e901da8080
Added of(context) extension to ArcaneService
2025-04-29 14:16:17 +02:00
hans
d4dc176356
ArcaneReactiveTheme now optionally takes a ThemeMode parameter when calling switchTheme
...
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
ac82e93b9d
[UNTESTED] Fixes notifiers and adds some additional methods. Adds tests.
...
Changes:
// ArcaneEnvironment
breaking: context.read<ArcaneEnvironment>() -> ArcaneEnvironment.of(context)
breaking: context.read<ArcaneEnvironment>().state -> ArcaneEnvironment.of(context).environment;
// Feature flag service
added: reset()
// Logging service
added: registerInterface()
added: unregisterInterfaces()
added: unregisterAllInterfaces()
// ArcaneReactiveTheme
fixed: currentMode, dark, light now actually emit new values when changed
added: getters for lightTheme, darkTheme, and systemTheme
TODO: test systemTheme
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-04-29 14:16:17 +02:00
hans
b129639f1f
Formatted files
2025-02-11 14:39:02 +01:00
hans
beee74e49a
v1.2.5
...
- Improved automatic metadata detection in `ArcaneLogger`
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-01-23 13:59:40 +01:00
hans
552398bcc5
v1.2.3
...
- Added `ValueNotifier`s to both the `ArcaneAuthenticationService` and
`ArcaneFeatureFlags`. This enables the possibility of listening for changes to
either service.
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com >
2025-01-14 11:48:25 +01:00
Hans Kokx
129801a0dc
v1.2.0
...
- Removed flutter_secure_storage dependency as it was unused
- BREAKING: several methods were moved from the ArcaneAuthInterface base class into their own mixins
Signed-off-by: Hans Kokx <hans.kokx@hackberry.se >
2024-12-12 15:09:10 +01:00