@promptbook/markdown-utils 0.80.0-1 → 0.81.0-5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/esm/index.es.js +38 -13
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/core.index.d.ts +0 -6
- package/esm/typings/src/_packages/editable.index.d.ts +10 -0
- package/esm/typings/src/_packages/templates.index.d.ts +4 -0
- package/esm/typings/src/_packages/types.index.d.ts +4 -0
- package/esm/typings/src/_packages/utils.index.d.ts +2 -2
- package/esm/typings/src/execution/ExecutionTools.d.ts +7 -0
- package/esm/typings/src/execution/PromptbookFetch.d.ts +5 -0
- package/esm/typings/src/execution/PromptbookFetch.test-type.d.ts +5 -0
- package/esm/typings/src/expectations/drafts/isDomainNameFree.d.ts +2 -1
- package/esm/typings/src/expectations/drafts/isGithubNameFree.d.ts +2 -1
- package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +1 -1
- package/esm/typings/src/scrapers/_common/utils/scraperFetch.d.ts +7 -0
- package/esm/typings/src/utils/editable/types/PipelineEditableSerialized.d.ts +42 -0
- package/esm/typings/src/{conversion → utils/editable}/utils/removePipelineCommand.d.ts +3 -3
- package/esm/typings/src/{conversion → utils/editable}/utils/renamePipelineParameter.d.ts +3 -3
- package/esm/typings/src/{conversion → utils/editable}/utils/stringifyPipelineJson.d.ts +2 -2
- package/esm/typings/src/utils/getBookTemplate.d.ts +12 -0
- package/esm/typings/src/utils/parameters/{replaceParameters.d.ts → templateParameters.d.ts} +1 -1
- package/package.json +1 -1
- package/umd/index.umd.js +38 -13
- package/umd/index.umd.js.map +1 -1
- /package/esm/typings/src/{conversion → utils/editable}/utils/removePipelineCommand.test.d.ts +0 -0
- /package/esm/typings/src/{conversion → utils/editable}/utils/renamePipelineParameter.test.d.ts +0 -0
- /package/esm/typings/src/{conversion → utils/editable}/utils/stringifyPipelineJson.test.d.ts +0 -0
- /package/esm/typings/src/utils/parameters/{replaceParameters.test.d.ts → templateParameters.test.d.ts} +0 -0
|
@@ -34,9 +34,6 @@ import { pipelineJsonToString } from '../conversion/pipelineJsonToString';
|
|
|
34
34
|
import { precompilePipeline } from '../conversion/precompilePipeline';
|
|
35
35
|
import { prettifyPipelineString } from '../conversion/prettify/prettifyPipelineString';
|
|
36
36
|
import { extractParameterNamesFromTask } from '../conversion/utils/extractParameterNamesFromTask';
|
|
37
|
-
import { removePipelineCommand } from '../conversion/utils/removePipelineCommand';
|
|
38
|
-
import { renamePipelineParameter } from '../conversion/utils/renamePipelineParameter';
|
|
39
|
-
import { stringifyPipelineJson } from '../conversion/utils/stringifyPipelineJson';
|
|
40
37
|
import { validatePipeline } from '../conversion/validation/validatePipeline';
|
|
41
38
|
import { CallbackInterfaceTools } from '../dialogs/callback/CallbackInterfaceTools';
|
|
42
39
|
import type { CallbackInterfaceToolsOptions } from '../dialogs/callback/CallbackInterfaceToolsOptions';
|
|
@@ -155,9 +152,6 @@ export { pipelineJsonToString };
|
|
|
155
152
|
export { precompilePipeline };
|
|
156
153
|
export { prettifyPipelineString };
|
|
157
154
|
export { extractParameterNamesFromTask };
|
|
158
|
-
export { removePipelineCommand };
|
|
159
|
-
export { renamePipelineParameter };
|
|
160
|
-
export { stringifyPipelineJson };
|
|
161
155
|
export { validatePipeline };
|
|
162
156
|
export { CallbackInterfaceTools };
|
|
163
157
|
export type { CallbackInterfaceToolsOptions };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION } from '../version';
|
|
2
|
+
import type { PipelineEditableSerialized } from '../utils/editable/types/PipelineEditableSerialized';
|
|
3
|
+
import { removePipelineCommand } from '../utils/editable/utils/removePipelineCommand';
|
|
4
|
+
import { renamePipelineParameter } from '../utils/editable/utils/renamePipelineParameter';
|
|
5
|
+
import { stringifyPipelineJson } from '../utils/editable/utils/stringifyPipelineJson';
|
|
6
|
+
export { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION };
|
|
7
|
+
export type { PipelineEditableSerialized };
|
|
8
|
+
export { removePipelineCommand };
|
|
9
|
+
export { renamePipelineParameter };
|
|
10
|
+
export { stringifyPipelineJson };
|
|
@@ -30,6 +30,7 @@ import type { LlmExecutionTools } from '../execution/LlmExecutionTools';
|
|
|
30
30
|
import type { LlmExecutionToolsConstructor } from '../execution/LlmExecutionToolsConstructor';
|
|
31
31
|
import type { PipelineExecutor } from '../execution/PipelineExecutor';
|
|
32
32
|
import type { PipelineExecutorResult } from '../execution/PipelineExecutorResult';
|
|
33
|
+
import type { PromptbookFetch } from '../execution/PromptbookFetch';
|
|
33
34
|
import type { PromptResult } from '../execution/PromptResult';
|
|
34
35
|
import type { CompletionPromptResult } from '../execution/PromptResult';
|
|
35
36
|
import type { ChatPromptResult } from '../execution/PromptResult';
|
|
@@ -241,6 +242,7 @@ import type { number_gigabytes } from '../types/typeAliases';
|
|
|
241
242
|
import type { number_terabytes } from '../types/typeAliases';
|
|
242
243
|
import type { Registered } from '../utils/$Register';
|
|
243
244
|
import type { Registration } from '../utils/$Register';
|
|
245
|
+
import type { PipelineEditableSerialized } from '../utils/editable/types/PipelineEditableSerialized';
|
|
244
246
|
import type { ExecCommandOptions } from '../utils/execCommand/ExecCommandOptions';
|
|
245
247
|
import type { ExecCommandOptionsAdvanced } from '../utils/execCommand/ExecCommandOptions';
|
|
246
248
|
import type { FromtoItems } from '../utils/FromtoItems';
|
|
@@ -292,6 +294,7 @@ export type { LlmExecutionTools };
|
|
|
292
294
|
export type { LlmExecutionToolsConstructor };
|
|
293
295
|
export type { PipelineExecutor };
|
|
294
296
|
export type { PipelineExecutorResult };
|
|
297
|
+
export type { PromptbookFetch };
|
|
295
298
|
export type { PromptResult };
|
|
296
299
|
export type { CompletionPromptResult };
|
|
297
300
|
export type { ChatPromptResult };
|
|
@@ -503,6 +506,7 @@ export type { number_gigabytes };
|
|
|
503
506
|
export type { number_terabytes };
|
|
504
507
|
export type { Registered };
|
|
505
508
|
export type { Registration };
|
|
509
|
+
export type { PipelineEditableSerialized };
|
|
506
510
|
export type { ExecCommandOptions };
|
|
507
511
|
export type { ExecCommandOptionsAdvanced };
|
|
508
512
|
export type { FromtoItems };
|
|
@@ -46,7 +46,7 @@ import { searchKeywords } from '../utils/normalization/searchKeywords';
|
|
|
46
46
|
import { titleToName } from '../utils/normalization/titleToName';
|
|
47
47
|
import { spaceTrim } from '../utils/organization/spaceTrim';
|
|
48
48
|
import { extractParameterNames } from '../utils/parameters/extractParameterNames';
|
|
49
|
-
import {
|
|
49
|
+
import { templateParameters } from '../utils/parameters/templateParameters';
|
|
50
50
|
import { parseNumber } from '../utils/parseNumber';
|
|
51
51
|
import { $randomSeed } from '../utils/random/$randomSeed';
|
|
52
52
|
import { removeEmojis } from '../utils/removeEmojis';
|
|
@@ -121,7 +121,7 @@ export { searchKeywords };
|
|
|
121
121
|
export { titleToName };
|
|
122
122
|
export { spaceTrim };
|
|
123
123
|
export { extractParameterNames };
|
|
124
|
-
export {
|
|
124
|
+
export { templateParameters };
|
|
125
125
|
export { parseNumber };
|
|
126
126
|
export { $randomSeed };
|
|
127
127
|
export { removeEmojis };
|
|
@@ -3,6 +3,7 @@ import type { Arrayable } from '../types/Arrayable';
|
|
|
3
3
|
import type { Executables } from './Executables';
|
|
4
4
|
import type { FilesystemTools } from './FilesystemTools';
|
|
5
5
|
import type { LlmExecutionTools } from './LlmExecutionTools';
|
|
6
|
+
import type { PromptbookFetch } from './PromptbookFetch';
|
|
6
7
|
import type { ScriptExecutionTools } from './ScriptExecutionTools';
|
|
7
8
|
import type { UserInterfaceTools } from './UserInterfaceTools';
|
|
8
9
|
/**
|
|
@@ -27,6 +28,12 @@ export type ExecutionTools = {
|
|
|
27
28
|
* @default undefined - If not provided, no filesystem operations will be possible
|
|
28
29
|
*/
|
|
29
30
|
readonly fs?: FilesystemTools;
|
|
31
|
+
/**
|
|
32
|
+
* Fetch function for fetching resources
|
|
33
|
+
*
|
|
34
|
+
* @default `fetch` - If not provided, the built-in `fetch' function is used with a lightweight error handling wrapper.
|
|
35
|
+
*/
|
|
36
|
+
readonly fetch?: PromptbookFetch;
|
|
30
37
|
/**
|
|
31
38
|
* Scrapers for extracting knowledge from external sources
|
|
32
39
|
*
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import type { PromptbookFetch } from '../../execution/PromptbookFetch';
|
|
1
2
|
import type { string_name } from '../../types/typeAliases';
|
|
2
3
|
/**
|
|
3
4
|
* @private still in development
|
|
4
5
|
*/
|
|
5
|
-
export declare function isDomainNameFree(name: string_name): Promise<boolean>;
|
|
6
|
+
export declare function isDomainNameFree(name: string_name, fetch: PromptbookFetch): Promise<boolean>;
|
|
6
7
|
/**
|
|
7
8
|
* TODO: [🍓][🧠] Test and implement `isDomainNameFree`
|
|
8
9
|
* TODO: Export via some (and probably new) NPM package
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import type { PromptbookFetch } from '../../execution/PromptbookFetch';
|
|
1
2
|
import type { string_name } from '../../types/typeAliases';
|
|
2
3
|
/**
|
|
3
4
|
* @private still in development
|
|
4
5
|
*/
|
|
5
|
-
export declare function isGithubNameFree(name: string_name): Promise<boolean>;
|
|
6
|
+
export declare function isGithubNameFree(name: string_name, fetch: PromptbookFetch): Promise<boolean>;
|
|
6
7
|
/**
|
|
7
8
|
* TODO: [🍓][🧠] Test and implement `isGithubNameFree`
|
|
8
9
|
* TODO: Export via some (and probably new) NPM package
|
|
@@ -8,4 +8,4 @@ import type { ScraperSourceHandler } from '../Scraper';
|
|
|
8
8
|
*
|
|
9
9
|
* @public exported from `@promptbook/core`
|
|
10
10
|
*/
|
|
11
|
-
export declare function makeKnowledgeSourceHandler(knowledgeSource: SetOptional<KnowledgeSourceJson, 'name'>, tools: Pick<ExecutionTools, 'fs'>, options?: Pick<PrepareAndScrapeOptions, 'rootDirname' | 'isVerbose'>): Promise<ScraperSourceHandler>;
|
|
11
|
+
export declare function makeKnowledgeSourceHandler(knowledgeSource: SetOptional<KnowledgeSourceJson, 'name'>, tools: Pick<ExecutionTools, 'fs' | 'fetch'>, options?: Pick<PrepareAndScrapeOptions, 'rootDirname' | 'isVerbose'>): Promise<ScraperSourceHandler>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { PromptbookFetch } from '../../../execution/PromptbookFetch';
|
|
2
|
+
/**
|
|
3
|
+
* The built-in `fetch' function with a lightweight error handling wrapper as default fetch function used in Promptbook scrapers
|
|
4
|
+
*
|
|
5
|
+
* @private as default `fetch` function used in Promptbook scrapers
|
|
6
|
+
*/
|
|
7
|
+
export declare const scraperFetch: PromptbookFetch;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { ErrorJson } from '../../../errors/utils/ErrorJson';
|
|
2
|
+
import type { PipelineJson } from '../../../pipeline/PipelineJson/PipelineJson';
|
|
3
|
+
import type { string_date_iso8601 } from '../../../types/typeAliases';
|
|
4
|
+
import type { string_pipeline_url } from '../../../types/typeAliases';
|
|
5
|
+
import type { PipelineString } from '../../../pipeline/PipelineString';
|
|
6
|
+
/**
|
|
7
|
+
* Represents a single pipeline in PromptbookStudio
|
|
8
|
+
*
|
|
9
|
+
* This is simple extension of PipelineJson with additional metadata
|
|
10
|
+
* Note: There are two similar entities:
|
|
11
|
+
* 1) Type (interface) `PipelineEditableSerialized` which represents just data in database
|
|
12
|
+
* 2) Class `PipelineEditable` which implements `PipelineEditableSerialized` and adds error handling and editing capabilities
|
|
13
|
+
*
|
|
14
|
+
* @public exported from `@promptbook/editable`
|
|
15
|
+
*/
|
|
16
|
+
export type PipelineEditableSerialized = PipelineJson & {
|
|
17
|
+
/**
|
|
18
|
+
* When was the pipeline created
|
|
19
|
+
*/
|
|
20
|
+
readonly createdAt: string_date_iso8601;
|
|
21
|
+
/**
|
|
22
|
+
* When was the pipeline last modified
|
|
23
|
+
*/
|
|
24
|
+
readonly updatedAt: string_date_iso8601 | null;
|
|
25
|
+
/**
|
|
26
|
+
* Unique identifier of the pipeline
|
|
27
|
+
*
|
|
28
|
+
* Note: In PromptbookStudio it is required
|
|
29
|
+
*/
|
|
30
|
+
readonly pipelineUrl: string_pipeline_url;
|
|
31
|
+
/**
|
|
32
|
+
* Backup of the pipeline string
|
|
33
|
+
*
|
|
34
|
+
* Note: This is present ONLY if pipelineString can not be automatically converted into json (i.e. compilePipeline throws an error)
|
|
35
|
+
* In other words, this is just a BACKUP of pipeline which will be deleted whener pipeline is valid again
|
|
36
|
+
*/
|
|
37
|
+
readonly pipelineString: PipelineString | string | null;
|
|
38
|
+
/**
|
|
39
|
+
* Known errors to transfer to new PipelineEditable
|
|
40
|
+
*/
|
|
41
|
+
readonly knownErrors: Array<ErrorJson>;
|
|
42
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CommandType } from '
|
|
2
|
-
import type { PipelineString } from '
|
|
1
|
+
import type { CommandType } from '../../../commands/_common/types/CommandType';
|
|
2
|
+
import type { PipelineString } from '../../../pipeline/PipelineString';
|
|
3
3
|
/**
|
|
4
4
|
* Options for `removePipelineCommand`
|
|
5
5
|
*/
|
|
@@ -16,7 +16,7 @@ type RemovePipelineCommandOptions = {
|
|
|
16
16
|
/**
|
|
17
17
|
* Function `removePipelineCommand` will remove one command from pipeline string
|
|
18
18
|
*
|
|
19
|
-
* @public exported from `@promptbook/
|
|
19
|
+
* @public exported from `@promptbook/editable`
|
|
20
20
|
*/
|
|
21
21
|
export declare function removePipelineCommand(options: RemovePipelineCommandOptions): PipelineString;
|
|
22
22
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { PipelineJson } from '
|
|
2
|
-
import type { string_name } from '
|
|
1
|
+
import type { PipelineJson } from '../../../pipeline/PipelineJson/PipelineJson';
|
|
2
|
+
import type { string_name } from '../../../types/typeAliases';
|
|
3
3
|
type RenameParameterOptions = {
|
|
4
4
|
/**
|
|
5
5
|
* Pipeline to search and replace for parameters
|
|
@@ -20,7 +20,7 @@ type RenameParameterOptions = {
|
|
|
20
20
|
* In other words, it will find all parameters that are not used in the task itseld and all its dependencies
|
|
21
21
|
*
|
|
22
22
|
* @throws {PipelineLogicError} If the new parameter name is already used in the pipeline
|
|
23
|
-
* @public exported from `@promptbook/
|
|
23
|
+
* @public exported from `@promptbook/editable`
|
|
24
24
|
*/
|
|
25
25
|
export declare function renamePipelineParameter(options: RenameParameterOptions): PipelineJson;
|
|
26
26
|
export {};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { string_json } from '
|
|
1
|
+
import type { string_json } from '../../../types/typeAliases';
|
|
2
2
|
/**
|
|
3
3
|
* Stringify the PipelineJson with proper formatting
|
|
4
4
|
*
|
|
5
5
|
* Note: [0] It can be used for more JSON types like whole collection of pipelines, single knowledge piece, etc.
|
|
6
6
|
* Note: In contrast to JSON.stringify, this function ensures that **embedding index** is on single line
|
|
7
7
|
*
|
|
8
|
-
* @public exported from `@promptbook/
|
|
8
|
+
* @public exported from `@promptbook/editable`
|
|
9
9
|
*/
|
|
10
10
|
export declare function stringifyPipelineJson<TType>(pipeline: TType): string_json<TType>;
|
|
11
11
|
/**
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PipelineJson } from '../pipeline/PipelineJson/PipelineJson';
|
|
2
|
+
import type { string_formfactor_name } from '../formfactors/_common/string_formfactor_name';
|
|
3
|
+
/**
|
|
4
|
+
* Get template for new book
|
|
5
|
+
*
|
|
6
|
+
* @public exported from `@promptbook/templates`
|
|
7
|
+
*/
|
|
8
|
+
export declare function getBookTemplate(formfactorName: string_formfactor_name): PipelineJson | null;
|
|
9
|
+
/**
|
|
10
|
+
* TODO: [🧠] Which is the best place for this function
|
|
11
|
+
* TODO: `book string template notation
|
|
12
|
+
*/
|
|
@@ -9,4 +9,4 @@ import type { string_template } from '../../types/typeAliases';
|
|
|
9
9
|
* @throws {PipelineExecutionError} if parameter is not defined, not closed, or not opened
|
|
10
10
|
* @public exported from `@promptbook/utils`
|
|
11
11
|
*/
|
|
12
|
-
export declare function
|
|
12
|
+
export declare function templateParameters(template: string_template, parameters: Parameters): string;
|
package/package.json
CHANGED
package/umd/index.umd.js
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
*
|
|
23
23
|
* @see https://github.com/webgptorg/promptbook
|
|
24
24
|
*/
|
|
25
|
-
var PROMPTBOOK_ENGINE_VERSION = '0.
|
|
25
|
+
var PROMPTBOOK_ENGINE_VERSION = '0.81.0-4';
|
|
26
26
|
/**
|
|
27
27
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
28
28
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -3402,6 +3402,30 @@
|
|
|
3402
3402
|
return false;
|
|
3403
3403
|
}
|
|
3404
3404
|
|
|
3405
|
+
/**
|
|
3406
|
+
* The built-in `fetch' function with a lightweight error handling wrapper as default fetch function used in Promptbook scrapers
|
|
3407
|
+
*
|
|
3408
|
+
* @private as default `fetch` function used in Promptbook scrapers
|
|
3409
|
+
*/
|
|
3410
|
+
var scraperFetch = function (url, init) { return __awaiter(void 0, void 0, void 0, function () {
|
|
3411
|
+
var error_1;
|
|
3412
|
+
return __generator(this, function (_a) {
|
|
3413
|
+
switch (_a.label) {
|
|
3414
|
+
case 0:
|
|
3415
|
+
_a.trys.push([0, 2, , 3]);
|
|
3416
|
+
return [4 /*yield*/, fetch(url, init)];
|
|
3417
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
3418
|
+
case 2:
|
|
3419
|
+
error_1 = _a.sent();
|
|
3420
|
+
if (!(error_1 instanceof Error)) {
|
|
3421
|
+
throw error_1;
|
|
3422
|
+
}
|
|
3423
|
+
throw new KnowledgeScrapeError(spaceTrim__default["default"](function (block) { return "\n Can not fetch \"".concat(url, "\"\n\n Fetch error:\n ").concat(block(error_1.message), "\n\n "); }));
|
|
3424
|
+
case 3: return [2 /*return*/];
|
|
3425
|
+
}
|
|
3426
|
+
});
|
|
3427
|
+
}); };
|
|
3428
|
+
|
|
3405
3429
|
/**
|
|
3406
3430
|
* @@@
|
|
3407
3431
|
*
|
|
@@ -3410,13 +3434,14 @@
|
|
|
3410
3434
|
function makeKnowledgeSourceHandler(knowledgeSource, tools, options) {
|
|
3411
3435
|
var _a;
|
|
3412
3436
|
return __awaiter(this, void 0, void 0, function () {
|
|
3413
|
-
var sourceContent, name,
|
|
3414
|
-
return __generator(this, function (
|
|
3415
|
-
switch (
|
|
3437
|
+
var _b, fetch, sourceContent, name, _c, _d, rootDirname, url, response_1, mimeType, filename_1, fileExtension, mimeType;
|
|
3438
|
+
return __generator(this, function (_f) {
|
|
3439
|
+
switch (_f.label) {
|
|
3416
3440
|
case 0:
|
|
3441
|
+
_b = tools.fetch, fetch = _b === void 0 ? scraperFetch : _b;
|
|
3417
3442
|
sourceContent = knowledgeSource.sourceContent;
|
|
3418
3443
|
name = knowledgeSource.name;
|
|
3419
|
-
|
|
3444
|
+
_c = options || {}, _d = _c.rootDirname, rootDirname = _d === void 0 ? null : _d, _c.isVerbose;
|
|
3420
3445
|
if (!name) {
|
|
3421
3446
|
name = sourceContentToName(sourceContent);
|
|
3422
3447
|
}
|
|
@@ -3424,7 +3449,7 @@
|
|
|
3424
3449
|
url = sourceContent;
|
|
3425
3450
|
return [4 /*yield*/, fetch(url)];
|
|
3426
3451
|
case 1:
|
|
3427
|
-
response_1 =
|
|
3452
|
+
response_1 = _f.sent();
|
|
3428
3453
|
mimeType = ((_a = response_1.headers.get('content-type')) === null || _a === void 0 ? void 0 : _a.split(';')[0]) || 'text/html';
|
|
3429
3454
|
return [2 /*return*/, {
|
|
3430
3455
|
source: name,
|
|
@@ -3481,7 +3506,7 @@
|
|
|
3481
3506
|
mimeType = extensionToMimeType(fileExtension || '');
|
|
3482
3507
|
return [4 /*yield*/, isFileExisting(filename_1, tools.fs)];
|
|
3483
3508
|
case 3:
|
|
3484
|
-
if (!(
|
|
3509
|
+
if (!(_f.sent())) {
|
|
3485
3510
|
throw new NotFoundError(spaceTrim__default["default"](function (block) { return "\n Can not make source handler for file which does not exist:\n\n File:\n ".concat(block(filename_1), "\n "); }));
|
|
3486
3511
|
}
|
|
3487
3512
|
// TODO: [🧠][😿] Test security file - file is scoped to the project (BUT maybe do this in `filesystemTools`)
|
|
@@ -4381,7 +4406,7 @@
|
|
|
4381
4406
|
* @throws {PipelineExecutionError} if parameter is not defined, not closed, or not opened
|
|
4382
4407
|
* @public exported from `@promptbook/utils`
|
|
4383
4408
|
*/
|
|
4384
|
-
function
|
|
4409
|
+
function templateParameters(template, parameters) {
|
|
4385
4410
|
var e_1, _a;
|
|
4386
4411
|
try {
|
|
4387
4412
|
for (var _b = __values(Object.entries(parameters)), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
@@ -4407,7 +4432,7 @@
|
|
|
4407
4432
|
var loopLimit = LOOP_LIMIT;
|
|
4408
4433
|
var _loop_1 = function () {
|
|
4409
4434
|
if (loopLimit-- < 0) {
|
|
4410
|
-
throw new LimitReachedError('Loop limit reached during parameters replacement in `
|
|
4435
|
+
throw new LimitReachedError('Loop limit reached during parameters replacement in `templateParameters`');
|
|
4411
4436
|
}
|
|
4412
4437
|
var precol = match.groups.precol;
|
|
4413
4438
|
var parameterName = match.groups.parameterName;
|
|
@@ -4659,7 +4684,7 @@
|
|
|
4659
4684
|
}
|
|
4660
4685
|
return [3 /*break*/, 24];
|
|
4661
4686
|
case 2:
|
|
4662
|
-
$ongoingTaskResult.$resultString =
|
|
4687
|
+
$ongoingTaskResult.$resultString = templateParameters(preparedContent, parameters);
|
|
4663
4688
|
return [3 /*break*/, 25];
|
|
4664
4689
|
case 3:
|
|
4665
4690
|
modelRequirements = __assign(__assign({ modelVariant: 'CHAT' }, (preparedPipeline.defaultModelRequirements || {})), (task.modelRequirements || {}));
|
|
@@ -4782,8 +4807,8 @@
|
|
|
4782
4807
|
_j = $ongoingTaskResult;
|
|
4783
4808
|
return [4 /*yield*/, tools.userInterface.promptDialog($deepFreeze({
|
|
4784
4809
|
promptTitle: task.title,
|
|
4785
|
-
promptMessage:
|
|
4786
|
-
defaultValue:
|
|
4810
|
+
promptMessage: templateParameters(task.description || '', parameters),
|
|
4811
|
+
defaultValue: templateParameters(preparedContent, parameters),
|
|
4787
4812
|
// TODO: [🧠] !! Figure out how to define placeholder in .book.md file
|
|
4788
4813
|
placeholder: undefined,
|
|
4789
4814
|
priority: priority,
|
|
@@ -4907,7 +4932,7 @@
|
|
|
4907
4932
|
if (!isJokerAttempt &&
|
|
4908
4933
|
task.taskType === 'PROMPT_TASK' &&
|
|
4909
4934
|
$ongoingTaskResult.$prompt
|
|
4910
|
-
// <- Note: [2] When some expected parameter is not defined, error will occur in
|
|
4935
|
+
// <- Note: [2] When some expected parameter is not defined, error will occur in templateParameters
|
|
4911
4936
|
// In that case we don’t want to make a report about it because it’s not a llm execution error
|
|
4912
4937
|
) {
|
|
4913
4938
|
// TODO: [🧠] Maybe put other taskTypes into report
|