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.
- package/components/accordion/accordion.js +132 -1
- package/components/accordion/accordion.umd.js +1 -0
- package/components/actions/actions-class.js +365 -0
- package/components/actions/actions-rtl.css +1 -1
- package/components/actions/actions.css +1 -1
- package/components/actions/actions.js +42 -1
- package/components/actions/actions.umd.js +1 -0
- package/components/app/app-class.d.ts +10 -10
- package/{esm/components → components}/app/app-class.js +107 -140
- package/components/app/app.less +3 -3
- package/{esm/components → components}/app/load-module.js +32 -32
- package/components/appbar/appbar.js +3 -1
- package/components/appbar/appbar.umd.js +1 -0
- package/components/area-chart/area-chart-class.js +507 -0
- package/components/area-chart/area-chart-rtl.css +1 -1
- package/components/area-chart/area-chart.css +1 -1
- package/components/area-chart/area-chart.js +47 -1
- package/components/area-chart/area-chart.umd.js +1 -0
- package/{esm/components → components}/autocomplete/autocomplete-class.js +241 -253
- package/components/autocomplete/autocomplete-rtl.css +1 -1
- package/components/autocomplete/autocomplete.css +1 -1
- package/components/autocomplete/autocomplete.js +86 -1
- package/components/autocomplete/autocomplete.umd.js +1 -0
- package/{esm/components → components}/badge/badge.js +0 -0
- package/{esm/components → components}/block/block.js +0 -0
- package/{esm/components → components}/button/button.js +0 -0
- package/{esm/components → components}/calendar/calendar-class.js +676 -643
- package/components/calendar/calendar-rtl.css +1 -1
- package/components/calendar/calendar.css +1 -1
- package/components/calendar/calendar.js +111 -1
- package/components/calendar/calendar.umd.js +1 -0
- package/components/card/card-rtl.css +1 -1
- package/components/card/card.css +1 -1
- package/components/card/card.js +592 -1
- package/components/card/card.umd.js +1 -0
- package/components/checkbox/checkbox-rtl.css +1 -1
- package/components/checkbox/checkbox.css +1 -1
- package/components/checkbox/checkbox.js +3 -1
- package/components/checkbox/checkbox.umd.js +1 -0
- package/components/chip/chip-rtl.css +1 -1
- package/components/chip/chip.css +1 -1
- package/components/chip/chip.js +3 -1
- package/components/chip/chip.umd.js +1 -0
- package/{esm/components → components}/color-picker/color-picker-class.js +336 -349
- package/components/color-picker/color-picker-rtl.css +1 -1
- package/components/color-picker/color-picker.css +1 -1
- package/components/color-picker/color-picker.js +92 -1
- package/components/color-picker/color-picker.umd.js +1 -0
- package/{esm/components → components}/color-picker/modules/alpha-slider.js +30 -19
- package/{esm/components → components}/color-picker/modules/brightness-slider.js +35 -24
- package/{esm/components → components}/color-picker/modules/current-color.js +4 -2
- package/{esm/components → components}/color-picker/modules/hex.js +27 -16
- package/{esm/components → components}/color-picker/modules/hs-spectrum.js +37 -25
- package/{esm/components → components}/color-picker/modules/hsb-sliders.js +54 -41
- package/{esm/components → components}/color-picker/modules/hue-slider.js +29 -18
- package/{esm/components → components}/color-picker/modules/initial-current-colors.js +14 -9
- package/{esm/components → components}/color-picker/modules/palette.js +14 -11
- package/{esm/components → components}/color-picker/modules/rgb-bars.js +42 -29
- package/{esm/components → components}/color-picker/modules/rgb-sliders.js +47 -34
- package/{esm/components → components}/color-picker/modules/sb-spectrum.js +38 -26
- package/{esm/components → components}/color-picker/modules/wheel.js +59 -47
- package/components/contacts-list/contacts-list-rtl.css +1 -1
- package/components/contacts-list/contacts-list.css +1 -1
- package/components/contacts-list/contacts-list.js +3 -1
- package/components/contacts-list/contacts-list.umd.js +1 -0
- package/{esm/components → components}/data-table/data-table-class.js +40 -59
- package/components/data-table/data-table-rtl.css +1 -1
- package/components/data-table/data-table.css +1 -1
- package/components/data-table/data-table.js +72 -1
- package/components/data-table/data-table.umd.js +1 -0
- package/{esm/components → components}/dialog/dialog-class.js +58 -67
- package/components/dialog/dialog-rtl.css +1 -1
- package/components/dialog/dialog.css +1 -1
- package/components/dialog/dialog.js +254 -1
- package/components/dialog/dialog.umd.js +1 -0
- package/components/elevation/elevation.js +3 -1
- package/components/elevation/elevation.umd.js +1 -0
- package/components/fab/fab.js +181 -1
- package/components/fab/fab.umd.js +1 -0
- package/components/form/form.js +347 -1
- package/components/form/form.umd.js +1 -0
- package/components/gauge/gauge-class.js +306 -0
- package/components/gauge/gauge.js +99 -1
- package/components/gauge/gauge.umd.js +1 -0
- package/components/grid/grid-rtl.css +1 -1
- package/components/grid/grid.css +1 -1
- package/components/grid/grid.js +227 -1
- package/components/grid/grid.umd.js +1 -0
- package/{esm/components → components}/icon/icon.js +0 -0
- package/components/infinite-scroll/infinite-scroll.js +110 -1
- package/components/infinite-scroll/infinite-scroll.umd.js +1 -0
- package/components/input/input-rtl.css +1 -1
- package/components/input/input.css +1 -1
- package/components/input/input.js +394 -1
- package/components/input/input.less +1 -1
- package/components/input/input.umd.js +1 -0
- package/components/lazy/lazy.js +283 -1
- package/components/lazy/lazy.umd.js +1 -0
- package/{esm/components → components}/link/link.js +0 -0
- package/{esm/components → components}/list/list.js +0 -0
- package/{esm/components → components}/list-index/list-index-class.js +113 -121
- package/components/list-index/list-index-rtl.css +1 -1
- package/components/list-index/list-index.css +1 -1
- package/components/list-index/list-index.js +73 -1
- package/components/list-index/list-index.umd.js +1 -0
- package/components/login-screen/login-screen-class.js +43 -0
- package/components/login-screen/login-screen-rtl.css +1 -1
- package/components/login-screen/login-screen.css +1 -1
- package/components/login-screen/login-screen.js +28 -1
- package/components/login-screen/login-screen.less +1 -1
- package/components/login-screen/login-screen.umd.js +1 -0
- package/components/menu/menu.js +79 -1
- package/components/menu/menu.umd.js +1 -0
- package/{esm/components → components}/messagebar/messagebar-class.js +124 -152
- package/components/messagebar/messagebar-rtl.css +1 -1
- package/components/messagebar/messagebar.css +1 -1
- package/components/messagebar/messagebar.js +74 -1
- package/components/messagebar/messagebar.umd.js +1 -0
- package/{esm/components → components}/messages/messages-class.js +162 -242
- package/components/messages/messages-rtl.css +1 -1
- package/components/messages/messages.css +1 -1
- package/components/messages/messages.js +73 -1
- package/components/messages/messages.umd.js +1 -0
- package/{esm/components → components}/modal/custom-modal-class.js +16 -29
- package/{esm/components → components}/modal/modal-class.js +68 -83
- package/{esm/components → components}/modal/modal.js +8 -5
- package/{esm/components → components}/navbar/navbar.js +166 -171
- package/components/notification/notification-aurora.less +1 -1
- package/{esm/components → components}/notification/notification-class.js +65 -78
- package/components/notification/notification-ios.less +1 -1
- package/components/notification/notification-rtl.css +1 -1
- package/components/notification/notification.css +1 -1
- package/components/notification/notification.js +35 -1
- package/components/notification/notification.umd.js +1 -0
- package/components/page/page-vars.less +1 -1
- package/{esm/components → components}/page/page.js +0 -0
- package/{esm/components → components}/panel/panel-class.js +183 -214
- package/components/panel/panel-rtl.css +1 -1
- package/components/panel/panel.css +1 -1
- package/components/panel/panel.js +190 -1
- package/components/panel/panel.umd.js +1 -0
- package/{esm/components → components}/panel/resizable-panel.js +30 -28
- package/{esm/components → components}/panel/swipe-panel.js +46 -44
- package/{esm/components → components}/photo-browser/photo-browser-class.js +206 -234
- package/components/photo-browser/photo-browser.js +73 -1
- package/components/photo-browser/photo-browser.umd.js +1 -0
- package/{esm/components → components}/picker/picker-class.js +233 -233
- package/{esm/components → components}/picker/picker-column.js +70 -72
- package/components/picker/picker-rtl.css +1 -1
- package/components/picker/picker.css +1 -1
- package/components/picker/picker.js +64 -1
- package/components/picker/picker.umd.js +1 -0
- package/components/pie-chart/pie-chart-class.js +264 -0
- package/components/pie-chart/pie-chart.js +35 -1
- package/components/pie-chart/pie-chart.umd.js +1 -0
- package/{esm/components → components}/popover/popover-class.js +72 -97
- package/components/popover/popover-rtl.css +1 -1
- package/components/popover/popover.css +1 -1
- package/components/popover/popover.js +76 -1
- package/components/popover/popover.umd.js +1 -0
- package/{esm/components → components}/popup/popup-class.js +66 -81
- package/components/popup/popup-rtl.css +1 -1
- package/components/popup/popup.css +1 -1
- package/components/popup/popup.js +41 -1
- package/components/popup/popup.less +21 -21
- package/components/popup/popup.umd.js +1 -0
- package/components/preloader/preloader.js +115 -1
- package/components/preloader/preloader.umd.js +1 -0
- package/components/progressbar/progressbar-rtl.css +1 -1
- package/components/progressbar/progressbar.css +1 -1
- package/components/progressbar/progressbar.js +166 -1
- package/components/progressbar/progressbar.umd.js +1 -0
- package/{esm/components → components}/pull-to-refresh/pull-to-refresh-class.js +101 -118
- package/components/pull-to-refresh/pull-to-refresh.js +70 -1
- package/components/pull-to-refresh/pull-to-refresh.umd.js +1 -0
- package/components/radio/radio-rtl.css +1 -1
- package/components/radio/radio.css +1 -1
- package/components/radio/radio.js +3 -1
- package/components/radio/radio.umd.js +1 -0
- package/{esm/components → components}/range/range-class.js +191 -192
- package/components/range/range-rtl.css +1 -1
- package/components/range/range.css +1 -1
- package/components/range/range.js +79 -1
- package/components/range/range.umd.js +1 -0
- package/components/searchbar/remove-diacritics.js +275 -0
- package/{esm/components → components}/searchbar/searchbar-class.js +129 -146
- package/components/searchbar/searchbar-rtl.css +1 -1
- package/components/searchbar/searchbar.css +1 -1
- package/components/searchbar/searchbar.js +121 -1
- package/components/searchbar/searchbar.less +1 -1
- package/components/searchbar/searchbar.umd.js +1 -0
- package/{esm/components → components}/sheet/sheet-class.js +87 -106
- package/components/sheet/sheet-rtl.css +1 -1
- package/components/sheet/sheet.css +1 -1
- package/components/sheet/sheet.js +68 -1
- package/components/sheet/sheet.less +16 -16
- package/components/sheet/sheet.umd.js +1 -0
- package/components/skeleton/skeleton-rtl.css +1 -1
- package/components/skeleton/skeleton-vars.less +1 -1
- package/components/skeleton/skeleton.css +1 -1
- package/components/skeleton/skeleton.js +3 -1
- package/components/skeleton/skeleton.less +1 -1
- package/components/skeleton/skeleton.umd.js +1 -0
- package/{esm/components → components}/smart-select/smart-select-class.js +284 -296
- package/components/smart-select/smart-select.js +149 -1
- package/components/smart-select/smart-select.umd.js +1 -0
- package/components/sortable/sortable-rtl.css +1 -1
- package/components/sortable/sortable.css +1 -1
- package/components/sortable/sortable.js +293 -1
- package/components/sortable/sortable.umd.js +1 -0
- package/{esm/components → components}/statusbar/statusbar.js +48 -41
- package/{esm/components → components}/stepper/stepper-class.js +104 -115
- package/components/stepper/stepper-rtl.css +1 -1
- package/components/stepper/stepper.css +1 -1
- package/components/stepper/stepper.js +86 -1
- package/components/stepper/stepper.umd.js +1 -0
- package/{esm/components → components}/subnavbar/subnavbar.js +3 -2
- package/components/swipeout/swipeout-rtl.css +1 -1
- package/components/swipeout/swipeout.css +1 -1
- package/components/swipeout/swipeout.js +597 -1
- package/components/swipeout/swipeout.umd.js +1 -0
- package/components/swiper/swiper-rtl.css +1 -1
- package/components/swiper/swiper.css +1 -1
- package/components/swiper/swiper.js +191 -1
- package/components/swiper/swiper.less +1 -1
- package/components/swiper/swiper.umd.js +1 -0
- package/components/tabs/tabs.js +272 -1
- package/components/tabs/tabs.umd.js +1 -0
- package/{esm/components → components}/text-editor/text-editor-class.js +170 -182
- package/components/text-editor/text-editor-rtl.css +1 -1
- package/components/text-editor/text-editor.css +1 -1
- package/components/text-editor/text-editor.js +89 -1
- package/components/text-editor/text-editor.umd.js +1 -0
- package/components/timeline/timeline-rtl.css +1 -1
- package/components/timeline/timeline.css +1 -1
- package/components/timeline/timeline.js +3 -1
- package/components/timeline/timeline.umd.js +1 -0
- package/components/toast/toast-class.js +119 -0
- package/components/toast/toast.js +43 -1
- package/components/toast/toast.umd.js +1 -0
- package/{esm/components → components}/toggle/toggle-class.js +46 -63
- package/components/toggle/toggle-rtl.css +1 -1
- package/components/toggle/toggle.css +1 -1
- package/components/toggle/toggle.js +65 -1
- package/components/toggle/toggle.umd.js +1 -0
- package/{esm/components → components}/toolbar/toolbar.js +63 -59
- package/{esm/components → components}/tooltip/tooltip-class.js +95 -106
- package/components/tooltip/tooltip.js +144 -1
- package/components/tooltip/tooltip.umd.js +1 -0
- package/components/touch-ripple/touch-ripple-class.js +98 -0
- package/components/touch-ripple/touch-ripple-vars.less +1 -1
- package/components/touch-ripple/touch-ripple.js +18 -0
- package/components/treeview/treeview-rtl.css +1 -1
- package/components/treeview/treeview.css +1 -1
- package/components/treeview/treeview.js +83 -1
- package/components/treeview/treeview.umd.js +1 -0
- package/components/typography/typography.js +3 -1
- package/components/typography/typography.umd.js +1 -0
- package/{esm/components → components}/view/resizable-view.js +23 -21
- package/{esm/components → components}/view/view-class.js +48 -67
- package/{esm/components → components}/view/view.js +37 -28
- package/{esm/components → components}/virtual-list/virtual-list-class.js +153 -170
- package/components/virtual-list/virtual-list.js +19 -1
- package/components/virtual-list/virtual-list.umd.js +1 -0
- package/framework7-bundle-rtl.css +268 -852
- package/framework7-bundle-rtl.min.css +3 -3
- package/framework7-bundle.css +268 -852
- package/{esm/framework7-bundle.js → framework7-bundle.esm.js} +2 -2
- package/framework7-bundle.js +30782 -31429
- package/framework7-bundle.js.map +1 -1
- package/framework7-bundle.less +2 -2
- package/framework7-bundle.min.css +3 -3
- package/framework7-bundle.min.js +3 -3
- package/framework7-bundle.min.js.map +1 -1
- package/{esm/framework7-lite-bundle.js → framework7-lite-bundle.esm.js} +2 -2
- package/{esm/framework7-lite.js → framework7-lite.esm.js} +2 -2
- package/framework7-rtl.css +52 -56
- package/framework7-rtl.min.css +3 -3
- package/{types/types.d.ts → framework7-types.d.ts} +0 -0
- package/framework7.css +52 -56
- package/framework7.d.ts +81 -81
- package/{esm/framework7.js → framework7.esm.js} +2 -2
- package/framework7.js +3386 -4049
- package/framework7.js.map +1 -1
- package/framework7.less +2 -2
- package/framework7.min.css +3 -3
- package/framework7.min.js +3 -3
- package/framework7.min.js.map +1 -1
- package/less/mixins.less +2 -2
- package/{esm/modules → modules}/clicks/clicks.js +17 -16
- package/modules/component/$h.js +14 -0
- package/modules/component/$jsx.js +18 -0
- package/modules/component/component-class.js +382 -0
- package/modules/component/component.d.ts +2 -0
- package/{esm/modules → modules}/component/component.js +23 -17
- package/{esm/modules → modules}/component/custom-components.js +0 -0
- package/{esm/modules → modules}/component/eventslisteners.js +14 -18
- package/modules/component/parse-component.js +80 -0
- package/{esm/modules → modules}/component/patch.js +1 -1
- package/{esm/modules → modules}/component/snabbdom/h.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/helpers/attachto.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/hooks.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/htmldomapi.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/is.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/attributes.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/class.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/dataset.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/eventlisteners.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/hero.js +1 -1
- package/{esm/modules → modules}/component/snabbdom/modules/module.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/props.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/modules/style.js +1 -1
- package/{esm/modules → modules}/component/snabbdom/snabbdom.bundle.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/snabbdom.js +6 -18
- package/{esm/modules → modules}/component/snabbdom/thunk.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/tovnode.js +0 -0
- package/{esm/modules → modules}/component/snabbdom/vnode.js +0 -0
- package/{esm/modules → modules}/component/vdom.js +106 -130
- package/{esm/modules → modules}/demo-module.js +15 -7
- package/{esm/modules → modules}/device/device.js +12 -11
- package/{esm/modules → modules}/history/history.js +2 -1
- package/{esm/modules → modules}/request/request.js +2 -2
- package/modules/resize/resize.js +65 -0
- package/{esm/modules → modules}/router/app-router-check.js +1 -1
- package/{esm/modules → modules}/router/async-component.js +3 -3
- package/{esm/modules → modules}/router/back.js +117 -117
- package/{esm/modules → modules}/router/clear-previous-history.js +8 -8
- package/modules/router/component-loader.js +174 -0
- package/{esm/modules → modules}/router/modal.js +49 -49
- package/{esm/modules → modules}/router/navigate.js +140 -221
- package/{esm/modules → modules}/router/process-route-queue.js +20 -17
- package/{esm/modules → modules}/router/redirect.js +7 -11
- package/{esm/modules → modules}/router/router-class.js +411 -432
- package/{esm/modules → modules}/router/router.js +5 -3
- package/{esm/modules → modules}/router/swipe-back.js +143 -177
- package/{esm/modules → modules}/router/tab.js +46 -46
- package/{esm/modules → modules}/service-worker/service-worker.js +41 -37
- package/modules/store/create-store.js +149 -0
- package/{esm/modules → modules}/store/store.js +2 -2
- package/{esm/modules → modules}/support/support.js +1 -1
- package/{esm/modules → modules}/touch/touch.js +71 -70
- package/{esm/modules → modules}/utils/utils.js +2 -2
- package/package.json +252 -11
- package/shared/$jsx.js +22 -0
- package/shared/class.js +143 -0
- package/shared/constructor-methods.js +42 -0
- package/{esm/shared → shared}/dom7.js +2 -1
- package/shared/events-class.js +100 -0
- package/{types/shared → shared}/get-device.d.ts +0 -0
- package/{esm/shared → shared}/get-device.js +32 -37
- package/{types/shared → shared}/get-support.d.ts +0 -0
- package/{esm/shared → shared}/get-support.js +7 -6
- package/{esm/shared → shared}/history.js +61 -47
- package/shared/modal-methods.js +90 -0
- package/{types/shared → shared}/request.d.ts +0 -0
- package/shared/request.js +474 -0
- package/{types/shared → shared}/utils.d.ts +0 -0
- package/{esm/shared → shared}/utils.js +125 -162
- package/bundle/package.json +0 -8
- package/cjs/components/accordion/accordion.js +0 -136
- package/cjs/components/actions/actions-class.js +0 -383
- package/cjs/components/actions/actions.js +0 -58
- package/cjs/components/app/app-class.js +0 -378
- package/cjs/components/app/load-module.js +0 -155
- package/cjs/components/appbar/appbar.js +0 -8
- package/cjs/components/area-chart/area-chart-class.js +0 -526
- package/cjs/components/area-chart/area-chart.js +0 -56
- package/cjs/components/autocomplete/autocomplete-class.js +0 -975
- package/cjs/components/autocomplete/autocomplete.js +0 -93
- package/cjs/components/badge/badge.js +0 -8
- package/cjs/components/block/block.js +0 -8
- package/cjs/components/button/button.js +0 -8
- package/cjs/components/calendar/calendar-class.js +0 -2078
- package/cjs/components/calendar/calendar.js +0 -124
- package/cjs/components/card/card.js +0 -625
- package/cjs/components/checkbox/checkbox.js +0 -8
- package/cjs/components/chip/chip.js +0 -8
- package/cjs/components/color-picker/color-picker-class.js +0 -1022
- package/cjs/components/color-picker/color-picker.js +0 -105
- package/cjs/components/color-picker/modules/alpha-slider.js +0 -101
- package/cjs/components/color-picker/modules/brightness-slider.js +0 -86
- package/cjs/components/color-picker/modules/current-color.js +0 -23
- package/cjs/components/color-picker/modules/hex.js +0 -81
- package/cjs/components/color-picker/modules/hs-spectrum.js +0 -137
- package/cjs/components/color-picker/modules/hsb-sliders.js +0 -206
- package/cjs/components/color-picker/modules/hue-slider.js +0 -78
- package/cjs/components/color-picker/modules/initial-current-colors.js +0 -54
- package/cjs/components/color-picker/modules/palette.js +0 -61
- package/cjs/components/color-picker/modules/rgb-bars.js +0 -196
- package/cjs/components/color-picker/modules/rgb-sliders.js +0 -198
- package/cjs/components/color-picker/modules/sb-spectrum.js +0 -137
- package/cjs/components/color-picker/modules/wheel.js +0 -198
- package/cjs/components/contacts-list/contacts-list.js +0 -8
- package/cjs/components/data-table/data-table-class.js +0 -188
- package/cjs/components/data-table/data-table.js +0 -75
- package/cjs/components/dialog/dialog-class.js +0 -250
- package/cjs/components/dialog/dialog.js +0 -297
- package/cjs/components/elevation/elevation.js +0 -8
- package/cjs/components/fab/fab.js +0 -195
- package/cjs/components/form/form.js +0 -341
- package/cjs/components/gauge/gauge-class.js +0 -332
- package/cjs/components/gauge/gauge.js +0 -103
- package/cjs/components/grid/grid.js +0 -233
- package/cjs/components/icon/icon.js +0 -8
- package/cjs/components/infinite-scroll/infinite-scroll.js +0 -111
- package/cjs/components/input/input.js +0 -396
- package/cjs/components/lazy/lazy.js +0 -283
- package/cjs/components/link/link.js +0 -8
- package/cjs/components/list/list.js +0 -8
- package/cjs/components/list-index/list-index-class.js +0 -405
- package/cjs/components/list-index/list-index.js +0 -77
- package/cjs/components/login-screen/login-screen-class.js +0 -68
- package/cjs/components/login-screen/login-screen.js +0 -44
- package/cjs/components/menu/menu.js +0 -92
- package/cjs/components/messagebar/messagebar-class.js +0 -446
- package/cjs/components/messagebar/messagebar.js +0 -78
- package/cjs/components/messages/messages-class.js +0 -633
- package/cjs/components/messages/messages.js +0 -76
- package/cjs/components/modal/custom-modal-class.js +0 -99
- package/cjs/components/modal/modal-class.js +0 -277
- package/cjs/components/modal/modal.js +0 -32
- package/cjs/components/navbar/navbar.js +0 -833
- package/cjs/components/notification/notification-class.js +0 -269
- package/cjs/components/notification/notification.js +0 -44
- package/cjs/components/page/page.js +0 -8
- package/cjs/components/panel/panel-class.js +0 -660
- package/cjs/components/panel/panel.js +0 -219
- package/cjs/components/panel/resizable-panel.js +0 -197
- package/cjs/components/panel/swipe-panel.js +0 -363
- package/cjs/components/photo-browser/photo-browser-class.js +0 -781
- package/cjs/components/photo-browser/photo-browser.js +0 -78
- package/cjs/components/picker/picker-class.js +0 -704
- package/cjs/components/picker/picker-column.js +0 -389
- package/cjs/components/picker/picker.js +0 -77
- package/cjs/components/pie-chart/pie-chart-class.js +0 -290
- package/cjs/components/pie-chart/pie-chart.js +0 -44
- package/cjs/components/popover/popover-class.js +0 -365
- package/cjs/components/popover/popover.js +0 -93
- package/cjs/components/popup/popup-class.js +0 -416
- package/cjs/components/popup/popup.js +0 -57
- package/cjs/components/preloader/preloader.js +0 -111
- package/cjs/components/progressbar/progressbar.js +0 -185
- package/cjs/components/pull-to-refresh/pull-to-refresh-class.js +0 -627
- package/cjs/components/pull-to-refresh/pull-to-refresh.js +0 -74
- package/cjs/components/radio/radio.js +0 -8
- package/cjs/components/range/range-class.js +0 -674
- package/cjs/components/range/range.js +0 -93
- package/cjs/components/searchbar/remove-diacritics.js +0 -283
- package/cjs/components/searchbar/searchbar-class.js +0 -739
- package/cjs/components/searchbar/searchbar.js +0 -141
- package/cjs/components/sheet/sheet-class.js +0 -583
- package/cjs/components/sheet/sheet.js +0 -83
- package/cjs/components/skeleton/skeleton.js +0 -8
- package/cjs/components/smart-select/smart-select-class.js +0 -1005
- package/cjs/components/smart-select/smart-select.js +0 -151
- package/cjs/components/sortable/sortable.js +0 -322
- package/cjs/components/statusbar/statusbar.js +0 -226
- package/cjs/components/stepper/stepper-class.js +0 -497
- package/cjs/components/stepper/stepper.js +0 -96
- package/cjs/components/subnavbar/subnavbar.js +0 -28
- package/cjs/components/swipeout/swipeout.js +0 -618
- package/cjs/components/swiper/swiper.js +0 -189
- package/cjs/components/tabs/tabs.js +0 -296
- package/cjs/components/text-editor/text-editor-class.js +0 -627
- package/cjs/components/text-editor/text-editor.js +0 -93
- package/cjs/components/timeline/timeline.js +0 -8
- package/cjs/components/toast/toast-class.js +0 -142
- package/cjs/components/toast/toast.js +0 -51
- package/cjs/components/toggle/toggle-class.js +0 -213
- package/cjs/components/toggle/toggle.js +0 -72
- package/cjs/components/toolbar/toolbar.js +0 -234
- package/cjs/components/tooltip/tooltip-class.js +0 -409
- package/cjs/components/tooltip/tooltip.js +0 -146
- package/cjs/components/touch-ripple/touch-ripple-class.js +0 -110
- package/cjs/components/touch-ripple/touch-ripple.js +0 -34
- package/cjs/components/treeview/treeview.js +0 -88
- package/cjs/components/typography/typography.js +0 -8
- package/cjs/components/view/resizable-view.js +0 -155
- package/cjs/components/view/view-class.js +0 -251
- package/cjs/components/view/view.js +0 -196
- package/cjs/components/virtual-list/virtual-list-class.js +0 -654
- package/cjs/components/virtual-list/virtual-list.js +0 -27
- package/cjs/framework7-bundle.js +0 -208
- package/cjs/framework7-lite-bundle.js +0 -191
- package/cjs/framework7-lite.js +0 -87
- package/cjs/framework7.js +0 -98
- package/cjs/modules/clicks/clicks.js +0 -115
- package/cjs/modules/component/$h.js +0 -31
- package/cjs/modules/component/$jsx.js +0 -31
- package/cjs/modules/component/component-class.js +0 -415
- package/cjs/modules/component/component.js +0 -58
- package/cjs/modules/component/custom-components.js +0 -6
- package/cjs/modules/component/eventslisteners.js +0 -90
- package/cjs/modules/component/parse-component.js +0 -80
- package/cjs/modules/component/patch.js +0 -21
- package/cjs/modules/component/snabbdom/h.js +0 -72
- package/cjs/modules/component/snabbdom/helpers/attachto.js +0 -62
- package/cjs/modules/component/snabbdom/hooks.js +0 -1
- package/cjs/modules/component/snabbdom/htmldomapi.js +0 -90
- package/cjs/modules/component/snabbdom/is.js +0 -11
- package/cjs/modules/component/snabbdom/modules/attributes.js +0 -61
- package/cjs/modules/component/snabbdom/modules/class.js +0 -38
- package/cjs/modules/component/snabbdom/modules/dataset.js +0 -47
- package/cjs/modules/component/snabbdom/modules/eventlisteners.js +0 -106
- package/cjs/modules/component/snabbdom/modules/hero.js +0 -193
- package/cjs/modules/component/snabbdom/modules/module.js +0 -1
- package/cjs/modules/component/snabbdom/modules/props.js +0 -40
- package/cjs/modules/component/snabbdom/modules/style.js +0 -116
- package/cjs/modules/component/snabbdom/snabbdom.bundle.js +0 -33
- package/cjs/modules/component/snabbdom/snabbdom.js +0 -374
- package/cjs/modules/component/snabbdom/thunk.js +0 -66
- package/cjs/modules/component/snabbdom/tovnode.js +0 -57
- package/cjs/modules/component/snabbdom/vnode.js +0 -20
- package/cjs/modules/component/vdom.js +0 -393
- package/cjs/modules/demo-module.js +0 -49
- package/cjs/modules/device/device.js +0 -56
- package/cjs/modules/history/history.js +0 -21
- package/cjs/modules/request/request.js +0 -20
- package/cjs/modules/resize/resize.js +0 -72
- package/cjs/modules/router/app-router-check.js +0 -10
- package/cjs/modules/router/async-component.js +0 -33
- package/cjs/modules/router/back.js +0 -899
- package/cjs/modules/router/clear-previous-history.js +0 -50
- package/cjs/modules/router/component-loader.js +0 -140
- package/cjs/modules/router/modal.js +0 -254
- package/cjs/modules/router/navigate.js +0 -1054
- package/cjs/modules/router/process-route-queue.js +0 -80
- package/cjs/modules/router/redirect.js +0 -52
- package/cjs/modules/router/router-class.js +0 -1500
- package/cjs/modules/router/router.js +0 -36
- package/cjs/modules/router/swipe-back.js +0 -735
- package/cjs/modules/router/tab.js +0 -264
- package/cjs/modules/service-worker/service-worker.js +0 -101
- package/cjs/modules/store/create-store.js +0 -169
- package/cjs/modules/store/store.js +0 -21
- package/cjs/modules/support/support.js +0 -14
- package/cjs/modules/touch/touch.js +0 -585
- package/cjs/modules/utils/utils.js +0 -21
- package/cjs/shared/$jsx.js +0 -39
- package/cjs/shared/class.js +0 -206
- package/cjs/shared/constructor-methods.js +0 -73
- package/cjs/shared/dom7.js +0 -17
- package/cjs/shared/events-class.js +0 -125
- package/cjs/shared/get-device.js +0 -157
- package/cjs/shared/get-support.js +0 -44
- package/cjs/shared/history.js +0 -185
- package/cjs/shared/modal-methods.js +0 -105
- package/cjs/shared/request.js +0 -552
- package/cjs/shared/utils.js +0 -472
- package/components/accordion/package.json +0 -9
- package/components/actions/package.json +0 -9
- package/components/app/package.json +0 -9
- package/components/appbar/package.json +0 -9
- package/components/area-chart/package.json +0 -9
- package/components/autocomplete/package.json +0 -9
- package/components/badge/package.json +0 -9
- package/components/block/package.json +0 -9
- package/components/button/package.json +0 -9
- package/components/calendar/package.json +0 -9
- package/components/card/package.json +0 -9
- package/components/checkbox/package.json +0 -9
- package/components/chip/package.json +0 -9
- package/components/color-picker/package.json +0 -9
- package/components/contacts-list/package.json +0 -9
- package/components/data-table/package.json +0 -9
- package/components/dialog/package.json +0 -9
- package/components/elevation/package.json +0 -9
- package/components/fab/package.json +0 -9
- package/components/form/package.json +0 -9
- package/components/gauge/package.json +0 -9
- package/components/grid/package.json +0 -9
- package/components/icon/package.json +0 -9
- package/components/infinite-scroll/package.json +0 -9
- package/components/input/package.json +0 -9
- package/components/lazy/package.json +0 -9
- package/components/link/package.json +0 -9
- package/components/list/package.json +0 -9
- package/components/list-index/package.json +0 -9
- package/components/login-screen/package.json +0 -9
- package/components/menu/package.json +0 -9
- package/components/messagebar/package.json +0 -9
- package/components/messages/package.json +0 -9
- package/components/modal/package.json +0 -9
- package/components/navbar/package.json +0 -9
- package/components/notification/package.json +0 -9
- package/components/page/package.json +0 -9
- package/components/panel/package.json +0 -9
- package/components/photo-browser/package.json +0 -9
- package/components/picker/package.json +0 -9
- package/components/pie-chart/package.json +0 -9
- package/components/popover/package.json +0 -9
- package/components/popup/package.json +0 -9
- package/components/preloader/package.json +0 -9
- package/components/progressbar/package.json +0 -9
- package/components/pull-to-refresh/package.json +0 -9
- package/components/radio/package.json +0 -9
- package/components/range/package.json +0 -9
- package/components/searchbar/package.json +0 -9
- package/components/sheet/package.json +0 -9
- package/components/skeleton/package.json +0 -9
- package/components/smart-select/package.json +0 -9
- package/components/sortable/package.json +0 -9
- package/components/statusbar/package.json +0 -9
- package/components/stepper/package.json +0 -9
- package/components/subnavbar/package.json +0 -9
- package/components/swipeout/package.json +0 -9
- package/components/swiper/package.json +0 -9
- package/components/tabs/package.json +0 -9
- package/components/text-editor/package.json +0 -9
- package/components/timeline/package.json +0 -9
- package/components/toast/package.json +0 -9
- package/components/toggle/package.json +0 -9
- package/components/toolbar/package.json +0 -9
- package/components/tooltip/package.json +0 -9
- package/components/touch-ripple/package.json +0 -9
- package/components/treeview/package.json +0 -9
- package/components/typography/package.json +0 -9
- package/components/view/package.json +0 -9
- package/components/virtual-list/package.json +0 -9
- package/core/package.json +0 -8
- package/esm/components/accordion/accordion.js +0 -126
- package/esm/components/actions/actions-class.js +0 -373
- package/esm/components/actions/actions.js +0 -48
- package/esm/components/appbar/appbar.js +0 -3
- package/esm/components/area-chart/area-chart-class.js +0 -517
- package/esm/components/area-chart/area-chart.js +0 -45
- package/esm/components/autocomplete/autocomplete.js +0 -82
- package/esm/components/calendar/calendar.js +0 -113
- package/esm/components/card/card.js +0 -612
- package/esm/components/checkbox/checkbox.js +0 -3
- package/esm/components/chip/chip.js +0 -3
- package/esm/components/color-picker/color-picker.js +0 -94
- package/esm/components/contacts-list/contacts-list.js +0 -3
- package/esm/components/data-table/data-table.js +0 -64
- package/esm/components/dialog/dialog.js +0 -286
- package/esm/components/elevation/elevation.js +0 -3
- package/esm/components/fab/fab.js +0 -185
- package/esm/components/form/form.js +0 -330
- package/esm/components/gauge/gauge-class.js +0 -323
- package/esm/components/gauge/gauge.js +0 -91
- package/esm/components/grid/grid.js +0 -223
- package/esm/components/infinite-scroll/infinite-scroll.js +0 -101
- package/esm/components/input/input.js +0 -384
- package/esm/components/lazy/lazy.js +0 -271
- package/esm/components/list-index/list-index.js +0 -65
- package/esm/components/login-screen/login-screen-class.js +0 -58
- package/esm/components/login-screen/login-screen.js +0 -34
- package/esm/components/menu/menu.js +0 -82
- package/esm/components/messagebar/messagebar.js +0 -66
- package/esm/components/messages/messages.js +0 -65
- package/esm/components/notification/notification.js +0 -33
- package/esm/components/panel/panel.js +0 -208
- package/esm/components/photo-browser/photo-browser.js +0 -68
- package/esm/components/picker/picker.js +0 -66
- package/esm/components/pie-chart/pie-chart-class.js +0 -281
- package/esm/components/pie-chart/pie-chart.js +0 -33
- package/esm/components/popover/popover.js +0 -81
- package/esm/components/popup/popup.js +0 -47
- package/esm/components/preloader/preloader.js +0 -101
- package/esm/components/progressbar/progressbar.js +0 -175
- package/esm/components/pull-to-refresh/pull-to-refresh.js +0 -62
- package/esm/components/radio/radio.js +0 -3
- package/esm/components/range/range.js +0 -81
- package/esm/components/searchbar/remove-diacritics.js +0 -277
- package/esm/components/searchbar/searchbar.js +0 -129
- package/esm/components/sheet/sheet.js +0 -71
- package/esm/components/skeleton/skeleton.js +0 -3
- package/esm/components/smart-select/smart-select.js +0 -139
- package/esm/components/sortable/sortable.js +0 -310
- package/esm/components/stepper/stepper.js +0 -84
- package/esm/components/swipeout/swipeout.js +0 -606
- package/esm/components/swiper/swiper.js +0 -177
- package/esm/components/tabs/tabs.js +0 -286
- package/esm/components/text-editor/text-editor.js +0 -81
- package/esm/components/timeline/timeline.js +0 -3
- package/esm/components/toast/toast-class.js +0 -132
- package/esm/components/toast/toast.js +0 -40
- package/esm/components/toggle/toggle.js +0 -61
- package/esm/components/tooltip/tooltip.js +0 -135
- package/esm/components/touch-ripple/touch-ripple-class.js +0 -103
- package/esm/components/touch-ripple/touch-ripple.js +0 -25
- package/esm/components/treeview/treeview.js +0 -78
- package/esm/components/typography/typography.js +0 -3
- package/esm/components/virtual-list/virtual-list.js +0 -17
- package/esm/modules/component/$h.js +0 -20
- package/esm/modules/component/$jsx.js +0 -24
- package/esm/modules/component/component-class.js +0 -402
- package/esm/modules/component/parse-component.js +0 -70
- package/esm/modules/resize/resize.js +0 -64
- package/esm/modules/router/component-loader.js +0 -133
- package/esm/modules/store/create-store.js +0 -164
- package/esm/shared/$jsx.js +0 -33
- package/esm/shared/class.js +0 -197
- package/esm/shared/constructor-methods.js +0 -65
- package/esm/shared/events-class.js +0 -119
- package/esm/shared/modal-methods.js +0 -95
- package/esm/shared/request.js +0 -545
- package/lite/package.json +0 -8
- package/lite-bundle/package.json +0 -8
- package/modules/clicks/package.json +0 -9
- package/modules/component/package.json +0 -9
- package/modules/device/package.json +0 -9
- package/modules/history/package.json +0 -9
- package/modules/request/package.json +0 -9
- package/modules/resize/package.json +0 -9
- package/modules/router/package.json +0 -9
- package/modules/service-worker/package.json +0 -9
- package/modules/store/package.json +0 -9
- package/modules/support/package.json +0 -9
- package/modules/touch/package.json +0 -9
- package/modules/utils/package.json +0 -9
- package/types/components/accordion/accordion.d.ts +0 -55
- package/types/components/actions/actions.d.ts +0 -158
- package/types/components/app/app-class.d.ts +0 -196
- package/types/components/appbar/appbar.d.ts +0 -10
- package/types/components/area-chart/area-chart.d.ts +0 -124
- package/types/components/autocomplete/autocomplete.d.ts +0 -191
- package/types/components/badge/badge.d.ts +0 -10
- package/types/components/block/block.d.ts +0 -10
- package/types/components/button/button.d.ts +0 -10
- package/types/components/calendar/calendar.d.ts +0 -304
- package/types/components/card/card.d.ts +0 -65
- package/types/components/checkbox/checkbox.d.ts +0 -10
- package/types/components/chip/chip.d.ts +0 -10
- package/types/components/color-picker/color-picker.d.ts +0 -229
- package/types/components/contacts-list/contacts-list.d.ts +0 -10
- package/types/components/data-table/data-table.d.ts +0 -57
- package/types/components/dialog/dialog.d.ts +0 -241
- package/types/components/elevation/elevation.d.ts +0 -10
- package/types/components/fab/fab.d.ts +0 -28
- package/types/components/form/form.d.ts +0 -60
- package/types/components/gauge/gauge.d.ts +0 -96
- package/types/components/grid/grid.d.ts +0 -17
- package/types/components/icon/icon.d.ts +0 -10
- package/types/components/infinite-scroll/infinite-scroll.d.ts +0 -23
- package/types/components/input/input.d.ts +0 -56
- package/types/components/lazy/lazy.d.ts +0 -53
- package/types/components/link/link.d.ts +0 -10
- package/types/components/list/list.d.ts +0 -10
- package/types/components/list-index/list-index.d.ts +0 -99
- package/types/components/login-screen/login-screen.d.ts +0 -95
- package/types/components/menu/menu.d.ts +0 -28
- package/types/components/messagebar/messagebar.d.ts +0 -161
- package/types/components/messages/messages.d.ts +0 -158
- package/types/components/modal/modal.d.ts +0 -78
- package/types/components/navbar/navbar.d.ts +0 -75
- package/types/components/notification/notification.d.ts +0 -118
- package/types/components/page/page.d.ts +0 -10
- package/types/components/panel/panel.d.ts +0 -194
- package/types/components/photo-browser/photo-browser.d.ts +0 -194
- package/types/components/picker/picker.d.ts +0 -216
- package/types/components/pie-chart/pie-chart.d.ts +0 -95
- package/types/components/popover/popover.d.ts +0 -127
- package/types/components/popup/popup.d.ts +0 -135
- package/types/components/preloader/preloader.d.ts +0 -18
- package/types/components/progressbar/progressbar.d.ts +0 -27
- package/types/components/pull-to-refresh/pull-to-refresh.d.ts +0 -99
- package/types/components/radio/radio.d.ts +0 -10
- package/types/components/range/range.d.ts +0 -121
- package/types/components/searchbar/searchbar.d.ts +0 -157
- package/types/components/sheet/sheet.d.ts +0 -149
- package/types/components/skeleton/skeleton.d.ts +0 -10
- package/types/components/smart-select/smart-select.d.ts +0 -199
- package/types/components/sortable/sortable.d.ts +0 -46
- package/types/components/statusbar/statusbar.d.ts +0 -50
- package/types/components/stepper/stepper.d.ts +0 -117
- package/types/components/subnavbar/subnavbar.d.ts +0 -11
- package/types/components/swipeout/swipeout.d.ts +0 -68
- package/types/components/swiper/swiper.d.ts +0 -21
- package/types/components/tabs/tabs.d.ts +0 -39
- package/types/components/text-editor/text-editor.d.ts +0 -162
- package/types/components/timeline/timeline.d.ts +0 -10
- package/types/components/toast/toast.d.ts +0 -117
- package/types/components/toggle/toggle.d.ts +0 -69
- package/types/components/toolbar/toolbar.d.ts +0 -43
- package/types/components/tooltip/tooltip.d.ts +0 -101
- package/types/components/touch-ripple/touch-ripple.d.ts +0 -21
- package/types/components/treeview/treeview.d.ts +0 -38
- package/types/components/typography/typography.d.ts +0 -10
- package/types/components/view/view.d.ts +0 -205
- package/types/components/virtual-list/virtual-list.d.ts +0 -138
- package/types/modules/clicks/clicks.d.ts +0 -19
- package/types/modules/component/component.d.ts +0 -94
- package/types/modules/component/snabbdom/h.d.ts +0 -10
- package/types/modules/component/snabbdom/helpers/attachto.d.ts +0 -9
- package/types/modules/component/snabbdom/hooks.d.ts +0 -23
- package/types/modules/component/snabbdom/htmldomapi.d.ts +0 -19
- package/types/modules/component/snabbdom/is.d.ts +0 -2
- package/types/modules/component/snabbdom/modules/attributes.d.ts +0 -4
- package/types/modules/component/snabbdom/modules/class.d.ts +0 -4
- package/types/modules/component/snabbdom/modules/dataset.d.ts +0 -4
- package/types/modules/component/snabbdom/modules/eventlisteners.d.ts +0 -8
- package/types/modules/component/snabbdom/modules/hero.d.ts +0 -6
- package/types/modules/component/snabbdom/modules/module.d.ts +0 -9
- package/types/modules/component/snabbdom/modules/props.d.ts +0 -4
- package/types/modules/component/snabbdom/modules/style.d.ts +0 -7
- package/types/modules/component/snabbdom/snabbdom.bundle.d.ts +0 -5
- package/types/modules/component/snabbdom/snabbdom.d.ts +0 -6
- package/types/modules/component/snabbdom/thunk.d.ts +0 -14
- package/types/modules/component/snabbdom/tovnode.d.ts +0 -4
- package/types/modules/component/snabbdom/vnode.d.ts +0 -36
- package/types/modules/device/device.d.ts +0 -14
- package/types/modules/request/request.d.ts +0 -15
- package/types/modules/resize/resize.d.ts +0 -25
- package/types/modules/router/router.d.ts +0 -356
- package/types/modules/service-worker/service-worker.d.ts +0 -38
- package/types/modules/store/store.d.ts +0 -40
- package/types/modules/support/support.d.ts +0 -15
- package/types/modules/touch/touch.d.ts +0 -62
- package/types/modules/utils/utils.d.ts +0 -15
- package/types/package.json +0 -6
package/shared/class.js
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { extend, now } from './utils';
|
|
2
|
+
import EventsClass from './events-class';
|
|
3
|
+
|
|
4
|
+
class Framework7Class extends EventsClass {
|
|
5
|
+
constructor(params = {}, parents = []) {
|
|
6
|
+
super(parents);
|
|
7
|
+
const self = this;
|
|
8
|
+
self.params = params;
|
|
9
|
+
|
|
10
|
+
if (self.params && self.params.on) {
|
|
11
|
+
Object.keys(self.params.on).forEach(eventName => {
|
|
12
|
+
self.on(eventName, self.params.on[eventName]);
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
} // eslint-disable-next-line
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
useModuleParams(module, instanceParams) {
|
|
19
|
+
if (module.params) {
|
|
20
|
+
const originalParams = {};
|
|
21
|
+
Object.keys(module.params).forEach(paramKey => {
|
|
22
|
+
if (typeof instanceParams[paramKey] === 'undefined') return;
|
|
23
|
+
originalParams[paramKey] = extend({}, instanceParams[paramKey]);
|
|
24
|
+
});
|
|
25
|
+
extend(instanceParams, module.params);
|
|
26
|
+
Object.keys(originalParams).forEach(paramKey => {
|
|
27
|
+
extend(instanceParams[paramKey], originalParams[paramKey]);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
useModulesParams(instanceParams) {
|
|
33
|
+
const instance = this;
|
|
34
|
+
if (!instance.modules) return;
|
|
35
|
+
Object.keys(instance.modules).forEach(moduleName => {
|
|
36
|
+
const module = instance.modules[moduleName]; // Extend params
|
|
37
|
+
|
|
38
|
+
if (module.params) {
|
|
39
|
+
extend(instanceParams, module.params);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
useModule(moduleName = '', moduleParams = {}) {
|
|
45
|
+
const instance = this;
|
|
46
|
+
if (!instance.modules) return;
|
|
47
|
+
const module = typeof moduleName === 'string' ? instance.modules[moduleName] : moduleName;
|
|
48
|
+
if (!module) return; // Extend instance methods and props
|
|
49
|
+
|
|
50
|
+
if (module.instance) {
|
|
51
|
+
Object.keys(module.instance).forEach(modulePropName => {
|
|
52
|
+
const moduleProp = module.instance[modulePropName];
|
|
53
|
+
|
|
54
|
+
if (typeof moduleProp === 'function') {
|
|
55
|
+
instance[modulePropName] = moduleProp.bind(instance);
|
|
56
|
+
} else {
|
|
57
|
+
instance[modulePropName] = moduleProp;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
} // Add event listeners
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
if (module.on && instance.on) {
|
|
64
|
+
Object.keys(module.on).forEach(moduleEventName => {
|
|
65
|
+
instance.on(moduleEventName, module.on[moduleEventName]);
|
|
66
|
+
});
|
|
67
|
+
} // Add vnode hooks
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
if (module.vnode) {
|
|
71
|
+
if (!instance.vnodeHooks) instance.vnodeHooks = {};
|
|
72
|
+
Object.keys(module.vnode).forEach(vnodeId => {
|
|
73
|
+
Object.keys(module.vnode[vnodeId]).forEach(hookName => {
|
|
74
|
+
const handler = module.vnode[vnodeId][hookName];
|
|
75
|
+
if (!instance.vnodeHooks[hookName]) instance.vnodeHooks[hookName] = {};
|
|
76
|
+
if (!instance.vnodeHooks[hookName][vnodeId]) instance.vnodeHooks[hookName][vnodeId] = [];
|
|
77
|
+
instance.vnodeHooks[hookName][vnodeId].push(handler.bind(instance));
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
} // Module create callback
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
if (module.create) {
|
|
84
|
+
module.create.bind(instance)(moduleParams);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
useModules(modulesParams = {}) {
|
|
89
|
+
const instance = this;
|
|
90
|
+
if (!instance.modules) return;
|
|
91
|
+
Object.keys(instance.modules).forEach(moduleName => {
|
|
92
|
+
const moduleParams = modulesParams[moduleName] || {};
|
|
93
|
+
instance.useModule(moduleName, moduleParams);
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
static set components(components) {
|
|
98
|
+
const Class = this;
|
|
99
|
+
if (!Class.use) return;
|
|
100
|
+
Class.use(components);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
static installModule(module, ...params) {
|
|
104
|
+
const Class = this;
|
|
105
|
+
if (!Class.prototype.modules) Class.prototype.modules = {};
|
|
106
|
+
const name = module.name || `${Object.keys(Class.prototype.modules).length}_${now()}`;
|
|
107
|
+
Class.prototype.modules[name] = module; // Prototype
|
|
108
|
+
|
|
109
|
+
if (module.proto) {
|
|
110
|
+
Object.keys(module.proto).forEach(key => {
|
|
111
|
+
Class.prototype[key] = module.proto[key];
|
|
112
|
+
});
|
|
113
|
+
} // Class
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
if (module.static) {
|
|
117
|
+
Object.keys(module.static).forEach(key => {
|
|
118
|
+
Class[key] = module.static[key];
|
|
119
|
+
});
|
|
120
|
+
} // Callback
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
if (module.install) {
|
|
124
|
+
module.install.apply(Class, params);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
return Class;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
static use(module, ...params) {
|
|
131
|
+
const Class = this;
|
|
132
|
+
|
|
133
|
+
if (Array.isArray(module)) {
|
|
134
|
+
module.forEach(m => Class.installModule(m));
|
|
135
|
+
return Class;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
return Class.installModule(module, ...params);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export default Framework7Class;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import $ from './dom7';
|
|
2
|
+
export default function ConstructorMethods(parameters = {}) {
|
|
3
|
+
const {
|
|
4
|
+
defaultSelector,
|
|
5
|
+
constructor: Constructor,
|
|
6
|
+
domProp,
|
|
7
|
+
app,
|
|
8
|
+
addMethods
|
|
9
|
+
} = parameters;
|
|
10
|
+
const methods = {
|
|
11
|
+
create(...args) {
|
|
12
|
+
if (app) return new Constructor(app, ...args);
|
|
13
|
+
return new Constructor(...args);
|
|
14
|
+
},
|
|
15
|
+
|
|
16
|
+
get(el = defaultSelector) {
|
|
17
|
+
if (el instanceof Constructor) return el;
|
|
18
|
+
const $el = $(el);
|
|
19
|
+
if ($el.length === 0) return undefined;
|
|
20
|
+
return $el[0][domProp];
|
|
21
|
+
},
|
|
22
|
+
|
|
23
|
+
destroy(el) {
|
|
24
|
+
const instance = methods.get(el);
|
|
25
|
+
if (instance && instance.destroy) return instance.destroy();
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
if (addMethods && Array.isArray(addMethods)) {
|
|
32
|
+
addMethods.forEach(methodName => {
|
|
33
|
+
methods[methodName] = (el = defaultSelector, ...args) => {
|
|
34
|
+
const instance = methods.get(el);
|
|
35
|
+
if (instance && instance[methodName]) return instance[methodName](...args);
|
|
36
|
+
return undefined;
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return methods;
|
|
42
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
class EventsClass {
|
|
2
|
+
constructor(parents = []) {
|
|
3
|
+
const self = this;
|
|
4
|
+
self.eventsParents = parents;
|
|
5
|
+
self.eventsListeners = {};
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
on(events, handler, priority) {
|
|
9
|
+
const self = this;
|
|
10
|
+
if (typeof handler !== 'function') return self;
|
|
11
|
+
const method = priority ? 'unshift' : 'push';
|
|
12
|
+
events.split(' ').forEach(event => {
|
|
13
|
+
if (!self.eventsListeners[event]) self.eventsListeners[event] = [];
|
|
14
|
+
self.eventsListeners[event][method](handler);
|
|
15
|
+
});
|
|
16
|
+
return self;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
once(events, handler, priority) {
|
|
20
|
+
const self = this;
|
|
21
|
+
if (typeof handler !== 'function') return self;
|
|
22
|
+
|
|
23
|
+
function onceHandler(...args) {
|
|
24
|
+
self.off(events, onceHandler);
|
|
25
|
+
|
|
26
|
+
if (onceHandler.f7proxy) {
|
|
27
|
+
delete onceHandler.f7proxy;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
handler.apply(self, args);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
onceHandler.f7proxy = handler;
|
|
34
|
+
return self.on(events, onceHandler, priority);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
off(events, handler) {
|
|
38
|
+
const self = this;
|
|
39
|
+
if (!self.eventsListeners) return self;
|
|
40
|
+
events.split(' ').forEach(event => {
|
|
41
|
+
if (typeof handler === 'undefined') {
|
|
42
|
+
self.eventsListeners[event] = [];
|
|
43
|
+
} else if (self.eventsListeners[event]) {
|
|
44
|
+
self.eventsListeners[event].forEach((eventHandler, index) => {
|
|
45
|
+
if (eventHandler === handler || eventHandler.f7proxy && eventHandler.f7proxy === handler) {
|
|
46
|
+
self.eventsListeners[event].splice(index, 1);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
return self;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
emit(...args) {
|
|
55
|
+
const self = this;
|
|
56
|
+
if (!self.eventsListeners) return self;
|
|
57
|
+
let events;
|
|
58
|
+
let data;
|
|
59
|
+
let context;
|
|
60
|
+
let eventsParents;
|
|
61
|
+
|
|
62
|
+
if (typeof args[0] === 'string' || Array.isArray(args[0])) {
|
|
63
|
+
events = args[0];
|
|
64
|
+
data = args.slice(1, args.length);
|
|
65
|
+
context = self;
|
|
66
|
+
eventsParents = self.eventsParents;
|
|
67
|
+
} else {
|
|
68
|
+
events = args[0].events;
|
|
69
|
+
data = args[0].data;
|
|
70
|
+
context = args[0].context || self;
|
|
71
|
+
eventsParents = args[0].local ? [] : args[0].parents || self.eventsParents;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const eventsArray = Array.isArray(events) ? events : events.split(' ');
|
|
75
|
+
const localEvents = eventsArray.map(eventName => eventName.replace('local::', ''));
|
|
76
|
+
const parentEvents = eventsArray.filter(eventName => eventName.indexOf('local::') < 0);
|
|
77
|
+
localEvents.forEach(event => {
|
|
78
|
+
if (self.eventsListeners && self.eventsListeners[event]) {
|
|
79
|
+
const handlers = [];
|
|
80
|
+
self.eventsListeners[event].forEach(eventHandler => {
|
|
81
|
+
handlers.push(eventHandler);
|
|
82
|
+
});
|
|
83
|
+
handlers.forEach(eventHandler => {
|
|
84
|
+
eventHandler.apply(context, data);
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
if (eventsParents && eventsParents.length > 0) {
|
|
90
|
+
eventsParents.forEach(eventsParent => {
|
|
91
|
+
eventsParent.emit(parentEvents, ...data);
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return self;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export default EventsClass;
|
|
File without changes
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import { getWindow } from 'ssr-window';
|
|
2
2
|
import { getSupport } from './get-support';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function calcDevice(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var device = {
|
|
3
|
+
let deviceCalculated;
|
|
4
|
+
|
|
5
|
+
function calcDevice({
|
|
6
|
+
userAgent
|
|
7
|
+
} = {}) {
|
|
8
|
+
const support = getSupport();
|
|
9
|
+
const window = getWindow();
|
|
10
|
+
const platform = window.navigator.platform;
|
|
11
|
+
const ua = userAgent || window.navigator.userAgent;
|
|
12
|
+
const device = {
|
|
14
13
|
ios: false,
|
|
15
14
|
android: false,
|
|
16
15
|
androidChrome: false,
|
|
@@ -29,24 +28,24 @@ function calcDevice(_temp) {
|
|
|
29
28
|
capacitor: !!window.Capacitor,
|
|
30
29
|
nwjs: false
|
|
31
30
|
};
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (!ipad && macos && support.touch && iPadScreens.indexOf(screenWidth
|
|
31
|
+
const screenWidth = window.screen.width;
|
|
32
|
+
const screenHeight = window.screen.height;
|
|
33
|
+
const android = ua.match(/(Android);?[\s\/]+([\d.]+)?/); // eslint-disable-line
|
|
34
|
+
|
|
35
|
+
let ipad = ua.match(/(iPad).*OS\s([\d_]+)/);
|
|
36
|
+
const ipod = ua.match(/(iPod)(.*OS\s([\d_]+))?/);
|
|
37
|
+
const iphone = !ipad && ua.match(/(iPhone\sOS|iOS|iPhone;\sCPU\sOS)\s([\d_]+)/);
|
|
38
|
+
const ie = ua.indexOf('MSIE ') >= 0 || ua.indexOf('Trident/') >= 0;
|
|
39
|
+
const edge = ua.indexOf('Edge/') >= 0;
|
|
40
|
+
const firefox = ua.indexOf('Gecko/') >= 0 && ua.indexOf('Firefox/') >= 0;
|
|
41
|
+
const windows = platform === 'Win32';
|
|
42
|
+
const electron = ua.toLowerCase().indexOf('electron') >= 0;
|
|
43
|
+
const nwjs = typeof nw !== 'undefined' && typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions.nw !== 'undefined';
|
|
44
|
+
let macos = platform === 'MacIntel'; // iPadOs 13 fix
|
|
45
|
+
|
|
46
|
+
const iPadScreens = ['1024x1366', '1366x1024', '834x1194', '1194x834', '834x1112', '1112x834', '768x1024', '1024x768', '820x1180', '1180x820', '810x1080', '1080x810'];
|
|
47
|
+
|
|
48
|
+
if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) {
|
|
50
49
|
ipad = ua.match(/(Version)\/([\d.]+)/);
|
|
51
50
|
if (!ipad) ipad = [0, 1, '13_0_0'];
|
|
52
51
|
macos = false;
|
|
@@ -116,11 +115,11 @@ function calcDevice(_temp) {
|
|
|
116
115
|
|
|
117
116
|
device.pixelRatio = window.devicePixelRatio || 1; // Color Scheme
|
|
118
117
|
|
|
119
|
-
|
|
120
|
-
|
|
118
|
+
const DARK = '(prefers-color-scheme: dark)';
|
|
119
|
+
const LIGHT = '(prefers-color-scheme: light)';
|
|
121
120
|
|
|
122
121
|
device.prefersColorScheme = function prefersColorTheme() {
|
|
123
|
-
|
|
122
|
+
let theme;
|
|
124
123
|
|
|
125
124
|
if (window.matchMedia && window.matchMedia(LIGHT).matches) {
|
|
126
125
|
theme = 'light';
|
|
@@ -137,11 +136,7 @@ function calcDevice(_temp) {
|
|
|
137
136
|
return device;
|
|
138
137
|
}
|
|
139
138
|
|
|
140
|
-
function getDevice(overrides, reset) {
|
|
141
|
-
if (overrides === void 0) {
|
|
142
|
-
overrides = {};
|
|
143
|
-
}
|
|
144
|
-
|
|
139
|
+
function getDevice(overrides = {}, reset) {
|
|
145
140
|
if (!deviceCalculated || reset) {
|
|
146
141
|
deviceCalculated = calcDevice(overrides);
|
|
147
142
|
}
|
|
File without changes
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
import { getWindow, getDocument } from 'ssr-window';
|
|
2
|
-
|
|
2
|
+
let support;
|
|
3
3
|
|
|
4
4
|
function calcSupport() {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
const window = getWindow();
|
|
6
|
+
const document = getDocument();
|
|
7
7
|
return {
|
|
8
8
|
touch: !!('ontouchstart' in window || window.DocumentTouch && document instanceof window.DocumentTouch),
|
|
9
9
|
pointerEvents: !!window.PointerEvent && 'maxTouchPoints' in window.navigator && window.navigator.maxTouchPoints >= 0,
|
|
10
10
|
passiveListener: function checkPassiveListener() {
|
|
11
|
-
|
|
11
|
+
let supportsPassive = false;
|
|
12
12
|
|
|
13
13
|
try {
|
|
14
|
-
|
|
14
|
+
const opts = Object.defineProperty({}, 'passive', {
|
|
15
15
|
// eslint-disable-next-line
|
|
16
|
-
get
|
|
16
|
+
get() {
|
|
17
17
|
supportsPassive = true;
|
|
18
18
|
}
|
|
19
|
+
|
|
19
20
|
});
|
|
20
21
|
window.addEventListener('testPassiveListener', null, opts);
|
|
21
22
|
} catch (e) {// No support
|
|
@@ -1,51 +1,57 @@
|
|
|
1
1
|
import { getWindow, getDocument } from 'ssr-window';
|
|
2
2
|
import $ from './dom7';
|
|
3
3
|
import { extend } from './utils';
|
|
4
|
-
|
|
4
|
+
const History = {
|
|
5
5
|
queue: [],
|
|
6
|
-
|
|
6
|
+
|
|
7
|
+
clearQueue() {
|
|
7
8
|
if (History.queue.length === 0) return;
|
|
8
|
-
|
|
9
|
+
const currentQueue = History.queue.shift();
|
|
9
10
|
currentQueue();
|
|
10
11
|
},
|
|
12
|
+
|
|
11
13
|
routerQueue: [],
|
|
12
|
-
|
|
14
|
+
|
|
15
|
+
clearRouterQueue() {
|
|
13
16
|
if (History.routerQueue.length === 0) return;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
const currentQueue = History.routerQueue.pop();
|
|
18
|
+
const {
|
|
19
|
+
router,
|
|
20
|
+
stateUrl,
|
|
21
|
+
action
|
|
22
|
+
} = currentQueue;
|
|
23
|
+
let animate = router.params.animate;
|
|
19
24
|
if (router.params.browserHistoryAnimate === false) animate = false;
|
|
20
25
|
|
|
21
26
|
if (action === 'back') {
|
|
22
27
|
router.back({
|
|
23
|
-
animate
|
|
28
|
+
animate,
|
|
24
29
|
browserHistory: false
|
|
25
30
|
});
|
|
26
31
|
}
|
|
27
32
|
|
|
28
33
|
if (action === 'load') {
|
|
29
34
|
router.navigate(stateUrl, {
|
|
30
|
-
animate
|
|
35
|
+
animate,
|
|
31
36
|
browserHistory: false
|
|
32
37
|
});
|
|
33
38
|
}
|
|
34
39
|
},
|
|
35
|
-
|
|
40
|
+
|
|
41
|
+
handle(e) {
|
|
36
42
|
if (History.blockPopstate) return;
|
|
37
|
-
|
|
43
|
+
const app = this; // const mainView = app.views.main;
|
|
38
44
|
|
|
39
|
-
|
|
45
|
+
let state = e.state;
|
|
40
46
|
History.previousState = History.state;
|
|
41
47
|
History.state = state;
|
|
42
48
|
History.allowChange = true;
|
|
43
49
|
History.clearQueue();
|
|
44
50
|
state = History.state;
|
|
45
51
|
if (!state) state = {};
|
|
46
|
-
app.views.forEach(
|
|
47
|
-
|
|
48
|
-
|
|
52
|
+
app.views.forEach(view => {
|
|
53
|
+
const router = view.router;
|
|
54
|
+
let viewState = state[view.id];
|
|
49
55
|
|
|
50
56
|
if (!viewState && view.params.browserHistory) {
|
|
51
57
|
viewState = {
|
|
@@ -54,8 +60,8 @@ var History = {
|
|
|
54
60
|
}
|
|
55
61
|
|
|
56
62
|
if (!viewState) return;
|
|
57
|
-
|
|
58
|
-
|
|
63
|
+
const stateUrl = viewState.url || undefined;
|
|
64
|
+
let animate = router.params.animate;
|
|
59
65
|
if (router.params.browserHistoryAnimate === false) animate = false;
|
|
60
66
|
|
|
61
67
|
if (stateUrl !== router.url) {
|
|
@@ -63,43 +69,43 @@ var History = {
|
|
|
63
69
|
// Go Back
|
|
64
70
|
if (router.allowPageChange) {
|
|
65
71
|
router.back({
|
|
66
|
-
animate
|
|
72
|
+
animate,
|
|
67
73
|
browserHistory: false
|
|
68
74
|
});
|
|
69
75
|
} else {
|
|
70
76
|
History.routerQueue.push({
|
|
71
77
|
action: 'back',
|
|
72
|
-
router
|
|
78
|
+
router
|
|
73
79
|
});
|
|
74
80
|
}
|
|
75
81
|
} else if (router.allowPageChange) {
|
|
76
82
|
// Load page
|
|
77
83
|
router.navigate(stateUrl, {
|
|
78
|
-
animate
|
|
84
|
+
animate,
|
|
79
85
|
browserHistory: false
|
|
80
86
|
});
|
|
81
87
|
} else {
|
|
82
88
|
History.routerQueue.unshift({
|
|
83
89
|
action: 'load',
|
|
84
|
-
stateUrl
|
|
85
|
-
router
|
|
90
|
+
stateUrl,
|
|
91
|
+
router
|
|
86
92
|
});
|
|
87
93
|
}
|
|
88
94
|
}
|
|
89
95
|
});
|
|
90
96
|
},
|
|
91
|
-
initViewState: function initViewState(viewId, viewState) {
|
|
92
|
-
var _extend;
|
|
93
97
|
|
|
94
|
-
|
|
95
|
-
|
|
98
|
+
initViewState(viewId, viewState) {
|
|
99
|
+
const window = getWindow();
|
|
100
|
+
const newState = extend({}, History.state || {}, {
|
|
101
|
+
[viewId]: viewState
|
|
102
|
+
});
|
|
96
103
|
History.state = newState;
|
|
97
104
|
window.history.replaceState(newState, '');
|
|
98
105
|
},
|
|
99
|
-
push: function push(viewId, viewState, url) {
|
|
100
|
-
var _extend2;
|
|
101
106
|
|
|
102
|
-
|
|
107
|
+
push(viewId, viewState, url) {
|
|
108
|
+
const window = getWindow();
|
|
103
109
|
|
|
104
110
|
if (url.substr(-3) === '#!/') {
|
|
105
111
|
// eslint-disable-next-line
|
|
@@ -107,21 +113,22 @@ var History = {
|
|
|
107
113
|
}
|
|
108
114
|
|
|
109
115
|
if (!History.allowChange) {
|
|
110
|
-
History.queue.push(
|
|
116
|
+
History.queue.push(() => {
|
|
111
117
|
History.push(viewId, viewState, url);
|
|
112
118
|
});
|
|
113
119
|
return;
|
|
114
120
|
}
|
|
115
121
|
|
|
116
122
|
History.previousState = History.state;
|
|
117
|
-
|
|
123
|
+
const newState = extend({}, History.previousState || {}, {
|
|
124
|
+
[viewId]: viewState
|
|
125
|
+
});
|
|
118
126
|
History.state = newState;
|
|
119
127
|
window.history.pushState(newState, '', url);
|
|
120
128
|
},
|
|
121
|
-
replace: function replace(viewId, viewState, url) {
|
|
122
|
-
var _extend3;
|
|
123
129
|
|
|
124
|
-
|
|
130
|
+
replace(viewId, viewState, url) {
|
|
131
|
+
const window = getWindow();
|
|
125
132
|
|
|
126
133
|
if (url.substr(-3) === '#!/') {
|
|
127
134
|
// eslint-disable-next-line
|
|
@@ -129,37 +136,43 @@ var History = {
|
|
|
129
136
|
}
|
|
130
137
|
|
|
131
138
|
if (!History.allowChange) {
|
|
132
|
-
History.queue.push(
|
|
139
|
+
History.queue.push(() => {
|
|
133
140
|
History.replace(viewId, viewState, url);
|
|
134
141
|
});
|
|
135
142
|
return;
|
|
136
143
|
}
|
|
137
144
|
|
|
138
145
|
History.previousState = History.state;
|
|
139
|
-
|
|
146
|
+
const newState = extend({}, History.previousState || {}, {
|
|
147
|
+
[viewId]: viewState
|
|
148
|
+
});
|
|
140
149
|
History.state = newState;
|
|
141
150
|
window.history.replaceState(newState, '', url);
|
|
142
151
|
},
|
|
143
|
-
|
|
144
|
-
|
|
152
|
+
|
|
153
|
+
go(index) {
|
|
154
|
+
const window = getWindow();
|
|
145
155
|
History.allowChange = false;
|
|
146
156
|
window.history.go(index);
|
|
147
157
|
},
|
|
148
|
-
|
|
149
|
-
|
|
158
|
+
|
|
159
|
+
back() {
|
|
160
|
+
const window = getWindow();
|
|
150
161
|
History.allowChange = false;
|
|
151
162
|
window.history.back();
|
|
152
163
|
},
|
|
164
|
+
|
|
153
165
|
allowChange: true,
|
|
154
166
|
previousState: {},
|
|
155
167
|
state: {},
|
|
156
168
|
blockPopstate: true,
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
169
|
+
|
|
170
|
+
init(app) {
|
|
171
|
+
const window = getWindow();
|
|
172
|
+
const document = getDocument();
|
|
160
173
|
History.state = window.history.state;
|
|
161
|
-
$(window).on('load',
|
|
162
|
-
setTimeout(
|
|
174
|
+
$(window).on('load', () => {
|
|
175
|
+
setTimeout(() => {
|
|
163
176
|
History.blockPopstate = false;
|
|
164
177
|
}, 0);
|
|
165
178
|
});
|
|
@@ -170,5 +183,6 @@ var History = {
|
|
|
170
183
|
|
|
171
184
|
$(window).on('popstate', History.handle.bind(app));
|
|
172
185
|
}
|
|
186
|
+
|
|
173
187
|
};
|
|
174
188
|
export default History;
|