ponkotsu-md-editor 0.2.21 → 0.2.23
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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/markdown_editor.js +20 -6
- data/lib/ponkotsu/md/editor/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 16a9c0354424ad70f97194db931a8246bf36ed7cd4a17de48f297d331079a908
|
|
4
|
+
data.tar.gz: fa7196c6c5423e2ff434f4da458245b18fa843df869467d426290f6ddaea592b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 913bd17c810f3f030d74d2d737d3accb8f3af9b2655fb1f95f97e85c419045900b08a268dfb69b10788644caaeec4ad80e28b7075a9a2ce645b168bd8c4b0553
|
|
7
|
+
data.tar.gz: a1596408bf76295f7f940aa2621eee49e4d1772fc189912e19cca2a0281f09687d73e1704ba5e57d20f86e684f479b681166c0e08479847736bb0cddcef9eedd
|
|
@@ -31,9 +31,7 @@
|
|
|
31
31
|
|
|
32
32
|
// Wait for DOM content loaded
|
|
33
33
|
function onReady(callback) {
|
|
34
|
-
|
|
35
|
-
document.addEventListener('DOMContentLoaded', callback);
|
|
36
|
-
|
|
34
|
+
const run = () => {
|
|
37
35
|
const textarea = document.getElementById('editor_content');
|
|
38
36
|
const hiddenField = document.getElementById('content_hidden_field');
|
|
39
37
|
|
|
@@ -41,11 +39,21 @@
|
|
|
41
39
|
const syncToHidden = () => {
|
|
42
40
|
hiddenField.value = (textarea.innerText || '').replaceAll('\u00A0', ' ');
|
|
43
41
|
};
|
|
44
|
-
|
|
42
|
+
|
|
45
43
|
textarea.addEventListener('blur', syncToHidden);
|
|
46
|
-
|
|
44
|
+
|
|
45
|
+
// 初期化時に同期
|
|
47
46
|
syncToHidden();
|
|
48
47
|
|
|
48
|
+
// フォーム送信時に確実に同期(最重要)
|
|
49
|
+
const form = textarea.closest('form');
|
|
50
|
+
if (form) {
|
|
51
|
+
form.addEventListener('submit', function(e) {
|
|
52
|
+
syncToHidden();
|
|
53
|
+
console.log('Form submitting with content length:', hiddenField.value.length);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
49
57
|
// 初期状態でプレースホルダを表示するための空要素チェック
|
|
50
58
|
function updatePlaceholderVisibility() {
|
|
51
59
|
// <br>のみの場合も空とみなす
|
|
@@ -63,8 +71,14 @@
|
|
|
63
71
|
textarea.addEventListener('input', debounce(updatePlaceholderVisibility, 150));
|
|
64
72
|
textarea.addEventListener('blur', updatePlaceholderVisibility);
|
|
65
73
|
}
|
|
66
|
-
} else {
|
|
67
74
|
callback();
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
if (document.readyState === 'loading') {
|
|
78
|
+
document.addEventListener('DOMContentLoaded', run);
|
|
79
|
+
document.addEventListener('turbo:load', run);
|
|
80
|
+
} else {
|
|
81
|
+
run();
|
|
68
82
|
}
|
|
69
83
|
}
|
|
70
84
|
|