private static void AddSpklMapping(SpklConfig spklConfig, Project project, string profile, WebResourceItem webResourceItem)
        {
            var spklConfigWebresourceFile = new SpklConfigWebresourceFile
            {
                uniquename  = webResourceItem.Name,
                file        = webResourceItem.BoundFile,
                description = webResourceItem.Description
            };

            if (WebResourceTypes.GetExtensionType(webResourceItem.BoundFile) == D365DeveloperExtensions.Core.Enums.FileExtensionType.Ts)
            {
                spklConfigWebresourceFile.file = TsHelper.GetJsForTsPath(webResourceItem.BoundFile, project);
                spklConfigWebresourceFile.ts   = webResourceItem.BoundFile;
            }

            if (profile.StartsWith(ExtensionConstants.NoProfilesText))
            {
                spklConfig.webresources[0].files.Add(spklConfigWebresourceFile);
            }
            else
            {
                spklConfig.webresources.FirstOrDefault(w => w.profile == profile)?.files.Add(spklConfigWebresourceFile);
            }

            var projectPath = D365DeveloperExtensions.Core.Vs.ProjectWorker.GetProjectPath(project);

            ConfigFile.UpdateSpklConfigFile(projectPath, spklConfig);
        }
        public static void AddOrUpdateSpklMapping(Project project, string profile, WebResourceItem webResourceItem)
        {
            SpklConfig spklConfig = CrmDeveloperExtensions2.Core.Config.Mapping.GetSpklConfigFile(project);

            List <SpklConfigWebresourceFile> spklConfigWebresourceFiles = GetSpklConfigWebresourceFiles(profile, spklConfig) ??
                                                                          new List <SpklConfigWebresourceFile>();

            SpklConfigWebresourceFile spklConfigWebresourceFile =
                spklConfigWebresourceFiles.FirstOrDefault(w => w.uniquename == webResourceItem.Name);

            if (spklConfigWebresourceFile == null)
            {
                AddSpklMapping(spklConfig, project, profile, webResourceItem);
            }
            else
            {
                UpdateSpklMapping(spklConfig, project, profile, webResourceItem);
            }
        }
        private static void AddSpklMapping(SpklConfig spklConfig, Project project, string profile, WebResourceItem webResourceItem)
        {
            SpklConfigWebresourceFile spklConfigWebresourceFile = new SpklConfigWebresourceFile
            {
                uniquename  = webResourceItem.Name,
                file        = webResourceItem.BoundFile,
                description = webResourceItem.Description
            };

            if (profile.StartsWith(ExtensionConstants.NoProfilesText))
            {
                spklConfig.webresources[0].files.Add(spklConfigWebresourceFile);
            }
            else
            {
                spklConfig.webresources.FirstOrDefault(w => w.profile == profile)?.files.Add(spklConfigWebresourceFile);
            }

            string projectPath = CrmDeveloperExtensions2.Core.Vs.ProjectWorker.GetProjectPath(project);

            ConfigFile.UpdateSpklConfigFile(projectPath, spklConfig);
        }