import 'package:d4rt/d4rt.dart'; import 'package:mangayomi/eval/model/source_preference.dart'; // EditTextPreference class SourcePreferenceBridge { final checkBoxPreferenceBridgedClass = BridgedClassDefinition( nativeType: CheckBoxPreference, name: 'CheckBoxPreference', constructors: { '': (visitor, positionalArgs, namedArgs) { return SourcePreference( key: namedArgs.get('key'), checkBoxPreference: CheckBoxPreference( title: namedArgs.get('title'), summary: namedArgs.get('summary'), value: namedArgs.get('value'), ), ); }, }, getters: { 'key': (visitor, target) => (target as SourcePreference).key, 'title': (visitor, target) => (target as SourcePreference).checkBoxPreference?.title, 'summary': (visitor, target) => (target as SourcePreference).checkBoxPreference?.summary, 'value': (visitor, target) => (target as SourcePreference).checkBoxPreference?.value, }, ); final switchPreferenceCompatBridgedClass = BridgedClassDefinition( nativeType: SwitchPreferenceCompat, name: 'SwitchPreferenceCompat', constructors: { '': (visitor, positionalArgs, namedArgs) { return SourcePreference( key: namedArgs.get('key'), switchPreferenceCompat: SwitchPreferenceCompat( title: namedArgs.get('title'), summary: namedArgs.get('summary'), value: namedArgs.get('value'), ), ); }, }, getters: { 'key': (visitor, target) => (target as SourcePreference).key, 'title': (visitor, target) => (target as SourcePreference).switchPreferenceCompat?.title, 'summary': (visitor, target) => (target as SourcePreference).switchPreferenceCompat?.summary, 'value': (visitor, target) => (target as SourcePreference).switchPreferenceCompat?.value, }, ); final listPreferenceBridgedClass = BridgedClassDefinition( nativeType: ListPreference, name: 'ListPreference', constructors: { '': (visitor, positionalArgs, namedArgs) { return SourcePreference( key: namedArgs.get('key'), listPreference: ListPreference( title: namedArgs.get('title'), summary: namedArgs.get('summary'), valueIndex: namedArgs.get('valueIndex'), entries: namedArgs.get('entries')?.cast(), entryValues: namedArgs.get('entryValues')?.cast(), ), ); }, }, getters: { 'key': (visitor, target) => (target as SourcePreference).key, 'title': (visitor, target) => (target as SourcePreference).listPreference?.title, 'summary': (visitor, target) => (target as SourcePreference).listPreference?.summary, 'value': (visitor, target) => (target as SourcePreference).listPreference?.valueIndex, 'entries': (visitor, target) => (target as SourcePreference).listPreference?.entries, 'entryValues': (visitor, target) => (target as SourcePreference).listPreference?.entryValues, }, ); final multiSelectListPreferenceBridgedClass = BridgedClassDefinition( nativeType: MultiSelectListPreference, name: 'MultiSelectListPreference', constructors: { '': (visitor, positionalArgs, namedArgs) { return SourcePreference( key: namedArgs.get('key'), multiSelectListPreference: MultiSelectListPreference( title: namedArgs.get('title'), summary: namedArgs.get('summary'), entries: namedArgs.get('entries')?.cast(), entryValues: namedArgs.get('entryValues')?.cast(), values: namedArgs.get('values')?.cast(), ), ); }, }, getters: { 'key': (visitor, target) => (target as SourcePreference).key, 'title': (visitor, target) => (target as SourcePreference).multiSelectListPreference?.title, 'summary': (visitor, target) => (target as SourcePreference).multiSelectListPreference?.summary, 'values': (visitor, target) => (target as SourcePreference).multiSelectListPreference?.values, 'entries': (visitor, target) => (target as SourcePreference).multiSelectListPreference?.entries, 'entryValues': (visitor, target) => (target as SourcePreference).multiSelectListPreference?.entryValues, }, ); final editTextPreferenceBridgedClass = BridgedClassDefinition( nativeType: EditTextPreference, name: 'EditTextPreference', constructors: { '': (visitor, positionalArgs, namedArgs) { return SourcePreference( key: namedArgs.get('key'), editTextPreference: EditTextPreference( title: namedArgs.get('title'), summary: namedArgs.get('summary'), value: namedArgs.get('value'), dialogTitle: namedArgs.get('dialogTitle'), dialogMessage: namedArgs.get('dialogMessage'), text: namedArgs.get('text'), ), ); }, }, getters: { 'key': (visitor, target) => (target as SourcePreference).key, 'title': (visitor, target) => (target as SourcePreference).editTextPreference?.title, 'summary': (visitor, target) => (target as SourcePreference).editTextPreference?.summary, 'value': (visitor, target) => (target as SourcePreference).editTextPreference?.value, 'dialogTitle': (visitor, target) => (target as SourcePreference).editTextPreference?.dialogTitle, 'dialogMessage': (visitor, target) => (target as SourcePreference).editTextPreference?.dialogMessage, 'text': (visitor, target) => (target as SourcePreference).editTextPreference?.text, }, ); void registerBridgedClasses(D4rt interpreter) { interpreter.registerBridgedClass( checkBoxPreferenceBridgedClass, 'package:mangayomi/bridge_lib.dart', ); interpreter.registerBridgedClass( switchPreferenceCompatBridgedClass, 'package:mangayomi/bridge_lib.dart', ); interpreter.registerBridgedClass( listPreferenceBridgedClass, 'package:mangayomi/bridge_lib.dart', ); interpreter.registerBridgedClass( multiSelectListPreferenceBridgedClass, 'package:mangayomi/bridge_lib.dart', ); interpreter.registerBridgedClass( editTextPreferenceBridgedClass, 'package:mangayomi/bridge_lib.dart', ); } }