@xingwangzhe/stalux 1.24.1 → 1.24.3

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xingwangzhe/stalux",
3
- "version": "1.24.1",
3
+ "version": "1.24.3",
4
4
  "description": "A powerful, modern Astro blog theme — use as template or install as plugin",
5
5
  "keywords": [
6
6
  "astro",
@@ -78,13 +78,13 @@
78
78
  "@astrojs/rss": "^4.0.19",
79
79
  "@astrojs/sitemap": "^3.7.3",
80
80
  "@expressive-code/plugin-line-numbers": "^0.44.1",
81
- "@lucide/astro": "^1.31.0",
81
+ "@lucide/astro": "^1.33.0",
82
82
  "@mcp-b/webmcp-polyfill": "^4.0.0",
83
83
  "@pagefind/component-ui": "^1.5.2",
84
84
  "@waline/client": "^3.15.2",
85
- "@xingwangzhe/satteri-mermaid": "0.7.6",
86
- "@xingwangzhe/satteri-photoswipe": "^0.2.3",
87
- "@xingwangzhe/tags-cloud": "^1.2.6",
85
+ "@xingwangzhe/satteri-mermaid": "0.7.7",
86
+ "@xingwangzhe/satteri-photoswipe": "^0.2.4",
87
+ "@xingwangzhe/tags-cloud": "^1.2.7",
88
88
  "animejs": "^4.5.0",
89
89
  "astro-expressive-code": "^0.44.1",
90
90
  "astro-seo": "^1.1.0",
@@ -92,20 +92,19 @@
92
92
  "badge-maker": "^6.0.0",
93
93
  "pagefind": "^1.5.2",
94
94
  "photoswipe": "^5.4.4",
95
- "satteri": "^0.9.5",
95
+ "satteri": "^0.10.4",
96
96
  "simple-icons": "^16.28.0",
97
97
  "subset-font": "^2.5.0",
98
98
  "temml": "^0.13.4"
99
99
  },
100
100
  "devDependencies": {
101
- "astro": "^7.2.2",
101
+ "astro": "^7.2.3",
102
102
  "knip": "^6.32.2",
103
- "license-checker-rseidelsohn": "5.0.1",
104
- "oxfmt": "^0.63.0",
105
- "oxlint": "^1.78.0",
103
+ "oxfmt": "^0.64.0",
104
+ "oxlint": "^1.79.0",
106
105
  "typescript": "^7.0.2"
107
106
  },
108
107
  "peerDependencies": {
109
- "astro": "7.2.2"
108
+ "astro": "7.2.3"
110
109
  }
111
110
  }
@@ -577,5 +577,3 @@ if (typeof document !== "undefined") {
577
577
  });
578
578
  });
579
579
  }
