自动聚焦
@@ -220,6 +271,7 @@ import {
NForm,
NFormItem,
NInput,
+ NSlider,
} from "naive-ui";
import { storeToRefs } from "pinia";
import { setStore, statusStore } from "@/stores";
@@ -231,12 +283,18 @@ const {
backgroundType,
backgroundCustom,
showBackgroundGray,
+ backgroundBlur,
+ smallInput,
autoFocus,
autoInputBlur,
+ showLunar,
+ showWeather,
showSeconds,
showZeroTime,
+ use12HourFormat,
showSuggestions,
urlJumpType,
+ timeStyle,
} = storeToRefs(set);
const recoverRef = ref(null);
const customCoverModal = ref(false);
@@ -281,6 +339,18 @@ const urlJumpTypeOptions = [
},
];
+// 时钟样式
+const timeStyleOptions = [
+ {
+ label: "横向排布",
+ value: "one",
+ },
+ {
+ label: "竖向排布",
+ value: "two",
+ },
+];
+
// 自定义壁纸
const setCustomCover = () => {
if (identifyInput(customCoverUrl.value) === "url") {
diff --git a/src/components/AllFunc/Box/ShortCut.vue b/src/components/AllFunc/Box/ShortCut.vue
new file mode 100644
index 0000000..d6846ea
--- /dev/null
+++ b/src/components/AllFunc/Box/ShortCut.vue
@@ -0,0 +1,315 @@
+
+
+
+
+
+
+
+ {{ item.name }}
+
+ {
+ e.preventDefault();
+ }
+ "
+ @click="addShortcutModalOpen"
+ >
+
+ 添加捷径
+
+
+
+
+
+ 暂无捷径,去添加吧
+
+
+
+
+ 添加捷径
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 取消
+
+ {{ addShortcutModalType ? "编辑" : "添加" }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/Cover.vue b/src/components/Cover.vue
index 7fd6153..d0a4214 100644
--- a/src/components/Cover.vue
+++ b/src/components/Cover.vue
@@ -5,6 +5,7 @@
class="background"
alt="background"
:src="bgUrl"
+ :style="{ '--blur': set.backgroundBlur + 'px' }"
@load="imgLoadComplete"
@error.once="imgLoadError"
@animationend="imgAnimationEnd"
@@ -71,9 +72,9 @@ const imgAnimationEnd = () => {
// 图片显示失败
const imgLoadError = () => {
- bgUrl.value = `/background/bg${bgRandom}.jpg`;
console.error("壁纸加载失败:", bgUrl.value);
$message.error("壁纸加载失败,已临时切换回默认");
+ bgUrl.value = `/background/bg${bgRandom}.jpg`;
};
onMounted(() => {
@@ -93,8 +94,8 @@ onBeforeUnmount(() => {
background-color: var(--body-background-color);
&.focus {
.background {
- filter: blur(10px) brightness(0.8);
- transform: scale(1.1);
+ filter: blur(calc(var(--blur) + 10px)) brightness(0.8);
+ transform: scale(1.3);
}
}
.background {
@@ -105,6 +106,8 @@ onBeforeUnmount(() => {
height: 100%;
object-fit: cover;
backface-visibility: hidden;
+ transform: scale(1.2);
+ filter: blur(var(--blur));
transition: filter 0.3s, transform 0.3s;
animation: fade-blur-in 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
diff --git a/src/components/SearchInput/SearchEngine.vue b/src/components/SearchInput/SearchEngine.vue
index c3dde50..10dd6ed 100644
--- a/src/components/SearchInput/SearchEngine.vue
+++ b/src/components/SearchInput/SearchEngine.vue
@@ -41,8 +41,8 @@
{
};
// 自定义搜索引擎
-const setCustomEngine = (e) => {
- e.preventDefault();
+const setCustomEngine = () => {
customEngineRef.value?.validate((errors) => {
if (!errors) {
set.setSearchEngine(customEngineValue.value.url, true);
diff --git a/src/components/SearchInput/SearchInp.vue b/src/components/SearchInput/SearchInp.vue
index 6a5a86c..0686b6a 100644
--- a/src/components/SearchInput/SearchInp.vue
+++ b/src/components/SearchInput/SearchInp.vue
@@ -1,6 +1,13 @@
-