@difizen/libro-prompt-cell 0.3.1 → 0.3.2
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/es/code-block.d.ts +3 -0
- package/es/code-block.d.ts.map +1 -0
- package/es/code-block.js +110 -0
- package/es/index.less +69 -6
- package/es/input-handler/variable-name-input.d.ts +6 -6
- package/es/input-handler/variable-name-input.d.ts.map +1 -1
- package/es/interpreter-code-output-render.d.ts +6 -0
- package/es/interpreter-code-output-render.d.ts.map +1 -0
- package/es/interpreter-code-output-render.js +25 -0
- package/es/interpreter-code-output-rendermime-contribution.d.ts +13 -0
- package/es/interpreter-code-output-rendermime-contribution.d.ts.map +1 -0
- package/es/interpreter-code-output-rendermime-contribution.js +22 -0
- package/es/libro-formatter-prompt-magic-contribution.d.ts +15 -1
- package/es/libro-formatter-prompt-magic-contribution.d.ts.map +1 -1
- package/es/libro-formatter-prompt-magic-contribution.js +18 -2
- package/es/module.d.ts.map +1 -1
- package/es/module.js +2 -1
- package/es/prompt-cell-model.d.ts +14 -18
- package/es/prompt-cell-model.d.ts.map +1 -1
- package/es/prompt-cell-model.js +66 -27
- package/es/prompt-cell-protocol.d.ts +7 -0
- package/es/prompt-cell-protocol.d.ts.map +1 -1
- package/es/prompt-cell-script.d.ts +1 -0
- package/es/prompt-cell-script.d.ts.map +1 -1
- package/es/prompt-cell-script.js +3 -0
- package/es/prompt-cell-view.d.ts +16 -9
- package/es/prompt-cell-view.d.ts.map +1 -1
- package/es/prompt-cell-view.js +329 -62
- package/es/prompt-output-render.d.ts.map +1 -1
- package/es/prompt-output-render.js +17 -3
- package/package.json +11 -6
- package/src/code-block.tsx +107 -0
- package/src/index.less +69 -6
- package/src/input-handler/variable-name-input.tsx +6 -6
- package/src/interpreter-code-output-render.tsx +28 -0
- package/src/interpreter-code-output-rendermime-contribution.ts +18 -0
- package/src/libro-formatter-prompt-magic-contribution.ts +21 -0
- package/src/module.ts +2 -0
- package/src/prompt-cell-model.ts +42 -11
- package/src/prompt-cell-protocol.ts +8 -0
- package/src/prompt-cell-script.ts +3 -0
- package/src/prompt-cell-view.tsx +251 -14
- package/src/prompt-output-render.tsx +22 -8
- package/es/libro-llm-render.d.ts +0 -10
- package/es/libro-llm-render.d.ts.map +0 -1
- package/es/libro-llm-render.js +0 -75
- package/src/libro-llm-render.tsx +0 -64
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../src/code-block.tsx"],"names":[],"mappings":"AASA,eAAO,MAAM,SAAS,UAAW,GAAG,4CA2BnC,CAAC;AAEF,eAAO,MAAM,oBAAoB,UAAW,GAAG,mDAoE9C,CAAC"}
|
package/es/code-block.js
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
+
import { CopyOutlined, EditOutlined } from '@ant-design/icons';
|
|
8
|
+
import { copy2clipboard } from '@difizen/libro-jupyter';
|
|
9
|
+
import { useInject, ViewInstance } from '@difizen/mana-app';
|
|
10
|
+
import { Collapse } from 'antd';
|
|
11
|
+
import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';
|
|
12
|
+
import { LibroPromptCellView } from "./prompt-cell-view.js";
|
|
13
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
+
export var CodeBlock = function CodeBlock(props) {
|
|
16
|
+
var className = props.className,
|
|
17
|
+
children = props.children;
|
|
18
|
+
if (!props.inline && className) {
|
|
19
|
+
var _ref = /language-(\w+)/.exec(className || '') || [],
|
|
20
|
+
_ref2 = _slicedToArray(_ref, 2),
|
|
21
|
+
lang = _ref2[1];
|
|
22
|
+
return /*#__PURE__*/_jsxs("pre", {
|
|
23
|
+
className: "chat-msg-md-code-wrap",
|
|
24
|
+
children: [lang && /*#__PURE__*/_jsx("div", {
|
|
25
|
+
className: "chat-msg-md-code-lang",
|
|
26
|
+
children: lang
|
|
27
|
+
}), /*#__PURE__*/_jsx(CopyOutlined, {
|
|
28
|
+
onClick: function onClick() {
|
|
29
|
+
copy2clipboard(children);
|
|
30
|
+
},
|
|
31
|
+
className: "chat-msg-md-code-copy"
|
|
32
|
+
}), /*#__PURE__*/_jsx(SyntaxHighlighter, {
|
|
33
|
+
className: "libro-llm-syntax-highlighter",
|
|
34
|
+
language: lang,
|
|
35
|
+
style: {},
|
|
36
|
+
children: typeof children === 'string' ? children.trim() : children
|
|
37
|
+
})]
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return /*#__PURE__*/_jsx("code", {
|
|
41
|
+
className: "chat-msg-md-code-code",
|
|
42
|
+
children: children
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
export var InterpreterCodeBlock = function InterpreterCodeBlock(props) {
|
|
46
|
+
var className = props.className,
|
|
47
|
+
children = props.children;
|
|
48
|
+
var instance = useInject(ViewInstance);
|
|
49
|
+
var cell = instance.cell;
|
|
50
|
+
if (!(cell instanceof LibroPromptCellView)) {
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
var replace = function replace(data) {
|
|
54
|
+
if (cell.editor) {
|
|
55
|
+
var length = cell.editor.model.value.length;
|
|
56
|
+
var start = cell.editor.getPositionAt(0);
|
|
57
|
+
var end = cell.editor.getPositionAt(length);
|
|
58
|
+
if (start && end) {
|
|
59
|
+
cell.editor.replaceSelection(data, {
|
|
60
|
+
start: start,
|
|
61
|
+
end: end
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
if (!props.inline && className) {
|
|
67
|
+
var _ref3 = /language-(\w+)/.exec(className || '') || [],
|
|
68
|
+
_ref4 = _slicedToArray(_ref3, 2),
|
|
69
|
+
lang = _ref4[1];
|
|
70
|
+
return /*#__PURE__*/_jsx(Collapse, {
|
|
71
|
+
ghost: true,
|
|
72
|
+
items: [{
|
|
73
|
+
key: '1',
|
|
74
|
+
label: 'Code',
|
|
75
|
+
children: /*#__PURE__*/_jsx("p", {
|
|
76
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
77
|
+
className: "libro-code-interpreter-code",
|
|
78
|
+
children: /*#__PURE__*/_jsxs("pre", {
|
|
79
|
+
className: "chat-msg-md-code-wrap",
|
|
80
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
81
|
+
className: "libro-interpreter-edit-container",
|
|
82
|
+
onClick: function onClick() {
|
|
83
|
+
cell.interpreterEditMode = true;
|
|
84
|
+
if (cell.model.interpreterCode) {
|
|
85
|
+
replace(cell.model.interpreterCode);
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
89
|
+
className: "libro-interpreter-edit-tip",
|
|
90
|
+
children: "\u4EE3\u7801\u7F16\u8F91"
|
|
91
|
+
}), /*#__PURE__*/_jsx(EditOutlined, {
|
|
92
|
+
className: "libro-interpreter-edit-icon"
|
|
93
|
+
})]
|
|
94
|
+
}), /*#__PURE__*/_jsx(SyntaxHighlighter, {
|
|
95
|
+
className: "libro-llm-syntax-highlighter",
|
|
96
|
+
language: lang,
|
|
97
|
+
style: {},
|
|
98
|
+
children: typeof children === 'string' ? children.trim() : children
|
|
99
|
+
})]
|
|
100
|
+
})
|
|
101
|
+
})
|
|
102
|
+
})
|
|
103
|
+
}]
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
return /*#__PURE__*/_jsx("code", {
|
|
107
|
+
className: "chat-msg-md-code-code",
|
|
108
|
+
children: children
|
|
109
|
+
});
|
|
110
|
+
};
|
package/es/index.less
CHANGED
|
@@ -1,7 +1,29 @@
|
|
|
1
|
+
@ant-prefix: ant;
|
|
2
|
+
|
|
1
3
|
.libro-prompt-cell-header {
|
|
2
4
|
display: flex;
|
|
3
5
|
align-items: center;
|
|
4
6
|
justify-content: space-between;
|
|
7
|
+
border-bottom: 1px solid var(--mana-libro-code-border-color);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.libro-interpreter-code-output-render {
|
|
11
|
+
padding: 10px 24px;
|
|
12
|
+
|
|
13
|
+
.@{ant-prefix}-collapse-content > .@{ant-prefix}-collapse-content-box {
|
|
14
|
+
padding: unset;
|
|
15
|
+
}
|
|
16
|
+
.@{ant-prefix}-collapse-ghost
|
|
17
|
+
> .@{ant-prefix}-collapse-item
|
|
18
|
+
> .@{ant-prefix}-collapse-content
|
|
19
|
+
> .@{ant-prefix}-collapse-content-box {
|
|
20
|
+
padding: unset;
|
|
21
|
+
}
|
|
22
|
+
.@{ant-prefix}-collapse
|
|
23
|
+
> .@{ant-prefix}-collapse-item
|
|
24
|
+
> .@{ant-prefix}-collapse-header {
|
|
25
|
+
padding: unset;
|
|
26
|
+
}
|
|
5
27
|
}
|
|
6
28
|
|
|
7
29
|
.libro-llm-hljs {
|
|
@@ -36,17 +58,13 @@
|
|
|
36
58
|
}
|
|
37
59
|
}
|
|
38
60
|
|
|
39
|
-
.libro-llm-output-render {
|
|
40
|
-
p {
|
|
41
|
-
color: var(--mana-libro-llm-response-output-text-color);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
61
|
.libro-prompt-output-render-container {
|
|
46
62
|
padding: 10px 24px;
|
|
47
63
|
}
|
|
48
64
|
|
|
49
65
|
.libro-prompt-output-llm-render {
|
|
66
|
+
color: var(--mana-libro-llm-response-output-text-color);
|
|
67
|
+
|
|
50
68
|
.libro-llm-output-render pre {
|
|
51
69
|
background: #f4f6fb;
|
|
52
70
|
padding: 16px;
|
|
@@ -70,3 +88,48 @@
|
|
|
70
88
|
}
|
|
71
89
|
}
|
|
72
90
|
}
|
|
91
|
+
|
|
92
|
+
.libro-prompt-cell-model-tip,
|
|
93
|
+
.libro-prompt-cell-model-prompt {
|
|
94
|
+
padding: 10px 24px;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.libro-prompt-cell-model-prompt {
|
|
98
|
+
border-bottom: 1px solid var(--mana-color-border);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.libro-prompt-cell-model-tip {
|
|
102
|
+
color: var(--mana-libro-llm-response-output-text-color);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.libro-interpreter-edit-tip {
|
|
106
|
+
margin-right: 4px;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.libro-interpreter-edit-container {
|
|
110
|
+
display: flex;
|
|
111
|
+
position: absolute;
|
|
112
|
+
margin-top: 4px;
|
|
113
|
+
z-index: 100;
|
|
114
|
+
right: 0;
|
|
115
|
+
align-items: center;
|
|
116
|
+
padding: 0 8px;
|
|
117
|
+
color: #bdc0c4;
|
|
118
|
+
cursor: pointer;
|
|
119
|
+
|
|
120
|
+
&:hover {
|
|
121
|
+
color: #1590ff;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.libro-prompt-cell-right-header {
|
|
126
|
+
display: flex;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.libro-prompt-cell-interpreter-switch {
|
|
130
|
+
margin: 0 6px;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.libro-prompt-cell-interpreter-header-container {
|
|
134
|
+
display: inline-block;
|
|
135
|
+
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import type { FC } from 'react';
|
|
2
2
|
import './index.less';
|
|
3
3
|
interface VariableNameInputPopoverContentProps {
|
|
4
|
-
value
|
|
5
|
-
handleVariableNameChange: (variableName
|
|
6
|
-
checkVariableNameAvailable: (variableName
|
|
4
|
+
value?: string;
|
|
5
|
+
handleVariableNameChange: (variableName?: string) => void;
|
|
6
|
+
checkVariableNameAvailable: (variableName?: string) => boolean;
|
|
7
7
|
cancel: () => void;
|
|
8
8
|
}
|
|
9
9
|
export declare const VariableNameInputPopoverContent: FC<VariableNameInputPopoverContentProps>;
|
|
10
10
|
interface VariableNameInputProps {
|
|
11
|
-
value
|
|
12
|
-
handleVariableNameChange: (variableName
|
|
13
|
-
checkVariableNameAvailable: (variableName
|
|
11
|
+
value?: string;
|
|
12
|
+
handleVariableNameChange: (variableName?: string) => void;
|
|
13
|
+
checkVariableNameAvailable: (variableName?: string) => boolean;
|
|
14
14
|
classname?: string;
|
|
15
15
|
}
|
|
16
16
|
export declare const VariableNameInput: FC<VariableNameInputProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable-name-input.d.ts","sourceRoot":"","sources":["../../src/input-handler/variable-name-input.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,cAAc,CAAC;AAEtB,UAAU,oCAAoC;IAC5C,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"variable-name-input.d.ts","sourceRoot":"","sources":["../../src/input-handler/variable-name-input.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,cAAc,CAAC;AAEtB,UAAU,oCAAoC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wBAAwB,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,0BAA0B,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/D,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,+BAA+B,EAAE,EAAE,CAC9C,oCAAoC,CAgDrC,CAAC;AAEF,UAAU,sBAAsB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wBAAwB,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,0BAA0B,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CA2CxD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interpreter-code-output-render.d.ts","sourceRoot":"","sources":["../src/interpreter-code-output-render.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,EAAE,CAAC;IACjD,KAAK,EAAE,cAAc,CAAC;CACvB,CAmBA,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { InterpreterCodeBlock } from "./code-block.js";
|
|
3
|
+
import { LibroPromptCellView } from "./prompt-cell-view.js";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export var InterpreterCodeOutputRender = function InterpreterCodeOutputRender(props) {
|
|
6
|
+
var model = props.model;
|
|
7
|
+
if (!model.data['application/vnd.libro.interpreter.code+text']) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
if (!(model.cell instanceof LibroPromptCellView)) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
var data = model.data['application/vnd.libro.interpreter.code+text'];
|
|
14
|
+
model.cell.model.interpreterCode = data;
|
|
15
|
+
return /*#__PURE__*/_jsx("div", {
|
|
16
|
+
className: "libro-interpreter-code-output-render-container",
|
|
17
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
18
|
+
className: "libro-interpreter-code-output-render",
|
|
19
|
+
children: /*#__PURE__*/_jsx(InterpreterCodeBlock, {
|
|
20
|
+
className: "language-python",
|
|
21
|
+
children: data
|
|
22
|
+
})
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" resolution-mode="require"/>
|
|
2
|
+
import type { BaseOutputView } from '@difizen/libro-jupyter';
|
|
3
|
+
import { RenderMimeContribution } from '@difizen/libro-jupyter';
|
|
4
|
+
export declare class LibroInterpreterCodeOutputMimeTypeContribution implements RenderMimeContribution {
|
|
5
|
+
canHandle: (model: BaseOutputView) => number;
|
|
6
|
+
renderType: string;
|
|
7
|
+
safe: boolean;
|
|
8
|
+
mimeTypes: string[];
|
|
9
|
+
render: import("react").FC<{
|
|
10
|
+
model: BaseOutputView;
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=interpreter-code-output-rendermime-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interpreter-code-output-rendermime-contribution.d.ts","sourceRoot":"","sources":["../src/interpreter-code-output-rendermime-contribution.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAKhE,qBACa,8CACX,YAAW,sBAAsB;IAEjC,SAAS,UAAW,cAAc,YAEhC;IACF,UAAU,SAAiC;IAC3C,IAAI,UAAQ;IACZ,SAAS,WAAmD;IAC5D,MAAM;;OAA+B;CACtC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
var _dec, _class;
|
|
3
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
4
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
6
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
7
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
8
|
+
import { RenderMimeContribution } from '@difizen/libro-jupyter';
|
|
9
|
+
import { singleton } from '@difizen/mana-app';
|
|
10
|
+
import { InterpreterCodeOutputRender } from "./interpreter-code-output-render.js";
|
|
11
|
+
export var LibroInterpreterCodeOutputMimeTypeContribution = (_dec = singleton({
|
|
12
|
+
contrib: RenderMimeContribution
|
|
13
|
+
}), _dec(_class = /*#__PURE__*/_createClass(function LibroInterpreterCodeOutputMimeTypeContribution() {
|
|
14
|
+
_classCallCheck(this, LibroInterpreterCodeOutputMimeTypeContribution);
|
|
15
|
+
this.canHandle = function (model) {
|
|
16
|
+
return 200;
|
|
17
|
+
};
|
|
18
|
+
this.renderType = 'interpreterCodeOutputRender';
|
|
19
|
+
this.safe = true;
|
|
20
|
+
this.mimeTypes = ['application/vnd.libro.interpreter.code+text'];
|
|
21
|
+
this.render = InterpreterCodeOutputRender;
|
|
22
|
+
})) || _class);
|
|
@@ -6,15 +6,23 @@ export interface PromptDecodedFormatter extends DefaultDecodedFormatter {
|
|
|
6
6
|
variableName?: string;
|
|
7
7
|
cellId?: string;
|
|
8
8
|
record?: string;
|
|
9
|
+
interpreterCode?: string;
|
|
10
|
+
supportInterpreter?: 'dynamic' | 'immutable' | 'disable';
|
|
11
|
+
interpreterEnabled?: boolean;
|
|
9
12
|
}
|
|
10
13
|
export declare class FormatterPromptMagicContribution implements FormatterContribution<PromptDecodedFormatter> {
|
|
11
14
|
formatter: string;
|
|
12
15
|
formatterOptions?: object;
|
|
13
|
-
canHandle: (libroFormatter: string) =>
|
|
16
|
+
canHandle: (libroFormatter: string) => 100 | 1;
|
|
14
17
|
encode: (source: PromptDecodedFormatter) => {
|
|
15
18
|
source: string;
|
|
16
19
|
metadata: {
|
|
17
20
|
libroFormatter: string;
|
|
21
|
+
interpreter: {
|
|
22
|
+
interpreter_code: string | undefined;
|
|
23
|
+
support_interpreter: "dynamic" | "immutable" | "disable" | undefined;
|
|
24
|
+
interpreter_enabled: boolean | undefined;
|
|
25
|
+
};
|
|
18
26
|
};
|
|
19
27
|
};
|
|
20
28
|
decode: (formatterValue: DefaultEncodedFormatter) => {
|
|
@@ -23,12 +31,18 @@ export declare class FormatterPromptMagicContribution implements FormatterContri
|
|
|
23
31
|
chatKey: any;
|
|
24
32
|
cellId: any;
|
|
25
33
|
record: any;
|
|
34
|
+
interpreterCode: any;
|
|
35
|
+
supportInterpreter: any;
|
|
36
|
+
interpreterEnabled: any;
|
|
26
37
|
} | {
|
|
27
38
|
value: string;
|
|
28
39
|
variableName?: undefined;
|
|
29
40
|
chatKey?: undefined;
|
|
30
41
|
cellId?: undefined;
|
|
31
42
|
record?: undefined;
|
|
43
|
+
interpreterCode?: undefined;
|
|
44
|
+
supportInterpreter?: undefined;
|
|
45
|
+
interpreterEnabled?: undefined;
|
|
32
46
|
};
|
|
33
47
|
validate: (source: PromptDecodedFormatter) => source is PromptDecodedFormatter;
|
|
34
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libro-formatter-prompt-magic-contribution.d.ts","sourceRoot":"","sources":["../src/libro-formatter-prompt-magic-contribution.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAEL,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"libro-formatter-prompt-magic-contribution.d.ts","sourceRoot":"","sources":["../src/libro-formatter-prompt-magic-contribution.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAEL,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IACzD,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,qBACa,gCACX,YAAW,qBAAqB,CAAC,sBAAsB,CAAC;IAExD,SAAS,SAA4B;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,mBAAoB,MAAM,aAKjC;IAEF,MAAM,WAAY,sBAAsB;;;;;;;;;;MAsBtC;IAEF,MAAM,mBAAoB,uBAAuB;;;;;;;;;;;;;;;;;;MAkC/C;IAEF,QAAQ,WAAY,sBAAsB,sCAKxC;CACH"}
|
|
@@ -36,7 +36,12 @@ export var FormatterPromptMagicContribution = (_dec = singleton({
|
|
|
36
36
|
return {
|
|
37
37
|
source: encodeValue,
|
|
38
38
|
metadata: {
|
|
39
|
-
libroFormatter: _this.formatter
|
|
39
|
+
libroFormatter: _this.formatter,
|
|
40
|
+
interpreter: {
|
|
41
|
+
interpreter_code: source.interpreterCode,
|
|
42
|
+
support_interpreter: source.supportInterpreter,
|
|
43
|
+
interpreter_enabled: source.interpreterEnabled
|
|
44
|
+
}
|
|
40
45
|
}
|
|
41
46
|
};
|
|
42
47
|
};
|
|
@@ -46,6 +51,14 @@ export var FormatterPromptMagicContribution = (_dec = singleton({
|
|
|
46
51
|
var run = value.split('%%prompt \n')[1];
|
|
47
52
|
var runValue = JSON.parse(run);
|
|
48
53
|
var codeValue = runValue.prompt;
|
|
54
|
+
var interpreterCode;
|
|
55
|
+
var supportInterpreter;
|
|
56
|
+
var interpreterEnabled;
|
|
57
|
+
if (formatterValue.metadata['interpreter']) {
|
|
58
|
+
interpreterCode = formatterValue.metadata['interpreter']['interpreter_code'];
|
|
59
|
+
supportInterpreter = formatterValue.metadata['interpreter']['support_interpreter'];
|
|
60
|
+
interpreterEnabled = formatterValue.metadata['interpreter']['interpreter_enabled'];
|
|
61
|
+
}
|
|
49
62
|
var chatKey = runValue.chat_key || runValue.model_name;
|
|
50
63
|
var variableName = runValue.variable_name;
|
|
51
64
|
var cellId = runValue.cell_id;
|
|
@@ -55,7 +68,10 @@ export var FormatterPromptMagicContribution = (_dec = singleton({
|
|
|
55
68
|
variableName: variableName,
|
|
56
69
|
chatKey: chatKey,
|
|
57
70
|
cellId: cellId,
|
|
58
|
-
record: record
|
|
71
|
+
record: record,
|
|
72
|
+
interpreterCode: interpreterCode,
|
|
73
|
+
supportInterpreter: supportInterpreter,
|
|
74
|
+
interpreterEnabled: interpreterEnabled
|
|
59
75
|
};
|
|
60
76
|
}
|
|
61
77
|
return {
|
package/es/module.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAY/C,eAAO,MAAM,4BAA4B;;CAExC,CAAC;AAEF,eAAO,MAAM,qBAAqB,YA0B2B,CAAC"}
|
package/es/module.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CellOptions, LibroModule, OutputModule } from '@difizen/libro-core';
|
|
2
2
|
import { LibroRenderMimeModule } from '@difizen/libro-rendermime';
|
|
3
3
|
import { ManaModule } from '@difizen/mana-app';
|
|
4
|
+
import { LibroInterpreterCodeOutputMimeTypeContribution } from "./interpreter-code-output-rendermime-contribution.js";
|
|
4
5
|
import { FormatterPromptMagicContribution } from "./libro-formatter-prompt-magic-contribution.js";
|
|
5
6
|
import { LibroPromptCellCommandContribution } from "./prompt-cell-command-contribution.js";
|
|
6
7
|
import { PromptCellContribution } from "./prompt-cell-contribution.js";
|
|
@@ -12,7 +13,7 @@ import { LibroPromptOutputMimeTypeContribution } from "./prompt-output-rendermim
|
|
|
12
13
|
export var LibroPromptCellModuleSetting = {
|
|
13
14
|
loadable: true
|
|
14
15
|
};
|
|
15
|
-
export var LibroPromptCellModule = ManaModule.create().register(PromptCellContribution, PromptScript, LibroPromptCellView, LibroPromptCellModel, LibroPromptOutputMimeTypeContribution, LibroPromptCellCommandContribution, FormatterPromptMagicContribution, {
|
|
16
|
+
export var LibroPromptCellModule = ManaModule.create().register(PromptCellContribution, PromptScript, LibroPromptCellView, LibroPromptCellModel, LibroPromptOutputMimeTypeContribution, LibroInterpreterCodeOutputMimeTypeContribution, LibroPromptCellCommandContribution, FormatterPromptMagicContribution, {
|
|
16
17
|
token: LibroPromptCellModelFactory,
|
|
17
18
|
useFactory: function useFactory(ctx) {
|
|
18
19
|
return function (options) {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { ICodeCell } from '@difizen/libro-common';
|
|
1
|
+
import type { ICodeCell, ExecutionCount, ICodeCellMetadata } from '@difizen/libro-common';
|
|
3
2
|
import type { ExecutableCellModel } from '@difizen/libro-core';
|
|
4
3
|
import { LibroCellModel } from '@difizen/libro-core';
|
|
5
4
|
import { CellOptions } from '@difizen/libro-core';
|
|
@@ -7,38 +6,35 @@ import type { ExecutionMeta } from '@difizen/libro-jupyter';
|
|
|
7
6
|
import { Emitter } from '@difizen/mana-app';
|
|
8
7
|
import { ViewManager } from '@difizen/mana-app';
|
|
9
8
|
import type { Event as ManaEvent } from '@difizen/mana-app';
|
|
9
|
+
import type { PromptDecodedFormatter } from './libro-formatter-prompt-magic-contribution.js';
|
|
10
|
+
import type { InterpreterMeta } from './prompt-cell-protocol.js';
|
|
10
11
|
export interface PromptCellMetadata extends ICodeCellMetadata {
|
|
11
12
|
execution: ExecutionMeta;
|
|
13
|
+
interpreter: InterpreterMeta;
|
|
12
14
|
}
|
|
13
15
|
export declare class LibroPromptCellModel extends LibroCellModel implements ExecutableCellModel {
|
|
14
16
|
executeCount: ExecutionCount;
|
|
15
17
|
hasExecutedSuccess: boolean;
|
|
16
18
|
hasExecutedError: boolean;
|
|
17
|
-
metadata: Partial<PromptCellMetadata
|
|
19
|
+
metadata: Partial<PromptCellMetadata>;
|
|
18
20
|
kernelExecuting: boolean;
|
|
19
21
|
record?: string;
|
|
20
22
|
modelType?: string;
|
|
23
|
+
prompt: string;
|
|
24
|
+
promptOutput?: string;
|
|
21
25
|
chatKey?: string;
|
|
22
|
-
|
|
26
|
+
supportInterpreter?: 'dynamic' | 'immutable' | 'disable';
|
|
27
|
+
interpreterEnabled?: boolean;
|
|
28
|
+
interpreterCode?: string;
|
|
29
|
+
variableName?: string;
|
|
23
30
|
executing: boolean;
|
|
24
31
|
hasOutputHidden: boolean;
|
|
25
32
|
hasOutputsScrolled: boolean;
|
|
33
|
+
_interpreterEditMode: boolean;
|
|
26
34
|
msgChangeEmitter: Emitter<any>;
|
|
27
35
|
get msgChange(): ManaEvent<any>;
|
|
28
|
-
get decodeObject():
|
|
29
|
-
|
|
30
|
-
chatKey: string | undefined;
|
|
31
|
-
record: string | undefined;
|
|
32
|
-
value: string;
|
|
33
|
-
cellId: string;
|
|
34
|
-
};
|
|
35
|
-
set decodeObject(value: {
|
|
36
|
-
variableName: string;
|
|
37
|
-
chatKey: string | undefined;
|
|
38
|
-
record: string | undefined;
|
|
39
|
-
value: string;
|
|
40
|
-
cellId: string;
|
|
41
|
-
});
|
|
36
|
+
get decodeObject(): PromptDecodedFormatter;
|
|
37
|
+
set decodeObject(data: PromptDecodedFormatter);
|
|
42
38
|
viewManager: ViewManager;
|
|
43
39
|
constructor(options: CellOptions, viewManager: ViewManager);
|
|
44
40
|
toJSON(): Omit<ICodeCell, 'outputs'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-cell-model.d.ts","sourceRoot":"","sources":["../src/prompt-cell-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"prompt-cell-model.d.ts","sourceRoot":"","sources":["../src/prompt-cell-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,SAAS,EAAE,aAAa,CAAC;IACzB,WAAW,EAAE,eAAe,CAAC;CAC9B;AAED,qBACa,oBACX,SAAQ,cACR,YAAW,mBAAmB;IAG9B,YAAY,EAAE,cAAc,CAAC;IAG7B,kBAAkB,UAAS;IAE3B,gBAAgB,UAAS;IAEhB,QAAQ,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/C,eAAe,UAAS;IAGxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,MAAM,SAAM;IAEZ,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,kBAAkB,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAGzD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAG7B,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,SAAS,EAAE,OAAO,CAAC;IAEnB,eAAe,EAAE,OAAO,CAAC;IAEzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oBAAoB,UAAS;IAG7B,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,CAE9B;IAED,IAAa,YAAY,IAcO,sBAAsB,CAFrD;IAED,IAAa,YAAY,CAAC,IAAI,EAAE,sBAAsB,EASrD;IAED,WAAW,EAAE,WAAW,CAAC;gBAGF,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,WAAW;IAkBtC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC;IAgB7C,cAAc,IAAI,IAAI;IAKb,OAAO;IAKhB,SAAS;CAGV"}
|