@kontur.candy/tools 2.228.0 → 2.229.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.
@@ -44,7 +44,6 @@ function getGeneratorVersion(generatorSource) {
44
44
  async function runBuildForms(context, options, farmDirectory, resourcesDirectory, engineDirectory, candyModulesDirectory, hlFarmDirectoryPath) {
45
45
  const buildOptions = options;
46
46
  const pickListsChain = _Observe.Observe.files(_path.default.join(farmDirectory, "picklists"), "*.json").do(x => _FSTask.FSTask.copyRecursively(context.logger.withPrefix("PICKLISTS"), x, _path.default.join(resourcesDirectory, "picklists")));
47
- await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
48
47
  const formInfos = await _FormGlobsUtils.FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);
49
48
  const staticResourcesForProductionChain = _Observe.Observe.files(_path.default.join(__dirname, "..", "..", "StaticFilesForProductionResourcesDir"), "*.js", "*.js.map").do(x => _FSTask.FSTask.copyRecursively((0, _StaticLogger.getLogger)().withPrefix("STATICS"), x, _path.default.join(resourcesDirectory, "public", "scripts")));
50
49
 
@@ -1 +1 @@
1
- {"version":3,"file":"RunBuildForms.js","names":["_path","_interopRequireDefault","require","_chalk","_fsExtra","_nodeNotifier","_AcquireFormEngine","_EngineSource","_CompileForm","_GenerateForm","_NullFormGenerator","_WriteFLangNormalizationFiles","_FSTask","_AcquireFormGenerator","_PublishedVersionUtils","_ResolveFormInfo","_WriteFormMeta","_FormGlobsUtils","_StaticLogger","_Observe","_SingleValueProducer","_TimingUtils","_CacheAssetsPlugin","_TypingUtils","_WriteAttachmentPathFiles","_GetRngSchemaFileExtension","_FormPathUtils","_WellKnownDirectories","_WriteAttachmentPathByGfvFiles","_WriteAllKClangFiles","_WriteExtendedSchemaFiles","getGeneratorVersion","generatorSource","type","version","Error","runBuildForms","context","options","farmDirectory","resourcesDirectory","engineDirectory","candyModulesDirectory","hlFarmDirectoryPath","buildOptions","pickListsChain","Observe","files","path","join","do","x","FSTask","copyRecursively","logger","withPrefix","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","formInfos","resolveGfvGlobs","staticResourcesForProductionChain","__dirname","getLogger","resourcesExternalConvertersChain","empty","copiedEngines","Set","repositoryRoot","buildCache","BuildCache","buildCacheMode","createChainForForm","formRelativePath","gfv","extractGfvFromFormPath","formDirPath","pathExists","WellKnownDirectories","FormJsonFileName","warning","value","formSchemasDirPath","rngSchemaMask","getRngSchemaFileExtension","file","transform","formJsonFile","resolveFormInfo","upgradeFormJson","useLastStableVersion","usePrereleaseVersion","fi","mode","FormBuildMode","NormalBuild","generatorVersion","undefined","engineVersion","resolveGeneratorVersion","engineSource","resolveEngineVersion","attach","SingleValueProducer","NullFormGenerator","generatorFactory","useVersionFromCache","y","generator","getGeneratorSourceKey","engineFactory","has","getEngineSourceKey","add","watch","formSourcesPath","dependenciesHash","supportsDependenciesExtraction","getAllDependenciesHash","buildCacheExist","exists","_fi$dependenciesHash","log","generateForm","skipCodeReformatting","skipGeneratedCodeReformatting","resourcesHash","_fi$dependenciesHash2","_fi$dependenciesHash3","extract","buildCacheOptions","depsHash","compileForm","formName","reject","writeFormMeta","themes","writeFLangNormalizationFiles","writeAllKClangFiles","writeExtendedSchemaFiles","writeAttachmentPathFiles","writeAttachmentPathByGfvFiles","CopyLegacyPrebuiltResources","modifier","content","replace","modifyFilesContent","notifier","notify","title","message","buildFormsChain","fixedFormDirectories","map","relative","formPath","splitToParallelChains","clean","cleanTargetDirectory","stopObserve1","observe","stopObserve2","stopObserve3","stopObserve5","waitForExit","startDate","Date","now","currentValue","console","chalk","greenBright","totalTime","printTime","emptyDir"],"sources":["../../../../../src/CLICommands/BuildForms/RunBuildForms.ts"],"sourcesContent":["import path from \"path\";\n\nimport chalk from \"chalk\";\nimport { emptyDir, pathExists } from \"fs-extra\";\nimport notifier from \"node-notifier\";\n\nimport { engineFactory } from \"../../BuildTasks/Engine/AcquireFormEngine\";\nimport { getEngineSourceKey } from \"../../BuildTasks/Engine/EngineSource\";\nimport { compileForm } from \"../../BuildTasks/Form/CompileForm\";\nimport { generateForm } from \"../../BuildTasks/Form/GenerateForm\";\nimport { NullFormGenerator } from \"../../BuildTasks/Form/NullFormGenerator\";\nimport { writeFLangNormalizationFiles } from \"../../BuildTasks/Form/WriteFLangNormalizationFiles\";\nimport { FSTask } from \"../../BuildTasks/FSTask\";\nimport {\n generatorFactory,\n GeneratorSource,\n getGeneratorSourceKey,\n} from \"../../BuildTasks/Generator/AcquireFormGenerator\";\nimport { resolveEngineVersion, resolveGeneratorVersion } from \"../../BuildTasks/PublishedVersionUtils\";\nimport { FormBuildMode, resolveFormInfo } from \"../../BuildTasks/ResolveFormInfo\";\nimport { writeFormMeta } from \"../../BuildTasks/WriteFormMeta\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\nimport { getLogger } from \"../../Commons/Logging/StaticLogger\";\nimport { Observe } from \"../../Commons/TasksCore/Observe\";\nimport { SingleValueProducer } from \"../../Commons/TasksCore/SingleValueProducer\";\nimport { printTime } from \"../../Commons/TimingUtils\";\nimport { BuildCache } from \"../../FormWebpackConfiguration/CacheAssetsPlugin\";\nimport { reject } from \"../../../../Common/TypingUtils\";\nimport { writeAttachmentPathFiles } from \"../../BuildTasks/Form/WriteAttachmentPathFiles\";\nimport { ChainableValueProducer } from \"../../Commons/TasksCore/ChainableValueProducer\";\nimport { EmptyProducer } from \"../../Commons/TasksCore/EmptyProducer\";\nimport { getRngSchemaFileExtension } from \"../../../../Common/GetRngSchemaFileExtension\";\nimport { extractGfvFromFormPath } from \"../../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\nimport { writeAttachmentPathByGfvFiles } from \"../../BuildTasks/Form/WriteAttachmentPathByGfvFiles\";\nimport { writeAllKClangFiles } from \"../../BuildTasks/Form/WriteAllKClangFiles\";\nimport { writeExtendedSchemaFiles } from \"../../BuildTasks/Form/WriteExtendedSchemaFiles\";\n\nimport { BuildFormsOptions } from \"./BuildFormsOptions\";\n\nfunction getGeneratorVersion(generatorSource: GeneratorSource): string {\n if (generatorSource.type === \"PublishedGenerator\") {\n return generatorSource.version;\n } else {\n throw new Error(\"InvalidProgramState\");\n }\n}\n\nexport async function runBuildForms(\n context: ConsoleApplicationContext,\n options: BuildFormsOptions,\n farmDirectory: string,\n resourcesDirectory: string,\n engineDirectory: string,\n candyModulesDirectory: string,\n hlFarmDirectoryPath: string\n): Promise<void> {\n const buildOptions = options;\n\n const pickListsChain = Observe.files(path.join(farmDirectory, \"picklists\"), \"*.json\").do(x =>\n FSTask.copyRecursively(context.logger.withPrefix(\"PICKLISTS\"), x, path.join(resourcesDirectory, \"picklists\"))\n );\n\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formInfos = await FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);\n\n const staticResourcesForProductionChain = Observe.files(\n path.join(__dirname, \"..\", \"..\", \"StaticFilesForProductionResourcesDir\"),\n \"*.js\",\n \"*.js.map\"\n ).do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"STATICS\"), x, path.join(resourcesDirectory, \"public\", \"scripts\"))\n );\n\n /** Конвертеры описи для форм, которые пока не реализованы на кенди, сама механика описи перенесена в формы в кенди апи, поэтому они должны быть в candy.resources\n * Реализуется только при общем билде форм: candy build *\n * */\n let resourcesExternalConvertersChain: ChainableValueProducer<string> | EmptyProducer = Observe.empty();\n if (options.formGlobs[0] === \"*\") {\n resourcesExternalConvertersChain = Observe.files(path.join(farmDirectory, \"externalConverters\"), \"*.xslt\").do(\n x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"EXTERNAL-CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n );\n }\n\n const copiedEngines = new Set<string>();\n\n const repositoryRoot = path.join(farmDirectory, \"..\");\n const buildCache = new BuildCache(farmDirectory, options.buildCacheMode);\n\n const createChainForForm = async (formRelativePath: string) => {\n const gfv = extractGfvFromFormPath(formRelativePath);\n const formDirPath = path.join(repositoryRoot, formRelativePath);\n\n if (!(await pathExists(path.join(formDirPath, WellKnownDirectories.FormJsonFileName)))) {\n context.logger.warning(\n `Form ${gfv} does not have form.json file. To include this form to build process restart build`\n );\n return Observe.value({});\n }\n const formSchemasDirPath = path.join(formDirPath, \"schemas\");\n const rngSchemaMask = `*${getRngSchemaFileExtension(formSchemasDirPath, gfv)}`;\n\n return Observe.file(path.join(formDirPath, WellKnownDirectories.FormJsonFileName))\n .transform(formJsonFile =>\n resolveFormInfo(\n formJsonFile,\n formDirPath,\n engineDirectory,\n context.logger.withPrefix(`FORM:${gfv}`),\n options.upgradeFormJson,\n options.useLastStableVersion,\n options.usePrereleaseVersion\n )\n )\n .transform(async fi => {\n if (fi.mode === FormBuildMode.NormalBuild) {\n if (fi.generatorVersion == undefined) {\n throw new Error(\"generatorVersion is not defined\");\n }\n if (fi.engineVersion == undefined) {\n throw new Error(\"engineVersion is not defined\");\n }\n return {\n ...fi,\n generatorSource: await resolveGeneratorVersion(\n fi.generatorVersion,\n context.logger.withPrefix(gfv)\n ),\n engineSource: await resolveEngineVersion(fi.engineVersion, context.logger.withPrefix(gfv)),\n };\n } else {\n return {\n ...fi,\n generatorSource: undefined,\n engineSource: undefined,\n };\n }\n })\n .attach(\n async fi => {\n if (fi.generatorSource == undefined) {\n return new SingleValueProducer(new NullFormGenerator());\n } else {\n return generatorFactory(fi.generatorSource, candyModulesDirectory, options.useVersionFromCache);\n }\n },\n async (fi, y) => ({ ...fi, generator: y }),\n async fi =>\n fi.generatorSource != undefined ? getGeneratorSourceKey(fi.generatorSource) : \"NullFormGenerator\"\n )\n .attach(\n async fi => {\n if (fi.engineSource === undefined) {\n return new SingleValueProducer(\"NullEngine\");\n }\n return engineFactory(fi.engineSource, candyModulesDirectory, options.useVersionFromCache).do(\n async x => {\n if (!copiedEngines.has(getEngineSourceKey(fi.engineSource))) {\n await FSTask.copyRecursively(\n getLogger().withPrefix(\"ENGINE\"),\n x,\n path.join(resourcesDirectory, \"public\")\n );\n copiedEngines.add(getEngineSourceKey(fi.engineSource));\n }\n }\n );\n },\n async fi => fi,\n async fi => (fi.engineSource != undefined ? getEngineSourceKey(fi.engineSource) : \"NullEngine\")\n )\n .attach(async fi =>\n buildOptions.watch\n ? Observe.files(\n fi.formSourcesPath,\n \"../../controls/**/*\",\n \"../../xsltTemplates/**/*\",\n \"../../jsHelpers/**/*\",\n `./${WellKnownDirectories.FormJsonFileName}`,\n \"schemas/**/*\",\n \"sugar/**/*\",\n \"controls/**/*\",\n \"autocalc/**/*\",\n \"helpers/**/*\",\n \"normalizers/**/*\",\n \"validations/**/*\",\n \"localization/**/*\"\n )\n : Observe.value(fi.formSourcesPath)\n )\n .transform(async fi => {\n let dependenciesHash: undefined | string;\n if (fi.mode !== FormBuildMode.NormalBuild) {\n return {\n ...fi,\n dependenciesHash: undefined,\n };\n }\n if (await fi.generator.supportsDependenciesExtraction()) {\n dependenciesHash = await fi.generator.getAllDependenciesHash(\n formDirPath,\n farmDirectory,\n hlFarmDirectoryPath\n );\n }\n return {\n ...fi,\n dependenciesHash: dependenciesHash,\n };\n })\n .transform(async fi => {\n let buildCacheExist: boolean = false;\n if (fi.dependenciesHash != undefined && fi.generatorSource != undefined) {\n buildCacheExist = await buildCache.exists(fi.generatorSource, gfv, fi.dependenciesHash);\n }\n return {\n ...fi,\n buildCacheExist: buildCacheExist,\n };\n })\n .do(async fi => {\n if (fi.generatorSource == undefined) {\n return undefined;\n }\n if (fi.buildCacheExist) {\n context.logger.withPrefix(`GENERATE:${gfv}`).log(\"Skipped due build cache exits\");\n return undefined;\n }\n\n return generateForm(fi.formSourcesPath, farmDirectory, hlFarmDirectoryPath, fi.generator, undefined, {\n skipCodeReformatting: options.skipGeneratedCodeReformatting,\n resourcesHash: fi.dependenciesHash ?? \"UndefinedResourcesHash\",\n });\n })\n .attach(async () =>\n buildOptions.watch\n ? Observe.files(path.join(formDirPath, \"form\"), \"**/*\")\n : Observe.value(path.join(formDirPath, \"form\"))\n )\n .do(async fi => {\n if (fi.generatorSource == undefined) {\n return;\n }\n if (fi.dependenciesHash != undefined && fi.buildCacheExist) {\n context.logger.withPrefix(`COMPILE:${gfv}`).log(\"Skipped due build cache exists\");\n await buildCache.extract(fi.generatorSource, gfv, fi.dependenciesHash, resourcesDirectory);\n return;\n }\n const buildCacheOptions =\n fi.dependenciesHash != undefined\n ? {\n depsHash: fi.dependenciesHash,\n generatorVersion: getGeneratorVersion(fi.generatorSource),\n gfv: gfv,\n mode: options.buildCacheMode,\n farmDirectory: farmDirectory,\n }\n : undefined;\n\n await compileForm(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n fi.dependenciesHash ??\n reject(\n \"This version of generator is not supported due to dependencies extraction is not supported\"\n ),\n false,\n undefined,\n options.mode === \"production\",\n buildCacheOptions\n );\n\n await writeFormMeta(\n resourcesDirectory,\n gfv,\n fi.engineSource,\n fi.dependenciesHash ??\n reject(\n \"This version of generator is not supported due to dependencies extraction is not supported\"\n ),\n fi.themes,\n buildCache,\n buildCacheOptions\n );\n })\n .do(async fi => {\n if (fi.generatorSource == undefined) {\n return;\n }\n const buildCacheOptions =\n fi.dependenciesHash != undefined\n ? {\n depsHash: fi.dependenciesHash,\n generatorVersion: getGeneratorVersion(fi.generatorSource),\n gfv: gfv,\n mode: options.buildCacheMode,\n farmDirectory: farmDirectory,\n }\n : undefined;\n await writeFLangNormalizationFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions,\n fi.buildCacheExist\n );\n await writeAllKClangFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions,\n fi.buildCacheExist\n );\n await writeExtendedSchemaFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions,\n fi.buildCacheExist\n );\n await writeAttachmentPathFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions\n );\n await writeAttachmentPathByGfvFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions\n );\n })\n .attach(async fi => {\n if (fi.mode === FormBuildMode.CopyLegacyPrebuiltResources) {\n return Observe.files(path.join(fi.formSourcesPath, \"legacy-prebuilt\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"LEGACY-PREBUILT\"),\n x,\n path.join(resourcesDirectory)\n )\n );\n } else {\n return new SingleValueProducer(\"\");\n }\n })\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"schemas\"), rngSchemaMask).do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"SCHEMAS\"),\n x,\n path.join(resourcesDirectory, \"schemas\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"converters\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"mergers\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"MERGERS\"),\n x,\n path.join(resourcesDirectory, \"mergers\")\n )\n )\n )\n .attach(async fi => {\n const modifier = (content: string): string =>\n content.replace(/<x:include href=\"[./]+/g, '<x:include href=\"');\n return Observe.files(path.join(fi.formSourcesPath, \"converters\"), \"*\").do(x =>\n FSTask.modifyFilesContent(\n getLogger().withPrefix(\"FIX-XSLT-INCLUDE\"),\n x,\n path.join(resourcesDirectory, \"converters\"),\n \"**/*.xslt\",\n modifier\n )\n );\n })\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"..\", \"..\", \"xsltTemplates\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"XSLT-TEMPLATES\"),\n x,\n path.join(resourcesDirectory, \"converters\", \"xsltTemplates\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"normalize\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"NORMALIZE\"),\n x,\n path.join(resourcesDirectory, \"normalize\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"patch\"), \"*.xslt\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"PATCH\"), x, path.join(resourcesDirectory, \"patch\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"map\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"MAP\"), x, path.join(resourcesDirectory, \"map\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"unmap\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"UNMAP\"), x, path.join(resourcesDirectory, \"unmap\"))\n )\n )\n .do(async fi => {\n if (buildOptions.watch) {\n notifier.notify({\n title: `${fi.formName}: сборка завершена`,\n message: `Engine: ${\n fi.engineSource == undefined\n ? \"[NoEngine]\"\n : fi.engineSource.type === \"LocalEngineSources\"\n ? \"local\"\n : fi.engineSource.version\n }`,\n });\n }\n });\n };\n\n const buildFormsChain = Observe.fixedFormDirectories(\n formInfos.map(x => path.relative(repositoryRoot, x.formPath))\n ).splitToParallelChains(\n x => x,\n x => x,\n createChainForForm\n );\n\n if (options.clean) {\n await cleanTargetDirectory(resourcesDirectory, context.logger);\n }\n\n if (buildOptions.watch) {\n const stopObserve1 = await pickListsChain.observe();\n const stopObserve2 = await buildFormsChain.observe();\n const stopObserve3 = await staticResourcesForProductionChain.observe();\n const stopObserve5 = await resourcesExternalConvertersChain.observe();\n await context.waitForExit();\n if (stopObserve3 != undefined) {\n await stopObserve3();\n }\n if (stopObserve5 != undefined) {\n await stopObserve5();\n }\n await stopObserve2();\n await stopObserve1();\n } else {\n const startDate = Date.now();\n try {\n await pickListsChain.currentValue;\n await resourcesExternalConvertersChain.currentValue;\n await staticResourcesForProductionChain.currentValue;\n await buildFormsChain.currentValue;\n // eslint-disable-next-line no-console\n console.log(chalk.greenBright(\"Build success\"));\n } finally {\n const totalTime = Date.now() - startDate;\n // eslint-disable-next-line no-console\n console.log(`Total time: ${printTime(totalTime)}`);\n }\n }\n}\n\nasync function cleanTargetDirectory(resourcesDirectory: string, logger: ILogger): Promise<void> {\n logger.log(\"Cleaning resource directory. \" + resourcesDirectory);\n await emptyDir(resourcesDirectory);\n logger.log(\"Resource directory clean\");\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RunBuildForms.js","names":["_path","_interopRequireDefault","require","_chalk","_fsExtra","_nodeNotifier","_AcquireFormEngine","_EngineSource","_CompileForm","_GenerateForm","_NullFormGenerator","_WriteFLangNormalizationFiles","_FSTask","_AcquireFormGenerator","_PublishedVersionUtils","_ResolveFormInfo","_WriteFormMeta","_FormGlobsUtils","_StaticLogger","_Observe","_SingleValueProducer","_TimingUtils","_CacheAssetsPlugin","_TypingUtils","_WriteAttachmentPathFiles","_GetRngSchemaFileExtension","_FormPathUtils","_WellKnownDirectories","_WriteAttachmentPathByGfvFiles","_WriteAllKClangFiles","_WriteExtendedSchemaFiles","getGeneratorVersion","generatorSource","type","version","Error","runBuildForms","context","options","farmDirectory","resourcesDirectory","engineDirectory","candyModulesDirectory","hlFarmDirectoryPath","buildOptions","pickListsChain","Observe","files","path","join","do","x","FSTask","copyRecursively","logger","withPrefix","formInfos","FormGlobs","resolveGfvGlobs","formGlobs","staticResourcesForProductionChain","__dirname","getLogger","resourcesExternalConvertersChain","empty","copiedEngines","Set","repositoryRoot","buildCache","BuildCache","buildCacheMode","createChainForForm","formRelativePath","gfv","extractGfvFromFormPath","formDirPath","pathExists","WellKnownDirectories","FormJsonFileName","warning","value","formSchemasDirPath","rngSchemaMask","getRngSchemaFileExtension","file","transform","formJsonFile","resolveFormInfo","upgradeFormJson","useLastStableVersion","usePrereleaseVersion","fi","mode","FormBuildMode","NormalBuild","generatorVersion","undefined","engineVersion","resolveGeneratorVersion","engineSource","resolveEngineVersion","attach","SingleValueProducer","NullFormGenerator","generatorFactory","useVersionFromCache","y","generator","getGeneratorSourceKey","engineFactory","has","getEngineSourceKey","add","watch","formSourcesPath","dependenciesHash","supportsDependenciesExtraction","getAllDependenciesHash","buildCacheExist","exists","_fi$dependenciesHash","log","generateForm","skipCodeReformatting","skipGeneratedCodeReformatting","resourcesHash","_fi$dependenciesHash2","_fi$dependenciesHash3","extract","buildCacheOptions","depsHash","compileForm","formName","reject","writeFormMeta","themes","writeFLangNormalizationFiles","writeAllKClangFiles","writeExtendedSchemaFiles","writeAttachmentPathFiles","writeAttachmentPathByGfvFiles","CopyLegacyPrebuiltResources","modifier","content","replace","modifyFilesContent","notifier","notify","title","message","buildFormsChain","fixedFormDirectories","map","relative","formPath","splitToParallelChains","clean","cleanTargetDirectory","stopObserve1","observe","stopObserve2","stopObserve3","stopObserve5","waitForExit","startDate","Date","now","currentValue","console","chalk","greenBright","totalTime","printTime","emptyDir"],"sources":["../../../../../src/CLICommands/BuildForms/RunBuildForms.ts"],"sourcesContent":["import path from \"path\";\n\nimport chalk from \"chalk\";\nimport { emptyDir, pathExists } from \"fs-extra\";\nimport notifier from \"node-notifier\";\n\nimport { engineFactory } from \"../../BuildTasks/Engine/AcquireFormEngine\";\nimport { getEngineSourceKey } from \"../../BuildTasks/Engine/EngineSource\";\nimport { compileForm } from \"../../BuildTasks/Form/CompileForm\";\nimport { generateForm } from \"../../BuildTasks/Form/GenerateForm\";\nimport { NullFormGenerator } from \"../../BuildTasks/Form/NullFormGenerator\";\nimport { writeFLangNormalizationFiles } from \"../../BuildTasks/Form/WriteFLangNormalizationFiles\";\nimport { FSTask } from \"../../BuildTasks/FSTask\";\nimport {\n generatorFactory,\n GeneratorSource,\n getGeneratorSourceKey,\n} from \"../../BuildTasks/Generator/AcquireFormGenerator\";\nimport { resolveEngineVersion, resolveGeneratorVersion } from \"../../BuildTasks/PublishedVersionUtils\";\nimport { FormBuildMode, resolveFormInfo } from \"../../BuildTasks/ResolveFormInfo\";\nimport { writeFormMeta } from \"../../BuildTasks/WriteFormMeta\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\nimport { getLogger } from \"../../Commons/Logging/StaticLogger\";\nimport { Observe } from \"../../Commons/TasksCore/Observe\";\nimport { SingleValueProducer } from \"../../Commons/TasksCore/SingleValueProducer\";\nimport { printTime } from \"../../Commons/TimingUtils\";\nimport { BuildCache } from \"../../FormWebpackConfiguration/CacheAssetsPlugin\";\nimport { reject } from \"../../../../Common/TypingUtils\";\nimport { writeAttachmentPathFiles } from \"../../BuildTasks/Form/WriteAttachmentPathFiles\";\nimport { ChainableValueProducer } from \"../../Commons/TasksCore/ChainableValueProducer\";\nimport { EmptyProducer } from \"../../Commons/TasksCore/EmptyProducer\";\nimport { getRngSchemaFileExtension } from \"../../../../Common/GetRngSchemaFileExtension\";\nimport { extractGfvFromFormPath } from \"../../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\nimport { writeAttachmentPathByGfvFiles } from \"../../BuildTasks/Form/WriteAttachmentPathByGfvFiles\";\nimport { writeAllKClangFiles } from \"../../BuildTasks/Form/WriteAllKClangFiles\";\nimport { writeExtendedSchemaFiles } from \"../../BuildTasks/Form/WriteExtendedSchemaFiles\";\n\nimport { BuildFormsOptions } from \"./BuildFormsOptions\";\n\nfunction getGeneratorVersion(generatorSource: GeneratorSource): string {\n if (generatorSource.type === \"PublishedGenerator\") {\n return generatorSource.version;\n } else {\n throw new Error(\"InvalidProgramState\");\n }\n}\n\nexport async function runBuildForms(\n context: ConsoleApplicationContext,\n options: BuildFormsOptions,\n farmDirectory: string,\n resourcesDirectory: string,\n engineDirectory: string,\n candyModulesDirectory: string,\n hlFarmDirectoryPath: string\n): Promise<void> {\n const buildOptions = options;\n\n const pickListsChain = Observe.files(path.join(farmDirectory, \"picklists\"), \"*.json\").do(x =>\n FSTask.copyRecursively(context.logger.withPrefix(\"PICKLISTS\"), x, path.join(resourcesDirectory, \"picklists\"))\n );\n\n const formInfos = await FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);\n\n const staticResourcesForProductionChain = Observe.files(\n path.join(__dirname, \"..\", \"..\", \"StaticFilesForProductionResourcesDir\"),\n \"*.js\",\n \"*.js.map\"\n ).do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"STATICS\"), x, path.join(resourcesDirectory, \"public\", \"scripts\"))\n );\n\n /** Конвертеры описи для форм, которые пока не реализованы на кенди, сама механика описи перенесена в формы в кенди апи, поэтому они должны быть в candy.resources\n * Реализуется только при общем билде форм: candy build *\n * */\n let resourcesExternalConvertersChain: ChainableValueProducer<string> | EmptyProducer = Observe.empty();\n if (options.formGlobs[0] === \"*\") {\n resourcesExternalConvertersChain = Observe.files(path.join(farmDirectory, \"externalConverters\"), \"*.xslt\").do(\n x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"EXTERNAL-CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n );\n }\n\n const copiedEngines = new Set<string>();\n\n const repositoryRoot = path.join(farmDirectory, \"..\");\n const buildCache = new BuildCache(farmDirectory, options.buildCacheMode);\n\n const createChainForForm = async (formRelativePath: string) => {\n const gfv = extractGfvFromFormPath(formRelativePath);\n const formDirPath = path.join(repositoryRoot, formRelativePath);\n\n if (!(await pathExists(path.join(formDirPath, WellKnownDirectories.FormJsonFileName)))) {\n context.logger.warning(\n `Form ${gfv} does not have form.json file. To include this form to build process restart build`\n );\n return Observe.value({});\n }\n const formSchemasDirPath = path.join(formDirPath, \"schemas\");\n const rngSchemaMask = `*${getRngSchemaFileExtension(formSchemasDirPath, gfv)}`;\n\n return Observe.file(path.join(formDirPath, WellKnownDirectories.FormJsonFileName))\n .transform(formJsonFile =>\n resolveFormInfo(\n formJsonFile,\n formDirPath,\n engineDirectory,\n context.logger.withPrefix(`FORM:${gfv}`),\n options.upgradeFormJson,\n options.useLastStableVersion,\n options.usePrereleaseVersion\n )\n )\n .transform(async fi => {\n if (fi.mode === FormBuildMode.NormalBuild) {\n if (fi.generatorVersion == undefined) {\n throw new Error(\"generatorVersion is not defined\");\n }\n if (fi.engineVersion == undefined) {\n throw new Error(\"engineVersion is not defined\");\n }\n return {\n ...fi,\n generatorSource: await resolveGeneratorVersion(\n fi.generatorVersion,\n context.logger.withPrefix(gfv)\n ),\n engineSource: await resolveEngineVersion(fi.engineVersion, context.logger.withPrefix(gfv)),\n };\n } else {\n return {\n ...fi,\n generatorSource: undefined,\n engineSource: undefined,\n };\n }\n })\n .attach(\n async fi => {\n if (fi.generatorSource == undefined) {\n return new SingleValueProducer(new NullFormGenerator());\n } else {\n return generatorFactory(fi.generatorSource, candyModulesDirectory, options.useVersionFromCache);\n }\n },\n async (fi, y) => ({ ...fi, generator: y }),\n async fi =>\n fi.generatorSource != undefined ? getGeneratorSourceKey(fi.generatorSource) : \"NullFormGenerator\"\n )\n .attach(\n async fi => {\n if (fi.engineSource === undefined) {\n return new SingleValueProducer(\"NullEngine\");\n }\n return engineFactory(fi.engineSource, candyModulesDirectory, options.useVersionFromCache).do(\n async x => {\n if (!copiedEngines.has(getEngineSourceKey(fi.engineSource))) {\n await FSTask.copyRecursively(\n getLogger().withPrefix(\"ENGINE\"),\n x,\n path.join(resourcesDirectory, \"public\")\n );\n copiedEngines.add(getEngineSourceKey(fi.engineSource));\n }\n }\n );\n },\n async fi => fi,\n async fi => (fi.engineSource != undefined ? getEngineSourceKey(fi.engineSource) : \"NullEngine\")\n )\n .attach(async fi =>\n buildOptions.watch\n ? Observe.files(\n fi.formSourcesPath,\n \"../../controls/**/*\",\n \"../../xsltTemplates/**/*\",\n \"../../jsHelpers/**/*\",\n `./${WellKnownDirectories.FormJsonFileName}`,\n \"schemas/**/*\",\n \"sugar/**/*\",\n \"controls/**/*\",\n \"autocalc/**/*\",\n \"helpers/**/*\",\n \"normalizers/**/*\",\n \"validations/**/*\",\n \"localization/**/*\"\n )\n : Observe.value(fi.formSourcesPath)\n )\n .transform(async fi => {\n let dependenciesHash: undefined | string;\n if (fi.mode !== FormBuildMode.NormalBuild) {\n return {\n ...fi,\n dependenciesHash: undefined,\n };\n }\n if (await fi.generator.supportsDependenciesExtraction()) {\n dependenciesHash = await fi.generator.getAllDependenciesHash(\n formDirPath,\n farmDirectory,\n hlFarmDirectoryPath\n );\n }\n return {\n ...fi,\n dependenciesHash: dependenciesHash,\n };\n })\n .transform(async fi => {\n let buildCacheExist: boolean = false;\n if (fi.dependenciesHash != undefined && fi.generatorSource != undefined) {\n buildCacheExist = await buildCache.exists(fi.generatorSource, gfv, fi.dependenciesHash);\n }\n return {\n ...fi,\n buildCacheExist: buildCacheExist,\n };\n })\n .do(async fi => {\n if (fi.generatorSource == undefined) {\n return undefined;\n }\n if (fi.buildCacheExist) {\n context.logger.withPrefix(`GENERATE:${gfv}`).log(\"Skipped due build cache exits\");\n return undefined;\n }\n\n return generateForm(fi.formSourcesPath, farmDirectory, hlFarmDirectoryPath, fi.generator, undefined, {\n skipCodeReformatting: options.skipGeneratedCodeReformatting,\n resourcesHash: fi.dependenciesHash ?? \"UndefinedResourcesHash\",\n });\n })\n .attach(async () =>\n buildOptions.watch\n ? Observe.files(path.join(formDirPath, \"form\"), \"**/*\")\n : Observe.value(path.join(formDirPath, \"form\"))\n )\n .do(async fi => {\n if (fi.generatorSource == undefined) {\n return;\n }\n if (fi.dependenciesHash != undefined && fi.buildCacheExist) {\n context.logger.withPrefix(`COMPILE:${gfv}`).log(\"Skipped due build cache exists\");\n await buildCache.extract(fi.generatorSource, gfv, fi.dependenciesHash, resourcesDirectory);\n return;\n }\n const buildCacheOptions =\n fi.dependenciesHash != undefined\n ? {\n depsHash: fi.dependenciesHash,\n generatorVersion: getGeneratorVersion(fi.generatorSource),\n gfv: gfv,\n mode: options.buildCacheMode,\n farmDirectory: farmDirectory,\n }\n : undefined;\n\n await compileForm(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n fi.dependenciesHash ??\n reject(\n \"This version of generator is not supported due to dependencies extraction is not supported\"\n ),\n false,\n undefined,\n options.mode === \"production\",\n buildCacheOptions\n );\n\n await writeFormMeta(\n resourcesDirectory,\n gfv,\n fi.engineSource,\n fi.dependenciesHash ??\n reject(\n \"This version of generator is not supported due to dependencies extraction is not supported\"\n ),\n fi.themes,\n buildCache,\n buildCacheOptions\n );\n })\n .do(async fi => {\n if (fi.generatorSource == undefined) {\n return;\n }\n const buildCacheOptions =\n fi.dependenciesHash != undefined\n ? {\n depsHash: fi.dependenciesHash,\n generatorVersion: getGeneratorVersion(fi.generatorSource),\n gfv: gfv,\n mode: options.buildCacheMode,\n farmDirectory: farmDirectory,\n }\n : undefined;\n await writeFLangNormalizationFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions,\n fi.buildCacheExist\n );\n await writeAllKClangFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions,\n fi.buildCacheExist\n );\n await writeExtendedSchemaFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions,\n fi.buildCacheExist\n );\n await writeAttachmentPathFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions\n );\n await writeAttachmentPathByGfvFiles(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n undefined,\n buildCache,\n buildCacheOptions\n );\n })\n .attach(async fi => {\n if (fi.mode === FormBuildMode.CopyLegacyPrebuiltResources) {\n return Observe.files(path.join(fi.formSourcesPath, \"legacy-prebuilt\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"LEGACY-PREBUILT\"),\n x,\n path.join(resourcesDirectory)\n )\n );\n } else {\n return new SingleValueProducer(\"\");\n }\n })\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"schemas\"), rngSchemaMask).do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"SCHEMAS\"),\n x,\n path.join(resourcesDirectory, \"schemas\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"converters\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"mergers\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"MERGERS\"),\n x,\n path.join(resourcesDirectory, \"mergers\")\n )\n )\n )\n .attach(async fi => {\n const modifier = (content: string): string =>\n content.replace(/<x:include href=\"[./]+/g, '<x:include href=\"');\n return Observe.files(path.join(fi.formSourcesPath, \"converters\"), \"*\").do(x =>\n FSTask.modifyFilesContent(\n getLogger().withPrefix(\"FIX-XSLT-INCLUDE\"),\n x,\n path.join(resourcesDirectory, \"converters\"),\n \"**/*.xslt\",\n modifier\n )\n );\n })\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"..\", \"..\", \"xsltTemplates\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"XSLT-TEMPLATES\"),\n x,\n path.join(resourcesDirectory, \"converters\", \"xsltTemplates\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"normalize\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"NORMALIZE\"),\n x,\n path.join(resourcesDirectory, \"normalize\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"patch\"), \"*.xslt\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"PATCH\"), x, path.join(resourcesDirectory, \"patch\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"map\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"MAP\"), x, path.join(resourcesDirectory, \"map\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"unmap\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"UNMAP\"), x, path.join(resourcesDirectory, \"unmap\"))\n )\n )\n .do(async fi => {\n if (buildOptions.watch) {\n notifier.notify({\n title: `${fi.formName}: сборка завершена`,\n message: `Engine: ${\n fi.engineSource == undefined\n ? \"[NoEngine]\"\n : fi.engineSource.type === \"LocalEngineSources\"\n ? \"local\"\n : fi.engineSource.version\n }`,\n });\n }\n });\n };\n\n const buildFormsChain = Observe.fixedFormDirectories(\n formInfos.map(x => path.relative(repositoryRoot, x.formPath))\n ).splitToParallelChains(\n x => x,\n x => x,\n createChainForForm\n );\n\n if (options.clean) {\n await cleanTargetDirectory(resourcesDirectory, context.logger);\n }\n\n if (buildOptions.watch) {\n const stopObserve1 = await pickListsChain.observe();\n const stopObserve2 = await buildFormsChain.observe();\n const stopObserve3 = await staticResourcesForProductionChain.observe();\n const stopObserve5 = await resourcesExternalConvertersChain.observe();\n await context.waitForExit();\n if (stopObserve3 != undefined) {\n await stopObserve3();\n }\n if (stopObserve5 != undefined) {\n await stopObserve5();\n }\n await stopObserve2();\n await stopObserve1();\n } else {\n const startDate = Date.now();\n try {\n await pickListsChain.currentValue;\n await resourcesExternalConvertersChain.currentValue;\n await staticResourcesForProductionChain.currentValue;\n await buildFormsChain.currentValue;\n // eslint-disable-next-line no-console\n console.log(chalk.greenBright(\"Build success\"));\n } finally {\n const totalTime = Date.now() - startDate;\n // eslint-disable-next-line no-console\n console.log(`Total time: ${printTime(totalTime)}`);\n }\n }\n}\n\nasync function cleanTargetDirectory(resourcesDirectory: string, logger: ILogger): Promise<void> {\n logger.log(\"Cleaning resource directory. \" + resourcesDirectory);\n await emptyDir(resourcesDirectory);\n logger.log(\"Resource directory clean\");\n}\n"],"mappings":"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","ignoreList":[]}
@@ -39,7 +39,6 @@ async function runDevBuild(context, options, engineDirectory, resourcesDirectory
39
39
  const staticResourcesChain = _Observe.Observe.files(_path.default.join(__dirname, "..", "..", "StaticFilesForResourcesDir"), "*.js").do(x => _FSTask.FSTask.copyRecursively((0, _StaticLogger.getLogger)().withPrefix("STATICS"), x, _path.default.join(resourcesDirectory, "public", "scripts")));
40
40
  const pickListsChain = _Observe.Observe.files(_path.default.join(farmDirectory, "picklists"), "*.json").do(x => _FSTask.FSTask.copyRecursively(context.logger.withPrefix("PICKLISTS"), x, _path.default.join(resourcesDirectory, "picklists")));
41
41
  const repositoryRoot = _path.default.join(farmDirectory, "..");
42
- await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
43
42
  const formInfos = await _FormGlobsUtils.FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);
