@flxbl-io/sfp
Version:
sfp is a CLI tool to help you manage your Salesforce projects in an artifact centric model
26 lines • 2.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = get18DigitSalesforceId;
function get18DigitSalesforceId(recordId) {
if (recordId && recordId.length === 18) {
return recordId;
}
else if (recordId && recordId.length === 15) {
let addon = '';
for (let block = 0; block < 3; block++) {
let loop = 0;
for (let position = 0; position < 5; position++) {
let current = recordId.charAt(block * 5 + position);
if (current >= 'A' && current <= 'Z')
loop += 1 << position;
}
addon += 'ABCDEFGHIJKLMNOPQRSTUVWXYZ012345'.charAt(loop);
}
let convertedId = recordId + addon;
return convertedId;
}
else {
throw new Error(`Invalid Salesforce Id ${recordId}`);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2V0MThEaWdpdFNhbGVzZm9yY2VJZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9HZXQxOERpZ2l0U2FsZXNmb3JjZUlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseUNBa0JDO0FBbEJELFNBQXdCLHNCQUFzQixDQUFDLFFBQWdCO0lBQzNELElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDckMsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztTQUFNLElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDNUMsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2YsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3JDLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztZQUNiLEtBQUssSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFLFFBQVEsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDOUMsSUFBSSxPQUFPLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO2dCQUNwRCxJQUFJLE9BQU8sSUFBSSxHQUFHLElBQUksT0FBTyxJQUFJLEdBQUc7b0JBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUM7WUFDaEUsQ0FBQztZQUNELEtBQUssSUFBSSxrQ0FBa0MsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUNELElBQUksV0FBVyxHQUFHLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDbkMsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQztTQUFNLENBQUM7UUFDSixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7QUFDTCxDQUFDIn0=