@promptbook/vercel 0.92.0-9 → 0.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/README.md +1 -5
  2. package/esm/index.es.js +22 -12
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/src/_packages/browser.index.d.ts +2 -0
  5. package/esm/typings/src/_packages/core.index.d.ts +26 -14
  6. package/esm/typings/src/_packages/types.index.d.ts +6 -2
  7. package/esm/typings/src/collection/PipelineCollection.d.ts +0 -2
  8. package/esm/typings/src/collection/SimplePipelineCollection.d.ts +1 -1
  9. package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +6 -6
  10. package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +0 -2
  11. package/esm/typings/src/commands/FORMFACTOR/formfactorCommandParser.d.ts +1 -1
  12. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -1
  13. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +36 -28
  14. package/esm/typings/src/config.d.ts +41 -11
  15. package/esm/typings/src/constants.d.ts +43 -2
  16. package/esm/typings/src/conversion/parsePipeline.d.ts +2 -2
  17. package/esm/typings/src/errors/0-BoilerplateError.d.ts +2 -2
  18. package/esm/typings/src/errors/CollectionError.d.ts +1 -1
  19. package/esm/typings/src/executables/$provideExecutablesForNode.d.ts +1 -1
  20. package/esm/typings/src/executables/apps/locateLibreoffice.d.ts +2 -1
  21. package/esm/typings/src/executables/apps/locatePandoc.d.ts +2 -1
  22. package/esm/typings/src/executables/locateApp.d.ts +2 -2
  23. package/esm/typings/src/executables/platforms/locateAppOnLinux.d.ts +2 -1
  24. package/esm/typings/src/executables/platforms/locateAppOnMacOs.d.ts +2 -1
  25. package/esm/typings/src/executables/platforms/locateAppOnWindows.d.ts +2 -1
  26. package/esm/typings/src/execution/AbstractTaskResult.d.ts +1 -1
  27. package/esm/typings/src/execution/CommonToolsOptions.d.ts +3 -3
  28. package/esm/typings/src/execution/ExecutionTask.d.ts +19 -1
  29. package/esm/typings/src/execution/LlmExecutionToolsConstructor.d.ts +2 -1
  30. package/esm/typings/src/execution/PipelineExecutorResult.d.ts +4 -2
  31. package/esm/typings/src/execution/PromptbookFetch.d.ts +1 -1
  32. package/esm/typings/src/execution/ScriptExecutionTools.d.ts +1 -1
  33. package/esm/typings/src/execution/createPipelineExecutor/$OngoingTaskResult.d.ts +12 -9
  34. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +13 -10
  35. package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +12 -9
  36. package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +15 -3
  37. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +21 -15
  38. package/esm/typings/src/execution/createPipelineExecutor/computeCosineSimilarity.d.ts +13 -0
  39. package/esm/typings/src/execution/createPipelineExecutor/filterJustOutputParameters.d.ts +7 -6
  40. package/esm/typings/src/execution/createPipelineExecutor/getContextForTask.d.ts +5 -1
  41. package/esm/typings/src/execution/createPipelineExecutor/getExamplesForTask.d.ts +1 -1
  42. package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTask.d.ts +12 -9
  43. package/esm/typings/src/execution/createPipelineExecutor/getReservedParametersForTask.d.ts +18 -5
  44. package/esm/typings/src/execution/createPipelineExecutor/knowledgePiecesToString.d.ts +9 -0
  45. package/esm/typings/src/execution/execution-report/ExecutionReportJson.d.ts +1 -1
  46. package/esm/typings/src/execution/execution-report/ExecutionReportString.d.ts +1 -1
  47. package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +4 -4
  48. package/esm/typings/src/execution/utils/checkExpectations.d.ts +3 -3
  49. package/esm/typings/src/execution/utils/uncertainNumber.d.ts +3 -2
  50. package/esm/typings/src/execution/utils/usageToWorktime.d.ts +1 -1
  51. package/esm/typings/src/formats/_common/{FormatDefinition.d.ts → FormatParser.d.ts} +8 -6
  52. package/esm/typings/src/formats/_common/FormatSubvalueParser.d.ts +66 -0
  53. package/esm/typings/src/formats/csv/CsvFormatParser.d.ts +17 -0
  54. package/esm/typings/src/formats/csv/CsvSettings.d.ts +2 -2
  55. package/esm/typings/src/formats/csv/utils/csvParse.d.ts +12 -0
  56. package/esm/typings/src/formats/csv/utils/isValidCsvString.d.ts +1 -1
  57. package/esm/typings/src/formats/index.d.ts +2 -2
  58. package/esm/typings/src/formats/json/JsonFormatParser.d.ts +19 -0
  59. package/esm/typings/src/formats/json/utils/isValidJsonString.d.ts +1 -1
  60. package/esm/typings/src/formats/json/utils/jsonParse.d.ts +0 -3
  61. package/esm/typings/src/formats/text/{TextFormatDefinition.d.ts → TextFormatParser.d.ts} +7 -7
  62. package/esm/typings/src/formats/xml/XmlFormatParser.d.ts +19 -0
  63. package/esm/typings/src/formats/xml/utils/isValidXmlString.d.ts +1 -1
  64. package/esm/typings/src/formfactors/_boilerplate/BoilerplateFormfactorDefinition.d.ts +3 -2
  65. package/esm/typings/src/formfactors/_common/AbstractFormfactorDefinition.d.ts +16 -7
  66. package/esm/typings/src/formfactors/_common/FormfactorDefinition.d.ts +3 -1
  67. package/esm/typings/src/formfactors/_common/string_formfactor_name.d.ts +2 -1
  68. package/esm/typings/src/formfactors/chatbot/ChatbotFormfactorDefinition.d.ts +2 -2
  69. package/esm/typings/src/formfactors/completion/CompletionFormfactorDefinition.d.ts +29 -0
  70. package/esm/typings/src/formfactors/generator/GeneratorFormfactorDefinition.d.ts +2 -1
  71. package/esm/typings/src/formfactors/generic/GenericFormfactorDefinition.d.ts +2 -2
  72. package/esm/typings/src/formfactors/index.d.ts +33 -8
  73. package/esm/typings/src/formfactors/matcher/MatcherFormfactorDefinition.d.ts +4 -2
  74. package/esm/typings/src/formfactors/sheets/SheetsFormfactorDefinition.d.ts +3 -2
  75. package/esm/typings/src/formfactors/translator/TranslatorFormfactorDefinition.d.ts +3 -2
  76. package/esm/typings/src/high-level-abstractions/index.d.ts +2 -2
  77. package/esm/typings/src/llm-providers/_common/register/$llmToolsMetadataRegister.d.ts +3 -3
  78. package/esm/typings/src/llm-providers/_common/register/$llmToolsRegister.d.ts +3 -3
  79. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts +4 -4
  80. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts +4 -3
  81. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsFromEnv.d.ts +18 -5
  82. package/esm/typings/src/llm-providers/_common/register/LlmToolsConfiguration.d.ts +11 -4
  83. package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +21 -42
  84. package/esm/typings/src/llm-providers/_common/register/LlmToolsOptions.d.ts +9 -2
  85. package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.d.ts +13 -4
  86. package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +10 -5
  87. package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +11 -3
  88. package/esm/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +3 -3
  89. package/esm/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +5 -5
  90. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +6 -0
  91. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  92. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  93. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +4 -4
  94. package/esm/typings/src/llm-providers/deepseek/deepseek-models.d.ts +1 -1
  95. package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
  96. package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +1 -1
  97. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
  98. package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +2 -2
  99. package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +2 -2
  100. package/esm/typings/src/migrations/migratePipeline.d.ts +9 -0
  101. package/esm/typings/src/other/templates/getBookTemplates.d.ts +2 -2
  102. package/esm/typings/src/pipeline/PipelineInterface/PipelineInterface.d.ts +3 -3
  103. package/esm/typings/src/pipeline/PipelineInterface/constants.d.ts +1 -1
  104. package/esm/typings/src/pipeline/PipelineInterface/getPipelineInterface.d.ts +1 -1
  105. package/esm/typings/src/pipeline/PipelineInterface/isPipelineImplementingInterface.d.ts +5 -4
  106. package/esm/typings/src/pipeline/PipelineInterface/isPipelineInterfacesEqual.d.ts +1 -1
  107. package/esm/typings/src/pipeline/PipelineJson/CommonTaskJson.d.ts +10 -7
  108. package/esm/typings/src/pipeline/PipelineJson/ParameterJson.d.ts +1 -1
  109. package/esm/typings/src/pipeline/PipelineJson/PipelineJson.d.ts +3 -2
  110. package/esm/typings/src/pipeline/PipelineString.d.ts +3 -1
  111. package/esm/typings/src/pipeline/book-notation.d.ts +2 -2
  112. package/esm/typings/src/postprocessing/utils/extractBlock.d.ts +1 -1
  113. package/esm/typings/src/postprocessing/utils/extractJsonBlock.d.ts +2 -2
  114. package/esm/typings/src/prepare/prepareTasks.d.ts +8 -5
  115. package/esm/typings/src/remote-server/openapi.d.ts +1 -1
  116. package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Response.d.ts +1 -1
  117. package/esm/typings/src/remote-server/startRemoteServer.d.ts +1 -1
  118. package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +7 -6
  119. package/esm/typings/src/scrapers/_boilerplate/BoilerplateScraper.d.ts +3 -3
  120. package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +1 -1
  121. package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +1 -1
  122. package/esm/typings/src/scrapers/_common/Converter.d.ts +3 -1
  123. package/esm/typings/src/scrapers/_common/Scraper.d.ts +4 -3
  124. package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +4 -2
  125. package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +2 -2
  126. package/esm/typings/src/scrapers/_common/register/$provideFilesystemForNode.d.ts +2 -1
  127. package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +6 -3
  128. package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +3 -5
  129. package/esm/typings/src/scrapers/_common/register/$scrapersMetadataRegister.d.ts +3 -3
  130. package/esm/typings/src/scrapers/_common/register/$scrapersRegister.d.ts +3 -2
  131. package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +8 -5
  132. package/esm/typings/src/scrapers/_common/register/ScraperConstructor.d.ts +2 -1
  133. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +6 -5
  134. package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +3 -1
  135. package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -1
  136. package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +2 -1
  137. package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +4 -1
  138. package/esm/typings/src/scrapers/markitdown/MarkitdownScraper.d.ts +1 -1
  139. package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +2 -1
  140. package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +3 -4
  141. package/esm/typings/src/scripting/javascript/JavascriptExecutionTools.d.ts +1 -1
  142. package/esm/typings/src/scripting/javascript/postprocessing-functions.d.ts +5 -1
  143. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  144. package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +1 -1
  145. package/esm/typings/src/storage/file-cache-storage/FileCacheStorage.d.ts +12 -5
  146. package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +4 -2
  147. package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.d.ts +2 -1
  148. package/esm/typings/src/storage/local-storage/getIndexedDbStorage.d.ts +11 -0
  149. package/esm/typings/src/storage/local-storage/utils/IndexedDbStorageOptions.d.ts +14 -0
  150. package/esm/typings/src/storage/local-storage/utils/makePromptbookStorageFromIndexedDb.d.ts +8 -0
  151. package/esm/typings/src/storage/local-storage/utils/makePromptbookStorageFromWebStorage.d.ts +2 -1
  152. package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +2 -1
  153. package/esm/typings/src/types/ModelRequirements.d.ts +2 -2
  154. package/esm/typings/src/types/ModelVariant.d.ts +5 -5
  155. package/esm/typings/src/types/typeAliases.d.ts +22 -19
  156. package/esm/typings/src/utils/$Register.d.ts +8 -7
  157. package/esm/typings/src/utils/editable/edit-pipeline-string/addPipelineCommand.d.ts +2 -2
  158. package/esm/typings/src/utils/editable/edit-pipeline-string/deflatePipeline.d.ts +4 -1
  159. package/esm/typings/src/utils/editable/utils/isFlatPipeline.d.ts +2 -1
  160. package/esm/typings/src/utils/editable/utils/stringifyPipelineJson.d.ts +1 -1
  161. package/esm/typings/src/utils/environment/$getGlobalScope.d.ts +2 -1
  162. package/esm/typings/src/utils/expectation-counters/index.d.ts +1 -1
  163. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +2 -2
  164. package/esm/typings/src/utils/markdown/extractAllListItemsFromMarkdown.d.ts +1 -1
  165. package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +2 -2
  166. package/esm/typings/src/utils/normalization/nameToUriPart.d.ts +4 -4
  167. package/esm/typings/src/utils/normalization/nameToUriParts.d.ts +4 -4
  168. package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +3 -3
  169. package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +3 -3
  170. package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +4 -4
  171. package/esm/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +3 -3
  172. package/esm/typings/src/utils/normalization/removeDiacritics.d.ts +3 -3
  173. package/esm/typings/src/utils/normalization/searchKeywords.d.ts +4 -1
  174. package/esm/typings/src/utils/normalization/titleToName.d.ts +4 -4
  175. package/esm/typings/src/utils/organization/TODO_USE.d.ts +1 -1
  176. package/esm/typings/src/utils/organization/empty_object.d.ts +2 -2
  177. package/esm/typings/src/utils/organization/just.d.ts +1 -1
  178. package/esm/typings/src/utils/organization/just_empty_object.d.ts +4 -4
  179. package/esm/typings/src/utils/organization/keepUnused.d.ts +1 -1
  180. package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.d.ts +7 -7
  181. package/esm/typings/src/utils/removeQuotes.d.ts +2 -2
  182. package/esm/typings/src/utils/serialization/clonePipeline.d.ts +4 -3
  183. package/esm/typings/src/utils/serialization/deepClone.d.ts +5 -1
  184. package/esm/typings/src/utils/trimCodeBlock.d.ts +1 -1
  185. package/esm/typings/src/utils/trimEndOfCodeBlock.d.ts +1 -1
  186. package/esm/typings/src/utils/unwrapResult.d.ts +2 -2
  187. package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +3 -3
  188. package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +5 -4
  189. package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +1 -1
  190. package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +1 -1
  191. package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +1 -1
  192. package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +1 -1
  193. package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +1 -1
  194. package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +1 -1
  195. package/esm/typings/src/version.d.ts +2 -1
  196. package/esm/typings/src/wizzard/wizzard.d.ts +1 -1
  197. package/package.json +14 -2
  198. package/umd/index.umd.js +22 -12
  199. package/umd/index.umd.js.map +1 -1
  200. package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +0 -31
  201. package/esm/typings/src/formats/csv/CsvFormatDefinition.d.ts +0 -17
  202. package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +0 -19
  203. package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +0 -19
  204. /package/esm/typings/src/llm-providers/{multiple → _multiple}/MultipleLlmExecutionTools.d.ts +0 -0
  205. /package/esm/typings/src/llm-providers/{multiple → _multiple}/joinLlmExecutionTools.d.ts +0 -0
  206. /package/esm/typings/src/llm-providers/{multiple → _multiple}/playground/playground.d.ts +0 -0
