framework7-svelte 8.3.4 → 9.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
@@ -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
|
-
image
|
|
8
|
-
checked
|
|
6
|
+
interface Props {
|
|
7
|
+
image?: string | Snippet;
|
|
8
|
+
checked?: boolean;
|
|
9
9
|
color?: string;
|
|
10
10
|
colorTheme?: string;
|
|
11
11
|
textColor?: string;
|
|
@@ -13,17 +13,26 @@ interface MessagebarSheetImageProps {
|
|
|
13
13
|
borderColor?: string;
|
|
14
14
|
rippleColor?: string;
|
|
15
15
|
dark?: boolean;
|
|
16
|
-
onChecked
|
|
17
|
-
onUnchecked
|
|
18
|
-
onChange
|
|
16
|
+
onChecked?: (event?: any) => void;
|
|
17
|
+
onUnchecked?: (event?: any) => void;
|
|
18
|
+
onChange?: (event?: any) => void;
|
|
19
|
+
children?: Snippet;
|
|
20
|
+
onchecked?: () => void;
|
|
21
|
+
onunchecked?: () => void;
|
|
22
|
+
onchange?: () => void;
|
|
19
23
|
}
|
|
20
24
|
|
|
25
|
+
interface MessagebarSheetImageProps {}
|
|
26
|
+
interface MessagebarSheetImageProps extends Props {}
|
|
27
|
+
|
|
28
|
+
interface MessagebarSheetImageEvents extends Record<'',{}>{}
|
|
29
|
+
|
|
21
30
|
|
|
22
31
|
|
|
23
32
|
declare class MessagebarSheetImage extends SvelteComponent<
|
|
24
|
-
MessagebarSheetImageProps
|
|
25
|
-
|
|
26
|
-
{
|
|
33
|
+
MessagebarSheetImageProps,
|
|
34
|
+
MessagebarSheetImageEvents,
|
|
35
|
+
{ }
|
|
27
36
|
> {}
|
|
28
37
|
|
|
29
38
|
export { MessagebarSheetImageProps };
|
|
@@ -1,36 +1,44 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import { createEventDispatcher } from 'svelte';
|
|
3
2
|
import { colorClasses } from '../shared/mixins.js';
|
|
4
|
-
import { classNames
|
|
5
|
-
import { restProps } from '../shared/rest-props.js';
|
|
3
|
+
import { classNames } from '../shared/utils.js';
|
|
6
4
|
|
|
7
|
-
|
|
5
|
+
let {
|
|
6
|
+
style = undefined,
|
|
7
|
+
class: className,
|
|
8
|
+
image = undefined,
|
|
9
|
+
checked = false,
|
|
10
|
+
children,
|
|
11
|
+
...restProps
|
|
12
|
+
} = $props();
|
|
8
13
|
|
|
9
|
-
|
|
14
|
+
const classes = $derived(
|
|
15
|
+
classNames(className, 'messagebar-sheet-image', 'checkbox', colorClasses(restProps)),
|
|
16
|
+
);
|
|
10
17
|
|
|
11
|
-
|
|
12
|
-
export { className as class };
|
|
13
|
-
|
|
14
|
-
export let image = undefined;
|
|
15
|
-
export let checked = false;
|
|
16
|
-
|
|
17
|
-
$: classes = classNames(className, 'messagebar-sheet-image', 'checkbox', colorClasses($$props));
|
|
18
|
-
|
|
19
|
-
$: styles = `${style || ''}`;
|
|
18
|
+
const styles = $derived(`${style || ''}`);
|
|
20
19
|
|
|
21
20
|
function onChange(event) {
|
|
22
|
-
if (event.target.checked)
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
if (event.target.checked) {
|
|
22
|
+
restProps.onChecked?.(event);
|
|
23
|
+
restProps.onchecked?.(event);
|
|
24
|
+
} else {
|
|
25
|
+
restProps.onUnchecked?.(event);
|
|
26
|
+
restProps.onunchecked?.(event);
|
|
27
|
+
}
|
|
28
|
+
restProps.onChange?.(event);
|
|
29
|
+
restProps.onchange?.(event);
|
|
25
30
|
checked = event.target.checked;
|
|
26
31
|
}
|
|
27
32
|
</script>
|
|
28
33
|
|
|
29
|
-
<label class={classes} style={styles} {...restProps
|
|
30
|
-
<input type="checkbox" {checked}
|
|
31
|
-
<i class="icon icon-checkbox"
|
|
32
|
-
{#if image}
|
|
34
|
+
<label class={classes} style={styles} {...restProps}>
|
|
35
|
+
<input type="checkbox" {checked} onchange={onChange} />
|
|
36
|
+
<i class="icon icon-checkbox"></i>
|
|
37
|
+
{#if image && typeof image === 'string'}
|
|
33
38
|
<img src={image} alt="" />
|
|
34
39
|
{/if}
|
|
35
|
-
|
|
40
|
+
{#if typeof image === 'function'}
|
|
41
|
+
{@render image?.()}
|
|
42
|
+
{/if}
|
|
43
|
+
{@render children?.()}
|
|
36
44
|
</label>
|
|
@@ -1,9 +1,9 @@
|
|
|
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
|
|
6
|
+
interface Props {
|
|
7
7
|
color?: string;
|
|
8
8
|
colorTheme?: string;
|
|
9
9
|
textColor?: string;
|
|
@@ -11,14 +11,20 @@ interface MessagebarSheetItemProps {
|
|
|
11
11
|
borderColor?: string;
|
|
12
12
|
rippleColor?: string;
|
|
13
13
|
dark?: boolean;
|
|
14
|
+
children?: Snippet;
|
|
14
15
|
}
|
|
15
16
|
|
|
17
|
+
interface MessagebarSheetItemProps {}
|
|
18
|
+
interface MessagebarSheetItemProps extends Props {}
|
|
19
|
+
|
|
20
|
+
interface MessagebarSheetItemEvents extends Record<'',{}>{}
|
|
21
|
+
|
|
16
22
|
|
|
17
23
|
|
|
18
24
|
declare class MessagebarSheetItem extends SvelteComponent<
|
|
19
|
-
MessagebarSheetItemProps
|
|
20
|
-
|
|
21
|
-
{
|
|
25
|
+
MessagebarSheetItemProps,
|
|
26
|
+
MessagebarSheetItemEvents,
|
|
27
|
+
{ }
|
|
22
28
|
> {}
|
|
23
29
|
|
|
24
30
|
export { MessagebarSheetItemProps };
|
|
@@ -1,14 +1,12 @@
|
|
|
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
|
|
|
6
|
-
let className =
|
|
7
|
-
export { className as class };
|
|
5
|
+
let { class: className, children, ...restProps } = $props();
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
const classes = $derived(classNames(className, 'messagebar-sheet-item', colorClasses(restProps)));
|
|
10
8
|
</script>
|
|
11
9
|
|
|
12
|
-
<div class={classes} {...restProps
|
|
13
|
-
|
|
10
|
+
<div class={classes} {...restProps}>
|
|
11
|
+
{@render children?.()}
|
|
14
12
|
</div>
|
|
@@ -1,9 +1,9 @@
|
|
|
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
|
|
6
|
+
interface Props {
|
|
7
7
|
color?: string;
|
|
8
8
|
colorTheme?: string;
|
|
9
9
|
textColor?: string;
|
|
@@ -11,14 +11,20 @@ interface MessagebarSheetProps {
|
|
|
11
11
|
borderColor?: string;
|
|
12
12
|
rippleColor?: string;
|
|
13
13
|
dark?: boolean;
|
|
14
|
+
children?: Snippet;
|
|
14
15
|
}
|
|
15
16
|
|
|
17
|
+
interface MessagebarSheetProps {}
|
|
18
|
+
interface MessagebarSheetProps extends Props {}
|
|
19
|
+
|
|
20
|
+
interface MessagebarSheetEvents extends Record<'',{}>{}
|
|
21
|
+
|
|
16
22
|
|
|
17
23
|
|
|
18
24
|
declare class MessagebarSheet extends SvelteComponent<
|
|
19
|
-
MessagebarSheetProps
|
|
20
|
-
|
|
21
|
-
{
|
|
25
|
+
MessagebarSheetProps,
|
|
26
|
+
MessagebarSheetEvents,
|
|
27
|
+
{ }
|
|
22
28
|
> {}
|
|
23
29
|
|
|
24
30
|
export { MessagebarSheetProps };
|
|
@@ -1,14 +1,12 @@
|
|
|
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
|
|
|
6
|
-
let className =
|
|
7
|
-
export { className as class };
|
|
5
|
+
let { class: className, children, ...restProps } = $props();
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
const classes = $derived(classNames(className, 'messagebar-sheet', colorClasses(restProps)));
|
|
10
8
|
</script>
|
|
11
9
|
|
|
12
|
-
<div class={classes} {...restProps
|
|
13
|
-
|
|
10
|
+
<div class={classes} {...restProps}>
|
|
11
|
+
{@render children?.()}
|
|
14
12
|
</div>
|
|
@@ -1,27 +1,27 @@
|
|
|
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 { Messagebar } from 'framework7/types';
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
interface
|
|
9
|
-
sheetVisible
|
|
10
|
-
attachmentsVisible
|
|
11
|
-
top
|
|
12
|
-
resizable
|
|
13
|
-
bottomOffset
|
|
14
|
-
topOffset
|
|
15
|
-
maxHeight
|
|
16
|
-
resizePage
|
|
17
|
-
sendLink
|
|
18
|
-
value
|
|
19
|
-
disabled
|
|
20
|
-
readonly
|
|
21
|
-
textareaId
|
|
22
|
-
name
|
|
23
|
-
placeholder
|
|
24
|
-
init
|
|
8
|
+
interface Props {
|
|
9
|
+
sheetVisible?: boolean;
|
|
10
|
+
attachmentsVisible?: boolean;
|
|
11
|
+
top?: boolean;
|
|
12
|
+
resizable?: boolean;
|
|
13
|
+
bottomOffset?: number;
|
|
14
|
+
topOffset?: number;
|
|
15
|
+
maxHeight?: number;
|
|
16
|
+
resizePage?: boolean;
|
|
17
|
+
sendLink?: string | Snippet;
|
|
18
|
+
value?: string | number | Array<any>;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
readonly?: boolean;
|
|
21
|
+
textareaId?: number | string;
|
|
22
|
+
name?: string;
|
|
23
|
+
placeholder?: string;
|
|
24
|
+
init?: boolean;
|
|
25
25
|
color?: string;
|
|
26
26
|
colorTheme?: string;
|
|
27
27
|
textColor?: string;
|
|
@@ -29,24 +29,46 @@ interface MessagebarProps {
|
|
|
29
29
|
borderColor?: string;
|
|
30
30
|
rippleColor?: string;
|
|
31
31
|
dark?: boolean;
|
|
32
|
-
onChange
|
|
33
|
-
onInput
|
|
34
|
-
onFocus
|
|
35
|
-
onBlur
|
|
36
|
-
onSubmit
|
|
37
|
-
onSend
|
|
38
|
-
onClick
|
|
39
|
-
onMessagebarAttachmentDelete
|
|
40
|
-
onMessagebarAttachmentClick
|
|
41
|
-
onMessagebarResizePage
|
|
32
|
+
onChange?: (event?: any) => void;
|
|
33
|
+
onInput?: (event?: any) => void;
|
|
34
|
+
onFocus?: (event?: any) => void;
|
|
35
|
+
onBlur?: (event?: any) => void;
|
|
36
|
+
onSubmit?: (value?: any, clear?: any) => void;
|
|
37
|
+
onSend?: (value?: any, clear?: any) => void;
|
|
38
|
+
onClick?: (event?: any) => void;
|
|
39
|
+
onMessagebarAttachmentDelete?: (instance?: Messagebar.Messagebar, attachmentEl?: HTMLElement, attachmentElIndex?: number) => void;
|
|
40
|
+
onMessagebarAttachmentClick?: (instance?: Messagebar.Messagebar, attachmentEl?: HTMLElement, attachmentElIndex?: number) => void;
|
|
41
|
+
onMessagebarResizePage?: (instance?: Messagebar.Messagebar) => void;
|
|
42
|
+
beforeInner?: Snippet;
|
|
43
|
+
innerStart?: Snippet;
|
|
44
|
+
beforeArea?: Snippet;
|
|
45
|
+
afterArea?: Snippet;
|
|
46
|
+
innerEnd?: Snippet;
|
|
47
|
+
children?: Snippet;
|
|
48
|
+
afterInner?: Snippet;
|
|
49
|
+
onchange?: () => void;
|
|
50
|
+
oninput?: () => void;
|
|
51
|
+
onfocus?: () => void;
|
|
52
|
+
onblur?: () => void;
|
|
53
|
+
onsubmit?: () => void;
|
|
54
|
+
onsend?: () => void;
|
|
55
|
+
onclick?: () => void;
|
|
56
|
+
onmessagebarattachmentdelete?: () => void;
|
|
57
|
+
onmessagebarattachmentclick?: () => void;
|
|
58
|
+
onmessagebarresizepage?: () => void;
|
|
42
59
|
}
|
|
43
60
|
|
|
61
|
+
interface MessagebarProps {}
|
|
62
|
+
interface MessagebarProps extends Props {}
|
|
63
|
+
|
|
64
|
+
interface MessagebarEvents extends Record<'',{}>{}
|
|
65
|
+
|
|
44
66
|
|
|
45
67
|
|
|
46
68
|
declare class Messagebar extends SvelteComponent<
|
|
47
|
-
MessagebarProps
|
|
48
|
-
|
|
49
|
-
{
|
|
69
|
+
MessagebarProps,
|
|
70
|
+
MessagebarEvents,
|
|
71
|
+
{ }
|
|
50
72
|
> {}
|
|
51
73
|
|
|
52
74
|
export { MessagebarProps };
|
|
@@ -1,61 +1,65 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import {
|
|
2
|
+
import { onMount, onDestroy } from 'svelte';
|
|
3
3
|
import { colorClasses } from '../shared/mixins.js';
|
|
4
|
-
import { classNames, noUndefinedProps
|
|
5
|
-
import { restProps } from '../shared/rest-props.js';
|
|
4
|
+
import { classNames, noUndefinedProps } from '../shared/utils.js';
|
|
6
5
|
import { app, f7ready } from '../shared/f7.js';
|
|
7
6
|
|
|
8
7
|
import Link from './link.svelte';
|
|
9
8
|
import Input from './input.svelte';
|
|
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
|
-
|
|
9
|
+
import ToolbarPane from './toolbar-pane.svelte';
|
|
10
|
+
|
|
11
|
+
let {
|
|
12
|
+
class: className,
|
|
13
|
+
sheetVisible = false,
|
|
14
|
+
attachmentsVisible = false,
|
|
15
|
+
top = false,
|
|
16
|
+
resizable = true,
|
|
17
|
+
bottomOffset = 0,
|
|
18
|
+
topOffset = 0,
|
|
19
|
+
maxHeight = undefined,
|
|
20
|
+
resizePage = true,
|
|
21
|
+
sendLink = undefined,
|
|
22
|
+
value = undefined,
|
|
23
|
+
disabled = false,
|
|
24
|
+
readonly = false,
|
|
25
|
+
textareaId = undefined,
|
|
26
|
+
name = undefined,
|
|
27
|
+
placeholder = 'Message',
|
|
28
|
+
init = true,
|
|
29
|
+
f7Slot = 'fixed',
|
|
30
|
+
children,
|
|
31
|
+
beforeInner,
|
|
32
|
+
innerStart,
|
|
33
|
+
beforeArea,
|
|
34
|
+
afterArea,
|
|
35
|
+
innerEnd,
|
|
36
|
+
afterInner,
|
|
37
|
+
...restProps
|
|
38
|
+
} = $props();
|
|
39
|
+
|
|
40
|
+
let el = $state(undefined);
|
|
41
|
+
let f7Messagebar = $state(undefined);
|
|
42
|
+
let updateSheetVisible = $state(false);
|
|
43
|
+
let updateAttachmentsVisible = $state(false);
|
|
40
44
|
|
|
41
45
|
export function instance() {
|
|
42
46
|
return f7Messagebar;
|
|
43
47
|
}
|
|
44
48
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
const classes = $derived(
|
|
50
|
+
classNames(
|
|
51
|
+
className,
|
|
52
|
+
'toolbar',
|
|
53
|
+
'messagebar',
|
|
54
|
+
{
|
|
55
|
+
'messagebar-attachments-visible': attachmentsVisible,
|
|
56
|
+
'messagebar-sheet-visible': sheetVisible,
|
|
57
|
+
},
|
|
58
|
+
colorClasses(restProps),
|
|
59
|
+
),
|
|
54
60
|
);
|
|
55
61
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
let initialWatchedSheet = false;
|
|
62
|
+
let initialWatchedSheet = $state(false);
|
|
59
63
|
function watchSheetVisible() {
|
|
60
64
|
if (!initialWatchedSheet) {
|
|
61
65
|
initialWatchedSheet = true;
|
|
@@ -64,7 +68,7 @@
|
|
|
64
68
|
if (!resizable || !f7Messagebar) return;
|
|
65
69
|
updateSheetVisible = true;
|
|
66
70
|
}
|
|
67
|
-
let initialWatchedAttachments;
|
|
71
|
+
let initialWatchedAttachments = $state(false);
|
|
68
72
|
function watchAttachmentsVisible() {
|
|
69
73
|
if (!initialWatchedAttachments) {
|
|
70
74
|
initialWatchedAttachments = true;
|
|
@@ -74,24 +78,28 @@
|
|
|
74
78
|
updateAttachmentsVisible = true;
|
|
75
79
|
}
|
|
76
80
|
|
|
77
|
-
|
|
78
|
-
|
|
81
|
+
$effect(() => watchSheetVisible(sheetVisible));
|
|
82
|
+
$effect(() => watchAttachmentsVisible(attachmentsVisible));
|
|
79
83
|
|
|
80
84
|
function onChange(event) {
|
|
81
|
-
|
|
85
|
+
restProps.onChange?.(event);
|
|
86
|
+
restProps.onchange?.(event);
|
|
82
87
|
}
|
|
83
88
|
|
|
84
89
|
function onInput(event) {
|
|
85
|
-
|
|
90
|
+
restProps.onInput?.(event);
|
|
91
|
+
restProps.oninput?.(event);
|
|
86
92
|
value = event.detail[0].target.value;
|
|
87
93
|
}
|
|
88
94
|
|
|
89
95
|
function onFocus(event) {
|
|
90
|
-
|
|
96
|
+
restProps.onFocus?.(event);
|
|
97
|
+
restProps.onfocus?.(event);
|
|
91
98
|
}
|
|
92
99
|
|
|
93
100
|
function onBlur(event) {
|
|
94
|
-
|
|
101
|
+
restProps.onBlur?.(event);
|
|
102
|
+
restProps.onblur?.(event);
|
|
95
103
|
}
|
|
96
104
|
|
|
97
105
|
function onClick(event) {
|
|
@@ -101,22 +109,27 @@
|
|
|
101
109
|
f7Messagebar.clear();
|
|
102
110
|
}
|
|
103
111
|
: () => {};
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
112
|
+
restProps.onSubmit?.(inputValue, clear);
|
|
113
|
+
restProps.onsubmit?.(inputValue, clear);
|
|
114
|
+
restProps.onSend?.(inputValue, clear);
|
|
115
|
+
restProps.onsend?.(inputValue, clear);
|
|
116
|
+
restProps.onClick?.(event);
|
|
117
|
+
restProps.onclick?.(event);
|
|
108
118
|
}
|
|
109
119
|
|
|
110
120
|
function onAttachmentDelete(inst, attachmentEl, attachmentElIndex) {
|
|
111
|
-
|
|
121
|
+
restProps.onMessagebarAttachmentDelete?.(inst, attachmentEl, attachmentElIndex);
|
|
122
|
+
restProps.onmessagebarattachmentdelete?.(inst, attachmentEl, attachmentElIndex);
|
|
112
123
|
}
|
|
113
124
|
|
|
114
125
|
function onAttachmentClick(inst, attachmentEl, attachmentElIndex) {
|
|
115
|
-
|
|
126
|
+
restProps.onMessagebarAttachmentClick?.(inst, attachmentEl, attachmentElIndex);
|
|
127
|
+
restProps.onmessagebarattachmentclick?.(inst, attachmentEl, attachmentElIndex);
|
|
116
128
|
}
|
|
117
129
|
|
|
118
130
|
function onResizePage(inst) {
|
|
119
|
-
|
|
131
|
+
restProps.onMessagebarResizePage?.(inst);
|
|
132
|
+
restProps.onmessagebarresizepage?.(inst);
|
|
120
133
|
}
|
|
121
134
|
|
|
122
135
|
onMount(() => {
|
|
@@ -148,7 +161,7 @@
|
|
|
148
161
|
});
|
|
149
162
|
});
|
|
150
163
|
|
|
151
|
-
|
|
164
|
+
$effect(() => {
|
|
152
165
|
if (!f7Messagebar) return;
|
|
153
166
|
if (el && app.f7) {
|
|
154
167
|
const dom7 = app.f7.$;
|
|
@@ -178,12 +191,17 @@
|
|
|
178
191
|
});
|
|
179
192
|
</script>
|
|
180
193
|
|
|
181
|
-
<div bind:this={el} class={classes} data-f7-slot={f7Slot} {...restProps
|
|
182
|
-
|
|
194
|
+
<div bind:this={el} class={classes} data-f7-slot={f7Slot} {...restProps}>
|
|
195
|
+
{@render beforeInner?.(f7Messagebar)}
|
|
196
|
+
|
|
183
197
|
<div class="toolbar-inner">
|
|
184
|
-
|
|
198
|
+
{#if innerStart}
|
|
199
|
+
<ToolbarPane>
|
|
200
|
+
{@render innerStart?.(f7Messagebar)}
|
|
201
|
+
</ToolbarPane>
|
|
202
|
+
{/if}
|
|
185
203
|
<div class="messagebar-area">
|
|
186
|
-
|
|
204
|
+
{@render beforeArea?.(f7Messagebar)}
|
|
187
205
|
<Input
|
|
188
206
|
inputId={textareaId}
|
|
189
207
|
type="textarea"
|
|
@@ -194,21 +212,26 @@
|
|
|
194
212
|
{readonly}
|
|
195
213
|
{resizable}
|
|
196
214
|
value={typeof value === 'undefined' ? '' : value}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
215
|
+
oninput={onInput}
|
|
216
|
+
onchange={onChange}
|
|
217
|
+
onfocus={onFocus}
|
|
218
|
+
onblur={onBlur}
|
|
201
219
|
/>
|
|
202
|
-
|
|
220
|
+
{@render afterArea?.(f7Messagebar)}
|
|
203
221
|
</div>
|
|
204
|
-
{#if
|
|
205
|
-
<
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
222
|
+
{#if sendLink || innerEnd}
|
|
223
|
+
<ToolbarPane>
|
|
224
|
+
{#if sendLink}
|
|
225
|
+
<Link onclick={onClick}>
|
|
226
|
+
{@render sendLink?.(f7Messagebar)}
|
|
227
|
+
{sendLink}
|
|
228
|
+
</Link>
|
|
229
|
+
{/if}
|
|
230
|
+
{@render innerEnd?.(f7Messagebar)}
|
|
231
|
+
</ToolbarPane>
|
|
209
232
|
{/if}
|
|
210
|
-
|
|
211
|
-
|
|
233
|
+
|
|
234
|
+
{@render children?.(f7Messagebar)}
|
|
212
235
|
</div>
|
|
213
|
-
|
|
236
|
+
{@render afterInner?.(f7Messagebar)}
|
|
214
237
|
</div>
|
|
@@ -1,9 +1,9 @@
|
|
|
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
|
|
6
|
+
interface Props {
|
|
7
7
|
color?: string;
|
|
8
8
|
colorTheme?: string;
|
|
9
9
|
textColor?: string;
|
|
@@ -11,14 +11,20 @@ interface MessagesTitleProps {
|
|
|
11
11
|
borderColor?: string;
|
|
12
12
|
rippleColor?: string;
|
|
13
13
|
dark?: boolean;
|
|
14
|
+
children?: Snippet;
|
|
14
15
|
}
|
|
15
16
|
|
|
17
|
+
interface MessagesTitleProps {}
|
|
18
|
+
interface MessagesTitleProps extends Props {}
|
|
19
|
+
|
|
20
|
+
interface MessagesTitleEvents extends Record<'',{}>{}
|
|
21
|
+
|
|
16
22
|
|
|
17
23
|
|
|
18
24
|
declare class MessagesTitle extends SvelteComponent<
|
|
19
|
-
MessagesTitleProps
|
|
20
|
-
|
|
21
|
-
{
|
|
25
|
+
MessagesTitleProps,
|
|
26
|
+
MessagesTitleEvents,
|
|
27
|
+
{ }
|
|
22
28
|
> {}
|
|
23
29
|
|
|
24
30
|
export { MessagesTitleProps };
|
|
@@ -1,14 +1,12 @@
|
|
|
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
|
|
|
6
|
-
let className =
|
|
7
|
-
export { className as class };
|
|
5
|
+
let { class: className, children, ...restProps } = $props();
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
const classes = $derived(classNames(className, 'messages-title', colorClasses(restProps)));
|
|
10
8
|
</script>
|
|
11
9
|
|
|
12
|
-
<div class={classes} {...restProps
|
|
13
|
-
|
|
10
|
+
<div class={classes} {...restProps}>
|
|
11
|
+
{@render children?.()}
|
|
14
12
|
</div>
|