"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TARGET_ID_MAP = exports.RUNTIME_CHUNK_NAME = exports.MODULE_PATH_REGEX = exports.NODE_MODULES_REGEX = exports.GLOBAL_CSS_REGEX = exports.CSS_MODULES_REGEX = exports.STYLUS_REGEX = exports.SASS_REGEX = exports.LESS_REGEX = exports.CSS_REGEX = exports.SVG_REGEX = exports.TS_REGEX = exports.JS_REGEX = exports.MEDIA_EXTENSIONS = exports.IMAGE_EXTENSIONS = exports.FONT_EXTENSIONS = exports.MEDIA_DIST_DIR = exports.IMAGE_DIST_DIR = exports.WASM_DIST_DIR = exports.FONT_DIST_DIR = exports.SVG_DIST_DIR = exports.CSS_DIST_DIR = exports.JS_DIST_DIR = exports.SERVER_WORKER_DIST_DIR = exports.SERVER_DIST_DIR = exports.HTML_DIST_DIR = exports.ROOT_DIST_DIR = exports.DEFAULT_BROWSERSLIST = exports.DEFAULT_MOUNT_ID = exports.DEFAULT_DATA_URL_SIZE = exports.DEFAULT_PORT = exports.WEBPACK_PROVIDER = exports.RSPACK_PROVIDER = void 0;
// PACKAGES
exports.RSPACK_PROVIDER = '@modern-js/builder-rspack-provider';
exports.WEBPACK_PROVIDER = '@modern-js/builder-webpack-provider';
// Defaults
exports.DEFAULT_PORT = 8080;
exports.DEFAULT_DATA_URL_SIZE = 10000;
exports.DEFAULT_MOUNT_ID = 'root';
exports.DEFAULT_BROWSERSLIST = {
    web: ['> 0.01%', 'not dead', 'not op_mini all'],
    node: ['node >= 14'],
    'web-worker': ['> 0.01%', 'not dead', 'not op_mini all'],
    'service-worker': ['> 0.01%', 'not dead', 'not op_mini all'],
    'modern-web': [
        'chrome >= 61',
        'edge >= 16',
        'firefox >= 60',
        'safari >= 11',
        'ios_saf >= 11',
    ],
};
// Paths
exports.ROOT_DIST_DIR = 'dist';
exports.HTML_DIST_DIR = 'html';
exports.SERVER_DIST_DIR = 'bundles';
exports.SERVER_WORKER_DIST_DIR = 'worker';
exports.JS_DIST_DIR = 'static/js';
exports.CSS_DIST_DIR = 'static/css';
exports.SVG_DIST_DIR = 'static/svg';
exports.FONT_DIST_DIR = 'static/font';
exports.WASM_DIST_DIR = 'static/wasm';
exports.IMAGE_DIST_DIR = 'static/image';
exports.MEDIA_DIST_DIR = 'static/media';
// Extensions
exports.FONT_EXTENSIONS = ['woff', 'woff2', 'eot', 'ttf', 'otf', 'ttc'];
exports.IMAGE_EXTENSIONS = [
    'png',
    'jpg',
    'jpeg',
    'gif',
    'bmp',
    'webp',
    'ico',
    'apng',
    'avif',
    'tiff',
];
exports.MEDIA_EXTENSIONS = [
    'mp4',
    'webm',
    'ogg',
    'mp3',
    'wav',
    'flac',
    'aac',
    'mov',
];
// RegExp
exports.JS_REGEX = /\.(js|mjs|cjs|jsx)$/;
exports.TS_REGEX = /\.(ts|mts|cts|tsx)$/;
exports.SVG_REGEX = /\.svg$/;
exports.CSS_REGEX = /\.css$/;
exports.LESS_REGEX = /\.less$/;
exports.SASS_REGEX = /\.s(a|c)ss$/;
exports.STYLUS_REGEX = /\.styl$/;
exports.CSS_MODULES_REGEX = /\.module\.\w+$/i;
exports.GLOBAL_CSS_REGEX = /\.global\.\w+$/;
exports.NODE_MODULES_REGEX = /[\\/]node_modules[\\/]/;
exports.MODULE_PATH_REGEX = /[\\/]node_modules[\\/](\.pnpm[\\/])?(?:(@[^[\\/]+)(?:[\\/]))?([^\\/]+)/;
exports.RUNTIME_CHUNK_NAME = 'builder-runtime';
exports.TARGET_ID_MAP = {
    web: 'Client',
    node: 'Server',
    'service-worker': 'Server Worker',
    'modern-web': 'Modern',
    'web-worker': 'Web Worker',
};
