@fmdevui/fm-dev 1.0.25 → 1.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es/calendar.mjs DELETED
@@ -1,785 +0,0 @@
1
- var calendar = function() {
2
- "use strict";
3
- var lunarInfo = [
4
- 19416,
5
- 19168,
6
- 42352,
7
- 21717,
8
- 53856,
9
- 55632,
10
- 91476,
11
- 22176,
12
- 39632,
13
- 21970,
14
- //1900-1909
15
- 19168,
16
- 42422,
17
- 42192,
18
- 53840,
19
- 119381,
20
- 46400,
21
- 54944,
22
- 44450,
23
- 38320,
24
- 84343,
25
- //1910-1919
26
- 18800,
27
- 42160,
28
- 46261,
29
- 27216,
30
- 27968,
31
- 109396,
32
- 11104,
33
- 38256,
34
- 21234,
35
- 18800,
36
- //1920-1929
37
- 25958,
38
- 54432,
39
- 59984,
40
- 92821,
41
- 23248,
42
- 11104,
43
- 100067,
44
- 37600,
45
- 116951,
46
- 51536,
47
- //1930-1939
48
- 54432,
49
- 120998,
50
- 46416,
51
- 22176,
52
- 107956,
53
- 9680,
54
- 37584,
55
- 53938,
56
- 43344,
57
- 46423,
58
- //1940-1949
59
- 27808,
60
- 46416,
61
- 86869,
62
- 19872,
63
- 42416,
64
- 83315,
65
- 21168,
66
- 43432,
67
- 59728,
68
- 27296,
69
- //1950-1959
70
- 44710,
71
- 43856,
72
- 19296,
73
- 43748,
74
- 42352,
75
- 21088,
76
- 62051,
77
- 55632,
78
- 23383,
79
- 22176,
80
- //1960-1969
81
- 38608,
82
- 19925,
83
- 19152,
84
- 42192,
85
- 54484,
86
- 53840,
87
- 54616,
88
- 46400,
89
- 46752,
90
- 103846,
91
- //1970-1979
92
- 38320,
93
- 18864,
94
- 43380,
95
- 42160,
96
- 45690,
97
- 27216,
98
- 27968,
99
- 44870,
100
- 43872,
101
- 38256,
102
- //1980-1989
103
- 19189,
104
- 18800,
105
- 25776,
106
- 29859,
107
- 59984,
108
- 27480,
109
- 23232,
110
- 43872,
111
- 38613,
112
- 37600,
113
- //1990-1999
114
- 51552,
115
- 55636,
116
- 54432,
117
- 55888,
118
- 30034,
119
- 22176,
120
- 43959,
121
- 9680,
122
- 37584,
123
- 51893,
124
- //2000-2009
125
- 43344,
126
- 46240,
127
- 47780,
128
- 44368,
129
- 21977,
130
- 19360,
131
- 42416,
132
- 86390,
133
- 21168,
134
- 43312,
135
- //2010-2019
136
- 31060,
137
- 27296,
138
- 44368,
139
- 23378,
140
- 19296,
141
- 42726,
142
- 42208,
143
- 53856,
144
- 60005,
145
- 54576,
146
- //2020-2029
147
- 23200,
148
- 30371,
149
- 38608,
150
- 19195,
151
- 19152,
152
- 42192,
153
- 118966,
154
- 53840,
155
- 54560,
156
- 56645,
157
- //2030-2039
158
- 46496,
159
- 22224,
160
- 21938,
161
- 18864,
162
- 42359,
163
- 42160,
164
- 43600,
165
- 111189,
166
- 27936,
167
- 44448,
168
- //2040-2049
169
- /**Add By JJonline@JJonline.Cn**/
170
- 84835,
171
- 37744,
172
- 18936,
173
- 18800,
174
- 25776,
175
- 92326,
176
- 59984,
177
- 27424,
178
- 108228,
179
- 43744,
180
- //2050-2059
181
- 37600,
182
- 53987,
183
- 51552,
184
- 54615,
185
- 54432,
186
- 55888,
187
- 23893,
188
- 22176,
189
- 42704,
190
- 21972,
191
- //2060-2069
192
- 21200,
193
- 43448,
194
- 43344,
195
- 46240,
196
- 46758,
197
- 44368,
198
- 21920,
199
- 43940,
200
- 42416,
201
- 21168,
202
- //2070-2079
203
- 45683,
204
- 26928,
205
- 29495,
206
- 27296,
207
- 44368,
208
- 84821,
209
- 19296,
210
- 42352,
211
- 21732,
212
- 53600,
213
- //2080-2089
214
- 59752,
215
- 54560,
216
- 55968,
217
- 92838,
218
- 22224,
219
- 19168,
220
- 43476,
221
- 41680,
222
- 53584,
223
- 62034,
224
- //2090-2099
225
- 54560
226
- ];
227
- var solarMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
228
- var Gan = ["\u7532", "\u4E59", "\u4E19", "\u4E01", "\u620A", "\u5DF1", "\u5E9A", "\u8F9B", "\u58EC", "\u7678"];
229
- var Zhi = ["\u5B50", "\u4E11", "\u5BC5", "\u536F", "\u8FB0", "\u5DF3", "\u5348", "\u672A", "\u7533", "\u9149", "\u620C", "\u4EA5"];
230
- var ChineseZodiac = ["\u9F20", "\u725B", "\u864E", "\u5154", "\u9F99", "\u86C7", "\u9A6C", "\u7F8A", "\u7334", "\u9E21", "\u72D7", "\u732A"];
231
- var festival = {
232
- "1-1": {
233
- title: "\u5143\u65E6\u8282"
234
- },
235
- "2-14": {
236
- title: "\u60C5\u4EBA\u8282"
237
- },
238
- "5-1": {
239
- title: "\u52B3\u52A8\u8282"
240
- },
241
- "5-4": {
242
- title: "\u9752\u5E74\u8282"
243
- },
244
- "6-1": {
245
- title: "\u513F\u7AE5\u8282"
246
- },
247
- "9-10": {
248
- title: "\u6559\u5E08\u8282"
249
- },
250
- "10-1": {
251
- title: "\u56FD\u5E86\u8282"
252
- },
253
- "12-25": {
254
- title: "\u5723\u8BDE\u8282"
255
- },
256
- "3-8": {
257
- title: "\u5987\u5973\u8282"
258
- },
259
- "3-12": {
260
- title: "\u690D\u6811\u8282"
261
- },
262
- "4-1": {
263
- title: "\u611A\u4EBA\u8282"
264
- },
265
- "5-12": {
266
- title: "\u62A4\u58EB\u8282"
267
- },
268
- "7-1": {
269
- title: "\u5EFA\u515A\u8282"
270
- },
271
- "8-1": {
272
- title: "\u5EFA\u519B\u8282"
273
- },
274
- "12-24": {
275
- title: "\u5E73\u5B89\u591C"
276
- }
277
- };
278
- var lFestival = {
279
- "12-30": {
280
- title: "\u9664\u5915"
281
- },
282
- "1-1": {
283
- title: "\u6625\u8282"
284
- },
285
- "1-15": {
286
- title: "\u5143\u5BB5\u8282"
287
- },
288
- "2-2": {
289
- title: "\u9F99\u62AC\u5934"
290
- },
291
- "5-5": {
292
- title: "\u7AEF\u5348\u8282"
293
- },
294
- "7-7": {
295
- title: "\u4E03\u5915\u8282"
296
- },
297
- "7-15": {
298
- title: "\u4E2D\u5143\u8282"
299
- },
300
- "8-15": {
301
- title: "\u4E2D\u79CB\u8282"
302
- },
303
- "9-9": {
304
- title: "\u91CD\u9633\u8282"
305
- },
306
- "10-1": {
307
- title: "\u5BD2\u8863\u8282"
308
- },
309
- "10-15": {
310
- title: "\u4E0B\u5143\u8282"
311
- },
312
- "12-8": {
313
- title: "\u814A\u516B\u8282"
314
- },
315
- "12-23": {
316
- title: "\u5317\u65B9\u5C0F\u5E74"
317
- },
318
- "12-24": {
319
- title: "\u5357\u65B9\u5C0F\u5E74"
320
- }
321
- };
322
- var solarTerm = ["\u5C0F\u5BD2", "\u5927\u5BD2", "\u7ACB\u6625", "\u96E8\u6C34", "\u60CA\u86F0", "\u6625\u5206", "\u6E05\u660E", "\u8C37\u96E8", "\u7ACB\u590F", "\u5C0F\u6EE1", "\u8292\u79CD", "\u590F\u81F3", "\u5C0F\u6691", "\u5927\u6691", "\u7ACB\u79CB", "\u5904\u6691", "\u767D\u9732", "\u79CB\u5206", "\u5BD2\u9732", "\u971C\u964D", "\u7ACB\u51AC", "\u5C0F\u96EA", "\u5927\u96EA", "\u51AC\u81F3"];
323
- var sTermInfo = ["9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c3598082c95f8c965cc920f", "97bd0b06bdb0722c965ce1cfcc920f", "b027097bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c359801ec95f8c965cc920f", "97bd0b06bdb0722c965ce1cfcc920f", "b027097bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c359801ec95f8c965cc920f", "97bd0b06bdb0722c965ce1cfcc920f", "b027097bd097c36b0b6fc9274c91aa", "9778397bd19801ec9210c965cc920e", "97b6b97bd19801ec95f8c965cc920f", "97bd09801d98082c95f8e1cfcc920f", "97bd097bd097c36b0b6fc9210c8dc2", "9778397bd197c36c9210c9274c91aa", "97b6b97bd19801ec95f8c965cc920e", "97bd09801d98082c95f8e1cfcc920f", "97bd097bd097c36b0b6fc9210c8dc2", "9778397bd097c36c9210c9274c91aa", "97b6b97bd19801ec95f8c965cc920e", "97bcf97c3598082c95f8e1cfcc920f", "97bd097bd097c36b0b6fc9210c8dc2", "9778397bd097c36c9210c9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c3598082c95f8c965cc920f", "97bd097bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c3598082c95f8c965cc920f", "97bd097bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c359801ec95f8c965cc920f", "97bd097bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c359801ec95f8c965cc920f", "97bd097bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf97c359801ec95f8c965cc920f", "97bd097bd07f595b0b6fc920fb0722", "9778397bd097c36b0b6fc9210c8dc2", "9778397bd19801ec9210c9274c920e", "97b6b97bd19801ec95f8c965cc920f", "97bd07f5307f595b0b0bc920fb0722", "7f0e397bd097c36b0b6fc9210c8dc2", "9778397bd097c36c9210c9274c920e", "97b6b97bd19801ec95f8c965cc920f", "97bd07f5307f595b0b0bc920fb0722", "7f0e397bd097c36b0b6fc9210c8dc2", "9778397bd097c36c9210c9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bd07f1487f595b0b0bc920fb0722", "7f0e397bd097c36b0b6fc9210c8dc2", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf7f1487f595b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf7f1487f595b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf7f1487f531b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c965cc920e", "97bcf7f1487f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b97bd19801ec9210c9274c920e", "97bcf7f0e47f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "9778397bd097c36b0b6fc9210c91aa", "97b6b97bd197c36c9210c9274c920e", "97bcf7f0e47f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "9778397bd097c36b0b6fc9210c8dc2", "9778397bd097c36c9210c9274c920e", "97b6b7f0e47f531b0723b0b6fb0722", "7f0e37f5307f595b0b0bc920fb0722", "7f0e397bd097c36b0b6fc9210c8dc2", "9778397bd097c36b0b70c9274c91aa", "97b6b7f0e47f531b0723b0b6fb0721", "7f0e37f1487f595b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc9210c8dc2", "9778397bd097c36b0b6fc9274c91aa", "97b6b7f0e47f531b0723b0b6fb0721", "7f0e27f1487f595b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "9778397bd097c36b0b6fc9274c91aa", "97b6b7f0e47f531b0723b0787b0721", "7f0e27f0e47f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "9778397bd097c36b0b6fc9210c91aa", "97b6b7f0e47f149b0723b0787b0721", "7f0e27f0e47f531b0723b0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "9778397bd097c36b0b6fc9210c8dc2", "977837f0e37f149b0723b0787b0721", "7f07e7f0e47f531b0723b0b6fb0722", "7f0e37f5307f595b0b0bc920fb0722", "7f0e397bd097c35b0b6fc9210c8dc2", "977837f0e37f14998082b0787b0721", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e37f1487f595b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc9210c8dc2", "977837f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "977837f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd097c35b0b6fc920fb0722", "977837f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "977837f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "977837f0e37f14998082b0787b06bd", "7f07e7f0e47f149b0723b0787b0721", "7f0e27f0e47f531b0b0bb0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "977837f0e37f14998082b0723b06bd", "7f07e7f0e37f149b0723b0787b0721", "7f0e27f0e47f531b0723b0b6fb0722", "7f0e397bd07f595b0b0bc920fb0722", "977837f0e37f14898082b0723b02d5", "7ec967f0e37f14998082b0787b0721", "7f07e7f0e47f531b0723b0b6fb0722", "7f0e37f1487f595b0b0bb0b6fb0722", "7f0e37f0e37f14898082b0723b02d5", "7ec967f0e37f14998082b0787b0721", "7f07e7f0e47f531b0723b0b6fb0722", "7f0e37f1487f531b0b0bb0b6fb0722", "7f0e37f0e37f14898082b0723b02d5", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e37f1487f531b0b0bb0b6fb0722", "7f0e37f0e37f14898082b072297c35", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e37f0e37f14898082b072297c35", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e37f0e366aa89801eb072297c35", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f149b0723b0787b0721", "7f0e27f1487f531b0b0bb0b6fb0722", "7f0e37f0e366aa89801eb072297c35", "7ec967f0e37f14998082b0723b06bd", "7f07e7f0e47f149b0723b0787b0721", "7f0e27f0e47f531b0723b0b6fb0722", "7f0e37f0e366aa89801eb072297c35", "7ec967f0e37f14998082b0723b06bd", "7f07e7f0e37f14998083b0787b0721", "7f0e27f0e47f531b0723b0b6fb0722", "7f0e37f0e366aa89801eb072297c35", "7ec967f0e37f14898082b0723b02d5", "7f07e7f0e37f14998082b0787b0721", "7f07e7f0e47f531b0723b0b6fb0722", "7f0e36665b66aa89801e9808297c35", "665f67f0e37f14898082b0723b02d5", "7ec967f0e37f14998082b0787b0721", "7f07e7f0e47f531b0723b0b6fb0722", "7f0e36665b66a449801e9808297c35", "665f67f0e37f14898082b0723b02d5", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e36665b66a449801e9808297c35", "665f67f0e37f14898082b072297c35", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e26665b66a449801e9808297c35", "665f67f0e37f1489801eb072297c35", "7ec967f0e37f14998082b0787b06bd", "7f07e7f0e47f531b0723b0b6fb0721", "7f0e27f1487f531b0b0bb0b6fb0722"];
324
- var nStr1 = ["\u65E5", "\u4E00", "\u4E8C", "\u4E09", "\u56DB", "\u4E94", "\u516D", "\u4E03", "\u516B", "\u4E5D", "\u5341"];
325
- var nStr2 = ["\u521D", "\u5341", "\u5EFF", "\u5345"];
326
- var nStr3 = ["\u6B63", "\u4E8C", "\u4E09", "\u56DB", "\u4E94", "\u516D", "\u4E03", "\u516B", "\u4E5D", "\u5341", "\u51AC", "\u814A"];
327
- var calendar2 = {
328
- /**
329
- * 农历1900-2100的润大小信息表
330
- * @Array Of Property
331
- * @return Hex
332
- */
333
- lunarInfo,
334
- /**
335
- * 公历每个月份的天数普通表
336
- * @Array Of Property
337
- * @return Number
338
- */
339
- solarMonth,
340
- /**
341
- * 天干地支之天干速查表
342
- * @Array Of Property trans["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"]
343
- * @return Cn string
344
- */
345
- Gan,
346
- /**
347
- * 天干地支之地支速查表
348
- * @Array Of Property
349
- * @trans["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"]
350
- * @return Cn string
351
- */
352
- Zhi,
353
- /**
354
- * 天干地支之地支速查表<=>生肖
355
- * @Array Of Property
356
- * @trans["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"]
357
- * @return Cn string
358
- */
359
- Animals: ChineseZodiac,
360
- /**
361
- * 阳历节日
362
- */
363
- festival,
364
- /**
365
- * 农历节日
366
- */
367
- lFestival,
368
- /**
369
- * 24节气速查表
370
- * @Array Of Property
371
- * @trans["小寒","大寒","立春","雨水","惊蛰","春分","清明","谷雨","立夏","小满","芒种","夏至","小暑","大暑","立秋","处暑","白露","秋分","寒露","霜降","立冬","小雪","大雪","冬至"]
372
- * @return Cn string
373
- */
374
- solarTerm,
375
- /**
376
- * 1900-2100各年的24节气日期速查表
377
- * @Array Of Property
378
- * @return 0x string For splice
379
- */
380
- sTermInfo,
381
- /**
382
- * 数字转中文速查表
383
- * @Array Of Property
384
- * @trans ['日','一','二','三','四','五','六','七','八','九','十']
385
- * @return Cn string
386
- */
387
- nStr1,
388
- /**
389
- * 日期转农历称呼速查表
390
- * @Array Of Property
391
- * @trans ['初','十','廿','卅']
392
- * @return Cn string
393
- */
394
- nStr2,
395
- /**
396
- * 月份转农历称呼速查表
397
- * @Array Of Property
398
- * @trans ['正','一','二','三','四','五','六','七','八','九','十','冬','腊']
399
- * @return Cn string
400
- */
401
- nStr3,
402
- /**
403
- * 返回默认定义的阳历节日
404
- */
405
- getFestival: function getFestival() {
406
- return this.festival;
407
- },
408
- /**
409
- * 返回默认定义的内容里节日
410
- */
411
- getLunarFestival: function getLunarFestival() {
412
- return this.lFestival;
413
- },
414
- /**
415
- *
416
- * @param param {Object} 按照festival的格式输入数据,设置阳历节日
417
- */
418
- setFestival: function setFestival() {
419
- var param = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
420
- this.festival = param;
421
- },
422
- /**
423
- *
424
- * @param param {Object} 按照lFestival的格式输入数据,设置农历节日
425
- */
426
- setLunarFestival: function setLunarFestival() {
427
- var param = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
428
- this.lFestival = param;
429
- },
430
- /**
431
- * 返回农历y年一整年的总天数
432
- * @param y lunar Year
433
- * @return Number
434
- * @eg:var count = calendar.lYearDays(1987) ;//count=387
435
- */
436
- lYearDays: function lYearDays(y) {
437
- var i, sum = 348;
438
- for (i = 32768; i > 8; i >>= 1) {
439
- sum += this.lunarInfo[y - 1900] & i ? 1 : 0;
440
- }
441
- return sum + this.leapDays(y);
442
- },
443
- /**
444
- * 返回农历y年闰月是哪个月;若y年没有闰月 则返回0
445
- * @param y lunar Year
446
- * @return Number (0-12)
447
- * @eg:var leapMonth = calendar.leapMonth(1987) ;//leapMonth=6
448
- */
449
- leapMonth: function leapMonth(y) {
450
- return this.lunarInfo[y - 1900] & 15;
451
- },
452
- /**
453
- * 返回农历y年闰月的天数 若该年没有闰月则返回0
454
- * @param y lunar Year
455
- * @return Number (0、29、30)
456
- * @eg:var leapMonthDay = calendar.leapDays(1987) ;//leapMonthDay=29
457
- */
458
- leapDays: function leapDays(y) {
459
- if (this.leapMonth(y)) {
460
- return this.lunarInfo[y - 1900] & 65536 ? 30 : 29;
461
- }
462
- return 0;
463
- },
464
- /**
465
- * 返回农历y年m月(非闰月)的总天数,计算m为闰月时的天数请使用leapDays方法
466
- * @param y lunar Year
467
- * @param m lunar Month
468
- * @return Number (-1、29、30)
469
- * @eg:var MonthDay = calendar.monthDays(1987,9) ;//MonthDay=29
470
- */
471
- monthDays: function monthDays(y, m) {
472
- if (m > 12 || m < 1) {
473
- return -1;
474
- }
475
- return this.lunarInfo[y - 1900] & 65536 >> m ? 30 : 29;
476
- },
477
- /**
478
- * 返回公历(!)y年m月的天数
479
- * @param y solar Year
480
- * @param m solar Month
481
- * @return Number (-1、28、29、30、31)
482
- * @eg:var solarMonthDay = calendar.leapDays(1987) ;//solarMonthDay=30
483
- */
484
- solarDays: function solarDays(y, m) {
485
- if (m > 12 || m < 1) {
486
- return -1;
487
- }
488
- var ms = m - 1;
489
- if (ms === 1) {
490
- return y % 4 === 0 && y % 100 !== 0 || y % 400 === 0 ? 29 : 28;
491
- } else {
492
- return this.solarMonth[ms];
493
- }
494
- },
495
- /**
496
- * 农历年份转换为干支纪年
497
- * @param lYear 农历年的年份数
498
- * @return Cn string
499
- */
500
- toGanZhiYear: function toGanZhiYear(lYear) {
501
- var ganKey = (lYear - 3) % 10;
502
- var zhiKey = (lYear - 3) % 12;
503
- if (ganKey === 0) ganKey = 10;
504
- if (zhiKey === 0) zhiKey = 12;
505
- return this.Gan[ganKey - 1] + this.Zhi[zhiKey - 1];
506
- },
507
- /**
508
- * 公历月、日判断所属星座
509
- * @param cMonth [description]
510
- * @param cDay [description]
511
- * @return Cn string
512
- */
513
- toAstro: function toAstro(cMonth, cDay) {
514
- var s = "\u6469\u7FAF\u6C34\u74F6\u53CC\u9C7C\u767D\u7F8A\u91D1\u725B\u53CC\u5B50\u5DE8\u87F9\u72EE\u5B50\u5904\u5973\u5929\u79E4\u5929\u874E\u5C04\u624B\u6469\u7FAF";
515
- var arr = [20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22];
516
- return s.substr(cMonth * 2 - (cDay < arr[cMonth - 1] ? 2 : 0), 2) + "\u5EA7";
517
- },
518
- /**
519
- * 传入offset偏移量返回干支
520
- * @param offset 相对甲子的偏移量
521
- * @return Cn string
522
- */
523
- toGanZhi: function toGanZhi(offset) {
524
- return this.Gan[offset % 10] + this.Zhi[offset % 12];
525
- },
526
- /**
527
- * 传入公历(!)y年获得该年第n个节气的公历日期
528
- * @param y y公历年(1900-2100)
529
- * @param n n二十四节气中的第几个节气(1~24);从n=1(小寒)算起
530
- * @return day Number
531
- * @eg:var _24 = calendar.getTerm(1987,3) ;//_24=4;意即1987年2月4日立春
532
- */
533
- getTerm: function getTerm(y, n) {
534
- if (y < 1900 || y > 2100 || n < 1 || n > 24) {
535
- return -1;
536
- }
537
- var _table = this.sTermInfo[y - 1900];
538
- var _calcDay = [];
539
- for (var index = 0; index < _table.length; index += 5) {
540
- var chunk = parseInt("0x" + _table.substr(index, 5)).toString();
541
- _calcDay.push(chunk[0], chunk.substr(1, 2), chunk[3], chunk.substr(4, 2));
542
- }
543
- return parseInt(_calcDay[n - 1]);
544
- },
545
- /**
546
- * 传入农历数字月份返回汉语通俗表示法
547
- * @param m lunar month
548
- * @return Cn string
549
- * @eg:var cnMonth = calendar.toChinaMonth(12) ;//cnMonth='腊月'
550
- */
551
- toChinaMonth: function toChinaMonth(m) {
552
- if (m > 12 || m < 1) {
553
- return -1;
554
- }
555
- var s = this.nStr3[m - 1];
556
- s += "\u6708";
557
- return s;
558
- },
559
- /**
560
- * 传入农历日期数字返回汉字表示法
561
- * @param d lunar day
562
- * @return Cn string
563
- * @eg:var cnDay = calendar.toChinaDay(21) ;//cnMonth='廿一'
564
- */
565
- toChinaDay: function toChinaDay(d) {
566
- var s;
567
- switch (d) {
568
- case 10:
569
- s = "\u521D\u5341";
570
- break;
571
- case 20:
572
- s = "\u4E8C\u5341";
573
- break;
574
- case 30:
575
- s = "\u4E09\u5341";
576
- break;
577
- default:
578
- s = this.nStr2[Math.floor(d / 10)];
579
- s += this.nStr1[d % 10];
580
- }
581
- return s;
582
- },
583
- /**
584
- * 年份转生肖[!仅能大致转换] => 精确划分生肖分界线是“立春”
585
- * @param y year
586
- * @return Cn string
587
- * @eg:var animal = calendar.getAnimal(1987) ;//animal='兔'
588
- */
589
- getAnimal: function getAnimal(y) {
590
- return this.Animals[(y - 4) % 12];
591
- },
592
- /**
593
- * 传入阳历年月日获得详细的公历、农历object信息 <=>JSON
594
- * !important! 公历参数区间1900.1.31~2100.12.31
595
- * @param yPara solar year
596
- * @param mPara solar month
597
- * @param dPara solar day
598
- * @return JSON object
599
- * @eg:
600
- */
601
- solar2lunar: function solar2lunar(yPara, mPara, dPara) {
602
- var y = parseInt(yPara);
603
- var m = parseInt(mPara);
604
- var d = parseInt(dPara);
605
- if (y < 1900 || y > 2100) {
606
- return -1;
607
- }
608
- if (y === 1900 && m === 1 && d < 31) {
609
- return -1;
610
- }
611
- var objDate;
612
- if (!y) {
613
- objDate = /* @__PURE__ */ new Date();
614
- } else {
615
- objDate = new Date(y, parseInt(m) - 1, d);
616
- }
617
- var i, leap = 0, temp = 0;
618
- y = objDate.getFullYear();
619
- m = objDate.getMonth() + 1;
620
- d = objDate.getDate();
621
- var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 864e5;
622
- for (i = 1900; i < 2101 && offset > 0; i++) {
623
- temp = this.lYearDays(i);
624
- offset -= temp;
625
- }
626
- if (offset < 0) {
627
- offset += temp;
628
- i--;
629
- }
630
- var isTodayObj = /* @__PURE__ */ new Date(), isToday = false;
631
- if (isTodayObj.getFullYear() === y && isTodayObj.getMonth() + 1 === m && isTodayObj.getDate() === d) {
632
- isToday = true;
633
- }
634
- var nWeek = objDate.getDay(), cWeek = this.nStr1[nWeek];
635
- if (nWeek === 0) {
636
- nWeek = 7;
637
- }
638
- var year = i;
639
- leap = this.leapMonth(i);
640
- var isLeap = false;
641
- for (i = 1; i < 13 && offset > 0; i++) {
642
- if (leap > 0 && i === leap + 1 && isLeap === false) {
643
- --i;
644
- isLeap = true;
645
- temp = this.leapDays(year);
646
- } else {
647
- temp = this.monthDays(year, i);
648
- }
649
- if (isLeap === true && i === leap + 1) {
650
- isLeap = false;
651
- }
652
- offset -= temp;
653
- }
654
- if (offset === 0 && leap > 0 && i === leap + 1) {
655
- if (isLeap) {
656
- isLeap = false;
657
- } else {
658
- isLeap = true;
659
- --i;
660
- }
661
- }
662
- if (offset < 0) {
663
- offset += temp;
664
- --i;
665
- }
666
- var month = i;
667
- var day = offset + 1;
668
- var sm = m - 1;
669
- var gzY = this.toGanZhiYear(year);
670
- var firstNode = this.getTerm(y, m * 2 - 1);
671
- var secondNode = this.getTerm(y, m * 2);
672
- var gzM = this.toGanZhi((y - 1900) * 12 + m + 11);
673
- if (d >= firstNode) {
674
- gzM = this.toGanZhi((y - 1900) * 12 + m + 12);
675
- }
676
- var isTerm = false;
677
- var Term = null;
678
- if (firstNode === d) {
679
- isTerm = true;
680
- Term = this.solarTerm[m * 2 - 2];
681
- }
682
- if (secondNode === d) {
683
- isTerm = true;
684
- Term = this.solarTerm[m * 2 - 1];
685
- }
686
- var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 864e5 + 25567 + 10;
687
- var gzD = this.toGanZhi(dayCyclical + d - 1);
688
- var astro = this.toAstro(m, d);
689
- var solarDate = y + "-" + m + "-" + d;
690
- var lunarDate = year + "-" + month + "-" + day;
691
- var festival2 = this.festival;
692
- var lFestival2 = this.lFestival;
693
- var festivalDate = m + "-" + d;
694
- var lunarFestivalDate = month + "-" + day;
695
- if (month === 12 && day === 29 && this.monthDays(year, month) === 29) {
696
- lunarFestivalDate = "12-30";
697
- }
698
- return {
699
- date: solarDate,
700
- lunarDate,
701
- festival: festival2[festivalDate] ? festival2[festivalDate].title : null,
702
- lunarFestival: lFestival2[lunarFestivalDate] ? lFestival2[lunarFestivalDate].title : null,
703
- "lYear": year,
704
- "lMonth": month,
705
- "lDay": day,
706
- "Animal": this.getAnimal(year),
707
- "IMonthCn": (isLeap ? "\u95F0" : "") + this.toChinaMonth(month),
708
- "IDayCn": this.toChinaDay(day),
709
- "cYear": y,
710
- "cMonth": m,
711
- "cDay": d,
712
- "gzYear": gzY,
713
- "gzMonth": gzM,
714
- "gzDay": gzD,
715
- "isToday": isToday,
716
- "isLeap": isLeap,
717
- "nWeek": nWeek,
718
- "ncWeek": "\u661F\u671F" + cWeek,
719
- "isTerm": isTerm,
720
- "Term": Term,
721
- "astro": astro
722
- };
723
- },
724
- /**
725
- * 传入农历年月日以及传入的月份是否闰月获得详细的公历、农历object信息 <=>JSON
726
- * !important! 参数区间1900.1.31~2100.12.1
727
- * @param y lunar year
728
- * @param m lunar month
729
- * @param d lunar day
730
- * @param isLeapMonth lunar month is leap or not.[如果是农历闰月第四个参数赋值true即可]
731
- * @return JSON object
732
- * @eg:
733
- */
734
- lunar2solar: function lunar2solar(y, m, d, isLeapMonth) {
735
- y = parseInt(y);
736
- m = parseInt(m);
737
- d = parseInt(d);
738
- isLeapMonth = !!isLeapMonth;
739
- var leapMonth = this.leapMonth(y);
740
- this.leapDays(y);
741
- if (isLeapMonth && leapMonth !== m) {
742
- return -1;
743
- }
744
- if (y === 2100 && m === 12 && d > 1 || y === 1900 && m === 1 && d < 31) {
745
- return -1;
746
- }
747
- var day = this.monthDays(y, m);
748
- var _day = day;
749
- if (isLeapMonth) {
750
- _day = this.leapDays(y, m);
751
- }
752
- if (y < 1900 || y > 2100 || d > _day) {
753
- return -1;
754
- }
755
- var offset = 0;
756
- var i;
757
- for (i = 1900; i < y; i++) {
758
- offset += this.lYearDays(i);
759
- }
760
- var leap = 0, isAdd = false;
761
- for (i = 1; i < m; i++) {
762
- leap = this.leapMonth(y);
763
- if (!isAdd) {
764
- if (leap <= i && leap > 0) {
765
- offset += this.leapDays(y);
766
- isAdd = true;
767
- }
768
- }
769
- offset += this.monthDays(y, i);
770
- }
771
- if (isLeapMonth) {
772
- offset += day;
773
- }
774
- var strap = Date.UTC(1900, 1, 30, 0, 0, 0);
775
- var calObj = new Date((offset + d - 31) * 864e5 + strap);
776
- var cY = calObj.getUTCFullYear();
777
- var cM = calObj.getUTCMonth() + 1;
778
- var cD = calObj.getUTCDate();
779
- return this.solar2lunar(cY, cM, cD);
780
- }
781
- };
782
- return calendar2;
783
- }();
784
-
785
- export { calendar as default };