|
1 | 1 |
|
2 | 2 |
|
| 3 | +<!DOCTYPE html> |
| 4 | + |
3 | 5 | <html> |
4 | 6 |
|
5 | 7 | <head> |
| 8 | + <meta charset=utf-8> |
| 9 | + |
| 10 | + <title> |
| 11 | + HTML Editor |
| 12 | + </title> |
| 13 | + |
| 14 | + <meta name=description content='Free online HTML editor with live preview and export to GitHub, cloud storage, or your local filesystem and many more'> |
6 | 15 |
|
7 | | - <title>html-editor</title> |
8 | | - <meta name=description content='Free online HTML editor with live preview and export to GitHub, cloud storage, or your local filesystem'> |
9 | | - |
10 | | - <base href='https://javascript-2020.github.io/utils/editors/html-editor/'> |
11 | | - <link rel=canonical href='https://ext-code.com/utils/editors/html-editor/'> |
| 16 | + <base href='https://ext-code.com/utils/editors/html-editor/'> |
| 17 | + <link rel=canonical href='https://ext-code.com/utils/editors/html-editor/html-editor.html'> |
12 | 18 |
|
13 | 19 | <meta name=viewport content='width=device-width, initial-scale=1'> |
14 | 20 | <link rel=icon type='image/png' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAA81BMVEVHcEwdsVkes1rX3+LX3+LY3+PX3uMesFjY3uPO3dwfs1ses1uvvMYcslhWsHjI0tges1oes1sYg0Mes1q0wsupyMGsu8Wwvccfs1scpFNmp4SvvceuvMbY3uLH0diIt6AYf0LY3+O+ytGvvcceslnY3+OvvccntGBUv4Ifs1ses1oYgEMes1o4rmkYgEIWfkDY3+PR3d5gwosfs1scslkbslja3+QltWCJzKl3yJw+unJvxpZEvHc5uW5Ovn2Xz7Oe0bloxJGQzq/V3uHB2tLK3Nmx1seDy6S72M0yt2nT29+5xs4ttmak073H0Neq1MJUwIN+FK5WAAAAMHRSTlMABZmgCPdqRhW9P+v97gEDCzP47uUcCVbf9/6myVmts9Z7Z4Fnuzap59tfMGP+TXy36Sa+AAABb0lEQVQoz43Th07DMBAG4LILlC4KtGXvDV71yHZ2Stf7Pw2maaWMCvilxJE+ne07KZXKf9LYzKZR0Or1RjY3x3k+3wKZDDsn+frtPH+dPfzKtdOj1UzpnGu3x2WmwAsCADzFnZN6kaHvedz2IRhOJpOLaoFhJGCAHMGhOgDcFxhyFIIQ+SHisMx0bI0pcHWPOtaUltmXIoC6SwMh/TIDEMsoRiGMZAyym699fF7Obx6PHRlAxwc5fr1q9z06H4kfej/d53in3e4HsJjdo8Vc9nq9d1TK0+NdM60+xISQwSLpp3rjbmvBzGDE1CwppaElBBumwTDG+3spH2huMtAFckM+425iTXWukSw7M40LbNkJc2PXiYVt5HjquKEghj1iXHCdKx7kqi2T/3DCOGKjSDFjGebqbEkMPmLRbICF7tiRzpZ8yDR1c5OoBWsjgk3TQshacqurmsTzZ7GkeU77br6tr8xLOrVKfW1l6n//e991X2nBP19YTgAAAABJRU5ErkJggg=='> |
|
38 | 44 |
|
39 | 45 | <script src='https://libs.ext-code.com/js/dom/component/component.js'></script> |
40 | 46 |
|
| 47 | + |
| 48 | + |
| 49 | + |
| 50 | + |
41 | 51 | <script> |
42 | 52 | /* |
43 | 53 | navigator.serviceWorker.register('/service-worker.js') |
|
66 | 76 | }); |
67 | 77 |
|
68 | 78 | </script> |
| 79 | + |
| 80 | + |
| 81 | + |
| 82 | + |
69 | 83 |
|
70 | 84 | <script init> |
71 | 85 | console.clear(); |
72 | 86 | console.log('html-editor-v2.0.html'); |
| 87 | + console.log(); |
73 | 88 | console.json=v=>console.log(JSON.stringify(v,null,4)); |
74 | | - var version = 'v1.0'; |
| 89 | + var df=true,version='v1.0' |
| 90 | + ; |
75 | 91 |
|
76 | | - var df = true; |
77 | | - |
78 | | - |
79 | | - var ext,$,datatype,menumod,keydown |
| 92 | + var ace; |
| 93 | + |
| 94 | + var ext,$,datatype,menumod,keydown,debug |
80 | 95 | ; |
81 | 96 |
|
82 | | - //mod.menu = {}; |
83 | | - //mod.utils = {}; |
84 | | - |
85 | 97 |
|
86 | 98 | var menu; |
87 | 99 |
|
|
91 | 103 | var editor; |
92 | 104 | var output; |
93 | 105 | var log; |
94 | | - |
95 | | - |
96 | | - var root; |
97 | | - |
98 | | - var autosave; |
99 | 106 |
|
100 | 107 |
|
101 | | - |
102 | | - |
103 | | - var slider = {}; |
104 | | - |
105 | | - var ui = {}; |
106 | | - ui.mode = 'vert'; |
107 | | - |
108 | | - |
109 | | - |
110 | | - var btn = {}; |
111 | | - |
112 | | - |
113 | 108 | //: |
114 | 109 |
|
115 | 110 |
|
116 | | - mod.stack.add = init; |
117 | | - |
118 | 111 | async function init(){ |
119 | 112 | debug('init',version); |
120 | 113 |
|
121 | 114 | //keydown = keydown(); |
122 | 115 | menu = menumod(); |
123 | 116 |
|
124 | 117 |
|
125 | | - hdr = mod.hdr; |
126 | | - |
| 118 | + hdr = mod['editors-hdr']; |
127 | 119 | mainmenu = mod['main-menu']; |
128 | 120 | filemod = mod.filemod; |
129 | 121 | publish = mod.publish; |
|
140 | 132 | output.initmod({ext,$}); |
141 | 133 | log.initmod({ext,$}); |
142 | 134 |
|
143 | | - await mainmenu.init(); |
144 | | - await hdr.init(); |
145 | | - await filemod.init(); |
146 | | - await publish.init(); |
147 | | - await editor.init(); |
148 | | - await output.init(); |
149 | | - await log.init(); |
| 135 | + await Promise.all([ |
| 136 | + mainmenu.init(), |
| 137 | + hdr.init(), |
| 138 | + filemod.init(), |
| 139 | + publish.init(), |
| 140 | + editor.init(), |
| 141 | + output.init(), |
| 142 | + log.init(), |
| 143 | + ]); |
150 | 144 |
|
151 | 145 | //: |
152 | 146 |
|
|
155 | 149 | menu.on.close = focus; |
156 | 150 |
|
157 | 151 |
|
158 | | - await initdom(document.body); |
| 152 | + initdom(document.body); |
159 | 153 |
|
160 | 154 |
|
161 | 155 |
|
162 | 156 | }//init |
163 | 157 |
|
164 | | - |
165 | | - //: |
166 | | - |
167 | 158 |
|
168 | 159 | (async()=>{ |
169 | 160 |
|
|
175 | 166 | 'js/dom/$.js', |
176 | 167 | 'js/core/datatype.js', |
177 | 168 | 'js/dom/menumod/menumod.js', |
178 | | - 'js/dom/keydown/keydown.js' |
| 169 | + 'js/dom/keydown/keydown.js', |
| 170 | + 'js/debug/debug.js', |
179 | 171 | ); |
180 | | - [$,datatype,menumod,keydown] = await promise; |
| 172 | + [$,datatype,menumod,keydown,debug] = await promise; |
181 | 173 |
|
182 | 174 | mod.stack.complete; |
183 | 175 |
|
|
247 | 239 | <body> |
248 | 240 |
|
249 | 241 |
|
250 | | - <hdr component=grp v2.0> |
| 242 | + <editors-hdr component=grp> |
251 | 243 | <img class=title src='images/html-editor.png' style='top:-5px;height:55px' alt='html editor'> |
252 | 244 | <h1 slot=seo-hdr class=visually-hidden>html editor</h1> |
253 | | - <span slot=date>24 Aug 2025</span> |
254 | | - </hdr> |
| 245 | + <time slot=date datetime=2025-10-30>30 Oct 2025</time> |
| 246 | + </editors-hdr> |
255 | 247 |
|
256 | 248 |
|
257 | 249 | <div id=hdr> |
258 | 250 |
|
259 | | - <main-menu component=page v2.0></main-menu> |
| 251 | + <main-menu component=page></main-menu> |
260 | 252 |
|
261 | 253 | <filemod component v2.0></filemod> |
262 | 254 |
|
@@ -303,7 +295,27 @@ <h1 slot=seo-hdr class=visually-hidden>html editor</h1> |
303 | 295 |
|
304 | 296 | <script> |
305 | 297 |
|
306 | | - |
| 298 | + |
| 299 | + var root; |
| 300 | + |
| 301 | + var autosave; |
| 302 | + |
| 303 | + |
| 304 | + |
| 305 | + |
| 306 | + var slider = {}; |
| 307 | + |
| 308 | + var ui = {}; |
| 309 | + ui.mode = 'vert'; |
| 310 | + |
| 311 | + |
| 312 | + |
| 313 | + var btn = {}; |
| 314 | + |
| 315 | + |
| 316 | + //: |
| 317 | + |
| 318 | + |
307 | 319 | async function initdom(rootnode){ //c |
308 | 320 | debug('initdom'); |
309 | 321 | root = rootnode; |
|
0 commit comments