xctc-utils 1.6.29 → 1.6.31
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/dist/iframe/index.d.ts +5 -0
- package/dist/iframe/index.js +79 -0
- package/dist/index.js +2 -1
- package/dist/params/index.d.ts +1 -0
- package/dist/params/index.js +23 -1
- package/dist/utils.js +8 -1
- package/dist/weixin/index.js +2 -1
- package/package.json +1 -1
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const $iframe: (id: string) => any;
|
|
2
|
+
export declare const initParentDataToIframe: (id: string, keys?: string) => void;
|
|
3
|
+
export declare const updateIframeReceiveData: (cb: any) => void;
|
|
4
|
+
export declare const updateWeiXinShareReady: () => void;
|
|
5
|
+
export declare const sendParentMessage: (data: any, url: string) => void;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sendParentMessage = exports.updateWeiXinShareReady = exports.updateIframeReceiveData = exports.initParentDataToIframe = exports.$iframe = void 0;
|
|
4
|
+
var is_1 = require("../is");
|
|
5
|
+
var weixin_1 = require("../weixin");
|
|
6
|
+
var utils_1 = require("../utils");
|
|
7
|
+
var storage_1 = require("../storage");
|
|
8
|
+
/**
|
|
9
|
+
*
|
|
10
|
+
* @param id
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
var win = window;
|
|
14
|
+
var $iframe = function (id) {
|
|
15
|
+
if (!id) {
|
|
16
|
+
console.error("请传入 iframe id属性值!");
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
var iframe = (0, utils_1.$id)(id) || {};
|
|
20
|
+
if ((iframe === null || iframe === void 0 ? void 0 : iframe.tagName) === 'IFRAME') {
|
|
21
|
+
return iframe;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
console.error("\u672A\u67E5\u8BE2\u5230id=".concat(id, "\u7684iframe\u6807\u7B7E"));
|
|
25
|
+
}
|
|
26
|
+
return;
|
|
27
|
+
};
|
|
28
|
+
exports.$iframe = $iframe;
|
|
29
|
+
var initParentDataToIframe = function (id, keys) {
|
|
30
|
+
var _a;
|
|
31
|
+
if (!id) {
|
|
32
|
+
console.error("请传入 iframe id属性值!");
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (!keys) {
|
|
36
|
+
keys = "urlParamsData";
|
|
37
|
+
}
|
|
38
|
+
var iframe = (0, exports.$iframe)(id);
|
|
39
|
+
var stateData = (0, storage_1.getSessionStorage)(keys) || {};
|
|
40
|
+
var data = {};
|
|
41
|
+
if ((_a = stateData === null || stateData === void 0 ? void 0 : stateData.state) === null || _a === void 0 ? void 0 : _a.data) {
|
|
42
|
+
data = stateData.state.data || {};
|
|
43
|
+
}
|
|
44
|
+
data = JSON.stringify(data);
|
|
45
|
+
iframe.addEventListener('load', function () {
|
|
46
|
+
// iFrame加载完成后的操作
|
|
47
|
+
iframe.contentWindow.postMessage(data, iframe.src);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
exports.initParentDataToIframe = initParentDataToIframe;
|
|
51
|
+
var updateIframeReceiveData = function (cb) {
|
|
52
|
+
win.addEventListener('message', function (event) {
|
|
53
|
+
var data = (event === null || event === void 0 ? void 0 : event.data) || {};
|
|
54
|
+
var messageData = (0, utils_1.isJson)(data) || "";
|
|
55
|
+
if (typeof cb === "function" && (messageData === null || messageData === void 0 ? void 0 : messageData.type) == "data") {
|
|
56
|
+
cb((0, utils_1.isJson)(messageData === null || messageData === void 0 ? void 0 : messageData.data));
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
exports.updateIframeReceiveData = updateIframeReceiveData;
|
|
61
|
+
var updateWeiXinShareReady = function () {
|
|
62
|
+
win.addEventListener('message', function (event) {
|
|
63
|
+
var data = event.data;
|
|
64
|
+
var messageData = (0, utils_1.isJson)(data) || "";
|
|
65
|
+
if ((messageData === null || messageData === void 0 ? void 0 : messageData.type) == "share" && (messageData === null || messageData === void 0 ? void 0 : messageData.data)) {
|
|
66
|
+
(0, weixin_1.shareReady)(messageData.data);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
};
|
|
70
|
+
exports.updateWeiXinShareReady = updateWeiXinShareReady;
|
|
71
|
+
var sendParentMessage = function (data, url) {
|
|
72
|
+
if (!url) {
|
|
73
|
+
url = "*";
|
|
74
|
+
}
|
|
75
|
+
if ((0, is_1.isObject)(data)) {
|
|
76
|
+
win.parent.postMessage(JSON.stringify(data), url);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
exports.sendParentMessage = sendParentMessage;
|
package/dist/index.js
CHANGED
|
@@ -43,5 +43,6 @@ var format = __importStar(require("./format"));
|
|
|
43
43
|
var isType = __importStar(require("./is"));
|
|
44
44
|
var modal = __importStar(require("./modal"));
|
|
45
45
|
var params = __importStar(require("./params"));
|
|
46
|
-
var
|
|
46
|
+
var iframe = __importStar(require("./iframe"));
|
|
47
|
+
var obj = __assign(__assign(__assign({}, storage), utils), { weixin: __assign({}, weixin), crypto: __assign({}, crypto), date: __assign({}, time), format: __assign({}, format), type: __assign({}, isType), modal: __assign({}, modal), params: __assign({}, params), iframe: __assign({}, iframe) });
|
|
47
48
|
exports.default = obj;
|
package/dist/params/index.d.ts
CHANGED
package/dist/params/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatDataToUrl = exports.urlStateParams = exports.get = exports.set = void 0;
|
|
3
|
+
exports.formatDataToPath = exports.formatDataToUrl = exports.urlStateParams = exports.get = exports.set = void 0;
|
|
4
4
|
var crypto_1 = require("../crypto");
|
|
5
5
|
var storage_1 = require("../storage");
|
|
6
6
|
var defaultKey = "5uMz4R8r0926DkC8";
|
|
@@ -162,3 +162,25 @@ var formatDataToUrl = function (data) {
|
|
|
162
162
|
return url;
|
|
163
163
|
};
|
|
164
164
|
exports.formatDataToUrl = formatDataToUrl;
|
|
165
|
+
var formatDataToPath = function (data) {
|
|
166
|
+
var path = "";
|
|
167
|
+
var str = "";
|
|
168
|
+
var hashVal = loc.hash;
|
|
169
|
+
if ((0, is_1.isObject)(data)) {
|
|
170
|
+
for (var key in data) {
|
|
171
|
+
if (key != "path") {
|
|
172
|
+
str += "".concat(key, "=").concat(data[key], "&");
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
if (data === null || data === void 0 ? void 0 : data.path) {
|
|
176
|
+
if (str) {
|
|
177
|
+
path = "".concat(data === null || data === void 0 ? void 0 : data.path, "?").concat(str);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
path = str;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return path;
|
|
185
|
+
};
|
|
186
|
+
exports.formatDataToPath = formatDataToPath;
|
package/dist/utils.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.handleCopyValue = exports.weixinBrowser = exports.deviceEnvironment = exports.getIframeContentHeight = exports.checkIframeContentHeight = exports.$id = exports.isJson = exports.isMobile = void 0;
|
|
4
|
+
var is_1 = require("./is");
|
|
4
5
|
var win = window;
|
|
5
6
|
// 是否是手机端环境
|
|
6
7
|
function isMobile() {
|
|
@@ -15,8 +16,14 @@ exports.isMobile = isMobile;
|
|
|
15
16
|
* @returns
|
|
16
17
|
*/
|
|
17
18
|
function isJson(str) {
|
|
18
|
-
if (!str)
|
|
19
|
+
if (!str) {
|
|
20
|
+
console.error("isJson函数接收参数为json对象字符串!");
|
|
19
21
|
return false;
|
|
22
|
+
}
|
|
23
|
+
if ((0, is_1.isObject)(str)) {
|
|
24
|
+
// 如果传入的参数为对象,则直接返回
|
|
25
|
+
return str;
|
|
26
|
+
}
|
|
20
27
|
try {
|
|
21
28
|
var obj = JSON.parse(str);
|
|
22
29
|
if (obj && typeof obj == "object") {
|
package/dist/weixin/index.js
CHANGED
|
@@ -321,7 +321,8 @@ var isContinue = function () {
|
|
|
321
321
|
if (search) {
|
|
322
322
|
codeIndex = search.indexOf("code=");
|
|
323
323
|
}
|
|
324
|
-
|
|
324
|
+
// 必须是已经存储微信授权 code ,并且链接中已无 code 字段,已完成刷新状态
|
|
325
|
+
if (localCodeData && localCodeData.hasOwnProperty("code") && codeIndex == -1) {
|
|
325
326
|
return true;
|
|
326
327
|
}
|
|
327
328
|
else {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xctc-utils",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.31",
|
|
4
4
|
"description": "localStorage存储\r ```\r sessionStorage存储\r ```\r crypto-js加密、解密\r ```\r 微信授权登录、微信分享\r ```\r 设备环境获取\r ```\r 是否是微信浏览器\r ```\r 时间戳转时间,字符串转时间戳",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|