overseas 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/README.md +12 -0
  2. package/lib/base/bottom-popup.js +550 -0
  3. package/lib/base/button.js +400 -0
  4. package/lib/base/dialog.js +979 -0
  5. package/lib/base/icon.js +273 -0
  6. package/lib/base/image.js +309 -0
  7. package/lib/base/material-list.js +357 -0
  8. package/lib/base/popup.js +364 -0
  9. package/lib/business/basic-image.js +325 -0
  10. package/lib/business/bottom-fixed-button.js +350 -0
  11. package/lib/business/class-choose.js +1717 -0
  12. package/lib/business/grade-panel.js +683 -0
  13. package/lib/business/material-panel.js +778 -0
  14. package/lib/business/notified-panel.js +2141 -0
  15. package/lib/business/page-render.js +364 -0
  16. package/lib/business/registration-panel.js +1071 -0
  17. package/lib/business/selector-panel.js +667 -0
  18. package/lib/business/student-info.js +1172 -0
  19. package/lib/business/switch-student.js +1407 -0
  20. package/lib/business/tips-popup.js +626 -0
  21. package/lib/business/user-login.js +816 -0
  22. package/lib/index.js +1 -0
  23. package/lib/network/api.js +64 -0
  24. package/lib/network/apiUrl.js +68 -0
  25. package/lib/overseas-ui.common.js +8771 -0
  26. package/lib/static/logo.b6015b3.png +0 -0
  27. package/lib/static/logo.b6015b30.png +0 -0
  28. package/lib/theme-style/bottom-fixed-button.css +1 -0
  29. package/lib/theme-style/bottom-popup.css +1 -0
  30. package/lib/theme-style/button.css +1 -0
  31. package/lib/theme-style/class-choose.css +1 -0
  32. package/lib/theme-style/common.css +1 -0
  33. package/lib/theme-style/dialog.css +1 -0
  34. package/lib/theme-style/grade-panel.css +1 -0
  35. package/lib/theme-style/icon.css +1 -0
  36. package/lib/theme-style/image.css +1 -0
  37. package/lib/theme-style/img/body_bg.png +0 -0
  38. package/lib/theme-style/img/pdf.png +0 -0
  39. package/lib/theme-style/img/title_bg.png +0 -0
  40. package/lib/theme-style/index.css +1 -0
  41. package/lib/theme-style/material-list.css +1 -0
  42. package/lib/theme-style/material-panel.css +1 -0
  43. package/lib/theme-style/notified-panel.css +1 -0
  44. package/lib/theme-style/page-render.css +1 -0
  45. package/lib/theme-style/registration-panel.css +1 -0
  46. package/lib/theme-style/selector-panel.css +1 -0
  47. package/lib/theme-style/student-info.css +1 -0
  48. package/lib/theme-style/switch-student.css +1 -0
  49. package/lib/theme-style/tips-popup.css +1 -0
  50. package/lib/theme-style/user-login.css +1 -0
  51. package/lib/utils/dom.js +60 -0
  52. package/lib/utils/filters.js +87 -0
  53. package/lib/utils/merge.js +19 -0
  54. package/lib/utils/phone.js +156 -0
  55. package/lib/utils/popup/index.js +132 -0
  56. package/lib/utils/popup/popup-manager.js +198 -0
  57. package/lib/utils/storage.js +27 -0
  58. package/lib/utils/utils.js +65 -0
  59. package/package.json +80 -0
  60. package/packages/.DS_Store +0 -0
  61. package/packages/base/bottom-popup/index.js +10 -0
  62. package/packages/base/bottom-popup/src/bottom-popup.vue +151 -0
  63. package/packages/base/button/index.js +10 -0
  64. package/packages/base/button/src/button.vue +108 -0
  65. package/packages/base/dialog/index.js +10 -0
  66. package/packages/base/dialog/src/dialog.vue +173 -0
  67. package/packages/base/icon/index.js +10 -0
  68. package/packages/base/icon/src/icon.vue +15 -0
  69. package/packages/base/image/index.js +10 -0
  70. package/packages/base/image/src/image.vue +40 -0
  71. package/packages/base/material-list/index.js +10 -0
  72. package/packages/base/material-list/src/material-list.vue +48 -0
  73. package/packages/base/popup/index.js +10 -0
  74. package/packages/base/popup/src/popup.vue +44 -0
  75. package/packages/business/basic-image/index.js +10 -0
  76. package/packages/business/basic-image/src/basicImage.vue +51 -0
  77. package/packages/business/bottom-fixed-button/index.js +10 -0
  78. package/packages/business/bottom-fixed-button/src/bottomFixedButton.vue +66 -0
  79. package/packages/business/class-choose/index.js +10 -0
  80. package/packages/business/class-choose/src/courseCard.vue +142 -0
  81. package/packages/business/class-choose/src/img/icon_close_bottomcard.svg +14 -0
  82. package/packages/business/class-choose/src/img/icon_date.svg +21 -0
  83. package/packages/business/class-choose/src/img/icon_full.svg +27 -0
  84. package/packages/business/class-choose/src/img/icon_full_EL.svg +49 -0
  85. package/packages/business/class-choose/src/img/icon_selected.svg +18 -0
  86. package/packages/business/class-choose/src/img/icon_star_selected.svg +13 -0
  87. package/packages/business/class-choose/src/img/icon_star_unselect.svg +13 -0
  88. package/packages/business/class-choose/src/index.vue +316 -0
  89. package/packages/business/grade-panel/index.js +10 -0
  90. package/packages/business/grade-panel/src/gradePanel.vue +150 -0
  91. package/packages/business/material-panel/index.js +10 -0
  92. package/packages/business/material-panel/src/index.vue +136 -0
  93. package/packages/business/notified-panel/index.js +10 -0
  94. package/packages/business/notified-panel/src/areaCodeList.js +181 -0
  95. package/packages/business/notified-panel/src/index.vue +491 -0
  96. package/packages/business/page-render/index.js +10 -0
  97. package/packages/business/page-render/src/pageRender.vue +73 -0
  98. package/packages/business/registration-panel/index.js +10 -0
  99. package/packages/business/registration-panel/src/areaCodeList.js +181 -0
  100. package/packages/business/registration-panel/src/img/icon_off.png +0 -0
  101. package/packages/business/registration-panel/src/img/icon_on.png +0 -0
  102. package/packages/business/registration-panel/src/index.vue +329 -0
  103. package/packages/business/registration-panel/src/languageList.js +41 -0
  104. package/packages/business/selector-panel/index.js +10 -0
  105. package/packages/business/selector-panel/src/selectorPanel.vue +134 -0
  106. package/packages/business/student-info/index.js +10 -0
  107. package/packages/business/student-info/src/api/index.js +10 -0
  108. package/packages/business/student-info/src/config.js +11 -0
  109. package/packages/business/student-info/src/studentInfo.vue +145 -0
  110. package/packages/business/switch-student/index.js +10 -0
  111. package/packages/business/switch-student/src/api/index.js +28 -0
  112. package/packages/business/switch-student/src/switchStudent.vue +245 -0
  113. package/packages/business/tips-popup/index.js +10 -0
  114. package/packages/business/tips-popup/src/tipsPopup.vue +76 -0
  115. package/packages/business/user-login/index.js +10 -0
  116. package/packages/business/user-login/src/api/index.js +23 -0
  117. package/packages/business/user-login/src/img/logo.png +0 -0
  118. package/packages/business/user-login/src/index.vue +149 -0
  119. package/packages/theme-style/lib/bottom-fixed-button.css +1 -0
  120. package/packages/theme-style/lib/bottom-popup.css +1 -0
  121. package/packages/theme-style/lib/button.css +1 -0
  122. package/packages/theme-style/lib/class-choose.css +1 -0
  123. package/packages/theme-style/lib/common.css +1 -0
  124. package/packages/theme-style/lib/dialog.css +1 -0
  125. package/packages/theme-style/lib/grade-panel.css +1 -0
  126. package/packages/theme-style/lib/icon.css +1 -0
  127. package/packages/theme-style/lib/image.css +1 -0
  128. package/packages/theme-style/lib/img/body_bg.png +0 -0
  129. package/packages/theme-style/lib/img/pdf.png +0 -0
  130. package/packages/theme-style/lib/img/title_bg.png +0 -0
  131. package/packages/theme-style/lib/index.css +1 -0
  132. package/packages/theme-style/lib/material-list.css +1 -0
  133. package/packages/theme-style/lib/material-panel.css +1 -0
  134. package/packages/theme-style/lib/notified-panel.css +1 -0
  135. package/packages/theme-style/lib/page-render.css +1 -0
  136. package/packages/theme-style/lib/registration-panel.css +1 -0
  137. package/packages/theme-style/lib/selector-panel.css +1 -0
  138. package/packages/theme-style/lib/student-info.css +1 -0
  139. package/packages/theme-style/lib/switch-student.css +1 -0
  140. package/packages/theme-style/lib/tips-popup.css +1 -0
  141. package/packages/theme-style/lib/user-login.css +1 -0
  142. package/packages/theme-style/package.json +38 -0
  143. package/packages/theme-style/src/bottom-fixed-button.scss +31 -0
  144. package/packages/theme-style/src/bottom-popup.scss +87 -0
  145. package/packages/theme-style/src/button.scss +110 -0
  146. package/packages/theme-style/src/class-choose.scss +251 -0
  147. package/packages/theme-style/src/common/popup.scss +39 -0
  148. package/packages/theme-style/src/common/var.scss +6 -0
  149. package/packages/theme-style/src/common.scss +97 -0
  150. package/packages/theme-style/src/dialog.scss +130 -0
  151. package/packages/theme-style/src/grade-panel.scss +76 -0
  152. package/packages/theme-style/src/icon.scss +369 -0
  153. package/packages/theme-style/src/image.scss +8 -0
  154. package/packages/theme-style/src/img/body_bg.png +0 -0
  155. package/packages/theme-style/src/img/pdf.png +0 -0
  156. package/packages/theme-style/src/img/title_bg.png +0 -0
  157. package/packages/theme-style/src/index.scss +20 -0
  158. package/packages/theme-style/src/material-list.scss +118 -0
  159. package/packages/theme-style/src/material-panel.scss +2 -0
  160. package/packages/theme-style/src/notified-panel.scss +207 -0
  161. package/packages/theme-style/src/page-render.scss +3 -0
  162. package/packages/theme-style/src/registration-panel.scss +158 -0
  163. package/packages/theme-style/src/selector-panel.scss +86 -0
  164. package/packages/theme-style/src/student-info.scss +114 -0
  165. package/packages/theme-style/src/switch-student.scss +176 -0
  166. package/packages/theme-style/src/tips-popup.scss +60 -0
  167. package/packages/theme-style/src/user-login.scss +93 -0
  168. package/src/index.js +74 -0
  169. package/src/network/api.js +53 -0
  170. package/src/network/apiUrl.js +65 -0
  171. package/src/utils/dom.js +54 -0
  172. package/src/utils/filters.js +82 -0
  173. package/src/utils/merge.js +16 -0
  174. package/src/utils/phone.js +153 -0
  175. package/src/utils/popup/index.js +115 -0
  176. package/src/utils/popup/popup-manager.js +178 -0
  177. package/src/utils/storage.js +22 -0
  178. package/src/utils/utils.js +49 -0
