ylyx-cli 1.0.14 → 1.0.16

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 (286) hide show
  1. package/README.md +4 -0
  2. package/bin/ylyx.js +168 -168
  3. package/lib/config.js +283 -299
  4. package/lib/deploy.js +529 -415
  5. package/lib/generator.js +192 -192
  6. package/lib/index.js +113 -113
  7. package/lib/interactive.js +87 -87
  8. package/lib/remote.js +179 -179
  9. package/lib/template.js +174 -174
  10. package/lib/utils.js +148 -148
  11. package/package.json +5 -5
  12. package/templates/react-app/files/README.md +23 -23
  13. package/templates/react-app/files/package.json +28 -28
  14. package/templates/react-app/files/public/index.html +11 -11
  15. package/templates/react-app/files/src/App.css +15 -15
  16. package/templates/react-app/files/src/App.js +15 -15
  17. package/templates/react-app/files/src/index.css +10 -10
  18. package/templates/react-app/files/src/index.js +11 -11
  19. package/templates/react-app/template.json +11 -11
  20. package/templates/react-component/files/Component.module.css +5 -5
  21. package/templates/react-component/files/Component.tsx +31 -31
  22. package/templates/react-component/files/index.ts +2 -2
  23. package/templates/react-component/template.json +48 -48
  24. package/templates/vue-app/files/.editorconfig +14 -14
  25. package/templates/vue-app/files/.env.development +21 -21
  26. package/templates/vue-app/files/.env.production +18 -18
  27. package/templates/vue-app/files/.eslintignore +5 -5
  28. package/templates/vue-app/files/.eslintrc.js +267 -267
  29. package/templates/vue-app/files/.prettierignore +11 -11
  30. package/templates/vue-app/files/.travis.yml +5 -5
  31. package/templates/vue-app/files/.vscode/extensions.json +7 -7
  32. package/templates/vue-app/files/.vscode/settings.json +39 -39
  33. package/templates/vue-app/files/LICENSE +191 -191
  34. package/templates/vue-app/files/README.md +87 -87
  35. package/templates/vue-app/files/babel.config.js +11 -11
  36. package/templates/vue-app/files/jest.config.js +24 -24
  37. package/templates/vue-app/files/package.json +136 -136
  38. package/templates/vue-app/files/plopfile.js +7 -7
  39. package/templates/vue-app/files/postcss.config.js +5 -5
  40. package/templates/vue-app/files/public/default.js +25 -25
  41. package/templates/vue-app/files/public/index.html +26 -26
  42. package/templates/vue-app/files/src/App.vue +54 -54
  43. package/templates/vue-app/files/src/api/bigDataV/index.js +198 -198
  44. package/templates/vue-app/files/src/api/data.js +42 -42
  45. package/templates/vue-app/files/src/api/dataArchive/index.js +186 -186
  46. package/templates/vue-app/files/src/api/generator/genConfig.js +16 -16
  47. package/templates/vue-app/files/src/api/generator/generator.js +32 -32
  48. package/templates/vue-app/files/src/api/indexManagement/index.js +39 -39
  49. package/templates/vue-app/files/src/api/institutionMonitor/index.js +396 -396
  50. package/templates/vue-app/files/src/api/institutionSet/index.js +120 -120
  51. package/templates/vue-app/files/src/api/login.js +44 -44
  52. package/templates/vue-app/files/src/api/selfStatistics/index.js +50 -50
  53. package/templates/vue-app/files/src/api/system/code.js +15 -15
  54. package/templates/vue-app/files/src/api/system/dict.js +34 -34
  55. package/templates/vue-app/files/src/api/system/dictDetail.js +52 -52
  56. package/templates/vue-app/files/src/api/system/equipment.js +35 -35
  57. package/templates/vue-app/files/src/api/system/examManage.js +49 -49
  58. package/templates/vue-app/files/src/api/system/examProject.js +48 -48
  59. package/templates/vue-app/files/src/api/system/hosModel.js +35 -35
  60. package/templates/vue-app/files/src/api/system/hospital.js +88 -88
  61. package/templates/vue-app/files/src/api/system/job.js +40 -40
  62. package/templates/vue-app/files/src/api/system/menu.js +67 -67
  63. package/templates/vue-app/files/src/api/system/model.js +42 -42
  64. package/templates/vue-app/files/src/api/system/risConfig.js +9 -9
  65. package/templates/vue-app/files/src/api/system/role.js +64 -64
  66. package/templates/vue-app/files/src/api/system/sysSet.js +19 -19
  67. package/templates/vue-app/files/src/api/system/timing.js +41 -41
  68. package/templates/vue-app/files/src/api/system/user.js +121 -121
  69. package/templates/vue-app/files/src/api/tools/alipay.js +25 -25
  70. package/templates/vue-app/files/src/api/tools/email.js +24 -24
  71. package/templates/vue-app/files/src/api/tools/localStorage.js +27 -27
  72. package/templates/vue-app/files/src/api/tools/qiniu.js +40 -40
  73. package/templates/vue-app/files/src/assets/css/font-awesome.css +2342 -2342
  74. package/templates/vue-app/files/src/assets/css/font-awesome.min.css +2336 -2336
  75. package/templates/vue-app/files/src/assets/fonts/fontawesome-webfont.svg +2671 -2671
  76. package/templates/vue-app/files/src/assets/icons/index.js +9 -9
  77. package/templates/vue-app/files/src/assets/icons/svg/hospital.svg +1 -1
  78. package/templates/vue-app/files/src/assets/icons/svg/hospital1.svg +1 -1
  79. package/templates/vue-app/files/src/assets/icons/svg/loginOne.svg +35 -35
  80. package/templates/vue-app/files/src/assets/icons/svg/loginOneWhite.svg +19 -19
  81. package/templates/vue-app/files/src/assets/icons/svg/loginOr.svg +93 -93
  82. package/templates/vue-app/files/src/assets/icons/svg/loginUp.svg +96 -96
  83. package/templates/vue-app/files/src/assets/icons/svg/monitor.svg +1 -1
  84. package/templates/vue-app/files/src/assets/icons/svg/offline.svg +1 -1
  85. package/templates/vue-app/files/src/assets/icons/svg/online.svg +1 -1
  86. package/templates/vue-app/files/src/assets/icons/svg/system.svg +1 -1
  87. package/templates/vue-app/files/src/assets/icons/svgo.yml +21 -21
  88. package/templates/vue-app/files/src/assets/styles/btn.scss +103 -103
  89. package/templates/vue-app/files/src/assets/styles/eladmin.scss +124 -124
  90. package/templates/vue-app/files/src/assets/styles/element-ui.scss +217 -217
  91. package/templates/vue-app/files/src/assets/styles/element-variables.scss +31 -31
  92. package/templates/vue-app/files/src/assets/styles/global.scss +73 -73
  93. package/templates/vue-app/files/src/assets/styles/index.scss +220 -220
  94. package/templates/vue-app/files/src/assets/styles/mixin.scss +60 -60
  95. package/templates/vue-app/files/src/assets/styles/publicStyle.scss +224 -224
  96. package/templates/vue-app/files/src/assets/styles/sidebar.scss +239 -239
  97. package/templates/vue-app/files/src/assets/styles/transition.scss +48 -48
  98. package/templates/vue-app/files/src/assets/styles/variables.scss +44 -44
  99. package/templates/vue-app/files/src/common/flexible.js +145 -145
  100. package/templates/vue-app/files/src/components/Breadcrumb/index.vue +87 -87
  101. package/templates/vue-app/files/src/components/Crud/CRUD.operation.vue +248 -248
  102. package/templates/vue-app/files/src/components/Crud/Pagination.vue +20 -20
  103. package/templates/vue-app/files/src/components/Crud/RR.operation.vue +39 -39
  104. package/templates/vue-app/files/src/components/Crud/UD.operation.vue +106 -106
  105. package/templates/vue-app/files/src/components/Crud/crud.js +907 -907
  106. package/templates/vue-app/files/src/components/Crud/user/UR.operation.vue +154 -154
  107. package/templates/vue-app/files/src/components/DateRangePicker/index.vue +42 -42
  108. package/templates/vue-app/files/src/components/DateRangePickerProhibitNext/index.vue +42 -42
  109. package/templates/vue-app/files/src/components/DateRangePickerProhibitTodayNext/index.vue +48 -48
  110. package/templates/vue-app/files/src/components/Dict/Dict.js +31 -31
  111. package/templates/vue-app/files/src/components/Dict/index.js +29 -29
  112. package/templates/vue-app/files/src/components/Doc/index.vue +16 -16
  113. package/templates/vue-app/files/src/components/Echarts/BarChart.vue +115 -115
  114. package/templates/vue-app/files/src/components/Echarts/Category.vue +768 -768
  115. package/templates/vue-app/files/src/components/Echarts/Funnel.vue +120 -120
  116. package/templates/vue-app/files/src/components/Echarts/Gauge.vue +74 -74
  117. package/templates/vue-app/files/src/components/Echarts/Graph.vue +101 -101
  118. package/templates/vue-app/files/src/components/Echarts/HeatMap.vue +301 -301
  119. package/templates/vue-app/files/src/components/Echarts/Line3D.vue +110 -110
  120. package/templates/vue-app/files/src/components/Echarts/PieChart.vue +84 -84
  121. package/templates/vue-app/files/src/components/Echarts/Point.vue +161 -161
  122. package/templates/vue-app/files/src/components/Echarts/RadarChart.vue +123 -123
  123. package/templates/vue-app/files/src/components/Echarts/Rich.vue +160 -160
  124. package/templates/vue-app/files/src/components/Echarts/Sankey.vue +114 -114
  125. package/templates/vue-app/files/src/components/Echarts/Scatter.vue +192 -192
  126. package/templates/vue-app/files/src/components/Echarts/Sunburst.vue +127 -127
  127. package/templates/vue-app/files/src/components/Echarts/ThemeRiver.vue +233 -233
  128. package/templates/vue-app/files/src/components/Echarts/WordCloud.vue +201 -201
  129. package/templates/vue-app/files/src/components/GithubCorner/index.vue +55 -55
  130. package/templates/vue-app/files/src/components/Hamburger/index.vue +44 -44
  131. package/templates/vue-app/files/src/components/HeaderSearch/index.vue +196 -196
  132. package/templates/vue-app/files/src/components/IconSelect/index.vue +74 -74
  133. package/templates/vue-app/files/src/components/IconSelect/requireIcons.js +10 -10
  134. package/templates/vue-app/files/src/components/Iframe/index.vue +30 -30
  135. package/templates/vue-app/files/src/components/JavaEdit/index.vue +78 -78
  136. package/templates/vue-app/files/src/components/Pagination/index.vue +100 -100
  137. package/templates/vue-app/files/src/components/PanThumb/index.vue +149 -149
  138. package/templates/vue-app/files/src/components/ParentView/index.vue +3 -3
  139. package/templates/vue-app/files/src/components/Permission/index.js +13 -13
  140. package/templates/vue-app/files/src/components/Permission/permission.js +21 -21
  141. package/templates/vue-app/files/src/components/RightPanel/index.vue +149 -149
  142. package/templates/vue-app/files/src/components/Screenfull/index.vue +60 -60
  143. package/templates/vue-app/files/src/components/SizeSelect/index.vue +60 -60
  144. package/templates/vue-app/files/src/components/SvgIcon/index.vue +66 -66
  145. package/templates/vue-app/files/src/components/ThemePicker/index.vue +177 -177
  146. package/templates/vue-app/files/src/components/UploadExcel/index.vue +149 -149
  147. package/templates/vue-app/files/src/components/WaterMark/setWaterMark.js +68 -68
  148. package/templates/vue-app/files/src/components/WaterMark/waterMark.vue +69 -69
  149. package/templates/vue-app/files/src/components/Xgplayer/index.vue +49 -49
  150. package/templates/vue-app/files/src/components/YamlEdit/index.vue +81 -81
  151. package/templates/vue-app/files/src/layout/components/AppMain.vue +67 -67
  152. package/templates/vue-app/files/src/layout/components/Navbar.vue +209 -209
  153. package/templates/vue-app/files/src/layout/components/Settings/index.vue +125 -125
  154. package/templates/vue-app/files/src/layout/components/Sidebar/FixiOSBug.js +26 -26
  155. package/templates/vue-app/files/src/layout/components/Sidebar/Item.vue +29 -29
  156. package/templates/vue-app/files/src/layout/components/Sidebar/Link.vue +35 -35
  157. package/templates/vue-app/files/src/layout/components/Sidebar/Logo.vue +93 -93
  158. package/templates/vue-app/files/src/layout/components/Sidebar/SidebarItem.vue +104 -104
  159. package/templates/vue-app/files/src/layout/components/Sidebar/index.vue +79 -79
  160. package/templates/vue-app/files/src/layout/components/TagsView/ScrollPane.vue +90 -90
  161. package/templates/vue-app/files/src/layout/components/TagsView/index.vue +299 -299
  162. package/templates/vue-app/files/src/layout/components/index.js +5 -5
  163. package/templates/vue-app/files/src/layout/index.vue +119 -119
  164. package/templates/vue-app/files/src/layout/mixin/ResizeHandler.js +45 -45
  165. package/templates/vue-app/files/src/main.js +89 -89
  166. package/templates/vue-app/files/src/mixins/crud.js +348 -348
  167. package/templates/vue-app/files/src/router/index.js +156 -156
  168. package/templates/vue-app/files/src/router/routers.js +203 -203
  169. package/templates/vue-app/files/src/settings.js +57 -57
  170. package/templates/vue-app/files/src/store/getters.js +29 -29
  171. package/templates/vue-app/files/src/store/index.js +25 -25
  172. package/templates/vue-app/files/src/store/modules/api.js +33 -33
  173. package/templates/vue-app/files/src/store/modules/app.js +55 -55
  174. package/templates/vue-app/files/src/store/modules/permission.js +79 -79
  175. package/templates/vue-app/files/src/store/modules/register.js +17 -17
  176. package/templates/vue-app/files/src/store/modules/settings.js +46 -46
  177. package/templates/vue-app/files/src/store/modules/tagsView.js +168 -168
  178. package/templates/vue-app/files/src/store/modules/user.js +119 -119
  179. package/templates/vue-app/files/src/utils/auth.js +18 -18
  180. package/templates/vue-app/files/src/utils/base64ToFile.js +27 -27
  181. package/templates/vue-app/files/src/utils/clipboard.js +36 -36
  182. package/templates/vue-app/files/src/utils/datetime.js +289 -289
  183. package/templates/vue-app/files/src/utils/getBlobFile.js +10 -10
  184. package/templates/vue-app/files/src/utils/getTime.js +29 -29
  185. package/templates/vue-app/files/src/utils/index.js +520 -520
  186. package/templates/vue-app/files/src/utils/permission.js +29 -29
  187. package/templates/vue-app/files/src/utils/pinyin.js +450 -450
  188. package/templates/vue-app/files/src/utils/request.js +139 -139
  189. package/templates/vue-app/files/src/utils/rsaEncrypt.js +37 -37
  190. package/templates/vue-app/files/src/utils/shortcuts.js +210 -210
  191. package/templates/vue-app/files/src/utils/upload.js +12 -12
  192. package/templates/vue-app/files/src/utils/validate.js +262 -262
  193. package/templates/vue-app/files/src/views/components/Echarts.vue +124 -124
  194. package/templates/vue-app/files/src/views/components/Editor.vue +75 -75
  195. package/templates/vue-app/files/src/views/components/MarkDown.vue +44 -44
  196. package/templates/vue-app/files/src/views/components/UVideo.vue +37 -37
  197. package/templates/vue-app/files/src/views/components/YamlEdit.vue +206 -206
  198. package/templates/vue-app/files/src/views/components/camera/camera.vue +115 -115
  199. package/templates/vue-app/files/src/views/components/camera/cameraTest.vue +158 -158
  200. package/templates/vue-app/files/src/views/components/excel/upload-excel.vue +41 -41
  201. package/templates/vue-app/files/src/views/components/icons/element-icons.js +74 -74
  202. package/templates/vue-app/files/src/views/components/icons/index.vue +106 -106
  203. package/templates/vue-app/files/src/views/components/icons/svg-icons.js +10 -10
  204. package/templates/vue-app/files/src/views/components/scroll/index.vue +107 -107
  205. package/templates/vue-app/files/src/views/components/scrollFull/index.vue +99 -99
  206. package/templates/vue-app/files/src/views/dashboard/LineChart.vue +138 -138
  207. package/templates/vue-app/files/src/views/dashboard/PanelGroup.vue +173 -173
  208. package/templates/vue-app/files/src/views/dashboard/mixins/resize.js +57 -57
  209. package/templates/vue-app/files/src/views/dataArchive/delTable.vue +354 -354
  210. package/templates/vue-app/files/src/views/dataArchive/exportDetail.vue +121 -121
  211. package/templates/vue-app/files/src/views/dataArchive/exportList.vue +160 -160
  212. package/templates/vue-app/files/src/views/dataArchive/index.vue +2104 -2104
  213. package/templates/vue-app/files/src/views/features/401.vue +83 -83
  214. package/templates/vue-app/files/src/views/features/404.vue +226 -226
  215. package/templates/vue-app/files/src/views/features/redirect.vue +12 -12
  216. package/templates/vue-app/files/src/views/generator/config.vue +348 -348
  217. package/templates/vue-app/files/src/views/generator/index.vue +143 -143
  218. package/templates/vue-app/files/src/views/generator/preview.vue +39 -39
  219. package/templates/vue-app/files/src/views/home.vue +80 -80
  220. package/templates/vue-app/files/src/views/indexManagement/index.vue +422 -422
  221. package/templates/vue-app/files/src/views/indexManagement/other.vue +286 -286
  222. package/templates/vue-app/files/src/views/institutionMonitor/components/LineChart.vue +191 -191
  223. package/templates/vue-app/files/src/views/institutionMonitor/index.scss +339 -339
  224. package/templates/vue-app/files/src/views/institutionMonitor/index.vue +1385 -1385
  225. package/templates/vue-app/files/src/views/institutionMonitor/mixins/resize.js +57 -57
  226. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/checkProjectCode.vue +267 -267
  227. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/imageAbnormalMonitor.vue +361 -361
  228. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/index.vue +686 -686
  229. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/leakageAnomaly.vue +270 -270
  230. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/moveMonitore.vue +114 -114
  231. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/qualityMonitore.vue +338 -338
  232. package/templates/vue-app/files/src/views/institutionSet/cloudSet.vue +534 -534
  233. package/templates/vue-app/files/src/views/institutionSet/index.vue +2550 -2550
  234. package/templates/vue-app/files/src/views/login.vue +243 -243
  235. package/templates/vue-app/files/src/views/qualityLogin.vue +280 -280
  236. package/templates/vue-app/files/src/views/selfStatistics/components/LineChart.vue +296 -296
  237. package/templates/vue-app/files/src/views/selfStatistics/hospitalDetail/index.vue +533 -533
  238. package/templates/vue-app/files/src/views/selfStatistics/index.scss +447 -447
  239. package/templates/vue-app/files/src/views/selfStatistics/index.vue +903 -903
  240. package/templates/vue-app/files/src/views/selfStatistics/mixins/resize.js +57 -57
  241. package/templates/vue-app/files/src/views/selfStatistics/monitorDetail/index.vue +285 -285
  242. package/templates/vue-app/files/src/views/selfStatistics/offlineDetail/index.vue +104 -104
  243. package/templates/vue-app/files/src/views/selfStatistics/selfActiveDetail/index.vue +104 -104
  244. package/templates/vue-app/files/src/views/selfStatistics/selfMonitorDetail/index.vue +420 -420
  245. package/templates/vue-app/files/src/views/selfStatistics/setWaterMark/setWaterMark.js +68 -68
  246. package/templates/vue-app/files/src/views/selfStatistics/setWaterMark/waterMark.vue +69 -69
  247. package/templates/vue-app/files/src/views/system/dept/index.vue +144 -144
  248. package/templates/vue-app/files/src/views/system/dict/dictDetail.vue +146 -146
  249. package/templates/vue-app/files/src/views/system/dict/index.vue +159 -159
  250. package/templates/vue-app/files/src/views/system/examModality/index.vue +174 -174
  251. package/templates/vue-app/files/src/views/system/examPart/index.vue +184 -184
  252. package/templates/vue-app/files/src/views/system/examProject/index.vue +321 -321
  253. package/templates/vue-app/files/src/views/system/examine/index.vue +66 -66
  254. package/templates/vue-app/files/src/views/system/job/index.vue +119 -119
  255. package/templates/vue-app/files/src/views/system/job/module/form.vue +72 -72
  256. package/templates/vue-app/files/src/views/system/job/module/header.vue +48 -48
  257. package/templates/vue-app/files/src/views/system/menu/index.vue +327 -327
  258. package/templates/vue-app/files/src/views/system/model/index.vue +285 -285
  259. package/templates/vue-app/files/src/views/system/role/index.vue +434 -434
  260. package/templates/vue-app/files/src/views/system/sysSet/index.vue +84 -84
  261. package/templates/vue-app/files/src/views/system/timing/index.vue +289 -289
  262. package/templates/vue-app/files/src/views/system/timing/log.vue +143 -143
  263. package/templates/vue-app/files/src/views/system/user/admin.vue +414 -414
  264. package/templates/vue-app/files/src/views/system/user/center/updateEmail.vue +146 -146
  265. package/templates/vue-app/files/src/views/system/user/center/updatePass.vue +168 -168
  266. package/templates/vue-app/files/src/views/system/user/center.vue +140 -140
  267. package/templates/vue-app/files/src/views/system/user/index.vue +972 -972
  268. package/templates/vue-app/files/src/views/systemSet/role/index.vue +314 -314
  269. package/templates/vue-app/files/src/views/systemSet/user/admin.vue +414 -414
  270. package/templates/vue-app/files/src/views/systemSet/user/center/updateEmail.vue +146 -146
  271. package/templates/vue-app/files/src/views/systemSet/user/center/updatePass.vue +115 -115
  272. package/templates/vue-app/files/src/views/systemSet/user/center.vue +351 -351
  273. package/templates/vue-app/files/src/views/systemSet/user/index.vue +928 -928
  274. package/templates/vue-app/files/src/views/tools/aliPay/config.vue +102 -102
  275. package/templates/vue-app/files/src/views/tools/aliPay/index.vue +48 -48
  276. package/templates/vue-app/files/src/views/tools/aliPay/toPay.vue +91 -91
  277. package/templates/vue-app/files/src/views/tools/email/config.vue +91 -91
  278. package/templates/vue-app/files/src/views/tools/email/index.vue +42 -42
  279. package/templates/vue-app/files/src/views/tools/email/send.vue +159 -159
  280. package/templates/vue-app/files/src/views/tools/storage/index.vue +35 -35
  281. package/templates/vue-app/files/src/views/tools/storage/local/index.vue +207 -207
  282. package/templates/vue-app/files/src/views/tools/storage/qiniu/form.vue +108 -108
  283. package/templates/vue-app/files/src/views/tools/storage/qiniu/index.vue +241 -241
  284. package/templates/vue-app/files/src/views/tools/swagger/index.vue +14 -14
  285. package/templates/vue-app/files/vue.config.js +173 -173
  286. package/templates/vue-app/template.json +29 -29
