@udondan/avanti 0.22.0 → 0.23.0
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/README.md +168 -12
- package/dist/commands/diff.d.ts.map +1 -1
- package/dist/commands/diff.js +21 -12
- package/dist/commands/diff.js.map +1 -1
- package/dist/commands/lock.d.ts.map +1 -1
- package/dist/commands/lock.js +8 -4
- package/dist/commands/lock.js.map +1 -1
- package/dist/commands/pull.d.ts.map +1 -1
- package/dist/commands/pull.js +38 -16
- package/dist/commands/pull.js.map +1 -1
- package/dist/condition.js +2 -2
- package/dist/condition.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +41 -5
- package/dist/config.js.map +1 -1
- package/dist/diff.d.ts +0 -4
- package/dist/diff.d.ts.map +1 -1
- package/dist/diff.js +0 -51
- package/dist/diff.js.map +1 -1
- package/dist/paths.d.ts +7 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +141 -0
- package/dist/paths.js.map +1 -0
- package/dist/sources/index.js +2 -2
- package/dist/sources/index.js.map +1 -1
- package/dist/types.d.ts +3 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/variables.d.ts +5 -0
- package/dist/variables.d.ts.map +1 -1
- package/dist/variables.js +186 -1
- package/dist/variables.js.map +1 -1
- package/dist/writer.d.ts +1 -0
- package/dist/writer.d.ts.map +1 -1
- package/dist/writer.js +42 -1
- package/dist/writer.js.map +1 -1
- package/package.json +2 -2
package/dist/paths.js
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.resolveTargetPath = resolveTargetPath;
|
|
37
|
+
exports.buildEntryPreVars = buildEntryPreVars;
|
|
38
|
+
exports.expandBraces = expandBraces;
|
|
39
|
+
const os = __importStar(require("os"));
|
|
40
|
+
const path = __importStar(require("path"));
|
|
41
|
+
const variables_1 = require("./variables");
|
|
42
|
+
function resolveTargetPath(entry, relPath, workingDir, vars = Object.create(null)) {
|
|
43
|
+
let resolved;
|
|
44
|
+
const target = entry.target ? (0, variables_1.resolveVars)(entry.target, vars) : undefined;
|
|
45
|
+
if (target) {
|
|
46
|
+
if (target.startsWith('~/')) {
|
|
47
|
+
const home = os.homedir();
|
|
48
|
+
const expanded = path.resolve(home, target.slice(2));
|
|
49
|
+
const homePrefix = home.endsWith(path.sep) ? home : home + path.sep;
|
|
50
|
+
if (expanded !== home && !expanded.startsWith(homePrefix)) {
|
|
51
|
+
throw new Error(`Target path "${expanded}" escapes home directory "${home}".`);
|
|
52
|
+
}
|
|
53
|
+
if (target.endsWith('/') || target.endsWith(path.sep)) {
|
|
54
|
+
return path.resolve(expanded, relPath);
|
|
55
|
+
}
|
|
56
|
+
return expanded;
|
|
57
|
+
}
|
|
58
|
+
if (path.isAbsolute(target)) {
|
|
59
|
+
const fsRoot = path.parse(workingDir).root;
|
|
60
|
+
if (workingDir !== fsRoot) {
|
|
61
|
+
throw new Error(`Absolute target path "${target}" is not allowed unless the working directory is the filesystem root. Use a relative path or run with -w ${fsRoot}.`);
|
|
62
|
+
}
|
|
63
|
+
if (target.endsWith('/') || target.endsWith(path.sep)) {
|
|
64
|
+
return path.resolve(target, relPath);
|
|
65
|
+
}
|
|
66
|
+
return target;
|
|
67
|
+
}
|
|
68
|
+
if (target.endsWith('/') || target.endsWith(path.sep)) {
|
|
69
|
+
resolved = path.resolve(workingDir, target, relPath);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
resolved = path.resolve(workingDir, target);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
resolved = path.resolve(workingDir, relPath);
|
|
77
|
+
}
|
|
78
|
+
assertWithinWorkingDir(resolved, workingDir);
|
|
79
|
+
return resolved;
|
|
80
|
+
}
|
|
81
|
+
// Build pre-fetch vars for a file entry: merges per-file path vars into the
|
|
82
|
+
// global vars when the entry has a fixed (non-directory) target path. Used by
|
|
83
|
+
// pull, diff, and lock so that $path/$filename/etc. are available in source
|
|
84
|
+
// URLs and conditions before the fetch happens.
|
|
85
|
+
function buildEntryPreVars(entry, isSelf, workingDir, vars) {
|
|
86
|
+
if (isSelf || !entry.target)
|
|
87
|
+
return vars;
|
|
88
|
+
try {
|
|
89
|
+
const resolvedTargetStr = (0, variables_1.resolveVars)(entry.target, vars);
|
|
90
|
+
if (!resolvedTargetStr.endsWith('/') &&
|
|
91
|
+
!resolvedTargetStr.endsWith(path.sep)) {
|
|
92
|
+
const fixedTarget = resolveTargetPath(entry, '', workingDir, vars);
|
|
93
|
+
return Object.assign(Object.create(null), vars, (0, variables_1.buildFileVars)(fixedTarget));
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
catch {
|
|
97
|
+
// target unresolvable — leave preVars as global vars
|
|
98
|
+
}
|
|
99
|
+
return vars;
|
|
100
|
+
}
|
|
101
|
+
function expandBraces(pattern, limit = 100) {
|
|
102
|
+
// Require a comma inside the braces — {foo} without a comma is left literal,
|
|
103
|
+
// matching bash behaviour and avoiding accidental expansion of filenames like
|
|
104
|
+
// {param} that some frameworks use.
|
|
105
|
+
//
|
|
106
|
+
// Iterative DFS (explicit stack) avoids call-stack overflow for patterns
|
|
107
|
+
// with many brace groups. Alternatives are pushed in reverse so that
|
|
108
|
+
// pop() processes them left-to-right, preserving natural ordering.
|
|
109
|
+
const results = [];
|
|
110
|
+
const stack = [pattern];
|
|
111
|
+
while (stack.length > 0) {
|
|
112
|
+
const p = stack.pop();
|
|
113
|
+
const match = /\{([^{}]*,[^{}]*)\}/.exec(p);
|
|
114
|
+
if (!match) {
|
|
115
|
+
results.push(p);
|
|
116
|
+
if (results.length > limit) {
|
|
117
|
+
throw new Error(`brace expansion exceeds ${limit} entries`);
|
|
118
|
+
}
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const prefix = p.slice(0, match.index);
|
|
122
|
+
const suffix = p.slice(match.index + match[0].length);
|
|
123
|
+
const alts = match[1].split(',');
|
|
124
|
+
if (results.length + stack.length + alts.length > limit) {
|
|
125
|
+
throw new Error(`brace expansion exceeds ${limit} entries`);
|
|
126
|
+
}
|
|
127
|
+
for (let i = alts.length - 1; i >= 0; i--) {
|
|
128
|
+
stack.push(prefix + alts[i] + suffix);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return results;
|
|
132
|
+
}
|
|
133
|
+
function assertWithinWorkingDir(resolvedPath, workingDir) {
|
|
134
|
+
const prefix = workingDir.endsWith(path.sep)
|
|
135
|
+
? workingDir
|
|
136
|
+
: workingDir + path.sep;
|
|
137
|
+
if (resolvedPath !== workingDir && !resolvedPath.startsWith(prefix)) {
|
|
138
|
+
throw new Error(`Target path "${resolvedPath}" escapes working directory "${workingDir}".`);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"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"}
|
package/dist/sources/index.js
CHANGED
|
@@ -44,7 +44,7 @@ const path = __importStar(require("path"));
|
|
|
44
44
|
const logger_1 = require("../logger");
|
|
45
45
|
const fetch_1 = require("../fetch");
|
|
46
46
|
const condition_1 = require("../condition");
|
|
47
|
-
const
|
|
47
|
+
const paths_1 = require("../paths");
|
|
48
48
|
const variables_1 = require("../variables");
|
|
49
49
|
const http_1 = require("./http");
|
|
50
50
|
const local_1 = require("./local");
|
|
@@ -611,7 +611,7 @@ function assertTextFiles(files, context) {
|
|
|
611
611
|
async function fetchSource(entry, workingDir, vars = {}, cache, getTargetPathOverride, pendingWrites) {
|
|
612
612
|
const { src } = entry;
|
|
613
613
|
const getTargetPath = getTargetPathOverride ??
|
|
614
|
-
(() => (0,
|
|
614
|
+
(() => (0, paths_1.resolveTargetPath)(entry, '', workingDir, vars));
|
|
615
615
|
// List src → fetch each, then merge as JSON or concatenate with newline
|
|
616
616
|
if (Array.isArray(src)) {
|
|
617
617
|
const parts = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sources/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sources/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export interface Condition {
|
|
|
5
5
|
os?: OsPlatform | OsPlatform[];
|
|
6
6
|
exists?: string;
|
|
7
7
|
exec?: string;
|
|
8
|
-
target_exists?:
|
|
8
|
+
target_exists?: boolean;
|
|
9
9
|
not?: boolean;
|
|
10
10
|
}
|
|
11
11
|
export interface ReplaceRule {
|
|
@@ -165,6 +165,7 @@ export interface FileEntry {
|
|
|
165
165
|
if?: Condition | Condition[];
|
|
166
166
|
ifAny?: Condition[];
|
|
167
167
|
mode?: string;
|
|
168
|
+
backup?: string;
|
|
168
169
|
replace?: ReplaceRule[];
|
|
169
170
|
post?: string;
|
|
170
171
|
template?: TemplateEngine | true;
|
|
@@ -183,6 +184,7 @@ export interface VariableEntry {
|
|
|
183
184
|
export type VariableSpec = Record<string, string | VariableEntry>;
|
|
184
185
|
export interface AvantiConfig {
|
|
185
186
|
variables?: VariableSpec;
|
|
187
|
+
backup_roots?: string[];
|
|
186
188
|
files: Record<string, FileEntry>;
|
|
187
189
|
}
|
|
188
190
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE/C,MAAM,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC;AAEhC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/variables.d.ts
CHANGED
|
@@ -4,4 +4,9 @@ export declare const RESERVED_VAR_NAMES: Set<string>;
|
|
|
4
4
|
export declare function validateVariables(vars: Variables | VariableSpec): void;
|
|
5
5
|
export declare function resolveVars(value: string, vars: Variables): string;
|
|
6
6
|
export declare function resolveVarsShellSafe(value: string, vars: Variables): string;
|
|
7
|
+
export declare function buildFileVars(targetPath: string): Variables;
|
|
8
|
+
export declare function buildDateVars(now?: Date): Variables;
|
|
9
|
+
export declare function resolveBackupCounter(pattern: string): string;
|
|
10
|
+
export declare function assertBackupPathAllowed(backupPath: string, workingDir: string, backupRoots: string[]): void;
|
|
11
|
+
export declare function resolveBackupPath(pattern: string, targetPath: string, workingDir: string, vars: Variables, backupRoots: string[]): string;
|
|
7
12
|
//# sourceMappingURL=variables.d.ts.map
|
package/dist/variables.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variables.d.ts","sourceRoot":"","sources":["../src/variables.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"variables.d.ts","sourceRoot":"","sources":["../src/variables.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGlD,eAAO,MAAM,aAAa,aAAsB,CAAC;AAGjD,eAAO,MAAM,kBAAkB,aAW7B,CAAC;AAEH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,YAAY,GAAG,IAAI,CAMtE;AAOD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAmBlE;AAgBD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAmB3E;AAGD,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAa3D;AAGD,wBAAgB,aAAa,CAAC,GAAG,GAAE,IAAiB,GAAG,SAAS,CAc/D;AAYD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA2B5D;AA6BD,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EAAE,GACpB,IAAI,CAkBN;AASD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,MAAM,EAAE,GACpB,MAAM,CAmCR"}
|
package/dist/variables.js
CHANGED
|
@@ -1,13 +1,65 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.RESERVED_VAR_NAMES = exports.RESERVED_VARS = void 0;
|
|
4
37
|
exports.validateVariables = validateVariables;
|
|
5
38
|
exports.resolveVars = resolveVars;
|
|
6
39
|
exports.resolveVarsShellSafe = resolveVarsShellSafe;
|
|
40
|
+
exports.buildFileVars = buildFileVars;
|
|
41
|
+
exports.buildDateVars = buildDateVars;
|
|
42
|
+
exports.resolveBackupCounter = resolveBackupCounter;
|
|
43
|
+
exports.assertBackupPathAllowed = assertBackupPathAllowed;
|
|
44
|
+
exports.resolveBackupPath = resolveBackupPath;
|
|
45
|
+
const fs = __importStar(require("fs"));
|
|
46
|
+
const os = __importStar(require("os"));
|
|
47
|
+
const path = __importStar(require("path"));
|
|
7
48
|
// $latest is a special sentinel used by the GitLab source to resolve the newest tag.
|
|
8
49
|
exports.RESERVED_VARS = new Set(['latest']);
|
|
9
50
|
// Names users cannot define as variables (passthrough-reserved + system-injected).
|
|
10
|
-
exports.RESERVED_VAR_NAMES = new Set([
|
|
51
|
+
exports.RESERVED_VAR_NAMES = new Set([
|
|
52
|
+
...exports.RESERVED_VARS,
|
|
53
|
+
'self',
|
|
54
|
+
'path',
|
|
55
|
+
'filename',
|
|
56
|
+
'basename',
|
|
57
|
+
'ext',
|
|
58
|
+
'dirname',
|
|
59
|
+
'basedir',
|
|
60
|
+
'date',
|
|
61
|
+
'datetime',
|
|
62
|
+
]);
|
|
11
63
|
function validateVariables(vars) {
|
|
12
64
|
for (const name of Object.keys(vars)) {
|
|
13
65
|
if (exports.RESERVED_VAR_NAMES.has(name)) {
|
|
@@ -70,4 +122,137 @@ function resolveVarsShellSafe(value, vars) {
|
|
|
70
122
|
return shellQuote(vars[varName]);
|
|
71
123
|
});
|
|
72
124
|
}
|
|
125
|
+
// Build the per-file path variables for a resolved absolute target path.
|
|
126
|
+
function buildFileVars(targetPath) {
|
|
127
|
+
const filename = path.basename(targetPath);
|
|
128
|
+
const ext = path.extname(targetPath).replace(/^\./, '');
|
|
129
|
+
const basename = ext ? filename.slice(0, -(ext.length + 1)) : filename;
|
|
130
|
+
const dirname = path.dirname(targetPath);
|
|
131
|
+
return Object.assign(Object.create(null), {
|
|
132
|
+
path: targetPath,
|
|
133
|
+
filename,
|
|
134
|
+
basename,
|
|
135
|
+
ext,
|
|
136
|
+
dirname,
|
|
137
|
+
basedir: path.basename(dirname),
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
// Build date/datetime variables from a given Date (defaults to now).
|
|
141
|
+
function buildDateVars(now = new Date()) {
|
|
142
|
+
const pad = (n, w = 2) => String(n).padStart(w, '0');
|
|
143
|
+
const date = [
|
|
144
|
+
now.getFullYear(),
|
|
145
|
+
pad(now.getMonth() + 1),
|
|
146
|
+
pad(now.getDate()),
|
|
147
|
+
].join('-');
|
|
148
|
+
const datetime = [
|
|
149
|
+
date,
|
|
150
|
+
pad(now.getHours()),
|
|
151
|
+
pad(now.getMinutes()),
|
|
152
|
+
pad(now.getSeconds()),
|
|
153
|
+
].join('-');
|
|
154
|
+
return Object.assign(Object.create(null), { date, datetime });
|
|
155
|
+
}
|
|
156
|
+
// Counter token pattern: one or more 'd' characters preceded by '%'.
|
|
157
|
+
// Width is validated separately (max 3) to give a clear error on oversized tokens.
|
|
158
|
+
const COUNTER_TOKEN = /%d+/g;
|
|
159
|
+
const MAX_COUNTER_WIDTH = 3;
|
|
160
|
+
// Resolve the auto-increment counter in a backup path pattern.
|
|
161
|
+
// The pattern must contain at most one %d/%dd/%ddd token. Width > 3 is
|
|
162
|
+
// rejected to prevent unbounded filesystem scanning. Scans from slot 1
|
|
163
|
+
// upward to find the lowest path that does not yet exist on disk.
|
|
164
|
+
// Throws if all slots are taken or if the token width exceeds the maximum.
|
|
165
|
+
function resolveBackupCounter(pattern) {
|
|
166
|
+
const tokens = [...pattern.matchAll(COUNTER_TOKEN)];
|
|
167
|
+
if (tokens.length === 0)
|
|
168
|
+
return pattern;
|
|
169
|
+
if (tokens.length > 1) {
|
|
170
|
+
throw new Error(`backup path may contain at most one counter token (%d+), found ${tokens.length}: "${pattern}"`);
|
|
171
|
+
}
|
|
172
|
+
const token = tokens[0][0];
|
|
173
|
+
const width = token.length - 1; // number of 'd' characters
|
|
174
|
+
if (width > MAX_COUNTER_WIDTH) {
|
|
175
|
+
throw new Error(`backup counter width ${width} exceeds maximum ${MAX_COUNTER_WIDTH} — use %d, %dd, or %ddd`);
|
|
176
|
+
}
|
|
177
|
+
const max = Math.pow(10, width) - 1;
|
|
178
|
+
for (let i = 1; i <= max; i++) {
|
|
179
|
+
const padded = String(i).padStart(width, '0');
|
|
180
|
+
const candidate = pattern.replace(token, padded);
|
|
181
|
+
if (!fs.lstatSync(candidate, { throwIfNoEntry: false }))
|
|
182
|
+
return candidate;
|
|
183
|
+
}
|
|
184
|
+
throw new Error(`backup path counter exhausted: all slots ${'1'.padStart(width, '0')}–${String(max).padStart(width, '0')} are taken for "${pattern}"`);
|
|
185
|
+
}
|
|
186
|
+
// Expand a backup root entry: resolve ~/ and canonicalize the path.
|
|
187
|
+
// Relative paths are rejected — they would resolve against process.cwd(),
|
|
188
|
+
// not workingDir, making the security boundary invocation-dependent.
|
|
189
|
+
function expandRoot(root) {
|
|
190
|
+
if (root.startsWith('~/')) {
|
|
191
|
+
return path.resolve(os.homedir(), root.slice(2));
|
|
192
|
+
}
|
|
193
|
+
if (!path.isAbsolute(root)) {
|
|
194
|
+
throw new Error(`backup_roots entry "${root}" is a relative path. Use an absolute path or ~/`);
|
|
195
|
+
}
|
|
196
|
+
return path.resolve(root);
|
|
197
|
+
}
|
|
198
|
+
// Normalize a path for containment checks: on Windows paths are
|
|
199
|
+
// case-insensitive and may use either slash; fold both to canonical form.
|
|
200
|
+
function normalizePath(p) {
|
|
201
|
+
if (process.platform === 'win32') {
|
|
202
|
+
return p.replace(/\//g, '\\').toLowerCase();
|
|
203
|
+
}
|
|
204
|
+
return p;
|
|
205
|
+
}
|
|
206
|
+
// Assert that a resolved backup path is allowed given the security model:
|
|
207
|
+
// - Paths within workingDir are always allowed.
|
|
208
|
+
// - All other paths must fall under a declared backup_roots entry.
|
|
209
|
+
function assertBackupPathAllowed(backupPath, workingDir, backupRoots) {
|
|
210
|
+
const bp = normalizePath(backupPath);
|
|
211
|
+
const wd = normalizePath(workingDir);
|
|
212
|
+
const wdPrefix = wd.endsWith(path.sep) ? wd : wd + path.sep;
|
|
213
|
+
if (bp === wd || bp.startsWith(wdPrefix))
|
|
214
|
+
return;
|
|
215
|
+
for (const root of backupRoots) {
|
|
216
|
+
const expanded = normalizePath(expandRoot(root));
|
|
217
|
+
const rootPrefix = expanded.endsWith(path.sep)
|
|
218
|
+
? expanded
|
|
219
|
+
: expanded + path.sep;
|
|
220
|
+
if (bp === expanded || bp.startsWith(rootPrefix))
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
throw new Error(`backup path "${backupPath}" is outside the working directory. ` +
|
|
224
|
+
`Add a backup_roots entry to allow it.`);
|
|
225
|
+
}
|
|
226
|
+
// Resolve a backup path pattern for a given target file.
|
|
227
|
+
// Resolution order:
|
|
228
|
+
// 1. Substitute $ variables (including per-file vars derived from targetPath).
|
|
229
|
+
// 2. Expand ~/ prefix.
|
|
230
|
+
// 3. Resolve relative paths against workingDir.
|
|
231
|
+
// 4. Assert the path is allowed.
|
|
232
|
+
// 5. Resolve %d+ counter (filesystem scan).
|
|
233
|
+
function resolveBackupPath(pattern, targetPath, workingDir, vars, backupRoots) {
|
|
234
|
+
const fileVars = buildFileVars(targetPath);
|
|
235
|
+
const merged = Object.assign(Object.create(null), vars, fileVars);
|
|
236
|
+
let resolved = resolveVars(pattern, merged);
|
|
237
|
+
if (resolved.startsWith('~/')) {
|
|
238
|
+
resolved = path.resolve(os.homedir(), resolved.slice(2));
|
|
239
|
+
}
|
|
240
|
+
else if (!path.isAbsolute(resolved)) {
|
|
241
|
+
resolved = path.resolve(workingDir, resolved);
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
// Already absolute — canonicalize to remove any .. components so that
|
|
245
|
+
// paths like /workdir/../etc/passwd don't bypass assertBackupPathAllowed.
|
|
246
|
+
resolved = path.resolve(resolved);
|
|
247
|
+
}
|
|
248
|
+
if (normalizePath(resolved) === normalizePath(path.resolve(targetPath))) {
|
|
249
|
+
throw new Error(`backup path resolves to the target file itself: "${resolved}"`);
|
|
250
|
+
}
|
|
251
|
+
assertBackupPathAllowed(resolved, workingDir, backupRoots);
|
|
252
|
+
const finalPath = resolveBackupCounter(resolved);
|
|
253
|
+
if (fs.lstatSync(finalPath, { throwIfNoEntry: false })?.isDirectory()) {
|
|
254
|
+
throw new Error(`backup path "${finalPath}" is a directory — specify a file path`);
|
|
255
|
+
}
|
|
256
|
+
return finalPath;
|
|
257
|
+
}
|
|
73
258
|
//# sourceMappingURL=variables.js.map
|
package/dist/variables.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variables.js","sourceRoot":"","sources":["../src/variables.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"variables.js","sourceRoot":"","sources":["../src/variables.ts"],"names":[],"mappings":"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"}
|
package/dist/writer.d.ts
CHANGED
package/dist/writer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,WAAW,EAAE,EACtB,SAAS,GAAE,MAAM,EAAO,GACvB,IAAI,CA2GN"}
|