chore: 导入清理前的完整工程状态(含 Capacitor 原生壳,作为回滚备份点)
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
/* we will explain what these classes do next! */
|
||||
.v-enter-active,
|
||||
.v-leave-active {
|
||||
transition: opacity 0.3s ease;
|
||||
}
|
||||
|
||||
.v-enter-from,
|
||||
.v-leave-to {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
$ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
|
||||
$ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
|
||||
|
||||
@media (hover: hover) {
|
||||
a.dish-tag:hover {
|
||||
transform: translateY(-1px);
|
||||
}
|
||||
}
|
||||
|
||||
// 列表行删除:离开的行淡出并右移,剩下的行用 FLIP 位移补位(只动 transform / opacity)
|
||||
.cook-row-group {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.cook-row-move,
|
||||
.cook-row-leave-active {
|
||||
transition:
|
||||
transform 0.32s $ease-out,
|
||||
opacity 0.24s ease;
|
||||
}
|
||||
|
||||
.cook-row-leave-active {
|
||||
position: absolute;
|
||||
inset-inline: 0;
|
||||
}
|
||||
|
||||
.cook-row-leave-to {
|
||||
opacity: 0;
|
||||
transform: translateX(-24px);
|
||||
}
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.cook-row-move,
|
||||
.cook-row-leave-active {
|
||||
transition: opacity 0.15s ease;
|
||||
}
|
||||
|
||||
.cook-row-leave-to {
|
||||
transform: none;
|
||||
}
|
||||
|
||||
a.dish-tag:hover {
|
||||
transform: none;
|
||||
}
|
||||
}
|
||||
|
||||
// scrollbar
|
||||
::-webkit-scrollbar {
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track {
|
||||
border-radius: 2px;
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
border-radius: 2px;
|
||||
background-color: rgba(122, 122, 122, 0.3);
|
||||
|
||||
&:window-inactive {
|
||||
background-color: rgba(122, 122, 122, 0.3);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: rgba(122, 122, 122, 0.7);
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: rgba(122, 122, 122, 0.9);
|
||||
}
|
||||
}
|
||||
|
||||
// 空状态:居中的大图标 + 标题 + 说明
|
||||
.cook-empty {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding: 25vh 32px 0;
|
||||
text-align: center;
|
||||
color: var(--ion-color-medium);
|
||||
animation: cook-fade-up 0.4s $ease-out both;
|
||||
|
||||
ion-icon {
|
||||
font-size: 56px;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin: 16px 0 6px;
|
||||
font-size: 20px;
|
||||
font-weight: 600;
|
||||
color: var(--ion-text-color, #000);
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
font-size: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes cook-fade-up {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: translateY(8px);
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.cook-empty {
|
||||
animation: none;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
:root {
|
||||
--c-primary: #5fc178;
|
||||
--c-text: #333;
|
||||
|
||||
--c-bg: white;
|
||||
--c-bg-alt: #f9fbfd;
|
||||
}
|
||||
|
||||
.dark {
|
||||
--c-text: #fafafa;
|
||||
|
||||
--c-bg: #121212;
|
||||
--c-bg-alt: #333;
|
||||
}
|
||||
|
||||
// ylf
|
||||
:root {
|
||||
--ylf-c-bg-alt: var(--c-bg-alt);
|
||||
--ylf-c-border: #eaeaea;
|
||||
}
|
||||
|
||||
.dark {
|
||||
--ylf-c-border: #666;
|
||||
}
|
||||
|
||||
// cook custom
|
||||
:root {
|
||||
--cook-bottom-menu-padding-bottom: 20px;
|
||||
--cook-bottom-menu-height: calc(64px + var(--cook-bottom-menu-padding-bottom));
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
@use './animation.scss';
|
||||
// markdown
|
||||
@use './markdown.scss';
|
||||
|
||||
html,
|
||||
body,
|
||||
#app {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
background: var(--c-bg);
|
||||
}
|
||||
|
||||
input:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
#nprogress {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
#nprogress .bar {
|
||||
background: rgb(13, 148, 136);
|
||||
opacity: 0.75;
|
||||
position: fixed;
|
||||
z-index: 1031;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 2px;
|
||||
}
|
||||
|
||||
html {
|
||||
color: var(--c-text);
|
||||
background-color: var(--c-bg);
|
||||
|
||||
scroll-behavior: smooth;
|
||||
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
}
|
||||
|
||||
a {
|
||||
color: var(--c-text);
|
||||
}
|
||||
|
||||
button {
|
||||
outline: none;
|
||||
|
||||
&:focus,
|
||||
&:active {
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
hr {
|
||||
opacity: 0.1;
|
||||
}
|
||||
|
||||
.tag,
|
||||
.tagSize {
|
||||
margin: 4px;
|
||||
padding: 2px 4px;
|
||||
// border: 1px solid var(--c-text);
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
import '@ionic/vue/css/palettes/dark.class.css'
|
||||
import './ionic.css'
|
||||
@@ -0,0 +1,97 @@
|
||||
:root {
|
||||
/* --ion-color-primary: #3880ff; */
|
||||
}
|
||||
|
||||
/* Ionic Variables and Theming
|
||||
* ---------------------------------------------------------------
|
||||
* Any overrides to theme variables should be placed in this file.
|
||||
* For more information, please see:
|
||||
* http://ionicframework.com/docs/theming/
|
||||
*/
|
||||
|
||||
/* This sets a different item border color for the default theme on ios and md */
|
||||
:root {
|
||||
--ion-item-border-color: var(--ion-background-color-step-200);
|
||||
}
|
||||
|
||||
/* This sets a different background and item background for the default theme on ios */
|
||||
:root.ios {
|
||||
--ion-background-color: var(--ion-background-color-step-50, #f2f2f6);
|
||||
--ion-toolbar-background: var(--ion-background-color);
|
||||
--ion-item-background: #fff;
|
||||
}
|
||||
|
||||
/* This sets a different background and item background for the default theme on md */
|
||||
:root.md {
|
||||
--ion-background-color: var(--ion-background-color-step-100, #f9f9f9);
|
||||
--ion-toolbar-background: var(--ion-background-color);
|
||||
--ion-item-background: #fff;
|
||||
}
|
||||
|
||||
/* This sets a different item background when dark mode is enabled on ios and md */
|
||||
.ion-palette-dark.ios,
|
||||
.ion-palette-dark.md {
|
||||
--ion-item-background: #1c1c1d;
|
||||
}
|
||||
|
||||
/* custom */
|
||||
html {
|
||||
/* --ion-safe-area-top: 0px; */
|
||||
}
|
||||
|
||||
/* 云乐坊 App 容器:工具栏右侧给悬浮胶囊让位 */
|
||||
.in-yunle-app ion-header ion-toolbar {
|
||||
--padding-end: max(var(--cook-host-capsule-inset, 0px), 4px);
|
||||
}
|
||||
|
||||
/* 品牌主色:标签栏选中、链接按钮、开关等 iOS tint 统一用 Cook 绿,和匹配视图一致 */
|
||||
:root {
|
||||
--ion-color-primary: #1d7a45;
|
||||
--ion-color-primary-rgb: 29, 122, 69;
|
||||
--ion-color-primary-contrast: #ffffff;
|
||||
--ion-color-primary-contrast-rgb: 255, 255, 255;
|
||||
--ion-color-primary-shade: #1a6b3d;
|
||||
--ion-color-primary-tint: #348758;
|
||||
}
|
||||
|
||||
.ion-palette-dark {
|
||||
--ion-color-primary: #91d8a7;
|
||||
--ion-color-primary-rgb: 145, 216, 167;
|
||||
--ion-color-primary-contrast: #102c1b;
|
||||
--ion-color-primary-contrast-rgb: 16, 44, 27;
|
||||
--ion-color-primary-shade: #80be93;
|
||||
--ion-color-primary-tint: #9cdcb0;
|
||||
}
|
||||
|
||||
/* iOS 分组列表的组标题和组脚注 */
|
||||
.cook-group-header {
|
||||
margin: 24px 0 0;
|
||||
padding: 0 calc(16px + 20px) 6px;
|
||||
font-size: 13px;
|
||||
font-weight: 400;
|
||||
line-height: 18px;
|
||||
color: var(--ion-color-step-600, #6d6d72);
|
||||
}
|
||||
|
||||
.cook-group-header + ion-list.list-inset {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.cook-group-footer {
|
||||
margin: -8px 0 0;
|
||||
padding: 0 calc(16px + 20px);
|
||||
font-size: 13px;
|
||||
line-height: 18px;
|
||||
color: var(--ion-color-step-600, #6d6d72);
|
||||
}
|
||||
|
||||
/* 系统填充色(按钮底色)和提示用的橙色 */
|
||||
:root {
|
||||
--cook-fill: rgba(118, 118, 128, 0.12);
|
||||
--cook-orange: #c35c00;
|
||||
}
|
||||
|
||||
.ion-palette-dark {
|
||||
--cook-fill: rgba(118, 118, 128, 0.24);
|
||||
--cook-orange: #ffb340;
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
@use 'star-markdown-css/src/scss/theme/yun.scss';
|
||||
|
||||
.markdown-body {
|
||||
li {
|
||||
list-style: disc;
|
||||
}
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 0.25em solid #ddd;
|
||||
padding: 0 1em;
|
||||
color: #777;
|
||||
quotes: '\\201C' '\\201D' '\\2018' '\\2019';
|
||||
}
|
||||
|
||||
ol {
|
||||
list-style: decimal;
|
||||
padding-left: 2em;
|
||||
|
||||
li {
|
||||
line-height: 2;
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: disc;
|
||||
padding-left: 2em;
|
||||
|
||||
li {
|
||||
line-height: 2;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
border-bottom: 1px dashed #ddd;
|
||||
}
|
||||
Reference in New Issue
Block a user