New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

react-canvas-captcha

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-canvas-captcha - npm Package Compare versions

Comparing version 1.0.1 to 1.0.2

53

dist/index.js

@@ -9,5 +9,3 @@ "use strict";

var _react = require("react");
var _useGenerateCaptcha2 = _interopRequireDefault(require("./useGenerateCaptcha"));
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

@@ -24,2 +22,51 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var randomColor = function randomColor() {
var r = Math.floor(Math.random() * 256);
var g = Math.floor(Math.random() * 256);
var b = Math.floor(Math.random() * 256);
return 'rgb(' + r + ',' + g + ',' + b + ')';
};
var createCaptcha = function createCaptcha(canvas, config) {
var showNum = [];
var canvasWidth = config === null || config === void 0 ? void 0 : config.boxWidth;
var canvasHeight = config.boxHeight;
var context = canvas.getContext('2d');
canvas.width = canvasWidth;
canvas.height = canvasHeight;
var sCode = 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9';
var saCode = sCode.split(',');
var saCodeLen = saCode.length;
for (var i = 0; i < (config === null || config === void 0 ? void 0 : config.numberOfChars); i++) {
var sIndex = Math.floor(Math.random() * saCodeLen);
var sDeg = Math.random() * 30 * Math.PI / 180;
var cTxt = saCode[sIndex];
showNum[i] = cTxt.toLowerCase();
var x = 10 + i * 20;
var y = 20 + Math.random() * 8;
context.font = config === null || config === void 0 ? void 0 : config.font;
context.translate(x, y);
context.rotate(sDeg);
context.fillStyle = randomColor();
context.fillText(cTxt, config === null || config === void 0 ? void 0 : config.textStartingX, config === null || config === void 0 ? void 0 : config.textStartingY);
context.rotate(-sDeg);
context.translate(-x, -y);
}
for (var _i = 0; _i <= 5; _i++) {
context.strokeStyle = randomColor();
context.beginPath();
context.moveTo(Math.random() * canvasWidth, Math.random() * canvasHeight);
context.lineTo(Math.random() * canvasWidth, Math.random() * canvasHeight);
context.stroke();
}
for (var _i2 = 0; _i2 < 30; _i2++) {
context.strokeStyle = randomColor();
context.beginPath();
var _x = Math.random() * canvasWidth;
var _y = Math.random() * canvasHeight;
context.moveTo(_x, _y);
context.lineTo(_x + 1, _y + 1);
context.stroke();
}
return showNum.join('');
};
var Captcha = function Captcha(_ref) {

@@ -31,4 +78,2 @@ var boxWidth = _ref.boxWidth,

var canvasRef = (0, _react.useRef)();
var _useGenerateCaptcha = (0, _useGenerateCaptcha2["default"])(),
createCaptcha = _useGenerateCaptcha.createCaptcha;
var _useState = (0, _react.useState)(''),

@@ -35,0 +80,0 @@ _useState2 = _slicedToArray(_useState, 2),

8

package.json
{
"name": "react-canvas-captcha",
"version": "1.0.1",
"version": "1.0.2",
"description": "Add captcha to your react projects",

@@ -11,3 +11,3 @@ "main": "dist/index.js",

"type": "git",
"url": "git+https://github.com/kumbhar-ketan/react-captcha.git"
"url": "git+https://github.com/kumbhar-ketan/react-canvas-captcha.git"
},

@@ -27,5 +27,5 @@ "keywords": [

"bugs": {
"url": "https://github.com/kumbhar-ketan/react-captcha/issues"
"url": "https://github.com/kumbhar-ketan/react-canvas-captcha/issues"
},
"homepage": "https://github.com/kumbhar-ketan/react-captcha#readme",
"homepage": "https://github.com/kumbhar-ketan/react-canvas-captcha#readme",
"peerDependencies": {

@@ -32,0 +32,0 @@ "react": "^18.2.0",

import { useEffect, useRef, useState } from "react";
import useGenerateCaptcha from "./useGenerateCaptcha";
const randomColor = () => {
let r = Math.floor(Math.random()*256);
let g = Math.floor(Math.random()*256);
let b = Math.floor(Math.random()*256);
return 'rgb(' + r + ',' + g + ',' + b + ')';
};
const createCaptcha = (canvas, config) => {
let showNum = [];
let canvasWidth = config?.boxWidth;
let canvasHeight = config.boxHeight;
let context = canvas.getContext('2d');
canvas.width = canvasWidth;
canvas.height = canvasHeight;
let sCode = 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9';
let saCode = sCode.split(',');
let saCodeLen = saCode.length;
for (let i = 0; i < config?.numberOfChars; i++) {
let sIndex = Math.floor(Math.random()*saCodeLen);
let sDeg = (Math.random()*30*Math.PI) / 180;
let cTxt = saCode[sIndex];
showNum[i] = cTxt.toLowerCase();
let x = 10 + i*20;
let y = 20 + Math.random()*8;
context.font = config?.font;
context.translate(x, y);
context.rotate(sDeg);
context.fillStyle = randomColor();
context.fillText(cTxt, config?.textStartingX, config?.textStartingY);
context.rotate(-sDeg);
context.translate(-x, -y);
}
for (let i = 0; i <= 5; i++) {
context.strokeStyle = randomColor();
context.beginPath();
context.moveTo(
Math.random() * canvasWidth,
Math.random() * canvasHeight
);
context.lineTo(
Math.random() * canvasWidth,
Math.random() * canvasHeight
);
context.stroke();
}
for (let i = 0; i < 30; i++) {
context.strokeStyle = randomColor();
context.beginPath();
let x = Math.random() * canvasWidth;
let y = Math.random() * canvasHeight;
context.moveTo(x,y);
context.lineTo(x+1, y+1);
context.stroke();
}
return showNum.join('');
};
const Captcha = ({ boxWidth, boxHeight, captchaConfig, setCode }) => {
const canvasRef = useRef();
const { createCaptcha } = useGenerateCaptcha();
const [captchaCode, setCaptchaCode] = useState('');

@@ -8,0 +65,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc