@promptbook/openai 0.72.0-3 → 0.72.0-30

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.
Files changed (263) hide show
  1. package/README.md +84 -67
  2. package/esm/index.es.js +148 -37
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/src/_packages/browser.index.d.ts +3 -1
  5. package/esm/typings/src/_packages/cli.index.d.ts +20 -0
  6. package/esm/typings/src/_packages/core.index.d.ts +56 -28
  7. package/esm/typings/src/_packages/documents.index.d.ts +8 -0
  8. package/esm/typings/src/_packages/legacy-documents.index.d.ts +8 -0
  9. package/esm/typings/src/_packages/markdown-utils.index.d.ts +6 -0
  10. package/esm/typings/src/_packages/node.index.d.ts +18 -6
  11. package/esm/typings/src/_packages/pdf.index.d.ts +8 -0
  12. package/esm/typings/src/_packages/types.index.d.ts +57 -33
  13. package/esm/typings/src/_packages/utils.index.d.ts +2 -2
  14. package/esm/typings/src/_packages/website-crawler.index.d.ts +8 -0
  15. package/esm/typings/src/cli/cli-commands/about.d.ts +1 -1
  16. package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -1
  17. package/esm/typings/src/cli/cli-commands/make.d.ts +1 -1
  18. package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
  19. package/esm/typings/src/cli/cli-commands/test-command.d.ts +13 -0
  20. package/esm/typings/src/cli/main.d.ts +1 -1
  21. package/esm/typings/src/cli/promptbookCli.d.ts +1 -1
  22. package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
  23. package/esm/typings/src/collection/SimplePipelineCollection.d.ts +2 -2
  24. package/esm/typings/src/collection/collectionToJson.d.ts +1 -1
  25. package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +11 -6
  26. package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +1 -1
  27. package/esm/typings/src/collection/constructors/createCollectionFromPromise.d.ts +1 -1
  28. package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +1 -1
  29. package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +1 -1
  30. package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +5 -1
  31. package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +1 -1
  32. package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +1 -1
  33. package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +1 -1
  34. package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +1 -1
  35. package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.d.ts +11 -0
  36. package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.test.d.ts +4 -0
  37. package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +1 -1
  38. package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +1 -1
  39. package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +1 -1
  40. package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +1 -1
  41. package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +1 -1
  42. package/esm/typings/src/commands/TEMPLATE/templateCommandParser.d.ts +1 -1
  43. package/esm/typings/src/commands/URL/urlCommandParser.d.ts +1 -1
  44. package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +1 -1
  45. package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +1 -1
  46. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -1
  47. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +5 -5
  48. package/esm/typings/src/config.d.ts +35 -12
  49. package/esm/typings/src/conversion/pipelineStringToJson.d.ts +4 -15
  50. package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +1 -1
  51. package/esm/typings/src/conversion/validation/_importPipeline.d.ts +1 -1
  52. package/esm/typings/src/conversion/validation/validatePipeline.d.ts +5 -5
  53. package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceTools.d.ts +2 -2
  54. package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceToolsOptions.d.ts +3 -3
  55. package/esm/typings/src/{knowledge/dialogs → dialogs}/simple-prompt/SimplePromptInterfaceTools.d.ts +6 -6
  56. package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
  57. package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
  58. package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
  59. package/esm/typings/src/executables/$provideExecutablesForNode.d.ts +12 -0
  60. package/esm/typings/src/executables/apps/locateLibreoffice.d.ts +11 -0
  61. package/esm/typings/src/executables/apps/locatePandoc.d.ts +11 -0
  62. package/esm/typings/src/executables/locateApp.d.ts +33 -0
  63. package/esm/typings/src/executables/platforms/locateAppOnLinux.d.ts +12 -0
  64. package/esm/typings/src/executables/platforms/locateAppOnMacOs.d.ts +12 -0
  65. package/esm/typings/src/executables/platforms/locateAppOnWindows.d.ts +12 -0
  66. package/esm/typings/src/execution/{CommonExecutionToolsOptions.d.ts → CommonToolsOptions.d.ts} +1 -1
  67. package/esm/typings/src/execution/EmbeddingVector.d.ts +1 -1
  68. package/esm/typings/src/execution/Executables.d.ts +18 -0
  69. package/esm/typings/src/execution/ExecutionTools.d.ts +35 -9
  70. package/esm/typings/src/execution/FilesystemTools.d.ts +9 -0
  71. package/esm/typings/src/execution/LlmExecutionTools.d.ts +2 -2
  72. package/esm/typings/src/execution/PipelineExecutor.d.ts +1 -0
  73. package/esm/typings/src/execution/PipelineExecutorResult.d.ts +2 -2
  74. package/esm/typings/src/execution/assertsExecutionSuccessful.d.ts +3 -2
  75. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +31 -5
  76. package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +3 -0
  77. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +6 -12
  78. package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +7 -18
  79. package/esm/typings/src/execution/createPipelineExecutor/{30-executeFormatCells.d.ts → 30-executeFormatSubvalues.d.ts} +2 -6
  80. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +9 -19
  81. package/esm/typings/src/execution/embeddingVectorToString.d.ts +1 -1
  82. package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +11 -3
  83. package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +4 -0
  84. package/esm/typings/src/execution/utils/$provideExecutionToolsForNode.d.ts +13 -0
  85. package/esm/typings/src/execution/utils/addUsage.d.ts +1 -1
  86. package/esm/typings/src/execution/utils/forEachAsync.d.ts +2 -1
  87. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +2 -2
  88. package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +3 -2
  89. package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
  90. package/esm/typings/src/llm-providers/_common/{$llmToolsMetadataRegister.d.ts → register/$llmToolsMetadataRegister.d.ts} +4 -1
  91. package/esm/typings/src/llm-providers/_common/{$llmToolsRegister.d.ts → register/$llmToolsRegister.d.ts} +5 -2
  92. package/esm/typings/src/llm-providers/_common/{createLlmToolsFromConfigurationFromEnv.d.ts → register/$provideLlmToolsConfigurationFromEnv.d.ts} +3 -3
  93. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForCli.d.ts +15 -0
  94. package/esm/typings/src/llm-providers/_common/{getLlmToolsForTestingAndScriptsAndPlayground.d.ts → register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts} +4 -3
  95. package/esm/typings/src/llm-providers/_common/{createLlmToolsFromEnv.d.ts → register/$provideLlmToolsFromEnv.d.ts} +6 -5
  96. package/esm/typings/src/llm-providers/_common/{$registeredLlmToolsMessage.d.ts → register/$registeredLlmToolsMessage.d.ts} +5 -2
  97. package/esm/typings/src/llm-providers/_common/{LlmToolsConfiguration.d.ts → register/LlmToolsConfiguration.d.ts} +6 -5
  98. package/esm/typings/src/llm-providers/_common/{LlmToolsMetadata.d.ts → register/LlmToolsMetadata.d.ts} +5 -4
  99. package/esm/typings/src/llm-providers/_common/{LlmToolsOptions.d.ts → register/LlmToolsOptions.d.ts} +4 -1
  100. package/esm/typings/src/llm-providers/_common/{createLlmToolsFromConfiguration.d.ts → register/createLlmToolsFromConfiguration.d.ts} +12 -4
  101. package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +4 -1
  102. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  103. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +5 -5
  104. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  105. package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -2
  106. package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +4 -3
  107. package/esm/typings/src/llm-providers/anthropic-claude/register-constructor.d.ts +4 -3
  108. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +7 -1
  109. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +4 -3
  110. package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +1 -0
  111. package/esm/typings/src/llm-providers/azure-openai/register-configuration.d.ts +4 -3
  112. package/esm/typings/src/llm-providers/azure-openai/register-constructor.d.ts +4 -3
  113. package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +1 -1
  114. package/esm/typings/src/llm-providers/langtail/playground/playground.d.ts +3 -0
  115. package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +1 -1
  116. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +4 -4
  117. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +4 -4
  118. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +4 -4
  119. package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +1 -1
  120. package/esm/typings/src/llm-providers/multiple/playground/playground.d.ts +3 -0
  121. package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +1 -2
  122. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +2 -2
  123. package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +4 -4
  124. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
  125. package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +2 -1
  126. package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +5 -4
  127. package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +5 -4
  128. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +4 -4
  129. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts +16 -7
  130. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Response.d.ts +4 -4
  131. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Request.d.ts +7 -13
  132. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Response.d.ts +3 -3
  133. package/esm/typings/src/llm-providers/remote/interfaces/RemoteLlmExecutionToolsOptions.d.ts +11 -16
  134. package/esm/typings/src/llm-providers/remote/interfaces/RemoteServerOptions.d.ts +24 -9
  135. package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +3 -0
  136. package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -1
  137. package/esm/typings/src/personas/preparePersona.d.ts +3 -2
  138. package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +49 -0
  139. package/esm/typings/src/prepare/preparePipeline.d.ts +3 -2
  140. package/esm/typings/src/prepare/prepareTemplates.d.ts +4 -3
  141. package/esm/typings/src/scrapers/_common/Converter.d.ts +22 -0
  142. package/esm/typings/src/scrapers/_common/Scraper.d.ts +59 -0
  143. package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +11 -0
  144. package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.d.ts +5 -4
  145. package/esm/typings/src/scrapers/_common/register/$provideFilesystemForNode.d.ts +11 -0
  146. package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +12 -0
  147. package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +15 -0
  148. package/esm/typings/src/scrapers/_common/register/$registeredScrapersMessage.d.ts +12 -0
  149. package/esm/typings/src/scrapers/_common/register/$scrapersMetadataRegister.d.ts +13 -0
  150. package/esm/typings/src/scrapers/_common/register/$scrapersRegister.d.ts +13 -0
  151. package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +41 -0
  152. package/esm/typings/src/scrapers/_common/register/ScraperConstructor.d.ts +12 -0
  153. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +34 -0
  154. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
  155. package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +11 -0
  156. package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +43 -0
  157. package/esm/typings/src/scrapers/document/DocumentScraper.test.d.ts +4 -0
  158. package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +20 -0
  159. package/esm/typings/src/scrapers/document/playground/document-scraper-playground.d.ts +5 -0
  160. package/esm/typings/src/scrapers/document/register-constructor.d.ts +13 -0
  161. package/esm/typings/src/scrapers/document/register-metadata.d.ts +24 -0
  162. package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +43 -0
  163. package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.test.d.ts +4 -0
  164. package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +20 -0
  165. package/esm/typings/src/scrapers/document-legacy/playground/legacy-document-scraper-playground.d.ts +5 -0
  166. package/esm/typings/src/scrapers/document-legacy/register-constructor.d.ts +13 -0
  167. package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +24 -0
  168. package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +29 -0
  169. package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +20 -0
  170. package/esm/typings/src/scrapers/markdown/playground/markdown-scraper-playground.d.ts +5 -0
  171. package/esm/typings/src/scrapers/markdown/register-constructor.d.ts +13 -0
  172. package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +24 -0
  173. package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +40 -0
  174. package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +20 -0
  175. package/esm/typings/src/scrapers/pdf/playground/pdf-scraper-playground.d.ts +5 -0
  176. package/esm/typings/src/scrapers/pdf/register-constructor.d.ts +13 -0
  177. package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +24 -0
  178. package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +50 -0
  179. package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +20 -0
  180. package/esm/typings/src/scrapers/website/playground/website-scraper-playground.d.ts +5 -0
  181. package/esm/typings/src/scrapers/website/register-constructor.d.ts +13 -0
  182. package/esm/typings/src/scrapers/website/register-metadata.d.ts +24 -0
  183. package/esm/typings/src/scrapers/website/utils/createShowdownConverter.d.ts +7 -0
  184. package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +2 -2
  185. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  186. package/esm/typings/src/scripting/python/PythonExecutionTools.d.ts +3 -3
  187. package/esm/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +3 -3
  188. package/esm/typings/src/storage/{files-storage/FilesStorage.d.ts → file-cache-storage/FileCacheStorage.d.ts} +7 -5
  189. package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +10 -0
  190. package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.d.ts +2 -2
  191. package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +1 -1
  192. package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +1 -1
  193. package/esm/typings/src/storage/{utils → memory/utils}/PrefixStorage.d.ts +1 -1
  194. package/esm/typings/src/storage/{utils → memory/utils}/makePromptbookStorageFromWebStorage.d.ts +1 -1
  195. package/esm/typings/src/types/Arrayable.d.ts +1 -1
  196. package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +7 -0
  197. package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +4 -4
  198. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +10 -3
  199. package/esm/typings/src/types/PipelineJson/ParameterJson.d.ts +1 -1
  200. package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +1 -1
  201. package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +2 -2
  202. package/esm/typings/src/types/PipelineJson/TemplateJsonCommon.d.ts +2 -2
  203. package/esm/typings/src/types/Prompt.d.ts +2 -1
  204. package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +1 -4
  205. package/esm/typings/src/types/execution-report/executionReportJsonToString.d.ts +2 -1
  206. package/esm/typings/src/types/typeAliases.d.ts +27 -20
  207. package/esm/typings/src/utils/$Register.d.ts +20 -7
  208. package/esm/typings/src/utils/FromtoItems.d.ts +1 -1
  209. package/esm/typings/src/utils/arrayableToArray.d.ts +1 -1
  210. package/esm/typings/src/utils/emojis.d.ts +1 -1
  211. package/esm/typings/src/utils/execCommand/$execCommand.d.ts +14 -0
  212. package/esm/typings/src/utils/execCommand/$execCommands.d.ts +17 -0
  213. package/esm/typings/src/utils/execCommand/ExecCommandOptions.d.ts +19 -0
  214. package/esm/typings/src/utils/execCommand/execCommand.test.d.ts +1 -0
  215. package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +10 -0
  216. package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.test.d.ts +1 -0
  217. package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
  218. package/esm/typings/src/utils/files/extensionToMimeType.d.ts +8 -0
  219. package/esm/typings/src/utils/files/extensionToMimeType.test.d.ts +1 -0
  220. package/esm/typings/src/utils/files/getFileExtension.d.ts +8 -0
  221. package/esm/typings/src/utils/files/getFileExtension.test.d.ts +1 -0
  222. package/esm/typings/src/utils/files/isDirectoryExisting.d.ts +14 -0
  223. package/esm/typings/src/utils/files/isDirectoryExisting.test.d.ts +1 -0
  224. package/esm/typings/src/utils/files/isExecutable.d.ts +11 -0
  225. package/esm/typings/src/utils/files/isFileExisting.d.ts +13 -0
  226. package/esm/typings/src/utils/files/isFileExisting.test.d.ts +1 -0
  227. package/esm/typings/src/utils/files/listAllFiles.d.ts +17 -0
  228. package/esm/typings/src/utils/files/listAllFiles.test.d.ts +1 -0
  229. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +1 -1
  230. package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +1 -1
  231. package/esm/typings/src/utils/normalization/IKeywords.d.ts +2 -2
  232. package/esm/typings/src/utils/normalization/parseKeywords.d.ts +2 -2
  233. package/esm/typings/src/utils/normalization/parseKeywordsFromString.d.ts +2 -2
  234. package/esm/typings/src/utils/normalization/searchKeywords.d.ts +2 -2
  235. package/esm/typings/src/utils/organization/TODO_USE.d.ts +1 -1
  236. package/esm/typings/src/utils/organization/keepUnused.d.ts +1 -1
  237. package/esm/typings/src/utils/random/$randomSeed.d.ts +1 -1
  238. package/esm/typings/src/utils/sets/intersection.d.ts +1 -1
  239. package/esm/typings/src/utils/sets/union.d.ts +1 -1
  240. package/esm/typings/src/utils/unwrapResult.d.ts +4 -4
  241. package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -2
  242. package/package.json +5 -4
  243. package/umd/index.umd.js +148 -37
  244. package/umd/index.umd.js.map +1 -1
  245. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +0 -40
  246. package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +0 -37
  247. package/esm/typings/src/knowledge/prepare-knowledge/markdown/playground/markdown-knowledge-playground.d.ts +0 -2
  248. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +0 -14
  249. package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +0 -15
  250. package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +0 -22
  251. package/esm/typings/src/prepare/PrepareOptions.d.ts +0 -22
  252. package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +0 -10
  253. package/esm/typings/src/utils/files/$isDirectoryExisting.d.ts +0 -15
  254. package/esm/typings/src/utils/files/$isFileExisting.d.ts +0 -14
  255. package/esm/typings/src/utils/files/$listAllFiles.d.ts +0 -17
  256. /package/esm/typings/src/{knowledge/dialogs → dialogs}/user-interface-execution-tools.test.d.ts +0 -0
  257. /package/esm/typings/src/{knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts → executables/apps/locateLibreoffice.test.d.ts} +0 -0
  258. /package/esm/typings/src/{knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.test.d.ts → executables/apps/locatePandoc.test.d.ts} +0 -0
  259. /package/esm/typings/src/{storage/files-storage/utils/nameToSubfolderPath.test.d.ts → executables/locateApp.test.d.ts} +0 -0
  260. /package/esm/typings/src/{utils/files/$isDirectoryExisting.test.d.ts → scrapers/_common/prepareKnowledgePieces.test.d.ts} +0 -0
  261. /package/esm/typings/src/{knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts → scrapers/markdown/MarkdownScraper.test.d.ts} +0 -0
  262. /package/esm/typings/src/{utils/files/$isFileExisting.test.d.ts → scrapers/website/utils/createShowdownConverter.test.d.ts} +0 -0
  263. /package/esm/typings/src/{utils/files/$listAllFiles.test.d.ts → storage/file-cache-storage/utils/nameToSubfolderPath.test.d.ts} +0 -0
