@cozeloop/prompt-components 0.0.1 → 0.0.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/dist/edenx.config.d.ts +2 -0
- package/dist/{es/basic-editor/extensions/go-syntax.js → go-syntax-067c4f5d.mjs} +16 -9
- package/dist/go-syntax-4deb0289.js +8 -0
- package/dist/{es/basic-editor/extensions/go-theme.js → go-theme-062a6df6.mjs} +3 -4
- package/dist/go-theme-fbd8a4fa.js +1 -0
- package/dist/index.cjs +61 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2788 -0
- package/dist/{types → src}/basic-editor/custom-facet.d.ts +2 -1
- package/dist/src/basic-editor/diff.d.ts +16 -0
- package/dist/src/basic-editor/extensions/go-syntax.d.ts +71 -0
- package/dist/src/basic-editor/extensions/go-template.d.ts +1 -0
- package/dist/{types → src}/basic-editor/extensions/go-theme.d.ts +1 -1
- package/dist/src/basic-editor/extensions/jinja.d.ts +4 -0
- package/dist/{types → src}/basic-editor/extensions/keymap.d.ts +3 -2
- package/dist/src/basic-editor/extensions/language-support.d.ts +2 -0
- package/dist/src/basic-editor/extensions/markdown.d.ts +2 -0
- package/dist/src/basic-editor/extensions/search/dom/icon.d.ts +59 -0
- package/dist/src/basic-editor/extensions/search/dom/match-count.d.ts +14 -0
- package/dist/src/basic-editor/extensions/search/index.d.ts +1 -0
- package/dist/src/basic-editor/extensions/search/panel.d.ts +33 -0
- package/dist/src/basic-editor/extensions/search/theme.d.ts +1 -0
- package/dist/src/basic-editor/extensions/validation.d.ts +8 -0
- package/dist/src/basic-editor/extensions/variable.d.ts +11 -0
- package/dist/src/basic-editor/index.d.ts +29 -0
- package/dist/{types → src}/code-editor/index.d.ts +1 -1
- package/dist/src/code-editor/json-editor.d.ts +18 -0
- package/dist/src/code-editor/raw-text-editor.d.ts +11 -0
- package/dist/{types → src}/consts/index.d.ts +1 -1
- package/dist/src/dev-layout/index.d.ts +7 -0
- package/dist/{types → src}/index.d.ts +7 -7
- package/dist/src/mermaid-diagram/index.d.ts +12 -0
- package/dist/src/mermaid-diagram/use-svg-pan-zoom.d.ts +12 -0
- package/dist/{types → src}/mermaid-diagram/utils.d.ts +1 -1
- package/dist/src/model-config-editor/basic-type.d.ts +13 -0
- package/dist/src/model-config-editor/model-config-form.d.ts +13 -0
- package/dist/src/model-config-editor/popover-type.d.ts +19 -0
- package/dist/src/model-select/index.d.ts +27 -0
- package/dist/src/model-select/model-option/index.d.ts +25 -0
- package/dist/src/model-select/model-option-group/index.d.ts +16 -0
- package/dist/src/prompt-editor/index.d.ts +31 -0
- package/dist/src/prompt-editor/message-type-select.d.ts +11 -0
- package/dist/src/schema-editor/index.d.ts +11 -0
- package/dist/{types → src}/utils/base.d.ts +5 -4
- package/dist/src/utils/model-config.d.ts +5 -0
- package/dist/style.css +1 -0
- package/dist/test-build.d.ts +7 -0
- package/dist/vite.config.d.ts +2 -0
- package/package.json +15 -5
- package/dist/es/basic-editor/custom-facet.js +0 -9
- package/dist/es/basic-editor/diff.js +0 -138
- package/dist/es/basic-editor/extensions/go-template.js +0 -16
- package/dist/es/basic-editor/extensions/jinja.js +0 -80
- package/dist/es/basic-editor/extensions/keymap.js +0 -442
- package/dist/es/basic-editor/extensions/language-support.js +0 -12
- package/dist/es/basic-editor/extensions/markdown.js +0 -58
- package/dist/es/basic-editor/extensions/search/dom/icon.js +0 -250
- package/dist/es/basic-editor/extensions/search/dom/match-count.js +0 -33
- package/dist/es/basic-editor/extensions/search/index.js +0 -18
- package/dist/es/basic-editor/extensions/search/panel.js +0 -418
- package/dist/es/basic-editor/extensions/search/theme.js +0 -184
- package/dist/es/basic-editor/extensions/validation.js +0 -84
- package/dist/es/basic-editor/extensions/validation.module.js +0 -5
- package/dist/es/basic-editor/extensions/validation_module.css +0 -7
- package/dist/es/basic-editor/extensions/variable.js +0 -178
- package/dist/es/basic-editor/index.js +0 -171
- package/dist/es/code-editor/code-editor.js +0 -83
- package/dist/es/code-editor/index.js +0 -12
- package/dist/es/code-editor/json-editor.js +0 -157
- package/dist/es/code-editor/raw-text-editor.js +0 -46
- package/dist/es/code-editor/text-editor.js +0 -41
- package/dist/es/code-editor/themes/coze-dark.js +0 -112
- package/dist/es/code-editor/themes/coze-light.js +0 -118
- package/dist/es/consts/index.js +0 -12
- package/dist/es/dev-layout/index.js +0 -35
- package/dist/es/index.js +0 -66
- package/dist/es/mermaid-diagram/index.js +0 -148
- package/dist/es/mermaid-diagram/index.module.js +0 -5
- package/dist/es/mermaid-diagram/index_module.css +0 -4
- package/dist/es/mermaid-diagram/use-svg-pan-zoom.js +0 -49
- package/dist/es/mermaid-diagram/utils.js +0 -74
- package/dist/es/model-config-editor/basic-type.js +0 -73
- package/dist/es/model-config-editor/index.module.js +0 -5
- package/dist/es/model-config-editor/index_module.css +0 -8
- package/dist/es/model-config-editor/model-config-form.js +0 -130
- package/dist/es/model-config-editor/popover-type.js +0 -118
- package/dist/es/model-select/index.js +0 -136
- package/dist/es/model-select/index.module.js +0 -5
- package/dist/es/model-select/index_module.css +0 -14
- package/dist/es/model-select/model-option/index.js +0 -161
- package/dist/es/model-select/model-option/index.module.js +0 -5
- package/dist/es/model-select/model-option/index_module.css +0 -23
- package/dist/es/model-select/model-option-group/index.js +0 -44
- package/dist/es/prompt-editor/index.js +0 -188
- package/dist/es/prompt-editor/index.module.js +0 -5
- package/dist/es/prompt-editor/index_module.css +0 -71
- package/dist/es/prompt-editor/message-type-select.js +0 -74
- package/dist/es/schema-editor/index.js +0 -43
- package/dist/es/utils/base.js +0 -53
- package/dist/es/utils/model-config.js +0 -32
- package/dist/lib/basic-editor/custom-facet.js +0 -33
- package/dist/lib/basic-editor/diff.js +0 -167
- package/dist/lib/basic-editor/extensions/go-syntax.js +0 -146
- package/dist/lib/basic-editor/extensions/go-template.js +0 -50
- package/dist/lib/basic-editor/extensions/go-theme.js +0 -1091
- package/dist/lib/basic-editor/extensions/jinja.js +0 -100
- package/dist/lib/basic-editor/extensions/keymap.js +0 -465
- package/dist/lib/basic-editor/extensions/language-support.js +0 -32
- package/dist/lib/basic-editor/extensions/markdown.js +0 -78
- package/dist/lib/basic-editor/extensions/search/dom/icon.js +0 -291
- package/dist/lib/basic-editor/extensions/search/dom/match-count.js +0 -67
- package/dist/lib/basic-editor/extensions/search/index.js +0 -38
- package/dist/lib/basic-editor/extensions/search/panel.js +0 -429
- package/dist/lib/basic-editor/extensions/search/theme.js +0 -208
- package/dist/lib/basic-editor/extensions/validation.js +0 -118
- package/dist/lib/basic-editor/extensions/validation.module.js +0 -25
- package/dist/lib/basic-editor/extensions/validation_module.css +0 -7
- package/dist/lib/basic-editor/extensions/variable.js +0 -190
- package/dist/lib/basic-editor/index.js +0 -193
- package/dist/lib/code-editor/code-editor.js +0 -117
- package/dist/lib/code-editor/index.js +0 -40
- package/dist/lib/code-editor/json-editor.js +0 -184
- package/dist/lib/code-editor/raw-text-editor.js +0 -70
- package/dist/lib/code-editor/text-editor.js +0 -75
- package/dist/lib/code-editor/themes/coze-dark.js +0 -136
- package/dist/lib/code-editor/themes/coze-light.js +0 -142
- package/dist/lib/consts/index.js +0 -38
- package/dist/lib/dev-layout/index.js +0 -69
- package/dist/lib/index.js +0 -110
- package/dist/lib/mermaid-diagram/index.js +0 -174
- package/dist/lib/mermaid-diagram/index.module.js +0 -25
- package/dist/lib/mermaid-diagram/index_module.css +0 -4
- package/dist/lib/mermaid-diagram/use-svg-pan-zoom.js +0 -83
- package/dist/lib/mermaid-diagram/utils.js +0 -98
- package/dist/lib/model-config-editor/basic-type.js +0 -105
- package/dist/lib/model-config-editor/index.module.js +0 -25
- package/dist/lib/model-config-editor/index_module.css +0 -8
- package/dist/lib/model-config-editor/model-config-form.js +0 -149
- package/dist/lib/model-config-editor/popover-type.js +0 -145
- package/dist/lib/model-select/index.js +0 -170
- package/dist/lib/model-select/index.module.js +0 -25
- package/dist/lib/model-select/index_module.css +0 -14
- package/dist/lib/model-select/model-option/index.js +0 -188
- package/dist/lib/model-select/model-option/index.module.js +0 -25
- package/dist/lib/model-select/model-option/index_module.css +0 -23
- package/dist/lib/model-select/model-option-group/index.js +0 -75
- package/dist/lib/prompt-editor/index.js +0 -218
- package/dist/lib/prompt-editor/index.module.js +0 -25
- package/dist/lib/prompt-editor/index_module.css +0 -71
- package/dist/lib/prompt-editor/message-type-select.js +0 -108
- package/dist/lib/schema-editor/index.js +0 -77
- package/dist/lib/utils/base.js +0 -82
- package/dist/lib/utils/model-config.js +0 -57
- package/dist/types/basic-editor/diff.d.ts +0 -15
- package/dist/types/basic-editor/extensions/go-syntax.d.ts +0 -71
- package/dist/types/basic-editor/extensions/go-template.d.ts +0 -1
- package/dist/types/basic-editor/extensions/jinja.d.ts +0 -6
- package/dist/types/basic-editor/extensions/language-support.d.ts +0 -2
- package/dist/types/basic-editor/extensions/markdown.d.ts +0 -2
- package/dist/types/basic-editor/extensions/search/dom/icon.d.ts +0 -59
- package/dist/types/basic-editor/extensions/search/dom/match-count.d.ts +0 -14
- package/dist/types/basic-editor/extensions/search/index.d.ts +0 -1
- package/dist/types/basic-editor/extensions/search/panel.d.ts +0 -32
- package/dist/types/basic-editor/extensions/search/theme.d.ts +0 -1
- package/dist/types/basic-editor/extensions/validation.d.ts +0 -10
- package/dist/types/basic-editor/extensions/variable.d.ts +0 -14
- package/dist/types/basic-editor/index.d.ts +0 -28
- package/dist/types/code-editor/code-editor.d.ts +0 -23
- package/dist/types/code-editor/json-editor.d.ts +0 -17
- package/dist/types/code-editor/raw-text-editor.d.ts +0 -11
- package/dist/types/code-editor/text-editor.d.ts +0 -23
- package/dist/types/code-editor/themes/coze-dark.d.ts +0 -1
- package/dist/types/code-editor/themes/coze-light.d.ts +0 -1
- package/dist/types/dev-layout/index.d.ts +0 -13
- package/dist/types/mermaid-diagram/index.d.ts +0 -12
- package/dist/types/mermaid-diagram/use-svg-pan-zoom.d.ts +0 -17
- package/dist/types/model-config-editor/basic-type.d.ts +0 -19
- package/dist/types/model-config-editor/model-config-form.d.ts +0 -14
- package/dist/types/model-config-editor/popover-type.d.ts +0 -25
- package/dist/types/model-select/index.d.ts +0 -38
- package/dist/types/model-select/model-option/index.d.ts +0 -30
- package/dist/types/model-select/model-option-group/index.d.ts +0 -15
- package/dist/types/prompt-editor/index.d.ts +0 -30
- package/dist/types/prompt-editor/message-type-select.d.ts +0 -16
- package/dist/types/schema-editor/index.d.ts +0 -18
- package/dist/types/utils/model-config.d.ts +0 -4
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { createTheme, tags as t } from "@coze-editor/editor/preset-code";
|
|
2
|
-
import { EditorView } from "@codemirror/view";
|
|
3
|
-
const colors = {
|
|
4
|
-
background: "#151B27",
|
|
5
|
-
// syntax
|
|
6
|
-
comment: "#FFFFFF63",
|
|
7
|
-
key: "#39E5D7",
|
|
8
|
-
string: "#FF94D2",
|
|
9
|
-
number: "#FF9933",
|
|
10
|
-
boolean: "#78B0FF",
|
|
11
|
-
null: "#78B0FF",
|
|
12
|
-
separator: "#FFFFFFC9"
|
|
13
|
-
};
|
|
14
|
-
const cozeDark = [
|
|
15
|
-
EditorView.theme({
|
|
16
|
-
".cm-completionIcon-property": {
|
|
17
|
-
backgroundImage: 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMWVtIiBoZWlnaHQ9IjFlbSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMi4zNTc2IDguMTAzNTVDMTIuMTYyMyA3LjkwODI5IDExLjg0NTcgNy45MDgyOSAxMS42NTA1IDguMTAzNTVMOC4xMDM1NSAxMS42NTA1QzcuOTA4MjkgMTEuODQ1NyA3LjkwODI5IDEyLjE2MjMgOC4xMDM1NSAxMi4zNTc2TDExLjY1MDUgMTUuOTA0NUMxMS44NDU3IDE2LjA5OTggMTIuMTYyMyAxNi4wOTk4IDEyLjM1NzYgMTUuOTA0NUwxNS45MDQ1IDEyLjM1NzZDMTYuMDk5OCAxMi4xNjIzIDE2LjA5OTggMTEuODQ1NyAxNS45MDQ1IDExLjY1MDVMMTIuMzU3NiA4LjEwMzU1WiIgZmlsbD0iI0ZGRkZGRkM5Ii8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMS4wMDI2IDEuNDU1NDVDMTEuNjIxNCAxLjA5ODE4IDEyLjM4MzggMS4wOTgxOCAxMy4wMDI2IDEuNDU1NDVMMjAuNjM4IDUuODYzNzRDMjEuMjU2OCA2LjIyMSAyMS42MzggNi44ODEyNiAyMS42MzggNy41OTU3OVYxNi40MTI0QzIxLjYzOCAxNy4xMjY5IDIxLjI1NjggMTcuNzg3MiAyMC42MzggMTguMTQ0NEwxMy4wMDI2IDIyLjU1MjdDMTIuMzgzOCAyMi45MSAxMS42MjE0IDIyLjkxIDExLjAwMjYgMjIuNTUyN0wzLjM2NzE5IDE4LjE0NDRDMi43NDgzOSAxNy43ODcyIDIuMzY3MTkgMTcuMTI2OSAyLjM2NzE5IDE2LjQxMjRWNy41OTU3OUMyLjM2NzE5IDYuODgxMjYgMi43NDgzOSA2LjIyMTAxIDMuMzY3MTkgNS44NjM3NEwxMS4wMDI2IDEuNDU1NDVaTTEyLjAwMjYgMy4xODc1TDE5LjYzOCA3LjU5NTc5VjE2LjQxMjRMMTIuMDAyNiAyMC44MjA3TDQuMzY3MTkgMTYuNDEyNEw0LjM2NzE5IDcuNTk1NzlMMTIuMDAyNiAzLjE4NzVaIiBmaWxsPSIjRkZGRkZGQzkiLz48L3N2Zz4=")',
|
|
18
|
-
backgroundSize: "11px 11px",
|
|
19
|
-
backgroundRepeat: "no-repeat",
|
|
20
|
-
width: "11px",
|
|
21
|
-
height: "11px"
|
|
22
|
-
},
|
|
23
|
-
".cm-completionIcon-property::after": {
|
|
24
|
-
content: '""'
|
|
25
|
-
}
|
|
26
|
-
}),
|
|
27
|
-
createTheme({
|
|
28
|
-
variant: "dark",
|
|
29
|
-
settings: {
|
|
30
|
-
background: colors.background,
|
|
31
|
-
foreground: "#fff",
|
|
32
|
-
caret: "#AEAFAD",
|
|
33
|
-
selection: "#d9d9d942",
|
|
34
|
-
gutterBackground: colors.background,
|
|
35
|
-
gutterForeground: "#FFFFFF63",
|
|
36
|
-
gutterBorderColor: "transparent",
|
|
37
|
-
gutterBorderWidth: 0,
|
|
38
|
-
lineHighlight: "#272e3d36",
|
|
39
|
-
bracketColors: ["#FFEF61", "#DD99FF", "#78B0FF"],
|
|
40
|
-
tooltip: {
|
|
41
|
-
backgroundColor: "#363D4D",
|
|
42
|
-
color: "#fff",
|
|
43
|
-
border: "none"
|
|
44
|
-
},
|
|
45
|
-
completionItemHover: {
|
|
46
|
-
backgroundColor: "#FFFFFF0F"
|
|
47
|
-
},
|
|
48
|
-
completionItemSelected: {
|
|
49
|
-
backgroundColor: "#FFFFFF17"
|
|
50
|
-
},
|
|
51
|
-
completionItemIcon: {
|
|
52
|
-
color: "#FFFFFFC9"
|
|
53
|
-
},
|
|
54
|
-
completionItemLabel: {
|
|
55
|
-
color: "#FFFFFFC9"
|
|
56
|
-
},
|
|
57
|
-
completionItemDetail: {
|
|
58
|
-
color: "#FFFFFF63"
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
styles: [
|
|
62
|
-
// json
|
|
63
|
-
{
|
|
64
|
-
tag: t.comment,
|
|
65
|
-
color: colors.comment
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
tag: [t.propertyName],
|
|
69
|
-
color: colors.key
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
tag: [t.string],
|
|
73
|
-
color: colors.string
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
tag: [t.number],
|
|
77
|
-
color: colors.number
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
tag: [t.bool],
|
|
81
|
-
color: colors.boolean
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
tag: [t.null],
|
|
85
|
-
color: colors.null
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
tag: [t.separator],
|
|
89
|
-
color: colors.separator
|
|
90
|
-
},
|
|
91
|
-
// shell
|
|
92
|
-
// curl
|
|
93
|
-
{
|
|
94
|
-
tag: [t.standard(t.variableName)],
|
|
95
|
-
color: "#3BEB84"
|
|
96
|
-
},
|
|
97
|
-
// -X
|
|
98
|
-
{
|
|
99
|
-
tag: [t.attributeName],
|
|
100
|
-
color: "#FF9933"
|
|
101
|
-
},
|
|
102
|
-
// url in string (includes quotes), e.g. "https://..."
|
|
103
|
-
{
|
|
104
|
-
tag: [t.special(t.string)],
|
|
105
|
-
color: "#78B0FF"
|
|
106
|
-
}
|
|
107
|
-
]
|
|
108
|
-
})
|
|
109
|
-
];
|
|
110
|
-
export {
|
|
111
|
-
cozeDark
|
|
112
|
-
};
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
import { createTheme, tags as t } from "@coze-editor/editor/preset-code";
|
|
2
|
-
import { EditorView } from "@codemirror/view";
|
|
3
|
-
const colors = {
|
|
4
|
-
background: "#fff",
|
|
5
|
-
// syntax
|
|
6
|
-
comment: "#000A298A",
|
|
7
|
-
key: "#00818C",
|
|
8
|
-
string: "#D1009D",
|
|
9
|
-
number: "#C74200",
|
|
10
|
-
boolean: "#2B57D9",
|
|
11
|
-
null: "#2B57D9",
|
|
12
|
-
separator: "#0F1529D1"
|
|
13
|
-
};
|
|
14
|
-
const cozeLight = [
|
|
15
|
-
EditorView.theme({
|
|
16
|
-
".cm-completionIcon-property": {
|
|
17
|
-
backgroundImage: 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMWVtIiBoZWlnaHQ9IjFlbSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMi4zNTc2IDguMTAzNTVDMTIuMTYyMyA3LjkwODI5IDExLjg0NTcgNy45MDgyOSAxMS42NTA1IDguMTAzNTVMOC4xMDM1NSAxMS42NTA1QzcuOTA4MjkgMTEuODQ1NyA3LjkwODI5IDEyLjE2MjMgOC4xMDM1NSAxMi4zNTc2TDExLjY1MDUgMTUuOTA0NUMxMS44NDU3IDE2LjA5OTggMTIuMTYyMyAxNi4wOTk4IDEyLjM1NzYgMTUuOTA0NUwxNS45MDQ1IDEyLjM1NzZDMTYuMDk5OCAxMi4xNjIzIDE2LjA5OTggMTEuODQ1NyAxNS45MDQ1IDExLjY1MDVMMTIuMzU3NiA4LjEwMzU1WiIgZmlsbD0iIzA2MDcwOUNDIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMS4wMDI2IDEuNDU1NDVDMTEuNjIxNCAxLjA5ODE4IDEyLjM4MzggMS4wOTgxOCAxMy4wMDI2IDEuNDU1NDVMMjAuNjM4IDUuODYzNzRDMjEuMjU2OCA2LjIyMSAyMS42MzggNi44ODEyNiAyMS42MzggNy41OTU3OVYxNi40MTI0QzIxLjYzOCAxNy4xMjY5IDIxLjI1NjggMTcuNzg3MiAyMC42MzggMTguMTQ0NEwxMy4wMDI2IDIyLjU1MjdDMTIuMzgzOCAyMi45MSAxMS42MjE0IDIyLjkxIDExLjAwMjYgMjIuNTUyN0wzLjM2NzE5IDE4LjE0NDRDMi43NDgzOSAxNy43ODcyIDIuMzY3MTkgMTcuMTI2OSAyLjM2NzE5IDE2LjQxMjRWNy41OTU3OUMyLjM2NzE5IDYuODgxMjYgMi43NDgzOSA2LjIyMTAxIDMuMzY3MTkgNS44NjM3NEwxMS4wMDI2IDEuNDU1NDVaTTEyLjAwMjYgMy4xODc1TDE5LjYzOCA3LjU5NTc5VjE2LjQxMjRMMTIuMDAyNiAyMC44MjA3TDQuMzY3MTkgMTYuNDEyNEw0LjM2NzE5IDcuNTk1NzlMMTIuMDAyNiAzLjE4NzVaIiBmaWxsPSIjMDYwNzA5Q0MiLz48L3N2Zz4=")',
|
|
18
|
-
backgroundSize: "11px 11px",
|
|
19
|
-
backgroundRepeat: "no-repeat",
|
|
20
|
-
width: "11px",
|
|
21
|
-
height: "11px"
|
|
22
|
-
},
|
|
23
|
-
".cm-completionIcon-property::after": {
|
|
24
|
-
content: '""'
|
|
25
|
-
}
|
|
26
|
-
}),
|
|
27
|
-
createTheme({
|
|
28
|
-
variant: "light",
|
|
29
|
-
settings: {
|
|
30
|
-
background: colors.background,
|
|
31
|
-
foreground: "#4D4D4C",
|
|
32
|
-
caret: "#AEAFAD",
|
|
33
|
-
selection: "#52649A21",
|
|
34
|
-
gutterBackground: colors.background,
|
|
35
|
-
gutterForeground: "#000A298A",
|
|
36
|
-
gutterBorderColor: "transparent",
|
|
37
|
-
gutterBorderWidth: 0,
|
|
38
|
-
lineHighlight: "#efefef78",
|
|
39
|
-
bracketColors: ["#E4D129", "#AC05FF", "#2B57D9"],
|
|
40
|
-
tooltip: {
|
|
41
|
-
backgroundColor: "var(--coz-bg-max)",
|
|
42
|
-
color: "var(--coz-fg-primary)",
|
|
43
|
-
border: "solid 1px var(--coz-stroke-plus)",
|
|
44
|
-
boxShadow: "var(--coz-shadow-default)",
|
|
45
|
-
borderRadius: "8px"
|
|
46
|
-
},
|
|
47
|
-
tooltipCompletion: {
|
|
48
|
-
backgroundColor: "#FFFFFF",
|
|
49
|
-
color: "#060709CC"
|
|
50
|
-
},
|
|
51
|
-
completionItemHover: {
|
|
52
|
-
backgroundColor: "#5768A114"
|
|
53
|
-
},
|
|
54
|
-
completionItemSelected: {
|
|
55
|
-
backgroundColor: "#52649A21"
|
|
56
|
-
},
|
|
57
|
-
completionItemIcon: {
|
|
58
|
-
color: "#060709CC"
|
|
59
|
-
},
|
|
60
|
-
completionItemLabel: {
|
|
61
|
-
color: "#060709CC"
|
|
62
|
-
},
|
|
63
|
-
completionItemDetail: {
|
|
64
|
-
color: "#2029459E"
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
styles: [
|
|
68
|
-
// JSON
|
|
69
|
-
{
|
|
70
|
-
tag: t.comment,
|
|
71
|
-
color: colors.comment
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
tag: [t.propertyName],
|
|
75
|
-
color: colors.key
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
tag: [t.string],
|
|
79
|
-
color: colors.string
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
tag: [t.number],
|
|
83
|
-
color: colors.number
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
tag: [t.bool],
|
|
87
|
-
color: colors.boolean
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
tag: [t.null],
|
|
91
|
-
color: colors.null
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
tag: [t.separator],
|
|
95
|
-
color: colors.separator
|
|
96
|
-
},
|
|
97
|
-
// shell
|
|
98
|
-
// curl
|
|
99
|
-
{
|
|
100
|
-
tag: [t.standard(t.variableName)],
|
|
101
|
-
color: "#00804A"
|
|
102
|
-
},
|
|
103
|
-
// -X
|
|
104
|
-
{
|
|
105
|
-
tag: [t.attributeName],
|
|
106
|
-
color: "#C74200"
|
|
107
|
-
},
|
|
108
|
-
// url in string (includes quotes), e.g. "https://..."
|
|
109
|
-
{
|
|
110
|
-
tag: [t.special(t.string)],
|
|
111
|
-
color: "#2B57D9"
|
|
112
|
-
}
|
|
113
|
-
]
|
|
114
|
-
})
|
|
115
|
-
];
|
|
116
|
-
export {
|
|
117
|
-
cozeLight
|
|
118
|
-
};
|
package/dist/es/consts/index.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
-
import classNames from "classnames";
|
|
3
|
-
import { Typography } from "@coze-arch/coze-design";
|
|
4
|
-
function DevLayout({
|
|
5
|
-
title,
|
|
6
|
-
actionBtns,
|
|
7
|
-
children,
|
|
8
|
-
className,
|
|
9
|
-
style
|
|
10
|
-
}) {
|
|
11
|
-
return /* @__PURE__ */ jsxs(
|
|
12
|
-
"div",
|
|
13
|
-
{
|
|
14
|
-
className: classNames("flex flex-col h-full w-full", className),
|
|
15
|
-
style,
|
|
16
|
-
children: [
|
|
17
|
-
/* @__PURE__ */ jsxs(
|
|
18
|
-
"div",
|
|
19
|
-
{
|
|
20
|
-
className: "h-[40px] px-6 py-2 box-border coz-fg-plus w-full border-0 border-t border-b border-solid flex justify-between items-center",
|
|
21
|
-
style: { background: "#F6F6FB" },
|
|
22
|
-
children: [
|
|
23
|
-
/* @__PURE__ */ jsx(Typography.Text, { strong: true, children: title }),
|
|
24
|
-
actionBtns
|
|
25
|
-
]
|
|
26
|
-
}
|
|
27
|
-
),
|
|
28
|
-
children
|
|
29
|
-
]
|
|
30
|
-
}
|
|
31
|
-
);
|
|
32
|
-
}
|
|
33
|
-
export {
|
|
34
|
-
DevLayout
|
|
35
|
-
};
|
package/dist/es/index.js
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
PromptBasicEditor
|
|
3
|
-
} from "./basic-editor";
|
|
4
|
-
import { PromptEditor } from "./prompt-editor";
|
|
5
|
-
import {
|
|
6
|
-
PromptDiffEditor
|
|
7
|
-
} from "./basic-editor/diff";
|
|
8
|
-
import {
|
|
9
|
-
BaseJsonEditor,
|
|
10
|
-
BaseRawTextEditor,
|
|
11
|
-
EditorProvider
|
|
12
|
-
} from "./code-editor";
|
|
13
|
-
import { SchemaEditor } from "./schema-editor";
|
|
14
|
-
import { ModelSelect } from "./model-select";
|
|
15
|
-
import { BasicModelConfigEditor } from "./model-config-editor/basic-type";
|
|
16
|
-
import { PopoverModelConfigEdiotr } from "./model-config-editor/popover-type";
|
|
17
|
-
import { DevLayout } from "./dev-layout";
|
|
18
|
-
import { useEditor, useInjector, useLatest } from "@coze-editor/editor/react";
|
|
19
|
-
import regexpDecorator, {
|
|
20
|
-
updateRegexpDecorations
|
|
21
|
-
} from "@coze-editor/extension-regexp-decorator";
|
|
22
|
-
import { Decoration, EditorView, WidgetType, keymap } from "@codemirror/view";
|
|
23
|
-
import { EditorSelection } from "@codemirror/state";
|
|
24
|
-
import {
|
|
25
|
-
Prec,
|
|
26
|
-
StateEffect,
|
|
27
|
-
StateField
|
|
28
|
-
} from "@codemirror/state";
|
|
29
|
-
import { cunstomFacet } from "./basic-editor/custom-facet";
|
|
30
|
-
import {
|
|
31
|
-
insertFourSpaces,
|
|
32
|
-
deleteMarkupBackward,
|
|
33
|
-
insertNewlineContinueMarkup
|
|
34
|
-
} from "./basic-editor/extensions/keymap";
|
|
35
|
-
import { MermaidDiagram } from "./mermaid-diagram";
|
|
36
|
-
export {
|
|
37
|
-
BaseJsonEditor,
|
|
38
|
-
BaseRawTextEditor,
|
|
39
|
-
BasicModelConfigEditor,
|
|
40
|
-
Decoration,
|
|
41
|
-
DevLayout,
|
|
42
|
-
EditorProvider,
|
|
43
|
-
EditorSelection,
|
|
44
|
-
EditorView,
|
|
45
|
-
MermaidDiagram,
|
|
46
|
-
ModelSelect,
|
|
47
|
-
PopoverModelConfigEdiotr,
|
|
48
|
-
Prec,
|
|
49
|
-
PromptBasicEditor,
|
|
50
|
-
PromptDiffEditor,
|
|
51
|
-
PromptEditor,
|
|
52
|
-
SchemaEditor,
|
|
53
|
-
StateEffect,
|
|
54
|
-
StateField,
|
|
55
|
-
WidgetType,
|
|
56
|
-
cunstomFacet,
|
|
57
|
-
deleteMarkupBackward,
|
|
58
|
-
insertFourSpaces,
|
|
59
|
-
insertNewlineContinueMarkup,
|
|
60
|
-
keymap,
|
|
61
|
-
regexpDecorator,
|
|
62
|
-
updateRegexpDecorations,
|
|
63
|
-
useEditor,
|
|
64
|
-
useInjector,
|
|
65
|
-
useLatest
|
|
66
|
-
};
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __defProps = Object.defineProperties;
|
|
3
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
-
var __spreadValues = (a, b) => {
|
|
9
|
-
for (var prop in b || (b = {}))
|
|
10
|
-
if (__hasOwnProp.call(b, prop))
|
|
11
|
-
__defNormalProp(a, prop, b[prop]);
|
|
12
|
-
if (__getOwnPropSymbols)
|
|
13
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
-
if (__propIsEnum.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
}
|
|
17
|
-
return a;
|
|
18
|
-
};
|
|
19
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
-
var __async = (__this, __arguments, generator) => {
|
|
21
|
-
return new Promise((resolve, reject) => {
|
|
22
|
-
var fulfilled = (value) => {
|
|
23
|
-
try {
|
|
24
|
-
step(generator.next(value));
|
|
25
|
-
} catch (e) {
|
|
26
|
-
reject(e);
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
var rejected = (value) => {
|
|
30
|
-
try {
|
|
31
|
-
step(generator.throw(value));
|
|
32
|
-
} catch (e) {
|
|
33
|
-
reject(e);
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
37
|
-
step((generator = generator.apply(__this, __arguments)).next());
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
import { jsx } from "react/jsx-runtime";
|
|
41
|
-
import {
|
|
42
|
-
useState,
|
|
43
|
-
useEffect,
|
|
44
|
-
useRef,
|
|
45
|
-
forwardRef,
|
|
46
|
-
useImperativeHandle
|
|
47
|
-
} from "react";
|
|
48
|
-
import mermaid from "mermaid";
|
|
49
|
-
import { isEmpty, uniqueId } from "lodash-es";
|
|
50
|
-
import cls from "classnames";
|
|
51
|
-
import { exportImage } from "./utils";
|
|
52
|
-
import { useSvgPanZoom } from "./use-svg-pan-zoom";
|
|
53
|
-
import styles from "./index.module";
|
|
54
|
-
const DEFAULT_THEME = {
|
|
55
|
-
theme: "base",
|
|
56
|
-
themeVariables: {
|
|
57
|
-
background: "#f9fafb",
|
|
58
|
-
fontSize: "12px",
|
|
59
|
-
primaryColor: "#E5F6FF",
|
|
60
|
-
primaryTextColor: "rgba(0,0,0,0.8)",
|
|
61
|
-
secondaryColor: "#F5EBFF",
|
|
62
|
-
primaryBorderColor: "#73A6FF",
|
|
63
|
-
secondaryBorderColor: "#BE8FED",
|
|
64
|
-
secondaryTextColor: "rgba(0,0,0,0.56)",
|
|
65
|
-
tertiaryColor: "#FFF6CC",
|
|
66
|
-
tertiaryBorderColor: "#FFBC52",
|
|
67
|
-
tertiaryTextColor: "rgba(0,0,0,0.3)",
|
|
68
|
-
noteBkgColor: "#F3F4F6",
|
|
69
|
-
noteTextColor: "rgba(0,0,0,0.55)",
|
|
70
|
-
noteBorderColor: "#A8A8A8",
|
|
71
|
-
lineColor: "rgba(0,0,0,0.3)",
|
|
72
|
-
textColor: "rgba(0,0,0,0.8)",
|
|
73
|
-
errorBkgColor: "#FFEBEA",
|
|
74
|
-
errorTextColor: "#FF3B30"
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
const MermaidDiagram = /* @__PURE__ */ forwardRef(function MermaidDiagram2({ chart, className }, outerRef) {
|
|
78
|
-
const ref = useRef(null);
|
|
79
|
-
const id = useRef(`mermaid-diagram-${uniqueId()}`);
|
|
80
|
-
const svgId = `svg-${id.current}`;
|
|
81
|
-
const [preChart, setPreChart] = useState("");
|
|
82
|
-
const updateChart = (chartStr) => __async(this, null, function* () {
|
|
83
|
-
var _a;
|
|
84
|
-
if (isEmpty(chartStr)) {
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
try {
|
|
88
|
-
const isValidChart = yield mermaid.parse(chartStr, {
|
|
89
|
-
suppressErrors: true
|
|
90
|
-
});
|
|
91
|
-
if (!isValidChart) {
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
const renderResult = yield mermaid.render(
|
|
95
|
-
svgId,
|
|
96
|
-
chartStr,
|
|
97
|
-
ref.current || void 0
|
|
98
|
-
);
|
|
99
|
-
if (ref.current && renderResult.svg) {
|
|
100
|
-
ref.current.innerHTML = renderResult.svg;
|
|
101
|
-
(_a = renderResult.bindFunctions) == null ? void 0 : _a.call(renderResult, ref.current);
|
|
102
|
-
setPreChart(chartStr);
|
|
103
|
-
}
|
|
104
|
-
} catch (e) {
|
|
105
|
-
if (chartStr !== preChart) {
|
|
106
|
-
updateChart(preChart);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
useEffect(() => {
|
|
111
|
-
mermaid.initialize(__spreadProps(__spreadValues({}, DEFAULT_THEME), {
|
|
112
|
-
startOnLoad: false,
|
|
113
|
-
logLevel: "error",
|
|
114
|
-
suppressErrorRendering: true
|
|
115
|
-
}));
|
|
116
|
-
}, []);
|
|
117
|
-
useEffect(() => {
|
|
118
|
-
updateChart(chart);
|
|
119
|
-
}, [chart]);
|
|
120
|
-
const { zoomIn, zoomOut, fit } = useSvgPanZoom({
|
|
121
|
-
svgSelector: `#${svgId}`,
|
|
122
|
-
viewportSelector: id.current,
|
|
123
|
-
renderedChart: preChart
|
|
124
|
-
});
|
|
125
|
-
useImperativeHandle(outerRef, () => ({
|
|
126
|
-
zoomIn,
|
|
127
|
-
zoomOut,
|
|
128
|
-
fit,
|
|
129
|
-
exportImg: () => __async(this, null, function* () {
|
|
130
|
-
return exportImage(`#${svgId}`);
|
|
131
|
-
})
|
|
132
|
-
}));
|
|
133
|
-
return /* @__PURE__ */ jsx(
|
|
134
|
-
"div",
|
|
135
|
-
{
|
|
136
|
-
id: id.current,
|
|
137
|
-
className: cls(
|
|
138
|
-
"w-full min-w-[330px] h-[300px]",
|
|
139
|
-
styles.container,
|
|
140
|
-
className
|
|
141
|
-
),
|
|
142
|
-
ref
|
|
143
|
-
}
|
|
144
|
-
);
|
|
145
|
-
});
|
|
146
|
-
export {
|
|
147
|
-
MermaidDiagram
|
|
148
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useEffect, useRef } from "react";
|
|
2
|
-
const useSvgPanZoom = ({
|
|
3
|
-
svgSelector,
|
|
4
|
-
viewportSelector,
|
|
5
|
-
renderedChart,
|
|
6
|
-
zoomStepLength = 0.25
|
|
7
|
-
}) => {
|
|
8
|
-
const panZoomTigerRef = useRef(null);
|
|
9
|
-
useEffect(() => {
|
|
10
|
-
if (!renderedChart) {
|
|
11
|
-
return;
|
|
12
|
-
}
|
|
13
|
-
import("svg-pan-zoom").then((svgPanZoom) => {
|
|
14
|
-
if (panZoomTigerRef.current) {
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
const panZoomTiger = svgPanZoom.default(svgSelector, {
|
|
18
|
-
viewportSelector,
|
|
19
|
-
mouseWheelZoomEnabled: false
|
|
20
|
-
});
|
|
21
|
-
panZoomTigerRef.current = panZoomTiger;
|
|
22
|
-
});
|
|
23
|
-
}, [renderedChart]);
|
|
24
|
-
const zoomIn = () => {
|
|
25
|
-
var _a, _b;
|
|
26
|
-
(_b = panZoomTigerRef.current) == null ? void 0 : _b.zoom(
|
|
27
|
-
((_a = panZoomTigerRef.current) == null ? void 0 : _a.getZoom()) + zoomStepLength
|
|
28
|
-
);
|
|
29
|
-
};
|
|
30
|
-
const zoomOut = () => {
|
|
31
|
-
var _a, _b;
|
|
32
|
-
(_b = panZoomTigerRef.current) == null ? void 0 : _b.zoom(
|
|
33
|
-
((_a = panZoomTigerRef.current) == null ? void 0 : _a.getZoom()) - zoomStepLength
|
|
34
|
-
);
|
|
35
|
-
};
|
|
36
|
-
const fit = () => {
|
|
37
|
-
var _a, _b;
|
|
38
|
-
(_a = panZoomTigerRef.current) == null ? void 0 : _a.fit();
|
|
39
|
-
(_b = panZoomTigerRef.current) == null ? void 0 : _b.center();
|
|
40
|
-
};
|
|
41
|
-
return {
|
|
42
|
-
zoomIn,
|
|
43
|
-
zoomOut,
|
|
44
|
-
fit
|
|
45
|
-
};
|
|
46
|
-
};
|
|
47
|
-
export {
|
|
48
|
-
useSvgPanZoom
|
|
49
|
-
};
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
var __async = (__this, __arguments, generator) => {
|
|
2
|
-
return new Promise((resolve, reject) => {
|
|
3
|
-
var fulfilled = (value) => {
|
|
4
|
-
try {
|
|
5
|
-
step(generator.next(value));
|
|
6
|
-
} catch (e) {
|
|
7
|
-
reject(e);
|
|
8
|
-
}
|
|
9
|
-
};
|
|
10
|
-
var rejected = (value) => {
|
|
11
|
-
try {
|
|
12
|
-
step(generator.throw(value));
|
|
13
|
-
} catch (e) {
|
|
14
|
-
reject(e);
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
18
|
-
step((generator = generator.apply(__this, __arguments)).next());
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
import { toBase64 } from "js-base64";
|
|
22
|
-
const getFileName = (extension) => `mermaid-diagram-${(/* @__PURE__ */ new Date()).getTime()}.${extension}`;
|
|
23
|
-
const simulateDownload = (download, href) => {
|
|
24
|
-
const a = document.createElement("a");
|
|
25
|
-
a.download = download;
|
|
26
|
-
a.href = href;
|
|
27
|
-
a.click();
|
|
28
|
-
a.remove();
|
|
29
|
-
};
|
|
30
|
-
const downloadImage = (context, image) => () => {
|
|
31
|
-
const { canvas } = context;
|
|
32
|
-
context.drawImage(image, 0, 0, canvas.width, canvas.height);
|
|
33
|
-
simulateDownload(
|
|
34
|
-
getFileName("png"),
|
|
35
|
-
canvas.toDataURL("image/png").replace("image/png", "image/octet-stream")
|
|
36
|
-
);
|
|
37
|
-
};
|
|
38
|
-
const getBase64SVG = (svg, width, height) => {
|
|
39
|
-
if (svg) {
|
|
40
|
-
svg = svg.cloneNode(true);
|
|
41
|
-
}
|
|
42
|
-
height && (svg == null ? void 0 : svg.setAttribute("height", `${height}px`));
|
|
43
|
-
width && (svg == null ? void 0 : svg.setAttribute("width", `${width}px`));
|
|
44
|
-
const svgString = svg.outerHTML.replaceAll("<br>", "<br/>").replaceAll(/<img([^>]*)>/g, (m, g) => `<img ${g} />`);
|
|
45
|
-
return toBase64(`<?xml version="1.0" encoding="UTF-8"?>
|
|
46
|
-
<?xml-stylesheet href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" type="text/css"?>
|
|
47
|
-
${svgString}`);
|
|
48
|
-
};
|
|
49
|
-
const exportImage = (svgSelector) => __async(void 0, null, function* () {
|
|
50
|
-
yield new Promise((resolve) => setTimeout(resolve, 1e3));
|
|
51
|
-
const canvas = document.createElement("canvas");
|
|
52
|
-
const svg = document.querySelector(svgSelector);
|
|
53
|
-
if (!svg) {
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
const box = svg.getBoundingClientRect();
|
|
57
|
-
const multiplier = 2;
|
|
58
|
-
canvas.width = box.width * multiplier;
|
|
59
|
-
canvas.height = box.height * multiplier;
|
|
60
|
-
const context = canvas.getContext("2d");
|
|
61
|
-
if (!context) {
|
|
62
|
-
throw new Error("context not found");
|
|
63
|
-
}
|
|
64
|
-
context.fillStyle = "white";
|
|
65
|
-
context.fillRect(0, 0, canvas.width, canvas.height);
|
|
66
|
-
const image = new Image();
|
|
67
|
-
image.addEventListener("load", () => {
|
|
68
|
-
downloadImage(context, image)();
|
|
69
|
-
});
|
|
70
|
-
image.src = `data:image/svg+xml;base64,${getBase64SVG(svg, canvas.width, canvas.height)}`;
|
|
71
|
-
});
|
|
72
|
-
export {
|
|
73
|
-
exportImage
|
|
74
|
-
};
|