valaxy 0.0.2 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -1
  3. package/bin/valaxy.js +11 -0
  4. package/dist/build-LSWX3GTV.mjs +1 -0
  5. package/dist/build-QCHURQKL.js +1 -0
  6. package/dist/chunk-7NQGUR4O.mjs +1 -0
  7. package/dist/chunk-DEKAH6ZE.js +1 -0
  8. package/dist/chunk-TIPISWPV.mjs +10 -0
  9. package/dist/chunk-ZX4FV7OA.js +10 -0
  10. package/dist/cli.d.ts +3 -0
  11. package/dist/cli.js +2 -0
  12. package/dist/cli.mjs +2 -0
  13. package/dist/index.d.ts +203 -0
  14. package/dist/index.js +1 -0
  15. package/dist/index.mjs +1 -0
  16. package/package.json +75 -3
  17. package/src/client/App.vue +16 -0
  18. package/src/client/components/AppLink.vue +20 -0
  19. package/src/client/components/PostCard.vue +69 -0
  20. package/src/client/components/PostList.vue +50 -0
  21. package/src/client/components/README.md +7 -0
  22. package/src/client/components/ValaxyCopyright.vue +80 -0
  23. package/src/client/components/ValaxyFooter.vue +53 -0
  24. package/src/client/components/ValaxyHamburger.vue +21 -0
  25. package/src/client/components/ValaxyMd.vue +71 -0
  26. package/src/client/components/ValaxyOverlay.vue +44 -0
  27. package/src/client/components/ValaxyPagination.vue +122 -0
  28. package/src/client/components/ValaxyRightSidebar.vue +32 -0
  29. package/src/client/components/ValaxySidebar.vue +35 -0
  30. package/src/client/components/ValaxyToc.vue +70 -0
  31. package/src/client/composables/category.ts +101 -0
  32. package/src/client/composables/comments/index.ts +1 -0
  33. package/src/client/composables/comments/waline.ts +60 -0
  34. package/src/client/composables/common.ts +27 -0
  35. package/src/client/composables/dark.ts +4 -0
  36. package/src/client/composables/features/index.ts +1 -0
  37. package/src/client/composables/features/katex.ts +15 -0
  38. package/src/client/composables/helper.ts +26 -0
  39. package/src/client/composables/index.ts +17 -0
  40. package/src/client/composables/layout.ts +7 -0
  41. package/src/client/composables/post.ts +96 -0
  42. package/src/client/composables/search/algolia.ts +114 -0
  43. package/src/client/composables/search/index.ts +0 -0
  44. package/src/client/composables/sidebar.ts +128 -0
  45. package/src/client/composables/tag.ts +70 -0
  46. package/src/client/composables/widgets/aplayer.ts +23 -0
  47. package/src/client/composables/widgets/backToTop.ts +28 -0
  48. package/src/client/composables/widgets/codepen.ts +12 -0
  49. package/src/client/composables/widgets/index.ts +3 -0
  50. package/src/client/index.html +24 -0
  51. package/src/client/layouts/404.vue +25 -0
  52. package/src/client/layouts/README.md +14 -0
  53. package/src/client/locales/README.md +7 -0
  54. package/src/client/locales/en.yml +107 -0
  55. package/src/client/locales/zh-CN.yml +106 -0
  56. package/src/client/main.ts +30 -0
  57. package/src/client/modules/README.md +11 -0
  58. package/src/client/modules/nprogress.ts +14 -0
  59. package/src/client/modules/pinia.ts +17 -0
  60. package/src/client/modules/pwa.ts +12 -0
  61. package/src/client/modules/valaxy.ts +42 -0
  62. package/src/client/pages/README.md +20 -0
  63. package/src/client/pages/[...all].vue +15 -0
  64. package/src/client/pages/about/index.md +5 -0
  65. package/src/client/pages/hi/[name].vue +52 -0
  66. package/src/client/pages/index.vue +3 -0
  67. package/src/client/pages/page/[page].vue +12 -0
  68. package/src/client/pages/posts/index.md +5 -0
  69. package/src/client/public/_headers +3 -0
  70. package/src/client/public/favicon.svg +21 -0
  71. package/src/client/public/pwa-192x192.png +0 -0
  72. package/src/client/public/pwa-512x512.png +0 -0
  73. package/src/client/public/safari-pinned-tab.svg +41 -0
  74. package/src/client/shims.d.ts +36 -0
  75. package/src/client/stores/app.ts +14 -0
  76. package/src/client/stores/user.ts +35 -0
  77. package/src/client/styles/common/button.scss +29 -0
  78. package/src/client/styles/common/code.scss +35 -0
  79. package/src/client/styles/common/hamburger.scss +56 -0
  80. package/src/client/styles/common/markdown.scss +43 -0
  81. package/src/client/styles/common/scrollbar.scss +34 -0
  82. package/src/client/styles/common/sidebar.scss +30 -0
  83. package/src/client/styles/common/transition.scss +23 -0
  84. package/src/client/styles/css-vars/dark.scss +17 -0
  85. package/src/client/styles/css-vars/index.scss +18 -0
  86. package/src/client/styles/css-vars/light.scss +9 -0
  87. package/src/client/styles/global/helper.scss +3 -0
  88. package/src/client/styles/global/index.scss +38 -0
  89. package/src/client/styles/global/nprogress.scss +14 -0
  90. package/src/client/styles/global/reset.scss +20 -0
  91. package/src/client/styles/index.scss +18 -0
  92. package/src/client/styles/mixins/config.scss +1 -0
  93. package/src/client/styles/mixins/index.scss +2 -0
  94. package/src/client/styles/mixins/size.scss +49 -0
  95. package/src/client/styles/mixins/variable.scss +30 -0
  96. package/src/client/styles/palette.scss +61 -0
  97. package/src/client/styles/vars.scss +39 -0
  98. package/src/client/styles/widgets/banner.scss +116 -0
  99. package/src/client/types.ts +3 -0
  100. package/src/client/utils/helper.ts +30 -0
  101. package/src/client/utils/index.ts +2 -0
  102. package/src/client/utils/time.ts +23 -0
  103. package/src/core/config.ts +51 -0
  104. package/src/core/index.ts +5 -0
  105. package/src/core/utils.ts +1 -0
  106. package/src/index.ts +2 -0
  107. package/src/node/build.ts +12 -0
  108. package/src/node/cli.ts +177 -0
  109. package/src/node/config.ts +43 -0
  110. package/src/node/index.ts +1 -0
  111. package/src/node/markdown/headings.ts +24 -0
  112. package/src/node/markdown/index.ts +74 -0
  113. package/src/node/markdown/markdown-it-container.ts +53 -0
  114. package/src/node/markdown/markdown-it-katex.ts +200 -0
  115. package/src/node/markdown/parseHeader.ts +70 -0
  116. package/src/node/markdown/slugify.ts +24 -0
  117. package/src/node/options.ts +90 -0
  118. package/src/node/plugins/index.ts +91 -0
  119. package/src/node/plugins/markdown.ts +62 -0
  120. package/src/node/plugins/preset.ts +171 -0
  121. package/src/node/plugins/unocss.ts +106 -0
  122. package/src/node/plugins/valaxy.ts +1 -0
  123. package/src/node/server.ts +21 -0
  124. package/src/node/shims.d.ts +23 -0
  125. package/src/node/utils/cli.ts +105 -0
  126. package/src/node/utils/index.ts +26 -0
  127. package/src/node/vite.ts +83 -0
  128. package/src/types/config.ts +250 -0
  129. package/src/types/index.ts +2 -0
  130. package/src/types/posts.ts +107 -0
  131. package/tsup.config.ts +17 -0
