framework7 8.3.3 → 9.0.0-beta.1

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.
Files changed (307) hide show
  1. package/components/actions/actions-ios.less +22 -15
  2. package/components/actions/actions-rtl.css +1 -1
  3. package/components/actions/actions-vars.less +4 -7
  4. package/components/actions/actions.css +1 -1
  5. package/components/actions/actions.js +2 -8
  6. package/components/actions/actions.less +0 -3
  7. package/components/app/app-class.d.ts +2 -0
  8. package/components/app/app-class.js +19 -15
  9. package/components/app/app-vars.less +41 -6
  10. package/components/app/app.less +1 -1
  11. package/components/area-chart/area-chart-class.js +18 -31
  12. package/components/area-chart/area-chart-rtl.css +1 -1
  13. package/components/area-chart/area-chart.css +1 -1
  14. package/components/autocomplete/autocomplete-class.js +13 -14
  15. package/components/autocomplete/autocomplete-ios.less +16 -0
  16. package/components/autocomplete/autocomplete-rtl.css +1 -1
  17. package/components/autocomplete/autocomplete.css +1 -1
  18. package/components/autocomplete/autocomplete.d.ts +3 -3
  19. package/components/autocomplete/autocomplete.js +3 -3
  20. package/components/autocomplete/autocomplete.less +7 -1
  21. package/components/block/block-vars.less +6 -6
  22. package/components/breadcrumbs/breadcrumbs-rtl.css +1 -1
  23. package/components/breadcrumbs/breadcrumbs.css +1 -1
  24. package/components/button/button-vars.less +13 -12
  25. package/components/button/button.less +2 -1
  26. package/components/calendar/calendar-class.js +20 -17
  27. package/components/calendar/calendar-ios.less +43 -0
  28. package/components/calendar/calendar-md.less +3 -0
  29. package/components/calendar/calendar-rtl.css +1 -1
  30. package/components/calendar/calendar-vars.less +24 -19
  31. package/components/calendar/calendar.css +1 -1
  32. package/components/calendar/calendar.d.ts +1 -1
  33. package/components/calendar/calendar.js +5 -8
  34. package/components/calendar/calendar.less +4 -2
  35. package/components/card/card-rtl.css +1 -1
  36. package/components/card/card-vars.less +5 -5
  37. package/components/card/card.css +1 -1
  38. package/components/card/card.js +3 -18
  39. package/components/card/card.less +1 -1
  40. package/components/color-picker/color-picker-class.js +11 -23
  41. package/components/color-picker/color-picker-ios.less +9 -0
  42. package/components/color-picker/color-picker-md.less +15 -0
  43. package/components/color-picker/color-picker-rtl.css +1 -1
  44. package/components/color-picker/color-picker-vars.less +9 -3
  45. package/components/color-picker/color-picker.css +1 -1
  46. package/components/color-picker/color-picker.d.ts +1 -2
  47. package/components/color-picker/color-picker.js +3 -7
  48. package/components/color-picker/color-picker.less +5 -25
  49. package/components/color-picker/modules/alpha-slider.js +2 -0
  50. package/components/color-picker/modules/brightness-slider.js +2 -0
  51. package/components/color-picker/modules/hs-spectrum.js +1 -2
  52. package/components/color-picker/modules/hsb-sliders.js +6 -0
  53. package/components/color-picker/modules/hue-slider.js +2 -0
  54. package/components/color-picker/modules/rgb-bars.js +6 -0
  55. package/components/color-picker/modules/rgb-sliders.js +6 -0
  56. package/components/color-picker/modules/sb-spectrum.js +1 -2
  57. package/components/color-picker/modules/wheel.js +1 -2
  58. package/components/data-table/data-table-class.js +1 -4
  59. package/components/data-table/data-table-ios.less +1 -1
  60. package/components/data-table/data-table-md.less +4 -2
  61. package/components/data-table/data-table-rtl.css +1 -1
  62. package/components/data-table/data-table.css +1 -1
  63. package/components/data-table/data-table.less +4 -4
  64. package/components/dialog/dialog-class.js +6 -3
  65. package/components/dialog/dialog-ios.less +10 -34
  66. package/components/dialog/dialog-md.less +2 -22
  67. package/components/dialog/dialog-rtl.css +1 -1
  68. package/components/dialog/dialog-vars.less +8 -10
  69. package/components/dialog/dialog.css +1 -1
  70. package/components/dialog/dialog.js +9 -27
  71. package/components/dialog/dialog.less +6 -25
  72. package/components/fab/fab-ios.less +2 -0
  73. package/components/fab/fab-rtl.css +1 -1
  74. package/components/fab/fab-vars.less +30 -6
  75. package/components/fab/fab.css +1 -1
  76. package/components/fab/fab.js +3 -12
  77. package/components/gauge/gauge-class.js +2 -8
  78. package/components/icon/icon-ios.less +10 -0
  79. package/components/icon/icon-md.less +9 -0
  80. package/components/icon/icon.less +2 -1
  81. package/components/input/input-ios.less +3 -2
  82. package/components/input/input-rtl.css +1 -1
  83. package/components/input/input.css +1 -1
  84. package/components/input/input.js +2 -5
  85. package/components/list/list-vars.less +7 -5
  86. package/components/list/list.less +1 -1
  87. package/components/list-index/list-index-class.js +3 -7
  88. package/components/login-screen/login-screen.js +2 -8
  89. package/components/login-screen/login-screen.less +1 -0
  90. package/components/messagebar/messagebar-class.js +5 -20
  91. package/components/messagebar/messagebar-ios.less +19 -14
  92. package/components/messagebar/messagebar-md.less +3 -0
  93. package/components/messagebar/messagebar-rtl.css +1 -1
  94. package/components/messagebar/messagebar-vars.less +12 -15
  95. package/components/messagebar/messagebar.css +1 -1
  96. package/components/messagebar/messagebar.less +4 -5
  97. package/components/messages/messages-class.js +25 -52
  98. package/components/messages/messages-ios.less +6 -2
  99. package/components/messages/messages-rtl.css +1 -1
  100. package/components/messages/messages-vars.less +1 -1
  101. package/components/messages/messages.css +1 -1
  102. package/components/navbar/navbar-ios.less +48 -672
  103. package/components/navbar/navbar-md.less +41 -1
  104. package/components/navbar/navbar-vars.less +4 -3
  105. package/components/navbar/navbar.js +28 -185
  106. package/components/navbar/navbar.less +8 -66
  107. package/components/notification/notification-class.js +6 -6
  108. package/components/notification/notification-ios.less +3 -8
  109. package/components/notification/notification-md.less +1 -20
  110. package/components/notification/notification-rtl.css +1 -1
  111. package/components/notification/notification-vars.less +13 -16
  112. package/components/notification/notification.css +1 -1
  113. package/components/notification/notification.less +8 -1
  114. package/components/page/page-ios.less +1 -8
  115. package/components/page/page-md.less +12 -11
  116. package/components/page/page.less +14 -12
  117. package/components/panel/panel-class.js +7 -28
  118. package/components/panel/panel-ios.less +4 -0
  119. package/components/panel/panel-rtl.css +2 -2
  120. package/components/panel/panel-vars.less +8 -5
  121. package/components/panel/panel.css +2 -2
  122. package/components/panel/panel.js +8 -32
  123. package/components/panel/panel.less +9 -9
  124. package/components/panel/resizable-panel.js +2 -4
  125. package/components/photo-browser/photo-browser-class.js +12 -47
  126. package/components/photo-browser/photo-browser-rtl.css +1 -1
  127. package/components/photo-browser/photo-browser-vars.less +8 -10
  128. package/components/photo-browser/photo-browser.css +1 -1
  129. package/components/photo-browser/photo-browser.d.ts +2 -4
  130. package/components/photo-browser/photo-browser.js +1 -3
  131. package/components/photo-browser/photo-browser.less +15 -71
  132. package/components/picker/picker-class.js +4 -5
  133. package/components/picker/picker-ios.less +6 -1
  134. package/components/picker/picker-md.less +9 -0
  135. package/components/picker/picker-rtl.css +1 -1
  136. package/components/picker/picker-vars.less +1 -1
  137. package/components/picker/picker.css +1 -1
  138. package/components/picker/picker.d.ts +1 -1
  139. package/components/picker/picker.js +2 -5
  140. package/components/picker/picker.less +0 -4
  141. package/components/pie-chart/pie-chart-class.js +7 -14
  142. package/components/popover/popover-class.js +22 -62
  143. package/components/popover/popover-ios.less +66 -2
  144. package/components/popover/popover-md.less +2 -27
  145. package/components/popover/popover-rtl.css +1 -1
  146. package/components/popover/popover-vars.less +2 -3
  147. package/components/popover/popover.css +1 -1
  148. package/components/popover/popover.d.ts +0 -2
  149. package/components/popover/popover.js +2 -9
  150. package/components/popover/popover.less +28 -50
  151. package/components/popup/popup-class.js +15 -9
  152. package/components/popup/popup-rtl.css +1 -1
  153. package/components/popup/popup-vars.less +2 -2
  154. package/components/popup/popup.css +1 -1
  155. package/components/popup/popup.js +2 -8
  156. package/components/popup/popup.less +6 -6
  157. package/components/preloader/preloader.js +2 -8
  158. package/components/progressbar/progressbar-md.less +12 -0
  159. package/components/progressbar/progressbar-rtl.css +1 -1
  160. package/components/progressbar/progressbar-vars.less +6 -5
  161. package/components/progressbar/progressbar.css +1 -1
  162. package/components/progressbar/progressbar.js +3 -12
  163. package/components/progressbar/progressbar.less +6 -0
  164. package/components/pull-to-refresh/pull-to-refresh-class.js +5 -12
  165. package/components/range/range-class.js +34 -27
  166. package/components/range/range-ios.less +60 -0
  167. package/components/range/range-md.less +67 -4
  168. package/components/range/range-rtl.css +1 -1
  169. package/components/range/range-vars.less +18 -13
  170. package/components/range/range.css +1 -1
  171. package/components/range/range.d.ts +3 -1
  172. package/components/range/range.js +2 -8
  173. package/components/range/range.less +11 -24
  174. package/components/searchbar/searchbar-class.js +7 -8
  175. package/components/searchbar/searchbar-ios.less +37 -13
  176. package/components/searchbar/searchbar-md.less +5 -0
  177. package/components/searchbar/searchbar-rtl.css +1 -1
  178. package/components/searchbar/searchbar-vars.less +13 -16
  179. package/components/searchbar/searchbar.css +1 -1
  180. package/components/searchbar/searchbar.js +4 -32
  181. package/components/searchbar/searchbar.less +4 -5
  182. package/components/sheet/sheet-class.js +21 -17
  183. package/components/sheet/sheet-ios.less +10 -0
  184. package/components/sheet/sheet-md.less +14 -0
  185. package/components/sheet/sheet-rtl.css +1 -1
  186. package/components/sheet/sheet-vars.less +5 -9
  187. package/components/sheet/sheet.css +1 -1
  188. package/components/sheet/sheet.js +2 -8
  189. package/components/sheet/sheet.less +5 -17
  190. package/components/skeleton/skeleton-rtl.css +1 -1
  191. package/components/skeleton/skeleton.css +1 -1
  192. package/components/smart-select/smart-select-class.js +15 -20
  193. package/components/smart-select/smart-select.d.ts +5 -7
  194. package/components/smart-select/smart-select.js +4 -4
  195. package/components/sortable/sortable.js +8 -27
  196. package/components/statusbar/statusbar.js +1 -4
  197. package/components/stepper/stepper-rtl.css +1 -1
  198. package/components/stepper/stepper-vars.less +3 -3
  199. package/components/stepper/stepper.css +1 -1
  200. package/components/stepper/stepper.js +2 -8
  201. package/components/subnavbar/subnavbar-ios.less +16 -1
  202. package/components/subnavbar/subnavbar-md.less +1 -1
  203. package/components/subnavbar/subnavbar-vars.less +12 -6
  204. package/components/subnavbar/subnavbar.less +5 -6
  205. package/components/swipeout/swipeout-ios.less +37 -0
  206. package/components/swipeout/swipeout-md.less +56 -0
  207. package/components/swipeout/swipeout-rtl.css +1 -1
  208. package/components/swipeout/swipeout-vars.less +13 -2
  209. package/components/swipeout/swipeout.css +1 -1
  210. package/components/swipeout/swipeout.js +102 -35
  211. package/components/swipeout/swipeout.less +20 -44
  212. package/components/swiper/swiper-rtl.css +1 -1
  213. package/components/swiper/swiper.css +1 -1
  214. package/components/tabs/tabs.js +3 -9
  215. package/components/text-editor/text-editor-class.js +1 -1
  216. package/components/text-editor/text-editor-rtl.css +1 -1
  217. package/components/text-editor/text-editor.css +1 -1
  218. package/components/timeline/timeline-ios.less +0 -5
  219. package/components/timeline/timeline-md.less +0 -5
  220. package/components/timeline/timeline-rtl.css +1 -1
  221. package/components/timeline/timeline-vars.less +1 -17
  222. package/components/timeline/timeline.css +1 -1
  223. package/components/timeline/timeline.less +0 -196
  224. package/components/toast/toast-class.js +2 -2
  225. package/components/toast/toast-ios.less +2 -0
  226. package/components/toast/toast-rtl.css +1 -1
  227. package/components/toast/toast-vars.less +2 -4
  228. package/components/toast/toast.css +1 -1
  229. package/components/toast/toast.less +1 -1
  230. package/components/toggle/toggle-class.js +5 -12
  231. package/components/toggle/toggle-ios.less +68 -50
  232. package/components/toggle/toggle-rtl.css +1 -1
  233. package/components/toggle/toggle-vars.less +2 -2
  234. package/components/toggle/toggle.css +1 -1
  235. package/components/toolbar/tabbar-highlight.js +134 -0
  236. package/components/toolbar/toolbar-ios.less +152 -14
  237. package/components/toolbar/toolbar-md.less +77 -3
  238. package/components/toolbar/toolbar-vars.less +14 -10
  239. package/components/toolbar/toolbar.js +32 -13
  240. package/components/toolbar/toolbar.less +8 -56
  241. package/components/tooltip/tooltip-class.js +13 -16
  242. package/components/tooltip/tooltip.js +0 -16
  243. package/components/touch-highlight/touch-highlight-ios.less +17 -0
  244. package/components/touch-highlight/touch-highlight-md.less +2 -0
  245. package/components/touch-highlight/touch-highlight-vars.less +8 -0
  246. package/components/touch-highlight/touch-highlight.d.ts +25 -0
  247. package/components/touch-highlight/touch-highlight.js +123 -0
  248. package/components/touch-highlight/touch-highlight.less +9 -0
  249. package/components/touch-ripple/touch-ripple.js +1 -4
  250. package/components/view/resizable-view.js +2 -4
  251. package/components/view/view-class.js +1 -15
  252. package/components/view/view.d.ts +0 -4
  253. package/components/view/view.js +1 -5
  254. package/components/virtual-list/virtual-list-class.js +2 -8
  255. package/framework7-bundle-rtl.css +2284 -3019
  256. package/framework7-bundle-rtl.min.css +9 -7
  257. package/framework7-bundle.css +2245 -2978
  258. package/framework7-bundle.esm.js +5 -4
  259. package/framework7-bundle.js +7170 -6469
  260. package/framework7-bundle.js.map +1 -1
  261. package/framework7-bundle.less +4 -3
  262. package/framework7-bundle.min.css +9 -7
  263. package/framework7-bundle.min.js +4 -4
  264. package/framework7-bundle.min.js.map +1 -1
  265. package/framework7-lite-bundle.esm.js +5 -4
  266. package/framework7-lite.esm.js +5 -4
  267. package/framework7-rtl.css +509 -844
  268. package/framework7-rtl.min.css +8 -6
  269. package/framework7-types.d.ts +5 -1
  270. package/framework7.css +509 -843
  271. package/framework7.d.ts +4 -0
  272. package/framework7.esm.js +5 -4
  273. package/framework7.less +4 -3
  274. package/framework7.min.css +8 -6
  275. package/less/mixins.less +10 -12
  276. package/modules/component/$h.js +1 -4
  277. package/modules/component/$jsx.js +1 -4
  278. package/modules/component/component-class.js +49 -114
  279. package/modules/component/component.js +6 -7
  280. package/modules/component/eventslisteners.js +1 -4
  281. package/modules/component/snabbdom/modules/hero.js +0 -1
  282. package/modules/component/snabbdom/modules/style.js +1 -1
  283. package/modules/component/vdom.js +17 -29
  284. package/modules/router/back.js +22 -96
  285. package/modules/router/clear-previous-history.js +1 -7
  286. package/modules/router/component-loader.js +23 -32
  287. package/modules/router/modal.js +1 -4
  288. package/modules/router/navigate.js +28 -167
  289. package/modules/router/redirect.js +1 -5
  290. package/modules/router/router-class.js +21 -288
  291. package/modules/router/swipe-back.js +10 -318
  292. package/modules/router/tab.js +1 -4
  293. package/modules/store/create-store.js +2 -8
  294. package/modules/touch/touch.d.ts +5 -3
  295. package/modules/touch/touch.js +22 -36
  296. package/package.json +4 -4
  297. package/shared/$jsx.js +1 -4
  298. package/shared/class.js +5 -26
  299. package/shared/constructor-methods.js +4 -19
  300. package/shared/events-class.js +3 -12
  301. package/shared/get-device.js +4 -11
  302. package/shared/get-support.d.ts +0 -6
  303. package/shared/get-support.js +1 -20
  304. package/shared/material-color-utils.js +2102 -693
  305. package/shared/material-colors.js +94 -23
  306. package/shared/modal-methods.js +2 -8
  307. package/shared/utils.js +23 -45
