This is an automated email from the ASF dual-hosted git repository.

wu-sheng pushed a change to branch feat-i18n
in repository https://gitbox.apache.org/repos/asf/skywalking-horizon-ui.git


    omit bdf534a  fix(translations): rows + adaptive sizing + nav-click 
interception
    omit 36d394a  feat(translations): finish — tile clicks, naming-alias 
filter, conflict resolve
    omit ec423d4  fix(translations): preview uses real chart renderers + 
click-to-focus editor
    omit 7dfc97b  feat(i18n): translations admin page — picker, preview, 
EN→target editor
    omit 663b8ec  feat(sync): symmetric write-and-confirm for 
create/update/disable + conflict surfacing
    omit e26a6ed  chore: drop the one-shot probe-dupes diagnostic script
    omit d77b2df  fix(sync): cache-bypass + create-and-wait + self-heal 
duplicates
    omit cf65fd0  fix(admin): move 'refresh from remote' into the picker 
dropdown footer
    omit 5e1d7cb  fix(i18n): bundle endpoint missed X-Horizon-Locale header
    omit e639168  fix(i18n): teleport locale menu to <body>; clicks were 
absorbed by .center
    omit 3762457  fix(i18n): drop navigator-language fallback — localStorage or 
'en'
    omit ee9b258  fix(i18n): pre-auth locale pick — skip BFF refresh entirely
    omit f80a473  fix(i18n): bulletproof LocaleChip — document outside-click, 
no focusout
    omit fa04d76  fix(i18n): bundle all locale catalogs statically — switch is 
now sync
    omit 9a4929c  feat(i18n): translate layer aliases + group names; seed 
re-fills bundled
    omit 5490914  fix(i18n): sidebar nav reactive on locale switch; login was 
already wired
    omit ab185a8  fix(sync): dedupe OAP UI-template rows by envelope name, 
prefer enabled
    omit 136a6e3  fix(admin): force-refresh config bundle on admin page mount
    omit e501d1c  fix(i18n): bind every t() call to the global scope
    omit bc5b34e  fix(admin): force-refresh sync status for config features; 
refetch bundle on locale switch
    omit 3de6b40  fix(admin): reconcile local drafts against remote on push + 
refresh
    omit 74c307b  feat(i18n): six-locale framework + lexicon + chrome 
translations + admin polish
     new c451a81  feat(i18n): eight-locale parity across UI chrome + 
