renovate
Version:
Automated dependency updates. Flexible so you don't need to be.
35 lines (34 loc) • 1.03 kB
JavaScript
import { isNullOrUndefined, isString } from "@sindresorhus/is";
//#region lib/config/migrations/base/abstract-migration.ts
var AbstractMigration = class {
deprecated = false;
originalConfig;
migratedConfig;
constructor(originalConfig, migratedConfig) {
this.originalConfig = originalConfig;
this.migratedConfig = migratedConfig;
}
get(key) {
return this.migratedConfig[key] ?? this.originalConfig[key];
}
has(key) {
return key in this.originalConfig;
}
setSafely(key, value) {
if (isNullOrUndefined(this.originalConfig[key]) && isNullOrUndefined(this.migratedConfig[key])) this.migratedConfig[key] = value;
}
setHard(key, value) {
this.migratedConfig[key] = value;
}
rewrite(value) {
if (!isString(this.propertyName)) throw new Error();
this.setHard(this.propertyName, value);
}
delete(property = this.propertyName) {
if (!isString(property)) throw new Error();
delete this.migratedConfig[property];
}
};
//#endregion
export { AbstractMigration };
//# sourceMappingURL=abstract-migration.js.map