@intelligentgraphics/ig.gfx.packager 3.1.0-alpha.6 → 3.1.0-alpha.7

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.
Files changed (30) hide show
  1. package/build/bin.mjs +1 -2
  2. package/build/bin.mjs.map +1 -1
  3. package/build/{cli-CRt1pnL8.mjs → cli-IlMWNOvf.mjs} +8 -13
  4. package/build/cli-IlMWNOvf.mjs.map +1 -0
  5. package/build/{dependencies-DzwnAMHr.mjs → dependencies-CPZzEh3z.mjs} +2 -2
  6. package/build/{dependencies-DzwnAMHr.mjs.map → dependencies-CPZzEh3z.mjs.map} +1 -1
  7. package/build/{generateIndex-1_US73VT.mjs → generateIndex-Cf7p2QcW.mjs} +4 -4
  8. package/build/{generateIndex-1_US73VT.mjs.map → generateIndex-Cf7p2QcW.mjs.map} +1 -1
  9. package/build/{generateParameterType-DSWCBqzV.mjs → generateParameterType-Cdp9a31q.mjs} +3 -3
  10. package/build/{generateParameterType-DSWCBqzV.mjs.map → generateParameterType-Cdp9a31q.mjs.map} +1 -1
  11. package/build/{index-BIqEoSQH.mjs → index-Dcu2jMcl.mjs} +7 -7
  12. package/build/{index-BIqEoSQH.mjs.map → index-Dcu2jMcl.mjs.map} +1 -1
  13. package/build/{index-Sj6AX2Pu.mjs → index-w4ax9Zlz.mjs} +44 -16
  14. package/build/index-w4ax9Zlz.mjs.map +1 -0
  15. package/build/{postinstall-DLxLg3tD.mjs → postinstall-Cb7g6gsR.mjs} +4 -4
  16. package/build/{postinstall-DLxLg3tD.mjs.map → postinstall-Cb7g6gsR.mjs.map} +1 -1
  17. package/build/{publishNpm-ByIPsGI3.mjs → publishNpm-29blnfYN.mjs} +6 -6
  18. package/build/{publishNpm-ByIPsGI3.mjs.map → publishNpm-29blnfYN.mjs.map} +1 -1
  19. package/build/{rollup-Dspsy6kv.mjs → rollup-DoDZFLyJ.mjs} +17 -119
  20. package/build/rollup-DoDZFLyJ.mjs.map +1 -0
  21. package/build/{scripts-BmQnbRem.mjs → scripts-B3noxiX3.mjs} +2 -2
  22. package/build/{scripts-BmQnbRem.mjs.map → scripts-B3noxiX3.mjs.map} +1 -1
  23. package/build/{versionFile-CK9FMt3L.mjs → versionFile-_S1eIMrS.mjs} +4 -4
  24. package/build/{versionFile-CK9FMt3L.mjs.map → versionFile-_S1eIMrS.mjs.map} +1 -1
  25. package/lib/lib.mjs +41 -14
  26. package/package.json +4 -5
  27. package/readme.md +6 -0
  28. package/build/cli-CRt1pnL8.mjs.map +0 -1
  29. package/build/index-Sj6AX2Pu.mjs.map +0 -1
  30. package/build/rollup-Dspsy6kv.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index-BIqEoSQH.mjs","sources":["../src/commands/publish/zip.ts","../src/lib/assetServiceSessionManager.ts","../src/lib/dependencySync.ts","../src/commands/publish/index.ts"],"sourcesContent":["import JSZip from \"jszip\";\nimport * as path from \"path\";\nimport * as fs from \"fs\";\n\nimport { isErrorENOENT } from \"../../lib/error\";\nimport {\n\tCreatorPackage,\n\treadPackageCreatorManifest,\n\twritePackageCreatorManifest,\n\treadPackageCreatorIndex,\n\tparseCreatorPackageName,\n\tPackageLocation,\n\tPackageNpmManifest,\n\tINDEX_FILE,\n\tPACKAGE_FILE,\n} from \"../../lib/package\";\nimport {\n\tPublishedPackageLocation,\n\treadPublishedPackageCreatorIndex,\n} from \"../../lib/publishedPackage\";\nimport { Reporter } from \"@intelligentgraphics/ig.gfx.tools.core\";\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\tif (creatorPackage.Package === \"IG.GFX.Standard\") {\n\t\tconst source = path.join(location.path, \"Images\");\n\n\t\tif (fs.existsSync(source)) {\n\t\t\tconst images = fs.readdirSync(source);\n\n\t\t\tfor (const file of images) {\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(source, file)),\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn archive;\n};\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\treporter: Reporter,\n\tpackageLocation: PackageLocation,\n\tdata: CreatorPackage,\n\tbinDir: string,\n\tminified = true,\n) => {\n\tconst { domain } = parseCreatorPackageName(data);\n\n\tconst scriptDirectories: string[] = [\n\t\tpackageLocation.path,\n\t\tpackageLocation.scriptsDir,\n\t];\n\n\tif (data.Package === \"IG.GFX.Standard\") {\n\t\treporter.log(`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\treporter.log(\n\t\t\t\t\"Setting script RunTime to false because of script type\",\n\t\t\t);\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\treporter.log(\n\t\t\t\t\"Setting script RunTime to true because of script type\",\n\t\t\t);\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\tlet libFile: string | undefined;\n\n\ttry {\n\t\tconst libFilePath = minified\n\t\t\t? path.join(binDir, `${data.Package}.min.js`)\n\t\t\t: path.join(binDir, `${data.Package}.js`);\n\n\t\tlibFile = fs.readFileSync(libFilePath, {\n\t\t\tencoding: \"utf8\",\n\t\t});\n\t} catch (err) {\n\t\tif (!isErrorENOENT(err)) {\n\t\t\tthrow err;\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\tarchive.file(`${data.Package}.js`, library);\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\treporter.error(`Script directory \"${directory}\" does not exist`);\n\t\t}\n\t}\n\n\treturn archive;\n};\n","import { AssetService } from \"@intelligentgraphics/ig.gfx.tools.core\";\n\nexport interface AssetServiceSessionManager {\n\tgetBasicsSession: () => Promise<AssetService.Session>;\n\tgetTargetSession: () => AssetService.Session;\n\tdestroy: () => Promise<void>;\n}\n\nexport const createAssetServiceSessionManager = async (\n\tparams: AssetService.SessionStartParams,\n): Promise<AssetServiceSessionManager> => {\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","import {\n\tWorkspaceLocation,\n\tCreatorPackage,\n\tAssetService,\n\tdetermineWorkspaceIGLibraries,\n\treadPublishedPackageNpmManifest,\n\treadPublishedPackageCreatorManifest,\n\tReporter,\n} from \"@intelligentgraphics/ig.gfx.tools.core\";\nimport { buildArchiveFromPublishedPackage } from \"../commands/publish/zip\";\nimport { AssetServiceSessionManager } from \"./assetServiceSessionManager\";\nimport { PackageVersion } from \"./packageVersion\";\nimport { parseVersionFromNumericVersion } from \"./parseVersion\";\nimport { Prompter, PrompterOption } from \"./prompter\";\nimport { Readable } from \"node:stream\";\n\nexport const synchronizeDependencies = async (\n\tworkspaceLocation: WorkspaceLocation,\n\tcreatorPackage: CreatorPackage | undefined,\n\tsessionManager: AssetServiceSessionManager,\n\tprompter: Prompter,\n\treporter: Reporter,\n\tlogUpToDate: boolean = false,\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\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\tuploadedPackageInBasics !== undefined &&\n\t\t\t\tuploadedPackageInTarget !== undefined\n\t\t\t) {\n\t\t\t\treporter.log(\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\n\t\t\tif (logUpToDate) {\n\t\t\t\treporter.log(\n\t\t\t\t\t`Package ${\n\t\t\t\t\t\tlibraryCreatorPackage.Package\n\t\t\t\t\t} is already uploaded with the required version ${libraryVersion.toVersionString(\n\t\t\t\t\t\t{},\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst possibleTargets: PrompterOption[] = [];\n\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\tpossibleTargets.push({\n\t\t\t\tvalue: \"Basics\",\n\t\t\t\tname: `Basics (Current: ${version})`,\n\t\t\t});\n\t\t} else {\n\t\t\tpossibleTargets.push({\n\t\t\t\tvalue: \"Basics\",\n\t\t\t\tname: \"Basics (Current: None)\",\n\t\t\t});\n\t\t}\n\n\t\tif (targetSession.subDomain !== \"Basics\") {\n\t\t\tif (uploadedPackageInTarget) {\n\t\t\t\tconst version = uploadedPackageInTarget.version.toVersionString(\n\t\t\t\t\t{\n\t\t\t\t\t\tbuildNumber: true,\n\t\t\t\t\t},\n\t\t\t\t);\n\n\t\t\t\tpossibleTargets.push({\n\t\t\t\t\tvalue: targetSession.subDomain,\n\t\t\t\t\tname: `${targetSession.subDomain} (Current: ${version})`,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tpossibleTargets.push({\n\t\t\t\t\tvalue: targetSession.subDomain,\n\t\t\t\t\tname: `${targetSession.subDomain} (Current: None)`,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tconst libraryVersionString = libraryVersion.toVersionString({\n\t\t\tbuildNumber: true,\n\t\t});\n\n\t\tconst uploadTargetScope = await prompter.ask({\n\t\t\tmessage: `Version ${libraryVersionString} of dependency ${libraryCreatorPackage.Package} is required but not available. Please select a subdomain to upload the correct dependency version to`,\n\t\t\toptions: [\n\t\t\t\t...possibleTargets,\n\t\t\t\t{ name: \"Skip upload\", value: \"Skip\" },\n\t\t\t],\n\t\t\tdefault: possibleTargets[0].value,\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\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\treporter.log(\n\t\t\t`Uploading package ${libraryCreatorPackage.Package} with version ${newVersionString} to ${session.domain}.${session.subDomain}`,\n\t\t);\n\n\t\tawait AssetService.uploadPackageFromBuffer(\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\tawait archive.generateAsync({ type: \"nodebuffer\" }),\n\t\t);\n\t}\n};\n","import * as path from \"path\";\nimport * as fs from \"fs/promises\";\nimport { createReadStream, createWriteStream } from \"fs\";\nimport { pipeline } from \"stream/promises\";\nimport { exec } from \"child_process\";\nimport { promisify } from \"util\";\n\nimport {\n\tAssetService,\n\tconsoleReporter,\n\tcreatePackageScopedReporter,\n\tisErrorEACCES,\n\tisErrorEPERM,\n\tReporter,\n\twritePackageCreatorManifest,\n} from \"@intelligentgraphics/ig.gfx.tools.core\";\n\nimport {\n\tgetPackageReleasesDirectory,\n\tPackageLocation,\n\tparseCreatorPackageName,\n\treadPackageAnimationList,\n\treadPackageCreatorManifest,\n} from \"../../lib/package\";\nimport {\n\tgetWorkspaceOutputPath,\n\treadWorkspaceNpmManifest,\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 { isErrorENOENT } from \"../../lib/error\";\nimport { Prompter } from \"../../lib/prompter\";\nimport { PackageVersion } from \"../../lib/packageVersion\";\nimport { BuildFoldersOptions, buildFolders } from \"../build\";\nimport { buildArchiveFromPackage } from \"./zip\";\nimport { createAssetServiceSessionManager } from \"../../lib/assetServiceSessionManager\";\nimport { synchronizeDependencies } from \"../../lib/dependencySync\";\nimport { buffer } from \"node:stream/consumers\";\n\nexport interface ReleaseFolderOptions\n\textends Omit<\n\t\tBuildFoldersOptions,\n\t\t\"skipPackagesWithoutTsFiles\" | \"banner\" | \"packages\"\n\t> {\n\tdirectory: PackageLocation;\n\tnoUpload: boolean;\n\tnewVersion: string;\n\tdomain?: string;\n\tsubdomain?: string;\n\taddress?: string;\n\tservice: string;\n\tauthentication?: AssetService.Authentication;\n\tpushOnly: boolean;\n\tbanner?: boolean;\n\tprompter: Prompter;\n\tskipDependencies?: boolean;\n\treporter?: Reporter;\n}\n\nconst execAsync = promisify(exec);\n\nexport const releaseFolder = async (options: ReleaseFolderOptions) => {\n\tconst workspace = options.workspace;\n\tconst location = options.directory;\n\n\tconst versionFile = getVersionFileHandler(location);\n\n\tconst packageDescription = readPackageCreatorManifest(location);\n\tconst fullPackageName = packageDescription.Package;\n\n\tconst reporter =\n\t\toptions.reporter ??\n\t\tcreatePackageScopedReporter(\n\t\t\tconsoleReporter,\n\t\t\tpackageDescription.Package,\n\t\t);\n\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\tpackageDescription.Version = newVersion.toVersionString({\n\t\tbuildNumber: true,\n\t});\n\twritePackageCreatorManifest(location, packageDescription);\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\t// if (sharedPackageJson !== undefined) {\n\t// \treporter.log(\n\t// \t\t`Running npm install to make sure all dependencies are up to date`,\n\t// \t);\n\t// \tawait execAsync(`npm install`, {\n\t// \t\tencoding: \"utf-8\",\n\t// \t\tcwd: workspace.path,\n\t// \t});\n\t// }\n\n\tconst binDir = options.outDir ?? getWorkspaceOutputPath(workspace);\n\tawait fs.mkdir(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\tlet zipFilePath = path.join(binDir, packageNameWithVersion + \".zip\");\n\tinterface Uploadable {\n\t\tgetStream: () => NodeJS.ReadableStream;\n\t}\n\n\tlet uploadable: Uploadable = {\n\t\tgetStream: () => createReadStream(zipFilePath),\n\t};\n\n\ttry {\n\t\tif (options.pushOnly) {\n\t\t\tconst zipFileExists = await fs.stat(zipFilePath).catch((err) => {\n\t\t\t\tif (isErrorENOENT(err)) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\treturn Promise.reject(err);\n\t\t\t});\n\n\t\t\tif (zipFileExists) {\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\tif (versionFile.exists) {\n\t\t\t\tversionFile.write(fullPackageName, newVersion);\n\t\t\t}\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\tpackages: [location],\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\tpreparedReporter: reporter,\n\t\t\t});\n\n\t\t\tnewVersion.preRelease = undefined;\n\n\t\t\ttry {\n\t\t\t\tawait fs.rm(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\tif (readPackageAnimationList(location).length > 0) {\n\t\t\t\tconst workspaceManifest = readWorkspaceNpmManifest(workspace);\n\n\t\t\t\tif (\n\t\t\t\t\t!workspaceManifest.dependencies?.[\n\t\t\t\t\t\t\"@intelligentgraphics/3d.ig.gfx.standard\"\n\t\t\t\t\t]\n\t\t\t\t) {\n\t\t\t\t\tconst install = await options.prompter.confirm(\n\t\t\t\t\t\t`The IG.GFX.Standard package should be added as a dependency to provide the 'AnimationInteractor' used to display animations. Do you wish to add it now?`,\n\t\t\t\t\t);\n\n\t\t\t\t\tif (install) {\n\t\t\t\t\t\tawait execAsync(\n\t\t\t\t\t\t\t`npm install @intelligentgraphics/3d.ig.gfx.standard`,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tencoding: \"utf-8\",\n\t\t\t\t\t\t\t\tcwd: workspace.path,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tawait execAsync(`npm run postinstall`, {\n\t\t\t\t\t\t\tcwd: workspace.path,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treporter.log(`Creating zip file`);\n\n\t\t\tconst archive = await buildArchiveFromPackage(\n\t\t\t\treporter,\n\t\t\t\tlocation,\n\t\t\t\tpackageDescription,\n\t\t\t\tbinDir,\n\t\t\t\toptions.minimize,\n\t\t\t);\n\n\t\t\ttry {\n\t\t\t\tconst zipOutputStream = createWriteStream(zipFilePath);\n\t\t\t\tawait pipeline(archive.generateNodeStream(), zipOutputStream);\n\t\t\t} catch (err) {\n\t\t\t\tif (isErrorEACCES(err) || isErrorEPERM(err)) {\n\t\t\t\t\treporter.log(\n\t\t\t\t\t\t`Could not create zip file in the bin directory because of a permissions error. Only using it in-memory`,\n\t\t\t\t\t);\n\t\t\t\t\tuploadable = {\n\t\t\t\t\t\tgetStream: () => archive.generateNodeStream(),\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t}\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\treporter.log(`Opening connection to IG.Asset.Server`);\n\n\t\t\tconst sessionManager = await createAssetServiceSessionManager({\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 (!options.skipDependencies) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tawait synchronizeDependencies(\n\t\t\t\t\t\t\tworkspace,\n\t\t\t\t\t\t\tpackageDescription,\n\t\t\t\t\t\t\tsessionManager,\n\t\t\t\t\t\t\toptions.prompter,\n\t\t\t\t\t\t\treporter,\n\t\t\t\t\t\t);\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\treporter.error(\n\t\t\t\t\t\t\t`Failed to synchronize dependencies for ${packageDescription.Package}`,\n\t\t\t\t\t\t\terr,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treporter.log(\n\t\t\t\t\t`Uploading package to ${publishDomain}.${publishSubdomain}`,\n\t\t\t\t);\n\n\t\t\t\tawait AssetService.uploadPackageFromBuffer(\n\t\t\t\t\tsessionManager.getTargetSession(),\n\t\t\t\t\tassetServerPackageDetails,\n\t\t\t\t\tawait buffer(uploadable.getStream()),\n\t\t\t\t);\n\t\t\t} finally {\n\t\t\t\tawait sessionManager.destroy().catch((err) => {\n\t\t\t\t\treporter.error(\n\t\t\t\t\t\t`Failed to close IG.Asset.Server session(s)`,\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}\n\t} catch (err) {\n\t\tversionFile.reset();\n\t\tthrow err;\n\t}\n\n\tif (newVersion.buildNumber >= 100 && !options.pushOnly) {\n\t\treporter.error(\"Copying zip to releases folder\");\n\n\t\tconst zipFileName = `${packageNameWithVersion}.zip`;\n\t\tconst releasesPath = getPackageReleasesDirectory(location);\n\n\t\tawait fs.mkdir(releasesPath, { recursive: true });\n\t\tawait pipeline(\n\t\t\tuploadable.getStream(),\n\t\t\tcreateWriteStream(path.join(releasesPath, zipFileName)),\n\t\t);\n\t}\n};\n"],"names":["buildArchiveFromPublishedPackage","location","manifest","creatorPackage","archive","JSZip","file","PACKAGE_FILE","JSON","stringify","index","readPublishedPackageCreatorIndex","undefined","INDEX_FILE","main","fs","createReadStream","path","join","Package","source","existsSync","images","readdirSync","ext","parse","runtimeScripts","notRuntimeScripts","buildArchiveFromPackage","reporter","packageLocation","data","binDir","minified","domain","parseCreatorPackageName","scriptDirectories","scriptsDir","log","push","readPackageCreatorManifest","RunTime","includes","Type","writePackageCreatorManifest","libFile","libFilePath","readFileSync","encoding","err","isErrorENOENT","library","date","Date","now","getFullYear","creatorIndex","readPackageCreatorIndex","directory","error","createAssetServiceSessionManager","params","targetSession","AssetService","basicsSession","getBasicsSession","subDomain","getTargetSession","destroy","synchronizeDependencies","workspaceLocation","sessionManager","prompter","logUpToDate","libraries","determineWorkspaceIGLibraries","length","rawUploadedPackages","uploadedPackages","map","entry","version","parseVersionFromNumericVersion","numericVersion","Error","buildNumber","preRelease","type","libraryLocation","libraryManifest","readPublishedPackageNpmManifest","libraryCreatorPackage","readPublishedPackageCreatorManifest","libraryVersion","PackageVersion","extractFromLine","uploadedPackageInBasics","uploadedPackageInTarget","uploadedPackage","scope","support","validInBasics","isLesserThan","validInTarget","toVersionString","possibleTargets","value","name","libraryVersionString","uploadTargetScope","ask","message","options","default","newVersionString","session","generateAsync","execAsync","promisify","exec","releaseFolder","workspace","versionFile","getVersionFileHandler","packageDescription","fullPackageName","createPackageScopedReporter","consoleReporter","subdomain","publishDomain","publishSubdomain","sharedPackageJson","readWorkspaceNpmManifest","newVersion","parseVersionFromString","Version","outDir","getWorkspaceOutputPath","mkdir","recursive","assetServerPackageDetails","packageNameWithVersion","versionWithoutPrelease","clone","zipFilePath","uploadable","getStream","pushOnly","zipFileExists","stat","catch","Promise","reject","gitVersionInformation","getVersionInformationFromGit","exists","write","bannerText","getWorkspaceBannerText","buildFolders","packages","banner","text","commit","commitDirty","dirty","preparedReporter","rm","readPackageAnimationList","workspaceManifest","dependencies","install","confirm","cwd","minimize","zipOutputStream","createWriteStream","pipeline","generateNodeStream","isErrorEACCES","isErrorEPERM","noUpload","authentication","url","service","address","skipDependencies","buffer","reset","zipFileName","releasesPath","getPackageReleasesDirectory"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBO,MAAMA,gCAAAA,GAAmC,CAC/CC,QAAAA,EACAC,QAAAA,EACAC,cAAAA,GAAAA;AAEA,IAAA,MAAMC,UAAU,IAAIC,KAAAA,EAAAA;AAEpBD,IAAAA,OAAAA,CAAQE,IAAI,CAACC,YAAAA,EAAcC,KAAKC,SAAS,CAACN,gBAAgB,IAAA,EAAM,CAAA,CAAA,CAAA;AAEhE,IAAA,MAAMO,QAAQC,gCAAAA,CAAiCV,QAAAA,CAAAA;AAE/C,IAAA,IAAIS,UAAUE,SAAAA,EAAW;AACxBR,QAAAA,OAAAA,CAAQE,IAAI,CAACO,UAAAA,EAAYL,KAAKC,SAAS,CAACC,OAAO,IAAA,EAAM,CAAA,CAAA,CAAA;AACtD,IAAA;AAEAN,IAAAA,OAAAA,CAAQE,IAAI,CACXJ,QAAAA,CAASY,IAAI,EACbC,EAAAA,CAAGC,gBAAgB,CAACC,IAAAA,CAAKC,IAAI,CAACjB,QAAAA,CAASgB,IAAI,EAAEf,SAASY,IAAI,CAAA,CAAA,CAAA;IAG3D,IAAIX,cAAAA,CAAegB,OAAO,KAAK,iBAAA,EAAmB;AACjD,QAAA,MAAMC,SAASH,IAAAA,CAAKC,IAAI,CAACjB,QAAAA,CAASgB,IAAI,EAAE,QAAA,CAAA;QAExC,IAAIF,EAAAA,CAAGM,UAAU,CAACD,MAAAA,CAAAA,EAAS;YAC1B,MAAME,MAAAA,GAASP,EAAAA,CAAGQ,WAAW,CAACH,MAAAA,CAAAA;YAE9B,KAAK,MAAMd,QAAQgB,MAAAA,CAAQ;AAC1B,gBAAA,MAAM,EAAEE,GAAG,EAAE,GAAGP,IAAAA,CAAKQ,KAAK,CAACnB,IAAAA,CAAAA;gBAE3B,OAAQkB,GAAAA;oBACP,KAAK,MAAA;oBACL,KAAK,OAAA;oBACL,KAAK,MAAA;AACJ,wBAAA;AACD,oBAAA;AACC,wBAAA;AACF;gBAEApB,OAAAA,CAAQE,IAAI,CACXA,IAAAA,EACAS,EAAAA,CAAGC,gBAAgB,CAACC,IAAAA,CAAKC,IAAI,CAACE,MAAAA,EAAQd,IAAAA,CAAAA,CAAAA,CAAAA;AAExC,YAAA;AACD,QAAA;AACD,IAAA;IAEA,OAAOF,OAAAA;AACR,CAAA;AAEA,MAAMsB,cAAAA,GAA2C;AAChD,IAAA,YAAA;AACA,IAAA,MAAA;AACA,IAAA;AACA,CAAA;AAED,MAAMC,iBAAAA,GAA8C;AAAC,IAAA,SAAA;AAAW,IAAA;AAAY,CAAA;AAErE,MAAMC,0BAA0B,OACtCC,QAAAA,EACAC,iBACAC,IAAAA,EACAC,MAAAA,EACAC,WAAW,IAAI,GAAA;AAEf,IAAA,MAAM,EAAEC,MAAM,EAAE,GAAGC,uBAAAA,CAAwBJ,IAAAA,CAAAA;AAE3C,IAAA,MAAMK,iBAAAA,GAA8B;AACnCN,QAAAA,eAAAA,CAAgBb,IAAI;AACpBa,QAAAA,eAAAA,CAAgBO;AAChB,KAAA;IAED,IAAIN,IAAAA,CAAKZ,OAAO,KAAK,iBAAA,EAAmB;AACvCU,QAAAA,QAAAA,CAASS,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAA;AACtCF,QAAAA,iBAAAA,CAAkBG,IAAI,CAACtB,IAAAA,CAAKC,IAAI,CAACY,eAAAA,CAAgBb,IAAI,EAAE,QAAA,CAAA,CAAA;AACxD,IAAA;AAEA,IAAA,MAAMf,WAAWsC,0BAAAA,CAA2BV,eAAAA,CAAAA;AAE5C,IAAA,IAAI5B,aAAaU,SAAAA,EAAW;QAC3B,IAAIV,QAAAA,CAASuC,OAAO,IAAId,iBAAAA,CAAkBe,QAAQ,CAACxC,QAAAA,CAASyC,IAAI,CAAA,EAAG;AAClEd,YAAAA,QAAAA,CAASS,GAAG,CACX,wDAAA,CAAA;AAEDM,YAAAA,2BAAAA,CAA4Bd,eAAAA,EAAiB;AAC5C,gBAAA,GAAG5B,QAAQ;gBACXuC,OAAAA,EAAS;AACV,aAAA,CAAA;QACD,CAAA,MAAO,IACN,CAACvC,QAAAA,CAASuC,OAAO,IACjBf,eAAegB,QAAQ,CAACxC,QAAAA,CAASyC,IAAI,CAAA,EACpC;AACDd,YAAAA,QAAAA,CAASS,GAAG,CACX,uDAAA,CAAA;AAEDM,YAAAA,2BAAAA,CAA4Bd,eAAAA,EAAiB;AAC5C,gBAAA,GAAG5B,QAAQ;gBACXuC,OAAAA,EAAS;AACV,aAAA,CAAA;AACD,QAAA;AACD,IAAA;IAEA,IAAII,OAAAA;IAEJ,IAAI;QACH,MAAMC,WAAAA,GAAcb,WACjBhB,IAAAA,CAAKC,IAAI,CAACc,MAAAA,EAAQ,CAAA,EAAGD,IAAAA,CAAKZ,OAAO,CAAC,OAAO,CAAC,CAAA,GAC1CF,IAAAA,CAAKC,IAAI,CAACc,MAAAA,EAAQ,GAAGD,IAAAA,CAAKZ,OAAO,CAAC,GAAG,CAAC,CAAA;QAEzC0B,OAAAA,GAAU9B,EAAAA,CAAGgC,YAAY,CAACD,WAAAA,EAAa;YACtCE,QAAAA,EAAU;AACX,SAAA,CAAA;AACD,IAAA,CAAA,CAAE,OAAOC,GAAAA,EAAK;QACb,IAAI,CAACC,cAAcD,GAAAA,CAAAA,EAAM;YACxB,MAAMA,GAAAA;AACP,QAAA;AACD,IAAA;AAEA,IAAA,MAAM7C,UAAU,IAAIC,KAAAA,EAAAA;AAEpB,IAAA,IAAI8C,OAAAA,GAAkB,EAAA;AAEtB,IAAA,IAAIN,OAAAA,EAAS;QACZM,OAAAA,GAAUN,OAAAA;AACX,IAAA;AAEA,IAAA,IAAI,CAACM,OAAAA,EAAS;AACb,QAAA,MAAMC,IAAAA,GAAO,IAAIC,IAAAA,CAAKA,IAAAA,CAAKC,GAAG,EAAA,CAAA;QAC9BH,OAAAA,GAAU,CAAC,4BAA4B,EAAEjB,MAAAA,CAAO;AAChC,kBAAA,EAAEkB,IAAAA,CAAKG,WAAW,EAAA,CAAG,6CAA6C,CAAC;AACpF,IAAA;IAEAnD,OAAAA,CAAQE,IAAI,CAAC,CAAA,EAAGyB,IAAAA,CAAKZ,OAAO,CAAC,GAAG,CAAC,EAAEgC,OAAAA,CAAAA;AACnC/C,IAAAA,OAAAA,CAAQE,IAAI,CAACC,YAAAA,EAAcC,KAAKC,SAAS,CAACsB,MAAM,IAAA,EAAM,CAAA,CAAA,CAAA;AAEtD,IAAA,MAAMyB,eAAeC,uBAAAA,CAAwB3B,eAAAA,CAAAA;AAE7C,IAAA,IAAI0B,iBAAiB5C,SAAAA,EAAW;AAC/BR,QAAAA,OAAAA,CAAQE,IAAI,CAACO,UAAAA,EAAYL,KAAKC,SAAS,CAAC+C,cAAc,IAAA,EAAM,CAAA,CAAA,CAAA;AAC7D,IAAA;IAEA,KAAK,MAAME,aAAatB,iBAAAA,CAAmB;QAC1C,IAAI;AACH,YAAA,KAAK,MAAM9B,IAAAA,IAAQS,EAAAA,CAAGQ,WAAW,CAACmC,SAAAA,CAAAA,CAAY;AAC7C,gBAAA,MAAM,EAAElC,GAAG,EAAE,GAAGP,IAAAA,CAAKQ,KAAK,CAACnB,IAAAA,CAAAA;gBAE3B,OAAQkB,GAAAA;oBACP,KAAK,MAAA;oBACL,KAAK,OAAA;oBACL,KAAK,MAAA;AACJ,wBAAA;AACD,oBAAA;AACC,wBAAA;AACF;gBAEApB,OAAAA,CAAQE,IAAI,CACXA,IAAAA,EACAS,EAAAA,CAAGC,gBAAgB,CAACC,IAAAA,CAAKC,IAAI,CAACwC,SAAAA,EAAWpD,IAAAA,CAAAA,CAAAA,CAAAA;AAE3C,YAAA;AACD,QAAA,CAAA,CAAE,OAAO2C,GAAAA,EAAK;AACbpB,YAAAA,QAAAA,CAAS8B,KAAK,CAAC,CAAC,kBAAkB,EAAED,SAAAA,CAAU,gBAAgB,CAAC,CAAA;AAChE,QAAA;AACD,IAAA;IAEA,OAAOtD,OAAAA;AACR,CAAA;;ACnLO,MAAMwD,mCAAmC,OAC/CC,MAAAA,GAAAA;AAEA,IAAA,MAAMC,aAAAA,GAAgB,MAAMC,YAAyB,CAACF,MAAAA,CAAAA;IACtD,IAAIG,aAAAA;IAEJ,OAAO;QACNC,gBAAAA,EAAkB,UAAA;YACjB,IAAIH,aAAAA,CAAcI,SAAS,KAAK,QAAA,EAAU;gBACzC,OAAOJ,aAAAA;AACR,YAAA;AAEA,YAAA,IAAIE,kBAAkBpD,SAAAA,EAAW;gBAChCoD,aAAAA,GAAgB,MAAMD,YAAyB,CAAC;AAC/C,oBAAA,GAAGF,MAAM;oBACTK,SAAAA,EAAW;AACZ,iBAAA,CAAA;AACD,YAAA;YAEA,OAAOF,aAAAA;AACR,QAAA,CAAA;AAEAG,QAAAA,gBAAAA,EAAkB,IAAML,aAAAA;QAExBM,OAAAA,EAAS,UAAA;YACR,MAAML,YAAyB,CAACD,aAAAA,CAAAA;AAEhC,YAAA,IAAIE,kBAAkBpD,SAAAA,EAAW;gBAChC,MAAMmD,YAAyB,CAACC,aAAAA,CAAAA;AACjC,YAAA;AACD,QAAA;AACD,KAAA;AACD,CAAA;;ACxBO,MAAMK,0BAA0B,OACtCC,iBAAAA,EACAnE,gBACAoE,cAAAA,EACAC,QAAAA,EACA3C,QAAAA,EACA4C,WAAAA,GAAuB,KAAK,GAAA;AAO5B,IAAA,MAAMC,YAAYC,6BAAAA,CAA8BL,iBAAAA,CAAAA;;IAGhD,IAAII,SAAAA,CAAUE,MAAM,KAAK,CAAA,EAAG;QAC3B,OAAO,IAAA;AACR,IAAA;IAEA,MAAMd,aAAAA,GAAgBS,eAAeJ,gBAAgB,EAAA;AAErD,IAAA,MAAMU,mBAAAA,GAAsB,MAAMd,mBAAgC,CACjED,aAAAA,CAAAA;AAGD,IAAA,MAAMgB,gBAAAA,GAAmBD,mBAAAA,CAAoBE,GAAG,CAC/C,CAACC,KAAAA,GAAAA;QACA,IAAIC,OAAAA;QAEJ,IAAI;YACHA,OAAAA,GAAUC,8BAAAA,CAA+BF,MAAMG,cAAc,CAAA;AAC9D,QAAA,CAAA,CAAE,OAAOlC,GAAAA,EAAK;AACb,YAAA,MAAM,IAAImC,KAAAA,CACT,CAAC,uCAAuC,EAAEJ,KAAAA,CAAMG,cAAc,CAAA,CAAE,CAAA;AAElE,QAAA;QAEA,IAAIF,OAAAA,CAAQI,WAAW,GAAG,GAAA,EAAK;AAC9BJ,YAAAA,OAAAA,CAAQK,UAAU,GAAG;gBACpBC,IAAAA,EAAM,MAAA;AACNN,gBAAAA,OAAAA,EAASA,QAAQI;AAClB,aAAA;AACD,QAAA,CAAA,MAAO,IAAIJ,OAAAA,CAAQI,WAAW,GAAG,GAAA,EAAK;AACrCJ,YAAAA,OAAAA,CAAQK,UAAU,GAAG;gBACpBC,IAAAA,EAAM,OAAA;gBACNN,OAAAA,EAASA,OAAAA,CAAQI,WAAW,GAAG;AAChC,aAAA;AACD,QAAA;QAEA,OAAO;AACN,YAAA,GAAGL,KAAK;AACRC,YAAAA;AACD,SAAA;AACD,IAAA,CAAA,CAAA;IAGD,KAAK,MAAMO,mBAAmBd,SAAAA,CAAW;AACxC,QAAA,MAAMe,kBACLC,+BAAAA,CAAgCF,eAAAA,CAAAA;AACjC,QAAA,MAAMG,wBACLC,mCAAAA,CAAoCJ,eAAAA,CAAAA;QAErC,IACCG,qBAAAA,KAA0B/E,SAAAA,IAC1B6E,eAAAA,CAAgB3E,IAAI,KAAKF,aACzB+E,qBAAAA,CAAsBxE,OAAO,KAAKhB,cAAAA,EAAgBgB,OAAAA,EACjD;AACD,YAAA;AACD,QAAA;AAEA,QAAA,MAAM0E,cAAAA,GAAiBC,cAAAA,CAAeC,eAAe,CACpDN,gBAAgBR,OAAO,CAAA;QAGxB,IAAIY,cAAAA,CAAeP,UAAU,EAAE;AAC9BO,YAAAA,cAAAA,CAAeR,WAAW,GAAGQ,cAAAA,CAAeP,UAAU,CAACL,OAAO;AAC9DY,YAAAA,cAAAA,CAAeP,UAAU,GAAG1E,SAAAA;QAC7B,CAAA,MAAO;AACNiF,YAAAA,cAAAA,CAAeR,WAAW,GAAG,GAAA;AAC9B,QAAA;QAEA,IAAIW,uBAAAA;QACJ,IAAIC,uBAAAA;QAEJ,KAAK,MAAMC,mBAAmBpB,gBAAAA,CAAkB;AAC/C,YAAA,IAAIoB,eAAAA,CAAgBC,KAAK,KAAKR,qBAAAA,CAAsBxE,OAAO,EAAE;gBAC5D,IAAI+E,eAAAA,CAAgBE,OAAO,EAAE;oBAC5BJ,uBAAAA,GAA0BE,eAAAA;gBAC3B,CAAA,MAAO;oBACND,uBAAAA,GAA0BC,eAAAA;AAC3B,gBAAA;AACD,YAAA;AACD,QAAA;QAEA,MAAMG,aAAAA,GACLL,4BAA4BpF,SAAAA,IAC5B,CAACoF,wBAAwBf,OAAO,CAACqB,YAAY,CAACT,cAAAA,CAAAA;QAC/C,MAAMU,aAAAA,GACLN,4BAA4BrF,SAAAA,IAC5B,CAACqF,wBAAwBhB,OAAO,CAACqB,YAAY,CAACT,cAAAA,CAAAA;AAE/C,QAAA,IAAIQ,iBAAiBE,aAAAA,EAAe;AACnC,YAAA,IACCzC,cAAcI,SAAS,KAAK,YAC5B8B,uBAAAA,KAA4BpF,SAAAA,IAC5BqF,4BAA4BrF,SAAAA,EAC3B;AACDiB,gBAAAA,QAAAA,CAASS,GAAG,CACX,CAAC,QAAQ,EAAEqD,qBAAAA,CAAsBxE,OAAO,CAAC,iCAAiC,EAAE2C,aAAAA,CAAcI,SAAS,CAAC,qBAAqB,EAAEJ,cAAcI,SAAS,CAAC,cAAc,CAAC,CAAA;AAEpK,YAAA;AAEA,YAAA,IAAIO,WAAAA,EAAa;AAChB5C,gBAAAA,QAAAA,CAASS,GAAG,CACX,CAAC,QAAQ,EACRqD,qBAAAA,CAAsBxE,OAAO,CAC7B,+CAA+C,EAAE0E,cAAAA,CAAeW,eAAe,CAC/E,EAAC,CAAA,CAAA,CACC,CAAA;AAEL,YAAA;AAEA,YAAA;AACD,QAAA;AAEA,QAAA,MAAMC,kBAAoC,EAAE;AAE5C,QAAA,IAAIT,uBAAAA,EAAyB;AAC5B,YAAA,MAAMf,OAAAA,GAAUe,uBAAAA,CAAwBf,OAAO,CAACuB,eAAe,CAAC;gBAC/DnB,WAAAA,EAAa;AACd,aAAA,CAAA;AAEAoB,YAAAA,eAAAA,CAAgBlE,IAAI,CAAC;gBACpBmE,KAAAA,EAAO,QAAA;AACPC,gBAAAA,IAAAA,EAAM,CAAC,iBAAiB,EAAE1B,OAAAA,CAAQ,CAAC;AACpC,aAAA,CAAA;QACD,CAAA,MAAO;AACNwB,YAAAA,eAAAA,CAAgBlE,IAAI,CAAC;gBACpBmE,KAAAA,EAAO,QAAA;gBACPC,IAAAA,EAAM;AACP,aAAA,CAAA;AACD,QAAA;QAEA,IAAI7C,aAAAA,CAAcI,SAAS,KAAK,QAAA,EAAU;AACzC,YAAA,IAAI+B,uBAAAA,EAAyB;AAC5B,gBAAA,MAAMhB,OAAAA,GAAUgB,uBAAAA,CAAwBhB,OAAO,CAACuB,eAAe,CAC9D;oBACCnB,WAAAA,EAAa;AACd,iBAAA,CAAA;AAGDoB,gBAAAA,eAAAA,CAAgBlE,IAAI,CAAC;AACpBmE,oBAAAA,KAAAA,EAAO5C,cAAcI,SAAS;oBAC9ByC,IAAAA,EAAM,CAAA,EAAG7C,cAAcI,SAAS,CAAC,WAAW,EAAEe,OAAAA,CAAQ,CAAC;AACxD,iBAAA,CAAA;YACD,CAAA,MAAO;AACNwB,gBAAAA,eAAAA,CAAgBlE,IAAI,CAAC;AACpBmE,oBAAAA,KAAAA,EAAO5C,cAAcI,SAAS;AAC9ByC,oBAAAA,IAAAA,EAAM,CAAA,EAAG7C,aAAAA,CAAcI,SAAS,CAAC,gBAAgB;AAClD,iBAAA,CAAA;AACD,YAAA;AACD,QAAA;QAEA,MAAM0C,oBAAAA,GAAuBf,cAAAA,CAAeW,eAAe,CAAC;YAC3DnB,WAAAA,EAAa;AACd,SAAA,CAAA;AAEA,QAAA,MAAMwB,iBAAAA,GAAoB,MAAMrC,QAAAA,CAASsC,GAAG,CAAC;YAC5CC,OAAAA,EAAS,CAAC,QAAQ,EAAEH,oBAAAA,CAAqB,eAAe,EAAEjB,qBAAAA,CAAsBxE,OAAO,CAAC,qGAAqG,CAAC;YAC9L6F,OAAAA,EAAS;AACLP,gBAAAA,GAAAA,eAAAA;AACH,gBAAA;oBAAEE,IAAAA,EAAM,aAAA;oBAAeD,KAAAA,EAAO;AAAO;AACrC,aAAA;AACDO,YAAAA,OAAAA,EAASR,eAAe,CAAC,CAAA,CAAE,CAACC;AAC7B,SAAA,CAAA;AAEA,QAAA,IAAIG,sBAAsB,MAAA,EAAQ;AACjC,YAAA;AACD,QAAA;QAEA,MAAMzG,OAAAA,GAAUJ,gCAAAA,CACfwF,eAAAA,EACAC,eAAAA,EACAE,qBAAAA,CAAAA;QAGD,MAAMuB,gBAAAA,GAAmBrB,cAAAA,CAAeW,eAAe,CAAC;YACvDnB,WAAAA,EAAa;AACd,SAAA,CAAA;AAEA,QAAA,MAAM8B,UACLN,iBAAAA,KAAsB,QAAA,GACnB,MAAMtC,cAAAA,CAAeN,gBAAgB,EAAA,GACrCH,aAAAA;QAEJjC,QAAAA,CAASS,GAAG,CACX,CAAC,kBAAkB,EAAEqD,qBAAAA,CAAsBxE,OAAO,CAAC,cAAc,EAAE+F,iBAAiB,IAAI,EAAEC,QAAQjF,MAAM,CAAC,CAAC,EAAEiF,OAAAA,CAAQjD,SAAS,CAAA,CAAE,CAAA;QAGhI,MAAMH,uBAAoC,CACzCoD,OAAAA,EACA;AACCR,YAAAA,IAAAA,EAAMhB,sBAAsBxE,OAAO;YACnC8D,OAAAA,EAASiC;SACV,EACA,MAAM9G,OAAAA,CAAQgH,aAAa,CAAC;YAAE7B,IAAAA,EAAM;AAAa,SAAA,CAAA,CAAA;AAEnD,IAAA;AACD,CAAA;;ACpKA,MAAM8B,YAAYC,SAAAA,CAAUC,IAAAA,CAAAA;AAErB,MAAMC,gBAAgB,OAAOR,OAAAA,GAAAA;IACnC,MAAMS,SAAAA,GAAYT,QAAQS,SAAS;IACnC,MAAMxH,QAAAA,GAAW+G,QAAQtD,SAAS;AAElC,IAAA,MAAMgE,cAAcC,qBAAAA,CAAsB1H,QAAAA,CAAAA;AAE1C,IAAA,MAAM2H,qBAAqBpF,0BAAAA,CAA2BvC,QAAAA,CAAAA;IACtD,MAAM4H,eAAAA,GAAkBD,mBAAmBzG,OAAO;AAElD,IAAA,MAAMU,WACLmF,OAAAA,CAAQnF,QAAQ,IAChBiG,2BAAAA,CACCC,eAAAA,EACAH,mBAAmBzG,OAAO,CAAA;AAG5B,IAAA,MAAM,EAAEe,MAAM,EAAE8F,SAAS,EAAE,GAAG7F,uBAAAA,CAAwByF,kBAAAA,CAAAA;IAEtD,MAAMK,aAAAA,GAAgBjB,OAAAA,CAAQ9E,MAAM,IAAIA,MAAAA;IACxC,MAAMgG,gBAAAA,GAAmBlB,OAAAA,CAAQgB,SAAS,IAAIA,SAAAA;AAE9C,IAAA,MAAMG,oBAAoBC,wBAAAA,CAAyBX,SAAAA,CAAAA;IAEnD,IAAIY,UAAAA;IACJ,IAAI;QACHA,UAAAA,GAAaC,sBAAAA,CAAuBtB,QAAQqB,UAAU,CAAA;AACvD,IAAA,CAAA,CAAE,OAAOpF,GAAAA,EAAK;AACb,QAAA,MAAM,IAAImC,KAAAA,CAAM,CAAC,+CAA+C,CAAC,CAAA;AAClE,IAAA;AAEAwC,IAAAA,kBAAAA,CAAmBW,OAAO,GAAGF,UAAAA,CAAW7B,eAAe,CAAC;QACvDnB,WAAAA,EAAa;AACd,KAAA,CAAA;AACAzC,IAAAA,2BAAAA,CAA4B3C,QAAAA,EAAU2H,kBAAAA,CAAAA;IAEtC,IAAIS,UAAAA,CAAWhD,WAAW,GAAG,GAAA,EAAK;AACjCgD,QAAAA,UAAAA,CAAW/C,UAAU,GAAG;YACvBC,IAAAA,EAAM,MAAA;AACNN,YAAAA,OAAAA,EAASoD,WAAWhD;AACrB,SAAA;AACD,IAAA,CAAA,MAAO,IAAIgD,UAAAA,CAAWhD,WAAW,GAAG,GAAA,EAAK;AACxCgD,QAAAA,UAAAA,CAAW/C,UAAU,GAAG;YACvBC,IAAAA,EAAM,OAAA;YACNN,OAAAA,EAASoD,UAAAA,CAAWhD,WAAW,GAAG;AACnC,SAAA;AACD,IAAA;;;;;;;;;;AAYA,IAAA,MAAMrD,MAAAA,GAASgF,OAAAA,CAAQwB,MAAM,IAAIC,sBAAAA,CAAuBhB,SAAAA,CAAAA;IACxD,MAAM1G,IAAAA,CAAG2H,KAAK,CAAC1G,MAAAA,EAAQ;QAAE2G,SAAAA,EAAW;AAAK,KAAA,CAAA;IAEzC,IAAIC,yBAAAA;IAEJ,IAAIC,sBAAAA;AAEJ,IAAA;QACC,MAAMC,sBAAAA,GAAyBT,WAAWU,KAAK,EAAA;AAC/CD,QAAAA,sBAAAA,CAAuBxD,UAAU,GAAG1E,SAAAA;QACpC,MAAMsG,gBAAAA,GAAmB4B,sBAAAA,CAAuBtC,eAAe,CAAC;YAC/DnB,WAAAA,EAAa;AACd,SAAA,CAAA;AACAwD,QAAAA,sBAAAA,GAAyB,GAAGjB,kBAAAA,CAAmBzG,OAAO,CAAC,CAAC,EAAE+F,gBAAAA,CAAAA,CAAkB;QAE5E0B,yBAAAA,GAA4B;AAC3BjC,YAAAA,IAAAA,EAAMiB,mBAAmBzG,OAAO;YAChC8D,OAAAA,EAASiC;AACV,SAAA;AACD,IAAA;AAEA,IAAA,IAAI8B,WAAAA,GAAc/H,IAAAA,CAAKC,IAAI,CAACc,QAAQ6G,sBAAAA,GAAyB,MAAA,CAAA;AAK7D,IAAA,IAAII,UAAAA,GAAyB;AAC5BC,QAAAA,SAAAA,EAAW,IAAMlI,gBAAAA,CAAiBgI,WAAAA;AACnC,KAAA;IAEA,IAAI;QACH,IAAIhC,OAAAA,CAAQmC,QAAQ,EAAE;YACrB,MAAMC,aAAAA,GAAgB,MAAMrI,IAAAA,CAAGsI,IAAI,CAACL,WAAAA,CAAAA,CAAaM,KAAK,CAAC,CAACrG,GAAAA,GAAAA;AACvD,gBAAA,IAAIC,cAAcD,GAAAA,CAAAA,EAAM;oBACvB,OAAO,KAAA;AACR,gBAAA;gBACA,OAAOsG,OAAAA,CAAQC,MAAM,CAACvG,GAAAA,CAAAA;AACvB,YAAA,CAAA,CAAA;AAEA,YAAA,IAAImG,aAAAA,EAAe;AAClB,gBAAA,MAAM,IAAIhE,KAAAA,CACT,CAAC,qCAAqC,EAAE4D,WAAAA,CAAY,4BAA4B,CAAC,CAAA;AAEnF,YAAA;QACD,CAAA,MAAO;YACN,MAAMS,qBAAAA,GAAwB,MAAMC,4BAAAA,CACnCjC,SAAAA,EACAxH,QAAAA,CAAAA;YAGD,IAAIyH,WAAAA,CAAYiC,MAAM,EAAE;gBACvBjC,WAAAA,CAAYkC,KAAK,CAAC/B,eAAAA,EAAiBQ,UAAAA,CAAAA;AACpC,YAAA;AAEA,YAAA,MAAMwB,UAAAA,GACL1B,iBAAAA,KAAsBvH,SAAAA,GACnBkJ,sBAAAA,CAAuB3B,iBAAAA,CAAAA,GACvBvH,SAAAA;AAEJ,YAAA,MAAMmJ,YAAAA,CAAa;AAClB,gBAAA,GAAG/C,OAAO;gBACVgD,QAAAA,EAAU;AAAC/J,oBAAAA;AAAS,iBAAA;gBACpBgK,MAAAA,EAAQjD,OAAAA,CAAQiD,MAAM,GACnB;oBACAC,IAAAA,EAAML,UAAAA;AACNM,oBAAAA,MAAAA,EAAQV,sBAAsBU,MAAM;AACpCC,oBAAAA,WAAAA,EAAaX,sBAAsBY,KAAK;oBACxCpF,OAAAA,EAASoD,UAAAA,CAAW7B,eAAe,CAAC;wBACnCnB,WAAAA,EAAa;AACd,qBAAA,CAAA;oBACAjC,IAAAA,EAAM,IAAIC,IAAAA,CAAKA,IAAAA,CAAKC,GAAG,EAAA;iBAIvB,GACA1C,SAAAA;gBACH0J,gBAAAA,EAAkBzI;AACnB,aAAA,CAAA;AAEAwG,YAAAA,UAAAA,CAAW/C,UAAU,GAAG1E,SAAAA;YAExB,IAAI;gBACH,MAAMG,IAAAA,CAAGwJ,EAAE,CAACvB,WAAAA,CAAAA;AACb,YAAA,CAAA,CAAE,OAAO/F,GAAAA,EAAK;gBACb,IAAI,CAACC,cAAcD,GAAAA,CAAAA,EAAM;oBACxB,MAAMA,GAAAA;AACP,gBAAA;AACD,YAAA;AAEA,YAAA,IAAIuH,wBAAAA,CAAyBvK,QAAAA,CAAAA,CAAU2E,MAAM,GAAG,CAAA,EAAG;AAClD,gBAAA,MAAM6F,oBAAoBrC,wBAAAA,CAAyBX,SAAAA,CAAAA;AAEnD,gBAAA,IACC,CAACgD,iBAAAA,CAAkBC,YAAY,GAC9B,0CACA,EACA;oBACD,MAAMC,OAAAA,GAAU,MAAM3D,OAAAA,CAAQxC,QAAQ,CAACoG,OAAO,CAC7C,CAAC,uJAAuJ,CAAC,CAAA;AAG1J,oBAAA,IAAID,OAAAA,EAAS;AACZ,wBAAA,MAAMtD,SAAAA,CACL,CAAC,mDAAmD,CAAC,EACrD;4BACCrE,QAAAA,EAAU,OAAA;AACV6H,4BAAAA,GAAAA,EAAKpD,UAAUxG;AAChB,yBAAA,CAAA;AAGD,wBAAA,MAAMoG,SAAAA,CAAU,CAAC,mBAAmB,CAAC,EAAE;AACtCwD,4BAAAA,GAAAA,EAAKpD,UAAUxG;AAChB,yBAAA,CAAA;AACD,oBAAA;AACD,gBAAA;AACD,YAAA;AAEAY,YAAAA,QAAAA,CAASS,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAA;YAEhC,MAAMlC,OAAAA,GAAU,MAAMwB,uBAAAA,CACrBC,QAAAA,EACA5B,UACA2H,kBAAAA,EACA5F,MAAAA,EACAgF,QAAQ8D,QAAQ,CAAA;YAGjB,IAAI;AACH,gBAAA,MAAMC,kBAAkBC,iBAAAA,CAAkBhC,WAAAA,CAAAA;gBAC1C,MAAMiC,QAAAA,CAAS7K,OAAAA,CAAQ8K,kBAAkB,EAAA,EAAIH,eAAAA,CAAAA;AAC9C,YAAA,CAAA,CAAE,OAAO9H,GAAAA,EAAK;gBACb,IAAIkI,aAAAA,CAAclI,GAAAA,CAAAA,IAAQmI,YAAAA,CAAanI,GAAAA,CAAAA,EAAM;AAC5CpB,oBAAAA,QAAAA,CAASS,GAAG,CACX,CAAC,sGAAsG,CAAC,CAAA;oBAEzG2G,UAAAA,GAAa;wBACZC,SAAAA,EAAW,IAAM9I,QAAQ8K,kBAAkB;AAC5C,qBAAA;gBACD,CAAA,MAAO;oBACN,MAAMjI,GAAAA;AACP,gBAAA;AACD,YAAA;AACD,QAAA;QAEA,IAAI,CAAC+D,OAAAA,CAAQqE,QAAQ,EAAE;YACtB,IAAI,CAACrE,OAAAA,CAAQsE,cAAc,EAAE;AAC5B,gBAAA,MAAM,IAAIlG,KAAAA,CAAM,CAAC,uCAAuC,CAAC,CAAA;AAC1D,YAAA;AAEAvD,YAAAA,QAAAA,CAASS,GAAG,CAAC,CAAC,qCAAqC,CAAC,CAAA;YAEpD,MAAMiC,cAAAA,GAAiB,MAAMX,gCAAAA,CAAiC;AAC7D2H,gBAAAA,GAAAA,EAAKvE,QAAQwE,OAAO;AACpBC,gBAAAA,OAAAA,EAASzE,QAAQyE,OAAO;gBACxBvJ,MAAAA,EAAQ+F,aAAAA;gBACR/D,SAAAA,EAAWgE,gBAAAA;AACXoD,gBAAAA,cAAAA,EAAgBtE,QAAQsE;AACzB,aAAA,CAAA;YAEA,IAAI;gBACH,IAAI,CAACtE,OAAAA,CAAQ0E,gBAAgB,EAAE;oBAC9B,IAAI;AACH,wBAAA,MAAMrH,wBACLoD,SAAAA,EACAG,kBAAAA,EACArD,cAAAA,EACAyC,OAAAA,CAAQxC,QAAQ,EAChB3C,QAAAA,CAAAA;AAEF,oBAAA,CAAA,CAAE,OAAOoB,GAAAA,EAAK;wBACbpB,QAAAA,CAAS8B,KAAK,CACb,CAAC,uCAAuC,EAAEiE,kBAAAA,CAAmBzG,OAAO,EAAE,EACtE8B,GAAAA,CAAAA;AAEF,oBAAA;AACD,gBAAA;gBAEApB,QAAAA,CAASS,GAAG,CACX,CAAC,qBAAqB,EAAE2F,aAAAA,CAAc,CAAC,EAAEC,gBAAAA,CAAAA,CAAkB,CAAA;gBAG5D,MAAMnE,uBAAoC,CACzCQ,cAAAA,CAAeJ,gBAAgB,IAC/ByE,yBAAAA,EACA,MAAM+C,MAAAA,CAAO1C,UAAAA,CAAWC,SAAS,EAAA,CAAA,CAAA;YAEnC,CAAA,QAAU;AACT,gBAAA,MAAM3E,cAAAA,CAAeH,OAAO,EAAA,CAAGkF,KAAK,CAAC,CAACrG,GAAAA,GAAAA;AACrCpB,oBAAAA,QAAAA,CAAS8B,KAAK,CACb,CAAC,0CAA0C,CAAC,EAC5CV,GAAAA,CAAAA;AAEF,gBAAA,CAAA,CAAA;AACD,YAAA;AACD,QAAA;AACD,IAAA,CAAA,CAAE,OAAOA,GAAAA,EAAK;AACbyE,QAAAA,WAAAA,CAAYkE,KAAK,EAAA;QACjB,MAAM3I,GAAAA;AACP,IAAA;AAEA,IAAA,IAAIoF,WAAWhD,WAAW,IAAI,OAAO,CAAC2B,OAAAA,CAAQmC,QAAQ,EAAE;AACvDtH,QAAAA,QAAAA,CAAS8B,KAAK,CAAC,gCAAA,CAAA;AAEf,QAAA,MAAMkI,WAAAA,GAAc,CAAA,EAAGhD,sBAAAA,CAAuB,IAAI,CAAC;AACnD,QAAA,MAAMiD,eAAeC,2BAAAA,CAA4B9L,QAAAA,CAAAA;QAEjD,MAAMc,IAAAA,CAAG2H,KAAK,CAACoD,YAAAA,EAAc;YAAEnD,SAAAA,EAAW;AAAK,SAAA,CAAA;QAC/C,MAAMsC,QAAAA,CACLhC,WAAWC,SAAS,EAAA,EACpB8B,kBAAkB/J,IAAAA,CAAKC,IAAI,CAAC4K,YAAAA,EAAcD,WAAAA,CAAAA,CAAAA,CAAAA;AAE5C,IAAA;AACD;;;;"}
1
+ {"version":3,"file":"index-Dcu2jMcl.mjs","sources":["../src/commands/publish/zip.ts","../src/lib/assetServiceSessionManager.ts","../src/lib/dependencySync.ts","../src/commands/publish/index.ts"],"sourcesContent":["import JSZip from \"jszip\";\nimport * as path from \"path\";\nimport * as fs from \"fs\";\n\nimport { isErrorENOENT } from \"../../lib/error\";\nimport {\n\tCreatorPackage,\n\treadPackageCreatorManifest,\n\twritePackageCreatorManifest,\n\treadPackageCreatorIndex,\n\tparseCreatorPackageName,\n\tPackageLocation,\n\tPackageNpmManifest,\n\tINDEX_FILE,\n\tPACKAGE_FILE,\n} from \"../../lib/package\";\nimport {\n\tPublishedPackageLocation,\n\treadPublishedPackageCreatorIndex,\n} from \"../../lib/publishedPackage\";\nimport { Reporter } from \"@intelligentgraphics/ig.gfx.tools.core\";\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\tif (creatorPackage.Package === \"IG.GFX.Standard\") {\n\t\tconst source = path.join(location.path, \"Images\");\n\n\t\tif (fs.existsSync(source)) {\n\t\t\tconst images = fs.readdirSync(source);\n\n\t\t\tfor (const file of images) {\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(source, file)),\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn archive;\n};\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\treporter: Reporter,\n\tpackageLocation: PackageLocation,\n\tdata: CreatorPackage,\n\tbinDir: string,\n\tminified = true,\n) => {\n\tconst { domain } = parseCreatorPackageName(data);\n\n\tconst scriptDirectories: string[] = [\n\t\tpackageLocation.path,\n\t\tpackageLocation.scriptsDir,\n\t];\n\n\tif (data.Package === \"IG.GFX.Standard\") {\n\t\treporter.log(`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\treporter.log(\n\t\t\t\t\"Setting script RunTime to false because of script type\",\n\t\t\t);\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\treporter.log(\n\t\t\t\t\"Setting script RunTime to true because of script type\",\n\t\t\t);\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\tlet libFile: string | undefined;\n\n\ttry {\n\t\tconst libFilePath = minified\n\t\t\t? path.join(binDir, `${data.Package}.min.js`)\n\t\t\t: path.join(binDir, `${data.Package}.js`);\n\n\t\tlibFile = fs.readFileSync(libFilePath, {\n\t\t\tencoding: \"utf8\",\n\t\t});\n\t} catch (err) {\n\t\tif (!isErrorENOENT(err)) {\n\t\t\tthrow err;\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\tarchive.file(`${data.Package}.js`, library);\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\treporter.error(`Script directory \"${directory}\" does not exist`);\n\t\t}\n\t}\n\n\treturn archive;\n};\n","import { AssetService } from \"@intelligentgraphics/ig.gfx.tools.core\";\n\nexport interface AssetServiceSessionManager {\n\tgetBasicsSession: () => Promise<AssetService.Session>;\n\tgetTargetSession: () => AssetService.Session;\n\tdestroy: () => Promise<void>;\n}\n\nexport const createAssetServiceSessionManager = async (\n\tparams: AssetService.SessionStartParams,\n): Promise<AssetServiceSessionManager> => {\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","import {\n\tWorkspaceLocation,\n\tCreatorPackage,\n\tAssetService,\n\tdetermineWorkspaceIGLibraries,\n\treadPublishedPackageNpmManifest,\n\treadPublishedPackageCreatorManifest,\n\tReporter,\n} from \"@intelligentgraphics/ig.gfx.tools.core\";\nimport { buildArchiveFromPublishedPackage } from \"../commands/publish/zip\";\nimport { AssetServiceSessionManager } from \"./assetServiceSessionManager\";\nimport { PackageVersion } from \"./packageVersion\";\nimport { parseVersionFromNumericVersion } from \"./parseVersion\";\nimport { Prompter, PrompterOption } from \"./prompter\";\nimport { Readable } from \"node:stream\";\n\nexport const synchronizeDependencies = async (\n\tworkspaceLocation: WorkspaceLocation,\n\tcreatorPackage: CreatorPackage | undefined,\n\tsessionManager: AssetServiceSessionManager,\n\tprompter: Prompter,\n\treporter: Reporter,\n\tlogUpToDate: boolean = false,\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\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\tuploadedPackageInBasics !== undefined &&\n\t\t\t\tuploadedPackageInTarget !== undefined\n\t\t\t) {\n\t\t\t\treporter.log(\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\n\t\t\tif (logUpToDate) {\n\t\t\t\treporter.log(\n\t\t\t\t\t`Package ${\n\t\t\t\t\t\tlibraryCreatorPackage.Package\n\t\t\t\t\t} is already uploaded with the required version ${libraryVersion.toVersionString(\n\t\t\t\t\t\t{},\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst possibleTargets: PrompterOption[] = [];\n\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\tpossibleTargets.push({\n\t\t\t\tvalue: \"Basics\",\n\t\t\t\tname: `Basics (Current: ${version})`,\n\t\t\t});\n\t\t} else {\n\t\t\tpossibleTargets.push({\n\t\t\t\tvalue: \"Basics\",\n\t\t\t\tname: \"Basics (Current: None)\",\n\t\t\t});\n\t\t}\n\n\t\tif (targetSession.subDomain !== \"Basics\") {\n\t\t\tif (uploadedPackageInTarget) {\n\t\t\t\tconst version = uploadedPackageInTarget.version.toVersionString(\n\t\t\t\t\t{\n\t\t\t\t\t\tbuildNumber: true,\n\t\t\t\t\t},\n\t\t\t\t);\n\n\t\t\t\tpossibleTargets.push({\n\t\t\t\t\tvalue: targetSession.subDomain,\n\t\t\t\t\tname: `${targetSession.subDomain} (Current: ${version})`,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tpossibleTargets.push({\n\t\t\t\t\tvalue: targetSession.subDomain,\n\t\t\t\t\tname: `${targetSession.subDomain} (Current: None)`,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tconst libraryVersionString = libraryVersion.toVersionString({\n\t\t\tbuildNumber: true,\n\t\t});\n\n\t\tconst uploadTargetScope = await prompter.ask({\n\t\t\tmessage: `Version ${libraryVersionString} of dependency ${libraryCreatorPackage.Package} is required but not available. Please select a subdomain to upload the correct dependency version to`,\n\t\t\toptions: [\n\t\t\t\t...possibleTargets,\n\t\t\t\t{ name: \"Skip upload\", value: \"Skip\" },\n\t\t\t],\n\t\t\tdefault: possibleTargets[0].value,\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\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\treporter.log(\n\t\t\t`Uploading package ${libraryCreatorPackage.Package} with version ${newVersionString} to ${session.domain}.${session.subDomain}`,\n\t\t);\n\n\t\tawait AssetService.uploadPackageFromBuffer(\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\tawait archive.generateAsync({ type: \"nodebuffer\" }),\n\t\t);\n\t}\n};\n","import * as path from \"path\";\nimport * as fs from \"fs/promises\";\nimport { createReadStream, createWriteStream } from \"fs\";\nimport { pipeline } from \"stream/promises\";\nimport { exec } from \"child_process\";\nimport { promisify } from \"util\";\n\nimport {\n\tAssetService,\n\tconsoleReporter,\n\tcreatePackageScopedReporter,\n\tisErrorEACCES,\n\tisErrorEPERM,\n\tReporter,\n\twritePackageCreatorManifest,\n} from \"@intelligentgraphics/ig.gfx.tools.core\";\n\nimport {\n\tgetPackageReleasesDirectory,\n\tPackageLocation,\n\tparseCreatorPackageName,\n\treadPackageAnimationList,\n\treadPackageCreatorManifest,\n} from \"../../lib/package\";\nimport {\n\tgetWorkspaceOutputPath,\n\treadWorkspaceNpmManifest,\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 { isErrorENOENT } from \"../../lib/error\";\nimport { Prompter } from \"../../lib/prompter\";\nimport { PackageVersion } from \"../../lib/packageVersion\";\nimport { BuildFoldersOptions, buildFolders } from \"../build\";\nimport { buildArchiveFromPackage } from \"./zip\";\nimport { createAssetServiceSessionManager } from \"../../lib/assetServiceSessionManager\";\nimport { synchronizeDependencies } from \"../../lib/dependencySync\";\nimport { buffer } from \"node:stream/consumers\";\n\nexport interface ReleaseFolderOptions\n\textends Omit<\n\t\tBuildFoldersOptions,\n\t\t\"skipPackagesWithoutTsFiles\" | \"banner\" | \"packages\"\n\t> {\n\tdirectory: PackageLocation;\n\tnoUpload: boolean;\n\tnewVersion: string;\n\tdomain?: string;\n\tsubdomain?: string;\n\taddress?: string;\n\tservice: string;\n\tauthentication?: AssetService.Authentication;\n\tpushOnly: boolean;\n\tbanner?: boolean;\n\tprompter: Prompter;\n\tskipDependencies?: boolean;\n\treporter?: Reporter;\n}\n\nconst execAsync = promisify(exec);\n\nexport const releaseFolder = async (options: ReleaseFolderOptions) => {\n\tconst workspace = options.workspace;\n\tconst location = options.directory;\n\n\tconst versionFile = getVersionFileHandler(location);\n\n\tconst packageDescription = readPackageCreatorManifest(location);\n\tconst fullPackageName = packageDescription.Package;\n\n\tconst reporter =\n\t\toptions.reporter ??\n\t\tcreatePackageScopedReporter(\n\t\t\tconsoleReporter,\n\t\t\tpackageDescription.Package,\n\t\t);\n\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\tpackageDescription.Version = newVersion.toVersionString({\n\t\tbuildNumber: true,\n\t});\n\twritePackageCreatorManifest(location, packageDescription);\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\t// if (sharedPackageJson !== undefined) {\n\t// \treporter.log(\n\t// \t\t`Running npm install to make sure all dependencies are up to date`,\n\t// \t);\n\t// \tawait execAsync(`npm install`, {\n\t// \t\tencoding: \"utf-8\",\n\t// \t\tcwd: workspace.path,\n\t// \t});\n\t// }\n\n\tconst binDir = options.outDir ?? getWorkspaceOutputPath(workspace);\n\tawait fs.mkdir(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\tlet zipFilePath = path.join(binDir, packageNameWithVersion + \".zip\");\n\tinterface Uploadable {\n\t\tgetStream: () => NodeJS.ReadableStream;\n\t}\n\n\tlet uploadable: Uploadable = {\n\t\tgetStream: () => createReadStream(zipFilePath),\n\t};\n\n\ttry {\n\t\tif (options.pushOnly) {\n\t\t\tconst zipFileExists = await fs.stat(zipFilePath).catch((err) => {\n\t\t\t\tif (isErrorENOENT(err)) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\treturn Promise.reject(err);\n\t\t\t});\n\n\t\t\tif (zipFileExists) {\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\tif (versionFile.exists) {\n\t\t\t\tversionFile.write(fullPackageName, newVersion);\n\t\t\t}\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\tpackages: [location],\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\tpreparedReporter: reporter,\n\t\t\t});\n\n\t\t\tnewVersion.preRelease = undefined;\n\n\t\t\ttry {\n\t\t\t\tawait fs.rm(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\tif (readPackageAnimationList(location).length > 0) {\n\t\t\t\tconst workspaceManifest = readWorkspaceNpmManifest(workspace);\n\n\t\t\t\tif (\n\t\t\t\t\t!workspaceManifest.dependencies?.[\n\t\t\t\t\t\t\"@intelligentgraphics/3d.ig.gfx.standard\"\n\t\t\t\t\t]\n\t\t\t\t) {\n\t\t\t\t\tconst install = await options.prompter.confirm(\n\t\t\t\t\t\t`The IG.GFX.Standard package should be added as a dependency to provide the 'AnimationInteractor' used to display animations. Do you wish to add it now?`,\n\t\t\t\t\t);\n\n\t\t\t\t\tif (install) {\n\t\t\t\t\t\tawait execAsync(\n\t\t\t\t\t\t\t`npm install @intelligentgraphics/3d.ig.gfx.standard`,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tencoding: \"utf-8\",\n\t\t\t\t\t\t\t\tcwd: workspace.path,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tawait execAsync(`npm run postinstall`, {\n\t\t\t\t\t\t\tcwd: workspace.path,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treporter.log(`Creating zip file`);\n\n\t\t\tconst archive = await buildArchiveFromPackage(\n\t\t\t\treporter,\n\t\t\t\tlocation,\n\t\t\t\tpackageDescription,\n\t\t\t\tbinDir,\n\t\t\t\toptions.minimize,\n\t\t\t);\n\n\t\t\ttry {\n\t\t\t\tconst zipOutputStream = createWriteStream(zipFilePath);\n\t\t\t\tawait pipeline(archive.generateNodeStream(), zipOutputStream);\n\t\t\t} catch (err) {\n\t\t\t\tif (isErrorEACCES(err) || isErrorEPERM(err)) {\n\t\t\t\t\treporter.log(\n\t\t\t\t\t\t`Could not create zip file in the bin directory because of a permissions error. Only using it in-memory`,\n\t\t\t\t\t);\n\t\t\t\t\tuploadable = {\n\t\t\t\t\t\tgetStream: () => archive.generateNodeStream(),\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t}\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\treporter.log(`Opening connection to IG.Asset.Server`);\n\n\t\t\tconst sessionManager = await createAssetServiceSessionManager({\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 (!options.skipDependencies) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tawait synchronizeDependencies(\n\t\t\t\t\t\t\tworkspace,\n\t\t\t\t\t\t\tpackageDescription,\n\t\t\t\t\t\t\tsessionManager,\n\t\t\t\t\t\t\toptions.prompter,\n\t\t\t\t\t\t\treporter,\n\t\t\t\t\t\t);\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\treporter.error(\n\t\t\t\t\t\t\t`Failed to synchronize dependencies for ${packageDescription.Package}`,\n\t\t\t\t\t\t\terr,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treporter.log(\n\t\t\t\t\t`Uploading package to ${publishDomain}.${publishSubdomain}`,\n\t\t\t\t);\n\n\t\t\t\tawait AssetService.uploadPackageFromBuffer(\n\t\t\t\t\tsessionManager.getTargetSession(),\n\t\t\t\t\tassetServerPackageDetails,\n\t\t\t\t\tawait buffer(uploadable.getStream()),\n\t\t\t\t);\n\t\t\t} finally {\n\t\t\t\tawait sessionManager.destroy().catch((err) => {\n\t\t\t\t\treporter.error(\n\t\t\t\t\t\t`Failed to close IG.Asset.Server session(s)`,\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}\n\t} catch (err) {\n\t\tversionFile.reset();\n\t\tthrow err;\n\t}\n\n\tif (newVersion.buildNumber >= 100 && !options.pushOnly) {\n\t\treporter.error(\"Copying zip to releases folder\");\n\n\t\tconst zipFileName = `${packageNameWithVersion}.zip`;\n\t\tconst releasesPath = getPackageReleasesDirectory(location);\n\n\t\tawait fs.mkdir(releasesPath, { recursive: true });\n\t\tawait pipeline(\n\t\t\tuploadable.getStream(),\n\t\t\tcreateWriteStream(path.join(releasesPath, zipFileName)),\n\t\t);\n\t}\n};\n"],"names":["buildArchiveFromPublishedPackage","location","manifest","creatorPackage","archive","JSZip","file","PACKAGE_FILE","JSON","stringify","index","readPublishedPackageCreatorIndex","undefined","INDEX_FILE","main","fs","createReadStream","path","join","Package","source","existsSync","images","readdirSync","ext","parse","runtimeScripts","notRuntimeScripts","buildArchiveFromPackage","reporter","packageLocation","data","binDir","minified","domain","parseCreatorPackageName","scriptDirectories","scriptsDir","log","push","readPackageCreatorManifest","RunTime","includes","Type","writePackageCreatorManifest","libFile","libFilePath","readFileSync","encoding","err","isErrorENOENT","library","date","Date","now","getFullYear","creatorIndex","readPackageCreatorIndex","directory","error","createAssetServiceSessionManager","params","targetSession","AssetService","basicsSession","getBasicsSession","subDomain","getTargetSession","destroy","synchronizeDependencies","workspaceLocation","sessionManager","prompter","logUpToDate","libraries","determineWorkspaceIGLibraries","length","rawUploadedPackages","uploadedPackages","map","entry","version","parseVersionFromNumericVersion","numericVersion","Error","buildNumber","preRelease","type","libraryLocation","libraryManifest","readPublishedPackageNpmManifest","libraryCreatorPackage","readPublishedPackageCreatorManifest","libraryVersion","PackageVersion","extractFromLine","uploadedPackageInBasics","uploadedPackageInTarget","uploadedPackage","scope","support","validInBasics","isLesserThan","validInTarget","toVersionString","possibleTargets","value","name","libraryVersionString","uploadTargetScope","ask","message","options","default","newVersionString","session","generateAsync","execAsync","promisify","exec","releaseFolder","workspace","versionFile","getVersionFileHandler","packageDescription","fullPackageName","createPackageScopedReporter","consoleReporter","subdomain","publishDomain","publishSubdomain","sharedPackageJson","readWorkspaceNpmManifest","newVersion","parseVersionFromString","Version","outDir","getWorkspaceOutputPath","mkdir","recursive","assetServerPackageDetails","packageNameWithVersion","versionWithoutPrelease","clone","zipFilePath","uploadable","getStream","pushOnly","zipFileExists","stat","catch","Promise","reject","gitVersionInformation","getVersionInformationFromGit","exists","write","bannerText","getWorkspaceBannerText","buildFolders","packages","banner","text","commit","commitDirty","dirty","preparedReporter","rm","readPackageAnimationList","workspaceManifest","dependencies","install","confirm","cwd","minimize","zipOutputStream","createWriteStream","pipeline","generateNodeStream","isErrorEACCES","isErrorEPERM","noUpload","authentication","url","service","address","skipDependencies","buffer","reset","zipFileName","releasesPath","getPackageReleasesDirectory"],"mappings":"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"}
@@ -5,9 +5,9 @@ import { EOL } from 'os';
5
5
  import ts from 'typescript';
6
6
  import * as fs from 'fs';
7
7
  import 'resolve';
8
- import 'write-pkg';
9
- import { e as readPackageAnimationList, r as readPackageCreatorManifest, q as readPackageNpmManifest, i as isErrorENOENT } from './cli-CRt1pnL8.mjs';
10
- import { g as getPackageTypescriptFiles, i as isScriptPackageModules } from './scripts-BmQnbRem.mjs';
8
+ import 'write-package';
9
+ import { e as readPackageAnimationList, r as readPackageCreatorManifest, q as readPackageNpmManifest, i as isErrorENOENT } from './cli-IlMWNOvf.mjs';
10
+ import { g as getPackageTypescriptFiles, i as isScriptPackageModules } from './scripts-B3noxiX3.mjs';
11
11
  import 'axios';
12
12
  import EventEmitter from 'events';
13
13
  import { SourceMapGenerator, SourceMapConsumer } from 'source-map-js';
@@ -136,6 +136,7 @@ const createTSCWatchBuildParticipant = (location, outputDir, skipDeclarations)=>
136
136
  }