@@ -4,4 +4,4 @@
4
4
  * @deprecated use new javascript set methods instead @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
5
5
  * @public exported from `@promptbook/utils`
6
6
  */
7
- export declare function intersection<TItem>(...sets: Array<Set<TItem>>): Set<TItem>;
7
+ export declare function intersection<TItem>(...sets: ReadonlyArray<Set<TItem>>): Set<TItem>;
@@ -4,4 +4,4 @@
4
4
  * @deprecated use new javascript set methods instead @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
5
5
  * @public exported from `@promptbook/utils`
6
6
  */
7
- export declare function union<TItem>(...sets: Array<Set<TItem>>): Set<TItem>;
7
+ export declare function union<TItem>(...sets: ReadonlyArray<Set<TItem>>): Set<TItem>;
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Additional options for `unwrapResult`
3
3
  */
4
- interface UnwrapResultOptions {
4
+ type UnwrapResultOptions = {
5
5
  /**
6
6
  * If true, the text is trimmed before processing
7
7
  */
8
- isTrimmed?: boolean;
8
+ readonly isTrimmed?: boolean;
9
9
  /**
10
10
  * If true, the introduce sentence is removed
11
11
  *
@@ -15,8 +15,8 @@ interface UnwrapResultOptions {
15
15
  *
16
16
  * @default true
17
17
  */
18
- isIntroduceSentenceRemoved?: boolean;
19
- }
18
+ readonly isIntroduceSentenceRemoved?: boolean;
19
+ };
20
20
  /**
21
21
  * Removes quotes and optional introduce text from a string
22
22
  *
@@ -1,4 +1,4 @@
1
- import type { string_file_path } from '../../../types/typeAliases';
1
+ import type { string_filename } from '../../../types/typeAliases';
2
2
  import type { really_unknown } from '../../organization/really_unknown';
3
3
  /**
4
4
  * Tests if given string is valid URL.
@@ -6,4 +6,4 @@ import type { really_unknown } from '../../organization/really_unknown';
6
6
  * Note: This does not check if the file exists only if the path is valid
7
7
  * @public exported from `@promptbook/utils`
8
8
  */