@@ -2,7 +2,10 @@ import type { ExecutionTools } from '../../execution/ExecutionTools';
2
2
  import type { PromptbookStorage } from '../_common/PromptbookStorage';
3
3
  import type { FileCacheStorageOptions } from './FileCacheStorageOptions';
4
4
  /**
5
- * @@@
5
+ * A storage implementation that caches data in files organized in a directory structure.
6
+ * Provides methods for retrieving, storing, and managing cached data on the filesystem.
7
+ *
8
+ * This class implements the PromptbookStorage interface for filesystem-based caching.
6
9
  *
7
10
  * @public exported from `@promptbook/node`
8
11
  */
@@ -11,19 +14,23 @@ export declare class FileCacheStorage<TItem> implements PromptbookStorage<TItem>
11
14
  private readonly options;
12
15
  constructor(tools: Required<Pick<ExecutionTools, 'fs'>>, options: FileCacheStorageOptions);
13
16
  /**
14
- * @@@
17
+ * Converts a storage key to a filesystem path where the data should be stored.
18
+ * Creates a consistent, deterministic file path based on the key string.
15
19
  */
16
20
  private getFilenameForKey;
17
21
  /**
18
- * @@@ Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object.
22
+ * Returns the current value associated with the given key, or null if the given key does not exist.
23
+ * Retrieves the cached data from the file system storage.
19
24
  */
