
In the future a hook may be invoked multiple times with different `supportedAssetTypes` (soon to be renamed to `buildAssetTypes`). The hook should only emit those asset types that are in `supportedAssetTypes` - anything else is an error. Right now flutter happens to invoke hooks only with `Code` asset types, but more asset types are coming, for which this PR is a preparation for.
28 lines
926 B
Dart
28 lines
926 B
Dart
// Copyright 2014 The Flutter Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
import 'package:native_assets_cli/code_assets.dart';
|
|
|
|
void main(List<String> args) async {
|
|
await link(args, (LinkConfig config, LinkOutputBuilder output) async {
|
|
if (!config.supportedAssetTypes.contains(CodeAsset.type)) {
|
|
return;
|
|
}
|
|
final CodeAsset asset = config.codeAssets.single;
|
|
final String packageName = config.packageName;
|
|
output.codeAssets.add(
|
|
CodeAsset(
|
|
package: packageName,
|
|
// Change the asset id to something that is used.
|
|
name: '${packageName}_bindings_generated.dart',
|
|
linkMode: asset.linkMode,
|
|
os: asset.os,
|
|
architecture: asset.architecture,
|
|
file: asset.file,
|
|
),
|
|
);
|
|
output.addDependency(config.packageRoot.resolve('hook/link.dart'));
|
|
});
|
|
}
|