@intelligentgraphics/ig.gfx.packager 3.0.0-alpha.9 → 3.0.0-beta.0

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.
@@ -3,17 +3,17 @@ import * as path from 'path';
3
3
  import * as fs from 'fs';
4
4
  import { pipeline } from 'stream/promises';
5
5
  import { execSync } from 'child_process';
6
- import { l as logPackageMessage, b as buildFolders } from './index2.mjs';
7
- import { P as PACKAGE_FILE, I as INDEX_FILE, p as parseCreatorPackageName, g as getWorkspaceOutputPath, r as readPackageCreatorManifest, w as writePackageCreatorManifest, c as readPackageAnimationList, i as isErrorENOENT, e as readPackageCreatorIndex, d as detectWorkspace, a as detectPackage, f as readWorkspaceNpmManifest, t as translate, h as getPackageReleasesDirectory } from './cli.mjs';
8
- import { g as getVersionFileHandler, p as parseVersionFromString, a as getVersionInformationFromGit, b as getWorkspaceBannerText, c as parseVersionFromNumericVersion, P as PackageVersion } from './versionFile.mjs';
6
+ import { l as logPackageMessage, b as buildFolders } from './build.mjs';
7
+ import { P as PACKAGE_FILE, I as INDEX_FILE, p as parseCreatorPackageName, g as getWorkspaceOutputPath, r as readPackageCreatorManifest, w as writePackageCreatorManifest, c as readPackageAnimationList, i as isErrorENOENT, e as readPackageCreatorIndex, d as detectWorkspace, a as detectPackage, f as readWorkspaceNpmManifest, t as translate, h as getPackageReleasesDirectory } from '../cli.mjs';
8
+ import { g as getVersionFileHandler, p as parseVersionFromString, a as getVersionInformationFromGit, b as getWorkspaceBannerText, c as parseVersionFromNumericVersion, P as PackageVersion } from '../versionFile.mjs';
9
9
  import axios from 'axios';
10
- import { r as readPublishedPackageCreatorIndex, d as determineWorkspaceIGLibraries, a as readPublishedPackageNpmManifest, b as readPublishedPackageCreatorManifest } from './dependencies.mjs';
10
+ import { r as readPublishedPackageCreatorIndex, d as determineWorkspaceIGLibraries, a as readPublishedPackageNpmManifest, b as readPublishedPackageCreatorManifest } from '../dependencies.mjs';
11
11
  import Ajv from 'ajv';
12
12
  import JSZip from 'jszip';
13
13
  import * as terser from 'terser';
14
14
  import 'glob';
15
15
  import 'typescript';
16
- import './scripts.mjs';
16
+ import '../scripts.mjs';
17
17
  import 'typedoc';
18
18
  import 'update-notifier';
19
19
  import 'yargs/yargs';
@@ -25,11 +25,11 @@ import 'simple-git';
25
25
  import 'resolve';
26
26
 
27
27
  const PLUGIN_ID = "0feba3a0-b6d1-11e6-9598-0800200c9a66";
28
- /**
29
- * Starts an IG.Asset.Server session and returns the sessionId
30
- *
31
- * @param {SessionStartParams} params
32
- * @returns
28
+ /**
29
+ * Starts an IG.Asset.Server session and returns the sessionId
30
+ *
31
+ * @param {SessionStartParams} params
32
+ * @returns
33
33
  */
