@prosopo/procaptcha-common 2.9.19 → 2.10.17

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 (107) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +22 -15
  2. package/.turbo/turbo-build$colon$tsc.log +52 -0
  3. package/.turbo/turbo-build.log +26 -16
  4. package/CHANGELOG.md +392 -0
  5. package/dist/callbacks/defaultCallbacks.d.ts +4 -0
  6. package/dist/callbacks/defaultCallbacks.d.ts.map +1 -0
  7. package/dist/callbacks/defaultCallbacks.js.map +1 -0
  8. package/dist/callbacks/defaultEvents.d.ts +14 -0
  9. package/dist/callbacks/defaultEvents.d.ts.map +1 -0
  10. package/dist/callbacks/defaultEvents.js.map +1 -0
  11. package/dist/cjs/elements/form.cjs +8 -2
  12. package/dist/cjs/elements/window.cjs +7 -0
  13. package/dist/cjs/index.cjs +5 -0
  14. package/dist/cjs/reactComponents/Checkbox.cjs +11 -7
  15. package/dist/cjs/reactComponents/Honeypot.cjs +67 -0
  16. package/dist/cjs/reactComponents/TestModeBanner.cjs +47 -0
  17. package/dist/elements/form.d.ts +5 -0
  18. package/dist/elements/form.d.ts.map +1 -0
  19. package/dist/elements/form.js +8 -2
  20. package/dist/elements/form.js.map +1 -0
  21. package/dist/elements/window.d.ts +3 -0
  22. package/dist/elements/window.d.ts.map +1 -0
  23. package/dist/elements/window.js +8 -1
  24. package/dist/elements/window.js.map +1 -0
  25. package/dist/extensionLoader.d.ts +2 -0
  26. package/dist/extensionLoader.d.ts.map +1 -0
  27. package/dist/extensionLoader.js.map +1 -0
  28. package/dist/index.d.ts +11 -0
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.js +6 -1
  31. package/dist/index.js.map +1 -0
  32. package/dist/providers.d.ts +4 -0
  33. package/dist/providers.d.ts.map +1 -0
  34. package/dist/providers.js.map +1 -0
  35. package/dist/reactComponents/Checkbox.d.ts +13 -0
  36. package/dist/reactComponents/Checkbox.d.ts.map +1 -0
  37. package/dist/reactComponents/Checkbox.js +11 -7
  38. package/dist/reactComponents/Checkbox.js.map +1 -0
  39. package/dist/reactComponents/Honeypot.d.ts +6 -0
  40. package/dist/reactComponents/Honeypot.d.ts.map +1 -0
  41. package/dist/reactComponents/Honeypot.js +67 -0
  42. package/dist/reactComponents/Honeypot.js.map +1 -0
  43. package/dist/reactComponents/Reload.d.ts +8 -0
  44. package/dist/reactComponents/Reload.d.ts.map +1 -0
  45. package/dist/reactComponents/Reload.js.map +1 -0
  46. package/dist/reactComponents/TestModeBanner.d.ts +7 -0
  47. package/dist/reactComponents/TestModeBanner.d.ts.map +1 -0
  48. package/dist/reactComponents/TestModeBanner.js +47 -0
  49. package/dist/reactComponents/TestModeBanner.js.map +1 -0
  50. package/dist/state/builder.d.ts +9 -0
  51. package/dist/state/builder.d.ts.map +1 -0
  52. package/dist/state/builder.js.map +1 -0
  53. package/dist/tests/defaultCallbacks.test.d.ts +2 -0
  54. package/dist/tests/defaultCallbacks.test.d.ts.map +1 -0
  55. package/dist/tests/defaultCallbacks.test.js +219 -0
  56. package/dist/tests/defaultCallbacks.test.js.map +1 -0
  57. package/dist/tests/defaultEvents.test.d.ts +2 -0
  58. package/dist/tests/defaultEvents.test.d.ts.map +1 -0
  59. package/dist/tests/defaultEvents.test.js +54 -0
  60. package/dist/tests/defaultEvents.test.js.map +1 -0
  61. package/dist/tests/extensionLoader.test.d.ts +2 -0
  62. package/dist/tests/extensionLoader.test.d.ts.map +1 -0
  63. package/dist/tests/extensionLoader.test.js +21 -0
  64. package/dist/tests/extensionLoader.test.js.map +1 -0
  65. package/dist/tests/form.test.d.ts +2 -0
  66. package/dist/tests/form.test.d.ts.map +1 -0
  67. package/dist/tests/form.test.js +98 -0
  68. package/dist/tests/form.test.js.map +1 -0
  69. package/dist/tests/providers.test.d.ts +2 -0
  70. package/dist/tests/providers.test.d.ts.map +1 -0
  71. package/dist/tests/providers.test.js +111 -0
  72. package/dist/tests/providers.test.js.map +1 -0
  73. package/dist/tests/state-builder.test.d.ts +2 -0
  74. package/dist/tests/state-builder.test.d.ts.map +1 -0
  75. package/dist/tests/state-builder.test.js +193 -0
  76. package/dist/tests/state-builder.test.js.map +1 -0
  77. package/dist/tests/window.test.d.ts +2 -0
  78. package/dist/tests/window.test.d.ts.map +1 -0
  79. package/dist/tests/window.test.js +80 -0
  80. package/dist/tests/window.test.js.map +1 -0
  81. package/package.json +13 -9
  82. package/src/callbacks/defaultCallbacks.ts +197 -0
  83. package/src/callbacks/defaultEvents.ts +21 -0
  84. package/src/elements/form.ts +41 -0
  85. package/src/elements/window.ts +39 -0
  86. package/src/extensionLoader.ts +17 -0
  87. package/src/index.ts +24 -0
  88. package/src/providers.ts +49 -0
  89. package/src/reactComponents/Checkbox.tsx +203 -0
  90. package/src/reactComponents/Honeypot.tsx +133 -0
  91. package/src/reactComponents/Reload.tsx +99 -0
  92. package/src/reactComponents/TestModeBanner.tsx +75 -0
  93. package/src/state/builder.ts +137 -0
  94. package/src/tests/defaultCallbacks.test.ts +372 -0
  95. package/src/tests/defaultEvents.test.ts +80 -0
  96. package/src/tests/extensionLoader.test.ts +41 -0
  97. package/src/tests/form.test.ts +154 -0
  98. package/src/tests/providers.test.ts +175 -0
  99. package/src/tests/state-builder.test.ts +264 -0
  100. package/src/tests/window.test.ts +137 -0
  101. package/tsconfig.cjs.json +32 -0
  102. package/tsconfig.json +33 -0
  103. package/tsconfig.tsbuildinfo +1 -0
  104. package/tsconfig.types.json +9 -0
  105. package/vite.cjs.config.ts +1 -1
  106. package/vite.esm.config.ts +1 -1
  107. package/vite.test.config.ts +1 -1
