Adding language switching and minimize button (#25)
* Initial Push
Inititial project state
* Static demo version
* static demo site - added variables
a
* first_implementation
* Updated UI, Improved Style to be more "Reactly", added Functionality
* add parsing functions
* change folder
* Import/Export Prototype
* Adding "reactjs-popup" to package,json
* Adding GLPK source
* Rough implementation of solver + example
* Show solution in output
* example 2 + popup lib
* removing import button
This feature won't be needed in this state of the project and might come back later. Right now it serves no functional purpose.
* Removing "Popout" button
This feature won't be needed in this state of the project and might come back later. Right now it serves no functional purpose.
* Updating Logs
Now the site displays all logs created with customLog(STRING). Logs can be cleared with customLogClear();
* Adding walltime
Can be called using:
Start:
function walltimeStart() {
returns Date.now();
Stop:
function walltimeStopAndPrint(startpoint: number) {
Add startpoint as argument.
It prints the elapsed time using customLog()
* Adding duals ouput
* Adding glpk.js package
required dependency
* adding LP format export and fixing a few errors
* fixing further errors
* adding automatic build
* Moving files to correct folders
* Update nextjs.yml
* Updating README and .gitignore
README:
- added installation instructions
- added troubleshooting
gitignore:
- skipping Writerside and .idea folders
* Update LICENCE.txt
We are required to use the same license. See https://github.com/hgourvest/node-glpk/blob/master/LICENSE
* Updating icon
* Adding RegEx input checks and updating text box explanations
* Update README.md
Updating license info
Signed-off-by: SinusFox <61253950+SinusFox@users.noreply.github.com>
* Deleting license to recreate proper license
* Update layout.tsx
fixing typo
Signed-off-by: SinusFox <61253950+SinusFox@users.noreply.github.com>
* Fixing word issue
English has some false friends... like the German "Enter" is actually return in English.
* Updatint License
* Fixing design issue and updating license link
* Fixing typo in log
* Fixing white mode
* adding translations 1/2
UI Translations
Coming in 2/2: Output translations
* adding output translations
* adding minimize button
---------
Signed-off-by: SinusFox <61253950+SinusFox@users.noreply.github.com>
Co-authored-by: moebiusl <lucas.moebius@icloud.com>
Co-authored-by: Marcel Pöppe <marcel.poeppe@gmail.com>
This commit is contained in:
+204
@@ -0,0 +1,204 @@
|
||||
export default function text(lang: string, input: string): string {
|
||||
// German translation
|
||||
if (lang === "ger") {
|
||||
switch (input) {
|
||||
case "header_title":
|
||||
return "OR-Tool";
|
||||
case "header_subtitle":
|
||||
return "von Spaceholder Programming";
|
||||
case "boxObjTitle":
|
||||
return "Ziel";
|
||||
case "boxObjDesc":
|
||||
return "Geben Sie Ihr Ziel hier ein. Es ist nur ein Ziel erlaubt. Verwenden Sie eine Zeile dafür (kein 'Enter'!). Erlaubte Symbole sind 0-9, a-z, A-Z und <>=.\nBeispiel:\nx + y\n-786433 x1 + 655361 x2";
|
||||
case "boxSubjTitle":
|
||||
return "Nebenbedingungen";
|
||||
case "boxSubjDesc":
|
||||
return "Geben Sie Ihre Nebenbedingungen hier ein. Eine pro Zeile (mit der 'Enter'-Taste trennen). Erlaubte Symbole sind 0-9, a-z, A-Z und <>=.\nBeispiel:\n+1 x + 2 y <= 15\n524321 x14 + 524305 x15 <= 4194303.5";
|
||||
case "boxBoundsTitle":
|
||||
return "Grenzen";
|
||||
case "boxBoundsDesc":
|
||||
return "Geben Sie Ihre Grenzen hier ein. Eine pro Zeile (mit der 'Enter'-Taste trennen). Erlaubte Symbole sind 0-9, a-z, A-Z und <>=.\nBeispiel:\nx >= 0\nx > 0\n0 <= x1 <= 1";
|
||||
case "boxVarsTitle":
|
||||
return "Variablen";
|
||||
case "boxVarsDesc":
|
||||
return "Listen Sie alle Ihre Variablen auf. Eine pro Zeile (mit der 'Enter'-Taste trennen). Erlaubte Symbole sind a-z, A-Z.\nBeispiel:\nx\ny";
|
||||
case "boxExportLP":
|
||||
return "Als LP exportieren";
|
||||
case "boxOut":
|
||||
return "Geben Sie ein Problem ein und drücken Sie eine Aktionstaste, um die Ausgabe anzuzeigen...";
|
||||
case "buttonCalc":
|
||||
return "Berechnen";
|
||||
case "etime":
|
||||
return "Berechnungsdauer";
|
||||
case "seconds":
|
||||
return "Sekunden";
|
||||
case "err_invalidInput":
|
||||
return "Fehler: Ungültige Eingabe in";
|
||||
case "err_nullInput":
|
||||
return "Fehler: NULL- oder undefinierte Eingabe in";
|
||||
case "err_invalidInput":
|
||||
return "Fehler: Ungültige Eingabe oder fehlendes Zeichen in";
|
||||
case "input_checks_successful":
|
||||
return "Alle Eingabeprüfungen erfolgreich.";
|
||||
case "input_checks_start":
|
||||
return "Starte Eingabeprüfungen...";
|
||||
case "obj_box":
|
||||
return "Zielfeld";
|
||||
case "subj_box":
|
||||
return "Bedingungsfeld";
|
||||
case "bounds_box":
|
||||
return "Grenzenfeld";
|
||||
case "vars_box":
|
||||
return "Variablenfeld";
|
||||
case "err_emptyBox":
|
||||
return "Fehler: Leeres Textfeld.";
|
||||
case "calculating":
|
||||
return "Berechne...";
|
||||
case "maximize":
|
||||
return "Maximieren";
|
||||
case "minimize":
|
||||
return "Minimieren";
|
||||
case "run_optimization":
|
||||
return "Optimierung mit Eingaben wird ausgeführt";
|
||||
case "startProblemSetup":
|
||||
return "Starte Problemerstellung...";
|
||||
case "succProblemSetup":
|
||||
return "Problem erstellt.";
|
||||
case "startScaling":
|
||||
return "Skalieren des Problems...";
|
||||
case "succScaling":
|
||||
return "Skalierung erfolgreich.";
|
||||
case "startOptimizationSimplex":
|
||||
return "Starte Simplex-Optimierung...";
|
||||
case "succOptimizationSimplex":
|
||||
return "Simplex-Optimierung abgeschlossen.";
|
||||
case "startOptimizationInteger":
|
||||
return "Starte Ganzzahloptimierung...";
|
||||
case "succOptimizationInteger":
|
||||
return "Ganzzahloptimierung abgeschlossen.";
|
||||
case "finalObjValue":
|
||||
return "Endgültiger Zielfunktionswert";
|
||||
case "varsValues":
|
||||
return "Wert jeder Variable";
|
||||
case "dualValues":
|
||||
return "Dualwerte der Einschränkungen";
|
||||
case "downloadPrepFileString":
|
||||
return "Dateiinhalt wird vorbereitet...";
|
||||
case "downloadPrepFile":
|
||||
return "Datei wird vorbereitet...";
|
||||
case "downloadStart":
|
||||
return "Download wird gestartet.";
|
||||
case "downloadPrep":
|
||||
return "Download wird vorbereitet...";
|
||||
case "downloadFetchInput":
|
||||
return "Eingaben werden geladen...";
|
||||
case "importing":
|
||||
return "Importiere...";
|
||||
default:
|
||||
return input;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// English translation
|
||||
if (lang === "eng") {
|
||||
switch (input) {
|
||||
case "header_title":
|
||||
return "OR-Tool";
|
||||
case "header_subtitle":
|
||||
return "by Spaceholder Programming";
|
||||
case "boxObjTitle":
|
||||
return "Objective";
|
||||
case "boxObjDesc":
|
||||
return "Insert your objective here. One objective is allowed. Use one line for it (no \"return\"!) Allowed symbols are 0-9, a-z, A-Z and <>=.\nExample:\nx + y\n-786433 x1 + 655361 x2";
|
||||
case "boxSubjTitle":
|
||||
return "Subject";
|
||||
case "boxSubjDesc":
|
||||
return "Insert your subject here. One per line (divide by 'return' button). Allowed symbols are 0-9, a-z, A-Z and <>=.\nExample:\n+1 x + 2 y <= 15\n524321 x14 + 524305 x15 <= 4194303.5";
|
||||
case "boxBoundsTitle":
|
||||
return "Bounds";
|
||||
case "boxBoundsDesc":
|
||||
return "Insert your bounds here. One per line (divide by 'return' button). Allowed symbols are 0-9, a-z, A-Z and <>=.\nExample:\nx >= 0\nx > 0\n0 <= x1 <= 1";
|
||||
case "boxVarsTitle":
|
||||
return "Variables";
|
||||
case "boxVarsDesc":
|
||||
return "List all your variables. One per line (divide by 'return' button). Allowed symbols are a-z, A-Z.\nExample:\nx\ny";
|
||||
case "boxExportLP":
|
||||
return "Export as LP";
|
||||
case "boxOut":
|
||||
return "Input a problem and an action button to display output...";
|
||||
case "buttonCalc":
|
||||
return "Calculate";
|
||||
case "etime":
|
||||
return "Elapsed time";
|
||||
case "seconds":
|
||||
return "seconds";
|
||||
case "err_invalidInput":
|
||||
return "Error: Invalid input in";
|
||||
case "err_nullInput":
|
||||
return "Error: NULL or undefined input in";
|
||||
case "err_invalidInput":
|
||||
return "Error: Invalid input or missing character in";
|
||||
case "input_checks_successful":
|
||||
return "All input checks successful."
|
||||
case "input_checks_start":
|
||||
return "Starting input checks...";
|
||||
case "obj_box":
|
||||
return "object box";
|
||||
case "subj_box":
|
||||
return "subject box";
|
||||
case "bounds_box":
|
||||
return "bounds box";
|
||||
case "vars_box":
|
||||
return "variables box";
|
||||
case "err_emptyBox":
|
||||
return "Error: Empty text box.";
|
||||
case "calculating":
|
||||
return "Calculating...";
|
||||
case "maximize":
|
||||
return "Maximize";
|
||||
case "minimize":
|
||||
return "Minimize";
|
||||
case "run_optimization":
|
||||
return "Running optimization with input";
|
||||
case "startProblemSetup":
|
||||
return "Starting problem setup...";
|
||||
case "succProblemSetup":
|
||||
return "Problem created.";
|
||||
case "startScaling":
|
||||
return "Scaling problem...";
|
||||
case "succScaling":
|
||||
return "Scaling successful.";
|
||||
case "startOptimizationSimplex":
|
||||
return "Starting simplex optimization...";
|
||||
case "succOptimizationSimplex":
|
||||
return "Simplex optimization complete.";
|
||||
case "startOptimizationInteger":
|
||||
return "Starting integer optimization...";
|
||||
case "succOptimizationInteger":
|
||||
return "Integer optimization complete.";
|
||||
case "finalObjValue":
|
||||
return "Final objective value";
|
||||
case "varsValues":
|
||||
return "Value of each variable";
|
||||
case "dualValues":
|
||||
return "Dual values of constraints";
|
||||
case "downloadPrepFileString":
|
||||
return "Preparing file content string...";
|
||||
case "downloadPrepFile":
|
||||
return "Preparing file...";
|
||||
case "downloadStart":
|
||||
return "Starting download.";
|
||||
case "downloadPrep":
|
||||
return "Preparing download...";
|
||||
case "downloadFetchInput":
|
||||
return "Fetching input...";
|
||||
case "importing":
|
||||
return "Importing...";
|
||||
default:
|
||||
return input;
|
||||
}
|
||||
}
|
||||
|
||||
return "Error: Translation Module - Language Not Known.";
|
||||
}
|
||||
Reference in New Issue
Block a user