presetter 3.4.0 → 3.4.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/lib/content.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import type { MergeMode } from './template';
2
1
  import type { Config, PresetContext, PresetGraph, PresetNode, PresetterConfig, ResolvedPresetContext, Template } from './types';
3
2
  export declare function resolveContext(_: {
4
3
  graph: PresetGraph;
@@ -28,17 +27,6 @@ export declare function resolveVariable(_: {
28
27
  graph: PresetGraph;
29
28
  config: PresetterConfig;
30
29
  }): Record<string, string>;
31
- export declare function mergeTemplate(current: Record<string, Template>, candidate: Record<string, Template>, options: {
32
- mode: MergeMode;
33
- }): Record<string, Template>;
34
- export declare function resolveTemplate(_: {
35
- graph: PresetGraph;
36
- context: ResolvedPresetContext;
37
- }): Promise<Record<string, Template>>;
38
- export declare function resolveTemplateFromNode(_: {
39
- node: PresetNode;
40
- context: ResolvedPresetContext;
41
- }): Promise<Record<string, Template>>;
42
30
  export declare function resolveScripts(_: {
43
31
  graph: PresetGraph;
44
32
  context: ResolvedPresetContext<'variable'>;
@@ -47,3 +35,11 @@ export declare function resolveScriptsFromNode(_: {
47
35
  node: PresetNode;
48
36
  context: ResolvedPresetContext<'variable'>;
49
37
  }): Promise<Record<string, string>>;
38
+ export declare function resolveTemplate(_: {
39
+ graph: PresetGraph;
40
+ context: ResolvedPresetContext;
41
+ }): Promise<Record<string, Template>>;
42
+ export declare function resolveTemplateFromNode(_: {
43
+ node: PresetNode;
44
+ context: ResolvedPresetContext;
45
+ }): Promise<Record<string, Template>>;
package/lib/content.js CHANGED
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveScriptsFromNode = exports.resolveScripts = exports.resolveTemplateFromNode = exports.resolveTemplate = exports.mergeTemplate = exports.resolveVariable = exports.resolveSupplementaryScriptsFromNode = exports.resolveSupplementaryScripts = exports.resolveSupplementaryConfigFromNode = exports.resolveSupplementaryConfig = exports.resolveNoSymlinks = exports.resolveContext = void 0;
4
- const path_1 = require("path");
3
+ exports.resolveTemplateFromNode = exports.resolveTemplate = exports.resolveScriptsFromNode = exports.resolveScripts = exports.resolveVariable = exports.resolveSupplementaryScriptsFromNode = exports.resolveSupplementaryScripts = exports.resolveSupplementaryConfigFromNode = exports.resolveSupplementaryConfig = exports.resolveNoSymlinks = exports.resolveContext = void 0;
5
4
  const resolution_1 = require("./resolution");
6
5
  const template_1 = require("./template");
7
6
  async function resolveContext(_) {
@@ -36,31 +35,31 @@ async function resolveNoSymlinksFromNode(_) {
36
35
  }
37
36
  async function resolveSupplementaryConfig(_) {
38
37
  const { graph, context } = _;
39
- const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next, { mode: 'overwrite' }), {});
40
- return (0, template_1.merge)(fromPresets, context.custom.config, { mode: 'overwrite' });
38
+ const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next), {});
39
+ return (0, template_1.merge)(fromPresets, context.custom.config);
41
40
  }
42
41
  exports.resolveSupplementaryConfig = resolveSupplementaryConfig;
43
42
  async function resolveSupplementaryConfigFromNode(_) {
44
43
  const { node, context } = _;
45
44
  const { asset, nodes } = node;
46
- const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next, { mode: 'overwrite' }), {});
45
+ const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryConfigFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next), {});
47
46
  const fromPreset = await (0, resolution_1.loadDynamicMap)(asset.supplementaryConfig, context);
