Constructor
new ContentRegistry(data)
- Source:
Example
import { ContentRegistry } from './js/core/content-registry.js';
const registry = await ContentRegistry.load();
const games = registry.getByType('game');
const resource = registry.getById('game_rotatebox');
const searchResults = registry.search('suchbaum');
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Object | Geparste content-registry.json |
Members
_byId :Map.<string, Object>
- Description:
ID → Ressource Lookup
- Source:
ID → Ressource Lookup
Type:
- Map.<string, Object>
_byType :Map.<string, Array.<Object>>
- Description:
Type → Ressourcen Lookup
- Source:
Type → Ressourcen Lookup
Type:
- Map.<string, Array.<Object>>
count
- Description:
Gibt die Gesamtzahl der Ressourcen zurück.
- Source:
Gibt die Gesamtzahl der Ressourcen zurück.
resources :Array.<Object>
- Description:
Alle Ressourcen
- Source:
Alle Ressourcen
Type:
- Array.<Object>
version :number
- Description:
Schema-Version
- Source:
Schema-Version
Type:
- number
Methods
getAllTopics() → {Array.<string>}
- Description:
Gibt alle verfügbaren Topic-Tags zurück.
- Source:
Returns:
Sortierte, deduplizierte Topic-Tags
- Type
- Array.<string>
getByAudience(audience) → {Array.<Object>}
- Description:
Gibt alle Ressourcen zurück, die für eine bestimmte Zielgruppe geeignet sind.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
audience |
'beginner' | 'academic' | 'student' |
Returns:
- Type
- Array.<Object>
getById(id) → {Object|undefined}
- Description:
Gibt eine Ressource anhand ihrer ID zurück.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
id |
string | Content-Registry ID |
Returns:
- Type
- Object | undefined
getByLevel(level) → {Array.<Object>}
- Description:
Gibt alle Ressourcen zurück, die für ein bestimmtes Level geeignet sind.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
level |
'beginner' | 'intermediate' | 'advanced' |
Returns:
- Type
- Array.<Object>
getByTopic(topic) → {Array.<Object>}
- Description:
Gibt alle Ressourcen zurück, die einen bestimmten Topic-Tag haben.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
topic |
string | Topic-Tag (z.B. 'search-trees') |
Returns:
- Type
- Array.<Object>
getByType(type) → {Array.<Object>}
- Description:
Gibt alle Ressourcen eines Typs zurück.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
type |
'game' | 'playground' | 'expedition' | 'challenge-galaxy' | 'edu-material' |
Returns:
- Type
- Array.<Object>
getPrerequisites(resourceId) → {Array.<Object>}
- Description:
Gibt die Voraussetzungen einer Ressource zurück.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
resourceId |
string | Content-Registry ID |
Returns:
Aufgelöste Ressourcen-Objekte
- Type
- Array.<Object>
getRecommendations(options) → {Array.<Object>}
- Description:
Gibt Empfehlungen basierend auf abgeschlossenen Ressourcen und Interessen.
- Source:
Parameters:
| Name | Type | Description | |||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
Properties
|
Returns:
Empfohlene Ressourcen
- Type
- Array.<Object>
getRelated(resourceId) → {Array.<Object>}
- Description:
Gibt alle verwandten Ressourcen einer gegebenen Ressource zurück.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
resourceId |
string | Content-Registry ID |
Returns:
Aufgelöste Ressourcen-Objekte
- Type
- Array.<Object>
search(query) → {Array.<Object>}
- Description:
Volltextsuche über Titel, Beschreibung, Topics und Glossar-Terms.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
query |
string | Suchbegriff (case-insensitive) |
Returns:
Passende Ressourcen, sortiert nach Relevanz
- Type
- Array.<Object>
(static) clearCache()
- Description:
Setzt den Cache zurück (z.B. für Tests).
- Source:
(async, static) load(basePathopt) → {Promise.<ContentRegistry>}
- Description:
Lädt die Registry aus der JSON-Datei (Singleton, gecacht).
- Source:
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
basePath |
string |
<optional> |
''
|
Optionaler Basis-Pfad für den Fetch (z.B. '../' wenn aus html/games/ geladen) |
Returns:
- Type
- Promise.<ContentRegistry>