123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889 |
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
- /* eslint-disable */
- var logUtils = require('./log.js');
- var hasProxy = typeof Proxy !== 'undefined';
- var _Proxy = function _Proxy() {};
- if (hasProxy) {
- _Proxy = Proxy;
- }
- module.exports = _objectSpread(_objectSpread({}, logUtils), {}, {
- nextUid: function nextUid() {
- var len = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 8;
- return Math.random().toString(36).substr(len + 1);
- },
- parseSelector: function parseSelector(sel) {
- var ret = sel;
- if (sel.indexOf('>>>') !== -1) {
- console.warn('支付宝不支持跨自定义组件的后代选择器,已降级');
- var arr = sel.split('>>>');
- ret = arr[arr.length - 1].trim();
- }
- return ret;
- },
- /**
- * defineGetter
- */
- defineGetter: function defineGetter() {
- var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var descObj = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- var cb = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function () {};
- if (!hasProxy) {
- return obj;
- }
- return new _Proxy(obj, {
- get: function get(target, attr) {
- if (typeof attr === 'string' && descObj[attr] && descObj[attr].type === 0) {
- cb && cb(target, attr);
- }
- return target[attr];
- }
- });
- },
- /**
- * sourceObj : 要操作对象
- * wxAttr: 微信key值
- * alipayAttr: 支付宝key值
- **/
- objectMap: function objectMap() {
- var sourceObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var wxAttr = arguments.length > 1 ? arguments[1] : undefined;
- var alipayAttr = arguments.length > 2 ? arguments[2] : undefined;
- if (!hasProxy) {
- Object.defineProperty(sourceObj, wxAttr, {
- get: function get() {
- return sourceObj[alipayAttr];
- }
- });
- return sourceObj;
- }
- return new _Proxy(sourceObj, {
- get: function get(target, attr) {
- if (attr === wxAttr) {
- return target[alipayAttr];
- }
- }
- });
- },
- // 类型转换
- changeType: function changeType(str) {
- var hexA = new Array(0);
- if (typeof attr === 'string') {
- // 十六进制字符串转字节数组
- var pos = 0;
- var len = str.length;
- if (len % 2 !== 0) {
- return null;
- }
- len /= 2;
- for (var i = 0; i < len; i++) {
- var s = str.substr(pos, 2);
- var v = parseInt(s, 16);
- hexA.push(v);
- pos += 2;
- }
- return hexA;
- }
- },
- // https://github.com/wandergis/coordtransform/blob/master/index.js
- gcj02towgs84: function gcj02towgs84(_lng, _lat) {
- var lat = +_lat;
- var lng = +_lng;
- var ee = 0.00669342162296594323;
- var a = 6378245.0;
- if (out_of_china(lng, lat)) {
- return [lng, lat];
- } else {
- var dlat = transformlat(lng - 105.0, lat - 35.0);
- var dlng = transformlng(lng - 105.0, lat - 35.0);
- var radlat = lat / 180.0 * Math.PI;
- var magic = Math.sin(radlat);
- magic = 1 - ee * magic * magic;
- var sqrtmagic = Math.sqrt(magic);
- dlat = dlat * 180.0 / (a * (1 - ee) / (magic * sqrtmagic) * Math.PI);
- dlng = dlng * 180.0 / (a / sqrtmagic * Math.cos(radlat) * Math.PI);
- var mglat = lat + dlat;
- var mglng = lng + dlng;
- return [lng * 2 - mglng, lat * 2 - mglat];
- }
- },
- ab2hex: function ab2hex(buffer) {
- var hexArr = Array.prototype.map.call(new Uint8Array(buffer), function (bit) {
- return "00".concat(bit.toString(16)).slice(-2);
- });
- return hexArr.join('');
- },
- /**
- * change attr for object
- * replace attr by newAttr
- */
- changeObjAttr: function changeObjAttr() {
- var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var attr = arguments.length > 1 ? arguments[1] : undefined;
- var newAttr = arguments.length > 2 ? arguments[2] : undefined;
- if (obj[attr] !== undefined) {
- obj[newAttr] = obj[attr];
- delete obj[attr];
- } else {
- console.warn("".concat(attr, " attribute is missing!"));
- }
- return obj;
- },
- fnAppClass: fnAppClass,
- browserPath: browserPath,
- mapAuthSetting: mapAuthSetting
- });
- function out_of_china(lng, lat) {
- // 纬度3.86~53.55,经度73.66~135.05
- return !(lng > 73.66 && lng < 135.05 && lat > 3.86 && lat < 53.55);
- }
- function transformlat(lng, lat) {
- var ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * Math.sqrt(Math.abs(lng));
- ret += (20.0 * Math.sin(6.0 * lng * Math.PI) + 20.0 * Math.sin(2.0 * lng * Math.PI)) * 2.0 / 3.0;
- ret += (20.0 * Math.sin(lat * Math.PI) + 40.0 * Math.sin(lat / 3.0 * Math.PI)) * 2.0 / 3.0;
- ret += (160.0 * Math.sin(lat / 12.0 * Math.PI) + 320 * Math.sin(lat * Math.PI / 30.0)) * 2.0 / 3.0;
- return ret;
- }
- function transformlng(lng, lat) {
- var ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * Math.sqrt(Math.abs(lng));
- ret += (20.0 * Math.sin(6.0 * lng * Math.PI) + 20.0 * Math.sin(2.0 * lng * Math.PI)) * 2.0 / 3.0;
- ret += (20.0 * Math.sin(lng * Math.PI) + 40.0 * Math.sin(lng / 3.0 * Math.PI)) * 2.0 / 3.0;
- ret += (150.0 * Math.sin(lng / 12.0 * Math.PI) + 300.0 * Math.sin(lng / 30.0 * Math.PI)) * 2.0 / 3.0;
- return ret;
- }
- function fnAppClass() {
- var fn = {
- $data: {},
- add: function add(key) {
- var cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
- fn.$data[key] = fn.$data[key] || [];
- fn.$data[key].push(cb);
- return fn;
- },
- insert: function insert(key) {
- var cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
- fn.$data[key] = fn.$data[key] || [];
- fn.$data[key].unshift(cb);
- },
- getFn: function getFn(key) {
- return fn.$data[key];
- },
- bind: function bind(key) {
- var ctx = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- fn.$data[key] = fn.$data[key] || [];
- fn.add(key, ctx[key]);
- ctx[key] = function () {
- for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {
- params[_key] = arguments[_key];
- }
- var self = this;
- fn.getFn(key).forEach(function (cb) {
- cb.apply(self, params);
- });
- };
- }
- };
- return fn;
- }
- function assertPath(path) {
- if (typeof path !== 'string') {
- throw new TypeError("Path must be a string. Received ".concat(JSON.stringify(path)));
- }
- } // Resolves . and .. elements in a path with directory names
- function normalizeStringPosix(path, allowAboveRoot) {
- var res = '';
- var lastSegmentLength = 0;
- var lastSlash = -1;
- var dots = 0;
- var code;
- for (var i = 0; i <= path.length; ++i) {
- if (i < path.length) {
- code = path.charCodeAt(i);
- } else if (code === 47
- /* /*/
- ) {
- break;
- } else {
- code = 47;
- /* /*/
- }
- if (code === 47
- /* /*/
- ) {
- if (lastSlash === i - 1 || dots === 1) {// NOOP
- } else if (lastSlash !== i - 1 && dots === 2) {
- if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46
- /* .*/
- || res.charCodeAt(res.length - 2) !== 46
- /* .*/
- ) {
- if (res.length > 2) {
- var lastSlashIndex = res.lastIndexOf('/');
- if (lastSlashIndex !== res.length - 1) {
- if (lastSlashIndex === -1) {
- res = '';
- lastSegmentLength = 0;
- } else {
- res = res.slice(0, lastSlashIndex);
- lastSegmentLength = res.length - 1 - res.lastIndexOf('/');
- }
- lastSlash = i;
- dots = 0;
- continue;
- }
- } else if (res.length === 2 || res.length === 1) {
- res = '';
- lastSegmentLength = 0;
- lastSlash = i;
- dots = 0;
- continue;
- }
- }
- if (allowAboveRoot) {
- if (res.length > 0) {
- res += '/..';
- } else {
- res = '..';
- }
- lastSegmentLength = 2;
- }
- } else {
- if (res.length > 0) {
- res += "/".concat(path.slice(lastSlash + 1, i));
- } else {
- res = path.slice(lastSlash + 1, i);
- }
- lastSegmentLength = i - lastSlash - 1;
- }
- lastSlash = i;
- dots = 0;
- } else if (code === 46
- /* .*/
- && dots !== -1) {
- ++dots;
- } else {
- dots = -1;
- }
- }
- return res;
- }
- function _format(sep, pathObject) {
- var dir = pathObject.dir || pathObject.root;
- var base = pathObject.base || (pathObject.name || '') + (pathObject.ext || '');
- if (!dir) {
- return base;
- }
- if (dir === pathObject.root) {
- return dir + base;
- }
- return dir + sep + base;
- }
- var posix = {
- // path.resolve([from ...], to)
- resolve: function resolve() {
- var resolvedPath = '';
- var resolvedAbsolute = false;
- var cwd;
- for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {
- var path = void 0;
- if (i >= 0) {
- path = i < 0 || arguments.length <= i ? undefined : arguments[i];
- } else {
- if (cwd === undefined) {
- cwd = process.cwd();
- }
- path = cwd;
- }
- assertPath(path); // Skip empty entries
- if (path.length === 0) {
- continue;
- }
- resolvedPath = "".concat(path, "/").concat(resolvedPath);
- resolvedAbsolute = path.charCodeAt(0) === 47;
- /* /*/
- } // At this point the path should be resolved to a full absolute path, but
- // handle relative paths to be safe (might happen when process.cwd() fails)
- // Normalize the path
- resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);
- if (resolvedAbsolute) {
- if (resolvedPath.length > 0) {
- return "/".concat(resolvedPath);
- }
- return '/';
- } else if (resolvedPath.length > 0) {
- return resolvedPath;
- }
- return '.';
- },
- normalize: function normalize(path) {
- assertPath(path);
- if (path.length === 0) {
- return '.';
- }
- var isAbsolute = path.charCodeAt(0) === 47;
- /* /*/
- var trailingSeparator = path.charCodeAt(path.length - 1) === 47;
- /* /*/
- // Normalize the path
- path = normalizeStringPosix(path, !isAbsolute);
- if (path.length === 0 && !isAbsolute) {
- path = '.';
- }
- if (path.length > 0 && trailingSeparator) {
- path += '/';
- }
- if (isAbsolute) {
- return "/".concat(path);
- }
- return path;
- },
- isAbsolute: function isAbsolute(path) {
- assertPath(path);
- return path.length > 0 && path.charCodeAt(0) === 47;
- /* /*/
- },
- join: function join() {
- if (arguments.length === 0) {
- return '.';
- }
- var joined;
- for (var i = 0; i < arguments.length; ++i) {
- var arg = i < 0 || arguments.length <= i ? undefined : arguments[i];
- assertPath(arg);
- if (arg.length > 0) {
- if (joined === undefined) {
- joined = arg;
- } else {
- joined += "/".concat(arg);
- }
- }
- }
- if (joined === undefined) {
- return '.';
- }
- return posix.normalize(joined);
- },
- relative: function relative(from, to) {
- assertPath(from);
- assertPath(to);
- if (from === to) {
- return '';
- }
- from = posix.resolve(from);
- to = posix.resolve(to);
- if (from === to) {
- return '';
- } // Trim any leading backslashes
- var fromStart = 1;
- for (; fromStart < from.length; ++fromStart) {
- if (from.charCodeAt(fromStart) !== 47
- /* /*/
- ) {
- break;
- }
- }
- var fromEnd = from.length;
- var fromLen = fromEnd - fromStart; // Trim any leading backslashes
- var toStart = 1;
- for (; toStart < to.length; ++toStart) {
- if (to.charCodeAt(toStart) !== 47
- /* /*/
- ) {
- break;
- }
- }
- var toEnd = to.length;
- var toLen = toEnd - toStart; // Compare paths to find the longest common path from root
- var length = fromLen < toLen ? fromLen : toLen;
- var lastCommonSep = -1;
- var i = 0;
- for (; i <= length; ++i) {
- if (i === length) {
- if (toLen > length) {
- if (to.charCodeAt(toStart + i) === 47
- /* /*/
- ) {
- // We get here if `from` is the exact base path for `to`.
- // For example: from='/foo/bar'; to='/foo/bar/baz'
- return to.slice(toStart + i + 1);
- } else if (i === 0) {
- // We get here if `from` is the root
- // For example: from='/'; to='/foo'
- return to.slice(toStart + i);
- }
- } else if (fromLen > length) {
- if (from.charCodeAt(fromStart + i) === 47
- /* /*/
- ) {
- // We get here if `to` is the exact base path for `from`.
- // For example: from='/foo/bar/baz'; to='/foo/bar'
- lastCommonSep = i;
- } else if (i === 0) {
- // We get here if `to` is the root.
- // For example: from='/foo'; to='/'
- lastCommonSep = 0;
- }
- }
- break;
- }
- var fromCode = from.charCodeAt(fromStart + i);
- var toCode = to.charCodeAt(toStart + i);
- if (fromCode !== toCode) {
- break;
- } else if (fromCode === 47
- /* /*/
- ) {
- lastCommonSep = i;
- }
- }
- var out = ''; // Generate the relative path based on the path difference between `to`
- // and `from`
- for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {
- if (i === fromEnd || from.charCodeAt(i) === 47
- /* /*/
- ) {
- if (out.length === 0) {
- out += '..';
- } else {
- out += '/..';
- }
- }
- } // Lastly, append the rest of the destination (`to`) path that comes after
- // the common path parts
- if (out.length > 0) {
- return out + to.slice(toStart + lastCommonSep);
- }
- toStart += lastCommonSep;
- if (to.charCodeAt(toStart) === 47
- /* /*/
- ) {
- ++toStart;
- }
- return to.slice(toStart);
- },
- _makeLong: function _makeLong(path) {
- return path;
- },
- dirname: function dirname(path) {
- assertPath(path);
- if (path.length === 0) {
- return '.';
- }
- var code = path.charCodeAt(0);
- var hasRoot = code === 47;
- /* /*/
- var end = -1;
- var matchedSlash = true;
- for (var i = path.length - 1; i >= 1; --i) {
- code = path.charCodeAt(i);
- if (code === 47
- /* /*/
- ) {
- if (!matchedSlash) {
- end = i;
- break;
- }
- } else {
- // We saw the first non-path separator
- matchedSlash = false;
- }
- }
- if (end === -1) {
- return hasRoot ? '/' : '.';
- }
- if (hasRoot && end === 1) {
- return '//';
- }
- return path.slice(0, end);
- },
- basename: function basename(path, ext) {
- if (ext !== undefined && typeof ext !== 'string') {
- throw new TypeError('"ext" argument must be a string');
- }
- assertPath(path);
- var start = 0;
- var end = -1;
- var matchedSlash = true;
- var i;
- if (ext !== undefined && ext.length > 0 && ext.length <= path.length) {
- if (ext.length === path.length && ext === path) {
- return '';
- }
- var extIdx = ext.length - 1;
- var firstNonSlashEnd = -1;
- for (i = path.length - 1; i >= 0; --i) {
- var code = path.charCodeAt(i);
- if (code === 47
- /* /*/
- ) {
- // If we reached a path separator that was not part of a set of path
- // separators at the end of the string, stop now
- if (!matchedSlash) {
- start = i + 1;
- break;
- }
- } else {
- if (firstNonSlashEnd === -1) {
- // We saw the first non-path separator, remember this index in case
- // we need it if the extension ends up not matching
- matchedSlash = false;
- firstNonSlashEnd = i + 1;
- }
- if (extIdx >= 0) {
- // Try to match the explicit extension
- if (code === ext.charCodeAt(extIdx)) {
- if (--extIdx === -1) {
- // We matched the extension, so mark this as the end of our path
- // component
- end = i;
- }
- } else {
- // Extension does not match, so our result is the entire path
- // component
- extIdx = -1;
- end = firstNonSlashEnd;
- }
- }
- }
- }
- if (start === end) {
- end = firstNonSlashEnd;
- } else if (end === -1) {
- end = path.length;
- }
- return path.slice(start, end);
- }
- for (i = path.length - 1; i >= 0; --i) {
- if (path.charCodeAt(i) === 47
- /* /*/
- ) {
- // If we reached a path separator that was not part of a set of path
- // separators at the end of the string, stop now
- if (!matchedSlash) {
- start = i + 1;
- break;
- }
- } else if (end === -1) {
- // We saw the first non-path separator, mark this as the end of our
- // path component
- matchedSlash = false;
- end = i + 1;
- }
- }
- if (end === -1) {
- return '';
- }
- return path.slice(start, end);
- },
- extname: function extname(path) {
- assertPath(path);
- var startDot = -1;
- var startPart = 0;
- var end = -1;
- var matchedSlash = true; // Track the state of characters (if any) we see before our first dot and
- // after any path separator we find
- var preDotState = 0;
- for (var i = path.length - 1; i >= 0; --i) {
- var code = path.charCodeAt(i);
- if (code === 47
- /* /*/
- ) {
- // If we reached a path separator that was not part of a set of path
- // separators at the end of the string, stop now
- if (!matchedSlash) {
- startPart = i + 1;
- break;
- }
- continue;
- }
- if (end === -1) {
- // We saw the first non-path separator, mark this as the end of our
- // extension
- matchedSlash = false;
- end = i + 1;
- }
- if (code === 46
- /* .*/
- ) {
- // If this is our first dot, mark it as the start of our extension
- if (startDot === -1) {
- startDot = i;
- } else if (preDotState !== 1) {
- preDotState = 1;
- }
- } else if (startDot !== -1) {
- // We saw a non-dot and non-path separator before our dot, so we should
- // have a good chance at having a non-empty extension
- preDotState = -1;
- }
- }
- if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot
- preDotState === 0 || // The (right-most) trimmed path component is exactly '..'
- preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
- return '';
- }
- return path.slice(startDot, end);
- },
- format: function format(pathObject) {
- if (pathObject === null || _typeof(pathObject) !== 'object') {
- throw new TypeError("The \"pathObject\" argument must be of type Object. Received type ".concat(_typeof(pathObject)));
- }
- return _format('/', pathObject);
- },
- parse: function parse(path) {
- assertPath(path);
- var ret = {
- root: '',
- dir: '',
- base: '',
- ext: '',
- name: ''
- };
- if (path.length === 0) {
- return ret;
- }
- var code = path.charCodeAt(0);
- var isAbsolute = code === 47;
- /* /*/
- var start;
- if (isAbsolute) {
- ret.root = '/';
- start = 1;
- } else {
- start = 0;
- }
- var startDot = -1;
- var startPart = 0;
- var end = -1;
- var matchedSlash = true;
- var i = path.length - 1; // Track the state of characters (if any) we see before our first dot and
- // after any path separator we find
- var preDotState = 0; // Get non-dir info
- for (; i >= start; --i) {
- code = path.charCodeAt(i);
- if (code === 47
- /* /*/
- ) {
- // If we reached a path separator that was not part of a set of path
- // separators at the end of the string, stop now
- if (!matchedSlash) {
- startPart = i + 1;
- break;
- }
- continue;
- }
- if (end === -1) {
- // We saw the first non-path separator, mark this as the end of our
- // extension
- matchedSlash = false;
- end = i + 1;
- }
- if (code === 46
- /* .*/
- ) {
- // If this is our first dot, mark it as the start of our extension
- if (startDot === -1) {
- startDot = i;
- } else if (preDotState !== 1) {
- preDotState = 1;
- }
- } else if (startDot !== -1) {
- // We saw a non-dot and non-path separator before our dot, so we should
- // have a good chance at having a non-empty extension
- preDotState = -1;
- }
- }
- if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot
- preDotState === 0 || // The (right-most) trimmed path component is exactly '..'
- preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
- if (end !== -1) {
- if (startPart === 0 && isAbsolute) {
- ret.base = path.slice(1, end);
- ret.name = path.slice(1, end);
- } else {
- ret.base = path.slice(startPart, end);
- ret.name = path.slice(startPart, end);
- }
- }
- } else {
- if (startPart === 0 && isAbsolute) {
- ret.name = path.slice(1, startDot);
- ret.base = path.slice(1, end);
- } else {
- ret.name = path.slice(startPart, startDot);
- ret.base = path.slice(startPart, end);
- }
- ret.ext = path.slice(startDot, end);
- }
- if (startPart > 0) {
- ret.dir = path.slice(0, startPart - 1);
- } else if (isAbsolute) {
- ret.dir = '/';
- }
- return ret;
- },
- sep: '/',
- delimiter: ':',
- win32: null,
- posix: null
- };
- posix.posix = posix;
- function browserPath() {
- return posix;
- }
- function mapAuthSetting(obj) {
- var keys = [['scope.userLocation', 'location'], ['scope.writePhotosAlbum', 'album'], ['scope.camera', 'camera'], ['scope.userInfo', 'userInfo'], ['scope.address', 'aliaddress'], ['scope.werun', 'alipaysports']];
- var authSetting = {};
- keys.forEach(function (item) {
- var value = obj[item[1]];
- if (typeof value !== 'undefined') {
- authSetting[item[0]] = value;
- }
- });
- return authSetting;
- }
|