UNPKG

f2e-server3

Version:

f2e-server 3.0

82 lines (81 loc) 2.83 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const __1 = require(".."); const apps_1 = require("./apps"); const node_path_1 = __importDefault(require("node:path")); const command = new __1.Command('f2e-server3') .option('-m, --mode <mode>', 'server mode: dev, build or prod', 'dev', __1.ModeOptions) .option('-g, --gzip <gzip>', 'enable gzip', true) .option('-r, --root <root>', 'root', process.cwd()) .option('-l, --level <level>', 'log level: DEBUG, INFO, LOG, WARN, ERROR', 'DEBUG', __1.LogLevelOptions) .action(async (options) => { const { mode, gzip, level, root } = options; __1.logger.setLevel(level); let i = 0; (0, __1.createServer)({ root, mode, gzip, ssl: { passphrase: 'x509', key_file_name: node_path_1.default.join(root, './test/ssl/private.pem'), cert_file_name: node_path_1.default.join(root, './test/ssl/csr.crt'), }, mimeTypes: { 'ts': 'text/plain', 'hbs': 'text/plain', }, buildFilter: (pathname) => { return /^(src|templates|test($|\/index1?\.html|\/start)|README|package|$)/.test(pathname); }, outputFilter: (pathname) => { return /^(static|test($|\/index1?\.html|\/start)|README|package|$)/.test(pathname); }, watchFilter: (pathname) => { return /^(test|README|package|$)/.test(pathname); }, esbuild: { reg_inject: /\.html$/, }, less: { entryPoints: [{ in: 'test/app/app.less', out: 'static/app.css', }], }, postcss: { // 仅支持单个 entryPoints: { in: './test/main.css', out: 'static/main.css', }, plugins: [ require('@tailwindcss/postcss')({ optimize: mode === 'build', }), ], }, alias: { 'static/monokai-sublime.css': 'node_modules/highlight.js/styles/monokai-sublime.css', }, include: { entryPoints: ['test/app/pages/include.html'], recursive: true, }, try_files: 'test/index.html', auth: mode === 'build' ? false : { redirect: true, store: new __1.UserStore('.f2e_cache/auth.db'), }, middlewares: [ apps_1.app_base, apps_1.app_system, apps_1.app_marked, ], livereload: { reg_inject: /\.(html|md)$/, }, }); }); command.parse(process.argv);