@@ -0,0 +1,778 @@
1
+ module.exports =
2
+ /******/ (function(modules) { // webpackBootstrap
3
+ /******/ // The module cache
4
+ /******/ var installedModules = {};
5
+ /******/
6
+ /******/ // The require function
7
+ /******/ function __webpack_require__(moduleId) {
8
+ /******/
9
+ /******/ // Check if module is in cache
10
+ /******/ if(installedModules[moduleId]) {
11
+ /******/ return installedModules[moduleId].exports;
12
+ /******/ }
13
+ /******/ // Create a new module (and put it into the cache)
14
+ /******/ var module = installedModules[moduleId] = {
15
+ /******/ i: moduleId,
16
+ /******/ l: false,
17
+ /******/ exports: {}
18
+ /******/ };
19
+ /******/
20
+ /******/ // Execute the module function
21
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22
+ /******/
23
+ /******/ // Flag the module as loaded
24
+ /******/ module.l = true;
25
+ /******/
26
+ /******/ // Return the exports of the module
27
+ /******/ return module.exports;
28
+ /******/ }
29
+ /******/
30
+ /******/
31
+ /******/ // expose the modules object (__webpack_modules__)
32
+ /******/ __webpack_require__.m = modules;
33
+ /******/
34
+ /******/ // expose the module cache
35
+ /******/ __webpack_require__.c = installedModules;
36
+ /******/
37
+ /******/ // define getter function for harmony exports
38
+ /******/ __webpack_require__.d = function(exports, name, getter) {
39
+ /******/ if(!__webpack_require__.o(exports, name)) {
40
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41
+ /******/ }
42
+ /******/ };
43
+ /******/
44
+ /******/ // define __esModule on exports
45
+ /******/ __webpack_require__.r = function(exports) {
46
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48
+ /******/ }
49
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
50
+ /******/ };
51
+ /******/
52
+ /******/ // create a fake namespace object
53
+ /******/ // mode & 1: value is a module id, require it
54
+ /******/ // mode & 2: merge all properties of value into the ns
55
+ /******/ // mode & 4: return value when already ns object
56
+ /******/ // mode & 8|1: behave like require
57
+ /******/ __webpack_require__.t = function(value, mode) {
58
+ /******/ if(mode & 1) value = __webpack_require__(value);
59
+ /******/ if(mode & 8) return value;
60
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61
+ /******/ var ns = Object.create(null);
62
+ /******/ __webpack_require__.r(ns);
63
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65
+ /******/ return ns;
66
+ /******/ };
67
+ /******/
68
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
69
+ /******/ __webpack_require__.n = function(module) {
70
+ /******/ var getter = module && module.__esModule ?
71
+ /******/ function getDefault() { return module['default']; } :
72
+ /******/ function getModuleExports() { return module; };
73
+ /******/ __webpack_require__.d(getter, 'a', getter);
74
+ /******/ return getter;
75
+ /******/ };
76
+ /******/
77
+ /******/ // Object.prototype.hasOwnProperty.call
78
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79
+ /******/
80
+ /******/ // __webpack_public_path__
81
+ /******/ __webpack_require__.p = "/dist/";
82
+ /******/
83
+ /******/
84
+ /******/ // Load entry module and return exports
85
+ /******/ return __webpack_require__(__webpack_require__.s = 19);
86
+ /******/ })
87
+ /************************************************************************/
88
+ /******/ ({
89
+
90
+ /***/ 0:
91
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
92
+
93
+ "use strict";
94
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
95
+ /* globals __VUE_SSR_CONTEXT__ */
96
+
97
+ // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
98
+ // This module is a runtime utility for cleaner component module output and will
99
+ // be included in the final webpack user bundle.
100
+
101
+ function normalizeComponent (
102
+ scriptExports,
103
+ render,
104
+ staticRenderFns,
105
+ functionalTemplate,
106
+ injectStyles,
107
+ scopeId,
108
+ moduleIdentifier, /* server only */
109
+ shadowMode /* vue-cli only */
110
+ ) {
111
+ // Vue.extend constructor export interop
112
+ var options = typeof scriptExports === 'function'
113
+ ? scriptExports.options
114
+ : scriptExports
115
+
116
+ // render functions
117
+ if (render) {
118
+ options.render = render
119
+ options.staticRenderFns = staticRenderFns
120
+ options._compiled = true
121
+ }
122
+
123
+ // functional template
124
+ if (functionalTemplate) {
125
+ options.functional = true
126
+ }
127
+
128
+ // scopedId
129
+ if (scopeId) {
130
+ options._scopeId = 'data-v-' + scopeId
131
+ }
132
+
133
+ var hook
134
+ if (moduleIdentifier) { // server build
135
+ hook = function (context) {
136
+ // 2.3 injection
137
+ context =
138
+ context || // cached call
139
+ (this.$vnode && this.$vnode.ssrContext) || // stateful
140
+ (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
141
+ // 2.2 with runInNewContext: true
142
+ if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
143
+ context = __VUE_SSR_CONTEXT__
144
+ }
145
+ // inject component styles
146
+ if (injectStyles) {
147
+ injectStyles.call(this, context)
148
+ }
149
+ // register component module identifier for async chunk inferrence
150
+ if (context && context._registeredComponents) {
151
+ context._registeredComponents.add(moduleIdentifier)
152
+ }
153
+ }
154
+ // used by ssr in case component is cached and beforeCreate
155
+ // never gets called
156
+ options._ssrRegister = hook
157
+ } else if (injectStyles) {
158
+ hook = shadowMode
159
+ ? function () {
160
+ injectStyles.call(
161
+ this,
162
+ (options.functional ? this.parent : this).$root.$options.shadowRoot
163
+ )
164
+ }
165
+ : injectStyles
166
+ }
167
+
168
+ if (hook) {
169
+ if (options.functional) {
170
+ // for template-only hot-reload because in that case the render fn doesn't
171
+ // go through the normalizer
172
+ options._injectStyles = hook
173
+ // register for functional component in vue file
174
+ var originalRender = options.render
175
+ options.render = function renderWithStyleInjection (h, context) {
176
+ hook.call(context)
177
+ return originalRender(h, context)
178
+ }
179
+ } else {
180
+ // inject component registration as beforeCreate hook
181
+ var existing = options.beforeCreate
182
+ options.beforeCreate = existing
183
+ ? [].concat(existing, hook)
184
+ : [hook]
185
+ }
186
+ }
187
+
188
+ return {
189
+ exports: scriptExports,
190
+ options: options
191
+ }
192
+ }
193
+
194
+
195
+ /***/ }),
196
+
197
+ /***/ 1:
198
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
199
+
200
+ "use strict";
201
+ __webpack_require__.r(__webpack_exports__);
202
+
203
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/base/button/src/button.vue?vue&type=template&id=4e1fb840&
204
+ var render = function () {
205
+ var _vm = this
206
+ var _h = _vm.$createElement
207
+ var _c = _vm._self._c || _h
208
+ return _c(
209
+ "button",
210
+ {
211
+ staticClass: "ts-button",
212
+ class: [
213
+ _vm.styleType ? "ts-button--" + _vm.styleType : "",
214
+ _vm.buttonSize ? "ts-button--" + _vm.buttonSize : "",
215
+ {
216
+ "is-disabled": _vm.buttonDisabled,
217
+ "is-loading": _vm.loading,
218
+ "is-outline": _vm.outline,
219
+ "is-round": _vm.round,
220
+ },
221
+ ],
222
+ style: {
223
+ width: _vm.width,
224
+ height: _vm.height,
225
+ color: _vm.textColor,
226
+ background: _vm.bgColor,
227
+ "border-color": _vm.borderColor,
228
+ },
229
+ attrs: {
230
+ disabled: _vm.buttonDisabled,
231
+ autofocus: _vm.autofocus,
232
+ type: _vm.type,
233
+ },
234
+ on: { click: _vm.handleClick },
235
+ },
236
+ [
237
+ _vm.loading
238
+ ? _c("span", { staticClass: "iconfont icon-loading" })
239
+ : _vm._e(),
240
+ _vm._t("default", function () {
241
+ return [_vm._v("\n TSButton\n ")]
242
+ }),
243
+ ],
244
+ 2
245
+ )
246
+ }
247
+ var staticRenderFns = []
248
+ render._withStripped = true
249
+
250
+
251
+ // CONCATENATED MODULE: ./packages/base/button/src/button.vue?vue&type=template&id=4e1fb840&
252
+
253
+ // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/base/button/src/button.vue?vue&type=script&lang=js&
254
+ //
255
+ //
256
+ //
257
+ //
258
+ //
259
+ //
260
+ //
261
+ //
262
+ //
263
+ //
264
+ //
265
+ //
266
+ //
267
+ //
268
+ //
269
+ //
270
+ //
271
+ //
272
+ //
273
+ //
274
+ //
275
+ //
276
+ //
277
+ //
278
+ //
279
+
280
+ /* harmony default export */ var buttonvue_type_script_lang_js_ = ({
281
+ name: 'TsButton',
282
+ props: {
283
+ // 尺寸(small | normal | large)
284
+ size: {
285
+ type: String,
286
+ default: 'normal'
287
+ },
288
+ // 样式类型(default | primary | assist)
289
+ styleType: {
290
+ type: String,
291
+ default: 'default'
292
+ },
293
+ // 圆角为半圆
294
+ round: {
295
+ type: Boolean,
296
+ default: true
297
+ },
298
+ // 文本颜色
299
+ textColor: {
300
+ type: String,
301
+ default: ''
302
+ },
303
+ // 边框颜色
304
+ borderColor: {
305
+ type: String,
306
+ default: ''
307
+ },
308
+ // 背景色
309
+ bgColor: {
310
+ type: String,
311
+ default: ''
312
+ },
313
+ // 按钮宽度
314
+ width: {
315
+ type: String,
316
+ default: ''
317
+ },
318
+ // 按钮高度
319
+ height: {
320
+ type: String,
321
+ default: ''
322
+ },
323
+ // 原生 type 属性(button | submit | reset)
324
+ type: {
325
+ type: String,
326
+ default: 'button'
327
+ },
328
+ // 是否是线框按钮
329
+ outline: {
330
+ default: false,
331
+ type: Boolean
332
+ },
333
+ // 是否处于loading状态
334
+ loading: {
335
+ default: false,
336
+ type: Boolean
337
+ },
338
+ disabled: {
339
+ default: false,
340
+ type: Boolean
341
+ },
342
+ autofocus: {
343
+ default: false,
344
+ type: Boolean
345
+ }
346
+ },
347
+ computed: {
348
+ buttonSize: function buttonSize() {
349
+ return this.size;
350
+ },
351
+ buttonDisabled: function buttonDisabled() {
352
+ return this.disabled || this.loading;
353
+ }
354
+ },
355
+ methods: {
356
+ handleClick: function handleClick(e) {
357
+ this.$emit('click', e);
358
+ }
359
+ }
360
+ });
361
+ // CONCATENATED MODULE: ./packages/base/button/src/button.vue?vue&type=script&lang=js&
362
+ /* harmony default export */ var src_buttonvue_type_script_lang_js_ = (buttonvue_type_script_lang_js_);
363
+ // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
364
+ var componentNormalizer = __webpack_require__(0);
365
+
366
+ // CONCATENATED MODULE: ./packages/base/button/src/button.vue
367
+
368
+
369
+
370
+
371
+
372
+ /* normalize component */
373
+
374
+ var component = Object(componentNormalizer["a" /* default */])(
375
+ src_buttonvue_type_script_lang_js_,
376
+ render,
377
+ staticRenderFns,
378
+ false,
379
+ null,
380
+ null,
381
+ null
382
+
383
+ )
384
+
385
+ /* hot reload */
386
+ if (false) { var api; }
387
+ component.options.__file = "packages/base/button/src/button.vue"
388
+ /* harmony default export */ var src_button = (component.exports);
389
+ // CONCATENATED MODULE: ./packages/base/button/index.js
390
+
391
+
392
+ // install 是默认的方法,供按需引入
393
+ // 当外界在 use 这个组件的时候,就会调用本身的install方法,同时传一个Vue这个类的参数
394
+
395
+ src_button.install = function (Vue) {
396
+ Vue.component(src_button.name, src_button);
397
+ };
398
+
399
+ /* harmony default export */ var base_button = __webpack_exports__["default"] = (src_button);
400
+
401
+ /***/ }),
402
+
403
+ /***/ 19:
404
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
405
+
406
+ "use strict";
407
+ __webpack_require__.r(__webpack_exports__);
408
+
409
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/business/material-panel/src/index.vue?vue&type=template&id=e453c15e&
410
+ var render = function () {
411
+ var _vm = this
412
+ var _h = _vm.$createElement
413
+ var _c = _vm._self._c || _h
414
+ return _c(
415
+ "div",
416
+ { ref: "material-panel", attrs: { id: "material-panel" } },
417
+ [
418
+ _c("material-list", {
419
+ attrs: { "file-list": _vm.fileList, title: _vm.title },
420
+ }),
421
+ _c("div", { staticClass: "bottom-fixed-btns-wrapper" }, [
422
+ _c(
423
+ "div",
424
+ { staticClass: "bottom-fixed-btns-container" },
425
+ [
426
+ _c(
427
+ "ts-button",
428
+ {
429
+ staticClass: "bottom-btn",
430
+ attrs: {
431
+ "style-type": "primary",
432
+ size: "small",
433
+ width: "100%",
434
+ height: "48px",
435
+ },
436
+ on: { click: _vm.bottomBtnClick },
437
+ },
438
+ [_vm._v("\n " + _vm._s(_vm.btnTitle) + "\n ")]
439
+ ),
440
+ ],
441
+ 1
442
+ ),
443
+ ]),
444
+ ],
445
+ 1
446
+ )
447
+ }
448
+ var staticRenderFns = []
449
+ render._withStripped = true
450
+
451
+
452
+ // CONCATENATED MODULE: ./packages/business/material-panel/src/index.vue?vue&type=template&id=e453c15e&
453
+
454
+ // EXTERNAL MODULE: ./packages/base/button/index.js + 5 modules
455
+ var base_button = __webpack_require__(1);
456
+
457
+ // EXTERNAL MODULE: ./packages/base/material-list/src/material-list.vue + 4 modules
458
+ var material_list = __webpack_require__(4);
459
+
460
+ // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/business/material-panel/src/index.vue?vue&type=script&lang=js&
461
+ //
462
+ //
463
+ //
464
+ //
465
+ //
466
+ //
467
+ //
468
+ //
469
+ //
470
+ //
471
+ //
472
+ //
473
+ //
474
+ //
475
+ //
476
+ //
477
+ //
478
+ //
479
+ //
480
+ //
481
+
482
+
483
+
484
+ /* harmony default export */ var srcvue_type_script_lang_js_ = ({
485
+ name: "TsMaterialPanel",
486
+ components: {
487
+ TsButton: base_button["default"],
488
+ MaterialList: material_list["a" /* default */]
489
+ },
490
+ props: {
491
+ fileList: {
492
+ type: Array,
493
+ default: function _default() {
494
+ return [];
495
+ }
496
+ },
497
+ title: {
498
+ type: String,
499
+ default: "Content Preview"
500
+ },
501
+ btnTitle: {
502
+ type: String,
503
+ default: "click"
504
+ },
505
+ precondition: {
506
+ type: Number,
507
+ default: 1
508
+ },
509
+ shareDesc: {
510
+ type: String,
511
+ default: ""
512
+ },
513
+ shareDuration: {
514
+ type: Number || String,
515
+ default: 72
516
+ },
517
+ shareNum: {
518
+ type: Number || String,
519
+ default: 3
520
+ },
521
+ sharePoster: {
522
+ type: String,
523
+ default: "https://kjdsfz-cdn.thethinkacademy.com/website/8601/20211126/1637893880920mLUcPnPD1B.png"
524
+ },
525
+ teacherQRCode: {
526
+ type: String,
527
+ default: "https://kjdsfz-cdn.thethinkacademy.com/website/8601/20211126/16378938916160msIeKMVze.png"
528
+ }
529
+ },
530
+ data: function data() {
531
+ return {
532
+ observer: "",
533
+ time: ""
534
+ };
535
+ },
536
+ mounted: function mounted() {
537
+ var _this = this;
538
+
539
+ this.$sensors.track('h5_resource_card_show', {
540
+ resource_num: this.fileList.length,
541
+ get_type: this.precondition,
542
+ share_num: this.shareNum,
543
+ button_name: this.btnTitle
544
+ });
545
+ this.observer = new IntersectionObserver(function (entries) {
546
+ entries.forEach(function (item) {
547
+ if (item.isIntersecting) {
548
+ _this.time = Date.now();
549
+ } else {
550
+ _this.upload();
551
+ }
552
+ });
553
+ }, {
554
+ root: null,
555
+ rootMargin: "0px 0px",
556
+ threshold: 0.7
557
+ });
558
+ this.observer.observe(this.$refs["material-panel"]);
559
+ window.addEventListener("unload", this.upload);
560
+ },
561
+ beforeDestroy: function beforeDestroy() {
562
+ this.upload();
563
+ },
564
+ destroyed: function destroyed() {
565
+ window.removeEventListener("unload", this.upload);
566
+ },
567
+
568
+ methods: {
569
+ bottomBtnClick: function bottomBtnClick() {
570
+ this.$emit("btn-click", "fix-bottom-share", {
571
+ props: this.$props
572
+ });
573
+ if (this.$sensors) {
574
+ this.$sensors.track('h5_resource_card_click', {
575
+ resource_num: this.fileList.length,
576
+ get_type: this.precondition,
577
+ share_num: this.shareNum,
578
+ button_name: this.btnTitle
579
+ });
580
+ }
581
+ },
582
+ upload: function upload() {
583
+ if (this.time && Date.now() - this.time > 1000) {
584
+ if (this.$sensors) {
585
+ this.$sensors.track("show_activity_pv", {
586
+ exposure_time: Date.now() - this.time,
587
+ active_type: this.precondition === 1 ? "直接领取" : "助力领取"
588
+ });
589
+ this.time = "";
590
+ }
591
+ }
592
+ }
593
+ }
594
+ });
595
+ // CONCATENATED MODULE: ./packages/business/material-panel/src/index.vue?vue&type=script&lang=js&
596
+ /* harmony default export */ var material_panel_srcvue_type_script_lang_js_ = (srcvue_type_script_lang_js_);
597
+ // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
598
+ var componentNormalizer = __webpack_require__(0);
599
+
600
+ // CONCATENATED MODULE: ./packages/business/material-panel/src/index.vue
601
+
602
+
603
+
604
+
605
+
606
+ /* normalize component */
607
+
608
+ var component = Object(componentNormalizer["a" /* default */])(
609
+ material_panel_srcvue_type_script_lang_js_,
610
+ render,
611
+ staticRenderFns,
612
+ false,
613
+ null,
614
+ null,
615
+ null
616
+
617
+ )
618
+
619
+ /* hot reload */
620
+ if (false) { var api; }
621
+ component.options.__file = "packages/business/material-panel/src/index.vue"
622
+ /* harmony default export */ var src = (component.exports);
623
+ // CONCATENATED MODULE: ./packages/business/material-panel/index.js
624
+
625
+
626
+ // install 是默认的方法,供按需引入
627
+ // 当外界在 use 这个组件的时候,就会调用本身的install方法,同时传一个Vue这个类的参数
628
+
629
+ src.install = function (Vue) {
630
+ Vue.component(src.name, src);
631
+ };
632
+
633
+ /* harmony default export */ var material_panel = __webpack_exports__["default"] = (src);
634
+
635
+ /***/ }),
636
+
637
+ /***/ 4:
638
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
639
+
640
+ "use strict";
641
+
642
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/base/material-list/src/material-list.vue?vue&type=template&id=97007458&
643
+ var render = function () {
644
+ var _vm = this
645
+ var _h = _vm.$createElement
646
+ var _c = _vm._self._c || _h
647
+ return _c("div", { staticClass: "material-list" }, [
648
+ _c("div", { staticClass: "material-panel_title" }, [
649
+ _vm._v("\n " + _vm._s(_vm.title) + "\n "),
650
+ ]),
651
+ _c(
652
+ "div",
653
+ {
654
+ staticClass: "material-panel_body",
655
+ class: _vm.fileList.length > 3 ? "more" : "",
656
+ },
657
+ [
658
+ _c(
659
+ "div",
660
+ { staticClass: "material-list-box" },
661
+ _vm._l(_vm.fileList, function (file, index) {
662
+ return _c("div", { key: index, staticClass: "material" }, [
663
+ _c("div", { staticClass: "material-icon" }),
664
+ _c("div", { staticClass: "material-info" }, [
665
+ _c("div", { staticClass: "material-info_title" }, [
666
+ _vm._v(
667
+ "\n " +
668
+ _vm._s(file.fileName) +
669
+ " " +
670
+ _vm._s(file.fileExt ? "." + file.fileExt : "") +
671
+ "\n "
672
+ ),
673
+ ]),
674
+ _c("div", { staticClass: "material-info_size" }, [
675
+ _vm._v(
676
+ "\n " +
677
+ _vm._s(_vm._f("sizeFilter")(file.fileSize)) +
678
+ "\n "
679
+ ),
680
+ ]),
681
+ ]),
682
+ ])
683
+ }),
684
+ 0
685
+ ),
686
+ _c("div", { staticClass: "material-panel-masking" }),
687
+ ]
688
+ ),
689
+ ])
690
+ }
691
+ var staticRenderFns = []
692
+ render._withStripped = true
693
+
694
+
695
+ // CONCATENATED MODULE: ./packages/base/material-list/src/material-list.vue?vue&type=template&id=97007458&
696
+
697
+ // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/base/material-list/src/material-list.vue?vue&type=script&lang=js&
698
+ //
699
+ //
700
+ //
701
+ //
702
+ //
703
+ //
704
+ //
705
+ //
706
+ //
707
+ //
708
+ //
709
+ //
710
+ //
711
+ //
712
+ //
713
+ //
714
+ //
715
+ //
716
+ //
717
+ //
718
+ //
719
+ //
720
+ //
721
+ //
722
+
723
+ /* harmony default export */ var material_listvue_type_script_lang_js_ = ({
724
+ name: "MaterialList",
725
+ filters: {
726
+ sizeFilter: function sizeFilter(value) {
727
+ if (!value) return '';
728
+ if (value > 1024 * 1024) {
729
+ return Number(value / 1024 / 1024).toFixed(1) + 'MB';
730
+ }
731
+ return Number(value / 1024).toFixed(1) + 'KB';
732
+ }
733
+ },
734
+ props: {
735
+ fileList: {
736
+ type: Array,
737
+ default: function _default() {
738
+ return [];
739
+ }
740
+ },
741
+ title: {
742
+ type: String,
743
+ default: 'Content Preview'
744
+ }
745
+ }
746
+ });
747
+ // CONCATENATED MODULE: ./packages/base/material-list/src/material-list.vue?vue&type=script&lang=js&
748
+ /* harmony default export */ var src_material_listvue_type_script_lang_js_ = (material_listvue_type_script_lang_js_);
749
+ // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
750
+ var componentNormalizer = __webpack_require__(0);
751
+
752
+ // CONCATENATED MODULE: ./packages/base/material-list/src/material-list.vue
753
+
754
+
755
+
756
+
757
+
758
+ /* normalize component */
759
+
760
+ var component = Object(componentNormalizer["a" /* default */])(
761
+ src_material_listvue_type_script_lang_js_,
762
+ render,
763
+ staticRenderFns,
764
+ false,
765
+ null,
766
+ null,
767
+ null
768
+
769
+ )
770
+
771
+ /* hot reload */
772
+ if (false) { var api; }
773
+ component.options.__file = "packages/base/material-list/src/material-list.vue"
774
+ /* harmony default export */ var material_list = __webpack_exports__["a"] = (component.exports);
775
+
776
+ /***/ })
777
+
778
+ /******/ });