プレビューするテキストがありません
'; + return; + } + + try { + const response = await fetch(this.previewUrlValue, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'X-CSRF-Token': document.querySelector('meta[name="csrf-token"]').content, + }, + body: JSON.stringify({ text }), + }); + + if (!response.ok) { + throw new Error('Preview failed'); + } + + const data = await response.json(); + this.previewTarget.innerHTML = data.html; + } catch (error) { + console.error('Preview error:', error); + this.previewTarget.innerHTML = 'プレビューの生成に失敗しました
'; + } + } +} diff --git a/app/views/home/help.html.erb b/app/views/home/help.html.erb index 5b9f9aa..b7b48f4 100644 --- a/app/views/home/help.html.erb +++ b/app/views/home/help.html.erb @@ -1,14 +1,132 @@ <% content_for :title, full_title("ヘルプ") %> -...
-+ イベント説明文と開催レポートでは、マークダウン記法を使って文章を装飾できます。 +
+ +
+ # 大見出し
+ ## 中見出し
+ ### 小見出し
+
+
+ **太字にする**
+ *斜体にする*
+ ~~取り消し線~~
+
+
+ [リンクテキスト](https://example.com)
+
+ 通常のテキストリンクになります。
+
+ <button-link url="https://slack.com/channels/xxx">Slackに参加</button-link>
+
+ 青いボタンとして表示されます。チャットへのリンクなどに便利です。
+プレビュー:
+ + Slackに参加 + +
+ - 項目1
+ - 項目2
+ - 項目3
+
+ 1. 番号付き項目1
+ 2. 番号付き項目2
+ 3. 番号付き項目3
+
+
+ > これは引用文です
+
+
+ ```
+ コードをここに書く
+ ```
+
+
+ | 列1 | 列2 | 列3 |
+ | --- | --- | --- |
+ | 値1 | 値2 | 値3 |
+ | 値4 | 値5 | 値6 |
+
+ + イベント作成・編集画面では「プレビュー」タブで実際の見た目を確認できます。 +
+準備中...
+<%= help_text %>
+ <% end %> +プレビューするテキストがありません
+5000文字以内
-| Header 1 | ') + end + + it 'converts code blocks' do + markdown = "```\ncode here\n```" + html = helper.render_markdown(markdown) + + expect(html).to include('
|---|