48
- return (0, template_1.merge)(fromChildren, fromPreset, { mode: 'addition' });
47
+ return (0, template_1.merge)(fromChildren, fromPreset);
49
48
  }
50
49
  exports.resolveSupplementaryConfigFromNode = resolveSupplementaryConfigFromNode;
51
50
  async function resolveSupplementaryScripts(_) {
52
51
  const { graph, context } = _;
53
- const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next, { mode: 'overwrite' }), {});
54
- return (0, template_1.merge)(fromPresets, context.custom.scripts, { mode: 'overwrite' });
52
+ const fromPresets = (await Promise.all(graph.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next), {});
53
+ return (0, template_1.merge)(fromPresets, context.custom.scripts);
55
54
  }
56
55
  exports.resolveSupplementaryScripts = resolveSupplementaryScripts;
57
56
  async function resolveSupplementaryScriptsFromNode(_) {
58
57
  const { node, context } = _;
59
58
  const { asset, nodes } = node;
60
59
  const { supplementaryScripts } = asset;
61
- const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next, { mode: 'overwrite' }), {});
60
+ const fromChildren = (await Promise.all(nodes.map(async (node) => resolveSupplementaryScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next), {});
62
61
  const fromPreset = await (0, resolution_1.loadDynamic)(supplementaryScripts !== null && supplementaryScripts !== void 0 ? supplementaryScripts : {}, context);
63
- return (0, template_1.merge)(fromChildren, fromPreset, { mode: 'addition' });
62
+ return (0, template_1.merge)(fromChildren, fromPreset);
64
63
  }
65
64
  exports.resolveSupplementaryScriptsFromNode = resolveSupplementaryScriptsFromNode;
