Skip to content

Commit 9fb9884

Browse files
ChqThomasweaverryan
authored andcommitted
[Svelte] Update build files
1 parent a4d7213 commit 9fb9884

File tree

3 files changed

+35
-5
lines changed

3 files changed

+35
-5
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
/// <reference types="webpack-env" />
2+
import type { SvelteComponent } from 'svelte';
3+
declare global {
4+
function resolveSvelteComponent(name: string): typeof SvelteComponent;
5+
interface Window {
6+
resolveSvelteComponent(name: string): typeof SvelteComponent;
7+
}
8+
}
9+
export declare function registerSvelteControllerComponents(context: __WebpackModuleApi.RequireContext): void;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { Controller } from '@hotwired/stimulus';
2+
import { SvelteComponent } from 'svelte';
3+
export default class extends Controller<Element & {
4+
root?: SvelteComponent;
5+
}> {
6+
private app;
7+
readonly componentValue: string;
8+
private props;
9+
private intro;
10+
readonly propsValue: Record<string, unknown> | null | undefined;
11+
readonly introValue: boolean | undefined;
12+
static values: {
13+
component: StringConstructor;
14+
props: ObjectConstructor;
15+
intro: BooleanConstructor;
16+
};
17+
connect(): void;
18+
disconnect(): void;
19+
_destroyIfExists(): void;
20+
private dispatchEvent;
21+
}

src/Svelte/assets/dist/render_controller.js

+5-5
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ class default_1 extends Controller {
66
this.element.innerHTML = '';
77
this.props = (_a = this.propsValue) !== null && _a !== void 0 ? _a : undefined;
88
this.intro = (_b = this.introValue) !== null && _b !== void 0 ? _b : undefined;
9-
this._dispatchEvent('svelte:connect');
9+
this.dispatchEvent('connect');
1010
const Component = window.resolveSvelteComponent(this.componentValue);
1111
this._destroyIfExists();
1212
this.app = new Component({
@@ -15,23 +15,23 @@ class default_1 extends Controller {
1515
intro: this.intro,
1616
});
1717
this.element.root = this.app;
18-
this._dispatchEvent('svelte:mount', {
18+
this.dispatchEvent('mount', {
1919
component: Component,
2020
});
2121
}
2222
disconnect() {
2323
this._destroyIfExists();
24-
this._dispatchEvent('svelte:unmount');
24+
this.dispatchEvent('unmount');
2525
}
2626
_destroyIfExists() {
2727
if (this.element.root !== undefined) {
2828
this.element.root.$destroy();
2929
delete this.element.root;
3030
}
3131
}
32-
_dispatchEvent(name, payload = {}) {
32+
dispatchEvent(name, payload = {}) {
3333
const detail = Object.assign({ componentName: this.componentValue, props: this.props, intro: this.intro }, payload);
34-
this.element.dispatchEvent(new CustomEvent(name, { detail, bubbles: true }));
34+
this.dispatch(name, { detail, prefix: 'svelte' });
3535
}
3636
}
3737
default_1.values = {

0 commit comments

Comments
 (0)