template("npm_action") {
  assert(defined(invoker.script),
         "Need script name to run (must be defined in package.json)")
  assert(defined(invoker.args), "Need script argumets")

  action(target_name) {
    forward_variables_from(invoker,
                           [
                             "deps",
                             "public_deps",
                             "sources",
                             "inputs",
                             "outputs",
                           ])
    script = "//electron/build/npm-run.py"
    args = [
             "--silent",
             invoker.script,
             "--",
           ] + invoker.args
  }
}