137
137
  state.diagnostics.push(diagnostic);
138
138
  };
139
+ let currentProgram;
139
140
  const reportWatchStatusChanged = (diagnostic)=>{
140
141
  switch(diagnostic.code){
141
142
  // regular watch mode - https://github.com/microsoft/TypeScript/blob/93e6b9da0c4cb164ca90a5a1b07415e81e97f2b1/src/compiler/diagnosticMessages.json#L4567
@@ -165,7 +166,7 @@ const createTSCWatchBuildParticipant = (location, outputDir, skipDeclarations)=>
165
166
  });
166
167
  return;
167
168
  }
168
- if (emitState.js === undefined || emitState.definitions === undefined) {
169
+ if (emitState.js === undefined) {
169
170
  onBuildEnd({
170
171
  type: "success",
171
172
  artefacts: {
@@ -174,11 +175,14 @@ const createTSCWatchBuildParticipant = (location, outputDir, skipDeclarations)=>
174
175
  });
175
176
  return;
176
177
  }
178
+ if (!currentProgram) {
179
+ throw new Error(`Expected a program to exist`);
180
+ }
177
181
  onBuildEnd({
178
182
  type: "success",
179
183
  artefacts: {
180
184
  js: emitState.js.replace(`//# sourceMappingURL=out.js.map`, ""),
181
- declarations: getDeclarationFileReferences(location, watchProgram.getProgram(), outputDir) + emitState.definitions,
185
+ declarations: emitState.definitions ? getDeclarationFileReferences(location, currentProgram, outputDir) + emitState.definitions : undefined,
182
186
  sourceMap: emitState.sourceMap
183
187
  }
184
188
  });
@@ -186,6 +190,11 @@ const createTSCWatchBuildParticipant = (location, outputDir, skipDeclarations)=>
186
190
  }
187
191
  };
