UNPKG

3.11 kBJavaScriptView Raw
1"use strict";
2var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3 if (k2 === undefined) k2 = k;
4 Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5}) : (function(o, m, k, k2) {
6 if (k2 === undefined) k2 = k;
7 o[k2] = m[k];
8}));
9var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10 Object.defineProperty(o, "default", { enumerable: true, value: v });
11}) : function(o, v) {
12 o["default"] = v;
13});
14var __importStar = (this && this.__importStar) || function (mod) {
15 if (mod && mod.__esModule) return mod;
16 var result = {};
17 if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18 __setModuleDefault(result, mod);
19 return result;
20};
21var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23 return new (P || (P = Promise))(function (resolve, reject) {
24 function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25 function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27 step((generator = generator.apply(thisArg, _arguments || [])).next());
28 });
29};
30Object.defineProperty(exports, "__esModule", { value: true });
31exports.config = exports.compileBundleOptions = void 0;
32const path = __importStar(require("path"));
33function compileBundleOptions(config) {
34 return __awaiter(this, void 0, void 0, function* () {
35 const f = config === undefined ? '.' : config;
36 try {
37 const file = typeof f === 'string' ? f : path.resolve('spack.config.js');
38 let configFromFile = require(file);
39 if (configFromFile.default) {
40 configFromFile = configFromFile.default;
41 }
42 if (Array.isArray(configFromFile)) {
43 if (Array.isArray(f)) {
44 return [...configFromFile, ...f];
45 }
46 if (typeof f !== 'string') {
47 configFromFile.push(f);
48 }
49 return configFromFile;
50 }
51 return Object.assign({}, configFromFile, config);
52 }
53 catch (e) {
54 if (typeof f === 'string') {
55 throw new Error(`Error occurred while loading config file at ${config}: ${e}`);
56 }
57 return f;
58 }
59 });
60}
61exports.compileBundleOptions = compileBundleOptions;
62/**
63 * Usage: In `spack.config.js` / `spack.config.ts`, you can utilize type annotations (to get autocompletions) like
64 *
65 * ```ts
66 * import { config } from '@swc/core/spack';
67 *
68 * export default config({
69 * name: 'web',
70 * });
71 * ```
72 *
73 *
74 *
75 */
76function config(c) {
77 return c;
78}
79exports.config = config;