@ray-js/builder-component 0.6.21 → 0.6.22-beta-1
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/babel/import-replacement/index.js +0 -1
- package/lib/build.js +1 -1
- package/lib/helper.js +0 -1
- package/lib/index.js +0 -1
- package/lib/transform/babelTransform.d.ts +11 -3
- package/lib/transform/babelTransform.js +7 -1
- package/lib/transform/index.d.ts +21 -3
- package/lib/transform/index.js +212 -120
- package/lib/transform/type.js +0 -1
- package/package.json +6 -6
- package/lib/babel/import-replacement/index.js.map +0 -1
- package/lib/build.js.map +0 -1
- package/lib/helper.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/transform/babelTransform.js.map +0 -1
- package/lib/transform/index.js.map +0 -1
- package/lib/transform/type.js.map +0 -1
package/lib/build.js
CHANGED
package/lib/helper.js
CHANGED
package/lib/index.js
CHANGED
@@ -1,8 +1,16 @@
|
|
1
1
|
import type { Modules } from '@ray-js/babel-preset-standard';
|
2
2
|
import { Target } from '@ray-js/types';
|
3
|
-
|
3
|
+
/**
|
4
|
+
* 因匿名化需要将 tuya => thing
|
5
|
+
* 但历史项目仍需要支持
|
6
|
+
* so,在智能构建模式下不生成 .tuya.js文件,但若存在a.tuya.ts源文件的,仍认为是小程序扩展的源文件
|
7
|
+
*/
|
8
|
+
export declare const legacyTarget = "tuya";
|
9
|
+
declare type TLegacyTarget = typeof legacyTarget;
|
10
|
+
export declare type TransformTarget = Target | TLegacyTarget;
|
11
|
+
declare type BabelTransformOptions = {
|
4
12
|
modules: Modules;
|
5
|
-
target?:
|
6
|
-
pure?: boolean;
|
13
|
+
target?: TransformTarget;
|
7
14
|
};
|
8
15
|
export default function babelTransform(file: string, options: BabelTransformOptions): Promise<import("@babel/core").BabelFileResult>;
|
16
|
+
export {};
|
@@ -12,10 +12,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
13
|
};
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.legacyTarget = void 0;
|
15
16
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
16
17
|
const path_1 = __importDefault(require("path"));
|
17
18
|
const core_1 = require("@babel/core");
|
18
19
|
const env_loader_1 = require("@ray-js/env-loader");
|
20
|
+
/**
|
21
|
+
* 因匿名化需要将 tuya => thing
|
22
|
+
* 但历史项目仍需要支持
|
23
|
+
* so,在智能构建模式下不生成 .tuya.js文件,但若存在a.tuya.ts源文件的,仍认为是小程序扩展的源文件
|
24
|
+
*/
|
25
|
+
exports.legacyTarget = 'tuya';
|
19
26
|
function babelTransform(file, options) {
|
20
27
|
return __awaiter(this, void 0, void 0, function* () {
|
21
28
|
options = Object.assign({ modules: 'auto' }, options);
|
@@ -86,4 +93,3 @@ function babelTransform(file, options) {
|
|
86
93
|
});
|
87
94
|
}
|
88
95
|
exports.default = babelTransform;
|
89
|
-
//# sourceMappingURL=babelTransform.js.map
|
package/lib/transform/index.d.ts
CHANGED
@@ -1,17 +1,35 @@
|
|
1
|
-
import { TransformOptions } from '@ray-js/types';
|
1
|
+
import { TransformOptions, TransformMode } from '@ray-js/types';
|
2
2
|
export { generateDTS } from './type';
|
3
|
-
|
4
|
-
/**
|
3
|
+
/***
|
5
4
|
* 根据原文件,移除对应生成的平台文件
|
5
|
+
* 1. 源目录 a.ts 被删除,需要判断以下情况:
|
6
|
+
* - 源目录存在a.thing.ts a.wechat.ts a.web.ts等文件,则只删除对应的a.js
|
7
|
+
* - 源目录存在a.${target}.ts,则删除除a.${target}.js外的其他相应a.{x}.js
|
8
|
+
* 2. 源目录 a.mini.ts 被删除,需要判断以下情况
|
9
|
+
* - 源目录存在a.${target}.ts,则删除除a.${target}.js外的其他相应a.{x}.js
|
10
|
+
* - 源目录存在a.ts,则a.${target}.js不删除
|
11
|
+
* 3. 源目录 a.${target}.ts 被删除,需要判断以下情况
|
12
|
+
* - 源目录存在 a.mini.ts,则不删除任何东西,否则删除 a.${target}.js
|
13
|
+
* - 源目录存在a.ts,则a.${target}.js不删除
|
14
|
+
*
|
6
15
|
* @param options
|
7
16
|
*/
|
8
17
|
export declare function unlinkPlatformFiles(options: {
|
9
18
|
file: string;
|
10
19
|
outputDir: string;
|
11
20
|
sourceDir: string;
|
21
|
+
mode: TransformMode;
|
12
22
|
}): void;
|
13
23
|
/**
|
14
24
|
* 转换器 将文件转成所需要的格式
|
15
25
|
* ts|js 需要生成对应的平台地址
|
26
|
+
* 转换规则:
|
27
|
+
* 1. 非js文件,直接源文件输出
|
28
|
+
* 2. js文件
|
29
|
+
* 2.1 原生小程序组件
|
30
|
+
* 2.2 智能构建模式
|
31
|
+
* 2.2.1 目标平台文件(带有平台扩展的文件,如 a.thing.ts 或 a.wechat.ts 或 a.mini.ts)
|
32
|
+
* 2.2.2 非目标平台文件(未带有目标平台扩展的文件,如 a.ts,表示可跨平台)
|
33
|
+
* 2.3 非智能构建模式
|
16
34
|
*/
|
17
35
|
export declare function transformPlatformFiles(options: TransformOptions): Promise<void>;
|
package/lib/transform/index.js
CHANGED
@@ -1,4 +1,27 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
2
25
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
26
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
27
|
return new (P || (P = Promise))(function (resolve, reject) {
|
@@ -12,74 +35,130 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
35
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
36
|
};
|
14
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
-
exports.transformPlatformFiles = exports.unlinkPlatformFiles = exports.
|
38
|
+
exports.transformPlatformFiles = exports.unlinkPlatformFiles = exports.generateDTS = void 0;
|
16
39
|
const colors_1 = __importDefault(require("colors"));
|
17
40
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
18
41
|
const path_1 = __importDefault(require("path"));
|
19
42
|
const shared_1 = require("@ray-js/shared");
|
20
43
|
const types_1 = require("@ray-js/types");
|
21
|
-
const babelTransform_1 =
|
44
|
+
const babelTransform_1 = __importStar(require("./babelTransform"));
|
22
45
|
const helper_1 = require("../helper");
|
23
46
|
var type_1 = require("./type");
|
24
47
|
Object.defineProperty(exports, "generateDTS", { enumerable: true, get: function () { return type_1.generateDTS; } });
|
25
48
|
colors_1.default.enable();
|
26
49
|
function replaceExt(file, ext) {
|
27
|
-
if (typeof file !== 'string') {
|
28
|
-
return file;
|
29
|
-
}
|
30
|
-
if (file.length === 0) {
|
50
|
+
if (typeof file !== 'string' || !file.length) {
|
31
51
|
return file;
|
32
52
|
}
|
33
53
|
const nFileName = path_1.default.basename(file, path_1.default.extname(file)) + ext;
|
34
54
|
return path_1.default.join(path_1.default.dirname(file), nFileName);
|
35
55
|
}
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
56
|
+
const jsFileExt = ['.ts', '.tsx', '.js', '.jsx'];
|
57
|
+
// 构建的目标平台
|
58
|
+
const transformTarget = Object.keys(types_1.PlatformTarget);
|
59
|
+
const PLATFORM_EXTENSION = Object.keys(types_1.PlatformTargetPresets).concat(transformTarget, babelTransform_1.legacyTarget);
|
60
|
+
// 平台文件后缀
|
61
|
+
// .mini.js 是 ray 定义的小程序文件后缀
|
62
|
+
const REGEXP_PLATFORM_EXTENSION = new RegExp(`\\.(?<target>(${PLATFORM_EXTENSION.join('|')}))\\.(ts|js)x?$`);
|
63
|
+
function everyNotExist(f, t) {
|
64
|
+
return jsFileExt.every((e) => {
|
65
|
+
return !fs_extra_1.default.existsSync(replaceExt(f, t ? `.${t}${e}` : e));
|
66
|
+
});
|
67
|
+
}
|
68
|
+
function extraFile(f) {
|
69
|
+
return ['.d.ts', '.js.map'].map((i) => replaceExt(f, i));
|
70
|
+
}
|
71
|
+
function collectFile(platforms, src, lib, collection, plt) {
|
72
|
+
platforms.forEach((t) => {
|
73
|
+
const notExistInSrcWithPlt = everyNotExist(src, t);
|
74
|
+
const _lib = replaceExt(lib, `.${plt || t}.js`);
|
75
|
+
// 判断是否要删除输出目中的带有平台后缀的产物
|
76
|
+
if (notExistInSrcWithPlt && !collection.includes(_lib)) {
|
77
|
+
collection.push(_lib, ...extraFile(_lib));
|
78
|
+
}
|
79
|
+
});
|
80
|
+
}
|
81
|
+
/***
|
45
82
|
* 根据原文件,移除对应生成的平台文件
|
83
|
+
* 1. 源目录 a.ts 被删除,需要判断以下情况:
|
84
|
+
* - 源目录存在a.thing.ts a.wechat.ts a.web.ts等文件,则只删除对应的a.js
|
85
|
+
* - 源目录存在a.${target}.ts,则删除除a.${target}.js外的其他相应a.{x}.js
|
86
|
+
* 2. 源目录 a.mini.ts 被删除,需要判断以下情况
|
87
|
+
* - 源目录存在a.${target}.ts,则删除除a.${target}.js外的其他相应a.{x}.js
|
88
|
+
* - 源目录存在a.ts,则a.${target}.js不删除
|
89
|
+
* 3. 源目录 a.${target}.ts 被删除,需要判断以下情况
|
90
|
+
* - 源目录存在 a.mini.ts,则不删除任何东西,否则删除 a.${target}.js
|
91
|
+
* - 源目录存在a.ts,则a.${target}.js不删除
|
92
|
+
*
|
46
93
|
* @param options
|
47
94
|
*/
|
48
95
|
function unlinkPlatformFiles(options) {
|
49
|
-
const { sourceDir, outputDir, file } = options;
|
96
|
+
const { sourceDir, outputDir, file, mode } = options;
|
50
97
|
const fileBase = path_1.default.relative(sourceDir, file);
|
51
|
-
|
98
|
+
const libFile = replaceExt(path_1.default.join(outputDir, fileBase), '.js');
|
99
|
+
let ext = path_1.default.extname(fileBase);
|
52
100
|
if (fileBase.endsWith('.d.ts')) {
|
53
|
-
|
101
|
+
ext = '.d.ts';
|
54
102
|
}
|
55
|
-
|
56
|
-
|
103
|
+
const matched = REGEXP_PLATFORM_EXTENSION.exec(fileBase);
|
104
|
+
let plt;
|
105
|
+
if (matched) {
|
106
|
+
const { groups } = matched;
|
107
|
+
plt = groups.target;
|
57
108
|
}
|
58
|
-
|
59
|
-
|
60
|
-
if (
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
});
|
109
|
+
let unlinkPaths = [];
|
110
|
+
// js 文件
|
111
|
+
if (jsFileExt.includes(ext) && ext !== '.d.ts') {
|
112
|
+
if (mode == 'pure') {
|
113
|
+
unlinkPaths.push(libFile, ...extraFile(libFile));
|
114
|
+
return;
|
115
|
+
}
|
116
|
+
const srcF = plt ? file.replace(`.${plt}`, '') : file; // 无平台后缀的源文件
|
117
|
+
const libF = plt ? libFile.replace(`.${plt}`, '') : libFile; // 无平台后缀的产物
|
118
|
+
if (!plt) {
|
119
|
+
// 删除非平台后缀源文件
|
120
|
+
unlinkPaths.push(libFile, ...extraFile(libFile));
|
121
|
+
// 是否存在有平台后缀的源文件,如果不存在则收集有平台后缀的产物,待删除
|
122
|
+
collectFile(PLATFORM_EXTENSION, srcF, libF, unlinkPaths);
|
123
|
+
}
|
124
|
+
else {
|
125
|
+
const notExistInSrcWithoutPlt = everyNotExist(srcF);
|
126
|
+
// 不存在非平台后缀源文件
|
127
|
+
if (notExistInSrcWithoutPlt) {
|
128
|
+
const preset = types_1.PlatformTargetPresets[plt];
|
129
|
+
if (preset) {
|
130
|
+
// 如果删除的是 .mini.ts文件
|
131
|
+
// 是否存在有平台后缀(指小程序的后缀如.wechat.ts .thing.ts)的源文件,
|
132
|
+
// 如果不存在则收集有平台后缀的产物,待删除
|
133
|
+
collectFile(preset, srcF, libF, unlinkPaths);
|
134
|
+
}
|
135
|
+
else {
|
136
|
+
const mini = types_1.PlatformTargetPresets.mini;
|
137
|
+
if (mini.includes(plt)) {
|
138
|
+
// 删的是否具体平台后缀的源文件
|
139
|
+
collectFile(['mini'], srcF, libF, unlinkPaths, plt);
|
140
|
+
}
|
141
|
+
else {
|
142
|
+
// 删的是非小程序平台后缀源文件,人 web.ts
|
143
|
+
unlinkPaths.push(libFile, ...extraFile(libFile));
|
144
|
+
}
|
145
|
+
}
|
146
|
+
}
|
147
|
+
}
|
66
148
|
}
|
67
149
|
else {
|
68
|
-
|
150
|
+
// 非js文件
|
151
|
+
unlinkPaths.push(libFile, ...extraFile(libFile));
|
69
152
|
}
|
70
|
-
|
153
|
+
unlinkPaths.filter(fs_extra_1.default.existsSync).map(fs_extra_1.default.unlinkSync);
|
71
154
|
}
|
72
155
|
exports.unlinkPlatformFiles = unlinkPlatformFiles;
|
73
|
-
const PLATFORM_EXTENSION = [...Object.keys(types_1.PlatformTarget), 'mini'];
|
74
|
-
// 平台文件后缀
|
75
|
-
// .mini.js 是 ray 定义的小程序文件后缀
|
76
|
-
const REGEXP_PLATFORM_EXTENSION = new RegExp(`\\.(?<target>(${PLATFORM_EXTENSION.join('|')}))\\.(ts|js)x?$`);
|
77
156
|
/**
|
78
157
|
* 是否为平台文件后缀文件
|
79
158
|
*
|
80
159
|
* @param file
|
81
160
|
* @example
|
82
|
-
* .
|
161
|
+
* .web.js|.wechat.js|.thing.js|.mini.js|.tuya.js(匿名化已废弃,不建议再用,但老项目以旧兼容)
|
83
162
|
*/
|
84
163
|
function isPlatformExtension(file) {
|
85
164
|
const fileName = path_1.default.basename(file);
|
@@ -88,15 +167,16 @@ function isPlatformExtension(file) {
|
|
88
167
|
function getOtherPlatformFile(file) {
|
89
168
|
const platform = [];
|
90
169
|
const ext = path_1.default.extname(file);
|
91
|
-
PLATFORM_EXTENSION.forEach((
|
92
|
-
const targetExt = `.${
|
170
|
+
PLATFORM_EXTENSION.forEach((plt) => {
|
171
|
+
const targetExt = `.${plt}${ext}`;
|
93
172
|
const targetFile = replaceExt(file, targetExt);
|
94
173
|
if (fs_extra_1.default.existsSync(targetFile)) {
|
95
|
-
|
96
|
-
|
174
|
+
const presetPlatform = types_1.PlatformTargetPresets[plt];
|
175
|
+
if (presetPlatform) {
|
176
|
+
platform.push(...presetPlatform);
|
97
177
|
}
|
98
178
|
else {
|
99
|
-
platform.push(
|
179
|
+
platform.push(plt);
|
100
180
|
}
|
101
181
|
}
|
102
182
|
});
|
@@ -105,107 +185,119 @@ function getOtherPlatformFile(file) {
|
|
105
185
|
/**
|
106
186
|
* 转换器 将文件转成所需要的格式
|
107
187
|
* ts|js 需要生成对应的平台地址
|
188
|
+
* 转换规则:
|
189
|
+
* 1. 非js文件,直接源文件输出
|
190
|
+
* 2. js文件
|
191
|
+
* 2.1 原生小程序组件
|
192
|
+
* 2.2 智能构建模式
|
193
|
+
* 2.2.1 目标平台文件(带有平台扩展的文件,如 a.thing.ts 或 a.wechat.ts 或 a.mini.ts)
|
194
|
+
* 2.2.2 非目标平台文件(未带有目标平台扩展的文件,如 a.ts,表示可跨平台)
|
195
|
+
* 2.3 非智能构建模式
|
108
196
|
*/
|
109
197
|
function transformPlatformFiles(options) {
|
110
198
|
return __awaiter(this, void 0, void 0, function* () {
|
111
199
|
const { file, mode, outputDir, sourceDir } = options;
|
112
200
|
const startTime = Date.now();
|
113
201
|
const fileBase = path_1.default.relative(sourceDir, file);
|
114
|
-
|
202
|
+
const logInfo = (targets) => {
|
203
|
+
shared_1.log.info(`transform`, file.cyan, targets, `${Date.now() - startTime}ms`.white);
|
204
|
+
};
|
205
|
+
let fileExt = path_1.default.extname(file);
|
115
206
|
if (file.endsWith('.d.ts')) {
|
116
207
|
fileExt = '.d.ts';
|
117
208
|
}
|
118
|
-
|
119
|
-
|
209
|
+
// 非 js 等文件,直接拷贝输出
|
210
|
+
if (fileExt === '.d.ts' || !jsFileExt.includes(fileExt)) {
|
211
|
+
(0, shared_1.writeFileSync)(path_1.default.join(outputDir, fileBase), fs_extra_1.default.readFileSync(file));
|
212
|
+
logInfo([]);
|
213
|
+
return;
|
214
|
+
}
|
215
|
+
// 如果是Native Component
|
216
|
+
if ((0, helper_1.isNativeComponent)(file)) {
|
217
|
+
const { code } = yield (0, babelTransform_1.default)(file, { modules: false });
|
218
|
+
(0, shared_1.writeFileSync)(path_1.default.join(outputDir, fileBase), code);
|
219
|
+
return logInfo([]);
|
120
220
|
}
|
121
|
-
let
|
122
|
-
|
123
|
-
|
124
|
-
|
221
|
+
let pure = true; //纯js编译 或 智能模式下的非目标平台源文件
|
222
|
+
/**
|
223
|
+
* 智能构建模式:
|
224
|
+
* 所谓的智能构建,是指将某个js文件构建到不同的目标平台。如将a.ts => a.js a.thing.js a.wechat.js a.web.js 等
|
225
|
+
* 其中不带平台信息的后缀,用于跨平台
|
226
|
+
* 智能构建模式,有点画蛇添足,如果真的需要兼容某个跨平台,直接显示的加上平台后缀即可,如需要兼容智能小程序 a.thing.ts
|
227
|
+
*/
|
125
228
|
const transformOutputTargets = [];
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
});
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
//
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
if (targetPreset in types_1.PlatformTargetPresets) {
|
144
|
-
// 预置模式
|
145
|
-
const platformTargetPreset = types_1.PlatformTargetPresets[targetPreset];
|
146
|
-
for (let k = 0; k < platformTargetPreset.length; k++) {
|
147
|
-
const target = platformTargetPreset[k];
|
148
|
-
const ext = `.${target}.js`;
|
149
|
-
babelResult = yield (0, babelTransform_1.default)(file, {
|
150
|
-
target: target,
|
151
|
-
modules: false,
|
152
|
-
});
|
153
|
-
transformOutputTargets.push(target);
|
154
|
-
if (babelResult && typeof babelResult.code === 'string') {
|
155
|
-
outputFile = replaceExt(path_1.default.join(outputDir, fileBase.replace(`.${targetPreset}`, '')), ext);
|
156
|
-
yield (0, shared_1.writeFileSync)(outputFile, babelResult.code);
|
157
|
-
}
|
158
|
-
}
|
229
|
+
// 以下逻辑为智能构建模式
|
230
|
+
if (mode === 'auto') {
|
231
|
+
// 如果是平台文件(指源文件扩展名带有平台信息,如 a.wechat.ts a.mini.ts a.thing.ts),只构建该平台的文件
|
232
|
+
if (isPlatformExtension(file)) {
|
233
|
+
pure = false;
|
234
|
+
const { groups } = REGEXP_PLATFORM_EXTENSION.exec(fileBase); // 根据当前文件后缀, 获取目标平台
|
235
|
+
const plt = groups.target;
|
236
|
+
const presetPlatform = types_1.PlatformTargetPresets[plt];
|
237
|
+
if (presetPlatform) {
|
238
|
+
// 预设目标平台后缀 如 预设的`mini`,会被转成 wechat\thing
|
239
|
+
for (let k = 0; k < presetPlatform.length; k++) {
|
240
|
+
const target = presetPlatform[k];
|
241
|
+
const ext = `.${target}.js`;
|
242
|
+
// 修复 .mini.ts .wechat.ts .thing.ts文件都存在时的优先级问题
|
243
|
+
const notExistWithMini = everyNotExist(file.replace(`.${plt}`, ''), target);
|
244
|
+
if (!notExistWithMini) {
|
245
|
+
continue;
|
159
246
|
}
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
});
|
165
|
-
transformOutputTargets.push(targetPreset);
|
166
|
-
if (babelResult && typeof babelResult.code === 'string') {
|
167
|
-
outputFile = replaceExt(path_1.default.join(outputDir, fileBase), '.js');
|
168
|
-
yield (0, shared_1.writeFileSync)(outputFile, babelResult.code);
|
169
|
-
}
|
247
|
+
const { code } = (yield (0, babelTransform_1.default)(file, { target, modules: false })) || {};
|
248
|
+
transformOutputTargets.push(target);
|
249
|
+
if (typeof code === 'string') {
|
250
|
+
(0, shared_1.writeFileSync)(replaceExt(path_1.default.join(outputDir, fileBase.replace(`.${plt}`, '')), ext), code);
|
170
251
|
}
|
171
252
|
}
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
outputFile = replaceExt(path_1.default.join(outputDir, fileBase), ext);
|
183
|
-
yield (0, shared_1.writeFileSync)(outputFile, babelResult.code);
|
184
|
-
}
|
185
|
-
}
|
186
|
-
}
|
253
|
+
}
|
254
|
+
else {
|
255
|
+
// 非预设目标平台后缀(除.mini.ts 文件外的文件,如 a.wechat.ts a.thing.ts等)
|
256
|
+
const { code } = (yield (0, babelTransform_1.default)(file, {
|
257
|
+
target: plt,
|
258
|
+
modules: false,
|
259
|
+
})) || {};
|
260
|
+
transformOutputTargets.push(plt);
|
261
|
+
if (typeof code === 'string') {
|
262
|
+
(0, shared_1.writeFileSync)(replaceExt(path_1.default.join(outputDir, fileBase), '.js'), code);
|
187
263
|
}
|
188
264
|
}
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
265
|
+
}
|
266
|
+
else {
|
267
|
+
/**
|
268
|
+
* 未带有平台后缀的js源文件, 如 a.ts,并不是a.thing.ts 或 a.mini.ts 等
|
269
|
+
* 在智能构建模式下, 会被构建到多端上
|
270
|
+
* 如 a.ts => a.js a.thing.js a.wechat.js a.web.js
|
271
|
+
*/
|
272
|
+
const presetPlatform = getOtherPlatformFile(file);
|
273
|
+
for (let k = 0; k < transformTarget.length; k++) {
|
274
|
+
const target = transformTarget[k];
|
275
|
+
/**
|
276
|
+
* 优先级
|
277
|
+
* 1. 先有源文件 a.thing.ts
|
278
|
+
* 2. 再有 a.ts 时,就不用再生产 a.thing.js 了
|
279
|
+
*/
|
280
|
+
if (!presetPlatform.includes(target)) {
|
281
|
+
const ext = `.${target}.js`;
|
282
|
+
const { code } = (yield (0, babelTransform_1.default)(file, { target, modules: false })) || {};
|
283
|
+
transformOutputTargets.push(target);
|
284
|
+
if (typeof code === 'string') {
|
285
|
+
(0, shared_1.writeFileSync)(replaceExt(path_1.default.join(outputDir, fileBase), ext), code);
|
286
|
+
}
|
197
287
|
}
|
198
288
|
}
|
199
289
|
}
|
200
290
|
}
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
const
|
205
|
-
|
291
|
+
// 纯 js es6=>es5 转换
|
292
|
+
// 可用于 browser & 小程序 使用的工具库构建
|
293
|
+
if (pure) {
|
294
|
+
const { code } = (yield (0, babelTransform_1.default)(file, { modules: false })) || {};
|
295
|
+
transformOutputTargets.push('*');
|
296
|
+
if (typeof code === 'string') {
|
297
|
+
(0, shared_1.writeFileSync)(replaceExt(path_1.default.join(outputDir, fileBase), '.js'), code);
|
298
|
+
}
|
206
299
|
}
|
207
|
-
|
300
|
+
logInfo(transformOutputTargets);
|
208
301
|
});
|
209
302
|
}
|
210
303
|
exports.transformPlatformFiles = transformPlatformFiles;
|
211
|
-
//# sourceMappingURL=index.js.map
|
package/lib/transform/type.js
CHANGED
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@ray-js/builder-component",
|
3
|
-
"version": "0.6.
|
3
|
+
"version": "0.6.22-beta-1",
|
4
4
|
"description": "Ray builder for component",
|
5
5
|
"keywords": [
|
6
6
|
"ray"
|
@@ -24,10 +24,10 @@
|
|
24
24
|
"@babel/helper-plugin-utils": "^7.14.5",
|
25
25
|
"@babel/traverse": "^7.16.3",
|
26
26
|
"@babel/types": "^7.16.0",
|
27
|
-
"@ray-js/babel-preset-standard": "^0.6.
|
28
|
-
"@ray-js/env-loader": "^0.6.
|
29
|
-
"@ray-js/shared": "^0.6.
|
30
|
-
"@ray-js/types": "^0.6.
|
27
|
+
"@ray-js/babel-preset-standard": "^0.6.22-beta-1",
|
28
|
+
"@ray-js/env-loader": "^0.6.22-beta-1",
|
29
|
+
"@ray-js/shared": "^0.6.22-beta-1",
|
30
|
+
"@ray-js/types": "^0.6.22-beta-1",
|
31
31
|
"babel-plugin-import": "^1.13.3",
|
32
32
|
"chokidar": "^3.5.2",
|
33
33
|
"colors": "1.4.0",
|
@@ -44,6 +44,6 @@
|
|
44
44
|
"email": "tuyafe@tuya.com"
|
45
45
|
}
|
46
46
|
],
|
47
|
-
"gitHead": "
|
47
|
+
"gitHead": "2e905a1820d0adfc0a6ca8cf3ecf1f3a584a0d44",
|
48
48
|
"repository": {}
|
49
49
|
}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/babel/import-replacement/index.ts"],"names":[],"mappings":";;AAAA,oEAAoD;AAIpD,kBAAe,IAAA,6BAAO,EAAC,CAAC,GAAQ,EAAE,OAAgD,EAAE,EAAE;IACpF,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IACpB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;IAC/B,OAAO;QACL,OAAO,EAAE;YACP,iBAAiB,CAAC,IAAmC;gBACnD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC1D,CAAC;SACF;KACF,CAAA;AACH,CAAC,CAAC,CAAA"}
|
package/lib/build.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
|
package/lib/helper.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AACvB,4CAAmB;AAEZ,MAAM,iBAAiB,GAAG,CAAC,UAAyB,EAAW,EAAE;IACtE,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,KAAK,CAAA;KACb;IAED,IAAI,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,KAAK,EAAE;QACtC,OAAO,KAAK,CAAA;KACb;IAED,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAE3D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;QAClC,OAAO,KAAK,CAAA;KACb;IAED,8DAA8D;IAC9D,OAAO,OAAO,CAAC,cAAc,CAAC,CAAC,SAAS,CAAA;AAC1C,CAAC,CAAA;AAjBY,QAAA,iBAAiB,qBAiB7B"}
|
package/lib/index.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAElB,gBAFF,eAAK,CAEE"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"babelTransform.js","sourceRoot":"","sources":["../../src/transform/babelTransform.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,wDAA0B;AAC1B,gDAAuB;AACvB,sCAAwD;AAExD,mDAAmD;AAQnD,SAA8B,cAAc,CAAC,IAAY,EAAE,OAA8B;;QACvF,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,CAAA;QACrD,IAAI,WAAW,GAAiB,EAAE,CAAA;QAElC,IAAI,OAAO,CAAA;QACX,MAAM,MAAM,GAAG,kBAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAA;QAChD,IAAI,IAAI,GAAW,MAAM,CAAA;QAEzB,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;YAE1B,WAAW,GAAG;gBACZ;oBACE,OAAO,CAAC,OAAO,CAAC,6BAA6B,CAAC;oBAC9C;wBACE,OAAO,EAAE,UAAU,MAAc;4BAC/B,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gCAC5B,8BAA8B;gCAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,MAAM,EAAE,CAAC,CAAA;6BAC/C;4BACD,OAAO,MAAM,CAAA;wBACf,CAAC;qBACF;iBACF;gBACD;oBACE,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;oBACtC;wBACE,WAAW,EAAE,kBAAkB;wBAC/B,wBAAwB,EAAE,KAAK;wBAC/B,uBAAuB,EAAE,KAAK;wBAC9B,UAAU,EAAE,CAAC,IAAY,EAAE,EAAE;4BAC3B,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gCAC1B,OAAO,kBAAkB,CAAA;6BAC1B;4BACD,OAAO,uCAAuC,IAAI,QAAQ,CAAA;wBAC5D,CAAC;qBACF;oBACD,kBAAkB;iBACnB;aACF,CAAA;YAED,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,MAAM,IAAA,2BAAc,EACvD,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,EAC5B,MAAM,EACN;gBACE,UAAU,EAAE,IAAI;gBAChB,eAAe,EAAE,cAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACpC,cAAc,EAAE,IAAI;aACrB,CACF,CAAA;YAED,IAAI,GAAG,aAAa,CAAA;YACpB,OAAO,GAAG,GAAG,CAAA;SACd;QAED,OAAO,MAAM,IAAA,qBAAc,EAAC,IAAI,EAAE;YAChC,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE;gBACP;oBACE,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC;oBAChD;wBACE,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,GAAG,EAAE,OAAO;wBACZ,QAAQ,EAAE,OAAO,CAAC,MAAM;wBACxB,KAAK,EAAE,KAAK;wBACZ,sBAAsB;wBACtB,WAAW,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;qBACvF;iBACF;aACF;YACD,OAAO,EAAE,WAAW;YACpB,cAAc,EAAE,OAAO;YACvB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;IACJ,CAAC;CAAA;AA5ED,iCA4EC"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transform/index.ts"],"names":[],"mappings":"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"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/transform/type.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgC;AAEhC,MAAM,OAAO,GAAuB;IAClC,OAAO,EAAE,KAAK;IACd,WAAW,EAAE,IAAI;IACjB,mBAAmB,EAAE,IAAI;IACzB,eAAe,EAAE,IAAI;IACrB,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG;IAC3B,kBAAkB,EAAE,IAAI;IACxB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,IAAI;IACtB,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ;IACxB,4BAA4B,EAAE,IAAI;CACnC,CAAA;AAED,SAAgB,WAAW,CAAC,EAAkC;IAC5D,MAAM,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC3C,IAAI,CAAC,SAAS,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAQ,EAAE;QAC5D,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACxB,CAAC,CAAA;IACD,OAAO,CAAC,KAAe,EAAE,EAAE;QACzB,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QACtD,OAAO,CAAC,IAAI,EAAE,CAAA;IAChB,CAAC,CAAA;AACH,CAAC;AATD,kCASC"}
|