@@ -1,206 +1,206 @@
1
- <template>
2
- <div class="app-container">
3
- <p class="warn-content">
4
- Yaml编辑器 基于
5
- <a href="https://github.com/codemirror/CodeMirror" target="_blank">CodeMirror</a>,
6
- 主题预览地址 <a href="https://codemirror.net/demo/theme.html#idea" target="_blank">Theme</a>
7
- </p>
8
- <Yaml :value="value" :height="height" />
9
- </div>
10
- </template>
11
-
12
- <script>
13
- import Yaml from '@/components/YamlEdit/index';
14
- export default {
15
- name: 'YamlEdit',
16
- components: { Yaml },
17
- data() {
18
- return {
19
- height: document.documentElement.clientHeight - 210 + 'px',
20
- value:
21
- '# 展示数据,如需更换主题,请在src/components/YamlEdit 目录中搜索原主题名称进行替换\n' +
22
- '\n' +
23
- '# ===================================================================\n' +
24
- '# Spring Boot configuration.\n' +
25
- '#\n' +
26
- '# This configuration will be overridden by the Spring profile you use,\n' +
27
- '# for example application-dev.yml if you use the "dev" profile.\n' +
28
- '#\n' +
29
- '# More information on profiles: https://www.jhipster.tech/profiles/\n' +
30
- '# More information on configuration properties: https://www.jhipster.tech/common-application-properties/\n' +
31
- '# ===================================================================\n' +
32
- '\n' +
33
- '# ===================================================================\n' +
34
- '# Standard Spring Boot properties.\n' +
35
- '# Full reference is available at:\n' +
36
- '# http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html\n' +
37
- '# ===================================================================\n' +
38
- '\n' +
39
- 'eureka:\n' +
40
- ' client:\n' +
41
- ' enabled: true\n' +
42
- ' healthcheck:\n' +
43
- ' enabled: true\n' +
44
- ' fetch-registry: true\n' +
45
- ' register-with-eureka: true\n' +
46
- ' instance-info-replication-interval-seconds: 10\n' +
47
- ' registry-fetch-interval-seconds: 10\n' +
48
- ' instance:\n' +
49
- ' appname: product\n' +
50
- ' instanceId: product:${spring.application.instance-id:${random.value}}\n' +
51
- ' #instanceId: 127.0.0.1:9080\n' +
52
- ' lease-renewal-interval-in-seconds: 5\n' +
53
- ' lease-expiration-duration-in-seconds: 10\n' +
54
- ' status-page-url-path: ${management.endpoints.web.base-path}/info\n' +
55
- ' health-check-url-path: ${management.endpoints.web.base-path}/health\n' +
56
- ' metadata-map:\n' +
57
- ' zone: primary # This is needed for the load balancer\n' +
58
- ' profile: ${spring.profiles.active}\n' +
59
- ' version: ${info.project.version:}\n' +
60
- ' git-version: ${git.commit.id.describe:}\n' +
61
- ' git-commit: ${git.commit.id.abbrev:}\n' +
62
- ' git-branch: ${git.branch:}\n' +
63
- 'ribbon:\n' +
64
- ' ReadTimeout: 120000\n' +
65
- ' ConnectTimeout: 300000\n' +
66
- ' eureka:\n' +
67
- ' enabled: true\n' +
68
- 'zuul:\n' +
69
- ' host:\n' +
70
- ' connect-timeout-millis: 5000\n' +
71
- ' max-per-route-connections: 10000\n' +
72
- ' max-total-connections: 5000\n' +
73
- ' socket-timeout-millis: 60000\n' +
74
- ' semaphore:\n' +
75
- ' max-semaphores: 500\n' +
76
- '\n' +
77
- 'feign:\n' +
78
- ' hystrix:\n' +
79
- ' enabled: true\n' +
80
- ' client:\n' +
81
- ' config:\n' +
82
- ' default:\n' +
83
- ' connectTimeout: 500000\n' +
84
- ' readTimeout: 500000\n' +
85
- '\n' +
86
- '# See https://github.com/Netflix/Hystrix/wiki/Configuration\n' +
87
- 'hystrix:\n' +
88
- ' command:\n' +
89
- ' default:\n' +
90
- ' circuitBreaker:\n' +
91
- ' sleepWindowInMilliseconds: 100000\n' +
92
- ' forceClosed: true\n' +
93
- ' execution:\n' +
94
- ' isolation:\n' +
95
- '# strategy: SEMAPHORE\n' +
96
- '# See https://github.com/spring-cloud/spring-cloud-netflix/issues/1330\n' +
97
- ' thread:\n' +
98
- ' timeoutInMilliseconds: 60000\n' +
99
- ' shareSecurityContext: true\n' +
100
- '\n' +
101
- 'management:\n' +
102
- ' endpoints:\n' +
103
- ' web:\n' +
104
- ' base-path: /management\n' +
105
- ' exposure:\n' +
106
- ' include: ["configprops", "env", "health", "info", "threaddump"]\n' +
107
- ' endpoint:\n' +
108
- ' health:\n' +
109
- ' show-details: when_authorized\n' +
110
- ' info:\n' +
111
- ' git:\n' +
112
- ' mode: full\n' +
113
- ' health:\n' +
114
- ' mail:\n' +
115
- ' enabled: false # When using the MailService, configure an SMTP server and set this to true\n' +
116
- ' metrics:\n' +
117
- ' enabled: false # http://micrometer.io/ is disabled by default, as we use http://metrics.dropwizard.io/ instead\n' +
118
- '\n' +
119
- 'spring:\n' +
120
- ' application:\n' +
121
- ' name: product\n' +
122
- ' jpa:\n' +
123
- ' open-in-view: false\n' +
124
- ' hibernate:\n' +
125
- ' ddl-auto: update\n' +
126
- ' naming:\n' +
127
- ' physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy\n' +
128
- ' implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy\n' +
129
- ' messages:\n' +
130
- ' basename: i18n/messages\n' +
131
- ' mvc:\n' +
132
- ' favicon:\n' +
133
- ' enabled: false\n' +
134
- ' thymeleaf:\n' +
135
- ' mode: HTML\n' +
136
- 'security:\n' +
137
- ' oauth2:\n' +
138
- ' resource:\n' +
139
- ' filter-order: 3\n' +
140
- '\n' +
141
- 'server:\n' +
142
- ' servlet:\n' +
143
- ' session:\n' +
144
- ' cookie:\n' +
145
- ' http-only: true\n' +
146
- '\n' +
147
- '# Properties to be exposed on the /info management endpoint\n' +
148
- 'info:\n' +
149
- ' # Comma separated list of profiles that will trigger the ribbon to show\n' +
150
- ' display-ribbon-on-profiles: "dev"\n' +
151
- '\n' +
152
- '# ===================================================================\n' +
153
- '# JHipster specific properties\n' +
154
- '#\n' +
155
- '# Full reference is available at: https://www.jhipster.tech/common-application-properties/\n' +
156
- '# ===================================================================\n' +
157
- '\n' +
158
- 'jhipster:\n' +
159
- ' async:\n' +
160
- ' core-pool-size: 2\n' +
161
- ' max-pool-size: 50\n' +
162
- ' queue-capacity: 10000\n' +
163
- ' # By default CORS is disabled. Uncomment to enable.\n' +
164
- ' #cors:\n' +
165
- ' #allowed-origins: "*"\n' +
166
- ' #allowed-methods: "*"\n' +
167
- ' #allowed-headers: "*"\n' +
168
- ' #exposed-headers: "Authorization,Link,X-Total-Count"\n' +
169
- ' #allow-credentials: true\n' +
170
- ' #max-age: 1800\n' +
171
- ' mail:\n' +
172
- ' from: product@localhost\n' +
173
- ' swagger:\n' +
174
- ' default-include-pattern: /api/.*\n' +
175
- ' title: product API\n' +
176
- ' description: product API documentation\n' +
177
- ' version: 0.0.1\n' +
178
- ' terms-of-service-url:\n' +
179
- ' contact-name:\n' +
180
- ' contact-url:\n' +
181
- ' contact-email:\n' +
182
- ' license:\n' +
183
- ' license-url:\n' +
184
- '\n' +
185
- '# ===================================================================\n' +
186
- '# Application specific properties\n' +
187
- '# Add your own application properties here, see the ApplicationProperties class\n' +
188
- '# to have type-safe configuration, like in the JHipsterProperties above\n' +
189
- '#\n' +
190
- '# More documentation is available at:\n' +
191
- '# https://www.jhipster.tech/common-application-properties/\n' +
192
- '# ===================================================================\n' +
193
- '\n' +
194
- '# application:\n',
195
- };
196
- },
197
- mounted() {
198
- const that = this;
199
- window.onresize = function temp() {
200
- that.height = document.documentElement.clientHeight - 210 + 'px';
201
- };
202
- },
203
- };
204
- </script>
205
-
206
- <style scoped></style>
1
+ <template>
2
+ <div class="app-container">
3
+ <p class="warn-content">
4
+ Yaml编辑器 基于
5
+ <a href="https://github.com/codemirror/CodeMirror" target="_blank">CodeMirror</a>,
6
+ 主题预览地址 <a href="https://codemirror.net/demo/theme.html#idea" target="_blank">Theme</a>
7
+ </p>
8
+ <Yaml :value="value" :height="height" />
9
+ </div>
10
+ </template>
11
+
12
+ <script>
13
+ import Yaml from '@/components/YamlEdit/index';
14
+ export default {
15
+ name: 'YamlEdit',
16
+ components: { Yaml },
17
+ data() {
18
+ return {
19
+ height: document.documentElement.clientHeight - 210 + 'px',
20
+ value:
21
+ '# 展示数据,如需更换主题,请在src/components/YamlEdit 目录中搜索原主题名称进行替换\n' +
22
+ '\n' +
23
+ '# ===================================================================\n' +
24
+ '# Spring Boot configuration.\n' +
25
+ '#\n' +
26
+ '# This configuration will be overridden by the Spring profile you use,\n' +
27
+ '# for example application-dev.yml if you use the "dev" profile.\n' +
28
+ '#\n' +
29
+ '# More information on profiles: https://www.jhipster.tech/profiles/\n' +
30
+ '# More information on configuration properties: https://www.jhipster.tech/common-application-properties/\n' +
31
+ '# ===================================================================\n' +
32
+ '\n' +
33
+ '# ===================================================================\n' +
34
+ '# Standard Spring Boot properties.\n' +
35
+ '# Full reference is available at:\n' +
36
+ '# http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html\n' +
37
+ '# ===================================================================\n' +
38
+ '\n' +
39
+ 'eureka:\n' +
40
+ ' client:\n' +
41
+ ' enabled: true\n' +
42
+ ' healthcheck:\n' +
43
+ ' enabled: true\n' +
44
+ ' fetch-registry: true\n' +
45
+ ' register-with-eureka: true\n' +
46
+ ' instance-info-replication-interval-seconds: 10\n' +
47
+ ' registry-fetch-interval-seconds: 10\n' +
48
+ ' instance:\n' +
49
+ ' appname: product\n' +
50
+ ' instanceId: product:${spring.application.instance-id:${random.value}}\n' +
51
+ ' #instanceId: 127.0.0.1:9080\n' +
52
+ ' lease-renewal-interval-in-seconds: 5\n' +
53
+ ' lease-expiration-duration-in-seconds: 10\n' +
54
+ ' status-page-url-path: ${management.endpoints.web.base-path}/info\n' +
55
+ ' health-check-url-path: ${management.endpoints.web.base-path}/health\n' +
56
+ ' metadata-map:\n' +
57
+ ' zone: primary # This is needed for the load balancer\n' +
58
+ ' profile: ${spring.profiles.active}\n' +
59
+ ' version: ${info.project.version:}\n' +
60
+ ' git-version: ${git.commit.id.describe:}\n' +
61
+ ' git-commit: ${git.commit.id.abbrev:}\n' +
62
+ ' git-branch: ${git.branch:}\n' +
63
+ 'ribbon:\n' +
64
+ ' ReadTimeout: 120000\n' +
65
+ ' ConnectTimeout: 300000\n' +
66
+ ' eureka:\n' +
67
+ ' enabled: true\n' +
68
+ 'zuul:\n' +
69
+ ' host:\n' +
70
+ ' connect-timeout-millis: 5000\n' +
71
+ ' max-per-route-connections: 10000\n' +
72
+ ' max-total-connections: 5000\n' +
73
+ ' socket-timeout-millis: 60000\n' +
74
+ ' semaphore:\n' +
75
+ ' max-semaphores: 500\n' +
76
+ '\n' +
77
+ 'feign:\n' +
78
+ ' hystrix:\n' +
79
+ ' enabled: true\n' +
80
+ ' client:\n' +
81
+ ' config:\n' +
82
+ ' default:\n' +
83
+ ' connectTimeout: 500000\n' +
84
+ ' readTimeout: 500000\n' +
85
+ '\n' +
86
+ '# See https://github.com/Netflix/Hystrix/wiki/Configuration\n' +
87
+ 'hystrix:\n' +
88
+ ' command:\n' +
89
+ ' default:\n' +
90
+ ' circuitBreaker:\n' +
91
+ ' sleepWindowInMilliseconds: 100000\n' +
92
+ ' forceClosed: true\n' +
93
+ ' execution:\n' +
94
+ ' isolation:\n' +
95
+ '# strategy: SEMAPHORE\n' +
96
+ '# See https://github.com/spring-cloud/spring-cloud-netflix/issues/1330\n' +
97
+ ' thread:\n' +
98
+ ' timeoutInMilliseconds: 60000\n' +
99
+ ' shareSecurityContext: true\n' +
100
+ '\n' +
101
+ 'management:\n' +
102
+ ' endpoints:\n' +
103
+ ' web:\n' +
104
+ ' base-path: /management\n' +
105
+ ' exposure:\n' +
106
+ ' include: ["configprops", "env", "health", "info", "threaddump"]\n' +
107
+ ' endpoint:\n' +
108
+ ' health:\n' +
109
+ ' show-details: when_authorized\n' +
110
+ ' info:\n' +
111
+ ' git:\n' +
112
+ ' mode: full\n' +
113
+ ' health:\n' +
114
+ ' mail:\n' +
115
+ ' enabled: false # When using the MailService, configure an SMTP server and set this to true\n' +
116
+ ' metrics:\n' +
117
+ ' enabled: false # http://micrometer.io/ is disabled by default, as we use http://metrics.dropwizard.io/ instead\n' +
118
+ '\n' +
119
+ 'spring:\n' +
120
+ ' application:\n' +
121
+ ' name: product\n' +
122
+ ' jpa:\n' +
123
+ ' open-in-view: false\n' +
124
+ ' hibernate:\n' +
125
+ ' ddl-auto: update\n' +
126
+ ' naming:\n' +
127
+ ' physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy\n' +
128
+ ' implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy\n' +
129
+ ' messages:\n' +
130
+ ' basename: i18n/messages\n' +
131
+ ' mvc:\n' +
132
+ ' favicon:\n' +
133
+ ' enabled: false\n' +
134
+ ' thymeleaf:\n' +
135
+ ' mode: HTML\n' +
136
+ 'security:\n' +
137
+ ' oauth2:\n' +
138
+ ' resource:\n' +
139
+ ' filter-order: 3\n' +
140
+ '\n' +
141
+ 'server:\n' +
142
+ ' servlet:\n' +
143
+ ' session:\n' +
144
+ ' cookie:\n' +
145
+ ' http-only: true\n' +
146
+ '\n' +
147
+ '# Properties to be exposed on the /info management endpoint\n' +
148
+ 'info:\n' +
149
+ ' # Comma separated list of profiles that will trigger the ribbon to show\n' +
150
+ ' display-ribbon-on-profiles: "dev"\n' +
151
+ '\n' +
152
+ '# ===================================================================\n' +
153
+ '# JHipster specific properties\n' +
154
+ '#\n' +
155
+ '# Full reference is available at: https://www.jhipster.tech/common-application-properties/\n' +
156
+ '# ===================================================================\n' +
157
+ '\n' +
158
+ 'jhipster:\n' +
159
+ ' async:\n' +
160
+ ' core-pool-size: 2\n' +
161
+ ' max-pool-size: 50\n' +
162
+ ' queue-capacity: 10000\n' +
163
+ ' # By default CORS is disabled. Uncomment to enable.\n' +
164
+ ' #cors:\n' +
165
+ ' #allowed-origins: "*"\n' +
166
+ ' #allowed-methods: "*"\n' +
167
+ ' #allowed-headers: "*"\n' +
168
+ ' #exposed-headers: "Authorization,Link,X-Total-Count"\n' +
169
+ ' #allow-credentials: true\n' +
170
+ ' #max-age: 1800\n' +
171
+ ' mail:\n' +
172
+ ' from: product@localhost\n' +
173
+ ' swagger:\n' +
174
+ ' default-include-pattern: /api/.*\n' +
175
+ ' title: product API\n' +
176
+ ' description: product API documentation\n' +
177
+ ' version: 0.0.1\n' +
178
+ ' terms-of-service-url:\n' +
179
+ ' contact-name:\n' +
180
+ ' contact-url:\n' +
181
+ ' contact-email:\n' +
182
+ ' license:\n' +
183
+ ' license-url:\n' +
184
+ '\n' +
185
+ '# ===================================================================\n' +
186
+ '# Application specific properties\n' +
187
+ '# Add your own application properties here, see the ApplicationProperties class\n' +
188
+ '# to have type-safe configuration, like in the JHipsterProperties above\n' +
189
+ '#\n' +
190
+ '# More documentation is available at:\n' +
191
+ '# https://www.jhipster.tech/common-application-properties/\n' +
192
+ '# ===================================================================\n' +
193
+ '\n' +
194
+ '# application:\n',
195
+ };
196
+ },
197
+ mounted() {
198
+ const that = this;
199
+ window.onresize = function temp() {
200
+ that.height = document.documentElement.clientHeight - 210 + 'px';
201
+ };
202
+ },
203
+ };
204
+ </script>
205
+
206
+ <style scoped></style>
@@ -1,115 +1,115 @@
1
- <template>
2
- <div>
3
- <video id="video" width="640" height="480" autoplay="autoplay"></video>
4
- <!--拍照按钮-->
5
- <div>
6
- <button @click="action" id="capture">拍照</button>
7
- </div>
8
- <!--描绘video截图-->
9
- <canvas v-show="false" id="canvas" width="640" height="480"></canvas>
10
- </div>
11
- </template>
12
-
13
- <script>
14
- export default {
15
- name: 'home',
16
- data() {
17
- return {
18
- fileName: '点击Vue拍照',
19
- base64ImgData: null,
20
- };
21
- },
22
- created() {
23
- this.init();
24
- },
25
- methods: {
26
- init() {
27
- this.$nextTick(() => {
28
- let canvas = document.getElementById('canvas');
29
- let video = document.getElementById('video');
30
- let context = canvas.getContext('2d');
31
- let capture = document.getElementById('capture');
32
- });
33
-
34
- // 老的浏览器可能根本没有实现 mediaDevices,所以我们可以先设置一个空的对象
35
- if (navigator.mediaDevices === undefined) {
36
- navigator.mediaDevices = {};
37
- }
38
-
39
- // 一些浏览器部分支持 mediaDevices。我们不能直接给对象设置 getUserMedia
40
- // 因为这样可能会覆盖已有的属性。这里我们只会在没有getUserMedia属性的时候添加它。
41
- if (navigator.mediaDevices.getUserMedia === undefined) {
42
- navigator.mediaDevices.getUserMedia = function (constraints) {
43
- // 首先,如果有getUserMedia的话,就获得它
44
- var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
45
-
46
- // 一些浏览器根本没实现它 - 那么就返回一个error到promise的reject来保持一个统一的接口
47
- if (!getUserMedia) {
48
- return Promise.reject(new Error('getUserMedia is not implemented in this browser'));
49
- }
50
-
51
- // 否则,为老的navigator.getUserMedia方法包裹一个Promise
52
- return new Promise(function (resolve, reject) {
53
- getUserMedia.call(navigator, constraints, resolve, reject);
54
- });
55
- };
56
- }
57
-
58
- //默认使用前摄像头,强制使用后置摄像头如下设置
59
- // let constraints = {video: { facingMode: { exact: "environment" } }};
60
- let constraints = { video: true };
61
- navigator.mediaDevices
62
- .getUserMedia(constraints)
63
- .then(function (stream) {
64
- // 旧的浏览器可能没有srcObject
65
- if ('srcObject' in video) {
66
- video.srcObject = stream;
67
- } else {
68
- // 防止在新的浏览器里使用它,应为它已经不再支持了
69
- video.src = window.URL.createObjectURL(stream);
70
- }
71
- video.onloadedmetadata = function (e) {
72
- video.play();
73
- };
74
- })
75
- .catch(function (err) {
76
- console.log(err.name + ': ' + err.message);
77
- });
78
- },
79
- action() {
80
- this.$nextTick(() => {
81
- let canvas = document.getElementById('canvas');
82
- let context = canvas.getContext('2d');
83
- context.drawImage(video, 0, 0, 640, 480);
84
- var dataURL = canvas.toDataURL('image/jpg');
85
- this.$emit('sentDataURL', dataURL);
86
- });
87
- },
88
- },
89
- components: {},
90
- };
91
- </script>
92
-
93
- <style scope>
94
- .home {
95
- width: 200px;
96
- margin: 0 auto;
97
- position: relative;
98
- }
99
- .home input[type='file'] {
100
- position: absolute;
101
- left: 0;
102
- top: 0;
103
- width: 200px;
104
- height: 200px;
105
- z-index: 9;
106
- opacity: 0;
107
- }
108
- .home p {
109
- font-size: 13px;
110
- color: #8d8d8d;
111
- }
112
- .preview img {
113
- width: 100%;
114
- }
115
- </style>
1
+ <template>
2
+ <div>
3
+ <video id="video" width="640" height="480" autoplay="autoplay"></video>
4
+ <!--拍照按钮-->
5
+ <div>
6
+ <button @click="action" id="capture">拍照</button>
7
+ </div>
8
+ <!--描绘video截图-->
9
+ <canvas v-show="false" id="canvas" width="640" height="480"></canvas>
10
+ </div>
11
+ </template>
12
+
13
+ <script>
14
+ export default {
15
+ name: 'home',
16
+ data() {
17
+ return {
18
+ fileName: '点击Vue拍照',
19
+ base64ImgData: null,
20
+ };
21
+ },
22
+ created() {
23
+ this.init();
24
+ },
25
+ methods: {
26
+ init() {
27
+ this.$nextTick(() => {
28
+ let canvas = document.getElementById('canvas');
29
+ let video = document.getElementById('video');
30
+ let context = canvas.getContext('2d');
31
+ let capture = document.getElementById('capture');
32
+ });
33
+
34
+ // 老的浏览器可能根本没有实现 mediaDevices,所以我们可以先设置一个空的对象
35
+ if (navigator.mediaDevices === undefined) {
36
+ navigator.mediaDevices = {};
37
+ }
38
+
39
+ // 一些浏览器部分支持 mediaDevices。我们不能直接给对象设置 getUserMedia
40
+ // 因为这样可能会覆盖已有的属性。这里我们只会在没有getUserMedia属性的时候添加它。
41
+ if (navigator.mediaDevices.getUserMedia === undefined) {
42
+ navigator.mediaDevices.getUserMedia = function (constraints) {
43
+ // 首先,如果有getUserMedia的话,就获得它
44
+ var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
45
+
46
+ // 一些浏览器根本没实现它 - 那么就返回一个error到promise的reject来保持一个统一的接口
47
+ if (!getUserMedia) {
48
+ return Promise.reject(new Error('getUserMedia is not implemented in this browser'));
49
+ }
50
+
51
+ // 否则,为老的navigator.getUserMedia方法包裹一个Promise
52
+ return new Promise(function (resolve, reject) {
53
+ getUserMedia.call(navigator, constraints, resolve, reject);
54
+ });
55
+ };
56
+ }
57
+
58
+ //默认使用前摄像头,强制使用后置摄像头如下设置
59
+ // let constraints = {video: { facingMode: { exact: "environment" } }};
60
+ let constraints = { video: true };
61
+ navigator.mediaDevices
62
+ .getUserMedia(constraints)
63
+ .then(function (stream) {
64
+ // 旧的浏览器可能没有srcObject
65
+ if ('srcObject' in video) {
66
+ video.srcObject = stream;
67
+ } else {
68
+ // 防止在新的浏览器里使用它,应为它已经不再支持了
69
+ video.src = window.URL.createObjectURL(stream);
70
+ }
71
+ video.onloadedmetadata = function (e) {
72
+ video.play();
73
+ };
74
+ })
75
+ .catch(function (err) {
76
+ console.log(err.name + ': ' + err.message);
77
+ });
78
+ },
79
+ action() {
80
+ this.$nextTick(() => {
81
+ let canvas = document.getElementById('canvas');
82
+ let context = canvas.getContext('2d');
83
+ context.drawImage(video, 0, 0, 640, 480);
84
+ var dataURL = canvas.toDataURL('image/jpg');
85
+ this.$emit('sentDataURL', dataURL);
86
+ });
87
+ },
88
+ },
89
+ components: {},
90
+ };
91
+ </script>
92
+
93
+ <style scope>
94
+ .home {
95
+ width: 200px;
96
+ margin: 0 auto;
97
+ position: relative;
98
+ }
99
+ .home input[type='file'] {
100
+ position: absolute;
101
+ left: 0;
102
+ top: 0;
103
+ width: 200px;
104
+ height: 200px;
105
+ z-index: 9;
106
+ opacity: 0;
107
+ }
108
+ .home p {
109
+ font-size: 13px;
110
+ color: #8d8d8d;
111
+ }
112
+ .preview img {
113
+ width: 100%;
114
+ }
115
+ </style>