cloudcc-ccdk 0.0.2 → 0.0.5

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.
package/README.md ADDED
@@ -0,0 +1,23 @@
1
+ #### 发布版本:0.0.5
2
+ #### 更新日期:2022/8/8
3
+ #### 更新内容:
4
+ * 修复
5
+ * 迭代
6
+ * 优化加密库依赖导入
7
+ * 优化
8
+
9
+ #### 发布版本:0.0.4
10
+ #### 更新日期:2022/8/8
11
+ #### 更新内容:
12
+ * 修复
13
+ * 迭代
14
+ * 优化加密库依赖导入
15
+ * 优化
16
+
17
+ #### 发布版本:0.0.3
18
+ #### 更新日期:2022/7/28
19
+ #### 更新内容:
20
+ * 修复
21
+ * 迭代
22
+ * 添加注解
23
+ * 优化
package/lib/ccdk.js CHANGED
@@ -1,57 +1,69 @@
1
1
  import Cookies from 'js-cookie';
2
- import CryptoJS from 'crypto-js';
2
+ import CryptoJS from 'crypto-js/aes';
3
+ import UTF8 from 'crypto-js/enc-utf8';
4
+ import MODE from 'crypto-js/mode-cfb';
5
+ import PAD from 'crypto-js/pad-pkcs7';
3
6
 
4
7
  /**
5
- * data 时要操作的数据
6
- * key 是密钥
7
- * iv 是密钥偏移量,这个一般是接口返回的
8
+ * 加密
9
+ * @param {String} data 数据
10
+ * @param {String} key 密钥
11
+ * @param {String} iv 偏移量
12
+ * @returns
8
13
  */
9
-
10
- //加密
11
14
  function getAesString(data, key, iv) {
12
- key = CryptoJS.enc.Utf8.parse(key);
13
- iv = CryptoJS.enc.Utf8.parse(iv);
14
- let encrypted = CryptoJS.AES.encrypt(data, key, {
15
+ key = UTF8.parse(key);
16
+ iv = UTF8.parse(iv);
17
+ let encrypted = CryptoJS.encrypt(data, key, {
15
18
  iv: iv,
16
- mode: CryptoJS.mode.CBC,
17
- padding: CryptoJS.pad.Pkcs7,
19
+ mode: MODE,
20
+ padding: PAD,
18
21
  });
19
22
  return encrypted.toString(); //返回的是base64格式的密文
20
23
  }
21
24
 
22
- //解密
25
+ /**
26
+ * 解密
27
+ * @param {String} encrypted 密文
28
+ * @param {String} key 密钥
29
+ * @param {String} iv 偏移量
30
+ * @returns
31
+ */
23
32
  function getDAesString(encrypted, key, iv) {
24
- key = CryptoJS.enc.Utf8.parse(key);
25
- iv = CryptoJS.enc.Utf8.parse(iv);
26
- let decrypted = CryptoJS.AES.decrypt(encrypted, key, {
33
+ key = UTF8.parse(key);
34
+ iv = UTF8.parse(iv);
35
+ let decrypted = CryptoJS.decrypt(encrypted, key, {
27
36
  iv: iv,
28
- mode: CryptoJS.mode.CBC,
29
- padding: CryptoJS.pad.Pkcs7,
37
+ mode: MODE,
38
+ padding: PAD,
30
39
  });
31
- return decrypted.toString(CryptoJS.enc.Utf8);
40
+ return decrypted.toString(UTF8);
32
41
  }
33
42
 
34
43
  /**
35
44
  * CryptoJS加密
45
+ * @param {String} data 数据
46
+ * @param {String} key 密钥
47
+ * @param {String} iv 偏移量
48
+ * @returns 加密的数据
36
49
  */
37
- function encrypt(data) {
50
+ function encrypt(data, key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", iv = 1) {
38
51
  data = JSON.stringify(data);
39
- var key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; //密钥
40
- var iv = "1"; //密钥偏移量
41
52
  var encrypted = getAesString(data, key, iv); //密文
42
53
  return encrypted;
43
54
  }
44
55
 
45
56
  /**
46
57
  * CryptoJS解密
58
+ * @param {String} data 加密的数据
59
+ * @param {String} key 密钥
60
+ * @param {String} iv 偏移量
61
+ * @returns 解密的数据
47
62
  */
48
- function decrypt(data) {
63
+ function decrypt(data, key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", iv = 1) {
49
64
  try {
50
- var key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; //密钥
51
- var iv = "1"; //密钥偏移量
52
65
  var decryptedStr = getDAesString(data, key, iv);
53
66
  if (!decryptedStr) return null
54
- // return decryptedStr;
55
67
  return JSON.parse(decryptedStr);
56
68
  } catch (error) {
57
69
  console.trace("解密密码错误", error);
@@ -68,20 +80,84 @@ var Crypto = /*#__PURE__*/Object.freeze({
68
80
  // cookie存储标识
69
81
  const USER_INFO = "cc_user_info";
70
82
 
83
+ /**
84
+ * 存储用户信息
85
+ * @param {String} userInfo 用户信息
86
+ * @param {String} domain 域名
87
+ */
88
+ function setUserInfo(userInfo, domain) {
89
+ Cookies.set(Crypto.encrypt(USER_INFO), userInfo, { domain: domain || ("." + document.domain.split('.').slice(-2).join('.')), expires: 1 });
90
+ }
71
91
 
92
+ /**
93
+ * 获取用户信息
94
+ * @returns {String} 用户信息
95
+ */
72
96
  function getUserInfo() {
73
- // 获取加密的key
74
- let getKey = Crypto.encrypt(USER_INFO);
75
97
  // 加密的用户信息
76
- let encryptUserInfo = Cookies.get(getKey) || "";
77
- // 解密数据
78
- let userInfo = Crypto.decrypt(encryptUserInfo);
79
- return userInfo
98
+ let encryptUserInfo = Cookies.get(Crypto.encrypt(USER_INFO));
99
+ if (encryptUserInfo) {
100
+ return Crypto.decrypt(encryptUserInfo)
101
+ } else {
102
+ return ""
103
+ }
80
104
  }
81
105
 
82
106
  var CCUser = /*#__PURE__*/Object.freeze({
83
107
  __proto__: null,
108
+ setUserInfo: setUserInfo,
84
109
  getUserInfo: getUserInfo
85
110
  });
86
111
 
87
- export { CCUser };
112
+ // cookie存储标识
113
+ const TOKEN = "cc_token";
114
+ /**
115
+ * 获取URL中参数的数据
116
+ * @param {name} 参数名
117
+ */
118
+ function getUrlQuery(name) {
119
+ var reg = new RegExp(name + "=([^&]*)(&|$)");
120
+ var r = window.location.href.match(reg);
121
+ let res = null;
122
+ if (r != null) res = r[1].trim();
123
+ return res;
124
+ }
125
+ /**
126
+ * 获取token
127
+ * @param {String} urlName 获取token的url名称
128
+ * @returns
129
+ */
130
+ function getToken(urlName = "binding") {
131
+ let token = getUrlQuery(urlName) || Cookies.get(Crypto.encrypt(TOKEN)) || Cookies.get(urlName);
132
+ // 如果存在token,那么存储到cookies中,刷新有效期
133
+ if (token) {
134
+ setToken(token);
135
+ }
136
+ return token
137
+ }
138
+ /**
139
+ * 存储token
140
+ * @param {String} token token
141
+ * @param {String} domain 域名
142
+ */
143
+ function setToken(token, domain) {
144
+ // 开发模式不设置domain
145
+ Cookies.set(Crypto.encrypt(TOKEN), token, { domain: domain || ("." + document.domain.split('.').slice(-2).join('.')), expires: 1 });
146
+ }
147
+
148
+ /**
149
+ * 清除Token数据
150
+ * @param {String} domain 域名
151
+ */
152
+ function clearToken(domain) {
153
+ Cookies.remove(Crypto.encrypt(TOKEN), { domain: domain || ("." + document.domain.split('.').slice(-2).join('.')), expires: 1 });
154
+ }
155
+
156
+ var CCToken = /*#__PURE__*/Object.freeze({
157
+ __proto__: null,
158
+ setToken: setToken,
159
+ getToken: getToken,
160
+ clearToken: clearToken
161
+ });
162
+
163
+ export { Crypto as CCCrypto, CCToken, CCUser };
package/lib/ccdk.min.js CHANGED
@@ -1 +1 @@
1
- import Cookies from"js-cookie";import CryptoJS from"crypto-js";function getAesString(data,key,iv){key=CryptoJS.enc.Utf8.parse(key);iv=CryptoJS.enc.Utf8.parse(iv);let encrypted=CryptoJS.AES.encrypt(data,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7});return encrypted.toString()}function getDAesString(encrypted,key,iv){key=CryptoJS.enc.Utf8.parse(key);iv=CryptoJS.enc.Utf8.parse(iv);let decrypted=CryptoJS.AES.decrypt(encrypted,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7});return decrypted.toString(CryptoJS.enc.Utf8)}function encrypt(data){data=JSON.stringify(data);var key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";var iv="1";var encrypted=getAesString(data,key,iv);return encrypted}function decrypt(data){try{var key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";var iv="1";var decryptedStr=getDAesString(data,key,iv);if(!decryptedStr)return null;return JSON.parse(decryptedStr)}catch(error){console.trace("解密密码错误",error);return null}}var Crypto=Object.freeze({__proto__:null,encrypt:encrypt,decrypt:decrypt});const USER_INFO="cc_user_info";function getUserInfo(){let getKey=Crypto.encrypt(USER_INFO);let encryptUserInfo=Cookies.get(getKey)||"";let userInfo=Crypto.decrypt(encryptUserInfo);return userInfo}var CCUser=Object.freeze({__proto__:null,getUserInfo:getUserInfo});export{CCUser};
1
+ import Cookies from"js-cookie";import CryptoJS from"crypto-js/aes";import UTF8 from"crypto-js/enc-utf8";import MODE from"crypto-js/mode-cfb";import PAD from"crypto-js/pad-pkcs7";function getAesString(data,key,iv){key=UTF8.parse(key);iv=UTF8.parse(iv);let encrypted=CryptoJS.encrypt(data,key,{iv:iv,mode:MODE,padding:PAD});return encrypted.toString()}function getDAesString(encrypted,key,iv){key=UTF8.parse(key);iv=UTF8.parse(iv);let decrypted=CryptoJS.decrypt(encrypted,key,{iv:iv,mode:MODE,padding:PAD});return decrypted.toString(UTF8)}function encrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){data=JSON.stringify(data);var encrypted=getAesString(data,key,iv);return encrypted}function decrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){try{var decryptedStr=getDAesString(data,key,iv);if(!decryptedStr)return null;return JSON.parse(decryptedStr)}catch(error){console.trace("解密密码错误",error);return null}}var Crypto=Object.freeze({__proto__:null,encrypt:encrypt,decrypt:decrypt});const USER_INFO="cc_user_info";function setUserInfo(userInfo,domain){Cookies.set(Crypto.encrypt(USER_INFO),userInfo,{domain:domain||"."+document.domain.split(".").slice(-2).join("."),expires:1})}function getUserInfo(){let encryptUserInfo=Cookies.get(Crypto.encrypt(USER_INFO));if(encryptUserInfo){return Crypto.decrypt(encryptUserInfo)}else{return""}}var CCUser=Object.freeze({__proto__:null,setUserInfo:setUserInfo,getUserInfo:getUserInfo});const TOKEN="cc_token";function getUrlQuery(name){var reg=new RegExp(name+"=([^&]*)(&|$)");var r=window.location.href.match(reg);let res=null;if(r!=null)res=r[1].trim();return res}function getToken(urlName="binding"){let token=getUrlQuery(urlName)||Cookies.get(Crypto.encrypt(TOKEN))||Cookies.get(urlName);if(token){setToken(token)}return token}function setToken(token,domain){Cookies.set(Crypto.encrypt(TOKEN),token,{domain:domain||"."+document.domain.split(".").slice(-2).join("."),expires:1})}function clearToken(domain){Cookies.remove(Crypto.encrypt(TOKEN),{domain:domain||"."+document.domain.split(".").slice(-2).join("."),expires:1})}var CCToken=Object.freeze({__proto__:null,setToken:setToken,getToken:getToken,clearToken:clearToken});export{Crypto as CCCrypto,CCToken,CCUser};
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "cloudcc-ccdk",
3
- "version": "0.0.2",
3
+ "version": "0.0.5",
4
4
  "description": "",
5
- "main": "dist/ccdk-min.js",
5
+ "main": "lib/ccdk-min.js",
6
6
  "scripts": {
7
- "docs:markdown": "vuepress-jsdoc --source ./src --lib ./docs",
7
+ "docs:markdown": "vuepress-jsdoc --source ./packages",
8
8
  "docs:dev": "vuepress dev docs",
9
9
  "docs:build": "vuepress build docs",
10
10
  "libs:build": "rollup -c && npx uglifyjs lib/ccdk.js -o lib/ccdk.min.js",