@longsightgroup/qti3-player 0.3.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/README.md +153 -13
  2. package/dist/index.d.ts +13 -2
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +6 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/player-adapter.d.ts +62 -0
  7. package/dist/player-adapter.d.ts.map +1 -0
  8. package/dist/player-adapter.js +119 -0
  9. package/dist/player-adapter.js.map +1 -0
  10. package/dist/player-dev.d.ts +4 -0
  11. package/dist/player-dev.d.ts.map +1 -0
  12. package/dist/player-dev.js +14 -0
  13. package/dist/player-dev.js.map +1 -0
  14. package/dist/player-element.d.ts +14 -1
  15. package/dist/player-element.d.ts.map +1 -1
  16. package/dist/player-element.js +57 -5
  17. package/dist/player-element.js.map +1 -1
  18. package/dist/player-locale.d.ts +8 -3
  19. package/dist/player-locale.d.ts.map +1 -1
  20. package/dist/player-locale.js +16 -175
  21. package/dist/player-locale.js.map +1 -1
  22. package/dist/player-message-catalog-default.d.ts +4 -0
  23. package/dist/player-message-catalog-default.d.ts.map +1 -0
  24. package/dist/player-message-catalog-default.js +118 -0
  25. package/dist/player-message-catalog-default.js.map +1 -0
  26. package/dist/player-message-catalog-validate.d.ts +31 -0
  27. package/dist/player-message-catalog-validate.d.ts.map +1 -0
  28. package/dist/player-message-catalog-validate.js +327 -0
  29. package/dist/player-message-catalog-validate.js.map +1 -0
  30. package/dist/player-message-catalog.d.ts +18 -0
  31. package/dist/player-message-catalog.d.ts.map +1 -0
  32. package/dist/player-message-catalog.js +40 -0
  33. package/dist/player-message-catalog.js.map +1 -0
  34. package/dist/player-message-keys.d.ts +6 -0
  35. package/dist/player-message-keys.d.ts.map +1 -0
  36. package/dist/player-message-keys.js +7 -0
  37. package/dist/player-message-keys.js.map +1 -0
  38. package/dist/player-message-manifest.d.ts +272 -0
  39. package/dist/player-message-manifest.d.ts.map +1 -0
  40. package/dist/player-message-manifest.js +83 -0
  41. package/dist/player-message-manifest.js.map +1 -0
  42. package/dist/player-message-overrides.d.ts +3 -0
  43. package/dist/player-message-overrides.d.ts.map +1 -0
  44. package/dist/player-message-overrides.js +28 -0
  45. package/dist/player-message-overrides.js.map +1 -0
  46. package/dist/player-message-resolver.d.ts +31 -0
  47. package/dist/player-message-resolver.d.ts.map +1 -0
  48. package/dist/player-message-resolver.js +110 -0
  49. package/dist/player-message-resolver.js.map +1 -0
  50. package/dist/player-messages.d.ts +0 -38
  51. package/dist/player-messages.d.ts.map +1 -1
  52. package/dist/player-types.d.ts +12 -2
  53. package/dist/player-types.d.ts.map +1 -1
  54. package/package.json +3 -3
  55. package/src/controls/remove-button.ts +8 -5
  56. package/src/index.ts +61 -5
  57. package/src/interactions/choice-interaction.ts +6 -2
  58. package/src/interactions/drawing-interaction.ts +14 -9
  59. package/src/interactions/end-attempt-interaction.ts +3 -3
  60. package/src/interactions/gap-match-interaction.ts +32 -13
  61. package/src/interactions/graphic-associate-interaction.ts +15 -10
  62. package/src/interactions/hotspot-interaction.ts +10 -6
  63. package/src/interactions/inline-choice-interaction.ts +4 -4
  64. package/src/interactions/interaction-registry.ts +12 -12
  65. package/src/interactions/match-interaction.ts +9 -6
  66. package/src/interactions/pair-interaction.ts +22 -14
  67. package/src/interactions/position-object-interaction.ts +22 -13
  68. package/src/interactions/select-point-interaction.ts +25 -13
  69. package/src/interactions/shared.ts +21 -4
  70. package/src/interactions/text-interaction.ts +14 -4
  71. package/src/interactions/upload-interaction.ts +6 -3
  72. package/src/player/content-state.ts +12 -1
  73. package/src/player/interaction-render.ts +4 -4
  74. package/src/player-adapter.ts +253 -0
  75. package/src/player-dev.ts +14 -0
  76. package/src/player-element.ts +78 -8
  77. package/src/player-locale.ts +28 -199
  78. package/src/player-message-catalog-default.ts +119 -0
  79. package/src/player-message-catalog-validate.ts +425 -0
  80. package/src/player-message-catalog.ts +72 -0
  81. package/src/player-message-keys.ts +12 -0
  82. package/src/player-message-manifest.ts +103 -0
  83. package/src/player-message-overrides.ts +38 -0
  84. package/src/player-message-resolver.ts +205 -0
  85. package/src/player-messages.ts +0 -30
  86. package/src/player-types.ts +15 -4
  87. package/src/reorder/a11y.ts +22 -7
  88. package/src/reorder/graphic-order-interaction.ts +23 -16
  89. package/src/reorder/list-controls.ts +8 -6
  90. package/src/reorder/order-interaction.ts +7 -5
  91. package/src/styles/base-styles.ts +20 -5
  92. package/src/styles/graphic-styles.ts +0 -6
