| 1 | "use strict";
|
|---|
| 2 |
|
|---|
| 3 | exports.__esModule = true;
|
|---|
| 4 | exports.default = void 0;
|
|---|
| 5 |
|
|---|
| 6 | var _state = require("./state");
|
|---|
| 7 |
|
|---|
| 8 | var _config = require("./config");
|
|---|
| 9 |
|
|---|
| 10 | var _plugins = require("./plugins");
|
|---|
| 11 |
|
|---|
| 12 | function run(code, config, state) {
|
|---|
| 13 | const expandedState = (0, _state.expandState)(state);
|
|---|
| 14 | const plugins = (0, _plugins.getPlugins)(config, state).map(_plugins.resolvePlugin);
|
|---|
| 15 | let nextCode = String(code).replace('\0', ''); // eslint-disable-next-line no-restricted-syntax
|
|---|
| 16 |
|
|---|
| 17 | for (const plugin of plugins) {
|
|---|
| 18 | nextCode = plugin(nextCode, config, expandedState);
|
|---|
| 19 | }
|
|---|
| 20 |
|
|---|
| 21 | return nextCode;
|
|---|
| 22 | }
|
|---|
| 23 |
|
|---|
| 24 | async function convert(code, config = {}, state = {}) {
|
|---|
| 25 | config = await (0, _config.loadConfig)(config, state);
|
|---|
| 26 | return run(code, config, state);
|
|---|
| 27 | }
|
|---|
| 28 |
|
|---|
| 29 | convert.sync = (code, config = {}, state = {}) => {
|
|---|
| 30 | config = _config.loadConfig.sync(config, state);
|
|---|
| 31 | return run(code, config, state);
|
|---|
| 32 | };
|
|---|
| 33 |
|
|---|
| 34 | var _default = convert;
|
|---|
| 35 | exports.default = _default; |
|---|