Skip to content

Commit fb81f4f

Browse files
committed
Modularize ts to package into a single js file
1 parent c932c45 commit fb81f4f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+3785
-3691
lines changed

Www/ejs/MainWindow/MainWindow.ejs

Lines changed: 4 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -11,58 +11,19 @@
1111
<!-- 空白 icon -->
1212
<link rel="icon" href="data:image/x-icon;,">
1313

14-
<!-- <base href="/"> -->
15-
1614
<!--google字體-->
1715
<!-- <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100&display=swap" rel="stylesheet">
1816
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100&display=swap" rel="stylesheet"> -->
1917

20-
<link rel="stylesheet" href="./css/MainWindow/MainWindow.css">
21-
<link rel="stylesheet" href="./css/Menu.css">
22-
<link rel="stylesheet" href="./css/Msgbox.css">
23-
<link rel="stylesheet" href="./css/Toast.css">
24-
25-
<link rel="stylesheet" href="./css/BaseWindow.css">
26-
<script src="./js/BaseWindow.js"></script>
27-
<script src="./js/Lib.js"></script>
28-
<script src="./js/SvgList.js"></script>
29-
3018
<script src="./vender/hammer.min.js"></script>
3119
<script src="./vender/jquery-3.6.0.min.js"></script>
3220
<script src="./vender/jquery.easing.js"></script>
3321

34-
<script src="./js/Tiefseeview.js"></script>
35-
<script src="./js/TiefseeScroll.js"></script>
36-
<link rel="stylesheet" href="./css/Tiefseeview.css">
37-
38-
<!-- 多國語言 -->
22+
<script src="./js/SvgList.js"></script>
3923
<script src="./lang/langData.js"></script>
40-
<script src="./js/I18n.js"></script>
41-
42-
<script src="./js/WebAPI.js"></script>
43-
<script src="./js/Config.js"></script>
44-
<script src="./js/MainWindow/IndexedDBManager.js"></script>
45-
<script src="./js/MainWindow/MainToolbar.js"></script>
46-
<script src="./js/MainWindow/FileLoad.js"></script>
47-
<script src="./js/MainWindow/MainFileList.js"></script>
48-
<script src="./js/MainWindow/MainDirList.js"></script>
49-
<script src="./js/MainWindow/MainExif.js"></script>
50-
<script src="./js/MainWindow/AiDrawingPrompt.js"></script>
51-
<script src="./js/MainWindow/FileShow.js"></script>
52-
<script src="./js/MainWindow/Iframes.js"></script>
53-
<script src="./js/MainWindow/FileSort.js"></script>
54-
<script src="./js/MainWindow/DirSort.js"></script>
55-
<script src="./js/MainWindow/ImgSearch.js"></script>
56-
<script src="./js/MainWindow/MainMenu.js"></script>
57-
<script src="./js/MainWindow/Menu.js"></script>
58-
<script src="./js/MainWindow/LargeBtn.js"></script>
59-
<script src="./js/MainWindow/BulkView.js"></script>
60-
<script src="./js/Msgbox.js"></script>
61-
<script src="./js/Toast.js"></script>
62-
<script src="./js/MainWindow/Script.js"></script>
63-
<script src="./js/MainWindow/Hotkey.js"></script>
64-
<script src="./js/MainWindow/Dragbar.js"></script>
65-
<script src="./js/MainWindow/MainWindow.js"></script>
24+
25+
<script src="./js/MainWindow.js"></script>
26+
<link rel="stylesheet" href="./css/MainWindow.css">
6627
</head>
6728

6829
<body showType="bulkView">

Www/ejs/SettingWindow/SettingWindow.ejs

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -17,36 +17,22 @@
1717

1818
<script src="./vender/jquery-3.6.0.min.js"></script>
1919

