0.0.46 • Published 2 months ago

@ashiknesin/helpers v0.0.46

Weekly downloads
-
License
MIT
Repository
github
Last release
2 months ago

AshikNesin's Helpers

This library provides a set of functions to simplify common tasks related to solving captchas, working with AWS services, managing files, and interacting with the Supabase storage. It leverages popular libraries like Axios, Pino, P-Retry, and others to ensure efficient and reliable functionality.

Functions

Captcha Solving

solveCaptcha

async solveCaptcha({
  type: string,             // Optional. Default is "image-to-text"
  base64Image: string,      // Base64-encoded image data
  imageUrl: string,         // URL of the image
  apiKey: string,           // 2Captcha API Key
  waitUntilResponse: bool    // Optional. Default is true
})

Solves a captcha using the 2Captcha service.

AWS

AWS Parameter Store

class paramStore {
  async getParameter(name: string, options?: any): Promise<{ data: string, error: Error }>
  async getParameters(names: string[], options?: any): Promise<{ data: { [name: string]: string }, error: Error }>
  async getManyByPath(path: string, options?: any): Promise<{ data: { [name: string]: string }, error: Error }>
  async get(param: string | string[], options?: any): Promise<{ data: any, error: Error }>
  async set(name: string, value: string): Promise<{ data: any, error: Error }>
}

Provides a convenient interface to interact with AWS Systems Manager Parameter Store.

dynamoDB

class dynamoDB {
  // AWS DynamoDB Document Client instance
}

s3

class s3 {
  async upload(key: string, body: any, options?: any): Promise<{ data: { filePath: string }, error: Error }>
  async download(key: string, destination: string): Promise<{ data: { filePath: string }, error: Error }>
  async remove(keys: string[]): Promise<{ data: { filePaths: string[] }, error: Error }>
  async createSignedUrl(key: string, expiresIn: number): Promise<{ data: { signedUrl: string }, error: Error }>
}

Provides utility functions for interacting with AWS S3.

File Management

zipDirectory

async zipDirectory(inputDirectory: string, outputZipPath: string): Promise<void>

Zips a directory into a specified zip file.

unzipDirectory

async unzipDirectory(inputZipPath: string, outputDirectory: string): Promise<void>

Unzips a zip file into a specified directory.

Supabase

supabaseAdmin

const supabaseAdmin = createClient({
  url: string,
  key: string
})

Creates an instance of the Supabase client for administrative purposes.

supabaseUploadFile

async supabaseUploadFile(bucket: string, filePath: string, fileData: any): Promise<void>

Uploads a file to the Supabase storage.

supabaseDownloadFile

async supabaseDownloadFile(bucket: string, filePath: string, destination: string): Promise<void>

Downloads a file from the Supabase storage.

Usage

import {
  solveCaptcha,
  paramStore,
  dynamoDB,
  s3,
  zipDirectory,
  unzipDirectory,
  supabaseAdmin,
  supabaseUploadFile,
  supabaseDownloadFile
} from 'captcha-solver';

// Example usage
const captchaResult = await solveCaptcha({
  base64Image: 'base64EncodedImageData',
  apiKey: 'your2CaptchaApiKey'
});

const paramValue = await paramStore.getParameter('parameterName');
const s3SignedUrl = await s3.createSignedUrl('objectKey', 3600);

// ... (other examples)

Deps

License

This library is released under the MIT License.

0.0.46

2 months ago

0.0.40

2 months ago

0.0.41

2 months ago

0.0.42

2 months ago

0.0.43

2 months ago

0.0.44

2 months ago

0.0.45

2 months ago

0.0.37

2 months ago

0.0.38

2 months ago

0.0.39

2 months ago

0.0.32

2 months ago

0.0.34

2 months ago

0.0.35

2 months ago

0.0.36

2 months ago

0.0.31

3 months ago

0.0.20

4 months ago

0.0.21

4 months ago

0.0.22

4 months ago

0.0.23

4 months ago

0.0.24

4 months ago

0.0.25

4 months ago

0.0.15

4 months ago

0.0.16

4 months ago

0.0.17

4 months ago

0.0.18

4 months ago

0.0.19

4 months ago

0.0.30

4 months ago

0.0.26

4 months ago

0.0.27

4 months ago

0.0.28

4 months ago

0.0.29

4 months ago

0.0.10

4 months ago

0.0.12

4 months ago

0.0.13

4 months ago

0.0.14

4 months ago

0.0.8

4 months ago

0.0.5

4 months ago

0.0.7

4 months ago

0.0.6

4 months ago

0.0.4

7 months ago

0.0.3

7 months ago

0.0.2

7 months ago

0.0.1

7 months ago