summaryrefslogtreecommitdiff
path: root/bin/wiki/ImportarDesdeURL/node_modules/moment/src/lib/duration/valid.js
diff options
context:
space:
mode:
Diffstat (limited to 'bin/wiki/ImportarDesdeURL/node_modules/moment/src/lib/duration/valid.js')
-rw-r--r--bin/wiki/ImportarDesdeURL/node_modules/moment/src/lib/duration/valid.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/bin/wiki/ImportarDesdeURL/node_modules/moment/src/lib/duration/valid.js b/bin/wiki/ImportarDesdeURL/node_modules/moment/src/lib/duration/valid.js
new file mode 100644
index 00000000..033fd5b0
--- /dev/null
+++ b/bin/wiki/ImportarDesdeURL/node_modules/moment/src/lib/duration/valid.js
@@ -0,0 +1,36 @@
+import toInt from '../utils/to-int';
+import indexOf from '../utils/index-of';
+import {Duration} from './constructor';
+import {createDuration} from './create';
+
+var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond'];
+
+export default function isDurationValid(m) {
+ for (var key in m) {
+ if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) {
+ return false;
+ }
+ }
+
+ var unitHasDecimal = false;
+ for (var i = 0; i < ordering.length; ++i) {
+ if (m[ordering[i]]) {
+ if (unitHasDecimal) {
+ return false; // only allow non-integers for smallest unit
+ }
+ if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {
+ unitHasDecimal = true;
+ }
+ }
+ }
+
+ return true;
+}
+
+export function isValid() {
+ return this._isValid;
+}
+
+export function createInvalid() {
+ return createDuration(NaN);
+}