framework7-react 7.0.9 → 8.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 (148) hide show
  1. package/components/accordion-content.js +2 -2
  2. package/components/accordion-item.js +2 -11
  3. package/components/accordion-toggle.js +2 -2
  4. package/components/accordion.js +2 -2
  5. package/components/actions-button.d.ts +1 -1
  6. package/components/actions-button.js +4 -8
  7. package/components/actions-group.js +2 -2
  8. package/components/actions-label.js +4 -6
  9. package/components/actions.js +4 -14
  10. package/components/app.js +4 -8
  11. package/components/area-chart.js +6 -45
  12. package/components/badge.js +2 -2
  13. package/components/block-footer.js +2 -2
  14. package/components/block-header.js +2 -2
  15. package/components/block-title.js +2 -2
  16. package/components/block.d.ts +17 -4
  17. package/components/block.js +37 -11
  18. package/components/breadcrumbs-collapsed.js +2 -4
  19. package/components/breadcrumbs-item.js +2 -4
  20. package/components/breadcrumbs-separator.js +2 -2
  21. package/components/breadcrumbs.js +2 -2
  22. package/components/button.d.ts +3 -7
  23. package/components/button.js +8 -24
  24. package/components/card-content.js +2 -2
  25. package/components/card-footer.js +2 -2
  26. package/components/card-header.js +2 -2
  27. package/components/card.d.ts +5 -2
  28. package/components/card.js +14 -23
  29. package/components/checkbox.js +2 -4
  30. package/components/chip.d.ts +0 -1
  31. package/components/chip.js +2 -9
  32. package/components/fab-backdrop.js +2 -2
  33. package/components/fab-button.js +2 -6
  34. package/components/fab-buttons.js +2 -2
  35. package/components/fab.js +2 -10
  36. package/components/gauge.js +2 -2
  37. package/components/icon.d.ts +0 -1
  38. package/components/icon.js +3 -17
  39. package/components/input.js +1 -57
  40. package/components/link.d.ts +0 -1
  41. package/components/link.js +5 -12
  42. package/components/list-button.js +2 -4
  43. package/components/list-group.js +2 -2
  44. package/components/list-index.d.ts +0 -1
  45. package/components/list-index.js +3 -13
  46. package/components/list-input.d.ts +0 -1
  47. package/components/list-input.js +1 -55
  48. package/components/list-item-content.js +6 -20
  49. package/components/list-item.d.ts +0 -1
  50. package/components/list-item.js +5 -35
  51. package/components/list.d.ts +21 -9
  52. package/components/list.js +43 -37
  53. package/components/login-screen-title.js +2 -2
  54. package/components/login-screen.js +3 -15
  55. package/components/message.js +2 -10
  56. package/components/messagebar-attachment.js +2 -5
  57. package/components/messagebar-attachments.js +2 -2
  58. package/components/messagebar-sheet-image.js +4 -5
  59. package/components/messagebar-sheet-item.js +2 -2
  60. package/components/messagebar-sheet.js +2 -2
  61. package/components/messagebar.js +1 -19
  62. package/components/messages-title.js +2 -2
  63. package/components/messages.js +2 -15
  64. package/components/nav-left.js +2 -6
  65. package/components/nav-right.js +2 -2
  66. package/components/nav-title-large.js +2 -2
  67. package/components/nav-title.js +2 -4
  68. package/components/navbar.d.ts +1 -2
  69. package/components/navbar.js +5 -31
  70. package/components/page-content.js +2 -16
  71. package/components/page.d.ts +0 -1
  72. package/components/page.js +4 -62
  73. package/components/panel.d.ts +1 -0
  74. package/components/panel.js +6 -26
  75. package/components/photo-browser.js +1 -17
  76. package/components/pie-chart.js +6 -18
  77. package/components/popover.d.ts +1 -0
  78. package/components/popover.js +4 -14
  79. package/components/popup.js +3 -19
  80. package/components/preloader.js +5 -14
  81. package/components/progressbar.js +2 -4
  82. package/components/radio.js +2 -4
  83. package/components/range.js +2 -9
  84. package/components/routable-modals.js +2 -7
  85. package/components/searchbar.d.ts +1 -2
  86. package/components/searchbar.js +5 -30
  87. package/components/segmented.d.ts +0 -3
  88. package/components/segmented.js +4 -10
  89. package/components/sheet.js +2 -22
  90. package/components/stepper.d.ts +0 -5
  91. package/components/stepper.js +3 -33
  92. package/components/subnavbar.js +2 -2
  93. package/components/swipeout-actions.js +2 -4
  94. package/components/swipeout-button.js +2 -4
  95. package/components/swiper-slide.d.ts +1 -0
  96. package/components/swiper-slide.js +1 -0
  97. package/components/swiper.d.ts +1 -0
  98. package/components/swiper.js +1 -0
  99. package/components/tab.js +4 -15
  100. package/components/tabs.js +1 -4
  101. package/components/text-editor.js +1 -18
  102. package/components/toggle.js +1 -13
  103. package/components/toolbar.d.ts +2 -6
  104. package/components/toolbar.js +9 -20
  105. package/components/treeview-item.d.ts +0 -1
  106. package/components/treeview-item.js +2 -11
  107. package/components/treeview.js +2 -2
  108. package/components/view.d.ts +0 -6
  109. package/components/view.js +3 -30
  110. package/components/views.js +2 -2
  111. package/framework7-react.d.ts +2 -12
  112. package/framework7-react.js +3 -12
  113. package/package.json +1 -1
  114. package/shared/components-router.js +0 -32
  115. package/shared/f7.js +5 -19
  116. package/shared/get-router-initial-component.js +0 -4
  117. package/shared/mixins.js +2 -8
  118. package/shared/plugin.js +2 -8
  119. package/shared/router-open-in.js +4 -15
  120. package/shared/tabbar-context.js +1 -1
  121. package/shared/use-icon.js +1 -6
  122. package/shared/use-isomorphic-layout-effect.js +0 -2
  123. package/shared/use-route-props.js +0 -1
  124. package/shared/use-smart-select.js +0 -3
  125. package/shared/use-store.js +4 -8
  126. package/shared/use-tab.js +0 -4
  127. package/shared/use-theme.js +0 -2
  128. package/shared/use-tooltip.js +0 -5
  129. package/shared/utils.js +0 -18
  130. package/shared/watch-prop.js +0 -1
  131. package/components/appbar.d.ts +0 -28
  132. package/components/appbar.js +0 -45
  133. package/components/col.d.ts +0 -36
  134. package/components/col.js +0 -75
  135. package/components/list-item-cell.d.ts +0 -23
  136. package/components/list-item-cell.js +0 -28
  137. package/components/list-item-row.d.ts +0 -23
  138. package/components/list-item-row.js +0 -28
  139. package/components/menu-dropdown-item.d.ts +0 -68
  140. package/components/menu-dropdown-item.js +0 -59
  141. package/components/menu-dropdown.d.ts +0 -28
  142. package/components/menu-dropdown.js +0 -42
  143. package/components/menu-item.d.ts +0 -81
  144. package/components/menu-item.js +0 -101
  145. package/components/menu.d.ts +0 -23
  146. package/components/menu.js +0 -30
  147. package/components/row.d.ts +0 -31
  148. package/components/row.js +0 -64
