commit
220ce2e319
5
.env
5
.env
@ -7,7 +7,8 @@ VITE_SITE_URL = "imsyy.top"
|
||||
VITE_SITE_LOGO = "/images/icon/favicon.ico"
|
||||
VITE_SITE_APPLE_LOGO = "/images/logo/apple-touch-icon.png"
|
||||
|
||||
# 百度统计(若不需要可不填)
|
||||
# 百度统计
|
||||
## 若不需要,请设为空即可
|
||||
VITE_SITE_BAIDUTONGJI = "14e9f35ff8bc67fd4bcb5f07a6e6655a"
|
||||
|
||||
# 简介文本
|
||||
@ -27,9 +28,11 @@ VITE_DESC_TEXT_OTHER = "哎呀,这都被你发现了( 再点击一次可关
|
||||
## 请前往 高德开放平台注册 Web服务 Key
|
||||
## 请注意不是 Web端 (JS API),免费申请,每日上限 5000 次
|
||||
## 此处提供的服务可能会超量从而无法访问,请自行申请!请自行申请!请自行申请!
|
||||
## 若此处设为空则调用 教书先生 API https://api.oioweb.cn/doc/weather/GetWeather
|
||||
VITE_WEATHER_KEY = "6c13af6fc30868bee488faf2cc652ab4"
|
||||
|
||||
# 建站日期
|
||||
## 若不需要,请设为空即可
|
||||
## 请按照 YYYY-MM-DD 格式填写或者仅填写年份 YYYY
|
||||
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)
|
||||
|
||||
>主页的 Logo 字体已经过压缩,若用本站 Logo 以外的字母会变回默认字体,这里是 [完整字体](https://file.4everland.app/font/Other/Pacifico-Regular.ttf)
|
||||
>主页的 Logo 字体已经过压缩,若用本站 Logo 以外的字母会变回默认字体,这里是 [完整字体](https://file.imsyy.top/font/Other/Pacifico-Regular.ttf)
|
||||
|
||||
### Demo
|
||||
|
||||
>由于 CDN 缓存原因,查看最新效果可能需要 `Ctrl` + `F5` 强制刷新浏览器缓存
|
||||
|
||||
- [無名の主页](https://www.imsyy.top)
|
||||
- [無名の主页 - Dev](https://dev.home-5iw.pages.dev/)
|
||||
- [無名の主页 - 备用线路](https://home-imsyy.vercel.app/)
|
||||
|
||||
### 功能
|
||||
@ -38,20 +39,66 @@
|
||||
* 在 `终端` 中输入:
|
||||
|
||||
```bash
|
||||
# 安装 yarn
|
||||
npm install -g yarn
|
||||
# 安装 pnpm
|
||||
npm install -g pnpm
|
||||
|
||||
# 安装依赖
|
||||
yarn install
|
||||
pnpm install
|
||||
|
||||
# 预览
|
||||
yarn dev
|
||||
pnpm dev
|
||||
|
||||
# 构建
|
||||
yarn build
|
||||
pnpm build
|
||||
```
|
||||
> 构建完成后,静态资源会在 **`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
|
||||
@ -122,6 +169,28 @@ make clean all
|
||||
|
||||
</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/)
|
||||
@ -134,8 +203,12 @@ make clean all
|
||||
### 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/)
|
||||
* [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>
|
||||
|
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
|
||||
|
||||
* **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
|
||||
yarn install
|
||||
yarn dev
|
||||
yarn build
|
||||
# Install pnpm
|
||||
npm install -g pnpm
|
||||
|
||||
# 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`.
|
||||
|
||||
### Weather
|
||||
@ -119,7 +136,7 @@ make clean all
|
||||
### 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/)
|
||||
* [Hitokoto 一言](https://hitokoto.cn/)
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
"github": "https://github.com/imsyy/home",
|
||||
"home": "https://imsyy.top",
|
||||
"private": true,
|
||||
"version": "4.0.3",
|
||||
"version": "4.0.5",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"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;
|
||||
padding: 0;
|
||||
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 0.75s cubic-bezier(0.42, 0, 0, 1.01);
|
||||
-webkit-backdrop-filter: blur(10px);
|
||||
backdrop-filter: blur(10px);
|
||||
position: fixed;
|
||||
z-index: 999;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: #515151e0;
|
||||
transition: all 0.75s cubic-bezier(0.42, 0, 0, 1.01);
|
||||
-webkit-backdrop-filter: blur(10px);
|
||||
backdrop-filter: blur(10px);
|
||||
}
|
||||
|
||||
#loading-box .loading-right-bg {
|
||||
right: 0;
|
||||
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 {
|
||||
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: #ffffff;
|
||||
font-size: 0.95rem;
|
||||
transform: translateY(64px);
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
color: #ffffff;
|
||||
font-size: 0.95rem;
|
||||
transform: translateY(64px);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.loading-title {
|
||||
font-size: 1.25rem;
|
||||
margin: 20px 10px 4px 10px;
|
||||
font-size: 1.25rem;
|
||||
margin: 20px 10px 4px 10px;
|
||||
}
|
||||
|
||||
#loading-box .spinner-box .configure-core {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #37474f;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #37474f;
|
||||
}
|
||||
|
||||
/* 加载完成 */
|
||||
.loaded .loading-left-bg {
|
||||
transform: translate(-100%, 0);
|
||||
transform: translate(-100%, 0);
|
||||
}
|
||||
|
||||
.loaded .loading-right-bg {
|
||||
transform: translate(100%, 0);
|
||||
transform: translate(100%, 0);
|
||||
}
|
||||
|
||||
.loaded .spinner-box {
|
||||
display: none !important;
|
||||
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 0.7s cubic-bezier(0.42, 0, 0, 1.01);
|
||||
position: absolute;
|
||||
top: calc(50% - 32px);
|
||||
left: calc(50% - 32px);
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
border-radius: 50%;
|
||||
perspective: 800px;
|
||||
transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01);
|
||||
}
|
||||
|
||||
.inner {
|
||||
position: absolute;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 50%;
|
||||
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;
|
||||
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;
|
||||
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;
|
||||
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(0deg);
|
||||
}
|
||||
0% {
|
||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
|
||||
}
|
||||
100% {
|
||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes rotate-two {
|
||||
0% {
|
||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
|
||||
}
|
||||
0% {
|
||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
|
||||
}
|
||||
100% {
|
||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes rotate-three {
|
||||
0% {
|
||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
|
||||
}
|
||||
0% {
|
||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
|
||||
}
|
||||
100% {
|
||||
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)}}
|
22
src/App.vue
22
src/App.vue
@ -83,11 +83,10 @@ onMounted(() => {
|
||||
window.addEventListener("mousedown", (event) => {
|
||||
if (event.button == 1) {
|
||||
store.backgroundShow = !store.backgroundShow;
|
||||
if (store.backgroundShow) {
|
||||
ElMessage("已开启壁纸展示状态");
|
||||
} else {
|
||||
ElMessage("已退出壁纸展示状态");
|
||||
}
|
||||
ElMessage({
|
||||
message: `已${store.backgroundShow ? "开启" : "退出"}壁纸展示状态`,
|
||||
grouping: true,
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
@ -96,18 +95,19 @@ onMounted(() => {
|
||||
window.addEventListener("resize", getWidth);
|
||||
|
||||
// 控制台输出
|
||||
let styleTitle1 = "font-size: 20px;font-weight: 600;color: rgb(244,167,89);";
|
||||
let styleTitle2 = "font-size:12px;color: rgb(244,167,89);";
|
||||
let styleContent = "color: rgb(30,152,255);";
|
||||
let title1 = "無名の主页";
|
||||
let title2 = `
|
||||
const styleTitle1 =
|
||||
"font-size: 20px;font-weight: 600;color: rgb(244,167,89);";
|
||||
const styleTitle2 = "font-size:12px;color: rgb(244,167,89);";
|
||||
const styleContent = "color: rgb(30,152,255);";
|
||||
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(
|
||||
`%c${title1} %c${title2} %c${content}`,
|
||||
styleTitle1,
|
||||
|
@ -67,3 +67,10 @@ export const getWeather = async (key, city) => {
|
||||
);
|
||||
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",
|
||||
"name": "博客",
|
||||
"link": "https://blog.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Cloud",
|
||||
"name": "网盘",
|
||||
"link": "https://pan.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "CompactDisc",
|
||||
"name": "音乐",
|
||||
"link": "https://music.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Compass",
|
||||
"name": "起始页",
|
||||
"link": "https://nav.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Book",
|
||||
"name": "网址集",
|
||||
"link": "https://web.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Fire",
|
||||
"name": "今日热榜",
|
||||
"link": "https://hot.imsyy.top/"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"icon": "LaptopCode",
|
||||
"name": "站点监测",
|
||||
"link": "https://status.imsyy.top/"
|
||||
}
|
||||
]
|
||||
{
|
||||
"icon": "Blog",
|
||||
"name": "博客",
|
||||
"link": "https://blog.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Cloud",
|
||||
"name": "网盘",
|
||||
"link": "https://pan.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "CompactDisc",
|
||||
"name": "音乐",
|
||||
"link": "https://music.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Compass",
|
||||
"name": "起始页",
|
||||
"link": "https://nav.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Book",
|
||||
"name": "网址集",
|
||||
"link": "https://web.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "Fire",
|
||||
"name": "今日热榜",
|
||||
"link": "https://hot.imsyy.top/"
|
||||
},
|
||||
{
|
||||
"icon": "LaptopCode",
|
||||
"name": "站点监测",
|
||||
"link": "https://status.imsyy.top/"
|
||||
}
|
||||
]
|
||||
|
@ -18,10 +18,11 @@
|
||||
import { onMounted, ref, watch, h } from "vue";
|
||||
import { SuccessPicture } from "@icon-park/vue-next";
|
||||
import { mainStore } from "@/store";
|
||||
const store = mainStore();
|
||||
|
||||
const store = mainStore();
|
||||
const bgUrl = ref(null); // 壁纸链接
|
||||
|
||||
// 更换壁纸链接
|
||||
const changeBg = (type) => {
|
||||
if (type == 0) {
|
||||
bgUrl.value = `/images/background${Math.floor(
|
||||
@ -32,7 +33,7 @@ const changeBg = (type) => {
|
||||
} else if (type == 2) {
|
||||
bgUrl.value = "https://api.btstu.cn/sjbz/api.php?lx=fengjing&format=images";
|
||||
} 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";
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
-
|
||||
</span>
|
||||
{{ fullYear }}
|
||||
<a href="https://imsyy.top">無名</a>
|
||||
<a :href="SiteUrl">{{ SiteAnthor }}</a>
|
||||
</span>
|
||||
<!-- 以下信息请不要修改哦 -->
|
||||
<span class="hidden">
|
||||
@ -45,6 +45,8 @@ const fullYear = new Date().getFullYear();
|
||||
// 加载配置数据
|
||||
const siteStartDate = ref(import.meta.env.VITE_SITE_START);
|
||||
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>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="links">
|
||||
<div v-if="siteLinks[0]" class="links">
|
||||
<div class="line">
|
||||
<Icon size="20">
|
||||
<Link />
|
||||
@ -19,11 +19,11 @@
|
||||
}"
|
||||
: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-col
|
||||
:span="8"
|
||||
v-for="(item, index) in site"
|
||||
:span="8"
|
||||
:key="item"
|
||||
@click="jumpLink(item)"
|
||||
>
|
||||
@ -45,7 +45,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { onMounted } from "vue";
|
||||
import { onMounted, computed } from "vue";
|
||||
import { Icon } from "@vicons/utils";
|
||||
// 可前往 https://www.xicons.org 自行挑选并在此处引入
|
||||
import {
|
||||
@ -67,6 +67,16 @@ import "swiper/scss/pagination";
|
||||
|
||||
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 = {
|
||||
Blog,
|
||||
@ -131,6 +141,7 @@ onMounted(() => {
|
||||
}
|
||||
}
|
||||
.link-all {
|
||||
height: 220px;
|
||||
.item {
|
||||
height: 100px;
|
||||
width: 100%;
|
||||
|
@ -1,12 +1,15 @@
|
||||
<template>
|
||||
<div
|
||||
class="weather"
|
||||
v-if="weatherData.adCode.city && weatherData.weather.weather"
|
||||
>
|
||||
<div class="weather" v-if="weatherData.adCode.city && weatherData.weather.weather">
|
||||
<span>{{ weatherData.adCode.city }} </span>
|
||||
<span>{{ weatherData.weather.weather }} </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>
|
||||
</div>
|
||||
<div class="weather" v-else>
|
||||
@ -16,7 +19,7 @@
|
||||
|
||||
<script setup>
|
||||
import { onMounted, reactive, h } from "vue";
|
||||
import { getAdcode, getWeather } from "@/api";
|
||||
import { getAdcode, getWeather, getOtherWeather } from "@/api";
|
||||
import { Error } from "@icon-park/vue-next";
|
||||
|
||||
// 高德开发者 Key
|
||||
@ -39,10 +42,29 @@ const weatherData = reactive({
|
||||
// 获取天气数据
|
||||
const getWeatherData = () => {
|
||||
// 获取地理位置信息
|
||||
if (!mainKey) return onError("请配置天气 Key");
|
||||
getAdcode(mainKey)
|
||||
.then((res) => {
|
||||
if (res.status) {
|
||||
if (!mainKey) {
|
||||
getOtherWeather()
|
||||
.then((res) => {
|
||||
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 = {
|
||||
city: res.city,
|
||||
adcode: res.adcode,
|
||||
@ -50,33 +72,29 @@ const getWeatherData = () => {
|
||||
// 获取天气信息
|
||||
getWeather(mainKey, weatherData.adCode.adcode)
|
||||
.then((res) => {
|
||||
if (res.status) {
|
||||
weatherData.weather = {
|
||||
weather: res.lives[0].weather,
|
||||
temperature: res.lives[0].temperature,
|
||||
winddirection: res.lives[0].winddirection,
|
||||
windpower: res.lives[0].windpower,
|
||||
};
|
||||
} else {
|
||||
onError("天气信息获取失败");
|
||||
}
|
||||
weatherData.weather = {
|
||||
weather: res.lives[0].weather,
|
||||
temperature: res.lives[0].temperature,
|
||||
winddirection: res.lives[0].winddirection,
|
||||
windpower: res.lives[0].windpower,
|
||||
};
|
||||
})
|
||||
.catch(() => {
|
||||
.catch((err) => {
|
||||
console.error("天气信息获取失败:" + err);
|
||||
onError("天气信息获取失败");
|
||||
});
|
||||
} else {
|
||||
})
|
||||
.catch((err) => {
|
||||
console.error("地理位置获取失败:" + err);
|
||||
onError("地理位置获取失败");
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
onError("地理位置获取失败");
|
||||
});
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// 报错信息
|
||||
const onError = (message) => {
|
||||
ElMessage({
|
||||
message: message,
|
||||
message,
|
||||
icon: h(Error, {
|
||||
theme: "filled",
|
||||
fill: "#efefef",
|
||||
|
@ -46,10 +46,14 @@ const store = mainStore();
|
||||
const currentTime = ref({});
|
||||
const timeInterval = ref(null);
|
||||
|
||||
// 更新时间
|
||||
const updateTimeData = () => {
|
||||
currentTime.value = getCurrentTime();
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
timeInterval.value = setInterval(() => {
|
||||
currentTime.value = getCurrentTime();
|
||||
}, 1000);
|
||||
updateTimeData();
|
||||
timeInterval.value = setInterval(updateTimeData, 1000);
|
||||
});
|
||||
|
||||
onBeforeUnmount(() => {
|
||||
|
@ -32,7 +32,6 @@ export default ({
|
||||
}),
|
||||
createHtmlPlugin({
|
||||
minify: true,
|
||||
template: 'index.html',
|
||||
inject: {
|
||||
data: {
|
||||
logo: loadEnv(mode, process.cwd()).VITE_SITE_LOGO,
|
||||
|
139
yarn.lock
139
yarn.lock
@ -1084,7 +1084,7 @@
|
||||
estree-walker "^1.0.1"
|
||||
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"
|
||||
resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-4.2.1.tgz"
|
||||
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"
|
||||
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:
|
||||
version "1.1.11"
|
||||
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"
|
||||
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:
|
||||
version "1.0.8"
|
||||
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"
|
||||
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:
|
||||
version "1.9.0"
|
||||
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"
|
||||
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:
|
||||
version "2.6.21"
|
||||
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"
|
||||
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:
|
||||
version "3.0.4"
|
||||
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"
|
||||
tslib "^2.0.3"
|
||||
|
||||
dotenv-expand@^8.0.2:
|
||||
version "8.0.3"
|
||||
resolved "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-8.0.3.tgz"
|
||||
integrity sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==
|
||||
dotenv-expand@^5.1.0:
|
||||
version "5.1.0"
|
||||
resolved "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0"
|
||||
integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==
|
||||
|
||||
dotenv@^16.0.0:
|
||||
version "16.0.3"
|
||||
resolved "https://registry.npmmirror.com/dotenv/-/dotenv-16.0.3.tgz"
|
||||
integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==
|
||||
dotenv@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.npmmirror.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81"
|
||||
integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==
|
||||
|
||||
ejs@^3.1.6:
|
||||
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"
|
||||
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:
|
||||
version "1.21.1"
|
||||
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"
|
||||
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"
|
||||
resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz"
|
||||
integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
|
||||
@ -2064,9 +1993,9 @@ form-data@^4.0.0:
|
||||
combined-stream "^1.0.8"
|
||||
mime-types "^2.1.12"
|
||||
|
||||
fs-extra@^10.0.1:
|
||||
fs-extra@^10.0.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==
|
||||
dependencies:
|
||||
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"
|
||||
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"
|
||||
resolved "https://registry.npmmirror.com/he/-/he-1.2.0.tgz"
|
||||
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
||||
@ -2659,14 +2588,6 @@ no-case@^3.0.4:
|
||||
lower-case "^2.0.2"
|
||||
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:
|
||||
version "2.0.8"
|
||||
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"
|
||||
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:
|
||||
version "1.12.3"
|
||||
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"
|
||||
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:
|
||||
version "0.3.9"
|
||||
resolved "https://registry.npmmirror.com/pathe/-/pathe-0.3.9.tgz"
|
||||
@ -3321,23 +3230,17 @@ uri-js@^4.2.2:
|
||||
dependencies:
|
||||
punycode "^2.1.0"
|
||||
|
||||
vite-plugin-html@^3.2.0:
|
||||
version "3.2.0"
|
||||
resolved "https://registry.npmmirror.com/vite-plugin-html/-/vite-plugin-html-3.2.0.tgz#0d4df9900642a321a139f1c25c05195ba9d0ec79"
|
||||
integrity sha512-2VLCeDiHmV/BqqNn5h2V+4280KRgQzCFN47cst3WiNK848klESPQnzuC3okH5XHtgwHH/6s1Ho/YV6yIO0pgoQ==
|
||||
vite-plugin-html@^2.1.2:
|
||||
version "2.1.2"
|
||||
resolved "https://registry.npmmirror.com/vite-plugin-html/-/vite-plugin-html-2.1.2.tgz#aaf846a806b37e4884870e5ce1918166e9ce9125"
|
||||
integrity sha512-7HXkL6n7M2qDEaUV4Vnz8yM2glW4gV36d5HSBIM5gOoAG1PkuQb4Vv9FTPgPiQxq4sPRf/6IgABX0MeLVW+CyQ==
|
||||
dependencies:
|
||||
"@rollup/pluginutils" "^4.2.0"
|
||||
colorette "^2.0.16"
|
||||
connect-history-api-fallback "^1.6.0"
|
||||
consola "^2.15.3"
|
||||
dotenv "^16.0.0"
|
||||
dotenv-expand "^8.0.2"
|
||||
"@rollup/pluginutils" "^4.1.2"
|
||||
dotenv "^10.0.0"
|
||||
dotenv-expand "^5.1.0"
|
||||
ejs "^3.1.6"
|
||||
fast-glob "^3.2.11"
|
||||
fs-extra "^10.0.1"
|
||||
fs-extra "^10.0.0"
|
||||
html-minifier-terser "^6.1.0"
|
||||
node-html-parser "^5.3.3"
|
||||
pathe "^0.2.0"
|
||||
|
||||
vite-plugin-pwa@^0.14.1:
|
||||
version "0.14.1"
|
||||
|
Loading…
Reference in New Issue
Block a user