580
-
581
- export {};
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 16 16"><path fill="#cccccc" d="M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.408 5.89c-.83 0-1.318.64-1.318 1.753v.742c0 1.108.479 1.727 1.318 1.727c.69 0 1.138-.435 1.187-1.05h1.147v.114c-.058 1.147-1.029 1.938-2.343 1.938c-1.612 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75c1.319 0 2.29.812 2.343 1.999v.11H6.595c-.049-.638-.506-1.108-1.187-1.108Zm5.404 0c-.831 0-1.319.64-1.319 1.753v.742c0 1.108.48 1.727 1.319 1.727c.69 0 1.138-.435 1.186-1.05h1.147v.114c-.057 1.147-1.028 1.938-2.342 1.938c-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75c1.318 0 2.29.812 2.342 1.999v.11h-1.147c-.048-.638-.505-1.108-1.186-1.108Z"/></svg>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" width="115" height="48"><path fill="#17191E" d="M7.77 36.35C6.4 35.11 6 32.51 6.57 30.62c.99 1.2 2.35 1.57 3.75 1.78 2.18.33 4.31.2 6.33-.78.23-.12.44-.27.7-.42.18.55.23 1.1.17 1.67a4.56 4.56 0 0 1-1.94 3.23c-.43.32-.9.61-1.34.91-1.38.94-1.76 2.03-1.24 3.62l.05.17a3.63 3.63 0 0 1-1.6-1.38 3.87 3.87 0 0 1-.63-2.1c0-.37 0-.74-.05-1.1-.13-.9-.55-1.3-1.33-1.32a1.56 1.56 0 0 0-1.63 1.26c0 .06-.03.12-.05.2Z"/><path fill="url(#a)" d="M7.77 36.35C6.4 35.11 6 32.51 6.57 30.62c.99 1.2 2.35 1.57 3.75 1.78 2.18.33 4.31.2 6.33-.78.23-.12.44-.27.7-.42.18.55.23 1.1.17 1.67a4.56 4.56 0 0 1-1.94 3.23c-.43.32-.9.61-1.34.91-1.38.94-1.76 2.03-1.24 3.62l.05.17a3.63 3.63 0 0 1-1.6-1.38 3.87 3.87 0 0 1-.63-2.1c0-.37 0-.74-.05-1.1-.13-.9-.55-1.3-1.33-1.32a1.56 1.56 0 0 0-1.63 1.26c0 .06-.03.12-.05.2Z"/><path fill="#17191E" d="M.02 30.31s4.02-1.95 8.05-1.95l3.04-9.4c.11-.45.44-.76.82-.76.37 0 .7.31.82.76l3.04 9.4c4.77 0 8.05 1.95 8.05 1.95L17 11.71c-.2-.56-.53-.91-.98-.91H7.83c-.44 0-.76.35-.97.9L.02 30.31Zm42.37-5.97c0 1.64-2.05 2.62-4.88 2.62-1.85 0-2.5-.45-2.5-1.41 0-1 .8-1.49 2.65-1.49 1.67 0 3.09.03 4.73.23v.05Zm.03-2.04a21.37 21.37 0 0 0-4.37-.36c-5.32 0-7.82 1.25-7.82 4.18 0 3.04 1.71 4.2 5.68 4.2 3.35 0 5.63-.84 6.46-2.92h.14c-.03.5-.05 1-.05 1.4 0 1.07.18 1.16 1.06 1.16h4.15a16.9 16.9 0 0 1-.36-4c0-1.67.06-2.93.06-4.62 0-3.45-2.07-5.64-8.56-5.64-2.8 0-5.9.48-8.26 1.19.22.93.54 2.83.7 4.06 2.04-.96 4.95-1.37 7.2-1.37 3.11 0 3.97.71 3.97 2.15v.57Zm11.37 3c-.56.07-1.33.07-2.12.07-.83 0-1.6-.03-2.12-.1l-.02.58c0 2.85 1.87 4.52 8.45 4.52 6.2 0 8.2-1.64 8.2-4.55 0-2.74-1.33-4.09-7.2-4.39-4.58-.2-4.99-.7-4.99-1.28 0-.66.59-1 3.65-1 3.18 0 4.03.43 4.03 1.35v.2a46.13 46.13 0 0 1 4.24.03l.02-.55c0-3.36-2.8-4.46-8.2-4.46-6.08 0-8.13 1.49-8.13 4.39 0 2.6 1.64 4.23 7.48 4.48 4.3.14 4.77.62 4.77 1.28 0 .7-.7 1.03-3.71 1.03-3.47 0-4.35-.48-4.35-1.47v-.13Zm19.82-12.05a17.5 17.5 0 0 1-6.24 3.48c.03.84.03 2.4.03 3.24l1.5.02c-.02 1.63-.04 3.6-.04 4.9 0 3.04 1.6 5.32 6.58 5.32 2.1 0 3.5-.23 5.23-.6a43.77 43.77 0 0 1-.46-4.13c-1.03.34-2.34.53-3.78.53-2 0-2.82-.55-2.82-2.13 0-1.37 0-2.65.03-3.84 2.57.02 5.13.07 6.64.11-.02-1.18.03-2.9.1-4.04-2.2.04-4.65.07-6.68.07l.07-2.93h-.16Zm13.46 6.04a767.33 767.33 0 0 1 .07-3.18H82.6c.07 1.96.07 3.98.07 6.92 0 2.95-.03 4.99-.07 6.93h5.18c-.09-1.37-.11-3.68-.11-5.65 0-3.1 1.26-4 4.12-4 1.33 0 2.28.16 3.1.46.03-1.16.26-3.43.4-4.43-.86-.25-1.81-.41-2.96-.41-2.46-.03-4.26.98-5.1 3.38l-.17-.02Zm22.55 3.65c0 2.5-1.8 3.66-4.64 3.66-2.81 0-4.61-1.1-4.61-3.66s1.82-3.52 4.61-3.52c2.82 0 4.64 1.03 4.64 3.52Zm4.71-.11c0-4.96-3.87-7.18-9.35-7.18-5.5 0-9.23 2.22-9.23 7.18 0 4.94 3.49 7.59 9.21 7.59 5.77 0 9.37-2.65 9.37-7.6Z"/><defs><linearGradient id="a" x1="6.33" x2="19.43" y1="40.8" y2="34.6" gradientUnits="userSpaceOnUse"><stop stop-color="#D83333"/><stop offset="1" stop-color="#F041FF"/></linearGradient></defs></svg>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="1440" height="1024" fill="none"><path fill="url(#a)" fill-rule="evenodd" d="M-217.58 475.75c91.82-72.02 225.52-29.38 341.2-44.74C240 415.56 372.33 315.14 466.77 384.9c102.9 76.02 44.74 246.76 90.31 366.31 29.83 78.24 90.48 136.14 129.48 210.23 57.92 109.99 169.67 208.23 155.9 331.77-13.52 121.26-103.42 264.33-224.23 281.37-141.96 20.03-232.72-220.96-374.06-196.99-151.7 25.73-172.68 330.24-325.85 315.72-128.6-12.2-110.9-230.73-128.15-358.76-12.16-90.14 65.87-176.25 44.1-264.57-26.42-107.2-167.12-163.46-176.72-273.45-10.15-116.29 33.01-248.75 124.87-320.79Z" clip-rule="evenodd" style="opacity:.154"/><path fill="url(#b)" fill-rule="evenodd" d="M1103.43 115.43c146.42-19.45 275.33-155.84 413.5-103.59 188.09 71.13 409 212.64 407.06 413.88-1.94 201.25-259.28 278.6-414.96 405.96-130 106.35-240.24 294.39-405.6 265.3-163.7-28.8-161.93-274.12-284.34-386.66-134.95-124.06-436-101.46-445.82-284.6-9.68-180.38 247.41-246.3 413.54-316.9 101.01-42.93 207.83 21.06 316.62 6.61Z" clip-rule="evenodd" style="opacity:.154"/><defs><linearGradient id="b" x1="373" x2="1995.44" y1="1100" y2="118.03" gradientUnits="userSpaceOnUse"><stop stop-color="#D83333"/><stop offset="1" stop-color="#F041FF"/></linearGradient><linearGradient id="a" x1="107.37" x2="1130.66" y1="1993.35" y2="1026.31" gradientUnits="userSpaceOnUse"><stop stop-color="#3245FF"/><stop offset="1" stop-color="#BC52EE"/></linearGradient></defs></svg>
@@ -1,41 +0,0 @@
1
- /**
2
- * Pagefind 搜索索引生成器
3
- *
4
- * 从原 src/integrations/pagefind.ts 迁移而来,
5
- * 变为集成的一个内部模块,在构建完成时自动运行。
6
- */
7
-
8
- import path from "node:path";
9
- import { fileURLToPath } from "node:url";
10
-
11
- import type { AstroIntegrationLogger } from "astro";
12
-
13
- export async function pagefind(dir: URL, logger: AstroIntegrationLogger): Promise<void> {
14
- const outDir = fileURLToPath(dir);
15
- logger.info("Running Pagefind indexer...");
16
-
17
- try {
18
- const { createIndex } = await import("pagefind");
19
- const { index, errors } = await createIndex();
20
-
21
- if (!index) {
22
- logger.error("Pagefind failed to create index");
23
- errors?.forEach((e) => logger.error(e));
24
- return;
25
- }
26
-
27
- const { page_count } = await index.addDirectory({ path: outDir });
28
- if (page_count === 0) {
29
- logger.warn("Pagefind: no pages indexed");
30
- return;
31
- }
32
-
33
- const { outputPath } = await index.writeFiles({
34
- outputPath: path.join(outDir, "pagefind"),
35
- });
36
-
37
- logger.info(`Pagefind indexed ${page_count} pages → ${outputPath}`);
38
- } catch (error) {
39
- logger.error(`Pagefind indexing failed: ${error}`);
40
- }
41
- }
@@ -1,50 +0,0 @@
1
- .categoriesContainer {
2
- display: flex;
3
- flex-direction: column;
4
- gap: var(--space-xs);
5
- }
6
-
7
- .title {
8
- margin: 0;
9
- font-size: var(--font-size-base);
10
- font-weight: 600;
11
- color: var(--white-90p);
12
- padding-bottom: var(--space-sm);
13
- border-bottom: var(--border-thin) solid var(--white-20p);
14
- }
15
-
16
- .categoryList {
17
- display: flex;
18
- flex-direction: column;
19
- gap: var(--space-sm);
20
- }
21
-
22
- .category {
23
- display: inline-flex;
24
- padding: var(--space-sm) var(--space-xs);
25
- background: var(--white-05p);
26
- color: var(--white-80p);
27
- border-left: var(--border-thick) solid var(--accent-60p);
28
- text-decoration: none;
29
- transition:
30
- color var(--transition-medium),
31
- transform var(--transition-medium);
32
- border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
33
- font-size: var(--font-size-small);
34
- transform: translateX(0);
35
- }
36
-
37
- .category:hover {
38
- transform: translateX(4px);
39
- }
40
-
41
- .category:active {
42
- transform: translateX(2px);
43
- }
44
-
45
- .empty {
46
- color: var(--white-50p);
47
- font-size: var(--font-size-small);
48
- text-align: center;
49
- padding: var(--space-md) 0;
50
- }
@@ -1,38 +0,0 @@
1
- /* 左侧边栏 */
2
-
3
- .leftSidebar {
4
- position: sticky;
5
- top: 20px;
6
- width: 100%;
7
- height: fit-content;
8
- max-height: calc(100vh - 40px);
9
- overflow-y: auto;
10
- display: flex;
11
- flex-direction: column;
12
- gap: var(--space-lg);
13
- padding: var(--space-lg) 0;
14
-
15
- /* 隐藏滚动条但保留滚动功能 */
16
- scrollbar-width: none;
17
- -ms-overflow-style: none;
18
- }
19
-
20
- .leftSidebar::-webkit-scrollbar {
21
- display: none;
22
- }
23
-
24
- @media (max-width: 1200px) {
25
- .leftSidebar {
26
- display: none;
27
- }
28
- }
29
-
30
- .sidebarContainer {
31
- display: flex;
32
- flex-direction: column;
33
- background: var(--black-10p);
34
- border-radius: var(--radius-lg);
35
- padding: var(--space-md);
36
- box-shadow: var(--shadow-sidebar);
37
- transition: all var(--transition-normal) ease;
38
- }
@@ -1,60 +0,0 @@
1
- /* 右侧边栏 - 文章纲要和元数据 */
2
-
3
- .rightSidebar {
4
- position: sticky;
5
- top: 20px;
6
- width: 100%;
7
- height: fit-content;
8
- max-height: calc(100vh - 40px);
9
- overflow-y: auto;
10
- display: flex;
11
- flex-direction: column;
12
- gap: var(--space-lg);
13
- padding: var(--space-lg) 0;
14
-
15
- /* 为 scrollIntoView 预留底部空间,确保长目录的激活项不会被裁切 */
16
- scroll-padding-bottom: 8rem;
17
-
18
- /* 隐藏滚动条但保留滚动功能 */
19
- scrollbar-width: none;
20
- -ms-overflow-style: none;
21
- }
22
-
23
- .rightSidebar::-webkit-scrollbar {
24
- display: none;
25
- }
26
-
27
- .sidebarContainer {
28
- display: flex;
29
- flex-direction: column;
30
- background: var(--black-10p);
31
- border-radius: var(--radius-lg);
32
- padding: var(--space-md);
33
- box-shadow: var(--shadow-sidebar);
34
- transition: all var(--transition-normal) ease;
35
- }
36
-
37
- /* 响应式设计 */
38
-
39
- @media (max-width: 1400px) {
40
- .rightSidebar {
41
- width: 240px;
42
- }
43
- }
44
-
45
- @media (max-width: 1200px) {
46
- .rightSidebar {
47
- display: none;
48
- }
49
- }
50
-
51
- @media (max-width: 768px) {
52
- .rightSidebar {
53
- position: static;
54
- width: 100%;
55
- max-height: none;
56
- top: auto;
57
- order: 2;
58
- padding: 1rem 0;
59
- }
60
- }
@@ -1,51 +0,0 @@
1
- .tagsContainer {
2
- display: flex;
3
- flex-direction: column;
4
- gap: var(--space-xs);
5
- }
6
-
7
- .title {
8
- margin: 0;
9
- font-size: var(--font-size-base);
10
- font-weight: 600;
11
- color: var(--white-90p);
12
- padding-bottom: var(--space-sm);
13
- border-bottom: var(--border-thin) solid var(--white-20p);
14
- }
15
-
16
- .tagList {
17
- display: flex;
18
- flex-wrap: wrap;
19
- gap: var(--space-sm);
20
- }
21
-
22
- .tag {
23
- display: inline-block;
24
- padding: 0.4rem 0.8rem;
25
- background: var(--white-10p);
26
- border: none;
27
- border-radius: var(--radius-full);
28
- font-size: var(--font-size-smaller);
29
- text-decoration: none;
30
- transition:
31
- color var(--transition-medium),
32
- transform var(--transition-medium);
33
- white-space: nowrap;
34
- transform: translateY(0);
35
- color: var(--white-85p);
36
- }
37
-
38
- .tag:hover {
39
- transform: translateY(-2px);
40
- }
41
-
42
- .tag:active {
43
- transform: translateY(-1px);
44
- }
45
-
46
- .empty {
47
- color: var(--white-50p);
48
- font-size: var(--font-size-small);
49
- text-align: center;
50
- padding: var(--space-md) 0;
51
- }