1651 lines
70 KiB
JavaScript
1651 lines
70 KiB
JavaScript
// @ts-nocheck
|
||
import { formatIdentifier } from './unity-sdk/utils';
|
||
/* eslint-disable */
|
||
const isWK = false;
|
||
// try{
|
||
// isWK = wx.getSystemInfoSync().renderer == 'h5';
|
||
// }catch(e){
|
||
// isWK = typeof(window)!='undefined' && window.XMLHttpRequest;
|
||
// }
|
||
/** ****/ (function (modules) {
|
||
/** ****/ // The module cache
|
||
/** ****/ const installedModules = {};
|
||
/** ****/ // The require function
|
||
/** ****/ function __webpack_require__(moduleId) {
|
||
/** ****/ // Check if module is in cache
|
||
/** ****/ if (installedModules[moduleId])
|
||
/** ****/ return installedModules[moduleId].exports;
|
||
/** ****/ // Create a new module (and put it into the cache)
|
||
/** ****/ const module = installedModules[moduleId] = {
|
||
/** ****/ exports: {},
|
||
/** ****/ id: moduleId,
|
||
/** ****/ loaded: false,
|
||
/** ****/
|
||
};
|
||
/** ****/ // Execute the module function
|
||
/** ****/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
||
/** ****/ // Flag the module as loaded
|
||
/** ****/ module.loaded = true;
|
||
/** ****/ // Return the exports of the module
|
||
/** ****/ return module.exports;
|
||
/** ****/
|
||
}
|
||
/** ****/ // expose the modules object (__webpack_modules__)
|
||
/** ****/ __webpack_require__.m = modules;
|
||
/** ****/ // expose the module cache
|
||
/** ****/ __webpack_require__.c = installedModules;
|
||
/** ****/ // __webpack_public_path__
|
||
/** ****/ __webpack_require__.p = '';
|
||
/** ****/ // Load entry module and return exports
|
||
/** ****/ return __webpack_require__(0);
|
||
/** ****/
|
||
}([
|
||
/* 0 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
const _window2 = __webpack_require__(1);
|
||
const _window = _interopRequireWildcard(_window2);
|
||
const _HTMLElement = __webpack_require__(5);
|
||
const _HTMLElement2 = _interopRequireDefault(_HTMLElement);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _interopRequireWildcard(obj) {
|
||
if (obj && obj.__esModule) {
|
||
return obj;
|
||
}
|
||
const newObj = {};
|
||
if (obj != null) {
|
||
for (const key in obj) {
|
||
if (Object.prototype.hasOwnProperty.call(obj, key))
|
||
newObj[key] = obj[key];
|
||
}
|
||
}
|
||
newObj.default = obj;
|
||
return newObj;
|
||
}
|
||
const global = GameGlobal;
|
||
function inject() {
|
||
_window.addEventListener = function (type, listener) {
|
||
_window.document.addEventListener(type, listener);
|
||
};
|
||
_window.removeEventListener = function (type, listener) {
|
||
_window.document.removeEventListener(type, listener);
|
||
};
|
||
if (_window.canvas) {
|
||
_window.canvas.addEventListener = _window.addEventListener;
|
||
_window.canvas.removeEventListener = _window.removeEventListener;
|
||
}
|
||
const { platform } = wx.getDeviceInfo();
|
||
// 开发者工具无法重定义 window
|
||
if (platform === 'devtools') {
|
||
for (const key in _window) {
|
||
const descriptor = Object.getOwnPropertyDescriptor(global, key);
|
||
if (!descriptor || descriptor.configurable === true) {
|
||
Object.defineProperty(window, key, {
|
||
value: _window[key],
|
||
});
|
||
}
|
||
}
|
||
for (const _key in _window.document) {
|
||
const _descriptor = Object.getOwnPropertyDescriptor(global.document, _key);
|
||
if (!_descriptor || _descriptor.configurable === true) {
|
||
Object.defineProperty(global.document, _key, {
|
||
value: _window.document[_key],
|
||
});
|
||
}
|
||
}
|
||
window.parent = window;
|
||
}
|
||
else {
|
||
for (const _key2 in _window) {
|
||
global[_key2] = _window[_key2];
|
||
}
|
||
global.window = _window;
|
||
window = global;
|
||
window.top = window.parent = window;
|
||
}
|
||
}
|
||
if (!GameGlobal.__isAdapterInjected) {
|
||
GameGlobal.__isAdapterInjected = true;
|
||
inject();
|
||
}
|
||
/***/
|
||
}),
|
||
/* 1 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
exports.cancelAnimationFrame = exports.requestAnimationFrame = exports.clearInterval = exports.clearTimeout = exports.setInterval = exports.setTimeout = exports.canvas = exports.location = exports.localStorage = exports.HTMLElement = exports.FileReader = exports.Audio = exports.Image = exports.WebSocket = /* exports.XMLHttpRequest =*/ exports.navigator = exports.document = undefined;
|
||
if (!isWK) {
|
||
exports.XMLHttpRequest = undefined;
|
||
}
|
||
const _WindowProperties = __webpack_require__(2);
|
||
Object.keys(_WindowProperties).forEach((key) => {
|
||
if (key === 'default' || key === '__esModule')
|
||
return;
|
||
Object.defineProperty(exports, key, {
|
||
enumerable: true,
|
||
get: function get() {
|
||
return _WindowProperties[key];
|
||
},
|
||
});
|
||
});
|
||
const _constructor = __webpack_require__(4);
|
||
Object.keys(_constructor).forEach((key) => {
|
||
if (key === 'default' || key === '__esModule')
|
||
return;
|
||
Object.defineProperty(exports, key, {
|
||
enumerable: true,
|
||
get: function get() {
|
||
return _constructor[key];
|
||
},
|
||
});
|
||
});
|
||
const _Canvas = __webpack_require__(10);
|
||
const _Canvas2 = _interopRequireDefault(_Canvas);
|
||
const _document2 = __webpack_require__(11);
|
||
const _document3 = _interopRequireDefault(_document2);
|
||
const _navigator2 = __webpack_require__(18);
|
||
const _navigator3 = _interopRequireDefault(_navigator2);
|
||
const _XMLHttpRequest2 = __webpack_require__(19);
|
||
const _XMLHttpRequest3 = _interopRequireDefault(_XMLHttpRequest2);
|
||
const _WebSocket2 = __webpack_require__(20);
|
||
const _WebSocket3 = _interopRequireDefault(_WebSocket2);
|
||
const _Image2 = __webpack_require__(12);
|
||
const _Image3 = _interopRequireDefault(_Image2);
|
||
const _Audio2 = __webpack_require__(13);
|
||
const _Audio3 = _interopRequireDefault(_Audio2);
|
||
const _FileReader2 = __webpack_require__(21);
|
||
const _FileReader3 = _interopRequireDefault(_FileReader2);
|
||
const _HTMLElement2 = __webpack_require__(5);
|
||
const _HTMLElement3 = _interopRequireDefault(_HTMLElement2);
|
||
const _localStorage2 = __webpack_require__(22);
|
||
const _localStorage3 = _interopRequireDefault(_localStorage2);
|
||
const _location2 = __webpack_require__(23);
|
||
const _location3 = _interopRequireDefault(_location2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
exports.document = _document3.default;
|
||
exports.navigator = _navigator3.default;
|
||
if (!isWK) {
|
||
exports.XMLHttpRequest = _XMLHttpRequest3.default;
|
||
}
|
||
// exports.XMLHttpRequest = _XMLHttpRequest3.default;
|
||
exports.WebSocket = _WebSocket3.default;
|
||
exports.Image = _Image3.default;
|
||
exports.Audio = _Audio3.default;
|
||
exports.FileReader = _FileReader3.default;
|
||
exports.HTMLElement = _HTMLElement3.default;
|
||
exports.localStorage = _localStorage3.default;
|
||
exports.location = _location3.default;
|
||
// 模拟web中的CustomEvent接口
|
||
function CustomEvent(event, params) {
|
||
params = params || {
|
||
bubbles: false,
|
||
cancelable: false,
|
||
detail: undefined,
|
||
};
|
||
const evt = {
|
||
type: event,
|
||
bubbles: params.bubbles,
|
||
cancelable: params.cancelable,
|
||
detail: params.detail,
|
||
};
|
||
return evt;
|
||
}
|
||
;
|
||
exports.CustomEvent = CustomEvent;
|
||
// 暴露全局的 canvas
|
||
const canvas = new _Canvas2.default();
|
||
exports.canvas = canvas;
|
||
exports.setTimeout = setTimeout;
|
||
exports.setInterval = setInterval;
|
||
exports.clearTimeout = clearTimeout;
|
||
exports.clearInterval = clearInterval;
|
||
exports.requestAnimationFrame = requestAnimationFrame;
|
||
exports.cancelAnimationFrame = cancelAnimationFrame;
|
||
/***/
|
||
}),
|
||
/* 2 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
exports.performance = exports.ontouchend = exports.ontouchmove = exports.ontouchstart = exports.screen = exports.devicePixelRatio = exports.innerHeight = exports.innerWidth = undefined;
|
||
const _performance2 = __webpack_require__(3);
|
||
const _performance3 = _interopRequireDefault(_performance2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
const { screenWidth, screenHeight, pixelRatio } = wx.getWindowInfo();
|
||
const innerWidth = exports.innerWidth = screenWidth;
|
||
const innerHeight = exports.innerHeight = screenHeight;
|
||
exports.devicePixelRatio = pixelRatio;
|
||
const screen = exports.screen = {
|
||
availWidth: innerWidth,
|
||
availHeight: innerHeight,
|
||
};
|
||
const ontouchstart = exports.ontouchstart = null;
|
||
const ontouchmove = exports.ontouchmove = null;
|
||
const ontouchend = exports.ontouchend = null;
|
||
exports.performance = _performance3.default;
|
||
/***/
|
||
}),
|
||
/* 3 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
let performance = void 0;
|
||
let ori_performance = wx.getPerformance();
|
||
const initTime = Date.now();
|
||
const ori_initTime = ori_performance.now();
|
||
const clientPerfAdapter = Object.assign({}, {
|
||
now: function now() {
|
||
if (GameGlobal.unityNamespace.isDevelopmentBuild
|
||
&& GameGlobal.unityNamespace.isProfilingBuild
|
||
&& !GameGlobal.unityNamespace.isDevtools
|
||
&& !GameGlobal.isIOSHighPerformanceMode) {
|
||
// 由于wx.getPerformance()获取到的是微秒级,因此这里需要/1000.0,进行单位的统一
|
||
return (ori_performance.now() - ori_initTime) * 0.001;
|
||
}
|
||
return (Date.now() - initTime);
|
||
},
|
||
});
|
||
performance = clientPerfAdapter;
|
||
exports.default = performance;
|
||
/***/
|
||
}),
|
||
/* 4 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
exports.HTMLCanvasElement = exports.HTMLImageElement = undefined;
|
||
const _HTMLElement3 = __webpack_require__(5);
|
||
const _HTMLElement4 = _interopRequireDefault(_HTMLElement3);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const HTMLImageElement = exports.HTMLImageElement = (function (_HTMLElement) {
|
||
_inherits(HTMLImageElement, _HTMLElement);
|
||
function HTMLImageElement() {
|
||
_classCallCheck(this, HTMLImageElement);
|
||
return _possibleConstructorReturn(this, (HTMLImageElement.__proto__ || Object.getPrototypeOf(HTMLImageElement)).call(this, 'img'));
|
||
}
|
||
return HTMLImageElement;
|
||
}(_HTMLElement4.default));
|
||
const HTMLCanvasElement = exports.HTMLCanvasElement = (function (_HTMLElement2) {
|
||
_inherits(HTMLCanvasElement, _HTMLElement2);
|
||
function HTMLCanvasElement() {
|
||
_classCallCheck(this, HTMLCanvasElement);
|
||
return _possibleConstructorReturn(this, (HTMLCanvasElement.__proto__ || Object.getPrototypeOf(HTMLCanvasElement)).call(this, 'canvas'));
|
||
}
|
||
return HTMLCanvasElement;
|
||
}(_HTMLElement4.default));
|
||
/***/
|
||
}),
|
||
/* 5 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
const _Element2 = __webpack_require__(6);
|
||
const _Element3 = _interopRequireDefault(_Element2);
|
||
const _util = __webpack_require__(9);
|
||
const _WindowProperties = __webpack_require__(2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const HTMLElement = (function (_Element) {
|
||
_inherits(HTMLElement, _Element);
|
||
function HTMLElement() {
|
||
const tagName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
||
_classCallCheck(this, HTMLElement);
|
||
const _this = _possibleConstructorReturn(this, (HTMLElement.__proto__ || Object.getPrototypeOf(HTMLElement)).call(this));
|
||
_this.className = '';
|
||
_this.childern = [];
|
||
_this.style = {
|
||
width: `${_WindowProperties.innerWidth}px`,
|
||
height: `${_WindowProperties.innerHeight}px`,
|
||
};
|
||
_this.insertBefore = _util.noop;
|
||
_this.innerHTML = '';
|
||
_this.tagName = tagName.toUpperCase();
|
||
return _this;
|
||
}
|
||
_createClass(HTMLElement, [{
|
||
key: 'setAttribute',
|
||
value: function setAttribute(name, value) {
|
||
this[name] = value;
|
||
},
|
||
}, {
|
||
key: 'getAttribute',
|
||
value: function getAttribute(name) {
|
||
return this[name];
|
||
},
|
||
}, {
|
||
key: 'getBoundingClientRect',
|
||
value: function getBoundingClientRect() {
|
||
return {
|
||
top: 0,
|
||
left: 0,
|
||
width: _WindowProperties.innerWidth,
|
||
height: _WindowProperties.innerHeight,
|
||
};
|
||
},
|
||
}, {
|
||
key: 'focus',
|
||
value: function focus() { },
|
||
}, {
|
||
key: 'clientWidth',
|
||
get: function get() {
|
||
const ret = parseInt(this.style.fontSize, 10) * this.innerHTML.length;
|
||
return Number.isNaN(ret) ? 0 : ret;
|
||
},
|
||
}, {
|
||
key: 'clientHeight',
|
||
get: function get() {
|
||
const ret = parseInt(this.style.fontSize, 10);
|
||
return Number.isNaN(ret) ? 0 : ret;
|
||
},
|
||
}]);
|
||
return HTMLElement;
|
||
}(_Element3.default));
|
||
exports.default = HTMLElement;
|
||
/***/
|
||
}),
|
||
/* 6 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _Node2 = __webpack_require__(7);
|
||
const _Node3 = _interopRequireDefault(_Node2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const ELement = (function (_Node) {
|
||
_inherits(ELement, _Node);
|
||
function ELement() {
|
||
_classCallCheck(this, ELement);
|
||
const _this = _possibleConstructorReturn(this, (ELement.__proto__ || Object.getPrototypeOf(ELement)).call(this));
|
||
_this.className = '';
|
||
_this.children = [];
|
||
return _this;
|
||
}
|
||
return ELement;
|
||
}(_Node3.default));
|
||
exports.default = ELement;
|
||
/***/
|
||
}),
|
||
/* 7 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
const _EventTarget2 = __webpack_require__(8);
|
||
const _EventTarget3 = _interopRequireDefault(_EventTarget2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const Node = (function (_EventTarget) {
|
||
_inherits(Node, _EventTarget);
|
||
function Node() {
|
||
_classCallCheck(this, Node);
|
||
const _this = _possibleConstructorReturn(this, (Node.__proto__ || Object.getPrototypeOf(Node)).call(this));
|
||
_this.childNodes = [];
|
||
return _this;
|
||
}
|
||
_createClass(Node, [{
|
||
key: 'appendChild',
|
||
value: function appendChild(node) {
|
||
if (node instanceof Node) {
|
||
this.childNodes.push(node);
|
||
}
|
||
else {
|
||
throw new TypeError('Failed to executed \'appendChild\' on \'Node\': parameter 1 is not of type \'Node\'.');
|
||
}
|
||
},
|
||
}, {
|
||
key: 'cloneNode',
|
||
value: function cloneNode() {
|
||
const copyNode = Object.create(this);
|
||
Object.assign(copyNode, this);
|
||
return copyNode;
|
||
},
|
||
}, {
|
||
key: 'removeChild',
|
||
value: function removeChild(node) {
|
||
const index = this.childNodes.findIndex(child => child === node);
|
||
if (index > -1) {
|
||
return this.childNodes.splice(index, 1);
|
||
}
|
||
return null;
|
||
},
|
||
}]);
|
||
return Node;
|
||
}(_EventTarget3.default));
|
||
exports.default = Node;
|
||
/***/
|
||
}),
|
||
/* 8 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
const _events = new WeakMap();
|
||
const EventTarget = (function () {
|
||
function EventTarget() {
|
||
_classCallCheck(this, EventTarget);
|
||
_events.set(this, {});
|
||
}
|
||
_createClass(EventTarget, [{
|
||
key: 'addEventListener',
|
||
value: function addEventListener(type, listener) {
|
||
const options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
||
let events = _events.get(this);
|
||
if (!events) {
|
||
events = {};
|
||
_events.set(this, events);
|
||
}
|
||
if (!events[type]) {
|
||
events[type] = [];
|
||
}
|
||
events[type].push(listener);
|
||
if (options.capture) {
|
||
console.warn('EventTarget.addEventListener: options.capture is not implemented.');
|
||
}
|
||
if (options.once) {
|
||
console.warn('EventTarget.addEventListener: options.once is not implemented.');
|
||
}
|
||
if (options.passive) {
|
||
console.warn('EventTarget.addEventListener: options.passive is not implemented.');
|
||
}
|
||
},
|
||
}, {
|
||
key: 'removeEventListener',
|
||
value: function removeEventListener(type, listener) {
|
||
const listeners = _events.get(this)[type];
|
||
if (listeners && listeners.length > 0) {
|
||
for (let i = listeners.length; i--; i > 0) {
|
||
if (listeners[i] === listener) {
|
||
listeners.splice(i, 1);
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
},
|
||
}, {
|
||
key: 'dispatchEvent',
|
||
value: function dispatchEvent() {
|
||
const event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||
const listeners = _events.get(this)[event.type];
|
||
if (listeners) {
|
||
for (let i = 0; i < listeners.length; i++) {
|
||
listeners[i](event);
|
||
}
|
||
}
|
||
},
|
||
}]);
|
||
return EventTarget;
|
||
}());
|
||
exports.default = EventTarget;
|
||
/***/
|
||
}),
|
||
/* 9 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
exports.noop = noop;
|
||
function noop() { }
|
||
/***/
|
||
}),
|
||
/* 10 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
exports.default = Canvas;
|
||
const _constructor = __webpack_require__(4);
|
||
const _HTMLElement = __webpack_require__(5);
|
||
const _HTMLElement2 = _interopRequireDefault(_HTMLElement);
|
||
const _document = __webpack_require__(11);
|
||
const _document2 = _interopRequireDefault(_document);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
const hasModifiedCanvasPrototype = false;
|
||
const hasInit2DContextConstructor = false;
|
||
const hasInitWebGLContextConstructor = false;
|
||
function Canvas() {
|
||
const canvas = wx.createCanvas();
|
||
canvas.type = 'canvas';
|
||
canvas.__proto__.__proto__ = new _HTMLElement2.default('canvas');
|
||
const _getContext = canvas.getContext;
|
||
canvas.getBoundingClientRect = function () {
|
||
const ret = {
|
||
top: 0,
|
||
left: 0,
|
||
width: window.innerWidth,
|
||
height: window.innerHeight,
|
||
};
|
||
return ret;
|
||
};
|
||
return canvas;
|
||
}
|
||
/***/
|
||
}),
|
||
/* 11 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _window = __webpack_require__(1);
|
||
const window = _interopRequireWildcard(_window);
|
||
const _HTMLElement = __webpack_require__(5);
|
||
const _HTMLElement2 = _interopRequireDefault(_HTMLElement);
|
||
const _Image = __webpack_require__(12);
|
||
const _Image2 = _interopRequireDefault(_Image);
|
||
const _Audio = __webpack_require__(13);
|
||
const _Audio2 = _interopRequireDefault(_Audio);
|
||
const _Canvas = __webpack_require__(10);
|
||
const _Canvas2 = _interopRequireDefault(_Canvas);
|
||
__webpack_require__(16);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _interopRequireWildcard(obj) {
|
||
if (obj && obj.__esModule) {
|
||
return obj;
|
||
}
|
||
const newObj = {};
|
||
if (obj != null) {
|
||
for (const key in obj) {
|
||
if (Object.prototype.hasOwnProperty.call(obj, key))
|
||
newObj[key] = obj[key];
|
||
}
|
||
}
|
||
newObj.default = obj;
|
||
return newObj;
|
||
}
|
||
const events = {};
|
||
var document = {
|
||
readyState: 'complete',
|
||
visibilityState: 'visible',
|
||
documentElement: window,
|
||
hidden: false,
|
||
style: {},
|
||
location: window.location,
|
||
ontouchstart: null,
|
||
ontouchmove: null,
|
||
ontouchend: null,
|
||
head: new _HTMLElement2.default('head'),
|
||
body: new _HTMLElement2.default('body'),
|
||
createElement: function createElement(tagName) {
|
||
if (tagName === 'canvas') {
|
||
return new _Canvas2.default();
|
||
}
|
||
if (tagName === 'audio') {
|
||
return new _Audio2.default();
|
||
}
|
||
if (tagName === 'img') {
|
||
return new _Image2.default();
|
||
}
|
||
return new _HTMLElement2.default(tagName);
|
||
},
|
||
getElementById: function getElementById(id) {
|
||
if (id === window.canvas.id) {
|
||
return window.canvas;
|
||
}
|
||
return null;
|
||
},
|
||
getElementsByTagName: function getElementsByTagName(tagName) {
|
||
if (tagName === 'head') {
|
||
return [document.head];
|
||
}
|
||
if (tagName === 'body') {
|
||
return [document.body];
|
||
}
|
||
if (tagName === 'canvas') {
|
||
return [window.canvas];
|
||
}
|
||
return [];
|
||
},
|
||
getElementsByName: function getElementsByName(tagName) {
|
||
if (tagName === 'head') {
|
||
return [document.head];
|
||
}
|
||
if (tagName === 'body') {
|
||
return [document.body];
|
||
}
|
||
if (tagName === 'canvas') {
|
||
return [window.canvas];
|
||
}
|
||
return [];
|
||
},
|
||
querySelector: function querySelector(query) {
|
||
if (query === 'head') {
|
||
return document.head;
|
||
}
|
||
if (query === 'body') {
|
||
return document.body;
|
||
}
|
||
if (query === 'canvas') {
|
||
return window.canvas;
|
||
}
|
||
if (query === `#${window.canvas.id}`) {
|
||
return window.canvas;
|
||
}
|
||
return null;
|
||
},
|
||
querySelectorAll: function querySelectorAll(query) {
|
||
if (query === 'head') {
|
||
return [document.head];
|
||
}
|
||
if (query === 'body') {
|
||
return [document.body];
|
||
}
|
||
if (query === 'canvas') {
|
||
return [window.canvas];
|
||
}
|
||
return [];
|
||
},
|
||
addEventListener: function addEventListener(type, listener) {
|
||
if (!events[type]) {
|
||
events[type] = [];
|
||
}
|
||
events[type].push(listener);
|
||
},
|
||
removeEventListener: function removeEventListener(type, listener) {
|
||
const listeners = events[type];
|
||
if (listeners && listeners.length > 0) {
|
||
for (let i = listeners.length; i--; i > 0) {
|
||
if (listeners[i] === listener) {
|
||
listeners.splice(i, 1);
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
},
|
||
dispatchEvent: function dispatchEvent(event) {
|
||
const listeners = events[event.type];
|
||
if (listeners) {
|
||
for (let i = 0; i < listeners.length; i++) {
|
||
listeners[i](event);
|
||
}
|
||
}
|
||
},
|
||
};
|
||
exports.default = document;
|
||
/***/
|
||
}),
|
||
/* 12 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
exports.default = Image;
|
||
function Image() {
|
||
const image = wx.createImage();
|
||
return image;
|
||
}
|
||
/***/
|
||
}),
|
||
/* 13 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
const _HTMLAudioElement2 = __webpack_require__(14);
|
||
const _HTMLAudioElement3 = _interopRequireDefault(_HTMLAudioElement2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const HAVE_NOTHING = 0;
|
||
const HAVE_METADATA = 1;
|
||
const HAVE_CURRENT_DATA = 2;
|
||
const HAVE_FUTURE_DATA = 3;
|
||
const HAVE_ENOUGH_DATA = 4;
|
||
const _innerAudioContext = new WeakMap();
|
||
const _src = new WeakMap();
|
||
const _loop = new WeakMap();
|
||
const _autoplay = new WeakMap();
|
||
const Audio = (function (_HTMLAudioElement) {
|
||
_inherits(Audio, _HTMLAudioElement);
|
||
function Audio(url) {
|
||
_classCallCheck(this, Audio);
|
||
const _this = _possibleConstructorReturn(this, (Audio.__proto__ || Object.getPrototypeOf(Audio)).call(this));
|
||
_this.HAVE_NOTHING = HAVE_NOTHING;
|
||
_this.HAVE_METADATA = HAVE_METADATA;
|
||
_this.HAVE_CURRENT_DATA = HAVE_CURRENT_DATA;
|
||
_this.HAVE_FUTURE_DATA = HAVE_FUTURE_DATA;
|
||
_this.HAVE_ENOUGH_DATA = HAVE_ENOUGH_DATA;
|
||
_this.readyState = HAVE_NOTHING;
|
||
_src.set(_this, '');
|
||
const innerAudioContext = wx.createInnerAudioContext();
|
||
_innerAudioContext.set(_this, innerAudioContext);
|
||
innerAudioContext.onCanplay(() => {
|
||
_this.dispatchEvent({ type: 'load' });
|
||
_this.dispatchEvent({ type: 'loadend' });
|
||
_this.dispatchEvent({ type: 'canplay' });
|
||
_this.dispatchEvent({ type: 'canplaythrough' });
|
||
_this.dispatchEvent({ type: 'loadedmetadata' });
|
||
_this.readyState = HAVE_CURRENT_DATA;
|
||
});
|
||
innerAudioContext.onPlay(() => {
|
||
_this.dispatchEvent({ type: 'play' });
|
||
});
|
||
innerAudioContext.onPause(() => {
|
||
_this.dispatchEvent({ type: 'pause' });
|
||
});
|
||
innerAudioContext.onEnded(() => {
|
||
_this.dispatchEvent({ type: 'ended' });
|
||
_this.readyState = HAVE_ENOUGH_DATA;
|
||
});
|
||
innerAudioContext.onError(() => {
|
||
_this.dispatchEvent({ type: 'error' });
|
||
});
|
||
if (url) {
|
||
_innerAudioContext.get(_this).src = url;
|
||
}
|
||
return _this;
|
||
}
|
||
_createClass(Audio, [{
|
||
key: 'load',
|
||
value: function load() {
|
||
console.warn('HTMLAudioElement.load() is not implemented.');
|
||
},
|
||
}, {
|
||
key: 'play',
|
||
value: function play() {
|
||
_innerAudioContext.get(this).play();
|
||
},
|
||
}, {
|
||
key: 'pause',
|
||
value: function pause() {
|
||
_innerAudioContext.get(this).pause();
|
||
},
|
||
}, {
|
||
key: 'canPlayType',
|
||
value: function canPlayType() {
|
||
const mediaType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
||
if (typeof mediaType !== 'string') {
|
||
return '';
|
||
}
|
||
if (mediaType.indexOf('audio/mpeg') > -1 || mediaType.indexOf('audio/mp4')) {
|
||
return 'probably';
|
||
}
|
||
return '';
|
||
},
|
||
}, {
|
||
key: 'cloneNode',
|
||
value: function cloneNode() {
|
||
const newAudio = new Audio();
|
||
newAudio.loop = _innerAudioContext.get(this).loop;
|
||
newAudio.autoplay = _innerAudioContext.get(this).autoplay;
|
||
newAudio.src = this.src;
|
||
return newAudio;
|
||
},
|
||
}, {
|
||
key: 'currentTime',
|
||
get: function get() {
|
||
return _innerAudioContext.get(this).currentTime;
|
||
},
|
||
set: function set(value) {
|
||
_innerAudioContext.get(this).seek(value);
|
||
},
|
||
}, {
|
||
key: 'src',
|
||
get: function get() {
|
||
return _src.get(this);
|
||
},
|
||
set: function set(value) {
|
||
_src.set(this, value);
|
||
_innerAudioContext.get(this).src = value;
|
||
},
|
||
}, {
|
||
key: 'loop',
|
||
get: function get() {
|
||
return _innerAudioContext.get(this).loop;
|
||
},
|
||
set: function set(value) {
|
||
_innerAudioContext.get(this).loop = value;
|
||
},
|
||
}, {
|
||
key: 'autoplay',
|
||
get: function get() {
|
||
return _innerAudioContext.get(this).autoplay;
|
||
},
|
||
set: function set(value) {
|
||
_innerAudioContext.get(this).autoplay = value;
|
||
},
|
||
}, {
|
||
key: 'paused',
|
||
get: function get() {
|
||
return _innerAudioContext.get(this).paused;
|
||
},
|
||
}]);
|
||
return Audio;
|
||
}(_HTMLAudioElement3.default));
|
||
exports.default = Audio;
|
||
/***/
|
||
}),
|
||
/* 14 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _HTMLMediaElement2 = __webpack_require__(15);
|
||
const _HTMLMediaElement3 = _interopRequireDefault(_HTMLMediaElement2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const HTMLAudioElement = (function (_HTMLMediaElement) {
|
||
_inherits(HTMLAudioElement, _HTMLMediaElement);
|
||
function HTMLAudioElement() {
|
||
_classCallCheck(this, HTMLAudioElement);
|
||
return _possibleConstructorReturn(this, (HTMLAudioElement.__proto__ || Object.getPrototypeOf(HTMLAudioElement)).call(this, 'audio'));
|
||
}
|
||
return HTMLAudioElement;
|
||
}(_HTMLMediaElement3.default));
|
||
exports.default = HTMLAudioElement;
|
||
/***/
|
||
}),
|
||
/* 15 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
const _HTMLElement2 = __webpack_require__(5);
|
||
const _HTMLElement3 = _interopRequireDefault(_HTMLElement2);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
function _possibleConstructorReturn(self, call) {
|
||
if (!self) {
|
||
throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
|
||
}
|
||
return call && (typeof call === 'object' || typeof call === 'function') ? call : self;
|
||
}
|
||
function _inherits(subClass, superClass) {
|
||
if (typeof superClass !== 'function' && superClass !== null) {
|
||
throw new TypeError(`Super expression must either be null or a function, not ${typeof superClass}`);
|
||
}
|
||
subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });
|
||
if (superClass)
|
||
Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
||
}
|
||
const HTMLMediaElement = (function (_HTMLElement) {
|
||
_inherits(HTMLMediaElement, _HTMLElement);
|
||
function HTMLMediaElement(type) {
|
||
_classCallCheck(this, HTMLMediaElement);
|
||
return _possibleConstructorReturn(this, (HTMLMediaElement.__proto__ || Object.getPrototypeOf(HTMLMediaElement)).call(this, type));
|
||
}
|
||
_createClass(HTMLMediaElement, [{
|
||
key: 'addTextTrack',
|
||
value: function addTextTrack() { },
|
||
}, {
|
||
key: 'captureStream',
|
||
value: function captureStream() { },
|
||
}, {
|
||
key: 'fastSeek',
|
||
value: function fastSeek() { },
|
||
}, {
|
||
key: 'load',
|
||
value: function load() { },
|
||
}, {
|
||
key: 'pause',
|
||
value: function pause() { },
|
||
}, {
|
||
key: 'play',
|
||
value: function play() { },
|
||
}]);
|
||
return HTMLMediaElement;
|
||
}(_HTMLElement3.default));
|
||
exports.default = HTMLMediaElement;
|
||
/***/
|
||
}),
|
||
/* 16 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
__webpack_require__(17);
|
||
/***/
|
||
}),
|
||
/* 17 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
const _window = __webpack_require__(1);
|
||
const window = _interopRequireWildcard(_window);
|
||
const _document = __webpack_require__(11);
|
||
const _document2 = _interopRequireDefault(_document);
|
||
const _util = __webpack_require__(9);
|
||
function _interopRequireDefault(obj) {
|
||
return obj && obj.__esModule ? obj : { default: obj };
|
||
}
|
||
function _interopRequireWildcard(obj) {
|
||
if (obj && obj.__esModule) {
|
||
return obj;
|
||
}
|
||
const newObj = {};
|
||
if (obj != null) {
|
||
for (const key in obj) {
|
||
if (Object.prototype.hasOwnProperty.call(obj, key))
|
||
newObj[key] = obj[key];
|
||
}
|
||
}
|
||
newObj.default = obj;
|
||
return newObj;
|
||
}
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
const TouchEvent = function TouchEvent(type) {
|
||
_classCallCheck(this, TouchEvent);
|
||
this.target = window.canvas;
|
||
this.currentTarget = window.canvas;
|
||
this.touches = [];
|
||
this.targetTouches = [];
|
||
this.changedTouches = [];
|
||
this.preventDefault = _util.noop;
|
||
this.stopPropagation = _util.noop;
|
||
this.type = type;
|
||
};
|
||
function formatTouchEvent(v, type, changed) {
|
||
return {
|
||
...v,
|
||
identifier: formatIdentifier(v.identifier, type, changed)
|
||
};
|
||
}
|
||
function touchEventHandlerFactory(type) {
|
||
return function (event) {
|
||
const touchEvent = new TouchEvent(type);
|
||
touchEvent.touches = event.touches.map(v => formatTouchEvent(v, event.type));
|
||
touchEvent.targetTouches = Array.prototype.slice.call(event.touches).map(v => formatTouchEvent(v, event.type));
|
||
touchEvent.changedTouches = event.changedTouches.map(v => formatTouchEvent(v, event.type, 1));
|
||
touchEvent.timeStamp = event.timeStamp;
|
||
_document2.default.dispatchEvent(touchEvent);
|
||
};
|
||
}
|
||
wx.onTouchStart(touchEventHandlerFactory('touchstart'));
|
||
wx.onTouchMove(touchEventHandlerFactory('touchmove'));
|
||
wx.onTouchEnd(touchEventHandlerFactory('touchend'));
|
||
wx.onTouchCancel(touchEventHandlerFactory('touchcancel'));
|
||
/***/
|
||
}),
|
||
/* 18 */
|
||
/***/ (function (module, exports, __webpack_require__) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _util = __webpack_require__(9);
|
||
// TODO 需要 wx.getSystemInfo 获取更详细信息
|
||
const { platform } = wx.getDeviceInfo();
|
||
const navigator = {
|
||
platform,
|
||
language: 'zh-cn',
|
||
appVersion: '5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1',
|
||
userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Mobile/14E8301 MicroMessenger/6.6.0 MiniGame NetType/WIFI Language/zh_CN',
|
||
onLine: true,
|
||
// TODO 用 wx.getLocation 来封装 geolocation
|
||
geolocation: {
|
||
getCurrentPosition: _util.noop,
|
||
watchPosition: _util.noop,
|
||
clearWatch: _util.noop,
|
||
},
|
||
};
|
||
exports.default = navigator;
|
||
/***/
|
||
}),
|
||
/* 19 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
const _url = new WeakMap();
|
||
const _method = new WeakMap();
|
||
const _requestHeader = new WeakMap();
|
||
const _responseHeader = new WeakMap();
|
||
const _requestTask = new WeakMap();
|
||
function _triggerEvent(type) {
|
||
if (typeof this[`on${type}`] === 'function') {
|
||
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
||
args[_key - 1] = arguments[_key];
|
||
}
|
||
this[`on${type}`].apply(this, args);
|
||
}
|
||
}
|
||
function _changeReadyState(readyState) {
|
||
this.readyState = readyState;
|
||
_triggerEvent.call(this, 'readystatechange');
|
||
}
|
||
const XMLHttpRequest = (function () {
|
||
// TODO 没法模拟 HEADERS_RECEIVED 和 LOADING 两个状态
|
||
function XMLHttpRequest() {
|
||
_classCallCheck(this, XMLHttpRequest);
|
||
this.onabort = null;
|
||
this.onerror = null;
|
||
this.onload = null;
|
||
this.onloadstart = null;
|
||
this.onprogress = null;
|
||
this.ontimeout = null;
|
||
this.onloadend = null;
|
||
this.onreadystatechange = null;
|
||
this.readyState = 0;
|
||
this.response = null;
|
||
this.responseText = null;
|
||
this.responseType = '';
|
||
this.responseXML = null;
|
||
this.status = 0;
|
||
this.statusText = '';
|
||
this.upload = {};
|
||
this.withCredentials = false;
|
||
this.timeout = 60000;
|
||
_requestHeader.set(this, {
|
||
'content-type': 'application/x-www-form-urlencoded',
|
||
});
|
||
_responseHeader.set(this, {});
|
||
}
|
||
/*
|
||
* TODO 这一批事件应该是在 XMLHttpRequestEventTarget.prototype 上面的
|
||
*/
|
||
_createClass(XMLHttpRequest, [{
|
||
key: 'abort',
|
||
value: function abort() {
|
||
const myRequestTask = _requestTask.get(this);
|
||
if (myRequestTask) {
|
||
myRequestTask.abort();
|
||
}
|
||
},
|
||
}, {
|
||
key: 'getAllResponseHeaders',
|
||
value: function getAllResponseHeaders() {
|
||
const responseHeader = _responseHeader.get(this);
|
||
return Object.keys(responseHeader).map(header => `${header}: ${responseHeader[header]}`)
|
||
.join('\n');
|
||
},
|
||
}, {
|
||
key: 'getResponseHeader',
|
||
value: function getResponseHeader(header) {
|
||
return _responseHeader.get(this)[header];
|
||
},
|
||
}, {
|
||
key: 'open',
|
||
value: function open(method, url /* async, user, password 这几个参数在小程序内不支持*/) {
|
||
_method.set(this, method);
|
||
_url.set(this, url);
|
||
_changeReadyState.call(this, XMLHttpRequest.OPENED);
|
||
},
|
||
}, {
|
||
key: 'overrideMimeType',
|
||
value: function overrideMimeType() { },
|
||
}, {
|
||
key: 'send',
|
||
value: function send() {
|
||
const _this = this;
|
||
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
||
if (this.readyState !== XMLHttpRequest.OPENED) {
|
||
throw new Error('Failed to execute \'send\' on \'XMLHttpRequest\': The object\'s state must be OPENED.');
|
||
}
|
||
else {
|
||
if (data instanceof Uint8Array) {
|
||
// unity 过来的请求会出现Uint8Array的数组,而客户端这里处理有问题,先这样兼容
|
||
data = Uint8Array.from(data).buffer;
|
||
}
|
||
const { responseType } = this;
|
||
wx.request({
|
||
data,
|
||
url: _url.get(this),
|
||
method: _method.get(this),
|
||
header: _requestHeader.get(this),
|
||
responseType: this.responseType,
|
||
enableHttp2: true,
|
||
enableQuic: true,
|
||
timeout: this.timeout ? this.timeout : 60000,
|
||
success: function success(_ref) {
|
||
let { data } = _ref;
|
||
const { statusCode } = _ref;
|
||
const { header } = _ref;
|
||
if (typeof data !== 'string' && !(data instanceof ArrayBuffer)) {
|
||
try {
|
||
data = JSON.stringify(data);
|
||
}
|
||
catch (e) {
|
||
data = data;
|
||
}
|
||
}
|
||
_this.status = statusCode;
|
||
_responseHeader.set(_this, header);
|
||
_triggerEvent.call(_this, 'loadstart');
|
||
_changeReadyState.call(_this, XMLHttpRequest.HEADERS_RECEIVED);
|
||
_changeReadyState.call(_this, XMLHttpRequest.LOADING);
|
||
_this.response = data;
|
||
_this.profile = _ref.profile;
|
||
if (responseType === 'text') {
|
||
if (data instanceof ArrayBuffer) {
|
||
_this.responseText = '';
|
||
const bytes = new Uint8Array(data);
|
||
const len = bytes.byteLength;
|
||
for (let i = 0; i < len; i++) {
|
||
_this.responseText += String.fromCharCode(bytes[i]);
|
||
}
|
||
}
|
||
else {
|
||
_this.responseText = data;
|
||
}
|
||
}
|
||
_changeReadyState.call(_this, XMLHttpRequest.DONE);
|
||
_triggerEvent.call(_this, 'load');
|
||
_triggerEvent.call(_this, 'loadend');
|
||
},
|
||
fail: function fail(_ref2) {
|
||
const { errMsg } = _ref2;
|
||
// TODO 规范错误
|
||
if (errMsg.indexOf('abort') !== -1) {
|
||
_triggerEvent.call(_this, 'abort');
|
||
}
|
||
else {
|
||
_triggerEvent.call(_this, 'error', errMsg);
|
||
}
|
||
_triggerEvent.call(_this, 'loadend');
|
||
},
|
||
});
|
||
}
|
||
},
|
||
}, {
|
||
key: 'setRequestHeader',
|
||
value: function setRequestHeader(header, value) {
|
||
const myHeader = _requestHeader.get(this);
|
||
myHeader[header] = value;
|
||
_requestHeader.set(this, myHeader);
|
||
},
|
||
}]);
|
||
return XMLHttpRequest;
|
||
}());
|
||
XMLHttpRequest.UNSEND = 0;
|
||
XMLHttpRequest.OPENED = 1;
|
||
XMLHttpRequest.HEADERS_RECEIVED = 2;
|
||
XMLHttpRequest.LOADING = 3;
|
||
XMLHttpRequest.DONE = 4;
|
||
if (!isWK) {
|
||
exports.default = XMLHttpRequest;
|
||
}
|
||
/***/
|
||
}),
|
||
/* 20 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
const _socketTask = new WeakMap();
|
||
const WebSocket = (function () {
|
||
// TODO 更新 binaryType
|
||
// The connection is in the process of closing.
|
||
// The connection is not yet open.
|
||
function WebSocket(url) {
|
||
const _this = this;
|
||
const protocols = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
||
_classCallCheck(this, WebSocket);
|
||
this.binaryType = '';
|
||
this.bufferedAmount = 0;
|
||
this.extensions = '';
|
||
this.onclose = null;
|
||
this.onerror = null;
|
||
this.onmessage = null;
|
||
this.onopen = null;
|
||
this.protocol = '';
|
||
this.readyState = 3;
|
||
if (typeof url !== 'string' || !/(^ws:\/\/)|(^wss:\/\/)/.test(url)) {
|
||
throw new TypeError(`Failed to construct 'WebSocket': The URL '${url}' is invalid`);
|
||
}
|
||
this.url = url;
|
||
this.readyState = WebSocket.CONNECTING;
|
||
const socketTask = wx.connectSocket({
|
||
url,
|
||
protocols: Array.isArray(protocols) ? protocols : [protocols],
|
||
});
|
||
_socketTask.set(this, socketTask);
|
||
socketTask.onClose((res) => {
|
||
_this.readyState = WebSocket.CLOSED;
|
||
if (typeof _this.onclose === 'function') {
|
||
_this.onclose(res);
|
||
}
|
||
});
|
||
socketTask.onMessage((res) => {
|
||
if (typeof _this.onmessage === 'function') {
|
||
_this.onmessage(res);
|
||
}
|
||
});
|
||
socketTask.onOpen(() => {
|
||
_this.readyState = WebSocket.OPEN;
|
||
if (typeof _this.onopen === 'function') {
|
||
_this.onopen();
|
||
}
|
||
});
|
||
socketTask.onError((res) => {
|
||
if (typeof _this.onerror === 'function') {
|
||
_this.onerror(new Error(res.errMsg));
|
||
}
|
||
});
|
||
return this;
|
||
} // TODO 小程序内目前获取不到,实际上需要根据服务器选择的 sub-protocol 返回
|
||
// TODO 更新 bufferedAmount
|
||
// The connection is closed or couldn't be opened.
|
||
// The connection is open and ready to communicate.
|
||
_createClass(WebSocket, [{
|
||
key: 'close',
|
||
value: function close(code, reason) {
|
||
this.readyState = WebSocket.CLOSING;
|
||
const socketTask = _socketTask.get(this);
|
||
socketTask.close({
|
||
code,
|
||
reason,
|
||
});
|
||
},
|
||
}, {
|
||
key: 'send',
|
||
value: function send(data) {
|
||
if (typeof data !== 'string' && !(data instanceof ArrayBuffer) && !((typeof data) === 'object')) {
|
||
throw new TypeError(`Failed to send message: The data ${data} is invalid`);
|
||
}
|
||
const socketTask = _socketTask.get(this);
|
||
socketTask.send({
|
||
data,
|
||
});
|
||
},
|
||
}]);
|
||
return WebSocket;
|
||
}());
|
||
WebSocket.CONNECTING = 0;
|
||
WebSocket.OPEN = 1;
|
||
WebSocket.CLOSING = 2;
|
||
WebSocket.CLOSED = 3;
|
||
exports.default = WebSocket;
|
||
/***/
|
||
}),
|
||
/* 21 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const _createClass = (function () {
|
||
function defineProperties(target, props) {
|
||
for (let i = 0; i < props.length; i++) {
|
||
const descriptor = props[i];
|
||
descriptor.enumerable = descriptor.enumerable || false;
|
||
descriptor.configurable = true;
|
||
if ('value' in descriptor)
|
||
descriptor.writable = true;
|
||
Object.defineProperty(target, descriptor.key, descriptor);
|
||
}
|
||
}
|
||
return function (Constructor, protoProps, staticProps) {
|
||
if (protoProps)
|
||
defineProperties(Constructor.prototype, protoProps);
|
||
if (staticProps)
|
||
defineProperties(Constructor, staticProps);
|
||
return Constructor;
|
||
};
|
||
}());
|
||
function _classCallCheck(instance, Constructor) {
|
||
if (!(instance instanceof Constructor)) {
|
||
throw new TypeError('Cannot call a class as a function');
|
||
}
|
||
}
|
||
/*
|
||
* TODO 使用 wx.readFile 来封装 FileReader
|
||
*/
|
||
const FileReader = (function () {
|
||
function FileReader() {
|
||
_classCallCheck(this, FileReader);
|
||
}
|
||
_createClass(FileReader, [{
|
||
key: 'construct',
|
||
value: function construct() { },
|
||
}]);
|
||
return FileReader;
|
||
}());
|
||
exports.default = FileReader;
|
||
/***/
|
||
}),
|
||
/* 22 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const localStorage = {
|
||
get length() {
|
||
const _wx$getStorageInfoSyn = wx.getStorageInfoSync();
|
||
const { keys } = _wx$getStorageInfoSyn;
|
||
return keys.length;
|
||
},
|
||
key: function key(n) {
|
||
const _wx$getStorageInfoSyn2 = wx.getStorageInfoSync();
|
||
const { keys } = _wx$getStorageInfoSyn2;
|
||
return keys[n];
|
||
},
|
||
getItem: function getItem(key) {
|
||
return wx.getStorageSync(key);
|
||
},
|
||
setItem: function setItem(key, value) {
|
||
return wx.setStorageSync(key, value);
|
||
},
|
||
removeItem: function removeItem(key) {
|
||
wx.removeStorageSync(key);
|
||
},
|
||
clear: function clear() {
|
||
wx.clearStorageSync();
|
||
},
|
||
};
|
||
exports.default = localStorage;
|
||
/***/
|
||
}),
|
||
/* 23 */
|
||
/***/ (function (module, exports) {
|
||
'use strict';
|
||
Object.defineProperty(exports, '__esModule', {
|
||
value: true,
|
||
});
|
||
const location = {
|
||
href: 'game.js',
|
||
reload: function reload() { },
|
||
};
|
||
exports.default = location;
|
||
/***/
|
||
}),
|
||
/** ****/
|
||
]));
|