@promptbook/utils 0.103.0-56 β 0.103.0-67
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/esm/index.es.js +22 -4
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/components.index.d.ts +2 -2
- package/esm/typings/src/_packages/types.index.d.ts +6 -0
- package/esm/typings/src/book-2.0/agent-source/AgentBasicInformation.d.ts +2 -1
- package/esm/typings/src/book-2.0/agent-source/createCommitmentRegex.d.ts +1 -1
- package/esm/typings/src/book-components/Chat/AgentChat/AgentChat.d.ts +3 -0
- package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +6 -0
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentIntegration.d.ts +52 -0
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentSeamlessIntegration.d.ts +14 -0
- package/esm/typings/src/book-components/icons/SendIcon.d.ts +3 -0
- package/esm/typings/src/commitments/CLOSED/CLOSED.d.ts +4 -0
- package/esm/typings/src/commitments/CLOSED/CLOSED.test.d.ts +4 -0
- package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +4 -0
- package/esm/typings/src/commitments/_base/BaseCommitmentDefinition.d.ts +6 -0
- package/esm/typings/src/llm-providers/agent/Agent.d.ts +3 -1
- package/esm/typings/src/other/templates/getTemplatesPipelineCollection.d.ts +1 -1
- package/esm/typings/src/types/typeAliases.d.ts +6 -0
- package/esm/typings/src/utils/color/Color.d.ts +1 -1
- package/esm/typings/src/utils/random/$generateBookBoilerplate.d.ts +6 -0
- package/esm/typings/src/utils/random/CzechNamePool.d.ts +7 -0
- package/esm/typings/src/utils/random/EnglishNamePool.d.ts +7 -0
- package/esm/typings/src/utils/random/NamePool.d.ts +17 -0
- package/esm/typings/src/utils/random/getNamePool.d.ts +10 -0
- package/esm/typings/src/version.d.ts +1 -1
- package/package.json +2 -2
- package/umd/index.umd.js +22 -4
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgent.d.ts +0 -29
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
import type { AgentBasicInformation } from '../../book-2.0/agent-source/AgentBasicInformation';
|
|
3
|
+
import { string_css_class } from '../../types/typeAliases';
|
|
4
|
+
/**
|
|
5
|
+
* @private props of PromptbookAgentIntegration component
|
|
6
|
+
*/
|
|
7
|
+
export type PromptbookAgentIntegrationProps = {
|
|
8
|
+
/**
|
|
9
|
+
* URL of the agent to connect to
|
|
10
|
+
*
|
|
11
|
+
* @example "http://s6.ptbk.io/benjamin-white"
|
|
12
|
+
*/
|
|
13
|
+
readonly agentUrl: string;
|
|
14
|
+
/**
|
|
15
|
+
* Form of the agent integration
|
|
16
|
+
*
|
|
17
|
+
* @default `seamless`
|
|
18
|
+
*
|
|
19
|
+
* - `seamless` Default, current behavior
|
|
20
|
+
* - `book` Show the Agent as a book in BookEditor
|
|
21
|
+
* - `chat` Show the Agent as a chat which is not floating but as AgentChat component
|
|
22
|
+
* - `profile` Show the Agent as a profile using
|
|
23
|
+
*/
|
|
24
|
+
readonly formfactor?: 'seamless' | 'book' | 'chat' | 'profile';
|
|
25
|
+
/**
|
|
26
|
+
* Optional metadata to show before the agent is connected
|
|
27
|
+
* Or to override the agent metadata if the agent does not provide it
|
|
28
|
+
*/
|
|
29
|
+
readonly meta?: Partial<AgentBasicInformation['meta']>;
|
|
30
|
+
/**
|
|
31
|
+
* Callback when the window is opened or closed
|
|
32
|
+
*/
|
|
33
|
+
onOpenChange?(isOpen: boolean): void;
|
|
34
|
+
/**
|
|
35
|
+
* Optional CSS class name which will be added to root element
|
|
36
|
+
*/
|
|
37
|
+
readonly className?: string_css_class;
|
|
38
|
+
/**
|
|
39
|
+
* Optional CSS style which will be added to root element
|
|
40
|
+
*/
|
|
41
|
+
readonly style?: CSSProperties;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Renders a floating agent button that opens a chat window with the remote agent.
|
|
45
|
+
*
|
|
46
|
+
* @public exported from `@promptbook/components`
|
|
47
|
+
*/
|
|
48
|
+
export declare function PromptbookAgentIntegration(props: PromptbookAgentIntegrationProps): import("react/jsx-runtime").JSX.Element | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* TODO: !!! Load the full branding
|
|
51
|
+
* TODO: !!! <promptbook-agent> element
|
|
52
|
+
*/
|
package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentSeamlessIntegration.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { PromptbookAgentIntegrationProps } from './PromptbookAgentIntegration';
|
|
2
|
+
type PromptbookAgentSeamlessIntegrationProps = Omit<PromptbookAgentIntegrationProps, 'formfactor'>;
|
|
3
|
+
/**
|
|
4
|
+
* Renders a floating agent button that opens a chat window with the remote agent.
|
|
5
|
+
*
|
|
6
|
+
* @private component of PromptbookAgentIntegration
|
|
7
|
+
*/
|
|
8
|
+
export declare function PromptbookAgentSeamlessIntegration(props: PromptbookAgentSeamlessIntegrationProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
10
|
+
/**
|
|
11
|
+
* TODO: !!!! Use iframe here instead of implementing the chat directly, allow to switch between seamless and iframe mode via `isIframeUsed` prop
|
|
12
|
+
* TODO: !!! Load the full branding
|
|
13
|
+
* TODO: !!! <promptbook-agent> element
|
|
14
|
+
*/
|
|
@@ -16,6 +16,10 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
|
16
16
|
*/
|
|
17
17
|
export declare class ClosedCommitmentDefinition extends BaseCommitmentDefinition<'CLOSED'> {
|
|
18
18
|
constructor();
|
|
19
|
+
/**
|
|
20
|
+
* The `CLOSED` commitment is standalone.
|
|
21
|
+
*/
|
|
22
|
+
get requiresContent(): boolean;
|
|
19
23
|
/**
|
|
20
24
|
* Short one-line description of CLOSED.
|
|
21
25
|
*/
|
|
@@ -19,6 +19,10 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
|
19
19
|
*/
|
|
20
20
|
export declare class UseBrowserCommitmentDefinition extends BaseCommitmentDefinition<'USE BROWSER'> {
|
|
21
21
|
constructor();
|
|
22
|
+
/**
|
|
23
|
+
* The `USE BROWSER` commitment is standalone.
|
|
24
|
+
*/
|
|
25
|
+
get requiresContent(): boolean;
|
|
22
26
|
/**
|
|
23
27
|
* Short one-line description of USE BROWSER.
|
|
24
28
|
*/
|
|
@@ -15,6 +15,12 @@ export declare abstract class BaseCommitmentDefinition<TBookCommitment extends s
|
|
|
15
15
|
* Must be implemented by each concrete commitment.
|
|
16
16
|
*/
|
|
17
17
|
abstract get description(): string;
|
|
18
|
+
/**
|
|
19
|
+
* Whether this commitment requires content.
|
|
20
|
+
* If true, regex will match only if there is content after the commitment keyword.
|
|
21
|
+
* If false, regex will match even if there is no content.
|
|
22
|
+
*/
|
|
23
|
+
get requiresContent(): boolean;
|
|
18
24
|
/**
|
|
19
25
|
* Icon for this commitment.
|
|
20
26
|
* It should be a single emoji.
|
|
@@ -4,7 +4,7 @@ import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
|
4
4
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
5
5
|
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
6
6
|
import type { Prompt } from '../../types/Prompt';
|
|
7
|
-
import type { string_agent_hash, string_agent_name, string_agent_url, string_url_image } from '../../types/typeAliases';
|
|
7
|
+
import type { string_agent_hash, string_agent_name, string_agent_url, string_color, string_fonts, string_url_image } from '../../types/typeAliases';
|
|
8
8
|
import { AgentLlmExecutionTools } from './AgentLlmExecutionTools';
|
|
9
9
|
import type { AgentOptions } from './AgentOptions';
|
|
10
10
|
/**
|
|
@@ -48,6 +48,8 @@ export declare class Agent extends AgentLlmExecutionTools implements LlmExecutio
|
|
|
48
48
|
fullname?: string;
|
|
49
49
|
image?: string_url_image;
|
|
50
50
|
link?: string;
|
|
51
|
+
font?: string_fonts;
|
|
52
|
+
color?: string_color;
|
|
51
53
|
title?: string;
|
|
52
54
|
description?: string;
|
|
53
55
|
[key: string]: string | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PipelineCollection } from '../../collection/pipeline-collection/
|
|
1
|
+
import type { PipelineCollection } from '../../collection/pipeline-collection/PipelineCollection';
|
|
2
2
|
/**
|
|
3
3
|
* Get pipeline collection for Untitled Promptbook project
|
|
4
4
|
*
|
|
@@ -330,6 +330,12 @@ export type string_css_class = string;
|
|
|
330
330
|
* For example `border`
|
|
331
331
|
*/
|
|
332
332
|
export type string_css_property = string;
|
|
333
|
+
/**
|
|
334
|
+
* Semantic helper
|
|
335
|
+
*
|
|
336
|
+
* For example `"Arial, sans-serif"`
|
|
337
|
+
*/
|
|
338
|
+
export type string_fonts = string;
|
|
333
339
|
/**
|
|
334
340
|
* Semantic helper
|
|
335
341
|
*
|
|
@@ -23,7 +23,7 @@ export declare class Color {
|
|
|
23
23
|
* @param color
|
|
24
24
|
* @returns Color object
|
|
25
25
|
*/
|
|
26
|
-
static from(color: string_color | Color): WithTake<Color>;
|
|
26
|
+
static from(color: string_color | Color, _isSingleValue?: boolean): WithTake<Color>;
|
|
27
27
|
/**
|
|
28
28
|
* Creates a new Color instance from miscellaneous formats
|
|
29
29
|
* It just does not throw error when it fails, it returns PROMPTBOOK_COLOR instead
|
|
@@ -9,6 +9,12 @@ type GenerateBookBoilerplateOptions = PartialDeep<Omit<AgentBasicInformation, 'p
|
|
|
9
9
|
* @default 'Adam'
|
|
10
10
|
*/
|
|
11
11
|
parentAgentName?: string_agent_name_in_book;
|
|
12
|
+
/**
|
|
13
|
+
* Name pool to use for generating agent name
|
|
14
|
+
*
|
|
15
|
+
* @default 'ENGLISH'
|
|
16
|
+
*/
|
|
17
|
+
namePool?: string;
|
|
12
18
|
};
|
|
13
19
|
/**
|
|
14
20
|
* Generates boilerplate for a new agent book
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { string_color, string_person_fullname } from '../../types/typeAliases';
|
|
2
|
+
/**
|
|
3
|
+
* Result of generating a name
|
|
4
|
+
*/
|
|
5
|
+
export type GenerateNameResult = {
|
|
6
|
+
fullname: string_person_fullname;
|
|
7
|
+
color: string_color;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Interface for a name pool
|
|
11
|
+
*/
|
|
12
|
+
export type NamePool = {
|
|
13
|
+
/**
|
|
14
|
+
* Generates a random name
|
|
15
|
+
*/
|
|
16
|
+
generateName(): GenerateNameResult;
|
|
17
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { NamePool } from './NamePool';
|
|
2
|
+
/**
|
|
3
|
+
* Gets the name pool based on the language code
|
|
4
|
+
*
|
|
5
|
+
* @param language - The language code (e.g. 'ENGLISH', 'CZECH')
|
|
6
|
+
* @returns The name pool
|
|
7
|
+
*
|
|
8
|
+
* @private [π] Maybe expose via some package
|
|
9
|
+
*/
|
|
10
|
+
export declare function getNamePool(language: string): NamePool;
|
|
@@ -15,7 +15,7 @@ export declare const BOOK_LANGUAGE_VERSION: string_semantic_version;
|
|
|
15
15
|
export declare const PROMPTBOOK_ENGINE_VERSION: string_promptbook_version;
|
|
16
16
|
/**
|
|
17
17
|
* Represents the version string of the Promptbook engine.
|
|
18
|
-
* It follows semantic versioning (e.g., `0.103.0-
|
|
18
|
+
* It follows semantic versioning (e.g., `0.103.0-66`).
|
|
19
19
|
*
|
|
20
20
|
* @generated
|
|
21
21
|
*/
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@promptbook/utils",
|
|
3
|
-
"version": "0.103.0-
|
|
3
|
+
"version": "0.103.0-67",
|
|
4
4
|
"description": "Promptbook: Turn your company's scattered knowledge into AI ready books",
|
|
5
5
|
"private": false,
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
|
-
"url": "https://github.com/webgptorg/promptbook"
|
|
9
|
+
"url": "git+https://github.com/webgptorg/promptbook.git"
|
|
10
10
|
},
|
|
11
11
|
"author": "Pavol HejnΓ½ <pavol@ptbk.io> (https://www.pavolhejny.com/)",
|
|
12
12
|
"contributors": [
|
package/umd/index.umd.js
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* @generated
|
|
24
24
|
* @see https://github.com/webgptorg/promptbook
|
|
25
25
|
*/
|
|
26
|
-
const PROMPTBOOK_ENGINE_VERSION = '0.103.0-
|
|
26
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.103.0-67';
|
|
27
27
|
/**
|
|
28
28
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
29
29
|
* Note: [π] Ignore a discrepancy between file name and entity name
|
|
@@ -289,15 +289,33 @@
|
|
|
289
289
|
* @param color
|
|
290
290
|
* @returns Color object
|
|
291
291
|
*/
|
|
292
|
-
static from(color) {
|
|
293
|
-
if (color
|
|
292
|
+
static from(color, _isSingleValue = false) {
|
|
293
|
+
if (color === '') {
|
|
294
|
+
throw new Error(`Can not create color from empty string`);
|
|
295
|
+
}
|
|
296
|
+
else if (color instanceof Color) {
|
|
294
297
|
return take(color);
|
|
295
298
|
}
|
|
296
299
|
else if (Color.isColor(color)) {
|
|
297
300
|
return take(color);
|
|
298
301
|
}
|
|
299
302
|
else if (typeof color === 'string') {
|
|
300
|
-
|
|
303
|
+
try {
|
|
304
|
+
return Color.fromString(color);
|
|
305
|
+
}
|
|
306
|
+
catch (error) {
|
|
307
|
+
// <- Note: Can not use `assertsError(error)` here because it causes circular dependency
|
|
308
|
+
if (_isSingleValue) {
|
|
309
|
+
throw error;
|
|
310
|
+
}
|
|
311
|
+
const parts = color.split(/[\s+,;|]/);
|
|
312
|
+
if (parts.length > 0) {
|
|
313
|
+
return Color.from(parts[0].trim(), true);
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
throw new Error(`Can not create color from given string "${color}"`);
|
|
317
|
+
}
|
|
318
|
+
}
|
|
301
319
|
}
|
|
302
320
|
else {
|
|
303
321
|
console.error({ color });
|