| module(name = "examples") |
| |
| bazel_dep(name = "aspect_rules_js", version = "0.0.0", dev_dependency = True) |
| local_path_override( |
| module_name = "aspect_rules_js", |
| path = "..", |
| ) |
| |
| bazel_dep(name = "bazel_lib", version = "3.0.0", dev_dependency = True) |
| bazel_dep(name = "bazel_skylib", version = "1.5.0", dev_dependency = True) |
| bazel_dep(name = "jq.bzl", version = "0.4.0", dev_dependency = True) |
| bazel_dep(name = "platforms", version = "1.0.0", dev_dependency = True) |
| bazel_dep(name = "rules_nodejs", version = "6.7.3", dev_dependency = True) |
| bazel_dep(name = "rules_shell", version = "0.6.1", dev_dependency = True) |
| |
| node = use_extension( |
| "@rules_nodejs//nodejs:extensions.bzl", |
| "node", |
| dev_dependency = True, |
| ) |
| use_repo(node, "nodejs_toolchains") |
| |
| pnpm = use_extension("@aspect_rules_js//npm:extensions.bzl", "pnpm") |
| pnpm.pnpm( |
| name = "pnpm", |
| pnpm_version = "10.22.0", |
| pnpm_version_integrity = "sha512-vwSe/plbKPUn/StBrgR0zikYb37cs79UUIe9Yfu+uyv3U2LRMH/aCcLSiOHkmXh6wS1Py2F6l0cYpgUfLu50HA==", |
| ) |
| use_repo(pnpm, "pnpm", "pnpm__links") |
| |
| npm = use_extension( |
| "@aspect_rules_js//npm:extensions.bzl", |
| "npm", |
| dev_dependency = True, |
| ) |
| npm.npm_translate_lock( |
| name = "npm", |
| bins = { |
| # derived from "bin" attribute in node_modules/typescript/package.json |
| "typescript": [ |
| "tsc=./bin/tsc", |
| "tsserver=./bin/tsserver", |
| ], |
| }, |
| custom_postinstalls = { |
| "@aspect-test/c": "echo moo > cow.txt", |
| "@aspect-test/c@2.0.2": "echo mooo >> cow.txt", |
| }, |
| data = [ |
| "//:package.json", |
| "//:pnpm-workspace.yaml", |
| "//js_binary:package.json", |
| "//js_lib_pkg/a:package.json", |
| "//js_lib_pkg/b:package.json", |
| "//linked_consumer:package.json", |
| "//linked_empty_node_modules:package.json", |
| "//linked_lib:package.json", |
| "//linked_pkg:package.json", |
| "//macro:package.json", |
| "//nextjs:package.json", |
| "//npm_deps:package.json", |
| "//npm_deps/patches:meaning-of-life@1.0.0-pnpm.patch", |
| "//npm_package/libs/lib_a:package.json", |
| "//npm_package/packages/pkg_a:package.json", |
| "//npm_package/packages/pkg_b:package.json", |
| "//npm_package/packages/pkg_d:package.json", |
| "//npm_package/packages/pkg_e:package.json", |
| "//package_json_module:package.json", |
| "//runfiles:package.json", |
| "//stack_traces:package.json", |
| "//vite3:package.json", |
| "//vite6:package.json", |
| "//webpack_cli:package.json", |
| ], |
| generate_bzl_library_targets = True, |
| lifecycle_hooks_execution_requirements = { |
| "*": [ |
| "no-sandbox", |
| ], |
| }, |
| npmrc = "//:.npmrc", |
| package_visibility = { |
| "@mycorp/pkg-a": [ |
| "//js_binary:__subpackages__", |
| "//npm_deps:__subpackages__", |
| ], |
| "@mycorp/pkg-d": [ |
| "//npm_deps:__subpackages__", |
| "//npm_package:__subpackages__", |
| ], |
| "@mycorp/pkg-e": ["//npm_deps:__subpackages__"], |
| }, |
| pnpm_lock = "//:pnpm-lock.yaml", |
| public_hoist_packages = { |
| # Instructs the linker to hoist the ms@2.1.3 npm package to `node_modules/ms` in the `npm_deps` package. |
| # Similar to adding `public-hoist-pattern[]=ms` in .npmrc but with control over which version to hoist and where |
| # to hoist it. This hoisted package can be referenced by the label `//npm_deps:node_modules/ms` same as |
| # other direct dependencies in the `npm_deps/package.json`. |
| "ms@2.1.3": ["npm_deps"], |
| }, |
| update_pnpm_lock = True, |
| use_pnpm = "@pnpm//:package/bin/pnpm.cjs", |
| verify_node_modules_ignored = "//:.bazelignore", |
| verify_patches = "//npm_deps/patches:patches", |
| ) |
| use_repo( |
| npm, |
| "npm", |
| "npm__next__15.2.6_1816342077__links", |
| "npm__rollup__4.55.2", |
| "npm__rollup__4.55.2__links", |
| ) |
| |
| # As an example, manually import a package using explicit coordinates. |
| # Just a demonstration of the syntax de-sugaring. |
| npm.npm_import( |
| name = "acorn__8.4.0", |
| bins = {"acorn": "./bin/acorn"}, |
| integrity = "sha512-ULr0LDaEqQrMFGyQ3bhJkLsbtrQ8QibAseGZeaSUiT/6zb9IvIkomWHJIvgvwad+hinRAgsI51JcWk2yvwyL+w==", |
| package = "acorn", |
| # Root package where to link the package store |
| root_package = "", |
| version = "8.4.0", |
| ) |
| use_repo( |
| npm, |
| "acorn__8.4.0", |
| "acorn__8.4.0__links", |
| ) |