📄 match.js
/home/palash/git/site/node_modules/date-fns/locale/bn/_lib/match.js
Language: js â€ĸ Lines: 142
import { buildMatchFn } from "../../_lib/buildMatchFn.js";
import { buildMatchPatternFn } from "../../_lib/buildMatchPatternFn.js";

const matchOrdinalNumberPattern = /^(\d+)(āĻŽ|⧟|āĻ°ā§āĻĨ|āĻˇā§āĻ |āĻļ⧇|āχ|āϤāĻŽ)?/i;
const parseOrdinalNumberPattern = /\d+/i;

const matchEraPatterns = {
  narrow: /^(āĻ–ā§āϰāĻŋāσāĻĒā§‚āσ|āĻ–ā§āϰāĻŋāσ)/i,
  abbreviated: /^(āĻ–ā§āϰāĻŋāσāĻĒā§‚āĻ°ā§āĻŦ|āĻ–ā§āϰāĻŋāσ)/i,
  wide: /^(āĻ–ā§āϰāĻŋāĻ¸ā§āϟāĻĒā§‚āĻ°ā§āĻŦ|āĻ–ā§āϰāĻŋāĻ¸ā§āϟāĻžāĻŦā§āĻĻ)/i,
};
const parseEraPatterns = {
  narrow: [/^āĻ–ā§āϰāĻŋāσāĻĒā§‚āσ/i, /^āĻ–ā§āϰāĻŋāσ/i],
  abbreviated: [/^āĻ–ā§āϰāĻŋāσāĻĒā§‚āĻ°ā§āĻŦ/i, /^āĻ–ā§āϰāĻŋāσ/i],
  wide: [/^āĻ–ā§āϰāĻŋāĻ¸ā§āϟāĻĒā§‚āĻ°ā§āĻŦ/i, /^āĻ–ā§āϰāĻŋāĻ¸ā§āϟāĻžāĻŦā§āĻĻ/i],
};

const matchQuarterPatterns = {
  narrow: /^[ā§§ā§¨ā§Šā§Ē]/i,
  abbreviated: /^[ā§§ā§¨ā§Šā§Ē]āĻ¤ā§āϰ⧈/i,
  wide: /^[ā§§ā§¨ā§Šā§Ē](āĻŽ|⧟|āĻ°ā§āĻĨ)? āĻ¤ā§āϰ⧈āĻŽāĻžāϏāĻŋāĻ•/i,
};
const parseQuarterPatterns = {
  any: [/ā§§/i, /⧍/i, /ā§Š/i, /ā§Ē/i],
};

const matchMonthPatterns = {
  narrow:
    /^(āϜāĻžāύ⧁|āĻĢ⧇āĻŦā§āϰ⧁|āĻŽāĻžāĻ°ā§āϚ|āĻāĻĒā§āϰāĻŋāϞ|āĻŽā§‡|āϜ⧁āύ|āϜ⧁āϞāĻžāχ|āφāĻ—āĻ¸ā§āϟ|āϏ⧇āĻĒā§āϟ|āĻ…āĻ•ā§āĻŸā§‹|āύāϭ⧇|āĻĄāĻŋāϏ⧇)/i,
  abbreviated:
    /^(āϜāĻžāύ⧁|āĻĢ⧇āĻŦā§āϰ⧁|āĻŽāĻžāĻ°ā§āϚ|āĻāĻĒā§āϰāĻŋāϞ|āĻŽā§‡|āϜ⧁āύ|āϜ⧁āϞāĻžāχ|āφāĻ—āĻ¸ā§āϟ|āϏ⧇āĻĒā§āϟ|āĻ…āĻ•ā§āĻŸā§‹|āύāϭ⧇|āĻĄāĻŋāϏ⧇)/i,
  wide: /^(āϜāĻžāύ⧁⧟āĻžāϰāĻŋ|āĻĢ⧇āĻŦā§āϰ⧁⧟āĻžāϰāĻŋ|āĻŽāĻžāĻ°ā§āϚ|āĻāĻĒā§āϰāĻŋāϞ|āĻŽā§‡|āϜ⧁āύ|āϜ⧁āϞāĻžāχ|āφāĻ—āĻ¸ā§āϟ|āϏ⧇āĻĒā§āĻŸā§‡āĻŽā§āĻŦāϰ|āĻ…āĻ•ā§āĻŸā§‹āĻŦāϰ|āύāϭ⧇āĻŽā§āĻŦāϰ|āĻĄāĻŋāϏ⧇āĻŽā§āĻŦāϰ)/i,
};
const parseMonthPatterns = {
  any: [
    /^āϜāĻžāύ⧁/i,
    /^āĻĢ⧇āĻŦā§āϰ⧁/i,
    /^āĻŽāĻžāĻ°ā§āϚ/i,
    /^āĻāĻĒā§āϰāĻŋāϞ/i,
    /^āĻŽā§‡/i,
    /^āϜ⧁āύ/i,
    /^āϜ⧁āϞāĻžāχ/i,
    /^āφāĻ—āĻ¸ā§āϟ/i,
    /^āϏ⧇āĻĒā§āϟ/i,
    /^āĻ…āĻ•ā§āĻŸā§‹/i,
    /^āύāϭ⧇/i,
    /^āĻĄāĻŋāϏ⧇/i,
  ],
};

