@promptbook/node 0.89.0-8 → 0.89.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 (50) hide show
  1. package/README.md +9 -11
  2. package/esm/index.es.js +200 -84
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/servers.d.ts +40 -0
  5. package/esm/typings/src/_packages/core.index.d.ts +12 -4
  6. package/esm/typings/src/_packages/remote-client.index.d.ts +6 -6
  7. package/esm/typings/src/_packages/remote-server.index.d.ts +6 -6
  8. package/esm/typings/src/_packages/types.index.d.ts +24 -14
  9. package/esm/typings/src/_packages/utils.index.d.ts +4 -0
  10. package/esm/typings/src/cli/cli-commands/login.d.ts +0 -1
  11. package/esm/typings/src/cli/common/$provideLlmToolsForCli.d.ts +16 -3
  12. package/esm/typings/src/cli/test/ptbk.d.ts +1 -1
  13. package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +2 -0
  14. package/esm/typings/src/config.d.ts +10 -19
  15. package/esm/typings/src/errors/0-index.d.ts +8 -2
  16. package/esm/typings/src/errors/PipelineExecutionError.d.ts +1 -1
  17. package/esm/typings/src/errors/PromptbookFetchError.d.ts +9 -0
  18. package/esm/typings/src/errors/WrappedError.d.ts +10 -0
  19. package/esm/typings/src/errors/assertsError.d.ts +11 -0
  20. package/esm/typings/src/execution/PromptbookFetch.d.ts +1 -1
  21. package/esm/typings/src/formats/csv/utils/isValidCsvString.d.ts +9 -0
  22. package/esm/typings/src/formats/csv/utils/isValidCsvString.test.d.ts +1 -0
  23. package/esm/typings/src/formats/json/utils/isValidJsonString.d.ts +3 -0
  24. package/esm/typings/src/formats/xml/utils/isValidXmlString.d.ts +9 -0
  25. package/esm/typings/src/formats/xml/utils/isValidXmlString.test.d.ts +1 -0
  26. package/esm/typings/src/llm-providers/_common/register/$provideEnvFilename.d.ts +12 -0
  27. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts +2 -8
  28. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts +2 -0
  29. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizzardOrCli.d.ts +15 -4
  30. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsFromEnv.d.ts +1 -0
  31. package/esm/typings/src/remote-server/openapi-types.d.ts +284 -0
  32. package/esm/typings/src/remote-server/openapi.d.ts +187 -0
  33. package/esm/typings/src/remote-server/socket-types/_subtypes/{PromptbookServer_Identification.d.ts → Identification.d.ts} +9 -3
  34. package/esm/typings/src/remote-server/socket-types/_subtypes/identificationToPromptbookToken.d.ts +11 -0
  35. package/esm/typings/src/remote-server/socket-types/_subtypes/promptbookTokenToIdentification.d.ts +10 -0
  36. package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Request.d.ts +2 -2
  37. package/esm/typings/src/remote-server/socket-types/prepare/PromptbookServer_PreparePipeline_Request.d.ts +2 -2
  38. package/esm/typings/src/remote-server/socket-types/prompt/PromptbookServer_Prompt_Request.d.ts +2 -2
  39. package/esm/typings/src/remote-server/startRemoteServer.d.ts +1 -2
  40. package/esm/typings/src/remote-server/types/RemoteClientOptions.d.ts +2 -2
  41. package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +57 -38
  42. package/esm/typings/src/scrapers/_common/utils/{scraperFetch.d.ts → promptbookFetch.d.ts} +2 -2
  43. package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +40 -0
  44. package/esm/typings/src/types/typeAliases.d.ts +26 -0
  45. package/package.json +9 -5
  46. package/umd/index.umd.js +200 -84
  47. package/umd/index.umd.js.map +1 -1
  48. package/esm/typings/src/cli/test/ptbk2.d.ts +0 -5
  49. package/esm/typings/src/playground/BrjappConnector.d.ts +0 -67
  50. package/esm/typings/src/playground/brjapp-api-schema.d.ts +0 -12879