9
- export declare function isValidFilePath(filePath: really_unknown): filePath is string_file_path;
9
+ export declare function isValidFilePath(filename: really_unknown): filename is string_filename;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptbook/openai",
3
- "version": "0.72.0-3",
3
+ "version": "0.72.0-30",
4
4
  "description": "Supercharge your use of large language models",
5
5
  "private": false,
6
6
  "sideEffects": false,
@@ -11,6 +11,7 @@
11
11
  "contributors": [
12
12
  "Pavol Hejný <me@pavolhejny.com> (https://www.pavolhejny.com/)"
13
13
  ],
14
+ "todo-0": "TODO: [❇️] Make better list of keywords",
14
15
  "keywords": [
15
16
  "ai",
16
17
  "llm",
@@ -51,11 +52,11 @@
51
52
  "module": "./esm/index.es.js",
52
53
  "typings": "./esm/typings/src/_packages/openai.index.d.ts",
53
54
  "peerDependencies": {
54
- "@promptbook/core": "0.72.0-3"
55
+ "@promptbook/core": "0.72.0-30"
55
56
  },
56
57
  "dependencies": {
57
58
  "colors": "1.4.0",
58
- "openai": "4.55.9",
59
- "spacetrim": "0.11.39"
59
+ "openai": "4.63.0",
60
+ "spacetrim": "0.11.59"
60
61
  }
61
62
  }
