@promptbook/ollama 0.94.0-1
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 +483 -0
- package/esm/index.es.js +741 -0
- package/esm/index.es.js.map +1 -0
- package/esm/typings/books/index.d.ts +131 -0
- package/esm/typings/servers.d.ts +40 -0
- package/esm/typings/src/_packages/anthropic-claude.index.d.ts +16 -0
- package/esm/typings/src/_packages/azure-openai.index.d.ts +10 -0
- package/esm/typings/src/_packages/browser.index.d.ts +12 -0
- package/esm/typings/src/_packages/cli.index.d.ts +60 -0
- package/esm/typings/src/_packages/core.index.d.ts +296 -0
- package/esm/typings/src/_packages/deepseek.index.d.ts +10 -0
- package/esm/typings/src/_packages/documents.index.d.ts +8 -0
- package/esm/typings/src/_packages/editable.index.d.ts +90 -0
- package/esm/typings/src/_packages/fake-llm.index.d.ts +6 -0
- package/esm/typings/src/_packages/google.index.d.ts +12 -0
- package/esm/typings/src/_packages/javascript.index.d.ts +10 -0
- package/esm/typings/src/_packages/legacy-documents.index.d.ts +8 -0
- package/esm/typings/src/_packages/markdown-utils.index.d.ts +48 -0
- package/esm/typings/src/_packages/markitdown.index.d.ts +8 -0
- package/esm/typings/src/_packages/node.index.d.ts +24 -0
- package/esm/typings/src/_packages/ollama.index.d.ts +8 -0
- package/esm/typings/src/_packages/openai.index.d.ts +20 -0
- package/esm/typings/src/_packages/pdf.index.d.ts +14 -0
- package/esm/typings/src/_packages/remote-client.index.d.ts +16 -0
- package/esm/typings/src/_packages/remote-server.index.d.ts +12 -0
- package/esm/typings/src/_packages/templates.index.d.ts +4 -0
- package/esm/typings/src/_packages/types.index.d.ts +598 -0
- package/esm/typings/src/_packages/utils.index.d.ts +170 -0
- package/esm/typings/src/_packages/vercel.index.d.ts +6 -0
- package/esm/typings/src/_packages/website-crawler.index.d.ts +8 -0
- package/esm/typings/src/_packages/wizzard.index.d.ts +60 -0
- package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/about.d.ts +14 -0
- package/esm/typings/src/cli/cli-commands/common/handleActionErrors.d.ts +11 -0
- package/esm/typings/src/cli/cli-commands/hello.d.ts +14 -0
- package/esm/typings/src/cli/cli-commands/list-models.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/login.d.ts +14 -0
- package/esm/typings/src/cli/cli-commands/make.d.ts +16 -0
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +15 -0
- package/esm/typings/src/cli/cli-commands/run.d.ts +17 -0
- package/esm/typings/src/cli/cli-commands/runInteractiveChatbot.d.ts +32 -0
- package/esm/typings/src/cli/cli-commands/start-server.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +16 -0
- package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +7 -0
- package/esm/typings/src/cli/common/$provideLlmToolsForCli.d.ts +28 -0
- package/esm/typings/src/cli/main.d.ts +16 -0
- package/esm/typings/src/cli/promptbookCli.d.ts +13 -0
- package/esm/typings/src/cli/test/ptbk.d.ts +5 -0
- package/esm/typings/src/cli/test/ptbk.test.d.ts +1 -0
- package/esm/typings/src/collection/PipelineCollection.d.ts +25 -0
- package/esm/typings/src/collection/SimplePipelineCollection.d.ts +37 -0
- package/esm/typings/src/collection/collectionToJson.d.ts +13 -0
- package/esm/typings/src/collection/collectionToJson.test.d.ts +7 -0
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +65 -0
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.test.d.ts +1 -0
- package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +13 -0
- package/esm/typings/src/collection/constructors/createCollectionFromJson.test.d.ts +1 -0
- package/esm/typings/src/collection/constructors/createCollectionFromPromise.d.ts +23 -0
- package/esm/typings/src/collection/constructors/createCollectionFromPromise.test.d.ts +1 -0
- package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +29 -0
- package/esm/typings/src/collection/constructors/createSubcollection.d.ts +13 -0
- package/esm/typings/src/commands/BOOK_VERSION/BookVersionCommand.d.ts +11 -0
- package/esm/typings/src/commands/BOOK_VERSION/bookVersionCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/BOOK_VERSION/bookVersionCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/EXPECT/ExpectCommand.d.ts +17 -0
- package/esm/typings/src/commands/EXPECT/expectCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +11 -0
- package/esm/typings/src/commands/FOREACH/ForeachCommand.d.ts +10 -0
- package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +27 -0
- package/esm/typings/src/commands/FOREACH/foreachCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/FORMAT/FormatCommand.d.ts +9 -0
- package/esm/typings/src/commands/FORMAT/formatCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/FORMFACTOR/FormfactorCommand.d.ts +11 -0
- package/esm/typings/src/commands/FORMFACTOR/formfactorCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/FORMFACTOR/formfactorCommandParser.d.ts +11 -0
- package/esm/typings/src/commands/JOKER/JokerCommand.d.ts +11 -0
- package/esm/typings/src/commands/JOKER/jokerCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +11 -0
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/KNOWLEDGE/utils/knowledgeSourceContentToName.d.ts +11 -0
- package/esm/typings/src/commands/KNOWLEDGE/utils/knowledgeSourceContentToName.test.d.ts +4 -0
- package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +14 -0
- package/esm/typings/src/commands/MODEL/modelCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +10 -0
- package/esm/typings/src/commands/PARAMETER/ParameterCommand.d.ts +15 -0
- package/esm/typings/src/commands/PARAMETER/parameterCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +13 -0
- package/esm/typings/src/commands/PERSONA/personaCommand.test.d.ts +1 -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/postprocessCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/SECTION/SectionCommand.d.ts +11 -0
- package/esm/typings/src/commands/SECTION/sectionCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/SECTION/sectionCommandParser.d.ts +20 -0
- package/esm/typings/src/commands/URL/UrlCommand.d.ts +10 -0
- package/esm/typings/src/commands/URL/urlCommand.test.d.ts +1 -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 +12 -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 +12 -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 +11 -0
- package/esm/typings/src/commands/_common/getParserForCommand.d.ts +11 -0
- package/esm/typings/src/commands/_common/getParserForCommand.test.d.ts +1 -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/stringifyCommand.d.ts +12 -0
- package/esm/typings/src/commands/_common/stringifyCommand.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 +205 -0
- package/esm/typings/src/commands/_common/types/CommandType.d.ts +17 -0
- package/esm/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +13 -0
- package/esm/typings/src/commands/index.d.ts +9 -0
- package/esm/typings/src/config.d.ts +313 -0
- package/esm/typings/src/config.test.d.ts +4 -0
- package/esm/typings/src/constants.d.ts +76 -0
- package/esm/typings/src/conversion/archive/loadArchive.d.ts +16 -0
- package/esm/typings/src/conversion/archive/saveArchive.d.ts +18 -0
- package/esm/typings/src/conversion/compilePipeline.d.ts +25 -0
- package/esm/typings/src/conversion/compilePipeline.test.d.ts +1 -0
- package/esm/typings/src/conversion/compilePipelineOnRemoteServer.d.ts +21 -0
- package/esm/typings/src/conversion/parsePipeline.d.ts +30 -0
- package/esm/typings/src/conversion/parsePipeline.test.d.ts +1 -0
- package/esm/typings/src/conversion/pipelineJsonToString.d.ts +18 -0
- package/esm/typings/src/conversion/prettify/PrettifyOptions.d.ts +13 -0
- package/esm/typings/src/conversion/prettify/prettifyPipelineString.d.ts +12 -0
- package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +30 -0
- package/esm/typings/src/conversion/utils/extractParameterNamesFromTask.d.ts +15 -0
- package/esm/typings/src/conversion/utils/extractParameterNamesFromTask.test.d.ts +1 -0
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +23 -0
- package/esm/typings/src/conversion/validation/pipelineStringToJson-parseErrors.test.d.ts +4 -0
- package/esm/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +4 -0
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +42 -0
- package/esm/typings/src/conversion/validation/validatePipeline.test.d.ts +4 -0
- package/esm/typings/src/dialogs/callback/CallbackInterfaceTools.d.ts +17 -0
- package/esm/typings/src/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +14 -0
- package/esm/typings/src/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +22 -0
- package/esm/typings/src/dialogs/user-interface-execution-tools.test.d.ts +1 -0
- package/esm/typings/src/errors/0-BoilerplateError.d.ts +12 -0
- package/esm/typings/src/errors/0-index.d.ts +94 -0
- package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
- package/esm/typings/src/errors/AuthenticationError.d.ts +9 -0
- package/esm/typings/src/errors/CollectionError.d.ts +9 -0
- package/esm/typings/src/errors/EnvironmentMismatchError.d.ts +9 -0
- package/esm/typings/src/errors/ExpectError.d.ts +12 -0
- package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
- package/esm/typings/src/errors/LimitReachedError.d.ts +9 -0
- package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
- package/esm/typings/src/errors/NotFoundError.d.ts +9 -0
- package/esm/typings/src/errors/NotYetImplementedError.d.ts +9 -0
- package/esm/typings/src/errors/ParseError.d.ts +12 -0
- package/esm/typings/src/errors/PipelineExecutionError.d.ts +14 -0
- package/esm/typings/src/errors/PipelineLogicError.d.ts +9 -0
- package/esm/typings/src/errors/PipelineUrlError.d.ts +9 -0
- package/esm/typings/src/errors/PromptbookFetchError.d.ts +9 -0
- package/esm/typings/src/errors/UnexpectedError.d.ts +9 -0
- package/esm/typings/src/errors/WrappedError.d.ts +10 -0
- package/esm/typings/src/errors/assertsError.d.ts +11 -0
- package/esm/typings/src/errors/utils/ErrorJson.d.ts +25 -0
- package/esm/typings/src/errors/utils/deserializeError.d.ts +7 -0
- package/esm/typings/src/errors/utils/deserializeError.test.d.ts +1 -0
- package/esm/typings/src/errors/utils/getErrorReportUrl.d.ts +6 -0
- package/esm/typings/src/errors/utils/serializeError.d.ts +7 -0
- package/esm/typings/src/errors/utils/serializeError.test.d.ts +1 -0
- package/esm/typings/src/executables/$provideExecutablesForNode.d.ts +12 -0
- package/esm/typings/src/executables/apps/locateLibreoffice.d.ts +12 -0
- package/esm/typings/src/executables/apps/locateLibreoffice.test.d.ts +1 -0
- package/esm/typings/src/executables/apps/locatePandoc.d.ts +12 -0
- package/esm/typings/src/executables/apps/locatePandoc.test.d.ts +1 -0
- package/esm/typings/src/executables/locateApp.d.ts +33 -0
- package/esm/typings/src/executables/locateApp.test.d.ts +1 -0
- package/esm/typings/src/executables/platforms/locateAppOnLinux.d.ts +13 -0
- package/esm/typings/src/executables/platforms/locateAppOnMacOs.d.ts +13 -0
- package/esm/typings/src/executables/platforms/locateAppOnWindows.d.ts +13 -0
- package/esm/typings/src/execution/AbstractTaskResult.d.ts +25 -0
- package/esm/typings/src/execution/AvailableModel.d.ts +38 -0
- package/esm/typings/src/execution/CommonToolsOptions.d.ts +28 -0
- package/esm/typings/src/execution/EmbeddingVector.d.ts +8 -0
- package/esm/typings/src/execution/Executables.d.ts +18 -0
- package/esm/typings/src/execution/ExecutionTask.d.ts +119 -0
- package/esm/typings/src/execution/ExecutionTools.d.ts +69 -0
- package/esm/typings/src/execution/FilesystemTools.d.ts +9 -0
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +61 -0
- package/esm/typings/src/execution/LlmExecutionToolsConstructor.d.ts +11 -0
- package/esm/typings/src/execution/PipelineExecutor.d.ts +16 -0
- package/esm/typings/src/execution/PipelineExecutorResult.d.ts +39 -0
- package/esm/typings/src/execution/PromptResult.d.ts +101 -0
- package/esm/typings/src/execution/PromptbookFetch.d.ts +12 -0
- package/esm/typings/src/execution/PromptbookFetch.test-type.d.ts +5 -0
- package/esm/typings/src/execution/ScriptExecutionTools.d.ts +39 -0
- package/esm/typings/src/execution/UncertainNumber.d.ts +19 -0
- package/esm/typings/src/execution/Usage.d.ts +33 -0
- package/esm/typings/src/execution/UserInterfaceTools.d.ts +46 -0
- package/esm/typings/src/execution/assertsTaskSuccessful.d.ts +14 -0
- package/esm/typings/src/execution/createPipelineExecutor/$OngoingTaskResult.d.ts +48 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +46 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +10 -0
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +48 -0
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +51 -0
- package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +27 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +70 -0
- package/esm/typings/src/execution/createPipelineExecutor/computeCosineSimilarity.d.ts +13 -0
- package/esm/typings/src/execution/createPipelineExecutor/filterJustOutputParameters.d.ts +35 -0
- package/esm/typings/src/execution/createPipelineExecutor/getContextForTask.d.ts +14 -0
- package/esm/typings/src/execution/createPipelineExecutor/getExamplesForTask.d.ts +10 -0
- package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTask.d.ts +42 -0
- package/esm/typings/src/execution/createPipelineExecutor/getReservedParametersForTask.d.ts +48 -0
- package/esm/typings/src/execution/createPipelineExecutor/knowledgePiecesToString.d.ts +9 -0
- package/esm/typings/src/execution/embeddingVectorToString.d.ts +7 -0
- package/esm/typings/src/execution/execution-report/ExecutionPromptReportJson.d.ts +24 -0
- package/esm/typings/src/execution/execution-report/ExecutionReportJson.d.ts +41 -0
- package/esm/typings/src/execution/execution-report/ExecutionReportString.d.ts +16 -0
- package/esm/typings/src/execution/execution-report/ExecutionReportStringOptions.d.ts +25 -0
- package/esm/typings/src/execution/execution-report/countWorkingDuration.d.ts +7 -0
- package/esm/typings/src/execution/execution-report/countWorkingDuration.test.d.ts +1 -0
- package/esm/typings/src/execution/execution-report/executionReportJsonToString.d.ts +15 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/AutomaticTranslator.d.ts +7 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/DebugAutomaticTranslator.d.ts +11 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/FakeAutomaticTranslator.d.ts +8 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +22 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +7 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +8 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.test.d.ts +1 -0
- package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +12 -0
- package/esm/typings/src/execution/utils/$provideExecutionToolsForNode.d.ts +13 -0
- package/esm/typings/src/execution/utils/addUsage.d.ts +9 -0
- package/esm/typings/src/execution/utils/addUsage.test.d.ts +1 -0
- package/esm/typings/src/execution/utils/checkExpectations.d.ts +29 -0
- package/esm/typings/src/execution/utils/checkExpectations.test.d.ts +1 -0
- package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +10 -0
- package/esm/typings/src/execution/utils/forEachAsync.d.ts +20 -0
- package/esm/typings/src/execution/utils/uncertainNumber.d.ts +10 -0
- package/esm/typings/src/execution/utils/usage-constants.d.ts +147 -0
- package/esm/typings/src/execution/utils/usageToHuman.d.ts +26 -0
- package/esm/typings/src/execution/utils/usageToWorktime.d.ts +20 -0
- package/esm/typings/src/execution/utils/usageToWorktime.test.d.ts +1 -0
- package/esm/typings/src/expectations/drafts/isDomainNameFree.d.ts +10 -0
- package/esm/typings/src/expectations/drafts/isGithubNameFree.d.ts +10 -0
- package/esm/typings/src/formats/_common/FormatParser.d.ts +72 -0
- package/esm/typings/src/formats/_common/FormatSubvalueParser.d.ts +66 -0
- package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
- package/esm/typings/src/formats/csv/CsvFormatParser.d.ts +17 -0
- package/esm/typings/src/formats/csv/CsvSettings.d.ts +13 -0
- package/esm/typings/src/formats/csv/utils/csvParse.d.ts +12 -0
- package/esm/typings/src/formats/csv/utils/isValidCsvString.d.ts +9 -0
- package/esm/typings/src/formats/csv/utils/isValidCsvString.test.d.ts +1 -0
- package/esm/typings/src/formats/index.d.ts +9 -0
- package/esm/typings/src/formats/json/JsonFormatParser.d.ts +19 -0
- package/esm/typings/src/formats/json/utils/isValidJsonString.d.ts +9 -0
- package/esm/typings/src/formats/json/utils/isValidJsonString.test.d.ts +1 -0
- package/esm/typings/src/formats/json/utils/jsonParse.d.ts +8 -0
- package/esm/typings/src/formats/text/TextFormatParser.d.ts +19 -0
- package/esm/typings/src/formats/xml/XmlFormatParser.d.ts +19 -0
- package/esm/typings/src/formats/xml/utils/isValidXmlString.d.ts +9 -0
- package/esm/typings/src/formats/xml/utils/isValidXmlString.test.d.ts +1 -0
- package/esm/typings/src/formfactors/_boilerplate/BoilerplateFormfactorDefinition.d.ts +15 -0
- package/esm/typings/src/formfactors/_common/AbstractFormfactorDefinition.d.ts +49 -0
- package/esm/typings/src/formfactors/_common/FormfactorDefinition.d.ts +10 -0
- package/esm/typings/src/formfactors/_common/string_formfactor_name.d.ts +6 -0
- package/esm/typings/src/formfactors/chatbot/ChatbotFormfactorDefinition.d.ts +45 -0
- package/esm/typings/src/formfactors/completion/CompletionFormfactorDefinition.d.ts +29 -0
- package/esm/typings/src/formfactors/generator/GeneratorFormfactorDefinition.d.ts +25 -0
- package/esm/typings/src/formfactors/generic/GenericFormfactorDefinition.d.ts +14 -0
- package/esm/typings/src/formfactors/image-generator/ImageGeneratorFormfactorDefinition.d.ts +24 -0
- package/esm/typings/src/formfactors/index.d.ts +170 -0
- package/esm/typings/src/formfactors/matcher/MatcherFormfactorDefinition.d.ts +21 -0
- package/esm/typings/src/formfactors/sheets/SheetsFormfactorDefinition.d.ts +26 -0
- package/esm/typings/src/formfactors/translator/TranslatorFormfactorDefinition.d.ts +25 -0
- package/esm/typings/src/high-level-abstractions/_common/HighLevelAbstraction.d.ts +20 -0
- package/esm/typings/src/high-level-abstractions/implicit-formfactor/ImplicitFormfactorHla.d.ts +10 -0
- package/esm/typings/src/high-level-abstractions/index.d.ts +54 -0
- package/esm/typings/src/high-level-abstractions/quick-chatbot/QuickChatbotHla.d.ts +13 -0
- package/esm/typings/src/llm-providers/_common/filterModels.d.ts +15 -0
- package/esm/typings/src/llm-providers/_common/register/$llmToolsMetadataRegister.d.ts +13 -0
- package/esm/typings/src/llm-providers/_common/register/$llmToolsRegister.d.ts +13 -0
- package/esm/typings/src/llm-providers/_common/register/$provideEnvFilename.d.ts +12 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts +19 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts +27 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizzardOrCli.d.ts +59 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsFromEnv.d.ts +41 -0
- package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +22 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsConfiguration.d.ts +30 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +58 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsOptions.d.ts +17 -0
- package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.d.ts +49 -0
- package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +33 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +27 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +19 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage.d.ts +22 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/countUsage.d.ts +17 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +36 -0
- package/esm/typings/src/llm-providers/_multiple/MultipleLlmExecutionTools.d.ts +63 -0
- package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +21 -0
- package/esm/typings/src/llm-providers/_multiple/playground/playground.d.ts +5 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +66 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +31 -0
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +24 -0
- package/esm/typings/src/llm-providers/anthropic-claude/computeAnthropicClaudeUsage.d.ts +18 -0
- package/esm/typings/src/llm-providers/anthropic-claude/computeAnthropicClaudeUsage.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/anthropic-claude/createAnthropicClaudeExecutionTools.d.ts +19 -0
- package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +7 -0
- package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/anthropic-claude/register-constructor.d.ts +16 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +67 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +37 -0
- package/esm/typings/src/llm-providers/azure-openai/createAzureOpenAiExecutionTools.d.ts +15 -0
- package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +6 -0
- package/esm/typings/src/llm-providers/azure-openai/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/azure-openai/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/deepseek/DeepseekExecutionToolsOptions.d.ts +9 -0
- package/esm/typings/src/llm-providers/deepseek/createDeepseekExecutionTools.d.ts +14 -0
- package/esm/typings/src/llm-providers/deepseek/deepseek-models.d.ts +23 -0
- package/esm/typings/src/llm-providers/deepseek/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/deepseek/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/google/GoogleExecutionToolsOptions.d.ts +9 -0
- package/esm/typings/src/llm-providers/google/createGoogleExecutionTools.d.ts +14 -0
- package/esm/typings/src/llm-providers/google/google-models.d.ts +23 -0
- package/esm/typings/src/llm-providers/google/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/google/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +15 -0
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +40 -0
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +44 -0
- 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/joker.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +5 -0
- package/esm/typings/src/llm-providers/mocked/test/mocked-completion.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/ollama/OllamaExecutionTools.d.ts +19 -0
- package/esm/typings/src/llm-providers/ollama/OllamaExecutionToolsOptions.d.ts +12 -0
- package/esm/typings/src/llm-providers/ollama/createOllamaExecutionTools.d.ts +11 -0
- package/esm/typings/src/llm-providers/ollama/playground/playground.d.ts +6 -0
- package/esm/typings/src/llm-providers/ollama/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/ollama/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +36 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionToolsOptions.d.ts +14 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +79 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +11 -0
- package/esm/typings/src/llm-providers/openai/computeOpenAiUsage.d.ts +18 -0
- package/esm/typings/src/llm-providers/openai/computeOpenAiUsage.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/openai/computeUsage.d.ts +16 -0
- package/esm/typings/src/llm-providers/openai/computeUsage.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/openai/createOpenAiAssistantExecutionTools.d.ts +15 -0
- package/esm/typings/src/llm-providers/openai/createOpenAiExecutionTools.d.ts +15 -0
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +31 -0
- package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +6 -0
- package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +24 -0
- package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +25 -0
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +59 -0
- package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +5 -0
- package/esm/typings/src/llm-providers/vercel/VercelExecutionToolsOptions.d.ts +23 -0
- package/esm/typings/src/llm-providers/vercel/VercelProvider.d.ts +13 -0
- package/esm/typings/src/llm-providers/vercel/createExecutionToolsFromVercelProvider.d.ts +8 -0
- package/esm/typings/src/llm-providers/vercel/playground/playground.d.ts +6 -0
- package/esm/typings/src/migrations/migratePipeline.d.ts +9 -0
- package/esm/typings/src/other/templates/getBookTemplates.d.ts +24 -0
- package/esm/typings/src/other/templates/getTemplatesPipelineCollection.d.ts +10 -0
- package/esm/typings/src/personas/preparePersona.d.ts +17 -0
- package/esm/typings/src/pipeline/PipelineInterface/PipelineInterface.d.ts +22 -0
- package/esm/typings/src/pipeline/PipelineInterface/constants.d.ts +14 -0
- package/esm/typings/src/pipeline/PipelineInterface/getPipelineInterface.d.ts +11 -0
- package/esm/typings/src/pipeline/PipelineInterface/isPipelineImplementingInterface.d.ts +27 -0
- package/esm/typings/src/pipeline/PipelineInterface/isPipelineInterfacesEqual.d.ts +10 -0
- package/esm/typings/src/pipeline/PipelineJson/CommonTaskJson.d.ts +103 -0
- package/esm/typings/src/pipeline/PipelineJson/DialogTaskJson.d.ts +13 -0
- package/esm/typings/src/pipeline/PipelineJson/Expectations.d.ts +40 -0
- package/esm/typings/src/pipeline/PipelineJson/KnowledgePieceJson.d.ts +73 -0
- package/esm/typings/src/pipeline/PipelineJson/KnowledgeSourceJson.d.ts +44 -0
- package/esm/typings/src/pipeline/PipelineJson/ParameterJson.d.ts +98 -0
- package/esm/typings/src/pipeline/PipelineJson/PersonaJson.d.ts +47 -0
- package/esm/typings/src/pipeline/PipelineJson/PipelineJson.d.ts +113 -0
- package/esm/typings/src/pipeline/PipelineJson/PreparationJson.d.ts +22 -0
- package/esm/typings/src/pipeline/PipelineJson/PromptTaskJson.d.ts +26 -0
- package/esm/typings/src/pipeline/PipelineJson/ScriptTaskJson.d.ts +20 -0
- package/esm/typings/src/pipeline/PipelineJson/SimpleTaskJson.d.ts +13 -0
- package/esm/typings/src/pipeline/PipelineJson/TaskJson.d.ts +11 -0
- package/esm/typings/src/pipeline/PipelineString.d.ts +11 -0
- package/esm/typings/src/pipeline/book-notation.d.ts +19 -0
- package/esm/typings/src/pipeline/isValidPipelineString.d.ts +13 -0
- package/esm/typings/src/pipeline/isValidPipelineString.test.d.ts +4 -0
- package/esm/typings/src/pipeline/prompt-notation.d.ts +31 -0
- package/esm/typings/src/pipeline/prompt-notation.test.d.ts +4 -0
- package/esm/typings/src/pipeline/validatePipelineString.d.ts +14 -0
- package/esm/typings/src/playground/playground.d.ts +5 -0
- package/esm/typings/src/postprocessing/utils/extractBlock.d.ts +16 -0
- package/esm/typings/src/postprocessing/utils/extractJsonBlock.d.ts +25 -0
- package/esm/typings/src/postprocessing/utils/extractJsonBlock.test.d.ts +1 -0
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +51 -0
- package/esm/typings/src/prepare/isPipelinePrepared.d.ts +18 -0
- package/esm/typings/src/prepare/isPipelinePrepared.test.d.ts +1 -0
- package/esm/typings/src/prepare/preparePipeline.d.ts +22 -0
- package/esm/typings/src/prepare/preparePipelineOnRemoteServer.d.ts +17 -0
- package/esm/typings/src/prepare/prepareTasks.d.ts +36 -0
- package/esm/typings/src/prepare/unpreparePipeline.d.ts +13 -0
- package/esm/typings/src/remote-server/RemoteServer.d.ts +23 -0
- package/esm/typings/src/remote-server/createRemoteClient.d.ts +10 -0
- package/esm/typings/src/remote-server/openapi-types.d.ts +626 -0
- package/esm/typings/src/remote-server/openapi.d.ts +581 -0
- package/esm/typings/src/remote-server/socket-types/_common/PromptbookServer_Error.d.ts +7 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/Identification.d.ts +59 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/identificationToPromptbookToken.d.ts +11 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/promptbookTokenToIdentification.d.ts +10 -0
- package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Request.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Response.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/prepare/PromptbookServer_PreparePipeline_Request.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/prepare/PromptbookServer_PreparePipeline_Response.d.ts +12 -0
- package/esm/typings/src/remote-server/socket-types/prompt/PromptbookServer_Prompt_Request.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/prompt/PromptbookServer_Prompt_Response.d.ts +12 -0
- package/esm/typings/src/remote-server/startRemoteServer.d.ts +25 -0
- package/esm/typings/src/remote-server/types/RemoteClientOptions.d.ts +24 -0
- package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +164 -0
- package/esm/typings/src/scrapers/_boilerplate/BoilerplateScraper.d.ts +43 -0
- package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +20 -0
- package/esm/typings/src/scrapers/_boilerplate/playground/boilerplate-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/_boilerplate/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/_common/Converter.d.ts +25 -0
- package/esm/typings/src/scrapers/_common/Scraper.d.ts +60 -0
- package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +16 -0
- package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +19 -0
- package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.test.d.ts +1 -0
- package/esm/typings/src/scrapers/_common/register/$provideFilesystemForNode.d.ts +12 -0
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +15 -0
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$provideScriptingForNode.d.ts +11 -0
- package/esm/typings/src/scrapers/_common/register/$registeredScrapersMessage.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$scrapersMetadataRegister.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$scrapersRegister.d.ts +14 -0
- package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +46 -0
- package/esm/typings/src/scrapers/_common/register/ScraperConstructor.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +35 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
- package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/utils/promptbookFetch.d.ts +10 -0
- package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +43 -0
- package/esm/typings/src/scrapers/document/DocumentScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +20 -0
- package/esm/typings/src/scrapers/document/playground/document-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/document/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +43 -0
- package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +21 -0
- package/esm/typings/src/scrapers/document-legacy/playground/legacy-document-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/document-legacy/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +29 -0
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +23 -0
- package/esm/typings/src/scrapers/markdown/playground/markdown-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/markdown/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/markitdown/MarkitdownScraper.d.ts +50 -0
- package/esm/typings/src/scrapers/markitdown/createMarkitdownScraper.d.ts +22 -0
- package/esm/typings/src/scrapers/markitdown/playground/markitdown-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/markitdown/register-constructor.d.ts +17 -0
- package/esm/typings/src/scrapers/markitdown/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +41 -0
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +21 -0
- package/esm/typings/src/scrapers/pdf/playground/pdf-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/pdf/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +50 -0
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +21 -0
- package/esm/typings/src/scrapers/website/playground/website-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/website/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/website/utils/createShowdownConverter.d.ts +7 -0
- package/esm/typings/src/scrapers/website/utils/createShowdownConverter.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function-async.test.ts.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function-missing.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function-with-dependencies.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/postprocessing.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/script-execution-errors.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/script-execution-tools.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/JavascriptEvalExecutionTools.d.ts +22 -0
- package/esm/typings/src/scripting/javascript/JavascriptEvalExecutionTools.test.d.ts +4 -0
- package/esm/typings/src/scripting/javascript/JavascriptExecutionTools.d.ts +8 -0
- package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +26 -0
- package/esm/typings/src/scripting/javascript/postprocessing-functions.d.ts +56 -0
- package/esm/typings/src/scripting/javascript/utils/extractVariablesFromJavascript.d.ts +14 -0
- package/esm/typings/src/scripting/javascript/utils/extractVariablesFromJavascript.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/utils/extractVariablesFromScript.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +14 -0
- package/esm/typings/src/scripting/python/PythonExecutionTools.d.ts +18 -0
- package/esm/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +18 -0
- package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +24 -0
- package/esm/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
- package/esm/typings/src/storage/blackhole/BlackholeStorage.d.ts +33 -0
- package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +40 -0
- package/esm/typings/src/storage/file-cache-storage/FileCacheStorage.d.ts +40 -0
- package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +12 -0
- package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.d.ts +8 -0
- package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
- package/esm/typings/src/storage/local-storage/getIndexedDbStorage.d.ts +11 -0
- package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +10 -0
- package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +10 -0
- package/esm/typings/src/storage/local-storage/utils/IndexedDbStorageOptions.d.ts +14 -0
- package/esm/typings/src/storage/local-storage/utils/makePromptbookStorageFromIndexedDb.d.ts +8 -0
- package/esm/typings/src/storage/local-storage/utils/makePromptbookStorageFromWebStorage.d.ts +12 -0
- package/esm/typings/src/storage/memory/MemoryStorage.d.ts +33 -0
- package/esm/typings/src/storage/utils/PrefixStorage.d.ts +25 -0
- package/esm/typings/src/types/Arrayable.d.ts +11 -0
- package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +8 -0
- package/esm/typings/src/types/ModelRequirements.d.ts +104 -0
- package/esm/typings/src/types/ModelVariant.d.ts +15 -0
- package/esm/typings/src/types/NonEmptyArray.d.ts +8 -0
- package/esm/typings/src/types/Prompt.d.ts +111 -0
- package/esm/typings/src/types/ScriptLanguage.d.ts +13 -0
- package/esm/typings/src/types/SectionType.d.ts +21 -0
- package/esm/typings/src/types/TaskType.d.ts +15 -0
- package/esm/typings/src/types/typeAliasEmoji.d.ts +12 -0
- package/esm/typings/src/types/typeAliases.d.ts +679 -0
- package/esm/typings/src/utils/$Register.d.ts +40 -0
- package/esm/typings/src/utils/$getCurrentDate.d.ts +10 -0
- package/esm/typings/src/utils/FromtoItems.d.ts +19 -0
- 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/editable/edit-pipeline-string/addPipelineCommand.d.ts +17 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/addPipelineCommand.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/deflatePipeline.d.ts +13 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/deflatePipeline.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/removePipelineCommand.d.ts +22 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/removePipelineCommand.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/types/PipelineEditableSerialized.d.ts +27 -0
- package/esm/typings/src/utils/editable/utils/isFlatPipeline.d.ts +8 -0
- package/esm/typings/src/utils/editable/utils/isFlatPipeline.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/utils/renamePipelineParameter.d.ts +29 -0
- package/esm/typings/src/utils/editable/utils/renamePipelineParameter.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/utils/stringifyPipelineJson.d.ts +16 -0
- package/esm/typings/src/utils/emojis.d.ts +24 -0
- package/esm/typings/src/utils/environment/$getGlobalScope.d.ts +10 -0
- package/esm/typings/src/utils/environment/$isRunningInBrowser.d.ts +11 -0
- package/esm/typings/src/utils/environment/$isRunningInJest.d.ts +11 -0
- package/esm/typings/src/utils/environment/$isRunningInNode.d.ts +11 -0
- package/esm/typings/src/utils/environment/$isRunningInWebWorker.d.ts +11 -0
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +16 -0
- package/esm/typings/src/utils/execCommand/$execCommandNormalizeOptions.d.ts +12 -0
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +18 -0
- package/esm/typings/src/utils/execCommand/ExecCommandOptions.d.ts +45 -0
- package/esm/typings/src/utils/execCommand/execCommand.test.d.ts +1 -0
- package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/constants.d.ts +16 -0
- package/esm/typings/src/utils/expectation-counters/countCharacters.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/countCharacters.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countLines.d.ts +12 -0
- package/esm/typings/src/utils/expectation-counters/countLines.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countPages.d.ts +12 -0
- package/esm/typings/src/utils/expectation-counters/countPages.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countParagraphs.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/countParagraphs.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +16 -0
- package/esm/typings/src/utils/expectation-counters/countSentences.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countWords.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/countWords.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/index.d.ts +12 -0
- package/esm/typings/src/utils/files/extensionToMimeType.d.ts +8 -0
- package/esm/typings/src/utils/files/extensionToMimeType.test.d.ts +1 -0
- package/esm/typings/src/utils/files/getFileExtension.d.ts +8 -0
- package/esm/typings/src/utils/files/getFileExtension.test.d.ts +1 -0
- package/esm/typings/src/utils/files/isDirectoryExisting.d.ts +14 -0
- package/esm/typings/src/utils/files/isDirectoryExisting.test.d.ts +1 -0
- package/esm/typings/src/utils/files/isExecutable.d.ts +11 -0
- package/esm/typings/src/utils/files/isFileExisting.d.ts +13 -0
- package/esm/typings/src/utils/files/isFileExisting.test.d.ts +1 -0
- package/esm/typings/src/utils/files/listAllFiles.d.ts +17 -0
- package/esm/typings/src/utils/files/listAllFiles.test.d.ts +1 -0
- package/esm/typings/src/utils/files/mimeTypeToExtension.d.ts +10 -0
- package/esm/typings/src/utils/files/mimeTypeToExtension.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +14 -0
- package/esm/typings/src/utils/markdown/addAutoGeneratedSection.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/createMarkdownChart.d.ts +38 -0
- package/esm/typings/src/utils/markdown/createMarkdownChart.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/createMarkdownTable.d.ts +11 -0
- package/esm/typings/src/utils/markdown/createMarkdownTable.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/escapeMarkdownBlock.d.ts +11 -0
- package/esm/typings/src/utils/markdown/escapeMarkdownBlock.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +36 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllListItemsFromMarkdown.d.ts +15 -0
- package/esm/typings/src/utils/markdown/extractAllListItemsFromMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +22 -0
- package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/flattenMarkdown.d.ts +17 -0
- package/esm/typings/src/utils/markdown/flattenMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +34 -0
- package/esm/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/prettifyMarkdown.d.ts +9 -0
- package/esm/typings/src/utils/markdown/prettifyMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/removeMarkdownComments.d.ts +10 -0
- package/esm/typings/src/utils/markdown/removeMarkdownComments.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/removeMarkdownFormatting.d.ts +9 -0
- package/esm/typings/src/utils/markdown/removeMarkdownFormatting.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +15 -0
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/DIACRITIC_VARIANTS_LETTERS.d.ts +12 -0
- package/esm/typings/src/utils/normalization/IKeywords.d.ts +21 -0
- package/esm/typings/src/utils/normalization/capitalize.d.ts +6 -0
- package/esm/typings/src/utils/normalization/capitalize.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/decapitalize.d.ts +6 -0
- package/esm/typings/src/utils/normalization/decapitalize.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/isValidKeyword.d.ts +10 -0
- package/esm/typings/src/utils/normalization/isValidKeyword.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/nameToUriPart.d.ts +9 -0
- package/esm/typings/src/utils/normalization/nameToUriPart.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/nameToUriParts.d.ts +9 -0
- package/esm/typings/src/utils/normalization/nameToUriParts.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +21 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +17 -0
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +26 -0
- package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +22 -0
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +17 -0
- package/esm/typings/src/utils/normalization/normalizeTo_snake_case.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeWhitespaces.d.ts +6 -0
- package/esm/typings/src/utils/normalization/normalizeWhitespaces.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/orderJson.d.ts +21 -0
- package/esm/typings/src/utils/normalization/orderJson.test.d.ts +4 -0
- package/esm/typings/src/utils/normalization/parseKeywords.d.ts +16 -0
- package/esm/typings/src/utils/normalization/parseKeywords.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/parseKeywordsFromString.d.ts +9 -0
- package/esm/typings/src/utils/normalization/parseKeywordsFromString.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/removeDiacritics.d.ts +11 -0
- package/esm/typings/src/utils/normalization/removeDiacritics.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/searchKeywords.d.ts +13 -0
- package/esm/typings/src/utils/normalization/searchKeywords.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/suffixUrl.d.ts +7 -0
- package/esm/typings/src/utils/normalization/suffixUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/titleToName.d.ts +9 -0
- package/esm/typings/src/utils/normalization/titleToName.test.d.ts +1 -0
- package/esm/typings/src/utils/organization/$sideEffect.d.ts +9 -0
- package/esm/typings/src/utils/organization/TODO_USE.d.ts +12 -0
- package/esm/typings/src/utils/organization/TODO_any.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_narrow.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_object.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_remove_as.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_string.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
- package/esm/typings/src/utils/organization/___and___.d.ts +7 -0
- package/esm/typings/src/utils/organization/___or___.d.ts +6 -0
- package/esm/typings/src/utils/organization/empty_object.d.ts +10 -0
- package/esm/typings/src/utils/organization/just.d.ts +14 -0
- package/esm/typings/src/utils/organization/just_empty_object.d.ts +12 -0
- package/esm/typings/src/utils/organization/keepTypeImported.d.ts +9 -0
- package/esm/typings/src/utils/organization/keepUnused.d.ts +16 -0
- package/esm/typings/src/utils/organization/really_any.d.ts +6 -0
- package/esm/typings/src/utils/organization/really_unknown.d.ts +6 -0
- package/esm/typings/src/utils/organization/spaceTrim.d.ts +11 -0
- package/esm/typings/src/utils/parameters/extractParameterNames.d.ts +10 -0
- package/esm/typings/src/utils/parameters/extractParameterNames.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.d.ts +27 -0
- package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/numberToString.d.ts +7 -0
- package/esm/typings/src/utils/parameters/numberToString.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/templateParameters.d.ts +16 -0
- package/esm/typings/src/utils/parameters/templateParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/valueToString.d.ts +17 -0
- package/esm/typings/src/utils/parameters/valueToString.test.d.ts +1 -0
- package/esm/typings/src/utils/parseNumber.d.ts +16 -0
- package/esm/typings/src/utils/parseNumber.test.d.ts +1 -0
- package/esm/typings/src/utils/random/$randomSeed.d.ts +10 -0
- package/esm/typings/src/utils/random/$randomToken.d.ts +13 -0
- package/esm/typings/src/utils/removeEmojis.d.ts +8 -0
- package/esm/typings/src/utils/removeEmojis.test.d.ts +1 -0
- package/esm/typings/src/utils/removeQuotes.d.ts +14 -0
- package/esm/typings/src/utils/removeQuotes.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/$deepFreeze.d.ts +14 -0
- package/esm/typings/src/utils/serialization/asSerializable.d.ts +15 -0
- package/esm/typings/src/utils/serialization/asSerializable.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/checkSerializableAsJson.d.ts +45 -0
- package/esm/typings/src/utils/serialization/clonePipeline.d.ts +14 -0
- package/esm/typings/src/utils/serialization/deepClone.d.ts +14 -0
- package/esm/typings/src/utils/serialization/deepClone.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/exportJson.d.ts +29 -0
- package/esm/typings/src/utils/serialization/isSerializableAsJson.d.ts +25 -0
- package/esm/typings/src/utils/serialization/isSerializableAsJson.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/jsonStringsToJsons.d.ts +9 -0
- package/esm/typings/src/utils/serialization/jsonStringsToJsons.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/difference.d.ts +10 -0
- package/esm/typings/src/utils/sets/difference.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/intersection.d.ts +7 -0
- package/esm/typings/src/utils/sets/intersection.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/union.d.ts +7 -0
- package/esm/typings/src/utils/sets/union.test.d.ts +1 -0
- package/esm/typings/src/utils/trimCodeBlock.d.ts +9 -0
- package/esm/typings/src/utils/trimCodeBlock.test.d.ts +1 -0
- package/esm/typings/src/utils/trimEndOfCodeBlock.d.ts +9 -0
- package/esm/typings/src/utils/trimEndOfCodeBlock.test.d.ts +1 -0
- package/esm/typings/src/utils/unwrapResult.d.ts +37 -0
- package/esm/typings/src/utils/unwrapResult.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +8 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/filePath/isRootPath.d.ts +12 -0
- package/esm/typings/src/utils/validators/filePath/isRootPath.test.d.ts +4 -0
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +12 -0
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +10 -0
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +11 -0
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +15 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +12 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +11 -0
- package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +13 -0
- package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +15 -0
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +13 -0
- package/esm/typings/src/utils/validators/url/isValidUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +8 -0
- package/esm/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +1 -0
- package/esm/typings/src/version.d.ts +26 -0
- package/esm/typings/src/wizzard/$getCompiledBook.d.ts +16 -0
- package/esm/typings/src/wizzard/wizzard.d.ts +68 -0
- package/package.json +73 -0
- package/umd/index.umd.js +756 -0
- package/umd/index.umd.js.map +1 -0
package/esm/index.es.js
ADDED
|
@@ -0,0 +1,741 @@
|
|
|
1
|
+
import Bottleneck from 'bottleneck';
|
|
2
|
+
import fetch from 'node-fetch';
|
|
3
|
+
import { randomBytes } from 'crypto';
|
|
4
|
+
import spaceTrim, { spaceTrim as spaceTrim$1 } from 'spacetrim';
|
|
5
|
+
|
|
6
|
+
// ⚠️ WARNING: This code has been generated so that any manual changes will be overwritten
|
|
7
|
+
/**
|
|
8
|
+
* The version of the Book language
|
|
9
|
+
*
|
|
10
|
+
* @generated
|
|
11
|
+
* @see https://github.com/webgptorg/book
|
|
12
|
+
*/
|
|
13
|
+
const BOOK_LANGUAGE_VERSION = '1.0.0';
|
|
14
|
+
/**
|
|
15
|
+
* The version of the Promptbook engine
|
|
16
|
+
*
|
|
17
|
+
* @generated
|
|
18
|
+
* @see https://github.com/webgptorg/promptbook
|
|
19
|
+
*/
|
|
20
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.94.0-1';
|
|
21
|
+
/**
|
|
22
|
+
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
23
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Name for the Promptbook
|
|
28
|
+
*
|
|
29
|
+
* TODO: [🗽] Unite branding and make single place for it
|
|
30
|
+
*
|
|
31
|
+
* @public exported from `@promptbook/core`
|
|
32
|
+
*/
|
|
33
|
+
const NAME = `Promptbook`;
|
|
34
|
+
/**
|
|
35
|
+
* Email of the responsible person
|
|
36
|
+
*
|
|
37
|
+
* @public exported from `@promptbook/core`
|
|
38
|
+
*/
|
|
39
|
+
const ADMIN_EMAIL = 'pavol@ptbk.io';
|
|
40
|
+
/**
|
|
41
|
+
* Name of the responsible person for the Promptbook on GitHub
|
|
42
|
+
*
|
|
43
|
+
* @public exported from `@promptbook/core`
|
|
44
|
+
*/
|
|
45
|
+
const ADMIN_GITHUB_NAME = 'hejny';
|
|
46
|
+
// <- TODO: [🧜♂️]
|
|
47
|
+
/**
|
|
48
|
+
* Default settings for parsing and generating CSV files in Promptbook.
|
|
49
|
+
*
|
|
50
|
+
* @public exported from `@promptbook/core`
|
|
51
|
+
*/
|
|
52
|
+
Object.freeze({
|
|
53
|
+
delimiter: ',',
|
|
54
|
+
quoteChar: '"',
|
|
55
|
+
newline: '\n',
|
|
56
|
+
skipEmptyLines: true,
|
|
57
|
+
});
|
|
58
|
+
/**
|
|
59
|
+
* Default rate limits (requests per minute)
|
|
60
|
+
*
|
|
61
|
+
* Note: Adjust based on the provider tier you are have
|
|
62
|
+
*
|
|
63
|
+
* @public exported from `@promptbook/core`
|
|
64
|
+
*/
|
|
65
|
+
const DEFAULT_MAX_REQUESTS_PER_MINUTE = 60;
|
|
66
|
+
/**
|
|
67
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
68
|
+
* TODO: [🧠][🧜♂️] Maybe join remoteServerUrl and path into single value
|
|
69
|
+
*/
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Generates random token
|
|
73
|
+
*
|
|
74
|
+
* Note: This function is cryptographically secure (it uses crypto.randomBytes internally)
|
|
75
|
+
*
|
|
76
|
+
* @private internal helper function
|
|
77
|
+
* @returns secure random token
|
|
78
|
+
*/
|
|
79
|
+
function $randomToken(randomness) {
|
|
80
|
+
return randomBytes(randomness).toString('hex');
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* TODO: Maybe use nanoid instead https://github.com/ai/nanoid
|
|
84
|
+
*/
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* This error indicates errors during the execution of the pipeline
|
|
88
|
+
*
|
|
89
|
+
* @public exported from `@promptbook/core`
|
|
90
|
+
*/
|
|
91
|
+
class PipelineExecutionError extends Error {
|
|
92
|
+
constructor(message) {
|
|
93
|
+
// Added id parameter
|
|
94
|
+
super(message);
|
|
95
|
+
this.name = 'PipelineExecutionError';
|
|
96
|
+
// TODO: [🐙] DRY - Maybe $randomId
|
|
97
|
+
this.id = `error-${$randomToken(8 /* <- TODO: To global config + Use Base58 to avoid similar char conflicts */)}`;
|
|
98
|
+
Object.setPrototypeOf(this, PipelineExecutionError.prototype);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* TODO: [🧠][🌂] Add id to all errors
|
|
103
|
+
*/
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Make error report URL for the given error
|
|
107
|
+
*
|
|
108
|
+
* @private private within the repository
|
|
109
|
+
*/
|
|
110
|
+
function getErrorReportUrl(error) {
|
|
111
|
+
const report = {
|
|
112
|
+
title: `🐜 Error report from ${NAME}`,
|
|
113
|
+
body: spaceTrim((block) => `
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
\`${error.name || 'Error'}\` has occurred in the [${NAME}], please look into it @${ADMIN_GITHUB_NAME}.
|
|
117
|
+
|
|
118
|
+
\`\`\`
|
|
119
|
+
${block(error.message || '(no error message)')}
|
|
120
|
+
\`\`\`
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
## More info:
|
|
124
|
+
|
|
125
|
+
- **Promptbook engine version:** ${PROMPTBOOK_ENGINE_VERSION}
|
|
126
|
+
- **Book language version:** ${BOOK_LANGUAGE_VERSION}
|
|
127
|
+
- **Time:** ${new Date().toISOString()}
|
|
128
|
+
|
|
129
|
+
<details>
|
|
130
|
+
<summary>Stack trace:</summary>
|
|
131
|
+
|
|
132
|
+
## Stack trace:
|
|
133
|
+
|
|
134
|
+
\`\`\`stacktrace
|
|
135
|
+
${block(error.stack || '(empty)')}
|
|
136
|
+
\`\`\`
|
|
137
|
+
</details>
|
|
138
|
+
|
|
139
|
+
`),
|
|
140
|
+
};
|
|
141
|
+
const reportUrl = new URL(`https://github.com/webgptorg/promptbook/issues/new`);
|
|
142
|
+
reportUrl.searchParams.set('labels', 'bug');
|
|
143
|
+
reportUrl.searchParams.set('assignees', ADMIN_GITHUB_NAME);
|
|
144
|
+
reportUrl.searchParams.set('title', report.title);
|
|
145
|
+
reportUrl.searchParams.set('body', report.body);
|
|
146
|
+
return reportUrl;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* This error type indicates that the error should not happen and its last check before crashing with some other error
|
|
151
|
+
*
|
|
152
|
+
* @public exported from `@promptbook/core`
|
|
153
|
+
*/
|
|
154
|
+
class UnexpectedError extends Error {
|
|
155
|
+
constructor(message) {
|
|
156
|
+
super(spaceTrim$1((block) => `
|
|
157
|
+
${block(message)}
|
|
158
|
+
|
|
159
|
+
Note: This error should not happen.
|
|
160
|
+
It's probably a bug in the pipeline collection
|
|
161
|
+
|
|
162
|
+
Please report issue:
|
|
163
|
+
${block(getErrorReportUrl(new Error(message)).href)}
|
|
164
|
+
|
|
165
|
+
Or contact us on ${ADMIN_EMAIL}
|
|
166
|
+
|
|
167
|
+
`));
|
|
168
|
+
this.name = 'UnexpectedError';
|
|
169
|
+
Object.setPrototypeOf(this, UnexpectedError.prototype);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Simple wrapper `new Date().toISOString()`
|
|
175
|
+
*
|
|
176
|
+
* Note: `$` is used to indicate that this function is not a pure function - it is not deterministic because it depends on the current time
|
|
177
|
+
*
|
|
178
|
+
* @returns string_date branded type
|
|
179
|
+
* @public exported from `@promptbook/utils`
|
|
180
|
+
*/
|
|
181
|
+
function $getCurrentDate() {
|
|
182
|
+
return new Date().toISOString();
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Orders JSON object by keys
|
|
187
|
+
*
|
|
188
|
+
* @returns The same type of object as the input re-ordered
|
|
189
|
+
* @public exported from `@promptbook/utils`
|
|
190
|
+
*/
|
|
191
|
+
function orderJson(options) {
|
|
192
|
+
const { value, order } = options;
|
|
193
|
+
const orderedValue = {
|
|
194
|
+
...(order === undefined ? {} : Object.fromEntries(order.map((key) => [key, undefined]))),
|
|
195
|
+
...value,
|
|
196
|
+
};
|
|
197
|
+
return orderedValue;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Freezes the given object and all its nested objects recursively
|
|
202
|
+
*
|
|
203
|
+
* Note: `$` is used to indicate that this function is not a pure function - it mutates given object
|
|
204
|
+
* Note: This function mutates the object and returns the original (but mutated-deep-freezed) object
|
|
205
|
+
*
|
|
206
|
+
* @returns The same object as the input, but deeply frozen
|
|
207
|
+
* @public exported from `@promptbook/utils`
|
|
208
|
+
*/
|
|
209
|
+
function $deepFreeze(objectValue) {
|
|
210
|
+
if (Array.isArray(objectValue)) {
|
|
211
|
+
return Object.freeze(objectValue.map((item) => $deepFreeze(item)));
|
|
212
|
+
}
|
|
213
|
+
const propertyNames = Object.getOwnPropertyNames(objectValue);
|
|
214
|
+
for (const propertyName of propertyNames) {
|
|
215
|
+
const value = objectValue[propertyName];
|
|
216
|
+
if (value && typeof value === 'object') {
|
|
217
|
+
$deepFreeze(value);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
Object.freeze(objectValue);
|
|
221
|
+
return objectValue;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* TODO: [🧠] Is there a way how to meaningfully test this utility
|
|
225
|
+
*/
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* This error type indicates that somewhere in the code non-Error object was thrown and it was wrapped into the `WrappedError`
|
|
229
|
+
*
|
|
230
|
+
* @public exported from `@promptbook/core`
|
|
231
|
+
*/
|
|
232
|
+
class WrappedError extends Error {
|
|
233
|
+
constructor(whatWasThrown) {
|
|
234
|
+
const tag = `[🤮]`;
|
|
235
|
+
console.error(tag, whatWasThrown);
|
|
236
|
+
super(spaceTrim$1(`
|
|
237
|
+
Non-Error object was thrown
|
|
238
|
+
|
|
239
|
+
Note: Look for ${tag} in the console for more details
|
|
240
|
+
Please report issue on ${ADMIN_EMAIL}
|
|
241
|
+
`));
|
|
242
|
+
this.name = 'WrappedError';
|
|
243
|
+
Object.setPrototypeOf(this, WrappedError.prototype);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Helper used in catch blocks to assert that the error is an instance of `Error`
|
|
249
|
+
*
|
|
250
|
+
* @param whatWasThrown Any object that was thrown
|
|
251
|
+
* @returns Nothing if the error is an instance of `Error`
|
|
252
|
+
* @throws `WrappedError` or `UnexpectedError` if the error is not standard
|
|
253
|
+
*
|
|
254
|
+
* @private within the repository
|
|
255
|
+
*/
|
|
256
|
+
function assertsError(whatWasThrown) {
|
|
257
|
+
// Case 1: Handle error which was rethrown as `WrappedError`
|
|
258
|
+
if (whatWasThrown instanceof WrappedError) {
|
|
259
|
+
const wrappedError = whatWasThrown;
|
|
260
|
+
throw wrappedError;
|
|
261
|
+
}
|
|
262
|
+
// Case 2: Handle unexpected errors
|
|
263
|
+
if (whatWasThrown instanceof UnexpectedError) {
|
|
264
|
+
const unexpectedError = whatWasThrown;
|
|
265
|
+
throw unexpectedError;
|
|
266
|
+
}
|
|
267
|
+
// Case 3: Handle standard errors - keep them up to consumer
|
|
268
|
+
if (whatWasThrown instanceof Error) {
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
// Case 4: Handle non-standard errors - wrap them into `WrappedError` and throw
|
|
272
|
+
throw new WrappedError(whatWasThrown);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Checks if the value is [🚉] serializable as JSON
|
|
277
|
+
* If not, throws an UnexpectedError with a rich error message and tracking
|
|
278
|
+
*
|
|
279
|
+
* - Almost all primitives are serializable BUT:
|
|
280
|
+
* - `undefined` is not serializable
|
|
281
|
+
* - `NaN` is not serializable
|
|
282
|
+
* - Objects and arrays are serializable if all their properties are serializable
|
|
283
|
+
* - Functions are not serializable
|
|
284
|
+
* - Circular references are not serializable
|
|
285
|
+
* - `Date` objects are not serializable
|
|
286
|
+
* - `Map` and `Set` objects are not serializable
|
|
287
|
+
* - `RegExp` objects are not serializable
|
|
288
|
+
* - `Error` objects are not serializable
|
|
289
|
+
* - `Symbol` objects are not serializable
|
|
290
|
+
* - And much more...
|
|
291
|
+
*
|
|
292
|
+
* @throws UnexpectedError if the value is not serializable as JSON
|
|
293
|
+
* @public exported from `@promptbook/utils`
|
|
294
|
+
*/
|
|
295
|
+
function checkSerializableAsJson(options) {
|
|
296
|
+
const { value, name, message } = options;
|
|
297
|
+
if (value === undefined) {
|
|
298
|
+
throw new UnexpectedError(`${name} is undefined`);
|
|
299
|
+
}
|
|
300
|
+
else if (value === null) {
|
|
301
|
+
return;
|
|
302
|
+
}
|
|
303
|
+
else if (typeof value === 'boolean') {
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
else if (typeof value === 'number' && !isNaN(value)) {
|
|
307
|
+
return;
|
|
308
|
+
}
|
|
309
|
+
else if (typeof value === 'string') {
|
|
310
|
+
return;
|
|
311
|
+
}
|
|
312
|
+
else if (typeof value === 'symbol') {
|
|
313
|
+
throw new UnexpectedError(`${name} is symbol`);
|
|
314
|
+
}
|
|
315
|
+
else if (typeof value === 'function') {
|
|
316
|
+
throw new UnexpectedError(`${name} is function`);
|
|
317
|
+
}
|
|
318
|
+
else if (typeof value === 'object' && Array.isArray(value)) {
|
|
319
|
+
for (let i = 0; i < value.length; i++) {
|
|
320
|
+
checkSerializableAsJson({ name: `${name}[${i}]`, value: value[i], message });
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
else if (typeof value === 'object') {
|
|
324
|
+
if (value instanceof Date) {
|
|
325
|
+
throw new UnexpectedError(spaceTrim((block) => `
|
|
326
|
+
\`${name}\` is Date
|
|
327
|
+
|
|
328
|
+
Use \`string_date_iso8601\` instead
|
|
329
|
+
|
|
330
|
+
Additional message for \`${name}\`:
|
|
331
|
+
${block(message || '(nothing)')}
|
|
332
|
+
`));
|
|
333
|
+
}
|
|
334
|
+
else if (value instanceof Map) {
|
|
335
|
+
throw new UnexpectedError(`${name} is Map`);
|
|
336
|
+
}
|
|
337
|
+
else if (value instanceof Set) {
|
|
338
|
+
throw new UnexpectedError(`${name} is Set`);
|
|
339
|
+
}
|
|
340
|
+
else if (value instanceof RegExp) {
|
|
341
|
+
throw new UnexpectedError(`${name} is RegExp`);
|
|
342
|
+
}
|
|
343
|
+
else if (value instanceof Error) {
|
|
344
|
+
throw new UnexpectedError(spaceTrim((block) => `
|
|
345
|
+
\`${name}\` is unserialized Error
|
|
346
|
+
|
|
347
|
+
Use function \`serializeError\`
|
|
348
|
+
|
|
349
|
+
Additional message for \`${name}\`:
|
|
350
|
+
${block(message || '(nothing)')}
|
|
351
|
+
|
|
352
|
+
`));
|
|
353
|
+
}
|
|
354
|
+
else {
|
|
355
|
+
for (const [subName, subValue] of Object.entries(value)) {
|
|
356
|
+
if (subValue === undefined) {
|
|
357
|
+
// Note: undefined in object is serializable - it is just omited
|
|
358
|
+
continue;
|
|
359
|
+
}
|
|
360
|
+
checkSerializableAsJson({ name: `${name}.${subName}`, value: subValue, message });
|
|
361
|
+
}
|
|
362
|
+
try {
|
|
363
|
+
JSON.stringify(value); // <- TODO: [0]
|
|
364
|
+
}
|
|
365
|
+
catch (error) {
|
|
366
|
+
assertsError(error);
|
|
367
|
+
throw new UnexpectedError(spaceTrim((block) => `
|
|
368
|
+
\`${name}\` is not serializable
|
|
369
|
+
|
|
370
|
+
${block(error.stack || error.message)}
|
|
371
|
+
|
|
372
|
+
Additional message for \`${name}\`:
|
|
373
|
+
${block(message || '(nothing)')}
|
|
374
|
+
`));
|
|
375
|
+
}
|
|
376
|
+
/*
|
|
377
|
+
TODO: [0] Is there some more elegant way to check circular references?
|
|
378
|
+
const seen = new Set();
|
|
379
|
+
const stack = [{ value }];
|
|
380
|
+
while (stack.length > 0) {
|
|
381
|
+
const { value } = stack.pop()!;
|
|
382
|
+
if (typeof value === 'object' && value !== null) {
|
|
383
|
+
if (seen.has(value)) {
|
|
384
|
+
throw new UnexpectedError(`${name} has circular reference`);
|
|
385
|
+
}
|
|
386
|
+
seen.add(value);
|
|
387
|
+
if (Array.isArray(value)) {
|
|
388
|
+
stack.push(...value.map((value) => ({ value })));
|
|
389
|
+
} else {
|
|
390
|
+
stack.push(...Object.values(value).map((value) => ({ value })));
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
*/
|
|
395
|
+
return;
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
else {
|
|
399
|
+
throw new UnexpectedError(spaceTrim((block) => `
|
|
400
|
+
\`${name}\` is unknown type
|
|
401
|
+
|
|
402
|
+
Additional message for \`${name}\`:
|
|
403
|
+
${block(message || '(nothing)')}
|
|
404
|
+
`));
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
/**
|
|
408
|
+
* TODO: Can be return type more type-safe? like `asserts options.value is JsonValue`
|
|
409
|
+
* TODO: [🧠][main] !!3 In-memory cache of same values to prevent multiple checks
|
|
410
|
+
* Note: [🐠] This is how `checkSerializableAsJson` + `isSerializableAsJson` together can just retun true/false or rich error message
|
|
411
|
+
*/
|
|
412
|
+
|
|
413
|
+
/**
|
|
414
|
+
* Creates a deep clone of the given object
|
|
415
|
+
*
|
|
416
|
+
* Note: This method only works for objects that are fully serializable to JSON and do not contain functions, Dates, or special types.
|
|
417
|
+
*
|
|
418
|
+
* @param objectValue The object to clone.
|
|
419
|
+
* @returns A deep, writable clone of the input object.
|
|
420
|
+
* @public exported from `@promptbook/utils`
|
|
421
|
+
*/
|
|
422
|
+
function deepClone(objectValue) {
|
|
423
|
+
return JSON.parse(JSON.stringify(objectValue));
|
|
424
|
+
/*
|
|
425
|
+
TODO: [🧠] Is there a better implementation?
|
|
426
|
+
> const propertyNames = Object.getOwnPropertyNames(objectValue);
|
|
427
|
+
> for (const propertyName of propertyNames) {
|
|
428
|
+
> const value = (objectValue as really_any)[propertyName];
|
|
429
|
+
> if (value && typeof value === 'object') {
|
|
430
|
+
> deepClone(value);
|
|
431
|
+
> }
|
|
432
|
+
> }
|
|
433
|
+
> return Object.assign({}, objectValue);
|
|
434
|
+
*/
|
|
435
|
+
}
|
|
436
|
+
/**
|
|
437
|
+
* TODO: [🧠] Is there a way how to meaningfully test this utility
|
|
438
|
+
*/
|
|
439
|
+
|
|
440
|
+
/**
|
|
441
|
+
* Utility to export a JSON object from a function
|
|
442
|
+
*
|
|
443
|
+
* 1) Checks if the value is serializable as JSON
|
|
444
|
+
* 2) Makes a deep clone of the object
|
|
445
|
+
* 2) Orders the object properties
|
|
446
|
+
* 2) Deeply freezes the cloned object
|
|
447
|
+
*
|
|
448
|
+
* Note: This function does not mutates the given object
|
|
449
|
+
*
|
|
450
|
+
* @returns The same type of object as the input but read-only and re-ordered
|
|
451
|
+
* @public exported from `@promptbook/utils`
|
|
452
|
+
*/
|
|
453
|
+
function exportJson(options) {
|
|
454
|
+
const { name, value, order, message } = options;
|
|
455
|
+
checkSerializableAsJson({ name, value, message });
|
|
456
|
+
const orderedValue =
|
|
457
|
+
// TODO: Fix error "Type instantiation is excessively deep and possibly infinite."
|
|
458
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
459
|
+
// @ts-ignore
|
|
460
|
+
order === undefined
|
|
461
|
+
? deepClone(value)
|
|
462
|
+
: orderJson({
|
|
463
|
+
value: value,
|
|
464
|
+
// <- Note: checkSerializableAsJson asserts that the value is serializable as JSON
|
|
465
|
+
order: order,
|
|
466
|
+
});
|
|
467
|
+
$deepFreeze(orderedValue);
|
|
468
|
+
return orderedValue;
|
|
469
|
+
}
|
|
470
|
+
/**
|
|
471
|
+
* TODO: [🧠] Is there a way how to meaningfully test this utility
|
|
472
|
+
*/
|
|
473
|
+
|
|
474
|
+
/**
|
|
475
|
+
* Execution Tools for calling a local Ollama model via HTTP API
|
|
476
|
+
*
|
|
477
|
+
* @public exported from `@promptbook/ollama`
|
|
478
|
+
*/
|
|
479
|
+
class OllamaExecutionTools {
|
|
480
|
+
constructor(options) {
|
|
481
|
+
this.options = options;
|
|
482
|
+
this.limiter = new Bottleneck({
|
|
483
|
+
minTime: 60000 / (options.maxRequestsPerMinute || DEFAULT_MAX_REQUESTS_PER_MINUTE),
|
|
484
|
+
});
|
|
485
|
+
}
|
|
486
|
+
get title() {
|
|
487
|
+
return 'Ollama';
|
|
488
|
+
}
|
|
489
|
+
get description() {
|
|
490
|
+
return 'Local Ollama LLM via HTTP';
|
|
491
|
+
}
|
|
492
|
+
async checkConfiguration() {
|
|
493
|
+
const res = await fetch(`${this.options.baseUrl}/models`);
|
|
494
|
+
if (!res.ok)
|
|
495
|
+
throw new UnexpectedError(`Failed to reach Ollama API at ${this.options.baseUrl}`);
|
|
496
|
+
}
|
|
497
|
+
async listModels() {
|
|
498
|
+
const res = await fetch(`${this.options.baseUrl}/models`);
|
|
499
|
+
if (!res.ok)
|
|
500
|
+
throw new UnexpectedError(`Error listing Ollama models: ${res.statusText}`);
|
|
501
|
+
const data = (await res.json());
|
|
502
|
+
return data.map((m) => ({ modelName: m.name, modelVariant: 'CHAT' }));
|
|
503
|
+
}
|
|
504
|
+
async callChatModel(prompt) {
|
|
505
|
+
const { content, parameters, modelRequirements } = prompt;
|
|
506
|
+
if (modelRequirements.modelVariant !== 'CHAT') {
|
|
507
|
+
throw new PipelineExecutionError('Use callChatModel only for CHAT variant');
|
|
508
|
+
}
|
|
509
|
+
const modelName = modelRequirements.modelName || this.options.model;
|
|
510
|
+
const body = {
|
|
511
|
+
model: modelName,
|
|
512
|
+
messages: [
|
|
513
|
+
...(modelRequirements.systemMessage
|
|
514
|
+
? [{ role: 'system', content: modelRequirements.systemMessage }]
|
|
515
|
+
: []),
|
|
516
|
+
{ role: 'user', content: content },
|
|
517
|
+
],
|
|
518
|
+
parameters: parameters,
|
|
519
|
+
};
|
|
520
|
+
const start = $getCurrentDate();
|
|
521
|
+
const res = await this.limiter.schedule(() => fetch(`${this.options.baseUrl}/chat/completions`, {
|
|
522
|
+
method: 'POST',
|
|
523
|
+
headers: { 'Content-Type': 'application/json' },
|
|
524
|
+
body: JSON.stringify(body),
|
|
525
|
+
}));
|
|
526
|
+
if (!res.ok)
|
|
527
|
+
throw new PipelineExecutionError(`Ollama API error: ${res.statusText}`);
|
|
528
|
+
const json = await res.json();
|
|
529
|
+
const complete = $getCurrentDate();
|
|
530
|
+
if (!json.choices || !json.choices[0]) {
|
|
531
|
+
throw new PipelineExecutionError('No choices from Ollama');
|
|
532
|
+
}
|
|
533
|
+
const resultContent = json.choices[0].message.content;
|
|
534
|
+
const usage = { price: { value: 0, isUncertain: true }, input: {}, output: {} }; /* <- !!! */
|
|
535
|
+
return exportJson({
|
|
536
|
+
name: 'promptResult',
|
|
537
|
+
message: 'Result of Ollama',
|
|
538
|
+
order: [],
|
|
539
|
+
value: {
|
|
540
|
+
content: resultContent,
|
|
541
|
+
modelName,
|
|
542
|
+
timing: { start, complete },
|
|
543
|
+
usage,
|
|
544
|
+
rawPromptContent: content,
|
|
545
|
+
rawRequest: body,
|
|
546
|
+
rawResponse: json,
|
|
547
|
+
},
|
|
548
|
+
});
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* Execution Tools for calling Ollama API
|
|
554
|
+
*
|
|
555
|
+
* @public exported from `@promptbook/ollama`
|
|
556
|
+
*/
|
|
557
|
+
const createOllamaExecutionTools = Object.assign((options) => new OllamaExecutionTools(options), {
|
|
558
|
+
packageName: '@promptbook/ollama',
|
|
559
|
+
className: 'OllamaExecutionTools',
|
|
560
|
+
});
|
|
561
|
+
|
|
562
|
+
/**
|
|
563
|
+
* This error type indicates that some part of the code is not implemented yet
|
|
564
|
+
*
|
|
565
|
+
* @public exported from `@promptbook/core`
|
|
566
|
+
*/
|
|
567
|
+
class NotYetImplementedError extends Error {
|
|
568
|
+
constructor(message) {
|
|
569
|
+
super(spaceTrim$1((block) => `
|
|
570
|
+
${block(message)}
|
|
571
|
+
|
|
572
|
+
Note: This feature is not implemented yet but it will be soon.
|
|
573
|
+
|
|
574
|
+
If you want speed up the implementation or just read more, look here:
|
|
575
|
+
https://github.com/webgptorg/promptbook
|
|
576
|
+
|
|
577
|
+
Or contact us on pavol@ptbk.io
|
|
578
|
+
|
|
579
|
+
`));
|
|
580
|
+
this.name = 'NotYetImplementedError';
|
|
581
|
+
Object.setPrototypeOf(this, NotYetImplementedError.prototype);
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
/**
|
|
586
|
+
* Safely retrieves the global scope object (window in browser, global in Node.js)
|
|
587
|
+
* regardless of the JavaScript environment in which the code is running
|
|
588
|
+
*
|
|
589
|
+
* Note: `$` is used to indicate that this function is not a pure function - it access global scope
|
|
590
|
+
*
|
|
591
|
+
* @private internal function of `$Register`
|
|
592
|
+
*/
|
|
593
|
+
function $getGlobalScope() {
|
|
594
|
+
return Function('return this')();
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
/**
|
|
598
|
+
* Normalizes a text string to SCREAMING_CASE (all uppercase with underscores).
|
|
599
|
+
*
|
|
600
|
+
* @param text The text string to be converted to SCREAMING_CASE format.
|
|
601
|
+
* @returns The normalized text in SCREAMING_CASE format.
|
|
602
|
+
* @example 'HELLO_WORLD'
|
|
603
|
+
* @example 'I_LOVE_PROMPTBOOK'
|
|
604
|
+
* @public exported from `@promptbook/utils`
|
|
605
|
+
*/
|
|
606
|
+
function normalizeTo_SCREAMING_CASE(text) {
|
|
607
|
+
let charType;
|
|
608
|
+
let lastCharType = 'OTHER';
|
|
609
|
+
let normalizedName = '';
|
|
610
|
+
for (const char of text) {
|
|
611
|
+
let normalizedChar;
|
|
612
|
+
if (/^[a-z]$/.test(char)) {
|
|
613
|
+
charType = 'LOWERCASE';
|
|
614
|
+
normalizedChar = char.toUpperCase();
|
|
615
|
+
}
|
|
616
|
+
else if (/^[A-Z]$/.test(char)) {
|
|
617
|
+
charType = 'UPPERCASE';
|
|
618
|
+
normalizedChar = char;
|
|
619
|
+
}
|
|
620
|
+
else if (/^[0-9]$/.test(char)) {
|
|
621
|
+
charType = 'NUMBER';
|
|
622
|
+
normalizedChar = char;
|
|
623
|
+
}
|
|
624
|
+
else {
|
|
625
|
+
charType = 'OTHER';
|
|
626
|
+
normalizedChar = '_';
|
|
627
|
+
}
|
|
628
|
+
if (charType !== lastCharType &&
|
|
629
|
+
!(lastCharType === 'UPPERCASE' && charType === 'LOWERCASE') &&
|
|
630
|
+
!(lastCharType === 'NUMBER') &&
|
|
631
|
+
!(charType === 'NUMBER')) {
|
|
632
|
+
normalizedName += '_';
|
|
633
|
+
}
|
|
634
|
+
normalizedName += normalizedChar;
|
|
635
|
+
lastCharType = charType;
|
|
636
|
+
}
|
|
637
|
+
normalizedName = normalizedName.replace(/_+/g, '_');
|
|
638
|
+
normalizedName = normalizedName.replace(/_?\/_?/g, '/');
|
|
639
|
+
normalizedName = normalizedName.replace(/^_/, '');
|
|
640
|
+
normalizedName = normalizedName.replace(/_$/, '');
|
|
641
|
+
return normalizedName;
|
|
642
|
+
}
|
|
643
|
+
/**
|
|
644
|
+
* TODO: Tests
|
|
645
|
+
* > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: 'Moje tabule' })).toEqual('/VtG7sR9rRJqwNEdM2/Moje tabule');
|
|
646
|
+
* > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: 'ěščřžžýáíúů' })).toEqual('/VtG7sR9rRJqwNEdM2/escrzyaieuu');
|
|
647
|
+
* > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: ' ahoj ' })).toEqual('/VtG7sR9rRJqwNEdM2/ahoj');
|
|
648
|
+
* > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: ' ahoj_ahojAhoj ahoj ' })).toEqual('/VtG7sR9rRJqwNEdM2/ahoj-ahoj-ahoj-ahoj');
|
|
649
|
+
* TODO: [🌺] Use some intermediate util splitWords
|
|
650
|
+
*/
|
|
651
|
+
|
|
652
|
+
/**
|
|
653
|
+
* Normalizes a text string to snake_case format.
|
|
654
|
+
*
|
|
655
|
+
* @param text The text string to be converted to snake_case format.
|
|
656
|
+
* @returns The normalized text in snake_case format.
|
|
657
|
+
* @example 'hello_world'
|
|
658
|
+
* @example 'i_love_promptbook'
|
|
659
|
+
* @public exported from `@promptbook/utils`
|
|
660
|
+
*/
|
|
661
|
+
function normalizeTo_snake_case(text) {
|
|
662
|
+
return normalizeTo_SCREAMING_CASE(text).toLowerCase();
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
/**
|
|
666
|
+
* Global registry for storing and managing registered entities of a given type.
|
|
667
|
+
*
|
|
668
|
+
* Note: `$` is used to indicate that this function is not a pure function - it accesses and adds variables in global scope.
|
|
669
|
+
*
|
|
670
|
+
* @private internal utility, exported are only singleton instances of this class
|
|
671
|
+
*/
|
|
672
|
+
class $Register {
|
|
673
|
+
constructor(registerName) {
|
|
674
|
+
this.registerName = registerName;
|
|
675
|
+
const storageName = `_promptbook_${normalizeTo_snake_case(registerName)}`;
|
|
676
|
+
const globalScope = $getGlobalScope();
|
|
677
|
+
if (globalScope[storageName] === undefined) {
|
|
678
|
+
globalScope[storageName] = [];
|
|
679
|
+
}
|
|
680
|
+
else if (!Array.isArray(globalScope[storageName])) {
|
|
681
|
+
throw new UnexpectedError(`Expected (global) ${storageName} to be an array, but got ${typeof globalScope[storageName]}`);
|
|
682
|
+
}
|
|
683
|
+
this.storage = globalScope[storageName];
|
|
684
|
+
}
|
|
685
|
+
list() {
|
|
686
|
+
// <- TODO: ReadonlyDeep<ReadonlyArray<TRegistered>>
|
|
687
|
+
return this.storage;
|
|
688
|
+
}
|
|
689
|
+
register(registered) {
|
|
690
|
+
const { packageName, className } = registered;
|
|
691
|
+
const existingRegistrationIndex = this.storage.findIndex((item) => item.packageName === packageName && item.className === className);
|
|
692
|
+
const existingRegistration = this.storage[existingRegistrationIndex];
|
|
693
|
+
if (!existingRegistration) {
|
|
694
|
+
this.storage.push(registered);
|
|
695
|
+
}
|
|
696
|
+
else {
|
|
697
|
+
this.storage[existingRegistrationIndex] = registered;
|
|
698
|
+
}
|
|
699
|
+
return {
|
|
700
|
+
registerName: this.registerName,
|
|
701
|
+
packageName,
|
|
702
|
+
className,
|
|
703
|
+
get isDestroyed() {
|
|
704
|
+
return false;
|
|
705
|
+
},
|
|
706
|
+
destroy() {
|
|
707
|
+
throw new NotYetImplementedError(`Registration to ${this.registerName} is permanent in this version of Promptbook`);
|
|
708
|
+
},
|
|
709
|
+
};
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
/**
|
|
714
|
+
* Register for LLM tools.
|
|
715
|
+
*
|
|
716
|
+
* Note: `$` is used to indicate that this interacts with the global scope
|
|
717
|
+
* @singleton Only one instance of each register is created per build, but there can be more instances across different builds or environments.
|
|
718
|
+
* @public exported from `@promptbook/core`
|
|
719
|
+
*/
|
|
720
|
+
const $llmToolsRegister = new $Register('llm_execution_tools_constructors');
|
|
721
|
+
/**
|
|
722
|
+
* TODO: [®] DRY Register logic
|
|
723
|
+
*/
|
|
724
|
+
|
|
725
|
+
/**
|
|
726
|
+
* Registration of LLM provider
|
|
727
|
+
*
|
|
728
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
729
|
+
*
|
|
730
|
+
* @public exported from `@promptbook/ollama`
|
|
731
|
+
* @public exported from `@promptbook/wizzard`
|
|
732
|
+
* @public exported from `@promptbook/cli`
|
|
733
|
+
*/
|
|
734
|
+
const _OllamaRegistration = $llmToolsRegister.register(createOllamaExecutionTools);
|
|
735
|
+
/**
|
|
736
|
+
* TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
|
|
737
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
738
|
+
*/
|
|
739
|
+
|
|
740
|
+
export { BOOK_LANGUAGE_VERSION, OllamaExecutionTools, PROMPTBOOK_ENGINE_VERSION, _OllamaRegistration, createOllamaExecutionTools };
|
|
741
|
+
//# sourceMappingURL=index.es.js.map
|