clickgo 3.16.28 → 4.0.0

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.
Files changed (301) hide show
  1. package/README.md +19 -8
  2. package/dist/app/{demo/res/video.mp4 → demo.cga} +0 -0
  3. package/dist/app/task.cga +0 -0
  4. package/dist/control/arteditor.cgc +0 -0
  5. package/dist/control/box.cgc +0 -0
  6. package/dist/control/captcha.cgc +0 -0
  7. package/dist/control/common.cgc +0 -0
  8. package/dist/control/desc.cgc +0 -0
  9. package/dist/control/drawer.cgc +0 -0
  10. package/dist/control/echarts.cgc +0 -0
  11. package/dist/control/form.cgc +0 -0
  12. package/dist/control/iconview.cgc +0 -0
  13. package/dist/control/jodit.cgc +0 -0
  14. package/dist/control/map.cgc +0 -0
  15. package/dist/control/monaco.cgc +0 -0
  16. package/dist/control/mpegts.cgc +0 -0
  17. package/dist/control/nav.cgc +0 -0
  18. package/dist/control/novnc.cgc +0 -0
  19. package/dist/control/page.cgc +0 -0
  20. package/dist/control/pdf.cgc +0 -0
  21. package/dist/control/property.cgc +0 -0
  22. package/dist/control/qrcode.cgc +0 -0
  23. package/dist/control/table.cgc +0 -0
  24. package/dist/control/task.cgc +0 -0
  25. package/dist/control/tplink.cgc +0 -0
  26. package/dist/control/tuieditor.cgc +0 -0
  27. package/dist/control/tuiviewer.cgc +0 -0
  28. package/dist/control/tums.cgc +0 -0
  29. package/dist/control/xterm.cgc +0 -0
  30. package/dist/ext/tums-player/audio.wasm +0 -0
  31. package/dist/ext/tums-player/decoder.worker.js +129 -0
  32. package/dist/ext/tums-player/libaudio.js +1 -0
  33. package/dist/ext/tums-player/libaudio.wasm +0 -0
  34. package/dist/ext/tums-player/libffmpeg.js +1 -0
  35. package/dist/ext/tums-player/libffmpeg.wasm +0 -0
  36. package/dist/ext/tums-player/libs.worker.js +92 -0
  37. package/dist/ext/tums-player/tums-player.umd.min.js +35 -0
  38. package/dist/ext/tums-player/webgl.js +2 -0
  39. package/dist/ext/tums-player/webgl.worker.js +42 -0
  40. package/dist/global.css +1 -1
  41. package/dist/index.js +1 -175
  42. package/dist/theme/dark.cgt +0 -0
  43. package/dist/theme/light.cgt +0 -0
  44. package/package.json +16 -10
  45. package/dist/app/demo/app.js +0 -48
  46. package/dist/app/demo/config.json +0 -252
  47. package/dist/app/demo/form/control/alayout2/alayout2.js +0 -43
  48. package/dist/app/demo/form/control/alayout2/alayout2.xml +0 -16
  49. package/dist/app/demo/form/control/alert/alert.js +0 -43
  50. package/dist/app/demo/form/control/alert/alert.xml +0 -32
  51. package/dist/app/demo/form/control/arteditor/arteditor.js +0 -64
  52. package/dist/app/demo/form/control/arteditor/arteditor.xml +0 -12
  53. package/dist/app/demo/form/control/arteditor/img.js +0 -61
  54. package/dist/app/demo/form/control/arteditor/img.xml +0 -6
  55. package/dist/app/demo/form/control/block/block.css +0 -1
  56. package/dist/app/demo/form/control/block/block.scss +0 -17
  57. package/dist/app/demo/form/control/block/block.xml +0 -7
  58. package/dist/app/demo/form/control/box/box.js +0 -87
  59. package/dist/app/demo/form/control/box/box.xml +0 -23
  60. package/dist/app/demo/form/control/button/button.css +0 -1
  61. package/dist/app/demo/form/control/button/button.js +0 -51
  62. package/dist/app/demo/form/control/button/button.scss +0 -18
  63. package/dist/app/demo/form/control/button/button.xml +0 -133
  64. package/dist/app/demo/form/control/calendar/calendar.js +0 -62
  65. package/dist/app/demo/form/control/calendar/calendar.xml +0 -34
  66. package/dist/app/demo/form/control/captcha/captcha.js +0 -60
  67. package/dist/app/demo/form/control/captcha/captcha.xml +0 -10
  68. package/dist/app/demo/form/control/check/check.js +0 -54
  69. package/dist/app/demo/form/control/check/check.xml +0 -17
  70. package/dist/app/demo/form/control/circle/circle.xml +0 -36
  71. package/dist/app/demo/form/control/content/content.js +0 -47
  72. package/dist/app/demo/form/control/content/content.xml +0 -16
  73. package/dist/app/demo/form/control/date/date.js +0 -56
  74. package/dist/app/demo/form/control/date/date.xml +0 -28
  75. package/dist/app/demo/form/control/datepanel/datepanel.js +0 -63
  76. package/dist/app/demo/form/control/datepanel/datepanel.xml +0 -32
  77. package/dist/app/demo/form/control/daterange/daterange.js +0 -54
  78. package/dist/app/demo/form/control/daterange/daterange.xml +0 -22
  79. package/dist/app/demo/form/control/delete/delete.js +0 -47
  80. package/dist/app/demo/form/control/delete/delete.xml +0 -20
  81. package/dist/app/demo/form/control/desc/desc.js +0 -82
  82. package/dist/app/demo/form/control/desc/desc.xml +0 -44
  83. package/dist/app/demo/form/control/dialog/dialog.js +0 -49
  84. package/dist/app/demo/form/control/dialog/dialog.xml +0 -46
  85. package/dist/app/demo/form/control/drawer/drawer.js +0 -45
  86. package/dist/app/demo/form/control/drawer/drawer.xml +0 -34
  87. package/dist/app/demo/form/control/echarts/echarts.js +0 -137
  88. package/dist/app/demo/form/control/echarts/echarts.xml +0 -12
  89. package/dist/app/demo/form/control/empty/empty.js +0 -44
  90. package/dist/app/demo/form/control/empty/empty.xml +0 -9
  91. package/dist/app/demo/form/control/file/file.js +0 -60
  92. package/dist/app/demo/form/control/file/file.xml +0 -25
  93. package/dist/app/demo/form/control/flow/flow.css +0 -1
  94. package/dist/app/demo/form/control/flow/flow.js +0 -86
  95. package/dist/app/demo/form/control/flow/flow.scss +0 -18
  96. package/dist/app/demo/form/control/flow/flow.xml +0 -101
  97. package/dist/app/demo/form/control/form/form.css +0 -1
  98. package/dist/app/demo/form/control/form/form.js +0 -66
  99. package/dist/app/demo/form/control/form/form.scss +0 -5
  100. package/dist/app/demo/form/control/form/form.xml +0 -29
  101. package/dist/app/demo/form/control/grid/grid.js +0 -45
  102. package/dist/app/demo/form/control/grid/grid.xml +0 -27
  103. package/dist/app/demo/form/control/group/group.js +0 -50
  104. package/dist/app/demo/form/control/group/group.xml +0 -46
  105. package/dist/app/demo/form/control/hske/hske.js +0 -44
  106. package/dist/app/demo/form/control/hske/hske.xml +0 -19
  107. package/dist/app/demo/form/control/html/html.js +0 -70
  108. package/dist/app/demo/form/control/html/html.xml +0 -18
  109. package/dist/app/demo/form/control/icon/icon.xml +0 -49
  110. package/dist/app/demo/form/control/iconview/iconview.js +0 -174
  111. package/dist/app/demo/form/control/iconview/iconview.xml +0 -45
  112. package/dist/app/demo/form/control/img/img.xml +0 -26
  113. package/dist/app/demo/form/control/imgviewer/imgviewer.js +0 -46
  114. package/dist/app/demo/form/control/imgviewer/imgviewer.xml +0 -9
  115. package/dist/app/demo/form/control/jodit/jodit.js +0 -64
  116. package/dist/app/demo/form/control/jodit/jodit.xml +0 -24
  117. package/dist/app/demo/form/control/label/label.js +0 -51
  118. package/dist/app/demo/form/control/label/label.xml +0 -34
  119. package/dist/app/demo/form/control/layout/layout.js +0 -45
  120. package/dist/app/demo/form/control/layout/layout.xml +0 -18
  121. package/dist/app/demo/form/control/link/link.js +0 -42
  122. package/dist/app/demo/form/control/link/link.xml +0 -30
  123. package/dist/app/demo/form/control/list/list.css +0 -1
  124. package/dist/app/demo/form/control/list/list.js +0 -375
  125. package/dist/app/demo/form/control/list/list.scss +0 -7
  126. package/dist/app/demo/form/control/list/list.xml +0 -150
  127. package/dist/app/demo/form/control/loading/loading.xml +0 -8
  128. package/dist/app/demo/form/control/map/map.js +0 -206
  129. package/dist/app/demo/form/control/map/map.xml +0 -44
  130. package/dist/app/demo/form/control/marquee/marquee.js +0 -64
  131. package/dist/app/demo/form/control/marquee/marquee.xml +0 -33
  132. package/dist/app/demo/form/control/menu/menu.js +0 -56
  133. package/dist/app/demo/form/control/menu/menu.xml +0 -125
  134. package/dist/app/demo/form/control/monaco/monaco.js +0 -136
  135. package/dist/app/demo/form/control/monaco/monaco.xml +0 -28
  136. package/dist/app/demo/form/control/mpegts/mpegts.js +0 -70
  137. package/dist/app/demo/form/control/mpegts/mpegts.xml +0 -11
  138. package/dist/app/demo/form/control/nav/nav.js +0 -60
  139. package/dist/app/demo/form/control/nav/nav.xml +0 -106
  140. package/dist/app/demo/form/control/novnc/novnc.js +0 -75
  141. package/dist/app/demo/form/control/novnc/novnc.xml +0 -13
  142. package/dist/app/demo/form/control/page/page.js +0 -51
  143. package/dist/app/demo/form/control/page/page.xml +0 -22
  144. package/dist/app/demo/form/control/palette/palette.js +0 -46
  145. package/dist/app/demo/form/control/palette/palette.xml +0 -16
  146. package/dist/app/demo/form/control/panel/panel.js +0 -106
  147. package/dist/app/demo/form/control/panel/panel.xml +0 -16
  148. package/dist/app/demo/form/control/panel/test1.js +0 -84
  149. package/dist/app/demo/form/control/panel/test1.xml +0 -22
  150. package/dist/app/demo/form/control/panel/test2.xml +0 -4
  151. package/dist/app/demo/form/control/pdf/pdf.js +0 -65
  152. package/dist/app/demo/form/control/pdf/pdf.xml +0 -12
  153. package/dist/app/demo/form/control/pdf/test.pdf +0 -0
  154. package/dist/app/demo/form/control/progress/progress.js +0 -54
  155. package/dist/app/demo/form/control/progress/progress.xml +0 -9
  156. package/dist/app/demo/form/control/property/property.js +0 -166
  157. package/dist/app/demo/form/control/property/property.xml +0 -6
  158. package/dist/app/demo/form/control/qrcode/qrcode.js +0 -45
  159. package/dist/app/demo/form/control/qrcode/qrcode.xml +0 -13
  160. package/dist/app/demo/form/control/radio/radio.js +0 -51
  161. package/dist/app/demo/form/control/radio/radio.xml +0 -15
  162. package/dist/app/demo/form/control/scroll/scroll.js +0 -52
  163. package/dist/app/demo/form/control/scroll/scroll.xml +0 -38
  164. package/dist/app/demo/form/control/select/select.js +0 -273
  165. package/dist/app/demo/form/control/select/select.xml +0 -141
  166. package/dist/app/demo/form/control/setting/setting.xml +0 -11
  167. package/dist/app/demo/form/control/sgroup/sgroup.xml +0 -28
  168. package/dist/app/demo/form/control/step/step.js +0 -61
  169. package/dist/app/demo/form/control/step/step.xml +0 -16
  170. package/dist/app/demo/form/control/svg/svg.js +0 -61
  171. package/dist/app/demo/form/control/svg/svg.xml +0 -24
  172. package/dist/app/demo/form/control/switch/switch.js +0 -53
  173. package/dist/app/demo/form/control/switch/switch.xml +0 -29
  174. package/dist/app/demo/form/control/tab/tab.js +0 -102
  175. package/dist/app/demo/form/control/tab/tab.xml +0 -22
  176. package/dist/app/demo/form/control/table/table.js +0 -218
  177. package/dist/app/demo/form/control/table/table.xml +0 -97
  178. package/dist/app/demo/form/control/tag/tag.js +0 -44
  179. package/dist/app/demo/form/control/tag/tag.xml +0 -52
  180. package/dist/app/demo/form/control/text/text.js +0 -116
  181. package/dist/app/demo/form/control/text/text.xml +0 -70
  182. package/dist/app/demo/form/control/timeline/timeline.js +0 -43
  183. package/dist/app/demo/form/control/timeline/timeline.xml +0 -19
  184. package/dist/app/demo/form/control/tip/tip.js +0 -43
  185. package/dist/app/demo/form/control/tip/tip.xml +0 -42
  186. package/dist/app/demo/form/control/tplink/tplink.js +0 -74
  187. package/dist/app/demo/form/control/tplink/tplink.xml +0 -13
  188. package/dist/app/demo/form/control/tuieditor/tuieditor.js +0 -62
  189. package/dist/app/demo/form/control/tuieditor/tuieditor.xml +0 -22
  190. package/dist/app/demo/form/control/tuiviewer/tuiviewer.js +0 -45
  191. package/dist/app/demo/form/control/tuiviewer/tuiviewer.xml +0 -14
  192. package/dist/app/demo/form/control/uploader/uploader.js +0 -80
  193. package/dist/app/demo/form/control/uploader/uploader.xml +0 -15
  194. package/dist/app/demo/form/control/vflow/vflow.css +0 -1
  195. package/dist/app/demo/form/control/vflow/vflow.js +0 -101
  196. package/dist/app/demo/form/control/vflow/vflow.scss +0 -22
  197. package/dist/app/demo/form/control/vflow/vflow.xml +0 -89
  198. package/dist/app/demo/form/control/video/video.js +0 -47
  199. package/dist/app/demo/form/control/video/video.xml +0 -14
  200. package/dist/app/demo/form/control/web/web.js +0 -43
  201. package/dist/app/demo/form/control/web/web.xml +0 -4
  202. package/dist/app/demo/form/control/xterm/xterm.js +0 -100
  203. package/dist/app/demo/form/control/xterm/xterm.xml +0 -6
  204. package/dist/app/demo/form/event/form/form.css +0 -1
  205. package/dist/app/demo/form/event/form/form.js +0 -169
  206. package/dist/app/demo/form/event/form/form.scss +0 -24
  207. package/dist/app/demo/form/event/form/form.xml +0 -16
  208. package/dist/app/demo/form/event/other/other.js +0 -78
  209. package/dist/app/demo/form/event/other/other.xml +0 -5
  210. package/dist/app/demo/form/event/screen/screen.js +0 -86
  211. package/dist/app/demo/form/event/screen/screen.xml +0 -9
  212. package/dist/app/demo/form/event/task/task.js +0 -96
  213. package/dist/app/demo/form/event/task/task.xml +0 -20
  214. package/dist/app/demo/form/main.css +0 -1
  215. package/dist/app/demo/form/main.js +0 -515
  216. package/dist/app/demo/form/main.scss +0 -9
  217. package/dist/app/demo/form/main.xml +0 -163
  218. package/dist/app/demo/form/method/acontrol/acontrol.js +0 -42
  219. package/dist/app/demo/form/method/acontrol/acontrol.xml +0 -5
  220. package/dist/app/demo/form/method/aform/aform.js +0 -104
  221. package/dist/app/demo/form/method/aform/aform.xml +0 -60
  222. package/dist/app/demo/form/method/aform/sd.js +0 -47
  223. package/dist/app/demo/form/method/aform/sd.xml +0 -7
  224. package/dist/app/demo/form/method/core/core.js +0 -86
  225. package/dist/app/demo/form/method/core/core.xml +0 -23
  226. package/dist/app/demo/form/method/dom/dom.css +0 -1
  227. package/dist/app/demo/form/method/dom/dom.js +0 -228
  228. package/dist/app/demo/form/method/dom/dom.scss +0 -10
  229. package/dist/app/demo/form/method/dom/dom.xml +0 -76
  230. package/dist/app/demo/form/method/form/form.js +0 -244
  231. package/dist/app/demo/form/method/form/form.xml +0 -74
  232. package/dist/app/demo/form/method/form/test.xml +0 -5
  233. package/dist/app/demo/form/method/fs/fs.js +0 -209
  234. package/dist/app/demo/form/method/fs/fs.xml +0 -18
  235. package/dist/app/demo/form/method/fs/text.js +0 -48
  236. package/dist/app/demo/form/method/fs/text.xml +0 -3
  237. package/dist/app/demo/form/method/native/native.js +0 -100
  238. package/dist/app/demo/form/method/native/native.xml +0 -22
  239. package/dist/app/demo/form/method/storage/storage.js +0 -77
  240. package/dist/app/demo/form/method/storage/storage.xml +0 -18
  241. package/dist/app/demo/form/method/system/system.js +0 -63
  242. package/dist/app/demo/form/method/system/system.xml +0 -14
  243. package/dist/app/demo/form/method/task/locale1.json +0 -3
  244. package/dist/app/demo/form/method/task/locale2.json +0 -3
  245. package/dist/app/demo/form/method/task/task.js +0 -177
  246. package/dist/app/demo/form/method/task/task.xml +0 -61
  247. package/dist/app/demo/form/method/theme/theme.js +0 -92
  248. package/dist/app/demo/form/method/theme/theme.xml +0 -12
  249. package/dist/app/demo/form/method/tool/tool.js +0 -122
  250. package/dist/app/demo/form/method/tool/tool.xml +0 -40
  251. package/dist/app/demo/form/method/zip/zip.js +0 -126
  252. package/dist/app/demo/form/method/zip/zip.xml +0 -12
  253. package/dist/app/demo/form/solution/backpanel/backpanel.js +0 -76
  254. package/dist/app/demo/form/solution/backpanel/backpanel.xml +0 -31
  255. package/dist/app/demo/global.css +0 -3
  256. package/dist/app/demo/res/custombtn.cgc +0 -0
  257. package/dist/app/demo/res/icon.svg +0 -5
  258. package/dist/app/demo/res/img.jpg +0 -0
  259. package/dist/app/demo/res/marker.svg +0 -5
  260. package/dist/app/demo/res/r-1.svg +0 -32
  261. package/dist/app/demo/res/r-2.svg +0 -38
  262. package/dist/app/demo/res/sql.svg +0 -25
  263. package/dist/app/demo/res/txt.svg +0 -21
  264. package/dist/app/demo/res/zip.svg +0 -21
  265. package/dist/app/task/app.js +0 -46
  266. package/dist/app/task/config.json +0 -29
  267. package/dist/app/task/form/bar/bar.js +0 -406
  268. package/dist/app/task/form/bar/bar.xml +0 -46
  269. package/dist/app/task/form/desktop/desktop.xml +0 -1
  270. package/dist/app/task/locale/en.json +0 -11
  271. package/dist/app/task/locale/ja.json +0 -11
  272. package/dist/app/task/locale/sc.json +0 -11
  273. package/dist/app/task/locale/tc.json +0 -11
  274. package/dist/clickgo.d.ts +0 -22
  275. package/dist/clickgo.js +0 -109
  276. package/dist/index.d.ts +0 -55
  277. package/dist/lib/control.d.ts +0 -53
  278. package/dist/lib/control.js +0 -584
  279. package/dist/lib/core.d.ts +0 -47
  280. package/dist/lib/core.js +0 -1005
  281. package/dist/lib/dom.d.ts +0 -75
  282. package/dist/lib/dom.js +0 -2147
  283. package/dist/lib/form.d.ts +0 -222
  284. package/dist/lib/form.js +0 -2961
  285. package/dist/lib/fs.d.ts +0 -35
  286. package/dist/lib/fs.js +0 -1183
  287. package/dist/lib/native.d.ts +0 -43
  288. package/dist/lib/native.js +0 -197
  289. package/dist/lib/storage.d.ts +0 -6
  290. package/dist/lib/storage.js +0 -215
  291. package/dist/lib/task.d.ts +0 -32
  292. package/dist/lib/task.js +0 -1831
  293. package/dist/lib/theme.d.ts +0 -8
  294. package/dist/lib/theme.js +0 -176
  295. package/dist/lib/tool.d.ts +0 -122
  296. package/dist/lib/tool.js +0 -1021
  297. package/dist/lib/zip.d.ts +0 -40
  298. package/dist/lib/zip.js +0 -382
  299. package/dist/theme/blue.cgt +0 -0
  300. package/dist/theme/byterun.cgt +0 -0
  301. package/types/index.d.ts +0 -1374