@@ -32,11 +32,14 @@ export class QtiAssessmentItemPlayer extends HTMLElementBase {
32
32
  validationMessages = [];
33
33
  authoringDiagnostics = [];
34
34
  languageOfInterfaceOverride;
35
+ messageCatalogOverride;
35
36
  messageOverrides = {};
37
+ resolvedMessagesCache;
36
38
  sessionControl = {
37
39
  validateResponses: true,
38
40
  showFeedback: true,
39
41
  };
42
+ loadGeneration = 0;
40
43
  get languageOfInterface() {
41
44
  return (this.languageOfInterfaceOverride ??
42
45
  this.getAttribute?.("language-of-interface") ??
@@ -45,6 +48,7 @@ export class QtiAssessmentItemPlayer extends HTMLElementBase {
45
48
  }
46
49
  set languageOfInterface(value) {
47
50
  this.languageOfInterfaceOverride = normalizedLocale(value);
51
+ this.invalidatePlayerMessages();
48
52
  this.rerenderIfLoaded();
49
53
  }
50
54
  get locale() {
@@ -58,15 +62,58 @@ export class QtiAssessmentItemPlayer extends HTMLElementBase {
58
62
  }
59
63
  set messages(value) {
60
64
  this.messageOverrides = value ?? {};
65
+ this.invalidatePlayerMessages();
66
+ this.rerenderIfLoaded();
67
+ }
68
+ get messageCatalog() {
69
+ return this.messageCatalogOverride;
70
+ }
71
+ set messageCatalog(value) {
72
+ this.messageCatalogOverride = value;
73
+ this.invalidatePlayerMessages();
61
74
  this.rerenderIfLoaded();
62
75
  }
63
76
  attributeChangedCallback(name, oldValue, newValue) {
64
77
  if ((name !== "language-of-interface" && name !== "locale") || oldValue === newValue) {
65
78
  return;
66
79
  }
80
+ this.invalidatePlayerMessages();
67
81
  this.rerenderIfLoaded();
68
82
  }
83
+ invalidatePlayerMessages() {
84
+ this.resolvedMessagesCache = undefined;
85
+ }
86
+ /** Clears the loaded item. Does not emit player events; declarative hosts control this via `xml`. */
87
+ clearItem() {
88
+ this.loadGeneration += 1;
89
+ delete this.documentModel;
90
+ delete this.session;
91
+ this.validationMessages = [];
92
+ this.authoringDiagnostics = [];
93
+ this.replaceChildren();
94
+ }
69
95
  async loadXml(xml, options = {}) {
96
+ const generation = this.beginLoad();
97
+ await this.applyLoadedXml(generation, xml, options);
98
+ }
99
+ async loadUrl(url, options = {}) {
100
+ const generation = this.beginLoad();
101
+ const fetchXml = options.fetchXml ?? defaultFetchXml;
102
+ const xml = await fetchXml(url);
103
+ if (!this.isCurrentLoad(generation))
104
+ return;
105
+ await this.applyLoadedXml(generation, xml, options);
106
+ }
107
+ beginLoad() {
108
+ this.loadGeneration += 1;
109
+ return this.loadGeneration;
110
+ }
111
+ isCurrentLoad(generation) {
112
+ return generation === this.loadGeneration;
113
+ }
114
+ async applyLoadedXml(generation, xml, options) {
115
+ if (!this.isCurrentLoad(generation))
116
+ return;
70
117
  this.sessionControl = {
71
118
  validateResponses: options.sessionControl?.validateResponses ?? true,
72
119
  showFeedback: options.sessionControl?.showFeedback ?? true,
@@ -79,14 +126,20 @@ export class QtiAssessmentItemPlayer extends HTMLElementBase {
79
126
  ...collectEmbeddedInteractionDiagnostics(result.document.item),
80
127
  ]
81
128
  : [];
129
+ if (!this.isCurrentLoad(generation))
130
+ return;
82
131
  this.dispatchEvent(new CustomEvent("qti-diagnostics", {
83
132
  detail: { diagnostics: [...result.diagnostics, ...playerDiagnostics] },
84
133
  }));
85
134
  this.authoringDiagnostics = cloneDiagnostics(playerDiagnostics.filter((diagnostic) => diagnostic.severity === "error"));
86
135
  if (!result.document) {
136
+ if (!this.isCurrentLoad(generation))
137
+ return;
87
138
  this.replaceChildren(errorView("Unable to parse QTI item."));
88
139
  return;
89
140
  }
141
+ if (!this.isCurrentLoad(generation))
142
+ return;
90
143
  this.documentModel = result.document;
91
144
  this.session = createItemSession(result.document, options.state);
92
145
  this.validationMessages = cloneDiagnostics(responseValidationMessages(options.state?.validationMessages ?? []));
@@ -98,10 +151,6 @@ export class QtiAssessmentItemPlayer extends HTMLElementBase {
98
151
  this.dispatchPlayerEvent("qti-ready", { item: result.document.item });
99
152
  this.emitStateChange();
100
153
  }
101
- async loadUrl(url, options = {}) {
102
- const fetchXml = options.fetchXml ?? defaultFetchXml;
103
- await this.loadXml(await fetchXml(url), options);
104
- }
105
154
  scoreAttempt(options = {}) {
106
155
  const session = this.session;
107
156
  if (!session)
@@ -210,7 +259,10 @@ export class QtiAssessmentItemPlayer extends HTMLElementBase {
210
259
  this.dispatchEvent(new CustomEvent(type, { detail }));
211
260
  }
212
261
  playerMessages() {
213
- return resolvePlayerMessages(this.languageOfInterface, this.messageOverrides);
262
+ if (!this.resolvedMessagesCache) {
263
+ this.resolvedMessagesCache = resolvePlayerMessages(this.languageOfInterface, this.messageOverrides, this.messageCatalogOverride);
264
+ }
265
+ return this.resolvedMessagesCache;
214
266
  }
215
267
  rerenderIfLoaded() {
216
268
  if (!this.documentModel)
@@ -1 +1 @@
1
- {"version":3,"file":"player-element.js","sourceRoot":"","sources":["../src/player-element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"player-element.js","sourceRoot":"","sources":["../src/player-element.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
- import type { QtiPlayerMessages } from "./player-messages.js";
2
- import type { QtiPlayerMessageOverrides } from "./player-types.js";
3
- export declare function resolvePlayerMessages(locale: string, overrides: QtiPlayerMessageOverrides): QtiPlayerMessages;
1
+ import type { PlayerMessageCatalog } from "./player-message-catalog.js";
2
+ import { type PlayerMessageResolver } from "./player-message-resolver.js";
3
+ import type { QtiPlayerMessageOverrides } from "./player-message-resolver.js";
4
+ /**
5
+ * Resolves player chrome messages: catalog (or English defaults) merged with overrides.
6
+ * `locale` does not select built-in catalogs; use `catalog` via `player.messageCatalog`.
7
+ */
8
+ export declare function resolvePlayerMessages(locale: string, overrides: QtiPlayerMessageOverrides, catalog?: PlayerMessageCatalog): PlayerMessageResolver;
4
9
  export declare function normalizedLocale(value: string | undefined | null): string | undefined;
5
10
  export declare function defaultPlayerLocale(host?: Element): string;
6
11
  //# sourceMappingURL=player-locale.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"player-locale.d.ts","sourceRoot":"","sources":["../src/player-locale.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAyJnE,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,yBAAyB,GACnC,iBAAiB,CAGnB;AA6CD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAQrF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAgB1D"}
1
+ {"version":3,"file":"player-locale.d.ts","sourceRoot":"","sources":["../src/player-locale.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAO9E;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,yBAAyB,EACpC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,qBAAqB,CASvB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAQrF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAgB1D"}
@@ -1,179 +1,20 @@
1
- const defaultEnglishPlayerMessages = {
2
- remove: () => "Remove",
3
- removePair: ({ label }) => `Remove ${label}`,
4
- clearDrawing: () => "Clear drawing",
5
- clearPoints: () => "Clear points",
6
- endAttempt: () => "End attempt",
7
- uploadResponse: () => "Upload response",
8
- movableObject: () => "Movable object",
9
- placeObject: () => "Place",
10
- inlineChoicePrompt: () => "Choose...",
11
- noPointSelected: () => "No point selected",
12
- noRegionSelected: () => "No region selected",
13
- noAssociationsMade: () => "No associations made",
14
- associationsMade: ({ count }) => `${count} ${count === 1 ? "association" : "associations"} made.`,
15
- associationPairLabel: ({ source, target }) => `${source} to ${target}`,
16
- hotspotSelectedChooseAnother: ({ label }) => `${label} selected. Choose another hotspot.`,
17
- moveChoice: ({ label, direction }) => `Move ${label} ${direction}`,
18
- movePoint: ({ direction }) => `Move point ${direction}`,
19
- moveObject: ({ direction }) => `Move object ${direction}`,
20
- };
21
- const playerMessages = {
22
- defaultEnglish: defaultEnglishPlayerMessages,
23
- spanish: {
24
- remove: () => "Quitar",
25
- removePair: ({ label }) => `Quitar ${label}`,
26
- clearDrawing: () => "Borrar dibujo",
27
- clearPoints: () => "Borrar puntos",
28
- endAttempt: () => "Finalizar intento",
29
- uploadResponse: () => "Subir respuesta",
30
- movableObject: () => "Objeto movible",
31
- placeObject: () => "Colocar",
32
- inlineChoicePrompt: () => "Elija...",
33
- noPointSelected: () => "Ningun punto seleccionado",
34
- noRegionSelected: () => "Ninguna region seleccionada",
35
- noAssociationsMade: () => "Ninguna asociacion realizada",
36
- associationsMade: ({ count }) => `${count} ${count === 1 ? "asociacion realizada" : "asociaciones realizadas"}.`,
37
- associationPairLabel: ({ source, target }) => `${source} con ${target}`,
38
- hotspotSelectedChooseAnother: ({ label }) => `${label} seleccionado. Elija otro punto activo.`,
39
- moveChoice: ({ label, direction }) => `Mover ${label} ${spanishDirection(direction)}`,
40
- movePoint: ({ direction }) => `Mover punto ${spanishDirection(direction)}`,
41
- moveObject: ({ direction }) => `Mover objeto ${spanishDirection(direction)}`,
42
- },
43
- swedish: {
44
- remove: () => "Ta bort",
45
- removePair: ({ label }) => `Ta bort ${label}`,
46
- clearDrawing: () => "Rensa ritning",
47
- clearPoints: () => "Rensa punkter",
48
- endAttempt: () => "Avsluta forsok",
49
- uploadResponse: () => "Ladda upp svar",
50
- movableObject: () => "Flyttbart objekt",
51
- placeObject: () => "Placera",
52
- inlineChoicePrompt: () => "Valj...",
53
- noPointSelected: () => "Ingen punkt vald",
54
- noRegionSelected: () => "Ingen region vald",
55
- noAssociationsMade: () => "Inga associationer gjorda",
56
- associationsMade: ({ count }) => `${count} ${count === 1 ? "association gjord" : "associationer gjorda"}.`,
57
- associationPairLabel: ({ source, target }) => `${source} med ${target}`,
58
- hotspotSelectedChooseAnother: ({ label }) => `${label} valt. Valj en annan hotspot.`,
59
- moveChoice: ({ label, direction }) => `Flytta ${label} ${swedishDirection(direction)}`,
60
- movePoint: ({ direction }) => `Flytta punkt ${swedishDirection(direction)}`,
61
- moveObject: ({ direction }) => `Flytta objekt ${swedishDirection(direction)}`,
62
- },
63
- german: {
64
- remove: () => "Entfernen",
65
- removePair: ({ label }) => `${label} entfernen`,
66
- clearDrawing: () => "Zeichnung loeschen",
67
- clearPoints: () => "Punkte loeschen",
68
- endAttempt: () => "Versuch beenden",
69
- uploadResponse: () => "Antwort hochladen",
70
- movableObject: () => "Bewegliches Objekt",
71
- placeObject: () => "Platzieren",
72
- inlineChoicePrompt: () => "Waehlen...",
73
- noPointSelected: () => "Kein Punkt ausgewaehlt",
74
- noRegionSelected: () => "Keine Region ausgewaehlt",
75
- noAssociationsMade: () => "Keine Zuordnungen erstellt",
76
- associationsMade: ({ count }) => `${count} ${count === 1 ? "Zuordnung erstellt" : "Zuordnungen erstellt"}.`,
77
- associationPairLabel: ({ source, target }) => `${source} mit ${target}`,
78
- hotspotSelectedChooseAnother: ({ label }) => `${label} ausgewaehlt. Waehlen Sie einen weiteren Hotspot.`,
79
- moveChoice: ({ label, direction }) => `${label} ${germanDirection(direction)} bewegen`,
80
- movePoint: ({ direction }) => `Punkt ${germanDirection(direction)} bewegen`,
81
- moveObject: ({ direction }) => `Objekt ${germanDirection(direction)} bewegen`,
82
- },
83
- portuguese: {
84
- remove: () => "Remover",
85
- removePair: ({ label }) => `Remover ${label}`,
86
- clearDrawing: () => "Limpar desenho",
87
- clearPoints: () => "Limpar pontos",
88
- endAttempt: () => "Finalizar tentativa",
89
- uploadResponse: () => "Enviar resposta",
90
- movableObject: () => "Objeto movel",
91
- placeObject: () => "Posicionar",
92
- inlineChoicePrompt: () => "Escolha...",
93
- noPointSelected: () => "Nenhum ponto selecionado",
94
- noRegionSelected: () => "Nenhuma regiao selecionada",
95
- noAssociationsMade: () => "Nenhuma associacao feita",
96
- associationsMade: ({ count }) => `${count} ${count === 1 ? "associacao feita" : "associacoes feitas"}.`,
97
- associationPairLabel: ({ source, target }) => `${source} com ${target}`,
98
- hotspotSelectedChooseAnother: ({ label }) => `${label} selecionado. Escolha outro ponto ativo.`,
99
- moveChoice: ({ label, direction }) => `Mover ${label} ${portugueseDirection(direction)}`,
100
- movePoint: ({ direction }) => `Mover ponto ${portugueseDirection(direction)}`,
101
- moveObject: ({ direction }) => `Mover objeto ${portugueseDirection(direction)}`,
102
- },
103
- french: {
104
- remove: () => "Supprimer",
105
- removePair: ({ label }) => `Supprimer ${label}`,
106
- clearDrawing: () => "Effacer le dessin",
107
- clearPoints: () => "Effacer les points",
108
- endAttempt: () => "Terminer la tentative",
109
- uploadResponse: () => "Televerser la reponse",
110
- movableObject: () => "Objet mobile",
111
- placeObject: () => "Placer",
112
- inlineChoicePrompt: () => "Choisir...",
113
- noPointSelected: () => "Aucun point selectionne",
114
- noRegionSelected: () => "Aucune region selectionnee",
115
- noAssociationsMade: () => "Aucune association effectuee",
116
- associationsMade: ({ count }) => `${count} ${count === 1 ? "association effectuee" : "associations effectuees"}.`,
117
- associationPairLabel: ({ source, target }) => `${source} avec ${target}`,
118
- hotspotSelectedChooseAnother: ({ label }) => `${label} selectionne. Choisissez un autre point actif.`,
119
- moveChoice: ({ label, direction }) => `Deplacer ${label} vers ${frenchDirection(direction)}`,
120
- movePoint: ({ direction }) => `Deplacer le point vers ${frenchDirection(direction)}`,
121
- moveObject: ({ direction }) => `Deplacer l'objet vers ${frenchDirection(direction)}`,
122
- },
123
- };
124
- const builtInPlayerMessageCatalogs = new Map([
125
- ["en", playerMessages.defaultEnglish],
126
- ["es", playerMessages.spanish],
127
- ["es-es", playerMessages.spanish],
128
- ["es-mx", playerMessages.spanish],
129
- ["sv", playerMessages.swedish],
130
- ["sv-se", playerMessages.swedish],
131
- ["de", playerMessages.german],
132
- ["de-de", playerMessages.german],
133
- ["pt", playerMessages.portuguese],
134
- ["pt-br", playerMessages.portuguese],
135
- ["pt-pt", playerMessages.portuguese],
136
- ["fr", playerMessages.french],
137
- ["fr-ca", playerMessages.french],
138
- ["fr-fr", playerMessages.french],
139
- ]);
140
- export function resolvePlayerMessages(locale, overrides) {
141
- const catalog = builtInPlayerMessageCatalog(locale);
142
- return { ...defaultEnglishPlayerMessages, ...catalog, ...overrides };
143
- }
144
- function spanishDirection(direction) {
145
- return { up: "arriba", down: "abajo", left: "a la izquierda", right: "a la derecha" }[direction];
146
- }
147
- function swedishDirection(direction) {
148
- return { up: "upp", down: "ned", left: "vanster", right: "hoger" }[direction];
149
- }
150
- function germanDirection(direction) {
151
- return { up: "nach oben", down: "nach unten", left: "nach links", right: "nach rechts" }[direction];
152
- }
153
- function portugueseDirection(direction) {
154
- return { up: "para cima", down: "para baixo", left: "para a esquerda", right: "para a direita" }[direction];
155
- }
156
- function frenchDirection(direction) {
157
- return { up: "le haut", down: "le bas", left: "la gauche", right: "la droite" }[direction];
158
- }
159
- function builtInPlayerMessageCatalog(locale) {
160
- for (const candidate of localeFallbacks(locale)) {
161
- const catalog = builtInPlayerMessageCatalogs.get(candidate);
162
- if (catalog)
163
- return catalog;
164
- }
165
- return undefined;
166
- }
167
- function localeFallbacks(locale) {
168
- const normalized = normalizedLocale(locale)?.toLowerCase();
169
- if (!normalized)
170
- return ["en"];
171
- const parts = normalized.split("-");
172
- const fallbacks = [];
173
- for (let length = parts.length; length > 0; length -= 1) {
174
- fallbacks.push(parts.slice(0, length).join("-"));
1
+ import { applyPlayerMessageOverrides } from "./player-message-overrides.js";
2
+ import { createPlayerMessageResolver, defaultPlayerMessageResolver, } from "./player-message-resolver.js";
3
+ import { warnPlayerMessageOnce } from "./player-dev.js";
4
+ function isEnglishLocale(locale) {
5
+ const normalized = normalizedLocale(locale) ?? locale;
6
+ return normalized.toLowerCase().startsWith("en");
7
+ }
8
+ /**
9
+ * Resolves player chrome messages: catalog (or English defaults) merged with overrides.
10
+ * `locale` does not select built-in catalogs; use `catalog` via `player.messageCatalog`.
11
+ */
12
+ export function resolvePlayerMessages(locale, overrides, catalog) {
13
+ if (!catalog && !isEnglishLocale(locale) && Object.keys(overrides).length === 0) {
14
+ warnPlayerMessageOnce(`locale-without-catalog:${locale}`, `language-of-interface is "${locale}" but no player.messageCatalog was set; chrome stays English. Load a locale file and assign player.messageCatalog.`);
175
15
  }
176
- return fallbacks.includes("en") ? fallbacks : [...fallbacks, "en"];
16
+ const base = catalog ? createPlayerMessageResolver(catalog) : defaultPlayerMessageResolver;
17
+ return applyPlayerMessageOverrides(base, overrides);
177
18
  }
178
19
  export function normalizedLocale(value) {
179
20
  const trimmed = value?.trim();
@@ -1 +1 @@
1
- {"version":3,"file":"player-locale.js","sourceRoot":"","sources":["../src/player-locale.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"player-locale.js","sourceRoot":"","sources":["../src/player-locale.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,GAE7B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGxD,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;IACtD,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAc,EACd,SAAoC,EACpC,OAA8B;IAE9B,IAAI,CAAC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChF,qBAAqB,CACnB,0BAA0B,MAAM,EAAE,EAClC,6BAA6B,MAAM,oHAAoH,CACxJ,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC;IAC3F,OAAO,2BAA2B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAgC;IAC/D,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAc;IAChD,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAE5C,MAAM,kBAAkB,GAAG,UAAU,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC;IACjE,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;QAC1C,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;IACpC,CAAC;IACD,OAAO,CACL,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC;QAChD,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QAC/D,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,eAAe,CAAC,IAAI,CAAC;QAC3D,gBAAgB,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC;QAC3D,IAAI,CACL,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { PlayerMessageCatalog } from "./player-message-catalog.js";
2
+ /** English player chrome catalog (JSON-serializable). Hosts copy this shape for locale files. */
3
+ export declare const defaultPlayerMessageCatalog: PlayerMessageCatalog;
4
+ //# sourceMappingURL=player-message-catalog-default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"player-message-catalog-default.d.ts","sourceRoot":"","sources":["../src/player-message-catalog-default.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,iGAAiG;AACjG,eAAO,MAAM,2BAA2B,EAAE,oBAmHzC,CAAC"}
@@ -0,0 +1,118 @@
1
+ /** English player chrome catalog (JSON-serializable). Hosts copy this shape for locale files. */
2
+ export const defaultPlayerMessageCatalog = {
3
+ locale: "en",
4
+ directions: {
5
+ up: "up",
6
+ down: "down",
7
+ left: "left",
8
+ right: "right",
9
+ },
10
+ interactionTypes: {
11
+ associate: "Associate",
12
+ choice: "Choice",
13
+ drawing: "Drawing",
14
+ endAttempt: "End attempt",
15
+ extendedText: "Extended text",
16
+ gapMatch: "Gap match",
17
+ graphicAssociate: "Graphic associate",
18
+ graphicGapMatch: "Graphic gap match",
19
+ graphicOrder: "Graphic order",
20
+ hottext: "Hot text",
21
+ hotspot: "Hotspot",
22
+ inlineChoice: "Inline choice",
23
+ match: "Match",
24
+ media: "Media",
25
+ order: "Order",
26
+ pair: "Pair",
27
+ portableCustom: "Portable custom",
28
+ positionObject: "Position object",
29
+ selectPoint: "Select point",
30
+ slider: "Slider",
31
+ textEntry: "Text entry",
32
+ upload: "Upload",
33
+ },
34
+ strings: {
35
+ remove: "Remove",
36
+ removePair: "Remove {label}",
37
+ clearDrawing: "Clear drawing",
38
+ clearPoints: "Clear points",
39
+ endAttempt: "End attempt",
40
+ uploadResponse: "Upload response",
41
+ movableObject: "Movable object",
42
+ placeObject: "Place",
43
+ inlineChoicePrompt: "Choose...",
44
+ extendedTextCounter: "{characters} {characterUnit}, {words} {wordUnit}",
45
+ "characterUnit.one": "character",
46
+ "characterUnit.other": "characters",
47
+ "wordUnit.one": "word",
48
+ "wordUnit.other": "words",
49
+ hotspotSelectionSummary: "Selected {selection}",
50
+ noPointSelected: "No point selected",
51
+ noRegionSelected: "No region selected",
52
+ noAssociationsMade: "No associations made",
53
+ "associationsMade.one": "{count} association made.",
54
+ "associationsMade.other": "{count} associations made.",
55
+ associationPairLabel: "{source} to {target}",
56
+ hotspotSelectedChooseAnother: "{label} selected. Choose another hotspot.",
57
+ moveChoice: "Move {label} {direction}",
58
+ movePoint: "Move point {direction}",
59
+ moveObject: "Move object {direction}",
60
+ matchSourcesBank: "Match sources",
61
+ matchTargetsBank: "Match targets",
62
+ matchSelectedPairsList: "Match selected pairs",
63
+ interactionSourcesBank: "{typeName} sources",
64
+ interactionTargetsBank: "{typeName} targets",
65
+ interactionSelectedPairsList: "{typeName} selected pairs",
66
+ associateFirstConceptRegion: "First concept",
67
+ associatePairWithRegion: "Pair with",
68
+ matchPromptRegion: "Prompt",
69
+ matchMatchRegion: "Match",
70
+ genericSourceRegion: "Source",
71
+ genericTargetRegion: "Target",
72
+ interactionHotspots: "{typeName} hotspots",
73
+ interactionImageAlt: "{typeName} image",
74
+ interactionCurrentOrderList: "{typeName} current order",
75
+ interactionSelectedOrderList: "{typeName} selected order",
76
+ interactionChoicesBank: "{typeName} choices",
77
+ interactionGapTargets: "{typeName} targets",
78
+ interactionTargetImage: "{typeName} target image",
79
+ interactionOptionsList: "{typeName} options",
80
+ interactionCoordinateResponse: "{typeName} coordinate response",
81
+ interactionCoordinateArea: "{typeName} coordinate area",
82
+ interactionCoordinateAreaSelected: "{typeName} coordinate area, selected {coordinates}",
83
+ interactionPlacementResponse: "{typeName} object placement response",
84
+ interactionPlacementStage: "{typeName} placement stage",
85
+ interactionPlacementStageEmpty: "{typeName} placement stage, object not placed",
86
+ interactionPlacementStageAt: "{typeName} placement stage, object at {coordinates}",
87
+ interactionDrawingResponse: "{typeName} response",
88
+ drawingSurface: "Drawing response surface",
89
+ drawingSurfaceEmpty: "Drawing response surface, no strokes",
90
+ "drawingSurfaceStrokeCount.one": "Drawing response surface, {count} stroke",
91
+ "drawingSurfaceStrokeCount.other": "Drawing response surface, {count} strokes",
92
+ drawingStatusEmpty: "No drawing strokes.",
93
+ "drawingStatusStrokeCount.one": "{count} drawing stroke.",
94
+ "drawingStatusStrokeCount.other": "{count} drawing strokes.",
95
+ gapLabel: "Gap {index}",
96
+ graphicGapTargetLabel: "Target {index}",
97
+ gapEmptyState: "{label}, empty",
98
+ gapAssignedState: "{label}, assigned {assigned}",
99
+ "gapLabelsPlacedCount.one": "{count} label placed.",
100
+ "gapLabelsPlacedCount.other": "{count} labels placed.",
101
+ gapNoLabelsPlaced: "No labels placed.",
102
+ orderedItemAtPosition: "{label}, position {position} of {total}",
103
+ orderedItemMovedOneStep: "{label} moved {direction}.",
104
+ orderedItemMovedToPosition: "{label} moved to position {position} of {total}.",
105
+ "graphicOrderRegionsSelected.one": "{count} region ordered.",
106
+ "graphicOrderRegionsSelected.other": "{count} regions ordered.",
107
+ graphicOrderNoRegionsSelected: "No regions ordered.",
108
+ objectNotPlaced: "Object not placed",
109
+ objectPositionedAt: "Object positioned at {coordinates}",
110
+ selectedPointAt: "Selected point {coordinates}",
111
+ "selectedPointsSummary.one": "{count} selected point: {coordinates}",
112
+ "selectedPointsSummary.other": "{count} selected points: {coordinates}",
113
+ extendedTextResponseLabel: "Extended text response",
114
+ textResponseLabel: "Text response",
115
+ sliderResponseLabel: "Slider response",
116
+ },
117
+ };
118
+ //# sourceMappingURL=player-message-catalog-default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"player-message-catalog-default.js","sourceRoot":"","sources":["../src/player-message-catalog-default.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { type PlayerMessageManifestEntry } from "./player-message-manifest.js";
2
+ export type PlayerMessageCatalogDiagnosticCode = "invalid-catalog-root" | "invalid-catalog-field" | "invalid-strings-field" | "invalid-string-value" | "invalid-interaction-types-field" | "invalid-interaction-type-value" | "invalid-directions-field" | "invalid-direction-value" | "unknown-string-key" | "missing-message-key" | "missing-plural-form" | "unknown-placeholder" | "missing-placeholder" | "empty-template" | "invalid-direction-key";
3
+ export interface PlayerMessageCatalogDiagnostic {
4
+ code: PlayerMessageCatalogDiagnosticCode;
5
+ message: string;
6
+ key: string;
7
+ severity: "error" | "warning";
8
+ }
9
+ export interface ValidatePlayerMessageCatalogOptions {
10
+ /** When true, every manifest message id must be present in `catalog.strings` (or plural forms). */
11
+ requireAllKeys?: boolean;
12
+ }
13
+ export interface PlayerMessageCatalogValidationResult {
14
+ valid: boolean;
15
+ diagnostics: PlayerMessageCatalogDiagnostic[];
16
+ }
17
+ /** Placeholders a host may use for a manifest entry (superset of manifest params). */
18
+ export declare function allowedCatalogPlaceholders(entry: PlayerMessageManifestEntry): readonly string[];
19
+ /**
20
+ * Placeholders a host template must include for a catalog string key.
21
+ * Uses the English default for that key when present; otherwise no placeholders are required.
22
+ * Manifest `params` bound required fields for resolvers that inject extra values at runtime
23
+ * (e.g. `extendedTextCounter` supplies `{characterUnit}` / `{wordUnit}` even when omitted).
24
+ */
25
+ export declare function requiredCatalogPlaceholders(catalogKey: string, entry?: PlayerMessageManifestEntry): readonly string[];
26
+ /**
27
+ * Validates host player chrome JSON against {@link PLAYER_MESSAGE_MANIFEST}.
28
+ * Accepts raw `JSON.parse` output (`unknown`); returns structured diagnostics instead of throwing.
29
+ */
30
+ export declare function validatePlayerMessageCatalog(catalog: unknown, options?: ValidatePlayerMessageCatalogOptions): PlayerMessageCatalogValidationResult;
31
+ //# sourceMappingURL=player-message-catalog-validate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"player-message-catalog-validate.d.ts","sourceRoot":"","sources":["../src/player-message-catalog-validate.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,0BAA0B,EAChC,MAAM,8BAA8B,CAAC;AAGtC,MAAM,MAAM,kCAAkC,GAC1C,sBAAsB,GACtB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,iCAAiC,GACjC,gCAAgC,GAChC,0BAA0B,GAC1B,yBAAyB,GACzB,oBAAoB,GACpB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,gBAAgB,GAChB,uBAAuB,CAAC;AAE5B,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,kCAAkC,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,mCAAmC;IAClD,mGAAmG;IACnG,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,oCAAoC;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,8BAA8B,EAAE,CAAC;CAC/C;AA8CD,sFAAsF;AACtF,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,0BAA0B,GAAG,SAAS,MAAM,EAAE,CAgB/F;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,0BAA0B,GACjC,SAAS,MAAM,EAAE,CAqBnB;AA8QD;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,mCAAwC,GAChD,oCAAoC,CAWtC"}