layer/overview overlays

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (bdf534a)
            \
             N -- N -- N   refs/heads/feat-i18n (c451a81)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../bundled_templates/layers/activemq.i18n.de.json | 261 ++++++
 .../bundled_templates/layers/activemq.i18n.es.json | 165 +++-
 .../bundled_templates/layers/activemq.i18n.fr.json | 174 ++++
 .../bundled_templates/layers/activemq.i18n.ja.json | 163 +++-
 .../bundled_templates/layers/activemq.i18n.ko.json | 163 +++-
 .../bundled_templates/layers/activemq.i18n.pt.json | 169 +++-
 .../layers/activemq.i18n.zh-CN.json                |  82 +-
 .../layers/alipay_mini_program.i18n.de.json        | 142 +++
 .../layers/alipay_mini_program.i18n.es.json        |  86 +-
 .../layers/alipay_mini_program.i18n.fr.json        | 103 +++
 .../layers/alipay_mini_program.i18n.ja.json        |  88 +-
 .../layers/alipay_mini_program.i18n.ko.json        |  88 +-
 .../layers/alipay_mini_program.i18n.pt.json        |  94 +-
 .../layers/alipay_mini_program.i18n.zh-CN.json     |  57 +-
 .../bundled_templates/layers/apisix.i18n.de.json   | 184 ++++
 .../bundled_templates/layers/apisix.i18n.es.json   | 116 ++-
 .../bundled_templates/layers/apisix.i18n.fr.json   | 123 +++
 .../bundled_templates/layers/apisix.i18n.ja.json   | 118 ++-
 .../bundled_templates/layers/apisix.i18n.ko.json   | 118 ++-
 .../bundled_templates/layers/apisix.i18n.pt.json   | 120 ++-
 .../layers/apisix.i18n.zh-CN.json                  |  62 +-
 .../layers/aws_dynamodb.i18n.de.json               | 283 ++++++
 .../layers/aws_dynamodb.i18n.es.json               | 189 +++-
 .../layers/aws_dynamodb.i18n.fr.json               | 188 ++++
 .../layers/aws_dynamodb.i18n.ja.json               | 189 +++-
 .../layers/aws_dynamodb.i18n.ko.json               | 189 +++-
 .../layers/aws_dynamodb.i18n.pt.json               | 189 +++-
 .../layers/aws_dynamodb.i18n.zh-CN.json            |  72 +-
 .../bundled_templates/layers/aws_eks.i18n.de.json  | 209 +++++
 .../bundled_templates/layers/aws_eks.i18n.es.json  | 115 ++-
 .../bundled_templates/layers/aws_eks.i18n.fr.json  | 133 +++
 .../bundled_templates/layers/aws_eks.i18n.ja.json  | 113 ++-
 .../bundled_templates/layers/aws_eks.i18n.ko.json  | 113 ++-
 .../bundled_templates/layers/aws_eks.i18n.pt.json  | 117 ++-
 .../layers/aws_eks.i18n.zh-CN.json                 |  66 +-
 .../layers/aws_gateway.i18n.de.json                | 157 ++++
 .../layers/aws_gateway.i18n.es.json                |  97 +-
 .../layers/aws_gateway.i18n.fr.json                | 109 +++
 .../layers/aws_gateway.i18n.ja.json                |  97 +-
 .../layers/aws_gateway.i18n.ko.json                |  97 +-
 .../layers/aws_gateway.i18n.pt.json                |  97 +-
 .../layers/aws_gateway.i18n.zh-CN.json             |  50 +-
 .../bundled_templates/layers/aws_s3.i18n.de.json   | 108 +++
 .../bundled_templates/layers/aws_s3.i18n.es.json   |  71 +-
 .../bundled_templates/layers/aws_s3.i18n.fr.json   |  78 ++
 .../bundled_templates/layers/aws_s3.i18n.ja.json   |  71 +-
 .../bundled_templates/layers/aws_s3.i18n.ko.json   |  71 +-
 .../bundled_templates/layers/aws_s3.i18n.pt.json   |  71 +-
 .../layers/aws_s3.i18n.zh-CN.json                  |  34 +-
 .../layers/bookkeeper.i18n.de.json                 | 198 +++++
 .../layers/bookkeeper.i18n.es.json                 | 123 ++-
 .../layers/bookkeeper.i18n.fr.json                 | 130 +++
 .../layers/bookkeeper.i18n.ja.json                 | 123 ++-
 .../layers/bookkeeper.i18n.ko.json                 | 123 ++-
 .../layers/bookkeeper.i18n.pt.json                 | 123 ++-
 .../layers/bookkeeper.i18n.zh-CN.json              |  67 +-
 .../bundled_templates/layers/browser.i18n.de.json  | 215 +++++
 .../bundled_templates/layers/browser.i18n.es.json  | 108 ++-
 .../bundled_templates/layers/browser.i18n.fr.json  | 139 +++
 .../bundled_templates/layers/browser.i18n.ja.json  | 106 ++-
 .../bundled_templates/layers/browser.i18n.ko.json  | 106 ++-
 .../bundled_templates/layers/browser.i18n.pt.json  | 114 ++-
 .../layers/browser.i18n.zh-CN.json                 |  90 +-
 .../layers/cilium_service.i18n.de.json             | 311 +++++++
 .../layers/cilium_service.i18n.es.json             | 177 +++-
 .../layers/cilium_service.i18n.fr.json             | 215 +++++
 .../layers/cilium_service.i18n.ja.json             | 177 +++-
 .../layers/cilium_service.i18n.ko.json             | 177 +++-
 .../layers/cilium_service.i18n.pt.json             | 184 +++-
 .../layers/cilium_service.i18n.zh-CN.json          | 115 ++-
 .../layers/clickhouse.i18n.de.json                 | 320 +++++++
 .../layers/clickhouse.i18n.es.json                 | 202 ++++-
 .../layers/clickhouse.i18n.fr.json                 | 204 +++++
 .../layers/clickhouse.i18n.ja.json                 | 200 ++++-
 .../layers/clickhouse.i18n.ko.json                 | 200 ++++-
 .../layers/clickhouse.i18n.pt.json                 | 206 ++++-
 .../layers/clickhouse.i18n.zh-CN.json              | 113 ++-
 .../layers/elasticsearch.i18n.de.json              | 324 +++++++
 .../layers/elasticsearch.i18n.es.json              | 199 ++++-
 .../layers/elasticsearch.i18n.fr.json              | 201 +++++
 .../layers/elasticsearch.i18n.ja.json              | 197 ++++-
 .../layers/elasticsearch.i18n.ko.json              | 197 ++++-
 .../layers/elasticsearch.i18n.pt.json              | 201 ++++-
 .../layers/elasticsearch.i18n.zh-CN.json           | 120 ++-
 .../layers/envoy_ai_gateway.i18n.de.json           | 239 +++++
 .../layers/envoy_ai_gateway.i18n.es.json           | 144 ++-
 .../layers/envoy_ai_gateway.i18n.fr.json           | 154 ++++
 .../layers/envoy_ai_gateway.i18n.ja.json           | 144 ++-
 .../layers/envoy_ai_gateway.i18n.ko.json           | 144 ++-
 .../layers/envoy_ai_gateway.i18n.pt.json           | 148 +++-
 .../layers/envoy_ai_gateway.i18n.zh-CN.json        |  81 +-
 .../bundled_templates/layers/flink.i18n.de.json    | 374 ++++++++
 .../bundled_templates/layers/flink.i18n.es.json    | 224 ++++-
 .../bundled_templates/layers/flink.i18n.fr.json    | 231 +++++
 .../bundled_templates/layers/flink.i18n.ja.json    | 224 ++++-
 .../bundled_templates/layers/flink.i18n.ko.json    | 224 ++++-
 .../bundled_templates/layers/flink.i18n.pt.json    | 224 ++++-
 .../bundled_templates/layers/flink.i18n.zh-CN.json | 118 ++-
 .../bundled_templates/layers/general.i18n.de.json  | 760 ++++++++++++++++
 .../bundled_templates/layers/general.i18n.es.json  | 364 +++++++-
 .../bundled_templates/layers/general.i18n.fr.json  | 482 ++++++++++
 .../bundled_templates/layers/general.i18n.ja.json  | 366 +++++++-
 .../bundled_templates/layers/general.i18n.ko.json  | 366 +++++++-
 .../bundled_templates/layers/general.i18n.pt.json  | 378 +++++++-
 .../layers/general.i18n.zh-CN.json                 | 274 ++++--
 .../src/bundled_templates/layers/ios.i18n.de.json  | 216 +++++
 .../src/bundled_templates/layers/ios.i18n.es.json  | 142 ++-
 .../src/bundled_templates/layers/ios.i18n.fr.json  | 140 +++
 .../src/bundled_templates/layers/ios.i18n.ja.json  | 140 ++-
 .../src/bundled_templates/layers/ios.i18n.ko.json  | 140 ++-
 .../src/bundled_templates/layers/ios.i18n.pt.json  | 142 ++-
 .../bundled_templates/layers/ios.i18n.zh-CN.json   |  98 ++-
 .../src/bundled_templates/layers/k8s.i18n.de.json  | 290 ++++++
 .../src/bundled_templates/layers/k8s.i18n.es.json  | 190 +++-
 .../src/bundled_templates/layers/k8s.i18n.fr.json  | 205 +++++
 .../src/bundled_templates/layers/k8s.i18n.ja.json  | 190 +++-
 .../src/bundled_templates/layers/k8s.i18n.ko.json  | 190 +++-
 .../src/bundled_templates/layers/k8s.i18n.pt.json  | 195 ++++-
 .../bundled_templates/layers/k8s.i18n.zh-CN.json   | 136 ++-
 .../layers/k8s_service.i18n.de.json                | 378 ++++++++
 .../layers/k8s_service.i18n.es.json                | 210 ++++-
 .../layers/k8s_service.i18n.fr.json                | 265 ++++++
 .../layers/k8s_service.i18n.ja.json                | 214 ++++-
 .../layers/k8s_service.i18n.ko.json                | 214 ++++-
 .../layers/k8s_service.i18n.pt.json                | 216 ++++-
 .../layers/k8s_service.i18n.zh-CN.json             | 159 ++--
 .../bundled_templates/layers/kafka.i18n.de.json    | 226 +++++
 .../bundled_templates/layers/kafka.i18n.es.json    | 138 ++-
 .../bundled_templates/layers/kafka.i18n.fr.json    | 146 +++
 .../bundled_templates/layers/kafka.i18n.ja.json    | 136 ++-
 .../bundled_templates/layers/kafka.i18n.ko.json    | 136 ++-
 .../bundled_templates/layers/kafka.i18n.pt.json    | 140 ++-
 .../bundled_templates/layers/kafka.i18n.zh-CN.json |  67 +-
 .../src/bundled_templates/layers/kong.i18n.de.json | 219 +++++
 .../src/bundled_templates/layers/kong.i18n.es.json | 136 ++-
 .../src/bundled_templates/layers/kong.i18n.fr.json | 141 +++
 .../src/bundled_templates/layers/kong.i18n.ja.json | 136 ++-
 .../src/bundled_templates/layers/kong.i18n.ko.json | 136 ++-
 .../src/bundled_templates/layers/kong.i18n.pt.json | 140 ++-
 .../bundled_templates/layers/kong.i18n.zh-CN.json  |  76 +-
 .../src/bundled_templates/layers/mesh.i18n.de.json | 365 ++++++++
 .../src/bundled_templates/layers/mesh.i18n.es.json | 158 +++-
 .../src/bundled_templates/layers/mesh.i18n.fr.json | 252 ++++++
 .../src/bundled_templates/layers/mesh.i18n.ja.json | 158 +++-
 .../src/bundled_templates/layers/mesh.i18n.ko.json | 158 +++-
 .../src/bundled_templates/layers/mesh.i18n.pt.json | 165 +++-
 .../bundled_templates/layers/mesh.i18n.zh-CN.json  | 161 ++--
 .../bundled_templates/layers/mesh_cp.i18n.de.json  | 156 ++++
 .../bundled_templates/layers/mesh_cp.i18n.es.json  |  97 +-
 .../bundled_templates/layers/mesh_cp.i18n.fr.json  | 109 +++
 .../bundled_templates/layers/mesh_cp.i18n.ja.json  |  95 +-
 .../bundled_templates/layers/mesh_cp.i18n.ko.json  |  95 +-
 .../bundled_templates/layers/mesh_cp.i18n.pt.json  |  94 +-
 .../layers/mesh_cp.i18n.zh-CN.json                 |  62 +-
 .../bundled_templates/layers/mesh_dp.i18n.de.json  | 115 +++
 .../bundled_templates/layers/mesh_dp.i18n.es.json  |  73 +-
 .../bundled_templates/layers/mesh_dp.i18n.fr.json  |  75 ++
 .../bundled_templates/layers/mesh_dp.i18n.ja.json  |  73 +-
 .../bundled_templates/layers/mesh_dp.i18n.ko.json  |  73 +-
 .../bundled_templates/layers/mesh_dp.i18n.pt.json  |  68 +-
 .../layers/mesh_dp.i18n.zh-CN.json                 |  55 +-
 .../bundled_templates/layers/mongodb.i18n.de.json  | 266 ++++++
 .../bundled_templates/layers/mongodb.i18n.es.json  | 178 +++-
 .../bundled_templates/layers/mongodb.i18n.fr.json  | 178 ++++
 .../bundled_templates/layers/mongodb.i18n.ja.json  | 172 +++-
 .../bundled_templates/layers/mongodb.i18n.ko.json  | 172 +++-
 .../bundled_templates/layers/mongodb.i18n.pt.json  | 178 +++-
 .../layers/mongodb.i18n.zh-CN.json                 | 112 ++-
 .../bundled_templates/layers/mysql.i18n.de.json    | 212 +++++
 .../bundled_templates/layers/mysql.i18n.es.json    | 136 ++-
 .../bundled_templates/layers/mysql.i18n.fr.json    | 145 +++
 .../bundled_templates/layers/mysql.i18n.ja.json    | 134 ++-
 .../bundled_templates/layers/mysql.i18n.ko.json    | 134 ++-
 .../bundled_templates/layers/mysql.i18n.pt.json    | 138 ++-
 .../bundled_templates/layers/mysql.i18n.zh-CN.json |  73 +-
 .../bundled_templates/layers/nginx.i18n.de.json    | 188 ++++
 .../bundled_templates/layers/nginx.i18n.es.json    | 114 ++-
 .../bundled_templates/layers/nginx.i18n.fr.json    | 122 +++
 .../bundled_templates/layers/nginx.i18n.ja.json    | 116 ++-
 .../bundled_templates/layers/nginx.i18n.ko.json    | 116 ++-
 .../bundled_templates/layers/nginx.i18n.pt.json    | 118 ++-
 .../bundled_templates/layers/nginx.i18n.zh-CN.json |  59 +-
 .../bundled_templates/layers/os_linux.i18n.de.json | 140 +++
 .../bundled_templates/layers/os_linux.i18n.es.json | 102 ++-
 .../bundled_templates/layers/os_linux.i18n.fr.json | 101 +++
 .../bundled_templates/layers/os_linux.i18n.ja.json | 102 ++-
 .../bundled_templates/layers/os_linux.i18n.ko.json | 102 ++-
 .../bundled_templates/layers/os_linux.i18n.pt.json | 102 ++-
 .../layers/os_linux.i18n.zh-CN.json                |  58 +-
 .../layers/os_windows.i18n.de.json                 |  93 ++
 .../layers/os_windows.i18n.es.json                 |  74 +-
 .../layers/os_windows.i18n.fr.json                 |  73 ++
 .../layers/os_windows.i18n.ja.json                 |  74 +-
 .../layers/os_windows.i18n.ko.json                 |  74 +-
 .../layers/os_windows.i18n.pt.json                 |  74 +-
 .../layers/os_windows.i18n.zh-CN.json              |  47 +-
 .../layers/postgresql.i18n.de.json                 | 244 ++++++
 .../layers/postgresql.i18n.es.json                 | 154 +++-
 .../layers/postgresql.i18n.fr.json                 | 164 ++++
 .../layers/postgresql.i18n.ja.json                 | 152 +++-
 .../layers/postgresql.i18n.ko.json                 | 152 +++-
 .../layers/postgresql.i18n.pt.json                 | 156 +++-
 .../layers/postgresql.i18n.zh-CN.json              |  80 +-
 .../bundled_templates/layers/pulsar.i18n.de.json   | 204 +++++
 .../bundled_templates/layers/pulsar.i18n.es.json   | 128 ++-
 .../bundled_templates/layers/pulsar.i18n.fr.json   | 136 +++
 .../bundled_templates/layers/pulsar.i18n.ja.json   | 124 ++-
 .../bundled_templates/layers/pulsar.i18n.ko.json   | 124 ++-
 .../bundled_templates/layers/pulsar.i18n.pt.json   | 130 ++-
 .../layers/pulsar.i18n.zh-CN.json                  |  73 +-
 .../bundled_templates/layers/rabbitmq.i18n.de.json | 243 +++++
 .../bundled_templates/layers/rabbitmq.i18n.es.json | 160 +++-
 .../bundled_templates/layers/rabbitmq.i18n.fr.json | 162 ++++
 .../bundled_templates/layers/rabbitmq.i18n.ja.json | 156 +++-
 .../bundled_templates/layers/rabbitmq.i18n.ko.json | 156 +++-
 .../bundled_templates/layers/rabbitmq.i18n.pt.json | 162 +++-
 .../layers/rabbitmq.i18n.zh-CN.json                |  90 +-
 .../bundled_templates/layers/redis.i18n.de.json    | 207 +++++
 .../bundled_templates/layers/redis.i18n.es.json    | 128 ++-
 .../bundled_templates/layers/redis.i18n.fr.json    | 138 +++
 .../bundled_templates/layers/redis.i18n.ja.json    | 126 ++-
 .../bundled_templates/layers/redis.i18n.ko.json    | 126 ++-
 .../bundled_templates/layers/redis.i18n.pt.json    | 130 ++-
 .../bundled_templates/layers/redis.i18n.zh-CN.json |  67 +-
 .../bundled_templates/layers/rocketmq.i18n.de.json | 233 +++++
 .../bundled_templates/layers/rocketmq.i18n.es.json | 140 ++-
 .../bundled_templates/layers/rocketmq.i18n.fr.json | 156 ++++
 .../bundled_templates/layers/rocketmq.i18n.ja.json | 136 ++-
 .../bundled_templates/layers/rocketmq.i18n.ko.json | 136 ++-
 .../bundled_templates/layers/rocketmq.i18n.pt.json | 144 ++-
 .../layers/rocketmq.i18n.zh-CN.json                |  93 +-
 .../layers/so11y_go_agent.i18n.de.json             |  64 ++
 .../layers/so11y_go_agent.i18n.es.json             |  39 +-
 .../layers/so11y_go_agent.i18n.fr.json             |  41 +
 .../layers/so11y_go_agent.i18n.ja.json             |  39 +-
 .../layers/so11y_go_agent.i18n.ko.json             |  39 +-
 .../layers/so11y_go_agent.i18n.pt.json             |  39 +-
 .../layers/so11y_go_agent.i18n.zh-CN.json          |  23 +-
 .../layers/so11y_java_agent.i18n.de.json           |  64 ++
 .../layers/so11y_java_agent.i18n.es.json           |  39 +-
 .../layers/so11y_java_agent.i18n.fr.json           |  41 +
 .../layers/so11y_java_agent.i18n.ja.json           |  39 +-
 .../layers/so11y_java_agent.i18n.ko.json           |  39 +-
 .../layers/so11y_java_agent.i18n.pt.json           |  39 +-
 .../layers/so11y_java_agent.i18n.zh-CN.json        |  23 +-
 .../layers/so11y_oap.i18n.de.json                  | 254 ++++++
 .../layers/so11y_oap.i18n.es.json                  | 152 +++-
 .../layers/so11y_oap.i18n.fr.json                  | 153 ++++
 .../layers/so11y_oap.i18n.ja.json                  | 152 +++-
 .../layers/so11y_oap.i18n.ko.json                  | 152 +++-
 .../layers/so11y_oap.i18n.pt.json                  | 152 +++-
 .../layers/so11y_oap.i18n.zh-CN.json               |  77 +-
 .../layers/so11y_satellite.i18n.de.json            |  69 ++
 .../layers/so11y_satellite.i18n.es.json            |  49 +-
 .../layers/so11y_satellite.i18n.fr.json            |  50 ++
 .../layers/so11y_satellite.i18n.ja.json            |  49 +-
 .../layers/so11y_satellite.i18n.ko.json            |  49 +-
 .../layers/so11y_satellite.i18n.pt.json            |  49 +-
 .../layers/so11y_satellite.i18n.zh-CN.json         |  30 +-
 .../layers/virtual_cache.i18n.de.json              | 139 +++
 .../layers/virtual_cache.i18n.es.json              |  72 +-
 .../layers/virtual_cache.i18n.fr.json              |  97 ++
 .../layers/virtual_cache.i18n.ja.json              |  76 +-
 .../layers/virtual_cache.i18n.ko.json              |  76 +-
 .../layers/virtual_cache.i18n.pt.json              |  80 +-
 .../layers/virtual_cache.i18n.zh-CN.json           |  59 +-
 .../layers/virtual_database.i18n.de.json           |  87 ++
 .../layers/virtual_database.i18n.es.json           |  40 +-
 .../layers/virtual_database.i18n.fr.json           |  72 ++
 .../layers/virtual_database.i18n.ja.json           |  46 +-
 .../layers/virtual_database.i18n.ko.json           |  46 +-
 .../layers/virtual_database.i18n.pt.json           |  52 +-
 .../layers/virtual_database.i18n.zh-CN.json        |  51 +-
 .../layers/virtual_genai.i18n.de.json              | 181 ++++
 .../layers/virtual_genai.i18n.es.json              | 101 ++-
 .../layers/virtual_genai.i18n.fr.json              | 129 +++
 .../layers/virtual_genai.i18n.ja.json              | 103 ++-
 .../layers/virtual_genai.i18n.ko.json              | 103 ++-
 .../layers/virtual_genai.i18n.pt.json              | 109 ++-
 .../layers/virtual_genai.i18n.zh-CN.json           |  83 +-
 .../layers/virtual_mq.i18n.de.json                 | 134 +++
 .../layers/virtual_mq.i18n.es.json                 |  86 +-
 .../layers/virtual_mq.i18n.fr.json                 |  98 +++
 .../layers/virtual_mq.i18n.ja.json                 |  88 +-
 .../layers/virtual_mq.i18n.ko.json                 |  88 +-
 .../layers/virtual_mq.i18n.pt.json                 |  92 +-
 .../layers/virtual_mq.i18n.zh-CN.json              |  53 +-
 .../layers/wechat_mini_program.i18n.de.json        | 179 ++++
 .../layers/wechat_mini_program.i18n.es.json        | 105 ++-
 .../layers/wechat_mini_program.i18n.fr.json        | 122 +++
 .../layers/wechat_mini_program.i18n.ja.json        | 107 ++-
 .../layers/wechat_mini_program.i18n.ko.json        | 107 ++-
 .../layers/wechat_mini_program.i18n.pt.json        | 113 ++-
 .../layers/wechat_mini_program.i18n.zh-CN.json     |  66 +-
 .../bundled_templates/overviews/mesh.i18n.de.json  |  58 ++
 .../bundled_templates/overviews/mesh.i18n.fr.json  |  58 ++
 .../overviews/services.i18n.de.json                |  84 ++
 .../overviews/services.i18n.fr.json                |  84 ++
 apps/bff/src/http/admin/template-sync.ts           | 190 ++++
 apps/bff/src/http/config/bundle.ts                 |  48 +-
 apps/bff/src/i18n/lexicon/de.json                  | 131 +++
 apps/bff/src/i18n/lexicon/fr.json                  | 131 +++
 apps/bff/src/i18n/merge.ts                         |  47 +-
 apps/bff/src/i18n/types.ts                         |  20 +-
 apps/bff/src/i18n/validate.ts                      |  41 +-
 apps/bff/src/logic/templates/aggregator.ts         |  38 +
 apps/bff/src/logic/templates/names.ts              |  96 +-
 apps/bff/src/logic/templates/sync.ts               |  83 +-
 apps/bff/src/rbac/route-policy.ts                  |   3 +
 apps/bff/src/server.ts                             |   3 +-
 apps/ui/src/api/scopes/template-sync.ts            |  34 +
 apps/ui/src/components/charts/TopList.vue          |  11 +-
 .../ui/src/components/primitives/FloatingPanel.vue | 170 ++++
 .../src/components/primitives/TypeaheadSelect.vue  | 219 +++++
 apps/ui/src/components/primitives/WidgetTip.vue    | 164 ++++
 apps/ui/src/controls/localTranslationEdits.ts      | 129 +++
 .../admin/_shared/LayerDashboardCanvas.vue         | 303 +++++++
 .../admin/_shared/OverviewDashboardCanvas.vue      | 298 +++++++
 .../features/admin/_shared/TemplateDiffModal.vue   |  40 +-
 .../src/features/admin/_shared/TemplatePicker.vue  | 336 +++++++
 .../features/admin/_shared/TranslationEditor.vue   |  15 +-
 .../admin/global-defaults/ThemePreviewCard.vue     |  19 +-
 .../admin/translations/TranslationPreview.vue      |  15 +-
 .../admin/translations/TranslationsView.vue        | 974 +++++++++++++++------
 apps/ui/src/features/alarms/AlarmDetailPanel.vue   |  58 +-
 apps/ui/src/features/operate/_shared/RuleCard.vue  |  11 +-
 .../features/operate/cluster/ClusterStatusView.vue |  40 +-
 .../ui/src/features/operate/dsl/OalCatalogView.vue |   2 +-
 .../operate/live-debug/DebugHistoryView.vue        |   8 +-
 .../src/features/operate/live-debug/DebugLal.vue   | 118 ++-
 .../src/features/operate/live-debug/DebugOal.vue   |  73 +-
 .../operate/live-debug/LiveDebuggerView.vue        |  10 +-
 apps/ui/src/i18n/index.ts                          |  12 +-
 apps/ui/src/i18n/locales/de.json                   | 514 +++++++++++
 apps/ui/src/i18n/locales/en.json                   | 417 ++++++++-
 apps/ui/src/i18n/locales/es.json                   | 416 ++++++++-
 apps/ui/src/i18n/locales/fr.json                   | 514 +++++++++++
 apps/ui/src/i18n/locales/ja.json                   | 416 ++++++++-
 apps/ui/src/i18n/locales/ko.json                   | 416 ++++++++-
 apps/ui/src/i18n/locales/pt.json                   | 416 ++++++++-
 apps/ui/src/i18n/locales/zh-CN.json                | 417 ++++++++-
 apps/ui/src/layer/LayerServiceSelector.vue         |  11 +-
 apps/ui/src/layer/LayerShell.vue                   | 152 +---
 .../src/layer/profiling/ProcessTopologyGraph.vue   |   9 +-
 apps/ui/src/layer/profiling/ProfileFlameGraph.vue  |  11 +-
 apps/ui/src/layer/profiling/ProfileStackTable.vue  |  19 +-
 apps/ui/src/layer/traces/LayerTracesView.vue       | 243 ++---
 apps/ui/src/layer/traces/LayerZipkinTracesView.vue | 133 +--
 apps/ui/src/layer/traces/TracePopout.vue           |  76 +-
 apps/ui/src/layer/traces/ZipkinTracePopout.vue     |  35 +-
 .../render/layer-dashboard/LayerDashboardsView.vue |  28 +-
 apps/ui/src/render/widgets/AlarmsWidget.vue        |  77 +-
 apps/ui/src/render/widgets/KpiTileWidget.vue       |  10 +-
 .../src/render/widgets/MetricCompositeWidget.vue   |   8 +-
 apps/ui/src/render/widgets/MetricWidget.vue        |   8 +-
 apps/ui/src/shell/AdminFeatureWarning.vue          |  39 +-
 apps/ui/src/shell/AppShell.vue                     |   7 +-
 apps/ui/src/shell/AppTopbar.vue                    |  19 +-
 apps/ui/src/shell/ColdStageTrapBanner.vue          |  10 +-
 apps/ui/src/shell/DebugEventPanel.vue              |  14 +-
 apps/ui/src/shell/GlobalConnectivityBanner.vue     |  15 +-
 apps/ui/src/shell/LocaleChip.vue                   |  52 +-
 apps/ui/src/shell/PreviewModeBanner.vue            |   7 +-
 apps/ui/src/shell/TemplateConflictPrompt.vue       |  20 +-
 apps/ui/src/shell/router/index.ts                  |   9 +-
 apps/ui/src/state/layerSelection.ts                |  91 +-
 apps/ui/src/utils/autosize.ts                      |  58 ++
 docs/customization/i18n.md                         |  19 +-
 368 files changed, 46494 insertions(+), 3435 deletions(-)
 create mode 100644 apps/bff/src/bundled_templates/layers/activemq.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/activemq.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/alipay_mini_program.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/alipay_mini_program.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/apisix.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/apisix.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/aws_dynamodb.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/aws_dynamodb.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/aws_eks.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/aws_eks.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/aws_gateway.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/aws_gateway.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/aws_s3.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/aws_s3.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/bookkeeper.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/bookkeeper.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/browser.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/browser.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/cilium_service.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/cilium_service.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/clickhouse.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/clickhouse.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/elasticsearch.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/elasticsearch.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/envoy_ai_gateway.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/envoy_ai_gateway.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/flink.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/flink.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/general.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/general.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/ios.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/ios.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/k8s.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/k8s.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/k8s_service.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/k8s_service.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/kafka.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/kafka.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/kong.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/kong.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mesh.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mesh.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mesh_cp.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mesh_cp.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mesh_dp.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mesh_dp.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mongodb.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mongodb.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mysql.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/mysql.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/nginx.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/nginx.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/os_linux.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/os_linux.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/os_windows.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/os_windows.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/postgresql.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/postgresql.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/pulsar.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/pulsar.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/rabbitmq.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/rabbitmq.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/redis.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/redis.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/rocketmq.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/rocketmq.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/so11y_go_agent.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/so11y_go_agent.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/so11y_java_agent.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/so11y_java_agent.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/layers/so11y_oap.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/layers/so11y_oap.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/so11y_satellite.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/so11y_satellite.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_cache.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_cache.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_database.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_database.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_genai.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_genai.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_mq.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/virtual_mq.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/wechat_mini_program.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/layers/wechat_mini_program.i18n.fr.json
 create mode 100644 apps/bff/src/bundled_templates/overviews/mesh.i18n.de.json
 create mode 100644 apps/bff/src/bundled_templates/overviews/mesh.i18n.fr.json
 create mode 100644 
apps/bff/src/bundled_templates/overviews/services.i18n.de.json
 create mode 100644 
apps/bff/src/bundled_templates/overviews/services.i18n.fr.json
 create mode 100644 apps/bff/src/i18n/lexicon/de.json
 create mode 100644 apps/bff/src/i18n/lexicon/fr.json
 create mode 100644 apps/ui/src/components/primitives/FloatingPanel.vue
 create mode 100644 apps/ui/src/components/primitives/TypeaheadSelect.vue
 create mode 100644 apps/ui/src/components/primitives/WidgetTip.vue
 create mode 100644 apps/ui/src/controls/localTranslationEdits.ts
 create mode 100644 apps/ui/src/features/admin/_shared/LayerDashboardCanvas.vue
 create mode 100644 
apps/ui/src/features/admin/_shared/OverviewDashboardCanvas.vue
 create mode 100644 apps/ui/src/features/admin/_shared/TemplatePicker.vue
 create mode 100644 apps/ui/src/i18n/locales/de.json
 create mode 100644 apps/ui/src/i18n/locales/fr.json
 create mode 100644 apps/ui/src/utils/autosize.ts

Reply via email to