403Webshell
Server IP : 46.62.235.243  /  Your IP : 216.73.216.163
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux Linkabili3Dicembre 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.1.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/share/doc/node-chalk/examples/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/doc/node-chalk/examples/rainbow.js
import convertColor from 'color-convert';
import updateLog from 'log-update';
import delay from 'yoctodelay';
import chalk from '../source/index.js';

const ignoreChars = /[^!-~]/g;

function rainbow(string, offset) {
	if (!string || string.length === 0) {
		return string;
	}

	const hueStep = 360 / string.replace(ignoreChars, '').length;

	let hue = offset % 360;
	const characters = [];
	for (const character of string) {
		if (ignoreChars.test(character)) {
			characters.push(character);
		} else {
			characters.push(chalk.hex(convertColor.hsl.hex(hue, 100, 50))(character));
			hue = (hue + hueStep) % 360;
		}
	}

	return characters.join('');
}

async function animateString(string) {
	for (let index = 0; index < 360 * 5; index++) {
		updateLog(rainbow(string, index));
		await delay(2); // eslint-disable-line no-await-in-loop
	}
}

console.log();
await animateString('We hope you enjoy Chalk! <3');
console.log();

Youez - 2016 - github.com/yon3zu
LinuXploit