188
192
  const host = ts.createWatchCompilerHost(path.join(location.scriptsDir, "tsconfig.json"), getCompilerOptions(location, outputDir, skipDeclarations), customSys, ts.createSemanticDiagnosticsBuilderProgram, registerDiagnostic, reportWatchStatusChanged);
193
+ const originalAfterProgramCreate = host.afterProgramCreate;
194
+ host.afterProgramCreate = (program)=>{
195
+ currentProgram = program;
196
+ originalAfterProgramCreate?.(program);
197
+ };
189
198
  const formattingHost = {
190
199
  getCanonicalFileName: (path)=>path,
191
200
  getCurrentDirectory: host.getCurrentDirectory,
@@ -266,7 +275,7 @@ const toposort = (packages)=>{
266
275
 
267
276
  class BuildManager extends EventEmitter {
268
277
  constructor(manifest, writer, reporter){
269
- super(), this.manifest = manifest, this.writer = writer, this.reporter = reporter, this.participants = new Map(), this.states = new Map();
278
+ super(), this.manifest = manifest, this.writer = writer, this.reporter = reporter, this.participants = new Map(), this.states = new Map(), this.participantInstances = [];
270
279
  }
271
280
  addParticipant(name, participant) {
272
281
  this.participants.set(name, participant);
@@ -279,7 +288,7 @@ class BuildManager extends EventEmitter {
279
288
  }
280
289
  this.emit("start");
281
290
  for (const [name, participant] of this.participants){
282
- participant({
291
+ const instance = participant({
283
292
  onBuildStart: ()=>{
284
293
  let alreadyBusy = false;
285
294
  for (const [name, state] of this.states){
@@ -301,6 +310,12 @@ class BuildManager extends EventEmitter {
301
310
  },
302
311
  log: (message)=>this.reporter.log(message)
303
312
  });
313
+ this.participantInstances.push(instance);
314
+ }
315
+ }
316
+ destroy() {
317
+ for (const instance of this.participantInstances){
318
+ instance.destroy();
304
319
  }
305
320
  }
306
321
  maybeEmit() {
@@ -1038,10 +1053,12 @@ async function buildFolders(options) {
1038
1053
  }
1039
1054
  if (typescriptFiles.length > 0) {
1040
1055
  if (isScriptPackageModules(tsConfig.options)) {
1041
- const { createRollupBuildParticipant } = await import('./rollup-Dspsy6kv.mjs');
1042
- manager.addParticipant("rollup", createRollupBuildParticipant(location, data, outputDirectory, options.skipDeclarations ?? false));
1056
+ const { createRollupBuildParticipant } = await import('./rollup-DoDZFLyJ.mjs');
1057
+ manager.addParticipant("rollup", createRollupBuildParticipant(location, data, outputDirectory, !tsConfig.options.declaration));
1043
1058
  } else {
1044
- manager.addParticipant("tsc", createTSCBuildParticipant(location, outputDirectory, options.skipDeclarations ?? false));
1059
+ manager.addParticipant("tsc", createTSCBuildParticipant(location, outputDirectory, // in the past we always created declaration files,
1060
+ // so we'll use it as the default for legacy modules
1061
+ tsConfig.options.declaration === false));
1045
1062
  }
1046
1063
  }
1047
1064
  manager.addParticipant("animation", createAnimationBuildParticipant(location, data));
@@ -1076,6 +1093,7 @@ async function buildFoldersWatch(options) {
1076
1093
  }
1077
1094
  const workspace = options.workspace;
1078
1095
  const folders = options.packages;
1096
+ options.reporter ?? consoleReporter;
1079
1097
  let sortedPackages = sortPackagesByBuildOrder(folders);
1080
1098
  let index = 1;
1081
1099
  const manifests = new Map(sortedPackages.map((location)=>[
@@ -1083,11 +1101,12 @@ async function buildFoldersWatch(options) {
1083
1101
  readPackageCreatorManifest(location)
1084
1102
  ]));
1085
1103
  const maxNameLength = Array.from(manifests.values(), (manifest)=>manifest.Package.length).reduce((acc, length)=>Math.max(acc, length), 0);
1104
+ const managers = [];
1086
1105
  for (const location of sortedPackages){
1087
1106
  const tsConfig = await ensureTsConfig(location);
1088
1107
  const baseReporter = options.reporter ?? consoleReporter;
1089
1108
  const data = manifests.get(location);
1090
- const reporter = createPackageScopedReporter(baseReporter, data.Package, index, folders.length, maxNameLength);
1109
+ const reporter = options.preparedReporter ?? createPackageScopedReporter(baseReporter, data.Package, index, folders.length, maxNameLength);
1091
1110
  const outputDirectory = options.outDir || location.scriptsDir;
1092
1111
  await fs$1.mkdir(outputDirectory, {
1093
1112
  recursive: true
@@ -1102,10 +1121,12 @@ async function buildFoldersWatch(options) {
1102
1121
  }
1103
1122
  if (typescriptFiles.length > 0) {
1104
1123
  if (isScriptPackageModules(tsConfig.options)) {
1105
- const { createRollupWatchBuildParticipant } = await import('./rollup-Dspsy6kv.mjs');
1106
- manager.addParticipant("rollup", createRollupWatchBuildParticipant(location, data, outputDirectory, options.skipDeclarations ?? false));
1124
+ const { createRollupWatchBuildParticipant } = await import('./rollup-DoDZFLyJ.mjs');
1125
+ manager.addParticipant("rollup", createRollupWatchBuildParticipant(location, data, outputDirectory, !tsConfig.options.declaration));
1107
1126
  } else {
1108
- manager.addParticipant("tsc", createTSCWatchBuildParticipant(location, outputDirectory, options.skipDeclarations ?? false));
1127
+ manager.addParticipant("tsc", createTSCWatchBuildParticipant(location, outputDirectory, // in the past we always created declaration files,
1128
+ // so we'll use it as the default for legacy modules
1129
+ tsConfig.options.declaration === false));
1109
1130
  }
1110
1131
  }
1111
1132
  manager.addParticipant("animation", createAnimationWatchBuildParticipant(location, data));
@@ -1123,9 +1144,16 @@ async function buildFoldersWatch(options) {
1123
1144
  });
1124
1145
  manager.run();
1125
1146
  });
1147
+ managers.push(manager);
1126
1148
  index++;
1127
1149
  }
1128
- await new Promise(()=>{});
1150
+ return {
1151
+ destroy: ()=>{
1152
+ for (const manager of managers){
1153
+ manager.destroy();
1154
+ }
1155
+ }
1156
+ };
1129
1157
  }
1130
1158
  async function writeBuildResult(buildResult, manifest, location, workspace, outputDirectory, minimize, reporter) {
1131
1159
  let js = buildResult.js;
@@ -1339,4 +1367,4 @@ var index = /*#__PURE__*/Object.freeze({
1339
1367
  });
1340
1368
 
1341
1369
  export { PackageVersion as P, consoleReporter as a, buildFolders as b, createPackageScopedReporter as c, index as i };
1342
- //# sourceMappingURL=index-Sj6AX2Pu.mjs.map
1370
+ //# sourceMappingURL=index-w4ax9Zlz.mjs.map