elykia 1.0.19 → 1.0.20

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.
Files changed (2) hide show
  1. package/blog/welcome.js +165 -85
  2. package/package.json +1 -1
package/blog/welcome.js CHANGED
@@ -3,40 +3,29 @@ const elykia = {
3
3
  setWelcome_info: async () => {
4
4
  if (!document.getElementById("welcome-info")) return;
5
5
 
6
- let ipLocation = localStorage.getItem('welcome-info');
7
- if (ipLocation) ipLocation = JSON.parse(ipLocation);
8
-
9
6
  try {
10
- if (!ipLocation) {
11
- return new Promise((resolve, reject) => {
12
- var script = document.createElement('script');
13
- var url = `https://apis.map.qq.com/ws/location/v1/ip?key=TNLBZ-FS2LQ-4X257-4ACX6-OP673-62BFJ&output=jsonp&callback=QQmap`;
14
- script.src = url;
7
+ return new Promise((resolve, reject) => {
8
+ var script = document.createElement('script');
9
+ var url = `https://apis.map.qq.com/ws/location/v1/ip?key=TNLBZ-FS2LQ-4X257-4ACX6-OP673-62BFJ&output=jsonp&callback=QQmap`;
10
+ script.src = url;
15
11
 
16
- window.QQmap = (data) => {
17
- if (data.status === 0) {
18
- ipLocation = data;
19
- localStorage.setItem('welcome-info', JSON.stringify({
20
- data: ipLocation,
21
- timestamp: Date.now()
22
- }));
23
- elykia.showWelcome(ipLocation);
24
- resolve();
25
- } else {
26
- reject(new Error('Failed to fetch location data'));
27
- }
28
- document.body.removeChild(script);
29
- delete window.QQmap;
30
- };
31
- document.body.appendChild(script);
32
- });
33
- } else {
34
- elykia.showWelcome(ipLocation.data || ipLocation);
35
- }
12
+ window.QQmap = (data) => {
13
+ if (data.status === 0) {
14
+ elykia.showWelcome(data);
15
+ resolve();
16
+ } else {
17
+ reject(new Error('Failed to fetch location data'));
18
+ }
19
+ document.body.removeChild(script);
20
+ delete window.QQmap;
21
+ };
22
+ document.body.appendChild(script);
23
+ });
36
24
  } catch (err) {
37
25
  console.error("Error fetching data:", err);
38
26
  }
39
27
  },
28
+
40
29
  //根据经纬度计算两点距离(点1经度,点1纬度,点2经度,点2纬度)
41
30
  getDistance: (e1, n1, e2, n2) => {
42
31
  const R = 6371
@@ -52,13 +41,20 @@ const elykia = {
52
41
  let r = asin(c / 2) * 2 * R
53
42
  return Math.round(r);
54
43
  },
44
+
55
45
  //根据国家、省份、城市信息自定义欢迎语
56
46
  showWelcome: (ipStore) => {
57
47
  const WelcomeInfo = document.getElementById("welcome-info"),
58
48
  IP = ipStore.result.ip || "未知";
59
- let dist = elykia.getDistance(113.625000, 34.747201, ipStore.result.location.lng, ipStore.result.location.lat),
49
+ let dist = elykia.getDistance(
50
+ 113.625000,
51
+ 34.747201,
52
+ ipStore.result.location.lng,
53
+ ipStore.result.location.lat
54
+ ),
60
55
  address,
61
56
  welcome_info;
57
+
62
58
  //根据国家、省份、城市信息自定义欢迎语
63
59
  //海外地区不支持省份及城市信息
64
60
  switch (ipStore.result.ad_info.nation) {
@@ -87,7 +83,13 @@ const elykia = {
87
83
  welcome_info = "拾起一片枫叶赠予你";
88
84
  break;
89
85
  case "中国":
90
- address = ipStore.result.ad_info.province + " " + ipStore.result.ad_info.city+ " " + ipStore.result.ad_info.district;
86
+ address =
87
+ ipStore.result.ad_info.province +
88
+ " " +
89
+ ipStore.result.ad_info.city +
90
+ " " +
91
+ ipStore.result.ad_info.district;
92
+
91
93
  switch (ipStore.result.ad_info.province) {
92
94
  case "北京市":
93
95
  address = "北京市";
@@ -99,16 +101,19 @@ const elykia = {
99
101
  break;
100
102
  case "重庆市":
101
103
  address = "重庆市";
102
- welcome_info = "高德地图:已到达重庆,下面交给百度地图导航"
104
+ welcome_info =
105
+ "高德地图:已到达重庆,下面交给百度地图导航";
103
106
  break;
104
107
  case "河北省":
105
- welcome_info = "山势巍巍成壁垒,天下雄关。铁马金戈由此向,无限江山";
108
+ welcome_info =
109
+ "山势巍巍成壁垒,天下雄关。铁马金戈由此向,无限江山";
106
110
  break;
107
111
  case "山西省":
108
112
  welcome_info = "展开坐具长三尺,已占山河五百余";
109
113
  break;
110
114
  case "内蒙古自治区":
111
- welcome_info = "天苍苍,野茫茫,风吹草低见牛羊";
115
+ welcome_info =
116
+ "天苍苍,野茫茫,风吹草低见牛羊";
112
117
  break;
113
118
  case "辽宁省":
114
119
  welcome_info = "我想吃烤鸡架";
@@ -121,28 +126,33 @@ const elykia = {
121
126
  break;
122
127
  case "上海市":
123
128
  address = "上海市";
124
- welcome_info = "众所周知,中国只有两个城市";
129
+ welcome_info =
130
+ "众所周知,中国只有两个城市";
125
131
  break;
126
132
  case "江苏省":
127
133
  switch (ipStore.result.ad_info.city) {
128
134
  case "南京市":
129
- welcome_info = "欢迎来自安徽省南京市的小伙伴";
135
+ welcome_info =
136
+ "欢迎来自安徽省南京市的小伙伴";
130
137
  break;
131
138
  case "苏州市":
132
139
  welcome_info = "上有天堂,下有苏杭";
133
140
  break;
134
141
  default:
135
- welcome_info = "散装是必须要散装的";
142
+ welcome_info =
143
+ "散装是必须要散装的";
136
144
  break;
137
145
  }
138
146
  break;
139
147
  case "浙江省":
140
148
  switch (ipStore.result.ad_info.city) {
141
149
  case "杭州市":
142
- welcome_info = "东风渐绿西湖柳,雁已还人未南归";
150
+ welcome_info =
151
+ "东风渐绿西湖柳,雁已还人未南归";
143
152
  break;
144
153
  default:
145
- welcome_info = "望海楼明照曙霞,护江堤白蹋晴沙";
154
+ welcome_info =
155
+ "望海楼明照曙霞,护江堤白蹋晴沙";
146
156
  break;
147
157
  }
148
158
  break;
@@ -153,15 +163,18 @@ const elykia = {
153
163
  welcome_info = "井邑白云间,岩城远带山";
154
164
  break;
155
165
  case "江西省":
156
- welcome_info = "落霞与孤鹜齐飞,秋水共长天一色";
166
+ welcome_info =
167
+ "落霞与孤鹜齐飞,秋水共长天一色";
157
168
  break;
158
169
  case "山东省":
159
- welcome_info = "遥望齐州九点烟,一泓海水杯中泻";
170
+ welcome_info =
171
+ "遥望齐州九点烟,一泓海水杯中泻";
160
172
  break;
161
173
  case "湖北省":
162
174
  switch (ipStore.result.ad_info.city) {
163
175
  case "黄冈市":
164
- welcome_info = "红安将军县!辈出将才!";
176
+ welcome_info =
177
+ "红安将军县!辈出将才!";
165
178
  break;
166
179
  default:
167
180
  welcome_info = "来碗热干面~";
@@ -174,16 +187,19 @@ const elykia = {
174
187
  case "广东省":
175
188
  switch (ipStore.result.ad_info.city) {
176
189
  case "广州市":
177
- welcome_info = "看小蛮腰,喝早茶了嘛~";
190
+ welcome_info =
191
+ "看小蛮腰,喝早茶了嘛~";
178
192
  break;
179
193
  case "深圳市":
180
- welcome_info = "今天你逛商场了嘛~";
194
+ welcome_info =
195
+ "今天你逛商场了嘛~";
181
196
  break;
182
197
  case "阳江市":
183
198
  welcome_info = "阳春合水!";
184
199
  break;
185
200
  default:
186
- welcome_info = "老板来两斤福建人";
201
+ welcome_info =
202
+ "老板来两斤福建人";
187
203
  break;
188
204
  }
189
205
  break;
@@ -191,7 +207,8 @@ const elykia = {
191
207
  welcome_info = "桂林山水甲天下";
192
208
  break;
193
209
  case "海南省":
194
- welcome_info = "朝观日出逐白浪,夕看云起收霞光";
210
+ welcome_info =
211
+ "朝观日出逐白浪,夕看云起收霞光";
195
212
  break;
196
213
  case "四川省":
197
214
  welcome_info = "康康川妹子";
@@ -199,117 +216,180 @@ const elykia = {
199
216
  case "贵州省":
200
217
  switch (ipStore.result.ad_info.city) {
201
218
  case "六盘水市":
202
- welcome_info = "凉都六盘水,您好";
219
+ welcome_info =
220
+ "凉都六盘水,您好";
203
221
  break;
204
222
  case "贵阳市":
205
- welcome_info = "爽爽贵阳,您好";
223
+ welcome_info =
224
+ "爽爽贵阳,您好";
206
225
  break;
207
226
  case "遵义市":
208
- welcome_info = "遵义红城,您好";
227
+ welcome_info =
228
+ "遵义红城,您好";
209
229
  break;
210
230
  case "安顺市":
211
- welcome_info = "安顺福地,您好";
231
+ welcome_info =
232
+ "安顺福地,您好";
212
233
  break;
213
234
  case "毕节市":
214
- welcome_info = "毕节山水,您好";
235
+ welcome_info =
236
+ "毕节山水,您好";
215
237
  break;
216
238
  case "铜仁市":
217
- welcome_info = "铜仁梵净,您好";
239
+ welcome_info =
240
+ "铜仁梵净,您好";
218
241
  break;
219
242
  case "黔西南布依族苗族自治州":
220
- welcome_info = "黔西南风情,您好";
243
+ welcome_info =
244
+ "黔西南风情,您好";
221
245
  break;
222
246
  case "黔东南苗族侗族自治州":
223
- welcome_info = "黔东南歌舞,您好";
247
+ welcome_info =
248
+ "黔东南歌舞,您好";
224
249
  break;
225
250
  case "黔南布依族苗族自治州":
226
- welcome_info = "黔南美景,您好";
251
+ welcome_info =
252
+ "黔南美景,您好";
227
253
  break;
228
254
  default:
229
- welcome_info = "茅台,学生,再塞200";
255
+ welcome_info =
256
+ "茅台,学生,再塞200";
230
257
  break;
231
258
  }
232
259
  break;
233
260
  case "云南省":
234
- welcome_info = "玉龙飞舞云缠绕,万仞冰川直耸天";
261
+ welcome_info =
262
+ "玉龙飞舞云缠绕,万仞冰川直耸天";
235
263
  break;
236
264
  case "西藏自治区":
237
- welcome_info = "躺在茫茫草原上,仰望蓝天";
265
+ welcome_info =
266
+ "躺在茫茫草原上,仰望蓝天";
238
267
  break;
239
268
  case "陕西省":
240
269
  welcome_info = "来份臊子面加馍";
241
270
  break;
242
271
  case "甘肃省":
243
- welcome_info = "羌笛何须怨杨柳,春风不度玉门关";
272
+ welcome_info =
273
+ "羌笛何须怨杨柳,春风不度玉门关";
244
274
  break;
245
275
  case "青海省":
246
- welcome_info = "牛肉干和老酸奶都好好吃";
276
+ welcome_info =
277
+ "牛肉干和老酸奶都好好吃";
247
278
  break;
248
279
  case "宁夏回族自治区":
249
- welcome_info = "大漠孤烟直,长河落日圆";
280
+ welcome_info =
281
+ "大漠孤烟直,长河落日圆";
250
282
  break;
251
283
  case "新疆维吾尔自治区":
252
- welcome_info = "驼铃古道丝绸路,胡马犹闻唐汉风";
284
+ welcome_info =
285
+ "驼铃古道丝绸路,胡马犹闻唐汉风";
253
286
  break;
254
287
  case "台湾省":
255
- welcome_info = "我在这头,大陆在那头";
288
+ welcome_info =
289
+ "我在这头,大陆在那头";
256
290
  break;
257
291
  case "香港特别行政区":
258
292
  address = "香港特别行政区";
259
- welcome_info = "永定贼有残留地鬼嚎,迎击光非岁玉";
293
+ welcome_info =
294
+ "永定贼有残留地鬼嚎,迎击光非岁玉";
260
295
  break;
261
296
  case "澳门特别行政区":
262
297
  address = "澳门特别行政区";
263
- welcome_info = "性感荷官,在线发牌";
298
+ welcome_info =
299
+ "性感荷官,在线发牌";
264
300
  break;
265
301
  case "河南省":
266
302
  switch (ipStore.result.ad_info.city) {
267
303
  case "郑州市":
268
- welcome_info = "豫州之域,天地之中";
304
+ welcome_info =
305
+ "豫州之域,天地之中";
269
306
  break;
270
307
  case "南阳市":
271
- welcome_info = "臣本布衣,躬耕于南阳此南阳非彼南阳!";
308
+ welcome_info =
309
+ "臣本布衣,躬耕于南阳此南阳非彼南阳!";
272
310
  break;
273
311
  case "驻马店市":
274
- welcome_info = "峰峰有奇石,石石挟仙气嵖岈山的花很美哦!";
312
+ welcome_info =
313
+ "峰峰有奇石,石石挟仙气嵖岈山的花很美哦!";
275
314
  break;
276
315
  case "开封市":
277
- welcome_info = "刚正不阿包青天!";
316
+ welcome_info =
317
+ "刚正不阿包青天!";
278
318
  break;
279
319
  case "洛阳市":
280
- welcome_info = "洛阳牡丹甲天下";
320
+ welcome_info =
321
+ "洛阳牡丹甲天下";
281
322
  break;
282
323
  case "平顶山市":
283
- welcome_info = "QQ市~ 博主家乡~ 欢迎来玩~!";
324
+ welcome_info =
325
+ "QQ市~ 博主家乡~ 欢迎来玩~!";
284
326
  break;
285
327
  default:
286
- welcome_info = "可否带我品尝河南烩面啦?";
328
+ welcome_info =
329
+ "可否带我品尝河南烩面啦?";
287
330
  break;
288
331
  }
289
332
  break;
290
333
  default:
291
- welcome_info = "带我去你的城市逛逛吧";
334
+ welcome_info =
335
+ "带我去你的城市逛逛吧";
292
336
  break;
293
337
  }
294
338
  break;
295
339
  default:
296
- welcome_info = "带我去你的国家看看吧";
340
+ welcome_info =
341
+ "带我去你的国家看看吧";
297
342
  break;
298
343
  }
344
+
299
345
  //判断时间
300
346
  let timeChange,
301
347
  date = new Date();
302
- if (date.getHours() >= 5 && date.getHours() < 11) timeChange = "<span>🌤️上午好,一日之计在于晨</span>";
303
- else if (date.getHours() >= 11 && date.getHours() < 13) timeChange = "<span>☀️中午好,该摸鱼吃午饭了</span>";
304
- else if (date.getHours() >= 13 && date.getHours() < 15) timeChange = "<span>🕞下午好,懒懒地睡个午觉吧</span>";
305
- else if (date.getHours() >= 15 && date.getHours() < 16) timeChange = "<span>🍵三点几啦,饮茶先啦</span>";
306
- else if (date.getHours() >= 16 && date.getHours() < 18) timeChange = "<span>🚶‍♂️即将下班,记得按时吃饭~</span>";
307
- else if (date.getHours() >= 18 && date.getHours() < 19) timeChange = "<span>🌇夕阳无限好,只是近黄昏</span>";
308
- else if (date.getHours() >= 19 && date.getHours() < 24) timeChange = "<span>🌔晚上好,夜生活嗨起来</span>";
309
- else timeChange = "🌌夜深了,早点休息,少熬夜";
348
+ if (date.getHours() >= 5 && date.getHours() < 11)
349
+ timeChange =
350
+ "<span>🌤️上午好,一日之计在于晨</span>";
351
+ else if (
352
+ date.getHours() >= 11 &&
353
+ date.getHours() < 13
354
+ )
355
+ timeChange =
356
+ "<span>☀️中午好,该摸鱼吃午饭了</span>";
357
+ else if (
358
+ date.getHours() >= 13 &&
359
+ date.getHours() < 15
360
+ )
361
+ timeChange =
362
+ "<span>🕞下午好,懒懒地睡个午觉吧</span>";
363
+ else if (
364
+ date.getHours() >= 15 &&
365
+ date.getHours() < 16
366
+ )
367
+ timeChange =
368
+ "<span>🍵三点几啦,饮茶先啦</span>";
369
+ else if (
370
+ date.getHours() >= 16 &&
371
+ date.getHours() < 18
372
+ )
373
+ timeChange =
374
+ "<span>🚶‍♂️即将下班,记得按时吃饭~</span>";
375
+ else if (
376
+ date.getHours() >= 18 &&
377
+ date.getHours() < 19
378
+ )
379
+ timeChange =
380
+ "<span>🌇夕阳无限好,只是近黄昏</span>";
381
+ else if (
382
+ date.getHours() >= 19 &&
383
+ date.getHours() < 24
384
+ )
385
+ timeChange =
386
+ "<span>🌔晚上好,夜生活嗨起来</span>";
387
+ else
388
+ timeChange =
389
+ "🌌夜深了,早点休息,少熬夜";
310
390
 
311
- //自定义文本需要放的位置
312
- WelcomeInfo && (WelcomeInfo.innerHTML = `
391
+ WelcomeInfo &&
392
+ (WelcomeInfo.innerHTML = `
313
393
  欢迎来自 <strong>${address}</strong> 的小伙伴🍂<br>
314
394
  <strong>${welcome_info}!</strong><br>
315
395
  您距离 <strong>Elykia</strong> 约有 <strong>${dist}</strong> 公里!<br>
@@ -319,6 +399,6 @@ const elykia = {
319
399
  };
320
400
 
321
401
  // 页面加载后执行
322
- document.addEventListener('DOMContentLoaded', () => {
402
+ document.addEventListener("DOMContentLoaded", () => {
323
403
  elykia.setWelcome_info();
324
- });
404
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "elykia",
3
- "version": "1.0.19",
3
+ "version": "1.0.20",
4
4
  "description": "",
5
5
  "license": "ISC",
6
6
  "author": "Elykia",