vis-dev-utils 4.0.45 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/babel-preset/index.cjs +102 -0
- package/babel-preset/index.cjs.map +1 -0
- package/babel-preset/{index.js → index.mjs} +58 -31
- package/babel-preset/index.mjs.map +1 -0
- package/bin/ci-utils.js +35 -41
- package/bin/ci-utils.js.map +1 -1
- package/bin/generate-examples-index.js +779 -1265
- package/bin/generate-examples-index.js.map +1 -1
- package/bin/test-e2e-interop.js +431 -3492
- package/bin/test-e2e-interop.js.map +1 -1
- package/declarations/babel-preset/index.d.ts +23 -0
- package/declarations/babel-preset/index.d.ts.map +1 -0
- package/declarations/ci-utils/index.d.ts +2 -0
- package/declarations/ci-utils/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/cli.d.ts +44 -0
- package/declarations/generate-examples-index/cli.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/builder.d.ts +53 -0
- package/declarations/generate-examples-index/content-builder/builder.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/common.d.ts +47 -0
- package/declarations/generate-examples-index/content-builder/common.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/format.d.ts +5 -0
- package/declarations/generate-examples-index/content-builder/format.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/html/index.d.ts +3 -0
- package/declarations/generate-examples-index/content-builder/html/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/index.d.ts +6 -0
- package/declarations/generate-examples-index/content-builder/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/md/index.d.ts +3 -0
- package/declarations/generate-examples-index/content-builder/md/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/playground/codepen.d.ts +6 -0
- package/declarations/generate-examples-index/content-builder/playground/codepen.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/playground/data.d.ts +8 -0
- package/declarations/generate-examples-index/content-builder/playground/data.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/playground/index.d.ts +4 -0
- package/declarations/generate-examples-index/content-builder/playground/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/playground/jsfiddle.d.ts +6 -0
- package/declarations/generate-examples-index/content-builder/playground/jsfiddle.d.ts.map +1 -0
- package/declarations/generate-examples-index/content-builder/screenshots/index.d.ts +26 -0
- package/declarations/generate-examples-index/content-builder/screenshots/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/index.d.ts +2 -0
- package/declarations/generate-examples-index/index.d.ts.map +1 -0
- package/declarations/generate-examples-index/paths.d.ts +16 -0
- package/declarations/generate-examples-index/paths.d.ts.map +1 -0
- package/declarations/generate-examples-index/types.d.ts +61 -0
- package/declarations/generate-examples-index/types.d.ts.map +1 -0
- package/declarations/module/constants.d.ts +2 -0
- package/declarations/module/constants.d.ts.map +1 -0
- package/declarations/{generate-rollup-configuration → module/generate-rollup-configuration}/index.d.ts +4 -3
- package/declarations/module/generate-rollup-configuration/index.d.ts.map +1 -0
- package/declarations/{header.d.ts → module/header.d.ts} +1 -3
- package/declarations/module/header.d.ts.map +1 -0
- package/declarations/module/index.d.ts.map +1 -0
- package/declarations/module/inspect-npm-pack.d.ts +8 -0
- package/declarations/module/inspect-npm-pack.d.ts.map +1 -0
- package/declarations/module/util.d.ts.map +1 -0
- package/declarations/test-e2e-interop/cli.d.ts +18 -0
- package/declarations/test-e2e-interop/cli.d.ts.map +1 -0
- package/declarations/test-e2e-interop/index.d.ts +2 -0
- package/declarations/test-e2e-interop/index.d.ts.map +1 -0
- package/declarations/test-e2e-interop/test.d.ts +23 -0
- package/declarations/test-e2e-interop/test.d.ts.map +1 -0
- package/declarations/test-e2e-interop/util.d.ts +49 -0
- package/declarations/test-e2e-interop/util.d.ts.map +1 -0
- package/dist/vis-dev-utils.cjs +871 -0
- package/dist/vis-dev-utils.cjs.map +1 -0
- package/dist/vis-dev-utils.mjs +864 -0
- package/dist/vis-dev-utils.mjs.map +1 -0
- package/package.json +85 -63
- package/babel-register/index.js +0 -110
- package/babel-register/index.js.map +0 -1
- package/declarations/constants.d.ts +0 -2
- package/declarations/constants.d.ts.map +0 -1
- package/declarations/generate-rollup-configuration/index.d.ts.map +0 -1
- package/declarations/header.d.ts.map +0 -1
- package/declarations/index.d.ts.map +0 -1
- package/declarations/inspect-npm-pack.d.ts +0 -8
- package/declarations/inspect-npm-pack.d.ts.map +0 -1
- package/declarations/util.d.ts.map +0 -1
- package/dist/vis-dev-utils.cjs.js +0 -777
- package/dist/vis-dev-utils.cjs.js.map +0 -1
- package/dist/vis-dev-utils.esm.js +0 -771
- package/dist/vis-dev-utils.esm.js.map +0 -1
- package/lib/header.d.ts +0 -38
- package/lib/header.d.ts.map +0 -1
- package/lib/header.js +0 -85
- package/lib/header.js.map +0 -1
- package/lib/inspect-npm-pack.d.ts +0 -8
- package/lib/inspect-npm-pack.d.ts.map +0 -1
- package/lib/inspect-npm-pack.js +0 -74
- package/lib/inspect-npm-pack.js.map +0 -1
- /package/declarations/{index.d.ts → module/index.d.ts} +0 -0
- /package/declarations/{util.d.ts → module/util.d.ts} +0 -0
- /package/eslint-shareable-config/{index.js → index.cjs} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vis-dev-utils.mjs","sources":["../src/module/constants.ts","../src/module/header.ts","../src/module/generate-rollup-configuration/index.ts","../src/module/inspect-npm-pack.ts"],"sourcesContent":["export const BABEL_IGNORE_RE = /[\\\\/]node_modules[\\\\/](?!.*[\\\\/]esnext[\\\\/])/;\n","import { readFile } from \"fs/promises\";\n\n/**\n * Take a string and return a doc block comment.\n * @param string - The raw text to be included in the comment.\n * @throws If the string already contains a comment.\n * @returns A block doc comment string that can be for example prepended to a\n * bundled JavaScript file.\n */\nexport function textToComment(string: string): string {\n if (string.includes(\"*/\")) {\n throw new Error(\n \"Don't include comments in the input string. It will be converted automatically.\",\n );\n }\n\n return (\n \"/**\\n\" +\n string\n // Remove empty lines from the start.\n .replace(/^[\\n\\r]*/, \"\")\n // Remove empty lines from the end.\n .replace(/[\\n\\r\\s]*$/, \"\")\n // Process each line on it's own from now on.\n .split(\"\\n\")\n // Prefix each line with an asterisk.\n .map((line) => \" * \" + line)\n // Remove trailing white space.\n .map((line) => line.replace(/[^\\S\\r\\n]*$/, \"\"))\n // Join back into a string.\n .join(\"\\n\") +\n \"\\n */\\n\"\n );\n}\n\nconst buildHeader = ({\n customText,\n date,\n description,\n homepage,\n name,\n version,\n}: HeaderOptions): string =>\n textToComment(`\n${name}\n${homepage}\n\n${description}\n\n@version ${version}\n@date ${date}\n\n@copyright (c) 2011-2017 Almende B.V, http://almende.com\n@copyright (c) 2017-2019 visjs contributors, https://github.com/visjs\n\n@license\nvis.js is dual licensed under both\n\n 1. The Apache 2.0 License\n http://www.apache.org/licenses/LICENSE-2.0\n\n and\n\n 2. The MIT License\n http://opensource.org/licenses/MIT\n\nvis.js may be distributed under either license.\n\n${customText}\n`);\n\n/**\n * Options for {@link generateHeader}.\n */\nexport interface HeaderOptions {\n /** Any text to be appended to the standard header. */\n customText: string;\n /** The build date. */\n date: string;\n /** A description of the project. */\n description: string;\n /** An URL to the homepage of the project. */\n homepage: string;\n /** The name of the project. */\n name: string;\n /** The version of the build. */\n version: string;\n}\n\nconst defaultDate = new Date().toISOString();\n\n/**\n * Generate a dynamic header banner.\n * @param options - Optional information to be included. Otherwise no custom\n * text will be appended, the date will be the time when this module was\n * imported (most likely the start of the build process) and the rest will be\n * read from package.json.\n * @throws If the string already contains a comment.\n * @returns Ready to use banner text.\n */\nexport async function generateHeader(\n options?: Partial<HeaderOptions>,\n): Promise<string> {\n const packageJSON = JSON.parse(\n await readFile(\n (await import(\"find-up\")).findUpSync(\"package.json\")!,\n \"utf8\",\n ),\n );\n\n const defaultDescription = packageJSON.description;\n const defaultHomepage = packageJSON.homepage;\n const defaultName = packageJSON.name;\n const defaultVersion = packageJSON.version;\n\n const {\n customText = \"\",\n date = defaultDate,\n description = defaultDescription,\n homepage = defaultHomepage,\n name = defaultName,\n version = defaultVersion,\n } = options || {};\n\n return buildHeader({\n customText,\n date,\n description,\n homepage,\n name,\n version,\n });\n}\n","import fs from \"node:fs/promises\";\nimport { fileURLToPath, URL } from \"node:url\";\nimport { type RollupOptions, type Plugin } from \"rollup\";\nimport analyzerPlugin from \"rollup-plugin-analyzer\";\nimport babelPlugin from \"@rollup/plugin-babel\";\nimport commonjsPlugin from \"@rollup/plugin-commonjs\";\nimport copyPlugin, { Target as CopyTarget } from \"rollup-plugin-copy\";\nimport jsonPlugin from \"@rollup/plugin-json\";\nimport nodeResolvePlugin from \"@rollup/plugin-node-resolve\";\nimport postcssAssetsPlugin from \"postcss-assets\";\nimport postcssPlugin from \"rollup-plugin-postcss\";\nimport stripCodePlugin from \"rollup-plugin-strip-code\";\nimport terserPlugin from \"@rollup/plugin-terser\";\nimport typescriptPlugin from \"@rollup/plugin-typescript\";\nimport { generateHeader } from \"../header\";\nimport { join, resolve, sep } from \"path\";\nimport { string as stringPlugin } from \"rollup-plugin-string\";\nimport {\n config as chaiConfig,\n expect as validateExpect,\n use as chaiUse,\n} from \"chai\";\n\nimport { BABEL_IGNORE_RE } from \"../constants\";\nimport { type HeaderOptions } from \"../header\";\nimport { type OptionalOptions } from \"../util\";\nimport { dirname } from \"node:path\";\n\nconst rawGlobby = import(\"globby\");\n\nchaiConfig.truncateThreshold = Number.MAX_SAFE_INTEGER;\n\nconst VIS_DEBUG = [\"1\", \"true\", \"y\", \"yes\"].includes(\n process.env[\"VIS_DEBUG\"] || \"false\",\n);\nconst VIS_TEST = [\"1\", \"true\", \"y\", \"yes\"].includes(\n process.env[\"VIS_TEST\"] || \"false\",\n);\n\n/**\n * Simple glob with workaround for non-posix paths.\n * @param pattern - Single glob pattern.\n * @returns Globbed paths.\n */\nasync function glob(\n pattern: string,\n): ReturnType<(typeof import(\"globby\"))[\"globby\"]> {\n return (await rawGlobby).globby(\n sep === \"\\\\\" ? pattern.replace(/\\\\/g, \"/\") : pattern,\n );\n}\n\nexport interface GRCOptions {\n /**\n * Where to look for files when inlining assets into CSS.\n */\n assets: string;\n /**\n * Additional files to be copied.\n */\n copyTargets: {\n /**\n * These will be copied relative to the root of each bundle (esnext,\n * standalone…).\n */\n bundle: CopyTarget[];\n /**\n * These will be copied relative to the root of each variant of each bundle\n * (esnext/esm, esnext/umd, standalone/esm…).\n */\n variant: CopyTarget[];\n };\n /**\n * The base dir with entry points for various builds. The extensions\n * determines whether TypeScript processing will be used.\n */\n entryPoints: string;\n /**\n * These are the dependencies that would cause interoperability issues if they\n * were bundled. A notable example here is vis-data.\n */\n externalForPeerBuild: string[];\n /**\n * Passed straight to Rollup.\n */\n globals: Record<string, string>;\n /**\n * Options for {@link generateHeader}.\n */\n header: Partial<HeaderOptions>;\n /**\n * This will be used as a file name with appropriate extensions appended\n * (like .js, .min.js or .css).\n */\n libraryFilename: string;\n /**\n * Simply required package.json.\n */\n packageJSON: Partial<{\n browser: string;\n dependencies: Record<string, string>;\n devDependencies: Record<string, string>;\n exports: Record<string, Record<string, string | undefined> | undefined>;\n files: string[];\n jsnext: string;\n main: string;\n module: string;\n peerDependencies: Record<string, string>;\n types: string;\n }>;\n /**\n * The path to tsconfig.json to be used in this build.\n */\n tsconfig: string;\n}\n\n/**\n * These are the dependencies that follow standalone/peer/ESNext export\n * structure.\n */\nconst dependenciesWithVisExportStructure = [\n \"vis-data\",\n \"vis-graph3d\",\n \"vis-network\",\n \"vis-timeline\",\n \"vis-util\",\n \"vis-uuid\",\n];\n\n/**\n * This ensures that dependencies on Vis projects point to ESNext builds.\n * @param deps - The original dependencies as listed in package.json.\n * @returns An array of dependencies for Rollup.\n */\nfunction processDependencies(\n deps: string[] | Record<string, string>,\n): string[] {\n const depNames = Array.isArray(deps) ? deps : Object.keys(deps);\n\n return depNames.flatMap((key): string[] =>\n dependenciesWithVisExportStructure.includes(key)\n ? [key + \"/esnext\"]\n : [key],\n );\n}\n\n/**\n * This ensures that all Vis projects are imported using ESNext builds.\n * Importing standalone versions will not only cause problems in production but\n * will log warnings during build process and won't work at all.\n * @param globals - The original globals.\n * @returns Globals forcing the use of ESNext builds for Vis projects.\n */\nfunction processGlobals(\n globals: Record<string, string>,\n): Record<string, string> {\n return Object.entries(globals).reduce<Record<string, string>>(\n (acc, [key, value]): Record<string, string> => {\n acc[\n dependenciesWithVisExportStructure.includes(key) ? key + \"/esnext\" : key\n ] = value;\n\n return acc;\n },\n Object.create(null),\n );\n}\n\n/**\n * @param path\n */\nfunction isTS(path: string): boolean {\n return path.endsWith(\".ts\");\n}\n\n/*\n * Make sure that Chai doesn't throw and therefore stop execution on failed\n * validations during debugging.\n */\nconst validate: (\n callback: (expect: Chai.ExpectStatic) => Promise<void> | void,\n) => Promise<void> = VIS_DEBUG\n ? async (\n callback: (expect: Chai.ExpectStatic) => Promise<void> | void,\n ): Promise<void> => {\n try {\n await callback(validateExpect);\n } catch (error) {\n console.error(error);\n }\n }\n : async (\n callback: (expect: Chai.ExpectStatic) => Promise<void> | void,\n ): Promise<void> => {\n await callback(validateExpect);\n };\n\n/**\n * Transform ESNext import paths to match the build version being constructed.\n * @param buildVariant - ESNext or peer build. This is not available for\n * standalone as only peer and ESNext have imports.\n * @param moduleFormat - What kind of module system to use.\n * @returns Path overrides for Rollup.\n */\nfunction getPaths(\n buildVariant: \"esnext\" | \"peer\",\n moduleFormat: \"esm\" | \"umd\",\n): Record<string, string> {\n /**\n * @param lib\n */\n function getPath(\n lib:\n | \"charts\"\n | \"data\"\n | \"graph3d\"\n | \"network\"\n | \"timeline\"\n | \"util\"\n | \"uuid\",\n ): Record<string, string> {\n return {\n [`vis-${lib}/esnext`]: `vis-${lib}/${buildVariant}/${moduleFormat}/vis-${lib}.js`,\n };\n }\n\n return {\n ...getPath(\"charts\"),\n ...getPath(\"data\"),\n ...getPath(\"graph3d\"),\n ...getPath(\"network\"),\n ...getPath(\"timeline\"),\n ...getPath(\"util\"),\n ...getPath(\"uuid\"),\n };\n}\n\n/**\n * Change target's dest so that it's relative to given dir(s).\n * @param dirs - The directories there targets should be relative to.\n * @returns A function that can be directly supplied to Array.map().\n */\nfunction scopeCopyTarget(\n ...dirs: readonly string[]\n): (target: CopyTarget) => CopyTarget {\n return function (target): CopyTarget {\n const dest = (\n Array.isArray(target.dest) ? target.dest : [target.dest]\n ) as readonly string[];\n\n const bundleDest = dest.flatMap((path): string[] =>\n dirs.map((dir): string => join(dir, path)),\n );\n\n return {\n ...target,\n dest: bundleDest,\n };\n };\n}\n\nconst injectCSS = true;\nconst minimize = true;\nconst transpile = true;\nconst generateRollupPluginArray = (\n libraryFilename: string,\n assets: string,\n copyTargetsBundle: readonly CopyTarget[],\n copyTargetsVariant: readonly CopyTarget[],\n tsconfig: string,\n mode: \"production\" | \"development\" | \"test\",\n bundleType: \"esnext\" | \"standalone\" | \"peer\",\n {\n injectCSS = false,\n minimize = false,\n strip = mode === \"production\",\n transpile = false,\n typescript = false,\n } = {},\n): Plugin[] => {\n const fullLibraryFilename = `${libraryFilename}${minimize ? \".min\" : \"\"}`;\n\n const bundleDir = bundleType;\n const bundleVariantDirs = [\"esm\", \"umd\"].map((variant): string =>\n join(bundleDir, variant),\n );\n\n return [\n ...(strip\n ? [\n // This should be first because it removes code from source files.\n // It's much easier to follow if the removal happens before any\n // transformations.\n stripCodePlugin({\n start_comment: \"develblock:start\",\n end_comment: \"develblock:end\",\n }),\n ]\n : [\n // Remove the comments marking devel blocks as they can cause problems\n // later on because transpilation shuffles things around which may\n // lead to all kinds of issues including syntax errors.\n stripCodePlugin({\n pattern: /[\\t ]*\\/\\* ?develblock:(start|end) ?\\*\\//g,\n }),\n ]),\n analyzerPlugin(VIS_DEBUG ? undefined : { limit: 10, summaryOnly: true }),\n copyPlugin({\n verbose: VIS_DEBUG,\n targets: [\n // JavaScript\n {\n src: resolve(\n dirname(fileURLToPath(new URL(import.meta.url))),\n \"assets/bundle-root.js\",\n ),\n dest: bundleDir,\n rename: \"index.js\",\n },\n {\n src: resolve(\n dirname(fileURLToPath(new URL(import.meta.url))),\n \"assets/bundle-index.js\",\n ),\n dest: bundleVariantDirs,\n rename: \"index.js\",\n transform: (content: Buffer): string =>\n content.toString().replace(\"{{filename}}\", libraryFilename),\n },\n\n // TypeScript\n {\n src: resolve(\n dirname(fileURLToPath(new URL(import.meta.url))),\n \"assets/bundle-root.d.ts\",\n ),\n dest: bundleDir,\n rename: \"index.d.ts\",\n },\n {\n src: resolve(\n dirname(fileURLToPath(new URL(import.meta.url))),\n \"assets/bundle-index.d.ts\",\n ),\n dest: bundleVariantDirs,\n rename: \"index.d.ts\",\n transform: (content: Buffer): string =>\n content.toString().replace(\"{{filename}}\", libraryFilename),\n },\n {\n src: resolve(\n dirname(fileURLToPath(new URL(import.meta.url))),\n \"assets/bundle-file.d.ts\",\n ),\n dest: bundleVariantDirs,\n rename: `${fullLibraryFilename}.d.ts`,\n transform: (content: Buffer): string =>\n content.toString().replace(\"{{bundle-type}}\", bundleType),\n },\n\n // Custom\n ...copyTargetsBundle.map(scopeCopyTarget(bundleDir)),\n ...copyTargetsVariant.map(scopeCopyTarget(...bundleVariantDirs)),\n ],\n }),\n nodeResolvePlugin({\n browser: true,\n extensions: [\".js\", \".json\", \".ts\"],\n mainFields: [\"jsnext\", \"module\", \"main\"],\n preferBuiltins: false,\n }),\n ...(typescript\n ? [\n typescriptPlugin({\n tsconfig,\n }),\n ]\n : []),\n commonjsPlugin(),\n postcssPlugin({\n extract: !injectCSS && `styles/${fullLibraryFilename}.css`,\n inject: injectCSS,\n minimize,\n // Prevent the sourcemaps from being injected into JS files.\n sourceMap: !injectCSS,\n plugins: [\n postcssAssetsPlugin({\n loadPaths: [assets],\n }),\n ],\n }),\n jsonPlugin(),\n stringPlugin({\n include: \"**/*.txt\",\n }),\n ...(transpile\n ? [\n babelPlugin({\n babelHelpers: \"runtime\",\n babelrc: false,\n configFile: false,\n exclude: BABEL_IGNORE_RE,\n extensions: [\".js\", \".ts\"],\n presets: [[\"vis-dev-utils/babel-preset\", { ts: true }]],\n }),\n ]\n : []),\n ...(minimize\n ? [\n terserPlugin({\n format: {\n comments: \"some\",\n },\n }),\n ]\n : []),\n ];\n};\n\n/**\n * Prepare ready to use Rollup configuration file.\n * @remarks\n * IMPORTANT: Use `babel.config.js` in the root of the project, `.babelrc` files\n * are ignored.\n *\n * You can surround any piece of code with `stripInProduction: { debug code }`\n * to strip it from the generated bundles unless VIS_DEBUG=true environmental\n * variable is set. This is useful for example to render bounding boxes during\n * debugging but automatically switch it off without any performance or bundle\n * size penalty in production. Debugger statements are also automatically\n * stripped.\n *\n * Plugins:\n * - `\\@rollup/plugin-babel` (skipped in ESNext)\n * - `\\@rollup/plugin-commonjs`\n * - `\\@rollup/plugin-json`\n * - `\\@rollup/plugin-node-resolve`\n * - `\\@rollup/plugin-strip` (skipped with VIS_DEBUG=true env var)\n * - `\\@rollup/plugin-terser` (only in minified)\n * - `postcss-assets`\n * - `rollup-plugin-copy`\n * - `rollup-plugin-postcss`\n * - `rollup-plugin-typescript2` (skipped if the entry is .js)\n * @param options - See {@link GRCOptions}.\n * @param mode - Whether the code should be processed for production,\n * development or testing.\n * @returns Ready to use configuration object that can be just exported from\n * `rollup.config.js` or mutated in any way if necessary.\n */\nexport async function generateRollupConfiguration(\n options: OptionalOptions<GRCOptions>,\n mode: \"production\" | \"development\" | \"test\" = VIS_TEST\n ? \"test\"\n : VIS_DEBUG\n ? \"development\"\n : \"production\",\n): Promise<RollupOptions[]> {\n const {\n assets = \".\",\n copyTargets: {\n bundle: copyTargetsBundle = [],\n variant: copyTargetsVariant = [],\n } = {} as GRCOptions[\"copyTargets\"],\n externalForPeerBuild = [],\n globals = {},\n header = { name: \"Unknown Library\" },\n libraryFilename = \"unknown-library\",\n packageJSON: {\n dependencies = {},\n devDependencies = {},\n peerDependencies = {},\n ...packageJSONRest\n } = {} as GRCOptions[\"packageJSON\"],\n entryPoints: entryPoint = \"./src\",\n tsconfig = \"tsconfig.json\",\n }: GRCOptions = (options || {}) as GRCOptions;\n\n validate((expect): void => {\n // Note: Every array is a superset of empty array.\n if (Object.keys(peerDependencies).length > 0) {\n expect(\n Object.keys(dependencies),\n \"The dependencies and peer dependencies have to be disjoint sets\",\n )\n .to.be.an(\"array\")\n .that.does.not.include.any.members(Object.keys(peerDependencies));\n }\n });\n validate((expect): void => {\n expect(\n Object.keys(devDependencies),\n \"For convenience all peer dependencies also have to be dev dependencies\",\n )\n .to.be.an(\"array\")\n .that.includes.all.members(Object.keys(peerDependencies));\n });\n validate((expect): void => {\n expect(\n Object.keys(peerDependencies),\n \"Peer build externals have to be a subset of peer dependencies\",\n )\n .to.be.an(\"array\")\n .that.includes.all.members(externalForPeerBuild);\n });\n validate((expect): void => {\n expect(\n [...Object.keys(dependencies), ...Object.keys(peerDependencies)].sort(),\n \"Globals have to be provided for all runtime and peer dependencies but nothing else\",\n )\n .to.be.an(\"array\")\n .that.deep.equals(Object.keys(globals).sort());\n });\n\n validate(async (expect): Promise<void> => {\n expect(resolve(assets), \"Assets have to be a directory\").to.be.a(\"string\");\n const stats = await fs.stat(resolve(assets));\n expect(stats.isDirectory(), \"Assets have to be a directory\").to.be.true;\n });\n validate(async (expect): Promise<void> => {\n expect(entryPoint, \"The entry point has to be directory\").to.be.a(\"string\");\n const stats = await fs.stat(entryPoint);\n expect(stats.isDirectory(), \"The entry point has to be directory\").to.be\n .true;\n });\n const [esnextEntry, peerEntry, standaloneEntry] = await Promise.all(\n [\"ESNext\", \"peer\", \"standalone\"].map(async (name): Promise<string> => {\n const filenameGlob = `entry-${name.toLowerCase()}.{js,ts}`;\n const files = await glob(resolve(entryPoint, filenameGlob));\n\n validate(async (expect): Promise<void> => {\n expect(\n files,\n `There has to be a single entry file (${filenameGlob}) for the ${name} build`,\n )\n .to.have.lengthOf(1)\n .and.to.have.ownProperty(\"0\");\n const stats = await fs.stat(resolve(files[0]));\n expect(\n stats.isFile(),\n `The entry file (${filenameGlob}) for the ${name} build has to be a file`,\n ).to.be.true;\n });\n\n return files[0];\n }),\n );\n validate(async (expect): Promise<void> => {\n expect(\n resolve(\"./declarations\"),\n \"There has to be a directory with TypeScript declarations\",\n ).to.be.a(\"string\");\n const stats = await fs.stat(resolve(\"./declarations\"));\n expect(\n stats.isDirectory(),\n \"There has to be a directory with TypeScript declarations\",\n ).to.be.true;\n });\n\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"The directories with built files have to be included in the package\",\n )\n .to.have.ownProperty(\"files\")\n .that.is.an(\"array\")\n .and.includes.all.members([\n \"declarations\",\n \"esnext\",\n \"peer\",\n \"standalone\",\n ]);\n });\n\n const expectedExports = Object.fromEntries([\n [\n \".\",\n {\n import: `./peer/esm/${libraryFilename}.mjs`,\n require: `./peer/umd/${libraryFilename}.cjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\"./package.json\", \"./package.json\"],\n [\n \"./declarations/index.d.ts\",\n {\n types: \"./declarations/index.d.ts\",\n },\n ],\n ...[\"standalone\", \"peer\", \"esnext\"].flatMap(\n (variant): [string, Record<string, string>][] => [\n [\n `./${variant}`,\n {\n import: `./${variant}/esm/${libraryFilename}.mjs`,\n require: `./${variant}/umd/${libraryFilename}.cjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/esm/${libraryFilename}.js`,\n {\n import: `./${variant}/esm/${libraryFilename}.mjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/esm/${libraryFilename}.mjs`,\n {\n import: `./${variant}/esm/${libraryFilename}.mjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/esm/${libraryFilename}.min.js`,\n {\n import: `./${variant}/esm/${libraryFilename}.min.mjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/esm/${libraryFilename}.min.mjs`,\n {\n import: `./${variant}/esm/${libraryFilename}.min.mjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/umd/${libraryFilename}.js`,\n {\n require: `./${variant}/umd/${libraryFilename}.cjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/umd/${libraryFilename}.cjs`,\n {\n require: `./${variant}/umd/${libraryFilename}.cjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/umd/${libraryFilename}.min.js`,\n {\n require: `./${variant}/umd/${libraryFilename}.min.cjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n [\n `./${variant}/umd/${libraryFilename}.min.cjs`,\n {\n require: `./${variant}/umd/${libraryFilename}.min.cjs`,\n types: \"./declarations/index.d.ts\",\n },\n ],\n ],\n ),\n ]);\n\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's type property has to point to the declarations\",\n )\n .to.have.ownProperty(\"types\")\n .that.is.a(\"string\")\n .and.equals(\"./declarations/index.d.ts\")\n .and.is.oneOf(Object.keys(expectedExports));\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's browser property has to point to the minifed UMD build\",\n )\n .to.have.ownProperty(\"browser\")\n .that.is.a(\"string\")\n .and.equals(`./peer/umd/${libraryFilename}.min.cjs`)\n .and.is.oneOf(Object.keys(expectedExports));\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's main property has to point to the UMD build\",\n )\n .to.have.ownProperty(\"main\")\n .that.is.a(\"string\")\n .and.equals(`./peer/umd/${libraryFilename}.cjs`)\n .and.is.oneOf(Object.keys(expectedExports));\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's modul property has to point to the ESM build\",\n )\n .to.have.ownProperty(\"module\")\n .that.is.a(\"string\")\n .and.equals(`./peer/esm/${libraryFilename}.mjs`)\n .and.is.oneOf(Object.keys(expectedExports));\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's jsnext has to point to the ESNext build\",\n )\n .to.have.ownProperty(\"jsnext\")\n .that.is.a(\"string\")\n .and.equals(`./esnext/esm/${libraryFilename}.mjs`)\n .and.is.oneOf(Object.keys(expectedExports));\n });\n\n validate((expect): void => {\n expect(\n Object.fromEntries(\n Object.entries(packageJSONRest.exports ?? {}).filter(([key]): boolean =>\n Object.keys(expectedExports).includes(key),\n ),\n ),\n \"Package JSON's exports have to contain common entries\",\n ).to.deep.equal(expectedExports);\n });\n\n validate(async (expect): Promise<void> => {\n const [{ status }] = await Promise.allSettled([\n fs.access(resolve(\"./.babelrc\")),\n ]);\n expect(\n status,\n \"Babelrc is ignored. Use babel.config.js config file instead.\",\n ).to.equal(\"rejected\");\n });\n validate(async (expect): Promise<void> => {\n const [{ status }] = await Promise.allSettled([\n fs.access(resolve(\"./babel.config.js\")),\n ]);\n expect(status, \"There has to be a babel.config.js config file.\").to.equal(\n \"fulfilled\",\n );\n });\n\n const banner = await generateHeader(header);\n const external = {\n // No dependencies are bundled.\n esnext: processDependencies([\n ...Object.keys(dependencies),\n ...Object.keys(peerDependencies),\n\n // This will show a warning if any of them is used. The idea behind\n // it is that if someone accidentaly imports a dev dependency they\n // won't accidentaly add it to globals and Rollup will warn them\n // about their error.\n ...Object.keys(devDependencies),\n ]),\n // Only dependencies that cause compatibility issues are not bundled.\n peer: processDependencies(externalForPeerBuild),\n // No runtime dependencies, everything's bundled.\n standalone: [],\n };\n\n const commonOutput = {\n banner,\n dir: \".\",\n globals: processGlobals(globals),\n sourcemap: VIS_TEST ? \"inline\" : true,\n } as const;\n const commonOutputESM = {\n ...commonOutput,\n format: \"esm\",\n } as const;\n const commonOutputUMD = {\n ...commonOutput,\n exports: \"named\",\n extend: true,\n format: \"umd\",\n name: \"vis\",\n strict: false, // Regenerator runtime causes issues with CSP in strict mode.\n } as const;\n\n // Note: Binding more than 4 at a time is not typesafe in TS.\n const getPlugins = generateRollupPluginArray\n .bind(null, libraryFilename)\n .bind(null, assets)\n .bind(null, copyTargetsBundle)\n .bind(null, copyTargetsVariant)\n .bind(null, tsconfig)\n .bind(null, mode);\n\n return [\n {\n external: external.standalone,\n input: standaloneEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `standalone/esm/${libraryFilename}.js`,\n },\n {\n ...commonOutputESM,\n entryFileNames: `standalone/esm/${libraryFilename}.mjs`,\n },\n {\n ...commonOutputUMD,\n entryFileNames: `standalone/umd/${libraryFilename}.js`,\n },\n {\n ...commonOutputUMD,\n entryFileNames: `standalone/umd/${libraryFilename}.cjs`,\n },\n ],\n plugins: getPlugins(\"standalone\", {\n injectCSS,\n transpile,\n typescript: isTS(standaloneEntry),\n }),\n },\n {\n external: external.standalone,\n input: standaloneEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `standalone/esm/${libraryFilename}.min.js`,\n },\n {\n ...commonOutputESM,\n entryFileNames: `standalone/esm/${libraryFilename}.min.mjs`,\n },\n {\n ...commonOutputUMD,\n entryFileNames: `standalone/umd/${libraryFilename}.min.js`,\n },\n {\n ...commonOutputUMD,\n entryFileNames: `standalone/umd/${libraryFilename}.min.cjs`,\n },\n ],\n plugins: getPlugins(\"standalone\", {\n injectCSS,\n minimize,\n transpile,\n typescript: isTS(standaloneEntry),\n }),\n },\n\n {\n external: external.peer,\n input: peerEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `peer/esm/${libraryFilename}.js`,\n paths: getPaths(\"peer\", \"esm\"),\n },\n {\n ...commonOutputESM,\n entryFileNames: `peer/esm/${libraryFilename}.mjs`,\n paths: getPaths(\"peer\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `peer/umd/${libraryFilename}.js`,\n paths: getPaths(\"peer\", \"umd\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `peer/umd/${libraryFilename}.cjs`,\n paths: getPaths(\"peer\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"peer\", {\n transpile,\n typescript: isTS(peerEntry),\n }),\n },\n {\n external: external.peer,\n input: peerEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `peer/esm/${libraryFilename}.min.js`,\n paths: getPaths(\"peer\", \"esm\"),\n },\n {\n ...commonOutputESM,\n entryFileNames: `peer/esm/${libraryFilename}.min.mjs`,\n paths: getPaths(\"peer\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `peer/umd/${libraryFilename}.min.js`,\n paths: getPaths(\"peer\", \"umd\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `peer/umd/${libraryFilename}.min.cjs`,\n paths: getPaths(\"peer\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"peer\", {\n minimize,\n transpile,\n typescript: isTS(peerEntry),\n }),\n },\n\n {\n external: external.esnext,\n input: esnextEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `esnext/esm/${libraryFilename}.js`,\n paths: getPaths(\"esnext\", \"esm\"),\n },\n {\n ...commonOutputESM,\n entryFileNames: `esnext/esm/${libraryFilename}.mjs`,\n paths: getPaths(\"esnext\", \"esm\"),\n },\n {\n ...commonOutputESM,\n entryFileNames: `esnext/umd/${libraryFilename}.js`,\n paths: getPaths(\"esnext\", \"umd\"),\n },\n {\n ...commonOutputESM,\n entryFileNames: `esnext/umd/${libraryFilename}.cjs`,\n paths: getPaths(\"esnext\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"esnext\", {\n typescript: isTS(esnextEntry),\n }),\n },\n {\n external: external.esnext,\n input: esnextEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `esnext/esm/${libraryFilename}.min.js`,\n paths: getPaths(\"esnext\", \"esm\"),\n },\n {\n ...commonOutputESM,\n entryFileNames: `esnext/esm/${libraryFilename}.min.mjs`,\n paths: getPaths(\"esnext\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `esnext/umd/${libraryFilename}.min.js`,\n paths: getPaths(\"esnext\", \"umd\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `esnext/umd/${libraryFilename}.min.cjs`,\n paths: getPaths(\"esnext\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"esnext\", {\n minimize,\n typescript: isTS(esnextEntry),\n }),\n },\n ];\n}\n","import { execSync } from \"child_process\";\nimport { readFileSync } from \"fs\";\nimport { fileSync, setGracefulCleanup } from \"tmp-promise\";\n\nsetGracefulCleanup();\n\ninterface PackageInfo {\n id: string;\n name: string;\n version: string;\n size: number;\n unpackedSize: number;\n shasum: string;\n integrity: string;\n filename: string;\n files: FileInfo[];\n entryCount: number;\n bundled: string[];\n}\n\ninterface FileInfo {\n path: string;\n size: number;\n mode: number;\n}\n\nconst PACK_CMD = [\n \"npm\",\n \"pack\",\n // Don't create any package, we just need to see what would be packed.\n \"--dry-run\",\n // Prevents things like Husky from outputting to stdout, we don't need them\n // here anyway.\n \"--ignore-scripts\",\n // JSON is easier to parse and more stable between npm versions.\n \"--json\",\n];\n\n/**\n * @param textOrLines\n * @param message\n */\nfunction logStderr(textOrLines: unknown, message: string): never {\n console.group('\"npm pack\" output');\n console.error(textOrLines);\n console.groupEnd();\n\n throw new Error(message);\n}\n\n/**\n *\n */\nfunction runNpmPack(): PackageInfo[] {\n const tmpFile = fileSync().name;\n\n // There are issues with incomplete output when the stderr is read directly\n // into Node. Saving it into tmp file using shell redirection and reading it\n // from there doesn't exhibit those issues.\n execSync(`${PACK_CMD.join(\" \")} > ${tmpFile}`, {\n encoding: \"utf-8\",\n env: {\n ...process.env,\n LC_ALL: \"C\",\n NODE_ENV: \"production\",\n },\n });\n\n const stdout = readFileSync(tmpFile, \"utf-8\")\n // TODO: Why doesn't --ignore-scripts turn Husky off? It works in CLI.\n .replace(/^([^[]*)\\[\\n/, \"[\");\n\n try {\n return JSON.parse(stdout);\n } catch (error) {\n logStderr({ error, stdout }, 'Failed to parse \"npm pack\" JSON output.');\n }\n}\n\n/**\n * @param lines\n * @param packageInfo\n */\nfunction extractFiles(\n packageInfo: PackageInfo,\n): Record<string, Record<string, unknown>> {\n const files = packageInfo.files.map(\n ({ path, size }): [string, Record<string, unknown>] => [\n path,\n { empty: size === 0 },\n ],\n );\n\n if (files.length === 0) {\n logStderr(packageInfo, 'No files found in \"npm pack\" output.');\n }\n\n return Object.fromEntries(files);\n}\n\n/**\n * @param lines\n * @param packageInfo\n */\nfunction extractName(packageInfo: PackageInfo): string {\n const name = packageInfo.name;\n\n if (name == null) {\n logStderr(\n packageInfo,\n 'Can\\'t find the name of the package in \"npm pack\" output.',\n );\n }\n\n return name.replace(/^npm notice name: */, \"\");\n}\n\n/**\n *\n */\nexport function inspectNpmPack(): {\n name: string;\n files: Record<string, Record<string, unknown>>;\n} {\n const [packageInfo, ...unexpectedExtras] = runNpmPack();\n\n if (packageInfo == null) {\n logStderr(\n [packageInfo, ...unexpectedExtras],\n 'There was no output from \"npm pack\".',\n );\n }\n\n if (unexpectedExtras.length !== 0) {\n logStderr(\n [packageInfo, ...unexpectedExtras],\n 'Can\\'t process the output of \"npm pack\" if there are multiple packages.',\n );\n }\n\n const files = extractFiles(packageInfo);\n const name = extractName(packageInfo);\n\n return {\n name,\n files,\n };\n}\n"],"names":["chaiConfig","validateExpect","injectCSS","minimize","transpile","stringPlugin"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vis-dev-utils",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"description": "Development utilities for the Vis family projects.",
|
|
5
5
|
"homepage": "http://visjs.org/",
|
|
6
6
|
"license": "(Apache-2.0 OR MIT)",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
|
-
"url": "https://github.com/visjs/vis-dev-utils.git"
|
|
9
|
+
"url": "git+https://github.com/visjs/vis-dev-utils.git"
|
|
10
10
|
},
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/visjs/vis-dev-utils/issues"
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
"utils",
|
|
17
17
|
"vis"
|
|
18
18
|
],
|
|
19
|
+
"type": "module",
|
|
19
20
|
"scripts": {
|
|
20
|
-
"build": "run-s build:
|
|
21
|
+
"build": "run-s build:production build:declarations",
|
|
21
22
|
"build:declarations": "npx tsc --project tsconfig.declarations.json",
|
|
22
|
-
"build:
|
|
23
|
-
"
|
|
24
|
-
"clean": "rimraf --glob \"./{.nyc_output,.rpt2_cache}\" \"./{bin,coverage,declarations,dist,e2e,gen,lib}/*\"",
|
|
23
|
+
"build:production": "rollup --config ./rollup.config.js",
|
|
24
|
+
"clean": "shx rm -rf \"./{.nyc_output,.rpt2_cache}\" \"./{bin,coverage,declarations,dist,e2e,gen}/*\"",
|
|
25
25
|
"style": "prettier --check .",
|
|
26
26
|
"style-fix": "prettier --write .",
|
|
27
27
|
"lint": "eslint --ext .js,.ts .",
|
|
@@ -31,7 +31,8 @@
|
|
|
31
31
|
"test:interop": "node interop.js",
|
|
32
32
|
"test:interop:debug": "npm run test:interop -- --fail-command \"$SHELL\"",
|
|
33
33
|
"test:unit": "mocha --exit",
|
|
34
|
-
"watch": "rollup --
|
|
34
|
+
"watch": "rollup --watch --config rollup.config.js",
|
|
35
|
+
"prepare": "husky"
|
|
35
36
|
},
|
|
36
37
|
"lint-staged": {
|
|
37
38
|
"**/*.{css,html,js,json,json,md,ts,yml}": [
|
|
@@ -47,88 +48,109 @@
|
|
|
47
48
|
"useRelativePath": true
|
|
48
49
|
}
|
|
49
50
|
},
|
|
50
|
-
"main": "dist/vis-dev-utils.cjs
|
|
51
|
-
"module": "dist/vis-dev-utils.
|
|
52
|
-
"types": "declarations",
|
|
51
|
+
"main": "dist/vis-dev-utils.cjs",
|
|
52
|
+
"module": "dist/vis-dev-utils.mjs",
|
|
53
|
+
"types": "declarations/module/index.d.ts",
|
|
54
|
+
"exports": {
|
|
55
|
+
".": {
|
|
56
|
+
"import": "./dist/vis-dev-utils.mjs",
|
|
57
|
+
"require": "./dist/vis-dev-utils.cjs",
|
|
58
|
+
"types": "./declarations/module/index.d.ts"
|
|
59
|
+
},
|
|
60
|
+
"./babel-preset": {
|
|
61
|
+
"import": "./babel-preset/index.mjs",
|
|
62
|
+
"require": "./babel-preset/index.cjs",
|
|
63
|
+
"types": "./declarations/babel-preset/index.d.ts"
|
|
64
|
+
},
|
|
65
|
+
"./dist/interop/base-config.json": {
|
|
66
|
+
"import": "./dist/interop/base-config.json",
|
|
67
|
+
"require": "./dist/interop/base-config.json"
|
|
68
|
+
},
|
|
69
|
+
"./eslint-shareable-config": {
|
|
70
|
+
"require": "./eslint-shareable-config/index.cjs"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
53
73
|
"bin": {
|
|
54
|
-
"ci-utils": "
|
|
55
|
-
"generate-examples-index": "
|
|
56
|
-
"test-e2e-interop": "
|
|
74
|
+
"ci-utils": "bin/ci-utils.js",
|
|
75
|
+
"generate-examples-index": "bin/generate-examples-index.js",
|
|
76
|
+
"test-e2e-interop": "bin/test-e2e-interop.js"
|
|
57
77
|
},
|
|
58
78
|
"files": [
|
|
59
79
|
"LICENSE*",
|
|
60
80
|
"README.md",
|
|
61
81
|
"babel-preset",
|
|
62
|
-
"babel-register",
|
|
63
82
|
"bin",
|
|
64
83
|
"declarations",
|
|
65
84
|
"dist",
|
|
66
|
-
"eslint-shareable-config"
|
|
67
|
-
"lib"
|
|
85
|
+
"eslint-shareable-config"
|
|
68
86
|
],
|
|
87
|
+
"volta": {
|
|
88
|
+
"node": "24.3.0",
|
|
89
|
+
"npm": "11.4.2",
|
|
90
|
+
"pnpm": "10.12.4"
|
|
91
|
+
},
|
|
92
|
+
"dependencies": {
|
|
93
|
+
"fs-extra": "11.3.0"
|
|
94
|
+
},
|
|
69
95
|
"peerDependencies": {
|
|
70
|
-
"@babel/core": "7.
|
|
71
|
-
"@babel/plugin-transform-runtime": "7.
|
|
72
|
-
"@babel/preset-env": "7.
|
|
73
|
-
"@babel/preset-typescript": "7.
|
|
74
|
-
"@babel/
|
|
75
|
-
"@babel/runtime-corejs3": "7.23.2",
|
|
96
|
+
"@babel/core": "7.28.0",
|
|
97
|
+
"@babel/plugin-transform-runtime": "7.28.0",
|
|
98
|
+
"@babel/preset-env": "7.28.0",
|
|
99
|
+
"@babel/preset-typescript": "7.27.1",
|
|
100
|
+
"@babel/runtime-corejs3": "7.28.0",
|
|
76
101
|
"@rollup/plugin-babel": "6.0.4",
|
|
77
|
-
"@rollup/plugin-commonjs": "
|
|
78
|
-
"@rollup/plugin-json": "6.0
|
|
79
|
-
"@rollup/plugin-node-resolve": "
|
|
102
|
+
"@rollup/plugin-commonjs": "28.0.6",
|
|
103
|
+
"@rollup/plugin-json": "6.1.0",
|
|
104
|
+
"@rollup/plugin-node-resolve": "16.0.1",
|
|
80
105
|
"@rollup/plugin-terser": "0.4.4",
|
|
106
|
+
"@rollup/plugin-typescript": "12.1.4",
|
|
81
107
|
"@typescript-eslint/eslint-plugin": "5.62.0",
|
|
82
108
|
"@typescript-eslint/parser": "5.62.0",
|
|
83
|
-
"babel-plugin-
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
"eslint-
|
|
89
|
-
"eslint-plugin-cypress": "2.15.1",
|
|
109
|
+
"babel-plugin-istanbul": "7.0.0",
|
|
110
|
+
"chai": "5.2.0",
|
|
111
|
+
"cheerio": "1.1.0",
|
|
112
|
+
"css-select": "5.1.0",
|
|
113
|
+
"eslint-config-prettier": "9.1.0",
|
|
114
|
+
"eslint-plugin-cypress": "2.15.2",
|
|
90
115
|
"eslint-plugin-eslint-comments": "3.2.0",
|
|
91
|
-
"eslint-plugin-jsdoc": "
|
|
116
|
+
"eslint-plugin-jsdoc": "51.3.4",
|
|
92
117
|
"eslint-plugin-prettier": "4.2.1",
|
|
93
|
-
"find-up": "
|
|
94
|
-
"globby": "
|
|
95
|
-
"jimp": "
|
|
118
|
+
"find-up": "7.0.0",
|
|
119
|
+
"globby": "14.1.0",
|
|
120
|
+
"jimp": "1.6.0",
|
|
96
121
|
"postcss-assets": "6.0.0",
|
|
97
|
-
"prettier": "
|
|
98
|
-
"puppeteer": "
|
|
99
|
-
"rollup": "
|
|
122
|
+
"prettier": "3.6.2",
|
|
123
|
+
"puppeteer": "24.11.2",
|
|
124
|
+
"rollup": "4.44.2",
|
|
100
125
|
"rollup-plugin-analyzer": "4.0.0",
|
|
101
126
|
"rollup-plugin-copy": "3.5.0",
|
|
102
127
|
"rollup-plugin-postcss": "4.0.2",
|
|
103
128
|
"rollup-plugin-string": "3.0.0",
|
|
104
|
-
"rollup-plugin-strip-code": "0.2.
|
|
105
|
-
"
|
|
106
|
-
"tmp": "0.
|
|
107
|
-
"
|
|
108
|
-
"
|
|
109
|
-
"yargs": "17.7.2"
|
|
129
|
+
"rollup-plugin-strip-code": "0.2.8",
|
|
130
|
+
"tmp": "0.2.3",
|
|
131
|
+
"tmp-promise": "3.0.3",
|
|
132
|
+
"typescript": "5.8.3",
|
|
133
|
+
"yargs": "18.0.0"
|
|
110
134
|
},
|
|
111
135
|
"devDependencies": {
|
|
112
|
-
"@types/babel__core": "7.20.
|
|
113
|
-
"@types/chai": "
|
|
114
|
-
"@types/
|
|
115
|
-
"@types/
|
|
116
|
-
"@types/
|
|
117
|
-
"@types/
|
|
118
|
-
"@types/
|
|
119
|
-
"@types/
|
|
120
|
-
"@types/
|
|
121
|
-
"@types/tmp": "0.2.4",
|
|
122
|
-
"@types/yargs": "17.0.28",
|
|
136
|
+
"@types/babel__core": "7.20.5",
|
|
137
|
+
"@types/chai": "5.2.2",
|
|
138
|
+
"@types/cheerio": "1.0.0",
|
|
139
|
+
"@types/mocha": "10.0.10",
|
|
140
|
+
"@types/prettier": "3.0.0",
|
|
141
|
+
"@types/puppeteer": "7.0.4",
|
|
142
|
+
"@types/sinon": "17.0.4",
|
|
143
|
+
"@types/tmp": "0.2.6",
|
|
144
|
+
"@types/yargs": "17.0.33",
|
|
123
145
|
"eslint": "8.51.0",
|
|
124
|
-
"
|
|
125
|
-
"
|
|
126
|
-
"
|
|
127
|
-
"mocha": "10.2.0",
|
|
146
|
+
"husky": "9.1.7",
|
|
147
|
+
"lint-staged": "16.1.2",
|
|
148
|
+
"mocha": "11.7.1",
|
|
128
149
|
"npm-run-all": "4.1.5",
|
|
129
|
-
"
|
|
130
|
-
"rollup-plugin-node-externals": "
|
|
131
|
-
"
|
|
150
|
+
"rollup-plugin-esbuild": "^6.2.1",
|
|
151
|
+
"rollup-plugin-node-externals": "8.0.1",
|
|
152
|
+
"shx": "0.4.0",
|
|
153
|
+
"sinon": "21.0.0",
|
|
132
154
|
"snap-shot-it": "7.9.10"
|
|
133
155
|
},
|
|
134
156
|
"funding": {
|
package/babel-register/index.js
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* vis-dev-utils
|
|
5
|
-
* http://visjs.org/
|
|
6
|
-
*
|
|
7
|
-
* Development utilities for the Vis family projects.
|
|
8
|
-
*
|
|
9
|
-
* @version 4.0.45
|
|
10
|
-
* @date 2023-11-13T21:21:31.898Z
|
|
11
|
-
*
|
|
12
|
-
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
13
|
-
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
|
14
|
-
*
|
|
15
|
-
* @license
|
|
16
|
-
* vis.js is dual licensed under both
|
|
17
|
-
*
|
|
18
|
-
* 1. The Apache 2.0 License
|
|
19
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
20
|
-
*
|
|
21
|
-
* and
|
|
22
|
-
*
|
|
23
|
-
* 2. The MIT License
|
|
24
|
-
* http://opensource.org/licenses/MIT
|
|
25
|
-
*
|
|
26
|
-
* vis.js may be distributed under either license.
|
|
27
|
-
*/
|
|
28
|
-
|
|
29
|
-
'use strict';
|
|
30
|
-
|
|
31
|
-
var _Object$freeze = require('@babel/runtime-corejs3/core-js-stable/object/freeze');
|
|
32
|
-
require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
|
|
33
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/filter');
|
|
34
|
-
require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
|
|
35
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
|
|
36
|
-
require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
|
|
37
|
-
require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
|
|
38
|
-
require('@babel/runtime-corejs3/core-js-stable/object/define-property');
|
|
39
|
-
require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
|
|
40
|
-
require('@babel/runtime-corejs3/helpers/toConsumableArray');
|
|
41
|
-
require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
42
|
-
require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
43
|
-
require('@babel/runtime-corejs3/helpers/asyncToGenerator');
|
|
44
|
-
require('@babel/runtime-corejs3/regenerator');
|
|
45
|
-
var _Number$MAX_SAFE_INTEGER = require('@babel/runtime-corejs3/core-js-stable/number/max-safe-integer');
|
|
46
|
-
var _includesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/includes');
|
|
47
|
-
require('@babel/runtime-corejs3/core-js-stable/array/is-array');
|
|
48
|
-
require('@babel/runtime-corejs3/core-js-stable/object/keys');
|
|
49
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/flat-map');
|
|
50
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
|
|
51
|
-
require('@babel/runtime-corejs3/core-js-stable/object/entries');
|
|
52
|
-
require('@babel/runtime-corejs3/core-js-stable/object/create');
|
|
53
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/ends-with');
|
|
54
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
55
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
56
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/sort');
|
|
57
|
-
require('@babel/runtime-corejs3/core-js-stable/promise');
|
|
58
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/bind');
|
|
59
|
-
require('rollup-plugin-analyzer');
|
|
60
|
-
require('@rollup/plugin-babel');
|
|
61
|
-
var chaiFs = require('chai-fs');
|
|
62
|
-
require('@rollup/plugin-commonjs');
|
|
63
|
-
require('rollup-plugin-copy');
|
|
64
|
-
require('@rollup/plugin-json');
|
|
65
|
-
require('@rollup/plugin-node-resolve');
|
|
66
|
-
require('postcss-assets');
|
|
67
|
-
require('rollup-plugin-postcss');
|
|
68
|
-
require('rollup-plugin-strip-code');
|
|
69
|
-
require('@rollup/plugin-terser');
|
|
70
|
-
require('rollup-plugin-typescript2');
|
|
71
|
-
var findUp = require('find-up');
|
|
72
|
-
var node_fs = require('node:fs');
|
|
73
|
-
require('rollup-plugin-string');
|
|
74
|
-
var chai = require('chai');
|
|
75
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
|
|
76
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/slice');
|
|
77
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/trim');
|
|
78
|
-
require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
79
|
-
var tmpPromise = require('tmp-promise');
|
|
80
|
-
|
|
81
|
-
var BABEL_IGNORE_RE = _Object$freeze(/[\\/]node_modules[\\/](?!.*[\\/]esnext[\\/])/);
|
|
82
|
-
|
|
83
|
-
var packageJSON = JSON.parse(node_fs.readFileSync(findUp.sync("package.json"), "utf8"));
|
|
84
|
-
new Date().toISOString();
|
|
85
|
-
packageJSON.description;
|
|
86
|
-
packageJSON.homepage;
|
|
87
|
-
packageJSON.name;
|
|
88
|
-
packageJSON.version;
|
|
89
|
-
|
|
90
|
-
var _context, _context2;
|
|
91
|
-
import('globby');
|
|
92
|
-
chai.config.truncateThreshold = _Number$MAX_SAFE_INTEGER;
|
|
93
|
-
chai.use(chaiFs);
|
|
94
|
-
_includesInstanceProperty(_context = ["1", "true", "y", "yes"]).call(_context, process.env["VIS_DEBUG"] || "false");
|
|
95
|
-
_includesInstanceProperty(_context2 = ["1", "true", "y", "yes"]).call(_context2, process.env["VIS_TEST"] || "false");
|
|
96
|
-
|
|
97
|
-
tmpPromise.setGracefulCleanup();
|
|
98
|
-
|
|
99
|
-
/* eslint-disable @typescript-eslint/no-var-requires -- The following code would be messed up by transpilation from ESM. */
|
|
100
|
-
// Skip CSS.
|
|
101
|
-
require.extensions[".css"] = function () {};
|
|
102
|
-
require("@babel/register")({
|
|
103
|
-
extensions: [".ts", ".js"],
|
|
104
|
-
// This will override `node_modules` ignoring. We use untranspiled versions of
|
|
105
|
-
// our packages to cut down on bundle size (no duplicate polyfills etc.)
|
|
106
|
-
// Therefore we have to exclude only
|
|
107
|
-
ignore: [BABEL_IGNORE_RE]
|
|
108
|
-
});
|
|
109
|
-
/* eslint-enable @typescript-eslint/no-var-requires */
|
|
110
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/module/constants.ts","../src/module/header.ts","../src/module/generate-rollup-configuration/index.ts","../src/module/inspect-npm-pack.ts","../src/babel-register/index.ts"],"sourcesContent":["export const BABEL_IGNORE_RE = Object.freeze(\n /[\\\\/]node_modules[\\\\/](?!.*[\\\\/]esnext[\\\\/])/\n);\n","import { sync as findUp } from \"find-up\";\nimport { readFileSync } from \"fs\";\n\n/**\n * Take a string and return a doc block comment.\n *\n * @param string - The raw text to be included in the comment.\n * @throws If the string already contains a comment.\n * @returns A block doc comment string that can be for example prepended to a\n * bundled JavaScript file.\n */\nexport function textToComment(string: string): string {\n if (string.includes(\"*/\")) {\n throw new Error(\n \"Don't include comments in the input string. It will be converted automatically.\"\n );\n }\n\n return (\n \"/**\\n\" +\n string\n // Remove empty lines from the start.\n .replace(/^[\\n\\r]*/, \"\")\n // Remove empty lines from the end.\n .replace(/[\\n\\r\\s]*$/, \"\")\n // Process each line on it's own from now on.\n .split(\"\\n\")\n // Prefix each line with an asterisk.\n .map((line) => \" * \" + line)\n // Remove trailing white space.\n .map((line) => line.replace(/[^\\S\\r\\n]*$/, \"\"))\n // Join back into a string.\n .join(\"\\n\") +\n \"\\n */\\n\"\n );\n}\n\nconst packageJSON = JSON.parse(readFileSync(findUp(\"package.json\")!, \"utf8\"));\n\nconst buildHeader = ({\n customText,\n date,\n description,\n homepage,\n name,\n version,\n}: HeaderOptions): string =>\n textToComment(`\n${name}\n${homepage}\n\n${description}\n\n@version ${version}\n@date ${date}\n\n@copyright (c) 2011-2017 Almende B.V, http://almende.com\n@copyright (c) 2017-2019 visjs contributors, https://github.com/visjs\n\n@license\nvis.js is dual licensed under both\n\n 1. The Apache 2.0 License\n http://www.apache.org/licenses/LICENSE-2.0\n\n and\n\n 2. The MIT License\n http://opensource.org/licenses/MIT\n\nvis.js may be distributed under either license.\n\n${customText}\n`);\n\n/**\n * Options for {@link generateHeader}.\n */\nexport interface HeaderOptions {\n /** Any text to be appended to the standard header. */\n customText: string;\n /** The build date. */\n date: string;\n /** A description of the project. */\n description: string;\n /** An URL to the homepage of the project. */\n homepage: string;\n /** The name of the project. */\n name: string;\n /** The version of the build. */\n version: string;\n}\n\nconst defaultDate = new Date().toISOString();\nconst defaultDescription = packageJSON.description;\nconst defaultHomepage = packageJSON.homepage;\nconst defaultName = packageJSON.name;\nconst defaultVersion = packageJSON.version;\n\n/**\n * Generate a dynamic header banner.\n *\n * @param options - Optional information to be included. Otherwise no custom\n * text will be appended, the date will be the time when this module was\n * imported (most likely the start of the build process) and the rest will be\n * read from package.json.\n * @throws If the string already contains a comment.\n * @returns Ready to use banner text.\n */\nexport function generateHeader(options?: Partial<HeaderOptions>): string {\n const {\n customText = \"\",\n date = defaultDate,\n description = defaultDescription,\n homepage = defaultHomepage,\n name = defaultName,\n version = defaultVersion,\n } = options || {};\n\n return buildHeader({\n customText,\n date,\n description,\n homepage,\n name,\n version,\n });\n}\n","import { type RollupOptions, type Plugin } from \"rollup\";\nimport analyzerPlugin from \"rollup-plugin-analyzer\";\nimport babelPlugin from \"@rollup/plugin-babel\";\nimport chaiFs from \"chai-fs\";\nimport commonjsPlugin from \"@rollup/plugin-commonjs\";\nimport copyPlugin, { Target as CopyTarget } from \"rollup-plugin-copy\";\nimport jsonPlugin from \"@rollup/plugin-json\";\nimport nodeResolvePlugin from \"@rollup/plugin-node-resolve\";\nimport postcssAssetsPlugin from \"postcss-assets\";\nimport postcssPlugin from \"rollup-plugin-postcss\";\nimport stripCodePlugin from \"rollup-plugin-strip-code\";\nimport terserPlugin from \"@rollup/plugin-terser\";\nimport typescriptPlugin from \"rollup-plugin-typescript2\";\nimport { generateHeader } from \"../header\";\nimport { join, resolve, sep } from \"path\";\nimport { string as stringPlugin } from \"rollup-plugin-string\";\nimport {\n config as chaiConfig,\n expect as validateExpect,\n use as chaiUse,\n} from \"chai\";\n\nimport { BABEL_IGNORE_RE } from \"../constants\";\nimport { type HeaderOptions } from \"../header\";\nimport { type OptionalOptions } from \"../util\";\n\nconst rawGlobby = import(\"globby\");\n\nchaiConfig.truncateThreshold = Number.MAX_SAFE_INTEGER;\nchaiUse(chaiFs);\n\nconst VIS_DEBUG = [\"1\", \"true\", \"y\", \"yes\"].includes(\n process.env[\"VIS_DEBUG\"] || \"false\"\n);\nconst VIS_TEST = [\"1\", \"true\", \"y\", \"yes\"].includes(\n process.env[\"VIS_TEST\"] || \"false\"\n);\n\n/**\n * Simple glob with workaround for non-posix paths.\n *\n * @param pattern - Single glob pattern.\n * @returns Globbed paths.\n */\nasync function glob(pattern: string): ReturnType<typeof import(\"globby\")> {\n return (await rawGlobby).default(\n sep === \"\\\\\" ? pattern.replace(/\\\\/g, \"/\") : pattern\n );\n}\n\nexport interface GRCOptions {\n /**\n * Where to look for files when inlining assets into CSS.\n */\n assets: string;\n /**\n * Additional files to be copied.\n */\n copyTargets: {\n /**\n * These will be copied relative to the root of each bundle (esnext,\n * standalone…).\n */\n bundle: CopyTarget[];\n /**\n * These will be copied relative to the root of each variant of each bundle\n * (esnext/esm, esnext/umd, standalone/esm…).\n */\n variant: CopyTarget[];\n };\n /**\n * The base dir with entry points for various builds. The extensions\n * determines whether TypeScript processing will be used.\n */\n entryPoints: string;\n /**\n * These are the dependencies that would cause interoperability issues if they\n * were bundled. A notable example here is vis-data.\n */\n externalForPeerBuild: string[];\n /**\n * Passed straight to Rollup.\n */\n globals: Record<string, string>;\n /**\n * Options for {@link generateHeader}.\n */\n header: Partial<HeaderOptions>;\n /**\n * This will be used as a file name with appropriate extensions appended\n * (like .js, .min.js or .css).\n */\n libraryFilename: string;\n /**\n * Simply required package.json.\n */\n packageJSON: {\n browser: string;\n dependencies: Record<string, string>;\n devDependencies: Record<string, string>;\n files: string[];\n jsnext: string;\n main: string;\n module: string;\n peerDependencies: Record<string, string>;\n };\n /**\n * The path to tsconfig.json to be used in this build.\n */\n tsconfig: string;\n}\n\n/**\n * These are the dependencies that follow standalone/peer/ESNext export\n * structure.\n */\nconst dependenciesWithVisExportStructure = [\n \"vis-data\",\n \"vis-graph3d\",\n \"vis-network\",\n \"vis-timeline\",\n \"vis-util\",\n \"vis-uuid\",\n];\n\n/**\n * This ensures that dependencies on Vis projects point to ESNext builds.\n *\n * @param deps - The original dependencies as listed in package.json.\n * @returns An array of dependencies for Rollup.\n */\nfunction processDependencies(\n deps: string[] | Record<string, string>\n): string[] {\n const depNames = Array.isArray(deps) ? deps : Object.keys(deps);\n\n return depNames.flatMap((key): string[] =>\n dependenciesWithVisExportStructure.includes(key) ? [key + \"/esnext\"] : [key]\n );\n}\n\n/**\n * This ensures that all Vis projects are imported using ESNext builds.\n * Importing standalone versions will not only cause problems in production but\n * will log warnings during build process and won't work at all.\n *\n * @param globals - The original globals.\n * @returns Globals forcing the use of ESNext builds for Vis projects.\n */\nfunction processGlobals(\n globals: Record<string, string>\n): Record<string, string> {\n return Object.entries(globals).reduce<Record<string, string>>(\n (acc, [key, value]): Record<string, string> => {\n acc[\n dependenciesWithVisExportStructure.includes(key) ? key + \"/esnext\" : key\n ] = value;\n\n return acc;\n },\n Object.create(null)\n );\n}\n\n/**\n * @param path\n */\nfunction isTS(path: string): boolean {\n return path.endsWith(\".ts\");\n}\n\n/*\n * Make sure that Chai doesn't throw and therefore stop execution on failed\n * validations during debugging.\n */\nconst validate: (callback: (expect: Chai.ExpectStatic) => void) => void =\n VIS_DEBUG\n ? (callback: (expect: Chai.ExpectStatic) => void): void => {\n try {\n callback(validateExpect);\n } catch (error) {\n console.error(error);\n }\n }\n : (callback: (expect: Chai.ExpectStatic) => void): void =>\n void callback(validateExpect);\n\n/**\n * Transform ESNext import paths to match the build version being constructed.\n *\n * @param buildVariant - ESNext or peer build. This is not available for\n * standalone as only peer and ESNext have imports.\n * @param moduleFormat - What kind of module system to use.\n * @returns Path overrides for Rollup.\n */\nfunction getPaths(\n buildVariant: \"esnext\" | \"peer\",\n moduleFormat: \"esm\" | \"umd\"\n): Record<string, string> {\n /**\n * @param lib\n */\n function getPath(\n lib:\n | \"charts\"\n | \"data\"\n | \"graph3d\"\n | \"network\"\n | \"timeline\"\n | \"util\"\n | \"uuid\"\n ): Record<string, string> {\n return {\n [`vis-${lib}/esnext`]: `vis-${lib}/${buildVariant}/${moduleFormat}/vis-${lib}.js`,\n };\n }\n\n return {\n ...getPath(\"charts\"),\n ...getPath(\"data\"),\n ...getPath(\"graph3d\"),\n ...getPath(\"network\"),\n ...getPath(\"timeline\"),\n ...getPath(\"util\"),\n ...getPath(\"uuid\"),\n };\n}\n\n/**\n * Change target's dest so that it's relative to given dir(s).\n *\n * @param dirs - The directories there targets should be relative to.\n * @returns A function that can be directly supplied to Array.map().\n */\nfunction scopeCopyTarget(\n ...dirs: readonly string[]\n): (target: CopyTarget) => CopyTarget {\n return function (target): CopyTarget {\n const dest = (\n Array.isArray(target.dest) ? target.dest : [target.dest]\n ) as readonly string[];\n\n const bundleDest = dest.flatMap((path): string[] =>\n dirs.map((dir): string => join(dir, path))\n );\n\n return {\n ...target,\n dest: bundleDest,\n };\n };\n}\n\nconst injectCSS = true;\nconst minimize = true;\nconst transpile = true;\nconst generateRollupPluginArray = (\n libraryFilename: string,\n assets: string,\n copyTargetsBundle: readonly CopyTarget[],\n copyTargetsVariant: readonly CopyTarget[],\n tsconfig: string,\n mode: \"production\" | \"development\" | \"test\",\n bundleType: \"esnext\" | \"standalone\" | \"peer\",\n {\n injectCSS = false,\n minimize = false,\n strip = mode === \"production\",\n transpile = false,\n typescript = false,\n } = {}\n): Plugin[] => {\n const fullLibraryFilename = `${libraryFilename}${minimize ? \".min\" : \"\"}`;\n\n const bundleDir = bundleType;\n const bundleVariantDirs = [\"esm\", \"umd\"].map((variant): string =>\n join(bundleDir, variant)\n );\n\n return [\n ...(strip\n ? [\n // This should be first because it removes code from source files.\n // It's much easier to follow if the removal happens before any\n // transformations.\n stripCodePlugin({\n start_comment: \"develblock:start\",\n end_comment: \"develblock:end\",\n }),\n ]\n : [\n // Remove the comments marking devel blocks as they can cause problems\n // later on because transpilation shuffles things around which may\n // lead to all kinds of issues including syntax errors.\n stripCodePlugin({\n pattern: /[\\t ]*\\/\\* ?develblock:(start|end) ?\\*\\//g,\n }),\n ]),\n analyzerPlugin(VIS_DEBUG ? undefined : { limit: 10, summaryOnly: true }),\n copyPlugin({\n verbose: VIS_DEBUG,\n targets: [\n // JavaScript\n {\n src: resolve(__dirname, \"assets/bundle-root.js\"),\n dest: bundleDir,\n rename: \"index.js\",\n },\n {\n src: resolve(__dirname, \"assets/bundle-index.js\"),\n dest: bundleVariantDirs,\n rename: \"index.js\",\n transform: (content: Buffer): string =>\n content.toString().replace(\"{{filename}}\", libraryFilename),\n },\n\n // TypeScript\n {\n src: resolve(__dirname, \"assets/bundle-root.d.ts\"),\n dest: bundleDir,\n rename: \"index.d.ts\",\n },\n {\n src: resolve(__dirname, \"assets/bundle-index.d.ts\"),\n dest: bundleVariantDirs,\n rename: \"index.d.ts\",\n transform: (content: Buffer): string =>\n content.toString().replace(\"{{filename}}\", libraryFilename),\n },\n {\n src: resolve(__dirname, \"assets/bundle-file.d.ts\"),\n dest: bundleVariantDirs,\n rename: `${fullLibraryFilename}.d.ts`,\n transform: (content: Buffer): string =>\n content.toString().replace(\"{{bundle-type}}\", bundleType),\n },\n\n // Custom\n ...copyTargetsBundle.map(scopeCopyTarget(bundleDir)),\n ...copyTargetsVariant.map(scopeCopyTarget(...bundleVariantDirs)),\n ],\n }),\n nodeResolvePlugin({\n browser: true,\n extensions: [\".js\", \".json\", \".ts\"],\n mainFields: [\"jsnext\", \"module\", \"main\"],\n preferBuiltins: false,\n }),\n ...(typescript\n ? [\n typescriptPlugin({\n tsconfig,\n }),\n ]\n : []),\n commonjsPlugin(),\n postcssPlugin({\n extract: !injectCSS && `styles/${fullLibraryFilename}.css`,\n inject: injectCSS,\n minimize,\n // Prevent the sourcemaps from being injected into JS files.\n sourceMap: !injectCSS,\n plugins: [\n postcssAssetsPlugin({\n loadPaths: [assets],\n }),\n ],\n }),\n jsonPlugin(),\n stringPlugin({\n include: \"**/*.txt\",\n }),\n ...(transpile\n ? [\n babelPlugin({\n babelHelpers: \"runtime\",\n babelrc: false,\n configFile: false,\n exclude: BABEL_IGNORE_RE,\n extensions: [\".js\", \".ts\"],\n presets: [[\"vis-dev-utils/babel-preset\", { ts: true }]],\n }),\n ]\n : []),\n ...(minimize\n ? [\n terserPlugin({\n format: {\n comments: \"some\",\n },\n }),\n ]\n : []),\n ];\n};\n\n/**\n * Prepare ready to use Rollup configuration file.\n *\n * @remarks\n * IMPORTANT: Use `babel.config.js` in the root of the project, `.babelrc` files\n * are ignored.\n *\n * You can surround any piece of code with `stripInProduction: { debug code }`\n * to strip it from the generated bundles unless VIS_DEBUG=true environmental\n * variable is set. This is useful for example to render bounding boxes during\n * debugging but automatically switch it off without any performance or bundle\n * size penalty in production. Debugger statements are also automatically\n * stripped.\n *\n * Plugins:\n * - `\\@rollup/plugin-babel` (skipped in ESNext)\n * - `\\@rollup/plugin-commonjs`\n * - `\\@rollup/plugin-json`\n * - `\\@rollup/plugin-node-resolve`\n * - `\\@rollup/plugin-strip` (skipped with VIS_DEBUG=true env var)\n * - `\\@rollup/plugin-terser` (only in minified)\n * - `postcss-assets`\n * - `rollup-plugin-copy`\n * - `rollup-plugin-postcss`\n * - `rollup-plugin-typescript2` (skipped if the entry is .js)\n * @param options - See {@link GRCOptions}.\n * @param mode - Whether the code should be processed for production,\n * development or testing.\n * @returns Ready to use configuration object that can be just exported from\n * `rollup.config.js` or mutated in any way if necessary.\n */\nexport async function generateRollupConfiguration(\n options: OptionalOptions<GRCOptions>,\n mode: \"production\" | \"development\" | \"test\" = VIS_TEST\n ? \"test\"\n : VIS_DEBUG\n ? \"development\"\n : \"production\"\n): Promise<RollupOptions[]> {\n const {\n assets = \".\",\n copyTargets: {\n bundle: copyTargetsBundle = [],\n variant: copyTargetsVariant = [],\n } = {} as GRCOptions[\"copyTargets\"],\n externalForPeerBuild = [],\n globals = {},\n header = { name: \"Unknown Library\" },\n libraryFilename = \"unknown-library\",\n packageJSON: {\n dependencies = {},\n devDependencies = {},\n peerDependencies = {},\n ...packageJSONRest\n } = {} as GRCOptions[\"packageJSON\"],\n entryPoints: entryPoint = \"./src\",\n tsconfig = \"tsconfig.json\",\n }: GRCOptions = (options || {}) as GRCOptions;\n\n validate((expect): void => {\n // Note: Every array is a superset of empty array.\n if (Object.keys(peerDependencies).length > 0) {\n expect(\n Object.keys(dependencies),\n \"The dependencies and peer dependencies have to be disjoint sets\"\n )\n .to.be.an(\"array\")\n .that.does.not.include.any.members(Object.keys(peerDependencies));\n }\n });\n validate((expect): void => {\n expect(\n Object.keys(devDependencies),\n \"For convenience all peer dependencies also have to be dev dependencies\"\n )\n .to.be.an(\"array\")\n .that.includes.all.members(Object.keys(peerDependencies));\n });\n validate((expect): void => {\n expect(\n Object.keys(peerDependencies),\n \"Peer build externals have to be a subset of peer dependencies\"\n )\n .to.be.an(\"array\")\n .that.includes.all.members(externalForPeerBuild);\n });\n validate((expect): void => {\n expect(\n [...Object.keys(dependencies), ...Object.keys(peerDependencies)].sort(),\n \"Globals have to be provided for all runtime and peer dependencies but nothing else\"\n )\n .to.be.an(\"array\")\n .that.deep.equals(Object.keys(globals).sort());\n });\n\n validate((expect): void => {\n expect(resolve(assets), \"Assets have to be a directory\")\n .to.be.a(\"string\")\n .and.a.directory();\n });\n validate((expect): void => {\n expect(entryPoint, \"The entry point has to be directory\")\n .to.be.a(\"string\")\n .and.a.directory();\n });\n const [esnextEntry, peerEntry, standaloneEntry] = await Promise.all(\n [\"ESNext\", \"peer\", \"standalone\"].map(async (name): Promise<string> => {\n const filenameGlob = `entry-${name.toLowerCase()}.{js,ts}`;\n const files = await glob(resolve(entryPoint, filenameGlob));\n\n validate((expect): void => {\n expect(\n files,\n `There has to be a single entry file (${filenameGlob}) for the ${name} build`\n )\n .to.have.lengthOf(1)\n .and.to.have.ownProperty(\"0\")\n .that.is.a.file();\n });\n\n return files[0];\n })\n );\n validate((expect): void => {\n expect(\n resolve(\"./declarations\"),\n \"There has to be a directory with TypeScript declarations\"\n )\n .to.be.a(\"string\")\n .and.a.directory();\n });\n\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"The directories with built files have to be included in the package\"\n )\n .to.have.ownProperty(\"files\")\n .that.is.an(\"array\")\n .and.includes.all.members([\n \"declarations\",\n \"esnext\",\n \"peer\",\n \"standalone\",\n ]);\n });\n\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's type property has to point to the declarations\"\n )\n .to.have.ownProperty(\"types\")\n .that.is.a(\"string\")\n .and.equals(`declarations/index.d.ts`);\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's browser property has to point to the minifed UMD build\"\n )\n .to.have.ownProperty(\"browser\")\n .that.is.a(\"string\")\n .and.equals(`peer/umd/${libraryFilename}.min.js`);\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's main property has to point to the UMD build\"\n )\n .to.have.ownProperty(\"main\")\n .that.is.a(\"string\")\n .and.equals(`peer/umd/${libraryFilename}.js`);\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's modul property has to point to the ESM build\"\n )\n .to.have.ownProperty(\"module\")\n .that.is.a(\"string\")\n .and.equals(`peer/esm/${libraryFilename}.js`);\n });\n validate((expect): void => {\n expect(\n packageJSONRest,\n \"Package JSON's jsnext has to point to the ESNext build\"\n )\n .to.have.ownProperty(\"jsnext\")\n .that.is.a(\"string\")\n .and.equals(`esnext/esm/${libraryFilename}.js`);\n });\n\n // Note: .to.not.exist sounds great but doesn't work.\n validate((expect): void => {\n expect(\n resolve(\"./.babelrc\"),\n \"Babelrc is ignored. Use babel.config.js config file instead.\"\n ).to.not.be.a.path;\n });\n validate((expect): void => {\n expect(\n resolve(\"./babel.config.js\"),\n \"There has to be a babel.config.js config file.\"\n ).to.not.be.a.path;\n });\n\n const banner = generateHeader(header);\n const external = {\n // No dependencies are bundled.\n esnext: processDependencies([\n ...Object.keys(dependencies),\n ...Object.keys(peerDependencies),\n\n // This will show a warning if any of them is used. The idea behind\n // it is that if someone accidentaly imports a dev dependency they\n // won't accidentaly add it to globals and Rollup will warn them\n // about their error.\n ...Object.keys(devDependencies),\n ]),\n // Only dependencies that cause compatibility issues are not bundled.\n peer: processDependencies(externalForPeerBuild),\n // No runtime dependencies, everything's bundled.\n standalone: [],\n };\n\n const commonOutput = {\n banner,\n dir: \".\",\n globals: processGlobals(globals),\n sourcemap: VIS_TEST ? \"inline\" : true,\n } as const;\n const commonOutputESM = {\n ...commonOutput,\n format: \"esm\",\n } as const;\n const commonOutputUMD = {\n ...commonOutput,\n exports: \"named\",\n extend: true,\n format: \"umd\",\n name: \"vis\",\n strict: false, // Regenerator runtime causes issues with CSP in strict mode.\n } as const;\n\n // Note: Binding more than 4 at a time is not typesafe in TS.\n const getPlugins = generateRollupPluginArray\n .bind(null, libraryFilename)\n .bind(null, assets)\n .bind(null, copyTargetsBundle)\n .bind(null, copyTargetsVariant)\n .bind(null, tsconfig)\n .bind(null, mode);\n\n return [\n {\n external: external.standalone,\n input: standaloneEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `standalone/esm/${libraryFilename}.js`,\n },\n {\n ...commonOutputUMD,\n entryFileNames: `standalone/umd/${libraryFilename}.js`,\n },\n ],\n plugins: getPlugins(\"standalone\", {\n injectCSS,\n transpile,\n typescript: isTS(standaloneEntry),\n }),\n },\n {\n external: external.standalone,\n input: standaloneEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `standalone/esm/${libraryFilename}.min.js`,\n },\n {\n ...commonOutputUMD,\n entryFileNames: `standalone/umd/${libraryFilename}.min.js`,\n },\n ],\n plugins: getPlugins(\"standalone\", {\n injectCSS,\n minimize,\n transpile,\n typescript: isTS(standaloneEntry),\n }),\n },\n\n {\n external: external.peer,\n input: peerEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `peer/esm/${libraryFilename}.js`,\n paths: getPaths(\"peer\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `peer/umd/${libraryFilename}.js`,\n paths: getPaths(\"peer\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"peer\", {\n transpile,\n typescript: isTS(peerEntry),\n }),\n },\n {\n external: external.peer,\n input: peerEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `peer/esm/${libraryFilename}.min.js`,\n paths: getPaths(\"peer\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `peer/umd/${libraryFilename}.min.js`,\n paths: getPaths(\"peer\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"peer\", {\n minimize,\n transpile,\n typescript: isTS(peerEntry),\n }),\n },\n\n {\n external: external.esnext,\n input: esnextEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `esnext/esm/${libraryFilename}.js`,\n paths: getPaths(\"esnext\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `esnext/umd/${libraryFilename}.js`,\n paths: getPaths(\"esnext\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"esnext\", {\n typescript: isTS(esnextEntry),\n }),\n },\n {\n external: external.esnext,\n input: esnextEntry,\n output: [\n {\n ...commonOutputESM,\n entryFileNames: `esnext/esm/${libraryFilename}.min.js`,\n paths: getPaths(\"esnext\", \"esm\"),\n },\n {\n ...commonOutputUMD,\n entryFileNames: `esnext/umd/${libraryFilename}.min.js`,\n paths: getPaths(\"esnext\", \"umd\"),\n },\n ],\n plugins: getPlugins(\"esnext\", {\n minimize,\n typescript: isTS(esnextEntry),\n }),\n },\n ];\n}\n","import { execSync } from \"child_process\";\nimport { readFileSync } from \"fs\";\nimport { fileSync, setGracefulCleanup } from \"tmp-promise\";\n\nsetGracefulCleanup();\n\nconst PACK_CMD = [\"npm\", \"pack\", \"--dry-run\"];\n\n/**\n * @param textOrLines\n * @param message\n */\nfunction logStderr(\n textOrLines: string | readonly string[],\n message: string\n): never {\n console.group('\"npm pack\" output');\n console.error(\n Array.isArray(textOrLines) ? textOrLines.join(\"\\n\") : textOrLines\n );\n console.groupEnd();\n\n throw new Error(message);\n}\n\n/**\n *\n */\nfunction runNpmPack(): string[] {\n const tmpFile = fileSync().name;\n\n // There are issues with incomplete output when the stderr is read directly\n // into Node. Saving it into tmp file using shell redirection and reading it\n // from there doesn't exhibit those issues.\n execSync(`${PACK_CMD.join(\" \")} 2> ${tmpFile}`, {\n encoding: \"utf-8\",\n env: { ...process.env, LC_ALL: \"C\" },\n });\n\n const lines = readFileSync(tmpFile, \"utf-8\").split(/[\\r\\n]+/);\n\n return lines;\n}\n\n/**\n * @param lines\n */\nfunction extractFiles(lines: string[]): string[] {\n const fileListingStart = lines.indexOf(\n \"npm notice === Tarball Contents === \"\n );\n const fileListingEnd = lines.indexOf(\"npm notice === Tarball Details === \");\n\n if (fileListingStart === -1 || fileListingEnd === -1) {\n logStderr(\n lines.join(\"\\n\"),\n 'Couldn\\'t find tarball contents in \"npm pack\" output.'\n );\n }\n\n const files = lines\n .slice(fileListingStart + 1, fileListingEnd)\n .map((line): string => line.replace(/^npm notice /, \"\"))\n .map((line): string => line.trim())\n .map((line): string =>\n line.replace(\n /^([^ ]+) +(.*)/,\n (_, size, path): string =>\n `${path}${size === \"0\" ? \"(empty)\" : \" \"}`\n )\n )\n .sort()\n .map((line) => line.replace(/^(.*)(.{7})$/, \"$2 $1\"));\n\n if (files.length === 0) {\n logStderr(lines, 'No files found in \"npm pack\" output.');\n }\n\n return files;\n}\n\n/**\n * @param lines\n */\nfunction extractName(lines: string[]): string {\n const nameLine = lines.find((line): boolean =>\n /^npm notice name:/.test(line)\n );\n\n if (nameLine == null) {\n logStderr(\n lines,\n 'Can\\'t find the name of the package in \"npm pack\" output.'\n );\n }\n\n return nameLine.replace(/^npm notice name: */, \"\");\n}\n\n/**\n *\n */\nexport function inspectNpmPack(): { name: string; files: string[] } {\n const lines = runNpmPack();\n const files = extractFiles(lines);\n const name = extractName(lines);\n\n return {\n name,\n files,\n };\n}\n","import { BABEL_IGNORE_RE } from \"../module\";\n\n/* eslint-disable @typescript-eslint/no-var-requires -- The following code would be messed up by transpilation from ESM. */\n\n// Skip CSS.\nrequire.extensions[\".css\"] = () => {};\n\nrequire(\"@babel/register\")({\n extensions: [\".ts\", \".js\"],\n // This will override `node_modules` ignoring. We use untranspiled versions of\n // our packages to cut down on bundle size (no duplicate polyfills etc.)\n // Therefore we have to exclude only\n ignore: [BABEL_IGNORE_RE],\n});\n\n/* eslint-enable @typescript-eslint/no-var-requires */\n"],"names":["BABEL_IGNORE_RE","_Object$freeze","packageJSON","JSON","parse","readFileSync","findUp","Date","toISOString","description","homepage","name","version","chaiConfig","truncateThreshold","_Number$MAX_SAFE_INTEGER","chaiUse","chaiFs","_includesInstanceProperty","_context","call","process","env","_context2","setGracefulCleanup","require","extensions","ignore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,eAAe,GAAGC,cAAA,CAC7B,8CAA8C,CAC/C;;ACmCD,IAAMC,WAAW,GAAGC,IAAI,CAACC,KAAK,CAACC,oBAAY,CAACC,WAAM,CAAC,cAAc,CAAE,EAAE,MAAM,CAAC,CAAC,CAAA;AAwDzD,IAAIC,IAAI,EAAE,CAACC,WAAW,GAAE;AACjBN,WAAW,CAACO,YAAW;AAC1BP,WAAW,CAACQ,SAAQ;AACxBR,WAAW,CAACS,KAAI;AACbT,WAAW,CAACU;;;ACvEjB,OAAO,QAAQ,EAAC;AAElCC,WAAU,CAACC,iBAAiB,GAAAC,wBAA0B,CAAA;AACtDC,QAAO,CAACC,MAAM,CAAC,CAAA;AAEGC,yBAAA,CAAAC,QAAA,GAAC,CAAA,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA,CAAAC,IAAA,CAAAD,QAAA,EACzCE,OAAO,CAACC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,EACpC;AACgBJ,yBAAA,CAAAK,SAAA,GAAC,CAAA,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA,CAAAH,IAAA,CAAAG,SAAA,EACxCF,OAAO,CAACC,GAAG,CAAC,UAAU,CAAC,IAAI,OAAO;;AC/BpCE,6BAAkB,EAAE;;ACFpB;AAEA;AACAC,OAAO,CAACC,UAAU,CAAC,MAAM,CAAC,GAAG,YAAO,EAAC,CAAA;AAErCD,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACzBC,EAAAA,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;AAC1B;AACA;AACA;EACAC,MAAM,EAAE,CAAC3B,eAAe,CAAA;AACzB,CAAA,CAAC,CAAA;AAEF;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/module/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,kBAE3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/module/generate-rollup-configuration/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAe,MAAM,QAAQ,CAAC;AAKzD,OAAmB,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAkBtE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AA0B/C,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,EAAE;QACX;;;WAGG;QACH,MAAM,EAAE,UAAU,EAAE,CAAC;QACrB;;;WAGG;QACH,OAAO,EAAE,UAAU,EAAE,CAAC;KACvB,CAAC;IACF;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/B;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC1C,CAAC;IACF;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AA8RD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,eAAe,CAAC,UAAU,CAAC,EACpC,IAAI,GAAE,YAAY,GAAG,aAAa,GAAG,MAIrB,GACf,OAAO,CAAC,aAAa,EAAE,CAAC,CAmV1B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../src/module/header.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwBpD;AAwCD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAQD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,MAAM,CAkBvE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/module/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iCAAiC,CAAC;AAChD,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inspect-npm-pack.d.ts","sourceRoot":"","sources":["../src/module/inspect-npm-pack.ts"],"names":[],"mappings":"AAmGA;;GAEG;AACH,wBAAgB,cAAc,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CASlE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/module/util.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,CAAC,OAAO,IAAI;KACpC,GAAG,IAAI,MAAM,OAAO,CAAC,CAAC,EACnB,SAAS,GACT,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,MAAM,MAAM,CAAC,GACrC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAC9B,OAAO,CAAC,GAAG,CAAC,SAAS,aAAa,CAAC,MAAM,MAAM,CAAC,GAChD,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GACtC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;CACvC,CAAC"}
|