20
25
  getItem(key: string): Promise<TItem | null>;
21
26
  /**
22
- * @@@ Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously.
27
+ * Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously.
28
+ * Persists data to the file system, creating necessary directory structure if it doesn't exist.
23
29
  */
24
30
  setItem(key: string, value: TItem): Promise<void>;
25
31
  /**
26
- * @@@ Removes the key/value pair with the given key from the list associated with the object, if a key/value pair with the given key exists.
32
+ * Removes the key/value pair with the given key from the storage, if a key/value pair with the given key exists.
33
+ * Deletes the corresponding file from the filesystem.
27
34
  */
28
35
  removeItem(key: string): Promise<void>;
29
36
  }
@@ -1,10 +1,12 @@
1
1
  import type { string_dirname } from '../../types/typeAliases';
2
2
  /**
3
- * @@@
3
+ * Configuration options for the FileCacheStorage implementation.
4
+ * Defines how and where file cache data should be stored and managed.
4
5
  */
5
6
  export type FileCacheStorageOptions = {
6
7
  /**
7
- * @@@
8
+ * The absolute path to the root directory where cache files will be stored.
9
+ * This directory must exist and be writable by the application.
8
10
  */
9
11
  rootFolderPath: string_dirname;
10
12
  };
@@ -1,6 +1,7 @@
1
1
  import type { string_name } from '../../../types/typeAliases';
