瀏覽代碼

feat:移动端备份

xzh 4 年之前
父節點
當前提交
25a1f25319
共有 100 個文件被更改,包括 698 次插入50 次删除
  1. 二進制
      common/data/images/banner.png
  2. 二進制
      common/data/images/banner2.png
  3. 二進制
      common/data/images/banner2@2x.png
  4. 二進制
      common/data/images/banner3.png
  5. 二進制
      common/data/images/banner3@2x.png
  6. 二進制
      common/data/images/banner@2x.png
  7. 二進制
      common/data/images/fade-bg.png
  8. 二進制
      common/data/images/left-arrow.png
  9. 二進制
      common/data/images/new-1.png
  10. 二進制
      common/data/images/new-10.png
  11. 二進制
      common/data/images/new-10@2x.png
  12. 二進制
      common/data/images/new-11.png
  13. 二進制
      common/data/images/new-11@2x.png
  14. 二進制
      common/data/images/new-12.png
  15. 二進制
      common/data/images/new-12@2x.png
  16. 二進制
      common/data/images/new-1@2x.png
  17. 二進制
      common/data/images/new-2.png
  18. 二進制
      common/data/images/new-2@2x.png
  19. 二進制
      common/data/images/new-3.png
  20. 二進制
      common/data/images/new-3@2x.png
  21. 二進制
      common/data/images/new-4.png
  22. 二進制
      common/data/images/new-4@2x.png
  23. 二進制
      common/data/images/new-5.png
  24. 二進制
      common/data/images/new-5@2x.png
  25. 二進制
      common/data/images/new-6.png
  26. 二進制
      common/data/images/new-6@2x.png
  27. 二進制
      common/data/images/new-7.png
  28. 二進制
      common/data/images/new-7@2x.png
  29. 二進制
      common/data/images/new-8.png
  30. 二進制
      common/data/images/new-8@2x.png
  31. 二進制
      common/data/images/new-9.png
  32. 二進制
      common/data/images/new-9@2x.png
  33. 二進制
      common/data/images/right-arrow.png
  34. 98 0
      common/data/newsData.js
  35. 61 0
      common/mall/mall.js
  36. 7 1
      mobile/build/utils.js
  37. 1 0
      mobile/index.html
  38. 219 45
      mobile/package-lock.json
  39. 5 0
      mobile/package.json
  40. 4 4
      mobile/src/App.vue
  41. 二進制
      mobile/src/assets/images/refactor/about/4d-logo.png
  42. 二進制
      mobile/src/assets/images/refactor/about/banner.png
  43. 二進制
      mobile/src/assets/images/refactor/about/img1.png
  44. 二進制
      mobile/src/assets/images/refactor/about/img2.png
  45. 二進制
      mobile/src/assets/images/refactor/about/zd-logo.png
  46. 二進制
      mobile/src/assets/images/refactor/agent/ad1.png
  47. 二進制
      mobile/src/assets/images/refactor/agent/ad2.png
  48. 二進制
      mobile/src/assets/images/refactor/agent/ad3.png
  49. 二進制
      mobile/src/assets/images/refactor/agent/ad4.png
  50. 二進制
      mobile/src/assets/images/refactor/agent/ad5.png
  51. 二進制
      mobile/src/assets/images/refactor/agent/banner.png
  52. 二進制
      mobile/src/assets/images/refactor/conduct/exhibition/banner.png
  53. 二進制
      mobile/src/assets/images/refactor/conduct/exhibition/item1.png
  54. 二進制
      mobile/src/assets/images/refactor/conduct/exhibition/item2.png
  55. 二進制
      mobile/src/assets/images/refactor/conduct/exhibition/item3.png
  56. 二進制
      mobile/src/assets/images/refactor/conduct/exhibition/item4.png
  57. 二進制
      mobile/src/assets/images/refactor/conduct/house/banner.png
  58. 二進制
      mobile/src/assets/images/refactor/conduct/house/item1.png
  59. 二進制
      mobile/src/assets/images/refactor/conduct/house/item2.png
  60. 二進制
      mobile/src/assets/images/refactor/conduct/house/item3.png
  61. 二進制
      mobile/src/assets/images/refactor/conduct/house/item4.png
  62. 二進制
      mobile/src/assets/images/refactor/conduct/secury/banner.png
  63. 二進制
      mobile/src/assets/images/refactor/conduct/secury/item1.png
  64. 二進制
      mobile/src/assets/images/refactor/conduct/secury/item2.png
  65. 二進制
      mobile/src/assets/images/refactor/conduct/secury/item3.png
  66. 二進制
      mobile/src/assets/images/refactor/conduct/shop/banner.png
  67. 二進制
      mobile/src/assets/images/refactor/conduct/shop/item1.png
  68. 二進制
      mobile/src/assets/images/refactor/conduct/shop/item2.png
  69. 二進制
      mobile/src/assets/images/refactor/conduct/shop/item3.png
  70. 二進制
      mobile/src/assets/images/refactor/conduct/shop/item4.png
  71. 二進制
      mobile/src/assets/images/refactor/conduct/subject/banner.png
  72. 二進制
      mobile/src/assets/images/refactor/conduct/subject/case1.png
  73. 二進制
      mobile/src/assets/images/refactor/conduct/subject/case2.png
  74. 二進制
      mobile/src/assets/images/refactor/conduct/subject/case3.png
  75. 二進制
      mobile/src/assets/images/refactor/conduct/subject/item1.png
  76. 二進制
      mobile/src/assets/images/refactor/conduct/subject/item2.png
  77. 二進制
      mobile/src/assets/images/refactor/conduct/subject/item3.png
  78. 二進制
      mobile/src/assets/images/refactor/conduct/subject/item4.png
  79. 二進制
      mobile/src/assets/images/refactor/home/douyin.png
  80. 二進制
      mobile/src/assets/images/refactor/home/footer-find-bg.png
  81. 二進制
      mobile/src/assets/images/refactor/home/plate01-img@2x.png
  82. 二進制
      mobile/src/assets/images/refactor/home/plate02-1.png
  83. 二進制
      mobile/src/assets/images/refactor/home/plate02-2.png
  84. 二進制
      mobile/src/assets/images/refactor/home/plate03-1.png
  85. 二進制
      mobile/src/assets/images/refactor/home/plate03-2.png
  86. 二進制
      mobile/src/assets/images/refactor/home/plate04-1.png
  87. 二進制
      mobile/src/assets/images/refactor/home/plate04-2.png
  88. 二進制
      mobile/src/assets/images/refactor/home/plate04-3.png
  89. 二進制
      mobile/src/assets/images/refactor/home/playBtn.png
  90. 二進制
      mobile/src/assets/images/refactor/home/wechat.png
  91. 二進制
      mobile/src/assets/images/refactor/home/weibo.png
  92. 二進制
      mobile/src/assets/images/refactor/service/app-icon.png
  93. 二進制
      mobile/src/assets/images/refactor/service/logo.png
  94. 二進制
      mobile/src/assets/images/refactor/service/play-btn.png
  95. 26 0
      mobile/src/assets/style/public.scss
  96. 1 0
      mobile/src/components/browse/index.vue
  97. 89 0
      mobile/src/components/shared/Col.vue
  98. 27 0
      mobile/src/components/shared/Icon.vue
  99. 160 0
      mobile/src/components/shared/MessageBox/MessageBox.vue
  100. 0 0
      mobile/src/components/shared/MessageBox/plugin.js