@@ -1,5 +1,5 @@
1
1
 
2
- > @prosopo/procaptcha-common@2.9.19 build:cjs
2
+ > @prosopo/procaptcha-common@2.10.17 build:cjs
3
3
  > NODE_ENV=${NODE_ENV:-development}; vite build --config vite.cjs.config.ts --mode $NODE_ENV
4
4
 
5
5
  ViteCommonJSConfig: .
@@ -8,12 +8,14 @@ ViteCommonJSConfig: .
8
8
  '/home/runner/work/captcha/captcha/packages/load-balancer/tsconfig.json',
9
9
  '/home/runner/work/captcha/captcha/packages/common/tsconfig.json',
10
10
  '/home/runner/work/captcha/captcha/packages/locale/tsconfig.json',
11
- '/home/runner/work/captcha/captcha/packages/types/tsconfig.json',
11
+ '/home/runner/work/captcha/captcha/packages/logger/tsconfig.json',
12
12
  '/home/runner/work/captcha/captcha/packages/util/tsconfig.json',
13
+ '/home/runner/work/captcha/captcha/packages/types/tsconfig.json',
13
14
  '/home/runner/work/captcha/captcha/packages/util-crypto/tsconfig.json',
14
15
  '/home/runner/work/captcha/captcha/packages/widget-skeleton/tsconfig.json',
15
16
  '/home/runner/work/captcha/captcha/packages/account/tsconfig.json',
16
17
  '/home/runner/work/captcha/captcha/packages/fingerprint/tsconfig.json',
18
+ '/home/runner/work/captcha/captcha/packages/fingerprintjs/tsconfig.json',
17
19
  '/home/runner/work/captcha/captcha/packages/keyring/tsconfig.json'
18
20
  ]
19
21
  }
@@ -22,12 +24,14 @@ ViteCommonJSConfig: .
22
24
  '@prosopo/load-balancer',
23
25
  '@prosopo/common',
24
26
  '@prosopo/locale',
25
- '@prosopo/types',
27
+ '@prosopo/logger',
26
28
  '@prosopo/util',
29
+ '@prosopo/types',
27
30
  '@prosopo/util-crypto',
28
31
  '@prosopo/widget-skeleton',
29
32
  '@prosopo/account',
30
33
  '@prosopo/fingerprint',
34
+ '@prosopo/fingerprintjs',
31
35
  '@prosopo/keyring'
32
36
  ]
33
37
  }
@@ -35,17 +39,20 @@ ViteCommonJSConfig: .
35
39
  Bundle build started
36
40
  transforming...
37
41
  Build end
38
- ✓ 10 modules transformed.
42
+ ✓ 12 modules transformed.
39
43
  Entry module "src/reactComponents/Checkbox.tsx" is using named and default exports together. Consumers of your bundle will have to use `..default` to access the default export, which may not be what you want. Use `output.exports: "named"` to disable this warning.
