JsPlugin.source constructor

JsPlugin.source({
  1. required String id,
  2. required String version,
  3. required String source,
  4. required List<String> exports,
  5. String? init,
  6. String? dispose,
  7. List<String> permissions = const <String>[],
  8. Map<String, Object?> metadata = const <String, Object?>{},
  9. String entryName = 'main',
})

Creates a single-module plugin from inline JavaScript source.

Implementation

factory JsPlugin.source({
  required String id,
  required String version,
  required String source,
  required List<String> exports,
  String? init,
  String? dispose,
  List<String> permissions = const <String>[],
  Map<String, Object?> metadata = const <String, Object?>{},
  String entryName = 'main',
}) {
  final entry = '$id/$entryName';
  return JsPlugin(
    manifest: JsPluginManifest(
      id: id,
      version: version,
      entry: entry,
      exports: exports,
      init: init,
      dispose: dispose,
      permissions: permissions,
      metadata: metadata,
    ),
    modules: <JsPluginModule>[JsPluginModule(name: entry, source: source)],
  );
}