@flowscripter/dynamic-cli-framework 1.4.19 → 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
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import type { ServiceInfo, ServiceProvider } from "../../api/service/ServiceProvider.ts";
|
|
2
|
+
import type { ArgumentSingleValueType, ArgumentValues, PopulatedArgumentValues, PopulatedArgumentValueType } from "../../api/argument/ArgumentValueTypes.ts";
|
|
3
|
+
import type Context from "../../api/Context.ts";
|
|
4
|
+
import type Command from "../../api/command/Command.ts";
|
|
5
|
+
import type CLIConfig from "../../api/CLIConfig.ts";
|
|
6
|
+
/**
|
|
7
|
+
* Provides:
|
|
8
|
+
*
|
|
9
|
+
* * Configuration of default command arguments using a configuration file and/or environment variables.
|
|
10
|
+
* * A generic key-value store for commands and services ({@link KeyValueService}).
|
|
11
|
+
*
|
|
12
|
+
* **Default Command Arguments**
|
|
13
|
+
*
|
|
14
|
+
* Configuration of default {@link ArgumentValues} for {@link Command} instances is supported if they
|
|
15
|
+
* have defined {@link Command.enableConfiguration} as `true`.
|
|
16
|
+
*
|
|
17
|
+
* Two sources of configuration are supported and both are expected to be manually managed by the user of the CLI.
|
|
18
|
+
*
|
|
19
|
+
* *Configuration File*
|
|
20
|
+
*
|
|
21
|
+
* A JSON file where the structure matches {@link ArgumentValues} and the defaults are stored
|
|
22
|
+
* under a top level `defaults` property. The second level of properties is used to refer to {@link Command.name}
|
|
23
|
+
* and the contained values are treated as command {@link ArgumentValues}. As an example:
|
|
24
|
+
*
|
|
25
|
+
* ```
|
|
26
|
+
* {
|
|
27
|
+
* "defaults": {
|
|
28
|
+
* "subCommand1": {
|
|
29
|
+
* "arg1": [
|
|
30
|
+
* 1,
|
|
31
|
+
* 2
|
|
32
|
+
* ],
|
|
33
|
+
* "arg2": {
|
|
34
|
+
* "arg3": "foo"
|
|
35
|
+
* }
|
|
36
|
+
* },
|
|
37
|
+
* "command2": {
|
|
38
|
+
* "arg4": true
|
|
39
|
+
* },
|
|
40
|
+
* "globalCommand": "globalArgumentValue"
|
|
41
|
+
* },
|
|
42
|
+
* "key-values": {
|
|
43
|
+
* ...
|
|
44
|
+
* }
|
|
45
|
+
* }
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* The default location of the configuration file is `$HOME/.<application_name>.json`. If `$HOME` is not defined no
|
|
49
|
+
* default configuration will be used. The location of the configuration file can be modified via the
|
|
50
|
+
* {@link ConfigCommand}.
|
|
51
|
+
*
|
|
52
|
+
* NOTE: You may store default arguments for secrets by manually configuring secrets in your OS
|
|
53
|
+
* credential store and referencing them in the config file using the sentinel format
|
|
54
|
+
* `__SECRET__:<bun_secret_name>`. These values will be resolved from the OS secret store
|
|
55
|
+
* before being returned as default argument values. See "Generic Key-Value Service" below.
|
|
56
|
+
*
|
|
57
|
+
* *Environment Variables*
|
|
58
|
+
*
|
|
59
|
+
* Values are parsed using a key path defined by custom {@link Argument.configurationKey}
|
|
60
|
+
* values or using the default naming scheme defined within {@link Argument.configurationKey}.
|
|
61
|
+
*
|
|
62
|
+
* NOTE: Any values set by environment variables will override those sourced from the configuration file.
|
|
63
|
+
*
|
|
64
|
+
* The argument key path is derived for an argument (or nested argument) as follows:
|
|
65
|
+
*
|
|
66
|
+
* Argument configuration keys are concatenated with a `_` separator.
|
|
67
|
+
* Any arguments which support array values must by suffixed with `_` and an explicit array index.
|
|
68
|
+
* If the root argument in the path does not use a custom {@link Argument.configurationKey} then the key path
|
|
69
|
+
* is additionally suffixed with the {@link CLIConfig.name} and the {@link Command.name} with `_` separators.
|
|
70
|
+
* This is best explained with examples...
|
|
71
|
+
*
|
|
72
|
+
* No custom configuration key examples:
|
|
73
|
+
*
|
|
74
|
+
* * executable: `MyCLI`, command: `globalCommand1`, global command argument => environment variable: `MYCLI_GLOBALCOMMAND1`
|
|
75
|
+
* * executable: `MyCLI`, command: `command1`, simple root argument: `arg1` => environment variable: `MYCLI_COMMAND1_ARG1`
|
|
76
|
+
* * executable: `MyCLI`, command: `command1`, array root argument, 1st element: `arg2[0]` => environment variable: `MYCLI_COMMAND1_ARG2_0`
|
|
77
|
+
* * executable: `MyCLI`, command: `command1`, argument is a digit so it is by default suffixed with `_`: `3` => environment variable: `MYCLI_COMMAND1__3`
|
|
78
|
+
* * executable: `MyCLI`, command: `command1`, nested sub-argument: `arg1.arg2` => environment variable: `MYCLI_COMMAND1_ARG1_ARG2`
|
|
79
|
+
* * executable: `MyCLI`, command: `command1`, nested sub-argument with both levels being arrays and referring to the 2nd element of each: `arg1[1].arg2[1]` => environment variable: `MYCLI_COMMAND1_ARG1_1_ARG2_2`
|
|
80
|
+
*
|
|
81
|
+
* Custom configuration key at the root level (and therefore not prefixed with CLI and command names) examples:
|
|
82
|
+
*
|
|
83
|
+
* * executable: `MyCLI`, command: `globalCommand1`, global command argument`, global command argument configuration key: `FOO` => environment variable: `FOO`
|
|
84
|
+
* * executable: `MyCLI`, command: `command1`, simple root argument: `arg1`, arg1 configuration key: `FOO` => environment variable: `FOO`
|
|
85
|
+
* * executable: `MyCLI`, command: `command1`, array root argument, 1st element: `arg2[0]`, arg1 configuration key: `BAR` => environment variable: `BAR_0`
|
|
86
|
+
*
|
|
87
|
+
* Custom configuration key not at the root level (and therefore prefixed with CLI and command names) examples:
|
|
88
|
+
*
|
|
89
|
+
* * executable: `MyCLI`, command: `command1`, nested sub-argument: `arg1.arg2`, arg2 configuration key: `FOO` => environment variable: `MYCLI_COMMAND1_ARG1_FOO`
|
|
90
|
+
* * executable: `MyCLI`, command: `command1`, nested sub-argument with both levels being arrays and referring to the 2nd element of each: `arg1[1].arg2[1]`, arg2 configuration key: `BAR` => environment variable: `MYCLI_COMMAND1_ARG1_1_BAR_2`
|
|
91
|
+
*
|
|
92
|
+
* NOTE: Any default values from the above configuration sources will be overridden by any arguments provided on the command line.
|
|
93
|
+
*
|
|
94
|
+
* **Generic Key-Value Service**
|
|
95
|
+
*
|
|
96
|
+
* The same configuration file above is used to provide storage for the provided {@link KeyValueService}. The values
|
|
97
|
+
* are stored under a top level `key-values` property. These are expected to not be modified by the user of the CLI.
|
|
98
|
+
*
|
|
99
|
+
* The second and third level of properties is used to scope the key-values to specific command names
|
|
100
|
+
* (via {@link Command.name} values) and specific service IDs (via {@link ServiceProvider.serviceId} values).
|
|
101
|
+
* Both keys and values are string based.
|
|
102
|
+
*
|
|
103
|
+
* Values may be stored as OS-native secrets via {@link KeyValueService.setKey} with `isSecret=true`.
|
|
104
|
+
* When a value is stored as a secret, a sentinel value of the format `__SECRET__:<bun_secret_name>`
|
|
105
|
+
* is stored in the config file instead of the actual value. The actual value is stored in the OS
|
|
106
|
+
* credential store via Bun.secrets. The sentinel prefix `__SECRET__:` is reserved and must not be
|
|
107
|
+
* used for regular key-value data.
|
|
108
|
+
*
|
|
109
|
+
* Secret support requires `secretServiceEnabled=true` in the constructor (which also requires
|
|
110
|
+
* `configEnabled=true`).
|
|
111
|
+
*
|
|
112
|
+
* As an example:
|
|
113
|
+
* ```
|
|
114
|
+
* {
|
|
115
|
+
* "defaults": {
|
|
116
|
+
* ...
|
|
117
|
+
* },
|
|
118
|
+
* "key-values": {
|
|
119
|
+
* "commands": {
|
|
120
|
+
* "command1": {
|
|
121
|
+
* "foo1": "bar1",
|
|
122
|
+
* "foo2": "__SECRET__:command_command1_foo2"
|
|
123
|
+
* },
|
|
124
|
+
* "command2": {
|
|
125
|
+
* "foo1": "bar3"
|
|
126
|
+
* }
|
|
127
|
+
* },
|
|
128
|
+
* "services": {
|
|
129
|
+
* "service-id-1": {
|
|
130
|
+
* "foo1": "bar"
|
|
131
|
+
* }
|
|
132
|
+
* }
|
|
133
|
+
* }
|
|
134
|
+
* }
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
export default class ConfigurationServiceProvider implements ServiceProvider {
|
|
138
|
+
#private;
|
|
139
|
+
readonly serviceId: string;
|
|
140
|
+
readonly servicePriority: number;
|
|
141
|
+
readonly envVarsEnabled: boolean;
|
|
142
|
+
readonly configEnabled: boolean;
|
|
143
|
+
readonly keyValueServiceEnabled: boolean;
|
|
144
|
+
readonly secretServiceEnabled: boolean;
|
|
145
|
+
configLocation: string | undefined;
|
|
146
|
+
defaultsData: Map<string, ArgumentValues | ArgumentSingleValueType>;
|
|
147
|
+
/**
|
|
148
|
+
* Create an instance of the service provider with the specified details.
|
|
149
|
+
*
|
|
150
|
+
* @param servicePriority the priority of the service.
|
|
151
|
+
* @param envVarsEnabled optionally support checking env variables for default argument values.
|
|
152
|
+
* @param configEnabled optionally enable configuration file support for default argument values.
|
|
153
|
+
* @param keyValueServiceEnabled optionally provide a {@link KeyValueService} implementation: `configEnabled` must be true in this case
|
|
154
|
+
* @param secretServiceEnabled optionally enable OS-native secret storage via Bun.secrets: `configEnabled` must be true in this case
|
|
155
|
+
*/
|
|
156
|
+
constructor(servicePriority: number, envVarsEnabled?: boolean, configEnabled?: boolean, keyValueServiceEnabled?: boolean, secretServiceEnabled?: boolean);
|
|
157
|
+
getServiceInfo(cliConfig: CLIConfig): Promise<ServiceInfo>;
|
|
158
|
+
setConfigLocation(configLocation: string): void;
|
|
159
|
+
/**
|
|
160
|
+
* Retrieve the default command argument values (if any) for the provided {@link Command}.
|
|
161
|
+
*
|
|
162
|
+
* This will retrieve values both from the configuration location and environment variables.
|
|
163
|
+
*
|
|
164
|
+
* @param cliConfig the {@link CLIConfig} to use for retrieving configuration keys.
|
|
165
|
+
* @param command the {@link Command} instance to retrieve default argument values for.
|
|
166
|
+
*/
|
|
167
|
+
getDefaultArgumentValues(cliConfig: CLIConfig, command: Command): Promise<PopulatedArgumentValues | PopulatedArgumentValueType | undefined>;
|
|
168
|
+
/**
|
|
169
|
+
* Indicate that the contained {@link DefaultKeyValueService} should be set to have a scope of the provided
|
|
170
|
+
* command name.
|
|
171
|
+
*
|
|
172
|
+
* @param commandName the name of the command to scope the key-value data to.
|
|
173
|
+
*
|
|
174
|
+
* @throws {Error} if an existing scope is set.
|
|
175
|
+
*/
|
|
176
|
+
setCommandKeyValueScope(commandName: string): void;
|
|
177
|
+
/**
|
|
178
|
+
* Indicate that the contained {@link DefaultKeyValueService} should be set to have a scope of the provided
|
|
179
|
+
* service ID.
|
|
180
|
+
*
|
|
181
|
+
* @param serviceId the ID of the service to scope the key-value data to.
|
|
182
|
+
*
|
|
183
|
+
* @throws {Error} if an existing scope is set.
|
|
184
|
+
*/
|
|
185
|
+
setServiceKeyValueScope(serviceId: string): void;
|
|
186
|
+
/**
|
|
187
|
+
* Indicate that the contained {@link DefaultKeyValueService} should have any current scope cleared.
|
|
188
|
+
*
|
|
189
|
+
* If a scope is currently set and changes have been made to the key-value data, they will be written
|
|
190
|
+
* to the current configuration location.
|
|
191
|
+
*/
|
|
192
|
+
clearKeyValueScope(): Promise<void>;
|
|
193
|
+
initService(context: Context): Promise<void>;
|
|
194
|
+
getConfigString(): string;
|
|
195
|
+
}
|
|
196
|
+
//# sourceMappingURL=ConfigurationServiceProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigurationServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/service/configuration/ConfigurationServiceProvider.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEzF,OAAO,KAAK,EACV,uBAAuB,EACvB,cAAc,EACd,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,0CAA0C,CAAC;AAElD,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAQhD,OAAO,KAAK,OAAO,MAAM,8BAA8B,CAAC;AAOxD,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAQpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkIG;AACH,MAAM,CAAC,OAAO,OAAO,4BAA6B,YAAW,eAAe;;IAC1E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAwB;IAClD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAEjC,SAAgB,cAAc,EAAE,OAAO,CAAC;IACxC,SAAgB,aAAa,EAAE,OAAO,CAAC;IACvC,SAAgB,sBAAsB,EAAE,OAAO,CAAC;IAChD,SAAgB,oBAAoB,EAAE,OAAO,CAAC;IAGvC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAKnC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,uBAAuB,CAAC,CAAa;IAmBvF;;;;;;;;OAQG;gBAED,eAAe,EAAE,MAAM,EACvB,cAAc,UAAQ,EACtB,aAAa,UAAQ,EACrB,sBAAsB,UAAQ,EAC9B,oBAAoB,UAAQ;IAevB,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAqB1D,iBAAiB,CAAC,cAAc,EAAE,MAAM;IAI/C;;;;;;;OAOG;IACU,wBAAwB,CACnC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,uBAAuB,GAAG,0BAA0B,GAAG,SAAS,CAAC;IAuE5E;;;;;;;OAOG;IACI,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IA6BzD;;;;;;;OAOG;IACI,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IA6BvD;;;;;OAKG;IACU,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBnC,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsGlD,eAAe,IAAI,MAAM;CAiCjC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type KeyValueService from "../../api/service/core/KeyValueService.ts";
|
|
2
|
+
import type DefaultSecretService from "./DefaultSecretService.ts";
|
|
3
|
+
export default class DefaultKeyValueService implements KeyValueService {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(secretService?: DefaultSecretService);
|
|
6
|
+
setKeyValueData(keyValueData: Map<string, string>): void;
|
|
7
|
+
clearKeyValueData(): void;
|
|
8
|
+
isDirty(): boolean;
|
|
9
|
+
getKey(key: string): Promise<string>;
|
|
10
|
+
hasKey(key: string): Promise<boolean>;
|
|
11
|
+
setKey(key: string, value: string, isSecret?: boolean): Promise<void>;
|
|
12
|
+
deleteKey(key: string): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=DefaultKeyValueService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultKeyValueService.d.ts","sourceRoot":"","sources":["../../../../src/service/configuration/DefaultKeyValueService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,2CAA2C,CAAC;AAE7E,OAAO,KAAK,oBAAoB,MAAM,2BAA2B,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,sBAAuB,YAAW,eAAe;;gBAKxD,aAAa,CAAC,EAAE,oBAAoB;IAIzC,eAAe,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAQjD,iBAAiB;IAKjB,OAAO,IAAI,OAAO;IAIZ,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwB1C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO/B,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBnE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAcnD"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type SecretService from "../../api/service/core/SecretService.ts";
|
|
2
|
+
export interface SecretsApi {
|
|
3
|
+
get(options: {
|
|
4
|
+
service: string;
|
|
5
|
+
name: string;
|
|
6
|
+
}): Promise<string | null>;
|
|
7
|
+
set(options: {
|
|
8
|
+
service: string;
|
|
9
|
+
name: string;
|
|
10
|
+
value: string;
|
|
11
|
+
}): Promise<void>;
|
|
12
|
+
delete(options: {
|
|
13
|
+
service: string;
|
|
14
|
+
name: string;
|
|
15
|
+
}): Promise<boolean>;
|
|
16
|
+
}
|
|
17
|
+
export default class DefaultSecretService implements SecretService {
|
|
18
|
+
#private;
|
|
19
|
+
constructor(serviceName: string, secretsApi?: SecretsApi);
|
|
20
|
+
setScope(scope: string): void;
|
|
21
|
+
clearScope(): void;
|
|
22
|
+
setSecret(key: string, value: string): Promise<string>;
|
|
23
|
+
getSecret(bunSecretName: string): Promise<string | null>;
|
|
24
|
+
deleteSecret(bunSecretName: string): Promise<boolean>;
|
|
25
|
+
hasSecret(bunSecretName: string): Promise<boolean>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=DefaultSecretService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultSecretService.d.ts","sourceRoot":"","sources":["../../../../src/service/configuration/DefaultSecretService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,yCAAyC,CAAC;AAMzE,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxE,GAAG,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtE;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,aAAa;;gBAKpD,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU;IAcjD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,UAAU,IAAI,IAAI;IAIZ,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBtD,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOxD,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOrD,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAQhE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type GlobalModifierCommand from "../../../api/command/GlobalModifierCommand.ts";
|
|
2
|
+
import type GlobalCommandArgument from "../../../api/argument/GlobalCommandArgument.ts";
|
|
3
|
+
import { type ArgumentSingleValueType } from "../../../api/argument/ArgumentValueTypes.ts";
|
|
4
|
+
import type Context from "../../../api/Context.ts";
|
|
5
|
+
import type ConfigurationServiceProvider from "../ConfigurationServiceProvider.ts";
|
|
6
|
+
/**
|
|
7
|
+
* Command allowing the specification of the configuration file location used by the {@link ConfigurationServiceProvider}.
|
|
8
|
+
*/
|
|
9
|
+
export default class ConfigCommand implements GlobalModifierCommand {
|
|
10
|
+
#private;
|
|
11
|
+
readonly name = "config";
|
|
12
|
+
readonly description = "Set the configuration file location";
|
|
13
|
+
readonly enableConfiguration = true;
|
|
14
|
+
readonly argument: GlobalCommandArgument;
|
|
15
|
+
readonly executePriority: number;
|
|
16
|
+
constructor(configurationServiceProvider: ConfigurationServiceProvider, executePriority: number);
|
|
17
|
+
execute(_context: Context, argumentValue: ArgumentSingleValueType): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=ConfigCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigCommand.d.ts","sourceRoot":"","sources":["../../../../../src/service/configuration/command/ConfigCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,qBAAqB,MAAM,+CAA+C,CAAC;AACvF,OAAO,KAAK,qBAAqB,MAAM,gDAAgD,CAAC;AACxF,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,KAAK,4BAA4B,MAAM,oCAAoC,CAAC;AAEnF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,YAAW,qBAAqB;;IACjE,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,WAAW,yCAAyC;IAC7D,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAGtC;IACF,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;gBAK/B,4BAA4B,EAAE,4BAA4B,EAC1D,eAAe,EAAE,MAAM;IAMlB,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;CAOzF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type Context from "../../../api/Context.ts";
|
|
2
|
+
import type GlobalCommand from "../../../api/command/GlobalCommand.ts";
|
|
3
|
+
import type ConfigurationServiceProvider from "../ConfigurationServiceProvider.ts";
|
|
4
|
+
/**
|
|
5
|
+
* Command which dumps the configuration loaded by the {@link ConfigurationServiceProvider}.
|
|
6
|
+
*/
|
|
7
|
+
export default class DumpConfigCommand implements GlobalCommand {
|
|
8
|
+
#private;
|
|
9
|
+
readonly name = "dump-config";
|
|
10
|
+
readonly description = "Dump configuration values";
|
|
11
|
+
constructor(configurationServiceProvider: ConfigurationServiceProvider);
|
|
12
|
+
execute(context: Context): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=DumpConfigCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DumpConfigCommand.d.ts","sourceRoot":"","sources":["../../../../../src/service/configuration/command/DumpConfigCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,KAAK,aAAa,MAAM,uCAAuC,CAAC;AACvE,OAAO,KAAK,4BAA4B,MAAM,oCAAoC,CAAC;AAMnF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,aAAa;;IAC7D,QAAQ,CAAC,IAAI,iBAAiB;IAC9B,QAAQ,CAAC,WAAW,+BAA+B;gBAIhC,4BAA4B,EAAE,4BAA4B;IAIhE,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAatD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ServiceInfo, ServiceProvider } from "../../api/service/ServiceProvider.ts";
|
|
2
|
+
import type Context from "../../api/Context.ts";
|
|
3
|
+
import type CLIConfig from "../../api/CLIConfig.ts";
|
|
4
|
+
export default class DataDumpGeneratorServiceProvider implements ServiceProvider {
|
|
5
|
+
#private;
|
|
6
|
+
readonly servicePriority: number;
|
|
7
|
+
readonly serviceId: string;
|
|
8
|
+
constructor(servicePriority: number);
|
|
9
|
+
getServiceInfo(_cliConfig: CLIConfig): Promise<ServiceInfo>;
|
|
10
|
+
initService(context: Context): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=DataDumpGeneratorServiceProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataDumpGeneratorServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAGzF,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAGhD,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,gCAAiC,YAAW,eAAe;;IAI3D,QAAQ,CAAC,eAAe,EAAE,MAAM;IAHnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAkC;gBAGhC,eAAe,EAAE,MAAM;IAI5C,cAAc,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAOlE,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ7C"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Buffer } from "node:buffer";
|
|
2
|
+
import type DataDumpGeneratorService from "../../api/service/core/DataDumpGeneratorService.ts";
|
|
3
|
+
import { type HexDumpGenerateOptions } from "../../api/service/core/DataDumpGeneratorService.ts";
|
|
4
|
+
export default class DefaultDataDumpGeneratorService implements DataDumpGeneratorService {
|
|
5
|
+
#private;
|
|
6
|
+
colorEnabled: boolean;
|
|
7
|
+
colorFunction: (text: string, hexFormattedColor: string) => string;
|
|
8
|
+
generate(data: Buffer, options?: HexDumpGenerateOptions): string;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=DefaultDataDumpGeneratorService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultDataDumpGeneratorService.d.ts","sourceRoot":"","sources":["../../../../src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,wBAAwB,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,oDAAoD,CAAC;AAE5D,MAAM,CAAC,OAAO,OAAO,+BAAgC,YAAW,wBAAwB;;IACtF,YAAY,UAAQ;IACpB,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,KAAK,MAAM,CAAkB;IAcpF,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM;CAgDjE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type ImagePrinterService from "../../api/service/core/ImagePrinterService.ts";
|
|
2
|
+
import type Terminal from "../../terminal/Terminal.ts";
|
|
3
|
+
export default class DefaultImagePrinterService implements ImagePrinterService {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(terminal: Terminal);
|
|
6
|
+
image(imageBuffer: Uint8Array, widthPercentage?: number, hexFormattedBackgroundColor?: string): Promise<string>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=DefaultImagePrinterService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultImagePrinterService.d.ts","sourceRoot":"","sources":["../../../../src/service/imagePrinter/DefaultImagePrinterService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,mBAAmB,MAAM,+CAA+C,CAAC;AACrF,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAC;AAEvD,MAAM,CAAC,OAAO,OAAO,0BAA2B,YAAW,mBAAmB;;gBAGhE,QAAQ,EAAE,QAAQ;IAI9B,KAAK,CACH,WAAW,EAAE,UAAU,EACvB,eAAe,GAAE,MAAY,EAC7B,2BAA2B,CAAC,EAAE,MAAM,GACnC,OAAO,CAAC,MAAM,CAAC;CAGnB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ServiceInfo, ServiceProvider } from "../../api/service/ServiceProvider.ts";
|
|
2
|
+
import type Context from "../../api/Context.ts";
|
|
3
|
+
import type CLIConfig from "../../api/CLIConfig.ts";
|
|
4
|
+
import type Terminal from "../../terminal/Terminal.ts";
|
|
5
|
+
export default class ImagePrinterServiceProvider implements ServiceProvider {
|
|
6
|
+
#private;
|
|
7
|
+
readonly servicePriority: number;
|
|
8
|
+
readonly serviceId: string;
|
|
9
|
+
constructor(servicePriority: number, terminal: Terminal);
|
|
10
|
+
getServiceInfo(_cliConfig: CLIConfig): Promise<ServiceInfo>;
|
|
11
|
+
initService(_context: Context): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ImagePrinterServiceProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImagePrinterServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/service/imagePrinter/ImagePrinterServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAGzF,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAC;AAEvD,MAAM,CAAC,OAAO,OAAO,2BAA4B,YAAW,eAAe;;IAKvE,QAAQ,CAAC,eAAe,EAAE,MAAM;IAJlC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAA4B;gBAI3C,eAAe,EAAE,MAAM,EAChC,QAAQ,EAAE,QAAQ;IAKb,cAAc,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAOlE,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAG9C"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type PluginService from "../../api/service/core/PluginService.ts";
|
|
2
|
+
import type { MarketplacePluginManager, VersionedPluginDescriptor, SearchQuery } from "@flowscripter/dynamic-plugin-framework";
|
|
3
|
+
export default class DefaultPluginService implements PluginService {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(pluginManager: MarketplacePluginManager);
|
|
6
|
+
search(query: Readonly<SearchQuery>): AsyncIterable<Readonly<VersionedPluginDescriptor>>;
|
|
7
|
+
install(descriptor: Readonly<VersionedPluginDescriptor>): Promise<void>;
|
|
8
|
+
uninstall(pluginId: string): Promise<void>;
|
|
9
|
+
listInstalled(): AsyncIterable<Readonly<VersionedPluginDescriptor>>;
|
|
10
|
+
checkForUpdates(): AsyncIterable<{
|
|
11
|
+
descriptor: Readonly<VersionedPluginDescriptor>;
|
|
12
|
+
availableVersion: string;
|
|
13
|
+
}>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=DefaultPluginService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultPluginService.d.ts","sourceRoot":"","sources":["../../../../src/service/plugin/DefaultPluginService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,WAAW,EACZ,MAAM,wCAAwC,CAAC;AAEhD,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,aAAa;;gBAGpD,aAAa,EAAE,wBAAwB;IAInD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAIlF,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAInE,eAAe,IAAI,aAAa,CAAC;QAC/B,UAAU,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAChD,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CAGH"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ServiceProvider, ServiceInfo } from "../../api/service/ServiceProvider.ts";
|
|
2
|
+
import type Context from "../../api/Context.ts";
|
|
3
|
+
import type CLIConfig from "../../api/CLIConfig.ts";
|
|
4
|
+
import type { MarketplacePluginManager } from "@flowscripter/dynamic-plugin-framework";
|
|
5
|
+
export default class DefaultPluginServiceProvider implements ServiceProvider {
|
|
6
|
+
#private;
|
|
7
|
+
readonly serviceId = "PLUGIN_SERVICE";
|
|
8
|
+
readonly servicePriority: number;
|
|
9
|
+
constructor(pluginManager: MarketplacePluginManager, servicePriority?: number);
|
|
10
|
+
getServiceInfo(_cliConfig: CLIConfig): Promise<ServiceInfo>;
|
|
11
|
+
initService(_context: Context): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=DefaultPluginServiceProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultPluginServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/service/plugin/DefaultPluginServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAKvF,MAAM,CAAC,OAAO,OAAO,4BAA6B,YAAW,eAAe;;IAC1E,QAAQ,CAAC,SAAS,oBAAqB;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;gBAIrB,aAAa,EAAE,wBAAwB,EAAE,eAAe,SAAK;IAKnE,cAAc,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ3D,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CACpD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type PrettyPrinterService from "../../api/service/core/PrettyPrinterService.ts";
|
|
2
|
+
import type { Plugin } from "prettier";
|
|
3
|
+
/**
|
|
4
|
+
* Default implementation of {@link PrettyPrinterService} which provides by default the
|
|
5
|
+
* syntaxes built into prettier.
|
|
6
|
+
*/
|
|
7
|
+
export default class DefaultPrettyPrinterService implements PrettyPrinterService {
|
|
8
|
+
#private;
|
|
9
|
+
getRegisteredSyntaxes(): Promise<ReadonlyArray<string>>;
|
|
10
|
+
prettify(text: string, syntaxName: string): Promise<string>;
|
|
11
|
+
registerSyntax(syntaxName: string, syntaxPlugin: Plugin): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=DefaultPrettyPrinterService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultPrettyPrinterService.d.ts","sourceRoot":"","sources":["../../../../src/service/prettyPrinter/DefaultPrettyPrinterService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,oBAAoB,MAAM,gDAAgD,CAAC;AAEvF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA4B,YAAW,oBAAoB;;IASxE,qBAAqB,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAQvD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB3D,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAa9E"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ServiceInfo, ServiceProvider } from "../../api/service/ServiceProvider.ts";
|
|
2
|
+
import type Context from "../../api/Context.ts";
|
|
3
|
+
import type CLIConfig from "../../api/CLIConfig.ts";
|
|
4
|
+
/**
|
|
5
|
+
* Provides a {@link PrettyPrinterService}.
|
|
6
|
+
*/
|
|
7
|
+
export default class PrettyPrinterServiceProvider implements ServiceProvider {
|
|
8
|
+
#private;
|
|
9
|
+
readonly servicePriority: number;
|
|
10
|
+
readonly serviceId: string;
|
|
11
|
+
/**
|
|
12
|
+
* Create an instance of the service provider with the specified details.
|
|
13
|
+
*
|
|
14
|
+
* @param servicePriority the priority of the service.
|
|
15
|
+
*/
|
|
16
|
+
constructor(servicePriority: number);
|
|
17
|
+
getServiceInfo(_cliConfig: CLIConfig): Promise<ServiceInfo>;
|
|
18
|
+
initService(_context: Context): Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=PrettyPrinterServiceProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrettyPrinterServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/service/prettyPrinter/PrettyPrinterServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAGzF,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAEpD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,4BAA6B,YAAW,eAAe;;IASvD,QAAQ,CAAC,eAAe,EAAE,MAAM;IARnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAA6B;IAGvD;;;;OAIG;gBACyB,eAAe,EAAE,MAAM;IAI5C,cAAc,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAOlE,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAG9C"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type PrinterService from "../../api/service/core/PrinterService.ts";
|
|
2
|
+
import { type Icon, Level, type ProgressStyle, type SpinnerStyle } from "../../api/service/core/PrinterService.ts";
|
|
3
|
+
import type Terminal from "../../terminal/Terminal.ts";
|
|
4
|
+
import { WritableStream } from "node:stream/web";
|
|
5
|
+
import type Styler from "../../terminal/Styler.ts";
|
|
6
|
+
export default class DefaultPrinterService implements PrinterService {
|
|
7
|
+
#private;
|
|
8
|
+
readonly stdoutWritable: WritableStream;
|
|
9
|
+
readonly stderrWritable: WritableStream;
|
|
10
|
+
constructor(stdoutWritableStream: WritableStream, stderrWritableStream: WritableStream, stdoutIsColor: boolean, stderrIsColor: boolean, stdoutTerminal: Terminal, stderrTerminal: Terminal, styler: Styler);
|
|
11
|
+
set colorEnabled(enabled: boolean);
|
|
12
|
+
get colorEnabled(): boolean;
|
|
13
|
+
set hyperlinksEnabled(enabled: boolean);
|
|
14
|
+
get hyperlinksEnabled(): boolean;
|
|
15
|
+
hyperlink(text: string, url: string): string;
|
|
16
|
+
stdoutColumns(): number;
|
|
17
|
+
stderrColumns(): number;
|
|
18
|
+
set darkMode(isDarkMode: boolean);
|
|
19
|
+
get darkMode(): boolean;
|
|
20
|
+
primary(message: string): string;
|
|
21
|
+
secondary(message: string): string;
|
|
22
|
+
emphasised(message: string): string;
|
|
23
|
+
selected(message: string): string;
|
|
24
|
+
italic(message: string): string;
|
|
25
|
+
yellow(message: string): string;
|
|
26
|
+
orange(message: string): string;
|
|
27
|
+
red(message: string): string;
|
|
28
|
+
magenta(message: string): string;
|
|
29
|
+
violet(message: string): string;
|
|
30
|
+
blue(message: string): string;
|
|
31
|
+
cyan(message: string): string;
|
|
32
|
+
green(message: string): string;
|
|
33
|
+
color(message: string, hexFormattedColor: string): string;
|
|
34
|
+
backgroundPrimary(message: string): string;
|
|
35
|
+
backgroundSecondary(message: string): string;
|
|
36
|
+
backgroundEmphasised(message: string): string;
|
|
37
|
+
backgroundSelected(message: string): string;
|
|
38
|
+
backgroundYellow(message: string): string;
|
|
39
|
+
backgroundOrange(message: string): string;
|
|
40
|
+
backgroundRed(message: string): string;
|
|
41
|
+
backgroundMagenta(message: string): string;
|
|
42
|
+
backgroundViolet(message: string): string;
|
|
43
|
+
backgroundBlue(message: string): string;
|
|
44
|
+
backgroundCyan(message: string): string;
|
|
45
|
+
backgroundGreen(message: string): string;
|
|
46
|
+
backgroundColor(message: string, hexFormattedColor: string): string;
|
|
47
|
+
debug(message: string, icon?: Icon): Promise<void>;
|
|
48
|
+
info(message: string, icon?: Icon): Promise<void>;
|
|
49
|
+
warn(message: string, icon?: Icon): Promise<void>;
|
|
50
|
+
error(message: string, icon?: Icon): Promise<void>;
|
|
51
|
+
print(message: string, icon?: Icon): Promise<void>;
|
|
52
|
+
setLevel(level: Level): Promise<void>;
|
|
53
|
+
getLevel(): Level;
|
|
54
|
+
showSpinner(message?: string, style?: SpinnerStyle): Promise<void>;
|
|
55
|
+
hideSpinner(): Promise<void>;
|
|
56
|
+
showProgressBar(units: string, message?: string, total?: number, current?: number, style?: ProgressStyle): Promise<number>;
|
|
57
|
+
hideProgressBar(handle: number): Promise<void>;
|
|
58
|
+
hideAllProgressBars(): Promise<void>;
|
|
59
|
+
updateProgressBar(handle: number, current: number, message?: string): void;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=DefaultPrinterService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultPrinterService.d.ts","sourceRoot":"","sources":["../../../../src/service/printer/DefaultPrinterService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,cAAc,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EACL,KAAK,IAAI,EACT,KAAK,EACL,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,MAAM,CAAC,OAAO,OAAO,qBAAsB,YAAW,cAAc;;IAClE,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;gBA2BtC,oBAAoB,EAAE,cAAc,EACpC,oBAAoB,EAAE,cAAc,EACpC,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,cAAc,EAAE,QAAQ,EACxB,cAAc,EAAE,QAAQ,EACxB,MAAM,EAAE,MAAM;IAehB,IAAI,YAAY,CAAC,OAAO,EAAE,OAAO,EAQhC;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,IAAI,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAErC;IAED,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAEM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAI5C,aAAa,IAAI,MAAM;IAIvB,aAAa,IAAI,MAAM;IAI9B,IAAI,QAAQ,CAAC,UAAU,EAAE,OAAO,EAa/B;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAEM,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIhC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIlC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAInC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIjC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI/B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI/B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI/B,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI5B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIhC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI/B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI7B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAe9B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM;IAIzD,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI1C,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI5C,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI7C,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIzC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAItC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI1C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIzC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIvC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIxC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM;IAI7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBlD,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3C,QAAQ,IAAI,KAAK;IAIX,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlE,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,eAAe,CAC1B,KAAK,EAAE,MAAM,EACb,OAAO,SAAK,EACZ,KAAK,SAAM,EACX,OAAO,SAAI,EACX,KAAK,CAAC,EAAE,aAAa,GACpB,OAAO,CAAC,MAAM,CAAC;IAYL,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;CAMlF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type Context from "../../api/Context.ts";
|
|
2
|
+
import type { ServiceInfo, ServiceProvider } from "../../api/service/ServiceProvider.ts";
|
|
3
|
+
import type PrinterService from "../../api/service/core/PrinterService.ts";
|
|
4
|
+
import type CLIConfig from "../../api/CLIConfig.ts";
|
|
5
|
+
/**
|
|
6
|
+
* Provides a {@link PrinterService}.
|
|
7
|
+
*/
|
|
8
|
+
export default class PrinterServiceProvider implements ServiceProvider {
|
|
9
|
+
readonly serviceId: string;
|
|
10
|
+
readonly servicePriority: number;
|
|
11
|
+
readonly printerService: PrinterService;
|
|
12
|
+
/**
|
|
13
|
+
* Create an instance of the service provider with the specified details.
|
|
14
|
+
*
|
|
15
|
+
* @param servicePriority the priority of the service.
|
|
16
|
+
* @param printerService the PrinterService implementation to use.
|
|
17
|
+
*/
|
|
18
|
+
constructor(servicePriority: number, printerService: PrinterService);
|
|
19
|
+
getServiceInfo(_cliConfig: CLIConfig): Promise<ServiceInfo>;
|
|
20
|
+
initService(context: Context): Promise<void>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=PrinterServiceProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrinterServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/service/printer/PrinterServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,KAAK,cAAc,MAAM,0CAA0C,CAAC;AAK3E,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAIpD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,sBAAuB,YAAW,eAAe;IACpE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAsB;IAChD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAExC;;;;;OAKG;gBACgB,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc;IAKnE,cAAc,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAYlE,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAS7C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type GlobalModifierCommand from "../../../api/command/GlobalModifierCommand.ts";
|
|
2
|
+
import type GlobalCommandArgument from "../../../api/argument/GlobalCommandArgument.ts";
|
|
3
|
+
import { type ArgumentSingleValueType } from "../../../api/argument/ArgumentValueTypes.ts";
|
|
4
|
+
import type Context from "../../../api/Context.ts";
|
|
5
|
+
import type PrinterServiceProvider from "../PrinterServiceProvider.ts";
|
|
6
|
+
/**
|
|
7
|
+
* Command allowing the specification of dark/light mode for {@link PrinterServiceProvider}.
|
|
8
|
+
*/
|
|
9
|
+
export default class DarkModeCommand implements GlobalModifierCommand {
|
|
10
|
+
#private;
|
|
11
|
+
readonly name = "dark-mode";
|
|
12
|
+
readonly description = "Enable dark mode for output";
|
|
13
|
+
readonly enableConfiguration = true;
|
|
14
|
+
readonly argument: GlobalCommandArgument;
|
|
15
|
+
readonly executePriority: number;
|
|
16
|
+
constructor(printerServiceProvider: PrinterServiceProvider, executePriority: number);
|
|
17
|
+
execute(_context: Context, argumentValue: ArgumentSingleValueType): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=DarkModeCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DarkModeCommand.d.ts","sourceRoot":"","sources":["../../../../../src/service/printer/command/DarkModeCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,qBAAqB,MAAM,+CAA+C,CAAC;AACvF,OAAO,KAAK,qBAAqB,MAAM,gDAAgD,CAAC;AACxF,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,KAAK,sBAAsB,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,qBAAqB;;IACnE,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,WAAW,iCAAiC;IACrD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAItC;IACF,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;gBAId,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM;IAKnF,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;CAKzF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type GlobalCommandArgument from "../../../api/argument/GlobalCommandArgument.ts";
|
|
2
|
+
import { type ArgumentSingleValueType } from "../../../api/argument/ArgumentValueTypes.ts";
|
|
3
|
+
import type GlobalModifierCommand from "../../../api/command/GlobalModifierCommand.ts";
|
|
4
|
+
import type Context from "../../../api/Context.ts";
|
|
5
|
+
import type PrinterServiceProvider from "../PrinterServiceProvider.ts";
|
|
6
|
+
/**
|
|
7
|
+
* Command allowing the setting of the log level for {@link PrinterServiceProvider}.
|
|
8
|
+
*/
|
|
9
|
+
export default class LogLevelCommand implements GlobalModifierCommand {
|
|
10
|
+
#private;
|
|
11
|
+
readonly name = "log-level";
|
|
12
|
+
readonly description = "Set the logging threshold";
|
|
13
|
+
readonly enableConfiguration = true;
|
|
14
|
+
readonly argument: GlobalCommandArgument;
|
|
15
|
+
readonly executePriority: number;
|
|
16
|
+
constructor(printerServiceProvider: PrinterServiceProvider, executePriority: number);
|
|
17
|
+
execute(_context: Context, argumentValue: ArgumentSingleValueType): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=LogLevelCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LogLevelCommand.d.ts","sourceRoot":"","sources":["../../../../../src/service/printer/command/LogLevelCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,qBAAqB,MAAM,gDAAgD,CAAC;AACxF,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,qBAAqB,MAAM,+CAA+C,CAAC;AACvF,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,KAAK,sBAAsB,MAAM,8BAA8B,CAAC;AAGvE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,qBAAqB;;IACnE,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,WAAW,+BAA+B;IACnD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAMtC;IACF,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;gBAId,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM;IAKnF,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBzF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type GlobalModifierCommand from "../../../api/command/GlobalModifierCommand.ts";
|
|
2
|
+
import type GlobalCommandArgument from "../../../api/argument/GlobalCommandArgument.ts";
|
|
3
|
+
import { type ArgumentSingleValueType } from "../../../api/argument/ArgumentValueTypes.ts";
|
|
4
|
+
import type Context from "../../../api/Context.ts";
|
|
5
|
+
import type PrinterServiceProvider from "../PrinterServiceProvider.ts";
|
|
6
|
+
/**
|
|
7
|
+
* Command allowing the disabling of color for {@link PrinterServiceProvider}.
|
|
8
|
+
*/
|
|
9
|
+
export default class NoColorCommand implements GlobalModifierCommand {
|
|
10
|
+
#private;
|
|
11
|
+
readonly name = "no-color";
|
|
12
|
+
readonly description = "Disable color for output";
|
|
13
|
+
readonly enableConfiguration = true;
|
|
14
|
+
readonly argument: GlobalCommandArgument;
|
|
15
|
+
readonly executePriority: number;
|
|
16
|
+
constructor(printerServiceProvider: PrinterServiceProvider, executePriority: number);
|
|
17
|
+
execute(_context: Context, argumentValue: ArgumentSingleValueType): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=NoColorCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NoColorCommand.d.ts","sourceRoot":"","sources":["../../../../../src/service/printer/command/NoColorCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,qBAAqB,MAAM,+CAA+C,CAAC;AACvF,OAAO,KAAK,qBAAqB,MAAM,gDAAgD,CAAC;AACxF,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,KAAK,sBAAsB,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,qBAAqB;;IAClE,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,WAAW,8BAA8B;IAClD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAItC;IACF,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;gBAId,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM;IAKnF,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;CAKzF"}
|