44
+ Entry module "src/reactComponents/TestModeBanner.tsx" is using named and default exports together. Consumers of your bundle will have to use `..default` to access the default export, which may not be what you want. Use `output.exports: "named"` to disable this warning.
40
45
  rendering chunks...
41
- dist/cjs/callbacks/defaultEvents.cjs 0.31 kB
42
- dist/cjs/elements/window.cjs 0.39 kB
43
- dist/cjs/elements/form.cjs 0.65 kB
44
- dist/cjs/providers.cjs 0.98 kB
45
- dist/cjs/index.cjs 1.16 kB
46
- dist/cjs/extensionLoader.cjs 1.48 kB
47
- dist/cjs/reactComponents/Reload.cjs 3.19 kB
48
- dist/cjs/state/builder.cjs 3.26 kB
49
- dist/cjs/callbacks/defaultCallbacks.cjs 4.07 kB
50
- dist/cjs/reactComponents/Checkbox.cjs 4.26 kB
51
- ✓ built in 223ms
46
+ dist/cjs/callbacks/defaultEvents.cjs 0.31 kB
47
+ dist/cjs/elements/window.cjs 0.59 kB
48
+ dist/cjs/elements/form.cjs 0.72 kB
49
+ dist/cjs/providers.cjs 0.98 kB
50
+ dist/cjs/index.cjs 1.45 kB
51
+ dist/cjs/extensionLoader.cjs 1.48 kB
52
+ dist/cjs/reactComponents/TestModeBanner.cjs 1.61 kB
53
+ dist/cjs/reactComponents/Honeypot.cjs 2.19 kB
54
+ dist/cjs/reactComponents/Reload.cjs 3.19 kB
55
+ dist/cjs/state/builder.cjs 3.26 kB
56
+ dist/cjs/callbacks/defaultCallbacks.cjs 4.07 kB
57
+ dist/cjs/reactComponents/Checkbox.cjs 4.45 kB
58
+ ✓ built in 233ms
@@ -0,0 +1,52 @@
1
+
2
+ > @prosopo/procaptcha-common@2.10.17 build:tsc
3
+ > tsc --build --verbose
4
+
5
+ 8:14:51 AM - Projects in this build:
6
+ * ../../dev/config/tsconfig.json
7
+ * ../locale/tsconfig.json
8
+ * ../util/tsconfig.json
9
+ * ../logger/tsconfig.json
10
+ * ../util-crypto/tsconfig.json
11
+ * ../types/tsconfig.json
12
+ * ../common/tsconfig.json
13
+ * ../load-balancer/tsconfig.json
14
+ * ../widget-skeleton/tsconfig.json
15
+ * ../fingerprintjs/tsconfig.json
16
+ * ../fingerprint/tsconfig.json
17
+ * ../keyring/tsconfig.json
18
+ * ../account/tsconfig.json
19
+ * tsconfig.json
20
+
21
+ 8:14:51 AM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
22
+
23
+ 8:14:51 AM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
24
+
25
+ 8:14:51 AM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
26
+
27
+ 8:14:51 AM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
28
+
29
+ 8:14:51 AM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
30
+
31
+ 8:14:51 AM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/procaptcha/api.ts' is older than output '../types/tsconfig.tsbuildinfo'
32
+
33
+ 8:14:51 AM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/error.ts' is older than output '../common/tsconfig.tsbuildinfo'
34
+
35
+ 8:14:52 AM - Project '../load-balancer/tsconfig.json' is up to date because newest input '../load-balancer/src/balancer.ts' is older than output '../load-balancer/tsconfig.tsbuildinfo'
36
+
37
+ 8:14:52 AM - Project '../widget-skeleton/tsconfig.json' is up to date because newest input '../widget-skeleton/src/webComponent/createWidget.ts' is older than output '../widget-skeleton/tsconfig.tsbuildinfo'
38
+
39
+ 8:14:52 AM - Project '../fingerprintjs/tsconfig.json' is up to date because newest input '../fingerprintjs/src/sources/webgl.ts' is older than output '../fingerprintjs/tsconfig.tsbuildinfo'
40
+
41
+ 8:14:52 AM - Project '../fingerprint/tsconfig.json' is up to date because newest input '../fingerprint/src/index.ts' is older than output '../fingerprint/tsconfig.tsbuildinfo'
42
+
43
+ 8:14:52 AM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/index.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
44
+
45
+ 8:14:52 AM - Project '../account/tsconfig.json' is out of date because output file '../account/tsconfig.tsbuildinfo' does not exist
46
+
47
+ 8:14:52 AM - Building project '/home/runner/work/captcha/captcha/packages/account/tsconfig.json'...
48
+
49
+ 8:14:56 AM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
50
+
51
+ 8:14:56 AM - Building project '/home/runner/work/captcha/captcha/packages/procaptcha-common/tsconfig.json'...
52
+
@@ -1,6 +1,10 @@
1
1
 