2
2
  /**
3
- * @@@
3
+ * Converts a name to a properly formatted subfolder path for cache storage.
4
+ * Handles normalization and path formatting to create consistent cache directory structures.
4
5
  *
5
6
  * @private for `FileCacheStorage`
6
7
  */
@@ -0,0 +1,11 @@
1
+ import type { PromptbookStorage } from '../_common/PromptbookStorage';
2
+ import type { IndexedDbStorageOptions } from './utils/IndexedDbStorageOptions';
3
+ /**
4
+ * Gets wrapper around IndexedDB which can be used as PromptbookStorage
5
+ *
6
+ * @public exported from `@promptbook/browser`
7
+ */
8
+ export declare function getIndexedDbStorage<TItem>(options: IndexedDbStorageOptions): PromptbookStorage<TItem>;
9
+ /**
10
+ * Note: [🔵] Code in this file should never be published outside of `@promptbook/browser`
11
+ */
@@ -0,0 +1,14 @@
1
+ import type { string_name } from '../../../types/typeAliases';
2
+ /**
3
+ * Options for IndexedDB storage
4
+ */
5
+ export type IndexedDbStorageOptions = {
6
+ /**
7
+ * Name of the database
8
+ */
9
+ databaseName: string_name;
10
+ /**
11
+ * Name of the object store (table) in the database
12
+ */
13
+ storeName: string_name;
14
+ };
@@ -0,0 +1,8 @@
1
+ import type { PromptbookStorage } from '../../_common/PromptbookStorage';
2
+ import type { IndexedDbStorageOptions } from './IndexedDbStorageOptions';
3
+ /**
4
+ * Creates a PromptbookStorage backed by IndexedDB.
5
+ * Uses a single object store named 'promptbook'.
6
+ * @private for `getIndexedDbStorage`
7
+ */
8
+ export declare function makePromptbookStorageFromIndexedDb<TValue>(options: IndexedDbStorageOptions): PromptbookStorage<TValue>;
@@ -1,6 +1,7 @@
1
1
  import type { PromptbookStorage } from '../../_common/PromptbookStorage';
2
2
  /**
3
- * @@@
3
+ * Creates a Promptbook storage interface from a web storage object.
4
+ * Facilitates using Web Storage (localStorage/sessionStorage) as a storage backend.
4
5
  *
5
6
  * @private for `getLocalStorage` and `getSessionStorage`
6
7
  */
@@ -1,5 +1,6 @@
1
1
  /**
2
- * @@@
2
+ * Defines strategies for handling intermediate files during pipeline execution.
3
+ * Controls how temporary or intermediate files are managed throughout processing.
3
4
  */
4
5
  export type IntermediateFilesStrategy = 'HIDE_AND_CLEAN' | 'HIDE_AND_KEEP';
5
6
  /**
@@ -93,9 +93,9 @@ export type CommonModelRequirements = {
93
93
  readonly maxTokens?: number;
94
94
  };
95
95
  /**
96
- * TODO: [🧠][🈁] `seed` should maybe be somewhere else (not in `ModelRequirements`) (simmilar that `user` identification is not here)
96
+ * TODO: [🧠][🈁] `seed` should maybe be somewhere else (not in `ModelRequirements`) (similar that `user` identification is not here)
97
97
  * TODO: [🧠][💱] Add more model options: `stop_token`, `logit_bias`, `logprobs` (`top_logprobs`), `top_k`, `top_p`, `presence_penalty`, `frequency_penalty`, `bestOf`, `logitBias`, `logitBiasType`,...
98
- * [💱] Probbably keep using just `temperature` in Promptbook (not `top_k` and `top_p`)
98
+ * [💱] Probably keep using just `temperature` in Promptbook (not `top_k` and `top_p`)
99
99
  * TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
100
100
  * TODO: Maybe figure out better word than "variant"
101
101
  * TODO: Add here more requirement options like max context size, max tokens, etc.
@@ -2,14 +2,14 @@ import type { TupleToUnion } from 'type-fest';
2
2
  /**
3
3
  * Model variant describes the very general type of the model
4
4
  *
5
- * There are two variants:
6
- * - **COMPLETION** - model that takes prompt and writes the rest of the text
7
- * - **CHAT** - model that takes prompt and previous messages and returns response
5
+ * There are these supported model variants:
6
+ * - `COMPLETION` - Model that takes prompt and writes the rest of the text
7
+ * - `CHAT` - Model that takes prompt and previous messages and returns response
8
+ * - `EMBEDDING` - Model that convert text into vector representations
8
9
  */
