blob: 5f6ad1627b00feaa21612b8bdd791f5f0ba6ed9c [file] [log] [blame]
# Copyright 2021 The Chromium 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("//third_party/node/node.gni")
# Rewrites the imports specified in `import_mappings`. Only exact import matches
# will be replaced.
# TODO(crbug.com/1320176): Consider integrating this functionality into
# ts_library.gni.
template("rewrite_imports") {
node(target_name) {
script = "//third_party/material_web_components/rewrite_imports.py"
forward_variables_from(invoker,
[
"deps",
"import_mappings",
])
inputs = []
outputs = []
foreach(_dep, deps) {
foreach(_output, filter_include(get_target_outputs(_dep), [ "*.js" ])) {
inputs += [ _output ]
outputs += [ "$target_gen_dir/" + get_path_info(_output, "file") ]
}
}
import_mappings = [ "tslib|//resources/mwc/tslib/tslib.js" ]
if (defined(invoker.import_mappings)) {
import_mappings += invoker.import_mappings
}
args = [ "--in_files" ] + rebase_path(inputs, root_build_dir)
args += [
"--out_dir",
rebase_path(target_gen_dir, root_build_dir),
]
args += [ "--import_mappings" ] + import_mappings
}
}