@@ -2,21 +2,15 @@ import $ from '../../shared/dom7.js';
2
2
  import appRouterCheck from './app-router-check.js';
3
3
  function clearPreviousPages(router) {
4
4
  appRouterCheck(router, 'clearPreviousPages');
5
- const app = router.app;
6
- const dynamicNavbar = router.dynamicNavbar;
7
5
  const $pagesToRemove = router.$el.children('.page').filter(pageInView => {
8
6
  if (router.currentRoute && (router.currentRoute.modal || router.currentRoute.panel)) return true;
9
7
  return pageInView !== router.currentPageEl;
10
8
  });
11
9
  $pagesToRemove.each(pageEl => {
12
10
  const $oldPageEl = $(pageEl);
13
- const $oldNavbarEl = $(app.navbar.getElByPage($oldPageEl));
14
11
  // Page remove event
15
- router.pageCallback('beforeRemove', $oldPageEl, $oldNavbarEl, 'previous', undefined, {});
12
+ router.pageCallback('beforeRemove', $oldPageEl, 'previous', undefined, {});
16
13
  router.removePage($oldPageEl);
17
- if (dynamicNavbar && $oldNavbarEl.length) {
18
- router.removeNavbar($oldNavbarEl);
19
- }
20
14
  });
21
15
  }
