public void FillOutputByAdditionalResourcesDirectory(Dictionary <string, TSProject> buildResultModules, MainBuildResult buildResult) { if (Owner.UsedDependencies == null) { Owner.UsedDependencies = new HashSet <string>(); } else { Owner.UsedDependencies.Clear(); } var nodeModulesDir = Owner.Owner.FullPath; while (nodeModulesDir.Length > 0) { if (Owner.DiskCache.TryGetItem(nodeModulesDir + "/node_modules") is IDirectoryCache dc && !dc.IsInvalid) { break; } nodeModulesDir = PathUtils.Parent(nodeModulesDir).ToString(); } Owner.FillOutputByAssets(buildResult, nodeModulesDir, this); FillOutputByAssetsFromModules(buildResult, buildResultModules, nodeModulesDir); if (AdditionalResourcesDirectory == null) { return; } var resourcesPath = PathUtils.Join(Owner.Owner.FullPath, AdditionalResourcesDirectory); var item = Owner.DiskCache.TryGetItem(resourcesPath); if (item is IDirectoryCache) { RecursiveFillOutputByAdditionalResourcesDirectory(buildResult, item as IDirectoryCache, resourcesPath); } }
public void FillOutputByAdditionalResourcesDirectory(RefDictionary <string, object> filesContent, Dictionary <string, TSProject> buildResultModules, BuildResult buildResult) { var nodeModulesDir = Owner.Owner.FullPath; Owner.FillOutputByAssets(filesContent, buildResult, nodeModulesDir, this); FillOutputByAssetsFromModules(filesContent, buildResultModules, nodeModulesDir, buildResult); if (AdditionalResourcesDirectory == null) { return; } var resourcesPath = PathUtils.Join(Owner.Owner.FullPath, AdditionalResourcesDirectory); var item = Owner.DiskCache.TryGetItem(resourcesPath); if (item is IDirectoryCache) { RecursiveFillOutputByAdditionalResourcesDirectory(item as IDirectoryCache, resourcesPath, filesContent, buildResult); } }