@@ -0,0 +1,40 @@
1
+ import type { string_legal_entity } from './src/types/typeAliases';
2
+ import type { string_promptbook_server_url } from './src/types/typeAliases';
3
+ import type { string_title } from './src/types/typeAliases';
4
+ /**
5
+ * Open Promptbook server usable for public
6
+ */
7
+ type ServerConfiguration = {
8
+ /**
9
+ * Basic name of the server
10
+ */
11
+ title: string_title;
12
+ /**
13
+ * Who is the owner of the server
14
+ */
15
+ owner: string_legal_entity;
16
+ /**
17
+ * Is the server open for public and anonymous usage
18
+ */
19
+ isAnonymousModeAllowed: boolean;
20
+ /**
21
+ * Description of the server, link to registration, user agreement, privacy policy, etc.
22
+ */
23
+ description: string;
24
+ /**
25
+ * URL of the server
26
+ *
27
+ Note: lising more for loadbalancing
28
+ */
29
+ urls: Array<string_promptbook_server_url>;
30
+ };
31
+ /**
32
+ * Available remote servers for the Promptbook
33
+ *
34
+ * @public exported from `@promptbook/core`
35
+ */
36
+ export declare const REMOTE_SERVER_URLS: Array<ServerConfiguration>;
37
+ export {};
38
+ /**
39
+ * Note: [💞] Ignore a discrepancy between file name and entity name
40
+ */
@@ -8,8 +8,6 @@ import { NAME } from '../config';
8
8
  import { ADMIN_EMAIL } from '../config';
9
9
  import { ADMIN_GITHUB_NAME } from '../config';
10
10
  import { CLAIM } from '../config';
11
- import { LOGO_LIGHT_SRC } from '../config';
12
- import { LOGO_DARK_SRC } from '../config';
13
11
  import { DEFAULT_BOOK_TITLE } from '../config';
14
12
  import { DEFAULT_TASK_TITLE } from '../config';
15
13
  import { DEFAULT_PROMPT_TASK_TITLE } from '../config';
@@ -60,7 +58,9 @@ import { ParseError } from '../errors/ParseError';
60
58
  import { PipelineExecutionError } from '../errors/PipelineExecutionError';
61
59
  import { PipelineLogicError } from '../errors/PipelineLogicError';
62
60
  import { PipelineUrlError } from '../errors/PipelineUrlError';
61
+ import { PromptbookFetchError } from '../errors/PromptbookFetchError';
63
62
  import { UnexpectedError } from '../errors/UnexpectedError';
63
+ import { WrappedError } from '../errors/WrappedError';
64
64
  import { createPipelineExecutor } from '../execution/createPipelineExecutor/00-createPipelineExecutor';
65
65
  import { embeddingVectorToString } from '../execution/embeddingVectorToString';
66
66
  import { executionReportJsonToString } from '../execution/execution-report/executionReportJsonToString';
@@ -114,11 +114,14 @@ import { isPipelinePrepared } from '../prepare/isPipelinePrepared';
114
114
  import { preparePipeline } from '../prepare/preparePipeline';
115
115
  import { prepareTasks } from '../prepare/prepareTasks';
116
116
  import { unpreparePipeline } from '../prepare/unpreparePipeline';
117
+ import { identificationToPromptbookToken } from '../remote-server/socket-types/_subtypes/identificationToPromptbookToken';
118
+ import { promptbookTokenToIdentification } from '../remote-server/socket-types/_subtypes/promptbookTokenToIdentification';
117
119
  import { _BoilerplateScraperMetadataRegistration } from '../scrapers/_boilerplate/register-metadata';
118
120
  import { prepareKnowledgePieces } from '../scrapers/_common/prepareKnowledgePieces';
119
121
  import { $scrapersMetadataRegister } from '../scrapers/_common/register/$scrapersMetadataRegister';
120
122
  import { $scrapersRegister } from '../scrapers/_common/register/$scrapersRegister';
121
123
  import { makeKnowledgeSourceHandler } from '../scrapers/_common/utils/makeKnowledgeSourceHandler';
124
+ import { promptbookFetch } from '../scrapers/_common/utils/promptbookFetch';
122
125
  import { _LegacyDocumentScraperMetadataRegistration } from '../scrapers/document-legacy/register-metadata';
123
126
  import { _DocumentScraperMetadataRegistration } from '../scrapers/document/register-metadata';
124
127
  import { _MarkdownScraperMetadataRegistration } from '../scrapers/markdown/register-metadata';
@@ -132,6 +135,7 @@ import { MODEL_VARIANTS } from '../types/ModelVariant';
132
135
  import { NonTaskSectionTypes } from '../types/SectionType';
133
136
  import { SectionTypes } from '../types/SectionType';
134
137
  import { TaskTypes } from '../types/TaskType';
138
+ import { REMOTE_SERVER_URLS } from '../../servers';
135
139
  export { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION };
136
140
  export { collectionToJson };
137
141
  export { createCollectionFromJson };
