@websolutespa/bom-mixer-llm 1.8.21 → 1.8.23
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/CHANGELOG.md +13 -0
- package/dist/cjs/index.css +50 -24
- package/dist/cjs/index.js +67 -30
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.css +50 -24
- package/dist/esm/llm/components/FormRecap/FormRecap.js.map +1 -1
- package/dist/esm/llm/components/Header/header.js +15 -8
- package/dist/esm/llm/components/Header/header.js.map +1 -1
- package/dist/esm/llm/components/Hints/hints.js +7 -4
- package/dist/esm/llm/components/Hints/hints.js.map +1 -1
- package/dist/esm/llm/components/Intro/intro.js +16 -9
- package/dist/esm/llm/components/Intro/intro.js.map +1 -1
- package/dist/esm/llm/components/Trigger/trigger.js +6 -5
- package/dist/esm/llm/components/Trigger/trigger.js.map +1 -1
- package/dist/esm/node_modules/tslib/tslib.es6.js +14 -6
- package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/esm/useLlm/speech.js +9 -0
- package/dist/esm/useLlm/speech.js.map +1 -1
- package/dist/esm/useLlm/useLlm.js +2 -0
- package/dist/esm/useLlm/useLlm.js.map +1 -1
- package/dist/types/llm/components/FormRecap/FormRecap.d.ts.map +1 -1
- package/dist/types/llm/components/Header/header.d.ts.map +1 -1
- package/dist/types/llm/components/Hints/hints.d.ts +4 -1
- package/dist/types/llm/components/Hints/hints.d.ts.map +1 -1
- package/dist/types/llm/components/Intro/intro.d.ts.map +1 -1
- package/dist/types/llm/components/Trigger/trigger.d.ts.map +1 -1
- package/dist/types/types.d.ts +8 -7
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/useLlm/mock-app.lfo.d.ts.map +1 -1
- package/dist/types/useLlm/speech.d.ts +1 -0
- package/dist/types/useLlm/speech.d.ts.map +1 -1
- package/dist/types/useLlm/useLlm.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/llm/components/CardGroup/_style.scss +1 -3
- package/src/llm/components/FormRecap/FormRecap.tsx +0 -1
- package/src/llm/components/Header/header.tsx +10 -4
- package/src/llm/components/Hints/hints.tsx +3 -3
- package/src/llm/components/Intro/intro.tsx +23 -14
- package/src/llm/components/Main/_style.scss +2 -0
- package/src/llm/components/Prompt/_style.scss +33 -11
- package/src/llm/components/Trigger/trigger.tsx +19 -13
- package/src/llm/scss/_layout.scss +7 -3
- package/src/types.ts +8 -7
- package/src/useLlm/mock-app.lfo.ts +42 -5
- package/src/useLlm/speech.ts +10 -0
- package/src/useLlm/useLlm.tsx +2 -0
package/CHANGELOG.md
CHANGED
package/dist/cjs/index.css
CHANGED
|
@@ -362,7 +362,7 @@ llm-embed {
|
|
|
362
362
|
}
|
|
363
363
|
|
|
364
364
|
.llm__container {
|
|
365
|
-
|
|
365
|
+
padding: 0 clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1));
|
|
366
366
|
}
|
|
367
367
|
|
|
368
368
|
.llm .llm__stream-error .llm__text-body {
|
|
@@ -673,6 +673,8 @@ llm-embed {
|
|
|
673
673
|
flex-direction: column;
|
|
674
674
|
justify-content: center;
|
|
675
675
|
min-height: 100%;
|
|
676
|
+
width: 100%;
|
|
677
|
+
overflow: hidden;
|
|
676
678
|
}
|
|
677
679
|
.llm.-embedded .llm__main {
|
|
678
680
|
width: 100%;
|
|
@@ -1111,19 +1113,19 @@ llm-embed {
|
|
|
1111
1113
|
width: 100%;
|
|
1112
1114
|
}
|
|
1113
1115
|
.llm .llm__prompt-input.-speech-synthesis > .llm__prompt-textarea {
|
|
1114
|
-
padding-left:
|
|
1116
|
+
padding-left: 50px;
|
|
1115
1117
|
}
|
|
1116
1118
|
@media (min-width: 1024px) {
|
|
1117
1119
|
.llm .llm__prompt-input.-speech-synthesis > .llm__prompt-textarea {
|
|
1118
|
-
padding-left:
|
|
1120
|
+
padding-left: 50px;
|
|
1119
1121
|
}
|
|
1120
1122
|
}
|
|
1121
1123
|
.llm .llm__prompt-input.-speech-recognition > .llm__prompt-textarea {
|
|
1122
|
-
padding-right:
|
|
1124
|
+
padding-right: 50px;
|
|
1123
1125
|
}
|
|
1124
1126
|
@media (min-width: 1024px) {
|
|
1125
1127
|
.llm .llm__prompt-input.-speech-recognition > .llm__prompt-textarea {
|
|
1126
|
-
padding-right:
|
|
1128
|
+
padding-right: 50px;
|
|
1127
1129
|
}
|
|
1128
1130
|
}
|
|
1129
1131
|
.llm .llm__prompt-input .llm__busyIndicator {
|
|
@@ -1162,7 +1164,6 @@ llm-embed {
|
|
|
1162
1164
|
display: block;
|
|
1163
1165
|
width: 100%;
|
|
1164
1166
|
min-height: 0;
|
|
1165
|
-
padding: var(--llm-size-3, 1.5rem) var(--llm-size-3, 1.5rem);
|
|
1166
1167
|
margin: 0;
|
|
1167
1168
|
border: none;
|
|
1168
1169
|
resize: none;
|
|
@@ -1174,9 +1175,12 @@ llm-embed {
|
|
|
1174
1175
|
background: transparent;
|
|
1175
1176
|
color: var(--llm-input-foreground);
|
|
1176
1177
|
pointer-events: auto;
|
|
1178
|
+
overflow: clip;
|
|
1177
1179
|
cursor: pointer;
|
|
1178
1180
|
outline: 2px solid transparent;
|
|
1179
1181
|
outline-offset: 2px;
|
|
1182
|
+
padding: 8px var(--llm-size-2, 1rem);
|
|
1183
|
+
field-sizing: content;
|
|
1180
1184
|
}
|
|
1181
1185
|
.llm .llm__prompt-textarea:focus {
|
|
1182
1186
|
outline-color: currentColor;
|
|
@@ -1194,6 +1198,11 @@ llm-embed {
|
|
|
1194
1198
|
.llm .llm__prompt-textarea[aria-disabled=true]::placeholder {
|
|
1195
1199
|
color: transparent;
|
|
1196
1200
|
}
|
|
1201
|
+
@media (min-width: 768px) {
|
|
1202
|
+
.llm .llm__prompt-textarea {
|
|
1203
|
+
padding: var(--llm-size-3, 1.5rem) var(--llm-size-3, 1.5rem);
|
|
1204
|
+
}
|
|
1205
|
+
}
|
|
1197
1206
|
.llm .llm__prompt-speak, .llm .llm__prompt-microphone {
|
|
1198
1207
|
margin: 0;
|
|
1199
1208
|
padding: 0;
|
|
@@ -1330,30 +1339,43 @@ llm-embed {
|
|
|
1330
1339
|
max-width: calc(100% + var(--margin) * 2);
|
|
1331
1340
|
margin: 0 var(--negative-margin);
|
|
1332
1341
|
padding: 4px var(--margin);
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
/*
|
|
1336
|
-
/*
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1342
|
+
flex-wrap: wrap;
|
|
1343
|
+
/* if device has a touch screen */
|
|
1344
|
+
/* if device has no touch screen */
|
|
1345
|
+
/*
|
|
1346
|
+
@media (any-pointer: fine) {
|
|
1347
|
+
}
|
|
1348
|
+
*/
|
|
1340
1349
|
}
|
|
1341
|
-
|
|
1342
|
-
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1350
|
+
@media (any-pointer: coarse) {
|
|
1351
|
+
.llm .llm__prompt-suggestions .llm__suggestions {
|
|
1352
|
+
flex-wrap: nowrap;
|
|
1353
|
+
overflow-x: auto;
|
|
1354
|
+
overflow-y: hidden;
|
|
1355
|
+
/* Hide scrollbar for Chrome, Safari and Opera */
|
|
1356
|
+
/* Hide scrollbar for IE, Edge and Firefox */
|
|
1357
|
+
}
|
|
1358
|
+
.llm .llm__prompt-suggestions .llm__suggestions::-webkit-scrollbar {
|
|
1359
|
+
display: none;
|
|
1360
|
+
}
|
|
1361
|
+
.llm .llm__prompt-suggestions .llm__suggestions {
|
|
1362
|
+
-ms-overflow-style: none;
|
|
1363
|
+
/* IE and Edge */
|
|
1364
|
+
scrollbar-width: none;
|
|
1365
|
+
/* Firefox */
|
|
1366
|
+
}
|
|
1367
|
+
.llm .llm__prompt-suggestions .llm__suggestions .llm__pill {
|
|
1368
|
+
white-space: nowrap;
|
|
1369
|
+
}
|
|
1346
1370
|
}
|
|
1347
1371
|
.llm .llm__prompt-suggestions .llm__suggestions .llm__pill {
|
|
1348
|
-
|
|
1372
|
+
box-shadow: var(--llm-shadow-xs);
|
|
1349
1373
|
}
|
|
1350
1374
|
@media (min-width: 1024px) {
|
|
1351
1375
|
.llm .llm__prompt-suggestions .llm__suggestions {
|
|
1352
1376
|
max-width: calc(100% + 8px);
|
|
1353
1377
|
margin: 0 -4px;
|
|
1354
1378
|
padding: 4px;
|
|
1355
|
-
flex-wrap: wrap;
|
|
1356
|
-
overflow: hidden;
|
|
1357
1379
|
}
|
|
1358
1380
|
}
|
|
1359
1381
|
.llm .llm__prompt-suggestions .swiper {
|
|
@@ -1852,8 +1874,12 @@ llm-embed {
|
|
|
1852
1874
|
*/
|
|
1853
1875
|
}
|
|
1854
1876
|
.llm .llm__cards {
|
|
1855
|
-
width: 100
|
|
1856
|
-
margin:
|
|
1877
|
+
width: calc(100% + clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1)) * 2);
|
|
1878
|
+
margin-left: calc(clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1)) * -1);
|
|
1879
|
+
margin-right: calc(clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1)) * -1);
|
|
1880
|
+
overflow: hidden;
|
|
1881
|
+
padding-left: clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1));
|
|
1882
|
+
padding-right: clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1));
|
|
1857
1883
|
overflow: hidden;
|
|
1858
1884
|
}
|
|
1859
1885
|
.llm .llm__cards .swiper {
|
|
@@ -2960,9 +2986,9 @@ llm-embed {
|
|
|
2960
2986
|
width: calc(100% + clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1)) * 2);
|
|
2961
2987
|
margin-left: calc(clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1)) * -1);
|
|
2962
2988
|
margin-right: calc(clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1)) * -1);
|
|
2989
|
+
overflow: hidden;
|
|
2963
2990
|
padding-left: clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1));
|
|
2964
2991
|
padding-right: clamp(20px * var(--s, 1), 20px * var(--s, 1) + (var(--u, 1vw) * 100 - 375px) / 1545 * 90 * var(--s, 1), 110px * var(--s, 1));
|
|
2965
|
-
overflow: hidden;
|
|
2966
2992
|
}
|
|
2967
2993
|
.llm .llm__events .swiper {
|
|
2968
2994
|
position: relative;
|
package/dist/cjs/index.js
CHANGED
|
@@ -99,16 +99,24 @@ function __asyncGenerator(thisArg, _arguments, generator) {
|
|
|
99
99
|
var g = generator.apply(thisArg, _arguments || []),
|
|
100
100
|
i,
|
|
101
101
|
q = [];
|
|
102
|
-
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () {
|
|
102
|
+
return i = {}, verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () {
|
|
103
103
|
return this;
|
|
104
104
|
}, i;
|
|
105
|
-
function
|
|
106
|
-
|
|
107
|
-
return
|
|
108
|
-
q.push([n, v, a, b]) > 1 || resume(n, v);
|
|
109
|
-
});
|
|
105
|
+
function awaitReturn(f) {
|
|
106
|
+
return function (v) {
|
|
107
|
+
return Promise.resolve(v).then(f, reject);
|
|
110
108
|
};
|
|
111
109
|
}
|
|
110
|
+
function verb(n, f) {
|
|
111
|
+
if (g[n]) {
|
|
112
|
+
i[n] = function (v) {
|
|
113
|
+
return new Promise(function (a, b) {
|
|
114
|
+
q.push([n, v, a, b]) > 1 || resume(n, v);
|
|
115
|
+
});
|
|
116
|
+
};
|
|
117
|
+
if (f) i[n] = f(i[n]);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
112
120
|
function resume(n, v) {
|
|
113
121
|
try {
|
|
114
122
|
step(g[n](v));
|
|
@@ -2132,6 +2140,15 @@ class Speech extends Emitter$1 {
|
|
|
2132
2140
|
this.textToSpeech_.speak(text);
|
|
2133
2141
|
}
|
|
2134
2142
|
}
|
|
2143
|
+
cancel() {
|
|
2144
|
+
try {
|
|
2145
|
+
if (this.textToSpeech_) {
|
|
2146
|
+
this.textToSpeech_.cancel();
|
|
2147
|
+
}
|
|
2148
|
+
} catch (error) {
|
|
2149
|
+
console.log('Speech.cancel.error', error);
|
|
2150
|
+
}
|
|
2151
|
+
}
|
|
2135
2152
|
recognizeStart() {
|
|
2136
2153
|
if (this.speechToText_) {
|
|
2137
2154
|
this.speechToText_.start(this.lang);
|
|
@@ -2928,6 +2945,7 @@ const createLlmStore = _ref => {
|
|
|
2928
2945
|
}));
|
|
2929
2946
|
}),
|
|
2930
2947
|
send: (prompt, onPrompt, onMessage, onEnd) => __awaiter(void 0, void 0, void 0, function* () {
|
|
2948
|
+
speech.cancel();
|
|
2931
2949
|
const state = get();
|
|
2932
2950
|
messageService = new MessageService({
|
|
2933
2951
|
apiKey,
|
|
@@ -3006,6 +3024,7 @@ const createLlmStore = _ref => {
|
|
|
3006
3024
|
});
|
|
3007
3025
|
}),
|
|
3008
3026
|
abort: () => {
|
|
3027
|
+
speech.cancel();
|
|
3009
3028
|
if (messageService) {
|
|
3010
3029
|
messageService.abort();
|
|
3011
3030
|
messageService = undefined;
|
|
@@ -3590,7 +3609,7 @@ function Canvas() {
|
|
|
3590
3609
|
}
|
|
3591
3610
|
|
|
3592
3611
|
const Header = props => {
|
|
3593
|
-
var _a, _b;
|
|
3612
|
+
var _a, _b, _c;
|
|
3594
3613
|
const app = useLlm(state => state.app);
|
|
3595
3614
|
const {
|
|
3596
3615
|
open
|
|
@@ -3601,7 +3620,8 @@ const Header = props => {
|
|
|
3601
3620
|
const label = bomMixerHooks.useLabel();
|
|
3602
3621
|
const logo = app === null || app === void 0 ? void 0 : app.contents.logo;
|
|
3603
3622
|
const logoMini = (_a = app === null || app === void 0 ? void 0 : app.contents) === null || _a === void 0 ? void 0 : _a.logoMini;
|
|
3604
|
-
const
|
|
3623
|
+
const openingSound = (_b = app === null || app === void 0 ? void 0 : app.contents) === null || _b === void 0 ? void 0 : _b.openingSound;
|
|
3624
|
+
const additionalLogos = (_c = app === null || app === void 0 ? void 0 : app.contents) === null || _c === void 0 ? void 0 : _c.additionalLogos;
|
|
3605
3625
|
const classes = bomCore.getClassNames('llm__header', {
|
|
3606
3626
|
hidden,
|
|
3607
3627
|
fixed
|
|
@@ -3635,11 +3655,17 @@ const Header = props => {
|
|
|
3635
3655
|
href: "#llm-prompt-textarea",
|
|
3636
3656
|
className: "llm__header-skip",
|
|
3637
3657
|
children: label('llm.skip')
|
|
3638
|
-
}), dismissable && jsxRuntime.jsxs(
|
|
3639
|
-
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3658
|
+
}), dismissable && jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
3659
|
+
children: [jsxRuntime.jsxs("button", {
|
|
3660
|
+
type: "button",
|
|
3661
|
+
className: "llm__header-back -llm-t-cta3",
|
|
3662
|
+
onClick: () => open(),
|
|
3663
|
+
children: [label('llm.back'), jsxRuntime.jsx(bomMixerIcons.IconLlmArrowCornerRightUp, {})]
|
|
3664
|
+
}), openingSound && jsxRuntime.jsx("audio", {
|
|
3665
|
+
src: openingSound.src || openingSound.url,
|
|
3666
|
+
autoPlay: true,
|
|
3667
|
+
loop: false
|
|
3668
|
+
})]
|
|
3643
3669
|
})]
|
|
3644
3670
|
})
|
|
3645
3671
|
});
|
|
@@ -3689,11 +3715,14 @@ const messageMapper = text => {
|
|
|
3689
3715
|
}));
|
|
3690
3716
|
};
|
|
3691
3717
|
|
|
3692
|
-
const Hints =
|
|
3718
|
+
const Hints = _ref => {
|
|
3719
|
+
let {
|
|
3720
|
+
hints
|
|
3721
|
+
} = _ref;
|
|
3693
3722
|
const {
|
|
3694
3723
|
width
|
|
3695
3724
|
} = bomMixerHooks.useWindowSize();
|
|
3696
|
-
|
|
3725
|
+
useLlm(state => state.app);
|
|
3697
3726
|
const {
|
|
3698
3727
|
send
|
|
3699
3728
|
} = useLlmView(state => state.actions);
|
|
@@ -3734,12 +3763,12 @@ const Hints = () => {
|
|
|
3734
3763
|
const getCards = () => {
|
|
3735
3764
|
if (width < 768) {
|
|
3736
3765
|
return jsxRuntime.jsx(react$1.Swiper, Object.assign({}, swiperProps, {
|
|
3737
|
-
children:
|
|
3766
|
+
children: hints.map((item, j) => jsxRuntime.jsx(react$1.SwiperSlide, {
|
|
3738
3767
|
children: getCard(item, j)
|
|
3739
3768
|
}, j))
|
|
3740
3769
|
}));
|
|
3741
3770
|
} else {
|
|
3742
|
-
return
|
|
3771
|
+
return hints.map(getCard);
|
|
3743
3772
|
}
|
|
3744
3773
|
};
|
|
3745
3774
|
return jsxRuntime.jsx("section", {
|
|
@@ -3945,7 +3974,7 @@ const Intro = () => {
|
|
|
3945
3974
|
return () => window.removeEventListener('message', onMessage);
|
|
3946
3975
|
}
|
|
3947
3976
|
return () => {};
|
|
3948
|
-
}, [setIntroed]);
|
|
3977
|
+
}, [setIntroed, send]);
|
|
3949
3978
|
react.useEffect(() => {
|
|
3950
3979
|
const onLenisScroll = () => {
|
|
3951
3980
|
if (iframeRef.current) {
|
|
@@ -3964,6 +3993,8 @@ const Intro = () => {
|
|
|
3964
3993
|
return;
|
|
3965
3994
|
}
|
|
3966
3995
|
const contents = app.contents;
|
|
3996
|
+
const extendedWelcomeText = contents.extendedWelcomeText;
|
|
3997
|
+
const hints = (app === null || app === void 0 ? void 0 : app.contents.layoutBuilder) || [];
|
|
3967
3998
|
return contents.customIntro ? skipCustomIntro ? null : jsxRuntime.jsx("section", {
|
|
3968
3999
|
className: "llm__customIntro",
|
|
3969
4000
|
children: jsxRuntime.jsx("iframe", {
|
|
@@ -3981,7 +4012,10 @@ const Intro = () => {
|
|
|
3981
4012
|
className: "llm__intro-wrapper llm__row",
|
|
3982
4013
|
children: [jsxRuntime.jsxs(framerMotion.motion.div, {
|
|
3983
4014
|
variants: motionItem,
|
|
3984
|
-
className:
|
|
4015
|
+
className: bomCore.getClassNames('llm__intro-text llm__col', {
|
|
4016
|
+
'--md-6 --lg-5': hints.length > 0,
|
|
4017
|
+
'--sm-9 --md-8 --lg-7': hints.length === 0
|
|
4018
|
+
}),
|
|
3985
4019
|
children: [jsxRuntime.jsx("div", {
|
|
3986
4020
|
className: "llm__intro-blob",
|
|
3987
4021
|
children: jsxRuntime.jsx(framerMotion.motion.div, {
|
|
@@ -3990,19 +4024,21 @@ const Intro = () => {
|
|
|
3990
4024
|
animate: "bottom",
|
|
3991
4025
|
children: jsxRuntime.jsx(Blob, {})
|
|
3992
4026
|
})
|
|
3993
|
-
}), embedded ? jsxRuntime.jsx(framerMotion.motion.h2, {
|
|
4027
|
+
}), extendedWelcomeText && (embedded ? jsxRuntime.jsx(framerMotion.motion.h2, {
|
|
3994
4028
|
variants: motionItem,
|
|
3995
4029
|
className: "llm__intro-title -llm-t-display2",
|
|
3996
|
-
children:
|
|
4030
|
+
children: extendedWelcomeText
|
|
3997
4031
|
}) : jsxRuntime.jsx(framerMotion.motion.h1, {
|
|
3998
4032
|
variants: motionItem,
|
|
3999
4033
|
className: "llm__intro-title -llm-t-display2",
|
|
4000
|
-
children:
|
|
4001
|
-
})]
|
|
4002
|
-
}), jsxRuntime.jsx(framerMotion.motion.div, {
|
|
4034
|
+
children: extendedWelcomeText
|
|
4035
|
+
}))]
|
|
4036
|
+
}), hints.length > 0 && jsxRuntime.jsx(framerMotion.motion.div, {
|
|
4003
4037
|
variants: motionItem,
|
|
4004
4038
|
className: "llm__intro-hints llm__col --end-md-12 --md-6 --lg-5",
|
|
4005
|
-
children: jsxRuntime.jsx(Hints, {
|
|
4039
|
+
children: jsxRuntime.jsx(Hints, {
|
|
4040
|
+
hints: hints
|
|
4041
|
+
})
|
|
4006
4042
|
})]
|
|
4007
4043
|
})
|
|
4008
4044
|
})
|
|
@@ -5904,6 +5940,7 @@ const Trigger = () => {
|
|
|
5904
5940
|
} = useLlmView(state => state.actions);
|
|
5905
5941
|
const label = bomMixerHooks.useLabel();
|
|
5906
5942
|
const collapsedWelcomeText = messageMapper(app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeText);
|
|
5943
|
+
const collapsedWelcomeTextCta = messageMapper(app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextCta);
|
|
5907
5944
|
const collapsedWelcomeTextHover = messageMapper(app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextHover);
|
|
5908
5945
|
const position = theme.trigger.position || 'bottom';
|
|
5909
5946
|
return jsxRuntime.jsxs(framerMotion.motion.nav, {
|
|
@@ -5928,22 +5965,22 @@ const Trigger = () => {
|
|
|
5928
5965
|
children: [jsxRuntime.jsxs("button", {
|
|
5929
5966
|
type: "button",
|
|
5930
5967
|
className: bomCore.getClassNames('llm__trigger-btn', {
|
|
5931
|
-
'llm__trigger-btn--hover':
|
|
5968
|
+
'llm__trigger-btn--hover': collapsedWelcomeTextHover !== undefined
|
|
5932
5969
|
}),
|
|
5933
5970
|
children: [jsxRuntime.jsx(Blob, {}), jsxRuntime.jsx("span", {
|
|
5934
5971
|
children: label('llm.button')
|
|
5935
5972
|
})]
|
|
5936
|
-
}), !opened && jsxRuntime.jsxs("div", {
|
|
5973
|
+
}), !opened && (collapsedWelcomeText || collapsedWelcomeTextCta || collapsedWelcomeTextHover) && jsxRuntime.jsxs("div", {
|
|
5937
5974
|
className: "llm__trigger-popup -llm-t-body2",
|
|
5938
|
-
children: [jsxRuntime.jsxs(framerMotion.motion.div, {
|
|
5975
|
+
children: [(collapsedWelcomeText || collapsedWelcomeTextCta) && jsxRuntime.jsxs(framerMotion.motion.div, {
|
|
5939
5976
|
className: "llm__trigger-message",
|
|
5940
5977
|
exit: {
|
|
5941
5978
|
opacity: 0
|
|
5942
5979
|
},
|
|
5943
|
-
children: [jsxRuntime.jsx(Canvas, {}), collapsedWelcomeText,
|
|
5980
|
+
children: [jsxRuntime.jsx(Canvas, {}), collapsedWelcomeText, collapsedWelcomeTextCta && jsxRuntime.jsx("button", {
|
|
5944
5981
|
type: "button",
|
|
5945
5982
|
className: "llm__trigger-cta",
|
|
5946
|
-
children:
|
|
5983
|
+
children: collapsedWelcomeTextCta
|
|
5947
5984
|
})]
|
|
5948
5985
|
}), collapsedWelcomeTextHover && jsxRuntime.jsxs(framerMotion.motion.div, {
|
|
5949
5986
|
className: "llm__trigger-message",
|