二進制
common/data/images/banner.png


二進制
common/data/images/banner2.png


二進制
common/data/images/banner2@2x.png


二進制
common/data/images/banner3.png


二進制
common/data/images/banner3@2x.png


二進制
common/data/images/banner@2x.png


二進制
common/data/images/fade-bg.png


二進制
common/data/images/left-arrow.png


二進制
common/data/images/new-1.png


二進制
common/data/images/new-10.png


二進制
common/data/images/new-10@2x.png


二進制
common/data/images/new-11.png


二進制
common/data/images/new-11@2x.png


二進制
common/data/images/new-12.png


二進制
common/data/images/new-12@2x.png


二進制
common/data/images/new-1@2x.png


二進制
common/data/images/new-2.png


二進制
common/data/images/new-2@2x.png


二進制
common/data/images/new-3.png


二進制
common/data/images/new-3@2x.png


二進制
common/data/images/new-4.png


二進制
common/data/images/new-4@2x.png


二進制
common/data/images/new-5.png


二進制
common/data/images/new-5@2x.png


二進制
common/data/images/new-6.png


二進制
common/data/images/new-6@2x.png


二進制
common/data/images/new-7.png


二進制
common/data/images/new-7@2x.png


二進制
common/data/images/new-8.png


二進制
common/data/images/new-8@2x.png


二進制
common/data/images/new-9.png


二進制
common/data/images/new-9@2x.png


二進制
common/data/images/right-arrow.png


File diff suppressed because it is too large
+ 98 - 0
common/data/newsData.js


+ 61 - 0
common/mall/mall.js

@@ -0,0 +1,61 @@
+function formatNum(num){
+  return (num.toFixed(0) + '').replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g, '$&,');
+}
+
+let cameraName = {
+  7: `四维看看 三脚架套装`,
+  1: `四维看看 Lite二目相机`,
+  4: `四维看看 Pro八目相机`
+}
+
+let cameraNameEn = {
+  7: `4D KanKan Pro Tripod Set`,
+  1: `四维看看 Lite二目相机`,
+  4: `4DKanKan Pro Camera`
+}
+let detail = {
+  7: ['四维看看 三脚架套装(标准色)'],
+  1: [
+    '四维看看 Lite二目相机(静谧黑)',
+    '容量套餐(5G)',
+    '四维看看 Lite专用三脚架(标准色)'
+  ],
+  4: ['四维看看 Pro八目相机(静谧黑)', '容量套餐(10G)']
+}
+let detailEn = {
+  7: ['4D KanKan Pro Tripod Set (Standard)'],
+  1: [
+    '四维看看 Lite二目相机(静谧黑)',
+    '容量套餐(5G)',
+    '四维看看 Lite专用三脚架(标准色)'
+  ],
+  4: ['4DKanKan Pro Camera (Night Sky Black)', 'Storage Plan (10G)']
+}
+const price = 12800
+const zhijiaPrice = 899
+
+const goodsMap = {
+  4: {
+    name: '四维看看Pro八目相机',
+    img: `${window.$app.$cdn}images/banner_pro.png`,
+    detail: ['四维看看Pro八目相机(静谧黑)', '容量套餐(10G)'],
+    price: price,
+    skuSn: 'U15609161635760015'
+  },
+  7: {
+    name: '四维看看Pro精选三脚架套装',
+    img: `${window.$app.$cdn}images/zhijia.png`,
+    detail:  ['四维看看Pro精选三脚架套装(标准色)'],
+    price: zhijiaPrice,
+    skuSn: 'U15604134406280073'
+  }
+}
+
+
+export default {
+  formatNum,
+  price,
+  zhijiaPrice,
+  showPrice: formatNum(price),
+  goodsMap
+}

