Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,15 @@
"./src/*.d.ts"
]
},
"imports": {
"#generators/*": "./src/generators/*",
"#logger/*": "./src/logger/*",
"#parsers/*": [
"./src/parsers/*",
"./src/parsers/*.d.ts"
],
"#utils/*": "./src/utils/*"
},
"files": [
"src",
"!src/**/*.test.mjs",
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/generators/ast-js/generate.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import { extname } from 'node:path';
import { parse } from 'acorn';
import { globSync } from 'tinyglobby';

import getConfig from '../../utils/configuration/index.mjs';
import getConfig from '#utils/configuration/index.mjs';

/**
* Process a chunk of JavaScript files in a worker thread.
Expand Down
9 changes: 5 additions & 4 deletions packages/core/src/generators/ast/generate.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,12 @@ import globParent from 'glob-parent';
import { globSync } from 'tinyglobby';
import { parse as parseYaml } from 'yaml';

import getConfig from '#utils/configuration/index.mjs';
import { withExt } from '#utils/file.mjs';
import { QUERIES } from '#utils/queries/index.mjs';
import { getRemark as remark, getRemarkMdx } from '#utils/remark.mjs';

import { STABILITY_INDEX_URL } from './constants.mjs';
import getConfig from '../../utils/configuration/index.mjs';
import { withExt } from '../../utils/file.mjs';
import { QUERIES } from '../../utils/queries/index.mjs';
import { getRemark as remark, getRemarkMdx } from '../../utils/remark.mjs';

/**
* Determines whether a file should be parsed as MDX. A `.mdx` extension opts in
Expand Down
6 changes: 3 additions & 3 deletions packages/core/src/generators/json-simple/generate.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import { join } from 'node:path';

import { remove } from 'unist-util-remove';

import getConfig from '../../utils/configuration/index.mjs';
import { writeFile } from '../../utils/file.mjs';
import { UNIST } from '../../utils/queries/index.mjs';
import getConfig from '#utils/configuration/index.mjs';
import { writeFile } from '#utils/file.mjs';
import { UNIST } from '#utils/queries/index.mjs';

/**
* Generates the simplified JSON version of the API docs
Expand Down
5 changes: 3 additions & 2 deletions packages/core/src/generators/metadata/generate.mjs
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
'use strict';

import getConfig from '#utils/configuration/index.mjs';
import { loadFromURL } from '#utils/loaders.mjs';

import { parseApiDoc } from './utils/parse.mjs';
import getConfig from '../../utils/configuration/index.mjs';
import { loadFromURL } from '../../utils/loaders.mjs';

/**
* Process a chunk of API doc files in a worker thread.
Expand Down
17 changes: 9 additions & 8 deletions packages/core/src/generators/metadata/utils/parse.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,15 @@ import { remove } from 'unist-util-remove';
import { selectAll } from 'unist-util-select';
import { SKIP, visit } from 'unist-util-visit';

import {
DEPRECATION_HEADING_REGEX,
IGNORE_STABILITY_STEMS,
} from '#generators/metadata/constants.mjs';
import { UNIST } from '#utils/queries/index.mjs';
import { getRemark as remark } from '#utils/remark.mjs';
import { relative } from '#utils/url.mjs';

import { resolveTypeAnnotations } from './resolveTypes.mjs';
import createNodeSlugger from './slugger.mjs';
import { transformNodeToHeading } from './transformers.mjs';
import {
Expand All @@ -18,14 +27,6 @@ import {
visitTextWithUnixManualNode,
visitYAML,
} from './visitors.mjs';
import { UNIST } from '../../../utils/queries/index.mjs';
import { getRemark as remark } from '../../../utils/remark.mjs';
import { relative } from '../../../utils/url.mjs';
import {
DEPRECATION_HEADING_REGEX,
IGNORE_STABILITY_STEMS,
} from '../constants.mjs';
import { resolveTypeAnnotations } from './resolveTypes.mjs';

/**
* This generator generates a flattened list of metadata entries from a API doc
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import { parseSync } from '@swc/wasm';
import { visit } from 'unist-util-visit';

import logger from '#logger/index.mjs';
import { walk } from '#utils/swc.mjs';

import { lookupTypeName, resolveTypeReference } from './transformers.mjs';
import logger from '../../../logger/index.mjs';
import { walk } from '../../../utils/swc.mjs';

// `null` is a keyword kind in SWC, unlike most parsers which treat it as a literal type
const KEYWORDS = new Set([
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/generators/metadata/utils/slugger.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import GitHubSlugger, { slug as defaultSlugFn } from 'github-slugger';

import { DOC_API_SLUGS_REPLACEMENTS } from '../constants.mjs';
import { DOC_API_SLUGS_REPLACEMENTS } from '#generators/metadata/constants.mjs';

/**
* Creates a modified version of the GitHub Slugger
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ import {
DOC_MAN_BASE_URL,
DOC_API_HEADING_TYPES,
MODULE_QUALIFIED_NAME,
} from '../constants.mjs';
} from '#generators/metadata/constants.mjs';
import BUILTIN_TYPE_MAP from '#generators/metadata/maps/builtin.json' with { type: 'json' };
import MDN_TYPE_MAP from '#generators/metadata/maps/mdn.json' with { type: 'json' };
import { transformNodesToString } from '#utils/unist.mjs';

import { slug } from './slugger.mjs';
import { transformNodesToString } from '../../../utils/unist.mjs';
import BUILTIN_TYPE_MAP from '../maps/builtin.json' with { type: 'json' };
import MDN_TYPE_MAP from '../maps/mdn.json' with { type: 'json' };

/**
* @param {string} text The inner text
Expand Down
7 changes: 4 additions & 3 deletions packages/core/src/generators/metadata/utils/visitors.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@

import { SKIP } from 'unist-util-visit';

import { QUERIES } from '#utils/queries/index.mjs';
import { getRemark as remark } from '#utils/remark.mjs';
import { transformNodesToString } from '#utils/unist.mjs';

import { transformUnixManualToLink } from './transformers.mjs';
import { extractYamlContent, parseYAMLIntoMetadata } from './yaml.mjs';
import { QUERIES } from '../../../utils/queries/index.mjs';
import { getRemark as remark } from '../../../utils/remark.mjs';
import { transformNodesToString } from '../../../utils/unist.mjs';

/**
* Updates a Markdown link into a HTML link for API docs
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/generators/metadata/utils/yaml.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import yaml from 'yaml';

import { QUERIES } from '../../../utils/queries/index.mjs';
import { QUERIES } from '#utils/queries/index.mjs';

/**
* Extracts raw YAML content from a node
Expand Down
4 changes: 2 additions & 2 deletions packages/core/src/logger/transports/console.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import { styleText } from 'node:util';

import { prettifyLevel } from '../utils/colors.mjs';
import { prettifyTimestamp } from '../utils/time.mjs';
import { prettifyLevel } from '#logger/utils/colors.mjs';
import { prettifyTimestamp } from '#logger/utils/time.mjs';

/**
* Logs a formatted message to stdout for human-friendly CLI output.
Expand Down
6 changes: 3 additions & 3 deletions packages/core/src/logger/transports/github.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import { debug, notice, warning, error } from '@actions/core';

import { LogLevel } from '../constants.mjs';
import { prettifyLevel } from '../utils/colors.mjs';
import { prettifyTimestamp } from '../utils/time.mjs';
import { LogLevel } from '#logger/constants.mjs';
import { prettifyLevel } from '#logger/utils/colors.mjs';
import { prettifyTimestamp } from '#logger/utils/time.mjs';

const actions = {
[LogLevel.debug]: debug,
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/logger/utils/colors.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import { styleText } from 'node:util';

import { levelTags, levelToColorMap } from '../constants.mjs';
import { levelTags, levelToColorMap } from '#logger/constants.mjs';

/**
* Returns a styled, uppercase log level tag for CLI output with color mapping
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/parsers/markdown.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import { coerce } from 'semver';

import { loadFromURL } from '../utils/loaders.mjs';
import { loadFromURL } from '#utils/loaders.mjs';

// A ReGeX for retrieving Node.js version headers from the CHANGELOG.md
const NODE_VERSIONS_REGEX = /\* \[Node\.js ([0-9.]+)\]\S+ (.*)\r?\n/g;
Expand Down
4 changes: 2 additions & 2 deletions packages/core/src/threading/chunk-worker.mjs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { loadGenerator } from '../generators/loader.mjs';
import { setConfig } from '../utils/configuration/index.mjs';
import { loadGenerator } from '#generators/loader.mjs';
import { setConfig } from '#utils/configuration/index.mjs';

/**
* Processes a chunk of items using the specified generator's processChunk method.
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/threading/index.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import Piscina from 'piscina';

import logger from '../logger/index.mjs';
import logger from '#logger/index.mjs';

const poolLogger = logger.child('WorkerPool');

Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/threading/parallel.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use strict';

import logger from '../logger/index.mjs';
import logger from '#logger/index.mjs';

const parallelLogger = logger.child('parallel');

Expand Down
12 changes: 6 additions & 6 deletions packages/core/src/utils/configuration/index.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ import { coerce } from 'semver';
import {
loadGenerators,
resolveGeneratorSpecifier,
} from '../../generators/loader.mjs';
import logger from '../../logger/index.mjs';
import { parseChangelog, parseIndex } from '../../parsers/markdown.mjs';
import { enforceArray } from '../array.mjs';
import { leftHandAssign } from '../generators.mjs';
import { deepMerge } from '../misc.mjs';
} from '#generators/loader.mjs';
import logger from '#logger/index.mjs';
import { parseChangelog, parseIndex } from '#parsers/markdown.mjs';
import { enforceArray } from '#utils/array.mjs';
import { leftHandAssign } from '#utils/generators.mjs';
import { deepMerge } from '#utils/misc.mjs';

const configExplorer = cosmiconfig('doc-kit');

Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/utils/configuration/types.d.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { SemVer } from 'semver';
import type { ReleaseEntry } from '../../parsers/types';
import type { ReleaseEntry } from '#parsers/types';

export type Configuration = {
global: GlobalConfiguration;
Expand Down
3 changes: 2 additions & 1 deletion packages/core/src/utils/queries/index.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
'use strict';

import { transformNodesToString } from '../unist.mjs';
import { transformNodesToString } from '#utils/unist.mjs';

import { isTypedListItem, isTypedList } from './utils.mjs';

// This defines the actual REGEX Queries
Expand Down
7 changes: 4 additions & 3 deletions packages/core/src/utils/signature/parseList.mjs
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
import { leftHandAssign } from '#utils/generators.mjs';
import { QUERIES, UNIST } from '#utils/queries/index.mjs';
import { transformNodesToString } from '#utils/unist.mjs';

import {
DEFAULT_EXPRESSION,
LEADING_HYPHEN,
NAME_EXPRESSION,
} from './constants.mjs';
import parseSignature from './parseSignature.mjs';
import { leftHandAssign } from '../generators.mjs';
import { QUERIES, UNIST } from '../queries/index.mjs';
import { transformNodesToString } from '../unist.mjs';

/**
* Extracts and removes a specific pattern from a text string while storing the result in a key of the `current` object.
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/utils/type-annotations/hast.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use strict';

import { highlighter } from '../highlighter.mjs';
import { highlighter } from '#utils/highlighter.mjs';

const [lightTheme, darkTheme] = highlighter.shiki.getLoadedThemes();

Expand Down
Loading