framework7 7.1.2 → 7.1.4

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/framework7.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Framework7 7.1.2
2
+ * Framework7 7.1.4
3
3
  * Full featured mobile HTML framework for building iOS & Android apps
4
4
  * https://framework7.io/
5
5
  *
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * Released under the MIT License
9
9
  *
10
- * Released on: January 18, 2023
10
+ * Released on: February 2, 2023
11
11
  */
12
12
 
13
13
  (function (global, factory) {
@@ -204,15 +204,15 @@
204
204
  }
205
205
 
206
206
  /**
207
- * Dom7 4.0.4
207
+ * Dom7 4.0.5
208
208
  * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API
209
209
  * https://framework7.io/docs/dom7.html
210
210
  *
211
- * Copyright 2022, Vladimir Kharlampidi
211
+ * Copyright 2023, Vladimir Kharlampidi
212
212
  *
213
213
  * Licensed under MIT
214
214
  *
215
- * Released on: January 11, 2022
215
+ * Released on: February 2, 2023
216
216
  */
217
217
  /* eslint-disable no-proto */
218
218
 
@@ -754,6 +754,22 @@
754
754
  return this;
755
755
  }
756
756
 
757
+ function transitionStart(callback) {
758
+ const dom = this;
759
+
760
+ function fireCallBack(e) {
761
+ if (e.target !== this) return;
762
+ callback.call(this, e);
763
+ dom.off('transitionstart', fireCallBack);
764
+ }
765
+
766
+ if (callback) {
767
+ dom.on('transitionstart', fireCallBack);
768
+ }
769
+
770
+ return this;
771
+ }
772
+
757
773
  function transitionEnd(callback) {
758
774
  const dom = this;
759
775
 
@@ -1830,6 +1846,7 @@
1830
1846
  transform: transform,
1831
1847
  transition: transition,
1832
1848
  transitionEnd: transitionEnd,
1849
+ transitionStart: transitionStart,
1833
1850
  trigger: trigger,
1834
1851
  val: val,
1835
1852
  value: value,
@@ -6469,15 +6486,20 @@
6469
6486
  if (((options.reloadCurrent || reloadDetail && otherDetailPageEl) && router.history.length) > 0 || options.replaceState) {
6470
6487
  if (reloadDetail && detailsInBetweenRemoved > 0) {
6471
6488
  router.history = router.history.slice(0, router.history.length - detailsInBetweenRemoved);
6489
+ router.propsHistory = router.propsHistory.slice(0, router.propsHistory.length - detailsInBetweenRemoved);
6472
6490
  }
6473
6491
 
6474
6492
  router.history[router.history.length - (options.reloadPrevious ? 2 : 1)] = url;
6493
+ router.propsHistory[router.propsHistory.length - (options.reloadPrevious ? 2 : 1)] = options.props || {};
6475
6494
  } else if (options.reloadPrevious) {
6476
6495
  router.history[router.history.length - 2] = url;
6496
+ router.propsHistory[router.propsHistory.length - 2] = options.props || {};
6477
6497
  } else if (options.reloadAll) {
6478
6498
  router.history = [url];
6499
+ router.propsHistory = [options.props || {}];
6479
6500
  } else {
6480
6501
  router.history.push(url);
6502
+ router.propsHistory.push(options.props || {});
6481
6503
  }
6482
6504
  }
6483
6505
 
@@ -7728,11 +7750,13 @@
7728
7750
  if (router.history.indexOf(options.route.url) >= 0) {
7729
7751
  backIndex = router.history.length - router.history.indexOf(options.route.url) - 1;
7730
7752
  router.history = router.history.slice(0, router.history.indexOf(options.route.url) + 2);
7753
+ router.propsHistory = router.propsHistory.slice(0, router.history.indexOf(options.route.url) + 2);
7731
7754
  view.history = router.history;
7732
7755
  } else if (router.history[[router.history.length - 2]]) {
7733
- router.history[router.history.length - 2] = options.route.url;
7756
+ router.propsHistory[router.propsHistory.length - 2] = options.props || {};
7734
7757
  } else {
7735
7758
  router.history.unshift(router.url);
7759
+ router.propsHistory.unshift(options.props || {});
7736
7760
  }
7737
7761
 
