framework7 6.3.4 → 7.0.0-beta.3

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 (811) hide show
  1. package/components/accordion/accordion.js +132 -1
  2. package/components/accordion/accordion.umd.js +1 -0
  3. package/components/actions/actions-class.js +365 -0
  4. package/components/actions/actions-rtl.css +1 -1
  5. package/components/actions/actions.css +1 -1
  6. package/components/actions/actions.js +42 -1
  7. package/components/actions/actions.umd.js +1 -0
  8. package/components/app/app-class.d.ts +10 -10
  9. package/{esm/components → components}/app/app-class.js +107 -140
  10. package/components/app/app.less +3 -3
  11. package/{esm/components → components}/app/load-module.js +32 -32
  12. package/components/appbar/appbar.js +3 -1
  13. package/components/appbar/appbar.umd.js +1 -0
  14. package/components/area-chart/area-chart-class.js +507 -0
  15. package/components/area-chart/area-chart-rtl.css +1 -1
  16. package/components/area-chart/area-chart.css +1 -1
  17. package/components/area-chart/area-chart.js +47 -1
  18. package/components/area-chart/area-chart.umd.js +1 -0
  19. package/{esm/components → components}/autocomplete/autocomplete-class.js +241 -253
  20. package/components/autocomplete/autocomplete-rtl.css +1 -1
  21. package/components/autocomplete/autocomplete.css +1 -1
  22. package/components/autocomplete/autocomplete.js +86 -1
  23. package/components/autocomplete/autocomplete.umd.js +1 -0
  24. package/{esm/components → components}/badge/badge.js +0 -0
  25. package/{esm/components → components}/block/block.js +0 -0
  26. package/{esm/components → components}/button/button.js +0 -0
  27. package/{esm/components → components}/calendar/calendar-class.js +676 -643
  28. package/components/calendar/calendar-rtl.css +1 -1
  29. package/components/calendar/calendar.css +1 -1
  30. package/components/calendar/calendar.js +111 -1
  31. package/components/calendar/calendar.umd.js +1 -0
  32. package/components/card/card-rtl.css +1 -1
  33. package/components/card/card.css +1 -1
  34. package/components/card/card.js +592 -1
  35. package/components/card/card.umd.js +1 -0
  36. package/components/checkbox/checkbox-rtl.css +1 -1
  37. package/components/checkbox/checkbox.css +1 -1
  38. package/components/checkbox/checkbox.js +3 -1
  39. package/components/checkbox/checkbox.umd.js +1 -0
  40. package/components/chip/chip-rtl.css +1 -1
  41. package/components/chip/chip.css +1 -1
  42. package/components/chip/chip.js +3 -1
  43. package/components/chip/chip.umd.js +1 -0
  44. package/{esm/components → components}/color-picker/color-picker-class.js +336 -349
  45. package/components/color-picker/color-picker-rtl.css +1 -1
  46. package/components/color-picker/color-picker.css +1 -1
  47. package/components/color-picker/color-picker.js +92 -1
  48. package/components/color-picker/color-picker.umd.js +1 -0
  49. package/{esm/components → components}/color-picker/modules/alpha-slider.js +30 -19
  50. package/{esm/components → components}/color-picker/modules/brightness-slider.js +35 -24
  51. package/{esm/components → components}/color-picker/modules/current-color.js +4 -2
  52. package/{esm/components → components}/color-picker/modules/hex.js +27 -16
  53. package/{esm/components → components}/color-picker/modules/hs-spectrum.js +37 -25
  54. package/{esm/components → components}/color-picker/modules/hsb-sliders.js +54 -41
  55. package/{esm/components → components}/color-picker/modules/hue-slider.js +29 -18
  56. package/{esm/components → components}/color-picker/modules/initial-current-colors.js +14 -9
  57. package/{esm/components → components}/color-picker/modules/palette.js +14 -11
  58. package/{esm/components → components}/color-picker/modules/rgb-bars.js +42 -29
  59. package/{esm/components → components}/color-picker/modules/rgb-sliders.js +47 -34
  60. package/{esm/components → components}/color-picker/modules/sb-spectrum.js +38 -26
  61. package/{esm/components → components}/color-picker/modules/wheel.js +59 -47
  62. package/components/contacts-list/contacts-list-rtl.css +1 -1
  63. package/components/contacts-list/contacts-list.css +1 -1
  64. package/components/contacts-list/contacts-list.js +3 -1
  65. package/components/contacts-list/contacts-list.umd.js +1 -0
  66. package/{esm/components → components}/data-table/data-table-class.js +40 -59
  67. package/components/data-table/data-table-rtl.css +1 -1
  68. package/components/data-table/data-table.css +1 -1
  69. package/components/data-table/data-table.js +72 -1
  70. package/components/data-table/data-table.umd.js +1 -0
  71. package/{esm/components → components}/dialog/dialog-class.js +58 -67
  72. package/components/dialog/dialog-rtl.css +1 -1
  73. package/components/dialog/dialog.css +1 -1
  74. package/components/dialog/dialog.js +254 -1
  75. package/components/dialog/dialog.umd.js +1 -0
  76. package/components/elevation/elevation.js +3 -1
  77. package/components/elevation/elevation.umd.js +1 -0
  78. package/components/fab/fab.js +181 -1
  79. package/components/fab/fab.umd.js +1 -0
  80. package/components/form/form.js +347 -1
  81. package/components/form/form.umd.js +1 -0
  82. package/components/gauge/gauge-class.js +306 -0
  83. package/components/gauge/gauge.js +99 -1
  84. package/components/gauge/gauge.umd.js +1 -0
  85. package/components/grid/grid-rtl.css +1 -1
  86. package/components/grid/grid.css +1 -1
  87. package/components/grid/grid.js +227 -1
  88. package/components/grid/grid.umd.js +1 -0
  89. package/{esm/components → components}/icon/icon.js +0 -0
  90. package/components/infinite-scroll/infinite-scroll.js +110 -1
  91. package/components/infinite-scroll/infinite-scroll.umd.js +1 -0
  92. package/components/input/input-rtl.css +1 -1
  93. package/components/input/input.css +1 -1
  94. package/components/input/input.js +394 -1
  95. package/components/input/input.less +1 -1
  96. package/components/input/input.umd.js +1 -0
  97. package/components/lazy/lazy.js +283 -1
  98. package/components/lazy/lazy.umd.js +1 -0
  99. package/{esm/components → components}/link/link.js +0 -0
  100. package/{esm/components → components}/list/list.js +0 -0
  101. package/{esm/components → components}/list-index/list-index-class.js +113 -121
  102. package/components/list-index/list-index-rtl.css +1 -1
  103. package/components/list-index/list-index.css +1 -1
  104. package/components/list-index/list-index.js +73 -1
  105. package/components/list-index/list-index.umd.js +1 -0
  106. package/components/login-screen/login-screen-class.js +43 -0
  107. package/components/login-screen/login-screen-rtl.css +1 -1
  108. package/components/login-screen/login-screen.css +1 -1
  109. package/components/login-screen/login-screen.js +28 -1
  110. package/components/login-screen/login-screen.less +1 -1
  111. package/components/login-screen/login-screen.umd.js +1 -0
  112. package/components/menu/menu.js +79 -1
  113. package/components/menu/menu.umd.js +1 -0
  114. package/{esm/components → components}/messagebar/messagebar-class.js +124 -152
  115. package/components/messagebar/messagebar-rtl.css +1 -1
  116. package/components/messagebar/messagebar.css +1 -1
  117. package/components/messagebar/messagebar.js +74 -1
  118. package/components/messagebar/messagebar.umd.js +1 -0
  119. package/{esm/components → components}/messages/messages-class.js +162 -242
  120. package/components/messages/messages-rtl.css +1 -1
  121. package/components/messages/messages.css +1 -1
  122. package/components/messages/messages.js +73 -1
  123. package/components/messages/messages.umd.js +1 -0
  124. package/{esm/components → components}/modal/custom-modal-class.js +16 -29
  125. package/{esm/components → components}/modal/modal-class.js +68 -83
  126. package/{esm/components → components}/modal/modal.js +8 -5
  127. package/{esm/components → components}/navbar/navbar.js +166 -171
  128. package/components/notification/notification-aurora.less +1 -1
  129. package/{esm/components → components}/notification/notification-class.js +65 -78
  130. package/components/notification/notification-ios.less +1 -1
  131. package/components/notification/notification-rtl.css +1 -1
  132. package/components/notification/notification.css +1 -1
  133. package/components/notification/notification.js +35 -1
  134. package/components/notification/notification.umd.js +1 -0
  135. package/components/page/page-vars.less +1 -1
  136. package/{esm/components → components}/page/page.js +0 -0
  137. package/{esm/components → components}/panel/panel-class.js +183 -214
  138. package/components/panel/panel-rtl.css +1 -1
  139. package/components/panel/panel.css +1 -1
  140. package/components/panel/panel.js +190 -1
  141. package/components/panel/panel.umd.js +1 -0
  142. package/{esm/components → components}/panel/resizable-panel.js +30 -28
  143. package/{esm/components → components}/panel/swipe-panel.js +46 -44
  144. package/{esm/components → components}/photo-browser/photo-browser-class.js +206 -234
  145. package/components/photo-browser/photo-browser.js +73 -1
  146. package/components/photo-browser/photo-browser.umd.js +1 -0
  147. package/{esm/components → components}/picker/picker-class.js +233 -233
  148. package/{esm/components → components}/picker/picker-column.js +70 -72
  149. package/components/picker/picker-rtl.css +1 -1
  150. package/components/picker/picker.css +1 -1
  151. package/components/picker/picker.js +64 -1
  152. package/components/picker/picker.umd.js +1 -0
  153. package/components/pie-chart/pie-chart-class.js +264 -0
  154. package/components/pie-chart/pie-chart.js +35 -1
  155. package/components/pie-chart/pie-chart.umd.js +1 -0
  156. package/{esm/components → components}/popover/popover-class.js +72 -97
  157. package/components/popover/popover-rtl.css +1 -1
  158. package/components/popover/popover.css +1 -1
  159. package/components/popover/popover.js +76 -1
  160. package/components/popover/popover.umd.js +1 -0
  161. package/{esm/components → components}/popup/popup-class.js +66 -81
  162. package/components/popup/popup-rtl.css +1 -1
  163. package/components/popup/popup.css +1 -1
  164. package/components/popup/popup.js +41 -1
  165. package/components/popup/popup.less +21 -21
  166. package/components/popup/popup.umd.js +1 -0
  167. package/components/preloader/preloader.js +115 -1
  168. package/components/preloader/preloader.umd.js +1 -0
  169. package/components/progressbar/progressbar-rtl.css +1 -1
  170. package/components/progressbar/progressbar.css +1 -1
  171. package/components/progressbar/progressbar.js +166 -1
  172. package/components/progressbar/progressbar.umd.js +1 -0
  173. package/{esm/components → components}/pull-to-refresh/pull-to-refresh-class.js +101 -118
  174. package/components/pull-to-refresh/pull-to-refresh.js +70 -1
  175. package/components/pull-to-refresh/pull-to-refresh.umd.js +1 -0
  176. package/components/radio/radio-rtl.css +1 -1
  177. package/components/radio/radio.css +1 -1
  178. package/components/radio/radio.js +3 -1
  179. package/components/radio/radio.umd.js +1 -0
  180. package/{esm/components → components}/range/range-class.js +191 -192
  181. package/components/range/range-rtl.css +1 -1
  182. package/components/range/range.css +1 -1
  183. package/components/range/range.js +79 -1
  184. package/components/range/range.umd.js +1 -0
  185. package/components/searchbar/remove-diacritics.js +275 -0
  186. package/{esm/components → components}/searchbar/searchbar-class.js +129 -146
  187. package/components/searchbar/searchbar-rtl.css +1 -1
  188. package/components/searchbar/searchbar.css +1 -1
  189. package/components/searchbar/searchbar.js +121 -1
  190. package/components/searchbar/searchbar.less +1 -1
  191. package/components/searchbar/searchbar.umd.js +1 -0
  192. package/{esm/components → components}/sheet/sheet-class.js +87 -106
  193. package/components/sheet/sheet-rtl.css +1 -1
  194. package/components/sheet/sheet.css +1 -1
  195. package/components/sheet/sheet.js +68 -1
  196. package/components/sheet/sheet.less +16 -16
  197. package/components/sheet/sheet.umd.js +1 -0
  198. package/components/skeleton/skeleton-rtl.css +1 -1
  199. package/components/skeleton/skeleton-vars.less +1 -1
  200. package/components/skeleton/skeleton.css +1 -1
  201. package/components/skeleton/skeleton.js +3 -1
  202. package/components/skeleton/skeleton.less +1 -1
  203. package/components/skeleton/skeleton.umd.js +1 -0
  204. package/{esm/components → components}/smart-select/smart-select-class.js +284 -296
  205. package/components/smart-select/smart-select.js +149 -1
  206. package/components/smart-select/smart-select.umd.js +1 -0
  207. package/components/sortable/sortable-rtl.css +1 -1
  208. package/components/sortable/sortable.css +1 -1
  209. package/components/sortable/sortable.js +293 -1
  210. package/components/sortable/sortable.umd.js +1 -0
  211. package/{esm/components → components}/statusbar/statusbar.js +48 -41
  212. package/{esm/components → components}/stepper/stepper-class.js +104 -115
  213. package/components/stepper/stepper-rtl.css +1 -1
  214. package/components/stepper/stepper.css +1 -1
  215. package/components/stepper/stepper.js +86 -1
  216. package/components/stepper/stepper.umd.js +1 -0
  217. package/{esm/components → components}/subnavbar/subnavbar.js +3 -2
  218. package/components/swipeout/swipeout-rtl.css +1 -1
  219. package/components/swipeout/swipeout.css +1 -1
  220. package/components/swipeout/swipeout.js +597 -1
  221. package/components/swipeout/swipeout.umd.js +1 -0
  222. package/components/swiper/swiper-rtl.css +1 -1
  223. package/components/swiper/swiper.css +1 -1
  224. package/components/swiper/swiper.js +191 -1
  225. package/components/swiper/swiper.less +1 -1
  226. package/components/swiper/swiper.umd.js +1 -0
  227. package/components/tabs/tabs.js +272 -1
  228. package/components/tabs/tabs.umd.js +1 -0
  229. package/{esm/components → components}/text-editor/text-editor-class.js +170 -182
  230. package/components/text-editor/text-editor-rtl.css +1 -1
  231. package/components/text-editor/text-editor.css +1 -1
  232. package/components/text-editor/text-editor.js +89 -1
  233. package/components/text-editor/text-editor.umd.js +1 -0
  234. package/components/timeline/timeline-rtl.css +1 -1
  235. package/components/timeline/timeline.css +1 -1
  236. package/components/timeline/timeline.js +3 -1
  237. package/components/timeline/timeline.umd.js +1 -0
  238. package/components/toast/toast-class.js +119 -0
  239. package/components/toast/toast.js +43 -1
  240. package/components/toast/toast.umd.js +1 -0
  241. package/{esm/components → components}/toggle/toggle-class.js +46 -63
  242. package/components/toggle/toggle-rtl.css +1 -1
  243. package/components/toggle/toggle.css +1 -1
  244. package/components/toggle/toggle.js +65 -1
  245. package/components/toggle/toggle.umd.js +1 -0
  246. package/{esm/components → components}/toolbar/toolbar.js +63 -59
  247. package/{esm/components → components}/tooltip/tooltip-class.js +95 -106
  248. package/components/tooltip/tooltip.js +144 -1
  249. package/components/tooltip/tooltip.umd.js +1 -0
  250. package/components/touch-ripple/touch-ripple-class.js +98 -0
  251. package/components/touch-ripple/touch-ripple-vars.less +1 -1
  252. package/components/touch-ripple/touch-ripple.js +18 -0
  253. package/components/treeview/treeview-rtl.css +1 -1
  254. package/components/treeview/treeview.css +1 -1
  255. package/components/treeview/treeview.js +83 -1
  256. package/components/treeview/treeview.umd.js +1 -0
  257. package/components/typography/typography.js +3 -1
  258. package/components/typography/typography.umd.js +1 -0
  259. package/{esm/components → components}/view/resizable-view.js +23 -21
  260. package/{esm/components → components}/view/view-class.js +48 -67
  261. package/{esm/components → components}/view/view.js +37 -28
  262. package/{esm/components → components}/virtual-list/virtual-list-class.js +153 -170
  263. package/components/virtual-list/virtual-list.js +19 -1
  264. package/components/virtual-list/virtual-list.umd.js +1 -0
  265. package/framework7-bundle-rtl.css +268 -852
  266. package/framework7-bundle-rtl.min.css +3 -3
  267. package/framework7-bundle.css +268 -852
  268. package/{esm/framework7-bundle.js → framework7-bundle.esm.js} +2 -2
  269. package/framework7-bundle.js +30782 -31429
  270. package/framework7-bundle.js.map +1 -1
  271. package/framework7-bundle.less +2 -2
  272. package/framework7-bundle.min.css +3 -3
  273. package/framework7-bundle.min.js +3 -3
  274. package/framework7-bundle.min.js.map +1 -1
  275. package/{esm/framework7-lite-bundle.js → framework7-lite-bundle.esm.js} +2 -2
  276. package/{esm/framework7-lite.js → framework7-lite.esm.js} +2 -2
  277. package/framework7-rtl.css +52 -56
  278. package/framework7-rtl.min.css +3 -3
  279. package/{types/types.d.ts → framework7-types.d.ts} +0 -0
  280. package/framework7.css +52 -56
  281. package/framework7.d.ts +81 -81
  282. package/{esm/framework7.js → framework7.esm.js} +2 -2
  283. package/framework7.js +3386 -4049
  284. package/framework7.js.map +1 -1
  285. package/framework7.less +2 -2
  286. package/framework7.min.css +3 -3
  287. package/framework7.min.js +3 -3
  288. package/framework7.min.js.map +1 -1
  289. package/less/mixins.less +2 -2
  290. package/{esm/modules → modules}/clicks/clicks.js +17 -16
  291. package/modules/component/$h.js +14 -0
  292. package/modules/component/$jsx.js +18 -0
  293. package/modules/component/component-class.js +382 -0
  294. package/modules/component/component.d.ts +2 -0
  295. package/{esm/modules → modules}/component/component.js +23 -17
  296. package/{esm/modules → modules}/component/custom-components.js +0 -0
  297. package/{esm/modules → modules}/component/eventslisteners.js +14 -18
  298. package/modules/component/parse-component.js +80 -0
  299. package/{esm/modules → modules}/component/patch.js +1 -1
  300. package/{esm/modules → modules}/component/snabbdom/h.js +0 -0
  301. package/{esm/modules → modules}/component/snabbdom/helpers/attachto.js +0 -0
  302. package/{esm/modules → modules}/component/snabbdom/hooks.js +0 -0
  303. package/{esm/modules → modules}/component/snabbdom/htmldomapi.js +0 -0
  304. package/{esm/modules → modules}/component/snabbdom/is.js +0 -0
  305. package/{esm/modules → modules}/component/snabbdom/modules/attributes.js +0 -0
  306. package/{esm/modules → modules}/component/snabbdom/modules/class.js +0 -0
  307. package/{esm/modules → modules}/component/snabbdom/modules/dataset.js +0 -0
  308. package/{esm/modules → modules}/component/snabbdom/modules/eventlisteners.js +0 -0
  309. package/{esm/modules → modules}/component/snabbdom/modules/hero.js +1 -1
  310. package/{esm/modules → modules}/component/snabbdom/modules/module.js +0 -0
  311. package/{esm/modules → modules}/component/snabbdom/modules/props.js +0 -0
  312. package/{esm/modules → modules}/component/snabbdom/modules/style.js +1 -1
  313. package/{esm/modules → modules}/component/snabbdom/snabbdom.bundle.js +0 -0
  314. package/{esm/modules → modules}/component/snabbdom/snabbdom.js +6 -18
  315. package/{esm/modules → modules}/component/snabbdom/thunk.js +0 -0
  316. package/{esm/modules → modules}/component/snabbdom/tovnode.js +0 -0
  317. package/{esm/modules → modules}/component/snabbdom/vnode.js +0 -0
  318. package/{esm/modules → modules}/component/vdom.js +106 -130
  319. package/{esm/modules → modules}/demo-module.js +15 -7
  320. package/{esm/modules → modules}/device/device.js +12 -11
  321. package/{esm/modules → modules}/history/history.js +2 -1
  322. package/{esm/modules → modules}/request/request.js +2 -2
  323. package/modules/resize/resize.js +65 -0
  324. package/{esm/modules → modules}/router/app-router-check.js +1 -1
  325. package/{esm/modules → modules}/router/async-component.js +3 -3
  326. package/{esm/modules → modules}/router/back.js +117 -117
  327. package/{esm/modules → modules}/router/clear-previous-history.js +8 -8
  328. package/modules/router/component-loader.js +174 -0
  329. package/{esm/modules → modules}/router/modal.js +49 -49
  330. package/{esm/modules → modules}/router/navigate.js +140 -221
  331. package/{esm/modules → modules}/router/process-route-queue.js +20 -17
  332. package/{esm/modules → modules}/router/redirect.js +7 -11
  333. package/{esm/modules → modules}/router/router-class.js +411 -432
  334. package/{esm/modules → modules}/router/router.js +5 -3
  335. package/{esm/modules → modules}/router/swipe-back.js +143 -177
  336. package/{esm/modules → modules}/router/tab.js +46 -46
  337. package/{esm/modules → modules}/service-worker/service-worker.js +41 -37
  338. package/modules/store/create-store.js +149 -0
  339. package/{esm/modules → modules}/store/store.js +2 -2
  340. package/{esm/modules → modules}/support/support.js +1 -1
  341. package/{esm/modules → modules}/touch/touch.js +71 -70
  342. package/{esm/modules → modules}/utils/utils.js +2 -2
  343. package/package.json +252 -11
  344. package/shared/$jsx.js +22 -0
  345. package/shared/class.js +143 -0
  346. package/shared/constructor-methods.js +42 -0
  347. package/{esm/shared → shared}/dom7.js +2 -1
  348. package/shared/events-class.js +100 -0
  349. package/{types/shared → shared}/get-device.d.ts +0 -0
  350. package/{esm/shared → shared}/get-device.js +32 -37
  351. package/{types/shared → shared}/get-support.d.ts +0 -0
  352. package/{esm/shared → shared}/get-support.js +7 -6
  353. package/{esm/shared → shared}/history.js +61 -47
  354. package/shared/modal-methods.js +90 -0
  355. package/{types/shared → shared}/request.d.ts +0 -0
  356. package/shared/request.js +474 -0
  357. package/{types/shared → shared}/utils.d.ts +0 -0
  358. package/{esm/shared → shared}/utils.js +125 -162
  359. package/bundle/package.json +0 -8
  360. package/cjs/components/accordion/accordion.js +0 -136
  361. package/cjs/components/actions/actions-class.js +0 -383
  362. package/cjs/components/actions/actions.js +0 -58
  363. package/cjs/components/app/app-class.js +0 -378
  364. package/cjs/components/app/load-module.js +0 -155
  365. package/cjs/components/appbar/appbar.js +0 -8
  366. package/cjs/components/area-chart/area-chart-class.js +0 -526
  367. package/cjs/components/area-chart/area-chart.js +0 -56
  368. package/cjs/components/autocomplete/autocomplete-class.js +0 -975
  369. package/cjs/components/autocomplete/autocomplete.js +0 -93
  370. package/cjs/components/badge/badge.js +0 -8
  371. package/cjs/components/block/block.js +0 -8
  372. package/cjs/components/button/button.js +0 -8
  373. package/cjs/components/calendar/calendar-class.js +0 -2078
  374. package/cjs/components/calendar/calendar.js +0 -124
  375. package/cjs/components/card/card.js +0 -625
  376. package/cjs/components/checkbox/checkbox.js +0 -8
  377. package/cjs/components/chip/chip.js +0 -8
  378. package/cjs/components/color-picker/color-picker-class.js +0 -1022
  379. package/cjs/components/color-picker/color-picker.js +0 -105
  380. package/cjs/components/color-picker/modules/alpha-slider.js +0 -101
  381. package/cjs/components/color-picker/modules/brightness-slider.js +0 -86
  382. package/cjs/components/color-picker/modules/current-color.js +0 -23
  383. package/cjs/components/color-picker/modules/hex.js +0 -81
  384. package/cjs/components/color-picker/modules/hs-spectrum.js +0 -137
  385. package/cjs/components/color-picker/modules/hsb-sliders.js +0 -206
  386. package/cjs/components/color-picker/modules/hue-slider.js +0 -78
  387. package/cjs/components/color-picker/modules/initial-current-colors.js +0 -54
  388. package/cjs/components/color-picker/modules/palette.js +0 -61
  389. package/cjs/components/color-picker/modules/rgb-bars.js +0 -196
  390. package/cjs/components/color-picker/modules/rgb-sliders.js +0 -198
  391. package/cjs/components/color-picker/modules/sb-spectrum.js +0 -137
  392. package/cjs/components/color-picker/modules/wheel.js +0 -198
  393. package/cjs/components/contacts-list/contacts-list.js +0 -8
  394. package/cjs/components/data-table/data-table-class.js +0 -188
  395. package/cjs/components/data-table/data-table.js +0 -75
  396. package/cjs/components/dialog/dialog-class.js +0 -250
  397. package/cjs/components/dialog/dialog.js +0 -297
  398. package/cjs/components/elevation/elevation.js +0 -8
  399. package/cjs/components/fab/fab.js +0 -195
  400. package/cjs/components/form/form.js +0 -341
  401. package/cjs/components/gauge/gauge-class.js +0 -332
  402. package/cjs/components/gauge/gauge.js +0 -103
  403. package/cjs/components/grid/grid.js +0 -233
  404. package/cjs/components/icon/icon.js +0 -8
  405. package/cjs/components/infinite-scroll/infinite-scroll.js +0 -111
  406. package/cjs/components/input/input.js +0 -396
  407. package/cjs/components/lazy/lazy.js +0 -283
  408. package/cjs/components/link/link.js +0 -8
  409. package/cjs/components/list/list.js +0 -8
  410. package/cjs/components/list-index/list-index-class.js +0 -405
  411. package/cjs/components/list-index/list-index.js +0 -77
  412. package/cjs/components/login-screen/login-screen-class.js +0 -68
  413. package/cjs/components/login-screen/login-screen.js +0 -44
  414. package/cjs/components/menu/menu.js +0 -92
  415. package/cjs/components/messagebar/messagebar-class.js +0 -446
  416. package/cjs/components/messagebar/messagebar.js +0 -78
  417. package/cjs/components/messages/messages-class.js +0 -633
  418. package/cjs/components/messages/messages.js +0 -76
  419. package/cjs/components/modal/custom-modal-class.js +0 -99
  420. package/cjs/components/modal/modal-class.js +0 -277
  421. package/cjs/components/modal/modal.js +0 -32
  422. package/cjs/components/navbar/navbar.js +0 -833
  423. package/cjs/components/notification/notification-class.js +0 -269
  424. package/cjs/components/notification/notification.js +0 -44
  425. package/cjs/components/page/page.js +0 -8
  426. package/cjs/components/panel/panel-class.js +0 -660
  427. package/cjs/components/panel/panel.js +0 -219
  428. package/cjs/components/panel/resizable-panel.js +0 -197
  429. package/cjs/components/panel/swipe-panel.js +0 -363
  430. package/cjs/components/photo-browser/photo-browser-class.js +0 -781
  431. package/cjs/components/photo-browser/photo-browser.js +0 -78
  432. package/cjs/components/picker/picker-class.js +0 -704
  433. package/cjs/components/picker/picker-column.js +0 -389
  434. package/cjs/components/picker/picker.js +0 -77
  435. package/cjs/components/pie-chart/pie-chart-class.js +0 -290
  436. package/cjs/components/pie-chart/pie-chart.js +0 -44
  437. package/cjs/components/popover/popover-class.js +0 -365
  438. package/cjs/components/popover/popover.js +0 -93
  439. package/cjs/components/popup/popup-class.js +0 -416
  440. package/cjs/components/popup/popup.js +0 -57
  441. package/cjs/components/preloader/preloader.js +0 -111
  442. package/cjs/components/progressbar/progressbar.js +0 -185
  443. package/cjs/components/pull-to-refresh/pull-to-refresh-class.js +0 -627
  444. package/cjs/components/pull-to-refresh/pull-to-refresh.js +0 -74
  445. package/cjs/components/radio/radio.js +0 -8
  446. package/cjs/components/range/range-class.js +0 -674
  447. package/cjs/components/range/range.js +0 -93
  448. package/cjs/components/searchbar/remove-diacritics.js +0 -283
  449. package/cjs/components/searchbar/searchbar-class.js +0 -739
  450. package/cjs/components/searchbar/searchbar.js +0 -141
  451. package/cjs/components/sheet/sheet-class.js +0 -583
  452. package/cjs/components/sheet/sheet.js +0 -83
  453. package/cjs/components/skeleton/skeleton.js +0 -8
  454. package/cjs/components/smart-select/smart-select-class.js +0 -1005
  455. package/cjs/components/smart-select/smart-select.js +0 -151
  456. package/cjs/components/sortable/sortable.js +0 -322
  457. package/cjs/components/statusbar/statusbar.js +0 -226
  458. package/cjs/components/stepper/stepper-class.js +0 -497
  459. package/cjs/components/stepper/stepper.js +0 -96
  460. package/cjs/components/subnavbar/subnavbar.js +0 -28
  461. package/cjs/components/swipeout/swipeout.js +0 -618
  462. package/cjs/components/swiper/swiper.js +0 -189
  463. package/cjs/components/tabs/tabs.js +0 -296
  464. package/cjs/components/text-editor/text-editor-class.js +0 -627
  465. package/cjs/components/text-editor/text-editor.js +0 -93
  466. package/cjs/components/timeline/timeline.js +0 -8
  467. package/cjs/components/toast/toast-class.js +0 -142
  468. package/cjs/components/toast/toast.js +0 -51
  469. package/cjs/components/toggle/toggle-class.js +0 -213
  470. package/cjs/components/toggle/toggle.js +0 -72
  471. package/cjs/components/toolbar/toolbar.js +0 -234
  472. package/cjs/components/tooltip/tooltip-class.js +0 -409
  473. package/cjs/components/tooltip/tooltip.js +0 -146
  474. package/cjs/components/touch-ripple/touch-ripple-class.js +0 -110
  475. package/cjs/components/touch-ripple/touch-ripple.js +0 -34
  476. package/cjs/components/treeview/treeview.js +0 -88
  477. package/cjs/components/typography/typography.js +0 -8
  478. package/cjs/components/view/resizable-view.js +0 -155
  479. package/cjs/components/view/view-class.js +0 -251
  480. package/cjs/components/view/view.js +0 -196
  481. package/cjs/components/virtual-list/virtual-list-class.js +0 -654
  482. package/cjs/components/virtual-list/virtual-list.js +0 -27
  483. package/cjs/framework7-bundle.js +0 -208
  484. package/cjs/framework7-lite-bundle.js +0 -191
  485. package/cjs/framework7-lite.js +0 -87
  486. package/cjs/framework7.js +0 -98
  487. package/cjs/modules/clicks/clicks.js +0 -115
  488. package/cjs/modules/component/$h.js +0 -31
  489. package/cjs/modules/component/$jsx.js +0 -31
  490. package/cjs/modules/component/component-class.js +0 -415
  491. package/cjs/modules/component/component.js +0 -58
  492. package/cjs/modules/component/custom-components.js +0 -6
  493. package/cjs/modules/component/eventslisteners.js +0 -90
  494. package/cjs/modules/component/parse-component.js +0 -80
  495. package/cjs/modules/component/patch.js +0 -21
  496. package/cjs/modules/component/snabbdom/h.js +0 -72
  497. package/cjs/modules/component/snabbdom/helpers/attachto.js +0 -62
  498. package/cjs/modules/component/snabbdom/hooks.js +0 -1
  499. package/cjs/modules/component/snabbdom/htmldomapi.js +0 -90
  500. package/cjs/modules/component/snabbdom/is.js +0 -11
  501. package/cjs/modules/component/snabbdom/modules/attributes.js +0 -61
  502. package/cjs/modules/component/snabbdom/modules/class.js +0 -38
  503. package/cjs/modules/component/snabbdom/modules/dataset.js +0 -47
  504. package/cjs/modules/component/snabbdom/modules/eventlisteners.js +0 -106
  505. package/cjs/modules/component/snabbdom/modules/hero.js +0 -193
  506. package/cjs/modules/component/snabbdom/modules/module.js +0 -1
  507. package/cjs/modules/component/snabbdom/modules/props.js +0 -40
  508. package/cjs/modules/component/snabbdom/modules/style.js +0 -116
  509. package/cjs/modules/component/snabbdom/snabbdom.bundle.js +0 -33
  510. package/cjs/modules/component/snabbdom/snabbdom.js +0 -374
  511. package/cjs/modules/component/snabbdom/thunk.js +0 -66
  512. package/cjs/modules/component/snabbdom/tovnode.js +0 -57
  513. package/cjs/modules/component/snabbdom/vnode.js +0 -20
  514. package/cjs/modules/component/vdom.js +0 -393
  515. package/cjs/modules/demo-module.js +0 -49
  516. package/cjs/modules/device/device.js +0 -56
  517. package/cjs/modules/history/history.js +0 -21
  518. package/cjs/modules/request/request.js +0 -20
  519. package/cjs/modules/resize/resize.js +0 -72
  520. package/cjs/modules/router/app-router-check.js +0 -10
  521. package/cjs/modules/router/async-component.js +0 -33
  522. package/cjs/modules/router/back.js +0 -899
  523. package/cjs/modules/router/clear-previous-history.js +0 -50
  524. package/cjs/modules/router/component-loader.js +0 -140
  525. package/cjs/modules/router/modal.js +0 -254
  526. package/cjs/modules/router/navigate.js +0 -1054
  527. package/cjs/modules/router/process-route-queue.js +0 -80
  528. package/cjs/modules/router/redirect.js +0 -52
  529. package/cjs/modules/router/router-class.js +0 -1500
  530. package/cjs/modules/router/router.js +0 -36
  531. package/cjs/modules/router/swipe-back.js +0 -735
  532. package/cjs/modules/router/tab.js +0 -264
  533. package/cjs/modules/service-worker/service-worker.js +0 -101
  534. package/cjs/modules/store/create-store.js +0 -169
  535. package/cjs/modules/store/store.js +0 -21
  536. package/cjs/modules/support/support.js +0 -14
  537. package/cjs/modules/touch/touch.js +0 -585
  538. package/cjs/modules/utils/utils.js +0 -21
  539. package/cjs/shared/$jsx.js +0 -39
  540. package/cjs/shared/class.js +0 -206
  541. package/cjs/shared/constructor-methods.js +0 -73
  542. package/cjs/shared/dom7.js +0 -17
  543. package/cjs/shared/events-class.js +0 -125
  544. package/cjs/shared/get-device.js +0 -157
  545. package/cjs/shared/get-support.js +0 -44
  546. package/cjs/shared/history.js +0 -185
  547. package/cjs/shared/modal-methods.js +0 -105
  548. package/cjs/shared/request.js +0 -552
  549. package/cjs/shared/utils.js +0 -472
  550. package/components/accordion/package.json +0 -9
  551. package/components/actions/package.json +0 -9
  552. package/components/app/package.json +0 -9
  553. package/components/appbar/package.json +0 -9
  554. package/components/area-chart/package.json +0 -9
  555. package/components/autocomplete/package.json +0 -9
  556. package/components/badge/package.json +0 -9
  557. package/components/block/package.json +0 -9
  558. package/components/button/package.json +0 -9
  559. package/components/calendar/package.json +0 -9
  560. package/components/card/package.json +0 -9
  561. package/components/checkbox/package.json +0 -9
  562. package/components/chip/package.json +0 -9
  563. package/components/color-picker/package.json +0 -9
  564. package/components/contacts-list/package.json +0 -9
  565. package/components/data-table/package.json +0 -9
  566. package/components/dialog/package.json +0 -9
  567. package/components/elevation/package.json +0 -9
  568. package/components/fab/package.json +0 -9
  569. package/components/form/package.json +0 -9
  570. package/components/gauge/package.json +0 -9
  571. package/components/grid/package.json +0 -9
  572. package/components/icon/package.json +0 -9
  573. package/components/infinite-scroll/package.json +0 -9
  574. package/components/input/package.json +0 -9
  575. package/components/lazy/package.json +0 -9
  576. package/components/link/package.json +0 -9
  577. package/components/list/package.json +0 -9
  578. package/components/list-index/package.json +0 -9
  579. package/components/login-screen/package.json +0 -9
  580. package/components/menu/package.json +0 -9
  581. package/components/messagebar/package.json +0 -9
  582. package/components/messages/package.json +0 -9
  583. package/components/modal/package.json +0 -9
  584. package/components/navbar/package.json +0 -9
  585. package/components/notification/package.json +0 -9
  586. package/components/page/package.json +0 -9
  587. package/components/panel/package.json +0 -9
  588. package/components/photo-browser/package.json +0 -9
  589. package/components/picker/package.json +0 -9
  590. package/components/pie-chart/package.json +0 -9
  591. package/components/popover/package.json +0 -9
  592. package/components/popup/package.json +0 -9
  593. package/components/preloader/package.json +0 -9
  594. package/components/progressbar/package.json +0 -9
  595. package/components/pull-to-refresh/package.json +0 -9
  596. package/components/radio/package.json +0 -9
  597. package/components/range/package.json +0 -9
  598. package/components/searchbar/package.json +0 -9
  599. package/components/sheet/package.json +0 -9
  600. package/components/skeleton/package.json +0 -9
  601. package/components/smart-select/package.json +0 -9
  602. package/components/sortable/package.json +0 -9
  603. package/components/statusbar/package.json +0 -9
  604. package/components/stepper/package.json +0 -9
  605. package/components/subnavbar/package.json +0 -9
  606. package/components/swipeout/package.json +0 -9
  607. package/components/swiper/package.json +0 -9
  608. package/components/tabs/package.json +0 -9
  609. package/components/text-editor/package.json +0 -9
  610. package/components/timeline/package.json +0 -9
  611. package/components/toast/package.json +0 -9
  612. package/components/toggle/package.json +0 -9
  613. package/components/toolbar/package.json +0 -9
  614. package/components/tooltip/package.json +0 -9
  615. package/components/touch-ripple/package.json +0 -9
  616. package/components/treeview/package.json +0 -9
  617. package/components/typography/package.json +0 -9
  618. package/components/view/package.json +0 -9
  619. package/components/virtual-list/package.json +0 -9
  620. package/core/package.json +0 -8
  621. package/esm/components/accordion/accordion.js +0 -126
  622. package/esm/components/actions/actions-class.js +0 -373
  623. package/esm/components/actions/actions.js +0 -48
  624. package/esm/components/appbar/appbar.js +0 -3
  625. package/esm/components/area-chart/area-chart-class.js +0 -517
  626. package/esm/components/area-chart/area-chart.js +0 -45
  627. package/esm/components/autocomplete/autocomplete.js +0 -82
  628. package/esm/components/calendar/calendar.js +0 -113
  629. package/esm/components/card/card.js +0 -612
  630. package/esm/components/checkbox/checkbox.js +0 -3
  631. package/esm/components/chip/chip.js +0 -3
  632. package/esm/components/color-picker/color-picker.js +0 -94
  633. package/esm/components/contacts-list/contacts-list.js +0 -3
  634. package/esm/components/data-table/data-table.js +0 -64
  635. package/esm/components/dialog/dialog.js +0 -286
  636. package/esm/components/elevation/elevation.js +0 -3
  637. package/esm/components/fab/fab.js +0 -185
  638. package/esm/components/form/form.js +0 -330
  639. package/esm/components/gauge/gauge-class.js +0 -323
  640. package/esm/components/gauge/gauge.js +0 -91
  641. package/esm/components/grid/grid.js +0 -223
  642. package/esm/components/infinite-scroll/infinite-scroll.js +0 -101
  643. package/esm/components/input/input.js +0 -384
  644. package/esm/components/lazy/lazy.js +0 -271
  645. package/esm/components/list-index/list-index.js +0 -65
  646. package/esm/components/login-screen/login-screen-class.js +0 -58
  647. package/esm/components/login-screen/login-screen.js +0 -34
  648. package/esm/components/menu/menu.js +0 -82
  649. package/esm/components/messagebar/messagebar.js +0 -66
  650. package/esm/components/messages/messages.js +0 -65
  651. package/esm/components/notification/notification.js +0 -33
  652. package/esm/components/panel/panel.js +0 -208
  653. package/esm/components/photo-browser/photo-browser.js +0 -68
  654. package/esm/components/picker/picker.js +0 -66
  655. package/esm/components/pie-chart/pie-chart-class.js +0 -281
  656. package/esm/components/pie-chart/pie-chart.js +0 -33
  657. package/esm/components/popover/popover.js +0 -81
  658. package/esm/components/popup/popup.js +0 -47
  659. package/esm/components/preloader/preloader.js +0 -101
  660. package/esm/components/progressbar/progressbar.js +0 -175
  661. package/esm/components/pull-to-refresh/pull-to-refresh.js +0 -62
  662. package/esm/components/radio/radio.js +0 -3
  663. package/esm/components/range/range.js +0 -81
  664. package/esm/components/searchbar/remove-diacritics.js +0 -277
  665. package/esm/components/searchbar/searchbar.js +0 -129
  666. package/esm/components/sheet/sheet.js +0 -71
  667. package/esm/components/skeleton/skeleton.js +0 -3
  668. package/esm/components/smart-select/smart-select.js +0 -139
  669. package/esm/components/sortable/sortable.js +0 -310
  670. package/esm/components/stepper/stepper.js +0 -84
  671. package/esm/components/swipeout/swipeout.js +0 -606
  672. package/esm/components/swiper/swiper.js +0 -177
  673. package/esm/components/tabs/tabs.js +0 -286
  674. package/esm/components/text-editor/text-editor.js +0 -81
  675. package/esm/components/timeline/timeline.js +0 -3
  676. package/esm/components/toast/toast-class.js +0 -132
  677. package/esm/components/toast/toast.js +0 -40
  678. package/esm/components/toggle/toggle.js +0 -61
  679. package/esm/components/tooltip/tooltip.js +0 -135
  680. package/esm/components/touch-ripple/touch-ripple-class.js +0 -103
  681. package/esm/components/touch-ripple/touch-ripple.js +0 -25
  682. package/esm/components/treeview/treeview.js +0 -78
  683. package/esm/components/typography/typography.js +0 -3
  684. package/esm/components/virtual-list/virtual-list.js +0 -17
  685. package/esm/modules/component/$h.js +0 -20
  686. package/esm/modules/component/$jsx.js +0 -24
  687. package/esm/modules/component/component-class.js +0 -402
  688. package/esm/modules/component/parse-component.js +0 -70
  689. package/esm/modules/resize/resize.js +0 -64
  690. package/esm/modules/router/component-loader.js +0 -133
  691. package/esm/modules/store/create-store.js +0 -164
  692. package/esm/shared/$jsx.js +0 -33
  693. package/esm/shared/class.js +0 -197
  694. package/esm/shared/constructor-methods.js +0 -65
  695. package/esm/shared/events-class.js +0 -119
  696. package/esm/shared/modal-methods.js +0 -95
  697. package/esm/shared/request.js +0 -545
  698. package/lite/package.json +0 -8
  699. package/lite-bundle/package.json +0 -8
  700. package/modules/clicks/package.json +0 -9
  701. package/modules/component/package.json +0 -9
  702. package/modules/device/package.json +0 -9
  703. package/modules/history/package.json +0 -9
  704. package/modules/request/package.json +0 -9
  705. package/modules/resize/package.json +0 -9
  706. package/modules/router/package.json +0 -9
  707. package/modules/service-worker/package.json +0 -9
  708. package/modules/store/package.json +0 -9
  709. package/modules/support/package.json +0 -9
  710. package/modules/touch/package.json +0 -9
  711. package/modules/utils/package.json +0 -9
  712. package/types/components/accordion/accordion.d.ts +0 -55
  713. package/types/components/actions/actions.d.ts +0 -158
  714. package/types/components/app/app-class.d.ts +0 -196
  715. package/types/components/appbar/appbar.d.ts +0 -10
  716. package/types/components/area-chart/area-chart.d.ts +0 -124
  717. package/types/components/autocomplete/autocomplete.d.ts +0 -191
  718. package/types/components/badge/badge.d.ts +0 -10
  719. package/types/components/block/block.d.ts +0 -10
  720. package/types/components/button/button.d.ts +0 -10
  721. package/types/components/calendar/calendar.d.ts +0 -304
  722. package/types/components/card/card.d.ts +0 -65
  723. package/types/components/checkbox/checkbox.d.ts +0 -10
  724. package/types/components/chip/chip.d.ts +0 -10
  725. package/types/components/color-picker/color-picker.d.ts +0 -229
  726. package/types/components/contacts-list/contacts-list.d.ts +0 -10
  727. package/types/components/data-table/data-table.d.ts +0 -57
  728. package/types/components/dialog/dialog.d.ts +0 -241
  729. package/types/components/elevation/elevation.d.ts +0 -10
  730. package/types/components/fab/fab.d.ts +0 -28
  731. package/types/components/form/form.d.ts +0 -60
  732. package/types/components/gauge/gauge.d.ts +0 -96
  733. package/types/components/grid/grid.d.ts +0 -17
  734. package/types/components/icon/icon.d.ts +0 -10
  735. package/types/components/infinite-scroll/infinite-scroll.d.ts +0 -23
  736. package/types/components/input/input.d.ts +0 -56
  737. package/types/components/lazy/lazy.d.ts +0 -53
  738. package/types/components/link/link.d.ts +0 -10
  739. package/types/components/list/list.d.ts +0 -10
  740. package/types/components/list-index/list-index.d.ts +0 -99
  741. package/types/components/login-screen/login-screen.d.ts +0 -95
  742. package/types/components/menu/menu.d.ts +0 -28
  743. package/types/components/messagebar/messagebar.d.ts +0 -161
  744. package/types/components/messages/messages.d.ts +0 -158
  745. package/types/components/modal/modal.d.ts +0 -78
  746. package/types/components/navbar/navbar.d.ts +0 -75
  747. package/types/components/notification/notification.d.ts +0 -118
  748. package/types/components/page/page.d.ts +0 -10
  749. package/types/components/panel/panel.d.ts +0 -194
  750. package/types/components/photo-browser/photo-browser.d.ts +0 -194
  751. package/types/components/picker/picker.d.ts +0 -216
  752. package/types/components/pie-chart/pie-chart.d.ts +0 -95
  753. package/types/components/popover/popover.d.ts +0 -127
  754. package/types/components/popup/popup.d.ts +0 -135
  755. package/types/components/preloader/preloader.d.ts +0 -18
  756. package/types/components/progressbar/progressbar.d.ts +0 -27
  757. package/types/components/pull-to-refresh/pull-to-refresh.d.ts +0 -99
  758. package/types/components/radio/radio.d.ts +0 -10
  759. package/types/components/range/range.d.ts +0 -121
  760. package/types/components/searchbar/searchbar.d.ts +0 -157
  761. package/types/components/sheet/sheet.d.ts +0 -149
  762. package/types/components/skeleton/skeleton.d.ts +0 -10
  763. package/types/components/smart-select/smart-select.d.ts +0 -199
  764. package/types/components/sortable/sortable.d.ts +0 -46
  765. package/types/components/statusbar/statusbar.d.ts +0 -50
  766. package/types/components/stepper/stepper.d.ts +0 -117
  767. package/types/components/subnavbar/subnavbar.d.ts +0 -11
  768. package/types/components/swipeout/swipeout.d.ts +0 -68
  769. package/types/components/swiper/swiper.d.ts +0 -21
  770. package/types/components/tabs/tabs.d.ts +0 -39
  771. package/types/components/text-editor/text-editor.d.ts +0 -162
  772. package/types/components/timeline/timeline.d.ts +0 -10
  773. package/types/components/toast/toast.d.ts +0 -117
  774. package/types/components/toggle/toggle.d.ts +0 -69
  775. package/types/components/toolbar/toolbar.d.ts +0 -43
  776. package/types/components/tooltip/tooltip.d.ts +0 -101
  777. package/types/components/touch-ripple/touch-ripple.d.ts +0 -21
  778. package/types/components/treeview/treeview.d.ts +0 -38
  779. package/types/components/typography/typography.d.ts +0 -10
  780. package/types/components/view/view.d.ts +0 -205
  781. package/types/components/virtual-list/virtual-list.d.ts +0 -138
  782. package/types/modules/clicks/clicks.d.ts +0 -19
  783. package/types/modules/component/component.d.ts +0 -94
  784. package/types/modules/component/snabbdom/h.d.ts +0 -10
  785. package/types/modules/component/snabbdom/helpers/attachto.d.ts +0 -9
  786. package/types/modules/component/snabbdom/hooks.d.ts +0 -23
  787. package/types/modules/component/snabbdom/htmldomapi.d.ts +0 -19
  788. package/types/modules/component/snabbdom/is.d.ts +0 -2
  789. package/types/modules/component/snabbdom/modules/attributes.d.ts +0 -4
  790. package/types/modules/component/snabbdom/modules/class.d.ts +0 -4
  791. package/types/modules/component/snabbdom/modules/dataset.d.ts +0 -4
  792. package/types/modules/component/snabbdom/modules/eventlisteners.d.ts +0 -8
  793. package/types/modules/component/snabbdom/modules/hero.d.ts +0 -6
  794. package/types/modules/component/snabbdom/modules/module.d.ts +0 -9
  795. package/types/modules/component/snabbdom/modules/props.d.ts +0 -4
  796. package/types/modules/component/snabbdom/modules/style.d.ts +0 -7
  797. package/types/modules/component/snabbdom/snabbdom.bundle.d.ts +0 -5
  798. package/types/modules/component/snabbdom/snabbdom.d.ts +0 -6
  799. package/types/modules/component/snabbdom/thunk.d.ts +0 -14
  800. package/types/modules/component/snabbdom/tovnode.d.ts +0 -4
  801. package/types/modules/component/snabbdom/vnode.d.ts +0 -36
  802. package/types/modules/device/device.d.ts +0 -14
  803. package/types/modules/request/request.d.ts +0 -15
  804. package/types/modules/resize/resize.d.ts +0 -25
  805. package/types/modules/router/router.d.ts +0 -356
  806. package/types/modules/service-worker/service-worker.d.ts +0 -38
  807. package/types/modules/store/store.d.ts +0 -40
  808. package/types/modules/support/support.d.ts +0 -15
  809. package/types/modules/touch/touch.d.ts +0 -62
  810. package/types/modules/utils/utils.d.ts +0 -15
  811. package/types/package.json +0 -6
