privateboard 0.1.32 → 0.1.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/boot.js +438 -205
- package/dist/boot.js.map +1 -1
- package/dist/cli.js +438 -205
- package/dist/cli.js.map +1 -1
- package/dist/server.js +438 -205
- package/dist/server.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/public/adjourn-overlay.css +8 -0
- package/public/agent-profile.css +46 -0
- package/public/agent-profile.js +247 -48
- package/public/app.js +612 -702
- package/public/home.html +1 -1
- package/public/i18n.js +110 -0
- package/public/icons/search.png +0 -0
- package/public/index.html +546 -907
- package/public/room-settings.css +18 -0
- package/public/themes.css +11 -0
- package/public/voice-3d-banner.js +110 -36
- package/public/voice-3d.js +39 -3
- package/public/icons/share.png +0 -0
package/public/home.html
CHANGED
|
@@ -1622,7 +1622,7 @@
|
|
|
1622
1622
|
|
|
1623
1623
|
<div class="hero-actions">
|
|
1624
1624
|
<a href="#install" class="big-btn primary">[ ◆ Convene a Room ]</a>
|
|
1625
|
-
<a href="https://github.com/kaysaith1900/privateboard/releases/download/v0.1.
|
|
1625
|
+
<a href="https://github.com/kaysaith1900/privateboard/releases/download/v0.1.34/PrivateBoard-0.1.34-arm64.dmg"
|
|
1626
1626
|
class="big-btn secondary"
|
|
1627
1627
|
download
|
|
1628
1628
|
aria-label="Download PrivateBoard for macOS (Apple Silicon)"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"><path d="M12 3v12"/><polyline points="6 11 12 17 18 11"/><path d="M5 21h14"/></svg> Download for Mac</a>
|
package/public/i18n.js
CHANGED
|
@@ -24,6 +24,13 @@
|
|
|
24
24
|
locale_es: "Español",
|
|
25
25
|
aria_language: "Language",
|
|
26
26
|
|
|
27
|
+
// Search overlay · floating command-palette palette over the
|
|
28
|
+
// current view (sidebar Search nav, Cmd+K).
|
|
29
|
+
search_overlay_placeholder: "Search rooms and messages",
|
|
30
|
+
search_overlay_empty_title: "Search across rooms and messages",
|
|
31
|
+
search_overlay_empty_hint: "Type to filter live · click a result to jump",
|
|
32
|
+
search_overlay_close: "Close",
|
|
33
|
+
|
|
27
34
|
brand_privateboard: "PRIVATEBOARD",
|
|
28
35
|
brand_control: "CONTROL",
|
|
29
36
|
classification: "PRIVATE ACCESS",
|
|
@@ -384,6 +391,24 @@
|
|
|
384
391
|
ap_voice_modify_intensity: "intensity trim",
|
|
385
392
|
ap_voice_modify_timbre: "timbre trim",
|
|
386
393
|
ap_voice_preview_btn_title: "Preview sample",
|
|
394
|
+
/* Sample line spoken by the preview button on the Voice Setup
|
|
395
|
+
panel. Localised per active UI locale so an English-locale
|
|
396
|
+
user doesn't get a Chinese sample read back to them. Kept
|
|
397
|
+
short (under 200 chars · server caps anyway) and self-
|
|
398
|
+
describing so the voice's character lands quickly. */
|
|
399
|
+
ap_voice_preview_sample: "Hello, I'm a member of your boardroom. Looking forward to working with you.",
|
|
400
|
+
/* Voice catalogue fetch errors surfaced inside the picker · the
|
|
401
|
+
backend returns a structured `error` field with a `code` and
|
|
402
|
+
optional `fixUrl`; these keys form the human-readable banner. */
|
|
403
|
+
ap_voice_err_missing_permissions_title: "API key missing voices_read permission",
|
|
404
|
+
ap_voice_err_missing_permissions_body: "Regenerate the key with the voices_read scope enabled, then re-add it in Voice Setup.",
|
|
405
|
+
ap_voice_err_auth_failed_title: "ElevenLabs rejected the API key",
|
|
406
|
+
ap_voice_err_auth_failed_body: "Open the API key settings to verify the key is active.",
|
|
407
|
+
ap_voice_err_rate_limited_title: "ElevenLabs rate limit hit",
|
|
408
|
+
ap_voice_err_rate_limited_body: "Wait a minute and try again.",
|
|
409
|
+
ap_voice_err_fetch_failed_title: "Couldn't load voices",
|
|
410
|
+
ap_voice_err_fetch_failed_body: "Check your network or try again later.",
|
|
411
|
+
ap_voice_err_fix_cta: "Open API key settings →",
|
|
387
412
|
ap_voice_no_provider: "No voice provider configured.",
|
|
388
413
|
ap_voice_loading: "loading voices…",
|
|
389
414
|
ap_voice_fallback_voice: "voice",
|
|
@@ -528,6 +553,16 @@
|
|
|
528
553
|
reload_soft_deck: "Let {name} complete this turn, then refresh the page automatically.",
|
|
529
554
|
reload_cancel_mark: "↩ Cancel",
|
|
530
555
|
reload_cancel_deck: "Stay on the page · keep the discussion running.",
|
|
556
|
+
// Cast-edit popover · room head "Add director" button + overlay.
|
|
557
|
+
head_add_cast_tip: "Add or remove directors",
|
|
558
|
+
head_add_cast_label: "Edit cast",
|
|
559
|
+
cast_edit_title: "Select directors",
|
|
560
|
+
cast_edit_hint: "Check to add · uncheck to remove",
|
|
561
|
+
cast_edit_empty: "No directors available · create one in Agents.",
|
|
562
|
+
cast_edit_cancel: "Cancel",
|
|
563
|
+
cast_edit_confirm: "Confirm",
|
|
564
|
+
cast_edit_min_floor: "Keep at least one director.",
|
|
565
|
+
cast_edit_saving: "Saving…",
|
|
531
566
|
// Meeting recording · head button + REC pill + exit modal.
|
|
532
567
|
head_record_tip: "Record meeting",
|
|
533
568
|
head_record_label: "Record meeting",
|
|
@@ -1268,6 +1303,11 @@ When the room ___, raise an objection.`,
|
|
|
1268
1303
|
locale_es: "Español",
|
|
1269
1304
|
aria_language: "语言",
|
|
1270
1305
|
|
|
1306
|
+
search_overlay_placeholder: "搜索房间和消息",
|
|
1307
|
+
search_overlay_empty_title: "跨房间搜索消息",
|
|
1308
|
+
search_overlay_empty_hint: "输入关键词实时过滤 · 点击结果直接跳转",
|
|
1309
|
+
search_overlay_close: "关闭",
|
|
1310
|
+
|
|
1271
1311
|
brand_privateboard: "PRIVATEBOARD",
|
|
1272
1312
|
brand_control: "控制台",
|
|
1273
1313
|
classification: "私有访问",
|
|
@@ -1608,6 +1648,16 @@ When the room ___, raise an objection.`,
|
|
|
1608
1648
|
ap_voice_modify_intensity: "力度",
|
|
1609
1649
|
ap_voice_modify_timbre: "音色",
|
|
1610
1650
|
ap_voice_preview_btn_title: "试听",
|
|
1651
|
+
ap_voice_preview_sample: "你好,我是你的董事会成员,很高兴为你服务。",
|
|
1652
|
+
ap_voice_err_missing_permissions_title: "API key 缺少 voices_read 权限",
|
|
1653
|
+
ap_voice_err_missing_permissions_body: "重新生成 API key 时勾选 voices_read scope,然后在 Voice Setup 重新粘贴。",
|
|
1654
|
+
ap_voice_err_auth_failed_title: "ElevenLabs 拒绝了这个 API key",
|
|
1655
|
+
ap_voice_err_auth_failed_body: "去 API key 设置页确认这把 key 还有效。",
|
|
1656
|
+
ap_voice_err_rate_limited_title: "ElevenLabs 触发限流",
|
|
1657
|
+
ap_voice_err_rate_limited_body: "等一分钟再试。",
|
|
1658
|
+
ap_voice_err_fetch_failed_title: "音色加载失败",
|
|
1659
|
+
ap_voice_err_fetch_failed_body: "检查网络后再试。",
|
|
1660
|
+
ap_voice_err_fix_cta: "打开 API key 设置 →",
|
|
1611
1661
|
ap_voice_no_provider: "尚未配置可用的语音提供商。",
|
|
1612
1662
|
ap_voice_loading: "加载音色中…",
|
|
1613
1663
|
ap_voice_fallback_voice: "语音",
|
|
@@ -1749,6 +1799,16 @@ When the room ___, raise an objection.`,
|
|
|
1749
1799
|
reload_soft_deck: "让 {name} 说完这轮,然后自动刷新页面。",
|
|
1750
1800
|
reload_cancel_mark: "↩ 取消",
|
|
1751
1801
|
reload_cancel_deck: "留在页面,讨论继续。",
|
|
1802
|
+
// 阵容编辑 · 房间头部"添加董事"按钮 + 弹窗
|
|
1803
|
+
head_add_cast_tip: "添加或移除董事",
|
|
1804
|
+
head_add_cast_label: "编辑阵容",
|
|
1805
|
+
cast_edit_title: "选择董事",
|
|
1806
|
+
cast_edit_hint: "勾选添加 · 取消勾选移除",
|
|
1807
|
+
cast_edit_empty: "暂无可选董事 · 请先在 Agents 中创建。",
|
|
1808
|
+
cast_edit_cancel: "取消",
|
|
1809
|
+
cast_edit_confirm: "确认",
|
|
1810
|
+
cast_edit_min_floor: "请至少保留一位董事。",
|
|
1811
|
+
cast_edit_saving: "保存中…",
|
|
1752
1812
|
// 会议录制 · header 按钮 + REC 提示牌 + 退出弹窗
|
|
1753
1813
|
head_record_tip: "录制会议",
|
|
1754
1814
|
head_record_label: "录制会议",
|
|
@@ -2438,6 +2498,11 @@ When the room ___, raise an objection.`,
|
|
|
2438
2498
|
locale_es: "Español",
|
|
2439
2499
|
aria_language: "言語",
|
|
2440
2500
|
|
|
2501
|
+
search_overlay_placeholder: "ルームとメッセージを検索",
|
|
2502
|
+
search_overlay_empty_title: "ルームを横断して検索",
|
|
2503
|
+
search_overlay_empty_hint: "入力すると即時フィルタ · 結果をクリックで移動",
|
|
2504
|
+
search_overlay_close: "閉じる",
|
|
2505
|
+
|
|
2441
2506
|
brand_privateboard: "PRIVATEBOARD",
|
|
2442
2507
|
brand_control: "コントロール",
|
|
2443
2508
|
classification: "プライベートアクセス",
|
|
@@ -2756,6 +2821,16 @@ When the room ___, raise an objection.`,
|
|
|
2756
2821
|
ap_voice_modify_intensity: "強度調整",
|
|
2757
2822
|
ap_voice_modify_timbre: "音色調整",
|
|
2758
2823
|
ap_voice_preview_btn_title: "サンプル再生",
|
|
2824
|
+
ap_voice_preview_sample: "こんにちは。あなたのボードのメンバーです。どうぞよろしくお願いします。",
|
|
2825
|
+
ap_voice_err_missing_permissions_title: "API キーに voices_read 権限がありません",
|
|
2826
|
+
ap_voice_err_missing_permissions_body: "voices_read スコープを有効にして API キーを作り直し、Voice Setup に貼り直してください。",
|
|
2827
|
+
ap_voice_err_auth_failed_title: "ElevenLabs に API キーが拒否されました",
|
|
2828
|
+
ap_voice_err_auth_failed_body: "API キー設定で有効性を確認してください。",
|
|
2829
|
+
ap_voice_err_rate_limited_title: "ElevenLabs のレート制限に達しました",
|
|
2830
|
+
ap_voice_err_rate_limited_body: "少し待ってから再試行してください。",
|
|
2831
|
+
ap_voice_err_fetch_failed_title: "音声の読み込みに失敗",
|
|
2832
|
+
ap_voice_err_fetch_failed_body: "ネットワークを確認してから再試行してください。",
|
|
2833
|
+
ap_voice_err_fix_cta: "API キー設定を開く →",
|
|
2759
2834
|
ap_voice_no_provider: "音声プロバイダが未設定です。",
|
|
2760
2835
|
ap_voice_loading: "音声を読み込み中…",
|
|
2761
2836
|
ap_voice_fallback_voice: "音声",
|
|
@@ -2896,6 +2971,16 @@ When the room ___, raise an objection.`,
|
|
|
2896
2971
|
reload_soft_deck: "{name} にこのターンを終えさせてから自動で再読込。",
|
|
2897
2972
|
reload_cancel_mark: "↩ キャンセル",
|
|
2898
2973
|
reload_cancel_deck: "ページに留まる · 議論を続行。",
|
|
2974
|
+
// キャスト編集 · ルームヘッダーの「ディレクター追加」ボタン + オーバーレイ
|
|
2975
|
+
head_add_cast_tip: "ディレクターを追加または削除",
|
|
2976
|
+
head_add_cast_label: "キャストを編集",
|
|
2977
|
+
cast_edit_title: "ディレクターを選択",
|
|
2978
|
+
cast_edit_hint: "チェックで追加 · 外すと削除",
|
|
2979
|
+
cast_edit_empty: "選択可能なディレクターがいません · Agents で作成してください。",
|
|
2980
|
+
cast_edit_cancel: "キャンセル",
|
|
2981
|
+
cast_edit_confirm: "確認",
|
|
2982
|
+
cast_edit_min_floor: "少なくとも 1 人のディレクターを残してください。",
|
|
2983
|
+
cast_edit_saving: "保存中…",
|
|
2899
2984
|
// ミーティング録画 · ヘッダーボタン + REC バッジ + 退出ダイアログ
|
|
2900
2985
|
head_record_tip: "ミーティングを録画",
|
|
2901
2986
|
head_record_label: "ミーティングを録画",
|
|
@@ -3352,6 +3437,11 @@ When the room ___, raise an objection.`,
|
|
|
3352
3437
|
locale_es: "Español",
|
|
3353
3438
|
aria_language: "Idioma",
|
|
3354
3439
|
|
|
3440
|
+
search_overlay_placeholder: "Buscar salas y mensajes",
|
|
3441
|
+
search_overlay_empty_title: "Buscar entre salas y mensajes",
|
|
3442
|
+
search_overlay_empty_hint: "Escribe para filtrar al instante · clic para saltar",
|
|
3443
|
+
search_overlay_close: "Cerrar",
|
|
3444
|
+
|
|
3355
3445
|
brand_privateboard: "PRIVATEBOARD",
|
|
3356
3446
|
brand_control: "CONTROL",
|
|
3357
3447
|
classification: "ACCESO PRIVADO",
|
|
@@ -3664,6 +3754,16 @@ When the room ___, raise an objection.`,
|
|
|
3664
3754
|
ap_voice_modify_intensity: "ajuste de intensidad",
|
|
3665
3755
|
ap_voice_modify_timbre: "ajuste de timbre",
|
|
3666
3756
|
ap_voice_preview_btn_title: "Vista previa",
|
|
3757
|
+
ap_voice_preview_sample: "Hola, soy miembro de tu consejo. Será un placer trabajar contigo.",
|
|
3758
|
+
ap_voice_err_missing_permissions_title: "La API key no tiene permiso voices_read",
|
|
3759
|
+
ap_voice_err_missing_permissions_body: "Regenera la API key con el scope voices_read activado y vuelve a pegarla en Voice Setup.",
|
|
3760
|
+
ap_voice_err_auth_failed_title: "ElevenLabs rechazó la API key",
|
|
3761
|
+
ap_voice_err_auth_failed_body: "Abre la configuración de API keys para verificar la clave.",
|
|
3762
|
+
ap_voice_err_rate_limited_title: "Límite de tasa de ElevenLabs alcanzado",
|
|
3763
|
+
ap_voice_err_rate_limited_body: "Espera un minuto e inténtalo de nuevo.",
|
|
3764
|
+
ap_voice_err_fetch_failed_title: "No se pudieron cargar las voces",
|
|
3765
|
+
ap_voice_err_fetch_failed_body: "Comprueba la red e inténtalo de nuevo.",
|
|
3766
|
+
ap_voice_err_fix_cta: "Abrir configuración de API keys →",
|
|
3667
3767
|
ap_voice_no_provider: "No hay proveedor de voz configurado.",
|
|
3668
3768
|
ap_voice_loading: "cargando voces…",
|
|
3669
3769
|
ap_voice_fallback_voice: "voz",
|
|
@@ -3803,6 +3903,16 @@ When the room ___, raise an objection.`,
|
|
|
3803
3903
|
reload_soft_deck: "Deja que {name} complete este turno, luego recarga la página automáticamente.",
|
|
3804
3904
|
reload_cancel_mark: "↩ Cancelar",
|
|
3805
3905
|
reload_cancel_deck: "Mantente en la página · la discusión continúa.",
|
|
3906
|
+
// Edición del elenco · botón "Añadir director" en la cabecera + popover
|
|
3907
|
+
head_add_cast_tip: "Añadir o quitar directores",
|
|
3908
|
+
head_add_cast_label: "Editar elenco",
|
|
3909
|
+
cast_edit_title: "Selecciona directores",
|
|
3910
|
+
cast_edit_hint: "Marca para añadir · desmarca para quitar",
|
|
3911
|
+
cast_edit_empty: "No hay directores disponibles · crea uno en Agents.",
|
|
3912
|
+
cast_edit_cancel: "Cancelar",
|
|
3913
|
+
cast_edit_confirm: "Confirmar",
|
|
3914
|
+
cast_edit_min_floor: "Mantén al menos un director.",
|
|
3915
|
+
cast_edit_saving: "Guardando…",
|
|
3806
3916
|
// Grabación de reunión · botón en cabecera + chip REC + modal de salida
|
|
3807
3917
|
head_record_tip: "Grabar reunión",
|
|
3808
3918
|
head_record_label: "Grabar reunión",
|
|
Binary file
|