mm_os 2.8.0 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/demo/app/dev/README.md +1 -0
  2. package/demo/app/dev/app.js +149 -0
  3. package/demo/app/dev/app.json +12 -0
  4. package/demo/app/dev/event_api/client/event.json +11 -0
  5. package/demo/app/dev/event_api/client/main.js +19 -0
  6. package/demo/app/dev/event_api/manage/event.json +19 -0
  7. package/demo/app/dev/event_api/manage/main.js +26 -0
  8. package/demo/app/dev/plugin/doc/static/api_list.html +144 -0
  9. package/demo/app/dev/plugin/doc/static/api_view.html +692 -0
  10. package/demo/app/dev/plugin/doc/static/index.html +138 -0
  11. package/demo/app/dev/plugin/doc/static/request_test.html +311 -0
  12. package/demo/app/dev/plugin/main/api_dev_client/api/api.json +11 -0
  13. package/demo/app/dev/plugin/main/api_dev_client/api/index.js +54 -0
  14. package/demo/app/dev/plugin/main/api_dev_client/api/param.json +31 -0
  15. package/demo/app/dev/plugin/main/api_dev_client/app/api.json +13 -0
  16. package/demo/app/dev/plugin/main/api_dev_client/app/index.js +13 -0
  17. package/demo/app/dev/plugin/main/api_dev_client/app/param.json +147 -0
  18. package/demo/app/dev/plugin/main/api_dev_client/app/sql.json +28 -0
  19. package/demo/app/dev/plugin/main/api_dev_client/auto/api.json +37 -0
  20. package/demo/app/dev/plugin/main/api_dev_client/auto/auto_db.js +70 -0
  21. package/demo/app/dev/plugin/main/api_dev_client/auto/auto_file.js +32 -0
  22. package/demo/app/dev/plugin/main/api_dev_client/auto/index.js +51 -0
  23. package/demo/app/dev/plugin/main/api_dev_client/auto/param.json +51 -0
  24. package/demo/app/dev/plugin/main/api_dev_client/com.js +349 -0
  25. package/demo/app/dev/plugin/main/api_dev_client/db/api.json +10 -0
  26. package/demo/app/dev/plugin/main/api_dev_client/db/index.js +71 -0
  27. package/demo/app/dev/plugin/main/api_dev_client/db/param.json +31 -0
  28. package/demo/app/dev/plugin/main/api_dev_client/dict/api.json +10 -0
  29. package/demo/app/dev/plugin/main/api_dev_client/dict/index.js +49 -0
  30. package/demo/app/dev/plugin/main/api_dev_client/dict/param.json +29 -0
  31. package/demo/app/dev/plugin/main/api_dev_client/event/api.json +10 -0
  32. package/demo/app/dev/plugin/main/api_dev_client/event/index.js +31 -0
  33. package/demo/app/dev/plugin/main/api_dev_client/event/param.json +31 -0
  34. package/demo/app/dev/plugin/main/api_dev_client/help/api.json +10 -0
  35. package/demo/app/dev/plugin/main/api_dev_client/help/index.js +14 -0
  36. package/demo/app/dev/plugin/main/api_dev_client/help/param.json +31 -0
  37. package/demo/app/dev/plugin/main/api_dev_client/nav/api.json +10 -0
  38. package/demo/app/dev/plugin/main/api_dev_client/nav/index.js +36 -0
  39. package/demo/app/dev/plugin/main/api_dev_client/nav/param.json +36 -0
  40. package/demo/app/dev/plugin/main/api_dev_client/plugin/api.json +10 -0
  41. package/demo/app/dev/plugin/main/api_dev_client/plugin/index.js +13 -0
  42. package/demo/app/dev/plugin/main/api_dev_client/plugin/param.json +31 -0
  43. package/demo/app/dev/plugin/main/api_dev_client/source/api.json +10 -0
  44. package/demo/app/dev/plugin/main/api_dev_client/source/index.js +14 -0
  45. package/demo/app/dev/plugin/main/api_dev_client/source/param.json +31 -0
  46. package/demo/app/dev/plugin/main/api_dev_client/sql/api.json +10 -0
  47. package/demo/app/dev/plugin/main/api_dev_client/sql/index.js +13 -0
  48. package/demo/app/dev/plugin/main/api_dev_client/sql/param.json +31 -0
  49. package/demo/app/dev/plugin/main/api_dev_client/task/api.json +16 -0
  50. package/demo/app/dev/plugin/main/api_dev_client/task/index.js +13 -0
  51. package/demo/app/dev/plugin/main/api_dev_client/task/param.json +31 -0
  52. package/demo/app/dev/plugin/main/api_dev_client/translate/api.json +39 -0
  53. package/demo/app/dev/plugin/main/api_dev_client/translate/index.js +43 -0
  54. package/demo/app/dev/plugin/main/api_dev_client/translate/param.json +130 -0
  55. package/demo/app/dev/plugin/main/api_dev_client/translate/sql.json +62 -0
  56. package/demo/app/dev/plugin/main/api_dev_client/ui/api.json +10 -0
  57. package/demo/app/dev/plugin/main/api_dev_client/ui/index.js +146 -0
  58. package/demo/app/dev/plugin/main/api_dev_client/ui/param.json +31 -0
  59. package/demo/app/dev/plugin/main/api_dev_client/view/api.json +10 -0
  60. package/demo/app/dev/plugin/main/api_dev_client/view/index.js +100 -0
  61. package/demo/app/dev/plugin/main/api_dev_client/view/param.json +29 -0
  62. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/nav.vue +12 -0
  63. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/obj.vue +12 -0
  64. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/post.vue +12 -0
  65. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/query.vue +12 -0
  66. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/edit.vue +39 -0
  67. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/list.vue +12 -0
  68. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/search.vue +12 -0
  69. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/table.vue +12 -0
  70. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/type.vue +12 -0
  71. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/view.vue +56 -0
  72. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/view.json +48 -0
  73. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/api.json +37 -0
  74. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/auto_db.js +120 -0
  75. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy.js +101 -0
  76. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy_framework.js +118 -0
  77. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy_template.js +78 -0
  78. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy_file.js +97 -0
  79. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/common.js +198 -0
  80. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/django_server.js +104 -0
  81. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/helper.js +161 -0
  82. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/koa_art_server.js +102 -0
  83. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/mini_app_home.js +415 -0
  84. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/razor.js +0 -0
  85. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/springboot.js +0 -0
  86. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/thinkphp.js +0 -0
  87. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/uni_app_home.js +418 -0
  88. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/vue_cli_admin.js +78 -0
  89. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/vue_cli_home.js +112 -0
  90. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create_file.js +97 -0
  91. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/add_data.js +221 -0
  92. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/create_table.js +162 -0
  93. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/set_auth_table.js +86 -0
  94. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/index.js +524 -0
  95. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/param.json +37 -0
  96. package/demo/app/proxy/event_api/all/event.json +20 -0
  97. package/demo/app/proxy/event_api/all/main.js +50 -0
  98. package/demo/app/route/app.js +131 -0
  99. package/demo/app/route/app.json +11 -0
  100. package/demo/app/route/event_api/client/event.json +10 -0
  101. package/demo/app/route/event_api/client/main.js +19 -0
  102. package/demo/app/route/event_api/manage/event.json +18 -0
  103. package/demo/app/route/event_api/manage/main.js +70 -0
  104. package/demo/app/route/plugin/main/api_route_client/pass/api.json +37 -0
  105. package/demo/app/route/plugin/main/api_route_client/pass/index.js +33 -0
  106. package/demo/app/route/plugin/main/api_route_client/pass/param.json +50 -0
  107. package/demo/app/route/plugin/main/index.js +144 -0
  108. package/demo/app/route/plugin/main/plugin.json +20 -0
  109. package/demo/app/sys/app.js +169 -0
  110. package/demo/app/sys/app.json +11 -0
  111. package/demo/app/sys/event_api/api/before.js +80 -0
  112. package/demo/app/sys/event_api/api/check.js +103 -0
  113. package/demo/app/sys/event_api/api/event.json +31 -0
  114. package/demo/app/sys/event_api/api/main.js +19 -0
  115. package/demo/app/sys/event_api/apis/before.js +80 -0
  116. package/demo/app/sys/event_api/apis/event.json +21 -0
  117. package/demo/app/sys/event_api/apis/main.js +19 -0
  118. package/demo/app/sys/event_api/client/event.json +10 -0
  119. package/demo/app/sys/event_api/client/main.js +17 -0
  120. package/demo/app/sys/event_api/doc/event.json +18 -0
  121. package/demo/app/sys/event_api/doc/main.js +67 -0
  122. package/demo/app/sys/event_api/img/event.json +11 -0
  123. package/demo/app/sys/event_api/img/main.js +90 -0
  124. package/demo/app/sys/event_api/manage/event.json +10 -0
  125. package/demo/app/sys/event_api/manage/main.js +19 -0
  126. package/demo/app/sys/event_api/upload/event.json +10 -0
  127. package/demo/app/sys/event_api/upload/main.js +17 -0
  128. package/demo/app/sys/plugin/app_admin/index.js +127 -0
  129. package/demo/app/sys/plugin/app_admin/plugin.json +20 -0
  130. package/demo/app/sys/plugin/main/api_client/config/api.json +39 -0
  131. package/demo/app/sys/plugin/main/api_client/config/index.js +37 -0
  132. package/demo/app/sys/plugin/main/api_client/config/param.json +27 -0
  133. package/demo/app/sys/plugin/main/api_client/config/sql.json +70 -0
  134. package/demo/app/sys/plugin/main/api_client/lang/api.json +37 -0
  135. package/demo/app/sys/plugin/main/api_client/lang/index.js +27 -0
  136. package/demo/app/sys/plugin/main/api_client/lang/param.json +22 -0
  137. package/demo/app/sys/plugin/main/api_client/nav/api.json +15 -0
  138. package/demo/app/sys/plugin/main/api_client/nav/index.js +39 -0
  139. package/demo/app/sys/plugin/main/api_client/nav/param.json +87 -0
  140. package/demo/app/sys/plugin/main/api_client/query/api.json +35 -0
  141. package/demo/app/sys/plugin/main/api_client/query/index.js +48 -0
  142. package/demo/app/sys/plugin/main/api_client/theme/api.json +37 -0
  143. package/demo/app/sys/plugin/main/api_client/theme/index.js +30 -0
  144. package/demo/app/sys/plugin/main/api_client/theme/param.json +31 -0
  145. package/demo/app/sys/plugin/main/api_client/translate/api.json +39 -0
  146. package/demo/app/sys/plugin/main/api_client/translate/index.js +21 -0
  147. package/demo/app/sys/plugin/main/api_client/translate/param.json +130 -0
  148. package/demo/app/sys/plugin/main/api_client/translate/sql.json +62 -0
  149. package/demo/app/sys/plugin/main/api_upload/image/api.json +15 -0
  150. package/demo/app/sys/plugin/main/api_upload/image/index.js +62 -0
  151. package/demo/app/sys/plugin/main/api_upload/image/param.json +9 -0
  152. package/demo/app/sys/plugin/main/task/task_demo/index.js +37 -0
  153. package/demo/app/sys/plugin/main/task/task_demo/task.json +24 -0
  154. package/demo/app/sys/plugin/user/index.js +127 -0
  155. package/demo/app/sys/plugin/user/plugin.json +20 -0
  156. package/demo/app/sys/plugin/user/static/img/logo.png +0 -0
  157. package/demo/app/sys/static/img/avatar_1674484608066.png +0 -0
  158. package/demo/app/sys/static/img/avatar_1674633778171.jpeg +0 -0
  159. package/demo/app/sys/static/img/avatar_1674962702334.jpeg +0 -0
  160. package/demo/app/sys/static/img/avatar_1675075431736.jpeg +0 -0
  161. package/demo/app/sys/static/img/avatar_1675497065533.jpeg +0 -0
  162. package/demo/app/sys/static/img/avatar_1685352550990.jpeg +0 -0
  163. package/demo/app/sys/static/img/avatar_1685353685992.jpeg +0 -0
  164. package/demo/app/sys/static/img/avatar_1685353956587.jpeg +0 -0
  165. package/demo/app/sys/static/img/avatar_1685353971148.jpeg +0 -0
  166. package/demo/app/sys/static/img/avatar_1685353983723.jpeg +0 -0
  167. package/demo/app/sys/static/img/avatar_1685354014745.jpeg +0 -0
  168. package/demo/app/sys/static/img/avatar_1685354122355.jpeg +0 -0
  169. package/demo/app/sys/static/img/avatar_1685357983520.jpeg +0 -0
  170. package/demo/app/sys/static/img/avatar_1685358453383.jpeg +0 -0
  171. package/demo/app/sys/static/img/avatar_1685416570438.jpeg +0 -0
  172. package/demo/app/sys/static/img/avatar_1685512675830.png +0 -0
  173. package/demo/app/sys/static/img/avatar_1685939425608.jpeg +0 -0
  174. package/demo/app/sys/static/img/avatar_1685939886560.jpeg +0 -0
  175. package/demo/app/sys/static/img/avatar_1686106313194.png +0 -0
  176. package/demo/app/sys/static/img/avatar_1686371876175.png +0 -0
  177. package/demo/app/sys/static/img/avatar_1686372033596.png +0 -0
  178. package/demo/app/sys/static/img/avatar_1688215220669.png +0 -0
  179. package/demo/app/sys/static/img/avatar_1688531184690.png +0 -0
  180. package/demo/app/sys/static/img/avatar_1688531233080.png +0 -0
  181. package/demo/app/sys/static/img/avatar_1688548526909.png +0 -0
  182. package/demo/app/sys/static/img/avatar_1688549213411.png +0 -0
  183. package/demo/app/sys/static/img/avatar_1688549511977.png +0 -0
  184. package/demo/app/sys/static/img/avatar_1688549685464.png +0 -0
  185. package/demo/app/sys/static/img/avatar_1688608623049.png +0 -0
  186. package/demo/app/sys/static/img/avatar_1688638500476.png +0 -0
  187. package/demo/app/sys/static/img/avatar_1688638515195.png +0 -0
  188. package/demo/app/sys/static/img/avatar_1688638539928.png +0 -0
  189. package/demo/app/sys/static/img/avatar_1688638557960.png +0 -0
  190. package/demo/app/sys/static/img/avatar_1688638761798.png +0 -0
  191. package/demo/app/sys/static/img/avatar_1688638943140.png +0 -0
  192. package/demo/app/sys/static/img/avatar_1688639068330.png +0 -0
  193. package/demo/app/sys/static/img/image_1685357101273.jpeg +0 -0
  194. package/demo/app/sys/static/img/logo.png +0 -0
  195. package/demo/app/user/app.js +148 -0
  196. package/demo/app/user/app.json +11 -0
  197. package/demo/app/user/event_api/client/event.json +10 -0
  198. package/demo/app/user/event_api/client/main.js +18 -0
  199. package/demo/app/user/event_api/manage/event.json +10 -0
  200. package/demo/app/user/event_api/manage/main.js +19 -0
  201. package/demo/app/user/plugin/main/api_user_client/account/api.json +39 -0
  202. package/demo/app/user/plugin/main/api_user_client/account/index.js +53 -0
  203. package/demo/app/user/plugin/main/api_user_client/account/param.json +130 -0
  204. package/demo/app/user/plugin/main/api_user_client/base/api.json +27 -0
  205. package/demo/app/user/plugin/main/api_user_client/base/index.js +84 -0
  206. package/demo/app/user/plugin/main/api_user_client/base/param.json +130 -0
  207. package/demo/app/user/plugin/main/api_user_client/core/api.json +20 -0
  208. package/demo/app/user/plugin/main/api_user_client/core/forgot.js +14 -0
  209. package/demo/app/user/plugin/main/api_user_client/core/password.js +14 -0
  210. package/demo/app/user/plugin/main/api_user_client/core/sign_out.js +26 -0
  211. package/demo/app/user/plugin/main/api_user_client/core/state.js +21 -0
  212. package/demo/app/user/plugin/main/api_user_client/count/api.json +27 -0
  213. package/demo/app/user/plugin/main/api_user_client/count/chongzhi.js +103 -0
  214. package/demo/app/user/plugin/main/api_user_client/count/index.js +40 -0
  215. package/demo/app/user/plugin/main/api_user_client/count/param.json +40 -0
  216. package/demo/app/user/plugin/main/api_user_client/forgot/api.json +37 -0
  217. package/demo/app/user/plugin/main/api_user_client/forgot/index - /345/211/257/346/234/254.jsbat" +41 -0
  218. package/demo/app/user/plugin/main/api_user_client/forgot/index.js +36 -0
  219. package/demo/app/user/plugin/main/api_user_client/forgot/param.json +56 -0
  220. package/demo/app/user/plugin/main/api_user_client/oauth/WXBizDataCrypt.js +33 -0
  221. package/demo/app/user/plugin/main/api_user_client/oauth/api.json +31 -0
  222. package/demo/app/user/plugin/main/api_user_client/oauth/index.js +16 -0
  223. package/demo/app/user/plugin/main/api_user_client/oauth/oauth.js +270 -0
  224. package/demo/app/user/plugin/main/api_user_client/oauth/oauth.json +88 -0
  225. package/demo/app/user/plugin/main/api_user_client/oauth/param.json +111 -0
  226. package/demo/app/user/plugin/main/api_user_client/password/api.json +21 -0
  227. package/demo/app/user/plugin/main/api_user_client/password/index.js +56 -0
  228. package/demo/app/user/plugin/main/api_user_client/password/param.json +44 -0
  229. package/demo/app/user/plugin/main/api_user_client/phone_code/aliyun.js +230 -0
  230. package/demo/app/user/plugin/main/api_user_client/phone_code/api.json +37 -0
  231. package/demo/app/user/plugin/main/api_user_client/phone_code/index.js +18 -0
  232. package/demo/app/user/plugin/main/api_user_client/phone_code/index.js_ +230 -0
  233. package/demo/app/user/plugin/main/api_user_client/phone_code/param.json +58 -0
  234. package/demo/app/user/plugin/main/api_user_client/phone_code/phone_code.js +278 -0
  235. package/demo/app/user/plugin/main/api_user_client/realname/api.json +21 -0
  236. package/demo/app/user/plugin/main/api_user_client/realname/index.js +48 -0
  237. package/demo/app/user/plugin/main/api_user_client/realname/param.json +74 -0
  238. package/demo/app/user/plugin/main/api_user_client/servicer/api.json +29 -0
  239. package/demo/app/user/plugin/main/api_user_client/servicer/index.js +19 -0
  240. package/demo/app/user/plugin/main/api_user_client/servicer/param.json +41 -0
  241. package/demo/app/user/plugin/main/api_user_client/servicer/sql.json +113 -0
  242. package/demo/app/user/plugin/main/api_user_client/set_address/api.json +37 -0
  243. package/demo/app/user/plugin/main/api_user_client/set_address/index.js +101 -0
  244. package/demo/app/user/plugin/main/api_user_client/set_address/param.json +165 -0
  245. package/demo/app/user/plugin/main/api_user_client/set_avatar/api.json +35 -0
  246. package/demo/app/user/plugin/main/api_user_client/set_avatar/index.js +77 -0
  247. package/demo/app/user/plugin/main/api_user_client/set_info/api.json +35 -0
  248. package/demo/app/user/plugin/main/api_user_client/set_info/index.js +47 -0
  249. package/demo/app/user/plugin/main/api_user_client/set_nickname/api.json +35 -0
  250. package/demo/app/user/plugin/main/api_user_client/set_nickname/index.js +49 -0
  251. package/demo/app/user/plugin/main/api_user_client/set_pay_password/api.json +21 -0
  252. package/demo/app/user/plugin/main/api_user_client/set_pay_password/index.js +67 -0
  253. package/demo/app/user/plugin/main/api_user_client/sign_in/api.json +11 -0
  254. package/demo/app/user/plugin/main/api_user_client/sign_in/index.js +275 -0
  255. package/demo/app/user/plugin/main/api_user_client/sign_in/param.json +125 -0
  256. package/demo/app/user/plugin/main/api_user_client/sign_in/state.js +37 -0
  257. package/demo/app/user/plugin/main/api_user_client/sign_up/api.json +12 -0
  258. package/demo/app/user/plugin/main/api_user_client/sign_up/index.js +110 -0
  259. package/demo/app/user/plugin/main/api_user_client/sign_up/param.json +65 -0
  260. package/demo/app/user/plugin/main/api_user_client/sign_up_in/api.json +37 -0
  261. package/demo/app/user/plugin/main/api_user_client/sign_up_in/index.js +110 -0
  262. package/demo/app/user/plugin/main/api_user_client/sign_up_in/param.json +34 -0
  263. package/demo/app/user/plugin/main/api_user_client/token/api.json +25 -0
  264. package/demo/app/user/plugin/main/api_user_client/token/index.js +20 -0
  265. package/demo/app/user/plugin/main/api_user_client/token/param.json +16 -0
  266. package/demo/app/user/plugin/main/api_user_manage/account_base/api.json +37 -0
  267. package/demo/app/user/plugin/main/api_user_manage/account_base/index.js +40 -0
  268. package/demo/app/user/plugin/main/api_user_manage/account_base/param.json +130 -0
  269. package/demo/app/user/plugin/main/api_user_manage/invitation_code/api.json +37 -0
  270. package/demo/app/user/plugin/main/api_user_manage/invitation_code/index.js +106 -0
  271. package/demo/app/user/plugin/main/api_user_manage/invitation_code/param.json +130 -0
  272. package/demo/app/user/plugin/main/api_user_manage/update_team/api.json +35 -0
  273. package/demo/app/user/plugin/main/api_user_manage/update_team/index.js +218 -0
  274. package/demo/app/user/plugin/main/api_user_manage/update_team/param.json +130 -0
  275. package/demo/app/user/static/img/logo.png +0 -0
  276. package/demo/app/ws/app.js +122 -0
  277. package/demo/app/ws/app.json +11 -0
  278. package/demo/app/ws/event_api/client/event.json +10 -0
  279. package/demo/app/ws/event_api/client/main.js +17 -0
  280. package/demo/app/ws/socket/ws/index.js +43 -0
  281. package/demo/app/ws/socket/ws/socket.json +14 -0
  282. package/demo/config/development.json +95 -0
  283. package/demo/config/face.sql +3824 -0
  284. package/demo/config/local.json +80 -0
  285. package/demo/index.js +19 -0
  286. package/package.json +59 -58
  287. package/cache/test/main/config.json +0 -7