+ 7 - 1
mobile/build/utils.js

@@ -28,10 +28,16 @@ exports.cssLoaders = function (options) {
       sourceMap: options.sourceMap
     }
   }
+  const px2remLoader = {
+    loader: 'px2rem-loader',
+    options: {
+      remUnit: 37.5 // 设计图的1/10
+    }
+  }
 
   // generate loader string to be used with extract text plugin
   function generateLoaders (loader, loaderOptions) {
-    const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
+    const loaders = options.usePostCSS ? [cssLoader, postcssLoader, px2remLoader] : [cssLoader, px2remLoader]
 
     if (loader) {
       loaders.push({

+ 1 - 0
mobile/index.html

@@ -10,6 +10,7 @@
     <link rel="shortcut icon" href="//4dkk.4dage.com/FDKKIMG/icon/kankan_icon.ico">
     <link rel="icon" type="image/png" href="//4dkk.4dage.com/FDKKIMG/icon/kankan_icon192.png" sizes="192x192">
     <link rel="apple-touch-icon" sizes="180x180" href="//4dkk.4dage.com/FDKKIMG/icon/kankan_icon180.png">
+    <link rel="stylesheet" href="//at.alicdn.com/t/font_941679_aolcaumsli5.css">
     <title>四维看看</title>
   </head>
   <body>

+ 219 - 45
mobile/package-lock.json

@@ -865,8 +865,7 @@
     "atob": {
       "version": "2.1.2",
       "resolved": "http://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz",
-      "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=",
-      "dev": true
+      "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k="
     },
     "autoprefixer": {
       "version": "7.2.6",
@@ -1898,8 +1897,7 @@
     "balanced-match": {
       "version": "1.0.0",
       "resolved": "http://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
-      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
-      "dev": true
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
     },
     "base": {
       "version": "0.11.2",
@@ -2003,8 +2001,7 @@
     "big.js": {
       "version": "5.2.2",
       "resolved": "http://registry.npm.taobao.org/big.js/download/big.js-5.2.2.tgz",
-      "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=",
-      "dev": true
+      "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg="
     },
     "binary-extensions": {
       "version": "1.13.1",
@@ -2131,7 +2128,6 @@
       "version": "1.1.11",
       "resolved": "http://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz",
       "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=",
-      "dev": true,
       "requires": {
         "balanced-match": "^1.0.0",
         "concat-map": "0.0.1"
@@ -2993,8 +2989,7 @@
     "concat-map": {
       "version": "0.0.1",
       "resolved": "http://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz",
-      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
-      "dev": true
+      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
     },
     "concat-stream": {
       "version": "1.6.2",
@@ -3310,6 +3305,17 @@
         "randomfill": "^1.0.3"
       }
     },
+    "css": {
+      "version": "2.2.4",
+      "resolved": "https://registry.npm.taobao.org/css/download/css-2.2.4.tgz?cache=0&sync_timestamp=1593663543619&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss%2Fdownload%2Fcss-2.2.4.tgz",
+      "integrity": "sha1-xkZ1XHOXHyu6amAeLPL9cbEpiSk=",
+      "requires": {
+        "inherits": "^2.0.3",
+        "source-map": "^0.6.1",
+        "source-map-resolve": "^0.5.2",
+        "urix": "^0.1.0"
+      }
+    },
     "css-color-names": {
       "version": "0.0.4",
       "resolved": "http://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz",
@@ -4305,8 +4311,7 @@
     "decode-uri-component": {
       "version": "0.2.0",
       "resolved": "http://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz",
-      "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
-      "dev": true
+      "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU="
     },
     "deep-eql": {
       "version": "0.1.3",
@@ -4763,8 +4768,7 @@
     "emojis-list": {
       "version": "2.1.0",
       "resolved": "https://registry.npm.taobao.org/emojis-list/download/emojis-list-2.1.0.tgz",
-      "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
-      "dev": true
+      "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k="
     },
     "encodeurl": {
       "version": "1.0.2",
@@ -4947,8 +4951,7 @@
     "escape-string-regexp": {
       "version": "1.0.5",
       "resolved": "http://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz",
-      "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
-      "dev": true
+      "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
     },
     "escodegen": {
       "version": "1.12.0",
@@ -5557,8 +5560,7 @@
     "extend": {
       "version": "3.0.2",
       "resolved": "http://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz",
-      "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=",
-      "dev": true
+      "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo="
     },
     "extend-shallow": {
       "version": "3.0.2",
@@ -5985,6 +5987,26 @@
         "readable-stream": "^2.0.0"
       }
     },
+    "fs-extra": {
+      "version": "0.16.5",
+      "resolved": "https://registry.npm.taobao.org/fs-extra/download/fs-extra-0.16.5.tgz?cache=0&sync_timestamp=1591229972229&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffs-extra%2Fdownload%2Ffs-extra-0.16.5.tgz",
+      "integrity": "sha1-GtZh+myGyWCM0bSe/G/Og0k5p1A=",
+      "requires": {
+        "graceful-fs": "^3.0.5",
+        "jsonfile": "^2.0.0",
+        "rimraf": "^2.2.8"
+      },
+      "dependencies": {
+        "graceful-fs": {
+          "version": "3.0.12",
+          "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-3.0.12.tgz",
+          "integrity": "sha1-ADSUfOntaV7IqwuFS8kZ6Csf+u8=",
+          "requires": {
+            "natives": "^1.1.3"
+          }
+        }
+      }
+    },
     "fs-write-stream-atomic": {
       "version": "1.0.10",
       "resolved": "http://registry.npm.taobao.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz",
@@ -6000,8 +6022,7 @@
     "fs.realpath": {
       "version": "1.0.0",
       "resolved": "http://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz",
-      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
-      "dev": true
+      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
     },
     "fsevents": {
       "version": "1.2.9",
@@ -6737,7 +6758,6 @@
       "version": "7.1.4",
       "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.4.tgz",
       "integrity": "sha1-qmCKL2xXetNX4a5aXCbZqNGWklU=",
-      "dev": true,
       "requires": {
         "fs.realpath": "^1.0.0",
         "inflight": "^1.0.4",
@@ -6799,8 +6819,7 @@
     "graceful-fs": {
       "version": "4.2.2",
       "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.2.tgz",
-      "integrity": "sha1-bwlSYF0BQMHP2xOO0AV3W5LWewI=",
-      "dev": true
+      "integrity": "sha1-bwlSYF0BQMHP2xOO0AV3W5LWewI="
     },
     "graceful-readlink": {
       "version": "1.0.1",
@@ -7639,6 +7658,13 @@
       "integrity": "sha1-Cpf7h2mG6AgcYxFg+PnziRV/AEM=",
       "dev": true
     },
+    "image-size": {
+      "version": "0.5.5",
+      "resolved": "https://registry.npm.taobao.org/image-size/download/image-size-0.5.5.tgz",
+      "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=",
+      "dev": true,
+      "optional": true
+    },
     "import-cwd": {
       "version": "2.1.0",
       "resolved": "https://registry.npm.taobao.org/import-cwd/download/import-cwd-2.1.0.tgz",
@@ -7733,7 +7759,6 @@
       "version": "1.0.6",
       "resolved": "http://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz",
       "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
-      "dev": true,
       "requires": {
         "once": "^1.3.0",
         "wrappy": "1"
@@ -7742,8 +7767,7 @@
     "inherits": {
       "version": "2.0.4",
       "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz",
-      "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=",
-      "dev": true
+      "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w="
     },
     "ini": {
       "version": "1.3.5",
@@ -8858,6 +8882,14 @@
       "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
       "dev": true
     },
+    "jsonfile": {
+      "version": "2.4.0",
+      "resolved": "https://registry.npm.taobao.org/jsonfile/download/jsonfile-2.4.0.tgz",
+      "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
+      "requires": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
     "jsonify": {
       "version": "0.0.0",
       "resolved": "http://registry.npm.taobao.org/jsonify/download/jsonify-0.0.0.tgz",
@@ -8948,6 +8980,67 @@
       "integrity": "sha1-W4o6d2Xf4AEmHd6RVYnngvjJTR4=",
       "dev": true
     },
+    "less": {
+      "version": "3.12.2",
+      "resolved": "https://registry.npm.taobao.org/less/download/less-3.12.2.tgz?cache=0&sync_timestamp=1594915586681&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fless%2Fdownload%2Fless-3.12.2.tgz",
+      "integrity": "sha1-FX5t0ypohp34hZMUrTjnAhGvOrQ=",
+      "dev": true,
+      "requires": {
+        "errno": "^0.1.1",
+        "graceful-fs": "^4.1.2",
+        "image-size": "~0.5.0",
+        "make-dir": "^2.1.0",
+        "mime": "^1.4.1",
+        "native-request": "^1.0.5",
+        "source-map": "~0.6.0",
+        "tslib": "^1.10.0"
+      },
+      "dependencies": {
+        "make-dir": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz?cache=0&sync_timestamp=1587567572251&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-dir%2Fdownload%2Fmake-dir-2.1.0.tgz",
+          "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "pify": "^4.0.1",
+            "semver": "^5.6.0"
+          }
+        },
+        "pify": {
+          "version": "4.0.1",
+          "resolved": "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz",
+          "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=",
+          "dev": true,
+          "optional": true
+        }
+      }
+    },
+    "less-loader": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npm.taobao.org/less-loader/download/less-loader-5.0.0.tgz?cache=0&sync_timestamp=1598354419544&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fless-loader%2Fdownload%2Fless-loader-5.0.0.tgz",
+      "integrity": "sha1-SY3eOmxsT4h0WO6e0/CGoSrRtGY=",
+      "dev": true,
+      "requires": {
+        "clone": "^2.1.1",
+        "loader-utils": "^1.1.0",
+        "pify": "^4.0.1"
+      },
+      "dependencies": {
+        "clone": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npm.taobao.org/clone/download/clone-2.1.2.tgz",
+          "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=",
+          "dev": true
+        },
+        "pify": {
+          "version": "4.0.1",
+          "resolved": "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz",
+          "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=",
+          "dev": true
+        }
+      }
+    },
     "leven": {
       "version": "2.1.0",
       "resolved": "https://registry.npm.taobao.org/leven/download/leven-2.1.0.tgz",
@@ -8964,6 +9057,11 @@
         "type-check": "~0.3.2"
       }
     },
+    "lib-flexible": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npm.taobao.org/lib-flexible/download/lib-flexible-0.3.2.tgz",
+      "integrity": "sha1-BvWnSDIxSi01wSA5vJw8otrqpCY="
+    },
     "load-json-file": {
       "version": "1.1.0",
       "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-1.1.0.tgz",
@@ -9038,7 +9136,6 @@
       "version": "1.2.3",
       "resolved": "http://registry.npm.taobao.org/loader-utils/download/loader-utils-1.2.3.tgz",
       "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=",
-      "dev": true,
       "requires": {
         "big.js": "^5.2.2",
         "emojis-list": "^2.0.0",
@@ -9049,7 +9146,6 @@
           "version": "1.0.1",
           "resolved": "https://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjson5%2Fdownload%2Fjson5-1.0.1.tgz",
           "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=",
-          "dev": true,
           "requires": {
             "minimist": "^1.2.0"
           }
@@ -9057,8 +9153,7 @@
         "minimist": {
           "version": "1.2.0",
           "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz",
-          "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
-          "dev": true
+          "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
         }
       }
     },
@@ -9560,7 +9655,6 @@
       "version": "3.0.4",
       "resolved": "http://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz",
       "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
-      "dev": true,
       "requires": {
         "brace-expansion": "^1.1.7"
       }
@@ -9791,6 +9885,18 @@
         }
       }
     },
+    "native-request": {
+      "version": "1.0.7",
+      "resolved": "https://registry.npm.taobao.org/native-request/download/native-request-1.0.7.tgz",
+      "integrity": "sha1-/3QtxVW0yPLxwUtUhjm6F05XOFY=",
+      "dev": true,
+      "optional": true
+    },
+    "natives": {
+      "version": "1.1.6",
+      "resolved": "https://registry.npm.taobao.org/natives/download/natives-1.1.6.tgz",
+      "integrity": "sha1-pgO0pJirdxc2ErnqGs3sTZgPALs="
+    },
     "natural-compare": {
       "version": "1.4.0",
       "resolved": "http://registry.npm.taobao.org/natural-compare/download/natural-compare-1.4.0.tgz",
@@ -10308,7 +10414,6 @@
       "version": "1.4.0",
       "resolved": "http://registry.npm.taobao.org/once/download/once-1.4.0.tgz",
       "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
-      "dev": true,
       "requires": {
         "wrappy": "1"
       }
@@ -10658,8 +10763,7 @@
     "path-is-absolute": {
       "version": "1.0.1",
       "resolved": "http://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz",
-      "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
-      "dev": true
+      "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
     },
     "path-is-inside": {
       "version": "1.0.2",
@@ -13276,6 +13380,77 @@
       "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=",
       "dev": true
     },
+    "px2rem": {
+      "version": "0.5.0",
+      "resolved": "https://registry.npm.taobao.org/px2rem/download/px2rem-0.5.0.tgz",
+      "integrity": "sha1-JLOmz3TRSttO13byB4cdmJPkEOI=",
+      "requires": {
+        "chalk": "~0.5.1",
+        "commander": "~2.6.0",
+        "css": "~2.2.0",
+        "extend": "~3.0.0",
+        "fs-extra": "~0.16.3"
+      },
+      "dependencies": {
+        "ansi-regex": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-0.2.1.tgz?cache=0&sync_timestamp=1570188663907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-regex%2Fdownload%2Fansi-regex-0.2.1.tgz",
+          "integrity": "sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk="
+        },
+        "ansi-styles": {
+          "version": "1.1.0",
+          "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-1.1.0.tgz",
+          "integrity": "sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94="
+        },
+        "chalk": {
+          "version": "0.5.1",
+          "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-0.5.1.tgz",
+          "integrity": "sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ=",
+          "requires": {
+            "ansi-styles": "^1.1.0",
+            "escape-string-regexp": "^1.0.0",
+            "has-ansi": "^0.1.0",
+            "strip-ansi": "^0.3.0",
+            "supports-color": "^0.2.0"
+          }
+        },
+        "commander": {
+          "version": "2.6.0",
+          "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.6.0.tgz?cache=0&sync_timestamp=1598576116597&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.6.0.tgz",
+          "integrity": "sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0="
+        },
+        "has-ansi": {
+          "version": "0.1.0",
+          "resolved": "https://registry.npm.taobao.org/has-ansi/download/has-ansi-0.1.0.tgz",
+          "integrity": "sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4=",
+          "requires": {
+            "ansi-regex": "^0.2.0"
+          }
+        },
+        "strip-ansi": {
+          "version": "0.3.0",
+          "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-0.3.0.tgz?cache=0&sync_timestamp=1573280518303&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-0.3.0.tgz",
+          "integrity": "sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA=",
+          "requires": {
+            "ansi-regex": "^0.2.1"
+          }
+        },
+        "supports-color": {
+          "version": "0.2.0",
+          "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-0.2.0.tgz?cache=0&sync_timestamp=1598611849430&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-0.2.0.tgz",
+          "integrity": "sha1-2S3iaU6z9nMjlz1649i1W0wiGQo="
+        }
+      }
+    },
+    "px2rem-loader": {
+      "version": "0.1.9",
+      "resolved": "https://registry.npm.taobao.org/px2rem-loader/download/px2rem-loader-0.1.9.tgz",
+      "integrity": "sha1-yPK/i+i5prQ6X2fRSy/r4RYOVqA=",
+      "requires": {
+        "loader-utils": "^1.1.0",
+        "px2rem": "^0.5.0"
+      }
+    },
     "q": {
       "version": "1.5.1",
       "resolved": "http://registry.npm.taobao.org/q/download/q-1.5.1.tgz",
@@ -14061,8 +14236,7 @@
     "resolve-url": {
       "version": "0.2.1",
       "resolved": "http://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz",
-      "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
-      "dev": true
+      "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo="
     },
     "restore-cursor": {
       "version": "2.0.0",
@@ -14105,7 +14279,6 @@
       "version": "2.7.1",
       "resolved": "https://registry.npm.taobao.org/rimraf/download/rimraf-2.7.1.tgz",
       "integrity": "sha1-NXl/E6f9rcVmFCwp1PB8ytSD4+w=",
-      "dev": true,
       "requires": {
         "glob": "^7.1.3"
       }
@@ -15229,14 +15402,12 @@
     "source-map": {
       "version": "0.6.1",
       "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz",
-      "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
-      "dev": true
+      "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM="
     },
     "source-map-resolve": {
       "version": "0.5.2",
       "resolved": "http://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.2.tgz",
       "integrity": "sha1-cuLMNAlVQ+Q7LGKyxMENSpBU8lk=",
-      "dev": true,
       "requires": {
         "atob": "^2.1.1",
         "decode-uri-component": "^0.2.0",
@@ -15265,8 +15436,7 @@
     "source-map-url": {
       "version": "0.4.0",
       "resolved": "http://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz",
-      "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
-      "dev": true
+      "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM="
     },
     "spdx-correct": {
       "version": "3.1.0",
@@ -16063,6 +16233,12 @@
         }
       }
     },
+    "tslib": {
+      "version": "1.13.0",
+      "resolved": "https://registry.npm.taobao.org/tslib/download/tslib-1.13.0.tgz?cache=0&sync_timestamp=1596753875166&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftslib%2Fdownload%2Ftslib-1.13.0.tgz",
+      "integrity": "sha1-yIHhPMcBWJTtkUhi0nZDb6mkcEM=",
+      "dev": true
+    },
     "tty-browserify": {
       "version": "0.0.0",
       "resolved": "http://registry.npm.taobao.org/tty-browserify/download/tty-browserify-0.0.0.tgz",
@@ -16320,8 +16496,7 @@
     "urix": {
       "version": "0.1.0",
       "resolved": "http://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz",
-      "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
-      "dev": true
+      "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI="
     },
     "url": {
       "version": "0.11.0",
@@ -17260,8 +17435,7 @@
     "wrappy": {
       "version": "1.0.2",
       "resolved": "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz",
-      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
-      "dev": true
+      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
     },
     "write": {
       "version": "0.2.1",

+ 5 - 0
mobile/package.json

@@ -20,11 +20,14 @@
     "js-base64": "^2.5.2",
     "js-cookie": "^2.2.0",
     "jsonp": "^0.2.1",
+    "lib-flexible": "^0.3.2",
     "luxy.js": "^0.1.0",
+    "px2rem-loader": "^0.1.9",
     "qqsdk": "^0.1.5",
     "three": "^0.102.1",
     "vue": "^2.5.2",
     "vue-awesome-swiper": "^3.1.3",
+    "vue-i18n": "^8.21.0",
     "vue-router": "^3.0.1",
     "weixin-js-sdk": "^1.6.0"
   },
@@ -64,6 +67,8 @@
     "html-webpack-plugin": "^2.30.1",
     "jest": "^22.0.4",
     "jest-serializer-vue": "^0.3.0",
+    "less": "^3.9",
+    "less-loader": "^5.0.0",
     "nightwatch": "^0.9.12",
     "node-notifier": "^5.1.2",
     "node-sass": "^4.10.0",

+ 4 - 4
mobile/src/App.vue

@@ -2,14 +2,14 @@
   <div id="app">
     <iheader  class="header" />
     <router-view class="layout"/>
-    <ifooter  class="header" />
+    <ifooter   />
   </div>
 </template>
 
 <script>
 import '@/assets/style/reset.scss'
 import '@/assets/style/public.scss'
-import '@/assets/font/iconfont.css'
+
 import header from '@/pages/layout/header'
 import footer from '@/pages/layout/footer'
 import browser from '@/util/browser'
@@ -109,9 +109,9 @@ export default {
 }
 </script>
 
-<style lang="scss" scoped>
+<style lang="scss">
 #app {
-  padding-top: 60px;
+  padding-top: 50px;
 }
 
 .header{

二進制
mobile/src/assets/images/refactor/about/4d-logo.png


二進制
mobile/src/assets/images/refactor/about/banner.png


二進制
mobile/src/assets/images/refactor/about/img1.png


二進制
mobile/src/assets/images/refactor/about/img2.png


二進制
mobile/src/assets/images/refactor/about/zd-logo.png


二進制
mobile/src/assets/images/refactor/agent/ad1.png


二進制
mobile/src/assets/images/refactor/agent/ad2.png


二進制
mobile/src/assets/images/refactor/agent/ad3.png


二進制
mobile/src/assets/images/refactor/agent/ad4.png


二進制
mobile/src/assets/images/refactor/agent/ad5.png


二進制
mobile/src/assets/images/refactor/agent/banner.png


二進制
mobile/src/assets/images/refactor/conduct/exhibition/banner.png


二進制
mobile/src/assets/images/refactor/conduct/exhibition/item1.png


二進制
mobile/src/assets/images/refactor/conduct/exhibition/item2.png


二進制
mobile/src/assets/images/refactor/conduct/exhibition/item3.png


二進制
mobile/src/assets/images/refactor/conduct/exhibition/item4.png


二進制
mobile/src/assets/images/refactor/conduct/house/banner.png


二進制
mobile/src/assets/images/refactor/conduct/house/item1.png


二進制
mobile/src/assets/images/refactor/conduct/house/item2.png


二進制
mobile/src/assets/images/refactor/conduct/house/item3.png


二進制
mobile/src/assets/images/refactor/conduct/house/item4.png


二進制
mobile/src/assets/images/refactor/conduct/secury/banner.png


二進制
mobile/src/assets/images/refactor/conduct/secury/item1.png


二進制
mobile/src/assets/images/refactor/conduct/secury/item2.png


二進制
mobile/src/assets/images/refactor/conduct/secury/item3.png


二進制
mobile/src/assets/images/refactor/conduct/shop/banner.png


二進制
mobile/src/assets/images/refactor/conduct/shop/item1.png


二進制
mobile/src/assets/images/refactor/conduct/shop/item2.png


二進制
mobile/src/assets/images/refactor/conduct/shop/item3.png


二進制
mobile/src/assets/images/refactor/conduct/shop/item4.png


二進制
mobile/src/assets/images/refactor/conduct/subject/banner.png


二進制
mobile/src/assets/images/refactor/conduct/subject/case1.png


二進制
mobile/src/assets/images/refactor/conduct/subject/case2.png


二進制
mobile/src/assets/images/refactor/conduct/subject/case3.png


二進制
mobile/src/assets/images/refactor/conduct/subject/item1.png


二進制
mobile/src/assets/images/refactor/conduct/subject/item2.png


二進制
mobile/src/assets/images/refactor/conduct/subject/item3.png


二進制
mobile/src/assets/images/refactor/conduct/subject/item4.png


二進制
mobile/src/assets/images/refactor/home/douyin.png


二進制
mobile/src/assets/images/refactor/home/footer-find-bg.png


二進制
mobile/src/assets/images/refactor/home/plate01-img@2x.png


二進制
mobile/src/assets/images/refactor/home/plate02-1.png


二進制
mobile/src/assets/images/refactor/home/plate02-2.png


二進制
mobile/src/assets/images/refactor/home/plate03-1.png


二進制
mobile/src/assets/images/refactor/home/plate03-2.png


二進制
mobile/src/assets/images/refactor/home/plate04-1.png


二進制
mobile/src/assets/images/refactor/home/plate04-2.png


二進制
mobile/src/assets/images/refactor/home/plate04-3.png


二進制
mobile/src/assets/images/refactor/home/playBtn.png


二進制
mobile/src/assets/images/refactor/home/wechat.png


二進制
mobile/src/assets/images/refactor/home/weibo.png


二進制
mobile/src/assets/images/refactor/service/app-icon.png


二進制
mobile/src/assets/images/refactor/service/logo.png


二進制
mobile/src/assets/images/refactor/service/play-btn.png


+ 26 - 0
mobile/src/assets/style/public.scss

@@ -269,6 +269,32 @@ body{
     }
   }
 }
+.clear::after {
+  content: '';
+  display: block;
+  clear: both;
+}
+.fl {
+  float: left;
+}
+.fr {
+  float: right;
+}
+.common-title {
+  font-size: 22px;
+  font-weight: bold;
+  line-height: 33px;
+  color: #202020;
+  text-align: left !important;
+  &::after {
+    content: '';
+    display: block;
+    height: 2px;
+    width: 72px;
+    background: #1FE4DC;
+    margin-top: 11px;
+  }
+}
 
 @keyframes rotateLoader {
   0% {

+ 1 - 0
mobile/src/components/browse/index.vue

@@ -74,6 +74,7 @@ export default {
 .swiper-slide {
   .s-item{
     width: 100%;
+    // background: #ebebeb;
   }
 }
 

+ 89 - 0
mobile/src/components/shared/Col.vue

@@ -0,0 +1,89 @@
+<template>
+  <div
+    :is="tag"
+    :style="style"
+    class="h-col"
+    :class="classes"
+    >
+    <slot />
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'HCol',
+
+  props: {
+    tag: {
+      type: String,
+      default: 'div'
+    },
+    span: {
+      type: Number,
+      default: 24
+    },
+    offset: Number,
+    pull: Number,
+    push: Number
+  },
+
+  computed: {
+    gutter () {
+      let parent = this.$parent
+      while (parent && parent.$options.componentName !== 'HRow') {
+        parent = parent.$parent
+      }
+      return parent ? parent.gutter : 0
+    },
+    style () {
+      const style = {}
+      if (this.gutter) {
+        style.paddingLeft = this.gutter / 2 + 'px'
+        style.paddingRight = style.paddingLeft
+      }
+      return style
+    },
+    classes () {
+      const classList = []
+      ;['span', 'offset', 'pull', 'push'].forEach(prop => {
+        if (this[prop] || this[prop] === 0) {
+          classList.push(
+            prop !== 'span'
+              ? `h-col-${prop}-${this[prop]}`
+              : `h-col-${this[prop]}`
+          )
+        }
+      })
+      return classList
+    }
+  }
+}
+</script>
+
+<style lang="less">
+[class*="h-col-"] {
+  float: left;
+  box-sizing: border-box;
+}
+[class*="h-col-pull"],
+[class*="h-col-push"] {
+  position: relative;
+}
+
+.col-loop (@i) when (@i > 0) {
+  .h-col-@{i} {
+    width: (1 / 24 * @i * 100) * 1%;
+  }
+  .h-col-offset-@{i} {
+    margin-left: (1 / 24 * @i * 100) * 1%;
+  }
+  .h-col-pull-@{i} {
+    right: (1 / 24 * @i * 100) * 1%;
+  }
+  .h-col-push-@{i} {
+    left: (1 / 24 * @i * 100) * 1%;
+  }
+  .col-loop(@i - 1);
+}
+.col-loop(24);
+</style>

+ 27 - 0
mobile/src/components/shared/Icon.vue

@@ -0,0 +1,27 @@
+<template>
+  <i
+    class="iconfont"
+    :class="{ [`${prefixCls}-${type}`]: type }"
+    v-on="$listeners"
+  />
+</template>
+
+<script>
+export default {
+  name: 'HIcon',
+  props: {
+    prefixCls: {
+      type: String,
+      default: 'icon'
+    },
+    type: {
+      type: String,
+      required: true
+    }
+  }
+}
+</script>
+
+<style lang="less">
+
+</style>

+ 160 - 0
mobile/src/components/shared/MessageBox/MessageBox.vue

@@ -0,0 +1,160 @@
+<template>
+  <HModal
+    :visible="visible"
+    :show-close="showClose"
+    :mask="mask"
+    :close-on-click-mask="closeOnClickMask"
+    :close-on-press-escape="closeOnPressEscape"
+    @hide="handleAction('close')"
+  >
+    <template>
+      <div class="h-message-box" v-if="type !== 'alert'">
+        <header v-if="title" class="h-message-box__header">
+          <HIcon v-if="icon" :type="icon" />
+          {{ title }}
+        </header>
+        <main class="h-message-box__body">
+          <div class="h-message-box__message">{{ message }}</div>
+        </main>
+        <footer class="h-message-box__footer">
+          <div plain :class="cancelButtonClass" v-if="!hideCancleButton" @click="handleAction('cancel')">{{ cancelButtonText }}</div>
+          <div ref="confirm" :class="confirmButtonClass" @click="handleAction('confirm')">{{ confirmButtonText }}</div>
+        </footer>
+      </div>
+      <div class="h-alert-box" v-else>
+        <div class="warn-icon">
+          <h-icon :type="icon" style="font-size: 40px;line-height: 52px" />
+        </div>
+        <p class="message">{{ message }}</p>
+        <div class="submit-btn" @click="handleAction('close')">确定</div>
+      </div>
+    </template>
+  </HModal>
+</template>
+
+<script>
+export default {
+  name: 'HMessageBox',
+  data () {
+    return {
+      visible: false,
+      title: undefined,
+      icon: undefined,
+      message: '',
+      action: '',
+      showConfirmButton: true,
+      showCancelButton: false,
+      confirmButtonText: '',
+      cancelButtonText: '',
+      confirmButtonClass: '',
+      cancelButtonClass: '',
+      showClose: true,
+      mask: true,
+      closeOnClickMask: true,
+      closeOnPressEscape: true,
+      hideCancleButton: false,
+      type: ''
+    }
+  },
+
+  watch: {
+    visible (val) {
+      if (val) {
+        this.uid++
+      }
+    }
+  },
+
+  methods: {
+    getSafeClose () {
+      const currentId = this.uid
+      return () => {
+        this.$nextTick(() => {
+          if (currentId === this.uid) this.doClose()
+        })
+      }
+    },
+    doClose () {
+      if (!this.visible) return
+      this.visible = false
+      this._closing = true
+
+      this.onClose && this.onClose()
+      setTimeout(() => {
+        if (this.action) this.callback(this.action, this)
+      })
+    },
+    handleAction (action) {
+      this.action = action
+      if (typeof this.beforeClose === 'function') {
+        this.close = this.getSafeClose()
+        this.beforeClose(action, this, this.close)
+      } else {
+        this.doClose()
+      }
+    }
+  }
+}
+</script>
+
+<style lang="less">
+.h-message-box {
+  width: 420px;
+  padding: 10px 15px;
+}
+.h-message-box__header {
+  padding: 5px 0;
+  font-size: 18px;
+}
+.h-message-box__body {
+  padding: 10px 0;
+  color: #202020;
+  line-height: 1.5;
+}
+.h-message-box__footer {
+  padding-top: 10px;
+  text-align: right;
+  .h-button {
+    font-size: 12px;
+  }
+  .h-button + .h-button {
+    margin-left: 10px;
+  }
+}
+
+.h-alert-box {
+  width: 335px;
+  height: 256px;
+  padding: 48px 50px 30px;
+  .warn-icon {
+    width: 52px;
+    height: 52px;
+    border: 1px solid #ebebeb;
+    border-radius: 50%;
+    text-align: center;
+    line-height: 52px;
+    color: #1FE4DC;
+    margin: 0 auto 10px;
+    font-weight: bold;
+    font-size: 40px;
+  }
+  .message {
+    color: #909090;
+    font-size: 16px;
+    font-weight: 600;
+    line-height: 20px;
+    width: 194px;
+    text-align: center;
+    margin: 0 auto;
+  }
+  .submit-btn {
+    width: 100%;
+    background: #1FE4DC;
+    line-height: 40px;
+    text-align: center;
+    font-weight: bold;
+    margin-top: 30px;
+    cursor: pointer;
+  }
+}
+</style>

+ 0 - 0
mobile/src/components/shared/MessageBox/plugin.js


Some files were not shown because too many files changed in this diff