(s, options)
| 17954 | } |
| 17955 | var DEFAULT_OPTIONS = { dtstart: null, cache: false, unfold: false, forceset: false, compatible: false, tzid: null }; |
| 17956 | function parseInput(s, options) { |
| 17957 | var rrulevals = []; |
| 17958 | var rdatevals = []; |
| 17959 | var exrulevals = []; |
| 17960 | var exdatevals = []; |
| 17961 | var parsedDtstart = parseDtstart(s); |
| 17962 | var dtstart = parsedDtstart.dtstart; |
| 17963 | var tzid = parsedDtstart.tzid; |
| 17964 | var lines = splitIntoLines(s, options.unfold); |
| 17965 | lines.forEach(function(line) { |
| 17966 | var _a; |
| 17967 | if (!line) |
| 17968 | return; |
| 17969 | var _b = breakDownLine(line), name = _b.name, parms = _b.parms, value = _b.value; |
| 17970 | switch (name.toUpperCase()) { |
| 17971 | case "RRULE": |
| 17972 | if (parms.length) { |
| 17973 | throw new Error("unsupported RRULE parm: ".concat(parms.join(","))); |
| 17974 | } |
| 17975 | rrulevals.push(parseString(line)); |
| 17976 | break; |
| 17977 | case "RDATE": |
| 17978 | var _c = (_a = /RDATE(?:;TZID=([^:=]+))?/i.exec(line)) !== null && _a !== void 0 ? _a : [], rdateTzid = _c[1]; |
| 17979 | if (rdateTzid && !tzid) { |
| 17980 | tzid = rdateTzid; |
| 17981 | } |
| 17982 | rdatevals = rdatevals.concat(parseRDate(value, parms)); |
| 17983 | break; |
| 17984 | case "EXRULE": |
| 17985 | if (parms.length) { |
| 17986 | throw new Error("unsupported EXRULE parm: ".concat(parms.join(","))); |
| 17987 | } |
| 17988 | exrulevals.push(parseString(value)); |
| 17989 | break; |
| 17990 | case "EXDATE": |
| 17991 | exdatevals = exdatevals.concat(parseRDate(value, parms)); |
| 17992 | break; |
| 17993 | case "DTSTART": |
| 17994 | break; |
| 17995 | default: |
| 17996 | throw new Error("unsupported property: " + name); |
| 17997 | } |
| 17998 | }); |
| 17999 | return { dtstart, tzid, rrulevals, rdatevals, exrulevals, exdatevals }; |
| 18000 | } |
| 18001 | function buildRule(s, options) { |
| 18002 | var _a = parseInput(s, options), rrulevals = _a.rrulevals, rdatevals = _a.rdatevals, exrulevals = _a.exrulevals, exdatevals = _a.exdatevals, dtstart = _a.dtstart, tzid = _a.tzid; |
| 18003 | var noCache = options.cache === false; |
no test coverage detected