๐Ÿ“„ match.js
/home/palash/git/site/node_modules/date-fns/locale/gu/_lib/match.js
Language: js โ€ข Lines: 134
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: /^(เชˆเชธเชตเซ€เชธเชจ\sเชชเซ‚เชฐเซเชตเซ‡|เชˆเชธเชตเซ€เชธเชจ)/i,
};
const parseEraPatterns = {
  any: [/^เชˆเชธเชชเซ‚/i, /^เชˆเชธ/i],
};

const matchQuarterPatterns = {
  narrow: /^[1234]/i,
  abbreviated: /^q[1234]/i,
  wide: /^[1234](เชฒเซ‹|เชœเซ‹|เชฅเซ‹)? เชคเซเชฐเชฟเชฎเชพเชธ/i,
};
const parseQuarterPatterns = {
  any: [/1/i, /2/i, /3/i, /4/i],
};

const matchMonthPatterns = {
  // eslint-disable-next-line no-misleading-character-class
  narrow: /^[เชœเชพเชซเซ‡เชฎเชพเชเชฎเซ‡เชœเซ‚เชœเซเช“เชธเช“เชจเชกเชฟ]/i,
  abbreviated:
    /^(เชœเชพเชจเซเชฏเซ|เชซเซ‡เชฌเซเชฐเซ|เชฎเชพเชฐเซเชš|เชเชชเซเชฐเชฟเชฒ|เชฎเซ‡|เชœเซ‚เชจ|เชœเซเชฒเชพเชˆ|เช‘เช—เชธเซเชŸ|เชธเชชเซเชŸเซ‡|เช“เช•เซเชŸเซ‹|เชจเชตเซ‡|เชกเชฟเชธเซ‡)/i,
  wide: /^(เชœเชพเชจเซเชฏเซเช†เชฐเซ€|เชซเซ‡เชฌเซเชฐเซเช†เชฐเซ€|เชฎเชพเชฐเซเชš|เชเชชเซเชฐเชฟเชฒ|เชฎเซ‡|เชœเซ‚เชจ|เชœเซเชฒเชพเช‡|เช“เช—เชธเซเชŸ|เชธเชชเซเชŸเซ‡เชฎเซเชฌเชฐ|เช“เช•เซเชŸเซ‹เชฌเชฐ|เชจเชตเซ‡เชฎเซเชฌเชฐ|เชกเชฟเชธเซ‡เชฎเซเชฌเชฐ)/i,
};
const parseMonthPatterns = {
  narrow: [
    /^เชœเชพ/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,
  ],
};

const matchDayPatterns = {
  narrow: /^(เชฐ|เชธเซ‹|เชฎเช‚|เชฌเซ|เช—เซ|เชถเซ|เชถ)/i,
  short: /^(เชฐ|เชธเซ‹|เชฎเช‚|เชฌเซ|เช—เซ|เชถเซ|เชถ)/i,
  abbreviated: /^(เชฐเชตเชฟ|เชธเซ‹เชฎ|เชฎเช‚เช—เชณ|เชฌเซเชง|เช—เซเชฐเซ|เชถเซเช•เซเชฐ|เชถเชจเชฟ)/i,
  wide: /^(เชฐเชตเชฟเชตเชพเชฐ|เชธเซ‹เชฎเชตเชพเชฐ|เชฎเช‚เช—เชณเชตเชพเชฐ|เชฌเซเชงเชตเชพเชฐ|เช—เซเชฐเซเชตเชพเชฐ|เชถเซเช•เซเชฐเชตเชพเชฐ|เชถเชจเชฟเชตเชพเชฐ)/i,
};
const parseDayPatterns = {
  narrow: [/^เชฐ/i, /^เชธเซ‹/i, /^เชฎเช‚/i, /^เชฌเซ/i, /^เช—เซ/i, /^เชถเซ/i, /^เชถ/i],
  any: [/^เชฐ/i, /^เชธเซ‹/i, /^เชฎเช‚/i, /^เชฌเซ/i, /^เช—เซ/i, /^เชถเซ/i, /^เชถ/i],
};

const matchDayPeriodPatterns = {
  narrow: /^(a|p|เชฎ\.?|เชธ|เชฌ|เชธเชพเช‚|เชฐเชพ)/i,
  any: /^(a|p|เชฎ\.?|เชธ|เชฌ|เชธเชพเช‚|เชฐเชพ)/i,
};
const parseDayPeriodPatterns = {
  any: {
    am: /^a/i,
    pm: /^p/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: "any",
  }),

  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: "any",
  }),

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