66
65
  function resolveVariable(_) {
@@ -79,26 +78,32 @@ function resolveVariableFromNode(_) {
79
78
  .reduce((merged, next) => (0, template_1.merge)(merged, next), {});
80
79
  return (0, template_1.merge)(fromChildren, asset.variable);
81
80
  }
82
- function mergeTemplate(current, candidate, options) {
83
- const resolvedMerge = Object.fromEntries(Object.entries(current).map(([path, template]) => {
84
- const isIgnoreFile = !(0, path_1.extname)(path) && typeof template === 'string';
85
- const modeForText = isIgnoreFile ? 'addition' : 'overwrite';
86
- const mode = typeof template === 'string' ? modeForText : options.mode;
87
- return [path, (0, template_1.merge)(template, candidate[path], { mode })];
88
- }));
89
- return Object.assign(Object.assign({}, candidate), resolvedMerge);
81
+ async function resolveScripts(_) {
82
+ const { graph, context } = _;
83
+ const fromPresets = (await Promise.all(graph.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next), {});
84
+ const fromConfig = context.custom.scripts;
85
+ return (0, template_1.template)((0, template_1.merge)(fromPresets, fromConfig), context.custom.variable);
86
+ }
87
+ exports.resolveScripts = resolveScripts;
88
+ async function resolveScriptsFromNode(_) {
89
+ var _a;
90
+ const { node, context } = _;
91
+ const { asset, nodes } = node;
92
+ const fromChildren = (await Promise.all(nodes.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next), {});
93
+ const fromPreset = await (0, resolution_1.loadDynamic)((_a = asset.scripts) !== null && _a !== void 0 ? _a : {}, context);
94
+ return (0, template_1.merge)(fromChildren, fromPreset);
90
95
  }
91
- exports.mergeTemplate = mergeTemplate;
96
+ exports.resolveScriptsFromNode = resolveScriptsFromNode;
92
97
  async function resolveTemplate(_) {
93
98
  var _a;
94
99
  const { graph, context } = _;
95
- const fromPreset = (await Promise.all(graph.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((merged, next) => mergeTemplate(merged, next, { mode: 'overwrite' }), {});
96
- const merged = Object.fromEntries(Object.entries(fromPreset).map(([path, current]) => {
100
+ const fromPreset = (await Promise.all(graph.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((merged, next) => (0, template_1.mergeTemplate)(merged, next), {});
101
+ const customTemplate = Object.fromEntries(Object.entries(fromPreset).map(([path, current]) => {
97
102
  const config = context.custom.config[(0, resolution_1.getConfigKey)(path)];
98
103
  const candidate = Array.isArray(config) ? config.join('\n') : config;
99
- const options = { mode: 'addition' };
100
- return [path, (0, template_1.merge)(current, candidate, options)];
104
+ return [path, candidate !== null && candidate !== void 0 ? candidate : current];
101
105
  }));
106
+ const merged = (0, template_1.mergeTemplate)(fromPreset, customTemplate);
102
107
  const resolvedTemplate = (0, template_1.filter)(merged, ...((_a = context.custom.ignores) !== null && _a !== void 0 ? _a : []));
103
108
  return (0, template_1.template)(resolvedTemplate, context.custom.variable);
104
109
  }
@@ -107,29 +112,13 @@ async function resolveTemplateFromNode(_) {
107
112
  const { node, context } = _;
108
113
  const { asset, nodes } = node;
109
114
  const { supplementaryIgnores } = asset;
110
- const fromChildren = (await Promise.all(nodes.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((current, next) => mergeTemplate(current, next, { mode: 'overwrite' }), {});
115
+ const fromChildren = (await Promise.all(nodes.map(async (node) => resolveTemplateFromNode({ node, context })))).reduce((current, next) => (0, template_1.mergeTemplate)(current, next), {});
111
116
  const fromPreset = await (0, resolution_1.loadDynamicMap)(asset.template, context);
112
- const merged = mergeTemplate(fromChildren, fromPreset, { mode: 'addition' });
117
+ const merged = (0, template_1.mergeTemplate)(fromChildren, fromPreset);
113
118
  const ignoreRules = typeof supplementaryIgnores === 'function'
114
119
  ? await supplementaryIgnores(context)
115
120
  : supplementaryIgnores;
116
121
  return (0, template_1.filter)(merged, ...(ignoreRules !== null && ignoreRules !== void 0 ? ignoreRules : []));
117
122
  }
118
123
  exports.resolveTemplateFromNode = resolveTemplateFromNode;
119
- async function resolveScripts(_) {
120
- const { graph, context } = _;
121
- const fromPresets = (await Promise.all(graph.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next, { mode: 'overwrite' }), {});
122
- const fromConfig = context.custom.scripts;
123
- return (0, template_1.template)((0, template_1.merge)(fromPresets, fromConfig, { mode: 'addition' }), context.custom.variable);
124
- }
125
- exports.resolveScripts = resolveScripts;
126
- async function resolveScriptsFromNode(_) {
127
- var _a;
128
- const { node, context } = _;
129
- const { asset, nodes } = node;
130
- const fromChildren = (await Promise.all(nodes.map(async (node) => resolveScriptsFromNode({ node, context })))).reduce((merged, next) => (0, template_1.merge)(merged, next, { mode: 'overwrite' }), {});
131
- const fromPreset = await (0, resolution_1.loadDynamic)((_a = asset.scripts) !== null && _a !== void 0 ? _a : {}, context);
132
- return (0, template_1.merge)(fromChildren, fromPreset, { mode: 'addition' });
133
- }
134
- exports.resolveScriptsFromNode = resolveScriptsFromNode;
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWVBLCtCQUErQjtBQUUvQiw2Q0FBeUU7QUFDekUseUNBQXFEO0FBb0I5QyxLQUFLLFVBQVUsY0FBYyxDQUFDLENBR3BDO0lBQ0MsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztJQUdwQixNQUFNLE9BQU8sbUNBQ1IsQ0FBQyxDQUFDLE9BQU8sS0FDWixNQUFNLGtDQUNELENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUNuQixRQUFRLEVBQUUsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BRWpFLENBQUM7SUFFRixNQUFNLE1BQU0sR0FBRyxNQUFNLDBCQUEwQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDcEUsTUFBTSxVQUFVLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sT0FBTyxHQUFHLE1BQU0sMkJBQTJCLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUd0RSxPQUFPO1FBQ0wsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1FBQ3RCLE1BQU0sa0NBQ0QsT0FBTyxDQUFDLE1BQU0sS0FDakIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUM3QixNQUFNO1lBQ04sVUFBVTtZQUNWLE9BQU8sR0FDUjtLQUNGLENBQUM7QUFDSixDQUFDO0FBOUJELHdDQThCQztBQVNNLEtBQUssVUFBVSxpQkFBaUIsQ0FBQyxDQUd2Qzs7SUFDQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUU3QixNQUFNLFVBQVUsR0FB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
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWVBLDZDQUF5RTtBQUN6RSx5Q0FBb0U7QUFtQjdELEtBQUssVUFBVSxjQUFjLENBQUMsQ0FHcEM7SUFDQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBR3BCLE1BQU0sT0FBTyxtQ0FDUixDQUFDLENBQUMsT0FBTyxLQUNaLE1BQU0sa0NBQ0QsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQ25CLFFBQVEsRUFBRSxlQUFlLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsTUFFakUsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sMEJBQTBCLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNwRSxNQUFNLFVBQVUsR0FBRyxNQUFNLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDL0QsTUFBTSxPQUFPLEdBQUcsTUFBTSwyQkFBMkIsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBR3RFLE9BQU87UUFDTCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07UUFDdEIsTUFBTSxrQ0FDRCxPQUFPLENBQUMsTUFBTSxLQUNqQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQzdCLE1BQU07WUFDTixVQUFVO1lBQ1YsT0FBTyxHQUNSO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUE5QkQsd0NBOEJDO0FBU00sS0FBSyxVQUFVLGlCQUFpQixDQUFDLENBR3ZDOztJQUNDLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRTdCLE1BQU0sVUFBVSxHQUFHLENBQ2pCLE1BQU0s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
package/lib/template.d.ts CHANGED
@@ -1,11 +1,16 @@
1
1
  import type { IgnoreRule } from './types';
2
- export declare type MergeMode = 'addition' | 'overwrite';
2
+ import type { JsonObject, JsonValue } from 'type-fest';
3
+ declare type MergedType<A, B> = A extends JsonObject ? B extends JsonObject ? A & B : MergedArray<A, B> : MergedArray<A, B>;
4
+ declare type MergedArray<A, B> = A extends JsonValue[] ? B extends JsonValue[] ? Array<A[number] | B[number]> : keyof B extends `${number}` ? JsonValue[] : B : B;
3
5
  export declare function filter<C extends Record<string, unknown>>(subject: C, ...ignores: IgnoreRule[]): C;
4
6
  export declare function filter(subject: unknown[], ...ignores: IgnoreRule[]): unknown[];
5
- export declare function isJSON(subject: unknown): subject is Record<string, any>;
6
- export declare function merge<S extends string | Record<string, any> | unknown[]>(source: S, replacement?: string | Record<string, any> | unknown[], options?: {
7
- mode?: MergeMode;
8
- }): S;
7
+ export declare function isJSON(subject: unknown): subject is JsonObject;
8
+ export declare function merge<S extends JsonValue, T extends JsonValue>(source: S, target?: T): MergedType<S, T>;
9
+ export declare function mergeArray<S extends JsonValue, T extends JsonValue>(source: S[], target?: T): MergedArray<S[], T>;
10
+ export declare function mergeArrays<S extends JsonValue, T extends JsonValue>(source: S[], target: T[]): MergedArray<S[], T[]>;
11
+ export declare function mergeObject<S extends JsonObject, T extends JsonValue>(source: S, target?: T): MergedType<S, T>;
12
+ export declare function mergeTemplate(source: Record<string, JsonObject | string>, target: Record<string, JsonObject | string>): Record<string, JsonObject | string>;
9
13
  export declare function template(content: string, parameter: Record<string, string>): string;
10
14
  export declare function template<Content extends Record<string, unknown> | unknown[]>(content: Content, parameter: Record<string, string>): Content;
11
15
  export declare function template(content: unknown, parameter: Record<string, string>): unknown;
16
+ export {};
package/lib/template.js CHANGED
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.template = exports.merge = exports.isJSON = exports.filter = void 0;
6
+ exports.template = exports.mergeTemplate = exports.mergeObject = exports.mergeArrays = exports.mergeArray = exports.merge = exports.isJSON = exports.filter = void 0;
7
+ const path_1 = require("path");
7
8
  const pupa_1 = __importDefault(require("pupa"));
8
9
  function filter(subject, ...ignores) {
9
10
  const fieldsToIgnore = ignores.filter((ignore) => typeof ignore !== 'object');
@@ -31,53 +32,69 @@ function isJSON(subject) {
31
32
  ].every((value) => value);
32
33
  }
33
34
  exports.isJSON = isJSON;
34
- function merge(source, replacement, options) {
35
- const { mode = 'addition' } = options !== null && options !== void 0 ? options : {};
35
+ function merge(source, target) {
36
36
  if (Array.isArray(source)) {
37
- return replace(source, replacement, { mode });
37
+ return mergeArray(source, target);
38
38
  }
39
- else if (typeof source === 'string' || typeof replacement === 'string') {
40
- return mergeText(source, replacement, { mode });
39
+ else if (isJSON(source)) {
40
+ return mergeObject(source, target);
41
41
  }
42
- const keys = [...Object.keys(source), ...Object.keys(replacement !== null && replacement !== void 0 ? replacement : {})];
43
- const entries = keys.map((key) => [
44
- key,
45
- replace(source[key], replacement === null || replacement === void 0 ? void 0 : replacement[key], { mode }),
46
- ]);
47
- return Object.assign({}, ...entries.map(([key, value]) => ({
48
- [key]: value,
49
- })));
42
+ return (target !== null && target !== void 0 ? target : source);
50
43
  }
51
44
  exports.merge = merge;
52
- function mergeText(current, candidate, options) {
53
- if (typeof current === 'string' &&
54
- typeof candidate === 'string' &&
55
- options.mode === 'addition') {
56
- return [...new Set(`${current}\n${candidate}`.split('\n'))].join('\n');
57
- }
58
- return typeof current === typeof candidate ? candidate : current;
59
- }
60
- function replace(source, replacement, options) {
61
- const { mode } = options;
62
- if (mode === 'addition' && Array.isArray(source)) {
63
- return replaceArray(source, replacement);
45
+ function mergeArray(source, target) {
46
+ if (Array.isArray(target)) {
47
+ return mergeArrays(source, target);
64
48
  }
65
- else if (isJSON(source) && isJSON(replacement)) {
66
- return merge(source, replacement, options);
49
+ else if (isJSON(target) &&
50
+ [...Object.keys(target)].every((key) => parseInt(key) >= 0)) {
51
+ return [...source].map((value, key) => merge(value, target[key]));
67
52
  }
68
- return replacement === undefined ? source : replacement;
53
+ return (target !== null && target !== void 0 ? target : source);
69
54
  }
70
- function replaceArray(source, replacement) {
71
- if (isJSON(replacement)) {
72
- return source.map((value, index) => replace(value, replacement[index], { mode: 'addition' }));
73
- }
74
- else if (Array.isArray(replacement)) {
75
- return [...new Set([...source, ...replacement]).values()];
55
+ exports.mergeArray = mergeArray;
56
+ function mergeArrays(source, target) {
57
+ const isPrimitive = source.every((value) => !isJSON(value)) &&
58
+ target.every((value) => !isJSON(value));
59
+ if (isPrimitive) {
60
+ return [...new Set([...source, ...target])];
76
61
  }
77
- else {
78
- return replacement !== null && replacement !== void 0 ? replacement : source;
62
+ return target;
63
+ }
64
+ exports.mergeArrays = mergeArrays;
65
+ function mergeObject(source, target) {
66
+ if (isJSON(target)) {
67
+ const mergedSource = Object.fromEntries(Object.entries(source).map(([key, value]) => [
68
+ key,
69
+ merge(value, target[key]),
70
+ ]));
71
+ return Object.assign(Object.assign(Object.assign({}, mergedSource), target), mergedSource);
79
72
  }
73
+ return (target !== null && target !== void 0 ? target : source);
74
+ }
75
+ exports.mergeObject = mergeObject;
76
+ function mergeTemplate(source, target) {
77
+ const mergedSource = Object.fromEntries(Object.entries(source).map(([path, template]) => {
78
+ const replacement = target[path];
79
+ const isIgnoreFile = !(0, path_1.extname)(path) &&
80
+ (0, path_1.basename)(path).startsWith('.') &&
81
+ typeof template === 'string' &&
82
+ typeof replacement === 'string';
83
+ if (isIgnoreFile) {
84
+ const mergedSet = new Set([
85
+ ...template.split('\n'),
86
+ ...replacement.split('\n'),
87
+ ]);
88
+ return [path, [...mergedSet].join('\n')];
89
+ }
90
+ else if (isJSON(template) && isJSON(replacement)) {
91
+ return [path, merge(template, replacement)];
92
+ }
93
+ return [path, replacement !== null && replacement !== void 0 ? replacement : template];
94
+ }));
95
+ return Object.assign(Object.assign({}, target), mergedSource);
80
96
  }
97
+ exports.mergeTemplate = mergeTemplate;
81
98
  function template(content, parameter) {
82
99
  if (typeof content === 'string') {
83
100
  return (0, pupa_1.default)(content, parameter);
@@ -95,4 +112,4 @@ function template(content, parameter) {
95
112
  }
96
113
  }
97
114
  exports.template = template;
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvdGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBZUEsZ0RBQXdCO0FBaUJ4QixTQUFnQixNQUFNLENBQ3BCLE9BQTRDLEVBQzVDLEdBQUcsT0FBcUI7SUFHeEIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FDbkMsQ0FBQyxNQUFNLEVBQTZCLEVBQUUsQ0FBQyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQ2xFLENBQUM7SUFHRixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDMUIsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDbEU7SUFHRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUNsQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDNUUsQ0FBQztJQUdGLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQzlCLENBQUMsTUFBTSxFQUF3QyxFQUFFLENBQy9DLE9BQU8sTUFBTSxLQUFLLFFBQVEsQ0FDN0IsQ0FBQztJQUdGLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FDckIsQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUMvQixNQUFNLENBQUMsV0FBVyxDQUNoQixNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsR0FBRyxDQUNsQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFxQixFQUFFLENBQUM7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
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvdGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBZUEsK0JBQXlDO0FBQ3pDLGdEQUF3QjtBQThCeEIsU0FBZ0IsTUFBTSxDQUNwQixPQUE0QyxFQUM1QyxHQUFHLE9BQXFCO0lBR3hCLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQ25DLENBQUMsTUFBTSxFQUE2QixFQUFFLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUNsRSxDQUFDO0lBR0YsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzFCLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ2xFO0lBR0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FDbEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzVFLENBQUM7SUFHRixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUM5QixDQUFDLE1BQU0sRUFBd0MsRUFBRSxDQUMvQyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQzdCLENBQUM7SUFHRixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQ3JCLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FDL0IsTUFBTSxDQUFDLFdBQVcsQ0FDaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEdBQUcsQ0FDbEMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFB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
package/lib/types.d.ts CHANGED
@@ -1,18 +1,19 @@
1
1
  import type { PackageJson } from 'read-pkg-up';
2
+ import type { JsonObject } from 'type-fest';
2
3
  export declare type PresetGraph = PresetNode[];
3
4
  export declare type PresetNode = {
4
5
  name: string;
5
6
  asset: PresetAsset;
6
7
  nodes: PresetGraph;
7
8
  };
8
- export interface PresetterConfig {
9
+ export declare type PresetterConfig = {
9
10
  preset: string | string[];
10
- config?: Record<string, Record<string, unknown> | string[]>;
11
+ config?: Record<string, JsonObject | string[]>;
11
12
  scripts?: Record<string, string>;
12
13
  variable?: Record<string, string>;
13
14
  ignores?: IgnoreRule[];
14
15
  noSymlinks?: string[];
15
- }
16
+ };
16
17
  export interface PresetAsset {
17
18
  extends?: string[];
18
19
  template?: TemplateMap | TemplateMapGenerator;
@@ -24,7 +25,7 @@ export interface PresetAsset {
24
25
  supplementaryScripts?: Record<string, string> | string;
25
26
  }
26
27
  export interface ResolvedPresetAsset extends Omit<PresetAsset, 'extends'> {
27
- template?: Record<string, Record<string, unknown>>;
28
+ template?: Record<string, Template>;
28
29
  noSymlinks?: string[];
29
30
  scripts?: Record<string, string>;
30
31
  variable?: Record<string, string>;
@@ -49,11 +50,11 @@ export interface ResolvedPresetContext<F extends keyof PresetterConfig = 'config
49
50
  };
50
51
  }
51
52
  declare type Path = string;
52
- export declare type Template = string | Record<string, unknown>;
53
+ export declare type Template = string | JsonObject;
53
54
  export declare type TemplateGenerator = Generator<Template>;
54
55
  export declare type TemplateMap = Record<string, Path | Template | TemplateGenerator>;
55
56
  export declare type TemplateMapGenerator = Generator<TemplateMap>;
56
- export declare type Config = string[] | Record<string, unknown>;
57
+ export declare type Config = string[] | JsonObject;
57
58
  export declare type ConfigGenerator = Generator<Config>;
58
59
  export declare type ConfigMap = Record<string, Path | Config | ConfigGenerator>;
59
60
  export declare type ConfigMapGenerator = Generator<ConfigMap, 'variable'>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "presetter",
3
- "version": "3.4.0",
3
+ "version": "3.4.1",
4
4
  "engines": {
5
5
  "node": ">=12.10.0"
6
6
  },
@@ -59,19 +59,20 @@
59
59
  "@types/yargs": "^17.0.0",
60
60
  "presetter-preset-strict": "file:../preset-strict",
61
61
  "ts-node": "^10.0.0",
62
- "tsconfig-paths": "^3.0.0",
62
+ "tsconfig-paths": "^4.0.0",
63
+ "type-fest": "^2.0.0",
63
64
  "typescript": "^4.0.0"
64
65
  },
65
66
  "dependencies": {
66
- "@npmcli/arborist": "^4.0.0",
67
- "@npmcli/config": "^2.2.0",
67
+ "@npmcli/arborist": "^5.0.0",
68
+ "@npmcli/config": "^4.0.0",
68
69
  "callsite-record": "^4.0.0",
69
70
  "chalk": "^4.0.0",
70
71
  "execa": "^5.0.0",
71
72
  "fs-extra": "^10.0.0",
72
73
  "js-yaml": "^4.0.0",
73
74
  "lodash": "^4.0.0",
74
- "mvdan-sh": "^0.5.0",
75
+ "mvdan-sh": "^0.10.0",
75
76
  "pupa": "^2.0.0",
76
77
  "read-pkg": "^5.0.0",
77
78
  "read-pkg-up": "^7.0.0",