]> git.ipfire.org Git - thirdparty/moment.git/commit
Refactoring & Cleanup
authorNirpendra Patel <patelnirpendra1994@gmail.com>
Thu, 6 Oct 2022 09:46:44 +0000 (15:16 +0530)
committerIskren Chernev <me@iskren.info>
Sat, 16 Dec 2023 22:21:33 +0000 (00:21 +0200)
commitd4432375a1e996d8a3180a9bcc5074441b0a9398
treefc1b1c82c4cb2eb65c44c6b711a6d5a0e0c43cde
parent386b57b16a4138a4a2cf12644970535b716eb6c5
Refactoring & Cleanup

My mission with this refactoring was to make it more readable and procedural. Not only it reduces 32 function calls, It's all in one place. All aliases in aliases.js file and all priorities in priorities.js file

1. All the functions which were responsible for creating aliases from following files(comments are file names) have been moved to src/lib/units/aliases.js

// src/lib/units/day-of-month.js
addUnitAlias('date', 'D');
// src/lib/units/day-of-week.js
addUnitAlias('day', 'd');
addUnitAlias('weekday', 'e');
addUnitAlias('isoWeekday', 'E');
// src/lib/units/day-of-year.js
addUnitAlias('dayOfYear', 'DDD');
// src/lib/units/hour.js
addUnitAlias('hour', 'h');
// src/lib/units/millisecond.js
addUnitAlias('millisecond', 'ms');
// src/lib/units/minute.js
addUnitAlias('minute', 'm');
// src/lib/units/month.js
addUnitAlias('month', 'M');
// src/lib/units/quarter.js
addUnitAlias('quarter', 'Q');
// src/lib/units/second.js
addUnitAlias('second', 's');
// src/lib/units/week-year.js
addUnitAlias('weekYear', 'gg');
addUnitAlias('isoWeekYear', 'GG');
// src/lib/units/week.js
addUnitAlias('week', 'w');
addUnitAlias('isoWeek', 'W');
// src/lib/units/year.js
addUnitAlias('year', 'y');

2. Ran all the functions and final result has been saved as "aliases" object in  src/lib/units/aliases.js.

3. Commented out all the aliases creation functions in src/lib/units/aliases.js as we have final and known Object as a variable.

4. All the functions which were responsible for creating priorities from following files(comments are file names) have been moved to src/lib/units/priorities.js

// src/lib/units/day-of-month.js
addUnitPriority('date', 9);
// src/lib/units/day-of-week.js
addUnitPriority('day', 11);
addUnitPriority('weekday', 11);
addUnitPriority('isoWeekday', 11);
// src/lib/units/day-of-year.js
addUnitPriority('dayOfYear', 4);
// src/lib/units/hour.js
addUnitPriority('hour', 13);
// src/lib/units/millisecond.js
addUnitPriority('millisecond', 16);
// src/lib/units/minute.js
addUnitPriority('minute', 14);
// src/lib/units/month.js
addUnitPriority('month', 8);
// src/lib/units/quarter.js
addUnitPriority('quarter', 7);
// src/lib/units/second.js
addUnitPriority('second', 15);
// src/lib/units/week-year.js
addUnitPriority('weekYear', 1);
addUnitPriority('isoWeekYear', 1);
// src/lib/units/week.js
addUnitPriority('week', 5);
addUnitPriority('isoWeek', 5);
// src/lib/units/year.js
addUnitPriority('year', 1);

5. Ran all the functions and final result has been saved as "priorities" object in  src/lib/units/priorities.js.

6. Commented out all the priorities creation functions in src/lib/units/aliases.js as we have final and known Object as a variable.
14 files changed:
src/lib/units/aliases.js
src/lib/units/day-of-month.js
src/lib/units/day-of-week.js
src/lib/units/day-of-year.js
src/lib/units/hour.js
src/lib/units/millisecond.js
src/lib/units/minute.js
src/lib/units/month.js
src/lib/units/priorities.js
src/lib/units/quarter.js
src/lib/units/second.js
src/lib/units/week-year.js
src/lib/units/week.js
src/lib/units/year.js