@@ -0,0 +1,29 @@
1
+ @use "../palette.scss" as * ;
2
+
3
+ .yun-icon-btn {
4
+ cursor: pointer;
5
+
6
+ display: inline-flex;
7
+ align-items: center;
8
+ justify-content: center;
9
+
10
+ border: none;
11
+ width: 3rem;
12
+ height: 3rem;
13
+
14
+ border-radius: 50%;
15
+
16
+ transition: var(--yun-transition);
17
+
18
+ div {
19
+ font-size: 1.2rem;
20
+ }
21
+
22
+ &:hover {
23
+ background-color: rgba(var(--yun-c-primary-rgb), 0.08);
24
+ }
25
+
26
+ &:active {
27
+ background-color: rgba(var(--yun-c-primary-rgb), 0.16);
28
+ }
29
+ }
@@ -0,0 +1,35 @@
1
+ html:not(.dark) {
2
+ --prism-foreground: #393a34;
3
+ --prism-background: #f8f8f8;
4
+ --prism-comment: #758575;
5
+ --prism-namespace: #444444;
6
+ --prism-string: #bc8671;
7
+ --prism-punctuation: #80817d;
8
+ --prism-literal: #36acaa;
9
+ --prism-keyword: #248459;
10
+ --prism-function: #4D9375;
11
+ --prism-deleted: #9a050f;
12
+ --prism-class: #2b91af;
13
+ --prism-builtin: #800000;
14
+ --prism-property: #ce9178;
15
+ --prism-regex: #ad502b;
16
+ }
17
+
18
+ html.dark {
19
+ --prism-foreground: #A6ACCD;
20
+ --prism-background: #242424;
21
+ --prism-namespace: #aaaaaa;
22
+ --prism-comment: #758575;
23
+ --prism-namespace: #444444;
24
+ --prism-string: #C3E88D;
25
+ --prism-punctuation: #A6ACCD;
26
+ --prism-literal: #36acaa;
27
+ --prism-keyword: #89DDFF;
28
+ --prism-function: #82AAFF;
29
+ --prism-deleted: #9a050f;
30
+ --prism-class: #4ec9b0;
31
+ --prism-builtin: #d16969;
32
+ --prism-property: #C792EA;
33
+ --prism-regex: #ad502b;
34
+ --prism-selector: #C3E88D;
35
+ }
@@ -0,0 +1,56 @@
1
+ @use "sass:math";
2
+
3
+ $hamburger-size: 22px;
4
+
5
+ .vt-hamburger {
6
+ display: flex;
7
+ justify-content: center;
8
+ align-items: center;
9
+ }
10
+
11
+ .vt-hamburger:hover .vt-hamburger-top { transform: translateX(math.div(-$hamburger-size, 4)); }
12
+ .vt-hamburger:hover .vt-hamburger-middle { transform: translateX(0); }
13
+ .vt-hamburger:hover .vt-hamburger-bottom { transform: translateX(math.div(-$hamburger-size, 2)); }
14
+
15
+ .vt-hamburger.is-active .vt-hamburger-top { top: math.div($hamburger-size - 3px, 2); transform: translateX(0) rotate(225deg); }
16
+ .vt-hamburger.is-active .vt-hamburger-middle { top: math.div($hamburger-size - 3px, 2); transform: translateX(-$hamburger-size); }
17
+ .vt-hamburger.is-active .vt-hamburger-bottom { top: math.div($hamburger-size - 3px, 2); transform: translateX(0) rotate(135deg); }
18
+
19
+ .vt-hamburger.is-active:hover .vt-hamburger-top,
20
+ .vt-hamburger.is-active:hover .vt-hamburger-middle,
21
+ .vt-hamburger.is-active:hover .vt-hamburger-bottom {
22
+ background-color: var(--yun-c-primary);
23
+ transition: top .25s, background-color .25s, transform .25s;
24
+ }
25
+
26
+ .vt-hamburger-container {
27
+ position: relative;
28
+ width: $hamburger-size;
29
+ height: $hamburger-size - 2px;
30
+ overflow: hidden;
31
+ }
32
+
33
+ .vt-hamburger-top,
34
+ .vt-hamburger-middle,
35
+ .vt-hamburger-bottom {
36
+ left: 0;
37
+
38
+ position: absolute;
39
+ width: $hamburger-size;
40
+ height: 2px;
41
+ background-color: var(--yun-c-primary);
42
+ transition: top .25s, background-color .5s, transform .25s;
43
+ }
44
+
45
+ .vt-hamburger-top {
46
+ top: 0;
47
+ transform: translateX(0);
48
+ }
49
+ .vt-hamburger-middle {
50
+ top: math.div($hamburger-size - 4px, 2);
51
+ transform: translateX(math.div(-$hamburger-size, 2));
52
+ }
53
+ .vt-hamburger-bottom {
54
+ top: $hamburger-size - 4px;
55
+ transform: translateX(math.div(-$hamburger-size, 4));
56
+ }
@@ -0,0 +1,43 @@
1
+ /* https://github.com/antfu/prism-theme-vars */
2
+ @use 'prism-theme-vars/base.css' as *;
3
+ @use './code.scss' as *;
4
+
5
+ .markdown-body {
6
+ --prism-font-family: var(--yun-font-mono);
7
+
8
+ --smc-link-color: var(--yun-c-link);
9
+ }
10
+
11
+ // for anchor
12
+ h1:hover .header-anchor,
13
+ h1:focus .header-anchor,
14
+ h2:hover .header-anchor,
15
+ h2:focus .header-anchor,
16
+ h3:hover .header-anchor,
17
+ h3:focus .header-anchor,
18
+ h4:hover .header-anchor,
19
+ h4:focus .header-anchor,
20
+ h5:hover .header-anchor,
21
+ h5:focus .header-anchor,
22
+ h6:hover .header-anchor,
23
+ h6:focus .header-anchor {
24
+ opacity: 1;
25
+ }
26
+
27
+ a.header-anchor {
28
+ float: left;
29
+ margin-top: 0.125em;
30
+ margin-left: -0.87em;
31
+ padding-right: 0.23em;
32
+ font-size: 0.85em;
33
+ opacity: 0;
34
+
35
+ &::before {
36
+ content: none;
37
+ }
38
+ }
39
+
40
+ a.header-anchor:hover,
41
+ a.header-anchor:focus {
42
+ text-decoration: none;
43
+ }
@@ -0,0 +1,34 @@
1
+ @use '~/styles/mixins' as *;
2
+
3
+ .no-scroll {
4
+ position: fixed;
5
+ overflow-y: scroll;
6
+ width: 100%;
7
+ }
8
+
9
+ ::-webkit-scrollbar {
10
+ width: 8px;
11
+ height: 8px;
12
+ }
13
+
14
+ ::-webkit-scrollbar-track {
15
+ border-radius: 2px;
16
+ background-color: rgba(255, 255, 255, 0.1);
17
+ }
18
+
19
+ ::-webkit-scrollbar-thumb {
20
+ border-radius: 2px;
21
+ background-color: rgba(get-css-var('c', 'primary', 'rgb'), 0.3);
22
+
23
+ &:window-inactive {
24
+ background-color: rgba(get-css-var('c', 'primary', 'rgb'), 0.3);
25
+ }
26
+
27
+ &:hover {
28
+ background-color: rgba(get-css-var('c', 'primary', 'rgb'), 0.7);
29
+ }
30
+
31
+ &:active {
32
+ background-color: rgba(get-css-var('c', 'primary', 'rgb'), 0.9);
33
+ }
34
+ }
@@ -0,0 +1,30 @@
1
+ @use "sass:map";
2
+
3
+ @use "../vars.scss" as *;
4
+ @use "../mixins/" as *;
5
+
6
+ .sidebar {
7
+ position: fixed;
8
+ overflow-y: auto;
9
+ top: 0;
10
+ bottom: 0;
11
+ left: 0;
12
+
13
+ width: calc(100vw - 64px);
14
+ max-width: var(--yun-sidebar-width-mobile);
15
+
16
+ background-image: var(--yun-sidebar-bg-image);
17
+ background-color: var(--yun-sidebar-bg-color);
18
+ background-size: contain;
19
+ background-repeat: no-repeat;
20
+ background-position: bottom 1rem center;
21
+ text-align: center;
22
+ z-index: map.get($z-index, 'sidebar');
23
+
24
+ transform: translateX(-100%);
25
+ transition: transform var(--yun-transition-duration);
26
+
27
+ &.open {
28
+ transform: translateX(0);
29
+ }
30
+ }
@@ -0,0 +1,23 @@
1
+ .v {
2
+ &-enter-active,
3
+ &-leave-active {
4
+ transition: opacity 0.5s ease;
5
+ }
6
+
7
+ &-enter-from,
8
+ &-leave-to {
9
+ opacity: 0;
10
+ }
11
+ }
12
+
13
+ .fade {
14
+ &-enter-active,
15
+ &-leave-active {
16
+ transition: opacity 0.5s ease;
17
+ }
18
+
19
+ &-enter-from,
20
+ &-leave-to {
21
+ opacity: 0;
22
+ }
23
+ }
@@ -0,0 +1,17 @@
1
+ @use "../palette" as *;
2
+ @use "../mixins" as *;
3
+
4
+ ::-webkit-input-placeholder {
5
+ color: white;
6
+ }
7
+
8
+ html.dark {
9
+ color-scheme: dark;
10
+ }
11
+
12
+ .dark {
13
+ @include set-css-var-from-map($dark);
14
+
15
+ // star-markdown-css
16
+ --smc-link-color: lighten($colors.primary, 30%);
17
+ }
@@ -0,0 +1,18 @@
1
+ @use "sass:map";
2
+ @use "../mixins" as *;
3
+ @use "../vars" as *;
4
+ @use "../palette" as *;
5
+
6
+ :root {
7
+ // palette different with colors
8
+ @include set-css-var-from-map($palette, 'c');
9
+ }
10
+
11
+ :root {
12
+ @include set-css-var-from-map($common);
13
+ @include set-css-var-from-map($border, 'border');
14
+ @include set-css-var-from-map($font, 'font');
15
+ @include set-css-var-from-map($z-index, 'z');
16
+ @include set-css-var-from-map($transition, 'transition');
17
+ }
18
+
@@ -0,0 +1,9 @@
1
+ @use "../palette" as *;
2
+ @use "../mixins" as *;
3
+
4
+ :root {
5
+ color-scheme: light;
6
+
7
+ @include set-css-var-from-map($colors, 'c');
8
+ @include set-css-var-from-map($light);
9
+ }
@@ -0,0 +1,3 @@
1
+ .val-card {
2
+ background-color: var(--yun-c-bg-light);
3
+ }
@@ -0,0 +1,38 @@
1
+ html,
2
+ body,
3
+ #app {
4
+ height: 100%;
5
+ margin: 0;
6
+ padding: 0;
7
+
8
+ line-height: 2;
9
+ }
10
+
11
+ body {
12
+ background-color: var(--yun-c-bg);
13
+
14
+ &::before {
15
+ content: '';
16
+ position: fixed;
17
+ width: 100%;
18
+ height: 100%;
19
+ z-index: -1;
20
+ background-image: var(--yun-bg-image);
21
+ background-size: cover;
22
+ background-position: center;
23
+ background-repeat: no-repeat;
24
+ animation-name: bgFadeIn;
25
+ animation-duration: 2s;
26
+ opacity: 1;
27
+ }
28
+ }
29
+
30
+ @keyframes bgFadeIn {
31
+ from {
32
+ opacity: 0;
33
+ }
34
+
35
+ to {
36
+ opacity: 1;
37
+ }
38
+ }
@@ -0,0 +1,14 @@
1
+ #nprogress {
2
+ pointer-events: none;
3
+
4
+ .bar {
5
+ background: var(--yun-c-primary);
6
+ opacity: 0.75;
7
+ position: fixed;
8
+ z-index: 1031;
9
+ top: 0;
10
+ left: 0;
11
+ width: 100%;
12
+ height: 2px;
13
+ }
14
+ }
@@ -0,0 +1,20 @@
1
+ @use '../mixins' as *;
2
+
3
+ html {
4
+ scroll-behavior: smooth;
5
+
6
+ -webkit-tap-highlight-color: transparent;
7
+ }
8
+
9
+ a {
10
+ color: var(--yun-c-link);
11
+ }
12
+
13
+ * {
14
+ outline: none;
15
+ }
16
+
17
+ hr {
18
+ opacity: 0.2;
19
+ margin: 1rem;
20
+ }
@@ -0,0 +1,18 @@
1
+ // import common and light/dark css vars in main.ts
2
+
3
+ // global css
4
+ @use './global/reset.scss' as *;
5
+ @use './global/helper.scss' as *;
6
+ @use './global/index.scss' as *;
7
+ @use './global/nprogress.scss' as *;
8
+
9
+ // common
10
+ @use './common/button.scss' as *;
11
+ @use './common/hamburger.scss' as *;
12
+ @use './common/markdown.scss' as *;
13
+ @use "./common/scrollbar.scss" as *;
14
+ @use "./common/sidebar.scss" as *;
15
+ @use "./common/transition.scss" as *;
16
+
17
+ // banner
18
+ @use './widgets/banner.scss' as *;
@@ -0,0 +1 @@
1
+ $namespace: 'yun';
@@ -0,0 +1,2 @@
1
+ @forward './size.scss';
2
+ @forward './variable.scss';
@@ -0,0 +1,49 @@
1
+ @use "sass:map";
2
+
3
+ $breakpoints: (
4
+ 'sm': 640px,
5
+ 'md': 768px,
6
+ 'lg': 1024px,
7
+ 'xl': 1280px,
8
+ '2xl': 1536px,
9
+ );
10
+
11
+ // for mobile
12
+ @mixin mobile {
13
+ @media screen and (max-width: map.get($breakpoints, 'sm')) {
14
+ @content;
15
+ }
16
+ }
17
+
18
+ // for tablet
19
+ @mixin tablet {
20
+ @media screen and (min-width: map.get($breakpoints, 'sm')) and (max-width: map.get($breakpoints, 'lg')) {
21
+ @content;
22
+ }
23
+ }
24
+
25
+ // for desktop
26
+ @mixin desktop {
27
+ @media screen and (min-width: map.get($breakpoints, 'lg')) {
28
+ @content;
29
+ }
30
+ }
31
+
32
+
33
+ @mixin sm-md {
34
+ @media screen and (min-width: map.get($breakpoints, 'sm')) and (max-width: map.get($breakpoints, 'md')) {
35
+ @content;
36
+ }
37
+ }
38
+
39
+ @mixin md-lg {
40
+ @media screen and (min-width: map.get($breakpoints, 'md')) and (max-width: map.get($breakpoints, 'lg')) {
41
+ @content;
42
+ }
43
+ }
44
+
45
+ @mixin xl {
46
+ @media screen and (min-width: map.get($breakpoints, 'xl')) {
47
+ @content;
48
+ }
49
+ }
@@ -0,0 +1,30 @@
1
+ @use 'config';
2
+
3
+ // join var name
4
+ // join-var-name(('button', 'text-color')) => '--#{namespace}-button-text-color'
5
+ @function join-var-name($list) {
6
+ $name: '--' + config.$namespace;
7
+ @each $item in $list {
8
+ @if $item != '' {
9
+ $name: $name + '-' + $item;
10
+ }
11
+ }
12
+ @return $name;
13
+ }
14
+
15
+ // get-css-var('button', 'text-color') => var(--el-button-text-color)
16
+ @function get-css-var($args...) {
17
+ @return var(#{join-var-name($args)});
18
+ }
19
+
20
+ // get-css-var-name(('button', 'text-color')) => '--#{namespace}-button-text-color'
21
+ @function get-css-var-name($args...) {
22
+ @return join-var-name($args);
23
+ }
24
+
25
+ // @include set-css-var-from-map($colors)
26
+ @mixin set-css-var-from-map($map, $prefix: '') {
27
+ @each $key, $value in $map {
28
+ #{get-css-var-name($prefix, $key)}: #{$value};
29
+ }
30
+ }
@@ -0,0 +1,61 @@
1
+ @use "sass:map";
2
+
3
+ @use "./mixins" as *;
4
+
5
+ $palette: () !default;
6
+ $palette: map.merge((
7
+ 'white': #ffffff,
8
+ 'black': #1a1a1a,
9
+ 'gray': #8e8e8e,
10
+ 'danger': #db2828,
11
+ 'warning': #f2711c
12
+ ), $palette);
13
+
14
+ $colors: () !default;
15
+ $colors: map.merge((
16
+ 'primary': #0078E7,
17
+ ), $colors);
18
+
19
+ $c-primary: map.get($colors, 'primary');
20
+
21
+ $colors: map.merge((
22
+ 'primary-light': lighten($c-primary, 15%),
23
+ 'primary-lighter': lighten($c-primary, 30%),
24
+ ), $colors);
25
+
26
+
27
+ $light: () !default;
28
+ $light: map.merge((
29
+ 'bg-image': url('https://cdn.jsdelivr.net/gh/YunYouJun/cdn/img/bg/stars-timing-0-blur-30px.jpg'),
30
+ 'border-color': #e6e6e6,
31
+
32
+ 'c-bg': white,
33
+ 'c-bg-light': white,
34
+ 'c-bg-dark': #fafafa,
35
+ 'c-text': #333,
36
+ 'c-text-light': #555,
37
+ 'c-text-dark': #111,
38
+
39
+ 'c-primary-rgb': #{red($c-primary), green($c-primary), blue($c-primary)},
40
+
41
+ 'c-link': $c-primary,
42
+
43
+ 'sidebar-bg-color': #{get-css-var('c-bg-light')}
44
+ ), $light);
45
+
46
+ $dark: () !default;
47
+ $dark: map.merge((
48
+ 'bg-image': none,
49
+ 'border-color': #222,
50
+
51
+ 'c-bg': #1a1a1a,
52
+ 'c-bg-light': #22252e,
53
+ 'c-bg-dark': #1a1a1a,
54
+
55
+ 'c-text': #f2f2f2,
56
+ 'c-text-light': #eee,
57
+ 'c-text-lighter': #ddd,
58
+ 'c-text-dark': rgba(#ebebeb, 0.8),
59
+
60
+ 'c-link': map.get($colors, 'primary-light'),
61
+ ), $dark);
@@ -0,0 +1,39 @@
1
+ @use "sass:map";
2
+
3
+ $common: () !default;
4
+ $common: map.merge((
5
+ 'sidebar-width-mobile': 320px,
6
+ ), $common);
7
+
8
+ $border: () !default;
9
+ $border: map.merge((
10
+ 'width': 1px
11
+ ), $border);
12
+
13
+ $font: () !default;
14
+ $font: map.merge((
15
+ 'sans': 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
16
+ 'mono': 'Menlo, Monaco, Consolas, "Courier New", monospace',
17
+ 'serif': "'Songti SC', 'Noto Serif SC', STZhongsong, STKaiti, KaiTi, Roboto, serif",
18
+ 'serif-weight': 900,
19
+ ), $font);
20
+
21
+ $z-index: () !default;
22
+ $z-index: map.merge((
23
+ 'cloud': 8,
24
+ 'go-down': 9,
25
+ 'sidebar': 10,
26
+ 'fireworks': 11,
27
+ 'menu-btn': 20,
28
+ 'go-up-btn': 20,
29
+ 'search-popup': 30,
30
+ 'search-btn': 31,
31
+ ), $z-index);
32
+
33
+ $transition: () !default;
34
+ $transition: map.merge((
35
+ 'duration-fast': 0.2s,
36
+ 'duration': 0.4s,
37
+ 'duration-slow': 0.6s,
38
+ '': all var(--yun-transition-duration-fast) ease-in-out
39
+ ), $transition);