@promptbook/utils 0.60.0 → 0.61.0-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 +17 -19
- package/esm/index.es.js +392 -274
- package/esm/index.es.js.map +1 -1
- package/esm/typings/promptbook-collection/index.d.ts +61 -4
- package/esm/typings/src/_packages/core.index.d.ts +8 -8
- package/esm/typings/src/_packages/markdown-utils.d.ts +17 -0
- package/esm/typings/src/_packages/types.index.d.ts +11 -6
- package/esm/typings/src/_packages/utils.index.d.ts +23 -19
- package/esm/typings/src/cli/cli-commands/hello.d.ts +7 -0
- package/esm/typings/src/cli/cli-commands/make.d.ts +7 -0
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +7 -0
- package/esm/typings/src/collection/collectionToJson.d.ts +3 -0
- package/esm/typings/src/collection/collectionToJson.test.d.ts +6 -0
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +2 -1
- package/esm/typings/src/commands/BLOCK/BlockCommand.d.ts +11 -0
- package/esm/typings/src/commands/BLOCK/BlockTypes.d.ts +13 -0
- package/esm/typings/src/commands/BLOCK/blockCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/EXPECT/ExpectAmountCommand.d.ts +14 -0
- package/esm/typings/src/commands/EXPECT/ExpectCommand.d.ts +9 -0
- package/esm/typings/src/commands/EXPECT/ExpectFormatCommand.d.ts +7 -0
- package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/JOKER/JokerCommand.d.ts +11 -0
- package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +12 -0
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +13 -0
- package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/PARAMETER/ParameterCommand.d.ts +15 -0
- package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +11 -0
- package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/POSTPROCESS/PostprocessCommand.d.ts +11 -0
- package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/PROMPTBOOK_VERSION/PromptbookVersionCommand.d.ts +11 -0
- package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/URL/UrlCommand.d.ts +10 -0
- package/esm/typings/src/commands/URL/urlCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/X_ACTION/ActionCommand.d.ts +9 -0
- package/esm/typings/src/commands/X_ACTION/actionCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/X_INSTRUMENT/InstrumentCommand.d.ts +9 -0
- package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/_BOILERPLATE/BoilerplateCommand.d.ts +10 -0
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/_common/parseCommand.d.ts +12 -0
- package/esm/typings/src/commands/_common/parseCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/_common/types/Command.d.ts +6 -0
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +36 -0
- package/esm/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +9 -0
- package/esm/typings/src/commands/index.d.ts +4 -0
- package/esm/typings/src/config.d.ts +4 -0
- package/esm/typings/src/conversion/pipelineJsonToString.d.ts +2 -0
- package/esm/typings/src/conversion/pipelineStringToJson.d.ts +2 -3
- package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +4 -2
- package/esm/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
- package/esm/typings/src/conversion/utils/extractVariables.d.ts +1 -1
- package/esm/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +3 -0
- package/esm/typings/src/errors/NotYetImplementedError.d.ts +7 -0
- package/esm/typings/src/errors/{SyntaxError.d.ts → ParsingError.d.ts} +2 -2
- package/{umd/typings/src/errors/ExecutionError.d.ts → esm/typings/src/errors/PipelineExecutionError.d.ts} +2 -2
- package/esm/typings/src/errors/_ExpectError.d.ts +2 -2
- package/esm/typings/src/execution/ExecutionTools.d.ts +4 -3
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +24 -5
- package/esm/typings/src/execution/PromptResult.d.ts +2 -2
- package/esm/typings/src/execution/assertsExecutionSuccessful.d.ts +1 -1
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -1
- package/esm/typings/src/execution/utils/checkExpectations.d.ts +1 -1
- package/esm/typings/src/execution/utils/replaceParameters.d.ts +1 -1
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +5 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +5 -5
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -0
- package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +5 -0
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -0
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +10 -0
- package/esm/typings/src/llm-providers/mocked/fakeTextToExpectations.d.ts +1 -1
- package/esm/typings/src/llm-providers/mocked/test/fakeTextToExpectations.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/mocked/test/faked-completion.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +5 -0
- package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +14 -1
- package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +16 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +6 -1
- package/esm/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -0
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +13 -3
- package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -0
- package/esm/typings/src/personas/personaToModelRequirements.d.ts +6 -0
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +2 -1
- package/esm/typings/src/types/Arrayable.d.ts +10 -0
- package/esm/typings/src/types/PipelineJson/Expectations.d.ts +28 -0
- package/esm/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +16 -0
- package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +8 -2
- package/esm/typings/src/types/PipelineJson/PromptDialogJson.d.ts +7 -0
- package/esm/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +6 -142
- package/esm/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +77 -0
- package/esm/typings/src/types/PipelineJson/ScriptJson.d.ts +14 -0
- package/esm/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +7 -0
- package/esm/typings/src/types/Prompt.d.ts +3 -3
- package/esm/typings/src/types/TaskProgress.d.ts +2 -2
- package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +3 -3
- package/esm/typings/src/types/typeAliases.d.ts +50 -6
- package/esm/typings/src/utils/arrayableToArray.d.ts +11 -0
- package/esm/typings/src/utils/arrayableToArray.test.d.ts +1 -0
- package/esm/typings/src/utils/emojis.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countCharacters.d.ts +1 -1
- package/esm/typings/src/utils/expectation-counters/countLines.d.ts +1 -1
- package/esm/typings/src/utils/expectation-counters/countPages.d.ts +1 -1
- package/esm/typings/src/utils/expectation-counters/countParagraphs.d.ts +1 -1
- package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
- package/esm/typings/src/utils/expectation-counters/countWords.d.ts +1 -1
- package/esm/typings/src/utils/expectation-counters/index.d.ts +2 -2
- package/esm/typings/src/utils/markdown/flattenMarkdown.d.ts +14 -0
- package/esm/typings/src/utils/markdown/flattenMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +30 -0
- package/esm/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/prettifyMarkdown.d.ts +1 -0
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +12 -0
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +8 -1
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +8 -1
- package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +13 -1
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +8 -1
- package/esm/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +8 -1
- package/esm/typings/src/{conversion/utils → utils}/parseNumber.d.ts +1 -1
- package/esm/typings/src/utils/parseNumber.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/difference.d.ts +2 -0
- package/esm/typings/src/utils/sets/intersection.d.ts +2 -0
- package/esm/typings/src/utils/sets/union.d.ts +2 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +5 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +7 -0
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -0
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +12 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +9 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +9 -0
- package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +12 -0
- package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +12 -0
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +3 -0
- package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +5 -0
- package/esm/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +1 -0
- package/esm/typings/src/version.d.ts +3 -2
- package/package.json +1 -1
- package/umd/index.umd.js +400 -278
- package/umd/index.umd.js.map +1 -1
- package/umd/typings/promptbook-collection/index.d.ts +61 -4
- package/umd/typings/src/_packages/core.index.d.ts +8 -8
- package/umd/typings/src/_packages/markdown-utils.d.ts +17 -0
- package/umd/typings/src/_packages/types.index.d.ts +11 -6
- package/umd/typings/src/_packages/utils.index.d.ts +23 -19
- package/umd/typings/src/cli/cli-commands/hello.d.ts +7 -0
- package/umd/typings/src/cli/cli-commands/make.d.ts +7 -0
- package/umd/typings/src/cli/cli-commands/prettify.d.ts +7 -0
- package/umd/typings/src/collection/collectionToJson.d.ts +3 -0
- package/umd/typings/src/collection/collectionToJson.test.d.ts +6 -0
- package/umd/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +2 -1
- package/umd/typings/src/commands/BLOCK/BlockCommand.d.ts +11 -0
- package/umd/typings/src/commands/BLOCK/BlockTypes.d.ts +13 -0
- package/umd/typings/src/commands/BLOCK/blockCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/BLOCK/blockCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/EXPECT/ExpectAmountCommand.d.ts +14 -0
- package/umd/typings/src/commands/EXPECT/ExpectCommand.d.ts +9 -0
- package/umd/typings/src/commands/EXPECT/ExpectFormatCommand.d.ts +7 -0
- package/umd/typings/src/commands/EXPECT/expectCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/EXPECT/expectCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/JOKER/JokerCommand.d.ts +11 -0
- package/umd/typings/src/commands/JOKER/jokerCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/JOKER/jokerCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +12 -0
- package/umd/typings/src/commands/KNOWLEDGE/knowledgeCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/MODEL/ModelCommand.d.ts +13 -0
- package/umd/typings/src/commands/MODEL/modelCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/MODEL/modelCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/PARAMETER/ParameterCommand.d.ts +15 -0
- package/umd/typings/src/commands/PARAMETER/parameterCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/PERSONA/PersonaCommand.d.ts +11 -0
- package/umd/typings/src/commands/PERSONA/personaCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/PERSONA/personaCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/POSTPROCESS/PostprocessCommand.d.ts +11 -0
- package/umd/typings/src/commands/POSTPROCESS/postprocessCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/PROMPTBOOK_VERSION/PromptbookVersionCommand.d.ts +11 -0
- package/umd/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/URL/UrlCommand.d.ts +10 -0
- package/umd/typings/src/commands/URL/urlCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/URL/urlCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/X_ACTION/ActionCommand.d.ts +9 -0
- package/umd/typings/src/commands/X_ACTION/actionCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/X_ACTION/actionCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/X_INSTRUMENT/InstrumentCommand.d.ts +9 -0
- package/umd/typings/src/commands/X_INSTRUMENT/instrumentCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +9 -0
- package/umd/typings/src/commands/_BOILERPLATE/BoilerplateCommand.d.ts +10 -0
- package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +12 -0
- package/umd/typings/src/commands/_common/parseCommand.d.ts +12 -0
- package/umd/typings/src/commands/_common/parseCommand.test.d.ts +1 -0
- package/umd/typings/src/commands/_common/types/Command.d.ts +6 -0
- package/umd/typings/src/commands/_common/types/CommandParser.d.ts +36 -0
- package/umd/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +9 -0
- package/umd/typings/src/commands/index.d.ts +4 -0
- package/umd/typings/src/config.d.ts +4 -0
- package/umd/typings/src/conversion/pipelineJsonToString.d.ts +2 -0
- package/umd/typings/src/conversion/pipelineStringToJson.d.ts +2 -3
- package/umd/typings/src/conversion/pipelineStringToJsonSync.d.ts +4 -2
- package/umd/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
- package/umd/typings/src/conversion/utils/extractVariables.d.ts +1 -1
- package/umd/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +3 -0
- package/umd/typings/src/errors/NotYetImplementedError.d.ts +7 -0
- package/umd/typings/src/errors/{SyntaxError.d.ts → ParsingError.d.ts} +2 -2
- package/{esm/typings/src/errors/ExecutionError.d.ts → umd/typings/src/errors/PipelineExecutionError.d.ts} +2 -2
- package/umd/typings/src/errors/_ExpectError.d.ts +2 -2
- package/umd/typings/src/execution/ExecutionTools.d.ts +4 -3
- package/umd/typings/src/execution/LlmExecutionTools.d.ts +24 -5
- package/umd/typings/src/execution/PromptResult.d.ts +2 -2
- package/umd/typings/src/execution/assertsExecutionSuccessful.d.ts +1 -1
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -1
- package/umd/typings/src/execution/utils/checkExpectations.d.ts +1 -1
- package/umd/typings/src/execution/utils/replaceParameters.d.ts +1 -1
- package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +5 -0
- package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +5 -5
- package/umd/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -0
- package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -0
- package/umd/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +5 -0
- package/umd/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -0
- package/umd/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +10 -0
- package/umd/typings/src/llm-providers/mocked/fakeTextToExpectations.d.ts +1 -1
- package/umd/typings/src/llm-providers/mocked/test/fakeTextToExpectations.test.d.ts +1 -0
- package/umd/typings/src/llm-providers/mocked/test/faked-completion.test.d.ts +1 -0
- package/umd/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +5 -0
- package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +14 -1
- package/umd/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +16 -0
- package/umd/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +6 -1
- package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
- package/umd/typings/src/llm-providers/openai/openai-models.d.ts +1 -0
- package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +13 -3
- package/umd/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -0
- package/umd/typings/src/personas/personaToModelRequirements.d.ts +6 -0
- package/umd/typings/src/scripting/javascript/utils/preserve.d.ts +2 -1
- package/umd/typings/src/types/Arrayable.d.ts +10 -0
- package/umd/typings/src/types/PipelineJson/Expectations.d.ts +28 -0
- package/umd/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +16 -0
- package/umd/typings/src/types/PipelineJson/PipelineJson.d.ts +8 -2
- package/umd/typings/src/types/PipelineJson/PromptDialogJson.d.ts +7 -0
- package/umd/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +6 -142
- package/umd/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +77 -0
- package/umd/typings/src/types/PipelineJson/ScriptJson.d.ts +14 -0
- package/umd/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +7 -0
- package/umd/typings/src/types/Prompt.d.ts +3 -3
- package/umd/typings/src/types/TaskProgress.d.ts +2 -2
- package/umd/typings/src/types/execution-report/ExecutionReportJson.d.ts +3 -3
- package/umd/typings/src/types/typeAliases.d.ts +50 -6
- package/umd/typings/src/utils/arrayableToArray.d.ts +11 -0
- package/umd/typings/src/utils/arrayableToArray.test.d.ts +1 -0
- package/umd/typings/src/utils/emojis.d.ts +1 -0
- package/umd/typings/src/utils/expectation-counters/countCharacters.d.ts +1 -1
- package/umd/typings/src/utils/expectation-counters/countLines.d.ts +1 -1
- package/umd/typings/src/utils/expectation-counters/countPages.d.ts +1 -1
- package/umd/typings/src/utils/expectation-counters/countParagraphs.d.ts +1 -1
- package/umd/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
- package/umd/typings/src/utils/expectation-counters/countWords.d.ts +1 -1
- package/umd/typings/src/utils/expectation-counters/index.d.ts +2 -2
- package/umd/typings/src/utils/markdown/flattenMarkdown.d.ts +14 -0
- package/umd/typings/src/utils/markdown/flattenMarkdown.test.d.ts +1 -0
- package/umd/typings/src/utils/markdown/parseMarkdownSection.d.ts +30 -0
- package/umd/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +1 -0
- package/umd/typings/src/utils/markdown/prettifyMarkdown.d.ts +1 -0
- package/umd/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +12 -0
- package/umd/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +1 -0
- package/umd/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +8 -1
- package/umd/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +8 -1
- package/umd/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +13 -1
- package/umd/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +8 -1
- package/umd/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +8 -1
- package/umd/typings/src/{conversion/utils → utils}/parseNumber.d.ts +1 -1
- package/umd/typings/src/utils/parseNumber.test.d.ts +1 -0
- package/umd/typings/src/utils/sets/difference.d.ts +2 -0
- package/umd/typings/src/utils/sets/intersection.d.ts +2 -0
- package/umd/typings/src/utils/sets/union.d.ts +2 -0
- package/umd/typings/src/utils/validators/email/isValidEmail.d.ts +5 -0
- package/umd/typings/src/utils/validators/email/isValidEmail.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/filePath/isValidFilePath.d.ts +7 -0
- package/umd/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -0
- package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +12 -0
- package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +9 -0
- package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +9 -0
- package/umd/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +12 -0
- package/umd/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +12 -0
- package/umd/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +1 -0
- package/umd/typings/src/utils/validators/url/isValidUrl.d.ts +3 -0
- package/umd/typings/src/utils/validators/uuid/isValidUuid.d.ts +5 -0
- package/umd/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +1 -0
- package/umd/typings/src/version.d.ts +3 -2
- package/esm/typings/src/cli/actions/hello.d.ts +0 -7
- package/esm/typings/src/cli/actions/make.d.ts +0 -7
- package/esm/typings/src/cli/actions/prettify.d.ts +0 -7
- package/esm/typings/src/conversion/utils/parseCommand.d.ts +0 -11
- package/esm/typings/src/conversion/utils/parseCommand.test.d.ts +0 -4
- package/esm/typings/src/errors/TemplateError.d.ts +0 -9
- package/esm/typings/src/llm-providers/mocked/mocked-chat.test.d.ts +0 -4
- package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionToolsOptions.d.ts +0 -24
- package/esm/typings/src/types/Command.d.ts +0 -101
- package/esm/typings/src/types/ExecutionTypes.d.ts +0 -13
- package/esm/typings/src/utils/markdown-json/MarkdownStructure.d.ts +0 -25
- package/esm/typings/src/utils/markdown-json/countMarkdownStructureDeepness.d.ts +0 -7
- package/esm/typings/src/utils/markdown-json/markdownToMarkdownStructure.d.ts +0 -13
- package/umd/typings/src/cli/actions/hello.d.ts +0 -7
- package/umd/typings/src/cli/actions/make.d.ts +0 -7
- package/umd/typings/src/cli/actions/prettify.d.ts +0 -7
- package/umd/typings/src/conversion/utils/parseCommand.d.ts +0 -11
- package/umd/typings/src/conversion/utils/parseCommand.test.d.ts +0 -4
- package/umd/typings/src/errors/TemplateError.d.ts +0 -9
- package/umd/typings/src/llm-providers/mocked/mocked-chat.test.d.ts +0 -4
- package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionToolsOptions.d.ts +0 -24
- package/umd/typings/src/types/Command.d.ts +0 -101
- package/umd/typings/src/types/ExecutionTypes.d.ts +0 -13
- package/umd/typings/src/utils/markdown-json/MarkdownStructure.d.ts +0 -25
- package/umd/typings/src/utils/markdown-json/countMarkdownStructureDeepness.d.ts +0 -7
- package/umd/typings/src/utils/markdown-json/markdownToMarkdownStructure.d.ts +0 -13
- /package/esm/typings/src/{conversion/utils/parseNumber.test.d.ts → commands/BLOCK/blockCommand.test.d.ts} +0 -0
- /package/esm/typings/src/{llm-providers/mocked/fakeTextToExpectations.test.d.ts → commands/EXPECT/expectCommand.test.d.ts} +0 -0
- /package/esm/typings/src/{llm-providers/mocked/faked-completion.test.d.ts → commands/JOKER/jokerCommand.test.d.ts} +0 -0
- /package/esm/typings/src/{utils/markdown-json/countMarkdownStructureDeepness.test.d.ts → commands/KNOWLEDGE/knowledgeCommand.test.d.ts} +0 -0
- /package/esm/typings/src/{utils/markdown-json/markdownToMarkdownStructure.test.d.ts → commands/MODEL/modelCommand.test.d.ts} +0 -0
- /package/{umd/typings/src/conversion/utils/parseNumber.test.d.ts → esm/typings/src/commands/PARAMETER/parameterCommand.test.d.ts} +0 -0
- /package/{umd/typings/src/llm-providers/mocked/fakeTextToExpectations.test.d.ts → esm/typings/src/commands/PERSONA/personaCommand.test.d.ts} +0 -0
- /package/{umd/typings/src/llm-providers/mocked/faked-completion.test.d.ts → esm/typings/src/commands/POSTPROCESS/postprocessCommand.test.d.ts} +0 -0
- /package/{umd/typings/src/utils/markdown-json/countMarkdownStructureDeepness.test.d.ts → esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommand.test.d.ts} +0 -0
- /package/{umd/typings/src/utils/markdown-json/markdownToMarkdownStructure.test.d.ts → esm/typings/src/commands/URL/urlCommand.test.d.ts} +0 -0
- /package/esm/typings/src/llm-providers/mocked/{joker.test.d.ts → test/joker.test.d.ts} +0 -0
- /package/esm/typings/src/llm-providers/mocked/{mocked-completion.test.d.ts → test/mocked-completion.test.d.ts} +0 -0
- /package/umd/typings/src/llm-providers/mocked/{joker.test.d.ts → test/joker.test.d.ts} +0 -0
- /package/umd/typings/src/llm-providers/mocked/{mocked-completion.test.d.ts → test/mocked-completion.test.d.ts} +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import type { PipelineStringToJsonOptions } from '../../conversion/pipelineStringToJson';
|
|
1
2
|
import type { string_folder_path } from '../../types/typeAliases';
|
|
2
3
|
import type { PipelineCollection } from '../PipelineCollection';
|
|
3
4
|
/**
|
|
4
5
|
* Options for `createCollectionFromDirectory` function
|
|
5
6
|
*/
|
|
6
|
-
type CreatePipelineCollectionFromDirectoryOptions = {
|
|
7
|
+
type CreatePipelineCollectionFromDirectoryOptions = PipelineStringToJsonOptions & {
|
|
7
8
|
/**
|
|
8
9
|
* If true, the directory is searched recursively for promptbooks
|
|
9
10
|
*
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { BlockType } from './BlockTypes';
|
|
2
|
+
/**
|
|
3
|
+
* Parsed BLOCK command
|
|
4
|
+
*
|
|
5
|
+
* @see ./blockCommandParser.ts for more details
|
|
6
|
+
* @private within the commands folder
|
|
7
|
+
*/
|
|
8
|
+
export type BlockCommand = {
|
|
9
|
+
readonly type: 'BLOCK';
|
|
10
|
+
readonly blockType: BlockType;
|
|
11
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TupleToUnion } from 'type-fest';
|
|
2
|
+
/**
|
|
3
|
+
* Block type describes the way how the block is blockd
|
|
4
|
+
*
|
|
5
|
+
* @see https://github.com/webgptorg/promptbook#block-type
|
|
6
|
+
*/
|
|
7
|
+
export type BlockType = TupleToUnion<typeof BlockTypes>;
|
|
8
|
+
/**
|
|
9
|
+
* Block type describes the way how the block is blockd
|
|
10
|
+
*
|
|
11
|
+
* @see https://github.com/webgptorg/promptbook#block-type
|
|
12
|
+
*/
|
|
13
|
+
export declare const BlockTypes: readonly ["PROMPT_TEMPLATE", "SIMPLE_TEMPLATE", "SCRIPT", "PROMPT_DIALOG", "SAMPLE", "KNOWLEDGE", "INSTRUMENT", "ACTION"];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { BlockCommand } from './BlockCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the block command
|
|
5
|
+
*
|
|
6
|
+
* @see ./BLOCK-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const blockCommandParser: CommandParser<BlockCommand>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ExpectationAmount } from '../../types/PipelineJson/Expectations';
|
|
2
|
+
import type { ExpectationUnit } from '../../types/PipelineJson/Expectations';
|
|
3
|
+
/**
|
|
4
|
+
* Expect amount command describes the desired output of the prompt template (after post-processing)
|
|
5
|
+
* It can set limits for the maximum/minimum length of the output, measured in characters, words, sentences, paragraphs,...
|
|
6
|
+
*
|
|
7
|
+
* Note: LLMs work with tokens, not characters, but in Promptbooks we want to use some human-recognisable and cross-model interoperable units.
|
|
8
|
+
*/
|
|
9
|
+
export type ExpectAmountCommand = {
|
|
10
|
+
readonly type: 'EXPECT_AMOUNT';
|
|
11
|
+
readonly sign: 'EXACTLY' | 'MINIMUM' | 'MAXIMUM';
|
|
12
|
+
readonly unit: ExpectationUnit;
|
|
13
|
+
readonly amount: ExpectationAmount;
|
|
14
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ExpectAmountCommand } from "./ExpectAmountCommand";
|
|
2
|
+
import type { ExpectFormatCommand } from "./ExpectFormatCommand";
|
|
3
|
+
/**
|
|
4
|
+
* Parsed EXPECT command
|
|
5
|
+
*
|
|
6
|
+
* @see ./expectCommandParser.ts for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export type ExpectCommand = ExpectAmountCommand | ExpectFormatCommand;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { ExpectCommand } from './ExpectCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the expect command
|
|
5
|
+
*
|
|
6
|
+
* @see ./EXPECT-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const expectCommandParser: CommandParser<ExpectCommand>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { string_name } from '../../types/typeAliases';
|
|
2
|
+
/**
|
|
3
|
+
* Parsed JOKER command
|
|
4
|
+
*
|
|
5
|
+
* @see ./jokerCommandParser.ts for more details
|
|
6
|
+
* @private within the commands folder
|
|
7
|
+
*/
|
|
8
|
+
export type JokerCommand = {
|
|
9
|
+
readonly type: 'JOKER';
|
|
10
|
+
readonly parameterName: string_name;
|
|
11
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { JokerCommand } from './JokerCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the joker command
|
|
5
|
+
*
|
|
6
|
+
* @see ./JOKER-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const jokerCommandParser: CommandParser<JokerCommand>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { string_file_relative_path } from '../../types/typeAliases';
|
|
2
|
+
import type { string_url } from '../../types/typeAliases';
|
|
3
|
+
/**
|
|
4
|
+
* Parsed KNOWLEDGE command
|
|
5
|
+
*
|
|
6
|
+
* @see ./knowledgeCommandParser.ts for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export type KnowledgeCommand = {
|
|
10
|
+
readonly type: 'KNOWLEDGE';
|
|
11
|
+
readonly source: string_url | string_file_relative_path;
|
|
12
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { KnowledgeCommand } from './KnowledgeCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the knowledge command
|
|
5
|
+
*
|
|
6
|
+
* @see ./KNOWLEDGE-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const knowledgeCommandParser: CommandParser<KnowledgeCommand>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ModelRequirements } from '../../types/ModelRequirements';
|
|
2
|
+
import type { TODO } from '../../types/typeAliases';
|
|
3
|
+
/**
|
|
4
|
+
* Parsed MODEL command
|
|
5
|
+
*
|
|
6
|
+
* @see ./modelCommandParser.ts for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export type ModelCommand = {
|
|
10
|
+
readonly type: 'MODEL';
|
|
11
|
+
readonly key: keyof ModelRequirements;
|
|
12
|
+
readonly value: TODO;
|
|
13
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { ModelCommand } from './ModelCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the model command
|
|
5
|
+
*
|
|
6
|
+
* @see ./MODEL-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const modelCommandParser: CommandParser<ModelCommand>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { string_markdown_text } from '../../types/typeAliases';
|
|
2
|
+
import type { string_name } from '../../types/typeAliases';
|
|
3
|
+
/**
|
|
4
|
+
* Parsed PARAMETER command
|
|
5
|
+
*
|
|
6
|
+
* @see ./parameterCommandParser.ts for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export type ParameterCommand = {
|
|
10
|
+
readonly type: 'PARAMETER';
|
|
11
|
+
readonly isInput: boolean;
|
|
12
|
+
readonly isOutput: boolean;
|
|
13
|
+
readonly parameterName: string_name;
|
|
14
|
+
readonly parameterDescription: string_markdown_text | null;
|
|
15
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { ParameterCommand } from './ParameterCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the parameter command
|
|
5
|
+
*
|
|
6
|
+
* @see ./PARAMETER-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const parameterCommandParser: CommandParser<ParameterCommand>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parsed PERSONA command
|
|
3
|
+
*
|
|
4
|
+
* @see ./personaCommandParser.ts for more details
|
|
5
|
+
* @private within the commands folder
|
|
6
|
+
*/
|
|
7
|
+
export type PersonaCommand = {
|
|
8
|
+
readonly type: 'PERSONA';
|
|
9
|
+
personaName: string;
|
|
10
|
+
personaDescription: string | null;
|
|
11
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { PersonaCommand } from './PersonaCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the persona command
|
|
5
|
+
*
|
|
6
|
+
* @see ./PERSONA-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const personaCommandParser: CommandParser<PersonaCommand>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { string_name } from '../../types/typeAliases';
|
|
2
|
+
/**
|
|
3
|
+
* Parsed POSTPROCESS command
|
|
4
|
+
*
|
|
5
|
+
* @see ./postprocessCommandParser.ts for more details
|
|
6
|
+
* @private within the commands folder
|
|
7
|
+
*/
|
|
8
|
+
export type PostprocessCommand = {
|
|
9
|
+
readonly type: 'POSTPROCESS';
|
|
10
|
+
readonly functionName: string_name;
|
|
11
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { PostprocessCommand } from './PostprocessCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the postprocess command
|
|
5
|
+
*
|
|
6
|
+
* @see ./POSTPROCESS-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const postprocessCommandParser: CommandParser<PostprocessCommand>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { string_semantic_version } from '../../types/typeAliases';
|
|
2
|
+
/**
|
|
3
|
+
* Parsed PROMPTBOOK_VERSION command
|
|
4
|
+
*
|
|
5
|
+
* @see ./promptbookVersionCommandParser.ts for more details
|
|
6
|
+
* @private within the commands folder
|
|
7
|
+
*/
|
|
8
|
+
export type PromptbookVersionCommand = {
|
|
9
|
+
readonly type: 'PROMPTBOOK_VERSION';
|
|
10
|
+
readonly promptbookVersion: string_semantic_version;
|
|
11
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { PromptbookVersionCommand } from './PromptbookVersionCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the PROMPTBOOK_VERSION command
|
|
5
|
+
*
|
|
6
|
+
* @see ./PROMPTBOOK_VERSION-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const promptbookVersionCommandParser: CommandParser<PromptbookVersionCommand>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { UrlCommand } from './UrlCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the url command
|
|
5
|
+
*
|
|
6
|
+
* @see ./URL-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const urlCommandParser: CommandParser<UrlCommand>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { ActionCommand } from './ActionCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the action command
|
|
5
|
+
*
|
|
6
|
+
* @see ./ACTION-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const actionCommandParser: CommandParser<ActionCommand>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { InstrumentCommand } from './InstrumentCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the instrument command
|
|
5
|
+
*
|
|
6
|
+
* @see ./INSTRUMENT-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const instrumentCommandParser: CommandParser<InstrumentCommand>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { CommandParser } from '../_common/types/CommandParser';
|
|
2
|
+
import type { BoilerplateCommand } from './BoilerplateCommand';
|
|
3
|
+
/**
|
|
4
|
+
* Parses the boilerplate command
|
|
5
|
+
*
|
|
6
|
+
* @see ./BOILERPLATE-README.md for more details
|
|
7
|
+
* @private within the commands folder
|
|
8
|
+
*/
|
|
9
|
+
export declare const boilerplateCommandParser: CommandParser<BoilerplateCommand>;
|
|
10
|
+
/**
|
|
11
|
+
* TODO: [💐] Implement BOILERPLATE command into `pipelineStringToJsonSync` function
|
|
12
|
+
*/
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { string_markdown_text } from '../../types/typeAliases';
|
|
2
|
+
import type { Command } from './types/Command';
|
|
3
|
+
import type { CommandUsagePlace } from './types/CommandUsagePlaces';
|
|
4
|
+
/**
|
|
5
|
+
* Parses one line of ul/ol to command
|
|
6
|
+
*
|
|
7
|
+
* @returns parsed command object
|
|
8
|
+
* @throws {ParsingError} if the command is invalid
|
|
9
|
+
*
|
|
10
|
+
* @private within the pipelineStringToJson
|
|
11
|
+
*/
|
|
12
|
+
export declare function parseCommand(raw: string_markdown_text, usagePlace: CommandUsagePlace): Command;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { COMMANDS } from '../../index';
|
|
2
|
+
/**
|
|
3
|
+
* Command is one piece of the prompt template which adds some logic to the prompt template or the whole pipeline.
|
|
4
|
+
* It is parsed from the markdown from ul/ol items - one command per one item.
|
|
5
|
+
*/
|
|
6
|
+
export type Command = ReturnType<typeof COMMANDS[number]['parse']>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { string_markdown_text } from '../../../types/typeAliases';
|
|
2
|
+
import type { string_name } from '../../../types/typeAliases';
|
|
3
|
+
import type { string_SCREAMING_CASE } from '../../../utils/normalization/normalizeTo_SCREAMING_CASE';
|
|
4
|
+
import type { CommandUsagePlace } from './CommandUsagePlaces';
|
|
5
|
+
export type CommandParser<TCommand extends {
|
|
6
|
+
type: string_name & string_SCREAMING_CASE;
|
|
7
|
+
}> = {
|
|
8
|
+
name: string_name & string_SCREAMING_CASE;
|
|
9
|
+
aliasNames?: Array<string_name & string_SCREAMING_CASE>;
|
|
10
|
+
deprecatedNames?: Array<string_name & string_SCREAMING_CASE>;
|
|
11
|
+
usagePlaces: Array<CommandUsagePlace>;
|
|
12
|
+
description: string_markdown_text;
|
|
13
|
+
discussionUrl: `https://github.com/webgptorg/promptbook/discussions/${number | '@@'}`;
|
|
14
|
+
examples: Array<string_markdown_text>;
|
|
15
|
+
/**
|
|
16
|
+
* @throws {ParsingError} if the parsing fails
|
|
17
|
+
*/
|
|
18
|
+
parse(input: CommandParserInput): TCommand;
|
|
19
|
+
};
|
|
20
|
+
export type CommandParserInput = {
|
|
21
|
+
usagePlace: CommandUsagePlace;
|
|
22
|
+
raw: string_markdown_text;
|
|
23
|
+
rawArgs: string_markdown_text;
|
|
24
|
+
normalized: string_name & string_SCREAMING_CASE;
|
|
25
|
+
args: Array<string_name & string_SCREAMING_CASE>;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* TODO: !!!! Annotate
|
|
29
|
+
* TODO: [🧠] Maybe put flag if it is for whole `.ptbk.md` file of just one section
|
|
30
|
+
* TODO: [🍧] CommandParser should have applyToPipelineJson method
|
|
31
|
+
* which will apply parsed command to the pipeline JSON
|
|
32
|
+
* it will be called from `pipelineStringToJsonSync`
|
|
33
|
+
* and replace hardcoded switch statement and [💐]
|
|
34
|
+
* and throw ParsingError
|
|
35
|
+
*
|
|
36
|
+
*/
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { TupleToUnion } from 'type-fest';
|
|
2
|
+
/**
|
|
3
|
+
* Where the command can be used
|
|
4
|
+
*/
|
|
5
|
+
export type CommandUsagePlace = TupleToUnion<typeof CommandUsagePlaces>;
|
|
6
|
+
/**
|
|
7
|
+
* Where the command can be used
|
|
8
|
+
*/
|
|
9
|
+
export declare const CommandUsagePlaces: readonly ["PIPELINE_HEAD", "PIPELINE_TEMPLATE"];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* All available command parsers
|
|
3
|
+
*/
|
|
4
|
+
export declare const COMMANDS: readonly [import("./_common/types/CommandParser").CommandParser<import("./BLOCK/BlockCommand").BlockCommand>, import("./_common/types/CommandParser").CommandParser<import("./EXPECT/ExpectCommand").ExpectCommand>, import("./_common/types/CommandParser").CommandParser<import("./JOKER/JokerCommand").JokerCommand>, import("./_common/types/CommandParser").CommandParser<import("./MODEL/ModelCommand").ModelCommand>, import("./_common/types/CommandParser").CommandParser<import("./PARAMETER/ParameterCommand").ParameterCommand>, import("./_common/types/CommandParser").CommandParser<import("./POSTPROCESS/PostprocessCommand").PostprocessCommand>, import("./_common/types/CommandParser").CommandParser<import("./PROMPTBOOK_VERSION/PromptbookVersionCommand").PromptbookVersionCommand>, import("./_common/types/CommandParser").CommandParser<import("./URL/UrlCommand").UrlCommand>, import("./_common/types/CommandParser").CommandParser<import("./KNOWLEDGE/KnowledgeCommand").KnowledgeCommand>, import("./_common/types/CommandParser").CommandParser<import("./X_ACTION/ActionCommand").ActionCommand>, import("./_common/types/CommandParser").CommandParser<import("./X_INSTRUMENT/InstrumentCommand").InstrumentCommand>, import("./_common/types/CommandParser").CommandParser<import("./PERSONA/PersonaCommand").PersonaCommand>, import("./_common/types/CommandParser").CommandParser<import("./_BOILERPLATE/BoilerplateCommand").BoilerplateCommand>];
|
|
@@ -10,3 +10,7 @@ export declare const CHARACTER_LOOP_LIMIT = 100000;
|
|
|
10
10
|
* The name of the builded pipeline collection made by CLI `ptbk make` and for lookup in `createCollectionFromDirectory`
|
|
11
11
|
*/
|
|
12
12
|
export declare const PIPELINE_COLLECTION_BASE_FILENAME = "index";
|
|
13
|
+
/**
|
|
14
|
+
* The names of the parameters that are reserved for special purposes
|
|
15
|
+
*/
|
|
16
|
+
export declare const RESERVED_PARAMETER_NAMES: string[];
|
|
@@ -8,5 +8,7 @@ import type { PipelineString } from '../types/PipelineString';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare function pipelineJsonToString(pipelineJson: PipelineJson): PipelineString;
|
|
10
10
|
/**
|
|
11
|
+
* TODO: !!!!! Implement new features and commands into `promptTemplateParameterJsonToString`
|
|
12
|
+
* TODO: [🧠] Is there a way to auto-detect missing features in pipelineJsonToString
|
|
11
13
|
* TODO: Escape all
|
|
12
14
|
*/
|
|
@@ -4,7 +4,7 @@ import type { PipelineString } from '../types/PipelineString';
|
|
|
4
4
|
/**
|
|
5
5
|
* Options for pipelineStringToJson
|
|
6
6
|
*/
|
|
7
|
-
type PipelineStringToJsonOptions = {
|
|
7
|
+
export type PipelineStringToJsonOptions = {
|
|
8
8
|
/**
|
|
9
9
|
* Tools for processing required for knowledge processing *(not for actual execution)*
|
|
10
10
|
*/
|
|
@@ -20,13 +20,12 @@ type PipelineStringToJsonOptions = {
|
|
|
20
20
|
* @param pipelineString {Promptbook} in string markdown format (.ptbk.md)
|
|
21
21
|
* @param options - Options and tools for the compilation
|
|
22
22
|
* @returns {Promptbook} compiled in JSON format (.ptbk.json)
|
|
23
|
-
* @throws {
|
|
23
|
+
* @throws {ParsingError} if the promptbook string is not valid
|
|
24
24
|
*
|
|
25
25
|
* Note: This function does not validate logic of the pipeline only the syntax
|
|
26
26
|
* Note: This function acts as compilation process
|
|
27
27
|
*/
|
|
28
28
|
export declare function pipelineStringToJson(pipelineString: PipelineString, options?: PipelineStringToJsonOptions): Promise<PipelineJson>;
|
|
29
|
-
export {};
|
|
30
29
|
/**
|
|
31
30
|
* TODO: [🏏] Leverage the batch API and build queues @see https://platform.openai.com/docs/guides/batch
|
|
32
31
|
*/
|
|
@@ -10,14 +10,16 @@ import type { PipelineString } from '../types/PipelineString';
|
|
|
10
10
|
* @param pipelineString {Promptbook} in string markdown format (.ptbk.md)
|
|
11
11
|
* @param options - Options and tools for the compilation
|
|
12
12
|
* @returns {Promptbook} compiled in JSON format (.ptbk.json)
|
|
13
|
-
* @throws {
|
|
13
|
+
* @throws {ParsingError} if the promptbook string is not valid
|
|
14
14
|
*
|
|
15
15
|
* Note: This function does not validate logic of the pipeline only the syntax
|
|
16
16
|
* Note: This function acts as compilation process
|
|
17
17
|
*/
|
|
18
18
|
export declare function pipelineStringToJsonSync(pipelineString: PipelineString): PipelineJson;
|
|
19
19
|
/**
|
|
20
|
-
* TODO:
|
|
20
|
+
* TODO: !!!! Warn if used only sync version
|
|
21
|
+
* TODO: [🚞] Report here line/column of error
|
|
21
22
|
* TODO: Use spaceTrim more effectively
|
|
22
23
|
* TODO: [🧠] Parameter flags - isInput, isOutput, isInternal
|
|
24
|
+
* TODO: [🥞] Not optimal parsing because `splitMarkdownIntoSections` is executed twice with same string, once through `flattenMarkdown` and second directly here
|
|
23
25
|
*/
|
|
@@ -5,9 +5,9 @@ import type { string_name } from '../../types/typeAliases';
|
|
|
5
5
|
*
|
|
6
6
|
* @param promptTemplate the template with used parameters
|
|
7
7
|
* @returns the set of parameter names
|
|
8
|
-
* @throws {
|
|
8
|
+
* @throws {ParsingError} if the script is invalid
|
|
9
9
|
*/
|
|
10
|
-
export declare function extractParametersFromPromptTemplate(promptTemplate: Pick<PromptTemplateJson, 'title' | 'description' | '
|
|
10
|
+
export declare function extractParametersFromPromptTemplate(promptTemplate: Pick<PromptTemplateJson, 'title' | 'description' | 'blockType' | 'content'>): Set<string_name>;
|
|
11
11
|
/**
|
|
12
12
|
* TODO: [🔣] If script require contentLanguage
|
|
13
13
|
*/
|
|
@@ -5,7 +5,7 @@ import type { string_javascript_name } from '../../types/typeAliases';
|
|
|
5
5
|
*
|
|
6
6
|
* @param script from which to extract the variables
|
|
7
7
|
* @returns the list of variable names
|
|
8
|
-
* @throws {
|
|
8
|
+
* @throws {ParsingError} if the script is invalid
|
|
9
9
|
*/
|
|
10
10
|
export declare function extractVariables(script: string_javascript): Set<string_javascript_name>;
|
|
11
11
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* This error indicates that the promptbook in a markdown format cannot be parsed into a valid promptbook object
|
|
3
3
|
*/
|
|
4
|
-
export declare class
|
|
5
|
-
readonly name = "
|
|
4
|
+
export declare class ParsingError extends Error {
|
|
5
|
+
readonly name = "ParsingError";
|
|
6
6
|
constructor(message: string);
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* This error indicates errors during the execution of the pipeline
|
|
3
3
|
*/
|
|
4
|
-
export declare class
|
|
5
|
-
readonly name = "
|
|
4
|
+
export declare class PipelineExecutionError extends Error {
|
|
5
|
+
readonly name = "PipelineExecutionError";
|
|
6
6
|
constructor(message: string);
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* This error occurs when some expectation is not met in the execution of the pipeline
|
|
3
3
|
*
|
|
4
|
-
* @private Always catched and rethrown as `
|
|
5
|
-
* Note: This is a kindof subtype of
|
|
4
|
+
* @private Always catched and rethrown as `PipelineExecutionError`
|
|
5
|
+
* Note: This is a kindof subtype of PipelineExecutionError
|
|
6
6
|
*/
|
|
7
7
|
export declare class ExpectError extends Error {
|
|
8
8
|
readonly name = "ExpectError";
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Arrayable } from '../types/Arrayable';
|
|
1
2
|
import type { LlmExecutionTools } from './LlmExecutionTools';
|
|
2
3
|
import type { ScriptExecutionTools } from './ScriptExecutionTools';
|
|
3
4
|
import type { UserInterfaceTools } from './UserInterfaceTools';
|
|
@@ -10,10 +11,10 @@ export type ExecutionTools = {
|
|
|
10
11
|
/**
|
|
11
12
|
* Tools for executing prompts to large language models like GPT-4
|
|
12
13
|
*
|
|
13
|
-
* Tip: Combine multiple LLM execution tools
|
|
14
|
+
* Tip: Combine multiple LLM execution tools - use array of LlmExecutionTools instead of single LlmExecutionTools
|
|
14
15
|
* @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#llm-execution-tools
|
|
15
16
|
*/
|
|
16
|
-
llm
|
|
17
|
+
llm?: Arrayable<LlmExecutionTools>;
|
|
17
18
|
/**
|
|
18
19
|
* Tools for executing scripts
|
|
19
20
|
*
|
|
@@ -21,7 +22,7 @@ export type ExecutionTools = {
|
|
|
21
22
|
* If none of them supports the script, an error is thrown
|
|
22
23
|
* @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#script-execution-tools
|
|
23
24
|
*/
|
|
24
|
-
script
|
|
25
|
+
script?: Arrayable<ScriptExecutionTools>;
|
|
25
26
|
/**
|
|
26
27
|
* Tools for interacting with the user
|
|
27
28
|
*
|