open-standards/wai/quantum-studio/locales/index.js
Transaction Science f090e8b6d1 quantum-studio: the course in the Studio and the desktop app, and the interface in Simplified Chinese
The Course pane lists the 21 lessons, shows a lesson's text and exercise,
loads its starter, and checks the program in the editor with the engine
(engine_course_check in the page, the same commands in the desktop app):
each case's verdict, each rule, What went wrong? from the diagnostics, the
verdict and the critique, the hints one at a time with the engine's pointer,
and a hint from the assistant when a model is connected, any program in its
answer held back. Progress is kept only in this browser and says so.

The interface's words are data, locales/<locale>/<area>.json for every part,
English the source and Simplified Chinese marked machine-assisted; the Studio
follows the browser's language until the reader picks one with the switch.
test/locales.test.mjs holds every locale to every key and placeholder. The
e2e checks the course in English and in Chinese. wai-web's engine tests pin
23 native and 16 wasm32, a course check the same bytes in both.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 08:43:06 -04:00

67 lines
5.3 KiB
JavaScript

// The Studio's words: one file for each part of the interface in each locale,
// gathered here. English is the source. test/locales.test.mjs holds this list
// to the files on disk, and every locale to every key.
import enAssistant from './en/assistant.json' with { type: 'json' };
import enCircuitSvg from './en/circuit_svg.json' with { type: 'json' };
import enCompileView from './en/compile_view.json' with { type: 'json' };
import enConverge from './en/converge.json' with { type: 'json' };
import enCourse from './en/course.json' with { type: 'json' };
import enCritiqueView from './en/critique_view.json' with { type: 'json' };
import enDebugger from './en/debugger.json' with { type: 'json' };
import enDevice from './en/device.json' with { type: 'json' };
import enDom from './en/dom.json' with { type: 'json' };
import enEstimateView from './en/estimate_view.json' with { type: 'json' };
import enExamples from './en/examples.json' with { type: 'json' };
import enFlags from './en/flags.json' with { type: 'json' };
import enFrame from './en/frame.json' with { type: 'json' };
import enGallery from './en/gallery.json' with { type: 'json' };
import enGenerators from './en/generators.json' with { type: 'json' };
import enHardware from './en/hardware.json' with { type: 'json' };
import enNovelty from './en/novelty.json' with { type: 'json' };
import enPredict from './en/predict.json' with { type: 'json' };
import enRewriteView from './en/rewrite_view.json' with { type: 'json' };
import enRules from './en/rules.json' with { type: 'json' };
import enShortcutsView from './en/shortcuts_view.json' with { type: 'json' };
import enStateViews from './en/state_views.json' with { type: 'json' };
import enStudy from './en/study.json' with { type: 'json' };
import enTaste from './en/taste.json' with { type: 'json' };
import enVerdictView from './en/verdict_view.json' with { type: 'json' };
import enVersions from './en/versions.json' with { type: 'json' };
import enVisualEdit from './en/visual_edit.json' with { type: 'json' };
import enWorkbench from './en/workbench.json' with { type: 'json' };
import zhAssistant from './zh-CN/assistant.json' with { type: 'json' };
import zhCircuitSvg from './zh-CN/circuit_svg.json' with { type: 'json' };
import zhCompileView from './zh-CN/compile_view.json' with { type: 'json' };
import zhConverge from './zh-CN/converge.json' with { type: 'json' };
import zhCourse from './zh-CN/course.json' with { type: 'json' };
import zhCritiqueView from './zh-CN/critique_view.json' with { type: 'json' };
import zhDebugger from './zh-CN/debugger.json' with { type: 'json' };
import zhDevice from './zh-CN/device.json' with { type: 'json' };
import zhDom from './zh-CN/dom.json' with { type: 'json' };
import zhEstimateView from './zh-CN/estimate_view.json' with { type: 'json' };
import zhExamples from './zh-CN/examples.json' with { type: 'json' };
import zhFlags from './zh-CN/flags.json' with { type: 'json' };
import zhFrame from './zh-CN/frame.json' with { type: 'json' };
import zhGallery from './zh-CN/gallery.json' with { type: 'json' };
import zhGenerators from './zh-CN/generators.json' with { type: 'json' };
import zhHardware from './zh-CN/hardware.json' with { type: 'json' };
import zhNovelty from './zh-CN/novelty.json' with { type: 'json' };
import zhPredict from './zh-CN/predict.json' with { type: 'json' };
import zhRewriteView from './zh-CN/rewrite_view.json' with { type: 'json' };
import zhRules from './zh-CN/rules.json' with { type: 'json' };
import zhShortcutsView from './zh-CN/shortcuts_view.json' with { type: 'json' };
import zhStateViews from './zh-CN/state_views.json' with { type: 'json' };
import zhStudy from './zh-CN/study.json' with { type: 'json' };
import zhTaste from './zh-CN/taste.json' with { type: 'json' };
import zhVerdictView from './zh-CN/verdict_view.json' with { type: 'json' };
import zhVersions from './zh-CN/versions.json' with { type: 'json' };
import zhVisualEdit from './zh-CN/visual_edit.json' with { type: 'json' };
import zhWorkbench from './zh-CN/workbench.json' with { type: 'json' };
// The parts of the interface, in the order their words are gathered.
export const AREAS = ['assistant', 'circuit_svg', 'compile_view', 'converge', 'course', 'critique_view', 'debugger', 'device', 'dom', 'estimate_view', 'examples', 'flags', 'frame', 'gallery', 'generators', 'hardware', 'novelty', 'predict', 'rewrite_view', 'rules', 'shortcuts_view', 'state_views', 'study', 'taste', 'verdict_view', 'versions', 'visual_edit', 'workbench'];
export default {
en: { ...enAssistant, ...enCircuitSvg, ...enCompileView, ...enConverge, ...enCourse, ...enCritiqueView, ...enDebugger, ...enDevice, ...enDom, ...enEstimateView, ...enExamples, ...enFlags, ...enFrame, ...enGallery, ...enGenerators, ...enHardware, ...enNovelty, ...enPredict, ...enRewriteView, ...enRules, ...enShortcutsView, ...enStateViews, ...enStudy, ...enTaste, ...enVerdictView, ...enVersions, ...enVisualEdit, ...enWorkbench },
'zh-CN': { ...zhAssistant, ...zhCircuitSvg, ...zhCompileView, ...zhConverge, ...zhCourse, ...zhCritiqueView, ...zhDebugger, ...zhDevice, ...zhDom, ...zhEstimateView, ...zhExamples, ...zhFlags, ...zhFrame, ...zhGallery, ...zhGenerators, ...zhHardware, ...zhNovelty, ...zhPredict, ...zhRewriteView, ...zhRules, ...zhShortcutsView, ...zhStateViews, ...zhStudy, ...zhTaste, ...zhVerdictView, ...zhVersions, ...zhVisualEdit, ...zhWorkbench },
};