@@ -2,30 +2,24 @@
2
2
  import { f7events, f7routers } from './f7.js';
3
3
  import { extend, getComponentId } from './utils.js';
4
4
  import { routerOpenIn } from './router-open-in.js';
5
-
6
5
  const getChildrenArray = el => {
7
6
  const arr = [];
8
-
9
7
  for (let i = 0; i < el.children.length; i += 1) {
10
8
  arr.push(el.children[i]);
11
9
  }
12
-
13
10
  return arr;
14
11
  };
15
-
16
12
  const hasSameChildren = (childrenBefore, childrenAfter) => {
17
13
  if (childrenBefore.length !== childrenAfter.length) return false;
18
14
  const set = new Set([...childrenBefore, ...childrenAfter]);
19
15
  if (set.size === childrenBefore.length) return true;
20
16
  return false;
21
17
  };
22
-
23
18
  export default {
24
19
  proto: {
25
20
  openIn(router, navigateUrl, options) {
26
21
  return routerOpenIn(router, navigateUrl, options);
27
22
  },
28
-
29
23
  pageComponentLoader(_ref) {
30
24
  let {
31
25
  routerEl,
@@ -43,12 +37,10 @@ export default {
43
37
  viewRouter = data;
44
38
  }
45
39
  });
46
-
47
40
  if (!viewRouter) {
48
41
  reject();
49
42
  return;
50
43
  }
51
-
52
44
  const pageData = {
53
45
  component,
54
46
  id: getComponentId(),
@@ -59,7 +51,6 @@ export default {
59
51
  };
60
52
  let resolved;
61
53
  const childrenBefore = getChildrenArray(el);
62
-
63
54
  function onDidUpdate(componentRouterData) {
64
55
  if (componentRouterData !== viewRouter || resolved) return;
65
56
  const childrenAfter = getChildrenArray(el);
@@ -70,23 +61,19 @@ export default {
70
61
  resolve(pageEl);
71
62
  resolved = true;
72
63
  }
73
-
74
64
  f7events.on('viewRouterDidUpdate', onDidUpdate);
75
65
  viewRouter.pages.push(pageData);
76
66
  viewRouter.setPages(viewRouter.pages);
77
67
  },
78
-
79
68
  removePage($pageEl) {
80
69
  if (!$pageEl) return;
81
70
  const router = this;
82
71
  let f7Page;
83
72
  if ('length' in $pageEl && $pageEl[0]) f7Page = $pageEl[0].f7Page;else f7Page = $pageEl.f7Page;
84
-
85
73
  if (f7Page && f7Page.route && f7Page.route.route && f7Page.route.route.keepAlive) {
86
74
  router.app.$($pageEl).remove();
87
75
  return;
88
76
  }
89
-
90
77
  let viewRouter;
91
78
  f7routers.views.forEach(data => {
92
79
  if (data.el && data.el === router.el) {
@@ -94,7 +81,6 @@ export default {
94
81
  }
95
82
  });
96
83
  let pageEl;
97
-
98
84
  if ('length' in $pageEl) {
99
85
  // Dom7
100
86
  if ($pageEl.length === 0) return;
@@ -102,7 +88,6 @@ export default {
102
88
  } else {
103
89
  pageEl = $pageEl;
104
90
  }
105
-
106
91
  if (!pageEl) return;
107
92
  let pageComponentFound;
108
93
  viewRouter.pages.forEach((page, index) => {
@@ -112,12 +97,10 @@ export default {
112
97
  viewRouter.setPages(viewRouter.pages);
113
98
  }
114
99
  });
115
-
116
100
  if (!pageComponentFound) {
117
101
  pageEl.parentNode.removeChild(pageEl);
118
102
  }
119
103
  },
120
-
121
104
  tabComponentLoader(_temp) {
122
105
  let {
123
106
  tabEl,
@@ -134,12 +117,10 @@ export default {
134
117
  tabRouter = tabData;
135
118
  }
136
119
  });
137
-
138
120
  if (!tabRouter) {
139
121
  reject();
140
122
  return;
141
123
  }
142
-
143
124
  const id = getComponentId();
144
125
  const tabContent = {
145
126
  id,
@@ -150,7 +131,6 @@ export default {
150
131
  }, options.route.route && options.route.route.tab && options.route.route.tab.options && options.route.route.tab.options.props || {}, options.route.params, options.props || {})
151
132
  };
152
133
  let resolved;
153
-
154
134
  function onDidUpdate(componentRouterData) {
155
135
  if (componentRouterData !== tabRouter || resolved) return;
156
136
  f7events.off('tabRouterDidUpdate', onDidUpdate);
@@ -158,11 +138,9 @@ export default {
158
138
  resolve(tabContentEl);
159
139
  resolved = true;
160
140
  }
161
-
162
141
  f7events.on('tabRouterDidUpdate', onDidUpdate);
163
142
  tabRouter.setTabContent(tabContent);
164
143
  },
165
-
166
144
  removeTabContent(tabEl) {
167
145
  if (!tabEl) return;
168
146
  let tabRouter;
@@ -171,16 +149,12 @@ export default {
171
149
  tabRouter = tabData;
172
150
  }
173
151
  });
174
-
175
152
  if (!tabRouter) {
176
153
  tabEl.innerHTML = ''; // eslint-disable-line
177
-
178
154
  return;
179
155
  }
180
-
181
156
  tabRouter.setTabContent(null);
182
157
  },
183
-
184
158
  modalComponentLoader(_temp2) {
185
159
  let {
186
160
  component,
@@ -190,12 +164,10 @@ export default {
190
164
  } = _temp2 === void 0 ? {} : _temp2;
191
165
  const router = this;
192
166
  const modalsRouter = f7routers.modals;
193
-
194
167
  if (!modalsRouter) {
195
168
  reject();
196
169
  return;
197
170
  }
198
-
199
171
  const modalData = {
200
172
  component,
201
173
  id: getComponentId(),
@@ -205,7 +177,6 @@ export default {
205
177
  }, options.route.params, options.props || {})
206
178
  };
207
179
  let resolved;
208
-
209
180
  function onDidUpdate() {
210
181
  if (resolved) return;
211
182
  f7events.off('modalsRouterDidUpdate', onDidUpdate);
@@ -214,12 +185,10 @@ export default {
214
185
  resolve(modalEl);
215
186
  resolved = true;
216
187
  }
217
-
218
188
  f7events.on('modalsRouterDidUpdate', onDidUpdate);
219
189
  modalsRouter.modals.push(modalData);
220
190
  modalsRouter.setModals(modalsRouter.modals);
221
191
  },
222
-
223
192
  removeModal(modalEl) {
224
193
  const modalsRouter = f7routers.modals;
225
194
  if (!modalsRouter) return;
@@ -230,6 +199,5 @@ export default {
230
199
  modalsRouter.modals.splice(modalsRouter.modals.indexOf(modalDataToRemove), 1);
231
200
  modalsRouter.setModals(modalsRouter.modals);
232
201
  }
233
-
234
202
  }
235
203
  };
package/shared/f7.js CHANGED
@@ -9,61 +9,49 @@ const f7routers = {
9
9
  tabs: [],
10
10
  modals: null
11
11
  };
12
-
13
12
  const setTheme = () => {
14
13
  if (!f7) return;
15
14
  theme.ios = f7.theme === 'ios';
16
15
  theme.md = f7.theme === 'md';
17
- theme.aurora = f7.theme === 'aurora';
18
16
  };
19
-
20
17
  const cleanup = () => {
21
18
  unsetRouterIds();
22
19
  delete theme.ios;
23
20
  delete theme.md;
24
- delete theme.aurora;
25
21
  f7routers.views = [];
26
22
  f7routers.tabs = [];
27
23
  f7routers.modals = null;
28
24
  };
29
-
30
25
  const f7initEvents = () => {
31
26
  f7events = new Framework7.Events();
32
27
  };
33
-
34
28
  const f7init = function (rootEl, params, init) {
35
29
  if (params === void 0) {
36
30
  params = {};
37
31
  }
38
-
39
32
  if (init === void 0) {
40
33
  init = true;
41
34
  }
42
-
43
35
  const f7Params = extend({}, params, {
44
36
  el: rootEl,
45
37
  init
46
38
  });
47
39
  if (typeof params.store !== 'undefined') f7Params.store = params.store;
48
40
  if (!f7Params.routes) f7Params.routes = [];
49
-
50
41
  if (f7Params.userAgent && (f7Params.theme === 'auto' || !f7Params.theme)) {
51
42
  const device = Framework7.getDevice({
52
43
  userAgent: f7Params.userAgent
53
44
  }, true);
54
45
  theme.ios = !!device.ios;
55
- theme.aurora = device.desktop && device.electron;
56
- theme.md = !theme.ios && !theme.aurora;
57
- } // eslint-disable-next-line
58
-
59
-
60
- if (f7 && typeof window !== 'undefined') return; // eslint-disable-next-line
61
-
46
+ theme.md = !theme.ios;
47
+ }
48
+ // eslint-disable-next-line
49
+ if (f7 && typeof window !== 'undefined') return;
50
+ // eslint-disable-next-line
62
51
  if (typeof window === 'undefined') cleanup();
63
52
  const instance = new Framework7(f7Params);
64
53
  f7 = instance;
65
54
  setTheme();
66
-
67
55
  if (instance.initialized) {
68
56
  f7 = instance;
69
57
  f7events.emit('ready', f7);
@@ -74,12 +62,10 @@ const f7init = function (rootEl, params, init) {
74
62
  });
75
63
  }
76
64
  };
