ar_captcha 1.3.2 copy "ar_captcha: ^1.3.2" to clipboard
ar_captcha: ^1.3.2 copied to clipboard

Flutter plugin for integrating ARCaptcha, providing a secure and customizable captcha solution for Android, IOS, Web apps.

1.0.0 #

  • Initial release of ar_captcha 🎉
  • Added support for rendering ArCaptcha in multiple modes:
    • Full screen page (CaptchaType.screen)
    • Dialog (CaptchaType.dialog)
    • Modal bottom sheet (CaptchaType.modalBottomSheet)
  • Provided ArCaptchaController for configuration and lifecycle handling.
  • Added success and error callbacks to handle captcha responses.
  • Web and mobile platform support with unified API.

1.0.1 #

  • Fix reported bug

1.0.2 #

  • Add supported platform
  • Added support for dark theme

1.0.3 #

  • Fixed Navigator pop issues in web dialogs to prevent _debugLocked errors.
  • Added conditional execution of the captcha script based on DataSize (normal vs invisible).
  • Improved color handling with extended list of supported Material colors in colorToString().
  • Updated documentation for ArCaptchaController properties and HTML data-* attributes.
  • Minor bug fixes and performance improvements for WebView and InAppWebView integration.
  • Fix reported bug

1.0.4 #

  • Change color convertor to get all color data

1.0.5 #

  • Remove background color in invisible mode
  • Fix some reported bug

1.0.6 #

  • Change loader color in dark mode
  • Fix some reported bug

1.0.7 #

  • Fix loader color in dark mode

1.0.8 #

  • Add platform support for macOS, windows, linux
  • Add new screenshot of UI package

1.0.9 #

  • Remove InAppWebView library because of internet problem in some country
  • Use HtmlElementView instead of InAppWebView
  • Add captchaWidth in dialog mode of captcha
  • Fix reported issue

1.1.0 #

  • Added Responsive Dialog mode
    • Automatically switches between modal bottom sheet (mobile) and dialog (desktop/tablet)
  • Improved adaptive UI behavior across platforms

1.1.1 #

  • Added WASM for web
  • Fix reported bug

1.2.0 #

  • Fix problem in safari web
  • change arCaptcha Param holder section
  • Previews usage
 .showCaptcha(
     context: context,
     mode: CaptchaType.dialog,
     onSuccess: (token) {},
     onError: (error) {},
 )
  • Now:
 .showCaptcha(
     context: context,
     params: CaptchaParams(
       mode: CaptchaType.dialog,
       onSuccess: (token) {},
       onError: (error) {},
     ),
 )

1.2.1 #

  • Change readme

1.2.2 #

  • Fixed the double Navigator.pop on web captcha success/error that could close the OTP screen under responsiveDialog.
  • Added debug logging around captcha initiation and web lifecycle events to help trace captcha open, load, execute, success, and error flows.

1.2.3 #

  • Add needed params to the ArCaptchaSectionHolder mobile mode

1.2.4 #

  • Fixed Safari web white screen by loading captcha HTML via Blob URL instead of srcdoc.
  • Added Safari browser detection utilities for web platform iframe handling.
  • Fixed invalid background CSS in the captcha HTML template.
  • Added defer to the ArCaptcha script tag for more reliable loading.
  • Skipped ClipRRect on web to avoid Safari CanvasKit rendering issues with HtmlElementView.

1.2.5 #

  • Fixed Safari platform view not painting captcha content even when the Blob iframe loaded successfully.
  • Deferred iframe content assignment until Flutter attaches the platform view to the DOM.
  • Removed aria-hidden and applied Safari compositing fixes on flt-platform-view ancestors.
  • Disabled responsive dialog animations on Safari to avoid platform view layer bugs during transitions.
  • Hide the Flutter loading overlay as soon as captcha content reports ready.

1.2.6 #

  • Fixed Safari blank captcha by mounting widget markup directly into the platform-view div instead of a nested iframe.
  • Safari now injects ArCaptcha scripts and DOM into HtmlElementView to avoid WebKit compositor bugs with blob iframes.
  • Namespaced captcha callbacks per view instance to avoid collisions on the host page.
  • Only fire iframe onLoad after real content is assigned (ignore empty initial loads).

1.2.7 #

  • Fixed Safari zero-height platform view (rect=500x0) by applying explicit pixel dimensions to HtmlElementView and flt-platform-view.
  • Pass captchaHeight / captchaWidth through to the web captcha view for reliable Safari layout.
  • Use LayoutBuilder with fixed SizedBox instead of SizedBox.expand on web.

1.3.0 #

  • Added an optional useInAppWebViewOnWeb flag to ArCaptchaController so web mode can render with flutter_inappwebview when desired.
  • Kept the existing web message bridge intact so captcha success and error callbacks continue to work reliably on web.

1.3.1 #

  • Fixed Safari web rendering when useInAppWebViewOnWeb is enabled by forcing Safari to use the direct DOM captcha mount.
  • Kept flutter_inappwebview rendering available for non-Safari web browsers.

1.3.2 #

  • Fixed Safari direct DOM callback registration by sanitizing generated JavaScript callback names.
  • Fixed Safari captcha staying hidden behind the loader when the platform view id contains hyphens.
2
likes
0
points
1.32k
downloads

Publisher

unverified uploader

Weekly Downloads

Flutter plugin for integrating ARCaptcha, providing a secure and customizable captcha solution for Android, IOS, Web apps.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, flutter_inappwebview, modal_bottom_sheet, web, webview_flutter

More

Packages that depend on ar_captcha