@@ -142,8 +146,6 @@ export { NAME };
142
146
  export { ADMIN_EMAIL };
143
147
  export { ADMIN_GITHUB_NAME };
144
148
  export { CLAIM };
145
- export { LOGO_LIGHT_SRC };
146
- export { LOGO_DARK_SRC };
147
149
  export { DEFAULT_BOOK_TITLE };
148
150
  export { DEFAULT_TASK_TITLE };
149
151
  export { DEFAULT_PROMPT_TASK_TITLE };
@@ -194,7 +196,9 @@ export { ParseError };
194
196
  export { PipelineExecutionError };
195
197
  export { PipelineLogicError };
196
198
  export { PipelineUrlError };
199
+ export { PromptbookFetchError };
197
200
  export { UnexpectedError };
201
+ export { WrappedError };
198
202
  export { createPipelineExecutor };
199
203
  export { embeddingVectorToString };
200
204
  export { executionReportJsonToString };
@@ -248,11 +252,14 @@ export { isPipelinePrepared };
248
252
  export { preparePipeline };
249
253
  export { prepareTasks };
250
254
  export { unpreparePipeline };
255
+ export { identificationToPromptbookToken };
256
+ export { promptbookTokenToIdentification };
251
257
  export { _BoilerplateScraperMetadataRegistration };
252
258
  export { prepareKnowledgePieces };
253
259
  export { $scrapersMetadataRegister };
254
260
  export { $scrapersRegister };
255
261
  export { makeKnowledgeSourceHandler };
262
+ export { promptbookFetch };
256
263
  export { _LegacyDocumentScraperMetadataRegistration };
257
264
  export { _DocumentScraperMetadataRegistration };
258
265
  export { _MarkdownScraperMetadataRegistration };
@@ -266,3 +273,4 @@ export { MODEL_VARIANTS };
266
273
  export { NonTaskSectionTypes };
267
274
  export { SectionTypes };
268
275
  export { TaskTypes };
276
+ export { REMOTE_SERVER_URLS };
@@ -2,15 +2,15 @@ import { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION } from '../version';
2
2
  import { compilePipelineOnRemoteServer } from '../conversion/compilePipelineOnRemoteServer';
3
3
  import { RemoteLlmExecutionTools } from '../llm-providers/remote/RemoteLlmExecutionTools';
4
4
  import { preparePipelineOnRemoteServer } from '../prepare/preparePipelineOnRemoteServer';