77
-
78
65
  const f7ready = callback => {
79
66
  if (!callback) return;
80
67
  if (f7 && f7.initialized) callback(f7);else {
81
68
  f7events.once('ready', callback);
82
69
  }
83
70
  };
84
-
85
71
  export { f7, theme, f7ready, f7events, f7init, f7routers, f7initEvents, setTheme };
@@ -6,17 +6,14 @@ export const getRouterInitialComponent = (router, initialComponent) => {
6
6
  } = router.getInitialUrl();
7
7
  const initialRoute = router.findMatchingRoute(initialUrl);
8
8
  let routeProps = {};
9
-
10
9
  if (initialRoute && initialRoute.route && initialRoute.route.options) {
11
10
  routeProps = initialRoute.route.options.props;
12
11
  }
13
-
14
12
  const isMasterRoute = route => {
15
13
  if (route.master === true) return true;
16
14
  if (typeof route.master === 'function') return route.master(router.app);
17
15
  return false;
18
16
  };
19
-
20
17
  if (initialRoute && initialRoute.route && (initialRoute.route.component || initialRoute.route.asyncComponent) && !isMasterRoute(initialRoute.route)) {
21
18
  initialComponentData = {
22
19
  component: initialRoute.route.component || initialRoute.route.asyncComponent,
@@ -31,7 +28,6 @@ export const getRouterInitialComponent = (router, initialComponent) => {
31
28
  }
32
29
  };
33
30
  }
