@prosopo/procaptcha-bundle 4.3.0 → 4.4.0

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 (43) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +6 -6
  2. package/.turbo/turbo-build$colon$tsc.log +26 -26
  3. package/.turbo/turbo-build.log +15 -15
  4. package/CHANGELOG.md +26 -0
  5. package/dist/cjs/index.cjs +56 -11
  6. package/dist/cjs/util/captcha/captchaRenderer.cjs +18 -1
  7. package/dist/cjs/util/configCreator.cjs +4 -2
  8. package/dist/cjs/util/widgetFactory.cjs +8 -5
  9. package/dist/index.d.ts +1 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +56 -11
  12. package/dist/index.js.map +1 -1
  13. package/dist/tests/bind.unit.test.d.ts +2 -0
  14. package/dist/tests/bind.unit.test.d.ts.map +1 -0
  15. package/dist/tests/bind.unit.test.js +166 -0
  16. package/dist/tests/bind.unit.test.js.map +1 -0
  17. package/dist/tests/detectorPrefetch.unit.test.js.map +1 -1
  18. package/dist/tests/reset.unit.test.js +6 -2
  19. package/dist/tests/reset.unit.test.js.map +1 -1
  20. package/dist/tests/start.unit.test.js +6 -3
  21. package/dist/tests/start.unit.test.js.map +1 -1
  22. package/dist/util/captcha/captchaRenderer.d.ts +1 -1
  23. package/dist/util/captcha/captchaRenderer.d.ts.map +1 -1
  24. package/dist/util/captcha/captchaRenderer.js +18 -1
  25. package/dist/util/captcha/captchaRenderer.js.map +1 -1
  26. package/dist/util/configCreator.d.ts +14 -2
  27. package/dist/util/configCreator.d.ts.map +1 -1
  28. package/dist/util/configCreator.js +5 -3
  29. package/dist/util/configCreator.js.map +1 -1
  30. package/dist/util/widgetFactory.d.ts +7 -2
  31. package/dist/util/widgetFactory.d.ts.map +1 -1
  32. package/dist/util/widgetFactory.js +8 -5
  33. package/dist/util/widgetFactory.js.map +1 -1
  34. package/package.json +7 -7
  35. package/src/index.ts +92 -18
  36. package/src/tests/bind.unit.test.ts +227 -0
  37. package/src/tests/detectorPrefetch.unit.test.ts +2 -2
  38. package/src/tests/reset.unit.test.ts +9 -3
  39. package/src/tests/start.unit.test.ts +7 -4
  40. package/src/util/captcha/captchaRenderer.tsx +31 -13
  41. package/src/util/configCreator.ts +29 -11
  42. package/src/util/widgetFactory.ts +10 -3
  43. package/tsconfig.tsbuildinfo +1 -1
@@ -29,6 +29,12 @@ import type { CaptchaRenderer } from "./captcha/captchaRenderer.js";
29
29
  import { resolveLanguage } from "./language.js";
30
30
  import type { WidgetThemeResolver } from "./widgetThemeResolver.js";
31
31
 
32
+ /** A mounted widget and the element it listens on for `procaptcha:execute`. */
33
+ interface CreatedWidget {
34
+ root: Root;
35
+ container: HTMLElement;
36
+ }
37
+
32
38
  class WidgetFactory {
33
39
  private captchaRenderer: CaptchaRenderer | null = null;
34
40
  private _i18n: Ti18n | null = null;
@@ -49,7 +55,7 @@ class WidgetFactory {
49
55
  renderOptions: ProcaptchaRenderOptions,
50
56
  isWeb2 = true,
51
57
  invisible = false,
52
- ): Promise<Root[]> {
58
+ ): Promise<CreatedWidget[]> {
53
59
  return Promise.all(
54
60
  containers.map((container) => {
55
61
  const callbacks = getDefaultCallbacks(container);
@@ -71,7 +77,7 @@ class WidgetFactory {
71
77
  callbacks: Callbacks,
72
78
  isWeb2 = true,
73
79
  invisible = false,
74
- ): Promise<Root> {
80
+ ): Promise<CreatedWidget> {
75
81
  renderOptions.theme = this.widgetThemeResolver.resolveWidgetTheme(
76
82
  container,
77
83
  renderOptions,
@@ -127,7 +133,7 @@ class WidgetFactory {
127
133
  container,
128
134
  );
129
135
 
130
- return captchaRoot;
136
+ return { root: captchaRoot, container: widgetContainer };
131
137
  }
132
138
 
133
139
  protected async getCaptchaRenderer(
@@ -158,3 +164,4 @@ class WidgetFactory {
158
164
  }
159
165
 
160
166
  export { WidgetFactory };
167
+ export type { CreatedWidget };