public override async Task RunAsync()

in src/Cli/func/Actions/HelpAction.cs [57:101]


        public override async Task RunAsync()
        {
            var latestVersionMessageTask = VersionHelper.IsRunningAnOlderVersion();
            ScriptHostHelpers.SetIsHelpRunning();
            if (!string.IsNullOrEmpty(_context) || !string.IsNullOrEmpty(_subContext))
            {
                var context = Context.None;
                var subContext = Context.None;

                if (!string.IsNullOrEmpty(_context) && !Enum.TryParse(_context, true, out context))
                {
                    // Show help for create action if the name matches with one of the supported triggers
                    if (await ShowCreateActionHelp())
                    {
                        return;
                    }

                    Utilities.PrintLogo();
                    ColoredConsole.Error.WriteLine(ErrorColor($"Error: unknown argument {_context}"));
                    DisplayGeneralHelp();
                    return;
                }

                Utilities.PrintLogo();
                if (!string.IsNullOrEmpty(_subContext) && !Enum.TryParse(_subContext, true, out subContext))
                {
                    ColoredConsole.Error.WriteLine(ErrorColor($"Error: unknown argument {_subContext} in {context.ToLowerCaseString()} Context"));
                    DisplayContextHelp(context, Context.None);
                    return;
                }

                DisplayContextHelp(context, subContext);
            }
            else if (_action != null && _parseResult != null)
            {
                DisplayActionHelp();
            }
            else
            {
                DisplayGeneralHelp();
            }

            await RunVersionCheckTask(latestVersionMessageTask);
            return;
        }