34
-
35
31
  return {
36
32
  initialPage: initialComponentData,
37
33
  initialRoute
package/shared/mixins.js CHANGED
@@ -34,17 +34,13 @@ export function routerAttrs(props) {
34
34
  openIn
35
35
  } = props;
36
36
  let dataAnimate;
37
-
38
37
  if ('animate' in props && typeof animate !== 'undefined') {
39
38
  dataAnimate = animate.toString();
40
39
  }
41
-
42
40
  let dataReloadDetail;
43
-
44
41
  if ('reloadDetail' in props && typeof reloadDetail !== 'undefined') {
45
42
  dataReloadDetail = reloadDetail.toString();
46
43
  }
47
-
48
44
  return {
49
45
  'data-force': force || undefined,
50
46
  'data-reload-current': reloadCurrent || undefined,
@@ -133,8 +129,7 @@ export function actionsClasses(props) {
133
129
  sortableToggle,
134
130
  cardOpen,
135
131
  cardPreventOpen,
136
- cardClose,
137
- menuClose
132
+ cardClose
138
133
  } = props;
139
134
  return {
140
135
  'searchbar-enable': searchbarEnable || searchbarEnable === '',
@@ -159,7 +154,6 @@ export function actionsClasses(props) {
159
154
  'sortable-toggle': sortableToggle || sortableToggle === '',
160
155
  'card-close': cardClose || cardClose === '',
161
156
  'card-open': cardOpen || cardOpen === '',
162
- 'card-prevent-open': cardPreventOpen || cardPreventOpen === '',
163
- 'menu-close': menuClose || menuClose === ''
157
+ 'card-prevent-open': cardPreventOpen || cardPreventOpen === ''
164
158
  };
165
159
  }
package/shared/plugin.js CHANGED
@@ -4,12 +4,10 @@ import { f7, f7ready, theme, f7initEvents, setTheme } from './f7.js';
4
4
  const Framework7React = {
5
5
  name: 'reactPlugin',
6
6
  installed: false,
7
-
8
7
  install(params) {
9
8
  if (params === void 0) {
10
9
  params = {};
11
10
  }
12
-
13
11
  if (Framework7React.installed) return;
14
12
  Framework7React.installed = true;
15
13
  f7initEvents();
@@ -19,25 +17,21 @@ const Framework7React = {
19
17
  } = params;
20
18
  if (paramsTheme === 'md') theme.md = true;
21
19
  if (paramsTheme === 'ios') theme.ios = true;
22
- if (paramsTheme === 'aurora') theme.aurora = true; // eslint-disable-next-line
23
20
 
21
+ // eslint-disable-next-line
24
22
  const needThemeCalc = typeof window === 'undefined' ? !!userAgent : true;
25
-
26
23
  if (needThemeCalc && (!paramsTheme || paramsTheme === 'auto')) {
27
24
  const device = Framework7.getDevice({
28
25
  userAgent
29
26
  }, true);
30
27
  theme.ios = !!device.ios;
31
- theme.aurora = device.desktop && device.electron;
32
- theme.md = !theme.ios && !theme.aurora;
28
+ theme.md = !theme.ios;
33
29
  }
34
-
35
30
  f7ready(() => {
36
31
  setTheme();
37
32
  });
38
33
  Framework7.Router.use(componentsRouter);
39
34
  }
40
-
41
35
  };
42
36
  export { f7ready, f7, theme };
43
37
  export default Framework7React;
@@ -10,14 +10,15 @@ export const routerOpenIn = (router, url, options) => {
10
10
  url,
11
11
  route: {
12
12
  path: url,
13
- options: { ...options,
13
+ options: {
14
+ ...options,
14
15
  openIn: undefined
15
16
  }
16
17
  }
17
18
  };
18
- const params = { ...options
19
+ const params = {
20
+ ...options
19
21
  };
20
-
21
22
  if (options.openIn === 'popup') {
22
23
  params.component = function DynamicPopup() {
23
24
  return /*#__PURE__*/React.createElement(Popup, {
@@ -29,10 +30,8 @@ export const routerOpenIn = (router, url, options) => {
29
30
  ignoreOpenIn: true
30
31
  }));
31
32
  };
32
-
33
33
  navigateOptions.route.popup = params;
34
34
  }
35
-
36
35
  if (options.openIn === 'loginScreen') {
37
36
  params.component = function DynamicPopover() {
38
37
  return /*#__PURE__*/React.createElement(LoginScreen, {
@@ -44,10 +43,8 @@ export const routerOpenIn = (router, url, options) => {
44
43
  ignoreOpenIn: true
45
44
  }));
46
45
  };
47
-
48
46
  navigateOptions.route.loginScreen = params;
49
47
  }
50
-
51
48
  if (options.openIn === 'sheet') {
52
49
  params.component = function DynamicSheet() {
53
50
  return /*#__PURE__*/React.createElement(Sheet, {
@@ -59,13 +56,10 @@ export const routerOpenIn = (router, url, options) => {
59
56
  ignoreOpenIn: true
60
57
  }));
61
58
  };
62
-
63
59
  navigateOptions.route.sheet = params;
64
60
  }
65
-
66
61
  if (options.openIn === 'popover') {
67
62
  params.targetEl = options.clickedEl || options.targetEl;
68
-
69
63
  params.component = function DynamicPopover() {
70
64
  return /*#__PURE__*/React.createElement(Popover, {
71
65
  className: "popover-router-open-in",
@@ -77,15 +71,12 @@ export const routerOpenIn = (router, url, options) => {
77
71
  ignoreOpenIn: true
78
72
  }));
79
73
  };
80
-
81
74
  navigateOptions.route.popover = params;
82
75
  }
83
-
84
76
  if (options.openIn.indexOf('panel') >= 0) {
85
77
  const parts = options.openIn.split(':');
86
78
  const side = parts[1] || 'left';
87
79
  const effect = parts[2] || 'cover';
88
-
89
80
  params.component = function DynamicPanel() {
90
81
  return /*#__PURE__*/React.createElement(Panel, {
91
82
  side: side,
@@ -98,9 +89,7 @@ export const routerOpenIn = (router, url, options) => {
98
89
  ignoreOpenIn: true
99
90
  }));
100
91
  };
101
-
102
92
  navigateOptions.route.panel = params;
103
93
  }
104
-
105
94
  return router.navigate(navigateOptions);
106
95
  };
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  const TabbarContext = /*#__PURE__*/React.createContext({
3
- tabbarHasLabels: false
3
+ tabbarHasIcons: false
4
4
  });
5
5
  export { TabbarContext };
@@ -5,35 +5,30 @@ export const useIcon = function (props) {
5
5
  if (props === void 0) {
6
6
  props = {};
7
7
  }
8
-
9
8
  const {
10
9
  icon,
11
10
  iconMaterial,
12
11
  iconF7,
13
12
  iconMd,
14
13
  iconIos,
15
- iconAurora,
16
14
  iconColor,
17
15
  iconSize,
18
16
  iconBadge,
19
17
  badgeColor,
20
18
  iconBadgeColor
21
19
  } = props;
22
-
23
- if (icon || iconMaterial || iconF7 || iconMd || iconIos || iconAurora) {
20
+ if (icon || iconMaterial || iconF7 || iconMd || iconIos) {
24
21
  return /*#__PURE__*/React.createElement(Icon, {
25
22
  material: iconMaterial,
26
23
  f7: iconF7,
27
24
  icon: icon,
28
25
  md: iconMd,
29
26
  ios: iconIos,
30
- aurora: iconAurora,
31
27
  color: iconColor,
32
28
  size: iconSize
33
29
  }, (iconBadge || iconBadge === 0) && /*#__PURE__*/React.createElement(Badge, {
34
30
  color: badgeColor || iconBadgeColor
35
31
  }, iconBadge));
36
32
  }
37
-
38
33
  return null;
39
34
  };
@@ -1,9 +1,7 @@
1
1
  import { useEffect, useLayoutEffect } from 'react';
2
-
3
2
  function useIsomorphicLayoutEffect(callback, deps) {
4
3
  // eslint-disable-next-line
5
4
  if (typeof window === 'undefined') return useEffect(callback, deps);
6
5
  return useLayoutEffect(callback, deps);
7
6
  }
8
-
9
7
  export { useIsomorphicLayoutEffect };
@@ -7,7 +7,6 @@ export const useRouteProps = function (elRef, _temp) {
7
7
  if (elRef.current) {
8
8
  elRef.current.f7RouteProps = routeProps;
9
9
  }
10
-
11
10
  return () => {
12
11
  if (elRef.current && elRef.current.f7RouteProps) {
13
12
  delete elRef.current.f7RouteProps;
@@ -12,15 +12,12 @@ export const useSmartSelect = (smartSelect, smartSelectParams, f7SmartSelect, ge
12
12
  }
13
13
  });
14
14
  };
15
-
16
15
  const onDestroy = () => {
17
16
  if (f7SmartSelect.current && f7SmartSelect.current.destroy) {
18
17
  f7SmartSelect.current.destroy();
19
18
  }
20
-
21
19
  f7SmartSelect.current = null;
22
20
  };
23
-
24
21
  useEffect(() => {
25
22
  onMount();
26
23
  return onDestroy;
@@ -1,30 +1,26 @@
1
1
  import { useState, useEffect, useRef } from 'react';
2
2
  import { f7 } from './f7.js';
3
3
  export const useStore = function () {
4
- const assignedGetters = useRef({}); // (store, getter)
5
-
4
+ const assignedGetters = useRef({});
5
+ // (store, getter)
6
6
  let store = arguments.length <= 0 ? undefined : arguments[0];
7
7
  let getter = arguments.length <= 1 ? undefined : arguments[1];
8
-
9
8
  if (arguments.length === 1) {
10
9
  // (getter)
11
10
  store = f7.store;
12
11
  getter = arguments.length <= 0 ? undefined : arguments[0];
13
- } // eslint-disable-next-line
14
-
12
+ }
15
13
 
14
+ // eslint-disable-next-line
16
15
  const obj = store._gettersPlain[getter];
17
16
  const [value, setValue] = useState(obj.value);
18
-
19
17
  function onUpdated(newValue) {
20
18
  setValue(newValue);
21
19
  }
22
-
23
20
  if (!assignedGetters.current[getter]) {
24
21
  obj.onUpdated(onUpdated);
25
22
  assignedGetters.current[getter] = true;
26
23
  }
27
-
28
24
  useEffect(() => {
29
25
  return () => {
30
26
  // eslint-disable-next-line
package/shared/use-tab.js CHANGED
@@ -6,12 +6,10 @@ export const useTab = (elRef, props) => {
6
6
  if (elRef.current !== el) return;
7
7
  emit(props, 'tabShow', el);
8
8
  };
9
-
10
9
  const onTabHide = el => {
11
10
  if (elRef.current !== el) return;
12
11
  emit(props, 'tabHide', el);
13
12
  };
14
-
15
13
  const attachEvents = () => {
16
14
  if (!elRef.current) return;
17
15
  f7ready(() => {
@@ -19,13 +17,11 @@ export const useTab = (elRef, props) => {
19
17
  f7.on('tabHide', onTabHide);
20
18
  });
21
19
  };
22
-
23
20
  const detachEvents = () => {
24
21
  if (!f7) return;
25
22
  f7.off('tabShow', onTabShow);
26
23
  f7.off('tabHide', onTabHide);
27
24
  };
28
-
29
25
  useIsomorphicLayoutEffect(() => {
30
26
  attachEvents();
31
27
  return detachEvents;
@@ -2,12 +2,10 @@ import { useState } from 'react';
2
2
  import { f7, f7ready, theme } from './f7.js';
3
3
  export const useTheme = () => {
4
4
  const [t, setTheme] = useState(f7 ? theme : null);
5
-
6
5
  if (!f7) {
7
6
  f7ready(() => {
8
7
  setTheme(theme);
9
8
  });
10
9
  }
11
-
12
10
  return t;
13
11
  };
@@ -7,7 +7,6 @@ export const useTooltip = (elRef, props) => {
7
7
  tooltip,
8
8
  tooltipTrigger
9
9
  } = props;
10
-
11
10
  const onMount = () => {
12
11
  if (!elRef.current) return;
13
12
  if (!tooltip) return;
@@ -19,14 +18,12 @@ export const useTooltip = (elRef, props) => {
19
18
  });
20
19
  });
21
20
  };
22
-
23
21
  const onDestroy = () => {
24
22
  if (f7Tooltip.current && f7Tooltip.current.destroy) {
25
23
  f7Tooltip.current.destroy();
26
24
  f7Tooltip.current = null;
27
25
  }
28
26
  };
29
-
30
27
  useEffect(() => {
31
28
  onMount();
32
29
  return onDestroy;
@@ -37,7 +34,6 @@ export const useTooltip = (elRef, props) => {
37
34
  f7Tooltip.current = null;
38
35
  return;
39
36
  }
40
-
41
37
  if (value && !f7Tooltip.current && f7) {
42
38
  f7Tooltip.current = f7.tooltip.create({
43
39
  targetEl: elRef.current,
@@ -46,7 +42,6 @@ export const useTooltip = (elRef, props) => {
46
42
  });
47
43
  return;
48
44
  }
49
-
50
45
  if (!value || !f7Tooltip.current) return;
51
46
  f7Tooltip.current.setText(value);
52
47
  });