9
10
  export type ModelVariant = TupleToUnion<typeof MODEL_VARIANTS>;
10
11
  /**
11
- * @@@
12
- *
12
+ * @see {@link ModelVariant}
13
13
  * @public exported from `@promptbook/core`
14
14
  */
15
15
  export declare const MODEL_VARIANTS: readonly ["COMPLETION", "CHAT", "EMBEDDING"];
@@ -123,7 +123,8 @@ export type InputParameters = Exclude<Record<string_parameter_name, really_unkno
123
123
  */
124
124
  export type string_reserved_parameter_name = TupleToUnion<typeof RESERVED_PARAMETER_NAMES>;
125
125
  /**
126
- * @@@
126
+ * Represents a mapping of reserved parameter names to their values.
127
+ * Reserved parameters are used internally by the pipeline and should not be set by users.
127
128
  *
128
129
  * Note: [🚉] This is fully serializable as JSON
129
130
  */
@@ -148,27 +149,29 @@ export type string_persona_description = string;
148
149
  */
149
150
  export type string_model_description = string;
150
151
  /**
151
- * Source of one knowledge
152
+ * Source of one knowledge piece.
152
153
  *
153
- * It can be a link, a relative path to file or direct text
154
+ * It can be a link, a relative path to file or direct text content.
154
155
  *
155
156
  * For example `"https://pavolhejny.com/"`
156
157
  * For example `"./pavol-hejny-cv.pdf"`
157
158
  * For example `"Pavol Hejný has web https://pavolhejny.com/"`
158
159
  * For example `"Pavol Hejný is web developer and creator of Promptbook and Collboard"`
159
160
  *
160
- * @@@ string_knowledge_source vs string_knowledge_source_link
161
+ * Note: Distinguishes between `string_knowledge_source_content` and `string_knowledge_source_link`:
162
+ * `string_knowledge_source_content` refers to the actual content or source of knowledge
163
+ * `string_knowledge_source_link` refers to a reference or link to the knowledge source
161
164
  */
162
165
  export type string_knowledge_source_content = string_knowledge_source_link | string_markdown;
163
166
  /**
164
- * One link to knowledge source
167
+ * One link to a knowledge source.
165
168
  *
166
- * It can be a link or relative path
169
+ * It can be a URL or relative path.
167
170
  *
168
171
  * For example `"https://pavolhejny.com/"`
169
172
  * For example `"./pavol-hejny-cv.pdf"`
170
173
  *
171
- * @@@ string_knowledge_source vs string_knowledge_source_link
174
+ * Note: string_knowledge_source_link refers to a reference or link to the knowledge source, while string_knowledge_source_content can be the link or the actual content.
172
175
  */
173
176
  export type string_knowledge_source_link = string_url | string_filename;
174
177
  /**
@@ -183,7 +186,7 @@ export type string_html = string;
183
186
  * For example `"<foo>bar</foo>"`
184
187
  *
185
188
  *
186
- * TODO: [🎞️] Probbably use some object-based method for working with XMLs
189
+ * TODO: [🎞️] Probably use some object-based method for working with XMLs
187
190
  */
188
191
  export type string_xml = string;
189
192
  /**
@@ -233,7 +236,9 @@ export type string_markdown_text = string;
233
236
  */
234
237
  export type string_markdown_codeblock_language = 'book' | 'markdown' | 'text' | 'javascript' | 'css' | 'json';
235
238
  /**
236
- * @@@
239
+ * A URL pointing to Promptbook documentation or a specific discussion.
240
+ *
241
+ * For example: `https://github.com/webgptorg/promptbook/discussions/123`
237
242
  */
238
243
  export type string_promptbook_documentation_url = `https://github.com/webgptorg/promptbook/discussions/${number | `@@${string}`}`;
239
244
  /**
@@ -448,15 +453,14 @@ export type string_uuid = string & {
448
453
  readonly _type: 'uuid';
449
454
  };
450
455
  /**
451
- * Application identifier
456
+ * Application identifier, used to distinguish different apps or clients.
452
457
  *
453
- * @@@
458
+ * For example: 'cli', 'playground', or a custom app id.
454
459
  */
455
460
  export type string_app_id = id | 'app';
456
461
  /**
457
- * End user identifier
458
- *
459
- * @@@
462
+ * End user identifier, can be a user id or email address.
463
+ * Used for tracking and abuse prevention.
460
464
  */
461
465
  export type string_user_id = id | string_email;
462
466
  /**
@@ -630,7 +634,7 @@ export type number_integer = number;
630
634
  export type number_port = number_positive & number_integer;
631
635
  /**
632
636
  * Semantic helper;
633
- * Percentage from 0 to 1 (100%) (and bellow and above)
637
+ * Percentage from 0 to 1 (100%) (and below and above)
634
638
  */
