purplemux 0.1.21 → 0.2.0
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/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +77 -77
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +13 -7
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00glsnv._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__05bsxq0._.js → [root-of-the-server]__00yjayf._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__01.~37j._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03l15.f._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__045vzzi._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04cr_m8._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0ff8o47._.js → [root-of-the-server]__04o.cbq._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05ij_ys._.js +42 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07gfnob._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07xijrd._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09gkm_6._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_.po82._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0auutl5._.js +5 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cjfc~l._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l~_wd0._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0m4quth._.js → [root-of-the-server]__0n61.a8._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ovn6yp._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qvunc5._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1c-6w._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__09w77m2._.js → [root-of-the-server]__0t7wqt6._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vi8p6v._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w3m-oz._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11j9~6h._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0xn_0ft._.js → [root-of-the-server]__12ksl6n._.js} +3 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12nr~pb._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0e8e4zn._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0isokfh._.js +1 -1
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_00-t8sq.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_136edwc._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_layout-store_ts_0fanx7c._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_session-parser_ts_0~rhicw._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_status-manager_ts_003hlhy._.js +13 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0au.ssp._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0_mc3i2._.js → _00ehnd~._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0qejycp._.js → _00rrt71._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_06yggfn._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0kjoxb9._.js → _08h9ynz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_08ytq3p._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0h~fc23._.js → _0_c~3id._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0-xx2s1._.js → _0_owbnq._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0al4.z9._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0b~zgl1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0quk21n._.js → _0dg4_bi._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0qy269j._.js → _0gp1meg._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0iy5a-w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0js4l3t._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0fuovbm._.js → _0lnui2f._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0nkeoiw._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0qbbxeq._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_06.nllk._.js → _0rxhzwm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0g258pg._.js → _0sfctwm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0c0hpua._.js → _0ulmx3c._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0k9ybcl._.js → _0wlh.pc._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_11wj.a4._.js → _0y5jzd3._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0z61aq-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0lhf6qf._.js → _0~.theb._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0si9.17._.js → _11rnj4l._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{messages_127a4ox._.js → messages_046iw4z._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{messages_005j2ko._.js → messages_0zr0cc7._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_notification_json_[json]_cjs_02k70lx._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_session_json_[json]_cjs_0b-1vpl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_settings_json_[json]_cjs_0ksu4_w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_notification_json_[json]_cjs_0jqq879._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_session_json_[json]_cjs_0jaymfk._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_settings_json_[json]_cjs_0qwl-zt._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_notification_json_[json]_cjs_0q.i2xj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_session_json_[json]_cjs_0jy1144._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_settings_json_[json]_cjs_0ce_kv6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_notification_json_[json]_cjs_0muj65q._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_session_json_[json]_cjs_0rz0g.c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_settings_json_[json]_cjs_0h_6lba._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_notification_json_[json]_cjs_03v~p7j._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_session_json_[json]_cjs_0cos-uy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_settings_json_[json]_cjs_0pg~fls._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_notification_json_[json]_cjs_0gx~jkl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_session_json_[json]_cjs_0x4saic._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_settings_json_[json]_cjs_07xpfc8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_notification_json_[json]_cjs_02mo05m._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_session_json_[json]_cjs_0-x8ftl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_settings_json_[json]_cjs_0frspzp._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_notification_json_[json]_cjs_03crije._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_session_json_[json]_cjs_0~2-kve._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_settings_json_[json]_cjs_08ex00.._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_notification_json_[json]_cjs_0g.576s._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_session_json_[json]_cjs_0zsvt_4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_settings_json_[json]_cjs_0piu0da._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_notification_json_[json]_cjs_07v9on4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_session_json_[json]_cjs_134xza~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_settings_json_[json]_cjs_0uazwgy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_notification_json_[json]_cjs_0.ktzjy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_session_json_[json]_cjs_0mv_~-8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_settings_json_[json]_cjs_09u0c5l._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_0cndrls._.js → node_modules_0kc8lix._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_05g_qd3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_10v_9d0._.js → src_components_0cflin8._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_04vn0dm._.js → src_components_0g.s~e7._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0gsv3ly._.js → src_components_0jrj_vu._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0iq~ool._.js → src_components_0rs9yzr._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-browser-title_ts_0bw6.cb._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-workspace-store_ts_0h40e5c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_message-namespaces_ts_0wjpvu5._.js +3 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +77 -77
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +4 -4
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_error/build-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/_error/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_error.js +2 -2
- package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/check-claude.js +1 -1
- package/.next/standalone/.next/server/pages/api/check-claude.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/branch.js +1 -1
- package/.next/standalone/.next/server/pages/api/git/branch.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/status.js +1 -1
- package/.next/standalone/.next/server/pages/api/git/status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/cwd.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/cwd.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/diff.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/diff.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +4 -4
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/message-history.js +1 -1
- package/.next/standalone/.next/server/pages/api/message-history.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/push/vapid-key.js +1 -1
- package/.next/standalone/.next/server/pages/api/push/vapid-key.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/projects.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/projects.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/sessions.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/uptime.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/uptime.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/hook.js +4 -4
- package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js +9 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js +1 -1
- package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/timeline/entries.js +1 -1
- package/.next/standalone/.next/server/pages/api/timeline/entries.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/timeline/message-counts/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/timeline/message-counts.js +5 -0
- package/.next/standalone/.next/server/pages/api/timeline/message-counts.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/timeline/message-counts.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/timeline/sessions.js +1 -1
- package/.next/standalone/.next/server/pages/api/timeline/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/capture.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/capture.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/info.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/info.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/plan-options.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/plan-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +5 -5
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/reset.js +3 -3
- package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/send-input.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/send-input.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/active.js +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/active.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/reorder.js +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/reorder.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/validate.js +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/validate.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace.js +4 -4
- package/.next/standalone/.next/server/pages/api/workspace.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/de/404.html +1 -1
- package/.next/standalone/.next/server/pages/de/500.html +1 -1
- package/.next/standalone/.next/server/pages/en/404.html +1 -1
- package/.next/standalone/.next/server/pages/en/500.html +1 -1
- package/.next/standalone/.next/server/pages/es/404.html +1 -1
- package/.next/standalone/.next/server/pages/es/500.html +1 -1
- package/.next/standalone/.next/server/pages/fr/404.html +1 -1
- package/.next/standalone/.next/server/pages/fr/500.html +1 -1
- package/.next/standalone/.next/server/pages/index/build-manifest.json +12 -12
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +6 -6
- package/.next/standalone/.next/server/pages/index.js +13 -13
- package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/ja/404.html +1 -1
- package/.next/standalone/.next/server/pages/ja/500.html +1 -1
- package/.next/standalone/.next/server/pages/ko/404.html +1 -1
- package/.next/standalone/.next/server/pages/ko/500.html +1 -1
- package/.next/standalone/.next/server/pages/login/build-manifest.json +10 -10
- package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/login.js +2 -2
- package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
- package/.next/standalone/.next/server/pages/reports/build-manifest.json +16 -16
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports.js +9 -9
- package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/reset/build-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/reset/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reset.js +3 -3
- package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/ru/404.html +1 -1
- package/.next/standalone/.next/server/pages/ru/500.html +1 -1
- package/.next/standalone/.next/server/pages/stats/build-manifest.json +13 -13
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats.js +6 -6
- package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required.js +3 -3
- package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tr/404.html +1 -1
- package/.next/standalone/.next/server/pages/tr/500.html +1 -1
- package/.next/standalone/.next/server/pages/webview/build-manifest.json +10 -10
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview.js +10 -10
- package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
- package/.next/standalone/.next/server/pages-manifest.json +1 -0
- package/.next/standalone/.next/static/{dcByQy16pcz2rzj9snwtK → WXAyTQ0PHZnxXXCwEZpit}/_buildManifest.js +9 -8
- package/.next/standalone/.next/static/chunks/0-97ruc25d2lz.js +1 -0
- package/.next/standalone/.next/static/chunks/{17e9_m-u1zvfx.js → 0-xrsiia9hc.c.js} +1 -1
- package/.next/standalone/.next/static/chunks/{135rnnu.-sh80.js → 0.ecwkadp7-hq.js} +1 -1
- package/.next/standalone/.next/static/chunks/00nx1s6rpu537.js +1 -0
- package/.next/standalone/.next/static/chunks/{0nin7ftvq8x5c.js → 00ziyk306y55s.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0kebzqtn4norb.js → 01-fb9rb-21.a.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0dthloew7zc8k.js → 010m3dplwy4n6.js} +16 -16
- package/.next/standalone/.next/static/chunks/{0_7qn_xpf-6l~.js → 02mfn213kze9c.js} +2 -2
- package/.next/standalone/.next/static/chunks/02r-a1_lz7fuk.js +1 -0
- package/.next/standalone/.next/static/chunks/04bbxzycy0y90.js +1 -0
- package/.next/standalone/.next/static/chunks/{0y--b123-dayk.js → 04cl8pvql07vz.js} +1 -1
- package/.next/standalone/.next/static/chunks/{15wkoi26~8omr.js → 04f25y8yc8j00.js} +1 -1
- package/.next/standalone/.next/static/chunks/{02.xbkqbezb~v.js → 04uzwc8c9u49~.js} +1 -1
- package/.next/standalone/.next/static/chunks/05oh32ya2uzfq.js +1 -0
- package/.next/standalone/.next/static/chunks/06e51nokt~dtt.js +1 -0
- package/.next/standalone/.next/static/chunks/06ypydsl._u~2.js +5 -0
- package/.next/standalone/.next/static/chunks/07-xm--o034du.js +1 -0
- package/.next/standalone/.next/static/chunks/071neb1eikeoh.js +1 -0
- package/.next/standalone/.next/static/chunks/07i6~xrmgspp8.js +1 -0
- package/.next/standalone/.next/static/chunks/{0i7zwsw_~llk0.js → 07v3udp2qhc02.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0kox55ju9c.e4.js → 088o~nd5em_1d.js} +1 -1
- package/.next/standalone/.next/static/chunks/{10_1w.i.mluxp.js → 08xz_z9u4ex9t.js} +1 -1
- package/.next/standalone/.next/static/chunks/{02119z8xemosp.js → 08yjqhf82rx~h.js} +1 -1
- package/.next/standalone/.next/static/chunks/095e2xf3z6x3g.js +23 -0
- package/.next/standalone/.next/static/chunks/{040hwmh16ihpj.js → 09agwg~-xbxbs.js} +1 -1
- package/.next/standalone/.next/static/chunks/09tinkgkd8br_.js +1 -0
- package/.next/standalone/.next/static/chunks/09vjzvj4~rwbf.js +1 -0
- package/.next/standalone/.next/static/chunks/{0puhant9cy0xw.js → 0__ve3txz-02p.js} +1 -1
- package/.next/standalone/.next/static/chunks/0a1hi9y0lwv3j.js +1 -0
- package/.next/standalone/.next/static/chunks/{0fzb0m-2k2x14.js → 0bzbaprexb9od.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0ggsfsmm~hj5t.js → 0cfpdp0_-.4aj.js} +1 -1
- package/.next/standalone/.next/static/chunks/0chjvj73yfmoj.js +1 -0
- package/.next/standalone/.next/static/chunks/{0yi.kp2rt4-nc.js → 0ea-k_kbq5gi1.js} +1 -1
- package/.next/standalone/.next/static/chunks/{082eokcz_e-4q.js → 0f81tdf_8utww.js} +1 -1
- package/.next/standalone/.next/static/chunks/{14ajlpt1s6ueh.js → 0ff6a07hvp4pu.js} +2 -2
- package/.next/standalone/.next/static/chunks/{105.cpxealiud.js → 0fotmrplo6yc7.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0h_vfy~qxk1_6.js → 0h-7ntqpip4oi.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0wvyw8fxpnmre.js → 0h~_fdj60t_~l.js} +1 -1
- package/.next/standalone/.next/static/chunks/{04_s.sj1oagqr.js → 0i2uqmry6cyl_.js} +1 -1
- package/.next/standalone/.next/static/chunks/0if5fmp94~nc2.js +12 -0
- package/.next/standalone/.next/static/chunks/{1235zq5em7nh2.js → 0iw7xjsfo1v-u.js} +10 -10
- package/.next/standalone/.next/static/chunks/0jxk8j~j30thp.js +1 -0
- package/.next/standalone/.next/static/chunks/{0_eof.53ko6d_.js → 0lz-p_awksh5e.js} +1 -1
- package/.next/standalone/.next/static/chunks/0m_amua611xl0.js +5 -0
- package/.next/standalone/.next/static/chunks/0nyar-7g9rya6.js +1 -0
- package/.next/standalone/.next/static/chunks/0o6esya.vhm1..js +1 -0
- package/.next/standalone/.next/static/chunks/0oxlivdn8c89b.js +1 -0
- package/.next/standalone/.next/static/chunks/{0iiahbpxxksju.js → 0p1vmcv-mlsg5.js} +1 -1
- package/.next/standalone/.next/static/chunks/{14067kbmixmm6.js → 0pw-284q1gfk3.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0turlr93lvkg8.js → 0t0-4sn-nqqld.js} +1 -1
- package/.next/standalone/.next/static/chunks/{09jl7_l-yth-3.js → 0t76mt4_ijxw7.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0_nr91n2-npr6.js → 0u-1zto-umjh9.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0x4khblf0c7-p.js → 0u9~wuf2zbs5z.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0krb2wvo2_ipb.js → 0unvbz84l4g9h.js} +1 -1
- package/.next/standalone/.next/static/chunks/{12up4kbv36k4r.js → 0w52yh2srwcs0.js} +2 -2
- package/.next/standalone/.next/static/chunks/{0ml0ppx6kwe2_.js → 0w9~wt6~_cxhf.js} +1 -1
- package/.next/standalone/.next/static/chunks/0wp13r5su.j3e.js +1 -0
- package/.next/standalone/.next/static/chunks/{0e~.6y_x93o06.js → 0y3fmkya..f_6.js} +13 -13
- package/.next/standalone/.next/static/chunks/0~ei.a78nuwqe.js +1 -0
- package/.next/standalone/.next/static/chunks/{0hqhf5soi_25r.js → 0~lnp45fxxtgz.js} +1 -1
- package/.next/standalone/.next/static/chunks/0~nlz9.lltzrz.js +1 -0
- package/.next/standalone/.next/static/chunks/10bvbbw1062os.js +1 -0
- package/.next/standalone/.next/static/chunks/{01sxhicgu6p69.js → 11ess6mn2988z.js} +10 -10
- package/.next/standalone/.next/static/chunks/11gch78bg_qsn.js +1 -0
- package/.next/standalone/.next/static/chunks/{0zzlz_qu90xvc.js → 11nk1lwom62oe.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0sj1hijbxwqzi.js → 131tx--pi8.tm.js} +1 -1
- package/.next/standalone/.next/static/chunks/13zzmkwag6vsm.css +1 -0
- package/.next/standalone/.next/static/chunks/13~7v30_nnqks.js +1 -0
- package/.next/standalone/.next/static/chunks/{0arxgyek93av0.js → 17deooyefr~9o.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0jhs9_arn872p.js → 17e2iymrk7eoa.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0kima6zc7cl2p.js → 17et6y09q052u.js} +1 -1
- package/.next/standalone/.next/static/chunks/17jcucuef_33-.js +1 -0
- package/.next/standalone/.next/static/chunks/{turbopack-11cbtg95iwob2.js → turbopack-0-itu0o9y_vq8.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0t_pmdbcbax~k.js → turbopack-0.28.d-q12n3p.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0tl7oxj3760qz.js → turbopack-0.4ipr_kch~.s.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-02re16zyko_-d.js → turbopack-0g80nrinbfgtk.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-03ch5ephon-wk.js → turbopack-0h0~tr4tgq3aa.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0k.5aa0_xv2hq.js → turbopack-0hwi_g-tegs_u.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0au9jjcv_8-gl.js → turbopack-0np.oib7-.1fp.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-02yx2w1m.5ub9.js → turbopack-0qmx66h203l93.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0vqdj~g~ggw3x.js → turbopack-11utvoktq4lmr.js} +1 -1
- package/.next/standalone/messages/de/notification.json +3 -1
- package/.next/standalone/messages/de/session.json +5 -2
- package/.next/standalone/messages/de/settings.json +22 -1
- package/.next/standalone/messages/en/notification.json +3 -1
- package/.next/standalone/messages/en/session.json +5 -2
- package/.next/standalone/messages/en/settings.json +20 -1
- package/.next/standalone/messages/es/notification.json +3 -1
- package/.next/standalone/messages/es/session.json +5 -2
- package/.next/standalone/messages/es/settings.json +22 -1
- package/.next/standalone/messages/fr/notification.json +3 -1
- package/.next/standalone/messages/fr/session.json +5 -2
- package/.next/standalone/messages/fr/settings.json +22 -1
- package/.next/standalone/messages/ja/notification.json +3 -1
- package/.next/standalone/messages/ja/session.json +5 -2
- package/.next/standalone/messages/ja/settings.json +22 -1
- package/.next/standalone/messages/ko/notification.json +3 -1
- package/.next/standalone/messages/ko/session.json +5 -2
- package/.next/standalone/messages/ko/settings.json +20 -1
- package/.next/standalone/messages/pt-BR/notification.json +3 -1
- package/.next/standalone/messages/pt-BR/session.json +5 -2
- package/.next/standalone/messages/pt-BR/settings.json +22 -1
- package/.next/standalone/messages/ru/notification.json +3 -1
- package/.next/standalone/messages/ru/session.json +5 -2
- package/.next/standalone/messages/ru/settings.json +22 -1
- package/.next/standalone/messages/tr/notification.json +3 -1
- package/.next/standalone/messages/tr/session.json +5 -2
- package/.next/standalone/messages/tr/settings.json +22 -1
- package/.next/standalone/messages/zh-CN/notification.json +3 -1
- package/.next/standalone/messages/zh-CN/session.json +5 -2
- package/.next/standalone/messages/zh-CN/settings.json +22 -1
- package/.next/standalone/messages/zh-TW/notification.json +3 -1
- package/.next/standalone/messages/zh-TW/session.json +5 -2
- package/.next/standalone/messages/zh-TW/settings.json +22 -1
- package/.next/standalone/package.json +4 -5
- package/.next/standalone/server.js +1 -1
- package/dist/server.js +219 -244
- package/package.json +4 -5
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__019s3sg._.js +0 -15
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02d5mfa._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__050uepg._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__093j355._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cy9s8s._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dn3vc8._.js +0 -5
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g99747._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ge7g~x._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iqf2xr._.js +0 -15
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ky2xd.._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l806ne._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mm5n3z._.js +0 -15
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0psi612._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qtw~r6._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ysyw3z._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~7f-os._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10b7n-k._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-e2yqy._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vwkkwh._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0mu2snc._.js +0 -3
- package/.next/standalone/.next/static/chunks/0.me5n9dvrgga.js +0 -1
- package/.next/standalone/.next/static/chunks/04u8dbn0ogxqm.js +0 -5
- package/.next/standalone/.next/static/chunks/0617badw.sq7c.js +0 -1
- package/.next/standalone/.next/static/chunks/06ik0y0xz_pxd.js +0 -5
- package/.next/standalone/.next/static/chunks/06~0v3h-9qr-b.js +0 -1
- package/.next/standalone/.next/static/chunks/0_iwf7xd96dhg.js +0 -1
- package/.next/standalone/.next/static/chunks/0b.80wy8lilvw.js +0 -1
- package/.next/standalone/.next/static/chunks/0c9nugbfmzaq4.js +0 -23
- package/.next/standalone/.next/static/chunks/0da0otp~vxk80.js +0 -1
- package/.next/standalone/.next/static/chunks/0diujbo1qkcle.css +0 -1
- package/.next/standalone/.next/static/chunks/0ep6reedai0y6.js +0 -1
- package/.next/standalone/.next/static/chunks/0f6dlhth6ll0c.js +0 -12
- package/.next/standalone/.next/static/chunks/0j.bb896cs98k.js +0 -1
- package/.next/standalone/.next/static/chunks/0j630d8~~4rbz.js +0 -1
- package/.next/standalone/.next/static/chunks/0k7kp5g9etss9.js +0 -1
- package/.next/standalone/.next/static/chunks/0ng68zj-fjm.w.js +0 -1
- package/.next/standalone/.next/static/chunks/0nsq-sayv38ks.js +0 -1
- package/.next/standalone/.next/static/chunks/0nvalz7iwy6qc.js +0 -1
- package/.next/standalone/.next/static/chunks/0rr7vbxqscvhw.js +0 -1
- package/.next/standalone/.next/static/chunks/0s66~z6yys6zz.js +0 -1
- package/.next/standalone/.next/static/chunks/0s8imclb5deef.js +0 -1
- package/.next/standalone/.next/static/chunks/0u7flh--27u75.js +0 -1
- package/.next/standalone/.next/static/chunks/0vrlsk_eqnj7q.js +0 -1
- package/.next/standalone/.next/static/chunks/0vw93vbkgsb1a.js +0 -1
- package/.next/standalone/.next/static/chunks/12i5z~h-3ys7k.js +0 -1
- package/.next/standalone/.next/static/chunks/171khl108g-m8.js +0 -1
- package/.next/standalone/.next/static/chunks/17fzeqm4m_x67.js +0 -1
- /package/.next/standalone/.next/static/{dcByQy16pcz2rzj9snwtK → WXAyTQ0PHZnxXXCwEZpit}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{dcByQy16pcz2rzj9snwtK → WXAyTQ0PHZnxXXCwEZpit}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,182936,(e,t,r)=>{t.exports=JSON.parse('{"title":"Paramètres","tabs":{"general":"Général","appearance":"Apparence","terminal":"Terminal","editor":"Éditeur","claude":"Claude","auth":"Authentification","tailscale":"Tailscale","quickPrompts":"Prompts rapides","sidebarItems":"Barre latérale","agent":"Agent","notification":"Notification","system":"Système"},"general":{"theme":"Thème","themeDescription":"Sélectionnez le thème d\'affichage.","language":"Langue","languageDescription":"Sélectionnez la langue de l\'interface.","fontSize":"Taille de police","fontSizeDescription":"Ajustez la taille de police de l\'interface et du terminal.","fontSizeNormal":"Normal","fontSizeLarge":"Grand","fontSizeXLarge":"Très grand","keyboardShortcuts":"Raccourcis clavier","keyboardShortcutsDescription":"Afficher et personnaliser tous les raccourcis clavier.","openShortcuts":"Ouvrir"},"appearance":{"customCSS":"CSS personnalisé","customCSSDescription":"Remplacez les variables CSS pour personnaliser les couleurs et les styles.","apply":"Appliquer","reset":"Réinitialiser","resetConfirm":"Réinitialiser tout le CSS personnalisé ?","applied":"CSS personnalisé appliqué.","availableVariables":"Variables disponibles","placeholder":":root {\\n --background: oklch(0.98 0 0);\\n --sidebar: oklch(0.95 0.01 220);\\n}\\n.dark {\\n --background: oklch(0.08 0 0);\\n}"},"terminal":{"theme":"Thème du terminal","themeDescription":"Sélectionnez les thèmes de couleurs du terminal pour chaque mode."},"editor":{"preset":"Éditeur","presetDescription":"Choisissez l\'éditeur à ouvrir lorsque vous cliquez sur le bouton EDITOR dans l\'en-tête.","presets":{"code-server":"Code Server (Web)","vscode":"VS Code","vscode-insiders":"VS Code Insiders","cursor":"Cursor","windsurf":"Windsurf","zed":"Zed","custom":"URL personnalisée","off":"Désactivé"},"url":"URL de l\'éditeur","urlDescription":"Saisissez l\'URL web de votre instance Code Server.","urlHelp":"Installez et lancez <link>code-server</link> pour utiliser VS Code dans le navigateur. Le paramètre <code>?folder=</code> est automatiquement ajouté à l\'URL.","customTemplate":"Modèle d\'URL","customTemplateDescription":"Saisissez un modèle d\'URL qui sera ouvert avec le dossier actuel.","customHelp":"Utilisez <folder></folder> pour le chemin absolu ou <folderEncoded></folderEncoded> pour le chemin encodé en URL.","localIdeHint":"Ouvre l\'IDE sélectionné localement. L\'IDE doit être installé sur la machine exécutant le navigateur ou l\'application de bureau.","offHint":"Le bouton éditeur sera masqué de l\'en-tête.","preview":"Aperçu (avec dossier d\'exemple)","errorHttpRequired":"L\'URL doit commencer par http:// ou https://","errorCustomTemplate":"Le modèle doit contenir {folder} ou {folderEncoded}"},"claude":{"skipPermissions":"Ignorer les vérifications de permissions","skipPermissionsDescription":"Ajoute l\'option --dangerously-skip-permissions lors de l\'exécution de Claude CLI."},"auth":{"changePassword":"Changer le mot de passe","changePasswordDescription":"Les nouveaux mots de passe sont hachés en SHA-512 avant enregistrement.","newPasswordPlaceholder":"Saisissez un nouveau mot de passe (4 car. min.)","passwordPlaceholder":"Saisissez un mot de passe (4 car. min.)","resetHint":"Pour réinitialiser, supprimez ~/.purplemux/config.json et {action}.","restartServer":"redémarrez le serveur","restartApp":"quittez et redémarrez l\'application","savedRestart":"Enregistré. Les modifications prendront effet après le {action}.","restartServerAction":"redémarrage du serveur","restartAppAction":"redémarrage de l\'application"},"notification":{"enable":"Activer les notifications","enableDescription":"Affiche des notifications système lorsque les tâches Claude sont terminées. Fonctionne uniquement dans l\'application Electron.","permissionDenied":"Autorisation des notifications du navigateur refusée. Veuillez l\'autoriser dans les paramètres du navigateur.","notSupported":"Web Push n\'est pas pris en charge par ce navigateur.","toastSection":"Toast dans l\'application","toastSectionDescription":"S\'affiche uniquement lorsque la fenêtre est au premier plan. Les notifications système gèrent l\'arrière-plan.","toastEnable":"Afficher un toast à la fin d\'une tâche","toastEnableDescription":"Un toast éphémère s\'affiche en plus du compteur de la barre latérale.","toastDuration":"Durée","toastDurationDescription":"Durée d\'affichage du toast avant sa fermeture automatique.","toastDurationUnit":"secondes","toastPositionDesktop":"Position sur ordinateur","toastPositionDesktopDescription":"Où les toasts apparaissent sur les écrans larges.","toastPositionMobile":"Position sur mobile","toastPositionMobileDescription":"Où les toasts apparaissent sur les écrans étroits.","positions":{"top-left":"En haut à gauche","top-center":"En haut au centre","top-right":"En haut à droite","bottom-left":"En bas à gauche","bottom-center":"En bas au centre","bottom-right":"En bas à droite"}},"agent":{"enableMenu":"Activer le menu Agent","enableMenuDescription":"Affiche le menu Agent dans la barre latérale. Cette fonctionnalité est actuellement en bêta."},"system":{"networkAccess":"Accès réseau","networkAccessDescription":"Contrôle quels réseaux peuvent accéder à purplemux. Prend effet après redémarrage du serveur.","networkAccessLocked":"Contrôlé par la variable d\'environnement HOST.","restartRequired":"Les modifications prennent effet après redémarrage du serveur.","networkAccessOptions":{"localhost":{"label":"Localhost uniquement","description":"Uniquement cette machine. Le plus sûr ; le port est fermé aux autres appareils."},"tailscale":{"label":"Localhost + Tailscale","description":"Cette machine et les pairs Tailscale. Le LAN et Internet public sont bloqués."},"all":{"label":"Toutes les interfaces","description":"Autorise les connexions depuis tout réseau accessible, y compris le LAN et Internet public."}},"showResources":"Afficher les ressources système","showResourcesDescription":"Affiche l\'utilisation du CPU, de la mémoire et des sessions tmux dans l\'en-tête.","attachedImages":"Images jointes","attachedImagesDescription":"Les images jointes dans la barre de saisie sont stockées dans ~/.purplemux/uploads/. Les fichiers de plus de 24 heures sont supprimés automatiquement au démarrage du serveur.","cleanAttachedImages":"Nettoyer maintenant","attachedImagesCleaned":"{count} fichiers supprimés","attachedImagesNothing":"Aucune image à supprimer","tmuxReset":"Réinitialiser tmux","tmuxResetDescription":"Termine toutes les sessions tmux et {action}. Utilisez cette option lorsque des modifications de paramètres doivent être appliquées.","tmuxResetConfirm":"Tous les processus en cours dans le terminal seront arrêtés. Continuer ?","restartServer":"redémarre le serveur","restartApp":"redémarre l\'application"},"tailscale":{"notInstalled":"Tailscale CLI n\'est pas installé","notInstalledDescription":"Installez Tailscale pour accéder à votre réseau en toute sécurité depuis l\'extérieur.","commentMac":"# macOS","commentMacAppStore":"# ou installer depuis le Mac App Store","commentLinux":"# Linux (Ubuntu/Debian)","commentAfterInstall":"# Après l\'installation, connectez-vous","installGuide":"Pour des instructions d\'installation détaillées, visitez le <link>site officiel de Tailscale</link>.","notRunning":"Tailscale n\'est pas en cours d\'exécution","notRunningDescription":"Veuillez démarrer Tailscale.","deviceInfo":"Informations sur l\'appareil","host":"Hôte","dns":"DNS","ip":"IP","version":"Version","nonDefaultPortTitle":"Le serveur fonctionne actuellement sur le port {port}","nonDefaultPortDescription":"Le port par défaut ({defaultPort}) était occupé, un port différent a donc été attribué automatiquement. Le port attribué automatiquement peut changer après le {restartAction}. Il est donc recommandé de définir le port local sur {defaultPort} au lieu de {currentPort} dans les paramètres Tailscale Serve.","appRestart":"redémarrage de l\'application","serverRestart":"redémarrage du serveur","commentFixedPort":"# Pour utiliser un port fixe ({port})","commentOrTerminate":"# ou arrêtez le processus occupant le port {port} et redémarrez","serveStatus":"État du Serve","noActiveServe":"Aucune entrée Serve active.","httpsPort":"Port HTTPS","proxyTarget":"Cible du proxy","url":"URL","addServe":"Ajouter un Serve","setupGuide":"Guide de configuration","commentStep1Install":"# 1. Installer la CLI","commentStep2Activate":"# 2. Connect","commentStep3Add":"# 3. Ajouter Serve","localPort":"Port local","add":"Ajouter","enterPort":"Veuillez saisir un port","addedToast":"HTTPS :{httpsPort} → localhost:{localPort} ajouté","removedToast":"HTTPS :{httpsPort} supprimé"},"quickPrompts":{"title":"Prompts rapides","description":"Gérez les boutons de prompts affichés au-dessus du champ de saisie.","builtinSection":"Prompts intégrés","customSection":"Prompts personnalisés","itemsSection":"Prompts","addPrompt":"Ajouter un prompt","editPrompt":"Modifier le prompt","nameLabel":"Nom","namePlaceholder":"ex. Revue de code","promptLabel":"Prompt","promptPlaceholder":"ex. Veuillez vérifier les modifications en cours.","save":"Enregistrer","cancel":"Annuler","addButton":"Ajouter un prompt","resetToDefault":"Réinitialiser par défaut","resetTitle":"Réinitialiser par défaut","resetDescription":"Tous les prompts personnalisés seront supprimés et les prompts intégrés seront réactivés.","resetCancel":"Annuler","resetConfirm":"Réinitialiser","deleteTitle":"Supprimer le prompt","deleteDescription":"Voulez-vous vraiment supprimer ce prompt ?","deleteCancel":"Annuler","deleteConfirm":"Supprimer"},"sidebarItems":{"title":"Éléments de la barre latérale","description":"Gérez les raccourcis affichés en bas de la barre latérale.","itemsSection":"Éléments","addItem":"Ajouter un élément","editItem":"Modifier l\'élément","nameLabel":"Nom","namePlaceholder":"ex. Grafana","iconLabel":"Icône","iconSearch":"Rechercher des icônes...","iconNotFound":"Aucune icône trouvée","urlLabel":"URL","urlPlaceholder":"ex. https://grafana.example.com","save":"Enregistrer","cancel":"Annuler","addButton":"Ajouter un élément","resetToDefault":"Réinitialiser par défaut","resetTitle":"Réinitialiser par défaut","resetDescription":"Tous les éléments personnalisés seront supprimés et les éléments intégrés seront réactivés.","resetCancel":"Annuler","resetConfirm":"Réinitialiser","deleteTitle":"Supprimer l\'élément","deleteDescription":"Voulez-vous vraiment supprimer cet élément ?","deleteCancel":"Annuler","deleteConfirm":"Supprimer"},"saveFailed":"Impossible de sauvegarder les paramètres"}')}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,432270,e=>{"use strict";var t=e.i(391398),s=e.i(191788),a=e.i(432237),n=e.i(398957),l=e.i(482192),r=e.i(972733),i=e.i(352819),o=e.i(199648),c=e.i(679935),u=e.i(939310),d=e.i(335288),f=e.i(806185),m=e.i(490034),x=e.i(453783),h=e.i(868462),p=e.i(570513),b=e.i(876208),g=e.i(714233),j=e.i(883590),C=e.i(57098);let y=({open:e,onOpenChange:a,sessionName:n})=>{let l=(0,i.useTranslations)("terminal"),[r,o]=(0,s.useState)(""),[d,f]=(0,s.useState)(!1),[m,x]=(0,s.useState)(null),[h,p]=(0,s.useState)(null),g=e&&n?n:null;g!==h&&(p(g),o(""),x(null),f(null!==g)),(0,s.useEffect)(()=>{if(!h)return;let e=!1;return fetch(`/api/tmux/capture?session=${encodeURIComponent(h)}`).then(e=>{if(!e.ok)throw Error("capture failed");return e.json()}).then(t=>{e||(o((t.content??"").replace(/\s+$/g,"")),f(!1))}).catch(()=>{e||(x(l("copyPaneCaptureFailed")),f(!1))}),()=>{e=!0}},[h,l]);let j=(0,s.useCallback)(async()=>{if(r)try{await navigator.clipboard.writeText(r),c.toast.success(l("copyPaneSuccess"),{duration:1500}),a(!1)}catch{c.toast.error(l("copyPaneCopyFailed"))}},[r,a,l]);return(0,t.jsx)(C.Drawer,{open:e,onOpenChange:a,children:(0,t.jsxs)(C.DrawerContent,{className:"h-[80dvh] data-[vaul-drawer-direction=bottom]:max-h-[80dvh]",children:[(0,t.jsxs)(C.DrawerHeader,{className:"pb-2",children:[(0,t.jsx)(C.DrawerTitle,{children:l("copyPaneDrawerTitle")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("copyPaneDrawerHint")})]}),(0,t.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-3 px-4 pb-4",children:[d?(0,t.jsx)("div",{className:"flex flex-1 items-center justify-center py-8 text-sm text-muted-foreground",children:l("copyPaneLoading")}):m?(0,t.jsx)("div",{className:"flex flex-1 items-center justify-center py-8 text-sm text-ui-red",children:m}):(0,t.jsx)("textarea",{value:r,onChange:e=>o(e.target.value),spellCheck:!1,autoCorrect:"off",autoCapitalize:"off",className:"min-h-0 flex-1 w-full resize-none rounded border border-border bg-muted/30 p-3 font-mono text-xs text-foreground outline-none focus:ring-1 focus:ring-ring"}),(0,t.jsxs)(u.Button,{onClick:j,disabled:d||!!m||!r,className:"w-full",children:[(0,t.jsx)(b.Copy,{className:"mr-2 h-4 w-4"}),l("copyPaneCopyAll")]})]})]})})};var S=e.i(399267),k=e.i(320183),v=e.i(353533),w=e.i(212283);let N=[{type:"terminal",label:"TERMINAL"},{type:"claude-code",label:"CLAUDE"},{type:"diff",label:"DIFF"}],T=({tabId:e,tabName:a,sessionName:n,panelType:l,onSwitchPanelType:o,onCreateTab:c,onClose:u})=>{let d=(0,i.useTranslations)("mobile"),f=(0,i.useTranslations)("common"),m=(0,i.useTranslations)("terminal"),[x,C]=(0,s.useState)(!1),T=(0,S.default)(t=>t.tabs[e]),P=T?.terminalStatus==="server"?"text-ui-green":T?.terminalStatus==="running"?"text-ui-blue":"text-muted-foreground/50";return(0,t.jsxs)("div",{className:"flex h-10 shrink-0 items-center border-b border-border/50 bg-background",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2 px-3",children:[(0,t.jsx)(j.default,{tabId:e,panelType:l}),"claude-code"===l?(0,t.jsx)(g.default,{size:16}):"diff"===l?(0,t.jsx)(p.GitCompareArrows,{className:"h-4 w-4 shrink-0 text-muted-foreground"}):(0,t.jsx)(k.default,{process:T?.currentProcess,className:(0,v.cn)("h-3.5 w-3.5 shrink-0",P)}),(0,t.jsx)("span",{className:"truncate text-xs text-foreground",children:a})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-0.5 pr-0.5",children:[(0,t.jsx)("div",{className:"flex items-center gap-px",children:N.map(e=>(0,t.jsx)("button",{className:(0,v.cn)("rounded px-1.5 py-0.5 text-[10px] font-medium tracking-wide transition-colors",l===e.type?"bg-accent text-foreground":"text-muted-foreground/60 hover:text-muted-foreground"),onClick:()=>o(e.type),children:e.label},e.type))}),"terminal"===l&&!!n&&(0,t.jsx)("button",{className:"flex h-10 w-10 items-center justify-center text-muted-foreground transition-colors",onClick:()=>C(!0),"aria-label":m("copyPaneLabel"),children:(0,t.jsx)(b.Copy,{size:16})}),(0,t.jsx)("button",{className:"flex h-10 w-10 items-center justify-center text-muted-foreground transition-colors",onClick:c,"aria-label":d("newTab"),children:(0,t.jsx)(r.Plus,{size:16})}),(0,t.jsxs)(w.AlertDialog,{children:[(0,t.jsx)(w.AlertDialogTrigger,{className:"flex h-10 w-10 items-center justify-center text-muted-foreground transition-colors","aria-label":d("closeTab"),children:(0,t.jsx)(h.X,{size:16})}),(0,t.jsxs)(w.AlertDialogContent,{children:[(0,t.jsxs)(w.AlertDialogHeader,{children:[(0,t.jsx)(w.AlertDialogTitle,{children:d("closeTab")}),(0,t.jsx)(w.AlertDialogDescription,{children:d("closeTabConfirm",{name:a})})]}),(0,t.jsxs)(w.AlertDialogFooter,{children:[(0,t.jsx)(w.AlertDialogCancel,{children:f("cancel")}),(0,t.jsx)(w.AlertDialogAction,{className:"bg-ui-red hover:bg-ui-red/80",onClick:u,children:f("close")})]})]})]})]}),(0,t.jsx)(y,{open:x,onOpenChange:C,sessionName:n})]})};var P=e.i(125687),R=e.i(40830),I=e.i(236495),D=e.i(244046),L=e.i(355327),E=e.i(756494),A=e.i(391046),z=e.i(918324),B=e.i(231382),M=e.i(377181),$=e.i(418760),W=e.i(815435),O=e.i(967086),F=e.i(541301),H=e.i(767708),U=e.i(650001),V=e.i(441693),_=e.i(17122),K=e.i(273062),q=e.i(87093),G=e.i(148141),J=e.i(624306),X=e.i(706140),Y=e.i(529511);let Z=({open:e,onOpenChange:s,meta:a,toolCount:n,toolBreakdown:l,branch:r,isBranchLoading:i,sessionId:o,gitStatus:c,tmuxInfo:u})=>(0,t.jsx)(Y.Sheet,{open:e,onOpenChange:s,children:(0,t.jsxs)(Y.SheetContent,{side:"bottom",showCloseButton:!1,className:"rounded-t-xl",children:[(0,t.jsx)("div",{className:"mx-auto mt-2 h-1.5 w-12 rounded-full bg-muted-foreground/20"}),(0,t.jsx)("div",{className:"px-4 pt-4 pb-6",children:(0,t.jsx)(X.MetaDetail,{title:a.title,sessionId:o,createdAt:a.createdAt,updatedAt:a.updatedAt,fileSize:a.fileSize,userCount:a.userCount,assistantCount:a.assistantCount,toolCount:n,toolBreakdown:l,inputTokens:a.inputTokens,outputTokens:a.outputTokens,totalCost:a.totalCost,currentContextTokens:a.currentContextTokens,contextWindowSize:a.contextWindowSize,usedPercentage:a.usedPercentage,model:a.model,branch:r,isBranchLoading:i,gitStatus:c,tmuxInfo:u})})]})});var Q=e.i(639530);let ee=({tabId:e,wsId:a,sessionName:n,claudeSessionId:l,cwd:r,sendStdin:u,terminalWsConnected:d,focusTerminal:f,focusInputRef:m,setInputValueRef:x,onCliStateChange:h,onInputVisibleChange:p,onRestartSession:b,onNewSession:g})=>{let j=(0,i.useTranslations)("terminal"),{prompts:C}=(0,Q.default)(),[y,k]=(0,s.useState)(null),[v,w]=(0,s.useState)(!1),N=(0,s.useRef)(void 0),T=(0,S.default)(t=>e?t.tabs[e]?.claudeProcess??null:null),P=(0,S.default)(t=>!e||(t.tabs[e]?.claudeInstalled??!0)),R=(0,S.default)(t=>e?t.tabs[e]?.cliState??"inactive":"inactive"),I=(0,S.default)(t=>e?t.tabs[e]?.compactingSince??null:null),D=(0,s.useCallback)(()=>{k(null)},[]),L=(0,s.useCallback)(e=>{k(null),c.toast.warning(j("resumeBlocked"),{description:e.processName?j("resumeBlockedProcess",{name:e.processName}):void 0})},[j]),E=(0,s.useCallback)(()=>{k(null),c.toast.error(j("resumeFailed"))},[j]),{entries:A,tasks:Y,sessionId:ee,jsonlPath:et,sessionSummary:es,initMeta:ea,sessionStats:en,claudeProcess:el,wsStatus:er,isLoading:ei,error:eo,loadMore:ec,hasMore:eu,retrySession:ed,sendResume:ef,addPendingUserMessage:em,removePendingUserMessage:ex}=(0,B.default)({sessionName:n,claudeSessionId:l,enabled:!!n,resumeCallbacks:{onResumeStarted:D,onResumeBlocked:L,onResumeError:E},onSync:e?t=>{let s=Date.now();null!==t.claudeProcess&&S.default.getState().setClaudeProcess(e,t.claudeProcess,s),t.claudeInstalled||S.default.getState().setClaudeInstalled(e,!1),S.default.getState().setTimelineLoading(e,t.isLoading)}:void 0,getCliState:e?()=>S.default.getState().tabs[e]?.cliState:void 0}),eh=e?T:el,{sessions:ep,hasMore:eb,isLoading:eg,isLoadingMore:ej,error:eC,refetch:ey,loadMore:eS}=(0,$.default)({tmuxSession:n,enabled:!!n&&!0!==eh,cwd:r}),ek=(0,s.useRef)(T);(0,s.useEffect)(()=>{let e=ek.current;ek.current=T,!0!==e&&!0===T&&!0!==el&&ed()},[T,el,ed]);let ev=(0,S.default)(t=>e?(0,S.selectSessionView)(t.tabs,e):"session-list"),{meta:ew}=(0,W.default)(A,es,ea,en),{branch:eN,isLoading:eT}=(0,O.default)(n),{status:eP}=(0,F.default)(n,v),eR=(0,H.default)(n,v),eI=(0,U.default)(et,v),eD=eI?{...ew,userCount:eI.userCount,assistantCount:eI.assistantCount}:ew,eL="timeline"===ev,eE=(0,M.default)("check"===ev,n);(0,s.useEffect)(()=>{h(R)},[R,h]),(0,s.useEffect)(()=>{p(eL)},[eL,p]);let eA=(0,s.useCallback)(()=>{N.current?.()},[]),ez=(0,s.useCallback)(e=>{x.current?.(e),m.current?.()},[x,m]),eB=(0,s.useCallback)(e=>{y||(k(e),ef(e,n))},[y,ef,n]);return P?null===T&&"check"!==ev?(0,t.jsx)("div",{className:"animate-delayed-fade-in flex min-h-0 flex-1 flex-col items-center justify-center bg-muted",children:(0,t.jsx)(o.default,{className:"h-4 w-4 text-muted-foreground"})}):"check"===ev?(0,t.jsxs)("div",{className:"animate-delayed-fade-in flex min-h-0 flex-1 flex-col items-center justify-center bg-muted",children:[(0,t.jsx)(o.default,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"mt-2 text-sm text-muted-foreground",children:l||ee?j("resumingSession"):j("creatingConversation")}),eE&&(eE.isBypassPrompt&&eE.options.length>0?(0,t.jsx)(K.default,{sessionName:n,options:eE.options,fallback:(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:j("checkTerminal")})}):(0,t.jsx)("span",{className:"mt-3 text-xs text-muted-foreground",children:j("checkTerminal")}))]}):"session-list"===ev?eg&&0===ep.length?(0,t.jsx)("div",{className:"animate-delayed-fade-in flex min-h-0 flex-1 flex-col items-center justify-center bg-muted",children:(0,t.jsx)(o.default,{className:"h-4 w-4 text-muted-foreground"})}):0!==ep.length||eC?(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col bg-muted",children:(0,t.jsx)(V.default,{sessions:ep,isLoading:eg,isLoadingMore:ej,hasMore:eb,error:eC,resumingSessionId:y,onSelectSession:eB,onRefresh:ey,onLoadMore:eS,onNewSession:g})}):(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col bg-muted",children:(0,t.jsx)(_.default,{onNewSession:g})}):(0,t.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col bg-muted",children:[(0,t.jsxs)("div",{className:"flex shrink-0 cursor-pointer items-center justify-between border-b px-4 py-1.5 hover:bg-muted/30",role:"button",tabIndex:0,onClick:()=>w(!0),onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),w(!0))},children:[(0,t.jsx)(X.MetaCompact,{title:ew.title,totalCost:ew.totalCost,branch:eN}),(0,t.jsx)(z.ChevronDown,{size:14,className:"shrink-0 text-muted-foreground"})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1",children:(0,t.jsx)(q.default,{entries:A,tasks:Y,sessionId:ee,sessionName:n,tabId:e,initMeta:ea,sessionStats:en,cliState:R,compactingSince:I,wsStatus:er,isLoading:ei,error:eo,onRetry:ed,onLoadMore:ec,hasMore:eu,scrollToBottomRef:N})}),(0,t.jsxs)("div",{className:"shrink-0 pb-3",children:[(0,t.jsx)(G.default,{tabId:e,wsId:a,sessionName:n,claudeSessionId:l,cliState:R,sendStdin:u,terminalWsConnected:d,visible:eL,focusTerminal:f,focusInputRef:m,setInputValueRef:x,maxRows:3,onRestartSession:b,onSend:eA,onOptimisticSend:em,onAddPendingMessage:em,onRemovePendingMessage:ex}),(0,t.jsx)(J.default,{prompts:C,visible:eL,onSelect:ez})]}),(0,t.jsx)(Z,{open:v,onOpenChange:w,meta:eD,toolCount:eI?.toolCount??null,toolBreakdown:eI?.toolBreakdown??null,branch:eN,isBranchLoading:eT,sessionId:ee,gitStatus:eP,tmuxInfo:eR})]}):(0,t.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col items-center justify-center gap-3 bg-muted text-muted-foreground",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:j("installClaude")}),(0,t.jsx)("span",{className:"text-xs",children:j("installClaudeHint")})]})};var et=e.i(166229);let es="__CTRL__",ea="__SHIFT__",en={fontFamily:"MesloLGLDZ, monospace"},el=[{label:"Tab",value:" "},{label:"Esc",value:"\x1b"},{label:"Ctrl",value:es},{label:"Shift",value:ea},{label:"",value:"\r",nerd:!0},{label:"",value:"\x1b[A",nerd:!0},{label:"",value:"\x1b[B",nerd:!0},{label:"",value:"\x1b[D",nerd:!0},{label:"",value:"\x1b[C",nerd:!0},{label:"",value:"|",nerd:!0,rotate:!0},{label:"",value:"~",nerd:!0}],er=({sendStdin:e,terminalConnected:a})=>{let n=(0,i.useTranslations)("mobile"),[l,r]=(0,s.useState)(""),[o,c]=(0,s.useState)(!1),[d,f]=(0,s.useState)(!1),m=(0,s.useRef)(null),x=(0,s.useCallback)(()=>{let e=m.current;e&&(e.style.height="auto",e.style.height=`${Math.min(e.scrollHeight,76)}px`)},[]);(0,s.useEffect)(()=>{x()},[l,x]);let h=(0,s.useCallback)(()=>{a&&(l&&e(l),e("\r"),r(""))},[l,e,a]),p=(0,s.useCallback)(t=>{let s=t.target.value;if(o&&s.length===l.length+1){let t=s[s.length-1].toLowerCase().charCodeAt(0);if(t>=97&&t<=122){e(String.fromCharCode(t-96)),c(!1);return}}if(d&&s.length===l.length+1){let e=s[s.length-1],t=e.toUpperCase();if(t!==e){r(l+t),f(!1);return}}r(s)},[o,d,l,e]),b=(0,s.useCallback)(t=>{t.value===es?c(e=>!e):t.value===ea?f(e=>!e):(e(t.value),o&&c(!1),d&&f(!1))},[o,d,e]);return(0,t.jsxs)("div",{className:"shrink-0 border-t border-border bg-background",children:[(0,t.jsxs)("div",{className:"flex items-end gap-2 px-3 py-2",children:[(0,t.jsx)("textarea",{ref:m,value:l,onChange:p,placeholder:o?"Ctrl + ...":d?"Shift + ...":n("commandPlaceholder"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:!1,rows:1,className:(0,v.cn)("flex-1 resize-none rounded-md border px-3 py-1.5 text-sm text-foreground outline-none placeholder:text-muted-foreground",o||d?"border-claude-active bg-claude-active/10":"border-border bg-black/5 focus:border-ring dark:bg-white/5"),style:{lineHeight:"20px",maxHeight:"76px",overflowY:"auto"}}),(0,t.jsx)(u.Button,{variant:"ghost",size:"sm",className:(0,v.cn)("h-8 w-8 shrink-0 p-0 text-muted-foreground hover:text-foreground",l.trim()&&"text-claude-active"),onClick:h,"aria-label":n("send"),children:(0,t.jsx)(et.SendHorizontal,{size:16})})]}),(0,t.jsx)("div",{className:"flex items-center gap-1 overflow-x-auto px-3 pb-2",style:{scrollbarWidth:"none",WebkitOverflowScrolling:"touch"},children:el.map(e=>(0,t.jsx)("button",{className:(0,v.cn)("shrink-0 rounded-md border px-2.5 py-1 text-xs font-medium transition-colors",e.value===es&&o||e.value===ea&&d?"border-claude-active bg-claude-active/20 text-claude-active":"border-border bg-muted/50 text-muted-foreground active:bg-muted"),onClick:()=>b(e),children:(0,t.jsx)("span",{className:(0,v.cn)("inline-block",e.rotate&&"rotate-90"),style:e.nerd?en:void 0,children:e.label})},e.label))})]})};var ei=e.i(251748),eo=e.i(610782),ec=e.i(117369),eu=e.i(31050);let ed={write:()=>{},reset:()=>{},fit:()=>({cols:40,rows:24}),focus:()=>{}},ef={sendStdin:()=>{},sendResize:()=>{}},em=({paneId:e,tabs:a,activeTabId:n,panelType:l,onCreateTab:c,onDeleteTab:f,onSwitchTab:m,onRemoveTabLocally:h,onCliStateChange:p,onOpenNewTabDialog:b})=>{let g=(0,i.useTranslations)("mobile"),j=(0,i.useTranslations)("terminal"),C=a.find(e=>e.id===n),y="claude-code"===l,k="web-browser"===l,w="diff"===l,N=(0,x.default)(e=>n?e.metadata[n]?.cwd:void 0),T=(0,d.useLayoutStore)(e=>e.workspaceId),{theme:z}=(0,ec.default)(),[B,M]=(0,s.useState)(!1),[$,W]=(0,s.useState)(!1),[O,F]=(0,s.useState)(!0),H=(0,s.useRef)(ed),U=(0,s.useRef)(ef),V=(0,s.useRef)(null),_=(0,s.useRef)(null),K=(0,s.useRef)(null),[q,G]=(0,s.useState)(null),J=(0,s.useRef)(null),X=(0,s.useRef)(!1),Y=(0,s.useRef)(a),Z=(0,s.useRef)(n);(0,s.useEffect)(()=>{Y.current=a,Z.current=n});let Q=(0,s.useCallback)(async()=>{let e=Z.current,t=e?Y.current.find(t=>t.id===e):null;if(t)try{let e=await fetch(`/api/layout/cwd?session=${t.sessionName}`);if(!e.ok)return;let{cwd:s}=await e.json();s&&x.default.getState().setCwd(t.id,s)}catch{}},[]),et=(0,s.useRef)(()=>{}),es=(0,s.useRef)(void 0),ea=(0,s.useRef)(void 0),en=(0,s.useRef)(null),el=(0,s.useRef)(""),em=(0,S.default)(e=>n?e.tabs[n]?.claudeProcess??null:null),ex=(0,S.default)(e=>n?(0,S.selectSessionView)(e.tabs,n):null),eh=(0,s.useCallback)(e=>{p?.(e)},[p]),ep=(0,s.useCallback)(e=>{},[]),eb=(0,s.useCallback)(e=>(0,eo.isAppShortcut)(e)?(e.preventDefault(),(0,eo.isClearShortcut)(e)&&et.current(),(0,eo.isFocusInputShortcut)(e)&&es.current?.(),!1):!(0,eo.isShiftEnter)(e)||(e.preventDefault(),U.current.sendStdin("\n"),!1),[]),{terminalRef:eg,write:ej,clear:eC,reset:ey,fit:eS,focus:ek,isReady:ev}=(0,D.default)({theme:z.colors,fontSize:y?void 0:11,onInput:e=>U.current.sendStdin(e),onResize:(e,t)=>{U.current.sendResize(e,t),X.current&&(J.current&&clearTimeout(J.current),J.current=setTimeout(()=>{X.current=!1,F(!0)},200))},onTitleChange:e=>{let t=Z.current;if(!t||e===el.current)return;el.current=e;let s=(0,ei.formatTabTitle)(e);if(x.default.getState().setTitle(t,s),(0,ei.isShellProcess)(e)&&en.current){let e=en.current;en.current=null,U.current.sendStdin(`${e}\r`)}let a=Y.current.find(e=>e.id===t);if(a){let e=S.default.getState().tabs[t]?.claudeProcessCheckedAt??0;fetch(`/api/check-claude?session=${a.sessionName}`).then(e=>e.json()).then(({running:s,checkedAt:n})=>{let l=S.default.getState().tabs[t];if(l&&l.claudeProcessCheckedAt!==e){l.claudeProcess!==s&&setTimeout(()=>{fetch(`/api/check-claude?session=${a.sessionName}`).then(e=>e.json()).then(({running:e,checkedAt:s})=>{S.default.getState().setClaudeProcess(t,e,s)}).catch(()=>{})},500);return}S.default.getState().setClaudeProcess(t,s,n)}).catch(()=>{})}Q()},customKeyEventHandler:eb});(0,s.useEffect)(()=>{et.current=eC});let ew=(0,s.useCallback)(async()=>{if(K.current)return;let t=Y.current,s=Z.current;if(!s)return;K.current=s;let a=[...t].sort((e,t)=>e.order-t.order),n=a.findIndex(e=>e.id===s),l=a[n+1]||a[n-1];l&&m(e,l.id);try{await f(e,s)}finally{K.current=null}},[e,m,f]),{status:eN,retryCount:eT,disconnectReason:eP,connect:eR,reconnect:eI,sendStdin:eD,sendWebStdin:eL,sendResize:eE}=(0,L.default)({onData:e=>H.current.write(e),onConnected:()=>{M(!0),G(Z.current),_.current=Z.current;let e=Z.current;e&&S.default.getState().setTerminalConnected(e,!0);let{cols:t,rows:s}=H.current.fit();U.current.sendResize(t,s),Q()},onSessionEnded:ew});(0,s.useEffect)(()=>{H.current={write:ej,reset:ey,fit:eS,focus:ek},U.current={sendStdin:eD,sendResize:eE}}),(0,s.useEffect)(()=>{ev||(V.current=null)},[ev]),(0,s.useEffect)(()=>{if(!ev||!n)return;let e=a.find(e=>e.id===n);if(e){if("web-browser"===e.panelType){V.current=null,el.current="";return}V.current!==e.sessionName&&(null!==V.current&&ey(),S.default.getState().initTab(n,{terminalConnected:!1,panelType:e.panelType}),V.current=e.sessionName,eR(e.sessionName))}},[ev,n]),(0,s.useEffect)(()=>{let e=Z.current;e&&S.default.getState().setTerminalConnected(e,"connected"===eN)},[eN]),(0,s.useEffect)(()=>{"disconnected"===eN&&B&&G(Z.current)},[eN,B]),(0,s.useEffect)(()=>{"disconnected"===eN&&B&&_.current&&_.current!==n&&a.some(e=>e.id===_.current)&&(V.current=null,m(e,_.current))},[eN]),(0,s.useEffect)(()=>{if(!ev||"connected"!==eN)return;let e=setTimeout(()=>{let{cols:e,rows:t}=eS();U.current.sendResize(e,t)},300);return()=>clearTimeout(e)},[eN]),(0,s.useEffect)(()=>{if(y){X.current=!1,J.current&&clearTimeout(J.current),Q();return}if(ev&&"connected"===eN)return X.current=!0,queueMicrotask(()=>F(!1)),J.current=setTimeout(()=>{X.current=!1,F(!0)},200),()=>{J.current&&clearTimeout(J.current),X.current=!1};queueMicrotask(()=>F(!0))},[y]);let eA=(0,s.useCallback)(async()=>{W(!0),await c(e),W(!1)},[e,c]),ez=(0,s.useCallback)(()=>{let e=eu.default.getState().dangerouslySkipPermissions,t=["--settings ~/.purplemux/hooks.json",T?`--append-system-prompt-file ~/.purplemux/workspaces/${T}/claude-prompt.md`:""].filter(Boolean).join(" "),s=`claude ${t}`;return e?`${s} --dangerously-skip-permissions`:s},[T]),eB=(0,s.useCallback)(()=>{"connected"===eN&&n&&(S.default.getState().setSessionView(n,"check"),eD(`${ez()}\r`))},[eN,eD,n,ez]),eM=(0,s.useCallback)(()=>{"connected"===eN&&n&&(en.current=ez(),S.default.getState().setSessionView(n,"check"),eD("/exit\r"))},[eN,eD,n,ez]);(0,s.useEffect)(()=>{if(!en.current||!0===em||"connected"!==eN||!(0,ei.isShellProcess)(el.current))return;let e=en.current;en.current=null,eD(`${e}\r`)},[em,eN,eD]);let e$=(0,s.useCallback)(t=>{n&&T&&fetch(`/api/layout/pane/${e}/tabs/${n}?workspace=${T}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({webUrl:t})}).catch(()=>{})},[n,e,T]),eW=0===a.length,eO=k||w||ev&&"connected"===eN&&!eW,eF=null!==n&&q!==n,eH=(0,s.useRef)(new Set);return(0,s.useEffect)(()=>{"disconnected"!==eN||"session-not-found"!==eP||eF||!n||!C||"terminal"!==(C.panelType??"terminal")||C.lastCommand||eH.current.has(n)||(eH.current.add(n),(async()=>{await d.useLayoutStore.getState().restartTabInPane(e,n)&&eI()})())},[eN,eP,n,C,eF,e,eI]),(0,t.jsxs)("div",{className:"relative flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden",style:{backgroundColor:z.colors.background,overscrollBehavior:"none"},children:[k&&n&&(0,t.jsx)(R.default,{initialUrl:C?.webUrl,onUrlChange:e$},n),w&&C&&(0,t.jsx)(I.default,{sessionName:C.sessionName},C.sessionName),y&&C&&(0,t.jsx)(ee,{tabId:n??void 0,wsId:T??void 0,sessionName:C.sessionName,claudeSessionId:C.claudeSessionId,cwd:N,sendStdin:eL,terminalWsConnected:"connected"===eN,focusTerminal:ek,focusInputRef:es,setInputValueRef:ea,onCliStateChange:eh,onInputVisibleChange:ep,onRestartSession:eM,onNewSession:eB}),!k&&!w&&(0,t.jsx)(E.default,{ref:eg,className:(0,v.cn)(!y&&"transition-opacity duration-150",y?"absolute inset-0 pointer-events-none opacity-0":"min-h-0 flex-1",!y&&eO&&O?"opacity-100":"",y||eO&&O?"":"opacity-0")}),!y&&!k&&!w&&"connected"===eN&&(0,t.jsx)(er,{sendStdin:eL,terminalConnected:"connected"===eN}),eW&&(0,t.jsx)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:(0,t.jsxs)(u.Button,{className:"gap-1.5",onClick:b??eA,disabled:$,children:[$?(0,t.jsx)(o.default,{className:"h-3 w-3"}):(0,t.jsx)(r.Plus,{className:"h-3.5 w-3.5"}),j("openNewTab")]})}),!eW&&!k&&"disconnected"===eN&&!eF&&(0,t.jsxs)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:[(0,t.jsx)(P.WifiOff,{className:"h-5 w-5 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-sm text-muted-foreground",children:"max-connections"===eP?g("disconnectedMaxConnections"):"pty-error"===eP?g("disconnectedPtyError"):"session-not-found"===eP?j("disconnectedSessionNotFound"):g("cannotConnectServer")}),"session-not-found"===eP&&n?(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(u.Button,{variant:"outline",size:"sm",onClick:async()=>{await d.useLayoutStore.getState().restartTabInPane(e,n)&&eI()},children:g("restart")}),(0,t.jsx)(u.Button,{variant:"ghost",size:"sm",onClick:()=>f(e,n),children:j("closeTabLabel")})]}):(0,t.jsx)(u.Button,{variant:"outline",size:"sm",onClick:eI,children:g("reconnect")})]}),!eW&&!k&&!w&&!(y&&"check"===ex)&&(0,t.jsx)(A.default,{status:eN,retryCount:eT,disconnectReason:eP,onReconnect:eI})]})};var ex=e.i(875284),eh=e.i(296202);let ep=({open:e,onOpenChange:a,onCreateTab:n})=>{let l=(0,i.useTranslations)("terminal"),r=(0,i.useTranslations)("mobile"),[c,u]=(0,s.useState)(null),d=[{key:"claude-new",type:"claude-code",icon:(0,t.jsx)(g.default,{className:"h-5 w-5"}),label:l("claudeNewConversation"),startClaude:!0},{key:"claude",type:"claude-code",icon:(0,t.jsx)(g.default,{className:"h-5 w-5"}),label:l("claudeSessionList")},{key:"terminal",type:"terminal",icon:(0,t.jsx)(ex.Terminal,{className:"h-5 w-5 text-muted-foreground"}),label:"Terminal"},{key:"diff",type:"diff",icon:(0,t.jsx)(p.GitCompareArrows,{className:"h-5 w-5 text-muted-foreground"}),label:"Diff"}],f=async e=>{u(e.key),"startClaude"in e&&e.startClaude?await n(e.type,{command:"claude-new"}):await n(e.type),u(null),a(!1)};return(0,t.jsx)(eh.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(eh.DialogContent,{className:"w-[calc(100%-2rem)] max-w-xs gap-2 rounded-xl p-4",children:[(0,t.jsx)(eh.DialogHeader,{children:(0,t.jsx)(eh.DialogTitle,{className:"text-sm font-medium",children:r("newTab")})}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-2",children:d.map(e=>(0,t.jsxs)("button",{className:"flex aspect-square flex-col items-center justify-center gap-2 rounded-lg border border-border bg-background text-foreground transition-colors active:bg-accent disabled:pointer-events-none disabled:opacity-50",disabled:null!==c,onClick:()=>f(e),children:[c===e.key?(0,t.jsx)(o.default,{className:"h-4 w-4"}):e.icon,(0,t.jsx)("span",{className:"text-xs",children:e.label})]},e.key))})]})})};var eb=e.i(982960),eg=e.i(157016),ej=e.i(566736);e.s(["default",0,()=>{let e=(0,i.useTranslations)("terminal"),h=(0,i.useTranslations)("mobile"),p=(0,i.useTranslations)("common"),b=(0,m.default)(e=>e.isLoading),g=(0,m.default)(e=>e.error),j=(0,m.default)(e=>e.activeWorkspaceId),C=(0,m.default)(e=>e.workspaces).length,y=(0,s.useRef)(null),k=(0,s.useCallback)(()=>{let t=y.current;t&&(m.default.getState().switchWorkspace(t),c.toast.error(e("cannotSwitch")))},[e]),v=(0,d.default)({workspaceId:j,onFetchError:k}),w=(0,s.useMemo)(()=>v.layout?(0,f.collectPanes)(v.layout.root):[],[v.layout]),N=!!(v.layout&&!v.isLoading&&w.every(e=>0===e.tabs.length)),P=v.layout?.updatedAt,R=(0,s.useRef)(null);(0,s.useEffect)(()=>{if(!v.layout||!P||R.current===P)return;R.current=P;let e={};for(let t of(0,f.collectPanes)(v.layout.root))for(let s of t.tabs)(s.title||s.cwd)&&(e[s.id]={title:s.title,cwd:s.cwd});x.default.getState().hydrate(e)},[P]),(0,s.useEffect)(()=>{if(!v.layout)return;let e=new Set((0,f.collectPanes)(v.layout.root).flatMap(e=>e.tabs.map(e=>e.id)));x.default.getState().retainOnly(e)},[v.layout]),(0,ej.useAutoDeleteEmptyWorkspace)(N,v.clearLayout);let I=v.layout?.activePaneId??null,D=(I?w.find(e=>e.id===I):null)??w[0]??null,L=D?.id??null,E=D?.activeTabId??null,A=D?.tabs.find(e=>e.id===E)??null,z=A?.panelType??"terminal",B=(0,s.useCallback)(e=>{let{activeWorkspaceId:t}=m.default.getState();e!==t&&(y.current=t,x.default.getState().reset(),v.clearLayout(),m.default.getState().switchWorkspace(e))},[v]);(0,s.useEffect)(()=>(eg.default.getState().register({onSelectWorkspace:B}),()=>eg.default.getState().unregister()),[B]);let[M,$]=(0,s.useState)(!1),[W,O]=(0,s.useState)("inactive"),F=(0,s.useCallback)(e=>{O(e)},[]);(0,s.useEffect)(()=>{E&&(0,eb.dismissTab)(E)},[E]),(0,s.useEffect)(()=>{E&&"claude-code"===z&&"inactive"!==W&&"idle"===W&&(0,eb.dismissTab)(E)},[E,W,z]);let H=(0,S.default)(e=>{if(!E)return!1;let t=e.tabs[E];return t?.cliState==="ready-for-review"||t?.cliState==="needs-input"});(0,s.useEffect)(()=>{H&&E&&(0,eb.dismissTab)(E)},[H,E]);let U=(0,x.default)(e=>E?e.metadata[E]:void 0),V=(0,s.useMemo)(()=>{if(!A)return"";if(A.name)return A.name;let e=U?.title||A.title,t=e?(0,ei.formatTabTitle)(e):"";return t||`Tab ${A.order+1}`},[A,U]),_=(0,s.useCallback)(e=>{D&&E&&v.updateTabPanelType(D.id,E,e)},[D,E,v]),K=(0,s.useCallback)(()=>{$(!0)},[]),q=(0,s.useCallback)(async(e,t)=>{let s;if(!D)return;if(t?.command==="claude-new"){let e=eu.default.getState().dangerouslySkipPermissions,t=["--settings ~/.purplemux/hooks.json",j?`--append-system-prompt-file ~/.purplemux/workspaces/${j}/claude-prompt.md`:""].filter(Boolean).join(" ");s=e?`claude ${t} --dangerously-skip-permissions`:`claude ${t}`}let a=await v.createTabInPane(D.id,e,s);a&&(S.default.getState().initTab(a.id,{panelType:e,workspaceId:j??""}),t?.command==="claude-new"&&S.default.getState().setSessionView(a.id,"check"))},[D,v,j]),G=(0,s.useCallback)(()=>{D&&E&&v.deleteTabInPane(D.id,E)},[D,E,v]);return b?(0,t.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center",children:[(0,t.jsx)(o.default,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"mt-3 text-sm text-muted-foreground",children:e("connecting")})]}):g&&!C?(0,t.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-3",children:[(0,t.jsx)(a.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,t.jsx)("span",{className:"text-sm text-muted-foreground",children:g}),(0,t.jsxs)(u.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:m.default.getState().fetchWorkspaces,children:[(0,t.jsx)(n.RefreshCw,{className:"h-3.5 w-3.5"}),p("retry")]})]}):j||b||g?!v.layout||v.isLoading?(0,t.jsx)("div",{className:"flex flex-1 flex-col items-center justify-center",children:(0,t.jsx)(o.default,{className:"h-4 w-4 text-muted-foreground"})}):v.error&&!v.isLoading?(0,t.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-3",children:[(0,t.jsx)(a.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,t.jsx)("span",{className:"text-sm text-muted-foreground",children:v.error}),(0,t.jsxs)(u.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:()=>v.fetchLayout(),children:[(0,t.jsx)(n.RefreshCw,{className:"h-3.5 w-3.5"}),p("retry")]})]}):(0,t.jsxs)(t.Fragment,{children:[D&&E&&(0,t.jsx)(T,{tabId:E,tabName:V,sessionName:A?.sessionName??null,panelType:z,onSwitchPanelType:_,onCreateTab:K,onClose:G},E),D&&E&&(0,t.jsx)(em,{paneId:D.id,tabs:D.tabs,activeTabId:E,panelType:z,onCreateTab:v.createTabInPane,onDeleteTab:v.deleteTabInPane,onSwitchTab:v.switchTabInPane,onRemoveTabLocally:v.removeTabLocally,onUpdateTabPanelType:v.updateTabPanelType,onCliStateChange:F,onOpenNewTabDialog:K},`${L}-${E}`),(0,t.jsx)(ep,{open:M,onOpenChange:$,onCreateTab:q})]}):(0,t.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 px-6 text-center",children:[(0,t.jsx)(l.Monitor,{className:"h-8 w-8 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-sm font-medium text-muted-foreground",children:h("noWorkspace")}),(0,t.jsxs)(u.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:async()=>{let e=await m.default.getState().createWorkspace("");e&&m.default.getState().switchWorkspace(e.id)},children:[(0,t.jsx)(r.Plus,{className:"h-3.5 w-3.5"}),e("newWorkspace")]})]})}],432270)},938280,e=>{e.n(e.i(432270))}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,438079,(e,t,o)=>{t.exports=JSON.parse('{"title":"설정","tabs":{"general":"일반","appearance":"외관","terminal":"터미널","editor":"에디터","claude":"Claude","auth":"인증","tailscale":"Tailscale","quickPrompts":"빠른 프롬프트","sidebarItems":"사이드바","agent":"에이전트","notification":"알림","system":"시스템"},"general":{"theme":"테마","themeDescription":"화면 테마를 선택합니다.","language":"언어","languageDescription":"인터페이스 언어를 선택합니다.","fontSize":"글꼴 크기","fontSizeDescription":"화면과 터미널의 글꼴 크기를 조절합니다.","fontSizeNormal":"보통","fontSizeLarge":"크게","fontSizeXLarge":"더크게","keyboardShortcuts":"키보드 단축키","keyboardShortcutsDescription":"단축키 전체 보기 및 커스터마이즈.","openShortcuts":"열기"},"appearance":{"customCSS":"Custom CSS","customCSSDescription":"CSS 변수를 오버라이드하여 색상과 스타일을 커스터마이징합니다.","apply":"적용","reset":"초기화","resetConfirm":"커스텀 CSS를 모두 초기화할까요?","applied":"커스텀 CSS가 적용되었습니다.","availableVariables":"사용 가능한 변수","placeholder":":root {\\n --background: oklch(0.98 0 0);\\n --sidebar: oklch(0.95 0.01 220);\\n}\\n.dark {\\n --background: oklch(0.08 0 0);\\n}"},"terminal":{"theme":"터미널 테마","themeDescription":"모드별 터미널 색상 테마를 선택합니다."},"editor":{"preset":"에디터","presetDescription":"헤더의 EDITOR 버튼을 클릭했을 때 실행할 에디터를 선택합니다.","presets":{"code-server":"Code Server (웹)","vscode":"VS Code","vscode-insiders":"VS Code Insiders","cursor":"Cursor","windsurf":"Windsurf","zed":"Zed","custom":"커스텀 URL","off":"사용 안 함"},"url":"에디터 URL","urlDescription":"Code Server 인스턴스의 웹 주소를 입력합니다.","urlHelp":"<link>code-server</link>를 설치하고 실행하면 브라우저에서 VS Code를 사용할 수 있습니다. URL에 <code>?folder=</code> 파라미터가 자동으로 추가됩니다.","customTemplate":"URL 템플릿","customTemplateDescription":"현재 폴더 경로로 열 URL 템플릿을 입력합니다.","customHelp":"절대 경로는 <folder></folder>, URL 인코딩된 경로는 <folderEncoded></folderEncoded>로 표기합니다.","localIdeHint":"선택한 IDE를 로컬에서 실행합니다. 브라우저 또는 데스크톱 앱을 실행 중인 컴퓨터에 해당 IDE가 설치되어 있어야 합니다.","offHint":"헤더에서 에디터 버튼을 숨깁니다.","preview":"미리보기 (샘플 폴더 기준)","errorHttpRequired":"URL은 http:// 또는 https:// 로 시작해야 합니다.","errorCustomTemplate":"템플릿에는 {folder} 또는 {folderEncoded}가 포함되어야 합니다."},"claude":{"skipPermissions":"권한 확인 건너뛰기","skipPermissionsDescription":"Claude CLI 실행 시 --dangerously-skip-permissions 옵션을 추가합니다."},"auth":{"changePassword":"비밀번호 변경","changePasswordDescription":"새 비밀번호를 입력하면 SHA-512로 해싱되어 저장됩니다.","newPasswordPlaceholder":"새 비밀번호 입력 (4자 이상)","passwordPlaceholder":"비밀번호 입력 (4자 이상)","resetHint":"초기화하려면 ~/.purplemux/config.json 파일을 삭제하고 {action}하세요.","restartServer":"서버를 재시작","restartApp":"앱을 종료 후 재시작","savedRestart":"저장되었습니다. {action} 후 적용됩니다.","restartServerAction":"서버 재시작","restartAppAction":"앱 종료 후 재시작"},"notification":{"enable":"알림 활성화","enableDescription":"Claude 작업 완료 시 시스템 알림을 표시합니다.","permissionDenied":"브라우저 알림 권한이 거부되었습니다. 브라우저 설정에서 허용해주세요.","notSupported":"이 브라우저에서는 Web Push를 지원하지 않습니다.","toastSection":"앱 내 토스트","toastSectionDescription":"창이 활성화된 상태에서만 표시됩니다. 백그라운드는 시스템 알림이 담당합니다.","toastEnable":"작업 완료 시 토스트 표시","toastEnableDescription":"사이드바 카운트 외에 일시적인 토스트를 추가로 띄웁니다.","toastDuration":"표시 시간","toastDurationDescription":"토스트가 자동으로 사라지기까지의 시간입니다.","toastDurationUnit":"초","toastPositionDesktop":"데스크탑 위치","toastPositionDesktopDescription":"큰 화면에서 토스트가 나타날 위치입니다.","toastPositionMobile":"모바일 위치","toastPositionMobileDescription":"좁은 화면에서 토스트가 나타날 위치입니다.","positions":{"top-left":"좌상단","top-center":"상단 중앙","top-right":"우상단","bottom-left":"좌하단","bottom-center":"하단 중앙","bottom-right":"우하단"}},"agent":{"enableMenu":"에이전트 메뉴 활성화","enableMenuDescription":"사이드바에 에이전트 메뉴를 표시합니다. 이 기능은 현재 beta 테스트 중입니다."},"system":{"networkAccess":"네트워크 접근","networkAccessDescription":"어느 네트워크에서 purplemux에 접근할 수 있는지 설정합니다. 서버 재시작 후 적용됩니다.","networkAccessLocked":"HOST 환경 변수로 제어 중입니다.","restartRequired":"변경 사항은 서버 재시작 후 적용됩니다.","networkAccessOptions":{"localhost":{"label":"Localhost만","description":"이 PC에서만 접근 가능합니다. 가장 안전하며 포트가 외부에 노출되지 않습니다."},"tailscale":{"label":"Localhost + Tailscale","description":"이 PC와 Tailscale 피어에서 접근 가능합니다. LAN 및 공인 인터넷은 차단됩니다."},"all":{"label":"모든 인터페이스","description":"접근 가능한 모든 네트워크를 허용합니다. LAN과 공인 인터넷도 포함됩니다."}},"showResources":"시스템 리소스 표시","showResourcesDescription":"헤더에 CPU, 메모리, tmux 세션 사용량을 표시합니다.","attachedImages":"첨부 이미지","attachedImagesDescription":"입력창에 첨부한 이미지는 ~/.purplemux/uploads/ 에 저장됩니다. 24시간이 지난 파일은 서버 시작 시 자동으로 정리됩니다.","cleanAttachedImages":"지금 정리","attachedImagesCleaned":"{count}개의 파일을 삭제했습니다","attachedImagesNothing":"삭제할 이미지가 없습니다","tmuxReset":"tmux 초기화","tmuxResetDescription":"tmux 세션을 모두 종료하고 {action}합니다. 설정 변경 후 적용이 필요할 때 사용합니다.","tmuxResetConfirm":"실행 중인 모든 터미널 프로세스가 종료됩니다. 계속하시겠습니까?","restartServer":"서버를 재시작","restartApp":"앱을 재시작"},"tailscale":{"notInstalled":"Tailscale CLI가 설치되어 있지 않습니다","notInstalledDescription":"Tailscale을 설치하면 외부에서 안전하게 접속할 수 있습니다.","commentMac":"# macOS","commentMacAppStore":"# 또는 Mac App Store에서 설치","commentLinux":"# Linux (Ubuntu/Debian)","commentAfterInstall":"# 설치 후 로그인","installGuide":"자세한 설치 방법은 <link>Tailscale 공식 사이트</link>를 참고하세요.","notRunning":"Tailscale이 실행 중이 아닙니다","notRunningDescription":"Tailscale을 시작해 주세요.","deviceInfo":"디바이스 정보","host":"호스트","dns":"DNS","ip":"IP","version":"버전","nonDefaultPortTitle":"현재 서버가 포트 {port}에서 실행 중입니다","nonDefaultPortDescription":"기본 포트({defaultPort})가 사용 중이어서 자동으로 다른 포트가 할당되었습니다. 자동 할당된 포트는 {restartAction} 시 변경될 수 있으므로, Tailscale Serve 설정 시 로컬 포트를 {currentPort} 대신 {defaultPort}로 설정하는 것을 권장합니다.","appRestart":"앱 재시작","serverRestart":"서버 재시작","commentFixedPort":"# 고정 포트({port})를 사용하려면","commentOrTerminate":"# 또는 기존 {port} 포트를 점유한 프로세스를 종료 후 재시작","serveStatus":"Serve 상태","noActiveServe":"활성화된 serve 항목이 없습니다.","httpsPort":"HTTPS 포트","proxyTarget":"프록시 대상","url":"URL","addServe":"Serve 추가","setupGuide":"설정 가이드","commentStep1Install":"# 1. CLI 설치","commentStep2Activate":"# 2. Connect","commentStep3Add":"# 3. Serve 추가","localPort":"로컬 포트","add":"추가","enterPort":"포트를 입력하세요","addedToast":"HTTPS :{httpsPort} → localhost:{localPort} 추가됨","removedToast":"HTTPS :{httpsPort} 제거됨"},"quickPrompts":{"title":"빠른 프롬프트","description":"입력창 위에 표시할 프롬프트 버튼을 관리합니다.","builtinSection":"기본 프롬프트","customSection":"사용자 프롬프트","itemsSection":"프롬프트","addPrompt":"프롬프트 추가","editPrompt":"프롬프트 수정","nameLabel":"이름","namePlaceholder":"예: 코드 리뷰","promptLabel":"프롬프트","promptPlaceholder":"예: 현재 변경사항을 리뷰해주세요.","save":"저장","cancel":"취소","addButton":"프롬프트 추가","resetToDefault":"기본값으로 초기화","resetTitle":"기본값으로 초기화","resetDescription":"모든 사용자 프롬프트가 삭제되고, 기본 프롬프트가 활성화됩니다.","resetCancel":"취소","resetConfirm":"초기화","deleteTitle":"프롬프트 삭제","deleteDescription":"이 프롬프트를 삭제하시겠습니까?","deleteCancel":"취소","deleteConfirm":"삭제"},"sidebarItems":{"title":"사이드바 항목","description":"사이드바 하단에 표시할 바로가기 항목을 관리합니다.","itemsSection":"항목","addItem":"항목 추가","editItem":"항목 수정","nameLabel":"이름","namePlaceholder":"예: Grafana","iconLabel":"아이콘","iconSearch":"아이콘 검색...","iconNotFound":"아이콘을 찾을 수 없습니다","urlLabel":"URL","urlPlaceholder":"예: https://grafana.example.com","save":"저장","cancel":"취소","addButton":"항목 추가","resetToDefault":"기본값으로 초기화","resetTitle":"기본값으로 초기화","resetDescription":"모든 사용자 항목이 삭제되고, 기본 항목이 활성화됩니다.","resetCancel":"취소","resetConfirm":"초기화","deleteTitle":"항목 삭제","deleteDescription":"이 항목을 삭제하시겠습니까?","deleteCancel":"취소","deleteConfirm":"삭제"},"saveFailed":"설정을 저장할 수 없습니다"}')}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,316006,(s,t
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,316006,(o,s,t)=>{s.exports={noMessage:"(нет сообщений)",newSessionTitle:"(новая сессия)",sessionLabel:"Сессия: {message}",turnCount:"{count} обменов",justNow:"только что",minutesAgo:"{count} мин. назад",hoursAgo:"{count} ч. назад",yesterday:"вчера",daysAgo:"{count} дн. назад",weeksAgo:"{count} нед. назад",monthsAgo:"{count} мес. назад",yearsAgo:"{count} г. назад",empty:{closeLabel:"Закрыть",noSession:"Нет сессий",startNewSession:"Запустите claude в терминале,{br}чтобы начать новую сессию",newConversation:"Новая беседа",close:"Закрыть"},meta:{message:"Сообщения",userAssistant:"Пользователь {userCount} / Ответ {assistantCount}",toolsCount:"Инструменты {count}",tokens:"Токены",inputOutput:"Вход {input} / Выход {output}",context:"Контекст",model:"Модель",cost:"Стоимость",created:"Создано",updated:"Обновлено",path:"Путь",process:"Процесс",size:"Размер",session:"Сессия"}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,232177,(t,o
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,232177,(t,e,o)=>{e.exports={title:"通知",empty:"セッションがありません..",busySection:"進行中 ({count})",needsInputSection:"入力待ち ({count})",reviewSection:"レビュー ({count})",doneSection:"完了 ({count})",dismiss:"閉じる",navigate:"移動",starting:"開始中...",dateGroup_today:"今日",dateGroup_yesterday:"昨日",dateGroup_thisWeek:"今週",dateGroup_older:"それ以前",durationUnderMinute:"1分未満",durationMinutes:"{count}分",filesModified:"ファイル{count}件変更",toolCalls:"ツール{count}回",showMore:"過去の記録 {count}件",showLess:"閉じる",toastCompleteTitle:"タスク完了",openTab:"開く"}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,166760,(s,
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,166760,(s,o,e)=>{o.exports={noMessage:"(sem mensagem)",newSessionTitle:"(nova sessao)",sessionLabel:"Sessao: {message}",turnCount:"{count} turnos",justNow:"agora",minutesAgo:"{count}min atras",hoursAgo:"{count}h atras",yesterday:"ontem",daysAgo:"{count}d atras",weeksAgo:"{count}sem atras",monthsAgo:"{count}m atras",yearsAgo:"{count}a atras",empty:{closeLabel:"Fechar",noSession:"Nenhuma sessao",startNewSession:"Execute claude no terminal{br}para iniciar uma nova sessao",newConversation:"Nova conversa",close:"Fechar"},meta:{message:"Mensagens",userAssistant:"Usuario {userCount} / Resposta {assistantCount}",toolsCount:"Ferramentas {count}",tokens:"Tokens",inputOutput:"Entrada {input} / Saida {output}",context:"Contexto",model:"Modelo",cost:"Custo",created:"Criado",updated:"Atualizado",path:"Caminho",process:"Processo",size:"Tamanho",session:"Sessao"}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,57235,(e,o,t)=>{o.exports={title:"Notifications",empty:"No sessions..",busySection:"In Progress ({count})",needsInputSection:"Needs Input ({count})",reviewSection:"Review ({count})",doneSection:"Done ({count})",dismiss:"Dismiss",navigate:"Go to",starting:"Starting...",dateGroup_today:"Today",dateGroup_yesterday:"Yesterday",dateGroup_thisWeek:"This Week",dateGroup_older:"Older",durationUnderMinute:"< 1 min",durationMinutes:"{count} min",filesModified:"{count} files modified",toolCalls:"{count} tool calls",showMore:"{count} more",showLess:"Show less"}}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,57235,(e,o,t)=>{o.exports={title:"Notifications",empty:"No sessions..",busySection:"In Progress ({count})",needsInputSection:"Needs Input ({count})",reviewSection:"Review ({count})",doneSection:"Done ({count})",dismiss:"Dismiss",navigate:"Go to",starting:"Starting...",dateGroup_today:"Today",dateGroup_yesterday:"Yesterday",dateGroup_thisWeek:"This Week",dateGroup_older:"Older",durationUnderMinute:"< 1 min",durationMinutes:"{count} min",filesModified:"{count} files modified",toolCalls:"{count} tool calls",showMore:"{count} more",showLess:"Show less",toastCompleteTitle:"Task complete",openTab:"Open"}}]);
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
__turbopack_load_page_chunks__("/", [
|
|
2
|
+
"static/chunks/09tinkgkd8br_.js",
|
|
3
|
+
"static/chunks/0ro78lxc~ndn_.js",
|
|
4
|
+
"static/chunks/0fotmrplo6yc7.js",
|
|
5
|
+
"static/chunks/0.znxwgo-re2m.js",
|
|
6
|
+
"static/chunks/05y90.zbqijkv.js",
|
|
7
|
+
"static/chunks/0ml5~2ty-rbv_.js",
|
|
8
|
+
"static/chunks/0.ecwkadp7-hq.js",
|
|
9
|
+
"static/chunks/15aj3kd.p7zw6.js",
|
|
10
|
+
"static/chunks/10bvbbw1062os.js",
|
|
11
|
+
"static/chunks/07rq~qv9ldwo~.js",
|
|
12
|
+
"static/chunks/0ea-k_kbq5gi1.js",
|
|
13
|
+
"static/chunks/04bbxzycy0y90.js",
|
|
14
|
+
"static/chunks/00yfl7agnve...js",
|
|
15
|
+
"static/chunks/0u-1zto-umjh9.js",
|
|
16
|
+
"static/chunks/0wp13r5su.j3e.js",
|
|
17
|
+
"static/chunks/0efkrks2gm27v.js",
|
|
18
|
+
"static/chunks/14_wa..vd6~2y.js",
|
|
19
|
+
"static/chunks/0wlz6--vu7adu.js",
|
|
20
|
+
"static/chunks/0~nlz9.lltzrz.js",
|
|
21
|
+
"static/chunks/0i2uqmry6cyl_.js",
|
|
22
|
+
"static/chunks/turbopack-0h0~tr4tgq3aa.js"
|
|
23
|
+
])
|