Skip to content

Commit a9b2ded

Browse files
save file
1 parent f334fed commit a9b2ded

File tree

1 file changed

+69
-69
lines changed

1 file changed

+69
-69
lines changed

utils/x509/generate-certificate-chain/v2.0/generate-certificate-chain-v2.0.html

Lines changed: 69 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
<head>
99
<meta charset=utf-8>
10-
10+
1111
<title>
1212
Generate Certificate Chain
1313
</title>
@@ -19,7 +19,7 @@
1919

2020
<link rel=icon type='image/x-icon' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAABO1BMVEVHcEwAAABoQBqkcBqSXBGfaBGIUw52Sh6pchRxRBeveR2qbg+5p5FuQQ2baRFySB19SQyaaRjJtJFaMwt8Sg5mOxGZaBhxRh2TZhK4hiqucwrDkzy5hSyBWCqCVSX////8/f3s8PPf08X+/v/DomfLu53Nqmrdz7b79ujz9Pbn5+fx6NmhoaHHuKbNvaXu7u7Q0dH48uLd3d3069ysknLhzq+YmJjt0qHcyrD+y1r+vVDY2NjHxcPi4+Oxl3W+q5DFsJO1lmWmiWXAonG4nHHNzc3V1dWxsbH/2GT4r0u/v7/Wxa779uvr28Du5tmtj2W/nGLy47D733T7+O/8+/j48M6srKzo1LC3t7f43YTWx7PKpWLVuITe0bv51Wjo0K3syJ3ruXP4ymbhxpLzv2f37tjIrHqeflrQwKXcKNlbAAAAH3RSTlMAAaOYaW1hjXV+jV3+bh+YV6L+GGMipJUPm0Xe4+Lf7dZ8OwAAAWZJREFUKM+901lXgkAYgGErNcXSzKW9ocZSkATBrRB3zT0XJNdsr///CxplUczbei84nHnOB8MBDIb/aQO1ZvnQsjXP6fU6nfMzDLPYNT72ha5W+8Q0tu0n876VWqeYXeP8uDHx65uMLQv2D0fXK41OjuR5WyZf8zXq4XBAV/3NNGdjpvDd4gSeFQiw3KN8eWO6EGo1BbLK8DhahQQrymzSOMsRVJIVaJpMMlKfJugSS0x1XGXJ+z4Vi1ExSpLQgYnKbE6nQtkgJEmSF5hSVSoV+WKyyBA6BmB2YwBJWt1a1CjzTuTmIaisQRys8J7MuBoAYrgXgCCxxE14oUSAbrvTGfRUdiPONRfTsP1ULpcH3YRZno7kEC+mxfgt6vVDYZfjXDeNx+9Q7+GhW3ln1tSXPE3A2Za5l0qlEsdruwp7HGdNAFHKI3HT54YINEbzmctfpRbssW6jDhybS1ld679mtb/+c34AUBhYzLcT6lgAAAAASUVORK5CYII='>
2121
<meta name=viewport content='width=device-width, initial-scale=1'>
22-
22+
2323
<script type='application/ld+json'>
2424
{
2525
"@context" : "https://schema.org",
@@ -35,79 +35,79 @@
3535
"offers" : {"@type":"Offer","price":"0","priceCurrency":"GBP"}
3636
}
3737
</script>
38-
3938

40-
<script src='https://libs.ext-code.com/js/dom/component/component.js'></script>
41-
39+
40+
<script src='https://libs.ext-code.com/js/dom/component/v3.0/component.js'></script>
41+
4242
<script init>
4343
console.clear();
4444
console.log('create-certificate-chain.html');
4545
console.log();
4646
console.json=v=>console.log(JSON.stringify(v,null,4));
4747
var df=true,did='html'
4848
;
49-
49+
5050
var ext;
5151
var $;
5252
var datatype;
5353
var menumod;
5454
var keydown;
55-
55+
5656
var hdr;
5757

