Options
All
  • Public
  • Public/Protected
  • All
Menu

Hilfsfunktionen für Werkzeug-Entwickler. Diese werden nicht durch die ide-lib.js ausgeliefert!

Index

Functions

contextFileToExerciseFile

  • contextFileToExerciseFile(contextFile: File): File
  • Bildet die Kontext-Datei auf eine Aufgaben-Datei mit selben Namen ab.

    Ein Werkzeug speichert sein Datenmodell in der sogenannten Kontext-Datei. Soll eine MathCoach-Aufgabe generiert werden, ist es sinnvoll, wenn die Aufgaben-Datei den selben Namen wie die Kontext-Datei trägt (natürlich mit anderer Dateiendung).

    Beispielsweise wird eine Dateireferenz mit dem Pfad "/path/to/myExercise.mcq.json" auf eine Dateireferenz mit dem Pfad "/path/to/myExercise.groovy" abgebildet.

    Anwendungsbeispiel

     import { Helpers } from "@mathcoach/ide-api";
     const contextFile: MathCoach.File = await MC.ide.getContextFile();
     const exerciseFile: MathCoach.File = Helpers.contextFileToExerciseFile(contextFile);

    Parameters

    Returns File

createStorageBasedApi

  • createStorageBasedApi(contextFileExtension?: string, storage?: Storage): Api
  • Implementierung der MathCoach API zu Testzwecken.

    Das Dateisystem wird durch einen Storage implementiert. Einige Features der IDE (beispielsweise der Navigator) sind nicht verfügbar und führen keine Aktionen durch. Alle Aktionen werden in der Browser-Console geloggt.

    Anwendungsbeispiel

     import { Helpers } from "@mathcoach/ide-api";
     const _MC = Helpers.createStorageBasedApi();
     const contextFile = await _MC.ide.getContextFile() // use the api

    Parameters

    • Default value contextFileExtension: string = "dummy.json"

      Die Datei-Erweiterung der Kontext-Datei. Das Werkzeug sollte unabhängig davon implementiert sein, da der Administrator der MathCoach IDE unter Umständen auf eine Alternative ausweichen muss.

    • Default value storage: Storage = (typeof localStorage === "undefined") ? new InMemoryStorage() : localStorage

      Storage-Implementierung, die zum Speichern von Dateien verwendet werden soll. Standardmäßig wird der LocalStorage des Browsers verwendet bzw. falls nicht verfügbar der InMemoryStorage.

    Returns Api

enableOfflineUsageIfNecessary

  • enableOfflineUsageIfNecessary(contextFileExtension?: string): boolean
  • Bildet die MathCoach API nach, sodass diese auch Offline (ohne IDE) verfügbar ist. (Siehe auch createStorageBasedApi).

    Hinweis: Wenn die echte MathCoach-API der IDE verfügbar ist, hat der Aufruf dieser Funktion keinen Seiteneffekt.

    Anwendungsbeispiel

     import { Helpers } from "@mathcoach/ide-api";
     Helpers.enableOfflineUsageIfNecessary();
     MC.isReady() // use the api

    Parameters

    • Default value contextFileExtension: string = "dummy.json"

      Datei-Erweiterung der Kontext-Datei (Das Werkzeug soll jedoch unabhängig von der Endung arbeiten können)

    Returns boolean

    Gibt true zurück, wenn die Offline-Funktionalität aktiviert wurde, andernfalls false

isFile

  • isFile(maybeFile: any): maybeFile is File
  • Type Guard, der prüft, ob es sich um eine gültige MathCoach.File-Referenz handelt.

    Parameters

    • maybeFile: any

      Ein beliebiges Objekt, das geprüft werden soll

    Returns maybeFile is File