ylyx-cli 1.0.15 → 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 (285) hide show
  1. package/bin/ylyx.js +168 -168
  2. package/lib/config.js +283 -299
  3. package/lib/deploy.js +529 -495
  4. package/lib/generator.js +192 -192
  5. package/lib/index.js +113 -113
  6. package/lib/interactive.js +87 -87
  7. package/lib/remote.js +179 -179
  8. package/lib/template.js +174 -174
  9. package/lib/utils.js +148 -148
  10. package/package.json +5 -5
  11. package/templates/react-app/files/README.md +23 -23
  12. package/templates/react-app/files/package.json +28 -28
  13. package/templates/react-app/files/public/index.html +11 -11
  14. package/templates/react-app/files/src/App.css +15 -15
  15. package/templates/react-app/files/src/App.js +15 -15
  16. package/templates/react-app/files/src/index.css +10 -10
  17. package/templates/react-app/files/src/index.js +11 -11
  18. package/templates/react-app/template.json +11 -11
  19. package/templates/react-component/files/Component.module.css +5 -5
  20. package/templates/react-component/files/Component.tsx +31 -31
  21. package/templates/react-component/files/index.ts +2 -2
  22. package/templates/react-component/template.json +48 -48
  23. package/templates/vue-app/files/.editorconfig +14 -14
  24. package/templates/vue-app/files/.env.development +21 -21
  25. package/templates/vue-app/files/.env.production +18 -18
  26. package/templates/vue-app/files/.eslintignore +5 -5
  27. package/templates/vue-app/files/.eslintrc.js +267 -267
  28. package/templates/vue-app/files/.prettierignore +11 -11
  29. package/templates/vue-app/files/.travis.yml +5 -5
  30. package/templates/vue-app/files/.vscode/extensions.json +7 -7
  31. package/templates/vue-app/files/.vscode/settings.json +39 -39
  32. package/templates/vue-app/files/LICENSE +191 -191
  33. package/templates/vue-app/files/README.md +87 -87
  34. package/templates/vue-app/files/babel.config.js +11 -11
  35. package/templates/vue-app/files/jest.config.js +24 -24
  36. package/templates/vue-app/files/package.json +136 -136
  37. package/templates/vue-app/files/plopfile.js +7 -7
  38. package/templates/vue-app/files/postcss.config.js +5 -5
  39. package/templates/vue-app/files/public/default.js +25 -25
  40. package/templates/vue-app/files/public/index.html +26 -26
  41. package/templates/vue-app/files/src/App.vue +54 -54
  42. package/templates/vue-app/files/src/api/bigDataV/index.js +198 -198
  43. package/templates/vue-app/files/src/api/data.js +42 -42
  44. package/templates/vue-app/files/src/api/dataArchive/index.js +186 -186
  45. package/templates/vue-app/files/src/api/generator/genConfig.js +16 -16
  46. package/templates/vue-app/files/src/api/generator/generator.js +32 -32
  47. package/templates/vue-app/files/src/api/indexManagement/index.js +39 -39
  48. package/templates/vue-app/files/src/api/institutionMonitor/index.js +396 -396
  49. package/templates/vue-app/files/src/api/institutionSet/index.js +120 -120
  50. package/templates/vue-app/files/src/api/login.js +44 -44
  51. package/templates/vue-app/files/src/api/selfStatistics/index.js +50 -50
  52. package/templates/vue-app/files/src/api/system/code.js +15 -15
  53. package/templates/vue-app/files/src/api/system/dict.js +34 -34
  54. package/templates/vue-app/files/src/api/system/dictDetail.js +52 -52
  55. package/templates/vue-app/files/src/api/system/equipment.js +35 -35
  56. package/templates/vue-app/files/src/api/system/examManage.js +49 -49
  57. package/templates/vue-app/files/src/api/system/examProject.js +48 -48
  58. package/templates/vue-app/files/src/api/system/hosModel.js +35 -35
  59. package/templates/vue-app/files/src/api/system/hospital.js +88 -88
  60. package/templates/vue-app/files/src/api/system/job.js +40 -40
  61. package/templates/vue-app/files/src/api/system/menu.js +67 -67
  62. package/templates/vue-app/files/src/api/system/model.js +42 -42
  63. package/templates/vue-app/files/src/api/system/risConfig.js +9 -9
  64. package/templates/vue-app/files/src/api/system/role.js +64 -64
  65. package/templates/vue-app/files/src/api/system/sysSet.js +19 -19
  66. package/templates/vue-app/files/src/api/system/timing.js +41 -41
  67. package/templates/vue-app/files/src/api/system/user.js +121 -121
  68. package/templates/vue-app/files/src/api/tools/alipay.js +25 -25
  69. package/templates/vue-app/files/src/api/tools/email.js +24 -24
  70. package/templates/vue-app/files/src/api/tools/localStorage.js +27 -27
  71. package/templates/vue-app/files/src/api/tools/qiniu.js +40 -40
  72. package/templates/vue-app/files/src/assets/css/font-awesome.css +2342 -2342
  73. package/templates/vue-app/files/src/assets/css/font-awesome.min.css +2336 -2336
  74. package/templates/vue-app/files/src/assets/fonts/fontawesome-webfont.svg +2671 -2671
  75. package/templates/vue-app/files/src/assets/icons/index.js +9 -9
  76. package/templates/vue-app/files/src/assets/icons/svg/hospital.svg +1 -1
  77. package/templates/vue-app/files/src/assets/icons/svg/hospital1.svg +1 -1
  78. package/templates/vue-app/files/src/assets/icons/svg/loginOne.svg +35 -35
  79. package/templates/vue-app/files/src/assets/icons/svg/loginOneWhite.svg +19 -19
  80. package/templates/vue-app/files/src/assets/icons/svg/loginOr.svg +93 -93
  81. package/templates/vue-app/files/src/assets/icons/svg/loginUp.svg +96 -96
  82. package/templates/vue-app/files/src/assets/icons/svg/monitor.svg +1 -1
  83. package/templates/vue-app/files/src/assets/icons/svg/offline.svg +1 -1
  84. package/templates/vue-app/files/src/assets/icons/svg/online.svg +1 -1
  85. package/templates/vue-app/files/src/assets/icons/svg/system.svg +1 -1
  86. package/templates/vue-app/files/src/assets/icons/svgo.yml +21 -21
  87. package/templates/vue-app/files/src/assets/styles/btn.scss +103 -103
  88. package/templates/vue-app/files/src/assets/styles/eladmin.scss +124 -124
  89. package/templates/vue-app/files/src/assets/styles/element-ui.scss +217 -217
  90. package/templates/vue-app/files/src/assets/styles/element-variables.scss +31 -31
  91. package/templates/vue-app/files/src/assets/styles/global.scss +73 -73
  92. package/templates/vue-app/files/src/assets/styles/index.scss +220 -220
  93. package/templates/vue-app/files/src/assets/styles/mixin.scss +60 -60
  94. package/templates/vue-app/files/src/assets/styles/publicStyle.scss +224 -224
  95. package/templates/vue-app/files/src/assets/styles/sidebar.scss +239 -239
  96. package/templates/vue-app/files/src/assets/styles/transition.scss +48 -48
  97. package/templates/vue-app/files/src/assets/styles/variables.scss +44 -44
  98. package/templates/vue-app/files/src/common/flexible.js +145 -145
  99. package/templates/vue-app/files/src/components/Breadcrumb/index.vue +87 -87
  100. package/templates/vue-app/files/src/components/Crud/CRUD.operation.vue +248 -248
  101. package/templates/vue-app/files/src/components/Crud/Pagination.vue +20 -20
  102. package/templates/vue-app/files/src/components/Crud/RR.operation.vue +39 -39
  103. package/templates/vue-app/files/src/components/Crud/UD.operation.vue +106 -106
  104. package/templates/vue-app/files/src/components/Crud/crud.js +907 -907
  105. package/templates/vue-app/files/src/components/Crud/user/UR.operation.vue +154 -154
  106. package/templates/vue-app/files/src/components/DateRangePicker/index.vue +42 -42
  107. package/templates/vue-app/files/src/components/DateRangePickerProhibitNext/index.vue +42 -42
  108. package/templates/vue-app/files/src/components/DateRangePickerProhibitTodayNext/index.vue +48 -48
  109. package/templates/vue-app/files/src/components/Dict/Dict.js +31 -31
  110. package/templates/vue-app/files/src/components/Dict/index.js +29 -29
  111. package/templates/vue-app/files/src/components/Doc/index.vue +16 -16
  112. package/templates/vue-app/files/src/components/Echarts/BarChart.vue +115 -115
  113. package/templates/vue-app/files/src/components/Echarts/Category.vue +768 -768
  114. package/templates/vue-app/files/src/components/Echarts/Funnel.vue +120 -120
  115. package/templates/vue-app/files/src/components/Echarts/Gauge.vue +74 -74
  116. package/templates/vue-app/files/src/components/Echarts/Graph.vue +101 -101
  117. package/templates/vue-app/files/src/components/Echarts/HeatMap.vue +301 -301
  118. package/templates/vue-app/files/src/components/Echarts/Line3D.vue +110 -110
  119. package/templates/vue-app/files/src/components/Echarts/PieChart.vue +84 -84
  120. package/templates/vue-app/files/src/components/Echarts/Point.vue +161 -161
  121. package/templates/vue-app/files/src/components/Echarts/RadarChart.vue +123 -123
  122. package/templates/vue-app/files/src/components/Echarts/Rich.vue +160 -160
  123. package/templates/vue-app/files/src/components/Echarts/Sankey.vue +114 -114
  124. package/templates/vue-app/files/src/components/Echarts/Scatter.vue +192 -192
  125. package/templates/vue-app/files/src/components/Echarts/Sunburst.vue +127 -127
  126. package/templates/vue-app/files/src/components/Echarts/ThemeRiver.vue +233 -233
  127. package/templates/vue-app/files/src/components/Echarts/WordCloud.vue +201 -201
  128. package/templates/vue-app/files/src/components/GithubCorner/index.vue +55 -55
  129. package/templates/vue-app/files/src/components/Hamburger/index.vue +44 -44
  130. package/templates/vue-app/files/src/components/HeaderSearch/index.vue +196 -196
  131. package/templates/vue-app/files/src/components/IconSelect/index.vue +74 -74
  132. package/templates/vue-app/files/src/components/IconSelect/requireIcons.js +10 -10
  133. package/templates/vue-app/files/src/components/Iframe/index.vue +30 -30
  134. package/templates/vue-app/files/src/components/JavaEdit/index.vue +78 -78
  135. package/templates/vue-app/files/src/components/Pagination/index.vue +100 -100
  136. package/templates/vue-app/files/src/components/PanThumb/index.vue +149 -149
  137. package/templates/vue-app/files/src/components/ParentView/index.vue +3 -3
  138. package/templates/vue-app/files/src/components/Permission/index.js +13 -13
  139. package/templates/vue-app/files/src/components/Permission/permission.js +21 -21
  140. package/templates/vue-app/files/src/components/RightPanel/index.vue +149 -149
  141. package/templates/vue-app/files/src/components/Screenfull/index.vue +60 -60
  142. package/templates/vue-app/files/src/components/SizeSelect/index.vue +60 -60
  143. package/templates/vue-app/files/src/components/SvgIcon/index.vue +66 -66
  144. package/templates/vue-app/files/src/components/ThemePicker/index.vue +177 -177
  145. package/templates/vue-app/files/src/components/UploadExcel/index.vue +149 -149
  146. package/templates/vue-app/files/src/components/WaterMark/setWaterMark.js +68 -68
  147. package/templates/vue-app/files/src/components/WaterMark/waterMark.vue +69 -69
  148. package/templates/vue-app/files/src/components/Xgplayer/index.vue +49 -49
  149. package/templates/vue-app/files/src/components/YamlEdit/index.vue +81 -81
  150. package/templates/vue-app/files/src/layout/components/AppMain.vue +67 -67
  151. package/templates/vue-app/files/src/layout/components/Navbar.vue +209 -209
  152. package/templates/vue-app/files/src/layout/components/Settings/index.vue +125 -125
  153. package/templates/vue-app/files/src/layout/components/Sidebar/FixiOSBug.js +26 -26
  154. package/templates/vue-app/files/src/layout/components/Sidebar/Item.vue +29 -29
  155. package/templates/vue-app/files/src/layout/components/Sidebar/Link.vue +35 -35
  156. package/templates/vue-app/files/src/layout/components/Sidebar/Logo.vue +93 -93
  157. package/templates/vue-app/files/src/layout/components/Sidebar/SidebarItem.vue +104 -104
  158. package/templates/vue-app/files/src/layout/components/Sidebar/index.vue +79 -79
  159. package/templates/vue-app/files/src/layout/components/TagsView/ScrollPane.vue +90 -90
  160. package/templates/vue-app/files/src/layout/components/TagsView/index.vue +299 -299
  161. package/templates/vue-app/files/src/layout/components/index.js +5 -5
  162. package/templates/vue-app/files/src/layout/index.vue +119 -119
  163. package/templates/vue-app/files/src/layout/mixin/ResizeHandler.js +45 -45
  164. package/templates/vue-app/files/src/main.js +89 -89
  165. package/templates/vue-app/files/src/mixins/crud.js +348 -348
  166. package/templates/vue-app/files/src/router/index.js +156 -156
  167. package/templates/vue-app/files/src/router/routers.js +203 -203
  168. package/templates/vue-app/files/src/settings.js +57 -57
  169. package/templates/vue-app/files/src/store/getters.js +29 -29
  170. package/templates/vue-app/files/src/store/index.js +25 -25
  171. package/templates/vue-app/files/src/store/modules/api.js +33 -33
  172. package/templates/vue-app/files/src/store/modules/app.js +55 -55
  173. package/templates/vue-app/files/src/store/modules/permission.js +79 -79
  174. package/templates/vue-app/files/src/store/modules/register.js +17 -17
  175. package/templates/vue-app/files/src/store/modules/settings.js +46 -46
  176. package/templates/vue-app/files/src/store/modules/tagsView.js +168 -168
  177. package/templates/vue-app/files/src/store/modules/user.js +119 -119
  178. package/templates/vue-app/files/src/utils/auth.js +18 -18
  179. package/templates/vue-app/files/src/utils/base64ToFile.js +27 -27
  180. package/templates/vue-app/files/src/utils/clipboard.js +36 -36
  181. package/templates/vue-app/files/src/utils/datetime.js +289 -289
  182. package/templates/vue-app/files/src/utils/getBlobFile.js +10 -10
  183. package/templates/vue-app/files/src/utils/getTime.js +29 -29
  184. package/templates/vue-app/files/src/utils/index.js +520 -520
  185. package/templates/vue-app/files/src/utils/permission.js +29 -29
  186. package/templates/vue-app/files/src/utils/pinyin.js +450 -450
  187. package/templates/vue-app/files/src/utils/request.js +139 -139
  188. package/templates/vue-app/files/src/utils/rsaEncrypt.js +37 -37
  189. package/templates/vue-app/files/src/utils/shortcuts.js +210 -210
  190. package/templates/vue-app/files/src/utils/upload.js +12 -12
  191. package/templates/vue-app/files/src/utils/validate.js +262 -262
  192. package/templates/vue-app/files/src/views/components/Echarts.vue +124 -124
  193. package/templates/vue-app/files/src/views/components/Editor.vue +75 -75
  194. package/templates/vue-app/files/src/views/components/MarkDown.vue +44 -44
  195. package/templates/vue-app/files/src/views/components/UVideo.vue +37 -37
  196. package/templates/vue-app/files/src/views/components/YamlEdit.vue +206 -206
  197. package/templates/vue-app/files/src/views/components/camera/camera.vue +115 -115
  198. package/templates/vue-app/files/src/views/components/camera/cameraTest.vue +158 -158
  199. package/templates/vue-app/files/src/views/components/excel/upload-excel.vue +41 -41
  200. package/templates/vue-app/files/src/views/components/icons/element-icons.js +74 -74
  201. package/templates/vue-app/files/src/views/components/icons/index.vue +106 -106
  202. package/templates/vue-app/files/src/views/components/icons/svg-icons.js +10 -10
  203. package/templates/vue-app/files/src/views/components/scroll/index.vue +107 -107
  204. package/templates/vue-app/files/src/views/components/scrollFull/index.vue +99 -99
  205. package/templates/vue-app/files/src/views/dashboard/LineChart.vue +138 -138
  206. package/templates/vue-app/files/src/views/dashboard/PanelGroup.vue +173 -173
  207. package/templates/vue-app/files/src/views/dashboard/mixins/resize.js +57 -57
  208. package/templates/vue-app/files/src/views/dataArchive/delTable.vue +354 -354
  209. package/templates/vue-app/files/src/views/dataArchive/exportDetail.vue +121 -121
  210. package/templates/vue-app/files/src/views/dataArchive/exportList.vue +160 -160
  211. package/templates/vue-app/files/src/views/dataArchive/index.vue +2104 -2104
  212. package/templates/vue-app/files/src/views/features/401.vue +83 -83
  213. package/templates/vue-app/files/src/views/features/404.vue +226 -226
  214. package/templates/vue-app/files/src/views/features/redirect.vue +12 -12
  215. package/templates/vue-app/files/src/views/generator/config.vue +348 -348
  216. package/templates/vue-app/files/src/views/generator/index.vue +143 -143
  217. package/templates/vue-app/files/src/views/generator/preview.vue +39 -39
  218. package/templates/vue-app/files/src/views/home.vue +80 -80
  219. package/templates/vue-app/files/src/views/indexManagement/index.vue +422 -422
  220. package/templates/vue-app/files/src/views/indexManagement/other.vue +286 -286
  221. package/templates/vue-app/files/src/views/institutionMonitor/components/LineChart.vue +191 -191
  222. package/templates/vue-app/files/src/views/institutionMonitor/index.scss +339 -339
  223. package/templates/vue-app/files/src/views/institutionMonitor/index.vue +1385 -1385
  224. package/templates/vue-app/files/src/views/institutionMonitor/mixins/resize.js +57 -57
  225. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/checkProjectCode.vue +267 -267
  226. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/imageAbnormalMonitor.vue +361 -361
  227. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/index.vue +686 -686
  228. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/leakageAnomaly.vue +270 -270
  229. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/moveMonitore.vue +114 -114
  230. package/templates/vue-app/files/src/views/institutionMonitor/monitorDetail/qualityMonitore.vue +338 -338
  231. package/templates/vue-app/files/src/views/institutionSet/cloudSet.vue +534 -534
  232. package/templates/vue-app/files/src/views/institutionSet/index.vue +2550 -2550
  233. package/templates/vue-app/files/src/views/login.vue +243 -243
  234. package/templates/vue-app/files/src/views/qualityLogin.vue +280 -280
  235. package/templates/vue-app/files/src/views/selfStatistics/components/LineChart.vue +296 -296
  236. package/templates/vue-app/files/src/views/selfStatistics/hospitalDetail/index.vue +533 -533
  237. package/templates/vue-app/files/src/views/selfStatistics/index.scss +447 -447
  238. package/templates/vue-app/files/src/views/selfStatistics/index.vue +903 -903
  239. package/templates/vue-app/files/src/views/selfStatistics/mixins/resize.js +57 -57
  240. package/templates/vue-app/files/src/views/selfStatistics/monitorDetail/index.vue +285 -285
  241. package/templates/vue-app/files/src/views/selfStatistics/offlineDetail/index.vue +104 -104
  242. package/templates/vue-app/files/src/views/selfStatistics/selfActiveDetail/index.vue +104 -104
  243. package/templates/vue-app/files/src/views/selfStatistics/selfMonitorDetail/index.vue +420 -420
  244. package/templates/vue-app/files/src/views/selfStatistics/setWaterMark/setWaterMark.js +68 -68
  245. package/templates/vue-app/files/src/views/selfStatistics/setWaterMark/waterMark.vue +69 -69
  246. package/templates/vue-app/files/src/views/system/dept/index.vue +144 -144
  247. package/templates/vue-app/files/src/views/system/dict/dictDetail.vue +146 -146
  248. package/templates/vue-app/files/src/views/system/dict/index.vue +159 -159
  249. package/templates/vue-app/files/src/views/system/examModality/index.vue +174 -174
  250. package/templates/vue-app/files/src/views/system/examPart/index.vue +184 -184
  251. package/templates/vue-app/files/src/views/system/examProject/index.vue +321 -321
  252. package/templates/vue-app/files/src/views/system/examine/index.vue +66 -66
  253. package/templates/vue-app/files/src/views/system/job/index.vue +119 -119
  254. package/templates/vue-app/files/src/views/system/job/module/form.vue +72 -72
  255. package/templates/vue-app/files/src/views/system/job/module/header.vue +48 -48
  256. package/templates/vue-app/files/src/views/system/menu/index.vue +327 -327
  257. package/templates/vue-app/files/src/views/system/model/index.vue +285 -285
  258. package/templates/vue-app/files/src/views/system/role/index.vue +434 -434
  259. package/templates/vue-app/files/src/views/system/sysSet/index.vue +84 -84
  260. package/templates/vue-app/files/src/views/system/timing/index.vue +289 -289
  261. package/templates/vue-app/files/src/views/system/timing/log.vue +143 -143
  262. package/templates/vue-app/files/src/views/system/user/admin.vue +414 -414
  263. package/templates/vue-app/files/src/views/system/user/center/updateEmail.vue +146 -146
  264. package/templates/vue-app/files/src/views/system/user/center/updatePass.vue +168 -168
  265. package/templates/vue-app/files/src/views/system/user/center.vue +140 -140
  266. package/templates/vue-app/files/src/views/system/user/index.vue +972 -972
  267. package/templates/vue-app/files/src/views/systemSet/role/index.vue +314 -314
  268. package/templates/vue-app/files/src/views/systemSet/user/admin.vue +414 -414
  269. package/templates/vue-app/files/src/views/systemSet/user/center/updateEmail.vue +146 -146
  270. package/templates/vue-app/files/src/views/systemSet/user/center/updatePass.vue +115 -115
  271. package/templates/vue-app/files/src/views/systemSet/user/center.vue +351 -351
  272. package/templates/vue-app/files/src/views/systemSet/user/index.vue +928 -928
  273. package/templates/vue-app/files/src/views/tools/aliPay/config.vue +102 -102
  274. package/templates/vue-app/files/src/views/tools/aliPay/index.vue +48 -48
  275. package/templates/vue-app/files/src/views/tools/aliPay/toPay.vue +91 -91
  276. package/templates/vue-app/files/src/views/tools/email/config.vue +91 -91
  277. package/templates/vue-app/files/src/views/tools/email/index.vue +42 -42
  278. package/templates/vue-app/files/src/views/tools/email/send.vue +159 -159
  279. package/templates/vue-app/files/src/views/tools/storage/index.vue +35 -35
  280. package/templates/vue-app/files/src/views/tools/storage/local/index.vue +207 -207
  281. package/templates/vue-app/files/src/views/tools/storage/qiniu/form.vue +108 -108
  282. package/templates/vue-app/files/src/views/tools/storage/qiniu/index.vue +241 -241
  283. package/templates/vue-app/files/src/views/tools/swagger/index.vue +14 -14
  284. package/templates/vue-app/files/vue.config.js +173 -173
  285. 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>