mirror of
https://github.com/hansjone/netx.git
synced 2026-10-16 09:03:22 +08:00
Refactor web UI: feature-first structure, tokenized styles, modern blue theme.
Structure
- pages/ -> features/<domain>/{Page, components, hooks, lib}; 95 files moved,
333 imports rewritten, verified with tsc.
- services/api.ts -> services/api/<domain>.ts (250 exports preserved),
types.ts -> types/<domain>.ts, i18n zh/en -> locales/<lang>/<namespace>.ts
(2696 messages deep-equal before/after).
- ESLint rule: shared layers must not import features/.
Styles
- index.css (16k lines) split losslessly into styles/{base,layout,components,
pages,legacy,theme}; compiled CSS was byte-identical before tokenizing.
- ~930 hard-coded colors replaced by --nx-* tokens (theme/tokens.css); WebCRT
off-palette colors unified; fixed dark-on-dark text introduced by mapping.
- theme/theme.css: modern blue design language (rounded shapes, gradients,
unified buttons/fields/tables/modals), form-grid alignment fix, flat nav list
without tree indent, soft selected state instead of left accent bar.
Docs: WEB.md documents code structure and style rules.
Not touched: the large Biz*/Webcrt/Topology page components (to be split later).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
3b45d6abe3
commit
0d894efe5e
196 changed files with 26947 additions and 28091 deletions
58
web/src/i18n/locales/en/configSync.ts
Normal file
58
web/src/i18n/locales/en/configSync.ts
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
const configSync = {
|
||||
title: "Config sync",
|
||||
syncNow: "Sync now",
|
||||
retryFailed: "Retry failed",
|
||||
pause: "Pause",
|
||||
resume: "Resume",
|
||||
stop: "Stop",
|
||||
confirmStop: "Stop this cycle and cancel remaining NE tasks?",
|
||||
started: "Sync cycle started",
|
||||
paused: "Paused",
|
||||
resumed: "Resumed",
|
||||
stopped: "Sync cycle stopped",
|
||||
policyTitle: "Sync policy",
|
||||
policySaved: "Policy saved",
|
||||
enabled: "Enable scheduled sync",
|
||||
intervalDays: "Interval (days)",
|
||||
concurrency: "Concurrency",
|
||||
historyKeep: "Config versions to keep",
|
||||
cycleKeep: "Jobs to keep",
|
||||
scope: "Scope",
|
||||
scopeAll: "All NEs",
|
||||
scopeSelected: "Selected NEs",
|
||||
savePolicy: "Save policy",
|
||||
selectedCount: "{{count}} selected",
|
||||
targetKeywordPh: "Name / IP / vendor",
|
||||
cyclesTitle: "Sync cycles",
|
||||
cyclesEmpty: "No sync cycles yet",
|
||||
tasksTitle: "Cycle tasks",
|
||||
taskKeywordPh: "Name / IP / message",
|
||||
keywordPh: "ID / trigger / message",
|
||||
statusAll: "All statuses",
|
||||
allStatus: "All statuses",
|
||||
exportCyclesName: "config-sync-cycles",
|
||||
exportTasksName: "config-sync-tasks",
|
||||
expand: "Details",
|
||||
collapse: "Collapse",
|
||||
kpi: {
|
||||
snapshots: "Snapshots",
|
||||
running: "In progress",
|
||||
idle: "Idle",
|
||||
last: "Last cycle",
|
||||
nextDue: "Next due",
|
||||
},
|
||||
col: {
|
||||
source: "Source",
|
||||
name: "Device",
|
||||
vendor: "Vendor",
|
||||
trigger: "Trigger",
|
||||
status: "Status",
|
||||
progress: "Progress",
|
||||
started: "Started",
|
||||
ended: "Ended",
|
||||
message: "Message",
|
||||
actions: "Actions",
|
||||
},
|
||||
};
|
||||
|
||||
export default configSync;
|
||||
Loading…
Add table
Add a link
Reference in a new issue