commit
220ce2e319
5
.env
5
.env
@ -7,7 +7,8 @@ VITE_SITE_URL = "imsyy.top"
|
|||||||
VITE_SITE_LOGO = "/images/icon/favicon.ico"
|
VITE_SITE_LOGO = "/images/icon/favicon.ico"
|
||||||
VITE_SITE_APPLE_LOGO = "/images/logo/apple-touch-icon.png"
|
VITE_SITE_APPLE_LOGO = "/images/logo/apple-touch-icon.png"
|
||||||
|
|
||||||
# 百度统计(若不需要可不填)
|
# 百度统计
|
||||||
|
## 若不需要,请设为空即可
|
||||||
VITE_SITE_BAIDUTONGJI = "14e9f35ff8bc67fd4bcb5f07a6e6655a"
|
VITE_SITE_BAIDUTONGJI = "14e9f35ff8bc67fd4bcb5f07a6e6655a"
|
||||||
|
|
||||||
# 简介文本
|
# 简介文本
|
||||||
@ -27,9 +28,11 @@ VITE_DESC_TEXT_OTHER = "哎呀,这都被你发现了( 再点击一次可关
|
|||||||
## 请前往 高德开放平台注册 Web服务 Key
|
## 请前往 高德开放平台注册 Web服务 Key
|
||||||
## 请注意不是 Web端 (JS API),免费申请,每日上限 5000 次
|
## 请注意不是 Web端 (JS API),免费申请,每日上限 5000 次
|
||||||
## 此处提供的服务可能会超量从而无法访问,请自行申请!请自行申请!请自行申请!
|
## 此处提供的服务可能会超量从而无法访问,请自行申请!请自行申请!请自行申请!
|
||||||
|
## 若此处设为空则调用 教书先生 API https://api.oioweb.cn/doc/weather/GetWeather
|
||||||
VITE_WEATHER_KEY = "6c13af6fc30868bee488faf2cc652ab4"
|
VITE_WEATHER_KEY = "6c13af6fc30868bee488faf2cc652ab4"
|
||||||
|
|
||||||
# 建站日期
|
# 建站日期
|
||||||
|
## 若不需要,请设为空即可
|
||||||
## 请按照 YYYY-MM-DD 格式填写或者仅填写年份 YYYY
|
## 请按照 YYYY-MM-DD 格式填写或者仅填写年份 YYYY
|
||||||
VITE_SITE_START = "2020-10-24"
|
VITE_SITE_START = "2020-10-24"
|
||||||
|
|
||||||
|
22
.github/ISSUE_TEMPLATE/bug-en.yml
vendored
Normal file
22
.github/ISSUE_TEMPLATE/bug-en.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
name: Encountering an Issue
|
||||||
|
description: Please provide details about the issue you are encountering
|
||||||
|
labels: [bug]
|
||||||
|
body:
|
||||||
|
- type: input
|
||||||
|
id: site-url
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
attributes:
|
||||||
|
label: "Site URL"
|
||||||
|
placeholder: "Please provide the URL of the site where the issue occurred"
|
||||||
|
- type: input
|
||||||
|
id: problem
|
||||||
|
attributes:
|
||||||
|
label: "Description of the Issue"
|
||||||
|
description: "Include any error messages or screenshots if applicable"
|
||||||
|
placeholder: "Please describe the issue you are encountering"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "Additional Information"
|
||||||
|
description: "Is there anything else you would like to add?"
|
22
.github/ISSUE_TEMPLATE/bug.yml
vendored
Normal file
22
.github/ISSUE_TEMPLATE/bug.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
name: 遇到问题
|
||||||
|
description: 请填写遇到的问题的详细信息
|
||||||
|
labels: [bug]
|
||||||
|
body:
|
||||||
|
- type: input
|
||||||
|
id: site-url
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
attributes:
|
||||||
|
label: "站点链接"
|
||||||
|
placeholder: "请填写你的站点链接"
|
||||||
|
- type: input
|
||||||
|
id: problem
|
||||||
|
attributes:
|
||||||
|
label: "问题描述"
|
||||||
|
description: "有错误的话请提供报错截图"
|
||||||
|
placeholder: "请详细描述一下遇到的问题"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "补充信息"
|
||||||
|
description: "还需要说些什么吗"
|
14
.github/ISSUE_TEMPLATE/other-en.yml
vendored
Normal file
14
.github/ISSUE_TEMPLATE/other-en.yml
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
name: Other Information
|
||||||
|
description: Any other issues or questions related to usage
|
||||||
|
labels: [other]
|
||||||
|
body:
|
||||||
|
- type: textarea
|
||||||
|
id: title
|
||||||
|
attributes:
|
||||||
|
label: "Description of the Issue"
|
||||||
|
description: "Please provide a clear description of the issue you are experiencing"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "Additional Information"
|
||||||
|
description: "Is there any other information you would like to add?"
|
14
.github/ISSUE_TEMPLATE/other.yml
vendored
Normal file
14
.github/ISSUE_TEMPLATE/other.yml
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
name: 其他信息
|
||||||
|
description: 关于使用上的问题
|
||||||
|
labels: [other]
|
||||||
|
body:
|
||||||
|
- type: textarea
|
||||||
|
id: title
|
||||||
|
attributes:
|
||||||
|
label: "问题描述"
|
||||||
|
description: "请尽量清晰的描述您遇到的问题"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "补充信息"
|
||||||
|
description: "有需要补充的信息吗"
|
128
CODE_OF_CONDUCT.md
Normal file
128
CODE_OF_CONDUCT.md
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
# Contributor Covenant Code of Conduct
|
||||||
|
|
||||||
|
## Our Pledge
|
||||||
|
|
||||||
|
We as members, contributors, and leaders pledge to make participation in our
|
||||||
|
community a harassment-free experience for everyone, regardless of age, body
|
||||||
|
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||||
|
identity and expression, level of experience, education, socio-economic status,
|
||||||
|
nationality, personal appearance, race, religion, or sexual identity
|
||||||
|
and orientation.
|
||||||
|
|
||||||
|
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||||
|
diverse, inclusive, and healthy community.
|
||||||
|
|
||||||
|
## Our Standards
|
||||||
|
|
||||||
|
Examples of behavior that contributes to a positive environment for our
|
||||||
|
community include:
|
||||||
|
|
||||||
|
* Demonstrating empathy and kindness toward other people
|
||||||
|
* Being respectful of differing opinions, viewpoints, and experiences
|
||||||
|
* Giving and gracefully accepting constructive feedback
|
||||||
|
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||||
|
and learning from the experience
|
||||||
|
* Focusing on what is best not just for us as individuals, but for the
|
||||||
|
overall community
|
||||||
|
|
||||||
|
Examples of unacceptable behavior include:
|
||||||
|
|
||||||
|
* The use of sexualized language or imagery, and sexual attention or
|
||||||
|
advances of any kind
|
||||||
|
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||||
|
* Public or private harassment
|
||||||
|
* Publishing others' private information, such as a physical or email
|
||||||
|
address, without their explicit permission
|
||||||
|
* Other conduct which could reasonably be considered inappropriate in a
|
||||||
|
professional setting
|
||||||
|
|
||||||
|
## Enforcement Responsibilities
|
||||||
|
|
||||||
|
Community leaders are responsible for clarifying and enforcing our standards of
|
||||||
|
acceptable behavior and will take appropriate and fair corrective action in
|
||||||
|
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||||
|
or harmful.
|
||||||
|
|
||||||
|
Community leaders have the right and responsibility to remove, edit, or reject
|
||||||
|
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||||
|
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||||
|
decisions when appropriate.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
This Code of Conduct applies within all community spaces, and also applies when
|
||||||
|
an individual is officially representing the community in public spaces.
|
||||||
|
Examples of representing our community include using an official e-mail address,
|
||||||
|
posting via an official social media account, or acting as an appointed
|
||||||
|
representative at an online or offline event.
|
||||||
|
|
||||||
|
## Enforcement
|
||||||
|
|
||||||
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
|
reported to the community leaders responsible for enforcement at
|
||||||
|
one@imsyy.top.
|
||||||
|
All complaints will be reviewed and investigated promptly and fairly.
|
||||||
|
|
||||||
|
All community leaders are obligated to respect the privacy and security of the
|
||||||
|
reporter of any incident.
|
||||||
|
|
||||||
|
## Enforcement Guidelines
|
||||||
|
|
||||||
|
Community leaders will follow these Community Impact Guidelines in determining
|
||||||
|
the consequences for any action they deem in violation of this Code of Conduct:
|
||||||
|
|
||||||
|
### 1. Correction
|
||||||
|
|
||||||
|
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||||
|
unprofessional or unwelcome in the community.
|
||||||
|
|
||||||
|
**Consequence**: A private, written warning from community leaders, providing
|
||||||
|
clarity around the nature of the violation and an explanation of why the
|
||||||
|
behavior was inappropriate. A public apology may be requested.
|
||||||
|
|
||||||
|
### 2. Warning
|
||||||
|
|
||||||
|
**Community Impact**: A violation through a single incident or series
|
||||||
|
of actions.
|
||||||
|
|
||||||
|
**Consequence**: A warning with consequences for continued behavior. No
|
||||||
|
interaction with the people involved, including unsolicited interaction with
|
||||||
|
those enforcing the Code of Conduct, for a specified period of time. This
|
||||||
|
includes avoiding interactions in community spaces as well as external channels
|
||||||
|
like social media. Violating these terms may lead to a temporary or
|
||||||
|
permanent ban.
|
||||||
|
|
||||||
|
### 3. Temporary Ban
|
||||||
|
|
||||||
|
**Community Impact**: A serious violation of community standards, including
|
||||||
|
sustained inappropriate behavior.
|
||||||
|
|
||||||
|
**Consequence**: A temporary ban from any sort of interaction or public
|
||||||
|
communication with the community for a specified period of time. No public or
|
||||||
|
private interaction with the people involved, including unsolicited interaction
|
||||||
|
with those enforcing the Code of Conduct, is allowed during this period.
|
||||||
|
Violating these terms may lead to a permanent ban.
|
||||||
|
|
||||||
|
### 4. Permanent Ban
|
||||||
|
|
||||||
|
**Community Impact**: Demonstrating a pattern of violation of community
|
||||||
|
standards, including sustained inappropriate behavior, harassment of an
|
||||||
|
individual, or aggression toward or disparagement of classes of individuals.
|
||||||
|
|
||||||
|
**Consequence**: A permanent ban from any sort of public interaction within
|
||||||
|
the community.
|
||||||
|
|
||||||
|
## Attribution
|
||||||
|
|
||||||
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||||
|
version 2.0, available at
|
||||||
|
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||||
|
|
||||||
|
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||||
|
enforcement ladder](https://github.com/mozilla/diversity).
|
||||||
|
|
||||||
|
[homepage]: https://www.contributor-covenant.org
|
||||||
|
|
||||||
|
For answers to common questions about this code of conduct, see the FAQ at
|
||||||
|
https://www.contributor-covenant.org/faq. Translations are available at
|
||||||
|
https://www.contributor-covenant.org/translations.
|
87
README.md
87
README.md
@ -7,13 +7,14 @@
|
|||||||
|
|
||||||
![無名の主页](https://s2.loli.net/2022/07/14/K5JigfvDoNewtuS.webp)
|
![無名の主页](https://s2.loli.net/2022/07/14/K5JigfvDoNewtuS.webp)
|
||||||
|
|
||||||
>主页的 Logo 字体已经过压缩,若用本站 Logo 以外的字母会变回默认字体,这里是 [完整字体](https://file.4everland.app/font/Other/Pacifico-Regular.ttf)
|
>主页的 Logo 字体已经过压缩,若用本站 Logo 以外的字母会变回默认字体,这里是 [完整字体](https://file.imsyy.top/font/Other/Pacifico-Regular.ttf)
|
||||||
|
|
||||||
### Demo
|
### Demo
|
||||||
|
|
||||||
>由于 CDN 缓存原因,查看最新效果可能需要 `Ctrl` + `F5` 强制刷新浏览器缓存
|
>由于 CDN 缓存原因,查看最新效果可能需要 `Ctrl` + `F5` 强制刷新浏览器缓存
|
||||||
|
|
||||||
- [無名の主页](https://www.imsyy.top)
|
- [無名の主页](https://www.imsyy.top)
|
||||||
|
- [無名の主页 - Dev](https://dev.home-5iw.pages.dev/)
|
||||||
- [無名の主页 - 备用线路](https://home-imsyy.vercel.app/)
|
- [無名の主页 - 备用线路](https://home-imsyy.vercel.app/)
|
||||||
|
|
||||||
### 功能
|
### 功能
|
||||||
@ -38,20 +39,66 @@
|
|||||||
* 在 `终端` 中输入:
|
* 在 `终端` 中输入:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 安装 yarn
|
# 安装 pnpm
|
||||||
npm install -g yarn
|
npm install -g pnpm
|
||||||
|
|
||||||
# 安装依赖
|
# 安装依赖
|
||||||
yarn install
|
pnpm install
|
||||||
|
|
||||||
# 预览
|
# 预览
|
||||||
yarn dev
|
pnpm dev
|
||||||
|
|
||||||
# 构建
|
# 构建
|
||||||
yarn build
|
pnpm build
|
||||||
```
|
```
|
||||||
> 构建完成后,静态资源会在 **`dist` 目录** 中生成,可将 **`dist` 文件夹下的文件**上传至服务器,也可使用 `Vercel` 等托管平台一键导入并自动部署
|
> 构建完成后,静态资源会在 **`dist` 目录** 中生成,可将 **`dist` 文件夹下的文件**上传至服务器,也可使用 `Vercel` 等托管平台一键导入并自动部署
|
||||||
|
|
||||||
|
### 网站链接
|
||||||
|
|
||||||
|
在 `src/assets/siteLinks.json` 中可以自定义网站链接(以指向自己的网站):
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"icon": "Blog",
|
||||||
|
"name": "博客",
|
||||||
|
"link": "https://blog.imsyy.top/"
|
||||||
|
},
|
||||||
|
```
|
||||||
|
|
||||||
|
其中 `icon` 网站链接的图标可以在 `src/components/Links/index.vue` 中添加:
|
||||||
|
|
||||||
|
```js
|
||||||
|
// 可前往 https://www.xicons.org 自行挑选并在此处引入
|
||||||
|
// 此处引入的是 fa 类型
|
||||||
|
import {
|
||||||
|
Link,
|
||||||
|
Blog,
|
||||||
|
CompactDisc,
|
||||||
|
Cloud,
|
||||||
|
Compass,
|
||||||
|
Book,
|
||||||
|
Fire,
|
||||||
|
LaptopCode,
|
||||||
|
} from "@vicons/fa";
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
// 网站链接图标
|
||||||
|
const siteIcon = {
|
||||||
|
Blog,
|
||||||
|
Cloud,
|
||||||
|
CompactDisc,
|
||||||
|
Compass,
|
||||||
|
Book,
|
||||||
|
Fire,
|
||||||
|
LaptopCode,
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
### 社交链接
|
||||||
|
|
||||||
|
在 `src/assets/socialLinks.json` 中可以自定义社交链接。
|
||||||
|
|
||||||
### 天气
|
### 天气
|
||||||
|
|
||||||
天气及地区获取需要 `高德开放平台` 相关 API
|
天气及地区获取需要 `高德开放平台` 相关 API
|
||||||
@ -122,6 +169,28 @@ make clean all
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
### 网站图标及网站背景
|
||||||
|
|
||||||
|
#### 网站背景
|
||||||
|
|
||||||
|
可以在 `public/images` 中修改网站背景
|
||||||
|
|
||||||
|
如果想要添加更多的本地图片作为网站背景,可以将图片重命名 `background+数字` 的形式,并在 `src/components/Background/index.vue` 中进行修改:
|
||||||
|
|
||||||
|
```js
|
||||||
|
|
||||||
|
if (type == 0) {
|
||||||
|
// 修改此处 Math.random() 后面的第一个数字为图片的数量
|
||||||
|
bgUrl.value = `/images/background${Math.floor(
|
||||||
|
Math.random() * 10 + 1
|
||||||
|
)}.webp`;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 网站图标
|
||||||
|
|
||||||
|
可以在 `public/images/icon` 中修改网站图标。
|
||||||
|
|
||||||
### 技术栈
|
### 技术栈
|
||||||
|
|
||||||
* [Vue](https://cn.vuejs.org/)
|
* [Vue](https://cn.vuejs.org/)
|
||||||
@ -134,8 +203,12 @@ make clean all
|
|||||||
### API
|
### API
|
||||||
|
|
||||||
* [MetingAPI By 武恩赐](https://api.wuenci.com/meting/api/)
|
* [MetingAPI By 武恩赐](https://api.wuenci.com/meting/api/)
|
||||||
* [小歪 API](https://api.ixiaowai.cn/)
|
* [搏天 API](https://api.btstu.cn/doc/sjbz.php)
|
||||||
* [高德开放平台](https://lbs.amap.com/)
|
* [高德开放平台](https://lbs.amap.com/)
|
||||||
* [Hitokoto 一言](https://hitokoto.cn/)
|
* [Hitokoto 一言](https://hitokoto.cn/)
|
||||||
|
*
|
||||||
|
## Star History
|
||||||
|
|
||||||
|
[![Star History Chart](https://api.star-history.com/svg?repos=imsyy/home&type=Date)](https://star-history.com/#imsyy/home&Date)
|
||||||
|
|
||||||
<a title="SSL" target="_blank" href="https://myssl.com/seal/detail?domain=blog.imsyy.top"><img src="https://img.shields.io/badge/MySSL-安全认证-brightgreen"></a> <a title="CDN" target="_blank" href="https://cdnjs.com/"><img src="https://img.shields.io/badge/CDN-Cloudflare-blue"></a> <a title="Copyright" target="_blank" href="https://imsyy.top/"><img src="https://img.shields.io/badge/Copyright%20%C2%A9%202020--2023-%E7%84%A1%E5%90%8D-red"></a>
|
<a title="SSL" target="_blank" href="https://myssl.com/seal/detail?domain=blog.imsyy.top"><img src="https://img.shields.io/badge/MySSL-安全认证-brightgreen"></a> <a title="CDN" target="_blank" href="https://cdnjs.com/"><img src="https://img.shields.io/badge/CDN-Cloudflare-blue"></a> <a title="Copyright" target="_blank" href="https://imsyy.top/"><img src="https://img.shields.io/badge/Copyright%20%C2%A9%202020--2023-%E7%84%A1%E5%90%8D-red"></a>
|
||||||
|
25
README_EN.md
25
README_EN.md
@ -31,11 +31,28 @@ Simple little homepage, had enough of the original one and made a new one
|
|||||||
|
|
||||||
### Deployment
|
### Deployment
|
||||||
|
|
||||||
|
* **Installation** [node.js](https://nodejs.org/zh-cn/) **Environment**
|
||||||
|
|
||||||
|
> node > 16.16.0
|
||||||
|
> npm > 8.15.0
|
||||||
|
|
||||||
|
* Then run the `cmd` terminal with **administrator privileges** and `cd` to the project root directory
|
||||||
|
* In the `terminal` type:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
yarn install
|
# Install pnpm
|
||||||
yarn dev
|
npm install -g pnpm
|
||||||
yarn build
|
|
||||||
|
# Install the dependencies
|
||||||
|
pnpm install
|
||||||
|
|
||||||
|
# Preview
|
||||||
|
pnpm dev
|
||||||
|
|
||||||
|
# Build
|
||||||
|
pnpm build
|
||||||
```
|
```
|
||||||
|
|
||||||
> Once the build is complete, the files in the `dist` folder can be uploaded to the server or imported and automatically deployed with one click using a hosting platform such as `Vercel`.
|
> Once the build is complete, the files in the `dist` folder can be uploaded to the server or imported and automatically deployed with one click using a hosting platform such as `Vercel`.
|
||||||
|
|
||||||
### Weather
|
### Weather
|
||||||
@ -119,7 +136,7 @@ make clean all
|
|||||||
### API
|
### API
|
||||||
|
|
||||||
* [MetingAPI By 武恩赐](https://api.wuenci.com/meting/api/)
|
* [MetingAPI By 武恩赐](https://api.wuenci.com/meting/api/)
|
||||||
* [小歪 API](https://api.ixiaowai.cn/)
|
* [搏天 API](https://api.btstu.cn/doc/sjbz.php)
|
||||||
* [高德开放平台](https://lbs.amap.com/)
|
* [高德开放平台](https://lbs.amap.com/)
|
||||||
* [Hitokoto 一言](https://hitokoto.cn/)
|
* [Hitokoto 一言](https://hitokoto.cn/)
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"github": "https://github.com/imsyy/home",
|
"github": "https://github.com/imsyy/home",
|
||||||
"home": "https://imsyy.top",
|
"home": "https://imsyy.top",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "4.0.3",
|
"version": "4.0.5",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite --host",
|
"dev": "vite --host",
|
||||||
|
4378
pnpm-lock.yaml
Normal file
4378
pnpm-lock.yaml
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,132 +1,141 @@
|
|||||||
* {
|
* {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#loading-box .loading-left-bg,
|
#loading-box .loading-left-bg,
|
||||||
#loading-box .loading-right-bg {
|
#loading-box .loading-right-bg {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 999998;
|
z-index: 999;
|
||||||
width: 50%;
|
width: 50%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background-color: #515151e0;
|
background-color: #515151e0;
|
||||||
transition: all 0.75s cubic-bezier(0.42, 0, 0, 1.01);
|
transition: all 0.75s cubic-bezier(0.42, 0, 0, 1.01);
|
||||||
-webkit-backdrop-filter: blur(10px);
|
-webkit-backdrop-filter: blur(10px);
|
||||||
backdrop-filter: blur(10px);
|
backdrop-filter: blur(10px);
|
||||||
}
|
}
|
||||||
|
|
||||||
#loading-box .loading-right-bg {
|
#loading-box .loading-right-bg {
|
||||||
right: 0;
|
right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#loading-box>.spinner-box {
|
#loading-box > .spinner-box {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 999999;
|
z-index: 999999;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
#loading-box .spinner-box .loading-word {
|
#loading-box .spinner-box .loading-word {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
font-size: 0.95rem;
|
font-size: 0.95rem;
|
||||||
transform: translateY(64px);
|
transform: translateY(64px);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.loading-title {
|
.loading-title {
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
margin: 20px 10px 4px 10px;
|
margin: 20px 10px 4px 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#loading-box .spinner-box .configure-core {
|
#loading-box .spinner-box .configure-core {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background-color: #37474f;
|
background-color: #37474f;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 加载完成 */
|
/* 加载完成 */
|
||||||
.loaded .loading-left-bg {
|
.loaded .loading-left-bg {
|
||||||
transform: translate(-100%, 0);
|
transform: translate(-100%, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
.loaded .loading-right-bg {
|
.loaded .loading-right-bg {
|
||||||
transform: translate(100%, 0);
|
transform: translate(100%, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
.loaded .spinner-box {
|
.loaded .spinner-box {
|
||||||
display: none !important;
|
display: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.loader {
|
.loader {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: calc(50% - 32px);
|
top: calc(50% - 32px);
|
||||||
left: calc(50% - 32px);
|
left: calc(50% - 32px);
|
||||||
width: 64px;
|
width: 64px;
|
||||||
height: 64px;
|
height: 64px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
perspective: 800px;
|
perspective: 800px;
|
||||||
transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01);
|
transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01);
|
||||||
}
|
}
|
||||||
|
|
||||||
.inner {
|
.inner {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.inner.one {
|
.inner.one {
|
||||||
left: 0%;
|
left: 0%;
|
||||||
top: 0%;
|
top: 0%;
|
||||||
animation: rotate-one 1s linear infinite;
|
animation: rotate-one 1s linear infinite;
|
||||||
border-bottom: 3px solid #EFEFFA;
|
border-bottom: 3px solid #efeffa;
|
||||||
}
|
}
|
||||||
|
|
||||||
.inner.two {
|
.inner.two {
|
||||||
right: 0%;
|
right: 0%;
|
||||||
top: 0%;
|
top: 0%;
|
||||||
animation: rotate-two 1s linear infinite;
|
animation: rotate-two 1s linear infinite;
|
||||||
border-right: 3px solid #EFEFFA;
|
border-right: 3px solid #efeffa;
|
||||||
}
|
}
|
||||||
|
|
||||||
.inner.three {
|
.inner.three {
|
||||||
right: 0%;
|
right: 0%;
|
||||||
bottom: 0%;
|
bottom: 0%;
|
||||||
animation: rotate-three 1s linear infinite;
|
animation: rotate-three 1s linear infinite;
|
||||||
border-top: 3px solid #EFEFFA;
|
border-top: 3px solid #efeffa;
|
||||||
|
}
|
||||||
|
|
||||||
|
noscript {
|
||||||
|
z-index: 1000;
|
||||||
|
position: absolute;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
width: 100%;
|
||||||
|
margin-top: 26px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes rotate-one {
|
@keyframes rotate-one {
|
||||||
0% {
|
0% {
|
||||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
|
transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
|
||||||
}
|
}
|
||||||
|
|
||||||
100% {
|
100% {
|
||||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
|
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes rotate-two {
|
@keyframes rotate-two {
|
||||||
0% {
|
0% {
|
||||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
|
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
|
||||||
}
|
}
|
||||||
|
|
||||||
100% {
|
100% {
|
||||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
|
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes rotate-three {
|
@keyframes rotate-three {
|
||||||
0% {
|
0% {
|
||||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
|
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
|
||||||
}
|
}
|
||||||
|
|
||||||
100% {
|
100% {
|
||||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
|
transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
2
public/loading/loading.min.css
vendored
2
public/loading/loading.min.css
vendored
@ -1 +1 @@
|
|||||||
*{margin:0;padding:0}#loading-box .loading-left-bg,#loading-box .loading-right-bg{position:fixed;z-index:999998;width:50%;height:100%;background-color:#515151e0;transition:all .75s cubic-bezier(.42,0,0,1.01);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#loading-box .loading-right-bg{right:0}#loading-box>.spinner-box{position:fixed;z-index:999999;display:flex;justify-content:center;align-items:center;width:100%;height:100vh}#loading-box .spinner-box .loading-word{position:absolute;color:#fff;font-size:.95rem;transform:translateY(64px);text-align:center}.loading-title{font-size:1.25rem;margin:20px 10px 4px 10px}#loading-box .spinner-box .configure-core{width:100%;height:100%;background-color:#37474f}.loaded .loading-left-bg{transform:translate(-100%,0)}.loaded .loading-right-bg{transform:translate(100%,0)}.loaded .spinner-box{display:none!important}.loader{position:absolute;top:calc(50% - 32px);left:calc(50% - 32px);width:64px;height:64px;border-radius:50%;perspective:800px;transition:all .7s cubic-bezier(.42,0,0,1.01)}.inner{position:absolute;box-sizing:border-box;width:100%;height:100%;border-radius:50%}.inner.one{left:0;top:0;animation:rotate-one 1s linear infinite;border-bottom:3px solid #efeffa}.inner.two{right:0;top:0;animation:rotate-two 1s linear infinite;border-right:3px solid #efeffa}.inner.three{right:0;bottom:0;animation:rotate-three 1s linear infinite;border-top:3px solid #efeffa}@keyframes rotate-one{0%{transform:rotateX(35deg) rotateY(-45deg) rotateZ(0)}100%{transform:rotateX(35deg) rotateY(-45deg) rotateZ(360deg)}}@keyframes rotate-two{0%{transform:rotateX(50deg) rotateY(10deg) rotateZ(0)}100%{transform:rotateX(50deg) rotateY(10deg) rotateZ(360deg)}}@keyframes rotate-three{0%{transform:rotateX(35deg) rotateY(55deg) rotateZ(0)}100%{transform:rotateX(35deg) rotateY(55deg) rotateZ(360deg)}}
|
*{margin:0;padding:0}#loading-box .loading-left-bg,#loading-box .loading-right-bg{position:fixed;z-index:999;width:50%;height:100%;background-color:#515151e0;transition:all .75s cubic-bezier(.42,0,0,1.01);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#loading-box .loading-right-bg{right:0}#loading-box>.spinner-box{position:fixed;z-index:999999;display:flex;justify-content:center;align-items:center;width:100%;height:100vh}#loading-box .spinner-box .loading-word{position:absolute;color:#fff;font-size:.95rem;transform:translateY(64px);text-align:center}.loading-title{font-size:1.25rem;margin:20px 10px 4px 10px}#loading-box .spinner-box .configure-core{width:100%;height:100%;background-color:#37474f}.loaded .loading-left-bg{transform:translate(-100%,0)}.loaded .loading-right-bg{transform:translate(100%,0)}.loaded .spinner-box{display:none!important}.loader{position:absolute;top:calc(50% - 32px);left:calc(50% - 32px);width:64px;height:64px;border-radius:50%;perspective:800px;transition:all .7s cubic-bezier(.42,0,0,1.01)}.inner{position:absolute;box-sizing:border-box;width:100%;height:100%;border-radius:50%}.inner.one{left:0;top:0;animation:rotate-one 1s linear infinite;border-bottom:3px solid #efeffa}.inner.two{right:0;top:0;animation:rotate-two 1s linear infinite;border-right:3px solid #efeffa}.inner.three{right:0;bottom:0;animation:rotate-three 1s linear infinite;border-top:3px solid #efeffa}noscript{z-index:1000;position:absolute;display:flex;justify-content:center;width:100%;margin-top:26px}@keyframes rotate-one{0%{transform:rotateX(35deg) rotateY(-45deg) rotateZ(0)}100%{transform:rotateX(35deg) rotateY(-45deg) rotateZ(360deg)}}@keyframes rotate-two{0%{transform:rotateX(50deg) rotateY(10deg) rotateZ(0)}100%{transform:rotateX(50deg) rotateY(10deg) rotateZ(360deg)}}@keyframes rotate-three{0%{transform:rotateX(35deg) rotateY(55deg) rotateZ(0)}100%{transform:rotateX(35deg) rotateY(55deg) rotateZ(360deg)}}
|
28
src/App.vue
28
src/App.vue
@ -83,11 +83,10 @@ onMounted(() => {
|
|||||||
window.addEventListener("mousedown", (event) => {
|
window.addEventListener("mousedown", (event) => {
|
||||||
if (event.button == 1) {
|
if (event.button == 1) {
|
||||||
store.backgroundShow = !store.backgroundShow;
|
store.backgroundShow = !store.backgroundShow;
|
||||||
if (store.backgroundShow) {
|
ElMessage({
|
||||||
ElMessage("已开启壁纸展示状态");
|
message: `已${store.backgroundShow ? "开启" : "退出"}壁纸展示状态`,
|
||||||
} else {
|
grouping: true,
|
||||||
ElMessage("已退出壁纸展示状态");
|
});
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -96,18 +95,19 @@ onMounted(() => {
|
|||||||
window.addEventListener("resize", getWidth);
|
window.addEventListener("resize", getWidth);
|
||||||
|
|
||||||
// 控制台输出
|
// 控制台输出
|
||||||
let styleTitle1 = "font-size: 20px;font-weight: 600;color: rgb(244,167,89);";
|
const styleTitle1 =
|
||||||
let styleTitle2 = "font-size:12px;color: rgb(244,167,89);";
|
"font-size: 20px;font-weight: 600;color: rgb(244,167,89);";
|
||||||
let styleContent = "color: rgb(30,152,255);";
|
const styleTitle2 = "font-size:12px;color: rgb(244,167,89);";
|
||||||
let title1 = "無名の主页";
|
const styleContent = "color: rgb(30,152,255);";
|
||||||
let title2 = `
|
const title1 = "無名の主页";
|
||||||
|
const title2 = `
|
||||||
_____ __ __ _______ ____ __
|
_____ __ __ _______ ____ __
|
||||||
|_ _| \\/ |/ ____\\ \\ / /\\ \\ / /
|
|_ _| \\/ |/ ____\\ \\ / /\\ \\ / /
|
||||||
| | | \\ / | (___ \\ \\_/ / \\ \\_/ /
|
| | | \\ / | (___ \\ \\_/ / \\ \\_/ /
|
||||||
| | | |\\/| |\\___ \\ \\ / \\ /
|
| | | |\\/| |\\___ \\ \\ / \\ /
|
||||||
_| |_| | | |____) | | | | |
|
_| |_| | | |____) | | | | |
|
||||||
|_____|_| |_|_____/ |_| |_|`;
|
|_____|_| |_|_____/ |_| |_|`;
|
||||||
let content = `\n\n版本: ${config.version}\n主页: ${config.home}\nGithub: ${config.github}`;
|
const content = `\n\n版本: ${config.version}\n主页: ${config.home}\nGithub: ${config.github}`;
|
||||||
console.info(
|
console.info(
|
||||||
`%c${title1} %c${title2} %c${content}`,
|
`%c${title1} %c${title2} %c${content}`,
|
||||||
styleTitle1,
|
styleTitle1,
|
||||||
|
@ -67,3 +67,10 @@ export const getWeather = async (key, city) => {
|
|||||||
);
|
);
|
||||||
return await res.json();
|
return await res.json();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 获取教书先生天气 API
|
||||||
|
// https://api.oioweb.cn/doc/weather/GetWeather
|
||||||
|
export const getOtherWeather = async () => {
|
||||||
|
const res = await fetch("https://api.oioweb.cn/api/weather/GetWeather");
|
||||||
|
return await res.json();
|
||||||
|
};
|
||||||
|
@ -1,41 +1,37 @@
|
|||||||
[
|
[
|
||||||
[
|
{
|
||||||
{
|
"icon": "Blog",
|
||||||
"icon": "Blog",
|
"name": "博客",
|
||||||
"name": "博客",
|
"link": "https://blog.imsyy.top/"
|
||||||
"link": "https://blog.imsyy.top/"
|
},
|
||||||
},
|
{
|
||||||
{
|
"icon": "Cloud",
|
||||||
"icon": "Cloud",
|
"name": "网盘",
|
||||||
"name": "网盘",
|
"link": "https://pan.imsyy.top/"
|
||||||
"link": "https://pan.imsyy.top/"
|
},
|
||||||
},
|
{
|
||||||
{
|
"icon": "CompactDisc",
|
||||||
"icon": "CompactDisc",
|
"name": "音乐",
|
||||||
"name": "音乐",
|
"link": "https://music.imsyy.top/"
|
||||||
"link": "https://music.imsyy.top/"
|
},
|
||||||
},
|
{
|
||||||
{
|
"icon": "Compass",
|
||||||
"icon": "Compass",
|
"name": "起始页",
|
||||||
"name": "起始页",
|
"link": "https://nav.imsyy.top/"
|
||||||
"link": "https://nav.imsyy.top/"
|
},
|
||||||
},
|
{
|
||||||
{
|
"icon": "Book",
|
||||||
"icon": "Book",
|
"name": "网址集",
|
||||||
"name": "网址集",
|
"link": "https://web.imsyy.top/"
|
||||||
"link": "https://web.imsyy.top/"
|
},
|
||||||
},
|
{
|
||||||
{
|
"icon": "Fire",
|
||||||
"icon": "Fire",
|
"name": "今日热榜",
|
||||||
"name": "今日热榜",
|
"link": "https://hot.imsyy.top/"
|
||||||
"link": "https://hot.imsyy.top/"
|
},
|
||||||
}
|
{
|
||||||
],
|
"icon": "LaptopCode",
|
||||||
[
|
"name": "站点监测",
|
||||||
{
|
"link": "https://status.imsyy.top/"
|
||||||
"icon": "LaptopCode",
|
}
|
||||||
"name": "站点监测",
|
|
||||||
"link": "https://status.imsyy.top/"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
]
|
]
|
||||||
|
@ -18,10 +18,11 @@
|
|||||||
import { onMounted, ref, watch, h } from "vue";
|
import { onMounted, ref, watch, h } from "vue";
|
||||||
import { SuccessPicture } from "@icon-park/vue-next";
|
import { SuccessPicture } from "@icon-park/vue-next";
|
||||||
import { mainStore } from "@/store";
|
import { mainStore } from "@/store";
|
||||||
const store = mainStore();
|
|
||||||
|
|
||||||
|
const store = mainStore();
|
||||||
const bgUrl = ref(null); // 壁纸链接
|
const bgUrl = ref(null); // 壁纸链接
|
||||||
|
|
||||||
|
// 更换壁纸链接
|
||||||
const changeBg = (type) => {
|
const changeBg = (type) => {
|
||||||
if (type == 0) {
|
if (type == 0) {
|
||||||
bgUrl.value = `/images/background${Math.floor(
|
bgUrl.value = `/images/background${Math.floor(
|
||||||
@ -32,7 +33,7 @@ const changeBg = (type) => {
|
|||||||
} else if (type == 2) {
|
} else if (type == 2) {
|
||||||
bgUrl.value = "https://api.btstu.cn/sjbz/api.php?lx=fengjing&format=images";
|
bgUrl.value = "https://api.btstu.cn/sjbz/api.php?lx=fengjing&format=images";
|
||||||
} else if (type == 3) {
|
} else if (type == 3) {
|
||||||
bgUrl.value = "https://www.dmoe.cc/random.php";
|
bgUrl.value = "https://api.btstu.cn/sjbz/api.php?lx=dongman&format=images";
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -140,4 +141,4 @@ watch(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
-
|
-
|
||||||
</span>
|
</span>
|
||||||
{{ fullYear }}
|
{{ fullYear }}
|
||||||
<a href="https://imsyy.top">無名</a>
|
<a :href="SiteUrl">{{ SiteAnthor }}</a>
|
||||||
</span>
|
</span>
|
||||||
<!-- 以下信息请不要修改哦 -->
|
<!-- 以下信息请不要修改哦 -->
|
||||||
<span class="hidden">
|
<span class="hidden">
|
||||||
@ -45,6 +45,8 @@ const fullYear = new Date().getFullYear();
|
|||||||
// 加载配置数据
|
// 加载配置数据
|
||||||
const siteStartDate = ref(import.meta.env.VITE_SITE_START);
|
const siteStartDate = ref(import.meta.env.VITE_SITE_START);
|
||||||
const siteIcp = ref(import.meta.env.VITE_SITE_ICP);
|
const siteIcp = ref(import.meta.env.VITE_SITE_ICP);
|
||||||
|
const SiteAnthor = ref(import.meta.env.VITE_SITE_ANTHOR);
|
||||||
|
const SiteUrl = ref(import.meta.env.VITE_SITE_URL);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="links">
|
<div v-if="siteLinks[0]" class="links">
|
||||||
<div class="line">
|
<div class="line">
|
||||||
<Icon size="20">
|
<Icon size="20">
|
||||||
<Link />
|
<Link />
|
||||||
@ -19,11 +19,11 @@
|
|||||||
}"
|
}"
|
||||||
:mousewheel="true"
|
:mousewheel="true"
|
||||||
>
|
>
|
||||||
<SwiperSlide v-for="site in siteLinks" :key="site">
|
<SwiperSlide v-for="site in siteLinksList" :key="site">
|
||||||
<el-row class="link-all" :gutter="20">
|
<el-row class="link-all" :gutter="20">
|
||||||
<el-col
|
<el-col
|
||||||
:span="8"
|
|
||||||
v-for="(item, index) in site"
|
v-for="(item, index) in site"
|
||||||
|
:span="8"
|
||||||
:key="item"
|
:key="item"
|
||||||
@click="jumpLink(item)"
|
@click="jumpLink(item)"
|
||||||
>
|
>
|
||||||
@ -45,7 +45,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted } from "vue";
|
import { onMounted, computed } from "vue";
|
||||||
import { Icon } from "@vicons/utils";
|
import { Icon } from "@vicons/utils";
|
||||||
// 可前往 https://www.xicons.org 自行挑选并在此处引入
|
// 可前往 https://www.xicons.org 自行挑选并在此处引入
|
||||||
import {
|
import {
|
||||||
@ -67,6 +67,16 @@ import "swiper/scss/pagination";
|
|||||||
|
|
||||||
const store = mainStore();
|
const store = mainStore();
|
||||||
|
|
||||||
|
// 计算网站链接
|
||||||
|
const siteLinksList = computed(() => {
|
||||||
|
const result = [];
|
||||||
|
for (let i = 0; i < siteLinks.length; i += 6) {
|
||||||
|
const subArr = siteLinks.slice(i, i + 6);
|
||||||
|
result.push(subArr);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
});
|
||||||
|
|
||||||
// 网站链接图标
|
// 网站链接图标
|
||||||
const siteIcon = {
|
const siteIcon = {
|
||||||
Blog,
|
Blog,
|
||||||
@ -131,6 +141,7 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.link-all {
|
.link-all {
|
||||||
|
height: 220px;
|
||||||
.item {
|
.item {
|
||||||
height: 100px;
|
height: 100px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -1,12 +1,15 @@
|
|||||||
<template>
|
<template>
|
||||||
<div
|
<div class="weather" v-if="weatherData.adCode.city && weatherData.weather.weather">
|
||||||
class="weather"
|
|
||||||
v-if="weatherData.adCode.city && weatherData.weather.weather"
|
|
||||||
>
|
|
||||||
<span>{{ weatherData.adCode.city }} </span>
|
<span>{{ weatherData.adCode.city }} </span>
|
||||||
<span>{{ weatherData.weather.weather }} </span>
|
<span>{{ weatherData.weather.weather }} </span>
|
||||||
<span>{{ weatherData.weather.temperature }}℃</span>
|
<span>{{ weatherData.weather.temperature }}℃</span>
|
||||||
<span class="sm-hidden"> {{ weatherData.weather.winddirection }}风 </span>
|
<span class="sm-hidden">
|
||||||
|
{{
|
||||||
|
weatherData.weather.winddirection?.endsWith("风")
|
||||||
|
? weatherData.weather.winddirection
|
||||||
|
: weatherData.weather.winddirection + "风"
|
||||||
|
}}
|
||||||
|
</span>
|
||||||
<span class="sm-hidden">{{ weatherData.weather.windpower }} 级</span>
|
<span class="sm-hidden">{{ weatherData.weather.windpower }} 级</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="weather" v-else>
|
<div class="weather" v-else>
|
||||||
@ -16,7 +19,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted, reactive, h } from "vue";
|
import { onMounted, reactive, h } from "vue";
|
||||||
import { getAdcode, getWeather } from "@/api";
|
import { getAdcode, getWeather, getOtherWeather } from "@/api";
|
||||||
import { Error } from "@icon-park/vue-next";
|
import { Error } from "@icon-park/vue-next";
|
||||||
|
|
||||||
// 高德开发者 Key
|
// 高德开发者 Key
|
||||||
@ -39,10 +42,29 @@ const weatherData = reactive({
|
|||||||
// 获取天气数据
|
// 获取天气数据
|
||||||
const getWeatherData = () => {
|
const getWeatherData = () => {
|
||||||
// 获取地理位置信息
|
// 获取地理位置信息
|
||||||
if (!mainKey) return onError("请配置天气 Key");
|
if (!mainKey) {
|
||||||
getAdcode(mainKey)
|
getOtherWeather()
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.status) {
|
console.log(res);
|
||||||
|
const data = res.result;
|
||||||
|
weatherData.adCode = {
|
||||||
|
city: data.city.name,
|
||||||
|
adcode: data.city.cityId,
|
||||||
|
};
|
||||||
|
weatherData.weather = {
|
||||||
|
weather: data.condition.condition,
|
||||||
|
temperature: data.condition.temp,
|
||||||
|
winddirection: data.condition.windDir,
|
||||||
|
windpower: data.condition.windLevel,
|
||||||
|
};
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.error("天气信息获取失败:" + err);
|
||||||
|
onError("天气信息获取失败");
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
getAdcode(mainKey)
|
||||||
|
.then((res) => {
|
||||||
weatherData.adCode = {
|
weatherData.adCode = {
|
||||||
city: res.city,
|
city: res.city,
|
||||||
adcode: res.adcode,
|
adcode: res.adcode,
|
||||||
@ -50,33 +72,29 @@ const getWeatherData = () => {
|
|||||||
// 获取天气信息
|
// 获取天气信息
|
||||||
getWeather(mainKey, weatherData.adCode.adcode)
|
getWeather(mainKey, weatherData.adCode.adcode)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.status) {
|
weatherData.weather = {
|
||||||
weatherData.weather = {
|
weather: res.lives[0].weather,
|
||||||
weather: res.lives[0].weather,
|
temperature: res.lives[0].temperature,
|
||||||
temperature: res.lives[0].temperature,
|
winddirection: res.lives[0].winddirection,
|
||||||
winddirection: res.lives[0].winddirection,
|
windpower: res.lives[0].windpower,
|
||||||
windpower: res.lives[0].windpower,
|
};
|
||||||
};
|
|
||||||
} else {
|
|
||||||
onError("天气信息获取失败");
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch((err) => {
|
||||||
|
console.error("天气信息获取失败:" + err);
|
||||||
onError("天气信息获取失败");
|
onError("天气信息获取失败");
|
||||||
});
|
});
|
||||||
} else {
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.error("地理位置获取失败:" + err);
|
||||||
onError("地理位置获取失败");
|
onError("地理位置获取失败");
|
||||||
}
|
});
|
||||||
})
|
}
|
||||||
.catch(() => {
|
|
||||||
onError("地理位置获取失败");
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// 报错信息
|
// 报错信息
|
||||||
const onError = (message) => {
|
const onError = (message) => {
|
||||||
ElMessage({
|
ElMessage({
|
||||||
message: message,
|
message,
|
||||||
icon: h(Error, {
|
icon: h(Error, {
|
||||||
theme: "filled",
|
theme: "filled",
|
||||||
fill: "#efefef",
|
fill: "#efefef",
|
||||||
@ -89,4 +107,4 @@ onMounted(() => {
|
|||||||
// 调用获取天气
|
// 调用获取天气
|
||||||
getWeatherData();
|
getWeatherData();
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
@ -46,10 +46,14 @@ const store = mainStore();
|
|||||||
const currentTime = ref({});
|
const currentTime = ref({});
|
||||||
const timeInterval = ref(null);
|
const timeInterval = ref(null);
|
||||||
|
|
||||||
|
// 更新时间
|
||||||
|
const updateTimeData = () => {
|
||||||
|
currentTime.value = getCurrentTime();
|
||||||
|
};
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
timeInterval.value = setInterval(() => {
|
updateTimeData();
|
||||||
currentTime.value = getCurrentTime();
|
timeInterval.value = setInterval(updateTimeData, 1000);
|
||||||
}, 1000);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
|
@ -32,7 +32,6 @@ export default ({
|
|||||||
}),
|
}),
|
||||||
createHtmlPlugin({
|
createHtmlPlugin({
|
||||||
minify: true,
|
minify: true,
|
||||||
template: 'index.html',
|
|
||||||
inject: {
|
inject: {
|
||||||
data: {
|
data: {
|
||||||
logo: loadEnv(mode, process.cwd()).VITE_SITE_LOGO,
|
logo: loadEnv(mode, process.cwd()).VITE_SITE_LOGO,
|
||||||
|
139
yarn.lock
139
yarn.lock
@ -1084,7 +1084,7 @@
|
|||||||
estree-walker "^1.0.1"
|
estree-walker "^1.0.1"
|
||||||
picomatch "^2.2.2"
|
picomatch "^2.2.2"
|
||||||
|
|
||||||
"@rollup/pluginutils@^4.2.0", "@rollup/pluginutils@^4.2.1":
|
"@rollup/pluginutils@^4.1.2", "@rollup/pluginutils@^4.2.1":
|
||||||
version "4.2.1"
|
version "4.2.1"
|
||||||
resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-4.2.1.tgz"
|
resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-4.2.1.tgz"
|
||||||
integrity sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==
|
integrity sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==
|
||||||
@ -1430,11 +1430,6 @@ binary-extensions@^2.0.0:
|
|||||||
resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz"
|
resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz"
|
||||||
integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
|
integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
|
||||||
|
|
||||||
boolbase@^1.0.0:
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz"
|
|
||||||
integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==
|
|
||||||
|
|
||||||
brace-expansion@^1.1.7:
|
brace-expansion@^1.1.7:
|
||||||
version "1.1.11"
|
version "1.1.11"
|
||||||
resolved "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz"
|
resolved "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz"
|
||||||
@ -1561,11 +1556,6 @@ color-name@~1.1.4:
|
|||||||
resolved "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz"
|
resolved "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz"
|
||||||
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
||||||
|
|
||||||
colorette@^2.0.16:
|
|
||||||
version "2.0.19"
|
|
||||||
resolved "https://registry.npmmirror.com/colorette/-/colorette-2.0.19.tgz"
|
|
||||||
integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==
|
|
||||||
|
|
||||||
combined-stream@^1.0.8:
|
combined-stream@^1.0.8:
|
||||||
version "1.0.8"
|
version "1.0.8"
|
||||||
resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz"
|
resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz"
|
||||||
@ -1593,16 +1583,6 @@ concat-map@0.0.1:
|
|||||||
resolved "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz"
|
resolved "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz"
|
||||||
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
||||||
|
|
||||||
connect-history-api-fallback@^1.6.0:
|
|
||||||
version "1.6.0"
|
|
||||||
resolved "https://registry.npmmirror.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz"
|
|
||||||
integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==
|
|
||||||
|
|
||||||
consola@^2.15.3:
|
|
||||||
version "2.15.3"
|
|
||||||
resolved "https://registry.npmmirror.com/consola/-/consola-2.15.3.tgz"
|
|
||||||
integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==
|
|
||||||
|
|
||||||
convert-source-map@^1.7.0:
|
convert-source-map@^1.7.0:
|
||||||
version "1.9.0"
|
version "1.9.0"
|
||||||
resolved "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
|
resolved "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
|
||||||
@ -1629,22 +1609,6 @@ css-render@^0.13.2:
|
|||||||
"@types/node" "~14.14.31"
|
"@types/node" "~14.14.31"
|
||||||
csstype "~3.0.5"
|
csstype "~3.0.5"
|
||||||
|
|
||||||
css-select@^4.2.1:
|
|
||||||
version "4.3.0"
|
|
||||||
resolved "https://registry.npmmirror.com/css-select/-/css-select-4.3.0.tgz"
|
|
||||||
integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==
|
|
||||||
dependencies:
|
|
||||||
boolbase "^1.0.0"
|
|
||||||
css-what "^6.0.1"
|
|
||||||
domhandler "^4.3.1"
|
|
||||||
domutils "^2.8.0"
|
|
||||||
nth-check "^2.0.1"
|
|
||||||
|
|
||||||
css-what@^6.0.1:
|
|
||||||
version "6.1.0"
|
|
||||||
resolved "https://registry.npmmirror.com/css-what/-/css-what-6.1.0.tgz"
|
|
||||||
integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==
|
|
||||||
|
|
||||||
csstype@^2.6.8:
|
csstype@^2.6.8:
|
||||||
version "2.6.21"
|
version "2.6.21"
|
||||||
resolved "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz"
|
resolved "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz"
|
||||||
@ -1685,36 +1649,6 @@ delayed-stream@~1.0.0:
|
|||||||
resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz"
|
resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz"
|
||||||
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
|
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
|
||||||
|
|
||||||
dom-serializer@^1.0.1:
|
|
||||||
version "1.4.1"
|
|
||||||
resolved "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.4.1.tgz"
|
|
||||||
integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^2.0.1"
|
|
||||||
domhandler "^4.2.0"
|
|
||||||
entities "^2.0.0"
|
|
||||||
|
|
||||||
domelementtype@^2.0.1, domelementtype@^2.2.0:
|
|
||||||
version "2.3.0"
|
|
||||||
resolved "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz"
|
|
||||||
integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==
|
|
||||||
|
|
||||||
domhandler@^4.2.0, domhandler@^4.3.1:
|
|
||||||
version "4.3.1"
|
|
||||||
resolved "https://registry.npmmirror.com/domhandler/-/domhandler-4.3.1.tgz"
|
|
||||||
integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^2.2.0"
|
|
||||||
|
|
||||||
domutils@^2.8.0:
|
|
||||||
version "2.8.0"
|
|
||||||
resolved "https://registry.npmmirror.com/domutils/-/domutils-2.8.0.tgz"
|
|
||||||
integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==
|
|
||||||
dependencies:
|
|
||||||
dom-serializer "^1.0.1"
|
|
||||||
domelementtype "^2.2.0"
|
|
||||||
domhandler "^4.2.0"
|
|
||||||
|
|
||||||
dot-case@^3.0.4:
|
dot-case@^3.0.4:
|
||||||
version "3.0.4"
|
version "3.0.4"
|
||||||
resolved "https://registry.npmmirror.com/dot-case/-/dot-case-3.0.4.tgz"
|
resolved "https://registry.npmmirror.com/dot-case/-/dot-case-3.0.4.tgz"
|
||||||
@ -1723,15 +1657,15 @@ dot-case@^3.0.4:
|
|||||||
no-case "^3.0.4"
|
no-case "^3.0.4"
|
||||||
tslib "^2.0.3"
|
tslib "^2.0.3"
|
||||||
|
|
||||||
dotenv-expand@^8.0.2:
|
dotenv-expand@^5.1.0:
|
||||||
version "8.0.3"
|
version "5.1.0"
|
||||||
resolved "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-8.0.3.tgz"
|
resolved "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0"
|
||||||
integrity sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==
|
integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==
|
||||||
|
|
||||||
dotenv@^16.0.0:
|
dotenv@^10.0.0:
|
||||||
version "16.0.3"
|
version "10.0.0"
|
||||||
resolved "https://registry.npmmirror.com/dotenv/-/dotenv-16.0.3.tgz"
|
resolved "https://registry.npmmirror.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81"
|
||||||
integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==
|
integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==
|
||||||
|
|
||||||
ejs@^3.1.6:
|
ejs@^3.1.6:
|
||||||
version "3.1.8"
|
version "3.1.8"
|
||||||
@ -1771,11 +1705,6 @@ emojis-list@^3.0.0:
|
|||||||
resolved "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
|
resolved "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
|
||||||
integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
|
integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
|
||||||
|
|
||||||
entities@^2.0.0:
|
|
||||||
version "2.2.0"
|
|
||||||
resolved "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz"
|
|
||||||
integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
|
|
||||||
|
|
||||||
es-abstract@^1.19.0, es-abstract@^1.20.4:
|
es-abstract@^1.19.0, es-abstract@^1.20.4:
|
||||||
version "1.21.1"
|
version "1.21.1"
|
||||||
resolved "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.21.1.tgz#e6105a099967c08377830a0c9cb589d570dd86c6"
|
resolved "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.21.1.tgz#e6105a099967c08377830a0c9cb589d570dd86c6"
|
||||||
@ -2001,7 +1930,7 @@ fast-deep-equal@^3.1.1:
|
|||||||
resolved "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
resolved "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
||||||
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
||||||
|
|
||||||
fast-glob@^3.2.11, fast-glob@^3.2.12:
|
fast-glob@^3.2.12:
|
||||||
version "3.2.12"
|
version "3.2.12"
|
||||||
resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz"
|
resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz"
|
||||||
integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
|
integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
|
||||||
@ -2064,9 +1993,9 @@ form-data@^4.0.0:
|
|||||||
combined-stream "^1.0.8"
|
combined-stream "^1.0.8"
|
||||||
mime-types "^2.1.12"
|
mime-types "^2.1.12"
|
||||||
|
|
||||||
fs-extra@^10.0.1:
|
fs-extra@^10.0.0:
|
||||||
version "10.1.0"
|
version "10.1.0"
|
||||||
resolved "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz"
|
resolved "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
|
||||||
integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
|
integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
graceful-fs "^4.2.0"
|
graceful-fs "^4.2.0"
|
||||||
@ -2234,7 +2163,7 @@ hash-sum@^2.0.0:
|
|||||||
resolved "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a"
|
resolved "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a"
|
||||||
integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==
|
integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==
|
||||||
|
|
||||||
he@1.2.0, he@^1.2.0:
|
he@^1.2.0:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.npmmirror.com/he/-/he-1.2.0.tgz"
|
resolved "https://registry.npmmirror.com/he/-/he-1.2.0.tgz"
|
||||||
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
||||||
@ -2659,14 +2588,6 @@ no-case@^3.0.4:
|
|||||||
lower-case "^2.0.2"
|
lower-case "^2.0.2"
|
||||||
tslib "^2.0.3"
|
tslib "^2.0.3"
|
||||||
|
|
||||||
node-html-parser@^5.3.3:
|
|
||||||
version "5.4.2"
|
|
||||||
resolved "https://registry.npmmirror.com/node-html-parser/-/node-html-parser-5.4.2.tgz"
|
|
||||||
integrity sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==
|
|
||||||
dependencies:
|
|
||||||
css-select "^4.2.1"
|
|
||||||
he "1.2.0"
|
|
||||||
|
|
||||||
node-releases@^2.0.6:
|
node-releases@^2.0.6:
|
||||||
version "2.0.8"
|
version "2.0.8"
|
||||||
resolved "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.8.tgz#0f349cdc8fcfa39a92ac0be9bc48b7706292b9ae"
|
resolved "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.8.tgz#0f349cdc8fcfa39a92ac0be9bc48b7706292b9ae"
|
||||||
@ -2682,13 +2603,6 @@ normalize-wheel-es@^1.2.0:
|
|||||||
resolved "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz"
|
resolved "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz"
|
||||||
integrity sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==
|
integrity sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==
|
||||||
|
|
||||||
nth-check@^2.0.1:
|
|
||||||
version "2.1.1"
|
|
||||||
resolved "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz"
|
|
||||||
integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==
|
|
||||||
dependencies:
|
|
||||||
boolbase "^1.0.0"
|
|
||||||
|
|
||||||
object-inspect@^1.12.2, object-inspect@^1.9.0:
|
object-inspect@^1.12.2, object-inspect@^1.9.0:
|
||||||
version "1.12.3"
|
version "1.12.3"
|
||||||
resolved "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
|
resolved "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
|
||||||
@ -2742,11 +2656,6 @@ path-parse@^1.0.7:
|
|||||||
resolved "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz"
|
resolved "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz"
|
||||||
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
|
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
|
||||||
|
|
||||||
pathe@^0.2.0:
|
|
||||||
version "0.2.0"
|
|
||||||
resolved "https://registry.npmmirror.com/pathe/-/pathe-0.2.0.tgz"
|
|
||||||
integrity sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==
|
|
||||||
|
|
||||||
pathe@^0.3.7, pathe@^0.3.8:
|
pathe@^0.3.7, pathe@^0.3.8:
|
||||||
version "0.3.9"
|
version "0.3.9"
|
||||||
resolved "https://registry.npmmirror.com/pathe/-/pathe-0.3.9.tgz"
|
resolved "https://registry.npmmirror.com/pathe/-/pathe-0.3.9.tgz"
|
||||||
@ -3321,23 +3230,17 @@ uri-js@^4.2.2:
|
|||||||
dependencies:
|
dependencies:
|
||||||
punycode "^2.1.0"
|
punycode "^2.1.0"
|
||||||
|
|
||||||
vite-plugin-html@^3.2.0:
|
vite-plugin-html@^2.1.2:
|
||||||
version "3.2.0"
|
version "2.1.2"
|
||||||
resolved "https://registry.npmmirror.com/vite-plugin-html/-/vite-plugin-html-3.2.0.tgz#0d4df9900642a321a139f1c25c05195ba9d0ec79"
|
resolved "https://registry.npmmirror.com/vite-plugin-html/-/vite-plugin-html-2.1.2.tgz#aaf846a806b37e4884870e5ce1918166e9ce9125"
|
||||||
integrity sha512-2VLCeDiHmV/BqqNn5h2V+4280KRgQzCFN47cst3WiNK848klESPQnzuC3okH5XHtgwHH/6s1Ho/YV6yIO0pgoQ==
|
integrity sha512-7HXkL6n7M2qDEaUV4Vnz8yM2glW4gV36d5HSBIM5gOoAG1PkuQb4Vv9FTPgPiQxq4sPRf/6IgABX0MeLVW+CyQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@rollup/pluginutils" "^4.2.0"
|
"@rollup/pluginutils" "^4.1.2"
|
||||||
colorette "^2.0.16"
|
dotenv "^10.0.0"
|
||||||
connect-history-api-fallback "^1.6.0"
|
dotenv-expand "^5.1.0"
|
||||||
consola "^2.15.3"
|
|
||||||
dotenv "^16.0.0"
|
|
||||||
dotenv-expand "^8.0.2"
|
|
||||||
ejs "^3.1.6"
|
ejs "^3.1.6"
|
||||||
fast-glob "^3.2.11"
|
fs-extra "^10.0.0"
|
||||||
fs-extra "^10.0.1"
|
|
||||||
html-minifier-terser "^6.1.0"
|
html-minifier-terser "^6.1.0"
|
||||||
node-html-parser "^5.3.3"
|
|
||||||
pathe "^0.2.0"
|
|
||||||
|
|
||||||
vite-plugin-pwa@^0.14.1:
|
vite-plugin-pwa@^0.14.1:
|
||||||
version "0.14.1"
|
version "0.14.1"
|
||||||
|
Loading…
Reference in New Issue
Block a user