Skip to content

Commit 6029fd1

Browse files
committed
feat(svelte): core component instance is now exposed through slot props
fixes #3899 for example now it is possible to do: ```svelte <Sheet let:sheet> <Button onClick={() => sheet.close()}>Close</Button> </Sheet> ```
1 parent 91aa1e6 commit 6029fd1

File tree

13 files changed

+38
-38
lines changed

13 files changed

+38
-38
lines changed

src/svelte/components/actions.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,5 +124,5 @@
124124
</script>
125125

126126
<div class={classes} bind:this={el} {...restProps($$restProps)}>
127-
<slot />
127+
<slot actions={f7Actions} />
128128
</div>

src/svelte/components/list-index.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,5 +80,5 @@
8080
</script>
8181

8282
<div bind:this={el} class={classes} data-f7-slot={f7Slot} {...restProps($$restProps)}>
83-
<slot />
83+
<slot listIndex={f7ListIndex} />
8484
</div>

src/svelte/components/login-screen.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,5 +100,5 @@
100100
</script>
101101

102102
<div class={classes} bind:this={el} {...restProps($$restProps)}>
103-
<slot />
103+
<slot loginScreen={f7LoginScreen} />
104104
</div>

src/svelte/components/messagebar.svelte

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -181,11 +181,11 @@
181181
</script>
182182

183183
<div bind:this={el} class={classes} data-f7-slot={f7Slot} {...restProps($$restProps)}>
184-
<slot name="before-inner" />
184+
<slot messagebar={f7Messagebar} name="before-inner" />
185185
<div class="toolbar-inner">
186-
<slot name="inner-start" />
186+
<slot messagebar={f7Messagebar} name="inner-start" />
187187
<div class="messagebar-area">
188-
<slot name="before-area" />
188+
<slot messagebar={f7Messagebar} name="before-area" />
189189
<Input
190190
id={textareaId}
191191
type="textarea"
@@ -201,16 +201,16 @@
201201
on:focus={onFocus}
202202
on:blur={onBlur}
203203
/>
204-
<slot name="after-inner" />
204+
<slot messagebar={f7Messagebar} name="after-inner" />
205205
</div>
206206
{#if (sendLink && sendLink.length > 0) || hasSendLinkSlots}
207207
<Link {onClick}>
208-
<slot name="send-link" />
208+
<slot messagebar={f7Messagebar} name="send-link" />
209209
{sendLink}
210210
</Link>
211211
{/if}
212-
<slot name="inner-end" />
213-
<slot />
212+
<slot messagebar={f7Messagebar} name="inner-end" />
213+
<slot messagebar={f7Messagebar} />
214214
</div>
215-
<slot name="after-inner" />
215+
<slot messagebar={f7Messagebar} name="after-inner" />
216216
</div>

src/svelte/components/messages.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,5 +122,5 @@
122122
</script>
123123

124124
<div bind:this={el} class={classes} {...restProps($$restProps)}>
125-
<slot />
125+
<slot messages={f7Messages} />
126126
</div>

src/svelte/components/panel.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@
197197
</script>
198198

199199
<div bind:this={el} class={classes} data-f7-slot={f7Slot} {...restProps($$restProps)}>
200-
<slot />
200+
<slot panel={f7Panel} />
201201
{#if resizable}
202202
<div class="panel-resize-handler" />
203203
{/if}

src/svelte/components/popover.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,6 @@
113113
<div class={classes} bind:this={el} {...restProps($$restProps)}>
114114
<div class="popover-angle" />
115115
<div class="popover-inner">
116-
<slot />
116+
<slot popover={f7Popover} />
117117
</div>
118118
</div>

src/svelte/components/popup.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,5 +136,5 @@
136136
</script>
137137

138138
<div class={classes} bind:this={el} {...restProps($$restProps)}>
139-
<slot />
139+
<slot popup={f7Popup} />
140140
</div>

src/svelte/components/range.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,5 +102,5 @@
102102

103103
<div bind:this={el} class={classes} {...restProps($$restProps)}>
104104
{#if input}<input type="range" {name} id={inputId} />{/if}
105-
<slot />
105+
<slot range={f7Range} />
106106
</div>

src/svelte/components/searchbar.svelte

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -178,11 +178,11 @@
178178
data-f7-slot={f7Slot}
179179
{...restProps($$restProps)}
180180
>
181-
<slot name="before-inner" />
181+
<slot searchbar={f7Searchbar} name="before-inner" />
182182
<div class="searchbar-inner">
183-
<slot name="inner-start" />
183+
<slot searchbar={f7Searchbar} name="inner-start" />
184184
<div class="searchbar-input-wrap">
185-
<slot name="input-wrap-start" />
185+
<slot searchbar={f7Searchbar} name="input-wrap-start" />
186186
<input
187187
value={typeof value === 'undefined' ? '' : value}
188188
{placeholder}
@@ -195,25 +195,25 @@
195195
/>
196196
<i class="searchbar-icon" />
197197
{#if clearButton}<span on:click={onClearButtonClick} class="input-clear-button" />{/if}
198-
<slot name="input-wrap-end" />
198+
<slot searchbar={f7Searchbar} name="input-wrap-end" />
199199
</div>
200200
{#if disableButton}
201201
<span on:click={onDisableButtonClick} class="searchbar-disable-button"
202202
>{disableButtonText}</span
203203
>
204204
{/if}
205-
<slot name="inner-end" />
206-
<slot />
205+
<slot searchbar={f7Searchbar} name="inner-end" />
206+
<slot searchbar={f7Searchbar} />
207207
</div>
208-
<slot name="after-inner" />
208+
<slot searchbar={f7Searchbar} name="after-inner" />
209209
</form>
210210
{:else}
211211
<div bind:this={el} class={classes} data-f7-slot={f7Slot} {...restProps($$restProps)}>
212-
<slot name="before-inner" />
212+
<slot searchbar={f7Searchbar} name="before-inner" />
213213
<div class="searchbar-inner">
214-
<slot name="inner-start" />
214+
<slot searchbar={f7Searchbar} name="inner-start" />
215215
<div class="searchbar-input-wrap">
216-
<slot name="input-wrap-start" />
216+
<slot searchbar={f7Searchbar} name="input-wrap-start" />
217217
<input
218218
value={typeof value === 'undefined' ? '' : value}
219219
{placeholder}
@@ -226,16 +226,16 @@
226226
/>
227227
<i class="searchbar-icon" />
228228
{#if clearButton}<span on:click={onClearButtonClick} class="input-clear-button" />{/if}
229-
<slot name="input-wrap-end" />
229+
<slot searchbar={f7Searchbar} name="input-wrap-end" />
230230
</div>
231231
{#if disableButton}
232232
<span on:click={onDisableButtonClick} class="searchbar-disable-button"
233233
>{disableButtonText}</span
234234
>
235235
{/if}
236-
<slot name="inner-end" />
237-
<slot />
236+
<slot searchbar={f7Searchbar} name="inner-end" />
237+
<slot searchbar={f7Searchbar} />
238238
</div>
239-
<slot name="after-inner" />
239+
<slot searchbar={f7Searchbar} name="after-inner" />
240240
</div>
241241
{/if}

0 commit comments

Comments
 (0)