@deot/docs-playground 1.1.3 → 1.1.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.
- package/README.md +1 -0
- package/dist/{compile-DSMuM8zl.cjs → compile-29EUKPOy.cjs} +29 -40
- package/dist/{compile-Bw7v7QE-.js → compile-CM_OyqYN.js} +21 -32
- package/dist/css-DleINdoA.js +580 -0
- package/dist/css-DpqJBQ5c.cjs +786 -0
- package/dist/index.cjs +1925 -101
- package/dist/index.js +1879 -47
- package/dist/index.style.css +1 -1
- package/package.json +21 -20
- package/dist/cdn-Czve5_9b.cjs +0 -94
- package/dist/cdn-DEvdGJu2.js +0 -53
- package/dist/files-C5UMzYxA.js +0 -178
- package/dist/files-D5LNOtjp.cjs +0 -192
- package/dist/linker-B--sjERT.cjs +0 -167
- package/dist/linker-JHdz37DK.js +0 -166
- package/dist/local-sandbox-B8IJ5jWb.js +0 -431
- package/dist/local-sandbox-DnkKrBhf.cjs +0 -428
- package/dist/modules-CInmL-8h.cjs +0 -217
- package/dist/modules-DlLJF_vd.js +0 -211
- package/dist/remote-CKMzn1J3.cjs +0 -106
- package/dist/remote-DfXAsO9n.js +0 -106
- package/dist/rolldown-runtime-C0BPl7ul.cjs +0 -43
- package/dist/script-5Xzzx7u5.cjs +0 -57
- package/dist/script-xKUjE8pf.js +0 -46
- package/dist/scss-Co2it4vB.js +0 -215
- package/dist/scss-DaIqB_qT.cjs +0 -233
- package/dist/store-BF7z-oaO.cjs +0 -964
- package/dist/store-D8vwi-HV.js +0 -767
package/README.md
CHANGED
|
@@ -156,6 +156,7 @@ const handleMessage = async () => {
|
|
|
156
156
|
- Playground 运行时通过公共 CDN 加载 Vue 和默认 import map 中的依赖,手工预览需要网络访问。
|
|
157
157
|
- 默认 CDN 为 `https://cdn.jsdelivr.net/npm`,可通过 `options.cdnURL` 换成 unpkg 等兼容 `/{package}/{file}` 路径的镜像;该地址用于预览样式和内置 import map。
|
|
158
158
|
- `lodash-es` 和在线 Sass 编译器使用 jsDelivr 的 `/+esm` 入口;unpkg 等 CDN 不支持该路径。
|
|
159
|
+
- 直接渲染时,未配置的 npm 模块(含作用域包和子路径)自动从 jsDelivr 的 `/+esm` 入口加载;组件包的传递依赖也适用,`import()` 在调用时加载。`@deot/vc` 的组件、hooks 和 locale 走远程模块加载器,Vue 保持与宿主共用。可用 `options.builtinImportMap.imports` 指定依赖的版本和 URL。
|
|
159
160
|
- Vue SFC 的 `<style lang="scss">` / `lang="sass"` 以及独立 `.scss` / `.sass` 文件会在浏览器里编译;`_partial.scss` 只作为 `@use` 依赖。
|
|
160
161
|
- `options.builtinImportMap.imports` 可以覆盖默认模块 URL。Vue 运行时仍从 `play.vuejs.org` 加载。
|
|
161
162
|
- 每个 Playground 实例都使用自己的 preview 配置和 iframe 消息来源校验。
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
const
|
|
2
|
-
const require_files = require("./files-D5LNOtjp.cjs");
|
|
3
|
-
const require_script = require("./script-5Xzzx7u5.cjs");
|
|
4
|
-
const require_local_sandbox = require("./local-sandbox-DnkKrBhf.cjs");
|
|
1
|
+
const require_css = require("./css-DpqJBQ5c.cjs");
|
|
5
2
|
let sass = require("sass");
|
|
6
3
|
//#region packages/playground/src/core/runtime/local/compile/scss.ts
|
|
7
4
|
/**
|
|
@@ -21,7 +18,7 @@ var toScssFiles = (files) => {
|
|
|
21
18
|
};
|
|
22
19
|
var compileLocalScss = (source, filename, files, lang) => {
|
|
23
20
|
try {
|
|
24
|
-
return
|
|
21
|
+
return require_css.compileScssSource(source, filename.replace(/^\/+/u, ""), compiler, toScssFiles(files), lang);
|
|
25
22
|
} catch (error) {
|
|
26
23
|
/* istanbul ignore next -- Sass 失败时 message 总是字符串 */
|
|
27
24
|
const message = error instanceof Error ? error.message : String(error);
|
|
@@ -188,7 +185,7 @@ var transformJson = (parsed, filename) => {
|
|
|
188
185
|
return lines.join("\n");
|
|
189
186
|
};
|
|
190
187
|
var compileOne = async (filename, code, files) => {
|
|
191
|
-
const ext =
|
|
188
|
+
const ext = require_css.getExtension(filename);
|
|
192
189
|
const errors = [];
|
|
193
190
|
if (ext === ".vue") {
|
|
194
191
|
if (/lang\s*=\s*["']jsx["']/iu.test(code) || /lang\s*=\s*["']tsx["']/iu.test(code)) {
|
|
@@ -204,7 +201,7 @@ var compileOne = async (filename, code, files) => {
|
|
|
204
201
|
errors.push(...result.errors);
|
|
205
202
|
return {
|
|
206
203
|
filename,
|
|
207
|
-
js:
|
|
204
|
+
js: require_css.transformScript(result.js, filename, { typescript: true }),
|
|
208
205
|
css: result.css,
|
|
209
206
|
errors
|
|
210
207
|
};
|
|
@@ -216,10 +213,10 @@ var compileOne = async (filename, code, files) => {
|
|
|
216
213
|
errors
|
|
217
214
|
};
|
|
218
215
|
if (ext === ".scss" || ext === ".sass") try {
|
|
219
|
-
const css = compileLocalScss(code, filename, files);
|
|
216
|
+
const { css, exports: styleExports } = require_css.extractScssExports(compileLocalScss(code, filename, files), filename);
|
|
220
217
|
return {
|
|
221
218
|
filename,
|
|
222
|
-
js: `exports.default = {};\n//# sourceURL=playground://${filename}`,
|
|
219
|
+
js: `exports.__esModule = true; exports.default = ${JSON.stringify(styleExports)};\n//# sourceURL=playground://${filename}`,
|
|
223
220
|
css,
|
|
224
221
|
errors
|
|
225
222
|
};
|
|
@@ -248,32 +245,24 @@ var compileOne = async (filename, code, files) => {
|
|
|
248
245
|
errors
|
|
249
246
|
};
|
|
250
247
|
}
|
|
251
|
-
if (ext === ".js" || ext === ".ts" || ext === ".jsx" || ext === ".tsx") {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
}
|
|
269
|
-
errors.push(messageOf(error));
|
|
270
|
-
return {
|
|
271
|
-
filename,
|
|
272
|
-
js: "exports.default = {};",
|
|
273
|
-
css: "",
|
|
274
|
-
errors
|
|
275
|
-
};
|
|
276
|
-
}
|
|
248
|
+
if (ext === ".js" || ext === ".ts" || ext === ".jsx" || ext === ".tsx") try {
|
|
249
|
+
return {
|
|
250
|
+
filename,
|
|
251
|
+
js: require_css.transformScript(code, filename, {
|
|
252
|
+
typescript: ext === ".ts" || ext === ".tsx",
|
|
253
|
+
jsx: ext === ".jsx" || ext === ".tsx"
|
|
254
|
+
}),
|
|
255
|
+
css: "",
|
|
256
|
+
errors
|
|
257
|
+
};
|
|
258
|
+
} catch (error) {
|
|
259
|
+
errors.push(messageOf(error));
|
|
260
|
+
return {
|
|
261
|
+
filename,
|
|
262
|
+
js: "exports.default = {};",
|
|
263
|
+
css: "",
|
|
264
|
+
errors
|
|
265
|
+
};
|
|
277
266
|
}
|
|
278
267
|
errors.push(`[Playground] 不支持的文件类型: ${filename}`);
|
|
279
268
|
return {
|
|
@@ -294,7 +283,7 @@ var compilePlayground = async (files, entryOrOptions) => {
|
|
|
294
283
|
const errors = [];
|
|
295
284
|
let entry;
|
|
296
285
|
try {
|
|
297
|
-
entry =
|
|
286
|
+
entry = require_css.resolveEntry(files, options.entry);
|
|
298
287
|
} catch (error) {
|
|
299
288
|
return {
|
|
300
289
|
entry: "",
|
|
@@ -303,8 +292,8 @@ var compilePlayground = async (files, entryOrOptions) => {
|
|
|
303
292
|
errors: [messageOf(error)]
|
|
304
293
|
};
|
|
305
294
|
}
|
|
306
|
-
const fileIndex =
|
|
307
|
-
const reachable =
|
|
295
|
+
const fileIndex = require_css.createFileIndex(files);
|
|
296
|
+
const reachable = require_css.collectReachableFilenames(files, entry);
|
|
308
297
|
const modules = {};
|
|
309
298
|
const cssChunks = [];
|
|
310
299
|
for (const filename of reachable) {
|
|
@@ -317,9 +306,9 @@ var compilePlayground = async (files, entryOrOptions) => {
|
|
|
317
306
|
js: compiled.js,
|
|
318
307
|
css: compiled.css
|
|
319
308
|
};
|
|
320
|
-
cssChunks.push(...
|
|
309
|
+
cssChunks.push(...require_css.collectCss([compiled.css]));
|
|
321
310
|
}
|
|
322
|
-
const normalizedEntry =
|
|
311
|
+
const normalizedEntry = require_css.normalizeVirtualPath(entry);
|
|
323
312
|
/* istanbul ignore if -- 可达编译总会留下入口模块 */
|
|
324
313
|
if (!modules[normalizedEntry]) errors.push(`[Playground] 入口编译结果缺失: ${normalizedEntry}`);
|
|
325
314
|
return {
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { collectReachableFilenames, createFileIndex, getExtension, normalizeVirtualPath, resolveEntry } from "./files-C5UMzYxA.js";
|
|
3
|
-
import { n as transformScript } from "./script-xKUjE8pf.js";
|
|
4
|
-
import { n as collectCss } from "./local-sandbox-B8IJ5jWb.js";
|
|
1
|
+
import { a as transformScript, c as createFileIndex, h as resolveEntry, m as normalizeVirtualPath, s as collectReachableFilenames, t as collectCss, u as getExtension, v as compileScssSource, y as extractScssExports } from "./css-DleINdoA.js";
|
|
5
2
|
import { compileString } from "sass";
|
|
6
3
|
//#region packages/playground/src/core/runtime/local/compile/scss.ts
|
|
7
4
|
/**
|
|
@@ -216,10 +213,10 @@ var compileOne = async (filename, code, files) => {
|
|
|
216
213
|
errors
|
|
217
214
|
};
|
|
218
215
|
if (ext === ".scss" || ext === ".sass") try {
|
|
219
|
-
const css = compileLocalScss(code, filename, files);
|
|
216
|
+
const { css, exports: styleExports } = extractScssExports(compileLocalScss(code, filename, files), filename);
|
|
220
217
|
return {
|
|
221
218
|
filename,
|
|
222
|
-
js: `exports.default = {};\n//# sourceURL=playground://${filename}`,
|
|
219
|
+
js: `exports.__esModule = true; exports.default = ${JSON.stringify(styleExports)};\n//# sourceURL=playground://${filename}`,
|
|
223
220
|
css,
|
|
224
221
|
errors
|
|
225
222
|
};
|
|
@@ -248,32 +245,24 @@ var compileOne = async (filename, code, files) => {
|
|
|
248
245
|
errors
|
|
249
246
|
};
|
|
250
247
|
}
|
|
251
|
-
if (ext === ".js" || ext === ".ts" || ext === ".jsx" || ext === ".tsx") {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
}
|
|
269
|
-
errors.push(messageOf(error));
|
|
270
|
-
return {
|
|
271
|
-
filename,
|
|
272
|
-
js: "exports.default = {};",
|
|
273
|
-
css: "",
|
|
274
|
-
errors
|
|
275
|
-
};
|
|
276
|
-
}
|
|
248
|
+
if (ext === ".js" || ext === ".ts" || ext === ".jsx" || ext === ".tsx") try {
|
|
249
|
+
return {
|
|
250
|
+
filename,
|
|
251
|
+
js: transformScript(code, filename, {
|
|
252
|
+
typescript: ext === ".ts" || ext === ".tsx",
|
|
253
|
+
jsx: ext === ".jsx" || ext === ".tsx"
|
|
254
|
+
}),
|
|
255
|
+
css: "",
|
|
256
|
+
errors
|
|
257
|
+
};
|
|
258
|
+
} catch (error) {
|
|
259
|
+
errors.push(messageOf(error));
|
|
260
|
+
return {
|
|
261
|
+
filename,
|
|
262
|
+
js: "exports.default = {};",
|
|
263
|
+
css: "",
|
|
264
|
+
errors
|
|
265
|
+
};
|
|
277
266
|
}
|
|
278
267
|
errors.push(`[Playground] 不支持的文件类型: ${filename}`);
|
|
279
268
|
return {
|