Parse a cron expression once so fields can be reused across many date checks.
(expression: string)
| 225 | |
| 226 | /** Parse a cron expression once so fields can be reused across many date checks. */ |
| 227 | function _parseCronFields(expression: string): _ParsedCronFields { |
| 228 | const fields = expression.trim().split(/\s+/) |
| 229 | const offset = fields.length === 6 ? 1 : 0 |
| 230 | return { |
| 231 | minuteField: fields[0 + offset], |
| 232 | hourField: fields[1 + offset], |
| 233 | domField: fields[2 + offset], |
| 234 | monthField: fields[3 + offset], |
| 235 | dowField: fields[4 + offset] |
| 236 | } |
| 237 | } |
| 238 | |
| 239 | /** |
| 240 | * Check whether a pre-parsed cron matches `date`, using a pre-built Intl.DateTimeFormat for TZ conversion. |
no outgoing calls
no test coverage detected