presetter 3.5.5 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
 - package/README.md +3 -3
 - package/bin/cli.js +5 -0
 - package/bin/run-p.js +6 -0
 - package/bin/run-s.js +6 -0
 - package/bin/{run → run.js} +4 -2
 - package/lib/content.d.ts +1 -1
 - package/lib/content.js +58 -66
 - package/lib/directive.d.ts +3 -3
 - package/lib/directive.js +12 -17
 - package/lib/error.js +2 -6
 - package/lib/executable/entry.d.ts +1 -1
 - package/lib/executable/entry.js +57 -24
 - package/lib/executable/error.js +12 -19
 - package/lib/executable/index.js +5 -6
 - package/lib/index.d.ts +6 -6
 - package/lib/index.js +7 -23
 - package/lib/io.d.ts +7 -4
 - package/lib/io.js +53 -57
 - package/lib/package.d.ts +3 -5
 - package/lib/package.js +18 -31
 - package/lib/preset/content.d.ts +6 -0
 - package/lib/preset/content.js +13 -0
 - package/lib/preset/context.d.ts +2 -0
 - package/lib/preset/context.js +14 -0
 - package/lib/preset/graph.d.ts +4 -0
 - package/lib/preset/graph.js +20 -0
 - package/lib/preset/index.d.ts +3 -0
 - package/lib/preset/index.js +4 -0
 - package/lib/preset/mapping.d.ts +2 -0
 - package/lib/preset/mapping.js +15 -0
 - package/lib/preset/presetterRC.d.ts +5 -0
 - package/lib/preset/presetterRC.js +38 -0
 - package/lib/preset/scripts.d.ts +1 -0
 - package/lib/preset/scripts.js +10 -0
 - package/lib/preset/setup.d.ts +6 -0
 - package/lib/preset/setup.js +43 -0
 - package/lib/preset/unset.d.ts +1 -0
 - package/lib/preset/unset.js +14 -0
 - package/lib/resolution.d.ts +1 -1
 - package/lib/resolution.js +11 -17
 - package/lib/run.d.ts +5 -1
 - package/lib/run.js +68 -74
 - package/lib/scripts.d.ts +3 -3
 - package/lib/scripts.js +13 -15
 - package/lib/task.d.ts +8 -0
 - package/lib/task.js +37 -0
 - package/lib/template.d.ts +6 -6
 - package/lib/template.js +25 -35
 - package/lib/utilities/index.d.ts +1 -0
 - package/lib/utilities/index.js +2 -0
 - package/lib/utilities/mapValues.d.ts +1 -0
 - package/lib/utilities/mapValues.js +4 -0
 - package/package.json +35 -43
 - package/bin/cli +0 -3
 - package/lib/preset.d.ts +0 -15
 - package/lib/preset.js +0 -188
 - package/lib/types.d.ts +0 -73
 - package/lib/types.js +0 -3
 
    
        package/LICENSE
    ADDED
    
    | 
         @@ -0,0 +1,21 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            MIT License
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            Copyright (c) 2020 Alvis HT Tang
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            Permission is hereby granted, free of charge, to any person obtaining a copy
         
     | 
| 
      
 6 
     | 
    
         
            +
            of this software and associated documentation files (the "Software"), to deal
         
     | 
| 
      
 7 
     | 
    
         
            +
            in the Software without restriction, including without limitation the rights
         
     | 
| 
      
 8 
     | 
    
         
            +
            to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
         
     | 
| 
      
 9 
     | 
    
         
            +
            copies of the Software, and to permit persons to whom the Software is
         
     | 
| 
      
 10 
     | 
    
         
            +
            furnished to do so, subject to the following conditions:
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
            The above copyright notice and this permission notice shall be included in all
         
     | 
| 
      
 13 
     | 
    
         
            +
            copies or substantial portions of the Software.
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
            THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
         
     | 
| 
      
 16 
     | 
    
         
            +
            IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
         
     | 
| 
      
 17 
     | 
    
         
            +
            FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
         
     | 
| 
      
 18 
     | 
    
         
            +
            AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
         
     | 
| 
      
 19 
     | 
    
         
            +
            LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
         
     | 
| 
      
 20 
     | 
    
         
            +
            OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
         
     | 
| 
      
 21 
     | 
    
         
            +
            SOFTWARE.
         
     | 
    
        package/README.md
    CHANGED
    
    | 
         @@ -29,7 +29,7 @@ What's more, what if you want to update configs for all projects? :man_facepalmi 
     | 
|
| 
       29 
29 
     | 
    
         | 
| 
       30 
