HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-172-31-4-197 6.8.0-1036-aws #38~22.04.1-Ubuntu SMP Fri Aug 22 15:44:33 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/api-storage/node_modules/@swc/cli/lib/spack/options.js
"use strict";
Object.defineProperty(exports, "__esModule", {
    value: true
});
Object.defineProperty(exports, "default", {
    enumerable: true,
    get: function() {
        return parseSpackArgs;
    }
});
const _core = require("@swc/core");
const _spack = require("@swc/core/spack");
const _commander = /*#__PURE__*/ _interop_require_default(require("commander"));
const _path = /*#__PURE__*/ _interop_require_wildcard(require("path"));
function _interop_require_default(obj) {
    return obj && obj.__esModule ? obj : {
        default: obj
    };
}
function _getRequireWildcardCache(nodeInterop) {
    if (typeof WeakMap !== "function") return null;
    var cacheBabelInterop = new WeakMap();
    var cacheNodeInterop = new WeakMap();
    return (_getRequireWildcardCache = function(nodeInterop) {
        return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
    })(nodeInterop);
}
function _interop_require_wildcard(obj, nodeInterop) {
    if (!nodeInterop && obj && obj.__esModule) {
        return obj;
    }
    if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
        return {
            default: obj
        };
    }
    var cache = _getRequireWildcardCache(nodeInterop);
    if (cache && cache.has(obj)) {
        return cache.get(obj);
    }
    var newObj = {
        __proto__: null
    };
    var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
    for(var key in obj){
        if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
            var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
            if (desc && (desc.get || desc.set)) {
                Object.defineProperty(newObj, key, desc);
            } else {
                newObj[key] = obj[key];
            }
        }
    }
    newObj.default = obj;
    if (cache) {
        cache.set(obj, newObj);
    }
    return newObj;
}
const pkg = require("../../package.json");
const program = new _commander.default.Command();
program.option("--config [path]", "Path to a spack.config.js file to use.");
// TODO: allow using ts. See: https://github.com/swc-project/swc/issues/841
program.option("--mode <development | production | none>", "Mode to use");
program.option("--target [browser | node]", "Target runtime environment");
program.option("--context [path]", `The base directory (absolute path!) for resolving the 'entry'` + ` option. If 'output.pathinfo' is set, the included pathinfo is shortened to this directory`, "The current directory");
program.option("--entry [list]", "List of entries", collect);
// program.option('-W --watch', `Enter watch mode, which rebuilds on file change.`)
program.option("--debug", `Switch loaders to debug mode`);
// program.option('--devtool', `Select a developer tool to enhance debugging.`)
// -d           shortcut for --debug --devtool eval-cheap-module-source-map
//              --output-pathinfo                                          [여부]
// -p           shortcut for --optimize-minimize --define
//              process.env.NODE_ENV="production"                          [여부]
// Module options:
// --module-bind       Bind an extension to a loader                     [문자열]
// --module-bind-post  Bind an extension to a post loader                [문자열]
// --module-bind-pre   Bind an extension to a pre loader                 [문자열]
// Output options:
program.option("-o --output", `The output path and file for compilation assets`);
program.option("--output-path", `The output directory as **absolute path**`);
//   --output-filename             Specifies the name of each output file on disk.
//                                 You must **not** specify an absolute path here!
//                                 The `output.path` option determines the location
//                                 on disk the files are written to, filename is
//                                 used solely for naming the individual files.
//                                                    [string] [default: [name].js]
//   --output-chunk-filename       The filename of non-entry chunks as relative
//                                 path inside the `output.path` directory.
//        [string] [default: filename with [id] instead of [name] or [id] prefixed]
//   --output-source-map-filename  The filename of the SourceMaps for the
//                                 JavaScript files. They are inside the
//                                 `output.path` directory.                [string]
//   --output-public-path          The `publicPath` specifies the public URL
//                                 address of the output files when referenced in a
//                                 browser.                                [string]
//   --output-jsonp-function       The JSONP function used by webpack for async
//                                 loading of chunks.                      [string]
//   --output-pathinfo             Include comments with information about the
//                                 modules.                               [boolean]
//   --output-library              Expose the exports of the entry point as library
//                                                                          [array]
//   --output-library-target       Type of library
//          [string] [choices: "var", "assign", "this", "window", "self", "global",
//       "commonjs", "commonjs2", "commonjs-module", "amd", "umd", "umd2", "jsonp"]
// Advanced options:
//   --records-input-path       Store compiler state to a json file.       [string]
//   --records-output-path      Load compiler state from a json file.      [string]
//   --records-path             Store/Load compiler state from/to a json file. This
//                              will result in persistent ids of modules and
//                              chunks. An absolute path is expected. `recordsPath`
//                              is used for `recordsInputPath` and
//                              `recordsOutputPath` if they left undefined.[string]
//   --define                   Define any free var in the bundle          [string]
//   --target                   Environment to build for                   [string]
//   --cache                    Cache generated modules and chunks to improve
//                              performance for multiple incremental builds.
//                       [boolean] [default: It's enabled by default when watching]
//   --watch-stdin, --stdin     Stop watching when stdin stream has ended [boolean]
//   --watch-aggregate-timeout  Delay the rebuilt after the first change. Value is
//                              a time in ms.                              [number]
//   --watch-poll               Enable polling mode for watching           [string]
//   --hot                      Enables Hot Module Replacement            [boolean]
//   --prefetch                 Prefetch this request (Example: --prefetch
//                              ./file.js)                                 [string]
//   --provide                  Provide these modules as free vars in all modules
//                              (Example: --provide jQuery=jquery)         [string]
//   --labeled-modules          Enables labeled modules                   [boolean]
//   --plugin                   Load this plugin                           [string]
//   --bail                     Report the first error as a hard error instead of
//                              tolerating it.            [boolean] [default: null]
//   --profile                  Capture timing information for each module.
//                                                        [boolean] [default: null]
// Resolving options:
//   --resolve-alias         Redirect module requests                      [string]
//   --resolve-extensions    Redirect module requests                       [array]
//   --resolve-loader-alias  Setup a loader alias for resolving            [string]
// Optimizing options:
//   --optimize-max-chunks      Try to keep the chunk count below a limit
//   --optimize-min-chunk-size  Minimal size for the created chunk
//   --optimize-minimize        Enable minimizing the output. Uses
//                              optimization.minimizer.                   [boolean]
// Stats options:
//   --color, --colors               Force colors on the console
//                                            [boolean] [default: (supports-color)]
//   --no-color, --no-colors         Force no colors on the console       [boolean]
//   --sort-modules-by               Sorts the modules list by property in module
//                                                                         [string]
//   --sort-chunks-by                Sorts the chunks list by property in chunk
//                                                                         [string]
//   --sort-assets-by                Sorts the assets list by property in asset
//                                                                         [string]
//   --hide-modules                  Hides info about modules             [boolean]
//   --display-exclude               Exclude modules in the output         [string]
//   --display-modules               Display even excluded modules in the output
//                                                                        [boolean]
//   --display-max-modules           Sets the maximum number of visible modules in
//                                   output                                [number]
//   --display-chunks                Display chunks in the output         [boolean]
//   --display-entrypoints           Display entry points in the output   [boolean]
//   --display-origins               Display origins of chunks in the output
//                                                                        [boolean]
//   --display-cached                Display also cached modules in the output
//                                                                        [boolean]
//   --display-cached-assets         Display also cached assets in the output
//                                                                        [boolean]
//   --display-reasons               Display reasons about module inclusion in the
//                                   output                               [boolean]
//   --display-depth                 Display distance from entry point for each
//                                   module                               [boolean]
//   --display-used-exports          Display information about used exports in
//                                   modules (Tree Shaking)               [boolean]
//   --display-provided-exports      Display information about exports provided
//                                   from modules                         [boolean]
//   --display-optimization-bailout  Display information about why optimization
//                                   bailed out for modules               [boolean]
//   --display-error-details         Display details about errors         [boolean]
//   --display                       Select display preset
//               [string] [choices: "", "verbose", "detailed", "normal", "minimal",
//                                                           "errors-only", "none"]
//   --verbose                       Show more details                    [boolean]
//   --info-verbosity                Controls the output of lifecycle messaging
//                                   e.g. Started watching files...
//                  [string] [choices: "none", "info", "verbose"] [default: "info"]
//   --build-delimiter               Display custom text after build output[string]
// Options:
//   --silent       Prevent output from being displayed in stdout         [boolean]
//   --json, -j     Prints the result as JSON.                            [boolean]
program.version(`@swc/cli: ${pkg.version}
@swc/core: ${_core.version}`);
async function parseSpackArgs(args) {
    //
    const cmd = program.parse(args);
    const opts = cmd.opts();
    const cliOptions = {
        // watch: !!opts.watch,
        debug: !!opts.debug
    };
    var _opts_config;
    const configOpts = await (0, _spack.compileBundleOptions)((_opts_config = opts.config) !== null && _opts_config !== void 0 ? _opts_config : _path.resolve("spack.config.js"));
    if (opts.entry) {
        configOpts.entry = opts.entry;
    }
    if (opts.mode) {
        configOpts.mode = opts.mode;
    }
    if (opts.target) {
        configOpts.target = opts.target;
    }
    if (!configOpts.output) {
        configOpts.output = {};
    }
    if (!configOpts.output.path) {
        var _opts_outputPath;
        configOpts.output.path = (_opts_outputPath = opts.outputPath) !== null && _opts_outputPath !== void 0 ? _opts_outputPath : "[name].js";
    }
    if (!configOpts.output.name) {
        var _opts_output;
        configOpts.output.name = (_opts_output = opts.output) !== null && _opts_output !== void 0 ? _opts_output : "[name].js";
    }
    // if (!configOpts.output.name) {
    //     configOpts.output.path = opts.outputPath;
    // }
    return {
        cliOptions,
        spackOptions: {
            ...configOpts
        }
    };
}
function collect(value, previousValue) {
    // If the user passed the option with no value, like "babel file.js --presets", do nothing.
    if (typeof value !== "string") return previousValue;
    const values = value.split(",");
    return previousValue ? previousValue.concat(values) : values;
}

//# sourceMappingURL=options.js.map