27 lines
760 B
TypeScript
27 lines
760 B
TypeScript
/*
|
|
* Copyright (C) SapphireCode - All Rights Reserved
|
|
* This file is part of Snippeteer which is released under BSD-3-Clause.
|
|
* See file 'LICENSE' for full license details.
|
|
* Created by Timo Hocker <timo@scode.ovh>, April 2020
|
|
*/
|
|
|
|
import path from 'path';
|
|
import fs from 'fs-extra';
|
|
import { AutoComplete } from 'enquirer';
|
|
import { Snippet } from './Snippet';
|
|
|
|
(async (): Promise<void> => {
|
|
const snippets = await fs.readdir (path.join (__dirname, 'snippets'));
|
|
const snippet = await new AutoComplete (
|
|
{
|
|
name: 'snippet',
|
|
message: 'choose a snippet',
|
|
choices: snippets
|
|
}
|
|
)
|
|
.run ();
|
|
const runner
|
|
= new (await import (`./snippets/${snippet}/index.js`)).default as Snippet;
|
|
runner.start (process.cwd ());
|
|
}) ();
|