2
- > @prosopo/procaptcha-common@2.9.19 build
3
- > NODE_ENV=${NODE_ENV:-development}; vite build --config vite.esm.config.ts --mode $NODE_ENV
2
+ > @prosopo/procaptcha-common@2.10.17 build
3
+ > npm run build:cross-env -- --mode ${NODE_ENV:-development}
4
+
5
+
6
+ > @prosopo/procaptcha-common@2.10.17 build:cross-env
7
+ > vite build --config vite.esm.config.ts --mode production
4
8
 
5
9
  ViteEsmConfig: .
6
10
  {
@@ -8,12 +12,14 @@ ViteEsmConfig: .
8
12
  '/home/runner/work/captcha/captcha/packages/load-balancer/tsconfig.json',
9
13
  '/home/runner/work/captcha/captcha/packages/common/tsconfig.json',
10
14
  '/home/runner/work/captcha/captcha/packages/locale/tsconfig.json',
11
- '/home/runner/work/captcha/captcha/packages/types/tsconfig.json',
15
+ '/home/runner/work/captcha/captcha/packages/logger/tsconfig.json',
12
16
  '/home/runner/work/captcha/captcha/packages/util/tsconfig.json',
17
+ '/home/runner/work/captcha/captcha/packages/types/tsconfig.json',
13
18
  '/home/runner/work/captcha/captcha/packages/util-crypto/tsconfig.json',
14
19
  '/home/runner/work/captcha/captcha/packages/widget-skeleton/tsconfig.json',
15
20
  '/home/runner/work/captcha/captcha/packages/account/tsconfig.json',
16
21
  '/home/runner/work/captcha/captcha/packages/fingerprint/tsconfig.json',
22
+ '/home/runner/work/captcha/captcha/packages/fingerprintjs/tsconfig.json',
17
23
  '/home/runner/work/captcha/captcha/packages/keyring/tsconfig.json'
18
24
  ]
19
25
  }
@@ -22,12 +28,14 @@ ViteEsmConfig: .
22
28
  '@prosopo/load-balancer',
23
29
  '@prosopo/common',
24
30
  '@prosopo/locale',
25
- '@prosopo/types',
31
+ '@prosopo/logger',
26
32
  '@prosopo/util',
33
+ '@prosopo/types',
27
34
  '@prosopo/util-crypto',
28
35
  '@prosopo/widget-skeleton',
29
36
  '@prosopo/account',
30
37
  '@prosopo/fingerprint',
38
+ '@prosopo/fingerprintjs',
31
39
  '@prosopo/keyring'
32
40
  ]
33
41
  }
@@ -35,16 +43,18 @@ ViteEsmConfig: .
35
43
  Bundle build started
36
44
  transforming...
37
45
  Build end
38
- ✓ 10 modules transformed.
46
+ ✓ 12 modules transformed.
39
47
  rendering chunks...
40
- dist/callbacks/defaultEvents.js 0.19 kB
41
- dist/extensionLoader.js 0.21 kB
42
- dist/elements/window.js 0.29 kB
43
- dist/elements/form.js 0.52 kB
44
- dist/index.js 0.77 kB
45
- dist/providers.js 0.83 kB
46
- dist/reactComponents/Reload.js 3.01 kB
47
- dist/state/builder.js 3.14 kB
48
- dist/callbacks/defaultCallbacks.js 3.91 kB
49
- dist/reactComponents/Checkbox.js 4.04 kB
50
- ✓ built in 254ms
48
+ dist/callbacks/defaultEvents.js 0.19 kB
49
+ dist/extensionLoader.js 0.21 kB
50
+ dist/elements/window.js 0.46 kB
51
+ dist/elements/form.js 0.58 kB
52
+ dist/providers.js 0.83 kB
53
+ dist/index.js 0.98 kB
54
+ dist/reactComponents/TestModeBanner.js 1.46 kB
55
+ dist/reactComponents/Honeypot.js 2.06 kB
56
+ dist/reactComponents/Reload.js 3.01 kB
57
+ dist/state/builder.js 3.14 kB
58
+ dist/callbacks/defaultCallbacks.js 3.91 kB
59
+ dist/reactComponents/Checkbox.js 4.23 kB
60
+ ✓ built in 275ms
package/CHANGELOG.md CHANGED
@@ -1,5 +1,397 @@
1
1
  # @prosopo/procaptcha-common
2
2
 