5
- import type { PromptbookServer_Identification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
6
- import type { PromptbookServer_ApplicationIdentification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
7
- import type { PromptbookServer_AnonymousIdentification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
5
+ import type { Identification } from '../remote-server/socket-types/_subtypes/Identification';
6
+ import type { ApplicationModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
7
+ import type { AnonymousModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
8
8
  import type { RemoteClientOptions } from '../remote-server/types/RemoteClientOptions';
9
9
  export { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION };
10
10
  export { compilePipelineOnRemoteServer };
11
11
  export { RemoteLlmExecutionTools };
12
12
  export { preparePipelineOnRemoteServer };
13
- export type { PromptbookServer_Identification };
14
- export type { PromptbookServer_ApplicationIdentification };
15
- export type { PromptbookServer_AnonymousIdentification };
13
+ export type { Identification };
14
+ export type { ApplicationModeIdentification };
15
+ export type { AnonymousModeIdentification };
16
16
  export type { RemoteClientOptions };
@@ -1,12 +1,12 @@
1
1
  import { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION } from '../version';
2
- import type { PromptbookServer_Identification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
3
- import type { PromptbookServer_ApplicationIdentification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
4
- import type { PromptbookServer_AnonymousIdentification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
2
+ import type { Identification } from '../remote-server/socket-types/_subtypes/Identification';
3
+ import type { ApplicationModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
4
+ import type { AnonymousModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
5
5
  import { startRemoteServer } from '../remote-server/startRemoteServer';
6
6
  import type { RemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
7
7
  export { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION };
8
- export type { PromptbookServer_Identification };
9
- export type { PromptbookServer_ApplicationIdentification };
10
- export type { PromptbookServer_AnonymousIdentification };
8
+ export type { Identification };
9
+ export type { ApplicationModeIdentification };
10
+ export type { AnonymousModeIdentification };
11
11
  export { startRemoteServer };
12
12
  export type { RemoteServerOptions };
@@ -106,22 +106,23 @@ import type { ScriptTaskJson } from '../pipeline/PipelineJson/ScriptTaskJson';
106
106
  import type { SimpleTaskJson } from '../pipeline/PipelineJson/SimpleTaskJson';
107
107
  import type { TaskJson } from '../pipeline/PipelineJson/TaskJson';
108
108
  import type { PipelineString } from '../pipeline/PipelineString';
109
- import type { paths } from '../playground/brjapp-api-schema';
110
- import type { webhooks } from '../playground/brjapp-api-schema';
111
- import type { components } from '../playground/brjapp-api-schema';
112
- import type { $defs } from '../playground/brjapp-api-schema';
113
- import type { operations } from '../playground/brjapp-api-schema';
114
109
  import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
110
+ import type { paths } from '../remote-server/openapi-types';
111
+ import type { webhooks } from '../remote-server/openapi-types';
112
+ import type { components } from '../remote-server/openapi-types';
113
+ import type { $defs } from '../remote-server/openapi-types';
114
+ import type { operations } from '../remote-server/openapi-types';
115
115
  import type { RemoteServer } from '../remote-server/RemoteServer';
116
- import type { PromptbookServer_Identification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
117
- import type { PromptbookServer_ApplicationIdentification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
118
- import type { PromptbookServer_AnonymousIdentification } from '../remote-server/socket-types/_subtypes/PromptbookServer_Identification';
116
+ import type { Identification } from '../remote-server/socket-types/_subtypes/Identification';
117
+ import type { ApplicationModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
118
+ import type { AnonymousModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
119
119
  import type { RemoteClientOptions } from '../remote-server/types/RemoteClientOptions';
120
120
  import type { RemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
121
121
  import type { AnonymousRemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
122
122
  import type { ApplicationRemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
123
123
  import type { ApplicationRemoteServerClientOptions } from '../remote-server/types/RemoteServerOptions';
124
- import type { ApplicationRemoteServerOptionsLoginResponse } from '../remote-server/types/RemoteServerOptions';
124
+ import type { LoginRequest } from '../remote-server/types/RemoteServerOptions';
125
+ import type { LoginResponse } from '../remote-server/types/RemoteServerOptions';
125
126
  import type { Converter } from '../scrapers/_common/Converter';
126
127
  import type { ScraperAndConverterMetadata } from '../scrapers/_common/register/ScraperAndConverterMetadata';
127
128
  import type { ScraperConstructor } from '../scrapers/_common/register/ScraperConstructor';
@@ -194,6 +195,7 @@ import type { string_css_property } from '../types/typeAliases';
194
195
  import type { string_css_value } from '../types/typeAliases';
195
196
  import type { string_css_selector } from '../types/typeAliases';
196
197
  import type { string_url } from '../types/typeAliases';
198
+ import type { string_promptbook_server_url } from '../types/typeAliases';
197
199
  import type { string_base_url } from '../types/typeAliases';
198
200
  import type { string_pipeline_root_url } from '../types/typeAliases';
199
201
  import type { string_pipeline_url } from '../types/typeAliases';
@@ -208,6 +210,7 @@ import type { string_uri_part } from '../types/typeAliases';
208
210
  import type { string_hostname } from '../types/typeAliases';
209
211
  import type { string_host } from '../types/typeAliases';
210
212
  import type { string_protocol } from '../types/typeAliases';
213
+ import type { string_ip_address } from '../types/typeAliases';
211
214
  import type { string_email } from '../types/typeAliases';
212
215
  import type { string_emails } from '../types/typeAliases';
213
216
  import type { string_uuid } from '../types/typeAliases';
@@ -226,6 +229,7 @@ import type { string_dirname } from '../types/typeAliases';
226
229
  import type { string_person_fullname } from '../types/typeAliases';
227
230
  import type { string_person_profile } from '../types/typeAliases';
228
231
  import type { string_license } from '../types/typeAliases';
232
+ import type { string_legal_entity } from '../types/typeAliases';
229
233
  import type { string_attribute } from '../types/typeAliases';
230
234
  import type { string_attribute_value_scope } from '../types/typeAliases';
231
235
  import type { string_color } from '../types/typeAliases';
@@ -237,6 +241,7 @@ import type { string_postprocessing_function_name } from '../types/typeAliases';
237
241
  import type { id } from '../types/typeAliases';
238
242
  import type { task_id } from '../types/typeAliases';
239
243
  import type { string_token } from '../types/typeAliases';
244
+ import type { string_promptbook_token } from '../types/typeAliases';
240
245
  import type { string_license_token } from '../types/typeAliases';
241
246
  import type { string_password } from '../types/typeAliases';
242
247
  import type { string_ssh_key } from '../types/typeAliases';
@@ -397,22 +402,23 @@ export type { ScriptTaskJson };
397
402
  export type { SimpleTaskJson };
398
403
  export type { TaskJson };
399
404
  export type { PipelineString };
405
+ export type { PrepareAndScrapeOptions };
400
406
  export type { paths };
401
407
  export type { webhooks };
402
408
  export type { components };
403
409
  export type { $defs };
404
410
  export type { operations };
405
- export type { PrepareAndScrapeOptions };
406
411
  export type { RemoteServer };
407
- export type { PromptbookServer_Identification };
408
- export type { PromptbookServer_ApplicationIdentification };
409
- export type { PromptbookServer_AnonymousIdentification };
412
+ export type { Identification };
413
+ export type { ApplicationModeIdentification };
414
+ export type { AnonymousModeIdentification };
410
415
  export type { RemoteClientOptions };
411
416
  export type { RemoteServerOptions };
412
417
  export type { AnonymousRemoteServerOptions };
413
418
  export type { ApplicationRemoteServerOptions };
414
419
  export type { ApplicationRemoteServerClientOptions };
415
- export type { ApplicationRemoteServerOptionsLoginResponse };
420
+ export type { LoginRequest };
421
+ export type { LoginResponse };
416
422
  export type { Converter };
417
423
  export type { ScraperAndConverterMetadata };
418
424
  export type { ScraperConstructor };
@@ -485,6 +491,7 @@ export type { string_css_property };
485
491
  export type { string_css_value };
486
492
  export type { string_css_selector };
487
493
  export type { string_url };
494
+ export type { string_promptbook_server_url };
488
495
  export type { string_base_url };
489
496
  export type { string_pipeline_root_url };
490
497
  export type { string_pipeline_url };
@@ -499,6 +506,7 @@ export type { string_uri_part };
499
506
  export type { string_hostname };
500
507
  export type { string_host };
501
508
  export type { string_protocol };
509
+ export type { string_ip_address };
502
510
  export type { string_email };
503
511
  export type { string_emails };
504
512
  export type { string_uuid };
@@ -517,6 +525,7 @@ export type { string_dirname };
517
525
  export type { string_person_fullname };
518
526
  export type { string_person_profile };
519
527
  export type { string_license };
528
+ export type { string_legal_entity };
520
529
  export type { string_attribute };
521
530
  export type { string_attribute_value_scope };
522
531
  export type { string_color };
@@ -528,6 +537,7 @@ export type { string_postprocessing_function_name };
528
537
  export type { id };
529
538
  export type { task_id };
530
539
  export type { string_token };
540
+ export type { string_promptbook_token };
531
541
  export type { string_license_token };
532
542
  export type { string_password };
533
543
  export type { string_ssh_key };
@@ -5,7 +5,9 @@ import { renderPromptbookMermaid } from '../conversion/prettify/renderPipelineMe
5
5
  import { deserializeError } from '../errors/utils/deserializeError';
6
6
  import { serializeError } from '../errors/utils/serializeError';
7
7
  import { forEachAsync } from '../execution/utils/forEachAsync';
8
+ import { isValidCsvString } from '../formats/csv/utils/isValidCsvString';
8
9
  import { isValidJsonString } from '../formats/json/utils/isValidJsonString';
10
+ import { isValidXmlString } from '../formats/xml/utils/isValidXmlString';
9
11
  import { prompt } from '../pipeline/prompt-notation';
10
12
  import { promptTemplate } from '../pipeline/prompt-notation';
11
13
  import { $getCurrentDate } from '../utils/$getCurrentDate';
@@ -87,7 +89,9 @@ export { renderPromptbookMermaid };
87
89
  export { deserializeError };
88
90
  export { serializeError };
89
91
  export { forEachAsync };
92
+ export { isValidCsvString };
90
93
  export { isValidJsonString };
94
+ export { isValidXmlString };
91
95
  export { prompt };
92
96
  export { promptTemplate };
93
97
  export { $getCurrentDate };
@@ -8,7 +8,6 @@ import type { Command as Program } from 'commander';
8
8
  */
9
9
  export declare function $initializeLoginCommand(program: Program): void;
10
10
  /**
11
- * TODO: Pass remote server URL (and path)
12
11
  * TODO: Implement non-interactive login
13
12
  * Note: [💞] Ignore a discrepancy between file name and entity name
14
13
  * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
@@ -1,15 +1,28 @@
1
+ import type { LlmExecutionToolsWithTotalUsage } from '../../llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage';
1
2
  import type { CacheLlmToolsOptions } from '../../llm-providers/_common/utils/cache/CacheLlmToolsOptions';
2
- import type { string_url } from '../../types/typeAliases';
3
+ import type { string_promptbook_server_url } from '../../types/typeAliases';
3
4
  type ProvideLlmToolsForCliOptions = Pick<CacheLlmToolsOptions, 'isCacheReloaded'> & {
5
+ /**
6
+ * If true, user will be always prompted for login
7
+ *
8
+ * Note: This is used in `ptbk login` command
9
+ */
10
+ isLoginloaded?: true;
11
+ /**
12
+ * CLI options
13
+ */
4
14
  cliOptions: {
5
15
  verbose: boolean;
6
16
  interactive: boolean;
7
17
  provider: 'BYOK' | 'BRING_YOUR_OWN_KEYS' | 'REMOTE_SERVER' | 'RS' | string;
8
- remoteServerUrl: string_url;
18
+ remoteServerUrl: string_promptbook_server_url;
9
19
  };
10
20
  };
11
21
  /**
12
22
  * @private utility of CLI
13
23
  */
14
- export declare function $provideLlmToolsForCli(options: ProvideLlmToolsForCliOptions): Promise<import("../../_packages/types.index").LlmExecutionToolsWithTotalUsage>;
24
+ export declare function $provideLlmToolsForCli(options: ProvideLlmToolsForCliOptions): Promise<{
25
+ strategy: 'BRING_YOUR_OWN_KEYS' | 'REMOTE_SERVER';
26
+ llm: LlmExecutionToolsWithTotalUsage;
27
+ }>;
15
28
  export {};
@@ -2,4 +2,4 @@
2
2
  /**
3
3
  * Note: [🔺] Purpose of this file is to test and use the current CLI in development environment
4
4
  */
5
- import '../../_packages/cli.index.ts';
5
+ import '../../_packages/cli.index';
@@ -1,6 +1,8 @@
1
1
  import type { PipelineTaskCommandParser } from '../_common/types/CommandParser';
2
2
  import type { ExpectCommand } from './ExpectCommand';
3
3
  /**
4
+ import { WrappedError } from '../../errors/WrappedError';
5
+ import { assertsError } from '../../errors/assertsError';
4
6
  * Parses the expect command
5
7
  *
6
8
  * @see `documentationUrl` for more details
@@ -3,7 +3,7 @@ import type { IntermediateFilesStrategy } from './types/IntermediateFilesStrateg
3
3
  import type { string_app_id } from './types/typeAliases';
4
4
  import type { string_email } from './types/typeAliases';
5
5
  import type { string_name } from './types/typeAliases';
6
- import type { string_url_image } from './types/typeAliases';
6
+ import type { string_promptbook_server_url } from './types/typeAliases';
7
7
  /**
8
8
  * Warning message for the generated sections and files files
9
9
  *
@@ -38,22 +38,6 @@ export declare const ADMIN_GITHUB_NAME: string_name;
38
38
  * @public exported from `@promptbook/core`
39
39
  */
40
40
  export declare const CLAIM = "It's time for a paradigm shift. The future of software in plain English, French or Latin";
41
- /**
42
- * Logo for the light theme
43
- *
44
- * TODO: [🗽] Unite branding and make single place for it
45
- *
46
- * @public exported from `@promptbook/core`
47
- */
48
- export declare const LOGO_LIGHT_SRC: string_url_image;
49
- /**
50
- * Logo for the dark theme
51
- *
52
- * TODO: [🗽] Unite branding and make single place for it
53
- *
54
- * @public exported from `@promptbook/core`
55
- */
56
- export declare const LOGO_DARK_SRC: string_url_image;
57
41
  /**
58
42
  * When the title is not provided, the default title is used
59
43
  *
@@ -90,6 +74,12 @@ export declare const DEFAULT_MAX_FILE_SIZE: number;
90
74
  * @private within the repository
91
75
  */
92
76
  export declare const GENERATOR_WARNING_BY_PROMPTBOOK_CLI = "\u26A0\uFE0F WARNING: This code has been generated by `@promptbook/cli` so that any manual changes will be overwritten";
77
+ /**
78
+ * Warning message for the automatically generated sections of `.env` files
79
+ *
80
+ * @private within the repository
81
+ */
82
+ export declare const GENERATOR_WARNING_IN_ENV = "Note: Added by Promptbook";
93
83
  /**
94
84
  * The maximum number of iterations for a loops
95
85
  *
@@ -115,6 +105,7 @@ export declare const VALUE_STRINGS: {
115
105
  readonly infinity: "(infinity; ∞)";
116
106
  readonly negativeInfinity: "(negative infinity; -∞)";
117
107
  readonly unserializable: "(unserializable value)";
108
+ readonly circular: "(circular JSON)";
118
109
  };
119
110
  /**
120
111
  * Small number limit
@@ -237,11 +228,11 @@ export declare const MOMENT_ARG_THRESHOLDS: {
237
228
  readonly ss: 3;
238
229
  };
239
230
  /**
240
- * @@@
231
+ * Default remote server URL for the Promptbook
241
232
  *
242
233
  * @public exported from `@promptbook/core`
243
234
  */
244
- export declare const DEFAULT_REMOTE_SERVER_URL = "https://api.pavolhejny.com/promptbook";
235
+ export declare const DEFAULT_REMOTE_SERVER_URL: string_promptbook_server_url;
245
236
  /**
246
237
  * @@@
247
238
  *
@@ -13,7 +13,9 @@ import { ParseError } from './ParseError';
13
13
  import { PipelineExecutionError } from './PipelineExecutionError';
14
14
  import { PipelineLogicError } from './PipelineLogicError';
15
15
  import { PipelineUrlError } from './PipelineUrlError';
16
+ import { PromptbookFetchError } from './PromptbookFetchError';
16
17
  import { UnexpectedError } from './UnexpectedError';
18
+ import { WrappedError } from './WrappedError';
17
19
  /**
18
20
  * Index of all custom errors
19
21
  *
@@ -34,7 +36,10 @@ export declare const PROMPTBOOK_ERRORS: {
34
36
  readonly PipelineExecutionError: typeof PipelineExecutionError;
35
37
  readonly PipelineLogicError: typeof PipelineLogicError;
36
38
  readonly PipelineUrlError: typeof PipelineUrlError;
39
+ readonly AuthenticationError: typeof AuthenticationError;
40
+ readonly PromptbookFetchError: typeof PromptbookFetchError;
37
41
  readonly UnexpectedError: typeof UnexpectedError;
42
+ readonly WrappedError: typeof WrappedError;
38
43
  };
39
44
  /**
40
45
  * Index of all javascript errors
@@ -50,7 +55,6 @@ export declare const COMMON_JAVASCRIPT_ERRORS: {
50
55
  readonly TypeError: TypeErrorConstructor;
51
56
  readonly URIError: URIErrorConstructor;
52
57
  readonly AggregateError: AggregateErrorConstructor;
53
- readonly AuthenticationError: typeof AuthenticationError;
54
58
  };
55
59
  /**
56
60
  * Index of all errors
@@ -66,7 +70,6 @@ export declare const ALL_ERRORS: {
66
70
  readonly TypeError: TypeErrorConstructor;
67
71
  readonly URIError: URIErrorConstructor;
68
72
  readonly AggregateError: AggregateErrorConstructor;
69
- readonly AuthenticationError: typeof AuthenticationError;
70
73
  readonly AbstractFormatError: typeof AbstractFormatError;
71
74
  readonly CsvFormatError: typeof CsvFormatError;
72
75
  readonly CollectionError: typeof CollectionError;
@@ -81,7 +84,10 @@ export declare const ALL_ERRORS: {
81
84
  readonly PipelineExecutionError: typeof PipelineExecutionError;
82
85
  readonly PipelineLogicError: typeof PipelineLogicError;
83
86
  readonly PipelineUrlError: typeof PipelineUrlError;
87
+ readonly AuthenticationError: typeof AuthenticationError;
88
+ readonly PromptbookFetchError: typeof PromptbookFetchError;
84
89
  readonly UnexpectedError: typeof UnexpectedError;
90
+ readonly WrappedError: typeof WrappedError;
85
91
  };
86
92
  /**
87
93
  * Note: [💞] Ignore a discrepancy between file name and entity name
@@ -10,5 +10,5 @@ export declare class PipelineExecutionError extends Error {
10
10
  constructor(message: string);
11
11
  }
12
12
  /**
13
- * TODO: !!!!!! Add id to all errors
13
+ * TODO: [🧠][🌂] Add id to all errors
14
14
  */
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Error thrown when a fetch request fails
3
+ *
4
+ * @public exported from `@promptbook/core`
5
+ */
6
+ export declare class PromptbookFetchError extends Error {
7
+ readonly name = "PromptbookFetchError";
8
+ constructor(message: string);
9
+ }
@@ -0,0 +1,10 @@
1
+ import type { really_any } from '../utils/organization/really_any';
2
+ /**
3
+ * This error type indicates that somewhere in the code non-Error object was thrown and it was wrapped into the `WrappedError`
4
+ *
5
+ * @public exported from `@promptbook/core`
6
+ */
7
+ export declare class WrappedError extends Error {
8
+ readonly name = "WrappedError";
9
+ constructor(whatWasThrown: really_any);
10
+ }
@@ -0,0 +1,11 @@
1
+ import type { really_unknown } from '../utils/organization/really_unknown';
2
+ /**
3
+ * Helper used in catch blocks to assert that the error is an instance of `Error`
4
+ *
5
+ * @param whatWasThrown Any object that was thrown
6
+ * @returns Nothing if the error is an instance of `Error`
7
+ * @throws `WrappedError` or `UnexpectedError` if the error is not standard
8
+ *
9
+ * @private within the repository
10
+ */
11
+ export declare function assertsError(whatWasThrown: really_unknown): asserts whatWasThrown is Error;
@@ -7,6 +7,6 @@ import type { string_url } from '../types/typeAliases';
7
7
  *
8
8
  * It is used in theese places:
9
9
  * - Fetching knowledge sources
10
- * - Callbacks from remote server ([👩🏾‍🤝‍🧑🏾] Not yet implemented)
10
+ * - Callbacks from remote server
11
11
  */
12
12
  export type PromptbookFetch = (url: string_url, init?: RequestInit) => Promise<Response>;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Function to check if a string is valid CSV
3
+ *
4
+ * @param value The string to check
5
+ * @returns True if the string is a valid CSV string, false otherwise
6
+ *
7
+ * @public exported from `@promptbook/utils`
8
+ */
9
+ export declare function isValidCsvString(value: string): boolean;
@@ -1,6 +1,9 @@
1
1
  /**
2
2
  * Function isValidJsonString will tell you if the string is valid JSON or not
3
3
  *
4
+ * @param value The string to check
5
+ * @returns True if the string is a valid JSON string, false otherwise
6
+ *
4
7
  * @public exported from `@promptbook/utils`
5
8
  */
6
9
  export declare function isValidJsonString(value: string): boolean;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Function to check if a string is valid XML
3
+ *
4
+ * @param value
5
+ * @returns True if the string is a valid XML string, false otherwise
6
+ *
7
+ * @public exported from `@promptbook/utils`
8
+ */
9
+ export declare function isValidXmlString(value: string): boolean;
@@ -0,0 +1,12 @@
1
+ import type { string_filename } from '../../../types/typeAliases';
2
+ /**
3
+ * Provides the path to the `.env` file
4
+ *
5
+ * Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
6
+ *
7
+ * @private within the repository - for CLI utils
8
+ */
9
+ export declare function $provideEnvFilename(): Promise<string_filename | null>;
10
+ /**
11
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
12
+ */
@@ -3,6 +3,7 @@ import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
3
3
  * @@@
4
4
  *
5
5
  * @@@ .env
6
+ * Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
6
7
  *
7
8
  * It looks for environment variables:
8
9
  * - `process.env.OPENAI_API_KEY`
@@ -14,12 +15,5 @@ import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
14
15
  */
15
16
  export declare function $provideLlmToolsConfigurationFromEnv(): Promise<LlmToolsConfiguration>;
16
17
  /**
17
- * TODO: [🧠][🪁] Maybe do allow to do auto-install if package not registered and not found
18
- * TODO: Add Azure OpenAI
19
- * TODO: [🧠][🍛]
20
- * TODO: [🧠] Is there some meaningfull way how to test this util
21
18
  * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
22
- * TODO: [👷‍♂️] @@@ Manual about construction of llmTools
23
- * TODO: This should be maybe not under `_common` but under `utils`
24
- * TODO: [🧠][⚛] Maybe pass env as argument
25
- * TODO: [®] DRY Register logic */
19
+ */
@@ -12,6 +12,8 @@ type GetLlmToolsForTestingAndScriptsAndPlaygroundOptions = CreateLlmToolsFromCon
12
12
  /**
13
13
  * Returns LLM tools for testing purposes
14
14
  *
15
+ * Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
16
+ *
15
17
  * @private within the repository - JUST FOR TESTS, SCRIPTS AND PLAYGROUND
16
18
  */
17
19
  export declare function $provideLlmToolsForTestingAndScriptsAndPlayground(options?: GetLlmToolsForTestingAndScriptsAndPlaygroundOptions): Promise<LlmExecutionToolsWithTotalUsage>;