const matchDayPatterns = {
  narrow: /^(āϰ|āϏ⧋|āĻŽ|āĻŦ⧁|āĻŦ⧃|āĻļ⧁|āĻļ)+/i,
  short: /^(āϰāĻŦāĻŋ|āϏ⧋āĻŽ|āĻŽāĻ™ā§āĻ—āϞ|āĻŦ⧁āϧ|āĻŦ⧃āĻš|āĻļ⧁āĻ•ā§āϰ|āĻļāύāĻŋ)+/i,
  abbreviated: /^(āϰāĻŦāĻŋ|āϏ⧋āĻŽ|āĻŽāĻ™ā§āĻ—āϞ|āĻŦ⧁āϧ|āĻŦ⧃āĻš|āĻļ⧁āĻ•ā§āϰ|āĻļāύāĻŋ)+/i,
  wide: /^(āϰāĻŦāĻŋāĻŦāĻžāϰ|āϏ⧋āĻŽāĻŦāĻžāϰ|āĻŽāĻ™ā§āĻ—āϞāĻŦāĻžāϰ|āĻŦ⧁āϧāĻŦāĻžāϰ|āĻŦ⧃āĻšāĻ¸ā§āĻĒāϤāĻŋāĻŦāĻžāϰ |āĻļ⧁āĻ•ā§āϰāĻŦāĻžāϰ|āĻļāύāĻŋāĻŦāĻžāϰ)+/i,
};
const parseDayPatterns = {
  narrow: [/^āϰ/i, /^āϏ⧋/i, /^āĻŽ/i, /^āĻŦ⧁/i, /^āĻŦ⧃/i, /^āĻļ⧁/i, /^āĻļ/i],
  short: [/^āϰāĻŦāĻŋ/i, /^āϏ⧋āĻŽ/i, /^āĻŽāĻ™ā§āĻ—āϞ/i, /^āĻŦ⧁āϧ/i, /^āĻŦ⧃āĻš/i, /^āĻļ⧁āĻ•ā§āϰ/i, /^āĻļāύāĻŋ/i],

  abbreviated: [
    /^āϰāĻŦāĻŋ/i,
    /^āϏ⧋āĻŽ/i,
    /^āĻŽāĻ™ā§āĻ—āϞ/i,
    /^āĻŦ⧁āϧ/i,
    /^āĻŦ⧃āĻš/i,
    /^āĻļ⧁āĻ•ā§āϰ/i,
    /^āĻļāύāĻŋ/i,
  ],

  wide: [
    /^āϰāĻŦāĻŋāĻŦāĻžāϰ/i,
    /^āϏ⧋āĻŽāĻŦāĻžāϰ/i,
    /^āĻŽāĻ™ā§āĻ—āϞāĻŦāĻžāϰ/i,
    /^āĻŦ⧁āϧāĻŦāĻžāϰ/i,
    /^āĻŦ⧃āĻšāĻ¸ā§āĻĒāϤāĻŋāĻŦāĻžāϰ /i,
    /^āĻļ⧁āĻ•ā§āϰāĻŦāĻžāϰ/i,
    /^āĻļāύāĻŋāĻŦāĻžāϰ/i,
  ],
};

