This commit is contained in:
Kevin Heis 2023-11-02 15:46:32 -07:00 коммит произвёл GitHub
Родитель bea029991f
Коммит d4f345e4af
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
155 изменённых файлов: 186 добавлений и 184 удалений

Просмотреть файл

@ -45,7 +45,6 @@ RUN npm prune --production
FROM all_deps as builder FROM all_deps as builder
COPY components ./components COPY components ./components
COPY lib ./lib
COPY src ./src COPY src ./src
# The star is because it's an optional directory # The star is because it's an optional directory
COPY .remotejson-cache* ./.remotejson-cache COPY .remotejson-cache* ./.remotejson-cache
@ -88,7 +87,6 @@ ENV BUILD_SHA=$BUILD_SHA
COPY --chown=node:node package.json ./ COPY --chown=node:node package.json ./
COPY --chown=node:node assets ./assets COPY --chown=node:node assets ./assets
COPY --chown=node:node content ./content COPY --chown=node:node content ./content
COPY --chown=node:node lib ./lib
COPY --chown=node:node src ./src COPY --chown=node:node src ./src
COPY --chown=node:node .remotejson-cache* ./.remotejson-cache COPY --chown=node:node .remotejson-cache* ./.remotejson-cache
COPY --chown=node:node middleware ./middleware COPY --chown=node:node middleware ./middleware
@ -107,7 +105,7 @@ CMD ["node", "server.js"]
FROM preview as production FROM preview as production
# Override what was set for previews # Override what was set for previews
# Make this match the default of `Object.keys(languages)` in lib/languages.js # Make this match the default of `Object.keys(languages)` in src/languages/lib/languages.js
ENV ENABLED_LANGUAGES "en,zh,es,pt,ru,ja,fr,de,ko" ENV ENABLED_LANGUAGES "en,zh,es,pt,ru,ja,fr,de,ko"
# Copy in all translations # Copy in all translations

Просмотреть файл