44
43
 
45
44
  /** Конвертеры описи для форм, которые пока не реализованы на кенди, сама механика описи перенесена в формы в кенди апи, поэтому они должны быть в candy.resources
@@ -1 +1 @@
1
- {"version":3,"file":"RunDevBuild.js","names":["_path","_interopRequireDefault","require","_chalk","_BuildClientJsTask","_BuildLocalEngineTask","_EngineStructureUtils","_CompileForm","_GenerateForm","_WriteFLangNormalizationFiles","_FSTask","_AcquireFormGenerator","_PublishedVersionUtils","_ResolveFormInfo","_WriteFormMeta","_FormGlobsUtils","_StaticLogger","_Observe","_TimingUtils","_WriteAttachmentPathFiles","_EmptyProducer","_GetRngSchemaFileExtension","_FormPathUtils","_WellKnownDirectories","_WriteAttachmentPathByGfvFiles","_WriteAllKClangFiles","_WriteExtendedSchemaFiles","runDevBuild","context","options","engineDirectory","resourcesDirectory","farmDirectory","candyModulesDirectory","hlFarmDirectoryPath","devBuildOptions","engineWebpackConfigTask","createEngineWebpackConfigTask","buildEngineChain","skipBuildEngine","EmptyProducer","chainWith","p","BuildLocalEngineTask","buildDebugOnly","clientWebpackConfigTask","createClientWebpackConfigTask","buildClientJsChain","BuildClientJsTask","staticResourcesChain","Observe","files","path","join","__dirname","do","x","FSTask","copyRecursively","getLogger","withPrefix","pickListsChain","logger","repositoryRoot","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","formInfos","resolveGfvGlobs","resourcesExternalConvertersChain","empty","createChainForForm","formRelativePath","gfv","extractGfvFromFormPath","formDirPath","formSchemasDirPath","rngSchemaMask","getRngSchemaFileExtension","file","WellKnownDirectories","FormJsonFileName","transform","formJsonFile","resolveFormInfo","generatorSource","resolveLocalGeneratorSource","engineSource","resolveLocalEngineSource","attach","fi","generatorFactory","undefined","y","generator","getGeneratorSourceKey","watch","formSourcesPath","value","dependenciesHash","getAllDependenciesHash","skipGeneration","generateForm","skipCodeReformatting","skipGeneratedCodeReformatting","resourcesHash","skipWebPackCompilation","compileForm","formName","writeFLangNormalizationFiles","writeAllKClangFiles","writeExtendedSchemaFiles","writeAttachmentPathFiles","writeAttachmentPathByGfvFiles","writeFormMeta","themes","buildFormsChain","fixedFormDirectories","map","relative","formPath","splitToParallelChains","stopObserve1","observe","stopObserve2","stopObserve3","stopObserve4","stopObserve5","stopObserve6","waitForExit","startDate","Date","now","Promise","all","currentValue","e","continueOnError","error","totalTime","console","log","chalk","greenBright","printTime"],"sources":["../../../../../src/CLICommands/DevBuild/RunDevBuild.ts"],"sourcesContent":["import path from \"path\";\n\nimport chalk from \"chalk\";\n\nimport { BuildClientJsTask } from \"../../BuildTasks/ClientJS/BuildClientJsTask\";\nimport { BuildLocalEngineTask } from \"../../BuildTasks/Engine/BuildLocalEngineTask\";\nimport { createClientWebpackConfigTask, createEngineWebpackConfigTask } from \"../../BuildTasks/EngineStructureUtils\";\nimport { compileForm } from \"../../BuildTasks/Form/CompileForm\";\nimport { generateForm } from \"../../BuildTasks/Form/GenerateForm\";\nimport { writeFLangNormalizationFiles } from \"../../BuildTasks/Form/WriteFLangNormalizationFiles\";\nimport { FSTask } from \"../../BuildTasks/FSTask\";\nimport { generatorFactory, getGeneratorSourceKey } from \"../../BuildTasks/Generator/AcquireFormGenerator\";\nimport { resolveLocalEngineSource, resolveLocalGeneratorSource } from \"../../BuildTasks/PublishedVersionUtils\";\nimport { resolveFormInfo } from \"../../BuildTasks/ResolveFormInfo\";\nimport { writeFormMeta } from \"../../BuildTasks/WriteFormMeta\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { getLogger } from \"../../Commons/Logging/StaticLogger\";\nimport { Observe } from \"../../Commons/TasksCore/Observe\";\nimport { printTime } from \"../../Commons/TimingUtils\";\nimport { writeAttachmentPathFiles } from \"../../BuildTasks/Form/WriteAttachmentPathFiles\";\nimport { ChainableValueProducer } from \"../../Commons/TasksCore/ChainableValueProducer\";\nimport { EmptyProducer } from \"../../Commons/TasksCore/EmptyProducer\";\nimport { getRngSchemaFileExtension } from \"../../../../Common/GetRngSchemaFileExtension\";\nimport { extractGfvFromFormPath } from \"../../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\nimport { writeAttachmentPathByGfvFiles } from \"../../BuildTasks/Form/WriteAttachmentPathByGfvFiles\";\nimport { writeAllKClangFiles } from \"../../BuildTasks/Form/WriteAllKClangFiles\";\nimport { writeExtendedSchemaFiles } from \"../../BuildTasks/Form/WriteExtendedSchemaFiles\";\n\nimport { DevelopmentBuildOptions } from \"./DevBuildOptions\";\n\nexport async function runDevBuild(\n context: ConsoleApplicationContext,\n options: DevelopmentBuildOptions,\n engineDirectory: string,\n resourcesDirectory: string,\n farmDirectory: string,\n candyModulesDirectory: string,\n hlFarmDirectoryPath: string\n): Promise<void> {\n const devBuildOptions = options;\n\n const engineWebpackConfigTask = await createEngineWebpackConfigTask(engineDirectory);\n const buildEngineChain = options.skipBuildEngine\n ? new EmptyProducer()\n : engineWebpackConfigTask.chainWith(\n p => new BuildLocalEngineTask(p, resourcesDirectory, options.buildDebugOnly)\n );\n\n const clientWebpackConfigTask = await createClientWebpackConfigTask(engineDirectory);\n const buildClientJsChain = options.skipBuildEngine\n ? new EmptyProducer()\n : clientWebpackConfigTask.chainWith(p => new BuildClientJsTask(p, resourcesDirectory));\n\n const staticResourcesChain = Observe.files(\n path.join(__dirname, \"..\", \"..\", \"StaticFilesForResourcesDir\"),\n \"*.js\"\n ).do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"STATICS\"), x, path.join(resourcesDirectory, \"public\", \"scripts\"))\n );\n\n const pickListsChain = Observe.files(path.join(farmDirectory, \"picklists\"), \"*.json\").do(x =>\n FSTask.copyRecursively(context.logger.withPrefix(\"PICKLISTS\"), x, path.join(resourcesDirectory, \"picklists\"))\n );\n\n const repositoryRoot = path.join(farmDirectory, \"..\");\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formInfos = await FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);\n\n /** Конвертеры описи для форм, которые пока не реализованы на кенди, сама механика описи перенесена в формы в кенди апи, поэтому они должны быть в candy.resources\n * Реализуется только при общем билде форм: candy build *\n * */\n let resourcesExternalConvertersChain: ChainableValueProducer<string> | EmptyProducer = Observe.empty();\n if (options.formGlobs[0] === \"*\") {\n resourcesExternalConvertersChain = Observe.files(path.join(farmDirectory, \"externalConverters\"), \"*.xslt\").do(\n x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"EXTERNAL-CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n );\n }\n\n const createChainForForm = async (formRelativePath: string) => {\n const gfv = extractGfvFromFormPath(formRelativePath);\n const formDirPath = path.join(repositoryRoot, formRelativePath);\n const formSchemasDirPath = path.join(formDirPath, \"schemas\");\n const rngSchemaMask = `*${getRngSchemaFileExtension(formSchemasDirPath, gfv)}`;\n\n return Observe.file(path.join(formDirPath, WellKnownDirectories.FormJsonFileName))\n .transform(formJsonFile => resolveFormInfo(formJsonFile, formDirPath, engineDirectory))\n .transform(async x => ({\n ...x,\n generatorSource: resolveLocalGeneratorSource(engineDirectory),\n engineSource: resolveLocalEngineSource(engineDirectory),\n }))\n .attach(\n async fi => generatorFactory(fi.generatorSource, candyModulesDirectory, false, undefined),\n async (fi, y) => ({ ...fi, generator: y }),\n async fi => getGeneratorSourceKey(fi.generatorSource)\n )\n .attach(async fi =>\n devBuildOptions.watch\n ? Observe.files(\n fi.formSourcesPath,\n \"../../controls/**/*\",\n `./${WellKnownDirectories.FormJsonFileName}`,\n \"schemas/**/*\",\n \"sugar/**/*\",\n \"controls/**/*\",\n \"autocalc/**/*\",\n \"helpers/**/*\",\n \"normalizers/**/*\",\n \"validations/**/*\",\n \"localization/**/*\"\n )\n : Observe.value(fi.formSourcesPath)\n )\n .transform(async fi => ({\n ...fi,\n dependenciesHash: await fi.generator.getAllDependenciesHash(\n formDirPath,\n farmDirectory,\n hlFarmDirectoryPath\n ),\n }))\n .do(async fi => {\n if (options.skipGeneration) {\n return undefined;\n }\n return generateForm(fi.formSourcesPath, farmDirectory, hlFarmDirectoryPath, fi.generator, undefined, {\n skipCodeReformatting: options.skipGeneratedCodeReformatting,\n resourcesHash: fi.dependenciesHash,\n });\n })\n .attach(async () =>\n devBuildOptions.watch\n ? Observe.files(path.join(formDirPath, \"form\"), \"**/*\")\n : Observe.value(path.join(formDirPath, \"form\"))\n )\n .do(async fi => {\n if (options.skipWebPackCompilation) {\n return undefined;\n }\n return compileForm(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n fi.dependenciesHash,\n options.buildDebugOnly,\n undefined,\n false\n );\n })\n .do(fi => writeFLangNormalizationFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeAllKClangFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeExtendedSchemaFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeAttachmentPathFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeAttachmentPathByGfvFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeFormMeta(resourcesDirectory, gfv, fi.engineSource, fi.dependenciesHash, fi.themes))\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"schemas\"), rngSchemaMask).do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"SCHEMAS\"),\n x,\n path.join(resourcesDirectory, \"schemas\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"converters\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"mergers\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"MERGERS\"),\n x,\n path.join(resourcesDirectory, \"mergers\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"normalize\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"NORMALIZE\"),\n x,\n path.join(resourcesDirectory, \"normalize\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"patch\"), \"*.xslt\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"PATCH\"), x, path.join(resourcesDirectory, \"patch\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"map\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"MAP\"), x, path.join(resourcesDirectory, \"map\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"unmap\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"UNMAP\"), x, path.join(resourcesDirectory, \"unmap\"))\n )\n );\n };\n\n const buildFormsChain = Observe.fixedFormDirectories(\n formInfos.map(x => path.relative(repositoryRoot, x.formPath))\n ).splitToParallelChains(\n x => x,\n x => x,\n createChainForForm\n );\n\n if (devBuildOptions.watch) {\n const stopObserve1 = await buildEngineChain.observe();\n const stopObserve2 = await buildClientJsChain.observe();\n const stopObserve3 = await staticResourcesChain.observe();\n const stopObserve4 = await buildFormsChain.observe();\n const stopObserve5 = await pickListsChain.observe();\n const stopObserve6 = await resourcesExternalConvertersChain.observe();\n\n await context.waitForExit();\n\n await stopObserve1();\n await stopObserve2();\n await stopObserve3();\n await stopObserve4();\n await stopObserve5();\n await stopObserve6();\n } else {\n const startDate = Date.now();\n await Promise.all([\n buildEngineChain.currentValue,\n buildClientJsChain.currentValue,\n staticResourcesChain.currentValue,\n resourcesExternalConvertersChain.currentValue,\n (async () => {\n try {\n await pickListsChain.currentValue;\n await buildFormsChain.currentValue;\n } catch (e) {\n if (options.continueOnError) {\n context.logger.error(e);\n } else {\n throw e;\n }\n }\n })(),\n ]);\n const totalTime = Date.now() - startDate;\n // eslint-disable-next-line no-console\n console.log(`${chalk.greenBright(\"Build success\")} Total time: ${printTime(totalTime)}`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RunDevBuild.js","names":["_path","_interopRequireDefault","require","_chalk","_BuildClientJsTask","_BuildLocalEngineTask","_EngineStructureUtils","_CompileForm","_GenerateForm","_WriteFLangNormalizationFiles","_FSTask","_AcquireFormGenerator","_PublishedVersionUtils","_ResolveFormInfo","_WriteFormMeta","_FormGlobsUtils","_StaticLogger","_Observe","_TimingUtils","_WriteAttachmentPathFiles","_EmptyProducer","_GetRngSchemaFileExtension","_FormPathUtils","_WellKnownDirectories","_WriteAttachmentPathByGfvFiles","_WriteAllKClangFiles","_WriteExtendedSchemaFiles","runDevBuild","context","options","engineDirectory","resourcesDirectory","farmDirectory","candyModulesDirectory","hlFarmDirectoryPath","devBuildOptions","engineWebpackConfigTask","createEngineWebpackConfigTask","buildEngineChain","skipBuildEngine","EmptyProducer","chainWith","p","BuildLocalEngineTask","buildDebugOnly","clientWebpackConfigTask","createClientWebpackConfigTask","buildClientJsChain","BuildClientJsTask","staticResourcesChain","Observe","files","path","join","__dirname","do","x","FSTask","copyRecursively","getLogger","withPrefix","pickListsChain","logger","repositoryRoot","formInfos","FormGlobs","resolveGfvGlobs","formGlobs","resourcesExternalConvertersChain","empty","createChainForForm","formRelativePath","gfv","extractGfvFromFormPath","formDirPath","formSchemasDirPath","rngSchemaMask","getRngSchemaFileExtension","file","WellKnownDirectories","FormJsonFileName","transform","formJsonFile","resolveFormInfo","generatorSource","resolveLocalGeneratorSource","engineSource","resolveLocalEngineSource","attach","fi","generatorFactory","undefined","y","generator","getGeneratorSourceKey","watch","formSourcesPath","value","dependenciesHash","getAllDependenciesHash","skipGeneration","generateForm","skipCodeReformatting","skipGeneratedCodeReformatting","resourcesHash","skipWebPackCompilation","compileForm","formName","writeFLangNormalizationFiles","writeAllKClangFiles","writeExtendedSchemaFiles","writeAttachmentPathFiles","writeAttachmentPathByGfvFiles","writeFormMeta","themes","buildFormsChain","fixedFormDirectories","map","relative","formPath","splitToParallelChains","stopObserve1","observe","stopObserve2","stopObserve3","stopObserve4","stopObserve5","stopObserve6","waitForExit","startDate","Date","now","Promise","all","currentValue","e","continueOnError","error","totalTime","console","log","chalk","greenBright","printTime"],"sources":["../../../../../src/CLICommands/DevBuild/RunDevBuild.ts"],"sourcesContent":["import path from \"path\";\n\nimport chalk from \"chalk\";\n\nimport { BuildClientJsTask } from \"../../BuildTasks/ClientJS/BuildClientJsTask\";\nimport { BuildLocalEngineTask } from \"../../BuildTasks/Engine/BuildLocalEngineTask\";\nimport { createClientWebpackConfigTask, createEngineWebpackConfigTask } from \"../../BuildTasks/EngineStructureUtils\";\nimport { compileForm } from \"../../BuildTasks/Form/CompileForm\";\nimport { generateForm } from \"../../BuildTasks/Form/GenerateForm\";\nimport { writeFLangNormalizationFiles } from \"../../BuildTasks/Form/WriteFLangNormalizationFiles\";\nimport { FSTask } from \"../../BuildTasks/FSTask\";\nimport { generatorFactory, getGeneratorSourceKey } from \"../../BuildTasks/Generator/AcquireFormGenerator\";\nimport { resolveLocalEngineSource, resolveLocalGeneratorSource } from \"../../BuildTasks/PublishedVersionUtils\";\nimport { resolveFormInfo } from \"../../BuildTasks/ResolveFormInfo\";\nimport { writeFormMeta } from \"../../BuildTasks/WriteFormMeta\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { getLogger } from \"../../Commons/Logging/StaticLogger\";\nimport { Observe } from \"../../Commons/TasksCore/Observe\";\nimport { printTime } from \"../../Commons/TimingUtils\";\nimport { writeAttachmentPathFiles } from \"../../BuildTasks/Form/WriteAttachmentPathFiles\";\nimport { ChainableValueProducer } from \"../../Commons/TasksCore/ChainableValueProducer\";\nimport { EmptyProducer } from \"../../Commons/TasksCore/EmptyProducer\";\nimport { getRngSchemaFileExtension } from \"../../../../Common/GetRngSchemaFileExtension\";\nimport { extractGfvFromFormPath } from \"../../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\nimport { writeAttachmentPathByGfvFiles } from \"../../BuildTasks/Form/WriteAttachmentPathByGfvFiles\";\nimport { writeAllKClangFiles } from \"../../BuildTasks/Form/WriteAllKClangFiles\";\nimport { writeExtendedSchemaFiles } from \"../../BuildTasks/Form/WriteExtendedSchemaFiles\";\n\nimport { DevelopmentBuildOptions } from \"./DevBuildOptions\";\n\nexport async function runDevBuild(\n context: ConsoleApplicationContext,\n options: DevelopmentBuildOptions,\n engineDirectory: string,\n resourcesDirectory: string,\n farmDirectory: string,\n candyModulesDirectory: string,\n hlFarmDirectoryPath: string\n): Promise<void> {\n const devBuildOptions = options;\n\n const engineWebpackConfigTask = await createEngineWebpackConfigTask(engineDirectory);\n const buildEngineChain = options.skipBuildEngine\n ? new EmptyProducer()\n : engineWebpackConfigTask.chainWith(\n p => new BuildLocalEngineTask(p, resourcesDirectory, options.buildDebugOnly)\n );\n\n const clientWebpackConfigTask = await createClientWebpackConfigTask(engineDirectory);\n const buildClientJsChain = options.skipBuildEngine\n ? new EmptyProducer()\n : clientWebpackConfigTask.chainWith(p => new BuildClientJsTask(p, resourcesDirectory));\n\n const staticResourcesChain = Observe.files(\n path.join(__dirname, \"..\", \"..\", \"StaticFilesForResourcesDir\"),\n \"*.js\"\n ).do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"STATICS\"), x, path.join(resourcesDirectory, \"public\", \"scripts\"))\n );\n\n const pickListsChain = Observe.files(path.join(farmDirectory, \"picklists\"), \"*.json\").do(x =>\n FSTask.copyRecursively(context.logger.withPrefix(\"PICKLISTS\"), x, path.join(resourcesDirectory, \"picklists\"))\n );\n\n const repositoryRoot = path.join(farmDirectory, \"..\");\n\n const formInfos = await FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);\n\n /** Конвертеры описи для форм, которые пока не реализованы на кенди, сама механика описи перенесена в формы в кенди апи, поэтому они должны быть в candy.resources\n * Реализуется только при общем билде форм: candy build *\n * */\n let resourcesExternalConvertersChain: ChainableValueProducer<string> | EmptyProducer = Observe.empty();\n if (options.formGlobs[0] === \"*\") {\n resourcesExternalConvertersChain = Observe.files(path.join(farmDirectory, \"externalConverters\"), \"*.xslt\").do(\n x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"EXTERNAL-CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n );\n }\n\n const createChainForForm = async (formRelativePath: string) => {\n const gfv = extractGfvFromFormPath(formRelativePath);\n const formDirPath = path.join(repositoryRoot, formRelativePath);\n const formSchemasDirPath = path.join(formDirPath, \"schemas\");\n const rngSchemaMask = `*${getRngSchemaFileExtension(formSchemasDirPath, gfv)}`;\n\n return Observe.file(path.join(formDirPath, WellKnownDirectories.FormJsonFileName))\n .transform(formJsonFile => resolveFormInfo(formJsonFile, formDirPath, engineDirectory))\n .transform(async x => ({\n ...x,\n generatorSource: resolveLocalGeneratorSource(engineDirectory),\n engineSource: resolveLocalEngineSource(engineDirectory),\n }))\n .attach(\n async fi => generatorFactory(fi.generatorSource, candyModulesDirectory, false, undefined),\n async (fi, y) => ({ ...fi, generator: y }),\n async fi => getGeneratorSourceKey(fi.generatorSource)\n )\n .attach(async fi =>\n devBuildOptions.watch\n ? Observe.files(\n fi.formSourcesPath,\n \"../../controls/**/*\",\n `./${WellKnownDirectories.FormJsonFileName}`,\n \"schemas/**/*\",\n \"sugar/**/*\",\n \"controls/**/*\",\n \"autocalc/**/*\",\n \"helpers/**/*\",\n \"normalizers/**/*\",\n \"validations/**/*\",\n \"localization/**/*\"\n )\n : Observe.value(fi.formSourcesPath)\n )\n .transform(async fi => ({\n ...fi,\n dependenciesHash: await fi.generator.getAllDependenciesHash(\n formDirPath,\n farmDirectory,\n hlFarmDirectoryPath\n ),\n }))\n .do(async fi => {\n if (options.skipGeneration) {\n return undefined;\n }\n return generateForm(fi.formSourcesPath, farmDirectory, hlFarmDirectoryPath, fi.generator, undefined, {\n skipCodeReformatting: options.skipGeneratedCodeReformatting,\n resourcesHash: fi.dependenciesHash,\n });\n })\n .attach(async () =>\n devBuildOptions.watch\n ? Observe.files(path.join(formDirPath, \"form\"), \"**/*\")\n : Observe.value(path.join(formDirPath, \"form\"))\n )\n .do(async fi => {\n if (options.skipWebPackCompilation) {\n return undefined;\n }\n return compileForm(\n fi.formName,\n formDirPath,\n resourcesDirectory,\n fi.dependenciesHash,\n options.buildDebugOnly,\n undefined,\n false\n );\n })\n .do(fi => writeFLangNormalizationFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeAllKClangFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeExtendedSchemaFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeAttachmentPathFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeAttachmentPathByGfvFiles(fi.formName, formDirPath, resourcesDirectory))\n .do(fi => writeFormMeta(resourcesDirectory, gfv, fi.engineSource, fi.dependenciesHash, fi.themes))\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"schemas\"), rngSchemaMask).do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"SCHEMAS\"),\n x,\n path.join(resourcesDirectory, \"schemas\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"converters\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"CONVERTERS\"),\n x,\n path.join(resourcesDirectory, \"converters\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"mergers\"), \"*\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"MERGERS\"),\n x,\n path.join(resourcesDirectory, \"mergers\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"normalize\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(\n getLogger().withPrefix(\"NORMALIZE\"),\n x,\n path.join(resourcesDirectory, \"normalize\")\n )\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"patch\"), \"*.xslt\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"PATCH\"), x, path.join(resourcesDirectory, \"patch\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"map\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"MAP\"), x, path.join(resourcesDirectory, \"map\"))\n )\n )\n .attach(async fi =>\n Observe.files(path.join(fi.formSourcesPath, \"unmap\"), \"*.xml\").do(x =>\n FSTask.copyRecursively(getLogger().withPrefix(\"UNMAP\"), x, path.join(resourcesDirectory, \"unmap\"))\n )\n );\n };\n\n const buildFormsChain = Observe.fixedFormDirectories(\n formInfos.map(x => path.relative(repositoryRoot, x.formPath))\n ).splitToParallelChains(\n x => x,\n x => x,\n createChainForForm\n );\n\n if (devBuildOptions.watch) {\n const stopObserve1 = await buildEngineChain.observe();\n const stopObserve2 = await buildClientJsChain.observe();\n const stopObserve3 = await staticResourcesChain.observe();\n const stopObserve4 = await buildFormsChain.observe();\n const stopObserve5 = await pickListsChain.observe();\n const stopObserve6 = await resourcesExternalConvertersChain.observe();\n\n await context.waitForExit();\n\n await stopObserve1();\n await stopObserve2();\n await stopObserve3();\n await stopObserve4();\n await stopObserve5();\n await stopObserve6();\n } else {\n const startDate = Date.now();\n await Promise.all([\n buildEngineChain.currentValue,\n buildClientJsChain.currentValue,\n staticResourcesChain.currentValue,\n resourcesExternalConvertersChain.currentValue,\n (async () => {\n try {\n await pickListsChain.currentValue;\n await buildFormsChain.currentValue;\n } catch (e) {\n if (options.continueOnError) {\n context.logger.error(e);\n } else {\n throw e;\n }\n }\n })(),\n ]);\n const totalTime = Date.now() - startDate;\n // eslint-disable-next-line no-console\n console.log(`${chalk.greenBright(\"Build success\")} Total time: ${printTime(totalTime)}`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -11,7 +11,6 @@ var _FormGlobsUtils = require("../../Commons/FormGlobsUtils");
11
11
  var _IterableUtils = require("../../../../Common/IterableUtils");
12
12
  var _WellKnownDirectories = require("../../../../Common/WellKnownDirectories");
13
13
  async function runFormStats(context, options, farmDirectory) {
14
- await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
15
14
  const formGlobs = await _FormGlobsUtils.FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);
16
15
  const engineToGfvMap = {};
17
16
  for (const {
@@ -1 +1 @@
1
- {"version":3,"file":"RunFormStats.js","names":["_path","_interopRequireDefault","require","_ResolveFormInfo","_FormGlobsUtils","_IterableUtils","_WellKnownDirectories","runFormStats","context","options","farmDirectory","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","resolveSpecifiers","engineToGfvMap","gfv","formPath","resolveGfvGlobs","_engineToGfvMap$engin","_engineToGfvMap$engin2","formJsonContent","readFormConfig","path","join","WellKnownDirectories","FormJsonFileName","engineBranch","mode","_formJsonContent$depe","_formJsonContent$depe2","dependencies","engine","push","engineGfvs","iterateEntries","logger","log","length","gfvs","Object","entries"],"sources":["../../../../../src/CLICommands/FormStats/RunFormStats.ts"],"sourcesContent":["import path from \"path\";\n\nimport { readFormConfig } from \"../../BuildTasks/ResolveFormInfo\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { iterateEntries } from \"../../../../Common/IterableUtils\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\n\nimport { FormStatsOptions } from \"./FormStatsOptions\";\n\nexport async function runFormStats(\n context: ConsoleApplicationContext,\n options: FormStatsOptions,\n farmDirectory: string\n): Promise<void> {\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n\n const engineToGfvMap: Record<string, string[]> = {};\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n try {\n const formJsonContent = await readFormConfig(path.join(formPath, WellKnownDirectories.FormJsonFileName));\n let engineBranch: string;\n if (formJsonContent.mode === \"copy-legacy-prebuilt-resources\") {\n engineBranch = \"LegacyCopyPrebuilt\";\n } else if (formJsonContent.mode === \"no-editor\") {\n engineBranch = \"NoEditor\";\n } else {\n engineBranch = formJsonContent.dependencies?.engine ?? \"Unknown\";\n }\n engineToGfvMap[engineBranch] = engineToGfvMap[engineBranch] ?? [];\n engineToGfvMap[engineBranch]?.push(gfv);\n } catch {\n engineToGfvMap[\"Unknown\"] = engineToGfvMap[\"Unknown\"] || [];\n engineToGfvMap[\"Unknown\"].push(gfv);\n }\n }\n\n for (const [engine, engineGfvs] of iterateEntries(engineToGfvMap)) {\n context.logger.log(engine);\n context.logger.log(` ${engineGfvs.length} forms`);\n }\n context.logger.log(\"\");\n for (const [engine, gfvs] of Object.entries(engineToGfvMap)) {\n context.logger.log(engine);\n context.logger.log(` ${gfvs.join(\", \")}`);\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AAIO,eAAeK,YAAYA,CAC9BC,OAAkC,EAClCC,OAAyB,EACzBC,aAAqB,EACR;EACb,MAAMC,yBAAS,CAACC,sCAAsC,CAACH,OAAO,CAACI,SAAS,EAAEH,aAAa,CAAC;EACxF,MAAMG,SAAS,GAAG,MAAMF,yBAAS,CAACG,iBAAiB,CAACL,OAAO,CAACI,SAAS,EAAEH,aAAa,CAAC;EAErF,MAAMK,cAAwC,GAAG,CAAC,CAAC;EACnD,KAAK,MAAM;IAAEC,GAAG;IAAEC;EAAS,CAAC,IAAI,MAAMN,yBAAS,CAACO,eAAe,CAACL,SAAS,EAAEH,aAAa,CAAC,EAAE;IACvF,IAAI;MAAA,IAAAS,qBAAA,EAAAC,sBAAA;MACA,MAAMC,eAAe,GAAG,MAAM,IAAAC,+BAAc,EAACC,aAAI,CAACC,IAAI,CAACP,QAAQ,EAAEQ,0CAAoB,CAACC,gBAAgB,CAAC,CAAC;MACxG,IAAIC,YAAoB;MACxB,IAAIN,eAAe,CAACO,IAAI,KAAK,gCAAgC,EAAE;QAC3DD,YAAY,GAAG,oBAAoB;MACvC,CAAC,MAAM,IAAIN,eAAe,CAACO,IAAI,KAAK,WAAW,EAAE;QAC7CD,YAAY,GAAG,UAAU;MAC7B,CAAC,MAAM;QAAA,IAAAE,qBAAA,EAAAC,sBAAA;QACHH,YAAY,IAAAE,qBAAA,IAAAC,sBAAA,GAAGT,eAAe,CAACU,YAAY,cAAAD,sBAAA,uBAA5BA,sBAAA,CAA8BE,MAAM,cAAAH,qBAAA,cAAAA,qBAAA,GAAI,SAAS;MACpE;MACAd,cAAc,CAACY,YAAY,CAAC,IAAAR,qBAAA,GAAGJ,cAAc,CAACY,YAAY,CAAC,cAAAR,qBAAA,cAAAA,qBAAA,GAAI,EAAE;MACjE,CAAAC,sBAAA,GAAAL,cAAc,CAACY,YAAY,CAAC,cAAAP,sBAAA,eAA5BA,sBAAA,CAA8Ba,IAAI,CAACjB,GAAG,CAAC;IAC3C,CAAC,CAAC,MAAM;MACJD,cAAc,CAAC,SAAS,CAAC,GAAGA,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE;MAC3DA,cAAc,CAAC,SAAS,CAAC,CAACkB,IAAI,CAACjB,GAAG,CAAC;IACvC;EACJ;EAEA,KAAK,MAAM,CAACgB,MAAM,EAAEE,UAAU,CAAC,IAAI,IAAAC,6BAAc,EAACpB,cAAc,CAAC,EAAE;IAC/DP,OAAO,CAAC4B,MAAM,CAACC,GAAG,CAACL,MAAM,CAAC;IAC1BxB,OAAO,CAAC4B,MAAM,CAACC,GAAG,CAAC,KAAKH,UAAU,CAACI,MAAM,QAAQ,CAAC;EACtD;EACA9B,OAAO,CAAC4B,MAAM,CAACC,GAAG,CAAC,EAAE,CAAC;EACtB,KAAK,MAAM,CAACL,MAAM,EAAEO,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAAC1B,cAAc,CAAC,EAAE;IACzDP,OAAO,CAAC4B,MAAM,CAACC,GAAG,CAACL,MAAM,CAAC;IAC1BxB,OAAO,CAAC4B,MAAM,CAACC,GAAG,CAAC,KAAKE,IAAI,CAACf,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;EAC9C;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"RunFormStats.js","names":["_path","_interopRequireDefault","require","_ResolveFormInfo","_FormGlobsUtils","_IterableUtils","_WellKnownDirectories","runFormStats","context","options","farmDirectory","formGlobs","FormGlobs","resolveSpecifiers","engineToGfvMap","gfv","formPath","resolveGfvGlobs","_engineToGfvMap$engin","_engineToGfvMap$engin2","formJsonContent","readFormConfig","path","join","WellKnownDirectories","FormJsonFileName","engineBranch","mode","_formJsonContent$depe","_formJsonContent$depe2","dependencies","engine","push","engineGfvs","iterateEntries","logger","log","length","gfvs","Object","entries"],"sources":["../../../../../src/CLICommands/FormStats/RunFormStats.ts"],"sourcesContent":["import path from \"path\";\n\nimport { readFormConfig } from \"../../BuildTasks/ResolveFormInfo\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { iterateEntries } from \"../../../../Common/IterableUtils\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\n\nimport { FormStatsOptions } from \"./FormStatsOptions\";\n\nexport async function runFormStats(\n context: ConsoleApplicationContext,\n options: FormStatsOptions,\n farmDirectory: string\n): Promise<void> {\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n\n const engineToGfvMap: Record<string, string[]> = {};\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n try {\n const formJsonContent = await readFormConfig(path.join(formPath, WellKnownDirectories.FormJsonFileName));\n let engineBranch: string;\n if (formJsonContent.mode === \"copy-legacy-prebuilt-resources\") {\n engineBranch = \"LegacyCopyPrebuilt\";\n } else if (formJsonContent.mode === \"no-editor\") {\n engineBranch = \"NoEditor\";\n } else {\n engineBranch = formJsonContent.dependencies?.engine ?? \"Unknown\";\n }\n engineToGfvMap[engineBranch] = engineToGfvMap[engineBranch] ?? [];\n engineToGfvMap[engineBranch]?.push(gfv);\n } catch {\n engineToGfvMap[\"Unknown\"] = engineToGfvMap[\"Unknown\"] || [];\n engineToGfvMap[\"Unknown\"].push(gfv);\n }\n }\n\n for (const [engine, engineGfvs] of iterateEntries(engineToGfvMap)) {\n context.logger.log(engine);\n context.logger.log(` ${engineGfvs.length} forms`);\n }\n context.logger.log(\"\");\n for (const [engine, gfvs] of Object.entries(engineToGfvMap)) {\n context.logger.log(engine);\n context.logger.log(` ${gfvs.join(\", \")}`);\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AAIO,eAAeK,YAAYA,CAC9BC,OAAkC,EAClCC,OAAyB,EACzBC,aAAqB,EACR;EACb,MAAMC,SAAS,GAAG,MAAMC,yBAAS,CAACC,iBAAiB,CAACJ,OAAO,CAACE,SAAS,EAAED,aAAa,CAAC;EAErF,MAAMI,cAAwC,GAAG,CAAC,CAAC;EACnD,KAAK,MAAM;IAAEC,GAAG;IAAEC;EAAS,CAAC,IAAI,MAAMJ,yBAAS,CAACK,eAAe,CAACN,SAAS,EAAED,aAAa,CAAC,EAAE;IACvF,IAAI;MAAA,IAAAQ,qBAAA,EAAAC,sBAAA;MACA,MAAMC,eAAe,GAAG,MAAM,IAAAC,+BAAc,EAACC,aAAI,CAACC,IAAI,CAACP,QAAQ,EAAEQ,0CAAoB,CAACC,gBAAgB,CAAC,CAAC;MACxG,IAAIC,YAAoB;MACxB,IAAIN,eAAe,CAACO,IAAI,KAAK,gCAAgC,EAAE;QAC3DD,YAAY,GAAG,oBAAoB;MACvC,CAAC,MAAM,IAAIN,eAAe,CAACO,IAAI,KAAK,WAAW,EAAE;QAC7CD,YAAY,GAAG,UAAU;MAC7B,CAAC,MAAM;QAAA,IAAAE,qBAAA,EAAAC,sBAAA;QACHH,YAAY,IAAAE,qBAAA,IAAAC,sBAAA,GAAGT,eAAe,CAACU,YAAY,cAAAD,sBAAA,uBAA5BA,sBAAA,CAA8BE,MAAM,cAAAH,qBAAA,cAAAA,qBAAA,GAAI,SAAS;MACpE;MACAd,cAAc,CAACY,YAAY,CAAC,IAAAR,qBAAA,GAAGJ,cAAc,CAACY,YAAY,CAAC,cAAAR,qBAAA,cAAAA,qBAAA,GAAI,EAAE;MACjE,CAAAC,sBAAA,GAAAL,cAAc,CAACY,YAAY,CAAC,cAAAP,sBAAA,eAA5BA,sBAAA,CAA8Ba,IAAI,CAACjB,GAAG,CAAC;IAC3C,CAAC,CAAC,MAAM;MACJD,cAAc,CAAC,SAAS,CAAC,GAAGA,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE;MAC3DA,cAAc,CAAC,SAAS,CAAC,CAACkB,IAAI,CAACjB,GAAG,CAAC;IACvC;EACJ;EAEA,KAAK,MAAM,CAACgB,MAAM,EAAEE,UAAU,CAAC,IAAI,IAAAC,6BAAc,EAACpB,cAAc,CAAC,EAAE;IAC/DN,OAAO,CAAC2B,MAAM,CAACC,GAAG,CAACL,MAAM,CAAC;IAC1BvB,OAAO,CAAC2B,MAAM,CAACC,GAAG,CAAC,KAAKH,UAAU,CAACI,MAAM,QAAQ,CAAC;EACtD;EACA7B,OAAO,CAAC2B,MAAM,CAACC,GAAG,CAAC,EAAE,CAAC;EACtB,KAAK,MAAM,CAACL,MAAM,EAAEO,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAAC1B,cAAc,CAAC,EAAE;IACzDN,OAAO,CAAC2B,MAAM,CAACC,GAAG,CAACL,MAAM,CAAC;IAC1BvB,OAAO,CAAC2B,MAAM,CAACC,GAAG,CAAC,KAAKE,IAAI,CAACf,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;EAC9C;AACJ","ignoreList":[]}
@@ -10,7 +10,6 @@ var _FormGlobsUtils = require("../../Commons/FormGlobsUtils");
10
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
12
  async function runRenameFiles(context, options, farmDirectory) {
13
- await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
14
13
  const formGlobs = await _FormGlobsUtils.FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);
15
14
  for (const {
16
15
  gfv,
@@ -1 +1 @@
1
- {"version":3,"file":"RunRenameFiles.js","names":["path","_interopRequireWildcard","require","_fsExtra","_FormGlobsUtils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","runRenameFiles","context","options","farmDirectory","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","resolveSpecifiers","gfv","formPath","resolveGfvGlobs","isNaN","Number","logger","withPrefix","renameFiles","maxSubversion","rngXmlFileName","newRngXmlFileName","fileDirPath","join","pathExists","warning","newFileDirPath","log","rename"],"sources":["../../../../../src/CLICommands/RenameFiles/RunRenameFiles.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { pathExists, rename } from \"fs-extra\";\n\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\n\nimport { RenameFilesOptions } from \"./RenameFilesOptions\";\n\nexport async function runRenameFiles(\n context: ConsoleApplicationContext,\n options: RenameFilesOptions,\n farmDirectory: string\n): Promise<void> {\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n if (!isNaN(Number(gfv))) {\n const logger = context.logger.withPrefix(`FORM:${gfv}`);\n await renameFiles(gfv, formPath, logger);\n }\n }\n}\n\nasync function renameFiles(gfv: string, formPath: string, logger: ILogger): Promise<void> {\n const maxSubversion = 0;\n const rngXmlFileName = `${gfv}.rng.xml`;\n const newRngXmlFileName = `${gfv}.${maxSubversion}.rng.xml`;\n const fileDirPath = path.join(formPath, \"schemas\", rngXmlFileName);\n if (!(await pathExists(fileDirPath))) {\n logger.warning(`Form ${gfv} does not have ${rngXmlFileName}.`);\n return;\n }\n const newFileDirPath = path.join(formPath, \"schemas\", newRngXmlFileName);\n logger.log(`Rename \"${rngXmlFileName}\" in \"${newRngXmlFileName}\".`);\n await rename(fileDirPath, newFileDirPath);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RunRenameFiles.js","names":["path","_interopRequireWildcard","require","_fsExtra","_FormGlobsUtils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","runRenameFiles","context","options","farmDirectory","formGlobs","FormGlobs","resolveSpecifiers","gfv","formPath","resolveGfvGlobs","isNaN","Number","logger","withPrefix","renameFiles","maxSubversion","rngXmlFileName","newRngXmlFileName","fileDirPath","join","pathExists","warning","newFileDirPath","log","rename"],"sources":["../../../../../src/CLICommands/RenameFiles/RunRenameFiles.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { pathExists, rename } from \"fs-extra\";\n\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\n\nimport { RenameFilesOptions } from \"./RenameFilesOptions\";\n\nexport async function runRenameFiles(\n context: ConsoleApplicationContext,\n options: RenameFilesOptions,\n farmDirectory: string\n): Promise<void> {\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n if (!isNaN(Number(gfv))) {\n const logger = context.logger.withPrefix(`FORM:${gfv}`);\n await renameFiles(gfv, formPath, logger);\n }\n }\n}\n\nasync function renameFiles(gfv: string, formPath: string, logger: ILogger): Promise<void> {\n const maxSubversion = 0;\n const rngXmlFileName = `${gfv}.rng.xml`;\n const newRngXmlFileName = `${gfv}.${maxSubversion}.rng.xml`;\n const fileDirPath = path.join(formPath, \"schemas\", rngXmlFileName);\n if (!(await pathExists(fileDirPath))) {\n logger.warning(`Form ${gfv} does not have ${rngXmlFileName}.`);\n return;\n }\n const newFileDirPath = path.join(formPath, \"schemas\", newRngXmlFileName);\n logger.log(`Rename \"${rngXmlFileName}\" in \"${newRngXmlFileName}\".`);\n await rename(fileDirPath, newFileDirPath);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,IAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AAGA,IAAAE,eAAA,GAAAF,OAAA;AAAyD,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAKlD,eAAeW,cAAcA,CAChCC,OAAkC,EAClCC,OAA2B,EAC3BC,aAAqB,EACR;EACb,MAAMC,SAAS,GAAG,MAAMC,yBAAS,CAACC,iBAAiB,CAACJ,OAAO,CAACE,SAAS,EAAED,aAAa,CAAC;EACrF,KAAK,MAAM;IAAEI,GAAG;IAAEC;EAAS,CAAC,IAAI,MAAMH,yBAAS,CAACI,eAAe,CAACL,SAAS,EAAED,aAAa,CAAC,EAAE;IACvF,IAAI,CAACO,KAAK,CAACC,MAAM,CAACJ,GAAG,CAAC,CAAC,EAAE;MACrB,MAAMK,MAAM,GAAGX,OAAO,CAACW,MAAM,CAACC,UAAU,CAAC,QAAQN,GAAG,EAAE,CAAC;MACvD,MAAMO,WAAW,CAACP,GAAG,EAAEC,QAAQ,EAAEI,MAAM,CAAC;IAC5C;EACJ;AACJ;AAEA,eAAeE,WAAWA,CAACP,GAAW,EAAEC,QAAgB,EAAEI,MAAe,EAAiB;EACtF,MAAMG,aAAa,GAAG,CAAC;EACvB,MAAMC,cAAc,GAAG,GAAGT,GAAG,UAAU;EACvC,MAAMU,iBAAiB,GAAG,GAAGV,GAAG,IAAIQ,aAAa,UAAU;EAC3D,MAAMG,WAAW,GAAG3C,IAAI,CAAC4C,IAAI,CAACX,QAAQ,EAAE,SAAS,EAAEQ,cAAc,CAAC;EAClE,IAAI,EAAE,MAAM,IAAAI,mBAAU,EAACF,WAAW,CAAC,CAAC,EAAE;IAClCN,MAAM,CAACS,OAAO,CAAC,QAAQd,GAAG,kBAAkBS,cAAc,GAAG,CAAC;IAC9D;EACJ;EACA,MAAMM,cAAc,GAAG/C,IAAI,CAAC4C,IAAI,CAACX,QAAQ,EAAE,SAAS,EAAES,iBAAiB,CAAC;EACxEL,MAAM,CAACW,GAAG,CAAC,WAAWP,cAAc,SAASC,iBAAiB,IAAI,CAAC;EACnE,MAAM,IAAAO,eAAM,EAACN,WAAW,EAAEI,cAAc,CAAC;AAC7C","ignoreList":[]}
@@ -14,7 +14,6 @@ var _WellKnownDirectories = require("../../../../Common/WellKnownDirectories");
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
16
  async function runUpgradeForm(context, options, farmDirectory) {
17
- await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
18
17
  const formGlobs = await _FormGlobsUtils.FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);
19
18
  for (const {
20
19
  gfv,
@@ -1 +1 @@
1
- {"version":3,"file":"RunUpgradeForm.js","names":["path","_interopRequireWildcard","require","_fsExtra","_PublishedVersionUtils","_ResolveFormInfo","_FormGlobsUtils","_Version","_WellKnownDirectories","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","runUpgradeForm","context","options","farmDirectory","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","resolveSpecifiers","gfv","formPath","resolveGfvGlobs","logger","withPrefix","useCiBuild","log","upgradeFormToCiBuildMode","engine","undefined","upgradeFormEngine","skipPreVersions","preid","upgradeFormPrerelease","engineVersion","formJsonPath","join","WellKnownDirectories","FormJsonFileName","pathExists","warning","formConfig","readFormConfig","_formConfig$dependenc","_formConfig$dependenc2","dependencies","generator","_formConfig$dependenc3","_formConfig$dependenc4","engineVersionSpec","parseCandyVersionSpec","generatorVersionSpec","type","test","version","mode","getLastStableEngineVersion","getLastStableGeneratorVersion","writeJson","spaces","isEngineVersionExists","Error","generatedFormDirectory","isNewFormJsonFormat","build","remove","formGitIgnorePath","gitIgnoreContent","readFile","split","includes","writeFile","trimRight","prereleaseVersionFormJson","getPrereleaseVersionFormJson"],"sources":["../../../../../src/CLICommands/UpgradeForm/RunUpgradeForm.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { pathExists, readFile, remove, writeFile, writeJson } from \"fs-extra\";\n\nimport {\n getLastStableEngineVersion,\n getLastStableGeneratorVersion,\n getPrereleaseVersionFormJson,\n isEngineVersionExists,\n} from \"../../BuildTasks/PublishedVersionUtils\";\nimport { isNewFormJsonFormat, readFormConfig } from \"../../BuildTasks/ResolveFormInfo\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\nimport { parseCandyVersionSpec } from \"../../BuildTasks/Version\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\n\nimport { UpgradeFormOptions } from \"./UpgradeFormOptions\";\n\nexport async function runUpgradeForm(\n context: ConsoleApplicationContext,\n options: UpgradeFormOptions,\n farmDirectory: string\n): Promise<void> {\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n const logger = context.logger.withPrefix(`FORM:${gfv}`);\n if (options.useCiBuild) {\n logger.log(\"Begin upgrading build mode\");\n await upgradeFormToCiBuildMode(formPath, logger);\n logger.log(\"Finish upgrading build mode\");\n }\n if (options.engine != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormEngine(formPath, options.engine, options.skipPreVersions, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n if (options.preid != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormPrerelease(formPath, options.preid, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n }\n}\n\nasync function upgradeFormEngine(\n formPath: string,\n engineVersion: string,\n skipPreVersions: boolean,\n logger: ILogger\n): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"Form does not have form.json: Upgrade skipped\");\n return;\n }\n const formConfig = await readFormConfig(formJsonPath);\n if (skipPreVersions) {\n if (formConfig.dependencies?.engine != undefined && formConfig.dependencies?.generator != undefined) {\n const engineVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.engine);\n const generatorVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.generator);\n if (\n engineVersionSpec.type === \"pre\" ||\n generatorVersionSpec.type === \"pre\" ||\n (engineVersionSpec.type === \"version\" && /[a-zA-Z]/.test(engineVersionSpec.version)) ||\n (generatorVersionSpec.type === \"version\" && /[a-zA-Z]/.test(generatorVersionSpec.version))\n ) {\n logger.log(\n \"Form version has prerelease version: Upgrade skipped due to flag skipPreVersions (--skip-pre-versions) specified\"\n );\n return;\n }\n }\n }\n if (formConfig.mode === \"no-editor\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (formConfig.mode === \"copy-legacy-prebuilt-resources\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (engineVersion === \"latest\") {\n formConfig.dependencies = {\n engine: await getLastStableEngineVersion(),\n generator: await getLastStableGeneratorVersion(),\n };\n logger.log(`Updated to last stable version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n if (await isEngineVersionExists(engineVersion)) {\n formConfig.dependencies = { engine: engineVersion, generator: engineVersion };\n logger.log(`Updated to version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${engineVersion} не существует.`);\n }\n }\n}\n\nasync function upgradeFormToCiBuildMode(formPath: string, logger: ILogger): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"form.json does not exists. Upgrade skipped.\");\n return;\n }\n const generatedFormDirectory = path.join(formPath, \"form\");\n if (!(await isNewFormJsonFormat(formJsonPath))) {\n throw new Error(\n \"Файл form.json формы должен иметь новый формат зависимости. Обратитесь к разработчикам за разъяснениями.\"\n );\n }\n const formConfig = await readFormConfig(formJsonPath);\n if (formConfig.build !== \"ci\") {\n formConfig.build = \"ci\";\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n logger.log(\"Updated form.json\");\n }\n if (await pathExists(generatedFormDirectory)) {\n await remove(generatedFormDirectory);\n logger.log(\"Removed form directory\");\n }\n const formGitIgnorePath = path.join(formPath, \".gitignore\");\n if (await pathExists(formGitIgnorePath)) {\n const gitIgnoreContent = await readFile(formGitIgnorePath, \"utf8\");\n if (!gitIgnoreContent.split(\"\\n\").includes(\"form\")) {\n await writeFile(formGitIgnorePath, gitIgnoreContent.trimRight() + \"\\n\" + \"form\\n\");\n logger.log(\"Updated .gitignore\");\n }\n } else {\n await writeFile(formGitIgnorePath, \"form\\n\");\n logger.log(\"Created .gitignore\");\n }\n}\n\nasync function upgradeFormPrerelease(formPath: string, preid: string, logger: ILogger): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath);\n const prereleaseVersionFormJson = await getPrereleaseVersionFormJson(preid);\n\n if (prereleaseVersionFormJson != undefined) {\n formConfig.dependencies = { engine: prereleaseVersionFormJson, generator: prereleaseVersionFormJson };\n logger.log(`Updated to prerelease version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${preid} не существует.`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RunUpgradeForm.js","names":["path","_interopRequireWildcard","require","_fsExtra","_PublishedVersionUtils","_ResolveFormInfo","_FormGlobsUtils","_Version","_WellKnownDirectories","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","runUpgradeForm","context","options","farmDirectory","formGlobs","FormGlobs","resolveSpecifiers","gfv","formPath","resolveGfvGlobs","logger","withPrefix","useCiBuild","log","upgradeFormToCiBuildMode","engine","undefined","upgradeFormEngine","skipPreVersions","preid","upgradeFormPrerelease","engineVersion","formJsonPath","join","WellKnownDirectories","FormJsonFileName","pathExists","warning","formConfig","readFormConfig","_formConfig$dependenc","_formConfig$dependenc2","dependencies","generator","_formConfig$dependenc3","_formConfig$dependenc4","engineVersionSpec","parseCandyVersionSpec","generatorVersionSpec","type","test","version","mode","getLastStableEngineVersion","getLastStableGeneratorVersion","writeJson","spaces","isEngineVersionExists","Error","generatedFormDirectory","isNewFormJsonFormat","build","remove","formGitIgnorePath","gitIgnoreContent","readFile","split","includes","writeFile","trimRight","prereleaseVersionFormJson","getPrereleaseVersionFormJson"],"sources":["../../../../../src/CLICommands/UpgradeForm/RunUpgradeForm.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { pathExists, readFile, remove, writeFile, writeJson } from \"fs-extra\";\n\nimport {\n getLastStableEngineVersion,\n getLastStableGeneratorVersion,\n getPrereleaseVersionFormJson,\n isEngineVersionExists,\n} from \"../../BuildTasks/PublishedVersionUtils\";\nimport { isNewFormJsonFormat, readFormConfig } from \"../../BuildTasks/ResolveFormInfo\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\nimport { parseCandyVersionSpec } from \"../../BuildTasks/Version\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\n\nimport { UpgradeFormOptions } from \"./UpgradeFormOptions\";\n\nexport async function runUpgradeForm(\n context: ConsoleApplicationContext,\n options: UpgradeFormOptions,\n farmDirectory: string\n): Promise<void> {\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n const logger = context.logger.withPrefix(`FORM:${gfv}`);\n if (options.useCiBuild) {\n logger.log(\"Begin upgrading build mode\");\n await upgradeFormToCiBuildMode(formPath, logger);\n logger.log(\"Finish upgrading build mode\");\n }\n if (options.engine != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormEngine(formPath, options.engine, options.skipPreVersions, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n if (options.preid != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormPrerelease(formPath, options.preid, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n }\n}\n\nasync function upgradeFormEngine(\n formPath: string,\n engineVersion: string,\n skipPreVersions: boolean,\n logger: ILogger\n): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"Form does not have form.json: Upgrade skipped\");\n return;\n }\n const formConfig = await readFormConfig(formJsonPath);\n if (skipPreVersions) {\n if (formConfig.dependencies?.engine != undefined && formConfig.dependencies?.generator != undefined) {\n const engineVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.engine);\n const generatorVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.generator);\n if (\n engineVersionSpec.type === \"pre\" ||\n generatorVersionSpec.type === \"pre\" ||\n (engineVersionSpec.type === \"version\" && /[a-zA-Z]/.test(engineVersionSpec.version)) ||\n (generatorVersionSpec.type === \"version\" && /[a-zA-Z]/.test(generatorVersionSpec.version))\n ) {\n logger.log(\n \"Form version has prerelease version: Upgrade skipped due to flag skipPreVersions (--skip-pre-versions) specified\"\n );\n return;\n }\n }\n }\n if (formConfig.mode === \"no-editor\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (formConfig.mode === \"copy-legacy-prebuilt-resources\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (engineVersion === \"latest\") {\n formConfig.dependencies = {\n engine: await getLastStableEngineVersion(),\n generator: await getLastStableGeneratorVersion(),\n };\n logger.log(`Updated to last stable version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n if (await isEngineVersionExists(engineVersion)) {\n formConfig.dependencies = { engine: engineVersion, generator: engineVersion };\n logger.log(`Updated to version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${engineVersion} не существует.`);\n }\n }\n}\n\nasync function upgradeFormToCiBuildMode(formPath: string, logger: ILogger): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"form.json does not exists. Upgrade skipped.\");\n return;\n }\n const generatedFormDirectory = path.join(formPath, \"form\");\n if (!(await isNewFormJsonFormat(formJsonPath))) {\n throw new Error(\n \"Файл form.json формы должен иметь новый формат зависимости. Обратитесь к разработчикам за разъяснениями.\"\n );\n }\n const formConfig = await readFormConfig(formJsonPath);\n if (formConfig.build !== \"ci\") {\n formConfig.build = \"ci\";\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n logger.log(\"Updated form.json\");\n }\n if (await pathExists(generatedFormDirectory)) {\n await remove(generatedFormDirectory);\n logger.log(\"Removed form directory\");\n }\n const formGitIgnorePath = path.join(formPath, \".gitignore\");\n if (await pathExists(formGitIgnorePath)) {\n const gitIgnoreContent = await readFile(formGitIgnorePath, \"utf8\");\n if (!gitIgnoreContent.split(\"\\n\").includes(\"form\")) {\n await writeFile(formGitIgnorePath, gitIgnoreContent.trimRight() + \"\\n\" + \"form\\n\");\n logger.log(\"Updated .gitignore\");\n }\n } else {\n await writeFile(formGitIgnorePath, \"form\\n\");\n logger.log(\"Created .gitignore\");\n }\n}\n\nasync function upgradeFormPrerelease(formPath: string, preid: string, logger: ILogger): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath);\n const prereleaseVersionFormJson = await getPrereleaseVersionFormJson(preid);\n\n if (prereleaseVersionFormJson != undefined) {\n formConfig.dependencies = { engine: prereleaseVersionFormJson, generator: prereleaseVersionFormJson };\n logger.log(`Updated to prerelease version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${preid} не существует.`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -73,17 +73,9 @@ class FormGlobs {
73
73
  }
74
74
  return result;
75
75
  }
76
- static async ensureEachGlobResolvesIntoExistingForm(formGlobs, farmDirectory) {
77
- const promises = formGlobs.map(async glob => {
78
- const gfvs = await this.resolveGfvGlobs([glob], farmDirectory);
79
- if (gfvs.length === 0) {
80
- throw new Error(`Форм соответствующих ${glob} не найдено.`);
81
- }
82
- });
83
- await Promise.all(promises);
84
- }
85
- static async resolveGfvGlobs(formGlobs, farmDirectory) {
76
+ static async resolveGfvGlobs(formGlobs, farmDirectory, throwErrorIfUnusedGlobFound = true) {
86
77
  const result = new Map();
78
+ const foundGlobs = new Set();
87
79
  const forms = await FormGlobs.enumerateFormsInRepository(_path.default.normalize(_path.default.join(farmDirectory, "..")));
88
80
  for (const {
89
81
  gfv,
@@ -92,17 +84,26 @@ class FormGlobs {
92
84
  for (const formGlob of formGlobs) {
93
85
  if (await FormGlobs.isFormMatchToGlob(formGlob, gfv, formPath)) {
94
86
  result.set(gfv, formPath);
87
+ foundGlobs.add(formGlob);
95
88
  }
96
89
  }
97
90
  }
91
+ if (throwErrorIfUnusedGlobFound) {
92
+ const maxAbsemtGlobsToLog = 10;
93
+ const absentGlobs = Iterator.from(formGlobs).filter(formGlob => !foundGlobs.has(formGlob)).take(maxAbsemtGlobsToLog).toArray();
94
+ if (absentGlobs.length > 0) {
95
+ throw new Error(`Форм соответствующих ${absentGlobs.join(", ")} не найдено.`);
96
+ }
97
+ }
98
98
  return [...result.entries()].map(([gfv, formPath]) => ({
99
99
  gfv: gfv,
100
100
  formPath: formPath
101
101
  }));
102
102
  }
103
103
  static async resolveSpecifiers(formGlobsWithSpecifiers, farmDirectory) {
104
- const results = await Promise.all(formGlobsWithSpecifiers.map(x => this.resolveOnlyFormGlobSpecifiers(x, farmDirectory)));
105
- return results.flat();
104
+ const suitableGlobs = formGlobsWithSpecifiers.filter(x => x.endsWith(":with-ui-tests") || x.endsWith(":with-ci-build"));
105
+ const resolvedGlobs = (await this.resolveGfvGlobs(suitableGlobs, farmDirectory, false)).map(x => x.gfv);
106
+ return resolvedGlobs;
106
107
  }
107
108
  static async isFormMatchToGlob(formGlob, gfv, formPath) {
108
109
  const gfvRegexp = new RegExp("^" + formGlob.replace(":with-ui-tests", "").replace(":with-ci-build", "").replace(/\*/gi, "\\d*").replace(/\?/gi, "\\d") + "$");
@@ -123,15 +124,6 @@ class FormGlobs {
123
124
  }
124
125
  return false;
125
126
  }
126
- static async resolveOnlyFormGlobSpecifiers(formGlob, farmDirectory) {
127
- if (formGlob.endsWith(":with-ui-tests")) {
128
- return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);
129
- }
130
- if (formGlob.endsWith(":with-ci-build")) {
131
- return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);
132
- }
133
- return [formGlob];
134
- }
135
127
  }
136
128
  exports.FormGlobs = FormGlobs;
137
129
  //# sourceMappingURL=FormGlobsUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormGlobsUtils.js","names":["_path","_interopRequireDefault","require","_fsExtra","_ResolveFormInfo","_FormPathUtils","_WellKnownDirectories","_FsUtils","FormGlobs","enumerateFormsInRepository","repositoryRoots","result","repositoryRoot","formJsonPath","globAsync","WellKnownDirectories","FormJsonFileName","cwd","formPath","path","dirname","gfv","extractGfvFromFormPath","push","join","formRelativePath","TestFarmDir","CandySubdirectoryName","ensureEachGlobResolvesIntoExistingForm","formGlobs","farmDirectory","promises","map","glob","gfvs","resolveGfvGlobs","length","Error","Promise","all","Map","forms","normalize","formGlob","isFormMatchToGlob","set","entries","resolveSpecifiers","formGlobsWithSpecifiers","results","x","resolveOnlyFormGlobSpecifiers","flat","gfvRegexp","RegExp","replace","test","includes","pathExists","formConfig","readFormConfig","build","endsWith","exports"],"sources":["../../../../src/Commons/FormGlobsUtils.ts"],"sourcesContent":["import path from \"path\";\n\nimport { pathExists } from \"fs-extra\";\n\nimport { readFormConfig } from \"../BuildTasks/ResolveFormInfo\";\nimport { extractGfvFromFormPath } from \"../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../Common/WellKnownDirectories\";\n\nimport { globAsync } from \"./FsUtils\";\nimport { FormLocationInfo } from \"./FormLocationInfo\";\n\nexport interface GfvInfo {\n gfv: string;\n formPath: string;\n formRelativePath: string;\n}\n\nexport class FormGlobs {\n public static async enumerateFormsInRepository(...repositoryRoots: string[]): Promise<GfvInfo[]> {\n const result: GfvInfo[] = [];\n\n for (const repositoryRoot of repositoryRoots) {\n for (const formJsonPath of await globAsync(`candy.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`, {\n cwd: repositoryRoot,\n })) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `${WellKnownDirectories.TestFarmDir}/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.rpn.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.diadoc.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `**/${WellKnownDirectories.CandySubdirectoryName}/${WellKnownDirectories.FormJsonFileName}`,\n { cwd: path.join(repositoryRoot, \"forms\") }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, \"forms\", formPath),\n formRelativePath: formPath,\n });\n }\n }\n return result;\n }\n\n public static async ensureEachGlobResolvesIntoExistingForm(\n formGlobs: string[],\n farmDirectory: string\n ): Promise<void> {\n const promises = formGlobs.map(async glob => {\n const gfvs = await this.resolveGfvGlobs([glob], farmDirectory);\n if (gfvs.length === 0) {\n throw new Error(`Форм соответствующих ${glob} не найдено.`);\n }\n });\n await Promise.all(promises);\n }\n\n public static async resolveGfvGlobs(formGlobs: string[], farmDirectory: string): Promise<FormLocationInfo[]> {\n const result: Map<string, string> = new Map();\n\n const forms = await FormGlobs.enumerateFormsInRepository(path.normalize(path.join(farmDirectory, \"..\")));\n for (const { gfv, formPath } of forms) {\n for (const formGlob of formGlobs) {\n if (await FormGlobs.isFormMatchToGlob(formGlob, gfv, formPath)) {\n result.set(gfv, formPath);\n }\n }\n }\n\n return [...result.entries()].map(([gfv, formPath]) => ({ gfv: gfv, formPath: formPath }));\n }\n\n public static async resolveSpecifiers(formGlobsWithSpecifiers: string[], farmDirectory: string): Promise<string[]> {\n const results = await Promise.all(\n formGlobsWithSpecifiers.map(x => this.resolveOnlyFormGlobSpecifiers(x, farmDirectory))\n );\n return results.flat();\n }\n\n private static async isFormMatchToGlob(formGlob: string, gfv: string, formPath: string) {\n const gfvRegexp = new RegExp(\n \"^\" +\n formGlob\n .replace(\":with-ui-tests\", \"\")\n .replace(\":with-ci-build\", \"\")\n .replace(/\\*/gi, \"\\\\d*\")\n .replace(/\\?/gi, \"\\\\d\") +\n \"$\"\n );\n if (gfvRegexp.test(gfv)) {\n if (formGlob.includes(\":with-ui-tests\")) {\n if (!(await pathExists(path.join(formPath, \"test\")))) {\n return false;\n }\n }\n if (formGlob.includes(\":with-ci-build\")) {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath);\n if (formConfig.build !== \"ci\") {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n\n private static async resolveOnlyFormGlobSpecifiers(formGlob: string, farmDirectory: string): Promise<string[]> {\n if (formGlob.endsWith(\":with-ui-tests\")) {\n return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);\n }\n if (formGlob.endsWith(\":with-ci-build\")) {\n return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);\n }\n return [formGlob];\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FormGlobsUtils.js","names":["_path","_interopRequireDefault","require","_fsExtra","_ResolveFormInfo","_FormPathUtils","_WellKnownDirectories","_FsUtils","FormGlobs","enumerateFormsInRepository","repositoryRoots","result","repositoryRoot","formJsonPath","globAsync","WellKnownDirectories","FormJsonFileName","cwd","formPath","path","dirname","gfv","extractGfvFromFormPath","push","join","formRelativePath","TestFarmDir","CandySubdirectoryName","resolveGfvGlobs","formGlobs","farmDirectory","throwErrorIfUnusedGlobFound","Map","foundGlobs","Set","forms","normalize","formGlob","isFormMatchToGlob","set","add","maxAbsemtGlobsToLog","absentGlobs","Iterator","from","filter","has","take","toArray","length","Error","entries","map","resolveSpecifiers","formGlobsWithSpecifiers","suitableGlobs","x","endsWith","resolvedGlobs","gfvRegexp","RegExp","replace","test","includes","pathExists","formConfig","readFormConfig","build","exports"],"sources":["../../../../src/Commons/FormGlobsUtils.ts"],"sourcesContent":["import path from \"path\";\n\nimport { pathExists } from \"fs-extra\";\n\nimport { readFormConfig } from \"../BuildTasks/ResolveFormInfo\";\nimport { extractGfvFromFormPath } from \"../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../Common/WellKnownDirectories\";\n\nimport { globAsync } from \"./FsUtils\";\nimport { FormLocationInfo } from \"./FormLocationInfo\";\n\nexport interface GfvInfo {\n gfv: string;\n formPath: string;\n formRelativePath: string;\n}\n\nexport class FormGlobs {\n public static async enumerateFormsInRepository(...repositoryRoots: string[]): Promise<GfvInfo[]> {\n const result: GfvInfo[] = [];\n\n for (const repositoryRoot of repositoryRoots) {\n for (const formJsonPath of await globAsync(`candy.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`, {\n cwd: repositoryRoot,\n })) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `${WellKnownDirectories.TestFarmDir}/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.rpn.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.diadoc.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `**/${WellKnownDirectories.CandySubdirectoryName}/${WellKnownDirectories.FormJsonFileName}`,\n { cwd: path.join(repositoryRoot, \"forms\") }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, \"forms\", formPath),\n formRelativePath: formPath,\n });\n }\n }\n return result;\n }\n\n public static async resolveGfvGlobs(\n formGlobs: string[],\n farmDirectory: string,\n throwErrorIfUnusedGlobFound: boolean = true\n ): Promise<FormLocationInfo[]> {\n const result: Map<string, string> = new Map();\n const foundGlobs = new Set<string>();\n\n const forms = await FormGlobs.enumerateFormsInRepository(path.normalize(path.join(farmDirectory, \"..\")));\n for (const { gfv, formPath } of forms) {\n for (const formGlob of formGlobs) {\n if (await FormGlobs.isFormMatchToGlob(formGlob, gfv, formPath)) {\n result.set(gfv, formPath);\n foundGlobs.add(formGlob);\n }\n }\n }\n\n if (throwErrorIfUnusedGlobFound) {\n const maxAbsemtGlobsToLog = 10;\n const absentGlobs = Iterator.from(formGlobs)\n .filter(formGlob => !foundGlobs.has(formGlob))\n .take(maxAbsemtGlobsToLog)\n .toArray();\n if (absentGlobs.length > 0) {\n throw new Error(`Форм соответствующих ${absentGlobs.join(\", \")} не найдено.`);\n }\n }\n\n return [...result.entries()].map(([gfv, formPath]) => ({ gfv: gfv, formPath: formPath }));\n }\n\n public static async resolveSpecifiers(formGlobsWithSpecifiers: string[], farmDirectory: string): Promise<string[]> {\n const suitableGlobs = formGlobsWithSpecifiers.filter(\n x => x.endsWith(\":with-ui-tests\") || x.endsWith(\":with-ci-build\")\n );\n const resolvedGlobs = (await this.resolveGfvGlobs(suitableGlobs, farmDirectory, false)).map(x => x.gfv);\n return resolvedGlobs;\n }\n\n private static async isFormMatchToGlob(formGlob: string, gfv: string, formPath: string) {\n const gfvRegexp = new RegExp(\n \"^\" +\n formGlob\n .replace(\":with-ui-tests\", \"\")\n .replace(\":with-ci-build\", \"\")\n .replace(/\\*/gi, \"\\\\d*\")\n .replace(/\\?/gi, \"\\\\d\") +\n \"$\"\n );\n if (gfvRegexp.test(gfv)) {\n if (formGlob.includes(\":with-ui-tests\")) {\n if (!(await pathExists(path.join(formPath, \"test\")))) {\n return false;\n }\n }\n if (formGlob.includes(\":with-ci-build\")) {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath);\n if (formConfig.build !== \"ci\") {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontur.candy/tools",
3
- "version": "2.228.0",
3
+ "version": "2.229.0",
4
4
  "description": "",
5
5
  "files": [
6
6
  "candy.js",