This package has been deprecated

Author message:

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

electron-discordloginapi
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

Electron-DiscordLoginAPI

Obtain discord user token with an electron login page

Install

Dependencies:

  • electron (obviously)

Installation:

npm install electron-discordloginapi

Node Usage

The application must run in an Electron process

Import lib

const LoginApi = require('electron-discordloginapi');

Start the login

LoginApi.startLogin();

Add event listeners

LoginApi.setCancelListener(() => {
	//when the user manualy close the login page
	console.log('login cancelled!');
});
LoginApi.setLoginFailListener(result => {
	//when the user enter wrong password/username or need captcha verification/2fa etc...
	console.log('login failed!', result);
});
LoginApi.setLoginSuccessListener(result => {
	//when the login is complete
	console.log('login succed! token: ', result.token);
});
LoginApi.setCloseListener(() => {
	//when the page is closed by the user or after clogin complete
	console.log('page closed!');
});

Remove event listeners

LoginApi.removeCancelListener(cancelListener);
LoginApi.removeLoginFailListener(loginFailListener);
LoginApi.removeLoginSuccessListener(loginSuccessListener);
LoginApi.removeCloseListener(closeListener);

LoginApi.removeAllCancelListeners();
LoginApi.removeAllLoginFailListeners();
LoginApi.removeAllLoginSuccessListeners();
LoginApi.removeAllCloseListeners();

Screenshots

screenshot

Types

interface error {
	code: number;
	errors?: Map<string, { _errors: Array<error> }>;
	message: string;
}

interface failResult extends error {}

interface loginResult {
	token: string;
	user_settings: {
		locale: string;
		theme: 'light' | 'dark';
	};
}

export function startLogin(): void;
export function cancel(): void;
export function close(): void;

export function setCancelListener(cancelListener: () => void): void;
export function removeCancelListener(cancelListener: () => void): void;
export function removeAllCancelListeners(): void;

export function setLoginFailListener(
	loginFailListener: (result: failResult) => void
): void;
export function removeLoginFailListener(
	loginFailListener: (result: failResult) => void
): void;
export function removeAllLoginFailListeners(): void;

export function setLoginSuccessListener(
	loginSuccessListener: (result: loginResult) => void
): void;
export function removeLoginSuccessListener(
	loginSuccessListener: (result: loginResult) => void
): void;
export function removeAllLoginSuccessListeners(): void;

export function setCloseListener(closeListener: () => void): void;
export function removeCloseListener(closeListener: () => void): void;
export function removeAllCloseListeners(): void;

export const cancelListeners: Array<() => void>;
export const loginFailListeners: Array<(result: failResult) => void>;
export const loginSuccessListeners: Array<(result: loginResult) => void>;
export const closeListeners: Array<() => void>;

Package Sidebar

Install

npm i electron-discordloginapi

Weekly Downloads

2

Version

1.0.3

License

Apache License 2.0

Unpacked Size

293 kB

Total Files

11

Last publish

Collaborators

  • burngemios3643