diff --git a/packages/apidom-parser-adapter-api-design-systems-yaml/config/api-extractor/api-extractor.json b/packages/apidom-parser-adapter-api-design-systems-yaml/config/api-extractor/api-extractor.json new file mode 100644 index 0000000000..40bee5b261 --- /dev/null +++ b/packages/apidom-parser-adapter-api-design-systems-yaml/config/api-extractor/api-extractor.json @@ -0,0 +1,5 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "extends": "../../../../api-extractor.json", + "mainEntryPointFilePath": "../../types/adapter.d.ts" +} diff --git a/packages/apidom-parser-adapter-api-design-systems-yaml/config/rollup/types.dist.js b/packages/apidom-parser-adapter-api-design-systems-yaml/config/rollup/types.dist.js deleted file mode 100644 index 6ecc45f65c..0000000000 --- a/packages/apidom-parser-adapter-api-design-systems-yaml/config/rollup/types.dist.js +++ /dev/null @@ -1,11 +0,0 @@ -import dts from 'rollup-plugin-dts'; - -const config = [ - { - input: './types/adapter.d.ts', - output: [{ file: 'types/dist.d.ts', format: 'es' }], - plugins: [dts()], - }, -]; - -export default config; diff --git a/packages/apidom-parser-adapter-api-design-systems-yaml/package.json b/packages/apidom-parser-adapter-api-design-systems-yaml/package.json index 1d1361dc7a..067c898cdc 100644 --- a/packages/apidom-parser-adapter-api-design-systems-yaml/package.json +++ b/packages/apidom-parser-adapter-api-design-systems-yaml/package.json @@ -11,11 +11,11 @@ "unpkg": "./dist/apidom-parser-adapter-api-design-systems-yaml.browser.min.js", "main": "./src/adapter.cjs", "exports": { - "types": "./types/dist.d.ts", + "types": "./types/apidom-parser-adapter-api-design-systems-yaml.d.ts", "import": "./src/adapter.mjs", "require": "./src/adapter.cjs" }, - "types": "./types/dist.d.ts", + "types": "./types/apidom-parser-adapter-api-design-systems-yaml.d.ts", "scripts": { "build": "npm run clean && run-p --max-parallel ${CPU_CORES:-2} typescript:declaration build:es build:cjs build:umd:browser", "build:es": "cross-env BABEL_ENV=es babel src --out-dir src --extensions '.ts' --out-file-extension '.mjs' --root-mode 'upward'", @@ -25,7 +25,7 @@ "lint:fix": "eslint ./ --fix", "clean": "rimraf --glob 'src/**/*.mjs' 'src/**/*.cjs' 'test/**/*.mjs' ./dist ./types", "typescript:check-types": "tsc --noEmit && tsc -p ./test/tsconfig.json --noEmit", - "typescript:declaration": "tsc -p tsconfig.declaration.json && rollup -c config/rollup/types.dist.js", + "typescript:declaration": "tsc -p tsconfig.declaration.json && api-extractor run -l -c ./config/api-extractor/api-extractor.json", "test": "npm run build:es && cross-env BABEL_ENV=es babel test --out-dir test --extensions '.ts' --out-file-extension '.mjs' --root-mode 'upward' && cross-env NODE_ENV=test mocha", "prepack": "copyfiles -u 3 ../../LICENSES/* LICENSES && copyfiles -u 2 ../../NOTICE .", "postpack": "rimraf NOTICE LICENSES" @@ -49,7 +49,7 @@ "src/**/*.mjs", "src/**/*.cjs", "dist/", - "types/dist.d.ts", + "types/apidom-parser-adapter-api-design-systems-yaml.d.ts", "LICENSES", "NOTICE", "README.md", diff --git a/packages/apidom-parser-adapter-api-design-systems-yaml/src/adapter.ts b/packages/apidom-parser-adapter-api-design-systems-yaml/src/adapter.ts index 5d2f8d7e60..debe9a4221 100644 --- a/packages/apidom-parser-adapter-api-design-systems-yaml/src/adapter.ts +++ b/packages/apidom-parser-adapter-api-design-systems-yaml/src/adapter.ts @@ -9,12 +9,21 @@ import apiDesignSystemsNamespace, { MainElement } from '@swagger-api/apidom-ns-a export { default as mediaTypes } from './media-types.ts'; +/** + * @public + */ export const detectionRegExp = /(?^(["']?)version\2\s*:\s*(["']?)(?2021-05-07)\3)|(?"version"\s*:\s*"(?2021-05-07)")/m; +/** + * @public + */ export const detect = async (source: string): Promise => detectionRegExp.test(source) && (await detectYAML(source)); +/** + * @public + */ export const parse = async ( source: string, options: Record = {}, @@ -33,4 +42,7 @@ export const parse = async ( return parseResultElement; }; +/** + * @public + */ export const namespace = createNamespace(apiDesignSystemsNamespace); diff --git a/packages/apidom-parser-adapter-api-design-systems-yaml/src/media-types.ts b/packages/apidom-parser-adapter-api-design-systems-yaml/src/media-types.ts index 2e8c0e80c1..5cae449017 100644 --- a/packages/apidom-parser-adapter-api-design-systems-yaml/src/media-types.ts +++ b/packages/apidom-parser-adapter-api-design-systems-yaml/src/media-types.ts @@ -1,5 +1,8 @@ import { mediaTypes, ApiDesignSystemsMediaTypes } from '@swagger-api/apidom-ns-api-design-systems'; +/** + * @public + */ const yamlMediaTypes = new ApiDesignSystemsMediaTypes( ...mediaTypes.filterByFormat('generic'), ...mediaTypes.filterByFormat('yaml'),