635
639
  export type number_percent = number;
636
640
  /**
@@ -649,10 +653,9 @@ export type number_seed = number_percent;
649
653
  /**
650
654
  * Likeness of the wallpaper
651
655
  *
652
- * - 👍 is eqivalent for 1
653
- * - 👎 is eqivalent for -1
654
- * - ❤ is eqivalent for more than 1
655
- * - etc
656
+ * - 👍 is equivalent to 1
657
+ * - 👎 is equivalent to -1
658
+ * - ❤ is equivalent to more than 1
656
659
  */
657
660
  export type number_likeness = number;
658
661
  export type number_miliseconds = number_integer;
@@ -2,33 +2,34 @@ import { type IDestroyable } from 'destroyable';
2
2
  import type { string_name } from '../types/typeAliases';
3
3
  import type { TODO_string } from './organization/TODO_string';
4
4
  /**
5
- * @@@
5
+ * Represents an entity in a global registry.
6
+ * Contains identifying information about the package and class.
6
7
  */
7
8
  export type Registered = {
8
9
  /**
9
- * @@@
10
+ * The name of the package where the registered entity is defined.
10
11
  */
11
12
  readonly packageName: TODO_string;
12
13
  /**
13
- * @@@
14
+ * The name of the class being registered.
14
15
  */
15
16
  readonly className: TODO_string;
16
17
  };
17
18
  /**
18
- * @@@
19
+ * Represents a registration record, including destroyable interface and registry name.
19
20
  */
20
21
  export type Registration = Registered & IDestroyable & {
21
22
  /**
22
- * @@@
23
+ * The name of the register this entity is registered in.
23
24
  */
24
25
  readonly registerName: string_name;
25
26
  };
26
27
  /**
27
- * Register is @@@
28
+ * Global registry for storing and managing registered entities of a given type.
28
29
  *
29
30
  * Note: `$` is used to indicate that this function is not a pure function - it accesses and adds variables in global scope.
30
31
  *
31
- * @private internal utility, exported are only signleton instances of this class
32
+ * @private internal utility, exported are only singleton instances of this class
32
33
  */
