@gaviti/vue-turnstile
TypeScript icon, indicating that this package has built-in type declarations

1.0.8 • Public • Published

Vue Turnstile

A Vue 3.3.x component wrapper for Cloudflare's Turnstile

Installation

NPM

npm install @gaviti/vue-turnstile

Yarn

yarn add @gaviti/vue-turnstile

Installation for Vue 2.7.x

For Vue 2.7.x support, you should install a version of this package lower than 1.0.0. Please refer to the "master" branch for the related code.

Usage

<template>
  <div>
    <vue-turnstile @verified="token = $event" />
    <div>Token: {{ token }}</div>
  </div>
</template>

<script>
import VueTurnstile from '@gaviti/vue-turnstile';

export default {
  components: {
    VueTurnstile
  },
  data() {
    return {
      token: null,
    };
  },
};
</script>

Customization options

Prop Type Description Required Default
site-key String Your Turnstile sitekey - Docs Yes N/A
theme 'light' | 'dark' | 'auto' Widget theme No 'auto'
size 'normal' | 'compact' Widget size No 'normal'
position 'left' | 'right' Widget position (fixed to left or right) No undefined
auto-reset Boolean Allow to refresh the token after some time (in milliseconds) No false
reset-timeout Number Refresh the token after some time (in milliseconds) * requires auto-reset to be true No 295000
recaptcha-compat Boolean Adds recaptcha compatibility layer No false
explicit-render Boolean Renders the widget explicitly No false
appearance String Allow to change the appearance No always

Methods

Method Description
render() Render the widget
reset() Reset the widget
remove() Remove the widget
getToken() Generates a new token

Events

Name Description
@verified Returns the token
@rendering Emitted on mounted (returns nothing)
@rendered Emitted at the end of render (returns nothing)

Slots

Name Description
default Default slot

License

MIT License

Copyright (c) 2024 Gaviti

Package Sidebar

Install

npm i @gaviti/vue-turnstile

Weekly Downloads

68

Version

1.0.8

License

MIT

Unpacked Size

31.8 kB

Total Files

9

Last publish

Collaborators

  • amit_feldman
  • akomarovsky