3x-ui/frontend/src/components
MHSanaei 188fb0f2bd
feat(frontend): Phase 5f-vii — shared text/prompt modals + remaining export/import wiring
Wires up the last batch of inbound row + general actions that were
toasting "coming soon": export-inbound-links, export-subs (per-inbound
and global), export-all-links, import-inbound, and the clipboard JSON
peek. Two small shared components back them — both can be reused by
the xray page later.

- TextModal.vue (shared): read-only multi-line viewer with a copy
  button and an optional download button when fileName is set.
  Replaces the legacy txtModal which the inbounds page used for every
  link export.
- PromptModal.vue (shared): generic title + input/textarea + confirm
  callback, with the legacy keybindings (Enter submits in single-line
  mode; Ctrl+S submits in textarea mode). Used here for import-inbound
  but also by xray-config edits in Phase 6.
- InboundsPage.vue: drops the toast stubs for `import`/`export`/`subs`
  on the general-actions menu and `export`/`subs`/`clipboard` on the
  per-row menu, routing each through openText / openPrompt + the
  appropriate model helper (genInboundLinks, etc.). The copyClients
  cross-inbound modal stays toast-stubbed — that's its own dedicated
  legacy modal worth its own commit.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-08 14:09:19 +02:00
..
AppSidebar.vue fix(frontend): keep sidebar links absolute when basePath is empty 2026-05-08 13:23:16 +02:00
CustomStatistic.vue feat(frontend): Phase 5b — port four shared components to Vue 3 2026-05-08 11:52:52 +02:00
PromptModal.vue feat(frontend): Phase 5f-vii — shared text/prompt modals + remaining export/import wiring 2026-05-08 14:09:19 +02:00
SettingListItem.vue feat(frontend): Phase 5b — port four shared components to Vue 3 2026-05-08 11:52:52 +02:00
Sparkline.vue feat(frontend): Phase 5c-iv (b) — cpu-history / xray-logs / xray-version modals 2026-05-08 12:56:08 +02:00
TableSortable.vue feat(frontend): Phase 5b — port four shared components to Vue 3 2026-05-08 11:52:52 +02:00
TextModal.vue feat(frontend): Phase 5f-vii — shared text/prompt modals + remaining export/import wiring 2026-05-08 14:09:19 +02:00
ThemeSwitch.vue feat(frontend): Phase 5a — theme system + Vite 8 + vue-i18n 11 2026-05-08 11:11:06 +02:00
ThemeSwitchLogin.vue feat(frontend): Phase 5a — theme system + Vite 8 + vue-i18n 11 2026-05-08 11:11:06 +02:00