UNPKG

1.94 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const class_1 = require("../class");
4const declare_1 = require("../declare");
5/**
6 * 原生文件组合类
7 *
8 * @export
9 * @class WxNFC
10 * @implements {WxFile.Core}
11 */
12class WxNFC {
13 /**
14 * Creates an instance of WxNFC.
15 * @param {string} source
16 * @param {Request} request
17 * @memberof WxNFC
18 */
19 constructor(source, request) {
20 this.source = source;
21 this.request = request;
22 let { isScript, isStyle, isTemplate } = request;
23 let { compileType = undefined } = declare_1.LangTypes[request.ext] || {};
24 if (isScript) {
25 // SCRIPT
26 this.sfm = new class_1.WxSFMScript(this.source, request, {
27 compileType
28 });
29 }
30 else if (isStyle) {
31 // STYLE
32 this.sfm = new class_1.WxSFMStyle(this.source, request, {
33 compileType
34 });
35 }
36 else if (isTemplate) {
37 // TEMPLATE
38 this.sfm = new class_1.WxSFMTemplate(this.source, request, {
39 compileType
40 });
41 }
42 else {
43 throw new Error(`创建【WxNFC】失败,没有找到扩展名为 ${request.ext} 的编译类型`);
44 }
45 }
46 /**
47 * 保存文件
48 *
49 * @memberof WxNFC
50 */
51 save() {
52 this.sfm.save();
53 }
54 /**
55 * 移除文件
56 *
57 * @memberof WxNFC
58 */
59 remove() {
60 this.sfm.remove();
61 }
62 /**
63 * 获取依赖列表
64 *
65 * @returns {Depend[]}
66 * @memberof WxNFC
67 */
68 getDepends() {
69 return this.sfm.getDepends();
70 }
71 /**
72 * 更新依赖列表
73 *
74 * @param {Request.Core[]} useRequests 可用的请求列表
75 * @memberof WxNFC
76 */
77 updateDepends(useRequests) {
78 this.sfm.updateDepends(useRequests);
79 }
80}
81exports.WxNFC = WxNFC;