コード例 #1
0
        public static NpmHistory GetPackageHistory(string package)
        {
            var processStartInfo = CreateProcessStartInfo();

            var process = Process.Start(processStartInfo);

            if (process == null)
            {
                MessageBox.Show($"{Resource.NpmPackageInstallFailureMessage}");
                return(null);
            }

            process.StandardInput.WriteLine($"npm view {package}");
            process.StandardInput.Flush();
            process.StandardInput.Close();
            var output = process.StandardOutput.ReadToEnd();

            process.WaitForExit();

            Regex regEx = new Regex(@"\{(.|\s)*\}");
            var   m     = regEx.Match(output);

            string json = m.Value;

            NpmHistory history = JsonConvert.DeserializeObject <NpmHistory>(json);

            return(history);
        }
コード例 #2
0
        private void PreHandleTypeScriptProjects()
        {
            NpmHistory history = NpmProcessor.GetPackageHistory("@types/xrm");

            NpmPicker npmPicker = new NpmPicker(history);
            bool?     result    = npmPicker.ShowModal();

            if (!result.HasValue || result.Value == false)
            {
                throw new WizardBackoutException();
            }

            _typesXrmVersion = npmPicker.SelectedPackage.Version;
        }