Skip to content

Commit 8407198

Browse files
committed
Cleanup snippet
1 parent 1ce0da9 commit 8407198

File tree

2 files changed

+24
-24
lines changed

2 files changed

+24
-24
lines changed

app/javascript/controllers/snippets/preview.ts

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@ import debug from '../../utils/debug';
55
const console = debug('app:javascript:controllers:snippets:preview');
66

77
export default class extends Controller<HTMLFormElement> {
8-
// Make timeout type play nice with TypeScript
9-
// based on https://donatstudios.com/TypeScriptTimeoutTrouble
10-
private idleTimeout?: ReturnType<typeof setTimeout>;
11-
128
static targets = ['previewButton'];
139

1410
declare readonly hasPreviewButtonTarget: boolean;
@@ -17,29 +13,33 @@ export default class extends Controller<HTMLFormElement> {
1713
connect(): void {
1814
console.log('Connect!');
1915

20-
this.element.addEventListener('turbo:submit-start', (event) => {
21-
if (
22-
(event as CustomEvent).detail.formSubmission.submitter !==
23-
this.previewButtonTarget
24-
) {
25-
return;
26-
}
16+
this.element.addEventListener('turbo:submit-start', this.disable);
17+
18+
this.element.addEventListener('turbo:submit-end', this.enable);
19+
}
2720

28-
if (event.target instanceof HTMLFormElement) {
29-
for (const field of event.target.elements) {
30-
(field as HTMLInputElement).disabled = true;
31-
}
21+
disable = (event): void => {
22+
if (
23+
(event as CustomEvent).detail.formSubmission.submitter !==
24+
this.previewButtonTarget
25+
) {
26+
return;
27+
}
28+
29+
if (event.target instanceof HTMLFormElement) {
30+
for (const field of event.target.elements) {
31+
(field as HTMLInputElement).disabled = true;
3232
}
33-
});
33+
}
34+
};
3435

35-
this.element.addEventListener('turbo:submit-end', (event) => {
36-
if (event.target instanceof HTMLFormElement) {
37-
for (const field of event.target.elements) {
38-
(field as HTMLInputElement).disabled = false;
39-
}
36+
enable = (event): void => {
37+
if (event.target instanceof HTMLFormElement) {
38+
for (const field of event.target.elements) {
39+
(field as HTMLInputElement).disabled = false;
4040
}
41-
});
42-
}
41+
}
42+
};
4343

4444
preview = (): void => {
4545
console.log('Start preview!');

app/views/components/code_block/snippet.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def view_template
1717
end
1818

1919
render CodeBlock::Body.new do
20-
render CodeBlock::Code.new(source, language: language, data: {snippet_editor_target: "source"})
20+
render CodeBlock::Code.new(source, language: language)
2121
end
2222
end
2323
end

0 commit comments

Comments
 (0)