@ -1,4 +1,4 @@
import { productMap } from '../lib/all-products.js' import { productMap } from '#src/products/lib/all-products.js'
import { deprecated } from '#src/versions/lib/enterprise-server-releases.js' import { deprecated } from '#src/versions/lib/enterprise-server-releases.js'
const pathRegExps = [ const pathRegExps = [

Просмотреть файл

@ -1,19 +1,19 @@
import languages from '#src/languages/lib/languages.js' import languages from '#src/languages/lib/languages.js'
import enterpriseServerReleases from '#src/versions/lib/enterprise-server-releases.js' import enterpriseServerReleases from '#src/versions/lib/enterprise-server-releases.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'
import { productMap } from '../lib/all-products.js' import { productMap } from '#src/products/lib/all-products.js'
import { import {
getVersionStringFromPath, getVersionStringFromPath,
getProductStringFromPath, getProductStringFromPath,
getCategoryStringFromPath, getCategoryStringFromPath,
getPathWithoutLanguage, getPathWithoutLanguage,
getPathWithoutVersion, getPathWithoutVersion,
} from '../lib/path-utils.js' } from '#src/frame/lib/path-utils.js'
import productNames from '../lib/product-names.js' import productNames from '#src/products/lib/product-names.js'
import warmServer from '../lib/warm-server.js' import warmServer from '#src/frame/lib/warm-server.js'
import searchVersions from '#src/search/lib/versions.js' import searchVersions from '#src/search/lib/versions.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
import { getDataByLanguage, getUIDataMerged } from '../lib/get-data.js' import { getDataByLanguage, getUIDataMerged } from '#src/data-directory/lib/get-data.js'
// This doesn't change just because the request changes, so compute it once. // This doesn't change just because the request changes, so compute it once.
const enterpriseServerVersions = Object.keys(allVersions).filter((version) => const enterpriseServerVersions = Object.keys(allVersions).filter((version) =>

Просмотреть файл

@ -1,8 +1,8 @@
import path from 'path' import path from 'path'
import { liquid } from '#src/content-render/index.js' import { liquid } from '#src/content-render/index.js'
import findPageInSiteTree from '../../lib/find-page-in-site-tree.js' import findPageInSiteTree from '#src/frame/lib/find-page-in-site-tree.js'
import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js' import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js'
import { executeWithFallback } from '../../lib/render-with-fallback.js' import { executeWithFallback } from '#src/languages/lib/render-with-fallback.js'
// This module adds currentProductTree to the context object for use in layouts. // This module adds currentProductTree to the context object for use in layouts.
export default async function currentProductTree(req, res, next) { export default async function currentProductTree(req, res, next) {

Просмотреть файл

@ -1,4 +1,4 @@
import findPageInSiteTree from '../../lib/find-page-in-site-tree.js' import findPageInSiteTree from '#src/frame/lib/find-page-in-site-tree.js'
// This module adds either flatTocItems or nestedTocItems to the context object for // This module adds either flatTocItems or nestedTocItems to the context object for
// product, categorie, and map topic TOCs that don't have other layouts specified. // product, categorie, and map topic TOCs that don't have other layouts specified.

Просмотреть файл

@ -1,7 +1,7 @@
import { getDataByLanguage } from '../../lib/get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
import { liquid } from '#src/content-render/index.js' import { liquid } from '#src/content-render/index.js'
import { executeWithFallback } from '../../lib/render-with-fallback.js' import { executeWithFallback } from '#src/languages/lib/render-with-fallback.js'
import { correctTranslatedContentStrings } from '../../lib/correct-translation-content.js' import { correctTranslatedContentStrings } from '#src/languages/lib/correct-translation-content.js'
export default async function glossaries(req, res, next) { export default async function glossaries(req, res, next) {
if (!req.pagePath.endsWith('get-started/quickstart/github-glossary')) return next() if (!req.pagePath.endsWith('get-started/quickstart/github-glossary')) return next()

Просмотреть файл

@ -1,4 +1,4 @@
import { getDataByLanguage } from '../../lib/get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
function getProductExampleData(product, key, language) { function getProductExampleData(product, key, language) {
// Because getDataByLanguage() depends on reading data files from // Because getDataByLanguage() depends on reading data files from

Просмотреть файл

@ -1,5 +1,5 @@
import { getProductGroups } from '../../lib/get-product-groups.js' import { getProductGroups } from '#src/products/lib/get-product-groups.js'
import warmServer from '../../lib/warm-server.js' import warmServer from '#src/frame/lib/warm-server.js'
import { languageKeys } from '#src/languages/lib/languages.js' import { languageKeys } from '#src/languages/lib/languages.js'
import { allVersionKeys } from '#src/versions/lib/all-versions.js' import { allVersionKeys } from '#src/versions/lib/all-versions.js'

Просмотреть файл

@ -1,4 +1,4 @@
import { getChangelogItems } from '../../lib/changelog.js' import { getChangelogItems } from '#src/changelogs/lib/changelog.js'
import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js' import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js'
export default async function whatsNewChangelog(req, res, next) { export default async function whatsNewChangelog(req, res, next) {

Просмотреть файл

@ -1,3 +1,3 @@
import cookieParser from 'cookie-parser' import cookieParser from 'cookie-parser'
import cookieSettings from '../lib/cookie-settings.js' import cookieSettings from '#src/frame/lib/cookie-settings.js'
export default cookieParser(process.env.COOKIE_SECRET, cookieSettings) export default cookieParser(process.env.COOKIE_SECRET, cookieSettings)

Просмотреть файл

@ -1,8 +1,8 @@
import path from 'path' import path from 'path'
import { existsSync } from 'fs' import { existsSync } from 'fs'
import { ROOT } from '../lib/constants.js' import { ROOT } from '#src/frame/lib/constants.js'
import Page from '../lib/page.js' import Page from '#src/frame/lib/page.js'
import { languagePrefixPathRegex } from '#src/languages/lib/languages.js' import { languagePrefixPathRegex } from '#src/languages/lib/languages.js'
const englishPrefixRegex = /^\/en(\/|$)/ const englishPrefixRegex = /^\/en(\/|$)/

Просмотреть файл

@ -17,9 +17,9 @@
import path from 'path' import path from 'path'
import languages, { languageKeys } from '#src/languages/lib/languages.js' import languages, { languageKeys } from '#src/languages/lib/languages.js'
import createTree from '../lib/create-tree.js' import createTree from '#src/frame/lib/create-tree.js'
import warmServer from '../lib/warm-server.js' import warmServer from '#src/frame/lib/warm-server.js'
import { loadSiteTree, loadPages, loadPageMap } from '../lib/page-data.js' import { loadSiteTree, loadPages, loadPageMap } from '#src/frame/lib/page-data.js'
import loadRedirects from '#src/redirects/lib/precompile.js' import loadRedirects from '#src/redirects/lib/precompile.js'
const languagePrefixRegex = new RegExp(`^/(${languageKeys.join('|')})(/|$)`) const languagePrefixRegex = new RegExp(`^/(${languageKeys.join('|')})(/|$)`)

Просмотреть файл

@ -1,8 +1,8 @@
import { get } from 'lodash-es' import { get } from 'lodash-es'
import FailBot from '#src/observability/lib/failbot.js' import FailBot from '#src/observability/lib/failbot.js'
import patterns from '../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import getMiniTocItems from '../lib/get-mini-toc-items.js' import getMiniTocItems from '#src/frame/lib/get-mini-toc-items.js'
import { pathLanguagePrefixed } from '#src/languages/lib/languages.js' import { pathLanguagePrefixed } from '#src/languages/lib/languages.js'
import statsd from '#src/observability/lib/statsd.js' import statsd from '#src/observability/lib/statsd.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'

Просмотреть файл

@ -1,7 +1,7 @@
import timeout from 'express-timeout-handler' import timeout from 'express-timeout-handler'
import statsd from '#src/observability/lib/statsd.js' import statsd from '#src/observability/lib/statsd.js'
import { MAX_REQUEST_TIMEOUT } from '../lib/constants.js' import { MAX_REQUEST_TIMEOUT } from '#src/frame/lib/constants.js'
export default timeout.handler({ export default timeout.handler({
// Default timeout for all endpoints // Default timeout for all endpoints

Просмотреть файл

@ -3,7 +3,7 @@ import path from 'path'
import frontmatter from 'gray-matter' import frontmatter from 'gray-matter'
import { languageKeys } from '#src/languages/lib/languages.js' import { languageKeys } from '#src/languages/lib/languages.js'
import { ROOT } from './lib/constants.js' import { ROOT } from '#src/frame/lib/constants.js'
const homepage = path.posix.join(ROOT, 'content/index.md') const homepage = path.posix.join(ROOT, 'content/index.md')
const { data } = frontmatter(fs.readFileSync(homepage, 'utf8')) const { data } = frontmatter(fs.readFileSync(homepage, 'utf8'))

Просмотреть файл

@ -1,4 +1,4 @@
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import { deprecated } from '#src/versions/lib/enterprise-server-releases.js' import { deprecated } from '#src/versions/lib/enterprise-server-releases.js'
export default function isArchivedVersion(req) { export default function isArchivedVersion(req) {

Просмотреть файл

@ -1,6 +1,6 @@
import path from 'path' import path from 'path'
import { supported, latest } from '#src/versions/lib/enterprise-server-releases.js' import { supported, latest } from '#src/versions/lib/enterprise-server-releases.js'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'
const latestNewVersion = `enterprise-server@${latest}` const latestNewVersion = `enterprise-server@${latest}`

Просмотреть файл

@ -2,7 +2,7 @@ import path from 'path'
import got from 'got' import got from 'got'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import isArchivedVersion from '#src/archives/lib/is-archived-version.js' import isArchivedVersion from '#src/archives/lib/is-archived-version.js'
import { import {
setFastlySurrogateKey, setFastlySurrogateKey,

Просмотреть файл

@ -7,7 +7,7 @@ import {
deprecatedWithFunctionalRedirects, deprecatedWithFunctionalRedirects,
firstReleaseStoredInBlobStorage, firstReleaseStoredInBlobStorage,
} from '#src/versions/lib/enterprise-server-releases.js' } from '#src/versions/lib/enterprise-server-releases.js'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import versionSatisfiesRange from '#src/versions/lib/version-satisfies-range.js' import versionSatisfiesRange from '#src/versions/lib/version-satisfies-range.js'
import isArchivedVersion from '#src/archives/lib/is-archived-version.js' import isArchivedVersion from '#src/archives/lib/is-archived-version.js'
import { import {
@ -15,7 +15,7 @@ import {
SURROGATE_ENUMS, SURROGATE_ENUMS,
} from '../../../middleware/set-fastly-surrogate-key.js' } from '../../../middleware/set-fastly-surrogate-key.js'
import got from 'got' import got from 'got'
import { readCompressedJsonFileFallbackLazily } from '../../../lib/read-json-file.js' import { readCompressedJsonFileFallbackLazily } from '#src/frame/lib/read-json-file.js'
import { archivedCacheControl, languageCacheControl } from '../../../middleware/cache-control.js' import { archivedCacheControl, languageCacheControl } from '../../../middleware/cache-control.js'
import { pathLanguagePrefixed, languagePrefixPathRegex } from '#src/languages/lib/languages.js' import { pathLanguagePrefixed, languagePrefixPathRegex } from '#src/languages/lib/languages.js'
import getRedirect, { splitPathByLanguage } from '#src/redirects/lib/get-redirect.js' import getRedirect, { splitPathByLanguage } from '#src/redirects/lib/get-redirect.js'

Просмотреть файл

@ -1,6 +1,6 @@
import path from 'path' import path from 'path'
import { readCompressedJsonFileFallback } from '../../../lib/read-json-file.js' import { readCompressedJsonFileFallback } from '#src/frame/lib/read-json-file.js'
import { getOpenApiVersion } from '#src/versions/lib/all-versions.js' import { getOpenApiVersion } from '#src/versions/lib/all-versions.js'
export const AUDIT_LOG_DATA_DIR = 'src/audit-logs/data' export const AUDIT_LOG_DATA_DIR = 'src/audit-logs/data'

Просмотреть файл

@ -46,7 +46,7 @@ export default function AuditLogEvents({
} }
export const getServerSideProps: GetServerSideProps<Props> = async (context) => { export const getServerSideProps: GetServerSideProps<Props> = async (context) => {
const { getAutomatedPageMiniTocItems } = await import('lib/get-mini-toc-items') const { getAutomatedPageMiniTocItems } = await import('src/frame/lib/get-mini-toc-items')
const { getAuditLogEvents } = await import('src/audit-logs/lib') const { getAuditLogEvents } = await import('src/audit-logs/lib')
const req = context.req as object const req = context.req as object

Просмотреть файл

@ -3,7 +3,7 @@ import { readFileSync } from 'fs'
import cheerio from 'cheerio' import cheerio from 'cheerio'
import { jest, test } from '@jest/globals' import { jest, test } from '@jest/globals'
import { loadPages } from '../../../lib/page-data.js' import { loadPages } from '#src/frame/lib/page-data.js'
import { get } from '../../../tests/helpers/e2etest.js' import { get } from '../../../tests/helpers/e2etest.js'
// Get a list of the autogenerated pages // Get a list of the autogenerated pages

Просмотреть файл

Просмотреть файл

@ -1,4 +1,4 @@
import { schema } from '../../../lib/frontmatter.js' import { schema } from '#src/frame/lib/frontmatter.js'
// Copy the properties from the frontmatter schema. // Copy the properties from the frontmatter schema.
const featureVersions = { const featureVersions = {

Просмотреть файл

@ -3,8 +3,8 @@ import { intersection } from 'lodash-es'
import { getFrontmatter } from '../helpers/utils.js' import { getFrontmatter } from '../helpers/utils.js'
import { formatAjvErrors } from '../helpers/schema-utils.js' import { formatAjvErrors } from '../helpers/schema-utils.js'
import { frontmatter, deprecatedProperties } from '../../../../lib/frontmatter.js' import { frontmatter, deprecatedProperties } from '#src/frame/lib/frontmatter.js'
import readFrontmatter from '../../../../lib/read-frontmatter.js' import readFrontmatter from '#src/frame/lib/read-frontmatter.js'
export const frontmatterSchema = { export const frontmatterSchema = {
names: ['GHD012', 'frontmatter-schema'], names: ['GHD012', 'frontmatter-schema'],

Просмотреть файл

@ -1,7 +1,7 @@
import { addError, ellipsify } from 'markdownlint-rule-helpers' import { addError, ellipsify } from 'markdownlint-rule-helpers'
import { getRange } from '../helpers/utils.js' import { getRange } from '../helpers/utils.js'
import frontmatter from '../../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
/* /*
This rule currently only checks for one hardcoded string but This rule currently only checks for one hardcoded string but

Просмотреть файл

@ -1,7 +1,7 @@
import { TokenKind } from 'liquidjs' import { TokenKind } from 'liquidjs'
import { addError } from 'markdownlint-rule-helpers' import { addError } from 'markdownlint-rule-helpers'
import { getDataByLanguage } from '../../../../lib/get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
import { getLiquidTokens, getPositionData } from '../helpers/liquid-utils.js' import { getLiquidTokens, getPositionData } from '../helpers/liquid-utils.js'
/* /*

Просмотреть файл

@ -2,7 +2,7 @@ import { addError } from 'markdownlint-rule-helpers'
import { getFrontmatter } from '../helpers/utils.js' import { getFrontmatter } from '../helpers/utils.js'
import { liquid } from '#src/content-render/index.js' import { liquid } from '#src/content-render/index.js'
import { isLiquidError } from '../../../../lib/render-with-fallback.js' import { isLiquidError } from '#src/languages/lib/render-with-fallback.js'
/* /*
Attempts to parse all liquid in the frontmatter of a file Attempts to parse all liquid in the frontmatter of a file

Просмотреть файл

@ -10,7 +10,7 @@ import {
deprecated, deprecated,
} from '#src/versions/lib/enterprise-server-releases.js' } from '#src/versions/lib/enterprise-server-releases.js'
import allowedVersionOperators from '#src/content-render/liquid/ifversion-supported-operators.js' import allowedVersionOperators from '#src/content-render/liquid/ifversion-supported-operators.js'
import { getDeepDataByLanguage } from '../../../../lib/get-data.js' import { getDeepDataByLanguage } from '#src/data-directory/lib/get-data.js'
import { getLiquidTokens, getPositionData } from '../helpers/liquid-utils.js' import { getLiquidTokens, getPositionData } from '../helpers/liquid-utils.js'
const getAllPossibleVersionNames = memoize(() => { const getAllPossibleVersionNames = memoize(() => {

Просмотреть файл

@ -5,12 +5,12 @@ import { zip, difference } from 'lodash-es'
import GithubSlugger from 'github-slugger' import GithubSlugger from 'github-slugger'
import { decode } from 'html-entities' import { decode } from 'html-entities'
import matter from '../../../lib/read-frontmatter.js' import matter from '#src/frame/lib/read-frontmatter.js'
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'
import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js' import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js'
import contextualize from '../../../middleware/context.js' import contextualize from '../../../middleware/context.js'
import shortVersions from '#src/versions/middleware/short-versions.js' import shortVersions from '#src/versions/middleware/short-versions.js'
import { ROOT } from '../../../lib/constants.js' import { ROOT } from '#src/frame/lib/constants.js'
const slugger = new GithubSlugger() const slugger = new GithubSlugger()

Просмотреть файл

@ -1,4 +1,4 @@
import { loadPages, loadPageMap } from '../../../lib/page-data.js' import { loadPages, loadPageMap } from '#src/frame/lib/page-data.js'
import loadRedirects from '#src/redirects/lib/precompile.js' import loadRedirects from '#src/redirects/lib/precompile.js'
import { checkURL } from '../../../tests/helpers/check-url.js' import { checkURL } from '../../../tests/helpers/check-url.js'

Просмотреть файл

@ -4,7 +4,7 @@ import addErrors from 'ajv-errors'
import semver from 'semver' import semver from 'semver'
import featureVersionsSchema from '../lib/feature-versions-schema.js' import featureVersionsSchema from '../lib/feature-versions-schema.js'
import { getDeepDataByLanguage } from '../../../lib/get-data.js' import { getDeepDataByLanguage } from '#src/data-directory/lib/get-data.js'
import { formatAjvErrors } from '../../../tests/helpers/schemas.js' import { formatAjvErrors } from '../../../tests/helpers/schemas.js'
/* /*

Просмотреть файл

@ -2,8 +2,8 @@ import path from 'path'
import { isEqual, uniqWith } from 'lodash-es' import { isEqual, uniqWith } from 'lodash-es'
import { jest } from '@jest/globals' import { jest } from '@jest/globals'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import { getDataByLanguage, getDeepDataByLanguage } from '../../../lib/get-data.js' import { getDataByLanguage, getDeepDataByLanguage } from '#src/data-directory/lib/get-data.js'
// Given syntax like {% data foo.bar %} or {% indented_data_reference foo.bar spaces=3 %}, // Given syntax like {% data foo.bar %} or {% indented_data_reference foo.bar spaces=3 %},
// the following regex returns just the dotted path: foo.bar // the following regex returns just the dotted path: foo.bar

Просмотреть файл

@ -1,7 +1,7 @@
import { TokenizationError } from 'liquidjs' import { TokenizationError } from 'liquidjs'
import { THROW_ON_EMPTY, DataReferenceError } from './error-handling.js' import { THROW_ON_EMPTY, DataReferenceError } from './error-handling.js'
import { getDataByLanguage } from '../../../lib/get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
const Syntax = /([a-z0-9/\\_.\-[\]]+)/i const Syntax = /([a-z0-9/\\_.\-[\]]+)/i
const SyntaxHelp = "Syntax Error in 'data' - Valid syntax: data [path]" const SyntaxHelp = "Syntax Error in 'data' - Valid syntax: data [path]"

Просмотреть файл

@ -1,7 +1,7 @@
import assert from 'assert' import assert from 'assert'
import { THROW_ON_EMPTY, IndentedDataReferenceError } from './error-handling.js' import { THROW_ON_EMPTY, IndentedDataReferenceError } from './error-handling.js'
import { getDataByLanguage } from '../../../lib/get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
// This class supports a tag that expects two parameters, a data reference and `spaces=NUMBER`: // This class supports a tag that expects two parameters, a data reference and `spaces=NUMBER`:
// //

Просмотреть файл

@ -11,7 +11,7 @@ import path from 'path'
import { mkdirp } from 'mkdirp' import { mkdirp } from 'mkdirp'
import { program } from 'commander' import { program } from 'commander'
import { execSync } from 'child_process' import { execSync } from 'child_process'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import addRedirectToFrontmatter from '#src/redirects/scripts/helpers/add-redirect-to-frontmatter.js' import addRedirectToFrontmatter from '#src/redirects/scripts/helpers/add-redirect-to-frontmatter.js'
import walkFiles from '#src/workflows/walk-files.js' import walkFiles from '#src/workflows/walk-files.js'

Просмотреть файл

@ -28,8 +28,8 @@ import chalk from 'chalk'
import walk from 'walk-sync' import walk from 'walk-sync'
import yaml from 'js-yaml' import yaml from 'js-yaml'
import fm from '../../../lib/frontmatter.js' import fm from '#src/frame/lib/frontmatter.js'
import readFrontmatter from '../../../lib/read-frontmatter.js' import readFrontmatter from '#src/frame/lib/read-frontmatter.js'
const CONTENT_ROOT = path.resolve('content') const CONTENT_ROOT = path.resolve('content')
const DATA_ROOT = path.resolve('data') const DATA_ROOT = path.resolve('data')

Просмотреть файл

@ -16,10 +16,10 @@ import chalk from 'chalk'
import GithubSlugger from 'github-slugger' import GithubSlugger from 'github-slugger'
import { decode } from 'html-entities' import { decode } from 'html-entities'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'
import { ROOT } from '../../../lib/constants.js' import { ROOT } from '#src/frame/lib/constants.js'
const slugger = new GithubSlugger() const slugger = new GithubSlugger()

Просмотреть файл

@ -14,7 +14,7 @@ import path from 'path'
import walk from 'walk-sync' import walk from 'walk-sync'
import GithubSlugger from 'github-slugger' import GithubSlugger from 'github-slugger'
import { decode } from 'html-entities' import { decode } from 'html-entities'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import { execSync } from 'child_process' import { execSync } from 'child_process'
import addRedirectToFrontmatter from '#src/redirects/scripts/helpers/add-redirect-to-frontmatter.js' import addRedirectToFrontmatter from '#src/redirects/scripts/helpers/add-redirect-to-frontmatter.js'

Просмотреть файл

@ -6,7 +6,7 @@ import { execSync } from 'child_process'
import { renderLiquid } from '#src/content-render/liquid/index.js' import { renderLiquid } from '#src/content-render/liquid/index.js'
import shortVersionsMiddleware from '#src/versions/middleware/short-versions.js' import shortVersionsMiddleware from '#src/versions/middleware/short-versions.js'
const { loadPages } = await import('../../../lib/page-data.js') const { loadPages } = await import('#src/frame/lib/page-data.js')
const { allVersions } = await import('#src/versions/lib/all-versions.js') const { allVersions } = await import('#src/versions/lib/all-versions.js')
const contentCopilotDir = path.join(process.cwd(), 'content-copilot') const contentCopilotDir = path.join(process.cwd(), 'content-copilot')

Просмотреть файл

@ -1,6 +1,6 @@
import { afterAll, beforeAll, expect, describe, it } from '@jest/globals' import { afterAll, beforeAll, expect, describe, it } from '@jest/globals'
import Page from '../../../lib/page.js' import Page from '#src/frame/lib/page.js'
import languages from '#src/languages/lib/languages.js' import languages from '#src/languages/lib/languages.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
import { DataDirectory } from '../../../tests/helpers/data-directory.js' import { DataDirectory } from '../../../tests/helpers/data-directory.js'

Просмотреть файл

@ -34,7 +34,7 @@ import path from 'path'
import { jest } from '@jest/globals' import { jest } from '@jest/globals'
import { head, get } from '../../../tests/helpers/e2etest.js' import { head, get } from '../../../tests/helpers/e2etest.js'
import { loadPages } from '../../../lib/page-data.js' import { loadPages } from '#src/frame/lib/page-data.js'
const EMPTY = Symbol('EMPTY') const EMPTY = Symbol('EMPTY')

Просмотреть файл

@ -1,15 +1,15 @@
import path from 'path' import path from 'path'
import { visit } from 'unist-util-visit' import { visit } from 'unist-util-visit'
import { distance } from 'fastest-levenshtein' import { distance } from 'fastest-levenshtein'
import { getPathWithoutLanguage, getVersionStringFromPath } from '../../../lib/path-utils.js' import { getPathWithoutLanguage, getVersionStringFromPath } from '#src/frame/lib/path-utils.js'
import { getNewVersionedPath } from '#src/archives/lib/old-versions-utils.js' import { getNewVersionedPath } from '#src/archives/lib/old-versions-utils.js'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import { deprecated, latest } from '#src/versions/lib/enterprise-server-releases.js' import { deprecated, latest } from '#src/versions/lib/enterprise-server-releases.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'
import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js' import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js'
import readJsonFile from '../../../lib/read-json-file.js' import readJsonFile from '#src/frame/lib/read-json-file.js'
import findPage from '../../../lib/find-page.js' import findPage from '#src/frame/lib/find-page.js'
const isProd = process.env.NODE_ENV === 'production' const isProd = process.env.NODE_ENV === 'production'

Просмотреть файл

Просмотреть файл

Просмотреть файл

@ -6,7 +6,7 @@ import matter from 'gray-matter'
import { merge, get } from 'lodash-es' import { merge, get } from 'lodash-es'
import languages from '#src/languages/lib/languages.js' import languages from '#src/languages/lib/languages.js'
import { correctTranslatedContentStrings } from './correct-translation-content.js' import { correctTranslatedContentStrings } from '#src/languages/lib/correct-translation-content.js'
// If you run `export DEBUG_JIT_DATA_READS=true` in your terminal, // If you run `export DEBUG_JIT_DATA_READS=true` in your terminal,
// next time it will mention every file it reads from disk. // next time it will mention every file it reads from disk.

Просмотреть файл

@ -12,8 +12,8 @@ import yaml from 'js-yaml'
import { last } from 'lodash-es' import { last } from 'lodash-es'
import { program } from 'commander' import { program } from 'commander'
import { execFileSync } from 'child_process' import { execFileSync } from 'child_process'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import addRedirectToFrontmatter from '#src/redirects/scripts/helpers/add-redirect-to-frontmatter.js' import addRedirectToFrontmatter from '#src/redirects/scripts/helpers/add-redirect-to-frontmatter.js'
import walkFiles from '#src/workflows/walk-files.js' import walkFiles from '#src/workflows/walk-files.js'

Просмотреть файл

@ -12,7 +12,7 @@ import path from 'path'
import { program } from 'commander' import { program } from 'commander'
import walkFiles from '#src/workflows/walk-files.js' import walkFiles from '#src/workflows/walk-files.js'
import { escapeRegExp } from 'lodash-es' import { escapeRegExp } from 'lodash-es'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
program program
.description('Update data and image paths.') .description('Update data and image paths.')

Просмотреть файл

@ -4,7 +4,7 @@ import got from 'got'
import { isNil } from 'lodash-es' import { isNil } from 'lodash-es'
import statsd from '#src/observability/lib/statsd.js' import statsd from '#src/observability/lib/statsd.js'
import { report } from '#src/observability/lib/failbot.js' import { report } from '#src/observability/lib/failbot.js'
import { MAX_REQUEST_TIMEOUT } from '../../../lib/constants.js' import { MAX_REQUEST_TIMEOUT } from '#src/frame/lib/constants.js'
const TIME_OUT_TEXT = 'ms has passed since batch creation' const TIME_OUT_TEXT = 'ms has passed since batch creation'
const SERVER_DISCONNECT_TEXT = 'The server disconnected before a response was received' const SERVER_DISCONNECT_TEXT = 'The server disconnected before a response was received'

Просмотреть файл

@ -1,6 +1,6 @@
import { languageKeys } from '#src/languages/lib/languages.js' import { languageKeys } from '#src/languages/lib/languages.js'
import { allVersionKeys } from '#src/versions/lib/all-versions.js' import { allVersionKeys } from '#src/versions/lib/all-versions.js'
import { productIds } from '../../../lib/all-products.js' import { productIds } from '#src/products/lib/all-products.js'
import { allTools } from '#src/tools/lib/all-tools.js' import { allTools } from '#src/tools/lib/all-tools.js'
const versionPattern = '^\\d+(\\.\\d+)?(\\.\\d+)?$' // eslint-disable-line const versionPattern = '^\\d+(\\.\\d+)?(\\.\\d+)?$' // eslint-disable-line

Просмотреть файл

@ -1,5 +1,5 @@
import express from 'express' import express from 'express'
import middleware from '../middleware/index.js' import middleware from '../../../middleware/index.js'
function createApp() { function createApp() {
const app = express() const app = express()

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

@ -1,7 +1,7 @@
import parse from './read-frontmatter.js' import parse from './read-frontmatter.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'
import { allTools } from '#src/tools/lib/all-tools.js' import { allTools } from '#src/tools/lib/all-tools.js'
import { getDeepDataByLanguage } from './get-data.js' import { getDeepDataByLanguage } from '#src/data-directory/lib/get-data.js'
const layoutNames = [ const layoutNames = [
'default', 'default',

Просмотреть файл

Просмотреть файл

@ -1,4 +1,4 @@
import { productMap } from './all-products.js' import { productMap } from '#src/products/lib/all-products.js'
const productTOCs = Object.values(productMap) const productTOCs = Object.values(productMap)
.filter((product) => !product.external) .filter((product) => !product.external)
.map((product) => product.toc.replace('content/', '')) .map((product) => product.toc.replace('content/', ''))

Просмотреть файл

@ -7,7 +7,7 @@ import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-defaul
import readFileContents from './read-file-contents.js' import readFileContents from './read-file-contents.js'
import Page from './page.js' import Page from './page.js'
import frontmatterSchema from './frontmatter.js' import frontmatterSchema from './frontmatter.js'
import { correctTranslatedContentStrings } from './correct-translation-content.js' import { correctTranslatedContentStrings } from '#src/languages/lib/correct-translation-content.js'
// If you run `export DEBUG_TRANSLATION_FALLBACKS=true` in your terminal, // If you run `export DEBUG_TRANSLATION_FALLBACKS=true` in your terminal,
// every time a translation file fails to initialize we fall back to English // every time a translation file fails to initialize we fall back to English

Просмотреть файл

@ -3,19 +3,19 @@ import path from 'path'
import cheerio from 'cheerio' import cheerio from 'cheerio'
import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js' import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js'
import generateRedirectsForPermalinks from '#src/redirects/lib/permalinks.js' import generateRedirectsForPermalinks from '#src/redirects/lib/permalinks.js'
import getEnglishHeadings from './get-english-headings.js' import getEnglishHeadings from '#src/languages/lib/get-english-headings.js'
import getTocItems from './get-toc-items.js' import getTocItems from './get-toc-items.js'
import Permalink from './permalink.js' import Permalink from './permalink.js'
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'
import processLearningTracks from '#src/learning-track/lib/process-learning-tracks.js' import processLearningTracks from '#src/learning-track/lib/process-learning-tracks.js'
import { productMap } from './all-products.js' import { productMap } from '#src/products/lib/all-products.js'
import slash from 'slash' import slash from 'slash'
import readFileContents from './read-file-contents.js' import readFileContents from './read-file-contents.js'
import getLinkData from '#src/learning-track/lib/get-link-data.js' import getLinkData from '#src/learning-track/lib/get-link-data.js'
import getDocumentType from '#src/events/lib/get-document-type.js' import getDocumentType from '#src/events/lib/get-document-type.js'
import { union } from 'lodash-es' import { union } from 'lodash-es'
import { allTools } from '#src/tools/lib/all-tools.js' import { allTools } from '#src/tools/lib/all-tools.js'
import { renderContentWithFallback } from './render-with-fallback.js' import { renderContentWithFallback } from '#src/languages/lib/render-with-fallback.js'
import { deprecated, supported } from '#src/versions/lib/enterprise-server-releases.js' import { deprecated, supported } from '#src/versions/lib/enterprise-server-releases.js'
import { allPlatforms } from '#src/tools/lib/all-platforms.js' import { allPlatforms } from '#src/tools/lib/all-platforms.js'

Просмотреть файл

@ -2,7 +2,7 @@ import slash from 'slash'
import path from 'path' import path from 'path'
import patterns from './patterns.js' import patterns from './patterns.js'
import { latest } from '#src/versions/lib/enterprise-server-releases.js' import { latest } from '#src/versions/lib/enterprise-server-releases.js'
import { productIds } from './all-products.js' import { productIds } from '#src/products/lib/all-products.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
const supportedVersions = new Set(Object.keys(allVersions)) const supportedVersions = new Set(Object.keys(allVersions))

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

@ -15,10 +15,10 @@ import { program } from 'commander'
import { rimraf } from 'rimraf' import { rimraf } from 'rimraf'
import http from 'http' import http from 'http'
import createApp from '../../../lib/app.js' import createApp from '#src/frame/lib/app.js'
import EnterpriseServerReleases from '#src/versions/lib/enterprise-server-releases.js' import EnterpriseServerReleases from '#src/versions/lib/enterprise-server-releases.js'
import loadRedirects from '#src/redirects/lib/precompile.js' import loadRedirects from '#src/redirects/lib/precompile.js'
import { loadPageMap } from '../../../lib/page-data.js' import { loadPageMap } from '#src/frame/lib/page-data.js'
import { languageKeys } from '#src/languages/lib/languages.js' import { languageKeys } from '#src/languages/lib/languages.js'
const port = '4001' const port = '4001'

Просмотреть файл

@ -10,7 +10,7 @@
import fs from 'fs' import fs from 'fs'
import { program } from 'commander' import { program } from 'commander'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import removeLiquidStatements from './remove-liquid-statements.js' import removeLiquidStatements from './remove-liquid-statements.js'
import removeDeprecatedFrontmatter from './remove-deprecated-frontmatter.js' import removeDeprecatedFrontmatter from './remove-deprecated-frontmatter.js'
import { all, getNextReleaseNumber } from '#src/versions/lib/enterprise-server-releases.js' import { all, getNextReleaseNumber } from '#src/versions/lib/enterprise-server-releases.js'

Просмотреть файл

@ -1,7 +1,7 @@
import path from 'path' import path from 'path'
import { readFile } from 'fs/promises' import { readFile } from 'fs/promises'
import { readCompressedJsonFileFallback } from '../../../lib/read-json-file.js' import { readCompressedJsonFileFallback } from '#src/frame/lib/read-json-file.js'
import { getOpenApiVersion } from '#src/versions/lib/all-versions.js' import { getOpenApiVersion } from '#src/versions/lib/all-versions.js'
import { categoriesWithoutSubcategories } from '../../rest/lib/index.js' import { categoriesWithoutSubcategories } from '../../rest/lib/index.js'
@ -31,9 +31,9 @@ export async function getAppsData(pageType, docsVersion, apiVersion) {
} }
export async function getAppsServerSideProps(context, pageType, { useDisplayTitle = false }) { export async function getAppsServerSideProps(context, pageType, { useDisplayTitle = false }) {
const { getAutomatedPageMiniTocItems } = await import('lib/get-mini-toc-items') const { getAutomatedPageMiniTocItems } = await import('#src/frame/lib/get-mini-toc-items')
const { getAutomatedPageContextFromRequest } = await import( const { getAutomatedPageContextFromRequest } = await import(
'src/automated-pipelines/components/AutomatedPageContext' '#src/automated-pipelines/components/AutomatedPageContext'
) )
const currentVersion = context.query.versionId const currentVersion = context.query.versionId
const allVersions = context.req.context.allVersions const allVersions = context.req.context.allVersions

Просмотреть файл

@ -1,8 +1,8 @@
import { import {
readCompressedJsonFileFallbackLazily, readCompressedJsonFileFallbackLazily,
readCompressedJsonFileFallback, readCompressedJsonFileFallback,
} from '../../../lib/read-json-file.js' } from '#src/frame/lib/read-json-file.js'
import { getAutomatedPageMiniTocItems } from '../../../lib/get-mini-toc-items.js' import { getAutomatedPageMiniTocItems } from '#src/frame/lib/get-mini-toc-items.js'
import languages from '#src/languages/lib/languages.js' import languages from '#src/languages/lib/languages.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'

Просмотреть файл

@ -39,7 +39,7 @@ export default function GraphqlBreakingChanges({
export const getServerSideProps: GetServerSideProps<Props> = async (context) => { export const getServerSideProps: GetServerSideProps<Props> = async (context) => {
const { getGraphqlBreakingChanges } = await import('src/graphql/lib/index.js') const { getGraphqlBreakingChanges } = await import('src/graphql/lib/index.js')
const { getAutomatedPageMiniTocItems } = await import('lib/get-mini-toc-items.js') const { getAutomatedPageMiniTocItems } = await import('src/frame/lib/get-mini-toc-items.js')
const req = context.req as any const req = context.req as any
const res = context.res as any const res = context.res as any

Просмотреть файл

@ -30,7 +30,7 @@ export default function GraphqlChangelog({ mainContext, schema, automatedPageCon
export const getServerSideProps: GetServerSideProps<Props> = async (context) => { export const getServerSideProps: GetServerSideProps<Props> = async (context) => {
const { getGraphqlChangelog } = await import('src/graphql/lib/index.js') const { getGraphqlChangelog } = await import('src/graphql/lib/index.js')
const { getAutomatedPageMiniTocItems } = await import('lib/get-mini-toc-items.js') const { getAutomatedPageMiniTocItems } = await import('src/frame/lib/get-mini-toc-items.js')
const req = context.req as any const req = context.req as any
const res = context.res as any const res = context.res as any

Просмотреть файл

@ -35,7 +35,7 @@ export default function GraphqlPreviews({ mainContext, schema, automatedPageCont
export const getServerSideProps: GetServerSideProps<Props> = async (context) => { export const getServerSideProps: GetServerSideProps<Props> = async (context) => {
const { getPreviews } = await import('src/graphql/lib/index.js') const { getPreviews } = await import('src/graphql/lib/index.js')
const { getAutomatedPageMiniTocItems } = await import('lib/get-mini-toc-items.js') const { getAutomatedPageMiniTocItems } = await import('src/frame/lib/get-mini-toc-items.js')
const req = context.req as any const req = context.req as any
const res = context.res as any const res = context.res as any

Просмотреть файл

@ -8,7 +8,7 @@ import {
previewAnchor, previewAnchor,
prependDatedEntry, prependDatedEntry,
} from '../scripts/build-changelog.js' } from '../scripts/build-changelog.js'
import readJsonFile from '../../../lib/read-json-file.js' import readJsonFile from '#src/frame/lib/read-json-file.js'
const expectedChangelogEntry = readJsonFile('src/graphql/tests/fixtures/changelog-entry.json') const expectedChangelogEntry = readJsonFile('src/graphql/tests/fixtures/changelog-entry.json')
const expectedUpdatedChangelogFile = readJsonFile( const expectedUpdatedChangelogFile = readJsonFile(

Просмотреть файл

@ -1,7 +1,7 @@
import { jest } from '@jest/globals' import { jest } from '@jest/globals'
import Ajv from 'ajv' import Ajv from 'ajv'
import readJsonFile from '../../../lib/read-json-file.js' import readJsonFile from '#src/frame/lib/read-json-file.js'
import { schemaValidator, previewsValidator, upcomingChangesValidator } from '../lib/validator.js' import { schemaValidator, previewsValidator, upcomingChangesValidator } from '../lib/validator.js'
import { formatAjvErrors } from '../../../tests/helpers/schemas.js' import { formatAjvErrors } from '../../../tests/helpers/schemas.js'
import { allVersions } from '#src/versions/lib/all-versions.js' import { allVersions } from '#src/versions/lib/all-versions.js'

Просмотреть файл

@ -3,7 +3,7 @@ import Cookies from 'components/lib/cookies'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'
import { useLanguages } from 'src/languages/components/LanguagesContext' import { useLanguages } from 'src/languages/components/LanguagesContext'
import { USER_LANGUAGE_COOKIE_NAME } from '../../../lib/constants.js' import { USER_LANGUAGE_COOKIE_NAME } from 'src/frame/lib/constants.js'
export function useUserLanguage() { export function useUserLanguage() {
const { locale } = useRouter() const { locale } = useRouter()

Просмотреть файл

@ -2,8 +2,8 @@ import { fromMarkdown } from 'mdast-util-from-markdown'
import { toString } from 'mdast-util-to-string' import { toString } from 'mdast-util-to-string'
import { visit } from 'unist-util-visit' import { visit } from 'unist-util-visit'
import findPage from './find-page.js' import findPage from '#src/frame/lib/find-page.js'
import { getDataByLanguage } from './get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
// for any translated page, first get corresponding English markdown // for any translated page, first get corresponding English markdown
// then get the headings on both the translated and English pageMap // then get the headings on both the translated and English pageMap

Просмотреть файл

@ -6,7 +6,7 @@ import fs from 'fs'
import dotenv from 'dotenv' import dotenv from 'dotenv'
import { ROOT, TRANSLATIONS_ROOT, TRANSLATIONS_FIXTURE_ROOT } from '../../../lib/constants.js' import { ROOT, TRANSLATIONS_ROOT, TRANSLATIONS_FIXTURE_ROOT } from '#src/frame/lib/constants.js'
dotenv.config() dotenv.config()

Просмотреть файл

@ -1,5 +1,5 @@
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'
import Page from './page.js' import Page from '#src/frame/lib/page.js'
import { TitleFromAutotitleError } from '#src/content-render/unified/rewrite-local-links.js' import { TitleFromAutotitleError } from '#src/content-render/unified/rewrite-local-links.js'
class EmptyTitleError extends Error {} class EmptyTitleError extends Error {}

Просмотреть файл

@ -1,7 +1,7 @@
import languages, { languageKeys } from '#src/languages/lib/languages.js' import languages, { languageKeys } from '#src/languages/lib/languages.js'
import parser from 'accept-language-parser' import parser from 'accept-language-parser'
import { USER_LANGUAGE_COOKIE_NAME } from '../../../lib/constants.js' import { USER_LANGUAGE_COOKIE_NAME } from '#src/frame/lib/constants.js'
const chineseRegions = [ const chineseRegions = [
'CN', // Mainland 'CN', // Mainland

Просмотреть файл

@ -60,10 +60,10 @@ console.warn = console.error = (...args) => {
// Weird import syntax, but forces it to load after process.env... changes // Weird import syntax, but forces it to load after process.env... changes
const { languageKeys } = await import('#src/languages/lib/languages.js') const { languageKeys } = await import('#src/languages/lib/languages.js')
const { loadPages, loadPageMap } = await import('../../../lib/page-data.js') const { loadPages, loadPageMap } = await import('#src/frame/lib/page-data.js')
const { precompileRedirects } = await import('#src/redirects/lib/precompile.js') const { precompileRedirects } = await import('#src/redirects/lib/precompile.js')
const { allVersions, allVersionKeys } = await import('#src/versions/lib/all-versions.js') const { allVersions, allVersionKeys } = await import('#src/versions/lib/all-versions.js')
const { getProductStringFromPath } = await import('../../../lib/path-utils.js') const { getProductStringFromPath } = await import('#src/frame/lib/path-utils.js')
// Check that the language is valid // Check that the language is valid
const { language, gitref } = program.opts() const { language, gitref } = program.opts()

Просмотреть файл

@ -1,7 +1,7 @@
import { languageKeys } from '#src/languages/lib/languages.js' import { languageKeys } from '#src/languages/lib/languages.js'
import { blockIndex } from '../../../middleware/block-robots.js' import { blockIndex } from '../../../middleware/block-robots.js'
import { get, getDOMCached as getDOM } from '../../../tests/helpers/e2etest.js' import { get, getDOMCached as getDOM } from '../../../tests/helpers/e2etest.js'
import Page from '../../../lib/page.js' import Page from '#src/frame/lib/page.js'
import { jest } from '@jest/globals' import { jest } from '@jest/globals'
const langs = languageKeys.filter((lang) => lang !== 'en') const langs = languageKeys.filter((lang) => lang !== 'en')

Просмотреть файл

@ -1,6 +1,6 @@
import { languageKeys } from '#src/languages/lib/languages.js' import { languageKeys } from '#src/languages/lib/languages.js'
import { get } from '../../../tests/helpers/e2etest.js' import { get } from '../../../tests/helpers/e2etest.js'
import { USER_LANGUAGE_COOKIE_NAME } from '../../../lib/constants.js' import { USER_LANGUAGE_COOKIE_NAME } from '#src/frame/lib/constants.js'
const langs = languageKeys.filter((lang) => lang !== 'en') const langs = languageKeys.filter((lang) => lang !== 'en')

Просмотреть файл

@ -1,5 +1,5 @@
import path from 'path' import path from 'path'
import findPage from '../../../lib/find-page.js' import findPage from '#src/frame/lib/find-page.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js' import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js'
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'

Просмотреть файл

@ -1,4 +1,4 @@
import { schema } from '../../../lib/frontmatter.js' import { schema } from '#src/frame/lib/frontmatter.js'
// Some learning tracks have `versions` blocks that match `versions` frontmatter, // Some learning tracks have `versions` blocks that match `versions` frontmatter,
// so we can import that part of the FM schema. // so we can import that part of the FM schema.

Просмотреть файл

@ -1,8 +1,8 @@
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'
import getLinkData from './get-link-data.js' import getLinkData from './get-link-data.js'
import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js' import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js'
import { getDataByLanguage } from '../../../lib/get-data.js' import { getDataByLanguage } from '#src/data-directory/lib/get-data.js'
import { executeWithFallback } from '../../../lib/render-with-fallback.js' import { executeWithFallback } from '#src/languages/lib/render-with-fallback.js'
const renderOpts = { textOnly: true } const renderOpts = { textOnly: true }

Просмотреть файл

@ -1,7 +1,7 @@
import { getPathWithoutLanguage, getPathWithoutVersion } from '../../../lib/path-utils.js' import { getPathWithoutLanguage, getPathWithoutVersion } from '#src/frame/lib/path-utils.js'
import getLinkData from '../lib/get-link-data.js' import getLinkData from '../lib/get-link-data.js'
import { renderContent } from '#src/content-render/index.js' import { renderContent } from '#src/content-render/index.js'
import { getDeepDataByLanguage } from '../../../lib/get-data.js' import { getDeepDataByLanguage } from '#src/data-directory/lib/get-data.js'
export default async function learningTrack(req, res, next) { export default async function learningTrack(req, res, next) {
const noTrack = () => { const noTrack = () => {

Просмотреть файл

@ -1,6 +1,6 @@
import { loadPages, loadPageMap } from '../../../lib/page-data.js' import { loadPages, loadPageMap } from '#src/frame/lib/page-data.js'
import loadRedirects from '#src/redirects/lib/precompile.js' import loadRedirects from '#src/redirects/lib/precompile.js'
import { getDeepDataByLanguage } from '../../../lib/get-data.js' import { getDeepDataByLanguage } from '#src/data-directory/lib/get-data.js'
import { checkURL } from '../../../tests/helpers/check-url.js' import { checkURL } from '../../../tests/helpers/check-url.js'
const pageList = await loadPages(undefined, ['en']) const pageList = await loadPages(undefined, ['en'])

Просмотреть файл

@ -6,7 +6,7 @@ import { jest } from '@jest/globals'
import { liquid } from '#src/content-render/index.js' import { liquid } from '#src/content-render/index.js'
import learningTracksSchema from '../lib/learning-tracks-schema.js' import learningTracksSchema from '../lib/learning-tracks-schema.js'
import { formatAjvErrors } from '../../../tests/helpers/schemas.js' import { formatAjvErrors } from '../../../tests/helpers/schemas.js'
import { ajvValidate } from '../../../lib/ajv-validate.js' import { ajvValidate } from '#src/tests/lib/ajv-validate.js'
const learningTrackRootPath = 'data/learning-tracks' const learningTrackRootPath = 'data/learning-tracks'
const jsonValidator = ajvValidate(learningTracksSchema) const jsonValidator = ajvValidate(learningTracksSchema)

Просмотреть файл

@ -6,16 +6,16 @@ import { fromMarkdown } from 'mdast-util-from-markdown'
import { toMarkdown } from 'mdast-util-to-markdown' import { toMarkdown } from 'mdast-util-to-markdown'
import yaml from 'js-yaml' import yaml from 'js-yaml'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import { import {
getPathWithLanguage, getPathWithLanguage,
getPathWithoutLanguage, getPathWithoutLanguage,
getPathWithoutVersion, getPathWithoutVersion,
getVersionStringFromPath, getVersionStringFromPath,
} from '../../../lib/path-utils.js' } from '#src/frame/lib/path-utils.js'
import loadRedirects from '#src/redirects/lib/precompile.js' import loadRedirects from '#src/redirects/lib/precompile.js'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import { loadUnversionedTree, loadPages, loadPageMap } from '../../../lib/page-data.js' import { loadUnversionedTree, loadPages, loadPageMap } from '#src/frame/lib/page-data.js'
import getRedirect, { splitPathByLanguage } from '#src/redirects/lib/get-redirect.js' import getRedirect, { splitPathByLanguage } from '#src/redirects/lib/get-redirect.js'
import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js' import nonEnterpriseDefaultVersion from '#src/versions/lib/non-enterprise-default-version.js'
import { deprecated } from '#src/versions/lib/enterprise-server-releases.js' import { deprecated } from '#src/versions/lib/enterprise-server-releases.js'

Просмотреть файл

@ -13,7 +13,7 @@ import shortVersions from '#src/versions/middleware/short-versions.js'
import contextualize from '../../../middleware/context.js' import contextualize from '../../../middleware/context.js'
import features from '#src/versions/middleware/features.js' import features from '#src/versions/middleware/features.js'
import getRedirect from '#src/redirects/lib/get-redirect.js' import getRedirect from '#src/redirects/lib/get-redirect.js'
import warmServer from '../../../lib/warm-server.js' import warmServer from '#src/frame/lib/warm-server.js'
import { liquid } from '#src/content-render/index.js' import { liquid } from '#src/content-render/index.js'
import { deprecated } from '#src/versions/lib/enterprise-server-releases.js' import { deprecated } from '#src/versions/lib/enterprise-server-releases.js'
import excludedLinks from '#src/links/lib/excluded-links.js' import excludedLinks from '#src/links/lib/excluded-links.js'

Просмотреть файл

@ -2,9 +2,9 @@
import fs from 'fs' import fs from 'fs'
import path from 'path' import path from 'path'
import walk from 'walk-sync' import walk from 'walk-sync'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import { loadPages, loadPageMap } from '../../../lib/page-data.js' import { loadPages, loadPageMap } from '#src/frame/lib/page-data.js'
import patterns from '../../../lib/patterns.js' import patterns from '#src/frame/lib/patterns.js'
import loadRedirects from '#src/redirects/lib/precompile.js' import loadRedirects from '#src/redirects/lib/precompile.js'
import { allVersionKeys } from '#src/versions/lib/all-versions.js' import { allVersionKeys } from '#src/versions/lib/all-versions.js'

Просмотреть файл

@ -17,7 +17,7 @@ import chalk from 'chalk'
import yaml from 'js-yaml' import yaml from 'js-yaml'
import { updateInternalLinks } from '#src/links/lib/update-internal-links.js' import { updateInternalLinks } from '#src/links/lib/update-internal-links.js'
import frontmatter from '../../../lib/read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import walkFiles from '#src/workflows/walk-files.js' import walkFiles from '#src/workflows/walk-files.js'
program program

Просмотреть файл

@ -1,9 +1,9 @@
import fs from 'fs/promises' import fs from 'fs/promises'
import path from 'path' import path from 'path'
import frontmatter from './read-frontmatter.js' import frontmatter from '#src/frame/lib/read-frontmatter.js'
import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js' import getApplicableVersions from '#src/versions/lib/get-applicable-versions.js'
import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js' import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js'
import { ROOT } from './constants.js' import { ROOT } from '#src/frame/lib/constants.js'
// Both internal and external products are specified in content/index.md // Both internal and external products are specified in content/index.md
const homepage = path.posix.join(ROOT, 'content/index.md') const homepage = path.posix.join(ROOT, 'content/index.md')

Просмотреть файл

@ -1,7 +1,7 @@
import path from 'path' import path from 'path'
import { productMap, data } from './all-products.js' import { productMap, data } from './all-products.js'
import { renderContentWithFallback } from './render-with-fallback.js' import { renderContentWithFallback } from '#src/languages/lib/render-with-fallback.js'
import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js' import removeFPTFromPath from '#src/versions/lib/remove-fpt-from-path.js'
async function getPage(id, lang, pageMap, context) { async function getPage(id, lang, pageMap, context) {

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше