xs-common-plugins 1.4.5 → 1.4.7

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.
@@ -29,6 +29,9 @@
29
29
  <option name="INTERPOLATION_NEW_LINE_AFTER_START_DELIMITER" value="false" />
30
30
  <option name="INTERPOLATION_NEW_LINE_BEFORE_END_DELIMITER" value="false" />
31
31
  </VueCodeStyleSettings>
32
+ <editorconfig>
33
+ <option name="ENABLED" value="false" />
34
+ </editorconfig>
32
35
  <codeStyleSettings language="HTML">
33
36
  <option name="SOFT_MARGINS" value="400" />
34
37
  <indentOptions>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="JavaScriptLibraryMappings">
4
+ <includedPredefinedLibrary name="Node.js Core" />
5
+ </component>
6
+ </project>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="PrettierConfiguration">
4
+ <option name="myConfigurationMode" value="MANUAL" />
5
+ </component>
6
+ </project>
package/package.json CHANGED
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "xs-common-plugins",
3
- "version": "1.4.5",
4
- "private": false,
3
+ "version": "1.4.7",
5
4
  "description": "向上公共代码部分",
6
5
  "author": "祝玲云 <1902733517@qq.com>",
7
6
  "main": "index.js",
@@ -13,4 +12,4 @@
13
12
  "type": "git",
14
13
  "url": "https://gitlab.365xs.cn/web/npm/xs-common-plugins.git"
15
14
  }
16
- }
15
+ }
@@ -293,6 +293,10 @@ common.popup = (options) => {
293
293
  type: Function,
294
294
  default: null,
295
295
  },
296
+ closeOnPressEscape:{
297
+ type: Boolean,
298
+ default: false,
299
+ }
296
300
  },
297
301
  data() {
298
302
  return {
@@ -324,7 +328,7 @@ common.popup = (options) => {
324
328
  },
325
329
  template: `
326
330
  <div>
327
- <el-dialog :title="title" v-el-drag-dialog :visible.sync="visible" :width="width" :before-close="beforeClose" v-bind="dialogCfg" append-to-body>
331
+ <el-dialog :title="title" :close-on-click-modal="closeOnPressEscape" :close-on-press-escape="closeOnPressEscape" v-el-drag-dialog :visible.sync="visible" :width="width" :before-close="beforeClose" v-bind="dialogCfg" append-to-body>
328
332
  <child ref="child" :srcData="srcData" v-bind="props" @close="close" @cancel="cancel"/>
329
333
  <div v-if="showButton" style="text-align: right;margin-top: 10px">
330
334
  <el-button size="medium" type="primary" @click="confirm" v-loading="loading">确认</el-button>
@@ -11,6 +11,10 @@
11
11
  height: 100%;
12
12
  }
13
13
 
14
+ .el-loading-spinner {
15
+ transform: scale(0.5);
16
+ }
17
+
14
18
  .el-image-viewer__close {
15
19
  color: #fff;
16
20
  }
@@ -1,55 +1,69 @@
1
- import OSS from 'ali-oss'
2
- import { requestApi as axios} from 'xs-request'
3
- import store from '../store/index'
4
- import { getLocalStorage } from "@/utils/localStorage";
5
- import {getConfig} from '@/utils/global-config'
6
-
7
- // 去哪个服务下 获取 token 信息
8
- function getOssToken () {
9
- return axios.get('@commng/UserCur/Oss/Config/' + getConfig('CLIENT_ID'))
10
- }
11
-
12
- let ossCfg = {}
13
- // vuex 获取初始化值
14
- const initToken = function() {
15
- ossCfg = store.getters.ossCfg
16
- let timestamp = new Date().getTime()
17
- // 有效期内不发送获取token 请求
18
- if (ossCfg.region && ossCfg.timeout > timestamp) { return }
19
- getOssToken()
20
- .then(({ data }) => {
21
- ossCfg.region = data.ossEndpoint
22
- ossCfg.bucket = data.bucketName
23
- ossCfg.accessKeyId = data.stsAccessKeyId
24
- ossCfg.accessKeySecret = data.stsAccessKeySecret
25
- ossCfg.stsToken = data.stsSecurityToken
26
- ossCfg.baseDir = data.baseDir
27
- ossCfg.timeout = timestamp + (data.durationSeconds * 1000)
28
- store.commit("oss/SET_OSS", ossCfg)
29
- })
30
- .catch((err) => {
31
- console.log('获取Token错误', err)
32
- })
33
- }
34
- const newFileName = function(id = getConfig('CLIENT_ID'), userid = getLocalStorage("userProfile").id) {
35
- let dt = new Date()
36
- let y = dt.getFullYear()
37
- let m = dt.getMonth() + 1 < 10 ? '0' + (dt.getMonth() + 1) : dt.getMonth() + 1
38
- let d = dt.getDate() < 10 ? '0' + dt.getDate() : dt.getDate()
39
- return `${ossCfg.baseDir}/${userid}/${y}${m}${d}/${id}_${dt.getTime()}` // 定义唯一的文件名
40
- }
41
-
42
- const ossService = {
43
- token: ossCfg,
44
- initToken,
45
- newFileName,
46
- _ossClient: null,
47
- getOssClient() {
48
- if (this._ossClient == null) { this._ossClient = new OSS(ossCfg) }
49
- return this._ossClient
50
- }
51
- }
52
-
53
- export default ossService
54
-
55
-
1
+ import OSS from 'ali-oss'
2
+ import { requestApi as axios } from 'xs-request'
3
+ import store from '../store/index'
4
+ import { getLocalStorage } from '@/utils/localStorage'
5
+ import { getConfig } from '@/utils/global-config'
6
+
7
+ let ossCfg = {}
8
+
9
+ // 去哪个服务下 获取 token 信息
10
+ function getOssToken() {
11
+ return axios
12
+ .get('@commng/UserCur/Oss/Config/' + getConfig('CLIENT_ID'))
13
+ .then(({ data }) => {
14
+ let timestamp = new Date().getTime()
15
+ ossCfg.region = data.ossEndpoint
16
+ ossCfg.bucket = data.bucketName
17
+ ossCfg.accessKeyId = data.stsAccessKeyId
18
+ ossCfg.accessKeySecret = data.stsAccessKeySecret
19
+ ossCfg.stsToken = data.stsSecurityToken
20
+ ossCfg.baseDir = data.baseDir
21
+ ossCfg.timeout = timestamp + data.durationSeconds * 1000
22
+ store.commit('oss/SET_OSS', ossCfg)
23
+ return ossCfg
24
+ })
25
+ .catch(err => {
26
+ console.log('获取Token错误', err)
27
+ })
28
+ }
29
+
30
+ //自动刷新token
31
+ const initOssToken = function (time) {
32
+ setTimeout(() => {
33
+ getOssToken()
34
+ }, time)
35
+ }
36
+
37
+ // vuex 获取初始化值
38
+ const initToken = async function () {
39
+ ossCfg = store.getters.ossCfg
40
+ let timestamp = new Date().getTime()
41
+ // 有效期内不发送获取token 请求
42
+ let endTime = ossCfg.timeout - timestamp - 1000 * 60 // 提前1分钟刷新
43
+ initOssToken(endTime)
44
+ if (ossCfg.region && ossCfg.timeout > timestamp) {
45
+ return Promise.resolve(ossCfg)
46
+ }
47
+ return getOssToken()
48
+ }
49
+
50
+ const newFileName = function (id = getConfig('CLIENT_ID'), userid = getLocalStorage('userProfile').id) {
51
+ let dt = new Date()
52
+ let y = dt.getFullYear()
53
+ let m = dt.getMonth() + 1 < 10 ? '0' + (dt.getMonth() + 1) : dt.getMonth() + 1
54
+ let d = dt.getDate() < 10 ? '0' + dt.getDate() : dt.getDate()
55
+ return `${ossCfg.baseDir}/${userid}/${y}${m}${d}/${id}_${dt.getTime()}` // 定义唯一的文件名
56
+ }
57
+
58
+ const ossService = {
59
+ token: ossCfg,
60
+ initToken,
61
+ newFileName,
62
+ _ossClient: null,
63
+ getOssClient() {
64
+ this._ossClient = new OSS(ossCfg)
65
+ return this._ossClient
66
+ }
67
+ }
68
+
69
+ export default ossService
@@ -0,0 +1,12 @@
1
+ const path = require('path')
2
+
3
+ module.exports = {
4
+ context: path.resolve(__dirname, './'),
5
+ resolve: {
6
+ extension: ['.js', '.vue', '.json'],
7
+ alias: {
8
+ '@': path.resolve('src'),
9
+ '@modules': path.resolve('src/modules'),
10
+ }
11
+ }
12
+ }