@wiajs/core 0.1.14 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/core.js CHANGED
@@ -1,13 +1,13 @@
1
1
  /*!
2
- * wia core v0.1.14
2
+ * wia core v0.1.16
3
3
  * (c) 2021 Sibyl Yu
4
4
  * @license MIT
5
5
  */
6
6
  (function (global, factory) {
7
7
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
8
8
  typeof define === 'function' && define.amd ? define(['exports'], factory) :
9
- (global = global || self, factory(global['@wiajs/Core'] = {}));
10
- }(this, function (exports) { 'use strict';
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@wiajs/Core"] = {}));
10
+ })(this, (function (exports) { 'use strict';
11
11
 
12
12
  /**
13
13
  * promise version ajax get、post
@@ -120,7 +120,8 @@
120
120
  function _inheritsLoose(subClass, superClass) {
121
121
  subClass.prototype = Object.create(superClass.prototype);
122
122
  subClass.prototype.constructor = subClass;
123
- subClass.__proto__ = superClass;
123
+
124
+ _setPrototypeOf(subClass, superClass);
124
125
  }
125
126
 
126
127
  function _setPrototypeOf(o, p) {
@@ -138,7 +139,7 @@
138
139
  if (typeof Proxy === "function") return true;
139
140
 
140
141
  try {
141
- Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));
142
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
142
143
  return true;
143
144
  } catch (e) {
144
145
  return false;
@@ -1127,7 +1128,7 @@
1127
1128
  var $clickedEl = $(e.target);
1128
1129
  var $clickedLinkEl = $clickedEl.closest('a');
1129
1130
  var isLink = $clickedLinkEl.length > 0;
1130
- var url = isLink && $clickedLinkEl.attr('href'); // call Modules Clicks
1131
+ isLink && $clickedLinkEl.attr('href'); // call Modules Clicks
1131
1132
 
1132
1133
  Object.keys(app.modules).forEach(function (moduleName) {
1133
1134
  var moduleClicks = app.modules[moduleName].clicks;
@@ -1253,8 +1254,8 @@
1253
1254
  }
1254
1255
  };
1255
1256
 
1256
- var Support = $.support;
1257
- var Device = $.device;
1257
+ var Support$1 = $.support;
1258
+ var Device$1 = $.device;
1258
1259
  /**
1259
1260
  * 应用类,每个wia应用从该类继承,由 首页加载创建或者路由创建
1260
1261
  */
@@ -1270,8 +1271,8 @@
1270
1271
 
1271
1272
  var app = _assertThisInitialized(_this);
1272
1273
 
1273
- app.device = Device;
1274
- app.support = Support; // Default
1274
+ app.device = Device$1;
1275
+ app.support = Support$1; // Default
1275
1276
 
1276
1277
  var def = {
1277
1278
  version: '0.0.1',
@@ -1305,6 +1306,7 @@
1305
1306
  language: app.params.language,
1306
1307
  // Root
1307
1308
  root: $rootEl,
1309
+ $el: $rootEl,
1308
1310
  cfg: app.params.cfg,
1309
1311
  // app config
1310
1312
  api: app.params.api,
@@ -1314,8 +1316,8 @@
1314
1316
  // Theme
1315
1317
  theme: function getTheme() {
1316
1318
  if (app.params.theme === 'auto') {
1317
- if (Device.ios) return 'ios';
1318
- if (Device.desktop) return 'aurora';
1319
+ if (Device$1.ios) return 'ios';
1320
+ if (Device$1.desktop) return 'aurora';
1319
1321
  return 'md';
1320
1322
  }
1321
1323
 
@@ -1331,9 +1333,9 @@
1331
1333
  }
1332
1334
 
1333
1335
  app.touchEvents = {
1334
- start: Support.touch ? 'touchstart' : Support.pointerEvents ? 'pointerdown' : 'mousedown',
1335
- move: Support.touch ? 'touchmove' : Support.pointerEvents ? 'pointermove' : 'mousemove',
1336
- end: Support.touch ? 'touchend' : Support.pointerEvents ? 'pointerup' : 'mouseup'
1336
+ start: Support$1.touch ? 'touchstart' : Support$1.pointerEvents ? 'pointerdown' : 'mousedown',
1337
+ move: Support$1.touch ? 'touchmove' : Support$1.pointerEvents ? 'pointermove' : 'mousemove',
1338
+ end: Support$1.touch ? 'touchend' : Support$1.pointerEvents ? 'pointerup' : 'mouseup'
1337
1339
  }; // 加载use插入的模块类,每个模块作为app的一个属性,合并到实例。
1338
1340
  // 模块包括相关属性及方法(如:create、get、destroy)
1339
1341
  // 调用每个模块的 create 方法
@@ -1370,7 +1372,7 @@
1370
1372
 
1371
1373
 
1372
1374
  function init() {
1373
- if (Device.cordova && app.params.initOnDeviceReady) {
1375
+ if (Device$1.cordova && app.params.initOnDeviceReady) {
1374
1376
  $(document).on('deviceready', function () {
1375
1377
  app.init();
1376
1378
  });
@@ -1466,7 +1468,7 @@
1466
1468
  if (app.initialized) return app;
1467
1469
  $.App = App;
1468
1470
 
1469
- if (Device.ios && Device.webView) {
1471
+ if (Device$1.ios && Device$1.webView) {
1470
1472
  // Strange hack required for iOS 8 webview to work on inputs
1471
1473
  window.addEventListener('touchstart', function () {});
1472
1474
  }
@@ -1498,11 +1500,11 @@
1498
1500
 
1499
1501
  $('html').removeClass('ios md aurora').addClass(app.theme); // iOS Translucent
1500
1502
 
1501
- if (app.params.iosTranslucentBars && app.theme === 'ios' && Device.ios) {
1503
+ if (app.params.iosTranslucentBars && app.theme === 'ios' && Device$1.ios) {
1502
1504
  $('html').addClass('ios-translucent-bars');
1503
1505
  }
1504
1506
 
1505
- if (app.params.iosTranslucentModals && app.theme === 'ios' && Device.ios) {
1507
+ if (app.params.iosTranslucentModals && app.theme === 'ios' && Device$1.ios) {
1506
1508
  $('html').addClass('ios-translucent-modals');
1507
1509
  } // Init class
1508
1510
 
@@ -1580,24 +1582,24 @@
1580
1582
  var metaStatusbar = document.querySelector('meta[name="apple-mobile-web-app-status-bar-style"]');
1581
1583
  if (!html) return;
1582
1584
 
1583
- if (Device.standalone && Device.ios && metaStatusbar && metaStatusbar.content === 'black-translucent') {
1585
+ if (Device$1.standalone && Device$1.ios && metaStatusbar && metaStatusbar.content === 'black-translucent') {
1584
1586
  classNames.push('device-full-viewport');
1585
1587
  } // Pixel Ratio
1586
1588
 
1587
1589
 
1588
- classNames.push("device-pixel-ratio-" + Math.floor(Device.pixelRatio)); // OS classes
1590
+ classNames.push("device-pixel-ratio-" + Math.floor(Device$1.pixelRatio)); // OS classes
1589
1591
 
1590
- if (Device.os && !Device.desktop) {
1591
- classNames.push("device-" + Device.os);
1592
- } else if (Device.desktop) {
1592
+ if (Device$1.os && !Device$1.desktop) {
1593
+ classNames.push("device-" + Device$1.os);
1594
+ } else if (Device$1.desktop) {
1593
1595
  classNames.push('device-desktop');
1594
1596
 
1595
- if (Device.os) {
1596
- classNames.push("device-" + Device.os);
1597
+ if (Device$1.os) {
1598
+ classNames.push("device-" + Device$1.os);
1597
1599
  }
1598
1600
  }
1599
1601
 
1600
- if (Device.cordova || Device.phonegap) {
1602
+ if (Device$1.cordova || Device$1.phonegap) {
1601
1603
  classNames.push('device-cordova');
1602
1604
  } // Add html classes
1603
1605
 
@@ -1620,8 +1622,8 @@
1620
1622
  }; // app 加载到 app实例的一些扩展模块
1621
1623
 
1622
1624
 
1623
- App.support = Support;
1624
- App.device = Device;
1625
+ App.support = Support$1;
1626
+ App.device = Device$1;
1625
1627
  App.utils = Utils; // 添加应用缺省模块
1626
1628
 
1627
1629
  App.use([Resize, // 控制屏幕大小
@@ -1858,7 +1860,7 @@
1858
1860
 
1859
1861
  _this.view = null; // 页面的div层$Dom对象,router创建实例时赋值
1860
1862
 
1861
- _this.el = null; // dom
1863
+ _this.el = null; // $dom
1862
1864
 
1863
1865
  _this.$el = null; // $dom
1864
1866
 
@@ -1900,15 +1902,43 @@
1900
1902
  // $.assign(this, {page, param, back});
1901
1903
  // $.assign(this.data, param);
1902
1904
  // 隐藏所有模板
1905
+ this.init();
1903
1906
  this.emit('local::ready pageReady', view, param, back);
1904
- view.qus('[name$=-tp]').hide();
1907
+ }
1908
+ /**
1909
+ * 对页面进行初始化处理,或页面内容动态变更时,对局部页面容器进行初始化
1910
+ * 具备name属性的dom节点直接赋值给页面view
1911
+ * 只挂载一个,多个同名name,最后一个起作用,因此一个页面内,name不要重复
1912
+ * 同节点多次调用不覆盖,同名不同dom节点,覆盖
1913
+ * 覆盖后,原直接节点属性的 bind 会失效,需真的新的$dom重新bind
1914
+ * @param {*} v dom 容器,默认为页面实例的view
1915
+ */
1916
+ ;
1917
+
1918
+ _proto.init = function init(v) {
1919
+ var view = this.view;
1920
+ v = v ? $(v) : view; // 页面上带name属性节点,直接作为page.view的属性,方便页面代码直接调用
1921
+
1922
+ var ns = v.qus('[name]');
1923
+ ns === null || ns === void 0 ? void 0 : ns.forEach(function (n) {
1924
+ var $n = $(n);
1925
+ var name = $n.attr('name');
1926
+ if (!view[name] || view[name].dom !== n) view[name] = $n;
1927
+ }); // 隐藏所有模板
1928
+
1929
+ v.qus('[name$=-tp]').hide(); // 防止空链接,刷新页面
1930
+
1931
+ v.qus('a[href=""]').attr('href', 'javascript:;');
1905
1932
  } // 显示已加载的页面
1906
1933
  // view:页面Dom层,param:参数
1907
1934
  ;
1908
1935
 
1909
1936
  _proto.show = function show(view, param) {
1910
- // 防止空链接,刷新页面
1911
- view.qus('a[href=""]').attr('href', 'javascript:;');
1937
+ // 隐藏所有模板
1938
+ view.qus('[name$=-tp]').hide(); // 防止空链接,刷新页面
1939
+
1940
+ view.qus('a[href=""]').attr('href', 'javascript:;'); // this.init();
1941
+
1912
1942
  if (this.reset) this.reset();
1913
1943
  this.emit('local::show pageShow', view, param);
1914
1944
  } // 回退显示已加载的页面
@@ -1916,7 +1946,9 @@
1916
1946
  ;
1917
1947
 
1918
1948
  _proto.back = function back(view, param) {
1919
- // 防止空链接,刷新页面
1949
+ // 隐藏所有模板
1950
+ view.qus('[name$=-tp]').hide(); // 防止空链接,刷新页面
1951
+
1920
1952
  view.qus('a[href=""]').attr('href', 'javascript:;');
1921
1953
  this.emit('local::back pageBack', view, param);
1922
1954
  };
@@ -2170,15 +2202,49 @@
2170
2202
  return Modal;
2171
2203
  }(Event);
2172
2204
 
2205
+ // replace react, use by @babel/plugin-transform-react-jsx
2206
+
2207
+ /* eslint-disable prefer-rest-params */
2208
+ function jsx(tag, props) {
2209
+ var attrs = props || {};
2210
+
2211
+ for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
2212
+ args[_key - 2] = arguments[_key];
2213
+ }
2214
+
2215
+ var children = args || [];
2216
+ var attrsString = Object.keys(attrs).map(function (attr) {
2217
+ if (attr[0] === '_') {
2218
+ if (attrs[attr]) return attr.replace('_', '');
2219
+ return '';
2220
+ }
2221
+
2222
+ return attr + "=\"" + attrs[attr] + "\"";
2223
+ }).filter(function (attr) {
2224
+ return !!attr;
2225
+ }).join(' ');
2226
+
2227
+ if (['path', 'img', 'circle', 'polygon', 'line', 'input'].indexOf(tag) >= 0) {
2228
+ return ("<" + tag + " " + attrsString + " />").trim();
2229
+ }
2230
+
2231
+ var childrenContent = children.filter(function (c) {
2232
+ return !!c;
2233
+ }).map(function (c) {
2234
+ return Array.isArray(c) ? c.join('') : c;
2235
+ }).join('');
2236
+ return ("<" + tag + " " + attrsString + ">" + childrenContent + "</" + tag + ">").trim();
2237
+ }
2238
+
2173
2239
  // export {default as Device} from './device';
2174
2240
 
2175
- var Support$1 = $.support;
2176
- var Device$1 = $.device;
2241
+ var Support = $.support;
2242
+ var Device = $.device;
2177
2243
 
2178
2244
  exports.Ajax = Ajax;
2179
2245
  exports.App = App;
2180
2246
  exports.Constructors = Constructors;
2181
- exports.Device = Device$1;
2247
+ exports.Device = Device;
2182
2248
  exports.Event = Event;
2183
2249
  exports.Lazy = Lazy;
2184
2250
  exports.Modal = Modal;
@@ -2187,8 +2253,9 @@
2187
2253
  exports.Page = Page;
2188
2254
  exports.Resize = Resize;
2189
2255
  exports.SW = SW$1;
2190
- exports.Support = Support$1;
2256
+ exports.Support = Support;
2191
2257
  exports.Utils = Utils;
2258
+ exports.jsx = jsx;
2192
2259
  exports.loadModule = loadModule;
2193
2260
 
2194
2261
  Object.defineProperty(exports, '__esModule', { value: true });
package/dist/core.min.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * wia core v0.1.14
2
+ * wia core v0.1.16
3
3
  * (c) 2021 Sibyl Yu
4
4
  * @license MIT
5
5
  */
6
- var e,t;e=this,t=function(e){"use strict";var t=function(){function e(){}var t=e.prototype;return t.post=function(e,t){return new Promise((function(n,o){var r=$.getXhr();r.onreadystatechange=function(){4===r.readyState&&(200===r.status?n(r.responseText):o(new Error(r.statusText),r.responseText))},r.open("POST",e,!0);var i=t;"object"==typeof t&&(i=function(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n+"="+e[n]);return t.sort().join("&")}(t)),r.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),r.send(i)}))},t.postForm=function(e,t){return new Promise((function(n,o){var r=$.getXhr();r.onreadystatechange=function(){4===r.readyState&&(200===r.status?n(null,r.responseText):o(new Error(r.status),r.responseText))},r.open("POST",e,!0),r.send(t)}))},t.get=function(e,t){return $.get(e,t)},e}();function n(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function o(e,t,o){return t&&n(e.prototype,t),o&&n(e,o),e}function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function a(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function s(e,t,n){return(s=a()?Reflect.construct:function(e,t,n){var o=[null];o.push.apply(o,t);var r=new(Function.bind.apply(e,o));return n&&i(r,n.prototype),r}).apply(null,arguments)}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var u=1,l={uniqueNumber:function(){return u+=1},id:function(e,t){return void 0===e&&(e="xxxxxxxxxx"),void 0===t&&(t="0123456789abcdef"),$.uid(e,t)},mdPreloaderContent:'\n <span class="preloader-inner">\n\t\t\t<svg viewBox="0 0 36 36">\n\t\t\t\t<circle cx="18" cy="18" r="16"></circle>\n\t\t\t</svg>\n </span>\n '.trim(),iosPreloaderContent:('\n <span class="preloader-inner">\n\t\t\t'+[0,1,2,3,4,5,6,7].map((function(){return'<span class="preloader-inner-line"></span>'})).join("")+"\n </span>\n ").trim(),auroraPreloaderContent:'\n <span class="preloader-inner">\n <span class="preloader-inner-circle"></span>\n </span>\n ',eventNameToColonCase:function(e){var t;return e.split("").map((function(e,n){return e.match(/[A-Z]/)&&0!==n&&!t?(t=!0,":"+e.toLowerCase()):e.toLowerCase()})).join("")},deleteProps:function(e){$.deleteProps(e)},nextTick:function(e,t){return void 0===t&&(t=0),setTimeout(e,t)},nextFrame:function(e){return $.nextFrame(e)},now:function(){return Date.now()},requestAnimationFrame:function(e){return $.requestAnimationFrame(e)},cancelAnimationFrame:function(e){return $.cancelAnimationFrame(e)},parseUrlQuery:function(e){return $.urlParam(e)},getTranslate:function(e,t){return void 0===t&&(t="x"),$.getTranslate(e,t)},serializeObject:function(e,t){if(void 0===t&&(t=[]),"string"==typeof e)return e;var n,o=[];function r(e){if(t.length>0){for(var n="",o=0;o<t.length;o+=1)n+=0===o?t[o]:"["+encodeURIComponent(t[o])+"]";return n+"["+encodeURIComponent(e)+"]"}return encodeURIComponent(e)}function i(e){return encodeURIComponent(e)}return Object.keys(e).forEach((function(a){var s;if(Array.isArray(e[a])){s=[];for(var c=0;c<e[a].length;c+=1)Array.isArray(e[a][c])||"object"!=typeof e[a][c]?s.push(r(a)+"[]="+i(e[a][c])):((n=t.slice()).push(a),n.push(String(c)),s.push(l.serializeObject(e[a][c],n)));s.length>0&&o.push(s.join("&"))}else null===e[a]||""===e[a]?o.push(r(a)+"="):"object"==typeof e[a]?((n=t.slice()).push(a),""!==(s=l.serializeObject(e[a],n))&&o.push(s)):void 0!==e[a]&&""!==e[a]?o.push(r(a)+"="+i(e[a])):""===e[a]&&o.push(r(a))})),o.join("&")},isObject:function(e){return"object"==typeof e&&null!==e&&e.constructor&&e.constructor===Object},merge:function(){var e;return(e=$).merge.apply(e,arguments)},extend:function(){for(var e,t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];var r=n[0];return n.splice(0,1),(e=$).assign.apply(e,[r].concat(n))},bindMethods:function(e,t){var n=this;Object.keys(t).forEach((function(o){n.isObject(t[o])&&Object.keys(t[o]).forEach((function(n){"function"==typeof t[o][n]&&(t[o][n]=t[o][n].bind(e))})),e[o]=t[o]}))},colorHexToRgb:function(e){var t=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,n,o){return t+t+n+n+o+o})),n=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return n?n.slice(1).map((function(e){return parseInt(e,16)})):null},colorRgbToHex:function(e,t,n){return"#"+[e,t,n].map((function(e){var t=e.toString(16);return 1===t.length?"0"+t:t})).join("")},colorRgbToHsl:function(e,t,n){e/=255,t/=255,n/=255;var o,r=Math.max(e,t,n),i=Math.min(e,t,n),a=r-i;0===a?o=0:r===e?o=(t-n)/a%6:r===t?o=(n-e)/a+2:r===n&&(o=(e-t)/a+4);var s=(i+r)/2;return o<0&&(o=6+o),[60*o,0===a?0:a/(1-Math.abs(2*s-1)),s]},colorHslToRgb:function(e,t,n){var o,r=(1-Math.abs(2*n-1))*t,i=e/60,a=r*(1-Math.abs(i%2-1));Number.isNaN(e)||void 0===e?o=[0,0,0]:i<=1?o=[r,a,0]:i<=2?o=[a,r,0]:i<=3?o=[0,r,a]:i<=4?o=[0,a,r]:i<=5?o=[a,0,r]:i<=6&&(o=[r,0,a]);var s=n-r/2;return o.map((function(e){return Math.max(0,Math.min(255,Math.round(255*(e+s))))}))},colorHsbToHsl:function(e,t,n){var o={h:e,s:0,l:0},r=t,i=n;return o.l=(2-r)*i/2,o.s=o.l&&o.l<1?r*i/(o.l<.5?2*o.l:2-2*o.l):o.s,[o.h,o.s,o.l]},colorHslToHsb:function(e,t,n){var o={h:e,s:0,b:0},r=n,i=t*(r<.5?r:1-r);return o.b=r+i,o.s=r>0?2*i/o.b:o.s,[o.h,o.s,o.b]},colorThemeCSSProperties:function(){for(var e,t,n=arguments.length,o=new Array(n),r=0;r<n;r++)o[r]=arguments[r];if(1===o.length?(e=o[0],t=l.colorHexToRgb(e)):3===o.length&&(t=o,e=l.colorRgbToHex.apply(l,t)),!t)return{};var i=l.colorRgbToHsl.apply(l,t),a=[i[0],i[1],Math.max(0,i[2]-.08)],s=[i[0],i[1],Math.max(0,i[2]+.08)],c=l.colorRgbToHex.apply(l,l.colorHslToRgb.apply(l,a)),u=l.colorRgbToHex.apply(l,l.colorHslToRgb.apply(l,s));return{"--f7-theme-color":e,"--f7-theme-color-rgb":t.join(", "),"--f7-theme-color-shade":c,"--f7-theme-color-tint":u}}},d=function(){function e(e,t){void 0===e&&(e={}),void 0===t&&(t=[]);var n=this;n.params=e,n.eventsParents=t,n.eventsListeners={},n.params&&n.params.on&&Object.keys(n.params.on).forEach((function(e){n.on(e,n.params.on[e])}))}var t=e.prototype;return t.on=function(e,t,n){var o=this;if("function"!=typeof t)return o;var r=n?"unshift":"push";return e.split(" ").forEach((function(e){o.eventsListeners[e]||(o.eventsListeners[e]=[]),o.eventsListeners[e][r](t)})),o},t.once=function(e,t,n){var o=this;if("function"!=typeof t)return o;function r(){o.off(e,r),r.proxy&&delete r.proxy;for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];t.apply(o,i)}return r.proxy=t,o.on(e,r,n)},t.off=function(e,t){var n=this;return n.eventsListeners?(e.split(" ").forEach((function(e){void 0===t?n.eventsListeners[e]=[]:n.eventsListeners[e]&&n.eventsListeners[e].forEach((function(o,r){(o===t||o.proxy&&o.proxy===t)&&n.eventsListeners[e].splice(r,1)}))})),n):n},t.emit=function(){var e,t,n,o,r=this;if(!r.eventsListeners)return r;for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];"string"==typeof a[0]||Array.isArray(a[0])?(e=a[0],t=a.slice(1,a.length),n=r,o=r.eventsParents):(e=a[0].events,t=a[0].data,n=a[0].context||r,o=a[0].local?[]:a[0].parents||r.eventsParents);var c=Array.isArray(e)?e:e.split(" "),u=c.map((function(e){return e.replace("local::","")})),l=c.filter((function(e){return e.indexOf("local::")<0}));return u.forEach((function(e){if(r.eventsListeners&&r.eventsListeners[e]){var o=[];r.eventsListeners[e].forEach((function(e){o.push(e)})),o.forEach((function(e){e.apply(n,t)}))}})),o&&o.length>0&&o.forEach((function(e){e.emit.apply(e,[l].concat(t))})),r},e}(),p=function(e){function t(t,n){return void 0===t&&(t={}),void 0===n&&(n=[]),e.call(this,t,n)||this}r(t,e);var n=t.prototype;return n.useModuleParams=function(e,t){if(e.params){var n={};Object.keys(e.params).forEach((function(e){void 0!==t[e]&&(n[e]=$.extend({},t[e]))})),$.extend(t,e.params),Object.keys(n).forEach((function(e){$.extend(t[e],n[e])}))}},n.useModulesParams=function(e){var t=this;t.modules&&Object.keys(t.modules).forEach((function(n){var o=t.modules[n];o.params&&$.extend(e,o.params)}))},n.useModule=function(e,t){void 0===e&&(e=""),void 0===t&&(t={});var n=this;if(n.modules){var o="string"==typeof e?n.modules[e]:e;o&&(o.instance&&Object.keys(o.instance).forEach((function(e){var t=o.instance[e];n[e]="function"==typeof t?t.bind(n):t})),o.on&&n.on&&Object.keys(o.on).forEach((function(e){n.on(e,o.on[e])})),o.vnode&&(n.vnodeHooks||(n.vnodeHooks={}),Object.keys(o.vnode).forEach((function(e){Object.keys(o.vnode[e]).forEach((function(t){var r=o.vnode[e][t];n.vnodeHooks[t]||(n.vnodeHooks[t]={}),n.vnodeHooks[t][e]||(n.vnodeHooks[t][e]=[]),n.vnodeHooks[t][e].push(r.bind(n))}))}))),o.create&&o.create.bind(n)(t))}},n.useModules=function(e){void 0===e&&(e={});var t=this;t.modules&&Object.keys(t.modules).forEach((function(n){var o=e[n]||{};t.useModule(n,o)}))},t.installModule=function(e){var t=this;t.prototype.modules||(t.prototype.modules={});var n=e.name||Object.keys(t.prototype.modules).length+"_"+$.now();if(t.prototype.modules[n]=e,e.proto&&Object.keys(e.proto).forEach((function(n){t.prototype[n]=e.proto[n]})),e.static&&Object.keys(e.static).forEach((function(n){t[n]=e.static[n]})),e.install){for(var o=arguments.length,r=new Array(o>1?o-1:0),i=1;i<o;i++)r[i-1]=arguments[i];e.install.apply(t,r)}return t},t.use=function(e){var t=this;if(Array.isArray(e))return e.forEach((function(e){return t.installModule(e)})),t;for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];return t.installModule.apply(t,[e].concat(o))},o(t,null,[{key:"components",set:function(e){this.use&&this.use(e)}}]),t}(d);function f(e){void 0===e&&(e={});var t=e,n=t.defaultSelector,o=t.constructor,r=t.domProp,i=t.app,a=t.addMethods,c={create:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return s(o,i?[i].concat(t):t)},get:function(e){if(void 0===e&&(e=n),e instanceof o)return e;var t=$(e);return 0!==t.length?t[0][r]:void 0},destroy:function(e){var t=c.get(e);if(t&&t.destroy)return t.destroy()}};return a&&Array.isArray(a)&&a.forEach((function(e){c[e]=function(t){void 0===t&&(t=n);for(var o=c.get(t),r=arguments.length,i=new Array(r>1?r-1:0),a=1;a<r;a++)i[a-1]=arguments[a];if(o&&o[e])return o[e].apply(o,i)}})),c}function h(e){void 0===e&&(e={});var t=e,n=t.defaultSelector,o=t.constructor,r=t.app;return $.extend(f({defaultSelector:n,constructor:o,app:r,domProp:"f7Modal"}),{open:function(e,t){var n=$(e),i=n[0].f7Modal;return i||(i=new o(r,{el:n})),i.open(t)},close:function(e,t){void 0===e&&(e=n);var i=$(e);if(0!==i.length){var a=i[0].f7Modal;return a||(a=new o(r,{el:i})),a.close(t)}}})}var m=[];function v(e){var t=this;return new Promise((function(n,o){var r,i,a,s=t.instance;if(e){if("string"==typeof e){var c=e.match(/([a-z0-9-]*)/i);if(e.indexOf(".")<0&&c&&c[0].length===e.length){if(!s||s&&!s.params.lazyModulesPath)return void o(new Error('Wia: "lazyModulesPath" app parameter must be specified to fetch module by name'));r=s.params.lazyModulesPath+"/"+e+".js"}else r=e}else"function"==typeof e?a=e:i=e;if(a){var u=a(t,!1);if(!u)return void o(new Error("Wia: Can't find Wia component in specified component function"));if(t.prototype.modules&&t.prototype.modules[u.name])return void n();f(u),n()}if(i){var l=i;if(!l)return void o(new Error("Wia: Can't find Wia component in specified component"));if(t.prototype.modules&&t.prototype.modules[l.name])return void n();f(l),n()}if(r){if(m.indexOf(r)>=0)return void n();m.push(r);var d=new Promise((function(e,n){t.request.get(r,(function(o){var i="wia_component_loader_callback_"+$.id(),a=document.createElement("script");a.innerHTML="window."+i+" = function (Wia, WiaAutoInstallComponent) {return "+o.trim()+"}",$("head").append(a);var s=window[i];delete window[i],$(a).remove();var c=s(t,!1);c?(t.prototype.modules&&t.prototype.modules[c.name]||f(c),e()):n(new Error("Wia: Can't find Wia component in "+r+" file"))}),(function(e,t){n(e,t)}))})),p=new Promise((function(e){t.request.get(r.replace(".js",s.rtl?".rtl.css":".css"),(function(t){var n=document.createElement("style");n.innerHTML=t,$("head").append(n),e()}),(function(){e()}))}));Promise.all([d,p]).then((function(){n()})).catch((function(e){o(e)}))}}else o(new Error("Wia: Lazy module must be specified"));function f(e){t.use(e),s&&(s.useModuleParams(e,s.params),s.useModule(e))}}))}var y={name:"resize",instance:{getSize:function(){if(!this.root[0])return{width:0,height:0,left:0,top:0};var e=this.root.offset(),t=[this.root[0].offsetWidth,this.root[0].offsetHeight,e.left,e.top],n=t[0],o=t[1],r=t[2],i=t[3];return this.width=n,this.height=o,this.left=r,this.top=i,{width:n,height:o,left:r,top:i}}},on:{init:function(){var e=this;e.getSize(),window.addEventListener("resize",(function(){e.emit("resize")}),!1),window.addEventListener("orientationchange",(function(){e.emit("orientationchange")}))},orientationchange:function(){this.device.ipad&&(document.body.scrollLeft=0,setTimeout((function(){document.body.scrollLeft=0}),0))},resize:function(){this.getSize()}}};function g(e){var t,n,o;t=function(t){e.emit({events:"click",data:[t]})},$.support.touch?(document.addEventListener("touchstart",(function(e){n=e.changedTouches[0].clientX,o=e.changedTouches[0].clientY}),!0),document.addEventListener("touchend",(function(e){var r=Math.abs(e.changedTouches[0].clientX-n),i=Math.abs(e.changedTouches[0].clientY-o);r<=5&&i<=5&&t.call(this,e)}),!0)):document.addEventListener("click",t,!0),e.on("click",(function(t){var n=$(t.target),o=n.closest("a");o.length>0&&o.attr("href"),Object.keys(e.modules).forEach((function(o){var r=e.modules[o].clicks;r&&(t.preventF7Router||Object.keys(r).forEach((function(o){var i=n.closest(o).eq(0);i.length>0&&r[o].call(e,i,i.dataset(),t)})))}))}))}var w={name:"clicks",params:{clicks:{externalLinks:".ext"}},on:{init:function(){g(this)}}},b={registrations:[],register:function(e,t){var n=this;return"serviceWorker"in window.navigator&&n.serviceWorker.container?new Promise((function(o,r){n.serviceWorker.container.register(e,t?{scope:t}:{}).then((function(e){b.registrations.push(e),n.emit("serviceWorkerRegisterSuccess",e),o(e)})).catch((function(e){n.emit("serviceWorkerRegisterError",e),r(e)}))})):new Promise((function(e,t){t(new Error("Service worker is not supported"))}))},unregister:function(e){var t,n=this;return"serviceWorker"in window.navigator&&n.serviceWorker.container?(t=e?Array.isArray(e)?e:[e]:b.registrations,Promise.all(t.map((function(e){return new Promise((function(t,o){e.unregister().then((function(){b.registrations.indexOf(e)>=0&&b.registrations.splice(b.registrations.indexOf(e),1),n.emit("serviceWorkerUnregisterSuccess",e),t()})).catch((function(t){n.emit("serviceWorkerUnregisterError",e,t),o(t)}))}))})))):new Promise((function(e,t){t(new Error("Service worker is not supported"))}))}},k={name:"sw",params:{serviceWorker:{path:void 0,scope:void 0}},create:function(){$.extend(this,{serviceWorker:{container:"serviceWorker"in window.navigator?window.navigator.serviceWorker:void 0,registrations:b.registrations,register:b.register.bind(this),unregister:b.unregister.bind(this)}})},on:{init:function(){if("serviceWorker"in window.navigator){var e=this;if(e.serviceWorker.container){var t=e.params.serviceWorker.path,n=e.params.serviceWorker.scope;!t||Array.isArray(t)&&!t.length||(Array.isArray(t)?t:[t]).forEach((function(t){e.serviceWorker.register(t,n)}))}}}}},C=$.support,E=$.device,x=function(e){function t(t){var n;n=e.call(this,t)||this;var o=$.extend({},t),r=c(n);r.device=E,r.support=C;var i={version:"0.0.1",root:"body",theme:"auto",language:window.navigator.language,routes:[],lazyModulesPath:null,initOnDeviceReady:!0,autoDarkTheme:!1,iosTranslucentBars:!0,iosTranslucentModals:!0,component:void 0,componentUrl:void 0};r.useModulesParams(i),r.params=$.extend(i,t);var a=$(r.params.root);$.extend(r,{owner:r.params.owner,name:r.params.name,id:r.params.owner+"."+r.params.name,version:r.params.version,routes:r.params.routes,language:r.params.language,root:a,cfg:r.params.cfg,api:r.params.api,rtl:"rtl"===a.css("direction"),theme:"auto"===r.params.theme?E.ios?"ios":E.desktop?"aurora":"md":r.params.theme,passedParams:o,online:window.navigator.onLine}),r.root&&r.root[0]&&(r.root[0].wia=r),r.touchEvents={start:C.touch?"touchstart":C.pointerEvents?"pointerdown":"mousedown",move:C.touch?"touchmove":C.pointerEvents?"pointermove":"mousemove",end:C.touch?"touchend":C.pointerEvents?"pointerup":"mouseup"},r.useModules(),r.initData();var s="(prefers-color-scheme: dark)",u="(prefers-color-scheme: light)";return r.mq={},window.matchMedia&&(r.mq.dark=window.matchMedia(s),r.mq.light=window.matchMedia(u)),r.colorSchemeListener=function(e){var t=e.matches,n=e.media;if(t){var o=document.querySelector("html");n===s?o.classList.add("theme-dark"):n===u&&o.classList.remove("theme-dark")}},r.params.init&&(E.cordova&&r.params.initOnDeviceReady?$(document).on("deviceready",(function(){r.init()})):r.init()),r||c(n)}r(t,e);var n=t.prototype;return n.load=function(e){this.emit("local::load appLoad",e)},n.show=function(e,t){this.emit("local::show appShow",e,t)},n.hide=function(){this.emit("local::hide appHide")},n.unload=function(){this.emit("local::unload appUnload")},n.initData=function(){var e=this;e.data={},e.params.data&&"function"==typeof e.params.data?$.extend(e.data,e.params.data.bind(e)()):e.params.data&&$.extend(e.data,e.params.data),e.methods={},e.params.methods&&Object.keys(e.params.methods).forEach((function(t){"function"==typeof e.params.methods[t]?e.methods[t]=e.params.methods[t].bind(e):e.methods[t]=e.params.methods[t]}))},n.enableAutoDarkTheme=function(){if(window.matchMedia){var e=this,t=document.querySelector("html");e.mq.dark&&e.mq.light&&(e.mq.dark.addListener(e.colorSchemeListener),e.mq.light.addListener(e.colorSchemeListener)),e.mq.dark&&e.mq.dark.matches?t.classList.add("theme-dark"):e.mq.light&&e.mq.light.matches&&t.classList.remove("theme-dark")}},n.disableAutoDarkTheme=function(){window.matchMedia&&(this.mq.dark&&this.mq.dark.removeListener(this.colorSchemeListener),this.mq.light&&this.mq.light.removeListener(this.colorSchemeListener))},n.init=function(){var e,n,o,r=this;return r.initialized||($.App=t,E.ios&&E.webView&&window.addEventListener("touchstart",(function(){})),r.root.addClass("framework7-initializing"),r.rtl&&$("html").attr("dir","rtl"),r.params.autoDarkTheme&&r.enableAutoDarkTheme(),window.addEventListener("offline",(function(){r.online=!1,r.emit("offline"),r.emit("connection",!1)})),window.addEventListener("online",(function(){r.online=!0,r.emit("online"),r.emit("connection",!0)})),r.root.addClass("framework7-root"),$("html").removeClass("ios md aurora").addClass(r.theme),r.params.iosTranslucentBars&&"ios"===r.theme&&E.ios&&$("html").addClass("ios-translucent-bars"),r.params.iosTranslucentModals&&"ios"===r.theme&&E.ios&&$("html").addClass("ios-translucent-modals"),$.nextFrame((function(){r.root.removeClass("framework7-initializing")})),e=[],n=document.querySelector("html"),o=document.querySelector('meta[name="apple-mobile-web-app-status-bar-style"]'),n&&(E.standalone&&E.ios&&o&&"black-translucent"===o.content&&e.push("device-full-viewport"),e.push("device-pixel-ratio-"+Math.floor(E.pixelRatio)),E.os&&!E.desktop?e.push("device-"+E.os):E.desktop&&(e.push("device-desktop"),E.os&&e.push("device-"+E.os)),(E.cordova||E.phonegap)&&e.push("device-cordova"),e.forEach((function(e){n.classList.add(e)}))),r.initialized=!0,r.emit("init")),r},n.loadModule=function(e){t.loadModule(e),this[e.name].init&&this[e.name].init()},n.loadModules=function(){return t.loadModules.apply(t,arguments)},n.getVnodeHooks=function(e,t){return this.vnodeHooks&&this.vnodeHooks[e]&&this.vnodeHooks[e][t]||[]},o(t,[{key:"$",get:function(){return $}}],[{key:"Dom",get:function(){return $}},{key:"$",get:function(){return $}},{key:"Module",get:function(){return p}},{key:"Event",get:function(){return d}}]),t}(p);x.apps={},x.ModalMethods=h,x.ConstructorMethods=f,x.loadModule=v,x.loadModules=function(e){return Promise.all(e.map((function(e){return x.loadModule(e)})))},x.support=C,x.device=E,x.utils=l,x.use([y,w,k]);var M,L,O,A,j={normal:"nor",retina:"ret",srcset:"set",threshold:0},T=window.innerHeight,P=q(),H=document.body.classList.contains("srcset")||"srcset"in document.createElement("img"),R=window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI,S=function(){function e(e){M=$.assign({},j,e)}var t=e.prototype;return t.start=function(e){return["scroll","resize"].forEach((function(t){return e.addEventListener(t,W)})),A=e,this},t.stop=function(){return["scroll","resize"].forEach((function(e){return A.removeEventListener(e,W)})),this},t.update=function(){setTimeout((function(){_(),D()}),1)},e}();function q(){return window.scrollY||window.pageYOffset}function W(){P=q(),L||(window.requestAnimationFrame((function(){return D()})),L=!0)}function z(e){var t=P,n=t+T,o=function(e){return e.getBoundingClientRect().top+P}(e),r=o+e.offsetHeight,i=M.threshold/100*T;return r>=t-i&&o<=n+i}function D(){if(O)return T=window.innerHeight,O.forEach((function(e){return z(e)&&function(e){if($.emit("lazy:src:before",e),H&&e.hasAttribute(M.srcset))e.setAttribute("srcset",e.getAttribute(M.srcset));else{var t=R>1&&e.getAttribute(M.retina)||e.getAttribute(M.normal);e.setAttribute("src",t),console.log("set src:"+t)}$.emit("lazy:src:after",e),[M.normal,M.retina,M.srcset].forEach((function(t){return e.removeAttribute(t)})),_()}(e)})),L=!1,this}function _(e){return O=e?Array.prototype.slice.call(e.querySelectorAll("["+M.normal+"]")):Array.prototype.slice.call(document.querySelectorAll("["+M.normal+"]")),this}var F=function(e){function t(t,n,o,r){var i;return(i=e.call(this,null,[t])||this).app=t,i.cfg=t.cfg,i.name=n,i.title=o,i.style=r||"./page/"+n+".css",i.path=""+n,i.view=null,i.el=null,i.$el=null,i.html="",i.css="",i.js="",i.data={},i.param={},i}r(t,e);var n=t.prototype;return n.load=function(e){this.emit("local::load pageLoad",e)},n.ready=function(e,t,n){this.emit("local::ready pageReady",e,t,n),e.qus("[name$=-tp]").hide()},n.show=function(e,t){e.qus('a[href=""]').attr("href","javascript:;"),this.reset&&this.reset(),this.emit("local::show pageShow",e,t)},n.back=function(e,t){e.qus('a[href=""]').attr("href","javascript:;"),this.emit("local::back pageBack",e,t)},n.hide=function(e){this.emit("local::hide pageHide",e)},t}(d),U=[],B=[],I=function(e){function t(t,n){var o,r=c(o=e.call(this,n,[t])||this);return r.params=l.extend({},n),r.opened=!1,c(o)||c(o)}r(t,e);var n=t.prototype;return n.onOpen=function(){this.opened=!0,U.push(this),$("html").addClass("with-modal-"+this.type.toLowerCase()),this.$el.trigger("modal:open "+this.type.toLowerCase()+":open"),this.emit("local::open modalOpen "+this.type+"Open",this)},n.onOpened=function(){this.$el.trigger("modal:opened "+this.type.toLowerCase()+":opened"),this.emit("local::opened modalOpened "+this.type+"Opened",this)},n.onClose=function(){this.opened=!1,this.type&&this.$el&&(U.splice(U.indexOf(this),1),$("html").removeClass("with-modal-"+this.type.toLowerCase()),this.$el.trigger("modal:close "+this.type.toLowerCase()+":close"),this.emit("local::close modalClose "+this.type+"Close",this))},n.onClosed=function(){this.type&&this.$el&&(this.$el.removeClass("modal-out"),this.$el.hide(),this.$el.trigger("modal:closed "+this.type.toLowerCase()+":closed"),this.emit("local::closed modalClosed "+this.type+"Closed",this))},n.open=function(e){var t,n=this,o=n.app,r=n.$el,i=n.type,a=n.$backdropEl,s=n.params.moveToRoot,c=!0;if(void 0!==e?c=e:void 0!==n.params.animate&&(c=n.params.animate),!r||r.hasClass("modal-in"))return n;if("dialog"===i&&o.params.modal.queueDialogs&&($(".dialog.modal-in").length>0?t=!0:U.length>0&&U.forEach((function(e){"dialog"===e.type&&(t=!0)})),t))return B.push(n),n;var u=r.parent(),l=r.parents(document).length>0;function d(){r.hasClass("modal-out")?n.onClosed():r.hasClass("modal-in")&&n.onOpened()}return s&&o.params.modal.moveToRoot&&!u.is(o.root)&&(o.root.append(r),n.once(i+"Closed",(function(){l?u.append(r):r.remove()}))),r.show(),n._clientLeft=r[0].clientLeft,c?(a&&(a.removeClass("not-animated"),a.addClass("backdrop-in")),r.animationEnd((function(){d()})),r.transitionEnd((function(){d()})),r.removeClass("modal-out not-animated").addClass("modal-in"),n.onOpen()):(a&&a.addClass("backdrop-in not-animated"),r.removeClass("modal-out").addClass("modal-in not-animated"),n.onOpen(),n.onOpened()),n},n.close=function(e){var t=this,n=t.$el,o=t.$backdropEl,r=!0;if(void 0!==e?r=e:void 0!==t.params.animate&&(r=t.params.animate),!n||!n.hasClass("modal-in"))return B.indexOf(t)>=0&&B.splice(B.indexOf(t),1),t;if(o){var i=!0;"popup"===t.type&&t.$el.prevAll(".popup.modal-in").each((function(e,n){var o=n.f7Modal;o&&o.params.closeByBackdropClick&&o.params.backdrop&&o.backdropEl===t.backdropEl&&(i=!1)})),i&&(o[r?"removeClass":"addClass"]("not-animated"),o.removeClass("backdrop-in"))}function a(){n.hasClass("modal-out")?t.onClosed():n.hasClass("modal-in")&&t.onOpened()}return n[r?"removeClass":"addClass"]("not-animated"),r?(n.animationEnd((function(){a()})),n.transitionEnd((function(){a()})),n.removeClass("modal-in").addClass("modal-out"),t.onClose()):(n.addClass("not-animated").removeClass("modal-in").addClass("modal-out"),t.onClose(),t.onClosed()),"dialog"===t.type&&0!==B.length&&B.shift().open(),t},n.destroy=function(){this.destroyed||(this.emit("local::beforeDestroy modalBeforeDestroy "+this.type+"BeforeDestroy",this),this.$el&&(this.$el.trigger("modal:beforedestroy "+this.type.toLowerCase()+":beforedestroy"),this.$el.length&&this.$el[0].f7Modal&&delete this.$el[0].f7Modal),l.deleteProps(this),this.destroyed=!0)},t}(d),X=$.support,N=$.device;e.Ajax=t,e.App=x,e.Constructors=f,e.Device=N,e.Event=d,e.Lazy=S,e.Modal=I,e.Modals=h,e.Module=p,e.Page=F,e.Resize=y,e.SW=k,e.Support=X,e.Utils=l,e.loadModule=v,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self)["@wiajs/Core"]={});
6
+ var e,t;e=this,t=function(e){"use strict";var t=function(){function e(){}var t=e.prototype;return t.post=function(e,t){return new Promise((function(n,o){var r=$.getXhr();r.onreadystatechange=function(){4===r.readyState&&(200===r.status?n(r.responseText):o(new Error(r.statusText),r.responseText))},r.open("POST",e,!0);var a=t;"object"==typeof t&&(a=function(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n+"="+e[n]);return t.sort().join("&")}(t)),r.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),r.send(a)}))},t.postForm=function(e,t){return new Promise((function(n,o){var r=$.getXhr();r.onreadystatechange=function(){4===r.readyState&&(200===r.status?n(null,r.responseText):o(new Error(r.status),r.responseText))},r.open("POST",e,!0),r.send(t)}))},t.get=function(e,t){return $.get(e,t)},e}();function n(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function o(e,t,o){return t&&n(e.prototype,t),o&&n(e,o),e}function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,a(e,t)}function a(e,t){return a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},a(e,t)}function i(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function s(e,t,n){return s=i()?Reflect.construct:function(e,t,n){var o=[null];o.push.apply(o,t);var r=new(Function.bind.apply(e,o));return n&&a(r,n.prototype),r},s.apply(null,arguments)}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var u=1,l={uniqueNumber:function(){return u+=1},id:function(e,t){return void 0===e&&(e="xxxxxxxxxx"),void 0===t&&(t="0123456789abcdef"),$.uid(e,t)},mdPreloaderContent:'\n <span class="preloader-inner">\n\t\t\t<svg viewBox="0 0 36 36">\n\t\t\t\t<circle cx="18" cy="18" r="16"></circle>\n\t\t\t</svg>\n </span>\n '.trim(),iosPreloaderContent:('\n <span class="preloader-inner">\n\t\t\t'+[0,1,2,3,4,5,6,7].map((function(){return'<span class="preloader-inner-line"></span>'})).join("")+"\n </span>\n ").trim(),auroraPreloaderContent:'\n <span class="preloader-inner">\n <span class="preloader-inner-circle"></span>\n </span>\n ',eventNameToColonCase:function(e){var t;return e.split("").map((function(e,n){return e.match(/[A-Z]/)&&0!==n&&!t?(t=!0,":"+e.toLowerCase()):e.toLowerCase()})).join("")},deleteProps:function(e){$.deleteProps(e)},nextTick:function(e,t){return void 0===t&&(t=0),setTimeout(e,t)},nextFrame:function(e){return $.nextFrame(e)},now:function(){return Date.now()},requestAnimationFrame:function(e){return $.requestAnimationFrame(e)},cancelAnimationFrame:function(e){return $.cancelAnimationFrame(e)},parseUrlQuery:function(e){return $.urlParam(e)},getTranslate:function(e,t){return void 0===t&&(t="x"),$.getTranslate(e,t)},serializeObject:function(e,t){if(void 0===t&&(t=[]),"string"==typeof e)return e;var n,o=[];function r(e){if(t.length>0){for(var n="",o=0;o<t.length;o+=1)n+=0===o?t[o]:"["+encodeURIComponent(t[o])+"]";return n+"["+encodeURIComponent(e)+"]"}return encodeURIComponent(e)}function a(e){return encodeURIComponent(e)}return Object.keys(e).forEach((function(i){var s;if(Array.isArray(e[i])){s=[];for(var c=0;c<e[i].length;c+=1)Array.isArray(e[i][c])||"object"!=typeof e[i][c]?s.push(r(i)+"[]="+a(e[i][c])):((n=t.slice()).push(i),n.push(String(c)),s.push(l.serializeObject(e[i][c],n)));s.length>0&&o.push(s.join("&"))}else null===e[i]||""===e[i]?o.push(r(i)+"="):"object"==typeof e[i]?((n=t.slice()).push(i),""!==(s=l.serializeObject(e[i],n))&&o.push(s)):void 0!==e[i]&&""!==e[i]?o.push(r(i)+"="+a(e[i])):""===e[i]&&o.push(r(i))})),o.join("&")},isObject:function(e){return"object"==typeof e&&null!==e&&e.constructor&&e.constructor===Object},merge:function(){var e;return(e=$).merge.apply(e,arguments)},extend:function(){for(var e,t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];var r=n[0];return n.splice(0,1),(e=$).assign.apply(e,[r].concat(n))},bindMethods:function(e,t){var n=this;Object.keys(t).forEach((function(o){n.isObject(t[o])&&Object.keys(t[o]).forEach((function(n){"function"==typeof t[o][n]&&(t[o][n]=t[o][n].bind(e))})),e[o]=t[o]}))},colorHexToRgb:function(e){var t=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,n,o){return t+t+n+n+o+o})),n=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return n?n.slice(1).map((function(e){return parseInt(e,16)})):null},colorRgbToHex:function(e,t,n){return"#"+[e,t,n].map((function(e){var t=e.toString(16);return 1===t.length?"0"+t:t})).join("")},colorRgbToHsl:function(e,t,n){e/=255,t/=255,n/=255;var o,r=Math.max(e,t,n),a=Math.min(e,t,n),i=r-a;0===i?o=0:r===e?o=(t-n)/i%6:r===t?o=(n-e)/i+2:r===n&&(o=(e-t)/i+4);var s=(a+r)/2;return o<0&&(o=6+o),[60*o,0===i?0:i/(1-Math.abs(2*s-1)),s]},colorHslToRgb:function(e,t,n){var o,r=(1-Math.abs(2*n-1))*t,a=e/60,i=r*(1-Math.abs(a%2-1));Number.isNaN(e)||void 0===e?o=[0,0,0]:a<=1?o=[r,i,0]:a<=2?o=[i,r,0]:a<=3?o=[0,r,i]:a<=4?o=[0,i,r]:a<=5?o=[i,0,r]:a<=6&&(o=[r,0,i]);var s=n-r/2;return o.map((function(e){return Math.max(0,Math.min(255,Math.round(255*(e+s))))}))},colorHsbToHsl:function(e,t,n){var o={h:e,s:0,l:0},r=t,a=n;return o.l=(2-r)*a/2,o.s=o.l&&o.l<1?r*a/(o.l<.5?2*o.l:2-2*o.l):o.s,[o.h,o.s,o.l]},colorHslToHsb:function(e,t,n){var o={h:e,s:0,b:0},r=n,a=t*(r<.5?r:1-r);return o.b=r+a,o.s=r>0?2*a/o.b:o.s,[o.h,o.s,o.b]},colorThemeCSSProperties:function(){for(var e,t,n=arguments.length,o=new Array(n),r=0;r<n;r++)o[r]=arguments[r];if(1===o.length?(e=o[0],t=l.colorHexToRgb(e)):3===o.length&&(t=o,e=l.colorRgbToHex.apply(l,t)),!t)return{};var a=l.colorRgbToHsl.apply(l,t),i=[a[0],a[1],Math.max(0,a[2]-.08)],s=[a[0],a[1],Math.max(0,a[2]+.08)],c=l.colorRgbToHex.apply(l,l.colorHslToRgb.apply(l,i)),u=l.colorRgbToHex.apply(l,l.colorHslToRgb.apply(l,s));return{"--f7-theme-color":e,"--f7-theme-color-rgb":t.join(", "),"--f7-theme-color-shade":c,"--f7-theme-color-tint":u}}},d=function(){function e(e,t){void 0===e&&(e={}),void 0===t&&(t=[]);var n=this;n.params=e,n.eventsParents=t,n.eventsListeners={},n.params&&n.params.on&&Object.keys(n.params.on).forEach((function(e){n.on(e,n.params.on[e])}))}var t=e.prototype;return t.on=function(e,t,n){var o=this;if("function"!=typeof t)return o;var r=n?"unshift":"push";return e.split(" ").forEach((function(e){o.eventsListeners[e]||(o.eventsListeners[e]=[]),o.eventsListeners[e][r](t)})),o},t.once=function(e,t,n){var o=this;if("function"!=typeof t)return o;function r(){o.off(e,r),r.proxy&&delete r.proxy;for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];t.apply(o,a)}return r.proxy=t,o.on(e,r,n)},t.off=function(e,t){var n=this;return n.eventsListeners?(e.split(" ").forEach((function(e){void 0===t?n.eventsListeners[e]=[]:n.eventsListeners[e]&&n.eventsListeners[e].forEach((function(o,r){(o===t||o.proxy&&o.proxy===t)&&n.eventsListeners[e].splice(r,1)}))})),n):n},t.emit=function(){var e,t,n,o,r=this;if(!r.eventsListeners)return r;for(var a=arguments.length,i=new Array(a),s=0;s<a;s++)i[s]=arguments[s];"string"==typeof i[0]||Array.isArray(i[0])?(e=i[0],t=i.slice(1,i.length),n=r,o=r.eventsParents):(e=i[0].events,t=i[0].data,n=i[0].context||r,o=i[0].local?[]:i[0].parents||r.eventsParents);var c=Array.isArray(e)?e:e.split(" "),u=c.map((function(e){return e.replace("local::","")})),l=c.filter((function(e){return e.indexOf("local::")<0}));return u.forEach((function(e){if(r.eventsListeners&&r.eventsListeners[e]){var o=[];r.eventsListeners[e].forEach((function(e){o.push(e)})),o.forEach((function(e){e.apply(n,t)}))}})),o&&o.length>0&&o.forEach((function(e){e.emit.apply(e,[l].concat(t))})),r},e}(),f=function(e){function t(t,n){return void 0===t&&(t={}),void 0===n&&(n=[]),e.call(this,t,n)||this}r(t,e);var n=t.prototype;return n.useModuleParams=function(e,t){if(e.params){var n={};Object.keys(e.params).forEach((function(e){void 0!==t[e]&&(n[e]=$.extend({},t[e]))})),$.extend(t,e.params),Object.keys(n).forEach((function(e){$.extend(t[e],n[e])}))}},n.useModulesParams=function(e){var t=this;t.modules&&Object.keys(t.modules).forEach((function(n){var o=t.modules[n];o.params&&$.extend(e,o.params)}))},n.useModule=function(e,t){void 0===e&&(e=""),void 0===t&&(t={});var n=this;if(n.modules){var o="string"==typeof e?n.modules[e]:e;o&&(o.instance&&Object.keys(o.instance).forEach((function(e){var t=o.instance[e];n[e]="function"==typeof t?t.bind(n):t})),o.on&&n.on&&Object.keys(o.on).forEach((function(e){n.on(e,o.on[e])})),o.vnode&&(n.vnodeHooks||(n.vnodeHooks={}),Object.keys(o.vnode).forEach((function(e){Object.keys(o.vnode[e]).forEach((function(t){var r=o.vnode[e][t];n.vnodeHooks[t]||(n.vnodeHooks[t]={}),n.vnodeHooks[t][e]||(n.vnodeHooks[t][e]=[]),n.vnodeHooks[t][e].push(r.bind(n))}))}))),o.create&&o.create.bind(n)(t))}},n.useModules=function(e){void 0===e&&(e={});var t=this;t.modules&&Object.keys(t.modules).forEach((function(n){var o=e[n]||{};t.useModule(n,o)}))},t.installModule=function(e){var t=this;t.prototype.modules||(t.prototype.modules={});var n=e.name||Object.keys(t.prototype.modules).length+"_"+$.now();if(t.prototype.modules[n]=e,e.proto&&Object.keys(e.proto).forEach((function(n){t.prototype[n]=e.proto[n]})),e.static&&Object.keys(e.static).forEach((function(n){t[n]=e.static[n]})),e.install){for(var o=arguments.length,r=new Array(o>1?o-1:0),a=1;a<o;a++)r[a-1]=arguments[a];e.install.apply(t,r)}return t},t.use=function(e){var t=this;if(Array.isArray(e))return e.forEach((function(e){return t.installModule(e)})),t;for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];return t.installModule.apply(t,[e].concat(o))},o(t,null,[{key:"components",set:function(e){this.use&&this.use(e)}}]),t}(d);function p(e){void 0===e&&(e={});var t=e,n=t.defaultSelector,o=t.constructor,r=t.domProp,a=t.app,i=t.addMethods,c={create:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return s(o,a?[a].concat(t):t)},get:function(e){if(void 0===e&&(e=n),e instanceof o)return e;var t=$(e);return 0!==t.length?t[0][r]:void 0},destroy:function(e){var t=c.get(e);if(t&&t.destroy)return t.destroy()}};return i&&Array.isArray(i)&&i.forEach((function(e){c[e]=function(t){void 0===t&&(t=n);for(var o=c.get(t),r=arguments.length,a=new Array(r>1?r-1:0),i=1;i<r;i++)a[i-1]=arguments[i];if(o&&o[e])return o[e].apply(o,a)}})),c}function m(e){void 0===e&&(e={});var t=e,n=t.defaultSelector,o=t.constructor,r=t.app;return $.extend(p({defaultSelector:n,constructor:o,app:r,domProp:"f7Modal"}),{open:function(e,t){var n=$(e),a=n[0].f7Modal;return a||(a=new o(r,{el:n})),a.open(t)},close:function(e,t){void 0===e&&(e=n);var a=$(e);if(0!==a.length){var i=a[0].f7Modal;return i||(i=new o(r,{el:a})),i.close(t)}}})}var h=[];function v(e){var t=this;return new Promise((function(n,o){var r,a,i,s=t.instance;if(e){if("string"==typeof e){var c=e.match(/([a-z0-9-]*)/i);if(e.indexOf(".")<0&&c&&c[0].length===e.length){if(!s||s&&!s.params.lazyModulesPath)return void o(new Error('Wia: "lazyModulesPath" app parameter must be specified to fetch module by name'));r=s.params.lazyModulesPath+"/"+e+".js"}else r=e}else"function"==typeof e?i=e:a=e;if(i){var u=i(t,!1);if(!u)return void o(new Error("Wia: Can't find Wia component in specified component function"));if(t.prototype.modules&&t.prototype.modules[u.name])return void n();p(u),n()}if(a){var l=a;if(!l)return void o(new Error("Wia: Can't find Wia component in specified component"));if(t.prototype.modules&&t.prototype.modules[l.name])return void n();p(l),n()}if(r){if(h.indexOf(r)>=0)return void n();h.push(r);var d=new Promise((function(e,n){t.request.get(r,(function(o){var a="wia_component_loader_callback_"+$.id(),i=document.createElement("script");i.innerHTML="window."+a+" = function (Wia, WiaAutoInstallComponent) {return "+o.trim()+"}",$("head").append(i);var s=window[a];delete window[a],$(i).remove();var c=s(t,!1);c?(t.prototype.modules&&t.prototype.modules[c.name]||p(c),e()):n(new Error("Wia: Can't find Wia component in "+r+" file"))}),(function(e,t){n(e,t)}))})),f=new Promise((function(e){t.request.get(r.replace(".js",s.rtl?".rtl.css":".css"),(function(t){var n=document.createElement("style");n.innerHTML=t,$("head").append(n),e()}),(function(){e()}))}));Promise.all([d,f]).then((function(){n()})).catch((function(e){o(e)}))}}else o(new Error("Wia: Lazy module must be specified"));function p(e){t.use(e),s&&(s.useModuleParams(e,s.params),s.useModule(e))}}))}var y={name:"resize",instance:{getSize:function(){var e=this;if(!e.root[0])return{width:0,height:0,left:0,top:0};var t=e.root.offset(),n=[e.root[0].offsetWidth,e.root[0].offsetHeight,t.left,t.top],o=n[0],r=n[1],a=n[2],i=n[3];return e.width=o,e.height=r,e.left=a,e.top=i,{width:o,height:r,left:a,top:i}}},on:{init:function(){var e=this;e.getSize(),window.addEventListener("resize",(function(){e.emit("resize")}),!1),window.addEventListener("orientationchange",(function(){e.emit("orientationchange")}))},orientationchange:function(){this.device.ipad&&(document.body.scrollLeft=0,setTimeout((function(){document.body.scrollLeft=0}),0))},resize:function(){this.getSize()}}};function g(e){var t,n,o;t=function(t){e.emit({events:"click",data:[t]})},$.support.touch?(document.addEventListener("touchstart",(function(e){n=e.changedTouches[0].clientX,o=e.changedTouches[0].clientY}),!0),document.addEventListener("touchend",(function(e){var r=Math.abs(e.changedTouches[0].clientX-n),a=Math.abs(e.changedTouches[0].clientY-o);r<=5&&a<=5&&t.call(this,e)}),!0)):document.addEventListener("click",t,!0),e.on("click",(function(t){var n=$(t.target),o=n.closest("a");o.length>0&&o.attr("href"),Object.keys(e.modules).forEach((function(o){var r=e.modules[o].clicks;r&&(t.preventF7Router||Object.keys(r).forEach((function(o){var a=n.closest(o).eq(0);a.length>0&&r[o].call(e,a,a.dataset(),t)})))}))}))}var w={name:"clicks",params:{clicks:{externalLinks:".ext"}},on:{init:function(){g(this)}}},b={registrations:[],register:function(e,t){var n=this;return"serviceWorker"in window.navigator&&n.serviceWorker.container?new Promise((function(o,r){n.serviceWorker.container.register(e,t?{scope:t}:{}).then((function(e){b.registrations.push(e),n.emit("serviceWorkerRegisterSuccess",e),o(e)})).catch((function(e){n.emit("serviceWorkerRegisterError",e),r(e)}))})):new Promise((function(e,t){t(new Error("Service worker is not supported"))}))},unregister:function(e){var t,n=this;return"serviceWorker"in window.navigator&&n.serviceWorker.container?(t=e?Array.isArray(e)?e:[e]:b.registrations,Promise.all(t.map((function(e){return new Promise((function(t,o){e.unregister().then((function(){b.registrations.indexOf(e)>=0&&b.registrations.splice(b.registrations.indexOf(e),1),n.emit("serviceWorkerUnregisterSuccess",e),t()})).catch((function(t){n.emit("serviceWorkerUnregisterError",e,t),o(t)}))}))})))):new Promise((function(e,t){t(new Error("Service worker is not supported"))}))}},k={name:"sw",params:{serviceWorker:{path:void 0,scope:void 0}},create:function(){var e=this;$.extend(e,{serviceWorker:{container:"serviceWorker"in window.navigator?window.navigator.serviceWorker:void 0,registrations:b.registrations,register:b.register.bind(e),unregister:b.unregister.bind(e)}})},on:{init:function(){if("serviceWorker"in window.navigator){var e=this;if(e.serviceWorker.container){var t=e.params.serviceWorker.path,n=e.params.serviceWorker.scope;!t||Array.isArray(t)&&!t.length||(Array.isArray(t)?t:[t]).forEach((function(t){e.serviceWorker.register(t,n)}))}}}}},C=$.support,x=$.device,E=function(e){function t(t){var n;n=e.call(this,t)||this;var o=$.extend({},t),r=c(n);r.device=x,r.support=C;var a={version:"0.0.1",root:"body",theme:"auto",language:window.navigator.language,routes:[],lazyModulesPath:null,initOnDeviceReady:!0,autoDarkTheme:!1,iosTranslucentBars:!0,iosTranslucentModals:!0,component:void 0,componentUrl:void 0};r.useModulesParams(a),r.params=$.extend(a,t);var i=$(r.params.root);$.extend(r,{owner:r.params.owner,name:r.params.name,id:r.params.owner+"."+r.params.name,version:r.params.version,routes:r.params.routes,language:r.params.language,root:i,$el:i,cfg:r.params.cfg,api:r.params.api,rtl:"rtl"===i.css("direction"),theme:"auto"===r.params.theme?x.ios?"ios":x.desktop?"aurora":"md":r.params.theme,passedParams:o,online:window.navigator.onLine}),r.root&&r.root[0]&&(r.root[0].wia=r),r.touchEvents={start:C.touch?"touchstart":C.pointerEvents?"pointerdown":"mousedown",move:C.touch?"touchmove":C.pointerEvents?"pointermove":"mousemove",end:C.touch?"touchend":C.pointerEvents?"pointerup":"mouseup"},r.useModules(),r.initData();var s="(prefers-color-scheme: dark)",u="(prefers-color-scheme: light)";return r.mq={},window.matchMedia&&(r.mq.dark=window.matchMedia(s),r.mq.light=window.matchMedia(u)),r.colorSchemeListener=function(e){var t=e.matches,n=e.media;if(t){var o=document.querySelector("html");n===s?o.classList.add("theme-dark"):n===u&&o.classList.remove("theme-dark")}},r.params.init&&(x.cordova&&r.params.initOnDeviceReady?$(document).on("deviceready",(function(){r.init()})):r.init()),r||c(n)}r(t,e);var n=t.prototype;return n.load=function(e){this.emit("local::load appLoad",e)},n.show=function(e,t){this.emit("local::show appShow",e,t)},n.hide=function(){this.emit("local::hide appHide")},n.unload=function(){this.emit("local::unload appUnload")},n.initData=function(){var e=this;e.data={},e.params.data&&"function"==typeof e.params.data?$.extend(e.data,e.params.data.bind(e)()):e.params.data&&$.extend(e.data,e.params.data),e.methods={},e.params.methods&&Object.keys(e.params.methods).forEach((function(t){"function"==typeof e.params.methods[t]?e.methods[t]=e.params.methods[t].bind(e):e.methods[t]=e.params.methods[t]}))},n.enableAutoDarkTheme=function(){if(window.matchMedia){var e=this,t=document.querySelector("html");e.mq.dark&&e.mq.light&&(e.mq.dark.addListener(e.colorSchemeListener),e.mq.light.addListener(e.colorSchemeListener)),e.mq.dark&&e.mq.dark.matches?t.classList.add("theme-dark"):e.mq.light&&e.mq.light.matches&&t.classList.remove("theme-dark")}},n.disableAutoDarkTheme=function(){if(window.matchMedia){var e=this;e.mq.dark&&e.mq.dark.removeListener(e.colorSchemeListener),e.mq.light&&e.mq.light.removeListener(e.colorSchemeListener)}},n.init=function(){var e,n,o,r=this;return r.initialized||($.App=t,x.ios&&x.webView&&window.addEventListener("touchstart",(function(){})),r.root.addClass("framework7-initializing"),r.rtl&&$("html").attr("dir","rtl"),r.params.autoDarkTheme&&r.enableAutoDarkTheme(),window.addEventListener("offline",(function(){r.online=!1,r.emit("offline"),r.emit("connection",!1)})),window.addEventListener("online",(function(){r.online=!0,r.emit("online"),r.emit("connection",!0)})),r.root.addClass("framework7-root"),$("html").removeClass("ios md aurora").addClass(r.theme),r.params.iosTranslucentBars&&"ios"===r.theme&&x.ios&&$("html").addClass("ios-translucent-bars"),r.params.iosTranslucentModals&&"ios"===r.theme&&x.ios&&$("html").addClass("ios-translucent-modals"),$.nextFrame((function(){r.root.removeClass("framework7-initializing")})),e=[],n=document.querySelector("html"),o=document.querySelector('meta[name="apple-mobile-web-app-status-bar-style"]'),n&&(x.standalone&&x.ios&&o&&"black-translucent"===o.content&&e.push("device-full-viewport"),e.push("device-pixel-ratio-"+Math.floor(x.pixelRatio)),x.os&&!x.desktop?e.push("device-"+x.os):x.desktop&&(e.push("device-desktop"),x.os&&e.push("device-"+x.os)),(x.cordova||x.phonegap)&&e.push("device-cordova"),e.forEach((function(e){n.classList.add(e)}))),r.initialized=!0,r.emit("init")),r},n.loadModule=function(e){t.loadModule(e),this[e.name].init&&this[e.name].init()},n.loadModules=function(){return t.loadModules.apply(t,arguments)},n.getVnodeHooks=function(e,t){var n=this;return n.vnodeHooks&&n.vnodeHooks[e]&&n.vnodeHooks[e][t]||[]},o(t,[{key:"$",get:function(){return $}}],[{key:"Dom",get:function(){return $}},{key:"$",get:function(){return $}},{key:"Module",get:function(){return f}},{key:"Event",get:function(){return d}}]),t}(f);E.apps={},E.ModalMethods=m,E.ConstructorMethods=p,E.loadModule=v,E.loadModules=function(e){return Promise.all(e.map((function(e){return E.loadModule(e)})))},E.support=C,E.device=x,E.utils=l,E.use([y,w,k]);var M,L,O,A,j={normal:"nor",retina:"ret",srcset:"set",threshold:0},T=window.innerHeight,P=S(),q=document.body.classList.contains("srcset")||"srcset"in document.createElement("img"),H=window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI,R=function(){function e(e){M=$.assign({},j,e)}var t=e.prototype;return t.start=function(e){return["scroll","resize"].forEach((function(t){return e.addEventListener(t,W)})),A=e,this},t.stop=function(){return["scroll","resize"].forEach((function(e){return A.removeEventListener(e,W)})),this},t.update=function(){setTimeout((function(){_(),D()}),1)},e}();function S(){return window.scrollY||window.pageYOffset}function W(){P=S(),L||(window.requestAnimationFrame((function(){return D()})),L=!0)}function z(e){var t=P,n=t+T,o=function(e){return e.getBoundingClientRect().top+P}(e),r=o+e.offsetHeight,a=M.threshold/100*T;return r>=t-a&&o<=n+a}function D(){if(O)return T=window.innerHeight,O.forEach((function(e){return z(e)&&function(e){if($.emit("lazy:src:before",e),q&&e.hasAttribute(M.srcset))e.setAttribute("srcset",e.getAttribute(M.srcset));else{var t=H>1&&e.getAttribute(M.retina)||e.getAttribute(M.normal);e.setAttribute("src",t),console.log("set src:"+t)}$.emit("lazy:src:after",e),[M.normal,M.retina,M.srcset].forEach((function(t){return e.removeAttribute(t)})),_()}(e)})),L=!1,this}function _(e){return O=e?Array.prototype.slice.call(e.querySelectorAll("["+M.normal+"]")):Array.prototype.slice.call(document.querySelectorAll("["+M.normal+"]")),this}var B=function(e){function t(t,n,o,r){var a;return(a=e.call(this,null,[t])||this).app=t,a.cfg=t.cfg,a.name=n,a.title=o,a.style=r||"./page/"+n+".css",a.path=""+n,a.view=null,a.el=null,a.$el=null,a.html="",a.css="",a.js="",a.data={},a.param={},a}r(t,e);var n=t.prototype;return n.load=function(e){this.emit("local::load pageLoad",e)},n.ready=function(e,t,n){this.init(),this.emit("local::ready pageReady",e,t,n)},n.init=function(e){var t=this.view,n=(e=e?$(e):t).qus("[name]");null==n||n.forEach((function(e){var n=$(e),o=n.attr("name");t[o]&&t[o].dom===e||(t[o]=n)})),e.qus("[name$=-tp]").hide(),e.qus('a[href=""]').attr("href","javascript:;")},n.show=function(e,t){e.qus("[name$=-tp]").hide(),e.qus('a[href=""]').attr("href","javascript:;"),this.reset&&this.reset(),this.emit("local::show pageShow",e,t)},n.back=function(e,t){e.qus("[name$=-tp]").hide(),e.qus('a[href=""]').attr("href","javascript:;"),this.emit("local::back pageBack",e,t)},n.hide=function(e){this.emit("local::hide pageHide",e)},t}(d),F=[],U=[],I=function(e){function t(t,n){var o,r=c(o=e.call(this,n,[t])||this);return r.params=l.extend({},n),r.opened=!1,c(o)||c(o)}r(t,e);var n=t.prototype;return n.onOpen=function(){var e=this;e.opened=!0,F.push(e),$("html").addClass("with-modal-"+e.type.toLowerCase()),e.$el.trigger("modal:open "+e.type.toLowerCase()+":open"),e.emit("local::open modalOpen "+e.type+"Open",e)},n.onOpened=function(){var e=this;e.$el.trigger("modal:opened "+e.type.toLowerCase()+":opened"),e.emit("local::opened modalOpened "+e.type+"Opened",e)},n.onClose=function(){var e=this;e.opened=!1,e.type&&e.$el&&(F.splice(F.indexOf(e),1),$("html").removeClass("with-modal-"+e.type.toLowerCase()),e.$el.trigger("modal:close "+e.type.toLowerCase()+":close"),e.emit("local::close modalClose "+e.type+"Close",e))},n.onClosed=function(){var e=this;e.type&&e.$el&&(e.$el.removeClass("modal-out"),e.$el.hide(),e.$el.trigger("modal:closed "+e.type.toLowerCase()+":closed"),e.emit("local::closed modalClosed "+e.type+"Closed",e))},n.open=function(e){var t,n=this,o=n.app,r=n.$el,a=n.type,i=n.$backdropEl,s=n.params.moveToRoot,c=!0;if(void 0!==e?c=e:void 0!==n.params.animate&&(c=n.params.animate),!r||r.hasClass("modal-in"))return n;if("dialog"===a&&o.params.modal.queueDialogs&&($(".dialog.modal-in").length>0?t=!0:F.length>0&&F.forEach((function(e){"dialog"===e.type&&(t=!0)})),t))return U.push(n),n;var u=r.parent(),l=r.parents(document).length>0;function d(){r.hasClass("modal-out")?n.onClosed():r.hasClass("modal-in")&&n.onOpened()}return s&&o.params.modal.moveToRoot&&!u.is(o.root)&&(o.root.append(r),n.once(a+"Closed",(function(){l?u.append(r):r.remove()}))),r.show(),n._clientLeft=r[0].clientLeft,c?(i&&(i.removeClass("not-animated"),i.addClass("backdrop-in")),r.animationEnd((function(){d()})),r.transitionEnd((function(){d()})),r.removeClass("modal-out not-animated").addClass("modal-in"),n.onOpen()):(i&&i.addClass("backdrop-in not-animated"),r.removeClass("modal-out").addClass("modal-in not-animated"),n.onOpen(),n.onOpened()),n},n.close=function(e){var t=this,n=t.$el,o=t.$backdropEl,r=!0;if(void 0!==e?r=e:void 0!==t.params.animate&&(r=t.params.animate),!n||!n.hasClass("modal-in"))return U.indexOf(t)>=0&&U.splice(U.indexOf(t),1),t;if(o){var a=!0;"popup"===t.type&&t.$el.prevAll(".popup.modal-in").each((function(e,n){var o=n.f7Modal;o&&o.params.closeByBackdropClick&&o.params.backdrop&&o.backdropEl===t.backdropEl&&(a=!1)})),a&&(o[r?"removeClass":"addClass"]("not-animated"),o.removeClass("backdrop-in"))}function i(){n.hasClass("modal-out")?t.onClosed():n.hasClass("modal-in")&&t.onOpened()}return n[r?"removeClass":"addClass"]("not-animated"),r?(n.animationEnd((function(){i()})),n.transitionEnd((function(){i()})),n.removeClass("modal-in").addClass("modal-out"),t.onClose()):(n.addClass("not-animated").removeClass("modal-in").addClass("modal-out"),t.onClose(),t.onClosed()),"dialog"===t.type&&0!==U.length&&U.shift().open(),t},n.destroy=function(){var e=this;e.destroyed||(e.emit("local::beforeDestroy modalBeforeDestroy "+e.type+"BeforeDestroy",e),e.$el&&(e.$el.trigger("modal:beforedestroy "+e.type.toLowerCase()+":beforedestroy"),e.$el.length&&e.$el[0].f7Modal&&delete e.$el[0].f7Modal),l.deleteProps(e),e.destroyed=!0)},t}(d),X=$.support,N=$.device;e.Ajax=t,e.App=E,e.Constructors=p,e.Device=N,e.Event=d,e.Lazy=R,e.Modal=I,e.Modals=m,e.Module=f,e.Page=B,e.Resize=y,e.SW=k,e.Support=X,e.Utils=l,e.jsx=function(e,t){for(var n=t||{},o=arguments.length,r=new Array(o>2?o-2:0),a=2;a<o;a++)r[a-2]=arguments[a];var i=r||[],s=Object.keys(n).map((function(e){return"_"===e[0]?n[e]?e.replace("_",""):"":e+'="'+n[e]+'"'})).filter((function(e){return!!e})).join(" ");if(["path","img","circle","polygon","line","input"].indexOf(e)>=0)return("<"+e+" "+s+" />").trim();var c=i.filter((function(e){return!!e})).map((function(e){return Array.isArray(e)?e.join(""):e})).join("");return("<"+e+" "+s+">"+c+"</"+e+">").trim()},e.loadModule=v,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@wiajs/Core"]={});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wiajs/core",
3
- "version": "0.1.14",
3
+ "version": "0.1.18",
4
4
  "description": "wia app core package. Part of the code is borrowed Framework7.",