33
34
  export declare class $Register<TRegistered extends Registered> {
34
35
  private readonly registerName;
@@ -5,7 +5,7 @@ type AddPipelineCommandOptions = {
5
5
  pipelineString: PipelineString;
6
6
  };
7
7
  /**
8
- * @@@
8
+ * Adds a new command to a pipeline string in the correct format.
9
9
  *
10
10
  * @public exported from `@promptbook/editable`
11
11
  */
@@ -14,4 +14,4 @@ export {};
14
14
  /**
15
15
  * TODO: [🧠] What is the better solution - `- xxx`, - `- xxx` or preserve (see also next TODO)
16
16
  * TODO: When existing commands 1) as 2) number 3) list, add 4) new command as next number
17
- */
17
+ */
@@ -1,6 +1,9 @@
1
1
  import type { PipelineString } from '../../../pipeline/PipelineString';
2
2
  /**
3
- * @@@
3
+ * Converts a pipeline structure to its string representation.
4
+ *
5
+ * Transforms a flat, simple pipeline into a properly formatted pipeline string
6
+ * with sections for title, prompt, and return statement.
4
7
  *
5
8
  * @public exported from `@promptbook/editable`
6
9
  */
@@ -1,6 +1,7 @@
1
1
  import type { PipelineString } from '../../../pipeline/PipelineString';
2
2
  /**
3
- * @@@
3
+ * Utility to determine if a pipeline string is in flat format.
4
+ * A flat pipeline is a simple text without proper structure (headers, blocks, etc).
4
5
  *
5
6
  * @public exported from `@promptbook/editable`
6
7
  */
@@ -9,7 +9,7 @@ import type { string_json } from '../../../types/typeAliases';
9
9
  */
10
10
  export declare function stringifyPipelineJson<TType>(pipeline: TType): string_json<TType>;
11
11
  /**
12
- * TODO: [🐝] Not Working propperly @see https://promptbook.studio/examples/mixed-knowledge.book
12
+ * TODO: [🐝] Not Working properly @see https://promptbook.studio/examples/mixed-knowledge.book
13
13
  * TODO: [🧠][0] Maybe rename to `stringifyPipelineJson`, `stringifyIndexedJson`,...
14
14
  * TODO: [🧠] Maybe more elegant solution than replacing via regex
15
15
  * TODO: [🍙] Make some standard order of json properties
@@ -1,6 +1,7 @@
1
1
  import type { really_any } from '../organization/really_any';
2
2
  /**
3
- * @@@
3
+ * Safely retrieves the global scope object (window in browser, global in Node.js)
4
+ * regardless of the JavaScript environment in which the code is running
4
5
  *
5
6
  * Note: `$` is used to indicate that this function is not a pure function - it access global scope
6
7
  *
@@ -7,6 +7,6 @@ import type { ExpectationUnit } from '../../pipeline/PipelineJson/Expectations';
7
7
  */
8
8
  export declare const CountUtils: Record<ExpectationUnit, (text: string) => ExpectationAmount>;
9
9
  /**
10
- * TODO: [🧠][🤠] This should be probbably as part of `TextFormatDefinition`
10
+ * TODO: [🧠][🤠] This should be probably as part of `TextFormatParser`
11
11
  * Note: [💞] Ignore a discrepancy between file name and entity name
12
12
  */
@@ -19,8 +19,8 @@ export type CodeBlock = {
19
19
  /**
20
20
  * Extracts all code blocks from markdown.
21
21
  *
22
- * Note: There are multiple simmilar function:
23
- * - `extractBlock` just extracts the content of the code block which is also used as build-in function for postprocessing
22
+ * Note: There are multiple similar functions:
23
+ * - `extractBlock` just extracts the content of the code block which is also used as built-in function for postprocessing
24
24
  * - `extractJsonBlock` extracts exactly one valid JSON code block
25
25
  * - `extractOneBlockFromMarkdown` extracts exactly one code block with language of the code block
26
26
  * - `extractAllBlocksFromMarkdown` extracts all code blocks with language of the code block
@@ -9,7 +9,7 @@ import type { string_markdown_text } from '../../types/typeAliases';
9
9
  * Note: It can not work with html syntax and comments
10
10
  *
11
11
  * @param markdown any valid markdown
12
- * @returns @@@
12
+ * @returns An array of strings, each representing an individual list item found in the markdown
13
13
  * @public exported from `@promptbook/markdown-utils`
14
14
  */
15
15
  export declare function extractAllListItemsFromMarkdown(markdown: string_markdown): string_markdown_text[];
@@ -5,8 +5,8 @@ import type { CodeBlock } from './extractAllBlocksFromMarkdown';
5
5
  *
6
6
  * - When there are multiple or no code blocks the function throws a `ParseError`
7
7
  *
8
- * Note: There are multiple simmilar function:
9
- * - `extractBlock` just extracts the content of the code block which is also used as build-in function for postprocessing
8
+ * Note: There are multiple similar functions:
9
+ * - `extractBlock` just extracts the content of the code block which is also used as built-in function for postprocessing
10
10
  * - `extractJsonBlock` extracts exactly one valid JSON code block
11
11
  * - `extractOneBlockFromMarkdown` extracts exactly one code block with language of the code block
12
12
  * - `extractAllBlocksFromMarkdown` extracts all code blocks with language of the code block
@@ -1,9 +1,9 @@
1
1
  /**
2
- * @@@
2
+ * Converts a name string into a URI-compatible format.
3
3
  *
4
- * @param name @@@
5
- * @returns @@@
6
- * @example @@@
4
+ * @param name The string to be converted to a URI-compatible format.
5
+ * @returns A URI-compatible string derived from the input name.
6
+ * @example 'Hello World' -> 'hello-world'
7
7
  * @public exported from `@promptbook/utils`
8
8
  */
9
9
  export declare function nameToUriPart(name: string): string;
@@ -1,9 +1,9 @@
1
1
  /**
2
- * @@@
2
+ * Converts a given name into URI-compatible parts.
3
3
  *
4
- * @param name @@@
5
- * @returns @@@
6
- * @example @@@
4
+ * @param name The name to be converted into URI parts.
5
+ * @returns An array of URI-compatible parts derived from the name.
6
+ * @example 'Example Name' -> ['example', 'name']
7
7
  * @public exported from `@promptbook/utils`
8
8
  */
9
9
  export declare function nameToUriParts(name: string): string[];
@@ -7,10 +7,10 @@
7
7
  */
8
8
  export type string_kebab_case = string;
9
9
  /**
10
- * @@@
10
+ * Converts a given text to kebab-case format.
11
11
  *
12
- * @param text @@@
13
- * @returns @@@
12
+ * @param text The text to be converted.
13
+ * @returns The kebab-case formatted string.
14
14
  * @example 'hello-world'
15
15
  * @example 'i-love-promptbook'
16
16
  * @public exported from `@promptbook/utils`
@@ -7,10 +7,10 @@
7
7
  */
8
8
  export type string_SCREAMING_CASE = string;
9
9
  /**
10
- * @@@
10
+ * Normalizes a text string to SCREAMING_CASE (all uppercase with underscores).
11
11
  *
12
- * @param text @@@
13
- * @returns @@@
12
+ * @param text The text string to be converted to SCREAMING_CASE format.
13
+ * @returns The normalized text in SCREAMING_CASE format.
14
14
  * @example 'HELLO_WORLD'
15
15
  * @example 'I_LOVE_PROMPTBOOK'
16
16
  * @public exported from `@promptbook/utils`
@@ -7,11 +7,11 @@
7
7
  */
8
8
  export type string_camelCase = string;
9
9
  /**
10
- * @@@
10
+ * Normalizes a given text to camelCase format.
11
11
  *
12
- * @param text @@@
13
- * @param _isFirstLetterCapital @@@
14
- * @returns @@@
12
+ * @param text The text to be normalized.
13
+ * @param _isFirstLetterCapital Whether the first letter should be capitalized.
14
+ * @returns The camelCase formatted string.
15
15
  * @example 'helloWorld'
16
16
  * @example 'iLovePromptbook'
17
17
  * @public exported from `@promptbook/utils`
@@ -6,10 +6,10 @@
6
6
  */
7
7
  export type string_snake_case = string;
8
8
  /**
9
- * @@@
9
+ * Normalizes a text string to snake_case format.
10
10
  *
11
- * @param text @@@
12
- * @returns @@@
11
+ * @param text The text string to be converted to snake_case format.
12
+ * @returns The normalized text in snake_case format.
13
13
  * @example 'hello_world'
14
14
  * @example 'i_love_promptbook'
15
15
  * @public exported from `@promptbook/utils`
@@ -1,8 +1,8 @@
1
1
  /**
2
- * @@@
2
+ * Removes diacritic marks (accents) from characters in a string.
3
3
  *
4
- * @param input @@@
5
- * @returns @@@
4
+ * @param input The string containing diacritics to be normalized.
5
+ * @returns The string with diacritics removed or normalized.
6
6
  * @public exported from `@promptbook/utils`
7
7
  */
8
8
  export declare function removeDiacritics(input: string): string;
@@ -1,6 +1,6 @@
1
1
  import type { Keywords } from './IKeywords';
2
2
  /**
3
- * @@@
3
+ * Searches set of keywords for a specific keyword
4
4
  *
5
5
  * @param haystack
6
6
  * @param needle
@@ -8,3 +8,6 @@ import type { Keywords } from './IKeywords';
8
8
  * @public exported from `@promptbook/utils`
9
9
  */
10
10
  export declare function searchKeywords(haystack: Keywords, needle: Keywords): boolean;
11
+ /**
12
+ * TODO: Rename to `isKeywordInKeywords`
13
+ */
@@ -1,9 +1,9 @@
1
1
  /**
2
- * @@@
2
+ * Converts a title string into a normalized name.
3
3
  *
4
- * @param value @@@
5
- * @returns @@@
6
- * @example @@@
4
+ * @param value The title string to be converted to a name.
5
+ * @returns A normalized name derived from the input title.
6
+ * @example 'Hello World!' -> 'hello-world'
7
7
  * @public exported from `@promptbook/utils`
8
8
  */
9
9
  export declare function titleToName(value: string): string;
@@ -3,7 +3,7 @@ import type { really_any } from './really_any';
3
3
  * Just marks a place of place where should be something implemented
4
4
  * No side effects.
5
5
  *
6
- * Note: It can be usefull suppressing eslint errors of unused variables
6
+ * Note: It can be useful suppressing eslint errors of unused variables
7
7
  *
8
8
  * @param value any values
9
9
  * @returns void
@@ -2,8 +2,8 @@
2
2
  * Organizational helper to better mark the place where to really use empty object `{}`
3
3
  *
4
4
  * Note: There are 2 similar types>
5
- * - `empty_object` @@@
6
- * - `just_empty_object` @@@
5
+ * - `empty_object` Type used for empty data objects allowing for potential future extensions
6
+ * - `just_empty_object` Type used when an object must remain permanently empty
7
7
  *
8
8
  * @private within the repository
9
9
  */
@@ -2,7 +2,7 @@
2
2
  * Returns the same value that is passed as argument.
3
3
  * No side effects.
4
4
  *
5
- * Note: It can be usefull for:
5
+ * Note: It can be useful for:
6
6
  *
7
7
  * 1) Leveling indentation
8
8
  * 2) Putting always-true or always-false conditions without getting eslint errors
