ribaunt 0.1.1 → 0.1.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AA+KH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;AAErE,qBAAa,aAAc,SAAQ,WAAW;IAC5C,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,cAAc,CAA+B;IAErD,MAAM,KAAK,kBAAkB,aAQ5B;;IASD,iBAAiB;IAMjB,oBAAoB;IAIpB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMvF,OAAO,CAAC,MAAM;IA+Bd,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,WAAW;YAYL,MAAM;IAgEpB;;OAEG;IACH,KAAK;IAKL;;OAEG;IACH,QAAQ,IAAI,WAAW;IAIvB;;OAEG;IACH,iBAAiB;CAKlB;AAED,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,IAAI,WAAW,CAAC;IACxB,iBAAiB,IAAI,IAAI,CAAC;CAC3B;AAQD,eAAe,aAAa,CAAC;AAG7B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;IAED,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,gBAAgB,EAAE,OAAO,OAAO,EAAE,iBAAiB,CAAC,OAAO,OAAO,EAAE,cAAc,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,GAAG;gBAChI,oBAAoB,CAAC,EAAE,MAAM,CAAC;gBAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;gBAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;aAC7B,CAAC;SACH;KACF;CACF"}
1
+ {"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAmLH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;AAwCrE,qBAAa,aAAc,SAAQ,WAAW;IAC5C,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,WAAW,CAAkC;IAErD,MAAM,KAAK,kBAAkB,aAS5B;;IAUD,iBAAiB;IAKjB,oBAAoB;IAIpB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMvF,OAAO,CAAC,MAAM;IAyCd,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,QAAQ;IAmBhB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,WAAW;YAYL,MAAM;IAkFpB;;OAEG;IACH,KAAK;IAML;;OAEG;IACH,QAAQ,IAAI,WAAW;IAIvB;;OAEG;IACH,iBAAiB;CAKlB;AAED,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,IAAI,WAAW,CAAC;IACxB,iBAAiB,IAAI,IAAI,CAAC;CAC3B;AAQD,eAAe,aAAa,CAAC;AAG7B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;IAED,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,gBAAgB,EAAE,OAAO,OAAO,EAAE,iBAAiB,CAAC,OAAO,OAAO,EAAE,cAAc,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,GAAG;gBAChI,oBAAoB,CAAC,EAAE,MAAM,CAAC;gBAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;gBAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;gBACzB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;aAC7B,CAAC;SACH;KACF;CACF"}
package/dist/widget.js CHANGED
@@ -51,6 +51,23 @@ const WIDGET_STYLES = `
51
51
  color: var(--ribaunt-color, #212121);
52
52
  }
53
53
 
54
+ :host([disabled]) .captcha {
55
+ cursor: not-allowed;
56
+ opacity: 0.72;
57
+ }
58
+
59
+ :host([disabled]) .captcha:hover {
60
+ filter: none;
61
+ }
62
+
63
+ :host([disabled]) .captcha[data-state=verifying] {
64
+ cursor: progress;
65
+ }
66
+
67
+ :host([disabled]) .captcha[data-state=done] {
68
+ cursor: default;
69
+ }
70
+
54
71
  .captcha:hover {
55
72
  filter: brightness(98%);
56
73
  }
@@ -125,19 +142,6 @@ const WIDGET_STYLES = `
125
142
  background-size: cover;
126
143
  }
127
144
 
128
- /* Disabled State */
129
- .captcha[disabled] {
130
- cursor: not-allowed;
131
- }
132
-
133
- .captcha[disabled][data-state=verifying] {
134
- cursor: progress;
135
- }
136
-
137
- .captcha[disabled][data-state=done] {
138
- cursor: default;
139
- }
140
-
141
145
  /* Logo */
