biel-search 0.0.1
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/LICENSE +21 -0
- package/dist/biel-search/biel-search.css +1 -0
- package/dist/biel-search/biel-search.esm.js +2 -0
- package/dist/biel-search/biel-search.esm.js.map +1 -0
- package/dist/biel-search/index.esm.js +2 -0
- package/dist/biel-search/index.esm.js.map +1 -0
- package/dist/biel-search/p-1b3c90ca.js +3 -0
- package/dist/biel-search/p-1b3c90ca.js.map +1 -0
- package/dist/biel-search/p-e1255160.js +2 -0
- package/dist/biel-search/p-e1255160.js.map +1 -0
- package/dist/biel-search/p-fe900c87.entry.js +3 -0
- package/dist/biel-search/p-fe900c87.entry.js.map +1 -0
- package/dist/cjs/app-globals-3a1e7e63.js +7 -0
- package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
- package/dist/cjs/biel-bot_8.cjs.entry.js +63952 -0
- package/dist/cjs/biel-bot_8.cjs.entry.js.map +1 -0
- package/dist/cjs/biel-search.cjs.js +27 -0
- package/dist/cjs/biel-search.cjs.js.map +1 -0
- package/dist/cjs/index-05fc01fd.js +1281 -0
- package/dist/cjs/index-05fc01fd.js.map +1 -0
- package/dist/cjs/index.cjs.js +11 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +17 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/collection/collection-manifest.json +19 -0
- package/dist/collection/components/biel-bot/biel-bot.css +189 -0
- package/dist/collection/components/biel-bot/biel-bot.js +338 -0
- package/dist/collection/components/biel-bot/biel-bot.js.map +1 -0
- package/dist/collection/components/biel-button/biel-button.css +63 -0
- package/dist/collection/components/biel-button/biel-button.js +301 -0
- package/dist/collection/components/biel-button/biel-button.js.map +1 -0
- package/dist/collection/components/biel-chat/biel-chat.css +75 -0
- package/dist/collection/components/biel-chat/biel-chat.js +119 -0
- package/dist/collection/components/biel-chat/biel-chat.js.map +1 -0
- package/dist/collection/components/biel-header/biel-header.css +49 -0
- package/dist/collection/components/biel-header/biel-header.js +165 -0
- package/dist/collection/components/biel-header/biel-header.js.map +1 -0
- package/dist/collection/components/biel-input/biel-input.css +55 -0
- package/dist/collection/components/biel-input/biel-input.js +164 -0
- package/dist/collection/components/biel-input/biel-input.js.map +1 -0
- package/dist/collection/components/biel-message/biel-message.css +38 -0
- package/dist/collection/components/biel-message/biel-message.js +98 -0
- package/dist/collection/components/biel-message/biel-message.js.map +1 -0
- package/dist/collection/components/biel-table/biel-table.css +37 -0
- package/dist/collection/components/biel-table/biel-table.js +43 -0
- package/dist/collection/components/biel-table/biel-table.js.map +1 -0
- package/dist/collection/components/code-snippet/code-snippet.css +162 -0
- package/dist/collection/components/code-snippet/code-snippet.js +101 -0
- package/dist/collection/components/code-snippet/code-snippet.js.map +1 -0
- package/dist/collection/index.js +11 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/services/biel-service.js +33 -0
- package/dist/collection/services/biel-service.js.map +1 -0
- package/dist/collection/services/biel-websocket-service.js +64 -0
- package/dist/collection/services/biel-websocket-service.js.map +1 -0
- package/dist/collection/utils/utils.js +4 -0
- package/dist/collection/utils/utils.js.map +1 -0
- package/dist/components/biel-bot.d.ts +11 -0
- package/dist/components/biel-bot.js +8 -0
- package/dist/components/biel-bot.js.map +1 -0
- package/dist/components/biel-button.d.ts +11 -0
- package/dist/components/biel-button.js +152 -0
- package/dist/components/biel-button.js.map +1 -0
- package/dist/components/biel-chat.d.ts +11 -0
- package/dist/components/biel-chat.js +8 -0
- package/dist/components/biel-chat.js.map +1 -0
- package/dist/components/biel-header.d.ts +11 -0
- package/dist/components/biel-header.js +8 -0
- package/dist/components/biel-header.js.map +1 -0
- package/dist/components/biel-input.d.ts +11 -0
- package/dist/components/biel-input.js +8 -0
- package/dist/components/biel-input.js.map +1 -0
- package/dist/components/biel-message.d.ts +11 -0
- package/dist/components/biel-message.js +8 -0
- package/dist/components/biel-message.js.map +1 -0
- package/dist/components/biel-table.d.ts +11 -0
- package/dist/components/biel-table.js +8 -0
- package/dist/components/biel-table.js.map +1 -0
- package/dist/components/code-snippet.d.ts +11 -0
- package/dist/components/code-snippet.js +8 -0
- package/dist/components/code-snippet.js.map +1 -0
- package/dist/components/index.d.ts +33 -0
- package/dist/components/index.js +9 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/p-09743aa7.js +88 -0
- package/dist/components/p-09743aa7.js.map +1 -0
- package/dist/components/p-5a2466bd.js +59456 -0
- package/dist/components/p-5a2466bd.js.map +1 -0
- package/dist/components/p-7b8b1ac3.js +1098 -0
- package/dist/components/p-7b8b1ac3.js.map +1 -0
- package/dist/components/p-8e08748d.js +4158 -0
- package/dist/components/p-8e08748d.js.map +1 -0
- package/dist/components/p-b920c67f.js +239 -0
- package/dist/components/p-b920c67f.js.map +1 -0
- package/dist/components/p-c94c3bd6.js +59 -0
- package/dist/components/p-c94c3bd6.js.map +1 -0
- package/dist/components/p-f4016e6d.js +37 -0
- package/dist/components/p-f4016e6d.js.map +1 -0
- package/dist/components/p-fe8bcdeb.js +86 -0
- package/dist/components/p-fe8bcdeb.js.map +1 -0
- package/dist/esm/app-globals-0f993ce5.js +5 -0
- package/dist/esm/app-globals-0f993ce5.js.map +1 -0
- package/dist/esm/biel-bot_8.entry.js +63941 -0
- package/dist/esm/biel-bot_8.entry.js.map +1 -0
- package/dist/esm/biel-search.js +22 -0
- package/dist/esm/biel-search.js.map +1 -0
- package/dist/esm/index-6ad604ca.js +1252 -0
- package/dist/esm/index-6ad604ca.js.map +1 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +13 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/types/components/biel-bot/biel-bot.d.ts +35 -0
- package/dist/types/components/biel-button/biel-button.d.ts +23 -0
- package/dist/types/components/biel-chat/biel-chat.d.ts +15 -0
- package/dist/types/components/biel-header/biel-header.d.ts +15 -0
- package/dist/types/components/biel-input/biel-input.d.ts +17 -0
- package/dist/types/components/biel-message/biel-message.d.ts +10 -0
- package/dist/types/components/biel-table/biel-table.d.ts +4 -0
- package/dist/types/components/code-snippet/code-snippet.d.ts +10 -0
- package/dist/types/components.d.ts +248 -0
- package/dist/types/index.d.ts +11 -0
- package/dist/types/services/biel-service.d.ts +11 -0
- package/dist/types/services/biel-websocket-service.d.ts +17 -0
- package/dist/types/stencil-public-runtime.d.ts +1674 -0
- package/dist/types/utils/utils.d.ts +1 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/loader/package.json +11 -0
- package/package.json +55 -0
- package/readme.md +22 -0
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
export class BielHeader {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.headerTitle = undefined;
|
|
5
|
+
this.project = undefined;
|
|
6
|
+
this.hideExpandButton = undefined;
|
|
7
|
+
this.showPoweredBy = true;
|
|
8
|
+
this.fullscreen = undefined;
|
|
9
|
+
this.isFullscreen = undefined;
|
|
10
|
+
}
|
|
11
|
+
componentWillLoad() {
|
|
12
|
+
this.isFullscreen = this.fullscreen;
|
|
13
|
+
}
|
|
14
|
+
handleCloseClick() {
|
|
15
|
+
this.closeClicked.emit();
|
|
16
|
+
}
|
|
17
|
+
handleFullscreenClick() {
|
|
18
|
+
this.isFullscreen = !this.isFullscreen;
|
|
19
|
+
this.fullscreenClicked.emit();
|
|
20
|
+
}
|
|
21
|
+
render() {
|
|
22
|
+
return (h("header", { key: 'fc462fd7a8aa72181e535f4569342a423e481df4', class: "biel-header" }, h("div", { key: 'bf12e4fa2b9f99b647fbcbe6441a53b3cee569e3', class: "biel-header__icons" }, !this.hideExpandButton && (h("button", { key: 'b44aee795fb5efbd169a01d225d5b61a6a8479c6', class: "biel-header__icon", onClick: () => this.handleFullscreenClick() }, this.isFullscreen ? (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", class: "feather feather-minimize-2" }, h("polyline", { points: "4 14 10 14 10 20" }), h("polyline", { points: "20 10 14 10 14 4" }), h("line", { x1: "14", y1: "10", x2: "21", y2: "3" }), h("line", { x1: "3", y1: "21", x2: "10", y2: "14" }))) : (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", class: "feather feather-maximize-2" }, h("polyline", { points: "15 3 21 3 21 9" }), h("polyline", { points: "9 21 3 21 3 15" }), h("line", { x1: "21", y1: "3", x2: "14", y2: "10" }), h("line", { x1: "3", y1: "21", x2: "10", y2: "14" }))))), h("button", { key: 'd28e4abcc8f59fb6aa68e3cd9e969dff0657d2c7', class: "biel-header__icon", onClick: () => this.handleCloseClick() }, h("svg", { key: '4be80a2be30cff0a3471cb30e7be8fba533299e2', xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", class: "feather feather-x" }, h("line", { key: '8a772eb8e271d28ecde92fb28e72493eaad40a72', x1: "18", y1: "6", x2: "6", y2: "18" }), h("line", { key: 'df432a2d7722fe4b9d472bad197a3bf6bf76e529', x1: "6", y1: "6", x2: "18", y2: "18" })))), h("div", { key: '66d17239178ca6f6eb015e0db2b4d46101736e94', class: "biel-header__title-container" }, h("div", { key: '051e8fff6205f423a568e6ea10f800f069494ead', class: "biel-header__title" }, this.headerTitle), h("div", { key: '5a701624cf8c81e3747ecd577d00a3d927013311', class: "biel-header__powered-by" }, this.showPoweredBy && (h("span", { key: '5e52419e22f00f8d787414ec16aa2f0fa44388ab' }, "Powered by ", h("a", { key: '5af1a69e17666c3b8f3cfbba11b92dc9118d2fba', target: "_blank", href: "https://biel.ai" }, "biel.ai")))))));
|
|
23
|
+
}
|
|
24
|
+
static get is() { return "biel-header"; }
|
|
25
|
+
static get encapsulation() { return "shadow"; }
|
|
26
|
+
static get originalStyleUrls() {
|
|
27
|
+
return {
|
|
28
|
+
"$": ["biel-header.css"]
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
static get styleUrls() {
|
|
32
|
+
return {
|
|
33
|
+
"$": ["biel-header.css"]
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
static get properties() {
|
|
37
|
+
return {
|
|
38
|
+
"headerTitle": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"mutable": false,
|
|
41
|
+
"complexType": {
|
|
42
|
+
"original": "string",
|
|
43
|
+
"resolved": "string",
|
|
44
|
+
"references": {}
|
|
45
|
+
},
|
|
46
|
+
"required": false,
|
|
47
|
+
"optional": false,
|
|
48
|
+
"docs": {
|
|
49
|
+
"tags": [],
|
|
50
|
+
"text": ""
|
|
51
|
+
},
|
|
52
|
+
"attribute": "header-title",
|
|
53
|
+
"reflect": false
|
|
54
|
+
},
|
|
55
|
+
"project": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"mutable": false,
|
|
58
|
+
"complexType": {
|
|
59
|
+
"original": "string",
|
|
60
|
+
"resolved": "string",
|
|
61
|
+
"references": {}
|
|
62
|
+
},
|
|
63
|
+
"required": false,
|
|
64
|
+
"optional": false,
|
|
65
|
+
"docs": {
|
|
66
|
+
"tags": [],
|
|
67
|
+
"text": ""
|
|
68
|
+
},
|
|
69
|
+
"attribute": "project",
|
|
70
|
+
"reflect": false
|
|
71
|
+
},
|
|
72
|
+
"hideExpandButton": {
|
|
73
|
+
"type": "boolean",
|
|
74
|
+
"mutable": false,
|
|
75
|
+
"complexType": {
|
|
76
|
+
"original": "boolean",
|
|
77
|
+
"resolved": "boolean",
|
|
78
|
+
"references": {}
|
|
79
|
+
},
|
|
80
|
+
"required": false,
|
|
81
|
+
"optional": false,
|
|
82
|
+
"docs": {
|
|
83
|
+
"tags": [],
|
|
84
|
+
"text": ""
|
|
85
|
+
},
|
|
86
|
+
"attribute": "hide-expand-button",
|
|
87
|
+
"reflect": false
|
|
88
|
+
},
|
|
89
|
+
"showPoweredBy": {
|
|
90
|
+
"type": "boolean",
|
|
91
|
+
"mutable": false,
|
|
92
|
+
"complexType": {
|
|
93
|
+
"original": "boolean",
|
|
94
|
+
"resolved": "boolean",
|
|
95
|
+
"references": {}
|
|
96
|
+
},
|
|
97
|
+
"required": false,
|
|
98
|
+
"optional": false,
|
|
99
|
+
"docs": {
|
|
100
|
+
"tags": [],
|
|
101
|
+
"text": ""
|
|
102
|
+
},
|
|
103
|
+
"attribute": "show-powered-by",
|
|
104
|
+
"reflect": false,
|
|
105
|
+
"defaultValue": "true"
|
|
106
|
+
},
|
|
107
|
+
"fullscreen": {
|
|
108
|
+
"type": "boolean",
|
|
109
|
+
"mutable": false,
|
|
110
|
+
"complexType": {
|
|
111
|
+
"original": "boolean",
|
|
112
|
+
"resolved": "boolean",
|
|
113
|
+
"references": {}
|
|
114
|
+
},
|
|
115
|
+
"required": false,
|
|
116
|
+
"optional": false,
|
|
117
|
+
"docs": {
|
|
118
|
+
"tags": [],
|
|
119
|
+
"text": ""
|
|
120
|
+
},
|
|
121
|
+
"attribute": "fullscreen",
|
|
122
|
+
"reflect": false
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
static get states() {
|
|
127
|
+
return {
|
|
128
|
+
"isFullscreen": {}
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
static get events() {
|
|
132
|
+
return [{
|
|
133
|
+
"method": "closeClicked",
|
|
134
|
+
"name": "closeClicked",
|
|
135
|
+
"bubbles": true,
|
|
136
|
+
"cancelable": true,
|
|
137
|
+
"composed": true,
|
|
138
|
+
"docs": {
|
|
139
|
+
"tags": [],
|
|
140
|
+
"text": ""
|
|
141
|
+
},
|
|
142
|
+
"complexType": {
|
|
143
|
+
"original": "void",
|
|
144
|
+
"resolved": "void",
|
|
145
|
+
"references": {}
|
|
146
|
+
}
|
|
147
|
+
}, {
|
|
148
|
+
"method": "fullscreenClicked",
|
|
149
|
+
"name": "fullscreenClicked",
|
|
150
|
+
"bubbles": true,
|
|
151
|
+
"cancelable": true,
|
|
152
|
+
"composed": true,
|
|
153
|
+
"docs": {
|
|
154
|
+
"tags": [],
|
|
155
|
+
"text": ""
|
|
156
|
+
},
|
|
157
|
+
"complexType": {
|
|
158
|
+
"original": "void",
|
|
159
|
+
"resolved": "void",
|
|
160
|
+
"references": {}
|
|
161
|
+
}
|
|
162
|
+
}];
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=biel-header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"biel-header.js","sourceRoot":"","sources":["../../../src/components/biel-header/biel-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Event, EventEmitter, h, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'biel-header',\n styleUrl: 'biel-header.css',\n shadow: true\n})\nexport class BielHeader {\n @Prop() headerTitle: string;\n @Prop() project: string;\n @Prop() hideExpandButton: boolean;\n @Prop() showPoweredBy: boolean = true;\n @Prop() fullscreen: boolean;\n\n @State() isFullscreen: boolean;\n\n @Event() closeClicked: EventEmitter<void>;\n @Event() fullscreenClicked: EventEmitter<void>;\n\n componentWillLoad() {\n this.isFullscreen = this.fullscreen;\n }\n\n handleCloseClick() {\n this.closeClicked.emit();\n }\n\n handleFullscreenClick() {\n this.isFullscreen = !this.isFullscreen;\n this.fullscreenClicked.emit();\n }\n\n render() {\n return (\n <header class=\"biel-header\">\n <div class=\"biel-header__icons\">\n {!this.hideExpandButton && (\n <button class=\"biel-header__icon\" onClick={() => this.handleFullscreenClick()}>\n {this.isFullscreen ? (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-minimize-2\"><polyline points=\"4 14 10 14 10 20\"></polyline><polyline points=\"20 10 14 10 14 4\"></polyline><line x1=\"14\" y1=\"10\" x2=\"21\" y2=\"3\"></line><line x1=\"3\" y1=\"21\" x2=\"10\" y2=\"14\"></line></svg>\n ) : (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-maximize-2\"><polyline points=\"15 3 21 3 21 9\"></polyline><polyline points=\"9 21 3 21 3 15\"></polyline><line x1=\"21\" y1=\"3\" x2=\"14\" y2=\"10\"></line><line x1=\"3\" y1=\"21\" x2=\"10\" y2=\"14\"></line></svg>\n )}\n </button>\n )}\n <button class=\"biel-header__icon\" onClick={() => this.handleCloseClick()}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-x\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"></line><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"></line></svg>\n </button>\n </div>\n <div class=\"biel-header__title-container\">\n <div class=\"biel-header__title\">{this.headerTitle}</div>\n <div class=\"biel-header__powered-by\">\n {this.showPoweredBy && (\n <span>Powered by <a target=\"_blank\" href=\"https://biel.ai\">biel.ai</a></span>\n )}\n </div>\n </div>\n </header>\n );\n }\n}"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
.biel-input-container {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
padding: 10px;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.biel-input__textarea {
|
|
8
|
+
width: 100%;
|
|
9
|
+
max-height: var(--biel-input-textarea-max-height);
|
|
10
|
+
min-height: var(--biel-input-textarea-min-height);
|
|
11
|
+
height: var(--biel-input-textarea-min-height);
|
|
12
|
+
padding: 10px;
|
|
13
|
+
background-color: var(--biel-bot-content-bg-color);
|
|
14
|
+
color: var(--biel-input-color);
|
|
15
|
+
border: 1px solid var(--biel-input-border-color);
|
|
16
|
+
border-radius: var(--biel-input-border-radius);
|
|
17
|
+
margin-right: 10px;
|
|
18
|
+
font-family: var(--biel-input-font-family);
|
|
19
|
+
font-size: 14px;
|
|
20
|
+
resize: none;
|
|
21
|
+
overflow-y: hidden;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.biel-input__textarea::-webkit-scrollbar {
|
|
25
|
+
width: 8px;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.biel-input__textarea::-webkit-scrollbar-thumb {
|
|
29
|
+
background-color: var(--biel-chat-scrollbar-color);
|
|
30
|
+
border-radius: 10px;
|
|
31
|
+
border: 3px solid transparent;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.biel-input__textarea::-webkit-scrollbar-thumb:hover {
|
|
35
|
+
background-color: var(--biel-chat-scrollbar-hover-color);
|
|
36
|
+
cursor: auto;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.biel-input__button {
|
|
40
|
+
padding: 12px 16px;
|
|
41
|
+
background-color: var(--biel-input-button-bg-color);
|
|
42
|
+
color: var(--biel-input-button-color);
|
|
43
|
+
border: 0;
|
|
44
|
+
border-radius: var(--biel-input-border-radius);
|
|
45
|
+
cursor: pointer;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.biel-input__button:hover {
|
|
49
|
+
background-color: var(--biel-input-button-hover-bg-color);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.biel-input__button:disabled {
|
|
53
|
+
background-color: var(--biel-input-button-hover-bg-color);
|
|
54
|
+
cursor: not-allowed;
|
|
55
|
+
}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
export class BielInput {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.userInput = '';
|
|
5
|
+
this.placeholderText = 'Type your message';
|
|
6
|
+
this.sendButtonText = 'Send';
|
|
7
|
+
this.isDisabled = false;
|
|
8
|
+
}
|
|
9
|
+
handleInputChange(event) {
|
|
10
|
+
this.userInput = event.target.value;
|
|
11
|
+
this.adjustTextareaHeight();
|
|
12
|
+
}
|
|
13
|
+
handleSendMessage() {
|
|
14
|
+
if (this.userInput.trim()) {
|
|
15
|
+
this.messageSent.emit(this.userInput);
|
|
16
|
+
this.userInput = '';
|
|
17
|
+
this.resetTextareaHeight();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
handleKeyPress(event) {
|
|
21
|
+
if (event.key === 'Enter' && !event.shiftKey && !this.isDisabled) {
|
|
22
|
+
event.preventDefault();
|
|
23
|
+
this.handleSendMessage();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
getCSSVariable(element, variableName) {
|
|
27
|
+
return getComputedStyle(element).getPropertyValue(variableName);
|
|
28
|
+
}
|
|
29
|
+
adjustTextareaHeight() {
|
|
30
|
+
const textarea = this.el.shadowRoot.querySelector('textarea');
|
|
31
|
+
const minHeight = this.getCSSVariable(textarea, 'min-height');
|
|
32
|
+
const maxHeight = parseInt(this.getCSSVariable(textarea, 'max-height'));
|
|
33
|
+
const padding = parseInt(this.getCSSVariable(textarea, 'padding')) * 2;
|
|
34
|
+
const previousHeight = parseInt(this.getCSSVariable(textarea, 'height'));
|
|
35
|
+
textarea.style.height = minHeight;
|
|
36
|
+
const newHeight = Math.min(textarea.scrollHeight - padding, maxHeight);
|
|
37
|
+
textarea.style.height = `${newHeight}px`;
|
|
38
|
+
textarea.style.overflowY = newHeight >= maxHeight ? 'visible' : 'hidden';
|
|
39
|
+
if (newHeight !== previousHeight) {
|
|
40
|
+
this.textareaHeightChanged.emit(newHeight - previousHeight);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
resetTextareaHeight() {
|
|
44
|
+
const textarea = this.el.shadowRoot.querySelector('textarea');
|
|
45
|
+
const minHeight = parseInt(this.getCSSVariable(textarea, 'min-height'));
|
|
46
|
+
const previousHeight = parseInt(this.getCSSVariable(textarea, 'height'));
|
|
47
|
+
textarea.style.height = `${minHeight}px`;
|
|
48
|
+
textarea.style.overflowY = 'hidden';
|
|
49
|
+
this.textareaHeightChanged.emit(minHeight - previousHeight);
|
|
50
|
+
}
|
|
51
|
+
render() {
|
|
52
|
+
return (h("div", { key: 'f4a75743dcd62fbfa9e9b290055c7d6c5fc9349d', class: "biel-input-container" }, h("textarea", { key: '04b66c0ae0c0b3a0d6534578b40875bfd1a23dc2', class: "biel-input__textarea", placeholder: this.placeholderText, value: this.userInput, onInput: (event) => this.handleInputChange(event), onKeyPress: (event) => this.handleKeyPress(event) }), h("button", { key: '67fecb28b09cf05908704a31c1bdc5fbf68f1c90', class: "biel-input__button", onClick: () => this.handleSendMessage(), disabled: this.isDisabled }, this.sendButtonText)));
|
|
53
|
+
}
|
|
54
|
+
static get is() { return "biel-input"; }
|
|
55
|
+
static get encapsulation() { return "shadow"; }
|
|
56
|
+
static get originalStyleUrls() {
|
|
57
|
+
return {
|
|
58
|
+
"$": ["biel-input.css"]
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
static get styleUrls() {
|
|
62
|
+
return {
|
|
63
|
+
"$": ["biel-input.css"]
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
static get properties() {
|
|
67
|
+
return {
|
|
68
|
+
"placeholderText": {
|
|
69
|
+
"type": "string",
|
|
70
|
+
"mutable": false,
|
|
71
|
+
"complexType": {
|
|
72
|
+
"original": "string",
|
|
73
|
+
"resolved": "string",
|
|
74
|
+
"references": {}
|
|
75
|
+
},
|
|
76
|
+
"required": false,
|
|
77
|
+
"optional": false,
|
|
78
|
+
"docs": {
|
|
79
|
+
"tags": [],
|
|
80
|
+
"text": ""
|
|
81
|
+
},
|
|
82
|
+
"attribute": "placeholder-text",
|
|
83
|
+
"reflect": false,
|
|
84
|
+
"defaultValue": "'Type your message'"
|
|
85
|
+
},
|
|
86
|
+
"sendButtonText": {
|
|
87
|
+
"type": "string",
|
|
88
|
+
"mutable": false,
|
|
89
|
+
"complexType": {
|
|
90
|
+
"original": "string",
|
|
91
|
+
"resolved": "string",
|
|
92
|
+
"references": {}
|
|
93
|
+
},
|
|
94
|
+
"required": false,
|
|
95
|
+
"optional": false,
|
|
96
|
+
"docs": {
|
|
97
|
+
"tags": [],
|
|
98
|
+
"text": ""
|
|
99
|
+
},
|
|
100
|
+
"attribute": "send-button-text",
|
|
101
|
+
"reflect": false,
|
|
102
|
+
"defaultValue": "'Send'"
|
|
103
|
+
},
|
|
104
|
+
"isDisabled": {
|
|
105
|
+
"type": "boolean",
|
|
106
|
+
"mutable": false,
|
|
107
|
+
"complexType": {
|
|
108
|
+
"original": "boolean",
|
|
109
|
+
"resolved": "boolean",
|
|
110
|
+
"references": {}
|
|
111
|
+
},
|
|
112
|
+
"required": false,
|
|
113
|
+
"optional": false,
|
|
114
|
+
"docs": {
|
|
115
|
+
"tags": [],
|
|
116
|
+
"text": ""
|
|
117
|
+
},
|
|
118
|
+
"attribute": "is-disabled",
|
|
119
|
+
"reflect": false,
|
|
120
|
+
"defaultValue": "false"
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
static get states() {
|
|
125
|
+
return {
|
|
126
|
+
"userInput": {}
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
static get events() {
|
|
130
|
+
return [{
|
|
131
|
+
"method": "messageSent",
|
|
132
|
+
"name": "messageSent",
|
|
133
|
+
"bubbles": true,
|
|
134
|
+
"cancelable": true,
|
|
135
|
+
"composed": true,
|
|
136
|
+
"docs": {
|
|
137
|
+
"tags": [],
|
|
138
|
+
"text": ""
|
|
139
|
+
},
|
|
140
|
+
"complexType": {
|
|
141
|
+
"original": "string",
|
|
142
|
+
"resolved": "string",
|
|
143
|
+
"references": {}
|
|
144
|
+
}
|
|
145
|
+
}, {
|
|
146
|
+
"method": "textareaHeightChanged",
|
|
147
|
+
"name": "textareaHeightChanged",
|
|
148
|
+
"bubbles": true,
|
|
149
|
+
"cancelable": true,
|
|
150
|
+
"composed": true,
|
|
151
|
+
"docs": {
|
|
152
|
+
"tags": [],
|
|
153
|
+
"text": ""
|
|
154
|
+
},
|
|
155
|
+
"complexType": {
|
|
156
|
+
"original": "number",
|
|
157
|
+
"resolved": "number",
|
|
158
|
+
"references": {}
|
|
159
|
+
}
|
|
160
|
+
}];
|
|
161
|
+
}
|
|
162
|
+
static get elementRef() { return "el"; }
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=biel-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"biel-input.js","sourceRoot":"","sources":["../../../src/components/biel-input/biel-input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, State, Event, EventEmitter, Prop, Element } from '@stencil/core';\n\n@Component({\n tag: 'biel-input',\n styleUrl: 'biel-input.css',\n shadow: true\n})\nexport class BielInput {\n\n @State() userInput: string = '';\n @Event() messageSent: EventEmitter<string>;\n @Event() textareaHeightChanged: EventEmitter<number>;\n\n @Prop() placeholderText: string = 'Type your message';\n @Prop() sendButtonText: string = 'Send';\n @Prop() isDisabled: boolean = false;\n\n @Element() el: HTMLElement;\n\n handleInputChange(event) {\n this.userInput = event.target.value;\n this.adjustTextareaHeight();\n }\n\n handleSendMessage() {\n if (this.userInput.trim()) {\n this.messageSent.emit(this.userInput);\n this.userInput = '';\n this.resetTextareaHeight();\n }\n }\n\n handleKeyPress(event) {\n if (event.key === 'Enter' && !event.shiftKey && !this.isDisabled) {\n event.preventDefault();\n this.handleSendMessage();\n }\n }\n\n getCSSVariable(element: HTMLElement, variableName: string): string {\n return getComputedStyle(element).getPropertyValue(variableName);\n }\n\n adjustTextareaHeight() {\n const textarea = this.el.shadowRoot.querySelector('textarea');\n const minHeight = this.getCSSVariable(textarea, 'min-height');\n const maxHeight = parseInt(this.getCSSVariable(textarea, 'max-height'));\n const padding = parseInt(this.getCSSVariable(textarea, 'padding')) * 2;\n\n const previousHeight = parseInt(this.getCSSVariable(textarea, 'height'));\n textarea.style.height = minHeight;\n const newHeight = Math.min(textarea.scrollHeight - padding, maxHeight);\n textarea.style.height = `${newHeight}px`;\n textarea.style.overflowY = newHeight >= maxHeight ? 'visible' : 'hidden';\n\n if (newHeight !== previousHeight) {\n this.textareaHeightChanged.emit(newHeight - previousHeight);\n }\n }\n\n resetTextareaHeight() {\n const textarea = this.el.shadowRoot.querySelector('textarea');\n const minHeight = parseInt(this.getCSSVariable(textarea, 'min-height'));\n const previousHeight = parseInt(this.getCSSVariable(textarea, 'height'));\n textarea.style.height = `${minHeight}px`;\n textarea.style.overflowY = 'hidden';\n this.textareaHeightChanged.emit(minHeight - previousHeight);\n }\n\n render() {\n return (\n <div class=\"biel-input-container\">\n <textarea\n class=\"biel-input__textarea\"\n placeholder={this.placeholderText}\n value={this.userInput}\n onInput={(event) => this.handleInputChange(event)}\n onKeyPress={(event) => this.handleKeyPress(event)}\n ></textarea>\n <button\n class=\"biel-input__button\"\n onClick={() => this.handleSendMessage()}\n disabled={this.isDisabled}\n >\n {this.sendButtonText}\n </button>\n </div>\n );\n }\n}"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
.biel-message {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: flex-start;
|
|
4
|
+
max-width: calc(100% - var(--biel-message-avatar-width));
|
|
5
|
+
width: fit-content;
|
|
6
|
+
padding: var(--biel-message-padding);
|
|
7
|
+
margin: 5px 0;
|
|
8
|
+
border-radius: var(--biel-message-border-radius);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.biel-message--user {
|
|
12
|
+
color: var(--biel-message-user-text-color);
|
|
13
|
+
background-color: var(--biel-message-user-background-color);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.biel-message--ai {
|
|
17
|
+
color: var(--biel-message-biel-text-color);
|
|
18
|
+
background-color: var(--biel-message-biel-background-color);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.biel-message__content * {
|
|
22
|
+
margin: 0;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.biel-message__avatar {
|
|
26
|
+
width: var(--biel-message-avatar-width);
|
|
27
|
+
height: var(--biel-message-avatar-height);
|
|
28
|
+
border-radius: 50%;
|
|
29
|
+
margin-right: var(--biel-message-avatar-margin-right);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.biel-message__content {
|
|
33
|
+
max-width: calc(100% - var(--biel-message-avatar-width) - var(--biel-message-avatar-margin-right));
|
|
34
|
+
display: flex;
|
|
35
|
+
flex-direction: column;
|
|
36
|
+
word-wrap: break-word;
|
|
37
|
+
overflow-wrap: break-word;
|
|
38
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { marked } from "marked";
|
|
3
|
+
import DOMPurify from "dompurify";
|
|
4
|
+
export class BielMessage {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.sender = undefined;
|
|
7
|
+
this.text = undefined;
|
|
8
|
+
this.content = [];
|
|
9
|
+
}
|
|
10
|
+
componentWillLoad() {
|
|
11
|
+
this.processMarkdown(this.text);
|
|
12
|
+
}
|
|
13
|
+
processMarkdown(text) {
|
|
14
|
+
const html = DOMPurify.sanitize(marked(text, { breaks: true }));
|
|
15
|
+
const tempDiv = document.createElement('div');
|
|
16
|
+
tempDiv.innerHTML = html;
|
|
17
|
+
const elements = Array.from(tempDiv.children);
|
|
18
|
+
const processedContent = elements.map((element) => {
|
|
19
|
+
if (element.tagName.toLowerCase() === 'pre' && element.querySelector('code')) {
|
|
20
|
+
return this.processCodeSnippet(element);
|
|
21
|
+
}
|
|
22
|
+
else if (element.tagName.toLowerCase() === 'table') {
|
|
23
|
+
return this.processTable(element);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return h("div", { innerHTML: element.outerHTML });
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
this.content = processedContent;
|
|
30
|
+
}
|
|
31
|
+
processCodeSnippet(element) {
|
|
32
|
+
const codeElement = element.querySelector('code');
|
|
33
|
+
const code = codeElement.textContent || '';
|
|
34
|
+
return h("code-snippet", { code: code });
|
|
35
|
+
}
|
|
36
|
+
processTable(element) {
|
|
37
|
+
return h("biel-table", { tableData: element.outerHTML });
|
|
38
|
+
}
|
|
39
|
+
render() {
|
|
40
|
+
return (h("div", { key: 'a138a41a0fc16eedcd03a7ccb0bc1ae727c51265', class: `biel-message biel-message--${this.sender}` }, h("div", { key: '6217f8e3d006fdef85e9a195d51d87d56f1b5edc', class: "biel-message__avatar" }, this.sender === 'user' && (h("svg", { key: 'dd1fd63afc8970b7988e3ec74c08c7380d48f06e', xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", class: "feather feather-user" }, h("path", { key: 'ba8a841b1bf00e2ba70827d400c655d789904568', d: "M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2" }), h("circle", { key: '1a0731730baeb9f279781cdd57cd4945f479735f', cx: "12", cy: "7", r: "4" }))), this.sender === 'ai' && (h("svg", { key: '1d85e63bc9628efb7c674cb10c3995d0f838e252', xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "-0.5 -0.5 24 24", id: "Ai-Sparkles--Streamline-Plump.svg", height: "20", width: "20" }, h("desc", { key: 'ad3de24e63cfb4e4a51b3f7685427ca03cdb2891' }, "Ai Sparkles Streamline Icon: https://streamlinehq.com"), h("g", { key: '50d8b97c30c439ed484def4d1de0e3cf945a7849', id: "ai-sparkles--artificial-intelligence-ai-sparks-sparkles" }, h("path", { key: '05d549b519b7970993518161e4a38a5e4c3827a9', id: "Union", fill: "currentColor", "fill-rule": "evenodd", d: "M3.9802362500000004 0.9029320833333333c0.4543841666666667 -0.8308098333333334 1.6476241666666667 -0.8308069583333333 2.102017916666667 0l0.7849229166666667 1.4352191666666667c0.19789583333333333 0.36179479166666667 0.49536250000000004 0.6592614583333334 0.8571333333333333 0.8571381250000001l1.4352 0.784946875c0.8308270833333333 0.4543841666666667 0.8308270833333333 1.6476241666666667 0 2.102017916666667l-1.4352 0.7849229166666667c-0.3617708333333334 0.19789583333333333 -0.6592375 0.49536250000000004 -0.8571333333333333 0.8571333333333333l-0.7849229166666667 1.4352c-0.45439375000000004 0.8308270833333333 -1.6476385416666668 0.8308270833333333 -2.102022708333333 0l-0.7849420833333334 -1.4352c-0.19787666666666667 -0.3617708333333334 -0.49534333333333336 -0.6592375 -0.8571381250000001 -0.8571333333333333l-1.4352191666666667 -0.7849229166666667c-0.8308098333333334 -0.45439375000000004 -0.8308069583333333 -1.6476385416666668 0 -2.102022708333333l1.4352191666666667 -0.7849420833333334c0.36179479166666667 -0.19787666666666667 0.6592614583333334 -0.49534333333333336 0.8571381250000001 -0.8571429166666668l0.784946875 -1.435214375ZM12.774727083333334 5.822689583333333c0.48467708333333337 -0.8861708333333334 1.7574875 -0.8861708333333334 2.242164583333333 0l1.6161333333333332 2.9549729166666667c0.5496520833333334 1.0050041666666667 1.3759270833333335 1.8313270833333333 2.3809312499999997 2.380979166666667l2.9549729166666667 1.6160854166666667c0.8861708333333334 0.48467708333333337 0.8861708333333334 1.7574875 0 2.242164583333333l-2.9549729166666667 1.6161333333333332c-1.0050041666666667 0.5496520833333334 -1.8312791666666668 1.3759270833333335 -2.3809312499999997 2.3809312499999997l-1.6161333333333332 2.9549729166666667c-0.48467708333333337 0.8861708333333334 -1.7574875 0.8861708333333334 -2.242164583333333 0l-1.6160854166666667 -2.9549729166666667c-0.5496520833333334 -1.0050041666666667 -1.375975 -1.8312791666666668 -2.380979166666667 -2.3809312499999997l-2.9549729166666667 -1.6161333333333332c-0.8861708333333334 -0.48467708333333337 -0.8861708333333334 -1.7574875 0 -2.242164583333333l2.9549729166666667 -1.6160854166666667c1.0050041666666667 -0.5496520833333334 1.8313270833333333 -1.375975 2.380979166666667 -2.380979166666667l1.6160854166666667 -2.9549729166666667Z", "clip-rule": "evenodd", "stroke-width": "1" }))))), h("div", { key: 'c924e48e19fd2a3e3a614fb3e27631cdbc00d050', class: "biel-message__content" }, this.content.map((el) => el))));
|
|
41
|
+
}
|
|
42
|
+
static get is() { return "biel-message"; }
|
|
43
|
+
static get encapsulation() { return "shadow"; }
|
|
44
|
+
static get originalStyleUrls() {
|
|
45
|
+
return {
|
|
46
|
+
"$": ["biel-message.css"]
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
static get styleUrls() {
|
|
50
|
+
return {
|
|
51
|
+
"$": ["biel-message.css"]
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
static get properties() {
|
|
55
|
+
return {
|
|
56
|
+
"sender": {
|
|
57
|
+
"type": "string",
|
|
58
|
+
"mutable": false,
|
|
59
|
+
"complexType": {
|
|
60
|
+
"original": "'user' | 'ai'",
|
|
61
|
+
"resolved": "\"ai\" | \"user\"",
|
|
62
|
+
"references": {}
|
|
63
|
+
},
|
|
64
|
+
"required": false,
|
|
65
|
+
"optional": false,
|
|
66
|
+
"docs": {
|
|
67
|
+
"tags": [],
|
|
68
|
+
"text": ""
|
|
69
|
+
},
|
|
70
|
+
"attribute": "sender",
|
|
71
|
+
"reflect": false
|
|
72
|
+
},
|
|
73
|
+
"text": {
|
|
74
|
+
"type": "string",
|
|
75
|
+
"mutable": false,
|
|
76
|
+
"complexType": {
|
|
77
|
+
"original": "string",
|
|
78
|
+
"resolved": "string",
|
|
79
|
+
"references": {}
|
|
80
|
+
},
|
|
81
|
+
"required": false,
|
|
82
|
+
"optional": false,
|
|
83
|
+
"docs": {
|
|
84
|
+
"tags": [],
|
|
85
|
+
"text": ""
|
|
86
|
+
},
|
|
87
|
+
"attribute": "text",
|
|
88
|
+
"reflect": false
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
static get states() {
|
|
93
|
+
return {
|
|
94
|
+
"content": {}
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=biel-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"biel-message.js","sourceRoot":"","sources":["../../../src/components/biel-message/biel-message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,SAAS,MAAM,WAAW,CAAC;AAOlC,MAAM,OAAO,WAAW;;;;uBAIM,EAAE;;IAE5B,iBAAiB;QACb,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,eAAe,CAAC,IAAY;QACxB,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QAEzB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9C,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3E,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAsB,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;gBACnD,OAAO,IAAI,CAAC,YAAY,CAAC,OAAsB,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACJ,OAAO,WAAK,SAAS,EAAE,OAAO,CAAC,SAAS,GAAQ,CAAC;YACrD,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;IACpC,CAAC;IAED,kBAAkB,CAAC,OAAoB;QACnC,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC;QAC3C,OAAO,oBAAc,IAAI,EAAE,IAAI,GAAiB,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,OAAoB;QAC7B,OAAO,kBAAY,SAAS,EAAE,OAAO,CAAC,SAAS,GAAe,CAAC;IACnE,CAAC;IAED,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAE,8BAA8B,IAAI,CAAC,MAAM,EAAE;YACnD,4DAAK,KAAK,EAAC,sBAAsB;gBAC5B,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,CACvB,4DAAK,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,kBAAc,GAAG,oBAAgB,OAAO,qBAAiB,OAAO,EAAC,KAAK,EAAC,sBAAsB;oBAAC,6DAAM,CAAC,EAAC,2CAA2C,GAAQ;oBAAA,+DAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,GAAU,CAAM,CAC5T;gBACA,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,CACrB,4DAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,iBAAiB,EAAC,EAAE,EAAC,mCAAmC,EAAC,MAAM,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI;oBAAC,uHAAkE;oBAAA,0DAAG,EAAE,EAAC,yDAAyD;wBAAC,6DAAM,EAAE,EAAC,OAAO,EAAC,IAAI,EAAC,cAAc,eAAW,SAAS,EAAC,CAAC,EAAC,wvEAAwvE,eAAW,SAAS,kBAAc,GAAG,GAAQ,CAAI,CAAM,CAC3nF,CACC;YACN,4DAAK,KAAK,EAAC,uBAAuB,IAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAC3B,CACJ,CACT,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, Prop, State, h } from '@stencil/core';\nimport { marked } from 'marked';\nimport DOMPurify from 'dompurify';\n\n@Component({\n tag: 'biel-message',\n styleUrl: 'biel-message.css',\n shadow: true,\n})\nexport class BielMessage {\n @Prop() sender: 'user' | 'ai';\n @Prop() text: string;\n\n @State() content: any[] = [];\n\n componentWillLoad() {\n this.processMarkdown(this.text);\n }\n\n processMarkdown(text: string) {\n const html = DOMPurify.sanitize(marked(text, { breaks: true }));\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = html;\n\n const elements = Array.from(tempDiv.children);\n const processedContent = elements.map((element) => {\n if (element.tagName.toLowerCase() === 'pre' && element.querySelector('code')) {\n return this.processCodeSnippet(element as HTMLElement);\n } else if (element.tagName.toLowerCase() === 'table') {\n return this.processTable(element as HTMLElement);\n } else {\n return <div innerHTML={element.outerHTML}></div>;\n }\n });\n this.content = processedContent;\n }\n\n processCodeSnippet(element: HTMLElement) {\n const codeElement = element.querySelector('code');\n const code = codeElement.textContent || '';\n return <code-snippet code={code}></code-snippet>;\n }\n\n processTable(element: HTMLElement) {\n return <biel-table tableData={element.outerHTML}></biel-table>;\n }\n\n render() {\n return (\n <div class={`biel-message biel-message--${this.sender}`}>\n <div class=\"biel-message__avatar\">\n {this.sender === 'user' && (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-user\"><path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\"></path><circle cx=\"12\" cy=\"7\" r=\"4\"></circle></svg>\n )}\n {this.sender === 'ai' && (\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"-0.5 -0.5 24 24\" id=\"Ai-Sparkles--Streamline-Plump.svg\" height=\"20\" width=\"20\"><desc>Ai Sparkles Streamline Icon: https://streamlinehq.com</desc><g id=\"ai-sparkles--artificial-intelligence-ai-sparks-sparkles\"><path id=\"Union\" fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M3.9802362500000004 0.9029320833333333c0.4543841666666667 -0.8308098333333334 1.6476241666666667 -0.8308069583333333 2.102017916666667 0l0.7849229166666667 1.4352191666666667c0.19789583333333333 0.36179479166666667 0.49536250000000004 0.6592614583333334 0.8571333333333333 0.8571381250000001l1.4352 0.784946875c0.8308270833333333 0.4543841666666667 0.8308270833333333 1.6476241666666667 0 2.102017916666667l-1.4352 0.7849229166666667c-0.3617708333333334 0.19789583333333333 -0.6592375 0.49536250000000004 -0.8571333333333333 0.8571333333333333l-0.7849229166666667 1.4352c-0.45439375000000004 0.8308270833333333 -1.6476385416666668 0.8308270833333333 -2.102022708333333 0l-0.7849420833333334 -1.4352c-0.19787666666666667 -0.3617708333333334 -0.49534333333333336 -0.6592375 -0.8571381250000001 -0.8571333333333333l-1.4352191666666667 -0.7849229166666667c-0.8308098333333334 -0.45439375000000004 -0.8308069583333333 -1.6476385416666668 0 -2.102022708333333l1.4352191666666667 -0.7849420833333334c0.36179479166666667 -0.19787666666666667 0.6592614583333334 -0.49534333333333336 0.8571381250000001 -0.8571429166666668l0.784946875 -1.435214375ZM12.774727083333334 5.822689583333333c0.48467708333333337 -0.8861708333333334 1.7574875 -0.8861708333333334 2.242164583333333 0l1.6161333333333332 2.9549729166666667c0.5496520833333334 1.0050041666666667 1.3759270833333335 1.8313270833333333 2.3809312499999997 2.380979166666667l2.9549729166666667 1.6160854166666667c0.8861708333333334 0.48467708333333337 0.8861708333333334 1.7574875 0 2.242164583333333l-2.9549729166666667 1.6161333333333332c-1.0050041666666667 0.5496520833333334 -1.8312791666666668 1.3759270833333335 -2.3809312499999997 2.3809312499999997l-1.6161333333333332 2.9549729166666667c-0.48467708333333337 0.8861708333333334 -1.7574875 0.8861708333333334 -2.242164583333333 0l-1.6160854166666667 -2.9549729166666667c-0.5496520833333334 -1.0050041666666667 -1.375975 -1.8312791666666668 -2.380979166666667 -2.3809312499999997l-2.9549729166666667 -1.6161333333333332c-0.8861708333333334 -0.48467708333333337 -0.8861708333333334 -1.7574875 0 -2.242164583333333l2.9549729166666667 -1.6160854166666667c1.0050041666666667 -0.5496520833333334 1.8313270833333333 -1.375975 2.380979166666667 -2.380979166666667l1.6160854166666667 -2.9549729166666667Z\" clip-rule=\"evenodd\" stroke-width=\"1\"></path></g></svg>\n )}\n </div>\n <div class=\"biel-message__content\">\n {this.content.map((el) => el)}\n </div>\n </div>\n );\n }\n}"]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
.biel-table-container {
|
|
2
|
+
margin: 20px 0;
|
|
3
|
+
overflow-x: auto;
|
|
4
|
+
background-color: var(--biel-table-bg-color);
|
|
5
|
+
border-radius: 6px;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.biel-table-container table {
|
|
9
|
+
width: 100%;
|
|
10
|
+
border-collapse: collapse;
|
|
11
|
+
overflow: hidden;
|
|
12
|
+
color: var(--biel-table-content-text-color);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.biel-table-container th,
|
|
16
|
+
.biel-table-container td {
|
|
17
|
+
padding: 8px;
|
|
18
|
+
border: 1px solid #303030;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.biel-table-container th {
|
|
22
|
+
background-color: var(--biel-table-th-bg-color);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.biel-table-container::-webkit-scrollbar {
|
|
26
|
+
height: 8px;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.biel-table-container::-webkit-scrollbar-thumb:horizontal {
|
|
30
|
+
background-color: var(--biel-chat-scrollbar-color);
|
|
31
|
+
border-radius: 10px;
|
|
32
|
+
border: 3px solid transparent;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.biel-table-container::-webkit-scrollbar-thumb:hover {
|
|
36
|
+
background-color: var(--biel-chat-scrollbar-hover-color);
|
|
37
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
export class BielTable {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.tableData = undefined;
|
|
5
|
+
}
|
|
6
|
+
render() {
|
|
7
|
+
return (h("div", { key: '15cbaba67350b4cce43f122cbce944a8662792d7', class: "biel-table-container", innerHTML: this.tableData }));
|
|
8
|
+
}
|
|
9
|
+
static get is() { return "biel-table"; }
|
|
10
|
+
static get encapsulation() { return "shadow"; }
|
|
11
|
+
static get originalStyleUrls() {
|
|
12
|
+
return {
|
|
13
|
+
"$": ["biel-table.css"]
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
static get styleUrls() {
|
|
17
|
+
return {
|
|
18
|
+
"$": ["biel-table.css"]
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
static get properties() {
|
|
22
|
+
return {
|
|
23
|
+
"tableData": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"mutable": false,
|
|
26
|
+
"complexType": {
|
|
27
|
+
"original": "string",
|
|
28
|
+
"resolved": "string",
|
|
29
|
+
"references": {}
|
|
30
|
+
},
|
|
31
|
+
"required": false,
|
|
32
|
+
"optional": false,
|
|
33
|
+
"docs": {
|
|
34
|
+
"tags": [],
|
|
35
|
+
"text": ""
|
|
36
|
+
},
|
|
37
|
+
"attribute": "table-data",
|
|
38
|
+
"reflect": false
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=biel-table.js.map
|