3
+ ## 2.10.17
4
+ ### Patch Changes
5
+
6
+ - Updated dependencies [a1d60db]
7
+ - Updated dependencies [2392aaf]
8
+ - @prosopo/types@4.3.0
9
+ - @prosopo/account@2.8.35
10
+ - @prosopo/load-balancer@2.9.10
11
+
12
+ ## 2.10.16
13
+ ### Patch Changes
14
+
15
+ - d3db08d: feat(widget): bait AI responses with empty input + decoded label, portaled into the dapp's form
16
+
17
+ Redesigns the honeypot so it can actually catch AI agents instead of being inert:
18
+
19
+ - Empty input + decoded label: the encoded morse/semaphore question moves from `input.value` to an offscreen `<label>` (base64-decoded at render). Naive form-fillers and humans leave the empty input alone; agents that read the DOM as a prompt write into the empty field, captured as `clientMetaData.hp` on submit.
20
+ - Portaled to light DOM, inside the dapp's `<form>`: widget stays in shadow DOM, but the honeypot portals via `react-dom/createPortal` into the enclosing form (`document.body` fallback). Bots no longer have to traverse `.shadowRoot` to reach it (which was tripping `@prosopo/catcher`'s shadow-DOM guard and wiping the bot's value), and the bait sits where bots actually look — `form.querySelectorAll('input')`.
21
+ - `form="<useId>-d"`: opaque per-instance non-existent form id disassociates the input from native form submission while keeping it DOM-discoverable. Dapp backends don't receive a stray `email_confirm=` field.
22
+ - Shared `<Honeypot />` extracted to `@prosopo/procaptcha-common`.
23
+ - `procaptcha-bundle` Vite config now routes the Honeypot module into a per-build opaque chunk (`c<random8hex>-<hash>.js`) so the URL doesn't identify the component or stay stable across builds for static blocklisting.
24
+
25
+ ## 2.10.15
26
+ ### Patch Changes
27
+
28
+ - f7f9ec5: feat(provider,widget): reserved always-pass / always-fail test site keys
29
+
30
+ Add two fixed, well-known reserved site keys (`ALWAYS_PASS_SITE_KEY` /
31
+ `ALWAYS_FAIL_SITE_KEY`) that force a deterministic captcha verdict for CI/CD and
32
+ integration testing, constant across production, staging and development.
33
+
34
+ - `@prosopo/types`: shared constants + `getTestSiteKeyMode`, imported by both the
35
+ provider and the widget.
36
+ - `@prosopo/provider`: short-circuits the `submit*` and `verify` endpoints (verify
37
+ runs before the signature check, so no dapp secret is needed), serves an
38
+ invisible PoW session from the frictionless handler, and bypasses domain
39
+ middleware. Works in every environment with no DB record.
40
+ - `@prosopo/procaptcha-common` / `-react` / `-frictionless`: render a prominent
41
+ `TestModeBanner` warning (always pass/fail) plus a console warning so a test key
42
+ can never ship to production unnoticed.
43
+
44
+ always-pass verifies at both the submit and verify layers; always-fail fails at
45
+ both. Safe in production by design: the override only weakens protection for a
46
+ dapp that deliberately opts in, mirroring reCAPTCHA's public test keys.
47
+ - Updated dependencies [6c26669]
48
+ - Updated dependencies [f7f9ec5]
49
+ - @prosopo/types@4.2.1
50
+ - @prosopo/account@2.8.34
51
+ - @prosopo/load-balancer@2.9.9
52
+
53
+ ## 2.10.14
54
+ ### Patch Changes
55
+
56
+ - @prosopo/account@2.8.33
57
+ - @prosopo/load-balancer@2.9.8
58
+
59
+ ## 2.10.13
60
+ ### Patch Changes
61
+
62
+ - Updated dependencies [20cae63]
63
+ - Updated dependencies [4d9923e]
64
+ - @prosopo/types@4.2.0
65
+ - @prosopo/account@2.8.32
66
+ - @prosopo/load-balancer@2.9.7
67
+
68
+ ## 2.10.12
69
+ ### Patch Changes
70
+
71
+ - Updated dependencies [d351362]
72
+ - @prosopo/types@4.1.4
73
+ - @prosopo/account@2.8.31
74
+ - @prosopo/load-balancer@2.9.6
75
+
76
+ ## 2.10.11
77
+ ### Patch Changes
78
+
79
+ - Updated dependencies [e2711ae]
80
+ - Updated dependencies [5786629]
81
+ - @prosopo/types@4.1.3
82
+ - @prosopo/account@2.8.30
83
+ - @prosopo/load-balancer@2.9.5
84
+
85
+ ## 2.10.10
86
+ ### Patch Changes
87
+
88
+ - Updated dependencies [566c1f6]
89
+ - @prosopo/widget-skeleton@2.8.3
90
+ - @prosopo/account@2.8.29
91
+ - @prosopo/types@4.1.2
92
+ - @prosopo/load-balancer@2.9.4
93
+
94
+ ## 2.10.9
95
+ ### Patch Changes
96
+
97
+ - 53bfd45: Detect when the widget is served over plain HTTP (an insecure browser context)
98
+ and show a clear "Procaptcha requires a secure (HTTPS) connection" message
99
+ instead of failing later with a cryptic `Provider Selection Failed` error.
100
+ Procaptcha depends on secure-context-only browser APIs (e.g. SubtleCrypto), so
101
+ the frictionless widget now short-circuits before the provider-selection retry
102
+ loop when `window.isSecureContext` is false. Adds the `WIDGET.INSECURE_CONTEXT`
103
+ translation key across all locales and an `isSecureBrowserContext` helper.
104
+ - Updated dependencies [91958da]
105
+ - @prosopo/types@4.1.1
106
+ - @prosopo/account@2.8.28
107
+ - @prosopo/load-balancer@2.9.3
108
+
109
+ ## 2.10.8
110
+ ### Patch Changes
111
+
112
+ - Updated dependencies [6a741ce]
113
+ - @prosopo/types@4.1.0
114
+ - @prosopo/account@2.8.27
115
+ - @prosopo/load-balancer@2.9.2
116
+
117
+ ## 2.10.7
118
+ ### Patch Changes
119
+
120
+ - Updated dependencies [642d064]
121
+ - @prosopo/account@2.8.26
122
+
123
+ ## 2.10.6
124
+ ### Patch Changes
125
+
126
+ - Updated dependencies [3c0be68]
127
+ - Updated dependencies [f9ea09d]
128
+ - Updated dependencies [4aae4e6]
129
+ - Updated dependencies [d865319]
130
+ - Updated dependencies [753304b]
131
+ - Updated dependencies [8bb7286]
132
+ - Updated dependencies [f9ea09d]
133
+ - Updated dependencies [4aae4e6]
134
+ - Updated dependencies [5f1ae53]
135
+ - @prosopo/types@4.0.0
136
+ - @prosopo/account@2.8.25
137
+ - @prosopo/load-balancer@2.9.1
138
+ - @prosopo/widget-skeleton@2.8.2
139
+
140
+ ## 2.10.5
141
+ ### Patch Changes
142
+
143
+ - Updated dependencies [819ed95]
144
+ - Updated dependencies [33a6c57]
145
+ - @prosopo/types@3.16.1
146
+ - @prosopo/load-balancer@2.9.0
147
+ - @prosopo/account@2.8.24
148
+
149
+ ## 2.10.4
150
+ ### Patch Changes
151
+
152
+ - Updated dependencies [f6a4402]
153
+ - Updated dependencies [99dfb44]
154
+ - @prosopo/types@3.16.0
155
+ - @prosopo/account@2.8.23
156
+ - @prosopo/load-balancer@2.8.40
157
+
158
+ ## 2.10.3
159
+ ### Patch Changes
160
+
161
+ - Updated dependencies [3e54c0a]
162
+ - @prosopo/types@3.15.0
163
+ - @prosopo/account@2.8.22
164
+ - @prosopo/load-balancer@2.8.39
165
+
166
+ ## 2.10.2
167
+ ### Patch Changes
168
+
169
+ - Updated dependencies [946a8ba]
170
+ - Updated dependencies [5614814]
171
+ - @prosopo/types@3.14.1
172
+ - @prosopo/account@2.8.21
173
+ - @prosopo/load-balancer@2.8.38
174
+
175
+ ## 2.10.1
176
+ ### Patch Changes
177
+
178
+ - 06970d2: Missed review comments
179
+ - dd3e06e: CSS hot fix
180
+ - Updated dependencies [06970d2]
181
+ - Updated dependencies [fc514dd]
182
+ - Updated dependencies [42650db]
183
+ - Updated dependencies [dd3e06e]
184
+ - @prosopo/widget-skeleton@2.8.1
185
+ - @prosopo/types@3.14.0
186
+ - @prosopo/account@2.8.20
187
+ - @prosopo/load-balancer@2.8.37
188
+
189
+ ## 2.10.0
190
+ ### Minor Changes
191
+
192
+ - 73df23c: Stop widget css from being overriden
193
+
194
+ ### Patch Changes
195
+
196
+ - 8139819: prosopo namespacing for css
197
+ - Updated dependencies [73df23c]
198
+ - Updated dependencies [8139819]
199
+ - @prosopo/widget-skeleton@2.8.0
200
+ - @prosopo/account@2.8.19
201
+ - @prosopo/load-balancer@2.8.36
202
+
203
+ ## 2.9.41
204
+ ### Patch Changes
205
+
206
+ - @prosopo/account@2.8.18
207
+ - @prosopo/types@3.13.3
208
+ - @prosopo/load-balancer@2.8.35
209
+
210
+ ## 2.9.40
211
+ ### Patch Changes
212
+
213
+ - @prosopo/account@2.8.17
214
+ - @prosopo/types@3.13.2
215
+ - @prosopo/load-balancer@2.8.34
216
+
217
+ ## 2.9.39
218
+ ### Patch Changes
219
+
220
+ - Updated dependencies [20192d2]
221
+ - @prosopo/widget-skeleton@2.7.14
222
+ - @prosopo/account@2.8.16
223
+ - @prosopo/types@3.13.1
224
+ - @prosopo/load-balancer@2.8.33
225
+
226
+ ## 2.9.38
227
+ ### Patch Changes
228
+
229
+ - Updated dependencies [e6d9553]
230
+ - @prosopo/types@3.13.0
231
+ - @prosopo/account@2.8.15
232
+ - @prosopo/load-balancer@2.8.32
233
+
234
+ ## 2.9.37
235
+ ### Patch Changes
236
+
237
+ - Updated dependencies [730c61e]
238
+ - Updated dependencies [d5082a9]
239
+ - Updated dependencies [e1ea65f]
240
+ - Updated dependencies [c316257]
241
+ - @prosopo/load-balancer@2.8.31
242
+ - @prosopo/account@2.8.14
243
+ - @prosopo/types@3.12.3
244
+
245
+ ## 2.9.36
246
+ ### Patch Changes
247
+
248
+ - Updated dependencies [adb89a6]
249
+ - @prosopo/types@3.12.2
250
+ - @prosopo/account@2.8.13
251
+ - @prosopo/load-balancer@2.8.30
252
+
253
+ ## 2.9.35
254
+ ### Patch Changes
255
+
256
+ - Updated dependencies [a90eb54]
257
+ - @prosopo/types@3.12.1
258
+ - @prosopo/account@2.8.12
259
+ - @prosopo/load-balancer@2.8.29
260
+
261
+ ## 2.9.34
262
+ ### Patch Changes
263
+
264
+ - Updated dependencies [676c5f2]
265
+ - Updated dependencies [feaca02]
266
+ - @prosopo/load-balancer@2.8.28
267
+ - @prosopo/types@3.12.0
268
+ - @prosopo/account@2.8.11
269
+
270
+ ## 2.9.33
271
+ ### Patch Changes
272
+
273
+ - Updated dependencies [8148587]
274
+ - @prosopo/types@3.11.1
275
+ - @prosopo/account@2.8.10
276
+ - @prosopo/load-balancer@2.8.27
277
+
278
+ ## 2.9.32
279
+ ### Patch Changes
280
+
281
+ - Updated dependencies [7f6ffc5]
282
+ - @prosopo/types@3.11.0
283
+ - @prosopo/account@2.8.9
284
+ - @prosopo/load-balancer@2.8.26
285
+
286
+ ## 2.9.31
287
+ ### Patch Changes
288
+
289
+ - Updated dependencies [93fa086]
290
+ - @prosopo/types@3.10.2
291
+ - @prosopo/account@2.8.8
292
+ - @prosopo/load-balancer@2.8.25
293
+
294
+ ## 2.9.30
295
+ ### Patch Changes
296
+
297
+ - Updated dependencies [cde7550]
298
+ - @prosopo/types@3.10.1
299
+ - @prosopo/account@2.8.7
300
+ - @prosopo/load-balancer@2.8.24
301
+
302
+ ## 2.9.29
303
+ ### Patch Changes
304
+
305
+ - Updated dependencies [ad6d622]
306
+ - @prosopo/types@3.10.0
307
+ - @prosopo/account@2.8.6
308
+ - @prosopo/load-balancer@2.8.23
309
+
310
+ ## 2.9.28
311
+ ### Patch Changes
312
+
313
+ - Updated dependencies [ff58a70]
314
+ - @prosopo/types@3.9.0
315
+ - @prosopo/account@2.8.5
316
+ - @prosopo/load-balancer@2.8.22
317
+
318
+ ## 2.9.27
319
+ ### Patch Changes
320
+
321
+ - Updated dependencies [d2431cd]
322
+ - @prosopo/types@3.8.4
323
+ - @prosopo/account@2.8.4
324
+ - @prosopo/load-balancer@2.8.21
325
+
326
+ ## 2.9.26
327
+ ### Patch Changes
328
+
329
+ - Updated dependencies [bd6995b]
330
+ - @prosopo/types@3.8.3
331
+ - @prosopo/account@2.8.3
332
+ - @prosopo/load-balancer@2.8.20
333
+
334
+ ## 2.9.25
335
+ ### Patch Changes
336
+
337
+ - Updated dependencies [9633e58]
338
+ - @prosopo/types@3.8.2
339
+ - @prosopo/account@2.8.2
340
+ - @prosopo/load-balancer@2.8.19
341
+
342
+ ## 2.9.24
343
+ ### Patch Changes
344
+
345
+ - Updated dependencies [f52a5c1]
346
+ - @prosopo/types@3.8.1
347
+ - @prosopo/account@2.8.1
348
+ - @prosopo/load-balancer@2.8.18
349
+
350
+ ## 2.9.23
351
+ ### Patch Changes
352
+
353
+ - f3cf586: fix/widget-parent-detection
354
+ - 0a38892: feat/cross-os-testing
355
+ - a8faa9a: bump license year
356
+ - 3acc333: Release 3.3.0
357
+ - Updated dependencies [3acc333]
358
+ - Updated dependencies [0a38892]
359
+ - Updated dependencies [1ee3d80]
360
+ - Updated dependencies [a8faa9a]
361
+ - Updated dependencies [6a4d57d]
362
+ - Updated dependencies [7543d17]
363
+ - Updated dependencies [3acc333]
364
+ - @prosopo/types@3.8.0
365
+ - @prosopo/widget-skeleton@2.7.13
366
+ - @prosopo/load-balancer@2.8.17
367
+ - @prosopo/account@2.8.0
368
+
369
+ ## 2.9.22
370
+ ### Patch Changes
371
+
372
+ - Updated dependencies [141e462]
373
+ - @prosopo/types@3.7.2
374
+ - @prosopo/account@2.7.46
375
+ - @prosopo/load-balancer@2.8.16
376
+
377
+ ## 2.9.21
378
+ ### Patch Changes
379
+
380
+ - Updated dependencies [345b25b]
381
+ - @prosopo/types@3.7.1
382
+ - @prosopo/account@2.7.45
383
+ - @prosopo/load-balancer@2.8.15
384
+
385
+ ## 2.9.20
386
+ ### Patch Changes
387
+
388
+ - Updated dependencies [ce70a2b]
389
+ - Updated dependencies [c2b940f]
390
+ - Updated dependencies [f6b5094]
391
+ - @prosopo/types@3.7.0
392
+ - @prosopo/account@2.7.44
393
+ - @prosopo/load-balancer@2.8.14
394
+
3
395
  ## 2.9.19