@@ -0,0 +1,90 @@
1
+ var fs = require('fs');
2
+ const path = require('path');
3
+
4
+ var save_file_dir = "/app/sys/static/img/".fullname();
5
+ save_file_dir.addDir();
6
+ var file_path = "/sys/img/";
7
+
8
+
9
+ var arr_extensions = ['jpg', 'jpeg', 'png', 'gif', 'svg', 'bmp', 'icon', 'ico', 'ts'];
10
+
11
+ /**
12
+ * 保存图片
13
+ * @param {String} k 字段名
14
+ * @param {Object} f 文件对象
15
+ * @return {String} 访问路径
16
+ */
17
+ function saveImg(k, f) {
18
+ var url;
19
+ // 创建可读流
20
+ const render = fs.createReadStream(f.path);
21
+ var stamp = Date.now();
22
+ var extensions = f.name.split('.').pop();
23
+ if (arr_extensions.indexOf(extensions) === -1) {
24
+ return url;
25
+ }
26
+ var name = k + "_" + stamp + '.' + extensions;
27
+ let file = path.join(save_file_dir, name);
28
+ // 创建写入流
29
+ try {
30
+ const upStream = fs.createWriteStream(file);
31
+ render.pipe(upStream);
32
+ url = file_path + name;
33
+ } catch (e) {
34
+ fs.closeSync(file);
35
+ console.log(e);
36
+ }
37
+ return url;
38
+ }
39
+
40
+ /**
41
+ * @description 接口主函数
42
+ * @param {Object} ctx HTTP上下文
43
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
44
+ * @return {Object} 执行结果
45
+ */
46
+ async function main(ctx, db) {
47
+ // 在这定义要访问的数据库 (分布式开发时设置不同的数据库名)
48
+ var req = ctx.request;
49
+ var body = req.body;
50
+ for (var k in body) {
51
+ var data = body[k];
52
+ if (data && typeof(data) === 'string') {
53
+ if (k === 'img' || k === 'image' || k === 'icon' || k === 'avatar' || k.indexOf('img_') !== -1 || k
54
+ .indexOf('image_') !== -1 || k.indexOf('icon_') !== -1 || k.indexOf(
55
+ 'avatar_') !== -1) {
56
+ if (data.indexOf('data:') === 0 && data.indexOf("+xml") === -1) {
57
+ var extension = data.between('image/', ';');
58
+ data = data.replace(/^data:image\/\w+;base64,/, "");
59
+ var bf = Buffer.from(data, 'base64');
60
+ var stamp = Date.now();
61
+ var name = k + "_" + stamp + "." + extension;
62
+ var file = save_file_dir + name;
63
+ try {
64
+ fs.writeFileSync(file, bf);
65
+ } catch (e) {
66
+ fs.closeSync(file);
67
+ console.log(e);
68
+ }
69
+ body[k] = file_path + name;
70
+ }
71
+ }
72
+ }
73
+ }
74
+ if (req.files) {
75
+ var dt = req.files;
76
+ for (var k in dt) {
77
+ if (k === 'img' || k === 'image' || k === 'icon' || k === 'avatar' || k.indexOf('img') !== -1 || k
78
+ .indexOf('image_') !== -1 || k.indexOf('icon_') !== -1 || k.indexOf(
79
+ 'avatar_') !== -1) {
80
+ var url = saveImg(k, dt[k]);
81
+ if (url) {
82
+ body[k] = url;
83
+ }
84
+ }
85
+ }
86
+ }
87
+ return null;
88
+ };
89
+
90
+ exports.main = main;
@@ -0,0 +1,10 @@
1
+ [{
2
+ "target": "/apis/sys*",
3
+ "name": "apis_sys",
4
+ "title": "sys的管理端api接口",
5
+ "description": "用于系统后台访问接口",
6
+ "stage": "main",
7
+ "func_file": "./main.js",
8
+ "sort": 100,
9
+ "end": true
10
+ }]
@@ -0,0 +1,19 @@
1
+ var api = $.api_admin('sys_manage', '系统管理端');
2
+ // 首次启动更新api接口;
3
+ api.update('sys/');
4
+
5
+ var sql = $.mysql_admin('sys', __dirname);
6
+ sql.setConfig($.config.mysql);
7
+ sql.open();
8
+
9
+ /**
10
+ * @description 接口主函数
11
+ * @param {Object} ctx HTTP上下文
12
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
13
+ * @return {Object} 执行结果
14
+ */
15
+ async function main(ctx, db) {
16
+ $.push(db, sql.db(), true);
17
+ return api.run(ctx, db);
18
+ };
19
+ exports.main = main;
@@ -0,0 +1,10 @@
1
+ {
2
+ "target": "/upload*",
3
+ "name": "upload",
4
+ "title": "上传文件用的API",
5
+ "description": "用于上传图片、文档、视频、音乐、压缩包等到服务端",
6
+ "stage": "main",
7
+ "func_file": "./main.js",
8
+ "sort": 100,
9
+ "end": true
10
+ }
@@ -0,0 +1,17 @@
1
+ var api = $.api_admin('upload', '上传端');
2
+ // 首次启动更新api接口;
3
+ api.update();
4
+
5
+ var sql = $.mysql_admin('sys', __dirname);
6
+
7
+ /**
8
+ * @description 接口主函数
9
+ * @param {Object} ctx HTTP上下文
10
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
11
+ * @return {Object} 执行结果
12
+ */
13
+ async function main(ctx, db) {
14
+ $.push(db, sql.db(), true);
15
+ return api.run(ctx, db);
16
+ };
17
+ exports.main = main;
@@ -0,0 +1,127 @@
1
+ /**
2
+ * @fileOverview app_admin
3
+ * @author <a href="作者主页地址">插件作者</a>
4
+ * @version 1.0
5
+ */
6
+
7
+ /**
8
+ * 插件对象
9
+ */
10
+ module.exports = {
11
+ /**
12
+ * 初始化
13
+ * @param {Object} option 配置参数
14
+ * @return {String} 成功返回null, 否则返回错误提示
15
+ */
16
+ init(option) {
17
+ var msg = null;
18
+ return msg;
19
+ },
20
+
21
+ /**
22
+ * 销毁
23
+ * @param {Object} opiton 配置参数
24
+ * @return {String} 成功返回null,否则返回错误提示
25
+ */
26
+ destroy(option) {
27
+ var msg = null;
28
+ return msg;
29
+ },
30
+
31
+ /**
32
+ * 安装
33
+ * @param {Object} option 配置参数
34
+ * @return {String} 成功返回null,否则返回错误提示
35
+ */
36
+ install(option) {
37
+ var msg = null;
38
+ return msg;
39
+ },
40
+
41
+ /**
42
+ * 卸载
43
+ * @param {Object} option 配置参数
44
+ * @return {String} 成功返回null,否则返回错误提示
45
+ */
46
+ uninstall(option) {
47
+ var msg = null;
48
+ return msg;
49
+ },
50
+
51
+ /**
52
+ * 更新
53
+ * @param {Object} option 配置参数
54
+ * @return {String} 成功返回null, 否则返回错误提示
55
+ */
56
+ update(option) {
57
+ var msg = null;
58
+ return msg;
59
+ },
60
+
61
+ /**
62
+ * 启动
63
+ * @param {Object} opiton 配置参数
64
+ * @return {String} 成功返回null,否则返回错误提示
65
+ */
66
+ start(option) {
67
+ var msg = null;
68
+ return msg;
69
+ },
70
+
71
+ /**
72
+ * 暂停
73
+ * @param {Object} opiton 配置参数
74
+ * @return {String} 成功返回null,否则返回错误提示
75
+ */
76
+ stop(option) {
77
+ var msg = null;
78
+ return msg;
79
+ },
80
+
81
+ /**
82
+ * 结束
83
+ * @param {Object} opiton 配置参数
84
+ * @return {String} 成功返回null,否则返回错误提示
85
+ */
86
+ end(option) {
87
+ var msg = null;
88
+ return msg;
89
+ },
90
+
91
+ /**
92
+ * 插件
93
+ * @param {String} item 插件项
94
+ * @return {Object} 旗下插件和信息
95
+ */
96
+ help(item) {
97
+ var tip = "";
98
+ switch (item) {
99
+ case "run":
100
+ break;
101
+ default:
102
+ break;
103
+ }
104
+ return tip;
105
+ },
106
+
107
+ /**
108
+ * 主程序
109
+ * @param {Object} param1 参数1
110
+ * @param {Object} param2 参数2
111
+ * @return {Object} 返回执行结果
112
+ */
113
+ main(param1, param2) {
114
+ var ret = null;
115
+ return ret;
116
+ },
117
+
118
+ /**
119
+ * 指令(类似命令提示符)
120
+ * @param {String} content 指令内容
121
+ * @return {String} 执行结果
122
+ */
123
+ cmd(content) {
124
+ var ret = "";
125
+ return ret;
126
+ }
127
+ };
@@ -0,0 +1,20 @@
1
+ {
2
+ // 应用名称,表示该插件用在什么应用里的
3
+ "app": "sys",
4
+ // 插件名称,插件的唯一标识
5
+ "name": "app_admin",
6
+ // 插件标题,用于检索和识别
7
+ "title": "应用管理插件",
8
+ // 插件描述,介绍改插件是做什么用的
9
+ "description": "用于管理应用,实现热拔插",
10
+ // 插件版本号,用于升级迭代
11
+ "version": "1.0",
12
+ // 插件语言包文件路径
13
+ "lang_path": "/sys/app_admin/lang/",
14
+ // 插件图标
15
+ "icon": "/sys/app_admin/img/logo.png",
16
+ // 插件指令,通过指令方式调用插件
17
+ "cmd": "sys.app_admin",
18
+ // 排序,表示多个插件时在应用下执行的先后顺序
19
+ "sort": 10
20
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/config",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "api_config",
6
+ // 标题, 用于开发文档显示
7
+ "title": "获取配置参数",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "用于获取某个应用的配置参数的接口",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "GET",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 0,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": false,
20
+ // SQL配置路径, 用于将请求参数拼接成SQL, 实现比较复杂的查询
21
+ "sql_path": "./sql.json",
22
+ // 参数配置路径, 用于校验API请求参数是否正确, 同时显示在API文档中
23
+ "param_path": "./param.json",
24
+ /* 授权协议 */
25
+ "oauth": {
26
+ // 是否需要登录, true表示需要登录才能访问该接口
27
+ "signIn": false,
28
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "vip": 0,
30
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
31
+ "gm": 0,
32
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
33
+ "mc": 0,
34
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
35
+ "user_group": [],
36
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
37
+ "user_admin": []
38
+ }
39
+ }
@@ -0,0 +1,37 @@
1
+ $.conf = {};
2
+ /**
3
+ * 接口主函数
4
+ * @param {Object} ctx HTTP上下文
5
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
6
+ * @return {Object} 执行结果
7
+ */
8
+ async function main(ctx, db) {
9
+ // 获取请求参数
10
+ var req = ctx.request;
11
+ var {
12
+ query,
13
+ body
14
+ } = req;
15
+ var dict = {};
16
+ db.table = query.app + "_config";
17
+ db.size = 0;
18
+
19
+ // 操作sql模板
20
+ var list = await db.get();
21
+ for (var i = 0; i < list.length; i++) {
22
+ var o = list[i];
23
+ if (o.type === "number") {
24
+ dict[o.name] = Number(o.value || '0');
25
+ } else if (o.type === "boolean") {
26
+ dict[o.name] = Boolean(o.value || 'false');
27
+ } else if (o.type === "object" || o.type === "array") {
28
+ dict[o.name] = o.value.toJSON();
29
+ } else {
30
+ dict[o.name] = o.value;
31
+ }
32
+ }
33
+ $.cache.set("app_" + db.table, JSON.stringify(dict));
34
+ return $.ret.obj(dict);
35
+ };
36
+
37
+ exports.main = main;
@@ -0,0 +1,27 @@
1
+ {
2
+ // 是否启用过滤, 启用过滤后, 不符合的参数会被过滤掉
3
+ "filter": true,
4
+ // 校验脚本文件, 可以使用脚本的方式加一步进行校验, 让传参更加安全
5
+ "func_file": "",
6
+ // get请求
7
+ "get": {
8
+ // 查询参数校验项
9
+ "query": [],
10
+ // 查询必填参数
11
+ "query_required": ["app"]
12
+ },
13
+ // 校验列表
14
+ "list": [{
15
+ "name": "app",
16
+ "title": "应用名称",
17
+ "type": "string",
18
+ // 字符串类型时设置
19
+ "string": {
20
+ // 格式
21
+ "format": "en",
22
+ // 传值范围,字符串时为限制字符长度
23
+ "range": [2, 16]
24
+ }
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ // SQL模板标题
3
+ "title": "示例sql模板",
4
+ // 调用的数据表
5
+ "table": "user_account",
6
+ // 表主键,用于getObj查询时
7
+ "key": "user_id",
8
+ // 排序方式,{0}表示支持前端传值来排序,传值方式例如:orderby=user_id
9
+ "orderby": "{0}",
10
+ // 默认排序方式,当前端没有传值的情况下,采用默认传值方式
11
+ "orderby_default": "`user_id` desc",
12
+ // 查询列表时返回的字段,{0}表示支持前端传值
13
+ "field": "{0}",
14
+ // 查询对象时返回的字段
15
+ "field_obj": "{0}",
16
+ // 默认返回字段
17
+ "field_default": "`username`, `phone`",
18
+ // 需要过滤的字段,*代表泛匹配 前面*表示以xxx结尾,后面*表示以xxx开头,前后*表示包含xxx的过滤
19
+ "field_hide": ["*password*", "*token*"],
20
+ // 传值分隔符,如果允许多个值,可以通过这个来分割,如果不允许传多个值则设置为空
21
+ "separator": "|",
22
+ // 关键词,用于过滤掉这些值不会写到查询条件中,同时用来识别传的参数
23
+ "keyword": {
24
+ // 数据表名,当"table":"{0}", 允许识别表明
25
+ "table": "table",
26
+ // 排序方式
27
+ "orderby": "orderby",
28
+ // 查询的字段
29
+ "field": "field",
30
+ // 页码
31
+ "page": "page",
32
+ // 页面大小
33
+ "size": "size",
34
+ // 总计,返回查询结果总数
35
+ "count": "count",
36
+ // 调用方式
37
+ "method": "method"
38
+ },
39
+ // 调用方式 add增 del删 set改 get查 get_obj查一条 import导入 export导出, 支持什么方式就传什么值,支持多个用空格分隔
40
+ "method": "add del set get get_obj import export del_repeat sum count",
41
+ // 查询条件转换
42
+ "query": {
43
+ // 当username=xx时,转为`username` like '%xxx%'的SQL语法
44
+ "username": "`username` like '%{0}%'"
45
+ },
46
+ // 修改时的查询条件
47
+ "where": {
48
+ // 当修改查询条件出现user_id=xx时,转为`user_id` = 'xxx'的SQL语法
49
+ "user_id": "`user_id` = '{0}'"
50
+ },
51
+ // 修改时值转换
52
+ "update": {
53
+ // 当修改的正文中出现username是转换为指定格式
54
+ "username": "`username` = '{0}'"
55
+ },
56
+ // 默认查询条件
57
+ "query_dedefault": {
58
+
59
+ },
60
+ // 默认添加项
61
+ "body_default": {
62
+
63
+ },
64
+ // SQL执行脚本,当设置js文件名后, 执行该SQL还将调用这个脚本
65
+ "func_file": "",
66
+ // 导入导出格式,转换导入、导出Eexcel时字段名和字段值
67
+ "format": [],
68
+ // 去重条件,需要查重、并去重的字段在这里写
69
+ "del_repeat": {}
70
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/sys_lang",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "api_lang",
6
+ // 标题, 用于开发文档显示
7
+ "title": "站点语言",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "描述接口使用方法",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "ALL",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 0,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": false,
20
+ // 参数配置路径, 用于校验API请求参数是否正确, 同时显示在API文档中
21
+ "param_path": "./param.json",
22
+ /* 授权协议 */
23
+ "oauth": {
24
+ // 是否需要登录, true表示需要登录才能访问该接口
25
+ "signIn": false,
26
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
27
+ "vip": 0,
28
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "gm": 0,
30
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
31
+ "mc": 0,
32
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
33
+ "user_group": [],
34
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
35
+ "user_admin": []
36
+ }
37
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * 接口主函数
3
+ * @param {Object} ctx HTTP上下文
4
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
5
+ * @return {Object} 执行结果
6
+ */
7
+ async function main(ctx, db) {
8
+ // 获取请求参数
9
+ var req = ctx.request;
10
+ var q = req.query;
11
+ var qpp = q["app"] || "cms";
12
+ db.table = qpp + "_lang";
13
+ db.size = 0;
14
+ var type = q["type"];
15
+ var arr = await db.get({}, "", "`key`" + ",`" + type + "`");
16
+ var dict = {};
17
+ if (arr.length) {
18
+ ctx.cookies.set('sys_lang', type);
19
+ for (var i = 0; i < arr.length; i++) {
20
+ var o = arr[i];
21
+ dict[o.key] = o[type];
22
+ }
23
+ }
24
+ return dict;
25
+ };
26
+
27
+ exports.main = main;
@@ -0,0 +1,22 @@
1
+ {
2
+ // 是否启用过滤, 启用过滤后, 不符合的参数会被过滤掉
3
+ "filter": true,
4
+ // 校验脚本文件, 可以使用脚本的方式加一步进行校验, 让传参更加安全
5
+ "func_file": "",
6
+ // get请求
7
+ "get": {
8
+ // 查询参数校验项
9
+ "query": [],
10
+ // 查询必填参数
11
+ "query_required": ["type"]
12
+ },
13
+ // 校验列表
14
+ "list": [{
15
+ // 参数key名
16
+ "name": "type",
17
+ // 参数中文名
18
+ "title": "语言类型",
19
+ // 数据类型
20
+ "type": "string"
21
+ }]
22
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "nav",
3
+ "title": "导航信息",
4
+ "description": "获取指定app的导航链接和路由信息",
5
+ "path": "/api/sys_nav*",
6
+ "type": "api",
7
+ "func_file": "./index.js",
8
+ "func_name": "",
9
+ "method": "GET",
10
+ "cache": 0,
11
+ "client_cache": false,
12
+ "param_path": "./param.json",
13
+ "sql_path": "",
14
+ "check_param": true
15
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @description 接口主函数
3
+ * @param {Object} ctx HTTP上下文
4
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
5
+ * @return {Object} 执行结果
6
+ */
7
+ async function main(ctx, db) {
8
+ var req = ctx.request;
9
+ var query = req.query;
10
+ var scope = query['scope'] || 'admin';
11
+
12
+ var nav = $.nav_admin(scope);
13
+
14
+ if (query['update']) {
15
+ nav.update();
16
+ return $.ret.bl(true, '更新成功');
17
+ } else {
18
+ var {
19
+ name,
20
+ app,
21
+ type
22
+ } = query;
23
+ var n = app ? app : name;
24
+ var ret = await nav.run(n, type);
25
+ if (ret) {
26
+ if (ctx.path.endWith('.js')) {
27
+ ctx.type = "application/javascript; charset=utf-8";
28
+ ctx.set('Cache-Control', 'max-age=7200,immutable');
29
+ var code = JSON.stringify(ret);
30
+ return `define([], function() {"use strict"; return ${code} });`;
31
+ } else {
32
+ return $.ret.body(ret);
33
+ }
34
+ }
35
+ }
36
+ return null;
37
+ };
38
+
39
+ exports.main = main;