Init WebCG

This commit is contained in:
2026-08-12 14:21:28 +09:00
commit 5c01660f97
170 changed files with 46248 additions and 0 deletions
+6
View File
File diff suppressed because one or more lines are too long
+65
View File
@@ -0,0 +1,65 @@
/* inspired by https://codepen.io/wildbeard/pen/eZZPZr */
input[type="radio"] {
display: none;
}
input[type="radio"]:checked + label span { transform: scale(1.25); }
input[type="radio"]:checked + label .gra { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .red { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .ora { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .gre { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .blu { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .pin { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .vio { border: 2px solid #ffffff;}
input[type="radio"]:checked + label .bla { border: 2px solid #ffffff;}
label {
display: inline-block;
width: 20px;
height: 20px;
margin-right: 10px;
cursor: pointer;
}
label:hover span {
/* transform: scale(1.25); */
}
label span {
display: block;
width: 100%;
height: 100%;
transition: transform .2s ease-in-out;
}
/* grey, red, orange, green, blue, pink, violet, black */
label span.gra { background: #7a7a7a;}
label span.red { background: #DB2828;}
label span.ora { background: #F2711C;}
label span.gre { background: #21BA45;}
label span.blu { background: #2185D0;}
label span.pin { background: #E03997;}
label span.vio { background: #8840FF;}
label span.bla { background: #000000;}
.row_accent0 {border-left: 10px solid #696969; }
.row_accent1 {border-left: 10px solid rgb(114, 38, 38); }
.row_accent2 {border-left: 10px solid rgb(117, 70, 38); }
.row_accent3 {border-left: 10px solid rgb(42, 107, 57); }
.row_accent4 {border-left: 10px solid rgb(41, 87, 122); }
.row_accent5 {border-left: 10px solid rgb(124, 57, 95); }
.row_accent6 {border-left: 10px solid rgb(91, 67, 129); }
.row_accent7 {border-left: 10px solid #181818; }
.row_accentExtras {border-left: 10px solid #acacac; }
.accent_{
background-color: rgba(255,255,255,0.05);
border: 0px solid yellow;
width:100%;
padding:10px;
margin-bottom:15px;
border-left: 12px solid white;
box-shadow: rgba(0, 0, 0, 0.7) 0px 0px 10px;
}
+103
View File
@@ -0,0 +1,103 @@
/*
Copyright 2020 SPX Graphics
CSS file for (bg)colors. Must be loaded after spx_layout.css
*/
.disabled {
opacity: 0.2;
cursor: not-allowed;
}
.bg_body {
background-color: #414C5A;
}
.darkBg {
background-color: rgba(0, 0, 0, 0.2);
}
.bg_green {
background-color: #54af3c;
}
.green {
color: #5f9750;
}
.bg_yellow {
background-color: #e5c310;
}
.bg_orange {
background-color: #e57010;
}
.bg_blue {
background-color: #375ea3;
}
.bg_red {
background-color: #9c1a29;
}
.bg_black {
background-color: #000000;
}
.bg_white {
background-color: #ffffff;
}
.bg_grey80 {
background-color: #272833;
}
.bg_grey {
background-color: #485a6b;
}
.bg_grey60 {
background-color: #2f303e;
}
.bg_grey40 {
background-color: #343D48;
}
.bg_grey15 {
background-color: #656e7a;
/* #706e83; */
}
.bg_grey10 {
background-color: #9aa4b1;
/* #706e83; */
}
.black{
color: black;
}
.bg_darken{
background-color: rgba(0,0,0,0.07);
}
.bg_lighten{
background-color: rgba(255,255,255,0.05);
}
.newVersionBubble {
padding: 2px 10px;
background-color: rgb(39, 95, 58);
border-radius: 4px;
/* margin-right: 10px; */
font-size: 90%;
cursor: pointer;
display: inline-block;
margin-top: 5px;
}
.fg_orange {
color: #e57010;
}
+448
View File
@@ -0,0 +1,448 @@
*, *:before, *:after {
box-sizing: inherit;
margin: 0;
padding: 0;
/* user-select: none; */
}
html, body, .page {
height: 100%;
padding: 0;
margin: 0;
font-size: 4vw; /* ============ font size =========== */
}
.page {
display: flex;
flex-direction: column;
}
.uitext {
font-size: 0.8em;
color: rgba(255, 255, 255, 0.5);
}
.swname {
font-size: 1.5em;
color: rgba(255, 255, 255, 0.1);
}
.page-header {
/* height: 130px; */
display: flex;
flex: 0 0 auto;
align-items: center;
}
.page-content {
display: flex;
flex: 1 1 auto;
overflow: hidden;
position: relative;
align-content: center;
}
.page-footer {
display: flex;
flex: 0 0 auto;
flex: 0 0 auto;
padding: 1em;
align-items: center;
}
.well {
margin: 0;
padding: 0;
padding: 1em;
height: 100%;
flex-grow: 1;
min-width: 48%;
overflow-y: auto;
border-radius: 0.5em;
background-repeat: repeat-x;
background-position: top, bottom;
background-image: url('../img/shadatop.png'), url('../img/shadabot.png');
}
.well + .well {
margin: 0% 0.5%;
}
.darken {
background-color: rgba(0, 0, 0, 0.1);
}
.lighten {
background-color: rgba(255, 255, 255, 0.1);
}
.skroll::-webkit-scrollbar-track {
background-color: transparent;
}
.skroll::-webkit-scrollbar {
width: 1em;
background-color: rgba(245, 245, 245, 0);
}
.skroll::-webkit-scrollbar-thumb {
border-radius: 0.5em;
background-color: rgba(255, 255, 255, 0.13);
}
.skroll::-webkit-scrollbar-thumb:hover
{
background-color: rgba(255, 255, 255, 0.274);
}
.headitem1 {
flex-grow: 1;
flex-basis: 0;
text-align: center;
border: 0px solid rgb(0, 255, 55);
}
.headitem3 {
flex-grow: 3;
flex-basis: 0;
display: flex;
padding: 0.5em;
align-items: center;
justify-content: flex-end;
border: 0px solid rgb(255, 0, 0);
}
.footitem1 {
flex-grow: 1;
flex-basis: 0;
text-align: center;
}
.footitem2 {
padding: 1em;
flex-grow: 2;
flex-basis: 0;
display: flex;
text-align: center;
align-items: center;
flex-direction: row;
}
.footbox1 {
flex-grow: 1;
text-align: center;
}
.footbox2 {
flex-grow: 0;
flex-shrink: 1;
text-align: center;
}
.footbox3 {
flex-grow: 1;
text-align: center;
}
.cursor {
cursor: pointer;
}
.nowrap {
white-space: nowrap;
}
.icon {
width: 3em;
margin: 0.5em;
border-radius: 0.6em;
box-shadow: 0 0 10px rgba(255, 166, 0, 0);
/* transition-property: box-shadow, scale; */
transition: transform 500ms ease-in-out;
}
.icon:hover {
box-shadow: 0 0 10px rgba(255, 255, 255, 0.507);
transform: scale(0.98) rotate(5deg);
/* transition-property: box-shadow, scale, rotate; */
transition: transform 500ms ease-in-out;
}
.folderItem {
margin-bottom: 0.2em;
list-style:circle;
color: red;
}
.icon::before {
font-family: "FontAwesomeSol900";
display: inline-block;
margin-right: 10px;
font-size: 1.2em;
-webkit-font-smoothing: antialiased;
}
.folder::before { content: "\f07b"; color: rgb(9, 119, 170);}
.file::before { content: "\f15b"; color: rgb(241, 241, 237);}
.back::before { content: "\f106"; }
.home::before { content: "\f102"; }
/* ---------------- messageSlider styles -------------*/
#messageSlider {
top: 0px;
left: 50%;
opacity: 0; /* animated */
display: flex;
min-width: 10%;
font-size: 1.7em !important;
position: absolute;
padding: 0.5em 2em;
align-items: center;
justify-content: center;
border-radius: 0 0 1em 1em;
transform: translateX('-100%');
color: rgba(255, 255, 255, 0.7);
}
.happyMsg {
background-color: rgba(20, 116, 68, 0.76);
box-shadow: rgba(0, 0, 0, 0.4) 0 2px 10px;
}
.infoMsg {
background-color: rgba(0, 0, 0, 0.4);
box-shadow: rgba(0, 0, 0, 0.4) 0 2px 10px;
}
.warnMsg {
background-color: rgba(143, 81, 0, 0.794);
box-shadow: rgba(0, 0, 0, 0.4) 0 2px 10px;
}
.errorMsg {
background-color: rgba(170, 5, 5, 0.89);
box-shadow: rgba(0, 0, 0, 0.4) 0 2px 10px;
}
/* ---------------- /messageSlider -------------*/
#folderinbox {
min-height: 30px;
display: grid;
border: 0px solid yellow;
}
#fileinbox {
min-height: 30px;
display: grid;
border: 0px solid yellow;
grid-template-columns: 1fr 1fr;
}
.fileitem {
height: 40vw;
align-items: center;
flex-direction:column;
border: 2px solid rgba(255, 255, 255, 0.137);
justify-content: flex-end;
background-color: rgba(0, 0, 0, 0.274);
background-position: center 40%;
background-size: contain;
background-repeat: no-repeat;
margin: 4px;
position: relative;
overflow-wrap: break-word;
transition: all 200ms ease-in-out;
box-shadow: 0 0 5px rgba(255, 255, 255, 0);
}
.fileitem:hover {
background-color: rgba(255, 255, 255, 0.219);
/* border: 2px solid white; */
cursor: pointer;
}
.filename {
bottom: 10px;
position: absolute;
width: 100%;
max-width: 100%;
display: block;
text-align: center;
padding: 0.4em;
font-size: 0.8em;
color: rgba(255, 255, 255, 0.719);
background-color: rgba(0, 0, 0, 0.452);
}
.navicon {
/* width: 3em; */
margin: 0.5em;
box-shadow: 0 0 10px rgba(255, 166, 0, 0);
/* transition-property: box-shadow, scale; */
transition: transform 500ms ease-in-out;
}
.navicon::before {
font-family: "FontAwesomeSol900";
display: inline-block;
margin-right: 10px;
font-size: 1.2em;
-webkit-font-smoothing: antialiased;
}
.folder::before { content: "\f07b"; color: rgb(9, 119, 170);}
.file::before { content: "\f15b"; color: rgb(241, 241, 237);}
.back::before { content: "\f106"; }
.home::before { content: "\f102"; }
.selectedImage {
/* box-shadow: 0 0 5px white; */
border: 2px solid white;
border-radius: 10%;
transform: scale(0.95);
transition: all 200ms ease-in-out;
}
image-item {
border: 2px solid transparent;
}
.disable {
cursor: not-allowed;
opacity: 0.3;
pointer-events: none;
}
#navipath {
background: rgba(0, 0, 0, 0.2);
font-size: 0.8em;
padding: 0.5em 1.0em;
color: rgba(255, 228, 155, 0.4);
}
social-item {
display: block;
border-radius: 0.5em;
background-color: rgba(255,255,255,0.1);
width: 100%;
padding: 0px;
margin-bottom: 10px;
overflow: hidden;
border: 2px solid transparent;
box-shadow: 0 0 5px 2px rgba(0,0,0,0.7);
}
social-item:hover {
/* box-shadow: 0 0 2px 2px rgba(250, 250, 250, 0.7); */
cursor: pointer;
/* border: 2px solid rgb(109, 108, 108); */
background-color: rgba(0, 0, 0, 0.089);
transition: background-color 0.3s;
}
.dragIcon {
border: 2px solid yellow;
mask-image: unset;
}
.social-item-content-table {
border-spacing: 0px;
border-collapse: separate;
width: 100%;
padding: 0px;
margin: 0px;
}
.social-item-content-table td {
padding: 0;
border-collapse: separate;
border-spacing: 0;
}
.serviceicon {
background-color: rgba(16, 104, 35, 0.575); /* default bg color */
background-position: 50% 3px;
background-repeat: no-repeat;
width: 40px;
padding: 0px;
margin: 0;
}
.facebook_post { background-color: rgb(17, 91, 209); }
.instagram { background-color: rgb(106, 21, 218); }
.tweet { background-color: rgb(15, 35, 151); }
.rss { background-color: rgb(167, 81, 32); }
.video { background-color: rgb(151, 15, 15); }
.brd {
border: 2px solid orange;
}
.uIcon {
margin-left: 0.2em;
width: 2em;
height: 2em;
border-radius: 25%;
}
.uName {
font-size: 0.9em;
font-weight: bold;
}
.uHndl {
font-size: 0.9em;
}
.uuid {
display: none;
}
.postTimeTD {
text-align: center;
font-size: 0.9em;
color: rgba(255,255,255,0.5)
}
.userIconCell {
width: 2vw;
}
.thumb {
width: 10vw !important;
margin: 0.4vw;
}
.thumbTD {
width: 10vw !important;
margin: 0.4vw;
/* background-color: saddlebrown; */
}
.postmessageTD {
vertical-align: top;
font-size: 1.0em;
padding: 0.9em !important;
}
.pad {
padding: 0.3em !important;
}
.topbrd {
border-top: 1px solid rgba(0,0,0,0.5);
}
.focused {
border: 2px solid rgb(255, 145, 0);
box-shadow: 0 0 5px 2px rgba(230, 156, 20, 0.7);
}
+103
View File
@@ -0,0 +1,103 @@
html, body {
box-sizing: border-box;
height: 100%;
margin: 0;
overflow: hidden;
background-color: #414C5A;
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
font-size: 1.5vw;
}
*, *:before, *:after {
box-sizing: inherit;
margin: 0;
padding: 0;
}
.wrapper {
height: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
}
.header{
height: 100px;
}
.footer {
height: 60px;
}
.content {
flex: 1;
overflow: auto;
}
.left {
width: 60%;
height: 100%;
float: left;
overflow: auto;
}
.right {
margin-left: 60%;
height: 100%;
overflow: auto;
}
.pM
{
padding: 10px;
}
.item
{
width: 100%;
height: 100px;
margin-bottom: 10px;
background-color: black;
}
.itemlist
{
background-color: #2A3641;
}
td
{
vertical-align: middle;
}
/* .statusbar
{
font-family: Arial, Helvetica, sans-serif;
font-size: 70%;
padding: 3px 12px;
color: #aaaaaa;
} */
.scroller::-webkit-scrollbar-track
{
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.0);
border-radius: 0px;
background-color: #414C5A;
}
.scroller::-webkit-scrollbar
{
width: 14px;
background-color: #414C5A;
}
.scroller::-webkit-scrollbar-thumb
{
border-radius: 10px;
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.0);
background-color: #677180;
}
+24
View File
@@ -0,0 +1,24 @@
/* @font-face {
font-family: "Yle-Black";
src: url("/fonts/Yle-Black.ttf");
}
@font-face {
font-family: "Yle-Medium";
src: url("/fonts/Yle-Medium.ttf");
}
@font-face {
font-family: "Yle-Regular";
src: url("/fonts/Yle-Regular.ttf");
} */
@font-face { font-family: "UI-Light"; src: url("/fonts/EncodeSansSemiExpanded-Light.ttf"); }
@font-face { font-family: "UI-Regular"; src: url("/fonts/EncodeSansSemiExpanded-Regular.ttf"); }
@font-face { font-family: "UI-Bold"; src: url("/fonts/EncodeSansSemiExpanded-Bold.ttf"); }
@font-face { font-family: "UI-Black"; src: url("/fonts/EncodeSansSemiExpanded-Black.ttf"); }
@font-face { font-family: "FontAwesomeReg400"; src: url("/fonts/fa-regular-400.ttf"); }
@font-face { font-family: "FontAwesomeSol900"; src: url("/fonts/fa-solid-900.ttf"); }
+465
View File
@@ -0,0 +1,465 @@
/*
Copyright 2020 SPX Graphics
CSS file for form items. Loaded after spx_layout.css
*/
::placeholder {
color: #555;
opacity: 1;
}
.cfg::placeholder {
color: rgba(255, 255, 255, 0.6);
/* font-family: Arial, Helvetica, sans-serif; */
opacity: 0.4;
}
.spxformtext {
font-family: Arial, Helvetica, sans-serif;
font-size: 1em;
}
.disabled_btn {
opacity: 0.2;
}
.cfg {
font-family: "UI-Light", Arial, Helvetica, sans-serif;
height: 2.4em;
font-size: 0.8em;
color: white;
border: 2px solid transparent;
margin-left: 0.1em;
margin-right: 0.1em;
text-shadow: rgb(0, 0, 0, 0.4) 0 0px 8px;
box-shadow: rgb(0, 0, 0, 0.4) 0 3px 8px;
padding-inline-start: 5px;
}
.addbtn {
font-size: 1.2em;
color: white;
border: 2px solid transparent;
text-transform: uppercase;
font-family: "UI-Bold", Arial, Helvetica, sans-serif;
text-shadow: rgb(0, 0, 0, 0.4) 0 0px 8px;
box-shadow: rgb(0, 0, 0, 0.4) 0 3px 8px;
padding-inline-start: 0.4em;
padding-inline-end: 0.4em;
margin-left: auto;
margin-right: auto;
cursor: pointer;
}
.addbtn:hover {
border: 2px solid rgba(255, 255, 255, 0.4);
}
.btn {
height: 2.4em;
font-size: 0.8em;
color: white;
border: 2px solid transparent;
text-transform: uppercase;
font-family: "UI-Bold", Arial, Helvetica, sans-serif;
text-shadow: rgb(0, 0, 0, 0.4) 0 0px 8px;
box-shadow: rgb(0, 0, 0, 0.4) 0 3px 8px;
user-select: none;
cursor: pointer;
padding: 0.4em 0;
margin-bottom: 0.1em;
white-space: nowrap;
overflow: hidden;
}
.btn:hover {
border-bottom: 2px solid rgba(255, 255, 255, 0.4);
}
.btn:focus{
outline: none;
}
.btnsmall {
font-size: 0.7em;
color: white;
border: 2px solid transparent;
margin-left: 1px;
margin-right: 1px;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
box-shadow: rgb(0, 0, 0, 0.4) 0 3px 8px;
text-transform: uppercase;
height: 150%;
padding: 0.3em 1em;
cursor: pointer;
}
.btnsmall:hover {
border-bottom: 2px solid rgba(255, 255, 255, 0.4);
}
.btnsmall:focus{
outline: none;
}
.colorbtnsmall {
position: absolute;
border: 1px solid rgba(0, 0, 0, 1);
margin: 4px;
height: 80%;
width: 50%;
cursor: pointer;
border-radius: 0.5em;
font-size: 1.0em;
color: rgba(200,200,200,0.8);
text-shadow: 1px 1px 1px black;
}
.colorbtnsmall:hover {
/* border: 2px solid rgba(255, 255, 255, 0.1); */
}
.colorbtnsmall:focus{
outline: none;
}
.drop {
height: 2.4em;
font-size: 0.8em;
color: white;
border: 2px solid transparent;
margin-left: 0.1em;
margin-right: 0.1em;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
text-shadow: rgb(0, 0, 0, 0.4) 0 0px 8px;
box-shadow: rgb(0, 0, 0, 0.4) 0 3px 8px;
}
.drop option:disabled {
color: rgba(255, 255, 255, 0.3);
}
.drop:hover {
border-bottom: 2px solid rgba(255, 255, 255, 0.4);
}
.floinput {
padding: 0.1em;
background-color: #706e83;
border: 0;
font-family: inherit;
font-size: 1em;
margin: 0px;
color: white;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
height: 100%;
box-sizing: border-box;
}
.gccheckcontainer {
display: block;
position: relative;
padding-left: 35px;
margin-top: 8px;
margin-bottom: 6px;
cursor: pointer;
user-select: none;
}
.gccheckboxdiv label{
font-size: 0.7em;
color: rgba(255, 255, 255, 0.7)
}
/* Hide the browser's default checkbox */
.gccheckcontainer input {
position: absolute;
opacity: 0;
cursor: pointer;
height: 0;
width: 0;
}
/* Create a custom checkbox */
.gccheckmark {
position: absolute;
top: 0;
left: 0;
height: 23px;
width: 23px;
background-color: rgb(163, 163, 163);
transform: none !important;
}
/* On mouse-over, add a grey background color */
.gccheckcontainer:hover input ~ .gccheckmark {
background-color: rgb(241, 236, 236);
}
/* When the checkbox is checked, add a blue background */
.gccheckcontainer input:checked ~ .gccheckmark {
background-color: #008000;
}
/* Create the checkmark/indicator (hidden when not checked) */
.gccheckmark:after {
content: "";
position: absolute;
display: none;
}
/* Show the checkmark when checked */
.gccheckcontainer input:checked ~ .gccheckmark:after {
display: block;
}
/* Style the checkmark/indicator */
.gccheckcontainer .gccheckmark:after {
left: 9px;
top: 5px;
width: 5px;
height: 10px;
border: solid white;
border-width: 0 3px 3px 0;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.gcinput{
width: 100%;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
font-size:1em;
margin: 1px;
margin-top: 5px; /*5px */
line-height: 132%;
padding-left: 0.2em;
user-select: auto;
}
.gcinput::placeholder {
color: rgb(156, 156, 156);
font-family: Arial, Helvetica, sans-serif;
font-style: italic;
font-size: 0.9em;
letter-spacing: 1px;
}
.gcinputFilter{
width: 100%;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
font-size:1em;
margin: 1px;
margin-top: 5px;
line-height: 132%;
padding-left: 0.2em;
user-select: auto;
}
.gcinputFilter:focus {
outline: none;
}
.gcinputFilter::placeholder {
color: rgba(255, 255, 255, 0.13);
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
font-size: 0.8em;
letter-spacing: 0px;
transform: translateY(-10%);
}
/* .select {
border-radius: 0.10em;
padding: 0.1em 0.2em;
font-size: 1.0rem;
line-height: 1.1;
background-color: rgb(230, 230, 230);
} */
.select {
/* -webkit-appearance: none;
-moz-appearance: none; */
/* background: transparent; */
/* background-image: url("data:image/svg+xml,<svg width='36' height='18' xmlns='http://www.w3.org/2000/svg'><path d='m0,6l12,12l12,-12l-24,0z'/><path fill='none' d='m0,0l24,0l0,24l-24,0l0,-24z'/></svg>");
background-repeat: no-repeat;
background-position-x: 98%;
background-position-y: 50%; */
/* border: 1px solid #cdf1ff; */
background-color: #ececec;
box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.7);
border-radius: 0.2rem;
margin-right: 2rem;
padding: 0.2rem;
padding-right: 2rem;
border-right: 10px solid #2768dab9;
}
.tablineinput {
font-family: "UI-Black", Arial, Helvetica, sans-serif;
margin: 0px;
border: 0;
font-size: 1.2em; /* <-------------------------- HEADLINE SIZE IN UI*/
background-color: brown;
color: white;
display: inline-block;
padding: 0.1em;
padding-left: 0.4em;
padding-right: 0.2em;
}
.headlineinput {
font-family: "UI-Black", Arial, Helvetica, sans-serif;
margin: 0px;
background-color: white;
color: black;
padding-left: 0.2em;
border: 0;
font-size: 2.4em; /* <-------------------------- HEADLINE SIZE IN UI*/
}
.tickerinput {
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
padding-left: 0.2em;
background-color: #222;
margin: 0px;
border: 0;
color: white;
font-size: 1.35em; /* <-------------------------- HEADLINE SIZE IN UI*/
}
.imsinput {
flex: auto;
flex-basis: 290px;
padding: 0.1em;
background-color: #706e83;
border: 0;
font-family: inherit;
font-size: 0.9em; /* Changed 15.04.2020 - was 1.em */
margin: 0px;
color: white;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
height: 100%;
box-sizing: border-box;
height: 1.83em; /* Added 15.04.2020 */
}
.inlineInput {
padding: 0.1em;
background-color: inherit;
border: 0;
font-family: inherit;
font-size: 1em;
margin: 0px;
color: white;
font-family: "UI-Regular", Arial, Helvetica, sans-serif;
height: 100%;
/* width: 100%; */
box-sizing: border-box;
}
.spxRoundedButton {
margin: 10px;
font-size: 60%;
padding: 0 2em;
border-radius: 1em;
}
/* Ripple effect */
.ripple {
background-position: center;
transition: background 0.2s;
}
.ripple:hover {
/* background: #47a7f5 radial-gradient(circle, transparent 1%, #47a7f5 1%) center/15000%; */
}
.ripple:active {
background-color: #ffffff;
background-size: 100%;
transition: background 0s;
}
.generalSettingDropdown:disabled {
color: rgba(255,255,255,0.6);
}
/* The radiocontainer */
.radiocontainer {
display: block;
position: relative;
padding-left: 1.8em;
margin-bottom: 0.5em;
cursor: pointer;
font-size: 1.2em;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* Hide the browser's default radio button */
.radiocontainer input {
position: absolute;
opacity: 0;
cursor: pointer;
}
/* Create a custom radio button */
.checkmark {
position: absolute;
top: -0.2em;
left: 0;
height: 1.3em;
width: 1.3em;
background-color: #eee;
border-radius: 50%;
}
/* On mouse-over, add a grey background color */
.radiocontainer:hover input ~ .checkmark {
background-color: rgb(146, 179, 155);
}
/* When the radio button is checked, add a blue background */
.radiocontainer input:checked ~ .checkmark {
background-color: #54af3c;
}
/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
content: "";
position: absolute;
display: none;
}
/* Show the indicator (dot/circle) when checked */
.radiocontainer input:checked ~ .checkmark:after {
display: block;
}
/* Style the indicator (dot/circle) */
.radiocontainer .checkmark:after {
top: 0.4em;
left: 0.4em;
width: 0.5em;
height: 0.5em;
border-radius: 50%;
background: rgb(255, 255, 255);
}
.toggleON {
/* used for buttons to mimic toggle functionality */
transform: translateY(1px);
text-shadow:0px 0px 10px rgba(128, 255, 0, 0.8);
box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.5),
inset 0 -4px 10px rgba(0, 0, 0, 0.3);
}
.selectAll {
font-size: 2em;
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+461
View File
@@ -0,0 +1,461 @@
/*
Copyright 2020 SPX Graphics
*/
/* TABS in import template dialog */
/* Style the tab */
:root {
--tabButtonBorderColor: #afb5ba;
--backgroundColor: #2d333b;
}
.promoBoxCols {
display: flex;
flex-direction: row;
gap: 1.5em;
}
.promoLeft {
flex-basis: 60%;
position: relative;
font-family: 'UI-Light' !important;
font-size: 0.7em;
}
.promoBoxHead {
font-size: 1.5em;
margin-bottom: 0.7em;
}
.promoLeft p {
margin-top: 0.5em;
opacity: 0.7;
}
.promoLeft a {
color: orange;
text-decoration: none;
}
.promoLeft a:hover {
color: white;
}
.promoLeft h2 {
font-size: 1.4em;
margin-top: 2.0em;
margin-bottom: 0.5em;
text-transform: none;
color: white;
width: 100%;
font-weight: normal;
letter-spacing: normal;
border-bottom: 1px solid rgba(255, 255, 255, 0.242);
}
.promoLeft li {
list-style: square;
color: inherit;
opacity: inherit;
}
.promoRight {
font-size: 0.8em;
flex-basis: 40%;
position: relative;
}
.promoRight img {
width: 80%;
height: auto;
}
.tabButtonRow {
width: 100%;
display: flex;
gap: 0.6em;
font-size: 0.8em;
padding: 1.5em 0.3em 0 0.3em;
flex-shrink: 0;
border-bottom: 1px solid var(--tabButtonBorderColor);
}
.tabButtonRow > div {
flex-grow: 1;
display: flex;
justify-content: flex-end;
align-items: center;
}
/* Style the buttons that are used to open the tab content */
.tabButtonRow button {
background-color: inherit;
float: left;
border: none;
outline: none;
cursor: pointer;
padding: 0.4em 1.0em;
transition: 0.1s;
font-family: inherit;
border-radius: 0.3em 0.3em 0 0;
position: relative;
transform: translateY(1px);
z-index: 10;
margin-right: 0.4em;
color: rgba(255, 255, 255, 0.385);
border: 0px solid var(--tabButtonBorderColor);
border-width: 1px 1px 0px 1px;
}
/* Change background color of buttons on hover */
.tabButtonRow button:hover {
background-color: rgba(194, 194, 194, 0.426);
color: black;
}
/* Create an active/current tablink class */
.tabButtonRow button.active {
background-color: #ccc;
}
.tabSelected {
background-color: #b1b6bc !important;
color: rgb(32, 32, 32) !important;
border-radius: 0.3em 0.3em 0 0;
}
/* Style the tab content */
.tabcontent {
display: none;
padding: 0.5em;
border: 0px solid #ccc;
border-top: none;
}
#tab1,
#tab2,
#tab3,
#tab4 {
padding: 0.5em;
display: flex;
flex-direction: column;
border: 0px solid blue;
height: 100%;
overflow: auto;
/* background-color: var(--backgroundColor); */
}
#tab2,
#tab3,
#tab4 {
padding: 1.5em;
}
.dialogHeaderBar {
display: flex;
flex-direction: row;
align-items: center;
position: relative;
padding: 0.2em 0.5em;
font-size: 0.8em;
background-color: rgba(255,255,255,0.2);
color: white;
border-bottom: 1px solid #3c3c3c;
}
.dialogHeaderBarClose {
display: flex;
flex-grow: 1;
justify-content: flex-end;
}
.dialogCloseButton {
cursor: pointer;
font-size: 1.5em;
}
.dialogCloseButton:hover {
color: rgba(0, 0, 0, 0.5);
}
.addTemplateItem{
background-color: rgba(255,255,255,0.05);
width:100%;
padding:10px;
margin-bottom:15px;
box-shadow: rgba(0, 0, 0, 0.7) 0px 0px 10px;
}
.addTemplateItem:hover{
background-color: rgba(255,255,255,0.2);
cursor: pointer;
}
.templateName{
text-transform: uppercase;
}
.templateDesc{
font-size: 75%;
opacity: 0.6;
}
.collapsible {
box-sizing: border-box;
color: white;
cursor: pointer;
padding: 12px;
width: 100%;
border-top: 0px;
border-right: 0px;
border-bottom: 1px solid black;
text-align: left;
outline: none;
font-size: 1rem;
text-transform: uppercase;
}
.collapsible::before{
content: "\25B6";
color: white;
display: inline-block;
margin-right: 12px;
transform: rotate(0deg) scale(0.7);
transition: transform 0.3s ease-in-out;
}
.globalCollapsible
{
font-size: 0.7rem;
}
.active, .collapsible:hover {
background-color: #375ea3;
}
.active::before{
content: "\25B6";
color: white;
display: inline-block;
margin-right: 12px;
transform: rotate(90deg) scale(1.0);
transition: transform 0.3s ease-in-out;
}
.collapsiblecontent {
box-sizing: border-box;
padding: 0px 10px;
max-height: 0;
overflow: hidden;
transition: max-height 0.3s ease-in-out;
font-size: 1rem;
background-color: rgba(0,0,0,0.1);
}
.configGeneralContent {
box-sizing: border-box;
padding: 0px 10px;
overflow: hidden;
transition: max-height 0.3s ease-in-out;
font-size: 1rem;
background-color: rgba(0,0,0,0.1);
}
/* Remove default bullets */
ul, #myUL {
list-style-type: none;
}
/* Remove margins and padding from the parent ul */
#myUL {
margin: 0;
padding: 0;
}
/* Style the caret/arrow */
.caret {
cursor: pointer;
user-select: none; /* Prevent text selection */
}
/* Create the caret/arrow with a unicode, and style it */
.caret::before {
content: "\25B6";
color: black;
display: inline-block;
margin-right: 6px;
}
/* Rotate the caret/arrow icon when clicked on (using JavaScript) */
.caret-down::before {
transform: rotate(90deg);
}
/* Hide the nested list */
.nested {
display: none;
}
/* Show the nested list when the user clicks on the caret/arrow (with JavaScript) */
.opened {
display: block;
}
.overlay {
position: fixed;
display: none;
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(65, 76, 90, 0.9);
z-index: 900;
}
.modal {
width: 60%;
height: 90%;
position: absolute;
left: 55%;
top: 50%;
transform: translate(-50%, -50%);
z-index: 20;
padding: 0.3em;
background-color: #414C5A;
color: white;
box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 20px;
}
.icon::before {
font-family: "FontAwesomeSol900";
display: inline-block;
margin-right: 10px;
font-size: 1.2em;
-webkit-font-smoothing: antialiased;
}
.folder::before { content: "\f07b"; color: rgb(9, 119, 170);}
.file::before { content: "\f15b"; color: rgb(241, 241, 237);}
.back::before { content: "\f106"; }
.home::before { content: "\f102"; }
.height1{
height: 1em;
}
.height2{
height: 2em;
}
.height3{
height: 3em;
}
.height4{
height: 4em;
}
.modal_top{
flex-shrink: 0;
border: 0px solid pink;
border-bottom: 1px dashed rgba(51, 150, 216, 0.445);
}
.modal_top SPAN{
transform: translateY(-50%);
font-size: 0.8em;
margin-left: 1em;
}
.modal_bottom{
gap: 0.5em;
width: 100%;
flex-grow: 0;
display: flex;
height: 2.5em;
flex-shrink: 0;
padding-top: 0.3em;
flex-direction: row;
align-items: center;
justify-content: flex-start;
border: 0px solid pink;
}
.browserMessage {
top: 0;
position: relative;
font-size: 0.6em;
color: rgba(255, 255, 255, 0.5);
margin-left: 0.1em;
user-select: none;
display: flex;
align-items: center;
justify-content: flex-start;
border: 0px dotted pink;
height: 100%;
}
.modal_bottom > div > button {
border: 0px dotted white;
padding: 0.3em 1em;
margin-right: 0.2em;
}
.KBHelptable{
border-collapse:collapse;
}
.KBHelptable td{
padding:10px;
border:#4e95f4 0px solid;
}
.KBHelptable th{
background: rgba(0,0,0,0.5);
text-align: left;
padding: 7px;
}
.KBHelptable tr:nth-child(odd){
background: rgba(0,0,0,0.1);
}
/* Define the background color for all the EVEN background rows */
.KBHelptable tr:nth-child(even){
background: rgba(255,255,255,0.1);
}
.storeIcon {
height: 100%;
opacity: 0.6;
min-width: 8%;
background-size: contain;
border: 0px solid white;
background-position: 5% 50%;
background-repeat: no-repeat;
transition: opacity 0.3s ease-in-out;
background-image: url('/img/storeicon.png');
}
.storeIcon:hover {
opacity: 1;
cursor: pointer;
transition: opacity 0.3s ease-in-out;
}
+67
View File
@@ -0,0 +1,67 @@
html,
body {
margin: 0;
padding: 0;
width: 100vw;
height: 100vh;
display: flex;
color: white;
overflow: hidden;
align-items: center;
flex-direction: column;
justify-content: center;
font-family: 'UI-Regular';
background-color: rgb(0,0,0);
}
*, *:before, *:after {
box-sizing: inherit;
margin: 0;
padding: 0;
user-select: none;
}
.renderer {
background-image: url('/img/checker60.png'); /* bgimage for local preview */
background-size: 10vw;
transform-origin: top left;
border: 0px;
outline: 0px;
padding: 0;
margin: 0;
}
#toolbar {
flex-grow: 0;
width: 100%;
display: flex;
align-items: left;
flex-direction: row;
align-self: flex-start;
border: 1px solid yellow;
}
.watermark {
top: 0;
left: 0;
top: 50%;
left: 50%;
opacity: 1; /* WATERMARK if 1 = visible, 0 = invisible */
width: 50vw;
z-index:100;
height: 50vw;
position: absolute;
background-size: contain;
border: 0px solid yellow;
background-position: center;
background-repeat: no-repeat;
transform: translate(-50%, -50%);
}
.prev {
background-image: url("/img/spx_preview.png");
}
.prog {
background-image: url("/img/spx_program.png");
}
+84
View File
@@ -0,0 +1,84 @@
:root {
/* Define a variable for the margin of the overlay, ~70px at 1080p */
--margin: 3.65vmax;
}
.main {
position: absolute;
top: calc(12 * var(--margin));
left: var(--margin);
width: calc(100vw - 2 * var(--margin) - 12vw);
opacity: 0;
}
.f1_bg {
background: var(--main-color);
display: table;
position: relative;
padding: 0.2em 0.4em;
}
.f1_text {
color: var(--white-color);
font-family: 'UI-Black';
font-size: 0.8rem;
line-height: 1;
width: 100%;
}
.f2_bg {
background: var(--white-color);
display: table;
position: relative;
padding: 0.1em 0.4em 0em;
width: 100%;
}
.f2_text {
color: var(--black-color);
font-family: 'UI-Black';
font-size: 1.45rem;
line-height: 1.25;
overflow: hidden;
white-space: nowrap;
letter-spacing: -0.05rem;
}
.f3_bg {
z-index: 2;
background: #252525;
float: left;
position: relative;
padding: 0.1em 0.4em;
}
.f3_text {
color: var(--white-color);
font-family: 'UI-Regular';
font-size: 0.9rem;
line-height: 1.25;
}
.ticker_bg {
z-index: -1;
background: var(--dark-color);
width: 100%;
padding-left: 0.5em;
padding-right: 0.5em;
}
.ticker {
z-index: 1;
}
.webTicker {
color: var(--white-color);
float: left;
position: relative;
}
.webTicker li {
font-size: 1rem;
line-height: 1.2;
font-family: 'UI-Regular';
}
+152
View File
@@ -0,0 +1,152 @@
/*
Rec toggle switch and
volume sliders
*/
:root {
--vc-off-color: #2A3641; /* linear-gradient(190deg, rgba(0, 0, 0, 0.39) 5%, rgba(0, 0, 0, 0.157) 50%); */
--vc-on-color: #2A3641;
--vc-animation-speed: 0.2s ease-out;
--vc-font-family: "UI-Regular";
--vc-font-size: 1.2em;
--vc-font-weight: unset;
--vc-on-font-color: rgba(255, 255, 255, 1.0);
--vc-off-font-color: rgb(255, 255, 255);
--vc-label-position-off: 14px;
--vc-label-position-on: 14px;
--vc-height: 1.3em; /* 2.0em*/
--vc-width: 100%;
--vc-handle-width: 60%;
--vc-handle-height: 90%;
--vc-box-border-radius: 0px;
--vc-handle-border-radius: 0px;
--vc-handle-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
--vc-handle-color: #485a6b; /* rgb(61, 61, 61); */
--vc-onclick-width: 80%;
--vc-handle-top: 0.1em; /* 0.2 */
--vc-handle-fontsize: 0.7em; /* 0.8 */
--vc-handle-lineHeight: 1.7em; /* 2.2 */
}
.toggle-container * {
font-family: var(--vc-font-family);
transition: var(--vc-animation-speed);
cursor: pointer;
/* background: darkgreen; */
}
.vc-switch {
width: var(--vc-width);
height: var(--vc-height);
margin-top: 5px;
}
.toggle-container label {
position: relative;
display: inline-block;
vertical-align: top;
border-radius: var(--vc-box-border-radius);
/* cursor: pointer; */
}
.vc-switch-input {
position: absolute;
transform: translate3d(5px, 5px, 0);
opacity: 0;
}
.vc-switch-label {
position: relative;
display: block;
height: inherit;
font-size: var(--vc-font-size);
font-weight: var(--vc-font-weight);
background: var(--vc-off-color);
border-radius: inherit;
}
.vc-switch-label:before,
.vc-switch-label:after {
position: absolute;
top: 50%;
margin-top: -0.5em;
line-height: 1.1;
}
.vc-switch-label:before {
content: attr(data-off);
color: var(--vc-on-font-color);
}
.vc-switch-label:after {
content: attr(data-on);
color: var(--vc-off-font-color);
opacity: 0;
}
.vc-switch-label:before {
right: var(--vc-label-position-off);
top: 16px;
}
.vc-switch-label:after {
left: var(--vc-label-position-on);;
}
.vc-switch-input:checked ~ .vc-switch-label {
background: var(--vc-on-color);
text-shadow: 0px 0px 6px rgba(255, 255, 255, 0.6);
}
.vc-switch-input:checked ~ .vc-switch-label:before {
opacity: 0;
}
.vc-switch-input:checked ~ .vc-switch-label:after {
opacity: 1;
}
.vc-handle {
left: 2px;
font-size: var(--vc-handle-fontsize);
position: absolute !important;
top: var(--vc-handle-top);
background: var(--vc-handle-color);
border-radius: var(--vc-handle-border-radius);
box-shadow: var(--vc-handle-shadow);
width: var(--vc-handle-width);
height: var(--vc-handle-height);
line-height: var(--vc-handle-lineHeight);
}
.vc-handle:before {
content: "";
top: 50%;
left: 50%;
position: absolute !important;
margin: -6px 0 0 -6px;
width: 12px;
height: 12px;
border-radius: 6px;
}
.vc-switch-label:active ~ .vc-handle, .vc-handle:active {
width: var(--vc-onclick-width);
}
.vc-switch-input:checked ~ .vc-handle {
left: unset;
right: 2px;
color: var(--vc-on-font-color);
text-shadow: 0 0 6px var(--vc-on-font-color),
0 4px 8px green,
0 0px 12px rgb(20, 209, 20);
}
+123
View File
@@ -0,0 +1,123 @@
.can-toggle {
position: relative;
border: 1px solid yellow;
padding: 0;
}
.can-toggle *, .can-toggle *:before, .can-toggle *:after {
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.can-toggle input[type="checkbox"] {
top: 0;
left: 0;
opacity: 0;
position: absolute;
}
.can-toggle input[type="checkbox"][disabled] ~ label {
pointer-events: none;
}
.can-toggle input[type="checkbox"][disabled] ~ label .can-toggle__switch {
opacity: 0.4;
}
.can-toggle input[type="checkbox"]:checked ~ label .can-toggle__switch:before {
left: 0;
content: attr(data-unchecked);
}
.can-toggle input[type="checkbox"]:checked ~ label .can-toggle__switch:after {
content: attr(data-checked);
}
.can-toggle label {
display: flex;
user-select: none;
position: relative;
align-items: center;
}
.can-toggle label .can-toggle__label-text {
/* not visible */
flex: 1;
padding-left: 32px;
}
.can-toggle label .can-toggle__switch {
position: relative;
}
.can-toggle label .can-toggle__switch:before {
top: 0px;
text-align: center;
position: absolute;
content: attr(data-checked);
text-transform: uppercase;
background-color: blue;
}
.can-toggle label .can-toggle__switch:after {
z-index: 5;
text-align: center;
position: absolute;
background: #485a6b;
text-transform: uppercase;
content: attr(data-unchecked);
transform: translate3d(0, 0, 0);
}
.can-toggle label .can-toggle__label-text {
flex: 1;
}
.can-toggle label .can-toggle__switch {
transition: background-color 0.3s cubic-bezier(0, 1, 0.5, 1);
background: rgba(0, 0, 0, 0.5); /* bg color */
}
.can-toggle label .can-toggle__switch:before {
color: rgb(160, 160, 160); /* text color on the back */
}
.can-toggle label .can-toggle__switch:after {
transition: transform 0.3s cubic-bezier(0, 1, 0.5, 1);
color: rgb(255, 255, 255); /* text color on the sliding button */
}
.can-toggle input[type="checkbox"]:focus ~ label .can-toggle__switch:after, .can-toggle input[type="checkbox"]:hover ~ label .can-toggle__switch:after {
box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}
.can-toggle input[type="checkbox"]:checked ~ label .can-toggle__switch:after {
transform: translate3d(80px, 0, 0); /*65px*/
/*margin-left: 80px; */
}
/*
.can-toggle input[type="checkbox"]:checked:focus ~ label .can-toggle__switch:after, .can-toggle input[type="checkbox"]:checked:hover ~ label .can-toggle__switch:after {
box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}
*/
.can-toggle label {
/* font-size: 14px; */
}
.can-toggle label .can-toggle__switch {
flex: 1 0;
/* background-color: hotpink; */
/*height: 4em; 36px; */
border-radius: 4px;
}
.can-toggle label .can-toggle__switch:before {
/* non-active one */
left: max(67px, 50%); /*67px*/
font-size: 0.7em; /*12px;*/
line-height: 1;
width: max(67px, 50%); /* 67px; */
/* background-color: red; */
padding: 0 0.2em; /*12px*/
}
.can-toggle label .can-toggle__switch:after {
/* active one */
top: 0px;
left: 0px;
border-radius: 2px;
width: max(67px, 50%); /* 67px; */
line-height: 1;
font-size: 0.7em; /*12px;*/
/* background-color: greenyellow; */
}
.can-toggle label .can-toggle__switch:hover:after {
box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}
+111
View File
@@ -0,0 +1,111 @@
/* simple tree */
body{
font-family: Arial, Helvetica, sans-serif;
}
.simple-tree {
user-select: none;
-moz-user-select: none;
}
.simple-tree>details>summary {
display: none;
}
.simple-tree a,
.simple-tree summary {
display: block;
width: fit-content;
width: -moz-fit-content;
border: solid 1px transparent;
padding: 0 2px;
outline: none;
cursor: pointer;
}
.simple-tree a {
text-decoration: none;
color: inherit;
}
.simple-tree ::-webkit-details-marker {
display: none;
}
.simple-tree summary {
list-style-type: none;
background-color: #eee;
outline: none;
}
.simple-tree.dark summary {
background-color: #444;
}
.simple-tree details>:not(details),
.simple-tree details {
position: relative;
}
.simple-tree details :not(summary) {
margin-left: 20px;
}
.simple-tree.nodots details :not(summary) {
margin-left: 12px;
}
.simple-tree details::before,
.simple-tree details>:not(details)::before {
content: '';
width: 10px;
display: block;
position: absolute;
}
.simple-tree details::before,
.simple-tree details>:not(details)::before {
background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 2 2" xmlns="http://www.w3.org/2000/svg"><g><rect x="0" y="0" width="1" height="1"/></g></svg>') left top / 2px 2px;
}
.simple-tree.dark details::before,
.simple-tree.dark details>:not(summary)::before {
background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 2 2" xmlns="http://www.w3.org/2000/svg"><g><rect x="0" y="0" width="1" height="1" fill="white"/></g></svg>');
}
.simple-tree.nodots details::before,
.simple-tree.nodots details>:not(summary)::before {
background-image: none;
}
.simple-tree details::before {
top: 0;
height: 100%;
background-repeat: repeat-y;
left: 5px;
z-index: -1;
}
.simple-tree details>:not(details)::before {
top: 8px;
height: calc(100% - 8px);
background-repeat: repeat-x;
left: -15px;
}
.simple-tree details>summary::before {
background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg"><g><rect x="0" y="0" width="12" height="12" fill="white" stroke="gray" stroke-width="1"/><line x1="3" y1="6" x2="9" y2="6" stroke="black" stroke-width="2"/><line x1="6" y1="3" x2="6" y2="9" stroke="black" stroke-width="2"/></g></svg>') center center / 12px 12px no-repeat;
left: -22px;
top: 2px;
width: 16px;
height: 16px;
}
.simple-tree details[open]>summary::before {
background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg"><title/><g><rect x="0" y="0" width="12" height="12" fill="white" stroke="gray" stroke-width="1"/><line x1="3" y1="6" x2="9" y2="6" stroke="black" stroke-width="2"/></g></svg>');
}
/* async tree */
.async-tree details[open][data-loaded=false] {
pointer-events: none;
}
.async-tree details[open][data-loaded=false]>summary::before {
background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg"><g><animateTransform attributeName="transform" type="rotate" from="0 32 32" to="360 32 32" dur="1s" repeatCount="indefinite"/><circle cx="32" cy="32" r="32" fill="whitesmoke"/><path d="M 62 32 A 30 30 0 0 0 32 2" style="stroke: black; stroke-width:6; fill:none;"/></g></svg>');
}
.async-tree.black details[open][data-loaded=false]>summary::before {
background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg"><g><animateTransform attributeName="transform" type="rotate" from="0 32 32" to="360 32 32" dur="1s" repeatCount="indefinite"/><circle cx="32" cy="32" r="32" fill="whitesmoke"/><path d="M 62 32 A 30 30 0 0 0 32 2" style="stroke: white; stroke-width:6; fill:none;"/></g></svg>');
}
/* select tree */
.select-tree .selected {
background-color: #beebff;
border-color: #99defd;
z-index: 1;
}
.select-tree.dark .selected {
background-color: #3a484e;
border-color: #99defd;
}
+28
View File
@@ -0,0 +1,28 @@
:root {
--tooltipbg: rgba(0, 0, 0, 0.7);
}
.b-tooltip {
font-size: 0.6em;
padding: 0.3em;
border-radius: 0.2em;
color: rgba(255, 255, 255, 0.6);
text-align: center;
position: absolute;
background: var(--tooltipbg);
display: inline-block;
opacity: 1;
}
.b-tooltip:after {
content: " ";
position: absolute;
left: -10px;
top: 4px;
border-top: 10px solid transparent;
border-right: 10px solid var(--tooltipbg);
border-left: none;
border-bottom: 10px solid transparent;
}
+1
View File
@@ -0,0 +1 @@
.picker_wrapper.no_alpha .picker_alpha{display:none}.picker_wrapper.no_editor .picker_editor{position:absolute;z-index:-1;opacity:0}.picker_wrapper.no_cancel .picker_cancel{display:none}.layout_default.picker_wrapper{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:stretch;font-size:10px;width:25em;padding:.5em}.layout_default.picker_wrapper input,.layout_default.picker_wrapper button{font-size:1rem}.layout_default.picker_wrapper>*{margin:.5em}.layout_default.picker_wrapper::before{content:"";display:block;width:100%;height:0;order:1}.layout_default .picker_slider,.layout_default .picker_selector{padding:1em}.layout_default .picker_hue{width:100%}.layout_default .picker_sl{flex:1 1 auto}.layout_default .picker_sl::before{content:"";display:block;padding-bottom:100%}.layout_default .picker_editor{order:1;width:6.5rem}.layout_default .picker_editor input{width:100%;height:100%}.layout_default .picker_sample{order:1;flex:1 1 auto}.layout_default .picker_done,.layout_default .picker_cancel{order:1}.picker_wrapper{box-sizing:border-box;background:#f2f2f2;box-shadow:0 0 0 1px silver;cursor:default;font-family:sans-serif;color:#444;pointer-events:auto}.picker_wrapper:focus{outline:none}.picker_wrapper button,.picker_wrapper input{box-sizing:border-box;border:none;box-shadow:0 0 0 1px silver;outline:none}.picker_wrapper button:focus,.picker_wrapper button:active,.picker_wrapper input:focus,.picker_wrapper input:active{box-shadow:0 0 2px 1px #1e90ff}.picker_wrapper button{padding:.4em .6em;cursor:pointer;background-color:#f5f5f5;background-image:linear-gradient(0deg, gainsboro, transparent)}.picker_wrapper button:active{background-image:linear-gradient(0deg, transparent, gainsboro)}.picker_wrapper button:hover{background-color:#fff}.picker_selector{position:absolute;z-index:1;display:block;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);border:2px solid #fff;border-radius:100%;box-shadow:0 0 3px 1px #67b9ff;background:currentColor;cursor:pointer}.picker_slider .picker_selector{border-radius:2px}.picker_hue{position:relative;background-image:linear-gradient(90deg, red, yellow, lime, cyan, blue, magenta, red);box-shadow:0 0 0 1px silver}.picker_sl{position:relative;box-shadow:0 0 0 1px silver;background-image:linear-gradient(180deg, white, rgba(255, 255, 255, 0) 50%),linear-gradient(0deg, black, rgba(0, 0, 0, 0) 50%),linear-gradient(90deg, #808080, rgba(128, 128, 128, 0))}.picker_alpha,.picker_sample{position:relative;background:linear-gradient(45deg, lightgrey 25%, transparent 25%, transparent 75%, lightgrey 75%) 0 0/2em 2em,linear-gradient(45deg, lightgrey 25%, white 25%, white 75%, lightgrey 75%) 1em 1em/2em 2em;box-shadow:0 0 0 1px silver}.picker_alpha .picker_selector,.picker_sample .picker_selector{background:none}.picker_editor input{font-family:monospace;padding:.2em .4em}.picker_sample::before{content:"";position:absolute;display:block;width:100%;height:100%;background:currentColor}.picker_arrow{position:absolute;z-index:-1}.picker_wrapper.popup{position:absolute;z-index:2;margin:1.5em}.picker_wrapper.popup,.picker_wrapper.popup .picker_arrow::before,.picker_wrapper.popup .picker_arrow::after{background:#f2f2f2;box-shadow:0 0 10px 1px rgba(0,0,0,.4)}.picker_wrapper.popup .picker_arrow{width:3em;height:3em;margin:0}.picker_wrapper.popup .picker_arrow::before,.picker_wrapper.popup .picker_arrow::after{content:"";display:block;position:absolute;top:0;left:0;z-index:-99}.picker_wrapper.popup .picker_arrow::before{width:100%;height:100%;-webkit-transform:skew(45deg);transform:skew(45deg);-webkit-transform-origin:0 100%;transform-origin:0 100%}.picker_wrapper.popup .picker_arrow::after{width:150%;height:150%;box-shadow:none}.popup.popup_top{bottom:100%;left:0}.popup.popup_top .picker_arrow{bottom:0;left:0;-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.popup.popup_bottom{top:100%;left:0}.popup.popup_bottom .picker_arrow{top:0;left:0;-webkit-transform:rotate(90deg) scale(1, -1);transform:rotate(90deg) scale(1, -1)}.popup.popup_left{top:0;right:100%}.popup.popup_left .picker_arrow{top:0;right:0;-webkit-transform:scale(-1, 1);transform:scale(-1, 1)}.popup.popup_right{top:0;left:100%}.popup.popup_right .picker_arrow{top:0;left:0}
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+33
View File
@@ -0,0 +1,33 @@
<svg width="750" height="155" viewBox="0 0 750 155" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_404_131)">
<mask id="mask0_404_131" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="262" height="155">
<path d="M261.377 0.62207H0V154.105H261.377V0.62207Z" fill="white"/>
</mask>
<g mask="url(#mask0_404_131)">
<path d="M165.065 151.488C158.595 149.805 152.377 147.268 146.573 143.944C140.8 140.566 135.5 136.435 130.811 131.659C126.452 127.288 121.916 119.178 117.338 107.557C113.945 98.7745 111.026 89.8154 108.592 80.7186L152.928 78.8374C153.728 93.553 164.953 105.967 179.619 108.356L172.934 147.88L165.065 151.488L165.065 151.488Z" fill="#FBA554"/>
<path d="M184.841 154.226C178.158 154.195 171.508 153.274 165.065 151.489L176.753 107.754C179.396 108.435 182.114 108.779 184.843 108.777C189.357 108.781 193.822 107.831 197.946 105.99C202.07 104.149 205.761 101.459 208.78 98.0928L238.648 123.808L238.872 131.66C234.183 136.435 228.882 140.567 223.11 143.945C217.306 147.269 211.088 149.806 204.618 151.49C198.175 153.275 191.525 154.195 184.841 154.226Z" fill="#FAC353"/>
<path d="M238.87 131.659L207.117 99.8186C210.186 96.8918 212.629 93.3681 214.294 89.4628C215.96 85.5575 216.814 81.3527 216.803 77.1053C216.807 73.5848 216.217 70.089 215.06 66.7653L252.143 53.6099L258.645 57.6537C260.426 64.1135 261.344 70.7817 261.375 77.4836C261.344 84.1855 260.426 90.8536 258.645 97.3134C256.966 103.8 254.437 110.035 251.122 115.855C247.753 121.643 243.633 126.958 238.87 131.659Z" fill="#FEFE67"/>
<path d="M215.791 69.1685C214.233 63.3213 211.051 58.0376 206.617 53.9318C202.182 49.826 196.676 47.0667 190.739 45.9746L198.004 7.15284L204.618 3.47803C211.088 5.1621 217.305 7.69928 223.109 11.0232C228.882 14.4014 234.182 18.5325 238.871 23.3084C243.634 28.0103 247.754 33.3249 251.123 39.1133C254.438 44.9329 256.969 51.1678 258.648 57.6547L215.791 69.1685Z" fill="#D3EA5C"/>
<path d="M160.376 56.7315L130.665 31.531L130.813 23.3076C135.502 18.5317 140.802 14.4006 146.575 11.0224C152.379 7.69867 158.597 5.16166 165.066 3.47774C171.508 1.69273 178.158 0.772529 184.842 0.741211C191.526 0.772529 198.176 1.69273 204.618 3.47774L193.119 46.5087C190.418 45.7951 187.636 45.4346 184.843 45.4363C180.191 45.4269 175.594 46.4321 171.369 48.3824C167.144 50.3327 163.393 53.1812 160.376 56.7305V56.7315Z" fill="#71AE50"/>
<path d="M142.932 101.8L106.376 88.4171C107.768 84.81 108.48 80.9748 108.474 77.107C108.481 72.9502 107.662 68.8336 106.064 64.9979C104.466 61.1622 102.122 57.6843 99.168 54.7674L130.542 23.3081C135.305 28.01 139.425 33.3247 142.794 39.113C146.11 44.9329 148.641 51.1681 150.32 57.6555C152.1 64.1154 153.018 70.7835 153.049 77.4853C153.018 84.1872 152.1 90.8554 150.32 97.3152L142.934 101.801L142.932 101.8Z" fill="#FBA554"/>
<path d="M150.235 97.5691L107.195 86.0051C107.986 83.3192 108.414 80.5392 108.467 77.7393H152.464C153.352 78.6868 153.88 83.9295 150.235 97.5691Z" fill="#0391CE"/>
<path d="M22.4825 131.659C17.7194 126.958 13.5994 121.644 10.2305 115.857C6.91557 110.036 4.3854 103.801 2.7062 97.3136C0.925998 90.8538 0.00827844 84.1857 -0.0229492 77.4838C0.00823331 70.7817 0.925953 64.1135 2.7062 57.6534L11.201 51.9326L46.6492 65.8006C44.4243 71.5887 43.9577 77.9077 45.3082 83.9613C46.6587 90.0149 49.7659 95.5323 54.2383 99.8183L22.4825 131.659Z" fill="#8A38AF"/>
<path d="M45.5647 69.1695L2.70703 57.6542C6.07752 44.6137 12.8644 32.7141 22.3643 23.1885C31.8643 13.6628 43.7317 6.85764 56.737 3.47803L64.6559 8.37624L71.0918 45.8906C65.0554 46.8987 59.4368 49.6308 54.9096 53.7594C50.3824 57.8881 47.1385 63.2382 45.5667 69.1685L45.5647 69.1695Z" fill="#A7194B"/>
<path d="M100.856 56.5825C97.8374 53.0775 94.0999 50.2671 89.8987 48.3434C85.6975 46.4197 81.1317 45.4281 76.5132 45.4363C73.7194 45.4355 70.9372 45.7968 68.2359 46.5112L56.7368 3.47774C63.1792 1.6927 69.8294 0.772499 76.5132 0.741211C83.1968 0.772556 89.8467 1.69276 96.289 3.47774C102.759 5.16179 108.977 7.69897 114.781 11.0229C120.554 14.4011 125.854 18.5322 130.543 23.3081L130.733 30.9305L100.856 56.5825Z" fill="#FE5D58"/>
<path d="M111.036 97.3141C109.256 90.8543 108.338 84.1862 108.307 77.4843C108.338 70.7828 109.256 64.115 111.036 57.6555C112.715 51.1687 115.246 44.934 118.561 39.1145C121.929 33.3257 126.049 28.0105 130.812 23.3081L162.187 54.7679C159.233 57.6848 156.889 61.1626 155.291 64.9982C153.694 68.8338 152.874 72.9503 152.881 77.107C152.881 77.708 152.898 78.3156 152.932 78.914L121.728 80.313L111.037 97.3126L111.036 97.3141Z" fill="#0391CE"/>
<path d="M96.2889 151.49L90.1118 142.296L82.9438 108.136C88.6603 107.009 93.9559 104.323 98.2479 100.373C102.54 96.4229 105.662 91.3621 107.27 85.7476L150.318 97.3161C148.639 103.803 146.109 110.038 142.794 115.858C139.425 121.646 135.305 126.961 130.542 131.662C125.853 136.438 120.552 140.569 114.78 143.948C108.976 147.272 102.758 149.809 96.2884 151.493L96.2889 151.49Z" fill="#556BFE"/>
<path d="M76.5139 154.225C69.8301 154.194 63.18 153.274 56.7376 151.489C50.2443 149.794 44.0065 147.235 38.19 143.881C32.3998 140.479 27.0813 136.327 22.3716 131.533L54.1891 99.77C60.1772 105.573 68.1864 108.805 76.5139 108.779C79.2424 108.78 81.9602 108.437 84.6028 107.755L96.2897 151.491C89.8474 153.275 83.1974 154.194 76.5139 154.225Z" fill="#4E34A4"/>
</g>
</g>
<path d="M670.438 79.8022C670.438 71.7657 672.045 64.6092 675.259 58.3331C678.551 52.0569 683.22 47.1966 689.266 43.7524C695.313 40.2316 702.431 38.4712 710.62 38.4712C717.662 38.4712 723.938 39.8106 729.449 42.4895C735.036 45.0918 739.552 48.804 742.996 53.6259C746.517 58.4479 748.852 64.0735 750 70.5028H723.135C721.91 67.8239 720.15 65.7573 717.853 64.3031C715.634 62.7723 713.07 62.0069 710.161 62.0069C705.875 62.0069 702.469 63.6142 699.943 66.8289C697.494 70.0435 696.269 74.368 696.269 79.8022C696.269 85.2365 697.494 89.561 699.943 92.7756C702.469 95.9902 705.875 97.5976 710.161 97.5976C713.07 97.5976 715.634 96.8704 717.853 95.4162C720.15 93.8854 721.91 91.7806 723.135 89.1017H750C748.852 95.531 746.517 101.157 742.996 105.979C739.552 110.801 735.036 114.551 729.449 117.23C723.938 119.832 717.662 121.133 710.62 121.133C702.431 121.133 695.313 119.411 689.266 115.967C683.22 112.446 678.551 107.548 675.259 101.271C672.045 94.9952 670.438 87.8388 670.438 79.8022Z" fill="white"/>
<path d="M661.223 39.2744V120.559H635.735V39.2744H661.223Z" fill="white"/>
<path d="M627.651 67.1729C627.651 72.301 626.465 76.9699 624.092 81.1795C621.72 85.3126 618.199 88.6038 613.53 91.053C608.938 93.5023 603.35 94.7269 596.768 94.7269H586.665V120.559H561.177V39.2744H596.768C606.718 39.2744 614.334 41.8002 619.615 46.8518C624.972 51.9033 627.651 58.677 627.651 67.1729ZM593.898 74.6354C599.179 74.6354 601.819 72.1479 601.819 67.1729C601.819 62.1978 599.179 59.7103 593.898 59.7103H586.665V74.6354H593.898Z" fill="white"/>
<path d="M510.307 121.363C502.654 121.363 495.612 119.564 489.183 115.967C482.83 112.369 477.778 107.394 474.028 101.042C470.278 94.6889 468.402 87.5325 468.402 79.5724C468.402 71.6124 470.278 64.456 474.028 58.1033C477.778 51.7505 482.83 46.8138 489.183 43.293C495.612 39.6956 502.654 37.897 510.307 37.897C517.961 37.897 524.965 39.6956 531.317 43.293C537.67 46.8138 542.683 51.7505 546.357 58.1033C550.108 64.456 551.983 71.6124 551.983 79.5724C551.983 87.5325 550.108 94.6889 546.357 101.042C542.683 107.394 537.632 112.369 531.203 115.967C524.85 119.564 517.885 121.363 510.307 121.363ZM510.307 97.5974C515.359 97.5974 519.262 95.9901 522.018 92.7754C524.773 89.4842 526.151 85.0832 526.151 79.5724C526.151 73.9851 524.773 69.5841 522.018 66.3695C519.262 63.0783 515.359 61.4327 510.307 61.4327C505.179 61.4327 501.238 63.0783 498.482 66.3695C495.727 69.5841 494.349 73.9851 494.349 79.5724C494.349 85.0832 495.727 89.4842 498.482 92.7754C501.238 95.9901 505.179 97.5974 510.307 97.5974Z" fill="white"/>
<path d="M419.828 121.363C412.174 121.363 405.132 119.564 398.703 115.967C392.35 112.369 387.299 107.394 383.548 101.042C379.798 94.6889 377.923 87.5325 377.923 79.5724C377.923 71.6124 379.798 64.456 383.548 58.1033C387.299 51.7505 392.35 46.8138 398.703 43.293C405.132 39.6956 412.174 37.897 419.828 37.897C427.482 37.897 434.485 39.6956 440.838 43.293C447.191 46.8138 452.204 51.7505 455.878 58.1033C459.628 64.456 461.503 71.6124 461.503 79.5724C461.503 87.5325 459.628 94.6889 455.878 101.042C452.204 107.394 447.152 112.369 440.723 115.967C434.37 119.564 427.405 121.363 419.828 121.363ZM419.828 97.5974C424.88 97.5974 428.783 95.9901 431.538 92.7754C434.294 89.4842 435.672 85.0832 435.672 79.5724C435.672 73.9851 434.294 69.5841 431.538 66.3695C428.783 63.0783 424.88 61.4327 419.828 61.4327C414.7 61.4327 410.758 63.0783 408.003 66.3695C405.247 69.5841 403.87 73.9851 403.87 79.5724C403.87 85.0832 405.247 89.4842 408.003 92.7754C410.758 95.9901 414.7 97.5974 419.828 97.5974Z" fill="white"/>
<path d="M347.63 101.271H372.199V120.559H322.143V39.2744H347.63V101.271Z" fill="white"/>
<defs>
<clipPath id="clip0_404_131">
<rect width="261.377" height="153.483" fill="white" transform="translate(0 0.62207)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because one or more lines are too long
+7
View File
@@ -0,0 +1,7 @@
<svg width="1818" height="611" viewBox="0 0 1818 611" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1541.68 141.816H1812.32V208.8H1541.68V141.816ZM1747.36 0.40625H1817.05V71.4496H1768.34C1755.26 70.9986 1743.98 72.3518 1734.51 75.5093C1725.04 78.6667 1717.82 84.5306 1712.86 93.101C1707.9 101.22 1705.41 112.948 1705.41 128.284V471.999H1617.46V117.459C1617.46 90.3945 1622.42 68.2921 1632.34 51.1515C1642.27 33.5598 1656.92 20.7044 1676.32 12.5851C1695.72 4.46588 1719.4 0.40625 1747.36 0.40625Z" fill="white"/>
<path d="M1273.97 479.442C1240.6 479.442 1210.15 472.225 1182.63 457.791C1155.57 442.906 1133.92 422.382 1117.68 396.22C1101.89 369.607 1094 338.934 1094 304.202C1094 268.568 1102.12 237.669 1118.36 211.507C1134.59 185.345 1156.47 165.047 1183.99 150.613C1211.95 135.728 1243.53 128.285 1278.71 128.285C1317.5 128.285 1348.63 136.179 1372.08 151.966C1395.99 167.303 1413.35 188.277 1424.18 214.89C1435.01 241.503 1440.42 271.274 1440.42 304.202C1440.42 324.049 1437.26 344.347 1430.95 365.096C1424.63 385.395 1414.93 404.339 1401.85 421.931C1388.77 439.072 1371.63 453.055 1350.43 463.881C1329.23 474.255 1303.74 479.442 1273.97 479.442ZM1302.39 411.782C1329 411.782 1352.01 407.271 1371.41 398.25C1390.8 389.229 1405.69 376.599 1416.06 360.36C1426.44 344.122 1431.62 325.402 1431.62 304.202C1431.62 281.198 1426.21 261.802 1415.38 246.014C1405.01 229.776 1390.12 217.597 1370.73 209.478C1351.78 200.907 1329 196.622 1302.39 196.622C1264.95 196.622 1235.86 206.546 1215.11 226.393C1194.36 245.789 1183.99 271.725 1183.99 304.202C1183.99 325.853 1188.95 344.798 1198.87 361.037C1208.79 376.824 1222.55 389.229 1240.14 398.25C1258.19 407.271 1278.94 411.782 1302.39 411.782ZM1431.62 135.728H1519.58V472H1437.71C1437.71 472 1437.04 467.715 1435.68 459.144C1434.78 450.123 1433.88 438.846 1432.98 425.314C1432.07 411.782 1431.62 398.476 1431.62 385.395V135.728Z" fill="white"/>
<path d="M879.266 135.728H967.224V472H879.266V135.728ZM1096.46 208.124C1071.2 208.124 1049.32 213.086 1030.83 223.01C1012.33 232.482 997.446 244.21 986.169 258.193C974.893 272.176 966.999 285.708 962.488 298.789L961.812 261.576C962.263 256.163 964.067 248.27 967.224 237.895C970.382 227.069 975.118 215.567 981.433 203.388C987.748 190.758 996.093 178.805 1006.47 167.528C1016.84 155.8 1029.47 146.328 1044.36 139.111C1059.24 131.894 1076.61 128.285 1096.46 128.285V208.124Z" fill="white"/>
<path d="M626.961 420.578C590.425 420.578 558.173 415.165 530.207 404.339C502.692 393.063 481.266 376.599 465.93 354.947C450.593 333.296 442.925 307.134 442.925 276.461C442.925 246.24 450.368 220.078 465.253 197.975C480.139 175.873 501.339 158.732 528.854 146.553C556.82 134.375 589.523 128.285 626.961 128.285C637.336 128.285 647.26 128.962 656.732 130.315C666.656 131.668 676.354 133.472 685.826 135.728L855.654 136.404V202.712C832.649 203.163 809.193 200.456 785.287 194.592C761.831 188.277 741.082 181.511 723.039 174.294L721.009 169.558C736.346 176.775 750.78 185.796 764.312 196.622C777.844 206.997 788.67 219.176 796.789 233.159C805.359 246.691 809.644 262.478 809.644 280.521C809.644 309.84 802.202 335.1 787.317 356.301C772.431 377.05 751.231 393.063 723.716 404.339C696.652 415.165 664.4 420.578 626.961 420.578ZM739.954 610.704V594.465C739.954 573.716 733.188 559.282 719.656 551.162C706.575 543.043 688.532 538.984 665.528 538.984H560.654C540.356 538.984 523.216 537.405 509.232 534.247C495.7 531.09 484.875 526.579 476.755 520.715C468.636 514.851 462.772 507.86 459.164 499.741C455.555 492.072 453.751 483.728 453.751 474.706C453.751 456.663 459.615 443.131 471.343 434.11C483.07 424.638 498.858 418.323 518.705 415.165C538.552 412.008 560.429 411.331 584.335 413.135L626.961 420.578C598.544 421.48 577.344 423.961 563.361 428.021C549.829 431.629 543.063 439.072 543.063 450.349C543.063 457.115 545.769 462.527 551.182 466.587C556.595 470.196 564.263 472 574.186 472H684.473C714.694 472 740.405 475.157 761.606 481.472C783.257 488.238 799.721 499.29 810.998 514.626C822.274 530.413 827.913 551.839 827.913 578.903V610.704H739.954ZM626.961 356.977C646.357 356.977 663.273 353.82 677.707 347.505C692.592 341.19 704.094 332.168 712.214 320.441C720.333 308.262 724.392 293.828 724.392 277.138C724.392 259.997 720.333 245.338 712.214 233.159C704.094 220.98 692.818 211.733 678.383 205.418C663.949 198.652 646.809 195.269 626.961 195.269C607.566 195.269 590.425 198.652 575.54 205.418C560.654 211.733 549.152 220.98 541.033 233.159C532.914 245.338 528.854 259.997 528.854 277.138C528.854 293.828 532.914 308.262 541.033 320.441C549.152 332.168 560.429 341.19 574.863 347.505C589.748 353.82 607.114 356.977 626.961 356.977Z" fill="white"/>
<path d="M214.841 480.119C172.441 480.119 135.002 473.353 102.525 459.821C70.4989 446.289 45.4646 426.667 27.4218 400.956C9.37905 374.794 0.357666 342.769 0.357666 304.879C0.357666 266.989 9.37905 234.963 27.4218 208.801C45.4646 182.188 70.4989 162.115 102.525 148.583C135.002 135.051 172.441 128.285 214.841 128.285C257.242 128.285 294.229 135.051 325.804 148.583C357.83 162.115 382.864 182.188 400.907 208.801C418.95 234.963 427.971 266.989 427.971 304.879C427.971 342.769 418.95 374.794 400.907 400.956C382.864 426.667 357.83 446.289 325.804 459.821C294.229 473.353 257.242 480.119 214.841 480.119ZM214.841 412.459C238.297 412.459 259.271 408.399 277.765 400.28C296.71 391.71 311.595 379.531 322.421 363.743C333.247 347.505 338.659 327.883 338.659 304.879C338.659 281.874 333.247 262.253 322.421 246.014C311.595 229.325 296.936 216.695 278.442 208.124C259.948 199.554 238.748 195.269 214.841 195.269C191.385 195.269 170.185 199.554 151.24 208.124C132.295 216.695 117.185 229.099 105.908 245.338C95.0822 261.576 89.6693 281.423 89.6693 304.879C89.6693 327.883 95.0822 347.505 105.908 363.743C116.733 379.531 131.619 391.71 150.564 400.28C169.509 408.399 190.934 412.459 214.841 412.459Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

+31
View File
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 23.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 200 200" style="enable-background:new 0 0 200 200;" xml:space="preserve">
<style type="text/css">
.st0{fill:#21262E;}
.st1{fill:#FFFFFF;}
.st2{fill:#54AE47;}
</style>
<path class="st0" d="M170.1,3.6H29.7C15.1,3.6,3.2,15.5,3.2,30.1v140.4c0,14.6,11.9,26.5,26.5,26.5h140.4
c14.6,0,26.5-11.9,26.5-26.5V30.1C196.5,15.5,184.6,3.6,170.1,3.6z"/>
<g>
<g>
<path class="st1" d="M35.3,126.3c-3-0.5-5.7-1.1-8.1-1.9v-12.3c2.4,0.8,5.2,1.5,8.3,1.9c3.1,0.5,6,0.7,8.7,0.7
c3.4,0,5.9-0.5,7.4-1.4c1.5-0.9,2.2-2.3,2.2-4.1c0-1-0.2-1.8-0.6-2.4c-0.4-0.6-1.2-1.2-2.2-1.7c-1.1-0.5-2.6-1-4.6-1.6l-4.8-1.3
c-5.3-1.3-9.3-3.4-11.9-6.2c-2.6-2.8-4-6.5-4-11.1c0-5.9,2.2-10.5,6.5-13.7c4.3-3.2,10.8-4.8,19.3-4.8c2.7,0,5.2,0.2,7.7,0.5
c2.5,0.3,4.7,0.7,6.7,1.3v12.3c-1.8-0.6-3.9-1-6.3-1.3c-2.4-0.3-4.8-0.5-7.2-0.5c-4.2,0-7.2,0.5-8.9,1.4c-1.7,1-2.6,2.3-2.6,4.1
c0,0.9,0.2,1.7,0.6,2.3c0.4,0.6,1,1.2,1.9,1.6c0.9,0.5,2.2,0.9,3.9,1.4l4.8,1.2c5.8,1.4,10.1,3.6,12.9,6.4
c2.7,2.8,4.1,6.5,4.1,11.1c0,3.8-1,7.1-2.9,9.9c-2,2.8-4.8,5-8.5,6.5c-3.7,1.5-8.1,2.3-13.2,2.3C41.2,126.9,38.2,126.7,35.3,126.3
z"/>
<path class="st1" d="M74.5,68.4c6.4-1.2,12.7-1.9,18.8-1.9c9.2,0,16,1.7,20.5,5.2c4.5,3.5,6.8,9,6.8,16.4c0,7.1-2.2,12.5-6.6,16.2
c-4.4,3.7-10.8,5.5-19.3,5.5c-0.8,0-1.9,0-3.3-0.1l-1.7,0v16.4H74.5V68.4z M103.2,96.2c1.7-1.6,2.6-4.2,2.6-7.9
c0-3.7-0.9-6.3-2.7-8c-1.8-1.7-4.6-2.5-8.4-2.5c-2,0-3.6,0.1-5,0.4v20c1.8,0.2,3.5,0.3,5.1,0.3C98.6,98.6,101.4,97.8,103.2,96.2z"
/>
<path class="st1" d="M156,95.3l20.9,30.8h-16.8L147,106.3l-13.2,19.8h-16.6l20.9-30.6l-19.3-28.2h16.9l11.4,17.1l11.4-17.1H175
L156,95.3z"/>
</g>
</g>
<path class="st2" d="M184.2,153.6v11.9c0,9.8-8,17.8-17.8,17.8H33.8c-9.8,0-17.8-8-17.8-17.8v-11.9c0-2.6,2.1-4.7,4.7-4.7h159
C182.1,148.9,184.2,151,184.2,153.6z"/>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 351 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 KiB

+2
View File
File diff suppressed because one or more lines are too long
+8
View File
File diff suppressed because one or more lines are too long
+2
View File
File diff suppressed because one or more lines are too long
+4180
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+137
View File
@@ -0,0 +1,137 @@
/**
* @license
* Lodash lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
*/
;(function(){function n(n,t,r){switch(r.length){case 0:return n.call(t);case 1:return n.call(t,r[0]);case 2:return n.call(t,r[0],r[1]);case 3:return n.call(t,r[0],r[1],r[2])}return n.apply(t,r)}function t(n,t,r,e){for(var u=-1,i=null==n?0:n.length;++u<i;){var o=n[u];t(e,o,r(o),n)}return e}function r(n,t){for(var r=-1,e=null==n?0:n.length;++r<e&&false!==t(n[r],r,n););return n}function e(n,t){for(var r=null==n?0:n.length;r--&&false!==t(n[r],r,n););return n}function u(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(!t(n[r],r,n))return false;
return true}function i(n,t){for(var r=-1,e=null==n?0:n.length,u=0,i=[];++r<e;){var o=n[r];t(o,r,n)&&(i[u++]=o)}return i}function o(n,t){return!(null==n||!n.length)&&-1<v(n,t,0)}function f(n,t,r){for(var e=-1,u=null==n?0:n.length;++e<u;)if(r(t,n[e]))return true;return false}function c(n,t){for(var r=-1,e=null==n?0:n.length,u=Array(e);++r<e;)u[r]=t(n[r],r,n);return u}function a(n,t){for(var r=-1,e=t.length,u=n.length;++r<e;)n[u+r]=t[r];return n}function l(n,t,r,e){var u=-1,i=null==n?0:n.length;for(e&&i&&(r=n[++u]);++u<i;)r=t(r,n[u],u,n);
return r}function s(n,t,r,e){var u=null==n?0:n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);return r}function h(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(t(n[r],r,n))return true;return false}function p(n,t,r){var e;return r(n,function(n,r,u){if(t(n,r,u))return e=r,false}),e}function _(n,t,r,e){var u=n.length;for(r+=e?1:-1;e?r--:++r<u;)if(t(n[r],r,n))return r;return-1}function v(n,t,r){if(t===t)n:{--r;for(var e=n.length;++r<e;)if(n[r]===t){n=r;break n}n=-1}else n=_(n,d,r);return n}function g(n,t,r,e){
--r;for(var u=n.length;++r<u;)if(e(n[r],t))return r;return-1}function d(n){return n!==n}function y(n,t){var r=null==n?0:n.length;return r?m(n,t)/r:F}function b(n){return function(t){return null==t?T:t[n]}}function x(n){return function(t){return null==n?T:n[t]}}function j(n,t,r,e,u){return u(n,function(n,u,i){r=e?(e=false,n):t(r,n,u,i)}),r}function w(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].c;return n}function m(n,t){for(var r,e=-1,u=n.length;++e<u;){var i=t(n[e]);i!==T&&(r=r===T?i:r+i)}return r;
}function A(n,t){for(var r=-1,e=Array(n);++r<n;)e[r]=t(r);return e}function E(n,t){return c(t,function(t){return[t,n[t]]})}function k(n){return function(t){return n(t)}}function S(n,t){return c(t,function(t){return n[t]})}function O(n,t){return n.has(t)}function I(n,t){for(var r=-1,e=n.length;++r<e&&-1<v(t,n[r],0););return r}function R(n,t){for(var r=n.length;r--&&-1<v(t,n[r],0););return r}function z(n){return"\\"+Un[n]}function W(n){var t=-1,r=Array(n.size);return n.forEach(function(n,e){r[++t]=[e,n];
}),r}function B(n,t){return function(r){return n(t(r))}}function L(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r];o!==t&&"__lodash_placeholder__"!==o||(n[r]="__lodash_placeholder__",i[u++]=r)}return i}function U(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=n}),r}function C(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=[n,n]}),r}function D(n){if(Rn.test(n)){for(var t=On.lastIndex=0;On.test(n);)++t;n=t}else n=Qn(n);return n}function M(n){return Rn.test(n)?n.match(On)||[]:n.split("");
}var T,$=1/0,F=NaN,N=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],P=/\b__p\+='';/g,Z=/\b(__p\+=)''\+/g,q=/(__e\(.*?\)|\b__t\))\+'';/g,V=/&(?:amp|lt|gt|quot|#39);/g,K=/[&<>"']/g,G=RegExp(V.source),H=RegExp(K.source),J=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,Q=/<%=([\s\S]+?)%>/g,X=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nn=/^\w*$/,tn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,rn=/[\\^$.*+?()[\]{}|]/g,en=RegExp(rn.source),un=/^\s+|\s+$/g,on=/^\s+/,fn=/\s+$/,cn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,an=/\{\n\/\* \[wrapped with (.+)\] \*/,ln=/,? & /,sn=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,hn=/\\(\\)?/g,pn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,_n=/\w*$/,vn=/^[-+]0x[0-9a-f]+$/i,gn=/^0b[01]+$/i,dn=/^\[object .+?Constructor\]$/,yn=/^0o[0-7]+$/i,bn=/^(?:0|[1-9]\d*)$/,xn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,jn=/($^)/,wn=/['\n\r\u2028\u2029\\]/g,mn="[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?(?:\\u200d(?:[^\\ud800-\\udfff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?)*",An="(?:[\\u2700-\\u27bf]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])"+mn,En="(?:[^\\ud800-\\udfff][\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]?|[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff])",kn=RegExp("['\u2019]","g"),Sn=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]","g"),On=RegExp("\\ud83c[\\udffb-\\udfff](?=\\ud83c[\\udffb-\\udfff])|"+En+mn,"g"),In=RegExp(["[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+(?:['\u2019](?:d|ll|m|re|s|t|ve))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde]|$)|(?:[A-Z\\xc0-\\xd6\\xd8-\\xde]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde](?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])|$)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?(?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:d|ll|m|re|s|t|ve))?|[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?|\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])|\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])|\\d+",An].join("|"),"g"),Rn=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]"),zn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Wn="Array Buffer DataView Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Map Math Object Promise RegExp Set String Symbol TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap _ clearTimeout isFinite parseInt setTimeout".split(" "),Bn={};
Bn["[object Float32Array]"]=Bn["[object Float64Array]"]=Bn["[object Int8Array]"]=Bn["[object Int16Array]"]=Bn["[object Int32Array]"]=Bn["[object Uint8Array]"]=Bn["[object Uint8ClampedArray]"]=Bn["[object Uint16Array]"]=Bn["[object Uint32Array]"]=true,Bn["[object Arguments]"]=Bn["[object Array]"]=Bn["[object ArrayBuffer]"]=Bn["[object Boolean]"]=Bn["[object DataView]"]=Bn["[object Date]"]=Bn["[object Error]"]=Bn["[object Function]"]=Bn["[object Map]"]=Bn["[object Number]"]=Bn["[object Object]"]=Bn["[object RegExp]"]=Bn["[object Set]"]=Bn["[object String]"]=Bn["[object WeakMap]"]=false;
var Ln={};Ln["[object Arguments]"]=Ln["[object Array]"]=Ln["[object ArrayBuffer]"]=Ln["[object DataView]"]=Ln["[object Boolean]"]=Ln["[object Date]"]=Ln["[object Float32Array]"]=Ln["[object Float64Array]"]=Ln["[object Int8Array]"]=Ln["[object Int16Array]"]=Ln["[object Int32Array]"]=Ln["[object Map]"]=Ln["[object Number]"]=Ln["[object Object]"]=Ln["[object RegExp]"]=Ln["[object Set]"]=Ln["[object String]"]=Ln["[object Symbol]"]=Ln["[object Uint8Array]"]=Ln["[object Uint8ClampedArray]"]=Ln["[object Uint16Array]"]=Ln["[object Uint32Array]"]=true,
Ln["[object Error]"]=Ln["[object Function]"]=Ln["[object WeakMap]"]=false;var Un={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Cn=parseFloat,Dn=parseInt,Mn=typeof global=="object"&&global&&global.Object===Object&&global,Tn=typeof self=="object"&&self&&self.Object===Object&&self,$n=Mn||Tn||Function("return this")(),Fn=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Nn=Fn&&typeof module=="object"&&module&&!module.nodeType&&module,Pn=Nn&&Nn.exports===Fn,Zn=Pn&&Mn.process,qn=function(){
try{var n=Nn&&Nn.f&&Nn.f("util").types;return n?n:Zn&&Zn.binding&&Zn.binding("util")}catch(n){}}(),Vn=qn&&qn.isArrayBuffer,Kn=qn&&qn.isDate,Gn=qn&&qn.isMap,Hn=qn&&qn.isRegExp,Jn=qn&&qn.isSet,Yn=qn&&qn.isTypedArray,Qn=b("length"),Xn=x({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I",
"\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C",
"\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i",
"\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r",
"\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij",
"\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),nt=x({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"}),tt=x({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),rt=function x(mn){function An(n){if(yu(n)&&!ff(n)&&!(n instanceof Un)){if(n instanceof On)return n;if(oi.call(n,"__wrapped__"))return Fe(n)}return new On(n)}function En(){}function On(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=T}function Un(n){this.__wrapped__=n,
this.__actions__=[],this.__dir__=1,this.__filtered__=false,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Mn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Tn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Fn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Nn(n){var t=-1,r=null==n?0:n.length;for(this.__data__=new Fn;++t<r;)this.add(n[t]);
}function Zn(n){this.size=(this.__data__=new Tn(n)).size}function qn(n,t){var r,e=ff(n),u=!e&&of(n),i=!e&&!u&&af(n),o=!e&&!u&&!i&&_f(n),u=(e=e||u||i||o)?A(n.length,ni):[],f=u.length;for(r in n)!t&&!oi.call(n,r)||e&&("length"==r||i&&("offset"==r||"parent"==r)||o&&("buffer"==r||"byteLength"==r||"byteOffset"==r)||Se(r,f))||u.push(r);return u}function Qn(n){var t=n.length;return t?n[ir(0,t-1)]:T}function et(n,t){return De(Ur(n),pt(t,0,n.length))}function ut(n){return De(Ur(n))}function it(n,t,r){(r===T||lu(n[t],r))&&(r!==T||t in n)||st(n,t,r);
}function ot(n,t,r){var e=n[t];oi.call(n,t)&&lu(e,r)&&(r!==T||t in n)||st(n,t,r)}function ft(n,t){for(var r=n.length;r--;)if(lu(n[r][0],t))return r;return-1}function ct(n,t,r,e){return uo(n,function(n,u,i){t(e,n,r(n),i)}),e}function at(n,t){return n&&Cr(t,Wu(t),n)}function lt(n,t){return n&&Cr(t,Bu(t),n)}function st(n,t,r){"__proto__"==t&&Ai?Ai(n,t,{configurable:true,enumerable:true,value:r,writable:true}):n[t]=r}function ht(n,t){for(var r=-1,e=t.length,u=Ku(e),i=null==n;++r<e;)u[r]=i?T:Ru(n,t[r]);return u;
}function pt(n,t,r){return n===n&&(r!==T&&(n=n<=r?n:r),t!==T&&(n=n>=t?n:t)),n}function _t(n,t,e,u,i,o){var f,c=1&t,a=2&t,l=4&t;if(e&&(f=i?e(n,u,i,o):e(n)),f!==T)return f;if(!du(n))return n;if(u=ff(n)){if(f=me(n),!c)return Ur(n,f)}else{var s=vo(n),h="[object Function]"==s||"[object GeneratorFunction]"==s;if(af(n))return Ir(n,c);if("[object Object]"==s||"[object Arguments]"==s||h&&!i){if(f=a||h?{}:Ae(n),!c)return a?Mr(n,lt(f,n)):Dr(n,at(f,n))}else{if(!Ln[s])return i?n:{};f=Ee(n,s,c)}}if(o||(o=new Zn),
i=o.get(n))return i;o.set(n,f),pf(n)?n.forEach(function(r){f.add(_t(r,t,e,r,n,o))}):sf(n)&&n.forEach(function(r,u){f.set(u,_t(r,t,e,u,n,o))});var a=l?a?ve:_e:a?Bu:Wu,p=u?T:a(n);return r(p||n,function(r,u){p&&(u=r,r=n[u]),ot(f,u,_t(r,t,e,u,n,o))}),f}function vt(n){var t=Wu(n);return function(r){return gt(r,n,t)}}function gt(n,t,r){var e=r.length;if(null==n)return!e;for(n=Qu(n);e--;){var u=r[e],i=t[u],o=n[u];if(o===T&&!(u in n)||!i(o))return false}return true}function dt(n,t,r){if(typeof n!="function")throw new ti("Expected a function");
return bo(function(){n.apply(T,r)},t)}function yt(n,t,r,e){var u=-1,i=o,a=true,l=n.length,s=[],h=t.length;if(!l)return s;r&&(t=c(t,k(r))),e?(i=f,a=false):200<=t.length&&(i=O,a=false,t=new Nn(t));n:for(;++u<l;){var p=n[u],_=null==r?p:r(p),p=e||0!==p?p:0;if(a&&_===_){for(var v=h;v--;)if(t[v]===_)continue n;s.push(p)}else i(t,_,e)||s.push(p)}return s}function bt(n,t){var r=true;return uo(n,function(n,e,u){return r=!!t(n,e,u)}),r}function xt(n,t,r){for(var e=-1,u=n.length;++e<u;){var i=n[e],o=t(i);if(null!=o&&(f===T?o===o&&!wu(o):r(o,f)))var f=o,c=i;
}return c}function jt(n,t){var r=[];return uo(n,function(n,e,u){t(n,e,u)&&r.push(n)}),r}function wt(n,t,r,e,u){var i=-1,o=n.length;for(r||(r=ke),u||(u=[]);++i<o;){var f=n[i];0<t&&r(f)?1<t?wt(f,t-1,r,e,u):a(u,f):e||(u[u.length]=f)}return u}function mt(n,t){return n&&oo(n,t,Wu)}function At(n,t){return n&&fo(n,t,Wu)}function Et(n,t){return i(t,function(t){return _u(n[t])})}function kt(n,t){t=Sr(t,n);for(var r=0,e=t.length;null!=n&&r<e;)n=n[Me(t[r++])];return r&&r==e?n:T}function St(n,t,r){return t=t(n),
ff(n)?t:a(t,r(n))}function Ot(n){if(null==n)n=n===T?"[object Undefined]":"[object Null]";else if(mi&&mi in Qu(n)){var t=oi.call(n,mi),r=n[mi];try{n[mi]=T;var e=true}catch(n){}var u=ai.call(n);e&&(t?n[mi]=r:delete n[mi]),n=u}else n=ai.call(n);return n}function It(n,t){return n>t}function Rt(n,t){return null!=n&&oi.call(n,t)}function zt(n,t){return null!=n&&t in Qu(n)}function Wt(n,t,r){for(var e=r?f:o,u=n[0].length,i=n.length,a=i,l=Ku(i),s=1/0,h=[];a--;){var p=n[a];a&&t&&(p=c(p,k(t))),s=Ci(p.length,s),
l[a]=!r&&(t||120<=u&&120<=p.length)?new Nn(a&&p):T}var p=n[0],_=-1,v=l[0];n:for(;++_<u&&h.length<s;){var g=p[_],d=t?t(g):g,g=r||0!==g?g:0;if(v?!O(v,d):!e(h,d,r)){for(a=i;--a;){var y=l[a];if(y?!O(y,d):!e(n[a],d,r))continue n}v&&v.push(d),h.push(g)}}return h}function Bt(n,t,r){var e={};return mt(n,function(n,u,i){t(e,r(n),u,i)}),e}function Lt(t,r,e){return r=Sr(r,t),t=2>r.length?t:kt(t,hr(r,0,-1)),r=null==t?t:t[Me(Ve(r))],null==r?T:n(r,t,e)}function Ut(n){return yu(n)&&"[object Arguments]"==Ot(n)}function Ct(n){
return yu(n)&&"[object ArrayBuffer]"==Ot(n)}function Dt(n){return yu(n)&&"[object Date]"==Ot(n)}function Mt(n,t,r,e,u){if(n===t)t=true;else if(null==n||null==t||!yu(n)&&!yu(t))t=n!==n&&t!==t;else n:{var i=ff(n),o=ff(t),f=i?"[object Array]":vo(n),c=o?"[object Array]":vo(t),f="[object Arguments]"==f?"[object Object]":f,c="[object Arguments]"==c?"[object Object]":c,a="[object Object]"==f,o="[object Object]"==c;if((c=f==c)&&af(n)){if(!af(t)){t=false;break n}i=true,a=false}if(c&&!a)u||(u=new Zn),t=i||_f(n)?se(n,t,r,e,Mt,u):he(n,t,f,r,e,Mt,u);else{
if(!(1&r)&&(i=a&&oi.call(n,"__wrapped__"),f=o&&oi.call(t,"__wrapped__"),i||f)){n=i?n.value():n,t=f?t.value():t,u||(u=new Zn),t=Mt(n,t,r,e,u);break n}if(c)t:if(u||(u=new Zn),i=1&r,f=_e(n),o=f.length,c=_e(t).length,o==c||i){for(a=o;a--;){var l=f[a];if(!(i?l in t:oi.call(t,l))){t=false;break t}}if((c=u.get(n))&&u.get(t))t=c==t;else{c=true,u.set(n,t),u.set(t,n);for(var s=i;++a<o;){var l=f[a],h=n[l],p=t[l];if(e)var _=i?e(p,h,l,t,n,u):e(h,p,l,n,t,u);if(_===T?h!==p&&!Mt(h,p,r,e,u):!_){c=false;break}s||(s="constructor"==l);
}c&&!s&&(r=n.constructor,e=t.constructor,r!=e&&"constructor"in n&&"constructor"in t&&!(typeof r=="function"&&r instanceof r&&typeof e=="function"&&e instanceof e)&&(c=false)),u.delete(n),u.delete(t),t=c}}else t=false;else t=false}}return t}function Tt(n){return yu(n)&&"[object Map]"==vo(n)}function $t(n,t,r,e){var u=r.length,i=u,o=!e;if(null==n)return!i;for(n=Qu(n);u--;){var f=r[u];if(o&&f[2]?f[1]!==n[f[0]]:!(f[0]in n))return false}for(;++u<i;){var f=r[u],c=f[0],a=n[c],l=f[1];if(o&&f[2]){if(a===T&&!(c in n))return false;
}else{if(f=new Zn,e)var s=e(a,l,c,n,t,f);if(s===T?!Mt(l,a,3,e,f):!s)return false}}return true}function Ft(n){return!(!du(n)||ci&&ci in n)&&(_u(n)?hi:dn).test(Te(n))}function Nt(n){return yu(n)&&"[object RegExp]"==Ot(n)}function Pt(n){return yu(n)&&"[object Set]"==vo(n)}function Zt(n){return yu(n)&&gu(n.length)&&!!Bn[Ot(n)]}function qt(n){return typeof n=="function"?n:null==n?$u:typeof n=="object"?ff(n)?Jt(n[0],n[1]):Ht(n):Zu(n)}function Vt(n){if(!ze(n))return Li(n);var t,r=[];for(t in Qu(n))oi.call(n,t)&&"constructor"!=t&&r.push(t);
return r}function Kt(n,t){return n<t}function Gt(n,t){var r=-1,e=su(n)?Ku(n.length):[];return uo(n,function(n,u,i){e[++r]=t(n,u,i)}),e}function Ht(n){var t=xe(n);return 1==t.length&&t[0][2]?We(t[0][0],t[0][1]):function(r){return r===n||$t(r,n,t)}}function Jt(n,t){return Ie(n)&&t===t&&!du(t)?We(Me(n),t):function(r){var e=Ru(r,n);return e===T&&e===t?zu(r,n):Mt(t,e,3)}}function Yt(n,t,r,e,u){n!==t&&oo(t,function(i,o){if(u||(u=new Zn),du(i)){var f=u,c=Le(n,o),a=Le(t,o),l=f.get(a);if(l)it(n,o,l);else{
var l=e?e(c,a,o+"",n,t,f):T,s=l===T;if(s){var h=ff(a),p=!h&&af(a),_=!h&&!p&&_f(a),l=a;h||p||_?ff(c)?l=c:hu(c)?l=Ur(c):p?(s=false,l=Ir(a,true)):_?(s=false,l=zr(a,true)):l=[]:xu(a)||of(a)?(l=c,of(c)?l=Ou(c):du(c)&&!_u(c)||(l=Ae(a))):s=false}s&&(f.set(a,l),Yt(l,a,r,e,f),f.delete(a)),it(n,o,l)}}else f=e?e(Le(n,o),i,o+"",n,t,u):T,f===T&&(f=i),it(n,o,f)},Bu)}function Qt(n,t){var r=n.length;if(r)return t+=0>t?r:0,Se(t,r)?n[t]:T}function Xt(n,t,r){var e=-1;return t=c(t.length?t:[$u],k(ye())),n=Gt(n,function(n){return{
a:c(t,function(t){return t(n)}),b:++e,c:n}}),w(n,function(n,t){var e;n:{e=-1;for(var u=n.a,i=t.a,o=u.length,f=r.length;++e<o;){var c=Wr(u[e],i[e]);if(c){e=e>=f?c:c*("desc"==r[e]?-1:1);break n}}e=n.b-t.b}return e})}function nr(n,t){return tr(n,t,function(t,r){return zu(n,r)})}function tr(n,t,r){for(var e=-1,u=t.length,i={};++e<u;){var o=t[e],f=kt(n,o);r(f,o)&&lr(i,Sr(o,n),f)}return i}function rr(n){return function(t){return kt(t,n)}}function er(n,t,r,e){var u=e?g:v,i=-1,o=t.length,f=n;for(n===t&&(t=Ur(t)),
r&&(f=c(n,k(r)));++i<o;)for(var a=0,l=t[i],l=r?r(l):l;-1<(a=u(f,l,a,e));)f!==n&&xi.call(f,a,1),xi.call(n,a,1);return n}function ur(n,t){for(var r=n?t.length:0,e=r-1;r--;){var u=t[r];if(r==e||u!==i){var i=u;Se(u)?xi.call(n,u,1):xr(n,u)}}}function ir(n,t){return n+Ii(Ti()*(t-n+1))}function or(n,t){var r="";if(!n||1>t||9007199254740991<t)return r;do t%2&&(r+=n),(t=Ii(t/2))&&(n+=n);while(t);return r}function fr(n,t){return xo(Be(n,t,$u),n+"")}function cr(n){return Qn(Uu(n))}function ar(n,t){var r=Uu(n);
return De(r,pt(t,0,r.length))}function lr(n,t,r,e){if(!du(n))return n;t=Sr(t,n);for(var u=-1,i=t.length,o=i-1,f=n;null!=f&&++u<i;){var c=Me(t[u]),a=r;if(u!=o){var l=f[c],a=e?e(l,c,f):T;a===T&&(a=du(l)?l:Se(t[u+1])?[]:{})}ot(f,c,a),f=f[c]}return n}function sr(n){return De(Uu(n))}function hr(n,t,r){var e=-1,u=n.length;for(0>t&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Ku(u);++e<u;)r[e]=n[e+t];return r}function pr(n,t){var r;return uo(n,function(n,e,u){return r=t(n,e,u),!r}),!!r}
function _r(n,t,r){var e=0,u=null==n?e:n.length;if(typeof t=="number"&&t===t&&2147483647>=u){for(;e<u;){var i=e+u>>>1,o=n[i];null!==o&&!wu(o)&&(r?o<=t:o<t)?e=i+1:u=i}return u}return vr(n,t,$u,r)}function vr(n,t,r,e){t=r(t);for(var u=0,i=null==n?0:n.length,o=t!==t,f=null===t,c=wu(t),a=t===T;u<i;){var l=Ii((u+i)/2),s=r(n[l]),h=s!==T,p=null===s,_=s===s,v=wu(s);(o?e||_:a?_&&(e||h):f?_&&h&&(e||!p):c?_&&h&&!p&&(e||!v):p||v?0:e?s<=t:s<t)?u=l+1:i=l}return Ci(i,4294967294)}function gr(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){
var o=n[r],f=t?t(o):o;if(!r||!lu(f,c)){var c=f;i[u++]=0===o?0:o}}return i}function dr(n){return typeof n=="number"?n:wu(n)?F:+n}function yr(n){if(typeof n=="string")return n;if(ff(n))return c(n,yr)+"";if(wu(n))return ro?ro.call(n):"";var t=n+"";return"0"==t&&1/n==-$?"-0":t}function br(n,t,r){var e=-1,u=o,i=n.length,c=true,a=[],l=a;if(r)c=false,u=f;else if(200<=i){if(u=t?null:so(n))return U(u);c=false,u=O,l=new Nn}else l=t?[]:a;n:for(;++e<i;){var s=n[e],h=t?t(s):s,s=r||0!==s?s:0;if(c&&h===h){for(var p=l.length;p--;)if(l[p]===h)continue n;
t&&l.push(h),a.push(s)}else u(l,h,r)||(l!==a&&l.push(h),a.push(s))}return a}function xr(n,t){return t=Sr(t,n),n=2>t.length?n:kt(n,hr(t,0,-1)),null==n||delete n[Me(Ve(t))]}function jr(n,t,r,e){for(var u=n.length,i=e?u:-1;(e?i--:++i<u)&&t(n[i],i,n););return r?hr(n,e?0:i,e?i+1:u):hr(n,e?i+1:0,e?u:i)}function wr(n,t){var r=n;return r instanceof Un&&(r=r.value()),l(t,function(n,t){return t.func.apply(t.thisArg,a([n],t.args))},r)}function mr(n,t,r){var e=n.length;if(2>e)return e?br(n[0]):[];for(var u=-1,i=Ku(e);++u<e;)for(var o=n[u],f=-1;++f<e;)f!=u&&(i[u]=yt(i[u]||o,n[f],t,r));
return br(wt(i,1),t,r)}function Ar(n,t,r){for(var e=-1,u=n.length,i=t.length,o={};++e<u;)r(o,n[e],e<i?t[e]:T);return o}function Er(n){return hu(n)?n:[]}function kr(n){return typeof n=="function"?n:$u}function Sr(n,t){return ff(n)?n:Ie(n,t)?[n]:jo(Iu(n))}function Or(n,t,r){var e=n.length;return r=r===T?e:r,!t&&r>=e?n:hr(n,t,r)}function Ir(n,t){if(t)return n.slice();var r=n.length,r=gi?gi(r):new n.constructor(r);return n.copy(r),r}function Rr(n){var t=new n.constructor(n.byteLength);return new vi(t).set(new vi(n)),
t}function zr(n,t){return new n.constructor(t?Rr(n.buffer):n.buffer,n.byteOffset,n.length)}function Wr(n,t){if(n!==t){var r=n!==T,e=null===n,u=n===n,i=wu(n),o=t!==T,f=null===t,c=t===t,a=wu(t);if(!f&&!a&&!i&&n>t||i&&o&&c&&!f&&!a||e&&o&&c||!r&&c||!u)return 1;if(!e&&!i&&!a&&n<t||a&&r&&u&&!e&&!i||f&&r&&u||!o&&u||!c)return-1}return 0}function Br(n,t,r,e){var u=-1,i=n.length,o=r.length,f=-1,c=t.length,a=Ui(i-o,0),l=Ku(c+a);for(e=!e;++f<c;)l[f]=t[f];for(;++u<o;)(e||u<i)&&(l[r[u]]=n[u]);for(;a--;)l[f++]=n[u++];
return l}function Lr(n,t,r,e){var u=-1,i=n.length,o=-1,f=r.length,c=-1,a=t.length,l=Ui(i-f,0),s=Ku(l+a);for(e=!e;++u<l;)s[u]=n[u];for(l=u;++c<a;)s[l+c]=t[c];for(;++o<f;)(e||u<i)&&(s[l+r[o]]=n[u++]);return s}function Ur(n,t){var r=-1,e=n.length;for(t||(t=Ku(e));++r<e;)t[r]=n[r];return t}function Cr(n,t,r,e){var u=!r;r||(r={});for(var i=-1,o=t.length;++i<o;){var f=t[i],c=e?e(r[f],n[f],f,r,n):T;c===T&&(c=n[f]),u?st(r,f,c):ot(r,f,c)}return r}function Dr(n,t){return Cr(n,po(n),t)}function Mr(n,t){return Cr(n,_o(n),t);
}function Tr(n,r){return function(e,u){var i=ff(e)?t:ct,o=r?r():{};return i(e,n,ye(u,2),o)}}function $r(n){return fr(function(t,r){var e=-1,u=r.length,i=1<u?r[u-1]:T,o=2<u?r[2]:T,i=3<n.length&&typeof i=="function"?(u--,i):T;for(o&&Oe(r[0],r[1],o)&&(i=3>u?T:i,u=1),t=Qu(t);++e<u;)(o=r[e])&&n(t,o,e,i);return t})}function Fr(n,t){return function(r,e){if(null==r)return r;if(!su(r))return n(r,e);for(var u=r.length,i=t?u:-1,o=Qu(r);(t?i--:++i<u)&&false!==e(o[i],i,o););return r}}function Nr(n){return function(t,r,e){
var u=-1,i=Qu(t);e=e(t);for(var o=e.length;o--;){var f=e[n?o:++u];if(false===r(i[f],f,i))break}return t}}function Pr(n,t,r){function e(){return(this&&this!==$n&&this instanceof e?i:n).apply(u?r:this,arguments)}var u=1&t,i=Vr(n);return e}function Zr(n){return function(t){t=Iu(t);var r=Rn.test(t)?M(t):T,e=r?r[0]:t.charAt(0);return t=r?Or(r,1).join(""):t.slice(1),e[n]()+t}}function qr(n){return function(t){return l(Mu(Du(t).replace(kn,"")),n,"")}}function Vr(n){return function(){var t=arguments;switch(t.length){
case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=eo(n.prototype),t=n.apply(r,t);return du(t)?t:r}}function Kr(t,r,e){function u(){for(var o=arguments.length,f=Ku(o),c=o,a=de(u);c--;)f[c]=arguments[c];return c=3>o&&f[0]!==a&&f[o-1]!==a?[]:L(f,a),
o-=c.length,o<e?ue(t,r,Jr,u.placeholder,T,f,c,T,T,e-o):n(this&&this!==$n&&this instanceof u?i:t,this,f)}var i=Vr(t);return u}function Gr(n){return function(t,r,e){var u=Qu(t);if(!su(t)){var i=ye(r,3);t=Wu(t),r=function(n){return i(u[n],n,u)}}return r=n(t,r,e),-1<r?u[i?t[r]:r]:T}}function Hr(n){return pe(function(t){var r=t.length,e=r,u=On.prototype.thru;for(n&&t.reverse();e--;){var i=t[e];if(typeof i!="function")throw new ti("Expected a function");if(u&&!o&&"wrapper"==ge(i))var o=new On([],true)}for(e=o?e:r;++e<r;)var i=t[e],u=ge(i),f="wrapper"==u?ho(i):T,o=f&&Re(f[0])&&424==f[1]&&!f[4].length&&1==f[9]?o[ge(f[0])].apply(o,f[3]):1==i.length&&Re(i)?o[u]():o.thru(i);
return function(){var n=arguments,e=n[0];if(o&&1==n.length&&ff(e))return o.plant(e).value();for(var u=0,n=r?t[u].apply(this,n):e;++u<r;)n=t[u].call(this,n);return n}})}function Jr(n,t,r,e,u,i,o,f,c,a){function l(){for(var d=arguments.length,y=Ku(d),b=d;b--;)y[b]=arguments[b];if(_){var x,j=de(l),b=y.length;for(x=0;b--;)y[b]===j&&++x}if(e&&(y=Br(y,e,u,_)),i&&(y=Lr(y,i,o,_)),d-=x,_&&d<a)return j=L(y,j),ue(n,t,Jr,l.placeholder,r,y,j,f,c,a-d);if(j=h?r:this,b=p?j[n]:n,d=y.length,f){x=y.length;for(var w=Ci(f.length,x),m=Ur(y);w--;){
var A=f[w];y[w]=Se(A,x)?m[A]:T}}else v&&1<d&&y.reverse();return s&&c<d&&(y.length=c),this&&this!==$n&&this instanceof l&&(b=g||Vr(b)),b.apply(j,y)}var s=128&t,h=1&t,p=2&t,_=24&t,v=512&t,g=p?T:Vr(n);return l}function Yr(n,t){return function(r,e){return Bt(r,n,t(e))}}function Qr(n,t){return function(r,e){var u;if(r===T&&e===T)return t;if(r!==T&&(u=r),e!==T){if(u===T)return e;typeof r=="string"||typeof e=="string"?(r=yr(r),e=yr(e)):(r=dr(r),e=dr(e)),u=n(r,e)}return u}}function Xr(t){return pe(function(r){
return r=c(r,k(ye())),fr(function(e){var u=this;return t(r,function(t){return n(t,u,e)})})})}function ne(n,t){t=t===T?" ":yr(t);var r=t.length;return 2>r?r?or(t,n):t:(r=or(t,Oi(n/D(t))),Rn.test(t)?Or(M(r),0,n).join(""):r.slice(0,n))}function te(t,r,e,u){function i(){for(var r=-1,c=arguments.length,a=-1,l=u.length,s=Ku(l+c),h=this&&this!==$n&&this instanceof i?f:t;++a<l;)s[a]=u[a];for(;c--;)s[a++]=arguments[++r];return n(h,o?e:this,s)}var o=1&r,f=Vr(t);return i}function re(n){return function(t,r,e){
e&&typeof e!="number"&&Oe(t,r,e)&&(r=e=T),t=Au(t),r===T?(r=t,t=0):r=Au(r),e=e===T?t<r?1:-1:Au(e);var u=-1;r=Ui(Oi((r-t)/(e||1)),0);for(var i=Ku(r);r--;)i[n?r:++u]=t,t+=e;return i}}function ee(n){return function(t,r){return typeof t=="string"&&typeof r=="string"||(t=Su(t),r=Su(r)),n(t,r)}}function ue(n,t,r,e,u,i,o,f,c,a){var l=8&t,s=l?o:T;o=l?T:o;var h=l?i:T;return i=l?T:i,t=(t|(l?32:64))&~(l?64:32),4&t||(t&=-4),u=[n,t,u,h,s,i,o,f,c,a],r=r.apply(T,u),Re(n)&&yo(r,u),r.placeholder=e,Ue(r,n,t)}function ie(n){
var t=Yu[n];return function(n,r){if(n=Su(n),(r=null==r?0:Ci(Eu(r),292))&&Wi(n)){var e=(Iu(n)+"e").split("e"),e=t(e[0]+"e"+(+e[1]+r)),e=(Iu(e)+"e").split("e");return+(e[0]+"e"+(+e[1]-r))}return t(n)}}function oe(n){return function(t){var r=vo(t);return"[object Map]"==r?W(t):"[object Set]"==r?C(t):E(t,n(t))}}function fe(n,t,r,e,u,i,o,f){var c=2&t;if(!c&&typeof n!="function")throw new ti("Expected a function");var a=e?e.length:0;if(a||(t&=-97,e=u=T),o=o===T?o:Ui(Eu(o),0),f=f===T?f:Eu(f),a-=u?u.length:0,
64&t){var l=e,s=u;e=u=T}var h=c?T:ho(n);return i=[n,t,r,e,u,l,s,i,o,f],h&&(r=i[1],n=h[1],t=r|n,e=128==n&&8==r||128==n&&256==r&&i[7].length<=h[8]||384==n&&h[7].length<=h[8]&&8==r,131>t||e)&&(1&n&&(i[2]=h[2],t|=1&r?0:4),(r=h[3])&&(e=i[3],i[3]=e?Br(e,r,h[4]):r,i[4]=e?L(i[3],"__lodash_placeholder__"):h[4]),(r=h[5])&&(e=i[5],i[5]=e?Lr(e,r,h[6]):r,i[6]=e?L(i[5],"__lodash_placeholder__"):h[6]),(r=h[7])&&(i[7]=r),128&n&&(i[8]=null==i[8]?h[8]:Ci(i[8],h[8])),null==i[9]&&(i[9]=h[9]),i[0]=h[0],i[1]=t),n=i[0],
t=i[1],r=i[2],e=i[3],u=i[4],f=i[9]=i[9]===T?c?0:n.length:Ui(i[9]-a,0),!f&&24&t&&(t&=-25),Ue((h?co:yo)(t&&1!=t?8==t||16==t?Kr(n,t,f):32!=t&&33!=t||u.length?Jr.apply(T,i):te(n,t,r,e):Pr(n,t,r),i),n,t)}function ce(n,t,r,e){return n===T||lu(n,ei[r])&&!oi.call(e,r)?t:n}function ae(n,t,r,e,u,i){return du(n)&&du(t)&&(i.set(t,n),Yt(n,t,T,ae,i),i.delete(t)),n}function le(n){return xu(n)?T:n}function se(n,t,r,e,u,i){var o=1&r,f=n.length,c=t.length;if(f!=c&&!(o&&c>f))return false;if((c=i.get(n))&&i.get(t))return c==t;
var c=-1,a=true,l=2&r?new Nn:T;for(i.set(n,t),i.set(t,n);++c<f;){var s=n[c],p=t[c];if(e)var _=o?e(p,s,c,t,n,i):e(s,p,c,n,t,i);if(_!==T){if(_)continue;a=false;break}if(l){if(!h(t,function(n,t){if(!O(l,t)&&(s===n||u(s,n,r,e,i)))return l.push(t)})){a=false;break}}else if(s!==p&&!u(s,p,r,e,i)){a=false;break}}return i.delete(n),i.delete(t),a}function he(n,t,r,e,u,i,o){switch(r){case"[object DataView]":if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)break;n=n.buffer,t=t.buffer;case"[object ArrayBuffer]":
if(n.byteLength!=t.byteLength||!i(new vi(n),new vi(t)))break;return true;case"[object Boolean]":case"[object Date]":case"[object Number]":return lu(+n,+t);case"[object Error]":return n.name==t.name&&n.message==t.message;case"[object RegExp]":case"[object String]":return n==t+"";case"[object Map]":var f=W;case"[object Set]":if(f||(f=U),n.size!=t.size&&!(1&e))break;return(r=o.get(n))?r==t:(e|=2,o.set(n,t),t=se(f(n),f(t),e,u,i,o),o.delete(n),t);case"[object Symbol]":if(to)return to.call(n)==to.call(t)}
return false}function pe(n){return xo(Be(n,T,Ze),n+"")}function _e(n){return St(n,Wu,po)}function ve(n){return St(n,Bu,_o)}function ge(n){for(var t=n.name+"",r=Gi[t],e=oi.call(Gi,t)?r.length:0;e--;){var u=r[e],i=u.func;if(null==i||i==n)return u.name}return t}function de(n){return(oi.call(An,"placeholder")?An:n).placeholder}function ye(){var n=An.iteratee||Fu,n=n===Fu?qt:n;return arguments.length?n(arguments[0],arguments[1]):n}function be(n,t){var r=n.__data__,e=typeof t;return("string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t)?r[typeof t=="string"?"string":"hash"]:r.map;
}function xe(n){for(var t=Wu(n),r=t.length;r--;){var e=t[r],u=n[e];t[r]=[e,u,u===u&&!du(u)]}return t}function je(n,t){var r=null==n?T:n[t];return Ft(r)?r:T}function we(n,t,r){t=Sr(t,n);for(var e=-1,u=t.length,i=false;++e<u;){var o=Me(t[e]);if(!(i=null!=n&&r(n,o)))break;n=n[o]}return i||++e!=u?i:(u=null==n?0:n.length,!!u&&gu(u)&&Se(o,u)&&(ff(n)||of(n)))}function me(n){var t=n.length,r=new n.constructor(t);return t&&"string"==typeof n[0]&&oi.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function Ae(n){
return typeof n.constructor!="function"||ze(n)?{}:eo(di(n))}function Ee(n,t,r){var e=n.constructor;switch(t){case"[object ArrayBuffer]":return Rr(n);case"[object Boolean]":case"[object Date]":return new e(+n);case"[object DataView]":return t=r?Rr(n.buffer):n.buffer,new n.constructor(t,n.byteOffset,n.byteLength);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":
case"[object Uint16Array]":case"[object Uint32Array]":return zr(n,r);case"[object Map]":return new e;case"[object Number]":case"[object String]":return new e(n);case"[object RegExp]":return t=new n.constructor(n.source,_n.exec(n)),t.lastIndex=n.lastIndex,t;case"[object Set]":return new e;case"[object Symbol]":return to?Qu(to.call(n)):{}}}function ke(n){return ff(n)||of(n)||!!(ji&&n&&n[ji])}function Se(n,t){var r=typeof n;return t=null==t?9007199254740991:t,!!t&&("number"==r||"symbol"!=r&&bn.test(n))&&-1<n&&0==n%1&&n<t;
}function Oe(n,t,r){if(!du(r))return false;var e=typeof t;return!!("number"==e?su(r)&&Se(t,r.length):"string"==e&&t in r)&&lu(r[t],n)}function Ie(n,t){if(ff(n))return false;var r=typeof n;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=n&&!wu(n))||(nn.test(n)||!X.test(n)||null!=t&&n in Qu(t))}function Re(n){var t=ge(n),r=An[t];return typeof r=="function"&&t in Un.prototype&&(n===r||(t=ho(r),!!t&&n===t[0]))}function ze(n){var t=n&&n.constructor;return n===(typeof t=="function"&&t.prototype||ei)}function We(n,t){
return function(r){return null!=r&&(r[n]===t&&(t!==T||n in Qu(r)))}}function Be(t,r,e){return r=Ui(r===T?t.length-1:r,0),function(){for(var u=arguments,i=-1,o=Ui(u.length-r,0),f=Ku(o);++i<o;)f[i]=u[r+i];for(i=-1,o=Ku(r+1);++i<r;)o[i]=u[i];return o[r]=e(f),n(t,this,o)}}function Le(n,t){if(("constructor"!==t||"function"!=typeof n[t])&&"__proto__"!=t)return n[t]}function Ue(n,t,r){var e=t+"";t=xo;var u,i=$e;return u=(u=e.match(an))?u[1].split(ln):[],r=i(u,r),(i=r.length)&&(u=i-1,r[u]=(1<i?"& ":"")+r[u],
r=r.join(2<i?", ":" "),e=e.replace(cn,"{\n/* [wrapped with "+r+"] */\n")),t(n,e)}function Ce(n){var t=0,r=0;return function(){var e=Di(),u=16-(e-r);if(r=e,0<u){if(800<=++t)return arguments[0]}else t=0;return n.apply(T,arguments)}}function De(n,t){var r=-1,e=n.length,u=e-1;for(t=t===T?e:t;++r<t;){var e=ir(r,u),i=n[e];n[e]=n[r],n[r]=i}return n.length=t,n}function Me(n){if(typeof n=="string"||wu(n))return n;var t=n+"";return"0"==t&&1/n==-$?"-0":t}function Te(n){if(null!=n){try{return ii.call(n)}catch(n){}
return n+""}return""}function $e(n,t){return r(N,function(r){var e="_."+r[0];t&r[1]&&!o(n,e)&&n.push(e)}),n.sort()}function Fe(n){if(n instanceof Un)return n.clone();var t=new On(n.__wrapped__,n.__chain__);return t.__actions__=Ur(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function Ne(n,t,r){var e=null==n?0:n.length;return e?(r=null==r?0:Eu(r),0>r&&(r=Ui(e+r,0)),_(n,ye(t,3),r)):-1}function Pe(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e-1;return r!==T&&(u=Eu(r),u=0>r?Ui(e+u,0):Ci(u,e-1)),
_(n,ye(t,3),u,true)}function Ze(n){return(null==n?0:n.length)?wt(n,1):[]}function qe(n){return n&&n.length?n[0]:T}function Ve(n){var t=null==n?0:n.length;return t?n[t-1]:T}function Ke(n,t){return n&&n.length&&t&&t.length?er(n,t):n}function Ge(n){return null==n?n:$i.call(n)}function He(n){if(!n||!n.length)return[];var t=0;return n=i(n,function(n){if(hu(n))return t=Ui(n.length,t),true}),A(t,function(t){return c(n,b(t))})}function Je(t,r){if(!t||!t.length)return[];var e=He(t);return null==r?e:c(e,function(t){
return n(r,T,t)})}function Ye(n){return n=An(n),n.__chain__=true,n}function Qe(n,t){return t(n)}function Xe(){return this}function nu(n,t){return(ff(n)?r:uo)(n,ye(t,3))}function tu(n,t){return(ff(n)?e:io)(n,ye(t,3))}function ru(n,t){return(ff(n)?c:Gt)(n,ye(t,3))}function eu(n,t,r){return t=r?T:t,t=n&&null==t?n.length:t,fe(n,128,T,T,T,T,t)}function uu(n,t){var r;if(typeof t!="function")throw new ti("Expected a function");return n=Eu(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=T),
r}}function iu(n,t,r){return t=r?T:t,n=fe(n,8,T,T,T,T,T,t),n.placeholder=iu.placeholder,n}function ou(n,t,r){return t=r?T:t,n=fe(n,16,T,T,T,T,T,t),n.placeholder=ou.placeholder,n}function fu(n,t,r){function e(t){var r=c,e=a;return c=a=T,_=t,s=n.apply(e,r)}function u(n){var r=n-p;return n-=_,p===T||r>=t||0>r||g&&n>=l}function i(){var n=Go();if(u(n))return o(n);var r,e=bo;r=n-_,n=t-(n-p),r=g?Ci(n,l-r):n,h=e(i,r)}function o(n){return h=T,d&&c?e(n):(c=a=T,s)}function f(){var n=Go(),r=u(n);if(c=arguments,
a=this,p=n,r){if(h===T)return _=n=p,h=bo(i,t),v?e(n):s;if(g)return lo(h),h=bo(i,t),e(p)}return h===T&&(h=bo(i,t)),s}var c,a,l,s,h,p,_=0,v=false,g=false,d=true;if(typeof n!="function")throw new ti("Expected a function");return t=Su(t)||0,du(r)&&(v=!!r.leading,l=(g="maxWait"in r)?Ui(Su(r.maxWait)||0,t):l,d="trailing"in r?!!r.trailing:d),f.cancel=function(){h!==T&&lo(h),_=0,c=p=a=h=T},f.flush=function(){return h===T?s:o(Go())},f}function cu(n,t){function r(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;
return i.has(u)?i.get(u):(e=n.apply(this,e),r.cache=i.set(u,e)||i,e)}if(typeof n!="function"||null!=t&&typeof t!="function")throw new ti("Expected a function");return r.cache=new(cu.Cache||Fn),r}function au(n){if(typeof n!="function")throw new ti("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function lu(n,t){return n===t||n!==n&&t!==t;
}function su(n){return null!=n&&gu(n.length)&&!_u(n)}function hu(n){return yu(n)&&su(n)}function pu(n){if(!yu(n))return false;var t=Ot(n);return"[object Error]"==t||"[object DOMException]"==t||typeof n.message=="string"&&typeof n.name=="string"&&!xu(n)}function _u(n){return!!du(n)&&(n=Ot(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function vu(n){return typeof n=="number"&&n==Eu(n)}function gu(n){return typeof n=="number"&&-1<n&&0==n%1&&9007199254740991>=n;
}function du(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}function yu(n){return null!=n&&typeof n=="object"}function bu(n){return typeof n=="number"||yu(n)&&"[object Number]"==Ot(n)}function xu(n){return!(!yu(n)||"[object Object]"!=Ot(n))&&(n=di(n),null===n||(n=oi.call(n,"constructor")&&n.constructor,typeof n=="function"&&n instanceof n&&ii.call(n)==li))}function ju(n){return typeof n=="string"||!ff(n)&&yu(n)&&"[object String]"==Ot(n)}function wu(n){return typeof n=="symbol"||yu(n)&&"[object Symbol]"==Ot(n);
}function mu(n){if(!n)return[];if(su(n))return ju(n)?M(n):Ur(n);if(wi&&n[wi]){n=n[wi]();for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}return t=vo(n),("[object Map]"==t?W:"[object Set]"==t?U:Uu)(n)}function Au(n){return n?(n=Su(n),n===$||n===-$?1.7976931348623157e308*(0>n?-1:1):n===n?n:0):0===n?n:0}function Eu(n){n=Au(n);var t=n%1;return n===n?t?n-t:n:0}function ku(n){return n?pt(Eu(n),0,4294967295):0}function Su(n){if(typeof n=="number")return n;if(wu(n))return F;if(du(n)&&(n=typeof n.valueOf=="function"?n.valueOf():n,
n=du(n)?n+"":n),typeof n!="string")return 0===n?n:+n;n=n.replace(un,"");var t=gn.test(n);return t||yn.test(n)?Dn(n.slice(2),t?2:8):vn.test(n)?F:+n}function Ou(n){return Cr(n,Bu(n))}function Iu(n){return null==n?"":yr(n)}function Ru(n,t,r){return n=null==n?T:kt(n,t),n===T?r:n}function zu(n,t){return null!=n&&we(n,t,zt)}function Wu(n){return su(n)?qn(n):Vt(n)}function Bu(n){if(su(n))n=qn(n,true);else if(du(n)){var t,r=ze(n),e=[];for(t in n)("constructor"!=t||!r&&oi.call(n,t))&&e.push(t);n=e}else{if(t=[],
null!=n)for(r in Qu(n))t.push(r);n=t}return n}function Lu(n,t){if(null==n)return{};var r=c(ve(n),function(n){return[n]});return t=ye(t),tr(n,r,function(n,r){return t(n,r[0])})}function Uu(n){return null==n?[]:S(n,Wu(n))}function Cu(n){return $f(Iu(n).toLowerCase())}function Du(n){return(n=Iu(n))&&n.replace(xn,Xn).replace(Sn,"")}function Mu(n,t,r){return n=Iu(n),t=r?T:t,t===T?zn.test(n)?n.match(In)||[]:n.match(sn)||[]:n.match(t)||[]}function Tu(n){return function(){return n}}function $u(n){return n;
}function Fu(n){return qt(typeof n=="function"?n:_t(n,1))}function Nu(n,t,e){var u=Wu(t),i=Et(t,u);null!=e||du(t)&&(i.length||!u.length)||(e=t,t=n,n=this,i=Et(t,Wu(t)));var o=!(du(e)&&"chain"in e&&!e.chain),f=_u(n);return r(i,function(r){var e=t[r];n[r]=e,f&&(n.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=n(this.__wrapped__);return(r.__actions__=Ur(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,a([this.value()],arguments))})}),n}function Pu(){}
function Zu(n){return Ie(n)?b(Me(n)):rr(n)}function qu(){return[]}function Vu(){return false}mn=null==mn?$n:rt.defaults($n.Object(),mn,rt.pick($n,Wn));var Ku=mn.Array,Gu=mn.Date,Hu=mn.Error,Ju=mn.Function,Yu=mn.Math,Qu=mn.Object,Xu=mn.RegExp,ni=mn.String,ti=mn.TypeError,ri=Ku.prototype,ei=Qu.prototype,ui=mn["__core-js_shared__"],ii=Ju.prototype.toString,oi=ei.hasOwnProperty,fi=0,ci=function(){var n=/[^.]+$/.exec(ui&&ui.keys&&ui.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),ai=ei.toString,li=ii.call(Qu),si=$n._,hi=Xu("^"+ii.call(oi).replace(rn,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),pi=Pn?mn.Buffer:T,_i=mn.Symbol,vi=mn.Uint8Array,gi=pi?pi.g:T,di=B(Qu.getPrototypeOf,Qu),yi=Qu.create,bi=ei.propertyIsEnumerable,xi=ri.splice,ji=_i?_i.isConcatSpreadable:T,wi=_i?_i.iterator:T,mi=_i?_i.toStringTag:T,Ai=function(){
try{var n=je(Qu,"defineProperty");return n({},"",{}),n}catch(n){}}(),Ei=mn.clearTimeout!==$n.clearTimeout&&mn.clearTimeout,ki=Gu&&Gu.now!==$n.Date.now&&Gu.now,Si=mn.setTimeout!==$n.setTimeout&&mn.setTimeout,Oi=Yu.ceil,Ii=Yu.floor,Ri=Qu.getOwnPropertySymbols,zi=pi?pi.isBuffer:T,Wi=mn.isFinite,Bi=ri.join,Li=B(Qu.keys,Qu),Ui=Yu.max,Ci=Yu.min,Di=Gu.now,Mi=mn.parseInt,Ti=Yu.random,$i=ri.reverse,Fi=je(mn,"DataView"),Ni=je(mn,"Map"),Pi=je(mn,"Promise"),Zi=je(mn,"Set"),qi=je(mn,"WeakMap"),Vi=je(Qu,"create"),Ki=qi&&new qi,Gi={},Hi=Te(Fi),Ji=Te(Ni),Yi=Te(Pi),Qi=Te(Zi),Xi=Te(qi),no=_i?_i.prototype:T,to=no?no.valueOf:T,ro=no?no.toString:T,eo=function(){
function n(){}return function(t){return du(t)?yi?yi(t):(n.prototype=t,t=new n,n.prototype=T,t):{}}}();An.templateSettings={escape:J,evaluate:Y,interpolate:Q,variable:"",imports:{_:An}},An.prototype=En.prototype,An.prototype.constructor=An,On.prototype=eo(En.prototype),On.prototype.constructor=On,Un.prototype=eo(En.prototype),Un.prototype.constructor=Un,Mn.prototype.clear=function(){this.__data__=Vi?Vi(null):{},this.size=0},Mn.prototype.delete=function(n){return n=this.has(n)&&delete this.__data__[n],
this.size-=n?1:0,n},Mn.prototype.get=function(n){var t=this.__data__;return Vi?(n=t[n],"__lodash_hash_undefined__"===n?T:n):oi.call(t,n)?t[n]:T},Mn.prototype.has=function(n){var t=this.__data__;return Vi?t[n]!==T:oi.call(t,n)},Mn.prototype.set=function(n,t){var r=this.__data__;return this.size+=this.has(n)?0:1,r[n]=Vi&&t===T?"__lodash_hash_undefined__":t,this},Tn.prototype.clear=function(){this.__data__=[],this.size=0},Tn.prototype.delete=function(n){var t=this.__data__;return n=ft(t,n),!(0>n)&&(n==t.length-1?t.pop():xi.call(t,n,1),
--this.size,true)},Tn.prototype.get=function(n){var t=this.__data__;return n=ft(t,n),0>n?T:t[n][1]},Tn.prototype.has=function(n){return-1<ft(this.__data__,n)},Tn.prototype.set=function(n,t){var r=this.__data__,e=ft(r,n);return 0>e?(++this.size,r.push([n,t])):r[e][1]=t,this},Fn.prototype.clear=function(){this.size=0,this.__data__={hash:new Mn,map:new(Ni||Tn),string:new Mn}},Fn.prototype.delete=function(n){return n=be(this,n).delete(n),this.size-=n?1:0,n},Fn.prototype.get=function(n){return be(this,n).get(n);
},Fn.prototype.has=function(n){return be(this,n).has(n)},Fn.prototype.set=function(n,t){var r=be(this,n),e=r.size;return r.set(n,t),this.size+=r.size==e?0:1,this},Nn.prototype.add=Nn.prototype.push=function(n){return this.__data__.set(n,"__lodash_hash_undefined__"),this},Nn.prototype.has=function(n){return this.__data__.has(n)},Zn.prototype.clear=function(){this.__data__=new Tn,this.size=0},Zn.prototype.delete=function(n){var t=this.__data__;return n=t.delete(n),this.size=t.size,n},Zn.prototype.get=function(n){
return this.__data__.get(n)},Zn.prototype.has=function(n){return this.__data__.has(n)},Zn.prototype.set=function(n,t){var r=this.__data__;if(r instanceof Tn){var e=r.__data__;if(!Ni||199>e.length)return e.push([n,t]),this.size=++r.size,this;r=this.__data__=new Fn(e)}return r.set(n,t),this.size=r.size,this};var uo=Fr(mt),io=Fr(At,true),oo=Nr(),fo=Nr(true),co=Ki?function(n,t){return Ki.set(n,t),n}:$u,ao=Ai?function(n,t){return Ai(n,"toString",{configurable:true,enumerable:false,value:Tu(t),writable:true})}:$u,lo=Ei||function(n){
return $n.clearTimeout(n)},so=Zi&&1/U(new Zi([,-0]))[1]==$?function(n){return new Zi(n)}:Pu,ho=Ki?function(n){return Ki.get(n)}:Pu,po=Ri?function(n){return null==n?[]:(n=Qu(n),i(Ri(n),function(t){return bi.call(n,t)}))}:qu,_o=Ri?function(n){for(var t=[];n;)a(t,po(n)),n=di(n);return t}:qu,vo=Ot;(Fi&&"[object DataView]"!=vo(new Fi(new ArrayBuffer(1)))||Ni&&"[object Map]"!=vo(new Ni)||Pi&&"[object Promise]"!=vo(Pi.resolve())||Zi&&"[object Set]"!=vo(new Zi)||qi&&"[object WeakMap]"!=vo(new qi))&&(vo=function(n){
var t=Ot(n);if(n=(n="[object Object]"==t?n.constructor:T)?Te(n):"")switch(n){case Hi:return"[object DataView]";case Ji:return"[object Map]";case Yi:return"[object Promise]";case Qi:return"[object Set]";case Xi:return"[object WeakMap]"}return t});var go=ui?_u:Vu,yo=Ce(co),bo=Si||function(n,t){return $n.setTimeout(n,t)},xo=Ce(ao),jo=function(n){n=cu(n,function(n){return 500===t.size&&t.clear(),n});var t=n.cache;return n}(function(n){var t=[];return 46===n.charCodeAt(0)&&t.push(""),n.replace(tn,function(n,r,e,u){
t.push(e?u.replace(hn,"$1"):r||n)}),t}),wo=fr(function(n,t){return hu(n)?yt(n,wt(t,1,hu,true)):[]}),mo=fr(function(n,t){var r=Ve(t);return hu(r)&&(r=T),hu(n)?yt(n,wt(t,1,hu,true),ye(r,2)):[]}),Ao=fr(function(n,t){var r=Ve(t);return hu(r)&&(r=T),hu(n)?yt(n,wt(t,1,hu,true),T,r):[]}),Eo=fr(function(n){var t=c(n,Er);return t.length&&t[0]===n[0]?Wt(t):[]}),ko=fr(function(n){var t=Ve(n),r=c(n,Er);return t===Ve(r)?t=T:r.pop(),r.length&&r[0]===n[0]?Wt(r,ye(t,2)):[]}),So=fr(function(n){var t=Ve(n),r=c(n,Er);return(t=typeof t=="function"?t:T)&&r.pop(),
r.length&&r[0]===n[0]?Wt(r,T,t):[]}),Oo=fr(Ke),Io=pe(function(n,t){var r=null==n?0:n.length,e=ht(n,t);return ur(n,c(t,function(n){return Se(n,r)?+n:n}).sort(Wr)),e}),Ro=fr(function(n){return br(wt(n,1,hu,true))}),zo=fr(function(n){var t=Ve(n);return hu(t)&&(t=T),br(wt(n,1,hu,true),ye(t,2))}),Wo=fr(function(n){var t=Ve(n),t=typeof t=="function"?t:T;return br(wt(n,1,hu,true),T,t)}),Bo=fr(function(n,t){return hu(n)?yt(n,t):[]}),Lo=fr(function(n){return mr(i(n,hu))}),Uo=fr(function(n){var t=Ve(n);return hu(t)&&(t=T),
mr(i(n,hu),ye(t,2))}),Co=fr(function(n){var t=Ve(n),t=typeof t=="function"?t:T;return mr(i(n,hu),T,t)}),Do=fr(He),Mo=fr(function(n){var t=n.length,t=1<t?n[t-1]:T,t=typeof t=="function"?(n.pop(),t):T;return Je(n,t)}),To=pe(function(n){function t(t){return ht(t,n)}var r=n.length,e=r?n[0]:0,u=this.__wrapped__;return!(1<r||this.__actions__.length)&&u instanceof Un&&Se(e)?(u=u.slice(e,+e+(r?1:0)),u.__actions__.push({func:Qe,args:[t],thisArg:T}),new On(u,this.__chain__).thru(function(n){return r&&!n.length&&n.push(T),
n})):this.thru(t)}),$o=Tr(function(n,t,r){oi.call(n,r)?++n[r]:st(n,r,1)}),Fo=Gr(Ne),No=Gr(Pe),Po=Tr(function(n,t,r){oi.call(n,r)?n[r].push(t):st(n,r,[t])}),Zo=fr(function(t,r,e){var u=-1,i=typeof r=="function",o=su(t)?Ku(t.length):[];return uo(t,function(t){o[++u]=i?n(r,t,e):Lt(t,r,e)}),o}),qo=Tr(function(n,t,r){st(n,r,t)}),Vo=Tr(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),Ko=fr(function(n,t){if(null==n)return[];var r=t.length;return 1<r&&Oe(n,t[0],t[1])?t=[]:2<r&&Oe(t[0],t[1],t[2])&&(t=[t[0]]),
Xt(n,wt(t,1),[])}),Go=ki||function(){return $n.Date.now()},Ho=fr(function(n,t,r){var e=1;if(r.length)var u=L(r,de(Ho)),e=32|e;return fe(n,e,t,r,u)}),Jo=fr(function(n,t,r){var e=3;if(r.length)var u=L(r,de(Jo)),e=32|e;return fe(t,e,n,r,u)}),Yo=fr(function(n,t){return dt(n,1,t)}),Qo=fr(function(n,t,r){return dt(n,Su(t)||0,r)});cu.Cache=Fn;var Xo=fr(function(t,r){r=1==r.length&&ff(r[0])?c(r[0],k(ye())):c(wt(r,1),k(ye()));var e=r.length;return fr(function(u){for(var i=-1,o=Ci(u.length,e);++i<o;)u[i]=r[i].call(this,u[i]);
return n(t,this,u)})}),nf=fr(function(n,t){return fe(n,32,T,t,L(t,de(nf)))}),tf=fr(function(n,t){return fe(n,64,T,t,L(t,de(tf)))}),rf=pe(function(n,t){return fe(n,256,T,T,T,t)}),ef=ee(It),uf=ee(function(n,t){return n>=t}),of=Ut(function(){return arguments}())?Ut:function(n){return yu(n)&&oi.call(n,"callee")&&!bi.call(n,"callee")},ff=Ku.isArray,cf=Vn?k(Vn):Ct,af=zi||Vu,lf=Kn?k(Kn):Dt,sf=Gn?k(Gn):Tt,hf=Hn?k(Hn):Nt,pf=Jn?k(Jn):Pt,_f=Yn?k(Yn):Zt,vf=ee(Kt),gf=ee(function(n,t){return n<=t}),df=$r(function(n,t){
if(ze(t)||su(t))Cr(t,Wu(t),n);else for(var r in t)oi.call(t,r)&&ot(n,r,t[r])}),yf=$r(function(n,t){Cr(t,Bu(t),n)}),bf=$r(function(n,t,r,e){Cr(t,Bu(t),n,e)}),xf=$r(function(n,t,r,e){Cr(t,Wu(t),n,e)}),jf=pe(ht),wf=fr(function(n,t){n=Qu(n);var r=-1,e=t.length,u=2<e?t[2]:T;for(u&&Oe(t[0],t[1],u)&&(e=1);++r<e;)for(var u=t[r],i=Bu(u),o=-1,f=i.length;++o<f;){var c=i[o],a=n[c];(a===T||lu(a,ei[c])&&!oi.call(n,c))&&(n[c]=u[c])}return n}),mf=fr(function(t){return t.push(T,ae),n(Of,T,t)}),Af=Yr(function(n,t,r){
null!=t&&typeof t.toString!="function"&&(t=ai.call(t)),n[t]=r},Tu($u)),Ef=Yr(function(n,t,r){null!=t&&typeof t.toString!="function"&&(t=ai.call(t)),oi.call(n,t)?n[t].push(r):n[t]=[r]},ye),kf=fr(Lt),Sf=$r(function(n,t,r){Yt(n,t,r)}),Of=$r(function(n,t,r,e){Yt(n,t,r,e)}),If=pe(function(n,t){var r={};if(null==n)return r;var e=false;t=c(t,function(t){return t=Sr(t,n),e||(e=1<t.length),t}),Cr(n,ve(n),r),e&&(r=_t(r,7,le));for(var u=t.length;u--;)xr(r,t[u]);return r}),Rf=pe(function(n,t){return null==n?{}:nr(n,t);
}),zf=oe(Wu),Wf=oe(Bu),Bf=qr(function(n,t,r){return t=t.toLowerCase(),n+(r?Cu(t):t)}),Lf=qr(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()}),Uf=qr(function(n,t,r){return n+(r?" ":"")+t.toLowerCase()}),Cf=Zr("toLowerCase"),Df=qr(function(n,t,r){return n+(r?"_":"")+t.toLowerCase()}),Mf=qr(function(n,t,r){return n+(r?" ":"")+$f(t)}),Tf=qr(function(n,t,r){return n+(r?" ":"")+t.toUpperCase()}),$f=Zr("toUpperCase"),Ff=fr(function(t,r){try{return n(t,T,r)}catch(n){return pu(n)?n:new Hu(n)}}),Nf=pe(function(n,t){
return r(t,function(t){t=Me(t),st(n,t,Ho(n[t],n))}),n}),Pf=Hr(),Zf=Hr(true),qf=fr(function(n,t){return function(r){return Lt(r,n,t)}}),Vf=fr(function(n,t){return function(r){return Lt(n,r,t)}}),Kf=Xr(c),Gf=Xr(u),Hf=Xr(h),Jf=re(),Yf=re(true),Qf=Qr(function(n,t){return n+t},0),Xf=ie("ceil"),nc=Qr(function(n,t){return n/t},1),tc=ie("floor"),rc=Qr(function(n,t){return n*t},1),ec=ie("round"),uc=Qr(function(n,t){return n-t},0);return An.after=function(n,t){if(typeof t!="function")throw new ti("Expected a function");
return n=Eu(n),function(){if(1>--n)return t.apply(this,arguments)}},An.ary=eu,An.assign=df,An.assignIn=yf,An.assignInWith=bf,An.assignWith=xf,An.at=jf,An.before=uu,An.bind=Ho,An.bindAll=Nf,An.bindKey=Jo,An.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return ff(n)?n:[n]},An.chain=Ye,An.chunk=function(n,t,r){if(t=(r?Oe(n,t,r):t===T)?1:Ui(Eu(t),0),r=null==n?0:n.length,!r||1>t)return[];for(var e=0,u=0,i=Ku(Oi(r/t));e<r;)i[u++]=hr(n,e,e+=t);return i},An.compact=function(n){for(var t=-1,r=null==n?0:n.length,e=0,u=[];++t<r;){
var i=n[t];i&&(u[e++]=i)}return u},An.concat=function(){var n=arguments.length;if(!n)return[];for(var t=Ku(n-1),r=arguments[0];n--;)t[n-1]=arguments[n];return a(ff(r)?Ur(r):[r],wt(t,1))},An.cond=function(t){var r=null==t?0:t.length,e=ye();return t=r?c(t,function(n){if("function"!=typeof n[1])throw new ti("Expected a function");return[e(n[0]),n[1]]}):[],fr(function(e){for(var u=-1;++u<r;){var i=t[u];if(n(i[0],this,e))return n(i[1],this,e)}})},An.conforms=function(n){return vt(_t(n,1))},An.constant=Tu,
An.countBy=$o,An.create=function(n,t){var r=eo(n);return null==t?r:at(r,t)},An.curry=iu,An.curryRight=ou,An.debounce=fu,An.defaults=wf,An.defaultsDeep=mf,An.defer=Yo,An.delay=Qo,An.difference=wo,An.differenceBy=mo,An.differenceWith=Ao,An.drop=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===T?1:Eu(t),hr(n,0>t?0:t,e)):[]},An.dropRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===T?1:Eu(t),t=e-t,hr(n,0,0>t?0:t)):[]},An.dropRightWhile=function(n,t){return n&&n.length?jr(n,ye(t,3),true,true):[];
},An.dropWhile=function(n,t){return n&&n.length?jr(n,ye(t,3),true):[]},An.fill=function(n,t,r,e){var u=null==n?0:n.length;if(!u)return[];for(r&&typeof r!="number"&&Oe(n,t,r)&&(r=0,e=u),u=n.length,r=Eu(r),0>r&&(r=-r>u?0:u+r),e=e===T||e>u?u:Eu(e),0>e&&(e+=u),e=r>e?0:ku(e);r<e;)n[r++]=t;return n},An.filter=function(n,t){return(ff(n)?i:jt)(n,ye(t,3))},An.flatMap=function(n,t){return wt(ru(n,t),1)},An.flatMapDeep=function(n,t){return wt(ru(n,t),$)},An.flatMapDepth=function(n,t,r){return r=r===T?1:Eu(r),
wt(ru(n,t),r)},An.flatten=Ze,An.flattenDeep=function(n){return(null==n?0:n.length)?wt(n,$):[]},An.flattenDepth=function(n,t){return null!=n&&n.length?(t=t===T?1:Eu(t),wt(n,t)):[]},An.flip=function(n){return fe(n,512)},An.flow=Pf,An.flowRight=Zf,An.fromPairs=function(n){for(var t=-1,r=null==n?0:n.length,e={};++t<r;){var u=n[t];e[u[0]]=u[1]}return e},An.functions=function(n){return null==n?[]:Et(n,Wu(n))},An.functionsIn=function(n){return null==n?[]:Et(n,Bu(n))},An.groupBy=Po,An.initial=function(n){
return(null==n?0:n.length)?hr(n,0,-1):[]},An.intersection=Eo,An.intersectionBy=ko,An.intersectionWith=So,An.invert=Af,An.invertBy=Ef,An.invokeMap=Zo,An.iteratee=Fu,An.keyBy=qo,An.keys=Wu,An.keysIn=Bu,An.map=ru,An.mapKeys=function(n,t){var r={};return t=ye(t,3),mt(n,function(n,e,u){st(r,t(n,e,u),n)}),r},An.mapValues=function(n,t){var r={};return t=ye(t,3),mt(n,function(n,e,u){st(r,e,t(n,e,u))}),r},An.matches=function(n){return Ht(_t(n,1))},An.matchesProperty=function(n,t){return Jt(n,_t(t,1))},An.memoize=cu,
An.merge=Sf,An.mergeWith=Of,An.method=qf,An.methodOf=Vf,An.mixin=Nu,An.negate=au,An.nthArg=function(n){return n=Eu(n),fr(function(t){return Qt(t,n)})},An.omit=If,An.omitBy=function(n,t){return Lu(n,au(ye(t)))},An.once=function(n){return uu(2,n)},An.orderBy=function(n,t,r,e){return null==n?[]:(ff(t)||(t=null==t?[]:[t]),r=e?T:r,ff(r)||(r=null==r?[]:[r]),Xt(n,t,r))},An.over=Kf,An.overArgs=Xo,An.overEvery=Gf,An.overSome=Hf,An.partial=nf,An.partialRight=tf,An.partition=Vo,An.pick=Rf,An.pickBy=Lu,An.property=Zu,
An.propertyOf=function(n){return function(t){return null==n?T:kt(n,t)}},An.pull=Oo,An.pullAll=Ke,An.pullAllBy=function(n,t,r){return n&&n.length&&t&&t.length?er(n,t,ye(r,2)):n},An.pullAllWith=function(n,t,r){return n&&n.length&&t&&t.length?er(n,t,T,r):n},An.pullAt=Io,An.range=Jf,An.rangeRight=Yf,An.rearg=rf,An.reject=function(n,t){return(ff(n)?i:jt)(n,au(ye(t,3)))},An.remove=function(n,t){var r=[];if(!n||!n.length)return r;var e=-1,u=[],i=n.length;for(t=ye(t,3);++e<i;){var o=n[e];t(o,e,n)&&(r.push(o),
u.push(e))}return ur(n,u),r},An.rest=function(n,t){if(typeof n!="function")throw new ti("Expected a function");return t=t===T?t:Eu(t),fr(n,t)},An.reverse=Ge,An.sampleSize=function(n,t,r){return t=(r?Oe(n,t,r):t===T)?1:Eu(t),(ff(n)?et:ar)(n,t)},An.set=function(n,t,r){return null==n?n:lr(n,t,r)},An.setWith=function(n,t,r,e){return e=typeof e=="function"?e:T,null==n?n:lr(n,t,r,e)},An.shuffle=function(n){return(ff(n)?ut:sr)(n)},An.slice=function(n,t,r){var e=null==n?0:n.length;return e?(r&&typeof r!="number"&&Oe(n,t,r)?(t=0,
r=e):(t=null==t?0:Eu(t),r=r===T?e:Eu(r)),hr(n,t,r)):[]},An.sortBy=Ko,An.sortedUniq=function(n){return n&&n.length?gr(n):[]},An.sortedUniqBy=function(n,t){return n&&n.length?gr(n,ye(t,2)):[]},An.split=function(n,t,r){return r&&typeof r!="number"&&Oe(n,t,r)&&(t=r=T),r=r===T?4294967295:r>>>0,r?(n=Iu(n))&&(typeof t=="string"||null!=t&&!hf(t))&&(t=yr(t),!t&&Rn.test(n))?Or(M(n),0,r):n.split(t,r):[]},An.spread=function(t,r){if(typeof t!="function")throw new ti("Expected a function");return r=null==r?0:Ui(Eu(r),0),
fr(function(e){var u=e[r];return e=Or(e,0,r),u&&a(e,u),n(t,this,e)})},An.tail=function(n){var t=null==n?0:n.length;return t?hr(n,1,t):[]},An.take=function(n,t,r){return n&&n.length?(t=r||t===T?1:Eu(t),hr(n,0,0>t?0:t)):[]},An.takeRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===T?1:Eu(t),t=e-t,hr(n,0>t?0:t,e)):[]},An.takeRightWhile=function(n,t){return n&&n.length?jr(n,ye(t,3),false,true):[]},An.takeWhile=function(n,t){return n&&n.length?jr(n,ye(t,3)):[]},An.tap=function(n,t){return t(n),
n},An.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new ti("Expected a function");return du(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),fu(n,t,{leading:e,maxWait:t,trailing:u})},An.thru=Qe,An.toArray=mu,An.toPairs=zf,An.toPairsIn=Wf,An.toPath=function(n){return ff(n)?c(n,Me):wu(n)?[n]:Ur(jo(Iu(n)))},An.toPlainObject=Ou,An.transform=function(n,t,e){var u=ff(n),i=u||af(n)||_f(n);if(t=ye(t,4),null==e){var o=n&&n.constructor;e=i?u?new o:[]:du(n)&&_u(o)?eo(di(n)):{};
}return(i?r:mt)(n,function(n,r,u){return t(e,n,r,u)}),e},An.unary=function(n){return eu(n,1)},An.union=Ro,An.unionBy=zo,An.unionWith=Wo,An.uniq=function(n){return n&&n.length?br(n):[]},An.uniqBy=function(n,t){return n&&n.length?br(n,ye(t,2)):[]},An.uniqWith=function(n,t){return t=typeof t=="function"?t:T,n&&n.length?br(n,T,t):[]},An.unset=function(n,t){return null==n||xr(n,t)},An.unzip=He,An.unzipWith=Je,An.update=function(n,t,r){return null==n?n:lr(n,t,kr(r)(kt(n,t)),void 0)},An.updateWith=function(n,t,r,e){
return e=typeof e=="function"?e:T,null!=n&&(n=lr(n,t,kr(r)(kt(n,t)),e)),n},An.values=Uu,An.valuesIn=function(n){return null==n?[]:S(n,Bu(n))},An.without=Bo,An.words=Mu,An.wrap=function(n,t){return nf(kr(t),n)},An.xor=Lo,An.xorBy=Uo,An.xorWith=Co,An.zip=Do,An.zipObject=function(n,t){return Ar(n||[],t||[],ot)},An.zipObjectDeep=function(n,t){return Ar(n||[],t||[],lr)},An.zipWith=Mo,An.entries=zf,An.entriesIn=Wf,An.extend=yf,An.extendWith=bf,Nu(An,An),An.add=Qf,An.attempt=Ff,An.camelCase=Bf,An.capitalize=Cu,
An.ceil=Xf,An.clamp=function(n,t,r){return r===T&&(r=t,t=T),r!==T&&(r=Su(r),r=r===r?r:0),t!==T&&(t=Su(t),t=t===t?t:0),pt(Su(n),t,r)},An.clone=function(n){return _t(n,4)},An.cloneDeep=function(n){return _t(n,5)},An.cloneDeepWith=function(n,t){return t=typeof t=="function"?t:T,_t(n,5,t)},An.cloneWith=function(n,t){return t=typeof t=="function"?t:T,_t(n,4,t)},An.conformsTo=function(n,t){return null==t||gt(n,t,Wu(t))},An.deburr=Du,An.defaultTo=function(n,t){return null==n||n!==n?t:n},An.divide=nc,An.endsWith=function(n,t,r){
n=Iu(n),t=yr(t);var e=n.length,e=r=r===T?e:pt(Eu(r),0,e);return r-=t.length,0<=r&&n.slice(r,e)==t},An.eq=lu,An.escape=function(n){return(n=Iu(n))&&H.test(n)?n.replace(K,nt):n},An.escapeRegExp=function(n){return(n=Iu(n))&&en.test(n)?n.replace(rn,"\\$&"):n},An.every=function(n,t,r){var e=ff(n)?u:bt;return r&&Oe(n,t,r)&&(t=T),e(n,ye(t,3))},An.find=Fo,An.findIndex=Ne,An.findKey=function(n,t){return p(n,ye(t,3),mt)},An.findLast=No,An.findLastIndex=Pe,An.findLastKey=function(n,t){return p(n,ye(t,3),At);
},An.floor=tc,An.forEach=nu,An.forEachRight=tu,An.forIn=function(n,t){return null==n?n:oo(n,ye(t,3),Bu)},An.forInRight=function(n,t){return null==n?n:fo(n,ye(t,3),Bu)},An.forOwn=function(n,t){return n&&mt(n,ye(t,3))},An.forOwnRight=function(n,t){return n&&At(n,ye(t,3))},An.get=Ru,An.gt=ef,An.gte=uf,An.has=function(n,t){return null!=n&&we(n,t,Rt)},An.hasIn=zu,An.head=qe,An.identity=$u,An.includes=function(n,t,r,e){return n=su(n)?n:Uu(n),r=r&&!e?Eu(r):0,e=n.length,0>r&&(r=Ui(e+r,0)),ju(n)?r<=e&&-1<n.indexOf(t,r):!!e&&-1<v(n,t,r);
},An.indexOf=function(n,t,r){var e=null==n?0:n.length;return e?(r=null==r?0:Eu(r),0>r&&(r=Ui(e+r,0)),v(n,t,r)):-1},An.inRange=function(n,t,r){return t=Au(t),r===T?(r=t,t=0):r=Au(r),n=Su(n),n>=Ci(t,r)&&n<Ui(t,r)},An.invoke=kf,An.isArguments=of,An.isArray=ff,An.isArrayBuffer=cf,An.isArrayLike=su,An.isArrayLikeObject=hu,An.isBoolean=function(n){return true===n||false===n||yu(n)&&"[object Boolean]"==Ot(n)},An.isBuffer=af,An.isDate=lf,An.isElement=function(n){return yu(n)&&1===n.nodeType&&!xu(n)},An.isEmpty=function(n){
if(null==n)return true;if(su(n)&&(ff(n)||typeof n=="string"||typeof n.splice=="function"||af(n)||_f(n)||of(n)))return!n.length;var t=vo(n);if("[object Map]"==t||"[object Set]"==t)return!n.size;if(ze(n))return!Vt(n).length;for(var r in n)if(oi.call(n,r))return false;return true},An.isEqual=function(n,t){return Mt(n,t)},An.isEqualWith=function(n,t,r){var e=(r=typeof r=="function"?r:T)?r(n,t):T;return e===T?Mt(n,t,T,r):!!e},An.isError=pu,An.isFinite=function(n){return typeof n=="number"&&Wi(n)},An.isFunction=_u,
An.isInteger=vu,An.isLength=gu,An.isMap=sf,An.isMatch=function(n,t){return n===t||$t(n,t,xe(t))},An.isMatchWith=function(n,t,r){return r=typeof r=="function"?r:T,$t(n,t,xe(t),r)},An.isNaN=function(n){return bu(n)&&n!=+n},An.isNative=function(n){if(go(n))throw new Hu("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ft(n)},An.isNil=function(n){return null==n},An.isNull=function(n){return null===n},An.isNumber=bu,An.isObject=du,An.isObjectLike=yu,An.isPlainObject=xu,An.isRegExp=hf,
An.isSafeInteger=function(n){return vu(n)&&-9007199254740991<=n&&9007199254740991>=n},An.isSet=pf,An.isString=ju,An.isSymbol=wu,An.isTypedArray=_f,An.isUndefined=function(n){return n===T},An.isWeakMap=function(n){return yu(n)&&"[object WeakMap]"==vo(n)},An.isWeakSet=function(n){return yu(n)&&"[object WeakSet]"==Ot(n)},An.join=function(n,t){return null==n?"":Bi.call(n,t)},An.kebabCase=Lf,An.last=Ve,An.lastIndexOf=function(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e;if(r!==T&&(u=Eu(r),u=0>u?Ui(e+u,0):Ci(u,e-1)),
t===t){for(r=u+1;r--&&n[r]!==t;);n=r}else n=_(n,d,u,true);return n},An.lowerCase=Uf,An.lowerFirst=Cf,An.lt=vf,An.lte=gf,An.max=function(n){return n&&n.length?xt(n,$u,It):T},An.maxBy=function(n,t){return n&&n.length?xt(n,ye(t,2),It):T},An.mean=function(n){return y(n,$u)},An.meanBy=function(n,t){return y(n,ye(t,2))},An.min=function(n){return n&&n.length?xt(n,$u,Kt):T},An.minBy=function(n,t){return n&&n.length?xt(n,ye(t,2),Kt):T},An.stubArray=qu,An.stubFalse=Vu,An.stubObject=function(){return{}},An.stubString=function(){
return""},An.stubTrue=function(){return true},An.multiply=rc,An.nth=function(n,t){return n&&n.length?Qt(n,Eu(t)):T},An.noConflict=function(){return $n._===this&&($n._=si),this},An.noop=Pu,An.now=Go,An.pad=function(n,t,r){n=Iu(n);var e=(t=Eu(t))?D(n):0;return!t||e>=t?n:(t=(t-e)/2,ne(Ii(t),r)+n+ne(Oi(t),r))},An.padEnd=function(n,t,r){n=Iu(n);var e=(t=Eu(t))?D(n):0;return t&&e<t?n+ne(t-e,r):n},An.padStart=function(n,t,r){n=Iu(n);var e=(t=Eu(t))?D(n):0;return t&&e<t?ne(t-e,r)+n:n},An.parseInt=function(n,t,r){
return r||null==t?t=0:t&&(t=+t),Mi(Iu(n).replace(on,""),t||0)},An.random=function(n,t,r){if(r&&typeof r!="boolean"&&Oe(n,t,r)&&(t=r=T),r===T&&(typeof t=="boolean"?(r=t,t=T):typeof n=="boolean"&&(r=n,n=T)),n===T&&t===T?(n=0,t=1):(n=Au(n),t===T?(t=n,n=0):t=Au(t)),n>t){var e=n;n=t,t=e}return r||n%1||t%1?(r=Ti(),Ci(n+r*(t-n+Cn("1e-"+((r+"").length-1))),t)):ir(n,t)},An.reduce=function(n,t,r){var e=ff(n)?l:j,u=3>arguments.length;return e(n,ye(t,4),r,u,uo)},An.reduceRight=function(n,t,r){var e=ff(n)?s:j,u=3>arguments.length;
return e(n,ye(t,4),r,u,io)},An.repeat=function(n,t,r){return t=(r?Oe(n,t,r):t===T)?1:Eu(t),or(Iu(n),t)},An.replace=function(){var n=arguments,t=Iu(n[0]);return 3>n.length?t:t.replace(n[1],n[2])},An.result=function(n,t,r){t=Sr(t,n);var e=-1,u=t.length;for(u||(u=1,n=T);++e<u;){var i=null==n?T:n[Me(t[e])];i===T&&(e=u,i=r),n=_u(i)?i.call(n):i}return n},An.round=ec,An.runInContext=x,An.sample=function(n){return(ff(n)?Qn:cr)(n)},An.size=function(n){if(null==n)return 0;if(su(n))return ju(n)?D(n):n.length;
var t=vo(n);return"[object Map]"==t||"[object Set]"==t?n.size:Vt(n).length},An.snakeCase=Df,An.some=function(n,t,r){var e=ff(n)?h:pr;return r&&Oe(n,t,r)&&(t=T),e(n,ye(t,3))},An.sortedIndex=function(n,t){return _r(n,t)},An.sortedIndexBy=function(n,t,r){return vr(n,t,ye(r,2))},An.sortedIndexOf=function(n,t){var r=null==n?0:n.length;if(r){var e=_r(n,t);if(e<r&&lu(n[e],t))return e}return-1},An.sortedLastIndex=function(n,t){return _r(n,t,true)},An.sortedLastIndexBy=function(n,t,r){return vr(n,t,ye(r,2),true);
},An.sortedLastIndexOf=function(n,t){if(null==n?0:n.length){var r=_r(n,t,true)-1;if(lu(n[r],t))return r}return-1},An.startCase=Mf,An.startsWith=function(n,t,r){return n=Iu(n),r=null==r?0:pt(Eu(r),0,n.length),t=yr(t),n.slice(r,r+t.length)==t},An.subtract=uc,An.sum=function(n){return n&&n.length?m(n,$u):0},An.sumBy=function(n,t){return n&&n.length?m(n,ye(t,2)):0},An.template=function(n,t,r){var e=An.templateSettings;r&&Oe(n,t,r)&&(t=T),n=Iu(n),t=bf({},t,e,ce),r=bf({},t.imports,e.imports,ce);var u,i,o=Wu(r),f=S(r,o),c=0;
r=t.interpolate||jn;var a="__p+='";r=Xu((t.escape||jn).source+"|"+r.source+"|"+(r===Q?pn:jn).source+"|"+(t.evaluate||jn).source+"|$","g");var l=oi.call(t,"sourceURL")?"//# sourceURL="+(t.sourceURL+"").replace(/[\r\n]/g," ")+"\n":"";if(n.replace(r,function(t,r,e,o,f,l){return e||(e=o),a+=n.slice(c,l).replace(wn,z),r&&(u=true,a+="'+__e("+r+")+'"),f&&(i=true,a+="';"+f+";\n__p+='"),e&&(a+="'+((__t=("+e+"))==null?'':__t)+'"),c=l+t.length,t}),a+="';",(t=oi.call(t,"variable")&&t.variable)||(a="with(obj){"+a+"}"),
a=(i?a.replace(P,""):a).replace(Z,"$1").replace(q,"$1;"),a="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(u?",__e=_.escape":"")+(i?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+a+"return __p}",t=Ff(function(){return Ju(o,l+"return "+a).apply(T,f)}),t.source=a,pu(t))throw t;return t},An.times=function(n,t){if(n=Eu(n),1>n||9007199254740991<n)return[];var r=4294967295,e=Ci(n,4294967295);for(t=ye(t),n-=4294967295,e=A(e,t);++r<n;)t(r);return e},An.toFinite=Au,
An.toInteger=Eu,An.toLength=ku,An.toLower=function(n){return Iu(n).toLowerCase()},An.toNumber=Su,An.toSafeInteger=function(n){return n?pt(Eu(n),-9007199254740991,9007199254740991):0===n?n:0},An.toString=Iu,An.toUpper=function(n){return Iu(n).toUpperCase()},An.trim=function(n,t,r){return(n=Iu(n))&&(r||t===T)?n.replace(un,""):n&&(t=yr(t))?(n=M(n),r=M(t),t=I(n,r),r=R(n,r)+1,Or(n,t,r).join("")):n},An.trimEnd=function(n,t,r){return(n=Iu(n))&&(r||t===T)?n.replace(fn,""):n&&(t=yr(t))?(n=M(n),t=R(n,M(t))+1,
Or(n,0,t).join("")):n},An.trimStart=function(n,t,r){return(n=Iu(n))&&(r||t===T)?n.replace(on,""):n&&(t=yr(t))?(n=M(n),t=I(n,M(t)),Or(n,t).join("")):n},An.truncate=function(n,t){var r=30,e="...";if(du(t))var u="separator"in t?t.separator:u,r="length"in t?Eu(t.length):r,e="omission"in t?yr(t.omission):e;n=Iu(n);var i=n.length;if(Rn.test(n))var o=M(n),i=o.length;if(r>=i)return n;if(i=r-D(e),1>i)return e;if(r=o?Or(o,0,i).join(""):n.slice(0,i),u===T)return r+e;if(o&&(i+=r.length-i),hf(u)){if(n.slice(i).search(u)){
var f=r;for(u.global||(u=Xu(u.source,Iu(_n.exec(u))+"g")),u.lastIndex=0;o=u.exec(f);)var c=o.index;r=r.slice(0,c===T?i:c)}}else n.indexOf(yr(u),i)!=i&&(u=r.lastIndexOf(u),-1<u&&(r=r.slice(0,u)));return r+e},An.unescape=function(n){return(n=Iu(n))&&G.test(n)?n.replace(V,tt):n},An.uniqueId=function(n){var t=++fi;return Iu(n)+t},An.upperCase=Tf,An.upperFirst=$f,An.each=nu,An.eachRight=tu,An.first=qe,Nu(An,function(){var n={};return mt(An,function(t,r){oi.call(An.prototype,r)||(n[r]=t)}),n}(),{chain:false
}),An.VERSION="4.17.15",r("bind bindKey curry curryRight partial partialRight".split(" "),function(n){An[n].placeholder=An}),r(["drop","take"],function(n,t){Un.prototype[n]=function(r){r=r===T?1:Ui(Eu(r),0);var e=this.__filtered__&&!t?new Un(this):this.clone();return e.__filtered__?e.__takeCount__=Ci(r,e.__takeCount__):e.__views__.push({size:Ci(r,4294967295),type:n+(0>e.__dir__?"Right":"")}),e},Un.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),r(["filter","map","takeWhile"],function(n,t){
var r=t+1,e=1==r||3==r;Un.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:ye(n,3),type:r}),t.__filtered__=t.__filtered__||e,t}}),r(["head","last"],function(n,t){var r="take"+(t?"Right":"");Un.prototype[n]=function(){return this[r](1).value()[0]}}),r(["initial","tail"],function(n,t){var r="drop"+(t?"":"Right");Un.prototype[n]=function(){return this.__filtered__?new Un(this):this[r](1)}}),Un.prototype.compact=function(){return this.filter($u)},Un.prototype.find=function(n){
return this.filter(n).head()},Un.prototype.findLast=function(n){return this.reverse().find(n)},Un.prototype.invokeMap=fr(function(n,t){return typeof n=="function"?new Un(this):this.map(function(r){return Lt(r,n,t)})}),Un.prototype.reject=function(n){return this.filter(au(ye(n)))},Un.prototype.slice=function(n,t){n=Eu(n);var r=this;return r.__filtered__&&(0<n||0>t)?new Un(r):(0>n?r=r.takeRight(-n):n&&(r=r.drop(n)),t!==T&&(t=Eu(t),r=0>t?r.dropRight(-t):r.take(t-n)),r)},Un.prototype.takeRightWhile=function(n){
return this.reverse().takeWhile(n).reverse()},Un.prototype.toArray=function(){return this.take(4294967295)},mt(Un.prototype,function(n,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),e=/^(?:head|last)$/.test(t),u=An[e?"take"+("last"==t?"Right":""):t],i=e||/^find/.test(t);u&&(An.prototype[t]=function(){function t(n){return n=u.apply(An,a([n],f)),e&&h?n[0]:n}var o=this.__wrapped__,f=e?[1]:arguments,c=o instanceof Un,l=f[0],s=c||ff(o);s&&r&&typeof l=="function"&&1!=l.length&&(c=s=false);var h=this.__chain__,p=!!this.__actions__.length,l=i&&!h,c=c&&!p;
return!i&&s?(o=c?o:new Un(this),o=n.apply(o,f),o.__actions__.push({func:Qe,args:[t],thisArg:T}),new On(o,h)):l&&c?n.apply(this,f):(o=this.thru(t),l?e?o.value()[0]:o.value():o)})}),r("pop push shift sort splice unshift".split(" "),function(n){var t=ri[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:pop|shift)$/.test(n);An.prototype[n]=function(){var n=arguments;if(e&&!this.__chain__){var u=this.value();return t.apply(ff(u)?u:[],n)}return this[r](function(r){return t.apply(ff(r)?r:[],n)});
}}),mt(Un.prototype,function(n,t){var r=An[t];if(r){var e=r.name+"";oi.call(Gi,e)||(Gi[e]=[]),Gi[e].push({name:t,func:r})}}),Gi[Jr(T,2).name]=[{name:"wrapper",func:T}],Un.prototype.clone=function(){var n=new Un(this.__wrapped__);return n.__actions__=Ur(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Ur(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Ur(this.__views__),n},Un.prototype.reverse=function(){if(this.__filtered__){var n=new Un(this);
n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Un.prototype.value=function(){var n,t=this.__wrapped__.value(),r=this.__dir__,e=ff(t),u=0>r,i=e?t.length:0;n=i;for(var o=this.__views__,f=0,c=-1,a=o.length;++c<a;){var l=o[c],s=l.size;switch(l.type){case"drop":f+=s;break;case"dropRight":n-=s;break;case"take":n=Ci(n,f+s);break;case"takeRight":f=Ui(f,n-s)}}if(n={start:f,end:n},o=n.start,f=n.end,n=f-o,o=u?f:o-1,f=this.__iteratees__,c=f.length,a=0,l=Ci(n,this.__takeCount__),!e||!u&&i==n&&l==n)return wr(t,this.__actions__);
e=[];n:for(;n--&&a<l;){for(o+=r,u=-1,i=t[o];++u<c;){var h=f[u],s=h.type,h=(0,h.iteratee)(i);if(2==s)i=h;else if(!h){if(1==s)continue n;break n}}e[a++]=i}return e},An.prototype.at=To,An.prototype.chain=function(){return Ye(this)},An.prototype.commit=function(){return new On(this.value(),this.__chain__)},An.prototype.next=function(){this.__values__===T&&(this.__values__=mu(this.value()));var n=this.__index__>=this.__values__.length;return{done:n,value:n?T:this.__values__[this.__index__++]}},An.prototype.plant=function(n){
for(var t,r=this;r instanceof En;){var e=Fe(r);e.__index__=0,e.__values__=T,t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},An.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Un?(this.__actions__.length&&(n=new Un(this)),n=n.reverse(),n.__actions__.push({func:Qe,args:[Ge],thisArg:T}),new On(n,this.__chain__)):this.thru(Ge)},An.prototype.toJSON=An.prototype.valueOf=An.prototype.value=function(){return wr(this.__wrapped__,this.__actions__)},An.prototype.first=An.prototype.head,
wi&&(An.prototype[wi]=Xe),An}();typeof define=="function"&&typeof define.amd=="object"&&define.amd?($n._=rt, define(function(){return rt})):Nn?((Nn.exports=rt)._=rt,Fn._=rt):$n._=rt}).call(this);
+1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+81
View File
@@ -0,0 +1,81 @@
let graphicInstances = {};
window.loadTheGraphic = async (manifestPath, renderTarget, rundownData) => {
// Dispose previous instance if exists
const existingInstance = graphicInstances[renderTarget];
if (existingInstance) {
// console.log('OF ::: Disposing "' + manifestPath + '" from >> ' + renderTarget)
existingInstance.dispose();
}
// Helper: extractDefaultsFromJSON
const extractDefaultsFromJSON = async (fields) => {
const result = {};
if (Array.isArray(fields)) {
for (const field of fields) {
if (Object.keys(field).length === 0) continue
const [key, value] = Object.entries(field)[0];
result[key] = value;
}
}
return result;
};
// Helper: loadGraphicModule
const graphicIdVersion = `${rundownData.ografProps.id}-v${rundownData.ografProps.version}`;
let elementName = customElements.get(graphicIdVersion);
if (!elementName) {
let ografRef = "/templates" + rundownData.ografProps.graphicPath;
// console.log(`OF ::: loadGraphicModule > loading ${ografRef}`)
const module = await import(ografRef);
const Graphic = module.Graphic || module.default;
if (!Graphic || typeof Graphic !== 'function') {
throw new Error('Module expected to expose a class named "Graphic"');
}
customElements.define(graphicIdVersion, Graphic);
elementName = graphicIdVersion;
} else {
elementName = graphicIdVersion;
}
// Create and initialize the graphic instance
// console.log(`OF ::: loadTheGraphic "${manifestPath}" to >> ${renderTarget}`)
const graphicInstance = document.createElement(elementName);
graphicInstance.setAttribute('class', 'ografRenderTarget');
document.getElementById(renderTarget).appendChild(graphicInstance);
const data = await extractDefaultsFromJSON(rundownData.fields);
await graphicInstance.load({
renderType: 'realtime',
data: data,
rundownData: rundownData
});
graphicInstances[renderTarget] = graphicInstance;
// Wait for the iframe inside the graphic instance to load before continuing
const iframe = graphicInstances[renderTarget].querySelector('iframe');
if (iframe) {
await new Promise((resolve) => {
let timeout = setTimeout(resolve, 1000);
if (iframe.complete || iframe.readyState === 'complete') {
clearTimeout(timeout);
resolve();
} else {
iframe.addEventListener('load', () => {
clearTimeout(timeout);
resolve();
}, { once: true });
}
});
}
// console.log('OF:: updateAction', renderTarget)
await graphicInstances[renderTarget].updateAction({ data });
// console.log('OF:: playAction', renderTarget)
await graphicInstances[renderTarget].playAction({ data });
// Play/update actions
// setTimeout(() => {
// console.log(`OF ::: loadGraphic > playAction on renderTarget "${renderTarget}"...`)
// graphicInstances[renderTarget].updateAction({ data });
// graphicInstances[renderTarget].playAction({ data });
// }, 50);
};
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+194
View File
@@ -0,0 +1,194 @@
// file is used in controller to handle importing of CSV-file data
function RenderFolder(data) { //controllerImportCSV
// will draw folder and files to the popup GUI
if (!data.folder){
console.log('Controller Import Functions / Folder unknown');
return
}
document.getElementById('curfolder').innerText = data.folder.split("\\").join("/");
document.getElementById("folderList").innerHTML="";
document.getElementById("fileList").innerHTML="";
if (data.message=='root') {
showMessage(document.getElementById('templaterootmassage').value);
document.getElementById('homefolder').classList.add('disabled');
document.getElementById('prefolder').classList.add('disabled');
} else {
showMessage('');
document.getElementById('homefolder').classList.remove('disabled');
document.getElementById('prefolder').classList.remove('disabled');
}
// generate folder icons
data.foldArr.forEach((folder,i) => {
var node = document.createElement("LI");
node.classList.add("filebrowser_folder");
var span = document.createElement("SPAN");
span.classList.add("icon");
span.classList.add("folder");
var textnode = document.createTextNode(folder); // + "/"); // changed in 1.0.15
span.appendChild(textnode);
node.appendChild(span);
document.getElementById("folderList").appendChild(node);
});
// generate files icons
data.fileArr.forEach((file,i) => {
var node = document.createElement("LI");
node.classList.add("filebrowser_file");
// node.onclick = function() { alert('CHOOSE FILE ' + file); };
var span = document.createElement("SPAN");
span.classList.add("icon");
span.classList.add("file");
var textnode = document.createTextNode(file);
span.appendChild(textnode);
node.appendChild(span);
document.getElementById("fileList").appendChild(node);
});
applyFileBrowserHandlers();
}
function FileBrowserOn() {
document.getElementById("overlay").style.display = "block";
}
function FileBrowserOff() {
document.getElementById("overlay").style.display = "none";
}
function navigateDeeper(targetFolderName) {
let curFolder = document.getElementById('curfolder').innerText;
// console.log('Deeper',curFolder,targetFolderName);
openFolder(curFolder, targetFolderName)
}
function openFolder(fromFolder, toFolder, rootFolder='') {
// deselect files first
var fils = document.getElementsByClassName("filebrowser_file");
document.getElementById('btnChooseTemplate').style.opacity=0.2;
var fi;
for (fi = 0; fi < fils.length; fi++) {
fils[fi].classList.remove('selectedFile');
}
// console.log('Opening folder ' + folderName);
axios.post('/api/browseFiles', {
curFolder: fromFolder,
tgtFolder: toFolder,
rootFolder: rootFolder,
extension: 'CSV'
})
.then(function (response) {
// console.log(response);
RenderFolder(response.data); // controllerImportCSV
})
.catch(function (error) {
console.log(error);
});
}
function highlightFile(e) {
// Clicked
var fils = document.getElementsByClassName("filebrowser_file");
var fi;
for (fi = 0; fi < fils.length; fi++) {
fils[fi].classList.remove('selectedFile');
}
// console.log(e.target.parentElement);
setTimeout(function () { e.target.parentElement.classList.add('selectedFile'); }, 10);
document.getElementById('btnChooseTemplate').style.opacity=1;
showMessage(e.target.innerText);
}
function applyFileSelection(e) {
// DblClicked to apply the selection
var fils = document.getElementsByClassName("filebrowser_file");
var fi;
for (fi = 0; fi < fils.length; fi++) {
fils[fi].classList.remove('selectedFile');
}
setTimeout(function () { e.target.parentElement.classList.add('selectedFile'); }, 10);
setTimeout(function () { openSelectedFiles(); }, 50);
}
function openSelectedCSVFile() {
console.log('Going to select CSV');
var fils = document.getElementsByClassName("filebrowser_file");
var fi;
for (fi = 0; fi < fils.length; fi++) {
if (fils[fi].classList.contains('selectedFile')) {
let data={};
data.command = 'importCSVdata';
data.foldername = document.getElementById('foldername').value;
data.filebasename = document.getElementById('filebasename').value;
data.curFolder = document.getElementById('curfolder').innerText;
data.RundownFile = document.getElementById('datafile').value;
data.importFile = fils[fi].innerText;
post('', data, 'post');
break;
}
}
}
function goUp() {
// 1.1.0 - refactored navigation to use '..' for parent folder.
// See also another goUp() function... Must merge these...
let currentFolder = document.getElementById('curfolder').innerText
let rootFolder = document.getElementById('assetsroot').value;
openFolder(currentFolder, '..', rootFolder);
return;
}
function goHome() {
// added in 1.1.0.
let AssetsFolder = document.getElementById('assetsroot').value //.split("\\").join("/");
openFolder(AssetsFolder, '..', AssetsFolder);
}
function showMessage(msg) {
document.getElementById('browserMessage').innerText=msg;
setTimeout('document.getElementById(\'browserMessage\').innerText="";', 2000);
}
function applyFileBrowserHandlers() {
// FILEBROWSER HANDLERS
var timer = 0;
var delay = 150;
var prevent = false;
var fols = document.getElementsByClassName("folder");
var fils = document.getElementsByClassName("file");
var fo;
for (fo = 0; fo < fols.length; fo++) {
fols[fo].addEventListener("dblclick", function() {
navigateDeeper(this.innerText);
});
}
var fi;
for (fi = 0; fi < fils.length; fi++) {
// Assign click handler with delay timer
fils[fi].addEventListener("click", function(e) {
timer = setTimeout(function() {
if (!prevent) {
highlightFile(e);
}
prevent = false;
}, delay);
});
// Assign dblClick handler with delay timer
fils[fi].addEventListener("dblclick", function(e) {
clearTimeout(timer);
prevent = true;
applyFileSelection(e);
});
} // end for
}
+60
View File
@@ -0,0 +1,60 @@
window.onload = function () {
// GET ALL THE PLAYERS - DRAGGABLE AND DROP ZONES
var draggable = document.getElementById("item0"); // was draggable
var dropzones = document.getElementsByClassName("dropzone");
// DRAG START - HIGHLIGHT DROP ZONES WITH CSS CLASS
//console.log(draggable);
if (draggable != null) {
draggable.addEventListener("dragstart", function () {
for (let i = 0; i < dropzones.length; i++) {
dropzones[i].classList.add("active");
}
});
// DRAG END - REMOVE ALL ADDED ACTIVE & OVER CSS CLASS
draggable.addEventListener("dragend", function () {
for (let i = 0; i < dropzones.length; i++) {
dropzones[i].classList.remove("active");
dropzones[i].classList.remove("over");
}
});
// DRAG - AS YOU ARE DRAGGING
draggable.addEventListener("drag", function () {
// DO SOMETHING... IF YOU WANT
});
}
for (let i = 0; i < dropzones.length; i++) {
// DRAG ENTER - HIGHLIGHT THIS ZONE
dropzones[i].addEventListener("dragenter", function () {
dropzones[i].classList.add("over");
});
// DRAG LEAVE - REMOVE HIGHLIGHT ON THIS ZONE
dropzones[i].addEventListener("dragleave", function () {
dropzones[i].classList.remove("over");
});
// DRAG OVER - PREVENT THE DEFAULT "DROP", SO WE CAN DO OUR OWN
dropzones[i].addEventListener("dragover", function (evt) {
evt.preventDefault();
});
// ON DROP - MOVE THE DRAGGABLE ELEMENT
dropzones[i].addEventListener("drop", function (evt) {
evt.preventDefault();
// Will move the draggable element only if dropped into a different box
if (evt.target != draggable.parentNode && evt.target != draggable) {
draggable.parentNode.removeChild(draggable);
evt.target.appendChild(draggable);
}
});
}
};
+354
View File
@@ -0,0 +1,354 @@
console.clear() ; // start from scratch
var pluginRootFolder = '/plugins/spxImagelist/'
var extensionConfig
var pluginModule
var messageSliderOutTimer // a global var for message slider timeout
function addAll() {
// move all from inbox to the end of outbox
let items = e('inbox').querySelectorAll('SOCIAL-ITEM')
let outbox = e('outbox')
items.forEach((item,index) => {
if (outbox.lastChild) {
outbox.lastChild.after(item);
} else {
outbox.insertBefore(item, outbox.firstChild);
}
});
}
function addAsFirst() {
var sourceBox = getFocusedElement().parentNode.id;
var next = getFocusedElement().nextSibling;
var temp = document.createDocumentFragment();
temp.appendChild(getFocusedElement());
let outbox = e('outbox')
outbox.insertBefore(temp, outbox.firstChild);
if (sourceBox === 'inbox') {
focusItem(next);
}
}
function addAsLast() {
var sourceBox = getFocusedElement().parentNode.id;
var next = getFocusedElement().nextSibling;
var temp = document.createDocumentFragment();
temp.appendChild(getFocusedElement());
e('outbox').appendChild(temp);
if (sourceBox === 'inbox') {
focusItem(next);
}
}
function ajaxpost(urlPath, data, prepopulated='false'){
if (prepopulated=='true'){
data.prepopulated="true"
}else{
data.prepopulated="false"
};
axios.post(urlPath, data)
.then(function (response) {
if (response.data) { console.log('Post response', response.data) };
})
.catch(function (error) {
if (error.response) {
console.log(error.response.data);
console.log(error.response.status);
console.log(error.response.headers);
} else if (error.request) {
console.log(error.request);
} else {
console.log('Error', error.message);
}
console.log(error.config);
});
}
function checkKey(ev) {
// Keyboard shortcut functions can be changed here.
// require ..... keyboard event
// returns ..... executes keyboard shortcuts
// keybord shortcuts (see https://keycode.info/)
ev = ev || window.event;
switch (ev.keyCode)
{
case 46: // del
case 73: // i
deleteItem()
break;
case 40: // down
focusNext();
break;
case 38: // down
focusPrev();
break;
case 70: // f
addAsFirst();
break;
case 76: // l
addAsLast();
break;
case 32: // space
playFocusItem();
ev.preventDefault();
break;
case 9: // tab
togglePanelFocus();
ev.preventDefault();
break;
case 27: // esc
stopItem();
ev.preventDefault();
break;
}
return;
} //checkKey
function e(id) {
return document.getElementById(id);
} // e
function encodeStr(rawStr, thisIsBodyText=false) {
let temp
if (!rawStr) return '';
temp = rawStr
if (thisIsBodyText && document.getElementById('ignoreReturns').checked===false) {
// add newlines to playout string if checkbox is off
temp = temp.replace(/\n/g, "<BR>");
} else {
temp = temp.replace(/\n/g, " "); // replace \n with space
}
temp = _.escape(temp); // lodash escapes all < > ; "... -characters
return temp
} // endodeStr
function focusItem(el) {
document.querySelectorAll('image-item').forEach(function (item, i) {
if (item.classList.contains("selectedImage")) {
item.classList.remove('selectedImage');
}
})
if (el && el.nodeName == "IMAGE-ITEM") {
el.classList.add('selectedImage');
}
e('playButton').classList.remove('disable')
} // focusItem
async function loadProjectData(path='') {
let projModu, pluginModule, APIurl, url
APIurl = extensionConfig.general.imageJsonApiUrl || '';
pluginModule = await import("/js/spx_fileBrowserModule.js");
if (!path) {path = '/'};
e('navipath').innerText = path;
e('playButton').classList.add('disable')
url = '/api/v1/feedproxy?url=http://localhost:5656/api/v1/feedproxy?url=' + APIurl + path;
pluginModule.fetchData(url)
} // loadProjectData
function navigateTo(subFolder) {
console.log('Going to ' + subFolder);
loadProjectData(subFolder);
}
function goHome() {
loadProjectData('/');
}
function goUp() {
let pathArray = e('navipath').innerText.split('/');
pathArray.pop();
let parentFolder = pathArray.join('/');
loadProjectData(parentFolder);
}
function showMessageSlider(msg, type='info', persist=false) {
// show a sliding message at the top of the page
let txt = msg;
let typ = type; // happy, info, warn, error (classes happyMsg, infoMsg, warnMsg, errorMsg...)
document.getElementById('messageSlider').style.opacity = 0;
document.getElementById('messageSlider').innerHTML = txt;
document.getElementById('messageSlider').classList = typ + 'Msg';
document.getElementById('messageSlider').style.transform = 'translateX(-50%)'; // init X pos
anime({
targets: '#messageSlider',
opacity: [0,1],
translateY: [-200,0],
translateX: '-50%',
delay: 0,
duration: 100,
easing: 'easeOutCubic'
});
if (persist) {return}; // do not animate out
if (messageSliderOutTimer) {
clearTimeout(messageSliderOutTimer)
}
messageSliderOutTimer = setTimeout(() => {
anime({
targets: '#messageSlider',
opacity: [1,0],
translateY: [0,-200],
translateX: '-50%',
duration: 300,
easing: 'easeInCubic'
});
}, 2000);
}
function hideMessageSlider() {
if (!document.getElementById('messageSlider')) { return }
anime({
targets: '#messageSlider',
opacity: 0,
translateY: -200,
translateX: '-50%',
duration: 300,
delay: 200,
easing: 'easeInCubic'
});
}
// function playItem(article, spxData) {
function playItem() {
let imageUrl
document.querySelectorAll('image-item').forEach((item) => {
if (item.classList.contains("selectedImage")) {
let el = item.querySelector('.fileitem');
console.log('el',el);
imageUrl = el.style.backgroundImage.slice(4, -1).replace(/"/g, "");
}
})
let InAnimation = extensionConfig.template.imageLayerAnimationStyle.inAnimation || 'fade'; // or other value supported by the template
let AnimaEasing = extensionConfig.template.imageLayerAnimationStyle.easing || 'linear'; // or other value supported by the template
// let jsonData = JSON.parse(sourceItem.querySelector('#articleData').value); // disabled 25.10.2021
try {
let fFields = [
{ 'field': 'f0', 'value': '' },
{ 'field': 'f1', 'value': imageUrl },
{ 'field': 'f2', 'value': InAnimation },
{ 'field': 'f3', 'value': AnimaEasing },
]
// Playout with spx (for CasparCG and webplayout)
let spxPlayoutData = {};
spxPlayoutData.relpath = extensionConfig.template.file || 'unknownTemplatePathFromItemList';
spxPlayoutData.dataformat = extensionConfig.template.dataformat || 'json';
spxPlayoutData.playserver = extensionConfig.template.playserver || 'OVERLAY';
spxPlayoutData.playchannel = extensionConfig.template.playchannel || '1';
spxPlayoutData.playlayer = extensionConfig.template.playlayer || '10';
spxPlayoutData.webplayout = extensionConfig.template.webplayout || '10';
spxPlayoutData.relpathCCG = spxPlayoutData.relpath.split('.htm')[0];
spxPlayoutData.fields = fFields
spxPlayoutData.command = 'play';
if (Array.isArray(spxPlayoutData.playserver)) {
// several servers
spxPlayoutData.playserver.forEach((server,index) => {
setTimeout(function () {
spxPlayoutData.playserver = server;
// console.log('Playout on multiple CCG servers: ', spxPlayoutData);
ajaxpost('/gc/playout', spxPlayoutData, 'true');
}, 10);
});
} else {
// console.log('Playout on CCG server ' + spxPlayoutData.playserver);
ajaxpost('/gc/playout', spxPlayoutData, 'true');
}
} catch (error) {
console.error('Failed to play item!', error)
}
}
function stopItem() {
let spxPlayoutData = {};
spxPlayoutData.relpath = extensionConfig.template.file || 'unknownTemplatePathFromItemList';
spxPlayoutData.dataformat = extensionConfig.template.dataformat || 'json';
spxPlayoutData.playserver = extensionConfig.template.playserver || 'OVERLAY';
spxPlayoutData.playchannel = extensionConfig.template.playchannel || '1';
spxPlayoutData.playlayer = extensionConfig.template.playlayer || '10';
spxPlayoutData.webplayout = extensionConfig.template.webplayout || '10';
spxPlayoutData.relpathCCG = spxPlayoutData.relpath.split('.htm')[0];
spxPlayoutData.command = 'stop';
if (Array.isArray(spxPlayoutData.playserver)) {
// several servers
spxPlayoutData.playserver.forEach((server,index) => {
setTimeout(function () {
spxPlayoutData.playserver = server;
console.log('Playout on multiple CCG servers: ', spxPlayoutData);
ajaxpost('/gc/playout', spxPlayoutData, 'true');
}, 10);
});
} else {
console.log('Playout on CCG server ' + spxPlayoutData.playserver);
ajaxpost('/gc/playout', spxPlayoutData, 'true');
}
} // stopItem ended
// Event listeners ----------------------------------------------------------------------------
window.addEventListener('load', async () => {
try {
// console.log('Window loaded.');
extensionConfig = {
"general" : {
"title": "File Browser",
"width": 500,
"height" : 1000,
"left": 50,
"top": 50,
"imageJsonApiUrl": ""
},
"template": {
"file" : "smartpx/imagelayer/SPX_Image_Layer2.html",
"playserver": "OVERLAY",
"dataformat": "json",
"playchannel": '1',
"playlayer": '2',
"webplayout": '2',
"imageLayerAnimationStyle": {
"inAnimation": "fade",
"easing": "linear"
}
}
}
window.moveTo(extensionConfig.general.left,extensionConfig.general.top);
window.resizeTo(extensionConfig.general.width,extensionConfig.general.height);
document.title = "SPX imagelist | " + extensionConfig.general.title;
// Load selected content at init (and whenever needed)
loadProjectData()
} catch (error) {
console.error('Error! ', error);
}
});
+51
View File
@@ -0,0 +1,51 @@
// This facory is used by source modules to generate DOM objects.
function makeImageItem(spxData) {
let serverUrl = spxData.base;
let remotePath = spxData.path.replace('//','');
let imageUrl = serverUrl + '/' + remotePath + '/' + spxData.file;
console.log('ImageURL', imageUrl);
let html = ''
html += '<div id="' + spxData.file + '" class="fileitem" style="background-image: url(\'' + imageUrl + '\')">\n';
html += '<div id="filename" class="filename">' + spxData.file + '</div>\n';
html += '</div>\n';
return html
} // makeImageItem
function makeFolderItem(spxData) {
let html = ''
html = '<LI class="filebrowser_folder navicon folder">'+ spxData.fold + '</li>';
return html
} // makeFolderItem
class ImageItem extends HTMLElement {
set spxData(spxData) {
this.setAttribute('onclick',"focusItem(this);");
this.innerHTML = makeImageItem(spxData)
}
}
class FolderItem extends HTMLElement {
// let targetPath = spxData.curr + '/' + ;
set spxData(spxData) {
let currentFolder = e('navipath').innerText;
if (currentFolder =='/') {currentFolder = ''}; // strip just "/"
this.setAttribute('ondblclick',"navigateTo('" + currentFolder + '/' + spxData.fold + "')");
this.innerHTML = makeFolderItem(spxData)
}
}
customElements.define('image-item', ImageItem)
customElements.define('folder-item', FolderItem)
export { ImageItem, FolderItem }
+86
View File
@@ -0,0 +1,86 @@
// ================================================================
// Office Hours module for SPX Imagelist
// ================================================================
// (c) 2022 SPX Graphics
//
// Change history:
//
// 04.03.2022 Original (refactored from one of social's)
//
// ================================================================
import * as spxFactory from "/js/spx_fileBrowserItemFactory.js";
var json;
async function fetchData(url) {
showMessageSlider('Loading images...', 'happy', true)
e('folderinbox').innerHTML='';
e('fileinbox').innerHTML='';
try {
console.log('source: ' + url );
axios.post('/api/browseFiles', {
curFolder: fromFolder,
tgtFolder: toFolder,
rootFolder: rootFolder,
extension: 'CSV'
})
.then(function (response) {
// console.log(response);
RenderFolder(response.data); // controllerImportCSV
})
.catch(function (error) {
console.log(error);
});
const res = await fetch(url);
const txt = await res.text();
json = JSON.parse(txt);
// console.log('json', json);
// if (json.code && json.code!=200) {
// console.warn('Error occurred while SPX Social reading data source. Return code: ' + json.code + '.', json.errors);
// }
// if (!json || !json.articles) {
// console.error('No data in "'+projName+'". Verify Flocker SiteID [' + siteID + '] and SectionID [' + sectID + ']. See SPX Social README file for troubleshooting instructions.');
// showMessageSlider('No data, verify source configuration. (See console for details)', 'error', true) // last param is "persist"
// return;
// }
json.folders.forEach(itemData => {
const el = document.createElement('folder-item');
let spxData = {
base: json.baseUrl,
curr: json.currentPath,
fold: itemData
}
el.spxData = spxData;
e('folderinbox').appendChild(el);
});
// console.log('files', json.files);
json.files.forEach(itemData => {
const el = document.createElement('image-item');
let spxData = {
base: json.baseUrl,
path: json.currentPath,
file: itemData,
fullImageUrl: ''
}
el.spxData = spxData;
e('fileinbox').appendChild(el);
});
hideMessageSlider()
} catch (error) {
showMessageSlider('Error while loading, see console.', 'error', false)
console.error('SPX Itemlist error in OfficeHours module.', error);
}
} // fetchData
export { fetchData }
+2832
View File
File diff suppressed because it is too large Load Diff
+37
View File
@@ -0,0 +1,37 @@
// This script runs when the SPX Renderer URL is loaded
// and checks for a runScript parameter in the URL and
// if found loads the script and executes it.
onload = function() {
try {
// console.log('spx_rendererUtils.js onload');
let docParams = new URLSearchParams(document.location.search);
let parParams = new URLSearchParams(parent.location.search);
let topParams = new URLSearchParams(top.location.search);
let curParams = null;
if (docParams.size>0) {
curParams = docParams;
} else if (parParams.size>0) {
curParams = parParams;
} else if (topParams.size>0) {
curParams = topParams;
}
if (curParams && curParams.has('runScript')) {
let jsFile = '/ExtraFunctions/' + curParams.get('runScript') + '.js';
console.log('SPX rendererUtils ->', jsFile , '-> init()');
import(jsFile)
.then(module => {
module.init();
})
.catch(err => {
console.error('SPX Error - loading init script required by the SPX Renderer URL failed: ' + jsFile);
})
;
}
} catch (e) {
console.error('SPX Error - spx_rendererUtils.js onload() exception: ' + e.message);
}
}
+330
View File
@@ -0,0 +1,330 @@
let showMessageTimer = null;
function removeExtraIndex(formNro) {
data = {
showFolder: document.getElementById('showfolder').value,
ExtraIndex: formNro
};
post('config/removeExtra', data, 'post')
} // remove extra from the show
function removeTemplateIndex(formNro) {
data = {
showFolder: document.getElementById('showfolder').value,
TemplIndex: formNro
};
post('config/removeTemplate', data, 'post')
} // remove template from the show
function reimportTemplateIndex(nro) {
let pathElements = document.getElementById('templateIndex' + nro).value.split("/");
let data = {};
data.command = 'addtemplate';
let htmlFileName = pathElements.pop(); // separate last item (filename.ext)
data.curFolder = pathElements.join('/'); // keep just the path
data.template = htmlFileName // document.getElementById('templateIndex' + nro).value; // bug fix 1.0.14
data.showFolder = document.getElementById('showfolder').value; // rundown file
data.replaceIndex = nro;
post('', data, 'post');
} // reimport template to the show
function RenderFolder(data) {
// will draw folder and files to the popup GUI
if (!data || !data.folder) {
showMessageSlider('Error happened: unknown folder. Restart SPX.', 'error', false)
return
}
document.getElementById('curfolder').innerText = data.folder.split("\\").join("/");
document.getElementById("folderList").innerHTML = "";
document.getElementById("fileList").innerHTML = "";
if (data.message == 'root') {
showMessage(document.getElementById('templaterootmassage').value);
document.getElementById('homefolder').classList.add('disabled');
document.getElementById('prefolder').classList.add('disabled');
} else {
showMessage('');
document.getElementById('homefolder').classList.remove('disabled');
document.getElementById('prefolder').classList.remove('disabled');
}
data.foldArr.sort(function (s1, s2) {
var l = s1.toLowerCase(), m = s2.toLowerCase();
return l === m ? 0 : l > m ? 1 : -1;
});
data.foldArr.forEach((folder, i) => {
var node = document.createElement("LI");
node.classList.add("filebrowser_folder");
var span = document.createElement("SPAN");
span.classList.add("icon");
span.classList.add("folder");
var textnode = document.createTextNode(folder); // + "/"); changed in 1.0.15
span.appendChild(textnode);
node.appendChild(span);
document.getElementById("folderList").appendChild(node);
});
data.fileArr.sort(function (s1, s2) {
var l = s1.toLowerCase(), m = s2.toLowerCase();
return l === m ? 0 : l > m ? 1 : -1;
});
data.fileArr.forEach((file, i) => {
var node = document.createElement("LI");
node.classList.add("filebrowser_file");
var span = document.createElement("SPAN");
span.classList.add("icon");
span.classList.add("file");
var textnode = document.createTextNode(file);
span.appendChild(textnode);
node.appendChild(span);
document.getElementById("fileList").appendChild(node);
});
applyFileBrowserHandlers();
} // RenderFolder
function FileBrowserOn() {
document.getElementById("overlay").style.display = "block";
} // show file browser overlay
function FileBrowserOff() {
document.getElementById("overlay").style.display = "none";
} // hide file browser overlay
function navigateDeeper(targetFolderName) {
let curFolder = document.getElementById('curfolder').innerText;
openFolder(curFolder, targetFolderName)
} // navigate deeper to the folder
function getProjectExtension() {
let format = document.getElementById('projectFormat').value;
if (format === 'OGRAF') {
return 'OGRAF';
}
else if (format === 'SPX') {
return 'HTM'
}
else {
return 'HTM' // default to HTM
}
} // get project extension for file browsing
function openFolder(fromFolder, toFolder, rootFolder = '') {
extension = getProjectExtension()
var fils = document.getElementsByClassName("filebrowser_file");
document.getElementById('btnChooseTemplate').style.opacity = 0.2;
var fi;
for (fi = 0; fi < fils.length; fi++) {
fils[fi].classList.remove('selectedFile');
}
axios.post('/api/browseFiles', {
curFolder: fromFolder,
tgtFolder: toFolder,
rootFolder: rootFolder,
extension: extension
})
.then(function (response) {
RenderFolder(response.data);
})
.catch(function (error) {
console.log(error);
});
} // open folder in the file browser
function highlightFile(e) {
let templateItem = e.target.parentElement;
let templateItems = document.getElementsByClassName("filebrowser_file");
let selectedItems = document.getElementsByClassName("selectedFile");
if (e.ctrlKey == false) {
Array.prototype.forEach.call(templateItems, function (el) {
el.classList.remove('selectedFile')
});
}
if (templateItem.classList.contains('selectedFile')) {
templateItem.classList.remove('selectedFile')
} else {
templateItem.classList.add('selectedFile')
}
// Update Select button and show message
selectedItems = document.getElementsByClassName("selectedFile");
if (selectedItems.length > 0) {
document.getElementById('btnChooseTemplate').style.opacity = 1;
if (selectedItems.length == 1) {
showMessage(e.target.innerText + ' template selected.');
} else {
showMessage(selectedItems.length + ' templates selected.');
}
} else {
document.getElementById('btnChooseTemplate').style.opacity = 0.2;
showMessage('');
}
} // highlightFile
function applyFileSelection(e) {
var fils = document.getElementsByClassName("filebrowser_file");
var fi;
for (fi = 0; fi < fils.length; fi++) {
fils[fi].classList.remove('selectedFile');
}
setTimeout(function () { e.target.parentElement.classList.add('selectedFile'); }, 50);
setTimeout(function () { openSelectedFiles(); }, 50);
} // applyFileSelection
function addExtra(controltype) {
// add button or togglebutton to the show
let data = {};
data.command = 'addshowextra';
data.ftype = controltype;
data.curFolder = document.getElementById('curfolder').innerText;
data.showFolder = document.getElementById('showfolder').value;
post('', data, 'post');
} // add button or togglebutton to the show
function addShowScript() {
// add scriptfile to the show
let data = {};
data.command = 'addshowextrascript';
data.customscript = document.getElementById('customscript').value;
data.curFolder = document.getElementById('curfolder').innerText;
data.showFolder = document.getElementById('showfolder').value;
post('', data, 'post');
} // addShowScript
function openSelectedFile() {
// original single file selection
alert('FIXME: openSelectedFile() is not in use anymore.');
return;
} // openSelectedFile
function openSelectedFiles() {
let data = {};
data.curFolder = document.getElementById('curfolder').innerText;
data.showFolder = document.getElementById('showfolder').value;
data.templates = [];
var selectedTemplates = document.getElementsByClassName("selectedFile");
Array.prototype.forEach.call(selectedTemplates, function (el) {
data.templates.push(el.innerText);
});
if (data.templates.length == 1) {
data.command = 'addtemplate';
data.template = data.templates[0];
post('', data, 'post');
return;
} else if (data.templates.length > 1) {
data.command = 'addtemplates';
data.templates = JSON.stringify(data.templates);
post('', data, 'post');
return;
} else {
showMessage('No templates selected!');
return;
}
} // openSelectedFiles [multiple]
function goUp() {
// 1.1.0 - refactored navigation to use '..' for parent folder.
// See also another goUp() function... Must merge these at some point...
let currentFolder = document.getElementById('curfolder').innerText
let rootFolder = document.getElementById('templateroot').value;
openFolder(currentFolder, '..', rootFolder);
return;
} // goUp
function goHome() {
// added in 1.1.0.
let ConfigTemplateFolder = document.getElementById('templateroot').value //.split("\\").join("/");
openFolder(ConfigTemplateFolder, '..', ConfigTemplateFolder);
} // goHome
function showMessage(msg) {
document.getElementById('browserMessage').innerText = msg;
clearTimeout(showMessageTimer);
showMessageTimer = setTimeout('document.getElementById("browserMessage").innerText="";', 2000);
} // showMessage
function toggleAll() {
// toggle all files in the folder
var allItems = document.getElementsByClassName("filebrowser_file");
var selItems = document.getElementsByClassName("selectedFile");
if (allItems.length > selItems.length) {
// most not selected, so select all
Array.prototype.forEach.call(allItems, function (el) {
el.classList.add('selectedFile')
});
document.getElementById('btnChooseTemplate').style.opacity = 1;
showMessage('All ' + allItems.length + ' templates selected.');
document.getElementById('allToggle').innerText = document.getElementById('allToggle').getAttribute('data-none-label');
} else {
// most selected, so deselect all
Array.prototype.forEach.call(allItems, function (el) {
el.classList.remove('selectedFile')
});
document.getElementById('btnChooseTemplate').style.opacity = 0.2;
document.getElementById('allToggle').innerText = document.getElementById('allToggle').getAttribute('data-all-label');
showMessage('');
}
} // toggleAll
function applyFileBrowserHandlers() {
// FILEBROWSER HANDLERS
var timer = 0;
var delay = 150;
var prevent = false;
var fols = document.getElementsByClassName("folder");
var fils = document.getElementsByClassName("file");
var fo;
for (fo = 0; fo < fols.length; fo++) {
fols[fo].addEventListener("dblclick", function () {
navigateDeeper(this.innerText);
});
}
var fi;
for (fi = 0; fi < fils.length; fi++) {
// Assign click handler with delay timer
fils[fi].addEventListener("click", function (e) {
timer = setTimeout(function () {
if (!prevent) {
highlightFile(e);
}
prevent = false;
}, delay);
});
// Assign dblClick handler with delay timer
fils[fi].addEventListener("dblclick", function (e) {
clearTimeout(timer);
prevent = true;
applyFileSelection(e);
});
} // end for
} // applyFileBrowserHandlers
+96
View File
@@ -0,0 +1,96 @@
/**
* @fileOverview
* @author Zoltan Toth
* @version 0.1
*/
/**
* @description
* Vanilla Javascript tooltip.
*
* @class
* @param {string} [options.theme=dark] - Selects one of the pre-defined tooltip styles - light or dark.
* @param {number} [options.dist=10] - Specifies the distance in pixels from trigger to tooltip.
* @param {number} [options.delay=0] - Specifies how long the tooltip remains visible after the mouse leaves the trigger.
*/
Tooltip = function() {
var theme = "dak";
var delay = 50;
var dist = 15;
document.querySelectorAll('[data-tooltip').forEach((item,index) => {
item.addEventListener("mouseover", function(e) {
var tooltip = document.createElement("div");
tooltip.className = "b-tooltip";
tooltip.innerHTML = e.target.getAttribute('data-tooltip');
document.body.appendChild(tooltip);
var pos = e.target.getAttribute('data-position') || "center top",
posHorizontal = pos.split(" ")[0];
posVertical = pos.split(" ")[1];
positionAt(e.target, tooltip, posHorizontal, posVertical);
});
});
document.body.addEventListener("mouseout", function(e) {
if (e.target.hasAttribute('data-tooltip')) {
setTimeout(function() {
document.body.removeChild(document.querySelector(".b-tooltip"));
}, delay);
}
});
/**
* Positions the tooltip.
*
* @param {object} parent - The trigger of the tooltip.
* @param {object} tooltip - The tooltip itself.
* @param {string} posHorizontal - Desired horizontal position of the tooltip relatively to the trigger (left/center/right)
* @param {string} posVertical - Desired vertical position of the tooltip relatively to the trigger (top/center/bottom)
*
*/
function positionAt(parent, tooltip, posHorizontal, posVertical) {
var parentCoords = parent.getBoundingClientRect(), left, top;
switch (posHorizontal) {
case "left":
left = parseInt(parentCoords.left) - dist - tooltip.offsetWidth;
if (parseInt(parentCoords.left) - tooltip.offsetWidth < 0) {
left = dist;
}
break;
case "right":
left = parentCoords.right + dist;
if (parseInt(parentCoords.right) + tooltip.offsetWidth > document.documentElement.clientWidth) {
left = document.documentElement.clientWidth - tooltip.offsetWidth - dist;
}
break;
default:
case "center":
left = parseInt(parentCoords.left) + ((parent.offsetWidth - tooltip.offsetWidth) / 2);
}
switch (posVertical) {
case "center":
top = (parseInt(parentCoords.top) + parseInt(parentCoords.bottom)) / 2 - tooltip.offsetHeight / 2;
break;
case "bottom":
top = parseInt(parentCoords.bottom) + dist;
break;
default:
case "top":
top = parseInt(parentCoords.top) - tooltip.offsetHeight - dist;
}
left = (left < 0) ? parseInt(parentCoords.left) : left;
top = (top < 0) ? parseInt(parentCoords.bottom) + dist : top;
tooltip.style.left = left + "px";
tooltip.style.top = top + pageYOffset + "px";
}
};
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
View File