hunk.code_window: import { Implement as GuardInterface, Schema as GuardOptions } from './schema';
   export default function (options: GuardOptions): Rule {
     if (options.implements && options.implements.length > 0 && options.guardType) {
       throw new SchematicsException('Options "implements" and "guardType" cannot be used together.');
     }
  
hunk.labels: keep keep keep replace replace keep keep
hunk.after_edit:   if (!options.implements) {
       throw new SchematicsException('Option "implements" is required.');
     }
     if (options.implements.length > 1 && options.functional) {
       throw new SchematicsException(
         'Can only specify one value for implements when generating a functional guard.',
       );
  
hunk.file_path: packages/schematics/angular/guard/index.ts
hunk.type: replace
file: workspace(
      name = "angular_cli",
      managed_directories = {"@npm": ["node_modules"]},
  )
  
  load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
  
  http_archive(
      name = "bazel_skylib",
      sha256 = "74d544d96f4a5bb630d465ca8bbcfe231e3594e5aae57e1edbf17a6eb3ca2506",
      urls = [
          "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz",
          "https://github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz",
      ],
  )
  
  http_archive(
      name = "io_bazel_rules_webtesting",
      sha256 = "e9abb7658b6a129740c0b3ef6f5a2370864e102a5ba5ffca2cea565829ed825a",
      urls = ["https://github.com/bazelbuild/rules_webtesting/releases/download/0.3.5/rules_webtesting.tar.gz"],
  )
  
  http_archive(
      name = "build_bazel_rules_nodejs",
      sha256 = "5aae76dced38f784b58d9776e4ab12278bc156a9ed2b1d9fcd3e39921dc88fda",
      urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.7.1/rules_nodejs-5.7.1.tar.gz"],
  )
  
  load("@build_bazel_rules_nodejs//:repositories.bzl", "build_bazel_rules_nodejs_dependencies")
  
  build_bazel_rules_nodejs_dependencies()
  
  http_archive(
      name = "rules_pkg",
      sha256 = "eea0f59c28a9241156a47d7a8e32db9122f3d50b505fae0f33de6ce4d9b61834",
      urls = ["https://github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz"],
  )
  
  load("@bazel_tools//tools/sh:sh_configure.bzl", "sh_configure")
  
  sh_configure()
  
  load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
  
  bazel_skylib_workspace()
  
  load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
  
  rules_pkg_dependencies()
  
  # Setup the Node.js toolchain
  load("@rules_nodejs//nodejs:repositories.bzl", "nodejs_register_toolchains")
  
  nodejs_register_toolchains(
      name = "nodejs",
      node_version = "14.20.0",
  )
  
  load("@build_bazel_rules_nodejs//:index.bzl", "yarn_install")
  
  yarn_install(
      name = "npm",
      data = [
          "//:.yarn/releases/yarn-1.22.17.cjs",
          "//:.yarnrc",
      ],
      # Currently disabled due to:
      #  1. Missing Windows support currently.
      #  2. Incompatibilites with the `ts_library` rule.
      exports_directories_only = False,
      package_json = "//:package.json",
      # We prefer to symlink the `node_modules` to only maintain a single install.
      # See https://github.com/angular/dev-infra/pull/446#issuecomment-1059820287 for details.
      symlink_node_modules = True,
      yarn = "//:.yarn/releases/yarn-1.22.17.cjs",
      yarn_lock = "//:yarn.lock",
  )
  
  http_archive(
      name = "aspect_bazel_lib",
      sha256 = "88ac1874c9930c5f01482d25a4f25104a788a178bf1c20053c00322ea7059bd6",
      strip_prefix = "bazel-lib-1.16.0",
      url = "https://github.com/aspect-build/bazel-lib/archive/v1.16.0.tar.gz",
  )
  
  load("@aspect_bazel_lib//lib:repositories.bzl", "aspect_bazel_lib_dependencies", "register_jq_toolchains")
  
  aspect_bazel_lib_dependencies()
  
  register_jq_toolchains(version = "1.6")
  
  nodejs_register_toolchains(
      name = "node14",
      node_version = "14.20.0",
  )
  
  nodejs_register_toolchains(
      name = "node16",
      node_version = "16.13.1",
  )
  