astx
Version:
super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring
27 lines (25 loc) • 3.02 kB
JavaScript
import chalk from 'chalk'
const frames = [
chalk`{bold } ASTX `,
chalk`{bold ▰} ASTX `,
chalk`{bold ▰▰} ASTX `,
chalk`{bold ▰▰▰} ASTX `,
chalk` {bold ▰▰▰} ASTX `,
chalk` {bold ▰▰▰}ASTX `,
chalk` {bold ▰▰A}STX `,
chalk` {bold ▰AS}TX `,
chalk` {bold AST}X `,
chalk` A{bold STX} `,
chalk` AS{bold TX▰} `,
chalk` AST{bold X▰▰} `,
chalk` ASTX{bold ▰▰▰} `,
chalk` ASTX {bold ▰▰▰} `,
chalk` ASTX {bold ▰▰▰}`,
chalk` ASTX {bold ▰▰}`,
chalk` ASTX {bold ▰}`,
]
let start
export function spinner() {
if (start == null) start = Date.now()
return frames[Math.floor((Date.now() - start) / 120) % frames.length]
} //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjaGFsayIsImZyYW1lcyIsInN0YXJ0Iiwic3Bpbm5lciIsIkRhdGUiLCJub3ciLCJNYXRoIiwiZmxvb3IiLCJsZW5ndGgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL3NwaW5uZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNoYWxrIGZyb20gJ2NoYWxrJ1xuXG5jb25zdCBmcmFtZXMgPSBbXG4gIGNoYWxrYHtib2xkIH0gICAgIEFTVFggICAgIGAsXG4gIGNoYWxrYHtib2xkIOKWsH0gICAgQVNUWCAgICAgYCxcbiAgY2hhbGtge2JvbGQg4paw4pawfSAgIEFTVFggICAgIGAsXG4gIGNoYWxrYHtib2xkIOKWsOKWsOKWsH0gIEFTVFggICAgIGAsXG4gIGNoYWxrYCB7Ym9sZCDilrDilrDilrB9IEFTVFggICAgIGAsXG4gIGNoYWxrYCAge2JvbGQg4paw4paw4pawfUFTVFggICAgIGAsXG4gIGNoYWxrYCAgIHtib2xkIOKWsOKWsEF9U1RYICAgICBgLFxuICBjaGFsa2AgICAge2JvbGQg4pawQVN9VFggICAgIGAsXG4gIGNoYWxrYCAgICAge2JvbGQgQVNUfVggICAgIGAsXG4gIGNoYWxrYCAgICAgQXtib2xkIFNUWH0gICAgIGAsXG4gIGNoYWxrYCAgICAgQVN7Ym9sZCBUWOKWsH0gICAgYCxcbiAgY2hhbGtgICAgICBBU1R7Ym9sZCBY4paw4pawfSAgIGAsXG4gIGNoYWxrYCAgICAgQVNUWHtib2xkIOKWsOKWsOKWsH0gIGAsXG4gIGNoYWxrYCAgICAgQVNUWCB7Ym9sZCDilrDilrDilrB9IGAsXG4gIGNoYWxrYCAgICAgQVNUWCAge2JvbGQg4paw4paw4pawfWAsXG4gIGNoYWxrYCAgICAgQVNUWCAgIHtib2xkIOKWsOKWsH1gLFxuICBjaGFsa2AgICAgIEFTVFggICAge2JvbGQg4pawfWAsXG5dXG5cbmxldCBzdGFydDogbnVtYmVyIHwgdW5kZWZpbmVkXG5cbmV4cG9ydCBmdW5jdGlvbiBzcGlubmVyKCk6IHN0cmluZyB7XG4gIGlmIChzdGFydCA9PSBudWxsKSBzdGFydCA9IERhdGUubm93KClcbiAgcmV0dXJuIGZyYW1lc1tNYXRoLmZsb29yKChEYXRlLm5vdygpIC0gc3RhcnQpIC8gMTIwKSAlIGZyYW1lcy5sZW5ndGhdXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLEtBQVAsTUFBa0IsT0FBbEI7O0FBRUEsTUFBTUMsTUFBTSxHQUFHO0FBQ2JELEtBQU0sdUJBRE87QUFFYkEsS0FBTSx1QkFGTztBQUdiQSxLQUFNLHVCQUhPO0FBSWJBLEtBQU0sdUJBSk87QUFLYkEsS0FBTSx1QkFMTztBQU1iQSxLQUFNLHVCQU5PO0FBT2JBLEtBQU0sdUJBUE87QUFRYkEsS0FBTSx1QkFSTztBQVNiQSxLQUFNLHVCQVRPO0FBVWJBLEtBQU0sdUJBVk87QUFXYkEsS0FBTSx1QkFYTztBQVliQSxLQUFNLHVCQVpPO0FBYWJBLEtBQU0sdUJBYk87QUFjYkEsS0FBTSx1QkFkTztBQWViQSxLQUFNLHVCQWZPO0FBZ0JiQSxLQUFNLHVCQWhCTztBQWlCYkEsS0FBTSx1QkFqQk8sQ0FBZjs7O0FBb0JBLElBQUlFLEtBQUo7O0FBRUEsT0FBTyxTQUFTQyxPQUFULEdBQTJCO0VBQ2hDLElBQUlELEtBQUssSUFBSSxJQUFiLEVBQW1CQSxLQUFLLEdBQUdFLElBQUksQ0FBQ0MsR0FBTCxFQUFSO0VBQ25CLE9BQU9KLE1BQU0sQ0FBQ0ssSUFBSSxDQUFDQyxLQUFMLENBQVcsQ0FBQ0gsSUFBSSxDQUFDQyxHQUFMLEtBQWFILEtBQWQsSUFBdUIsR0FBbEMsSUFBeUNELE1BQU0sQ0FBQ08sTUFBakQsQ0FBYjtBQUNEIn0=