@burdenoff/website-sdk 2026.1102.1 → 2026.1102.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/README.md +9 -0
- package/dist/avatar-live-view/index.d.mts +7 -2
- package/dist/avatar-live-view/index.d.ts +7 -2
- package/dist/avatar-live-view/index.js +118 -41
- package/dist/avatar-live-view/index.js.map +1 -1
- package/dist/avatar-live-view/index.mjs +113 -36
- package/dist/avatar-live-view/index.mjs.map +1 -1
- package/dist/{chunk-OIQHIGGU.js → chunk-FQH3AJN3.js} +2 -2
- package/dist/{chunk-OIQHIGGU.js.map → chunk-FQH3AJN3.js.map} +1 -1
- package/dist/{chunk-QOHPLTGT.mjs → chunk-SFT3WHN5.mjs} +2 -2
- package/dist/{chunk-QOHPLTGT.mjs.map → chunk-SFT3WHN5.mjs.map} +1 -1
- package/dist/{explore-avatar-live-config-D-hO90-A.d.mts → explore-avatar-live-config-Bp3kQbU2.d.mts} +5 -2
- package/dist/{explore-avatar-live-config-C1ILEcY8.d.ts → explore-avatar-live-config-Cetx8-Zu.d.ts} +5 -2
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { turnstileSiteKeyOf, isAvatarSite, isAvatarLiveLocaleReviewed, isAvatarVersion } from '../chunk-
|
|
1
|
+
import { turnstileSiteKeyOf, isAvatarSite, isAvatarLiveLocaleReviewed, isAvatarVersion } from '../chunk-SFT3WHN5.mjs';
|
|
2
2
|
import { fill } from '../chunk-TT3MHN42.mjs';
|
|
3
3
|
import { cn } from '../chunk-R7G6TWIS.mjs';
|
|
4
4
|
import '../chunk-VNS5WDWO.mjs';
|
|
@@ -260,7 +260,7 @@ var EN = {
|
|
|
260
260
|
needsAnswer: "Choose a suggested question in Chat first.",
|
|
261
261
|
needsAnswerDetail: "The avatar can read only the first answer aloud.",
|
|
262
262
|
startNewChat: "Start a new chat to use the avatar.",
|
|
263
|
-
startNewChatDetail: "The avatar reads aloud only the first answer in a chat,
|
|
263
|
+
startNewChatDetail: "The avatar reads aloud only the first answer in a chat, to a suggested question, within fifteen minutes. Start a new chat and choose a suggested question.",
|
|
264
264
|
start: "Start live avatar",
|
|
265
265
|
notNow: "Not now",
|
|
266
266
|
opensInNewTab: "(opens in a new tab)",
|
|
@@ -284,7 +284,7 @@ var EN = {
|
|
|
284
284
|
region: "The live avatar isn't offered in your region yet.",
|
|
285
285
|
locale: "The live avatar isn't offered in this language yet.",
|
|
286
286
|
paused: "The live avatar is paused right now.",
|
|
287
|
-
notEligible: "The avatar
|
|
287
|
+
notEligible: "The avatar reads the first answer to a suggested question, within fifteen minutes. Start a new chat and choose a suggested question.",
|
|
288
288
|
answerClaimed: "The avatar has already read this answer."
|
|
289
289
|
};
|
|
290
290
|
var ZH = {
|
|
@@ -293,7 +293,7 @@ var ZH = {
|
|
|
293
293
|
needsAnswerDetail: "\u865A\u62DF\u5F62\u8C61\u53EA\u80FD\u6717\u8BFB\u7B2C\u4E00\u4E2A\u56DE\u7B54\u3002",
|
|
294
294
|
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
295
295
|
startNewChat: "\u8BF7\u5F00\u59CB\u65B0\u7684\u804A\u5929\uFF0C\u518D\u4F7F\u7528\u865A\u62DF\u5F62\u8C61\u3002",
|
|
296
|
-
startNewChatDetail: "\u865A\u62DF\u5F62\u8C61\u53EA\u6717\u8BFB\u4E00\u6B21\u804A\u5929\u4E2D\u7684\u7B2C\u4E00\u4E2A\u56DE\u7B54\uFF0C\u4E14\u4EC5\u9650\
|
|
296
|
+
startNewChatDetail: "\u865A\u62DF\u5F62\u8C61\u53EA\u6717\u8BFB\u4E00\u6B21\u804A\u5929\u4E2D\u7684\u7B2C\u4E00\u4E2A\u56DE\u7B54\uFF0C\u4E14\u4EC5\u9650\u63A8\u8350\u95EE\u9898\u7684\u56DE\u7B54\u3001\u5728\u5341\u4E94\u5206\u949F\u5185\u3002\u8BF7\u5F00\u59CB\u65B0\u7684\u804A\u5929\uFF0C\u5E76\u9009\u62E9\u4E00\u4E2A\u63A8\u8350\u95EE\u9898\u3002",
|
|
297
297
|
start: "\u542F\u52A8\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61",
|
|
298
298
|
notNow: "\u6682\u4E0D",
|
|
299
299
|
opensInNewTab: "\uFF08\u5728\u65B0\u6807\u7B7E\u9875\u4E2D\u6253\u5F00\uFF09",
|
|
@@ -317,7 +317,8 @@ var ZH = {
|
|
|
317
317
|
region: "\u60A8\u6240\u5728\u7684\u5730\u533A\u6682\u4E0D\u63D0\u4F9B\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61\u3002",
|
|
318
318
|
locale: "\u6B64\u8BED\u8A00\u6682\u4E0D\u63D0\u4F9B\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61\u3002",
|
|
319
319
|
paused: "\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61\u76EE\u524D\u5DF2\u6682\u505C\u3002",
|
|
320
|
-
|
|
320
|
+
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
321
|
+
notEligible: "\u865A\u62DF\u5F62\u8C61\u53EA\u6717\u8BFB\u63A8\u8350\u95EE\u9898\u7684\u7B2C\u4E00\u4E2A\u56DE\u7B54\uFF0C\u4E14\u987B\u5728\u5341\u4E94\u5206\u949F\u5185\u3002\u8BF7\u5F00\u59CB\u65B0\u7684\u804A\u5929\uFF0C\u5E76\u9009\u62E9\u4E00\u4E2A\u63A8\u8350\u95EE\u9898\u3002",
|
|
321
322
|
answerClaimed: "\u865A\u62DF\u5F62\u8C61\u5DF2\u7ECF\u6717\u8BFB\u8FC7\u8FD9\u4E2A\u56DE\u7B54\u3002"
|
|
322
323
|
};
|
|
323
324
|
var HI = {
|
|
@@ -326,7 +327,7 @@ var HI = {
|
|
|
326
327
|
needsAnswerDetail: "\u0905\u0935\u0924\u093E\u0930 \u0915\u0947\u0935\u0932 \u092A\u0939\u0932\u093E \u0909\u0924\u094D\u0924\u0930 \u091C\u093C\u094B\u0930 \u0938\u0947 \u092A\u0922\u093C \u0938\u0915\u0924\u093E \u0939\u0948\u0964",
|
|
327
328
|
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
328
329
|
startNewChat: "\u0905\u0935\u0924\u093E\u0930 \u0915\u093E \u0909\u092A\u092F\u094B\u0917 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093F\u090F \u0928\u0908 \u091A\u0948\u091F \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902\u0964",
|
|
329
|
-
startNewChatDetail: "\u0905\u0935\u0924\u093E\u0930 \u0915\u093F\u0938\u0940 \u091A\u0948\u091F \u0915\u093E \u0915\u0947\u0935\u0932 \u092A\u0939\u0932\u093E \u0909\u0924\u094D\u0924\u0930 \u091C\u093C\u094B\u0930 \u0938\u0947 \u092A\u0922\u093C\u0924\u093E \u0939\u0948, \
|
|
330
|
+
startNewChatDetail: "\u0905\u0935\u0924\u093E\u0930 \u0915\u093F\u0938\u0940 \u091A\u0948\u091F \u0915\u093E \u0915\u0947\u0935\u0932 \u092A\u0939\u0932\u093E \u0909\u0924\u094D\u0924\u0930 \u091C\u093C\u094B\u0930 \u0938\u0947 \u092A\u0922\u093C\u0924\u093E \u0939\u0948, \u0935\u0939 \u092D\u0940 \u0938\u0941\u091D\u093E\u090F \u0917\u090F \u092A\u094D\u0930\u0936\u094D\u0928 \u0915\u093E \u0914\u0930 \u092A\u0902\u0926\u094D\u0930\u0939 \u092E\u093F\u0928\u091F \u0915\u0947 \u092D\u0940\u0924\u0930\u0964 \u0928\u0908 \u091A\u0948\u091F \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902 \u0914\u0930 \u0915\u094B\u0908 \u0938\u0941\u091D\u093E\u092F\u093E \u0917\u092F\u093E \u092A\u094D\u0930\u0936\u094D\u0928 \u091A\u0941\u0928\u0947\u0902\u0964",
|
|
330
331
|
start: "\u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902",
|
|
331
332
|
notNow: "\u0905\u092D\u0940 \u0928\u0939\u0940\u0902",
|
|
332
333
|
opensInNewTab: "(\u0928\u090F \u091F\u0948\u092C \u092E\u0947\u0902 \u0916\u0941\u0932\u0924\u093E \u0939\u0948)",
|
|
@@ -350,7 +351,8 @@ var HI = {
|
|
|
350
351
|
region: "\u0906\u092A\u0915\u0947 \u0915\u094D\u0937\u0947\u0924\u094D\u0930 \u092E\u0947\u0902 \u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u0905\u092D\u0940 \u0909\u092A\u0932\u092C\u094D\u0927 \u0928\u0939\u0940\u0902 \u0939\u0948\u0964",
|
|
351
352
|
locale: "\u0907\u0938 \u092D\u093E\u0937\u093E \u092E\u0947\u0902 \u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u0905\u092D\u0940 \u0909\u092A\u0932\u092C\u094D\u0927 \u0928\u0939\u0940\u0902 \u0939\u0948\u0964",
|
|
352
353
|
paused: "\u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u0905\u092D\u0940 \u0930\u0941\u0915\u093E \u0939\u0941\u0906 \u0939\u0948\u0964",
|
|
353
|
-
|
|
354
|
+
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
355
|
+
notEligible: "\u0905\u0935\u0924\u093E\u0930 \u0938\u0941\u091D\u093E\u090F \u0917\u090F \u092A\u094D\u0930\u0936\u094D\u0928 \u0915\u093E \u092A\u0939\u0932\u093E \u0909\u0924\u094D\u0924\u0930 \u0939\u0940 \u092A\u0922\u093C\u0924\u093E \u0939\u0948, \u092A\u0902\u0926\u094D\u0930\u0939 \u092E\u093F\u0928\u091F \u0915\u0947 \u092D\u0940\u0924\u0930\u0964 \u0928\u0908 \u091A\u0948\u091F \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902 \u0914\u0930 \u0915\u094B\u0908 \u0938\u0941\u091D\u093E\u092F\u093E \u0917\u092F\u093E \u092A\u094D\u0930\u0936\u094D\u0928 \u091A\u0941\u0928\u0947\u0902\u0964",
|
|
354
356
|
answerClaimed: "\u0905\u0935\u0924\u093E\u0930 \u092F\u0939 \u0909\u0924\u094D\u0924\u0930 \u092A\u0939\u0932\u0947 \u0939\u0940 \u092A\u0922\u093C \u091A\u0941\u0915\u093E \u0939\u0948\u0964"
|
|
355
357
|
};
|
|
356
358
|
var ES = {
|
|
@@ -359,7 +361,7 @@ var ES = {
|
|
|
359
361
|
needsAnswerDetail: "El avatar solo puede leer en voz alta la primera respuesta.",
|
|
360
362
|
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
361
363
|
startNewChat: "Inicia un chat nuevo para usar el avatar.",
|
|
362
|
-
startNewChatDetail: "El avatar solo lee en voz alta la primera respuesta de un chat,
|
|
364
|
+
startNewChatDetail: "El avatar solo lee en voz alta la primera respuesta de un chat, si es la de una pregunta sugerida y en un plazo de quince minutos. Inicia un chat nuevo y elige una pregunta sugerida.",
|
|
363
365
|
start: "Iniciar el avatar en vivo",
|
|
364
366
|
notNow: "Ahora no",
|
|
365
367
|
opensInNewTab: "(se abre en una pesta\xF1a nueva)",
|
|
@@ -383,7 +385,8 @@ var ES = {
|
|
|
383
385
|
region: "El avatar en vivo a\xFAn no est\xE1 disponible en tu regi\xF3n.",
|
|
384
386
|
locale: "El avatar en vivo a\xFAn no est\xE1 disponible en este idioma.",
|
|
385
387
|
paused: "El avatar en vivo est\xE1 en pausa en este momento.",
|
|
386
|
-
|
|
388
|
+
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
389
|
+
notEligible: "El avatar lee la primera respuesta a una pregunta sugerida, en un plazo de quince minutos. Inicia un chat nuevo y elige una pregunta sugerida.",
|
|
387
390
|
answerClaimed: "El avatar ya ha le\xEDdo esta respuesta."
|
|
388
391
|
};
|
|
389
392
|
var AR = {
|
|
@@ -392,7 +395,7 @@ var AR = {
|
|
|
392
395
|
needsAnswerDetail: "\u064A\u0645\u0643\u0646 \u0644\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0625\u062C\u0627\u0628\u0629 \u0627\u0644\u0623\u0648\u0644\u0649 \u0641\u0642\u0637 \u0628\u0635\u0648\u062A \u0639\u0627\u0644\u064D.",
|
|
393
396
|
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
394
397
|
startNewChat: "\u0627\u0628\u062F\u0623 \u062F\u0631\u062F\u0634\u0629 \u062C\u062F\u064A\u062F\u0629 \u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631.",
|
|
395
|
-
startNewChatDetail: "\u064A\u0642\u0631\u0623 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0628\u0635\u0648\u062A \u0639\u0627\u0644\u064D \u0627\u0644\u0625\u062C\u0627\u0628\u0629 \u0627\u0644\u0623\u0648\u0644\u0649 \u0641\u064A \u0627\u0644\u062F\u0631\u062F\u0634\u0629 \u0641\u0642\u0637\u060C \
|
|
398
|
+
startNewChatDetail: "\u064A\u0642\u0631\u0623 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0628\u0635\u0648\u062A \u0639\u0627\u0644\u064D \u0627\u0644\u0625\u062C\u0627\u0628\u0629 \u0627\u0644\u0623\u0648\u0644\u0649 \u0641\u064A \u0627\u0644\u062F\u0631\u062F\u0634\u0629 \u0641\u0642\u0637\u060C \u0625\u0630\u0627 \u0643\u0627\u0646\u062A \u0625\u062C\u0627\u0628\u0629 \u0639\u0646 \u0633\u0624\u0627\u0644 \u0645\u0642\u062A\u0631\u062D \u0648\u062E\u0644\u0627\u0644 \u062E\u0645\u0633 \u0639\u0634\u0631\u0629 \u062F\u0642\u064A\u0642\u0629. \u0627\u0628\u062F\u0623 \u062F\u0631\u062F\u0634\u0629 \u062C\u062F\u064A\u062F\u0629 \u0648\u0627\u062E\u062A\u0631 \u0633\u0624\u0627\u0644\u064B\u0627 \u0645\u0642\u062A\u0631\u062D\u064B\u0627.",
|
|
396
399
|
start: "\u0628\u062F\u0621 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631",
|
|
397
400
|
notNow: "\u0644\u064A\u0633 \u0627\u0644\u0622\u0646",
|
|
398
401
|
opensInNewTab: "(\u064A\u064F\u0641\u062A\u062D \u0641\u064A \u0639\u0644\u0627\u0645\u0629 \u062A\u0628\u0648\u064A\u0628 \u062C\u062F\u064A\u062F\u0629)",
|
|
@@ -416,7 +419,8 @@ var AR = {
|
|
|
416
419
|
region: "\u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u063A\u064A\u0631 \u0645\u062A\u0627\u062D \u0641\u064A \u0645\u0646\u0637\u0642\u062A\u0643 \u0628\u0639\u062F.",
|
|
417
420
|
locale: "\u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u063A\u064A\u0631 \u0645\u062A\u0627\u062D \u0628\u0647\u0630\u0647 \u0627\u0644\u0644\u063A\u0629 \u0628\u0639\u062F.",
|
|
418
421
|
paused: "\u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u0645\u062A\u0648\u0642\u0641 \u0645\u0624\u0642\u062A\u064B\u0627 \u0627\u0644\u0622\u0646.",
|
|
419
|
-
|
|
422
|
+
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
423
|
+
notEligible: "\u064A\u0642\u0631\u0623 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0625\u062C\u0627\u0628\u0629 \u0627\u0644\u0623\u0648\u0644\u0649 \u0639\u0646 \u0633\u0624\u0627\u0644 \u0645\u0642\u062A\u0631\u062D\u060C \u062E\u0644\u0627\u0644 \u062E\u0645\u0633 \u0639\u0634\u0631\u0629 \u062F\u0642\u064A\u0642\u0629. \u0627\u0628\u062F\u0623 \u062F\u0631\u062F\u0634\u0629 \u062C\u062F\u064A\u062F\u0629 \u0648\u0627\u062E\u062A\u0631 \u0633\u0624\u0627\u0644\u064B\u0627 \u0645\u0642\u062A\u0631\u062D\u064B\u0627.",
|
|
420
424
|
answerClaimed: "\u0642\u0631\u0623 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0647\u0630\u0647 \u0627\u0644\u0625\u062C\u0627\u0628\u0629 \u0645\u0646 \u0642\u0628\u0644."
|
|
421
425
|
};
|
|
422
426
|
var TA = {
|
|
@@ -425,7 +429,7 @@ var TA = {
|
|
|
425
429
|
needsAnswerDetail: "\u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0BAE\u0BC1\u0BA4\u0BB2\u0BCD \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8 \u0BAE\u0B9F\u0BCD\u0B9F\u0BC1\u0BAE\u0BC7 \u0B89\u0BB0\u0B95\u0BCD\u0B95\u0BAA\u0BCD \u0BAA\u0B9F\u0BBF\u0B95\u0BCD\u0B95 \u0BAE\u0BC1\u0B9F\u0BBF\u0BAF\u0BC1\u0BAE\u0BCD.",
|
|
426
430
|
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
427
431
|
startNewChat: "\u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BC8\u0BAA\u0BCD \u0BAA\u0BAF\u0BA9\u0BCD\u0BAA\u0B9F\u0BC1\u0BA4\u0BCD\u0BA4 \u0BAA\u0BC1\u0BA4\u0BBF\u0BAF \u0B85\u0BB0\u0B9F\u0BCD\u0B9F\u0BC8\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95\u0BB5\u0BC1\u0BAE\u0BCD.",
|
|
428
|
-
startNewChatDetail: "\u0B93\u0BB0\u0BCD \u0B85\u0BB0\u0B9F\u0BCD\u0B9F\u0BC8\u0BAF\u0BBF\u0BA9\u0BCD \u0BAE\u0BC1\u0BA4\u0BB2\u0BCD \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8 \u0BAE\u0B9F\u0BCD\u0B9F\u0BC1\u0BAE\u0BC7, \u0B85\u0BA4\u0BC1\u0BB5\u0BC1\u0BAE\u0BCD \u0BAA\u0BB0\u0BBF\u0BA8\u0BCD\u0BA4\u0BC1\u0BB0\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B95\u0BC7\u0BB3\u0BCD\u0BB5\u0BBF\u0B95\u0BCD\u0B95\u0BBE\u0BA9 \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8 \u0BAE\u0B9F\u0BCD\u0B9F\u0BC1\u0BAE\u0BC7 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B89\u0BB0\u0B95\u0BCD\u0B95\u0BAA\u0BCD \u0BAA\u0B9F\u0BBF\u0B95\u0BCD\u0B95\u0BC1\u0BAE\u0BCD. \u0BAA\u0BC1\u0BA4\u0BBF\u0BAF \u0B85\u0BB0\u0B9F\u0BCD\u0B9F\u0BC8\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95\u0BBF, \u0BAA\u0BB0\u0BBF\u0BA8\u0BCD\u0BA4\u0BC1\u0BB0\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B92\u0BB0\u0BC1 \u0B95\u0BC7\u0BB3\u0BCD\u0BB5\u0BBF\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BC7\u0BB0\u0BCD\u0BA8\u0BCD\u0BA4\u0BC6\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BB5\u0BC1\u0BAE\u0BCD.",
|
|
432
|
+
startNewChatDetail: "\u0B93\u0BB0\u0BCD \u0B85\u0BB0\u0B9F\u0BCD\u0B9F\u0BC8\u0BAF\u0BBF\u0BA9\u0BCD \u0BAE\u0BC1\u0BA4\u0BB2\u0BCD \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8 \u0BAE\u0B9F\u0BCD\u0B9F\u0BC1\u0BAE\u0BC7, \u0B85\u0BA4\u0BC1\u0BB5\u0BC1\u0BAE\u0BCD \u0BAA\u0BB0\u0BBF\u0BA8\u0BCD\u0BA4\u0BC1\u0BB0\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B95\u0BC7\u0BB3\u0BCD\u0BB5\u0BBF\u0B95\u0BCD\u0B95\u0BBE\u0BA9 \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8, \u0BAA\u0BA4\u0BBF\u0BA9\u0BC8\u0BA8\u0BCD\u0BA4\u0BC1 \u0BA8\u0BBF\u0BAE\u0BBF\u0B9F\u0B99\u0BCD\u0B95\u0BB3\u0BC1\u0B95\u0BCD\u0B95\u0BC1\u0BB3\u0BCD \u0BAE\u0B9F\u0BCD\u0B9F\u0BC1\u0BAE\u0BC7 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B89\u0BB0\u0B95\u0BCD\u0B95\u0BAA\u0BCD \u0BAA\u0B9F\u0BBF\u0B95\u0BCD\u0B95\u0BC1\u0BAE\u0BCD. \u0BAA\u0BC1\u0BA4\u0BBF\u0BAF \u0B85\u0BB0\u0B9F\u0BCD\u0B9F\u0BC8\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95\u0BBF, \u0BAA\u0BB0\u0BBF\u0BA8\u0BCD\u0BA4\u0BC1\u0BB0\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B92\u0BB0\u0BC1 \u0B95\u0BC7\u0BB3\u0BCD\u0BB5\u0BBF\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BC7\u0BB0\u0BCD\u0BA8\u0BCD\u0BA4\u0BC6\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BB5\u0BC1\u0BAE\u0BCD.",
|
|
429
433
|
start: "\u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BC8\u0BA4\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95\u0BC1",
|
|
430
434
|
notNow: "\u0B87\u0BAA\u0BCD\u0BAA\u0BCB\u0BA4\u0BC1 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BBE\u0BAE\u0BCD",
|
|
431
435
|
opensInNewTab: "(\u0BAA\u0BC1\u0BA4\u0BBF\u0BAF \u0BA4\u0BBE\u0BB5\u0BB2\u0BBF\u0BB2\u0BCD \u0BA4\u0BBF\u0BB1\u0B95\u0BCD\u0B95\u0BC1\u0BAE\u0BCD)",
|
|
@@ -449,7 +453,8 @@ var TA = {
|
|
|
449
453
|
region: "\u0B89\u0B99\u0BCD\u0B95\u0BB3\u0BCD \u0BAA\u0B95\u0BC1\u0BA4\u0BBF\u0BAF\u0BBF\u0BB2\u0BCD \u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B87\u0BA9\u0BCD\u0BA9\u0BC1\u0BAE\u0BCD \u0B95\u0BBF\u0B9F\u0BC8\u0B95\u0BCD\u0B95\u0BB5\u0BBF\u0BB2\u0BCD\u0BB2\u0BC8.",
|
|
450
454
|
locale: "\u0B87\u0BA8\u0BCD\u0BA4 \u0BAE\u0BCA\u0BB4\u0BBF\u0BAF\u0BBF\u0BB2\u0BCD \u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B87\u0BA9\u0BCD\u0BA9\u0BC1\u0BAE\u0BCD \u0B95\u0BBF\u0B9F\u0BC8\u0B95\u0BCD\u0B95\u0BB5\u0BBF\u0BB2\u0BCD\u0BB2\u0BC8.",
|
|
451
455
|
paused: "\u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B87\u0BAA\u0BCD\u0BAA\u0BCB\u0BA4\u0BC1 \u0B87\u0B9F\u0BC8\u0BA8\u0BBF\u0BB1\u0BC1\u0BA4\u0BCD\u0BA4\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BC1\u0BB3\u0BCD\u0BB3\u0BA4\u0BC1.",
|
|
452
|
-
|
|
456
|
+
// TRANSLATION REVIEW PENDING (BOFF-9797): draft.
|
|
457
|
+
notEligible: "\u0BAA\u0BB0\u0BBF\u0BA8\u0BCD\u0BA4\u0BC1\u0BB0\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B95\u0BC7\u0BB3\u0BCD\u0BB5\u0BBF\u0B95\u0BCD\u0B95\u0BBE\u0BA9 \u0BAE\u0BC1\u0BA4\u0BB2\u0BCD \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8 \u0BAE\u0B9F\u0BCD\u0B9F\u0BC1\u0BAE\u0BC7, \u0BAA\u0BA4\u0BBF\u0BA9\u0BC8\u0BA8\u0BCD\u0BA4\u0BC1 \u0BA8\u0BBF\u0BAE\u0BBF\u0B9F\u0B99\u0BCD\u0B95\u0BB3\u0BC1\u0B95\u0BCD\u0B95\u0BC1\u0BB3\u0BCD, \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0BAA\u0B9F\u0BBF\u0B95\u0BCD\u0B95\u0BC1\u0BAE\u0BCD. \u0BAA\u0BC1\u0BA4\u0BBF\u0BAF \u0B85\u0BB0\u0B9F\u0BCD\u0B9F\u0BC8\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95\u0BBF, \u0BAA\u0BB0\u0BBF\u0BA8\u0BCD\u0BA4\u0BC1\u0BB0\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B92\u0BB0\u0BC1 \u0B95\u0BC7\u0BB3\u0BCD\u0BB5\u0BBF\u0BAF\u0BC8\u0BA4\u0BCD \u0BA4\u0BC7\u0BB0\u0BCD\u0BA8\u0BCD\u0BA4\u0BC6\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BB5\u0BC1\u0BAE\u0BCD.",
|
|
453
458
|
answerClaimed: "\u0B87\u0BA8\u0BCD\u0BA4\u0BAA\u0BCD \u0BAA\u0BA4\u0BBF\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B8F\u0BB1\u0BCD\u0B95\u0BC6\u0BA9\u0BB5\u0BC7 \u0BAA\u0B9F\u0BBF\u0BA4\u0BCD\u0BA4\u0BC1\u0BB5\u0BBF\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1."
|
|
454
459
|
};
|
|
455
460
|
var STRINGS = {
|
|
@@ -649,6 +654,9 @@ var PRIVACY_HREF = "/privacy#live-avatar";
|
|
|
649
654
|
var SPEAKER_WAIT_MS = 3e4;
|
|
650
655
|
var END_GRACE_MS = 1e4;
|
|
651
656
|
var CLOCK_TOLERANCE_MS = 5e3;
|
|
657
|
+
var SERVICE_MAX_AGE_MS = 15 * 6e4;
|
|
658
|
+
var ANSWER_OFFER_MS = SERVICE_MAX_AGE_MS - 6e4;
|
|
659
|
+
var MAX_TIMER_MS = 2147483647;
|
|
652
660
|
var PRIMARY = '[data-avatar-primary], [data-boff-explore="panel-continue-chat"]';
|
|
653
661
|
var IDLE = { name: "idle" };
|
|
654
662
|
var INERT2 = { name: "inert" };
|
|
@@ -661,8 +669,19 @@ var REFUSAL_TEXT = {
|
|
|
661
669
|
not_eligible: "notEligible",
|
|
662
670
|
answer_claimed: "answerClaimed"
|
|
663
671
|
};
|
|
664
|
-
var WAITING = { answerId: null, startOver: false };
|
|
665
|
-
var START_OVER = {
|
|
672
|
+
var WAITING = { answerId: null, startOver: false, offerUntil: NaN };
|
|
673
|
+
var START_OVER = {
|
|
674
|
+
answerId: null,
|
|
675
|
+
startOver: true,
|
|
676
|
+
offerUntil: NaN
|
|
677
|
+
};
|
|
678
|
+
function createdAtOf(message) {
|
|
679
|
+
const raw = message.createdAt;
|
|
680
|
+
return typeof raw === "string" && raw !== "" ? Date.parse(raw) : NaN;
|
|
681
|
+
}
|
|
682
|
+
function offeredAt(exchange, now) {
|
|
683
|
+
return exchange.answerId !== null && !(now < exchange.offerUntil) ? START_OVER : exchange;
|
|
684
|
+
}
|
|
666
685
|
function firstExchange(messages) {
|
|
667
686
|
if (!messages || messages.length === 0) return WAITING;
|
|
668
687
|
if (messages.length > 2) return START_OVER;
|
|
@@ -676,7 +695,11 @@ function firstExchange(messages) {
|
|
|
676
695
|
if (answer.status !== "COMPLETED" || answer.content.trim() === "" || !isAvatarMessageId(answer.id)) {
|
|
677
696
|
return START_OVER;
|
|
678
697
|
}
|
|
679
|
-
return {
|
|
698
|
+
return {
|
|
699
|
+
answerId: answer.id,
|
|
700
|
+
startOver: false,
|
|
701
|
+
offerUntil: createdAtOf(answer) + ANSWER_OFFER_MS
|
|
702
|
+
};
|
|
680
703
|
}
|
|
681
704
|
function offering(offer, messageId, claimed) {
|
|
682
705
|
return claimed.has(messageId) ? { name: "refused", reason: "answer_claimed" } : { name: "consent", offer, messageId };
|
|
@@ -702,6 +725,7 @@ function AvatarLiveView({
|
|
|
702
725
|
fallback,
|
|
703
726
|
onContinueInChat,
|
|
704
727
|
continueInChat,
|
|
728
|
+
newChat,
|
|
705
729
|
off,
|
|
706
730
|
base,
|
|
707
731
|
headers,
|
|
@@ -710,13 +734,16 @@ function AvatarLiveView({
|
|
|
710
734
|
const S = avatarLiveStrings(locale);
|
|
711
735
|
const uid = useId();
|
|
712
736
|
const consentTitleId = `${uid}-consent`;
|
|
713
|
-
const
|
|
737
|
+
const exchange = firstExchange(conversation?.messages);
|
|
738
|
+
const [ageTick, setAgeTick] = useState(0);
|
|
739
|
+
const { answerId, startOver } = offeredAt(exchange, Date.now());
|
|
740
|
+
const offerUntil = answerId === null ? null : exchange.offerUntil;
|
|
714
741
|
const [phase, setPhase] = useState(IDLE);
|
|
715
742
|
const [blocked, setBlocked] = useState(false);
|
|
716
743
|
const [now, setNow] = useState(() => Date.now());
|
|
717
744
|
const phaseRef = useRef(IDLE);
|
|
718
|
-
const latest = useRef({ live, locale, base, headers,
|
|
719
|
-
latest.current = { live, locale, base, headers,
|
|
745
|
+
const latest = useRef({ live, locale, base, headers, exchange, off });
|
|
746
|
+
latest.current = { live, locale, base, headers, exchange, off };
|
|
720
747
|
const conversationRef = useRef(conversation);
|
|
721
748
|
conversationRef.current = conversation;
|
|
722
749
|
const checkRef = useRef(null);
|
|
@@ -732,6 +759,17 @@ function AvatarLiveView({
|
|
|
732
759
|
phaseRef.current = next;
|
|
733
760
|
setPhase(next);
|
|
734
761
|
}, []);
|
|
762
|
+
const offeredNow = useCallback(
|
|
763
|
+
() => offeredAt(latest.current.exchange, Date.now()).answerId,
|
|
764
|
+
[]
|
|
765
|
+
);
|
|
766
|
+
const reoffer = useCallback(
|
|
767
|
+
(offer) => {
|
|
768
|
+
const messageId = offeredNow();
|
|
769
|
+
return messageId === null ? { name: "needs-answer", offer } : offering(offer, messageId, claimedRef.current);
|
|
770
|
+
},
|
|
771
|
+
[offeredNow]
|
|
772
|
+
);
|
|
735
773
|
const finish = useCallback(
|
|
736
774
|
(how, reason) => {
|
|
737
775
|
const handle = sessionRef.current;
|
|
@@ -800,13 +838,9 @@ function AvatarLiveView({
|
|
|
800
838
|
go(INERT2);
|
|
801
839
|
return;
|
|
802
840
|
}
|
|
803
|
-
|
|
804
|
-
const messageId = latest.current.answerId;
|
|
805
|
-
go(
|
|
806
|
-
messageId === null ? { name: "needs-answer", offer } : offering(offer, messageId, claimedRef.current)
|
|
807
|
-
);
|
|
841
|
+
go(reoffer({ ...result.offer, locale: locale2, copy }));
|
|
808
842
|
});
|
|
809
|
-
}, [go]);
|
|
843
|
+
}, [go, reoffer]);
|
|
810
844
|
const begin = useCallback(
|
|
811
845
|
(session, module, offer, target) => {
|
|
812
846
|
const received = Date.now();
|
|
@@ -893,6 +927,11 @@ function AvatarLiveView({
|
|
|
893
927
|
const { live: live2, base: base2, headers: headers2 } = latest.current;
|
|
894
928
|
if (base2 === null) return;
|
|
895
929
|
const { offer, messageId } = current;
|
|
930
|
+
if (offeredNow() !== messageId) {
|
|
931
|
+
go(reoffer(offer));
|
|
932
|
+
return;
|
|
933
|
+
}
|
|
934
|
+
const refusedFrom = latest.current.exchange.offerUntil - ANSWER_OFFER_MS + SERVICE_MAX_AGE_MS;
|
|
896
935
|
const siteKey = offer.botCheck === "turnstile" ? turnstileSiteKeyOf(live2) : null;
|
|
897
936
|
if (offer.botCheck === "turnstile" && (siteKey === null || !canBindBotCheck())) {
|
|
898
937
|
go(INERT2);
|
|
@@ -943,6 +982,11 @@ function AvatarLiveView({
|
|
|
943
982
|
}
|
|
944
983
|
turnstile?.cancel();
|
|
945
984
|
if (run.cancelled !== null) return;
|
|
985
|
+
if (!(Date.now() < refusedFrom)) {
|
|
986
|
+
startRef.current = null;
|
|
987
|
+
go({ name: "needs-answer", offer });
|
|
988
|
+
return;
|
|
989
|
+
}
|
|
946
990
|
if (turnstile !== null) go({ name: "creating" });
|
|
947
991
|
const result = await requestCreate({
|
|
948
992
|
base: base2,
|
|
@@ -954,12 +998,12 @@ function AvatarLiveView({
|
|
|
954
998
|
if (startRef.current === run) startRef.current = null;
|
|
955
999
|
settle(result, run, { module: loaded, offer, messageId, base: base2, headers: headers2 });
|
|
956
1000
|
})();
|
|
957
|
-
}, [go, settle]);
|
|
1001
|
+
}, [go, offeredNow, reoffer, settle]);
|
|
958
1002
|
const stop = useCallback(() => {
|
|
959
1003
|
const current = phaseRef.current;
|
|
960
1004
|
if (current.name === "bot-check") {
|
|
961
1005
|
cancelStart("user");
|
|
962
|
-
go(
|
|
1006
|
+
go(reoffer(current.offer));
|
|
963
1007
|
return;
|
|
964
1008
|
}
|
|
965
1009
|
if (current.name === "creating") {
|
|
@@ -970,7 +1014,7 @@ function AvatarLiveView({
|
|
|
970
1014
|
if (current.name === "pending" || current.name === "live") {
|
|
971
1015
|
finish("stopped", "user");
|
|
972
1016
|
}
|
|
973
|
-
}, [cancelStart, finish, go]);
|
|
1017
|
+
}, [cancelStart, finish, go, reoffer]);
|
|
974
1018
|
const leave = useCallback(
|
|
975
1019
|
(reason) => {
|
|
976
1020
|
const current = phaseRef.current;
|
|
@@ -986,9 +1030,7 @@ function AvatarLiveView({
|
|
|
986
1030
|
}
|
|
987
1031
|
case "bot-check":
|
|
988
1032
|
cancelStart(reason);
|
|
989
|
-
go(
|
|
990
|
-
reason === "user" ? IDLE : offering(current.offer, current.messageId, claimedRef.current)
|
|
991
|
-
);
|
|
1033
|
+
go(reason === "user" ? IDLE : reoffer(current.offer));
|
|
992
1034
|
return;
|
|
993
1035
|
case "creating":
|
|
994
1036
|
cancelStart(reason);
|
|
@@ -1002,7 +1044,7 @@ function AvatarLiveView({
|
|
|
1002
1044
|
return;
|
|
1003
1045
|
}
|
|
1004
1046
|
},
|
|
1005
|
-
[cancelStart, finish, go]
|
|
1047
|
+
[cancelStart, finish, go, reoffer]
|
|
1006
1048
|
);
|
|
1007
1049
|
const showing = active && !off;
|
|
1008
1050
|
useEffect(() => {
|
|
@@ -1011,7 +1053,7 @@ function AvatarLiveView({
|
|
|
1011
1053
|
return;
|
|
1012
1054
|
}
|
|
1013
1055
|
const current = phaseRef.current;
|
|
1014
|
-
const
|
|
1056
|
+
const offered = offeredNow();
|
|
1015
1057
|
const used = offered !== null && claimedRef.current.has(offered);
|
|
1016
1058
|
if (current.name === "ended" && used) return;
|
|
1017
1059
|
if (current.name === "refused" && current.reason === "answer_claimed" && used) {
|
|
@@ -1023,7 +1065,7 @@ function AvatarLiveView({
|
|
|
1023
1065
|
current.name === "checking" && checkRef.current === null) {
|
|
1024
1066
|
check();
|
|
1025
1067
|
}
|
|
1026
|
-
}, [showing, check, leave]);
|
|
1068
|
+
}, [showing, check, leave, offeredNow]);
|
|
1027
1069
|
useEffect(() => {
|
|
1028
1070
|
if (askedLocale.current === locale) return;
|
|
1029
1071
|
askedLocale.current = locale;
|
|
@@ -1049,6 +1091,18 @@ function AvatarLiveView({
|
|
|
1049
1091
|
);
|
|
1050
1092
|
}
|
|
1051
1093
|
}, [answerId, go]);
|
|
1094
|
+
useEffect(() => {
|
|
1095
|
+
if (offerUntil === null) return;
|
|
1096
|
+
const timer = setTimeout(
|
|
1097
|
+
() => setAgeTick((tick) => tick + 1),
|
|
1098
|
+
Math.min(MAX_TIMER_MS, Math.max(0, offerUntil - Date.now()))
|
|
1099
|
+
);
|
|
1100
|
+
return () => clearTimeout(timer);
|
|
1101
|
+
}, [offerUntil, ageTick]);
|
|
1102
|
+
const startNewChat = useCallback(() => {
|
|
1103
|
+
conversationRef.current?.reset();
|
|
1104
|
+
onContinueInChat();
|
|
1105
|
+
}, [onContinueInChat]);
|
|
1052
1106
|
const onRoomEvent = useCallback(
|
|
1053
1107
|
(handle, event) => {
|
|
1054
1108
|
if (handle.done || sessionRef.current !== handle) return;
|
|
@@ -1244,6 +1298,29 @@ function AvatarLiveView({
|
|
|
1244
1298
|
children: continueInChat
|
|
1245
1299
|
}
|
|
1246
1300
|
);
|
|
1301
|
+
const startOverActions = /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-center gap-2", children: [
|
|
1302
|
+
/* @__PURE__ */ jsx(
|
|
1303
|
+
"button",
|
|
1304
|
+
{
|
|
1305
|
+
type: "button",
|
|
1306
|
+
"data-avatar-primary": "",
|
|
1307
|
+
"data-boff-explore": "avatar-live-new-chat",
|
|
1308
|
+
className: primaryButton,
|
|
1309
|
+
onClick: startNewChat,
|
|
1310
|
+
children: newChat
|
|
1311
|
+
}
|
|
1312
|
+
),
|
|
1313
|
+
/* @__PURE__ */ jsx(
|
|
1314
|
+
"button",
|
|
1315
|
+
{
|
|
1316
|
+
type: "button",
|
|
1317
|
+
"data-boff-explore": "avatar-live-continue",
|
|
1318
|
+
className: secondaryButton,
|
|
1319
|
+
onClick: onContinueInChat,
|
|
1320
|
+
children: continueInChat
|
|
1321
|
+
}
|
|
1322
|
+
)
|
|
1323
|
+
] });
|
|
1247
1324
|
const stopButton = /* @__PURE__ */ jsx(
|
|
1248
1325
|
"button",
|
|
1249
1326
|
{
|
|
@@ -1276,7 +1353,7 @@ function AvatarLiveView({
|
|
|
1276
1353
|
switch (phase.name) {
|
|
1277
1354
|
case "needs-answer":
|
|
1278
1355
|
body = /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: startOver ? S.startNewChatDetail : S.needsAnswerDetail });
|
|
1279
|
-
actions = continueButton;
|
|
1356
|
+
actions = startOver ? startOverActions : continueButton;
|
|
1280
1357
|
break;
|
|
1281
1358
|
case "consent": {
|
|
1282
1359
|
const { copy } = phase.offer;
|
|
@@ -1338,7 +1415,7 @@ function AvatarLiveView({
|
|
|
1338
1415
|
break;
|
|
1339
1416
|
}
|
|
1340
1417
|
case "refused":
|
|
1341
|
-
actions = continueButton;
|
|
1418
|
+
actions = phase.reason === "not_eligible" ? startOverActions : continueButton;
|
|
1342
1419
|
break;
|
|
1343
1420
|
case "bot-check":
|
|
1344
1421
|
case "creating":
|