aboutsummaryrefslogtreecommitdiffstats
path: root/library/moment/src/lib/parse/token.js
diff options
context:
space:
mode:
Diffstat (limited to 'library/moment/src/lib/parse/token.js')
-rw-r--r--library/moment/src/lib/parse/token.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/library/moment/src/lib/parse/token.js b/library/moment/src/lib/parse/token.js
new file mode 100644
index 000000000..781b9cf3a
--- /dev/null
+++ b/library/moment/src/lib/parse/token.js
@@ -0,0 +1,32 @@
+import hasOwnProp from '../utils/has-own-prop';
+import toInt from '../utils/to-int';
+
+var tokens = {};
+
+export function addParseToken (token, callback) {
+ var i, func = callback;
+ if (typeof token === 'string') {
+ token = [token];
+ }
+ if (typeof callback === 'number') {
+ func = function (input, array) {
+ array[callback] = toInt(input);
+ };
+ }
+ for (i = 0; i < token.length; i++) {
+ tokens[token[i]] = func;
+ }
+}
+
+export function addWeekParseToken (token, callback) {
+ addParseToken(token, function (input, array, config, token) {
+ config._w = config._w || {};
+ callback(input, config._w, config, token);
+ });
+}
+
+export function addTimeToArrayFromToken(token, input, config) {
+ if (input != null && hasOwnProp(tokens, token)) {
+ tokens[token](input, config._a, config, token);
+ }
+}