UNPKG

ngx-bootstrap

Version:
38 lines 1.46 kB
import { createInvalid, isValid } from './valid'; import { getParsingFlags } from './parsing-flags'; import { configFromStringAndFormat } from './from-string-and-format'; // date from string and array of format strings export function configFromStringAndArray(config) { var tempConfig; var bestMoment; var scoreToBeat; var currentScore; if (!config._f || config._f.length === 0) { getParsingFlags(config).invalidFormat = true; return createInvalid(config); } var i; for (i = 0; i < config._f.length; i++) { currentScore = 0; tempConfig = Object.assign({}, config); if (config._useUTC != null) { tempConfig._useUTC = config._useUTC; } tempConfig._f = config._f[i]; configFromStringAndFormat(tempConfig); if (!isValid(tempConfig)) { continue; } // if there is any input that was not parsed add a penalty for that format currentScore += getParsingFlags(tempConfig).charsLeftOver; // or tokens currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10; getParsingFlags(tempConfig).score = currentScore; if (scoreToBeat == null || currentScore < scoreToBeat) { scoreToBeat = currentScore; bestMoment = tempConfig; } } return Object.assign(config, bestMoment || tempConfig); } //# sourceMappingURL=from-string-and-array.js.map