@@ -0,0 +1,507 @@
1
+ import $ from '../../shared/dom7';
2
+ import { extend, deleteProps } from '../../shared/utils';
3
+ import Framework7Class from '../../shared/class';
4
+ /** @jsx $jsx */
5
+
6
+ import $jsx from '../../shared/$jsx';
7
+
8
+ class AreaChart extends Framework7Class {
9
+ constructor(app, params = {}) {
10
+ super(params, [app]);
11
+ const self = this;
12
+ const defaults = extend({}, app.params.areaChart); // Extend defaults with modules params
13
+
14
+ self.useModulesParams(defaults);
15
+ self.params = extend(defaults, params);
16
+ const {
17
+ el
18
+ } = self.params;
19
+ if (!el) return self;
20
+ const $el = $(el);
21
+ if ($el.length === 0) return self;
22
+ if ($el[0].f7AreaChart) return $el[0].f7AreaChart;
23
+ extend(self, {
24
+ app,
25
+ $el,
26
+ el: $el && $el[0],
27
+ currentIndex: null,
28
+ hiddenDatasets: [],
29
+ f7Tooltip: null,
30
+ linesOffsets: null
31
+ });
32
+ $el[0].f7AreaChart = self; // Install Modules
33
+
34
+ self.useModules();
35
+ self.onMouseEnter = self.onMouseEnter.bind(self);
36
+ self.onMouseMove = self.onMouseMove.bind(self);
37
+ self.onMouseLeave = self.onMouseLeave.bind(self);
38
+ self.onLegendClick = self.onLegendClick.bind(self);
39
+ self.init();
40
+ return self;
41
+ }
42
+
43
+ getVisibleLabels() {
44
+ const {
45
+ maxAxisLabels,
46
+ axisLabels
47
+ } = this.params;
48
+ if (!maxAxisLabels || axisLabels.length <= maxAxisLabels) return axisLabels;
49
+ const skipStep = Math.ceil(axisLabels.length / maxAxisLabels);
50
+ const filtered = axisLabels.filter((label, index) => index % skipStep === 0);
51
+ return filtered;
52
+ }
53
+
54
+ getSummValues() {
55
+ const {
56
+ datasets
57
+ } = this.params;
58
+ const {
59
+ hiddenDatasets
60
+ } = this;
61
+ const summValues = [];
62
+ datasets.filter((dataset, index) => !hiddenDatasets.includes(index)).forEach(({
63
+ values
64
+ }) => {
65
+ values.forEach((value, valueIndex) => {
66
+ if (!summValues[valueIndex]) summValues[valueIndex] = 0;
67
+ summValues[valueIndex] += value;
68
+ });
69
+ });
70
+ return summValues;
71
+ }
72
+
73
+ getChartData() {
74
+ const {
75
+ datasets,
76
+ lineChart,
77
+ width,
78
+ height
79
+ } = this.params;
80
+ const {
81
+ hiddenDatasets
82
+ } = this;
83
+ const data = [];
84
+
85
+ if (!datasets.length) {
86
+ return data;
87
+ }
88
+
89
+ const lastValues = datasets[0].values.map(() => 0);
90
+ let maxValue = 0;
91
+
92
+ if (lineChart) {
93
+ datasets.filter((dataset, index) => !hiddenDatasets.includes(index)).forEach(({
94
+ values
95
+ }) => {
96
+ const datasetMaxValue = Math.max(...values);
97
+ if (datasetMaxValue > maxValue) maxValue = datasetMaxValue;
98
+ });
99
+ } else {
100
+ maxValue = Math.max(...this.getSummValues());
101
+ }
102
+
103
+ datasets.filter((dataset, index) => !hiddenDatasets.includes(index)).forEach(({
104
+ label,
105
+ values,
106
+ color
107
+ }) => {
108
+ const points = values.map((originalValue, valueIndex) => {
109
+ lastValues[valueIndex] += originalValue;
110
+ const value = lineChart ? originalValue : lastValues[valueIndex];
111
+ const x = valueIndex / (values.length - 1) * width;
112
+ const y = height - value / maxValue * height;
113
+
114
+ if (lineChart) {
115
+ return `${valueIndex === 0 ? 'M' : 'L'}${x},${y}`;
116
+ }
117
+
118
+ return `${x} ${y}`;
119
+ });
120
+
121
+ if (!lineChart) {
122
+ points.push(`${width} ${height} 0 ${height}`);
123
+ }
124
+
125
+ data.push({
126
+ label,
127
+ points: points.join(' '),
128
+ color
129
+ });
130
+ });
131
+ return data.reverse();
132
+ }
133
+
134
+ getVerticalLines() {
135
+ const {
136
+ datasets,
137
+ width
138
+ } = this.params;
139
+ const lines = [];
140
+
141
+ if (!datasets.length) {
142
+ return lines;
143
+ }
144
+
145
+ const values = datasets[0].values;
146
+ values.forEach((value, valueIndex) => {
147
+ const x = valueIndex / (values.length - 1) * width;
148
+ lines.push(x);
149
+ });
150
+ return lines;
151
+ }
152
+
153
+ toggleDataset(index) {
154
+ const {
155
+ hiddenDatasets,
156
+ params: {
157
+ toggleDatasets
158
+ }
159
+ } = this;
160
+ if (!toggleDatasets) return;
161
+
162
+ if (hiddenDatasets.includes(index)) {
163
+ hiddenDatasets.splice(hiddenDatasets.indexOf(index), 1);
164
+ } else {
165
+ hiddenDatasets.push(index);
166
+ }
167
+
168
+ if (this.$legendEl) {
169
+ this.$legendEl.find('.area-chart-legend-item').removeClass('area-chart-legend-item-hidden');
170
+ hiddenDatasets.forEach(i => {
171
+ this.$legendEl.find(`.area-chart-legend-item[data-index="${i}"]`).addClass('area-chart-legend-item-hidden');
172
+ });
173
+ }
174
+
175
+ this.update({}, true);
176
+ }
177
+
178
+ formatAxisLabel(label) {
179
+ const {
180
+ formatAxisLabel
181
+ } = this.params;
182
+ if (formatAxisLabel) return formatAxisLabel.call(this, label);
183
+ return label;
184
+ }
185
+
186
+ formatLegendLabel(label) {
187
+ const {
188
+ formatLegendLabel
189
+ } = this.params;
190
+ if (formatLegendLabel) return formatLegendLabel.call(this, label);
191
+ return label;
192
+ }
193
+
194
+ calcLinesOffsets() {
195
+ const lines = this.svgEl.querySelectorAll('line');
196
+ this.linesOffsets = [];
197
+
198
+ for (let i = 0; i < lines.length; i += 1) {
199
+ this.linesOffsets.push(lines[i].getBoundingClientRect().left);
200
+ }
201
+ }
202
+
203
+ formatTooltip() {
204
+ const self = this;
205
+ const {
206
+ currentIndex,
207
+ hiddenDatasets,
208
+ params: {
209
+ datasets,
210
+ axisLabels,
211
+ formatTooltip,
212
+ formatTooltipTotal,
213
+ formatTooltipAxisLabel,
214
+ formatTooltipDataset
215
+ }
216
+ } = self;
217
+ if (currentIndex === null) return '';
218
+ let total = 0;
219
+ const currentValues = datasets.filter((dataset, index) => !hiddenDatasets.includes(index)).map(dataset => ({
220
+ color: dataset.color,
221
+ label: dataset.label,
222
+ value: dataset.values[currentIndex]
223
+ }));
224
+ currentValues.forEach(dataset => {
225
+ total += dataset.value;
226
+ });
227
+
228
+ if (formatTooltip) {
229
+ return formatTooltip({
230
+ index: currentIndex,
231
+ total,
232
+ datasets: currentValues
233
+ });
234
+ }
235
+
236
+ let labelText = formatTooltipAxisLabel ? formatTooltipAxisLabel.call(self, axisLabels[currentIndex]) : this.formatAxisLabel(axisLabels[currentIndex]);
237
+ if (!labelText) labelText = '';
238
+ const totalText = formatTooltipTotal ? formatTooltipTotal.call(self, total) : total; // prettier-ignore
239
+
240
+ const datasetsText = currentValues.length > 0 ? `
241
+ <ul class="area-chart-tooltip-list">
242
+ ${currentValues.map(({
243
+ label,
244
+ color,
245
+ value
246
+ }) => {
247
+ const valueText = formatTooltipDataset ? formatTooltipDataset.call(self, label, value, color) : `${label ? `${label}: ` : ''}${value}`;
248
+ return `
249
+ <li><span style="background-color: ${color};"></span>${valueText}</li>
250
+ `;
251
+ }).join('')}
252
+ </ul>` : ''; // prettier-ignore
253
+
254
+ return `
255
+ <div class="area-chart-tooltip-label">${labelText}</div>
256
+ <div class="area-chart-tooltip-total">${totalText}</div>
257
+ ${datasetsText}
258
+ `;
259
+ }
260
+
261
+ setTooltip() {
262
+ const self = this;
263
+ const {
264
+ app,
265
+ el,
266
+ svgEl,
267
+ hiddenDatasets,
268
+ currentIndex,
269
+ params: {
270
+ tooltip,
271
+ datasets
272
+ }
273
+ } = self;
274
+ if (!tooltip) return;
275
+ const hasVisibleDataSets = datasets.filter((dataset, index) => !hiddenDatasets.includes(index)).length > 0;
276
+
277
+ if (!hasVisibleDataSets) {
278
+ if (self.f7Tooltip && self.f7Tooltip.hide) self.f7Tooltip.hide();
279
+ return;
280
+ }
281
+
282
+ if (currentIndex !== null && !self.f7Tooltip) {
283
+ self.f7Tooltip = app.tooltip.create({
284
+ trigger: 'manual',
285
+ containerEl: el,
286
+ targetEl: svgEl.querySelector(`line[data-index="${currentIndex}"]`),
287
+ text: self.formatTooltip(),
288
+ cssClass: 'area-chart-tooltip'
289
+ });
290
+
291
+ if (self.f7Tooltip && self.f7Tooltip.show) {
292
+ self.f7Tooltip.show();
293
+ }
294
+
295
+ return;
296
+ }
297
+
298
+ if (!self.f7Tooltip || !self.f7Tooltip.hide || !self.f7Tooltip.show) {
299
+ return;
300
+ }
301
+
302
+ if (currentIndex !== null) {
303
+ self.f7Tooltip.setText(self.formatTooltip());
304
+ self.f7Tooltip.setTargetEl(svgEl.querySelector(`line[data-index="${currentIndex}"]`));
305
+ self.f7Tooltip.show();
306
+ } else {
307
+ self.f7Tooltip.hide();
308
+ }
309
+ }
310
+
311
+ setCurrentIndex(index) {
312
+ if (index === this.currentIndex) return;
313
+ this.currentIndex = index;
314
+ this.$el.trigger('areachart:select', {
315
+ index
316
+ });
317
+ this.emit('local::select areaChartSelect', this, index);
318
+ this.$svgEl.find('line').removeClass('area-chart-current-line');
319
+ this.$svgEl.find(`line[data-index="${index}"]`).addClass('area-chart-current-line');
320
+ this.setTooltip();
321
+ }
322
+
323
+ onLegendClick(e) {
324
+ const index = parseInt($(e.target).closest('.area-chart-legend-item').attr('data-index'), 10);
325
+ this.toggleDataset(index);
326
+ }
327
+
328
+ onMouseEnter() {
329
+ this.calcLinesOffsets();
330
+ }
331
+
332
+ onMouseMove(e) {
333
+ const self = this;
334
+
335
+ if (!self.linesOffsets) {
336
+ self.calcLinesOffsets();
337
+ }
338
+
339
+ let currentLeft = e.pageX;
340
+ if (typeof currentLeft === 'undefined') currentLeft = 0;
341
+ const distances = self.linesOffsets.map(left => Math.abs(currentLeft - left));
342
+ const minDistance = Math.min(...distances);
343
+ const closestIndex = distances.indexOf(minDistance);
344
+ self.setCurrentIndex(closestIndex);
345
+ }
346
+
347
+ onMouseLeave() {
348
+ this.setCurrentIndex(null);
349
+ }
350
+
351
+ attachEvents() {
352
+ const {
353
+ svgEl,
354
+ $el
355
+ } = this;
356
+ if (!svgEl) return;
357
+ svgEl.addEventListener('mouseenter', this.onMouseEnter);
358
+ svgEl.addEventListener('mousemove', this.onMouseMove);
359
+ svgEl.addEventListener('mouseleave', this.onMouseLeave);
360
+ $el.on('click', '.area-chart-legend-item', this.onLegendClick);
361
+ }
362
+
363
+ detachEvents() {
364
+ const {
365
+ svgEl,
366
+ $el
367
+ } = this;
368
+ if (!svgEl) return;
369
+ svgEl.removeEventListener('mouseenter', this.onMouseEnter);
370
+ svgEl.removeEventListener('mousemove', this.onMouseMove);
371
+ svgEl.removeEventListener('mouseleave', this.onMouseLeave);
372
+ $el.off('click', '.area-chart-legend-item', this.onLegendClick);
373
+ }
374
+
375
+ render() {
376
+ const self = this;
377
+ const {
378
+ lineChart,
379
+ toggleDatasets,
380
+ width,
381
+ height,
382
+ axis,
383
+ axisLabels,
384
+ legend,
385
+ datasets
386
+ } = self.params;
387
+ const chartData = self.getChartData();
388
+ const verticalLines = self.getVerticalLines();
389
+ const visibleLegends = self.getVisibleLabels();
390
+ const LegendItemTag = toggleDatasets ? 'button' : 'span';
391
+ return $jsx("div", null, $jsx("svg", {
392
+ xmlns: "http://www.w3.org/2000/svg",
393
+ width: width,
394
+ height: height,
395
+ viewBox: `0 0 ${width} ${height}`,
396
+ preserveAspectRatio: "none"
397
+ }, chartData.map(data => lineChart ? $jsx("path", {
398
+ stroke: data.color,
399
+ "fill-rule": "evenodd",
400
+ d: data.points
401
+ }) : $jsx("polygon", {
402
+ fill: data.color,
403
+ "fill-rule": "evenodd",
404
+ points: data.points
405
+ })), verticalLines.map((line, index) => $jsx("line", {
406
+ "data-index": index,
407
+ fill: "#000",
408
+ x1: line,
409
+ y1: 0,
410
+ x2: line,
411
+ y2: height
412
+ }))), axis && $jsx("div", {
413
+ class: "area-chart-axis"
414
+ }, axisLabels.map(label => $jsx("span", null, visibleLegends.includes(label) && $jsx("span", null, self.formatAxisLabel(label))))), legend && $jsx("div", {
415
+ class: "area-chart-legend"
416
+ }, datasets.map((dataset, index) => $jsx(LegendItemTag, {
417
+ "data-index": index,
418
+ class: `area-chart-legend-item ${toggleDatasets ? 'area-chart-legend-button' : ''}`,
419
+ _type: toggleDatasets ? 'button' : undefined
420
+ }, $jsx("span", {
421
+ style: `background-color: ${dataset.color}`
422
+ }), self.formatLegendLabel(dataset.label)))));
423
+ }
424
+
425
+ update(newParams = {}, onlySvg = false) {
426
+ const self = this;
427
+ const {
428
+ params
429
+ } = self;
430
+ Object.keys(newParams).forEach(param => {
431
+ if (typeof newParams[param] !== 'undefined') {
432
+ params[param] = newParams[param];
433
+ }
434
+ });
435
+ if (self.$svgEl.length === 0) return self;
436
+ self.detachEvents();
437
+ self.$svgEl.remove();
438
+
439
+ if (!onlySvg) {
440
+ self.$axisEl.remove();
441
+ self.$legendEl.remove();
442
+ }
443
+
444
+ const $rendered = $(self.render());
445
+ const $svgEl = $rendered.find('svg');
446
+ extend(self, {
447
+ svgEl: $svgEl && $svgEl[0],
448
+ $svgEl
449
+ });
450
+
451
+ if (!onlySvg) {
452
+ const $axisEl = $rendered.find('.area-chart-axis');
453
+ const $legendEl = $rendered.find('.area-chart-legend');
454
+ extend(self, {
455
+ $axisEl,
456
+ $legendEl
457
+ });
458
+ self.$el.append($axisEl);
459
+ self.$el.append($legendEl);
460
+ }
461
+
462
+ self.$el.prepend($svgEl);
463
+ self.attachEvents();
464
+ return self;
465
+ }
466
+
467
+ init() {
468
+ const self = this;
469
+ const $rendered = $(self.render());
470
+ const $svgEl = $rendered.find('svg');
471
+ const $axisEl = $rendered.find('.area-chart-axis');
472
+ const $legendEl = $rendered.find('.area-chart-legend');
473
+ extend(self, {
474
+ svgEl: $svgEl && $svgEl[0],
475
+ $svgEl,
476
+ $axisEl,
477
+ $legendEl
478
+ });
479
+ self.$el.append($svgEl);
480
+ self.$el.append($axisEl);
481
+ self.$el.append($legendEl);
482
+ self.attachEvents();
483
+ return self;
484
+ }
485
+
486
+ destroy() {
487
+ const self = this;
488
+ if (!self.$el || self.destroyed) return;
489
+ self.$el.trigger('piechart:beforedestroy');
490
+ self.emit('local::beforeDestroy areaChartBeforeDestroy', self);
491
+ self.detachEvents();
492
+ self.$svgEl.remove();
493
+ self.$axisEl.remove();
494
+ self.$legendEl.remove();
495
+
496
+ if (self.f7Tooltip && self.f7Tooltip.destroy) {
497
+ self.f7Tooltip.destroy();
498
+ }
499
+
500
+ delete self.$el[0].f7AreaChart;
501
+ deleteProps(self);
502
+ self.destroyed = true;
503
+ }
504
+
505
+ }
506
+
507
+ export default AreaChart;
@@ -1 +1 @@
1
- :root{--f7-area-chart-current-line-stroke-width:2px;--f7-area-chart-current-line-stroke:rgba(0, 0, 0, 0.15);--f7-area-chart-axis-text-color:inherit;--f7-area-chart-axis-height:1px;--f7-area-chart-axis-font-size:10px;--f7-area-chart-axis-font-weight:500;--f7-area-chart-tooltip-font-size:12px;--f7-area-chart-tooltip-total-label-text-color:rgba(255, 255, 255, 0.75);--f7-area-chart-tooltip-total-font-size:16px;--f7-area-chart-tooltip-total-font-weight:bold;--f7-area-chart-tooltip-color-size:10px;--f7-area-chart-legend-font-size:14px;--f7-area-chart-legend-font-weight:500;--f7-area-chart-legend-text-color:inherit;--f7-area-chart-legend-padding:4px 8px;--f7-area-chart-legend-border-radius:4px;--f7-area-chart-legend-color-size:14px;--f7-area-chart-line-stroke-width:2px;--f7-area-chart-axis-bg-color:rgba(0, 0, 0, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(0, 0, 0, 0.22)}:root .theme-dark,:root.theme-dark{--f7-area-chart-axis-bg-color:rgba(255, 255, 255, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(255, 255, 255, 0.22)}.area-chart{position:relative}.area-chart svg{display:block;width:100%;font-size:0;height:auto;margin:0 auto}.area-chart path{fill:none;stroke-width:var(--f7-area-chart-line-stroke-width)}.area-chart-current-line{stroke:var(--f7-area-chart-current-line-stroke);stroke-width:var(--f7-area-chart-current-line-stroke-width)}.area-chart-axis{height:var(--f7-area-chart-axis-height);background:var(--f7-area-chart-axis-bg-color);color:var(--f7-area-chart-axis-text-color);display:flex;font-size:var(--f7-area-chart-axis-font-size);font-weight:var(--f7-area-chart-axis-font-weight);justify-content:space-between;line-height:1;margin-bottom:2em}.area-chart-axis>span{padding-top:10px;width:0;display:flex;align-items:flex-start;justify-content:center;white-space:nowrap}.area-chart-axis>span:first-child{justify-content:flex-start}.area-chart-axis>span:last-child{justify-content:flex-end}.area-chart-tooltip{pointer-events:none;text-align:left;font-size:var(--f7-area-chart-tooltip-font-size);line-height:1.4}.area-chart-tooltip-label{color:var(--f7-area-chart-tooltip-total-label-text-color)}.area-chart-tooltip-total{font-size:var(--f7-area-chart-tooltip-total-font-size);font-weight:var(--f7-area-chart-tooltip-total-font-weight)}.area-chart-tooltip-list{list-style:none;margin:0;padding:0}.area-chart-tooltip-list li{white-space:nowrap}.area-chart-tooltip-list span{display:inline-block;width:var(--f7-area-chart-tooltip-color-size);height:var(--f7-area-chart-tooltip-color-size);border-radius:50%;margin-right:4px}.area-chart-axis~.area-chart-legend{margin-top:2em}.area-chart-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;font-size:var(--f7-area-chart-legend-font-size);width:100%;margin-top:1em}.area-chart-legend-button{-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;background-color:transparent;border-radius:0;border:none;outline:0!important;cursor:pointer;font-family:inherit;font-size:inherit;box-shadow:none!important}.area-chart-legend-item{position:relative;color:var(--f7-area-chart-legend-text-color);width:auto;display:flex;align-items:center;font-weight:var(--f7-area-chart-legend-font-weight);transition-duration:.2s;padding:var(--f7-area-chart-legend-padding);border-radius:var(--f7-area-chart-legend-border-radius);overflow:hidden}.area-chart-legend-item span{width:var(--f7-area-chart-legend-color-size);height:var(--f7-area-chart-legend-color-size);margin-right:4px;border-radius:50%;transition-duration:.2s}.area-chart-legend-item-hidden{color:var(--f7-area-chart-legend-disabled-text-color)}.area-chart-legend-item-hidden span{background-color:var(--f7-area-chart-legend-disabled-text-color)!important}
1
+ :root{--f7-area-chart-current-line-stroke-width:2px;--f7-area-chart-current-line-stroke:rgba(0, 0, 0, 0.15);--f7-area-chart-axis-text-color:inherit;--f7-area-chart-axis-height:1px;--f7-area-chart-axis-font-size:10px;--f7-area-chart-axis-font-weight:500;--f7-area-chart-tooltip-font-size:12px;--f7-area-chart-tooltip-total-label-text-color:rgba(255, 255, 255, 0.75);--f7-area-chart-tooltip-total-font-size:16px;--f7-area-chart-tooltip-total-font-weight:bold;--f7-area-chart-tooltip-color-size:10px;--f7-area-chart-legend-font-size:14px;--f7-area-chart-legend-font-weight:500;--f7-area-chart-legend-text-color:inherit;--f7-area-chart-legend-padding:4px 8px;--f7-area-chart-legend-border-radius:4px;--f7-area-chart-legend-color-size:14px;--f7-area-chart-line-stroke-width:2px;--f7-area-chart-axis-bg-color:rgba(0, 0, 0, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(0, 0, 0, 0.22)}:root .dark,:root.dark{--f7-area-chart-axis-bg-color:rgba(255, 255, 255, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(255, 255, 255, 0.22)}.area-chart{position:relative}.area-chart svg{display:block;width:100%;font-size:0;height:auto;margin:0 auto}.area-chart path{fill:none;stroke-width:var(--f7-area-chart-line-stroke-width)}.area-chart-current-line{stroke:var(--f7-area-chart-current-line-stroke);stroke-width:var(--f7-area-chart-current-line-stroke-width)}.area-chart-axis{height:var(--f7-area-chart-axis-height);background:var(--f7-area-chart-axis-bg-color);color:var(--f7-area-chart-axis-text-color);display:flex;font-size:var(--f7-area-chart-axis-font-size);font-weight:var(--f7-area-chart-axis-font-weight);justify-content:space-between;line-height:1;margin-bottom:2em}.area-chart-axis>span{padding-top:10px;width:0;display:flex;align-items:flex-start;justify-content:center;white-space:nowrap}.area-chart-axis>span:first-child{justify-content:flex-start}.area-chart-axis>span:last-child{justify-content:flex-end}.area-chart-tooltip{pointer-events:none;text-align:left;font-size:var(--f7-area-chart-tooltip-font-size);line-height:1.4}.area-chart-tooltip-label{color:var(--f7-area-chart-tooltip-total-label-text-color)}.area-chart-tooltip-total{font-size:var(--f7-area-chart-tooltip-total-font-size);font-weight:var(--f7-area-chart-tooltip-total-font-weight)}.area-chart-tooltip-list{list-style:none;margin:0;padding:0}.area-chart-tooltip-list li{white-space:nowrap}.area-chart-tooltip-list span{display:inline-block;width:var(--f7-area-chart-tooltip-color-size);height:var(--f7-area-chart-tooltip-color-size);border-radius:50%;margin-right:4px}.area-chart-axis~.area-chart-legend{margin-top:2em}.area-chart-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;font-size:var(--f7-area-chart-legend-font-size);width:100%;margin-top:1em}.area-chart-legend-button{-webkit-appearance:none!important;appearance:none!important;background-color:transparent;border-radius:0;border:none;outline:0!important;cursor:pointer;font-family:inherit;font-size:inherit;box-shadow:none!important}.area-chart-legend-item{position:relative;color:var(--f7-area-chart-legend-text-color);width:auto;display:flex;align-items:center;font-weight:var(--f7-area-chart-legend-font-weight);transition-duration:.2s;padding:var(--f7-area-chart-legend-padding);border-radius:var(--f7-area-chart-legend-border-radius);overflow:hidden}.area-chart-legend-item span{width:var(--f7-area-chart-legend-color-size);height:var(--f7-area-chart-legend-color-size);margin-right:4px;border-radius:50%;transition-duration:.2s}.area-chart-legend-item-hidden{color:var(--f7-area-chart-legend-disabled-text-color)}.area-chart-legend-item-hidden span{background-color:var(--f7-area-chart-legend-disabled-text-color)!important}
@@ -1 +1 @@
1
- :root{--f7-area-chart-current-line-stroke-width:2px;--f7-area-chart-current-line-stroke:rgba(0, 0, 0, 0.15);--f7-area-chart-axis-text-color:inherit;--f7-area-chart-axis-height:1px;--f7-area-chart-axis-font-size:10px;--f7-area-chart-axis-font-weight:500;--f7-area-chart-tooltip-font-size:12px;--f7-area-chart-tooltip-total-label-text-color:rgba(255, 255, 255, 0.75);--f7-area-chart-tooltip-total-font-size:16px;--f7-area-chart-tooltip-total-font-weight:bold;--f7-area-chart-tooltip-color-size:10px;--f7-area-chart-legend-font-size:14px;--f7-area-chart-legend-font-weight:500;--f7-area-chart-legend-text-color:inherit;--f7-area-chart-legend-padding:4px 8px;--f7-area-chart-legend-border-radius:4px;--f7-area-chart-legend-color-size:14px;--f7-area-chart-line-stroke-width:2px;--f7-area-chart-axis-bg-color:rgba(0, 0, 0, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(0, 0, 0, 0.22)}:root .theme-dark,:root.theme-dark{--f7-area-chart-axis-bg-color:rgba(255, 255, 255, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(255, 255, 255, 0.22)}.area-chart{position:relative}.area-chart svg{display:block;width:100%;font-size:0;height:auto;margin:0 auto}.area-chart path{fill:none;stroke-width:var(--f7-area-chart-line-stroke-width)}.area-chart-current-line{stroke:var(--f7-area-chart-current-line-stroke);stroke-width:var(--f7-area-chart-current-line-stroke-width)}.area-chart-axis{height:var(--f7-area-chart-axis-height);background:var(--f7-area-chart-axis-bg-color);color:var(--f7-area-chart-axis-text-color);display:flex;font-size:var(--f7-area-chart-axis-font-size);font-weight:var(--f7-area-chart-axis-font-weight);justify-content:space-between;line-height:1;margin-bottom:2em}.area-chart-axis>span{padding-top:10px;width:0;display:flex;align-items:flex-start;justify-content:center;white-space:nowrap}.area-chart-axis>span:first-child{justify-content:flex-start}.area-chart-axis>span:last-child{justify-content:flex-end}.area-chart-tooltip{pointer-events:none;text-align:left;font-size:var(--f7-area-chart-tooltip-font-size);line-height:1.4}.area-chart-tooltip-label{color:var(--f7-area-chart-tooltip-total-label-text-color)}.area-chart-tooltip-total{font-size:var(--f7-area-chart-tooltip-total-font-size);font-weight:var(--f7-area-chart-tooltip-total-font-weight)}.area-chart-tooltip-list{list-style:none;margin:0;padding:0}.area-chart-tooltip-list li{white-space:nowrap}.area-chart-tooltip-list span{display:inline-block;width:var(--f7-area-chart-tooltip-color-size);height:var(--f7-area-chart-tooltip-color-size);border-radius:50%;margin-right:4px}.area-chart-axis~.area-chart-legend{margin-top:2em}.area-chart-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;font-size:var(--f7-area-chart-legend-font-size);width:100%;margin-top:1em}.area-chart-legend-button{-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;background-color:transparent;border-radius:0;border:none;outline:0!important;cursor:pointer;font-family:inherit;font-size:inherit;box-shadow:none!important}.area-chart-legend-item{position:relative;color:var(--f7-area-chart-legend-text-color);width:auto;display:flex;align-items:center;font-weight:var(--f7-area-chart-legend-font-weight);transition-duration:.2s;padding:var(--f7-area-chart-legend-padding);border-radius:var(--f7-area-chart-legend-border-radius);overflow:hidden}.area-chart-legend-item span{width:var(--f7-area-chart-legend-color-size);height:var(--f7-area-chart-legend-color-size);margin-right:4px;border-radius:50%;transition-duration:.2s}.area-chart-legend-item-hidden{color:var(--f7-area-chart-legend-disabled-text-color)}.area-chart-legend-item-hidden span{background-color:var(--f7-area-chart-legend-disabled-text-color)!important}
1
+ :root{--f7-area-chart-current-line-stroke-width:2px;--f7-area-chart-current-line-stroke:rgba(0, 0, 0, 0.15);--f7-area-chart-axis-text-color:inherit;--f7-area-chart-axis-height:1px;--f7-area-chart-axis-font-size:10px;--f7-area-chart-axis-font-weight:500;--f7-area-chart-tooltip-font-size:12px;--f7-area-chart-tooltip-total-label-text-color:rgba(255, 255, 255, 0.75);--f7-area-chart-tooltip-total-font-size:16px;--f7-area-chart-tooltip-total-font-weight:bold;--f7-area-chart-tooltip-color-size:10px;--f7-area-chart-legend-font-size:14px;--f7-area-chart-legend-font-weight:500;--f7-area-chart-legend-text-color:inherit;--f7-area-chart-legend-padding:4px 8px;--f7-area-chart-legend-border-radius:4px;--f7-area-chart-legend-color-size:14px;--f7-area-chart-line-stroke-width:2px;--f7-area-chart-axis-bg-color:rgba(0, 0, 0, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(0, 0, 0, 0.22)}:root .dark,:root.dark{--f7-area-chart-axis-bg-color:rgba(255, 255, 255, 0.15);--f7-area-chart-legend-disabled-text-color:rgba(255, 255, 255, 0.22)}.area-chart{position:relative}.area-chart svg{display:block;width:100%;font-size:0;height:auto;margin:0 auto}.area-chart path{fill:none;stroke-width:var(--f7-area-chart-line-stroke-width)}.area-chart-current-line{stroke:var(--f7-area-chart-current-line-stroke);stroke-width:var(--f7-area-chart-current-line-stroke-width)}.area-chart-axis{height:var(--f7-area-chart-axis-height);background:var(--f7-area-chart-axis-bg-color);color:var(--f7-area-chart-axis-text-color);display:flex;font-size:var(--f7-area-chart-axis-font-size);font-weight:var(--f7-area-chart-axis-font-weight);justify-content:space-between;line-height:1;margin-bottom:2em}.area-chart-axis>span{padding-top:10px;width:0;display:flex;align-items:flex-start;justify-content:center;white-space:nowrap}.area-chart-axis>span:first-child{justify-content:flex-start}.area-chart-axis>span:last-child{justify-content:flex-end}.area-chart-tooltip{pointer-events:none;text-align:left;font-size:var(--f7-area-chart-tooltip-font-size);line-height:1.4}.area-chart-tooltip-label{color:var(--f7-area-chart-tooltip-total-label-text-color)}.area-chart-tooltip-total{font-size:var(--f7-area-chart-tooltip-total-font-size);font-weight:var(--f7-area-chart-tooltip-total-font-weight)}.area-chart-tooltip-list{list-style:none;margin:0;padding:0}.area-chart-tooltip-list li{white-space:nowrap}.area-chart-tooltip-list span{display:inline-block;width:var(--f7-area-chart-tooltip-color-size);height:var(--f7-area-chart-tooltip-color-size);border-radius:50%;margin-right:4px}.area-chart-axis~.area-chart-legend{margin-top:2em}.area-chart-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;font-size:var(--f7-area-chart-legend-font-size);width:100%;margin-top:1em}.area-chart-legend-button{-webkit-appearance:none!important;appearance:none!important;background-color:transparent;border-radius:0;border:none;outline:0!important;cursor:pointer;font-family:inherit;font-size:inherit;box-shadow:none!important}.area-chart-legend-item{position:relative;color:var(--f7-area-chart-legend-text-color);width:auto;display:flex;align-items:center;font-weight:var(--f7-area-chart-legend-font-weight);transition-duration:.2s;padding:var(--f7-area-chart-legend-padding);border-radius:var(--f7-area-chart-legend-border-radius);overflow:hidden}.area-chart-legend-item span{width:var(--f7-area-chart-legend-color-size);height:var(--f7-area-chart-legend-color-size);margin-right:4px;border-radius:50%;transition-duration:.2s}.area-chart-legend-item-hidden{color:var(--f7-area-chart-legend-disabled-text-color)}.area-chart-legend-item-hidden span{background-color:var(--f7-area-chart-legend-disabled-text-color)!important}
@@ -1 +1,47 @@
1
- (function framework7ComponentLoader(e,t){void 0===t&&(t=!0);var a=e.$,n=e.utils,r=(e.getDevice,e.getSupport,e.Class),o=(e.Modal,e.ConstructorMethods);e.ModalMethods;function i(e){this.wrapped=e}function s(e){var t,a;function n(t,a){try{var o=e[t](a),s=o.value,l=s instanceof i;Promise.resolve(l?s.wrapped:s).then((function(e){l?n("return"===t?"return":"next",e):r(o.done?"return":"normal",e)}),(function(e){n("throw",e)}))}catch(e){r("throw",e)}}function r(e,r){switch(e){case"return":t.resolve({value:r,done:!0});break;case"throw":t.reject(r);break;default:t.resolve({value:r,done:!1})}(t=t.next)?n(t.key,t.arg):a=null}this._invoke=function(e,r){return new Promise((function(o,i){var s={key:e,arg:r,resolve:o,reject:i,next:null};a?a=a.next=s:(t=a=s,n(e,r))}))},"function"!=typeof e.return&&(this.return=void 0)}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}s.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},s.prototype.next=function(e){return this._invoke("next",e)},s.prototype.throw=function(e){return this._invoke("throw",e)},s.prototype.return=function(e){return this._invoke("return",e)};var c=n.extend,d=n.deleteProps,h=function(e){var t,n;function r(t,n){var r;void 0===n&&(n={});var o=u(r=e.call(this,n,[t])||this),i=c({},t.params.areaChart);o.useModulesParams(i),o.params=c(i,n);var s=o.params.el;if(!s)return o||u(r);var l=a(s);return 0===l.length?o||u(r):l[0].f7AreaChart?l[0].f7AreaChart||u(r):(c(o,{app:t,$el:l,el:l&&l[0],currentIndex:null,hiddenDatasets:[],f7Tooltip:null,linesOffsets:null}),l[0].f7AreaChart=o,o.useModules(),o.onMouseEnter=o.onMouseEnter.bind(o),o.onMouseMove=o.onMouseMove.bind(o),o.onMouseLeave=o.onMouseLeave.bind(o),o.onLegendClick=o.onLegendClick.bind(o),o.init(),o||u(r))}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,l(t,n);var o=r.prototype;return o.getVisibleLabels=function(){var e=this.params,t=e.maxAxisLabels,a=e.axisLabels;if(!t||a.length<=t)return a;var n=Math.ceil(a.length/t);return a.filter((function(e,t){return t%n==0}))},o.getSummValues=function(){var e=this.params.datasets,t=this.hiddenDatasets,a=[];return e.filter((function(e,a){return!t.includes(a)})).forEach((function(e){e.values.forEach((function(e,t){a[t]||(a[t]=0),a[t]+=e}))})),a},o.getChartData=function(){var e=this.params,t=e.datasets,a=e.lineChart,n=e.width,r=e.height,o=this.hiddenDatasets,i=[];if(!t.length)return i;var s=t[0].values.map((function(){return 0})),l=0;return a?t.filter((function(e,t){return!o.includes(t)})).forEach((function(e){var t=e.values,a=Math.max.apply(Math,t);a>l&&(l=a)})):l=Math.max.apply(Math,this.getSummValues()),t.filter((function(e,t){return!o.includes(t)})).forEach((function(e){var t=e.label,o=e.values,u=e.color,c=o.map((function(e,t){s[t]+=e;var i=a?e:s[t],u=t/(o.length-1)*n,c=r-i/l*r;return a?(0===t?"M":"L")+u+","+c:u+" "+c}));a||c.push(n+" "+r+" 0 "+r),i.push({label:t,points:c.join(" "),color:u})})),i.reverse()},o.getVerticalLines=function(){var e=this.params,t=e.datasets,a=e.width,n=[];if(!t.length)return n;var r=t[0].values;return r.forEach((function(e,t){var o=t/(r.length-1)*a;n.push(o)})),n},o.toggleDataset=function(e){var t=this,a=this.hiddenDatasets;this.params.toggleDatasets&&(a.includes(e)?a.splice(a.indexOf(e),1):a.push(e),this.$legendEl&&(this.$legendEl.find(".area-chart-legend-item").removeClass("area-chart-legend-item-hidden"),a.forEach((function(e){t.$legendEl.find('.area-chart-legend-item[data-index="'+e+'"]').addClass("area-chart-legend-item-hidden")}))),this.update({},!0))},o.formatAxisLabel=function(e){var t=this.params.formatAxisLabel;return t?t.call(this,e):e},o.formatLegendLabel=function(e){var t=this.params.formatLegendLabel;return t?t.call(this,e):e},o.calcLinesOffsets=function(){var e=this.svgEl.querySelectorAll("line");this.linesOffsets=[];for(var t=0;t<e.length;t+=1)this.linesOffsets.push(e[t].getBoundingClientRect().left)},o.formatTooltip=function(){var e=this,t=e.currentIndex,a=e.hiddenDatasets,n=e.params,r=n.datasets,o=n.axisLabels,i=n.formatTooltip,s=n.formatTooltipTotal,l=n.formatTooltipAxisLabel,u=n.formatTooltipDataset;if(null===t)return"";var c=0,d=r.filter((function(e,t){return!a.includes(t)})).map((function(e){return{color:e.color,label:e.label,value:e.values[t]}}));if(d.forEach((function(e){c+=e.value})),i)return i({index:t,total:c,datasets:d});var h=l?l.call(e,o[t]):this.formatAxisLabel(o[t]);return h||(h=""),'\n <div class="area-chart-tooltip-label">'+h+'</div>\n <div class="area-chart-tooltip-total">'+(s?s.call(e,c):c)+"</div>\n "+(d.length>0?'\n <ul class="area-chart-tooltip-list">\n '+d.map((function(t){var a=t.label,n=t.color,r=t.value;return'\n <li><span style="background-color: '+n+';"></span>'+(u?u.call(e,a,r,n):(a?a+": ":"")+r)+"</li>\n "})).join("")+"\n </ul>":"")+"\n "},o.setTooltip=function(){var e=this,t=e.app,a=e.el,n=e.svgEl,r=e.hiddenDatasets,o=e.currentIndex,i=e.params,s=i.tooltip,l=i.datasets;if(s){if(l.filter((function(e,t){return!r.includes(t)})).length>0)return null===o||e.f7Tooltip?void(e.f7Tooltip&&e.f7Tooltip.hide&&e.f7Tooltip.show&&(null!==o?(e.f7Tooltip.setText(e.formatTooltip()),e.f7Tooltip.setTargetEl(n.querySelector('line[data-index="'+o+'"]')),e.f7Tooltip.show()):e.f7Tooltip.hide())):(e.f7Tooltip=t.tooltip.create({trigger:"manual",containerEl:a,targetEl:n.querySelector('line[data-index="'+o+'"]'),text:e.formatTooltip(),cssClass:"area-chart-tooltip"}),void(e.f7Tooltip&&e.f7Tooltip.show&&e.f7Tooltip.show()));e.f7Tooltip&&e.f7Tooltip.hide&&e.f7Tooltip.hide()}},o.setCurrentIndex=function(e){e!==this.currentIndex&&(this.currentIndex=e,this.$el.trigger("areachart:select",{index:e}),this.emit("local::select areaChartSelect",this,e),this.$svgEl.find("line").removeClass("area-chart-current-line"),this.$svgEl.find('line[data-index="'+e+'"]').addClass("area-chart-current-line"),this.setTooltip())},o.onLegendClick=function(e){var t=parseInt(a(e.target).closest(".area-chart-legend-item").attr("data-index"),10);this.toggleDataset(t)},o.onMouseEnter=function(){this.calcLinesOffsets()},o.onMouseMove=function(e){var t=this;t.linesOffsets||t.calcLinesOffsets();var a=e.pageX;void 0===a&&(a=0);var n=t.linesOffsets.map((function(e){return Math.abs(a-e)})),r=Math.min.apply(Math,n),o=n.indexOf(r);t.setCurrentIndex(o)},o.onMouseLeave=function(){this.setCurrentIndex(null)},o.attachEvents=function(){var e=this.svgEl,t=this.$el;e&&(e.addEventListener("mouseenter",this.onMouseEnter),e.addEventListener("mousemove",this.onMouseMove),e.addEventListener("mouseleave",this.onMouseLeave),t.on("click",".area-chart-legend-item",this.onLegendClick))},o.detachEvents=function(){var e=this.svgEl,t=this.$el;e&&(e.removeEventListener("mouseenter",this.onMouseEnter),e.removeEventListener("mousemove",this.onMouseMove),e.removeEventListener("mouseleave",this.onMouseLeave),t.off("click",".area-chart-legend-item",this.onLegendClick))},o.render=function(){var e=this,t=e.params,a=t.lineChart,n=t.toggleDatasets,r=t.width,o=t.height,i=t.axis,s=t.axisLabels,l=t.legend,u=t.datasets,c=e.getChartData(),d=e.getVerticalLines(),h=e.getVisibleLabels(),f=n?"button":"span";return $jsx("div",null,$jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:r,height:o,viewBox:"0 0 "+r+" "+o,preserveAspectRatio:"none"},c.map((function(e){return a?$jsx("path",{stroke:e.color,"fill-rule":"evenodd",d:e.points}):$jsx("polygon",{fill:e.color,"fill-rule":"evenodd",points:e.points})})),d.map((function(e,t){return $jsx("line",{"data-index":t,fill:"#000",x1:e,y1:0,x2:e,y2:o})}))),i&&$jsx("div",{class:"area-chart-axis"},s.map((function(t){return $jsx("span",null,h.includes(t)&&$jsx("span",null,e.formatAxisLabel(t)))}))),l&&$jsx("div",{class:"area-chart-legend"},u.map((function(t,a){return $jsx(f,{"data-index":a,class:"area-chart-legend-item "+(n?"area-chart-legend-button":""),_type:n?"button":void 0},$jsx("span",{style:"background-color: "+t.color}),e.formatLegendLabel(t.label))}))))},o.update=function(e,t){void 0===e&&(e={}),void 0===t&&(t=!1);var n=this,r=n.params;if(Object.keys(e).forEach((function(t){void 0!==e[t]&&(r[t]=e[t])})),0===n.$svgEl.length)return n;n.detachEvents(),n.$svgEl.remove(),t||(n.$axisEl.remove(),n.$legendEl.remove());var o=a(n.render()),i=o.find("svg");if(c(n,{svgEl:i&&i[0],$svgEl:i}),!t){var s=o.find(".area-chart-axis"),l=o.find(".area-chart-legend");c(n,{$axisEl:s,$legendEl:l}),n.$el.append(s),n.$el.append(l)}return n.$el.prepend(i),n.attachEvents(),n},o.init=function(){var e=this,t=a(e.render()),n=t.find("svg"),r=t.find(".area-chart-axis"),o=t.find(".area-chart-legend");return c(e,{svgEl:n&&n[0],$svgEl:n,$axisEl:r,$legendEl:o}),e.$el.append(n),e.$el.append(r),e.$el.append(o),e.attachEvents(),e},o.destroy=function(){var e=this;e.$el&&!e.destroyed&&(e.$el.trigger("piechart:beforedestroy"),e.emit("local::beforeDestroy areaChartBeforeDestroy",e),e.detachEvents(),e.$svgEl.remove(),e.$axisEl.remove(),e.$legendEl.remove(),e.f7Tooltip&&e.f7Tooltip.destroy&&e.f7Tooltip.destroy(),delete e.$el[0].f7AreaChart,d(e),e.destroyed=!0)},r}(r),f={name:"areaChart",params:{areaChart:{el:null,lineChart:!1,datasets:[],axis:!1,axisLabels:[],tooltip:!1,legend:!1,toggleDatasets:!1,width:640,height:320,maxAxisLabels:8,formatAxisLabel:null,formatLegendLabel:null,formatTooltip:null,formatTooltipAxisLabel:null,formatTooltipTotal:null,formatTooltipDataset:null}},create:function(){var e=this;e.areaChart=o({defaultSelector:".area-chart",constructor:h,app:e,domProp:"f7AreaChart"}),e.areaChart.update=function(t,n){if(0!==a(t).length){var r=e.areaChart.get(t);if(r)return r.update(n),r}}}};if(t){if(e.prototype.modules&&e.prototype.modules[f.name])return;e.use(f),e.instance&&(e.instance.useModuleParams(f,e.instance.params),e.instance.useModule(f))}return f}(Framework7, typeof Framework7AutoInstallComponent === 'undefined' ? undefined : Framework7AutoInstallComponent))
1
+ import $ from '../../shared/dom7';
2
+ import AreaChart from './area-chart-class';
3
+ import ConstructorMethods from '../../shared/constructor-methods';
4
+ export default {
5
+ name: 'areaChart',
6
+ params: {
7
+ areaChart: {
8
+ el: null,
9
+ lineChart: false,
10
+ datasets: [],
11
+ axis: false,
12
+ axisLabels: [],
13
+ tooltip: false,
14
+ legend: false,
15
+ toggleDatasets: false,
16
+ width: 640,
17
+ height: 320,
18
+ maxAxisLabels: 8,
19
+ formatAxisLabel: null,
20
+ formatLegendLabel: null,
21
+ formatTooltip: null,
22
+ formatTooltipAxisLabel: null,
23
+ formatTooltipTotal: null,
24
+ formatTooltipDataset: null
25
+ }
26
+ },
27
+
28
+ create() {
29
+ const app = this;
30
+ app.areaChart = ConstructorMethods({
31
+ defaultSelector: '.area-chart',
32
+ constructor: AreaChart,
33
+ app,
34
+ domProp: 'f7AreaChart'
35
+ });
36
+
37
+ app.areaChart.update = function update(el, newParams) {
38
+ const $el = $(el);
39
+ if ($el.length === 0) return undefined;
40
+ const areaChart = app.areaChart.get(el);
41
+ if (!areaChart) return undefined;
42
+ areaChart.update(newParams);
43
+ return areaChart;
44
+ };
45
+ }
46
+
47
+ };
@@ -0,0 +1 @@
1
+ (function framework7ComponentLoader(e,t){void 0===t&&(t=!0);var a=e.$,s=e.utils,l=(e.getDevice,e.getSupport,e.Class),n=(e.Modal,e.ConstructorMethods),o=(e.ModalMethods,s.extend),r=s.deleteProps;class i extends l{constructor(e,t={}){super(t,[e]);const s=this,l=o({},e.params.areaChart);s.useModulesParams(l),s.params=o(l,t);const{el:n}=s.params;if(!n)return s;const r=a(n);return 0===r.length?s:r[0].f7AreaChart?r[0].f7AreaChart:(o(s,{app:e,$el:r,el:r&&r[0],currentIndex:null,hiddenDatasets:[],f7Tooltip:null,linesOffsets:null}),r[0].f7AreaChart=s,s.useModules(),s.onMouseEnter=s.onMouseEnter.bind(s),s.onMouseMove=s.onMouseMove.bind(s),s.onMouseLeave=s.onMouseLeave.bind(s),s.onLegendClick=s.onLegendClick.bind(s),s.init(),s)}getVisibleLabels(){const{maxAxisLabels:e,axisLabels:t}=this.params;if(!e||t.length<=e)return t;const a=Math.ceil(t.length/e);return t.filter(((e,t)=>t%a==0))}getSummValues(){const{datasets:e}=this.params,{hiddenDatasets:t}=this,a=[];return e.filter(((e,a)=>!t.includes(a))).forEach((({values:e})=>{e.forEach(((e,t)=>{a[t]||(a[t]=0),a[t]+=e}))})),a}getChartData(){const{datasets:e,lineChart:t,width:a,height:s}=this.params,{hiddenDatasets:l}=this,n=[];if(!e.length)return n;const o=e[0].values.map((()=>0));let r=0;return t?e.filter(((e,t)=>!l.includes(t))).forEach((({values:e})=>{const t=Math.max(...e);t>r&&(r=t)})):r=Math.max(...this.getSummValues()),e.filter(((e,t)=>!l.includes(t))).forEach((({label:e,values:l,color:i})=>{const d=l.map(((e,n)=>{o[n]+=e;const i=t?e:o[n],d=n/(l.length-1)*a,h=s-i/r*s;return t?`${0===n?"M":"L"}${d},${h}`:`${d} ${h}`}));t||d.push(`${a} ${s} 0 ${s}`),n.push({label:e,points:d.join(" "),color:i})})),n.reverse()}getVerticalLines(){const{datasets:e,width:t}=this.params,a=[];if(!e.length)return a;const s=e[0].values;return s.forEach(((e,l)=>{const n=l/(s.length-1)*t;a.push(n)})),a}toggleDataset(e){const{hiddenDatasets:t,params:{toggleDatasets:a}}=this;a&&(t.includes(e)?t.splice(t.indexOf(e),1):t.push(e),this.$legendEl&&(this.$legendEl.find(".area-chart-legend-item").removeClass("area-chart-legend-item-hidden"),t.forEach((e=>{this.$legendEl.find(`.area-chart-legend-item[data-index="${e}"]`).addClass("area-chart-legend-item-hidden")}))),this.update({},!0))}formatAxisLabel(e){const{formatAxisLabel:t}=this.params;return t?t.call(this,e):e}formatLegendLabel(e){const{formatLegendLabel:t}=this.params;return t?t.call(this,e):e}calcLinesOffsets(){const e=this.svgEl.querySelectorAll("line");this.linesOffsets=[];for(let t=0;t<e.length;t+=1)this.linesOffsets.push(e[t].getBoundingClientRect().left)}formatTooltip(){const e=this,{currentIndex:t,hiddenDatasets:a,params:{datasets:s,axisLabels:l,formatTooltip:n,formatTooltipTotal:o,formatTooltipAxisLabel:r,formatTooltipDataset:i}}=e;if(null===t)return"";let d=0;const h=s.filter(((e,t)=>!a.includes(t))).map((e=>({color:e.color,label:e.label,value:e.values[t]})));if(h.forEach((e=>{d+=e.value})),n)return n({index:t,total:d,datasets:h});let c=r?r.call(e,l[t]):this.formatAxisLabel(l[t]);c||(c="");return`\n <div class="area-chart-tooltip-label">${c}</div>\n <div class="area-chart-tooltip-total">${o?o.call(e,d):d}</div>\n ${h.length>0?`\n <ul class="area-chart-tooltip-list">\n ${h.map((({label:t,color:a,value:s})=>`\n <li><span style="background-color: ${a};"></span>${i?i.call(e,t,s,a):`${t?`${t}: `:""}${s}`}</li>\n `)).join("")}\n </ul>`:""}\n `}setTooltip(){const e=this,{app:t,el:a,svgEl:s,hiddenDatasets:l,currentIndex:n,params:{tooltip:o,datasets:r}}=e;if(!o)return;if(r.filter(((e,t)=>!l.includes(t))).length>0)return null===n||e.f7Tooltip?void(e.f7Tooltip&&e.f7Tooltip.hide&&e.f7Tooltip.show&&(null!==n?(e.f7Tooltip.setText(e.formatTooltip()),e.f7Tooltip.setTargetEl(s.querySelector(`line[data-index="${n}"]`)),e.f7Tooltip.show()):e.f7Tooltip.hide())):(e.f7Tooltip=t.tooltip.create({trigger:"manual",containerEl:a,targetEl:s.querySelector(`line[data-index="${n}"]`),text:e.formatTooltip(),cssClass:"area-chart-tooltip"}),void(e.f7Tooltip&&e.f7Tooltip.show&&e.f7Tooltip.show()));e.f7Tooltip&&e.f7Tooltip.hide&&e.f7Tooltip.hide()}setCurrentIndex(e){e!==this.currentIndex&&(this.currentIndex=e,this.$el.trigger("areachart:select",{index:e}),this.emit("local::select areaChartSelect",this,e),this.$svgEl.find("line").removeClass("area-chart-current-line"),this.$svgEl.find(`line[data-index="${e}"]`).addClass("area-chart-current-line"),this.setTooltip())}onLegendClick(e){const t=parseInt(a(e.target).closest(".area-chart-legend-item").attr("data-index"),10);this.toggleDataset(t)}onMouseEnter(){this.calcLinesOffsets()}onMouseMove(e){const t=this;t.linesOffsets||t.calcLinesOffsets();let a=e.pageX;void 0===a&&(a=0);const s=t.linesOffsets.map((e=>Math.abs(a-e))),l=Math.min(...s),n=s.indexOf(l);t.setCurrentIndex(n)}onMouseLeave(){this.setCurrentIndex(null)}attachEvents(){const{svgEl:e,$el:t}=this;e&&(e.addEventListener("mouseenter",this.onMouseEnter),e.addEventListener("mousemove",this.onMouseMove),e.addEventListener("mouseleave",this.onMouseLeave),t.on("click",".area-chart-legend-item",this.onLegendClick))}detachEvents(){const{svgEl:e,$el:t}=this;e&&(e.removeEventListener("mouseenter",this.onMouseEnter),e.removeEventListener("mousemove",this.onMouseMove),e.removeEventListener("mouseleave",this.onMouseLeave),t.off("click",".area-chart-legend-item",this.onLegendClick))}render(){const e=this,{lineChart:t,toggleDatasets:a,width:s,height:l,axis:n,axisLabels:o,legend:r,datasets:i}=e.params,d=e.getChartData(),h=e.getVerticalLines(),c=e.getVisibleLabels(),u=a?"button":"span";return $jsx("div",null,$jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:s,height:l,viewBox:`0 0 ${s} ${l}`,preserveAspectRatio:"none"},d.map((e=>t?$jsx("path",{stroke:e.color,"fill-rule":"evenodd",d:e.points}):$jsx("polygon",{fill:e.color,"fill-rule":"evenodd",points:e.points}))),h.map(((e,t)=>$jsx("line",{"data-index":t,fill:"#000",x1:e,y1:0,x2:e,y2:l})))),n&&$jsx("div",{class:"area-chart-axis"},o.map((t=>$jsx("span",null,c.includes(t)&&$jsx("span",null,e.formatAxisLabel(t)))))),r&&$jsx("div",{class:"area-chart-legend"},i.map(((t,s)=>$jsx(u,{"data-index":s,class:"area-chart-legend-item "+(a?"area-chart-legend-button":""),_type:a?"button":void 0},$jsx("span",{style:`background-color: ${t.color}`}),e.formatLegendLabel(t.label))))))}update(e={},t=!1){const s=this,{params:l}=s;if(Object.keys(e).forEach((t=>{void 0!==e[t]&&(l[t]=e[t])})),0===s.$svgEl.length)return s;s.detachEvents(),s.$svgEl.remove(),t||(s.$axisEl.remove(),s.$legendEl.remove());const n=a(s.render()),r=n.find("svg");if(o(s,{svgEl:r&&r[0],$svgEl:r}),!t){const e=n.find(".area-chart-axis"),t=n.find(".area-chart-legend");o(s,{$axisEl:e,$legendEl:t}),s.$el.append(e),s.$el.append(t)}return s.$el.prepend(r),s.attachEvents(),s}init(){const e=this,t=a(e.render()),s=t.find("svg"),l=t.find(".area-chart-axis"),n=t.find(".area-chart-legend");return o(e,{svgEl:s&&s[0],$svgEl:s,$axisEl:l,$legendEl:n}),e.$el.append(s),e.$el.append(l),e.$el.append(n),e.attachEvents(),e}destroy(){const e=this;e.$el&&!e.destroyed&&(e.$el.trigger("piechart:beforedestroy"),e.emit("local::beforeDestroy areaChartBeforeDestroy",e),e.detachEvents(),e.$svgEl.remove(),e.$axisEl.remove(),e.$legendEl.remove(),e.f7Tooltip&&e.f7Tooltip.destroy&&e.f7Tooltip.destroy(),delete e.$el[0].f7AreaChart,r(e),e.destroyed=!0)}}var d={name:"areaChart",params:{areaChart:{el:null,lineChart:!1,datasets:[],axis:!1,axisLabels:[],tooltip:!1,legend:!1,toggleDatasets:!1,width:640,height:320,maxAxisLabels:8,formatAxisLabel:null,formatLegendLabel:null,formatTooltip:null,formatTooltipAxisLabel:null,formatTooltipTotal:null,formatTooltipDataset:null}},create(){const e=this;e.areaChart=n({defaultSelector:".area-chart",constructor:i,app:e,domProp:"f7AreaChart"}),e.areaChart.update=function(t,s){if(0===a(t).length)return;const l=e.areaChart.get(t);return l?(l.update(s),l):void 0}}};if(t){if(e.prototype.modules&&e.prototype.modules[d.name])return;e.use(d),e.instance&&(e.instance.useModuleParams(d,e.instance.params),e.instance.useModule(d))}return d}(Framework7, typeof Framework7AutoInstallComponent === 'undefined' ? undefined : Framework7AutoInstallComponent))