const matchDayPeriodPatterns = {
  narrow: /^(āĻĒā§‚|āĻ…āĻĒ|āĻŽāĻ§ā§āϝāϰāĻžāϤ|āĻŽāĻ§ā§āϝāĻžāĻšā§āύ|āϏāĻ•āĻžāϞ|āĻŦāĻŋāĻ•āĻžāϞ|āϏāĻ¨ā§āĻ§ā§āϝāĻž|āϰāĻžāϤ)/i,
  abbreviated: /^(āĻĒā§‚āĻ°ā§āĻŦāĻžāĻšā§āύ|āĻ…āĻĒāϰāĻžāĻšā§āύ|āĻŽāĻ§ā§āϝāϰāĻžāϤ|āĻŽāĻ§ā§āϝāĻžāĻšā§āύ|āϏāĻ•āĻžāϞ|āĻŦāĻŋāĻ•āĻžāϞ|āϏāĻ¨ā§āĻ§ā§āϝāĻž|āϰāĻžāϤ)/i,
  wide: /^(āĻĒā§‚āĻ°ā§āĻŦāĻžāĻšā§āύ|āĻ…āĻĒāϰāĻžāĻšā§āύ|āĻŽāĻ§ā§āϝāϰāĻžāϤ|āĻŽāĻ§ā§āϝāĻžāĻšā§āύ|āϏāĻ•āĻžāϞ|āĻŦāĻŋāĻ•āĻžāϞ|āϏāĻ¨ā§āĻ§ā§āϝāĻž|āϰāĻžāϤ)/i,
};
const parseDayPeriodPatterns = {
  any: {
    am: /^āĻĒā§‚/i,
    pm: /^āĻ…āĻĒ/i,
    midnight: /^āĻŽāĻ§ā§āϝāϰāĻžāϤ/i,
    noon: /^āĻŽāĻ§ā§āϝāĻžāĻšā§āύ/i,
    morning: /āϏāĻ•āĻžāϞ/i,
    afternoon: /āĻŦāĻŋāĻ•āĻžāϞ/i,
    evening: /āϏāĻ¨ā§āĻ§ā§āϝāĻž/i,
    night: /āϰāĻžāϤ/i,
  },
};

export const match = {
  ordinalNumber: buildMatchPatternFn({
    matchPattern: matchOrdinalNumberPattern,
    parsePattern: parseOrdinalNumberPattern,
    valueCallback: (value) => parseInt(value, 10),
  }),

  era: buildMatchFn({
    matchPatterns: matchEraPatterns,
    defaultMatchWidth: "wide",
    parsePatterns: parseEraPatterns,
    defaultParseWidth: "wide",
  }),

  quarter: buildMatchFn({
    matchPatterns: matchQuarterPatterns,
    defaultMatchWidth: "wide",
    parsePatterns: parseQuarterPatterns,
    defaultParseWidth: "any",
    valueCallback: (index) => index + 1,
  }),

  month: buildMatchFn({
    matchPatterns: matchMonthPatterns,
    defaultMatchWidth: "wide",
    parsePatterns: parseMonthPatterns,
    defaultParseWidth: "any",
  }),

  day: buildMatchFn({
    matchPatterns: matchDayPatterns,
    defaultMatchWidth: "wide",
    parsePatterns: parseDayPatterns,
    defaultParseWidth: "wide",
  }),

  dayPeriod: buildMatchFn({
    matchPatterns: matchDayPeriodPatterns,
    defaultMatchWidth: "wide",
    parsePatterns: parseDayPeriodPatterns,
    defaultParseWidth: "any",
  }),
};