@flowscripter/dynamic-cli-framework 1.4.18 → 1.5.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.
- package/README.md +3 -14
- package/cli-plugin.ts +16 -0
- package/dist/cli-plugin.d.ts +17 -0
- package/dist/cli-plugin.d.ts.map +1 -0
- package/dist/cli-plugin.js +69 -0
- package/dist/index.d.ts +115 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +105696 -0
- package/dist/src/api/BaseCLIFeatureOptions.d.ts +12 -0
- package/dist/src/api/BaseCLIFeatureOptions.d.ts.map +1 -0
- package/dist/src/api/CLI.d.ts +17 -0
- package/dist/src/api/CLI.d.ts.map +1 -0
- package/dist/src/api/CLIConfig.d.ts +22 -0
- package/dist/src/api/CLIConfig.d.ts.map +1 -0
- package/dist/src/api/Context.d.ts +23 -0
- package/dist/src/api/Context.d.ts.map +1 -0
- package/dist/src/api/RunResult.d.ts +128 -0
- package/dist/src/api/RunResult.d.ts.map +1 -0
- package/dist/src/api/argument/Argument.d.ts +62 -0
- package/dist/src/api/argument/Argument.d.ts.map +1 -0
- package/dist/src/api/argument/ArgumentValueTypes.d.ts +68 -0
- package/dist/src/api/argument/ArgumentValueTypes.d.ts.map +1 -0
- package/dist/src/api/argument/ComplexOption.d.ts +21 -0
- package/dist/src/api/argument/ComplexOption.d.ts.map +1 -0
- package/dist/src/api/argument/GlobalCommandArgument.d.ts +16 -0
- package/dist/src/api/argument/GlobalCommandArgument.d.ts.map +1 -0
- package/dist/src/api/argument/Option.d.ts +29 -0
- package/dist/src/api/argument/Option.d.ts.map +1 -0
- package/dist/src/api/argument/Positional.d.ts +26 -0
- package/dist/src/api/argument/Positional.d.ts.map +1 -0
- package/dist/src/api/argument/SubCommandArgument.d.ts +18 -0
- package/dist/src/api/argument/SubCommandArgument.d.ts.map +1 -0
- package/dist/src/api/command/Command.d.ts +21 -0
- package/dist/src/api/command/Command.d.ts.map +1 -0
- package/dist/src/api/command/GlobalCommand.d.ts +28 -0
- package/dist/src/api/command/GlobalCommand.d.ts.map +1 -0
- package/dist/src/api/command/GlobalModifierCommand.d.ts +12 -0
- package/dist/src/api/command/GlobalModifierCommand.d.ts.map +1 -0
- package/dist/src/api/command/GroupCommand.d.ts +19 -0
- package/dist/src/api/command/GroupCommand.d.ts.map +1 -0
- package/dist/src/api/command/SubCommand.d.ts +37 -0
- package/dist/src/api/command/SubCommand.d.ts.map +1 -0
- package/dist/src/api/command/UsageExample.d.ts +20 -0
- package/dist/src/api/command/UsageExample.d.ts.map +1 -0
- package/dist/src/api/plugin/CommandFactory.d.ts +23 -0
- package/dist/src/api/plugin/CommandFactory.d.ts.map +1 -0
- package/dist/src/api/plugin/ServiceProviderFactory.d.ts +25 -0
- package/dist/src/api/plugin/ServiceProviderFactory.d.ts.map +1 -0
- package/dist/src/api/service/ServiceProvider.d.ts +47 -0
- package/dist/src/api/service/ServiceProvider.d.ts.map +1 -0
- package/dist/src/api/service/core/ArgumentPrompterService.d.ts +6 -0
- package/dist/src/api/service/core/ArgumentPrompterService.d.ts.map +1 -0
- package/dist/src/api/service/core/AsciiBannerGeneratorService.d.ts +59 -0
- package/dist/src/api/service/core/AsciiBannerGeneratorService.d.ts.map +1 -0
- package/dist/src/api/service/core/CompletionService.d.ts +22 -0
- package/dist/src/api/service/core/CompletionService.d.ts.map +1 -0
- package/dist/src/api/service/core/DataDumpGeneratorService.d.ts +22 -0
- package/dist/src/api/service/core/DataDumpGeneratorService.d.ts.map +1 -0
- package/dist/src/api/service/core/ImagePrinterService.d.ts +21 -0
- package/dist/src/api/service/core/ImagePrinterService.d.ts.map +1 -0
- package/dist/src/api/service/core/KeyValueService.d.ts +40 -0
- package/dist/src/api/service/core/KeyValueService.d.ts.map +1 -0
- package/dist/src/api/service/core/PluginService.d.ts +55 -0
- package/dist/src/api/service/core/PluginService.d.ts.map +1 -0
- package/dist/src/api/service/core/PrettyPrinterService.d.ts +35 -0
- package/dist/src/api/service/core/PrettyPrinterService.d.ts.map +1 -0
- package/dist/src/api/service/core/PrinterService.d.ts +339 -0
- package/dist/src/api/service/core/PrinterService.d.ts.map +1 -0
- package/dist/src/api/service/core/PrompterService.d.ts +35 -0
- package/dist/src/api/service/core/PrompterService.d.ts.map +1 -0
- package/dist/src/api/service/core/SecretService.d.ts +25 -0
- package/dist/src/api/service/core/SecretService.d.ts.map +1 -0
- package/dist/src/api/service/core/ShutdownService.d.ts +24 -0
- package/dist/src/api/service/core/ShutdownService.d.ts.map +1 -0
- package/dist/src/api/service/core/SyntaxHighlighterService.d.ts +49 -0
- package/dist/src/api/service/core/SyntaxHighlighterService.d.ts.map +1 -0
- package/dist/src/api/service/core/Table.d.ts +18 -0
- package/dist/src/api/service/core/Table.d.ts.map +1 -0
- package/dist/src/api/service/core/TableGeneratorService.d.ts +31 -0
- package/dist/src/api/service/core/TableGeneratorService.d.ts.map +1 -0
- package/dist/src/api/service/core/TreePrinterService.d.ts +9 -0
- package/dist/src/api/service/core/TreePrinterService.d.ts.map +1 -0
- package/dist/src/cli/BaseCLI.d.ts +59 -0
- package/dist/src/cli/BaseCLI.d.ts.map +1 -0
- package/dist/src/cli/DefaultRuntimeCLI.d.ts +12 -0
- package/dist/src/cli/DefaultRuntimeCLI.d.ts.map +1 -0
- package/dist/src/cli/DynamicPluginRuntimeCLI.d.ts +20 -0
- package/dist/src/cli/DynamicPluginRuntimeCLI.d.ts.map +1 -0
- package/dist/src/command/CompletionCommand.d.ts +31 -0
- package/dist/src/command/CompletionCommand.d.ts.map +1 -0
- package/dist/src/command/MultiCommandCliHelpCommand.d.ts +40 -0
- package/dist/src/command/MultiCommandCliHelpCommand.d.ts.map +1 -0
- package/dist/src/command/PluginCommand.d.ts +67 -0
- package/dist/src/command/PluginCommand.d.ts.map +1 -0
- package/dist/src/command/SingleCommandCliHelpCommand.d.ts +31 -0
- package/dist/src/command/SingleCommandCliHelpCommand.d.ts.map +1 -0
- package/dist/src/command/UsageCommand.d.ts +14 -0
- package/dist/src/command/UsageCommand.d.ts.map +1 -0
- package/dist/src/command/VersionCommand.d.ts +12 -0
- package/dist/src/command/VersionCommand.d.ts.map +1 -0
- package/dist/src/launcher.d.ts +10 -0
- package/dist/src/launcher.d.ts.map +1 -0
- package/dist/src/runtime/DefaultContext.d.ts +14 -0
- package/dist/src/runtime/DefaultContext.d.ts.map +1 -0
- package/dist/src/runtime/argument/ArgumentTypeGuards.d.ts +4 -0
- package/dist/src/runtime/argument/ArgumentTypeGuards.d.ts.map +1 -0
- package/dist/src/runtime/command/CommandTypeGuards.d.ts +10 -0
- package/dist/src/runtime/command/CommandTypeGuards.d.ts.map +1 -0
- package/dist/src/runtime/command/CommandValidator.d.ts +15 -0
- package/dist/src/runtime/command/CommandValidator.d.ts.map +1 -0
- package/dist/src/runtime/parser.d.ts +48 -0
- package/dist/src/runtime/parser.d.ts.map +1 -0
- package/dist/src/runtime/registry/CommandRegistry.d.ts +89 -0
- package/dist/src/runtime/registry/CommandRegistry.d.ts.map +1 -0
- package/dist/src/runtime/registry/DefaultCommandRegistry.d.ts +51 -0
- package/dist/src/runtime/registry/DefaultCommandRegistry.d.ts.map +1 -0
- package/dist/src/runtime/registry/DefaultServiceProviderRegistry.d.ts +12 -0
- package/dist/src/runtime/registry/DefaultServiceProviderRegistry.d.ts.map +1 -0
- package/dist/src/runtime/registry/ServiceProviderRegistry.d.ts +11 -0
- package/dist/src/runtime/registry/ServiceProviderRegistry.d.ts.map +1 -0
- package/dist/src/runtime/runner.d.ts +76 -0
- package/dist/src/runtime/runner.d.ts.map +1 -0
- package/dist/src/runtime/scanner.d.ts +69 -0
- package/dist/src/runtime/scanner.d.ts.map +1 -0
- package/dist/src/runtime/values/ValuePopulationResult.d.ts +34 -0
- package/dist/src/runtime/values/ValuePopulationResult.d.ts.map +1 -0
- package/dist/src/runtime/values/argumentValueMerge.d.ts +13 -0
- package/dist/src/runtime/values/argumentValueMerge.d.ts.map +1 -0
- package/dist/src/runtime/values/argumentValueValidation.d.ts +33 -0
- package/dist/src/runtime/values/argumentValueValidation.d.ts.map +1 -0
- package/dist/src/runtime/values/globalCommandValuePopulation.d.ts +12 -0
- package/dist/src/runtime/values/globalCommandValuePopulation.d.ts.map +1 -0
- package/dist/src/runtime/values/subCommandValuePopulation.d.ts +12 -0
- package/dist/src/runtime/values/subCommandValuePopulation.d.ts.map +1 -0
- package/dist/src/service/argumentPrompter/ArgumentPrompterServiceProvider.d.ts +13 -0
- package/dist/src/service/argumentPrompter/ArgumentPrompterServiceProvider.d.ts.map +1 -0
- package/dist/src/service/argumentPrompter/DefaultArgumentPrompterService.d.ts +9 -0
- package/dist/src/service/argumentPrompter/DefaultArgumentPrompterService.d.ts.map +1 -0
- package/dist/src/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.d.ts +20 -0
- package/dist/src/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.d.ts.map +1 -0
- package/dist/src/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.d.ts +12 -0
- package/dist/src/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.d.ts.map +1 -0
- package/dist/src/service/banner/BannerServiceProvider.d.ts +29 -0
- package/dist/src/service/banner/BannerServiceProvider.d.ts.map +1 -0
- package/dist/src/service/banner/command/NoBannerCommand.d.ts +19 -0
- package/dist/src/service/banner/command/NoBannerCommand.d.ts.map +1 -0
- package/dist/src/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.d.ts +22 -0
- package/dist/src/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.d.ts.map +1 -0
- package/dist/src/service/completion/CompletionServiceProvider.d.ts +14 -0
- package/dist/src/service/completion/CompletionServiceProvider.d.ts.map +1 -0
- package/dist/src/service/completion/DefaultCompletionService.d.ts +17 -0
- package/dist/src/service/completion/DefaultCompletionService.d.ts.map +1 -0
- package/dist/src/service/completion/shell/ShellHandler.d.ts +13 -0
- package/dist/src/service/completion/shell/ShellHandler.d.ts.map +1 -0
- package/dist/src/service/completion/shell/bash.d.ts +11 -0
- package/dist/src/service/completion/shell/bash.d.ts.map +1 -0
- package/dist/src/service/completion/shell/fish.d.ts +11 -0
- package/dist/src/service/completion/shell/fish.d.ts.map +1 -0
- package/dist/src/service/completion/shell/powershell.d.ts +11 -0
- package/dist/src/service/completion/shell/powershell.d.ts.map +1 -0
- package/dist/src/service/completion/shell/zsh.d.ts +11 -0
- package/dist/src/service/completion/shell/zsh.d.ts.map +1 -0
- package/dist/src/service/configuration/ConfigurationServiceProvider.d.ts +196 -0
- package/dist/src/service/configuration/ConfigurationServiceProvider.d.ts.map +1 -0
- package/dist/src/service/configuration/DefaultKeyValueService.d.ts +14 -0
- package/dist/src/service/configuration/DefaultKeyValueService.d.ts.map +1 -0
- package/dist/src/service/configuration/DefaultSecretService.d.ts +27 -0
- package/dist/src/service/configuration/DefaultSecretService.d.ts.map +1 -0
- package/dist/src/service/configuration/command/ConfigCommand.d.ts +19 -0
- package/dist/src/service/configuration/command/ConfigCommand.d.ts.map +1 -0
- package/dist/src/service/configuration/command/DumpConfigCommand.d.ts +14 -0
- package/dist/src/service/configuration/command/DumpConfigCommand.d.ts.map +1 -0
- package/dist/src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.d.ts +12 -0
- package/dist/src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.d.ts.map +1 -0
- package/dist/src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.d.ts +10 -0
- package/dist/src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.d.ts.map +1 -0
- package/dist/src/service/imagePrinter/DefaultImagePrinterService.d.ts +8 -0
- package/dist/src/service/imagePrinter/DefaultImagePrinterService.d.ts.map +1 -0
- package/dist/src/service/imagePrinter/ImagePrinterServiceProvider.d.ts +13 -0
- package/dist/src/service/imagePrinter/ImagePrinterServiceProvider.d.ts.map +1 -0
- package/dist/src/service/plugin/DefaultPluginService.d.ts +15 -0
- package/dist/src/service/plugin/DefaultPluginService.d.ts.map +1 -0
- package/dist/src/service/plugin/DefaultPluginServiceProvider.d.ts +13 -0
- package/dist/src/service/plugin/DefaultPluginServiceProvider.d.ts.map +1 -0
- package/dist/src/service/prettyPrinter/DefaultPrettyPrinterService.d.ts +13 -0
- package/dist/src/service/prettyPrinter/DefaultPrettyPrinterService.d.ts.map +1 -0
- package/dist/src/service/prettyPrinter/PrettyPrinterServiceProvider.d.ts +20 -0
- package/dist/src/service/prettyPrinter/PrettyPrinterServiceProvider.d.ts.map +1 -0
- package/dist/src/service/printer/DefaultPrinterService.d.ts +61 -0
- package/dist/src/service/printer/DefaultPrinterService.d.ts.map +1 -0
- package/dist/src/service/printer/PrinterServiceProvider.d.ts +22 -0
- package/dist/src/service/printer/PrinterServiceProvider.d.ts.map +1 -0
- package/dist/src/service/printer/command/DarkModeCommand.d.ts +19 -0
- package/dist/src/service/printer/command/DarkModeCommand.d.ts.map +1 -0
- package/dist/src/service/printer/command/LogLevelCommand.d.ts +19 -0
- package/dist/src/service/printer/command/LogLevelCommand.d.ts.map +1 -0
- package/dist/src/service/printer/command/NoColorCommand.d.ts +19 -0
- package/dist/src/service/printer/command/NoColorCommand.d.ts.map +1 -0
- package/dist/src/service/printer/command/NoHyperlinksCommand.d.ts +16 -0
- package/dist/src/service/printer/command/NoHyperlinksCommand.d.ts.map +1 -0
- package/dist/src/service/printer/terminal/Color.d.ts +15 -0
- package/dist/src/service/printer/terminal/Color.d.ts.map +1 -0
- package/dist/src/service/printer/terminal/Progress.d.ts +20 -0
- package/dist/src/service/printer/terminal/Progress.d.ts.map +1 -0
- package/dist/src/service/printer/terminal/Spinner.d.ts +16 -0
- package/dist/src/service/printer/terminal/Spinner.d.ts.map +1 -0
- package/dist/src/service/printer/terminal/Theme.d.ts +3 -0
- package/dist/src/service/printer/terminal/Theme.d.ts.map +1 -0
- package/dist/src/service/prompter/DefaultPrompterService.d.ts +21 -0
- package/dist/src/service/prompter/DefaultPrompterService.d.ts.map +1 -0
- package/dist/src/service/prompter/PrompterServiceProvider.d.ts +13 -0
- package/dist/src/service/prompter/PrompterServiceProvider.d.ts.map +1 -0
- package/dist/src/service/prompter/command/NoPromptCommand.d.ts +16 -0
- package/dist/src/service/prompter/command/NoPromptCommand.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/PromptContext.d.ts +15 -0
- package/dist/src/service/prompter/prompt/PromptContext.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/promptAcknowledge.d.ts +4 -0
- package/dist/src/service/prompter/prompt/promptAcknowledge.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/promptMultiSelect.d.ts +4 -0
- package/dist/src/service/prompter/prompt/promptMultiSelect.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/promptOpenUrl.d.ts +4 -0
- package/dist/src/service/prompter/prompt/promptOpenUrl.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/promptSingleSelect.d.ts +4 -0
- package/dist/src/service/prompter/prompt/promptSingleSelect.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/promptText.d.ts +4 -0
- package/dist/src/service/prompter/prompt/promptText.d.ts.map +1 -0
- package/dist/src/service/prompter/prompt/promptToggle.d.ts +4 -0
- package/dist/src/service/prompter/prompt/promptToggle.d.ts.map +1 -0
- package/dist/src/service/shutdown/DefaultShutdownService.d.ts +9 -0
- package/dist/src/service/shutdown/DefaultShutdownService.d.ts.map +1 -0
- package/dist/src/service/shutdown/ShutdownServiceProvider.d.ts +15 -0
- package/dist/src/service/shutdown/ShutdownServiceProvider.d.ts.map +1 -0
- package/dist/src/service/shutdown/ShutdownState.d.ts +6 -0
- package/dist/src/service/shutdown/ShutdownState.d.ts.map +1 -0
- package/dist/src/service/syntaxHighlighter/DefaultSyntaxHighlighterService.d.ts +17 -0
- package/dist/src/service/syntaxHighlighter/DefaultSyntaxHighlighterService.d.ts.map +1 -0
- package/dist/src/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.d.ts +20 -0
- package/dist/src/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.d.ts.map +1 -0
- package/dist/src/service/tableGenerator/DefaultTableGeneratorService.d.ts +10 -0
- package/dist/src/service/tableGenerator/DefaultTableGeneratorService.d.ts.map +1 -0
- package/dist/src/service/tableGenerator/TableGeneratorServiceProvider.d.ts +12 -0
- package/dist/src/service/tableGenerator/TableGeneratorServiceProvider.d.ts.map +1 -0
- package/dist/src/service/treePrinter/DefaultTreePrinterService.d.ts +10 -0
- package/dist/src/service/treePrinter/DefaultTreePrinterService.d.ts.map +1 -0
- package/dist/src/service/treePrinter/TreePrinterServiceProvider.d.ts +12 -0
- package/dist/src/service/treePrinter/TreePrinterServiceProvider.d.ts.map +1 -0
- package/dist/src/terminal/Ansi.d.ts +14 -0
- package/dist/src/terminal/Ansi.d.ts.map +1 -0
- package/dist/src/terminal/ImageRenderer.d.ts +7 -0
- package/dist/src/terminal/ImageRenderer.d.ts.map +1 -0
- package/dist/src/terminal/KeyReader.d.ts +22 -0
- package/dist/src/terminal/KeyReader.d.ts.map +1 -0
- package/dist/src/terminal/PngDecoder.d.ts +6 -0
- package/dist/src/terminal/PngDecoder.d.ts.map +1 -0
- package/dist/src/terminal/Styler.d.ts +9 -0
- package/dist/src/terminal/Styler.d.ts.map +1 -0
- package/dist/src/terminal/Terminal.d.ts +10 -0
- package/dist/src/terminal/Terminal.d.ts.map +1 -0
- package/dist/src/terminal/TtyKeyReader.d.ts +11 -0
- package/dist/src/terminal/TtyKeyReader.d.ts.map +1 -0
- package/dist/src/terminal/TtyStyler.d.ts +19 -0
- package/dist/src/terminal/TtyStyler.d.ts.map +1 -0
- package/dist/src/terminal/TtyTerminal.d.ts +14 -0
- package/dist/src/terminal/TtyTerminal.d.ts.map +1 -0
- package/dist/src/terminal/supportsHyperlinks.d.ts +3 -0
- package/dist/src/terminal/supportsHyperlinks.d.ts.map +1 -0
- package/dist/src/util/configHelper.d.ts +22 -0
- package/dist/src/util/configHelper.d.ts.map +1 -0
- package/dist/src/util/envVarHelper.d.ts +21 -0
- package/dist/src/util/envVarHelper.d.ts.map +1 -0
- package/dist/src/util/helpHelper.d.ts +26 -0
- package/dist/src/util/helpHelper.d.ts.map +1 -0
- package/dist/src/util/logger.d.ts +18 -0
- package/dist/src/util/logger.d.ts.map +1 -0
- package/dist/src/util/runnerHelper.d.ts +9 -0
- package/dist/src/util/runnerHelper.d.ts.map +1 -0
- package/dist/tests/cli/BaseCLI.test.d.ts +2 -0
- package/dist/tests/cli/BaseCLI.test.d.ts.map +1 -0
- package/dist/tests/cli/DynamicPluginRuntimeCLI.test.d.ts +2 -0
- package/dist/tests/cli/DynamicPluginRuntimeCLI.test.d.ts.map +1 -0
- package/dist/tests/command/CompletionCommand.test.d.ts +2 -0
- package/dist/tests/command/CompletionCommand.test.d.ts.map +1 -0
- package/dist/tests/command/MultiCommandCliHelpCommand.test.d.ts +2 -0
- package/dist/tests/command/MultiCommandCliHelpCommand.test.d.ts.map +1 -0
- package/dist/tests/command/SingleCommandCliHelpCommand.test.d.ts +2 -0
- package/dist/tests/command/SingleCommandCliHelpCommand.test.d.ts.map +1 -0
- package/dist/tests/command/UsageCommand.test.d.ts +2 -0
- package/dist/tests/command/UsageCommand.test.d.ts.map +1 -0
- package/dist/tests/command/VersionCommand.test.d.ts +2 -0
- package/dist/tests/command/VersionCommand.test.d.ts.map +1 -0
- package/dist/tests/fixtures/CLIConfig.d.ts +3 -0
- package/dist/tests/fixtures/CLIConfig.d.ts.map +1 -0
- package/dist/tests/fixtures/Command.d.ts +20 -0
- package/dist/tests/fixtures/Command.d.ts.map +1 -0
- package/{tests/fixtures/CommandRegistry.ts → dist/tests/fixtures/CommandRegistry.d.ts} +2 -4
- package/dist/tests/fixtures/CommandRegistry.d.ts.map +1 -0
- package/dist/tests/fixtures/ConfigurationServiceProvider.d.ts +10 -0
- package/dist/tests/fixtures/ConfigurationServiceProvider.d.ts.map +1 -0
- package/dist/tests/fixtures/Context.d.ts +4 -0
- package/dist/tests/fixtures/Context.d.ts.map +1 -0
- package/dist/tests/fixtures/ServiceProviderRegistry.d.ts +4 -0
- package/dist/tests/fixtures/ServiceProviderRegistry.d.ts.map +1 -0
- package/dist/tests/fixtures/StreamString.d.ts +10 -0
- package/dist/tests/fixtures/StreamString.d.ts.map +1 -0
- package/dist/tests/fixtures/prettierPluginFoo.d.ts +4 -0
- package/dist/tests/fixtures/prettierPluginFoo.d.ts.map +1 -0
- package/dist/tests/fixtures/util.d.ts +8 -0
- package/dist/tests/fixtures/util.d.ts.map +1 -0
- package/dist/tests/runtime/DefaultContext.test.d.ts +2 -0
- package/dist/tests/runtime/DefaultContext.test.d.ts.map +1 -0
- package/dist/tests/runtime/argument/ArgumentTypeGuards.test.d.ts +2 -0
- package/dist/tests/runtime/argument/ArgumentTypeGuards.test.d.ts.map +1 -0
- package/dist/tests/runtime/command/CommandTypeGuards.test.d.ts +2 -0
- package/dist/tests/runtime/command/CommandTypeGuards.test.d.ts.map +1 -0
- package/dist/tests/runtime/command/CommandValidator.test.d.ts +2 -0
- package/dist/tests/runtime/command/CommandValidator.test.d.ts.map +1 -0
- package/dist/tests/runtime/parser.test.d.ts +2 -0
- package/dist/tests/runtime/parser.test.d.ts.map +1 -0
- package/dist/tests/runtime/registry/DefaultCommandRegistry.test.d.ts +2 -0
- package/dist/tests/runtime/registry/DefaultCommandRegistry.test.d.ts.map +1 -0
- package/dist/tests/runtime/registry/DefaultServiceProviderRegistry.test.d.ts +2 -0
- package/dist/tests/runtime/registry/DefaultServiceProviderRegistry.test.d.ts.map +1 -0
- package/dist/tests/runtime/runner.test.d.ts +2 -0
- package/dist/tests/runtime/runner.test.d.ts.map +1 -0
- package/dist/tests/runtime/scanner.test.d.ts +2 -0
- package/dist/tests/runtime/scanner.test.d.ts.map +1 -0
- package/dist/tests/runtime/values/argumentValueMerge.test.d.ts +2 -0
- package/dist/tests/runtime/values/argumentValueMerge.test.d.ts.map +1 -0
- package/dist/tests/runtime/values/argumentValueValidation.test.d.ts +2 -0
- package/dist/tests/runtime/values/argumentValueValidation.test.d.ts.map +1 -0
- package/dist/tests/runtime/values/globalCommandValuePopulation.test.d.ts +2 -0
- package/dist/tests/runtime/values/globalCommandValuePopulation.test.d.ts.map +1 -0
- package/dist/tests/runtime/values/subCommandValuePopulation.test.d.ts +2 -0
- package/dist/tests/runtime/values/subCommandValuePopulation.test.d.ts.map +1 -0
- package/dist/tests/service/argumentPrompter/ArgumentPrompterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/argumentPrompter/ArgumentPrompterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/argumentPrompter/DefaultArgumentPrompterService.test.d.ts +2 -0
- package/dist/tests/service/argumentPrompter/DefaultArgumentPrompterService.test.d.ts.map +1 -0
- package/dist/tests/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.test.d.ts +2 -0
- package/dist/tests/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.test.d.ts.map +1 -0
- package/dist/tests/service/banner/BannerServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/banner/BannerServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/banner/command/NoBannerCommand.test.d.ts +2 -0
- package/dist/tests/service/banner/command/NoBannerCommand.test.d.ts.map +1 -0
- package/dist/tests/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.test.d.ts +2 -0
- package/dist/tests/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.test.d.ts.map +1 -0
- package/dist/tests/service/completion/CompletionServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/completion/CompletionServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/completion/DefaultCompletionService.test.d.ts +2 -0
- package/dist/tests/service/completion/DefaultCompletionService.test.d.ts.map +1 -0
- package/dist/tests/service/completion/shell/bash.test.d.ts +2 -0
- package/dist/tests/service/completion/shell/bash.test.d.ts.map +1 -0
- package/dist/tests/service/completion/shell/fish.test.d.ts +2 -0
- package/dist/tests/service/completion/shell/fish.test.d.ts.map +1 -0
- package/dist/tests/service/completion/shell/powershell.test.d.ts +2 -0
- package/dist/tests/service/completion/shell/powershell.test.d.ts.map +1 -0
- package/dist/tests/service/completion/shell/zsh.test.d.ts +2 -0
- package/dist/tests/service/completion/shell/zsh.test.d.ts.map +1 -0
- package/dist/tests/service/configuration/ConfigurationServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/configuration/ConfigurationServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/configuration/DefaultKeyValueService.test.d.ts +2 -0
- package/dist/tests/service/configuration/DefaultKeyValueService.test.d.ts.map +1 -0
- package/dist/tests/service/configuration/DefaultSecretService.test.d.ts +2 -0
- package/dist/tests/service/configuration/DefaultSecretService.test.d.ts.map +1 -0
- package/dist/tests/service/configuration/command/ConfigCommand.test.d.ts +2 -0
- package/dist/tests/service/configuration/command/ConfigCommand.test.d.ts.map +1 -0
- package/dist/tests/service/configuration/command/DumpConfigCommand.test.d.ts +2 -0
- package/dist/tests/service/configuration/command/DumpConfigCommand.test.d.ts.map +1 -0
- package/dist/tests/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/dataDumpGenerator/DefaultDataDumpGeneratorService.test.d.ts +2 -0
- package/dist/tests/service/dataDumpGenerator/DefaultDataDumpGeneratorService.test.d.ts.map +1 -0
- package/dist/tests/service/imagePrinter/DefaultImagePrinterService.test.d.ts +2 -0
- package/dist/tests/service/imagePrinter/DefaultImagePrinterService.test.d.ts.map +1 -0
- package/dist/tests/service/imagePrinter/ImagePrinterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/imagePrinter/ImagePrinterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/plugin/DefaultPluginServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/plugin/DefaultPluginServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/prettyPrinter/DefaultPrettyPrinterService.test.d.ts +2 -0
- package/dist/tests/service/prettyPrinter/DefaultPrettyPrinterService.test.d.ts.map +1 -0
- package/dist/tests/service/prettyPrinter/PrettyPrinterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/prettyPrinter/PrettyPrinterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/printer/DefaultPrinterService.test.d.ts +2 -0
- package/dist/tests/service/printer/DefaultPrinterService.test.d.ts.map +1 -0
- package/dist/tests/service/printer/PrinterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/printer/PrinterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/printer/command/DarkModeCommand.test.d.ts +2 -0
- package/dist/tests/service/printer/command/DarkModeCommand.test.d.ts.map +1 -0
- package/dist/tests/service/printer/command/LogLevelCommand.test.d.ts +2 -0
- package/dist/tests/service/printer/command/LogLevelCommand.test.d.ts.map +1 -0
- package/dist/tests/service/printer/command/NoColorCommand.test.d.ts +2 -0
- package/dist/tests/service/printer/command/NoColorCommand.test.d.ts.map +1 -0
- package/dist/tests/service/printer/command/NoHyperlinksCommand.test.d.ts +2 -0
- package/dist/tests/service/printer/command/NoHyperlinksCommand.test.d.ts.map +1 -0
- package/dist/tests/service/printer/terminal/Progress.test.d.ts +2 -0
- package/dist/tests/service/printer/terminal/Progress.test.d.ts.map +1 -0
- package/dist/tests/service/printer/terminal/Spinner.test.d.ts +2 -0
- package/dist/tests/service/printer/terminal/Spinner.test.d.ts.map +1 -0
- package/dist/tests/service/prompter/DefaultPrompterService.test.d.ts +2 -0
- package/dist/tests/service/prompter/DefaultPrompterService.test.d.ts.map +1 -0
- package/dist/tests/service/prompter/PrompterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/prompter/PrompterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/prompter/command/NoPromptCommand.test.d.ts +2 -0
- package/dist/tests/service/prompter/command/NoPromptCommand.test.d.ts.map +1 -0
- package/dist/tests/service/prompter/prompt/PromptContext.test.d.ts +2 -0
- package/dist/tests/service/prompter/prompt/PromptContext.test.d.ts.map +1 -0
- package/dist/tests/service/shutdown/ShutdownServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/shutdown/ShutdownServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/syntaxHighlighter/DefaultSyntaxHighlighterService.test.d.ts +2 -0
- package/dist/tests/service/syntaxHighlighter/DefaultSyntaxHighlighterService.test.d.ts.map +1 -0
- package/dist/tests/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/tableGenerator/DefaultTableGeneratorService.test.d.ts +2 -0
- package/dist/tests/service/tableGenerator/DefaultTableGeneratorService.test.d.ts.map +1 -0
- package/dist/tests/service/tableGenerator/TableGeneratorServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/tableGenerator/TableGeneratorServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/service/treePrinter/DefaultTreePrinterService.test.d.ts +2 -0
- package/dist/tests/service/treePrinter/DefaultTreePrinterService.test.d.ts.map +1 -0
- package/dist/tests/service/treePrinter/TreePrinterServiceProvider.test.d.ts +2 -0
- package/dist/tests/service/treePrinter/TreePrinterServiceProvider.test.d.ts.map +1 -0
- package/dist/tests/terminal/ImageRenderer.test.d.ts +2 -0
- package/dist/tests/terminal/ImageRenderer.test.d.ts.map +1 -0
- package/dist/tests/terminal/PngDecoder.test.d.ts +2 -0
- package/dist/tests/terminal/PngDecoder.test.d.ts.map +1 -0
- package/dist/tests/terminal/supportsHyperlinks.test.d.ts +2 -0
- package/dist/tests/terminal/supportsHyperlinks.test.d.ts.map +1 -0
- package/dist/tests/util/configHelper.test.d.ts +2 -0
- package/dist/tests/util/configHelper.test.d.ts.map +1 -0
- package/dist/tests/util/envVarHelper.test.d.ts +2 -0
- package/dist/tests/util/envVarHelper.test.d.ts.map +1 -0
- package/dist/tests/util/logger.test.d.ts +2 -0
- package/dist/tests/util/logger.test.d.ts.map +1 -0
- package/index.ts +15 -1
- package/package.json +28 -2
- package/src/api/plugin/CommandFactory.ts +25 -0
- package/src/api/plugin/ServiceProviderFactory.ts +27 -0
- package/src/api/service/core/PluginService.ts +63 -0
- package/src/cli/DynamicPluginRuntimeCLI.ts +77 -0
- package/src/command/PluginCommand.ts +184 -0
- package/src/launcher.ts +35 -0
- package/src/service/plugin/DefaultPluginService.ts +37 -0
- package/src/service/plugin/DefaultPluginServiceProvider.ts +29 -0
- package/.github/workflows/check-bun-dependencies.yml +0 -12
- package/.github/workflows/lint-pr-message.yml +0 -13
- package/.github/workflows/release-bun-library.yml +0 -15
- package/.github/workflows/validate-bun-library-pr.yml +0 -10
- package/README/core-commands.md +0 -40
- package/README/core-service-providers.md +0 -198
- package/README/development.md +0 -57
- package/README/implementation-details.md +0 -474
- package/README/key-concepts.md +0 -751
- package/bun.lock +0 -156
- package/tests/cli/BaseCLI.test.ts +0 -283
- package/tests/command/CompletionCommand.test.ts +0 -63
- package/tests/command/MultiCommandCliHelpCommand.test.ts +0 -496
- package/tests/command/SingleCommandCliHelpCommand.test.ts +0 -302
- package/tests/command/UsageCommand.test.ts +0 -48
- package/tests/command/VersionCommand.test.ts +0 -37
- package/tests/fixtures/CLIConfig.ts +0 -9
- package/tests/fixtures/Command.ts +0 -248
- package/tests/fixtures/ConfigurationServiceProvider.ts +0 -28
- package/tests/fixtures/Context.ts +0 -32
- package/tests/fixtures/ServiceProviderRegistry.ts +0 -16
- package/tests/fixtures/StreamString.ts +0 -37
- package/tests/fixtures/prettierPluginFoo.ts +0 -31
- package/tests/fixtures/util.ts +0 -35
- package/tests/runtime/DefaultContext.test.ts +0 -20
- package/tests/runtime/argument/ArgumentTypeGuards.test.ts +0 -47
- package/tests/runtime/command/CommandTypeGuards.test.ts +0 -43
- package/tests/runtime/command/CommandValidator.test.ts +0 -1196
- package/tests/runtime/parser.test.ts +0 -744
- package/tests/runtime/registry/DefaultCommandRegistry.test.ts +0 -144
- package/tests/runtime/registry/DefaultServiceProviderRegistry.test.ts +0 -36
- package/tests/runtime/runner.test.ts +0 -1284
- package/tests/runtime/scanner.test.ts +0 -915
- package/tests/runtime/values/argumentValueMerge.test.ts +0 -366
- package/tests/runtime/values/argumentValueValidation.test.ts +0 -1090
- package/tests/runtime/values/globalCommandValuePopulation.test.ts +0 -480
- package/tests/runtime/values/subCommandValuePopulation.test.ts +0 -2430
- package/tests/service/argumentPrompter/ArgumentPrompterServiceProvider.test.ts +0 -38
- package/tests/service/argumentPrompter/DefaultArgumentPrompterService.test.ts +0 -745
- package/tests/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.test.ts +0 -17
- package/tests/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.test.ts +0 -208
- package/tests/service/asciiBannerGenerator/__snapshots__/DefaultAsciiBannerGeneratorService.test.ts.snap +0 -20
- package/tests/service/asciiBannerGenerator/small.flf.json +0 -3
- package/tests/service/banner/BannerServiceProvider.test.ts +0 -87
- package/tests/service/banner/__snapshots__/BannerServiceProvider.test.ts.snap +0 -16
- package/tests/service/banner/command/NoBannerCommand.test.ts +0 -18
- package/tests/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.test.ts +0 -52
- package/tests/service/completion/CompletionServiceProvider.test.ts +0 -335
- package/tests/service/completion/DefaultCompletionService.test.ts +0 -216
- package/tests/service/completion/shell/bash.test.ts +0 -73
- package/tests/service/completion/shell/fish.test.ts +0 -60
- package/tests/service/completion/shell/powershell.test.ts +0 -59
- package/tests/service/completion/shell/zsh.test.ts +0 -60
- package/tests/service/configuration/ConfigurationServiceProvider.test.ts +0 -212
- package/tests/service/configuration/DefaultKeyValueService.test.ts +0 -155
- package/tests/service/configuration/DefaultSecretService.test.ts +0 -140
- package/tests/service/configuration/command/ConfigCommand.test.ts +0 -29
- package/tests/service/configuration/command/DumpConfigCommand.test.ts +0 -51
- package/tests/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.test.ts +0 -51
- package/tests/service/dataDumpGenerator/DefaultDataDumpGeneratorService.test.ts +0 -208
- package/tests/service/imagePrinter/DefaultImagePrinterService.test.ts +0 -31
- package/tests/service/imagePrinter/ImagePrinterServiceProvider.test.ts +0 -17
- package/tests/service/prettyPrinter/DefaultPrettyPrinterService.test.ts +0 -46
- package/tests/service/prettyPrinter/PrettyPrinterServiceProvider.test.ts +0 -37
- package/tests/service/printer/DefaultPrinterService.test.ts +0 -530
- package/tests/service/printer/PrinterServiceProvider.test.ts +0 -34
- package/tests/service/printer/command/DarkModeCommand.test.ts +0 -75
- package/tests/service/printer/command/LogLevelCommand.test.ts +0 -47
- package/tests/service/printer/command/NoColorCommand.test.ts +0 -75
- package/tests/service/printer/command/NoHyperlinksCommand.test.ts +0 -75
- package/tests/service/printer/terminal/Progress.test.ts +0 -98
- package/tests/service/printer/terminal/Spinner.test.ts +0 -92
- package/tests/service/prompter/DefaultPrompterService.test.ts +0 -598
- package/tests/service/prompter/PrompterServiceProvider.test.ts +0 -41
- package/tests/service/prompter/command/NoPromptCommand.test.ts +0 -58
- package/tests/service/prompter/prompt/PromptContext.test.ts +0 -61
- package/tests/service/shutdown/ShutdownServiceProvider.test.ts +0 -13
- package/tests/service/syntaxHighlighter/DefaultSyntaxHighlighterService.test.ts +0 -101
- package/tests/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.test.ts +0 -37
- package/tests/service/tableGenerator/DefaultTableGeneratorService.test.ts +0 -342
- package/tests/service/tableGenerator/TableGeneratorServiceProvider.test.ts +0 -47
- package/tests/service/treePrinter/DefaultTreePrinterService.test.ts +0 -142
- package/tests/service/treePrinter/TreePrinterServiceProvider.test.ts +0 -51
- package/tests/terminal/ImageRenderer.test.ts +0 -152
- package/tests/terminal/PngDecoder.test.ts +0 -219
- package/tests/terminal/supportsHyperlinks.test.ts +0 -149
- package/tests/util/configHelper.test.ts +0 -193
- package/tests/util/envVarHelper.test.ts +0 -254
- package/tests/util/logger.test.ts +0 -56
- package/tsconfig.json +0 -32
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
2
|
-
import DefaultContext from "../../../../src/runtime/DefaultContext.ts";
|
|
3
|
-
import DumpConfigCommand from "../../../../src/service/configuration/command/DumpConfigCommand.ts";
|
|
4
|
-
import ConfigurationServiceProvider from "../../../../src/service/configuration/ConfigurationServiceProvider.ts";
|
|
5
|
-
import { getCLIConfig } from "../../../fixtures/CLIConfig.ts";
|
|
6
|
-
import { PRINTER_SERVICE_ID } from "../../../../src/api/service/core/PrinterService.ts";
|
|
7
|
-
import { SYNTAX_HIGHLIGHTER_SERVICE_ID } from "../../../../src/api/service/core/SyntaxHighlighterService.ts";
|
|
8
|
-
|
|
9
|
-
describe("DumpConfigCommand tests", () => {
|
|
10
|
-
test("has correct name and description", () => {
|
|
11
|
-
const configProvider = new ConfigurationServiceProvider(90, false, true);
|
|
12
|
-
const command = new DumpConfigCommand(configProvider);
|
|
13
|
-
|
|
14
|
-
expect(command.name).toEqual("dump-config");
|
|
15
|
-
expect(command.description).toEqual("Dump configuration values");
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
test("execute prints highlighted config string", async () => {
|
|
19
|
-
const configProvider = new ConfigurationServiceProvider(90, false, true);
|
|
20
|
-
const cliConfig = getCLIConfig();
|
|
21
|
-
const context = new DefaultContext(cliConfig);
|
|
22
|
-
|
|
23
|
-
let printedMessage = "";
|
|
24
|
-
const mockPrinterService = {
|
|
25
|
-
print: (message: string) => {
|
|
26
|
-
printedMessage = message;
|
|
27
|
-
return Promise.resolve();
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
let highlightedText = "";
|
|
32
|
-
let highlightedLang = "";
|
|
33
|
-
const mockSyntaxHighlighter = {
|
|
34
|
-
highlight: (text: string, language: string) => {
|
|
35
|
-
highlightedText = text;
|
|
36
|
-
highlightedLang = language;
|
|
37
|
-
return `highlighted:${text}`;
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
context.addServiceInstance(PRINTER_SERVICE_ID, mockPrinterService);
|
|
42
|
-
context.addServiceInstance(SYNTAX_HIGHLIGHTER_SERVICE_ID, mockSyntaxHighlighter);
|
|
43
|
-
|
|
44
|
-
const command = new DumpConfigCommand(configProvider);
|
|
45
|
-
await command.execute(context);
|
|
46
|
-
|
|
47
|
-
expect(highlightedLang).toEqual("json");
|
|
48
|
-
expect(highlightedText).toEqual(configProvider.getConfigString());
|
|
49
|
-
expect(printedMessage).toEqual(`highlighted:${configProvider.getConfigString()}\n`);
|
|
50
|
-
});
|
|
51
|
-
});
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
2
|
-
import DefaultContext from "../../../src/runtime/DefaultContext.ts";
|
|
3
|
-
import { getCLIConfig } from "../../fixtures/CLIConfig.ts";
|
|
4
|
-
import DataDumpGeneratorServiceProvider from "../../../src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.ts";
|
|
5
|
-
import { PRINTER_SERVICE_ID } from "../../../src/api/service/core/PrinterService.ts";
|
|
6
|
-
import DefaultPrinterService from "../../../src/service/printer/DefaultPrinterService.ts";
|
|
7
|
-
import StreamString from "../../fixtures/StreamString.ts";
|
|
8
|
-
import TtyTerminal from "../../../src/terminal/TtyTerminal.ts";
|
|
9
|
-
import TtyStyler from "../../../src/terminal/TtyStyler.ts";
|
|
10
|
-
|
|
11
|
-
describe("DataDumpGeneratorServiceProvider tests", () => {
|
|
12
|
-
test("getServiceInfo returns service and empty commands", async () => {
|
|
13
|
-
const dataDumpGeneratorServiceProvider = new DataDumpGeneratorServiceProvider(100);
|
|
14
|
-
const cliConfig = getCLIConfig();
|
|
15
|
-
|
|
16
|
-
const serviceInfo = await dataDumpGeneratorServiceProvider.getServiceInfo(cliConfig);
|
|
17
|
-
expect(serviceInfo.commands.length).toEqual(0);
|
|
18
|
-
expect(serviceInfo.service).toBeDefined();
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
test("initService sets colorEnabled and colorFunction from PrinterService", async () => {
|
|
22
|
-
const dummyStdout = new StreamString();
|
|
23
|
-
const dummyStderr = new StreamString();
|
|
24
|
-
const dataDumpGeneratorServiceProvider = new DataDumpGeneratorServiceProvider(100);
|
|
25
|
-
const cliConfig = getCLIConfig();
|
|
26
|
-
const context = new DefaultContext(cliConfig);
|
|
27
|
-
|
|
28
|
-
context.addServiceInstance(
|
|
29
|
-
PRINTER_SERVICE_ID,
|
|
30
|
-
new DefaultPrinterService(
|
|
31
|
-
dummyStdout.writableStream,
|
|
32
|
-
dummyStderr.writableStream,
|
|
33
|
-
true,
|
|
34
|
-
true,
|
|
35
|
-
new TtyTerminal(dummyStdout.writeStream),
|
|
36
|
-
new TtyTerminal(dummyStderr.writeStream),
|
|
37
|
-
new TtyStyler(3),
|
|
38
|
-
),
|
|
39
|
-
);
|
|
40
|
-
|
|
41
|
-
const serviceInfo = await dataDumpGeneratorServiceProvider.getServiceInfo(cliConfig);
|
|
42
|
-
expect(serviceInfo.commands.length).toEqual(0);
|
|
43
|
-
|
|
44
|
-
await dataDumpGeneratorServiceProvider.initService(context);
|
|
45
|
-
|
|
46
|
-
const service =
|
|
47
|
-
serviceInfo.service as import("../../../src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.ts").default;
|
|
48
|
-
expect(service.colorEnabled).toBe(true);
|
|
49
|
-
expect(typeof service.colorFunction).toBe("function");
|
|
50
|
-
});
|
|
51
|
-
});
|
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
import { Buffer } from "node:buffer";
|
|
2
|
-
import { describe, expect, test } from "bun:test";
|
|
3
|
-
import DefaultDataDumpGeneratorService from "../../../src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.ts";
|
|
4
|
-
import { DumpFormat } from "../../../src/api/service/core/DataDumpGeneratorService.ts";
|
|
5
|
-
|
|
6
|
-
describe("DefaultDataDumpGeneratorService tests", () => {
|
|
7
|
-
test("Empty buffer produces empty string", () => {
|
|
8
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
9
|
-
service.colorEnabled = false;
|
|
10
|
-
|
|
11
|
-
expect(service.generate(Buffer.alloc(0))).toEqual("");
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
test("Single byte renders correct hex", () => {
|
|
15
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
16
|
-
service.colorEnabled = false;
|
|
17
|
-
|
|
18
|
-
// 1 byte in a row of 32 (4*8): "FF" + 31*" " padding, with group separators
|
|
19
|
-
const result = service.generate(Buffer.from([0xff]));
|
|
20
|
-
// First group: "FF " (FF + 3 bytes padding = "FF" + " "x3)
|
|
21
|
-
// Remaining 7 groups: " " (4 bytes padding each = " "x4)
|
|
22
|
-
const groups = [
|
|
23
|
-
"FF ",
|
|
24
|
-
" ",
|
|
25
|
-
" ",
|
|
26
|
-
" ",
|
|
27
|
-
" ",
|
|
28
|
-
" ",
|
|
29
|
-
" ",
|
|
30
|
-
" ",
|
|
31
|
-
];
|
|
32
|
-
expect(result).toEqual(groups.join(" "));
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
test("Single byte renders correct ascii", () => {
|
|
36
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
37
|
-
service.colorEnabled = false;
|
|
38
|
-
|
|
39
|
-
const result = service.generate(Buffer.from([0x41]), {
|
|
40
|
-
format: DumpFormat.ASCII,
|
|
41
|
-
});
|
|
42
|
-
// "A" + 3 space padding in first group, then 7 groups of 4 spaces
|
|
43
|
-
const groups = ["A ", " ", " ", " ", " ", " ", " ", " "];
|
|
44
|
-
expect(result).toEqual(groups.join(" "));
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
test("Full row (32 bytes) renders correctly", () => {
|
|
48
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
49
|
-
service.colorEnabled = false;
|
|
50
|
-
|
|
51
|
-
const data = Buffer.alloc(32);
|
|
52
|
-
for (let i = 0; i < 32; i++) {
|
|
53
|
-
data[i] = i;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
const result = service.generate(data);
|
|
57
|
-
const groups = [
|
|
58
|
-
"00010203",
|
|
59
|
-
"04050607",
|
|
60
|
-
"08090A0B",
|
|
61
|
-
"0C0D0E0F",
|
|
62
|
-
"10111213",
|
|
63
|
-
"14151617",
|
|
64
|
-
"18191A1B",
|
|
65
|
-
"1C1D1E1F",
|
|
66
|
-
];
|
|
67
|
-
expect(result).toEqual(groups.join(" "));
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
test("Partial last row pads with spaces", () => {
|
|
71
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
72
|
-
service.colorEnabled = false;
|
|
73
|
-
|
|
74
|
-
// 33 bytes = 1 full row of 32 + 1 byte on second row
|
|
75
|
-
const data = Buffer.alloc(33, 0xaa);
|
|
76
|
-
const result = service.generate(data);
|
|
77
|
-
const lines = result.split("\n");
|
|
78
|
-
expect(lines.length).toEqual(2);
|
|
79
|
-
|
|
80
|
-
// Second row: "AA" + padding
|
|
81
|
-
const groups = [
|
|
82
|
-
"AA ",
|
|
83
|
-
" ",
|
|
84
|
-
" ",
|
|
85
|
-
" ",
|
|
86
|
-
" ",
|
|
87
|
-
" ",
|
|
88
|
-
" ",
|
|
89
|
-
" ",
|
|
90
|
-
];
|
|
91
|
-
expect(lines[1]).toEqual(groups.join(" "));
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
test("Non-printable bytes render as '.' in ascii format", () => {
|
|
95
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
96
|
-
service.colorEnabled = false;
|
|
97
|
-
|
|
98
|
-
const data = Buffer.from([0x00, 0x1f, 0x7f, 0x80]);
|
|
99
|
-
const result = service.generate(data, {
|
|
100
|
-
format: DumpFormat.ASCII,
|
|
101
|
-
bytesPerGroup: 4,
|
|
102
|
-
groupsPerRow: 1,
|
|
103
|
-
});
|
|
104
|
-
expect(result).toEqual("....");
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
test("bytesPerGroup: 2 changes grouping", () => {
|
|
108
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
109
|
-
service.colorEnabled = false;
|
|
110
|
-
|
|
111
|
-
const data = Buffer.from([0xaa, 0xbb, 0xcc, 0xdd]);
|
|
112
|
-
const result = service.generate(data, {
|
|
113
|
-
bytesPerGroup: 2,
|
|
114
|
-
groupsPerRow: 2,
|
|
115
|
-
});
|
|
116
|
-
expect(result).toEqual("AABB CCDD");
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
test("groupsPerRow: 4 changes row width", () => {
|
|
120
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
121
|
-
service.colorEnabled = false;
|
|
122
|
-
|
|
123
|
-
// 16 bytes with 4 groups of 4
|
|
124
|
-
const data = Buffer.alloc(16, 0xff);
|
|
125
|
-
const result = service.generate(data, {
|
|
126
|
-
bytesPerGroup: 4,
|
|
127
|
-
groupsPerRow: 4,
|
|
128
|
-
});
|
|
129
|
-
expect(result).toEqual("FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF");
|
|
130
|
-
});
|
|
131
|
-
|
|
132
|
-
test("spacesBetweenGroups: 2 changes spacing", () => {
|
|
133
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
134
|
-
service.colorEnabled = false;
|
|
135
|
-
|
|
136
|
-
const data = Buffer.from([0xaa, 0xbb, 0xcc, 0xdd]);
|
|
137
|
-
const result = service.generate(data, {
|
|
138
|
-
bytesPerGroup: 2,
|
|
139
|
-
groupsPerRow: 2,
|
|
140
|
-
spacesBetweenGroups: 2,
|
|
141
|
-
});
|
|
142
|
-
expect(result).toEqual("AABB CCDD");
|
|
143
|
-
});
|
|
144
|
-
|
|
145
|
-
test("format: DumpFormat.ASCII renders ascii chars", () => {
|
|
146
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
147
|
-
service.colorEnabled = false;
|
|
148
|
-
|
|
149
|
-
const data = Buffer.from("abcdefgh");
|
|
150
|
-
const result = service.generate(data, {
|
|
151
|
-
format: DumpFormat.ASCII,
|
|
152
|
-
bytesPerGroup: 4,
|
|
153
|
-
groupsPerRow: 2,
|
|
154
|
-
});
|
|
155
|
-
expect(result).toEqual("abcd efgh");
|
|
156
|
-
});
|
|
157
|
-
|
|
158
|
-
test("format: DumpFormat.HEX (default) renders hex", () => {
|
|
159
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
160
|
-
service.colorEnabled = false;
|
|
161
|
-
|
|
162
|
-
const data = Buffer.from([0xde, 0xad]);
|
|
163
|
-
const result = service.generate(data, {
|
|
164
|
-
bytesPerGroup: 2,
|
|
165
|
-
groupsPerRow: 1,
|
|
166
|
-
});
|
|
167
|
-
expect(result).toEqual("DEAD");
|
|
168
|
-
});
|
|
169
|
-
|
|
170
|
-
test("colorScheme applies coloring", () => {
|
|
171
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
172
|
-
service.colorEnabled = true;
|
|
173
|
-
service.colorFunction = (text, color) => `[${color}:${text}]`;
|
|
174
|
-
|
|
175
|
-
const data = Buffer.from([0x00, 0x41]);
|
|
176
|
-
const result = service.generate(data, {
|
|
177
|
-
bytesPerGroup: 2,
|
|
178
|
-
groupsPerRow: 1,
|
|
179
|
-
colorScheme: [
|
|
180
|
-
{ start: 0x00, end: 0x1f, color: "#ff0000" },
|
|
181
|
-
{ start: 0x20, end: 0x7e, color: "#00ff00" },
|
|
182
|
-
],
|
|
183
|
-
});
|
|
184
|
-
expect(result).toEqual("[#ff0000:00][#00ff00:41]");
|
|
185
|
-
});
|
|
186
|
-
|
|
187
|
-
test("All printable ASCII (0x20-0x7E) render as themselves in ascii format", () => {
|
|
188
|
-
const service = new DefaultDataDumpGeneratorService();
|
|
189
|
-
service.colorEnabled = false;
|
|
190
|
-
|
|
191
|
-
const printable: number[] = [];
|
|
192
|
-
for (let i = 0x20; i <= 0x7e; i++) {
|
|
193
|
-
printable.push(i);
|
|
194
|
-
}
|
|
195
|
-
const data = Buffer.from(printable);
|
|
196
|
-
const result = service.generate(data, {
|
|
197
|
-
format: DumpFormat.ASCII,
|
|
198
|
-
bytesPerGroup: printable.length,
|
|
199
|
-
groupsPerRow: 1,
|
|
200
|
-
});
|
|
201
|
-
|
|
202
|
-
let expected = "";
|
|
203
|
-
for (let i = 0x20; i <= 0x7e; i++) {
|
|
204
|
-
expected += String.fromCharCode(i);
|
|
205
|
-
}
|
|
206
|
-
expect(result).toEqual(expected);
|
|
207
|
-
});
|
|
208
|
-
});
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
2
|
-
import DefaultImagePrinterService from "../../../src/service/imagePrinter/DefaultImagePrinterService.ts";
|
|
3
|
-
import TtyTerminal from "../../../src/terminal/TtyTerminal.ts";
|
|
4
|
-
import WritableStreamString from "../../fixtures/StreamString.ts";
|
|
5
|
-
|
|
6
|
-
// Minimal 1x1 red PNG generated via pngjs
|
|
7
|
-
const MINIMAL_PNG = new Uint8Array([
|
|
8
|
-
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
|
|
9
|
-
0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x08, 0x06, 0x00, 0x00, 0x00, 0x1f, 0x15, 0xc4,
|
|
10
|
-
0x89, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x44, 0x41, 0x54, 0x78, 0x01, 0x63, 0xf8, 0xcf, 0xc0, 0xf0,
|
|
11
|
-
0x1f, 0x00, 0x05, 0x00, 0x01, 0xff, 0x7b, 0xe9, 0xbe, 0xef, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
|
|
12
|
-
0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
|
|
13
|
-
]);
|
|
14
|
-
|
|
15
|
-
describe("DefaultImagePrinterService tests", () => {
|
|
16
|
-
test("image returns string for PNG buffer", async () => {
|
|
17
|
-
const streamString = new WritableStreamString();
|
|
18
|
-
const terminal = new TtyTerminal(streamString.writeStream);
|
|
19
|
-
const service = new DefaultImagePrinterService(terminal);
|
|
20
|
-
const result = await service.image(MINIMAL_PNG);
|
|
21
|
-
expect(typeof result).toEqual("string");
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
test("image passes widthPercentage option", async () => {
|
|
25
|
-
const streamString = new WritableStreamString();
|
|
26
|
-
const terminal = new TtyTerminal(streamString.writeStream);
|
|
27
|
-
const service = new DefaultImagePrinterService(terminal);
|
|
28
|
-
const result = await service.image(MINIMAL_PNG, 50);
|
|
29
|
-
expect(typeof result).toEqual("string");
|
|
30
|
-
});
|
|
31
|
-
});
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
2
|
-
import ImagePrinterServiceProvider from "../../../src/service/imagePrinter/ImagePrinterServiceProvider.ts";
|
|
3
|
-
import { getCLIConfig } from "../../fixtures/CLIConfig.ts";
|
|
4
|
-
import TtyTerminal from "../../../src/terminal/TtyTerminal.ts";
|
|
5
|
-
import WritableStreamString from "../../fixtures/StreamString.ts";
|
|
6
|
-
|
|
7
|
-
describe("ImagePrinterServiceProvider tests", () => {
|
|
8
|
-
test("ImagePrinterServiceProvider getServiceInfo works", async () => {
|
|
9
|
-
const streamString = new WritableStreamString();
|
|
10
|
-
const terminal = new TtyTerminal(streamString.writeStream);
|
|
11
|
-
const provider = new ImagePrinterServiceProvider(50, terminal);
|
|
12
|
-
const cliConfig = getCLIConfig();
|
|
13
|
-
const serviceInfo = await provider.getServiceInfo(cliConfig);
|
|
14
|
-
expect(serviceInfo.commands.length).toEqual(0);
|
|
15
|
-
expect(serviceInfo.service).toBeDefined();
|
|
16
|
-
});
|
|
17
|
-
});
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
2
|
-
import DefaultPrettyPrinterService from "../../../src/service/prettyPrinter/DefaultPrettyPrinterService.ts";
|
|
3
|
-
import FooSyntax from "../../fixtures/prettierPluginFoo.ts";
|
|
4
|
-
|
|
5
|
-
describe("DefaultPrettyPrinterService tests", () => {
|
|
6
|
-
test("JSON registered by default", async () => {
|
|
7
|
-
const prettyPrinterService = new DefaultPrettyPrinterService();
|
|
8
|
-
|
|
9
|
-
expect(await prettyPrinterService.getRegisteredSyntaxes()).toContain("json");
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
test("Cannot register a syntax if already registered", () => {
|
|
13
|
-
const prettyPrinterService = new DefaultPrettyPrinterService();
|
|
14
|
-
|
|
15
|
-
expect(prettyPrinterService.registerSyntax("jSon", FooSyntax)).rejects.toThrow();
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
test("Can register new syntax", async () => {
|
|
19
|
-
const prettyPrinterService = new DefaultPrettyPrinterService();
|
|
20
|
-
|
|
21
|
-
prettyPrinterService.registerSyntax("foo", FooSyntax);
|
|
22
|
-
expect(await prettyPrinterService.getRegisteredSyntaxes()).toContain("foo");
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
test("Cannot pretty print with unknown syntax", () => {
|
|
26
|
-
const prettyPrinterService = new DefaultPrettyPrinterService();
|
|
27
|
-
|
|
28
|
-
expect(() => prettyPrinterService.prettify("foo: 1", "bar")).toThrow();
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
test("Can pretty print with JSON syntax", async () => {
|
|
32
|
-
const prettyPrinterService = new DefaultPrettyPrinterService();
|
|
33
|
-
|
|
34
|
-
const prettified = await prettyPrinterService.prettify("{foo:1}", "json");
|
|
35
|
-
expect(prettified).toEqual('{ "foo": 1 }\n');
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
test("Can pretty print with newly registered syntax", async () => {
|
|
39
|
-
const prettyPrinterService = new DefaultPrettyPrinterService();
|
|
40
|
-
|
|
41
|
-
prettyPrinterService.registerSyntax("foo", FooSyntax);
|
|
42
|
-
|
|
43
|
-
const prettified = await prettyPrinterService.prettify("foo: 1", "foo");
|
|
44
|
-
expect(prettified).toEqual("foo");
|
|
45
|
-
});
|
|
46
|
-
});
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
2
|
-
import DefaultContext from "../../../src/runtime/DefaultContext.ts";
|
|
3
|
-
import { getCLIConfig } from "../../fixtures/CLIConfig.ts";
|
|
4
|
-
import PrettyPrinterServiceProvider from "../../../src/service/prettyPrinter/PrettyPrinterServiceProvider.ts";
|
|
5
|
-
import { PRINTER_SERVICE_ID } from "../../../src/api/service/core/PrinterService.ts";
|
|
6
|
-
import DefaultPrinterService from "../../../src/service/printer/DefaultPrinterService.ts";
|
|
7
|
-
import StreamString from "../../fixtures/StreamString.ts";
|
|
8
|
-
import TtyTerminal from "../../../src/terminal/TtyTerminal.ts";
|
|
9
|
-
import TtyStyler from "../../../src/terminal/TtyStyler.ts";
|
|
10
|
-
|
|
11
|
-
describe("PrettyPrinterServiceProvider tests", () => {
|
|
12
|
-
test("PrettyPrinterServiceProvider getServiceInfo and initService works", async () => {
|
|
13
|
-
const dummyStdout = new StreamString();
|
|
14
|
-
const dummyStderr = new StreamString();
|
|
15
|
-
const prettyPrinterServiceProvider = new PrettyPrinterServiceProvider(100);
|
|
16
|
-
const cliConfig = getCLIConfig();
|
|
17
|
-
const context = new DefaultContext(cliConfig);
|
|
18
|
-
|
|
19
|
-
context.addServiceInstance(
|
|
20
|
-
PRINTER_SERVICE_ID,
|
|
21
|
-
new DefaultPrinterService(
|
|
22
|
-
dummyStdout.writableStream,
|
|
23
|
-
dummyStderr.writableStream,
|
|
24
|
-
true,
|
|
25
|
-
true,
|
|
26
|
-
new TtyTerminal(dummyStdout.writeStream),
|
|
27
|
-
new TtyTerminal(dummyStderr.writeStream),
|
|
28
|
-
new TtyStyler(3),
|
|
29
|
-
),
|
|
30
|
-
);
|
|
31
|
-
|
|
32
|
-
const serviceInfo = await prettyPrinterServiceProvider.getServiceInfo(cliConfig);
|
|
33
|
-
expect(serviceInfo.commands.length).toEqual(0);
|
|
34
|
-
|
|
35
|
-
await prettyPrinterServiceProvider.initService(context);
|
|
36
|
-
});
|
|
37
|
-
});
|