package/umd/index.umd.js CHANGED
@@ -14,8 +14,8 @@
14
14
  /**
15
15
  * The version of the Promptbook library
16
16
  */
17
- var PROMPTBOOK_VERSION = '0.72.0-2';
18
- // TODO:[main] !!!! List here all the versions and annotate + put into script
17
+ var PROMPTBOOK_VERSION = '0.72.0-29';
18
+ // TODO: [main] !!!! List here all the versions and annotate + put into script
19
19
 
20
20
  /*! *****************************************************************************
21
21
  Copyright (c) Microsoft Corporation.
@@ -1286,7 +1286,7 @@
1286
1286
  prompt: computeUsage("$5.00 / 1M tokens"),
1287
1287
  output: computeUsage("$15.00 / 1M tokens"),
1288
1288
  },
1289
- //TODO:[main] !!!!!! Add gpt-4o-mini-2024-07-18 and all others to be up to date
1289
+ //TODO: [main] !!! Add gpt-4o-mini-2024-07-18 and all others to be up to date
1290
1290
  },
1291
1291
  /**/
1292
1292
  /**/
@@ -1316,7 +1316,7 @@
1316
1316
  modelVariant: 'CHAT',
1317
1317
  modelTitle: 'o1-preview-2024-09-12',
1318
1318
  modelName: 'o1-preview-2024-09-12',
