-
Notifications
You must be signed in to change notification settings - Fork 0
/
ibom.html
4414 lines (3994 loc) · 202 KB
/
ibom.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Interactive BOM for KiCAD</title>
<style type="text/css">
:root {
--pcb-edge-color: black;
--pad-color: #878787;
--pad-hole-color: #CCCCCC;
--pad-color-highlight: #D04040;
--pad-color-highlight-both: #D0D040;
--pad-color-highlight-marked: #44a344;
--pin1-outline-color: #ffb629;
--pin1-outline-color-highlight: #ffb629;
--pin1-outline-color-highlight-both: #fcbb39;
--pin1-outline-color-highlight-marked: #fdbe41;
--silkscreen-edge-color: #aa4;
--silkscreen-polygon-color: #4aa;
--silkscreen-text-color: #4aa;
--fabrication-edge-color: #907651;
--fabrication-polygon-color: #907651;
--fabrication-text-color: #a27c24;
--track-color: #def5f1;
--track-color-highlight: #D04040;
--zone-color: #def5f1;
--zone-color-highlight: #d0404080;
}
html,
body {
margin: 0px;
height: 100%;
font-family: Verdana, sans-serif;
}
.dark.topmostdiv {
--pcb-edge-color: #eee;
--pad-color: #808080;
--pin1-outline-color: #ffa800;
--pin1-outline-color-highlight: #ccff00;
--track-color: #42524f;
--zone-color: #42524f;
background-color: #252c30;
color: #eee;
}
button {
background-color: #eee;
border: 1px solid #888;
color: black;
height: 44px;
width: 44px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 14px;
font-weight: bolder;
}
.dark button {
/* This will be inverted */
background-color: #c3b7b5;
}
button.depressed {
background-color: #0a0;
color: white;
}
.dark button.depressed {
/* This will be inverted */
background-color: #b3b;
}
button:focus {
outline: 0;
}
button#tb-btn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.32 290.12h5.82M1.32 291.45h5.82' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 292.5v4.23M.26 292.63H8.2' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='1.35' y='295.73'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
}
button#lr-btn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.06 290.12H3.7m-2.64 1.33H3.7m-2.64 1.32H3.7m-2.64 1.3H3.7m-2.64 1.33H3.7' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 288.8v7.94m0-4.11h3.96' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='5.11' y='291.96'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
}
button#bom-btn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)' fill='none' stroke='%23000' stroke-width='.4'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' stroke-linejoin='round'/%3E%3Cpath d='M1.59 290.12h5.29M1.59 291.45h5.33M1.59 292.75h5.33M1.59 294.09h5.33M1.59 295.41h5.33'/%3E%3C/g%3E%3C/svg%3E");
}
button#bom-grouped-btn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg stroke='%23000' stroke-linejoin='round' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-linecap='square' stroke-width='2' d='M6 10h4m4 0h5m4 0h3M6.1 22h3m3.9 0h5m4 0h4m-16-8h4m4 0h4'/%3E%3Cpath stroke-linecap='null' d='M5 17.5h22M5 26.6h22M5 5.5h22'/%3E%3C/g%3E%3C/svg%3E");
}
button#bom-ungrouped-btn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg stroke='%23000' stroke-linejoin='round' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-linecap='square' stroke-width='2' d='M6 10h4m-4 8h3m-3 8h4'/%3E%3Cpath stroke-linecap='null' d='M5 13.5h22m-22 8h22M5 5.5h22'/%3E%3C/g%3E%3C/svg%3E");
}
button#bom-netlist-btn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg fill='none' stroke='%23000' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-width='2' d='M6 26l6-6v-8m13.8-6.3l-6 6v8'/%3E%3Ccircle cx='11.8' cy='9.5' r='2.8' stroke-width='2'/%3E%3Ccircle cx='19.8' cy='22.8' r='2.8' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E");
}
button#copy {
background-image: url("data:image/svg+xml,%3Csvg height='48' viewBox='0 0 48 48' width='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h48v48h-48z' fill='none'/%3E%3Cpath d='M32 2h-24c-2.21 0-4 1.79-4 4v28h4v-28h24v-4zm6 8h-22c-2.21 0-4 1.79-4 4v28c0 2.21 1.79 4 4 4h22c2.21 0 4-1.79 4-4v-28c0-2.21-1.79-4-4-4zm0 32h-22v-28h22v28z'/%3E%3C/svg%3E");
background-position: 6px 6px;
background-repeat: no-repeat;
background-size: 26px 26px;
border-radius: 6px;
height: 40px;
width: 40px;
margin: 10px 5px;
}
button#copy:active {
box-shadow: inset 0px 0px 5px #6c6c6c;
}
textarea.clipboard-temp {
position: fixed;
top: 0;
left: 0;
width: 2em;
height: 2em;
padding: 0;
border: None;
outline: None;
box-shadow: None;
background: transparent;
}
.left-most-button {
border-right: 0;
border-top-left-radius: 6px;
border-bottom-left-radius: 6px;
}
.middle-button {
border-right: 0;
}
.right-most-button {
border-top-right-radius: 6px;
border-bottom-right-radius: 6px;
}
.button-container {
font-size: 0;
margin: 10px 10px 10px 0px;
}
.dark .button-container {
filter: invert(1);
}
.button-container button {
background-size: 32px 32px;
background-position: 5px 5px;
background-repeat: no-repeat;
}
@media print {
.hideonprint {
display: none;
}
}
canvas {
cursor: crosshair;
}
canvas:active {
cursor: grabbing;
}
.fileinfo {
width: 100%;
max-width: 1000px;
border: none;
padding: 5px;
}
.fileinfo .title {
font-size: 20pt;
font-weight: bold;
}
.fileinfo td {
overflow: hidden;
white-space: nowrap;
max-width: 1px;
width: 50%;
text-overflow: ellipsis;
}
.bom {
border-collapse: collapse;
font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
font-size: 10pt;
table-layout: fixed;
width: 100%;
margin-top: 1px;
position: relative;
}
.bom th,
.bom td {
border: 1px solid black;
padding: 5px;
word-wrap: break-word;
text-align: center;
position: relative;
}
.dark .bom th,
.dark .bom td {
border: 1px solid #777;
}
.bom th {
background-color: #CCCCCC;
background-clip: padding-box;
}
.dark .bom th {
background-color: #3b4749;
}
.bom tr.highlighted:nth-child(n) {
background-color: #cfc;
}
.dark .bom tr.highlighted:nth-child(n) {
background-color: #226022;
}
.bom tr:nth-child(even) {
background-color: #f2f2f2;
}
.dark .bom tr:nth-child(even) {
background-color: #313b40;
}
.bom tr.checked {
color: #1cb53d;
}
.dark .bom tr.checked {
color: #2cce54;
}
.bom tr {
transition: background-color 0.2s;
}
.bom .numCol {
width: 30px;
}
.bom .value {
width: 15%;
}
.bom .quantity {
width: 65px;
}
.bom th .sortmark {
position: absolute;
right: 1px;
top: 1px;
margin-top: -5px;
border-width: 5px;
border-style: solid;
border-color: transparent transparent #221 transparent;
transform-origin: 50% 85%;
transition: opacity 0.2s, transform 0.4s;
}
.dark .bom th .sortmark {
filter: invert(1);
}
.bom th .sortmark.none {
opacity: 0;
}
.bom th .sortmark.desc {
transform: rotate(180deg);
}
.bom th:hover .sortmark.none {
opacity: 0.5;
}
.bom .bom-checkbox {
width: 30px;
position: relative;
user-select: none;
-moz-user-select: none;
}
.bom .bom-checkbox:before {
content: "";
position: absolute;
border-width: 15px;
border-style: solid;
border-color: #51829f transparent transparent transparent;
visibility: hidden;
top: -15px;
}
.bom .bom-checkbox:after {
content: "Double click to set/unset all";
position: absolute;
color: white;
top: -35px;
left: -26px;
background: #51829f;
padding: 5px 15px;
border-radius: 8px;
white-space: nowrap;
visibility: hidden;
}
.bom .bom-checkbox:hover:before,
.bom .bom-checkbox:hover:after {
visibility: visible;
transition: visibility 0.2s linear 1s;
}
.split {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
overflow-y: auto;
overflow-x: hidden;
background-color: inherit;
}
.split.split-horizontal,
.gutter.gutter-horizontal {
height: 100%;
float: left;
}
.gutter {
background-color: #ddd;
background-repeat: no-repeat;
background-position: 50%;
transition: background-color 0.3s;
}
.dark .gutter {
background-color: #777;
}
.gutter.gutter-horizontal {
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAeCAYAAADkftS9AAAAIklEQVQoU2M4c+bMfxAGAgYYmwGrIIiDjrELjpo5aiZeMwF+yNnOs5KSvgAAAABJRU5ErkJggg==');
cursor: ew-resize;
width: 5px;
}
.gutter.gutter-vertical {
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAFAQMAAABo7865AAAABlBMVEVHcEzMzMzyAv2sAAAAAXRSTlMAQObYZgAAABBJREFUeF5jOAMEEAIEEFwAn3kMwcB6I2AAAAAASUVORK5CYII=');
cursor: ns-resize;
height: 5px;
}
.searchbox {
float: left;
height: 40px;
margin: 10px 5px;
padding: 12px 32px;
font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
font-size: 18px;
box-sizing: border-box;
border: 1px solid #888;
border-radius: 6px;
outline: none;
background-color: #eee;
transition: background-color 0.2s, border 0.2s;
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABNklEQVQ4T8XSMUvDQBQH8P/LElFa/AIZHcTBQSz0I/gFstTBRR2KUC4ldDxw7h0Bl3RRUATxi4iiODgoiLNrbQYp5J6cpJJqomkX33Z37/14d/dIa33MzDuYI4johOI4XhyNRteO46zNYjDzAxE1yBZprVeZ+QbAUhXEGJMA2Ox2u4+fQIa0mPmsCgCgJYQ4t7lfgF0opQYAdv9ABkKI/UnOFCClXKjX61cA1osQY8x9kiRNKeV7IWA3oyhaSdP0FkAtjxhj3hzH2RBCPOf3pzqYHCilfAAX+URm9oMguPzeWSGQvUcMYC8rOBJCHBRdqxTo9/vbRHRqi8bj8XKv1xvODbiuW2u32/bvf0SlDv4XYOY7z/Mavu+nM1+BmQ+NMc0wDF/LprP0DbTWW0T00ul0nn4b7Q87+X4Qmfiq2wAAAABJRU5ErkJggg==');
background-position: 10px 10px;
background-repeat: no-repeat;
}
.dark .searchbox {
background-color: #111;
color: #eee;
}
.searchbox::placeholder {
color: #ccc;
}
.dark .searchbox::placeholder {
color: #666;
}
.filter {
width: calc(60% - 64px);
}
.reflookup {
width: calc(40% - 10px);
}
input[type=text]:focus {
background-color: white;
border: 1px solid #333;
}
.dark input[type=text]:focus {
background-color: #333;
border: 1px solid #ccc;
}
mark.highlight {
background-color: #5050ff;
color: #fff;
padding: 2px;
border-radius: 6px;
}
.dark mark.highlight {
background-color: #76a6da;
color: #111;
}
.menubtn {
background-color: white;
border: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 20 20'%3E%3Cpath fill='none' d='M0 0h20v20H0V0z'/%3E%3Cpath d='M15.95 10.78c.03-.25.05-.51.05-.78s-.02-.53-.06-.78l1.69-1.32c.15-.12.19-.34.1-.51l-1.6-2.77c-.1-.18-.31-.24-.49-.18l-1.99.8c-.42-.32-.86-.58-1.35-.78L12 2.34c-.03-.2-.2-.34-.4-.34H8.4c-.2 0-.36.14-.39.34l-.3 2.12c-.49.2-.94.47-1.35.78l-1.99-.8c-.18-.07-.39 0-.49.18l-1.6 2.77c-.1.18-.06.39.1.51l1.69 1.32c-.04.25-.07.52-.07.78s.02.53.06.78L2.37 12.1c-.15.12-.19.34-.1.51l1.6 2.77c.1.18.31.24.49.18l1.99-.8c.42.32.86.58 1.35.78l.3 2.12c.04.2.2.34.4.34h3.2c.2 0 .37-.14.39-.34l.3-2.12c.49-.2.94-.47 1.35-.78l1.99.8c.18.07.39 0 .49-.18l1.6-2.77c.1-.18.06-.39-.1-.51l-1.67-1.32zM10 13c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z'/%3E%3C/svg%3E%0A");
background-position: center;
background-repeat: no-repeat;
}
.statsbtn {
background-color: white;
border: none;
background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h28v24H4V6zm0 8h28v8H4m9-16v24h10V5.8' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E");
background-position: center;
background-repeat: no-repeat;
}
.iobtn {
background-color: white;
border: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M3 33v-7l6.8-7h16.5l6.7 7v7H3zM3.2 26H33M21 9l5-5.9 5 6h-2.5V15h-5V9H21zm-4.9 0l-5 6-5-6h2.5V3h5v6h2.5z'/%3E%3Cpath fill='none' stroke='%23000' d='M6.1 29.5H10'/%3E%3C/svg%3E");
background-position: center;
background-repeat: no-repeat;
}
.visbtn {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath fill='none' stroke='%23333' d='M2.5 4.5h5v15h-5zM9.5 4.5h5v15h-5zM16.5 4.5h5v15h-5z'/%3E%3C/svg%3E");
background-position: center;
background-repeat: no-repeat;
padding: 15px;
}
#vismenu-content {
left: 0px;
font-family: Verdana, sans-serif;
}
.dark .statsbtn,
.dark .savebtn,
.dark .menubtn,
.dark .iobtn,
.dark .visbtn {
filter: invert(1);
}
.flexbox {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
.savebtn {
background-color: #d6d6d6;
width: auto;
height: 30px;
flex-grow: 1;
margin: 5px;
border-radius: 4px;
}
.savebtn:active {
background-color: #0a0;
color: white;
}
.dark .savebtn:active {
/* This will be inverted */
background-color: #b3b;
}
.stats {
border-collapse: collapse;
font-size: 12pt;
table-layout: fixed;
width: 100%;
min-width: 450px;
}
.dark .stats td {
border: 1px solid #bbb;
}
.stats td {
border: 1px solid black;
padding: 5px;
word-wrap: break-word;
text-align: center;
position: relative;
}
#checkbox-stats div {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
}
#checkbox-stats .bar {
background-color: rgba(28, 251, 0, 0.6);
}
.menu {
position: relative;
display: inline-block;
margin: 10px 10px 10px 0px;
}
.menu-content {
font-size: 12pt !important;
text-align: left !important;
font-weight: normal !important;
display: none;
position: absolute;
background-color: white;
right: 0;
min-width: 300px;
box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
z-index: 100;
padding: 8px;
}
.dark .menu-content {
background-color: #111;
}
.menu:hover .menu-content {
display: block;
}
.menu:hover .menubtn,
.menu:hover .iobtn,
.menu:hover .statsbtn {
background-color: #eee;
}
.menu-label {
display: inline-block;
padding: 8px;
border: 1px solid #ccc;
border-top: 0;
width: calc(100% - 18px);
}
.menu-label-top {
border-top: 1px solid #ccc;
}
.menu-textbox {
float: left;
height: 24px;
margin: 10px 5px;
padding: 5px 5px;
font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
font-size: 14px;
box-sizing: border-box;
border: 1px solid #888;
border-radius: 4px;
outline: none;
background-color: #eee;
transition: background-color 0.2s, border 0.2s;
width: calc(100% - 10px);
}
.menu-textbox.invalid,
.dark .menu-textbox.invalid {
color: red;
}
.dark .menu-textbox {
background-color: #222;
color: #eee;
}
.radio-container {
margin: 4px;
}
.topmostdiv {
width: 100%;
height: 100%;
background-color: white;
transition: background-color 0.3s;
}
#top {
height: 78px;
border-bottom: 2px solid black;
}
.dark #top {
border-bottom: 2px solid #ccc;
}
#dbg {
display: block;
}
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: #aaa;
}
::-webkit-scrollbar-thumb {
background: #666;
border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
background: #555;
}
.slider {
-webkit-appearance: none;
width: 100%;
margin: 3px 0;
padding: 0;
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;
border-radius: 3px;
}
.slider:hover {
opacity: 1;
}
.slider:focus {
outline: none;
}
.slider::-webkit-slider-runnable-track {
-webkit-appearance: none;
width: 100%;
height: 8px;
background: #d3d3d3;
border-radius: 3px;
border: none;
}
.slider::-webkit-slider-thumb {
-webkit-appearance: none;
width: 15px;
height: 15px;
border-radius: 50%;
background: #0a0;
cursor: pointer;
margin-top: -4px;
}
.dark .slider::-webkit-slider-thumb {
background: #3d3;
}
.slider::-moz-range-thumb {
width: 15px;
height: 15px;
border-radius: 50%;
background: #0a0;
cursor: pointer;
}
.slider::-moz-range-track {
height: 8px;
background: #d3d3d3;
border-radius: 3px;
}
.dark .slider::-moz-range-thumb {
background: #3d3;
}
.slider::-ms-track {
width: 100%;
height: 8px;
border-width: 3px 0;
background: transparent;
border-color: transparent;
color: transparent;
transition: opacity .2s;
}
.slider::-ms-fill-lower {
background: #d3d3d3;
border: none;
border-radius: 3px;
}
.slider::-ms-fill-upper {
background: #d3d3d3;
border: none;
border-radius: 3px;
}
.slider::-ms-thumb {
width: 15px;
height: 15px;
border-radius: 50%;
background: #0a0;
cursor: pointer;
margin: 0;
}
.shameless-plug {
font-size: 0.8em;
text-align: center;
display: block;
}
a {
color: #0278a4;
}
.dark a {
color: #00b9fd;
}
#frontcanvas,
#backcanvas {
touch-action: none;
}
.placeholder {
border: 1px dashed #9f9fda !important;
background-color: #edf2f7 !important;
}
.dragging {
z-index: 999;
}
.dark .dragging>table>tbody>tr {
background-color: #252c30;
}
.dark .placeholder {
filter: invert(1);
}
.column-spacer {
top: 0;
left: 0;
width: calc(100% - 4px);
position: absolute;
cursor: pointer;
user-select: none;
height: 100%;
}
.column-width-handle {
top: 0;
right: 0;
width: 4px;
position: absolute;
cursor: col-resize;
user-select: none;
height: 100%;
}
.column-width-handle:hover {
background-color: #4f99bd;
}
.help-link {
border: 1px solid #0278a4;
padding-inline: 0.3rem;
border-radius: 3px;
cursor: pointer;
}
.dark .help-link {
border: 1px solid #00b9fd;
}
</style>
<script type="text/javascript" >
///////////////////////////////////////////////
/*
Split.js - v1.3.5
MIT License
https://github.com/nathancahill/Split.js
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Split=t()}(this,function(){"use strict";var e=window,t=e.document,n="addEventListener",i="removeEventListener",r="getBoundingClientRect",s=function(){return!1},o=e.attachEvent&&!e[n],a=["","-webkit-","-moz-","-o-"].filter(function(e){var n=t.createElement("div");return n.style.cssText="width:"+e+"calc(9px)",!!n.style.length}).shift()+"calc",l=function(e){return"string"==typeof e||e instanceof String?t.querySelector(e):e};return function(u,c){function z(e,t,n){var i=A(y,t,n);Object.keys(i).forEach(function(t){return e.style[t]=i[t]})}function h(e,t){var n=B(y,t);Object.keys(n).forEach(function(t){return e.style[t]=n[t]})}function f(e){var t=E[this.a],n=E[this.b],i=t.size+n.size;t.size=e/this.size*i,n.size=i-e/this.size*i,z(t.element,t.size,this.aGutterSize),z(n.element,n.size,this.bGutterSize)}function m(e){var t;this.dragging&&((t="touches"in e?e.touches[0][b]-this.start:e[b]-this.start)<=E[this.a].minSize+M+this.aGutterSize?t=E[this.a].minSize+this.aGutterSize:t>=this.size-(E[this.b].minSize+M+this.bGutterSize)&&(t=this.size-(E[this.b].minSize+this.bGutterSize)),f.call(this,t),c.onDrag&&c.onDrag())}function g(){var e=E[this.a].element,t=E[this.b].element;this.size=e[r]()[y]+t[r]()[y]+this.aGutterSize+this.bGutterSize,this.start=e[r]()[G]}function d(){var t=this,n=E[t.a].element,r=E[t.b].element;t.dragging&&c.onDragEnd&&c.onDragEnd(),t.dragging=!1,e[i]("mouseup",t.stop),e[i]("touchend",t.stop),e[i]("touchcancel",t.stop),t.parent[i]("mousemove",t.move),t.parent[i]("touchmove",t.move),delete t.stop,delete t.move,n[i]("selectstart",s),n[i]("dragstart",s),r[i]("selectstart",s),r[i]("dragstart",s),n.style.userSelect="",n.style.webkitUserSelect="",n.style.MozUserSelect="",n.style.pointerEvents="",r.style.userSelect="",r.style.webkitUserSelect="",r.style.MozUserSelect="",r.style.pointerEvents="",t.gutter.style.cursor="",t.parent.style.cursor=""}function S(t){var i=this,r=E[i.a].element,o=E[i.b].element;!i.dragging&&c.onDragStart&&c.onDragStart(),t.preventDefault(),i.dragging=!0,i.move=m.bind(i),i.stop=d.bind(i),e[n]("mouseup",i.stop),e[n]("touchend",i.stop),e[n]("touchcancel",i.stop),i.parent[n]("mousemove",i.move),i.parent[n]("touchmove",i.move),r[n]("selectstart",s),r[n]("dragstart",s),o[n]("selectstart",s),o[n]("dragstart",s),r.style.userSelect="none",r.style.webkitUserSelect="none",r.style.MozUserSelect="none",r.style.pointerEvents="none",o.style.userSelect="none",o.style.webkitUserSelect="none",o.style.MozUserSelect="none",o.style.pointerEvents="none",i.gutter.style.cursor=j,i.parent.style.cursor=j,g.call(i)}function v(e){e.forEach(function(t,n){if(n>0){var i=F[n-1],r=E[i.a],s=E[i.b];r.size=e[n-1],s.size=t,z(r.element,r.size,i.aGutterSize),z(s.element,s.size,i.bGutterSize)}})}function p(){F.forEach(function(e){e.parent.removeChild(e.gutter),E[e.a].element.style[y]="",E[e.b].element.style[y]=""})}void 0===c&&(c={});var y,b,G,E,w=l(u[0]).parentNode,D=e.getComputedStyle(w).flexDirection,U=c.sizes||u.map(function(){return 100/u.length}),k=void 0!==c.minSize?c.minSize:100,x=Array.isArray(k)?k:u.map(function(){return k}),L=void 0!==c.gutterSize?c.gutterSize:10,M=void 0!==c.snapOffset?c.snapOffset:30,O=c.direction||"horizontal",j=c.cursor||("horizontal"===O?"ew-resize":"ns-resize"),C=c.gutter||function(e,n){var i=t.createElement("div");return i.className="gutter gutter-"+n,i},A=c.elementStyle||function(e,t,n){var i={};return"string"==typeof t||t instanceof String?i[e]=t:i[e]=o?t+"%":a+"("+t+"% - "+n+"px)",i},B=c.gutterStyle||function(e,t){return n={},n[e]=t+"px",n;var n};"horizontal"===O?(y="width","clientWidth",b="clientX",G="left","paddingLeft"):"vertical"===O&&(y="height","clientHeight",b="clientY",G="top","paddingTop");var F=[];return E=u.map(function(e,t){var i,s={element:l(e),size:U[t],minSize:x[t]};if(t>0&&(i={a:t-1,b:t,dragging:!1,isFirst:1===t,isLast:t===u.length-1,direction:O,parent:w},i.aGutterSize=L,i.bGutterSize=L,i.isFirst&&(i.aGutterSize=L/2),i.isLast&&(i.bGutterSize=L/2),"row-reverse"===D||"column-reverse"===D)){var a=i.a;i.a=i.b,i.b=a}if(!o&&t>0){var c=C(t,O);h(c,L),c[n]("mousedown",S.bind(i)),c[n]("touchstart",S.bind(i)),w.insertBefore(c,s.element),i.gutter=c}0===t||t===u.length-1?z(s.element,s.size,L/2):z(s.element,s.size,L);var f=s.element[r]()[y];return f<s.minSize&&(s.minSize=f),t>0&&F.push(i),s}),o?{setSizes:v,destroy:p}:{setSizes:v,getSizes:function(){return E.map(function(e){return e.size})},collapse:function(e){if(e===F.length){var t=F[e-1];g.call(t),o||f.call(t,t.size-t.bGutterSize)}else{var n=F[e];g.call(n),o||f.call(n,n.aGutterSize)}},destroy:p}}});
///////////////////////////////////////////////
///////////////////////////////////////////////
// Copyright (c) 2013 Pieroxy <[email protected]>
// This work is free. You can redistribute it and/or modify it
// under the terms of the WTFPL, Version 2
// For more information see LICENSE.txt or http://www.wtfpl.net/
//
// For more information, the home page:
// http://pieroxy.net/blog/pages/lz-string/testing.html
//
// LZ-based compression algorithm, version 1.4.4
var LZString=function(){var o=String.fromCharCode,i={};var n={decompressFromBase64:function(o){return null==o?"":""==o?null:n._decompress(o.length,32,function(n){return function(o,n){if(!i[o]){i[o]={};for(var t=0;t<o.length;t++)i[o][o.charAt(t)]=t}return i[o][n]}("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o.charAt(n))})},_decompress:function(i,n,t){var r,e,a,s,p,u,l,f=[],c=4,d=4,h=3,v="",g=[],m={val:t(0),position:n,index:1};for(r=0;r<3;r+=1)f[r]=r;for(a=0,p=Math.pow(2,2),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;switch(a){case 0:for(a=0,p=Math.pow(2,8),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;l=o(a);break;case 1:for(a=0,p=Math.pow(2,16),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;l=o(a);break;case 2:return""}for(f[3]=l,e=l,g.push(l);;){if(m.index>i)return"";for(a=0,p=Math.pow(2,h),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;switch(l=a){case 0:for(a=0,p=Math.pow(2,8),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;f[d++]=o(a),l=d-1,c--;break;case 1:for(a=0,p=Math.pow(2,16),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;f[d++]=o(a),l=d-1,c--;break;case 2:return g.join("")}if(0==c&&(c=Math.pow(2,h),h++),f[l])v=f[l];else{if(l!==d)return null;v=e+e.charAt(0)}g.push(v),f[d++]=e+v.charAt(0),e=v,0==--c&&(c=Math.pow(2,h),h++)}}};return n}();"function"==typeof define&&define.amd?define(function(){return LZString}):"undefined"!=typeof module&&null!=module?module.exports=LZString:"undefined"!=typeof angular&&null!=angular&&angular.module("LZString",[]).factory("LZString",function(){return LZString});
///////////////////////////////////////////////
///////////////////////////////////////////////
/*!
* PEP v0.4.3 | https://github.com/jquery/PEP
* Copyright jQuery Foundation and other contributors | http://jquery.org/license
*/
!function(a,b){"object"==typeof exports&&"undefined"!=typeof module?module.exports=b():"function"==typeof define&&define.amd?define(b):a.PointerEventsPolyfill=b()}(this,function(){"use strict";function a(a,b){b=b||Object.create(null);var c=document.createEvent("Event");c.initEvent(a,b.bubbles||!1,b.cancelable||!1);
for(var d,e=2;e<m.length;e++)d=m[e],c[d]=b[d]||n[e];c.buttons=b.buttons||0;
var f=0;return f=b.pressure&&c.buttons?b.pressure:c.buttons?.5:0,c.x=c.clientX,c.y=c.clientY,c.pointerId=b.pointerId||0,c.width=b.width||0,c.height=b.height||0,c.pressure=f,c.tiltX=b.tiltX||0,c.tiltY=b.tiltY||0,c.twist=b.twist||0,c.tangentialPressure=b.tangentialPressure||0,c.pointerType=b.pointerType||"",c.hwTimestamp=b.hwTimestamp||0,c.isPrimary=b.isPrimary||!1,c}function b(){this.array=[],this.size=0}function c(a,b,c,d){this.addCallback=a.bind(d),this.removeCallback=b.bind(d),this.changedCallback=c.bind(d),A&&(this.observer=new A(this.mutationWatcher.bind(this)))}function d(a){return"body /shadow-deep/ "+e(a)}function e(a){return'[touch-action="'+a+'"]'}function f(a){return"{ -ms-touch-action: "+a+"; touch-action: "+a+"; }"}function g(){if(F){D.forEach(function(a){String(a)===a?(E+=e(a)+f(a)+"\n",G&&(E+=d(a)+f(a)+"\n")):(E+=a.selectors.map(e)+f(a.rule)+"\n",G&&(E+=a.selectors.map(d)+f(a.rule)+"\n"))});var a=document.createElement("style");a.textContent=E,document.head.appendChild(a)}}function h(){if(!window.PointerEvent){if(window.PointerEvent=a,window.navigator.msPointerEnabled){var b=window.navigator.msMaxTouchPoints;Object.defineProperty(window.navigator,"maxTouchPoints",{value:b,enumerable:!0}),u.registerSource("ms",_)}else Object.defineProperty(window.navigator,"maxTouchPoints",{value:0,enumerable:!0}),u.registerSource("mouse",N),void 0!==window.ontouchstart&&u.registerSource("touch",V);u.register(document)}}function i(a){if(!u.pointermap.has(a)){var b=new Error("InvalidPointerId");throw b.name="InvalidPointerId",b}}function j(a){for(var b=a.parentNode;b&&b!==a.ownerDocument;)b=b.parentNode;if(!b){var c=new Error("InvalidStateError");throw c.name="InvalidStateError",c}}function k(a){var b=u.pointermap.get(a);return 0!==b.buttons}function l(){window.Element&&!Element.prototype.setPointerCapture&&Object.defineProperties(Element.prototype,{setPointerCapture:{value:W},releasePointerCapture:{value:X},hasPointerCapture:{value:Y}})}
var m=["bubbles","cancelable","view","detail","screenX","screenY","clientX","clientY","ctrlKey","altKey","shiftKey","metaKey","button","relatedTarget","pageX","pageY"],n=[!1,!1,null,null,0,0,0,0,!1,!1,!1,!1,0,null,0,0],o=window.Map&&window.Map.prototype.forEach,p=o?Map:b;b.prototype={set:function(a,b){return void 0===b?this["delete"](a):(this.has(a)||this.size++,void(this.array[a]=b))},has:function(a){return void 0!==this.array[a]},"delete":function(a){this.has(a)&&(delete this.array[a],this.size--)},get:function(a){return this.array[a]},clear:function(){this.array.length=0,this.size=0},forEach:function(a,b){return this.array.forEach(function(c,d){a.call(b,c,d,this)},this)}};var q=["bubbles","cancelable","view","detail","screenX","screenY","clientX","clientY","ctrlKey","altKey","shiftKey","metaKey","button","relatedTarget","buttons","pointerId","width","height","pressure","tiltX","tiltY","pointerType","hwTimestamp","isPrimary","type","target","currentTarget","which","pageX","pageY","timeStamp"],r=[!1,!1,null,null,0,0,0,0,!1,!1,!1,!1,0,null,0,0,0,0,0,0,0,"",0,!1,"",null,null,0,0,0,0],s={pointerover:1,pointerout:1,pointerenter:1,pointerleave:1},t="undefined"!=typeof SVGElementInstance,u={pointermap:new p,eventMap:Object.create(null),captureInfo:Object.create(null),eventSources:Object.create(null),eventSourceList:[],registerSource:function(a,b){var c=b,d=c.events;d&&(d.forEach(function(a){c[a]&&(this.eventMap[a]=c[a].bind(c))},this),this.eventSources[a]=c,this.eventSourceList.push(c))},register:function(a){for(var b,c=this.eventSourceList.length,d=0;d<c&&(b=this.eventSourceList[d]);d++)
b.register.call(b,a)},unregister:function(a){for(var b,c=this.eventSourceList.length,d=0;d<c&&(b=this.eventSourceList[d]);d++)
b.unregister.call(b,a)},contains:function(a,b){try{return a.contains(b)}catch(c){return!1}},down:function(a){a.bubbles=!0,this.fireEvent("pointerdown",a)},move:function(a){a.bubbles=!0,this.fireEvent("pointermove",a)},up:function(a){a.bubbles=!0,this.fireEvent("pointerup",a)},enter:function(a){a.bubbles=!1,this.fireEvent("pointerenter",a)},leave:function(a){a.bubbles=!1,this.fireEvent("pointerleave",a)},over:function(a){a.bubbles=!0,this.fireEvent("pointerover",a)},out:function(a){a.bubbles=!0,this.fireEvent("pointerout",a)},cancel:function(a){a.bubbles=!0,this.fireEvent("pointercancel",a)},leaveOut:function(a){this.out(a),this.propagate(a,this.leave,!1)},enterOver:function(a){this.over(a),this.propagate(a,this.enter,!0)},eventHandler:function(a){if(!a._handledByPE){var b=a.type,c=this.eventMap&&this.eventMap[b];c&&c(a),a._handledByPE=!0}},listen:function(a,b){b.forEach(function(b){this.addEvent(a,b)},this)},unlisten:function(a,b){b.forEach(function(b){this.removeEvent(a,b)},this)},addEvent:function(a,b){a.addEventListener(b,this.boundHandler)},removeEvent:function(a,b){a.removeEventListener(b,this.boundHandler)},makeEvent:function(b,c){this.captureInfo[c.pointerId]&&(c.relatedTarget=null);var d=new a(b,c);return c.preventDefault&&(d.preventDefault=c.preventDefault),d._target=d._target||c.target,d},fireEvent:function(a,b){var c=this.makeEvent(a,b);return this.dispatchEvent(c)},cloneEvent:function(a){for(var b,c=Object.create(null),d=0;d<q.length;d++)b=q[d],c[b]=a[b]||r[d],!t||"target"!==b&&"relatedTarget"!==b||c[b]instanceof SVGElementInstance&&(c[b]=c[b].correspondingUseElement);return a.preventDefault&&(c.preventDefault=function(){a.preventDefault()}),c},getTarget:function(a){var b=this.captureInfo[a.pointerId];return b?a._target!==b&&a.type in s?void 0:b:a._target},propagate:function(a,b,c){for(var d=a.target,e=[];d!==document&&!d.contains(a.relatedTarget);) if(e.push(d),d=d.parentNode,!d)return;c&&e.reverse(),e.forEach(function(c){a.target=c,b.call(this,a)},this)},setCapture:function(b,c,d){this.captureInfo[b]&&this.releaseCapture(b,d),this.captureInfo[b]=c,this.implicitRelease=this.releaseCapture.bind(this,b,d),document.addEventListener("pointerup",this.implicitRelease),document.addEventListener("pointercancel",this.implicitRelease);var e=new a("gotpointercapture");e.pointerId=b,e._target=c,d||this.asyncDispatchEvent(e)},releaseCapture:function(b,c){var d=this.captureInfo[b];if(d){this.captureInfo[b]=void 0,document.removeEventListener("pointerup",this.implicitRelease),document.removeEventListener("pointercancel",this.implicitRelease);var e=new a("lostpointercapture");e.pointerId=b,e._target=d,c||this.asyncDispatchEvent(e)}},dispatchEvent:/*scope.external.dispatchEvent || */function(a){var b=this.getTarget(a);if(b)return b.dispatchEvent(a)},asyncDispatchEvent:function(a){requestAnimationFrame(this.dispatchEvent.bind(this,a))}};u.boundHandler=u.eventHandler.bind(u);var v={shadow:function(a){if(a)return a.shadowRoot||a.webkitShadowRoot},canTarget:function(a){return a&&Boolean(a.elementFromPoint)},targetingShadow:function(a){var b=this.shadow(a);if(this.canTarget(b))return b},olderShadow:function(a){var b=a.olderShadowRoot;if(!b){var c=a.querySelector("shadow");c&&(b=c.olderShadowRoot)}return b},allShadows:function(a){for(var b=[],c=this.shadow(a);c;)b.push(c),c=this.olderShadow(c);return b},searchRoot:function(a,b,c){if(a){var d,e,f=a.elementFromPoint(b,c);for(e=this.targetingShadow(f);e;){if(d=e.elementFromPoint(b,c)){var g=this.targetingShadow(d);return this.searchRoot(g,b,c)||d} e=this.olderShadow(e)} return f}},owner:function(a){
for(var b=a;b.parentNode;)b=b.parentNode;
return b.nodeType!==Node.DOCUMENT_NODE&&b.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&(b=document),b},findTarget:function(a){var b=a.clientX,c=a.clientY,d=this.owner(a.target);
return d.elementFromPoint(b,c)||(d=document),this.searchRoot(d,b,c)}},w=Array.prototype.forEach.call.bind(Array.prototype.forEach),x=Array.prototype.map.call.bind(Array.prototype.map),y=Array.prototype.slice.call.bind(Array.prototype.slice),z=Array.prototype.filter.call.bind(Array.prototype.filter),A=window.MutationObserver||window.WebKitMutationObserver,B="[touch-action]",C={subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0,attributeFilter:["touch-action"]};c.prototype={watchSubtree:function(a){
//
this.observer&&v.canTarget(a)&&this.observer.observe(a,C)},enableOnSubtree:function(a){this.watchSubtree(a),a===document&&"complete"!==document.readyState?this.installOnLoad():this.installNewSubtree(a)},installNewSubtree:function(a){w(this.findElements(a),this.addElement,this)},findElements:function(a){return a.querySelectorAll?a.querySelectorAll(B):[]},removeElement:function(a){this.removeCallback(a)},addElement:function(a){this.addCallback(a)},elementChanged:function(a,b){this.changedCallback(a,b)},concatLists:function(a,b){return a.concat(y(b))},
installOnLoad:function(){document.addEventListener("readystatechange",function(){"complete"===document.readyState&&this.installNewSubtree(document)}.bind(this))},isElement:function(a){return a.nodeType===Node.ELEMENT_NODE},flattenMutationTree:function(a){
var b=x(a,this.findElements,this);
return b.push(z(a,this.isElement)),b.reduce(this.concatLists,[])},mutationWatcher:function(a){a.forEach(this.mutationHandler,this)},mutationHandler:function(a){if("childList"===a.type){var b=this.flattenMutationTree(a.addedNodes);b.forEach(this.addElement,this);var c=this.flattenMutationTree(a.removedNodes);c.forEach(this.removeElement,this)}else"attributes"===a.type&&this.elementChanged(a.target,a.oldValue)}};var D=["none","auto","pan-x","pan-y",{rule:"pan-x pan-y",selectors:["pan-x pan-y","pan-y pan-x"]}],E="",F=window.PointerEvent||window.MSPointerEvent,G=!window.ShadowDOMPolyfill&&document.head.createShadowRoot,H=u.pointermap,I=25,J=[1,4,2,8,16],K=!1;try{K=1===new MouseEvent("test",{buttons:1}).buttons}catch(L){}
var M,N={POINTER_ID:1,POINTER_TYPE:"mouse",events:["mousedown","mousemove","mouseup","mouseover","mouseout"],register:function(a){u.listen(a,this.events)},unregister:function(a){u.unlisten(a,this.events)},lastTouches:[],
isEventSimulatedFromTouch:function(a){for(var b,c=this.lastTouches,d=a.clientX,e=a.clientY,f=0,g=c.length;f<g&&(b=c[f]);f++){
var h=Math.abs(d-b.x),i=Math.abs(e-b.y);if(h<=I&&i<=I)return!0}},prepareEvent:function(a){var b=u.cloneEvent(a),c=b.preventDefault;return b.preventDefault=function(){a.preventDefault(),c()},b.pointerId=this.POINTER_ID,b.isPrimary=!0,b.pointerType=this.POINTER_TYPE,b},prepareButtonsForMove:function(a,b){var c=H.get(this.POINTER_ID);
0!==b.which&&c?a.buttons=c.buttons:a.buttons=0,b.buttons=a.buttons},mousedown:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=H.get(this.POINTER_ID),c=this.prepareEvent(a);K||(c.buttons=J[c.button],b&&(c.buttons|=b.buttons),a.buttons=c.buttons),H.set(this.POINTER_ID,a),b&&0!==b.buttons?u.move(c):u.down(c)}},mousemove:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=this.prepareEvent(a);K||this.prepareButtonsForMove(b,a),b.button=-1,H.set(this.POINTER_ID,a),u.move(b)}},mouseup:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=H.get(this.POINTER_ID),c=this.prepareEvent(a);if(!K){var d=J[c.button];
c.buttons=b?b.buttons&~d:0,a.buttons=c.buttons}H.set(this.POINTER_ID,a),
c.buttons&=~J[c.button],0===c.buttons?u.up(c):u.move(c)}},mouseover:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=this.prepareEvent(a);K||this.prepareButtonsForMove(b,a),b.button=-1,H.set(this.POINTER_ID,a),u.enterOver(b)}},mouseout:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=this.prepareEvent(a);K||this.prepareButtonsForMove(b,a),b.button=-1,u.leaveOut(b)}},cancel:function(a){var b=this.prepareEvent(a);u.cancel(b),this.deactivateMouse()},deactivateMouse:function(){H["delete"](this.POINTER_ID)}},O=u.captureInfo,P=v.findTarget.bind(v),Q=v.allShadows.bind(v),R=u.pointermap,S=2500,T=200,U="touch-action",V={events:["touchstart","touchmove","touchend","touchcancel"],register:function(a){M.enableOnSubtree(a)},unregister:function(){},elementAdded:function(a){var b=a.getAttribute(U),c=this.touchActionToScrollType(b);c&&(a._scrollType=c,u.listen(a,this.events),
Q(a).forEach(function(a){a._scrollType=c,u.listen(a,this.events)},this))},elementRemoved:function(a){a._scrollType=void 0,u.unlisten(a,this.events),
Q(a).forEach(function(a){a._scrollType=void 0,u.unlisten(a,this.events)},this)},elementChanged:function(a,b){var c=a.getAttribute(U),d=this.touchActionToScrollType(c),e=this.touchActionToScrollType(b);
d&&e?(a._scrollType=d,Q(a).forEach(function(a){a._scrollType=d},this)):e?this.elementRemoved(a):d&&this.elementAdded(a)},scrollTypes:{EMITTER:"none",XSCROLLER:"pan-x",YSCROLLER:"pan-y",SCROLLER:/^(?:pan-x pan-y)|(?:pan-y pan-x)|auto$/},touchActionToScrollType:function(a){var b=a,c=this.scrollTypes;return"none"===b?"none":b===c.XSCROLLER?"X":b===c.YSCROLLER?"Y":c.SCROLLER.exec(b)?"XY":void 0},POINTER_TYPE:"touch",firstTouch:null,isPrimaryTouch:function(a){return this.firstTouch===a.identifier},setPrimaryTouch:function(a){
(0===R.size||1===R.size&&R.has(1))&&(this.firstTouch=a.identifier,this.firstXY={X:a.clientX,Y:a.clientY},this.scrolling=!1,this.cancelResetClickCount())},removePrimaryPointer:function(a){a.isPrimary&&(this.firstTouch=null,this.firstXY=null,this.resetClickCount())},clickCount:0,resetId:null,resetClickCount:function(){var a=function(){this.clickCount=0,this.resetId=null}.bind(this);this.resetId=setTimeout(a,T)},cancelResetClickCount:function(){this.resetId&&clearTimeout(this.resetId)},typeToButtons:function(a){var b=0;return"touchstart"!==a&&"touchmove"!==a||(b=1),b},touchToPointer:function(a){var b=this.currentTouchEvent,c=u.cloneEvent(a),d=c.pointerId=a.identifier+2;c.target=O[d]||P(c),c.bubbles=!0,c.cancelable=!0,c.detail=this.clickCount,c.button=0,c.buttons=this.typeToButtons(b.type),c.width=2*(a.radiusX||a.webkitRadiusX||0),c.height=2*(a.radiusY||a.webkitRadiusY||0),c.pressure=a.force||a.webkitForce||.5,c.isPrimary=this.isPrimaryTouch(a),c.pointerType=this.POINTER_TYPE,
c.altKey=b.altKey,c.ctrlKey=b.ctrlKey,c.metaKey=b.metaKey,c.shiftKey=b.shiftKey;
var e=this;return c.preventDefault=function(){e.scrolling=!1,e.firstXY=null,b.preventDefault()},c},processTouches:function(a,b){var c=a.changedTouches;this.currentTouchEvent=a;for(var d,e=0;e<c.length;e++)d=c[e],b.call(this,this.touchToPointer(d))},
shouldScroll:function(a){if(this.firstXY){var b,c=a.currentTarget._scrollType;if("none"===c)
b=!1;else if("XY"===c)
b=!0;else{var d=a.changedTouches[0],e=c,f="Y"===c?"X":"Y",g=Math.abs(d["client"+e]-this.firstXY[e]),h=Math.abs(d["client"+f]-this.firstXY[f]);
b=g>=h}return this.firstXY=null,b}},findTouch:function(a,b){for(var c,d=0,e=a.length;d<e&&(c=a[d]);d++)if(c.identifier===b)return!0},
vacuumTouches:function(a){var b=a.touches;
if(R.size>=b.length){var c=[];R.forEach(function(a,d){
if(1!==d&&!this.findTouch(b,d-2)){var e=a.out;c.push(e)}},this),c.forEach(this.cancelOut,this)}},touchstart:function(a){this.vacuumTouches(a),this.setPrimaryTouch(a.changedTouches[0]),this.dedupSynthMouse(a),this.scrolling||(this.clickCount++,this.processTouches(a,this.overDown))},overDown:function(a){R.set(a.pointerId,{target:a.target,out:a,outTarget:a.target}),u.enterOver(a),u.down(a)},touchmove:function(a){this.scrolling||(this.shouldScroll(a)?(this.scrolling=!0,this.touchcancel(a)):(a.preventDefault(),this.processTouches(a,this.moveOverOut)))},moveOverOut:function(a){var b=a,c=R.get(b.pointerId);
if(c){var d=c.out,e=c.outTarget;u.move(b),d&&e!==b.target&&(d.relatedTarget=b.target,b.relatedTarget=e,
d.target=e,b.target?(u.leaveOut(d),u.enterOver(b)):(
b.target=e,b.relatedTarget=null,this.cancelOut(b))),c.out=b,c.outTarget=b.target}},touchend:function(a){this.dedupSynthMouse(a),this.processTouches(a,this.upOut)},upOut:function(a){this.scrolling||(u.up(a),u.leaveOut(a)),this.cleanUpPointer(a)},touchcancel:function(a){this.processTouches(a,this.cancelOut)},cancelOut:function(a){u.cancel(a),u.leaveOut(a),this.cleanUpPointer(a)},cleanUpPointer:function(a){R["delete"](a.pointerId),this.removePrimaryPointer(a)},
dedupSynthMouse:function(a){var b=N.lastTouches,c=a.changedTouches[0];
if(this.isPrimaryTouch(c)){
var d={x:c.clientX,y:c.clientY};b.push(d);var e=function(a,b){var c=a.indexOf(b);c>-1&&a.splice(c,1)}.bind(null,b,d);setTimeout(e,S)}}};M=new c(V.elementAdded,V.elementRemoved,V.elementChanged,V);var W,X,Y,Z=u.pointermap,$=window.MSPointerEvent&&"number"==typeof window.MSPointerEvent.MSPOINTER_TYPE_MOUSE,_={events:["MSPointerDown","MSPointerMove","MSPointerUp","MSPointerOut","MSPointerOver","MSPointerCancel","MSGotPointerCapture","MSLostPointerCapture"],register:function(a){u.listen(a,this.events)},unregister:function(a){u.unlisten(a,this.events)},POINTER_TYPES:["","unavailable","touch","pen","mouse"],prepareEvent:function(a){var b=a;return $&&(b=u.cloneEvent(a),b.pointerType=this.POINTER_TYPES[a.pointerType]),b},cleanup:function(a){Z["delete"](a)},MSPointerDown:function(a){Z.set(a.pointerId,a);var b=this.prepareEvent(a);u.down(b)},MSPointerMove:function(a){var b=this.prepareEvent(a);u.move(b)},MSPointerUp:function(a){var b=this.prepareEvent(a);u.up(b),this.cleanup(a.pointerId)},MSPointerOut:function(a){var b=this.prepareEvent(a);u.leaveOut(b)},MSPointerOver:function(a){var b=this.prepareEvent(a);u.enterOver(b)},MSPointerCancel:function(a){var b=this.prepareEvent(a);u.cancel(b),this.cleanup(a.pointerId)},MSLostPointerCapture:function(a){var b=u.makeEvent("lostpointercapture",a);u.dispatchEvent(b)},MSGotPointerCapture:function(a){var b=u.makeEvent("gotpointercapture",a);u.dispatchEvent(b)}},aa=window.navigator;aa.msPointerEnabled?(W=function(a){i(a),j(this),k(a)&&(u.setCapture(a,this,!0),this.msSetPointerCapture(a))},X=function(a){i(a),u.releaseCapture(a,!0),this.msReleasePointerCapture(a)}):(W=function(a){i(a),j(this),k(a)&&u.setCapture(a,this)},X=function(a){i(a),u.releaseCapture(a)}),Y=function(a){return!!u.captureInfo[a]},g(),h(),l();var ba={dispatcher:u,Installer:c,PointerEvent:a,PointerMap:p,targetFinding:v};return ba});
///////////////////////////////////////////////
///////////////////////////////////////////////
var config = {"dark_mode": false, "show_pads": true, "show_fabrication": false, "show_silkscreen": true, "highlight_pin1": false, "redraw_on_drag": true, "board_rotation": 0, "checkboxes": "Sourced,Placed", "bom_view": "left-right", "layer_view": "FB", "fields": ["Value", "Footprint"]}
///////////////////////////////////////////////
///////////////////////////////////////////////
var pcbdata = JSON.parse(LZString.decompressFromBase64("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"))
///////////////////////////////////////////////
///////////////////////////////////////////////
/* Utility functions */
var storagePrefix = 'KiCad_HTML_BOM__' + pcbdata.metadata.title + '__' +
pcbdata.metadata.revision + '__#';
var storage;
function initStorage(key) {
try {
window.localStorage.getItem("blank");
storage = window.localStorage;
} catch (e) {
// localStorage not available
}
if (!storage) {
try {
window.sessionStorage.getItem("blank");
storage = window.sessionStorage;
} catch (e) {
// sessionStorage also not available
}
}
}
function readStorage(key) {
if (storage) {
return storage.getItem(storagePrefix + key);
} else {
return null;
}
}
function writeStorage(key, value) {
if (storage) {
storage.setItem(storagePrefix + key, value);
}
}
function fancyDblClickHandler(el, onsingle, ondouble) {
return function() {
if (el.getAttribute("data-dblclick") == null) {
el.setAttribute("data-dblclick", 1);
setTimeout(function() {
if (el.getAttribute("data-dblclick") == 1) {
onsingle();
}
el.removeAttribute("data-dblclick");
}, 200);
} else {
el.removeAttribute("data-dblclick");
ondouble();
}
}
}
function smoothScrollToRow(rowid) {
document.getElementById(rowid).scrollIntoView({
behavior: "smooth",
block: "center",
inline: "nearest"
});
}
function focusInputField(input) {
input.scrollIntoView(false);
input.focus();
input.select();
}
function saveBomTable(output) {
var text = '';
for (var node of bomhead.childNodes[0].childNodes) {
if (node.firstChild) {
text += (output == 'csv' ? `"${node.firstChild.nodeValue}"` : node.firstChild.nodeValue);
}
if (node != bomhead.childNodes[0].lastChild) {
text += (output == 'csv' ? ',' : '\t');
}
}
text += '\n';
for (var row of bombody.childNodes) {
for (var cell of row.childNodes) {
let val = '';
for (var node of cell.childNodes) {
if (node.nodeName == "INPUT") {
if (node.checked) {
val += '✓';
}
} else if (node.nodeName == "MARK") {
val += node.firstChild.nodeValue;
} else {
val += node.nodeValue;
}
}
if (output == 'csv') {
val = val.replace(/\"/g, '\"\"'); // pair of double-quote characters
if (isNumeric(val)) {
val = +val; // use number
} else {
val = `"${val}"`; // enclosed within double-quote
}
}
text += val;
if (cell != row.lastChild) {
text += (output == 'csv' ? ',' : '\t');