@alicloud/console-os-browser-vm 1.4.21 → 1.4.23
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/es/Context.js +148 -0
- package/es/Document.js +79 -0
- package/es/Elements.js +61 -0
- package/es/History.js +40 -0
- package/es/Location.js +42 -0
- package/es/Window.js +69 -0
- package/es/events.js +28 -0
- package/es/index.js +82 -0
- package/es/utils/HTMLScriptElement.js +43 -0
- package/es/utils/common.js +9 -0
- package/es/utils/credentials.js +3 -0
- package/es/utils/injectScriptCallBack.js +30 -0
- package/es/utils/isSSR.js +3 -0
- package/es/utils/not-implemented.js +3 -0
- package/lib/Context.js +154 -0
- package/lib/Document.js +86 -0
- package/lib/Elements.js +67 -0
- package/lib/History.js +48 -0
- package/lib/Location.js +50 -0
- package/lib/Window.js +78 -0
- package/lib/events.js +38 -0
- package/lib/index.js +90 -0
- package/lib/utils/HTMLScriptElement.js +53 -0
- package/lib/utils/common.js +16 -0
- package/lib/utils/credentials.js +10 -0
- package/lib/utils/injectScriptCallBack.js +38 -0
- package/lib/utils/isSSR.js +10 -0
- package/lib/utils/not-implemented.js +10 -0
- package/package.json +2 -2
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.removeEventListener = exports.injectHTMLScriptElement = exports.addEventListener = void 0;
|
|
8
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
+
var addEventListener = function addEventListener(el, originEvent) {
|
|
10
|
+
return function (type, listener, options) {
|
|
11
|
+
var listeners = el._listenerMap.get(type) || [];
|
|
12
|
+
el._listenerMap.set(type, [].concat((0, _toConsumableArray2.default)(listeners), [listener]));
|
|
13
|
+
return originEvent.apply(el, [type, listener, options]);
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
exports.addEventListener = addEventListener;
|
|
17
|
+
var removeEventListener = function removeEventListener(el, originEvent) {
|
|
18
|
+
return function (type, listener, options) {
|
|
19
|
+
var storedTypeListeners = el._listenerMap.get(type);
|
|
20
|
+
if (storedTypeListeners && storedTypeListeners.length && storedTypeListeners.indexOf(listener) !== -1) {
|
|
21
|
+
storedTypeListeners.splice(storedTypeListeners.indexOf(listener), 1);
|
|
22
|
+
}
|
|
23
|
+
return originEvent.apply(el, [type, listener, options]);
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
exports.removeEventListener = removeEventListener;
|
|
27
|
+
var elProperties = ['innerHTML', 'text', 'innerText'];
|
|
28
|
+
var injectHTMLScriptElement = function injectHTMLScriptElement(el) {
|
|
29
|
+
el._listenerMap = new Map();
|
|
30
|
+
el.addEventListener = addEventListener(el, el.addEventListener);
|
|
31
|
+
el.removeEventListener = removeEventListener(el, el.removeEventListener);
|
|
32
|
+
|
|
33
|
+
// do not redefine property in sandbox
|
|
34
|
+
if (!el._evalScriptInSandbox) {
|
|
35
|
+
elProperties.forEach(function (property) {
|
|
36
|
+
Object.defineProperty(el, property, {
|
|
37
|
+
get: function get() {
|
|
38
|
+
return this.scriptText || '';
|
|
39
|
+
},
|
|
40
|
+
set: function set(value) {
|
|
41
|
+
this.scriptText = value;
|
|
42
|
+
// 如果是已经插入到 dom 树里面,则直接执行
|
|
43
|
+
if (el.parentNode) {
|
|
44
|
+
this.ownerContext.evalScript && el.ownerContext.evalScript(value.toString());
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
enumerable: false
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
el._evalScriptInSandbox = true;
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
exports.injectHTMLScriptElement = injectHTMLScriptElement;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isBoundedFunction = isBoundedFunction;
|
|
7
|
+
exports.isConstructable = isConstructable;
|
|
8
|
+
function isConstructable(fn) {
|
|
9
|
+
var classRegex = /^class\b/;
|
|
10
|
+
var constructable = fn.prototype && fn.prototype.constructor === fn && Object.getOwnPropertyNames(fn.prototype).length > 1 || classRegex.test(fn.toString());
|
|
11
|
+
return constructable;
|
|
12
|
+
}
|
|
13
|
+
function isBoundedFunction(fn) {
|
|
14
|
+
var bounded = fn.name.indexOf('bound ') === 0 && !fn.hasOwnProperty('prototype');
|
|
15
|
+
return bounded;
|
|
16
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getFetchCredentials = void 0;
|
|
7
|
+
var getFetchCredentials = function getFetchCredentials(url) {
|
|
8
|
+
return url.includes('console.aliyun.com') ? 'include' : 'omit';
|
|
9
|
+
};
|
|
10
|
+
exports.getFetchCredentials = getFetchCredentials;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getJsonCallback = exports.default = void 0;
|
|
7
|
+
var getJsonCallback = function getJsonCallback(src) {
|
|
8
|
+
var u;
|
|
9
|
+
try {
|
|
10
|
+
u = new URL(src);
|
|
11
|
+
} catch (error) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
var sp = u.searchParams;
|
|
15
|
+
if (!sp) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
return sp.get('callback') || sp.get('cb');
|
|
19
|
+
};
|
|
20
|
+
exports.getJsonCallback = getJsonCallback;
|
|
21
|
+
var injectScriptCallBack = function injectScriptCallBack(scriptEl) {
|
|
22
|
+
setTimeout(function () {
|
|
23
|
+
if (!scriptEl.src) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
var appWindow = scriptEl.ownerContext.window;
|
|
27
|
+
var callbackName = getJsonCallback(scriptEl.src);
|
|
28
|
+
if (callbackName && typeof appWindow[callbackName] === 'function') {
|
|
29
|
+
window[callbackName] = function () {
|
|
30
|
+
var result = appWindow[callbackName].apply(appWindow, arguments);
|
|
31
|
+
window[callbackName] = null;
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
}, 0);
|
|
36
|
+
};
|
|
37
|
+
var _default = injectScriptCallBack;
|
|
38
|
+
exports.default = _default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _default = function _default(nameForErrorMessage) {
|
|
8
|
+
console.error("Not implemented: ".concat(nameForErrorMessage));
|
|
9
|
+
};
|
|
10
|
+
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alicloud/console-os-browser-vm",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.23",
|
|
4
4
|
"description": "browser virtual machine",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
7
7
|
"typings": "index.d.ts",
|
|
8
8
|
"scripts": {
|
|
9
|
-
"
|
|
9
|
+
"prepublishOnly": "npm run clean && npm run build && npm run babel && npm run babel:esm",
|
|
10
10
|
"babel": "breezr build --engine babel",
|
|
11
11
|
"babel:esm": "breezr build --engine babel --es-module",
|
|
12
12
|
"build": "breezr build --engine webpack",
|