1319
- // <- TODO:[main] !!!!!! Some better system to organize theese date suffixes and versions
1319
+ // <- TODO: [main] !!! Some better system to organize theese date suffixes and versions
1320
1320
  pricing: {
1321
1321
  prompt: computeUsage("$15.00 / 1M tokens"),
1322
1322
  output: computeUsage("$60.00 / 1M tokens"),
@@ -1421,7 +1421,6 @@
1421
1421
  * @param options which are relevant are directly passed to the OpenAI client
1422
1422
  */
1423
1423
  function OpenAiExecutionTools(options) {
1424
- if (options === void 0) { options = {}; }
1425
1424
  this.options = options;
1426
1425
  /**
1427
1426
  * OpenAI API client.
@@ -1449,8 +1448,8 @@
1449
1448
  if (this.client === null) {
1450
1449
  openAiOptions = __assign({}, this.options);
1451
1450
  delete openAiOptions.isVerbose;
1452
- delete openAiOptions.user;
1453
- this.client = new OpenAI__default["default"](__assign({}, openAiOptions));
1451
+ delete openAiOptions.userId;
1452
+ this.client = new OpenAI__default["default"](openAiOptions);
1454
1453
  }
1455
1454
  return [2 /*return*/, this.client];
1456
1455
  });
@@ -1497,10 +1496,12 @@
1497
1496
  * Calls OpenAI API to use a chat model.
1498
1497
  */
