UNPKG

recoder-code

Version:

🚀 AI-powered development platform - Chat with 32+ models, build projects, automate workflows. Free models included!

97 lines â€Ē 4.38 kB
import buildMatchFn from "../../../_lib/buildMatchFn/index.js"; import buildMatchPatternFn from "../../../_lib/buildMatchPatternFn/index.js"; var matchOrdinalNumberPattern = /^\d+/i; var parseOrdinalNumberPattern = /\d+/i; var matchEraPatterns = { narrow: /^([bB]|[aA]|āļ„āļĻ)/i, abbreviated: /^([bB]\.?\s?[cC]\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?|āļ„\.?āļĻ\.?)/i, wide: /^(āļāđˆāļ­āļ™āļ„āļĢāļīāļŠāļ•āļāļēāļĨ|āļ„āļĢāļīāļŠāļ•āđŒāļĻāļąāļāļĢāļēāļŠ|āļ„āļĢāļīāļŠāļ•āļāļēāļĨ)/i }; var parseEraPatterns = { any: [/^[bB]/i, /^(^[aA]|āļ„\.?āļĻ\.?|āļ„āļĢāļīāļŠāļ•āļāļēāļĨ|āļ„āļĢāļīāļŠāļ•āđŒāļĻāļąāļāļĢāļēāļŠ|)/i] }; var matchQuarterPatterns = { narrow: /^[1234]/i, abbreviated: /^q[1234]/i, wide: /^āđ„āļ•āļĢāļĄāļēāļŠ(āļ—āļĩāđˆ)? ?[1234]/i }; var parseQuarterPatterns = { any: [/(1|āđāļĢāļ|āļŦāļ™āļķāđˆāļ‡)/i, /(2|āļŠāļ­āļ‡)/i, /(3|āļŠāļēāļĄ)/i, /(4|āļŠāļĩāđˆ)/i] }; var matchMonthPatterns = { narrow: /^(āļĄ\.?āļ„\.?|āļ\.?āļž\.?|āļĄāļĩ\.?āļ„\.?|āđ€āļĄ\.?āļĒ\.?|āļž\.?āļ„\.?|āļĄāļī\.?āļĒ\.?|āļ\.?āļ„\.?|āļŠ\.?āļ„\.?|āļ\.?āļĒ\.?|āļ•\.?āļ„\.?|āļž\.?āļĒ\.?|āļ˜\.?āļ„\.?)/i, abbreviated: /^(āļĄ\.?āļ„\.?|āļ\.?āļž\.?|āļĄāļĩ\.?āļ„\.?|āđ€āļĄ\.?āļĒ\.?|āļž\.?āļ„\.?|āļĄāļī\.?āļĒ\.?|āļ\.?āļ„\.?|āļŠ\.?āļ„\.?|āļ\.?āļĒ\.?|āļ•\.?āļ„\.?|āļž\.?āļĒ\.?|āļ˜\.?āļ„\.?')/i, wide: /^(āļĄāļāļĢāļēāļ„āļĄ|āļāļļāļĄāļ āļēāļžāļąāļ™āļ˜āđŒ|āļĄāļĩāļ™āļēāļ„āļĄ|āđ€āļĄāļĐāļēāļĒāļ™|āļžāļĪāļĐāļ āļēāļ„āļĄ|āļĄāļīāļ–āļļāļ™āļēāļĒāļ™|āļāļĢāļāļŽāļēāļ„āļĄ|āļŠāļīāļ‡āļŦāļēāļ„āļĄ|āļāļąāļ™āļĒāļēāļĒāļ™|āļ•āļļāļĨāļēāļ„āļĄ|āļžāļĪāļĻāļˆāļīāļāļēāļĒāļ™|āļ˜āļąāļ™āļ§āļēāļ„āļĄ)/i }; var parseMonthPatterns = { wide: [/^āļĄāļ/i, /^āļāļļāļĄ/i, /^āļĄāļĩ/i, /^āđ€āļĄ/i, /^āļžāļĪāļĐ/i, /^āļĄāļī/i, /^āļāļĢāļ/i, /^āļŠ/i, /^āļāļąāļ™/i, /^āļ•/i, /^āļžāļĪāļĻ/i, /^āļ˜/i], any: [/^āļĄ\.?āļ„\.?/i, /^āļ\.?āļž\.?/i, /^āļĄāļĩ\.?āļ„\.?/i, /^āđ€āļĄ\.?āļĒ\.?/i, /^āļž\.?āļ„\.?/i, /^āļĄāļī\.?āļĒ\.?/i, /^āļ\.?āļ„\.?/i, /^āļŠ\.?āļ„\.?/i, /^āļ\.?āļĒ\.?/i, /^āļ•\.?āļ„\.?/i, /^āļž\.?āļĒ\.?/i, /^āļ˜\.?āļ„\.?/i] }; var matchDayPatterns = { narrow: /^(āļ­āļē\.?|āļˆ\.?|āļ­\.?|āļžāļĪ\.?|āļž\.?|āļĻ\.?|āļŠ\.?)/i, short: /^(āļ­āļē\.?|āļˆ\.?|āļ­\.?|āļžāļĪ\.?|āļž\.?|āļĻ\.?|āļŠ\.?)/i, abbreviated: /^(āļ­āļē\.?|āļˆ\.?|āļ­\.?|āļžāļĪ\.?|āļž\.?|āļĻ\.?|āļŠ\.?)/i, wide: /^(āļ­āļēāļ—āļīāļ•āļĒāđŒ|āļˆāļąāļ™āļ—āļĢāđŒ|āļ­āļąāļ‡āļ„āļēāļĢ|āļžāļļāļ˜|āļžāļĪāļŦāļąāļŠāļšāļ”āļĩ|āļĻāļļāļāļĢāđŒ|āđ€āļŠāļēāļĢāđŒ)/i }; var parseDayPatterns = { wide: [/^āļ­āļē/i, /^āļˆāļą/i, /^āļ­āļą/i, /^āļžāļļāļ˜/i, /^āļžāļĪ/i, /^āļĻ/i, /^āđ€āļŠ/i], any: [/^āļ­āļē/i, /^āļˆ/i, /^āļ­/i, /^āļž(?!āļĪ)/i, /^āļžāļĪ/i, /^āļĻ/i, /^āļŠ/i] }; var matchDayPeriodPatterns = { any: /^(āļāđˆāļ­āļ™āđ€āļ—āļĩāđˆāļĒāļ‡|āļŦāļĨāļąāļ‡āđ€āļ—āļĩāđˆāļĒāļ‡|āđ€āļ—āļĩāđˆāļĒāļ‡āļ„āļ·āļ™|āđ€āļ—āļĩāđˆāļĒāļ‡|(āļ•āļ­āļ™.*?)?.*(āđ€āļ—āļĩāđˆāļĒāļ‡|āđ€āļŠāđ‰āļē|āļšāđˆāļēāļĒ|āđ€āļĒāđ‡āļ™|āļāļĨāļēāļ‡āļ„āļ·āļ™))/i }; var parseDayPeriodPatterns = { any: { am: /^āļāđˆāļ­āļ™āđ€āļ—āļĩāđˆāļĒāļ‡/i, pm: /^āļŦāļĨāļąāļ‡āđ€āļ—āļĩāđˆāļĒāļ‡/i, midnight: /^āđ€āļ—āļĩāđˆāļĒāļ‡āļ„āļ·āļ™/i, noon: /^āđ€āļ—āļĩāđˆāļĒāļ‡/i, morning: /āđ€āļŠāđ‰āļē/i, afternoon: /āļšāđˆāļēāļĒ/i, evening: /āđ€āļĒāđ‡āļ™/i, night: /āļāļĨāļēāļ‡āļ„āļ·āļ™/i } }; var match = { ordinalNumber: buildMatchPatternFn({ matchPattern: matchOrdinalNumberPattern, parsePattern: parseOrdinalNumberPattern, valueCallback: function valueCallback(value) { return parseInt(value, 10); } }), era: buildMatchFn({ matchPatterns: matchEraPatterns, defaultMatchWidth: 'wide', parsePatterns: parseEraPatterns, defaultParseWidth: 'any' }), quarter: buildMatchFn({ matchPatterns: matchQuarterPatterns, defaultMatchWidth: 'wide', parsePatterns: parseQuarterPatterns, defaultParseWidth: 'any', valueCallback: function valueCallback(index) { return index + 1; } }), month: buildMatchFn({ matchPatterns: matchMonthPatterns, defaultMatchWidth: 'wide', parsePatterns: parseMonthPatterns, defaultParseWidth: 'any' }), day: buildMatchFn({ matchPatterns: matchDayPatterns, defaultMatchWidth: 'wide', parsePatterns: parseDayPatterns, defaultParseWidth: 'any' }), dayPeriod: buildMatchFn({ matchPatterns: matchDayPeriodPatterns, defaultMatchWidth: 'any', parsePatterns: parseDayPeriodPatterns, defaultParseWidth: 'any' }) }; export default match;