jspsych-tangram 0.0.3 → 0.0.5

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 (35) hide show
  1. package/dist/construct/index.browser.js +23 -63
  2. package/dist/construct/index.browser.js.map +1 -1
  3. package/dist/construct/index.browser.min.js +11 -15
  4. package/dist/construct/index.browser.min.js.map +1 -1
  5. package/dist/construct/index.cjs +23 -63
  6. package/dist/construct/index.cjs.map +1 -1
  7. package/dist/construct/index.js +23 -63
  8. package/dist/construct/index.js.map +1 -1
  9. package/dist/index.cjs +26 -64
  10. package/dist/index.cjs.map +1 -1
  11. package/dist/index.js +26 -64
  12. package/dist/index.js.map +1 -1
  13. package/dist/prep/index.browser.js +16 -14
  14. package/dist/prep/index.browser.js.map +1 -1
  15. package/dist/prep/index.browser.min.js +1 -1
  16. package/dist/prep/index.browser.min.js.map +1 -1
  17. package/dist/prep/index.cjs +16 -14
  18. package/dist/prep/index.cjs.map +1 -1
  19. package/dist/prep/index.js +16 -14
  20. package/dist/prep/index.js.map +1 -1
  21. package/package.json +1 -1
  22. package/src/core/components/board/GameBoard.tsx +4 -1
  23. package/src/core/domain/primitives.ts +9 -10
  24. package/src/core/domain/types.ts +4 -3
  25. package/src/core/engine/state/BaseGameController.ts +0 -1
  26. package/src/core/io/InteractionTracker.ts +1 -1
  27. package/src/core/io/quickstash.ts +3 -29
  28. package/src/core/types/plugin-interfaces.ts +1 -1
  29. package/src/plugins/tangram-construct/ConstructionApp.tsx +13 -58
  30. package/src/plugins/tangram-construct/index.ts +1 -1
  31. package/src/plugins/tangram-prep/PrepApp.tsx +1 -0
  32. package/src/plugins/tangram-prep/index.ts +1 -1
  33. package/tangram-construct.min.js +11 -15
  34. package/tangram-prep.min.js +1 -1
  35. package/src/core/io/stims.ts +0 -107
@@ -16840,7 +16840,6 @@ var TangramPrepPlugin = (function (jspsych) {
16840
16840
  const allDone = Object.values(this.state.sectors).every((s) => !!s.completedAt);
16841
16841
  if (allDone && !this.state.endedAt) {
16842
16842
  this.state.endedAt = NOW();
16843
- console.log("[BaseGameController] all sectors complete");
16844
16843
  }
16845
16844
  }
16846
16845
  // ===== Piece Operations =====
@@ -19637,8 +19636,7 @@ var TangramPrepPlugin = (function (jspsych) {
19637
19636
  }
19638
19637
  const sectorTangramMap = this.controller.state.cfg.sectors.map((s) => ({
19639
19638
  sectorId: s.id,
19640
- tangramId: s.id
19641
- // In our system, sector ID == tangram ID
19639
+ tangramId: s.tangramId
19642
19640
  }));
19643
19641
  const blueprintOrder = {
19644
19642
  primitives: this.controller.state.primitives.map((bp) => bp.id),
@@ -19865,7 +19863,9 @@ var TangramPrepPlugin = (function (jspsych) {
19865
19863
  if (allSectorsComplete && !gameCompleted) {
19866
19864
  setGameCompleted(true);
19867
19865
  if (tracker) {
19868
- tracker.finalizeTrial("auto_complete");
19866
+ setTimeout(() => {
19867
+ tracker.finalizeTrial("auto_complete");
19868
+ }, 0);
19869
19869
  }
19870
19870
  }
19871
19871
  };
@@ -20143,10 +20143,10 @@ var TangramPrepPlugin = (function (jspsych) {
20143
20143
  return pts;
20144
20144
  }
20145
20145
  const FIRST_EDGES_UNITS = {
20146
- "small-triangle": [P(0, 0), P(0.5, 0.5)],
20146
+ "smalltriangle": [P(0, 0), P(0.5, 0.5)],
20147
20147
  "parallelogram": [P(0, 0), P(0.5, 0)],
20148
- "large-triangle": [P(0, 0), P(0.5, -0.5)],
20149
- "med-triangle": [P(0, 0), P(0.5, 0)],
20148
+ "largetriangle": [P(0, 0), P(0.5, -0.5)],
20149
+ "medtriangle": [P(0, 0), P(0.5, 0)],
20150
20150
  "square": [P(0, 0), P(0.5, 0)]
20151
20151
  };
20152
20152
  const PRIMITIVE_BLUEPRINTS_CACHE = (() => {
@@ -20159,8 +20159,8 @@ var TangramPrepPlugin = (function (jspsych) {
20159
20159
  color: "#f43f5e"
20160
20160
  },
20161
20161
  {
20162
- id: "prim:small",
20163
- kind: "small-triangle",
20162
+ id: "prim:smalltriangle",
20163
+ kind: "smalltriangle",
20164
20164
  sideLens: [HALFDIAGONAL, HALFDIAGONAL, HALFUNIT, HALFUNIT, HALFUNIT, HALFUNIT],
20165
20165
  angles: [180, 45, 180, 90, 180, 45],
20166
20166
  color: "#f59e0b"
@@ -20173,15 +20173,15 @@ var TangramPrepPlugin = (function (jspsych) {
20173
20173
  color: "#10b981"
20174
20174
  },
20175
20175
  {
20176
- id: "prim:med",
20177
- kind: "med-triangle",
20176
+ id: "prim:medtriangle",
20177
+ kind: "medtriangle",
20178
20178
  sideLens: [HALFUNIT, HALFUNIT, HALFUNIT, HALFUNIT, HALFDIAGONAL, HALFDIAGONAL, HALFDIAGONAL, HALFDIAGONAL],
20179
20179
  angles: [180, 180, 180, 45, 180, 90, 180, 45],
20180
20180
  color: "#3b82f6"
20181
20181
  },
20182
20182
  {
20183
- id: "prim:large",
20184
- kind: "large-triangle",
20183
+ id: "prim:largetriangle",
20184
+ kind: "largetriangle",
20185
20185
  sideLens: [
20186
20186
  HALFDIAGONAL,
20187
20187
  HALFDIAGONAL,
@@ -20264,6 +20264,8 @@ var TangramPrepPlugin = (function (jspsych) {
20264
20264
  } = params;
20265
20265
  const prepSectors = Array.from({ length: numQuickstashSlots }, (_, i) => ({
20266
20266
  id: `prep-sector-${i}`,
20267
+ tangramId: `prep-sector-${i}`,
20268
+ // dummy value since prep mode doesn't have tangrams
20267
20269
  silhouette: {
20268
20270
  id: `prep-silhouette-${i}`,
20269
20271
  mask: []
@@ -20434,7 +20436,7 @@ var TangramPrepPlugin = (function (jspsych) {
20434
20436
  this.jsPsych.finishTrial(data);
20435
20437
  };
20436
20438
  const params = {
20437
- numQuickstashSlots: trial.num_quickstash_slots || 4,
20439
+ numQuickstashSlots: trial.num_quickstash_slots,
20438
20440
  maxPiecesPerMacro: trial.max_pieces_per_macro,
20439
20441
  minPiecesPerMacro: trial.min_pieces_per_macro,
20440
20442
  inputMode: trial.input,