7738
7762
  if (backIndex && router.params.stackPages) {
@@ -7935,12 +7959,15 @@
7935
7959
 
7936
7960
  if (options.replaceState) {
7937
7961
  router.history[router.history.length - 1] = options.route.url;
7962
+ router.propsHistory[router.propsHistory.length - 1] = options.props || {};
7938
7963
  } else {
7939
7964
  if (router.history.length === 1) {
7940
7965
  router.history.unshift(router.url);
7966
+ router.propsHistory.unshift(options.props || {});
7941
7967
  }
7942
7968
 
7943
7969
  router.history.pop();
7970
+ router.propsHistory.pop();
7944
7971
  }
7945
7972
 
7946
7973
  router.saveHistory(); // Current Page & Navbar
@@ -8030,7 +8057,8 @@
8030
8057
 
8031
8058
  if (preloadPreviousPage && router.history[router.history.length - 2] && !isMaster) {
8032
8059
  router.back(router.history[router.history.length - 2], {
8033
- preload: true
8060
+ preload: true,
8061
+ props: router.propsHistory[router.propsHistory.length - 2] || {}
8034
8062
  });
8035
8063
  }
8036
8064
 
@@ -8161,6 +8189,7 @@
8161
8189
  if (router.swipeBackActive) return router;
8162
8190
  let navigateUrl;
8163
8191
  let navigateOptions;
8192
+ let navigateProps;
8164
8193
  let route;
8165
8194
 
8166
8195
  if (typeof (arguments.length <= 0 ? undefined : arguments[0]) === 'object') {
@@ -8260,6 +8289,7 @@
8260
8289
 
8261
8290
  router.currentRoute = previousRoute;
8262
8291
  router.history.pop();
8292
+ router.propsHistory.pop();
8263
8293
  router.saveHistory();
8264
8294
 
8265
8295
  if (needHistoryBack && isBrokenBrowserHistory && !currentRouteWithoutBrowserHistory) {
@@ -8313,7 +8343,8 @@
8313
8343
  if (!navigateOptions.force && $previousPage.length && !skipMaster) {
8314
8344
  if (router.params.browserHistory && $previousPage[0].f7Page && router.history[router.history.length - 2] !== $previousPage[0].f7Page.route.url) {
8315
8345
  router.back(router.history[router.history.length - 2], extend(navigateOptions, {
8316
- force: true
8346
+ force: true,
8347
+ props: router.propsHistory[router.propsHistory.length - 2] || {}
8317
8348
  }));
8318
8349
  return router;
8319
8350
  }
@@ -8350,12 +8381,14 @@
8350
8381
 
8351
8382
  if (!navigateUrl && router.history.length > 1) {
8352
8383
  navigateUrl = router.history[router.history.length - 2];
8384
+ navigateProps = router.propsHistory[router.propsHistory.length - 2] || {};
8353
8385
  }
8354
8386
 
8355
8387
  if (skipMaster && !navigateOptions.force && router.history[router.history.length - 3]) {
8356
8388
  return router.back(router.history[router.history.length - 3], extend({}, navigateOptions || {}, {
8357
8389
  force: true,
8358
- animate: false
8390
+ animate: false,
8391
+ props: router.propsHistory[router.propsHistory.length - 3] || {}
8359
8392
  }));
8360
8393
  }
8361
8394
 
@@ -8391,9 +8424,13 @@
8391
8424
  const options = {};
8392
8425
 
8393
8426
  if (route.route.options) {
8394
- extend(options, route.route.options, navigateOptions);
8427
+ extend(options, route.route.options, navigateOptions, {
8428
+ props: navigateProps || {}
8429
+ });
8395
8430
  } else {
8396
- extend(options, navigateOptions);
8431
+ extend(options, navigateOptions, {
8432
+ props: navigateProps || {}
8433
+ });
8397
8434
  }
8398
8435
 
8399
8436
  options.route = route;
@@ -8553,6 +8590,7 @@
8553
8590
  params: view.params,
8554
8591
  routes: view.routes,
8555
8592
  history: view.history,
8593
+ propsHistory: [],
8556
8594
  scrollHistory: view.scrollHistory,
8557
8595
  cache: app.cache,
8558
8596
  dynamicNavbar: app.theme === 'ios' && view.params.iosDynamicNavbar,