roll-right 0.1.4 → 0.2.1

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.
package/testme.txt ADDED
@@ -0,0 +1,3885 @@
1
+
2
+ > roll-right@0.1.4 prepare
3
+ > node bin/index.js --phase prepare --sources ../websites/template-configs/ --generator generate.json --structure parsed.json
4
+
5
+ -------------------------------------------------------------
6
+ roll-right static content management and module publication
7
+ -------------------------------------------------------------
8
+ Operating phase: prepare
9
+ Using input configuration for generator: ../websites/template-configs/generate.json
10
+ Using output to configuration for template formation: ../websites/template-configs/parsed.json
11
+ script::params::[alt-script]/pin_and_scroll_vars.tjs
12
+ {
13
+ type: 'script',
14
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/pin_and_scroll_vars.tjs',
15
+ data: '@params<{scroll_section_count : %number%}>\n' +
16
+ '\n' +
17
+ 'window.scroll_section_count = @{scroll_section_count}',
18
+ recursive: {
19
+ _is_loop: false,
20
+ params_def: { scroll_section_count: '%number%' },
21
+ executables: { execs: [], imports: false }
22
+ }
23
+ }
24
+ script::params::[alt-script]/pin_and_scroll_vars.tjs
25
+ {
26
+ type: 'script',
27
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/pin_and_scroll_vars.tjs',
28
+ data: '@params<{scroll_section_count : %number%}>\n' +
29
+ '\n' +
30
+ 'window.scroll_section_count = @{scroll_section_count}',
31
+ recursive: {
32
+ _is_loop: false,
33
+ params_def: { scroll_section_count: '%number%' },
34
+ executables: { execs: [], imports: false }
35
+ }
36
+ }
37
+ lift_remaining_imports ------- /home/richard/GitHub/alphas/alpha-copious/pre-template/shop-kiosk.skel script::params::[alt-script]/pin_and_scroll_vars.tjs
38
+ {
39
+ type: 'script',
40
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/pin_and_scroll_vars.tjs',
41
+ data: 'window.scroll_section_count = 3',
42
+ recursive: {
43
+ _is_loop: false,
44
+ params_def: { scroll_section_count: '%number%' },
45
+ executables: { execs: [], imports: false }
46
+ },
47
+ backup_data: '@params<{scroll_section_count : %number%}>\n' +
48
+ '\n' +
49
+ 'window.scroll_section_count = @{scroll_section_count}',
50
+ evaluations: { scroll_section_count: '3' }
51
+ }
52
+ ====================================================
53
+ lift_remaining_imports ------- /home/richard/GitHub/alphas/alpha-copious/pre-template/shop-kiosk.skel script::params::[alt-script]/pin_and_scroll_vars.tjs
54
+ {
55
+ type: 'script',
56
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/pin_and_scroll_vars.tjs',
57
+ data: 'window.scroll_section_count = 3',
58
+ recursive: {
59
+ _is_loop: false,
60
+ params_def: { scroll_section_count: '%number%' },
61
+ executables: { execs: [], imports: false }
62
+ },
63
+ backup_data: '@params<{scroll_section_count : %number%}>\n' +
64
+ '\n' +
65
+ 'window.scroll_section_count = @{scroll_section_count}',
66
+ evaluations: { scroll_section_count: '3' }
67
+ }
68
+ ====================================================
69
+ {
70
+ '/home/richard/GitHub/alphas/alpha-copious/pre-template/shop-kiosk.skel': {
71
+ defaults: {
72
+ defaults: {
73
+ top_level: true,
74
+ uses_config_vars: 'shops',
75
+ path_abreviations: {
76
+ '[alpha-copious]': '[github]/alphas/alpha-copious',
77
+ '[github]': '~/GitHub',
78
+ '[websites]': '[alphas]/websites'
79
+ },
80
+ ext_default_dir: {
81
+ tmplt: '[alpha-copious]/html',
82
+ js: '[alpha-copious]/client',
83
+ svg: '[alpha-copious]/icons',
84
+ css: '[alpha-copious]/css'
85
+ },
86
+ top_dir_location: {
87
+ script: '[alpha-copious]/client',
88
+ 'for-humans': '[alpha-copious]/for-humans',
89
+ files: '[alpha-copious]/html'
90
+ }
91
+ },
92
+ final: { markup: false, scripts: false },
93
+ skeleton: [
94
+ 'html:start_doc_head<<',
95
+ 'files::header.tmplt<<',
96
+ 'bundle::bundle_13.js',
97
+ 'bundle::shop-kiosk_bundle.js',
98
+ 'link<css>::shared_styles.css<<',
99
+ 'html:end_head<<',
100
+ 'html:start_style<<',
101
+ 'css::quick_view.css<<',
102
+ 'html:end_style<<',
103
+ 'html:start_script<<',
104
+ 'files<js>::top_vars<<',
105
+ 'html:end_script<<',
106
+ 'html:start_body<<',
107
+ 'files::params::nav_bar_V.smplt',
108
+ 'files::MAP-sections_frame.smplt',
109
+ 'files::flexy_items_A-main.tmplt<<',
110
+ 'files::footer_A.tmplt<<',
111
+ 'verbatim::{\n<!-- start dynamic content -->\n}',
112
+ 'files::squashable_menu_A.tmplt<<',
113
+ 'files::calc::contact_box<<${start=100}',
114
+ 'files::calc::about_box<<${start++}',
115
+ 'files::calc::thankyou_box<<${start++}',
116
+ 'files::calc::topicBox_1<<${start++}',
117
+ 'files::calc::topicBox_2<<${start++}',
118
+ 'files::calc::topicBox_3<<${start++}',
119
+ 'files::calc::register<<${start++}',
120
+ 'files::calc::login<<${start++}',
121
+ 'files::intergalactic-explain.tmplt<<',
122
+ 'template::{\n {{{advertPopups.content}}}\n}',
123
+ 'html:end_body_html<<',
124
+ 'html:start_script<<',
125
+ 'verbatim::{\n' +
126
+ '// === --------------------------------------- === --------------------------------------- === --------------------------------------\n' +
127
+ '// APPLICATIONS\n' +
128
+ '// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --\n' +
129
+ '}',
130
+ 'script::[alt-script]/floating_window_controls.js<<',
131
+ 'script::params::[alt-script]/pin_and_scroll_vars.tjs',
132
+ 'script::[alt-script]/section_scrolling.js<<',
133
+ 'html:end_script<<'
134
+ ],
135
+ files: [
136
+ 'header.tmplt<<',
137
+ 'params::nav_bar_V.smplt',
138
+ 'MAP-sections_frame.smplt',
139
+ 'flexy_items_A-main.tmplt<<',
140
+ 'footer_A.tmplt<<',
141
+ 'squashable_menu_A.tmplt<<',
142
+ 'calc::contact_box<<${start=100}',
143
+ 'calc::about_box<<${start++}',
144
+ 'calc::thankyou_box<<${start++}',
145
+ 'calc::topicBox_1<<${start++}',
146
+ 'calc::topicBox_2<<${start++}',
147
+ 'calc::topicBox_3<<${start++}',
148
+ 'calc::register<<${start++}',
149
+ 'calc::login<<${start++}',
150
+ 'intergalactic-explain.tmplt<<'
151
+ ],
152
+ css: [ 'quick_view.css<<' ],
153
+ scripts: [
154
+ '[alt-script]/floating_window_controls.js<<',
155
+ 'params::[alt-script]/pin_and_scroll_vars.tjs',
156
+ '[alt-script]/section_scrolling.js<<'
157
+ ],
158
+ bundles: [ 'bundle_13.js', 'shop-kiosk_bundle.js' ],
159
+ parameterized: {
160
+ 'files::MAP-sections_frame.smplt': {
161
+ el: 'list',
162
+ '_type<el>': [
163
+ {
164
+ group_name: 'docs',
165
+ 'SOURCE-LINK': '{{{shop_docs}}}',
166
+ 'FRAME-ACTIONS': "onclick=''"
167
+ },
168
+ {
169
+ group_name: 'blog',
170
+ 'SOURCE-LINK': '{{{shop_blog}}}',
171
+ 'FRAME-ACTIONS': "onclick=''"
172
+ },
173
+ {
174
+ group_name: 'search',
175
+ 'SOURCE-LINK': '{{{shop_search}}}',
176
+ 'FRAME-ACTIONS': "onclick=''"
177
+ }
178
+ ]
179
+ },
180
+ 'script::params::[alt-script]/pin_and_scroll_vars.tjs': {
181
+ scroll_section_count: { file: false, tree: false, data: '3' },
182
+ '_params<scroll_section_count>': { scroll_section_count: '%number%' }
183
+ },
184
+ 'files::params::nav_bar_V.smplt': {
185
+ lr_div: {
186
+ file: 'left-right-div.smplt',
187
+ tree: {
188
+ logo: {
189
+ file: 'logo.tmplt',
190
+ tree: false,
191
+ data: '\n' +
192
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
193
+ ' {{{svgLogo.content}}}\n' +
194
+ '</a>\n' +
195
+ '\n'
196
+ },
197
+ spacer: {
198
+ file: 'spacer.tmplt',
199
+ tree: false,
200
+ data: '\n' +
201
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
202
+ ' {{{relatedAsset.content}}}\n' +
203
+ '</a>\n'
204
+ },
205
+ menu: {
206
+ file: 'shroom.tmplt',
207
+ tree: {
208
+ mushroom: {
209
+ file: 'mushroom-menu-icon.svg',
210
+ tree: false,
211
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
212
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
213
+ '</svg>'
214
+ },
215
+ '_params<>': {}
216
+ },
217
+ data: '<li id="squashMenu"\n' +
218
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
219
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
220
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
221
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
222
+ '</svg>\n' +
223
+ '</li>',
224
+ recursive: {
225
+ _is_loop: false,
226
+ params_def: { mushroom: '' },
227
+ executables: {
228
+ execs: [
229
+ {
230
+ replace: '>>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<',
231
+ condition: { cond: '@{mushroom}', variable: 'mushroom' },
232
+ positive_exec: { pos: '@{mushroom}' },
233
+ negative_exec: {
234
+ neg: '$$icons::mushroom-menu-icon.svg<<',
235
+ replace: '$$icons::mushroom-menu-icon.svg<<',
236
+ file: [
237
+ {
238
+ replace: '$$icons::mushroom-menu-icon.svg<<',
239
+ type: 'icons',
240
+ file: 'mushroom-menu-icon.svg',
241
+ path_finder: 'icons',
242
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
243
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
244
+ '</svg>'
245
+ }
246
+ ]
247
+ }
248
+ }
249
+ ],
250
+ imports: [
251
+ {
252
+ replace: undefined,
253
+ type: 'icons',
254
+ file: 'mushroom-menu-icon.svg',
255
+ path_finder: 'icons',
256
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
257
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
258
+ '</svg>'
259
+ }
260
+ ]
261
+ }
262
+ },
263
+ subst_recursive: [
264
+ {
265
+ params_def: { mushroom: '' },
266
+ conds: [
267
+ {
268
+ replace: '>>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<',
269
+ replacer: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
270
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
271
+ '</svg>'
272
+ }
273
+ ],
274
+ data: '<li id="squashMenu"\n' +
275
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
276
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
277
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
278
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
279
+ '</svg>\n' +
280
+ '</li>\n'
281
+ }
282
+ ],
283
+ conds: [
284
+ {
285
+ replace: '>>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<',
286
+ condition: { cond: '@{mushroom}', variable: 'mushroom' },
287
+ positive_exec: { pos: '@{mushroom}' },
288
+ negative_exec: {
289
+ neg: '$$icons::mushroom-menu-icon.svg<<',
290
+ replace: '$$icons::mushroom-menu-icon.svg<<',
291
+ file: [
292
+ {
293
+ replace: '$$icons::mushroom-menu-icon.svg<<',
294
+ type: 'icons',
295
+ file: 'mushroom-menu-icon.svg',
296
+ path_finder: 'icons',
297
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
298
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
299
+ '</svg>'
300
+ }
301
+ ]
302
+ }
303
+ }
304
+ ],
305
+ backup_data: '<li id="squashMenu"\n' +
306
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
307
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
308
+ ' >>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<\n' +
309
+ '</li>\n'
310
+ },
311
+ '_params<logo,spacer,menu>': { logo: '%file%', spacer: '%file%', menu: '%file%' }
312
+ },
313
+ data: '//\n' +
314
+ '<div style="width:100%;height:fit-content">\n' +
315
+ '<table style="width:100%">\n' +
316
+ ' <tr>\n' +
317
+ ' <td style="width:62;height:63">\n' +
318
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
319
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
320
+ ' // otherwise the result is a final stage substitution\n' +
321
+ ' \n' +
322
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
323
+ ' {{{svgLogo.content}}}\n' +
324
+ '</a>\n' +
325
+ '\n' +
326
+ '\n' +
327
+ ' </a>\n' +
328
+ ' </td>\n' +
329
+ ' <td>\n' +
330
+ ' <ul class="navbar-nav">\n' +
331
+ ' <li class="nav-item">\n' +
332
+ ' \n' +
333
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
334
+ ' {{{relatedAsset.content}}}\n' +
335
+ '</a>\n' +
336
+ '\n' +
337
+ ' </li>\n' +
338
+ ' <li id="squashMenu"\n' +
339
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
340
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
341
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
342
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
343
+ '</svg>\n' +
344
+ '</li>\n' +
345
+ ' </ul>\n' +
346
+ ' </td>\n' +
347
+ ' <td style="text-align: center;">\n' +
348
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
349
+ ' </td>\n' +
350
+ ' <td>\n' +
351
+ ' &nbsp;\n' +
352
+ ' </td>\n' +
353
+ ' </tr>\n' +
354
+ '</table>\n' +
355
+ '</div>\n' +
356
+ '//',
357
+ recursive: {
358
+ _is_loop: false,
359
+ params_def: {
360
+ logo: '\n' +
361
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
362
+ ' {{{svgLogo.content}}}\n' +
363
+ '</a>\n' +
364
+ '\n',
365
+ spacer: '\n' +
366
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
367
+ ' {{{relatedAsset.content}}}\n' +
368
+ '</a>\n',
369
+ menu: '<li id="squashMenu"\n' +
370
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
371
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
372
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
373
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
374
+ '</svg>\n' +
375
+ '</li>'
376
+ },
377
+ executables: {
378
+ execs: [
379
+ {
380
+ replace: '>>@{logo} ? @{logo} : {{{svgLogo.content}}}<<',
381
+ condition: { cond: '@{logo}', variable: 'logo' },
382
+ positive_exec: { pos: '@{logo}' },
383
+ negative_exec: { neg: '{{{svgLogo.content}}}' }
384
+ },
385
+ {
386
+ replace: '>>@{menu} ? @{menu} : @nothing<<',
387
+ condition: { cond: '@{menu}', variable: 'menu' },
388
+ positive_exec: { pos: '@{menu}' },
389
+ negative_exec: { neg: '' }
390
+ }
391
+ ],
392
+ imports: []
393
+ }
394
+ },
395
+ subst_recursive: [
396
+ {
397
+ params_def: {
398
+ logo: '\n' +
399
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
400
+ ' {{{svgLogo.content}}}\n' +
401
+ '</a>\n' +
402
+ '\n',
403
+ spacer: '\n' +
404
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
405
+ ' {{{relatedAsset.content}}}\n' +
406
+ '</a>\n',
407
+ menu: '<li id="squashMenu"\n' +
408
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
409
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
410
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
411
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
412
+ '</svg>\n' +
413
+ '</li>'
414
+ },
415
+ conds: [
416
+ {
417
+ replace: '>>@{logo} ? @{logo} : {{{svgLogo.content}}}<<',
418
+ replacer: '\n' +
419
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
420
+ ' {{{svgLogo.content}}}\n' +
421
+ '</a>\n' +
422
+ '\n'
423
+ },
424
+ {
425
+ replace: '>>@{menu} ? @{menu} : @nothing<<',
426
+ replacer: '<li id="squashMenu"\n' +
427
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
428
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
429
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
430
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
431
+ '</svg>\n' +
432
+ '</li>'
433
+ }
434
+ ],
435
+ data: '//\n' +
436
+ '<div style="width:100%;height:fit-content">\n' +
437
+ '<table style="width:100%">\n' +
438
+ ' <tr>\n' +
439
+ ' <td style="width:62;height:63">\n' +
440
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
441
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
442
+ ' // otherwise the result is a final stage substitution\n' +
443
+ ' \n' +
444
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
445
+ ' {{{svgLogo.content}}}\n' +
446
+ '</a>\n' +
447
+ '\n' +
448
+ '\n' +
449
+ ' </a>\n' +
450
+ ' </td>\n' +
451
+ ' <td>\n' +
452
+ ' <ul class="navbar-nav">\n' +
453
+ ' <li class="nav-item">\n' +
454
+ ' \n' +
455
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
456
+ ' {{{relatedAsset.content}}}\n' +
457
+ '</a>\n' +
458
+ '\n' +
459
+ ' </li>\n' +
460
+ ' <li id="squashMenu"\n' +
461
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
462
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
463
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
464
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
465
+ '</svg>\n' +
466
+ '</li>\n' +
467
+ ' </ul>\n' +
468
+ ' </td>\n' +
469
+ ' <td style="text-align: center;">\n' +
470
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
471
+ ' </td>\n' +
472
+ ' <td>\n' +
473
+ ' &nbsp;\n' +
474
+ ' </td>\n' +
475
+ ' </tr>\n' +
476
+ '</table>\n' +
477
+ '</div>\n' +
478
+ '//'
479
+ }
480
+ ],
481
+ conds: [
482
+ {
483
+ replace: '>>@{logo} ? @{logo} : {{{svgLogo.content}}}<<',
484
+ condition: { cond: '@{logo}', variable: 'logo' },
485
+ positive_exec: { pos: '@{logo}' },
486
+ negative_exec: { neg: '{{{svgLogo.content}}}' }
487
+ },
488
+ {
489
+ replace: '>>@{menu} ? @{menu} : @nothing<<',
490
+ condition: { cond: '@{menu}', variable: 'menu' },
491
+ positive_exec: { pos: '@{menu}' },
492
+ negative_exec: { neg: '' }
493
+ }
494
+ ],
495
+ backup_data: '@params<{ logo : %file%, spacer : %file%, menu : %file% }>\n' +
496
+ '//\n' +
497
+ '<div style="width:100%;height:fit-content">\n' +
498
+ '<table style="width:100%">\n' +
499
+ ' <tr>\n' +
500
+ ' <td style="width:62;height:63">\n' +
501
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
502
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
503
+ ' // otherwise the result is a final stage substitution\n' +
504
+ ' >>@{logo} ? @{logo} : {{{svgLogo.content}}}<<\n' +
505
+ ' </a>\n' +
506
+ ' </td>\n' +
507
+ ' <td>\n' +
508
+ ' <ul class="navbar-nav">\n' +
509
+ ' <li class="nav-item">\n' +
510
+ ' @{spacer}\n' +
511
+ ' </li>\n' +
512
+ ' >>@{menu} ? @{menu} : @nothing<<\n' +
513
+ ' </ul>\n' +
514
+ ' </td>\n' +
515
+ ' <td style="text-align: center;">\n' +
516
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
517
+ ' </td>\n' +
518
+ ' <td>\n' +
519
+ ' &nbsp;\n' +
520
+ ' </td>\n' +
521
+ ' </tr>\n' +
522
+ '</table>\n' +
523
+ '</div>\n' +
524
+ '//\n'
525
+ },
526
+ logout: {
527
+ file: 'logout.tmplt',
528
+ tree: false,
529
+ data: '\n<button class="mini">logout</button>'
530
+ },
531
+ '_params<lr_div,logout>': { lr_div: '%file%', logout: '%file%' }
532
+ }
533
+ },
534
+ skeleton_map: {
535
+ 'html(1):start_doc_head': '\n<!doctype html>\n<html>\n<head>\n',
536
+ 'files::header.tmplt': {
537
+ type: 'tmplt',
538
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/header.tmplt',
539
+ data: '<meta charset="utf-8">\n' +
540
+ '<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\n' +
541
+ '<meta name="author" content="R. Leddy" />\n' +
542
+ '<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">\n' +
543
+ '<meta id="theme-color" name="theme-color" content="#452770">\n' +
544
+ '\n' +
545
+ '<link rel="canonical" href="{{canonical}}">\n' +
546
+ '\n' +
547
+ '<title>{{pageTitle}}</title>\n' +
548
+ '<meta name="description" content="{{pageDescription}}">\n' +
549
+ '\n' +
550
+ '\n' +
551
+ "<script defer src='{{primary_bundle}}'></script>",
552
+ recursive: {
553
+ _is_loop: false,
554
+ params_def: { 'AUTHOR%config%': '%config%' },
555
+ executables: { execs: [], imports: false }
556
+ },
557
+ backup_data: '<meta charset="utf-8">\n' +
558
+ '<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\n' +
559
+ '<meta name="author" content="@{AUTHOR%config%}" />\n' +
560
+ '<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">\n' +
561
+ '<meta id="theme-color" name="theme-color" content="#452770">\n' +
562
+ '\n' +
563
+ '<link rel="canonical" href="{{canonical}}">\n' +
564
+ '\n' +
565
+ '<title>{{pageTitle}}</title>\n' +
566
+ '<meta name="description" content="{{pageDescription}}">\n' +
567
+ '\n' +
568
+ '\n' +
569
+ "<script defer src='{{primary_bundle}}'></script>",
570
+ subst_recursive: [
571
+ {
572
+ params_def: { 'AUTHOR%config%': '%config%' },
573
+ conds: [],
574
+ data: '<meta charset="utf-8">\n' +
575
+ '<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\n' +
576
+ '<meta name="author" content="R. Leddy" />\n' +
577
+ '<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">\n' +
578
+ '<meta id="theme-color" name="theme-color" content="#452770">\n' +
579
+ '\n' +
580
+ '<link rel="canonical" href="{{canonical}}">\n' +
581
+ '\n' +
582
+ '<title>{{pageTitle}}</title>\n' +
583
+ '<meta name="description" content="{{pageDescription}}">\n' +
584
+ '\n' +
585
+ '\n' +
586
+ "<script defer src='{{primary_bundle}}'></script>"
587
+ }
588
+ ],
589
+ conds: []
590
+ },
591
+ 'bundle::44b9d596dbddaeaabc88f15f0bd790a29199451d': "\n<script defer src='bundle_13.js'></script>\n",
592
+ 'bundle::6f7aafc1e2bbfbdc29741059414bff35a51e9891': "\n<script defer src='shop-kiosk_bundle.js'></script>\n",
593
+ 'link::53408966b15c9e09f6566162fe7605b6a4c8783b': "\n<link rel='stylesheet' href='shared_styles.css'>\n",
594
+ 'html(2):end_head': '\n</head>\n',
595
+ 'html(3):start_style': '\n<style>\n',
596
+ 'css::quick_view.css': {
597
+ type: 'css',
598
+ file: '/home/richard/GitHub/alphas/alpha-copious/css/quick_view.css',
599
+ data: 'a {\n text-decoration: none;\n}'
600
+ },
601
+ 'html(4):end_style': '\n</style>\n',
602
+ 'html(5):start_script': '\n<script lang="JavaScript" >\n',
603
+ 'files<js>::top_vars': {
604
+ type: 'script',
605
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/top_vars.js',
606
+ data: 'var g_siteURL = window.location.host;\n' +
607
+ 'var g_finalizers = []\n' +
608
+ 'var g_loginStateViewHolders = {}\n' +
609
+ 'var g_loginValueViews = {}\n' +
610
+ 'var g_LoggedIn = false\n' +
611
+ 'var g_global_web3_public_identity = false'
612
+ },
613
+ 'html(6):end_script': '\n</script>\n',
614
+ 'html(7):start_body': '\n<body>\n',
615
+ 'files::params::nav_bar_V.smplt': {
616
+ type: 'tmplt',
617
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/nav_bar_V.smplt',
618
+ data: '<nav id="mainNav">\n' +
619
+ '\t//\n' +
620
+ '<div style="width:100%;height:fit-content">\n' +
621
+ '<table style="width:100%">\n' +
622
+ ' <tr>\n' +
623
+ ' <td style="width:62;height:63">\n' +
624
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
625
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
626
+ ' // otherwise the result is a final stage substitution\n' +
627
+ ' \n' +
628
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
629
+ ' {{{svgLogo.content}}}\n' +
630
+ '</a>\n' +
631
+ '\n' +
632
+ '\n' +
633
+ ' </a>\n' +
634
+ ' </td>\n' +
635
+ ' <td>\n' +
636
+ ' <ul class="navbar-nav">\n' +
637
+ ' <li class="nav-item">\n' +
638
+ ' \n' +
639
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
640
+ ' {{{relatedAsset.content}}}\n' +
641
+ '</a>\n' +
642
+ '\n' +
643
+ ' </li>\n' +
644
+ ' <li id="squashMenu"\n' +
645
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
646
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
647
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
648
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
649
+ '</svg>\n' +
650
+ '</li>\n' +
651
+ ' </ul>\n' +
652
+ ' </td>\n' +
653
+ ' <td style="text-align: center;">\n' +
654
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
655
+ ' </td>\n' +
656
+ ' <td>\n' +
657
+ ' &nbsp;\n' +
658
+ ' </td>\n' +
659
+ ' </tr>\n' +
660
+ '</table>\n' +
661
+ '</div>\n' +
662
+ '//\n' +
663
+ '\t<div class="very-short conditional-hide" {{custom-logout-styles}}>\n' +
664
+ '<button class="mini">logout</button></div>\n' +
665
+ '</nav>',
666
+ recursive: {
667
+ _is_loop: false,
668
+ params_def: {
669
+ lr_div: '//\n' +
670
+ '<div style="width:100%;height:fit-content">\n' +
671
+ '<table style="width:100%">\n' +
672
+ ' <tr>\n' +
673
+ ' <td style="width:62;height:63">\n' +
674
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
675
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
676
+ ' // otherwise the result is a final stage substitution\n' +
677
+ ' \n' +
678
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
679
+ ' {{{svgLogo.content}}}\n' +
680
+ '</a>\n' +
681
+ '\n' +
682
+ '\n' +
683
+ ' </a>\n' +
684
+ ' </td>\n' +
685
+ ' <td>\n' +
686
+ ' <ul class="navbar-nav">\n' +
687
+ ' <li class="nav-item">\n' +
688
+ ' \n' +
689
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
690
+ ' {{{relatedAsset.content}}}\n' +
691
+ '</a>\n' +
692
+ '\n' +
693
+ ' </li>\n' +
694
+ ' <li id="squashMenu"\n' +
695
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
696
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
697
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
698
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
699
+ '</svg>\n' +
700
+ '</li>\n' +
701
+ ' </ul>\n' +
702
+ ' </td>\n' +
703
+ ' <td style="text-align: center;">\n' +
704
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
705
+ ' </td>\n' +
706
+ ' <td>\n' +
707
+ ' &nbsp;\n' +
708
+ ' </td>\n' +
709
+ ' </tr>\n' +
710
+ '</table>\n' +
711
+ '</div>\n' +
712
+ '//',
713
+ logout: '\n<button class="mini">logout</button>'
714
+ },
715
+ executables: {
716
+ execs: [
717
+ {
718
+ replace: '>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<',
719
+ condition: { cond: '@{logout}', variable: 'logout' },
720
+ positive_exec: {
721
+ pos: '<div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div>'
722
+ },
723
+ negative_exec: { neg: '' }
724
+ }
725
+ ],
726
+ imports: []
727
+ }
728
+ },
729
+ backup_data: '@params<{lr_div : %file%, logout : %file%}>\n' +
730
+ '<nav id="mainNav">\n' +
731
+ '\t@{lr_div}\n' +
732
+ '\t>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<\n' +
733
+ '</nav>',
734
+ subst_recursive: [
735
+ {
736
+ params_def: {
737
+ lr_div: '//\n' +
738
+ '<div style="width:100%;height:fit-content">\n' +
739
+ '<table style="width:100%">\n' +
740
+ ' <tr>\n' +
741
+ ' <td style="width:62;height:63">\n' +
742
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
743
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
744
+ ' // otherwise the result is a final stage substitution\n' +
745
+ ' \n' +
746
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
747
+ ' {{{svgLogo.content}}}\n' +
748
+ '</a>\n' +
749
+ '\n' +
750
+ '\n' +
751
+ ' </a>\n' +
752
+ ' </td>\n' +
753
+ ' <td>\n' +
754
+ ' <ul class="navbar-nav">\n' +
755
+ ' <li class="nav-item">\n' +
756
+ ' \n' +
757
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
758
+ ' {{{relatedAsset.content}}}\n' +
759
+ '</a>\n' +
760
+ '\n' +
761
+ ' </li>\n' +
762
+ ' <li id="squashMenu"\n' +
763
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
764
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
765
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
766
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
767
+ '</svg>\n' +
768
+ '</li>\n' +
769
+ ' </ul>\n' +
770
+ ' </td>\n' +
771
+ ' <td style="text-align: center;">\n' +
772
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
773
+ ' </td>\n' +
774
+ ' <td>\n' +
775
+ ' &nbsp;\n' +
776
+ ' </td>\n' +
777
+ ' </tr>\n' +
778
+ '</table>\n' +
779
+ '</div>\n' +
780
+ '//',
781
+ logout: '\n<button class="mini">logout</button>'
782
+ },
783
+ conds: [
784
+ {
785
+ replace: '>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<',
786
+ replacer: '<div class="very-short conditional-hide" {{custom-logout-styles}}>\n' +
787
+ '<button class="mini">logout</button></div>'
788
+ }
789
+ ],
790
+ data: '<nav id="mainNav">\n' +
791
+ '\t//\n' +
792
+ '<div style="width:100%;height:fit-content">\n' +
793
+ '<table style="width:100%">\n' +
794
+ ' <tr>\n' +
795
+ ' <td style="width:62;height:63">\n' +
796
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
797
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
798
+ ' // otherwise the result is a final stage substitution\n' +
799
+ ' \n' +
800
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
801
+ ' {{{svgLogo.content}}}\n' +
802
+ '</a>\n' +
803
+ '\n' +
804
+ '\n' +
805
+ ' </a>\n' +
806
+ ' </td>\n' +
807
+ ' <td>\n' +
808
+ ' <ul class="navbar-nav">\n' +
809
+ ' <li class="nav-item">\n' +
810
+ ' \n' +
811
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
812
+ ' {{{relatedAsset.content}}}\n' +
813
+ '</a>\n' +
814
+ '\n' +
815
+ ' </li>\n' +
816
+ ' <li id="squashMenu"\n' +
817
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
818
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
819
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
820
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
821
+ '</svg>\n' +
822
+ '</li>\n' +
823
+ ' </ul>\n' +
824
+ ' </td>\n' +
825
+ ' <td style="text-align: center;">\n' +
826
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
827
+ ' </td>\n' +
828
+ ' <td>\n' +
829
+ ' &nbsp;\n' +
830
+ ' </td>\n' +
831
+ ' </tr>\n' +
832
+ '</table>\n' +
833
+ '</div>\n' +
834
+ '//\n' +
835
+ '\t<div class="very-short conditional-hide" {{custom-logout-styles}}>\n' +
836
+ '<button class="mini">logout</button></div>\n' +
837
+ '</nav>'
838
+ }
839
+ ],
840
+ conds: [
841
+ {
842
+ replace: '>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<',
843
+ condition: { cond: '@{logout}', variable: 'logout' },
844
+ positive_exec: {
845
+ pos: '<div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div>'
846
+ },
847
+ negative_exec: { neg: '' }
848
+ }
849
+ ]
850
+ },
851
+ 'files::MAP-sections_frame.smplt': {
852
+ type: 'tmplt',
853
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/MAP-sections_frame.smplt',
854
+ data: '@list<el><{ group_name <- @<el[1]>, SOURCE-LINK <- @<el[2]>}>\n' +
855
+ '<@el>\n' +
856
+ '<section id="@<el[1]>_container" class="content-container" {{@<el[1]>_styles}} >\n' +
857
+ '{{{SOURCE_LINK}}}\n' +
858
+ '</section>\n' +
859
+ '</@el>',
860
+ recursive: {
861
+ _is_loop: true,
862
+ params_def: {
863
+ group_name: '@<el[1]>',
864
+ 'SOURCE-LINK': '@<el[2]>',
865
+ _var_name: 'el'
866
+ },
867
+ executables: { execs: [], imports: false }
868
+ },
869
+ subst_recursive: [
870
+ {
871
+ params_def: {
872
+ group_name: '@<el[1]>',
873
+ 'SOURCE-LINK': '@<el[2]>',
874
+ _var_name: 'el'
875
+ },
876
+ conds: [],
877
+ data: '@list<el><{ group_name <- @<el[1]>, SOURCE-LINK <- @<el[2]>}>\n' +
878
+ '<@el>\n' +
879
+ '<section id="@<el[1]>_container" class="content-container" {{@<el[1]>_styles}} >\n' +
880
+ '{{{SOURCE_LINK}}}\n' +
881
+ '</section>\n' +
882
+ '</@el>'
883
+ }
884
+ ],
885
+ conds: [],
886
+ backup_data: '@list<el><{ group_name <- @<el[1]>, SOURCE-LINK <- @<el[2]>}>\n' +
887
+ '<@el>\n' +
888
+ '<section id="@{group_name}_container" class="content-container" {{@{group_name}_styles}} >\n' +
889
+ '{{{SOURCE_LINK}}}\n' +
890
+ '</section>\n' +
891
+ '</@el>'
892
+ },
893
+ 'files::flexy_items_A-main.tmplt': {
894
+ type: 'tmplt',
895
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/flexy_items_A-main.tmplt',
896
+ data: '<main>\n' +
897
+ '\n' +
898
+ '\t<div class="items">\n' +
899
+ '\t\t<div class="item">\n' +
900
+ '\t\t\t{{{svgBannerFrame.content}}}\n' +
901
+ '\t\t</div>\n' +
902
+ '\t\t<div id="greet_and_meet_1" class="item">\n' +
903
+ '\t\t\t<div id="desktopCenter" class="shortviz" ></div>\n' +
904
+ '\t\t\t<p class="extra-i" style="color:navy">\n' +
905
+ '\t\t\t<span style="font-weight:bold;">{{conversation}}</span> chat :: Join our conversations.\n' +
906
+ '\t\t\t</p>\n' +
907
+ '\t\t\t<br>\n' +
908
+ '\t\t\t<a id="a4179" href="javascript:chat_opener()" style="cursor:pointer" >\n' +
909
+ '\t\t\t<p class="extra-i" style="text-align:center" >\n' +
910
+ '\t\t\t{{{chat.button.content}}}\n' +
911
+ '\t\t\t</p>\n' +
912
+ '\t\t\t</a>\n' +
913
+ '\t\t</div>\n' +
914
+ '\t\t<div class="item">\n' +
915
+ '\t\t\t<div class="longviz" >&nbsp;</div>\n' +
916
+ '\t\t\t<p class="extra-i" style="color:darkred">\n' +
917
+ '\t\t\tBrowse the blog or check out some demonstrations.\n' +
918
+ '\t\t\t</p>\n' +
919
+ '\t\t\t<br>\n' +
920
+ '\t\t\t<p class="extra-i" style="text-align:center">\n' +
921
+ '\t\t\t\t{{{public_content_access.content}}}\n' +
922
+ '\t\t\t</p>\n' +
923
+ '\t\t\t<div id="desktopRight" class="shortviz" ></div>\n' +
924
+ '\t\t</div>\n' +
925
+ '\t\t<div id="greet_and_meet_2" class="item">\n' +
926
+ '\t\t\t<p class="extra-i" style="color:darkgreen;font-weight:bold;">\n' +
927
+ '\t\t\tFor Your Personal Use > Login\n' +
928
+ '\t\t\t</p>\n' +
929
+ '\t\t\t<hr><br>\n' +
930
+ '\t\t\t<a id="a4199" href="javascript:login_process()" style="cursor:pointer">\n' +
931
+ '\t\t\t<p class="extra-i" >\n' +
932
+ '\t\t\t\t{{{login_button.button.content}}}\n' +
933
+ '\t\t\t</p>\n' +
934
+ '\t\t\t</a>\n' +
935
+ '\t\t</div>\n' +
936
+ '\t\t<div id="audios_1" class="item" style="display:none;">\n' +
937
+ '\t\t\t<p class="extra-i" style="color:darkgreen;font-weight:bold;">\n' +
938
+ '\t\t\tYour session is going\n' +
939
+ '\t\t\t</p>\n' +
940
+ '\t\t\t<hr><br>\n' +
941
+ '\t\t\t<a id="b5199" href="javascript:logout_process()" style="cursor:pointer">\n' +
942
+ '\t\t\t<p class="extra-i" >\n' +
943
+ '\t\t\t\t{{{logout_button.button.content}}}\n' +
944
+ '\t\t\t</p>\n' +
945
+ '\t\t\t</a>\n' +
946
+ '\t\t</div>\t\t\n' +
947
+ '\t\t<div id="lowerFiller" class="fillLowerWrap">\n' +
948
+ '\t\t\t<div class="fillLower">\n' +
949
+ '\t\t\t\talpha test\n' +
950
+ '\t\t\t</div>\n' +
951
+ '\t\t</div>\n' +
952
+ '\t</div>\n' +
953
+ '</main>'
954
+ },
955
+ 'files::footer_A.tmplt': {
956
+ type: 'tmplt',
957
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/footer_A.tmplt',
958
+ data: '<footer>\n' +
959
+ '\t<ul class="footer-list">\n' +
960
+ '\t\t<li>\n' +
961
+ '\t\t\t<a href="{{canonical}}" target="{{canonical}}-again">copyright &copy; {{copyRightYear}} {{companyShortLink}}</a>\n' +
962
+ '\t\t\t<span class="status-style" id="page-error-message">status: good</span>\n' +
963
+ '\t\t</li>\n' +
964
+ '\t</ul>\n' +
965
+ '</footer>'
966
+ },
967
+ 'verbatim::95e0657b3716593b896721f68e0587f8afb85ce0': '\n<!-- start dynamic content -->\n',
968
+ 'files::squashable_menu_A.tmplt': {
969
+ type: 'tmplt',
970
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/squashable_menu_A.tmplt',
971
+ data: '<div id="squashMenuContainer" >\n\tempty content\n</div>'
972
+ },
973
+ 'files::calc::contact_box${start=100}': {
974
+ file: 'fadable_box.tmplt',
975
+ key_values: {
976
+ Z_INDEX: 'f@init{$}',
977
+ BOX_NAME: 'f@name{parent}',
978
+ INSERT: ''
979
+ },
980
+ path_finder: 'html',
981
+ op: '=',
982
+ evaluations: { BOX_NAME: 'contact_box', INSERT: '' },
983
+ data: '\n' +
984
+ '<div id="contact_box" class="fade_able" style="z-index:100" >\n' +
985
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
986
+ `\t\t<span class="closer_x" onmousedown="closefader('contact_box')">x</span>\n` +
987
+ '\t</div>\n' +
988
+ '\t<div class="fade_able_content" >\n' +
989
+ '\t\t{{{contact_box.content }}}\n' +
990
+ '\t</div>\n' +
991
+ '</div>\n',
992
+ backup_data: '\n' +
993
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
994
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
995
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
996
+ '\t</div>\n' +
997
+ '\t<div class="fade_able_content" >\n' +
998
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
999
+ '\t</div>\n' +
1000
+ '</div>\n'
1001
+ },
1002
+ 'files::calc::about_box${start++}': {
1003
+ file: 'fadable_box.tmplt',
1004
+ key_values: {
1005
+ Z_INDEX: 'f@incr{$}',
1006
+ BOX_NAME: 'f@name{parent}',
1007
+ INSERT: ''
1008
+ },
1009
+ path_finder: 'html',
1010
+ op: '++',
1011
+ evaluations: { BOX_NAME: 'about_box', INSERT: '' },
1012
+ data: '\n' +
1013
+ '<div id="about_box" class="fade_able" style="z-index:101" >\n' +
1014
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1015
+ `\t\t<span class="closer_x" onmousedown="closefader('about_box')">x</span>\n` +
1016
+ '\t</div>\n' +
1017
+ '\t<div class="fade_able_content" >\n' +
1018
+ '\t\t{{{about_box.content }}}\n' +
1019
+ '\t</div>\n' +
1020
+ '</div>\n',
1021
+ backup_data: '\n' +
1022
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1023
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1024
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1025
+ '\t</div>\n' +
1026
+ '\t<div class="fade_able_content" >\n' +
1027
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1028
+ '\t</div>\n' +
1029
+ '</div>\n'
1030
+ },
1031
+ 'files::calc::thankyou_box${start++}': {
1032
+ file: 'fadable_box.tmplt',
1033
+ key_values: {
1034
+ Z_INDEX: 'f@incr{$}',
1035
+ BOX_NAME: 'f@name{parent}',
1036
+ INSERT: "onclick='hide_thankyou_box(this)'"
1037
+ },
1038
+ path_finder: 'html',
1039
+ op: '++',
1040
+ evaluations: {
1041
+ BOX_NAME: 'thankyou_box',
1042
+ INSERT: "onclick='hide_thankyou_box(this)'"
1043
+ },
1044
+ data: '\n' +
1045
+ `<div id="thankyou_box" class="fade_able" style="z-index:102" onclick='hide_thankyou_box(this)' >\n` +
1046
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1047
+ `\t\t<span class="closer_x" onmousedown="closefader('thankyou_box')">x</span>\n` +
1048
+ '\t</div>\n' +
1049
+ '\t<div class="fade_able_content" >\n' +
1050
+ '\t\t{{{thankyou_box.content }}}\n' +
1051
+ '\t</div>\n' +
1052
+ '</div>\n',
1053
+ backup_data: '\n' +
1054
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1055
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1056
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1057
+ '\t</div>\n' +
1058
+ '\t<div class="fade_able_content" >\n' +
1059
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1060
+ '\t</div>\n' +
1061
+ '</div>\n'
1062
+ },
1063
+ 'files::calc::topicBox_1${start++}': {
1064
+ file: 'fadable_box.tmplt',
1065
+ key_values: {
1066
+ Z_INDEX: 'f@incr{$}',
1067
+ BOX_NAME: 'f@name{parent}',
1068
+ INSERT: ''
1069
+ },
1070
+ path_finder: 'html',
1071
+ op: '++',
1072
+ evaluations: { BOX_NAME: 'topicBox_1', INSERT: '' },
1073
+ data: '\n' +
1074
+ '<div id="topicBox_1" class="fade_able" style="z-index:103" >\n' +
1075
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1076
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_1')">x</span>\n` +
1077
+ '\t</div>\n' +
1078
+ '\t<div class="fade_able_content" >\n' +
1079
+ '\t\t{{{topicBox_1.content }}}\n' +
1080
+ '\t</div>\n' +
1081
+ '</div>\n',
1082
+ backup_data: '\n' +
1083
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1084
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1085
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1086
+ '\t</div>\n' +
1087
+ '\t<div class="fade_able_content" >\n' +
1088
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1089
+ '\t</div>\n' +
1090
+ '</div>\n'
1091
+ },
1092
+ 'files::calc::topicBox_2${start++}': {
1093
+ file: 'fadable_box.tmplt',
1094
+ key_values: {
1095
+ Z_INDEX: 'f@incr{$}',
1096
+ BOX_NAME: 'f@name{parent}',
1097
+ INSERT: ''
1098
+ },
1099
+ path_finder: 'html',
1100
+ op: '++',
1101
+ evaluations: { BOX_NAME: 'topicBox_2', INSERT: '' },
1102
+ data: '\n' +
1103
+ '<div id="topicBox_2" class="fade_able" style="z-index:104" >\n' +
1104
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1105
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_2')">x</span>\n` +
1106
+ '\t</div>\n' +
1107
+ '\t<div class="fade_able_content" >\n' +
1108
+ '\t\t{{{topicBox_2.content }}}\n' +
1109
+ '\t</div>\n' +
1110
+ '</div>\n',
1111
+ backup_data: '\n' +
1112
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1113
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1114
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1115
+ '\t</div>\n' +
1116
+ '\t<div class="fade_able_content" >\n' +
1117
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1118
+ '\t</div>\n' +
1119
+ '</div>\n'
1120
+ },
1121
+ 'files::calc::topicBox_3${start++}': {
1122
+ file: 'fadable_box.tmplt',
1123
+ key_values: {
1124
+ Z_INDEX: 'f@incr{$}',
1125
+ BOX_NAME: 'f@name{parent}',
1126
+ INSERT: ''
1127
+ },
1128
+ path_finder: 'html',
1129
+ op: '++',
1130
+ evaluations: { BOX_NAME: 'topicBox_3', INSERT: '' },
1131
+ data: '\n' +
1132
+ '<div id="topicBox_3" class="fade_able" style="z-index:105" >\n' +
1133
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1134
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_3')">x</span>\n` +
1135
+ '\t</div>\n' +
1136
+ '\t<div class="fade_able_content" >\n' +
1137
+ '\t\t{{{topicBox_3.content }}}\n' +
1138
+ '\t</div>\n' +
1139
+ '</div>\n',
1140
+ backup_data: '\n' +
1141
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1142
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1143
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1144
+ '\t</div>\n' +
1145
+ '\t<div class="fade_able_content" >\n' +
1146
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1147
+ '\t</div>\n' +
1148
+ '</div>\n'
1149
+ },
1150
+ 'files::calc::register${start++}': {
1151
+ file: 'solidable_box.tmplt',
1152
+ key_values: {
1153
+ Z_INDEX: 'f@incr{$}',
1154
+ BOX_NAME: 'f@name{parent}',
1155
+ INSERT: ''
1156
+ },
1157
+ path_finder: 'html',
1158
+ op: '++',
1159
+ evaluations: { BOX_NAME: 'register', INSERT: '' },
1160
+ data: '<div id="register" class="solid_able" style="z-index:106" >\n' +
1161
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1162
+ `\t\t<span class="closer_x" onmousedown="closesolid('register')">x</span>\n` +
1163
+ '\t</div>\n' +
1164
+ '\t<div class="fade_able_content" >\n' +
1165
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1166
+ '\t\t\t{{{register.content}}}\n' +
1167
+ '\t\t</div>\n' +
1168
+ '\t</div>\n' +
1169
+ '</div>\n',
1170
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
1171
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1172
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
1173
+ '\t</div>\n' +
1174
+ '\t<div class="fade_able_content" >\n' +
1175
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1176
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
1177
+ '\t\t</div>\n' +
1178
+ '\t</div>\n' +
1179
+ '</div>\n'
1180
+ },
1181
+ 'files::calc::login${start++}': {
1182
+ file: 'solidable_box.tmplt',
1183
+ key_values: {
1184
+ Z_INDEX: 'f@incr{$}',
1185
+ BOX_NAME: 'f@name{parent}',
1186
+ INSERT: ''
1187
+ },
1188
+ path_finder: 'html',
1189
+ op: '++',
1190
+ evaluations: { BOX_NAME: 'login', INSERT: '' },
1191
+ data: '<div id="login" class="solid_able" style="z-index:107" >\n' +
1192
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1193
+ `\t\t<span class="closer_x" onmousedown="closesolid('login')">x</span>\n` +
1194
+ '\t</div>\n' +
1195
+ '\t<div class="fade_able_content" >\n' +
1196
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1197
+ '\t\t\t{{{login.content}}}\n' +
1198
+ '\t\t</div>\n' +
1199
+ '\t</div>\n' +
1200
+ '</div>\n',
1201
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
1202
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1203
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
1204
+ '\t</div>\n' +
1205
+ '\t<div class="fade_able_content" >\n' +
1206
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1207
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
1208
+ '\t\t</div>\n' +
1209
+ '\t</div>\n' +
1210
+ '</div>\n'
1211
+ },
1212
+ 'files::intergalactic-explain.tmplt': {
1213
+ type: 'tmplt',
1214
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/intergalactic-explain.tmplt',
1215
+ data: '<style>\n' +
1216
+ '\t.glactic-id-link {\n' +
1217
+ '\t\tmargin: 6px;\n' +
1218
+ '\t\tpadding: 2px;\n' +
1219
+ '\t\tcursor: pointer;\n' +
1220
+ '\t\tfont-weight: bold;\n' +
1221
+ '\t}\n' +
1222
+ '</style>\n' +
1223
+ '<div id="intergalactic-explain" class="solid_able" style="z-index:1000" >\n' +
1224
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1225
+ `\t\t<span class="closer_x" onmousedown="closesolid('intergalactic-explain')">x</span>\n` +
1226
+ '\t</div>\n' +
1227
+ '\t<div class="fade_able_content" >\n' +
1228
+ `\t\t<div onmousedown="closesolid('intergalactic-explain')" style="min-width: 400px;min-height: 300px;">\n` +
1229
+ '\t\t\t<div style="padding-left:6px;padding-right:6px" >\n' +
1230
+ `\t\t\t\t<div style="margin-bottom: 3px;font-weight:bolder;font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;">\n` +
1231
+ '\t\t\t\t\tWhat is an intergalactic identity?\n' +
1232
+ '\t\t\t\t</div>\n' +
1233
+ '\t\t\t\t<blockquote style="padding-left:5%;background-color: rgb(255, 254, 245);color:rgb(2, 71, 2);">\n' +
1234
+ '\t\t\t\t\tIt is a string with a special format derived from a secure hash of content that you make up about yourself.\n' +
1235
+ '\t\t\t\t</blockquote>\n' +
1236
+ '\t\t\t\t<div style="margin-bottom: 4px;">\n' +
1237
+ '\t\t\t\t\tYou may use this identity anywhere that accepts it which means other website and concerns.\n' +
1238
+ '\t\t\t\t</div>\n' +
1239
+ `\t\t\t\t<div style="margin-bottom: 2px;font-weight:bolder;font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;">\n` +
1240
+ '\t\t\t\t\tHow this site uses your intergalactic identity:\n' +
1241
+ '\t\t\t\t</div>\n' +
1242
+ '\t\t\t\t<div style="margin-top:3px;padding-left:3%;background-color: rgb(255, 255, 254);color:rgb(22, 48, 5);">\n' +
1243
+ '\t\t\t\t\t<div style="margin-top:3px;margin-bottom:3px;">\n' +
1244
+ '\t\t\t\t\t\t<ul style="list-style-type:disc;margin: 2px;">\n' +
1245
+ '\t\t\t\t\t\t\t<li> This website associates your intergalactic identity with responses to your messages (e.g contact). \n' +
1246
+ '\t\t\t\t\t\t\t\tYou may return to this site to retrieve responses to your messages.\n' +
1247
+ '\t\t\t\t\t\t\t</li>\n' +
1248
+ '\t\t\t\t\t\t\t<li> \n' +
1249
+ '\t\t\t\t\t\t\t\tYou may use your intergalactic identity to start a session with this site (i.e. login).\n' +
1250
+ '\t\t\t\t\t\t\t</li>\n' +
1251
+ '\t\t\t\t\t\t</ul>\t\n' +
1252
+ '\t\t\t\t\t</div>\n' +
1253
+ '\t\t\t\t</div>\n' +
1254
+ '\t\t\t\t<div>\n' +
1255
+ '\t\t\t\t\t<div style="margin-top:3px;" >\n' +
1256
+ '\t\t\t\t\t\t<div style="padding:3px;color:darkslateblue;border: solid 1px rgba(65, 128, 148, 0.527)">\n' +
1257
+ '\t\t\t\t\t\t\t<div style="margin:2px">Your personal information will not be stored on our servers.</div>\n' +
1258
+ '\t\t\t\t\t\t\t<div style="margin:2px">Your personal information will not be tied to our domain within your browser storage.</div>\n' +
1259
+ '\t\t\t\t\t\t\t<div style="margin:2px"><b>Instead...</b> your personal information will be associated with a virtual URL tied to your identity.</div>\n' +
1260
+ '\t\t\t\t\t\t</div>\n' +
1261
+ '\t\t\t\t\t\t<div style="padding:3px;margin-top:4px;">\n' +
1262
+ '\t\t\t\t\t\t\tYou will be given a personal <span style="font-weight: bolder;">URL framework page</span>\n' +
1263
+ '\t\t\t\t\t\t</div>\n' +
1264
+ '\t\t\t\t\t\t<div style="padding:4px;color:rgb(43, 71, 46)" >\n' +
1265
+ '\t\t\t\t\t\t\t<p style="padding:4px;color:rgb(43, 71, 46)">\n' +
1266
+ '\t\t\t\t\t\t\t\tThe links here can help lead you to tools that help open pages within your URL framework page enabling you to\n' +
1267
+ '\t\t\t\t\t\t\t\twork with your personal preferences within those pages.\n' +
1268
+ '\t\t\t\t\t\t\t</p>\n' +
1269
+ '\t\t\t\t\t\t\t<p style="padding:4px;color:rgb(43, 71, 46)">\n' +
1270
+ '\t\t\t\t\t\t\t\tThe pages you open may use personal data by asking your framework page to make requests on their behalf.\n' +
1271
+ '\t\t\t\t\t\t\t\tFor example, an e-commerce page\n' +
1272
+ '\t\t\t\t\t\t\t\twill not ask you for your credit card number, but will ask your personal page to carry out a transaction its behalf.\n' +
1273
+ '\t\t\t\t\t\t\t</p>\n' +
1274
+ '\t\t\t\t\t\t\t<p style="padding:4px;color:rgb(43, 71, 46)">\n' +
1275
+ '\t\t\t\t\t\t\t\tYou will have complete control over your personal URL framework page. But, you can maintain it in any way you see fit.\n' +
1276
+ '\t\t\t\t\t\t\t</p>\n' +
1277
+ '\t\t\t\t\t\t</div>\n' +
1278
+ '\t\t\t\t\t</div>\n' +
1279
+ '\t\t\t\t</div>\n' +
1280
+ '\t\t\t\t<div style="padding-left:5%;background-color: rgb(255, 254, 245);color:rgb(2, 71, 2);" >\n' +
1281
+ '\t\t\t\t\tBasically, your personal data will be stored in one place and never leave your browser unless you say so. You will not login to this site, but you may allow the \n' +
1282
+ '\t\t\t\t\tsite to log into you - by starting a sessions. The session merely knows you are there and does not ask to know too much about you.\n' +
1283
+ '\t\t\t\t</div>\t\n' +
1284
+ '\t\t\t</div>\n' +
1285
+ '\t\t</div>\n' +
1286
+ '\t\t<div style="padding-left:2%;background-color: rgb(255, 254, 245);color:rgb(7, 104, 7);" >\n' +
1287
+ '\t\t\t<!-- link goes here -->\n' +
1288
+ '\t\t\t<span class="glactic-id-link" onclick="galactic_id_maker_opener()">Follow this link to create your intergalactic identity</span>\n' +
1289
+ '\t\t</div>\n' +
1290
+ '\t\t<br><br><br><br><br><br><br>&nbsp;\n' +
1291
+ '\t</div>\n' +
1292
+ '</div>\n' +
1293
+ '<script>\n' +
1294
+ '\n' +
1295
+ '\t\n' +
1296
+ '</script>'
1297
+ },
1298
+ 'template::{\n {{{advertPopups.content}}}\n}': { type: 'template', data: '{\n {{{advertPopups.content}}}' },
1299
+ 'html(8):end_body_html': '\n</body>\n</html>\n',
1300
+ 'html(9):start_script': '\n<script lang="JavaScript" >\n',
1301
+ 'verbatim::62859a79b38ec8550889db5268aa7bae33c59be2': '\n' +
1302
+ '// === --------------------------------------- === --------------------------------------- === --------------------------------------\n' +
1303
+ '// APPLICATIONS\n' +
1304
+ '// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --\n',
1305
+ 'script::[alt-script]/floating_window_controls.js': {
1306
+ type: 'script',
1307
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/floating_window_controls.js',
1308
+ data: 'window.all_windows = false\n' +
1309
+ 'let draggers = {}\n' +
1310
+ 'let current_dragger = false\n' +
1311
+ 'function add_dragging() {\n' +
1312
+ ' let drag_bars = document.getElementsByClassName("togglebar")\n' +
1313
+ ' for ( let db of drag_bars ) {\n' +
1314
+ ' let cname = db.parentNode.className\n' +
1315
+ " if ( cname.indexOf(' ') > 0 ) {\n" +
1316
+ " cname = cname.split(' ')[0]\n" +
1317
+ ' }\n' +
1318
+ " if ( cname === 'solid_able' ) {\n" +
1319
+ ' if ( db.parentNode.id === "intergalactic-explain" ) {\n' +
1320
+ ' cname = "fade_able"\n' +
1321
+ ' }\n' +
1322
+ ' }\n' +
1323
+ ' if ( ["fade_able","right_fade_able"].indexOf(cname) >= 0 ) {\n' +
1324
+ ' let drag_Node = db.parentNode\n' +
1325
+ ' draggers[drag_Node.id] = {\n' +
1326
+ ' "offsetX" : 0,\n' +
1327
+ ' "offsetY" : 0,\n' +
1328
+ ' "isDragging" : false,\n' +
1329
+ ' "dragged" : drag_Node,\n' +
1330
+ ' "drag_control" : db\n' +
1331
+ ' }\n' +
1332
+ ' db.onmousedown = (e) => {\n' +
1333
+ ' let drag_Node = e.target.parentNode;\n' +
1334
+ ' if ( !draggers[drag_Node.id] ) return\n' +
1335
+ ' e.preventDefault()\n' +
1336
+ ' draggers[drag_Node.id].isDragging = true;\n' +
1337
+ ' draggers[drag_Node.id].offsetX = e.clientX - drag_Node.getBoundingClientRect().left;\n' +
1338
+ ' draggers[drag_Node.id].offsetY = e.clientY - drag_Node.getBoundingClientRect().top;\n' +
1339
+ " db.style.cursor = 'grabbing';\n" +
1340
+ ' current_dragger = drag_Node.id\n' +
1341
+ ' }\n' +
1342
+ ' db.onmouseup = (ev) => {\n' +
1343
+ ' if ( current_dragger ) {\n' +
1344
+ ' let dragger_stats = draggers[current_dragger]\n' +
1345
+ ' let drag_bar = dragger_stats.drag_control\n' +
1346
+ " drag_bar.style.cursor = 'move';\n" +
1347
+ ' }\n' +
1348
+ ' }\n' +
1349
+ ' }\n' +
1350
+ ' }\n' +
1351
+ " document.addEventListener('mousemove', (e) => {\n" +
1352
+ ' if (!current_dragger) return;\n' +
1353
+ ' if ( current_dragger ) {\n' +
1354
+ ' let dragger_stats = draggers[current_dragger]\n' +
1355
+ ' let drag_Node = dragger_stats.dragged\n' +
1356
+ ' if ( drag_Node ) {\n' +
1357
+ ' const newX = e.clientX - dragger_stats.offsetX;\n' +
1358
+ ' const newY = e.clientY - dragger_stats.offsetY;\n' +
1359
+ ' drag_Node.style.left = `${newX}px`;\n' +
1360
+ ' drag_Node.style.top = `${newY}px`;\n' +
1361
+ ' }\n' +
1362
+ ' }\n' +
1363
+ ' });\n' +
1364
+ " document.addEventListener('mouseup', () => {\n" +
1365
+ ' if ( current_dragger ) {\n' +
1366
+ ' let dragger_stats = draggers[current_dragger]\n' +
1367
+ ' let drag_bar = dragger_stats.drag_control\n' +
1368
+ " drag_bar.style.cursor = 'move';\n" +
1369
+ ' }\n' +
1370
+ ' current_dragger = false\n' +
1371
+ ' });\n' +
1372
+ '}\n' +
1373
+ 'add_dragging()\n' +
1374
+ 'let resizers = {}\n' +
1375
+ 'let current_resizer = false\n' +
1376
+ 'function add_resizing() {\n' +
1377
+ ' let sizer_bobs = document.getElementsByClassName("sizerbar")\n' +
1378
+ ' for ( let sb of sizer_bobs ) {\n' +
1379
+ ' let pnode = sb.parentNode\n' +
1380
+ ' resizers[pnode.id] = {\n' +
1381
+ ' "isDragging" : false,\n' +
1382
+ ' "dragged" : pnode,\n' +
1383
+ ' "drag_control" : sb\n' +
1384
+ ' }\n' +
1385
+ ' sb.onmousedown = (e) => {\n' +
1386
+ ' let pnode = e.target.parentNode;\n' +
1387
+ ' if ( !resizers[pnode.id] ) return\n' +
1388
+ ' e.preventDefault()\n' +
1389
+ ' resizers[pnode.id].isDragging = true;\n' +
1390
+ ' current_resizer = pnode.id\n' +
1391
+ ' }\n' +
1392
+ ' \n' +
1393
+ ' }\n' +
1394
+ " document.addEventListener('mousemove', (e) => {\n" +
1395
+ ' if (!current_resizer) return;\n' +
1396
+ ' if ( current_resizer ) {\n' +
1397
+ ' let resizer_stats = resizers[current_resizer]\n' +
1398
+ ' let pnode = resizer_stats.dragged\n' +
1399
+ ' if ( pnode ) {\n' +
1400
+ ' const newX = e.clientX;\n' +
1401
+ ' const newY = e.clientY;\n' +
1402
+ ' let brect = pnode.getBoundingClientRect()\n' +
1403
+ ' let newW = newX - brect.left\n' +
1404
+ ' let newH = newY - brect.top\n' +
1405
+ ' if ( newW > 60 ) {\n' +
1406
+ ' pnode.style.width = `${newW}px`;\n' +
1407
+ ' }\n' +
1408
+ ' if ( newH > 60 ) {\n' +
1409
+ ' pnode.style.height = `${newH}px`;\n' +
1410
+ ' }\n' +
1411
+ ' }\n' +
1412
+ ' }\n' +
1413
+ ' });\n' +
1414
+ " document.addEventListener('mouseup', () => {\n" +
1415
+ ' current_resizer = false\n' +
1416
+ ' });\n' +
1417
+ '}\n' +
1418
+ 'add_resizing() \n' +
1419
+ 'function init_app_resize() {\n' +
1420
+ " window.addEventListener('resize',(ev) => {\n" +
1421
+ " let it_container = document.getElementById('sections-container')\n" +
1422
+ ' if ( it_container ) {\n' +
1423
+ " let footer = document.getElementsByTagName('footer')[0]\n" +
1424
+ ' if ( footer ) {\n' +
1425
+ ' let ic_rect = it_container.getBoundingClientRect()\n' +
1426
+ ' let ft_rect = footer.getBoundingClientRect()\n' +
1427
+ ' let h = ft_rect.top - ic_rect.top - 1;\n' +
1428
+ ' it_container.style.height = `${h}px`\n' +
1429
+ ' it_container.style.minHeight= `${h}px`\n' +
1430
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
1431
+ ' let sect = document.getElementById(`section_${i+1}`)\n' +
1432
+ ' if ( sect ) {\n' +
1433
+ ' sect.style.height = `${h - 2}px`\n' +
1434
+ ' sect.style.minHeight = `${h - 2}px`\n' +
1435
+ ' }\n' +
1436
+ ' }\n' +
1437
+ ' }\n' +
1438
+ ' }\n' +
1439
+ ' for ( let wbox_id in all_windows ) {\n' +
1440
+ ' let wbox = all_windows[wbox_id]\n' +
1441
+ ' if ( !wbox ) continue;\n' +
1442
+ ' let w = window.innerWidth*0.8;\n' +
1443
+ ' let x = window.innerWidth*0.3;\n' +
1444
+ ' if ( wbox.x >= (window.innerWidth-20) ) {\n' +
1445
+ ' wbox.move(x)\n' +
1446
+ ' }\n' +
1447
+ ' if ( wbox.y >= (window.innerHeight-20) ) {\n' +
1448
+ ' wbox.move(wbox.y - 60)\n' +
1449
+ ' }\n' +
1450
+ ' let h = window.innerHeight*0.96\n' +
1451
+ ' wbox.resize(w,h)\n' +
1452
+ ' }\n' +
1453
+ ' for ( let dinfo of Object.values(draggers) ) {\n' +
1454
+ ' let dragged = dinfo.dragged\n' +
1455
+ ' if ( dragged ) {\n' +
1456
+ ' let drect = dragged.getBoundingClientRect()\n' +
1457
+ ' let x = window.innerWidth*0.3;\n' +
1458
+ ' let h = window.innerHeight*0.8\n' +
1459
+ ' let w = window.innerWidth*0.9;\n' +
1460
+ ' if ( drect.x >= (window.innerWidth-20) ) {\n' +
1461
+ ' dragged.style.left = `${x}px`\n' +
1462
+ ' }\n' +
1463
+ ' if ( drect.y >= (window.innerHeight-20) ) {\n' +
1464
+ ' dragged.style.top = `{drect.y - 60}px`\n' +
1465
+ ' }\n' +
1466
+ ' w = Math.min(450,w)\n' +
1467
+ ' h = Math.min(450,h)\n' +
1468
+ ' dragged.style.width = `${w}px`\n' +
1469
+ ' dragged.style.height = `${h}px`\n' +
1470
+ ' }\n' +
1471
+ ' }\n' +
1472
+ ' })\n' +
1473
+ '}\n' +
1474
+ 'function init_app_windows() {\n' +
1475
+ ' let left = "30%",\n' +
1476
+ ' height = "96%",\n' +
1477
+ ' width = "60%"\n' +
1478
+ ' let ref_el = document.getElementById("sections-container")\n' +
1479
+ ' if ( ref_el ) {\n' +
1480
+ ' if ( window.innerWidth >= 1100 ) {\n' +
1481
+ ' let rbox = ref_el.getBoundingClientRect()\n' +
1482
+ ' let l = rbox.right + 6\n' +
1483
+ ' left = `${rbox.right}px`\n' +
1484
+ ' let r = window.innerWidth - 20;\n' +
1485
+ ' let w = r - l\n' +
1486
+ ' width = `${w}px`\n' +
1487
+ ' } else {\n' +
1488
+ ' let rbox = ref_el.getBoundingClientRect()\n' +
1489
+ ' let l = rbox.left + 6\n' +
1490
+ ' left = `${l}px`\n' +
1491
+ ' width = `${window.innerWidth}px`\n' +
1492
+ ' }\n' +
1493
+ ' }\n' +
1494
+ ' let winbox = new WinBox("extra-file-class",{\n' +
1495
+ '"url" : "http:\n' +
1496
+ ' "x" : left,\n' +
1497
+ ' "height" : height,\n' +
1498
+ ' "width" : width,\n' +
1499
+ ' "hidden" : true,\n' +
1500
+ ' "onclose" : () => {\n' +
1501
+ ' let winbox = all_windows["extra-file-class"]\n' +
1502
+ ' winbox.hide(true)\n' +
1503
+ ' return true\n' +
1504
+ ' }\n' +
1505
+ ' })\n' +
1506
+ ' all_windows["extra-file-class"] = winbox\n' +
1507
+ ' winbox = new WinBox("roll-right",{\n' +
1508
+ '"url" : "http:\n' +
1509
+ ' "x" : left,\n' +
1510
+ ' "height" : height,\n' +
1511
+ ' "width" : width,\n' +
1512
+ ' "hidden" : true,\n' +
1513
+ ' "onclose" : () => {\n' +
1514
+ ' let winbox = all_windows["roll-right"]\n' +
1515
+ ' winbox.hide(true)\n' +
1516
+ ' return true\n' +
1517
+ ' }\n' +
1518
+ ' })\n' +
1519
+ ' all_windows["roll-right"] = winbox\n' +
1520
+ ' winbox = new WinBox("release-lite",{\n' +
1521
+ '"url" : "http:\n' +
1522
+ ' "x" : left,\n' +
1523
+ ' "height" : height,\n' +
1524
+ ' "width" : width,\n' +
1525
+ ' "hidden" : true,\n' +
1526
+ ' "onclose" : () => {\n' +
1527
+ ' let winbox = all_windows["release-lite"]\n' +
1528
+ ' winbox.hide(true)\n' +
1529
+ ' return true\n' +
1530
+ ' }\n' +
1531
+ ' })\n' +
1532
+ ' all_windows["release-lite"] = winbox\n' +
1533
+ ' init_app_resize()\n' +
1534
+ '}'
1535
+ },
1536
+ 'script::params::[alt-script]/pin_and_scroll_vars.tjs': {
1537
+ type: 'script',
1538
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/pin_and_scroll_vars.tjs',
1539
+ data: 'window.scroll_section_count = 3',
1540
+ recursive: {
1541
+ _is_loop: false,
1542
+ params_def: { scroll_section_count: '%number%' },
1543
+ executables: { execs: [], imports: false }
1544
+ },
1545
+ backup_data: 'window.scroll_section_count = 3',
1546
+ evaluations: { scroll_section_count: '3' },
1547
+ subst_recursive: [
1548
+ {
1549
+ params_def: { scroll_section_count: '%number%' },
1550
+ conds: [],
1551
+ data: 'window.scroll_section_count = 3'
1552
+ }
1553
+ ],
1554
+ conds: []
1555
+ },
1556
+ 'script::[alt-script]/section_scrolling.js': {
1557
+ type: 'script',
1558
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/section_scrolling.js',
1559
+ data: 'let g_section_count = (window.scroll_section_count && !(isNaN(window.scroll_section_count))) ? window.scroll_section_count : 0;\n' +
1560
+ 'let g_current_section_select = null\n' +
1561
+ 'let lastKnownScrollPosition = 0\n' +
1562
+ 'let elementsToCheck = []\n' +
1563
+ 'function scroll_pin(view_center) {\n' +
1564
+ '\tif ( window.innerWidth >= 1100 ) {\n' +
1565
+ " if ( view_center !== 'section_1' ) {\n" +
1566
+ ' let sect_box = `#${view_center}_response`\n' +
1567
+ ' g_current_section_select = sect_box\n' +
1568
+ ' pinBox(sect_box)\n' +
1569
+ ' } else {\n' +
1570
+ " g_current_section_select = 'section_1_response'\n" +
1571
+ ' unpin_current(true)\n' +
1572
+ ' }\n' +
1573
+ ' } else {\n' +
1574
+ ' let details = document.getElementById("scroll-info-button")\n' +
1575
+ " if ( view_center !== 'section_1' ) {\n" +
1576
+ ' let sect_box = `#${view_center}_response`\n' +
1577
+ ' g_current_section_select = sect_box\n' +
1578
+ ' if (details) details.removeAttribute("disabled")\n' +
1579
+ ' } else {\n' +
1580
+ " g_current_section_select = 'section_1_response'\n" +
1581
+ ' if (details) details.setAttribute("disabled",true)\n' +
1582
+ ' }\n' +
1583
+ ' }\n' +
1584
+ '}\n' +
1585
+ 'function resize_sections(skip_container) {\n' +
1586
+ ' let above = document.getElementById("sections-header")\n' +
1587
+ ' let sects = document.getElementById("sections-container")\n' +
1588
+ ' if ( sects && above) {\n' +
1589
+ ' let abox = above.getBoundingClientRect()\n' +
1590
+ ' let box = sects.getBoundingClientRect()\n' +
1591
+ ' let pbox = sects.parentElement.getBoundingClientRect()\n' +
1592
+ ' let bbot = pbox.bottom - 2\n' +
1593
+ ' if ( !skip_container ) {\n' +
1594
+ ' let btop = abox.bottom + 2\n' +
1595
+ ' sects.style.height = `${bbot - btop}px`\n' +
1596
+ ' }\n' +
1597
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
1598
+ ' let sect = document.getElementById(`section_${i+1}`)\n' +
1599
+ ' if ( sect ) {\n' +
1600
+ ' sect.style.height = `${bbot - box.top - 2}px`\n' +
1601
+ ' sect.style.minHeight = `${bbot - box.top - 2}px`\n' +
1602
+ ' }\n' +
1603
+ ' }\n' +
1604
+ ' }\n' +
1605
+ '}\n' +
1606
+ 'function section_select() {\n' +
1607
+ ' return g_current_section_select\n' +
1608
+ '}\n' +
1609
+ 'function isElementInScrollView(container, element, partial) {\n' +
1610
+ ' const domRect1 = container.getBoundingClientRect();\n' +
1611
+ ' const domRect2 = element.getBoundingClientRect();\n' +
1612
+ ' return !(\n' +
1613
+ ' domRect1.top > domRect2.bottom ||\n' +
1614
+ ' domRect1.right < domRect2.left ||\n' +
1615
+ ' domRect1.bottom < domRect2.top ||\n' +
1616
+ ' domRect1.left > domRect2.right\n' +
1617
+ ' );\n' +
1618
+ '}\n' +
1619
+ 'function top_difference(rect_1, rect_2) {\n' +
1620
+ ' let b = rect_1.top - rect_2.top\n' +
1621
+ ' \n' +
1622
+ ' return b\n' +
1623
+ '}\n' +
1624
+ 'function top_stray_amount(container,element) {\n' +
1625
+ ' const rect_1 = container.getBoundingClientRect();\n' +
1626
+ ' const rect_2 = element.getBoundingClientRect();\n' +
1627
+ ' return Math.abs(top_difference(rect_1, rect_2))\n' +
1628
+ '}\n' +
1629
+ 'function scroller(evnt) {\n' +
1630
+ ' if ( lastKnownScrollPosition === 0 ) {\n' +
1631
+ ' let element = evnt.target\n' +
1632
+ ' lastKnownScrollPosition = evnt.target.scrollTop;\n' +
1633
+ ' }\n' +
1634
+ '}\n' +
1635
+ 'function scrollender(evnt) {\n' +
1636
+ ' let current_scroll_pos = evnt.target.scrollTop;\n' +
1637
+ ' lastKnownScrollPosition = 0;\n' +
1638
+ ' let viz_list = {}\n' +
1639
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
1640
+ ' let checker = elementsToCheck[i]\n' +
1641
+ ' if ( checker && !(checker.checked) ) {\n' +
1642
+ ' let container = evnt.target\n' +
1643
+ ' let el = checker.el\n' +
1644
+ ' if ( isElementInScrollView(container,el) ) {\n' +
1645
+ ' checker.checked = true\n' +
1646
+ ' }\n' +
1647
+ ' }\n' +
1648
+ ' if ( checker && checker.checked) {\n' +
1649
+ ' let container = evnt.target\n' +
1650
+ ' let el = checker.el\n' +
1651
+ ' viz_list[checker.name] = top_stray_amount(container,el)\n' +
1652
+ ' }\n' +
1653
+ ' }\n' +
1654
+ ' let least_strayed = Infinity\n' +
1655
+ ' let least_strayed_name = ""\n' +
1656
+ ' for ( let [name,stray] of Object.entries(viz_list) ) {\n' +
1657
+ ' if ( least_strayed > stray ) {\n' +
1658
+ ' least_strayed = stray\n' +
1659
+ ' least_strayed_name = name\n' +
1660
+ ' }\n' +
1661
+ ' }\n' +
1662
+ ' scroll_pin(least_strayed_name)\n' +
1663
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
1664
+ ' let checker = elementsToCheck[i]\n' +
1665
+ ' checker.checked = false\n' +
1666
+ ' }\n' +
1667
+ '}\n' +
1668
+ 'function init_els_to_check() {\n' +
1669
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
1670
+ ' let check_record = {\n' +
1671
+ ' "name" : `section_${i+1}`,\n' +
1672
+ ' "checked" : false,\n' +
1673
+ ' "el" : document.getElementById(`section_${i+1}`)\n' +
1674
+ ' }\n' +
1675
+ ' elementsToCheck.push(check_record);\n' +
1676
+ ' }\n' +
1677
+ '}\n' +
1678
+ ' \n' +
1679
+ 'function setup_section_toggles() {\n' +
1680
+ ' let sect_togs = document.getElementsByClassName("togglebar-sect")\n' +
1681
+ ' for ( let st of sect_togs ) {\n' +
1682
+ ' let namer = st.parentNode.parentNode.id\n' +
1683
+ ' st.onclick = (ev) => {\n' +
1684
+ ' let sect_box = `#${namer}_response`\n' +
1685
+ ' if ( g_current_section_select === sect_box ) {\n' +
1686
+ ' let sbr = document.querySelector(sect_box)\n' +
1687
+ ' if ( sbr.style.display === "none") {\n' +
1688
+ ' pinBox(sect_box)\n' +
1689
+ ' } else {\n' +
1690
+ ' sbr.style.display = "none"\n' +
1691
+ ' }\n' +
1692
+ ' }\n' +
1693
+ ' }\n' +
1694
+ ' }\n' +
1695
+ '}'
1696
+ },
1697
+ 'html(10):end_script': '\n</script>\n'
1698
+ },
1699
+ incrementer_set: {
1700
+ start: {
1701
+ print_vname: 'start',
1702
+ apply_to: 'Z_INDEX',
1703
+ start_val: 100,
1704
+ starter: {
1705
+ file: 'fadable_box.tmplt',
1706
+ key_values: {
1707
+ Z_INDEX: 'f@init{$}',
1708
+ BOX_NAME: 'f@name{parent}',
1709
+ INSERT: ''
1710
+ },
1711
+ path_finder: 'html',
1712
+ op: '=',
1713
+ evaluations: { BOX_NAME: 'contact_box', INSERT: '' },
1714
+ data: '\n' +
1715
+ '<div id="contact_box" class="fade_able" style="z-index:100" >\n' +
1716
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1717
+ `\t\t<span class="closer_x" onmousedown="closefader('contact_box')">x</span>\n` +
1718
+ '\t</div>\n' +
1719
+ '\t<div class="fade_able_content" >\n' +
1720
+ '\t\t{{{contact_box.content }}}\n' +
1721
+ '\t</div>\n' +
1722
+ '</div>\n',
1723
+ backup_data: '\n' +
1724
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1725
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1726
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1727
+ '\t</div>\n' +
1728
+ '\t<div class="fade_able_content" >\n' +
1729
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1730
+ '\t</div>\n' +
1731
+ '</div>\n'
1732
+ },
1733
+ list: [
1734
+ {
1735
+ file: 'fadable_box.tmplt',
1736
+ key_values: {
1737
+ Z_INDEX: 'f@init{$}',
1738
+ BOX_NAME: 'f@name{parent}',
1739
+ INSERT: ''
1740
+ },
1741
+ path_finder: 'html',
1742
+ op: '=',
1743
+ evaluations: { BOX_NAME: 'contact_box', INSERT: '' },
1744
+ data: '\n' +
1745
+ '<div id="contact_box" class="fade_able" style="z-index:100" >\n' +
1746
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1747
+ `\t\t<span class="closer_x" onmousedown="closefader('contact_box')">x</span>\n` +
1748
+ '\t</div>\n' +
1749
+ '\t<div class="fade_able_content" >\n' +
1750
+ '\t\t{{{contact_box.content }}}\n' +
1751
+ '\t</div>\n' +
1752
+ '</div>\n',
1753
+ backup_data: '\n' +
1754
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1755
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1756
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1757
+ '\t</div>\n' +
1758
+ '\t<div class="fade_able_content" >\n' +
1759
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1760
+ '\t</div>\n' +
1761
+ '</div>\n'
1762
+ },
1763
+ {
1764
+ file: 'fadable_box.tmplt',
1765
+ key_values: {
1766
+ Z_INDEX: 'f@incr{$}',
1767
+ BOX_NAME: 'f@name{parent}',
1768
+ INSERT: ''
1769
+ },
1770
+ path_finder: 'html',
1771
+ op: '++',
1772
+ evaluations: { BOX_NAME: 'about_box', INSERT: '' },
1773
+ data: '\n' +
1774
+ '<div id="about_box" class="fade_able" style="z-index:101" >\n' +
1775
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1776
+ `\t\t<span class="closer_x" onmousedown="closefader('about_box')">x</span>\n` +
1777
+ '\t</div>\n' +
1778
+ '\t<div class="fade_able_content" >\n' +
1779
+ '\t\t{{{about_box.content }}}\n' +
1780
+ '\t</div>\n' +
1781
+ '</div>\n',
1782
+ backup_data: '\n' +
1783
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1784
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1785
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1786
+ '\t</div>\n' +
1787
+ '\t<div class="fade_able_content" >\n' +
1788
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1789
+ '\t</div>\n' +
1790
+ '</div>\n'
1791
+ },
1792
+ {
1793
+ file: 'fadable_box.tmplt',
1794
+ key_values: {
1795
+ Z_INDEX: 'f@incr{$}',
1796
+ BOX_NAME: 'f@name{parent}',
1797
+ INSERT: "onclick='hide_thankyou_box(this)'"
1798
+ },
1799
+ path_finder: 'html',
1800
+ op: '++',
1801
+ evaluations: {
1802
+ BOX_NAME: 'thankyou_box',
1803
+ INSERT: "onclick='hide_thankyou_box(this)'"
1804
+ },
1805
+ data: '\n' +
1806
+ `<div id="thankyou_box" class="fade_able" style="z-index:102" onclick='hide_thankyou_box(this)' >\n` +
1807
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1808
+ `\t\t<span class="closer_x" onmousedown="closefader('thankyou_box')">x</span>\n` +
1809
+ '\t</div>\n' +
1810
+ '\t<div class="fade_able_content" >\n' +
1811
+ '\t\t{{{thankyou_box.content }}}\n' +
1812
+ '\t</div>\n' +
1813
+ '</div>\n',
1814
+ backup_data: '\n' +
1815
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1816
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1817
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1818
+ '\t</div>\n' +
1819
+ '\t<div class="fade_able_content" >\n' +
1820
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1821
+ '\t</div>\n' +
1822
+ '</div>\n'
1823
+ },
1824
+ {
1825
+ file: 'fadable_box.tmplt',
1826
+ key_values: {
1827
+ Z_INDEX: 'f@incr{$}',
1828
+ BOX_NAME: 'f@name{parent}',
1829
+ INSERT: ''
1830
+ },
1831
+ path_finder: 'html',
1832
+ op: '++',
1833
+ evaluations: { BOX_NAME: 'topicBox_1', INSERT: '' },
1834
+ data: '\n' +
1835
+ '<div id="topicBox_1" class="fade_able" style="z-index:103" >\n' +
1836
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1837
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_1')">x</span>\n` +
1838
+ '\t</div>\n' +
1839
+ '\t<div class="fade_able_content" >\n' +
1840
+ '\t\t{{{topicBox_1.content }}}\n' +
1841
+ '\t</div>\n' +
1842
+ '</div>\n',
1843
+ backup_data: '\n' +
1844
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1845
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1846
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1847
+ '\t</div>\n' +
1848
+ '\t<div class="fade_able_content" >\n' +
1849
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1850
+ '\t</div>\n' +
1851
+ '</div>\n'
1852
+ },
1853
+ {
1854
+ file: 'fadable_box.tmplt',
1855
+ key_values: {
1856
+ Z_INDEX: 'f@incr{$}',
1857
+ BOX_NAME: 'f@name{parent}',
1858
+ INSERT: ''
1859
+ },
1860
+ path_finder: 'html',
1861
+ op: '++',
1862
+ evaluations: { BOX_NAME: 'topicBox_2', INSERT: '' },
1863
+ data: '\n' +
1864
+ '<div id="topicBox_2" class="fade_able" style="z-index:104" >\n' +
1865
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1866
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_2')">x</span>\n` +
1867
+ '\t</div>\n' +
1868
+ '\t<div class="fade_able_content" >\n' +
1869
+ '\t\t{{{topicBox_2.content }}}\n' +
1870
+ '\t</div>\n' +
1871
+ '</div>\n',
1872
+ backup_data: '\n' +
1873
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1874
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1875
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1876
+ '\t</div>\n' +
1877
+ '\t<div class="fade_able_content" >\n' +
1878
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1879
+ '\t</div>\n' +
1880
+ '</div>\n'
1881
+ },
1882
+ {
1883
+ file: 'fadable_box.tmplt',
1884
+ key_values: {
1885
+ Z_INDEX: 'f@incr{$}',
1886
+ BOX_NAME: 'f@name{parent}',
1887
+ INSERT: ''
1888
+ },
1889
+ path_finder: 'html',
1890
+ op: '++',
1891
+ evaluations: { BOX_NAME: 'topicBox_3', INSERT: '' },
1892
+ data: '\n' +
1893
+ '<div id="topicBox_3" class="fade_able" style="z-index:105" >\n' +
1894
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1895
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_3')">x</span>\n` +
1896
+ '\t</div>\n' +
1897
+ '\t<div class="fade_able_content" >\n' +
1898
+ '\t\t{{{topicBox_3.content }}}\n' +
1899
+ '\t</div>\n' +
1900
+ '</div>\n',
1901
+ backup_data: '\n' +
1902
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
1903
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1904
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
1905
+ '\t</div>\n' +
1906
+ '\t<div class="fade_able_content" >\n' +
1907
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
1908
+ '\t</div>\n' +
1909
+ '</div>\n'
1910
+ },
1911
+ {
1912
+ file: 'solidable_box.tmplt',
1913
+ key_values: {
1914
+ Z_INDEX: 'f@incr{$}',
1915
+ BOX_NAME: 'f@name{parent}',
1916
+ INSERT: ''
1917
+ },
1918
+ path_finder: 'html',
1919
+ op: '++',
1920
+ evaluations: { BOX_NAME: 'register', INSERT: '' },
1921
+ data: '<div id="register" class="solid_able" style="z-index:106" >\n' +
1922
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1923
+ `\t\t<span class="closer_x" onmousedown="closesolid('register')">x</span>\n` +
1924
+ '\t</div>\n' +
1925
+ '\t<div class="fade_able_content" >\n' +
1926
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1927
+ '\t\t\t{{{register.content}}}\n' +
1928
+ '\t\t</div>\n' +
1929
+ '\t</div>\n' +
1930
+ '</div>\n',
1931
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
1932
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1933
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
1934
+ '\t</div>\n' +
1935
+ '\t<div class="fade_able_content" >\n' +
1936
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1937
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
1938
+ '\t\t</div>\n' +
1939
+ '\t</div>\n' +
1940
+ '</div>\n'
1941
+ },
1942
+ {
1943
+ file: 'solidable_box.tmplt',
1944
+ key_values: {
1945
+ Z_INDEX: 'f@incr{$}',
1946
+ BOX_NAME: 'f@name{parent}',
1947
+ INSERT: ''
1948
+ },
1949
+ path_finder: 'html',
1950
+ op: '++',
1951
+ evaluations: { BOX_NAME: 'login', INSERT: '' },
1952
+ data: '<div id="login" class="solid_able" style="z-index:107" >\n' +
1953
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1954
+ `\t\t<span class="closer_x" onmousedown="closesolid('login')">x</span>\n` +
1955
+ '\t</div>\n' +
1956
+ '\t<div class="fade_able_content" >\n' +
1957
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1958
+ '\t\t\t{{{login.content}}}\n' +
1959
+ '\t\t</div>\n' +
1960
+ '\t</div>\n' +
1961
+ '</div>\n',
1962
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
1963
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
1964
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
1965
+ '\t</div>\n' +
1966
+ '\t<div class="fade_able_content" >\n' +
1967
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
1968
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
1969
+ '\t\t</div>\n' +
1970
+ '\t</div>\n' +
1971
+ '</div>\n'
1972
+ }
1973
+ ]
1974
+ }
1975
+ }
1976
+ },
1977
+ shops: {
1978
+ defaults: {
1979
+ top_level: true,
1980
+ uses_config_vars: 'shops',
1981
+ path_abreviations: {
1982
+ '[alpha-copious]': '[github]/alphas/alpha-copious',
1983
+ '[github]': '~/GitHub',
1984
+ '[websites]': '[alphas]/websites'
1985
+ },
1986
+ ext_default_dir: {
1987
+ tmplt: '[alpha-copious]/html',
1988
+ js: '[alpha-copious]/client',
1989
+ svg: '[alpha-copious]/icons',
1990
+ css: '[alpha-copious]/css'
1991
+ },
1992
+ top_dir_location: {
1993
+ script: '[alpha-copious]/client',
1994
+ 'for-humans': '[alpha-copious]/for-humans',
1995
+ files: '[alpha-copious]/html'
1996
+ }
1997
+ },
1998
+ final: { markup: false, scripts: false },
1999
+ skeleton: [
2000
+ 'html:start_doc_head<<',
2001
+ 'files::header.tmplt<<',
2002
+ 'bundle::bundle_13.js',
2003
+ 'bundle::shop-kiosk_bundle.js',
2004
+ 'link<css>::shared_styles.css<<',
2005
+ 'html:end_head<<',
2006
+ 'html:start_style<<',
2007
+ 'css::quick_view.css<<',
2008
+ 'html:end_style<<',
2009
+ 'html:start_script<<',
2010
+ 'files<js>::top_vars<<',
2011
+ 'html:end_script<<',
2012
+ 'html:start_body<<',
2013
+ 'files::params::nav_bar_V.smplt',
2014
+ 'files::MAP-sections_frame.smplt',
2015
+ 'files::flexy_items_A-main.tmplt<<',
2016
+ 'files::footer_A.tmplt<<',
2017
+ 'verbatim::{\n<!-- start dynamic content -->\n}',
2018
+ 'files::squashable_menu_A.tmplt<<',
2019
+ 'files::calc::contact_box<<${start=100}',
2020
+ 'files::calc::about_box<<${start++}',
2021
+ 'files::calc::thankyou_box<<${start++}',
2022
+ 'files::calc::topicBox_1<<${start++}',
2023
+ 'files::calc::topicBox_2<<${start++}',
2024
+ 'files::calc::topicBox_3<<${start++}',
2025
+ 'files::calc::register<<${start++}',
2026
+ 'files::calc::login<<${start++}',
2027
+ 'files::intergalactic-explain.tmplt<<',
2028
+ 'template::{\n {{{advertPopups.content}}}\n}',
2029
+ 'html:end_body_html<<',
2030
+ 'html:start_script<<',
2031
+ 'verbatim::{\n' +
2032
+ '// === --------------------------------------- === --------------------------------------- === --------------------------------------\n' +
2033
+ '// APPLICATIONS\n' +
2034
+ '// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --\n' +
2035
+ '}',
2036
+ 'script::[alt-script]/floating_window_controls.js<<',
2037
+ 'script::params::[alt-script]/pin_and_scroll_vars.tjs',
2038
+ 'script::[alt-script]/section_scrolling.js<<',
2039
+ 'html:end_script<<'
2040
+ ],
2041
+ files: [
2042
+ 'header.tmplt<<',
2043
+ 'params::nav_bar_V.smplt',
2044
+ 'MAP-sections_frame.smplt',
2045
+ 'flexy_items_A-main.tmplt<<',
2046
+ 'footer_A.tmplt<<',
2047
+ 'squashable_menu_A.tmplt<<',
2048
+ 'calc::contact_box<<${start=100}',
2049
+ 'calc::about_box<<${start++}',
2050
+ 'calc::thankyou_box<<${start++}',
2051
+ 'calc::topicBox_1<<${start++}',
2052
+ 'calc::topicBox_2<<${start++}',
2053
+ 'calc::topicBox_3<<${start++}',
2054
+ 'calc::register<<${start++}',
2055
+ 'calc::login<<${start++}',
2056
+ 'intergalactic-explain.tmplt<<'
2057
+ ],
2058
+ css: [ 'quick_view.css<<' ],
2059
+ scripts: [
2060
+ '[alt-script]/floating_window_controls.js<<',
2061
+ 'params::[alt-script]/pin_and_scroll_vars.tjs',
2062
+ '[alt-script]/section_scrolling.js<<'
2063
+ ],
2064
+ bundles: [ 'bundle_13.js', 'shop-kiosk_bundle.js' ],
2065
+ parameterized: {
2066
+ 'files::MAP-sections_frame.smplt': {
2067
+ el: 'list',
2068
+ '_type<el>': [
2069
+ {
2070
+ group_name: 'docs',
2071
+ 'SOURCE-LINK': '{{{shop_docs}}}',
2072
+ 'FRAME-ACTIONS': "onclick=''"
2073
+ },
2074
+ {
2075
+ group_name: 'blog',
2076
+ 'SOURCE-LINK': '{{{shop_blog}}}',
2077
+ 'FRAME-ACTIONS': "onclick=''"
2078
+ },
2079
+ {
2080
+ group_name: 'search',
2081
+ 'SOURCE-LINK': '{{{shop_search}}}',
2082
+ 'FRAME-ACTIONS': "onclick=''"
2083
+ }
2084
+ ]
2085
+ },
2086
+ 'script::params::[alt-script]/pin_and_scroll_vars.tjs': {
2087
+ scroll_section_count: { file: false, tree: false, data: '3' },
2088
+ '_params<scroll_section_count>': { scroll_section_count: '%number%' }
2089
+ },
2090
+ 'files::params::nav_bar_V.smplt': {
2091
+ lr_div: {
2092
+ file: 'left-right-div.smplt',
2093
+ tree: {
2094
+ logo: {
2095
+ file: 'logo.tmplt',
2096
+ tree: false,
2097
+ data: '\n' +
2098
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2099
+ ' {{{svgLogo.content}}}\n' +
2100
+ '</a>\n' +
2101
+ '\n'
2102
+ },
2103
+ spacer: {
2104
+ file: 'spacer.tmplt',
2105
+ tree: false,
2106
+ data: '\n' +
2107
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2108
+ ' {{{relatedAsset.content}}}\n' +
2109
+ '</a>\n'
2110
+ },
2111
+ menu: {
2112
+ file: 'shroom.tmplt',
2113
+ tree: {
2114
+ mushroom: {
2115
+ file: 'mushroom-menu-icon.svg',
2116
+ tree: false,
2117
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2118
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2119
+ '</svg>'
2120
+ },
2121
+ '_params<>': {}
2122
+ },
2123
+ data: '<li id="squashMenu"\n' +
2124
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2125
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2126
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2127
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2128
+ '</svg>\n' +
2129
+ '</li>',
2130
+ recursive: {
2131
+ _is_loop: false,
2132
+ params_def: { mushroom: '' },
2133
+ executables: {
2134
+ execs: [
2135
+ {
2136
+ replace: '>>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<',
2137
+ condition: { cond: '@{mushroom}', variable: 'mushroom' },
2138
+ positive_exec: { pos: '@{mushroom}' },
2139
+ negative_exec: {
2140
+ neg: '$$icons::mushroom-menu-icon.svg<<',
2141
+ replace: '$$icons::mushroom-menu-icon.svg<<',
2142
+ file: [
2143
+ {
2144
+ replace: '$$icons::mushroom-menu-icon.svg<<',
2145
+ type: 'icons',
2146
+ file: 'mushroom-menu-icon.svg',
2147
+ path_finder: 'icons',
2148
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2149
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2150
+ '</svg>'
2151
+ }
2152
+ ]
2153
+ }
2154
+ }
2155
+ ],
2156
+ imports: [
2157
+ {
2158
+ replace: undefined,
2159
+ type: 'icons',
2160
+ file: 'mushroom-menu-icon.svg',
2161
+ path_finder: 'icons',
2162
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2163
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2164
+ '</svg>'
2165
+ }
2166
+ ]
2167
+ }
2168
+ },
2169
+ subst_recursive: [
2170
+ {
2171
+ params_def: { mushroom: '' },
2172
+ conds: [
2173
+ {
2174
+ replace: '>>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<',
2175
+ replacer: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2176
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2177
+ '</svg>'
2178
+ }
2179
+ ],
2180
+ data: '<li id="squashMenu"\n' +
2181
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2182
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2183
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2184
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2185
+ '</svg>\n' +
2186
+ '</li>\n'
2187
+ }
2188
+ ],
2189
+ conds: [
2190
+ {
2191
+ replace: '>>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<',
2192
+ condition: { cond: '@{mushroom}', variable: 'mushroom' },
2193
+ positive_exec: { pos: '@{mushroom}' },
2194
+ negative_exec: {
2195
+ neg: '$$icons::mushroom-menu-icon.svg<<',
2196
+ replace: '$$icons::mushroom-menu-icon.svg<<',
2197
+ file: [
2198
+ {
2199
+ replace: '$$icons::mushroom-menu-icon.svg<<',
2200
+ type: 'icons',
2201
+ file: 'mushroom-menu-icon.svg',
2202
+ path_finder: 'icons',
2203
+ data: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2204
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2205
+ '</svg>'
2206
+ }
2207
+ ]
2208
+ }
2209
+ }
2210
+ ],
2211
+ backup_data: '<li id="squashMenu"\n' +
2212
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2213
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2214
+ ' >>@{mushroom} ? @{mushroom} : $$icons::mushroom-menu-icon.svg<<<<\n' +
2215
+ '</li>\n'
2216
+ },
2217
+ '_params<logo,spacer,menu>': { logo: '%file%', spacer: '%file%', menu: '%file%' }
2218
+ },
2219
+ data: '//\n' +
2220
+ '<div style="width:100%;height:fit-content">\n' +
2221
+ '<table style="width:100%">\n' +
2222
+ ' <tr>\n' +
2223
+ ' <td style="width:62;height:63">\n' +
2224
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2225
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2226
+ ' // otherwise the result is a final stage substitution\n' +
2227
+ ' \n' +
2228
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2229
+ ' {{{svgLogo.content}}}\n' +
2230
+ '</a>\n' +
2231
+ '\n' +
2232
+ '\n' +
2233
+ ' </a>\n' +
2234
+ ' </td>\n' +
2235
+ ' <td>\n' +
2236
+ ' <ul class="navbar-nav">\n' +
2237
+ ' <li class="nav-item">\n' +
2238
+ ' \n' +
2239
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2240
+ ' {{{relatedAsset.content}}}\n' +
2241
+ '</a>\n' +
2242
+ '\n' +
2243
+ ' </li>\n' +
2244
+ ' <li id="squashMenu"\n' +
2245
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2246
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2247
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2248
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2249
+ '</svg>\n' +
2250
+ '</li>\n' +
2251
+ ' </ul>\n' +
2252
+ ' </td>\n' +
2253
+ ' <td style="text-align: center;">\n' +
2254
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2255
+ ' </td>\n' +
2256
+ ' <td>\n' +
2257
+ ' &nbsp;\n' +
2258
+ ' </td>\n' +
2259
+ ' </tr>\n' +
2260
+ '</table>\n' +
2261
+ '</div>\n' +
2262
+ '//',
2263
+ recursive: {
2264
+ _is_loop: false,
2265
+ params_def: {
2266
+ logo: '\n' +
2267
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2268
+ ' {{{svgLogo.content}}}\n' +
2269
+ '</a>\n' +
2270
+ '\n',
2271
+ spacer: '\n' +
2272
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2273
+ ' {{{relatedAsset.content}}}\n' +
2274
+ '</a>\n',
2275
+ menu: '<li id="squashMenu"\n' +
2276
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2277
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2278
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2279
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2280
+ '</svg>\n' +
2281
+ '</li>'
2282
+ },
2283
+ executables: {
2284
+ execs: [
2285
+ {
2286
+ replace: '>>@{logo} ? @{logo} : {{{svgLogo.content}}}<<',
2287
+ condition: { cond: '@{logo}', variable: 'logo' },
2288
+ positive_exec: { pos: '@{logo}' },
2289
+ negative_exec: { neg: '{{{svgLogo.content}}}' }
2290
+ },
2291
+ {
2292
+ replace: '>>@{menu} ? @{menu} : @nothing<<',
2293
+ condition: { cond: '@{menu}', variable: 'menu' },
2294
+ positive_exec: { pos: '@{menu}' },
2295
+ negative_exec: { neg: '' }
2296
+ }
2297
+ ],
2298
+ imports: []
2299
+ }
2300
+ },
2301
+ subst_recursive: [
2302
+ {
2303
+ params_def: {
2304
+ logo: '\n' +
2305
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2306
+ ' {{{svgLogo.content}}}\n' +
2307
+ '</a>\n' +
2308
+ '\n',
2309
+ spacer: '\n' +
2310
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2311
+ ' {{{relatedAsset.content}}}\n' +
2312
+ '</a>\n',
2313
+ menu: '<li id="squashMenu"\n' +
2314
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2315
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2316
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2317
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2318
+ '</svg>\n' +
2319
+ '</li>'
2320
+ },
2321
+ conds: [
2322
+ {
2323
+ replace: '>>@{logo} ? @{logo} : {{{svgLogo.content}}}<<',
2324
+ replacer: '\n' +
2325
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2326
+ ' {{{svgLogo.content}}}\n' +
2327
+ '</a>\n' +
2328
+ '\n'
2329
+ },
2330
+ {
2331
+ replace: '>>@{menu} ? @{menu} : @nothing<<',
2332
+ replacer: '<li id="squashMenu"\n' +
2333
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2334
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2335
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2336
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2337
+ '</svg>\n' +
2338
+ '</li>'
2339
+ }
2340
+ ],
2341
+ data: '//\n' +
2342
+ '<div style="width:100%;height:fit-content">\n' +
2343
+ '<table style="width:100%">\n' +
2344
+ ' <tr>\n' +
2345
+ ' <td style="width:62;height:63">\n' +
2346
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2347
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2348
+ ' // otherwise the result is a final stage substitution\n' +
2349
+ ' \n' +
2350
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2351
+ ' {{{svgLogo.content}}}\n' +
2352
+ '</a>\n' +
2353
+ '\n' +
2354
+ '\n' +
2355
+ ' </a>\n' +
2356
+ ' </td>\n' +
2357
+ ' <td>\n' +
2358
+ ' <ul class="navbar-nav">\n' +
2359
+ ' <li class="nav-item">\n' +
2360
+ ' \n' +
2361
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2362
+ ' {{{relatedAsset.content}}}\n' +
2363
+ '</a>\n' +
2364
+ '\n' +
2365
+ ' </li>\n' +
2366
+ ' <li id="squashMenu"\n' +
2367
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2368
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2369
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2370
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2371
+ '</svg>\n' +
2372
+ '</li>\n' +
2373
+ ' </ul>\n' +
2374
+ ' </td>\n' +
2375
+ ' <td style="text-align: center;">\n' +
2376
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2377
+ ' </td>\n' +
2378
+ ' <td>\n' +
2379
+ ' &nbsp;\n' +
2380
+ ' </td>\n' +
2381
+ ' </tr>\n' +
2382
+ '</table>\n' +
2383
+ '</div>\n' +
2384
+ '//'
2385
+ }
2386
+ ],
2387
+ conds: [
2388
+ {
2389
+ replace: '>>@{logo} ? @{logo} : {{{svgLogo.content}}}<<',
2390
+ condition: { cond: '@{logo}', variable: 'logo' },
2391
+ positive_exec: { pos: '@{logo}' },
2392
+ negative_exec: { neg: '{{{svgLogo.content}}}' }
2393
+ },
2394
+ {
2395
+ replace: '>>@{menu} ? @{menu} : @nothing<<',
2396
+ condition: { cond: '@{menu}', variable: 'menu' },
2397
+ positive_exec: { pos: '@{menu}' },
2398
+ negative_exec: { neg: '' }
2399
+ }
2400
+ ],
2401
+ backup_data: '@params<{ logo : %file%, spacer : %file%, menu : %file% }>\n' +
2402
+ '//\n' +
2403
+ '<div style="width:100%;height:fit-content">\n' +
2404
+ '<table style="width:100%">\n' +
2405
+ ' <tr>\n' +
2406
+ ' <td style="width:62;height:63">\n' +
2407
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2408
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2409
+ ' // otherwise the result is a final stage substitution\n' +
2410
+ ' >>@{logo} ? @{logo} : {{{svgLogo.content}}}<<\n' +
2411
+ ' </a>\n' +
2412
+ ' </td>\n' +
2413
+ ' <td>\n' +
2414
+ ' <ul class="navbar-nav">\n' +
2415
+ ' <li class="nav-item">\n' +
2416
+ ' @{spacer}\n' +
2417
+ ' </li>\n' +
2418
+ ' >>@{menu} ? @{menu} : @nothing<<\n' +
2419
+ ' </ul>\n' +
2420
+ ' </td>\n' +
2421
+ ' <td style="text-align: center;">\n' +
2422
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2423
+ ' </td>\n' +
2424
+ ' <td>\n' +
2425
+ ' &nbsp;\n' +
2426
+ ' </td>\n' +
2427
+ ' </tr>\n' +
2428
+ '</table>\n' +
2429
+ '</div>\n' +
2430
+ '//\n'
2431
+ },
2432
+ logout: {
2433
+ file: 'logout.tmplt',
2434
+ tree: false,
2435
+ data: '\n<button class="mini">logout</button>'
2436
+ },
2437
+ '_params<lr_div,logout>': { lr_div: '%file%', logout: '%file%' }
2438
+ }
2439
+ },
2440
+ skeleton_map: {
2441
+ 'html(1):start_doc_head': '\n<!doctype html>\n<html>\n<head>\n',
2442
+ 'files::header.tmplt': {
2443
+ type: 'tmplt',
2444
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/header.tmplt',
2445
+ data: '<meta charset="utf-8">\n' +
2446
+ '<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\n' +
2447
+ '<meta name="author" content="R. Leddy" />\n' +
2448
+ '<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">\n' +
2449
+ '<meta id="theme-color" name="theme-color" content="#452770">\n' +
2450
+ '\n' +
2451
+ '<link rel="canonical" href="{{canonical}}">\n' +
2452
+ '\n' +
2453
+ '<title>{{pageTitle}}</title>\n' +
2454
+ '<meta name="description" content="{{pageDescription}}">\n' +
2455
+ '\n' +
2456
+ '\n' +
2457
+ "<script defer src='{{primary_bundle}}'></script>",
2458
+ recursive: {
2459
+ _is_loop: false,
2460
+ params_def: { 'AUTHOR%config%': '%config%' },
2461
+ executables: { execs: [], imports: false }
2462
+ },
2463
+ backup_data: '<meta charset="utf-8">\n' +
2464
+ '<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\n' +
2465
+ '<meta name="author" content="@{AUTHOR%config%}" />\n' +
2466
+ '<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">\n' +
2467
+ '<meta id="theme-color" name="theme-color" content="#452770">\n' +
2468
+ '\n' +
2469
+ '<link rel="canonical" href="{{canonical}}">\n' +
2470
+ '\n' +
2471
+ '<title>{{pageTitle}}</title>\n' +
2472
+ '<meta name="description" content="{{pageDescription}}">\n' +
2473
+ '\n' +
2474
+ '\n' +
2475
+ "<script defer src='{{primary_bundle}}'></script>",
2476
+ subst_recursive: [
2477
+ {
2478
+ params_def: { 'AUTHOR%config%': '%config%' },
2479
+ conds: [],
2480
+ data: '<meta charset="utf-8">\n' +
2481
+ '<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\n' +
2482
+ '<meta name="author" content="R. Leddy" />\n' +
2483
+ '<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">\n' +
2484
+ '<meta id="theme-color" name="theme-color" content="#452770">\n' +
2485
+ '\n' +
2486
+ '<link rel="canonical" href="{{canonical}}">\n' +
2487
+ '\n' +
2488
+ '<title>{{pageTitle}}</title>\n' +
2489
+ '<meta name="description" content="{{pageDescription}}">\n' +
2490
+ '\n' +
2491
+ '\n' +
2492
+ "<script defer src='{{primary_bundle}}'></script>"
2493
+ }
2494
+ ],
2495
+ conds: []
2496
+ },
2497
+ 'bundle::44b9d596dbddaeaabc88f15f0bd790a29199451d': "\n<script defer src='bundle_13.js'></script>\n",
2498
+ 'bundle::6f7aafc1e2bbfbdc29741059414bff35a51e9891': "\n<script defer src='shop-kiosk_bundle.js'></script>\n",
2499
+ 'link::53408966b15c9e09f6566162fe7605b6a4c8783b': "\n<link rel='stylesheet' href='shared_styles.css'>\n",
2500
+ 'html(2):end_head': '\n</head>\n',
2501
+ 'html(3):start_style': '\n<style>\n',
2502
+ 'css::quick_view.css': {
2503
+ type: 'css',
2504
+ file: '/home/richard/GitHub/alphas/alpha-copious/css/quick_view.css',
2505
+ data: 'a {\n text-decoration: none;\n}'
2506
+ },
2507
+ 'html(4):end_style': '\n</style>\n',
2508
+ 'html(5):start_script': '\n<script lang="JavaScript" >\n',
2509
+ 'files<js>::top_vars': {
2510
+ type: 'script',
2511
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/top_vars.js',
2512
+ data: 'var g_siteURL = window.location.host;\n' +
2513
+ 'var g_finalizers = []\n' +
2514
+ 'var g_loginStateViewHolders = {}\n' +
2515
+ 'var g_loginValueViews = {}\n' +
2516
+ 'var g_LoggedIn = false\n' +
2517
+ 'var g_global_web3_public_identity = false'
2518
+ },
2519
+ 'html(6):end_script': '\n</script>\n',
2520
+ 'html(7):start_body': '\n<body>\n',
2521
+ 'files::params::nav_bar_V.smplt': {
2522
+ type: 'tmplt',
2523
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/nav_bar_V.smplt',
2524
+ data: '<nav id="mainNav">\n' +
2525
+ '\t//\n' +
2526
+ '<div style="width:100%;height:fit-content">\n' +
2527
+ '<table style="width:100%">\n' +
2528
+ ' <tr>\n' +
2529
+ ' <td style="width:62;height:63">\n' +
2530
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2531
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2532
+ ' // otherwise the result is a final stage substitution\n' +
2533
+ ' \n' +
2534
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2535
+ ' {{{svgLogo.content}}}\n' +
2536
+ '</a>\n' +
2537
+ '\n' +
2538
+ '\n' +
2539
+ ' </a>\n' +
2540
+ ' </td>\n' +
2541
+ ' <td>\n' +
2542
+ ' <ul class="navbar-nav">\n' +
2543
+ ' <li class="nav-item">\n' +
2544
+ ' \n' +
2545
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2546
+ ' {{{relatedAsset.content}}}\n' +
2547
+ '</a>\n' +
2548
+ '\n' +
2549
+ ' </li>\n' +
2550
+ ' <li id="squashMenu"\n' +
2551
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2552
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2553
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2554
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2555
+ '</svg>\n' +
2556
+ '</li>\n' +
2557
+ ' </ul>\n' +
2558
+ ' </td>\n' +
2559
+ ' <td style="text-align: center;">\n' +
2560
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2561
+ ' </td>\n' +
2562
+ ' <td>\n' +
2563
+ ' &nbsp;\n' +
2564
+ ' </td>\n' +
2565
+ ' </tr>\n' +
2566
+ '</table>\n' +
2567
+ '</div>\n' +
2568
+ '//\n' +
2569
+ '\t<div class="very-short conditional-hide" {{custom-logout-styles}}>\n' +
2570
+ '<button class="mini">logout</button></div>\n' +
2571
+ '</nav>',
2572
+ recursive: {
2573
+ _is_loop: false,
2574
+ params_def: {
2575
+ lr_div: '//\n' +
2576
+ '<div style="width:100%;height:fit-content">\n' +
2577
+ '<table style="width:100%">\n' +
2578
+ ' <tr>\n' +
2579
+ ' <td style="width:62;height:63">\n' +
2580
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2581
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2582
+ ' // otherwise the result is a final stage substitution\n' +
2583
+ ' \n' +
2584
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2585
+ ' {{{svgLogo.content}}}\n' +
2586
+ '</a>\n' +
2587
+ '\n' +
2588
+ '\n' +
2589
+ ' </a>\n' +
2590
+ ' </td>\n' +
2591
+ ' <td>\n' +
2592
+ ' <ul class="navbar-nav">\n' +
2593
+ ' <li class="nav-item">\n' +
2594
+ ' \n' +
2595
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2596
+ ' {{{relatedAsset.content}}}\n' +
2597
+ '</a>\n' +
2598
+ '\n' +
2599
+ ' </li>\n' +
2600
+ ' <li id="squashMenu"\n' +
2601
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2602
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2603
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2604
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2605
+ '</svg>\n' +
2606
+ '</li>\n' +
2607
+ ' </ul>\n' +
2608
+ ' </td>\n' +
2609
+ ' <td style="text-align: center;">\n' +
2610
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2611
+ ' </td>\n' +
2612
+ ' <td>\n' +
2613
+ ' &nbsp;\n' +
2614
+ ' </td>\n' +
2615
+ ' </tr>\n' +
2616
+ '</table>\n' +
2617
+ '</div>\n' +
2618
+ '//',
2619
+ logout: '\n<button class="mini">logout</button>'
2620
+ },
2621
+ executables: {
2622
+ execs: [
2623
+ {
2624
+ replace: '>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<',
2625
+ condition: { cond: '@{logout}', variable: 'logout' },
2626
+ positive_exec: {
2627
+ pos: '<div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div>'
2628
+ },
2629
+ negative_exec: { neg: '' }
2630
+ }
2631
+ ],
2632
+ imports: []
2633
+ }
2634
+ },
2635
+ backup_data: '@params<{lr_div : %file%, logout : %file%}>\n' +
2636
+ '<nav id="mainNav">\n' +
2637
+ '\t@{lr_div}\n' +
2638
+ '\t>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<\n' +
2639
+ '</nav>',
2640
+ subst_recursive: [
2641
+ {
2642
+ params_def: {
2643
+ lr_div: '//\n' +
2644
+ '<div style="width:100%;height:fit-content">\n' +
2645
+ '<table style="width:100%">\n' +
2646
+ ' <tr>\n' +
2647
+ ' <td style="width:62;height:63">\n' +
2648
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2649
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2650
+ ' // otherwise the result is a final stage substitution\n' +
2651
+ ' \n' +
2652
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2653
+ ' {{{svgLogo.content}}}\n' +
2654
+ '</a>\n' +
2655
+ '\n' +
2656
+ '\n' +
2657
+ ' </a>\n' +
2658
+ ' </td>\n' +
2659
+ ' <td>\n' +
2660
+ ' <ul class="navbar-nav">\n' +
2661
+ ' <li class="nav-item">\n' +
2662
+ ' \n' +
2663
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2664
+ ' {{{relatedAsset.content}}}\n' +
2665
+ '</a>\n' +
2666
+ '\n' +
2667
+ ' </li>\n' +
2668
+ ' <li id="squashMenu"\n' +
2669
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2670
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2671
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2672
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2673
+ '</svg>\n' +
2674
+ '</li>\n' +
2675
+ ' </ul>\n' +
2676
+ ' </td>\n' +
2677
+ ' <td style="text-align: center;">\n' +
2678
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2679
+ ' </td>\n' +
2680
+ ' <td>\n' +
2681
+ ' &nbsp;\n' +
2682
+ ' </td>\n' +
2683
+ ' </tr>\n' +
2684
+ '</table>\n' +
2685
+ '</div>\n' +
2686
+ '//',
2687
+ logout: '\n<button class="mini">logout</button>'
2688
+ },
2689
+ conds: [
2690
+ {
2691
+ replace: '>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<',
2692
+ replacer: '<div class="very-short conditional-hide" {{custom-logout-styles}}>\n' +
2693
+ '<button class="mini">logout</button></div>'
2694
+ }
2695
+ ],
2696
+ data: '<nav id="mainNav">\n' +
2697
+ '\t//\n' +
2698
+ '<div style="width:100%;height:fit-content">\n' +
2699
+ '<table style="width:100%">\n' +
2700
+ ' <tr>\n' +
2701
+ ' <td style="width:62;height:63">\n' +
2702
+ ' <a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2703
+ ' // here a logo may be put in place very early on (sgv, png)\n' +
2704
+ ' // otherwise the result is a final stage substitution\n' +
2705
+ ' \n' +
2706
+ '<a class="nav-link" href="/" target="{{canonical}}-again" >\n' +
2707
+ ' {{{svgLogo.content}}}\n' +
2708
+ '</a>\n' +
2709
+ '\n' +
2710
+ '\n' +
2711
+ ' </a>\n' +
2712
+ ' </td>\n' +
2713
+ ' <td>\n' +
2714
+ ' <ul class="navbar-nav">\n' +
2715
+ ' <li class="nav-item">\n' +
2716
+ ' \n' +
2717
+ '<a class="nav-link" href="{{relatedAsset.link}}" target="{{relatedAsset.name}}" >\n' +
2718
+ ' {{{relatedAsset.content}}}\n' +
2719
+ '</a>\n' +
2720
+ '\n' +
2721
+ ' </li>\n' +
2722
+ ' <li id="squashMenu"\n' +
2723
+ ' class="nav-item" style="visibility:hidden;cursor:pointer" \n' +
2724
+ ' onmousedown="menuHandler(this)" onmouseup="releaseMenu(this)">\n' +
2725
+ ' <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">\n' +
2726
+ '\t<path class="heroicon-ui" d="M4 5h16a1 1 0 0 1 0 2H4a1 1 0 1 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2zm0 6h16a1 1 0 0 1 0 2H4a1 1 0 0 1 0-2z"/>\n' +
2727
+ '</svg>\n' +
2728
+ '</li>\n' +
2729
+ ' </ul>\n' +
2730
+ ' </td>\n' +
2731
+ ' <td style="text-align: center;">\n' +
2732
+ ' <h2>{{{intergalactic.content}}}</h2> \n' +
2733
+ ' </td>\n' +
2734
+ ' <td>\n' +
2735
+ ' &nbsp;\n' +
2736
+ ' </td>\n' +
2737
+ ' </tr>\n' +
2738
+ '</table>\n' +
2739
+ '</div>\n' +
2740
+ '//\n' +
2741
+ '\t<div class="very-short conditional-hide" {{custom-logout-styles}}>\n' +
2742
+ '<button class="mini">logout</button></div>\n' +
2743
+ '</nav>'
2744
+ }
2745
+ ],
2746
+ conds: [
2747
+ {
2748
+ replace: '>>@{logout} ? <div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div> : @nothing <<',
2749
+ condition: { cond: '@{logout}', variable: 'logout' },
2750
+ positive_exec: {
2751
+ pos: '<div class="very-short conditional-hide" {{custom-logout-styles}}>@{logout}</div>'
2752
+ },
2753
+ negative_exec: { neg: '' }
2754
+ }
2755
+ ]
2756
+ },
2757
+ 'files::MAP-sections_frame.smplt': {
2758
+ type: 'tmplt',
2759
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/MAP-sections_frame.smplt',
2760
+ data: '@list<el><{ group_name <- @<el[1]>, SOURCE-LINK <- @<el[2]>}>\n' +
2761
+ '<@el>\n' +
2762
+ '<section id="@<el[1]>_container" class="content-container" {{@<el[1]>_styles}} >\n' +
2763
+ '{{{SOURCE_LINK}}}\n' +
2764
+ '</section>\n' +
2765
+ '</@el>',
2766
+ recursive: {
2767
+ _is_loop: true,
2768
+ params_def: {
2769
+ group_name: '@<el[1]>',
2770
+ 'SOURCE-LINK': '@<el[2]>',
2771
+ _var_name: 'el'
2772
+ },
2773
+ executables: { execs: [], imports: false }
2774
+ },
2775
+ subst_recursive: [
2776
+ {
2777
+ params_def: {
2778
+ group_name: '@<el[1]>',
2779
+ 'SOURCE-LINK': '@<el[2]>',
2780
+ _var_name: 'el'
2781
+ },
2782
+ conds: [],
2783
+ data: '@list<el><{ group_name <- @<el[1]>, SOURCE-LINK <- @<el[2]>}>\n' +
2784
+ '<@el>\n' +
2785
+ '<section id="@<el[1]>_container" class="content-container" {{@<el[1]>_styles}} >\n' +
2786
+ '{{{SOURCE_LINK}}}\n' +
2787
+ '</section>\n' +
2788
+ '</@el>'
2789
+ }
2790
+ ],
2791
+ conds: [],
2792
+ backup_data: '@list<el><{ group_name <- @<el[1]>, SOURCE-LINK <- @<el[2]>}>\n' +
2793
+ '<@el>\n' +
2794
+ '<section id="@{group_name}_container" class="content-container" {{@{group_name}_styles}} >\n' +
2795
+ '{{{SOURCE_LINK}}}\n' +
2796
+ '</section>\n' +
2797
+ '</@el>'
2798
+ },
2799
+ 'files::flexy_items_A-main.tmplt': {
2800
+ type: 'tmplt',
2801
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/flexy_items_A-main.tmplt',
2802
+ data: '<main>\n' +
2803
+ '\n' +
2804
+ '\t<div class="items">\n' +
2805
+ '\t\t<div class="item">\n' +
2806
+ '\t\t\t{{{svgBannerFrame.content}}}\n' +
2807
+ '\t\t</div>\n' +
2808
+ '\t\t<div id="greet_and_meet_1" class="item">\n' +
2809
+ '\t\t\t<div id="desktopCenter" class="shortviz" ></div>\n' +
2810
+ '\t\t\t<p class="extra-i" style="color:navy">\n' +
2811
+ '\t\t\t<span style="font-weight:bold;">{{conversation}}</span> chat :: Join our conversations.\n' +
2812
+ '\t\t\t</p>\n' +
2813
+ '\t\t\t<br>\n' +
2814
+ '\t\t\t<a id="a4179" href="javascript:chat_opener()" style="cursor:pointer" >\n' +
2815
+ '\t\t\t<p class="extra-i" style="text-align:center" >\n' +
2816
+ '\t\t\t{{{chat.button.content}}}\n' +
2817
+ '\t\t\t</p>\n' +
2818
+ '\t\t\t</a>\n' +
2819
+ '\t\t</div>\n' +
2820
+ '\t\t<div class="item">\n' +
2821
+ '\t\t\t<div class="longviz" >&nbsp;</div>\n' +
2822
+ '\t\t\t<p class="extra-i" style="color:darkred">\n' +
2823
+ '\t\t\tBrowse the blog or check out some demonstrations.\n' +
2824
+ '\t\t\t</p>\n' +
2825
+ '\t\t\t<br>\n' +
2826
+ '\t\t\t<p class="extra-i" style="text-align:center">\n' +
2827
+ '\t\t\t\t{{{public_content_access.content}}}\n' +
2828
+ '\t\t\t</p>\n' +
2829
+ '\t\t\t<div id="desktopRight" class="shortviz" ></div>\n' +
2830
+ '\t\t</div>\n' +
2831
+ '\t\t<div id="greet_and_meet_2" class="item">\n' +
2832
+ '\t\t\t<p class="extra-i" style="color:darkgreen;font-weight:bold;">\n' +
2833
+ '\t\t\tFor Your Personal Use > Login\n' +
2834
+ '\t\t\t</p>\n' +
2835
+ '\t\t\t<hr><br>\n' +
2836
+ '\t\t\t<a id="a4199" href="javascript:login_process()" style="cursor:pointer">\n' +
2837
+ '\t\t\t<p class="extra-i" >\n' +
2838
+ '\t\t\t\t{{{login_button.button.content}}}\n' +
2839
+ '\t\t\t</p>\n' +
2840
+ '\t\t\t</a>\n' +
2841
+ '\t\t</div>\n' +
2842
+ '\t\t<div id="audios_1" class="item" style="display:none;">\n' +
2843
+ '\t\t\t<p class="extra-i" style="color:darkgreen;font-weight:bold;">\n' +
2844
+ '\t\t\tYour session is going\n' +
2845
+ '\t\t\t</p>\n' +
2846
+ '\t\t\t<hr><br>\n' +
2847
+ '\t\t\t<a id="b5199" href="javascript:logout_process()" style="cursor:pointer">\n' +
2848
+ '\t\t\t<p class="extra-i" >\n' +
2849
+ '\t\t\t\t{{{logout_button.button.content}}}\n' +
2850
+ '\t\t\t</p>\n' +
2851
+ '\t\t\t</a>\n' +
2852
+ '\t\t</div>\t\t\n' +
2853
+ '\t\t<div id="lowerFiller" class="fillLowerWrap">\n' +
2854
+ '\t\t\t<div class="fillLower">\n' +
2855
+ '\t\t\t\talpha test\n' +
2856
+ '\t\t\t</div>\n' +
2857
+ '\t\t</div>\n' +
2858
+ '\t</div>\n' +
2859
+ '</main>'
2860
+ },
2861
+ 'files::footer_A.tmplt': {
2862
+ type: 'tmplt',
2863
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/footer_A.tmplt',
2864
+ data: '<footer>\n' +
2865
+ '\t<ul class="footer-list">\n' +
2866
+ '\t\t<li>\n' +
2867
+ '\t\t\t<a href="{{canonical}}" target="{{canonical}}-again">copyright &copy; {{copyRightYear}} {{companyShortLink}}</a>\n' +
2868
+ '\t\t\t<span class="status-style" id="page-error-message">status: good</span>\n' +
2869
+ '\t\t</li>\n' +
2870
+ '\t</ul>\n' +
2871
+ '</footer>'
2872
+ },
2873
+ 'verbatim::95e0657b3716593b896721f68e0587f8afb85ce0': '\n<!-- start dynamic content -->\n',
2874
+ 'files::squashable_menu_A.tmplt': {
2875
+ type: 'tmplt',
2876
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/squashable_menu_A.tmplt',
2877
+ data: '<div id="squashMenuContainer" >\n\tempty content\n</div>'
2878
+ },
2879
+ 'files::calc::contact_box${start=100}': {
2880
+ file: 'fadable_box.tmplt',
2881
+ key_values: {
2882
+ Z_INDEX: 'f@init{$}',
2883
+ BOX_NAME: 'f@name{parent}',
2884
+ INSERT: ''
2885
+ },
2886
+ path_finder: 'html',
2887
+ op: '=',
2888
+ evaluations: { BOX_NAME: 'contact_box', INSERT: '' },
2889
+ data: '\n' +
2890
+ '<div id="contact_box" class="fade_able" style="z-index:100" >\n' +
2891
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2892
+ `\t\t<span class="closer_x" onmousedown="closefader('contact_box')">x</span>\n` +
2893
+ '\t</div>\n' +
2894
+ '\t<div class="fade_able_content" >\n' +
2895
+ '\t\t{{{contact_box.content }}}\n' +
2896
+ '\t</div>\n' +
2897
+ '</div>\n',
2898
+ backup_data: '\n' +
2899
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
2900
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2901
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
2902
+ '\t</div>\n' +
2903
+ '\t<div class="fade_able_content" >\n' +
2904
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
2905
+ '\t</div>\n' +
2906
+ '</div>\n'
2907
+ },
2908
+ 'files::calc::about_box${start++}': {
2909
+ file: 'fadable_box.tmplt',
2910
+ key_values: {
2911
+ Z_INDEX: 'f@incr{$}',
2912
+ BOX_NAME: 'f@name{parent}',
2913
+ INSERT: ''
2914
+ },
2915
+ path_finder: 'html',
2916
+ op: '++',
2917
+ evaluations: { BOX_NAME: 'about_box', INSERT: '' },
2918
+ data: '\n' +
2919
+ '<div id="about_box" class="fade_able" style="z-index:101" >\n' +
2920
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2921
+ `\t\t<span class="closer_x" onmousedown="closefader('about_box')">x</span>\n` +
2922
+ '\t</div>\n' +
2923
+ '\t<div class="fade_able_content" >\n' +
2924
+ '\t\t{{{about_box.content }}}\n' +
2925
+ '\t</div>\n' +
2926
+ '</div>\n',
2927
+ backup_data: '\n' +
2928
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
2929
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2930
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
2931
+ '\t</div>\n' +
2932
+ '\t<div class="fade_able_content" >\n' +
2933
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
2934
+ '\t</div>\n' +
2935
+ '</div>\n'
2936
+ },
2937
+ 'files::calc::thankyou_box${start++}': {
2938
+ file: 'fadable_box.tmplt',
2939
+ key_values: {
2940
+ Z_INDEX: 'f@incr{$}',
2941
+ BOX_NAME: 'f@name{parent}',
2942
+ INSERT: "onclick='hide_thankyou_box(this)'"
2943
+ },
2944
+ path_finder: 'html',
2945
+ op: '++',
2946
+ evaluations: {
2947
+ BOX_NAME: 'thankyou_box',
2948
+ INSERT: "onclick='hide_thankyou_box(this)'"
2949
+ },
2950
+ data: '\n' +
2951
+ `<div id="thankyou_box" class="fade_able" style="z-index:102" onclick='hide_thankyou_box(this)' >\n` +
2952
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2953
+ `\t\t<span class="closer_x" onmousedown="closefader('thankyou_box')">x</span>\n` +
2954
+ '\t</div>\n' +
2955
+ '\t<div class="fade_able_content" >\n' +
2956
+ '\t\t{{{thankyou_box.content }}}\n' +
2957
+ '\t</div>\n' +
2958
+ '</div>\n',
2959
+ backup_data: '\n' +
2960
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
2961
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2962
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
2963
+ '\t</div>\n' +
2964
+ '\t<div class="fade_able_content" >\n' +
2965
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
2966
+ '\t</div>\n' +
2967
+ '</div>\n'
2968
+ },
2969
+ 'files::calc::topicBox_1${start++}': {
2970
+ file: 'fadable_box.tmplt',
2971
+ key_values: {
2972
+ Z_INDEX: 'f@incr{$}',
2973
+ BOX_NAME: 'f@name{parent}',
2974
+ INSERT: ''
2975
+ },
2976
+ path_finder: 'html',
2977
+ op: '++',
2978
+ evaluations: { BOX_NAME: 'topicBox_1', INSERT: '' },
2979
+ data: '\n' +
2980
+ '<div id="topicBox_1" class="fade_able" style="z-index:103" >\n' +
2981
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2982
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_1')">x</span>\n` +
2983
+ '\t</div>\n' +
2984
+ '\t<div class="fade_able_content" >\n' +
2985
+ '\t\t{{{topicBox_1.content }}}\n' +
2986
+ '\t</div>\n' +
2987
+ '</div>\n',
2988
+ backup_data: '\n' +
2989
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
2990
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
2991
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
2992
+ '\t</div>\n' +
2993
+ '\t<div class="fade_able_content" >\n' +
2994
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
2995
+ '\t</div>\n' +
2996
+ '</div>\n'
2997
+ },
2998
+ 'files::calc::topicBox_2${start++}': {
2999
+ file: 'fadable_box.tmplt',
3000
+ key_values: {
3001
+ Z_INDEX: 'f@incr{$}',
3002
+ BOX_NAME: 'f@name{parent}',
3003
+ INSERT: ''
3004
+ },
3005
+ path_finder: 'html',
3006
+ op: '++',
3007
+ evaluations: { BOX_NAME: 'topicBox_2', INSERT: '' },
3008
+ data: '\n' +
3009
+ '<div id="topicBox_2" class="fade_able" style="z-index:104" >\n' +
3010
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3011
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_2')">x</span>\n` +
3012
+ '\t</div>\n' +
3013
+ '\t<div class="fade_able_content" >\n' +
3014
+ '\t\t{{{topicBox_2.content }}}\n' +
3015
+ '\t</div>\n' +
3016
+ '</div>\n',
3017
+ backup_data: '\n' +
3018
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3019
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3020
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3021
+ '\t</div>\n' +
3022
+ '\t<div class="fade_able_content" >\n' +
3023
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3024
+ '\t</div>\n' +
3025
+ '</div>\n'
3026
+ },
3027
+ 'files::calc::topicBox_3${start++}': {
3028
+ file: 'fadable_box.tmplt',
3029
+ key_values: {
3030
+ Z_INDEX: 'f@incr{$}',
3031
+ BOX_NAME: 'f@name{parent}',
3032
+ INSERT: ''
3033
+ },
3034
+ path_finder: 'html',
3035
+ op: '++',
3036
+ evaluations: { BOX_NAME: 'topicBox_3', INSERT: '' },
3037
+ data: '\n' +
3038
+ '<div id="topicBox_3" class="fade_able" style="z-index:105" >\n' +
3039
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3040
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_3')">x</span>\n` +
3041
+ '\t</div>\n' +
3042
+ '\t<div class="fade_able_content" >\n' +
3043
+ '\t\t{{{topicBox_3.content }}}\n' +
3044
+ '\t</div>\n' +
3045
+ '</div>\n',
3046
+ backup_data: '\n' +
3047
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3048
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3049
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3050
+ '\t</div>\n' +
3051
+ '\t<div class="fade_able_content" >\n' +
3052
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3053
+ '\t</div>\n' +
3054
+ '</div>\n'
3055
+ },
3056
+ 'files::calc::register${start++}': {
3057
+ file: 'solidable_box.tmplt',
3058
+ key_values: {
3059
+ Z_INDEX: 'f@incr{$}',
3060
+ BOX_NAME: 'f@name{parent}',
3061
+ INSERT: ''
3062
+ },
3063
+ path_finder: 'html',
3064
+ op: '++',
3065
+ evaluations: { BOX_NAME: 'register', INSERT: '' },
3066
+ data: '<div id="register" class="solid_able" style="z-index:106" >\n' +
3067
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3068
+ `\t\t<span class="closer_x" onmousedown="closesolid('register')">x</span>\n` +
3069
+ '\t</div>\n' +
3070
+ '\t<div class="fade_able_content" >\n' +
3071
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3072
+ '\t\t\t{{{register.content}}}\n' +
3073
+ '\t\t</div>\n' +
3074
+ '\t</div>\n' +
3075
+ '</div>\n',
3076
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
3077
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3078
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
3079
+ '\t</div>\n' +
3080
+ '\t<div class="fade_able_content" >\n' +
3081
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3082
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
3083
+ '\t\t</div>\n' +
3084
+ '\t</div>\n' +
3085
+ '</div>\n'
3086
+ },
3087
+ 'files::calc::login${start++}': {
3088
+ file: 'solidable_box.tmplt',
3089
+ key_values: {
3090
+ Z_INDEX: 'f@incr{$}',
3091
+ BOX_NAME: 'f@name{parent}',
3092
+ INSERT: ''
3093
+ },
3094
+ path_finder: 'html',
3095
+ op: '++',
3096
+ evaluations: { BOX_NAME: 'login', INSERT: '' },
3097
+ data: '<div id="login" class="solid_able" style="z-index:107" >\n' +
3098
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3099
+ `\t\t<span class="closer_x" onmousedown="closesolid('login')">x</span>\n` +
3100
+ '\t</div>\n' +
3101
+ '\t<div class="fade_able_content" >\n' +
3102
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3103
+ '\t\t\t{{{login.content}}}\n' +
3104
+ '\t\t</div>\n' +
3105
+ '\t</div>\n' +
3106
+ '</div>\n',
3107
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
3108
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3109
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
3110
+ '\t</div>\n' +
3111
+ '\t<div class="fade_able_content" >\n' +
3112
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3113
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
3114
+ '\t\t</div>\n' +
3115
+ '\t</div>\n' +
3116
+ '</div>\n'
3117
+ },
3118
+ 'files::intergalactic-explain.tmplt': {
3119
+ type: 'tmplt',
3120
+ file: '/home/richard/GitHub/alphas/alpha-copious/html/intergalactic-explain.tmplt',
3121
+ data: '<style>\n' +
3122
+ '\t.glactic-id-link {\n' +
3123
+ '\t\tmargin: 6px;\n' +
3124
+ '\t\tpadding: 2px;\n' +
3125
+ '\t\tcursor: pointer;\n' +
3126
+ '\t\tfont-weight: bold;\n' +
3127
+ '\t}\n' +
3128
+ '</style>\n' +
3129
+ '<div id="intergalactic-explain" class="solid_able" style="z-index:1000" >\n' +
3130
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3131
+ `\t\t<span class="closer_x" onmousedown="closesolid('intergalactic-explain')">x</span>\n` +
3132
+ '\t</div>\n' +
3133
+ '\t<div class="fade_able_content" >\n' +
3134
+ `\t\t<div onmousedown="closesolid('intergalactic-explain')" style="min-width: 400px;min-height: 300px;">\n` +
3135
+ '\t\t\t<div style="padding-left:6px;padding-right:6px" >\n' +
3136
+ `\t\t\t\t<div style="margin-bottom: 3px;font-weight:bolder;font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;">\n` +
3137
+ '\t\t\t\t\tWhat is an intergalactic identity?\n' +
3138
+ '\t\t\t\t</div>\n' +
3139
+ '\t\t\t\t<blockquote style="padding-left:5%;background-color: rgb(255, 254, 245);color:rgb(2, 71, 2);">\n' +
3140
+ '\t\t\t\t\tIt is a string with a special format derived from a secure hash of content that you make up about yourself.\n' +
3141
+ '\t\t\t\t</blockquote>\n' +
3142
+ '\t\t\t\t<div style="margin-bottom: 4px;">\n' +
3143
+ '\t\t\t\t\tYou may use this identity anywhere that accepts it which means other website and concerns.\n' +
3144
+ '\t\t\t\t</div>\n' +
3145
+ `\t\t\t\t<div style="margin-bottom: 2px;font-weight:bolder;font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;">\n` +
3146
+ '\t\t\t\t\tHow this site uses your intergalactic identity:\n' +
3147
+ '\t\t\t\t</div>\n' +
3148
+ '\t\t\t\t<div style="margin-top:3px;padding-left:3%;background-color: rgb(255, 255, 254);color:rgb(22, 48, 5);">\n' +
3149
+ '\t\t\t\t\t<div style="margin-top:3px;margin-bottom:3px;">\n' +
3150
+ '\t\t\t\t\t\t<ul style="list-style-type:disc;margin: 2px;">\n' +
3151
+ '\t\t\t\t\t\t\t<li> This website associates your intergalactic identity with responses to your messages (e.g contact). \n' +
3152
+ '\t\t\t\t\t\t\t\tYou may return to this site to retrieve responses to your messages.\n' +
3153
+ '\t\t\t\t\t\t\t</li>\n' +
3154
+ '\t\t\t\t\t\t\t<li> \n' +
3155
+ '\t\t\t\t\t\t\t\tYou may use your intergalactic identity to start a session with this site (i.e. login).\n' +
3156
+ '\t\t\t\t\t\t\t</li>\n' +
3157
+ '\t\t\t\t\t\t</ul>\t\n' +
3158
+ '\t\t\t\t\t</div>\n' +
3159
+ '\t\t\t\t</div>\n' +
3160
+ '\t\t\t\t<div>\n' +
3161
+ '\t\t\t\t\t<div style="margin-top:3px;" >\n' +
3162
+ '\t\t\t\t\t\t<div style="padding:3px;color:darkslateblue;border: solid 1px rgba(65, 128, 148, 0.527)">\n' +
3163
+ '\t\t\t\t\t\t\t<div style="margin:2px">Your personal information will not be stored on our servers.</div>\n' +
3164
+ '\t\t\t\t\t\t\t<div style="margin:2px">Your personal information will not be tied to our domain within your browser storage.</div>\n' +
3165
+ '\t\t\t\t\t\t\t<div style="margin:2px"><b>Instead...</b> your personal information will be associated with a virtual URL tied to your identity.</div>\n' +
3166
+ '\t\t\t\t\t\t</div>\n' +
3167
+ '\t\t\t\t\t\t<div style="padding:3px;margin-top:4px;">\n' +
3168
+ '\t\t\t\t\t\t\tYou will be given a personal <span style="font-weight: bolder;">URL framework page</span>\n' +
3169
+ '\t\t\t\t\t\t</div>\n' +
3170
+ '\t\t\t\t\t\t<div style="padding:4px;color:rgb(43, 71, 46)" >\n' +
3171
+ '\t\t\t\t\t\t\t<p style="padding:4px;color:rgb(43, 71, 46)">\n' +
3172
+ '\t\t\t\t\t\t\t\tThe links here can help lead you to tools that help open pages within your URL framework page enabling you to\n' +
3173
+ '\t\t\t\t\t\t\t\twork with your personal preferences within those pages.\n' +
3174
+ '\t\t\t\t\t\t\t</p>\n' +
3175
+ '\t\t\t\t\t\t\t<p style="padding:4px;color:rgb(43, 71, 46)">\n' +
3176
+ '\t\t\t\t\t\t\t\tThe pages you open may use personal data by asking your framework page to make requests on their behalf.\n' +
3177
+ '\t\t\t\t\t\t\t\tFor example, an e-commerce page\n' +
3178
+ '\t\t\t\t\t\t\t\twill not ask you for your credit card number, but will ask your personal page to carry out a transaction its behalf.\n' +
3179
+ '\t\t\t\t\t\t\t</p>\n' +
3180
+ '\t\t\t\t\t\t\t<p style="padding:4px;color:rgb(43, 71, 46)">\n' +
3181
+ '\t\t\t\t\t\t\t\tYou will have complete control over your personal URL framework page. But, you can maintain it in any way you see fit.\n' +
3182
+ '\t\t\t\t\t\t\t</p>\n' +
3183
+ '\t\t\t\t\t\t</div>\n' +
3184
+ '\t\t\t\t\t</div>\n' +
3185
+ '\t\t\t\t</div>\n' +
3186
+ '\t\t\t\t<div style="padding-left:5%;background-color: rgb(255, 254, 245);color:rgb(2, 71, 2);" >\n' +
3187
+ '\t\t\t\t\tBasically, your personal data will be stored in one place and never leave your browser unless you say so. You will not login to this site, but you may allow the \n' +
3188
+ '\t\t\t\t\tsite to log into you - by starting a sessions. The session merely knows you are there and does not ask to know too much about you.\n' +
3189
+ '\t\t\t\t</div>\t\n' +
3190
+ '\t\t\t</div>\n' +
3191
+ '\t\t</div>\n' +
3192
+ '\t\t<div style="padding-left:2%;background-color: rgb(255, 254, 245);color:rgb(7, 104, 7);" >\n' +
3193
+ '\t\t\t<!-- link goes here -->\n' +
3194
+ '\t\t\t<span class="glactic-id-link" onclick="galactic_id_maker_opener()">Follow this link to create your intergalactic identity</span>\n' +
3195
+ '\t\t</div>\n' +
3196
+ '\t\t<br><br><br><br><br><br><br>&nbsp;\n' +
3197
+ '\t</div>\n' +
3198
+ '</div>\n' +
3199
+ '<script>\n' +
3200
+ '\n' +
3201
+ '\t\n' +
3202
+ '</script>'
3203
+ },
3204
+ 'template::{\n {{{advertPopups.content}}}\n}': { type: 'template', data: '{\n {{{advertPopups.content}}}' },
3205
+ 'html(8):end_body_html': '\n</body>\n</html>\n',
3206
+ 'html(9):start_script': '\n<script lang="JavaScript" >\n',
3207
+ 'verbatim::62859a79b38ec8550889db5268aa7bae33c59be2': '\n' +
3208
+ '// === --------------------------------------- === --------------------------------------- === --------------------------------------\n' +
3209
+ '// APPLICATIONS\n' +
3210
+ '// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --\n',
3211
+ 'script::[alt-script]/floating_window_controls.js': {
3212
+ type: 'script',
3213
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/floating_window_controls.js',
3214
+ data: 'window.all_windows = false\n' +
3215
+ 'let draggers = {}\n' +
3216
+ 'let current_dragger = false\n' +
3217
+ 'function add_dragging() {\n' +
3218
+ ' let drag_bars = document.getElementsByClassName("togglebar")\n' +
3219
+ ' for ( let db of drag_bars ) {\n' +
3220
+ ' let cname = db.parentNode.className\n' +
3221
+ " if ( cname.indexOf(' ') > 0 ) {\n" +
3222
+ " cname = cname.split(' ')[0]\n" +
3223
+ ' }\n' +
3224
+ " if ( cname === 'solid_able' ) {\n" +
3225
+ ' if ( db.parentNode.id === "intergalactic-explain" ) {\n' +
3226
+ ' cname = "fade_able"\n' +
3227
+ ' }\n' +
3228
+ ' }\n' +
3229
+ ' if ( ["fade_able","right_fade_able"].indexOf(cname) >= 0 ) {\n' +
3230
+ ' let drag_Node = db.parentNode\n' +
3231
+ ' draggers[drag_Node.id] = {\n' +
3232
+ ' "offsetX" : 0,\n' +
3233
+ ' "offsetY" : 0,\n' +
3234
+ ' "isDragging" : false,\n' +
3235
+ ' "dragged" : drag_Node,\n' +
3236
+ ' "drag_control" : db\n' +
3237
+ ' }\n' +
3238
+ ' db.onmousedown = (e) => {\n' +
3239
+ ' let drag_Node = e.target.parentNode;\n' +
3240
+ ' if ( !draggers[drag_Node.id] ) return\n' +
3241
+ ' e.preventDefault()\n' +
3242
+ ' draggers[drag_Node.id].isDragging = true;\n' +
3243
+ ' draggers[drag_Node.id].offsetX = e.clientX - drag_Node.getBoundingClientRect().left;\n' +
3244
+ ' draggers[drag_Node.id].offsetY = e.clientY - drag_Node.getBoundingClientRect().top;\n' +
3245
+ " db.style.cursor = 'grabbing';\n" +
3246
+ ' current_dragger = drag_Node.id\n' +
3247
+ ' }\n' +
3248
+ ' db.onmouseup = (ev) => {\n' +
3249
+ ' if ( current_dragger ) {\n' +
3250
+ ' let dragger_stats = draggers[current_dragger]\n' +
3251
+ ' let drag_bar = dragger_stats.drag_control\n' +
3252
+ " drag_bar.style.cursor = 'move';\n" +
3253
+ ' }\n' +
3254
+ ' }\n' +
3255
+ ' }\n' +
3256
+ ' }\n' +
3257
+ " document.addEventListener('mousemove', (e) => {\n" +
3258
+ ' if (!current_dragger) return;\n' +
3259
+ ' if ( current_dragger ) {\n' +
3260
+ ' let dragger_stats = draggers[current_dragger]\n' +
3261
+ ' let drag_Node = dragger_stats.dragged\n' +
3262
+ ' if ( drag_Node ) {\n' +
3263
+ ' const newX = e.clientX - dragger_stats.offsetX;\n' +
3264
+ ' const newY = e.clientY - dragger_stats.offsetY;\n' +
3265
+ ' drag_Node.style.left = `${newX}px`;\n' +
3266
+ ' drag_Node.style.top = `${newY}px`;\n' +
3267
+ ' }\n' +
3268
+ ' }\n' +
3269
+ ' });\n' +
3270
+ " document.addEventListener('mouseup', () => {\n" +
3271
+ ' if ( current_dragger ) {\n' +
3272
+ ' let dragger_stats = draggers[current_dragger]\n' +
3273
+ ' let drag_bar = dragger_stats.drag_control\n' +
3274
+ " drag_bar.style.cursor = 'move';\n" +
3275
+ ' }\n' +
3276
+ ' current_dragger = false\n' +
3277
+ ' });\n' +
3278
+ '}\n' +
3279
+ 'add_dragging()\n' +
3280
+ 'let resizers = {}\n' +
3281
+ 'let current_resizer = false\n' +
3282
+ 'function add_resizing() {\n' +
3283
+ ' let sizer_bobs = document.getElementsByClassName("sizerbar")\n' +
3284
+ ' for ( let sb of sizer_bobs ) {\n' +
3285
+ ' let pnode = sb.parentNode\n' +
3286
+ ' resizers[pnode.id] = {\n' +
3287
+ ' "isDragging" : false,\n' +
3288
+ ' "dragged" : pnode,\n' +
3289
+ ' "drag_control" : sb\n' +
3290
+ ' }\n' +
3291
+ ' sb.onmousedown = (e) => {\n' +
3292
+ ' let pnode = e.target.parentNode;\n' +
3293
+ ' if ( !resizers[pnode.id] ) return\n' +
3294
+ ' e.preventDefault()\n' +
3295
+ ' resizers[pnode.id].isDragging = true;\n' +
3296
+ ' current_resizer = pnode.id\n' +
3297
+ ' }\n' +
3298
+ ' \n' +
3299
+ ' }\n' +
3300
+ " document.addEventListener('mousemove', (e) => {\n" +
3301
+ ' if (!current_resizer) return;\n' +
3302
+ ' if ( current_resizer ) {\n' +
3303
+ ' let resizer_stats = resizers[current_resizer]\n' +
3304
+ ' let pnode = resizer_stats.dragged\n' +
3305
+ ' if ( pnode ) {\n' +
3306
+ ' const newX = e.clientX;\n' +
3307
+ ' const newY = e.clientY;\n' +
3308
+ ' let brect = pnode.getBoundingClientRect()\n' +
3309
+ ' let newW = newX - brect.left\n' +
3310
+ ' let newH = newY - brect.top\n' +
3311
+ ' if ( newW > 60 ) {\n' +
3312
+ ' pnode.style.width = `${newW}px`;\n' +
3313
+ ' }\n' +
3314
+ ' if ( newH > 60 ) {\n' +
3315
+ ' pnode.style.height = `${newH}px`;\n' +
3316
+ ' }\n' +
3317
+ ' }\n' +
3318
+ ' }\n' +
3319
+ ' });\n' +
3320
+ " document.addEventListener('mouseup', () => {\n" +
3321
+ ' current_resizer = false\n' +
3322
+ ' });\n' +
3323
+ '}\n' +
3324
+ 'add_resizing() \n' +
3325
+ 'function init_app_resize() {\n' +
3326
+ " window.addEventListener('resize',(ev) => {\n" +
3327
+ " let it_container = document.getElementById('sections-container')\n" +
3328
+ ' if ( it_container ) {\n' +
3329
+ " let footer = document.getElementsByTagName('footer')[0]\n" +
3330
+ ' if ( footer ) {\n' +
3331
+ ' let ic_rect = it_container.getBoundingClientRect()\n' +
3332
+ ' let ft_rect = footer.getBoundingClientRect()\n' +
3333
+ ' let h = ft_rect.top - ic_rect.top - 1;\n' +
3334
+ ' it_container.style.height = `${h}px`\n' +
3335
+ ' it_container.style.minHeight= `${h}px`\n' +
3336
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
3337
+ ' let sect = document.getElementById(`section_${i+1}`)\n' +
3338
+ ' if ( sect ) {\n' +
3339
+ ' sect.style.height = `${h - 2}px`\n' +
3340
+ ' sect.style.minHeight = `${h - 2}px`\n' +
3341
+ ' }\n' +
3342
+ ' }\n' +
3343
+ ' }\n' +
3344
+ ' }\n' +
3345
+ ' for ( let wbox_id in all_windows ) {\n' +
3346
+ ' let wbox = all_windows[wbox_id]\n' +
3347
+ ' if ( !wbox ) continue;\n' +
3348
+ ' let w = window.innerWidth*0.8;\n' +
3349
+ ' let x = window.innerWidth*0.3;\n' +
3350
+ ' if ( wbox.x >= (window.innerWidth-20) ) {\n' +
3351
+ ' wbox.move(x)\n' +
3352
+ ' }\n' +
3353
+ ' if ( wbox.y >= (window.innerHeight-20) ) {\n' +
3354
+ ' wbox.move(wbox.y - 60)\n' +
3355
+ ' }\n' +
3356
+ ' let h = window.innerHeight*0.96\n' +
3357
+ ' wbox.resize(w,h)\n' +
3358
+ ' }\n' +
3359
+ ' for ( let dinfo of Object.values(draggers) ) {\n' +
3360
+ ' let dragged = dinfo.dragged\n' +
3361
+ ' if ( dragged ) {\n' +
3362
+ ' let drect = dragged.getBoundingClientRect()\n' +
3363
+ ' let x = window.innerWidth*0.3;\n' +
3364
+ ' let h = window.innerHeight*0.8\n' +
3365
+ ' let w = window.innerWidth*0.9;\n' +
3366
+ ' if ( drect.x >= (window.innerWidth-20) ) {\n' +
3367
+ ' dragged.style.left = `${x}px`\n' +
3368
+ ' }\n' +
3369
+ ' if ( drect.y >= (window.innerHeight-20) ) {\n' +
3370
+ ' dragged.style.top = `{drect.y - 60}px`\n' +
3371
+ ' }\n' +
3372
+ ' w = Math.min(450,w)\n' +
3373
+ ' h = Math.min(450,h)\n' +
3374
+ ' dragged.style.width = `${w}px`\n' +
3375
+ ' dragged.style.height = `${h}px`\n' +
3376
+ ' }\n' +
3377
+ ' }\n' +
3378
+ ' })\n' +
3379
+ '}\n' +
3380
+ 'function init_app_windows() {\n' +
3381
+ ' let left = "30%",\n' +
3382
+ ' height = "96%",\n' +
3383
+ ' width = "60%"\n' +
3384
+ ' let ref_el = document.getElementById("sections-container")\n' +
3385
+ ' if ( ref_el ) {\n' +
3386
+ ' if ( window.innerWidth >= 1100 ) {\n' +
3387
+ ' let rbox = ref_el.getBoundingClientRect()\n' +
3388
+ ' let l = rbox.right + 6\n' +
3389
+ ' left = `${rbox.right}px`\n' +
3390
+ ' let r = window.innerWidth - 20;\n' +
3391
+ ' let w = r - l\n' +
3392
+ ' width = `${w}px`\n' +
3393
+ ' } else {\n' +
3394
+ ' let rbox = ref_el.getBoundingClientRect()\n' +
3395
+ ' let l = rbox.left + 6\n' +
3396
+ ' left = `${l}px`\n' +
3397
+ ' width = `${window.innerWidth}px`\n' +
3398
+ ' }\n' +
3399
+ ' }\n' +
3400
+ ' let winbox = new WinBox("extra-file-class",{\n' +
3401
+ '"url" : "http:\n' +
3402
+ ' "x" : left,\n' +
3403
+ ' "height" : height,\n' +
3404
+ ' "width" : width,\n' +
3405
+ ' "hidden" : true,\n' +
3406
+ ' "onclose" : () => {\n' +
3407
+ ' let winbox = all_windows["extra-file-class"]\n' +
3408
+ ' winbox.hide(true)\n' +
3409
+ ' return true\n' +
3410
+ ' }\n' +
3411
+ ' })\n' +
3412
+ ' all_windows["extra-file-class"] = winbox\n' +
3413
+ ' winbox = new WinBox("roll-right",{\n' +
3414
+ '"url" : "http:\n' +
3415
+ ' "x" : left,\n' +
3416
+ ' "height" : height,\n' +
3417
+ ' "width" : width,\n' +
3418
+ ' "hidden" : true,\n' +
3419
+ ' "onclose" : () => {\n' +
3420
+ ' let winbox = all_windows["roll-right"]\n' +
3421
+ ' winbox.hide(true)\n' +
3422
+ ' return true\n' +
3423
+ ' }\n' +
3424
+ ' })\n' +
3425
+ ' all_windows["roll-right"] = winbox\n' +
3426
+ ' winbox = new WinBox("release-lite",{\n' +
3427
+ '"url" : "http:\n' +
3428
+ ' "x" : left,\n' +
3429
+ ' "height" : height,\n' +
3430
+ ' "width" : width,\n' +
3431
+ ' "hidden" : true,\n' +
3432
+ ' "onclose" : () => {\n' +
3433
+ ' let winbox = all_windows["release-lite"]\n' +
3434
+ ' winbox.hide(true)\n' +
3435
+ ' return true\n' +
3436
+ ' }\n' +
3437
+ ' })\n' +
3438
+ ' all_windows["release-lite"] = winbox\n' +
3439
+ ' init_app_resize()\n' +
3440
+ '}'
3441
+ },
3442
+ 'script::params::[alt-script]/pin_and_scroll_vars.tjs': {
3443
+ type: 'script',
3444
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/pin_and_scroll_vars.tjs',
3445
+ data: 'window.scroll_section_count = 3',
3446
+ recursive: {
3447
+ _is_loop: false,
3448
+ params_def: { scroll_section_count: '%number%' },
3449
+ executables: { execs: [], imports: false }
3450
+ },
3451
+ backup_data: 'window.scroll_section_count = 3',
3452
+ evaluations: { scroll_section_count: '3' },
3453
+ subst_recursive: [
3454
+ {
3455
+ params_def: { scroll_section_count: '%number%' },
3456
+ conds: [],
3457
+ data: 'window.scroll_section_count = 3'
3458
+ }
3459
+ ],
3460
+ conds: []
3461
+ },
3462
+ 'script::[alt-script]/section_scrolling.js': {
3463
+ type: 'script',
3464
+ file: '/home/richard/GitHub/alphas/alpha-copious/script/section_scrolling.js',
3465
+ data: 'let g_section_count = (window.scroll_section_count && !(isNaN(window.scroll_section_count))) ? window.scroll_section_count : 0;\n' +
3466
+ 'let g_current_section_select = null\n' +
3467
+ 'let lastKnownScrollPosition = 0\n' +
3468
+ 'let elementsToCheck = []\n' +
3469
+ 'function scroll_pin(view_center) {\n' +
3470
+ '\tif ( window.innerWidth >= 1100 ) {\n' +
3471
+ " if ( view_center !== 'section_1' ) {\n" +
3472
+ ' let sect_box = `#${view_center}_response`\n' +
3473
+ ' g_current_section_select = sect_box\n' +
3474
+ ' pinBox(sect_box)\n' +
3475
+ ' } else {\n' +
3476
+ " g_current_section_select = 'section_1_response'\n" +
3477
+ ' unpin_current(true)\n' +
3478
+ ' }\n' +
3479
+ ' } else {\n' +
3480
+ ' let details = document.getElementById("scroll-info-button")\n' +
3481
+ " if ( view_center !== 'section_1' ) {\n" +
3482
+ ' let sect_box = `#${view_center}_response`\n' +
3483
+ ' g_current_section_select = sect_box\n' +
3484
+ ' if (details) details.removeAttribute("disabled")\n' +
3485
+ ' } else {\n' +
3486
+ " g_current_section_select = 'section_1_response'\n" +
3487
+ ' if (details) details.setAttribute("disabled",true)\n' +
3488
+ ' }\n' +
3489
+ ' }\n' +
3490
+ '}\n' +
3491
+ 'function resize_sections(skip_container) {\n' +
3492
+ ' let above = document.getElementById("sections-header")\n' +
3493
+ ' let sects = document.getElementById("sections-container")\n' +
3494
+ ' if ( sects && above) {\n' +
3495
+ ' let abox = above.getBoundingClientRect()\n' +
3496
+ ' let box = sects.getBoundingClientRect()\n' +
3497
+ ' let pbox = sects.parentElement.getBoundingClientRect()\n' +
3498
+ ' let bbot = pbox.bottom - 2\n' +
3499
+ ' if ( !skip_container ) {\n' +
3500
+ ' let btop = abox.bottom + 2\n' +
3501
+ ' sects.style.height = `${bbot - btop}px`\n' +
3502
+ ' }\n' +
3503
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
3504
+ ' let sect = document.getElementById(`section_${i+1}`)\n' +
3505
+ ' if ( sect ) {\n' +
3506
+ ' sect.style.height = `${bbot - box.top - 2}px`\n' +
3507
+ ' sect.style.minHeight = `${bbot - box.top - 2}px`\n' +
3508
+ ' }\n' +
3509
+ ' }\n' +
3510
+ ' }\n' +
3511
+ '}\n' +
3512
+ 'function section_select() {\n' +
3513
+ ' return g_current_section_select\n' +
3514
+ '}\n' +
3515
+ 'function isElementInScrollView(container, element, partial) {\n' +
3516
+ ' const domRect1 = container.getBoundingClientRect();\n' +
3517
+ ' const domRect2 = element.getBoundingClientRect();\n' +
3518
+ ' return !(\n' +
3519
+ ' domRect1.top > domRect2.bottom ||\n' +
3520
+ ' domRect1.right < domRect2.left ||\n' +
3521
+ ' domRect1.bottom < domRect2.top ||\n' +
3522
+ ' domRect1.left > domRect2.right\n' +
3523
+ ' );\n' +
3524
+ '}\n' +
3525
+ 'function top_difference(rect_1, rect_2) {\n' +
3526
+ ' let b = rect_1.top - rect_2.top\n' +
3527
+ ' \n' +
3528
+ ' return b\n' +
3529
+ '}\n' +
3530
+ 'function top_stray_amount(container,element) {\n' +
3531
+ ' const rect_1 = container.getBoundingClientRect();\n' +
3532
+ ' const rect_2 = element.getBoundingClientRect();\n' +
3533
+ ' return Math.abs(top_difference(rect_1, rect_2))\n' +
3534
+ '}\n' +
3535
+ 'function scroller(evnt) {\n' +
3536
+ ' if ( lastKnownScrollPosition === 0 ) {\n' +
3537
+ ' let element = evnt.target\n' +
3538
+ ' lastKnownScrollPosition = evnt.target.scrollTop;\n' +
3539
+ ' }\n' +
3540
+ '}\n' +
3541
+ 'function scrollender(evnt) {\n' +
3542
+ ' let current_scroll_pos = evnt.target.scrollTop;\n' +
3543
+ ' lastKnownScrollPosition = 0;\n' +
3544
+ ' let viz_list = {}\n' +
3545
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
3546
+ ' let checker = elementsToCheck[i]\n' +
3547
+ ' if ( checker && !(checker.checked) ) {\n' +
3548
+ ' let container = evnt.target\n' +
3549
+ ' let el = checker.el\n' +
3550
+ ' if ( isElementInScrollView(container,el) ) {\n' +
3551
+ ' checker.checked = true\n' +
3552
+ ' }\n' +
3553
+ ' }\n' +
3554
+ ' if ( checker && checker.checked) {\n' +
3555
+ ' let container = evnt.target\n' +
3556
+ ' let el = checker.el\n' +
3557
+ ' viz_list[checker.name] = top_stray_amount(container,el)\n' +
3558
+ ' }\n' +
3559
+ ' }\n' +
3560
+ ' let least_strayed = Infinity\n' +
3561
+ ' let least_strayed_name = ""\n' +
3562
+ ' for ( let [name,stray] of Object.entries(viz_list) ) {\n' +
3563
+ ' if ( least_strayed > stray ) {\n' +
3564
+ ' least_strayed = stray\n' +
3565
+ ' least_strayed_name = name\n' +
3566
+ ' }\n' +
3567
+ ' }\n' +
3568
+ ' scroll_pin(least_strayed_name)\n' +
3569
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
3570
+ ' let checker = elementsToCheck[i]\n' +
3571
+ ' checker.checked = false\n' +
3572
+ ' }\n' +
3573
+ '}\n' +
3574
+ 'function init_els_to_check() {\n' +
3575
+ ' for ( let i = 0; i < g_section_count; i++ ) {\n' +
3576
+ ' let check_record = {\n' +
3577
+ ' "name" : `section_${i+1}`,\n' +
3578
+ ' "checked" : false,\n' +
3579
+ ' "el" : document.getElementById(`section_${i+1}`)\n' +
3580
+ ' }\n' +
3581
+ ' elementsToCheck.push(check_record);\n' +
3582
+ ' }\n' +
3583
+ '}\n' +
3584
+ ' \n' +
3585
+ 'function setup_section_toggles() {\n' +
3586
+ ' let sect_togs = document.getElementsByClassName("togglebar-sect")\n' +
3587
+ ' for ( let st of sect_togs ) {\n' +
3588
+ ' let namer = st.parentNode.parentNode.id\n' +
3589
+ ' st.onclick = (ev) => {\n' +
3590
+ ' let sect_box = `#${namer}_response`\n' +
3591
+ ' if ( g_current_section_select === sect_box ) {\n' +
3592
+ ' let sbr = document.querySelector(sect_box)\n' +
3593
+ ' if ( sbr.style.display === "none") {\n' +
3594
+ ' pinBox(sect_box)\n' +
3595
+ ' } else {\n' +
3596
+ ' sbr.style.display = "none"\n' +
3597
+ ' }\n' +
3598
+ ' }\n' +
3599
+ ' }\n' +
3600
+ ' }\n' +
3601
+ '}'
3602
+ },
3603
+ 'html(10):end_script': '\n</script>\n'
3604
+ },
3605
+ incrementer_set: {
3606
+ start: {
3607
+ print_vname: 'start',
3608
+ apply_to: 'Z_INDEX',
3609
+ start_val: 100,
3610
+ starter: {
3611
+ file: 'fadable_box.tmplt',
3612
+ key_values: {
3613
+ Z_INDEX: 'f@init{$}',
3614
+ BOX_NAME: 'f@name{parent}',
3615
+ INSERT: ''
3616
+ },
3617
+ path_finder: 'html',
3618
+ op: '=',
3619
+ evaluations: { BOX_NAME: 'contact_box', INSERT: '' },
3620
+ data: '\n' +
3621
+ '<div id="contact_box" class="fade_able" style="z-index:100" >\n' +
3622
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3623
+ `\t\t<span class="closer_x" onmousedown="closefader('contact_box')">x</span>\n` +
3624
+ '\t</div>\n' +
3625
+ '\t<div class="fade_able_content" >\n' +
3626
+ '\t\t{{{contact_box.content }}}\n' +
3627
+ '\t</div>\n' +
3628
+ '</div>\n',
3629
+ backup_data: '\n' +
3630
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3631
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3632
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3633
+ '\t</div>\n' +
3634
+ '\t<div class="fade_able_content" >\n' +
3635
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3636
+ '\t</div>\n' +
3637
+ '</div>\n'
3638
+ },
3639
+ list: [
3640
+ {
3641
+ file: 'fadable_box.tmplt',
3642
+ key_values: {
3643
+ Z_INDEX: 'f@init{$}',
3644
+ BOX_NAME: 'f@name{parent}',
3645
+ INSERT: ''
3646
+ },
3647
+ path_finder: 'html',
3648
+ op: '=',
3649
+ evaluations: { BOX_NAME: 'contact_box', INSERT: '' },
3650
+ data: '\n' +
3651
+ '<div id="contact_box" class="fade_able" style="z-index:100" >\n' +
3652
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3653
+ `\t\t<span class="closer_x" onmousedown="closefader('contact_box')">x</span>\n` +
3654
+ '\t</div>\n' +
3655
+ '\t<div class="fade_able_content" >\n' +
3656
+ '\t\t{{{contact_box.content }}}\n' +
3657
+ '\t</div>\n' +
3658
+ '</div>\n',
3659
+ backup_data: '\n' +
3660
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3661
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3662
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3663
+ '\t</div>\n' +
3664
+ '\t<div class="fade_able_content" >\n' +
3665
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3666
+ '\t</div>\n' +
3667
+ '</div>\n'
3668
+ },
3669
+ {
3670
+ file: 'fadable_box.tmplt',
3671
+ key_values: {
3672
+ Z_INDEX: 'f@incr{$}',
3673
+ BOX_NAME: 'f@name{parent}',
3674
+ INSERT: ''
3675
+ },
3676
+ path_finder: 'html',
3677
+ op: '++',
3678
+ evaluations: { BOX_NAME: 'about_box', INSERT: '' },
3679
+ data: '\n' +
3680
+ '<div id="about_box" class="fade_able" style="z-index:101" >\n' +
3681
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3682
+ `\t\t<span class="closer_x" onmousedown="closefader('about_box')">x</span>\n` +
3683
+ '\t</div>\n' +
3684
+ '\t<div class="fade_able_content" >\n' +
3685
+ '\t\t{{{about_box.content }}}\n' +
3686
+ '\t</div>\n' +
3687
+ '</div>\n',
3688
+ backup_data: '\n' +
3689
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3690
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3691
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3692
+ '\t</div>\n' +
3693
+ '\t<div class="fade_able_content" >\n' +
3694
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3695
+ '\t</div>\n' +
3696
+ '</div>\n'
3697
+ },
3698
+ {
3699
+ file: 'fadable_box.tmplt',
3700
+ key_values: {
3701
+ Z_INDEX: 'f@incr{$}',
3702
+ BOX_NAME: 'f@name{parent}',
3703
+ INSERT: "onclick='hide_thankyou_box(this)'"
3704
+ },
3705
+ path_finder: 'html',
3706
+ op: '++',
3707
+ evaluations: {
3708
+ BOX_NAME: 'thankyou_box',
3709
+ INSERT: "onclick='hide_thankyou_box(this)'"
3710
+ },
3711
+ data: '\n' +
3712
+ `<div id="thankyou_box" class="fade_able" style="z-index:102" onclick='hide_thankyou_box(this)' >\n` +
3713
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3714
+ `\t\t<span class="closer_x" onmousedown="closefader('thankyou_box')">x</span>\n` +
3715
+ '\t</div>\n' +
3716
+ '\t<div class="fade_able_content" >\n' +
3717
+ '\t\t{{{thankyou_box.content }}}\n' +
3718
+ '\t</div>\n' +
3719
+ '</div>\n',
3720
+ backup_data: '\n' +
3721
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3722
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3723
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3724
+ '\t</div>\n' +
3725
+ '\t<div class="fade_able_content" >\n' +
3726
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3727
+ '\t</div>\n' +
3728
+ '</div>\n'
3729
+ },
3730
+ {
3731
+ file: 'fadable_box.tmplt',
3732
+ key_values: {
3733
+ Z_INDEX: 'f@incr{$}',
3734
+ BOX_NAME: 'f@name{parent}',
3735
+ INSERT: ''
3736
+ },
3737
+ path_finder: 'html',
3738
+ op: '++',
3739
+ evaluations: { BOX_NAME: 'topicBox_1', INSERT: '' },
3740
+ data: '\n' +
3741
+ '<div id="topicBox_1" class="fade_able" style="z-index:103" >\n' +
3742
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3743
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_1')">x</span>\n` +
3744
+ '\t</div>\n' +
3745
+ '\t<div class="fade_able_content" >\n' +
3746
+ '\t\t{{{topicBox_1.content }}}\n' +
3747
+ '\t</div>\n' +
3748
+ '</div>\n',
3749
+ backup_data: '\n' +
3750
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3751
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3752
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3753
+ '\t</div>\n' +
3754
+ '\t<div class="fade_able_content" >\n' +
3755
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3756
+ '\t</div>\n' +
3757
+ '</div>\n'
3758
+ },
3759
+ {
3760
+ file: 'fadable_box.tmplt',
3761
+ key_values: {
3762
+ Z_INDEX: 'f@incr{$}',
3763
+ BOX_NAME: 'f@name{parent}',
3764
+ INSERT: ''
3765
+ },
3766
+ path_finder: 'html',
3767
+ op: '++',
3768
+ evaluations: { BOX_NAME: 'topicBox_2', INSERT: '' },
3769
+ data: '\n' +
3770
+ '<div id="topicBox_2" class="fade_able" style="z-index:104" >\n' +
3771
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3772
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_2')">x</span>\n` +
3773
+ '\t</div>\n' +
3774
+ '\t<div class="fade_able_content" >\n' +
3775
+ '\t\t{{{topicBox_2.content }}}\n' +
3776
+ '\t</div>\n' +
3777
+ '</div>\n',
3778
+ backup_data: '\n' +
3779
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3780
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3781
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3782
+ '\t</div>\n' +
3783
+ '\t<div class="fade_able_content" >\n' +
3784
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3785
+ '\t</div>\n' +
3786
+ '</div>\n'
3787
+ },
3788
+ {
3789
+ file: 'fadable_box.tmplt',
3790
+ key_values: {
3791
+ Z_INDEX: 'f@incr{$}',
3792
+ BOX_NAME: 'f@name{parent}',
3793
+ INSERT: ''
3794
+ },
3795
+ path_finder: 'html',
3796
+ op: '++',
3797
+ evaluations: { BOX_NAME: 'topicBox_3', INSERT: '' },
3798
+ data: '\n' +
3799
+ '<div id="topicBox_3" class="fade_able" style="z-index:105" >\n' +
3800
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3801
+ `\t\t<span class="closer_x" onmousedown="closefader('topicBox_3')">x</span>\n` +
3802
+ '\t</div>\n' +
3803
+ '\t<div class="fade_able_content" >\n' +
3804
+ '\t\t{{{topicBox_3.content }}}\n' +
3805
+ '\t</div>\n' +
3806
+ '</div>\n',
3807
+ backup_data: '\n' +
3808
+ '<div id="@{BOX_NAME}" class="fade_able" style="z-index:@{Z_INDEX}" @{INSERT} >\n' +
3809
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3810
+ `\t\t<span class="closer_x" onmousedown="closefader('@{BOX_NAME}')">x</span>\n` +
3811
+ '\t</div>\n' +
3812
+ '\t<div class="fade_able_content" >\n' +
3813
+ '\t\t{{{@{BOX_NAME}.content }}}\n' +
3814
+ '\t</div>\n' +
3815
+ '</div>\n'
3816
+ },
3817
+ {
3818
+ file: 'solidable_box.tmplt',
3819
+ key_values: {
3820
+ Z_INDEX: 'f@incr{$}',
3821
+ BOX_NAME: 'f@name{parent}',
3822
+ INSERT: ''
3823
+ },
3824
+ path_finder: 'html',
3825
+ op: '++',
3826
+ evaluations: { BOX_NAME: 'register', INSERT: '' },
3827
+ data: '<div id="register" class="solid_able" style="z-index:106" >\n' +
3828
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3829
+ `\t\t<span class="closer_x" onmousedown="closesolid('register')">x</span>\n` +
3830
+ '\t</div>\n' +
3831
+ '\t<div class="fade_able_content" >\n' +
3832
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3833
+ '\t\t\t{{{register.content}}}\n' +
3834
+ '\t\t</div>\n' +
3835
+ '\t</div>\n' +
3836
+ '</div>\n',
3837
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
3838
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3839
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
3840
+ '\t</div>\n' +
3841
+ '\t<div class="fade_able_content" >\n' +
3842
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3843
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
3844
+ '\t\t</div>\n' +
3845
+ '\t</div>\n' +
3846
+ '</div>\n'
3847
+ },
3848
+ {
3849
+ file: 'solidable_box.tmplt',
3850
+ key_values: {
3851
+ Z_INDEX: 'f@incr{$}',
3852
+ BOX_NAME: 'f@name{parent}',
3853
+ INSERT: ''
3854
+ },
3855
+ path_finder: 'html',
3856
+ op: '++',
3857
+ evaluations: { BOX_NAME: 'login', INSERT: '' },
3858
+ data: '<div id="login" class="solid_able" style="z-index:107" >\n' +
3859
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3860
+ `\t\t<span class="closer_x" onmousedown="closesolid('login')">x</span>\n` +
3861
+ '\t</div>\n' +
3862
+ '\t<div class="fade_able_content" >\n' +
3863
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3864
+ '\t\t\t{{{login.content}}}\n' +
3865
+ '\t\t</div>\n' +
3866
+ '\t</div>\n' +
3867
+ '</div>\n',
3868
+ backup_data: '<div id="@{BOX_NAME}" class="solid_able" style="z-index:@{Z_INDEX}" >\n' +
3869
+ '\t<div class="togglebar" onmouseenter="togglebar(this,1)" onmouseleave="togglebar(this,0)">\n' +
3870
+ `\t\t<span class="closer_x" onmousedown="closesolid('@{BOX_NAME}')">x</span>\n` +
3871
+ '\t</div>\n' +
3872
+ '\t<div class="fade_able_content" >\n' +
3873
+ '\t\t<div style="min-width: 400px;min-height: 300px;">\n' +
3874
+ '\t\t\t{{{@{BOX_NAME}.content}}}\n' +
3875
+ '\t\t</div>\n' +
3876
+ '\t</div>\n' +
3877
+ '</div>\n'
3878
+ }
3879
+ ]
3880
+ }
3881
+ }
3882
+ }
3883
+ }
3884
+ }
3885
+ -------------------------------------------------------------