30 
     | 
    
         
             
            [**FULL DOCUMENTATION IS AVAILABLE HERE**](https://github.com/alvis/presetter/blob/master/README.md)
         
     | 
| 
       31 
31 
     | 
    
         | 
| 
       32 
     | 
    
         
            -
            1. Bootstrap your project with a preset (e.g. [presetter-preset- 
     | 
| 
      
 32 
     | 
    
         
            +
            1. Bootstrap your project with a preset (e.g. [presetter-preset-esm](https://github.com/alvis/presetter/tree/master/packages/preset-essentials))
         
     | 
| 
       33 
33 
     | 
    
         | 
| 
       34 
34 
     | 
    
         
             
            ```shell
         
     | 
| 
       35 
35 
     | 
    
         
             
            npx presetter use <preset package name>
         
     | 
| 
         @@ -135,11 +135,11 @@ Presetter support customization in two ways. 
     | 
|
| 
       135 
135 
     | 
    
         
             
            #### Preset Customization
         
     | 
| 
       136 
136 
     | 
    
         | 
| 
       137 
137 
     | 
    
         
             
            If your preset support customization, you can supply the customization parameter via the `config` field in `.presetterrc`.
         
     | 
| 
       138 
     | 
    
         
            -
            e.g. For [presetter-preset- 
     | 
| 
      
 138 
     | 
    
         
            +
            e.g. For [presetter-preset-esm](https://github.com/alvis/presetter/tree/master/packages/preset-essentials), you can adding an expression to `.gitignore` with the following in `.presetterrc`:
         
     | 
| 
       139 
139 
     | 
    
         | 
| 
       140 
140 
     | 
    
         
             
            ```json
         
     | 
| 
       141 
141 
     | 
    
         
             
            {
         
     | 
| 
       142 
     | 
    
         
            -
              "preset": "presetter-preset- 
     | 
| 
      
 142 
     | 
    
         
            +
              "preset": "presetter-preset-esm",
         
     | 
| 
       143 
143 
     | 
    
         
             
              "config": {
         
     | 
| 
       144 
144 
     | 
    
         
             
                "gitignore": ["<pattern to ignore>"]
         
     | 
| 
       145 
145 
     | 
    
         
             
              }
         
     | 
    
        package/bin/cli.js
    ADDED
    
    
    
        package/bin/run-p.js
    ADDED
    
    
    
        package/bin/run-s.js
    ADDED
    
    
    
        package/bin/{run → run.js}
    RENAMED
    
    | 
         @@ -1,4 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            #!/usr/bin/env node
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            import 'source-map-support/register.js';
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
       3 
5 
     | 
    
         
             
            process.argv = [...process.argv.slice(0, 2), 'run', ...process.argv.slice(2)];
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
      
 6 
     | 
    
         
            +
            await import('../lib/executable/index.js');
         
     | 
    
        package/lib/content.d.ts
    CHANGED
    
    | 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import type { Config, PresetContext, PresetGraph, PresetNode, PresetterConfig, ResolvedPresetContext, Template } from ' 
     | 
| 
      
 1 
     | 
    
         
            +
            import type { Config, PresetContext, PresetGraph, PresetNode, PresetterConfig, ResolvedPresetContext, Template } from 'presetter-types';
         
     | 
| 
       2 
2 
     | 
    
         
             
            export declare function resolveContext(_: {
         
     | 
| 
       3 
3 
     | 
    
         
             
                graph: PresetGraph;
         
     | 
| 
       4 
4 
     | 
    
         
             
                context: PresetContext;
         
     | 
    
        package/lib/content.js
    CHANGED
    
    | 
         @@ -1,124 +1,116 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            const resolution_1 = require("./resolution");
         
     | 
| 
       5 
     | 
    
         
            -
            const template_1 = require("./template");
         
     | 
| 
       6 
     | 
    
         
            -
            async function resolveContext(_) {
         
     | 
| 
      
 1 
     | 
    
         
            +
            import { getConfigKey, loadDynamic, loadDynamicMap } from './resolution.js';
         
     | 
| 
      
 2 
     | 
    
         
            +
            import { filter, merge, mergeTemplate, template } from './template.js';
         
     | 
| 
      
 3 
     | 
    
         
            +
            export async function resolveContext(_) {
         
     | 
| 
       7 
4 
     | 
    
         
             
                const { graph } = _;
         
     | 
| 
       8 
     | 
    
         
            -
                const context =  
     | 
| 
      
 5 
     | 
    
         
            +
                const context = {
         
     | 
| 
      
 6 
     | 
    
         
            +
                    ..._.context,
         
     | 
| 
      
 7 
     | 
    
         
            +
                    custom: {
         
     | 
| 
      
 8 
     | 
    
         
            +
                        ..._.context.custom,
         
     | 
| 
      
 9 
     | 
    
         
            +
                        variable: resolveVariable({ graph, config: _.context.custom }),
         
     | 
| 
      
 10 
     | 
    
         
            +
                    },
         
     | 
| 
      
 11 
     | 
    
         
            +
                };
         
     | 
| 
       9 
12 
     | 
    
         
             
                const config = await resolveSupplementaryConfig({ graph, context });
         
     | 
| 
       10 
13 
     | 
    
         
             
                const noSymlinks = await resolveNoSymlinks({ graph, context });
         
     | 
| 
       11 
14 
     | 
    
         
             
                const scripts = await resolveSupplementaryScripts({ graph, context });
         
     | 
| 
       12 
15 
     | 
    
         
             
                return {
         
     | 
| 
       13 
16 
     | 
    
         
             
                    target: context.target,
         
     | 
| 
       14 
     | 
    
         
            -
                    custom:  
     | 
| 
      
 17 
     | 
    
         
            +
                    custom: {
         
     | 
| 
      
 18 
     | 
    
         
            +
                        ...context.custom,
         
     | 
| 
      
 19 
     | 
    
         
            +
                        preset: context.custom.preset,
         
     | 
| 
      
 20 
     | 
    
         
            +
                        config,
         
     | 
| 
       15 
21 
     | 
    
         
             
                        noSymlinks,
         
     | 
| 
       16 
     | 
    
         
            -
                        scripts 
     | 
| 
      
 22 
     | 
    
         
            +
                        scripts,
         
     | 
| 
      
 23 
     | 
    
         
            +
                    },
         
     | 
| 
       17 
24 
     | 
    
         
             
                };
         
     | 
| 
       18 
25 
     | 
    
         
             
            }
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
            async function resolveNoSymlinks(_) {
         
     | 
| 
       21 
     | 
    
         
            -
                var _a;
         
     | 
| 
      
 26 
     | 
    
         
            +
            export async function resolveNoSymlinks(_) {
         
     | 
| 
       22 
27 
     | 
    
         
             
                const { graph, context } = _;
         
     | 
| 
       23 
28 
     | 
    
         
             
                const fromPreset = (await Promise.all(graph.map(async (node) => resolveNoSymlinksFromNode({ node, context })))).flat();
         
     | 
| 
       24 
     | 
    
         
            -
                const fromUser =  
     | 
| 
      
 29 
     | 
    
         
            +
                const fromUser = context.custom.noSymlinks ?? [];
         
     | 
| 
       25 
30 
     | 
    
         
             
                return [...new Set([...fromPreset, ...fromUser])];
         
     | 
| 
       26 
31 
     | 
    
         
             
            }
         
     | 
| 
       27 
     | 
    
         
            -
            exports.resolveNoSymlinks = resolveNoSymlinks;
         
     | 
| 
       28 
32 
     | 
    
         
             
            async function resolveNoSymlinksFromNode(_) {
         
     | 
| 
       29 
     | 
    
         
            -
                var _a;
         
     | 
| 
       30 
33 
     | 
    
         
             
                const { node, context } = _;
         
     | 
| 
       31 
34 
     | 
    
         
             
                const { asset, nodes } = node;
         
     | 
| 
       32 
35 
     | 
    
         
             
                const fromChildren = (await Promise.all(nodes.map(async (extension) => resolveNoSymlinksFromNode({ node: extension, context })))).flat();
         
     | 
| 
       33 
     | 
    
         
            -
                const fromPreset = await  
     | 
| 
      
 36 
     | 
    
         
            +
                const fromPreset = await loadDynamic(asset.noSymlinks ?? [], context);
         
     | 
| 
       34 
37 
     | 
    
         
             
                return [...new Set([...fromChildren, ...fromPreset])];
         
     | 
| 
       35 
38 
     | 
    
         
             
            }
         
     | 
| 
       36 
     | 
    
         
            -
            async function resolveSupplementaryConfig(_) {
         
     | 
| 
      
 39 
     | 
    
         
            +
            export async function resolveSupplementaryConfig(_) {
         
     | 
| 
       37 
40 
     | 
    
         
             
                const { graph, context } = _;
         
     | 
| 
       38 
     | 
    
         
            -
                const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
       39 
     | 
    
         
            -
                return  
     | 
| 
      
 41 
     | 
    
         
            +
                const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 42 
     | 
    
         
            +
                return merge(fromPresets, context.custom.config);
         
     | 
| 
       40 
43 
     | 
    
         
             
            }
         
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
       42 
     | 
    
         
            -
            async function resolveSupplementaryConfigFromNode(_) {
         
     | 
| 
      
 44 
     | 
    
         
            +
            export async function resolveSupplementaryConfigFromNode(_) {
         
     | 
| 
       43 
45 
     | 
    
         
             
                const { node, context } = _;
         
     | 
| 
       44 
46 
     | 
    
         
             
                const { asset, nodes } = node;
         
     | 
| 
       45 
     | 
    
         
            -
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
       46 
     | 
    
         
            -
                const fromPreset = await  
     | 
| 
       47 
     | 
    
         
            -
                return  
     | 
| 
      
 47 
     | 
    
         
            +
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 48 
     | 
    
         
            +
                const fromPreset = await loadDynamicMap(asset.supplementaryConfig, context);
         
     | 
| 
      
 49 
     | 
    
         
            +
                return merge(fromChildren, fromPreset);
         
     | 
| 
       48 
50 
     | 
    
         
             
            }
         
     | 
| 
       49 
     | 
    
         
            -
             
     | 
| 
       50 
     | 
    
         
            -
            async function resolveSupplementaryScripts(_) {
         
     | 
| 
      
 51 
     | 
    
         
            +
            export async function resolveSupplementaryScripts(_) {
         
     | 
| 
       51 
52 
     | 
    
         
             
                const { graph, context } = _;
         
     | 
| 
       52 
     | 
    
         
            -
                const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
       53 
     | 
    
         
            -
                return  
     | 
| 
      
 53 
     | 
    
         
            +
                const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 54 
     | 
    
         
            +
                return merge(fromPresets, context.custom.scripts);
         
     | 
| 
       54 
55 
     | 
    
         
             
            }
         
     | 
| 
       55 
     | 
    
         
            -
             
     | 
| 
       56 
     | 
    
         
            -
            async function resolveSupplementaryScriptsFromNode(_) {
         
     | 
| 
      
 56 
     | 
    
         
            +
            export async function resolveSupplementaryScriptsFromNode(_) {
         
     | 
| 
       57 
57 
     | 
    
         
             
                const { node, context } = _;
         
     | 
| 
       58 
58 
     | 
    
         
             
                const { asset, nodes } = node;
         
     | 
| 
       59 
59 
     | 
    
         
             
                const { supplementaryScripts } = asset;
         
     | 
| 
       60 
     | 
    
         
            -
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
       61 
     | 
    
         
            -
                const fromPreset = await  
     | 
| 
       62 
     | 
    
         
            -
                return  
     | 
| 
      
 60 
     | 
    
         
            +
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 61 
     | 
    
         
            +
                const fromPreset = await loadDynamic(supplementaryScripts ?? {}, context);
         
     | 
| 
      
 62 
     | 
    
         
            +
                return merge(fromChildren, fromPreset);
         
     | 
| 
       63 
63 
     | 
    
         
             
            }
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
            function resolveVariable(_) {
         
     | 
| 
      
 64 
     | 
    
         
            +
            export function resolveVariable(_) {
         
     | 
| 
       66 
65 
     | 
    
         
             
                const { graph, config } = _;
         
     | 
| 
       67 
66 
     | 
    
         
             
                const fromPresets = graph
         
     | 
| 
       68 
67 
     | 
    
         
             
                    .map((node) => resolveVariableFromNode({ node }))
         
     | 
| 
       69 
     | 
    
         
            -
                    .reduce((merged, next) =>  
     | 
| 
       70 
     | 
    
         
            -
                return  
     | 
| 
      
 68 
     | 
    
         
            +
                    .reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 69 
     | 
    
         
            +
                return merge(fromPresets, config.variable);
         
     | 
| 
       71 
70 
     | 
    
         
             
            }
         
     | 
| 
       72 
     | 
    
         
            -
            exports.resolveVariable = resolveVariable;
         
     | 
| 
       73 
71 
     | 
    
         
             
            function resolveVariableFromNode(_) {
         
     | 
| 
       74 
72 
     | 
    
         
             
                const { node } = _;
         
     | 
| 
       75 
73 
     | 
    
         
             
                const { asset, nodes } = node;
         
     | 
| 
       76 
74 
     | 
    
         
             
                const fromChildren = nodes
         
     | 
| 
       77 
75 
     | 
    
         
             
                    .map((node) => resolveVariableFromNode({ node }))
         
     | 
| 
       78 
     | 
    
         
            -
                    .reduce((merged, next) =>  
     | 
| 
       79 
     | 
    
         
            -
                return  
     | 
| 
      
 76 
     | 
    
         
            +
                    .reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 77 
     | 
    
         
            +
                return merge(fromChildren, asset.variable);
         
     | 
| 
       80 
78 
     | 
    
         
             
            }
         
     | 
| 
       81 
     | 
    
         
            -
            async function resolveScripts(_) {
         
     | 
| 
      
 79 
     | 
    
         
            +
            export async function resolveScripts(_) {
         
     | 
| 
       82 
80 
     | 
    
         
             
                const { graph, context } = _;
         
     | 
| 
       83 
     | 
    
         
            -
                const fromPresets = (await Promise.all(graph.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
      
 81 
     | 
    
         
            +
                const fromPresets = (await Promise.all(graph.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
       84 
82 
     | 
    
         
             
                const fromConfig = context.custom.scripts;
         
     | 
| 
       85 
     | 
    
         
            -
                return  
     | 
| 
      
 83 
     | 
    
         
            +
                return template(merge(fromPresets, fromConfig), context.custom.variable);
         
     | 
| 
       86 
84 
     | 
    
         
             
            }
         
     | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
            async function resolveScriptsFromNode(_) {
         
     | 
| 
       89 
     | 
    
         
            -
                var _a;
         
     | 
| 
      
 85 
     | 
    
         
            +
            export async function resolveScriptsFromNode(_) {
         
     | 
| 
       90 
86 
     | 
    
         
             
                const { node, context } = _;
         
     | 
| 
       91 
87 
     | 
    
         
             
                const { asset, nodes } = node;
         
     | 
| 
       92 
     | 
    
         
            -
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
       93 
     | 
    
         
            -
                const fromPreset = await  
     | 
| 
       94 
     | 
    
         
            -
                return  
     | 
| 
      
 88 
     | 
    
         
            +
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) => merge(merged, next), {});
         
     | 
| 
      
 89 
     | 
    
         
            +
                const fromPreset = await loadDynamic(asset.scripts ?? {}, context);
         
     | 
| 
      
 90 
     | 
    
         
            +
                return merge(fromChildren, fromPreset);
         
     | 
| 
       95 
91 
     | 
    
         
             
            }
         
     | 
| 
       96 
     | 
    
         
            -
             
     | 
| 
       97 
     | 
    
         
            -
            async function resolveTemplate(_) {
         
     | 
| 
       98 
     | 
    
         
            -
                var _a;
         
     | 
| 
      
 92 
     | 
    
         
            +
            export async function resolveTemplate(_) {
         
     | 
| 
       99 
93 
     | 
    
         
             
                const { graph, context } = _;
         
     | 
| 
       100 
     | 
    
         
            -
                const fromPreset = (await Promise.all(graph.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((merged, next) =>  
     | 
| 
      
 94 
     | 
    
         
            +
                const fromPreset = (await Promise.all(graph.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((merged, next) => mergeTemplate(merged, next), {});
         
     | 
| 
       101 
95 
     | 
    
         
             
                const customTemplate = Object.fromEntries(Object.entries(fromPreset).map(([path, current]) => {
         
     | 
| 
       102 
     | 
    
         
            -
                    const config = context.custom.config[ 
     | 
| 
      
 96 
     | 
    
         
            +
                    const config = context.custom.config[getConfigKey(path)];
         
     | 
| 
       103 
97 
     | 
    
         
             
                    const candidate = Array.isArray(config) ? config.join('\n') : config;
         
     | 
| 
       104 
     | 
    
         
            -
                    return [path, candidate  
     | 
| 
      
 98 
     | 
    
         
            +
                    return [path, candidate ?? current];
         
     | 
| 
       105 
99 
     | 
    
         
             
                }));
         
     | 
| 
       106 
     | 
    
         
            -
                const merged =  
     | 
| 
       107 
     | 
    
         
            -
                const resolvedTemplate =  
     | 
| 
       108 
     | 
    
         
            -
                return  
     | 
| 
      
 100 
     | 
    
         
            +
                const merged = mergeTemplate(fromPreset, customTemplate);
         
     | 
| 
      
 101 
     | 
    
         
            +
                const resolvedTemplate = filter(merged, ...(context.custom.ignores ?? []));
         
     | 
| 
      
 102 
     | 
    
         
            +
                return template(resolvedTemplate, context.custom.variable);
         
     | 
| 
       109 
103 
     | 
    
         
             
            }
         
     | 
| 
       110 
     | 
    
         
            -
             
     | 
| 
       111 
     | 
    
         
            -
            async function resolveTemplateFromNode(_) {
         
     | 
| 
      
 104 
     | 
    
         
            +
            export async function resolveTemplateFromNode(_) {
         
     | 
| 
       112 
105 
     | 
    
         
             
                const { node, context } = _;
         
     | 
| 
       113 
106 
     | 
    
         
             
                const { asset, nodes } = node;
         
     | 
| 
       114 
107 
     | 
    
         
             
                const { supplementaryIgnores } = asset;
         
     | 
| 
       115 
     | 
    
         
            -
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((current, next) =>  
     | 
| 
       116 
     | 
    
         
            -
                const fromPreset = await  
     | 
| 
       117 
     | 
    
         
            -
                const merged =  
     | 
| 
      
 108 
     | 
    
         
            +
                const fromChildren = (await Promise.all(nodes.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((current, next) => mergeTemplate(current, next), {});
         
     | 
| 
      
 109 
     | 
    
         
            +
                const fromPreset = await loadDynamicMap(asset.template, context);
         
     | 
| 
      
 110 
     | 
    
         
            +
                const merged = mergeTemplate(fromChildren, fromPreset);
         
     | 
| 
       118 
111 
     | 
    
         
             
                const ignoreRules = typeof supplementaryIgnores === 'function'
         
     | 
| 
       119 
112 
     | 
    
         
             
                    ? await supplementaryIgnores(context)
         
     | 
| 
       120 
113 
     | 
    
         
             
                    : supplementaryIgnores;
         
     | 
| 
       121 
     | 
    
         
            -
                return  
     | 
| 
      
 114 
     | 
    
         
            +
                return filter(merged, ...(ignoreRules ?? []));
         
     | 
| 
       122 
115 
     | 
    
         
             
            }
         
     | 
| 
       123 
     | 
    
         
            -
             
     | 
| 
       124 
     | 
    
         
            -
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWVBLDZDQUF5RTtBQUN6RSx5Q0FBb0U7QUFtQjdELEtBQUssVUFBVSxjQUFjLENBQUMsQ0FHcEM7SUFDQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBR3BCLE1BQU0sT0FBTyxtQ0FDUixDQUFDLENBQUMsT0FBTyxLQUNaLE1BQU0sa0NBQ0QsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQ25CLFFBQVEsRUFBRSxlQUFlLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsTUFFakUsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sMEJBQTBCLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNwRSxNQUFNLFVBQVUsR0FBRyxNQUFNLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDL0QsTUFBTSxPQUFPLEdBQUcsTUFBTSwyQkFBMkIsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBR3RFLE9BQU87UUFDTCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07UUFDdEIsTUFBTSxrQ0FDRCxPQUFPLENBQUMsTUFBTSxLQUNqQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQzdCLE1BQU07WUFDTixVQUFVO1lBQ1YsT0FBTyxHQUNSO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUE5QkQsd0NBOEJDO0FBU00sS0FBSyxVQUFVLGlCQUFpQixDQUFDLENBR3ZDOztJQUNDLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRTdCLE1BQU0sVUFBVSxHQUFHLENBQ2pCLE1BQU0s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
         
     | 
| 
      
 116 
     | 
    
         
            +
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVBLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBbUJwRSxNQUFNLENBQUMsS0FBSyxVQUFVLGNBQWMsQ0FBQyxDQUdwQztJQUNDLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFHcEIsTUFBTSxPQUFPLEdBQXNDO1FBQ2pELEdBQUcsQ0FBQyxDQUFDLE9BQU87UUFDWixNQUFNLEVBQUU7WUFDTixHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUNuQixRQUFRLEVBQUUsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQy9EO0tBQ0YsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sMEJBQTBCLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNwRSxNQUFNLFVBQVUsR0FBRyxNQUFNLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDL0QsTUFBTSxPQUFPLEdBQUcsTUFBTSwyQkFBMkIsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBR3RFLE9BQU87UUFDTCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07UUFDdEIsTUFBTSxFQUFFO1lBQ04sR0FBRyxPQUFPLENBQUMsTUFBTTtZQUNqQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNO1lBQzdCLE1BQU07WUFDTixVQUFVO1lBQ1YsT0FBTztTQUNSO0tB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
         
     | 
    
        package/lib/directive.d.ts
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import type { PresetContext } from ' 
     | 
| 
       2 
     | 
    
         
            -
            export  
     | 
| 
       3 
     | 
    
         
            -
            export  
     | 
| 
      
 1 
     | 
    
         
            +
            import type { PresetContext } from 'presetter-types';
         
     | 
| 
      
 2 
     | 
    
         
            +
            export type ApplyDirective = `@apply ${string}` | `@apply ${string}[${string}]`;
         
     | 
| 
      
 3 
     | 
    
         
            +
            export type ImportDirective = `@import ${string}` | `@import ${string}[${string}]`;
         
     | 
| 
       4 
4 
     | 
    
         
             
            export declare function isApplyDirective(value: unknown): value is ApplyDirective;
         
     | 
| 
       5 
5 
     | 
    
         
             
            export declare function isImportDirective(value: unknown): value is ImportDirective;
         
     | 
| 
       6 
6 
     | 
    
         
             
            export declare function isDirective(value: unknown): value is ApplyDirective | ImportDirective;
         
     | 
    
        package/lib/directive.js
    CHANGED
    
    | 
         @@ -1,30 +1,26 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            "use strict";
         
     | 
| 
       2 
     | 
    
         
            -
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
     | 
    
         
            -
            exports.resolveDirective = exports.isDirective = exports.isImportDirective = exports.isApplyDirective = void 0;
         
     | 
| 
       4 
1 
     | 
    
         
             
            const applyRegex = /^@apply ((\.+\/|@)?[a-zA-Z]+[a-zA-Z0-9_/.-]*[a-zA-Z0-9_]+)(\[([a-zA-Z]+[a-zA-Z0-9_.]*)\])?$/;
         
     | 
| 
       5 
2 
     | 
    
         
             
            const importRegex = /^@import ((\.+\/|@)?[a-zA-Z]+[a-zA-Z0-9_/.-]*[a-zA-Z0-9_]+)(\[([a-zA-Z]+[a-zA-Z0-9_.]*)\])?$/;
         
     | 
| 
       6 
     | 
    
         
            -
            function isApplyDirective(value) {
         
     | 
| 
      
 3 
     | 
    
         
            +
            export function isApplyDirective(value) {
         
     | 
| 
       7 
4 
     | 
    
         
             
                return typeof value === 'string' && !!applyRegex.exec(value);
         
     | 
| 
       8 
5 
     | 
    
         
             
            }
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
            function isImportDirective(value) {
         
     | 
| 
      
 6 
     | 
    
         
            +
            export function isImportDirective(value) {
         
     | 
| 
       11 
7 
     | 
    
         
             
                return typeof value === 'string' && !!importRegex.exec(value);
         
     | 
| 
       12 
8 
     | 
    
         
             
            }
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
            function isDirective(value) {
         
     | 
| 
      
 9 
     | 
    
         
            +
            export function isDirective(value) {
         
     | 
| 
       15 
10 
     | 
    
         
             
                return isApplyDirective(value) || isImportDirective(value);
         
     | 
| 
       16 
11 
     | 
    
         
             
            }
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
            function resolveDirective(config, context) {
         
     | 
| 
      
 12 
     | 
    
         
            +
            export function resolveDirective(config, context) {
         
     | 
| 
       19 
13 
     | 
    
         
             
                const packages = new Set();
         
     | 
| 
       20 
     | 
    
         
            -
                const stringifiedConfig = stringifyConfigObject(config,  
     | 
| 
      
 14 
     | 
    
         
            +
                const stringifiedConfig = stringifyConfigObject(config, {
         
     | 
| 
      
 15 
     | 
    
         
            +
                    ...context,
         
     | 
| 
      
 16 
     | 
    
         
            +
                    packages,
         
     | 
| 
      
 17 
     | 
    
         
            +
                });
         
     | 
| 
       21 
18 
     | 
    
         
             
                const importMap = Object.fromEntries([...packages.values()].map((packageName, key) => [
         
     | 
| 
       22 
19 
     | 
    
         
             
                    packageName,
         
     | 
| 
       23 
20 
     | 
    
         
             
                    `import${key}`,
         
     | 
| 
       24 
21 
     | 
    
         
             
                ]));
         
     | 
| 
       25 
22 
     | 
    
         
             
                return { importMap, stringifiedConfig };
         
     | 
| 
       26 
23 
     | 
    
         
             
            }
         
     | 
| 
       27 
     | 
    
         
            -
            exports.resolveDirective = resolveDirective;
         
     | 
| 
       28 
24 
     | 
    
         
             
            function resolveApplyDirective(directiveMeta, context) {
         
     | 
| 
       29 
25 
     | 
    
         
             
                const [directive, ...args] = directiveMeta;
         
     | 
| 
       30 
26 
     | 
    
         
             
                const { packages } = context;
         
     | 
| 
         @@ -50,9 +46,9 @@ function resolveImportDirective(directive, context) { 
     | 
|
| 
       50 
46 
     | 
    
         
             
                return null;
         
     | 
| 
       51 
47 
     | 
    
         
             
            }
         
     | 
| 
       52 
48 
     | 
    
         
             
            function stringifyObjectValue(value, context) {
         
     | 
| 
       53 
     | 
    
         
            -
                var _a;
         
     | 
| 
       54 
49 
     | 
    
         
             
                if (Array.isArray(value)) {
         
     | 
| 
       55 
     | 
    
         
            -
                    return ( 
     | 
| 
      
 50 
     | 
    
         
            +
                    return (resolveApplyDirective(value, context) ??
         
     | 
| 
      
 51 
     | 
    
         
            +
                        stringifyConfigArray(value, context));
         
     | 
| 
       56 
52 
     | 
    
         
             
                }
         
     | 
| 
       57 
53 
     | 
    
         
             
                else if (value !== null) {
         
     | 
| 
       58 
54 
     | 
    
         
             
                    return stringifyConfigObject(value, context);
         
     | 
| 
         @@ -72,10 +68,9 @@ function stringifyConfigObject(config, context) { 
     | 
|
| 
       72 
68 
     | 
    
         
             
                return `{${values.join(', ')}}`;
         
     | 
| 
       73 
69 
     | 
    
         
             
            }
         
     | 
| 
       74 
70 
     | 
    
         
             
            function stringifyValue(value, context) {
         
     | 
| 
       75 
     | 
    
         
            -
                var _a;
         
     | 
| 
       76 
71 
     | 
    
         
             
                switch (typeof value) {
         
     | 
| 
       77 
72 
     | 
    
         
             
                    case 'string':
         
     | 
| 
       78 
     | 
    
         
            -
                        return  
     | 
| 
      
 73 
     | 
    
         
            +
                        return resolveImportDirective(value, context) ?? JSON.stringify(value);
         
     | 
| 
       79 
74 
     | 
    
         
             
                    case 'object':
         
     | 
| 
       80 
75 
     | 
    
         
             
                        return stringifyObjectValue(value, context);
         
     | 
| 
       81 
76 
     | 
    
         
             
                    case 'boolean':
         
     | 
| 
         @@ -90,4 +85,4 @@ function registerUsage(packages, packageName, importName) { 
     | 
|
| 
       90 
85 
     | 
    
         
             
                const named = importName ? `.${importName}` : '';
         
     | 
| 
       91 
86 
     | 
    
         
             
                return `import${packageKey}${named}`;
         
     | 
| 
       92 
87 
     | 
    
         
             
            }
         
     | 
| 
       93 
     | 
    
         
            -
            //# sourceMappingURL=data:application/json;base64, 
     | 
| 
      
 88 
     | 
    
         
            +
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc291cmNlL2RpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQ0EsTUFBTSxVQUFVLEdBQ2QsNkZBQTZGLENBQUM7QUFHaEcsTUFBTSxXQUFXLEdBQ2YsOEZBQThGLENBQUM7QUFPakcsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEtBQWM7SUFDN0MsT0FBTyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDL0QsQ0FBQztBQU9ELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUFjO0lBQzlDLE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ2hFLENBQUM7QUFPRCxNQUFNLFVBQVUsV0FBVyxDQUN6QixLQUFjO0lBRWQsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUM3RCxDQUFDO0FBUUQsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixNQUErQixFQUMvQixPQUFzQjtJQUt0QixNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBQ25DLE1BQU0saUJBQWlCLEdBQUcscUJBQXFCLENBQUMsTUFBTSxFQUFFO1FBQ3RELEdBQUcsT0FBTztRQUNWLFFBQVE7S0FDVCxDQUFDLENBQUM7SUFFSCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUNsQyxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDL0MsV0FBVztRQUNYLFNBQVMsR0FBRyxFQUFFO0tBQ2YsQ0FBQyxDQUNILENBQUM7SUFFRixPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUM7QUFDMUMsQ0FBQztBQVFELFNBQVMscUJBQXFCLENBQzVCLGFBQXdCLEVBQ3hCLE9BQWdDO0lBRWhDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxhQUFhLENBQUM7SUFDM0MsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUU3QixJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRTtRQUNqQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXpDLElBQUksS0FBSyxFQUFFO1lBQ1QsTUFBTSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLENBQUMsR0FBRyxLQUFLLENBQUM7WUFDcEUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sY0FBYyxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBRXRELE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBRXRFLE9BQU8sR0FBRyxZQUFZLFFBQVEsY0FBYyxhQUFhLENBQUM7U0FDM0Q7S0FDRjtJQUdELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQVFELFNBQVMsc0JBQXNCLENBQzdCLFNBQWlCLEVBQ2pCLE9BQWdDO0lBRWhDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDN0IsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUUxQyxJQUFJLEtBQUssRUFBRTtRQUNULE1BQU0sQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBRXBFLE9BQU8sYUFBYSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7S0FDekQ7SUFHRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFRRCxTQUFTLG9CQUFvQixDQUMzQixLQUF5QyxFQUN6QyxPQUFnQztJQUVoQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDeEIsT0FBTyxDQUNMLHFCQUFxQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUM7WUFDckMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUNyQyxDQUFDO0tBQ0g7U0FBTSxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDekIsT0FBTyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDOUM7U0FBTTtRQUNMLE9BQU8sTUFBTSxDQUFDO0tBQ2Y7QUFDSCxDQUFDO0FBUUQsU0FBUyxvQkFBb0IsQ0FDM0IsTUFBaUIsRUFDakIsT0FBZ0M7SUFFaEMsTUFBTSxNQUFNLEdBQWEsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQzVDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQy9CLENBQUM7SUFFRixPQUFPLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO0FBQ2xDLENBQUM7QUFRRCxTQUFTLHFCQUFxQixDQUM1QixNQUEyQixFQUMzQixPQUFnQztJQUVoQyxNQUFNLE1BQU0sR0FBYSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7UUFDbkUsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssY0FBYyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQ3JFLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztBQUNsQyxDQUFDO0FBUUQsU0FBUyxjQUFjLENBQ3JCLEtBQWMsRUFDZCxPQUFnQztJQUVoQyxRQUFRLE9BQU8sS0FBSyxFQUFFO1FBQ3BCLEtBQUssUUFBUTtZQUNYLE9BQU8sc0JBQXNCLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekUsS0FBSyxRQUFRO1lBQ1gsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUMsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLFFBQVEsQ0FBQztRQUNkO1lBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ2hDO0FBQ0gsQ0FBQztBQVNELFNBQVMsYUFBYSxDQUNwQixRQUFxQixFQUNyQixXQUFtQixFQUNuQixVQUFtQjtJQUduQixRQUFRLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRzFCLE1BQU0sVUFBVSxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQ2pELENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUMvQixDQUFDO0lBRUYsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFFakQsT0FBTyxTQUFTLFVBQVUsR0FBRyxLQUFLLEVBQUUsQ0FBQztBQUN2QyxDQUFDIn0=
         
     | 
    
        package/lib/error.js
    CHANGED
    
    | 
         @@ -1,7 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
     | 
    
         
            -
            exports.wrap = void 0;
         
     | 
| 
       4 
     | 
    
         
            -
            async function wrap(promise, message) {
         
     | 
| 
      
 1 
     | 
    
         
            +
            export async function wrap(promise, message) {
         
     | 
| 
       5 
2 
     | 
    
         
             
                try {
         
     | 
| 
       6 
3 
     | 
    
         
             
                    return await promise;
         
     | 
| 
       7 
4 
     | 
    
         
             
                }
         
     | 
| 
         @@ -12,5 +9,4 @@ async function wrap(promise, message) { 
     | 
|
| 
       12 
9 
     | 
    
         
             
                    throw error;
         
     | 
| 
       13 
10 
     | 
    
         
             
                }
         
     | 
| 
       14 
11 
     | 
    
         
             
            }
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvZXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBcUJPLEtBQUssVUFBVSxJQUFJLENBQ3hCLE9BQW1CLEVBQ25CLE9BQWU7SUFFZixJQUFJO1FBQ0YsT0FBTyxNQUFNLE9BQU8sQ0FBQztLQUN0QjtJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO1lBQzFCLEtBQUssQ0FBQyxPQUFPLEdBQUcsR0FBRyxPQUFPLEtBQUssS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hEO1FBRUQsTUFBTSxLQUFLLENBQUM7S0FDYjtBQUNILENBQUM7QUFiRCxvQkFhQyJ9
         
     | 
| 
      
 12 
     | 
    
         
            +
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvZXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJBLE1BQU0sQ0FBQyxLQUFLLFVBQVUsSUFBSSxDQUN4QixPQUFtQixFQUNuQixPQUFlO0lBRWYsSUFBSTtRQUNGLE9BQU8sTUFBTSxPQUFPLENBQUM7S0FDdEI7SUFBQyxPQUFPLEtBQUssRUFBRTtRQUNkLElBQUksS0FBSyxZQUFZLEtBQUssRUFBRTtZQUMxQixLQUFLLENBQUMsT0FBTyxHQUFHLEdBQUcsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNoRDtRQUVELE1BQU0sS0FBSyxDQUFDO0tBQ2I7QUFDSCxDQUFDIn0=
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            export declare function entry(): Promise<void>;
         
     | 
| 
      
 1 
     | 
    
         
            +
            export declare function entry(args: string[]): Promise<void>;
         
     | 
    
        package/lib/executable/entry.js
    CHANGED
    
    | 
         @@ -1,13 +1,8 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            };
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
            exports.entry = void 0;
         
     | 
| 
       7 
     | 
    
         
            -
            const fs_1 = require("fs");
         
     | 
| 
       8 
     | 
    
         
            -
            const yargs_1 = __importDefault(require("yargs"));
         
     | 
| 
       9 
     | 
    
         
            -
            const _preset_1 = require("../preset");
         
     | 
| 
       10 
     | 
    
         
            -
            const _run_1 = require("../run");
         
     | 
| 
      
 1 
     | 
    
         
            +
            import { existsSync } from 'node:fs';
         
     | 
| 
      
 2 
     | 
    
         
            +
            import yargs from 'yargs';
         
     | 
| 
      
 3 
     | 
    
         
            +
            import { bootstrapPreset, setupPreset, unsetPreset } from '../preset/index.js';
         
     | 
| 
      
 4 
     | 
    
         
            +
            import { run } from '../run.js';
         
     | 
| 
      
 5 
     | 
    
         
            +
            import { parseGlobalArgs, parseTaskSpec } from '../task.js';
         
     | 
| 
       11 
6 
     | 
    
         
             
            const useCommand = {
         
     | 
| 
       12 
7 
     | 
    
         
             
                command: 'use <preset..>',
         
     | 
| 
       13 
8 
     | 
    
         
             
                describe: 'adopt the specified preset to the project',
         
     | 
| 
         @@ -15,52 +10,90 @@ const useCommand = { 
     | 
|
| 
       15 
10 
     | 
    
         
             
                    .positional('preset', {
         
     | 
| 
       16 
11 
     | 
    
         
             
                    required: true,
         
     | 
| 
       17 
12 
     | 
    
         
             
                    type: 'string',
         
     | 
| 
       18 
     | 
    
         
            -
                    description: ' 
     | 
| 
      
 13 
     | 
    
         
            +
                    description: 'the name of the preset to be used',
         
     | 
| 
       19 
14 
     | 
    
         
             
                })
         
     | 
| 
       20 
15 
     | 
    
         
             
                    .help(),
         
     | 
| 
       21 
     | 
    
         
            -
                handler: async (argv) =>  
     | 
| 
      
 16 
     | 
    
         
            +
                handler: async (argv) => setupPreset(...argv.preset),
         
     | 
| 
       22 
17 
     | 
    
         
             
            };
         
     | 
| 
       23 
18 
     | 
    
         
             
            const bootstrapCommand = {
         
     | 
| 
       24 
19 
     | 
    
         
             
                command: 'bootstrap',
         
     | 
| 
       25 
20 
     | 
    
         
             
                describe: 'setup the project according to the specified preset',
         
     | 
| 
       26 
21 
     | 
    
         
             
                builder: (yargs) => yargs
         
     | 
| 
      
 22 
     | 
    
         
            +
                    .option('force', {
         
     | 
| 
      
 23 
     | 
    
         
            +
                    type: 'boolean',
         
     | 
| 
      
 24 
     | 
    
         
            +
                    default: false,
         
     | 
| 
      
 25 
     | 
    
         
            +
                    description: 'overwrite existing files',
         
     | 
| 
      
 26 
     | 
    
         
            +
                })
         
     | 
| 
       27 
27 
     | 
    
         
             
                    .option('only', {
         
     | 
| 
       28 
28 
     | 
    
         
             
                    type: 'string',
         
     | 
| 
       29 
29 
     | 
    
         
             
                    description: 'proceed only if the specified file exists',
         
     | 
| 
       30 
30 
     | 
    
         
             
                })
         
     | 
| 
       31 
31 
     | 
    
         
             
                    .help(),
         
     | 
| 
       32 
32 
     | 
    
         
             
                handler: async (argv) => {
         
     | 
| 
       33 
     | 
    
         
            -
                    const { only } = argv;
         
     | 
| 
       34 
     | 
    
         
            -
                    if (!only ||  
     | 
| 
       35 
     | 
    
         
            -
                        await ( 
     | 
| 
      
 33 
     | 
    
         
            +
                    const { force, only } = argv;
         
     | 
| 
      
 34 
     | 
    
         
            +
                    if (!only || existsSync(only)) {
         
     | 
| 
      
 35 
     | 
    
         
            +
                        await bootstrapPreset({ force });
         
     | 
| 
       36 
36 
     | 
    
         
             
                    }
         
     | 
| 
       37 
37 
     | 
    
         
             
                },
         
     | 
| 
       38 
38 
     | 
    
         
             
            };
         
     | 
| 
       39 
39 
     | 
    
         
             
            const runCommand = {
         
     | 
| 
       40 
40 
     | 
    
         
             
                command: 'run',
         
     | 
| 
       41 
41 
     | 
    
         
             
                describe: 'run a template script',
         
     | 
| 
       42 
     | 
    
         
            -
                builder: (yargs) => yargs 
     | 
| 
      
 42 
     | 
    
         
            +
                builder: (yargs) => yargs
         
     | 
| 
      
 43 
     | 
    
         
            +
                    .option('template', {
         
     | 
| 
      
 44 
     | 
    
         
            +
                    type: 'boolean',
         
     | 
| 
      
 45 
     | 
    
         
            +
                    default: false,
         
     | 
| 
      
 46 
     | 
    
         
            +
                    description: 'use script from the template',
         
     | 
| 
      
 47 
     | 
    
         
            +
                })
         
     | 
| 
      
 48 
     | 
    
         
            +
                    .usage('run <task>')
         
     | 
| 
      
 49 
     | 
    
         
            +
                    .demandCommand(),
         
     | 
| 
      
 50 
     | 
    
         
            +
                handler: async (argv) => {
         
     | 
| 
      
 51 
     | 
    
         
            +
                    const [, selector] = argv._.map((arg) => arg.toString());
         
     | 
| 
      
 52 
     | 
    
         
            +
                    const args = parseGlobalArgs(argv);
         
     | 
| 
      
 53 
     | 
    
         
            +
                    await run([{ selector, args }], { templateOnly: argv.template });
         
     | 
| 
      
 54 
     | 
    
         
            +
                },
         
     | 
| 
      
 55 
     | 
    
         
            +
            };
         
     | 
| 
      
 56 
     | 
    
         
            +
            const runSCommand = {
         
     | 
| 
      
 57 
     | 
    
         
            +
                command: 'run-s',
         
     | 
| 
      
 58 
     | 
    
         
            +
                describe: 'run scripts in sequence',
         
     | 
| 
      
 59 
     | 
    
         
            +
                builder: (yargs) => yargs.usage('run-s <task>').demandCommand(),
         
     | 
| 
      
 60 
     | 
    
         
            +
                handler: async (argv) => {
         
     | 
| 
      
 61 
     | 
    
         
            +
                    const [, ...specs] = argv._.map((arg) => arg.toString());
         
     | 
| 
      
 62 
     | 
    
         
            +
                    const globalArgs = parseGlobalArgs(argv);
         
     | 
| 
      
 63 
     | 
    
         
            +
                    const tasks = specs.map((spec) => parseTaskSpec(spec, globalArgs));
         
     | 
| 
      
 64 
     | 
    
         
            +
                    await run(tasks);
         
     | 
| 
      
 65 
     | 
    
         
            +
                },
         
     | 
| 
      
 66 
     | 
    
         
            +
            };
         
     | 
| 
      
 67 
     | 
    
         
            +
            const runPCommand = {
         
     | 
| 
      
 68 
     | 
    
         
            +
                command: 'run-p',
         
     | 
| 
      
 69 
     | 
    
         
            +
                describe: 'run scripts in parallel',
         
     | 
| 
      
 70 
     | 
    
         
            +
                builder: (yargs) => yargs.usage('run-p <task>').demandCommand(),
         
     | 
| 
       43 
71 
     | 
    
         
             
                handler: async (argv) => {
         
     | 
| 
       44 
     | 
    
         
            -
                    const [,  
     | 
| 
       45 
     | 
    
         
            -
                     
     | 
| 
      
 72 
     | 
    
         
            +
                    const [, ...specs] = argv._.map((arg) => arg.toString().replace(/^(['"])([^]*?)\1$/, '$2'));
         
     | 
| 
      
 73 
     | 
    
         
            +
                    const globalArgs = parseGlobalArgs(argv);
         
     | 
| 
      
 74 
     | 
    
         
            +
                    const tasks = specs.map((spec) => parseTaskSpec(spec, globalArgs));
         
     | 
| 
      
 75 
     | 
    
         
            +
                    await run(tasks, { parallel: true });
         
     | 
| 
       46 
76 
     | 
    
         
             
                },
         
     | 
| 
       47 
77 
     | 
    
         
             
            };
         
     | 
| 
       48 
78 
     | 
    
         
             
            const unsetCommand = {
         
     | 
| 
       49 
79 
     | 
    
         
             
                command: 'unset',
         
     | 
| 
       50 
80 
     | 
    
         
             
                describe: 'remove all artifacts created by the preset',
         
     | 
| 
       51 
     | 
    
         
            -
                handler: async () =>  
     | 
| 
      
 81 
     | 
    
         
            +
                handler: async () => unsetPreset(),
         
     | 
| 
       52 
82 
     | 
    
         
             
            };
         
     | 
| 
       53 
     | 
    
         
            -
            async function entry() {
         
     | 
| 
       54 
     | 
    
         
            -
                 
     | 
| 
       55 
     | 
    
         
            -
             
     | 
| 
      
 83 
     | 
    
         
            +
            export async function entry(args) {
         
     | 
| 
      
 84 
     | 
    
         
            +
                await yargs()
         
     | 
| 
      
 85 
     | 
    
         
            +
                    .parserConfiguration({
         
     | 
| 
      
 86 
     | 
    
         
            +
                    'populate--': true,
         
     | 
| 
      
 87 
     | 
    
         
            +
                })
         
     | 
| 
       56 
88 
     | 
    
         
             
                    .usage('⚙ presetter: your preset configurator')
         
     | 
| 
       57 
89 
     | 
    
         
             
                    .showHelpOnFail(true)
         
     | 
| 
       58 
90 
     | 
    
         
             
                    .command(useCommand)
         
     | 
| 
       59 
91 
     | 
    
         
             
                    .command(bootstrapCommand)
         
     | 
| 
       60 
92 
     | 
    
         
             
                    .command(runCommand)
         
     | 
| 
      
 93 
     | 
    
         
            +
                    .command(runSCommand)
         
     | 
| 
      
 94 
     | 
    
         
            +
                    .command(runPCommand)
         
     | 
| 
       61 
95 
     | 
    
         
             
                    .command(unsetCommand)
         
     | 
| 
       62 
96 
     | 
    
         
             
                    .demandCommand()
         
     | 
| 
       63 
97 
     | 
    
         
             
                    .parse(args);
         
     | 
| 
       64 
98 
     | 
    
         
             
            }
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9lbnRyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFlQSwyQkFBZ0M7QUFDaEMsa0RBQTBCO0FBRTFCLHFDQUFvRTtBQUNwRSwrQkFBMkI7QUFJM0IsTUFBTSxVQUFVLEdBQStEO0lBQzdFLE9BQU8sRUFBRSxnQkFBZ0I7SUFDekIsUUFBUSxFQUFFLDJDQUEyQztJQUNyRCxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNqQixLQUFLO1NBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtRQUNwQixRQUFRLEVBQUUsSUFBYTtRQUN2QixJQUFJLEVBQUUsUUFBUTtRQUNkLFdBQVcsRUFBRSwyQ0FBMkM7S0FDekQsQ0FBQztTQUNELElBQUksRUFBRTtJQUNYLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFBLHFCQUFXLEVBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0NBQ3JELENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUdsQjtJQUNGLE9BQU8sRUFBRSxXQUFXO0lBQ3BCLFFBQVEsRUFBRSxxREFBcUQ7SUFDL0QsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDakIsS0FBSztTQUNGLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDZCxJQUFJLEVBQUUsUUFBUTtRQUNkLFdBQVcsRUFBRSwyQ0FBMkM7S0FDekQsQ0FBQztTQUNELElBQUksRUFBRTtJQUNYLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdEIsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztRQUd0QixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUEsZUFBVSxFQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLE1BQU0sSUFBQSx5QkFBZSxHQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUFrQjtJQUNoQyxPQUFPLEVBQUUsS0FBSztJQUNkLFFBQVEsRUFBRSx1QkFBdUI7SUFDakMsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLGFBQWEsRUFBRTtJQUM3RCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFO1FBRXRCLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUU5RCxNQUFNLElBQUEsVUFBRyxFQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sWUFBWSxHQUFrQjtJQUNsQyxPQUFPLEVBQUUsT0FBTztJQUNoQixRQUFRLEVBQUUsNENBQTRDO0lBQ3RELE9BQU8sRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDLElBQUEscUJBQVcsR0FBRTtDQUNuQyxDQUFDO0FBTUssS0FBSyxVQUFVLEtBQUs7SUFDekIsTUFBTSxDQUFDLEVBQUUsQUFBRCxFQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztJQUVuQyxNQUFNLGVBQUs7U0FDUixLQUFLLENBQUMsdUNBQXVDLENBQUM7U0FDOUMsY0FBYyxDQUFDLElBQUksQ0FBQztTQUNwQixPQUFPLENBQUMsVUFBVSxDQUFDO1NBQ25CLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQztTQUN6QixPQUFPLENBQUMsVUFBVSxDQUFDO1NBQ25CLE9BQU8sQ0FBQyxZQUFZLENBQUM7U0FDckIsYUFBYSxFQUFFO1NBQ2YsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2pCLENBQUM7QUFaRCxzQkFZQyJ9
         
     | 
| 
      
 99 
     | 
    
         
            +
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9lbnRyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUUxQixPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM3QixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUl6RCxNQUFNLFVBQVUsR0FBK0Q7SUFDN0UsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixRQUFRLEVBQUUsMkNBQTJDO0lBQ3JELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2pCLEtBQUs7U0FDRixVQUFVLENBQUMsUUFBUSxFQUFFO1FBQ3BCLFFBQVEsRUFBRSxJQUFhO1FBQ3ZCLElBQUksRUFBRSxRQUFRO1FBQ2QsV0FBVyxFQUFFLG1DQUFtQztLQUNqRCxDQUFDO1NBQ0QsSUFBSSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7Q0FDckQsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBR2xCO0lBQ0YsT0FBTyxFQUFFLFdBQVc7SUFDcEIsUUFBUSxFQUFFLHFEQUFxRDtJQUMvRCxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNqQixLQUFLO1NBQ0YsTUFBTSxDQUFDLE9BQU8sRUFBRTtRQUNmLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLEtBQUs7UUFDZCxXQUFXLEVBQUUsMEJBQTBCO0tBQ3hDLENBQUM7U0FDRCxNQUFNLENBQUMsTUFBTSxFQUFFO1FB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
         
     | 
    
        package/lib/executable/error.js
    CHANGED
    
    | 
         @@ -1,28 +1,21 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       6 
     | 
    
         
            -
            exports.handleError = void 0;
         
     | 
| 
       7 
     | 
    
         
            -
            const callsite_record_1 = __importDefault(require("callsite-record"));
         
     | 
| 
       8 
     | 
    
         
            -
            const chalk_1 = __importDefault(require("chalk"));
         
     | 
| 
       9 
     | 
    
         
            -
            const console_1 = require("console");
         
     | 
| 
       10 
     | 
    
         
            -
            async function handleError(error) {
         
     | 
| 
      
 1 
     | 
    
         
            +
            import { warn } from 'node:console';
         
     | 
| 
      
 2 
     | 
    
         
            +
            import createCallsiteRecord from 'callsite-record';
         
     | 
| 
      
 3 
     | 
    
         
            +
            import chalk from 'chalk';
         
     | 
| 
      
 4 
     | 
    
         
            +
            export async function handleError(error) {
         
     | 
| 
       11 
5 
     | 
    
         
             
                if (!process.stdout.isTTY) {
         
     | 
| 
       12 
     | 
    
         
            -
                     
     | 
| 
      
 6 
     | 
    
         
            +
                    warn(error);
         
     | 
| 
       13 
7 
     | 
    
         
             
                }
         
     | 
| 
       14 
8 
     | 
    
         
             
                else {
         
     | 
| 
       15 
     | 
    
         
            -
                    const type =  
     | 
| 
       16 
     | 
    
         
            -
                    const message =  
     | 
| 
       17 
     | 
    
         
            -
                     
     | 
| 
       18 
     | 
    
         
            -
                    const record = ( 
     | 
| 
      
 9 
     | 
    
         
            +
                    const type = chalk.red.bold(`[${error.name}]`);
         
     | 
| 
      
 10 
     | 
    
         
            +
                    const message = chalk.white.bold(error.message.trim());
         
     | 
| 
      
 11 
     | 
    
         
            +
                    warn(`${type} ${message}`);
         
     | 
| 
      
 12 
     | 
    
         
            +
                    const record = createCallsiteRecord({
         
     | 
| 
       19 
13 
     | 
    
         
             
                        forError: error,
         
     | 
| 
       20 
14 
     | 
    
         
             
                    });
         
     | 
| 
       21 
15 
     | 
    
         
             
                    if (record) {
         
     | 
| 
       22 
     | 
    
         
            -
                         
     | 
| 
       23 
     | 
    
         
            -
                         
     | 
| 
      
 16 
     | 
    
         
            +
                        warn();
         
     | 
| 
      
 17 
     | 
    
         
            +
                        warn(await record.render({}));
         
     | 
| 
       24 
18 
     | 
    
         
             
                    }
         
     | 
| 
       25 
19 
     | 
    
         
             
                }
         
     | 
| 
       26 
20 
     | 
    
         
             
            }
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFpQkEsc0VBQW1EO0FBQ25ELGtEQUEwQjtBQUMxQixxQ0FBK0I7QUFNeEIsS0FBSyxVQUFVLFdBQVcsQ0FBQyxLQUFZO0lBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRTtRQUV6QixJQUFBLGNBQUksRUFBQyxLQUFLLENBQUMsQ0FBQztLQUNiO1NBQU07UUFFTCxNQUFNLElBQUksR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sT0FBTyxHQUFHLGVBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2RCxJQUFBLGNBQUksRUFBQyxHQUFHLElBQUksSUFBSSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRzNCLE1BQU0sTUFBTSxHQUFHLElBQUEseUJBQW9CLEVBQUM7WUFDbEMsUUFBUSxFQUFFLEtBQUs7U0FDaEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFBLGNBQUksR0FBRSxDQUFDO1lBQ1AsSUFBQSxjQUFJLEVBQUMsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDL0I7S0FDRjtBQUNILENBQUM7QUFwQkQsa0NBb0JDIn0=
         
     | 
| 
      
 21 
     | 
    
         
            +
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVwQyxPQUFPLG9CQUFvQixNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQU0xQixNQUFNLENBQUMsS0FBSyxVQUFVLFdBQVcsQ0FBQyxLQUFZO0lBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRTtRQUV6QixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDYjtTQUFNO1FBRUwsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUMvQyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFHM0IsTUFBTSxNQUFNLEdBQUcsb0JBQW9CLENBQUM7WUFDbEMsUUFBUSxFQUFFLEtBQUs7U0FDaEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksQ0FBQyxNQUFNLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMvQjtLQUNGO0FBQ0gsQ0FBQyJ9
         
     |