20-
<!-- MiniColors(選擇顏色套件 -->
20+
<!-- MiniColors (選擇顏色器) -->
2121
<script src="./vender/jquery-minicolors-master/jquery.minicolors.min.js"></script>
2222
<link href="./vender/jquery-minicolors-master/jquery.minicolors.css" rel="stylesheet">
2323

24-
<!-- tippy(工具提示套件 -->
24+
<!-- tippy (工具提示) -->
2525
<script src="./vender/tippyjs/popper.min.js"></script>
2626
<script src="./vender/tippyjs/tippy-bundle.umd.min.js"></script>
2727

2828
<!-- 拖曳排序物件 -->
2929
<script src="./vender/Sortable.min.js"></script>
3030

31-
<link rel="stylesheet" href="./css/BaseWindow.css">
32-
<script src="./js/BaseWindow.js"></script>
33-
<script src="./js/Lib.js"></script>
34-
35-
<link rel="stylesheet" href="./css/SettingWindow/SettingWindow.css">
36-
<!-- <link rel="stylesheet" href="./css/Menu.css"> -->
37-
<link rel="stylesheet" href="./css/Msgbox.css">
38-
39-
<!-- 多國語言 -->
40-
<script src="./lang/langData.js"></script>
41-
<script src="./js/I18n.js"></script>
42-
43-
<script src="./js/Config.js"></script>
4431
<script src="./js/SvgList.js"></script>
45-
<!-- <script src="./js/MainWindow/Menu.js"></script> -->
46-
<script src="./js/MainWindow/MainToolbar.js"></script>
47-
<script src="./js/Msgbox.js"></script>
48-
<script src="./js/SettingWindow/SettingWindow.js"></script>
32+
<script src="./lang/langData.js"></script>
4933

34+
<script src="./js/SettingWindow.js"></script>
35+
<link rel="stylesheet" href="./css/SettingWindow.css">
5036
</head>
5137

5238
<body>

Www/gulpfile.js

Lines changed: 36 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -44,46 +44,61 @@ gulp.task("svg", async () => {
4444
// scss -> css
4545
gulp.task("scss", async () => {
4646
await sleep(1);
47-
return gulp.src("./scss/**/*.scss") // 指定要處理的 Scss 檔案目錄
47+
gulp.src("./scss/MainWindow/MainWindow.scss") // 指定要處理的 Scss 檔案目錄
4848
.pipe(sass({
4949
// outputStyle: "compressed", // 壓縮
5050
}))
5151
.pipe(gulp.dest("./css")) // 指定編譯後的 css 檔案目錄
5252
.pipe(gulp.dest(output2 + "/css"))
5353

54+
gulp.src("./scss/SettingWindow/SettingWindow.scss")
55+
.pipe(sass({
56+
}))
57+
.pipe(gulp.dest("./css"))
58+
.pipe(gulp.dest(output2 + "/css"))
5459
});
5560

5661
// ejs -> html
57-
gulp.task("ejs-main", async () => {
62+
gulp.task("ejs", async () => {
5863
await sleep(1);
59-
return gulp.src("./ejs/MainWindow/MainWindow.ejs")
64+
gulp.src("./ejs/MainWindow/MainWindow.ejs")
6065
.pipe(ejs({ readFile: readFile }, { async: true }))
6166
.pipe(rename({ extname: ".html" })) // 修改輸出的副檔名
6267
.pipe(gulp.dest("./"))
6368
.pipe(gulp.dest(output2 + "/"))
64-
});
65-
gulp.task("ejs-setting", async () => {
66-
await sleep(1);
67-
return gulp.src("./ejs/SettingWindow/SettingWindow.ejs")
69+
70+
gulp.src("./ejs/SettingWindow/SettingWindow.ejs")
6871
.pipe(ejs({ readFile: readFile }, { async: true }))
6972
.pipe(rename({ extname: ".html" }))
7073
.pipe(gulp.dest("./"))
7174
.pipe(gulp.dest(output2 + "/"))
72-
7375
});
7476

7577
// ts -> js
7678
gulp.task("ts", async () => {
7779
await sleep(1);
78-
return gulp.src("./ts/**/*.ts")
79-
.pipe(gulpEsbuild({
80-
// minify: true, // 壓縮
81-
// outfile: "bundle.js",
82-
// bundle: true,
83-
// loader: { ".tsx": "tsx", },
84-
}))
85-
.pipe(gulp.dest("./js"))
86-
.pipe(gulp.dest(output2 + "/js"))
80+
81+
var fileMappings = [
82+
{ path: "./ts/MainWindow/MainWindow.ts", bundle: true },
83+
{ path: "./ts/SettingWindow/SettingWindow.ts", bundle: true },
84+
{ path: "./ts/TiefseeviewWorker.ts", bundle: true },
85+
{ path: "./ts/TiefseeviewWorkerSub.ts", bundle: true },
86+
{ path: "./ts/LibIframe.ts", bundle: false },
87+
];
88+
89+
for (var i = 0; i < fileMappings.length; i++) {
90+
91+
gulp.src(fileMappings[i].path)
92+
.pipe(gulpEsbuild({
93+
// minify: true, // 壓縮
94+
outfile: path.basename(fileMappings[i].path, ".ts") + ".js",
95+
bundle: fileMappings[i].bundle,
96+
// loader: { ".tsx": "tsx", },
97+
}))
98+
.pipe(gulp.dest("./js"))
99+
.pipe(gulp.dest(output2 + "/js"))
100+
}
101+
87102
});
88103

89104
// 把檔案複製到開發資料夾。 (有非 ts、scss、ejs 的資源需要複製到開發資料夾時使用
@@ -117,17 +132,16 @@ gulp.task("build-rust", (done) => {
117132
});
118133

119134
// 打包 - 單次
120-
gulp.task("build", gulp.series("scss", "ts", "svg", "ejs-main", "ejs-setting", "build-rust",
135+
gulp.task("build", gulp.series("scss", "ts", "svg", "ejs", "build-rust",
121136
"copy-files")); // copy-files 必須放在最後
122137

123138
// 打包 - 持續監控檔案變化
124-
gulp.task("watch", gulp.series("scss", "ts", "svg", "ejs-main", "ejs-setting", () => {
139+
gulp.task("watch", gulp.series("scss", "ts", "svg", "ejs", () => {
125140
gulp.watch("./scss/**/*.scss", gulp.series("scss"));
126141
gulp.watch("./ts/**/*.ts", gulp.series("ts"));
127-
gulp.watch("./ejs/MainWindow/*.ejs", gulp.series("ejs-main"));
128-
gulp.watch("./ejs/SettingWindow/*.ejs", gulp.series("ejs-setting"));
142+
gulp.watch("./ejs/**/*.ejs", gulp.series("ejs"));
129143

130-
gulp.watch("./img/default/*.svg", gulp.series("ejs-main")); // svg 圖示
144+
gulp.watch("./img/default/*.svg", gulp.series("ejs")); // svg 有可能會被 ejs 引用,所以也要重新執行 ejs
131145
gulp.watch("./img/default/*.svg", gulp.series("svg"));
132146
}));
133147

Www/scss/BaseStyle.scss

Lines changed: 0 additions & 151 deletions
This file was deleted.

0 commit comments

Comments
 (0)