5
5
  "main": "index.js",
6
6
  "types": "dist/core.d.ts",
@@ -47,7 +47,5 @@
47
47
  "rollup-plugin-replace": "^2.2.0",
48
48
  "terser": "^4.4.0"
49
49
  },
50
- "dependencies": {
51
- "@wiajs/dom": "^0.1.0"
52
- }
50
+ "dependencies": {}
53
51
  }
package/util/tool.js CHANGED
@@ -130,29 +130,36 @@ function newFileName(len) {
130
130
 
131
131
  /**
132
132
  * 比较方法,用于对象数组排序,常用于数据表排序
133
- * @param {*} p 属性
133
+ * @param {*} k 对象属性key
134
134
  * @param {*} asc 升序、降序,默认升序
135
+ * @param {*} type 类型auto, number、datetime、string,缺省 auto
135
136
  */
136
- function compareObj(p, desc) {
137
+ function compareObj(k, desc, type) {
137
138
  return function (o1, o2) {
138
139
  let R = 0;
139
- let v1 = o1[p];
140
- let v2 = o2[p];
140
+ let v1 = o1[k];
141
+ let v2 = o2[k];
141
142
  // 数字、日期字符串,按数字、日期排序
142
143
  if ($.isStr(v1) || $.isStr(v2)) {
143
- if ($.isDateStr(v1) && $.isDateStr(v2)) {
144
- v1 = Date.parse(v1);
145
- v2 = Date.parse(v2);
146
- } else if ($.isNumStr(v1) && $.isNumStr(v2)) {
147
- v1 = Number(v1);
148
- v2 = Number(v2);
149
- }
150
- }
144
+ // 金额可能有千字分隔符,需替换
145
+ if (type.toLowerCase() === 'number') {
146
+ v1 = v1.replaceAll(',', '');
147
+ v2 = v2.replaceAll(',', '');
148
+ }
149
+
150
+ if ($.isDateStr(v1) && $.isDateStr(v2)) {
151
+ v1 = Date.parse(v1);
152
+ v2 = Date.parse(v2);
153
+ } else if ($.isNumStr(v1) && $.isNumStr(v2)) {
154
+ v1 = Number(v1);
155
+ v2 = Number(v2);
156
+ }
157
+ }
151
158
 
152
159
  if (v1 < v2) {
153
- R = desc ? 1: -1;
160
+ R = desc ? 1 : -1;
154
161
  } else if (v1 > v2) {
155
- R = desc ? -1: 1;
162
+ R = desc ? -1 : 1;
156
163
  }
157
164
 
158
165
  return R;