-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
Summary
Encapsulated all platform-specific conditional imports into entry point files, eliminating exposed if (dart.library.*) patterns in consumer files.
Changes
New Entry Point Files Created (7 files)
lib/core/utils/ip_getter/ip_getter.dartlib/util/url_helper/url_helper.dart(refactored)lib/util/export_selector/export_selector.dartlib/util/get_log_selector/get_log_selector.dartlib/constants/client_type/client_type.dartlib/core/utils/assign_ip/assign_ip.dartlib/core/utils/assign_ip/mobile_assign_ip.dart(no-op native impl)
Consumer Files Updated (17 files)
All consumer files now use clean single-line imports instead of conditional imports.
Benefits
- Cleaner code: Consumers only import entry point files
- Encapsulation: Platform-specific logic hidden inside entry points
- Maintainability: Changes to platform implementations don't affect consumers
Documentation
See doc/audit/platform-conditional-exports-audit.md for full audit report.
Branch
austin/platform-conditional-exports-encapsulation
Verification
-
flutter analyzepasses -
flutter build websucceeds
Metadata
Metadata
Assignees
Labels
No labels