22
16
  function clearPreviousHistory() {
@@ -77,10 +77,7 @@ export default {
77
77
  params.component = component;
78
78
  return router.navigate(navigateOptions);
79
79
  },
80
- componentLoader(component, componentUrl, options, resolve, reject) {
81
- if (options === void 0) {
82
- options = {};
83
- }
80
+ componentLoader(component, componentUrl, options = {}, resolve, reject) {
84
81
  const router = this;
85
82
  const {
86
83
  app
@@ -154,45 +151,39 @@ export default {
154
151
  compile(component);
155
152
  }
156
153
  },
157
- modalComponentLoader(_temp) {
158
- let {
159
- component,
160
- componentUrl,
161
- options,
162
- resolve,
163
- reject
164
- } = _temp === void 0 ? {} : _temp;
154
+ modalComponentLoader({
155
+ component,
156
+ componentUrl,
157
+ options,
158
+ resolve,
159
+ reject
160
+ } = {}) {
165
161
  const router = this;
166
162
  router.componentLoader(component, componentUrl, options, el => {
167
163
  resolve(el);
168
164
  }, reject);
169
165
  },
170
- tabComponentLoader(_temp2) {
171
- let {
172
- component,
173
- componentUrl,
174
- options,
175
- resolve,
176
- reject
177
- } = _temp2 === void 0 ? {} : _temp2;
166
+ tabComponentLoader({
167
+ component,
168
+ componentUrl,
169
+ options,
170
+ resolve,
171
+ reject
172
+ } = {}) {
178
173
  const router = this;
179
174
  router.componentLoader(component, componentUrl, options, el => {
180
175
  resolve(el);
181
176
  }, reject);
182
177
  },
183
- pageComponentLoader(_temp3) {
184
- let {
185
- component,
186
- componentUrl,
187
- options,
188
- resolve,
189
- reject
190
- } = _temp3 === void 0 ? {} : _temp3;
178
+ pageComponentLoader({
179
+ component,
180
+ componentUrl,
181
+ options,
182
+ resolve,
183
+ reject
184
+ } = {}) {
191
185
  const router = this;
192
- router.componentLoader(component, componentUrl, options, function (el, newOptions) {
193
- if (newOptions === void 0) {
194
- newOptions = {};
195
- }
186
+ router.componentLoader(component, componentUrl, options, (el, newOptions = {}) => {
196
187
  resolve(el, newOptions);
197
188
  }, reject);
198
189
  }
@@ -1,10 +1,7 @@
1
1
  import { extend, nextTick } from '../../shared/utils.js';
2
2
  import History from '../../shared/history.js';
3
3
  import asyncComponent from './async-component.js';
4
- function modalLoad(modalType, route, loadOptions, direction) {
5
- if (loadOptions === void 0) {
6
- loadOptions = {};
7
- }
4
+ function modalLoad(modalType, route, loadOptions = {}, direction) {
8
5
  const router = this;
9
6
  const app = router.app;
10
7
  const isPanel = modalType === 'panel';
@@ -6,10 +6,7 @@ import redirect from './redirect.js';
6
6
  import processRouteQueue from './process-route-queue.js';
7
7
  import appRouterCheck from './app-router-check.js';
8
8
  import asyncComponent from './async-component.js';
9
- function refreshPage(props) {
10
- if (props === void 0) {
11
- props = {};
12
- }
9
+ function refreshPage(props = {}) {
13
10
  const router = this;
14
11
  appRouterCheck(router, 'refreshPage');
15
12
  return router.navigate(router.currentRoute.url, {
@@ -18,10 +15,7 @@ function refreshPage(props) {
18
15
  props
19
16
  });
20
17
  }
21
- function forward(router, el, forwardOptions) {
22
- if (forwardOptions === void 0) {
23
- forwardOptions = {};
24
- }
18
+ function forward(router, el, forwardOptions = {}) {
25
19
  const document = getDocument();
26
20
  const $el = $(el);
27
21
  const app = router.app;
@@ -70,14 +64,10 @@ function forward(router, el, forwardOptions) {
70
64
  }
71
65
  router.modalRemove(modalToClose);
72
66
  }
73
- const dynamicNavbar = router.dynamicNavbar;
74
67
  const $viewEl = router.$el;
75
68
  const $newPage = $el;
76
69
  const reload = options.reloadPrevious || options.reloadCurrent || options.reloadAll;
77
70
  let $oldPage;
78
- let $navbarsEl;
79
- let $newNavbarEl;
80
- let $oldNavbarEl;
81
71
  router.allowPageChange = false;
82
72
  if ($newPage.length === 0) {
83
73
  router.allowPageChange = true;
@@ -87,14 +77,6 @@ function forward(router, el, forwardOptions) {
87
77
  // Remove theme elements
88
78
  router.removeThemeElements($newPage);
89
79
  }
90
- if (dynamicNavbar) {
91
- $newNavbarEl = $newPage.children('.navbar');
92
- $navbarsEl = router.$navbarsEl;
93
- if ($newNavbarEl.length === 0 && $newPage[0] && $newPage[0].f7Page) {
94
- // Try from pageData
95
- $newNavbarEl = $newPage[0].f7Page.$navbarEl;
96
- }
97
- }
98
80
 
99
81
  // Save Keep Alive Cache
100
82
  if (options.route && options.route.route && options.route.route.keepAlive && !options.route.route.keepAliveData) {
@@ -106,12 +88,6 @@ function forward(router, el, forwardOptions) {
106
88
  // Pages In View
107
89
  const $pagesInView = $viewEl.children('.page').filter(pageInView => pageInView !== $newPage[0]);
108
90
 
109
- // Navbars In View
110
- let $navbarsInView;
111
- if (dynamicNavbar) {
112
- $navbarsInView = $navbarsEl.children('.navbar').filter(navbarInView => navbarInView !== $newNavbarEl[0]);
113
- }
114
-
115
91
  // Exit when reload previous and only 1 page in view so nothing ro reload
116
92
  if (options.reloadPrevious && $pagesInView.length < 2) {
117
93
  router.allowPageChange = true;
@@ -129,7 +105,6 @@ function forward(router, el, forwardOptions) {
129
105
  continue; // eslint-disable-line
130
106
  }
131
107
  }
132
-
133
108
  isDetail = !isMaster && masterPageEl;
134
109
  if (isDetail) {
135
110
  // Find Other Detail
@@ -142,7 +117,6 @@ function forward(router, el, forwardOptions) {
142
117
  }
143
118
  }
144
119
  }
145
-
146
120
  reloadDetail = isDetail && options.reloadDetail && app.width >= router.params.masterDetailBreakpoint && masterPageEl;
147
121
  }
148
122
  if (isDetail) {
@@ -171,56 +145,25 @@ function forward(router, el, forwardOptions) {
171
145
  detailRoot: !!isDetailRoot
172
146
  });
173
147
  }
174
- if (dynamicNavbar && $newNavbarEl.length) {
175
- $newNavbarEl.removeClass('navbar-previous navbar-current navbar-next').addClass(`navbar-${newPagePosition}${isMaster ? ' navbar-master' : ''}${isDetail ? ' navbar-master-detail' : ''}${isDetailRoot ? ' navbar-master-detail-root' : ''}`);
176
- $newNavbarEl.trigger('navbar:position', {
177
- position: newPagePosition
178
- });
179
- router.emit('navbarPosition', $newNavbarEl[0], newPagePosition);
180
- if (isMaster || isDetail) {
181
- router.emit('navbarRole', $newNavbarEl[0], {
182
- role: isMaster ? 'master' : 'detail',
183
- detailRoot: !!isDetailRoot
184
- });
185
- }
186
- }
187
148
 
188
149
  // Find Old Page
189
150
  if (options.reloadCurrent || reloadDetail) {
190
151
  if (reloadDetail) {
191
152
  $oldPage = $pagesInView.filter(pageEl => !pageEl.classList.contains('page-master'));
192
- if (dynamicNavbar) {
193
- $oldNavbarEl = $($oldPage.map(pageEl => app.navbar.getElByPage(pageEl)));
194
- }
195
153
  if ($oldPage.length > 1 && masterPageEl) {
196
154
  detailsInBetweenRemoved = $oldPage.length - 1;
197
155
  $(masterPageEl).removeClass('page-master-stacked').trigger('page:masterunstack');
198
156
  router.emit('pageMasterUnstack', masterPageEl);
199
- if (dynamicNavbar) {
200
- $(app.navbar.getElByPage(masterPageEl)).removeClass('navbar-master-stacked');
201
- router.emit('navbarMasterUnstack', app.navbar.getElByPage(masterPageEl));
202
- }
203
157
  }
204
158
  } else {
205
159
  $oldPage = $pagesInView.eq($pagesInView.length - 1);
206
- if (dynamicNavbar) {
207
- $oldNavbarEl = $(app.navbar.getElByPage($oldPage));
208
- }
209
160
  }
210
161
  } else if (options.reloadPrevious) {
211
162
  $oldPage = $pagesInView.eq($pagesInView.length - 2);
212
- if (dynamicNavbar) {
213
- // $oldNavbarEl = $navbarsInView.eq($pagesInView.length - 2);
214
- $oldNavbarEl = $(app.navbar.getElByPage($oldPage));
215
- }
216
163
  } else if (options.reloadAll) {
217
164
  $oldPage = $pagesInView.filter(pageEl => pageEl !== $newPage[0]);
218
- if (dynamicNavbar) {
219
- $oldNavbarEl = $navbarsInView.filter(navbarEl => navbarEl !== $newNavbarEl[0]);
220
- }
221
165
  } else {
222
- let removedPageEls = [];
223
- let removedNavbarEls = [];
166
+ const removedPageEls = [];
224
167
  if ($pagesInView.length > 1) {
225
168
  let i = 0;
226
169
  for (i = 0; i < $pagesInView.length - 1; i += 1) {
@@ -228,39 +171,21 @@ function forward(router, el, forwardOptions) {
228
171
  $pagesInView.eq(i).addClass('page-master-stacked');
229
172
  $pagesInView.eq(i).trigger('page:masterstack');
230
173
  router.emit('pageMasterStack', $pagesInView[i]);
231
- if (dynamicNavbar) {
232
- $(app.navbar.getElByPage(masterPageEl)).addClass('navbar-master-stacked');
233
- router.emit('navbarMasterStack', app.navbar.getElByPage(masterPageEl));
234
- }
235
174
  continue; // eslint-disable-line
236
175
  }
237
176
 
238
- const oldNavbarEl = app.navbar.getElByPage($pagesInView.eq(i));
239
-
240
177
  // Page remove event
241
178
  removedPageEls.push($pagesInView[i]);
242
- router.pageCallback('beforeRemove', $pagesInView[i], $navbarsInView && $navbarsInView[i], 'previous', undefined, options);
179
+ router.pageCallback('beforeRemove', $pagesInView[i], 'previous', undefined, options);
243
180
  router.removePage($pagesInView[i]);
244
- if (dynamicNavbar && oldNavbarEl) {
245
- removedNavbarEls.push(oldNavbarEl);
246
- router.removeNavbar(oldNavbarEl);
247
- }
248
181
  }
249
182
  }
250
183
  $oldPage = $viewEl.children('.page').filter(pageEl => pageEl !== $newPage[0] && removedPageEls.indexOf(pageEl) < 0);
251
- if (dynamicNavbar) {
252
- $oldNavbarEl = $navbarsEl.children('.navbar').filter(navbarEl => navbarEl !== $newNavbarEl[0] && removedNavbarEls.indexOf(removedNavbarEls) < 0);
253
- }
254
- removedPageEls = [];
255
- removedNavbarEls = [];
256
184
  }
257
185
  if (isDetail && !options.reloadAll) {
258
186
  if ($oldPage.length > 1 || reloadDetail) {
259
187
  $oldPage = $oldPage.filter(pageEl => !pageEl.classList.contains('page-master'));
260
188
  }
261
- if ($oldNavbarEl && ($oldNavbarEl.length > 1 || reloadDetail)) {
262
- $oldNavbarEl = $oldNavbarEl.filter(navbarEl => !navbarEl.classList.contains('navbar-master'));
263
- }
264
189
  }
265
190
 
266
191
  // Push State
@@ -271,14 +196,8 @@ function forward(router, el, forwardOptions) {
271
196
  }, browserHistoryRoot + router.params.browserHistorySeparator + options.route.url);
272
197
  }
273
198
  if (!options.reloadPrevious) {
274
- // Current Page & Navbar
199
+ // Current Page
275
200
  router.currentPageEl = $newPage[0];
276
- if (dynamicNavbar && $newNavbarEl.length) {
277
- router.currentNavbarEl = $newNavbarEl[0];
278
- } else {
279
- delete router.currentNavbarEl;
280
- }
281
-
282
201
  // Current Route
283
202
  router.currentRoute = options.route;
284
203
  }
@@ -306,7 +225,7 @@ function forward(router, el, forwardOptions) {
306
225
  }
307
226
  router.saveHistory();
308
227
 
309
- // Insert new page and navbar
228
+ // Insert new page
310
229
  const newPageInDom = $newPage.parents(document).length > 0;
311
230
  const f7Component = $newPage[0].f7Component;
312
231
  if (options.reloadPrevious) {
@@ -317,19 +236,6 @@ function forward(router, el, forwardOptions) {
317
236
  } else {
318
237
  $newPage.insertBefore($oldPage);
319
238
  }
320
- if (dynamicNavbar && $newNavbarEl.length) {
321
- if ($newNavbarEl.find('.title-large').length) {
322
- $newNavbarEl.addClass('navbar-large');
323
- }
324
- if ($oldNavbarEl.length) {
325
- $newNavbarEl.insertBefore($oldNavbarEl);
326
- } else {
327
- if (!router.$navbarsEl.parents(document).length) {
328
- router.$el.prepend(router.$navbarsEl);
329
- }
330
- $navbarsEl.append($newNavbarEl);
331
- }
332
- }
333
239
  } else {
334
240
  if ($oldPage.next('.page')[0] !== $newPage[0]) {
335
241
  if (f7Component && !newPageInDom) {
@@ -340,56 +246,37 @@ function forward(router, el, forwardOptions) {
340
246
  $viewEl.append($newPage[0]);
341
247
  }
342
248
  }
343
- if (dynamicNavbar && $newNavbarEl.length) {
344
- if ($newNavbarEl.find('.title-large').length) {
345
- $newNavbarEl.addClass('navbar-large');
346
- }
347
- if (!router.$navbarsEl.parents(document).length) {
348
- router.$el.prepend(router.$navbarsEl);
349
- }
350
- $navbarsEl.append($newNavbarEl[0]);
351
- }
352
249
  }
353
250
  if (!newPageInDom) {
354
- router.pageCallback('mounted', $newPage, $newNavbarEl, newPagePosition, reload ? newPagePosition : 'current', options, $oldPage);
251
+ router.pageCallback('mounted', $newPage, newPagePosition, reload ? newPagePosition : 'current', options, $oldPage);
355
252
  } else if (options.route && options.route.route && options.route.route.keepAlive && !$newPage[0].f7PageMounted) {
356
253
  $newPage[0].f7PageMounted = true;
357
- router.pageCallback('mounted', $newPage, $newNavbarEl, newPagePosition, reload ? newPagePosition : 'current', options, $oldPage);
254
+ router.pageCallback('mounted', $newPage, newPagePosition, reload ? newPagePosition : 'current', options, $oldPage);
358
255
  }
359
256
 
360
257
  // Remove old page
361
258
  if ((options.reloadCurrent || reloadDetail) && $oldPage.length > 0) {
362
259
  // Page remove event
363
- router.pageCallback('beforeOut', $oldPage, $oldNavbarEl, 'current', undefined, options);
364
- router.pageCallback('afterOut', $oldPage, $oldNavbarEl, 'current', undefined, options);
365
- router.pageCallback('beforeRemove', $oldPage, $oldNavbarEl, 'current', undefined, options);
260
+ router.pageCallback('beforeOut', $oldPage, 'current', undefined, options);
261
+ router.pageCallback('afterOut', $oldPage, 'current', undefined, options);
262
+ router.pageCallback('beforeRemove', $oldPage, 'current', undefined, options);
366
263
  router.removePage($oldPage);
367
- if (dynamicNavbar && $oldNavbarEl && $oldNavbarEl.length) {
368
- router.removeNavbar($oldNavbarEl);
369
- }
370
264
  } else if (options.reloadAll) {
371
- $oldPage.each((pageEl, index) => {
265
+ $oldPage.each(pageEl => {
372
266
  const $oldPageEl = $(pageEl);
373
- const $oldNavbarElEl = $(app.navbar.getElByPage($oldPageEl));
374
267
 
375
268
  // Page remove event
376
269
  if ($oldPageEl.hasClass('page-current')) {
377
- router.pageCallback('beforeOut', $oldPage, $oldNavbarEl, 'current', undefined, options);
378
- router.pageCallback('afterOut', $oldPage, $oldNavbarEl, 'current', undefined, options);
270
+ router.pageCallback('beforeOut', $oldPage, 'current', undefined, options);
271
+ router.pageCallback('afterOut', $oldPage, 'current', undefined, options);
379
272
  }
380
- router.pageCallback('beforeRemove', $oldPageEl, $oldNavbarEl && $oldNavbarEl.eq(index), 'previous', undefined, options);
273
+ router.pageCallback('beforeRemove', $oldPageEl, 'previous', undefined, options);
381
274
  router.removePage($oldPageEl);
382
- if (dynamicNavbar && $oldNavbarElEl.length) {
383
- router.removeNavbar($oldNavbarElEl);
384
- }
385
275
  });
386
276
  } else if (options.reloadPrevious) {
387
277
  // Page remove event
388
- router.pageCallback('beforeRemove', $oldPage, $oldNavbarEl, 'previous', undefined, options);
278
+ router.pageCallback('beforeRemove', $oldPage, 'previous', undefined, options);
389
279
  router.removePage($oldPage);
390
- if (dynamicNavbar && $oldNavbarEl && $oldNavbarEl.length) {
391
- router.removeNavbar($oldNavbarEl);
392
- }
393
280
  }
394
281
 
395
282
  // Load Tab
@@ -406,21 +293,15 @@ function forward(router, el, forwardOptions) {
406
293
  }
407
294
 
408
295
  // Page init and before init events
409
- router.pageCallback('init', $newPage, $newNavbarEl, newPagePosition, reload ? newPagePosition : 'current', options, $oldPage);
296
+ router.pageCallback('init', $newPage, newPagePosition, reload ? newPagePosition : 'current', options, $oldPage);
410
297
  if (options.reloadCurrent || options.reloadAll || reloadDetail) {
411
298
  router.allowPageChange = true;
412
- router.pageCallback('beforeIn', $newPage, $newNavbarEl, newPagePosition, 'current', options);
299
+ router.pageCallback('beforeIn', $newPage, newPagePosition, 'current', options);
413
300
  $newPage.removeAttr('aria-hidden');
414
- if (dynamicNavbar && $newNavbarEl) {
415
- $newNavbarEl.removeAttr('aria-hidden');
416
- }
417
- router.pageCallback('afterIn', $newPage, $newNavbarEl, newPagePosition, 'current', options);
301
+ router.pageCallback('afterIn', $newPage, newPagePosition, 'current', options);
418
302
  if (options.reloadCurrent && options.clearPreviousHistory) router.clearPreviousHistory();
419
303
  if (reloadDetail) {
420
304
  router.setPagePosition($(masterPageEl), 'previous');
421
- if (masterPageEl.f7Page && masterPageEl.f7Page.navbarEl) {
422
- router.setNavbarPosition($(masterPageEl.f7Page.navbarEl), 'previous');
423
- }
424
305
  }
425
306
  return router;
426
307
  }
@@ -430,21 +311,17 @@ function forward(router, el, forwardOptions) {
430
311
  }
431
312
 
432
313
  // Before animation event
433
- router.pageCallback('beforeOut', $oldPage, $oldNavbarEl, 'current', 'previous', options);
434
- router.pageCallback('beforeIn', $newPage, $newNavbarEl, 'next', 'current', options);
314
+ router.pageCallback('beforeOut', $oldPage, 'current', 'previous', options);
315
+ router.pageCallback('beforeIn', $newPage, 'next', 'current', options);
435
316
 
436
317
  // Animation
437
318
  function afterAnimation() {
438
319
  router.setPagePosition($newPage, 'current', false);
439
320
  router.setPagePosition($oldPage, 'previous', !$oldPage.hasClass('page-master'));
440
- if (dynamicNavbar) {
441
- router.setNavbarPosition($newNavbarEl, 'current', false);
442
- router.setNavbarPosition($oldNavbarEl, 'previous', !$oldNavbarEl.hasClass('navbar-master'));
443
- }
444
321
  // After animation event
445
322
  router.allowPageChange = true;
446
- router.pageCallback('afterOut', $oldPage, $oldNavbarEl, 'current', 'previous', options);
447
- router.pageCallback('afterIn', $newPage, $newNavbarEl, 'next', 'current', options);
323
+ router.pageCallback('afterOut', $oldPage, 'current', 'previous', options);
324
+ router.pageCallback('afterIn', $newPage, 'next', 'current', options);
448
325
  let keepOldPage = (router.params.preloadPreviousPage || router.params[`${app.theme}SwipeBack`]) && !isMaster;
449
326
  if (!keepOldPage) {
450
327
  if ($newPage.hasClass('smart-select-page') || $newPage.hasClass('photo-browser-page') || $newPage.hasClass('autocomplete-page') || $newPage.hasClass('color-picker-page')) {
@@ -454,11 +331,8 @@ function forward(router, el, forwardOptions) {
454
331
  if (!keepOldPage) {
455
332
  if (!($newPage.attr('data-name') && $newPage.attr('data-name') === 'smart-select-page')) {
456
333
  // Remove event
457
- router.pageCallback('beforeRemove', $oldPage, $oldNavbarEl, 'previous', undefined, options);
334
+ router.pageCallback('beforeRemove', $oldPage, 'previous', undefined, options);
458
335
  router.removePage($oldPage);
459
- if (dynamicNavbar && $oldNavbarEl.length) {
460
- router.removeNavbar($oldNavbarEl);
461
- }
462
336
  }
463
337
  }
464
338
  if (options.clearPreviousHistory) router.clearPreviousHistory();
@@ -470,10 +344,6 @@ function forward(router, el, forwardOptions) {
470
344
  function setPositionClasses() {
471
345
  router.setPagePosition($oldPage, 'current', false);
472
346
  router.setPagePosition($newPage, 'next', false);
473
- if (dynamicNavbar) {
474
- router.setNavbarPosition($oldNavbarEl, 'current', false);
475
- router.setNavbarPosition($newNavbarEl, 'next', false);
476
- }
477
347
  }
478
348
  if (options.animate && !(isMaster && app.width >= router.params.masterDetailBreakpoint)) {
479
349
  const delay = router.params[`${router.app.theme}PageLoadDelay`];
@@ -491,13 +361,13 @@ function forward(router, el, forwardOptions) {
491
361
  if (delay) {
492
362
  setTimeout(() => {
493
363
  setPositionClasses();
494
- router.animate($oldPage, $newPage, $oldNavbarEl, $newNavbarEl, 'forward', transition, () => {
364
+ router.animate($oldPage, $newPage, 'forward', transition, () => {
495
365
  afterAnimation();
496
366
  });
497
367
  }, delay);
498
368
  } else {
499
369
  setPositionClasses();
500
- router.animate($oldPage, $newPage, $oldNavbarEl, $newNavbarEl, 'forward', transition, () => {
370
+ router.animate($oldPage, $newPage, 'forward', transition, () => {
501
371
  afterAnimation();
502
372
  });
503
373
  }
@@ -506,13 +376,7 @@ function forward(router, el, forwardOptions) {
506
376
  }
507
377
  return router;
508
378
  }
509
- function load(router, loadParams, loadOptions, ignorePageChange) {
510
- if (loadParams === void 0) {
511
- loadParams = {};
512
- }
513
- if (loadOptions === void 0) {
514
- loadOptions = {};
515
- }
379
+ function load(router, loadParams = {}, loadOptions = {}, ignorePageChange) {
516
380
  if (!router.allowPageChange && !ignorePageChange) return router;
517
381
  const params = loadParams;
518
382
  const options = loadOptions;
@@ -614,10 +478,7 @@ function load(router, loadParams, loadOptions, ignorePageChange) {
614
478
  }
615
479
  return router;
616
480
  }
617
- function navigate(navigateParams, navigateOptions) {
618
- if (navigateOptions === void 0) {
619
- navigateOptions = {};
620
- }
481
+ function navigate(navigateParams, navigateOptions = {}) {
621
482
  const router = this;
622
483
  if (router.swipeBackActive) return router;
623
484
  let url;
@@ -7,11 +7,7 @@ export default function redirect(direction, route, options) {
7
7
  options.replaceState = true; // eslint-disable-line
8
8
  options.history = true; // eslint-disable-line
9
9
  }
10
-
11
- function redirectResolve(redirectUrl, redirectOptions) {
12
- if (redirectOptions === void 0) {
13
- redirectOptions = {};
14
- }
10
+ function redirectResolve(redirectUrl, redirectOptions = {}) {
15
11
  router.allowPageChange = true;
16
12
  router[method](redirectUrl, extend({}, options, redirectOptions));
17
13
  }