aview-app 1.0.2

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.

Potentially problematic release.


This version of aview-app might be problematic. Click here for more details.

Files changed (1127) hide show
  1. package/README.md +18 -0
  2. package/aardio/aardio.exe +0 -0
  3. package/aardio/config/CFG.BIN +0 -0
  4. package/aardio/config/RECENT.PROJECT.TABLE +8 -0
  5. package/aardio/config/SYS.CFG +1 -0
  6. package/aardio/config/SYS.THEME +124 -0
  7. package/aardio/config/USR.CFG +16 -0
  8. package/aardio/config/USR.THEME +124 -0
  9. package/aardio/config/intellisense/kernel.txt +634 -0
  10. package/aardio/config/intellisense/unimportant.txt +108 -0
  11. package/aardio/config/intellisense/web.layout.behavior.txt +81 -0
  12. package/aardio/config/intellisense/web.sciter.behavior.txt +94 -0
  13. package/aardio/config/intellisense/winform.txt +215 -0
  14. package/aardio/config/lang/lib.txt +210 -0
  15. package/aardio/config/themes/dark.xml +124 -0
  16. package/aardio/config/themes/light.xml +124 -0
  17. package/aardio/extensions/extlibver.table +13 -0
  18. package/aardio/extensions/ide.aardio +386 -0
  19. package/aardio/extensions/plugin/view/bbx.aardio +52 -0
  20. package/aardio/extensions/plugin/view/config.aardio +52 -0
  21. package/aardio/extensions/plugin/view/dsktip.aardio +84 -0
  22. package/aardio/extensions/plugin/view/res/content/getting-started.htm +15 -0
  23. package/aardio/extensions/plugin/view/res/images/body-back.png +0 -0
  24. package/aardio/extensions/plugin/view/res/images/loading.png +0 -0
  25. package/aardio/extensions/plugin/view/res/images/panel-back.png +0 -0
  26. package/aardio/extensions/plugin/view/res/images/panel-caption-back.png +0 -0
  27. package/aardio/extensions/plugin/view/res/start-page.htm +216 -0
  28. package/aardio/extensions/plugin/view/startPage.aardio +329 -0
  29. package/aardio/extensions/plugin/view/startPage.aardio.plugin +329 -0
  30. package/aardio/extensions/res/app.ico +0 -0
  31. package/aardio/extensions/trigger/before-publish.aardio +57 -0
  32. package/aardio/extensions/trigger/copyCodeAsHtml.aardio +26 -0
  33. package/aardio/extensions/trigger/default.aproj +10 -0
  34. package/aardio/extensions/trigger/edit-default.aardio +71 -0
  35. package/aardio/extensions/trigger/edit.aardio +83 -0
  36. package/aardio/extensions/trigger/gotoFile.aardio +1 -0
  37. package/aardio/extensions/trigger/init.aardio +17 -0
  38. package/aardio/extensions/trigger/lib/config.aardio +8 -0
  39. package/aardio/extensions/trigger/openProject.aardio +39 -0
  40. package/aardio/extensions/trigger/publish-website.aardio +168 -0
  41. package/aardio/extensions/trigger/publish.aardio +386 -0
  42. package/aardio/extensions/trigger/res/config/publish.table +5 -0
  43. package/aardio/extensions/wizard/files/console.aardio +5 -0
  44. package/aardio/extensions/wizard/files/default.main.aardio +8 -0
  45. package/aardio/extensions/wizard/files/layout-blank.aardio +231 -0
  46. package/aardio/extensions/wizard/files/layout.aardio +15 -0
  47. package/aardio/extensions/wizard/files/webform-blank.aardio +84 -0
  48. package/aardio/extensions/wizard/files/webform.aardio +17 -0
  49. package/aardio/extensions/wizard/files/website.main.aardio +14 -0
  50. package/aardio/extensions/wizard/files/winform.aardio +9 -0
  51. package/aardio/extensions/wizard/project/win/default.aproj +4 -0
  52. package/aardio/extensions/wizard/project2/.build//351/253/230/347/272/247/351/200/211/351/241/271/345/215/241.Manifest.xml +60 -0
  53. package/aardio/extensions/wizard/project2/.build//351/253/230/347/272/247/351/200/211/351/241/271/345/215/241.init.aardio +2 -0
  54. package/aardio/extensions/wizard/project2/.build//351/253/230/347/272/247/351/200/211/351/241/271/345/215/241.main.aardio +6 -0
  55. package/aardio/extensions/wizard/project2/forms/console/console.aardio +16 -0
  56. package/aardio/extensions/wizard/project2/forms/console/service.aardio +41 -0
  57. package/aardio/extensions/wizard/project2/forms/console.aardio +90 -0
  58. package/aardio/extensions/wizard/project2/forms/fastcgi.aardio +168 -0
  59. package/aardio/extensions/wizard/project2/forms/images/console.jpg +0 -0
  60. package/aardio/extensions/wizard/project2/forms/images/electron.jpg +0 -0
  61. package/aardio/extensions/wizard/project2/forms/images/htmlayout.jpg +0 -0
  62. package/aardio/extensions/wizard/project2/forms/images/winform.jpg +0 -0
  63. package/aardio/extensions/wizard/project2/forms/plus/first.aardio +17 -0
  64. package/aardio/extensions/wizard/project2/forms/plus/icon.aardio +122 -0
  65. package/aardio/extensions/wizard/project2/forms/plus/images/1.jpg +0 -0
  66. package/aardio/extensions/wizard/project2/forms/plus/tabs.aardio +119 -0
  67. package/aardio/extensions/wizard/project2/forms/plus.aardio +94 -0
  68. package/aardio/extensions/wizard/project2/forms/web/chromeApp.aardio +62 -0
  69. package/aardio/extensions/wizard/project2/forms/web/electron.aardio +19 -0
  70. package/aardio/extensions/wizard/project2/forms/web/htmlayout.aardio +16 -0
  71. package/aardio/extensions/wizard/project2/forms/web/sciter.aardio +16 -0
  72. package/aardio/extensions/wizard/project2/forms/web/view.aardio +67 -0
  73. package/aardio/extensions/wizard/project2/forms/web/webform.aardio +60 -0
  74. package/aardio/extensions/wizard/project2/forms/web/webkit.aardio +49 -0
  75. package/aardio/extensions/wizard/project2/forms/web.aardio +105 -0
  76. package/aardio/extensions/wizard/project2/forms/website.aardio +175 -0
  77. package/aardio/extensions/wizard/project2/forms/winform/bat.aardio +46 -0
  78. package/aardio/extensions/wizard/project2/forms/winform/blank.aardio +20 -0
  79. package/aardio/extensions/wizard/project2/forms/winform/demo.aardio +20 -0
  80. package/aardio/extensions/wizard/project2/forms/winform/images/paint.png +0 -0
  81. package/aardio/extensions/wizard/project2/forms/winform/java.aardio +67 -0
  82. package/aardio/extensions/wizard/project2/forms/winform/paint.aardio +21 -0
  83. package/aardio/extensions/wizard/project2/forms/winform/python.aardio +101 -0
  84. package/aardio/extensions/wizard/project2/forms/winform.aardio +82 -0
  85. package/aardio/extensions/wizard/project2/lib/style/_.aardio +4 -0
  86. package/aardio/extensions/wizard/project2/lib/style/main.aardio +47 -0
  87. package/aardio/extensions/wizard/project2/main.aardio +248 -0
  88. package/aardio/extensions/wizard/project2/res/icons/console.png +0 -0
  89. package/aardio/extensions/wizard/project2/res/icons/fastcgi.png +0 -0
  90. package/aardio/extensions/wizard/project2/res/icons/plus.png +0 -0
  91. package/aardio/extensions/wizard/project2/res/icons/web.png +0 -0
  92. package/aardio/extensions/wizard/project2/res/icons/website.png +0 -0
  93. package/aardio/extensions/wizard/project2/res/icons/winform.png +0 -0
  94. package/aardio/extensions/wizard/project2/res/images/bg.gif +0 -0
  95. package/aardio/extensions/wizard/project2/res/images/check-active1.png +0 -0
  96. package/aardio/extensions/wizard/project2/res/images/check-disabled1.png +0 -0
  97. package/aardio/extensions/wizard/project2/res/images/check-hover1.png +0 -0
  98. package/aardio/extensions/wizard/project2/res/images/check1.png +0 -0
  99. package/aardio/extensions/wizard/project2/res/images/main-nav-bg-active.png +0 -0
  100. package/aardio/extensions/wizard/project2/res/images/main-nav-bg-hover.png +0 -0
  101. package/aardio/extensions/wizard/project2/res/images/main-nav-bg.png +0 -0
  102. package/aardio/extensions/wizard/project2/res/images/uncheck-active1.png +0 -0
  103. package/aardio/extensions/wizard/project2/res/images/uncheck-disabled1.png +0 -0
  104. package/aardio/extensions/wizard/project2/res/images/uncheck-hover1.png +0 -0
  105. package/aardio/extensions/wizard/project2/res/images/uncheck1.png +0 -0
  106. package/aardio/extensions/wizard/project2/template/bat/bat/bat.aardio +33 -0
  107. package/aardio/extensions/wizard/project2/template/bat/bat/bat2.aardio +17 -0
  108. package/aardio/extensions/wizard/project2/template/bat/default.aproj +9 -0
  109. package/aardio/extensions/wizard/project2/template/bat/lib/config.aardio +17 -0
  110. package/aardio/extensions/wizard/project2/template/bat/lib/style.aardio +72 -0
  111. package/aardio/extensions/wizard/project2/template/bat/main.aardio +52 -0
  112. package/aardio/extensions/wizard/project2/template/console/default.aproj +5 -0
  113. package/aardio/extensions/wizard/project2/template/console/lib/config.aardio +17 -0
  114. package/aardio/extensions/wizard/project2/template/console/main.aardio +23 -0
  115. package/aardio/extensions/wizard/project2/template/fastcgi/.build/default.Manifest.xml +60 -0
  116. package/aardio/extensions/wizard/project2/template/fastcgi/.build/default.init.aardio +4 -0
  117. package/aardio/extensions/wizard/project2/template/fastcgi/.build/default.main.aardio +6 -0
  118. package/aardio/extensions/wizard/project2/template/fastcgi/default.aproj +5 -0
  119. package/aardio/extensions/wizard/project2/template/fastcgi/lib/config.aardio +17 -0
  120. package/aardio/extensions/wizard/project2/template/fastcgi/main.aardio +77 -0
  121. package/aardio/extensions/wizard/project2/template/java/default/default.aproj +14 -0
  122. package/aardio/extensions/wizard/project2/template/java/default/java/aardio/sample/HelloworldApp.class +0 -0
  123. package/aardio/extensions/wizard/project2/template/java/default/java/aardio/sample/HelloworldApp.java +33 -0
  124. package/aardio/extensions/wizard/project2/template/java/default/lib/config.aardio +17 -0
  125. package/aardio/extensions/wizard/project2/template/java/default/main.aardio +33 -0
  126. package/aardio/extensions/wizard/project2/template/java/default/res/py.aardio +12 -0
  127. package/aardio/extensions/wizard/project2/template/paint/default.aproj +6 -0
  128. package/aardio/extensions/wizard/project2/template/paint/lib/config.aardio +17 -0
  129. package/aardio/extensions/wizard/project2/template/paint/lib/fonts/.res/painttest.ttf +0 -0
  130. package/aardio/extensions/wizard/project2/template/paint/lib/fonts/painttest.aardio +10 -0
  131. package/aardio/extensions/wizard/project2/template/paint/lib/style.aardio +46 -0
  132. package/aardio/extensions/wizard/project2/template/paint/main.aardio +125 -0
  133. package/aardio/extensions/wizard/project2/template/plus/1/default.aproj +20 -0
  134. package/aardio/extensions/wizard/project2/template/plus/1/forms/page1.aardio +89 -0
  135. package/aardio/extensions/wizard/project2/template/plus/1/forms/page2.aardio +70 -0
  136. package/aardio/extensions/wizard/project2/template/plus/1/forms/page3.aardio +21 -0
  137. package/aardio/extensions/wizard/project2/template/plus/1/include/images/bg.gif +0 -0
  138. package/aardio/extensions/wizard/project2/template/plus/1/include//350/257/264/346/230/216.txt +1 -0
  139. package/aardio/extensions/wizard/project2/template/plus/1/main.aardio +69 -0
  140. package/aardio/extensions/wizard/project2/template/plus/1/res/images/bg.png +0 -0
  141. package/aardio/extensions/wizard/project2/template/plus/1/res/images/excel.png +0 -0
  142. package/aardio/extensions/wizard/project2/template/plus/1/res/images/feed.png +0 -0
  143. package/aardio/extensions/wizard/project2/template/plus/1/res/images/main-nav-bg-active.png +0 -0
  144. package/aardio/extensions/wizard/project2/template/plus/1/res/images/main-nav-bg-hover.png +0 -0
  145. package/aardio/extensions/wizard/project2/template/plus/1/res/images/main-nav-bg.png +0 -0
  146. package/aardio/extensions/wizard/project2/template/plus/1/res/images/ppt.png +0 -0
  147. package/aardio/extensions/wizard/project2/template/plus/1/res/images/rss.png +0 -0
  148. package/aardio/extensions/wizard/project2/template/plus/icon/default.aproj +12 -0
  149. package/aardio/extensions/wizard/project2/template/plus/icon/forms/main/frmPage1.aardio +11 -0
  150. package/aardio/extensions/wizard/project2/template/plus/icon/forms/main/frmPage2.aardio +9 -0
  151. package/aardio/extensions/wizard/project2/template/plus/icon/forms/main/frmPage3.aardio +9 -0
  152. package/aardio/extensions/wizard/project2/template/plus/icon/lib/config.aardio +17 -0
  153. package/aardio/extensions/wizard/project2/template/plus/icon/main.aardio +52 -0
  154. package/aardio/extensions/wizard/project2/template/plus/tabs/default.aproj +11 -0
  155. package/aardio/extensions/wizard/project2/template/plus/tabs/dlg/first.aardio +20 -0
  156. package/aardio/extensions/wizard/project2/template/plus/tabs/dlg/help.aardio +25 -0
  157. package/aardio/extensions/wizard/project2/template/plus/tabs/dlg/hotkey.aardio +20 -0
  158. package/aardio/extensions/wizard/project2/template/plus/tabs/dlg/setting.aardio +20 -0
  159. package/aardio/extensions/wizard/project2/template/plus/tabs/lib/config.aardio +17 -0
  160. package/aardio/extensions/wizard/project2/template/plus/tabs/lib/style.aardio +72 -0
  161. package/aardio/extensions/wizard/project2/template/plus/tabs/main.aardio +50 -0
  162. package/aardio/extensions/wizard/project2/template/python/process/default.aproj +14 -0
  163. package/aardio/extensions/wizard/project2/template/python/process/lib/config.aardio +17 -0
  164. package/aardio/extensions/wizard/project2/template/python/process/lib/py3/export/aardio.aardio +17 -0
  165. package/aardio/extensions/wizard/project2/template/python/process/main.aardio +36 -0
  166. package/aardio/extensions/wizard/project2/template/python/process/py/pyMain.py +17 -0
  167. package/aardio/extensions/wizard/project2/template/python/process/res/py.aardio +12 -0
  168. package/aardio/extensions/wizard/project2/template/python/process/tools/pip.aardio +15 -0
  169. package/aardio/extensions/wizard/project2/template/python/py2/default.aproj +9 -0
  170. package/aardio/extensions/wizard/project2/template/python/py2/lib/config.aardio +17 -0
  171. package/aardio/extensions/wizard/project2/template/python/py2/lib/py2/export/aardio.aardio +16 -0
  172. package/aardio/extensions/wizard/project2/template/python/py2/main.aardio +19 -0
  173. package/aardio/extensions/wizard/project2/template/python/py2/py/pyMain.py +14 -0
  174. package/aardio/extensions/wizard/project2/template/python/py3/default.aproj +12 -0
  175. package/aardio/extensions/wizard/project2/template/python/py3/lib/config.aardio +17 -0
  176. package/aardio/extensions/wizard/project2/template/python/py3/lib/py3/export/aardio.aardio +17 -0
  177. package/aardio/extensions/wizard/project2/template/python/py3/main.aardio +20 -0
  178. package/aardio/extensions/wizard/project2/template/python/py3/py/pyMain.py +15 -0
  179. package/aardio/extensions/wizard/project2/template/python/py3/tools/pip.aardio +28 -0
  180. package/aardio/extensions/wizard/project2/template/service/.build/default.init.aardio +4 -0
  181. package/aardio/extensions/wizard/project2/template/service/default.aproj +5 -0
  182. package/aardio/extensions/wizard/project2/template/service/lib/config.aardio +17 -0
  183. package/aardio/extensions/wizard/project2/template/service/lib/service/threads/_.aardio +35 -0
  184. package/aardio/extensions/wizard/project2/template/service/main.aardio +68 -0
  185. package/aardio/extensions/wizard/project2/template/web/chrome-app/default.aproj +10 -0
  186. package/aardio/extensions/wizard/project2/template/web/chrome-app/lib/config.aardio +17 -0
  187. package/aardio/extensions/wizard/project2/template/web/chrome-app/main.aardio +22 -0
  188. package/aardio/extensions/wizard/project2/template/web/chrome-app/web/index.html +15 -0
  189. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/.yarnrc +1 -0
  190. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/package.json +45 -0
  191. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/public/favicon.ico +0 -0
  192. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/public/index.html +33 -0
  193. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/App.css +20 -0
  194. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/App.test.tsx +9 -0
  195. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/App.tsx +37 -0
  196. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/Counter.tsx +40 -0
  197. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/index.css +11 -0
  198. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/index.tsx +26 -0
  199. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/react-app-env.d.ts +1 -0
  200. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/reportWebVitals.ts +15 -0
  201. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/setupTests.ts +5 -0
  202. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/store/index.ts +11 -0
  203. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/store/useCounterController.ts +39 -0
  204. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/src/store/useUserController.ts +24 -0
  205. package/aardio/extensions/wizard/project2/template/web/chrome-app/web.src/tsconfig.json +26 -0
  206. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/default.aproj +16 -0
  207. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/lib/config.aardio +17 -0
  208. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/main.aardio +12 -0
  209. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/web/api/index.aardio +20 -0
  210. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/web/htmx.js +1 -0
  211. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/web/images/loading.gif +0 -0
  212. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/web/index.css +34 -0
  213. package/aardio/extensions/wizard/project2/template/web/chrome-htmx/web/index.html +65 -0
  214. package/aardio/extensions/wizard/project2/template/web/chrome-vue/default.aproj +10 -0
  215. package/aardio/extensions/wizard/project2/template/web/chrome-vue/lib/config.aardio +17 -0
  216. package/aardio/extensions/wizard/project2/template/web/chrome-vue/main.aardio +21 -0
  217. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web/index.html +15 -0
  218. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/.vscode/extensions.json +3 -0
  219. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/README.md +40 -0
  220. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/env.d.ts +1 -0
  221. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/index.html +13 -0
  222. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/package.json +25 -0
  223. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/public/favicon.ico +0 -0
  224. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/App.vue +58 -0
  225. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/assets/base.css +74 -0
  226. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/assets/logo.svg +1 -0
  227. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/assets/main.css +35 -0
  228. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/HelloWorld.vue +40 -0
  229. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/TheWelcome.vue +86 -0
  230. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/WelcomeItem.vue +86 -0
  231. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/icons/IconCommunity.vue +7 -0
  232. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/icons/IconDocumentation.vue +7 -0
  233. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/icons/IconEcosystem.vue +7 -0
  234. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/icons/IconSupport.vue +7 -0
  235. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/components/icons/IconTooling.vue +19 -0
  236. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/src/main.ts +6 -0
  237. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/tsconfig.config.json +8 -0
  238. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/tsconfig.json +16 -0
  239. package/aardio/extensions/wizard/project2/template/web/chrome-vue/web.src/vite.config.ts +20 -0
  240. package/aardio/extensions/wizard/project2/template/web/electron/default.aproj +8 -0
  241. package/aardio/extensions/wizard/project2/template/web/electron/electron.app/.aardio-ignore +6 -0
  242. package/aardio/extensions/wizard/project2/template/web/electron/electron.app/.yarnrc +1 -0
  243. package/aardio/extensions/wizard/project2/template/web/electron/electron.app/app.ico +0 -0
  244. package/aardio/extensions/wizard/project2/template/web/electron/forms/remoteDebugging.aardio +122 -0
  245. package/aardio/extensions/wizard/project2/template/web/electron/lib/config.aardio +22 -0
  246. package/aardio/extensions/wizard/project2/template/web/electron/main.aardio +80 -0
  247. package/aardio/extensions/wizard/project2/template/web/electron/res/.vscode/settings.json +3 -0
  248. package/aardio/extensions/wizard/project2/template/web/electron/res/index.aardio +78 -0
  249. package/aardio/extensions/wizard/project2/template/web/layoutUi/default.aproj +20 -0
  250. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/images/begin.png +0 -0
  251. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/images/document.png +0 -0
  252. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/images/download.png +0 -0
  253. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/images/home.png +0 -0
  254. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/images/logo.png +0 -0
  255. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/tabs.css +123 -0
  256. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/ui.css +67 -0
  257. package/aardio/extensions/wizard/project2/template/web/layoutUi/layout/ui.html +49 -0
  258. package/aardio/extensions/wizard/project2/template/web/layoutUi/main.aardio +26 -0
  259. package/aardio/extensions/wizard/project2/template/web/sciter/default.aproj +21 -0
  260. package/aardio/extensions/wizard/project2/template/web/sciter/layout/hooks.js +2 -0
  261. package/aardio/extensions/wizard/project2/template/web/sciter/layout/images/begin.png +0 -0
  262. package/aardio/extensions/wizard/project2/template/web/sciter/layout/images/document.png +0 -0
  263. package/aardio/extensions/wizard/project2/template/web/sciter/layout/images/download.png +0 -0
  264. package/aardio/extensions/wizard/project2/template/web/sciter/layout/images/home.png +0 -0
  265. package/aardio/extensions/wizard/project2/template/web/sciter/layout/images/logo.png +0 -0
  266. package/aardio/extensions/wizard/project2/template/web/sciter/layout/preact.js +2 -0
  267. package/aardio/extensions/wizard/project2/template/web/sciter/layout/tabs.css +123 -0
  268. package/aardio/extensions/wizard/project2/template/web/sciter/layout/ui.css +67 -0
  269. package/aardio/extensions/wizard/project2/template/web/sciter/layout/ui.html +100 -0
  270. package/aardio/extensions/wizard/project2/template/web/sciter/main.aardio +31 -0
  271. package/aardio/extensions/wizard/project2/template/web/view/default.aproj +10 -0
  272. package/aardio/extensions/wizard/project2/template/web/view/lib/config.aardio +17 -0
  273. package/aardio/extensions/wizard/project2/template/web/view/main.aardio +30 -0
  274. package/aardio/extensions/wizard/project2/template/web/view/web/index.html +15 -0
  275. package/aardio/extensions/wizard/project2/template/web/view/web.src/.yarnrc +1 -0
  276. package/aardio/extensions/wizard/project2/template/web/view/web.src/package.json +44 -0
  277. package/aardio/extensions/wizard/project2/template/web/view/web.src/public/favicon.ico +0 -0
  278. package/aardio/extensions/wizard/project2/template/web/view/web.src/public/index.html +33 -0
  279. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/App.css +20 -0
  280. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/App.test.tsx +9 -0
  281. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/App.tsx +37 -0
  282. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/Counter.tsx +39 -0
  283. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/aardio/index.d.ts +7 -0
  284. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/index.css +9 -0
  285. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/index.tsx +26 -0
  286. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/react-app-env.d.ts +1 -0
  287. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/reportWebVitals.ts +15 -0
  288. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/setupTests.ts +5 -0
  289. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/store/index.ts +11 -0
  290. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/store/useCounterController.ts +39 -0
  291. package/aardio/extensions/wizard/project2/template/web/view/web.src/src/store/useUserController.ts +24 -0
  292. package/aardio/extensions/wizard/project2/template/web/view/web.src/tsconfig.json +26 -0
  293. package/aardio/extensions/wizard/project2/template/web/view-htmx/default.aproj +16 -0
  294. package/aardio/extensions/wizard/project2/template/web/view-htmx/lib/config.aardio +17 -0
  295. package/aardio/extensions/wizard/project2/template/web/view-htmx/main.aardio +21 -0
  296. package/aardio/extensions/wizard/project2/template/web/view-htmx/web/api/index.aardio +20 -0
  297. package/aardio/extensions/wizard/project2/template/web/view-htmx/web/htmx.js +1 -0
  298. package/aardio/extensions/wizard/project2/template/web/view-htmx/web/images/loading.gif +0 -0
  299. package/aardio/extensions/wizard/project2/template/web/view-htmx/web/index.css +34 -0
  300. package/aardio/extensions/wizard/project2/template/web/view-htmx/web/index.html +64 -0
  301. package/aardio/extensions/wizard/project2/template/web/view-vue/.build/default.Manifest.xml +60 -0
  302. package/aardio/extensions/wizard/project2/template/web/view-vue/.build/default.init.aardio +2 -0
  303. package/aardio/extensions/wizard/project2/template/web/view-vue/.build/default.main.aardio +6 -0
  304. package/aardio/extensions/wizard/project2/template/web/view-vue/default.aproj +10 -0
  305. package/aardio/extensions/wizard/project2/template/web/view-vue/lib/config.aardio +17 -0
  306. package/aardio/extensions/wizard/project2/template/web/view-vue/main.aardio +29 -0
  307. package/aardio/extensions/wizard/project2/template/web/view-vue/web/index.html +15 -0
  308. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/.vscode/extensions.json +3 -0
  309. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/README.md +40 -0
  310. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/aardio/index.d.ts +7 -0
  311. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/env.d.ts +1 -0
  312. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/index.html +13 -0
  313. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/package.json +24 -0
  314. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/public/favicon.ico +0 -0
  315. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/App.vue +57 -0
  316. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/assets/base.css +74 -0
  317. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/assets/logo.svg +1 -0
  318. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/assets/main.css +35 -0
  319. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/HelloWorld.vue +40 -0
  320. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/TheWelcome.vue +86 -0
  321. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/WelcomeItem.vue +86 -0
  322. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/icons/IconCommunity.vue +7 -0
  323. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/icons/IconDocumentation.vue +7 -0
  324. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/icons/IconEcosystem.vue +7 -0
  325. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/icons/IconSupport.vue +7 -0
  326. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/components/icons/IconTooling.vue +19 -0
  327. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/src/main.ts +6 -0
  328. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/tsconfig.config.json +8 -0
  329. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/tsconfig.json +16 -0
  330. package/aardio/extensions/wizard/project2/template/web/view-vue/web.src/vite.config.ts +20 -0
  331. package/aardio/extensions/wizard/project2/template/web/webform/default.aproj +19 -0
  332. package/aardio/extensions/wizard/project2/template/web/webform/forms/main/frmPage2.aardio +9 -0
  333. package/aardio/extensions/wizard/project2/template/web/webform/forms/main/frmPage3.aardio +9 -0
  334. package/aardio/extensions/wizard/project2/template/web/webform/forms/main/webPage.aardio +32 -0
  335. package/aardio/extensions/wizard/project2/template/web/webform/lib/config.aardio +17 -0
  336. package/aardio/extensions/wizard/project2/template/web/webform/main.aardio +52 -0
  337. package/aardio/extensions/wizard/project2/template/web/webform/web/api/index.aardio +21 -0
  338. package/aardio/extensions/wizard/project2/template/web/webform/web/htmx.js +1 -0
  339. package/aardio/extensions/wizard/project2/template/web/webform/web/images/loading.gif +0 -0
  340. package/aardio/extensions/wizard/project2/template/web/webform/web/index.css +34 -0
  341. package/aardio/extensions/wizard/project2/template/web/webform/web/index.html +65 -0
  342. package/aardio/extensions/wizard/project2/template/web/webkit/default.aproj +16 -0
  343. package/aardio/extensions/wizard/project2/template/web/webkit/forms/main/frmPage2.aardio +9 -0
  344. package/aardio/extensions/wizard/project2/template/web/webkit/forms/main/frmPage3.aardio +9 -0
  345. package/aardio/extensions/wizard/project2/template/web/webkit/forms/main/webPage.aardio +28 -0
  346. package/aardio/extensions/wizard/project2/template/web/webkit/lib/config.aardio +17 -0
  347. package/aardio/extensions/wizard/project2/template/web/webkit/main.aardio +52 -0
  348. package/aardio/extensions/wizard/project2/template/web/webkit/web/index.html +11 -0
  349. package/aardio/extensions/wizard/project2/template/web/webkit/web/index.js +173 -0
  350. package/aardio/extensions/wizard/project2/template/web/webkit/web.src/.babelrc +20 -0
  351. package/aardio/extensions/wizard/project2/template/web/webkit/web.src/package.json +25 -0
  352. package/aardio/extensions/wizard/project2/template/web/webkit/web.src/src/App.css +27 -0
  353. package/aardio/extensions/wizard/project2/template/web/webkit/web.src/src/App.jsx +49 -0
  354. package/aardio/extensions/wizard/project2/template/web/webkit/web.src/src/index.js +7 -0
  355. package/aardio/extensions/wizard/project2/template/web/webkit/web.src/webpack.config.js +43 -0
  356. package/aardio/extensions/wizard/project2/template/web-server/default.aproj +18 -0
  357. package/aardio/extensions/wizard/project2/template/web-server/lib/config.aardio +17 -0
  358. package/aardio/extensions/wizard/project2/template/web-server/main.aardio +343 -0
  359. package/aardio/extensions/wizard/project2/template/website/.build/default.main.aardio +9 -0
  360. package/aardio/extensions/wizard/project2/template/website/default.aproj +8 -0
  361. package/aardio/extensions/wizard/project2/template/website/help/main.aardio +58 -0
  362. package/aardio/extensions/wizard/project2/template/website/lib/config.aardio +17 -0
  363. package/aardio/extensions/wizard/project2/template/website/main.aardio +59 -0
  364. package/aardio/extensions/wizard/project2/template/winform/default.aproj +18 -0
  365. package/aardio/extensions/wizard/project2/template/winform/dlg/login/loading.aardio +17 -0
  366. package/aardio/extensions/wizard/project2/template/winform/dlg/login/login.aardio +51 -0
  367. package/aardio/extensions/wizard/project2/template/winform/dlg/login/reg.aardio +20 -0
  368. package/aardio/extensions/wizard/project2/template/winform/dlg/main/tabs1.aardio +52 -0
  369. package/aardio/extensions/wizard/project2/template/winform/dlg/main/tabs2.aardio +51 -0
  370. package/aardio/extensions/wizard/project2/template/winform/dlg/main/tabs3.aardio +55 -0
  371. package/aardio/extensions/wizard/project2/template/winform/dlg/main/userInfo.aardio +40 -0
  372. package/aardio/extensions/wizard/project2/template/winform/lib/config.aardio +17 -0
  373. package/aardio/extensions/wizard/project2/template/winform/main.aardio +18 -0
  374. package/aardio/extensions/wizard/project2/template/winform-blank/default.aproj +6 -0
  375. package/aardio/extensions/wizard/project2/template/winform-blank/lib/config.aardio +17 -0
  376. package/aardio/extensions/wizard/project2/template/winform-blank/main.aardio +8 -0
  377. package/aardio/extensions/wizard/project2//345/267/245/347/250/213/345/220/221/345/257/274.aproj +71 -0
  378. package/aardio/lib/System/Array.aardio +7 -0
  379. package/aardio/lib/System/Collections/_.aardio +6 -0
  380. package/aardio/lib/System/Console.aardio +7 -0
  381. package/aardio/lib/System/Data/_.aardio +7 -0
  382. package/aardio/lib/System/Delegate.aardio +7 -0
  383. package/aardio/lib/System/Drawing/_.aardio +6 -0
  384. package/aardio/lib/System/IO/Compression/ZipFile.aardio +11 -0
  385. package/aardio/lib/System/IO/_.aardio +6 -0
  386. package/aardio/lib/System/Text/_.aardio +6 -0
  387. package/aardio/lib/System/Type.aardio +9 -0
  388. package/aardio/lib/System/ValueTuple.aardio +33 -0
  389. package/aardio/lib/System/Windows/Automation/_.aardio +74 -0
  390. package/aardio/lib/System/Windows/Forms/_.aardio +26 -0
  391. package/aardio/lib/System/Windows/_.aardio +6 -0
  392. package/aardio/lib/System/_.aardio +6 -0
  393. package/aardio/lib/access/_.aardio +713 -0
  394. package/aardio/lib/access/oleDb12.aardio +26 -0
  395. package/aardio/lib/access/query.aardio +19 -0
  396. package/aardio/lib/bencoding/_.aardio +2 -0
  397. package/aardio/lib/bencoding/decoder.aardio +131 -0
  398. package/aardio/lib/bencoding/encoder.aardio +61 -0
  399. package/aardio/lib/bencoding/magnet.aardio +24 -0
  400. package/aardio/lib/chrome/app.aardio +581 -0
  401. package/aardio/lib/chrome/dev.aardio +152 -0
  402. package/aardio/lib/chrome/driver.aardio +743 -0
  403. package/aardio/lib/chrome/edge.aardio +35 -0
  404. package/aardio/lib/chrome/edge.history.aardio +57 -0
  405. package/aardio/lib/chrome/extensions.aardio +33 -0
  406. package/aardio/lib/chrome/history.aardio +70 -0
  407. package/aardio/lib/chrome/path.aardio +140 -0
  408. package/aardio/lib/chrome/remote.aardio +75 -0
  409. package/aardio/lib/chrome/time.aardio +17 -0
  410. package/aardio/lib/color/_.aardio +210 -0
  411. package/aardio/lib/color/table.aardio +374 -0
  412. package/aardio/lib/color/view.aardio +244 -0
  413. package/aardio/lib/color/viewForm.aardio +342 -0
  414. package/aardio/lib/com/activeX.aardio +275 -0
  415. package/aardio/lib/com/cad/_.aardio +403 -0
  416. package/aardio/lib/com/excel.aardio +180 -0
  417. package/aardio/lib/com/interface/IApplicationActivationManager.aardio +31 -0
  418. package/aardio/lib/com/interface/IApplicationAssociationRegistration.aardio +359 -0
  419. package/aardio/lib/com/interface/IAudioMeterInformation.aardio +17 -0
  420. package/aardio/lib/com/interface/IClassFactory.aardio +26 -0
  421. package/aardio/lib/com/interface/IClassFactory2.aardio +47 -0
  422. package/aardio/lib/com/interface/IComThreadingInfo.aardio +37 -0
  423. package/aardio/lib/com/interface/IDirect3D9.aardio +188 -0
  424. package/aardio/lib/com/interface/IEnumCodePage.aardio +14 -0
  425. package/aardio/lib/com/interface/IEnumGUID.aardio +26 -0
  426. package/aardio/lib/com/interface/IEnumShellItems.aardio +29 -0
  427. package/aardio/lib/com/interface/IFileDialog.aardio +101 -0
  428. package/aardio/lib/com/interface/IFileOpenDialog.aardio +97 -0
  429. package/aardio/lib/com/interface/IFileSaveDialog.aardio +22 -0
  430. package/aardio/lib/com/interface/IKsPropertySet.aardio +17 -0
  431. package/aardio/lib/com/interface/IModalWindow.aardio +13 -0
  432. package/aardio/lib/com/interface/IMultiLanguage2.aardio +285 -0
  433. package/aardio/lib/com/interface/IOleControl.aardio +41 -0
  434. package/aardio/lib/com/interface/IOleWindow.aardio +29 -0
  435. package/aardio/lib/com/interface/IPersist.aardio +12 -0
  436. package/aardio/lib/com/interface/IPersistFile.aardio +18 -0
  437. package/aardio/lib/com/interface/IPersistStreamInit.aardio +56 -0
  438. package/aardio/lib/com/interface/IPicture.aardio +187 -0
  439. package/aardio/lib/com/interface/IServiceProvider.aardio +16 -0
  440. package/aardio/lib/com/interface/IShellItem.aardio +48 -0
  441. package/aardio/lib/com/interface/IShellItemArray.aardio +20 -0
  442. package/aardio/lib/com/interface/IShellLink.aardio +35 -0
  443. package/aardio/lib/com/interface/IStream.aardio +26 -0
  444. package/aardio/lib/com/interface/ITaskbarList3.aardio +62 -0
  445. package/aardio/lib/com/interface/ITfInputProcessorProfileMgr.aardio +75 -0
  446. package/aardio/lib/com/interface/ITfInputProcessorProfiles.aardio +125 -0
  447. package/aardio/lib/com/interface/IUniformResourceLocator.aardio +18 -0
  448. package/aardio/lib/com/interface/IViewObject2.aardio +38 -0
  449. package/aardio/lib/com/interface/_.aardio +231 -0
  450. package/aardio/lib/com/lite.aardio +183 -0
  451. package/aardio/lib/com/oleDb.aardio +57 -0
  452. package/aardio/lib/com/picture.aardio +235 -0
  453. package/aardio/lib/com/sapi/voice.aardio +178 -0
  454. package/aardio/lib/com/shell.aardio +69 -0
  455. package/aardio/lib/com/smtp.aardio +286 -0
  456. package/aardio/lib/com/tlbDoc.aardio +145 -0
  457. package/aardio/lib/com/typeAttrs.aardio +35 -0
  458. package/aardio/lib/com/wmi.aardio +208 -0
  459. package/aardio/lib/console/_.aardio +917 -0
  460. package/aardio/lib/console/int.aardio +55 -0
  461. package/aardio/lib/console/progress.aardio +141 -0
  462. package/aardio/lib/console/wine.aardio +393 -0
  463. package/aardio/lib/coroutine/_.aardio +46 -0
  464. package/aardio/lib/crypt/_.aardio +919 -0
  465. package/aardio/lib/crypt/aes.aardio +58 -0
  466. package/aardio/lib/crypt/bin.aardio +68 -0
  467. package/aardio/lib/crypt/des.aardio +55 -0
  468. package/aardio/lib/crypt/hash.aardio +110 -0
  469. package/aardio/lib/crypt/hmac.aardio +64 -0
  470. package/aardio/lib/crypt/jwt.aardio +78 -0
  471. package/aardio/lib/crypt/protectData.aardio +51 -0
  472. package/aardio/lib/crypt/provParam.aardio +32 -0
  473. package/aardio/lib/crypt/rc4.aardio +32 -0
  474. package/aardio/lib/crypt/rsa.aardio +244 -0
  475. package/aardio/lib/debug/_.aardio +172 -0
  476. package/aardio/lib/debug/log.aardio +144 -0
  477. package/aardio/lib/dotNet/.res/Aardio.InteropServices/CCodeCompiler.cs +202 -0
  478. package/aardio/lib/dotNet/.res/Aardio.InteropServices/DispatchableDelegate.cs +362 -0
  479. package/aardio/lib/dotNet/.res/Aardio.InteropServices/Utility.cs +1469 -0
  480. package/aardio/lib/dotNet/.res/Aardio.InteropServices.csproj +51 -0
  481. package/aardio/lib/dotNet/.res/Aardio.PS/Aardio.PS.DynObject.cs +194 -0
  482. package/aardio/lib/dotNet/.res/Aardio.PS/Aardio.PS.cs +446 -0
  483. package/aardio/lib/dotNet/.res/Properties/AssemblyInfo.cs +20 -0
  484. package/aardio/lib/dotNet/.res/bin/Release/Aardio.InteropServices.dll +0 -0
  485. package/aardio/lib/dotNet/_.aardio +258 -0
  486. package/aardio/lib/dotNet/appDomain.aardio +967 -0
  487. package/aardio/lib/dotNet/audio/.res/Audio.dll +0 -0
  488. package/aardio/lib/dotNet/audio/.res/NAudio.dll +0 -0
  489. package/aardio/lib/dotNet/audio/.res/build.aardio +206 -0
  490. package/aardio/lib/dotNet/audio/_.aardio +94 -0
  491. package/aardio/lib/dotNet/clr.aardio +210 -0
  492. package/aardio/lib/dotNet/interface/IAppDomainSetup.aardio +31 -0
  493. package/aardio/lib/dotNet/interface/ICLRMetaHost.aardio +17 -0
  494. package/aardio/lib/dotNet/interface/ICLRRuntimeHost.aardio +35 -0
  495. package/aardio/lib/dotNet/interface/ICLRRuntimeInfo.aardio +23 -0
  496. package/aardio/lib/dotNet/interface/ICorRuntimeHost.aardio +30 -0
  497. package/aardio/lib/dotNet/nuget.aardio +67 -0
  498. package/aardio/lib/dotNet/ocr/.res/ocr.dll +0 -0
  499. package/aardio/lib/dotNet/ocr/_.aardio +275 -0
  500. package/aardio/lib/dotNet/ps.aardio +177 -0
  501. package/aardio/lib/dotNet/uwpCompiler.aardio +61 -0
  502. package/aardio/lib/dotNet/v2.aardio +19 -0
  503. package/aardio/lib/dotNet/v4.aardio +57 -0
  504. package/aardio/lib/dotNet/version.aardio +74 -0
  505. package/aardio/lib/electron/app/.build/aardio/index.d.ts +173 -0
  506. package/aardio/lib/electron/app/.build/aardio/index.js +636 -0
  507. package/aardio/lib/electron/app/.build/main.aardio +298 -0
  508. package/aardio/lib/electron/app/.build/ws.asar +0 -0
  509. package/aardio/lib/electron/app/_.aardio +731 -0
  510. package/aardio/lib/electron/runtime/_.aardio +50 -0
  511. package/aardio/lib/fastcgi/_.aardio +2 -0
  512. package/aardio/lib/fastcgi/client/_.aardio +807 -0
  513. package/aardio/lib/fastcgi/iisInstall.aardio +124 -0
  514. package/aardio/lib/fastcgi/nameValuePairs.aardio +93 -0
  515. package/aardio/lib/fastcgi/stream.aardio +100 -0
  516. package/aardio/lib/fonts/.res/FontAwesome.ttf +0 -0
  517. package/aardio/lib/fonts/.res/FontAwesomeDlg.ttf +0 -0
  518. package/aardio/lib/fonts/_.aardio +71 -0
  519. package/aardio/lib/fonts/fontAwesome.aardio +14 -0
  520. package/aardio/lib/fonts/fontAwesomeDlg.aardio +10 -0
  521. package/aardio/lib/fonts/httpFamily.aardio +21 -0
  522. package/aardio/lib/fsys/_.aardio +538 -0
  523. package/aardio/lib/fsys/acl.aardio +116 -0
  524. package/aardio/lib/fsys/asar/reader.aardio +346 -0
  525. package/aardio/lib/fsys/asar/writer.aardio +241 -0
  526. package/aardio/lib/fsys/batch.aardio +99 -0
  527. package/aardio/lib/fsys/cab/_.aardio +123 -0
  528. package/aardio/lib/fsys/cab/maker.aardio +105 -0
  529. package/aardio/lib/fsys/codepage.aardio +141 -0
  530. package/aardio/lib/fsys/config.aardio +69 -0
  531. package/aardio/lib/fsys/cookies.aardio +214 -0
  532. package/aardio/lib/fsys/dirWatcher.aardio +135 -0
  533. package/aardio/lib/fsys/dlg.aardio +214 -0
  534. package/aardio/lib/fsys/dlg.dir.aardio +24 -0
  535. package/aardio/lib/fsys/drives.aardio +58 -0
  536. package/aardio/lib/fsys/environment.aardio +58 -0
  537. package/aardio/lib/fsys/file.aardio +490 -0
  538. package/aardio/lib/fsys/fileInfo.aardio +68 -0
  539. package/aardio/lib/fsys/hardlink.aardio +26 -0
  540. package/aardio/lib/fsys/hosts.aardio +80 -0
  541. package/aardio/lib/fsys/info.aardio +40 -0
  542. package/aardio/lib/fsys/ini.aardio +176 -0
  543. package/aardio/lib/fsys/knownFolder.aardio +30 -0
  544. package/aardio/lib/fsys/lnk.aardio +404 -0
  545. package/aardio/lib/fsys/localfile.aardio +77 -0
  546. package/aardio/lib/fsys/log.aardio +150 -0
  547. package/aardio/lib/fsys/media.aardio +199 -0
  548. package/aardio/lib/fsys/mime.aardio +115 -0
  549. package/aardio/lib/fsys/mmap/_.aardio +233 -0
  550. package/aardio/lib/fsys/multipartFormData.aardio +188 -0
  551. package/aardio/lib/fsys/namedPipe.aardio +95 -0
  552. package/aardio/lib/fsys/partFile.aardio +186 -0
  553. package/aardio/lib/fsys/path.aardio +179 -0
  554. package/aardio/lib/fsys/remove.aardio +31 -0
  555. package/aardio/lib/fsys/res.aardio +149 -0
  556. package/aardio/lib/fsys/safepath.aardio +36 -0
  557. package/aardio/lib/fsys/shortcut.aardio +55 -0
  558. package/aardio/lib/fsys/size.aardio +39 -0
  559. package/aardio/lib/fsys/stream.aardio +276 -0
  560. package/aardio/lib/fsys/streamInfo.aardio +47 -0
  561. package/aardio/lib/fsys/table.aardio +102 -0
  562. package/aardio/lib/fsys/tar.aardio +181 -0
  563. package/aardio/lib/fsys/time.aardio +149 -0
  564. package/aardio/lib/fsys/untar.aardio +190 -0
  565. package/aardio/lib/fsys/update/app.aardio +171 -0
  566. package/aardio/lib/fsys/update/dlMgr.aardio +402 -0
  567. package/aardio/lib/fsys/update/maker.aardio +168 -0
  568. package/aardio/lib/fsys/update/simpleMain.aardio +292 -0
  569. package/aardio/lib/fsys/url.aardio +71 -0
  570. package/aardio/lib/fsys/version.aardio +157 -0
  571. package/aardio/lib/fsys/watch.aardio +76 -0
  572. package/aardio/lib/fsys/wow64.aardio +43 -0
  573. package/aardio/lib/gdi/_.aardio +846 -0
  574. package/aardio/lib/gdip/.res/feather.dll +0 -0
  575. package/aardio/lib/gdip/.res//347/274/226/350/257/221.aardio +14 -0
  576. package/aardio/lib/gdip/_.aardio +1004 -0
  577. package/aardio/lib/gdip/bitmap.aardio +497 -0
  578. package/aardio/lib/gdip/core.aardio +137 -0
  579. package/aardio/lib/gdip/exifTags.aardio +192 -0
  580. package/aardio/lib/gdip/family.aardio +91 -0
  581. package/aardio/lib/gdip/feather.aardio +74 -0
  582. package/aardio/lib/gdip/font.aardio +130 -0
  583. package/aardio/lib/gdip/graphics.aardio +739 -0
  584. package/aardio/lib/gdip/image.aardio +610 -0
  585. package/aardio/lib/gdip/imageAttributes.aardio +143 -0
  586. package/aardio/lib/gdip/installedFontCollection.aardio +19 -0
  587. package/aardio/lib/gdip/lineBrush.aardio +114 -0
  588. package/aardio/lib/gdip/path.aardio +171 -0
  589. package/aardio/lib/gdip/pathGradientBrush.aardio +93 -0
  590. package/aardio/lib/gdip/pen.aardio +206 -0
  591. package/aardio/lib/gdip/privateFontCollection.aardio +178 -0
  592. package/aardio/lib/gdip/snap.aardio +99 -0
  593. package/aardio/lib/gdip/solidBrush.aardio +63 -0
  594. package/aardio/lib/gdip/stringformat.aardio +112 -0
  595. package/aardio/lib/gdip/textureBrush.aardio +93 -0
  596. package/aardio/lib/godking/elistbar/_.aardio +552 -0
  597. package/aardio/lib/godking/elistbar/elistbar.dll +0 -0
  598. package/aardio/lib/golang/.res/aardio/aardio.go +44 -0
  599. package/aardio/lib/golang/.res/aardio/jsonrpc/jsonrpc.go +27 -0
  600. package/aardio/lib/golang/.res/aardio/jsonrpc/tcp/tcp.go +28 -0
  601. package/aardio/lib/golang/_.aardio +234 -0
  602. package/aardio/lib/golang/string.aardio +22 -0
  603. package/aardio/lib/ide/command.aardio +226 -0
  604. package/aardio/lib/ide/customCtrl.aardio +9 -0
  605. package/aardio/lib/ide/debug.aardio +61 -0
  606. package/aardio/lib/ide/doc/_.aardio +361 -0
  607. package/aardio/lib/ide/doc/markdown.aardio +164 -0
  608. package/aardio/lib/inet/_.aardio +446 -0
  609. package/aardio/lib/inet/adapter.aardio +175 -0
  610. package/aardio/lib/inet/adapterInfo.aardio +180 -0
  611. package/aardio/lib/inet/conn.aardio +80 -0
  612. package/aardio/lib/inet/connView.aardio +22 -0
  613. package/aardio/lib/inet/downBox.aardio +247 -0
  614. package/aardio/lib/inet/errorMessage.aardio +106 -0
  615. package/aardio/lib/inet/file.aardio +62 -0
  616. package/aardio/lib/inet/ftp.aardio +315 -0
  617. package/aardio/lib/inet/http.aardio +885 -0
  618. package/aardio/lib/inet/httpFile.aardio +312 -0
  619. package/aardio/lib/inet/httpStatusCode.aardio +143 -0
  620. package/aardio/lib/inet/installer.aardio +76 -0
  621. package/aardio/lib/inet/mac.aardio +49 -0
  622. package/aardio/lib/inet/ras.aardio +433 -0
  623. package/aardio/lib/inet/stat.aardio +78 -0
  624. package/aardio/lib/inet/tls.aardio +28 -0
  625. package/aardio/lib/inet/url.aardio +334 -0
  626. package/aardio/lib/inet/urlpart.aardio +41 -0
  627. package/aardio/lib/inet/util.aardio +54 -0
  628. package/aardio/lib/inet/whttp.aardio +988 -0
  629. package/aardio/lib/java/.build/main.aardio +10 -0
  630. package/aardio/lib/java/.interopServices/build.aardio +372 -0
  631. package/aardio/lib/java/.interopServices/utility.class +0 -0
  632. package/aardio/lib/java/.interopServices/utility.java +354 -0
  633. package/aardio/lib/java/_.aardio +1006 -0
  634. package/aardio/lib/java/class.aardio +295 -0
  635. package/aardio/lib/java/jdk/v6ora.aardio +23 -0
  636. package/aardio/lib/java/jdk/v8.aardio +53 -0
  637. package/aardio/lib/java/jdk/v8ora.aardio +23 -0
  638. package/aardio/lib/java/jre/v8.aardio +53 -0
  639. package/aardio/lib/java/jre/v8ora.aardio +37 -0
  640. package/aardio/lib/java/object.aardio +218 -0
  641. package/aardio/lib/java/path.aardio +451 -0
  642. package/aardio/lib/key/VK.aardio +641 -0
  643. package/aardio/lib/key/_.aardio +303 -0
  644. package/aardio/lib/key/hook.aardio +76 -0
  645. package/aardio/lib/key/hotkey/_.aardio +540 -0
  646. package/aardio/lib/key/ime.aardio +221 -0
  647. package/aardio/lib/key/ime.stateBar.aardio +346 -0
  648. package/aardio/lib/mouse/_.aardio +359 -0
  649. package/aardio/lib/mouse/cursor.aardio +43 -0
  650. package/aardio/lib/mouse/draw.aardio +314 -0
  651. package/aardio/lib/mouse/highlighter.aardio +193 -0
  652. package/aardio/lib/mouse/hook.aardio +79 -0
  653. package/aardio/lib/mouse/screenArea.aardio +102 -0
  654. package/aardio/lib/nodeJs/_.aardio +593 -0
  655. package/aardio/lib/preload/_.aardio +253 -0
  656. package/aardio/lib/preload/com.aardio +319 -0
  657. package/aardio/lib/preload/io.aardio +107 -0
  658. package/aardio/lib/preload/math.aardio +91 -0
  659. package/aardio/lib/preload/raw.aardio +105 -0
  660. package/aardio/lib/preload/string.aardio +224 -0
  661. package/aardio/lib/preload/struct.aardio +194 -0
  662. package/aardio/lib/preload/table.aardio +388 -0
  663. package/aardio/lib/preload/thread.aardio +341 -0
  664. package/aardio/lib/process/_.aardio +1510 -0
  665. package/aardio/lib/process/admin.aardio +110 -0
  666. package/aardio/lib/process/apiHook/_.aardio +141 -0
  667. package/aardio/lib/process/atom.aardio +32 -0
  668. package/aardio/lib/process/batch.aardio +89 -0
  669. package/aardio/lib/process/cache.aardio +95 -0
  670. package/aardio/lib/process/chm.aardio +14 -0
  671. package/aardio/lib/process/cmdline.aardio +42 -0
  672. package/aardio/lib/process/code.aardio +128 -0
  673. package/aardio/lib/process/command.aardio +226 -0
  674. package/aardio/lib/process/control.aardio +29 -0
  675. package/aardio/lib/process/curl/_.aardio +91 -0
  676. package/aardio/lib/process/ffmpeg.aardio +63 -0
  677. package/aardio/lib/process/file.aardio +118 -0
  678. package/aardio/lib/process/gcc/_.aardio +236 -0
  679. package/aardio/lib/process/gfortran/_.aardio +71 -0
  680. package/aardio/lib/process/heap.aardio +59 -0
  681. package/aardio/lib/process/imageView.aardio +13 -0
  682. package/aardio/lib/process/job/limitKill.aardio +107 -0
  683. package/aardio/lib/process/mutex.aardio +105 -0
  684. package/aardio/lib/process/php/5.2.aardio +7 -0
  685. package/aardio/lib/process/php/5.6.aardio +10 -0
  686. package/aardio/lib/process/php/_.aardio +119 -0
  687. package/aardio/lib/process/php/cgi.aardio +82 -0
  688. package/aardio/lib/process/popen.aardio +562 -0
  689. package/aardio/lib/process/python/.py/jsonrpyc.py +405 -0
  690. package/aardio/lib/process/python/_.aardio +380 -0
  691. package/aardio/lib/process/python/pip.aardio +143 -0
  692. package/aardio/lib/process/rpc/jsonClient.aardio +285 -0
  693. package/aardio/lib/process/rpc/jsonServer.aardio +293 -0
  694. package/aardio/lib/process/rpc/tcpJsonClient.aardio +36 -0
  695. package/aardio/lib/process/ruby/_.aardio +196 -0
  696. package/aardio/lib/process/ruby/cgi.aardio +76 -0
  697. package/aardio/lib/process/ruby/simpleHttpServer.aardio +44 -0
  698. package/aardio/lib/process/rundll.aardio +44 -0
  699. package/aardio/lib/process/rust/_.aardio +176 -0
  700. package/aardio/lib/process/temp.aardio +116 -0
  701. package/aardio/lib/process/token.aardio +122 -0
  702. package/aardio/lib/process/usage.aardio +74 -0
  703. package/aardio/lib/process/vswhere.aardio +63 -0
  704. package/aardio/lib/process/wmi.aardio +65 -0
  705. package/aardio/lib/process/wow64.aardio +34 -0
  706. package/aardio/lib/protobuf/message.aardio +348 -0
  707. package/aardio/lib/protobuf/parser/_.aardio +362 -0
  708. package/aardio/lib/protobuf/parser/lex.aardio +221 -0
  709. package/aardio/lib/protobuf/parser/message.aardio +315 -0
  710. package/aardio/lib/protobuf/parser/template.aardio +159 -0
  711. package/aardio/lib/protobuf/reader/inputString.aardio +58 -0
  712. package/aardio/lib/protobuf/type/bool.aardio +29 -0
  713. package/aardio/lib/protobuf/type/bytes.aardio +28 -0
  714. package/aardio/lib/protobuf/type/double.aardio +24 -0
  715. package/aardio/lib/protobuf/type/enum.aardio +29 -0
  716. package/aardio/lib/protobuf/type/fixed32.aardio +23 -0
  717. package/aardio/lib/protobuf/type/fixed64.aardio +24 -0
  718. package/aardio/lib/protobuf/type/float.aardio +25 -0
  719. package/aardio/lib/protobuf/type/int32.aardio +29 -0
  720. package/aardio/lib/protobuf/type/int64.aardio +30 -0
  721. package/aardio/lib/protobuf/type/map.aardio +84 -0
  722. package/aardio/lib/protobuf/type/scalar.aardio +12 -0
  723. package/aardio/lib/protobuf/type/sfixed32.aardio +22 -0
  724. package/aardio/lib/protobuf/type/sfixed64.aardio +22 -0
  725. package/aardio/lib/protobuf/type/sint32.aardio +41 -0
  726. package/aardio/lib/protobuf/type/sint64.aardio +41 -0
  727. package/aardio/lib/protobuf/type/string.aardio +28 -0
  728. package/aardio/lib/protobuf/type/uint32.aardio +28 -0
  729. package/aardio/lib/protobuf/type/uint64.aardio +28 -0
  730. package/aardio/lib/raw/apiHook.aardio +122 -0
  731. package/aardio/lib/raw/argsPointer/.res/argsPointer.def +4 -0
  732. package/aardio/lib/raw/argsPointer/.res/argsPointer.dll +0 -0
  733. package/aardio/lib/raw/argsPointer/.res/build.aardio +15 -0
  734. package/aardio/lib/raw/argsPointer/_.aardio +144 -0
  735. package/aardio/lib/raw/asm/opCode.aardio +101 -0
  736. package/aardio/lib/raw/cdeclParameter.aardio +121 -0
  737. package/aardio/lib/raw/fasm/.res/FASM.DLL +0 -0
  738. package/aardio/lib/raw/fasm/.res/LICENSE.TXT +37 -0
  739. package/aardio/lib/raw/fasm/_.aardio +138 -0
  740. package/aardio/lib/raw/functions.aardio +78 -0
  741. package/aardio/lib/raw/interface.aardio +83 -0
  742. package/aardio/lib/raw/jsonCall.aardio +18 -0
  743. package/aardio/lib/raw/memory.aardio +86 -0
  744. package/aardio/lib/raw/pefile.aardio +479 -0
  745. package/aardio/lib/raw/struct.aardio +116 -0
  746. package/aardio/lib/service/_.aardio +742 -0
  747. package/aardio/lib/service/simpleTool.aardio +73 -0
  748. package/aardio/lib/sessionHandler/default.aardio +106 -0
  749. package/aardio/lib/sevenZip/lzma/.res/LzmaUtil.dll +0 -0
  750. package/aardio/lib/sevenZip/lzma/_.aardio +139 -0
  751. package/aardio/lib/sevenZip/lzma/httpFile.aardio +157 -0
  752. package/aardio/lib/sevenZip/lzma/tar.aardio +25 -0
  753. package/aardio/lib/sqlServer/_.aardio +632 -0
  754. package/aardio/lib/sqlite/.res/sqlite3.dll +0 -0
  755. package/aardio/lib/sqlite/_.aardio +6 -0
  756. package/aardio/lib/sqlite/backup.aardio +88 -0
  757. package/aardio/lib/sqlite/base.aardio +967 -0
  758. package/aardio/lib/string/aasdl.aardio +35 -0
  759. package/aardio/lib/string/builder.aardio +212 -0
  760. package/aardio/lib/string/chineseNumber.aardio +216 -0
  761. package/aardio/lib/string/cmdline.aardio +154 -0
  762. package/aardio/lib/string/conv/.res/data.txt +405 -0
  763. package/aardio/lib/string/conv/_.aardio +89 -0
  764. package/aardio/lib/string/conv/pinyin.aardio +65 -0
  765. package/aardio/lib/string/database.aardio +182 -0
  766. package/aardio/lib/string/encoding.aardio +54 -0
  767. package/aardio/lib/string/fontRanges.aardio +117 -0
  768. package/aardio/lib/string/fuzzyMatching.aardio +98 -0
  769. package/aardio/lib/string/glob.aardio +79 -0
  770. package/aardio/lib/string/html.aardio +145 -0
  771. package/aardio/lib/string/intSegments.aardio +52 -0
  772. package/aardio/lib/string/keywords/.res/keywords.dll +0 -0
  773. package/aardio/lib/string/keywords/_.aardio +74 -0
  774. package/aardio/lib/string/list.aardio +266 -0
  775. package/aardio/lib/string/lrc.aardio +209 -0
  776. package/aardio/lib/string/markdown/.res/autolink.c +297 -0
  777. package/aardio/lib/string/markdown/.res/autolink.h +51 -0
  778. package/aardio/lib/string/markdown/.res/buffer.c +234 -0
  779. package/aardio/lib/string/markdown/.res/buffer.h +96 -0
  780. package/aardio/lib/string/markdown/.res/houdini.h +37 -0
  781. package/aardio/lib/string/markdown/.res/houdini_href_e.c +108 -0
  782. package/aardio/lib/string/markdown/.res/houdini_html_e.c +84 -0
  783. package/aardio/lib/string/markdown/.res/html.c +635 -0
  784. package/aardio/lib/string/markdown/.res/html.h +77 -0
  785. package/aardio/lib/string/markdown/.res/html_blocks.h +206 -0
  786. package/aardio/lib/string/markdown/.res/html_smartypants.c +389 -0
  787. package/aardio/lib/string/markdown/.res/markdown.c +2556 -0
  788. package/aardio/lib/string/markdown/.res/markdown.h +138 -0
  789. package/aardio/lib/string/markdown/.res/stack.c +81 -0
  790. package/aardio/lib/string/markdown/.res/stack.h +29 -0
  791. package/aardio/lib/string/markdown/.res/sundown.dll +0 -0
  792. package/aardio/lib/string/markdown/.res//347/224/237/346/210/220DLL.aardio +19 -0
  793. package/aardio/lib/string/markdown/_.aardio +231 -0
  794. package/aardio/lib/string/padding.aardio +54 -0
  795. package/aardio/lib/string/regex.aardio +43 -0
  796. package/aardio/lib/string/res.aardio +20 -0
  797. package/aardio/lib/string/stream.aardio +89 -0
  798. package/aardio/lib/string/template.aardio +21 -0
  799. package/aardio/lib/string/xml.aardio +573 -0
  800. package/aardio/lib/string/xxtea.aardio +103 -0
  801. package/aardio/lib/sys/_.aardio +71 -0
  802. package/aardio/lib/sys/acl.aardio +232 -0
  803. package/aardio/lib/sys/audioVolume/.res/Release/volumeCtrl2.dll +0 -0
  804. package/aardio/lib/sys/audioVolume/.res/stdafx.cpp +8 -0
  805. package/aardio/lib/sys/audioVolume/.res/stdafx.h +16 -0
  806. package/aardio/lib/sys/audioVolume/.res/targetver.h +8 -0
  807. package/aardio/lib/sys/audioVolume/.res/volumeCtrl2.cpp +446 -0
  808. package/aardio/lib/sys/audioVolume/.res/volumeCtrl2.h +52 -0
  809. package/aardio/lib/sys/audioVolume/.res/volumeCtrl2.vcxproj +93 -0
  810. package/aardio/lib/sys/audioVolume/_.aardio +102 -0
  811. package/aardio/lib/sys/baseBoard.aardio +78 -0
  812. package/aardio/lib/sys/comPort.aardio +56 -0
  813. package/aardio/lib/sys/cp210x.aardio +54 -0
  814. package/aardio/lib/sys/cpu.aardio +151 -0
  815. package/aardio/lib/sys/ddcci.aardio +198 -0
  816. package/aardio/lib/sys/device.aardio +217 -0
  817. package/aardio/lib/sys/display.aardio +49 -0
  818. package/aardio/lib/sys/displaySwitch.aardio +27 -0
  819. package/aardio/lib/sys/hd.aardio +152 -0
  820. package/aardio/lib/sys/info.aardio +40 -0
  821. package/aardio/lib/sys/input.aardio +92 -0
  822. package/aardio/lib/sys/installed.aardio +107 -0
  823. package/aardio/lib/sys/locale/_.aardio +103 -0
  824. package/aardio/lib/sys/locale/abbrevNames.aardio +148 -0
  825. package/aardio/lib/sys/mem.aardio +64 -0
  826. package/aardio/lib/sys/midiOut.aardio +415 -0
  827. package/aardio/lib/sys/monitor.aardio +216 -0
  828. package/aardio/lib/sys/mpPreference.aardio +159 -0
  829. package/aardio/lib/sys/networkCards.aardio +84 -0
  830. package/aardio/lib/sys/networkIsolation.aardio +160 -0
  831. package/aardio/lib/sys/power/_.aardio +180 -0
  832. package/aardio/lib/sys/power/notification.aardio +91 -0
  833. package/aardio/lib/sys/printer.aardio +271 -0
  834. package/aardio/lib/sys/qfe.aardio +14 -0
  835. package/aardio/lib/sys/reg.aardio +40 -0
  836. package/aardio/lib/sys/run.aardio +32 -0
  837. package/aardio/lib/sys/runAsTask.aardio +87 -0
  838. package/aardio/lib/sys/soundDevice.aardio +46 -0
  839. package/aardio/lib/sys/storage.aardio +173 -0
  840. package/aardio/lib/sys/upnp/nat.aardio +126 -0
  841. package/aardio/lib/sys/vc11.aardio +14 -0
  842. package/aardio/lib/sys/vc14.aardio +98 -0
  843. package/aardio/lib/sys/volume.aardio +134 -0
  844. package/aardio/lib/sys/wallpaper.aardio +45 -0
  845. package/aardio/lib/sys/wsa.aardio +98 -0
  846. package/aardio/lib/table/product.aardio +79 -0
  847. package/aardio/lib/table/zip.aardio +40 -0
  848. package/aardio/lib/tcc/.dll/RELICENSING +60 -0
  849. package/aardio/lib/tcc/.dll/libtcc.dll +0 -0
  850. package/aardio/lib/tcc/.dll/libtcc.h +100 -0
  851. package/aardio/lib/tcc/.res.tar.lzma +0 -0
  852. package/aardio/lib/tcc/_.aardio +311 -0
  853. package/aardio/lib/thread/apiHook.aardio +109 -0
  854. package/aardio/lib/thread/atom.aardio +27 -0
  855. package/aardio/lib/thread/cmdline.aardio +18 -0
  856. package/aardio/lib/thread/command.aardio +315 -0
  857. package/aardio/lib/thread/dlManager.aardio +211 -0
  858. package/aardio/lib/thread/event.aardio +97 -0
  859. package/aardio/lib/thread/manage.aardio +166 -0
  860. package/aardio/lib/thread/semaphore.aardio +86 -0
  861. package/aardio/lib/thread/shareHandle.aardio +49 -0
  862. package/aardio/lib/thread/table.aardio +193 -0
  863. package/aardio/lib/thread/token.aardio +58 -0
  864. package/aardio/lib/thread/works.aardio +198 -0
  865. package/aardio/lib/time/ntp.aardio +160 -0
  866. package/aardio/lib/time/ole.aardio +179 -0
  867. package/aardio/lib/time/performance.aardio +28 -0
  868. package/aardio/lib/time/timer.aardio +32 -0
  869. package/aardio/lib/time/zone.aardio +97 -0
  870. package/aardio/lib/ustring/_.aardio +305 -0
  871. package/aardio/lib/util/_.aardio +157 -0
  872. package/aardio/lib/util/metaProperty.aardio +100 -0
  873. package/aardio/lib/util/registry.aardio +46 -0
  874. package/aardio/lib/util/table.aardio +118 -0
  875. package/aardio/lib/web/_.aardio +50 -0
  876. package/aardio/lib/web/asynServer.aardio +12 -0
  877. package/aardio/lib/web/form/_.aardio +1572 -0
  878. package/aardio/lib/web/form/menu.aardio +63 -0
  879. package/aardio/lib/web/form/query.aardio +77 -0
  880. package/aardio/lib/web/form/snap.aardio +63 -0
  881. package/aardio/lib/web/form/sockpuppet.aardio +75 -0
  882. package/aardio/lib/web/form/util.aardio +194 -0
  883. package/aardio/lib/web/json.aardio +489 -0
  884. package/aardio/lib/web/layout/.res/HTMLayout.dll +0 -0
  885. package/aardio/lib/web/layout/.res/master.css +9 -0
  886. package/aardio/lib/web/layout/_.aardio +704 -0
  887. package/aardio/lib/web/layout/behavior/_.aardio +34 -0
  888. package/aardio/lib/web/layout/behavior/collapsibleByIcon.aardio +22 -0
  889. package/aardio/lib/web/layout/behavior/collapsibleList.aardio +37 -0
  890. package/aardio/lib/web/layout/behavior/dragable.aardio +71 -0
  891. package/aardio/lib/web/layout/behavior/dropdown.aardio +15 -0
  892. package/aardio/lib/web/layout/behavior/expandableList.aardio +97 -0
  893. package/aardio/lib/web/layout/behavior/grid.aardio +288 -0
  894. package/aardio/lib/web/layout/behavior/gripper.aardio +12 -0
  895. package/aardio/lib/web/layout/behavior/lightBoxDialog.aardio +76 -0
  896. package/aardio/lib/web/layout/behavior/path.aardio +14 -0
  897. package/aardio/lib/web/layout/behavior/popup.aardio +44 -0
  898. package/aardio/lib/web/layout/behavior/scroller.aardio +32 -0
  899. package/aardio/lib/web/layout/behavior/selectionBox.aardio +60 -0
  900. package/aardio/lib/web/layout/behavior/shellIcon.aardio +37 -0
  901. package/aardio/lib/web/layout/behavior/sizer.aardio +52 -0
  902. package/aardio/lib/web/layout/behavior/sortableGrid.aardio +63 -0
  903. package/aardio/lib/web/layout/behavior/splitter.aardio +134 -0
  904. package/aardio/lib/web/layout/behavior/tabs.aardio +438 -0
  905. package/aardio/lib/web/layout/behavior/windowCommand.aardio +163 -0
  906. package/aardio/lib/web/layout/behavior/windowSizer.aardio +117 -0
  907. package/aardio/lib/web/layout/debug.aardio +54 -0
  908. package/aardio/lib/web/layout/element/_.aardio +1388 -0
  909. package/aardio/lib/web/layout/element/state.aardio +133 -0
  910. package/aardio/lib/web/layout/element/style.aardio +46 -0
  911. package/aardio/lib/web/layout/event/_.aardio +1047 -0
  912. package/aardio/lib/web/layout/valueObject.aardio +402 -0
  913. package/aardio/lib/web/mshtml.aardio +233 -0
  914. package/aardio/lib/web/msxml.aardio +198 -0
  915. package/aardio/lib/web/multipartFormData.aardio +134 -0
  916. package/aardio/lib/web/nativeMessaging/_.aardio +101 -0
  917. package/aardio/lib/web/nativeMessaging/install.aardio +33 -0
  918. package/aardio/lib/web/npm/_.aardio +45 -0
  919. package/aardio/lib/web/parser.aardio +122 -0
  920. package/aardio/lib/web/rest/client.aardio +606 -0
  921. package/aardio/lib/web/rest/github.aardio +90 -0
  922. package/aardio/lib/web/rest/htmlClient.aardio +52 -0
  923. package/aardio/lib/web/rest/jsonClient.aardio +67 -0
  924. package/aardio/lib/web/rest/jsonLiteClient.aardio +67 -0
  925. package/aardio/lib/web/rest/qywx.aardio +85 -0
  926. package/aardio/lib/web/rest/smsActivate/_.aardio +266 -0
  927. package/aardio/lib/web/rest/smsActivate/countryList.aardio +206 -0
  928. package/aardio/lib/web/rest/smsActivate/serviceList.aardio +548 -0
  929. package/aardio/lib/web/rest/xmlClient.aardio +28 -0
  930. package/aardio/lib/web/rpc/externalServer.aardio +257 -0
  931. package/aardio/lib/web/rpc/jsonClient.aardio +234 -0
  932. package/aardio/lib/web/rpc/jsonServer.aardio +244 -0
  933. package/aardio/lib/web/script/_.aardio +201 -0
  934. package/aardio/lib/web/script/es5.aardio +2259 -0
  935. package/aardio/lib/web/script/json.aardio +56 -0
  936. package/aardio/lib/web/simpleServer.aardio +20 -0
  937. package/aardio/lib/web/soapClient/_.aardio +241 -0
  938. package/aardio/lib/web/soapClient/parameters.aardio +87 -0
  939. package/aardio/lib/web/socket/chrome.aardio +122 -0
  940. package/aardio/lib/web/socket/client.aardio +515 -0
  941. package/aardio/lib/web/socket/jsonClient.aardio +274 -0
  942. package/aardio/lib/web/socket/jsonServer.aardio +322 -0
  943. package/aardio/lib/web/socket/server.aardio +533 -0
  944. package/aardio/lib/web/ui/_.aardio +291 -0
  945. package/aardio/lib/web/uploadData.aardio +34 -0
  946. package/aardio/lib/web/view/.res/webview.dll +0 -0
  947. package/aardio/lib/web/view/_.aardio +635 -0
  948. package/aardio/lib/web/view/dev.aardio +146 -0
  949. package/aardio/lib/win/#DEFINE.aardio +7002 -0
  950. package/aardio/lib/win/_.aardio +1027 -0
  951. package/aardio/lib/win/animate.aardio +81 -0
  952. package/aardio/lib/win/api.aardio +57 -0
  953. package/aardio/lib/win/appBar.aardio +136 -0
  954. package/aardio/lib/win/clip/_.aardio +83 -0
  955. package/aardio/lib/win/clip/file.aardio +94 -0
  956. package/aardio/lib/win/clip/gif.aardio +30 -0
  957. package/aardio/lib/win/clip/html.aardio +128 -0
  958. package/aardio/lib/win/clip/png.aardio +47 -0
  959. package/aardio/lib/win/clip/viewer.aardio +44 -0
  960. package/aardio/lib/win/cur.aardio +58 -0
  961. package/aardio/lib/win/debounce.aardio +20 -0
  962. package/aardio/lib/win/dlg/_.aardio +7 -0
  963. package/aardio/lib/win/dlg/chineseNumber.aardio +220 -0
  964. package/aardio/lib/win/dlg/color.aardio +35 -0
  965. package/aardio/lib/win/dlg/ctrlColor.aardio +49 -0
  966. package/aardio/lib/win/dlg/findReplace.aardio +117 -0
  967. package/aardio/lib/win/dlg/font.aardio +53 -0
  968. package/aardio/lib/win/dlg/message.aardio +305 -0
  969. package/aardio/lib/win/dlg/print.aardio +99 -0
  970. package/aardio/lib/win/font.aardio +174 -0
  971. package/aardio/lib/win/guid.aardio +137 -0
  972. package/aardio/lib/win/image.aardio +204 -0
  973. package/aardio/lib/win/imageList.aardio +145 -0
  974. package/aardio/lib/win/inputBox.aardio +66 -0
  975. package/aardio/lib/win/messageFilter.aardio +44 -0
  976. package/aardio/lib/win/ole/_.aardio +25 -0
  977. package/aardio/lib/win/path.aardio +85 -0
  978. package/aardio/lib/win/property.aardio +21 -0
  979. package/aardio/lib/win/reg.aardio +530 -0
  980. package/aardio/lib/win/region/_.aardio +33 -0
  981. package/aardio/lib/win/region/bitmap/.res/build.aardio +257 -0
  982. package/aardio/lib/win/region/bitmap/.res/c.dll +0 -0
  983. package/aardio/lib/win/region/bitmap/_.aardio +108 -0
  984. package/aardio/lib/win/region/hole.aardio +56 -0
  985. package/aardio/lib/win/region/png/.res/build.aardio +41 -0
  986. package/aardio/lib/win/region/png/.res/c.dll +0 -0
  987. package/aardio/lib/win/region/png/_.aardio +108 -0
  988. package/aardio/lib/win/region/round.aardio +69 -0
  989. package/aardio/lib/win/region/transparent.aardio +38 -0
  990. package/aardio/lib/win/rt/bcp47.aardio +102 -0
  991. package/aardio/lib/win/rt/hString.aardio +105 -0
  992. package/aardio/lib/win/subclass.aardio +38 -0
  993. package/aardio/lib/win/taskScheduler.aardio +194 -0
  994. package/aardio/lib/win/timer.aardio +86 -0
  995. package/aardio/lib/win/ts/_.aardio +155 -0
  996. package/aardio/lib/win/ts/changeNotification.aardio +56 -0
  997. package/aardio/lib/win/ui/_.aardio +1897 -0
  998. package/aardio/lib/win/ui/accelerator.aardio +87 -0
  999. package/aardio/lib/win/ui/atom.aardio +57 -0
  1000. package/aardio/lib/win/ui/background.aardio +204 -0
  1001. package/aardio/lib/win/ui/ctrl/_.aardio +193 -0
  1002. package/aardio/lib/win/ui/ctrl/atlax.aardio +125 -0
  1003. package/aardio/lib/win/ui/ctrl/bk.aardio +191 -0
  1004. package/aardio/lib/win/ui/ctrl/bkplus.aardio +306 -0
  1005. package/aardio/lib/win/ui/ctrl/button.aardio +348 -0
  1006. package/aardio/lib/win/ui/ctrl/calendar.aardio +135 -0
  1007. package/aardio/lib/win/ui/ctrl/checklist.aardio +33 -0
  1008. package/aardio/lib/win/ui/ctrl/close.aardio +62 -0
  1009. package/aardio/lib/win/ui/ctrl/combobox.aardio +343 -0
  1010. package/aardio/lib/win/ui/ctrl/custom.aardio +159 -0
  1011. package/aardio/lib/win/ui/ctrl/datetimepick.aardio +185 -0
  1012. package/aardio/lib/win/ui/ctrl/edit.aardio +671 -0
  1013. package/aardio/lib/win/ui/ctrl/hotkey.aardio +126 -0
  1014. package/aardio/lib/win/ui/ctrl/ipaddress.aardio +134 -0
  1015. package/aardio/lib/win/ui/ctrl/listbox.aardio +323 -0
  1016. package/aardio/lib/win/ui/ctrl/listview.aardio +1642 -0
  1017. package/aardio/lib/win/ui/ctrl/metaProperty/_.aardio +1220 -0
  1018. package/aardio/lib/win/ui/ctrl/pick/.res/color.cur +0 -0
  1019. package/aardio/lib/win/ui/ctrl/pick/.res/color.png +0 -0
  1020. package/aardio/lib/win/ui/ctrl/pick/_.aardio +1010 -0
  1021. package/aardio/lib/win/ui/ctrl/picturebox.aardio +183 -0
  1022. package/aardio/lib/win/ui/ctrl/plus.aardio +2086 -0
  1023. package/aardio/lib/win/ui/ctrl/progress.aardio +149 -0
  1024. package/aardio/lib/win/ui/ctrl/richedit.aardio +916 -0
  1025. package/aardio/lib/win/ui/ctrl/scrollbar.aardio +153 -0
  1026. package/aardio/lib/win/ui/ctrl/spin.aardio +216 -0
  1027. package/aardio/lib/win/ui/ctrl/splitter.aardio +261 -0
  1028. package/aardio/lib/win/ui/ctrl/static.aardio +167 -0
  1029. package/aardio/lib/win/ui/ctrl/syslink.aardio +132 -0
  1030. package/aardio/lib/win/ui/ctrl/tab.aardio +312 -0
  1031. package/aardio/lib/win/ui/ctrl/thread.aardio +86 -0
  1032. package/aardio/lib/win/ui/ctrl/trackbar.aardio +274 -0
  1033. package/aardio/lib/win/ui/ctrl/treeview.aardio +1051 -0
  1034. package/aardio/lib/win/ui/ctrl/vlistview.aardio +17 -0
  1035. package/aardio/lib/win/ui/explorer.aardio +243 -0
  1036. package/aardio/lib/win/ui/fade.aardio +65 -0
  1037. package/aardio/lib/win/ui/grid.aardio +224 -0
  1038. package/aardio/lib/win/ui/layered.aardio +189 -0
  1039. package/aardio/lib/win/ui/layeredRound.aardio +18 -0
  1040. package/aardio/lib/win/ui/listEdit.aardio +93 -0
  1041. package/aardio/lib/win/ui/listPopup.aardio +130 -0
  1042. package/aardio/lib/win/ui/localization.aardio +18 -0
  1043. package/aardio/lib/win/ui/mask.aardio +51 -0
  1044. package/aardio/lib/win/ui/menu.aardio +646 -0
  1045. package/aardio/lib/win/ui/minmax.aardio +133 -0
  1046. package/aardio/lib/win/ui/orphanPlus.aardio +62 -0
  1047. package/aardio/lib/win/ui/resizeBorder.aardio +75 -0
  1048. package/aardio/lib/win/ui/scrollbar.aardio +121 -0
  1049. package/aardio/lib/win/ui/shadow.aardio +274 -0
  1050. package/aardio/lib/win/ui/simpleWindow.aardio +124 -0
  1051. package/aardio/lib/win/ui/simpleWindow2.aardio +84 -0
  1052. package/aardio/lib/win/ui/simpleWindow3.aardio +45 -0
  1053. package/aardio/lib/win/ui/statusbar.aardio +185 -0
  1054. package/aardio/lib/win/ui/tabs.aardio +1312 -0
  1055. package/aardio/lib/win/ui/toolbar.aardio +415 -0
  1056. package/aardio/lib/win/ui/tooltip.aardio +490 -0
  1057. package/aardio/lib/win/ui/tracker.aardio +289 -0
  1058. package/aardio/lib/win/util/autoComplete.aardio +34 -0
  1059. package/aardio/lib/win/util/changeNotification.aardio +196 -0
  1060. package/aardio/lib/win/util/desktop.aardio +123 -0
  1061. package/aardio/lib/win/util/deviceNotification.aardio +217 -0
  1062. package/aardio/lib/win/util/lyric.aardio +111 -0
  1063. package/aardio/lib/win/util/popup.aardio +98 -0
  1064. package/aardio/lib/win/util/round.aardio +8 -0
  1065. package/aardio/lib/win/util/savePosition.aardio +51 -0
  1066. package/aardio/lib/win/util/shellhook.aardio +43 -0
  1067. package/aardio/lib/win/util/tray.aardio +197 -0
  1068. package/aardio/lib/win/version.aardio +177 -0
  1069. package/aardio/lib/win/versionEx.aardio +70 -0
  1070. package/aardio/lib/winex/_.aardio +740 -0
  1071. package/aardio/lib/winex/accObject/_.aardio +287 -0
  1072. package/aardio/lib/winex/accObject/element.aardio +235 -0
  1073. package/aardio/lib/winex/caret.aardio +73 -0
  1074. package/aardio/lib/winex/ctrl/_.aardio +4 -0
  1075. package/aardio/lib/winex/ctrl/edit.aardio +44 -0
  1076. package/aardio/lib/winex/ctrl/listview.aardio +383 -0
  1077. package/aardio/lib/winex/desktop.aardio +22 -0
  1078. package/aardio/lib/winex/key.aardio +102 -0
  1079. package/aardio/lib/winex/mouse.aardio +137 -0
  1080. package/aardio/lib/winex/selection.aardio +113 -0
  1081. package/aardio/lib/winex/tooltip.aardio +88 -0
  1082. package/aardio/lib/wsock/_.aardio +794 -0
  1083. package/aardio/lib/wsock/addrInfo.aardio +74 -0
  1084. package/aardio/lib/wsock/err.aardio +115 -0
  1085. package/aardio/lib/wsock/networkChange.aardio +69 -0
  1086. package/aardio/lib/wsock/tcp/asynClient.aardio +320 -0
  1087. package/aardio/lib/wsock/tcp/asynHttpServer.aardio +898 -0
  1088. package/aardio/lib/wsock/tcp/asynServer.aardio +323 -0
  1089. package/aardio/lib/wsock/tcp/client.aardio +722 -0
  1090. package/aardio/lib/wsock/tcp/jsonClient.aardio +243 -0
  1091. package/aardio/lib/wsock/tcp/server.aardio +153 -0
  1092. package/aardio/lib/wsock/tcp/simpleHttpServer.aardio +903 -0
  1093. package/aardio/lib/wsock/tcp/socks5Client.aardio +129 -0
  1094. package/aardio/lib/wsock/udp/asynClient.aardio +62 -0
  1095. package/aardio/lib/wsock/udp/client.aardio +210 -0
  1096. package/aardio/lib/wsock/udp/ssdpClient.aardio +71 -0
  1097. package/aardio/lib/zlib/.res/zlibwapi.dll +0 -0
  1098. package/aardio/lib/zlib/_.aardio +404 -0
  1099. package/aardio/lib/zlib/httpFile.aardio +160 -0
  1100. package/aardio/lib/zlib/installer.aardio +66 -0
  1101. package/aardio/lib/zlib/unzip.aardio +261 -0
  1102. package/aardio/lib/zlib/zip.aardio +185 -0
  1103. package/aardio/project/aview/.build/default.Manifest.xml +61 -0
  1104. package/aardio/project/aview/.build/default.init.aardio +2 -0
  1105. package/aardio/project/aview/.build/default.main.aardio +6 -0
  1106. package/aardio/project/aview/.build/mp.lock +1 -0
  1107. package/aardio/project/aview/.build/update-maker.table +6 -0
  1108. package/aardio/project/aview/default.aproj +8 -0
  1109. package/aardio/project/aview/lib/aview/_.aardio +339 -0
  1110. package/aardio/project/aview/lib/aview/patch.aardio +411 -0
  1111. package/aardio/project/aview/lib/com/lite2.aardio +27 -0
  1112. package/aardio/project/aview/lib/fsys/file2.aardio +80 -0
  1113. package/aardio/project/aview/lib/fsys/update/simpleMain2.aardio +291 -0
  1114. package/aardio/project/aview/lib/key/hotkey2/_.aardio +552 -0
  1115. package/aardio/project/aview/lib/process/default.aardio +17 -0
  1116. package/aardio/project/aview/lib/process/popen2.aardio +75 -0
  1117. package/aardio/project/aview/lib/web/view2/_.aardio +706 -0
  1118. package/aardio/project/aview/lib/win/ui/menu2.aardio +154 -0
  1119. package/aardio/project/aview/main.aardio +124 -0
  1120. package/aardio/project/aview/res/env.d.ts +23 -0
  1121. package/aardio/project/aview/res/index.js +641 -0
  1122. package/aardio/project/aview/res/index.ts +1116 -0
  1123. package/aardio/project/aview/res/tsconfig.json +103 -0
  1124. package/bin/aview.js +2 -0
  1125. package/dist/node/cli.js +1 -0
  1126. package/index.js +1 -0
  1127. package/package.json +19 -0
