* feat: allow more 1000 steps to be created at once * refactor: start migrating to typescript * refactor: delete-step to ts * refactor: migrated some helpers * refactor: migrate create-empty-steps * refactor: migrate create-step-between * refactor: finish migrating to TS * refactor: migrate tests * fix: ensure mock.restore is done after each test * fix: prevent double-tscing * fix: repair the tests * chore: use ts-node for scripts We don't need the performance boost of incremental compilation and ts-node is easier to work with * refactor: consolidate tsconfigs * refactor: replace gulp * fix: use ts-node for build-curriculum * fix: allow ts compilation of config * feat: create and use create:config script * fix: add /config to eslint projects * fix: remove gulp script
15 lines
417 B
TypeScript
15 lines
417 B
TypeScript
// Prepends zero's to the given value until length is equal to 3:
|
|
// '1' -> '001', '12' -> '012', ...
|
|
// Note: always want file step numbers 3 digits
|
|
function padWithLeadingZeros(value: number): string {
|
|
const valueString = value.toString();
|
|
|
|
if (valueString.length > 3) {
|
|
throw `${valueString} should be less than 4 characters`;
|
|
}
|
|
|
|
return valueString.padStart(3, '0');
|
|
}
|
|
|
|
export { padWithLeadingZeros };
|