package/dist/index.d.ts DELETED
@@ -1,55 +0,0 @@
1
- import * as types from '../types/index';
2
- export declare let clickgo: typeof import('./clickgo');
3
- export declare let control: typeof import('./lib/control');
4
- export declare let core: typeof import('./lib/core');
5
- export declare let dom: typeof import('./lib/dom');
6
- export declare let form: typeof import('./lib/form');
7
- export declare let fs: typeof import('./lib/fs');
8
- export declare let native: typeof import('./lib/native');
9
- export declare let storage: typeof import('./lib/storage');
10
- export declare let task: typeof import('./lib/task');
11
- export declare let theme: typeof import('./lib/theme');
12
- export declare let tool: typeof import('./lib/tool');
13
- export declare let zip: typeof import('./lib/zip');
14
- export declare let vue: import('../types/index').IVueObject;
15
- export declare function getVersion(): string;
16
- export declare function isNative(): boolean;
17
- export declare function getPlatform(): NodeJS.Platform | 'web';
18
- export declare function getDevice(): {
19
- 'type': 'unknown' | 'mobile' | 'desktop';
20
- 'os': 'unknown' | 'android' | 'ios' | 'windows' | 'macos' | 'linux';
21
- };
22
- export declare function isImmersion(): boolean;
23
- export declare function hasFrame(): boolean;
24
- export declare abstract class AbstractBoot {
25
- private readonly _debug;
26
- isDebug(): boolean;
27
- constructor(opt?: {
28
- 'debug'?: boolean;
29
- });
30
- abstract main(): void | Promise<void>;
31
- onError(taskId: number, formId: number, error: Error, info: string): void | Promise<void>;
32
- onScreenResize(): void | Promise<void>;
33
- onConfigChanged<T extends types.IConfig, TK extends keyof T>(n: TK, v: T[TK]): void | Promise<void>;
34
- onFormCreated(taskId: number, formId: number, title: string, icon: string, showInSystemTask: boolean): void | Promise<void>;
35
- onFormRemoved(taskId: number, formId: number, title: string, icon: string): void | Promise<void>;
36
- onFormTitleChanged(taskId: number, formId: number, title: string): void | Promise<void>;
37
- onFormIconChanged(taskId: number, formId: number, icon: string): void | Promise<void>;
38
- onFormStateMinChanged(taskId: number, formId: number, state: boolean): void | Promise<void>;
39
- onFormStateMaxChanged(taskId: number, formId: number, state: boolean): void | Promise<void>;
40
- onFormShowChanged(taskId: number, formId: number, state: boolean): void | Promise<void>;
41
- onFormFocused(taskId: number, formId: number): void | Promise<void>;
42
- onFormBlurred(taskId: number, formId: number): void | Promise<void>;
43
- onFormFlash(taskId: number, formId: number): void | Promise<void>;
44
- onFormShowInSystemTaskChange(taskId: number, formId: number, value: boolean): void | Promise<void>;
45
- onFormHashChange(taskId: number, formId: number, value: string, data: Record<string, any>): void | Promise<void>;
46
- onTaskStarted(taskId: number): void | Promise<void>;
47
- onTaskEnded(taskId: number): void | Promise<void>;
48
- onLauncherFolderNameChanged(id: string, name: string): void | Promise<void>;
49
- onHashChanged(hash: string): void | Promise<void>;
50
- onKeydown(e: KeyboardEvent): void | Promise<void>;
51
- onKeyup(e: KeyboardEvent): void | Promise<void>;
52
- onRuntimeFileLoad(url: string): void | Promise<void>;
53
- onRuntimeFileLoaded(url: string, state: number): void | Promise<void>;
54
- }
55
- export declare function launcher(boot: AbstractBoot): void;
@@ -1,53 +0,0 @@
1
- import * as types from '../../types';
2
- import * as form from './form';
3
- export declare abstract class AbstractControl {
4
- get filename(): string;
5
- get controlName(): string;
6
- get taskId(): number;
7
- get formId(): number;
8
- private _rootForm;
9
- get rootForm(): form.AbstractForm & Record<string, any>;
10
- private readonly _rootControl;
11
- get rootControl(): (AbstractControl & Record<string, any>) | null;
12
- get formFocus(): boolean;
13
- get path(): string;
14
- get prep(): string;
15
- get locale(): string;
16
- get l(): (key: string, data?: string[]) => string;
17
- get classPrepend(): (cla: any) => string;
18
- get alignHComp(): string | undefined;
19
- get alignVComp(): string | undefined;
20
- watch<T extends this & this['props'], TK extends keyof T, TR>(name: TK | (() => TR), cb: (val: T[TK] & TR, old: T[TK] & TR) => void | Promise<void>, opt?: {
21
- 'immediate'?: boolean;
22
- 'deep'?: boolean;
23
- }): () => void;
24
- get refs(): Record<string, HTMLElement & AbstractControl & Record<string, any>>;
25
- get nextTick(): () => Promise<void>;
26
- allowEvent(e: MouseEvent | TouchEvent | KeyboardEvent): boolean;
27
- trigger(name: types.TGlobalEvent, param1?: boolean | Error | string, param2?: string): void;
28
- readonly packageFiles: Record<string, Blob | string>;
29
- readonly props: {};
30
- readonly emits: Record<string, null | ((payload: any) => boolean)>;
31
- readonly slots: Record<string, () => any[]>;
32
- get slotsAll(): (name: string) => any[];
33
- get propBoolean(): (name: keyof this["props"]) => boolean;
34
- get propNumber(): (name: keyof this["props"]) => number;
35
- get propInt(): (name: keyof this["props"]) => number;
36
- get propArray(): (name: keyof this["props"]) => any[];
37
- get element(): HTMLElement;
38
- emit(name: string, ...v: string | any): void;
39
- get parent(): AbstractControl & form.AbstractForm & Record<string, any>;
40
- get parentByName(): (controlName: string) => (AbstractControl & Record<string, any>) | null;
41
- get parentByAccess(): (name: string, val: string) => (AbstractControl & Record<string, any>) | null;
42
- onBeforeCreate(): void | Promise<void>;
43
- onCreated(): void | Promise<void>;
44
- onBeforeMount(): void | Promise<void>;
45
- onMounted(): void | Promise<void>;
46
- onBeforeUpdate(): void | Promise<void>;
47
- onUpdated(): void | Promise<void>;
48
- onBeforeUnmount(): void | Promise<void>;
49
- onUnmounted(): void | Promise<void>;
50
- }
51
- export declare function read(blob: Blob): Promise<false | types.TControlPackage>;
52
- export declare function init(taskId: number, invoke: Record<string, any>, cache?: string): Promise<number>;
53
- export declare function buildComponents(taskId: number, formId: number, path: string): false | Record<string, any>;
@@ -1,584 +0,0 @@
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 () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.AbstractControl = void 0;
37
- exports.read = read;
38
- exports.init = init;
39
- exports.buildComponents = buildComponents;
40
- const core = __importStar(require("./core"));
41
- const zip = __importStar(require("./zip"));
42
- const tool = __importStar(require("./tool"));
43
- const task = __importStar(require("./task"));
44
- const dom = __importStar(require("./dom"));
45
- const form = __importStar(require("./form"));
46
- const fs = __importStar(require("./fs"));
47
- class AbstractControl {
48
- constructor() {
49
- this._rootForm = null;
50
- this._rootControl = null;
51
- this.packageFiles = {};
52
- this.props = {};
53
- this.emits = {};
54
- this.slots = {};
55
- }
56
- get filename() {
57
- return '';
58
- }
59
- get controlName() {
60
- return '';
61
- }
62
- get taskId() {
63
- return 0;
64
- }
65
- get formId() {
66
- return 0;
67
- }
68
- get rootForm() {
69
- if (!this._rootForm) {
70
- this._rootForm = this.parentByName('root');
71
- if (!this._rootForm) {
72
- form.notify({
73
- 'title': 'Error',
74
- 'content': `The "rootForm" is not ready yet.\nFile: "${this.controlName}".`,
75
- 'type': 'danger'
76
- });
77
- }
78
- }
79
- return this._rootForm;
80
- }
81
- get rootControl() {
82
- return this._rootControl;
83
- }
84
- get formFocus() {
85
- return this.rootForm?.formFocus ?? false;
86
- }
87
- get path() {
88
- return '';
89
- }
90
- get prep() {
91
- return '';
92
- }
93
- get locale() {
94
- return task.list[this.taskId].locale.lang || core.config.locale;
95
- }
96
- get l() {
97
- return (key, data) => {
98
- const loc = this.localeData?.[this.locale][key] ?? '[LocaleError]' + key;
99
- if (!data) {
100
- return loc;
101
- }
102
- let i = -1;
103
- return loc.replace(/\?/g, function () {
104
- ++i;
105
- if (!data[i]) {
106
- return '';
107
- }
108
- return data[i];
109
- });
110
- };
111
- }
112
- get classPrepend() {
113
- return (cla) => {
114
- if (typeof cla !== 'string') {
115
- return cla;
116
- }
117
- return `cg-theme-task${this.taskId}-${this.controlName}_${cla}${this.prep ? (' ' + this.prep + cla) : ''}`;
118
- };
119
- }
120
- get alignHComp() {
121
- if (!this.props.alignH) {
122
- return undefined;
123
- }
124
- switch (this.props.alignH) {
125
- case 'center': {
126
- return 'center';
127
- }
128
- case 'left':
129
- case 'start': {
130
- return 'flex-start';
131
- }
132
- }
133
- return 'flex-end';
134
- }
135
- get alignVComp() {
136
- if (!this.props.alignV) {
137
- return undefined;
138
- }
139
- switch (this.props.alignV) {
140
- case 'center': {
141
- return 'center';
142
- }
143
- case 'top':
144
- case 'start': {
145
- return 'flex-start';
146
- }
147
- }
148
- return 'flex-end';
149
- }
150
- watch(name, cb, opt = {}) {
151
- return this.$watch(name, cb, opt);
152
- }
153
- get refs() {
154
- return this.$refs;
155
- }
156
- get nextTick() {
157
- return this.$nextTick;
158
- }
159
- allowEvent(e) {
160
- return dom.allowEvent(e);
161
- }
162
- trigger(name, param1 = '', param2 = '') {
163
- if (!['formTitleChanged', 'formIconChanged', 'formStateMinChanged', 'formStateMaxChanged', 'formShowChanged'].includes(name)) {
164
- return;
165
- }
166
- core.trigger(name, this.taskId, this.formId, param1, param2);
167
- }
168
- get slotsAll() {
169
- return (name) => {
170
- if (!this.slots[name]) {
171
- return [];
172
- }
173
- const ls = this.slots[name]();
174
- const rtn = [];
175
- for (const slot of ls) {
176
- if (!slot.props) {
177
- if ((typeof slot.children !== 'string') && slot.children.length) {
178
- for (const item of slot.children) {
179
- rtn.push(item);
180
- }
181
- }
182
- continue;
183
- }
184
- rtn.push(slot);
185
- }
186
- return rtn;
187
- };
188
- }
189
- get propBoolean() {
190
- return (name) => {
191
- return tool.getBoolean(this.props[name]);
192
- };
193
- }
194
- get propNumber() {
195
- return (name) => {
196
- return tool.getNumber(this.props[name]);
197
- };
198
- }
199
- get propInt() {
200
- return (name) => {
201
- return Math.round(this.propNumber(name));
202
- };
203
- }
204
- get propArray() {
205
- return (name) => {
206
- return tool.getArray(this.props[name]);
207
- };
208
- }
209
- get element() {
210
- return this.$el;
211
- }
212
- emit(name, ...v) {
213
- this.$emit(name, ...v);
214
- }
215
- get parent() {
216
- return this.$parent;
217
- }
218
- get parentByName() {
219
- return (controlName) => {
220
- let parent = this.$parent;
221
- while (true) {
222
- if (!parent) {
223
- return null;
224
- }
225
- if (parent.controlName === controlName) {
226
- return parent;
227
- }
228
- parent = parent.$parent;
229
- }
230
- };
231
- }
232
- get parentByAccess() {
233
- return (name, val) => {
234
- let parent = this.$parent;
235
- while (true) {
236
- if (!parent) {
237
- return null;
238
- }
239
- if (!parent.access) {
240
- parent = parent.$parent;
241
- continue;
242
- }
243
- if (parent.access[name] === val) {
244
- return parent;
245
- }
246
- parent = parent.$parent;
247
- }
248
- };
249
- }
250
- onBeforeCreate() {
251
- return;
252
- }
253
- onCreated() {
254
- return;
255
- }
256
- onBeforeMount() {
257
- return;
258
- }
259
- onMounted() {
260
- return;
261
- }
262
- onBeforeUpdate() {
263
- return;
264
- }
265
- onUpdated() {
266
- return;
267
- }
268
- onBeforeUnmount() {
269
- return;
270
- }
271
- onUnmounted() {
272
- return;
273
- }
274
- }
275
- exports.AbstractControl = AbstractControl;
276
- async function read(blob) {
277
- const z = await zip.get(blob);
278
- if (!z) {
279
- return false;
280
- }
281
- const controlPkg = {};
282
- const list = z.readDir('/');
283
- for (const sub of list) {
284
- if (sub.isFile) {
285
- continue;
286
- }
287
- const configContent = await z.getContent('/' + sub.name + '/config.json');
288
- if (!configContent) {
289
- form.notify({
290
- 'title': 'Error',
291
- 'content': `Control file not found.\nFile: "${'/' + sub.name + '/config.json'}".`,
292
- 'type': 'danger'
293
- });
294
- continue;
295
- }
296
- const config = JSON.parse(configContent);
297
- controlPkg[config.name] = {
298
- 'type': 'control',
299
- 'config': config,
300
- 'files': {}
301
- };
302
- const list = z.readDir('/' + sub.name + '/', {
303
- 'hasChildren': true
304
- });
305
- for (const file of list) {
306
- const pre = file.path.slice(config.name.length + 1);
307
- const mime = tool.getMimeByPath(file.name);
308
- if (['txt', 'json', 'js', 'css', 'xml', 'html'].includes(mime.ext)) {
309
- const fab = await z.getContent(file.path + file.name, 'string');
310
- if (!fab) {
311
- continue;
312
- }
313
- controlPkg[config.name].files[pre + file.name] = fab.replace(/^\ufeff/, '');
314
- }
315
- else {
316
- const fab = await z.getContent(file.path + file.name, 'arraybuffer');
317
- if (!fab) {
318
- continue;
319
- }
320
- controlPkg[config.name].files[pre + file.name] = new Blob([fab], {
321
- 'type': mime.mime
322
- });
323
- }
324
- }
325
- }
326
- return controlPkg;
327
- }
328
- async function init(taskId, invoke, cache) {
329
- const t = task.list[taskId];
330
- if (!t) {
331
- return -1;
332
- }
333
- for (let path of t.app.config.controls) {
334
- if (!path.endsWith('.cgc')) {
335
- path += '.cgc';
336
- }
337
- path = tool.urlResolve('/', path);
338
- const file = await fs.getContent(path, {
339
- 'cache': cache
340
- }, taskId);
341
- if (file && typeof file !== 'string') {
342
- const c = await read(file);
343
- if (c) {
344
- for (const name in c) {
345
- const item = c[name];
346
- let prep = '';
347
- t.controls[name] = {
348
- 'layout': '',
349
- 'files': item.files,
350
- 'props': {},
351
- 'emits': {},
352
- 'data': {},
353
- 'access': {},
354
- 'methods': {},
355
- 'computed': {}
356
- };
357
- t.controls[name].layout = item.files[item.config.layout + '.html'];
358
- if (t.controls[name].layout === undefined) {
359
- return -2;
360
- }
361
- t.controls[name].layout = t.controls[name].layout.replace(/^(<[a-zA-Z0-9-]+)( |>)/, '$1 data-cg-control="' + name + '"$2');
362
- const style = item.files[item.config.style + '.css'];
363
- if (style) {
364
- const r = tool.stylePrepend(style);
365
- prep = r.prep;
366
- dom.pushStyle(t.id, await tool.styleUrl2DataUrl(item.config.style, r.style, item.files), 'control', name);
367
- }
368
- const prepList = [
369
- 'cg-theme-task' + t.id.toString() + '-' + name + '_'
370
- ];
371
- if (prep !== '') {
372
- prepList.push(prep);
373
- }
374
- t.controls[name].layout = tool.layoutAddTagClassAndReTagName(t.controls[name].layout, false);
375
- t.controls[name].layout = tool.layoutClassPrepend(t.controls[name].layout, prepList);
376
- t.controls[name].layout = tool.eventsAttrWrap(t.controls[name].layout);
377
- if (t.controls[name].layout.includes('<teleport')) {
378
- t.controls[name].layout = tool.teleportGlue(t.controls[name].layout, '{{{formId}}}');
379
- }
380
- t.controls[name].access['cgPCMap'] = tool.random(8, tool.RANDOM_LUNS, '"<>$');
381
- t.controls[name].layout = t.controls[name].layout.replace(/(<cg-[a-zA-Z0-9-_]+)/g, `$1 data-cg-rootcontrol="${t.controls[name].access['cgPCMap']}"`);
382
- let cls;
383
- if (item.files[item.config.code + '.js']) {
384
- item.files['/invoke/clickgo.js'] = `module.exports = invokeClickgo;`;
385
- let expo = [];
386
- try {
387
- expo = loader.require(item.config.code, item.files, {
388
- 'dir': '/',
389
- 'invoke': invoke,
390
- 'preprocess': function (code, path) {
391
- const exec = /eval\W/.exec(code);
392
- if (exec) {
393
- form.notify({
394
- 'title': 'Error',
395
- 'content': `The "eval" is prohibited.\nFile: "${path}".`,
396
- 'type': 'danger'
397
- });
398
- return '';
399
- }
400
- code = code.replace(/extends[\s\S]+?\.\s*AbstractControl\s*{/, (t) => {
401
- return t + 'get filename() {return __filename;}';
402
- });
403
- return code;
404
- },
405
- 'map': {
406
- 'clickgo': '/invoke/clickgo'
407
- }
408
- })[0];
409
- }
410
- catch (e) {
411
- core.trigger('error', taskId, 0, e, e.message + '(-4)');
412
- return -3;
413
- }
414
- if (!expo?.default) {
415
- const msg = '"default" not found on "' + item.config.code + '" of "' + name + '" control.';
416
- core.trigger('error', taskId, 0, new Error(msg), msg);
417
- return -4;
418
- }
419
- cls = new expo.default();
420
- }
421
- else {
422
- cls = new (class extends AbstractControl {
423
- get taskId() {
424
- return taskId;
425
- }
426
- })();
427
- }
428
- if (cls.props) {
429
- for (const key in cls.props) {
430
- t.controls[name].props[key] = {
431
- 'default': cls.props[key]
432
- };
433
- }
434
- }
435
- if (cls.emits) {
436
- for (const key in cls.emits) {
437
- t.controls[name].emits[key] = cls.emits[key];
438
- }
439
- }
440
- const cdata = Object.entries(cls);
441
- for (const item of cdata) {
442
- if (item[0] === 'files') {
443
- continue;
444
- }
445
- if (item[0] === 'access') {
446
- t.controls[name].access = item[1];
447
- continue;
448
- }
449
- t.controls[name].data[item[0]] = item[1];
450
- }
451
- const prot = tool.getClassPrototype(cls);
452
- t.controls[name].methods = prot.method;
453
- Object.assign(t.controls[name].computed, prot.access);
454
- t.controls[name].computed.controlName = {
455
- get: function () {
456
- return name;
457
- },
458
- set: function () {
459
- form.notify({
460
- 'title': 'Error',
461
- 'content': `The software tries to modify the system variable "controlName".\nControl: ${name}`,
462
- 'type': 'danger'
463
- });
464
- return;
465
- }
466
- };
467
- t.controls[name].computed.prep = {
468
- get: function () {
469
- return prep;
470
- },
471
- set: function () {
472
- form.notify({
473
- 'title': 'Error',
474
- 'content': `The software tries to modify the system variable "prep".\nControl: ${name}`,
475
- 'type': 'danger'
476
- });
477
- return;
478
- }
479
- };
480
- }
481
- }
482
- else {
483
- form.notify({
484
- 'title': 'Error',
485
- 'content': 'Control failed to load.\nTask id: ' + t.id.toString() + '\nPath: ' + path,
486
- 'type': 'danger'
487
- });
488
- return -5;
489
- }
490
- }
491
- }
492
- return 1;
493
- }
494
- function buildComponents(taskId, formId, path) {
495
- const t = task.list[taskId];
496
- if (!t) {
497
- return false;
498
- }
499
- const components = {};
500
- for (const name in t.controls) {
501
- const control = t.controls[name];
502
- const computed = Object.assign({}, control.computed);
503
- computed.formId = {
504
- get: function () {
505
- return formId;
506
- },
507
- set: function () {
508
- form.notify({
509
- 'title': 'Error',
510
- 'content': `The control tries to modify the system variable "formId".\nControl: ${name}`,
511
- 'type': 'danger'
512
- });
513
- }
514
- };
515
- computed.path = {
516
- get: function () {
517
- return path;
518
- },
519
- set: function () {
520
- form.notify({
521
- 'title': 'Error',
522
- 'content': `The control tries to modify the system variable "path".\nControl: ${name}`,
523
- 'type': 'danger'
524
- });
525
- }
526
- };
527
- components['cg-' + name] = {
528
- 'template': control.layout.replace(/{{{formId}}}/g, formId.toString()),
529
- 'props': control.props,
530
- 'emits': control.emits,
531
- 'data': function () {
532
- const data = tool.clone(control.data);
533
- if (data.props) {
534
- delete data.props;
535
- }
536
- if (data.emits) {
537
- delete data.emits;
538
- }
539
- return data;
540
- },
541
- 'methods': control.methods,
542
- 'computed': computed,
543
- beforeCreate: control.methods.onBeforeCreate,
544
- created: function () {
545
- this.props = this.$props;
546
- this.slots = this.$slots;
547
- this.access = tool.clone(control.access);
548
- this.packageFiles = {};
549
- for (const fname in control.files) {
550
- this.packageFiles[fname] = control.files[fname];
551
- }
552
- this.onCreated();
553
- },
554
- beforeMount: function () {
555
- this.onBeforeMount();
556
- },
557
- mounted: async function () {
558
- if (this.element.dataset?.cgRootcontrol !== undefined) {
559
- const rc = this.parentByAccess('cgPCMap', this.element.dataset.cgRootcontrol);
560
- if (rc) {
561
- this._rootControl = rc;
562
- }
563
- }
564
- await this.$nextTick();
565
- this.onMounted();
566
- },
567
- beforeUpdate: function () {
568
- this.onBeforeUpdate();
569
- },
570
- updated: async function () {
571
- await this.$nextTick();
572
- this.onUpdated();
573
- },
574
- beforeUnmount: function () {
575
- this.onBeforeUnmount();
576
- },
577
- unmounted: async function () {
578
- await this.$nextTick();
579
- this.onUnmounted();
580
- }
581
- };
582
- }
583
- return components;
584
- }