framework7-svelte 8.3.4 → 9.0.0
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-content.d.ts +11 -5
- package/components/accordion-content.svelte +8 -6
- package/components/accordion-item.d.ts +23 -11
- package/components/accordion-item.svelte +27 -25
- package/components/accordion-toggle.d.ts +11 -5
- package/components/accordion-toggle.svelte +8 -6
- package/components/accordion.d.ts +11 -5
- package/components/accordion.svelte +11 -10
- package/components/actions-button.d.ts +14 -6
- package/components/actions-button.svelte +21 -19
- package/components/actions-group.d.ts +11 -5
- package/components/actions-group.svelte +4 -7
- package/components/actions-label.d.ts +11 -5
- package/components/actions-label.svelte +13 -23
- package/components/actions.d.ts +31 -21
- package/components/actions.svelte +50 -54
- package/components/app.d.ts +11 -5
- package/components/app.svelte +6 -7
- package/components/area-chart.d.ts +13 -6
- package/components/area-chart.svelte +42 -46
- package/components/badge.d.ts +11 -5
- package/components/badge.svelte +10 -9
- package/components/block-footer.d.ts +11 -5
- package/components/block-footer.svelte +8 -6
- package/components/block-header.d.ts +11 -5
- package/components/block-header.svelte +8 -6
- package/components/block-title.d.ts +11 -5
- package/components/block-title.svelte +12 -10
- package/components/block.d.ts +11 -5
- package/components/block.svelte +76 -76
- package/components/breadcrumbs-collapsed.d.ts +12 -6
- package/components/breadcrumbs-collapsed.svelte +10 -15
- package/components/breadcrumbs-item.d.ts +12 -6
- package/components/breadcrumbs-item.svelte +9 -8
- package/components/breadcrumbs-separator.d.ts +10 -5
- package/components/breadcrumbs-separator.svelte +9 -5
- package/components/breadcrumbs.d.ts +11 -6
- package/components/breadcrumbs.svelte +8 -6
- package/components/button.d.ts +44 -37
- package/components/button.svelte +107 -103
- package/components/card-content.d.ts +11 -5
- package/components/card-content.svelte +11 -10
- package/components/card-footer.d.ts +11 -5
- package/components/card-footer.svelte +8 -6
- package/components/card-header.d.ts +11 -5
- package/components/card-header.svelte +8 -6
- package/components/card.d.ts +43 -31
- package/components/card.svelte +78 -67
- package/components/checkbox.d.ts +20 -13
- package/components/checkbox.svelte +32 -30
- package/components/chip.d.ts +22 -15
- package/components/chip.svelte +54 -60
- package/components/fab-backdrop.d.ts +10 -5
- package/components/fab-backdrop.svelte +5 -7
- package/components/fab-button.d.ts +17 -11
- package/components/fab-button.svelte +20 -29
- package/components/fab-buttons.d.ts +11 -5
- package/components/fab-buttons.svelte +5 -12
- package/components/fab.d.ts +22 -13
- package/components/fab.svelte +55 -51
- package/components/gauge.d.ts +24 -19
- package/components/gauge.svelte +25 -25
- package/components/icon.d.ts +19 -13
- package/components/icon.svelte +65 -63
- package/components/input.d.ts +78 -61
- package/components/input.svelte +171 -154
- package/components/link.d.ts +28 -21
- package/components/link.svelte +67 -65
- package/components/list-button.d.ts +22 -15
- package/components/list-button.svelte +56 -44
- package/components/list-group.d.ts +16 -10
- package/components/list-group.svelte +38 -34
- package/components/list-index.d.ts +20 -13
- package/components/list-index.svelte +23 -24
- package/components/list-input.d.ts +91 -64
- package/components/list-input.svelte +254 -205
- package/components/list-item.d.ts +98 -63
- package/components/list-item.svelte +412 -439
- package/components/list.d.ts +72 -54
- package/components/list.svelte +151 -147
- package/components/login-screen-title.d.ts +11 -5
- package/components/login-screen-title.svelte +4 -6
- package/components/login-screen.d.ts +20 -10
- package/components/login-screen.svelte +39 -42
- package/components/message.d.ts +48 -29
- package/components/message.svelte +123 -88
- package/components/messagebar-attachment.d.ts +17 -9
- package/components/messagebar-attachment.svelte +16 -18
- package/components/messagebar-attachments.d.ts +11 -5
- package/components/messagebar-attachments.svelte +6 -6
- package/components/messagebar-sheet-image.d.ts +19 -10
- package/components/messagebar-sheet-image.svelte +30 -22
- package/components/messagebar-sheet-item.d.ts +11 -5
- package/components/messagebar-sheet-item.svelte +4 -6
- package/components/messagebar-sheet.d.ts +11 -5
- package/components/messagebar-sheet.svelte +4 -6
- package/components/messagebar.d.ts +53 -31
- package/components/messagebar.svelte +100 -77
- package/components/messages-title.d.ts +11 -5
- package/components/messages-title.svelte +4 -6
- package/components/messages.d.ts +26 -20
- package/components/messages.svelte +32 -32
- package/components/nav-left.d.ts +19 -12
- package/components/nav-left.svelte +23 -39
- package/components/nav-right.d.ts +11 -6
- package/components/nav-right.svelte +4 -15
- package/components/nav-title-large.d.ts +11 -5
- package/components/nav-title-large.svelte +4 -6
- package/components/nav-title.d.ts +13 -8
- package/components/nav-title.svelte +25 -20
- package/components/navbar.d.ts +47 -28
- package/components/navbar.svelte +100 -111
- package/components/page-content.d.ts +41 -29
- package/components/page-content.svelte +58 -50
- package/components/page.d.ts +71 -46
- package/components/page.svelte +102 -82
- package/components/panel.d.ts +51 -35
- package/components/panel.svelte +94 -99
- package/components/photo-browser.d.ts +50 -41
- package/components/photo-browser.svelte +48 -47
- package/components/pie-chart.d.ts +13 -6
- package/components/pie-chart.svelte +29 -27
- package/components/popover.d.ts +28 -19
- package/components/popover.svelte +45 -48
- package/components/popup.d.ts +37 -23
- package/components/popup.svelte +68 -57
- package/components/preloader.d.ts +10 -5
- package/components/preloader.svelte +30 -31
- package/components/progressbar.d.ts +11 -6
- package/components/progressbar.svelte +13 -17
- package/components/radio.d.ts +19 -12
- package/components/radio.svelte +19 -23
- package/components/range.d.ts +35 -27
- package/components/range.svelte +47 -44
- package/components/routable-modals.d.ts +9 -4
- package/components/routable-modals.svelte +9 -8
- package/components/router-context-provider.d.ts +11 -6
- package/components/router-context-provider.svelte +2 -4
- package/components/searchbar.d.ts +60 -43
- package/components/searchbar.svelte +115 -104
- package/components/segmented.d.ts +21 -15
- package/components/segmented.svelte +38 -35
- package/components/sheet.d.ts +47 -30
- package/components/sheet.svelte +94 -76
- package/components/snippet-render.d.ts +24 -0
- package/components/snippet-render.svelte +9 -0
- package/components/stepper.d.ts +53 -43
- package/components/stepper.svelte +83 -79
- package/components/subnavbar.d.ts +13 -8
- package/components/subnavbar.svelte +12 -20
- package/components/swipeout-actions.d.ts +14 -8
- package/components/swipeout-actions.svelte +14 -13
- package/components/swipeout-button.d.ts +20 -13
- package/components/swipeout-button.svelte +31 -31
- package/components/tab.d.ts +14 -8
- package/components/tab.svelte +20 -28
- package/components/tabs.d.ts +15 -9
- package/components/tabs.svelte +27 -26
- package/components/text-editor.d.ts +44 -24
- package/components/text-editor.svelte +56 -41
- package/components/toggle.d.ts +22 -15
- package/components/toggle.svelte +33 -37
- package/components/toolbar-pane.d.ts +24 -0
- package/components/toolbar-pane.svelte +14 -0
- package/components/toolbar.d.ts +30 -20
- package/components/toolbar.svelte +61 -53
- package/components/treeview-item.d.ts +36 -17
- package/components/treeview-item.svelte +101 -81
- package/components/treeview.d.ts +11 -5
- package/components/treeview.svelte +4 -6
- package/components/use-icon.d.ts +9 -4
- package/components/use-icon.svelte +1 -1
- package/components/view.d.ts +76 -65
- package/components/view.svelte +66 -48
- package/components/views.d.ts +11 -5
- package/components/views.svelte +12 -15
- package/framework7-svelte.d.ts +3 -1
- package/framework7-svelte.js +6 -4
- package/package.json +2 -2
- package/shared/components-router.js +28 -25
- package/shared/f7.js +1 -7
- package/shared/mixins.js +5 -5
- package/shared/modal-state-classes.js +4 -5
- package/shared/plugin.js +1 -4
- package/shared/rest-props.js +1 -4
- package/shared/use-icon.js +2 -5
- package/shared/use-store.js +9 -9
- package/shared/use-tab.js +3 -3
- package/shared/use-tooltip.js +3 -4
- package/shared/utils.js +2 -8
- package/shared/get-reactive-context.js +0 -16
- package/shared/list-context.js +0 -10
- package/shared/router-context.js +0 -8
- package/shared/set-reactive-context.js +0 -26
package/components/page.d.ts
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
|
|
2
|
-
import { SvelteComponent } from 'svelte';
|
|
2
|
+
import { SvelteComponent, Snippet } from 'svelte';
|
|
3
3
|
import { HTMLAttributes } from 'svelte/elements';
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
interface
|
|
7
|
-
name
|
|
8
|
-
withSubnavbar
|
|
9
|
-
subnavbar
|
|
10
|
-
withNavbarLarge
|
|
11
|
-
navbarLarge
|
|
12
|
-
noNavbar
|
|
13
|
-
noToolbar
|
|
14
|
-
tabs
|
|
15
|
-
pageContent
|
|
16
|
-
noSwipeback
|
|
17
|
-
ptr
|
|
18
|
-
ptrDistance
|
|
19
|
-
ptrPreloader
|
|
20
|
-
ptrBottom
|
|
21
|
-
ptrMousewheel
|
|
22
|
-
infinite
|
|
23
|
-
infiniteTop
|
|
24
|
-
infiniteDistance
|
|
25
|
-
infinitePreloader
|
|
26
|
-
hideBarsOnScroll
|
|
27
|
-
hideNavbarOnScroll
|
|
28
|
-
hideToolbarOnScroll
|
|
29
|
-
messagesContent
|
|
30
|
-
loginScreen
|
|
6
|
+
interface Props {
|
|
7
|
+
name?: string;
|
|
8
|
+
withSubnavbar?: boolean;
|
|
9
|
+
subnavbar?: boolean;
|
|
10
|
+
withNavbarLarge?: boolean;
|
|
11
|
+
navbarLarge?: boolean;
|
|
12
|
+
noNavbar?: boolean;
|
|
13
|
+
noToolbar?: boolean;
|
|
14
|
+
tabs?: boolean;
|
|
15
|
+
pageContent?: boolean;
|
|
16
|
+
noSwipeback?: boolean;
|
|
17
|
+
ptr?: boolean;
|
|
18
|
+
ptrDistance?: number;
|
|
19
|
+
ptrPreloader?: boolean;
|
|
20
|
+
ptrBottom?: boolean;
|
|
21
|
+
ptrMousewheel?: boolean;
|
|
22
|
+
infinite?: boolean;
|
|
23
|
+
infiniteTop?: boolean;
|
|
24
|
+
infiniteDistance?: number;
|
|
25
|
+
infinitePreloader?: boolean;
|
|
26
|
+
hideBarsOnScroll?: boolean;
|
|
27
|
+
hideNavbarOnScroll?: boolean;
|
|
28
|
+
hideToolbarOnScroll?: boolean;
|
|
29
|
+
messagesContent?: boolean;
|
|
30
|
+
loginScreen?: boolean;
|
|
31
31
|
color?: string;
|
|
32
32
|
colorTheme?: string;
|
|
33
33
|
textColor?: string;
|
|
@@ -35,31 +35,56 @@ interface PageProps {
|
|
|
35
35
|
borderColor?: string;
|
|
36
36
|
rippleColor?: string;
|
|
37
37
|
dark?: boolean;
|
|
38
|
-
onPtrPullStart
|
|
39
|
-
onPtrPullMove
|
|
40
|
-
onPtrPullEnd
|
|
41
|
-
onPtrRefresh
|
|
42
|
-
onPtrDone
|
|
43
|
-
onInfinite
|
|
44
|
-
onPageMounted
|
|
45
|
-
onPageInit
|
|
46
|
-
onPageReinit
|
|
47
|
-
onPageBeforeIn
|
|
48
|
-
onPageBeforeOut
|
|
49
|
-
onPageAfterOut
|
|
50
|
-
onPageAfterIn
|
|
51
|
-
onPageBeforeRemove
|
|
52
|
-
onPageBeforeUnmount
|
|
53
|
-
onPageTabShow
|
|
54
|
-
onPageTabHide
|
|
38
|
+
onPtrPullStart?: (...args: any[]) => void;
|
|
39
|
+
onPtrPullMove?: (...args: any[]) => void;
|
|
40
|
+
onPtrPullEnd?: (...args: any[]) => void;
|
|
41
|
+
onPtrRefresh?: (...args: any[]) => void;
|
|
42
|
+
onPtrDone?: (...args: any[]) => void;
|
|
43
|
+
onInfinite?: (...args: any[]) => void;
|
|
44
|
+
onPageMounted?: (page?: any) => void;
|
|
45
|
+
onPageInit?: (page?: any) => void;
|
|
46
|
+
onPageReinit?: (page?: any) => void;
|
|
47
|
+
onPageBeforeIn?: (page?: any) => void;
|
|
48
|
+
onPageBeforeOut?: (page?: any) => void;
|
|
49
|
+
onPageAfterOut?: (page?: any) => void;
|
|
50
|
+
onPageAfterIn?: (page?: any) => void;
|
|
51
|
+
onPageBeforeRemove?: (page?: any) => void;
|
|
52
|
+
onPageBeforeUnmount?: (page?: any) => void;
|
|
53
|
+
onPageTabShow?: (...args: any[]) => void;
|
|
54
|
+
onPageTabHide?: (...args: any[]) => void;
|
|
55
|
+
fixedContent?: Snippet;
|
|
56
|
+
staticContent?: Snippet;
|
|
57
|
+
children?: Snippet;
|
|
58
|
+
onptrpullstart?: () => void;
|
|
59
|
+
onptrpullmove?: () => void;
|
|
60
|
+
onptrpullend?: () => void;
|
|
61
|
+
onptrrefresh?: () => void;
|
|
62
|
+
onptrdone?: () => void;
|
|
63
|
+
oninfinite?: () => void;
|
|
64
|
+
onpagemounted?: () => void;
|
|
65
|
+
onpageinit?: () => void;
|
|
66
|
+
onpagereinit?: () => void;
|
|
67
|
+
onpagebeforein?: () => void;
|
|
68
|
+
onpagebeforeout?: () => void;
|
|
69
|
+
onpageafterout?: () => void;
|
|
70
|
+
onpageafterin?: () => void;
|
|
71
|
+
onpagebeforeremove?: () => void;
|
|
72
|
+
onpagebeforeunmount?: () => void;
|
|
73
|
+
ontabshow?: () => void;
|
|
74
|
+
ontabhide?: () => void;
|
|
55
75
|
}
|
|
56
76
|
|
|
77
|
+
interface PageProps {}
|
|
78
|
+
interface PageProps extends Props {}
|
|
79
|
+
|
|
80
|
+
interface PageEvents extends Record<'',{}>{}
|
|
81
|
+
|
|
57
82
|
|
|
58
83
|
|
|
59
84
|
declare class Page extends SvelteComponent<
|
|
60
|
-
PageProps
|
|
61
|
-
|
|
62
|
-
{
|
|
85
|
+
PageProps,
|
|
86
|
+
PageEvents,
|
|
87
|
+
{ }
|
|
63
88
|
> {}
|
|
64
89
|
|
|
65
90
|
export { PageProps };
|
package/components/page.svelte
CHANGED
|
@@ -1,43 +1,42 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import { onMount,
|
|
3
|
-
import { restProps } from '../shared/rest-props.js';
|
|
2
|
+
import { onMount, onDestroy } from 'svelte';
|
|
4
3
|
import { colorClasses } from '../shared/mixins.js';
|
|
5
|
-
import { classNames
|
|
4
|
+
import { classNames } from '../shared/utils.js';
|
|
6
5
|
import { app, f7ready } from '../shared/f7.js';
|
|
7
6
|
|
|
8
7
|
import PageContent from './page-content.svelte';
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
9
|
+
let {
|
|
10
|
+
class: className,
|
|
11
|
+
name = undefined,
|
|
12
|
+
withSubnavbar = undefined,
|
|
13
|
+
subnavbar = undefined,
|
|
14
|
+
withNavbarLarge = undefined,
|
|
15
|
+
navbarLarge = undefined,
|
|
16
|
+
noNavbar = undefined,
|
|
17
|
+
noToolbar = undefined,
|
|
18
|
+
tabs = undefined,
|
|
19
|
+
pageContent = true,
|
|
20
|
+
noSwipeback = undefined,
|
|
21
|
+
ptr = undefined,
|
|
22
|
+
ptrDistance = undefined,
|
|
23
|
+
ptrPreloader = true,
|
|
24
|
+
ptrBottom = undefined,
|
|
25
|
+
ptrMousewheel = undefined,
|
|
26
|
+
infinite = undefined,
|
|
27
|
+
infiniteTop = undefined,
|
|
28
|
+
infiniteDistance = undefined,
|
|
29
|
+
infinitePreloader = true,
|
|
30
|
+
hideBarsOnScroll = undefined,
|
|
31
|
+
hideNavbarOnScroll = undefined,
|
|
32
|
+
hideToolbarOnScroll = undefined,
|
|
33
|
+
messagesContent = undefined,
|
|
34
|
+
loginScreen = undefined,
|
|
35
|
+
children,
|
|
36
|
+
fixedContent,
|
|
37
|
+
staticContent,
|
|
38
|
+
...restProps
|
|
39
|
+
} = $props();
|
|
41
40
|
|
|
42
41
|
// State
|
|
43
42
|
let el;
|
|
@@ -50,59 +49,70 @@
|
|
|
50
49
|
let routerPageRoleDetailRoot = false;
|
|
51
50
|
let routerPageMasterStack = false;
|
|
52
51
|
|
|
53
|
-
|
|
54
|
-
typeof subnavbar === 'undefined' && typeof withSubnavbar === 'undefined' ? hasSubnavbar : false
|
|
52
|
+
const forceSubnavbar = $derived(
|
|
53
|
+
typeof subnavbar === 'undefined' && typeof withSubnavbar === 'undefined' ? hasSubnavbar : false,
|
|
54
|
+
);
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
const forceNavbarLarge = $derived(
|
|
57
57
|
typeof navbarLarge === 'undefined' && typeof withNavbarLarge === 'undefined'
|
|
58
58
|
? hasNavbarLarge
|
|
59
|
-
: false
|
|
59
|
+
: false,
|
|
60
|
+
);
|
|
60
61
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
62
|
+
const classes = $derived(
|
|
63
|
+
classNames(
|
|
64
|
+
className,
|
|
65
|
+
'page',
|
|
66
|
+
routerPositionClass,
|
|
67
|
+
{
|
|
68
|
+
tabs,
|
|
69
|
+
'page-with-subnavbar': subnavbar || withSubnavbar || forceSubnavbar,
|
|
70
|
+
'page-with-navbar-large': navbarLarge || withNavbarLarge || forceNavbarLarge,
|
|
71
|
+
'no-navbar': noNavbar,
|
|
72
|
+
'no-toolbar': noToolbar,
|
|
73
|
+
'no-swipeback': noSwipeback,
|
|
74
|
+
'page-master': routerPageRole === 'master',
|
|
75
|
+
'page-master-detail': routerPageRole === 'detail',
|
|
76
|
+
'page-master-detail-root': routerPageRoleDetailRoot === true,
|
|
77
|
+
'page-master-stacked': routerPageMasterStack === true,
|
|
78
|
+
'page-with-navbar-large-collapsed': hasNavbarLargeCollapsed === true,
|
|
79
|
+
'page-with-card-opened': hasCardExpandableOpened === true,
|
|
80
|
+
'login-screen-page': loginScreen,
|
|
81
|
+
},
|
|
82
|
+
colorClasses(restProps),
|
|
83
|
+
),
|
|
81
84
|
);
|
|
82
85
|
|
|
83
86
|
// Handlers
|
|
84
87
|
function onPtrPullStart() {
|
|
85
|
-
|
|
88
|
+
restProps.onPtrPullStart?.();
|
|
89
|
+
restProps.onptrpullstart?.();
|
|
86
90
|
}
|
|
87
91
|
function onPtrPullMove() {
|
|
88
|
-
|
|
92
|
+
restProps.onPtrPullMove?.();
|
|
93
|
+
restProps.onptrpullmove?.();
|
|
89
94
|
}
|
|
90
95
|
function onPtrPullEnd() {
|
|
91
|
-
|
|
96
|
+
restProps.onPtrPullEnd?.();
|
|
97
|
+
restProps.onptrpullend?.();
|
|
92
98
|
}
|
|
93
99
|
function onPtrRefresh(done) {
|
|
94
|
-
|
|
100
|
+
restProps.onPtrRefresh?.(done);
|
|
101
|
+
restProps.onptrrefresh?.(done);
|
|
95
102
|
}
|
|
96
103
|
function onPtrDone() {
|
|
97
|
-
|
|
104
|
+
restProps.onPtrDone?.();
|
|
105
|
+
restProps.onptrdone?.();
|
|
98
106
|
}
|
|
99
107
|
function onInfinite() {
|
|
100
|
-
|
|
108
|
+
restProps.onInfinite?.();
|
|
109
|
+
restProps.oninfinite?.();
|
|
101
110
|
}
|
|
102
111
|
// Main Page Events
|
|
103
112
|
function onPageMounted(page) {
|
|
104
113
|
if (el !== page.el) return;
|
|
105
|
-
|
|
114
|
+
restProps.onPageMounted?.(page);
|
|
115
|
+
restProps.onpagemounted?.(page);
|
|
106
116
|
}
|
|
107
117
|
function onPageInit(page) {
|
|
108
118
|
if (el !== page.el) return;
|
|
@@ -124,11 +134,13 @@
|
|
|
124
134
|
}
|
|
125
135
|
}
|
|
126
136
|
|
|
127
|
-
|
|
137
|
+
restProps.onPageInit?.(page);
|
|
138
|
+
restProps.onpageinit?.(page);
|
|
128
139
|
}
|
|
129
140
|
function onPageReinit(page) {
|
|
130
141
|
if (el !== page.el) return;
|
|
131
|
-
|
|
142
|
+
restProps.onPageReinit?.(page);
|
|
143
|
+
restProps.onpagereinit?.(page);
|
|
132
144
|
}
|
|
133
145
|
function onPageBeforeIn(page) {
|
|
134
146
|
if (el !== page.el) return;
|
|
@@ -140,11 +152,13 @@
|
|
|
140
152
|
routerPositionClass = 'page-previous';
|
|
141
153
|
}
|
|
142
154
|
}
|
|
143
|
-
|
|
155
|
+
restProps.onPageBeforeIn?.(page);
|
|
156
|
+
restProps.onpagebeforein?.(page);
|
|
144
157
|
}
|
|
145
158
|
function onPageBeforeOut(page) {
|
|
146
159
|
if (el !== page.el) return;
|
|
147
|
-
|
|
160
|
+
restProps.onPageBeforeOut?.(page);
|
|
161
|
+
restProps.onpagebeforeout?.(page);
|
|
148
162
|
}
|
|
149
163
|
function onPageAfterOut(page) {
|
|
150
164
|
if (el !== page.el) return;
|
|
@@ -154,12 +168,14 @@
|
|
|
154
168
|
if (page.to === 'previous') {
|
|
155
169
|
routerPositionClass = 'page-previous';
|
|
156
170
|
}
|
|
157
|
-
|
|
171
|
+
restProps.onPageAfterOut?.(page);
|
|
172
|
+
restProps.onpageafterout?.(page);
|
|
158
173
|
}
|
|
159
174
|
function onPageAfterIn(page) {
|
|
160
175
|
if (el !== page.el) return;
|
|
161
176
|
routerPositionClass = 'page-current';
|
|
162
|
-
|
|
177
|
+
restProps.onPageAfterIn?.(page);
|
|
178
|
+
restProps.onpageafterin?.(page);
|
|
163
179
|
}
|
|
164
180
|
function onPageBeforeRemove(page) {
|
|
165
181
|
if (el !== page.el) return;
|
|
@@ -171,11 +187,13 @@
|
|
|
171
187
|
) {
|
|
172
188
|
page.$el.prepend(page.$navbarEl);
|
|
173
189
|
}
|
|
174
|
-
|
|
190
|
+
restProps.onPageBeforeRemove?.(page);
|
|
191
|
+
restProps.onpagebeforeremove?.(page);
|
|
175
192
|
}
|
|
176
193
|
function onPageBeforeUnmount(page) {
|
|
177
194
|
if (el !== page.el) return;
|
|
178
|
-
|
|
195
|
+
restProps.onPageBeforeUnmount?.(page);
|
|
196
|
+
restProps.onpagebeforeunmount?.(page);
|
|
179
197
|
}
|
|
180
198
|
|
|
181
199
|
function onPagePosition(pageEl, position) {
|
|
@@ -214,11 +232,13 @@
|
|
|
214
232
|
|
|
215
233
|
function onPageTabShow(pageEl) {
|
|
216
234
|
if (el !== pageEl) return;
|
|
217
|
-
|
|
235
|
+
restProps.onPageTabShow?.();
|
|
236
|
+
restProps.ontabshow?.();
|
|
218
237
|
}
|
|
219
238
|
function onPageTabHide(pageEl) {
|
|
220
239
|
if (el !== pageEl) return;
|
|
221
|
-
|
|
240
|
+
restProps.onPageTabHide?.();
|
|
241
|
+
restProps.ontabhide?.();
|
|
222
242
|
}
|
|
223
243
|
|
|
224
244
|
// Mount/destroy
|
|
@@ -279,7 +299,7 @@
|
|
|
279
299
|
mountPage();
|
|
280
300
|
});
|
|
281
301
|
});
|
|
282
|
-
|
|
302
|
+
$effect(() => {
|
|
283
303
|
if (el && app.f7) {
|
|
284
304
|
const dom7 = app.f7.$;
|
|
285
305
|
const fixedEls = dom7(el).children('.page-content').children('[data-f7-slot="fixed"]');
|
|
@@ -296,8 +316,8 @@
|
|
|
296
316
|
});
|
|
297
317
|
</script>
|
|
298
318
|
|
|
299
|
-
<div bind:this={el} class={classes} data-name={name} {...restProps
|
|
300
|
-
|
|
319
|
+
<div bind:this={el} class={classes} data-name={name} {...restProps}>
|
|
320
|
+
{@render fixedContent?.()}
|
|
301
321
|
{#if pageContent}
|
|
302
322
|
<PageContent
|
|
303
323
|
{ptr}
|
|
@@ -321,11 +341,11 @@
|
|
|
321
341
|
{onPtrDone}
|
|
322
342
|
{onInfinite}
|
|
323
343
|
>
|
|
324
|
-
|
|
325
|
-
|
|
344
|
+
{@render staticContent?.()}
|
|
345
|
+
{@render children?.()}
|
|
326
346
|
</PageContent>
|
|
327
347
|
{:else}
|
|
328
|
-
|
|
329
|
-
|
|
348
|
+
{@render staticContent?.()}
|
|
349
|
+
{@render children?.()}
|
|
330
350
|
{/if}
|
|
331
351
|
</div>
|
package/components/panel.d.ts
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
|
|
2
|
-
import { SvelteComponent } from 'svelte';
|
|
2
|
+
import { SvelteComponent, Snippet } from 'svelte';
|
|
3
3
|
import { HTMLAttributes } from 'svelte/elements';
|
|
4
4
|
|
|
5
5
|
import { Panel } from 'framework7/types';
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
interface
|
|
9
|
-
side
|
|
10
|
-
effect
|
|
11
|
-
cover
|
|
12
|
-
reveal
|
|
13
|
-
push
|
|
14
|
-
floating
|
|
15
|
-
left
|
|
16
|
-
right
|
|
17
|
-
opened
|
|
18
|
-
resizable
|
|
19
|
-
backdrop
|
|
20
|
-
backdropEl
|
|
21
|
-
visibleBreakpoint
|
|
22
|
-
collapsedBreakpoint
|
|
23
|
-
swipe
|
|
24
|
-
swipeNoFollow
|
|
25
|
-
swipeOnlyClose
|
|
26
|
-
swipeActiveArea
|
|
27
|
-
swipeThreshold
|
|
28
|
-
containerEl
|
|
8
|
+
interface Props {
|
|
9
|
+
side?: string;
|
|
10
|
+
effect?: string;
|
|
11
|
+
cover?: boolean;
|
|
12
|
+
reveal?: boolean;
|
|
13
|
+
push?: boolean;
|
|
14
|
+
floating?: boolean;
|
|
15
|
+
left?: boolean;
|
|
16
|
+
right?: boolean;
|
|
17
|
+
opened?: boolean;
|
|
18
|
+
resizable?: boolean;
|
|
19
|
+
backdrop?: boolean;
|
|
20
|
+
backdropEl?: string;
|
|
21
|
+
visibleBreakpoint?: number;
|
|
22
|
+
collapsedBreakpoint?: number;
|
|
23
|
+
swipe?: boolean;
|
|
24
|
+
swipeNoFollow?: boolean;
|
|
25
|
+
swipeOnlyClose?: boolean;
|
|
26
|
+
swipeActiveArea?: number;
|
|
27
|
+
swipeThreshold?: number;
|
|
28
|
+
containerEl?: string | object;
|
|
29
29
|
closeByBackdropClick?: boolean;
|
|
30
30
|
color?: string;
|
|
31
31
|
colorTheme?: string;
|
|
@@ -34,24 +34,40 @@ interface PanelProps {
|
|
|
34
34
|
borderColor?: string;
|
|
35
35
|
rippleColor?: string;
|
|
36
36
|
dark?: boolean;
|
|
37
|
-
onPanelOpen
|
|
38
|
-
onPanelOpened
|
|
39
|
-
onPanelClose
|
|
40
|
-
onPanelClosed
|
|
41
|
-
onPanelBackdropClick
|
|
42
|
-
onPanelSwipe
|
|
43
|
-
onPanelSwipeOpen
|
|
44
|
-
onPanelBreakpoint
|
|
45
|
-
onPanelCollapsedBreakpoint
|
|
46
|
-
onPanelResize
|
|
37
|
+
onPanelOpen?: (event?: any) => void;
|
|
38
|
+
onPanelOpened?: (event?: any) => void;
|
|
39
|
+
onPanelClose?: (event?: any) => void;
|
|
40
|
+
onPanelClosed?: (event?: any) => void;
|
|
41
|
+
onPanelBackdropClick?: (event?: any) => void;
|
|
42
|
+
onPanelSwipe?: (event?: any) => void;
|
|
43
|
+
onPanelSwipeOpen?: (event?: any) => void;
|
|
44
|
+
onPanelBreakpoint?: (event?: any) => void;
|
|
45
|
+
onPanelCollapsedBreakpoint?: (event?: any) => void;
|
|
46
|
+
onPanelResize?: (...args: any[]) => void;
|
|
47
|
+
children?: Snippet;
|
|
48
|
+
onpanelopen?: () => void;
|
|
49
|
+
onpanelopened?: () => void;
|
|
50
|
+
onpanelclose?: () => void;
|
|
51
|
+
onpanelclosed?: () => void;
|
|
52
|
+
onpanelbackdropclick?: () => void;
|
|
53
|
+
onpanelswipe?: () => void;
|
|
54
|
+
onpanelswipeopen?: () => void;
|
|
55
|
+
onpanelbreakpoint?: () => void;
|
|
56
|
+
onpanelcollapsedbreakpoint?: () => void;
|
|
57
|
+
onpanelresize?: () => void;
|
|
47
58
|
}
|
|
48
59
|
|
|
60
|
+
interface PanelProps {}
|
|
61
|
+
interface PanelProps extends Props {}
|
|
62
|
+
|
|
63
|
+
interface PanelEvents extends Record<'',{}>{}
|
|
64
|
+
|
|
49
65
|
|
|
50
66
|
|
|
51
67
|
declare class Panel extends SvelteComponent<
|
|
52
|
-
PanelProps
|
|
53
|
-
|
|
54
|
-
{
|
|
68
|
+
PanelProps,
|
|
69
|
+
PanelEvents,
|
|
70
|
+
{ }
|
|
55
71
|
> {}
|
|
56
72
|
|
|
57
73
|
export { PanelProps };
|