Commit Graph

96 Commits

Author SHA1 Message Date
Taras Kushnir
e72cf3c38a Record last used time for API keys. closes PrivateCaptcha/issues#166 2026-01-23 17:13:39 +02:00
Taras
d2ef95e2b2 Update dependency happy-dom to v20.1.0 (#260)
Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
2026-01-22 07:19:45 +00:00
Taras Kushnir
78210afd09 Bump widget lib version to 22 2026-01-20 19:10:29 +02:00
Copilot
a8d014844f Add widget JS unit tests for reset() and public API (#259)
* Initial plan

* Add widget JS unit tests for reset() and public API

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Fix checkConfigured test to properly verify invalid state

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Restore original patchedFetch and add network-independent tests

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>
2026-01-20 18:09:00 +02:00
Taras Kushnir
cab8ae71e2 Fix widget reset code 2026-01-20 11:13:10 +02:00
Taras Kushnir
cd536f5393 Make progress component safer 2026-01-17 09:19:59 +02:00
Taras
205b556e47 Bump widget library version to 20 2026-01-17 09:01:17 +02:00
Taras Kushnir
808f979ae0 Fix widget thickness 2026-01-16 19:12:10 +02:00
Taras Kushnir
5e8eac34b5 Bump widget lib version to 19 2026-01-15 15:10:04 +02:00
Taras Kushnir
0ceb759fee Refactor html string concatenation to JS in widget html
credit to Claude Opus 4.5 w/ GH copilot
2026-01-14 18:56:47 +02:00
Taras Kushnir
ec0aca8b7f Cosmetic improvement 2026-01-14 10:15:25 +02:00
Taras Kushnir
28ba7ed860 Create html element explicitly 2026-01-14 10:12:59 +02:00
Taras Kushnir
ba1dcb1492 Cosmetic improvements 2026-01-13 21:29:17 +02:00
Taras Kushnir
411a289e32 Protect against private-captcha redeclaration 2026-01-13 21:23:11 +02:00
Luke Watts
2a1e074b17 fix: guard against custom element 'progress-ring' already existing (#250)
When the widget script is loaded multiple times (possible in SPA environments with framework component lifecycles), the application crashes with:

```
Uncaught DOMException: CustomElementRegistry.define: 'progress-ring' has already been defined as a custom element
```

This occurs because `customElements.define()` throws an error if called twice with the same element name, and the Custom Elements API provides no way to undefine or replace registered elements.

### Solution
Added a guard to check if the custom element is already registered before attempting to define it:
```javascript
if (typeof window !== "undefined" && 
    window.customElements && 
    !window.customElements.get('progress-ring')) {
    window.customElements.define('progress-ring', ProgressRing);
}
```

### Why This Matters
- **Prevents crashes** in SPA environments where components mount/unmount repeatedly
- **Idempotent behavior** - script can safely be included multiple times

This is a defensive programming practice recommended for any third-party script that registers custom elements, as you cannot control how integrators will load your code.
2026-01-13 21:19:49 +02:00
Copilot
d00d9ce9cb Add unit and integration tests for code coverage improvements (#238)
* Initial plan

* Initial planning for code coverage improvements

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Add unit tests for code coverage improvements

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Fix integration test failures and add more tests for code coverage

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Address code review feedback - simplify status code conversion

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Address PR review feedback: use config.NewStaticValue() and improve test assertions

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

* Add remaining tests: ChunkedCleanup, audit_enterprise, echoPuzzle

Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ribtoks <505555+ribtoks@users.noreply.github.com>
2026-01-07 18:29:04 +02:00
Renovate Bot
06d9abc709 Update dependency esbuild to v0.27.2 2025-12-31 02:15:15 +00:00
Renovate Bot
c0b8234b78 Update dependency eslint to v9.39.2 2025-12-28 02:33:57 +00:00
Renovate Bot
55f23e9e5a Update dependency esbuild to v0.27.1 2025-12-20 02:07:20 +00:00
Taras Kushnir
fe8fe813cf Bump widget lib version to 18 2025-12-19 20:02:56 +01:00
Taras Kushnir
a25fd054c8 Cosmetic improvements 2025-12-19 13:19:04 +01:00
Taras Kushnir
3f6856698d Bump widget attempts 2025-12-19 12:22:43 +01:00
Taras Kushnir
2fe3fe6105 Cosmetic improvements
found by GitHub code quality
2025-12-15 15:49:57 +01:00
Renovate Bot
a384a1f7b5 Update dependency happy-dom to v20.0.11 2025-12-12 02:15:36 +00:00
Taras Kushnir
cc94c898cd Skip duplicate user started and execute triggers 2025-11-29 13:49:57 +01:00
Taras Kushnir
3ac40d043d Bump widget lib package version to 16 2025-11-29 13:34:15 +01:00
Taras Kushnir
7a921f8858 Fix auto-start mode in popup widget mode 2025-11-29 13:06:49 +01:00
Taras
036959e7d8 Update dependency esbuild to ^0.27.0 (#220)
Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
2025-11-24 08:42:02 +02:00
dependabot[bot]
b8d969c598 Bump js-yaml in /widget in the npm_and_yarn group across 1 directory (#216)
Bumps the npm_and_yarn group with 1 update in the /widget directory: [js-yaml](https://github.com/nodeca/js-yaml).


Updates `js-yaml` from 4.1.0 to 4.1.1
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-20 08:35:09 +02:00
Renovate Bot
18445c5dde Update dependency eslint to v9.39.1 2025-11-18 02:06:06 +00:00
Renovate Bot
043fe943bf Update dependency esbuild to v0.25.12 2025-11-17 02:09:03 +00:00
Taras
5f9cefc7f3 Update dependency eslint to v9.39.0 (#214) 2025-11-15 06:18:39 +00:00
Renovate Bot
d2bbf77f5d Update dependency happy-dom to v20.0.10 2025-11-14 02:07:47 +00:00
Taras Kushnir
a016ef1a2b Add crossorigin attribute to portal scripts. related PrivateCaptcha/issues#206 2025-11-11 10:00:41 +02:00
Renovate Bot
88106ee6dc Update dependency happy-dom to v20.0.8 2025-11-05 02:06:56 +00:00
Renovate Bot
0b813d073d Update dependency happy-dom to v20.0.7 2025-11-03 02:09:40 +00:00
Taras
98a4b68a1d Update dependency eslint to v9.38.0 (#210) 2025-11-02 13:33:38 +00:00
Renovate Bot
a822e91e02 Update dependency happy-dom to v20.0.5 2025-11-01 02:09:14 +00:00
Renovate Bot
375e1ec32e Update dependency esbuild to v0.25.11 2025-10-30 02:08:18 +00:00
Taras Kushnir
6533940c1e Add explicit reset method to workers pool 2025-10-21 09:00:08 +03:00
Taras Kushnir
16305e2ff1 Do not remove onFocusIn event handler 2025-10-21 08:59:42 +03:00
Taras Kushnir
794b6200b3 Cosmetic JS improvements 2025-10-21 08:58:34 +03:00
Taras Kushnir
d0355faae0 Add auto mode for widget language 2025-10-21 08:57:03 +03:00
Taras Kushnir
21df85eb70 Fix issues with widget
- calling widget.reset() on page load cased the visualization to start on it's own
- focusin (if fired) was cleared from handlers - now we re-add it in reset()
2025-10-20 21:26:53 +03:00
Taras Kushnir
350868dbd3 Save solution only when user clicks widget. closes PrivateCaptcha/issues#202 2025-10-18 11:27:04 +03:00
Taras
4b19a81ee1 Update dependency eslint to v9.37.0 (#205) 2025-10-18 05:21:03 +00:00
dependabot[bot]
d07f488c9f Bump happy-dom in /widget in the npm_and_yarn group across 1 directory (#203)
Bumps the npm_and_yarn group with 1 update in the /widget directory: [happy-dom](https://github.com/capricorn86/happy-dom).


Updates `happy-dom` from 20.0.0 to 20.0.2
- [Release notes](https://github.com/capricorn86/happy-dom/releases)
- [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2)

---
updated-dependencies:
- dependency-name: happy-dom
  dependency-version: 20.0.2
  dependency-type: direct:development
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-16 09:56:58 +03:00
Taras Kushnir
1fc4440f83 Verify styles changed before updating them 2025-10-12 13:10:35 +03:00
Taras Kushnir
ce7b82db9f Bump widget corelib version 2025-10-12 13:09:01 +03:00
Taras Kushnir
365f253b27 Fix immutable stylesheet error when updating widget styles 2025-10-12 13:08:10 +03:00