Blame view

天文台pc/tianwentai-ui/node_modules/date-fns/locale/ko/_lib/match.mjs 2.71 KB
bc518174   王天杨   提交两个项目文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
  import { buildMatchFn } from "../../_lib/buildMatchFn.mjs";
  import { buildMatchPatternFn } from "../../_lib/buildMatchPatternFn.mjs";
  
  const matchOrdinalNumberPattern = /^(\d+)(일|번째)?/i;
  const parseOrdinalNumberPattern = /\d+/i;
  
  const matchEraPatterns = {
    narrow: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
    abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
    wide: /^(기원전|서기)/i,
  };
  const parseEraPatterns = {
    any: [/^(bc|기원전)/i, /^(ad|서기)/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 = {
    narrow: /^(1[012]|[123456789])/,
    abbreviated: /^(1[012]|[123456789])월/i,
    wide: /^(1[012]|[123456789])월/i,
  };
  const parseMonthPatterns = {
    any: [
      /^1월?$/,
      /^2/,
      /^3/,
      /^4/,
      /^5/,
      /^6/,
      /^7/,
      /^8/,
      /^9/,
      /^10/,
      /^11/,
      /^12/,
    ],
  };
  
  const matchDayPatterns = {
    narrow: /^[일월화수목금토]/,
    short: /^[일월화수목금토]/,
    abbreviated: /^[일월화수목금토]/,
    wide: /^[일월화수목금토]요일/,
  };
  const parseDayPatterns = {
    any: [/^일/, /^월/, /^화/, /^수/, /^목/, /^금/, /^토/],
  };
  
  const matchDayPeriodPatterns = {
    any: /^(am|pm|오전|오후|자정|정오|아침|저녁|밤)/i,
  };
  const parseDayPeriodPatterns = {
    any: {
      am: /^(am|오전)/i,
      pm: /^(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: "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",
    }),
  };