rusefi_documentation/ibom-backup/proteus_0_4_ibom.html

3429 lines
304 KiB
HTML

<!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-color-highlight: #D04040;
--pin1-outline-color: #ffb629;
--pin1-outline-color-highlight: #b4ff03;
--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;
}
.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 {
transition: background-color 0.2s;
}
.bom .numCol {
width: 25px;
}
.bom .Description {
width: 10%;
}
.bom .Part {
width: 10%;
}
.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;
}
.dark .statsbtn, .dark .savebtn, .dark .menubtn, .dark .iobtn {
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 {
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;
}
.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;
}
</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 <pieroxy@pieroxy.net>
// 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 = {"show_fabrication": false, "redraw_on_drag": true, "highlight_pin1": false, "extra_fields": [], "dark_mode": false, "bom_view": "left-right", "board_rotation": 0, "checkboxes": "Sourced,Placed", "show_silkscreen": true, "show_pads": true, "layer_view": "FB"}
///////////////////////////////////////////////
///////////////////////////////////////////////
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 copyToClipboard() {
var text = '';
for (var node of bomhead.childNodes[0].childNodes) {
if (node.firstChild) {
text = text + node.firstChild.nodeValue;
}
if (node != bomhead.childNodes[0].lastChild) {
text += '\t';
}
}
text += '\n';
for (var row of bombody.childNodes) {
for (var cell of row.childNodes) {
for (var node of cell.childNodes) {
if (node.nodeName == "INPUT") {
if (node.checked) {
text = text + '✓';
}
} else if (node.nodeName == "MARK") {
text = text + node.firstChild.nodeValue;
} else {
text = text + node.nodeValue;
}
}
if (cell != row.lastChild) {
text += '\t';
}
}
text += '\n';
}
var textArea = document.createElement("textarea");
textArea.classList.add('clipboard-temp');
textArea.value = text;
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
try {
if (document.execCommand('copy')) {
console.log('Bom copied to clipboard.');
}
} catch (err) {
console.log('Can not copy to clipboard.');
}
document.body.removeChild(textArea);
}
function removeGutterNode(node) {
for (var i = 0; i < node.childNodes.length; i++) {
if (node.childNodes[i].classList &&
node.childNodes[i].classList.contains("gutter")) {
node.removeChild(node.childNodes[i]);
break;
}
}
}
function cleanGutters() {
removeGutterNode(document.getElementById("bot"));
removeGutterNode(document.getElementById("canvasdiv"));
}
var units = {
prefixes: {
giga: ["G", "g", "giga", "Giga", "GIGA"],
mega: ["M", "mega", "Mega", "MEGA"],
kilo: ["K", "k", "kilo", "Kilo", "KILO"],
milli: ["m", "milli", "Milli", "MILLI"],
micro: ["U", "u", "micro", "Micro", "MICRO", "μ", "µ"], // different utf8 μ
nano: ["N", "n", "nano", "Nano", "NANO"],
pico: ["P", "p", "pico", "Pico", "PICO"],
},
unitsShort: ["R", "r", "Ω", "F", "f", "H", "h"],
unitsLong: [
"OHM", "Ohm", "ohm", "ohms",
"FARAD", "Farad", "farad",
"HENRY", "Henry", "henry"
],
getMultiplier: function(s) {
if (this.prefixes.giga.includes(s)) return 1e9;
if (this.prefixes.mega.includes(s)) return 1e6;
if (this.prefixes.kilo.includes(s)) return 1e3;
if (this.prefixes.milli.includes(s)) return 1e-3;
if (this.prefixes.micro.includes(s)) return 1e-6;
if (this.prefixes.nano.includes(s)) return 1e-9;
if (this.prefixes.pico.includes(s)) return 1e-12;
return 1;
},
valueRegex: null,
}
function initUtils() {
var allPrefixes = units.prefixes.giga
.concat(units.prefixes.mega)
.concat(units.prefixes.kilo)
.concat(units.prefixes.milli)
.concat(units.prefixes.micro)
.concat(units.prefixes.nano)
.concat(units.prefixes.pico);
var allUnits = units.unitsShort.concat(units.unitsLong);
units.valueRegex = new RegExp("^([0-9\.]+)" +
"\\s*(" + allPrefixes.join("|") + ")?" +
"(" + allUnits.join("|") + ")?" +
"(\\b.*)?$", "");
units.valueAltRegex = new RegExp("^([0-9]*)" +
"(" + units.unitsShort.join("|") + ")?" +
"([GgMmKkUuNnPp])?" +
"([0-9]*)" +
"(\\b.*)?$", "");
for (var bom_type of ["both", "F", "B"]) {
for (var row of pcbdata.bom[bom_type]) {
row.push(parseValue(row[1], row[3][0][0]));
}
}
}
function parseValue(val, ref) {
var inferUnit = (unit, ref) => {
if (unit) {
unit = unit.toLowerCase();
if (unit == 'Ω' || unit == "ohm" || unit == "ohms") {
unit = 'r';
}
unit = unit[0];
} else {
ref = /^([a-z]+)\d+$/i.exec(ref);
if (ref) {
ref = ref[1].toLowerCase();
if (ref == "c") unit = 'f';
else if (ref == "l") unit = 'h';
else if (ref == "r" || ref == "rv") unit = 'r';
else unit = null;
}
}
return unit;
};
val = val.replace(/,/g, "");
var match = units.valueRegex.exec(val);
var unit;
if (match) {
val = parseFloat(match[1]);
if (match[2]) {
val = val * units.getMultiplier(match[2]);
}
unit = inferUnit(match[3], ref);
if (!unit) return null;
else return {
val: val,
unit: unit,
extra: match[4],
}
}
match = units.valueAltRegex.exec(val);
if (match && (match[1] || match[4])) {
val = parseFloat(match[1] + "." + match[4]);
if (match[3]) {
val = val * units.getMultiplier(match[3]);
}
unit = inferUnit(match[2], ref);
if (!unit) return null;
else return {
val: val,
unit: unit,
extra: match[5],
}
}
return null;
}
function valueCompare(a, b, stra, strb) {
if (a === null && b === null) {
// Failed to parse both values, compare them as strings.
if (stra != strb) return stra > strb ? 1 : -1;
else return 0;
} else if (a === null) {
return 1;
} else if (b === null) {
return -1;
} else {
if (a.unit != b.unit) return a.unit > b.unit ? 1 : -1;
else if (a.val != b.val) return a.val > b.val ? 1 : -1;
else if (a.extra != b.extra) return a.extra > b.extra ? 1 : -1;
else return 0;
}
}
function validateSaveImgDimension(element) {
var valid = false;
var intValue = 0;
if (/^[1-9]\d*$/.test(element.value)) {
intValue = parseInt(element.value);
if (intValue <= 16000) {
valid = true;
}
}
if (valid) {
element.classList.remove("invalid");
} else {
element.classList.add("invalid");
}
return intValue;
}
function saveImage(layer) {
var width = validateSaveImgDimension(document.getElementById("render-save-width"));
var height = validateSaveImgDimension(document.getElementById("render-save-height"));
var bgcolor = null;
if (!document.getElementById("render-save-transparent").checked) {
var style = getComputedStyle(topmostdiv);
bgcolor = style.getPropertyValue("background-color");
}
if (!width || !height) return;
// Prepare image
var canvas = document.createElement("canvas");
var layerdict = {
transform: {
x: 0,
y: 0,
s: 1,
panx: 0,
pany: 0,
zoom: 1,
},
bg: canvas,
fab: canvas,
silk: canvas,
highlight: canvas,
layer: layer,
}
// Do the rendering
recalcLayerScale(layerdict, width, height);
prepareLayer(layerdict);
clearCanvas(canvas, bgcolor);
drawBackground(layerdict, false);
drawHighlightsOnLayer(layerdict, false);
// Save image
var imgdata = canvas.toDataURL("image/png");
var filename = pcbdata.metadata.title;
if (pcbdata.metadata.revision) {
filename += `.${pcbdata.metadata.revision}`;
}
filename += `.${layer}.png`;
saveFile(filename, dataURLtoBlob(imgdata));
}
function saveSettings() {
var data = {
type: "InteractiveHtmlBom settings",
version: 1,
pcbmetadata: pcbdata.metadata,
settings: settings,
}
var blob = new Blob([JSON.stringify(data, null, 4)], {type: "application/json"});
saveFile(`${pcbdata.metadata.title}.settings.json`, blob);
}
function loadSettings() {
var input = document.createElement("input");
input.type = "file";
input.accept = ".settings.json";
input.onchange = function(e) {
var file = e.target.files[0];
var reader = new FileReader();
reader.onload = readerEvent => {
var content = readerEvent.target.result;
var newSettings;
try {
newSettings = JSON.parse(content);
} catch(e) {
alert("Selected file is not InteractiveHtmlBom settings file.");
return;
}
if (newSettings.type != "InteractiveHtmlBom settings") {
alert("Selected file is not InteractiveHtmlBom settings file.");
return;
}
var metadataMatches = newSettings.hasOwnProperty("pcbmetadata");
if (metadataMatches) {
for (var k in pcbdata.metadata) {
if (!newSettings.pcbmetadata.hasOwnProperty(k) || newSettings.pcbmetadata[k] != pcbdata.metadata[k]) {
metadataMatches = false;
}
}
}
if (!metadataMatches) {
var currentMetadata = JSON.stringify(pcbdata.metadata, null, 4);
var fileMetadata = JSON.stringify(newSettings.pcbmetadata, null, 4);
if (!confirm(
`Settins file metadata does not match current metadata.\n\n` +
`Page metadata:\n${currentMetadata}\n\n` +
`Settings file metadata:\n${fileMetadata}\n\n` +
`Press OK if you would like to import settings anyway.`)) {
return;
}
}
overwriteSettings(newSettings.settings);
}
reader.readAsText(file, 'UTF-8');
}
input.click();
}
function overwriteSettings(newSettings) {
initDone = false;
Object.assign(settings, newSettings);
writeStorage("bomlayout", settings.bomlayout);
writeStorage("bommode", settings.bommode);
writeStorage("canvaslayout", settings.canvaslayout);
writeStorage("bomCheckboxes", settings.checkboxes.join(","));
document.getElementById("bomCheckboxes").value = settings.checkboxes.join(",");
for (var checkbox of settings.checkboxes) {
writeStorage("checkbox_" + checkbox, settings.checkboxStoredRefs[checkbox]);
}
padsVisible(settings.renderPads);
document.getElementById("padsCheckbox").checked = settings.renderPads;
fabricationVisible(settings.renderFabrication);
document.getElementById("fabricationCheckbox").checked = settings.renderFabrication;
silkscreenVisible(settings.renderSilkscreen);
document.getElementById("silkscreenCheckbox").checked = settings.renderSilkscreen;
referencesVisible(settings.renderReferences);
document.getElementById("referencesCheckbox").checked = settings.renderReferences;
valuesVisible(settings.renderValues);
document.getElementById("valuesCheckbox").checked = settings.renderValues;
tracksVisible(settings.renderTracks);
document.getElementById("tracksCheckbox").checked = settings.renderTracks;
zonesVisible(settings.renderZones);
document.getElementById("zonesCheckbox").checked = settings.renderZones;
dnpOutline(settings.renderDnpOutline);
document.getElementById("dnpOutlineCheckbox").checked = settings.renderDnpOutline;
setRedrawOnDrag(settings.redrawOnDrag);
document.getElementById("dragCheckbox").checked = settings.redrawOnDrag;
setDarkMode(settings.darkMode);
document.getElementById("darkmodeCheckbox").checked = settings.darkMode;
setHighlightPin1(settings.highlightpin1);
document.getElementById("highlightpin1Checkbox").checked = settings.highlightpin1;
writeStorage("boardRotation", settings.boardRotation);
document.getElementById("boardRotation").value = settings.boardRotation / 5;
document.getElementById("rotationDegree").textContent = settings.boardRotation;
initDone = true;
prepCheckboxes();
changeBomLayout(settings.bomlayout);
}
function saveFile(filename, blob) {
var link = document.createElement("a");
var objurl = URL.createObjectURL(blob);
link.download = filename;
link.href = objurl;
link.click();
}
function dataURLtoBlob(dataurl) {
var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
while(n--){
u8arr[n] = bstr.charCodeAt(n);
}
return new Blob([u8arr], {type:mime});
}
var settings = {
canvaslayout: "default",
bomlayout: "default",
bommode: "grouped",
checkboxes: [],
checkboxStoredRefs: {},
darkMode: false,
highlightpin1: false,
redrawOnDrag: true,
boardRotation: 0,
renderPads: true,
renderReferences: true,
renderValues: true,
renderSilkscreen: true,
renderFabrication: true,
renderDnpOutline: false,
renderTracks: true,
renderZones: true,
}
function initDefaults() {
settings.bomlayout = readStorage("bomlayout");
if (settings.bomlayout === null) {
settings.bomlayout = config.bom_view;
}
if (!['bom-only', 'left-right', 'top-bottom'].includes(settings.bomlayout)) {
settings.bomlayout = config.bom_view;
}
settings.bommode = readStorage("bommode");
if (settings.bommode === null) {
settings.bommode = "grouped";
}
if (!["grouped", "ungrouped", "netlist"].includes(settings.bommode)) {
settings.bommode = "grouped";
}
settings.canvaslayout = readStorage("canvaslayout");
if (settings.canvaslayout === null) {
settings.canvaslayout = config.layer_view;
}
var bomCheckboxes = readStorage("bomCheckboxes");
if (bomCheckboxes === null) {
bomCheckboxes = config.checkboxes;
}
settings.checkboxes = bomCheckboxes.split(",").filter((e) => e);
document.getElementById("bomCheckboxes").value = bomCheckboxes;
function initBooleanSetting(storageString, def, elementId, func) {
var b = readStorage(storageString);
if (b === null) {
b = def;
} else {
b = (b == "true");
}
document.getElementById(elementId).checked = b;
func(b);
}
initBooleanSetting("padsVisible", config.show_pads, "padsCheckbox", padsVisible);
initBooleanSetting("fabricationVisible", config.show_fabrication, "fabricationCheckbox", fabricationVisible);
initBooleanSetting("silkscreenVisible", config.show_silkscreen, "silkscreenCheckbox", silkscreenVisible);
initBooleanSetting("referencesVisible", true, "referencesCheckbox", referencesVisible);
initBooleanSetting("valuesVisible", true, "valuesCheckbox", valuesVisible);
if ("tracks" in pcbdata) {
initBooleanSetting("tracksVisible", true, "tracksCheckbox", tracksVisible);
initBooleanSetting("zonesVisible", true, "zonesCheckbox", zonesVisible);
} else {
document.getElementById("tracksAndZonesCheckboxes").style.display = "none";
tracksVisible(false);
zonesVisible(false);
}
initBooleanSetting("dnpOutline", false, "dnpOutlineCheckbox", dnpOutline);
initBooleanSetting("redrawOnDrag", config.redraw_on_drag, "dragCheckbox", setRedrawOnDrag);
initBooleanSetting("darkmode", config.dark_mode, "darkmodeCheckbox", setDarkMode);
initBooleanSetting("highlightpin1", config.highlight_pin1, "highlightpin1Checkbox", setHighlightPin1);
settings.boardRotation = readStorage("boardRotation");
if (settings.boardRotation === null) {
settings.boardRotation = config.board_rotation * 5;
} else {
settings.boardRotation = parseInt(settings.boardRotation);
}
document.getElementById("boardRotation").value = settings.boardRotation / 5;
document.getElementById("rotationDegree").textContent = settings.boardRotation;
}
///////////////////////////////////////////////
///////////////////////////////////////////////
/* PCB rendering code */
var emptyContext2d = document.createElement("canvas").getContext("2d");
function deg2rad(deg) {
return deg * Math.PI / 180;
}
function calcFontPoint(linepoint, text, offsetx, offsety, tilt) {
var point = [
linepoint[0] * text.width + offsetx,
linepoint[1] * text.height + offsety
];
// Adding half a line height here is technically a bug
// but pcbnew currently does the same, text is slightly shifted.
point[0] -= (point[1] + text.height * 0.5) * tilt;
return point;
}
function drawtext(ctx, text, color, flip) {
if ("ref" in text && !settings.renderReferences) return;
if ("val" in text && !settings.renderValues) return;
ctx.save();
ctx.fillStyle = color;
ctx.strokeStyle = color;
ctx.lineCap = "round";
ctx.lineJoin = "round";
ctx.lineWidth = text.thickness;
if (text.svgpath) {
ctx.stroke(new Path2D(text.svgpath));
ctx.restore();
return;
}
ctx.translate(...text.pos);
var angle = -text.angle;
if (text.attr.includes("mirrored")) {
ctx.scale(-1, 1);
angle = -angle;
}
var tilt = 0;
if (text.attr.includes("italic")) {
tilt = 0.125;
}
var interline = (text.height * 1.5 + text.thickness) / 2;
var txt = text.text.split("\n");
// KiCad ignores last empty line.
if (txt[txt.length - 1] == '') txt.pop();
ctx.rotate(deg2rad(angle));
for (var i in txt) {
var offsety = (-(txt.length - 1) + i * 2) * interline + text.height / 2;
var lineWidth = 0;
for (var c of txt[i]) {
if (c == '\t') {
var fourSpaces = 4 * pcbdata.font_data[' '].w * text.width;
lineWidth += fourSpaces - lineWidth % fourSpaces;
} else {
lineWidth += pcbdata.font_data[c].w * text.width;
}
}
var offsetx = 0;
switch (text.horiz_justify) {
case -1:
// Justify left, do nothing
break;
case 0:
// Justify center
offsetx -= lineWidth / 2;
break;
case 1:
// Justify right
offsetx -= lineWidth;
break;
}
for (var c of txt[i]) {
if (c == '\t') {
var fourSpaces = 4 * pcbdata.font_data[' '].w * text.width;
offsetx += fourSpaces - offsetx % fourSpaces;
continue;
}
for (var line of pcbdata.font_data[c].l) {
ctx.beginPath();
ctx.moveTo(...calcFontPoint(line[0], text, offsetx, offsety, tilt));
for (var i = 1; i < line.length; i++) {
ctx.lineTo(...calcFontPoint(line[i], text, offsetx, offsety, tilt));
}
ctx.stroke();
}
offsetx += pcbdata.font_data[c].w * text.width;
}
}
ctx.restore();
}
function drawedge(ctx, scalefactor, edge, color) {
ctx.strokeStyle = color;
ctx.lineWidth = Math.max(1 / scalefactor, edge.width);
ctx.lineCap = "round";
if (edge.svgpath) {
ctx.stroke(new Path2D(edge.svgpath));
} else {
ctx.beginPath();
if (edge.type == "segment") {
ctx.moveTo(...edge.start);
ctx.lineTo(...edge.end);
}
if (edge.type == "arc") {
ctx.arc(
...edge.start,
edge.radius,
deg2rad(edge.startangle),
deg2rad(edge.endangle));
}
if (edge.type == "circle") {
ctx.arc(
...edge.start,
edge.radius,
0, 2 * Math.PI);
ctx.closePath();
}
if (edge.type == "curve") {
ctx.moveTo(...edge.start);
ctx.bezierCurveTo(...edge.cpa, ...edge.cpb, ...edge.end);
}
ctx.stroke();
}
}
function getChamferedRectPath(size, radius, chamfpos, chamfratio) {
// chamfpos is a bitmask, left = 1, right = 2, bottom left = 4, bottom right = 8
var path = new Path2D();
var width = size[0];
var height = size[1];
var x = width * -0.5;
var y = height * -0.5;
var chamfOffset = Math.min(width, height) * chamfratio;
path.moveTo(x, 0);
if (chamfpos & 4) {
path.lineTo(x, y + height - chamfOffset);
path.lineTo(x + chamfOffset, y + height);
path.lineTo(0, y + height);
} else {
path.arcTo(x, y + height, x + width, y + height, radius);
}
if (chamfpos & 8) {
path.lineTo(x + width - chamfOffset, y + height);
path.lineTo(x + width, y + height - chamfOffset);
path.lineTo(x + width, 0);
} else {
path.arcTo(x + width, y + height, x + width, y, radius);
}
if (chamfpos & 2) {
path.lineTo(x + width, y + chamfOffset);
path.lineTo(x + width - chamfOffset, y);
path.lineTo(0, y);
} else {
path.arcTo(x + width, y, x, y, radius);
}
if (chamfpos & 1) {
path.lineTo(x + chamfOffset, y);
path.lineTo(x, y + chamfOffset);
path.lineTo(x, 0);
} else {
path.arcTo(x, y, x, y + height, radius);
}
path.closePath();
return path;
}
function getOblongPath(size) {
return getChamferedRectPath(size, Math.min(size[0], size[1]) / 2, 0, 0);
}
function getPolygonsPath(shape) {
if (shape.path2d) {
return shape.path2d;
}
if (shape.svgpath) {
shape.path2d = new Path2D(shape.svgpath);
} else {
var path = new Path2D();
for (var polygon of shape.polygons) {
path.moveTo(...polygon[0]);
for (var i = 1; i < polygon.length; i++) {
path.lineTo(...polygon[i]);
}
path.closePath();
}
shape.path2d = path;
}
return shape.path2d;
}
function drawPolygonShape(ctx, shape, color) {
ctx.save();
ctx.fillStyle = color;
if (!shape.svgpath) {
ctx.translate(...shape.pos);
ctx.rotate(deg2rad(-shape.angle));
}
ctx.fill(getPolygonsPath(shape));
ctx.restore();
}
function drawDrawing(ctx, layer, scalefactor, drawing, color) {
if (["segment", "arc", "circle", "curve"].includes(drawing.type)) {
drawedge(ctx, scalefactor, drawing, color);
} else if (drawing.type == "polygon") {
drawPolygonShape(ctx, drawing, color);
} else {
drawtext(ctx, drawing, color, layer == "B");
}
}
function getCirclePath(radius) {
var path = new Path2D();
path.arc(0, 0, radius, 0, 2 * Math.PI);
path.closePath();
return path;
}
function getCachedPadPath(pad) {
if (!pad.path2d) {
// if path2d is not set, build one and cache it on pad object
if (pad.shape == "rect") {
pad.path2d = new Path2D();
pad.path2d.rect(...pad.size.map(c => -c * 0.5), ...pad.size);
} else if (pad.shape == "oval") {
pad.path2d = getOblongPath(pad.size);
} else if (pad.shape == "circle") {
pad.path2d = getCirclePath(pad.size[0] / 2);
} else if (pad.shape == "roundrect") {
pad.path2d = getChamferedRectPath(pad.size, pad.radius, 0, 0);
} else if (pad.shape == "chamfrect") {
pad.path2d = getChamferedRectPath(pad.size, pad.radius, pad.chamfpos, pad.chamfratio)
} else if (pad.shape == "custom") {
pad.path2d = getPolygonsPath(pad);
}
}
return pad.path2d;
}
function drawPad(ctx, pad, color, outline, hole) {
ctx.save();
ctx.translate(...pad.pos);
ctx.rotate(deg2rad(pad.angle));
if (pad.offset) {
ctx.translate(...pad.offset);
}
ctx.fillStyle = color;
ctx.strokeStyle = color;
var path = getCachedPadPath(pad);
if (outline) {
ctx.stroke(path);
} else {
ctx.fill(path);
}
if (pad.type == "th" && hole) {
if (pad.offset) {
ctx.translate(-pad.offset[0], -pad.offset[1]);
}
ctx.fillStyle = "#CCCCCC";
if (pad.drillshape == "oblong") {
ctx.fill(getOblongPath(pad.drillsize));
} else {
ctx.fill(getCirclePath(pad.drillsize[0] / 2));
}
}
ctx.restore();
}
function drawModule(ctx, layer, scalefactor, module, padcolor, outlinecolor, highlight, outline) {
if (highlight) {
// draw bounding box
if (module.layer == layer) {
ctx.save();
ctx.globalAlpha = 0.2;
ctx.translate(...module.bbox.pos);
ctx.rotate(deg2rad(-module.bbox.angle));
ctx.translate(...module.bbox.relpos);
ctx.fillStyle = padcolor;
ctx.fillRect(0, 0, ...module.bbox.size);
ctx.globalAlpha = 1;
ctx.strokeStyle = padcolor;
ctx.strokeRect(0, 0, ...module.bbox.size);
ctx.restore();
}
}
// draw drawings
for (var drawing of module.drawings) {
if (drawing.layer == layer) {
drawDrawing(ctx, layer, scalefactor, drawing.drawing, padcolor);
}
}
// draw pads
if (settings.renderPads) {
for (var pad of module.pads) {
if (pad.layers.includes(layer)) {
drawPad(ctx, pad, padcolor, outline, true);
if (pad.pin1 && settings.highlightpin1) {
drawPad(ctx, pad, outlinecolor, true, false);
}
}
}
}
}
function drawEdgeCuts(canvas, scalefactor) {
var ctx = canvas.getContext("2d");
var edgecolor = getComputedStyle(topmostdiv).getPropertyValue('--pcb-edge-color');
for (var edge of pcbdata.edges) {
drawedge(ctx, scalefactor, edge, edgecolor);
}
}
function drawModules(canvas, layer, scalefactor, highlight) {
var ctx = canvas.getContext("2d");
ctx.lineWidth = 3 / scalefactor;
var style = getComputedStyle(topmostdiv);
var padcolor = style.getPropertyValue('--pad-color');
var outlinecolor = style.getPropertyValue('--pin1-outline-color');
if (highlight) {
padcolor = style.getPropertyValue('--pad-color-highlight');
outlinecolor = style.getPropertyValue('--pin1-outline-color-highlight');
}
for (var i = 0; i < pcbdata.modules.length; i++) {
var mod = pcbdata.modules[i];
var outline = settings.renderDnpOutline && pcbdata.bom.skipped.includes(i);
if (!highlight || highlightedModules.includes(i)) {
drawModule(ctx, layer, scalefactor, mod, padcolor, outlinecolor, highlight, outline);
}
}
}
function drawBgLayer(layername, canvas, layer, scalefactor, edgeColor, polygonColor, textColor) {
var ctx = canvas.getContext("2d");
for (var d of pcbdata[layername][layer]) {
if (["segment", "arc", "circle", "curve"].includes(d.type)) {
drawedge(ctx, scalefactor, d, edgeColor);
} else if (d.type == "polygon") {
drawPolygonShape(ctx, d, polygonColor);
} else {
drawtext(ctx, d, textColor, layer == "B");
}
}
}
function drawTracks(canvas, layer, color, highlight) {
ctx = canvas.getContext("2d");
ctx.strokeStyle = color;
ctx.lineCap = "round";
for(var track of pcbdata.tracks[layer]) {
if (highlight && highlightedNet != track.net) continue;
ctx.lineWidth = track.width;
ctx.beginPath();
ctx.moveTo(...track.start);
ctx.lineTo(...track.end);
ctx.stroke();
}
}
function drawZones(canvas, layer, color, highlight) {
ctx = canvas.getContext("2d");
ctx.strokeStyle = color;
ctx.fillStyle = color;
ctx.lineJoin = "round";
for(var zone of pcbdata.zones[layer]) {
if (!zone.path2d) {
zone.path2d = getPolygonsPath(zone);
}
if (highlight && highlightedNet != zone.net) continue;
ctx.lineWidth = zone.width ? zone.width : 0;
ctx.fill(zone.path2d);
ctx.stroke(zone.path2d);
}
}
function clearCanvas(canvas, color = null) {
var ctx = canvas.getContext("2d");
ctx.save();
ctx.setTransform(1, 0, 0, 1, 0, 0);
if (color) {
ctx.fillStyle = color;
ctx.fillRect(0, 0, canvas.width, canvas.height);
} else {
ctx.clearRect(0, 0, canvas.width, canvas.height);
}
ctx.restore();
}
function drawNets(canvas, layer, highlight) {
var style = getComputedStyle(topmostdiv);
if (settings.renderTracks) {
var trackColor = style.getPropertyValue(highlight ? '--track-color-highlight' : '--track-color');
drawTracks(canvas, layer, trackColor, highlight);
}
if (settings.renderZones) {
var zoneColor = style.getPropertyValue(highlight ? '--zone-color-highlight' : '--zone-color');
drawZones(canvas, layer, zoneColor, highlight);
}
if (highlight && settings.renderPads) {
var padColor = style.getPropertyValue('--pad-color-highlight');
var ctx = canvas.getContext("2d");
for (var mod of pcbdata.modules) {
// draw pads
for (var pad of mod.pads) {
if (highlightedNet != pad.net) continue;
if (pad.layers.includes(layer)) {
drawPad(ctx, pad, padColor, false, true);
}
}
}
}
}
function drawHighlightsOnLayer(canvasdict, clear = true) {
if (clear) {
clearCanvas(canvasdict.highlight);
}
if (highlightedModules.length > 0) {
drawModules(canvasdict.highlight, canvasdict.layer,
canvasdict.transform.s * canvasdict.transform.zoom, true);
}
if (highlightedNet !== null) {
drawNets(canvasdict.highlight, canvasdict.layer, true);
}
}
function drawHighlights() {
drawHighlightsOnLayer(allcanvas.front);
drawHighlightsOnLayer(allcanvas.back);
}
function drawBackground(canvasdict, clear = true) {
if (clear) {
clearCanvas(canvasdict.bg);
clearCanvas(canvasdict.fab);
clearCanvas(canvasdict.silk);
}
drawNets(canvasdict.bg, canvasdict.layer, false);
drawModules(canvasdict.bg, canvasdict.layer,
canvasdict.transform.s * canvasdict.transform.zoom, false);
drawEdgeCuts(canvasdict.bg, canvasdict.transform.s);
var style = getComputedStyle(topmostdiv);
var edgeColor = style.getPropertyValue('--silkscreen-edge-color');
var polygonColor = style.getPropertyValue('--silkscreen-polygon-color');
var textColor = style.getPropertyValue('--silkscreen-text-color');
if (settings.renderSilkscreen) {
drawBgLayer(
"silkscreen", canvasdict.silk, canvasdict.layer,
canvasdict.transform.s * canvasdict.transform.zoom,
edgeColor, polygonColor, textColor);
}
edgeColor = style.getPropertyValue('--fabrication-edge-color');
polygonColor = style.getPropertyValue('--fabrication-polygon-color');
textColor = style.getPropertyValue('--fabrication-text-color');
if (settings.renderFabrication) {
drawBgLayer(
"fabrication", canvasdict.fab, canvasdict.layer,
canvasdict.transform.s * canvasdict.transform.zoom,
edgeColor, polygonColor, textColor);
}
}
function prepareCanvas(canvas, flip, transform) {
var ctx = canvas.getContext("2d");
ctx.setTransform(1, 0, 0, 1, 0, 0);
var fontsize = 1.55;
ctx.scale(transform.zoom, transform.zoom);
ctx.translate(transform.panx, transform.pany);
if (flip) {
ctx.scale(-1, 1);
}
ctx.translate(transform.x, transform.y);
ctx.rotate(deg2rad(settings.boardRotation));
ctx.scale(transform.s, transform.s);
}
function prepareLayer(canvasdict) {
var flip = (canvasdict.layer == "B");
for (var c of ["bg", "fab", "silk", "highlight"]) {
prepareCanvas(canvasdict[c], flip, canvasdict.transform);
}
}
function rotateVector(v, angle) {
angle = deg2rad(angle);
return [
v[0] * Math.cos(angle) - v[1] * Math.sin(angle),
v[0] * Math.sin(angle) + v[1] * Math.cos(angle)
];
}
function applyRotation(bbox) {
var corners = [
[bbox.minx, bbox.miny],
[bbox.minx, bbox.maxy],
[bbox.maxx, bbox.miny],
[bbox.maxx, bbox.maxy],
];
corners = corners.map((v) => rotateVector(v, settings.boardRotation));
return {
minx: corners.reduce((a, v) => Math.min(a, v[0]), Infinity),
miny: corners.reduce((a, v) => Math.min(a, v[1]), Infinity),
maxx: corners.reduce((a, v) => Math.max(a, v[0]), -Infinity),
maxy: corners.reduce((a, v) => Math.max(a, v[1]), -Infinity),
}
}
function recalcLayerScale(layerdict, width, height) {
var bbox = applyRotation(pcbdata.edges_bbox);
var scalefactor = 0.98 * Math.min(
width / (bbox.maxx - bbox.minx),
height / (bbox.maxy - bbox.miny)
);
if (scalefactor < 0.1) {
scalefactor = 1;
}
layerdict.transform.s = scalefactor;
var flip = (layerdict.layer == "B");
if (flip) {
layerdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor + width) * 0.5;
} else {
layerdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor - width) * 0.5;
}
layerdict.transform.y = -((bbox.maxy + bbox.miny) * scalefactor - height) * 0.5;
for (var c of ["bg", "fab", "silk", "highlight"]) {
canvas = layerdict[c];
canvas.width = width;
canvas.height = height;
canvas.style.width = (width / devicePixelRatio) + "px";
canvas.style.height = (height / devicePixelRatio) + "px";
}
}
function redrawCanvas(layerdict) {
prepareLayer(layerdict);
drawBackground(layerdict);
drawHighlightsOnLayer(layerdict);
}
function resizeCanvas(layerdict) {
var canvasdivid = {
"F": "frontcanvas",
"B": "backcanvas"
} [layerdict.layer];
var width = document.getElementById(canvasdivid).clientWidth * devicePixelRatio;
var height = document.getElementById(canvasdivid).clientHeight * devicePixelRatio;
recalcLayerScale(layerdict, width, height);
redrawCanvas(layerdict);
}
function resizeAll() {
resizeCanvas(allcanvas.front);
resizeCanvas(allcanvas.back);
}
function pointWithinDistanceToSegment(x, y, x1, y1, x2, y2, d) {
var A = x - x1;
var B = y - y1;
var C = x2 - x1;
var D = y2 - y1;
var dot = A * C + B * D;
var len_sq = C * C + D * D;
var dx, dy;
if (len_sq == 0) {
// start and end of the segment coincide
dx = x - x1;
dy = y - y1;
} else {
var param = dot / len_sq;
var xx, yy;
if (param < 0) {
xx = x1;
yy = y1;
} else if (param > 1) {
xx = x2;
yy = y2;
} else {
xx = x1 + param * C;
yy = y1 + param * D;
}
dx = x - xx;
dy = y - yy;
}
return dx * dx + dy * dy <= d * d;
}
function pointWithinPad(x, y, pad) {
var v = [x - pad.pos[0], y - pad.pos[1]];
v = rotateVector(v, -pad.angle);
if (pad.offset) {
v[0] -= pad.offset[0];
v[1] -= pad.offset[1];
}
return emptyContext2d.isPointInPath(getCachedPadPath(pad), ...v);
}
function netHitScan(layer, x, y) {
// Check track segments
if (settings.renderTracks && pcbdata.tracks) {
for(var track of pcbdata.tracks[layer]) {
if (pointWithinDistanceToSegment(x, y, ...track.start, ...track.end, track.width / 2)) {
return track.net;
}
}
}
// Check pads
if (settings.renderPads) {
for (var mod of pcbdata.modules) {
for(var pad of mod.pads) {
if (pad.layers.includes(layer) && pointWithinPad(x, y, pad)) {
return pad.net;
}
}
}
}
return null;
}
function pointWithinModuleBbox(x, y, bbox) {
var v = [x - bbox.pos[0], y - bbox.pos[1]];
v = rotateVector(v, bbox.angle);
return bbox.relpos[0] <= v[0] && v[0] <= bbox.relpos[0] + bbox.size[0] &&
bbox.relpos[1] <= v[1] && v[1] <= bbox.relpos[1] + bbox.size[1];
}
function bboxHitScan(layer, x, y) {
var result = [];
for (var i = 0; i < pcbdata.modules.length; i++) {
var module = pcbdata.modules[i];
if (module.layer == layer) {
if (pointWithinModuleBbox(x, y, module.bbox)) {
result.push(i);
}
}
}
return result;
}
function handlePointerDown(e, layerdict) {
if (e.button != 0) {
return;
}
e.preventDefault();
e.stopPropagation();
if (!e.hasOwnProperty("offsetX")) {
// The polyfill doesn't set this properly
e.offsetX = e.pageX - e.currentTarget.offsetLeft;
e.offsetY = e.pageY - e.currentTarget.offsetTop;
}
layerdict.pointerStates[e.pointerId] = {
distanceTravelled: 0,
lastX: e.offsetX,
lastY: e.offsetY,
downTime: Date.now(),
};
}
function handleMouseClick(e, layerdict) {
if (!e.hasOwnProperty("offsetX")) {
// The polyfill doesn't set this properly
e.offsetX = e.pageX - e.currentTarget.offsetLeft;
e.offsetY = e.pageY - e.currentTarget.offsetTop;
}
var x = e.offsetX;
var y = e.offsetY;
var t = layerdict.transform;
if (layerdict.layer == "B") {
x = (devicePixelRatio * x / t.zoom - t.panx + t.x) / -t.s;
} else {
x = (devicePixelRatio * x / t.zoom - t.panx - t.x) / t.s;
}
y = (devicePixelRatio * y / t.zoom - t.y - t.pany) / t.s;
var v = rotateVector([x, y], -settings.boardRotation);
if ("nets" in pcbdata) {
var net = netHitScan(layerdict.layer, ...v);
if (net !== highlightedNet) {
netClicked(net);
}
}
if (highlightedNet === null) {
var modules = bboxHitScan(layerdict.layer, ...v);
if (modules.length > 0) {
modulesClicked(modules);
}
}
}
function handlePointerLeave(e, layerdict) {
e.preventDefault();
e.stopPropagation();
if (!settings.redrawOnDrag) {
redrawCanvas(layerdict);
}
delete layerdict.pointerStates[e.pointerId];
}
function resetTransform(layerdict) {
layerdict.transform.panx = 0;
layerdict.transform.pany = 0;
layerdict.transform.zoom = 1;
redrawCanvas(layerdict);
}
function handlePointerUp(e, layerdict) {
if (!e.hasOwnProperty("offsetX")) {
// The polyfill doesn't set this properly
e.offsetX = e.pageX - e.currentTarget.offsetLeft;
e.offsetY = e.pageY - e.currentTarget.offsetTop;
}
e.preventDefault();
e.stopPropagation();
if (e.button == 2) {
// Reset pan and zoom on right click.
resetTransform(layerdict);
layerdict.anotherPointerTapped = false;
return;
}
// We haven't necessarily had a pointermove event since the interaction started, so make sure we update this now
var ptr = layerdict.pointerStates[e.pointerId];
ptr.distanceTravelled += Math.abs(e.offsetX - ptr.lastX) + Math.abs(e.offsetY - ptr.lastY);
if (e.button == 0 && ptr.distanceTravelled < 10 && Date.now() - ptr.downTime <= 500) {
if (Object.keys(layerdict.pointerStates).length == 1) {
if (layerdict.anotherPointerTapped) {
// This is the second pointer coming off of a two-finger tap
resetTransform(layerdict);
} else {
// This is just a regular tap
handleMouseClick(e, layerdict);
}
layerdict.anotherPointerTapped = false;
} else {
// This is the first finger coming off of what could become a two-finger tap
layerdict.anotherPointerTapped = true;
}
} else {
if (!settings.redrawOnDrag) {
redrawCanvas(layerdict);
}
layerdict.anotherPointerTapped = false;
}
delete layerdict.pointerStates[e.pointerId];
}
function handlePointerMove(e, layerdict) {
if (!layerdict.pointerStates.hasOwnProperty(e.pointerId)) {
return;
}
e.preventDefault();
e.stopPropagation();
if (!e.hasOwnProperty("offsetX")) {
// The polyfill doesn't set this properly
e.offsetX = e.pageX - e.currentTarget.offsetLeft;
e.offsetY = e.pageY - e.currentTarget.offsetTop;
}
var thisPtr = layerdict.pointerStates[e.pointerId];
var dx = e.offsetX - thisPtr.lastX;
var dy = e.offsetY - thisPtr.lastY;
// If this number is low on pointer up, we count the action as a click
thisPtr.distanceTravelled += Math.abs(dx) + Math.abs(dy);
if (Object.keys(layerdict.pointerStates).length == 1) {
// This is a simple drag
layerdict.transform.panx += devicePixelRatio * dx / layerdict.transform.zoom;
layerdict.transform.pany += devicePixelRatio * dy / layerdict.transform.zoom;
} else if (Object.keys(layerdict.pointerStates).length == 2) {
var otherPtr = Object.values(layerdict.pointerStates).filter((ptr) => ptr != thisPtr)[0];
var oldDist = Math.sqrt(Math.pow(thisPtr.lastX - otherPtr.lastX, 2) + Math.pow(thisPtr.lastY - otherPtr.lastY, 2));
var newDist = Math.sqrt(Math.pow(e.offsetX - otherPtr.lastX, 2) + Math.pow(e.offsetY - otherPtr.lastY, 2));
var scaleFactor = newDist/oldDist;
if (scaleFactor != NaN) {
layerdict.transform.zoom *= scaleFactor;
var zoomd = (1 - scaleFactor) / layerdict.transform.zoom;
layerdict.transform.panx += devicePixelRatio * otherPtr.lastX * zoomd;
layerdict.transform.pany += devicePixelRatio * otherPtr.lastY * zoomd;
}
}
thisPtr.lastX = e.offsetX;
thisPtr.lastY = e.offsetY;
if (settings.redrawOnDrag) {
redrawCanvas(layerdict);
}
}
function handleMouseWheel(e, layerdict) {
e.preventDefault();
e.stopPropagation();
var t = layerdict.transform;
var wheeldelta = e.deltaY;
if (e.deltaMode == 1) {
// FF only, scroll by lines
wheeldelta *= 30;
} else if (e.deltaMode == 2) {
wheeldelta *= 300;
}
var m = Math.pow(1.1, -wheeldelta / 40);
// Limit amount of zoom per tick.
if (m > 2) {
m = 2;
} else if (m < 0.5) {
m = 0.5;
}
t.zoom *= m;
var zoomd = (1 - m) / t.zoom;
t.panx += devicePixelRatio * e.offsetX * zoomd;
t.pany += devicePixelRatio * e.offsetY * zoomd;
redrawCanvas(layerdict);
}
function addMouseHandlers(div, layerdict) {
div.addEventListener("pointerdown", function(e) {
handlePointerDown(e, layerdict);
});
div.addEventListener("pointermove", function(e) {
handlePointerMove(e, layerdict);
});
div.addEventListener("pointerup", function(e) {
handlePointerUp(e, layerdict);
});
var pointerleave = function(e) {
handlePointerLeave(e, layerdict);
}
div.addEventListener("pointercancel", pointerleave);
div.addEventListener("pointerleave", pointerleave);
div.addEventListener("pointerout", pointerleave);
div.onwheel = function(e) {
handleMouseWheel(e, layerdict);
}
for (var element of [div, layerdict.bg, layerdict.fab, layerdict.silk, layerdict.highlight]) {
element.addEventListener("contextmenu", function(e) {
e.preventDefault();
}, false);
}
}
function setRedrawOnDrag(value) {
settings.redrawOnDrag = value;
writeStorage("redrawOnDrag", value);
}
function setBoardRotation(value) {
settings.boardRotation = value * 5;
writeStorage("boardRotation", settings.boardRotation);
document.getElementById("rotationDegree").textContent = settings.boardRotation;
resizeAll();
}
function initRender() {
allcanvas = {
front: {
transform: {
x: 0,
y: 0,
s: 1,
panx: 0,
pany: 0,
zoom: 1,
},
pointerStates: {},
anotherPointerTapped: false,
bg: document.getElementById("F_bg"),
fab: document.getElementById("F_fab"),
silk: document.getElementById("F_slk"),
highlight: document.getElementById("F_hl"),
layer: "F",
},
back: {
transform: {
x: 0,
y: 0,
s: 1,
panx: 0,
pany: 0,
zoom: 1,
},
pointerStates: {},
anotherPointerTapped: false,
bg: document.getElementById("B_bg"),
fab: document.getElementById("B_fab"),
silk: document.getElementById("B_slk"),
highlight: document.getElementById("B_hl"),
layer: "B",
}
};
addMouseHandlers(document.getElementById("frontcanvas"), allcanvas.front);
addMouseHandlers(document.getElementById("backcanvas"), allcanvas.back);
}
///////////////////////////////////////////////
///////////////////////////////////////////////
/* DOM manipulation and misc code */
var bomsplit;
var canvassplit;
var initDone = false;
var bomSortFunction = null;
var currentSortColumn = null;
var currentSortOrder = null;
var currentHighlightedRowId;
var highlightHandlers = [];
var moduleIndexToHandler = {};
var netsToHandler = {};
var highlightedModules = [];
var highlightedNet = null;
var lastClicked;
function dbg(html) {
dbgdiv.innerHTML = html;
}
function redrawIfInitDone() {
if (initDone) {
redrawCanvas(allcanvas.front);
redrawCanvas(allcanvas.back);
}
}
function padsVisible(value) {
writeStorage("padsVisible", value);
settings.renderPads = value;
redrawIfInitDone();
}
function referencesVisible(value) {
writeStorage("referencesVisible", value);
settings.renderReferences = value;
redrawIfInitDone();
}
function valuesVisible(value) {
writeStorage("valuesVisible", value);
settings.renderValues = value;
redrawIfInitDone();
}
function tracksVisible(value) {
writeStorage("tracksVisible", value);
settings.renderTracks = value;
redrawIfInitDone();
}
function zonesVisible(value) {
writeStorage("zonesVisible", value);
settings.renderZones = value;
redrawIfInitDone();
}
function dnpOutline(value) {
writeStorage("dnpOutline", value);
settings.renderDnpOutline = value;
redrawIfInitDone();
}
function setDarkMode(value) {
if (value) {
topmostdiv.classList.add("dark");
} else {
topmostdiv.classList.remove("dark");
}
writeStorage("darkmode", value);
settings.darkMode = value;
redrawIfInitDone();
}
function fabricationVisible(value) {
writeStorage("fabricationVisible", value);
settings.renderFabrication = value;
redrawIfInitDone();
}
function silkscreenVisible(value) {
writeStorage("silkscreenVisible", value);
settings.renderSilkscreen = value;
redrawIfInitDone();
}
function setHighlightPin1(value) {
writeStorage("highlightpin1", value);
settings.highlightpin1 = value;
redrawIfInitDone();
}
function getStoredCheckboxRefs(checkbox) {
function convert(ref) {
var intref = parseInt(ref);
if (isNaN(intref)) {
for (var i = 0; i < pcbdata.modules.length; i++) {
if (pcbdata.modules[i].ref == ref) {
return i;
}
}
return -1;
} else {
return intref;
}
}
if (!(checkbox in settings.checkboxStoredRefs)) {
var val = readStorage("checkbox_" + checkbox);
settings.checkboxStoredRefs[checkbox] = val ? val : "";
}
if (!settings.checkboxStoredRefs[checkbox]) {
return new Set();
} else {
return new Set(settings.checkboxStoredRefs[checkbox].split(",").map(r => convert(r)).filter(a => a >= 0));
}
}
function getCheckboxState(checkbox, references) {
var storedRefsSet = getStoredCheckboxRefs(checkbox);
var currentRefsSet = new Set(references.map(r => r[1]));
// Get difference of current - stored
var difference = new Set(currentRefsSet);
for (ref of storedRefsSet) {
difference.delete(ref);
}
if (difference.size == 0) {
// All the current refs are stored
return "checked";
} else if (difference.size == currentRefsSet.size) {
// None of the current refs are stored
return "unchecked";
} else {
// Some of the refs are stored
return "indeterminate";
}
}
function setBomCheckboxState(checkbox, element, references) {
var state = getCheckboxState(checkbox, references);
element.checked = (state == "checked");
element.indeterminate = (state == "indeterminate");
}
function createCheckboxChangeHandler(checkbox, references) {
return function() {
refsSet = getStoredCheckboxRefs(checkbox);
if (this.checked) {
// checkbox ticked
for (var ref of references) {
refsSet.add(ref[1]);
}
} else {
// checkbox unticked
for (var ref of references) {
refsSet.delete(ref[1]);
}
}
settings.checkboxStoredRefs[checkbox] = [...refsSet].join(",");
writeStorage("checkbox_" + checkbox, settings.checkboxStoredRefs[checkbox]);
updateCheckboxStats(checkbox);
}
}
function clearHighlightedModules() {
if (currentHighlightedRowId) {
document.getElementById(currentHighlightedRowId).classList.remove("highlighted");
currentHighlightedRowId = null;
highlightedModules = [];
highlightedNet = null;
}
}
function createRowHighlightHandler(rowid, refs, net) {
return function() {
if (currentHighlightedRowId) {
if (currentHighlightedRowId == rowid) {
return;
}
document.getElementById(currentHighlightedRowId).classList.remove("highlighted");
}
document.getElementById(rowid).classList.add("highlighted");
currentHighlightedRowId = rowid;
highlightedModules = refs ? refs.map(r => r[1]) : [];
highlightedNet = net;
drawHighlights();
}
}
function entryMatches(entry) {
if (settings.bommode == "netlist") {
// entry is just a net name
return entry.toLowerCase().indexOf(filter) >= 0;
}
// check refs
for (var ref of entry[3]) {
if (ref[0].toLowerCase().indexOf(filter) >= 0) {
return true;
}
}
// check extra fields
for (var i in config.extra_fields) {
if (entry[4][i].toLowerCase().indexOf(filter) >= 0) {
return true;
}
}
// check value
if (entry[1].toLowerCase().indexOf(filter) >= 0) {
return true;
}
// check footprint
if (entry[2].toLowerCase().indexOf(filter) >= 0) {
return true;
}
return false;
}
function findRefInEntry(entry) {
return entry[3].filter(r => r[0].toLowerCase() == reflookup);
}
function highlightFilter(s) {
if (!filter) {
return s;
}
var parts = s.toLowerCase().split(filter);
if (parts.length == 1) {
return s;
}
var r = "";
var pos = 0;
for (var i in parts) {
if (i > 0) {
r += '<mark class="highlight">' +
s.substring(pos, pos + filter.length) +
'</mark>';
pos += filter.length;
}
r += s.substring(pos, pos + parts[i].length);
pos += parts[i].length;
}
return r;
}
function checkboxSetUnsetAllHandler(checkboxname) {
return function() {
var checkboxnum = 0;
while (checkboxnum < settings.checkboxes.length &&
settings.checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
checkboxnum++;
}
if (checkboxnum >= settings.checkboxes.length) {
return;
}
var allset = true;
var checkbox;
var row;
for (row of bombody.childNodes) {
checkbox = row.childNodes[checkboxnum + 1].childNodes[0];
if (!checkbox.checked || checkbox.indeterminate) {
allset = false;
break;
}
}
for (row of bombody.childNodes) {
checkbox = row.childNodes[checkboxnum + 1].childNodes[0];
checkbox.checked = !allset;
checkbox.indeterminate = false;
checkbox.onchange();
}
}
}
function createColumnHeader(name, cls, comparator) {
var th = document.createElement("TH");
th.innerHTML = name;
th.classList.add(cls);
th.style.cursor = "pointer";
var span = document.createElement("SPAN");
span.classList.add("sortmark");
span.classList.add("none");
th.appendChild(span);
th.onclick = function() {
if (currentSortColumn && this !== currentSortColumn) {
// Currently sorted by another column
currentSortColumn.childNodes[1].classList.remove(currentSortOrder);
currentSortColumn.childNodes[1].classList.add("none");
currentSortColumn = null;
currentSortOrder = null;
}
if (currentSortColumn && this === currentSortColumn) {
// Already sorted by this column
if (currentSortOrder == "asc") {
// Sort by this column, descending order
bomSortFunction = function(a, b) {
return -comparator(a, b);
}
currentSortColumn.childNodes[1].classList.remove("asc");
currentSortColumn.childNodes[1].classList.add("desc");
currentSortOrder = "desc";
} else {
// Unsort
bomSortFunction = null;
currentSortColumn.childNodes[1].classList.remove("desc");
currentSortColumn.childNodes[1].classList.add("none");
currentSortColumn = null;
currentSortOrder = null;
}
} else {
// Sort by this column, ascending order
bomSortFunction = comparator;
currentSortColumn = this;
currentSortColumn.childNodes[1].classList.remove("none");
currentSortColumn.childNodes[1].classList.add("asc");
currentSortOrder = "asc";
}
populateBomBody();
}
return th;
}
function populateBomHeader() {
while (bomhead.firstChild) {
bomhead.removeChild(bomhead.firstChild);
}
var tr = document.createElement("TR");
var th = document.createElement("TH");
th.classList.add("numCol");
tr.appendChild(th);
var checkboxCompareClosure = function(checkbox) {
return (a, b) => {
var stateA = getCheckboxState(checkbox, a[3]);
var stateB = getCheckboxState(checkbox, b[3]);
if (stateA > stateB) return -1;
if (stateA < stateB) return 1;
return 0;
}
}
if (settings.bommode == "netlist") {
th = createColumnHeader("Net name", "bom-netname", (a, b) => {
if (a > b) return -1;
if (a < b) return 1;
return 0;
});
tr.appendChild(th);
} else {
for (var checkbox of settings.checkboxes) {
th = createColumnHeader(
checkbox, "bom-checkbox", checkboxCompareClosure(checkbox));
th.onclick = fancyDblClickHandler(
th, th.onclick.bind(th), checkboxSetUnsetAllHandler(checkbox));
tr.appendChild(th);
}
tr.appendChild(createColumnHeader("References", "References", (a, b) => {
var i = 0;
while (i < a[3].length && i < b[3].length) {
if (a[3][i] != b[3][i]) return a[3][i] > b[3][i] ? 1 : -1;
i++;
}
return a[3].length - b[3].length;
}));
// Extra fields
if (config.extra_fields.length > 0) {
var extraFieldCompareClosure = function(fieldIndex) {
return (a, b) => {
var fa = a[4][fieldIndex];
var fb = b[4][fieldIndex];
if (fa != fb) return fa > fb ? 1 : -1;
else return 0;
}
}
for (var i in config.extra_fields) {
tr.appendChild(createColumnHeader(
config.extra_fields[i], "extra", extraFieldCompareClosure(i)));
}
}
tr.appendChild(createColumnHeader("Value", "Value", (a, b) => {
return valueCompare(a[5], b[5], a[1], b[1]);
}));
tr.appendChild(createColumnHeader("Footprint", "Footprint", (a, b) => {
if (a[2] != b[2]) return a[2] > b[2] ? 1 : -1;
else return 0;
}));
if (settings.bommode == "grouped") {
tr.appendChild(createColumnHeader("Quantity", "Quantity", (a, b) => {
return a[3].length - b[3].length;
}));
}
}
bomhead.appendChild(tr);
}
function populateBomBody() {
while (bom.firstChild) {
bom.removeChild(bom.firstChild);
}
highlightHandlers = [];
moduleIndexToHandler = {};
netsToHandler = {};
currentHighlightedRowId = null;
var first = true;
if (settings.bommode == "netlist") {
bomtable = pcbdata.nets.slice();
} else {
switch (settings.canvaslayout) {
case 'F':
bomtable = pcbdata.bom.F.slice();
break;
case 'FB':
bomtable = pcbdata.bom.both.slice();
break;
case 'B':
bomtable = pcbdata.bom.B.slice();
break;
}
if (settings.bommode == "ungrouped") {
// expand bom table
expandedTable = []
for (var bomentry of bomtable) {
for (var ref of bomentry[3]) {
expandedTable.push([1, bomentry[1], bomentry[2], [ref], bomentry[4], bomentry[5]]);
}
}
bomtable = expandedTable;
}
}
if (bomSortFunction) {
bomtable = bomtable.sort(bomSortFunction);
}
for (var i in bomtable) {
var bomentry = bomtable[i];
if (filter && !entryMatches(bomentry)) {
continue;
}
var references = null;
var netname = null;
var tr = document.createElement("TR");
var td = document.createElement("TD");
var rownum = +i + 1;
tr.id = "bomrow" + rownum;
td.textContent = rownum;
tr.appendChild(td);
if (settings.bommode == "netlist") {
netname = bomentry;
td = document.createElement("TD");
td.innerHTML = highlightFilter(netname ? netname : "&lt;no net&gt;");
tr.appendChild(td);
} else {
if (reflookup) {
references = findRefInEntry(bomentry);
if (references.length == 0) {
continue;
}
} else {
references = bomentry[3];
}
// Checkboxes
for (var checkbox of settings.checkboxes) {
if (checkbox) {
td = document.createElement("TD");
var input = document.createElement("input");
input.type = "checkbox";
input.onchange = createCheckboxChangeHandler(checkbox, references);
setBomCheckboxState(checkbox, input, references);
td.appendChild(input);
tr.appendChild(td);
}
}
// References
td = document.createElement("TD");
td.innerHTML = highlightFilter(references.map(r => r[0]).join(", "));
tr.appendChild(td);
// Extra fields
for (var i in config.extra_fields) {
td = document.createElement("TD");
td.innerHTML = highlightFilter(bomentry[4][i]);
tr.appendChild(td);
}
// Value
td = document.createElement("TD");
td.innerHTML = highlightFilter(bomentry[1]);
tr.appendChild(td);
// Footprint
td = document.createElement("TD");
td.innerHTML = highlightFilter(bomentry[2]);
tr.appendChild(td);
if (settings.bommode == "grouped") {
// Quantity
td = document.createElement("TD");
td.textContent = bomentry[3].length;
tr.appendChild(td);
}
}
bom.appendChild(tr);
var handler = createRowHighlightHandler(tr.id, references, netname);
tr.onmousemove = handler;
highlightHandlers.push({
id: tr.id,
handler: handler,
});
if (references !== null) {
for (var refIndex of references.map(r => r[1])) {
moduleIndexToHandler[refIndex] = handler;
}
}
if (netname !== null) {
netsToHandler[netname] = handler;
}
if ((filter || reflookup) && first) {
handler();
first = false;
}
}
}
function highlightPreviousRow() {
if (!currentHighlightedRowId) {
highlightHandlers[highlightHandlers.length - 1].handler();
} else {
if (highlightHandlers.length > 1 &&
highlightHandlers[0].id == currentHighlightedRowId) {
highlightHandlers[highlightHandlers.length - 1].handler();
} else {
for (var i = 0; i < highlightHandlers.length - 1; i++) {
if (highlightHandlers[i + 1].id == currentHighlightedRowId) {
highlightHandlers[i].handler();
break;
}
}
}
}
smoothScrollToRow(currentHighlightedRowId);
}
function highlightNextRow() {
if (!currentHighlightedRowId) {
highlightHandlers[0].handler();
} else {
if (highlightHandlers.length > 1 &&
highlightHandlers[highlightHandlers.length - 1].id == currentHighlightedRowId) {
highlightHandlers[0].handler();
} else {
for (var i = 1; i < highlightHandlers.length; i++) {
if (highlightHandlers[i - 1].id == currentHighlightedRowId) {
highlightHandlers[i].handler();
break;
}
}
}
}
smoothScrollToRow(currentHighlightedRowId);
}
function populateBomTable() {
populateBomHeader();
populateBomBody();
}
function modulesClicked(moduleIndexes) {
var lastClickedIndex = moduleIndexes.indexOf(lastClicked);
for (var i = 1; i <= moduleIndexes.length; i++) {
var refIndex = moduleIndexes[(lastClickedIndex + i) % moduleIndexes.length];
if (refIndex in moduleIndexToHandler) {
lastClicked = refIndex;
moduleIndexToHandler[refIndex]();
smoothScrollToRow(currentHighlightedRowId);
break;
}
}
}
function netClicked(net) {
if (net in netsToHandler) {
netsToHandler[net]();
smoothScrollToRow(currentHighlightedRowId);
} else {
clearHighlightedModules();
highlightedNet = net;
drawHighlights();
}
}
function updateFilter(input) {
filter = input.toLowerCase();
populateBomTable();
}
function updateRefLookup(input) {
reflookup = input.toLowerCase();
populateBomTable();
}
function changeCanvasLayout(layout) {
document.getElementById("fl-btn").classList.remove("depressed");
document.getElementById("fb-btn").classList.remove("depressed");
document.getElementById("bl-btn").classList.remove("depressed");
switch (layout) {
case 'F':
document.getElementById("fl-btn").classList.add("depressed");
if (settings.bomlayout != "bom-only") {
canvassplit.collapse(1);
}
break;
case 'B':
document.getElementById("bl-btn").classList.add("depressed");
if (settings.bomlayout != "bom-only") {
canvassplit.collapse(0);
}
break;
default:
document.getElementById("fb-btn").classList.add("depressed");
if (settings.bomlayout != "bom-only") {
canvassplit.setSizes([50, 50]);
}
}
settings.canvaslayout = layout;
writeStorage("canvaslayout", layout);
resizeAll();
changeBomMode(settings.bommode);
}
function populateMetadata() {
document.getElementById("title").innerHTML = pcbdata.metadata.title;
document.getElementById("revision").innerHTML = "Rev: " + pcbdata.metadata.revision;
document.getElementById("company").innerHTML = pcbdata.metadata.company;
document.getElementById("filedate").innerHTML = pcbdata.metadata.date;
if (pcbdata.metadata.title != "") {
document.title = pcbdata.metadata.title + " BOM";
}
var fp_f = 0, fp_b = 0, pads_f = 0, pads_b = 0, pads_th = 0;
for (var i = 0; i < pcbdata.modules.length; i++) {
if (pcbdata.bom.skipped.includes(i)) continue;
var mod = pcbdata.modules[i];
if (mod.layer == "F") {
fp_f++;
} else {
fp_b++;
}
for (var pad of mod.pads) {
if (pad.type == "th") {
pads_th++;
} else {
if (pad.layers.includes("F")) {
pads_f++;
}
if (pad.layers.includes("B")) {
pads_b++;
}
}
}
}
document.getElementById("stats-components-front").innerHTML = fp_f;
document.getElementById("stats-components-back").innerHTML = fp_b;
document.getElementById("stats-components-total").innerHTML = fp_f + fp_b;
document.getElementById("stats-groups-front").innerHTML = pcbdata.bom.F.length;
document.getElementById("stats-groups-back").innerHTML = pcbdata.bom.B.length;
document.getElementById("stats-groups-total").innerHTML = pcbdata.bom.both.length;
document.getElementById("stats-smd-pads-front").innerHTML = pads_f;
document.getElementById("stats-smd-pads-back").innerHTML = pads_b;
document.getElementById("stats-smd-pads-total").innerHTML = pads_f + pads_b;
document.getElementById("stats-th-pads").innerHTML = pads_th;
}
function changeBomLayout(layout) {
document.getElementById("bom-btn").classList.remove("depressed");
document.getElementById("lr-btn").classList.remove("depressed");
document.getElementById("tb-btn").classList.remove("depressed");
switch (layout) {
case 'bom-only':
document.getElementById("bom-btn").classList.add("depressed");
if (bomsplit) {
bomsplit.destroy();
bomsplit = null;
canvassplit.destroy();
canvassplit = null;
}
document.getElementById("frontcanvas").style.display = "none";
document.getElementById("backcanvas").style.display = "none";
document.getElementById("bot").style.height = "";
break;
case 'top-bottom':
document.getElementById("tb-btn").classList.add("depressed");
document.getElementById("frontcanvas").style.display = "";
document.getElementById("backcanvas").style.display = "";
document.getElementById("bot").style.height = "calc(100% - 80px)";
document.getElementById("bomdiv").classList.remove("split-horizontal");
document.getElementById("canvasdiv").classList.remove("split-horizontal");
document.getElementById("frontcanvas").classList.add("split-horizontal");
document.getElementById("backcanvas").classList.add("split-horizontal");
if (bomsplit) {
bomsplit.destroy();
bomsplit = null;
canvassplit.destroy();
canvassplit = null;
}
bomsplit = Split(['#bomdiv', '#canvasdiv'], {
sizes: [50, 50],
onDragEnd: resizeAll,
direction: "vertical",
gutterSize: 5
});
canvassplit = Split(['#frontcanvas', '#backcanvas'], {
sizes: [50, 50],
gutterSize: 5,
onDragEnd: resizeAll
});
break;
case 'left-right':
document.getElementById("lr-btn").classList.add("depressed");
document.getElementById("frontcanvas").style.display = "";
document.getElementById("backcanvas").style.display = "";
document.getElementById("bot").style.height = "calc(100% - 80px)";
document.getElementById("bomdiv").classList.add("split-horizontal");
document.getElementById("canvasdiv").classList.add("split-horizontal");
document.getElementById("frontcanvas").classList.remove("split-horizontal");
document.getElementById("backcanvas").classList.remove("split-horizontal");
if (bomsplit) {
bomsplit.destroy();
bomsplit = null;
canvassplit.destroy();
canvassplit = null;
}
bomsplit = Split(['#bomdiv', '#canvasdiv'], {
sizes: [50, 50],
onDragEnd: resizeAll,
gutterSize: 5
});
canvassplit = Split(['#frontcanvas', '#backcanvas'], {
sizes: [50, 50],
gutterSize: 5,
direction: "vertical",
onDragEnd: resizeAll
});
}
settings.bomlayout = layout;
writeStorage("bomlayout", layout);
changeCanvasLayout(settings.canvaslayout);
}
function changeBomMode(mode) {
document.getElementById("bom-grouped-btn").classList.remove("depressed");
document.getElementById("bom-ungrouped-btn").classList.remove("depressed");
document.getElementById("bom-netlist-btn").classList.remove("depressed");
switch (mode) {
case 'grouped':
document.getElementById("bom-grouped-btn").classList.add("depressed");
break;
case 'ungrouped':
document.getElementById("bom-ungrouped-btn").classList.add("depressed");
break;
case 'netlist':
document.getElementById("bom-netlist-btn").classList.add("depressed");
}
writeStorage("bommode", mode);
if (mode != settings.bommode) {
settings.bommode = mode;
bomSortFunction = null;
currentSortColumn = null;
currentSortOrder = null;
clearHighlightedModules();
}
populateBomTable();
}
function focusFilterField() {
focusInputField(document.getElementById("filter"));
}
function focusRefLookupField() {
focusInputField(document.getElementById("reflookup"));
}
function toggleBomCheckbox(bomrowid, checkboxnum) {
if (!bomrowid || checkboxnum > settings.checkboxes.length) {
return;
}
var bomrow = document.getElementById(bomrowid);
var checkbox = bomrow.childNodes[checkboxnum].childNodes[0];
checkbox.checked = !checkbox.checked;
checkbox.indeterminate = false;
checkbox.onchange();
}
function checkBomCheckbox(bomrowid, checkboxname) {
var checkboxnum = 0;
while (checkboxnum < settings.checkboxes.length &&
settings.checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
checkboxnum++;
}
if (!bomrowid || checkboxnum >= settings.checkboxes.length) {
return;
}
var bomrow = document.getElementById(bomrowid);
var checkbox = bomrow.childNodes[checkboxnum + 1].childNodes[0];
checkbox.checked = true;
checkbox.indeterminate = false;
checkbox.onchange();
}
function setBomCheckboxes(value) {
writeStorage("bomCheckboxes", value);
settings.checkboxes = value.split(",").filter((e) => e);
prepCheckboxes();
populateBomTable();
}
function prepCheckboxes() {
var table = document.getElementById("checkbox-stats");
while (table.childElementCount > 1) {
table.removeChild(table.lastChild);
}
if (settings.checkboxes.length) {
table.style.display = "";
} else {
table.style.display = "none";
}
for (var checkbox of settings.checkboxes) {
var tr = document.createElement("TR");
var td = document.createElement("TD");
td.innerHTML = checkbox;
tr.appendChild(td);
td = document.createElement("TD");
td.id = "checkbox-stats-" + checkbox;
var progressbar = document.createElement("div");
progressbar.classList.add("bar");
td.appendChild(progressbar);
var text = document.createElement("div");
text.classList.add("text");
td.appendChild(text);
tr.appendChild(td);
table.appendChild(tr);
updateCheckboxStats(checkbox);
}
}
function updateCheckboxStats(checkbox) {
var checked = getStoredCheckboxRefs(checkbox).size;
var total = pcbdata.modules.length - pcbdata.bom.skipped.length;
var percent = checked * 100.0 / total;
var td = document.getElementById("checkbox-stats-" + checkbox);
td.firstChild.style.width = percent + "%";
td.lastChild.innerHTML = checked + "/" + total + " (" + Math.round(percent) + "%)";
}
document.onkeydown = function(e) {
switch (e.key) {
case "n":
if (document.activeElement.type == "text") {
return;
}
if (currentHighlightedRowId !== null) {
checkBomCheckbox(currentHighlightedRowId, "placed");
highlightNextRow();
e.preventDefault();
}
break;
case "ArrowUp":
highlightPreviousRow();
e.preventDefault();
break;
case "ArrowDown":
highlightNextRow();
e.preventDefault();
break;
default:
break;
}
if (e.altKey) {
switch (e.key) {
case "f":
focusFilterField();
e.preventDefault();
break;
case "r":
focusRefLookupField();
e.preventDefault();
break;
case "z":
changeBomLayout("bom-only");
e.preventDefault();
break;
case "x":
changeBomLayout("left-right");
e.preventDefault();
break;
case "c":
changeBomLayout("top-bottom");
e.preventDefault();
break;
case "v":
changeCanvasLayout("F");
e.preventDefault();
break;
case "b":
changeCanvasLayout("FB");
e.preventDefault();
break;
case "n":
changeCanvasLayout("B");
e.preventDefault();
break;
default:
break;
}
if (e.key >= '1' && e.key <= '9') {
toggleBomCheckbox(currentHighlightedRowId, parseInt(e.key));
}
}
}
function hideNetlistButton() {
document.getElementById("bom-ungrouped-btn").classList.remove("middle-button");
document.getElementById("bom-ungrouped-btn").classList.add("right-most-button");
document.getElementById("bom-netlist-btn").style.display = "none";
}
window.onload = function(e) {
initUtils();
initRender();
initStorage();
initDefaults();
cleanGutters();
populateMetadata();
dbgdiv = document.getElementById("dbg");
bom = document.getElementById("bombody");
bomhead = document.getElementById("bomhead");
filter = "";
reflookup = "";
if (!("nets" in pcbdata)) {
hideNetlistButton();
}
initDone = true;
prepCheckboxes();
// Triggers render
changeBomLayout(settings.bomlayout);
}
window.onresize = resizeAll;
window.matchMedia("print").addListener(resizeAll);
///////////////////////////////////////////////
</script>
</head>
<body>
<div id="topmostdiv" class="topmostdiv">
<div id="top">
<div style="float: right; height: 100%;">
<div class="hideonprint menu" style="float: right; top: 8px;">
<button class="menubtn"></button>
<div class="menu-content">
<label class="menu-label menu-label-top">
<input id="darkmodeCheckbox" type="checkbox" onchange="setDarkMode(this.checked)">
Dark mode
</label>
<label class="menu-label">
<input id="padsCheckbox" type="checkbox" checked onchange="padsVisible(this.checked)">
Show footprint pads
</label>
<label class="menu-label" style="width: calc(50% - 18px)">
<input id="fabricationCheckbox" type="checkbox" checked onchange="fabricationVisible(this.checked)">
Fab layer
</label><!-- This comment eats space! All of it!
--><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
<input id="silkscreenCheckbox" type="checkbox" checked onchange="silkscreenVisible(this.checked)">
Silkscreen
</label>
<label class="menu-label" style="width: calc(50% - 18px)">
<input id="referencesCheckbox" type="checkbox" checked onchange="referencesVisible(this.checked)">
References
</label><!-- This comment eats space! All of it!
--><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
<input id="valuesCheckbox" type="checkbox" checked onchange="valuesVisible(this.checked)">
Values
</label>
<div id="tracksAndZonesCheckboxes">
<label class="menu-label" style="width: calc(50% - 18px)">
<input id="tracksCheckbox" type="checkbox" checked onchange="tracksVisible(this.checked)">
Tracks
</label><!-- This comment eats space! All of it!
--><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
<input id="zonesCheckbox" type="checkbox" checked onchange="zonesVisible(this.checked)">
Zones
</label>
</div>
<label class="menu-label">
<input id="dnpOutlineCheckbox" type="checkbox" checked onchange="dnpOutline(this.checked)">
DNP components outlined
</label>
<label class="menu-label">
<input id="highlightpin1Checkbox" type="checkbox" onchange="setHighlightPin1(this.checked)">
Highlight first pin
</label>
<label class="menu-label">
<input id="dragCheckbox" type="checkbox" checked onchange="setRedrawOnDrag(this.checked)">
Continuous redraw on drag
</label>
<label class="menu-label">
<span>Board rotation</span>
<span style="float: right"><span id="rotationDegree">0</span>&#176;</span>
<input id="boardRotation" type="range" min="-36" max="36" value="0" class="slider" oninput="setBoardRotation(this.value)">
</label>
<label class="menu-label">
<div style="margin-left: 5px">Bom checkboxes</div>
<input id="bomCheckboxes" class="menu-textbox" type=text
oninput="setBomCheckboxes(this.value)">
</label>
<label class="menu-label">
<span class="shameless-plug">
<span>Created using</span>
<a target="blank" href="https://github.com/openscopeproject/InteractiveHtmlBom">InteractiveHtmlBom</a>
</span>
</label>
</div>
</div>
<div class="button-container hideonprint"
style="float: right; position: relative; top: 8px">
<button id="fl-btn" class="left-most-button" onclick="changeCanvasLayout('F')"
title="Front only">F
</button>
<button id="fb-btn" class="middle-button" onclick="changeCanvasLayout('FB')"
title="Front and Back">FB
</button>
<button id="bl-btn" class="right-most-button" onclick="changeCanvasLayout('B')"
title="Back only">B
</button>
</div>
<div class="button-container hideonprint"
style="float: right; position: relative; top: 8px">
<button id="bom-btn" class="left-most-button" onclick="changeBomLayout('bom-only')"
title="BOM only"></button>
<button id="lr-btn" class="middle-button" onclick="changeBomLayout('left-right')"
title="BOM left, drawings right"></button>
<button id="tb-btn" class="right-most-button" onclick="changeBomLayout('top-bottom')"
title="BOM top, drawings bot"></button>
</div>
<div class="button-container hideonprint"
style="float: right; position: relative; top: 8px">
<button id="bom-grouped-btn" class="left-most-button" onclick="changeBomMode('grouped')"
title="Grouped BOM"></button>
<button id="bom-ungrouped-btn" class="middle-button" onclick="changeBomMode('ungrouped')"
title="Ungrouped BOM"></button>
<button id="bom-netlist-btn" class="right-most-button" onclick="changeBomMode('netlist')"
title="Netlist"></button>
</div>
<div class="hideonprint menu" style="float: right; top: 8px;">
<button class="statsbtn"></button>
<div class="menu-content">
<table class="stats">
<tbody>
<tr>
<td width="40%">Board stats</td>
<td>Front</td>
<td>Back</td>
<td>Total</td>
</tr>
<tr>
<td>Components</td>
<td id="stats-components-front">~</td>
<td id="stats-components-back">~</td>
<td id="stats-components-total">~</td>
</tr>
<tr>
<td>Groups</td>
<td id="stats-groups-front">~</td>
<td id="stats-groups-back">~</td>
<td id="stats-groups-total">~</td>
</tr>
<tr>
<td>SMD pads</td>
<td id="stats-smd-pads-front">~</td>
<td id="stats-smd-pads-back">~</td>
<td id="stats-smd-pads-total">~</td>
</tr>
<tr>
<td>TH pads</td>
<td colspan=3 id="stats-th-pads">~</td>
</tr>
</tbody>
</table>
<table class="stats">
<col width="40%"/><col />
<tbody id="checkbox-stats">
<tr>
<td colspan=2 style="border-top: 0">Checkboxes</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="hideonprint menu" style="float: right; top: 8px;">
<button class="iobtn"></button>
<div class="menu-content">
<div class="menu-label menu-label-top">
<div style="margin-left: 5px;">Save board image</div>
<div class="flexbox">
<input id="render-save-width" class="menu-textbox" type="text" value="1000" placeholder="Width"
style="flex-grow: 1; width: 50px;" oninput="validateSaveImgDimension(this)">
<span>X</span>
<input id="render-save-height" class="menu-textbox" type="text" value="1000" placeholder="Height"
style="flex-grow: 1; width: 50px;" oninput="validateSaveImgDimension(this)">
</div>
<label>
<input id="render-save-transparent" type="checkbox">
Transparent background
</label>
<div class="flexbox">
<button class="savebtn" onclick="saveImage('F')">Front</button>
<button class="savebtn" onclick="saveImage('B')">Back</button>
</div>
</div>
<div class="menu-label">
<span style="margin-left: 5px;">Config and checkbox state</span>
<div class="flexbox">
<button class="savebtn" onclick="saveSettings()">Export</button>
<button class="savebtn" onclick="loadSettings()">Import</button>
</div>
</div>
</div>
</div>
</div>
<div id="fileinfodiv" style="overflow: auto;">
<table class="fileinfo">
<tbody>
<tr>
<td id="title" class="title" style="width: 70%">
Title
</td>
<td id="revision" class="title" style="width: 30%">
Revision
</td>
</tr>
<tr>
<td id="company">
Company
</td>
<td id="filedate">
Date
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="bot" class="split" style="height: calc(100% - 80px)">
<div id="bomdiv" class="split split-horizontal">
<div style="width: 100%">
<input id="reflookup" class="textbox searchbox reflookup hideonprint" type="text" placeholder="Ref lookup"
oninput="updateRefLookup(this.value)">
<input id="filter" class="textbox searchbox filter hideonprint" type="text" placeholder="Filter"
oninput="updateFilter(this.value)">
<div class="button-container hideonprint" style="float: left; margin: 0;">
<button id="copy" title="Copy bom table to clipboard"
onclick="copyToClipboard()"></button>
</div>
</div>
<div id="dbg"></div>
<table class="bom">
<thead id="bomhead">
</thead>
<tbody id="bombody">
</tbody>
</table>
</div>
<div id="canvasdiv" class="split split-horizontal">
<div id="frontcanvas" class="split" touch-action="none" style="overflow: hidden">
<div style="position: relative; width: 100%; height: 100%;">
<canvas id="F_bg" style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
<canvas id="F_fab" style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
<canvas id="F_slk" style="position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
<canvas id="F_hl" style="position: absolute; left: 0; top: 0; z-index: 3;"></canvas>
</div>
</div>
<div id="backcanvas" class="split" touch-action="none" style="overflow: hidden">
<div style="position: relative; width: 100%; height: 100%;">
<canvas id="B_bg" style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
<canvas id="B_fab" style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
<canvas id="B_slk" style="position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
<canvas id="B_hl" style="position: absolute; left: 0; top: 0; z-index: 3;"></canvas>
</div>
</div>
</div>
</div>
</div>
</body>
</html>