themekit-js 1.503.1913 → 1.503.2023

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.
@@ -39,169 +39,111 @@ function ItemStyles(child:any){
39
39
  </script>
40
40
 
41
41
  <template>
42
- <div class="VPFeature" >
43
- <article class="box">
44
- <template v-for="(item) in block.children" >
45
- <template v-for="(subitem) in item.children">
46
- <div v-if="subitem.block_type=='img'&&subitem.alt=='masker'" class="block-feature-masker" >
47
- <img alt="Image" :src="withBase(subitem.src)" />
48
- <i class="box-marker"></i>
49
- </div>
50
- <div v-if="subitem.block_type=='img'&&subitem.alt=='background'" :style="ItemStyles(subitem)" class="block-feature-masker block-feature-background" ></div>
51
- </template>
52
- </template>
53
- <div class="box-inner">
54
- <template v-for="(item) in block.children" >
55
- <template v-for="(subitem) in item.children">
56
- <div v-if="subitem.block_type=='img'&&subitem.alt=='icon'" class="block-feature-icon" >
57
- <img alt="Image" :src="withBase(subitem.src)" />
58
- </div>
59
- </template>
60
- </template>
61
- <div class="box-main" >
62
- <template class="box-main" v-for="(item) in block.children" >
63
- <h1 class="title" v-if="item.block_type=='h1'">
64
- <span v-for="(h1) in item.children" class="clip">{{h1.content}}</span>
65
- </h1>
66
- <h2 class="title" v-if="item.block_type=='h2'">
67
- <span v-for="(h2) in item.children" class="clip">{{h2.content}}</span>
68
- </h2>
69
- <h3 class="title" v-if="item.block_type=='h3'">
70
- <span v-for="(h3) in item.children" class="clip">{{h3.content}}</span>
71
- </h3>
72
- <p v-if="item.block_type=='p'" class="details" >
73
- <template v-for="(subitem) in item.children">
74
- <template v-if="subitem.block_type=='text'">{{subitem.content}} </template>
75
- <img v-if="subitem.block_type=='img'&&subitem.alt!='icon'&&subitem.alt!='masker'&&subitem.alt!='background'"
76
- :src="subitem.src" />
77
- <Button v-if="subitem.block_type=='a'"
78
- tag="a"
79
- size="medium"
80
- :block="subitem"
81
- :href="subitem.href"
82
- :target="_blank" ></Button>
83
- </template>
84
- </p>
85
- </template>
86
- </div>
87
- </div>
88
- </article>
89
- </div>
90
- </template>
91
-
92
- <style scoped>
93
- .VPFeature {
94
- display: block;
95
- border-radius: 12px;
96
- height: 100%;
97
- background-color: var(--vp-c-bg-soft);
98
- transition: border-color 0.25s, background-color 0.25s;
99
- position: relative;
100
- overflow: hidden;
101
- }
102
- .VPFeature h1,
103
- .VPFeature h2,
104
- .VPFeature h3{
105
- text-shadow: 1px 1px 1px #ffffff;
106
-
107
- }
108
- .VPFeature .block-feature-background{
109
- background-position: center center;
110
- background-size: cover;
111
- }
112
-
42
+ <article class="block-feature" >
43
+
44
+ <template v-for="(item) in block.children" >
45
+ <template v-for="(subitem) in item.children">
46
+ <div v-if="subitem.alt=='background' ||subitem.alt=='masker'" :style="ItemStyles(subitem)" class="block-feature-background" >
47
+ <i class="block-feature-masker" v-if="subitem.alt=='masker'"></i>
48
+ </div>
49
+ </template>
50
+ </template>
51
+
52
+ <template v-for="(item) in block.children" >
53
+ <template v-for="(subitem) in item.children">
54
+ <div v-if="subitem.alt=='icon'" class="block-feature-icon" >
55
+ <img alt="Image" :src="withBase(subitem.src)" />
56
+ </div>
57
+ </template>
58
+ </template>
59
+ <div class="block-feature-content">
60
+ <template v-for="(item) in block.children" >
61
+ <h1 class="title" v-if="item.block_type=='h1'">
62
+ <span v-for="(h1) in item.children" class="clip">{{h1.content}}</span>
63
+ </h1>
64
+ <h2 class="title" v-if="item.block_type=='h2'">
65
+ <span v-for="(h2) in item.children" class="clip">{{h2.content}}</span>
66
+ </h2>
67
+ <h3 class="title" v-if="item.block_type=='h3'">
68
+ <span v-for="(h3) in item.children" class="clip">{{h3.content}}</span>
69
+ </h3>
70
+ <template v-if="item.block_type=='p'" v-for="(subitem) in item.children">
71
+ <template v-if="subitem.block_type=='text'">{{subitem.content}} </template>
72
+ <img v-if="subitem.block_type=='img'&&subitem.alt!='icon'&&subitem.alt!='masker'&&subitem.alt!='background'"
73
+ :src="subitem.src" />
74
+ <Button v-if="subitem.block_type=='a'"
75
+ tag="a"
76
+ size="medium"
77
+ :block="subitem"
78
+ :href="subitem.href"
79
+ :target="_blank" ></Button>
80
+ </template>
81
+ </template>
82
+ </div>
83
+
84
+ </article>
85
+ </template>
113
86
 
114
- .VPFeature .box-marker {
115
- display: block;
116
- position: absolute;
117
- top: 0;
118
- left: 0;
119
- right: 0;
120
- bottom: 0;
121
- z-index: 0;
122
- opacity: 0.8;
123
- background-color: #eee;
124
- }
125
-
126
-
127
- .block-feature-icon{
128
- margin-right:16px;
129
- }
130
- .block-feature-masker {
131
- z-index: 0;
132
- position: absolute;
133
- top: 0;
134
- left: 0;
135
- right: 0;
136
- bottom: 0;
137
- z-index: 0;
138
- overflow:hidden;
139
-
140
- }
141
-
142
- .dark .VPFeature .box-marker{ background-color: #222; }
143
- .dark .block-feature-masker{ background-color: #222 !important ; }
144
- .block-feature-masker img{ width: 100%;}
145
-
146
-
147
-
148
- .VPFeature.link:hover {
149
- border-color: var(--vp-c-brand-1);
150
- }
151
-
152
- .box {
153
- display: flex;
154
- flex-direction: column;
155
-
156
- height: 100%;
157
- position: relative;
158
- }
159
-
160
-
161
- .box-inner{ padding: 24px; z-index: 1; display: flex; }
162
- .box-main{ flex-grow: 1;}
163
- .box > :deep(.VPImage) {
164
- margin-bottom: 20px;
165
- }
166
-
167
-
168
-
169
- .title {
170
- line-height: 24px;
171
- font-size: 16px;
172
- font-weight: 600;
173
- z-index: 2;
174
- }
175
- h1.title{
176
- font-size: 32px;
177
- padding:16px 0;
178
- }
179
- .details {
180
- flex-grow: 1;
181
- line-height: 24px;
182
- font-size: 14px;
183
- font-weight: 500;
184
- color: var(--vp-c-text-1);
185
- z-index: 1;
186
- justify-content: flex-start;
187
- gap: 6px;
188
- margin-bottom: 6px;
189
- }
190
- .details a.btn{ padding: 0 2px;margin-right: 12px; margin-top:12px; min-width: 60px; }
87
+ <style scoped>
88
+ .block-feature {
89
+
90
+ border-radius: 12px;
91
+ background-color: var(--vp-c-bg-soft);
92
+ transition: border-color 0.25s, background-color 0.25s;
93
+ position: relative;
94
+ overflow: hidden;
95
+
96
+ display: flex;
97
+ height: 100%;
98
+ flex-direction: row;
99
+ padding: 24px 24px 16px 24px;
100
+ }
101
+ .block-feature a.btn.link{ padding:0; font-size: 16px;}
102
+ .block-feature-masker,
103
+ .block-feature-background{
104
+ display: block;
105
+ position: absolute;
106
+ top: 0;
107
+ left: 0;
108
+ right: 0;
109
+ bottom: 0;
110
+ z-index: 0;
111
+ background-position: center center;
112
+ background-size: cover;
113
+ }
114
+ .block-feature-masker{
115
+ opacity: 0.8;
116
+ background-color: #eee;
117
+ }
191
118
 
192
- .link-text {
193
- padding-top: 8px;
194
- }
195
-
196
- .link-text-value {
197
- display: flex;
198
- align-items: center;
199
- font-size: 14px;
200
- font-weight: 500;
201
- color: var(--vp-c-brand-1);
202
- }
203
-
204
- .link-text-icon {
205
- margin-left: 6px;
206
- }
207
- </style>
119
+ .dark .block-feature-masker{
120
+ background-color: #222;
121
+ }
122
+
123
+ .block-feature-icon{
124
+ margin-right:12px;
125
+ position: relative;
126
+ }
127
+
128
+ .block-feature-content{ flex:1; position: relative; }
129
+
130
+ .block-feature .mb{ margin-bottom: 1rem;}
131
+ .block-feature .mb-2{ margin-bottom: 2rem;}
132
+
133
+ .block-feature .title{
134
+ color:#222;
135
+ text-shadow: 0px 2px 1px #ffffff; line-height: 24px;
136
+ font-size: 16px;
137
+ font-weight: 600;
138
+ z-index: 2; }
139
+ .dark .block-feature .title{ text-shadow: 0px 2px 1px #222; color:#fff;}
140
+ .block-feature h1.title{ font-size: 32px; }
141
+
142
+ .block-feature h2.title{ font-size: 26px; }
143
+
144
+ .block-feature .bottom{position: absolute; bottom: 0px; }
145
+
146
+ .block-feature .right{position: absolute; right: 0px; }
147
+
148
+ </style>
149
+
package/dist/node/cli.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as getDefaultExportFromCjs, q as c, t as clearCache, n as init, b as build, o as serve, v as version, p as createServer } from './serve-CWSI2F8t.js';
1
+ import { a as getDefaultExportFromCjs, q as c, t as clearCache, n as init, b as build, o as serve, v as version, p as createServer } from './serve--ZkhiVBg.js';
2
2
  import { createLogger } from 'vite';
3
3
  import 'path';
4
4
  import 'markdown-it';
@@ -1,7 +1,7 @@
1
1
  import { normalizePath } from 'vite';
2
2
  export { loadEnv } from 'vite';
3
- import { g as glob, c as createMarkdownRenderer, f as fs, m as matter, a as getDefaultExportFromCjs } from './serve-CWSI2F8t.js';
4
- export { S as ScaffoldThemeType, b as build, p as createServer, e as defineConfig, h as defineConfigWithTheme, d as defineLoader, n as init, j as mergeConfig, r as resolveConfig, l as resolvePages, k as resolveSiteData, i as resolveUserConfig, s as scaffold, o as serve } from './serve-CWSI2F8t.js';
3
+ import { g as glob, c as createMarkdownRenderer, f as fs, m as matter, a as getDefaultExportFromCjs } from './serve--ZkhiVBg.js';
4
+ export { S as ScaffoldThemeType, b as build, p as createServer, e as defineConfig, h as defineConfigWithTheme, d as defineLoader, n as init, j as mergeConfig, r as resolveConfig, l as resolvePages, k as resolveSiteData, i as resolveUserConfig, s as scaffold, o as serve } from './serve--ZkhiVBg.js';
5
5
  import path from 'path';
6
6
  import 'crypto';
7
7
  import 'module';
@@ -30014,20 +30014,6 @@ async function seedunk_mdparser(src, base, isbuild, build_path, file, vars) {
30014
30014
  const regexmd = new RegExp(/\]\((.+?)\)/g);
30015
30015
  let matchmd;
30016
30016
  let plain = src;
30017
- const timeagoRegExp = new RegExp(/\[(.+?)\]\(#timeago\)/g);
30018
- let timeagoMatch;
30019
- let lastAgo = "";
30020
- while ((timeagoMatch = timeagoRegExp.exec(src)) !== null) {
30021
- const lang = vars != null && vars["lang"] != null ? vars["lang"] : "zh_CN";
30022
- const timelab = timeago(timeagoMatch[1], lang);
30023
- const timemd = "[" + timeagoMatch[1] + "](#timeago)";
30024
- if (lastAgo != timelab) {
30025
- plain = plain.replace(timemd, "## " + timelab + "\r<time class='timeago'>" + timeagoMatch[1] + "</time>");
30026
- lastAgo = timelab;
30027
- } else {
30028
- plain = plain.replace(timemd, "\r<time class='timeago'>" + timeagoMatch[1] + "</time>");
30029
- }
30030
- }
30031
30017
  while ((matchmd = regexmd.exec(src)) !== null) {
30032
30018
  if (matchmd[1].indexOf("?include=markdown") >= 0) {
30033
30019
  const mdresponse = await axios({ url: matchmd[1], method: "get", responseType: "blob" });
@@ -30059,6 +30045,20 @@ async function seedunk_mdparser(src, base, isbuild, build_path, file, vars) {
30059
30045
  }
30060
30046
  }
30061
30047
  }
30048
+ const timeagoRegExp = new RegExp(/\[(.+?)\]\(#timeago\)/g);
30049
+ let timeagoMatch;
30050
+ let lastAgo = "";
30051
+ while ((timeagoMatch = timeagoRegExp.exec(src)) !== null) {
30052
+ const lang = vars != null && vars["lang"] != null ? vars["lang"] : "zh_CN";
30053
+ const timelab = timeago(timeagoMatch[1], lang);
30054
+ const timemd = "[" + timeagoMatch[1] + "](#timeago)";
30055
+ if (lastAgo != timelab) {
30056
+ plain = plain.replace(timemd, "## " + timelab + "\r<time class='timeago'>" + timeagoMatch[1] + "</time>");
30057
+ lastAgo = timelab;
30058
+ } else {
30059
+ plain = plain.replace(timemd, "\r<time class='timeago'>" + timeagoMatch[1] + "</time>");
30060
+ }
30061
+ }
30062
30062
  return plain;
30063
30063
  }
30064
30064
  async function createMarkdownToVueRenderFn(srcDir, options = {}, pages, isBuild = false, base = "/", includeLastUpdatedData = false, cleanUrls = false, siteConfig = null) {
@@ -38618,7 +38618,7 @@ function escapeHtml(string) {
38618
38618
 
38619
38619
  var escape$1 = /*@__PURE__*/getDefaultExportFromCjs(escapeHtml_1);
38620
38620
 
38621
- var version = "1.0503.1913";
38621
+ var version = "1.0503.2023";
38622
38622
 
38623
38623
  async function renderPage(render, config, page, result, appChunk, cssChunk, assets, pageToHashMap, metadataScript, additionalHeadTags) {
38624
38624
  const routePath = `/${page.replace(/\.md$/, "")}`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "themekit-js",
3
- "version": "1.0503.1913",
3
+ "version": "1.0503.2023",
4
4
  "description": "基于VitePress开发的Markdown静态网站生成器",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@8.15.6",