@prosopo/procaptcha-puzzle 2.10.51 → 2.10.53

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.
@@ -147,14 +147,15 @@ describe("PuzzleCanvas' types", () => {
147
147
  ): void => undefined;
148
148
 
149
149
  test("every prop is required, since none has a sensible default", () => {
150
- // @ts-expect-error - a board with no target cannot be solved.
150
+ // @ts-expect-error - a board with no imagery cannot be rendered.
151
151
  PuzzleCanvas({ originX: 0, originY: 0 });
152
152
  // @ts-expect-error - `submitting` gates the drag; omitting it unlocks it.
153
153
  PuzzleCanvas({
154
154
  originX: 0,
155
155
  originY: 0,
156
- targetX: 1,
157
- targetY: 1,
156
+ background: "data:image/webp;base64,UklGRg==",
157
+ piece: "data:image/webp;base64,UklGRg==",
158
+ pieceSize: 44,
158
159
  onComplete,
159
160
  showRetry: false,
160
161
  theme: lightTheme,
@@ -166,8 +167,9 @@ describe("PuzzleCanvas' types", () => {
166
167
  PuzzleCanvas({
167
168
  originX: 0,
168
169
  originY: 0,
169
- targetX: 1,
170
- targetY: 1,
170
+ background: "data:image/webp;base64,UklGRg==",
171
+ piece: "data:image/webp;base64,UklGRg==",
172
+ pieceSize: 44,
171
173
  onComplete,
172
174
  showRetry: false,
173
175
  submitting: false,
@@ -68,8 +68,9 @@ const mocks = vi.hoisted(() => {
68
68
  | {
69
69
  originX: number;
70
70
  originY: number;
71
- targetX: number;
72
- targetY: number;
71
+ background: string;
72
+ piece: string;
73
+ pieceSize: number;
73
74
  showRetry: boolean;
74
75
  submitting: boolean;
75
76
  onComplete: (
@@ -121,8 +122,9 @@ vi.mock("../components/PuzzleCanvas.js", async () => {
121
122
  interface CanvasStubProps {
122
123
  originX: number;
123
124
  originY: number;
124
- targetX: number;
125
- targetY: number;
125
+ background: string;
126
+ piece: string;
127
+ pieceSize: number;
126
128
  showRetry: boolean;
127
129
  submitting: boolean;
128
130
  onComplete: (
@@ -411,7 +413,7 @@ describe("starting from the checkbox", () => {
411
413
  expect(canvas()).not.toBeNull();
412
414
  expect(mocks.canvasProps.current).toMatchObject({
413
415
  originX: challengeResponse().originX,
414
- targetY: challengeResponse().targetY,
416
+ piece: challengeResponse().piece,
415
417
  submitting: false,
416
418
  showRetry: false,
417
419
  });
@@ -564,7 +566,10 @@ describe("finishing the drag", () => {
564
566
 
565
567
  test("a rejected solution asks for another go on a fresh challenge", async () => {
566
568
  mocks.submitSolution.mockResolvedValue(false);
567
- const retryChallenge = challengeResponse({ originX: 40, targetX: 250 });
569
+ const retryChallenge = challengeResponse({
570
+ originX: 40,
571
+ piece: "data:image/webp;base64,cmV0cnk=",
572
+ });
568
573
  mocks.start
569
574
  .mockResolvedValueOnce(challengeResponse())
570
575
  .mockResolvedValue(retryChallenge);
@@ -574,7 +579,7 @@ describe("finishing the drag", () => {
574
579
  expect(mocks.canvasProps.current).toMatchObject({
575
580
  showRetry: true,
576
581
  originX: 40,
577
- targetX: 250,
582
+ piece: "data:image/webp;base64,cmV0cnk=",
578
583
  submitting: false,
579
584
  });
580
585
  });
@@ -36,13 +36,14 @@ import { PuzzleCanvas } from "../components/PuzzleCanvas.js";
36
36
 
37
37
  const CONTAINER_WIDTH = 300;
38
38
  const CONTAINER_HEIGHT = 200;
39
- const PIECE_SIZE = 24;
39
+ const PIECE_SIZE = 44;
40
40
 
41
41
  interface CanvasProps {
42
42
  originX: number;
43
43
  originY: number;
44
- targetX: number;
45
- targetY: number;
44
+ background: string;
45
+ piece: string;
46
+ pieceSize: number;
46
47
  onComplete: Mock<
47
48
  (finalX: number, finalY: number, puzzleEvents: PuzzleEvent[]) => void
48
49
  >;
@@ -60,8 +61,9 @@ let onComplete: Mock<
60
61
  const props = (overrides: Partial<CanvasProps> = {}): CanvasProps => ({
61
62
  originX: 20,
62
63
  originY: 100,
63
- targetX: 200,
64
- targetY: 80,
64
+ background: "data:image/webp;base64,UklGRg==",
65
+ piece: "data:image/webp;base64,UklGRg==",
66
+ pieceSize: 44,
65
67
  onComplete,
66
68
  showRetry: false,
67
69
  submitting: false,