5858

5959
//:
6060

6161

6262
async function init(){
63-
64-
63+
64+
6565
await load();
66-
67-
66+
67+
6868
menu = menumod();
69-
69+
7070
mod.base.add({ext,$,datatype,keydown,menu,menumod});
7171

72-
72+
7373
hdr = mod['x509-hdr'];
74-
75-
74+
75+
7676
hdr.initmod({ext,$,menu});
77-
77+
7878
await Promise.all([
7979
hdr.init(),
8080
]);
81-
82-
83-
81+
82+
83+
8484
initdom(document.body);
85-
86-
85+
86+
8787
}//init
88-
89-
88+
89+
9090
(async()=>{
9191

9292
mod.stack.add;
9393

9494
({ext} = await import('https://libs.ext-code.com/js/io/ext-loader/ext-loader.m.js'));
95-
95+
9696
var promise = ext.load.libs(
9797
'js/dom/$.js',
9898
'js/core/datatype.js',
9999
'js/dom/menumod/menumod.js',
100100
'js/dom/keydown/keydown.js',
101101
);
102102
[$,datatype,menumod,keydown] = await promise;
103-
103+
104104
mod.stack.complete;
105-
105+
106106
})();
107107

108108

109109
async function load(){
110-
110+
111111
var txt = localStorage['node-forge'];
112112
if(!txt){
113113
var url = 'https://cdn.jsdelivr.net/npm/node-forge/+esm';
@@ -122,58 +122,58 @@
122122
pki = nodeforge.default.pki;
123123

124124
}//load
125-
126-
127-
125+
126+
127+
128128
</script>
129129

130130

131131
<style>
132-
132+
133133
html
134134
{height:100%;font-family:arial}
135135
body
136136
{height:calc(100% - 42px);margin:20px;display:flex;flex-direction:column}
137-
137+
138138
x509-hdr
139139
{margin-bottom:20px}
140-
141-
142-
.hdr
140+
141+
142+
.hdr
143143
{font-family:arial;position:relative;margin-top:0;margin-bottom:20px;background:white;
144144
padding-bottom:10px;border-bottom:3px solid lightblue}
145-
.hdr-icon
145+
.hdr-icon
146146
{display:inline-block;text-align:center;background:whitesmoke;border-radius:5px;
147147
border:1px solid lightgray;padding:5px 3px 0px;cursor:pointer;margin-right:10px;
148148
min-width:50px}
149-
.hdr-icon-img
149+
.hdr-icon-img
150150
{width:25px;height:25px}
151-
.hdr-icon-label
151+
.hdr-icon-label
152152
{margin:2px 0 0}
153-
.hdr-title
153+
.hdr-title
154154
{position:absolute;left:0;right:0;z-index:0;margin:0 auto}
155155
.hdr-date
156156
{float:right}
157-
157+
158158
input
159159
{padding:5px 10px;font-size:16px}
160160
#chain
161161
{}
162162
pre
163163
{flex:1;border:1px solid lightgray;padding:10px}
164-
165-
164+
165+
166166
.visually-hidden
167167
{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;
168168
clip:rect(0 0 0 0) !important;white-space:nowrap !important;border:0 !important}
169-
170-
169+
170+
171171
</style>
172-
172+
173173
</head>
174-
174+
175175
<body>
176-
176+
177177
<x509-hdr component=grp>
178178
<h1 class=visually-hidden>
179179
create certificate chain
@@ -183,9 +183,9 @@ <h1 class=visually-hidden>
183183
15 Nov 2025
184184
</time>
185185
</x509-hdr>
186-
187-
188-
<!--
186+
187+
188+
<!--
189189
<div class=hdr>
190190
<a class=hdr-icon href='https://javascript-2020.github.io/'>
191191
<img class=hdr-icon-img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAqFBMVEVHcEwjmpckopg9f3YxpJM6r5kjq58Nmp0Nn6QRoKExrpshnpgtoJUdoZwYnZ02spwYpaEmrZ8djpINn6Qtrp4inpcjqZ8SoqM3s5w0sp01spwrr58vr50oqpwdnpo0sZwtrJwUpKMMoaUtq50op5ssqpopppseqaM1sJwgpJ0NoaUSoaI3kYobqaMSpKQrr58PoaMVpaIOoKMLpKcXpaEkqp8Rm58YrKUL0CR4AAAAOHRSTlMACBkBCyinK59CQhUOLyKjqbUGpZgSYn6rp5WsekcmgkyWmCkmNB7AYTiuVgKuuo91i2PLn2lJ7kISMf4AAAElSURBVCjPrdPXloIwEAbgBDFKCRo6SO8lYEHd93+zxV7Zm2WuSL6Tk/MPEwBGLFH8SzFCeFiDXNeJ+7GtGds1D+ghDzzPzXX6xlJbq75s5KVLiJsSB76xIhd22Mz0pkyRnqzW2htD/SeUjL0EQKY60nqRvTLXGl64PR/SfDVxVvETZ123w8vN9Ur5YKUF4R9cd/WxqiePgCs3IMF1QXcVt6vK59tSqyjN4hwQbhS8mUuvWTLbwYtTQGhEjLHVPprv+4ztQ8AeRVn50uipBcXg/IPgfPaFF+z1axyeMEkcJwwdYHHZINQ02gALS49lJcQMci/COGzdue8apRQwNz4tYvM207JSRVEUhvtW6KeBIFVVbds07xPncZfCfWSK+UtNJ/9+VL/nTBuX7xjDZwAAAABJRU5ErkJggg==' />
@@ -219,8 +219,8 @@ <h1 class=visually-hidden>
219219

220220
<pre id=view>
221221
</pre>
222-
223-
222+
223+
224224
</body>
225225

226226

@@ -235,24 +235,24 @@ <h1 class=visually-hidden>
235235

236236
var btn = {};
237237

238-
238+
239239
//:
240240

241241

242242
function initdom(rootnode){
243-
244-
243+
244+
245245
hdr.initdom();
246-
246+
247247
var btns = $('#btns');
248248

249249
$(btns,'#clear').onclick = btn.clear;
250250
$(btns,'#add').onclick = btn.add;
251251
$(btns,'#save').onclick = btn.save;
252-
253-
252+
253+
254254
chain = $('#chain');
255-
255+
256256

257257
view = $('#view')
258258
view.replaceChildren();
@@ -262,20 +262,20 @@ <h1 class=visually-hidden>
262262

263263
}//initdom
264264

265-
265+
266266
//:
267267

268268

269269
btn.clear = function(){
270-
270+
271271
list = [];
272272
view.textContent = list.join('\n');
273273

274274
}//clear
275275

276276

277277
btn.add = async function(){
278-
278+
279279
var txt = await load.file();
280280
list.push(txt);
281281

@@ -285,7 +285,7 @@ <h1 class=visually-hidden>
285285

286286

287287
btn.save = function(){
288-
288+
289289
var cert = list.join('\n');
290290
var blob = new Blob([cert]);
291291
var url = window.URL.createObjectURL(blob);
@@ -299,7 +299,7 @@ <h1 class=visually-hidden>
299299

300300

301301
load.file = function(){
302-
302+
303303
var resolve,promise=new Promise(res=>resolve=res);
304304

305305
var input = document.createElement('input');
@@ -311,7 +311,7 @@ <h1 class=visually-hidden>
311311

312312

313313
async function onchange(){
314-
314+
315315
var txt = await input.files[0].text();
316316
resolve(txt);
317317

@@ -324,15 +324,15 @@ <h1 class=visually-hidden>
324324
}//display
325325

326326

327-
328-
327+
328+
329329

330330

331331

332332

333333
</script>
334-
335-
334+
335+
336336
</html>
337337

338338

0 commit comments

Comments
 (0)