4
396
  ### Patch Changes
5
397
 
@@ -0,0 +1,4 @@
1
+ import { type Callbacks, type ProcaptchaRenderOptions } from "@prosopo/types";
2
+ export declare const getDefaultCallbacks: (element?: Element) => Callbacks;
3
+ export declare function setUserCallbacks(renderOptions: ProcaptchaRenderOptions | undefined, callbacks: Callbacks, element: Element): void;
4
+ //# sourceMappingURL=defaultCallbacks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultCallbacks.d.ts","sourceRoot":"","sources":["../../src/callbacks/defaultCallbacks.ts"],"names":[],"mappings":"AAaA,OAAO,EAEN,KAAK,SAAS,EACd,KAAK,uBAAuB,EAE5B,MAAM,gBAAgB,CAAC;AAIxB,eAAO,MAAM,mBAAmB,aAAc,OAAO,KAAG,SAiCtD,CAAC;AAyBH,wBAAgB,gBAAgB,CAC/B,aAAa,EAAE,uBAAuB,GAAG,SAAS,EAClD,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,QA+FhB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultCallbacks.js","sourceRoot":"","sources":["../../src/callbacks/defaultCallbacks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Callbacks } from "@prosopo/types";
2
+ export declare const getDefaultEvents: (callbacks: Partial<Callbacks>) => {
3
+ onHuman: (token: import("@prosopo/types").ProcaptchaToken) => void;
4
+ onExtensionNotFound: () => void;
5
+ onChallengeExpired: () => void;
6
+ onExpired: () => void;
7
+ onError: (error: Error) => void;
8
+ onClose: () => void;
9
+ onOpen: () => void;
10
+ onFailed: () => void;
11
+ onReload: () => void;
12
+ onReset: () => void;
13
+ };
14
+ //# sourceMappingURL=defaultEvents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultEvents.d.ts","sourceRoot":"","sources":["../../src/callbacks/defaultEvents.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,eAAO,MAAM,gBAAgB,cAAe,OAAO,CAAC,SAAS,CAAC;;;;;;;;;;;CAG5D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultEvents.js","sourceRoot":"","sources":["../../src/callbacks/defaultEvents.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAA6B,EAAE,EAAE,CAAC,CAAC;IACnE,GAAG,mBAAmB,CAAC,SAAS,CAAC;IACjC,GAAG,SAAS;CACZ,CAAC,CAAC"}
@@ -2,9 +2,15 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const types = require("@prosopo/types");
4
4
  function getParentForm(widgetElement) {
5
+ const parentForm = widgetElement.closest("form");
6
+ if (parentForm) {
7
+ return parentForm;
8
+ }
5
9
  const rootWidgetNode = widgetElement.getRootNode();
6
- const topWidgetElement = rootWidgetNode instanceof ShadowRoot ? rootWidgetNode.host : widgetElement;
7
- return topWidgetElement.closest("form");
10
+ if (rootWidgetNode instanceof ShadowRoot) {
11
+ return rootWidgetNode.host.closest("form");
12
+ }
13
+ return null;
8
14
  }
9
15
  const removeProcaptchaResponse = () => {
10
16
  const element = Array.from(
@@ -9,4 +9,11 @@ const getWindowCallback = (callbackName) => {
9
9
  }
10
10
  return fn;
11
11
  };
12
+ const isSecureBrowserContext = () => {
13
+ if (typeof window === "undefined") {
14
+ return true;
15
+ }
16
+ return window.isSecureContext === true;
17
+ };
12
18
  exports.getWindowCallback = getWindowCallback;
19
+ exports.isSecureBrowserContext = isSecureBrowserContext;