@@ -1,9 +1,9 @@
1
1
  /**
2
- * Organizational helper to better @@@@
2
+ * Organizational helper to better distinguish different empty object use cases.
3
3
  *
4
- * Note: There are 2 similar types>
5
- * - `empty_object` @@@
6
- * - `just_empty_object` @@@
4
+ * Note: There are 2 similar types:
5
+ * - `empty_object` Type used for empty data objects with potential extensions
6
+ * - `just_empty_object` Type used specifically for objects that must remain empty
7
7
  *
8
8
  * Note: In most cases, you should use `empty_object`
9
9
  *
@@ -3,7 +3,7 @@ import type { really_any } from './really_any';
3
3
  * Just says that the variable is not used but should be kept
4
4
  * No side effects.
5
5
  *
6
- * Note: It can be usefull for:
6
+ * Note: It can be useful for:
7
7
  *
8
8
  * 1) Suppressing eager optimization of unused imports
9
9
  * 2) Suppressing eslint errors of unused variables in the tests
@@ -1,26 +1,26 @@
1
1
  import type { string_parameter_name } from '../../types/typeAliases';
2
2
  import type { string_parameter_value } from '../../types/typeAliases';
3
3
  /**
4
- * @@@
4
+ * Options for mapping available parameters to expected parameters in a pipeline task.
5
5
  */
6
6
  type MakeapAvailableToExpectedParametersOptions = {
7
7
  /**
8
- * @@@
8
+ * The set of expected parameter names (keys) for the task, all values are null.
9
9
  */
10
10
  readonly expectedParameters: Readonly<Record<string_parameter_name, null>>;
11
11
  /**
12
- * @@@
12
+ * The set of available parameters (name-value pairs) to map to the expected parameters.
13
13
  */
14
14
  readonly availableParameters: Readonly<Record<string_parameter_name, string_parameter_value>>;
15
15
  };
16
16
  /**
17
- * Maps available parameters to expected parameters
17
+ * Maps available parameters to expected parameters for a pipeline task.
18
18
  *
19
19
  * The strategy is:
20
- * 1) @@@
21
- * 2) @@@
20
+ * 1) First, match parameters by name where both available and expected.
21
+ * 2) Then, if there are unmatched expected and available parameters, map them by order.
22
22
  *
23
- * @throws {PipelineExecutionError} @@@
23
+ * @throws {PipelineExecutionError} If the number of unmatched expected and available parameters does not match, or mapping is ambiguous.
24
24
  * @private within the repository used in `createPipelineExecutor`
25
25
  */
26
26
  export declare function mapAvailableToExpectedParameters(options: MakeapAvailableToExpectedParametersOptions): Readonly<Record<string_parameter_name, string_parameter_value>>;