142
146
  .logo {
143
147
  position: absolute;
@@ -194,6 +198,34 @@ const RIBAUNT_LOGO = `
194
198
  <path fill-rule="evenodd" clip-rule="evenodd" d="M236.619 122.188L341.575 383.702H209.913L170.796 286.199L131.663 383.702H0L104.957 122.188H236.619Z" fill="currentColor"/>
195
199
  </svg>
196
200
  `;
201
+ function parseTokenArray(value) {
202
+ if (!Array.isArray(value)) {
203
+ throw new Error('Challenge response must be an array of token strings');
204
+ }
205
+ if (value.length === 0) {
206
+ throw new Error('No challenge tokens available');
207
+ }
208
+ if (!value.every((entry) => typeof entry === 'string' && entry.length > 0)) {
209
+ throw new Error('Challenge response contains invalid token values');
210
+ }
211
+ return value;
212
+ }
213
+ function parseChallengeTokens(payload) {
214
+ if (Array.isArray(payload)) {
215
+ return parseTokenArray(payload);
216
+ }
217
+ if (!payload || typeof payload !== 'object') {
218
+ throw new Error('Challenge response must be an object or array of token strings');
219
+ }
220
+ const record = payload;
221
+ if ('challenges' in record) {
222
+ return parseTokenArray(record.challenges);
223
+ }
224
+ if ('tokens' in record) {
225
+ return parseTokenArray(record.tokens);
226
+ }
227
+ throw new Error('Challenge response must include "challenges" or "tokens"');
228
+ }
197
229
  export class RibauntWidget extends HTMLElement {
198
230
  static get observedAttributes() {
199
231
  return [
@@ -201,6 +233,7 @@ export class RibauntWidget extends HTMLElement {
201
233
  'verify-endpoint',
202
234
  'show-warning',
203
235
  'warning-message',
236
+ 'solve-timeout',
204
237
  'disabled',
205
238
  ];
206
239
  }
@@ -208,17 +241,19 @@ export class RibauntWidget extends HTMLElement {
208
241
  super();
209
242
  this.state = 'initial';
210
243
  this.progress = 0;
244
+ this.timeoutError = false;
211
245
  this.captchaElement = null;
212
246
  this.checkboxElement = null;
213
247
  this.messageElement = null;
214
248
  this.warningElement = null;
249
+ this.logoElement = null;
215
250
  this.shadow = this.attachShadow({ mode: 'open' });
216
251
  this.handleClick = this.handleClick.bind(this);
217
252
  this.handleKeyPress = this.handleKeyPress.bind(this);
253
+ this.handleLogoClick = this.handleLogoClick.bind(this);
218
254
  }
219
255
  connectedCallback() {
220
256
  this.render();
221
- this.attachEventListeners();
222
257
  this.dispatchStateChange();
223
258
  }
224
259
  disconnectedCallback() {
@@ -230,13 +265,15 @@ export class RibauntWidget extends HTMLElement {
230
265
  }
231
266
  }
232
267
  render() {
268
+ this.removeEventListeners();
233
269
  const showWarning = this.hasAttribute('show-warning') && this.getAttribute('show-warning') !== 'false';
234
270
  const warningMessage = this.getAttribute('warning-message') || 'Enable WASM for significantly faster solving';
271
+ const disabled = this.isDisabled();
235
272
  this.shadow.innerHTML = `
236
273
  <style>${WIDGET_STYLES}</style>
237
274
  <div>
238
- ${showWarning ? `<div class="warning ${showWarning ? 'visible' : ''}">${warningMessage}</div>` : ''}
239
- <div class="captcha" data-state="${this.state}" role="button" tabindex="0" aria-label="${this.getMessage()}">
275
+ ${showWarning ? `<div class="warning">${warningMessage}</div>` : ''}
276
+ <div class="captcha" data-state="${this.state}" role="button" tabindex="${disabled ? '-1' : '0'}" aria-disabled="${disabled}" aria-label="${this.getMessage()}">
240
277
  <div class="checkbox"></div>
241
278
  <p>${this.getMessage()}</p>
242
279
  <a class="logo" href="https://ribaunt.com" target="_blank" rel="noopener noreferrer" aria-label="Powered by Ribaunt">
@@ -249,6 +286,12 @@ export class RibauntWidget extends HTMLElement {
249
286
  this.checkboxElement = this.shadow.querySelector('.checkbox');
250
287
  this.messageElement = this.shadow.querySelector('p');
251
288
  this.warningElement = this.shadow.querySelector('.warning');
289
+ this.logoElement = this.shadow.querySelector('.logo');
290
+ if (showWarning && this.warningElement) {
291
+ setTimeout(() => {
292
+ this.warningElement?.classList.add('visible');
293
+ }, 0);
294
+ }
252
295
  // Update progress CSS variable if verifying
253
296
  if (this.state === 'verifying' && this.captchaElement) {
254
297
  this.captchaElement.style.setProperty('--progress', `${this.progress}%`);
@@ -260,14 +303,25 @@ export class RibauntWidget extends HTMLElement {
260
303
  this.captchaElement.addEventListener('click', this.handleClick);
261
304
  this.captchaElement.addEventListener('keypress', this.handleKeyPress);
262
305
  }
306
+ if (this.logoElement) {
307
+ this.logoElement.addEventListener('click', this.handleLogoClick);
308
+ }
263
309
  }
264
310
  removeEventListeners() {
265
311
  if (this.captchaElement) {
266
312
  this.captchaElement.removeEventListener('click', this.handleClick);
267
313
  this.captchaElement.removeEventListener('keypress', this.handleKeyPress);
268
314
  }
315
+ if (this.logoElement) {
316
+ this.logoElement.removeEventListener('click', this.handleLogoClick);
317
+ }
318
+ }
319
+ handleLogoClick(event) {
320
+ event.stopPropagation();
269
321
  }
270
322
  handleClick() {
323
+ if (this.isDisabled())
324
+ return;
271
325
  if (this.state !== 'initial' && this.state !== 'error')
272
326
  return;
273
327
  this.verify();
@@ -287,14 +341,33 @@ export class RibauntWidget extends HTMLElement {
287
341
  case 'done':
288
342
  return "You're a human";
289
343
  case 'error':
290
- return 'Error. Try again.';
344
+ return this.timeoutError ? 'Timed out. Try again.' : 'Error. Try again.';
345
+ }
346
+ }
347
+ getSolveTimeoutMs() {
348
+ const raw = this.getAttribute('solve-timeout');
349
+ if (!raw) {
350
+ return undefined;
291
351
  }
352
+ const value = Number(raw);
353
+ if (!Number.isFinite(value) || value <= 0) {
354
+ return undefined;
355
+ }
356
+ return Math.floor(value);
357
+ }
358
+ isDisabled() {
359
+ return this.hasAttribute('disabled') && this.getAttribute('disabled') !== 'false';
292
360
  }
293
361
  setState(newState) {
362
+ if (newState !== 'error') {
363
+ this.timeoutError = false;
364
+ }
294
365
  this.state = newState;
295
366
  if (this.captchaElement) {
296
367
  this.captchaElement.setAttribute('data-state', this.state);
297
368
  this.captchaElement.setAttribute('aria-label', this.getMessage());
369
+ this.captchaElement.tabIndex = this.isDisabled() ? -1 : 0;
370
+ this.captchaElement.setAttribute('aria-disabled', String(this.isDisabled()));
298
371
  }
299
372
  if (this.messageElement) {
300
373
  this.messageElement.textContent = this.getMessage();
@@ -323,6 +396,13 @@ export class RibauntWidget extends HTMLElement {
323
396
  async verify() {
324
397
  this.setState('verifying');
325
398
  this.setProgress(0);
399
+ const timeoutMs = this.getSolveTimeoutMs();
400
+ const controller = timeoutMs ? new AbortController() : undefined;
401
+ const timeoutHandle = timeoutMs
402
+ ? setTimeout(() => {
403
+ controller?.abort();
404
+ }, timeoutMs)
405
+ : undefined;
326
406
  try {
327
407
  const challengeEndpoint = this.getAttribute('challenge-endpoint');
328
408
  const verifyEndpoint = this.getAttribute('verify-endpoint');
@@ -333,15 +413,15 @@ export class RibauntWidget extends HTMLElement {
333
413
  if (!response.ok)
334
414
  throw new Error('Failed to fetch challenge');
335
415
  const data = await response.json();
336
- tokens = data.challenges || data.tokens || data;
416
+ tokens = parseChallengeTokens(data);
337
417
  }
338
- if (!tokens || !Array.isArray(tokens) || tokens.length === 0) {
418
+ if (tokens.length === 0) {
339
419
  throw new Error('No challenge tokens available');
340
420
  }
341
421
  // Solve challenges using the browser-compatible solver
342
422
  const solutions = await solveChallenge(tokens, (progress) => {
343
423
  this.setProgress(progress);
344
- });
424
+ }, controller?.signal);
345
425
  // Verify solution
346
426
  if (verifyEndpoint) {
347
427
  const response = await fetch(verifyEndpoint, {
@@ -362,19 +442,31 @@ export class RibauntWidget extends HTMLElement {
362
442
  }));
363
443
  }
364
444
  catch (error) {
445
+ this.timeoutError = error instanceof DOMException && error.name === 'AbortError';
365
446
  this.setState('error');
366
447
  // Dispatch error event
367
448
  this.dispatchEvent(new CustomEvent('error', {
368
- detail: { error: error instanceof Error ? error.message : String(error) },
449
+ detail: {
450
+ error: this.timeoutError
451
+ ? 'Timed out. Try again.'
452
+ : (error instanceof Error ? error.message : String(error)),
453
+ timeout: this.timeoutError,
454
+ },
369
455
  bubbles: true,
370
456
  composed: true,
371
457
  }));
372
458
  }
459
+ finally {
460
+ if (timeoutHandle !== undefined) {
461
+ clearTimeout(timeoutHandle);
462
+ }
463
+ }
373
464
  }
374
465
  /**
375
466
  * Public API: Reset the widget to initial state
376
467
  */
377
468
  reset() {
469
+ this.timeoutError = false;
378
470
  this.setState('initial');
379
471
  this.setProgress(0);
380
472
  }
@@ -388,7 +480,7 @@ export class RibauntWidget extends HTMLElement {
388
480
  * Public API: Programmatically trigger verification
389
481
  */
390
482
  startVerification() {
391
- if (this.state === 'initial' || this.state === 'error') {
483
+ if (!this.isDisabled() && (this.state === 'initial' || this.state === 'error')) {
392
484
  this.verify();
393
485
  }
394
486
  }
@@ -1 +1 @@
1
- {"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,17 +1,18 @@
1
1
  {
2
2
  "name": "ribaunt",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "A PoW CAPTCHA library that provides stateless and secure user verification",
5
5
  "homepage": "https://ribaunt.com",
6
6
  "bugs": {
7
- "url": "https://github.com/computebaker/ribaunt/issues"
7
+ "url": "https://github.com/ribaunt/ribaunt/issues"
8
8
  },
9
- "main": "dist/cjs/index.cjs",
9
+ "main": "dist/cjs/index.js",
10
10
  "types": "dist/index.d.ts",
11
11
  "exports": {
12
12
  ".": {
13
+ "types": "./dist/index.d.ts",
13
14
  "import": "./dist/index.js",
14
- "require": "./dist/cjs/index.cjs"
15
+ "require": "./dist/cjs/index.js"
15
16
  },
16
17
  "./widget": {
17
18
  "client": "./dist/widget-browser.js",
@@ -26,13 +27,13 @@
26
27
  },
27
28
  "repository": {
28
29
  "type": "git",
29
- "url": "git+https://github.com/computebaker/ribaunt.git"
30
+ "url": "git+https://github.com/ribaunt/ribaunt.git"
30
31
  },
31
32
  "license": "EUPL-1.2",
32
- "author": "computebaker",
33
+ "author": "ribaunt",
33
34
  "type": "module",
34
35
  "scripts": {
35
- "build": "tsc && tsc --project tsconfig.cjs.json && mv dist/cjs/index.js dist/cjs/index.cjs && mv dist/cjs/index.d.ts dist/cjs/index.d.cts",
36
+ "build": "tsc && tsc --project tsconfig.cjs.json && node scripts/prepare-cjs.mjs",
36
37
  "test": "jest --config jest.config.cjs"
37
38
  },
38
39
  "devDependencies": {
@@ -43,6 +44,8 @@
43
44
  "@types/react-dom": "^19.2.3",
44
45
  "dotenv": "^17.2.3",
45
46
  "jest": "^30.2.0",
47
+ "jest-environment-jsdom": "^30.3.0",
48
+ "jsdom": "^27.0.1",
46
49
  "react": "^19.2.4",
47
50
  "react-dom": "^19.2.4",
48
51
  "ts-jest": "^29.4.6",
@@ -0,0 +1,11 @@
1
+ import { mkdir, writeFile } from 'node:fs/promises';
2
+ import { resolve } from 'node:path';
3
+
4
+ const cjsDir = resolve(process.cwd(), 'dist/cjs');
5
+
6
+ await mkdir(cjsDir, { recursive: true });
7
+ await writeFile(
8
+ resolve(cjsDir, 'package.json'),
9
+ `${JSON.stringify({ type: 'commonjs' }, null, 2)}\n`,
10
+ 'utf8'
11
+ );