34
34
  const startSession = async ({
35
35
  url,
@@ -564,4 +564,4 @@ const createSessionManager = async params => {
564
564
  };
565
565
 
566
566
  export { releaseFolder };
567
- //# sourceMappingURL=index3.mjs.map
567
+ //# sourceMappingURL=publish.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publish.mjs","sources":["../../src/lib/assetService.ts","../../src/commands/publish/zip.ts","../../src/commands/publish/index.ts"],"sourcesContent":["import axios from \"axios\";\nimport * as fs from \"fs\";\n\nimport { Authentication } from \"./authentication\";\n\nexport interface SessionStartParams\n\textends Omit<\n\t\tSessionStartPayload,\n\t\t\"user\" | \"password\" | \"license\" | \"plugin\"\n\t> {\n\tauthentication: Authentication;\n\turl: string;\n}\n\nexport interface SessionStartPayload {\n\tplugin: string;\n\taddress: string | undefined;\n\tdomain: string;\n\tsubDomain: string;\n\tuser: string | undefined;\n\tpassword: string | undefined;\n\tlicense: string | undefined;\n}\n\nexport interface SessionStartResponse {\n\tsession: string;\n\tstate: string;\n}\n\nconst PLUGIN_ID = \"0feba3a0-b6d1-11e6-9598-0800200c9a66\";\n\nexport interface Session {\n\turl: string;\n\tsessionId: string;\n\tdomain: string;\n\tsubDomain: string;\n}\n\n/**\n * Starts an IG.Asset.Server session and returns the sessionId\n *\n * @param {SessionStartParams} params\n * @returns\n */\nexport const startSession = async ({\n\turl,\n\tauthentication,\n\t...params\n}: SessionStartParams): Promise<Session> => {\n\tconst payload: SessionStartPayload = {\n\t\t...params,\n\t\tuser: undefined,\n\t\tpassword: undefined,\n\t\tlicense: undefined,\n\t\tplugin: PLUGIN_ID,\n\t};\n\n\tif (authentication.type === \"credentials\") {\n\t\tpayload.user = authentication.username;\n\t\tpayload.password = authentication.password;\n\t} else if (authentication.type === \"license\") {\n\t\tpayload.license = authentication.license;\n\t}\n\n\tconst {\n\t\tdata: { session: sessionId, state },\n\t} = await axios.post<SessionStartResponse>(\n\t\t`Session/Start2`,\n\t\tJSON.stringify(payload),\n\t\t{\n\t\t\tbaseURL: url,\n\t\t},\n\t);\n\n\tif (state !== \"SUCCESS\") {\n\t\tthrow new Error(\n\t\t\t`Could not start session: IG.Asset.Server responded with ${state}`,\n\t\t);\n\t}\n\n\treturn {\n\t\turl,\n\t\tsessionId,\n\t\tdomain: params.domain,\n\t\tsubDomain: params.subDomain,\n\t};\n};\n\nexport const closeSession = async (session: Session) => {\n\tawait axios.get(`Session/Close/${session.sessionId}`, {\n\t\tbaseURL: session.url,\n\t});\n};\n\nexport interface UploadPackageDetails {\n\tname: string;\n\tversion: string;\n}\n\nexport const uploadPackage = async (\n\tsession: Session,\n\t{ name, version }: UploadPackageDetails,\n\tzipFilePath: string,\n) => {\n\ttry {\n\t\tawait uploadPackageToUrl(\n\t\t\tsession.url,\n\t\t\t`UploadPackage/${session.sessionId}/${name}_${version}`,\n\t\t\tzipFilePath,\n\t\t);\n\t} catch (err) {\n\t\tawait uploadPackageToUrl(\n\t\t\tsession.url,\n\t\t\t`UploadPackage/${session.sessionId}/${name}_${version}/`,\n\t\t\tzipFilePath,\n\t\t);\n\t}\n};\n\nexport interface ExistingPackage {\n\tscope: string;\n\tinformalVersion: string;\n\tsupport: boolean;\n\tnumericVersion: number;\n}\n\nexport const getExistingPackages = async (\n\tsession: Session,\n): Promise<ExistingPackage[] | undefined> =>\n\taxios\n\t\t.get(`Script/GetInformation/${session.sessionId}`, {\n\t\t\tbaseURL: session.url,\n\t\t\tvalidateStatus: (status) => status === 404 || status === 200,\n\t\t})\n\t\t.then(({ data }) => (Array.isArray(data) ? data : undefined));\n\nconst uploadPackageToUrl = (url: string, path: string, zipFilePath: string) =>\n\taxios\n\t\t.post(path, fs.createReadStream(zipFilePath), {\n\t\t\tbaseURL: url,\n\t\t})\n\t\t.then(({ data, status }) => {\n\t\t\tlet objectBody: any;\n\n\t\t\tif (typeof data === \"string\") {\n\t\t\t\ttry {\n\t\t\t\t\tobjectBody = JSON.parse(data);\n\t\t\t\t} catch (err) {}\n\t\t\t} else if (typeof data === \"object\") {\n\t\t\t\tobjectBody = data;\n\t\t\t}\n\n\t\t\tif (objectBody !== undefined) {\n\t\t\t\tif (\"state\" in objectBody && objectBody.state !== \"SUCCESS\") {\n\t\t\t\t\tthrow new Error(objectBody.response ?? objectBody.state);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (status >= 400) {\n\t\t\t\tif (objectBody !== undefined) {\n\t\t\t\t\tlet text = \"\";\n\n\t\t\t\t\tfor (const key in objectBody) {\n\t\t\t\t\t\ttext += key + \": \\n\";\n\t\t\t\t\t\tif (typeof objectBody[key] === \"object\") {\n\t\t\t\t\t\t\ttext += JSON.stringify(\n\t\t\t\t\t\t\t\tobjectBody[key],\n\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttext += objectBody[key];\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttext += \"\\n\\n\";\n\t\t\t\t\t}\n\n\t\t\t\t\tthrow new Error(text);\n\t\t\t\t}\n\n\t\t\t\tthrow new Error(data);\n\t\t\t}\n\n\t\t\treturn data;\n\t\t});\n","import Ajv, { ValidateFunction } from \"ajv\";\nimport axios from \"axios\";\nimport JSZip from \"jszip\";\nimport * as path from \"path\";\nimport * as fs from \"fs\";\nimport * as terser from \"terser\";\n\nimport { isErrorENOENT } from \"../../lib/error\";\nimport { logPackageMessage } from \"../../lib/log\";\nimport {\n\tCreatorPackage,\n\treadPackageCreatorManifest,\n\twritePackageCreatorManifest,\n\treadPackageAnimationList,\n\treadPackageCreatorIndex,\n\tparseCreatorPackageName,\n\tPackageLocation,\n\tPackageNpmManifest,\n\tINDEX_FILE,\n\tPACKAGE_FILE,\n} from \"../../lib/package\";\nimport { getWorkspaceOutputPath, WorkspaceLocation } from \"../../lib/workspace\";\nimport {\n\tPublishedPackageLocation,\n\treadPublishedPackageCreatorIndex,\n} from \"../../lib/publishedPackage\";\n\nexport const buildArchiveFromPublishedPackage = (\n\tlocation: PublishedPackageLocation,\n\tmanifest: PackageNpmManifest,\n\tcreatorPackage: CreatorPackage,\n) => {\n\tconst archive = new JSZip();\n\n\tarchive.file(PACKAGE_FILE, JSON.stringify(creatorPackage, null, 2));\n\n\tconst index = readPublishedPackageCreatorIndex(location);\n\n\tif (index !== undefined) {\n\t\tarchive.file(INDEX_FILE, JSON.stringify(index, null, 2));\n\t}\n\n\tarchive.file(\n\t\tmanifest.main,\n\t\tfs.createReadStream(path.join(location.path, manifest.main)),\n\t);\n\n\treturn archive;\n};\n\nlet validateSchema: ValidateFunction | undefined;\n\nconst runtimeScripts: CreatorPackage[\"Type\"][] = [\n\t\"Interactor\",\n\t\"Core\",\n\t\"Mixed\",\n];\n\nconst notRuntimeScripts: CreatorPackage[\"Type\"][] = [\"Context\", \"Evaluator\"];\n\nexport const buildArchiveFromPackage = async (\n\tworkspaceLocation: WorkspaceLocation,\n\tpackageLocation: PackageLocation,\n\tdata: CreatorPackage,\n) => {\n\tconst { domain, subdomain } = parseCreatorPackageName(data);\n\n\tconst logStep = (step: string) => logPackageMessage(data.Package, step);\n\n\tif (validateSchema === undefined) {\n\t\tvalidateSchema = await axios\n\t\t\t.get(\n\t\t\t\t\"https://archive.intelligentgraphics.biz/schemas/gfx/animation.json\",\n\t\t\t)\n\t\t\t.then(({ data }) =>\n\t\t\t\tnew Ajv({\n\t\t\t\t\tcoerceTypes: true,\n\t\t\t\t\tallErrors: true,\n\t\t\t\t\tremoveAdditional: true,\n\t\t\t\t\tuseDefaults: \"empty\",\n\t\t\t\t\tvalidateSchema: \"log\",\n\t\t\t\t}).compile(data),\n\t\t\t);\n\t}\n\n\tconst libFilePath = path.join(\n\t\tgetWorkspaceOutputPath(workspaceLocation),\n\t\t`${data.Package}.min.js`,\n\t);\n\n\tconst scriptDirectories: string[] = [\n\t\tpackageLocation.path,\n\t\tpackageLocation.scriptsDir,\n\t];\n\n\tif (subdomain === \"GFX.Standard\") {\n\t\tlogStep(`Including Images folder`);\n\t\tscriptDirectories.push(path.join(packageLocation.path, \"Images\"));\n\t}\n\n\tconst manifest = readPackageCreatorManifest(packageLocation);\n\n\tif (manifest !== undefined) {\n\t\tif (manifest.RunTime && notRuntimeScripts.includes(manifest.Type)) {\n\t\t\tlogStep(\"Setting script RunTime to false because of script type\");\n\t\t\twritePackageCreatorManifest(packageLocation, {\n\t\t\t\t...manifest,\n\t\t\t\tRunTime: false,\n\t\t\t});\n\t\t} else if (\n\t\t\t!manifest.RunTime &&\n\t\t\truntimeScripts.includes(manifest.Type)\n\t\t) {\n\t\t\tlogStep(\"Setting script RunTime to true because of script type\");\n\t\t\twritePackageCreatorManifest(packageLocation, {\n\t\t\t\t...manifest,\n\t\t\t\tRunTime: true,\n\t\t\t});\n\t\t}\n\t}\n\n\t// if (index === undefined) {\n\t// \tthrow new Error(\n\t// \t\t`Could not find an \"${INDEX_FILE}\" file in \"${primaryScriptDir}\"`,\n\t// \t);\n\t// }\n\n\tconst animations = new Map<string, string>();\n\n\tfor (const scriptFilePath of readPackageAnimationList(packageLocation)) {\n\t\tconst content = fs.readFileSync(scriptFilePath, { encoding: \"utf8\" })!;\n\n\t\tlet data: { Id: string };\n\n\t\ttry {\n\t\t\tdata = JSON.parse(content);\n\t\t} catch (err) {\n\t\t\tconst relativePath = path.relative(\n\t\t\t\tworkspaceLocation.path,\n\t\t\t\tscriptFilePath,\n\t\t\t);\n\n\t\t\tif (err instanceof SyntaxError) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Encountered invalid syntax in file \"${relativePath}\": ${String(\n\t\t\t\t\t\terr,\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t}\n\t\t\tthrow new Error(\n\t\t\t\t`Encountered an unexpected error while parsing animation json file at path \"${relativePath}\"`,\n\t\t\t\t{\n\t\t\t\t\tcause: err,\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\n\t\tvalidateSchema!(data);\n\n\t\tanimations.set(data.Id, JSON.stringify(data));\n\t}\n\n\tlet libFile: string | undefined;\n\n\ttry {\n\t\tlibFile = fs.readFileSync(libFilePath, { encoding: \"utf8\" });\n\t} catch (err) {\n\t\tif (!isErrorENOENT(err)) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\n\tif (libFile === undefined) {\n\t\tif (animations.size === 0) {\n\t\t\tthrow new Error(`Could not find a javascript file at \"${libFilePath}\".\nPackaging without a javascript file is only allowed when animation json files are available`);\n\t\t}\n\t}\n\n\tconst archive = new JSZip();\n\n\tlet library: string = \"\";\n\n\tif (libFile) {\n\t\tlibrary = libFile;\n\t}\n\n\tif (!library) {\n\t\tconst date = new Date(Date.now());\n\t\tlibrary = `/* This file is part of the ${domain} Data Packages.\n\t\t* Copyright (C) ${date.getFullYear()} intelligentgraphics. All Rights Reserved. */`;\n\t}\n\n\tif (animations.size > 0) {\n\t\tconst scopeParts = data.Scope.split(\".\");\n\t\tconst scope = data.Scope;\n\n\t\tlibrary += createNamespace(scopeParts);\n\n\t\tfor (const [name, data] of animations) {\n\t\t\tlibrary += `${scope}.${name} = ` + data + \";\";\n\t\t\tlogPackageMessage(\n\t\t\t\tmanifest.Package,\n\t\t\t\t`Added animation ${scope}.${name}`,\n\t\t\t);\n\t\t}\n\t}\n\n\tconst minifyResult = await terser.minify(library, { ecma: 5 });\n\n\tarchive.file(`${data.Package}.js`, minifyResult.code!);\n\tarchive.file(PACKAGE_FILE, JSON.stringify(data, null, 2));\n\n\tconst creatorIndex = readPackageCreatorIndex(packageLocation);\n\n\tif (creatorIndex !== undefined) {\n\t\tarchive.file(INDEX_FILE, JSON.stringify(creatorIndex, null, 2));\n\t}\n\n\tfor (const directory of scriptDirectories) {\n\t\ttry {\n\t\t\tfor (const file of fs.readdirSync(directory)) {\n\t\t\t\tconst { ext } = path.parse(file);\n\n\t\t\t\tswitch (ext) {\n\t\t\t\t\tcase \".png\":\n\t\t\t\t\tcase \".jpeg\":\n\t\t\t\t\tcase \".jpg\":\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tarchive.file(\n\t\t\t\t\tfile,\n\t\t\t\t\tfs.createReadStream(path.join(directory, file)),\n\t\t\t\t);\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tconsole.error(`Script directory \"${directory}\" does not exist`);\n\t\t}\n\t}\n\n\treturn archive;\n};\n\nconst createNamespace = (parts: string[]) => {\n\tlet code = `var ${parts[0]};`;\n\n\tfor (let index = 0; index < parts.length; index++) {\n\t\tconst path = parts.slice(0, index + 1).join(\".\");\n\n\t\tcode += `\\n(${path} = ${path} || {});`;\n\t}\n\n\treturn code;\n};\n","import * as path from \"path\";\nimport * as fs from \"fs\";\nimport { pipeline } from \"stream/promises\";\nimport { execSync } from \"child_process\";\n\nimport { logPackageMessage } from \"../../lib/log\";\nimport { translate } from \"../../lib/localization\";\nimport { Authentication } from \"../../lib/authentication\";\nimport {\n\tCreatorPackage,\n\tdetectPackage,\n\tgetPackageReleasesDirectory,\n\tparseCreatorPackageName,\n\treadPackageCreatorManifest,\n} from \"../../lib/package\";\nimport {\n\tdetectWorkspace,\n\tgetWorkspaceOutputPath,\n\treadWorkspaceNpmManifest,\n\tWorkspaceLocation,\n} from \"../../lib/workspace\";\nimport { getVersionInformationFromGit } from \"../../lib/git\";\nimport { getWorkspaceBannerText } from \"../../lib/banner\";\nimport {\n\tparseVersionFromNumericVersion,\n\tparseVersionFromString,\n} from \"../../lib/parseVersion\";\nimport { getVersionFileHandler } from \"../../lib/versionFile\";\nimport * as AssetService from \"../../lib/assetService\";\nimport { isErrorENOENT } from \"../../lib/error\";\nimport { determineWorkspaceIGLibraries } from \"../../lib/dependencies\";\nimport {\n\treadPublishedPackageCreatorManifest,\n\treadPublishedPackageNpmManifest,\n} from \"../../lib/publishedPackage\";\nimport { Prompter } from \"../../lib/prompter\";\nimport { PackageVersion } from \"../../lib/packageVersion\";\n\nimport { BuildFoldersOptions, buildFolders } from \"../build\";\nimport {\n\tbuildArchiveFromPackage,\n\tbuildArchiveFromPublishedPackage,\n} from \"./zip\";\n\nexport interface ReleaseFolderOptions\n\textends Omit<\n\t\tBuildFoldersOptions,\n\t\t\"skipPackagesWithoutTsFiles\" | \"banner\" | \"directories\"\n\t> {\n\tdirectory: string;\n\tnoUpload: boolean;\n\tnewVersion: string;\n\tdomain?: string;\n\tsubdomain?: string;\n\taddress?: string;\n\tservice: string;\n\tauthentication?: Authentication;\n\tpushOnly: boolean;\n\tbanner?: boolean;\n\tprompter: Prompter;\n}\n\nexport const releaseFolder = async (options: ReleaseFolderOptions) => {\n\tconst workspace = detectWorkspace(options.cwd);\n\tconst location = detectPackage(workspace, options.directory);\n\n\tconst { write: writeVersionFile, reset: resetVersionFile } =\n\t\tgetVersionFileHandler(location);\n\n\tconst packageDescription = readPackageCreatorManifest(location);\n\tconst fullPackageName = packageDescription.Package;\n\tconst { domain, subdomain } = parseCreatorPackageName(packageDescription);\n\n\tconst publishDomain = options.domain ?? domain;\n\tconst publishSubdomain = options.subdomain ?? subdomain;\n\n\tconst sharedPackageJson = readWorkspaceNpmManifest(workspace);\n\n\tlet newVersion: PackageVersion;\n\ttry {\n\t\tnewVersion = parseVersionFromString(options.newVersion);\n\t} catch (err) {\n\t\tthrow new Error(`Please enter a version in this format 1.0.0.100`);\n\t}\n\n\tif (newVersion.buildNumber < 100) {\n\t\tnewVersion.preRelease = {\n\t\t\ttype: \"beta\",\n\t\t\tversion: newVersion.buildNumber,\n\t\t};\n\t} else if (newVersion.buildNumber > 100) {\n\t\tnewVersion.preRelease = {\n\t\t\ttype: \"patch\",\n\t\t\tversion: newVersion.buildNumber - 100,\n\t\t};\n\t}\n\n\tif (sharedPackageJson !== undefined) {\n\t\tlogPackageMessage(\n\t\t\tpackageDescription.Package,\n\t\t\t`Running npm install to make sure all dependencies are up to date`,\n\t\t);\n\t\texecSync(`npm install`, { encoding: \"utf-8\", cwd: workspace.path });\n\t}\n\n\tconst binDir = getWorkspaceOutputPath(workspace);\n\tfs.mkdirSync(binDir, { recursive: true });\n\n\tlet assetServerPackageDetails: AssetService.UploadPackageDetails;\n\n\tlet packageNameWithVersion: string;\n\n\t{\n\t\tconst versionWithoutPrelease = newVersion.clone();\n\t\tversionWithoutPrelease.preRelease = undefined;\n\t\tconst newVersionString = versionWithoutPrelease.toVersionString({\n\t\t\tbuildNumber: true,\n\t\t});\n\t\tpackageNameWithVersion = `${packageDescription.Package}_${newVersionString}`;\n\n\t\tassetServerPackageDetails = {\n\t\t\tname: packageDescription.Package,\n\t\t\tversion: newVersionString,\n\t\t};\n\t}\n\n\tconst zipFilePath = path.join(binDir, packageNameWithVersion + \".zip\");\n\n\ttry {\n\t\tif (options.pushOnly) {\n\t\t\tif (!fs.existsSync(zipFilePath)) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Expected a zip file to exist at path ${zipFilePath} since pushOnly is specified`,\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\tconst gitVersionInformation = await getVersionInformationFromGit(\n\t\t\t\tworkspace,\n\t\t\t\tlocation,\n\t\t\t);\n\n\t\t\twriteVersionFile(fullPackageName, newVersion);\n\n\t\t\tconst bannerText =\n\t\t\t\tsharedPackageJson !== undefined\n\t\t\t\t\t? getWorkspaceBannerText(sharedPackageJson)\n\t\t\t\t\t: undefined;\n\n\t\t\tawait buildFolders({\n\t\t\t\t...options,\n\t\t\t\tdirectories: [location.path],\n\t\t\t\tskipPackagesWithoutTsFiles: true,\n\t\t\t\tbanner: options.banner\n\t\t\t\t\t? {\n\t\t\t\t\t\t\ttext: bannerText,\n\t\t\t\t\t\t\tcommit: gitVersionInformation.commit,\n\t\t\t\t\t\t\tcommitDirty: gitVersionInformation.dirty,\n\t\t\t\t\t\t\tversion: newVersion.toVersionString({\n\t\t\t\t\t\t\t\tbuildNumber: true,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tdate: new Date(Date.now()),\n\t\t\t\t\t\t\t// gitVersionInformation.commitDate\n\t\t\t\t\t\t\t// \t? new Date(gitVersionInformation.commitDate)\n\t\t\t\t\t\t\t// \t: new Date(Date.now()),\n\t\t\t\t\t }\n\t\t\t\t\t: undefined,\n\t\t\t});\n\n\t\t\tnewVersion.preRelease = undefined;\n\n\t\t\ttry {\n\t\t\t\tfs.rmSync(zipFilePath);\n\t\t\t} catch (err) {\n\t\t\t\tif (!isErrorENOENT(err)) {\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst archive = await buildArchiveFromPackage(\n\t\t\t\tworkspace,\n\t\t\t\tlocation,\n\t\t\t\tpackageDescription,\n\t\t\t);\n\n\t\t\tconst zipOutputStream = fs.createWriteStream(zipFilePath);\n\t\t\tawait pipeline(archive.generateNodeStream(), zipOutputStream);\n\t\t}\n\n\t\tif (!options.noUpload) {\n\t\t\tif (!options.authentication) {\n\t\t\t\tthrow new Error(`Expected authentication to be available`);\n\t\t\t}\n\n\t\t\tlogPackageMessage(\n\t\t\t\tpackageDescription.Package,\n\t\t\t\t`Opening connection to IG.Asset.Server`,\n\t\t\t);\n\n\t\t\tconst sessionManager = await createSessionManager({\n\t\t\t\turl: options.service,\n\t\t\t\taddress: options.address,\n\t\t\t\tdomain: publishDomain,\n\t\t\t\tsubDomain: publishSubdomain,\n\t\t\t\tauthentication: options.authentication,\n\t\t\t});\n\n\t\t\ttry {\n\t\t\t\tif (\n\t\t\t\t\t!(await ensureRequiredVersions(\n\t\t\t\t\t\tworkspace,\n\t\t\t\t\t\tpackageDescription,\n\t\t\t\t\t\tsessionManager,\n\t\t\t\t\t\toptions.prompter,\n\t\t\t\t\t))\n\t\t\t\t) {\n\t\t\t\t\tlogPackageMessage(\n\t\t\t\t\t\tpackageDescription.Package,\n\t\t\t\t\t\t\"Failed to ensure required dependency versions: IG.Asset.Server does not yet support required apis for dependency check\",\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tlogPackageMessage(\n\t\t\t\t\tpackageDescription.Package,\n\t\t\t\t\t`Uploading package to ${publishDomain}.${publishSubdomain}`,\n\t\t\t\t);\n\n\t\t\t\tawait AssetService.uploadPackage(\n\t\t\t\t\tsessionManager.getTargetSession(),\n\t\t\t\t\tassetServerPackageDetails,\n\t\t\t\t\tzipFilePath,\n\t\t\t\t);\n\t\t\t} finally {\n\t\t\t\tawait sessionManager.destroy().catch((err) => {\n\t\t\t\t\tlogPackageMessage(\n\t\t\t\t\t\tpackageDescription.Package,\n\t\t\t\t\t\t`Failed to close IG.Asset.Server session(s): ${err}`,\n\t\t\t\t\t);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t} catch (err) {\n\t\tresetVersionFile();\n\t\tthrow err;\n\t}\n\n\tif (newVersion.buildNumber >= 100 && !options.pushOnly) {\n\t\tlogPackageMessage(\n\t\t\tfullPackageName,\n\t\t\ttranslate(\"messages.movingReleaseZip\"),\n\t\t);\n\n\t\tconst zipFileName = `${packageNameWithVersion}.zip`;\n\t\tconst releasesPath = getPackageReleasesDirectory(location);\n\n\t\tfs.mkdirSync(releasesPath, { recursive: true });\n\t\tfs.copyFileSync(zipFilePath, path.join(releasesPath, zipFileName));\n\t}\n};\n\nconst ensureRequiredVersions = async (\n\tworkspaceLocation: WorkspaceLocation,\n\tcreatorPackage: CreatorPackage,\n\tsessionManager: SessionManager,\n\tprompter: Prompter,\n) => {\n\tinterface UploadedPackage\n\t\textends Omit<AssetService.ExistingPackage, \"version\"> {\n\t\tversion: PackageVersion;\n\t}\n\n\tconst libraries = determineWorkspaceIGLibraries(workspaceLocation);\n\n\t// If there are no libraries, we don't need to check for required versions\n\tif (libraries.length === 0) {\n\t\treturn true;\n\t}\n\n\tconst targetSession = sessionManager.getTargetSession();\n\n\tconst rawUploadedPackages = await AssetService.getExistingPackages(\n\t\ttargetSession,\n\t);\n\n\tif (rawUploadedPackages === undefined) {\n\t\treturn false;\n\t}\n\n\tconst uploadedPackages = rawUploadedPackages.map(\n\t\t(entry): UploadedPackage => {\n\t\t\tlet version: PackageVersion;\n\n\t\t\ttry {\n\t\t\t\tversion = parseVersionFromNumericVersion(entry.numericVersion);\n\t\t\t} catch (err) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Encountered invalid format for version ${entry.numericVersion}`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (version.buildNumber < 100) {\n\t\t\t\tversion.preRelease = {\n\t\t\t\t\ttype: \"beta\",\n\t\t\t\t\tversion: version.buildNumber,\n\t\t\t\t};\n\t\t\t} else if (version.buildNumber > 100) {\n\t\t\t\tversion.preRelease = {\n\t\t\t\t\ttype: \"patch\",\n\t\t\t\t\tversion: version.buildNumber - 100,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\t...entry,\n\t\t\t\tversion,\n\t\t\t};\n\t\t},\n\t);\n\n\tfor (const libraryLocation of libraries) {\n\t\tconst libraryManifest =\n\t\t\treadPublishedPackageNpmManifest(libraryLocation);\n\t\tconst libraryCreatorPackage =\n\t\t\treadPublishedPackageCreatorManifest(libraryLocation);\n\n\t\tif (\n\t\t\tlibraryCreatorPackage === undefined ||\n\t\t\tlibraryManifest.main === undefined ||\n\t\t\tlibraryCreatorPackage.Package === creatorPackage.Package\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst libraryVersion = PackageVersion.extractFromLine(\n\t\t\tlibraryManifest.version,\n\t\t);\n\n\t\tif (libraryVersion.preRelease) {\n\t\t\tlibraryVersion.buildNumber = libraryVersion.preRelease.version;\n\t\t\tlibraryVersion.preRelease = undefined;\n\t\t} else {\n\t\t\tlibraryVersion.buildNumber = 100;\n\t\t}\n\n\t\tlet uploadedPackageInBasics: UploadedPackage | undefined;\n\t\tlet uploadedPackageInTarget: UploadedPackage | undefined;\n\n\t\tfor (const uploadedPackage of uploadedPackages) {\n\t\t\tif (uploadedPackage.scope === libraryCreatorPackage.Package) {\n\t\t\t\tif (uploadedPackage.support) {\n\t\t\t\t\tuploadedPackageInBasics = uploadedPackage;\n\t\t\t\t} else {\n\t\t\t\t\tuploadedPackageInTarget = uploadedPackage;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst validInBasics =\n\t\t\tuploadedPackageInBasics !== undefined &&\n\t\t\t!uploadedPackageInBasics.version.isLesserThan(libraryVersion);\n\t\tconst validInTarget =\n\t\t\tuploadedPackageInTarget !== undefined &&\n\t\t\t!uploadedPackageInTarget.version.isLesserThan(libraryVersion);\n\n\t\tif (validInBasics || validInTarget) {\n\t\t\tif (\n\t\t\t\ttargetSession.subDomain !== \"Basics\" &&\n\t\t\t\t(uploadedPackageInBasics !== undefined ||\n\t\t\t\t\tuploadedPackageInTarget !== undefined)\n\t\t\t) {\n\t\t\t\tlogPackageMessage(\n\t\t\t\t\tcreatorPackage.Package,\n\t\t\t\t\t`Package ${libraryCreatorPackage.Package} is uploaded both for Basics and ${targetSession.subDomain}. The package within ${targetSession.subDomain} will be used.`,\n\t\t\t\t);\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tlogPackageMessage(\n\t\t\tcreatorPackage.Package,\n\t\t\t`Requested at least version ${libraryVersion.toVersionString({\n\t\t\t\tbuildNumber: true,\n\t\t\t})} for package ${libraryCreatorPackage.Package}`,\n\t\t);\n\n\t\tif (targetSession.subDomain !== \"Basics\" && uploadedPackageInTarget) {\n\t\t\tconst version = uploadedPackageInTarget.version.toVersionString({\n\t\t\t\tbuildNumber: true,\n\t\t\t});\n\n\t\t\tlogPackageMessage(\n\t\t\t\tcreatorPackage.Package,\n\t\t\t\t`Found invalid version ${version} for package ${libraryCreatorPackage.Package} in ${targetSession.subDomain}`,\n\t\t\t);\n\t\t}\n\t\tif (uploadedPackageInBasics) {\n\t\t\tconst version = uploadedPackageInBasics.version.toVersionString({\n\t\t\t\tbuildNumber: true,\n\t\t\t});\n\n\t\t\tlet message = `Found invalid version ${version} for package ${libraryCreatorPackage.Package} in Basics`;\n\n\t\t\tif (\n\t\t\t\ttargetSession.subDomain !== \"Basics\" &&\n\t\t\t\tuploadedPackageInTarget\n\t\t\t) {\n\t\t\t\tmessage += `. This version will not be used since the package also exists in ${targetSession.subDomain}`;\n\t\t\t}\n\n\t\t\tlogPackageMessage(creatorPackage.Package, message);\n\t\t}\n\n\t\tconst possibleTargets: string[] = [\"Basics\"];\n\n\t\tif (targetSession.subDomain !== \"Basics\") {\n\t\t\tpossibleTargets.push(targetSession.subDomain);\n\t\t}\n\n\t\tconst uploadTargetScope = await prompter.ask({\n\t\t\tmessage: `Select the scope to upload the required version of ${libraryCreatorPackage.Package} to or select \"skip\" to skip the upload.`,\n\t\t\toptions: [...possibleTargets, \"Skip\"],\n\t\t\tdefault: possibleTargets[0],\n\t\t});\n\n\t\tif (uploadTargetScope === \"Skip\") {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst archive = buildArchiveFromPublishedPackage(\n\t\t\tlibraryLocation,\n\t\t\tlibraryManifest,\n\t\t\tlibraryCreatorPackage,\n\t\t);\n\n\t\tconst newVersionString = libraryVersion.toVersionString({\n\t\t\tbuildNumber: true,\n\t\t});\n\t\tconst packageNameWithVersion = `${libraryCreatorPackage.Package}_${newVersionString}`;\n\n\t\tconst zipFilePath = path.join(\n\t\t\tgetWorkspaceOutputPath(workspaceLocation),\n\t\t\t`${packageNameWithVersion}.zip`,\n\t\t);\n\n\t\ttry {\n\t\t\tfs.rmSync(zipFilePath);\n\t\t} catch (err) {\n\t\t\tif (!isErrorENOENT(err)) {\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t}\n\n\t\tconst zipOutputStream = fs.createWriteStream(zipFilePath);\n\t\tawait pipeline(archive.generateNodeStream(), zipOutputStream);\n\n\t\tconst session =\n\t\t\tuploadTargetScope === \"Basics\"\n\t\t\t\t? await sessionManager.getBasicsSession()\n\t\t\t\t: targetSession;\n\n\t\tlogPackageMessage(\n\t\t\tcreatorPackage.Package,\n\t\t\t`Uploading package ${libraryCreatorPackage.Package} with version ${newVersionString} to ${session.domain}.${session.subDomain}`,\n\t\t);\n\n\t\tawait AssetService.uploadPackage(\n\t\t\tsession,\n\t\t\t{\n\t\t\t\tname: libraryCreatorPackage.Package,\n\t\t\t\tversion: newVersionString,\n\t\t\t},\n\t\t\tzipFilePath,\n\t\t);\n\t}\n\n\treturn true;\n};\n\ninterface SessionManager {\n\tgetBasicsSession: () => Promise<AssetService.Session>;\n\tgetTargetSession: () => AssetService.Session;\n\tdestroy: () => Promise<void>;\n}\n\nconst createSessionManager = async (\n\tparams: AssetService.SessionStartParams,\n): Promise<SessionManager> => {\n\tconst targetSession = await AssetService.startSession(params);\n\tlet basicsSession: AssetService.Session | undefined;\n\n\treturn {\n\t\tgetBasicsSession: async () => {\n\t\t\tif (targetSession.subDomain === \"Basics\") {\n\t\t\t\treturn targetSession;\n\t\t\t}\n\n\t\t\tif (basicsSession === undefined) {\n\t\t\t\tbasicsSession = await AssetService.startSession({\n\t\t\t\t\t...params,\n\t\t\t\t\tsubDomain: \"Basics\",\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn basicsSession;\n\t\t},\n\n\t\tgetTargetSession: () => targetSession,\n\n\t\tdestroy: async () => {\n\t\t\tawait AssetService.closeSession(targetSession);\n\n\t\t\tif (basicsSession !== undefined) {\n\t\t\t\tawait AssetService.closeSession(basicsSession);\n\t\t\t}\n\t\t},\n\t};\n};\n"],"names":["PLUGIN_ID","startSession","url","authentication","params","payload","user","undefined","password","license","plugin","type","username","data","session","sessionId","state","axios","post","JSON","stringify","baseURL","Error","domain","subDomain","closeSession","get","uploadPackage","name","version","zipFilePath","uploadPackageToUrl","err","getExistingPackages","validateStatus","status","then","Array","isArray","path","fs","createReadStream","objectBody","parse","response","text","key","buildArchiveFromPublishedPackage","location","manifest","creatorPackage","archive","JSZip","file","PACKAGE_FILE","index","readPublishedPackageCreatorIndex","INDEX_FILE","main","join","validateSchema","runtimeScripts","notRuntimeScripts","buildArchiveFromPackage","workspaceLocation","packageLocation","subdomain","parseCreatorPackageName","logStep","step","logPackageMessage","Package","Ajv","coerceTypes","allErrors","removeAdditional","useDefaults","compile","libFilePath","getWorkspaceOutputPath","scriptDirectories","scriptsDir","push","readPackageCreatorManifest","RunTime","includes","Type","writePackageCreatorManifest","animations","Map","scriptFilePath","readPackageAnimationList","content","readFileSync","encoding","relativePath","relative","SyntaxError","String","cause","set","Id","libFile","isErrorENOENT","size","library","date","Date","now","getFullYear","scopeParts","Scope","split","scope","createNamespace","minifyResult","terser","minify","ecma","code","creatorIndex","readPackageCreatorIndex","directory","readdirSync","ext","console","error","parts","length","slice","releaseFolder","options","workspace","detectWorkspace","cwd","detectPackage","write","writeVersionFile","reset","resetVersionFile","getVersionFileHandler","packageDescription","fullPackageName","publishDomain","publishSubdomain","sharedPackageJson","readWorkspaceNpmManifest","newVersion","parseVersionFromString","buildNumber","preRelease","execSync","binDir","mkdirSync","recursive","assetServerPackageDetails","packageNameWithVersion","versionWithoutPrelease","clone","newVersionString","toVersionString","pushOnly","existsSync","gitVersionInformation","getVersionInformationFromGit","bannerText","getWorkspaceBannerText","buildFolders","directories","skipPackagesWithoutTsFiles","banner","commit","commitDirty","dirty","rmSync","zipOutputStream","createWriteStream","pipeline","generateNodeStream","noUpload","sessionManager","createSessionManager","service","address","ensureRequiredVersions","prompter","AssetService","getTargetSession","destroy","catch","translate","zipFileName","releasesPath","getPackageReleasesDirectory","copyFileSync","libraries","determineWorkspaceIGLibraries","targetSession","rawUploadedPackages","uploadedPackages","map","entry","parseVersionFromNumericVersion","numericVersion","libraryLocation","libraryManifest","readPublishedPackageNpmManifest","libraryCreatorPackage","readPublishedPackageCreatorManifest","libraryVersion","PackageVersion","extractFromLine","uploadedPackageInBasics","uploadedPackageInTarget","uploadedPackage","support","validInBasics","isLesserThan","validInTarget","message","possibleTargets","uploadTargetScope","ask","default","getBasicsSession","basicsSession"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAMA,SAAS,GAAG,sCAAsC,CAAA;AASxD;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,YAAY,GAAG,OAAO;EAClCC,GAAG;EACHC,cAAc;EACd,GAAGC,MAAAA;AACgB,CAAC,KAAuB;AAC3C,EAAA,MAAMC,OAA4B,GAAG;AACpC,IAAA,GAAGD,MAAM;AACTE,IAAAA,IAAI,EAAEC,SAAS;AACfC,IAAAA,QAAQ,EAAED,SAAS;AACnBE,IAAAA,OAAO,EAAEF,SAAS;AAClBG,IAAAA,MAAM,EAAEV,SAAAA;GACR,CAAA;AAED,EAAA,IAAIG,cAAc,CAACQ,IAAI,KAAK,aAAa,EAAE;AAC1CN,IAAAA,OAAO,CAACC,IAAI,GAAGH,cAAc,CAACS,QAAQ,CAAA;AACtCP,IAAAA,OAAO,CAACG,QAAQ,GAAGL,cAAc,CAACK,QAAQ,CAAA;AAC3C,GAAC,MAAM,IAAIL,cAAc,CAACQ,IAAI,KAAK,SAAS,EAAE;AAC7CN,IAAAA,OAAO,CAACI,OAAO,GAAGN,cAAc,CAACM,OAAO,CAAA;AACzC,GAAA;EAEA,MAAM;AACLI,IAAAA,IAAI,EAAE;AAAEC,MAAAA,OAAO,EAAEC,SAAS;AAAEC,MAAAA,KAAAA;AAAM,KAAA;AACnC,GAAC,GAAG,MAAMC,KAAK,CAACC,IAAI,CAClB,CAAA,cAAA,CAAe,EAChBC,IAAI,CAACC,SAAS,CAACf,OAAO,CAAC,EACvB;AACCgB,IAAAA,OAAO,EAAEnB,GAAAA;AACV,GAAC,CACD,CAAA;EAED,IAAIc,KAAK,KAAK,SAAS,EAAE;AACxB,IAAA,MAAM,IAAIM,KAAK,CACb,CAA0DN,wDAAAA,EAAAA,KAAM,EAAC,CAClE,CAAA;AACF,GAAA;EAEA,OAAO;IACNd,GAAG;IACHa,SAAS;IACTQ,MAAM,EAAEnB,MAAM,CAACmB,MAAM;IACrBC,SAAS,EAAEpB,MAAM,CAACoB,SAAAA;GAClB,CAAA;AACF,CAAC,CAAA;AAEM,MAAMC,YAAY,GAAG,MAAOX,OAAgB,IAAK;EACvD,MAAMG,KAAK,CAACS,GAAG,CAAE,iBAAgBZ,OAAO,CAACC,SAAU,CAAA,CAAC,EAAE;IACrDM,OAAO,EAAEP,OAAO,CAACZ,GAAAA;AAClB,GAAC,CAAC,CAAA;AACH,CAAC,CAAA;AAOM,MAAMyB,aAAa,GAAG,OAC5Bb,OAAgB,EAChB;EAAEc,IAAI;AAAEC,EAAAA,OAAAA;AAA8B,CAAC,EACvCC,WAAmB,KACf;EACJ,IAAI;AACH,IAAA,MAAMC,kBAAkB,CACvBjB,OAAO,CAACZ,GAAG,EACV,CAAgBY,cAAAA,EAAAA,OAAO,CAACC,SAAU,IAAGa,IAAK,CAAA,CAAA,EAAGC,OAAQ,CAAC,CAAA,EACvDC,WAAW,CACX,CAAA;GACD,CAAC,OAAOE,GAAG,EAAE;AACb,IAAA,MAAMD,kBAAkB,CACvBjB,OAAO,CAACZ,GAAG,EACV,CAAgBY,cAAAA,EAAAA,OAAO,CAACC,SAAU,IAAGa,IAAK,CAAA,CAAA,EAAGC,OAAQ,CAAE,CAAA,CAAA,EACxDC,WAAW,CACX,CAAA;AACF,GAAA;AACD,CAAC,CAAA;AASM,MAAMG,mBAAmB,GAAG,MAClCnB,OAAgB,IAEhBG,KAAK,CACHS,GAAG,CAAE,CAAwBZ,sBAAAA,EAAAA,OAAO,CAACC,SAAU,EAAC,EAAE;EAClDM,OAAO,EAAEP,OAAO,CAACZ,GAAG;EACpBgC,cAAc,EAAGC,MAAM,IAAKA,MAAM,KAAK,GAAG,IAAIA,MAAM,KAAK,GAAA;AAC1D,CAAC,CAAC,CACDC,IAAI,CAAC,CAAC;AAAEvB,EAAAA,IAAAA;AAAK,CAAC,KAAMwB,KAAK,CAACC,OAAO,CAACzB,IAAI,CAAC,GAAGA,IAAI,GAAGN,SAAU,CAAC,CAAA;AAE/D,MAAMwB,kBAAkB,GAAG,CAAC7B,GAAW,EAAEqC,IAAY,EAAET,WAAmB,KACzEb,KAAK,CACHC,IAAI,CAACqB,IAAI,EAAEC,EAAE,CAACC,gBAAgB,CAACX,WAAW,CAAC,EAAE;AAC7CT,EAAAA,OAAO,EAAEnB,GAAAA;AACV,CAAC,CAAC,CACDkC,IAAI,CAAC,CAAC;EAAEvB,IAAI;AAAEsB,EAAAA,MAAAA;AAAO,CAAC,KAAK;AAC3B,EAAA,IAAIO,UAAe,CAAA;AAEnB,EAAA,IAAI,OAAO7B,IAAI,KAAK,QAAQ,EAAE;IAC7B,IAAI;AACH6B,MAAAA,UAAU,GAAGvB,IAAI,CAACwB,KAAK,CAAC9B,IAAI,CAAC,CAAA;AAC9B,KAAC,CAAC,OAAOmB,GAAG,EAAE,EAAC;AAChB,GAAC,MAAM,IAAI,OAAOnB,IAAI,KAAK,QAAQ,EAAE;AACpC6B,IAAAA,UAAU,GAAG7B,IAAI,CAAA;AAClB,GAAA;EAEA,IAAI6B,UAAU,KAAKnC,SAAS,EAAE;IAC7B,IAAI,OAAO,IAAImC,UAAU,IAAIA,UAAU,CAAC1B,KAAK,KAAK,SAAS,EAAE;MAC5D,MAAM,IAAIM,KAAK,CAACoB,UAAU,CAACE,QAAQ,IAAIF,UAAU,CAAC1B,KAAK,CAAC,CAAA;AACzD,KAAA;AACD,GAAA;EAEA,IAAImB,MAAM,IAAI,GAAG,EAAE;IAClB,IAAIO,UAAU,KAAKnC,SAAS,EAAE;MAC7B,IAAIsC,IAAI,GAAG,EAAE,CAAA;AAEb,MAAA,KAAK,MAAMC,GAAG,IAAIJ,UAAU,EAAE;QAC7BG,IAAI,IAAIC,GAAG,GAAG,MAAM,CAAA;AACpB,QAAA,IAAI,OAAOJ,UAAU,CAACI,GAAG,CAAC,KAAK,QAAQ,EAAE;AACxCD,UAAAA,IAAI,IAAI1B,IAAI,CAACC,SAAS,CACrBsB,UAAU,CAACI,GAAG,CAAC,EACfvC,SAAS,EACT,CAAC,CACD,CAAA;AACF,SAAC,MAAM;AACNsC,UAAAA,IAAI,IAAIH,UAAU,CAACI,GAAG,CAAC,CAAA;AACxB,SAAA;AACAD,QAAAA,IAAI,IAAI,MAAM,CAAA;AACf,OAAA;AAEA,MAAA,MAAM,IAAIvB,KAAK,CAACuB,IAAI,CAAC,CAAA;AACtB,KAAA;AAEA,IAAA,MAAM,IAAIvB,KAAK,CAACT,IAAI,CAAC,CAAA;AACtB,GAAA;AAEA,EAAA,OAAOA,IAAI,CAAA;AACZ,CAAC,CAAC;;AC5JG,MAAMkC,gCAAgC,GAAG,CAC/CC,QAAkC,EAClCC,QAA4B,EAC5BC,cAA8B,KAC1B;AACJ,EAAA,MAAMC,OAAO,GAAG,IAAIC,KAAK,EAAE,CAAA;AAE3BD,EAAAA,OAAO,CAACE,IAAI,CAACC,YAAY,EAAEnC,IAAI,CAACC,SAAS,CAAC8B,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAEnE,EAAA,MAAMK,KAAK,GAAGC,gCAAgC,CAACR,QAAQ,CAAC,CAAA;EAExD,IAAIO,KAAK,KAAKhD,SAAS,EAAE;AACxB4C,IAAAA,OAAO,CAACE,IAAI,CAACI,UAAU,EAAEtC,IAAI,CAACC,SAAS,CAACmC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AACzD,GAAA;EAEAJ,OAAO,CAACE,IAAI,CACXJ,QAAQ,CAACS,IAAI,EACblB,EAAE,CAACC,gBAAgB,CAACF,IAAI,CAACoB,IAAI,CAACX,QAAQ,CAACT,IAAI,EAAEU,QAAQ,CAACS,IAAI,CAAC,CAAC,CAC5D,CAAA;AAED,EAAA,OAAOP,OAAO,CAAA;AACf,CAAC,CAAA;AAED,IAAIS,cAA4C,CAAA;AAEhD,MAAMC,cAAwC,GAAG,CAChD,YAAY,EACZ,MAAM,EACN,OAAO,CACP,CAAA;AAED,MAAMC,iBAA2C,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;AAErE,MAAMC,uBAAuB,GAAG,OACtCC,iBAAoC,EACpCC,eAAgC,EAChCpD,IAAoB,KAChB;EACJ,MAAM;IAAEU,MAAM;AAAE2C,IAAAA,SAAAA;AAAU,GAAC,GAAGC,uBAAuB,CAACtD,IAAI,CAAC,CAAA;EAE3D,MAAMuD,OAAO,GAAIC,IAAY,IAAKC,iBAAiB,CAACzD,IAAI,CAAC0D,OAAO,EAAEF,IAAI,CAAC,CAAA;EAEvE,IAAIT,cAAc,KAAKrD,SAAS,EAAE;IACjCqD,cAAc,GAAG,MAAM3C,KAAK,CAC1BS,GAAG,CACH,oEAAoE,CACpE,CACAU,IAAI,CAAC,CAAC;AAAEvB,MAAAA,IAAAA;KAAM,KACd,IAAI2D,GAAG,CAAC;AACPC,MAAAA,WAAW,EAAE,IAAI;AACjBC,MAAAA,SAAS,EAAE,IAAI;AACfC,MAAAA,gBAAgB,EAAE,IAAI;AACtBC,MAAAA,WAAW,EAAE,OAAO;AACpBhB,MAAAA,cAAc,EAAE,KAAA;AACjB,KAAC,CAAC,CAACiB,OAAO,CAAChE,IAAI,CAAC,CAChB,CAAA;AACH,GAAA;AAEA,EAAA,MAAMiE,WAAW,GAAGvC,IAAI,CAACoB,IAAI,CAC5BoB,sBAAsB,CAACf,iBAAiB,CAAC,EACxC,CAAEnD,EAAAA,IAAI,CAAC0D,OAAQ,SAAQ,CACxB,CAAA;EAED,MAAMS,iBAA2B,GAAG,CACnCf,eAAe,CAAC1B,IAAI,EACpB0B,eAAe,CAACgB,UAAU,CAC1B,CAAA;EAED,IAAIf,SAAS,KAAK,cAAc,EAAE;IACjCE,OAAO,CAAE,yBAAwB,CAAC,CAAA;AAClCY,IAAAA,iBAAiB,CAACE,IAAI,CAAC3C,IAAI,CAACoB,IAAI,CAACM,eAAe,CAAC1B,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;AAClE,GAAA;AAEA,EAAA,MAAMU,QAAQ,GAAGkC,0BAA0B,CAAClB,eAAe,CAAC,CAAA;EAE5D,IAAIhB,QAAQ,KAAK1C,SAAS,EAAE;AAC3B,IAAA,IAAI0C,QAAQ,CAACmC,OAAO,IAAItB,iBAAiB,CAACuB,QAAQ,CAACpC,QAAQ,CAACqC,IAAI,CAAC,EAAE;MAClElB,OAAO,CAAC,wDAAwD,CAAC,CAAA;MACjEmB,2BAA2B,CAACtB,eAAe,EAAE;AAC5C,QAAA,GAAGhB,QAAQ;AACXmC,QAAAA,OAAO,EAAE,KAAA;AACV,OAAC,CAAC,CAAA;AACH,KAAC,MAAM,IACN,CAACnC,QAAQ,CAACmC,OAAO,IACjBvB,cAAc,CAACwB,QAAQ,CAACpC,QAAQ,CAACqC,IAAI,CAAC,EACrC;MACDlB,OAAO,CAAC,uDAAuD,CAAC,CAAA;MAChEmB,2BAA2B,CAACtB,eAAe,EAAE;AAC5C,QAAA,GAAGhB,QAAQ;AACXmC,QAAAA,OAAO,EAAE,IAAA;AACV,OAAC,CAAC,CAAA;AACH,KAAA;AACD,GAAA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,EAAA,MAAMI,UAAU,GAAG,IAAIC,GAAG,EAAkB,CAAA;AAE5C,EAAA,KAAK,MAAMC,cAAc,IAAIC,wBAAwB,CAAC1B,eAAe,CAAC,EAAE;AACvE,IAAA,MAAM2B,OAAO,GAAGpD,EAAE,CAACqD,YAAY,CAACH,cAAc,EAAE;AAAEI,MAAAA,QAAQ,EAAE,MAAA;AAAO,KAAC,CAAE,CAAA;AAEtE,IAAA,IAAIjF,IAAoB,CAAA;IAExB,IAAI;AACHA,MAAAA,IAAI,GAAGM,IAAI,CAACwB,KAAK,CAACiD,OAAO,CAAC,CAAA;KAC1B,CAAC,OAAO5D,GAAG,EAAE;MACb,MAAM+D,YAAY,GAAGxD,IAAI,CAACyD,QAAQ,CACjChC,iBAAiB,CAACzB,IAAI,EACtBmD,cAAc,CACd,CAAA;MAED,IAAI1D,GAAG,YAAYiE,WAAW,EAAE;QAC/B,MAAM,IAAI3E,KAAK,CACb,CAAsCyE,oCAAAA,EAAAA,YAAa,CAAKG,GAAAA,EAAAA,MAAM,CAC9DlE,GAAG,CACF,CAAA,CAAC,CACH,CAAA;AACF,OAAA;AACA,MAAA,MAAM,IAAIV,KAAK,CACb,CAA6EyE,2EAAAA,EAAAA,YAAa,GAAE,EAC7F;AACCI,QAAAA,KAAK,EAAEnE,GAAAA;AACR,OAAC,CACD,CAAA;AACF,KAAA;IAEA4B,cAAc,CAAE/C,IAAI,CAAC,CAAA;AAErB2E,IAAAA,UAAU,CAACY,GAAG,CAACvF,IAAI,CAACwF,EAAE,EAAElF,IAAI,CAACC,SAAS,CAACP,IAAI,CAAC,CAAC,CAAA;AAC9C,GAAA;AAEA,EAAA,IAAIyF,OAA2B,CAAA;EAE/B,IAAI;AACHA,IAAAA,OAAO,GAAG9D,EAAE,CAACqD,YAAY,CAACf,WAAW,EAAE;AAAEgB,MAAAA,QAAQ,EAAE,MAAA;AAAO,KAAC,CAAC,CAAA;GAC5D,CAAC,OAAO9D,GAAG,EAAE;AACb,IAAA,IAAI,CAACuE,aAAa,CAACvE,GAAG,CAAC,EAAE;AACxB,MAAA,MAAMA,GAAG,CAAA;AACV,KAAA;AACD,GAAA;EAEA,IAAIsE,OAAO,KAAK/F,SAAS,EAAE;AAC1B,IAAA,IAAIiF,UAAU,CAACgB,IAAI,KAAK,CAAC,EAAE;AAC1B,MAAA,MAAM,IAAIlF,KAAK,CAAE,CAAA,qCAAA,EAAuCwD,WAAY,CAAA;AACvE,2FAAA,CAA4F,CAAC,CAAA;AAC3F,KAAA;AACD,GAAA;AAEA,EAAA,MAAM3B,OAAO,GAAG,IAAIC,KAAK,EAAE,CAAA;EAE3B,IAAIqD,OAAe,GAAG,EAAE,CAAA;AAExB,EAAA,IAAIH,OAAO,EAAE;AACZG,IAAAA,OAAO,GAAGH,OAAO,CAAA;AAClB,GAAA;EAEA,IAAI,CAACG,OAAO,EAAE;IACb,MAAMC,IAAI,GAAG,IAAIC,IAAI,CAACA,IAAI,CAACC,GAAG,EAAE,CAAC,CAAA;IACjCH,OAAO,GAAI,+BAA8BlF,MAAO,CAAA;AAClD,kBAAA,EAAoBmF,IAAI,CAACG,WAAW,EAAG,CAA8C,6CAAA,CAAA,CAAA;AACpF,GAAA;AAEA,EAAA,IAAIrB,UAAU,CAACgB,IAAI,GAAG,CAAC,EAAE;IACxB,MAAMM,UAAU,GAAGjG,IAAI,CAACkG,KAAK,CAACC,KAAK,CAAC,GAAG,CAAC,CAAA;AACxC,IAAA,MAAMC,KAAK,GAAGpG,IAAI,CAACkG,KAAK,CAAA;AAExBN,IAAAA,OAAO,IAAIS,eAAe,CAACJ,UAAU,CAAC,CAAA;IAEtC,KAAK,MAAM,CAAClF,IAAI,EAAEf,IAAI,CAAC,IAAI2E,UAAU,EAAE;MACtCiB,OAAO,IAAK,GAAEQ,KAAM,CAAA,CAAA,EAAGrF,IAAK,CAAI,GAAA,CAAA,GAAGf,IAAI,GAAG,GAAG,CAAA;MAC7CyD,iBAAiB,CAChBrB,QAAQ,CAACsB,OAAO,EACf,mBAAkB0C,KAAM,CAAA,CAAA,EAAGrF,IAAK,CAAA,CAAC,CAClC,CAAA;AACF,KAAA;AACD,GAAA;EAEA,MAAMuF,YAAY,GAAG,MAAMC,MAAM,CAACC,MAAM,CAACZ,OAAO,EAAE;AAAEa,IAAAA,IAAI,EAAE,CAAA;AAAE,GAAC,CAAC,CAAA;AAE9DnE,EAAAA,OAAO,CAACE,IAAI,CAAE,CAAA,EAAExC,IAAI,CAAC0D,OAAQ,CAAA,GAAA,CAAI,EAAE4C,YAAY,CAACI,IAAI,CAAE,CAAA;AACtDpE,EAAAA,OAAO,CAACE,IAAI,CAACC,YAAY,EAAEnC,IAAI,CAACC,SAAS,CAACP,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAEzD,EAAA,MAAM2G,YAAY,GAAGC,uBAAuB,CAACxD,eAAe,CAAC,CAAA;EAE7D,IAAIuD,YAAY,KAAKjH,SAAS,EAAE;AAC/B4C,IAAAA,OAAO,CAACE,IAAI,CAACI,UAAU,EAAEtC,IAAI,CAACC,SAAS,CAACoG,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAChE,GAAA;AAEA,EAAA,KAAK,MAAME,SAAS,IAAI1C,iBAAiB,EAAE;IAC1C,IAAI;MACH,KAAK,MAAM3B,IAAI,IAAIb,EAAE,CAACmF,WAAW,CAACD,SAAS,CAAC,EAAE;QAC7C,MAAM;AAAEE,UAAAA,GAAAA;AAAI,SAAC,GAAGrF,IAAI,CAACI,KAAK,CAACU,IAAI,CAAC,CAAA;AAEhC,QAAA,QAAQuE,GAAG;AACV,UAAA,KAAK,MAAM,CAAA;AACX,UAAA,KAAK,OAAO,CAAA;AACZ,UAAA,KAAK,MAAM;AACV,YAAA,MAAA;AACD,UAAA;AACC,YAAA,SAAA;AAAS,SAAA;AAGXzE,QAAAA,OAAO,CAACE,IAAI,CACXA,IAAI,EACJb,EAAE,CAACC,gBAAgB,CAACF,IAAI,CAACoB,IAAI,CAAC+D,SAAS,EAAErE,IAAI,CAAC,CAAC,CAC/C,CAAA;AACF,OAAA;KACA,CAAC,OAAOrB,GAAG,EAAE;AACb6F,MAAAA,OAAO,CAACC,KAAK,CAAE,CAAoBJ,kBAAAA,EAAAA,SAAU,kBAAiB,CAAC,CAAA;AAChE,KAAA;AACD,GAAA;AAEA,EAAA,OAAOvE,OAAO,CAAA;AACf,CAAC,CAAA;AAED,MAAM+D,eAAe,GAAIa,KAAe,IAAK;AAC5C,EAAA,IAAIR,IAAI,GAAI,CAAA,IAAA,EAAMQ,KAAK,CAAC,CAAC,CAAE,CAAE,CAAA,CAAA,CAAA;AAE7B,EAAA,KAAK,IAAIxE,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGwE,KAAK,CAACC,MAAM,EAAEzE,KAAK,EAAE,EAAE;AAClD,IAAA,MAAMhB,IAAI,GAAGwF,KAAK,CAACE,KAAK,CAAC,CAAC,EAAE1E,KAAK,GAAG,CAAC,CAAC,CAACI,IAAI,CAAC,GAAG,CAAC,CAAA;AAEhD4D,IAAAA,IAAI,IAAK,CAAA,GAAA,EAAKhF,IAAK,CAAA,GAAA,EAAKA,IAAK,CAAS,QAAA,CAAA,CAAA;AACvC,GAAA;AAEA,EAAA,OAAOgF,IAAI,CAAA;AACZ,CAAC;;AClMYW,MAAAA,aAAa,GAAG,MAAOC,OAA6B,IAAK;AACrE,EAAA,MAAMC,SAAS,GAAGC,eAAe,CAACF,OAAO,CAACG,GAAG,CAAC,CAAA;EAC9C,MAAMtF,QAAQ,GAAGuF,aAAa,CAACH,SAAS,EAAED,OAAO,CAACT,SAAS,CAAC,CAAA;EAE5D,MAAM;AAAEc,IAAAA,KAAK,EAAEC,gBAAgB;AAAEC,IAAAA,KAAK,EAAEC,gBAAAA;AAAiB,GAAC,GACzDC,qBAAqB,CAAC5F,QAAQ,CAAC,CAAA;AAEhC,EAAA,MAAM6F,kBAAkB,GAAG1D,0BAA0B,CAACnC,QAAQ,CAAC,CAAA;AAC/D,EAAA,MAAM8F,eAAe,GAAGD,kBAAkB,CAACtE,OAAO,CAAA;EAClD,MAAM;IAAEhD,MAAM;AAAE2C,IAAAA,SAAAA;AAAU,GAAC,GAAGC,uBAAuB,CAAC0E,kBAAkB,CAAC,CAAA;AAEzE,EAAA,MAAME,aAAa,GAAGZ,OAAO,CAAC5G,MAAM,IAAIA,MAAM,CAAA;AAC9C,EAAA,MAAMyH,gBAAgB,GAAGb,OAAO,CAACjE,SAAS,IAAIA,SAAS,CAAA;AAEvD,EAAA,MAAM+E,iBAAiB,GAAGC,wBAAwB,CAACd,SAAS,CAAC,CAAA;AAE7D,EAAA,IAAIe,UAA0B,CAAA;EAC9B,IAAI;AACHA,IAAAA,UAAU,GAAGC,sBAAsB,CAACjB,OAAO,CAACgB,UAAU,CAAC,CAAA;GACvD,CAAC,OAAOnH,GAAG,EAAE;AACb,IAAA,MAAM,IAAIV,KAAK,CAAE,CAAA,+CAAA,CAAgD,CAAC,CAAA;AACnE,GAAA;AAEA,EAAA,IAAI6H,UAAU,CAACE,WAAW,GAAG,GAAG,EAAE;IACjCF,UAAU,CAACG,UAAU,GAAG;AACvB3I,MAAAA,IAAI,EAAE,MAAM;MACZkB,OAAO,EAAEsH,UAAU,CAACE,WAAAA;KACpB,CAAA;AACF,GAAC,MAAM,IAAIF,UAAU,CAACE,WAAW,GAAG,GAAG,EAAE;IACxCF,UAAU,CAACG,UAAU,GAAG;AACvB3I,MAAAA,IAAI,EAAE,OAAO;AACbkB,MAAAA,OAAO,EAAEsH,UAAU,CAACE,WAAW,GAAG,GAAA;KAClC,CAAA;AACF,GAAA;EAEA,IAAIJ,iBAAiB,KAAK1I,SAAS,EAAE;AACpC+D,IAAAA,iBAAiB,CAChBuE,kBAAkB,CAACtE,OAAO,EACzB,kEAAiE,CAClE,CAAA;IACDgF,QAAQ,CAAE,aAAY,EAAE;AAAEzD,MAAAA,QAAQ,EAAE,OAAO;MAAEwC,GAAG,EAAEF,SAAS,CAAC7F,IAAAA;AAAK,KAAC,CAAC,CAAA;AACpE,GAAA;AAEA,EAAA,MAAMiH,MAAM,GAAGzE,sBAAsB,CAACqD,SAAS,CAAC,CAAA;AAChD5F,EAAAA,EAAE,CAACiH,SAAS,CAACD,MAAM,EAAE;AAAEE,IAAAA,SAAS,EAAE,IAAA;AAAK,GAAC,CAAC,CAAA;AAEzC,EAAA,IAAIC,yBAA4D,CAAA;AAEhE,EAAA,IAAIC,sBAA8B,CAAA;AAElC,EAAA;AACC,IAAA,MAAMC,sBAAsB,GAAGV,UAAU,CAACW,KAAK,EAAE,CAAA;IACjDD,sBAAsB,CAACP,UAAU,GAAG/I,SAAS,CAAA;AAC7C,IAAA,MAAMwJ,gBAAgB,GAAGF,sBAAsB,CAACG,eAAe,CAAC;AAC/DX,MAAAA,WAAW,EAAE,IAAA;AACd,KAAC,CAAC,CAAA;AACFO,IAAAA,sBAAsB,GAAI,CAAEf,EAAAA,kBAAkB,CAACtE,OAAQ,CAAA,CAAA,EAAGwF,gBAAiB,CAAC,CAAA,CAAA;AAE5EJ,IAAAA,yBAAyB,GAAG;MAC3B/H,IAAI,EAAEiH,kBAAkB,CAACtE,OAAO;AAChC1C,MAAAA,OAAO,EAAEkI,gBAAAA;KACT,CAAA;AACF,GAAA;EAEA,MAAMjI,WAAW,GAAGS,IAAI,CAACoB,IAAI,CAAC6F,MAAM,EAAEI,sBAAsB,GAAG,MAAM,CAAC,CAAA;EAEtE,IAAI;IACH,IAAIzB,OAAO,CAAC8B,QAAQ,EAAE;AACrB,MAAA,IAAI,CAACzH,EAAE,CAAC0H,UAAU,CAACpI,WAAW,CAAC,EAAE;AAChC,QAAA,MAAM,IAAIR,KAAK,CACb,CAAuCQ,qCAAAA,EAAAA,WAAY,8BAA6B,CACjF,CAAA;AACF,OAAA;AACD,KAAC,MAAM;MACN,MAAMqI,qBAAqB,GAAG,MAAMC,4BAA4B,CAC/DhC,SAAS,EACTpF,QAAQ,CACR,CAAA;AAEDyF,MAAAA,gBAAgB,CAACK,eAAe,EAAEK,UAAU,CAAC,CAAA;MAE7C,MAAMkB,UAAU,GACfpB,iBAAiB,KAAK1I,SAAS,GAC5B+J,sBAAsB,CAACrB,iBAAiB,CAAC,GACzC1I,SAAS,CAAA;AAEb,MAAA,MAAMgK,YAAY,CAAC;AAClB,QAAA,GAAGpC,OAAO;AACVqC,QAAAA,WAAW,EAAE,CAACxH,QAAQ,CAACT,IAAI,CAAC;AAC5BkI,QAAAA,0BAA0B,EAAE,IAAI;AAChCC,QAAAA,MAAM,EAAEvC,OAAO,CAACuC,MAAM,GACnB;AACA7H,UAAAA,IAAI,EAAEwH,UAAU;UAChBM,MAAM,EAAER,qBAAqB,CAACQ,MAAM;UACpCC,WAAW,EAAET,qBAAqB,CAACU,KAAK;AACxChJ,UAAAA,OAAO,EAAEsH,UAAU,CAACa,eAAe,CAAC;AACnCX,YAAAA,WAAW,EAAE,IAAA;AACd,WAAC,CAAC;AACF3C,UAAAA,IAAI,EAAE,IAAIC,IAAI,CAACA,IAAI,CAACC,GAAG,EAAE,CAAA;AACzB;AACA;AACA;AACA,SAAC,GACDrG,SAAAA;AACJ,OAAC,CAAC,CAAA;MAEF4I,UAAU,CAACG,UAAU,GAAG/I,SAAS,CAAA;MAEjC,IAAI;AACHiC,QAAAA,EAAE,CAACsI,MAAM,CAAChJ,WAAW,CAAC,CAAA;OACtB,CAAC,OAAOE,GAAG,EAAE;AACb,QAAA,IAAI,CAACuE,aAAa,CAACvE,GAAG,CAAC,EAAE;AACxB,UAAA,MAAMA,GAAG,CAAA;AACV,SAAA;AACD,OAAA;MAEA,MAAMmB,OAAO,GAAG,MAAMY,uBAAuB,CAC5CqE,SAAS,EACTpF,QAAQ,EACR6F,kBAAkB,CAClB,CAAA;AAED,MAAA,MAAMkC,eAAe,GAAGvI,EAAE,CAACwI,iBAAiB,CAAClJ,WAAW,CAAC,CAAA;MACzD,MAAMmJ,QAAQ,CAAC9H,OAAO,CAAC+H,kBAAkB,EAAE,EAAEH,eAAe,CAAC,CAAA;AAC9D,KAAA;AAEA,IAAA,IAAI,CAAC5C,OAAO,CAACgD,QAAQ,EAAE;AACtB,MAAA,IAAI,CAAChD,OAAO,CAAChI,cAAc,EAAE;AAC5B,QAAA,MAAM,IAAImB,KAAK,CAAE,CAAA,uCAAA,CAAwC,CAAC,CAAA;AAC3D,OAAA;AAEAgD,MAAAA,iBAAiB,CAChBuE,kBAAkB,CAACtE,OAAO,EACzB,uCAAsC,CACvC,CAAA;AAED,MAAA,MAAM6G,cAAc,GAAG,MAAMC,oBAAoB,CAAC;QACjDnL,GAAG,EAAEiI,OAAO,CAACmD,OAAO;QACpBC,OAAO,EAAEpD,OAAO,CAACoD,OAAO;AACxBhK,QAAAA,MAAM,EAAEwH,aAAa;AACrBvH,QAAAA,SAAS,EAAEwH,gBAAgB;QAC3B7I,cAAc,EAAEgI,OAAO,CAAChI,cAAAA;AACzB,OAAC,CAAC,CAAA;MAEF,IAAI;AACH,QAAA,IACC,EAAE,MAAMqL,sBAAsB,CAC7BpD,SAAS,EACTS,kBAAkB,EAClBuC,cAAc,EACdjD,OAAO,CAACsD,QAAQ,CAChB,CAAC,EACD;AACDnH,UAAAA,iBAAiB,CAChBuE,kBAAkB,CAACtE,OAAO,EAC1B,wHAAwH,CACxH,CAAA;AACF,SAAA;QAEAD,iBAAiB,CAChBuE,kBAAkB,CAACtE,OAAO,EACzB,wBAAuBwE,aAAc,CAAA,CAAA,EAAGC,gBAAiB,CAAA,CAAC,CAC3D,CAAA;AAED,QAAA,MAAM0C,aAA0B,CAC/BN,cAAc,CAACO,gBAAgB,EAAE,EACjChC,yBAAyB,EACzB7H,WAAW,CACX,CAAA;AACF,OAAC,SAAS;QACT,MAAMsJ,cAAc,CAACQ,OAAO,EAAE,CAACC,KAAK,CAAE7J,GAAG,IAAK;UAC7CsC,iBAAiB,CAChBuE,kBAAkB,CAACtE,OAAO,EACzB,CAA8CvC,4CAAAA,EAAAA,GAAI,EAAC,CACpD,CAAA;AACF,SAAC,CAAC,CAAA;AACH,OAAA;AACD,KAAA;GACA,CAAC,OAAOA,GAAG,EAAE;AACb2G,IAAAA,gBAAgB,EAAE,CAAA;AAClB,IAAA,MAAM3G,GAAG,CAAA;AACV,GAAA;EAEA,IAAImH,UAAU,CAACE,WAAW,IAAI,GAAG,IAAI,CAAClB,OAAO,CAAC8B,QAAQ,EAAE;AACvD3F,IAAAA,iBAAiB,CAChBwE,eAAe,EACfgD,SAAS,CAAC,2BAA2B,CAAC,CACtC,CAAA;AAED,IAAA,MAAMC,WAAW,GAAI,CAAEnC,EAAAA,sBAAuB,CAAK,IAAA,CAAA,CAAA;AACnD,IAAA,MAAMoC,YAAY,GAAGC,2BAA2B,CAACjJ,QAAQ,CAAC,CAAA;AAE1DR,IAAAA,EAAE,CAACiH,SAAS,CAACuC,YAAY,EAAE;AAAEtC,MAAAA,SAAS,EAAE,IAAA;AAAK,KAAC,CAAC,CAAA;AAC/ClH,IAAAA,EAAE,CAAC0J,YAAY,CAACpK,WAAW,EAAES,IAAI,CAACoB,IAAI,CAACqI,YAAY,EAAED,WAAW,CAAC,CAAC,CAAA;AACnE,GAAA;AACD,EAAC;AAED,MAAMP,sBAAsB,GAAG,OAC9BxH,iBAAoC,EACpCd,cAA8B,EAC9BkI,cAA8B,EAC9BK,QAAkB,KACd;AAMJ,EAAA,MAAMU,SAAS,GAAGC,6BAA6B,CAACpI,iBAAiB,CAAC,CAAA;;AAElE;AACA,EAAA,IAAImI,SAAS,CAACnE,MAAM,KAAK,CAAC,EAAE;AAC3B,IAAA,OAAO,IAAI,CAAA;AACZ,GAAA;AAEA,EAAA,MAAMqE,aAAa,GAAGjB,cAAc,CAACO,gBAAgB,EAAE,CAAA;EAEvD,MAAMW,mBAAmB,GAAG,MAAMZ,mBAAgC,CACjEW,aAAa,CACb,CAAA;EAED,IAAIC,mBAAmB,KAAK/L,SAAS,EAAE;AACtC,IAAA,OAAO,KAAK,CAAA;AACb,GAAA;AAEA,EAAA,MAAMgM,gBAAgB,GAAGD,mBAAmB,CAACE,GAAG,CAC9CC,KAAK,IAAsB;AAC3B,IAAA,IAAI5K,OAAuB,CAAA;IAE3B,IAAI;AACHA,MAAAA,OAAO,GAAG6K,8BAA8B,CAACD,KAAK,CAACE,cAAc,CAAC,CAAA;KAC9D,CAAC,OAAO3K,GAAG,EAAE;MACb,MAAM,IAAIV,KAAK,CACb,CAAA,uCAAA,EAAyCmL,KAAK,CAACE,cAAe,EAAC,CAChE,CAAA;AACF,KAAA;AAEA,IAAA,IAAI9K,OAAO,CAACwH,WAAW,GAAG,GAAG,EAAE;MAC9BxH,OAAO,CAACyH,UAAU,GAAG;AACpB3I,QAAAA,IAAI,EAAE,MAAM;QACZkB,OAAO,EAAEA,OAAO,CAACwH,WAAAA;OACjB,CAAA;AACF,KAAC,MAAM,IAAIxH,OAAO,CAACwH,WAAW,GAAG,GAAG,EAAE;MACrCxH,OAAO,CAACyH,UAAU,GAAG;AACpB3I,QAAAA,IAAI,EAAE,OAAO;AACbkB,QAAAA,OAAO,EAAEA,OAAO,CAACwH,WAAW,GAAG,GAAA;OAC/B,CAAA;AACF,KAAA;IAEA,OAAO;AACN,MAAA,GAAGoD,KAAK;AACR5K,MAAAA,OAAAA;KACA,CAAA;AACF,GAAC,CACD,CAAA;AAED,EAAA,KAAK,MAAM+K,eAAe,IAAIT,SAAS,EAAE;AACxC,IAAA,MAAMU,eAAe,GACpBC,+BAA+B,CAACF,eAAe,CAAC,CAAA;AACjD,IAAA,MAAMG,qBAAqB,GAC1BC,mCAAmC,CAACJ,eAAe,CAAC,CAAA;AAErD,IAAA,IACCG,qBAAqB,KAAKxM,SAAS,IACnCsM,eAAe,CAACnJ,IAAI,KAAKnD,SAAS,IAClCwM,qBAAqB,CAACxI,OAAO,KAAKrB,cAAc,CAACqB,OAAO,EACvD;AACD,MAAA,SAAA;AACD,KAAA;IAEA,MAAM0I,cAAc,GAAGC,cAAc,CAACC,eAAe,CACpDN,eAAe,CAAChL,OAAO,CACvB,CAAA;IAED,IAAIoL,cAAc,CAAC3D,UAAU,EAAE;AAC9B2D,MAAAA,cAAc,CAAC5D,WAAW,GAAG4D,cAAc,CAAC3D,UAAU,CAACzH,OAAO,CAAA;MAC9DoL,cAAc,CAAC3D,UAAU,GAAG/I,SAAS,CAAA;AACtC,KAAC,MAAM;MACN0M,cAAc,CAAC5D,WAAW,GAAG,GAAG,CAAA;AACjC,KAAA;AAEA,IAAA,IAAI+D,uBAAoD,CAAA;AACxD,IAAA,IAAIC,uBAAoD,CAAA;AAExD,IAAA,KAAK,MAAMC,eAAe,IAAIf,gBAAgB,EAAE;AAC/C,MAAA,IAAIe,eAAe,CAACrG,KAAK,KAAK8F,qBAAqB,CAACxI,OAAO,EAAE;QAC5D,IAAI+I,eAAe,CAACC,OAAO,EAAE;AAC5BH,UAAAA,uBAAuB,GAAGE,eAAe,CAAA;AAC1C,SAAC,MAAM;AACND,UAAAA,uBAAuB,GAAGC,eAAe,CAAA;AAC1C,SAAA;AACD,OAAA;AACD,KAAA;AAEA,IAAA,MAAME,aAAa,GAClBJ,uBAAuB,KAAK7M,SAAS,IACrC,CAAC6M,uBAAuB,CAACvL,OAAO,CAAC4L,YAAY,CAACR,cAAc,CAAC,CAAA;AAC9D,IAAA,MAAMS,aAAa,GAClBL,uBAAuB,KAAK9M,SAAS,IACrC,CAAC8M,uBAAuB,CAACxL,OAAO,CAAC4L,YAAY,CAACR,cAAc,CAAC,CAAA;IAE9D,IAAIO,aAAa,IAAIE,aAAa,EAAE;AACnC,MAAA,IACCrB,aAAa,CAAC7K,SAAS,KAAK,QAAQ,KACnC4L,uBAAuB,KAAK7M,SAAS,IACrC8M,uBAAuB,KAAK9M,SAAS,CAAC,EACtC;AACD+D,QAAAA,iBAAiB,CAChBpB,cAAc,CAACqB,OAAO,EACrB,CAAA,QAAA,EAAUwI,qBAAqB,CAACxI,OAAQ,CAAmC8H,iCAAAA,EAAAA,aAAa,CAAC7K,SAAU,CAAA,qBAAA,EAAuB6K,aAAa,CAAC7K,SAAU,gBAAe,CAClK,CAAA;AACF,OAAA;AACA,MAAA,SAAA;AACD,KAAA;IAEA8C,iBAAiB,CAChBpB,cAAc,CAACqB,OAAO,EACrB,CAA6B0I,2BAAAA,EAAAA,cAAc,CAACjD,eAAe,CAAC;AAC5DX,MAAAA,WAAW,EAAE,IAAA;AACd,KAAC,CAAE,CAAe0D,aAAAA,EAAAA,qBAAqB,CAACxI,OAAQ,EAAC,CACjD,CAAA;AAED,IAAA,IAAI8H,aAAa,CAAC7K,SAAS,KAAK,QAAQ,IAAI6L,uBAAuB,EAAE;AACpE,MAAA,MAAMxL,OAAO,GAAGwL,uBAAuB,CAACxL,OAAO,CAACmI,eAAe,CAAC;AAC/DX,QAAAA,WAAW,EAAE,IAAA;AACd,OAAC,CAAC,CAAA;AAEF/E,MAAAA,iBAAiB,CAChBpB,cAAc,CAACqB,OAAO,EACrB,yBAAwB1C,OAAQ,CAAA,aAAA,EAAekL,qBAAqB,CAACxI,OAAQ,CAAM8H,IAAAA,EAAAA,aAAa,CAAC7K,SAAU,EAAC,CAC7G,CAAA;AACF,KAAA;AACA,IAAA,IAAI4L,uBAAuB,EAAE;AAC5B,MAAA,MAAMvL,OAAO,GAAGuL,uBAAuB,CAACvL,OAAO,CAACmI,eAAe,CAAC;AAC/DX,QAAAA,WAAW,EAAE,IAAA;AACd,OAAC,CAAC,CAAA;MAEF,IAAIsE,OAAO,GAAI,CAAwB9L,sBAAAA,EAAAA,OAAQ,gBAAekL,qBAAqB,CAACxI,OAAQ,CAAW,UAAA,CAAA,CAAA;AAEvG,MAAA,IACC8H,aAAa,CAAC7K,SAAS,KAAK,QAAQ,IACpC6L,uBAAuB,EACtB;AACDM,QAAAA,OAAO,IAAK,CAAA,iEAAA,EAAmEtB,aAAa,CAAC7K,SAAU,CAAC,CAAA,CAAA;AACzG,OAAA;AAEA8C,MAAAA,iBAAiB,CAACpB,cAAc,CAACqB,OAAO,EAAEoJ,OAAO,CAAC,CAAA;AACnD,KAAA;AAEA,IAAA,MAAMC,eAAyB,GAAG,CAAC,QAAQ,CAAC,CAAA;AAE5C,IAAA,IAAIvB,aAAa,CAAC7K,SAAS,KAAK,QAAQ,EAAE;AACzCoM,MAAAA,eAAe,CAAC1I,IAAI,CAACmH,aAAa,CAAC7K,SAAS,CAAC,CAAA;AAC9C,KAAA;AAEA,IAAA,MAAMqM,iBAAiB,GAAG,MAAMpC,QAAQ,CAACqC,GAAG,CAAC;AAC5CH,MAAAA,OAAO,EAAG,CAAA,mDAAA,EAAqDZ,qBAAqB,CAACxI,OAAQ,CAAyC,wCAAA,CAAA;AACtI4D,MAAAA,OAAO,EAAE,CAAC,GAAGyF,eAAe,EAAE,MAAM,CAAC;MACrCG,OAAO,EAAEH,eAAe,CAAC,CAAC,CAAA;AAC3B,KAAC,CAAC,CAAA;IAEF,IAAIC,iBAAiB,KAAK,MAAM,EAAE;AACjC,MAAA,SAAA;AACD,KAAA;IAEA,MAAM1K,OAAO,GAAGJ,gCAAgC,CAC/C6J,eAAe,EACfC,eAAe,EACfE,qBAAqB,CACrB,CAAA;AAED,IAAA,MAAMhD,gBAAgB,GAAGkD,cAAc,CAACjD,eAAe,CAAC;AACvDX,MAAAA,WAAW,EAAE,IAAA;AACd,KAAC,CAAC,CAAA;IACF,MAAMO,sBAAsB,GAAI,CAAEmD,EAAAA,qBAAqB,CAACxI,OAAQ,CAAA,CAAA,EAAGwF,gBAAiB,CAAC,CAAA,CAAA;AAErF,IAAA,MAAMjI,WAAW,GAAGS,IAAI,CAACoB,IAAI,CAC5BoB,sBAAsB,CAACf,iBAAiB,CAAC,EACxC,CAAE4F,EAAAA,sBAAuB,MAAK,CAC/B,CAAA;IAED,IAAI;AACHpH,MAAAA,EAAE,CAACsI,MAAM,CAAChJ,WAAW,CAAC,CAAA;KACtB,CAAC,OAAOE,GAAG,EAAE;AACb,MAAA,IAAI,CAACuE,aAAa,CAACvE,GAAG,CAAC,EAAE;AACxB,QAAA,MAAMA,GAAG,CAAA;AACV,OAAA;AACD,KAAA;AAEA,IAAA,MAAM+I,eAAe,GAAGvI,EAAE,CAACwI,iBAAiB,CAAClJ,WAAW,CAAC,CAAA;IACzD,MAAMmJ,QAAQ,CAAC9H,OAAO,CAAC+H,kBAAkB,EAAE,EAAEH,eAAe,CAAC,CAAA;AAE7D,IAAA,MAAMjK,OAAO,GACZ+M,iBAAiB,KAAK,QAAQ,GAC3B,MAAMzC,cAAc,CAAC4C,gBAAgB,EAAE,GACvC3B,aAAa,CAAA;IAEjB/H,iBAAiB,CAChBpB,cAAc,CAACqB,OAAO,EACrB,CAAoBwI,kBAAAA,EAAAA,qBAAqB,CAACxI,OAAQ,CAAA,cAAA,EAAgBwF,gBAAiB,CAAMjJ,IAAAA,EAAAA,OAAO,CAACS,MAAO,CAAA,CAAA,EAAGT,OAAO,CAACU,SAAU,EAAC,CAC/H,CAAA;AAED,IAAA,MAAMkK,aAA0B,CAC/B5K,OAAO,EACP;MACCc,IAAI,EAAEmL,qBAAqB,CAACxI,OAAO;AACnC1C,MAAAA,OAAO,EAAEkI,gBAAAA;KACT,EACDjI,WAAW,CACX,CAAA;AACF,GAAA;AAEA,EAAA,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAQD,MAAMuJ,oBAAoB,GAAG,MAC5BjL,MAAuC,IACV;EAC7B,MAAMiM,aAAa,GAAG,MAAMX,YAAyB,CAACtL,MAAM,CAAC,CAAA;AAC7D,EAAA,IAAI6N,aAA+C,CAAA;EAEnD,OAAO;AACND,IAAAA,gBAAgB,EAAE,YAAY;AAC7B,MAAA,IAAI3B,aAAa,CAAC7K,SAAS,KAAK,QAAQ,EAAE;AACzC,QAAA,OAAO6K,aAAa,CAAA;AACrB,OAAA;MAEA,IAAI4B,aAAa,KAAK1N,SAAS,EAAE;AAChC0N,QAAAA,aAAa,GAAG,MAAMvC,YAAyB,CAAC;AAC/C,UAAA,GAAGtL,MAAM;AACToB,UAAAA,SAAS,EAAE,QAAA;AACZ,SAAC,CAAC,CAAA;AACH,OAAA;AAEA,MAAA,OAAOyM,aAAa,CAAA;KACpB;IAEDtC,gBAAgB,EAAE,MAAMU,aAAa;AAErCT,IAAAA,OAAO,EAAE,YAAY;AACpB,MAAA,MAAMF,YAAyB,CAACW,aAAa,CAAC,CAAA;MAE9C,IAAI4B,aAAa,KAAK1N,SAAS,EAAE;AAChC,QAAA,MAAMmL,YAAyB,CAACuC,aAAa,CAAC,CAAA;AAC/C,OAAA;AACD,KAAA;GACA,CAAA;AACF,CAAC;;;;"}
@@ -2,9 +2,9 @@
2
2
  import * as path from 'path';
3
3
  import * as fs from 'fs';
4
4
  import { spawnSync } from 'child_process';
5
- import { f as readWorkspaceNpmManifest, g as getWorkspaceOutputPath, r as readPackageCreatorManifest, b as readPackageNpmManifest, m as writePackageNpmManifest, P as PACKAGE_FILE, e as readPackageCreatorIndex, I as INDEX_FILE, n as iterateWorkspacePackages } from './cli.mjs';
6
- import { p as parseVersionFromString, g as getVersionFileHandler, a as getVersionInformationFromGit, b as getWorkspaceBannerText } from './versionFile.mjs';
7
- import { b as buildFolders, l as logPackageMessage } from './index2.mjs';
5
+ import { f as readWorkspaceNpmManifest, g as getWorkspaceOutputPath, r as readPackageCreatorManifest, b as readPackageNpmManifest, m as writePackageNpmManifest, P as PACKAGE_FILE, e as readPackageCreatorIndex, I as INDEX_FILE, n as iterateWorkspacePackages } from '../cli.mjs';
6
+ import { p as parseVersionFromString, g as getVersionFileHandler, a as getVersionInformationFromGit, b as getWorkspaceBannerText } from '../versionFile.mjs';
7
+ import { b as buildFolders, l as logPackageMessage } from './build.mjs';
8
8
  import 'update-notifier';
9
9
  import 'yargs/yargs';
10
10
  import 'url';
@@ -15,7 +15,7 @@ import 'simple-git';
15
15
  import 'glob';
16
16
  import 'terser';
17
17
  import 'typescript';
18
- import './scripts.mjs';
18
+ import '../scripts.mjs';
19
19
  import 'typedoc';
20
20
 
21
21
  const publishToNpm = async ({
@@ -126,4 +126,4 @@ const publishToNpm = async ({
126
126
  };
127
127
 
128
128
  export { publishToNpm };
129
- //# sourceMappingURL=publishNpm.mjs.map
129
+ //# sourceMappingURL=publishNpm.ts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishNpm.ts.mjs","sources":["../../src/commands/publishNpm.ts"],"sourcesContent":["import * as path from \"path\";\nimport * as fs from \"fs\";\nimport { spawnSync } from \"child_process\";\n\nimport { PackageVersion } from \"../lib/packageVersion\";\nimport {\n\tINDEX_FILE,\n\tPackageLocation,\n\tPACKAGE_FILE,\n\treadPackageCreatorIndex,\n\treadPackageCreatorManifest,\n\treadPackageNpmManifest,\n\twritePackageNpmManifest,\n} from \"../lib/package\";\nimport {\n\tgetWorkspaceOutputPath,\n\titerateWorkspacePackages,\n\treadWorkspaceNpmManifest,\n\tWorkspaceLocation,\n} from \"../lib/workspace\";\nimport { getVersionInformationFromGit } from \"../lib/git\";\nimport { getWorkspaceBannerText } from \"../lib/banner\";\nimport { parseVersionFromString } from \"../lib/parseVersion\";\nimport { getVersionFileHandler } from \"../lib/versionFile\";\nimport { logPackageMessage } from \"../lib/log\";\n\nimport { buildFolders } from \"./build\";\n\nexport interface PublishToNpmSettings {\n\tworkspace: WorkspaceLocation;\n\tlocation: PackageLocation;\n\tversion: string;\n\tdryRun?: boolean;\n}\n\nexport const publishToNpm = async ({\n\tworkspace,\n\tlocation,\n\tversion: providedVersion,\n\tdryRun,\n}: PublishToNpmSettings) => {\n\tlet newVersion: PackageVersion;\n\ttry {\n\t\tnewVersion = parseVersionFromString(providedVersion);\n\t} catch (err) {\n\t\tthrow new Error(`Please enter a version in this format 1.0.0.100`);\n\t}\n\n\tif (newVersion.buildNumber < 100) {\n\t\tnewVersion.preRelease = {\n\t\t\ttype: \"beta\",\n\t\t\tversion: newVersion.buildNumber,\n\t\t};\n\t} else if (newVersion.buildNumber === 100) {\n\t\tnewVersion.preRelease = undefined;\n\t} else {\n\t\tthrow new Error(\n\t\t\t`Refusing to publish a package with a build version larger than 100.`,\n\t\t);\n\t}\n\n\tconst workspaceManifest = readWorkspaceNpmManifest(workspace);\n\tconst workspaceOutputPath = getWorkspaceOutputPath(workspace);\n\tconst creatorPackage = readPackageCreatorManifest(location);\n\tlet packageJson = readPackageNpmManifest(location);\n\n\tif (packageJson === undefined) {\n\t\tpackageJson = {\n\t\t\tname:\n\t\t\t\t\"@intelligentgraphics/3d\" +\n\t\t\t\tcreatorPackage.Package.toLowerCase(),\n\t\t\tversion: \"1.0.0\",\n\t\t\tdescription: creatorPackage.Package,\n\t\t};\n\t}\n\n\tpackageJson.version = newVersion.toVersionString({\n\t\tbuildNumber: false,\n\t});\n\tpackageJson.description = newVersion.toDescriptionString(\n\t\tcreatorPackage.Package,\n\t);\n\tpackageJson.main = `${creatorPackage.Package}.js`;\n\tpackageJson.types = `${creatorPackage.Package}.d.ts`;\n\tpackageJson.publishConfig ??= {};\n\tpackageJson.publishConfig.acccess = \"public\";\n\tpackageJson.ig = {\n\t\tscriptingLibrary: true,\n\t};\n\tpackageJson.files = undefined;\n\n\tconst publishDir = path.join(\n\t\tworkspaceOutputPath,\n\t\t\"publish\",\n\t\tcreatorPackage.Package,\n\t);\n\tfs.rmSync(publishDir, { recursive: true, force: true });\n\tfs.mkdirSync(publishDir, { recursive: true });\n\n\twritePackageNpmManifest(location, packageJson);\n\n\tgetVersionFileHandler(location).write(creatorPackage.Package, newVersion);\n\n\tconst gitVersionInformation = await getVersionInformationFromGit(\n\t\tworkspace,\n\t\tlocation,\n\t);\n\n\tconst bannerText =\n\t\tworkspaceManifest !== undefined\n\t\t\t? getWorkspaceBannerText(workspaceManifest)\n\t\t\t: undefined;\n\n\tawait buildFolders({\n\t\tcwd: workspace.path,\n\t\tdirectories: [location.path],\n\t\tminimize: true,\n\t\toutDir: getWorkspaceOutputPath(workspace),\n\t\tbanner: {\n\t\t\ttext: bannerText,\n\t\t\tcommit: gitVersionInformation.commit,\n\t\t\tcommitDirty: gitVersionInformation.dirty,\n\t\t\tversion: newVersion.toVersionString({\n\t\t\t\tbuildNumber: true,\n\t\t\t}),\n\t\t\tdate: new Date(Date.now()),\n\t\t},\n\t});\n\n\tfs.copyFileSync(\n\t\tpath.join(\n\t\t\tgetWorkspaceOutputPath(workspace),\n\t\t\t`${creatorPackage.Package}.d.ts`,\n\t\t),\n\t\tpath.join(publishDir, `${creatorPackage.Package}.d.ts`),\n\t);\n\tfs.copyFileSync(\n\t\tpath.join(\n\t\t\tgetWorkspaceOutputPath(workspace),\n\t\t\t`${creatorPackage.Package}.min.js`,\n\t\t),\n\t\tpath.join(publishDir, `${creatorPackage.Package}.js`),\n\t);\n\n\tfs.copyFileSync(\n\t\tpath.join(location.manifestDir, \"package.json\"),\n\t\tpath.join(publishDir, \"package.json\"),\n\t);\n\n\tfs.writeFileSync(\n\t\tpath.join(publishDir, PACKAGE_FILE),\n\t\tJSON.stringify(creatorPackage, null, 2),\n\t);\n\n\tconst index = readPackageCreatorIndex(location);\n\n\tif (index !== undefined) {\n\t\tfs.writeFileSync(\n\t\t\tpath.join(publishDir, INDEX_FILE),\n\t\t\tJSON.stringify(index),\n\t\t);\n\t}\n\n\tconst readmeName = fs\n\t\t.readdirSync(location.path)\n\t\t.find((name) => name.toLowerCase() === \"readme.md\");\n\n\tif (readmeName !== undefined) {\n\t\tfs.copyFileSync(\n\t\t\tpath.join(location.path, readmeName),\n\t\t\tpath.join(publishDir, readmeName),\n\t\t);\n\t}\n\n\tconst npmPublishArgs: string[] = [];\n\n\tif (dryRun) {\n\t\tnpmPublishArgs.push(\"--dry-run\");\n\t}\n\n\tif (newVersion.preRelease) {\n\t\tnpmPublishArgs.push(\"--tag\", \"next\");\n\t}\n\n\tlogPackageMessage(\n\t\tcreatorPackage.Package,\n\t\t`Publishing to npm with version ${packageJson.version} using tag ${\n\t\t\tnewVersion.preRelease ? \"next\" : \"latest\"\n\t\t}`,\n\t);\n\n\tspawnSync(\"npm\", [\"publish\", ...npmPublishArgs], {\n\t\tstdio: \"inherit\",\n\t\tencoding: \"utf8\",\n\t\tcwd: publishDir,\n\t});\n\n\tfor (const packageLocation of iterateWorkspacePackages(workspace)) {\n\t\tconst manifest = readPackageNpmManifest(packageLocation);\n\n\t\tif (manifest?.dependencies?.[packageJson.name] !== undefined) {\n\t\t\tmanifest.dependencies[packageJson.name] = \"^\" + packageJson.version;\n\t\t\twritePackageNpmManifest(packageLocation, manifest);\n\t\t}\n\t}\n};\n"],"names":["publishToNpm","workspace","location","version","providedVersion","dryRun","newVersion","parseVersionFromString","err","Error","buildNumber","preRelease","type","undefined","workspaceManifest","readWorkspaceNpmManifest","workspaceOutputPath","getWorkspaceOutputPath","creatorPackage","readPackageCreatorManifest","packageJson","readPackageNpmManifest","name","Package","toLowerCase","description","toVersionString","toDescriptionString","main","types","publishConfig","acccess","ig","scriptingLibrary","files","publishDir","path","join","fs","rmSync","recursive","force","mkdirSync","writePackageNpmManifest","getVersionFileHandler","write","gitVersionInformation","getVersionInformationFromGit","bannerText","getWorkspaceBannerText","buildFolders","cwd","directories","minimize","outDir","banner","text","commit","commitDirty","dirty","date","Date","now","copyFileSync","manifestDir","writeFileSync","PACKAGE_FILE","JSON","stringify","index","readPackageCreatorIndex","INDEX_FILE","readmeName","readdirSync","find","npmPublishArgs","push","logPackageMessage","spawnSync","stdio","encoding","packageLocation","iterateWorkspacePackages","manifest","dependencies"],"mappings":"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"}
@@ -2,7 +2,16 @@
2
2
  import * as path from 'path';
3
3
  import * as fs from 'fs';
4
4
  import resolve from 'resolve';
5
- import { j as readNpmManifest, P as PACKAGE_FILE, i as isErrorENOENT, I as INDEX_FILE, f as readWorkspaceNpmManifest } from './cli.mjs';
5
+ import { j as readNpmManifest, P as PACKAGE_FILE, s as stripUtf8Bom, i as isErrorENOENT, I as INDEX_FILE, f as readWorkspaceNpmManifest } from './cli.mjs';
6
+
7
+ /**
8
+ * Describes the location of a single published package.
9
+ *
10
+ * I.e. node_modules/@intelligentgraphics/3d.ig.gfx.core
11
+ *
12
+ * @export
13
+ * @interface PublishedPackageLocation
14
+ */
6
15
 
7
16
  const detectPublishedPackageByModuleName = (workspace, name) => {
8
17
  const manifestPath = resolve.sync(name + "/package.json", {
@@ -21,9 +30,9 @@ const readPublishedPackageNpmManifest = location => {
21
30
  const readPublishedPackageCreatorManifest = location => {
22
31
  try {
23
32
  const packageJsonPath = path.join(location.path, PACKAGE_FILE);
24
- const packageJson = fs.readFileSync(packageJsonPath, {
33
+ const packageJson = stripUtf8Bom(fs.readFileSync(packageJsonPath, {
25
34
  encoding: "utf8"
26
- });
35
+ }));
27
36
  const result = JSON.parse(packageJson);
28
37
  return {
29
38
  ...result,
@@ -39,9 +48,9 @@ const readPublishedPackageCreatorManifest = location => {
39
48
  const readPublishedPackageCreatorIndex = location => {
40
49
  try {
41
50
  const packageJsonPath = path.join(location.path, INDEX_FILE);
42
- const packageJson = fs.readFileSync(packageJsonPath, {
51
+ const packageJson = stripUtf8Bom(fs.readFileSync(packageJsonPath, {
43
52
  encoding: "utf8"
44
- });
53
+ }));
45
54
  const result = JSON.parse(packageJson);
46
55
  return result;
47
56
  } catch (err) {
@@ -84,11 +93,11 @@ const readPublishedPackageCreatorIndex = location => {
84
93
  // return results;
85
94
  // };
86
95
 
87
- /**
88
- * Recursively determines all installed ig libraries for a workspace.
89
- *
90
- * @param {WorkspaceLocation} workspace
91
- * @returns {PublishedPackageLocation[]}
96
+ /**
97
+ * Recursively determines all installed ig libraries for a workspace.
98
+ *
99
+ * @param {WorkspaceLocation} workspace
100
+ * @returns {PublishedPackageLocation[]}
92
101
  */
93
102
  const determineWorkspaceIGLibraries = workspace => {
94
103
  const manifest = readWorkspaceNpmManifest(workspace);
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.mjs","sources":["../src/lib/publishedPackage.ts","../src/lib/dependencies.ts"],"sourcesContent":["import * as path from \"path\";\r\nimport * as fs from \"fs\";\r\nimport resolve from \"resolve\";\r\n\r\nimport { readNpmManifest } from \"./npmPackage\";\r\nimport {\r\n\tCreatorPackage,\r\n\tINDEX_FILE,\r\n\tPackageNpmManifest,\r\n\tPACKAGE_FILE,\r\n} from \"./package\";\r\nimport { isErrorENOENT } from \"./error\";\r\nimport { WorkspaceLocation } from \"./workspace\";\r\n\r\n/**\r\n * Describes the location of a single published package.\r\n *\r\n * I.e. node_modules/@intelligentgraphics/3d.ig.gfx.core\r\n *\r\n * @export\r\n * @interface PublishedPackageLocation\r\n */\r\nexport interface PublishedPackageLocation {\r\n\t_kind: \"PublishedPackageLocation\";\r\n\tpath: string;\r\n}\r\n\r\nexport const detectPublishedPackageByModuleName = (\r\n\tworkspace: WorkspaceLocation,\r\n\tname: string,\r\n) => {\r\n\tconst manifestPath = resolve.sync(name + \"/package.json\", {\r\n\t\tbasedir: workspace.path,\r\n\t});\r\n\tconst dir = path.dirname(manifestPath);\r\n\treturn detectPublishedPackage(dir);\r\n};\r\n\r\nexport const detectPublishedPackage = (\r\n\tpath: string,\r\n): PublishedPackageLocation => ({\r\n\t_kind: \"PublishedPackageLocation\",\r\n\tpath,\r\n});\r\n\r\nexport const readPublishedPackageNpmManifest = (\r\n\tlocation: PublishedPackageLocation,\r\n): PackageNpmManifest => {\r\n\treturn readNpmManifest<PackageNpmManifest>(location.path);\r\n};\r\n\r\nexport const readPublishedPackageCreatorManifest = (\r\n\tlocation: PublishedPackageLocation,\r\n): CreatorPackage | undefined => {\r\n\ttry {\r\n\t\tconst packageJsonPath = path.join(location.path, PACKAGE_FILE);\r\n\t\tconst packageJson = fs.readFileSync(packageJsonPath, {\r\n\t\t\tencoding: \"utf8\",\r\n\t\t});\r\n\t\tconst result: Omit<CreatorPackage, \"Scope\"> & { Scope?: string } =\r\n\t\t\tJSON.parse(packageJson);\r\n\t\treturn {\r\n\t\t\t...result,\r\n\t\t\tScope: result.Scope || result.Package,\r\n\t\t};\r\n\t} catch (err) {\r\n\t\tif (isErrorENOENT(err)) {\r\n\t\t\treturn undefined;\r\n\t\t}\r\n\r\n\t\tthrow err;\r\n\t}\r\n};\r\n\r\nexport const readPublishedPackageCreatorIndex = (\r\n\tlocation: PublishedPackageLocation,\r\n) => {\r\n\ttry {\r\n\t\tconst packageJsonPath = path.join(location.path, INDEX_FILE);\r\n\t\tconst packageJson = fs.readFileSync(packageJsonPath, {\r\n\t\t\tencoding: \"utf8\",\r\n\t\t});\r\n\t\tconst result: object = JSON.parse(packageJson);\r\n\t\treturn result;\r\n\t} catch (err) {\r\n\t\tif (isErrorENOENT(err)) {\r\n\t\t\treturn undefined;\r\n\t\t}\r\n\r\n\t\tthrow err;\r\n\t}\r\n};\r\n","import { CreatorPackage } from \"./package\";\r\nimport { PackageJSON } from \"./packageJSON\";\r\nimport {\r\n\tdetectPublishedPackageByModuleName,\r\n\tPublishedPackageLocation,\r\n\treadPublishedPackageCreatorManifest,\r\n\treadPublishedPackageNpmManifest,\r\n} from \"./publishedPackage\";\r\nimport { readWorkspaceNpmManifest, WorkspaceLocation } from \"./workspace\";\r\n\r\n// /**\r\n// * Determines the implicit dependencies of a an actual data workspace package.\r\n// *\r\n// * An implicit dependency is a dependency that is installed for the workspace and has the same runtime environment (evaluator, interactor) as the package.\r\n// *\r\n// * @param {WorkspaceLocation} workspace\r\n// * @param {CreatorPackage} creatorPackage\r\n// * @returns {PublishedPackageLocation[]}\r\n// */\r\n// export const determinePackageImplicitDependencies = (\r\n// \tworkspace: WorkspaceLocation,\r\n// \tcreatorPackage: CreatorPackage,\r\n// ): PublishedPackageLocation[] => {\r\n// \tconst libraries = determineWorkspaceIGLibraries(workspace);\r\n\r\n// \tconst results: PublishedPackageLocation[] = [];\r\n// \tfor (const librarylocation of libraries) {\r\n// \t\tconst libraryManifest =\r\n// \t\t\treadPublishedPackageCreatorManifest(librarylocation);\r\n\r\n// \t\tif (\r\n// \t\t\tlibraryManifest !== undefined &&\r\n// \t\t\t(libraryManifest.Type === \"Mixed\" ||\r\n// \t\t\t\tlibraryManifest.RunTime === creatorPackage.RunTime)\r\n// \t\t) {\r\n// \t\t\tresults.push(librarylocation);\r\n// \t\t}\r\n// \t}\r\n\r\n// \treturn results;\r\n// };\r\n\r\n/**\r\n * Recursively determines all installed ig libraries for a workspace.\r\n *\r\n * @param {WorkspaceLocation} workspace\r\n * @returns {PublishedPackageLocation[]}\r\n */\r\nexport const determineWorkspaceIGLibraries = (\r\n\tworkspace: WorkspaceLocation,\r\n): PublishedPackageLocation[] => {\r\n\tconst manifest = readWorkspaceNpmManifest(workspace);\r\n\r\n\tif (manifest === undefined) {\r\n\t\treturn [];\r\n\t}\r\n\r\n\tconst libraries = collectIGLibraries(workspace, manifest);\r\n\tconst results = new Map<string, PublishedPackageLocation>();\r\n\r\n\tfor (const location of libraries) {\r\n\t\tconst manifest = readPublishedPackageNpmManifest(location);\r\n\t\tif (!results.has(manifest.name)) {\r\n\t\t\tresults.set(manifest.name, location);\r\n\t\t}\r\n\t}\r\n\r\n\treturn Array.from(results.values());\r\n};\r\n\r\nconst collectIGLibraries = (\r\n\tworkspace: WorkspaceLocation,\r\n\tmanifest: PackageJSON,\r\n): PublishedPackageLocation[] => {\r\n\tif (!manifest.dependencies) {\r\n\t\treturn [];\r\n\t}\r\n\r\n\tconst runtimeDependencies = Object.getOwnPropertyNames(\r\n\t\tmanifest.dependencies,\r\n\t);\r\n\r\n\tconst result: PublishedPackageLocation[] = [];\r\n\r\n\tfor (const runtimeDependency of runtimeDependencies) {\r\n\t\tconst location = detectPublishedPackageByModuleName(\r\n\t\t\tworkspace,\r\n\t\t\truntimeDependency,\r\n\t\t);\r\n\r\n\t\tconst runtimeManifest = readPublishedPackageNpmManifest(location);\r\n\r\n\t\t// packages need to explicitly be marked as ig scriptingLibraries\r\n\t\tif (runtimeManifest.ig?.scriptingLibrary) {\r\n\t\t\tresult.push(location);\r\n\t\t\tresult.push(...collectIGLibraries(workspace, runtimeManifest));\r\n\t\t}\r\n\t}\r\n\r\n\treturn result;\r\n};\r\n"],"names":["detectPublishedPackageByModuleName","workspace","name","manifestPath","resolve","sync","basedir","path","dir","dirname","detectPublishedPackage","_kind","readPublishedPackageNpmManifest","location","readNpmManifest","readPublishedPackageCreatorManifest","packageJsonPath","join","PACKAGE_FILE","packageJson","fs","readFileSync","encoding","result","JSON","parse","Scope","Package","err","isErrorENOENT","undefined","readPublishedPackageCreatorIndex","INDEX_FILE","determineWorkspaceIGLibraries","manifest","readWorkspaceNpmManifest","libraries","collectIGLibraries","results","Map","has","set","Array","from","values","dependencies","runtimeDependencies","Object","getOwnPropertyNames","runtimeDependency","runtimeManifest","ig","scriptingLibrary","push"],"mappings":"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"}
1
+ {"version":3,"file":"dependencies.mjs","sources":["../src/lib/publishedPackage.ts","../src/lib/dependencies.ts"],"sourcesContent":["import * as path from \"path\";\nimport * as fs from \"fs\";\nimport resolve from \"resolve\";\n\nimport { readNpmManifest } from \"./npmPackage\";\nimport {\n\tCreatorPackage,\n\tINDEX_FILE,\n\tPackageNpmManifest,\n\tPACKAGE_FILE,\n} from \"./package\";\nimport { isErrorENOENT } from \"./error\";\nimport { WorkspaceLocation } from \"./workspace\";\nimport { stripUtf8Bom } from \"./stripUtf8Bom\";\n\n/**\n * Describes the location of a single published package.\n *\n * I.e. node_modules/@intelligentgraphics/3d.ig.gfx.core\n *\n * @export\n * @interface PublishedPackageLocation\n */\nexport interface PublishedPackageLocation {\n\t_kind: \"PublishedPackageLocation\";\n\tpath: string;\n}\n\nexport const detectPublishedPackageByModuleName = (\n\tworkspace: WorkspaceLocation,\n\tname: string,\n) => {\n\tconst manifestPath = resolve.sync(name + \"/package.json\", {\n\t\tbasedir: workspace.path,\n\t});\n\tconst dir = path.dirname(manifestPath);\n\treturn detectPublishedPackage(dir);\n};\n\nexport const detectPublishedPackage = (\n\tpath: string,\n): PublishedPackageLocation => ({\n\t_kind: \"PublishedPackageLocation\",\n\tpath,\n});\n\nexport const readPublishedPackageNpmManifest = (\n\tlocation: PublishedPackageLocation,\n): PackageNpmManifest => {\n\treturn readNpmManifest<PackageNpmManifest>(location.path);\n};\n\nexport const readPublishedPackageCreatorManifest = (\n\tlocation: PublishedPackageLocation,\n): CreatorPackage | undefined => {\n\ttry {\n\t\tconst packageJsonPath = path.join(location.path, PACKAGE_FILE);\n\t\tconst packageJson = stripUtf8Bom(\n\t\t\tfs.readFileSync(packageJsonPath, {\n\t\t\t\tencoding: \"utf8\",\n\t\t\t}),\n\t\t);\n\t\tconst result: Omit<CreatorPackage, \"Scope\"> & { Scope?: string } =\n\t\t\tJSON.parse(packageJson);\n\t\treturn {\n\t\t\t...result,\n\t\t\tScope: result.Scope || result.Package,\n\t\t};\n\t} catch (err) {\n\t\tif (isErrorENOENT(err)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tthrow err;\n\t}\n};\n\nexport const readPublishedPackageCreatorIndex = (\n\tlocation: PublishedPackageLocation,\n) => {\n\ttry {\n\t\tconst packageJsonPath = path.join(location.path, INDEX_FILE);\n\t\tconst packageJson = stripUtf8Bom(\n\t\t\tfs.readFileSync(packageJsonPath, {\n\t\t\t\tencoding: \"utf8\",\n\t\t\t}),\n\t\t);\n\t\tconst result: object = JSON.parse(packageJson);\n\t\treturn result;\n\t} catch (err) {\n\t\tif (isErrorENOENT(err)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tthrow err;\n\t}\n};\n","import { CreatorPackage } from \"./package\";\nimport { PackageJSON } from \"./packageJSON\";\nimport {\n\tdetectPublishedPackageByModuleName,\n\tPublishedPackageLocation,\n\treadPublishedPackageCreatorManifest,\n\treadPublishedPackageNpmManifest,\n} from \"./publishedPackage\";\nimport { readWorkspaceNpmManifest, WorkspaceLocation } from \"./workspace\";\n\n// /**\n// * Determines the implicit dependencies of a an actual data workspace package.\n// *\n// * An implicit dependency is a dependency that is installed for the workspace and has the same runtime environment (evaluator, interactor) as the package.\n// *\n// * @param {WorkspaceLocation} workspace\n// * @param {CreatorPackage} creatorPackage\n// * @returns {PublishedPackageLocation[]}\n// */\n// export const determinePackageImplicitDependencies = (\n// \tworkspace: WorkspaceLocation,\n// \tcreatorPackage: CreatorPackage,\n// ): PublishedPackageLocation[] => {\n// \tconst libraries = determineWorkspaceIGLibraries(workspace);\n\n// \tconst results: PublishedPackageLocation[] = [];\n// \tfor (const librarylocation of libraries) {\n// \t\tconst libraryManifest =\n// \t\t\treadPublishedPackageCreatorManifest(librarylocation);\n\n// \t\tif (\n// \t\t\tlibraryManifest !== undefined &&\n// \t\t\t(libraryManifest.Type === \"Mixed\" ||\n// \t\t\t\tlibraryManifest.RunTime === creatorPackage.RunTime)\n// \t\t) {\n// \t\t\tresults.push(librarylocation);\n// \t\t}\n// \t}\n\n// \treturn results;\n// };\n\n/**\n * Recursively determines all installed ig libraries for a workspace.\n *\n * @param {WorkspaceLocation} workspace\n * @returns {PublishedPackageLocation[]}\n */\nexport const determineWorkspaceIGLibraries = (\n\tworkspace: WorkspaceLocation,\n): PublishedPackageLocation[] => {\n\tconst manifest = readWorkspaceNpmManifest(workspace);\n\n\tif (manifest === undefined) {\n\t\treturn [];\n\t}\n\n\tconst libraries = collectIGLibraries(workspace, manifest);\n\tconst results = new Map<string, PublishedPackageLocation>();\n\n\tfor (const location of libraries) {\n\t\tconst manifest = readPublishedPackageNpmManifest(location);\n\t\tif (!results.has(manifest.name)) {\n\t\t\tresults.set(manifest.name, location);\n\t\t}\n\t}\n\n\treturn Array.from(results.values());\n};\n\nconst collectIGLibraries = (\n\tworkspace: WorkspaceLocation,\n\tmanifest: PackageJSON,\n): PublishedPackageLocation[] => {\n\tif (!manifest.dependencies) {\n\t\treturn [];\n\t}\n\n\tconst runtimeDependencies = Object.getOwnPropertyNames(\n\t\tmanifest.dependencies,\n\t);\n\n\tconst result: PublishedPackageLocation[] = [];\n\n\tfor (const runtimeDependency of runtimeDependencies) {\n\t\tconst location = detectPublishedPackageByModuleName(\n\t\t\tworkspace,\n\t\t\truntimeDependency,\n\t\t);\n\n\t\tconst runtimeManifest = readPublishedPackageNpmManifest(location);\n\n\t\t// packages need to explicitly be marked as ig scriptingLibraries\n\t\tif (runtimeManifest.ig?.scriptingLibrary) {\n\t\t\tresult.push(location);\n\t\t\tresult.push(...collectIGLibraries(workspace, runtimeManifest));\n\t\t}\n\t}\n\n\treturn result;\n};\n"],"names":["detectPublishedPackageByModuleName","workspace","name","manifestPath","resolve","sync","basedir","path","dir","dirname","detectPublishedPackage","_kind","readPublishedPackageNpmManifest","location","readNpmManifest","readPublishedPackageCreatorManifest","packageJsonPath","join","PACKAGE_FILE","packageJson","stripUtf8Bom","fs","readFileSync","encoding","result","JSON","parse","Scope","Package","err","isErrorENOENT","undefined","readPublishedPackageCreatorIndex","INDEX_FILE","determineWorkspaceIGLibraries","manifest","readWorkspaceNpmManifest","libraries","collectIGLibraries","results","Map","has","set","Array","from","values","dependencies","runtimeDependencies","Object","getOwnPropertyNames","runtimeDependency","runtimeManifest","ig","scriptingLibrary","push"],"mappings":";;;;;;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMO,MAAMA,kCAAkC,GAAG,CACjDC,SAA4B,EAC5BC,IAAY,KACR;EACJ,MAAMC,YAAY,GAAGC,OAAO,CAACC,IAAI,CAACH,IAAI,GAAG,eAAe,EAAE;IACzDI,OAAO,EAAEL,SAAS,CAACM,IAAAA;AACpB,GAAC,CAAC,CAAA;AACF,EAAA,MAAMC,GAAG,GAAGD,IAAI,CAACE,OAAO,CAACN,YAAY,CAAC,CAAA;EACtC,OAAOO,sBAAsB,CAACF,GAAG,CAAC,CAAA;AACnC,CAAC,CAAA;AAEM,MAAME,sBAAsB,GAClCH,IAAY,KACmB;AAC/BI,EAAAA,KAAK,EAAE,0BAA0B;AACjCJ,EAAAA,IAAAA;AACD,CAAC,CAAC,CAAA;AAEWK,MAAAA,+BAA+B,GAC3CC,QAAkC,IACV;AACxB,EAAA,OAAOC,eAAe,CAAqBD,QAAQ,CAACN,IAAI,CAAC,CAAA;AAC1D,EAAC;AAEYQ,MAAAA,mCAAmC,GAC/CF,QAAkC,IACF;EAChC,IAAI;IACH,MAAMG,eAAe,GAAGT,IAAI,CAACU,IAAI,CAACJ,QAAQ,CAACN,IAAI,EAAEW,YAAY,CAAC,CAAA;IAC9D,MAAMC,WAAW,GAAGC,YAAY,CAC/BC,EAAE,CAACC,YAAY,CAACN,eAAe,EAAE;AAChCO,MAAAA,QAAQ,EAAE,MAAA;AACX,KAAC,CAAC,CACF,CAAA;AACD,IAAA,MAAMC,MAA0D,GAC/DC,IAAI,CAACC,KAAK,CAACP,WAAW,CAAC,CAAA;IACxB,OAAO;AACN,MAAA,GAAGK,MAAM;AACTG,MAAAA,KAAK,EAAEH,MAAM,CAACG,KAAK,IAAIH,MAAM,CAACI,OAAAA;KAC9B,CAAA;GACD,CAAC,OAAOC,GAAG,EAAE;AACb,IAAA,IAAIC,aAAa,CAACD,GAAG,CAAC,EAAE;AACvB,MAAA,OAAOE,SAAS,CAAA;AACjB,KAAA;AAEA,IAAA,MAAMF,GAAG,CAAA;AACV,GAAA;AACD,EAAC;AAEYG,MAAAA,gCAAgC,GAC5CnB,QAAkC,IAC9B;EACJ,IAAI;IACH,MAAMG,eAAe,GAAGT,IAAI,CAACU,IAAI,CAACJ,QAAQ,CAACN,IAAI,EAAE0B,UAAU,CAAC,CAAA;IAC5D,MAAMd,WAAW,GAAGC,YAAY,CAC/BC,EAAE,CAACC,YAAY,CAACN,eAAe,EAAE;AAChCO,MAAAA,QAAQ,EAAE,MAAA;AACX,KAAC,CAAC,CACF,CAAA;AACD,IAAA,MAAMC,MAAc,GAAGC,IAAI,CAACC,KAAK,CAACP,WAAW,CAAC,CAAA;AAC9C,IAAA,OAAOK,MAAM,CAAA;GACb,CAAC,OAAOK,GAAG,EAAE;AACb,IAAA,IAAIC,aAAa,CAACD,GAAG,CAAC,EAAE;AACvB,MAAA,OAAOE,SAAS,CAAA;AACjB,KAAA;AAEA,IAAA,MAAMF,GAAG,CAAA;AACV,GAAA;AACD;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACaK,MAAAA,6BAA6B,GACzCjC,SAA4B,IACI;AAChC,EAAA,MAAMkC,QAAQ,GAAGC,wBAAwB,CAACnC,SAAS,CAAC,CAAA;EAEpD,IAAIkC,QAAQ,KAAKJ,SAAS,EAAE;AAC3B,IAAA,OAAO,EAAE,CAAA;AACV,GAAA;AAEA,EAAA,MAAMM,SAAS,GAAGC,kBAAkB,CAACrC,SAAS,EAAEkC,QAAQ,CAAC,CAAA;AACzD,EAAA,MAAMI,OAAO,GAAG,IAAIC,GAAG,EAAoC,CAAA;AAE3D,EAAA,KAAK,MAAM3B,QAAQ,IAAIwB,SAAS,EAAE;AACjC,IAAA,MAAMF,QAAQ,GAAGvB,+BAA+B,CAACC,QAAQ,CAAC,CAAA;IAC1D,IAAI,CAAC0B,OAAO,CAACE,GAAG,CAACN,QAAQ,CAACjC,IAAI,CAAC,EAAE;MAChCqC,OAAO,CAACG,GAAG,CAACP,QAAQ,CAACjC,IAAI,EAAEW,QAAQ,CAAC,CAAA;AACrC,KAAA;AACD,GAAA;EAEA,OAAO8B,KAAK,CAACC,IAAI,CAACL,OAAO,CAACM,MAAM,EAAE,CAAC,CAAA;AACpC,EAAC;AAED,MAAMP,kBAAkB,GAAG,CAC1BrC,SAA4B,EAC5BkC,QAAqB,KACW;AAChC,EAAA,IAAI,CAACA,QAAQ,CAACW,YAAY,EAAE;AAC3B,IAAA,OAAO,EAAE,CAAA;AACV,GAAA;EAEA,MAAMC,mBAAmB,GAAGC,MAAM,CAACC,mBAAmB,CACrDd,QAAQ,CAACW,YAAY,CACrB,CAAA;EAED,MAAMtB,MAAkC,GAAG,EAAE,CAAA;AAE7C,EAAA,KAAK,MAAM0B,iBAAiB,IAAIH,mBAAmB,EAAE;AAAA,IAAA,IAAA,mBAAA,CAAA;AACpD,IAAA,MAAMlC,QAAQ,GAAGb,kCAAkC,CAClDC,SAAS,EACTiD,iBAAiB,CACjB,CAAA;AAED,IAAA,MAAMC,eAAe,GAAGvC,+BAA+B,CAACC,QAAQ,CAAC,CAAA;;AAEjE;AACA,IAAA,IAAA,CAAA,mBAAA,GAAIsC,eAAe,CAACC,EAAE,MAAlB,IAAA,IAAA,mBAAA,KAAA,KAAA,CAAA,IAAA,mBAAA,CAAoBC,gBAAgB,EAAE;AACzC7B,MAAAA,MAAM,CAAC8B,IAAI,CAACzC,QAAQ,CAAC,CAAA;MACrBW,MAAM,CAAC8B,IAAI,CAAC,GAAGhB,kBAAkB,CAACrC,SAAS,EAAEkD,eAAe,CAAC,CAAC,CAAA;AAC/D,KAAA;AACD,GAAA;AAEA,EAAA,OAAO3B,MAAM,CAAA;AACd,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":["import \"source-map-support/register.js\";\r\nimport \"v8-compile-cache\";\r\n\r\nimport(\"./cli\");\r\n"],"names":[],"mappings":";;;;AAGA,OAAO,WAAO,oCAAC"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":["import \"source-map-support/register.js\";\nimport \"v8-compile-cache\";\n\nimport(\"./cli\");\n"],"names":[],"mappings":";;;;AAGA,OAAO,WAAO,oCAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scripts.mjs","sources":["../src/lib/scripts.ts"],"sourcesContent":["import glob from \"glob\";\r\n\r\nimport { PackageLocation } from \"./package\";\r\n\r\nexport const getPackageTypescriptFiles = (location: PackageLocation) =>\r\n\tglob.sync(\"**/*.ts\", {\r\n\t\tabsolute: true,\r\n\t\tcwd: location.scriptsDir,\r\n\t\tignore: \"node_modules/**/*\",\r\n\t});\r\n"],"names":["getPackageTypescriptFiles","location","glob","sync","absolute","cwd","scriptsDir","ignore"],"mappings":";;;AAIO,MAAMA,yBAAyB,GAAIC,QAAyB,IAClEC,IAAI,CAACC,IAAI,CAAC,SAAS,EAAE;AACpBC,EAAAA,QAAQ,EAAE,IAAI;EACdC,GAAG,EAAEJ,QAAQ,CAACK,UAAU;AACxBC,EAAAA,MAAM,EAAE,mBAAA;AACT,CAAC;;;;"}
1
+ {"version":3,"file":"scripts.mjs","sources":["../src/lib/scripts.ts"],"sourcesContent":["import glob from \"glob\";\n\nimport { PackageLocation } from \"./package\";\n\nexport const getPackageTypescriptFiles = (location: PackageLocation) =>\n\tglob.sync(\"**/*.ts\", {\n\t\tabsolute: true,\n\t\tcwd: location.scriptsDir,\n\t\tignore: \"node_modules/**/*\",\n\t});\n"],"names":["getPackageTypescriptFiles","location","glob","sync","absolute","cwd","scriptsDir","ignore"],"mappings":";;;AAIO,MAAMA,yBAAyB,GAAIC,QAAyB,IAClEC,IAAI,CAACC,IAAI,CAAC,SAAS,EAAE;AACpBC,EAAAA,QAAQ,EAAE,IAAI;EACdC,GAAG,EAAEJ,QAAQ,CAACK,UAAU;AACxBC,EAAAA,MAAM,EAAE,mBAAA;AACT,CAAC;;;;"}
@@ -202,21 +202,21 @@ class PackageVersion {
202
202
  return parts.join(" ");
203
203
  }
204
204
 
205
- /**
206
- * Determines wether the version is lesser than the input version
207
- *
208
- * @param {PackageVersion} version
209
- * @returns
205
+ /**
206
+ * Determines wether the version is lesser than the input version
207
+ *
208
+ * @param {PackageVersion} version
209
+ * @returns
210
210
  */
211
211
  isLesserThan(version) {
212
212
  return PackageVersion.toNumber(this) < PackageVersion.toNumber(version);
213
213
  }
214
214
 
215
- /**
216
- * Determines wether the version is greater than the input version
217
- *
218
- * @param {PackageVersion} version
219
- * @returns
215
+ /**
216
+ * Determines wether the version is greater than the input version
217
+ *
218
+ * @param {PackageVersion} version
219
+ * @returns
220
220
  */
221
221
  isGreaterThan(version) {
222
222
  return PackageVersion.toNumber(this) > PackageVersion.toNumber(version);
@@ -1 +1 @@
1
- {"version":3,"file":"versionFile.mjs","sources":["../src/lib/git.ts","../src/lib/banner.ts","../src/lib/packageVersion.ts","../src/lib/parseVersion.ts","../src/lib/fs.ts","../src/lib/versionFile.ts"],"sourcesContent":["import simpleGit from \"simple-git\";\r\nimport * as path from \"path\";\r\n\r\nimport { WorkspaceLocation } from \"./workspace\";\r\nimport { PackageLocation } from \"./package\";\r\n\r\nexport const getVersionInformationFromGit = async (\r\n\tworkspaceLocation: WorkspaceLocation,\r\n\tpackageLocation: PackageLocation,\r\n) => {\r\n\ttry {\r\n\t\tconst git = simpleGit({\r\n\t\t\tbaseDir: workspaceLocation.path,\r\n\t\t});\r\n\r\n\t\t// check wether the files for a folder are changed\r\n\t\t// if so, mark as dirty\r\n\t\tconst diff = await git.diffSummary();\r\n\r\n\t\tconst dirty = diff.files.some((file) => {\r\n\t\t\tif (\r\n\t\t\t\tfile.file.toLowerCase().includes(\"releases\") ||\r\n\t\t\t\tfile.file.toLowerCase().endsWith(\"version.ts\") ||\r\n\t\t\t\tfile.file.toLowerCase().endsWith(\"package.json\")\r\n\t\t\t) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tconst fullPath = path.resolve(workspaceLocation.path, file.file);\r\n\t\t\tconst relativePath = path.relative(packageLocation.path, fullPath);\r\n\r\n\t\t\treturn !relativePath.startsWith(\"..\");\r\n\t\t});\r\n\r\n\t\tconst log = await git.log({ maxCount: 1 });\r\n\t\tconst commit = !log.latest?.hash\r\n\t\t\t? undefined\r\n\t\t\t: log.latest.hash.substring(0, 7);\r\n\r\n\t\treturn {\r\n\t\t\tcommit,\r\n\t\t\tdirty,\r\n\t\t\tcommitDate: log.latest?.date,\r\n\t\t};\r\n\t} catch (err) {\r\n\t\treturn {};\r\n\t}\r\n};\r\n","import { WorkspacePackageJSON } from \"./workspace\";\r\n\r\nexport const getWorkspaceBannerText = (manifest: WorkspacePackageJSON) => {\r\n\tlet bannerText = manifest?.packager?.banner;\r\n\r\n\tif (bannerText) {\r\n\t\tconst match = bannerText.match(/Copyright \\(C\\) (\\d+)( ?- ?(\\d+))?/);\r\n\r\n\t\tif (match !== null) {\r\n\t\t\tconst startYear = parseInt(match[1]);\r\n\t\t\tconst endYear = new Date().getFullYear();\r\n\r\n\t\t\tif (startYear !== endYear) {\r\n\t\t\t\tbannerText = bannerText.replace(\r\n\t\t\t\t\tmatch[0],\r\n\t\t\t\t\t`Copyright (C) ${startYear} - ${endYear}`,\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\tbannerText = bannerText.replace(\r\n\t\t\t\t\tmatch[0],\r\n\t\t\t\t\t`Copyright (C) ${startYear}`,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn bannerText;\r\n};\r\n","// Stolen from ig.tools.core\r\n\r\nexport interface PackageVersionToVersionStringParams {\r\n\tbuildNumber?: boolean;\r\n}\r\n\r\nexport class PackageVersion {\r\n\t// https://regex101.com/r/90PEY9/1\r\n\tpublic static fullTextMatcher =\r\n\t\t/(\\d+)(\\.(\\d+)(\\.(\\d+)(\\.(\\d+))?(-([^\\.]+)\\.(\\d+))?)?)?/;\r\n\tpublic static lineMatcher =\r\n\t\t/^(\\d+)(\\.(\\d+)(\\.(\\d+)(\\.(\\d+))?(-([^\\.]+)\\.(\\d+))?)?)?$/;\r\n\r\n\tpublic static extractFromText(input: string, description?: string) {\r\n\t\tif (input === undefined) {\r\n\t\t\tthrow new Error(`Can not parse version from undefined`);\r\n\t\t}\r\n\r\n\t\tconst match = input.match(PackageVersion.fullTextMatcher);\r\n\r\n\t\tif (!match) {\r\n\t\t\tthrow new Error(`Could not extract a version from input: ${input}`);\r\n\t\t}\r\n\r\n\t\treturn PackageVersion.fromMatch(match, description);\r\n\t}\r\n\r\n\tpublic static extractFromLine(input: string, description?: string) {\r\n\t\tif (input === undefined) {\r\n\t\t\tthrow new Error(`Can not parse version from undefined`);\r\n\t\t}\r\n\r\n\t\tconst match = input.match(PackageVersion.lineMatcher);\r\n\r\n\t\tif (!match) {\r\n\t\t\tthrow new Error(`Could not parse version from input: ${input}`);\r\n\t\t}\r\n\r\n\t\treturn PackageVersion.fromMatch(match, description);\r\n\t}\r\n\r\n\tpublic static equals(\r\n\t\ta: PackageVersion,\r\n\t\tb: PackageVersion,\r\n\t\tcheckPrerelease = false,\r\n\t) {\r\n\t\tif (a.major !== b.major || a.minor !== b.minor || a.patch !== b.patch) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (checkPrerelease === false) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\tif (a.preRelease === b.preRelease) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\tif (a.preRelease === undefined || b.preRelease === undefined) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\treturn (\r\n\t\t\ta.preRelease.type === b.preRelease.type &&\r\n\t\t\ta.preRelease.version === b.preRelease.version\r\n\t\t);\r\n\t}\r\n\r\n\tprivate static fromMatch(\r\n\t\t[\r\n\t\t\t,\r\n\t\t\tmajor,\r\n\t\t\t,\r\n\t\t\tminor = \"0\",\r\n\t\t\t,\r\n\t\t\tpatch = \"0\",\r\n\t\t\t,\r\n\t\t\tbuild,\r\n\t\t\t,\r\n\t\t\tpreReleaseType,\r\n\t\t\tpreReleaseNumber,\r\n\t\t]: RegExpMatchArray,\r\n\t\tdescription?: string,\r\n\t) {\r\n\t\tlet preRelease: PackageVersion[\"preRelease\"] = undefined;\r\n\t\tlet buildNumber = 100;\r\n\r\n\t\tif (preReleaseType && preReleaseNumber) {\r\n\t\t\tpreRelease = {\r\n\t\t\t\ttype: preReleaseType,\r\n\t\t\t\tversion: parseInt(preReleaseNumber),\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\tif (build) {\r\n\t\t\tbuildNumber = Number(build);\r\n\t\t} else if (description) {\r\n\t\t\tconst descriptionMatch = description.match(/(\\d+)\\)$/);\r\n\r\n\t\t\tif (descriptionMatch) {\r\n\t\t\t\tbuildNumber = parseInt(descriptionMatch[1]);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn new PackageVersion(\r\n\t\t\tparseInt(major),\r\n\t\t\tparseInt(minor),\r\n\t\t\tparseInt(patch),\r\n\t\t\tpreRelease,\r\n\t\t\tbuildNumber,\r\n\t\t);\r\n\t}\r\n\r\n\tpublic static sort(\r\n\t\ta: PackageVersion,\r\n\t\tb: PackageVersion,\r\n\t\tascending: boolean = true,\r\n\t) {\r\n\t\tconst createSortResult = (a: number, b: number) =>\r\n\t\t\tascending ? a - b : b - a;\r\n\r\n\t\tif (a.major !== b.major) {\r\n\t\t\treturn createSortResult(a.major, b.major);\r\n\t\t}\r\n\r\n\t\tif (a.minor !== b.minor) {\r\n\t\t\treturn createSortResult(a.minor, b.minor);\r\n\t\t}\r\n\r\n\t\tif (a.patch !== b.patch) {\r\n\t\t\treturn createSortResult(a.patch, b.patch);\r\n\t\t}\r\n\r\n\t\treturn createSortResult(\r\n\t\t\ta.preRelease ? a.preRelease.version : 0,\r\n\t\t\tb.preRelease ? b.preRelease.version : 0,\r\n\t\t);\r\n\t}\r\n\r\n\tprivate static toNumber(version: PackageVersion) {\r\n\t\treturn (\r\n\t\t\t((version.major * 1000 + version.minor) * 1000 + version.patch) *\r\n\t\t\t\t1000 +\r\n\t\t\tversion.buildNumber\r\n\t\t);\r\n\t}\r\n\r\n\tconstructor(\r\n\t\tpublic major: number,\r\n\t\tpublic minor: number,\r\n\t\tpublic patch: number,\r\n\t\tpublic preRelease: { type: string; version: number } | undefined,\r\n\t\tpublic buildNumber: number,\r\n\t) {}\r\n\r\n\tpublic isPreRelease() {\r\n\t\treturn this.preRelease !== undefined;\r\n\t}\r\n\r\n\tpublic clone() {\r\n\t\treturn new PackageVersion(\r\n\t\t\tthis.major,\r\n\t\t\tthis.minor,\r\n\t\t\tthis.patch,\r\n\t\t\tthis.preRelease ? { ...this.preRelease } : undefined,\r\n\t\t\tthis.buildNumber,\r\n\t\t);\r\n\t}\r\n\r\n\tpublic incrementMajor() {\r\n\t\tthis.preRelease = undefined;\r\n\t\tthis.patch = 0;\r\n\t\tthis.minor = 0;\r\n\t\tthis.major++;\r\n\t}\r\n\r\n\tpublic incrementMinor() {\r\n\t\tthis.preRelease = undefined;\r\n\t\tthis.patch = 0;\r\n\t\tthis.minor++;\r\n\t}\r\n\r\n\tpublic incrementPatch() {\r\n\t\tthis.preRelease = undefined;\r\n\t\tthis.patch++;\r\n\t}\r\n\r\n\tpublic createPreRelease(type: string) {\r\n\t\tif (!this.preRelease) {\r\n\t\t\tthis.buildNumber = 1;\r\n\t\t} else {\r\n\t\t\tthis.buildNumber++;\r\n\t\t}\r\n\r\n\t\tif (this.preRelease && type === this.preRelease.type) {\r\n\t\t\tthis.preRelease.version++;\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.preRelease = {\r\n\t\t\tversion: 0,\r\n\t\t\ttype,\r\n\t\t};\r\n\t}\r\n\r\n\tpublic createRelease() {\r\n\t\tthis.preRelease = undefined;\r\n\t\tthis.buildNumber = 100;\r\n\t}\r\n\r\n\tpublic toVersionString({\r\n\t\tbuildNumber,\r\n\t}: PackageVersionToVersionStringParams = {}) {\r\n\t\tlet version = [this.major, this.minor, this.patch].join(\".\");\r\n\r\n\t\tif (buildNumber) {\r\n\t\t\tversion += \".\" + this.buildNumber;\r\n\t\t}\r\n\r\n\t\tif (this.preRelease) {\r\n\t\t\tversion += `-${this.preRelease.type}.${this.preRelease.version}`;\r\n\t\t}\r\n\r\n\t\treturn version;\r\n\t}\r\n\r\n\tpublic toDescriptionString(packageName: string) {\r\n\t\tconst base = [this.major, this.minor, this.patch].join(\".\");\r\n\t\tconst parts: (number | string)[] = [packageName, base];\r\n\r\n\t\tif (this.preRelease) {\r\n\t\t\tparts.push(upperCaseFirst(this.preRelease.type));\r\n\t\t\tparts.push(this.preRelease.version);\r\n\t\t}\r\n\r\n\t\tparts.push(`(${base}.${this.buildNumber})`);\r\n\r\n\t\treturn parts.join(\" \");\r\n\t}\r\n\r\n\t/**\r\n\t * Determines wether the version is lesser than the input version\r\n\t *\r\n\t * @param {PackageVersion} version\r\n\t * @returns\r\n\t */\r\n\tpublic isLesserThan(version: PackageVersion) {\r\n\t\treturn PackageVersion.toNumber(this) < PackageVersion.toNumber(version);\r\n\t}\r\n\r\n\t/**\r\n\t * Determines wether the version is greater than the input version\r\n\t *\r\n\t * @param {PackageVersion} version\r\n\t * @returns\r\n\t */\r\n\tpublic isGreaterThan(version: PackageVersion) {\r\n\t\treturn PackageVersion.toNumber(this) > PackageVersion.toNumber(version);\r\n\t}\r\n}\r\n\r\nconst upperCaseFirst = (input: string) => {\r\n\treturn input.slice(0, 1).toUpperCase() + input.slice(1);\r\n};\r\n","import { PackageVersion } from \"./packageVersion\";\r\n\r\nexport const parseVersionFromString = (input: string) => {\r\n\tif (input === undefined) {\r\n\t\tthrow new Error(`Can not parse version from undefined`);\r\n\t}\r\n\r\n\tlet match: RegExpMatchArray | null;\r\n\r\n\tlet major!: string;\r\n\tlet minor!: string;\r\n\tlet patch!: string;\r\n\tlet build: string | undefined;\r\n\tlet preReleaseType: string | undefined;\r\n\tlet preReleaseNumber: string | undefined;\r\n\r\n\tif (\r\n\t\t// first try to find a full match with build number\r\n\t\t(match = input.match(\r\n\t\t\t/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)(-([^\\.]+)\\.(\\d+))?/,\r\n\t\t)) !== null\r\n\t) {\r\n\t\t[, major, minor, patch, build, preReleaseType, preReleaseNumber] =\r\n\t\t\tmatch;\r\n\t} else if (\r\n\t\t(match = input.match(/(\\d+)\\.(\\d+)\\.(\\d+)(-([^\\.]+)\\.(\\d+))?/)) !== null\r\n\t) {\r\n\t\t[, major, minor, patch, , preReleaseType, preReleaseNumber] = match;\r\n\t}\r\n\r\n\tif (match === null) {\r\n\t\tthrow new Error(`Could not parse version from input: ${input}`);\r\n\t}\r\n\r\n\tlet preRelease: PackageVersion[\"preRelease\"] = undefined;\r\n\tlet buildNumber = 100;\r\n\r\n\tif (preReleaseType && preReleaseNumber) {\r\n\t\tpreRelease = {\r\n\t\t\ttype: preReleaseType,\r\n\t\t\tversion: parseInt(preReleaseNumber),\r\n\t\t};\r\n\t}\r\n\r\n\tif (build) {\r\n\t\tbuildNumber = Number(build);\r\n\t} else if (input) {\r\n\t\tconst descriptionMatch = input.match(/(\\d+)\\)$/);\r\n\r\n\t\tif (descriptionMatch) {\r\n\t\t\tbuildNumber = parseInt(descriptionMatch[1]);\r\n\t\t}\r\n\t}\r\n\r\n\treturn new PackageVersion(\r\n\t\tparseInt(major),\r\n\t\tparseInt(minor),\r\n\t\tparseInt(patch),\r\n\t\tpreRelease,\r\n\t\tbuildNumber,\r\n\t);\r\n};\r\n\r\n// 1000001001 -> 1.0.1.1\r\n// 1002017001 -> 1.2.17.1\r\nexport const parseVersionFromNumericVersion = (\r\n\tversion: number,\r\n): PackageVersion => {\r\n\tconst major = Math.floor(version / 1000000000);\r\n\tconst minor = Math.floor((version % 1000000000) / 1000000);\r\n\tconst patch = Math.floor((version % 1000000) / 1000);\r\n\tconst buildNumber = version % 1000;\r\n\r\n\treturn new PackageVersion(major, minor, patch, undefined, buildNumber);\r\n};\r\n","import * as fs from \"fs\";\r\n\r\nimport { isErrorENOENT } from \"./error\";\r\n\r\nexport const readStringFromFile = (filePath: string): string =>\r\n\tfs.readFileSync(filePath, { encoding: \"utf8\" });\r\n\r\nexport const readStringFromFileOrUndefined = (\r\n\tfilePath: string,\r\n): string | undefined => {\r\n\ttry {\r\n\t\treturn readStringFromFile(filePath);\r\n\t} catch (err) {\r\n\t\tif (!isErrorENOENT(err)) {\r\n\t\t\tthrow err;\r\n\t\t}\r\n\t\treturn undefined;\r\n\t}\r\n};\r\n","import * as fs from \"fs\";\r\nimport * as path from \"path\";\r\n\r\nimport { isErrorENOENT } from \"./error\";\r\nimport { readStringFromFileOrUndefined } from \"./fs\";\r\nimport { PackageLocation } from \"./package\";\r\nimport { PackageVersion } from \"./packageVersion\";\r\n\r\n// https://regex101.com/r/LtGAu5/1\r\nconst logRegex =\r\n\t/console\\.log\\(\\s*\"([\\w\\s\\.\\(\\)]+)\\ *Copyright[\\w\\s\\(\\)\\.]+(\\d{4}|\\d{4} - \\d{4})([\\w\\s\\(\\)\\.]+)?\",?\\s*\\)/i;\r\nconst currentYear = new Date(Date.now()).getFullYear();\r\n\r\nexport const getVersionFileHandler = (location: PackageLocation) => {\r\n\tconst filePath = path.join(location.scriptsDir, \"Version.ts\");\r\n\r\n\tconst invalidVersionFile = (versionFile: string | undefined) => ({\r\n\t\tversion: undefined,\r\n\t\twrite: (name: string, newVersion: PackageVersion) => {\r\n\t\t\tconst scriptsContent = fs.readdirSync(location.scriptsDir);\r\n\t\t\tconst tsFiles = scriptsContent.filter((file) =>\r\n\t\t\t\tfile.endsWith(\".ts\"),\r\n\t\t\t);\r\n\r\n\t\t\tif (tsFiles.length > 0) {\r\n\t\t\t\treturn createVersionFileWriter([currentYear], \"\")(\r\n\t\t\t\t\tname,\r\n\t\t\t\t\tnewVersion,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t},\r\n\t\treset: () => {\r\n\t\t\tif (versionFile !== undefined) {\r\n\t\t\t\tfs.writeFileSync(filePath, versionFile, { encoding: \"utf8\" });\r\n\t\t\t} else {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tfs.rmSync(filePath);\r\n\t\t\t\t} catch (err) {\r\n\t\t\t\t\tif (!isErrorENOENT(err)) {\r\n\t\t\t\t\t\tthrow err;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n\r\n\ttype CopyrightRange = [number, number?];\r\n\r\n\tconst createVersionFileWriter =\r\n\t\t(\r\n\t\t\tcopyright: CopyrightRange = [currentYear],\r\n\t\t\tcopyrightStuff: string = \"\",\r\n\t\t) =>\r\n\t\t(name: string, newVersion: PackageVersion) => {\r\n\t\t\tconst descriptionText = newVersion.toDescriptionString(name);\r\n\t\t\tconst copyrightText = createYearString(copyright);\r\n\r\n\t\t\tconst result = `console.log(\"${descriptionText}. Copyright (C) ${copyrightText}${copyrightStuff}\");`;\r\n\r\n\t\t\tfs.writeFileSync(filePath, result, { encoding: \"utf-8\" });\r\n\t\t};\r\n\r\n\tlet rawVersionFile = readStringFromFileOrUndefined(filePath);\r\n\r\n\tif (rawVersionFile === undefined) {\r\n\t\treturn invalidVersionFile(rawVersionFile);\r\n\t}\r\n\r\n\tconst versionFile = rawVersionFile.replace(/\\n/g, \"\");\r\n\r\n\tconst match = versionFile.match(logRegex);\r\n\r\n\tif (!match) {\r\n\t\treturn invalidVersionFile(versionFile);\r\n\t}\r\n\r\n\tconst [_full, _description, copyright, copyrightStuff] = match as [\r\n\t\tstring,\r\n\t\tstring,\r\n\t\tstring,\r\n\t\tstring?,\r\n\t];\r\n\r\n\tconst copyrightYears = copyright.match(/^(\\d+)( ?- ?(\\d+))?$/);\r\n\r\n\tlet years: [number, number?];\r\n\r\n\tif (copyrightYears === null) {\r\n\t\tyears = [currentYear];\r\n\t} else {\r\n\t\tyears = [Number(copyrightYears[1]), currentYear];\r\n\t}\r\n\r\n\treturn {\r\n\t\twrite: createVersionFileWriter(years, copyrightStuff),\r\n\t\treset: () => {\r\n\t\t\tfs.writeFileSync(filePath, versionFile, { encoding: \"utf8\" });\r\n\t\t},\r\n\t};\r\n};\r\n\r\nconst createYearString = (years: [number, number?]) => {\r\n\tif (years[1] === undefined || years[0] === years[1]) {\r\n\t\treturn years[0].toString();\r\n\t}\r\n\r\n\treturn `${years[0]} - ${years[1]}`;\r\n};\r\n"],"names":["getVersionInformationFromGit","workspaceLocation","packageLocation","git","simpleGit","baseDir","path","diff","diffSummary","dirty","files","some","file","toLowerCase","includes","endsWith","fullPath","resolve","relativePath","relative","startsWith","log","maxCount","commit","latest","hash","undefined","substring","commitDate","date","err","getWorkspaceBannerText","manifest","bannerText","packager","banner","match","startYear","parseInt","endYear","Date","getFullYear","replace","PackageVersion","fullTextMatcher","lineMatcher","extractFromText","input","description","Error","fromMatch","extractFromLine","equals","a","b","checkPrerelease","major","minor","patch","preRelease","type","version","build","preReleaseType","preReleaseNumber","buildNumber","Number","descriptionMatch","sort","ascending","createSortResult","toNumber","constructor","isPreRelease","clone","incrementMajor","incrementMinor","incrementPatch","createPreRelease","createRelease","toVersionString","join","toDescriptionString","packageName","base","parts","push","upperCaseFirst","isLesserThan","isGreaterThan","slice","toUpperCase","parseVersionFromString","parseVersionFromNumericVersion","Math","floor","readStringFromFile","filePath","fs","readFileSync","encoding","readStringFromFileOrUndefined","isErrorENOENT","logRegex","currentYear","now","getVersionFileHandler","location","scriptsDir","invalidVersionFile","versionFile","write","name","newVersion","scriptsContent","readdirSync","tsFiles","filter","length","createVersionFileWriter","reset","writeFileSync","rmSync","copyright","copyrightStuff","descriptionText","copyrightText","createYearString","result","rawVersionFile","_full","_description","copyrightYears","years","toString"],"mappings":";;;;;;MAMaA,4BAA4B,GAAG,OAC3CC,iBAAoC,EACpCC,eAAgC,KAC5B;EACJ,IAAI;AAAA,IAAA,IAAA,WAAA,EAAA,YAAA,CAAA;IACH,MAAMC,GAAG,GAAGC,SAAS,CAAC;MACrBC,OAAO,EAAEJ,iBAAiB,CAACK,IAAAA;AAC5B,KAAC,CAAC,CAAA;;AAEF;AACA;AACA,IAAA,MAAMC,IAAI,GAAG,MAAMJ,GAAG,CAACK,WAAW,EAAE,CAAA;IAEpC,MAAMC,KAAK,GAAGF,IAAI,CAACG,KAAK,CAACC,IAAI,CAAEC,IAAI,IAAK;AACvC,MAAA,IACCA,IAAI,CAACA,IAAI,CAACC,WAAW,EAAE,CAACC,QAAQ,CAAC,UAAU,CAAC,IAC5CF,IAAI,CAACA,IAAI,CAACC,WAAW,EAAE,CAACE,QAAQ,CAAC,YAAY,CAAC,IAC9CH,IAAI,CAACA,IAAI,CAACC,WAAW,EAAE,CAACE,QAAQ,CAAC,cAAc,CAAC,EAC/C;AACD,QAAA,OAAO,KAAK,CAAA;AACb,OAAA;AAEA,MAAA,MAAMC,QAAQ,GAAGV,IAAI,CAACW,OAAO,CAAChB,iBAAiB,CAACK,IAAI,EAAEM,IAAI,CAACA,IAAI,CAAC,CAAA;MAChE,MAAMM,YAAY,GAAGZ,IAAI,CAACa,QAAQ,CAACjB,eAAe,CAACI,IAAI,EAAEU,QAAQ,CAAC,CAAA;AAElE,MAAA,OAAO,CAACE,YAAY,CAACE,UAAU,CAAC,IAAI,CAAC,CAAA;AACtC,KAAC,CAAC,CAAA;AAEF,IAAA,MAAMC,GAAG,GAAG,MAAMlB,GAAG,CAACkB,GAAG,CAAC;AAAEC,MAAAA,QAAQ,EAAE,CAAA;AAAE,KAAC,CAAC,CAAA;IAC1C,MAAMC,MAAM,GAAG,EAACF,CAAAA,WAAAA,GAAAA,GAAG,CAACG,MAAM,MAAA,IAAA,IAAA,WAAA,KAAA,KAAA,CAAA,IAAV,WAAYC,CAAAA,IAAI,CAC7BC,GAAAA,SAAS,GACTL,GAAG,CAACG,MAAM,CAACC,IAAI,CAACE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAElC,OAAO;MACNJ,MAAM;MACNd,KAAK;AACLmB,MAAAA,UAAU,EAAEP,CAAAA,YAAAA,GAAAA,GAAG,CAACG,MAAM,iDAAV,YAAYK,CAAAA,IAAAA;KACxB,CAAA;GACD,CAAC,OAAOC,GAAG,EAAE;AACb,IAAA,OAAO,EAAE,CAAA;AACV,GAAA;AACD;;AC7CaC,MAAAA,sBAAsB,GAAIC,QAA8B,IAAK;AAAA,EAAA,IAAA,kBAAA,CAAA;EACzE,IAAIC,UAAU,GAAGD,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,kBAAAA,GAAAA,QAAQ,CAAEE,QAAQ,MAAlB,IAAA,IAAA,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,kBAAA,CAAoBC,MAAM,CAAA;AAE3C,EAAA,IAAIF,UAAU,EAAE;AACf,IAAA,MAAMG,KAAK,GAAGH,UAAU,CAACG,KAAK,CAAC,oCAAoC,CAAC,CAAA;IAEpE,IAAIA,KAAK,KAAK,IAAI,EAAE;MACnB,MAAMC,SAAS,GAAGC,QAAQ,CAACF,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACpC,MAAA,MAAMG,OAAO,GAAG,IAAIC,IAAI,EAAE,CAACC,WAAW,EAAE,CAAA;MAExC,IAAIJ,SAAS,KAAKE,OAAO,EAAE;AAC1BN,QAAAA,UAAU,GAAGA,UAAU,CAACS,OAAO,CAC9BN,KAAK,CAAC,CAAC,CAAC,EACP,CAAgBC,cAAAA,EAAAA,SAAU,CAAKE,GAAAA,EAAAA,OAAQ,EAAC,CACzC,CAAA;AACF,OAAC,MAAM;AACNN,QAAAA,UAAU,GAAGA,UAAU,CAACS,OAAO,CAC9BN,KAAK,CAAC,CAAC,CAAC,EACP,CAAgBC,cAAAA,EAAAA,SAAU,EAAC,CAC5B,CAAA;AACF,OAAA;AACD,KAAA;AACD,GAAA;AAEA,EAAA,OAAOJ,UAAU,CAAA;AAClB;;AC3BA;;AAMO,MAAMU,cAAc,CAAC;AAC3B;EACA,OAAcC,eAAe,GAC5B,wDAAwD,CAAA;EACzD,OAAcC,WAAW,GACxB,0DAA0D,CAAA;AAE3D,EAAA,OAAcC,eAAe,CAACC,KAAa,EAAEC,WAAoB,EAAE;IAClE,IAAID,KAAK,KAAKrB,SAAS,EAAE;AACxB,MAAA,MAAM,IAAIuB,KAAK,CAAE,CAAA,oCAAA,CAAqC,CAAC,CAAA;AACxD,KAAA;IAEA,MAAMb,KAAK,GAAGW,KAAK,CAACX,KAAK,CAACO,cAAc,CAACC,eAAe,CAAC,CAAA;IAEzD,IAAI,CAACR,KAAK,EAAE;AACX,MAAA,MAAM,IAAIa,KAAK,CAAE,CAA0CF,wCAAAA,EAAAA,KAAM,EAAC,CAAC,CAAA;AACpE,KAAA;AAEA,IAAA,OAAOJ,cAAc,CAACO,SAAS,CAACd,KAAK,EAAEY,WAAW,CAAC,CAAA;AACpD,GAAA;AAEA,EAAA,OAAcG,eAAe,CAACJ,KAAa,EAAEC,WAAoB,EAAE;IAClE,IAAID,KAAK,KAAKrB,SAAS,EAAE;AACxB,MAAA,MAAM,IAAIuB,KAAK,CAAE,CAAA,oCAAA,CAAqC,CAAC,CAAA;AACxD,KAAA;IAEA,MAAMb,KAAK,GAAGW,KAAK,CAACX,KAAK,CAACO,cAAc,CAACE,WAAW,CAAC,CAAA;IAErD,IAAI,CAACT,KAAK,EAAE;AACX,MAAA,MAAM,IAAIa,KAAK,CAAE,CAAsCF,oCAAAA,EAAAA,KAAM,EAAC,CAAC,CAAA;AAChE,KAAA;AAEA,IAAA,OAAOJ,cAAc,CAACO,SAAS,CAACd,KAAK,EAAEY,WAAW,CAAC,CAAA;AACpD,GAAA;EAEA,OAAcI,MAAM,CACnBC,CAAiB,EACjBC,CAAiB,EACjBC,eAAe,GAAG,KAAK,EACtB;IACD,IAAIF,CAAC,CAACG,KAAK,KAAKF,CAAC,CAACE,KAAK,IAAIH,CAAC,CAACI,KAAK,KAAKH,CAAC,CAACG,KAAK,IAAIJ,CAAC,CAACK,KAAK,KAAKJ,CAAC,CAACI,KAAK,EAAE;AACtE,MAAA,OAAO,KAAK,CAAA;AACb,KAAA;IAEA,IAAIH,eAAe,KAAK,KAAK,EAAE;AAC9B,MAAA,OAAO,IAAI,CAAA;AACZ,KAAA;AAEA,IAAA,IAAIF,CAAC,CAACM,UAAU,KAAKL,CAAC,CAACK,UAAU,EAAE;AAClC,MAAA,OAAO,IAAI,CAAA;AACZ,KAAA;IAEA,IAAIN,CAAC,CAACM,UAAU,KAAKjC,SAAS,IAAI4B,CAAC,CAACK,UAAU,KAAKjC,SAAS,EAAE;AAC7D,MAAA,OAAO,KAAK,CAAA;AACb,KAAA;IAEA,OACC2B,CAAC,CAACM,UAAU,CAACC,IAAI,KAAKN,CAAC,CAACK,UAAU,CAACC,IAAI,IACvCP,CAAC,CAACM,UAAU,CAACE,OAAO,KAAKP,CAAC,CAACK,UAAU,CAACE,OAAO,CAAA;AAE/C,GAAA;EAEA,OAAeX,SAAS,CACvB,GAECM,KAAK,GAELC,KAAK,GAAG,GAAG,GAEXC,KAAK,GAAG,GAAG,GAEXI,KAAK,GAELC,cAAc,EACdC,gBAAgB,CACE,EACnBhB,WAAoB,EACnB;IACD,IAAIW,UAAwC,GAAGjC,SAAS,CAAA;IACxD,IAAIuC,WAAW,GAAG,GAAG,CAAA;IAErB,IAAIF,cAAc,IAAIC,gBAAgB,EAAE;AACvCL,MAAAA,UAAU,GAAG;AACZC,QAAAA,IAAI,EAAEG,cAAc;QACpBF,OAAO,EAAEvB,QAAQ,CAAC0B,gBAAgB,CAAA;OAClC,CAAA;AACF,KAAA;AAEA,IAAA,IAAIF,KAAK,EAAE;AACVG,MAAAA,WAAW,GAAGC,MAAM,CAACJ,KAAK,CAAC,CAAA;KAC3B,MAAM,IAAId,WAAW,EAAE;AACvB,MAAA,MAAMmB,gBAAgB,GAAGnB,WAAW,CAACZ,KAAK,CAAC,UAAU,CAAC,CAAA;AAEtD,MAAA,IAAI+B,gBAAgB,EAAE;AACrBF,QAAAA,WAAW,GAAG3B,QAAQ,CAAC6B,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5C,OAAA;AACD,KAAA;IAEA,OAAO,IAAIxB,cAAc,CACxBL,QAAQ,CAACkB,KAAK,CAAC,EACflB,QAAQ,CAACmB,KAAK,CAAC,EACfnB,QAAQ,CAACoB,KAAK,CAAC,EACfC,UAAU,EACVM,WAAW,CACX,CAAA;AACF,GAAA;EAEA,OAAcG,IAAI,CACjBf,CAAiB,EACjBC,CAAiB,EACjBe,SAAkB,GAAG,IAAI,EACxB;AACD,IAAA,MAAMC,gBAAgB,GAAG,CAACjB,CAAS,EAAEC,CAAS,KAC7Ce,SAAS,GAAGhB,CAAC,GAAGC,CAAC,GAAGA,CAAC,GAAGD,CAAC,CAAA;AAE1B,IAAA,IAAIA,CAAC,CAACG,KAAK,KAAKF,CAAC,CAACE,KAAK,EAAE;MACxB,OAAOc,gBAAgB,CAACjB,CAAC,CAACG,KAAK,EAAEF,CAAC,CAACE,KAAK,CAAC,CAAA;AAC1C,KAAA;AAEA,IAAA,IAAIH,CAAC,CAACI,KAAK,KAAKH,CAAC,CAACG,KAAK,EAAE;MACxB,OAAOa,gBAAgB,CAACjB,CAAC,CAACI,KAAK,EAAEH,CAAC,CAACG,KAAK,CAAC,CAAA;AAC1C,KAAA;AAEA,IAAA,IAAIJ,CAAC,CAACK,KAAK,KAAKJ,CAAC,CAACI,KAAK,EAAE;MACxB,OAAOY,gBAAgB,CAACjB,CAAC,CAACK,KAAK,EAAEJ,CAAC,CAACI,KAAK,CAAC,CAAA;AAC1C,KAAA;IAEA,OAAOY,gBAAgB,CACtBjB,CAAC,CAACM,UAAU,GAAGN,CAAC,CAACM,UAAU,CAACE,OAAO,GAAG,CAAC,EACvCP,CAAC,CAACK,UAAU,GAAGL,CAAC,CAACK,UAAU,CAACE,OAAO,GAAG,CAAC,CACvC,CAAA;AACF,GAAA;EAEA,OAAeU,QAAQ,CAACV,OAAuB,EAAE;IAChD,OACC,CAAC,CAACA,OAAO,CAACL,KAAK,GAAG,IAAI,GAAGK,OAAO,CAACJ,KAAK,IAAI,IAAI,GAAGI,OAAO,CAACH,KAAK,IAC7D,IAAI,GACLG,OAAO,CAACI,WAAW,CAAA;AAErB,GAAA;EAEAO,WAAW,CACHhB,KAAa,EACbC,KAAa,EACbC,KAAa,EACbC,UAAyD,EACzDM,WAAmB,EACzB;IAAA,IALMT,CAAAA,KAAa,GAAbA,KAAa,CAAA;IAAA,IACbC,CAAAA,KAAa,GAAbA,KAAa,CAAA;IAAA,IACbC,CAAAA,KAAa,GAAbA,KAAa,CAAA;IAAA,IACbC,CAAAA,UAAyD,GAAzDA,UAAyD,CAAA;IAAA,IACzDM,CAAAA,WAAmB,GAAnBA,WAAmB,CAAA;AACxB,GAAA;AAEIQ,EAAAA,YAAY,GAAG;AACrB,IAAA,OAAO,IAAI,CAACd,UAAU,KAAKjC,SAAS,CAAA;AACrC,GAAA;AAEOgD,EAAAA,KAAK,GAAG;AACd,IAAA,OAAO,IAAI/B,cAAc,CACxB,IAAI,CAACa,KAAK,EACV,IAAI,CAACC,KAAK,EACV,IAAI,CAACC,KAAK,EACV,IAAI,CAACC,UAAU,GAAG;AAAE,MAAA,GAAG,IAAI,CAACA,UAAAA;AAAW,KAAC,GAAGjC,SAAS,EACpD,IAAI,CAACuC,WAAW,CAChB,CAAA;AACF,GAAA;AAEOU,EAAAA,cAAc,GAAG;IACvB,IAAI,CAAChB,UAAU,GAAGjC,SAAS,CAAA;IAC3B,IAAI,CAACgC,KAAK,GAAG,CAAC,CAAA;IACd,IAAI,CAACD,KAAK,GAAG,CAAC,CAAA;IACd,IAAI,CAACD,KAAK,EAAE,CAAA;AACb,GAAA;AAEOoB,EAAAA,cAAc,GAAG;IACvB,IAAI,CAACjB,UAAU,GAAGjC,SAAS,CAAA;IAC3B,IAAI,CAACgC,KAAK,GAAG,CAAC,CAAA;IACd,IAAI,CAACD,KAAK,EAAE,CAAA;AACb,GAAA;AAEOoB,EAAAA,cAAc,GAAG;IACvB,IAAI,CAAClB,UAAU,GAAGjC,SAAS,CAAA;IAC3B,IAAI,CAACgC,KAAK,EAAE,CAAA;AACb,GAAA;EAEOoB,gBAAgB,CAAClB,IAAY,EAAE;AACrC,IAAA,IAAI,CAAC,IAAI,CAACD,UAAU,EAAE;MACrB,IAAI,CAACM,WAAW,GAAG,CAAC,CAAA;AACrB,KAAC,MAAM;MACN,IAAI,CAACA,WAAW,EAAE,CAAA;AACnB,KAAA;IAEA,IAAI,IAAI,CAACN,UAAU,IAAIC,IAAI,KAAK,IAAI,CAACD,UAAU,CAACC,IAAI,EAAE;AACrD,MAAA,IAAI,CAACD,UAAU,CAACE,OAAO,EAAE,CAAA;AACzB,MAAA,OAAA;AACD,KAAA;IAEA,IAAI,CAACF,UAAU,GAAG;AACjBE,MAAAA,OAAO,EAAE,CAAC;AACVD,MAAAA,IAAAA;KACA,CAAA;AACF,GAAA;AAEOmB,EAAAA,aAAa,GAAG;IACtB,IAAI,CAACpB,UAAU,GAAGjC,SAAS,CAAA;IAC3B,IAAI,CAACuC,WAAW,GAAG,GAAG,CAAA;AACvB,GAAA;AAEOe,EAAAA,eAAe,CAAC;AACtBf,IAAAA,WAAAA;GACqC,GAAG,EAAE,EAAE;AAC5C,IAAA,IAAIJ,OAAO,GAAG,CAAC,IAAI,CAACL,KAAK,EAAE,IAAI,CAACC,KAAK,EAAE,IAAI,CAACC,KAAK,CAAC,CAACuB,IAAI,CAAC,GAAG,CAAC,CAAA;AAE5D,IAAA,IAAIhB,WAAW,EAAE;AAChBJ,MAAAA,OAAO,IAAI,GAAG,GAAG,IAAI,CAACI,WAAW,CAAA;AAClC,KAAA;IAEA,IAAI,IAAI,CAACN,UAAU,EAAE;AACpBE,MAAAA,OAAO,IAAK,CAAA,CAAA,EAAG,IAAI,CAACF,UAAU,CAACC,IAAK,CAAA,CAAA,EAAG,IAAI,CAACD,UAAU,CAACE,OAAQ,CAAC,CAAA,CAAA;AACjE,KAAA;AAEA,IAAA,OAAOA,OAAO,CAAA;AACf,GAAA;EAEOqB,mBAAmB,CAACC,WAAmB,EAAE;AAC/C,IAAA,MAAMC,IAAI,GAAG,CAAC,IAAI,CAAC5B,KAAK,EAAE,IAAI,CAACC,KAAK,EAAE,IAAI,CAACC,KAAK,CAAC,CAACuB,IAAI,CAAC,GAAG,CAAC,CAAA;AAC3D,IAAA,MAAMI,KAA0B,GAAG,CAACF,WAAW,EAAEC,IAAI,CAAC,CAAA;IAEtD,IAAI,IAAI,CAACzB,UAAU,EAAE;MACpB0B,KAAK,CAACC,IAAI,CAACC,cAAc,CAAC,IAAI,CAAC5B,UAAU,CAACC,IAAI,CAAC,CAAC,CAAA;MAChDyB,KAAK,CAACC,IAAI,CAAC,IAAI,CAAC3B,UAAU,CAACE,OAAO,CAAC,CAAA;AACpC,KAAA;IAEAwB,KAAK,CAACC,IAAI,CAAE,CAAGF,CAAAA,EAAAA,IAAK,IAAG,IAAI,CAACnB,WAAY,CAAA,CAAA,CAAE,CAAC,CAAA;AAE3C,IAAA,OAAOoB,KAAK,CAACJ,IAAI,CAAC,GAAG,CAAC,CAAA;AACvB,GAAA;;AAEA;AACD;AACA;AACA;AACA;AACA;EACQO,YAAY,CAAC3B,OAAuB,EAAE;AAC5C,IAAA,OAAOlB,cAAc,CAAC4B,QAAQ,CAAC,IAAI,CAAC,GAAG5B,cAAc,CAAC4B,QAAQ,CAACV,OAAO,CAAC,CAAA;AACxE,GAAA;;AAEA;AACD;AACA;AACA;AACA;AACA;EACQ4B,aAAa,CAAC5B,OAAuB,EAAE;AAC7C,IAAA,OAAOlB,cAAc,CAAC4B,QAAQ,CAAC,IAAI,CAAC,GAAG5B,cAAc,CAAC4B,QAAQ,CAACV,OAAO,CAAC,CAAA;AACxE,GAAA;AACD,CAAA;AAEA,MAAM0B,cAAc,GAAIxC,KAAa,IAAK;AACzC,EAAA,OAAOA,KAAK,CAAC2C,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,WAAW,EAAE,GAAG5C,KAAK,CAAC2C,KAAK,CAAC,CAAC,CAAC,CAAA;AACxD,CAAC;;ACrQYE,MAAAA,sBAAsB,GAAI7C,KAAa,IAAK;EACxD,IAAIA,KAAK,KAAKrB,SAAS,EAAE;AACxB,IAAA,MAAM,IAAIuB,KAAK,CAAE,CAAA,oCAAA,CAAqC,CAAC,CAAA;AACxD,GAAA;AAEA,EAAA,IAAIb,KAA8B,CAAA;AAElC,EAAA,IAAIoB,KAAc,CAAA;AAClB,EAAA,IAAIC,KAAc,CAAA;AAClB,EAAA,IAAIC,KAAc,CAAA;AAClB,EAAA,IAAII,KAAyB,CAAA;AAC7B,EAAA,IAAIC,cAAkC,CAAA;AACtC,EAAA,IAAIC,gBAAoC,CAAA;AAExC,EAAA;AACC;EACA,CAAC5B,KAAK,GAAGW,KAAK,CAACX,KAAK,CACnB,+CAA+C,CAC/C,MAAM,IAAI,EACV;AACD,IAAA,GAAGoB,KAAK,EAAEC,KAAK,EAAEC,KAAK,EAAEI,KAAK,EAAEC,cAAc,EAAEC,gBAAgB,CAAC,GAC/D5B,KAAK,CAAA;AACP,GAAC,MAAM,IACN,CAACA,KAAK,GAAGW,KAAK,CAACX,KAAK,CAAC,wCAAwC,CAAC,MAAM,IAAI,EACvE;IACD,GAAGoB,KAAK,EAAEC,KAAK,EAAEC,KAAK,GAAIK,cAAc,EAAEC,gBAAgB,CAAC,GAAG5B,KAAK,CAAA;AACpE,GAAA;EAEA,IAAIA,KAAK,KAAK,IAAI,EAAE;AACnB,IAAA,MAAM,IAAIa,KAAK,CAAE,CAAsCF,oCAAAA,EAAAA,KAAM,EAAC,CAAC,CAAA;AAChE,GAAA;EAEA,IAAIY,UAAwC,GAAGjC,SAAS,CAAA;EACxD,IAAIuC,WAAW,GAAG,GAAG,CAAA;EAErB,IAAIF,cAAc,IAAIC,gBAAgB,EAAE;AACvCL,IAAAA,UAAU,GAAG;AACZC,MAAAA,IAAI,EAAEG,cAAc;MACpBF,OAAO,EAAEvB,QAAQ,CAAC0B,gBAAgB,CAAA;KAClC,CAAA;AACF,GAAA;AAEA,EAAA,IAAIF,KAAK,EAAE;AACVG,IAAAA,WAAW,GAAGC,MAAM,CAACJ,KAAK,CAAC,CAAA;GAC3B,MAAM,IAAIf,KAAK,EAAE;AACjB,IAAA,MAAMoB,gBAAgB,GAAGpB,KAAK,CAACX,KAAK,CAAC,UAAU,CAAC,CAAA;AAEhD,IAAA,IAAI+B,gBAAgB,EAAE;AACrBF,MAAAA,WAAW,GAAG3B,QAAQ,CAAC6B,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5C,KAAA;AACD,GAAA;EAEA,OAAO,IAAIxB,cAAc,CACxBL,QAAQ,CAACkB,KAAK,CAAC,EACflB,QAAQ,CAACmB,KAAK,CAAC,EACfnB,QAAQ,CAACoB,KAAK,CAAC,EACfC,UAAU,EACVM,WAAW,CACX,CAAA;AACF,EAAC;;AAED;AACA;AACa4B,MAAAA,8BAA8B,GAC1ChC,OAAe,IACK;EACpB,MAAML,KAAK,GAAGsC,IAAI,CAACC,KAAK,CAAClC,OAAO,GAAG,UAAU,CAAC,CAAA;EAC9C,MAAMJ,KAAK,GAAGqC,IAAI,CAACC,KAAK,CAAElC,OAAO,GAAG,UAAU,GAAI,OAAO,CAAC,CAAA;EAC1D,MAAMH,KAAK,GAAGoC,IAAI,CAACC,KAAK,CAAElC,OAAO,GAAG,OAAO,GAAI,IAAI,CAAC,CAAA;AACpD,EAAA,MAAMI,WAAW,GAAGJ,OAAO,GAAG,IAAI,CAAA;AAElC,EAAA,OAAO,IAAIlB,cAAc,CAACa,KAAK,EAAEC,KAAK,EAAEC,KAAK,EAAEhC,SAAS,EAAEuC,WAAW,CAAC,CAAA;AACvE;;ACtEO,MAAM+B,kBAAkB,GAAIC,QAAgB,IAClDC,EAAE,CAACC,YAAY,CAACF,QAAQ,EAAE;AAAEG,EAAAA,QAAQ,EAAE,MAAA;AAAO,CAAC,CAAC,CAAA;AAEzC,MAAMC,6BAA6B,GACzCJ,QAAgB,IACQ;EACxB,IAAI;IACH,OAAOD,kBAAkB,CAACC,QAAQ,CAAC,CAAA;GACnC,CAAC,OAAOnE,GAAG,EAAE;AACb,IAAA,IAAI,CAACwE,aAAa,CAACxE,GAAG,CAAC,EAAE;AACxB,MAAA,MAAMA,GAAG,CAAA;AACV,KAAA;AACA,IAAA,OAAOJ,SAAS,CAAA;AACjB,GAAA;AACD,CAAC;;ACVD;AACA,MAAM6E,QAAQ,GACb,0GAA0G,CAAA;AAC3G,MAAMC,WAAW,GAAG,IAAIhE,IAAI,CAACA,IAAI,CAACiE,GAAG,EAAE,CAAC,CAAChE,WAAW,EAAE,CAAA;AAEzCiE,MAAAA,qBAAqB,GAAIC,QAAyB,IAAK;EACnE,MAAMV,QAAQ,GAAG3F,IAAI,CAAC2E,IAAI,CAAC0B,QAAQ,CAACC,UAAU,EAAE,YAAY,CAAC,CAAA;EAE7D,MAAMC,kBAAkB,GAAIC,WAA+B,KAAM;AAChEjD,IAAAA,OAAO,EAAEnC,SAAS;AAClBqF,IAAAA,KAAK,EAAE,CAACC,IAAY,EAAEC,UAA0B,KAAK;MACpD,MAAMC,cAAc,GAAGhB,EAAE,CAACiB,WAAW,CAACR,QAAQ,CAACC,UAAU,CAAC,CAAA;AAC1D,MAAA,MAAMQ,OAAO,GAAGF,cAAc,CAACG,MAAM,CAAEzG,IAAI,IAC1CA,IAAI,CAACG,QAAQ,CAAC,KAAK,CAAC,CACpB,CAAA;AAED,MAAA,IAAIqG,OAAO,CAACE,MAAM,GAAG,CAAC,EAAE;AACvB,QAAA,OAAOC,uBAAuB,CAAC,CAACf,WAAW,CAAC,EAAE,EAAE,CAAC,CAChDQ,IAAI,EACJC,UAAU,CACV,CAAA;AACF,OAAA;KACA;AACDO,IAAAA,KAAK,EAAE,MAAM;MACZ,IAAIV,WAAW,KAAKpF,SAAS,EAAE;AAC9BwE,QAAAA,EAAE,CAACuB,aAAa,CAACxB,QAAQ,EAAEa,WAAW,EAAE;AAAEV,UAAAA,QAAQ,EAAE,MAAA;AAAO,SAAC,CAAC,CAAA;AAC9D,OAAC,MAAM;QACN,IAAI;AACHF,UAAAA,EAAE,CAACwB,MAAM,CAACzB,QAAQ,CAAC,CAAA;SACnB,CAAC,OAAOnE,GAAG,EAAE;AACb,UAAA,IAAI,CAACwE,aAAa,CAACxE,GAAG,CAAC,EAAE;AACxB,YAAA,MAAMA,GAAG,CAAA;AACV,WAAA;AACD,SAAA;AACD,OAAA;AACD,KAAA;AACD,GAAC,CAAC,CAAA;AAIF,EAAA,MAAMyF,uBAAuB,GAC5B,CACCI,SAAyB,GAAG,CAACnB,WAAW,CAAC,EACzCoB,cAAsB,GAAG,EAAE,KAE5B,CAACZ,IAAY,EAAEC,UAA0B,KAAK;AAC7C,IAAA,MAAMY,eAAe,GAAGZ,UAAU,CAAC/B,mBAAmB,CAAC8B,IAAI,CAAC,CAAA;AAC5D,IAAA,MAAMc,aAAa,GAAGC,gBAAgB,CAACJ,SAAS,CAAC,CAAA;IAEjD,MAAMK,MAAM,GAAI,CAAeH,aAAAA,EAAAA,eAAgB,mBAAkBC,aAAc,CAAA,EAAEF,cAAe,CAAI,GAAA,CAAA,CAAA;AAEpG1B,IAAAA,EAAE,CAACuB,aAAa,CAACxB,QAAQ,EAAE+B,MAAM,EAAE;AAAE5B,MAAAA,QAAQ,EAAE,OAAA;AAAQ,KAAC,CAAC,CAAA;GACzD,CAAA;AAEF,EAAA,IAAI6B,cAAc,GAAG5B,6BAA6B,CAACJ,QAAQ,CAAC,CAAA;EAE5D,IAAIgC,cAAc,KAAKvG,SAAS,EAAE;IACjC,OAAOmF,kBAAkB,CAACoB,cAAc,CAAC,CAAA;AAC1C,GAAA;EAEA,MAAMnB,WAAW,GAAGmB,cAAc,CAACvF,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAErD,EAAA,MAAMN,KAAK,GAAG0E,WAAW,CAAC1E,KAAK,CAACmE,QAAQ,CAAC,CAAA;EAEzC,IAAI,CAACnE,KAAK,EAAE;IACX,OAAOyE,kBAAkB,CAACC,WAAW,CAAC,CAAA;AACvC,GAAA;EAEA,MAAM,CAACoB,KAAK,EAAEC,YAAY,EAAER,SAAS,EAAEC,cAAc,CAAC,GAAGxF,KAKxD,CAAA;AAED,EAAA,MAAMgG,cAAc,GAAGT,SAAS,CAACvF,KAAK,CAAC,sBAAsB,CAAC,CAAA;AAE9D,EAAA,IAAIiG,KAAwB,CAAA;EAE5B,IAAID,cAAc,KAAK,IAAI,EAAE;IAC5BC,KAAK,GAAG,CAAC7B,WAAW,CAAC,CAAA;AACtB,GAAC,MAAM;IACN6B,KAAK,GAAG,CAACnE,MAAM,CAACkE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE5B,WAAW,CAAC,CAAA;AACjD,GAAA;EAEA,OAAO;AACNO,IAAAA,KAAK,EAAEQ,uBAAuB,CAACc,KAAK,EAAET,cAAc,CAAC;AACrDJ,IAAAA,KAAK,EAAE,MAAM;AACZtB,MAAAA,EAAE,CAACuB,aAAa,CAACxB,QAAQ,EAAEa,WAAW,EAAE;AAAEV,QAAAA,QAAQ,EAAE,MAAA;AAAO,OAAC,CAAC,CAAA;AAC9D,KAAA;GACA,CAAA;AACF,EAAC;AAED,MAAM2B,gBAAgB,GAAIM,KAAwB,IAAK;AACtD,EAAA,IAAIA,KAAK,CAAC,CAAC,CAAC,KAAK3G,SAAS,IAAI2G,KAAK,CAAC,CAAC,CAAC,KAAKA,KAAK,CAAC,CAAC,CAAC,EAAE;AACpD,IAAA,OAAOA,KAAK,CAAC,CAAC,CAAC,CAACC,QAAQ,EAAE,CAAA;AAC3B,GAAA;EAEA,OAAQ,CAAA,EAAED,KAAK,CAAC,CAAC,CAAE,MAAKA,KAAK,CAAC,CAAC,CAAE,CAAC,CAAA,CAAA;AACnC,CAAC;;;;"}
1
+ {"version":3,"file":"versionFile.mjs","sources":["../src/lib/git.ts","../src/lib/banner.ts","../src/lib/packageVersion.ts","../src/lib/parseVersion.ts","../src/lib/fs.ts","../src/lib/versionFile.ts"],"sourcesContent":["import simpleGit from \"simple-git\";\nimport * as path from \"path\";\n\nimport { WorkspaceLocation } from \"./workspace\";\nimport { PackageLocation } from \"./package\";\n\nexport const getVersionInformationFromGit = async (\n\tworkspaceLocation: WorkspaceLocation,\n\tpackageLocation: PackageLocation,\n) => {\n\ttry {\n\t\tconst git = simpleGit({\n\t\t\tbaseDir: workspaceLocation.path,\n\t\t});\n\n\t\t// check wether the files for a folder are changed\n\t\t// if so, mark as dirty\n\t\tconst diff = await git.diffSummary();\n\n\t\tconst dirty = diff.files.some((file) => {\n\t\t\tif (\n\t\t\t\tfile.file.toLowerCase().includes(\"releases\") ||\n\t\t\t\tfile.file.toLowerCase().endsWith(\"version.ts\") ||\n\t\t\t\tfile.file.toLowerCase().endsWith(\"package.json\")\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst fullPath = path.resolve(workspaceLocation.path, file.file);\n\t\t\tconst relativePath = path.relative(packageLocation.path, fullPath);\n\n\t\t\treturn !relativePath.startsWith(\"..\");\n\t\t});\n\n\t\tconst log = await git.log({ maxCount: 1 });\n\t\tconst commit = !log.latest?.hash\n\t\t\t? undefined\n\t\t\t: log.latest.hash.substring(0, 7);\n\n\t\treturn {\n\t\t\tcommit,\n\t\t\tdirty,\n\t\t\tcommitDate: log.latest?.date,\n\t\t};\n\t} catch (err) {\n\t\treturn {};\n\t}\n};\n","import { WorkspacePackageJSON } from \"./workspace\";\n\nexport const getWorkspaceBannerText = (manifest: WorkspacePackageJSON) => {\n\tlet bannerText = manifest?.packager?.banner;\n\n\tif (bannerText) {\n\t\tconst match = bannerText.match(/Copyright \\(C\\) (\\d+)( ?- ?(\\d+))?/);\n\n\t\tif (match !== null) {\n\t\t\tconst startYear = parseInt(match[1]);\n\t\t\tconst endYear = new Date().getFullYear();\n\n\t\t\tif (startYear !== endYear) {\n\t\t\t\tbannerText = bannerText.replace(\n\t\t\t\t\tmatch[0],\n\t\t\t\t\t`Copyright (C) ${startYear} - ${endYear}`,\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tbannerText = bannerText.replace(\n\t\t\t\t\tmatch[0],\n\t\t\t\t\t`Copyright (C) ${startYear}`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn bannerText;\n};\n","// Stolen from ig.tools.core\n\nexport interface PackageVersionToVersionStringParams {\n\tbuildNumber?: boolean;\n}\n\nexport class PackageVersion {\n\t// https://regex101.com/r/90PEY9/1\n\tpublic static fullTextMatcher =\n\t\t/(\\d+)(\\.(\\d+)(\\.(\\d+)(\\.(\\d+))?(-([^\\.]+)\\.(\\d+))?)?)?/;\n\tpublic static lineMatcher =\n\t\t/^(\\d+)(\\.(\\d+)(\\.(\\d+)(\\.(\\d+))?(-([^\\.]+)\\.(\\d+))?)?)?$/;\n\n\tpublic static extractFromText(input: string, description?: string) {\n\t\tif (input === undefined) {\n\t\t\tthrow new Error(`Can not parse version from undefined`);\n\t\t}\n\n\t\tconst match = input.match(PackageVersion.fullTextMatcher);\n\n\t\tif (!match) {\n\t\t\tthrow new Error(`Could not extract a version from input: ${input}`);\n\t\t}\n\n\t\treturn PackageVersion.fromMatch(match, description);\n\t}\n\n\tpublic static extractFromLine(input: string, description?: string) {\n\t\tif (input === undefined) {\n\t\t\tthrow new Error(`Can not parse version from undefined`);\n\t\t}\n\n\t\tconst match = input.match(PackageVersion.lineMatcher);\n\n\t\tif (!match) {\n\t\t\tthrow new Error(`Could not parse version from input: ${input}`);\n\t\t}\n\n\t\treturn PackageVersion.fromMatch(match, description);\n\t}\n\n\tpublic static equals(\n\t\ta: PackageVersion,\n\t\tb: PackageVersion,\n\t\tcheckPrerelease = false,\n\t) {\n\t\tif (a.major !== b.major || a.minor !== b.minor || a.patch !== b.patch) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (checkPrerelease === false) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (a.preRelease === b.preRelease) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (a.preRelease === undefined || b.preRelease === undefined) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn (\n\t\t\ta.preRelease.type === b.preRelease.type &&\n\t\t\ta.preRelease.version === b.preRelease.version\n\t\t);\n\t}\n\n\tprivate static fromMatch(\n\t\t[\n\t\t\t,\n\t\t\tmajor,\n\t\t\t,\n\t\t\tminor = \"0\",\n\t\t\t,\n\t\t\tpatch = \"0\",\n\t\t\t,\n\t\t\tbuild,\n\t\t\t,\n\t\t\tpreReleaseType,\n\t\t\tpreReleaseNumber,\n\t\t]: RegExpMatchArray,\n\t\tdescription?: string,\n\t) {\n\t\tlet preRelease: PackageVersion[\"preRelease\"] = undefined;\n\t\tlet buildNumber = 100;\n\n\t\tif (preReleaseType && preReleaseNumber) {\n\t\t\tpreRelease = {\n\t\t\t\ttype: preReleaseType,\n\t\t\t\tversion: parseInt(preReleaseNumber),\n\t\t\t};\n\t\t}\n\n\t\tif (build) {\n\t\t\tbuildNumber = Number(build);\n\t\t} else if (description) {\n\t\t\tconst descriptionMatch = description.match(/(\\d+)\\)$/);\n\n\t\t\tif (descriptionMatch) {\n\t\t\t\tbuildNumber = parseInt(descriptionMatch[1]);\n\t\t\t}\n\t\t}\n\n\t\treturn new PackageVersion(\n\t\t\tparseInt(major),\n\t\t\tparseInt(minor),\n\t\t\tparseInt(patch),\n\t\t\tpreRelease,\n\t\t\tbuildNumber,\n\t\t);\n\t}\n\n\tpublic static sort(\n\t\ta: PackageVersion,\n\t\tb: PackageVersion,\n\t\tascending: boolean = true,\n\t) {\n\t\tconst createSortResult = (a: number, b: number) =>\n\t\t\tascending ? a - b : b - a;\n\n\t\tif (a.major !== b.major) {\n\t\t\treturn createSortResult(a.major, b.major);\n\t\t}\n\n\t\tif (a.minor !== b.minor) {\n\t\t\treturn createSortResult(a.minor, b.minor);\n\t\t}\n\n\t\tif (a.patch !== b.patch) {\n\t\t\treturn createSortResult(a.patch, b.patch);\n\t\t}\n\n\t\treturn createSortResult(\n\t\t\ta.preRelease ? a.preRelease.version : 0,\n\t\t\tb.preRelease ? b.preRelease.version : 0,\n\t\t);\n\t}\n\n\tprivate static toNumber(version: PackageVersion) {\n\t\treturn (\n\t\t\t((version.major * 1000 + version.minor) * 1000 + version.patch) *\n\t\t\t\t1000 +\n\t\t\tversion.buildNumber\n\t\t);\n\t}\n\n\tconstructor(\n\t\tpublic major: number,\n\t\tpublic minor: number,\n\t\tpublic patch: number,\n\t\tpublic preRelease: { type: string; version: number } | undefined,\n\t\tpublic buildNumber: number,\n\t) {}\n\n\tpublic isPreRelease() {\n\t\treturn this.preRelease !== undefined;\n\t}\n\n\tpublic clone() {\n\t\treturn new PackageVersion(\n\t\t\tthis.major,\n\t\t\tthis.minor,\n\t\t\tthis.patch,\n\t\t\tthis.preRelease ? { ...this.preRelease } : undefined,\n\t\t\tthis.buildNumber,\n\t\t);\n\t}\n\n\tpublic incrementMajor() {\n\t\tthis.preRelease = undefined;\n\t\tthis.patch = 0;\n\t\tthis.minor = 0;\n\t\tthis.major++;\n\t}\n\n\tpublic incrementMinor() {\n\t\tthis.preRelease = undefined;\n\t\tthis.patch = 0;\n\t\tthis.minor++;\n\t}\n\n\tpublic incrementPatch() {\n\t\tthis.preRelease = undefined;\n\t\tthis.patch++;\n\t}\n\n\tpublic createPreRelease(type: string) {\n\t\tif (!this.preRelease) {\n\t\t\tthis.buildNumber = 1;\n\t\t} else {\n\t\t\tthis.buildNumber++;\n\t\t}\n\n\t\tif (this.preRelease && type === this.preRelease.type) {\n\t\t\tthis.preRelease.version++;\n\t\t\treturn;\n\t\t}\n\n\t\tthis.preRelease = {\n\t\t\tversion: 0,\n\t\t\ttype,\n\t\t};\n\t}\n\n\tpublic createRelease() {\n\t\tthis.preRelease = undefined;\n\t\tthis.buildNumber = 100;\n\t}\n\n\tpublic toVersionString({\n\t\tbuildNumber,\n\t}: PackageVersionToVersionStringParams = {}) {\n\t\tlet version = [this.major, this.minor, this.patch].join(\".\");\n\n\t\tif (buildNumber) {\n\t\t\tversion += \".\" + this.buildNumber;\n\t\t}\n\n\t\tif (this.preRelease) {\n\t\t\tversion += `-${this.preRelease.type}.${this.preRelease.version}`;\n\t\t}\n\n\t\treturn version;\n\t}\n\n\tpublic toDescriptionString(packageName: string) {\n\t\tconst base = [this.major, this.minor, this.patch].join(\".\");\n\t\tconst parts: (number | string)[] = [packageName, base];\n\n\t\tif (this.preRelease) {\n\t\t\tparts.push(upperCaseFirst(this.preRelease.type));\n\t\t\tparts.push(this.preRelease.version);\n\t\t}\n\n\t\tparts.push(`(${base}.${this.buildNumber})`);\n\n\t\treturn parts.join(\" \");\n\t}\n\n\t/**\n\t * Determines wether the version is lesser than the input version\n\t *\n\t * @param {PackageVersion} version\n\t * @returns\n\t */\n\tpublic isLesserThan(version: PackageVersion) {\n\t\treturn PackageVersion.toNumber(this) < PackageVersion.toNumber(version);\n\t}\n\n\t/**\n\t * Determines wether the version is greater than the input version\n\t *\n\t * @param {PackageVersion} version\n\t * @returns\n\t */\n\tpublic isGreaterThan(version: PackageVersion) {\n\t\treturn PackageVersion.toNumber(this) > PackageVersion.toNumber(version);\n\t}\n}\n\nconst upperCaseFirst = (input: string) => {\n\treturn input.slice(0, 1).toUpperCase() + input.slice(1);\n};\n","import { PackageVersion } from \"./packageVersion\";\n\nexport const parseVersionFromString = (input: string) => {\n\tif (input === undefined) {\n\t\tthrow new Error(`Can not parse version from undefined`);\n\t}\n\n\tlet match: RegExpMatchArray | null;\n\n\tlet major!: string;\n\tlet minor!: string;\n\tlet patch!: string;\n\tlet build: string | undefined;\n\tlet preReleaseType: string | undefined;\n\tlet preReleaseNumber: string | undefined;\n\n\tif (\n\t\t// first try to find a full match with build number\n\t\t(match = input.match(\n\t\t\t/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)(-([^\\.]+)\\.(\\d+))?/,\n\t\t)) !== null\n\t) {\n\t\t[, major, minor, patch, build, preReleaseType, preReleaseNumber] =\n\t\t\tmatch;\n\t} else if (\n\t\t(match = input.match(/(\\d+)\\.(\\d+)\\.(\\d+)(-([^\\.]+)\\.(\\d+))?/)) !== null\n\t) {\n\t\t[, major, minor, patch, , preReleaseType, preReleaseNumber] = match;\n\t}\n\n\tif (match === null) {\n\t\tthrow new Error(`Could not parse version from input: ${input}`);\n\t}\n\n\tlet preRelease: PackageVersion[\"preRelease\"] = undefined;\n\tlet buildNumber = 100;\n\n\tif (preReleaseType && preReleaseNumber) {\n\t\tpreRelease = {\n\t\t\ttype: preReleaseType,\n\t\t\tversion: parseInt(preReleaseNumber),\n\t\t};\n\t}\n\n\tif (build) {\n\t\tbuildNumber = Number(build);\n\t} else if (input) {\n\t\tconst descriptionMatch = input.match(/(\\d+)\\)$/);\n\n\t\tif (descriptionMatch) {\n\t\t\tbuildNumber = parseInt(descriptionMatch[1]);\n\t\t}\n\t}\n\n\treturn new PackageVersion(\n\t\tparseInt(major),\n\t\tparseInt(minor),\n\t\tparseInt(patch),\n\t\tpreRelease,\n\t\tbuildNumber,\n\t);\n};\n\n// 1000001001 -> 1.0.1.1\n// 1002017001 -> 1.2.17.1\nexport const parseVersionFromNumericVersion = (\n\tversion: number,\n): PackageVersion => {\n\tconst major = Math.floor(version / 1000000000);\n\tconst minor = Math.floor((version % 1000000000) / 1000000);\n\tconst patch = Math.floor((version % 1000000) / 1000);\n\tconst buildNumber = version % 1000;\n\n\treturn new PackageVersion(major, minor, patch, undefined, buildNumber);\n};\n","import * as fs from \"fs\";\n\nimport { isErrorENOENT } from \"./error\";\n\nexport const readStringFromFile = (filePath: string): string =>\n\tfs.readFileSync(filePath, { encoding: \"utf8\" });\n\nexport const readStringFromFileOrUndefined = (\n\tfilePath: string,\n): string | undefined => {\n\ttry {\n\t\treturn readStringFromFile(filePath);\n\t} catch (err) {\n\t\tif (!isErrorENOENT(err)) {\n\t\t\tthrow err;\n\t\t}\n\t\treturn undefined;\n\t}\n};\n","import * as fs from \"fs\";\nimport * as path from \"path\";\n\nimport { isErrorENOENT } from \"./error\";\nimport { readStringFromFileOrUndefined } from \"./fs\";\nimport { PackageLocation } from \"./package\";\nimport { PackageVersion } from \"./packageVersion\";\n\n// https://regex101.com/r/LtGAu5/1\nconst logRegex =\n\t/console\\.log\\(\\s*\"([\\w\\s\\.\\(\\)]+)\\ *Copyright[\\w\\s\\(\\)\\.]+(\\d{4}|\\d{4} - \\d{4})([\\w\\s\\(\\)\\.]+)?\",?\\s*\\)/i;\nconst currentYear = new Date(Date.now()).getFullYear();\n\nexport const getVersionFileHandler = (location: PackageLocation) => {\n\tconst filePath = path.join(location.scriptsDir, \"Version.ts\");\n\n\tconst invalidVersionFile = (versionFile: string | undefined) => ({\n\t\tversion: undefined,\n\t\twrite: (name: string, newVersion: PackageVersion) => {\n\t\t\tconst scriptsContent = fs.readdirSync(location.scriptsDir);\n\t\t\tconst tsFiles = scriptsContent.filter((file) =>\n\t\t\t\tfile.endsWith(\".ts\"),\n\t\t\t);\n\n\t\t\tif (tsFiles.length > 0) {\n\t\t\t\treturn createVersionFileWriter([currentYear], \"\")(\n\t\t\t\t\tname,\n\t\t\t\t\tnewVersion,\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\treset: () => {\n\t\t\tif (versionFile !== undefined) {\n\t\t\t\tfs.writeFileSync(filePath, versionFile, { encoding: \"utf8\" });\n\t\t\t} else {\n\t\t\t\ttry {\n\t\t\t\t\tfs.rmSync(filePath);\n\t\t\t\t} catch (err) {\n\t\t\t\t\tif (!isErrorENOENT(err)) {\n\t\t\t\t\t\tthrow err;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t});\n\n\ttype CopyrightRange = [number, number?];\n\n\tconst createVersionFileWriter =\n\t\t(\n\t\t\tcopyright: CopyrightRange = [currentYear],\n\t\t\tcopyrightStuff: string = \"\",\n\t\t) =>\n\t\t(name: string, newVersion: PackageVersion) => {\n\t\t\tconst descriptionText = newVersion.toDescriptionString(name);\n\t\t\tconst copyrightText = createYearString(copyright);\n\n\t\t\tconst result = `console.log(\"${descriptionText}. Copyright (C) ${copyrightText}${copyrightStuff}\");`;\n\n\t\t\tfs.writeFileSync(filePath, result, { encoding: \"utf-8\" });\n\t\t};\n\n\tlet rawVersionFile = readStringFromFileOrUndefined(filePath);\n\n\tif (rawVersionFile === undefined) {\n\t\treturn invalidVersionFile(rawVersionFile);\n\t}\n\n\tconst versionFile = rawVersionFile.replace(/\\n/g, \"\");\n\n\tconst match = versionFile.match(logRegex);\n\n\tif (!match) {\n\t\treturn invalidVersionFile(versionFile);\n\t}\n\n\tconst [_full, _description, copyright, copyrightStuff] = match as [\n\t\tstring,\n\t\tstring,\n\t\tstring,\n\t\tstring?,\n\t];\n\n\tconst copyrightYears = copyright.match(/^(\\d+)( ?- ?(\\d+))?$/);\n\n\tlet years: [number, number?];\n\n\tif (copyrightYears === null) {\n\t\tyears = [currentYear];\n\t} else {\n\t\tyears = [Number(copyrightYears[1]), currentYear];\n\t}\n\n\treturn {\n\t\twrite: createVersionFileWriter(years, copyrightStuff),\n\t\treset: () => {\n\t\t\tfs.writeFileSync(filePath, versionFile, { encoding: \"utf8\" });\n\t\t},\n\t};\n};\n\nconst createYearString = (years: [number, number?]) => {\n\tif (years[1] === undefined || years[0] === years[1]) {\n\t\treturn years[0].toString();\n\t}\n\n\treturn `${years[0]} - ${years[1]}`;\n};\n"],"names":["getVersionInformationFromGit","workspaceLocation","packageLocation","git","simpleGit","baseDir","path","diff","diffSummary","dirty","files","some","file","toLowerCase","includes","endsWith","fullPath","resolve","relativePath","relative","startsWith","log","maxCount","commit","latest","hash","undefined","substring","commitDate","date","err","getWorkspaceBannerText","manifest","bannerText","packager","banner","match","startYear","parseInt","endYear","Date","getFullYear","replace","PackageVersion","fullTextMatcher","lineMatcher","extractFromText","input","description","Error","fromMatch","extractFromLine","equals","a","b","checkPrerelease","major","minor","patch","preRelease","type","version","build","preReleaseType","preReleaseNumber","buildNumber","Number","descriptionMatch","sort","ascending","createSortResult","toNumber","constructor","isPreRelease","clone","incrementMajor","incrementMinor","incrementPatch","createPreRelease","createRelease","toVersionString","join","toDescriptionString","packageName","base","parts","push","upperCaseFirst","isLesserThan","isGreaterThan","slice","toUpperCase","parseVersionFromString","parseVersionFromNumericVersion","Math","floor","readStringFromFile","filePath","fs","readFileSync","encoding","readStringFromFileOrUndefined","isErrorENOENT","logRegex","currentYear","now","getVersionFileHandler","location","scriptsDir","invalidVersionFile","versionFile","write","name","newVersion","scriptsContent","readdirSync","tsFiles","filter","length","createVersionFileWriter","reset","writeFileSync","rmSync","copyright","copyrightStuff","descriptionText","copyrightText","createYearString","result","rawVersionFile","_full","_description","copyrightYears","years","toString"],"mappings":"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"}
package/locales/de.json CHANGED
@@ -1,18 +1,18 @@
1
- {
2
- "options.banner": "Text, der als Kommentar über dem kompilierten Code eingefügt wird",
3
- "options.outDir": "Ziel-Verzeichnis für den kompilierten Code",
4
- "options.minimize": "Minifiziere den kompilierten Code mit Terser",
5
- "options.cwd": "Ausführungs-Verzeichnis",
6
- "options.clean": "Ziel-Ordner vor dem Kompilieren leeren",
7
- "messages.skipEmpty": "Es wurden keine Ordner beim Ausführen des Programms angegeben. Kompilation wird übersprungen",
8
- "messages.building": "Kompiliere",
9
- "messages.built": "Kompilation fertiggestellt",
10
- "messages.invalidPackageFolder": "Konnte keine _Package.json Datei in \"%s\" finden",
11
- "messages.movingReleaseZip": "Release-Zip wird in den Release-Ordner bewegt",
12
- "messages.error": "Ausführung wurde wegen folgendem Fehler gestoppt: %s",
13
- "release.newVersionQuestion": "Bitte gib die neue Versions-Nummer für %s an (Aktuell: %s)",
14
- "release.publishConfirmQuestion": "Möchtest du %s mit der Version %s veröffentlichen?",
15
- "release.domainQuestion": "Welche Domain soll verwendet werden?",
16
- "release.subdomainQuestion": "Welche Sub-Domain soll verwendet werden?",
17
- "release.noVersion": "Keine"
18
- }
1
+ {
2
+ "options.banner": "Text, der als Kommentar über dem kompilierten Code eingefügt wird",
3
+ "options.outDir": "Ziel-Verzeichnis für den kompilierten Code",
4
+ "options.minimize": "Minifiziere den kompilierten Code mit Terser",
5
+ "options.cwd": "Ausführungs-Verzeichnis",
6
+ "options.clean": "Ziel-Ordner vor dem Kompilieren leeren",
7
+ "messages.skipEmpty": "Es wurden keine Ordner beim Ausführen des Programms angegeben. Kompilation wird übersprungen",
8
+ "messages.building": "Kompiliere",
9
+ "messages.built": "Kompilation fertiggestellt",
10
+ "messages.invalidPackageFolder": "Konnte keine _Package.json Datei in \"%s\" finden",
11
+ "messages.movingReleaseZip": "Release-Zip wird in den Release-Ordner bewegt",
12
+ "messages.error": "Ausführung wurde wegen folgendem Fehler gestoppt: %s",
13
+ "release.newVersionQuestion": "Bitte gib die neue Versions-Nummer für %s an (Aktuell: %s)",
14
+ "release.publishConfirmQuestion": "Möchtest du %s mit der Version %s veröffentlichen?",
15
+ "release.domainQuestion": "Welche Domain soll verwendet werden?",
16
+ "release.subdomainQuestion": "Welche Sub-Domain soll verwendet werden?",
17
+ "release.noVersion": "Keine"
18
+ }