1499
1498
  OpenAiExecutionTools.prototype.callChatModel = function (prompt) {
1499
+ var _a;
1500
1500
  return __awaiter(this, void 0, void 0, function () {
1501
1501
  var content, parameters, modelRequirements, format, client, modelName, modelSettings, rawPromptContent, rawRequest, start, complete, rawResponse, resultContent, usage;
1502
- return __generator(this, function (_a) {
1503
- switch (_a.label) {
1502
+ var _this = this;
1503
+ return __generator(this, function (_b) {
1504
+ switch (_b.label) {
1504
1505
  case 0:
1505
1506
  if (this.options.isVerbose) {
1506
1507
  console.info('💬 OpenAI callChatModel call', { prompt: prompt });
@@ -1508,7 +1509,7 @@
1508
1509
  content = prompt.content, parameters = prompt.parameters, modelRequirements = prompt.modelRequirements, format = prompt.format;
1509
1510
  return [4 /*yield*/, this.getClient()];
1510
1511
  case 1:
1511
- client = _a.sent();
1512
+ client = _b.sent();
1512
1513
  // TODO: [☂] Use here more modelRequirements
1513
1514
  if (modelRequirements.modelVariant !== 'CHAT') {
1514
1515
  throw new PipelineExecutionError('Use callChatModel only for CHAT variant');
@@ -1540,14 +1541,19 @@
1540
1541
  role: 'user',
1541
1542
  content: rawPromptContent,
1542
1543
  },
1543
- ], false), user: this.options.user });
1544
+ ], false), user: (_a = this.options.userId) === null || _a === void 0 ? void 0 : _a.toString() });
1544
1545
  start = getCurrentIsoDate();
1545
1546
  if (this.options.isVerbose) {
1546
1547
  console.info(colors__default["default"].bgWhite('rawRequest'), JSON.stringify(rawRequest, null, 4));
1547
1548
  }
1548
- return [4 /*yield*/, client.chat.completions.create(rawRequest)];
1549
+ return [4 /*yield*/, client.chat.completions.create(rawRequest).catch(function (error) {
1550
+ if (_this.options.isVerbose) {
1551
+ console.info(colors__default["default"].bgRed('error'), error);
1552
+ }
1553
+ throw error;
1554
+ })];
1549
1555
  case 2:
1550
- rawResponse = _a.sent();
1556
+ rawResponse = _b.sent();
1551
1557
  if (this.options.isVerbose) {
1552
1558
  console.info(colors__default["default"].bgWhite('rawResponse'), JSON.stringify(rawResponse, null, 4));
1553
1559
  }
@@ -1586,10 +1592,12 @@
1586
1592
  * Calls OpenAI API to use a complete model.
1587
1593
  */
1588
1594
  OpenAiExecutionTools.prototype.callCompletionModel = function (prompt) {
1595
+ var _a;
1589
1596
  return __awaiter(this, void 0, void 0, function () {
1590
1597
  var content, parameters, modelRequirements, client, modelName, modelSettings, rawPromptContent, rawRequest, start, complete, rawResponse, resultContent, usage;
1591
- return __generator(this, function (_a) {
1592
- switch (_a.label) {
1598
+ var _this = this;
1599
+ return __generator(this, function (_b) {
1600
+ switch (_b.label) {
1593
1601
  case 0:
1594
1602
  if (this.options.isVerbose) {
1595
1603
  console.info('🖋 OpenAI callCompletionModel call', { prompt: prompt });
@@ -1597,7 +1605,7 @@
1597
1605
  content = prompt.content, parameters = prompt.parameters, modelRequirements = prompt.modelRequirements;
1598
1606
  return [4 /*yield*/, this.getClient()];
1599
1607
  case 1:
1600
- client = _a.sent();
1608
+ client = _b.sent();
1601
1609
  // TODO: [☂] Use here more modelRequirements
1602
1610
  if (modelRequirements.modelVariant !== 'COMPLETION') {
1603
1611
  throw new PipelineExecutionError('Use callCompletionModel only for COMPLETION variant');
@@ -1612,14 +1620,19 @@
1612
1620
  // <- Note: [🧆]
1613
1621
  };
1614
1622
  rawPromptContent = replaceParameters(content, __assign(__assign({}, parameters), { modelName: modelName }));
1615
- rawRequest = __assign(__assign({}, modelSettings), { prompt: rawPromptContent, user: this.options.user });
1623
+ rawRequest = __assign(__assign({}, modelSettings), { prompt: rawPromptContent, user: (_a = this.options.userId) === null || _a === void 0 ? void 0 : _a.toString() });
1616
1624
  start = getCurrentIsoDate();
1617
1625
  if (this.options.isVerbose) {
1618
1626
  console.info(colors__default["default"].bgWhite('rawRequest'), JSON.stringify(rawRequest, null, 4));
1619
1627
  }
1620
- return [4 /*yield*/, client.completions.create(rawRequest)];
1628
+ return [4 /*yield*/, client.completions.create(rawRequest).catch(function (error) {
1629
+ if (_this.options.isVerbose) {
1630
+ console.info(colors__default["default"].bgRed('error'), error);
1631
+ }
1632
+ throw error;
1633
+ })];
1621
1634
  case 2:
1622
- rawResponse = _a.sent();
1635
+ rawResponse = _b.sent();
1623
1636
  if (this.options.isVerbose) {
1624
1637
  console.info(colors__default["default"].bgWhite('rawResponse'), JSON.stringify(rawResponse, null, 4));
1625
1638
  }
@@ -1657,6 +1670,7 @@
1657
1670
  OpenAiExecutionTools.prototype.callEmbeddingModel = function (prompt) {
1658
1671
  return __awaiter(this, void 0, void 0, function () {
1659
1672
  var content, parameters, modelRequirements, client, modelName, rawPromptContent, rawRequest, start, complete, rawResponse, resultContent, usage;
1673
+ var _this = this;
1660
1674
  return __generator(this, function (_a) {
1661
1675
  switch (_a.label) {
1662
1676
  case 0:
@@ -1681,7 +1695,12 @@
1681
1695
  if (this.options.isVerbose) {
1682
1696
  console.info(colors__default["default"].bgWhite('rawRequest'), JSON.stringify(rawRequest, null, 4));
1683
1697
  }
1684
- return [4 /*yield*/, client.embeddings.create(rawRequest)];
1698
+ return [4 /*yield*/, client.embeddings.create(rawRequest).catch(function (error) {
1699
+ if (_this.options.isVerbose) {
1700
+ console.info(colors__default["default"].bgRed('error'), error);
1701
+ }
1702
+ throw error;
1703
+ })];
1685
1704
  case 2:
1686
1705
  rawResponse = _a.sent();
1687
1706
  if (this.options.isVerbose) {
@@ -1834,14 +1853,13 @@
1834
1853
  }
1835
1854
  rawPromptContent = replaceParameters(content, __assign(__assign({}, parameters), { modelName: 'assistant' }));
1836
1855
  rawRequest = {
1837
- // [👨‍👨‍👧‍👧] ...modelSettings,
1838
- assistant_id: 'asst_CJCZzFCbBL0f2D4OWMXVTdBB',
1839
- // <- Note: This is not a private information, just ID of the assistant which is accessible only with correct API key
1856
+ // TODO: [👨‍👨‍👧‍👧] ...modelSettings,
1857
+ // TODO: [👨‍👨‍👧‍👧][🧠] What about system message for assistants, does it make sence - combination of OpenAI assistants with Promptbook Personas
1858
+ assistant_id: this.assistantId,
1840
1859
  thread: {
1841
1860
  messages: [
1842
- // TODO: !!!!!! Unhardcode
1843
- // TODO: !!!!!! Allow threads to be passed
1844
- { role: 'user', content: 'What is the meaning of life? I want breathtaking speech.' },
1861
+ // TODO: [🗯] !!!!!! Allow threads to be passed
1862
+ { role: 'user', content: rawPromptContent },
1845
1863
  ],
1846
1864
  },
1847
1865
  // !!!!!! user: this.options.user,
@@ -1867,7 +1885,7 @@
1867
1885
  messageDelta.content[0].type === 'text') {
1868
1886
  console.info('messageDelta', (_a = messageDelta.content[0].text) === null || _a === void 0 ? void 0 : _a.value);
1869
1887
  }
1870
- // TODO: !!!!!! report progress
1888
+ // <- TODO: [🐚] Make streaming and running tasks working
1871
1889
  });
1872
1890
  stream.on('messageCreated', function (message) {
1873
1891
  if (_this.options.isVerbose) {
@@ -1899,14 +1917,16 @@
1899
1917
  // eslint-disable-next-line prefer-const
1900
1918
  complete = getCurrentIsoDate();
1901
1919
  usage = UNCERTAIN_USAGE;
1902
- // TODO: !!!!!!> = computeOpenAiUsage(content, resultContent || '', rawResponse);
1920
+ // <- TODO: [🥘] Compute real usage for assistant
1921
+ // ?> const usage = computeOpenAiUsage(content, resultContent || '', rawResponse);
1903
1922
  if (resultContent === null) {
1904
1923
  throw new PipelineExecutionError('No response message from OpenAI');
1905
1924
  }
1906
1925
  return [2 /*return*/, $asDeeplyFrozenSerializableJson('OpenAiAssistantExecutionTools ChatPromptResult', {
1907
1926
  content: resultContent,
1908
1927
  modelName: 'assistant',
1909
- // <- TODO: !!!!!! Can we detect really used model: rawResponse.model || modelName,
1928
+ // <- TODO: [🥘] Detect used model in assistant
1929
+ // ?> model: rawResponse.model || modelName,
1910
1930
  timing: {
1911
1931
  start: start,
1912
1932
  complete: complete,
@@ -1924,7 +1944,6 @@
1924
1944
  return OpenAiAssistantExecutionTools;
1925
1945
  }(OpenAiExecutionTools));
1926
1946
  /**
1927
- * TODO: !!!!!! DO not use colors - can be used in browser
1928
1947
  * TODO: [🧠][🧙‍♂️] Maybe there can be some wizzard for thoose who want to use just OpenAI
1929
1948
  * TODO: Maybe make custom OpenAiError
1930
1949
  * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
@@ -1982,6 +2001,85 @@
1982
2001
  return Function('return this')();
1983
2002
  }
1984
2003
 
2004
+ /**
2005
+ * @@@
2006
+ *
2007
+ * @param text @@@
2008
+ * @returns @@@
2009
+ * @example 'HELLO_WORLD'
2010
+ * @example 'I_LOVE_PROMPTBOOK'
2011
+ * @public exported from `@promptbook/utils`
2012
+ */
2013
+ function normalizeTo_SCREAMING_CASE(text) {
2014
+ var e_1, _a;
2015
+ var charType;
2016
+ var lastCharType = 'OTHER';
2017
+ var normalizedName = '';
2018
+ try {
2019
+ for (var text_1 = __values(text), text_1_1 = text_1.next(); !text_1_1.done; text_1_1 = text_1.next()) {
2020
+ var char = text_1_1.value;
2021
+ var normalizedChar = void 0;
2022
+ if (/^[a-z]$/.test(char)) {
2023
+ charType = 'LOWERCASE';
2024
+ normalizedChar = char.toUpperCase();
2025
+ }
2026
+ else if (/^[A-Z]$/.test(char)) {
2027
+ charType = 'UPPERCASE';
2028
+ normalizedChar = char;
2029
+ }
2030
+ else if (/^[0-9]$/.test(char)) {
2031
+ charType = 'NUMBER';
2032
+ normalizedChar = char;
2033
+ }
2034
+ else {
2035
+ charType = 'OTHER';
2036
+ normalizedChar = '_';
2037
+ }
2038
+ if (charType !== lastCharType &&
2039
+ !(lastCharType === 'UPPERCASE' && charType === 'LOWERCASE') &&
2040
+ !(lastCharType === 'NUMBER') &&
2041
+ !(charType === 'NUMBER')) {
2042
+ normalizedName += '_';
2043
+ }
2044
+ normalizedName += normalizedChar;
2045
+ lastCharType = charType;
2046
+ }
2047
+ }
2048
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
2049
+ finally {
2050
+ try {
2051
+ if (text_1_1 && !text_1_1.done && (_a = text_1.return)) _a.call(text_1);
2052
+ }
2053
+ finally { if (e_1) throw e_1.error; }
2054
+ }
2055
+ normalizedName = normalizedName.replace(/_+/g, '_');
2056
+ normalizedName = normalizedName.replace(/_?\/_?/g, '/');
2057
+ normalizedName = normalizedName.replace(/^_/, '');
2058
+ normalizedName = normalizedName.replace(/_$/, '');
2059
+ return normalizedName;
2060
+ }
2061
+ /**
2062
+ * TODO: Tests
2063
+ * > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: 'Moje tabule' })).toEqual('/VtG7sR9rRJqwNEdM2/Moje tabule');
2064
+ * > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: 'ěščřžžýáíúů' })).toEqual('/VtG7sR9rRJqwNEdM2/escrzyaieuu');
2065
+ * > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: ' ahoj ' })).toEqual('/VtG7sR9rRJqwNEdM2/ahoj');
2066
+ * > expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: ' ahoj_ahojAhoj ahoj ' })).toEqual('/VtG7sR9rRJqwNEdM2/ahoj-ahoj-ahoj-ahoj');
2067
+ * TODO: [🌺] Use some intermediate util splitWords
2068
+ */
2069
+
2070
+ /**
2071
+ * @@@
2072
+ *
2073
+ * @param text @@@
2074
+ * @returns @@@
2075
+ * @example 'hello_world'
2076
+ * @example 'i_love_promptbook'
2077
+ * @public exported from `@promptbook/utils`
2078
+ */
2079
+ function normalizeTo_snake_case(text) {
2080
+ return normalizeTo_SCREAMING_CASE(text).toLowerCase();
2081
+ }
2082
+
1985
2083
  /**
1986
2084
  * Register is @@@
1987
2085
  *
@@ -1990,9 +2088,9 @@
1990
2088
  * @private internal utility, exported are only signleton instances of this class
1991
2089
  */
1992
2090
  var $Register = /** @class */ (function () {
1993
- function $Register(storageName) {
1994
- this.storageName = storageName;
1995
- storageName = "_promptbook_".concat(storageName);
2091
+ function $Register(registerName) {
2092
+ this.registerName = registerName;
2093
+ var storageName = "_promptbook_".concat(normalizeTo_snake_case(registerName));
1996
2094
  var globalScope = $getGlobalScope();
1997
2095
  if (globalScope[storageName] === undefined) {
1998
2096
  globalScope[storageName] = [];
@@ -2003,11 +2101,10 @@
2003
2101
  this.storage = globalScope[storageName];
2004
2102
  }
2005
2103
  $Register.prototype.list = function () {
2006
- // <- TODO: ReadonlyDeep<Array<TRegistered>>
2104
+ // <- TODO: ReadonlyDeep<ReadonlyArray<TRegistered>>
2007
2105
  return this.storage;
2008
2106
  };
2009
2107
  $Register.prototype.register = function (registered) {
2010
- // <- TODO: What to return here
2011
2108
  var packageName = registered.packageName, className = registered.className;
2012
2109
  var existingRegistrationIndex = this.storage.findIndex(function (item) { return item.packageName === packageName && item.className === className; });
2013
2110
  var existingRegistration = this.storage[existingRegistrationIndex];
@@ -2017,6 +2114,17 @@
2017
2114
  else {
2018
2115
  this.storage[existingRegistrationIndex] = registered;
2019
2116
  }
2117
+ return {
2118
+ registerName: this.registerName,
2119
+ packageName: packageName,
2120
+ className: className,
2121
+ get isDestroyed() {
2122
+ return false;
2123
+ },
2124
+ destroy: function () {
2125
+ throw new NotYetImplementedError("Registration to ".concat(this.registerName, " is permanent in this version of Promptbook"));
2126
+ },
2127
+ };
2020
2128
  };
2021
2129
  return $Register;
2022
2130
  }());
@@ -2029,11 +2137,14 @@
2029
2137
  * @public exported from `@promptbook/core`
2030
2138
  */
2031
2139
  var $llmToolsRegister = new $Register('llm_execution_tools_constructors');
2140
+ /**
2141
+ * TODO: [®] DRY Register logic
2142
+ */
2032
2143
 
2033
2144
  /**
2034
- * @@@ registration2
2145
+ * Registration of LLM provider
2035
2146
  *
2036
- * Note: [🏐] Configurations registrations are done in @@@ BUT constructor @@@
2147
+ * Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
2037
2148
  *
2038
2149
  * @public exported from `@promptbook/openai`
2039
2150
  * @public exported from `@promptbook/cli`