@@ -0,0 +1,903 @@
1
+ //simpleHttpServer 服务端
2
+ import inet.url;
3
+ import wsock.tcp.server;
4
+ import thread.works;
5
+
6
+ namespace wsock.tcp;
7
+
8
+ class simpleHttpServer{
9
+ ctor(ip,port,backlog){{
10
+ if(..request && ..response && !..response.closed){
11
+ error('在响应 HTTP 请求时不应启动 HTTP 服务端\n');
12
+ }
13
+
14
+ var errMsg;
15
+ this, errMsg = ..wsock.tcp.server(ip,port,backlog);
16
+ if(!this ) return null,errMsg;
17
+
18
+ this.getUrl = function(netIp){
19
+ var ip,port = this.getLocalIp();
20
+ if(ip=="0.0.0.0"){
21
+ ip = netIp? ..wsock.tcp.client.getLocalIp() : "localhost";
22
+ }
23
+
24
+ return ..string.format("http://%s:%d",ip,port );
25
+ }
26
+
27
+ this.defalutDocument = "main.aardio";
28
+ this.threadNum = 2;
29
+ this.run = function( app ){
30
+ var works = ..thread.works( this.threadNum,
31
+ function(acceptSocket){
32
+ var socketClient = ..wsock.tcp.client(,acceptSocket);
33
+ var startRequestLine = socketClient.readTo('\r\n');
34
+ startRequestLine = startRequestLine ? ..string.splitEx(startRequestLine,"\s+",3);
35
+ if( ( #startRequestLine != 3 ) ){
36
+ socketClient.close();
37
+ return;
38
+ }
39
+
40
+ if( ! ..string.startWith(startRequestLine[3],"HTTP/") ){
41
+ socketClient.close();
42
+ return;
43
+ }
44
+
45
+ var environ = {};
46
+ with environ{
47
+ SERVER_NAME,SERVER_PORT = socketClient.getLocalIp();
48
+ REMOTE_ADDR,REMOTE_PORT = socketClient.getRemoteIp();
49
+ if(SERVER_PORT) SERVER_PORT = tostring(SERVER_PORT);
50
+ if(REMOTE_PORT) REMOTE_PORT = tostring(REMOTE_PORT);
51
+ REMOTE_HOST = REMOTE_ADDR;
52
+ REQUEST_METHOD = startRequestLine[1];
53
+ REQUEST_URI = startRequestLine[2];
54
+ SERVER_PROTOCOL = startRequestLine[3];
55
+ SERVER_SOFTWARE = "aardio server/1.0";
56
+ GATEWAY_INTERFACE = 'CGI/1.1';
57
+ DOCUMENT_ROOT = _SIMPLEHTTPSRV_DOCUMENT_ROOT;
58
+ HTTPS = "off";
59
+ REQUEST_SCHEME = "http";
60
+
61
+ if(REQUEST_URI[1]!='/'#) REQUEST_URI = "/" + REQUEST_URI;
62
+
63
+ var uri = ..string.split(REQUEST_URI,"?");
64
+ QUERY_STRING = uri[2];
65
+ PATH_INFO = uri[1];
66
+ }
67
+
68
+ environ.PATH_INFO = ..inet.url.decode(environ.PATH_INFO);
69
+ if(!environ.PATH_INFO){
70
+ socketClient.write(environ.SERVER_PROTOCOL + ' 400 Bad Request');
71
+ socketClient.close();
72
+ return;
73
+ }
74
+
75
+ environ.PATH_INFO = ..string.replace(environ.PATH_INFO,"\\","/");
76
+ environ.PATH_TRANSLATED = ..io.fullpath(..io.joinpath(_SIMPLEHTTPSRV_DOCUMENT_ROOT,_SIMPLEHTTPSRV_DOCUMENT_BASE,environ.PATH_INFO));
77
+
78
+ //检查默认文档
79
+ if(environ.PATH_INFO[#environ.PATH_INFO]=='/'#){
80
+ environ.PATH_INFO = ..io.joinpath(environ.PATH_INFO,_SIMPLEHTTPSRV_DEFAULT_DOCUMENT);
81
+ environ.PATH_TRANSLATED = ..io.fullpath(..io.joinpath(_SIMPLEHTTPSRV_DOCUMENT_ROOT,_SIMPLEHTTPSRV_DOCUMENT_BASE,environ.PATH_INFO));
82
+ }
83
+ elseif( ..io.exist(environ.PATH_TRANSLATED,0) && !..io.exist(environ.PATH_TRANSLATED,4) ){
84
+ socketClient.write(environ.SERVER_PROTOCOL + ' 301 Moved Permanently\r\nLocation: '+environ.PATH_INFO+'/\r\n\r\n');
85
+ socketClient.close();
86
+ return;
87
+ }
88
+
89
+ //设置 SCRIPT_NAME
90
+ with environ{
91
+ PATH_INFO = ..string.replace(PATH_INFO,"\\","/");
92
+ PATH_TRANSLATED = ..string.replace(PATH_TRANSLATED,"/","\\");
93
+
94
+ if( ..string.endWith(PATH_INFO,".aardio",true) ){
95
+ SCRIPT_NAME = PATH_INFO;
96
+ SCRIPT_FILENAME = PATH_TRANSLATED;
97
+ }
98
+ else {
99
+ SCRIPT_NAME = ..string.match(PATH_INFO,"(.*?\.aardio)/");
100
+ if(#SCRIPT_NAME) SCRIPT_FILENAME = ..io.fullpath(..io.joinpath(_SIMPLEHTTPSRV_DOCUMENT_ROOT,_SIMPLEHTTPSRV_DOCUMENT_BASE,SCRIPT_NAME));
101
+ }
102
+ }
103
+
104
+ var strHeaders = socketClient.readTo('\r\n\r\n');
105
+ if(!strHeaders){
106
+ socketClient.close();
107
+ return;
108
+ }
109
+
110
+ var httpHeaders = ..string.splitEx(strHeaders,"\r\n");
111
+ var lastHeaderKey;
112
+ for(i=#httpHeaders;1;-1){
113
+ var line = httpHeaders[i];
114
+ if(line[1]==' ' || line[1]=='\t'){
115
+ if(lastHeaderKey){
116
+ httpHeaders[ lastHeaderKey ] = httpHeaders[ lastHeaderKey ] ++ ..string.trimleft(line);
117
+ }
118
+ continue;
119
+ };
120
+
121
+ var h = ..string.splitEx(line,"\:\s*",2);
122
+ if( #h != 2){
123
+ ..io.stderr.write("http头错误:",line);
124
+ socketClient.close();
125
+ return;
126
+ }
127
+
128
+ h[1] = ..string.trim(h[1]); h[2] = ..string.trim(h[2]);
129
+
130
+ lastHeaderKey = ..string.lower(h[1])
131
+ httpHeaders[ lastHeaderKey ] = h[2];
132
+ environ[ "HTTP_" + ..string.replace(..string.upper(lastHeaderKey),"-","_") ] = h[2];
133
+ httpHeaders[i] = {lastHeaderKey;h[2]};
134
+ }
135
+ httpHeaders@ = { _type="object" };
136
+
137
+ with environ{
138
+ URL = PATH_INFO;
139
+ CONTENT_LENGTH = httpHeaders["content-length"];
140
+ CONTENT_TYPE = httpHeaders["content-type"];
141
+ }
142
+
143
+ var cookies = environ.HTTP_COOKIE ? ..inet.url.splitParameters(environ.HTTP_COOKIE,"\;\s*") : {};
144
+ var queryString = ..inet.url.splitParameters(environ.QUERY_STRING:"","\&\s*");
145
+ var response,request;
146
+ request = {
147
+ headers = httpHeaders;
148
+ environ = environ;
149
+ cookies = cookies;
150
+ get = queryString;
151
+ files = {};
152
+ documentRoot = environ.DOCUMENT_ROOT;
153
+ contentType = environ.CONTENT_TYPE;
154
+ contentLength = tonumber(environ.CONTENT_LENGTH:"0",10);
155
+ method = environ.REQUEST_METHOD;
156
+ protocol = environ.SERVER_PROTOCOL;
157
+ host = environ.HTTP_HOST;
158
+ serverPort = tonumber(environ.SERVER_PORT:"80",10);
159
+ remoteAddr = environ.REMOTE_ADDR;
160
+ documentBase = _SIMPLEHTTPSRV_DOCUMENT_BASE;
161
+ path = _SIMPLEHTTPSRV_DOCUMENT_BASE ? ..io.joinpath(_SIMPLEHTTPSRV_DOCUMENT_BASE,environ.PATH_INFO) : environ.PATH_INFO;
162
+ pathInfo = environ.PATH_INFO;
163
+ uri = environ.REQUEST_URI;
164
+ scheme = environ.REQUEST_SCHEME;
165
+ sessionId = cookies.aardiosessid;
166
+ createSessionId = function(){
167
+ owner.sessionId = ..crypt.md5( ..string.format("%d|%.15s|%d|%d|%d|%0.8f",tonumber(..time()),
168
+ environ.REMOTE_ADDR : environ.HTTP_USER_AGENT : "",::Kernel32.GetCurrentProcessId(),..time.tick(),1,..math.random() ) );
169
+ };
170
+ postData = function(){
171
+ if(owner._raw_stdin_data) return owner._raw_stdin_data;
172
+ if( environ.CONTENT_LENGTH ){
173
+ owner._raw_stdin_data = socketClient.read( request.contentLength );
174
+ }
175
+ return owner._raw_stdin_data;
176
+ };
177
+ postJson = function(){
178
+ if ( environ.CONTENT_TYPE && ..string.endWith(environ.CONTENT_TYPE,"/json",true) ) {
179
+ var data = owner.postData();
180
+ if(data) return ..web.json.tryParse(data);
181
+ }
182
+ };
183
+ postFileData = function(){
184
+ if(! (environ.CONTENT_TYPE && environ.CONTENT_LENGTH ) ) return;
185
+ if( owner._raw_stdin_data || owner._raw_file_data ) return owner._raw_file_data;
186
+ if ( ..string.startWith(environ.CONTENT_TYPE,"multipart/form-data",true) ) {
187
+ owner._raw_stdin_data = "";
188
+
189
+ var boundary = ..string.match(environ.CONTENT_TYPE,"boundary\s*=\s*(\S+)");
190
+ if(!boundary){
191
+ response.status = "400 Bad Request";
192
+ response.write("Missing boundary in multipart/form-data!");
193
+ response.close();
194
+ }
195
+
196
+ var tempDir = ..io.joinpath("/config/temp/",..string.match(request.host,"[^\:]+") );
197
+ if(!..io.createDir(tempDir)) error("Unable to create directory:"+tempDir,2);
198
+
199
+ var pid = ::Kernel32.GetCurrentProcessId();
200
+ var tempPathId = ..time.tick();
201
+ var tempPath = ..io.joinpath(tempDir,tempPathId)
202
+ while( ..io.exist(tempPath)){
203
+ tempPathId++;
204
+ tempPath = ..io.joinpath(tempDir,pid ++ tempPathId);
205
+ }
206
+
207
+ var file,err = ..io.open(tempPath,"w+b");
208
+ if(!file) error(..string.concat("Upload failed: ",err) ,2);
209
+
210
+ var len = request.contentLength;
211
+ var bufferSize = socketClient.bufferSize;
212
+ var outBuffer = ..raw.buffer(bufferSize);
213
+ while(
214
+ var readSize;
215
+ readSize = len ? socketClient.readBuffer(outBuffer,..math.min(len,bufferSize ));
216
+ readSize
217
+ ) {
218
+ file.writeBuffer(outBuffer,readSize);
219
+ len = len - readSize;
220
+ }
221
+
222
+
223
+ file.close();
224
+ tempPath = ..io.fullpath( tempPath );
225
+ request.tempUploadPath = tempPath;
226
+ if(tempPath) {
227
+ import fsys.multipartFormData;
228
+ owner._raw_file_data= ..fsys.multipartFormData(tempPath,boundary);
229
+ if(owner._raw_file_data) return owner._raw_file_data;
230
+ }
231
+
232
+ response.status = "400 Bad Request";
233
+ response.write("Request format is invalid: multipart/form-data!",err);
234
+ response.close();
235
+ }
236
+ };
237
+ query = function(k){
238
+ return queryString[k] || request.post[[k]];
239
+ };
240
+ }
241
+
242
+ if(!request.host){
243
+ request.host = environ.SERVER_NAME;
244
+ if( request.serverPort != 80) request.host = request.host + ":" + request.serverPort;
245
+ };
246
+ request.url = request.scheme + "://" + request.host ++ request.pathInfo;
247
+ request.path = ..string.replace(request.path,"\\","/");
248
+
249
+ if( ! request.sessionId ){ request.createSessionId(); }
250
+ var sesData,sesHandler,sesExpires;
251
+ var session;
252
+ session = {
253
+ start = function(expires){
254
+ for(name,handler in ..sessionHandler){
255
+ if( name == "default" ) continue;
256
+ if( handler[["startSession"]] ) {
257
+ sesHandler = handler;
258
+ break;
259
+ }
260
+ }
261
+ if(!sesHandler) sesHandler = ..sessionHandler.default;
262
+ sesData = sesHandler.startSession(expires);
263
+ sesExpires = expires;
264
+ };
265
+ clear = function(){
266
+ sesData = {};
267
+ if(sesHandler) sesHandler.clearSession();
268
+ else session.start();
269
+ };
270
+ save = function(){
271
+ if(sesHandler) sesHandler.saveSession(sesData,sesExpires);
272
+ };
273
+ @{
274
+ _set = function(k,v){
275
+ if(!sesHandler) session.start();
276
+
277
+ sesData[[k]] = v;
278
+ sesHandler.updateSession(sesData,k,v);
279
+ };
280
+ _get = function(k){
281
+ if(!sesHandler) session.start();
282
+
283
+ return sesData[[k]];
284
+ };
285
+ }
286
+ }
287
+
288
+
289
+ response = {
290
+ headers = {};
291
+ cookies = {};
292
+ contentType = "text/html";
293
+ ["close"] = function(continueRunning){
294
+ if(owner.closed){
295
+ if((!continueRunning) && (!response.continueRunning) )error(null);
296
+ return;
297
+ }
298
+ response.open();
299
+ socketClient.close();
300
+
301
+ session.save();
302
+ owner.closed = true;
303
+
304
+ if( request.tempUploadPath ) {
305
+ ..io.remove(request.tempUploadPath);
306
+ request.tempUploadPath = null;
307
+ }
308
+ if((!continueRunning) && (!response.continueRunning) )error(null);
309
+
310
+ }
311
+ ["open"] = function(){
312
+ if( owner._headersWritten ) return;
313
+ owner._headersWritten = true;
314
+ var postData = request.postFileData() : request.postData();
315
+
316
+ owner.status = owner.status ? ..inet.httpStatusCode.format(owner.status) : "200 OK";
317
+ owner.write(environ.SERVER_PROTOCOL," ",owner.status, '\r\n');
318
+
319
+ if( owner.preheaders ){
320
+ var h = ..web.joinHeaders(owner.preheaders);
321
+ owner.write(h);
322
+ };
323
+
324
+ owner.write("Content-Type: ",owner.contentType:"text/html");
325
+ if(owner.charset!=""){owner.write("; charset=",owner.charset : "UTF-8");}
326
+ owner.write('\r\n');
327
+
328
+ owner.headers.Connection = "close";
329
+ if(!owner.headers.Date) owner.headers.Date = tostring( ..time.gmt() );
330
+ for (k, v in owner.headers) {
331
+ if( type(v) != 'table' ){
332
+ owner.write(k, ": ", v, '\r\n');
333
+ }
334
+ else{
335
+ for(i=1;#v) owner.write(k, ": ", v[i], '\r\n');
336
+ }
337
+ }
338
+
339
+ if( owner.cookies ){
340
+ if(!owner.cookieDomain) owner.cookieDomain = ..string.match(request.host,"[^\:]+");
341
+ if(!owner.cookiePath) owner.cookiePath ="/";
342
+
343
+ var push = ..table.push;
344
+ for(k,v in owner.cookies){
345
+ if ( type(v) == type.table ) {
346
+ if( !v.value ){
347
+ owner.write("Set-Cookie:",..inet.url.encode(k)
348
+ ,"=deleted; expires=" + tostring( ..time.gmt(1)) );
349
+ }
350
+ var s = { ..inet.url.encode(tostring(v.value)) };
351
+
352
+ if(v.expires && ..time.istime(v.expires) ){
353
+ push(s,"expires=" + tostring( ..time.gmt(v.expires) ) );
354
+ }
355
+ elseif(v.maxAge){
356
+ push(s,"max-age=" + v.maxAge );
357
+ };
358
+ push(s,"domain=" + (v.domain : owner.cookieDomain) );
359
+ push(s,"path=" + (v.path : owner.cookiePath) );
360
+ if(v.httpOnly || ((v.httpOnly === null ) && owner.cookieHttpOnly)) push(s,"HttpOnly");
361
+ if(v.secure || ((v.secure === null ) && owner.cookieSecure)) push(s,"Secure");
362
+ owner.write("Set-Cookie:",..inet.url.encode(k),"=",..string.join(s,"; ") );
363
+ }
364
+ else{
365
+ if( v=="" ){
366
+ owner.write("Set-Cookie:",..inet.url.encode(k)
367
+ ,"=deleted; expires=" + tostring( ..time.gmt(1)) );
368
+ }
369
+ else{
370
+ owner.write("Set-Cookie:",..inet.url.encode(k),"=",..inet.url.encode(tostring(v)) );
371
+ owner.write('; domain=',owner.cookieDomain ,"; path=",owner.cookiePath);
372
+ }
373
+ }
374
+ owner.write('\r\n');
375
+ }
376
+ }
377
+
378
+ if( request.sessionId ){
379
+ owner.write("Set-Cookie:AARDIOSESSID=" + request.sessionId + '; domain=' + owner.cookieDomain + '; path=/; HttpOnly\r\n');
380
+ }
381
+ owner.write('\r\n');
382
+ };
383
+ flush = function(){};
384
+ writeBuffer = function(buffer,len){
385
+ if( buffer === null ) return;
386
+ if( owner.closed ) return;
387
+ if( ! owner._headersWritten ) owner.open();
388
+ socketClient.writeBuffer(buffer,len);
389
+ };
390
+ write = function(s,...){
391
+ if( s === null ) return;
392
+ if( response.closed ) return;
393
+ if( ! response._headersWritten ) response.open();
394
+
395
+ var ts = type(s);
396
+ if( ts == 'table' ){
397
+ if(s[["_struct"]]) {
398
+ if( s@[["_tostring"]] ) s = tostring(s);
399
+ }
400
+ else s = ..web.json.stringify(s,owner.jsonPrettyPrint);
401
+ }
402
+ elseif( (ts != 'string') && (ts != 'buffer') ){
403
+ s = tostring(s);
404
+ };
405
+ socketClient.write(s);
406
+ if(...===null) return;
407
+ return owner.write(...);
408
+ };
409
+ redirect = function(url,status){
410
+ owner.status = status : "302 Moved Temporarily";
411
+ if(!..inet.url.is(url,0x0/*_URLIS_URL*/)){
412
+ if(!..io.exist(request.path,4)){
413
+ var pathDoc = ..io.joinpath(request.path,_SIMPLEHTTPSRV_DEFAULT_DOCUMENT);
414
+ if( ..io.exist(request.path,0) && ( ..io.exist(pathDoc,4) ) ){
415
+ if(!..string.endWith(request.path,"/") )request.path=request.path+"/";
416
+ }
417
+ }
418
+ url=..inet.url.joinpath(request.scheme + "://" + request.host ++request.path,url);
419
+ }
420
+ owner.headers["Location"] = url;
421
+ owner.close();
422
+ };
423
+ error = function(s,...){
424
+ if( s === null ) return;
425
+ if( owner.closed ) return;
426
+ response.status = "500 Internal Server Error";
427
+ if( ! owner._headersWritten ) owner.open();
428
+
429
+ if( type(s) == type.table ) s = ..web.json.stringify(s,true);
430
+ else s = tostring(s);
431
+ socketClient.write(s);
432
+
433
+ if(...===null)return owner.close();
434
+ return owner.error(...);
435
+ };
436
+ customErrors = _SIMPLEHTTPSRV_CUSTOM_ERRORS : {};
437
+ errorStatus = function(status,msg){
438
+ var handler = response.customErrors[status];
439
+ if( handler && !response["errorStatusHandled"] ) {
440
+ response["errorStatusHandled"] = true;
441
+
442
+ if(type.isString(handler)) response.loadcode(handler);
443
+ else handler(response,request,session);
444
+ }
445
+ else{
446
+ response.status = ..inet.httpStatusCode.format(status);
447
+ response.write(msg : response.status);
448
+ }
449
+
450
+ response.close();
451
+ };
452
+ loadcode = function(path,...){
453
+ if( request.method == "OPTIONS")return;
454
+ if(!path) path = request.path;
455
+ if( ! ..fsys.path.ischild( "/",path ) ){
456
+ return response.errorStatus(403);
457
+ }
458
+
459
+ if(!..io.exist(path,4)){
460
+
461
+ var pathDoc = ..io.joinpath(path,_SIMPLEHTTPSRV_DEFAULT_DOCUMENT);
462
+ if( ..io.exist(path,0) && ( ..io.exist(pathDoc,4) ) ){
463
+ path = pathDoc;
464
+ if(!..string.endWith(request.path,"/") )request.path=request.path+"/";
465
+ }
466
+ else {
467
+ if( ! ..string.endWith(path,".aardio",true) ){
468
+ if(!_exe_write_time){
469
+ var tmWrite = ..fsys.file.lastModified(..io._exepath);
470
+ _exe_write_time = tmWrite ? tostring(tmWrite)
471
+ }
472
+
473
+ var etag = ..crypt.md5( path ++ tostring(_exe_write_time) );
474
+ if( request.headers["if-none-match"] == etag ){
475
+ return response.errorStatus(304);
476
+ }
477
+ response.headers["Etag"] = etag;
478
+
479
+ var since = request.headers["if-modified-since"];
480
+ if( since ){
481
+ since = ..time.gmt(since);
482
+ if(since>=_exe_write_time){
483
+ return response.errorStatus(304);
484
+ }
485
+ }
486
+ }
487
+
488
+ var strData = ..string.load(path);
489
+ if(!strData){
490
+ strData = ..string.load(pathDoc);
491
+ if( strData ){
492
+ path = pathDoc;
493
+ if(!..string.endWith(request.path,"/") )request.path=request.path+"/";
494
+ }
495
+ }
496
+
497
+ if(!strData){
498
+ response.headers["Etag"] = null;
499
+ return response.errorStatus(404);
500
+ }
501
+
502
+ //资源文件
503
+ if( ! ..string.endWith(path,".aardio",true) ){
504
+ response.headers["Last-Modified"] = tostring(_exe_write_time);
505
+ response.headers["Accept-Ranges"] = "none";
506
+
507
+ response.contentType = ..fsys.mime.fromFile(path);
508
+
509
+ if( request.method != "HEAD" ) response.write(strData);
510
+ return;
511
+ }
512
+
513
+ var page,err = loadcode( strData );
514
+ if(!page){
515
+ response.error(err);
516
+ return;
517
+ }
518
+
519
+ invoke(page,...,...)
520
+ return;
521
+ }
522
+ }
523
+
524
+ if( ! ..string.endWith(path,".aardio",true) ){
525
+ if(..string.cmp(path,"/" + ..io._exefile)==0 ){
526
+ return response.errorStatus(403);
527
+ }
528
+
529
+ response.contentType = ..fsys.mime.fromFile(path);
530
+ var file = ..fsys.file(path,"rb");
531
+ var tmWrite = file.lastModified();
532
+ var contentSize = file.size(1);
533
+ var rangeBegin,rangeEnd = 0,contentSize-1;
534
+ file.close();
535
+
536
+ var etag = ..crypt.md5( path ++ tostring(tmWrite) ) + "-" + ..string.hex( tostring(contentSize),"");
537
+ if( request.headers["if-none-match"] == etag ){
538
+ return response.errorStatus(304);
539
+ }
540
+ response.headers["Etag"] = etag;
541
+
542
+ var since = request.headers["if-modified-since"];
543
+ if( since ){
544
+ since = ..time.gmt(since);
545
+ if(since>=tmWrite){
546
+ return response.errorStatus(304);
547
+ }
548
+ }
549
+ response.headers["Last-Modified"] = tostring(tmWrite);
550
+ response.headers["Accept-Ranges"] = "bytes";
551
+
552
+ var range = request.headers.range;
553
+ if(range){
554
+ var rangeMatch,rangeSine;;
555
+ var rangeTest = request.headers["if-range"];
556
+ if(rangeTest){
557
+ rangeMatch = ..string.match(rangeTest,'"(.+)"');
558
+ if(!rangeMatch) rangeMatch = rangeTest;
559
+ }
560
+ if(!rangeMatch) rangeMatch = request.headers["if-match"];
561
+ if(!rangeSine) rangeSine = request.headers["if-unmodified-since"] || request.headers["unless-modified-since"];
562
+ if(rangeSine) rangeSine = ..time.gmt(rangeSine);
563
+ if( ( !rangeMatch || rangeMatch == etag ) && ( ! rangeSine || ( rangeSine >= tmWrite ) ) ){
564
+ var b,e = ..string.match(range,"bytes\s*=\s*(\d*)\-(\d*)");
565
+ if(e===null) e = rangeEnd;
566
+ b = tonumber(b);
567
+ e = tonumber(e);
568
+
569
+ if( ( b && b> rangeEnd) || (e && e > rangeEnd) ){
570
+ return response.errorStatus(416);
571
+ }
572
+ if(b!==null) rangeBegin = b;
573
+ if(e!=null) rangeEnd = e;
574
+ response.status = 206;
575
+ }
576
+ }
577
+
578
+ response.headers["Content-Length"] = (rangeEnd - rangeBegin) + 1;
579
+ response.headers["Content-Range"] = ..string.format("bytes %.0f-%.0f/%.0f",rangeBegin,rangeEnd,contentSize );
580
+
581
+ var remainSize = rangeEnd-rangeBegin+1;
582
+ if(!remainSize){return;}
583
+ if(remainSize==contentSize)response.status = 200;
584
+
585
+ if( request.method != "HEAD" ){
586
+ var file2 = ..io.open(path,"r+b");
587
+ var buffer = ..raw.buffer(65535);
588
+ file2.seek("set",rangeBegin)
589
+ for(i=rangeBegin;rangeEnd;65535){
590
+ var readSize = file2.readBuffer(buffer,remainSize>65535?65535:remainSize);
591
+ if(!readSize) break ;
592
+ response.writeBuffer(buffer,readSize);
593
+ remainSize = remainSize - readSize;
594
+ }
595
+ file2.close();
596
+ }
597
+ return;
598
+ }
599
+
600
+ var page,err = loadcode( path );
601
+ if(!page){
602
+ response.error(err);
603
+ return;
604
+ }
605
+
606
+ invoke(page,...,...)
607
+ }
608
+ }
609
+
610
+
611
+ if (environ.REQUEST_METHOD == "POST") {
612
+ if ( environ.CONTENT_TYPE && ..string.find(environ.CONTENT_TYPE,"@@application/x-www-form-urlencoded") ) {
613
+ var postData = request.postData();
614
+ if(postData) request.post = ..inet.url.splitParameters(postData,'\&');
615
+ }
616
+ }
617
+
618
+ if( request.method == "OPTIONS"){
619
+ response.headers["Allow"] = "OPTIONS, GET, HEAD, POST, PUT, DELETE, PATCH";
620
+ response.headers["Public"] = "OPTIONS, GET, HEAD, POST, PUT, DELETE, PATCH";
621
+ }
622
+
623
+ ..response = response;
624
+ ..request = request;
625
+ ..session = session;
626
+ if( ..string.startWith( request.path,"/config/",true ) ) {
627
+ return response.errorStatus(403);
628
+ }
629
+ elseif( ..string.startWith( request.path,"/lib/",true ) ) {
630
+ return response.errorStatus(403);
631
+ }
632
+ else{
633
+
634
+ global.print = function(...){ response.write(...) };
635
+
636
+ var err;
637
+ var f = ..fiber.create(
638
+ function(response,request,session){
639
+ var r,e = callex(,_SIMPLEHTTPSRV_APP ,,response,request,session);
640
+ if(!r) err = e;
641
+ },request.documentRoot );
642
+
643
+ ..fiber.resume (f,response,request,session);
644
+ response.continueRunning = true;
645
+
646
+ if(err) {
647
+
648
+ if( environ.REMOTE_ADDR == "127.0.0.1"){
649
+ response.error('<!doctype html><html><head><meta charset="utf-8"></head><body><pre>',err,'</pre></body></html>');
650
+ }
651
+ else {
652
+ response.error('<!doctype html><html><head><meta charset="utf-8"></head><body><pre>服务器错误/内部错误</pre></body></html>');
653
+ }
654
+
655
+ ..io.stderr.write(err,'\r\n');
656
+ }
657
+ }
658
+
659
+ response.close(true);
660
+ },100,function(app,documentRoot,documentBase,defalutDocument,customErrors,onThreadCreated,threadGlobal,urlRoot){
661
+ import wsock.tcp.client;
662
+ import inet.url;
663
+ import inet.httpStatusCode;
664
+ import sessionHandler.default;
665
+ import fsys.file;
666
+ import fsys.path;
667
+ import fsys.mime;
668
+ import web.json;
669
+ import web;
670
+ import crypt;
671
+ ..table.assign( global,threadGlobal );
672
+
673
+ _SIMPLEHTTPSRV_APP = app;
674
+ _SIMPLEHTTPSRV_DOCUMENT_ROOT = ..io.fullpath( (documentRoot:"\") );
675
+ _SIMPLEHTTPSRV_DOCUMENT_BASE = documentBase;
676
+ _SIMPLEHTTPSRV_DEFAULT_DOCUMENT = defalutDocument;
677
+ _SIMPLEHTTPSRV_CUSTOM_ERRORS = customErrors;
678
+
679
+ if(onThreadCreated) onThreadCreated(_SIMPLEHTTPSRV_DOCUMENT_ROOT,urlRoot);
680
+
681
+ },app,this.documentRoot,this.documentBase,this.defalutDocument
682
+ ,this.customErrors,this.onThreadCreated,this.threadGlobal,this.getUrl(),
683
+ );
684
+
685
+ this._beforeClose = function(){
686
+ works.waitClose();
687
+ }
688
+
689
+ this.forever(
690
+ function(acceptSocket){
691
+ works.push(acceptSocket)
692
+ }
693
+ )
694
+ }}
695
+ };
696
+ }
697
+
698
+ namespace simpleHttpServer{
699
+
700
+ class mainThread{
701
+ ctor(app){
702
+ this.httpHandle = app;
703
+ this.customErrors = {};
704
+ ..table.gc(this,"stop");
705
+ };
706
+ getLocalIp = function(){
707
+ return this.serverIp,this.serverPort;
708
+ };
709
+ getUrl = function(path,localIp){
710
+ var ip,port = this.serverIp,this.serverPort;
711
+ if(!(ip&&port)) return;
712
+
713
+ if(ip=="0.0.0.0")ip = localIp? ..wsock.getLocalIp() : "localhost";
714
+ var url = ..string.format("http://%s:%d",ip,port );
715
+ if( path ) {
716
+ path = ..string.replace(path,"\\","/");
717
+ if(path[1]=='/'#) path = ..string.right(path,-2);
718
+ url = url + "/" + path;
719
+ };
720
+ return url;
721
+ };
722
+ stop = function(){
723
+ if(this.serverId){
724
+ ..wsock.tcp.server.closeById(this.serverId);
725
+ this.serverId = null;
726
+ sleep(10);
727
+ }
728
+ };
729
+ start = function(startIp,startPort,startBacklog){
730
+ if(..request && ..response ){
731
+ error('请求路径不能指向服务器启动代码\n');
732
+ }
733
+
734
+ this.stop();
735
+
736
+ var serverInfo = ..thread.var();
737
+ ..thread.invoke(
738
+ function(serverInfo,startIp,startPort,startBacklog,httpHandle,threadNum,documentRoot,documentBase,defalutDocument,customErrors,onThreadCreated,threadGlobal){
739
+ import wsock.tcp.simpleHttpServer;
740
+ var server,errMsg = wsock.tcp.simpleHttpServer(startIp,startPort,startBacklog);
741
+ if(!server){
742
+ serverInfo.set({
743
+ err = true;
744
+ message = errMsg;
745
+ });
746
+ return;
747
+ }
748
+
749
+ server.documentRoot = documentRoot;
750
+ server.documentBase = documentBase;
751
+ server.defalutDocument = defalutDocument;
752
+ server.customErrors = customErrors;
753
+ server.onThreadCreated = onThreadCreated;
754
+ server.threadGlobal = threadGlobal;
755
+ server.threadNum = threadNum : 2;
756
+ if(!httpHandle){
757
+ httpHandle = function(response,request,session){
758
+ response.loadcode( request.path );
759
+ }
760
+ };
761
+
762
+ var ip,port = server.getLocalIp();
763
+ serverInfo.set({
764
+ id = server.id;
765
+ ip = ip;
766
+ port = port;
767
+ });
768
+ server.run(httpHandle);
769
+ } ,serverInfo,startIp,startPort : this.startPort,startBacklog
770
+ ,this.httpHandle
771
+ ,this.threadNum
772
+ ,this.documentRoot
773
+ ,this.documentBase
774
+ ,this.defalutDocument : "main.aardio"
775
+ ,this.customErrors
776
+ ,this.onThreadCreated
777
+ ,this.threadGlobal
778
+ ,
779
+ )
780
+
781
+ while(!serverInfo.get()){
782
+ sleep(10);
783
+ }
784
+
785
+ var info = serverInfo.get();
786
+ if(info.err){
787
+ return false,info.message;
788
+ }
789
+
790
+ serverInfo.set(null);
791
+ this.serverId = info.id;
792
+ this.serverIp = info.ip;
793
+ this.serverPort = info.port;
794
+ return true;
795
+ }
796
+ }
797
+
798
+
799
+ var serverMain;
800
+ stopUrl = function(){
801
+ if(serverMain) serverMain.stop();
802
+ }
803
+
804
+ self.customErrors = {};
805
+ startSpaUrl = function(indexUrl,documentBase,app){
806
+ var indexPath,extraInfo = ..string.match(indexUrl,"([^\#\?]+)(.*)");
807
+
808
+ if(indexPath[1]!='/'# && indexPath[1]!='\\'#) indexPath = "/" + indexPath;
809
+ self.customErrors[404] = indexPath;
810
+
811
+ var f = ..string.match(indexPath,"[^\\/.]+\.[^\\/.]+$")
812
+ if(f) self.defalutDocument = f;
813
+
814
+ if(type(documentBase)=="string") self.documentBase = documentBase;
815
+ return startUrl( ..string.concat( documentBase?"/":indexPath,extraInfo),,app);
816
+ }
817
+
818
+ startUrl = function(path,documentRoot,app){
819
+ if( type(path) == type.function){ app,path = path,null }
820
+ if(documentRoot) self.documentRoot = documentRoot;
821
+
822
+ if(!serverMain){
823
+ serverMain = mainThread(app);
824
+ serverMain.documentRoot = self.documentRoot;
825
+ serverMain.documentBase = self.documentBase;
826
+ serverMain.defalutDocument = self.defalutDocument;
827
+ serverMain.customErrors = self.customErrors;
828
+ serverMain.onThreadCreated = self.onThreadCreated;
829
+ serverMain.threadGlobal = self.threadGlobal;
830
+ serverMain.threadNum = self.threadNum;
831
+ serverMain.start(self.startIp : "127.0.0.1",self.startPort);
832
+ }
833
+ return serverMain.getUrl(path,false);
834
+ }
835
+
836
+ ..subscribe("beforeUnload",function(){
837
+ if(serverMain) serverMain.stop();
838
+ } );
839
+
840
+ getUrl = startUrl;
841
+ }
842
+
843
+ /**intellisense()
844
+ wsock.tcp.simpleHttpServer.documentRoot = 网站应用程序根目录,默认为"/",\n只能设置为硬盘上实际存在的目录,\n改变此目录,会同时改变\n服务端代码中的应用程序根目录以及用户库目录,\n如果只是相将所有请求路径转向某个目录,应当改用 documentBase 属性\n如果网站在嵌入资源目录中,应当改用 documentBase 属性
845
+ wsock.tcp.simpleHttpServer.documentBase = 网站根目录,\n不会修改应用程序根目录,支持硬盘目录与资源目录,\n这个属性应当设置为应用程序根目录下的相对路径,\n例如 "/res/web/"\n\n注意: request.path 前面包含 documentBase 目录。\n而 request.pathInfo 忽略 documentBase 目录
846
+ wsock.tcp.simpleHttpServer.defalutDocument = 默认文档,默认为"main.aardio",\n\n如果访问硬盘上存在的目录,request.path 尾部不加斜杠会自动跳转到以斜杆结束的路径\n\n如果访问嵌入资源目录,只有 request.path 以斜杆才会访问默认文档,\n对于访问嵌入资源文件,建议指定完整的文件路径,\n默认文档主要是用于硬盘上的网站
847
+ wsock.tcp.simpleHttpServer.mainThread(app) = @.mainThread( \n function(response,request,session){ \n response.loadcode( request.path __/*可省略,可增加多个模板参数,\n在被调用文件的函数外部可使用owner参数获取首个模板参数,\n也可以使用...获取多个模板参数*/ );\n } \n);
848
+ wsock.tcp.simpleHttpServer.mainThread() = !stdHttpSimpleServerMain.
849
+ wsock.tcp.simpleHttpServer.startUrl( = 查找可用端口创建 HTTP 服务器线程,返回返回完整 URL\n此服务端限制使用本机IP 127.0.0.1 访问,并随机分配端口不会出现端口冲突\n如果HTTP服务器已启动则直接返回URL而不是重复启动服务器,\n注意当前线程结束时,此服务器线程会自动退出
850
+ wsock.tcp.simpleHttpServer.startUrl(.(path,documentRoot,app) = 查找可用端口创建 HTTP 服务器线程,返回返回完整 URL\n如果 HTTP 服务器已启动则直接返回 URL 而不是重复启动服务器。\n省略参数返回首页URL,尾部不包含斜杠。\n\n可选用 @path 参数指定请求目标文件的相对路径。\n可选使用参数 @documentRoot 指定网站根目录,默认为"/"。\ndocumentRoot 只能设为硬盘实际存在的目录,并会改变用户库与应用根目录,\n如只想改变网页根目录请设置 wsock.tcp.simpleHttpServer.documentBase。\n可选用 @app 参数指定处理 HTTP 请求的线程函数,\n该线程函数有 response,request,session 等三个回调参数。\n也可以用参数@1 指定 @app 参数。
851
+ wsock.tcp.simpleHttpServer.startSpaUrl( = 返回 SPA 单页应用首页网址
852
+ wsock.tcp.simpleHttpServer.startSpaUrl(.(indexHtmlPath,documentBase,app) = 参数指定 SPA 单页应用首页路径,\n404错误页也会自动设置到该路径,\n返回首页网址\n\n可选用参数 @documentBase 指定根目录\n以避免网页不支持非根目录路径。\n\n可选用 @app 参数指定处理 HTTP 请求的线程函数,\n该线程函数有 response,request,session 等三个回调参数
853
+ wsock.tcp.simpleHttpServer.stopUrl(__) = 退出startUrl函数创建的HTTP服务器线程
854
+ wsock.tcp.simpleHttpServer = HTTP服务端\n支持文件上传,下载,下载支持断点续传\n支持多线程处理请求
855
+ wsock.tcp.simpleHttpServer(.(IP,端口,请求队列大小) = 创建HTTP服务端,所有参数可选,\n\n如果不写IP,则默认设为"0.0.0.0"也即监听本机所有IP,访问此服务端也不限制IP\n限制仅本机可以访问建议写127.0.0.1\n\n端口为0或省略则自动选择未用端口\n注意0-1023为系统通用服务保留端口,\n1024-49151为用户服务端口,其中大约%9已由IANA注册分配\n49152-65535为私有或临时端口
856
+ wsock.tcp.simpleHttpServer() = !stdHttpSimpleServer.
857
+ !stdHttpSimpleServer.bind(.(IP,端口) = 绑定IP端口
858
+ !stdHttpSimpleServer.listen(.(请求队列大小) = 监听指定的IP端口
859
+ !stdHttpSimpleServer.close() = 关闭 HTTP 服务端
860
+ !stdHttpSimpleServer.getLocalIp() = 返回当前绑定的IP,端口号
861
+ !stdHttpSimpleServer.getUrl() = 返回首页URL\n如果参数@1为true,IP "0.0.0.0"替换为上网卡IP而不是localhost
862
+ !stdHttpSimpleServer._serverAddress = 服务端监听地址\n!sockaddr_in.
863
+ !stdHttpSimpleServer.run( httpProc ) = @.run( \n function(response,request,session){ \n response.loadcode( request.path __/*可省略,可增加多个模板参数,\n在被调用文件的函数外部可使用owner参数获取首个模板参数,\n也可以使用...获取多个模板参数*/ );\n } \n);
864
+ !stdHttpSimpleServer.documentRoot = 网站应用程序根目录,默认为"/",\n在启动服务端之前设置才会生效,\n\n只能设置为硬盘上实际存在的目录,\n改变此目录,会同时改变\n服务端代码中的应用程序根目录以及用户库目录,\n如果只是相将所有请求路径转向某个目录,应当改用 documentBase 属性\n如果网站在嵌入资源目录中,应当改用 documentBase 属性
865
+ !stdHttpSimpleServer.documentBase = 网站根目录,\n在启动服务端之前设置才会生效,\n不会修改应用程序根目录,支持硬盘目录与资源目录,\n这个属性应当设置为应用程序根目录下的相对路径,\n例如 "/res/web/"\n\n注意: request.path 前面包含 documentBase 目录。\n而 request.pathInfo 忽略 documentBase 目录
866
+ !stdHttpSimpleServer.defalutDocument = 默认文档,默认为"main.aardio",\n在启动服务端之前设置才会生效,\n\n如果访问硬盘上存在的目录,request.path 尾部不加斜杠会自动跳转到以斜杆结束的路径\n\n如果访问嵌入资源目录,只有 request.path 以斜杆才会访问默认文档,\n对于访问嵌入资源文件,建议指定完整的文件路径,\n默认文档主要是用于硬盘上的网站
867
+ !stdHttpSimpleServer.onThreadCreated() = @.onThreadCreated = function(documentRoot,urlRoot){
868
+ __/*一个HTTP服务监听线程准备就绪时触发此事件*/
869
+ }
870
+ !stdHttpSimpleServer.beforeClose() = @.beforeClose = function(){
871
+ __/*服务器关闭前调用此函数*/
872
+ }
873
+ !stdHttpSimpleServer.threadGlobal = @.threadGlobal = {
874
+ __/*在onThreadCreated事件触发前\n添加HTTP服务监听线程的全局变量*/
875
+ }
876
+ !stdHttpSimpleServer.threadNum = 设置服务器线程数,默认为2个线程
877
+ !stdHttpSimpleServer.customErrors[404] = @.customErrors[404] = function(response){
878
+ response.status = "404 Not Found";
879
+ response.write("404 Not Found"); __/*自定义错误页处理函数,\n注意这是线程函数,应遵守多线程规则,\n也可以直接指定错误页路径*/
880
+ }
881
+ end intellisense**/
882
+
883
+ /**intellisense(!stdHttpSimpleServerMain)
884
+ documentRoot = 网站应用程序根目录,默认为"/",\n只能设置为硬盘上实际存在的目录,\n改变此目录,会同时改变\n服务端代码中的应用程序根目录以及用户库目录,\n如果只是相将所有请求路径转向某个目录,应当改用 documentBase 属性\n如果网站在嵌入资源目录中,应当改用 documentBase 属性
885
+ documentBase = 网站根目录,\n不会修改应用程序根目录,支持硬盘目录与资源目录,\n这个属性应当设置为应用程序根目录下的相对路径,\n例如 "/res/web/",\n\n注意: request.path 前面包含 documentBase 目录。\n而 request.pathInfo 忽略 documentBase 目录
886
+ defalutDocument = 默认文档,默认为"main.aardio",\n\n如果访问硬盘上存在的目录,request.path 尾部不加斜杠会自动跳转到以斜杆结束的路径\n\n如果访问嵌入资源目录,只有 request.path 以斜杆才会访问默认文档,\n对于访问嵌入资源文件,建议指定完整的文件路径,\n默认文档主要是用于硬盘上的网站
887
+ onThreadCreated() = @.onThreadCreated = function(documentRoot,urlRoot){
888
+ __/*一个HTTP服务监听线程准备就绪时触发此事件*/
889
+ }
890
+ threadGlobal = @.threadGlobal = {
891
+ __/*在onThreadCreated事件触发前\n添加HTTP服务监听线程的全局变量*/
892
+ }
893
+ threadNum = 设置服务器线程数,默认为2个线程
894
+ startPort = 设置服务器端口,默认自动分配空闲端口
895
+ customErrors = @.customErrors = {\n [404] = function(response){\n response.status = "404 Not Found";\n response.write("404 Not Found"); __/*自定义错误页*/\n } \n}
896
+ getLocalIp() = 返回服务端IP,端口
897
+ getUrl(__) = 返回HTTP服务端访问网址,可选指定目录或文件路径\n注意参数第一个字符不需要指定斜杠\n如果参数@2为true,IP "0.0.0.0"替换为合适的内网IP而不是localhost \n如果服务器启动失败不返回任何值
898
+ startSpaUrl( = 返回 SPA 单页应用首页网址
899
+ startSpaUrl(.(indexHtmlPath,documentBase) = 参数指定 SPA 单页应用首页路径,\n404错误页也会自动设置到该路径,\n返回首页网址\n\n可选用参数 @documentBase 指定根目录以避免网页不支持非根目录路径
900
+ stop() = 停止HTTP服务端
901
+ start(.(IP,端口,请求队列大小) = 启动HTTP服务端
902
+ serverId = 当前服务端唯一ID,字符串,\n每次调用start函数都会改变这个属性的值
903
+ end intellisense**/