initFairLibraryAdapter static method
void
initFairLibraryAdapter(
- Widget app, {
- Map<
String, IFairPlugin> ? plugins, - Map<
String, String> ? jsPlugins, - List<
IFairLibraryAdapter> ? adapters,
app
FairApp
plugins
Fair plugin code with Dart
jsPlugins
Fair plugin code with JavaScript
adapters
3rd-party libraries which adapted Fair
Implementation
static void initFairLibraryAdapter(
Widget app, {
Map<String, IFairPlugin>? plugins,
Map<String, String>? jsPlugins,
List<IFairLibraryAdapter>? adapters,
}) {
if (adapters != null && adapters.isNotEmpty) {
adapters.forEach((element) {
if (element.provideFairPlugins()?.isNotEmpty == true) {
plugins?.addAll(element.provideFairPlugins()!);
}
if (element.provideJSPlugins()?.isNotEmpty == true) {
jsPlugins?.addAll(element.provideJSPlugins()!);
}
if (app is FairApp) {
if (element.provideFairModule() != null) {
app.modules.addAll(element.provideFairModule());
}
if (element.provideGeneratedModule() != null && app.proxy is ProxyMirror) {
(app.proxy as ProxyMirror).addGeneratedBinding(element.provideGeneratedModule()!);
}
if (element.provideFairDelegate() != null) {
GlobalState.instance().addExtBuilder(element.provideFairDelegate());
}
if (element.provideDynamicWidgetBuilder() != null) {
if (app.dynamicWidgetBuilder == null) {
app.dynamicWidgetBuilder = [element.provideDynamicWidgetBuilder()];
} else {
app.dynamicWidgetBuilder!.add(element.provideDynamicWidgetBuilder());
}
}
}
});
}
}