aboutsummaryrefslogtreecommitdiffstats
path: root/library/moment/src/lib/units/quarter.js
diff options
context:
space:
mode:
Diffstat (limited to 'library/moment/src/lib/units/quarter.js')
-rw-r--r--library/moment/src/lib/units/quarter.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/library/moment/src/lib/units/quarter.js b/library/moment/src/lib/units/quarter.js
new file mode 100644
index 000000000..d383f561e
--- /dev/null
+++ b/library/moment/src/lib/units/quarter.js
@@ -0,0 +1,27 @@
+import { addFormatToken } from '../format/format';
+import { addUnitAlias } from './aliases';
+import { addRegexToken, match1 } from '../parse/regex';
+import { addParseToken } from '../parse/token';
+import { MONTH } from './constants';
+import toInt from '../utils/to-int';
+
+// FORMATTING
+
+addFormatToken('Q', 0, 0, 'quarter');
+
+// ALIASES
+
+addUnitAlias('quarter', 'Q');
+
+// PARSING
+
+addRegexToken('Q', match1);
+addParseToken('Q', function (input, array) {
+ array[MONTH] = (toInt(input) - 1) * 3;
+});
+
+// MOMENTS
+
+export function getSetQuarter (input) {
+ return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);
+}