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/popover.d.ts
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
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 { Popover } from 'framework7/types';
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
interface
|
|
9
|
-
opened
|
|
10
|
-
animate
|
|
11
|
-
targetEl
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
containerEl ?: string | object;
|
|
8
|
+
interface Props {
|
|
9
|
+
opened?: boolean;
|
|
10
|
+
animate?: boolean;
|
|
11
|
+
targetEl?: string | object;
|
|
12
|
+
backdrop?: boolean;
|
|
13
|
+
backdropEl?: string | object;
|
|
14
|
+
closeByBackdropClick?: boolean;
|
|
15
|
+
closeByOutsideClick?: boolean;
|
|
16
|
+
closeOnEscape?: boolean;
|
|
17
|
+
containerEl?: string | object;
|
|
19
18
|
verticalPosition?: string;
|
|
20
19
|
color?: string;
|
|
21
20
|
colorTheme?: string;
|
|
@@ -24,18 +23,28 @@ interface PopoverProps {
|
|
|
24
23
|
borderColor?: string;
|
|
25
24
|
rippleColor?: string;
|
|
26
25
|
dark?: boolean;
|
|
27
|
-
onPopoverOpen
|
|
28
|
-
onPopoverOpened
|
|
29
|
-
onPopoverClose
|
|
30
|
-
onPopoverClosed
|
|
26
|
+
onPopoverOpen?: (instance?: Popover.Popover) => void;
|
|
27
|
+
onPopoverOpened?: (instance?: Popover.Popover) => void;
|
|
28
|
+
onPopoverClose?: (instance?: Popover.Popover) => void;
|
|
29
|
+
onPopoverClosed?: (instance?: Popover.Popover) => void;
|
|
30
|
+
children?: Snippet;
|
|
31
|
+
onpopoveropen?: () => void;
|
|
32
|
+
onpopoveropened?: () => void;
|
|
33
|
+
onpopoverclose?: () => void;
|
|
34
|
+
onpopoverclosed?: () => void;
|
|
31
35
|
}
|
|
32
36
|
|
|
37
|
+
interface PopoverProps {}
|
|
38
|
+
interface PopoverProps extends Props {}
|
|
39
|
+
|
|
40
|
+
interface PopoverEvents extends Record<'',{}>{}
|
|
41
|
+
|
|
33
42
|
|
|
34
43
|
|
|
35
44
|
declare class Popover extends SvelteComponent<
|
|
36
|
-
PopoverProps
|
|
37
|
-
|
|
38
|
-
{
|
|
45
|
+
PopoverProps,
|
|
46
|
+
PopoverEvents,
|
|
47
|
+
{ }
|
|
39
48
|
> {}
|
|
40
49
|
|
|
41
50
|
export { PopoverProps };
|
|
@@ -1,66 +1,67 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import {
|
|
2
|
+
import { onMount, onDestroy } from 'svelte';
|
|
3
3
|
import { colorClasses } from '../shared/mixins.js';
|
|
4
|
-
import { classNames
|
|
5
|
-
import { restProps } from '../shared/rest-props.js';
|
|
4
|
+
import { classNames } from '../shared/utils.js';
|
|
6
5
|
import { app, f7ready } from '../shared/f7.js';
|
|
7
6
|
import { modalStateClasses } from '../shared/modal-state-classes.js';
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
let {
|
|
9
|
+
class: className,
|
|
10
|
+
style = '',
|
|
11
|
+
opened = undefined,
|
|
12
|
+
animate = undefined,
|
|
13
|
+
targetEl = undefined,
|
|
14
|
+
backdrop = undefined,
|
|
15
|
+
backdropEl = undefined,
|
|
16
|
+
closeByBackdropClick = undefined,
|
|
17
|
+
closeByOutsideClick = undefined,
|
|
18
|
+
closeOnEscape = undefined,
|
|
19
|
+
containerEl = undefined,
|
|
20
|
+
verticalPosition = undefined,
|
|
21
|
+
children,
|
|
22
|
+
...restProps
|
|
23
|
+
} = $props();
|
|
10
24
|
|
|
11
|
-
let
|
|
12
|
-
export { className as class };
|
|
13
|
-
|
|
14
|
-
export let style = '';
|
|
15
|
-
export let opened = undefined;
|
|
16
|
-
export let animate = undefined;
|
|
17
|
-
export let targetEl = undefined;
|
|
18
|
-
export let arrow = undefined;
|
|
19
|
-
export let backdrop = undefined;
|
|
20
|
-
export let backdropEl = undefined;
|
|
21
|
-
export let closeByBackdropClick = undefined;
|
|
22
|
-
export let closeByOutsideClick = undefined;
|
|
23
|
-
export let closeOnEscape = undefined;
|
|
24
|
-
export let containerEl = undefined;
|
|
25
|
-
export let verticalPosition = undefined;
|
|
26
|
-
|
|
27
|
-
let el;
|
|
25
|
+
let el = $state(null);
|
|
28
26
|
let f7Popover;
|
|
29
27
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
isClosing: false,
|
|
33
|
-
};
|
|
28
|
+
let isOpened = $state(opened);
|
|
29
|
+
let isClosing = $state(false);
|
|
34
30
|
|
|
35
31
|
export function instance() {
|
|
36
32
|
return f7Popover;
|
|
37
33
|
}
|
|
38
34
|
|
|
39
|
-
|
|
35
|
+
const classes = $derived(
|
|
36
|
+
classNames(
|
|
37
|
+
className,
|
|
38
|
+
'popover',
|
|
39
|
+
modalStateClasses({ isOpened, isClosing }),
|
|
40
|
+
colorClasses(restProps),
|
|
41
|
+
),
|
|
42
|
+
);
|
|
40
43
|
|
|
41
44
|
function onOpen(instance) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
emit('popoverOpen', [instance]);
|
|
45
|
+
isOpened = true;
|
|
46
|
+
isClosing = false;
|
|
47
|
+
restProps.onPopoverOpen?.(instance);
|
|
48
|
+
restProps.onpopoveropen?.(instance);
|
|
47
49
|
opened = true;
|
|
48
50
|
}
|
|
49
51
|
function onOpened(instance) {
|
|
50
|
-
|
|
52
|
+
restProps.onPopoverOpened?.(instance);
|
|
53
|
+
restProps.onpopoveropened?.(instance);
|
|
51
54
|
}
|
|
52
55
|
function onClose(instance) {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
emit('popoverClose', [instance]);
|
|
56
|
+
isOpened = false;
|
|
57
|
+
isClosing = true;
|
|
58
|
+
restProps.onPopoverClose?.(instance);
|
|
59
|
+
restProps.onpopoverclose?.(instance);
|
|
58
60
|
}
|
|
59
61
|
function onClosed(instance) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
emit('popoverClosed', [instance]);
|
|
62
|
+
isClosing = false;
|
|
63
|
+
restProps.onPopoverClosed?.(instance);
|
|
64
|
+
restProps.onpopoverclosed?.(instance);
|
|
64
65
|
opened = false;
|
|
65
66
|
}
|
|
66
67
|
|
|
@@ -75,7 +76,7 @@
|
|
|
75
76
|
else f7Popover.close();
|
|
76
77
|
}
|
|
77
78
|
|
|
78
|
-
|
|
79
|
+
$effect(() => watchOpened(opened));
|
|
79
80
|
|
|
80
81
|
onMount(() => {
|
|
81
82
|
const params = {
|
|
@@ -95,7 +96,6 @@
|
|
|
95
96
|
if (typeof closeByOutsideClick !== 'undefined')
|
|
96
97
|
params.closeByOutsideClick = closeByOutsideClick;
|
|
97
98
|
if (typeof closeOnEscape !== 'undefined') params.closeOnEscape = closeOnEscape;
|
|
98
|
-
if (typeof arrow !== 'undefined') params.arrow = arrow;
|
|
99
99
|
if (typeof backdrop !== 'undefined') params.backdrop = backdrop;
|
|
100
100
|
if (typeof backdropEl !== 'undefined') params.backdropEl = backdropEl;
|
|
101
101
|
if (typeof containerEl !== 'undefined') params.containerEl = containerEl;
|
|
@@ -115,11 +115,8 @@
|
|
|
115
115
|
});
|
|
116
116
|
</script>
|
|
117
117
|
|
|
118
|
-
<div class={classes} bind:this={el} {style} {...restProps
|
|
119
|
-
{#if arrow !== false}
|
|
120
|
-
<div class="popover-arrow" />
|
|
121
|
-
{/if}
|
|
118
|
+
<div class={classes} bind:this={el} {style} {...restProps}>
|
|
122
119
|
<div class="popover-inner">
|
|
123
|
-
|
|
120
|
+
{@render children?.(f7Popover)}
|
|
124
121
|
</div>
|
|
125
122
|
</div>
|
package/components/popup.d.ts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
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 { Popup } from 'framework7/types';
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
interface
|
|
9
|
-
tabletFullscreen
|
|
10
|
-
opened
|
|
11
|
-
animate
|
|
12
|
-
backdrop
|
|
13
|
-
backdropEl
|
|
14
|
-
closeByBackdropClick
|
|
15
|
-
closeOnEscape
|
|
16
|
-
swipeToClose
|
|
17
|
-
swipeHandler
|
|
18
|
-
push
|
|
8
|
+
interface Props {
|
|
9
|
+
tabletFullscreen?: boolean;
|
|
10
|
+
opened?: boolean;
|
|
11
|
+
animate?: boolean;
|
|
12
|
+
backdrop?: boolean;
|
|
13
|
+
backdropEl?: string | object;
|
|
14
|
+
closeByBackdropClick?: boolean;
|
|
15
|
+
closeOnEscape?: boolean;
|
|
16
|
+
swipeToClose?: boolean | string;
|
|
17
|
+
swipeHandler?: string | object;
|
|
18
|
+
push?: boolean;
|
|
19
19
|
containerEl?: string | object;
|
|
20
20
|
color?: string;
|
|
21
21
|
colorTheme?: string;
|
|
@@ -24,22 +24,36 @@ interface PopupProps {
|
|
|
24
24
|
borderColor?: string;
|
|
25
25
|
rippleColor?: string;
|
|
26
26
|
dark?: boolean;
|
|
27
|
-
onPopupSwipeStart
|
|
28
|
-
onPopupSwipeMove
|
|
29
|
-
onPopupSwipeEnd
|
|
30
|
-
onPopupSwipeClose
|
|
31
|
-
onPopupOpen
|
|
32
|
-
onPopupOpened
|
|
33
|
-
onPopupClose
|
|
34
|
-
onPopupClosed
|
|
27
|
+
onPopupSwipeStart?: (instance?: Popup.Popup) => void;
|
|
28
|
+
onPopupSwipeMove?: (instance?: Popup.Popup) => void;
|
|
29
|
+
onPopupSwipeEnd?: (instance?: Popup.Popup) => void;
|
|
30
|
+
onPopupSwipeClose?: (instance?: Popup.Popup) => void;
|
|
31
|
+
onPopupOpen?: (instance?: Popup.Popup) => void;
|
|
32
|
+
onPopupOpened?: (instance?: Popup.Popup) => void;
|
|
33
|
+
onPopupClose?: (instance?: Popup.Popup) => void;
|
|
34
|
+
onPopupClosed?: (instance?: Popup.Popup) => void;
|
|
35
|
+
children?: Snippet;
|
|
36
|
+
onpopupswipestart?: () => void;
|
|
37
|
+
onpopupswipemove?: () => void;
|
|
38
|
+
onpopupswipeend?: () => void;
|
|
39
|
+
onpopupswipeclose?: () => void;
|
|
40
|
+
onpopupopen?: () => void;
|
|
41
|
+
onpopupopened?: () => void;
|
|
42
|
+
onpopupclose?: () => void;
|
|
43
|
+
onpopupclosed?: () => void;
|
|
35
44
|
}
|
|
36
45
|
|
|
46
|
+
interface PopupProps {}
|
|
47
|
+
interface PopupProps extends Props {}
|
|
48
|
+
|
|
49
|
+
interface PopupEvents extends Record<'',{}>{}
|
|
50
|
+
|
|
37
51
|
|
|
38
52
|
|
|
39
53
|
declare class Popup extends SvelteComponent<
|
|
40
|
-
PopupProps
|
|
41
|
-
|
|
42
|
-
{
|
|
54
|
+
PopupProps,
|
|
55
|
+
PopupEvents,
|
|
56
|
+
{ }
|
|
43
57
|
> {}
|
|
44
58
|
|
|
45
59
|
export { PopupProps };
|
package/components/popup.svelte
CHANGED
|
@@ -1,92 +1,97 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import {
|
|
2
|
+
import { onMount, onDestroy } from 'svelte';
|
|
3
3
|
import { colorClasses } from '../shared/mixins.js';
|
|
4
|
-
import { classNames
|
|
5
|
-
import { restProps } from '../shared/rest-props.js';
|
|
4
|
+
import { classNames } from '../shared/utils.js';
|
|
6
5
|
import { app, f7ready } from '../shared/f7.js';
|
|
7
6
|
import { modalStateClasses } from '../shared/modal-state-classes.js';
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
let {
|
|
9
|
+
class: className,
|
|
10
|
+
style = '',
|
|
11
|
+
tabletFullscreen = undefined,
|
|
12
|
+
opened = undefined,
|
|
13
|
+
animate = undefined,
|
|
14
|
+
backdrop = undefined,
|
|
15
|
+
backdropEl = undefined,
|
|
16
|
+
closeByBackdropClick = undefined,
|
|
17
|
+
closeOnEscape = undefined,
|
|
18
|
+
swipeToClose = false,
|
|
19
|
+
swipeHandler = undefined,
|
|
20
|
+
push = undefined,
|
|
21
|
+
containerEl = undefined,
|
|
22
|
+
children,
|
|
23
|
+
...restProps
|
|
24
|
+
} = $props();
|
|
10
25
|
|
|
11
|
-
let
|
|
12
|
-
export { className as class };
|
|
13
|
-
|
|
14
|
-
export let style = '';
|
|
15
|
-
export let tabletFullscreen = undefined;
|
|
16
|
-
export let opened = undefined;
|
|
17
|
-
export let animate = undefined;
|
|
18
|
-
export let backdrop = undefined;
|
|
19
|
-
export let backdropEl = undefined;
|
|
20
|
-
export let closeByBackdropClick = undefined;
|
|
21
|
-
export let closeOnEscape = undefined;
|
|
22
|
-
export let swipeToClose = false;
|
|
23
|
-
export let swipeHandler = undefined;
|
|
24
|
-
export let push = undefined;
|
|
25
|
-
export let containerEl = undefined;
|
|
26
|
-
|
|
27
|
-
let el;
|
|
26
|
+
let el = $state(null);
|
|
28
27
|
let f7Popup;
|
|
29
28
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
let isOpened = $state(opened);
|
|
30
|
+
let isClosing = $state(false);
|
|
31
|
+
let isPushIn = $state(false);
|
|
32
|
+
let isPushClosing = $state(false);
|
|
34
33
|
|
|
35
34
|
export function instance() {
|
|
36
35
|
return f7Popup;
|
|
37
36
|
}
|
|
38
37
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
38
|
+
const classes = $derived(
|
|
39
|
+
classNames(
|
|
40
|
+
className,
|
|
41
|
+
'popup',
|
|
42
|
+
{
|
|
43
|
+
'popup-tablet-fullscreen': tabletFullscreen,
|
|
44
|
+
'popup-push': push,
|
|
45
|
+
'popup-push-in': !isClosing && push && isPushIn,
|
|
46
|
+
'popup-push-closing': isClosing && push && isPushClosing,
|
|
47
|
+
},
|
|
48
|
+
modalStateClasses({ isOpened, isClosing }),
|
|
49
|
+
colorClasses(restProps),
|
|
50
|
+
),
|
|
48
51
|
);
|
|
49
52
|
|
|
50
53
|
function onSwipeStart(instance) {
|
|
51
|
-
|
|
54
|
+
restProps.onPopupSwipeStart?.(instance);
|
|
55
|
+
restProps.onpopupswipestart?.(instance);
|
|
52
56
|
}
|
|
53
57
|
function onSwipeMove(instance) {
|
|
54
|
-
|
|
58
|
+
restProps.onPopupSwipeMove?.(instance);
|
|
59
|
+
restProps.onpopupswipemove?.(instance);
|
|
55
60
|
}
|
|
56
61
|
function onSwipeEnd(instance) {
|
|
57
|
-
|
|
62
|
+
restProps.onPopupSwipeEnd?.(instance);
|
|
63
|
+
restProps.onpopupswipeend?.(instance);
|
|
58
64
|
}
|
|
59
65
|
function onSwipeClose(instance) {
|
|
60
|
-
|
|
66
|
+
restProps.onPopupSwipeClose?.(instance);
|
|
67
|
+
restProps.onpopupswipeclose?.(instance);
|
|
61
68
|
}
|
|
62
69
|
|
|
63
70
|
function onOpen(instance) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
emit('popupOpen', [instance]);
|
|
71
|
+
isOpened = true;
|
|
72
|
+
isClosing = false;
|
|
73
|
+
restProps.onPopupOpen?.(instance);
|
|
74
|
+
restProps.onpopupopen?.(instance);
|
|
69
75
|
opened = true;
|
|
70
76
|
}
|
|
71
77
|
function onOpened(instance) {
|
|
72
|
-
|
|
78
|
+
restProps.onPopupOpened?.(instance);
|
|
79
|
+
restProps.onpopupopened?.(instance);
|
|
73
80
|
}
|
|
74
81
|
function onClose(instance) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
emit('popupClose', [instance]);
|
|
82
|
+
isOpened = false;
|
|
83
|
+
isClosing = true;
|
|
84
|
+
restProps.onPopupClose?.(instance);
|
|
85
|
+
restProps.onpopupclose?.(instance);
|
|
80
86
|
}
|
|
81
87
|
function onClosed(instance) {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
emit('popupClosed', [instance]);
|
|
88
|
+
isClosing = false;
|
|
89
|
+
restProps.onPopupClosed?.(instance);
|
|
90
|
+
restProps.onpopupclosed?.(instance);
|
|
86
91
|
opened = false;
|
|
87
92
|
}
|
|
88
93
|
|
|
89
|
-
let initialWatched = false;
|
|
94
|
+
let initialWatched = $state(false);
|
|
90
95
|
function watchOpened(openedPassed) {
|
|
91
96
|
if (!initialWatched) {
|
|
92
97
|
initialWatched = true;
|
|
@@ -97,7 +102,7 @@
|
|
|
97
102
|
else f7Popup.close();
|
|
98
103
|
}
|
|
99
104
|
|
|
100
|
-
|
|
105
|
+
$effect(() => watchOpened(opened));
|
|
101
106
|
|
|
102
107
|
onMount(() => {
|
|
103
108
|
const popupParams = {
|
|
@@ -111,6 +116,12 @@
|
|
|
111
116
|
opened: onOpened,
|
|
112
117
|
close: onClose,
|
|
113
118
|
closed: onClosed,
|
|
119
|
+
pushIn(p, v) {
|
|
120
|
+
isPushIn = v;
|
|
121
|
+
},
|
|
122
|
+
pushClosing(p, v) {
|
|
123
|
+
isPushClosing = v;
|
|
124
|
+
},
|
|
114
125
|
},
|
|
115
126
|
};
|
|
116
127
|
if (typeof closeByBackdropClick !== 'undefined')
|
|
@@ -136,6 +147,6 @@
|
|
|
136
147
|
});
|
|
137
148
|
</script>
|
|
138
149
|
|
|
139
|
-
<div class={classes} bind:this={el} {style} {...restProps
|
|
140
|
-
|
|
150
|
+
<div class={classes} bind:this={el} {style} {...restProps}>
|
|
151
|
+
{@render children?.(f7Popup)}
|
|
141
152
|
</div>
|
|
@@ -1,10 +1,10 @@
|
|
|
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
|
-
size
|
|
6
|
+
interface Props {
|
|
7
|
+
size?: number | string;
|
|
8
8
|
color?: string;
|
|
9
9
|
colorTheme?: string;
|
|
10
10
|
textColor?: string;
|
|
@@ -14,11 +14,16 @@ interface PreloaderProps {
|
|
|
14
14
|
dark?: boolean;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
interface PreloaderProps {}
|
|
18
|
+
interface PreloaderProps extends Props {}
|
|
19
|
+
|
|
20
|
+
interface PreloaderEvents extends Record<'',{}>{}
|
|
21
|
+
|
|
17
22
|
|
|
18
23
|
|
|
19
24
|
declare class Preloader extends SvelteComponent<
|
|
20
|
-
PreloaderProps
|
|
21
|
-
|
|
25
|
+
PreloaderProps,
|
|
26
|
+
PreloaderEvents,
|
|
22
27
|
{ }
|
|
23
28
|
> {}
|
|
24
29
|
|
|
@@ -1,39 +1,38 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import { restProps } from '../shared/rest-props.js';
|
|
3
2
|
import { colorClasses } from '../shared/mixins.js';
|
|
4
3
|
import { classNames } from '../shared/utils.js';
|
|
5
4
|
import { useTheme } from '../shared/use-theme.js';
|
|
6
|
-
|
|
7
|
-
export let style = undefined;
|
|
8
|
-
|
|
9
|
-
let className = undefined;
|
|
10
|
-
export { className as class };
|
|
11
|
-
export let size = undefined;
|
|
5
|
+
let { class: className, size = undefined, style = undefined, children, ...restProps } = $props();
|
|
12
6
|
|
|
13
7
|
let theme = useTheme((t) => {
|
|
14
8
|
theme = t;
|
|
15
9
|
});
|
|
16
10
|
|
|
17
|
-
|
|
18
|
-
size && typeof size === 'string' && size.indexOf('px') >= 0 ? size.replace('px', '') : size
|
|
11
|
+
const sizeComputed = $derived(
|
|
12
|
+
size && typeof size === 'string' && size.indexOf('px') >= 0 ? size.replace('px', '') : size,
|
|
13
|
+
);
|
|
19
14
|
|
|
20
|
-
|
|
21
|
-
(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
15
|
+
const preloaderStyle = $derived(
|
|
16
|
+
(
|
|
17
|
+
(style || '') +
|
|
18
|
+
(sizeComputed
|
|
19
|
+
? `;width: ${sizeComputed}px; height: ${sizeComputed}px; --f7-preloader-size: ${sizeComputed}px`
|
|
20
|
+
: '')
|
|
21
|
+
).replace(';;', ';'),
|
|
22
|
+
);
|
|
26
23
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
24
|
+
const classes = $derived(
|
|
25
|
+
classNames(
|
|
26
|
+
className,
|
|
27
|
+
{
|
|
28
|
+
preloader: true,
|
|
29
|
+
},
|
|
30
|
+
colorClasses(restProps),
|
|
31
|
+
),
|
|
33
32
|
);
|
|
34
33
|
</script>
|
|
35
34
|
|
|
36
|
-
<span style={preloaderStyle} class={classes} {...restProps
|
|
35
|
+
<span style={preloaderStyle} class={classes} {...restProps}>
|
|
37
36
|
{#if theme && theme.md}
|
|
38
37
|
<span class="preloader-inner">
|
|
39
38
|
<svg viewBox="0 0 36 36">
|
|
@@ -42,14 +41,14 @@
|
|
|
42
41
|
</span>
|
|
43
42
|
{:else if theme && theme.ios}
|
|
44
43
|
<span class="preloader-inner">
|
|
45
|
-
<span class="preloader-inner-line"
|
|
46
|
-
<span class="preloader-inner-line"
|
|
47
|
-
<span class="preloader-inner-line"
|
|
48
|
-
<span class="preloader-inner-line"
|
|
49
|
-
<span class="preloader-inner-line"
|
|
50
|
-
<span class="preloader-inner-line"
|
|
51
|
-
<span class="preloader-inner-line"
|
|
52
|
-
<span class="preloader-inner-line"
|
|
44
|
+
<span class="preloader-inner-line"></span>
|
|
45
|
+
<span class="preloader-inner-line"></span>
|
|
46
|
+
<span class="preloader-inner-line"></span>
|
|
47
|
+
<span class="preloader-inner-line"></span>
|
|
48
|
+
<span class="preloader-inner-line"></span>
|
|
49
|
+
<span class="preloader-inner-line"></span>
|
|
50
|
+
<span class="preloader-inner-line"></span>
|
|
51
|
+
<span class="preloader-inner-line"></span>
|
|
53
52
|
</span>
|
|
54
|
-
{:else}<span class="preloader-inner"
|
|
53
|
+
{:else}<span class="preloader-inner"></span>{/if}
|
|
55
54
|
</span>
|
|
@@ -1,11 +1,11 @@
|
|
|
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
|
-
progress
|
|
8
|
-
infinite
|
|
6
|
+
interface Props {
|
|
7
|
+
progress?: number;
|
|
8
|
+
infinite?: boolean;
|
|
9
9
|
color?: string;
|
|
10
10
|
colorTheme?: string;
|
|
11
11
|
textColor?: string;
|
|
@@ -15,11 +15,16 @@ interface ProgressbarProps {
|
|
|
15
15
|
dark?: boolean;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
interface ProgressbarProps {}
|
|
19
|
+
interface ProgressbarProps extends Props {}
|
|
20
|
+
|
|
21
|
+
interface ProgressbarEvents extends Record<'',{}>{}
|
|
22
|
+
|
|
18
23
|
|
|
19
24
|
|
|
20
25
|
declare class Progressbar extends SvelteComponent<
|
|
21
|
-
ProgressbarProps
|
|
22
|
-
|
|
26
|
+
ProgressbarProps,
|
|
27
|
+
ProgressbarEvents,
|
|
23
28
|
{ }
|
|
24
29
|
> {}
|
|
25
30
|
|
|
@@ -1,32 +1,28 @@
|
|
|
1
1
|
<script>
|
|
2
2
|
import { colorClasses } from '../shared/mixins.js';
|
|
3
3
|
import { classNames } from '../shared/utils.js';
|
|
4
|
-
import { restProps } from '../shared/rest-props.js';
|
|
5
4
|
import { app } from '../shared/f7.js';
|
|
5
|
+
let { class: className, progress = 0, infinite = false, ...restProps } = $props();
|
|
6
6
|
|
|
7
|
-
let
|
|
8
|
-
export { className as class };
|
|
9
|
-
|
|
10
|
-
export let progress = 0;
|
|
11
|
-
export let infinite = false;
|
|
12
|
-
|
|
13
|
-
let el;
|
|
7
|
+
let el = $state(null);
|
|
14
8
|
|
|
15
9
|
export function set(progress, speed) {
|
|
16
10
|
if (!app.f7) return;
|
|
17
11
|
app.f7.progressbar.set(el, progress, speed);
|
|
18
12
|
}
|
|
19
13
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
14
|
+
const classes = $derived(
|
|
15
|
+
classNames(
|
|
16
|
+
className,
|
|
17
|
+
'progressbar',
|
|
18
|
+
{
|
|
19
|
+
'progressbar-infinite': infinite,
|
|
20
|
+
},
|
|
21
|
+
colorClasses(restProps),
|
|
22
|
+
),
|
|
27
23
|
);
|
|
28
24
|
</script>
|
|
29
25
|
|
|
30
|
-
<span bind:this={el} class={classes} data-progress={progress} {...restProps
|
|
31
|
-
<span style={`transform: ${progress ? `translate3d(${-100 + progress}%, 0, 0)` : ''}`}
|
|
26
|
+
<span bind:this={el} class={classes} data-progress={progress} {...restProps}>
|
|
27
|
+
<span style={`transform: ${progress ? `translate3d(${-100 + progress}%, 0, 0)` : ''}`}></span>
|
|
32
28
|
</span>
|