clickgo 3.16.16 → 3.16.18
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 -1
- package/dist/app/demo/form/method/native/native.js +26 -0
- package/dist/app/demo/form/method/native/native.xml +2 -0
- package/dist/clickgo.d.ts +17 -0
- package/dist/clickgo.js +1 -1
- package/dist/control/arteditor.cgc +0 -0
- package/dist/control/box.cgc +0 -0
- package/dist/control/captcha.cgc +0 -0
- package/dist/control/common.cgc +0 -0
- package/dist/control/desc.cgc +0 -0
- package/dist/control/drawer.cgc +0 -0
- package/dist/control/echarts.cgc +0 -0
- package/dist/control/form.cgc +0 -0
- package/dist/control/iconview.cgc +0 -0
- package/dist/control/jodit.cgc +0 -0
- package/dist/control/map.cgc +0 -0
- package/dist/control/monaco.cgc +0 -0
- package/dist/control/mpegts.cgc +0 -0
- package/dist/control/nav.cgc +0 -0
- package/dist/control/page.cgc +0 -0
- package/dist/control/pdf.cgc +0 -0
- package/dist/control/property.cgc +0 -0
- package/dist/control/qrcode.cgc +0 -0
- package/dist/control/table.cgc +0 -0
- package/dist/control/task.cgc +0 -0
- package/dist/control/tplink.cgc +0 -0
- package/dist/control/tuieditor.cgc +0 -0
- package/dist/control/tuiviewer.cgc +0 -0
- package/dist/control/xterm.cgc +0 -0
- package/dist/index.d.ts +51 -0
- package/dist/lib/control.d.ts +53 -0
- package/dist/lib/core.d.ts +47 -0
- package/dist/lib/dom.d.ts +74 -0
- package/dist/lib/dom.js +7 -7
- package/dist/lib/form.d.ts +222 -0
- package/dist/lib/fs.d.ts +35 -0
- package/dist/lib/fs.js +2 -2
- package/dist/lib/native.d.ts +36 -0
- package/dist/lib/native.js +8 -0
- package/dist/lib/storage.d.ts +6 -0
- package/dist/lib/task.d.ts +32 -0
- package/dist/lib/task.js +7 -1
- package/dist/lib/theme.d.ts +8 -0
- package/dist/lib/tool.d.ts +120 -0
- package/dist/lib/zip.d.ts +40 -0
- package/dist/theme/blue.cgt +0 -0
- package/dist/theme/byterun.cgt +0 -0
- package/dist/theme/light.cgt +0 -0
- package/package.json +7 -5
- package/dist/clickgo.ts +0 -68
- package/dist/index.ts +0 -282
- package/dist/lib/control.ts +0 -751
- package/dist/lib/core.ts +0 -1145
- package/dist/lib/dom.ts +0 -2728
- package/dist/lib/form.ts +0 -3829
- package/dist/lib/fs.ts +0 -1324
- package/dist/lib/native.ts +0 -236
- package/dist/lib/storage.ts +0 -229
- package/dist/lib/task.ts +0 -2160
- package/dist/lib/theme.ts +0 -199
- package/dist/lib/tool.ts +0 -1278
- package/dist/lib/zip.ts +0 -444
- package/eslint.config.js +0 -22
package/dist/index.ts
DELETED
|
@@ -1,282 +0,0 @@
|
|
|
1
|
-
// npm publish --tag dev --access public
|
|
2
|
-
import * as types from '../types/index';
|
|
3
|
-
|
|
4
|
-
// --- 以下不会真正加载,最终会在底部进行赋值 ---
|
|
5
|
-
export let clickgo: typeof import('./clickgo');
|
|
6
|
-
export let control: typeof import('./lib/control');
|
|
7
|
-
export let core: typeof import('./lib/core');
|
|
8
|
-
export let dom: typeof import('./lib/dom');
|
|
9
|
-
export let form: typeof import('./lib/form');
|
|
10
|
-
export let fs: typeof import('./lib/fs');
|
|
11
|
-
export let native: typeof import('./lib/native');
|
|
12
|
-
export let storage: typeof import('./lib/storage');
|
|
13
|
-
export let task: typeof import('./lib/task');
|
|
14
|
-
export let theme: typeof import('./lib/theme');
|
|
15
|
-
export let tool: typeof import('./lib/tool');
|
|
16
|
-
export let zip: typeof import('./lib/zip');
|
|
17
|
-
export let vue: import('../types/index').IVueObject;
|
|
18
|
-
|
|
19
|
-
export function getVersion(): string {
|
|
20
|
-
return clickgo.getVersion();
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export function isNative(): boolean {
|
|
24
|
-
return clickgo.isNative();
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export function getPlatform(): NodeJS.Platform | 'web' {
|
|
28
|
-
return clickgo.getPlatform();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export function isImmersion(): boolean {
|
|
32
|
-
return clickgo.isImmersion();
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export function hasFrame(): boolean {
|
|
36
|
-
return clickgo.hasFrame();
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/** --- 全局类 --- */
|
|
40
|
-
export abstract class AbstractBoot {
|
|
41
|
-
|
|
42
|
-
/** --- 当前是否是 debug 模式 --- */
|
|
43
|
-
private readonly _debug: boolean = false;
|
|
44
|
-
|
|
45
|
-
/** --- 判断当前是否是 debug 模式 --- */
|
|
46
|
-
public isDebug(): boolean {
|
|
47
|
-
return this._debug;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
public constructor(opt: {
|
|
51
|
-
'debug'?: boolean;
|
|
52
|
-
} = {}) {
|
|
53
|
-
if (opt.debug) {
|
|
54
|
-
this._debug = true;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/** --- 入口方法 --- */
|
|
59
|
-
public abstract main(): void | Promise<void>;
|
|
60
|
-
|
|
61
|
-
/** --- 全局错误事件 --- */
|
|
62
|
-
public onError(taskId: number, formId: number, error: Error, info: string): void | Promise<void>;
|
|
63
|
-
public onError(): void {
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
/** --- 屏幕大小改变事件 --- */
|
|
68
|
-
public onScreenResize(): void | Promise<void>;
|
|
69
|
-
public onScreenResize(): void {
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/** --- 系统配置变更事件 --- */
|
|
74
|
-
public onConfigChanged<T extends types.IConfig, TK extends keyof T>(n: TK, v: T[TK]): void | Promise<void>;
|
|
75
|
-
public onConfigChanged(): void {
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
/** --- 窗体创建事件 --- */
|
|
80
|
-
public onFormCreated(
|
|
81
|
-
taskId: number, formId: number, title: string, icon: string, showInSystemTask: boolean
|
|
82
|
-
): void | Promise<void>;
|
|
83
|
-
public onFormCreated(): void {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
/** --- 窗体销毁事件 */
|
|
88
|
-
public onFormRemoved(taskId: number, formId: number, title: string, icon: string): void | Promise<void>;
|
|
89
|
-
public onFormRemoved(): void {
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/** --- 窗体标题改变事件 */
|
|
94
|
-
public onFormTitleChanged(taskId: number, formId: number, title: string): void | Promise<void>;
|
|
95
|
-
public onFormTitleChanged(): void | Promise<void> {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
/** --- 窗体图标改变事件 --- */
|
|
100
|
-
public onFormIconChanged(taskId: number, formId: number, icon: string): void | Promise<void>;
|
|
101
|
-
public onFormIconChanged(): void | Promise<void> {
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/** --- 窗体最小化状态改变事件 --- */
|
|
106
|
-
public onFormStateMinChanged(taskId: number, formId: number, state: boolean): void | Promise<void>;
|
|
107
|
-
public onFormStateMinChanged(): void {
|
|
108
|
-
return;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
/** --- 窗体最大化状态改变事件 --- */
|
|
112
|
-
public onFormStateMaxChanged(taskId: number, formId: number, state: boolean): void | Promise<void>;
|
|
113
|
-
public onFormStateMaxChanged(): void {
|
|
114
|
-
return;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/** --- 窗体显示状态改变事件 --- */
|
|
118
|
-
public onFormShowChanged(taskId: number, formId: number, state: boolean): void | Promise<void>;
|
|
119
|
-
public onFormShowChanged(): void {
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
/** --- 窗体获得焦点事件 --- */
|
|
124
|
-
public onFormFocused(taskId: number, formId: number): void | Promise<void>;
|
|
125
|
-
public onFormFocused(): void {
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
/** --- 窗体丢失焦点事件 --- */
|
|
130
|
-
public onFormBlurred(taskId: number, formId: number): void | Promise<void>;
|
|
131
|
-
public onFormBlurred(): void {
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
/** --- 窗体闪烁事件 --- */
|
|
136
|
-
public onFormFlash(taskId: number, formId: number): void | Promise<void>;
|
|
137
|
-
public onFormFlash(): void {
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
/** --- 窗体是否显示在任务栏属性改变事件 --- */
|
|
142
|
-
public onFormShowInSystemTaskChange(taskId: number, formId: number, value: boolean): void | Promise<void>;
|
|
143
|
-
public onFormShowInSystemTaskChange(): void {
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/** --- 窗体的 formHash 改变事件 --- */
|
|
148
|
-
public onFormHashChange(
|
|
149
|
-
taskId: number, formId: number, value: string, data: Record<string, any>
|
|
150
|
-
): void | Promise<void>;
|
|
151
|
-
public onFormHashChange(): void {
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
/** --- 任务开始事件 --- */
|
|
156
|
-
public onTaskStarted(taskId: number): void | Promise<void>;
|
|
157
|
-
public onTaskStarted(): void | Promise<void> {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
/** --- 任务结束事件 --- */
|
|
162
|
-
public onTaskEnded(taskId: number): void | Promise<void>;
|
|
163
|
-
public onTaskEnded(): void | Promise<void> {
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
/** --- launcher 文件夹名称修改事件 --- */
|
|
168
|
-
public onLauncherFolderNameChanged(id: string, name: string): void | Promise<void>;
|
|
169
|
-
public onLauncherFolderNameChanged(): void {
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
/** --- location hash 改变事件 --- */
|
|
174
|
-
public onHashChanged(hash: string): void | Promise<void>;
|
|
175
|
-
public onHashChanged(): void {
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
/** --- 键盘按下事件 --- */
|
|
180
|
-
public onKeydown(e: KeyboardEvent): void | Promise<void>;
|
|
181
|
-
public onKeydown(): void {
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
/** --- 键盘弹起事件 --- */
|
|
186
|
-
public onKeyup(e: KeyboardEvent): void | Promise<void>;
|
|
187
|
-
public onKeyup(): void {
|
|
188
|
-
return;
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
/** --- 环境文件准备加载时的事件 --- */
|
|
192
|
-
public onRuntimeFileLoad(url: string): void | Promise<void>;
|
|
193
|
-
public onRuntimeFileLoad(): void {
|
|
194
|
-
return;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
/** --- 环境文件加载完成的事件 --- */
|
|
198
|
-
public onRuntimeFileLoaded(url: string, state: number): void | Promise<void>;
|
|
199
|
-
public onRuntimeFileLoaded(): void {
|
|
200
|
-
return;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
export function launcher(boot: AbstractBoot): void {
|
|
206
|
-
(async function() {
|
|
207
|
-
// --- 通过标签加载库 ---
|
|
208
|
-
const paths: string[] = [
|
|
209
|
-
`${loader.cdn}/npm/vue@3.5.13/dist/vue.global${boot.isDebug() ? '' : '.prod.min'}.js`
|
|
210
|
-
];
|
|
211
|
-
// --- 判断 TouchEvent 是否存在(例如某些浏览器可能不存在这个对象) ---
|
|
212
|
-
if (!((window as any).TouchEvent)) {
|
|
213
|
-
(window as any).TouchEvent = CustomEvent;
|
|
214
|
-
}
|
|
215
|
-
// --- 判断 ResizeObserver 是否存在 ---
|
|
216
|
-
let ro = true;
|
|
217
|
-
// ResizeObserver = undefined;
|
|
218
|
-
if (!((window as any).ResizeObserver)) {
|
|
219
|
-
ro = false;
|
|
220
|
-
paths.push(loader.cdn + '/npm/@juggle/resize-observer@3.4.0/lib/exports/resize-observer.umd.min.js');
|
|
221
|
-
}
|
|
222
|
-
// --- 加载 vue 以及必要库 ---
|
|
223
|
-
await loader.loadScripts(paths);
|
|
224
|
-
// --- 处理 ResizeObserver ---
|
|
225
|
-
if (!ro) {
|
|
226
|
-
(window as any).ResizeObserverEntry = (window as any).ResizeObserver.ResizeObserverEntry;
|
|
227
|
-
(window as any).ResizeObserver = (window as any).ResizeObserver.ResizeObserver;
|
|
228
|
-
}
|
|
229
|
-
// --- map 加载库 ---
|
|
230
|
-
const map: Record<string, string> = {
|
|
231
|
-
'jszip': loader.cdn + '/npm/jszip@3.10.1/dist/jszip.min'
|
|
232
|
-
};
|
|
233
|
-
// --- 加载 clickgo 主程序 ---
|
|
234
|
-
const after = '?' + Math.random().toString();
|
|
235
|
-
const files = await loader.sniffFiles('clickgo.js', {
|
|
236
|
-
'dir': __dirname + '/',
|
|
237
|
-
'after': after,
|
|
238
|
-
'map': map,
|
|
239
|
-
'load': (url) => {
|
|
240
|
-
boot.onRuntimeFileLoad(url) as any;
|
|
241
|
-
},
|
|
242
|
-
'loaded': (url, state) => {
|
|
243
|
-
boot.onRuntimeFileLoaded(url, state) as any;
|
|
244
|
-
}
|
|
245
|
-
});
|
|
246
|
-
const cg = loader.require('clickgo', files, {
|
|
247
|
-
'dir': __dirname + '/',
|
|
248
|
-
'map': map
|
|
249
|
-
})[0] as typeof import('../dist/clickgo');
|
|
250
|
-
// --- 加载 clickgo 的 global css ---
|
|
251
|
-
try {
|
|
252
|
-
let style = await (await fetch(__dirname + '/global.css' + (__dirname.startsWith(loader.cdn) ? '' : '?' + Math.random().toString()))).text();
|
|
253
|
-
// --- 将 style 里的 url 转换一下路径 ---
|
|
254
|
-
const reg = /url\(["']{0,1}(.+?)["']{0,1}\)/ig;
|
|
255
|
-
let match: RegExpExecArray | null = null;
|
|
256
|
-
while ((match = reg.exec(style))) {
|
|
257
|
-
style = style.replace(match[0], `url('${__dirname}/${match[1]}')`);
|
|
258
|
-
}
|
|
259
|
-
document.getElementById('cg-global')?.insertAdjacentHTML('afterbegin', style);
|
|
260
|
-
}
|
|
261
|
-
catch {
|
|
262
|
-
alert(`ClickGo: "${__dirname}/global.css'" failed.`);
|
|
263
|
-
}
|
|
264
|
-
// --- 设置一些项目 ---
|
|
265
|
-
clickgo = cg;
|
|
266
|
-
control = cg.control;
|
|
267
|
-
core = cg.core;
|
|
268
|
-
dom = cg.dom;
|
|
269
|
-
form = cg.form;
|
|
270
|
-
fs = cg.fs;
|
|
271
|
-
native = cg.native;
|
|
272
|
-
task = cg.task;
|
|
273
|
-
theme = cg.theme;
|
|
274
|
-
tool = cg.tool;
|
|
275
|
-
zip = cg.zip;
|
|
276
|
-
core.boot = boot;
|
|
277
|
-
// --- 执行回调 ---
|
|
278
|
-
await boot.main();
|
|
279
|
-
})().catch(function(e) {
|
|
280
|
-
console.log('launcher', e);
|
|
281
|
-
});
|
|
282
|
-
}
|