mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
build: migrate adev shared-docs package to use ts_project (#61217)
Migrate the build rules for shared docs to use ts_project PR Close #61217
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
# Input hashes for repository rule npm_translate_lock(name = "npm2", pnpm_lock = "@//:pnpm-lock.yaml").
|
||||
# This file should be checked into version control along with the pnpm-lock.yaml file.
|
||||
.npmrc=-203833057
|
||||
package.json=-2010611265
|
||||
pnpm-lock.yaml=1052846975
|
||||
package.json=281460280
|
||||
pnpm-lock.yaml=2012155455
|
||||
pnpm-workspace.yaml=1711114604
|
||||
yarn.lock=1217123358
|
||||
yarn.lock=988990941
|
||||
|
||||
+3
-3
@@ -7,8 +7,8 @@ export const format: FormatConfig = {
|
||||
'prettier': {
|
||||
'matchers': [
|
||||
'**/*.{yaml,yml}',
|
||||
'**/*.{js,ts}',
|
||||
'devtools/**/*.{js,ts,html,scss}',
|
||||
'**/*.{js,ts,mjs,mts,cjs,cts}',
|
||||
'devtools/**/*.{js,ts,mjs,mts,cjs,cts,html,scss}',
|
||||
|
||||
// Do not format d.ts files as they are generated
|
||||
'!**/*.d.ts',
|
||||
@@ -22,7 +22,7 @@ export const format: FormatConfig = {
|
||||
'!packages/common/locales/closure-locale.ts',
|
||||
'!packages/common/src/i18n/currencies.ts',
|
||||
// Test cases contain non valid code.
|
||||
'!packages/compiler-cli/test/compliance/test_cases/**/*.{js,ts}',
|
||||
'!packages/compiler-cli/test/compliance/test_cases/**/*.{js,ts,mjs,mts,cjs,cts}',
|
||||
|
||||
// Ignore generated javascript file(s)
|
||||
'!.github/actions/deploy-docs-site/main.js',
|
||||
|
||||
@@ -142,6 +142,17 @@ http_archive(
|
||||
url = "https://github.com/aspect-build/rules_rollup/releases/download/v2.0.0/rules_rollup-v2.0.0.tar.gz",
|
||||
)
|
||||
|
||||
http_archive(
|
||||
name = "aspect_rules_jasmine",
|
||||
sha256 = "0d2f9c977842685895020cac721d8cc4f1b37aae15af46128cf619741dc61529",
|
||||
strip_prefix = "rules_jasmine-2.0.0",
|
||||
url = "https://github.com/aspect-build/rules_jasmine/releases/download/v2.0.0/rules_jasmine-v2.0.0.tar.gz",
|
||||
)
|
||||
|
||||
load("@aspect_rules_jasmine//jasmine:dependencies.bzl", "rules_jasmine_dependencies")
|
||||
|
||||
rules_jasmine_dependencies()
|
||||
|
||||
load("@aspect_bazel_lib//lib:repositories.bzl", "aspect_bazel_lib_dependencies")
|
||||
|
||||
aspect_bazel_lib_dependencies()
|
||||
|
||||
@@ -1,7 +1,28 @@
|
||||
load("@aspect_rules_ts//ts:defs.bzl", rules_js_tsconfig = "ts_config")
|
||||
load("//tools:defaults.bzl", "ng_module", "ng_package")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
rules_js_tsconfig(
|
||||
name = "tsconfig_build",
|
||||
src = "tsconfig.json",
|
||||
visibility = [
|
||||
"//adev/shared-docs:__subpackages__",
|
||||
],
|
||||
)
|
||||
|
||||
rules_js_tsconfig(
|
||||
name = "tsconfig_test",
|
||||
src = "tsconfig-test.json",
|
||||
visibility = [
|
||||
"//adev/shared-docs:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
":tsconfig_build",
|
||||
"//:node_modules/@types/jasmine",
|
||||
],
|
||||
)
|
||||
|
||||
ng_module(
|
||||
name = "docs",
|
||||
srcs = [
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
load("//tools:defaults.bzl", "ts_library")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "components",
|
||||
srcs = [
|
||||
"index.ts",
|
||||
],
|
||||
visibility = [
|
||||
"//adev/shared-docs:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
interop_deps = [
|
||||
"//adev/shared-docs/components/algolia-icon",
|
||||
"//adev/shared-docs/components/breadcrumb",
|
||||
"//adev/shared-docs/components/cookie-popup",
|
||||
@@ -25,4 +22,8 @@ ts_library(
|
||||
"//adev/shared-docs/components/top-level-banner",
|
||||
"//adev/shared-docs/components/viewers",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
visibility = [
|
||||
"//adev/shared-docs:__pkg__",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -30,13 +31,13 @@ sass_binary(
|
||||
src = "breadcrumb.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":breadcrumb",
|
||||
"//adev/shared-docs/interfaces",
|
||||
"//adev/shared-docs/services",
|
||||
@@ -46,6 +47,7 @@ ts_library(
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -28,19 +29,20 @@ sass_binary(
|
||||
src = "cookie-popup.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":cookie-popup",
|
||||
"//adev/shared-docs/providers",
|
||||
"//adev/shared-docs/testing",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -22,18 +23,21 @@ ng_module(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":copy-source-code-button",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
"//packages/platform-browser",
|
||||
"@npm//@angular/cdk",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
deps = [
|
||||
"//:node_modules/@angular/cdk",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -35,13 +36,13 @@ sass_binary(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":navigation-list",
|
||||
"//adev/shared-docs/interfaces",
|
||||
"//adev/shared-docs/services",
|
||||
@@ -51,6 +52,7 @@ ts_library(
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -34,13 +35,13 @@ sass_binary(
|
||||
src = "search-dialog.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":search-dialog",
|
||||
"//adev/shared-docs/components/algolia-icon",
|
||||
"//adev/shared-docs/interfaces",
|
||||
@@ -53,6 +54,7 @@ ts_library(
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -27,17 +28,18 @@ sass_binary(
|
||||
src = "select.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":select",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -27,17 +28,18 @@ sass_binary(
|
||||
src = "slide-toggle.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":slide-toggle",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -31,13 +32,13 @@ sass_binary(
|
||||
src = "table-of-contents.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":table-of-contents",
|
||||
"//adev/shared-docs/interfaces",
|
||||
"//adev/shared-docs/providers",
|
||||
@@ -47,6 +48,7 @@ ts_library(
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -29,17 +30,18 @@ sass_binary(
|
||||
src = "text-field.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":text-field",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -29,18 +30,19 @@ sass_binary(
|
||||
src = "top-level-banner.component.scss",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":top-level-banner",
|
||||
"//adev/shared-docs/providers",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -45,13 +46,13 @@ sass_binary(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["**/*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":viewers",
|
||||
"//adev/shared-docs/components/breadcrumb",
|
||||
"//adev/shared-docs/components/copy-source-code-button",
|
||||
@@ -66,8 +67,11 @@ ts_library(
|
||||
"//packages/platform-browser/animations",
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
"@npm//@angular/cdk",
|
||||
"@npm//@angular/material",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
deps = [
|
||||
"//:node_modules/@angular/cdk",
|
||||
"//:node_modules/@angular/material",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
load("//tools:defaults.bzl", "ts_library")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "directives",
|
||||
srcs = [
|
||||
"index.ts",
|
||||
],
|
||||
visibility = [
|
||||
"//adev/shared-docs:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
interop_deps = [
|
||||
"//adev/shared-docs/directives/click-outside",
|
||||
"//adev/shared-docs/directives/external-link",
|
||||
"//adev/shared-docs/directives/search-item",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
visibility = [
|
||||
"//adev/shared-docs:__subpackages__",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -16,13 +17,13 @@ ng_module(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":click-outside",
|
||||
"//packages/core",
|
||||
"//packages/core/testing",
|
||||
@@ -30,6 +31,7 @@ ts_library(
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
|
||||
load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
@@ -19,13 +20,13 @@ ng_module(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
["*.spec.ts"],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
":external-link",
|
||||
"//adev/shared-docs/providers",
|
||||
"//packages/core",
|
||||
@@ -34,6 +35,7 @@ ts_library(
|
||||
"//packages/router",
|
||||
"//packages/router/testing",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
)
|
||||
|
||||
karma_web_test_suite(
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
load("//tools:defaults.bzl", "ts_library")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:private"])
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "interfaces",
|
||||
srcs = [
|
||||
"index.ts",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
visibility = ["//adev/shared-docs:__subpackages__"],
|
||||
deps = [
|
||||
":lib",
|
||||
":lib_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "lib",
|
||||
srcs = glob(
|
||||
[
|
||||
@@ -24,9 +25,13 @@ ts_library(
|
||||
"**/*.spec.ts",
|
||||
],
|
||||
),
|
||||
deps = [
|
||||
interop_deps = [
|
||||
"//packages/core",
|
||||
"@npm//@types/node",
|
||||
"@npm//@webcontainer/api",
|
||||
"//packages/router",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
deps = [
|
||||
"//:node_modules/@types/node",
|
||||
"//:node_modules/@webcontainer/api",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -12,7 +12,7 @@ esbuild_esm_bundle(
|
||||
define = {
|
||||
"HANDLE_MERMAID": "true",
|
||||
},
|
||||
entry_point = "//adev/shared-docs/pipeline/guides:index.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/guides:index.mts",
|
||||
# JSDOM should not be bundled because it has workers and dynamic imports.
|
||||
# playwright-core cannot be bundled because of its cjs usage.
|
||||
external = [
|
||||
@@ -33,7 +33,7 @@ esbuild_esm_bundle(
|
||||
define = {
|
||||
"HANDLE_MERMAID": "false",
|
||||
},
|
||||
entry_point = "//adev/shared-docs/pipeline/guides:index.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/guides:index.mts",
|
||||
# JSDOM should not be bundled because it has workers and dynamic imports.
|
||||
external = [
|
||||
"jsdom",
|
||||
@@ -49,7 +49,7 @@ esbuild_esm_bundle(
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "stackblitz-bundle",
|
||||
entry_point = "//adev/shared-docs/pipeline/examples/stackblitz:index.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/examples/stackblitz:index.mts",
|
||||
# JSDOM should not be bundled because it has workers and dynamic imports.
|
||||
external = ["jsdom"],
|
||||
output = "stackblitz.mjs",
|
||||
@@ -63,7 +63,7 @@ esbuild_esm_bundle(
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "previews-bundle",
|
||||
entry_point = "//adev/shared-docs/pipeline/examples/previews:index.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/examples/previews:index.mts",
|
||||
external = [
|
||||
"typescript",
|
||||
],
|
||||
@@ -79,7 +79,7 @@ esbuild_esm_bundle(
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "zip-bundle",
|
||||
entry_point = "//adev/shared-docs/pipeline/examples/zip:index.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/examples/zip:index.mts",
|
||||
output = "zip.mjs",
|
||||
platform = "node",
|
||||
target = "es2022",
|
||||
@@ -91,7 +91,7 @@ esbuild_esm_bundle(
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "playground-bundle",
|
||||
entry_point = "//adev/shared-docs/pipeline/tutorials:playground.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/tutorials:playground.mts",
|
||||
output = "playground.mjs",
|
||||
platform = "node",
|
||||
target = "es2022",
|
||||
@@ -103,7 +103,7 @@ esbuild_esm_bundle(
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "tutorial-bundle",
|
||||
entry_point = "//adev/shared-docs/pipeline/tutorials:tutorial.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/tutorials:tutorial.mts",
|
||||
output = "tutorial.mjs",
|
||||
platform = "node",
|
||||
target = "es2022",
|
||||
@@ -115,7 +115,7 @@ esbuild_esm_bundle(
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "navigation-bundle",
|
||||
entry_point = "//adev/shared-docs/pipeline/navigation:index.ts",
|
||||
entry_point = "//adev/shared-docs/pipeline/navigation:index.mts",
|
||||
output = "navigation.mjs",
|
||||
platform = "node",
|
||||
target = "es2022",
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
load("@angular//tools/esm-interop:index.bzl", "nodejs_binary")
|
||||
load("@npm//@angular/build-tooling/bazel:defaults.bzl", "ts_library")
|
||||
load("@npm//@angular/build-tooling/bazel/esbuild:index.bzl", "esbuild_esm_bundle")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "bin",
|
||||
entry_point = ":index.ts",
|
||||
entry_point = ":index.mts",
|
||||
external = [
|
||||
"@angular/compiler-cli",
|
||||
"typescript",
|
||||
@@ -19,22 +19,23 @@ esbuild_esm_bundle(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "extract_api_to_json_lib",
|
||||
srcs = glob(
|
||||
["**/*.ts"],
|
||||
["**/*.mts"],
|
||||
exclude = [
|
||||
"**/*.spec.ts",
|
||||
"**/*.spec.mts",
|
||||
],
|
||||
),
|
||||
devmode_module = "commonjs",
|
||||
tsconfig = "//adev:tsconfig.json",
|
||||
deps = [
|
||||
interop_deps = [
|
||||
"@angular//packages/compiler",
|
||||
"@angular//packages/compiler-cli",
|
||||
"@npm//@bazel/runfiles",
|
||||
"@npm//@types/node",
|
||||
"@npm//typescript",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
deps = [
|
||||
"//:node_modules/@bazel/runfiles",
|
||||
"//:node_modules/@types/node",
|
||||
"//:node_modules/typescript",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ import {
|
||||
NgtscProgram,
|
||||
} from '@angular/compiler-cli';
|
||||
import ts from 'typescript';
|
||||
import {EXAMPLES_PATH, interpolateCodeExamples} from './interpolate_code_examples';
|
||||
import {EXAMPLES_PATH, interpolateCodeExamples} from './interpolate_code_examples.mjs';
|
||||
|
||||
function main() {
|
||||
const [paramFilePath] = process.argv.slice(2);
|
||||
@@ -1,17 +1,18 @@
|
||||
load("//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json.bzl", "extract_api_to_json")
|
||||
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
|
||||
load("//tools:defaults.bzl", "jasmine_node_test")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
|
||||
|
||||
extract_api_to_json(
|
||||
name = "test",
|
||||
srcs = [
|
||||
"fake-source.ts",
|
||||
"fake-source.mts",
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:dummy_package",
|
||||
],
|
||||
entry_point = "fake-source.ts",
|
||||
entry_point = "fake-source.mts",
|
||||
import_map = {
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.ts": "@angular/dummy-package",
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.mts": "@angular/dummy-package",
|
||||
},
|
||||
module_name = "@angular/core",
|
||||
output_name = "api.json",
|
||||
@@ -22,15 +23,15 @@ extract_api_to_json(
|
||||
extract_api_to_json(
|
||||
name = "test_with_extra_entries",
|
||||
srcs = [
|
||||
"fake-source.ts",
|
||||
"fake-source.mts",
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:dummy_package",
|
||||
],
|
||||
entry_point = "fake-source.ts",
|
||||
entry_point = "fake-source.mts",
|
||||
extra_entries = [
|
||||
"extra.json",
|
||||
],
|
||||
import_map = {
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.ts": "@angular/dummy-package",
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.mts": "@angular/dummy-package",
|
||||
},
|
||||
module_name = "@angular/core",
|
||||
output_name = "extra_api.json",
|
||||
@@ -40,20 +41,24 @@ extract_api_to_json(
|
||||
|
||||
filegroup(
|
||||
name = "source_files",
|
||||
srcs = ["fake-source.ts"],
|
||||
srcs = ["fake-source.mts"],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "unit_test_lib",
|
||||
testonly = True,
|
||||
srcs =
|
||||
glob(["*.spec.ts"]) + [
|
||||
"fake-examples.ts",
|
||||
glob(["*.spec.mts"]) + [
|
||||
"fake-examples.mts",
|
||||
],
|
||||
deps = [
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json_lib",
|
||||
interop_deps = [
|
||||
"@angular//packages/compiler-cli",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
deps = [
|
||||
"//:node_modules/@types/node",
|
||||
"//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json_lib_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
|
||||
@@ -2,5 +2,5 @@ package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages
|
||||
|
||||
filegroup(
|
||||
name = "dummy_package",
|
||||
srcs = ["index.ts"],
|
||||
srcs = ["index.mts"],
|
||||
)
|
||||
|
||||
+2
-2
@@ -7,9 +7,9 @@
|
||||
*/
|
||||
|
||||
import fs from 'fs';
|
||||
import {interpolateCodeExamples} from '../interpolate_code_examples';
|
||||
import {interpolateCodeExamples} from '../interpolate_code_examples.mjs';
|
||||
import {DocEntry} from '@angular/compiler-cli';
|
||||
import {mockReadFileSync} from './fake-examples';
|
||||
import {mockReadFileSync} from './fake-examples.mjs';
|
||||
|
||||
const tsMdBlock = (code: string) => '```angular-ts\n' + code + '\n```';
|
||||
const htmlMdBlock = (code: string) => '```angular-html\n' + code + '\n```';
|
||||
@@ -1,12 +1,12 @@
|
||||
load("@npm//@angular/build-tooling/bazel:defaults.bzl", "ts_library")
|
||||
load("@angular//tools/esm-interop:index.bzl", "nodejs_binary")
|
||||
load("@npm//@angular/build-tooling/bazel/esbuild:index.bzl", "esbuild_esm_bundle")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "bin",
|
||||
entry_point = ":index.ts",
|
||||
entry_point = ":index.mts",
|
||||
external = [
|
||||
"@angular/compiler-cli",
|
||||
],
|
||||
@@ -19,15 +19,16 @@ esbuild_esm_bundle(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "generate_api_manifest_lib",
|
||||
srcs = glob(["**/*.ts"]),
|
||||
devmode_module = "commonjs",
|
||||
tsconfig = "//adev:tsconfig.json",
|
||||
deps = [
|
||||
srcs = glob(["**/*.mts"]),
|
||||
interop_deps = [
|
||||
"@angular//packages/compiler-cli",
|
||||
"@npm//@bazel/runfiles",
|
||||
"@npm//@types/node",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
deps = [
|
||||
"//:node_modules/@bazel/runfiles",
|
||||
"//:node_modules/@types/node",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {readFileSync, writeFileSync} from 'fs';
|
||||
import {generateManifest} from './generate_manifest';
|
||||
import {generateManifest} from './generate_manifest.mjs';
|
||||
import type {EntryCollection} from '@angular/compiler-cli';
|
||||
|
||||
function main() {
|
||||
@@ -1,6 +1,7 @@
|
||||
load("//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json.bzl", "extract_api_to_json")
|
||||
load("//adev/shared-docs/pipeline/api-gen/manifest:generate_api_manifest.bzl", "generate_api_manifest")
|
||||
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
|
||||
load("//tools:defaults.bzl", "jasmine_node_test")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
generate_api_manifest(
|
||||
name = "test",
|
||||
@@ -12,24 +13,27 @@ generate_api_manifest(
|
||||
|
||||
extract_api_to_json(
|
||||
name = "another_extraction",
|
||||
srcs = ["another-fake-source.ts"],
|
||||
entry_point = "another-fake-source.ts",
|
||||
srcs = ["another-fake-source.mts"],
|
||||
entry_point = "another-fake-source.mts",
|
||||
module_name = "@angular/router",
|
||||
output_name = "api.json",
|
||||
private_modules = [""],
|
||||
repo = "angular/angular",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "unit_test_lib",
|
||||
testonly = True,
|
||||
srcs = [
|
||||
"manifest.spec.ts",
|
||||
"manifest.spec.mts",
|
||||
],
|
||||
deps = [
|
||||
"//adev/shared-docs/pipeline/api-gen/manifest:generate_api_manifest_lib",
|
||||
interop_deps = [
|
||||
"//packages/compiler-cli",
|
||||
],
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
deps = [
|
||||
"//adev/shared-docs/pipeline/api-gen/manifest:generate_api_manifest_lib_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@
|
||||
|
||||
// @ts-ignore This compiles fine, but Webstorm doesn't like the ESM import in a CJS context.
|
||||
import {DocEntry, EntryType, FunctionEntry, JsDocTagEntry} from '@angular/compiler-cli';
|
||||
import {generateManifest, Manifest} from '../generate_manifest';
|
||||
import {generateManifest, Manifest} from '../generate_manifest.mjs';
|
||||
|
||||
describe('api manifest generation', () => {
|
||||
it('should generate a manifest from multiple collections', () => {
|
||||
@@ -1,12 +1,12 @@
|
||||
load("@npm//@angular/build-tooling/bazel:defaults.bzl", "ts_library")
|
||||
load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
|
||||
load("@npm//@angular/build-tooling/bazel/esbuild:index.bzl", "esbuild_esm_bundle")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
|
||||
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
|
||||
|
||||
esbuild_esm_bundle(
|
||||
name = "bin",
|
||||
entry_point = ":index.ts",
|
||||
entry_point = ":index.mts",
|
||||
output = "bin.mjs",
|
||||
platform = "node",
|
||||
target = "es2022",
|
||||
@@ -15,37 +15,37 @@ esbuild_esm_bundle(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "render_api_to_html_lib",
|
||||
srcs = glob(
|
||||
[
|
||||
"**/*.ts",
|
||||
"**/*.mts",
|
||||
"**/*.tsx",
|
||||
"shiki.d.ts",
|
||||
],
|
||||
exclude = [
|
||||
"entities.ts",
|
||||
"entities.mts",
|
||||
],
|
||||
),
|
||||
devmode_module = "commonjs",
|
||||
tsconfig = "//adev:tsconfig.json",
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
deps = [
|
||||
":entities",
|
||||
"@npm//@bazel/runfiles",
|
||||
"@npm//@types/node",
|
||||
"@npm//html-entities",
|
||||
"@npm//marked",
|
||||
"@npm//preact",
|
||||
"@npm//preact-render-to-string",
|
||||
"@npm//shiki",
|
||||
":entities_rjs",
|
||||
"//:node_modules/@bazel/runfiles",
|
||||
"//:node_modules/@types/node",
|
||||
"//:node_modules/html-entities",
|
||||
"//:node_modules/marked",
|
||||
"//:node_modules/preact",
|
||||
"//:node_modules/preact-render-to-string",
|
||||
"//:node_modules/shiki",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "entities",
|
||||
srcs = [
|
||||
"entities.ts",
|
||||
"entities.mts",
|
||||
],
|
||||
tsconfig = "//adev:tsconfig.json",
|
||||
tsconfig = "//adev/shared-docs:tsconfig_build",
|
||||
visibility = [
|
||||
"//adev/shared-docs/pipeline/api-gen/rendering:__pkg__",
|
||||
"//docs/pipeline/guides:__pkg__",
|
||||
|
||||
+4
-4
@@ -22,9 +22,9 @@ import {
|
||||
MethodEntry,
|
||||
PropertyEntry,
|
||||
TypeAliasEntry,
|
||||
} from '../entities';
|
||||
} from '../entities.mjs';
|
||||
|
||||
import {CliCommand} from '../cli-entities';
|
||||
import {CliCommand} from '../cli-entities.mjs';
|
||||
|
||||
import {
|
||||
ClassEntryRenderable,
|
||||
@@ -38,8 +38,8 @@ import {
|
||||
MemberEntryRenderable,
|
||||
MethodEntryRenderable,
|
||||
TypeAliasEntryRenderable,
|
||||
} from './renderables';
|
||||
import {HasJsDocTags} from './traits';
|
||||
} from './renderables.mjs';
|
||||
import {HasJsDocTags} from './traits.mjs';
|
||||
|
||||
/** Gets whether the given entry represents a class */
|
||||
export function isClassEntry(entry: DocEntryRenderable): entry is ClassEntryRenderable;
|
||||
+3
-3
@@ -20,11 +20,11 @@ import {
|
||||
ParameterEntry,
|
||||
PipeEntry,
|
||||
TypeAliasEntry,
|
||||
} from '../entities';
|
||||
} from '../entities.mjs';
|
||||
|
||||
import {CliCommand, CliOption} from '../cli-entities';
|
||||
import {CliCommand, CliOption} from '../cli-entities.mjs';
|
||||
|
||||
import {HasRenderableToc} from './traits';
|
||||
import {HasRenderableToc} from './traits.mjs';
|
||||
|
||||
/** JsDoc tag info augmented with transformed content for rendering. */
|
||||
export interface JsDocTagRenderable extends JsDocTagEntry {
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {JsDocTagEntry, MemberEntry, ParameterEntry} from '../entities';
|
||||
import {JsDocTagEntry, MemberEntry, ParameterEntry} from '../entities.mjs';
|
||||
|
||||
import {
|
||||
CodeLineRenderable,
|
||||
@@ -14,7 +14,7 @@ import {
|
||||
LinkEntryRenderable,
|
||||
MemberEntryRenderable,
|
||||
ParameterEntryRenderable,
|
||||
} from './renderables';
|
||||
} from './renderables.mjs';
|
||||
|
||||
/** A doc entry that has jsdoc tags. */
|
||||
export interface HasJsDocTags {
|
||||
+8
-8
@@ -8,14 +8,14 @@
|
||||
|
||||
import {existsSync, mkdirSync, readFileSync, writeFileSync} from 'fs';
|
||||
import path from 'path';
|
||||
import {CliCommand} from './cli-entities';
|
||||
import {DocEntry} from './entities';
|
||||
import {isCliEntry, isHiddenEntry} from './entities/categorization';
|
||||
import {configureMarkedGlobally} from './marked/configuration';
|
||||
import {getRenderable} from './processing';
|
||||
import {renderEntry} from './rendering';
|
||||
import {initHighlighter} from './shiki/shiki';
|
||||
import {setCurrentSymbol, setSymbols} from './symbol-context';
|
||||
import {CliCommand} from './cli-entities.mjs';
|
||||
import {DocEntry} from './entities.mjs';
|
||||
import {isCliEntry, isHiddenEntry} from './entities/categorization.mjs';
|
||||
import {configureMarkedGlobally} from './marked/configuration.mjs';
|
||||
import {getRenderable} from './processing.mjs';
|
||||
import {renderEntry} from './rendering.mjs';
|
||||
import {initHighlighter} from './shiki/shiki.mjs';
|
||||
import {setCurrentSymbol, setSymbols} from './symbol-context.mjs';
|
||||
|
||||
/** The JSON data file format for extracted API reference info. */
|
||||
interface EntryCollection {
|
||||
+1
-1
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {marked} from 'marked';
|
||||
import {renderer} from './renderer';
|
||||
import {renderer} from './renderer.mjs';
|
||||
|
||||
/** Globally configures marked for rendering JsDoc content to HTML. */
|
||||
export function configureMarkedGlobally() {
|
||||
+2
-2
@@ -7,8 +7,8 @@
|
||||
*/
|
||||
|
||||
import {Renderer, Tokens} from 'marked';
|
||||
import {codeToHtml} from '../shiki/shiki';
|
||||
import {SECTION_HEADING, SECTION_SUB_HEADING} from '../styling/css-classes';
|
||||
import {codeToHtml} from '../shiki/shiki.mjs';
|
||||
import {SECTION_HEADING, SECTION_SUB_HEADING} from '../styling/css-classes.mjs';
|
||||
|
||||
/**
|
||||
* Custom renderer for marked that will be used to transform markdown files to HTML
|
||||
+16
-16
@@ -6,9 +6,9 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {DocEntry} from './entities';
|
||||
import {DocEntry} from './entities.mjs';
|
||||
|
||||
import {CliCommand} from './cli-entities';
|
||||
import {CliCommand} from './cli-entities.mjs';
|
||||
import {
|
||||
isClassEntry,
|
||||
isCliEntry,
|
||||
@@ -19,26 +19,26 @@ import {
|
||||
isInitializerApiFunctionEntry,
|
||||
isInterfaceEntry,
|
||||
isTypeAliasEntry,
|
||||
} from './entities/categorization';
|
||||
import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables';
|
||||
import {getClassRenderable} from './transforms/class-transforms';
|
||||
import {getCliRenderable} from './transforms/cli-transforms';
|
||||
import {getConstantRenderable} from './transforms/constant-transforms';
|
||||
import {getDecoratorRenderable} from './transforms/decorator-transforms';
|
||||
import {getEnumRenderable} from './transforms/enum-transforms';
|
||||
import {getFunctionRenderable} from './transforms/function-transforms';
|
||||
import {getInitializerApiFunctionRenderable} from './transforms/initializer-api-functions-transform';
|
||||
import {getInterfaceRenderable} from './transforms/interface-transforms';
|
||||
} from './entities/categorization.mjs';
|
||||
import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables.mjs';
|
||||
import {getClassRenderable} from './transforms/class-transforms.mjs';
|
||||
import {getCliRenderable} from './transforms/cli-transforms.mjs';
|
||||
import {getConstantRenderable} from './transforms/constant-transforms.mjs';
|
||||
import {getDecoratorRenderable} from './transforms/decorator-transforms.mjs';
|
||||
import {getEnumRenderable} from './transforms/enum-transforms.mjs';
|
||||
import {getFunctionRenderable} from './transforms/function-transforms.mjs';
|
||||
import {getInitializerApiFunctionRenderable} from './transforms/initializer-api-functions-transform.mjs';
|
||||
import {getInterfaceRenderable} from './transforms/interface-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './transforms/jsdoc-transforms';
|
||||
import {addModuleName} from './transforms/module-name';
|
||||
import {addRepo} from './transforms/repo';
|
||||
import {getTypeAliasRenderable} from './transforms/type-alias-transforms';
|
||||
} from './transforms/jsdoc-transforms.mjs';
|
||||
import {addModuleName} from './transforms/module-name.mjs';
|
||||
import {addRepo} from './transforms/repo.mjs';
|
||||
import {getTypeAliasRenderable} from './transforms/type-alias-transforms.mjs';
|
||||
|
||||
export function getRenderable(
|
||||
entry: DocEntry | CliCommand,
|
||||
+6
-6
@@ -6,12 +6,12 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import * as blockC from './region-matchers/block-c';
|
||||
import * as html from './region-matchers/html';
|
||||
import * as inlineC from './region-matchers/inline-c';
|
||||
import * as inlineCOnly from './region-matchers/inline-c-only';
|
||||
import * as inlineHash from './region-matchers/inline-hash';
|
||||
import {FileType, removeEslintComments} from './remove-eslint-comments';
|
||||
import * as blockC from './region-matchers/block-c.mjs';
|
||||
import * as html from './region-matchers/html.mjs';
|
||||
import * as inlineC from './region-matchers/inline-c.mjs';
|
||||
import * as inlineCOnly from './region-matchers/inline-c-only.mjs';
|
||||
import * as inlineHash from './region-matchers/inline-hash.mjs';
|
||||
import {FileType, removeEslintComments} from './remove-eslint-comments.mjs';
|
||||
|
||||
const WHOLE_FILE_REGION_NAME = '';
|
||||
const DEFAULT_PLASTER = '. . .';
|
||||
+3
-3
@@ -18,8 +18,8 @@ import {
|
||||
isInitializerApiFunctionEntry,
|
||||
isInterfaceEntry,
|
||||
isTypeAliasEntry,
|
||||
} from './entities/categorization';
|
||||
import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables';
|
||||
} from './entities/categorization.mjs';
|
||||
import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables.mjs';
|
||||
import {ClassReference} from './templates/class-reference';
|
||||
import {CliCommandReference} from './templates/cli-reference';
|
||||
import {ConstantReference} from './templates/constant-reference';
|
||||
@@ -28,7 +28,7 @@ import {EnumReference} from './templates/enum-reference';
|
||||
import {FunctionReference} from './templates/function-reference';
|
||||
import {InitializerApiFunction} from './templates/initializer-api-function';
|
||||
import {TypeAliasReference} from './templates/type-alias-reference';
|
||||
import {setCurrentSymbol} from './symbol-context';
|
||||
import {setCurrentSymbol} from './symbol-context.mjs';
|
||||
|
||||
/** Given a doc entry, get the transformed version of the entry for rendering. */
|
||||
export function renderEntry(renderable: DocEntryRenderable | CliCommandRenderable): string {
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {MemberEntryRenderable} from '../entities/renderables';
|
||||
import {MemberEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {ClassMember} from './class-member';
|
||||
|
||||
export function ClassMemberList(props: {members: MemberEntryRenderable[]}) {
|
||||
|
||||
@@ -12,15 +12,15 @@ import {
|
||||
isGetterEntry,
|
||||
isPropertyEntry,
|
||||
isSetterEntry,
|
||||
} from '../entities/categorization';
|
||||
import {MemberEntryRenderable, MethodEntryRenderable} from '../entities/renderables';
|
||||
} from '../entities/categorization.mjs';
|
||||
import {MemberEntryRenderable, MethodEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {
|
||||
REFERENCE_MEMBER_CARD,
|
||||
REFERENCE_MEMBER_CARD_BODY,
|
||||
REFERENCE_MEMBER_CARD_HEADER,
|
||||
REFERENCE_MEMBER_CARD_ITEM,
|
||||
} from '../styling/css-classes';
|
||||
import {getFunctionMetadataRenderable} from '../transforms/function-transforms';
|
||||
} from '../styling/css-classes.mjs';
|
||||
import {getFunctionMetadataRenderable} from '../transforms/function-transforms.mjs';
|
||||
import {ClassMethodInfo} from './class-method-info';
|
||||
import {CodeSymbol} from './code-symbols';
|
||||
import {DeprecatedLabel} from './deprecated-label';
|
||||
|
||||
@@ -7,13 +7,8 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {
|
||||
FunctionEntryRenderable,
|
||||
FunctionSignatureMetadataRenderable,
|
||||
MethodEntryRenderable,
|
||||
ParameterEntryRenderable,
|
||||
} from '../entities/renderables';
|
||||
import {PARAM_KEYWORD_CLASS_NAME, REFERENCE_MEMBER_CARD_ITEM} from '../styling/css-classes';
|
||||
import {FunctionSignatureMetadataRenderable, ParameterEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {PARAM_KEYWORD_CLASS_NAME, REFERENCE_MEMBER_CARD_ITEM} from '../styling/css-classes.mjs';
|
||||
import {DeprecatedLabel} from './deprecated-label';
|
||||
import {Parameter} from './parameter';
|
||||
import {RawHtml} from './raw-html';
|
||||
|
||||
@@ -7,25 +7,25 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {PipeEntry} from '../entities';
|
||||
import {PipeEntry} from '../entities.mjs';
|
||||
import {
|
||||
ClassEntryRenderable,
|
||||
DecoratorEntryRenderable,
|
||||
PipeEntryRenderable,
|
||||
} from '../entities/renderables';
|
||||
import {codeToHtml} from '../shiki/shiki';
|
||||
} from '../entities/renderables.mjs';
|
||||
import {ClassMemberList} from './class-member-list';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {
|
||||
API_REFERENCE_CONTAINER,
|
||||
REFERENCE_MEMBERS,
|
||||
SECTION_CONTAINER,
|
||||
} from '../styling/css-classes';
|
||||
import {ClassMemberList} from './class-member-list';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {RawHtml} from './raw-html';
|
||||
import {SectionApi} from './section-api';
|
||||
} from '../styling/css-classes.mjs';
|
||||
import {SectionDescription} from './section-description';
|
||||
import {SectionHeading} from './section-heading';
|
||||
import {SectionUsageNotes} from './section-usage-notes';
|
||||
import {SectionApi} from './section-api';
|
||||
import {SectionHeading} from './section-heading';
|
||||
import {codeToHtml} from '../shiki/shiki.mjs';
|
||||
import {RawHtml} from './raw-html';
|
||||
|
||||
/** Component to render a class API reference document. */
|
||||
export function ClassReference(
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {CliCardRenderable} from '../entities/renderables';
|
||||
import {CliCardRenderable} from '../entities/renderables.mjs';
|
||||
import {DeprecatedLabel} from './deprecated-label';
|
||||
import {REFERENCE_MEMBER_CARD, REFERENCE_MEMBER_CARD_BODY} from '../styling/css-classes';
|
||||
import {REFERENCE_MEMBER_CARD, REFERENCE_MEMBER_CARD_BODY} from '../styling/css-classes.mjs';
|
||||
|
||||
export function CliCard(props: {card: CliCardRenderable}) {
|
||||
return (
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {CliCommandRenderable} from '../entities/renderables';
|
||||
import {REFERENCE_MEMBERS} from '../styling/css-classes';
|
||||
import {CliCommandRenderable} from '../entities/renderables.mjs';
|
||||
import {REFERENCE_MEMBERS} from '../styling/css-classes.mjs';
|
||||
import {CliCard} from './cli-card';
|
||||
import {HeaderCli} from './header-cli';
|
||||
import {RawHtml} from './raw-html';
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {CodeLineRenderable} from '../entities/renderables';
|
||||
import {CodeLineRenderable} from '../entities/renderables.mjs';
|
||||
import {CodeLine} from './code-line';
|
||||
|
||||
export function CodeLineGroup(props: {lines: CodeLineRenderable[]}) {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {CodeLineRenderable} from '../entities/renderables';
|
||||
import {CodeLineRenderable} from '../entities/renderables.mjs';
|
||||
|
||||
export function CodeLine(props: {line: CodeLineRenderable}) {
|
||||
const line = props.line;
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {getModuleName} from '../symbol-context';
|
||||
import {getLinkToModule} from '../transforms/url-transforms';
|
||||
import {getModuleName} from '../symbol-context.mjs';
|
||||
import {getLinkToModule} from '../transforms/url-transforms.mjs';
|
||||
|
||||
const symbolRegex = /([a-zA-Z_$][a-zA-Z_$0-9\.]*)/;
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
import {h} from 'preact';
|
||||
import {renderToString} from 'preact-render-to-string';
|
||||
import {CodeLineGroup} from './code-line-group';
|
||||
import {HasRenderableToc} from '../entities/traits';
|
||||
import {HasRenderableToc} from '../entities/traits.mjs';
|
||||
|
||||
export function CodeTableOfContents(props: {entry: HasRenderableToc}) {
|
||||
const html = `${props.entry.beforeCodeGroups}
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {ConstantEntryRenderable} from '../entities/renderables';
|
||||
import {ConstantEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {SectionDescription} from './section-description';
|
||||
import {SectionUsageNotes} from './section-usage-notes';
|
||||
import {SectionApi} from './section-api';
|
||||
import {API_REFERENCE_CONTAINER} from '../styling/css-classes';
|
||||
import {API_REFERENCE_CONTAINER} from '../styling/css-classes.mjs';
|
||||
|
||||
/** Component to render a constant API reference document. */
|
||||
export function ConstantReference(entry: ConstantEntryRenderable) {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {PARAM_KEYWORD_CLASS_NAME} from '../styling/css-classes';
|
||||
import {PARAM_KEYWORD_CLASS_NAME} from '../styling/css-classes.mjs';
|
||||
|
||||
export function DeprecatedLabel(props: {
|
||||
entry: {isDeprecated: boolean} | {deprecationMessage: string | null};
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {LinkEntryRenderable} from '../entities/renderables';
|
||||
import {LinkEntryRenderable} from '../entities/renderables.mjs';
|
||||
|
||||
/** Component to render a function or method parameter reference doc fragment. */
|
||||
export function DocsPillRow(props: {links: LinkEntryRenderable[]}) {
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {DocEntryRenderable} from '../entities/renderables';
|
||||
import {DocEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {SectionDescription} from './section-description';
|
||||
import {API_REFERENCE_CONTAINER} from '../styling/css-classes';
|
||||
import {API_REFERENCE_CONTAINER} from '../styling/css-classes.mjs';
|
||||
|
||||
/** Component to render a block or element API reference document. */
|
||||
export function DocsReference(entry: DocEntryRenderable) {
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
*/
|
||||
|
||||
import {h, Fragment} from 'preact';
|
||||
import {EnumEntryRenderable, MemberEntryRenderable} from '../entities/renderables';
|
||||
import {EnumEntryRenderable, MemberEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {SectionDescription} from './section-description';
|
||||
import {SectionApi} from './section-api';
|
||||
import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes';
|
||||
import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes.mjs';
|
||||
import {ClassMember} from './class-member';
|
||||
|
||||
/** Component to render a enum API reference document. */
|
||||
|
||||
@@ -10,16 +10,16 @@ import {Fragment, h} from 'preact';
|
||||
import {
|
||||
FunctionEntryRenderable,
|
||||
FunctionSignatureMetadataRenderable,
|
||||
} from '../entities/renderables';
|
||||
} from '../entities/renderables.mjs';
|
||||
import {
|
||||
API_REFERENCE_CONTAINER,
|
||||
REFERENCE_MEMBERS,
|
||||
REFERENCE_MEMBER_CARD,
|
||||
REFERENCE_MEMBER_CARD_BODY,
|
||||
REFERENCE_MEMBER_CARD_HEADER,
|
||||
} from '../styling/css-classes';
|
||||
import {printInitializerFunctionSignatureLine} from '../transforms/code-transforms';
|
||||
import {getFunctionMetadataRenderable} from '../transforms/function-transforms';
|
||||
} from '../styling/css-classes.mjs';
|
||||
import {printInitializerFunctionSignatureLine} from '../transforms/code-transforms.mjs';
|
||||
import {getFunctionMetadataRenderable} from '../transforms/function-transforms.mjs';
|
||||
import {ClassMethodInfo} from './class-method-info';
|
||||
import {CodeSymbol} from './code-symbols';
|
||||
import {HeaderApi} from './header-api';
|
||||
|
||||
@@ -7,14 +7,14 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {EntryType, isDocEntryWithSourceInfo, PipeEntry} from '../entities';
|
||||
import {DocEntryRenderable, PipeEntryRenderable} from '../entities/renderables';
|
||||
import {EntryType, isDocEntryWithSourceInfo, PipeEntry} from '../entities.mjs';
|
||||
import {DocEntryRenderable, PipeEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {
|
||||
HEADER_CLASS_NAME,
|
||||
HEADER_ENTRY_CATEGORY,
|
||||
HEADER_ENTRY_LABEL,
|
||||
HEADER_ENTRY_TITLE,
|
||||
} from '../styling/css-classes';
|
||||
} from '../styling/css-classes.mjs';
|
||||
import {DocsPillRow} from './docs-pill-row';
|
||||
|
||||
/** Component to render a header of the API page. */
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {CliCommandRenderable} from '../entities/renderables';
|
||||
import {HEADER_CLASS_NAME, HEADER_ENTRY_CATEGORY, HEADER_ENTRY_LABEL, HEADER_ENTRY_TITLE} from '../styling/css-classes';
|
||||
import {CliCommandRenderable} from '../entities/renderables.mjs';
|
||||
import {HEADER_CLASS_NAME, HEADER_ENTRY_CATEGORY, HEADER_ENTRY_LABEL, HEADER_ENTRY_TITLE} from '../styling/css-classes.mjs';
|
||||
|
||||
/** Component to render a header of the CLI page. */
|
||||
export function HeaderCli(props: {command: CliCommandRenderable}) {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
import {h} from 'preact';
|
||||
import {RawHtml} from './raw-html';
|
||||
import {codeToHtml} from '../shiki/shiki';
|
||||
import {codeToHtml} from '../shiki/shiki.mjs';
|
||||
|
||||
/** Component to render a header of the CLI page. */
|
||||
export function HighlightTypeScript(props: {code: string}) {
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
*/
|
||||
|
||||
import {h, JSX} from 'preact';
|
||||
import {InitializerApiFunctionRenderable} from '../entities/renderables';
|
||||
import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes';
|
||||
import {getFunctionMetadataRenderable} from '../transforms/function-transforms';
|
||||
import {InitializerApiFunctionRenderable} from '../entities/renderables.mjs';
|
||||
import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes.mjs';
|
||||
import {getFunctionMetadataRenderable} from '../transforms/function-transforms.mjs';
|
||||
import {signatureCard} from './function-reference';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {SectionApi} from './section-api';
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {ParameterEntryRenderable} from '../entities/renderables';
|
||||
import {ParameterEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {RawHtml} from './raw-html';
|
||||
import {PARAM_GROUP_CLASS_NAME} from '../styling/css-classes';
|
||||
import {PARAM_GROUP_CLASS_NAME} from '../styling/css-classes.mjs';
|
||||
import {CodeSymbol} from './code-symbols';
|
||||
|
||||
/** Component to render a function or method parameter reference doc fragment. */
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {DocEntryRenderable} from '../entities/renderables';
|
||||
import {HasRenderableToc} from '../entities/traits';
|
||||
import {DocEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {HasRenderableToc} from '../entities/traits.mjs';
|
||||
import {CodeTableOfContents} from './code-table-of-contents';
|
||||
import {SECTION_CONTAINER} from '../styling/css-classes';
|
||||
import {SECTION_CONTAINER} from '../styling/css-classes.mjs';
|
||||
import {SectionHeading} from './section-heading';
|
||||
|
||||
const API_SECTION_NAME = 'API';
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {DocEntryRenderable} from '../entities/renderables';
|
||||
import {DocEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {RawHtml} from './raw-html';
|
||||
import {CodeSymbol} from './code-symbols';
|
||||
import {SECTION_CONTAINER} from '../styling/css-classes';
|
||||
import {SECTION_CONTAINER} from '../styling/css-classes.mjs';
|
||||
import {SectionHeading} from './section-heading';
|
||||
|
||||
const DESCRIPTION_SECTION_NAME = 'Description';
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {convertSectionNameToId} from '../transforms/reference-section-id';
|
||||
import {SECTION_HEADING} from '../styling/css-classes';
|
||||
import {convertSectionNameToId} from '../transforms/reference-section-id.mjs';
|
||||
import {SECTION_HEADING} from '../styling/css-classes.mjs';
|
||||
|
||||
/** Component to render the API section. */
|
||||
export function SectionHeading(props: {name: string}) {
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
*/
|
||||
|
||||
import {Fragment, h} from 'preact';
|
||||
import {DocEntryRenderable} from '../entities/renderables';
|
||||
import {DocEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {RawHtml} from './raw-html';
|
||||
import {SECTION_CONTAINER} from '../styling/css-classes';
|
||||
import {SECTION_CONTAINER} from '../styling/css-classes.mjs';
|
||||
import {SectionHeading} from './section-heading';
|
||||
|
||||
const USAGE_NOTES_SECTION_NAME = 'Usage Notes';
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
*/
|
||||
|
||||
import {h} from 'preact';
|
||||
import {TypeAliasEntryRenderable} from '../entities/renderables';
|
||||
import {TypeAliasEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {HeaderApi} from './header-api';
|
||||
import {SectionDescription} from './section-description';
|
||||
import {SectionUsageNotes} from './section-usage-notes';
|
||||
import {SectionApi} from './section-api';
|
||||
import {API_REFERENCE_CONTAINER} from '../styling/css-classes';
|
||||
import {API_REFERENCE_CONTAINER} from '../styling/css-classes.mjs';
|
||||
|
||||
/** Component to render a type alias API reference document. */
|
||||
export function TypeAliasReference(entry: TypeAliasEntryRenderable) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//adev/shared-docs/pipeline/api-gen/rendering:render_api_to_html.bzl", "render_api_to_html")
|
||||
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
|
||||
load("//tools:defaults2.bzl", "jasmine_test", "ts_project")
|
||||
|
||||
render_api_to_html(
|
||||
name = "test",
|
||||
@@ -9,28 +9,29 @@ render_api_to_html(
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
ts_project(
|
||||
name = "unit_test_lib",
|
||||
testonly = True,
|
||||
srcs = glob(
|
||||
[
|
||||
"**/*.spec.ts",
|
||||
"**/*.spec.mts",
|
||||
],
|
||||
),
|
||||
tsconfig = "//adev/shared-docs:tsconfig_test",
|
||||
deps = [
|
||||
"//adev/shared-docs/pipeline/api-gen/rendering:render_api_to_html_lib",
|
||||
"@npm//@bazel/runfiles",
|
||||
"@npm//@types/jsdom",
|
||||
"@npm//jsdom",
|
||||
"//:node_modules/@bazel/runfiles",
|
||||
"//:node_modules/@types/jsdom",
|
||||
"//:node_modules/jsdom",
|
||||
"//adev/shared-docs/pipeline/api-gen/rendering:render_api_to_html_lib_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
jasmine_test(
|
||||
name = "unit_tests",
|
||||
data = [
|
||||
"@npm//jsdom",
|
||||
":unit_test_lib_rjs",
|
||||
"//:node_modules/jsdom",
|
||||
] + glob([
|
||||
"**/*.json",
|
||||
]),
|
||||
deps = [":unit_test_lib"],
|
||||
)
|
||||
|
||||
+4
-4
@@ -9,10 +9,10 @@
|
||||
import {runfiles} from '@bazel/runfiles';
|
||||
import {readFile} from 'fs/promises';
|
||||
import {JSDOM} from 'jsdom';
|
||||
import {configureMarkedGlobally} from '../marked/configuration';
|
||||
import {getRenderable} from '../processing';
|
||||
import {renderEntry} from '../rendering';
|
||||
import {initHighlighter} from '../shiki/shiki';
|
||||
import {configureMarkedGlobally} from '../marked/configuration.mjs';
|
||||
import {getRenderable} from '../processing.mjs';
|
||||
import {renderEntry} from '../rendering.mjs';
|
||||
import {initHighlighter} from '../shiki/shiki.mjs';
|
||||
|
||||
describe('CLI docs to html', () => {
|
||||
let fragment: DocumentFragment;
|
||||
+5
-5
@@ -9,11 +9,11 @@
|
||||
import {runfiles} from '@bazel/runfiles';
|
||||
import {readFile} from 'fs/promises';
|
||||
import {JSDOM} from 'jsdom';
|
||||
import {configureMarkedGlobally} from '../marked/configuration';
|
||||
import {getRenderable} from '../processing';
|
||||
import {renderEntry} from '../rendering';
|
||||
import {initHighlighter} from '../shiki/shiki';
|
||||
import {setSymbols} from '../symbol-context';
|
||||
import {configureMarkedGlobally} from '../marked/configuration.mjs';
|
||||
import {getRenderable} from '../processing.mjs';
|
||||
import {renderEntry} from '../rendering.mjs';
|
||||
import {initHighlighter} from '../shiki/shiki.mjs';
|
||||
import {setSymbols} from '../symbol-context.mjs';
|
||||
|
||||
// Note: The tests will probably break if the schema of the api extraction changes.
|
||||
// All entries in the fake-entries are extracted from Angular's api.
|
||||
+5
-5
@@ -8,11 +8,11 @@
|
||||
|
||||
import {runfiles} from '@bazel/runfiles';
|
||||
import {readFile} from 'fs/promises';
|
||||
import {DocEntryRenderable} from '../entities/renderables';
|
||||
import {configureMarkedGlobally} from '../marked/configuration';
|
||||
import {getRenderable} from '../processing';
|
||||
import {initHighlighter} from '../shiki/shiki';
|
||||
import {setSymbols} from '../symbol-context';
|
||||
import {DocEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {configureMarkedGlobally} from '../marked/configuration.mjs';
|
||||
import {getRenderable} from '../processing.mjs';
|
||||
import {initHighlighter} from '../shiki/shiki.mjs';
|
||||
import {setSymbols} from '../symbol-context.mjs';
|
||||
|
||||
// Note: The tests will probably break if the schema of the api extraction changes.
|
||||
// All entries in the fake-entries are extracted from Angular's api.
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {makeGenericsText} from '../../transforms/code-transforms';
|
||||
import {makeGenericsText} from '../../transforms/code-transforms.mjs';
|
||||
|
||||
describe('makeGenericsText', () => {
|
||||
it('should return an empty string if no generics are provided', () => {
|
||||
+2
-2
@@ -6,8 +6,8 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {setCurrentSymbol, setSymbols} from '../../symbol-context';
|
||||
import {addHtmlAdditionalLinks} from '../../transforms/jsdoc-transforms';
|
||||
import {setCurrentSymbol, setSymbols} from '../../symbol-context.mjs';
|
||||
import {addHtmlAdditionalLinks} from '../../transforms/jsdoc-transforms.mjs';
|
||||
|
||||
// @ts-ignore This compiles fine, but Webstorm doesn't like the ESM import in a CJS context.
|
||||
describe('jsdoc transforms', () => {
|
||||
+7
-7
@@ -6,19 +6,19 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {ClassEntry} from '../entities';
|
||||
import {ClassEntryRenderable} from '../entities/renderables';
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
import {ClassEntry} from '../entities.mjs';
|
||||
import {ClassEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addRenderableMembers} from './member-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addRenderableMembers} from './member-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
/** Given an unprocessed class entry, get the fully renderable class entry. */
|
||||
export function getClassRenderable(
|
||||
+2
-2
@@ -8,12 +8,12 @@
|
||||
|
||||
import {marked} from 'marked';
|
||||
|
||||
import {CliCommand, CliOption} from '../cli-entities';
|
||||
import {CliCommand, CliOption} from '../cli-entities.mjs';
|
||||
import {
|
||||
CliCardRenderable,
|
||||
CliCommandRenderable,
|
||||
CliOptionRenderable,
|
||||
} from '../entities/renderables';
|
||||
} from '../entities/renderables.mjs';
|
||||
|
||||
/** Given an unprocessed CLI entry, get the fully renderable CLI entry. */
|
||||
export function getCliRenderable(command: CliCommand): CliCommandRenderable {
|
||||
+8
-8
@@ -14,7 +14,7 @@ import {
|
||||
MemberTags,
|
||||
ParameterEntry,
|
||||
PropertyEntry,
|
||||
} from '../entities';
|
||||
} from '../entities.mjs';
|
||||
|
||||
import {
|
||||
isClassEntry,
|
||||
@@ -29,14 +29,14 @@ import {
|
||||
isInterfaceEntry,
|
||||
isSetterEntry,
|
||||
isTypeAliasEntry,
|
||||
} from '../entities/categorization';
|
||||
import {CodeLineRenderable} from '../entities/renderables';
|
||||
import {HasModuleName, HasRenderableToc} from '../entities/traits';
|
||||
import {getModuleName} from '../symbol-context';
|
||||
import {codeToHtml, replaceKeywordFromShikiHtml} from '../shiki/shiki';
|
||||
} from '../entities/categorization.mjs';
|
||||
import {CodeLineRenderable} from '../entities/renderables.mjs';
|
||||
import {HasModuleName, HasRenderableToc} from '../entities/traits.mjs';
|
||||
import {getModuleName} from '../symbol-context.mjs';
|
||||
import {codeToHtml, replaceKeywordFromShikiHtml} from '../shiki/shiki.mjs';
|
||||
|
||||
import {filterLifecycleMethods, mergeGettersAndSetters} from './member-transforms';
|
||||
import {getLinkToModule} from './url-transforms';
|
||||
import {filterLifecycleMethods, mergeGettersAndSetters} from './member-transforms.mjs';
|
||||
import {getLinkToModule} from './url-transforms.mjs';
|
||||
|
||||
// Allows to generate links for code lines.
|
||||
interface CodeTableOfContentsData {
|
||||
+6
-6
@@ -6,18 +6,18 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {ConstantEntry} from '../entities';
|
||||
import {ConstantEntryRenderable} from '../entities/renderables';
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
import {ConstantEntry} from '../entities.mjs';
|
||||
import {ConstantEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
/** Given an unprocessed constant entry, get the fully renderable constant entry. */
|
||||
export function getConstantRenderable(
|
||||
+7
-7
@@ -6,19 +6,19 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {DecoratorEntry} from '../entities';
|
||||
import {DecoratorEntryRenderable} from '../entities/renderables';
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
import {DecoratorEntry} from '../entities.mjs';
|
||||
import {DecoratorEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addRenderableMembers} from './member-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addRenderableMembers} from './member-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
/** Given an unprocessed class entry, get the fully renderable class entry. */
|
||||
export function getDecoratorRenderable(
|
||||
+7
-7
@@ -6,19 +6,19 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {EnumEntry} from '../entities';
|
||||
import {EnumEntryRenderable} from '../entities/renderables';
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
import {EnumEntry} from '../entities.mjs';
|
||||
import {EnumEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addRenderableMembers} from './member-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addRenderableMembers} from './member-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
/** Given an unprocessed enum entry, get the fully renderable enum entry. */
|
||||
export function getEnumRenderable(
|
||||
+7
-7
@@ -6,22 +6,22 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {FunctionEntry, FunctionSignatureMetadata} from '../entities';
|
||||
import {FunctionEntry, FunctionSignatureMetadata} from '../entities.mjs';
|
||||
import {
|
||||
FunctionEntryRenderable,
|
||||
FunctionSignatureMetadataRenderable,
|
||||
} from '../entities/renderables';
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
} from '../entities/renderables.mjs';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRenderableFunctionParams} from './params-transforms';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRenderableFunctionParams} from './params-transforms.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
/** Given an unprocessed function entry, get the fully renderable function entry. */
|
||||
export function getFunctionRenderable(
|
||||
+6
-6
@@ -6,20 +6,20 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {InitializerApiFunctionEntry} from '../entities';
|
||||
import {InitializerApiFunctionEntry} from '../entities.mjs';
|
||||
|
||||
import {InitializerApiFunctionRenderable} from '../entities/renderables';
|
||||
import {InitializerApiFunctionRenderable} from '../entities/renderables.mjs';
|
||||
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
export function getInitializerApiFunctionRenderable(
|
||||
entry: InitializerApiFunctionEntry,
|
||||
+7
-7
@@ -6,19 +6,19 @@
|
||||
* found in the LICENSE file at https://angular.dev/license
|
||||
*/
|
||||
|
||||
import {InterfaceEntry} from '../entities';
|
||||
import {InterfaceEntryRenderable} from '../entities/renderables';
|
||||
import {addRenderableCodeToc} from './code-transforms';
|
||||
import {InterfaceEntry} from '../entities.mjs';
|
||||
import {InterfaceEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {addRenderableCodeToc} from './code-transforms.mjs';
|
||||
import {
|
||||
addHtmlAdditionalLinks,
|
||||
addHtmlDescription,
|
||||
addHtmlJsDocTagComments,
|
||||
addHtmlUsageNotes,
|
||||
setEntryFlags,
|
||||
} from './jsdoc-transforms';
|
||||
import {addRenderableMembers} from './member-transforms';
|
||||
import {addModuleName} from './module-name';
|
||||
import {addRepo} from './repo';
|
||||
} from './jsdoc-transforms.mjs';
|
||||
import {addRenderableMembers} from './member-transforms.mjs';
|
||||
import {addModuleName} from './module-name.mjs';
|
||||
import {addRepo} from './repo.mjs';
|
||||
|
||||
/** Given an unprocessed interface entry, get the fully renderable interface entry. */
|
||||
export function getInterfaceRenderable(
|
||||
+7
-7
@@ -7,15 +7,15 @@
|
||||
*/
|
||||
|
||||
import {marked} from 'marked';
|
||||
import {JsDocTagEntry} from '../entities';
|
||||
import {JsDocTagEntry} from '../entities.mjs';
|
||||
|
||||
import {
|
||||
getDeprecatedEntry,
|
||||
isDeprecatedEntry,
|
||||
isDeveloperPreview,
|
||||
isExperimental,
|
||||
} from '../entities/categorization';
|
||||
import {LinkEntryRenderable} from '../entities/renderables';
|
||||
} from '../entities/categorization.mjs';
|
||||
import {LinkEntryRenderable} from '../entities/renderables.mjs';
|
||||
import {
|
||||
HasAdditionalLinks,
|
||||
HasDeprecatedFlag,
|
||||
@@ -27,11 +27,11 @@ import {
|
||||
HasModuleName,
|
||||
HasRenderableJsDocTags,
|
||||
hasExperimentalFlag,
|
||||
} from '../entities/traits';
|
||||
} from '../entities/traits.mjs';
|
||||
|
||||
import {getLinkToModule} from './url-transforms';
|
||||
import {addApiLinksToHtml} from './code-transforms';
|
||||
import {getCurrentSymbol, getModuleName, unknownSymbolMessage} from '../symbol-context';
|
||||
import {getLinkToModule} from './url-transforms.mjs';
|
||||
import {addApiLinksToHtml} from './code-transforms.mjs';
|
||||
import {getCurrentSymbol, getModuleName, unknownSymbolMessage} from '../symbol-context.mjs';
|
||||
|
||||
const JS_DOC_USAGE_NOTE_TAGS: Set<string> = new Set(['remarks', 'usageNotes', 'example']);
|
||||
export const JS_DOC_SEE_TAG = 'see';
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user