remote-webview-debugger 0.2.0 → 0.2.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.
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale ar */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale ar */
2
2
  (function(){let e={id:`ar`,name:`العربية`,dir:`rtl`,ui:{levels:{observe:`العرض فقط`,interact:`العرض والتفاعل`,advanced:`متقدّم (تشغيل السكربتات وقراءة التخزين)`},attachLevels:{observe:`العرض فقط`,interact:`العرض والتفاعل`,advanced:`متقدّم (يضيف تشغيل السكربتات وقراءة التخزين)`},state:{none:`خامل: لا يوجد ذكاء اصطناعي مرتبط`,observe:`الذكاء الاصطناعي يعرض هذه الصفحة`,agent:`الذكاء الاصطناعي يتحكم، وإدخالك متوقف مؤقتًا`,user:`تولّيت التحكم، والذكاء الاصطناعي متوقف مؤقتًا`},link:{connecting:`جارٍ الاتصال`,online:`متصل`,offline:`غير متصل`},connecting:`جارٍ الاتصال…`,helpPending:`قيد المساعدة`,copy:`نسخ`,copied:`تم النسخ`,noteHelp:`تم طلب المساعدة. سيعثر عليك المطوّر من خلال رمز الجهاز هذا.`,noteAuto:`السماح التلقائي مفعّل: يرتبط الذكاء الاصطناعي دون سؤال، ويمكنك تولّي التحكم أو الإنهاء في أي وقت.`,noteShare:`يُرجى مشاركة رمز الجهاز هذا مع المطوّر. يطلب الذكاء الاصطناعي الإذن قبل الربط، ويمكنك تولّي التحكم أو الإنهاء في أي وقت.`,help:`طلب المساعدة`,cancelHelp:`إلغاء الطلب`,collapse:`إخفاء`,deviceCode:`رمز الجهاز`,barViewing:`المساعد يشاهد`,barAgent:`المساعد يعمل`,barUser:`أنت تتحكم`,connectedFor:e=>`متصل · ${e}`,takeover:`تولّي التحكم`,handback:`إعادة التحكم`,end:`إنهاء`,autoTitle:`السماح التلقائي للذكاء الاصطناعي`,autoOn:e=>`يرتبط دون سؤال · ${e}`,autoOff:`السؤال في كل مرة يطلب فيها الذكاء الاصطناعي الربط`,lockTitle:`قفل الشاشة أثناء ربط الذكاء الاصطناعي`,lockOn:`تُحظر نقراتك وتمريراتك ما دام الذكاء الاصطناعي مرتبطًا`,lockOff:`يظل بإمكانك النقر والتمرير، مع تجنّب اعتراض عمل الذكاء الاصطناعي`,lockedToast:`ستُقفل الشاشة أثناء ربط الذكاء الاصطناعي`,unlockedToast:`لن تُقفل الشاشة أثناء ربط الذكاء الاصطناعي`,autoOffToast:`أُوقف السماح التلقائي. سيطلب الذكاء الاصطناعي الإذن قبل الربط`,autoDialogTitle:`تفعيل السماح التلقائي؟`,autoDialogText:`عندما يطلب الذكاء الاصطناعي الربط بهذا الجهاز، يرتبط فورًا بمستوى الوصول المحدد أدناه. سيظهر إشعار في كل مرة، ويمكنك تولّي التحكم أو الإنهاء في أي وقت، وإيقاف هذا الخيار من هنا.`,turnOn:`تفعيل`,cancel:`إلغاء`,autoOnToast:e=>`السماح التلقائي مفعّل · ${e}`,countdown:e=>`رفض تلقائي خلال ${e} ث`,agentName:`مساعد الذكاء الاصطناعي`,autoAllowedToast:(e,t)=>`سُمح تلقائيًا لـ«${e}» · ${t}`,attachTitle:`الذكاء الاصطناعي يطلب الربط`,attachText:e=>`يطلب «${e}» عرض هذه الصفحة. السماح بذلك؟`,confirmTitle:`يُرجى التأكيد`,confirmText:e=>`يريد الذكاء الاصطناعي ${e}. السماح بذلك؟`,allow:`سماح`,deny:`رفض`},action:{quote:e=>`«${e}»`,click:e=>`النقر على ${e}`,enterActivate:e=>`الضغط على Enter في ${e}`,enterSubmit:e=>`الضغط على Enter لإرسال ${e}`},agent:{missingParam:e=>`معامل مفقود: ${e}`,notString:e=>`يجب أن يكون المعامل ${e} سلسلة نصية`,unknownMethod:e=>`طريقة غير معروفة: ${e}`,needLevel:e=>`يتطلب المستوى ${e}`,takenOver:`تولّى المستخدم التحكم؛ انتظر حتى يعيده`,userDenied:`رفض المستخدم هذا الإجراء`,confirmBusy:`ما زال المستخدم لم يؤكد الإجراء السابق بعد`,unknownModifier:e=>`مفتاح تعديل غير معروف: ${e}`,unknownKey:e=>`مفتاح غير معروف: ${e}`,refNotInSnapshot:e=>`ref=${e} غير موجود في أحدث لقطة؛ خذ لقطة جديدة`,refDetached:e=>`العنصر المقابل لـ ref=${e} لم يعد موجودًا في الصفحة؛ خذ لقطة جديدة`,queryNeedsCriteria:`يلزم واحد على الأقل من text أو role أو name`,noSuchRecord:e=>`لا يوجد سجل seq=${e} في سجل الجلسة (ربما حُذف)`,noSuchSession:e=>`لا يوجد سجل الجلسة ${e} على هذا الجهاز (تُحفظ آخر 3 عمليات تشغيل فقط)`,noSessionLog:`لا يوجد سجل جلسة على هذا الجهاز بعد (ربما أوقف المشروع التسجيل، أو مرّرت الصفحة run({ record: false }))`,sessionLogUnavailable:`IndexedDB غير متاح في هذه الصفحة: لا يوجد سجل جلسة`,readOnly:e=>`${e} للقراءة فقط`,isSelect:e=>`${e} قائمة منسدلة؛ استخدم rwd.select`,notFillable:e=>`${e} ليس حقل نص ولا يمكن ملؤه`,notSelect:e=>`${e} ليس قائمة منسدلة (select)؛ استخدم click`,singleSelect:`تسمح هذه القائمة المنسدلة بخيار واحد فقط`,noSuchOption:(e,t)=>`لا يوجد في القائمة المنسدلة الخيار «${e}»؛ الخيارات المتاحة: ${t.join(`، `)}`,optionDisabled:e=>`الخيار «${e}» معطّل`,badUrl:e=>`عنوان URL غير صالح: ${e}`,httpOnly:`لا يمكن فتح إلا عناوين http(s)`,textAppearTimeout:e=>`انتهت المهلة في انتظار ظهور النص «${e}»`,textGoneTimeout:e=>`انتهت المهلة في انتظار اختفاء النص «${e}»`,badFunction:e=>`تعذّر تحليل function: ${e}`,notAFunction:`يجب أن تكون function تعبير دالة، مثل "() => document.title"`,elementDetached:e=>`العنصر ${e} لم يعد موجودًا في الصفحة؛ خذ لقطة جديدة`,notActionable:(e,t)=>`لا يمكن التعامل مع العنصر ${e}: ${t}`,notVisible:e=>`العنصر ${e} غير مرئي`,reasonMoving:`موضعه يتغير باستمرار (ربما يتحرك في رسم متحرك)`,reasonOffscreen:`يقع خارج منطقة العرض`,reasonObscured:(e,t)=>`نقطة النقر مغطاة بـ ${e} (ref=${t}؛ انقر عليه مباشرة، مثل خلفية نافذة منبثقة لإغلاقها)`,overlayHeader:`[طبقات علوية] هذه العناصر فوق محتوى الصفحة. عندما تُحجب نقرة، انقر عليها مباشرة (مثل الخلفية لإغلاق نافذة منبثقة):`,overlayMask:(e,t,n)=>`- خلفية ${e}، تغطي ${t}% من منطقة العرض [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- طبقة ${e}${t?` «${t}»`:``}، تغطي ${n}% من منطقة العرض [ref=${r}]`,reasonHidden:`غير مرئي`,reasonDisabled:`معطّل`,storageUnavailable:e=>`${e}Storage غير متاح`,badStorageArea:`يجب أن يكون المعامل area إحدى القيم 'local' أو 'session' أو 'cookie'`,requestFailed:`فشل الطلب`,noSuchRequest:e=>`لا يوجد طلب id=${e} (ربما أُسقط)`,netFailed:(e,t)=>`${e} → فشل (${t})`,wsFailed:e=>`WebSocket ${e} → فشل`,tapped:(e,t)=>`نقرة على ${e} «${t}»`,tappedTag:(e,t)=>`نقرة على ${e} ${t}`,roles:{button:`زر`,link:`رابط`,textbox:`حقل نص`,searchbox:`حقل بحث`,checkbox:`مربع اختيار`,radio:`زر اختيار`,switch:`مفتاح تبديل`,combobox:`قائمة منسدلة`,listbox:`قائمة`,option:`خيار`,tab:`علامة تبويب`,menuitem:`عنصر قائمة`,img:`صورة`,heading:`عنوان`,cell:`خلية`,row:`صف`,listitem:`عنصر قائمة`},element:`عنصر`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/ar.ts
3
3
  var e = {
4
4
  id: "ar",
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale de */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale de */
2
2
  (function(){let e={id:`de`,name:`Deutsch`,dir:`ltr`,ui:{levels:{observe:`Nur ansehen`,interact:`Ansehen und bedienen`,advanced:`Erweitert (Skripte ausführen, Speicher lesen)`},attachLevels:{observe:`Nur ansehen`,interact:`Ansehen und bedienen`,advanced:`Erweitert (zusätzlich Skripte ausführen, Speicher lesen)`},state:{none:`Inaktiv: keine KI verbunden`,observe:`KI sieht sich diese Seite an`,agent:`KI steuert, Ihre Eingaben sind pausiert`,user:`Sie haben übernommen, KI pausiert`},link:{connecting:`Verbindet`,online:`Online`,offline:`Offline`},connecting:`Verbindet…`,helpPending:`In Betreuung`,copy:`Kopieren`,copied:`Kopiert`,noteHelp:`Unterstützung angefordert. Das Entwicklerteam findet Sie über diesen Gerätecode.`,noteAuto:`Automatisch zulassen ist an: Die KI verbindet sich ohne Rückfrage. Sie können jederzeit übernehmen oder beenden.`,noteShare:`Geben Sie diesen Gerätecode an das Entwicklerteam weiter. Die KI fragt, bevor sie sich verbindet, und Sie können jederzeit übernehmen oder beenden.`,help:`Unterstützung anfordern`,cancelHelp:`Anfrage abbrechen`,collapse:`Ausblenden`,deviceCode:`Gerätecode`,barViewing:`KI sieht zu`,barAgent:`KI arbeitet`,barUser:`Sie steuern`,connectedFor:e=>`Verbunden · ${e}`,takeover:`Übernehmen`,handback:`Zurückgeben`,end:`Beenden`,autoTitle:`KI automatisch zulassen`,autoOn:e=>`Ohne Rückfrage · ${e}`,autoOff:`Jedes Mal fragen, bevor sich die KI verbindet`,lockTitle:`Bildschirm sperren, solange die KI verbunden ist`,lockOn:`Tippen und Wischen ist blockiert, solange die KI verbunden ist`,lockOff:`Sie können weiter tippen und scrollen – kommen Sie der KI möglichst nicht in die Quere`,lockedToast:`Bildschirm wird gesperrt, solange die KI verbunden ist`,unlockedToast:`Bildschirm wird nicht gesperrt, solange die KI verbunden ist`,autoOffToast:`Automatisch zulassen ist aus. Die KI fragt vorher`,autoDialogTitle:`Automatisch zulassen aktivieren?`,autoDialogText:`Wenn sich die KI mit diesem Gerät verbinden möchte, verbindet sie sich sofort mit dem unten gewählten Zugriff. Sie sehen jedes Mal einen Hinweis, können jederzeit übernehmen oder beenden und diese Einstellung hier wieder ausschalten.`,turnOn:`Aktivieren`,cancel:`Abbrechen`,autoOnToast:e=>`Automatisch zulassen an · ${e}`,countdown:e=>`Wird in ${e} s abgelehnt`,agentName:`KI-Assistent`,autoAllowedToast:(e,t)=>`„${e}“ automatisch zugelassen · ${t}`,attachTitle:`KI bittet um Zugriff`,attachText:e=>`„${e}“ möchte diese Seite ansehen. Zulassen?`,confirmTitle:`Bitte bestätigen`,confirmText:e=>`Die KI möchte ${e}. Zulassen?`,allow:`Zulassen`,deny:`Ablehnen`},action:{quote:e=>`„${e}“`,click:e=>`${e} antippen`,enterActivate:e=>`bei ${e} Enter drücken`,enterSubmit:e=>`${e} mit Enter absenden`},agent:{missingParam:e=>`Fehlender Parameter: ${e}`,notString:e=>`Parameter ${e} muss ein String sein`,unknownMethod:e=>`Unbekannte Methode: ${e}`,needLevel:e=>`Erfordert die Zugriffsstufe ${e}`,takenOver:`Der Nutzer hat übernommen; warten Sie, bis er die Steuerung zurückgibt`,userDenied:`Der Nutzer hat diese Aktion abgelehnt`,confirmBusy:`Der Nutzer hat die vorherige Aktion noch nicht bestätigt`,unknownModifier:e=>`Unbekannte Modifikatortaste: ${e}`,unknownKey:e=>`Unbekannte Taste: ${e}`,refNotInSnapshot:e=>`ref=${e} ist nicht im letzten Snapshot; erstellen Sie einen neuen Snapshot`,refDetached:e=>`Das Element zu ref=${e} ist nicht mehr auf der Seite; erstellen Sie einen neuen Snapshot`,queryNeedsCriteria:`Mindestens eines von text, role oder name ist erforderlich`,noSuchRecord:e=>`Kein Eintrag seq=${e} im Sitzungsprotokoll (er wurde möglicherweise bereinigt)`,noSuchSession:e=>`Kein Sitzungsprotokoll ${e} auf diesem Gerät (nur die letzten 3 Starts werden aufbewahrt)`,noSessionLog:`Noch kein Sitzungsprotokoll auf diesem Gerät (das Projekt hat die Aufzeichnung eventuell deaktiviert, oder die Seite hat run({ record: false }) übergeben)`,sessionLogUnavailable:`IndexedDB ist auf dieser Seite nicht verfügbar: kein Sitzungsprotokoll`,readOnly:e=>`${e} ist schreibgeschützt`,isSelect:e=>`${e} ist ein Dropdown; verwenden Sie rwd.select`,notFillable:e=>`${e} ist kein Textfeld und kann nicht ausgefüllt werden`,notSelect:e=>`${e} ist kein Dropdown (select); verwenden Sie click`,singleSelect:`Dieses Dropdown erlaubt nur eine Option`,noSuchOption:(e,t)=>`Das Dropdown hat keine Option „${e}“; verfügbar: ${t.join(`, `)}`,optionDisabled:e=>`Die Option „${e}“ ist deaktiviert`,badUrl:e=>`Ungültige URL: ${e}`,httpOnly:`Nur http(s)-URLs können geöffnet werden`,textAppearTimeout:e=>`Zeitüberschreitung beim Warten darauf, dass der Text „${e}“ erscheint`,textGoneTimeout:e=>`Zeitüberschreitung beim Warten darauf, dass der Text „${e}“ verschwindet`,badFunction:e=>`function kann nicht geparst werden: ${e}`,notAFunction:`function muss ein Funktionsausdruck sein, z. B. "() => document.title"`,elementDetached:e=>`Element ${e} ist nicht mehr auf der Seite; erstellen Sie einen neuen Snapshot`,notActionable:(e,t)=>`Element ${e} kann nicht bedient werden: ${t}`,notVisible:e=>`Element ${e} ist nicht sichtbar`,reasonMoving:`seine Position ändert sich ständig (möglicherweise eine Animation)`,reasonOffscreen:`es liegt außerhalb des Viewports`,reasonObscured:(e,t)=>`der Klickpunkt ist von ${e} verdeckt (ref=${t}; klicken Sie es direkt an, z. B. den Hintergrund eines Popups, um das Popup zu schließen)`,overlayHeader:`[Overlays] Diese Elemente liegen über dem Seiteninhalt. Wenn ein Klick blockiert wird, klicken Sie direkt auf sie (z. B. auf den Hintergrund, um ein Popup zu schließen):`,overlayMask:(e,t,n)=>`- Hintergrund ${e}, bedeckt ${t} % des Viewports [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- Ebene ${e}${t?` „${t}“`:``}, bedeckt ${n} % des Viewports [ref=${r}]`,reasonHidden:`es ist nicht sichtbar`,reasonDisabled:`es ist deaktiviert`,storageUnavailable:e=>`${e}Storage ist nicht verfügbar`,badStorageArea:`Parameter area muss 'local', 'session' oder 'cookie' sein`,requestFailed:`Anfrage fehlgeschlagen`,noSuchRequest:e=>`Keine Anfrage mit id=${e} (sie wurde möglicherweise verworfen)`,netFailed:(e,t)=>`${e} → fehlgeschlagen (${t})`,wsFailed:e=>`WebSocket ${e} → fehlgeschlagen`,tapped:(e,t)=>`${e} „${t}“ angetippt`,tappedTag:(e,t)=>`${e} ${t} angetippt`,roles:{button:`Schaltfläche`,link:`Link`,textbox:`Textfeld`,searchbox:`Suchfeld`,checkbox:`Kontrollkästchen`,radio:`Optionsfeld`,switch:`Schalter`,combobox:`Dropdown`,listbox:`Liste`,option:`Option`,tab:`Tab`,menuitem:`Menüeintrag`,img:`Bild`,heading:`Überschrift`,cell:`Zelle`,row:`Zeile`,listitem:`Listeneintrag`},element:`Element`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/de.ts
3
3
  var e = {
4
4
  id: "de",
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale es */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale es */
2
2
  (function(){let e={id:`es`,name:`Español`,dir:`ltr`,ui:{levels:{observe:`Solo ver`,interact:`Ver e interactuar`,advanced:`Avanzado (ejecutar scripts, leer almacenamiento)`},attachLevels:{observe:`Solo ver`,interact:`Ver e interactuar`,advanced:`Avanzado (además, ejecutar scripts y leer almacenamiento)`},state:{none:`Inactivo: no hay ninguna IA conectada`,observe:`La IA está viendo esta página`,agent:`La IA tiene el control; tu interacción está en pausa`,user:`Tomaste el control; la IA está en pausa`},link:{connecting:`Conectando`,online:`En línea`,offline:`Sin conexión`},connecting:`Conectando…`,helpPending:`En asistencia`,copy:`Copiar`,copied:`Copiado`,noteHelp:`Asistencia solicitada. El equipo de desarrollo te encontrará con este código de dispositivo.`,noteAuto:`“Permitir automáticamente” está activado: la IA se conecta sin preguntar. Puedes tomar el control o finalizar en cualquier momento.`,noteShare:`Comparte este código de dispositivo con el equipo de desarrollo. La IA te pedirá permiso antes de conectarse, y puedes tomar el control o finalizar en cualquier momento.`,help:`Solicitar asistencia`,cancelHelp:`Cancelar solicitud`,collapse:`Ocultar`,deviceCode:`Código de dispositivo`,barViewing:`IA mirando`,barAgent:`IA operando`,barUser:`Tu turno`,connectedFor:e=>`Conectado · ${e}`,takeover:`Tomar control`,handback:`Devolver`,end:`Finalizar`,autoTitle:`Permitir IA automáticamente`,autoOn:e=>`Se conecta sin preguntar · ${e}`,autoOff:`Preguntarme cada vez que la IA quiera conectarse`,lockTitle:`Bloquear la pantalla mientras la IA esté conectada`,lockOn:`Tus toques y deslizamientos se bloquean mientras la IA está conectada`,lockOff:`Puedes seguir tocando y desplazándote; intenta no interferir con la IA`,lockedToast:`La pantalla se bloqueará mientras la IA esté conectada`,unlockedToast:`La pantalla no se bloqueará mientras la IA esté conectada`,autoOffToast:`“Permitir automáticamente” desactivado. La IA preguntará antes de conectarse`,autoDialogTitle:`¿Activar “Permitir automáticamente”?`,autoDialogText:`Cuando la IA pida conectarse a este dispositivo, se conectará al instante con el nivel de acceso que elijas abajo. Verás un aviso cada vez, podrás tomar el control o finalizar en cualquier momento y desactivar esto aquí.`,turnOn:`Activar`,cancel:`Cancelar`,autoOnToast:e=>`“Permitir automáticamente” activado · ${e}`,countdown:e=>`Se denegará en ${e} s`,agentName:`Asistente de IA`,autoAllowedToast:(e,t)=>`“${e}” se conectó automáticamente · ${t}`,attachTitle:`La IA quiere conectarse`,attachText:e=>`“${e}” quiere ver esta página. ¿Lo permites?`,confirmTitle:`Confirma, por favor`,confirmText:e=>`La IA quiere ${e}. ¿Lo permites?`,allow:`Permitir`,deny:`Denegar`},action:{quote:e=>`“${e}”`,click:e=>`tocar ${e}`,enterActivate:e=>`pulsar Enter en ${e}`,enterSubmit:e=>`pulsar Enter para enviar ${e}`},agent:{missingParam:e=>`Falta el parámetro: ${e}`,notString:e=>`El parámetro ${e} debe ser una cadena`,unknownMethod:e=>`Método desconocido: ${e}`,needLevel:e=>`Requiere el nivel ${e}`,takenOver:`El usuario tomó el control; espera a que lo devuelva`,userDenied:`El usuario denegó esta acción`,confirmBusy:`Todavía se espera que el usuario confirme la acción anterior`,unknownModifier:e=>`Tecla modificadora desconocida: ${e}`,unknownKey:e=>`Tecla desconocida: ${e}`,refNotInSnapshot:e=>`ref=${e} no está en la última instantánea; toma una nueva instantánea`,refDetached:e=>`El elemento de ref=${e} ya no está en la página; toma una nueva instantánea`,queryNeedsCriteria:`Se requiere al menos uno de text, role o name`,noSuchRecord:e=>`No hay ningún registro seq=${e} en el registro de sesión (puede que se haya eliminado)`,noSuchSession:e=>`No hay registro de sesión ${e} en este dispositivo (solo se conservan los 3 últimos inicios)`,noSessionLog:`Este dispositivo aún no tiene registro de sesión (puede que el proyecto haya desactivado la grabación o que la página haya pasado run({ record: false }))`,sessionLogUnavailable:`IndexedDB no está disponible en esta página: no hay registro de sesión`,readOnly:e=>`${e} es de solo lectura`,isSelect:e=>`${e} es una lista desplegable; usa rwd.select`,notFillable:e=>`${e} no es un campo de texto y no se puede rellenar`,notSelect:e=>`${e} no es una lista desplegable (select); usa click`,singleSelect:`Esta lista desplegable solo admite una opción`,noSuchOption:(e,t)=>`La lista desplegable no tiene la opción “${e}”; disponibles: ${t.join(`, `)}`,optionDisabled:e=>`La opción “${e}” está deshabilitada`,badUrl:e=>`URL no válida: ${e}`,httpOnly:`Solo se pueden abrir URL http(s)`,textAppearTimeout:e=>`Se agotó el tiempo de espera para que apareciera el texto “${e}”`,textGoneTimeout:e=>`Se agotó el tiempo de espera para que desapareciera el texto “${e}”`,badFunction:e=>`No se puede analizar function: ${e}`,notAFunction:`function debe ser una expresión de función, p. ej. "() => document.title"`,elementDetached:e=>`El elemento ${e} ya no está en la página; toma una nueva instantánea`,notActionable:(e,t)=>`No se puede operar sobre el elemento ${e}: ${t}`,notVisible:e=>`El elemento ${e} no es visible`,reasonMoving:`su posición sigue cambiando (puede que esté en una animación)`,reasonOffscreen:`está fuera del área visible`,reasonObscured:(e,t)=>`el punto de clic está cubierto por ${e} (ref=${t}; haz clic en él directamente, p. ej. en el fondo de una ventana emergente para cerrarla)`,overlayHeader:`[Capas superpuestas] Estos elementos están encima de la página. Si un clic queda bloqueado, haz clic en ellos directamente (p. ej. en el fondo para cerrar una ventana emergente):`,overlayMask:(e,t,n)=>`- fondo ${e}, cubre el ${t} % del área visible [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- capa ${e}${t?` “${t}”`:``}, cubre el ${n} % del área visible [ref=${r}]`,reasonHidden:`no es visible`,reasonDisabled:`está deshabilitado`,storageUnavailable:e=>`${e}Storage no está disponible`,badStorageArea:`El parámetro area debe ser 'local', 'session' o 'cookie'`,requestFailed:`La solicitud falló`,noSuchRequest:e=>`No hay ninguna solicitud con id=${e} (puede que se haya descartado)`,netFailed:(e,t)=>`${e} → falló (${t})`,wsFailed:e=>`WebSocket ${e} → falló`,tapped:(e,t)=>`Toque en ${e} “${t}”`,tappedTag:(e,t)=>`Toque en ${e} ${t}`,roles:{button:`botón`,link:`enlace`,textbox:`campo de texto`,searchbox:`campo de búsqueda`,checkbox:`casilla de verificación`,radio:`botón de opción`,switch:`interruptor`,combobox:`lista desplegable`,listbox:`lista`,option:`opción`,tab:`pestaña`,menuitem:`elemento de menú`,img:`imagen`,heading:`encabezado`,cell:`celda`,row:`fila`,listitem:`elemento de lista`},element:`elemento`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/es.ts
3
3
  var e = {
4
4
  id: "es",
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale fr */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale fr */
2
2
  (function(){let e={id:`fr`,name:`Français`,dir:`ltr`,ui:{levels:{observe:`Consultation seule`,interact:`Consultation et interaction`,advanced:`Avancé (exécuter des scripts, lire le stockage)`},attachLevels:{observe:`Consultation seule`,interact:`Consultation et interaction`,advanced:`Avancé (en plus\xA0: exécuter des scripts, lire le stockage)`},state:{none:`Inactif\xA0: aucune IA connectée`,observe:`L’IA consulte cette page`,agent:`L’IA a la main\xA0; vos actions sont suspendues`,user:`Vous avez repris la main\xA0; l’IA est en pause`},link:{connecting:`Connexion`,online:`En ligne`,offline:`Hors ligne`},connecting:`Connexion…`,helpPending:`En assistance`,copy:`Copier`,copied:`Copié`,noteHelp:`Assistance demandée. Le développeur vous retrouvera grâce à ce code d’appareil.`,noteAuto:`Autorisation automatique activée\xA0: l’IA se connecte sans vous demander. Vous pouvez reprendre la main ou terminer à tout moment.`,noteShare:`Communiquez ce code d’appareil au développeur. L’IA vous demandera avant de se connecter, et vous pourrez reprendre la main ou terminer à tout moment.`,help:`Demander une assistance`,cancelHelp:`Annuler la demande`,collapse:`Masquer`,deviceCode:`Code d’appareil`,barViewing:`L’IA consulte`,barAgent:`L’IA agit`,barUser:`À vous`,connectedFor:e=>`Connecté · ${e}`,takeover:`Reprendre`,handback:`Rendre`,end:`Terminer`,autoTitle:`Autoriser l’IA automatiquement`,autoOn:e=>`Connexion sans demande · ${e}`,autoOff:`Me demander chaque fois que l’IA veut se connecter`,lockTitle:`Verrouiller l’écran quand l’IA est connectée`,lockOn:`Vos touchers et balayages sont bloqués tant que l’IA est connectée`,lockOff:`Vous pouvez toujours toucher et faire défiler\xA0; évitez de gêner l’IA`,lockedToast:`Écran verrouillé quand l’IA est connectée`,unlockedToast:`Écran déverrouillé quand l’IA est connectée`,autoOffToast:`L’IA vous demandera avant de se connecter`,autoDialogTitle:`Activer l’autorisation automatique\xA0?`,autoDialogText:`Quand l’IA demande à se connecter à cet appareil, elle se connecte immédiatement avec l’accès choisi ci-dessous. Un avis s’affiche à chaque fois\xA0; vous pouvez reprendre la main ou terminer à tout moment, et désactiver cette option ici.`,turnOn:`Activer`,cancel:`Annuler`,autoOnToast:e=>`Autorisation auto · ${e}`,countdown:e=>`Refus automatique dans ${e} s`,agentName:`Assistant IA`,autoAllowedToast:(e,t)=>`Accès auto pour « ${e} » · ${t}`,attachTitle:`L’IA souhaite se connecter`,attachText:e=>`« ${e} » souhaite consulter cette page. Autoriser ?`,confirmTitle:`Confirmation requise`,confirmText:e=>`L’IA souhaite ${e}. Autoriser ?`,allow:`Autoriser`,deny:`Refuser`},action:{quote:e=>`« ${e} »`,click:e=>`cliquer sur ${e}`,enterActivate:e=>`appuyer sur Enter pour activer ${e}`,enterSubmit:e=>`appuyer sur Enter pour envoyer ${e}`},agent:{missingParam:e=>`Paramètre manquant : ${e}`,notString:e=>`Le paramètre ${e} doit être une chaîne`,unknownMethod:e=>`Méthode inconnue : ${e}`,needLevel:e=>`Nécessite le niveau ${e}`,takenOver:`L’utilisateur a repris la main\xA0; attendez qu’il vous la rende`,userDenied:`L’utilisateur a refusé cette action`,confirmBusy:`L’utilisateur n’a pas encore confirmé l’action précédente`,unknownModifier:e=>`Touche de modification inconnue : ${e}`,unknownKey:e=>`Touche inconnue : ${e}`,refNotInSnapshot:e=>`ref=${e} ne figure pas dans le dernier instantané ; prenez un nouvel instantané`,refDetached:e=>`L’élément de ref=${e} n’est plus sur la page ; prenez un nouvel instantané`,queryNeedsCriteria:`Au moins un critère parmi text, role ou name est requis`,noSuchRecord:e=>`Aucun enregistrement seq=${e} dans le journal de session (il a peut-être été supprimé)`,noSuchSession:e=>`Aucun journal de session ${e} sur cet appareil (seuls les 3 derniers lancements sont conservés)`,noSessionLog:`Aucun journal de session sur cet appareil pour l’instant (le projet a peut-être désactivé l’enregistrement, ou la page a passé run({ record: false }))`,sessionLogUnavailable:`IndexedDB n’est pas disponible sur cette page\xA0: pas de journal de session`,readOnly:e=>`${e} est en lecture seule`,isSelect:e=>`${e} est une liste déroulante ; utilisez rwd.select`,notFillable:e=>`${e} n’est pas un champ de texte et ne peut pas être rempli`,notSelect:e=>`${e} n’est pas une liste déroulante (select) ; utilisez click`,singleSelect:`Cette liste déroulante n’accepte qu’une seule option`,noSuchOption:(e,t)=>`La liste déroulante n’a pas d’option « ${e} » ; options disponibles : ${t.join(`, `)}`,optionDisabled:e=>`L’option « ${e} » est désactivée`,badUrl:e=>`URL non valide : ${e}`,httpOnly:`Seules les URL http(s) peuvent être ouvertes`,textAppearTimeout:e=>`Délai dépassé en attendant l’apparition du texte « ${e} »`,textGoneTimeout:e=>`Délai dépassé en attendant la disparition du texte « ${e} »`,badFunction:e=>`Impossible d’analyser function : ${e}`,notAFunction:`function doit être une expression de fonction, par exemple "() => document.title"`,elementDetached:e=>`L’élément ${e} n’est plus sur la page ; prenez un nouvel instantané`,notActionable:(e,t)=>`Impossible d’agir sur l’élément ${e} : ${t}`,notVisible:e=>`L’élément ${e} n’est pas visible`,reasonMoving:`sa position change sans cesse (il est peut-être animé)`,reasonOffscreen:`il est en dehors de la fenêtre d’affichage`,reasonObscured:(e,t)=>`le point de clic est recouvert par ${e} (ref=${t} ; cliquez directement dessus, par exemple sur le fond d’une fenêtre contextuelle pour la fermer)`,overlayHeader:`[Superpositions] Ces éléments recouvrent la page. Si un clic est bloqué, cliquez directement dessus (par exemple sur le fond pour fermer une fenêtre contextuelle)\xA0:`,overlayMask:(e,t,n)=>`- fond ${e}, couvre ${t} % de la fenêtre d’affichage [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- calque ${e}${t?` « ${t} »`:``}, couvre ${n} % de la fenêtre d’affichage [ref=${r}]`,reasonHidden:`il n’est pas visible`,reasonDisabled:`il est désactivé`,storageUnavailable:e=>`${e}Storage n’est pas disponible`,badStorageArea:`Le paramètre area doit valoir 'local', 'session' ou 'cookie'`,requestFailed:`Échec de la requête`,noSuchRequest:e=>`Aucune requête avec id=${e} (elle a peut-être été supprimée)`,netFailed:(e,t)=>`${e} → échec (${t})`,wsFailed:e=>`WebSocket ${e} → échec`,tapped:(e,t)=>`Appui sur ${e} « ${t} »`,tappedTag:(e,t)=>`Appui sur ${e} ${t}`,roles:{button:`le bouton`,link:`le lien`,textbox:`le champ de texte`,searchbox:`le champ de recherche`,checkbox:`la case à cocher`,radio:`le bouton radio`,switch:`l’interrupteur`,combobox:`la liste déroulante`,listbox:`la liste`,option:`l’option`,tab:`l’onglet`,menuitem:`l’élément de menu`,img:`l’image`,heading:`le titre`,cell:`la cellule`,row:`la ligne`,listitem:`l’élément de liste`},element:`l’élément`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/fr.ts
3
3
  var e = {
4
4
  id: "fr",
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale ja */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale ja */
2
2
  (function(){let e=e=>/^[A-Za-z0-9<]/.test(e),t={levels:{observe:`閲覧のみ`,interact:`閲覧と操作`,advanced:`高度(スクリプト実行、ストレージ読み取り)`},attachLevels:{observe:`閲覧のみ`,interact:`閲覧と操作`,advanced:`高度(さらにスクリプト実行、ストレージ読み取り)`},state:{none:`待機中:AI は接続されていません`,observe:`AI がこのページを閲覧しています`,agent:`AI が操作中です。あなたの入力は一時停止しています`,user:`あなたが引き継ぎました。AI は一時停止中です`},link:{connecting:`接続中`,online:`オンライン`,offline:`オフライン`},connecting:`接続中…`,helpPending:`対応中`,copy:`コピー`,copied:`コピー済み`,noteHelp:`サポートを依頼しました。開発者がこのデバイスコードであなたを見つけます。`,noteAuto:`自動許可がオンです。AI は確認なしで接続します。いつでも引き継ぎや終了ができます。`,noteShare:`このデバイスコードを開発者に伝えてください。AI は接続する前に確認を求めます。接続後もいつでも引き継ぎや終了ができます。`,help:`サポートを依頼`,cancelHelp:`依頼を取り消す`,collapse:`閉じる`,deviceCode:`デバイスコード`,barViewing:`AI 閲覧中`,barAgent:`AI 操作中`,barUser:`手動操作中`,connectedFor:e=>`接続中 · ${e}`,takeover:`引き継ぐ`,handback:`AI に戻す`,end:`終了`,autoTitle:`AI の接続を自動許可`,autoOn:e=>`確認なしで接続 · ${e}`,autoOff:`AI が接続しようとするたびに確認します`,lockTitle:`AI の接続中は画面をロック`,lockOn:`AI の接続中は、タップやスワイプが無効になります`,lockOff:`タップやスクロールはできますが、AI の操作を妨げないようご注意ください`,lockedToast:`AI の接続中は画面をロックします`,unlockedToast:`AI の接続中も画面をロックしません`,autoOffToast:`自動許可をオフにしました。AI は接続前に確認します`,autoDialogTitle:`自動許可をオンにしますか?`,autoDialogText:`AI がこのデバイスへの接続を求めると、下で選んだ権限ですぐに接続します。接続のたびに通知が表示され、いつでも引き継ぎや終了ができます。この設定はここでオフにできます。`,turnOn:`オンにする`,cancel:`キャンセル`,autoOnToast:e=>`自動許可オン · ${e}`,countdown:e=>`${e} 秒後に自動で拒否`,agentName:`AI アシスタント`,autoAllowedToast:(e,t)=>`「${e}」を自動許可しました · ${t}`,attachTitle:`AI が接続を求めています`,attachText:e=>`「${e}」がこのページの閲覧を求めています。許可しますか?`,confirmTitle:`確認してください`,confirmText:t=>`AI が${e(t)?` `:``}${t}しようとしています。許可しますか?`,allow:`許可`,deny:`拒否`},n={missingParam:e=>`パラメータ ${e} がありません`,notString:e=>`パラメータ ${e} は文字列である必要があります`,unknownMethod:e=>`不明なメソッド:${e}`,needLevel:e=>`${e} レベルが必要です`,takenOver:`ユーザーが引き継ぎました。ユーザーが操作を戻すまで待ってください`,userDenied:`ユーザーがこの操作を拒否しました`,confirmBusy:`前の操作についてユーザーの確認を待っています`,unknownModifier:e=>`不明な修飾キー:${e}`,unknownKey:e=>`不明なキー:${e}`,refNotInSnapshot:e=>`ref=${e} は最新のスナップショットにありません。スナップショットを取り直してください`,refDetached:e=>`ref=${e} の要素はもうページ上にありません。スナップショットを取り直してください`,queryNeedsCriteria:`text、role、name のいずれか 1 つ以上が必要です`,noSuchRecord:e=>`セッションログに seq=${e} のレコードがありません(削除された可能性があります)`,noSuchSession:e=>`このデバイスにセッションログ ${e} はありません(保持されるのは直近 3 回の起動分のみです)`,noSessionLog:`このデバイスにはまだセッションログがありません(プロジェクトで記録がオフになっているか、ページが run({ record: false }) を指定している可能性があります)`,sessionLogUnavailable:`このページでは IndexedDB を使用できないため、セッションログはありません`,readOnly:e=>`${e} は読み取り専用です`,isSelect:e=>`${e} はドロップダウンです。rwd.select を使ってください`,notFillable:e=>`${e} はテキスト入力欄ではないため、入力できません`,notSelect:e=>`${e} はドロップダウン(select)ではありません。click を使ってください`,singleSelect:`このドロップダウンでは 1 つしか選択できません`,noSuchOption:(e,t)=>`ドロップダウンに選択肢「${e}」はありません。選択可能:${t.join(`、`)}`,optionDisabled:e=>`選択肢「${e}」は無効です`,badUrl:e=>`無効な URL:${e}`,httpOnly:`開けるのは http(s) の URL のみです`,textAppearTimeout:e=>`テキスト「${e}」の表示を待機中にタイムアウトしました`,textGoneTimeout:e=>`テキスト「${e}」の消失を待機中にタイムアウトしました`,badFunction:e=>`function を解析できません:${e}`,notAFunction:`function は関数式である必要があります(例:"() => document.title")`,elementDetached:e=>`要素 ${e} はもうページ上にありません。スナップショットを取り直してください`,notActionable:(e,t)=>`要素 ${e} を操作できません:${t}`,notVisible:e=>`要素 ${e} は表示されていません`,reasonMoving:`位置が変化し続けています(アニメーション中の可能性があります)`,reasonOffscreen:`ビューポートの外にあります`,reasonObscured:(e,t)=>`クリック位置が ${e} に覆われています(ref=${t}。この要素を直接 click できます。例:背景のオーバーレイをクリックしてポップアップを閉じる)`,overlayHeader:`[オーバーレイ] 以下の要素がページの上に重なっています。クリックが遮られる場合は、これらを直接クリックしてください(例:背景のオーバーレイをクリックしてポップアップを閉じる):`,overlayMask:(e,t,n)=>`- 背景オーバーレイ ${e}、ビューポートの ${t}% を覆う [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- レイヤー ${e}${t?`「${t}」`:``}、ビューポートの ${n}% を覆う [ref=${r}]`,reasonHidden:`表示されていません`,reasonDisabled:`無効になっています`,storageUnavailable:e=>`${e}Storage は使用できません`,badStorageArea:`パラメータ area は 'local'、'session'、'cookie' のいずれかである必要があります`,requestFailed:`リクエストに失敗しました`,noSuchRequest:e=>`id=${e} のリクエストはありません(破棄された可能性があります)`,netFailed:(e,t)=>`${e} → 失敗(${t})`,wsFailed:e=>`WebSocket ${e} → 失敗`,tapped:(e,t)=>`${e}「${t}」をタップしました`,tappedTag:(e,t)=>`${e} ${t} をタップしました`,roles:{button:`ボタン`,link:`リンク`,textbox:`テキスト入力欄`,searchbox:`検索欄`,checkbox:`チェックボックス`,radio:`ラジオボタン`,switch:`スイッチ`,combobox:`ドロップダウン`,listbox:`リスト`,option:`選択肢`,tab:`タブ`,menuitem:`メニュー項目`,img:`画像`,heading:`見出し`,cell:`セル`,row:`行`,listitem:`リスト項目`},element:`要素`},r=t=>e(t)?` ${t} `:t,i={id:`ja`,name:`日本語`,dir:`ltr`,ui:t,action:{quote:e=>`「${e}」`,click:e=>`${r(e).trimStart()}をクリック`,enterActivate:e=>`${r(e).trimStart()}で Enter キーを押下`,enterSubmit:e=>`Enter キーで${r(e)}を送信`},agent:n};var a=typeof window<`u`?window:{},o=a.RemoteWebviewDebugger;o&&o.registerLocale?o.registerLocale(i):(a.__RWD_LOCALES__=a.__RWD_LOCALES__||[]).push(i)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/ja.ts
3
3
  var e = (e) => /^[A-Za-z0-9<]/.test(e), t = {
4
4
  levels: {
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale ko */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale ko */
2
2
  (function(){function e(e,t,n){let r=e.replace(/[\s"'“”‘’)\]」』]+$/,``),i=r.charCodeAt(r.length-1);if(i>=44032&&i<=55203)return(i-44032)%28?t:n;let a=`0123456789`.indexOf(r.charAt(r.length-1));return a>=0?`0136780`.includes(String(a))?t:n:`${t}(${n})`}let t={id:`ko`,name:`한국어`,dir:`ltr`,ui:{levels:{observe:`보기 전용`,interact:`보기 및 조작`,advanced:`고급(스크립트 실행, 저장소 읽기)`},attachLevels:{observe:`보기 전용`,interact:`보기 및 조작`,advanced:`고급(스크립트 실행, 저장소 읽기도 가능)`},state:{none:`대기 중: 접속한 AI 없음`,observe:`AI가 이 페이지를 보고 있어요`,agent:`AI가 조작 중이에요. 그동안 입력이 멈춰요`,user:`직접 조작 중이에요. AI는 잠시 멈췄어요`},link:{connecting:`연결 중`,online:`온라인`,offline:`오프라인`},connecting:`연결 중…`,helpPending:`지원 중`,copy:`복사`,copied:`복사됨`,noteHelp:`지원을 요청했어요. 개발자가 이 기기 코드로 찾아올 거예요.`,noteAuto:`자동 허용이 켜져 있어요. AI가 묻지 않고 접속해요. 언제든 직접 조작하거나 종료할 수 있어요.`,noteShare:`이 기기 코드를 개발자에게 알려 주세요. AI는 접속하기 전에 먼저 물어보고, 언제든 직접 조작하거나 종료할 수 있어요.`,help:`지원 요청`,cancelHelp:`요청 취소`,collapse:`숨기기`,deviceCode:`기기 코드`,barViewing:`AI 보는 중`,barAgent:`AI 조작 중`,barUser:`직접 조작 중`,connectedFor:e=>`연결됨 · ${e}`,takeover:`직접 조작`,handback:`AI에 맡기기`,end:`종료`,autoTitle:`AI 자동 허용`,autoOn:e=>`묻지 않고 접속 · ${e}`,autoOff:`AI가 접속하려고 할 때마다 물어봐요`,lockTitle:`AI 접속 중 화면 잠금`,lockOn:`AI가 접속해 있는 동안 탭과 스와이프가 막혀요`,lockOff:`AI가 접속해 있어도 탭하고 스크롤할 수 있어요. AI 조작을 방해하지 않게 주의해 주세요`,lockedToast:`AI가 접속해 있는 동안 화면이 잠겨요`,unlockedToast:`AI가 접속해 있어도 화면을 잠그지 않아요`,autoOffToast:`자동 허용을 껐어요. AI가 접속 전에 물어봐요`,autoDialogTitle:`자동 허용을 켤까요?`,autoDialogText:`AI가 이 기기에 접속을 요청하면 묻지 않고 아래에서 고른 권한으로 바로 접속해요. 접속할 때마다 화면에 알림이 표시되고, 언제든 직접 조작하거나 종료할 수 있어요. 이 설정은 여기서 다시 끌 수 있어요.`,turnOn:`켜기`,cancel:`취소`,autoOnToast:e=>`자동 허용 켜짐 · ${e}`,countdown:e=>`${e}초 후 자동 거부`,agentName:`AI 어시스턴트`,autoAllowedToast:(e,t)=>`“${e}” 자동 허용됨 · ${t}`,attachTitle:`AI 접속 요청`,attachText:t=>`“${t}”${e(t,`이`,`가`)} 이 페이지를 보려고 해요. 허용할까요?`,confirmTitle:`확인이 필요해요`,confirmText:t=>`AI가 ${t}${e(t,`을`,`를`)} 요청했어요. 허용할까요?`,allow:`허용`,deny:`거부`},action:{quote:e=>`“${e}”`,click:e=>`${e} 클릭`,enterActivate:e=>`${e}에서 Enter 키 누르기`,enterSubmit:e=>`Enter 키로 ${e} 제출`},agent:{missingParam:e=>`매개변수가 없습니다: ${e}`,notString:e=>`${e} 매개변수는 문자열이어야 합니다`,unknownMethod:e=>`알 수 없는 메서드: ${e}`,needLevel:e=>`${e} 권한 수준이 필요합니다`,takenOver:`사용자가 직접 조작으로 전환했습니다. 사용자가 다시 맡길 때까지 기다리세요`,userDenied:`사용자가 이 작업을 거부했습니다`,confirmBusy:`이전 작업에 대한 사용자 확인을 아직 기다리는 중입니다`,unknownModifier:e=>`알 수 없는 보조 키: ${e}`,unknownKey:e=>`알 수 없는 키: ${e}`,refNotInSnapshot:e=>`ref=${e} 항목이 최근 스냅샷에 없습니다. 스냅샷을 다시 가져오세요`,refDetached:e=>`ref=${e}에 해당하는 요소가 더 이상 페이지에 없습니다. 스냅샷을 다시 가져오세요`,queryNeedsCriteria:`text, role, name 중 하나 이상이 필요합니다`,noSuchRecord:e=>`세션 로그에 seq=${e} 기록이 없습니다(이미 정리되었을 수 있습니다)`,noSuchSession:e=>`이 기기에는 세션 ${e}의 로그가 없습니다(최근 3회 실행분만 보관됩니다)`,noSessionLog:`이 기기에는 아직 세션 로그가 없습니다(프로젝트에서 기록을 껐거나, 페이지가 run({ record: false })로 기록을 껐을 수 있습니다)`,sessionLogUnavailable:`이 페이지에서는 IndexedDB를 사용할 수 없어 세션 로그가 없습니다`,readOnly:e=>`${e} 요소는 읽기 전용입니다`,isSelect:e=>`${e} 요소는 드롭다운입니다. rwd.select를 사용하세요`,notFillable:e=>`${e} 요소는 텍스트 입력란이 아니라서 값을 입력할 수 없습니다`,notSelect:e=>`${e} 요소는 드롭다운(select)이 아닙니다. click을 사용하세요`,singleSelect:`이 드롭다운은 옵션을 하나만 선택할 수 있습니다`,noSuchOption:(e,t)=>`드롭다운에 “${e}” 옵션이 없습니다. 선택 가능한 옵션: ${t.join(`, `)}`,optionDisabled:e=>`“${e}” 옵션은 비활성화되어 있습니다`,badUrl:e=>`잘못된 URL: ${e}`,httpOnly:`http(s) URL만 열 수 있습니다`,textAppearTimeout:e=>`“${e}” 텍스트가 나타나기를 기다리다 시간이 초과되었습니다`,textGoneTimeout:e=>`“${e}” 텍스트가 사라지기를 기다리다 시간이 초과되었습니다`,badFunction:e=>`function을 해석할 수 없습니다: ${e}`,notAFunction:`function은 함수 표현식이어야 합니다. 예: "() => document.title"`,elementDetached:e=>`${e} 요소가 더 이상 페이지에 없습니다. 스냅샷을 다시 가져오세요`,notActionable:(e,t)=>`${e} 요소를 조작할 수 없습니다: ${t}`,notVisible:e=>`${e} 요소가 보이지 않습니다`,reasonMoving:`위치가 계속 바뀌고 있습니다(애니메이션 중일 수 있습니다)`,reasonOffscreen:`뷰포트 밖에 있습니다`,reasonObscured:(e,t)=>`클릭 지점이 ${e} 요소에 가려져 있습니다(ref=${t}. 이 요소를 직접 클릭할 수 있습니다. 예: 팝업 배경을 클릭해 팝업 닫기)`,overlayHeader:`[오버레이] 아래 요소들이 페이지 위를 덮고 있습니다. 클릭이 막히면 이 요소들을 직접 클릭하세요(예: 배경을 클릭해 팝업 닫기):`,overlayMask:(e,t,n)=>`- 배경 ${e}, 뷰포트의 ${t}%를 덮음 [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- 레이어 ${e}${t?` “${t}”`:``}, 뷰포트의 ${n}%를 덮음 [ref=${r}]`,reasonHidden:`보이지 않습니다`,reasonDisabled:`비활성화되어 있습니다`,storageUnavailable:e=>`${e}Storage를 사용할 수 없습니다`,badStorageArea:`area 매개변수는 'local', 'session', 'cookie' 중 하나여야 합니다`,requestFailed:`요청 실패`,noSuchRequest:e=>`id=${e} 요청이 없습니다(이미 버려졌을 수 있습니다)`,netFailed:(e,t)=>`${e} → 실패(${t})`,wsFailed:e=>`WebSocket ${e} → 실패`,tapped:(e,t)=>`${e} “${t}” 탭함`,tappedTag:(e,t)=>`${e} ${t} 탭함`,roles:{button:`버튼`,link:`링크`,textbox:`텍스트 입력란`,searchbox:`검색창`,checkbox:`체크박스`,radio:`라디오 버튼`,switch:`스위치`,combobox:`드롭다운`,listbox:`목록`,option:`옵션`,tab:`탭`,menuitem:`메뉴 항목`,img:`이미지`,heading:`제목`,cell:`셀`,row:`행`,listitem:`목록 항목`},element:`요소`}};var n=typeof window<`u`?window:{},r=n.RemoteWebviewDebugger;r&&r.registerLocale?r.registerLocale(t):(n.__RWD_LOCALES__=n.__RWD_LOCALES__||[]).push(t)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/ko.ts
3
3
  function e(e, t, n) {
4
4
  let r = e.replace(/[\s"'“”‘’)\]」』]+$/, ""), i = r.charCodeAt(r.length - 1);
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale pt */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale pt */
2
2
  (function(){let e={id:`pt`,name:`Português`,dir:`ltr`,ui:{levels:{observe:`Apenas visualizar`,interact:`Visualizar e interagir`,advanced:`Avançado (executar scripts, ler armazenamento)`},attachLevels:{observe:`Apenas visualizar`,interact:`Visualizar e interagir`,advanced:`Avançado (também executar scripts, ler armazenamento)`},state:{none:`Inativo: nenhuma IA conectada`,observe:`A IA está vendo esta página`,agent:`A IA está no controle; seus toques estão pausados`,user:`Você assumiu o controle; a IA está pausada`},link:{connecting:`Conectando`,online:`Online`,offline:`Offline`},connecting:`Conectando…`,helpPending:`Em atendimento`,copy:`Copiar`,copied:`Copiado`,noteHelp:`Assistência solicitada. O desenvolvedor vai encontrar você por este código do dispositivo.`,noteAuto:`Permissão automática ativada: a IA se conecta sem perguntar. Você pode assumir o controle ou encerrar a qualquer momento.`,noteShare:`Envie este código do dispositivo para o desenvolvedor. A IA pede sua permissão antes de se conectar, e você pode assumir o controle ou encerrar a qualquer momento.`,help:`Solicitar assistência`,cancelHelp:`Cancelar solicitação`,collapse:`Ocultar`,deviceCode:`Código do dispositivo`,barViewing:`IA vendo`,barAgent:`IA operando`,barUser:`Sua vez`,connectedFor:e=>`Conectado · ${e}`,takeover:`Assumir`,handback:`Devolver à IA`,end:`Encerrar`,autoTitle:`Permitir a IA automaticamente`,autoOn:e=>`Conecta sem perguntar · ${e}`,autoOff:`Perguntar sempre que a IA quiser se conectar`,lockTitle:`Bloquear a tela com a IA conectada`,lockOn:`Seus toques e deslizes ficam bloqueados enquanto a IA estiver conectada`,lockOff:`Você ainda pode tocar e rolar; tente não atrapalhar a IA`,lockedToast:`A tela será bloqueada enquanto a IA estiver conectada`,unlockedToast:`A tela não será bloqueada enquanto a IA estiver conectada`,autoOffToast:`Permissão automática desativada. A IA vai pedir antes de se conectar`,autoDialogTitle:`Ativar a permissão automática?`,autoDialogText:`Quando a IA pedir para se conectar a este dispositivo, ela se conecta na hora com o acesso que você escolher abaixo. Você verá um aviso toda vez, pode assumir o controle ou encerrar a qualquer momento e pode desativar isso aqui.`,turnOn:`Ativar`,cancel:`Cancelar`,autoOnToast:e=>`Permissão automática ativada · ${e}`,countdown:e=>`Negado automaticamente em ${e} s`,agentName:`Assistente de IA`,autoAllowedToast:(e,t)=>`“${e}” permitido automaticamente · ${t}`,attachTitle:`A IA quer se conectar`,attachText:e=>`“${e}” quer ver esta página. Permitir?`,confirmTitle:`Confirme, por favor`,confirmText:e=>`A IA quer ${e}. Permitir?`,allow:`Permitir`,deny:`Negar`},action:{quote:e=>`“${e}”`,click:e=>`tocar em ${e}`,enterActivate:e=>`pressionar Enter em ${e}`,enterSubmit:e=>`pressionar Enter para enviar ${e}`},agent:{missingParam:e=>`Parâmetro ausente: ${e}`,notString:e=>`O parâmetro ${e} deve ser uma string`,unknownMethod:e=>`Método desconhecido: ${e}`,needLevel:e=>`Requer o nível ${e}`,takenOver:`O usuário assumiu o controle; aguarde até que ele o devolva`,userDenied:`O usuário negou esta ação`,confirmBusy:`Ainda aguardando o usuário confirmar a ação anterior`,unknownModifier:e=>`Tecla modificadora desconhecida: ${e}`,unknownKey:e=>`Tecla desconhecida: ${e}`,refNotInSnapshot:e=>`ref=${e} não está no snapshot mais recente; faça um novo snapshot`,refDetached:e=>`O elemento de ref=${e} não está mais na página; faça um novo snapshot`,queryNeedsCriteria:`É necessário pelo menos um de text, role ou name`,noSuchRecord:e=>`Não há registro seq=${e} no log da sessão (ele pode ter sido removido)`,noSuchSession:e=>`Não há log da sessão ${e} neste dispositivo (só as 3 últimas inicializações são mantidas)`,noSessionLog:`Ainda não há log da sessão neste dispositivo (o projeto pode ter desativado a gravação, ou a página passou run({ record: false }))`,sessionLogUnavailable:`IndexedDB não está disponível nesta página: sem log da sessão`,readOnly:e=>`${e} é somente leitura`,isSelect:e=>`${e} é uma lista suspensa; use rwd.select`,notFillable:e=>`${e} não é um campo de texto e não pode ser preenchido`,notSelect:e=>`${e} não é uma lista suspensa (select); use click`,singleSelect:`Esta lista suspensa permite apenas uma opção`,noSuchOption:(e,t)=>`A lista suspensa não tem a opção “${e}”; disponíveis: ${t.join(`, `)}`,optionDisabled:e=>`A opção “${e}” está desativada`,badUrl:e=>`URL inválida: ${e}`,httpOnly:`Só é possível abrir URLs http(s)`,textAppearTimeout:e=>`Tempo esgotado aguardando o texto “${e}” aparecer`,textGoneTimeout:e=>`Tempo esgotado aguardando o texto “${e}” desaparecer`,badFunction:e=>`Não foi possível analisar function: ${e}`,notAFunction:`function deve ser uma expressão de função, por exemplo "() => document.title"`,elementDetached:e=>`O elemento ${e} não está mais na página; faça um novo snapshot`,notActionable:(e,t)=>`Não é possível operar o elemento ${e}: ${t}`,notVisible:e=>`O elemento ${e} não está visível`,reasonMoving:`a posição dele continua mudando (pode estar em animação)`,reasonOffscreen:`ele está fora da área visível (viewport)`,reasonObscured:(e,t)=>`o ponto do clique está coberto por ${e} (ref=${t}; clique nele diretamente, por exemplo no fundo de um pop-up para fechá-lo)`,overlayHeader:`[Sobreposições] Estes elementos ficam por cima da página. Quando um clique for bloqueado, clique neles diretamente (por exemplo no fundo para fechar um pop-up):`,overlayMask:(e,t,n)=>`- fundo ${e}, cobre ${t}% da viewport [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- camada ${e}${t?` “${t}”`:``}, cobre ${n}% da viewport [ref=${r}]`,reasonHidden:`ele não está visível`,reasonDisabled:`ele está desativado`,storageUnavailable:e=>`${e}Storage não está disponível`,badStorageArea:`O parâmetro area deve ser 'local', 'session' ou 'cookie'`,requestFailed:`A requisição falhou`,noSuchRequest:e=>`Nenhuma requisição com id=${e} (ela pode ter sido descartada)`,netFailed:(e,t)=>`${e} → falhou (${t})`,wsFailed:e=>`WebSocket ${e} → falhou`,tapped:(e,t)=>`Tocou em ${e} “${t}”`,tappedTag:(e,t)=>`Tocou em ${e} ${t}`,roles:{button:`botão`,link:`link`,textbox:`campo de texto`,searchbox:`campo de busca`,checkbox:`caixa de seleção`,radio:`botão de opção`,switch:`chave`,combobox:`lista suspensa`,listbox:`lista`,option:`opção`,tab:`aba`,menuitem:`item de menu`,img:`imagem`,heading:`título`,cell:`célula`,row:`linha`,listitem:`item de lista`},element:`elemento`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/pt.ts
3
3
  var e = {
4
4
  id: "pt",
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale ru */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale ru */
2
2
  (function(){let e={id:`ru`,name:`Русский`,dir:`ltr`,ui:{levels:{observe:`Только просмотр`,interact:`Просмотр и управление`,advanced:`Расширенный (скрипты, чтение хранилища)`},attachLevels:{observe:`Только просмотр`,interact:`Просмотр и управление`,advanced:`Расширенный (плюс скрипты, чтение хранилища)`},state:{none:`Ожидание: ИИ не подключён`,observe:`ИИ просматривает эту страницу`,agent:`ИИ управляет, ваш ввод приостановлен`,user:`Вы взяли управление, ИИ на паузе`},link:{connecting:`Подключение`,online:`В сети`,offline:`Не в сети`},connecting:`Подключение…`,helpPending:`Идёт поддержка`,copy:`Копировать`,copied:`Скопировано`,noteHelp:`Поддержка запрошена. Разработчик найдёт вас по этому коду устройства.`,noteAuto:`Автоматическое разрешение включено: ИИ подключается без вопросов. Вы можете в любой момент взять управление или завершить.`,noteShare:`Сообщите этот код устройства разработчику. ИИ спросит разрешения перед подключением, а вы сможете в любой момент взять управление или завершить.`,help:`Запросить поддержку`,cancelHelp:`Отменить запрос`,collapse:`Свернуть`,deviceCode:`Код устройства`,barViewing:`ИИ смотрит`,barAgent:`ИИ работает`,barUser:`Управляете вы`,connectedFor:e=>`Подключено · ${e}`,takeover:`Перехватить`,handback:`Вернуть ИИ`,end:`Завершить`,autoTitle:`Автоматическое разрешение`,autoOn:e=>`Подключается без вопросов · ${e}`,autoOff:`Спрашивать каждый раз, когда ИИ хочет подключиться`,lockTitle:`Блокировать экран, пока подключён ИИ`,lockOn:`Пока подключён ИИ, ваши касания и свайпы блокируются`,lockOff:`Вы можете касаться и прокручивать, но постарайтесь не мешать ИИ`,lockedToast:`Экран будет заблокирован, пока подключён ИИ`,unlockedToast:`Экран не будет блокироваться, пока подключён ИИ`,autoOffToast:`Автоматическое разрешение выключено. ИИ спросит перед подключением`,autoDialogTitle:`Включить автоматическое разрешение?`,autoDialogText:`Когда ИИ попросит подключиться к этому устройству, он сразу подключится с выбранным ниже уровнем доступа. Каждый раз вы увидите уведомление, сможете в любой момент взять управление или завершить, а выключить эту функцию можно здесь.`,turnOn:`Включить`,cancel:`Отмена`,autoOnToast:e=>`Автоматическое разрешение включено · ${e}`,countdown:e=>`Автоотказ через ${e} с`,agentName:`ИИ-ассистент`,autoAllowedToast:(e,t)=>`«${e}» подключён автоматически · ${t}`,attachTitle:`ИИ хочет подключиться`,attachText:e=>`«${e}» хочет просматривать эту страницу. Разрешить?`,confirmTitle:`Подтвердите действие`,confirmText:e=>`ИИ хочет ${e}. Разрешить?`,allow:`Разрешить`,deny:`Отклонить`},action:{quote:e=>`«${e}»`,click:e=>`нажать ${e}`,enterActivate:e=>`нажать Enter на ${e}`,enterSubmit:e=>`нажать Enter и отправить ${e}`},agent:{missingParam:e=>`Не указан параметр: ${e}`,notString:e=>`Параметр ${e} должен быть строкой`,unknownMethod:e=>`Неизвестный метод: ${e}`,needLevel:e=>`Требуется уровень ${e}`,takenOver:`Пользователь взял управление; дождитесь, пока он вернёт управление`,userDenied:`Пользователь отклонил это действие`,confirmBusy:`Пользователь ещё не подтвердил предыдущее действие`,unknownModifier:e=>`Неизвестная клавиша-модификатор: ${e}`,unknownKey:e=>`Неизвестная клавиша: ${e}`,refNotInSnapshot:e=>`ref=${e} нет в последнем снимке; сделайте новый снимок`,refDetached:e=>`Элемента с ref=${e} больше нет на странице; сделайте новый снимок`,queryNeedsCriteria:`Нужен хотя бы один из параметров: text, role или name`,noSuchRecord:e=>`В журнале сеанса нет записи seq=${e} (возможно, она уже удалена)`,noSuchSession:e=>`На этом устройстве нет журнала сеанса ${e} (хранятся только 3 последних запуска)`,noSessionLog:`На этом устройстве пока нет журнала сеанса (возможно, в проекте отключена запись или страница передала run({ record: false }))`,sessionLogUnavailable:`На этой странице недоступен IndexedDB, поэтому журнала сеанса нет`,readOnly:e=>`${e} доступен только для чтения`,isSelect:e=>`${e} — выпадающий список; используйте rwd.select`,notFillable:e=>`${e} не является текстовым полем, заполнить его нельзя`,notSelect:e=>`${e} не является выпадающим списком (select); используйте click`,singleSelect:`В этом выпадающем списке можно выбрать только один вариант`,noSuchOption:(e,t)=>`В выпадающем списке нет варианта «${e}»; доступны: ${t.join(`, `)}`,optionDisabled:e=>`Вариант «${e}» отключён`,badUrl:e=>`Недопустимый URL: ${e}`,httpOnly:`Открывать можно только URL http(s)`,textAppearTimeout:e=>`Истекло время ожидания появления текста «${e}»`,textGoneTimeout:e=>`Истекло время ожидания исчезновения текста «${e}»`,badFunction:e=>`Не удалось разобрать function: ${e}`,notAFunction:`function должен быть функциональным выражением, например "() => document.title"`,elementDetached:e=>`Элемента ${e} больше нет на странице; сделайте новый снимок`,notActionable:(e,t)=>`С элементом ${e} нельзя взаимодействовать: ${t}`,notVisible:e=>`Элемент ${e} не виден`,reasonMoving:`его положение всё время меняется (возможно, идёт анимация)`,reasonOffscreen:`он за пределами области просмотра`,reasonObscured:(e,t)=>`точку нажатия перекрывает ${e} (ref=${t}; нажмите на него напрямую, например на фон всплывающего окна, чтобы закрыть его)`,overlayHeader:`[Оверлеи] Эти элементы лежат поверх страницы. Если нажатие перекрыто, нажимайте на них напрямую (например, на фон, чтобы закрыть всплывающее окно):`,overlayMask:(e,t,n)=>`- фон ${e}, закрывает ${t}% области просмотра [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- слой ${e}${t?` «${t}»`:``}, закрывает ${n}% области просмотра [ref=${r}]`,reasonHidden:`он не виден`,reasonDisabled:`он отключён`,storageUnavailable:e=>`${e}Storage недоступен`,badStorageArea:`Параметр area должен быть 'local', 'session' или 'cookie'`,requestFailed:`Запрос не выполнен`,noSuchRequest:e=>`Нет запроса с id=${e} (возможно, он уже отброшен)`,netFailed:(e,t)=>`${e} → ошибка (${t})`,wsFailed:e=>`WebSocket ${e} → ошибка`,tapped:(e,t)=>`Нажатие: ${e} «${t}»`,tappedTag:(e,t)=>`Нажатие: ${e} ${t}`,roles:{button:`кнопка`,link:`ссылка`,textbox:`текстовое поле`,searchbox:`поле поиска`,checkbox:`флажок`,radio:`переключатель`,switch:`тумблер`,combobox:`выпадающий список`,listbox:`список`,option:`вариант`,tab:`вкладка`,menuitem:`пункт меню`,img:`изображение`,heading:`заголовок`,cell:`ячейка`,row:`строка`,listitem:`элемент списка`},element:`элемент`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/ru.ts
3
3
  var e = {
4
4
  id: "ru",
@@ -1,2 +1,2 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | locale zh-TW */
1
+ /*! remote-webview-debugger sdk v0.2.1 | locale zh-TW */
2
2
  (function(){let e={id:`zh-TW`,name:`繁體中文`,dir:`ltr`,ui:{levels:{observe:`僅檢視`,interact:`檢視並操作`,advanced:`進階(可執行指令碼、讀取儲存資料)`},attachLevels:{observe:`僅檢視`,interact:`檢視並操作`,advanced:`進階(另可執行指令碼、讀取儲存資料)`},state:{none:`閒置:沒有 AI 連線`,observe:`AI 正在檢視這個頁面`,agent:`AI 正在操作,你的輸入已暫停`,user:`你已接管,AI 已暫停`},link:{connecting:`連線中`,online:`線上`,offline:`離線`},connecting:`連線中…`,helpPending:`協助中`,copy:`複製`,copied:`已複製`,noteHelp:`已請求協助,開發人員會透過裝置碼找到你。`,noteAuto:`已開啟自動允許:AI 加入時不會再詢問,你隨時可以接管或結束。`,noteShare:`把裝置碼提供給開發人員:AI 加入前會先徵求你的同意,加入後你隨時可以接管或結束。`,help:`請求協助`,cancelHelp:`取消請求`,collapse:`收合`,deviceCode:`裝置碼`,barViewing:`AI 檢視中`,barAgent:`AI 操作中`,barUser:`由你操作`,connectedFor:e=>`已連線 · ${e}`,takeover:`接管`,handback:`交還 AI`,end:`結束`,autoTitle:`自動允許 AI 加入`,autoOn:e=>`不再詢問,以「${e}」加入`,autoOff:`每次 AI 要求加入時都先詢問你`,lockTitle:`AI 連線時鎖定螢幕`,lockOn:`AI 連線期間,你的點擊和滑動會被擋下`,lockOff:`AI 連線期間你仍可點擊和捲動,但請盡量別干擾 AI`,lockedToast:`AI 連線期間會鎖定螢幕`,unlockedToast:`AI 連線期間不再鎖定螢幕`,autoOffToast:`已關閉自動允許,AI 加入前會先詢問你`,autoDialogTitle:`要開啟自動允許嗎?`,autoDialogText:`開啟後,AI 要求加入這台裝置時不會再跳出詢問,而是直接以下方選擇的權限加入。每次自動加入時畫面上都會顯示通知,你隨時可以接管或結束,也可以在這裡關閉。`,turnOn:`開啟`,cancel:`取消`,autoOnToast:e=>`已開啟自動允許 · ${e}`,countdown:e=>`${e} 秒後自動拒絕`,agentName:`AI 助理`,autoAllowedToast:(e,t)=>`已自動允許「${e}」加入 · ${t}`,attachTitle:`AI 請求加入`,attachText:e=>`「${e}」想要檢視這個頁面,要允許嗎?`,confirmTitle:`請確認`,confirmText:e=>`AI 想要${e},要允許嗎?`,allow:`允許`,deny:`拒絕`},action:{quote:e=>`「${e}」`,click:e=>`點擊${e}`,enterActivate:e=>`在${e}上按 Enter`,enterSubmit:e=>`按 Enter 送出${e}`},agent:{missingParam:e=>`缺少參數 ${e}`,notString:e=>`參數 ${e} 必須是字串`,unknownMethod:e=>`未知的方法:${e}`,needLevel:e=>`需要 ${e} 權限`,takenOver:`使用者已接管控制,請等待使用者交還`,userDenied:`使用者拒絕了這項操作`,confirmBusy:`仍在等待使用者確認上一項操作`,unknownModifier:e=>`未知的修飾鍵:${e}`,unknownKey:e=>`未知的按鍵:${e}`,refNotInSnapshot:e=>`ref=${e} 不在最新的快照裡,請重新取得快照`,refDetached:e=>`ref=${e} 對應的元素已不在頁面上,請重新取得快照`,queryNeedsCriteria:`至少需要 text、role、name 其中一項`,noSuchRecord:e=>`工作階段記錄裡沒有 seq=${e} 的項目(可能已被清除)`,noSuchSession:e=>`這台裝置上沒有工作階段 ${e} 的記錄(只保留最近 3 次啟動)`,noSessionLog:`這台裝置上還沒有工作階段記錄(專案可能已關閉記錄,或頁面以 run({ record: false }) 停用了記錄)`,sessionLogUnavailable:`這個頁面無法使用 IndexedDB,因此沒有工作階段記錄`,readOnly:e=>`${e} 是唯讀的`,isSelect:e=>`${e} 是下拉式選單,請用 rwd.select`,notFillable:e=>`${e} 不是文字欄位,無法填入`,notSelect:e=>`${e} 不是下拉式選單(select),請用 click`,singleSelect:`這個下拉式選單只能選一個選項`,noSuchOption:(e,t)=>`下拉式選單裡沒有選項「${e}」,可選:${t.join(`、`)}`,optionDisabled:e=>`選項「${e}」已停用`,badUrl:e=>`無效的網址:${e}`,httpOnly:`只能開啟 http(s) 網址`,textAppearTimeout:e=>`等待文字「${e}」出現逾時`,textGoneTimeout:e=>`等待文字「${e}」消失逾時`,badFunction:e=>`無法解析 function:${e}`,notAFunction:`function 必須是函式運算式,例如 "() => document.title"`,elementDetached:e=>`元素 ${e} 已不在頁面上,請重新取得快照`,notActionable:(e,t)=>`元素 ${e} 無法操作:${t}`,notVisible:e=>`元素 ${e} 不可見`,reasonMoving:`元素位置持續變動(可能正在播放動畫)`,reasonOffscreen:`元素不在可視區域內`,reasonObscured:(e,t)=>`點擊位置被 ${e} 遮住(遮住它的元素 ref=${t},可以直接 click 它,例如點遮罩來關閉彈出視窗)`,overlayHeader:`[浮層] 以下元素蓋在頁面內容上方。點擊被擋住時,可以直接點它們(例如點遮罩來關閉彈出視窗):`,overlayMask:(e,t,n)=>`- 遮罩 ${e},覆蓋可視區域的 ${t}% [ref=${n}]`,overlayLayer:(e,t,n,r)=>`- 浮層 ${e}${t?`「${t}」`:``},覆蓋可視區域的 ${n}% [ref=${r}]`,reasonHidden:`元素不可見`,reasonDisabled:`元素已停用`,storageUnavailable:e=>`${e}Storage 無法使用`,badStorageArea:`參數 area 必須是 'local'、'session' 或 'cookie'`,requestFailed:`請求失敗`,noSuchRequest:e=>`找不到 id=${e} 的請求(可能已被捨棄)`,netFailed:(e,t)=>`${e} → 失敗(${t})`,wsFailed:e=>`WebSocket ${e} → 失敗`,tapped:(e,t)=>`點擊了${e}「${t}」`,tappedTag:(e,t)=>`點擊了${e} ${t}`,roles:{button:`按鈕`,link:`連結`,textbox:`文字欄位`,searchbox:`搜尋欄位`,checkbox:`核取方塊`,radio:`選項按鈕`,switch:`開關`,combobox:`下拉式選單`,listbox:`清單`,option:`選項`,tab:`分頁`,menuitem:`選單項目`,img:`圖片`,heading:`標題`,cell:`儲存格`,row:`列`,listitem:`清單項目`},element:`元素`}};var t=typeof window<`u`?window:{},n=t.RemoteWebviewDebugger;n&&n.registerLocale?n.registerLocale(e):(t.__RWD_LOCALES__=t.__RWD_LOCALES__||[]).push(e)})();
@@ -1,4 +1,4 @@
1
- /*! remote-webview-debugger sdk v0.2.0 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
1
+ /*! remote-webview-debugger sdk v0.2.1 | includes chobitsu (MIT), Playwright (Apache-2.0), licia (MIT), modern-screenshot (MIT) */
2
2
  // src/locales/zh-TW.ts
3
3
  var e = {
4
4
  id: "zh-TW",