init
BIN
unpackage/res/icons/1024x1024.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
unpackage/res/icons/120x120.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
BIN
unpackage/res/icons/144x144.png
Normal file
After Width: | Height: | Size: 7.4 KiB |
BIN
unpackage/res/icons/152x152.png
Normal file
After Width: | Height: | Size: 7.8 KiB |
BIN
unpackage/res/icons/167x167.png
Normal file
After Width: | Height: | Size: 8.5 KiB |
BIN
unpackage/res/icons/180x180.png
Normal file
After Width: | Height: | Size: 9.2 KiB |
BIN
unpackage/res/icons/192x192.png
Normal file
After Width: | Height: | Size: 9.9 KiB |
BIN
unpackage/res/icons/20x20.png
Normal file
After Width: | Height: | Size: 705 B |
BIN
unpackage/res/icons/29x29.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
unpackage/res/icons/40x40.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
unpackage/res/icons/58x58.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
unpackage/res/icons/60x60.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
unpackage/res/icons/72x72.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
unpackage/res/icons/76x76.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
unpackage/res/icons/80x80.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
unpackage/res/icons/87x87.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
unpackage/res/icons/96x96.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
unpackage/resources/__UNI__B35533A/www/__uniapperror.png
Normal file
After Width: | Height: | Size: 5.7 KiB |
1
unpackage/resources/__UNI__B35533A/www/__uniappes6.js
Normal file
1
unpackage/resources/__UNI__B35533A/www/__uniapppicker.js
Normal file
8
unpackage/resources/__UNI__B35533A/www/__uniappquill.js
Normal file
1
unpackage/resources/__UNI__B35533A/www/__uniappscan.js
Normal file
BIN
unpackage/resources/__UNI__B35533A/www/__uniappsuccess.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
25
unpackage/resources/__UNI__B35533A/www/__uniappview.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<script>
|
||||
var __UniViewStartTime__ = Date.now();
|
||||
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
|
||||
CSS.supports('top: constant(a)'))
|
||||
document.write(
|
||||
'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
|
||||
(coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
||||
</script>
|
||||
<title>View</title>
|
||||
<link rel="stylesheet" href="view.css" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script src="__uniappes6.js"></script>
|
||||
<script src="view.umd.min.js"></script>
|
||||
<script src="app-view.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
@@ -0,0 +1,8 @@
|
||||
|
||||
var isReady=false;var onReadyCallbacks=[];
|
||||
var isServiceReady=false;var onServiceReadyCallbacks=[];
|
||||
var __uniConfig = {"pages":["pages/sys/login/index","pages/sys/msg/index","pages/sys/qrpage/qrpage","pages/sys/camera/camera","pages/sys/work/work","pages/sys/camera/camera","pages/sys/detail/detail"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"Aidex","navigationBarBackgroundColor":"#ffffff"},"tabBar":{"color":"#333333","selectedColor":"#4094ff","backgroundColor":"#ffffff","borderStyle":"white","list":[{"pagePath":"pages/sys/msg/index","iconPath":"static/aidex/tabbar/msg_1.png","selectedIconPath":"static/aidex/tabbar/msg_2.png","text":"访客等级"},{"pagePath":"pages/sys/work/work","iconPath":"static/aidex/tabbar/apply_1.png","selectedIconPath":"static/aidex/tabbar/apply_2.png","text":"到访确认"},{"pagePath":"pages/sys/qrpage/qrpage","iconPath":"static/aidex/tabbar/book_1.png","selectedIconPath":"static/aidex/tabbar/book_2.png","text":"扫码登记"},{"pagePath":"pages/sys/user/index","iconPath":"static/aidex/tabbar/my_1.png","selectedIconPath":"static/aidex/tabbar/my_2.png","text":"我的"}]},"preloadRule":{},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"访客机app","compilerVersion":"4.75","entryPagePath":"pages/sys/login/index","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
|
||||
var __uniRoutes = [{"path":"/pages/sys/login/index","meta":{"isQuit":true},"window":{"navigationBarTitleText":"登录"}},{"path":"/pages/sys/msg/index","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"消息","navigationStyle":"custom"}},{"path":"/pages/sys/qrpage/qrpage","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"扫码登记","navigationStyle":"custom"}},{"path":"/pages/sys/camera/camera","meta":{},"window":{"navigationBarTitleText":"我的","navigationBarBackgroundColor":"#5b95ff","navigationBarTextStyle":"white","navigationStyle":"custom"}},{"path":"/pages/sys/work/work","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"到访确认"}},{"path":"/pages/sys/detail/detail","meta":{},"window":{"navigationBarTitleText":"详情","navigationStyle":"custom"}}];
|
||||
__uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
|
||||
__uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
|
||||
service.register("uni-app-config",{create(a,b,c){if(!__uniConfig.viewport){var d=b.weex.config.env.scale,e=b.weex.config.env.deviceWidth,f=Math.ceil(e/d);Object.assign(__uniConfig,{viewport:f,defaultFontSize:Math.round(f/20)})}return{instance:{__uniConfig:__uniConfig,__uniRoutes:__uniRoutes,global:void 0,window:void 0,document:void 0,frames:void 0,self:void 0,location:void 0,navigator:void 0,localStorage:void 0,history:void 0,Caches:void 0,screen:void 0,alert:void 0,confirm:void 0,prompt:void 0,fetch:void 0,XMLHttpRequest:void 0,WebSocket:void 0,webkit:void 0,print:void 0}}}});
|
1
unpackage/resources/__UNI__B35533A/www/app-config.js
Normal file
@@ -0,0 +1 @@
|
||||
(function(e){function r(r){for(var n,l,i=r[0],p=r[1],a=r[2],c=0,s=[];c<i.length;c++)l=i[c],Object.prototype.hasOwnProperty.call(o,l)&&o[l]&&s.push(o[l][0]),o[l]=0;for(n in p)Object.prototype.hasOwnProperty.call(p,n)&&(e[n]=p[n]);f&&f(r);while(s.length)s.shift()();return u.push.apply(u,a||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,i=1;i<t.length;i++){var p=t[i];0!==o[p]&&(n=!1)}n&&(u.splice(r--,1),e=l(l.s=t[0]))}return e}var n={},o={"app-config":0},u=[];function l(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,l),t.l=!0,t.exports}l.m=e,l.c=n,l.d=function(e,r,t){l.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},l.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.t=function(e,r){if(1&r&&(e=l(e)),8&r)return e;if(4&r&&"object"===typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(l.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)l.d(t,n,function(r){return e[r]}.bind(null,n));return t},l.n=function(e){var r=e&&e.__esModule?function(){return e["default"]}:function(){return e};return l.d(r,"a",r),r},l.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},l.p="/";var i=this["webpackJsonp"]=this["webpackJsonp"]||[],p=i.push.bind(i);i.push=r,i=i.slice();for(var a=0;a<i.length;a++)r(i[a]);var f=p;t()})([]);
|
8
unpackage/resources/__UNI__B35533A/www/app-service.js
Normal file
1
unpackage/resources/__UNI__B35533A/www/app-view.js
Normal file
1
unpackage/resources/__UNI__B35533A/www/manifest.json
Normal file
@@ -0,0 +1 @@
|
||||
{"@platforms":["android","iPhone","iPad"],"id":"__UNI__B35533A","name":"访客机app","version":{"name":"1.8.4","code":"100"},"description":"访客机app","launch_path":"__uniappview.html","developer":{"name":"","email":"","url":""},"permissions":{"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"target":"id:1","autoclose":true,"waiting":true,"delay":0},"popGesture":"close","launchwebview":{"id":"1","kernel":"WKWebview"},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#ffffff"},"usingComponents":true,"nvueStyleCompiler":"uni-app","compatible":{"ignoreVersion":true},"allowsInlineMediaPlayback":true,"safearea":{"background":"#ffffff","bottom":{"offset":"auto"}},"uni-app":{"compilerVersion":"4.75","control":"uni-v3","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal"},"tabBar":{"color":"#333333","selectedColor":"#4094ff","backgroundColor":"#ffffff","borderStyle":"rgba(255,255,255,0.4)","list":[{"pagePath":"pages/sys/msg/index","iconPath":"static/aidex/tabbar/msg_1.png","selectedIconPath":"static/aidex/tabbar/msg_2.png","text":"访客等级"},{"pagePath":"pages/sys/work/work","iconPath":"static/aidex/tabbar/apply_1.png","selectedIconPath":"static/aidex/tabbar/apply_2.png","text":"到访确认"},{"pagePath":"pages/sys/qrpage/qrpage","iconPath":"static/aidex/tabbar/book_1.png","selectedIconPath":"static/aidex/tabbar/book_2.png","text":"扫码登记"},{"pagePath":"pages/sys/user/index","iconPath":"static/aidex/tabbar/my_1.png","selectedIconPath":"static/aidex/tabbar/my_2.png","text":"我的"}],"height":"50px"},"launch_path":"__uniappview.html"}}
|
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 35 KiB |
BIN
unpackage/resources/__UNI__B35533A/www/static/aidex/favicon.png
Normal file
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 130 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 79 KiB |
After Width: | Height: | Size: 153 KiB |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 5.7 KiB |
BIN
unpackage/resources/__UNI__B35533A/www/static/aidex/login-bg.png
Normal file
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 40 KiB |
@@ -0,0 +1,363 @@
|
||||
(function(window, document, exportName, undefined) {
|
||||
"use strict";
|
||||
|
||||
var isMultiTouch = false;
|
||||
var multiTouchStartPos;
|
||||
var eventTarget;
|
||||
var touchElements = {};
|
||||
|
||||
// polyfills
|
||||
if(!document.createTouch) {
|
||||
document.createTouch = function(view, target, identifier, pageX, pageY, screenX, screenY, clientX, clientY) {
|
||||
// auto set
|
||||
if(clientX == undefined || clientY == undefined) {
|
||||
clientX = pageX - window.pageXOffset;
|
||||
clientY = pageY - window.pageYOffset;
|
||||
}
|
||||
|
||||
return new Touch(target, identifier, {
|
||||
pageX: pageX,
|
||||
pageY: pageY,
|
||||
screenX: screenX,
|
||||
screenY: screenY,
|
||||
clientX: clientX,
|
||||
clientY: clientY
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
if(!document.createTouchList) {
|
||||
document.createTouchList = function() {
|
||||
var touchList = new TouchList();
|
||||
for (var i = 0; i < arguments.length; i++) {
|
||||
touchList[i] = arguments[i];
|
||||
}
|
||||
touchList.length = arguments.length;
|
||||
return touchList;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* create an touch point
|
||||
* @constructor
|
||||
* @param target
|
||||
* @param identifier
|
||||
* @param pos
|
||||
* @param deltaX
|
||||
* @param deltaY
|
||||
* @returns {Object} touchPoint
|
||||
*/
|
||||
function Touch(target, identifier, pos, deltaX, deltaY) {
|
||||
deltaX = deltaX || 0;
|
||||
deltaY = deltaY || 0;
|
||||
|
||||
this.identifier = identifier;
|
||||
this.target = target;
|
||||
this.clientX = pos.clientX + deltaX;
|
||||
this.clientY = pos.clientY + deltaY;
|
||||
this.screenX = pos.screenX + deltaX;
|
||||
this.screenY = pos.screenY + deltaY;
|
||||
this.pageX = pos.pageX + deltaX;
|
||||
this.pageY = pos.pageY + deltaY;
|
||||
}
|
||||
|
||||
/**
|
||||
* create empty touchlist with the methods
|
||||
* @constructor
|
||||
* @returns touchList
|
||||
*/
|
||||
function TouchList() {
|
||||
var touchList = [];
|
||||
|
||||
touchList.item = function(index) {
|
||||
return this[index] || null;
|
||||
};
|
||||
|
||||
// specified by Mozilla
|
||||
touchList.identifiedTouch = function(id) {
|
||||
return this[id + 1] || null;
|
||||
};
|
||||
|
||||
return touchList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Simple trick to fake touch event support
|
||||
* this is enough for most libraries like Modernizr and Hammer
|
||||
*/
|
||||
function fakeTouchSupport() {
|
||||
var objs = [window, document.documentElement];
|
||||
var props = ['ontouchstart', 'ontouchmove', 'ontouchcancel', 'ontouchend'];
|
||||
|
||||
for(var o=0; o<objs.length; o++) {
|
||||
for(var p=0; p<props.length; p++) {
|
||||
if(objs[o] && objs[o][props[p]] == undefined) {
|
||||
objs[o][props[p]] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* we don't have to emulate on a touch device
|
||||
* @returns {boolean}
|
||||
*/
|
||||
function hasTouchSupport() {
|
||||
return ("ontouchstart" in window) || // touch events
|
||||
(window.Modernizr && window.Modernizr.touch) || // modernizr
|
||||
(navigator.msMaxTouchPoints || navigator.maxTouchPoints) > 2; // pointer events
|
||||
}
|
||||
|
||||
/**
|
||||
* disable mouseevents on the page
|
||||
* @param ev
|
||||
*/
|
||||
function preventMouseEvents(ev) {
|
||||
// 注释启用默认事件
|
||||
// ev.preventDefault();
|
||||
// ev.stopPropagation();
|
||||
}
|
||||
|
||||
/**
|
||||
* only trigger touches when the left mousebutton has been pressed
|
||||
* @param touchType
|
||||
* @returns {Function}
|
||||
*/
|
||||
function onMouse(touchType) {
|
||||
return function(ev) {
|
||||
// prevent mouse events
|
||||
preventMouseEvents(ev);
|
||||
|
||||
if (ev.which !== 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
// The EventTarget on which the touch point started when it was first placed on the surface,
|
||||
// even if the touch point has since moved outside the interactive area of that element.
|
||||
// also, when the target doesnt exist anymore, we update it
|
||||
if (ev.type == 'mousedown' || !eventTarget || (eventTarget && !eventTarget.dispatchEvent)) {
|
||||
eventTarget = ev.target;
|
||||
}
|
||||
|
||||
// shiftKey has been lost, so trigger a touchend
|
||||
if (isMultiTouch && !ev.shiftKey) {
|
||||
triggerTouch('touchend', ev);
|
||||
isMultiTouch = false;
|
||||
}
|
||||
|
||||
triggerTouch(touchType, ev);
|
||||
|
||||
// we're entering the multi-touch mode!
|
||||
if (!isMultiTouch && ev.shiftKey) {
|
||||
isMultiTouch = true;
|
||||
multiTouchStartPos = {
|
||||
pageX: ev.pageX,
|
||||
pageY: ev.pageY,
|
||||
clientX: ev.clientX,
|
||||
clientY: ev.clientY,
|
||||
screenX: ev.screenX,
|
||||
screenY: ev.screenY
|
||||
};
|
||||
triggerTouch('touchstart', ev);
|
||||
}
|
||||
|
||||
// reset
|
||||
if (ev.type == 'mouseup') {
|
||||
multiTouchStartPos = null;
|
||||
isMultiTouch = false;
|
||||
eventTarget = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* trigger a touch event
|
||||
* @param eventName
|
||||
* @param mouseEv
|
||||
*/
|
||||
function triggerTouch(eventName, mouseEv) {
|
||||
var touchEvent = document.createEvent('Event');
|
||||
touchEvent.initEvent(eventName, true, true);
|
||||
|
||||
touchEvent.altKey = mouseEv.altKey;
|
||||
touchEvent.ctrlKey = mouseEv.ctrlKey;
|
||||
touchEvent.metaKey = mouseEv.metaKey;
|
||||
touchEvent.shiftKey = mouseEv.shiftKey;
|
||||
|
||||
touchEvent.touches = getActiveTouches(mouseEv, eventName);
|
||||
touchEvent.targetTouches = getActiveTouches(mouseEv, eventName);
|
||||
touchEvent.changedTouches = getChangedTouches(mouseEv, eventName);
|
||||
|
||||
eventTarget.dispatchEvent(touchEvent);
|
||||
}
|
||||
|
||||
/**
|
||||
* create a touchList based on the mouse event
|
||||
* @param mouseEv
|
||||
* @returns {TouchList}
|
||||
*/
|
||||
function createTouchList(mouseEv) {
|
||||
var touchList = new TouchList();
|
||||
|
||||
if (isMultiTouch) {
|
||||
var f = TouchEmulator.multiTouchOffset;
|
||||
var deltaX = multiTouchStartPos.pageX - mouseEv.pageX;
|
||||
var deltaY = multiTouchStartPos.pageY - mouseEv.pageY;
|
||||
|
||||
touchList.push(new Touch(eventTarget, 1, multiTouchStartPos, (deltaX*-1) - f, (deltaY*-1) + f));
|
||||
touchList.push(new Touch(eventTarget, 2, multiTouchStartPos, deltaX+f, deltaY-f));
|
||||
} else {
|
||||
touchList.push(new Touch(eventTarget, 1, mouseEv, 0, 0));
|
||||
}
|
||||
|
||||
return touchList;
|
||||
}
|
||||
|
||||
/**
|
||||
* receive all active touches
|
||||
* @param mouseEv
|
||||
* @returns {TouchList}
|
||||
*/
|
||||
function getActiveTouches(mouseEv, eventName) {
|
||||
// empty list
|
||||
if (mouseEv.type == 'mouseup') {
|
||||
return new TouchList();
|
||||
}
|
||||
|
||||
var touchList = createTouchList(mouseEv);
|
||||
if(isMultiTouch && mouseEv.type != 'mouseup' && eventName == 'touchend') {
|
||||
touchList.splice(1, 1);
|
||||
}
|
||||
return touchList;
|
||||
}
|
||||
|
||||
/**
|
||||
* receive a filtered set of touches with only the changed pointers
|
||||
* @param mouseEv
|
||||
* @param eventName
|
||||
* @returns {TouchList}
|
||||
*/
|
||||
function getChangedTouches(mouseEv, eventName) {
|
||||
var touchList = createTouchList(mouseEv);
|
||||
|
||||
// we only want to return the added/removed item on multitouch
|
||||
// which is the second pointer, so remove the first pointer from the touchList
|
||||
//
|
||||
// but when the mouseEv.type is mouseup, we want to send all touches because then
|
||||
// no new input will be possible
|
||||
if(isMultiTouch && mouseEv.type != 'mouseup' &&
|
||||
(eventName == 'touchstart' || eventName == 'touchend')) {
|
||||
touchList.splice(0, 1);
|
||||
}
|
||||
|
||||
return touchList;
|
||||
}
|
||||
|
||||
/**
|
||||
* show the touchpoints on the screen
|
||||
*/
|
||||
function showTouches(ev) {
|
||||
var touch, i, el, styles;
|
||||
|
||||
// first all visible touches
|
||||
for(i = 0; i < ev.touches.length; i++) {
|
||||
touch = ev.touches[i];
|
||||
el = touchElements[touch.identifier];
|
||||
if(!el) {
|
||||
el = touchElements[touch.identifier] = document.createElement("div");
|
||||
document.body.appendChild(el);
|
||||
}
|
||||
|
||||
styles = TouchEmulator.template(touch);
|
||||
for(var prop in styles) {
|
||||
el.style[prop] = styles[prop];
|
||||
}
|
||||
}
|
||||
|
||||
// remove all ended touches
|
||||
if(ev.type == 'touchend' || ev.type == 'touchcancel') {
|
||||
for(i = 0; i < ev.changedTouches.length; i++) {
|
||||
touch = ev.changedTouches[i];
|
||||
el = touchElements[touch.identifier];
|
||||
if(el) {
|
||||
el.parentNode.removeChild(el);
|
||||
delete touchElements[touch.identifier];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* TouchEmulator initializer
|
||||
*/
|
||||
function TouchEmulator() {
|
||||
if (hasTouchSupport()) {
|
||||
return;
|
||||
}
|
||||
|
||||
fakeTouchSupport();
|
||||
|
||||
window.addEventListener("mousedown", onMouse('touchstart'), true);
|
||||
window.addEventListener("mousemove", onMouse('touchmove'), true);
|
||||
window.addEventListener("mouseup", onMouse('touchend'), true);
|
||||
|
||||
window.addEventListener("mouseenter", preventMouseEvents, true);
|
||||
window.addEventListener("mouseleave", preventMouseEvents, true);
|
||||
window.addEventListener("mouseout", preventMouseEvents, true);
|
||||
window.addEventListener("mouseover", preventMouseEvents, true);
|
||||
|
||||
// it uses itself!
|
||||
window.addEventListener("touchstart", showTouches, true);
|
||||
window.addEventListener("touchmove", showTouches, true);
|
||||
window.addEventListener("touchend", showTouches, true);
|
||||
window.addEventListener("touchcancel", showTouches, true);
|
||||
}
|
||||
|
||||
// start distance when entering the multitouch mode
|
||||
TouchEmulator.multiTouchOffset = 75;
|
||||
|
||||
/**
|
||||
* css template for the touch rendering
|
||||
* @param touch
|
||||
* @returns object
|
||||
*/
|
||||
TouchEmulator.template = function(touch) {
|
||||
var size = 0;
|
||||
var transform = 'translate('+ (touch.clientX-(size/2)) +'px, '+ (touch.clientY-(size/2)) +'px)';
|
||||
return {
|
||||
position: 'fixed',
|
||||
left: 0,
|
||||
top: 0,
|
||||
background: '#fff',
|
||||
border: 'solid 1px #999',
|
||||
opacity: .6,
|
||||
borderRadius: '100%',
|
||||
height: size + 'px',
|
||||
width: size + 'px',
|
||||
padding: 0,
|
||||
margin: 0,
|
||||
display: 'block',
|
||||
overflow: 'hidden',
|
||||
pointerEvents: 'none',
|
||||
webkitUserSelect: 'none',
|
||||
mozUserSelect: 'none',
|
||||
userSelect: 'none',
|
||||
webkitTransform: transform,
|
||||
mozTransform: transform,
|
||||
transform: transform,
|
||||
zIndex: 100
|
||||
}
|
||||
};
|
||||
|
||||
// export
|
||||
if (typeof define == "function" && define.amd) {
|
||||
define(function() {
|
||||
return TouchEmulator;
|
||||
});
|
||||
} else if (typeof module != "undefined" && module.exports) {
|
||||
module.exports = TouchEmulator;
|
||||
} else {
|
||||
window[exportName] = TouchEmulator;
|
||||
}
|
||||
})(window, document, "TouchEmulator");
|
@@ -0,0 +1,463 @@
|
||||
@font-face {
|
||||
font-family: "iconfont"; /* Project id 2874232 */
|
||||
src: url('~@/static/iconfont/iconfont.woff2?t=1636514770782') format('woff2'),
|
||||
url('~@/static/iconfont/iconfont.woff?t=1636514770782') format('woff'),
|
||||
url('~@/static/iconfont/iconfont.ttf?t=1636514770782') format('truetype');
|
||||
}
|
||||
|
||||
.iconfont {
|
||||
font-family: "iconfont" !important;
|
||||
font-size: 16px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.icon-minus-circle-fill:before {
|
||||
content: "\e844";
|
||||
}
|
||||
|
||||
.icon-close-circle-fill:before {
|
||||
content: "\e845";
|
||||
}
|
||||
|
||||
.icon-plus-circle-fill:before {
|
||||
content: "\e846";
|
||||
}
|
||||
|
||||
.icon-tupian:before {
|
||||
content: "\e8ba";
|
||||
}
|
||||
|
||||
.icon-xiangji:before {
|
||||
content: "\e8bc";
|
||||
}
|
||||
|
||||
.icon-zengjia:before {
|
||||
content: "\e8c0";
|
||||
}
|
||||
|
||||
.icon-youhuiquan:before {
|
||||
content: "\e8c1";
|
||||
}
|
||||
|
||||
.icon-quanbudingdan:before {
|
||||
content: "\e600";
|
||||
}
|
||||
|
||||
.icon-moban:before {
|
||||
content: "\e6bb";
|
||||
}
|
||||
|
||||
.icon-hetongqianzi:before {
|
||||
content: "\e615";
|
||||
}
|
||||
|
||||
.icon-gongwujiedai:before {
|
||||
content: "\e609";
|
||||
}
|
||||
|
||||
.icon-kaoqinchuqin:before {
|
||||
content: "\e8d0";
|
||||
}
|
||||
|
||||
.icon-haocaifei:before {
|
||||
content: "\e6bc";
|
||||
}
|
||||
|
||||
.icon-huiyishi1:before {
|
||||
content: "\e662";
|
||||
}
|
||||
|
||||
.icon-baoming1:before {
|
||||
content: "\e632";
|
||||
}
|
||||
|
||||
.icon-jiabanshenqing:before {
|
||||
content: "\e651";
|
||||
}
|
||||
|
||||
.icon-hetongxieyi:before {
|
||||
content: "\e64b";
|
||||
}
|
||||
|
||||
.icon-jiabanshenpi:before {
|
||||
content: "\e774";
|
||||
}
|
||||
|
||||
.icon-yongche:before {
|
||||
content: "\e601";
|
||||
}
|
||||
|
||||
.icon-baoming:before {
|
||||
content: "\e664";
|
||||
}
|
||||
|
||||
.icon-qingjia:before {
|
||||
content: "\e624";
|
||||
}
|
||||
|
||||
.icon-tianshenpi:before {
|
||||
content: "\eb67";
|
||||
}
|
||||
|
||||
.icon-icon_yingyongguanli:before {
|
||||
content: "\eb8f";
|
||||
}
|
||||
|
||||
.icon-xingzhuang-xingxing:before {
|
||||
content: "\eb9a";
|
||||
}
|
||||
|
||||
.icon-gongnengdingyi:before {
|
||||
content: "\ebb7";
|
||||
}
|
||||
|
||||
.icon-kongxinduigou:before {
|
||||
content: "\ebe5";
|
||||
}
|
||||
|
||||
.icon-tianjia:before {
|
||||
content: "\e620";
|
||||
}
|
||||
|
||||
.icon-chucha:before {
|
||||
content: "\e60f";
|
||||
}
|
||||
|
||||
.icon-gongdan:before {
|
||||
content: "\ec37";
|
||||
}
|
||||
|
||||
.icon-daibanshixiang2:before {
|
||||
content: "\ec4e";
|
||||
}
|
||||
|
||||
.icon-bianjisekuai:before {
|
||||
content: "\ec7c";
|
||||
}
|
||||
|
||||
.icon-hetongguanli:before {
|
||||
content: "\e625";
|
||||
}
|
||||
|
||||
.icon-huiyishi:before {
|
||||
content: "\e608";
|
||||
}
|
||||
|
||||
.icon-ribao:before {
|
||||
content: "\e835";
|
||||
}
|
||||
|
||||
.icon-banjieshiwu:before {
|
||||
content: "\e602";
|
||||
}
|
||||
|
||||
.icon-daibanshiwu:before {
|
||||
content: "\e603";
|
||||
}
|
||||
|
||||
.icon-kaoheguanli:before {
|
||||
content: "\e606";
|
||||
}
|
||||
|
||||
.icon-shiyanshikaohe:before {
|
||||
content: "\e607";
|
||||
}
|
||||
|
||||
.icon-baoxiao:before {
|
||||
content: "\e605";
|
||||
}
|
||||
|
||||
.icon-shenpi:before {
|
||||
content: "\e626";
|
||||
}
|
||||
|
||||
.icon-baoxiaodan:before {
|
||||
content: "\e61b";
|
||||
}
|
||||
|
||||
.icon-xinwen:before {
|
||||
content: "\e639";
|
||||
}
|
||||
|
||||
.icon-tongzhi:before {
|
||||
content: "\e648";
|
||||
}
|
||||
|
||||
.icon-fujian:before {
|
||||
content: "\e655";
|
||||
}
|
||||
|
||||
.icon-msg-system:before {
|
||||
content: "\e6b9";
|
||||
}
|
||||
|
||||
.icon-daibanshixiang:before {
|
||||
content: "\e65d";
|
||||
}
|
||||
|
||||
.icon-tongzhi1:before {
|
||||
content: "\e64a";
|
||||
}
|
||||
|
||||
.icon-daibanshixiang1:before {
|
||||
content: "\e6ba";
|
||||
}
|
||||
|
||||
.icon-search:before {
|
||||
content: "\e6b4";
|
||||
}
|
||||
|
||||
.icon-view-list:before {
|
||||
content: "\e6b5";
|
||||
}
|
||||
|
||||
.icon-headset-one:before {
|
||||
content: "\e6b6";
|
||||
}
|
||||
|
||||
.icon-list-checkbox:before {
|
||||
content: "\e6b7";
|
||||
}
|
||||
|
||||
.icon-jiyika:before {
|
||||
content: "\e6b8";
|
||||
}
|
||||
|
||||
.icon-chart-histogram-two:before {
|
||||
content: "\e679";
|
||||
}
|
||||
|
||||
.icon-audit:before {
|
||||
content: "\e67a";
|
||||
}
|
||||
|
||||
.icon-check-one:before {
|
||||
content: "\e67b";
|
||||
}
|
||||
|
||||
.icon-bookmark-one:before {
|
||||
content: "\e67c";
|
||||
}
|
||||
|
||||
.icon-a-comment1:before {
|
||||
content: "\e67d";
|
||||
}
|
||||
|
||||
.icon-avatar:before {
|
||||
content: "\e67e";
|
||||
}
|
||||
|
||||
.icon-collection-files:before {
|
||||
content: "\e67f";
|
||||
}
|
||||
|
||||
.icon-copy-one:before {
|
||||
content: "\e680";
|
||||
}
|
||||
|
||||
.icon-add:before {
|
||||
content: "\e681";
|
||||
}
|
||||
|
||||
.icon-currency:before {
|
||||
content: "\e682";
|
||||
}
|
||||
|
||||
.icon-edit-two:before {
|
||||
content: "\e683";
|
||||
}
|
||||
|
||||
.icon-finance:before {
|
||||
content: "\e684";
|
||||
}
|
||||
|
||||
.icon-find:before {
|
||||
content: "\e685";
|
||||
}
|
||||
|
||||
.icon-folder-plus:before {
|
||||
content: "\e686";
|
||||
}
|
||||
|
||||
.icon-link-break:before {
|
||||
content: "\e687";
|
||||
}
|
||||
|
||||
.icon-financing-one:before {
|
||||
content: "\e688";
|
||||
}
|
||||
|
||||
.icon-help:before {
|
||||
content: "\e689";
|
||||
}
|
||||
|
||||
.icon-chart-pie:before {
|
||||
content: "\e68a";
|
||||
}
|
||||
|
||||
.icon-id-card:before {
|
||||
content: "\e68b";
|
||||
}
|
||||
|
||||
.icon-a-lock1:before {
|
||||
content: "\e68c";
|
||||
}
|
||||
|
||||
.icon-list:before {
|
||||
content: "\e68d";
|
||||
}
|
||||
|
||||
.icon-lock:before {
|
||||
content: "\e68e";
|
||||
}
|
||||
|
||||
.icon-key:before {
|
||||
content: "\e68f";
|
||||
}
|
||||
|
||||
.icon-a-key1:before {
|
||||
content: "\e690";
|
||||
}
|
||||
|
||||
.icon-me:before {
|
||||
content: "\e691";
|
||||
}
|
||||
|
||||
.icon-equalizer:before {
|
||||
content: "\e692";
|
||||
}
|
||||
|
||||
.icon-comment:before {
|
||||
content: "\e693";
|
||||
}
|
||||
|
||||
.icon-log:before {
|
||||
content: "\e694";
|
||||
}
|
||||
|
||||
.icon-mall-bag:before {
|
||||
content: "\e695";
|
||||
}
|
||||
|
||||
.icon-list-view:before {
|
||||
content: "\e696";
|
||||
}
|
||||
|
||||
.icon-send:before {
|
||||
content: "\e697";
|
||||
}
|
||||
|
||||
.icon-people:before {
|
||||
content: "\e698";
|
||||
}
|
||||
|
||||
.icon-peoples:before {
|
||||
content: "\e699";
|
||||
}
|
||||
|
||||
.icon-a-message-one1:before {
|
||||
content: "\e69a";
|
||||
}
|
||||
|
||||
.icon-phone-telephone:before {
|
||||
content: "\e69b";
|
||||
}
|
||||
|
||||
.icon-internal-transmission:before {
|
||||
content: "\e69c";
|
||||
}
|
||||
|
||||
.icon-schedule:before {
|
||||
content: "\e69d";
|
||||
}
|
||||
|
||||
.icon-more-one:before {
|
||||
content: "\e69e";
|
||||
}
|
||||
|
||||
.icon-sim:before {
|
||||
content: "\e69f";
|
||||
}
|
||||
|
||||
.icon-a-peoples1:before {
|
||||
content: "\e6a0";
|
||||
}
|
||||
|
||||
.icon-wallet:before {
|
||||
content: "\e6a1";
|
||||
}
|
||||
|
||||
.icon-permissions:before {
|
||||
content: "\e6a2";
|
||||
}
|
||||
|
||||
.icon-faan:before {
|
||||
content: "\e6a3";
|
||||
}
|
||||
|
||||
.icon-transporter:before {
|
||||
content: "\e6a4";
|
||||
}
|
||||
|
||||
.icon-transaction-order:before {
|
||||
content: "\e6a5";
|
||||
}
|
||||
|
||||
.icon-message-one:before {
|
||||
content: "\e6a6";
|
||||
}
|
||||
|
||||
.icon-shouji:before {
|
||||
content: "\e6a7";
|
||||
}
|
||||
|
||||
.icon-liebiaochakanmoshi_view-grid-list:before {
|
||||
content: "\e6a8";
|
||||
}
|
||||
|
||||
.icon-time:before {
|
||||
content: "\e6a9";
|
||||
}
|
||||
|
||||
.icon-transaction:before {
|
||||
content: "\e6aa";
|
||||
}
|
||||
|
||||
.icon-setting-two:before {
|
||||
content: "\e6ab";
|
||||
}
|
||||
|
||||
.icon-plan:before {
|
||||
content: "\e6ac";
|
||||
}
|
||||
|
||||
.icon-a-time1:before {
|
||||
content: "\e6ad";
|
||||
}
|
||||
|
||||
.icon-shezhi_setting:before {
|
||||
content: "\e6ae";
|
||||
}
|
||||
|
||||
.icon-zanting:before {
|
||||
content: "\e6af";
|
||||
}
|
||||
|
||||
.icon-sousuo_search:before {
|
||||
content: "\e6b0";
|
||||
}
|
||||
|
||||
.icon-xiangqingliebiao:before {
|
||||
content: "\e6b1";
|
||||
}
|
||||
|
||||
.icon-workbench:before {
|
||||
content: "\e6b2";
|
||||
}
|
||||
|
||||
.icon-shujubiao_data-sheet:before {
|
||||
content: "\e6b3";
|
||||
}
|
||||
|
51
unpackage/resources/__UNI__B35533A/www/static/index.html
Normal file
@@ -0,0 +1,51 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="PoweredByAidex"/>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="static/aidex/favicon.png">
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<title>aidex Mobile APP</title>
|
||||
<script>
|
||||
window.onresize = function () {
|
||||
if (document.documentElement.clientWidth < 768) {
|
||||
window.location.href = '../#/';
|
||||
}
|
||||
};
|
||||
window.onresize();
|
||||
</script>
|
||||
<style>
|
||||
.mobile-model {
|
||||
margin: 10px auto;
|
||||
background-color: #fff;
|
||||
width: 330px;
|
||||
margin-top: calc(50vh - 350px);
|
||||
box-sizing: border-box;
|
||||
background-image: url(common/img/iPhoneX.png);
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100%;
|
||||
border-radius: 30px;
|
||||
padding: 48px 23px 38px 16px;
|
||||
}
|
||||
.mobile-content {
|
||||
box-sizing: border-box;
|
||||
width: 298px;
|
||||
height: 582px;
|
||||
border-bottom-left-radius: 20px;
|
||||
}
|
||||
.mobile-iframe {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
border-radius: 20px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="mobile-model">
|
||||
<div class="mobile-content">
|
||||
<iframe src="../#/" class="mobile-iframe" scrolling="auto" frameborder="0"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
BIN
unpackage/resources/__UNI__B35533A/www/static/uni.ttf
Normal file
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 4.5 KiB |
@@ -0,0 +1,77 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>lime-qrcode</title>
|
||||
<style>
|
||||
html,body,canvas {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
pointer-events: none;
|
||||
/* background-color: rgba(255,0,0,0.1) */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<canvas id="lime-qrcode"></canvas>
|
||||
<script type="text/javascript" src="./uni.webview.1.5.3.js"></script>
|
||||
<script type="text/javascript" src="./qrcode.min.js"></script>
|
||||
<script>
|
||||
var canvas = document.querySelector('#lime-qrcode')
|
||||
var pixelRatio = window.devicePixelRatio || 1
|
||||
function appendWatermark(image) {
|
||||
emit('append', mark.toDataURL())
|
||||
}
|
||||
|
||||
var qrcode = new lime.QRCodeCanvas(canvas, {
|
||||
pixelRatio,
|
||||
})
|
||||
function render(props) {
|
||||
if(props.pixelRatio) {
|
||||
pixelRatio = props.pixelRatio
|
||||
}
|
||||
if(qrcode) {
|
||||
qrcode.render(props)
|
||||
}
|
||||
}
|
||||
function toDataURL(file) {
|
||||
if(qrcode && canvas) {
|
||||
try{
|
||||
const image = canvas.toDataURL()
|
||||
emit('toDataURL', {
|
||||
file,
|
||||
image
|
||||
})
|
||||
}catch(e){
|
||||
emit('toDataURL', {
|
||||
file,
|
||||
msg: e
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
function emit(event, data) {
|
||||
postMessage({
|
||||
event,
|
||||
data
|
||||
});
|
||||
};
|
||||
function postMessage(data) {
|
||||
uni.postMessage({
|
||||
data
|
||||
});
|
||||
};
|
||||
// render({
|
||||
// content: ['Lime UI'],
|
||||
// // rotate: -22,
|
||||
// // baseSize: 2,
|
||||
// // fontGap: 3
|
||||
// })
|
||||
</script>
|
||||
</body>
|
||||
</html>
|