vis-dev-utils 3.0.0 → 3.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-register/index.js +2 -2
- package/bin/ci-utils.js +2 -2
- package/bin/generate-examples-index.js +6 -6
- package/bin/test-e2e-interop.js +8 -6
- package/bin/test-e2e-interop.js.map +1 -1
- package/dist/vis-dev-utils.cjs.js +6 -6
- package/dist/vis-dev-utils.esm.js +6 -6
- package/package.json +24 -24
package/babel-register/index.js
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Development utilities for the Vis family projects.
|
|
8
8
|
*
|
|
9
|
-
* @version 3.0.
|
|
10
|
-
* @date
|
|
9
|
+
* @version 3.0.1
|
|
10
|
+
* @date 2022-03-07T20:39:45.311Z
|
|
11
11
|
*
|
|
12
12
|
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
13
13
|
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
package/bin/ci-utils.js
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Development utilities for the Vis family projects.
|
|
8
8
|
*
|
|
9
|
-
* @version 3.0.
|
|
10
|
-
* @date
|
|
9
|
+
* @version 3.0.1
|
|
10
|
+
* @date 2022-03-07T20:39:45.311Z
|
|
11
11
|
*
|
|
12
12
|
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
13
13
|
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Development utilities for the Vis family projects.
|
|
8
8
|
*
|
|
9
|
-
* @version 3.0.
|
|
10
|
-
* @date
|
|
9
|
+
* @version 3.0.1
|
|
10
|
+
* @date 2022-03-07T20:39:45.311Z
|
|
11
11
|
*
|
|
12
12
|
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
13
13
|
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
|
@@ -653,9 +653,9 @@ function _unsupportedIterableToArray$2(o, minLen) { var _context24; if (!o) retu
|
|
|
653
653
|
|
|
654
654
|
function _arrayLikeToArray$2(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
655
655
|
|
|
656
|
-
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object);
|
|
656
|
+
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object); enumerableOnly && (symbols = _filterInstanceProperty__default['default'](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default['default'](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
657
657
|
|
|
658
|
-
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
658
|
+
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context22, _context23; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default['default'](_context22 = ownKeys$1(Object(source), !0)).call(_context22, function (key) { _defineProperty__default['default'](target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default['default'] ? _Object$defineProperties__default['default'](target, _Object$getOwnPropertyDescriptors__default['default'](source)) : _forEachInstanceProperty__default['default'](_context23 = ownKeys$1(Object(source))).call(_context23, function (key) { _Object$defineProperty__default['default'](target, key, _Object$getOwnPropertyDescriptor__default['default'](source, key)); }); } return target; }
|
|
659
659
|
var collator = new Intl.Collator("US");
|
|
660
660
|
var writeFile = util.promisify(fs__default['default'].writeFile);
|
|
661
661
|
var ContentBuilder = /*#__PURE__*/function () {
|
|
@@ -1148,9 +1148,9 @@ var htmlRenderer = {
|
|
|
1148
1148
|
}
|
|
1149
1149
|
};
|
|
1150
1150
|
|
|
1151
|
-
function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object);
|
|
1151
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object); enumerableOnly && (symbols = _filterInstanceProperty__default['default'](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default['default'](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
1152
1152
|
|
|
1153
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
1153
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context14, _context15; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default['default'](_context14 = ownKeys(Object(source), !0)).call(_context14, function (key) { _defineProperty__default['default'](target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default['default'] ? _Object$defineProperties__default['default'](target, _Object$getOwnPropertyDescriptors__default['default'](source)) : _forEachInstanceProperty__default['default'](_context15 = ownKeys(Object(source))).call(_context15, function (key) { _Object$defineProperty__default['default'](target, key, _Object$getOwnPropertyDescriptor__default['default'](source, key)); }); } return target; }
|
|
1154
1154
|
|
|
1155
1155
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol__default['default'] !== "undefined" && _getIteratorMethod__default['default'](o) || o["@@iterator"]; if (!it) { if (_Array$isArray__default['default'](o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
1156
1156
|
|
package/bin/test-e2e-interop.js
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Development utilities for the Vis family projects.
|
|
8
8
|
*
|
|
9
|
-
* @version 3.0.
|
|
10
|
-
* @date
|
|
9
|
+
* @version 3.0.1
|
|
10
|
+
* @date 2022-03-07T20:39:45.311Z
|
|
11
11
|
*
|
|
12
12
|
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
13
13
|
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
|
@@ -63,6 +63,7 @@ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-s
|
|
|
63
63
|
var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
|
|
64
64
|
var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
|
|
65
65
|
var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
|
|
66
|
+
var _createClass = require('@babel/runtime-corejs3/helpers/createClass');
|
|
66
67
|
var _classCallCheck = require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
67
68
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
68
69
|
var _padStartInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/pad-start');
|
|
@@ -102,6 +103,7 @@ var _Object$getOwnPropertyDescriptor__default = /*#__PURE__*/_interopDefaultLega
|
|
|
102
103
|
var _Object$getOwnPropertyDescriptors__default = /*#__PURE__*/_interopDefaultLegacy(_Object$getOwnPropertyDescriptors);
|
|
103
104
|
var _Object$defineProperties__default = /*#__PURE__*/_interopDefaultLegacy(_Object$defineProperties);
|
|
104
105
|
var _Object$defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_Object$defineProperty);
|
|
106
|
+
var _createClass__default = /*#__PURE__*/_interopDefaultLegacy(_createClass);
|
|
105
107
|
var _classCallCheck__default = /*#__PURE__*/_interopDefaultLegacy(_classCallCheck);
|
|
106
108
|
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
107
109
|
var _padStartInstanceProperty__default = /*#__PURE__*/_interopDefaultLegacy(_padStartInstanceProperty);
|
|
@@ -137,10 +139,10 @@ function parseArguments() {
|
|
|
137
139
|
}).parseSync();
|
|
138
140
|
}
|
|
139
141
|
|
|
140
|
-
function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object);
|
|
142
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object); enumerableOnly && (symbols = _filterInstanceProperty__default['default'](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default['default'](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
141
143
|
|
|
142
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
143
|
-
var ProjectState =
|
|
144
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context8, _context9; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default['default'](_context8 = ownKeys(Object(source), !0)).call(_context8, function (key) { _defineProperty__default['default'](target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default['default'] ? _Object$defineProperties__default['default'](target, _Object$getOwnPropertyDescriptors__default['default'](source)) : _forEachInstanceProperty__default['default'](_context9 = ownKeys(Object(source))).call(_context9, function (key) { _Object$defineProperty__default['default'](target, key, _Object$getOwnPropertyDescriptor__default['default'](source, key)); }); } return target; }
|
|
145
|
+
var ProjectState = /*#__PURE__*/_createClass__default['default'](
|
|
144
146
|
/**
|
|
145
147
|
* This will be resolved or rejected once all the tasks associated with this
|
|
146
148
|
* project finish.
|
|
@@ -174,7 +176,7 @@ function ProjectState() {
|
|
|
174
176
|
_this.resolve = resolve;
|
|
175
177
|
_this.reject = reject;
|
|
176
178
|
});
|
|
177
|
-
};
|
|
179
|
+
});
|
|
178
180
|
/**
|
|
179
181
|
* @param title
|
|
180
182
|
* @param details
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-e2e-interop.js","sources":["../src/test-e2e-interop/cli.ts","../src/test-e2e-interop/util.ts","../src/test-e2e-interop/test.ts","../src/test-e2e-interop/index.ts"],"sourcesContent":["import yargs from \"yargs\";\n\nconst y = yargs\n .strict(true)\n .usage(\"test-e2e-interop [options]\")\n .hide(\"version\")\n .config()\n .help()\n\n .option(\"fail-command\", {\n demandOption: false,\n describe:\n 'This command will be run in a shell (therefore commands like \"$SHELL\" will work) after failure to inspect the state.',\n type: \"string\",\n })\n .option(\"package-script\", {\n array: true,\n default: [\"clean?\", \"build!\", \"test!\", \"generate-examples-index?\"],\n demandOption: false,\n describe:\n 'The package scripts to run with each package, either \"script-name!\" to fail or \"script-name?\" to skip if the script doesn\\'t exist in given package. By default the script is used for all packages, if you want to use it only for one add package name: \"package-name script-name!\". Scripts are invoked sequentially and command line order is preserved.',\n type: \"string\",\n })\n .option(\"project\", {\n array: true,\n default: [] as string[],\n demandOption: false,\n describe:\n 'Projects to clone using Git, copy from directory or install from tarball. The format is \"package-name URL/path\".',\n type: \"string\",\n })\n .option(\"tmp-dir\", {\n demandOption: false,\n describe:\n \"The working directory for E2E testing. If omitted a new tmp dir will be created and then disposed of.\",\n type: \"string\",\n });\n\n/**\n *\n */\nexport function parseArguments(): ReturnType<typeof y[\"parseSync\"]> {\n return y.parserConfiguration({ \"camel-case-expansion\": false }).parseSync();\n}\n","import { execSync, spawn } from \"child_process\";\nimport { join } from \"path\";\nimport { createWriteStream, readFile } from \"fs-extra\";\n\nexport class ProjectState {\n /**\n * This will be resolved or rejected once all the tasks associated with this\n * project finish.\n */\n public promise: Promise<void>;\n /**\n * Run this to mark the project as successfully finished.\n */\n public resolve!: () => void;\n /**\n * Run this to mark the project as failed.\n */\n public reject!: (reason: Error) => void;\n /**\n * Provide information about current state of the project.\n */\n public stage = \"pending\";\n\n public constructor() {\n this.promise = new Promise<void>((resolve, reject): void => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n}\n\n/**\n * @param title\n * @param details\n */\nexport function logError(title: string, details?: string | Error): void {\n const wrappedDetails =\n details != null\n ? `\\n${details instanceof Error ? details.message : details}`\n : \"\";\n process.stderr.write(`\\n==> ${title}${wrappedDetails}\\n`);\n}\n/**\n * @param title\n * @param details\n */\nexport function logInfo(title: string, details?: string): void {\n const wrappedDetails = details ? `:\\n${details}` : \"\";\n process.stdout.write(`\\n==> ${title}${wrappedDetails}\\n`);\n}\n\n/**\n * @param cwd\n * @param failCommand\n * @param error\n */\nexport function execFail(\n cwd: string,\n failCommand: string | null | undefined,\n error: Error | string\n): void {\n if (failCommand) {\n console.error(\"\\n\\nReason for debugging:\");\n console.error(error);\n console.error(\"\\n\\nDebuging:\");\n try {\n execSync(failCommand, {\n cwd,\n encoding: \"utf8\",\n env: { ...process.env, VIS_INTEROP: \"1\" },\n stdio: \"inherit\",\n });\n } catch (error) {\n console.error(error);\n console.error(\n \"The error above is the fail command exitting with non-zero status, not an actual failure in the interop test.\"\n );\n }\n }\n}\n\nexport type Spawn = (options: SpawnOrTrhowArgs) => Promise<void>;\n\nexport interface SpawnOrTrhowArgs {\n cmd: readonly string[];\n cwd: string;\n failCommand?: string;\n}\n/**\n * @param logDir\n * @param getState\n */\nexport function createSpawner(logDir: string, getState: () => string[]): Spawn {\n let nextId = 1;\n\n return function spawnThrow({ cmd, cwd, failCommand }): ReturnType<Spawn> {\n const id = nextId++;\n const getHeaderLines = (): string[] => [\n \"time: \" + new Date().toISOString(),\n \"id: \" + id,\n \"cwd: \" + cwd,\n \"cmd: \" + cmd.map((word): string => JSON.stringify(word)).join(\" \"),\n \"states:\",\n ...getState(),\n ];\n const getLogMessage = (): string =>\n getHeaderLines()\n .map((line): string => \" \" + line)\n .join(\"\\n\");\n\n logInfo(\"Start\", getLogMessage());\n\n return new Promise((resolve, reject): void => {\n const commandLogPath = join(logDir, (\"\" + id).padStart(3, \"0\") + \".log\");\n const logStream = createWriteStream(commandLogPath, {\n flags: \"a\",\n });\n\n logStream.write(getHeaderLines().join(\"\\n\") + \"\\n\\n\");\n\n const child = spawn(cmd[0], cmd.slice(1), {\n cwd,\n env: { ...process.env, VIS_INTEROP: \"1\" },\n stdio: \"pipe\",\n });\n\n child.stdout.pipe(logStream);\n child.stderr.pipe(logStream);\n\n let failed = false;\n child.on(\"close\", (code): void => {\n if (failed) {\n // noop\n } else if (code !== 0) {\n logError(\"Fail\", getLogMessage());\n\n const errorMessage = `${cmd\n .map((word): string => `\"${word}\"`)\n .join(\" \")}: exited with ${code}.`;\n\n logStream.end((): void => {\n (async (): Promise<void> => {\n let commandOutput = \"\";\n try {\n commandOutput += await readFile(commandLogPath, \"utf-8\");\n } catch (error) {\n commandOutput += \"Failed to log command output.\";\n }\n execFail(cwd, failCommand, commandOutput + \"\\n\\n\" + errorMessage);\n })();\n });\n\n reject(new Error(errorMessage));\n } else {\n logInfo(\"Okay\", getLogMessage());\n resolve();\n }\n });\n child.on(\"error\", (error): void => {\n failed = true;\n\n logError(\"Fail\", getLogMessage());\n\n execFail(cwd, failCommand, error);\n\n reject(error);\n });\n });\n };\n}\n","import { DirResult, dirSync, setGracefulCleanup } from \"tmp\";\nimport { resolve as resolvePath } from \"path\";\nimport findUp from \"find-up\";\nimport {\n Stats,\n copy,\n copyFile,\n lstat,\n mkdir,\n mkdirp,\n readFile,\n readdir,\n writeFile,\n unlink,\n} from \"fs-extra\";\n\nimport {\n ProjectState,\n Spawn,\n createSpawner,\n execFail,\n logError,\n logInfo,\n} from \"./util\";\n\n// Remove all temporary files on process exit.\nsetGracefulCleanup();\n\ninterface TestData {\n failCommand?: string;\n packageScripts: readonly PackageScript[];\n projectPaths: ProjectPaths;\n tmpDir: DirResult;\n tmpLogsResolve(...paths: string[]): string;\n tmpReposResolve(...paths: string[]): string;\n tmpRootResolve(...paths: string[]): string;\n visDevUtilsPath: string;\n}\n\nexport interface PackageScript {\n packageName: string | null;\n scriptName: string;\n skipIfMissing: boolean;\n}\n\nexport type ProjectPaths = Record<string, string>;\n\n/**\n * @param tmpPath\n */\nasync function prepareTmpDir(tmpPath?: string): Promise<DirResult> {\n if (tmpPath) {\n await mkdirp(tmpPath);\n\n return {\n name: tmpPath,\n removeCallback: (): void => {},\n };\n } else {\n return dirSync({ unsafeCleanup: true });\n }\n}\n\n/**\n * @param projectName\n */\nfunction getTarballName(projectName: string): string {\n return `${projectName}-0.0.0-no-version.tgz`;\n}\n\n/**\n * @param root0\n * @param root0.tmpRootResolve\n * @param projectName\n */\nfunction getTarballPath(\n { tmpRootResolve }: TestData,\n projectName: string\n): string {\n return tmpRootResolve(`${projectName}.tgz`);\n}\n\n/**\n * @param data\n * @param projectName\n */\nasync function copyTarball(data: TestData, projectName: string): Promise<void> {\n await copyFile(\n data.tmpReposResolve(projectName, getTarballName(projectName)),\n getTarballPath(data, projectName)\n );\n}\n\n/**\n * @param cwd\n */\nasync function getPackageDeps(cwd: string): Promise<string[]> {\n const packageJSONPath = await findUp(\"package.json\", { cwd });\n if (packageJSONPath == null) {\n throw new Error(\"Project's package.json file not found.\");\n }\n const packageJSON = JSON.parse(await readFile(packageJSONPath, \"utf8\"));\n\n return [\n ...new Set([\n ...Object.keys(packageJSON.dependencies || {}),\n ...Object.keys(packageJSON.devDependencies || {}),\n ...Object.keys(packageJSON.peerDependencies || {}),\n ]),\n ];\n}\n\n/**\n * @param data\n * @param projectName\n */\nasync function getPackageLocalDeps(\n data: TestData,\n projectName: string\n): Promise<string[]> {\n const { projectPaths, tmpReposResolve } = data;\n const cwd = tmpReposResolve(projectName);\n return (await getPackageDeps(cwd)).filter(\n (depName): boolean => projectPaths[depName] != null\n );\n}\n\n/**\n * @param spawn\n * @param data\n * @param projectName\n */\nasync function clone(\n spawn: Spawn,\n data: TestData,\n projectName: string\n): Promise<void> {\n const { failCommand, projectPaths, tmpReposResolve } = data;\n\n const cwd = tmpReposResolve();\n const projectPath = projectPaths[projectName];\n\n if (/\\.git$/.test(projectPath)) {\n await spawn({\n cmd: [\n \"git\",\n \"clone\",\n projectPath,\n \"--single-branch\",\n \"--branch\",\n \"master\",\n \"--depth\",\n \"1\",\n ],\n cwd,\n failCommand,\n });\n } else {\n await copy(projectPath, tmpReposResolve(projectName), {\n filter(_src, dest): boolean {\n return (\n !/[\\\\/].git[\\\\/]/.test(dest) && !/[\\\\/]node_modules[\\\\/]/.test(dest)\n );\n },\n });\n }\n}\n\n/**\n * @param cwd\n * @param deps\n */\nasync function updatePackageDepVersions(\n cwd: string,\n deps: Record<string, string>\n): Promise<void> {\n const packageJSONPath = await findUp(\"package.json\", { cwd });\n if (packageJSONPath == null) {\n throw new Error(\"Project's package.json file not found.\");\n }\n const packageJSON = JSON.parse(await readFile(packageJSONPath, \"utf8\"));\n\n Object.keys(packageJSON.dependencies ?? {}).forEach((key): void => {\n if (Object.prototype.hasOwnProperty.call(deps, key)) {\n packageJSON.dependencies[key] = \"file:\" + deps[key];\n }\n });\n Object.keys(packageJSON.devDependencies ?? {}).forEach((key): void => {\n if (Object.prototype.hasOwnProperty.call(deps, key)) {\n packageJSON.devDependencies[key] = \"file:\" + deps[key];\n }\n });\n Object.keys(packageJSON.peerDependencies ?? {}).forEach((key): void => {\n if (Object.prototype.hasOwnProperty.call(deps, key)) {\n packageJSON.peerDependencies[key] = \"file:\" + deps[key];\n }\n });\n\n await writeFile(packageJSONPath, JSON.stringify(packageJSON, undefined, 4));\n}\n\n/**\n * @param spawn\n * @param data\n * @param projectName\n */\nasync function buildTestPack(\n spawn: Spawn,\n data: TestData,\n projectName: string\n): Promise<void> {\n const { failCommand, packageScripts, tmpReposResolve } = data;\n const cwd = tmpReposResolve(projectName);\n\n await updatePackageDepVersions(\n cwd,\n (\n await getPackageLocalDeps(data, projectName)\n ).reduce<Record<string, string>>((acc, key): Record<string, string> => {\n acc[key] = getTarballPath(data, key);\n return acc;\n }, Object.create(null))\n );\n const packageLockPath = await findUp(\"package-lock.json\", { cwd });\n if (packageLockPath != null) {\n await unlink(packageLockPath);\n }\n await spawn({\n cmd: [\"npm\", \"install\"],\n cwd,\n failCommand,\n });\n\n for (const { packageName, scriptName, skipIfMissing } of packageScripts) {\n if (packageName != null && packageName !== projectName) {\n continue;\n } else if (skipIfMissing) {\n await spawn({\n cmd: [\"npm\", \"run\", scriptName, \"--if-present\"],\n cwd,\n failCommand,\n });\n } else {\n await spawn({\n cmd: [\"npm\", \"run\", scriptName],\n cwd,\n failCommand,\n });\n }\n }\n\n await spawn({ cmd: [\"npm\", \"pack\"], cwd, failCommand });\n\n await copyTarball(data, projectName);\n}\n\n/**\n * @param data\n */\nasync function checkTmpPath(data: TestData): Promise<void> {\n const tmpDir = data.tmpRootResolve();\n if ((await readdir(tmpDir)).length !== 0) {\n throw new Error(`The tmp dir (\"${tmpDir}\") is not empty.`);\n }\n}\n\nexport interface TestArgs {\n failCommand?: string;\n projectPaths: ProjectPaths;\n packageScripts: readonly PackageScript[];\n tmpPath?: string;\n}\n/**\n * @param root0\n * @param root0.failCommand\n * @param root0.packageScripts\n * @param root0.projectPaths\n * @param root0.tmpPath\n */\nexport async function test({\n failCommand,\n packageScripts,\n projectPaths,\n tmpPath,\n}: TestArgs): Promise<boolean> {\n if (process.env.VIS_INTEROP === \"1\") {\n // This would result in infinite loop otherwise.\n logInfo(\"Skipping interop test.\");\n return true;\n }\n\n const data = Object.freeze<TestData>({\n failCommand,\n packageScripts,\n projectPaths,\n tmpDir: await prepareTmpDir(\n tmpPath ? resolvePath(tmpPath, \"repos\") : undefined\n ),\n tmpLogsResolve: (...paths: string[]): string =>\n resolvePath(data.tmpDir.name, \"logs\", ...paths),\n tmpReposResolve: (...paths: string[]): string =>\n resolvePath(data.tmpDir.name, \"repos\", ...paths),\n tmpRootResolve: (...paths: string[]): string =>\n resolvePath(data.tmpDir.name, ...paths),\n visDevUtilsPath: process.cwd(),\n });\n\n const projectStatuses = new Map<string, ProjectState>(\n Object.keys(data.projectPaths).map((project): [string, ProjectState] => [\n project,\n new ProjectState(),\n ])\n );\n /**\n *\n */\n function getStages(): string[] {\n return [...projectStatuses].map(\n ([key, { stage }]): string => ` ${key}: ${stage}`\n );\n }\n\n try {\n const spawn = createSpawner(data.tmpLogsResolve(), getStages);\n\n await checkTmpPath(data);\n\n // Prepare subdirectories under the root tmp directory.\n await Promise.all(\n [\"repos\", \"logs\"].map(\n (dir): Promise<void> => mkdir(resolvePath(data.tmpDir.name, dir))\n )\n );\n\n logInfo(\"Begin\", getStages().join(\"\\n\"));\n await Promise.all(\n [...projectStatuses].map(async ([projectName, state]): Promise<void> => {\n try {\n state.stage = \"preparing\";\n const projectPath = data.projectPaths[projectName];\n const stats = await (async (): Promise<Stats | null> => {\n try {\n return await lstat(projectPath);\n } catch {\n return null;\n }\n })();\n if (stats?.isFile()) {\n // The path points to a ready to install tarball.\n state.stage = \"copying tarball\";\n await copyFile(projectPath, getTarballPath(data, projectName));\n state.stage = \"tarball copied\";\n } else {\n // The path points to a repo (maybe remote) that has to be built,\n // tested and packed first.\n state.stage = \"cloning\";\n await clone(spawn, data, projectName);\n\n state.stage = \"gathering dependencies\";\n const failedDeps: string[] = [];\n const localDeps = await getPackageLocalDeps(data, projectName);\n state.stage = `waiting for dependencies (${localDeps.join(\", \")})`;\n for (const localDep of localDeps) {\n const depStatus = projectStatuses.get(localDep);\n if (depStatus == null) {\n throw new Error(`Dependency ${localDep} not found.`);\n }\n\n try {\n await depStatus.promise;\n } catch {\n failedDeps.push(localDep);\n }\n }\n if (failedDeps.length > 0) {\n state.stage = `dependencies failed: ${failedDeps.join(\", \")}`;\n throw new Error(state.stage);\n }\n\n state.stage = \"running CI tasks\";\n await buildTestPack(spawn, data, projectName);\n state.stage = \"cloned, built, tested and packed\";\n }\n\n logInfo(`Okay ${projectName}`, getStages().join(\"\\n\"));\n state.resolve();\n } catch (error) {\n logError(\n `Fail ${projectName} (${state.stage}):`,\n getStages().join(\"\\n\")\n );\n state.reject(error);\n }\n })\n );\n\n const allSucceeded = (\n await Promise.allSettled(\n [...projectStatuses.values()].map(\n (status): Promise<void> => status.promise\n )\n )\n ).every(({ status }): boolean => status === \"fulfilled\");\n\n if (allSucceeded) {\n return true;\n } else {\n return false;\n }\n } finally {\n // Wait for all the projects to finish and log the state summary and any\n // errors encountered.\n logInfo(\"End\", getStages().join(\"\\n\"));\n for (const [projectName, { promise }] of projectStatuses) {\n try {\n await promise;\n } catch (error) {\n logError(`${projectName} failed with`, error);\n }\n }\n\n // Print the detailed logs for inspection (especially in CI).\n logInfo(\"Outputs\");\n process.stdout.write(\n [\n \"\",\n ...(await Promise.all(\n (\n await readdir(data.tmpLogsResolve())\n ).map(\n (filename): Promise<string> =>\n readFile(data.tmpLogsResolve(filename), \"UTF-8\")\n )\n )),\n \"\",\n ].join(\"\\n\\n\" + (\"-\".repeat(80) + \"\\n\").repeat(2) + \"\\n\")\n );\n\n execFail(\n data.tmpDir.name,\n failCommand,\n \"Allow the state to be inspected in debug mode before the data is lost.\"\n );\n }\n}\n","import { parseArguments } from \"./cli\";\nimport { resolve } from \"path\";\nimport { ProjectPaths, PackageScript, test } from \"./test\";\n\nconst argv = parseArguments();\n\nconst projectPaths: ProjectPaths = argv[\"project\"]\n .map((raw): [string, string] => {\n const [name, path] = raw.split(\" \", 2);\n\n if (typeof name === \"string\" && typeof path === \"string\") {\n if (/^[a-zA-Z0-9]+:\\/\\//.test(path)) {\n // Remote URL, use as is.\n return [name, path];\n } else {\n // Local path, resolve to prevent CWD issues.\n return [name, resolve(path)];\n }\n } else {\n console.error(\n `--project-path should be in 'project-name ./path' format, got '${raw}'.`\n );\n process.exit(1);\n }\n })\n .reduce<ProjectPaths>((acc, [name, path]): ProjectPaths => {\n acc[name] = path;\n return acc;\n }, {});\n\nconst rawPackageScriptArg = argv[\"package-script\"];\nconst packageScripts: PackageScript[] = rawPackageScriptArg.flatMap(\n (raw): PackageScript[] => {\n const packageScripts: PackageScript[] = [];\n\n let packageName: string | null = null;\n for (const part of raw.split(\" \")) {\n const mode = part.slice(-1);\n\n if (mode === \"?\" || mode === \"!\") {\n packageScripts.push({\n packageName,\n scriptName: part.slice(0, -1),\n skipIfMissing: mode === \"?\",\n });\n } else {\n packageName = part;\n }\n }\n\n return packageScripts;\n }\n);\n\nconst tmpPath = argv[\"tmp-dir\"] ? resolve(argv[\"tmp-dir\"]) : undefined;\n\nconst failCommand = argv[\"fail-command\"];\n\ntest({ failCommand, packageScripts, projectPaths, tmpPath })\n .then((allSucceeded): void => {\n if (!allSucceeded) {\n process.exitCode = 1;\n }\n })\n .catch((reason): void => {\n console.error(reason);\n process.exitCode = 2;\n });\n"],"names":["y","yargs","strict","usage","hide","config","help","option","demandOption","describe","type","array","default","parseArguments","parserConfiguration","parseSync","ProjectState","promise","resolve","reject","logError","title","details","wrappedDetails","Error","message","process","stderr","write","logInfo","stdout","execFail","cwd","failCommand","error","console","execSync","encoding","env","VIS_INTEROP","stdio","createSpawner","logDir","getState","nextId","spawnThrow","cmd","id","getHeaderLines","Date","toISOString","_mapInstanceProperty","word","_JSON$stringify","join","getLogMessage","line","commandLogPath","_padStartInstanceProperty","logStream","createWriteStream","flags","child","spawn","_sliceInstanceProperty","pipe","failed","on","code","errorMessage","end","commandOutput","readFile","setGracefulCleanup","prepareTmpDir","tmpPath","mkdirp","name","removeCallback","dirSync","unsafeCleanup","getTarballName","projectName","getTarballPath","tmpRootResolve","copyTarball","data","copyFile","tmpReposResolve","getPackageDeps","findUp","packageJSONPath","JSON","packageJSON","parse","_Object$keys","dependencies","devDependencies","peerDependencies","getPackageLocalDeps","projectPaths","depName","clone","projectPath","test","copy","filter","_src","dest","updatePackageDepVersions","deps","key","Object","prototype","hasOwnProperty","call","writeFile","undefined","buildTestPack","packageScripts","acc","_Object$create","packageLockPath","unlink","packageName","scriptName","skipIfMissing","checkTmpPath","tmpDir","readdir","length","getStages","projectStatuses","stage","resolvePath","paths","tmpLogsResolve","visDevUtilsPath","project","_Promise","all","dir","mkdir","state","_asyncToGenerator","lstat","stats","isFile","failedDeps","localDeps","localDep","depStatus","get","push","allSettled","_valuesInstanceProperty","status","allSucceeded","filename","_repeatInstanceProperty","argv","_reduceInstanceProperty","raw","split","path","exit","rawPackageScriptArg","_flatMapInstanceProperty","part","mode","then","exitCode","catch","reason"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,CAAC,GAAGC,yBAAK,CACZC,MADO,CACA,IADA,EAEPC,KAFO,CAED,4BAFC,EAGPC,IAHO,CAGF,SAHE,EAIPC,MAJO,GAKPC,IALO,GAOPC,MAPO,CAOA,cAPA,EAOgB;AACtBC,EAAAA,YAAY,EAAE,KADQ;AAEtBC,EAAAA,QAAQ,EACN,sHAHoB;AAItBC,EAAAA,IAAI,EAAE;AAJgB,CAPhB,EAaPH,MAbO,CAaA,gBAbA,EAakB;AACxBI,EAAAA,KAAK,EAAE,IADiB;AAExBC,EAAAA,OAAO,EAAE,CAAC,QAAD,EAAW,QAAX,EAAqB,OAArB,EAA8B,0BAA9B,CAFe;AAGxBJ,EAAAA,YAAY,EAAE,KAHU;AAIxBC,EAAAA,QAAQ,EACN,8VALsB;AAMxBC,EAAAA,IAAI,EAAE;AANkB,CAblB,EAqBPH,MArBO,CAqBA,SArBA,EAqBW;AACjBI,EAAAA,KAAK,EAAE,IADU;AAEjBC,EAAAA,OAAO,EAAE,EAFQ;AAGjBJ,EAAAA,YAAY,EAAE,KAHG;AAIjBC,EAAAA,QAAQ,EACN,kHALe;AAMjBC,EAAAA,IAAI,EAAE;AANW,CArBX,EA6BPH,MA7BO,CA6BA,SA7BA,EA6BW;AACjBC,EAAAA,YAAY,EAAE,KADG;AAEjBC,EAAAA,QAAQ,EACN,uGAHe;AAIjBC,EAAAA,IAAI,EAAE;AAJW,CA7BX,CAAV;AAoCA;;;;SAGgBG;AACd,SAAOb,CAAC,CAACc,mBAAF,CAAsB;AAAE,4BAAwB;AAA1B,GAAtB,EAAyDC,SAAzD,EAAP;AACD;;;;;ICvCYC,YAAb;AACE;;;;;AAKA;;;;AAIA;;;;AAIA;;;AAKA;;;;;;;;;;;qDAFe;;AAGb,OAAKC,OAAL,GAAe,iCAAkB,UAACC,OAAD,EAAUC,MAAV;AAC/B,IAAA,KAAI,CAACD,OAAL,GAAeA,OAAf;AACA,IAAA,KAAI,CAACC,MAAL,GAAcA,MAAd;AACD,GAHc,CAAf;AAID,CAxBH;AA2BA;;;;;SAIgBC,SAASC,OAAeC;;;AACtC,MAAMC,cAAc,GAClBD,OAAO,IAAI,IAAX,eACSA,OAAO,YAAYE,KAAnB,GAA2BF,OAAO,CAACG,OAAnC,GAA6CH,OADtD,IAEI,EAHN;AAIAI,EAAAA,OAAO,CAACC,MAAR,CAAeC,KAAf,wEAA8BP,KAA9B,kBAAsCE,cAAtC;AACD;AACD;;;;;SAIgBM,QAAQR,OAAeC;;;AACrC,MAAMC,cAAc,GAAGD,OAAO,gBAASA,OAAT,IAAqB,EAAnD;AACAI,EAAAA,OAAO,CAACI,MAAR,CAAeF,KAAf,yEAA8BP,KAA9B,mBAAsCE,cAAtC;AACD;AAED;;;;;;SAKgBQ,SACdC,KACAC,aACAC;AAEA,MAAID,WAAJ,EAAiB;AACfE,IAAAA,OAAO,CAACD,KAAR,CAAc,2BAAd;AACAC,IAAAA,OAAO,CAACD,KAAR,CAAcA,KAAd;AACAC,IAAAA,OAAO,CAACD,KAAR,CAAc,eAAd;;AACA,QAAI;AACFE,MAAAA,sBAAQ,CAACH,WAAD,EAAc;AACpBD,QAAAA,GAAG,EAAHA,GADoB;AAEpBK,QAAAA,QAAQ,EAAE,MAFU;AAGpBC,QAAAA,GAAG,kCAAOZ,OAAO,CAACY,GAAf;AAAoBC,UAAAA,WAAW,EAAE;AAAjC,UAHiB;AAIpBC,QAAAA,KAAK,EAAE;AAJa,OAAd,CAAR;AAMD,KAPD,CAOE,OAAON,KAAP,EAAc;AACdC,MAAAA,OAAO,CAACD,KAAR,CAAcA,KAAd;AACAC,MAAAA,OAAO,CAACD,KAAR,CACE,+GADF;AAGD;AACF;AACF;AASD;;;;;SAIgBO,cAAcC,QAAgBC;AAC5C,MAAIC,MAAM,GAAG,CAAb;AAEA,SAAO,SAASC,UAAT;QAAsBC,WAAAA;QAAKd,WAAAA;QAAKC,mBAAAA;AACrC,QAAMc,EAAE,GAAGH,MAAM,EAAjB;;AACA,QAAMI,cAAc,GAAG,SAAjBA,cAAiB;AAAA;;AAAA,sEACrB,WAAW,IAAIC,IAAJ,GAAWC,WAAX,EADU,EAErB,SAASH,EAFY,EAGrB,UAAUf,GAHW,EAIrB,UAAUmB,yCAAAL,GAAG,MAAH,CAAAA,GAAG,EAAK,UAACM,IAAD;AAAA,eAAkBC,oCAAeD,IAAf,CAAlB;AAAA,OAAL,CAAH,CAAgDE,IAAhD,CAAqD,GAArD,CAJW,EAKrB,SALqB,0DAMlBX,QAAQ,EANU;AAAA,KAAvB;;AAQA,QAAMY,aAAa,GAAG,SAAhBA,aAAgB;AAAA;;AAAA,aACpBJ,qDAAAH,cAAc,QAAd,YACO,UAACQ,IAAD;AAAA,eAAkB,OAAOA,IAAzB;AAAA,OADP,EAEGF,IAFH,CAEQ,IAFR,CADoB;AAAA,KAAtB;;AAKAzB,IAAAA,OAAO,CAAC,OAAD,EAAU0B,aAAa,EAAvB,CAAP;AAEA,WAAO,iCAAY,UAACrC,OAAD,EAAUC,MAAV;;;AACjB,UAAMsC,cAAc,GAAGH,SAAI,CAACZ,MAAD,EAASgB,0DAAC,KAAKX,EAAN,kBAAmB,CAAnB,EAAsB,GAAtB,IAA6B,MAAtC,CAA3B;AACA,UAAMY,SAAS,GAAGC,yBAAiB,CAACH,cAAD,EAAiB;AAClDI,QAAAA,KAAK,EAAE;AAD2C,OAAjB,CAAnC;AAIAF,MAAAA,SAAS,CAAC/B,KAAV,CAAgBoB,cAAc,GAAGM,IAAjB,CAAsB,IAAtB,IAA8B,MAA9C;AAEA,UAAMQ,KAAK,GAAGC,mBAAK,CAACjB,GAAG,CAAC,CAAD,CAAJ,EAASkB,2CAAAlB,GAAG,MAAH,CAAAA,GAAG,EAAO,CAAP,CAAZ,EAAuB;AACxCd,QAAAA,GAAG,EAAHA,GADwC;AAExCM,QAAAA,GAAG,kCAAOZ,OAAO,CAACY,GAAf;AAAoBC,UAAAA,WAAW,EAAE;AAAjC,UAFqC;AAGxCC,QAAAA,KAAK,EAAE;AAHiC,OAAvB,CAAnB;AAMAsB,MAAAA,KAAK,CAAChC,MAAN,CAAamC,IAAb,CAAkBN,SAAlB;AACAG,MAAAA,KAAK,CAACnC,MAAN,CAAasC,IAAb,CAAkBN,SAAlB;AAEA,UAAIO,MAAM,GAAG,KAAb;AACAJ,MAAAA,KAAK,CAACK,EAAN,CAAS,OAAT,EAAkB,UAACC,IAAD;AAChB,YAAIF,MAAJ,EAAY,CAAZ,MAEO,IAAIE,IAAI,KAAK,CAAb,EAAgB;AAAA;;AACrBhD,UAAAA,QAAQ,CAAC,MAAD,EAASmC,aAAa,EAAtB,CAAR;;AAEA,cAAMc,YAAY,qEAAMlB,yCAAAL,GAAG,MAAH,CAAAA,GAAG,EACpB,UAACM,IAAD;AAAA,+BAAsBA,IAAtB;AAAA,WADoB,CAAH,CAErBE,IAFqB,CAEhB,GAFgB,CAAN,qCAEWc,IAFX,MAAlB;;AAIAT,UAAAA,SAAS,CAACW,GAAV,CAAc;AACZ,6GAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AACKC,sBAAAA,aADL,GACqB,EADrB;AAAA;AAAA,qCAGGA,aAHH;AAAA;AAAA,6BAG0BC,gBAAQ,CAACf,cAAD,EAAiB,OAAjB,CAHlC;;AAAA;AAGGc,sBAAAA,aAHH;AAAA;AAAA;;AAAA;AAAA;AAAA;AAKGA,sBAAAA,aAAa,IAAI,+BAAjB;;AALH;AAOCxC,sBAAAA,QAAQ,CAACC,GAAD,EAAMC,WAAN,EAAmBsC,aAAa,GAAG,MAAhB,GAAyBF,YAA5C,CAAR;;AAPD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAD;AASD,WAVD;AAYAlD,UAAAA,MAAM,CAAC,IAAIK,KAAJ,CAAU6C,YAAV,CAAD,CAAN;AACD,SApBM,MAoBA;AACLxC,UAAAA,OAAO,CAAC,MAAD,EAAS0B,aAAa,EAAtB,CAAP;AACArC,UAAAA,OAAO;AACR;AACF,OA3BD;AA4BA4C,MAAAA,KAAK,CAACK,EAAN,CAAS,OAAT,EAAkB,UAACjC,KAAD;AAChBgC,QAAAA,MAAM,GAAG,IAAT;AAEA9C,QAAAA,QAAQ,CAAC,MAAD,EAASmC,aAAa,EAAtB,CAAR;AAEAxB,QAAAA,QAAQ,CAACC,GAAD,EAAMC,WAAN,EAAmBC,KAAnB,CAAR;AAEAf,QAAAA,MAAM,CAACe,KAAD,CAAN;AACD,OARD;AASD,KAvDM,CAAP;AAwDD,GAzED;AA0ED;;;;;;;;AC/IDuC,sBAAkB;AAqBlB;;;;SAGeC;;;AAaf;;;;;;oHAbA,iBAA6BC,OAA7B;AAAA;AAAA;AAAA;AAAA;AAAA,iBACMA,OADN;AAAA;AAAA;AAAA;;AAAA;AAAA,mBAEUC,cAAM,CAACD,OAAD,CAFhB;;AAAA;AAAA,6CAIW;AACLE,cAAAA,IAAI,EAAEF,OADD;AAELG,cAAAA,cAAc,EAAE;AAFX,aAJX;;AAAA;AAAA,6CASWC,WAAO,CAAC;AAAEC,cAAAA,aAAa,EAAE;AAAjB,aAAD,CATlB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AAgBA,SAASC,cAAT,CAAwBC,WAAxB;AACE,mBAAUA,WAAV;AACD;AAED;;;;;;;AAKA,SAASC,cAAT,OAEED,WAFF;MACIE,sBAAAA;AAGF,SAAOA,cAAc,WAAIF,WAAJ,UAArB;AACD;AAED;;;;;;SAIeG;;;AAOf;;;;;;kHAPA,kBAA2BC,IAA3B,EAA2CJ,WAA3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACQK,gBAAQ,CACZD,IAAI,CAACE,eAAL,CAAqBN,WAArB,EAAkCD,cAAc,CAACC,WAAD,CAAhD,CADY,EAEZC,cAAc,CAACG,IAAD,EAAOJ,WAAP,CAFF,CADhB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAUeO;;;AAgBf;;;;;;;qHAhBA,kBAA8BzD,GAA9B;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACgC0D,0BAAM,CAAC,cAAD,EAAiB;AAAE1D,cAAAA,GAAG,EAAHA;AAAF,aAAjB,CADtC;;AAAA;AACQ2D,YAAAA,eADR;;AAAA,kBAEMA,eAAe,IAAI,IAFzB;AAAA;AAAA;AAAA;;AAAA,kBAGU,IAAInE,KAAJ,CAAU,wCAAV,CAHV;;AAAA;AAAA,2BAKsBoE,IALtB;AAAA;AAAA,mBAKuCpB,gBAAQ,CAACmB,eAAD,EAAkB,MAAlB,CAL/C;;AAAA;AAAA;AAKQE,YAAAA,WALR,gBAK2BC,KAL3B;AAAA,qFAQO,gJACEC,iCAAYF,WAAW,CAACG,YAAZ,IAA4B,EAAxC,CADF,0CAEED,iCAAYF,WAAW,CAACI,eAAZ,IAA+B,EAA3C,CAFF,0CAGEF,iCAAYF,WAAW,CAACK,gBAAZ,IAAgC,EAA5C,CAHF,GARP;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAoBeC;;;AAWf;;;;;;;;0HAXA,kBACEb,IADF,EAEEJ,WAFF;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIUkB,YAAAA,YAJV,GAI4Cd,IAJ5C,CAIUc,YAJV,EAIwBZ,eAJxB,GAI4CF,IAJ5C,CAIwBE,eAJxB;AAKQxD,YAAAA,GALR,GAKcwD,eAAe,CAACN,WAAD,CAL7B;AAAA;AAAA;AAAA,mBAMgBO,cAAc,CAACzD,GAAD,CAN9B;;AAAA;AAAA;AAAA,8FAOI,UAACqE,OAAD;AAAA,qBAAsBD,YAAY,CAACC,OAAD,CAAZ,IAAyB,IAA/C;AAAA,aAPJ;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAgBeC;;;AAoCf;;;;;;;4GApCA,kBACEvC,KADF,EAEEuB,IAFF,EAGEJ,WAHF;AAAA;AAAA;AAAA;AAAA;AAAA;AAKUjD,YAAAA,WALV,GAKyDqD,IALzD,CAKUrD,WALV,EAKuBmE,YALvB,GAKyDd,IALzD,CAKuBc,YALvB,EAKqCZ,eALrC,GAKyDF,IALzD,CAKqCE,eALrC;AAOQxD,YAAAA,GAPR,GAOcwD,eAAe,EAP7B;AAQQe,YAAAA,WARR,GAQsBH,YAAY,CAAClB,WAAD,CARlC;;AAAA,iBAUM,SAASsB,IAAT,CAAcD,WAAd,CAVN;AAAA;AAAA;AAAA;;AAAA;AAAA,mBAWUxC,KAAK,CAAC;AACVjB,cAAAA,GAAG,EAAE,CACH,KADG,EAEH,OAFG,EAGHyD,WAHG,EAIH,iBAJG,EAKH,UALG,EAMH,QANG,EAOH,SAPG,EAQH,GARG,CADK;AAWVvE,cAAAA,GAAG,EAAHA,GAXU;AAYVC,cAAAA,WAAW,EAAXA;AAZU,aAAD,CAXf;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA,mBA0BUwE,YAAI,CAACF,WAAD,EAAcf,eAAe,CAACN,WAAD,CAA7B,EAA4C;AACpDwB,cAAAA,MADoD,kBAC7CC,IAD6C,EACvCC,IADuC;AAElD,uBACE,CAAC,iBAAiBJ,IAAjB,CAAsBI,IAAtB,CAAD,IAAgC,CAAC,yBAAyBJ,IAAzB,CAA8BI,IAA9B,CADnC;AAGD;AALmD,aAA5C,CA1Bd;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAwCeC;;;AA6Bf;;;;;;;;+HA7BA,kBACE7E,GADF,EAEE8E,IAFF;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAIgCpB,0BAAM,CAAC,cAAD,EAAiB;AAAE1D,cAAAA,GAAG,EAAHA;AAAF,aAAjB,CAJtC;;AAAA;AAIQ2D,YAAAA,eAJR;;AAAA,kBAKMA,eAAe,IAAI,IALzB;AAAA;AAAA;AAAA;;AAAA,kBAMU,IAAInE,KAAJ,CAAU,wCAAV,CANV;;AAAA;AAAA,4BAQsBoE,IARtB;AAAA;AAAA,mBAQuCpB,gBAAQ,CAACmB,eAAD,EAAkB,MAAlB,CAR/C;;AAAA;AAAA;AAQQE,YAAAA,WARR,iBAQ2BC,KAR3B;;AAUE,+HAAYD,WAAW,CAACG,YAAxB,yEAAwC,EAAxC,mBAAoD,UAACe,GAAD;AAClD,kBAAIC,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,IAArC,EAA2CC,GAA3C,CAAJ,EAAqD;AACnDlB,gBAAAA,WAAW,CAACG,YAAZ,CAAyBe,GAAzB,IAAgC,UAAUD,IAAI,CAACC,GAAD,CAA9C;AACD;AACF,aAJD;;AAKA,+HAAYlB,WAAW,CAACI,eAAxB,yEAA2C,EAA3C,mBAAuD,UAACc,GAAD;AACrD,kBAAIC,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,IAArC,EAA2CC,GAA3C,CAAJ,EAAqD;AACnDlB,gBAAAA,WAAW,CAACI,eAAZ,CAA4Bc,GAA5B,IAAmC,UAAUD,IAAI,CAACC,GAAD,CAAjD;AACD;AACF,aAJD;;AAKA,gIAAYlB,WAAW,CAACK,gBAAxB,yEAA4C,EAA5C,oBAAwD,UAACa,GAAD;AACtD,kBAAIC,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,IAArC,EAA2CC,GAA3C,CAAJ,EAAqD;AACnDlB,gBAAAA,WAAW,CAACK,gBAAZ,CAA6Ba,GAA7B,IAAoC,UAAUD,IAAI,CAACC,GAAD,CAAlD;AACD;AACF,aAJD;;AApBF;AAAA,mBA0BQK,iBAAS,CAACzB,eAAD,EAAkBtC,oCAAewC,WAAf,EAA4BwB,SAA5B,EAAuC,CAAvC,CAAlB,CA1BjB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAkCeC;;;AAkDf;;;;;;oHAlDA,kBACEvD,KADF,EAEEuB,IAFF,EAGEJ,WAHF;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAKUjD,YAAAA,WALV,GAK2DqD,IAL3D,CAKUrD,WALV,EAKuBsF,cALvB,GAK2DjC,IAL3D,CAKuBiC,cALvB,EAKuC/B,eALvC,GAK2DF,IAL3D,CAKuCE,eALvC;AAMQxD,YAAAA,GANR,GAMcwD,eAAe,CAACN,WAAD,CAN7B;AAAA,4BAQQ2B,wBARR;AAAA,4BASI7E,GATJ;AAAA;AAAA;AAAA,mBAWYmE,mBAAmB,CAACb,IAAD,EAAOJ,WAAP,CAX/B;;AAAA;AAAA;AAAA,+EAYqC,UAACsC,GAAD,EAAMT,GAAN;AAC/BS,cAAAA,GAAG,CAACT,GAAD,CAAH,GAAW5B,cAAc,CAACG,IAAD,EAAOyB,GAAP,CAAzB;AACA,qBAAOS,GAAP;AACD,aAfL,EAeOC,mCAAc,IAAd,CAfP;AAAA;AAAA;;AAAA;AAAA;AAAA,mBAiBgC/B,0BAAM,CAAC,mBAAD,EAAsB;AAAE1D,cAAAA,GAAG,EAAHA;AAAF,aAAtB,CAjBtC;;AAAA;AAiBQ0F,YAAAA,eAjBR;;AAAA,kBAkBMA,eAAe,IAAI,IAlBzB;AAAA;AAAA;AAAA;;AAAA;AAAA,mBAmBUC,cAAM,CAACD,eAAD,CAnBhB;;AAAA;AAAA;AAAA,mBAqBQ3D,KAAK,CAAC;AACVjB,cAAAA,GAAG,EAAE,CAAC,KAAD,EAAQ,SAAR,CADK;AAEVd,cAAAA,GAAG,EAAHA,GAFU;AAGVC,cAAAA,WAAW,EAAXA;AAHU,aAAD,CArBb;;AAAA;AAAA,qDA2B2DsF,cA3B3D;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA,uCA2BeK,WA3Bf,eA2BeA,WA3Bf,EA2B4BC,UA3B5B,eA2B4BA,UA3B5B,EA2BwCC,aA3BxC,eA2BwCA,aA3BxC;;AAAA,kBA4BQF,WAAW,IAAI,IAAf,IAAuBA,WAAW,KAAK1C,WA5B/C;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA,iBA8Be4C,aA9Bf;AAAA;AAAA;AAAA;;AAAA;AAAA,mBA+BY/D,KAAK,CAAC;AACVjB,cAAAA,GAAG,EAAE,CAAC,KAAD,EAAQ,KAAR,EAAe+E,UAAf,EAA2B,cAA3B,CADK;AAEV7F,cAAAA,GAAG,EAAHA,GAFU;AAGVC,cAAAA,WAAW,EAAXA;AAHU,aAAD,CA/BjB;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA,mBAqCY8B,KAAK,CAAC;AACVjB,cAAAA,GAAG,EAAE,CAAC,KAAD,EAAQ,KAAR,EAAe+E,UAAf,CADK;AAEV7F,cAAAA,GAAG,EAAHA,GAFU;AAGVC,cAAAA,WAAW,EAAXA;AAHU,aAAD,CArCjB;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;;AAAA;;AAAA;AAAA;AAAA,mBA6CQ8B,KAAK,CAAC;AAAEjB,cAAAA,GAAG,EAAE,CAAC,KAAD,EAAQ,MAAR,CAAP;AAAwBd,cAAAA,GAAG,EAAHA,GAAxB;AAA6BC,cAAAA,WAAW,EAAXA;AAA7B,aAAD,CA7Cb;;AAAA;AAAA;AAAA,mBA+CQoD,WAAW,CAACC,IAAD,EAAOJ,WAAP,CA/CnB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAqDe6C;;;AAaf;;;;;;;;;;mHAbA,kBAA4BzC,IAA5B;AAAA;AAAA;AAAA;AAAA;AAAA;AACQ0C,YAAAA,MADR,GACiB1C,IAAI,CAACF,cAAL,EADjB;AAAA;AAAA,mBAEa6C,eAAO,CAACD,MAAD,CAFpB;;AAAA;AAAA,4CAE8BE,MAF9B;;AAAA,oCAEyC,CAFzC;AAAA;AAAA;AAAA;;AAAA,kBAGU,IAAI1G,KAAJ,0BAA2BwG,MAA3B,uBAHV;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;SAoBsBxB,IAAtB;AAAA;AAAA;;;2GAAO;AAAA;;AAAA,mFAqCI2B,SArCJ;;AAAA;AAAA;AAAA;AAAA;AAqCIA,YAAAA,SArCJ;;;AAsCH,qBAAOhF,6FAAIiF,eAAJ,oBACL;AAAA;;AAAA;AAAA,oBAAErB,GAAF;AAAA,oBAASsB,KAAT,YAASA,KAAT;;AAAA,4FAAmCtB,GAAnC,0BAA2CsB,KAA3C;AAAA,eADK,CAAP;AAGD,aAzCI;;AACLpG,YAAAA,WADK,SACLA,WADK,EAELsF,cAFK,SAELA,cAFK,EAGLnB,YAHK,SAGLA,YAHK,EAILzB,OAJK,SAILA,OAJK;;AAAA,kBAMDjD,OAAO,CAACY,GAAR,CAAYC,WAAZ,KAA4B,GAN3B;AAAA;AAAA;AAAA;;AAOH;AACAV,YAAAA,OAAO,CAAC,wBAAD,CAAP;AARG,+CASI,IATJ;;AAAA;AAAA;AAAA,4BAaHI,WAbG;AAAA,4BAcHsF,cAdG;AAAA,4BAeHnB,YAfG;AAAA;AAAA,mBAgBW1B,aAAa,CACzBC,OAAO,GAAG2D,YAAW,CAAC3D,OAAD,EAAU,OAAV,CAAd,GAAmC0C,SADjB,CAhBxB;;AAAA;AAAA;;AAAA,4BAmBa;AAAA;;AAAA,gDAAIkB,KAAJ;AAAIA,gBAAAA,KAAJ;AAAA;;AAAA,qBACdD,YAAW,MAAX,mEAAYhD,IAAI,CAAC0C,MAAL,CAAYnD,IAAxB,EAA8B,MAA9B,oBAAyC0D,KAAzC,EADc;AAAA,aAnBb;;AAAA,4BAqBc;AAAA;;AAAA,iDAAIA,KAAJ;AAAIA,gBAAAA,KAAJ;AAAA;;AAAA,qBACfD,YAAW,MAAX,mEAAYhD,IAAI,CAAC0C,MAAL,CAAYnD,IAAxB,EAA8B,OAA9B,oBAA0C0D,KAA1C,EADe;AAAA,aArBd;;AAAA,4BAuBa;AAAA;;AAAA,iDAAIA,KAAJ;AAAIA,gBAAAA,KAAJ;AAAA;;AAAA,qBACdD,YAAW,MAAX,mEAAYhD,IAAI,CAAC0C,MAAL,CAAYnD,IAAxB,oBAAiC0D,KAAjC,EADc;AAAA,aAvBb;;AAAA,4BAyBc7G,OAAO,CAACM,GAAR,EAzBd;AAAA;AAaHC,cAAAA,WAbG;AAcHsF,cAAAA,cAdG;AAeHnB,cAAAA,YAfG;AAgBH4B,cAAAA,MAhBG;AAmBHQ,cAAAA,cAnBG;AAqBHhD,cAAAA,eArBG;AAuBHJ,cAAAA,cAvBG;AAyBHqD,cAAAA,eAzBG;AAAA;AAYCnD,YAAAA,IAZD;AA4BC8C,YAAAA,eA5BD,GA4BmB,6BACtBjF,uFAAYmC,IAAI,CAACc,YAAjB,oBAAmC,UAACsC,OAAD;AAAA,qBAAqC,CACtEA,OADsE,EAEtE,IAAI1H,YAAJ,EAFsE,CAArC;AAAA,aAAnC,CADsB,CA5BnB;AAkCL;;;;AAlCK;AA4CG+C,YAAAA,KA5CH,GA4CWtB,aAAa,CAAC6C,IAAI,CAACkD,cAAL,EAAD,EAAwBL,SAAxB,CA5CxB;AAAA;AAAA,mBA8CGJ,YAAY,CAACzC,IAAD,CA9Cf;;AAAA;AAAA;AAAA,mBAiDGqD,6BAAQC,GAAR,CACJzF,uDAAC,OAAD,EAAU,MAAV,oBACE,UAAC0F,GAAD;AAAA,qBAAwBC,aAAK,CAACR,YAAW,CAAChD,IAAI,CAAC0C,MAAL,CAAYnD,IAAb,EAAmBgE,GAAnB,CAAZ,CAA7B;AAAA,aADF,CADI,CAjDH;;AAAA;AAuDHhH,YAAAA,OAAO,CAAC,OAAD,EAAUsG,SAAS,GAAG7E,IAAZ,CAAiB,IAAjB,CAAV,CAAP;AAvDG;AAAA,mBAwDGqF,6BAAQC,GAAR,CACJzF,6FAAIiF,eAAJ;AAAA,2HAAyB;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,8EAAQlD,WAAR,aAAqB6D,KAArB;AAAA;AAErBA,wBAAAA,KAAK,CAACV,KAAN,GAAc,WAAd;AACM9B,wBAAAA,WAHe,GAGDjB,IAAI,CAACc,YAAL,CAAkBlB,WAAlB,CAHC;AAAA;AAAA,+BAID8D,iGAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yCAEJC,aAAK,CAAC1C,WAAD,CAFD;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA,qEAIV,IAJU;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAAD,IAJC;;AAAA;AAIf2C,wBAAAA,KAJe;;AAAA,8BAWjBA,KAXiB,aAWjBA,KAXiB,eAWjBA,KAAK,CAAEC,MAAP,EAXiB;AAAA;AAAA;AAAA;;AAYnB;AACAJ,wBAAAA,KAAK,CAACV,KAAN,GAAc,iBAAd;AAbmB;AAAA,+BAcb9C,gBAAQ,CAACgB,WAAD,EAAcpB,cAAc,CAACG,IAAD,EAAOJ,WAAP,CAA5B,CAdK;;AAAA;AAenB6D,wBAAAA,KAAK,CAACV,KAAN,GAAc,gBAAd;AAfmB;AAAA;;AAAA;AAiBnB;AACA;AACAU,wBAAAA,KAAK,CAACV,KAAN,GAAc,SAAd;AAnBmB;AAAA,+BAoBb/B,KAAK,CAACvC,KAAD,EAAQuB,IAAR,EAAcJ,WAAd,CApBQ;;AAAA;AAsBnB6D,wBAAAA,KAAK,CAACV,KAAN,GAAc,wBAAd;AACMe,wBAAAA,UAvBa,GAuBU,EAvBV;AAAA;AAAA,+BAwBKjD,mBAAmB,CAACb,IAAD,EAAOJ,WAAP,CAxBxB;;AAAA;AAwBbmE,wBAAAA,SAxBa;AAyBnBN,wBAAAA,KAAK,CAACV,KAAN,uCAA2CgB,SAAS,CAAC/F,IAAV,CAAe,IAAf,CAA3C;AAzBmB,kEA0BI+F,SA1BJ;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AA0BRC,wBAAAA,QA1BQ;AA2BXC,wBAAAA,SA3BW,GA2BCnB,eAAe,CAACoB,GAAhB,CAAoBF,QAApB,CA3BD;;AAAA,8BA4BbC,SAAS,IAAI,IA5BA;AAAA;AAAA;AAAA;;AAAA,8BA6BT,IAAI/H,KAAJ,sBAAwB8H,QAAxB,iBA7BS;;AAAA;AAAA;AAAA;AAAA,+BAiCTC,SAAS,CAACtI,OAjCD;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAmCfmI,wBAAAA,UAAU,CAACK,IAAX,CAAgBH,QAAhB;;AAnCe;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;;AAAA;;AAAA;AAAA,8BAsCfF,UAAU,CAAClB,MAAX,GAAoB,CAtCL;AAAA;AAAA;AAAA;;AAuCjBa,wBAAAA,KAAK,CAACV,KAAN,kCAAsCe,UAAU,CAAC9F,IAAX,CAAgB,IAAhB,CAAtC;AAvCiB,8BAwCX,IAAI9B,KAAJ,CAAUuH,KAAK,CAACV,KAAhB,CAxCW;;AAAA;AA2CnBU,wBAAAA,KAAK,CAACV,KAAN,GAAc,kBAAd;AA3CmB;AAAA,+BA4Cbf,aAAa,CAACvD,KAAD,EAAQuB,IAAR,EAAcJ,WAAd,CA5CA;;AAAA;AA6CnB6D,wBAAAA,KAAK,CAACV,KAAN,GAAc,kCAAd;;AA7CmB;AAgDrBxG,wBAAAA,OAAO,gBAASqD,WAAT,GAAwBiD,SAAS,GAAG7E,IAAZ,CAAiB,IAAjB,CAAxB,CAAP;AACAyF,wBAAAA,KAAK,CAAC7H,OAAN;AAjDqB;AAAA;;AAAA;AAAA;AAAA;AAmDrBE,wBAAAA,QAAQ,yEACE8D,WADF,0BACkB6D,KAAK,CAACV,KADxB,SAENF,SAAS,GAAG7E,IAAZ,CAAiB,IAAjB,CAFM,CAAR;AAIAyF,wBAAAA,KAAK,CAAC5H,MAAN;;AAvDqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAAzB;;AAAA;AAAA;AAAA;AAAA,gBADI,CAxDH;;AAAA;AAAA;AAAA;AAAA,mBAsHKwH,6BAAQe,UAAR,CACJvG,6FAAIwG,4CAAAvB,eAAe,MAAf,CAAAA,eAAe,CAAnB,oBACE,UAACwB,MAAD;AAAA,qBAA2BA,MAAM,CAAC3I,OAAlC;AAAA,aADF,CADI,CAtHL;;AAAA;AAAA;AAqHG4I,YAAAA,YArHH,wDA2HK;AAAA,kBAAGD,MAAH,SAAGA,MAAH;AAAA,qBAAyBA,MAAM,KAAK,WAApC;AAAA,aA3HL;;AAAA,iBA6HCC,YA7HD;AAAA;AAAA;AAAA;;AAAA,+CA8HM,IA9HN;;AAAA;AAAA,+CAgIM,KAhIN;;AAAA;AAAA;AAmIH;AACA;AACAhI,YAAAA,OAAO,CAAC,KAAD,EAAQsG,SAAS,GAAG7E,IAAZ,CAAiB,IAAjB,CAAR,CAAP;AArIG,sDAsIsC8E,eAtItC;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA,gFAsISlD,WAtIT,oBAsIwBjE,OAtIxB,mBAsIwBA,OAtIxB;AAAA;AAAA;AAAA,mBAwIOA,OAxIP;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AA0ICG,YAAAA,QAAQ,WAAI8D,WAAJ,kCAAR;;AA1ID;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;;AAAA;;AAAA;AA8IH;AACArD,YAAAA,OAAO,CAAC,SAAD,CAAP;AA/IG,6BAgJHH,OAAO,CAACI,MAhJL;AAAA,uFAkJC,EAlJD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAqJWmG,eAAO,CAAC3C,IAAI,CAACkD,cAAL,EAAD,CArJlB;;AAAA;AAAA;AAAA,kFAuJK,UAACsB,QAAD;AAAA,qBACEtF,gBAAQ,CAACc,IAAI,CAACkD,cAAL,CAAoBsB,QAApB,CAAD,EAAgC,OAAhC,CADV;AAAA,aAvJL;AAAA;AAAA,kCAmJmBlB,GAnJnB;;AAAA;AAAA;AAAA;AAAA,8BA2JC,EA3JD;AAAA,sHA4JCtF,IA5JD,CA4JM,SAASyG,yDAACA,+EAAW,EAAX,IAAiB,IAAlB,mBAA+B,CAA/B,CAAT,GAA6C,IA5JnD;;AAAA,2BAgJYnI,KAhJZ;;AA+JHG,YAAAA,QAAQ,CACNuD,IAAI,CAAC0C,MAAL,CAAYnD,IADN,EAEN5C,WAFM,EAGN,wEAHM,CAAR;AA/JG;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;ACnRP,IAAM+H,IAAI,GAAGnJ,cAAc,EAA3B;;AAEA,IAAMuF,YAAY,GAAiB6D,4GAAAD,IAAI,CAAC,SAAD,CAAJ,kBAC5B,UAACE,GAAD;AACH,mBAAqBA,GAAG,CAACC,KAAJ,CAAU,GAAV,EAAe,CAAf,CAArB;AAAA;AAAA,MAAOtF,IAAP;AAAA,MAAauF,MAAb;;AAEA,MAAI,OAAOvF,IAAP,KAAgB,QAAhB,IAA4B,OAAOuF,MAAP,KAAgB,QAAhD,EAA0D;AACxD,QAAI,qBAAqB5D,IAArB,CAA0B4D,MAA1B,CAAJ,EAAqC;AACnC;AACA,aAAO,CAACvF,IAAD,EAAOuF,MAAP,CAAP;AACD,KAHD,MAGO;AACL;AACA,aAAO,CAACvF,IAAD,EAAO3D,YAAO,CAACkJ,MAAD,CAAd,CAAP;AACD;AACF,GARD,MAQO;AACLjI,IAAAA,OAAO,CAACD,KAAR,0EACoEgI,GADpE;AAGAxI,IAAAA,OAAO,CAAC2I,IAAR,CAAa,CAAb;AACD;AACF,CAlBgC,kBAmBX,UAAC7C,GAAD;;MAAO3C;MAAMuF;;AACjC5C,EAAAA,GAAG,CAAC3C,IAAD,CAAH,GAAYuF,IAAZ;AACA,SAAO5C,GAAP;AACD,CAtBgC,EAsB9B,EAtB8B,CAAnC;;AAwBA,IAAM8C,mBAAmB,GAAGN,IAAI,CAAC,gBAAD,CAAhC;;AACA,IAAMzC,cAAc,GAAoBgD,6CAAAD,mBAAmB,MAAnB,CAAAA,mBAAmB,EACzD,UAACJ,GAAD;AACE,MAAM3C,cAAc,GAAoB,EAAxC;AAEA,MAAIK,WAAW,GAAkB,IAAjC;;6CACmBsC,GAAG,CAACC,KAAJ,CAAU,GAAV;;;;AAAnB,wDAAmC;AAAA,UAAxBK,IAAwB;;AACjC,UAAMC,IAAI,GAAGzG,2CAAAwG,IAAI,MAAJ,CAAAA,IAAI,EAAO,CAAC,CAAR,CAAjB;;AAEA,UAAIC,IAAI,KAAK,GAAT,IAAgBA,IAAI,KAAK,GAA7B,EAAkC;AAChClD,QAAAA,cAAc,CAACkC,IAAf,CAAoB;AAClB7B,UAAAA,WAAW,EAAXA,WADkB;AAElBC,UAAAA,UAAU,EAAE7D,2CAAAwG,IAAI,MAAJ,CAAAA,IAAI,EAAO,CAAP,EAAU,CAAC,CAAX,CAFE;AAGlB1C,UAAAA,aAAa,EAAE2C,IAAI,KAAK;AAHN,SAApB;AAKD,OAND,MAMO;AACL7C,QAAAA,WAAW,GAAG4C,IAAd;AACD;AACF;;;;;;;AAED,SAAOjD,cAAP;AACD,CApBwD,CAA3D;;AAuBA,IAAM5C,OAAO,GAAGqF,IAAI,CAAC,SAAD,CAAJ,GAAkB9I,YAAO,CAAC8I,IAAI,CAAC,SAAD,CAAL,CAAzB,GAA6C3C,SAA7D;AAEA,IAAMpF,WAAW,GAAG+H,IAAI,CAAC,cAAD,CAAxB;AAEAxD,IAAI,CAAC;AAAEvE,EAAAA,WAAW,EAAXA,WAAF;AAAesF,EAAAA,cAAc,EAAdA,cAAf;AAA+BnB,EAAAA,YAAY,EAAZA,YAA/B;AAA6CzB,EAAAA,OAAO,EAAPA;AAA7C,CAAD,CAAJ,CACG+F,IADH,CACQ,UAACb,YAAD;AACJ,MAAI,CAACA,YAAL,EAAmB;AACjBnI,IAAAA,OAAO,CAACiJ,QAAR,GAAmB,CAAnB;AACD;AACF,CALH,EAMGC,KANH,CAMS,UAACC,MAAD;AACL1I,EAAAA,OAAO,CAACD,KAAR,CAAc2I,MAAd;AACAnJ,EAAAA,OAAO,CAACiJ,QAAR,GAAmB,CAAnB;AACD,CATH;;"}
|
|
1
|
+
{"version":3,"file":"test-e2e-interop.js","sources":["../src/test-e2e-interop/cli.ts","../src/test-e2e-interop/util.ts","../src/test-e2e-interop/test.ts","../src/test-e2e-interop/index.ts"],"sourcesContent":["import yargs from \"yargs\";\n\nconst y = yargs\n .strict(true)\n .usage(\"test-e2e-interop [options]\")\n .hide(\"version\")\n .config()\n .help()\n\n .option(\"fail-command\", {\n demandOption: false,\n describe:\n 'This command will be run in a shell (therefore commands like \"$SHELL\" will work) after failure to inspect the state.',\n type: \"string\",\n })\n .option(\"package-script\", {\n array: true,\n default: [\"clean?\", \"build!\", \"test!\", \"generate-examples-index?\"],\n demandOption: false,\n describe:\n 'The package scripts to run with each package, either \"script-name!\" to fail or \"script-name?\" to skip if the script doesn\\'t exist in given package. By default the script is used for all packages, if you want to use it only for one add package name: \"package-name script-name!\". Scripts are invoked sequentially and command line order is preserved.',\n type: \"string\",\n })\n .option(\"project\", {\n array: true,\n default: [] as string[],\n demandOption: false,\n describe:\n 'Projects to clone using Git, copy from directory or install from tarball. The format is \"package-name URL/path\".',\n type: \"string\",\n })\n .option(\"tmp-dir\", {\n demandOption: false,\n describe:\n \"The working directory for E2E testing. If omitted a new tmp dir will be created and then disposed of.\",\n type: \"string\",\n });\n\n/**\n *\n */\nexport function parseArguments(): ReturnType<typeof y[\"parseSync\"]> {\n return y.parserConfiguration({ \"camel-case-expansion\": false }).parseSync();\n}\n","import { execSync, spawn } from \"child_process\";\nimport { join } from \"path\";\nimport { createWriteStream, readFile } from \"fs-extra\";\n\nexport class ProjectState {\n /**\n * This will be resolved or rejected once all the tasks associated with this\n * project finish.\n */\n public promise: Promise<void>;\n /**\n * Run this to mark the project as successfully finished.\n */\n public resolve!: () => void;\n /**\n * Run this to mark the project as failed.\n */\n public reject!: (reason: Error) => void;\n /**\n * Provide information about current state of the project.\n */\n public stage = \"pending\";\n\n public constructor() {\n this.promise = new Promise<void>((resolve, reject): void => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n}\n\n/**\n * @param title\n * @param details\n */\nexport function logError(title: string, details?: string | Error): void {\n const wrappedDetails =\n details != null\n ? `\\n${details instanceof Error ? details.message : details}`\n : \"\";\n process.stderr.write(`\\n==> ${title}${wrappedDetails}\\n`);\n}\n/**\n * @param title\n * @param details\n */\nexport function logInfo(title: string, details?: string): void {\n const wrappedDetails = details ? `:\\n${details}` : \"\";\n process.stdout.write(`\\n==> ${title}${wrappedDetails}\\n`);\n}\n\n/**\n * @param cwd\n * @param failCommand\n * @param error\n */\nexport function execFail(\n cwd: string,\n failCommand: string | null | undefined,\n error: Error | string\n): void {\n if (failCommand) {\n console.error(\"\\n\\nReason for debugging:\");\n console.error(error);\n console.error(\"\\n\\nDebuging:\");\n try {\n execSync(failCommand, {\n cwd,\n encoding: \"utf8\",\n env: { ...process.env, VIS_INTEROP: \"1\" },\n stdio: \"inherit\",\n });\n } catch (error) {\n console.error(error);\n console.error(\n \"The error above is the fail command exitting with non-zero status, not an actual failure in the interop test.\"\n );\n }\n }\n}\n\nexport type Spawn = (options: SpawnOrTrhowArgs) => Promise<void>;\n\nexport interface SpawnOrTrhowArgs {\n cmd: readonly string[];\n cwd: string;\n failCommand?: string;\n}\n/**\n * @param logDir\n * @param getState\n */\nexport function createSpawner(logDir: string, getState: () => string[]): Spawn {\n let nextId = 1;\n\n return function spawnThrow({ cmd, cwd, failCommand }): ReturnType<Spawn> {\n const id = nextId++;\n const getHeaderLines = (): string[] => [\n \"time: \" + new Date().toISOString(),\n \"id: \" + id,\n \"cwd: \" + cwd,\n \"cmd: \" + cmd.map((word): string => JSON.stringify(word)).join(\" \"),\n \"states:\",\n ...getState(),\n ];\n const getLogMessage = (): string =>\n getHeaderLines()\n .map((line): string => \" \" + line)\n .join(\"\\n\");\n\n logInfo(\"Start\", getLogMessage());\n\n return new Promise((resolve, reject): void => {\n const commandLogPath = join(logDir, (\"\" + id).padStart(3, \"0\") + \".log\");\n const logStream = createWriteStream(commandLogPath, {\n flags: \"a\",\n });\n\n logStream.write(getHeaderLines().join(\"\\n\") + \"\\n\\n\");\n\n const child = spawn(cmd[0], cmd.slice(1), {\n cwd,\n env: { ...process.env, VIS_INTEROP: \"1\" },\n stdio: \"pipe\",\n });\n\n child.stdout.pipe(logStream);\n child.stderr.pipe(logStream);\n\n let failed = false;\n child.on(\"close\", (code): void => {\n if (failed) {\n // noop\n } else if (code !== 0) {\n logError(\"Fail\", getLogMessage());\n\n const errorMessage = `${cmd\n .map((word): string => `\"${word}\"`)\n .join(\" \")}: exited with ${code}.`;\n\n logStream.end((): void => {\n (async (): Promise<void> => {\n let commandOutput = \"\";\n try {\n commandOutput += await readFile(commandLogPath, \"utf-8\");\n } catch (error) {\n commandOutput += \"Failed to log command output.\";\n }\n execFail(cwd, failCommand, commandOutput + \"\\n\\n\" + errorMessage);\n })();\n });\n\n reject(new Error(errorMessage));\n } else {\n logInfo(\"Okay\", getLogMessage());\n resolve();\n }\n });\n child.on(\"error\", (error): void => {\n failed = true;\n\n logError(\"Fail\", getLogMessage());\n\n execFail(cwd, failCommand, error);\n\n reject(error);\n });\n });\n };\n}\n","import { DirResult, dirSync, setGracefulCleanup } from \"tmp\";\nimport { resolve as resolvePath } from \"path\";\nimport findUp from \"find-up\";\nimport {\n Stats,\n copy,\n copyFile,\n lstat,\n mkdir,\n mkdirp,\n readFile,\n readdir,\n writeFile,\n unlink,\n} from \"fs-extra\";\n\nimport {\n ProjectState,\n Spawn,\n createSpawner,\n execFail,\n logError,\n logInfo,\n} from \"./util\";\n\n// Remove all temporary files on process exit.\nsetGracefulCleanup();\n\ninterface TestData {\n failCommand?: string;\n packageScripts: readonly PackageScript[];\n projectPaths: ProjectPaths;\n tmpDir: DirResult;\n tmpLogsResolve(...paths: string[]): string;\n tmpReposResolve(...paths: string[]): string;\n tmpRootResolve(...paths: string[]): string;\n visDevUtilsPath: string;\n}\n\nexport interface PackageScript {\n packageName: string | null;\n scriptName: string;\n skipIfMissing: boolean;\n}\n\nexport type ProjectPaths = Record<string, string>;\n\n/**\n * @param tmpPath\n */\nasync function prepareTmpDir(tmpPath?: string): Promise<DirResult> {\n if (tmpPath) {\n await mkdirp(tmpPath);\n\n return {\n name: tmpPath,\n removeCallback: (): void => {},\n };\n } else {\n return dirSync({ unsafeCleanup: true });\n }\n}\n\n/**\n * @param projectName\n */\nfunction getTarballName(projectName: string): string {\n return `${projectName}-0.0.0-no-version.tgz`;\n}\n\n/**\n * @param root0\n * @param root0.tmpRootResolve\n * @param projectName\n */\nfunction getTarballPath(\n { tmpRootResolve }: TestData,\n projectName: string\n): string {\n return tmpRootResolve(`${projectName}.tgz`);\n}\n\n/**\n * @param data\n * @param projectName\n */\nasync function copyTarball(data: TestData, projectName: string): Promise<void> {\n await copyFile(\n data.tmpReposResolve(projectName, getTarballName(projectName)),\n getTarballPath(data, projectName)\n );\n}\n\n/**\n * @param cwd\n */\nasync function getPackageDeps(cwd: string): Promise<string[]> {\n const packageJSONPath = await findUp(\"package.json\", { cwd });\n if (packageJSONPath == null) {\n throw new Error(\"Project's package.json file not found.\");\n }\n const packageJSON = JSON.parse(await readFile(packageJSONPath, \"utf8\"));\n\n return [\n ...new Set([\n ...Object.keys(packageJSON.dependencies || {}),\n ...Object.keys(packageJSON.devDependencies || {}),\n ...Object.keys(packageJSON.peerDependencies || {}),\n ]),\n ];\n}\n\n/**\n * @param data\n * @param projectName\n */\nasync function getPackageLocalDeps(\n data: TestData,\n projectName: string\n): Promise<string[]> {\n const { projectPaths, tmpReposResolve } = data;\n const cwd = tmpReposResolve(projectName);\n return (await getPackageDeps(cwd)).filter(\n (depName): boolean => projectPaths[depName] != null\n );\n}\n\n/**\n * @param spawn\n * @param data\n * @param projectName\n */\nasync function clone(\n spawn: Spawn,\n data: TestData,\n projectName: string\n): Promise<void> {\n const { failCommand, projectPaths, tmpReposResolve } = data;\n\n const cwd = tmpReposResolve();\n const projectPath = projectPaths[projectName];\n\n if (/\\.git$/.test(projectPath)) {\n await spawn({\n cmd: [\n \"git\",\n \"clone\",\n projectPath,\n \"--single-branch\",\n \"--branch\",\n \"master\",\n \"--depth\",\n \"1\",\n ],\n cwd,\n failCommand,\n });\n } else {\n await copy(projectPath, tmpReposResolve(projectName), {\n filter(_src, dest): boolean {\n return (\n !/[\\\\/].git[\\\\/]/.test(dest) && !/[\\\\/]node_modules[\\\\/]/.test(dest)\n );\n },\n });\n }\n}\n\n/**\n * @param cwd\n * @param deps\n */\nasync function updatePackageDepVersions(\n cwd: string,\n deps: Record<string, string>\n): Promise<void> {\n const packageJSONPath = await findUp(\"package.json\", { cwd });\n if (packageJSONPath == null) {\n throw new Error(\"Project's package.json file not found.\");\n }\n const packageJSON = JSON.parse(await readFile(packageJSONPath, \"utf8\"));\n\n Object.keys(packageJSON.dependencies ?? {}).forEach((key): void => {\n if (Object.prototype.hasOwnProperty.call(deps, key)) {\n packageJSON.dependencies[key] = \"file:\" + deps[key];\n }\n });\n Object.keys(packageJSON.devDependencies ?? {}).forEach((key): void => {\n if (Object.prototype.hasOwnProperty.call(deps, key)) {\n packageJSON.devDependencies[key] = \"file:\" + deps[key];\n }\n });\n Object.keys(packageJSON.peerDependencies ?? {}).forEach((key): void => {\n if (Object.prototype.hasOwnProperty.call(deps, key)) {\n packageJSON.peerDependencies[key] = \"file:\" + deps[key];\n }\n });\n\n await writeFile(packageJSONPath, JSON.stringify(packageJSON, undefined, 4));\n}\n\n/**\n * @param spawn\n * @param data\n * @param projectName\n */\nasync function buildTestPack(\n spawn: Spawn,\n data: TestData,\n projectName: string\n): Promise<void> {\n const { failCommand, packageScripts, tmpReposResolve } = data;\n const cwd = tmpReposResolve(projectName);\n\n await updatePackageDepVersions(\n cwd,\n (\n await getPackageLocalDeps(data, projectName)\n ).reduce<Record<string, string>>((acc, key): Record<string, string> => {\n acc[key] = getTarballPath(data, key);\n return acc;\n }, Object.create(null))\n );\n const packageLockPath = await findUp(\"package-lock.json\", { cwd });\n if (packageLockPath != null) {\n await unlink(packageLockPath);\n }\n await spawn({\n cmd: [\"npm\", \"install\"],\n cwd,\n failCommand,\n });\n\n for (const { packageName, scriptName, skipIfMissing } of packageScripts) {\n if (packageName != null && packageName !== projectName) {\n continue;\n } else if (skipIfMissing) {\n await spawn({\n cmd: [\"npm\", \"run\", scriptName, \"--if-present\"],\n cwd,\n failCommand,\n });\n } else {\n await spawn({\n cmd: [\"npm\", \"run\", scriptName],\n cwd,\n failCommand,\n });\n }\n }\n\n await spawn({ cmd: [\"npm\", \"pack\"], cwd, failCommand });\n\n await copyTarball(data, projectName);\n}\n\n/**\n * @param data\n */\nasync function checkTmpPath(data: TestData): Promise<void> {\n const tmpDir = data.tmpRootResolve();\n if ((await readdir(tmpDir)).length !== 0) {\n throw new Error(`The tmp dir (\"${tmpDir}\") is not empty.`);\n }\n}\n\nexport interface TestArgs {\n failCommand?: string;\n projectPaths: ProjectPaths;\n packageScripts: readonly PackageScript[];\n tmpPath?: string;\n}\n/**\n * @param root0\n * @param root0.failCommand\n * @param root0.packageScripts\n * @param root0.projectPaths\n * @param root0.tmpPath\n */\nexport async function test({\n failCommand,\n packageScripts,\n projectPaths,\n tmpPath,\n}: TestArgs): Promise<boolean> {\n if (process.env.VIS_INTEROP === \"1\") {\n // This would result in infinite loop otherwise.\n logInfo(\"Skipping interop test.\");\n return true;\n }\n\n const data = Object.freeze<TestData>({\n failCommand,\n packageScripts,\n projectPaths,\n tmpDir: await prepareTmpDir(\n tmpPath ? resolvePath(tmpPath, \"repos\") : undefined\n ),\n tmpLogsResolve: (...paths: string[]): string =>\n resolvePath(data.tmpDir.name, \"logs\", ...paths),\n tmpReposResolve: (...paths: string[]): string =>\n resolvePath(data.tmpDir.name, \"repos\", ...paths),\n tmpRootResolve: (...paths: string[]): string =>\n resolvePath(data.tmpDir.name, ...paths),\n visDevUtilsPath: process.cwd(),\n });\n\n const projectStatuses = new Map<string, ProjectState>(\n Object.keys(data.projectPaths).map((project): [string, ProjectState] => [\n project,\n new ProjectState(),\n ])\n );\n /**\n *\n */\n function getStages(): string[] {\n return [...projectStatuses].map(\n ([key, { stage }]): string => ` ${key}: ${stage}`\n );\n }\n\n try {\n const spawn = createSpawner(data.tmpLogsResolve(), getStages);\n\n await checkTmpPath(data);\n\n // Prepare subdirectories under the root tmp directory.\n await Promise.all(\n [\"repos\", \"logs\"].map(\n (dir): Promise<void> => mkdir(resolvePath(data.tmpDir.name, dir))\n )\n );\n\n logInfo(\"Begin\", getStages().join(\"\\n\"));\n await Promise.all(\n [...projectStatuses].map(async ([projectName, state]): Promise<void> => {\n try {\n state.stage = \"preparing\";\n const projectPath = data.projectPaths[projectName];\n const stats = await (async (): Promise<Stats | null> => {\n try {\n return await lstat(projectPath);\n } catch {\n return null;\n }\n })();\n if (stats?.isFile()) {\n // The path points to a ready to install tarball.\n state.stage = \"copying tarball\";\n await copyFile(projectPath, getTarballPath(data, projectName));\n state.stage = \"tarball copied\";\n } else {\n // The path points to a repo (maybe remote) that has to be built,\n // tested and packed first.\n state.stage = \"cloning\";\n await clone(spawn, data, projectName);\n\n state.stage = \"gathering dependencies\";\n const failedDeps: string[] = [];\n const localDeps = await getPackageLocalDeps(data, projectName);\n state.stage = `waiting for dependencies (${localDeps.join(\", \")})`;\n for (const localDep of localDeps) {\n const depStatus = projectStatuses.get(localDep);\n if (depStatus == null) {\n throw new Error(`Dependency ${localDep} not found.`);\n }\n\n try {\n await depStatus.promise;\n } catch {\n failedDeps.push(localDep);\n }\n }\n if (failedDeps.length > 0) {\n state.stage = `dependencies failed: ${failedDeps.join(\", \")}`;\n throw new Error(state.stage);\n }\n\n state.stage = \"running CI tasks\";\n await buildTestPack(spawn, data, projectName);\n state.stage = \"cloned, built, tested and packed\";\n }\n\n logInfo(`Okay ${projectName}`, getStages().join(\"\\n\"));\n state.resolve();\n } catch (error) {\n logError(\n `Fail ${projectName} (${state.stage}):`,\n getStages().join(\"\\n\")\n );\n state.reject(error);\n }\n })\n );\n\n const allSucceeded = (\n await Promise.allSettled(\n [...projectStatuses.values()].map(\n (status): Promise<void> => status.promise\n )\n )\n ).every(({ status }): boolean => status === \"fulfilled\");\n\n if (allSucceeded) {\n return true;\n } else {\n return false;\n }\n } finally {\n // Wait for all the projects to finish and log the state summary and any\n // errors encountered.\n logInfo(\"End\", getStages().join(\"\\n\"));\n for (const [projectName, { promise }] of projectStatuses) {\n try {\n await promise;\n } catch (error) {\n logError(`${projectName} failed with`, error);\n }\n }\n\n // Print the detailed logs for inspection (especially in CI).\n logInfo(\"Outputs\");\n process.stdout.write(\n [\n \"\",\n ...(await Promise.all(\n (\n await readdir(data.tmpLogsResolve())\n ).map(\n (filename): Promise<string> =>\n readFile(data.tmpLogsResolve(filename), \"UTF-8\")\n )\n )),\n \"\",\n ].join(\"\\n\\n\" + (\"-\".repeat(80) + \"\\n\").repeat(2) + \"\\n\")\n );\n\n execFail(\n data.tmpDir.name,\n failCommand,\n \"Allow the state to be inspected in debug mode before the data is lost.\"\n );\n }\n}\n","import { parseArguments } from \"./cli\";\nimport { resolve } from \"path\";\nimport { ProjectPaths, PackageScript, test } from \"./test\";\n\nconst argv = parseArguments();\n\nconst projectPaths: ProjectPaths = argv[\"project\"]\n .map((raw): [string, string] => {\n const [name, path] = raw.split(\" \", 2);\n\n if (typeof name === \"string\" && typeof path === \"string\") {\n if (/^[a-zA-Z0-9]+:\\/\\//.test(path)) {\n // Remote URL, use as is.\n return [name, path];\n } else {\n // Local path, resolve to prevent CWD issues.\n return [name, resolve(path)];\n }\n } else {\n console.error(\n `--project-path should be in 'project-name ./path' format, got '${raw}'.`\n );\n process.exit(1);\n }\n })\n .reduce<ProjectPaths>((acc, [name, path]): ProjectPaths => {\n acc[name] = path;\n return acc;\n }, {});\n\nconst rawPackageScriptArg = argv[\"package-script\"];\nconst packageScripts: PackageScript[] = rawPackageScriptArg.flatMap(\n (raw): PackageScript[] => {\n const packageScripts: PackageScript[] = [];\n\n let packageName: string | null = null;\n for (const part of raw.split(\" \")) {\n const mode = part.slice(-1);\n\n if (mode === \"?\" || mode === \"!\") {\n packageScripts.push({\n packageName,\n scriptName: part.slice(0, -1),\n skipIfMissing: mode === \"?\",\n });\n } else {\n packageName = part;\n }\n }\n\n return packageScripts;\n }\n);\n\nconst tmpPath = argv[\"tmp-dir\"] ? resolve(argv[\"tmp-dir\"]) : undefined;\n\nconst failCommand = argv[\"fail-command\"];\n\ntest({ failCommand, packageScripts, projectPaths, tmpPath })\n .then((allSucceeded): void => {\n if (!allSucceeded) {\n process.exitCode = 1;\n }\n })\n .catch((reason): void => {\n console.error(reason);\n process.exitCode = 2;\n });\n"],"names":["y","yargs","strict","usage","hide","config","help","option","demandOption","describe","type","array","default","parseArguments","parserConfiguration","parseSync","ProjectState","promise","resolve","reject","logError","title","details","wrappedDetails","Error","message","process","stderr","write","logInfo","stdout","execFail","cwd","failCommand","error","console","execSync","encoding","env","VIS_INTEROP","stdio","createSpawner","logDir","getState","nextId","spawnThrow","cmd","id","getHeaderLines","Date","toISOString","_mapInstanceProperty","word","_JSON$stringify","join","getLogMessage","line","commandLogPath","_padStartInstanceProperty","logStream","createWriteStream","flags","child","spawn","_sliceInstanceProperty","pipe","failed","on","code","errorMessage","end","commandOutput","readFile","setGracefulCleanup","prepareTmpDir","tmpPath","mkdirp","name","removeCallback","dirSync","unsafeCleanup","getTarballName","projectName","getTarballPath","tmpRootResolve","copyTarball","data","copyFile","tmpReposResolve","getPackageDeps","findUp","packageJSONPath","JSON","packageJSON","parse","_Object$keys","dependencies","devDependencies","peerDependencies","getPackageLocalDeps","projectPaths","depName","clone","projectPath","test","copy","filter","_src","dest","updatePackageDepVersions","deps","key","Object","prototype","hasOwnProperty","call","writeFile","undefined","buildTestPack","packageScripts","acc","_Object$create","packageLockPath","unlink","packageName","scriptName","skipIfMissing","checkTmpPath","tmpDir","readdir","length","getStages","projectStatuses","stage","resolvePath","paths","tmpLogsResolve","visDevUtilsPath","project","_Promise","all","dir","mkdir","state","_asyncToGenerator","lstat","stats","isFile","failedDeps","localDeps","localDep","depStatus","get","push","allSettled","_valuesInstanceProperty","status","allSucceeded","filename","_repeatInstanceProperty","argv","_reduceInstanceProperty","raw","split","path","exit","rawPackageScriptArg","_flatMapInstanceProperty","part","mode","then","exitCode","catch","reason"],"mappings":"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"}
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Development utilities for the Vis family projects.
|
|
6
6
|
*
|
|
7
|
-
* @version 3.0.
|
|
8
|
-
* @date
|
|
7
|
+
* @version 3.0.1
|
|
8
|
+
* @date 2022-03-07T20:39:45.311Z
|
|
9
9
|
*
|
|
10
10
|
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
11
11
|
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
|
@@ -210,9 +210,9 @@ var _excluded = ["dependencies", "devDependencies", "peerDependencies"];
|
|
|
210
210
|
|
|
211
211
|
var _context, _context2;
|
|
212
212
|
|
|
213
|
-
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object);
|
|
213
|
+
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object); enumerableOnly && (symbols = _filterInstanceProperty__default['default'](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default['default'](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
214
214
|
|
|
215
|
-
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
215
|
+
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context22, _context23; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default['default'](_context22 = ownKeys$1(Object(source), !0)).call(_context22, function (key) { _defineProperty__default['default'](target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default['default'] ? _Object$defineProperties__default['default'](target, _Object$getOwnPropertyDescriptors__default['default'](source)) : _forEachInstanceProperty__default['default'](_context23 = ownKeys$1(Object(source))).call(_context23, function (key) { _Object$defineProperty__default['default'](target, key, _Object$getOwnPropertyDescriptor__default['default'](source, key)); }); } return target; }
|
|
216
216
|
chai.config.truncateThreshold = _Number$MAX_SAFE_INTEGER__default['default'];
|
|
217
217
|
chai.use(chaiFs__default['default']);
|
|
218
218
|
|
|
@@ -704,9 +704,9 @@ function generateRollupConfiguration(options) {
|
|
|
704
704
|
}];
|
|
705
705
|
}
|
|
706
706
|
|
|
707
|
-
function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object);
|
|
707
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default['default'](object); if (_Object$getOwnPropertySymbols__default['default']) { var symbols = _Object$getOwnPropertySymbols__default['default'](object); enumerableOnly && (symbols = _filterInstanceProperty__default['default'](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default['default'](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
708
708
|
|
|
709
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
709
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context8, _context9; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default['default'](_context8 = ownKeys(Object(source), !0)).call(_context8, function (key) { _defineProperty__default['default'](target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default['default'] ? _Object$defineProperties__default['default'](target, _Object$getOwnPropertyDescriptors__default['default'](source)) : _forEachInstanceProperty__default['default'](_context9 = ownKeys(Object(source))).call(_context9, function (key) { _Object$defineProperty__default['default'](target, key, _Object$getOwnPropertyDescriptor__default['default'](source, key)); }); } return target; }
|
|
710
710
|
tmpPromise.setGracefulCleanup();
|
|
711
711
|
var PACK_CMD = ["npm", "pack", "--dry-run"];
|
|
712
712
|
/**
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Development utilities for the Vis family projects.
|
|
6
6
|
*
|
|
7
|
-
* @version 3.0.
|
|
8
|
-
* @date
|
|
7
|
+
* @version 3.0.1
|
|
8
|
+
* @date 2022-03-07T20:39:45.311Z
|
|
9
9
|
*
|
|
10
10
|
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
|
11
11
|
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
|
@@ -163,9 +163,9 @@ var _excluded = ["dependencies", "devDependencies", "peerDependencies"];
|
|
|
163
163
|
|
|
164
164
|
var _context, _context2;
|
|
165
165
|
|
|
166
|
-
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object);
|
|
166
|
+
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
167
167
|
|
|
168
|
-
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
168
|
+
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context22, _context23; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context22 = ownKeys$1(Object(source), !0)).call(_context22, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context23 = ownKeys$1(Object(source))).call(_context23, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
169
169
|
config.truncateThreshold = _Number$MAX_SAFE_INTEGER;
|
|
170
170
|
use(chaiFs);
|
|
171
171
|
|
|
@@ -657,9 +657,9 @@ function generateRollupConfiguration(options) {
|
|
|
657
657
|
}];
|
|
658
658
|
}
|
|
659
659
|
|
|
660
|
-
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object);
|
|
660
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
661
661
|
|
|
662
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
662
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context8, _context9; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context8 = ownKeys(Object(source), !0)).call(_context8, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context9 = ownKeys(Object(source))).call(_context9, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
663
663
|
setGracefulCleanup();
|
|
664
664
|
var PACK_CMD = ["npm", "pack", "--dry-run"];
|
|
665
665
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vis-dev-utils",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.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)",
|
|
@@ -68,33 +68,33 @@
|
|
|
68
68
|
"lib"
|
|
69
69
|
],
|
|
70
70
|
"peerDependencies": {
|
|
71
|
-
"@babel/core": "7.
|
|
72
|
-
"@babel/plugin-proposal-class-properties": "7.
|
|
73
|
-
"@babel/plugin-transform-runtime": "7.
|
|
74
|
-
"@babel/preset-env": "7.
|
|
75
|
-
"@babel/preset-typescript": "7.
|
|
76
|
-
"@babel/register": "7.
|
|
77
|
-
"@babel/runtime-corejs3": "7.
|
|
78
|
-
"@rollup/plugin-commonjs": "
|
|
71
|
+
"@babel/core": "7.17.5",
|
|
72
|
+
"@babel/plugin-proposal-class-properties": "7.16.7",
|
|
73
|
+
"@babel/plugin-transform-runtime": "7.17.0",
|
|
74
|
+
"@babel/preset-env": "7.16.11",
|
|
75
|
+
"@babel/preset-typescript": "7.16.7",
|
|
76
|
+
"@babel/register": "7.17.0",
|
|
77
|
+
"@babel/runtime-corejs3": "7.17.2",
|
|
78
|
+
"@rollup/plugin-commonjs": "20.0.0",
|
|
79
79
|
"@rollup/plugin-json": "4.1.0",
|
|
80
|
-
"@rollup/plugin-node-resolve": "
|
|
81
|
-
"@typescript-eslint/eslint-plugin": "4.29.
|
|
82
|
-
"@typescript-eslint/parser": "4.29.
|
|
80
|
+
"@rollup/plugin-node-resolve": "13.0.4",
|
|
81
|
+
"@typescript-eslint/eslint-plugin": "4.29.3",
|
|
82
|
+
"@typescript-eslint/parser": "4.29.3",
|
|
83
83
|
"babel-plugin-css-modules-transform": "1.6.2",
|
|
84
84
|
"babel-plugin-istanbul": "6.0.0",
|
|
85
|
-
"chai": "4.3.
|
|
85
|
+
"chai": "4.3.6",
|
|
86
86
|
"chai-fs": "2.0.0",
|
|
87
87
|
"cheerio": "1.0.0-rc.10",
|
|
88
88
|
"eslint-config-prettier": "8.3.0",
|
|
89
89
|
"eslint-plugin-cypress": "2.11.3",
|
|
90
90
|
"eslint-plugin-eslint-comments": "3.2.0",
|
|
91
|
-
"eslint-plugin-jsdoc": "36.
|
|
91
|
+
"eslint-plugin-jsdoc": "36.1.1",
|
|
92
92
|
"eslint-plugin-prettier": "3.4.1",
|
|
93
93
|
"find-up": "5.0.0",
|
|
94
94
|
"globby": "11.0.4",
|
|
95
95
|
"jimp": "0.16.1",
|
|
96
|
-
"postcss-assets": "
|
|
97
|
-
"prettier": "
|
|
96
|
+
"postcss-assets": "6.0.0",
|
|
97
|
+
"prettier": "2.3.2",
|
|
98
98
|
"puppeteer": "10.2.0",
|
|
99
99
|
"rollup-plugin-analyzer": "4.0.0",
|
|
100
100
|
"rollup-plugin-babel": "4.4.0",
|
|
@@ -106,10 +106,10 @@
|
|
|
106
106
|
"rollup-plugin-typescript2": "0.30.0",
|
|
107
107
|
"tmp": "0.2.1",
|
|
108
108
|
"tmp-promise": "3.0.2",
|
|
109
|
-
"yargs": "17.
|
|
109
|
+
"yargs": "17.3.1"
|
|
110
110
|
},
|
|
111
111
|
"devDependencies": {
|
|
112
|
-
"@types/chai": "4.
|
|
112
|
+
"@types/chai": "4.3.0",
|
|
113
113
|
"@types/chai-fs": "2.0.2",
|
|
114
114
|
"@types/cheerio": "0.22.30",
|
|
115
115
|
"@types/jimp": "0.2.28",
|
|
@@ -117,19 +117,19 @@
|
|
|
117
117
|
"@types/npm": "7.19.0",
|
|
118
118
|
"@types/prettier": "2.3.2",
|
|
119
119
|
"@types/puppeteer": "5.4.4",
|
|
120
|
-
"@types/sinon": "10.0.
|
|
120
|
+
"@types/sinon": "10.0.11",
|
|
121
121
|
"@types/tmp": "0.2.1",
|
|
122
|
-
"@types/yargs": "17.0.
|
|
122
|
+
"@types/yargs": "17.0.9",
|
|
123
123
|
"builtin-modules": "3.2.0",
|
|
124
124
|
"eslint": "7.32.0",
|
|
125
125
|
"fs-extra": "10.0.0",
|
|
126
|
-
"husky": "7.0.
|
|
127
|
-
"lint-staged": "11.
|
|
128
|
-
"mocha": "9.1.
|
|
126
|
+
"husky": "7.0.4",
|
|
127
|
+
"lint-staged": "11.2.6",
|
|
128
|
+
"mocha": "9.1.1",
|
|
129
129
|
"npm-run-all": "4.1.5",
|
|
130
130
|
"opencollective": "1.0.3",
|
|
131
131
|
"rimraf": "3.0.2",
|
|
132
|
-
"rollup": "2.56.
|
|
132
|
+
"rollup": "2.56.3",
|
|
133
133
|
"rollup-plugin-node-externals": "2.2.0",
|
|
134
134
|
"sinon": "11.1.2",
|
|
135
135
|
"snap-shot-it": "7.9.6",
|