@simplenodeorm/simplenodereport
Version:
Simple Node Report is a React report designer for the simplenodeorm. Simple Node Report allows the user to create, save and run WYSIWYG style HTML reports in simplenodeorm. To use the report designer call the application with the desired simplenodeorm c
886 lines (753 loc) • 16.3 kB
CSS
/*
* Copyright (c) 2019 simplenodeorm.org
*/
@import "theme.css";
@import "../../node_modules/@simplenodeorm/simplenodeclientbase/lib/clientbase.css";
:root {
--default-content-bkcolor: white;
}
html {
overflow:hidden;
height:100%;
}
body {
background-color: var(--app-background-color);
font-weight: var(--default-font-weight);
color: var(--default-text-color);
float:left;
text-align: left;
font-size:var(--default-font-size);
font-family: var(--font-family);
}
.popupMenu {
position: relative;
background-color: var(--popup-background);
padding:1px;
cursor:pointer;
border: 1px solid var(--popup-border-color);
font-size:var(--default-font-size);
white-space: nowrap;
}
.popupMenu>ul {
margin: 0;
padding: 0;
}
.popupMenu>ul li {
list-style-type: none;
}
.popupMenu>ul li button {
display: block;
padding: 3px 3px;
color: var(--popup-text-color);
width:100%;
background-color: var(--popup-background);
text-decoration: none;
text-align: left;
border: none;
}
.popupMenu>ul li button:hover {
background-color: var(--popup-hover-background);
color: var(--popup-hover-text-color);
}
select {
background: linear-gradient(top, #d6d7d7, #dee0e0);
border: 1px solid #a1a3a3;
border-radius: 4px;
box-shadow: 0 1px #fff;
box-sizing: border-box;
color: var(--default-text-color);
height: var(--default-input-height);
margin: 5px 0 0 3px;
transition: box-shadow 0.3s;
width: 240px;
}
input[type="password"], input[type="text"] {
background: var(--input-background);
border: 1px solid #a1a3a3;
border-radius: 4px;
box-shadow: 0 1px #fff;
box-sizing: border-box;
color: var(--default-text-color);
height: var(--default-input-height);
margin: 5px 0 0 3px;
padding-left: 5px;
transition: box-shadow 0.3s;
width: 240px;
}
input[type="password"]:focus, input[type="text"]:focus {
box-shadow: 0 0 4px 1px rgba(55, 166, 155, 0.3);
outline: 0;
}
input[type="submit"] {
width:100px;
height:25px;
font-size:14px;
font-weight:500;
color:#fff;
text-align: center;
vertical-align:middle;
text-decoration:none;
text-transform:uppercase;
text-shadow:1px 1px 0 #37a69b;
padding-top:3px;
margin: 10px 0 0 10px;
cursor:pointer;
border: none;
background-color: var(--submit-bkcolor);
border-radius: 5px;
box-shadow: inset 0 1px 0 #2ab7ec, 0 2px 0 0 #497a78, 0 10px 5px #999;
}
.designChildContainer {
background: var(--default-bkcolor);
position:absolute;
overflow:hidden;
}
.buttonbar {
position: fixed;
height: 25px;
top:0;
left: 100px;
z-index: 1;
width: 100%;
white-space: nowrap;
background-color: var(--bar-color);
color: var(--text-color-toolbar);
}
.buttonbar .button {
cursor: pointer;
margin-top: 2px;
margin-left: 2px;
border: none;
background: none;
}
.buttonbar .button .label {
display: inline;
padding-bottom: 10px;
vertical-align: middle;
padding-left: 2px;
font-weight: 300;
text-align: left;
font-size:8pt;
color: var(--text-color-toolbar);
}
.buttonbar .aligntool {
display: inline;
vertical-align: top;
margin-left: 25px;
white-space: nowrap;
}
.buttonbar .aligntool .button {
cursor: pointer;
margin: 0;
padding-top: 5px;
padding-left:0;
border: none;
background: none;
}
.minimalist-toolbar{
overflow-y: visible;
position: fixed;
width:200px;
top: 0;
z-index: 1;
left: 0;
background-color: var(--bar-color);
height: 25px;
font-weight: 300;
float:left;
text-align: left;
font-size:8pt;
color: var(--text-color-toolbar);
}
.minimalist-toolbar> ul {
list-style-type: none;
margin: 0;
padding: 0;
overflow: visible;
background-color: var(--bar-color);
font-size: 10pt;
white-space: nowrap;
}
.minimalist-toolbar> ul> li {
float: left;
color: var(--text-color-toolbar);
}
.minimalist-toolbar> ul> li:hover{
color:var(--text-hover)
}
.minimalist-toolbar> ul> li a{
display: block;
color: var(--text-color-toolbar);
padding: 5px 10px;
text-decoration: none;
text-align: left;
}
.minimalist-toolbar> ul> li a:hover{
color:var(--text-hover);
text-decoration: none;
font-weight: 200;
}
.minimalist-toolbar> ul> li a:hover {
background-color: #111;
cursor:default;
clear:both
}
.minimalist-toolbar-brand{
color:var(--text-hover);
padding-top: 1px;
padding-left: 5px;
padding-bottom: 2px;
font-weight: var(--strong-font-weight);
background: transparent;
}
.minimalist-toolbar> ul> li .brand a{
padding-left: 5px;
}
.minimalist-toolbar-brand .logo{
width: 20px;
margin-right: 5px;
margin-left:5px;
padding-bottom:2px;
vertical-align: middle;
height: 100%;
}
.minimalist-toolbar .dropdown {
position: relative;
display: inline-block;
color: var(--text-color-toolbar);
overflow: visible;
}
.minimalist-toolbar .dropdown:hover, .minimalist-toolbar .dropdown-content:hover{
background-color: var(--bar-color);
color: var(--text-hover);
}
.minimalist-toolbar .dropdown-content {
display: none;
position: absolute;
background-color: black;
min-width: 200px;
width: auto;
box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
z-index: 2;
}
.minimalist-toolbar .dropdown:hover .dropdown-content {
display:inline-block;
white-space: nowrap;
color: var(--text-color-toolbar);
}
.minimalist-toolbar .dropdown-content a:hover{
color:var(--text-hover);
}
.login div {
text-align: right;
padding-right: 20px;
}
.login {
background: var(--modal-background-color);
border: 1px solid #42464b;
border-radius: 10px;
height: 225px;
margin: 15% 30%;
width: 375px;
}
.login h3 {
background: var(--header-background);
border-bottom: 2px solid #a6abaf;
border-radius: 10px 10px 0 0;
box-sizing: border-box;
color: var(--header-text-color);
display: block;
padding-top: 2px;
margin: 0;
height: 24px;
text-align: center;
}
.label {
font-weight: 600;
}
.fieldLabel {
margin-left: 3px;
font-size: var(--small-font-size);
text-align: right;
font-weight: 600;
}
input[type="checkbox"] {
display: inline;
width: 12px;
height: 12px;
vertical-align: middle;
margin: 2px;
}
.saveButton {
cursor: pointer;
vertical-align: middle;
margin-top: 2px;
margin-left: 20px;
padding: 0;
border: none;
background: none;
}
.saveButton .text {
vertical-align: middle;
padding-bottom: 15px;
margin-left: 2px;
font-size: var(--default-font-size);
}
.runButton {
cursor: pointer;
vertical-align: middle;
margin-top: 2px;
margin-left: 120px;
padding: 0;
border: none;
background: none;
}
.runButton .text {
vertical-align: middle;
padding-bottom: 15px;
margin-left: 2px;
font-size: var(--default-font-size);
}
.selectQueryButton {
cursor: pointer;
vertical-align: middle;
padding-left: 7px;
padding-right: 0;
margin: 0;
border: none;
background: none;
}
.helpButton {
cursor: pointer;
padding-top: 10px;
padding-left: 50px;
border: none;
background: none;
}
.modalContainer {
position: relative;
background:var(--modal-background-color);
border: 1px solid #42464b;
border-radius: 10px;
z-index: 1;
}
.modalContainer h3 {
background: var(--header-background);
border-bottom: 2px solid #a6abaf;
border-radius: 10px 10px 0 0;
box-sizing: border-box;
color: var(--header-text-color);
display: block;
padding-top: 2px;
margin: 0;
height: 24px;
width: 100%;
text-align: center;
}
.buttonPanel {
position: absolute;
border-top: 2px solid #a6abaf;
left: 5px;
right: 5px;
text-align: center;
white-space: nowrap;
}
.button {
background-color: var(--modal-button-color);
border-radius: 200px;
color: var(--default-bkcolor);
font-size: var(--default-font-size);
height:24px;
margin-top: 5px;
margin-left: 5px;
margin-right: 5px;
cursor:pointer;
}
.parameterInputPanel {
padding: 5px;
}
.inputEntryList {
position: relative;
box-sizing:border-box;
overflow-y: auto;
overflow-x: hidden;
height: 170px;
}
.parameterInputPanel .inputLabel {
font-weight: 600;
text-align: right;
margin: 0;
vertical-align: middle;
padding-top: 10px
}
.saveReportPanel {
padding: 5px;
}
.modalTreeContainer {
border: var(--default-border-color) 2px solid;
background-color: var(--default-bkcolor);
overflow:auto;
height: 225px;
}
.waitMessage {
background:var(--modal-background-color);
border: 1px solid #42464b;
border-radius: 5px;
font-weight:600;
height: var(--wait-message-height);
color: var(--wait-message-font-color);
white-space: nowrap;
z-index: 1;
}
.waitMessage span {
position: absolute;
padding-top: 5px;
}
.waitMessage img {
margin: 5px;
}
.statusBar {
position: fixed;
background-color: var(--bar-color);
font-size: var(--small-font-size);
z-index: 100;
bottom: 0;
left: 0;
height: var(--status-bar-height);
width: 100%;
padding-left: 5px;
white-space: nowrap;
}
.statusBar .infoMessage {
vertical-align: top;
background: transparent;
color: var(--info-message-color);
padding-left: 50%;
}
.statusBar .errorMessage {
background: transparent;
color: var(--error-message-color);
padding-right: 10px;
padding-left: 50%;
}
.errorDisplay {
background: transparent;
color: var(--error-message-color);
font-size: var(--large-font-size);
padding-right: 10px;
padding-left: 10px;
}
.statusBar .currentDocument {
background: transparent;
color: white;
padding-right: 10px;
text-align: right;
}
.loginTitle {
color: var(--title-color);
}
.designPanel {
position:absolute;
background: var(--default-bkcolor);
margin-left: 33px;
margin-top: 1px;
height:100%;
width:100%;
overflow:hidden;
}
.documentWrapper {
position: absolute;
border: 1px solid #a1a3a3;
overflow: auto;
}
.designContainer {
position: fixed;
background-color: var(--rule-background-color);
margin-left: 3px;
width:100%;
height:100%;
overflow: hidden;
}
.verticalRule {
position: fixed;
background-color: var(--rule-background-color);
width: 30px;
padding-left: 2px;
-webkit-touch-callout: none; /* iOS Safari */
-webkit-user-select: none; /* Safari */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* Internet Explorer/Edge */
user-select: none;
}
.horizontalRule {
background-color: var(--rule-background-color);
width: 100%;
padding-left: 2px;
height: 30px;
position:relative;
-webkit-touch-callout: none; /* iOS Safari */
-webkit-user-select: none; /* Safari */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* Internet Explorer/Edge */
user-select: none;
}
.horizontalRule .slider {
height: 10px;
width: 150px;
margin-left: 30px;
}
.verticalRule .slider {
position:fixed;
float:left;
height: 150px;
width: 10px;
}
.marginLines {
display: inline;
}
.preferencesPanel {
}
.preferencesPanel td {
margin:0;
padding: 0;
}
.preferencesPanel table {
padding-left:20px;
}
.nameInput {
width:70px;
}
.preferencesPanel select {
width:80px;
}
.preferencesPanel th {
text-align: right;
font-weight: 500;
margin: 0;
white-space: nowrap;
vertical-align: middle;
padding-right: 0;
padding-top: 10px
}
.lasso {
background: transparent;
border: solid 1px red;
position: relative;
z-index: 10;
display: none;
}
.tabSetContainer {
position: absolute;
background: var(--modal-background-color);
padding-left: 2px;
margin-left: 3px;
height:80%;
width: 99%;
}
.react-tabs {
-webkit-tap-highlight-color: transparent;
background: var(--modal-background-color);
}
.react-tabs li {
background: var(--modal-background-color);
}
.react-tabs__tab-list {
border-bottom: 1px solid #aaa;
margin: 0 0 10px;
padding: 0;
white-space:nowrap;
background: var(--modal-background-color);
}
.react-tabs__tab {
display: inline-block;
border: 1px solid transparent;
border-bottom: none;
bottom: -1px;
position: relative;
list-style: none;
padding: 6px 12px;
cursor: pointer;
}
.react-tabs__tab--selected {
background: #fff;
border-color: #aaa;
color: black;
border-radius: 5px 5px 0 0;
}
.react-tabs__tab--disabled {
color: GrayText;
cursor: default;
}
.react-tabs__tab:focus {
box-shadow: 0 0 5px hsl(208, 99%, 50%);
border-color: hsl(208, 99%, 50%);
outline: none;
}
.react-tabs__tab:focus:after {
content: "";
position: absolute;
height: 5px;
left: -4px;
right: -4px;
bottom: -5px;
background: #fff;
}
.react-tabs__tab-panel {
display: none;
height:100%;
}
.react-tabs__tab-panel--selected {
display: block;
}
.moveButton {
cursor: pointer;
vertical-align: bottom;
padding: 0;
border: none;
background: none;
}
.columnSelectLine {
border-style: solid;
border-width: 1px;
border-color: var(--default-border-color);
padding-bottom: 2px;
margin:0;
}
.columnSelectLine input[type="text"] {
width: 150px;
}
.columnSelectLine select {
width: 40px;
}
.tabContainer {
position: absolute;
box-sizing:border-box;
background: var(--modal-background-color);
overflow: auto;
height: 78%;
width: 98%;
}
.dataAxisContainer {
position: absolute;
box-sizing:border-box;
background: var(--default-bkcolor);
overflow: auto;
height: 200px;
margin-top: 3px;
border: solid gray 1px;
width: 98%;
}
.dataEntry {
padding: 0;
margin-left: 5px;
display: inline-block;
}
.dataEntry th {
text-align: right;
font-weight: 500;
vertical-align: middle;
}
.dataEntry select {
width: auto;
margin-left: 3px;
}
.centerAlign {
text-align: center;
}
.colorPicker {
width: 40px;
border: 1px solid #a1a3a3;
border-radius: 4px;
box-shadow: 0 1px #fff;
box-sizing: border-box;
text-align: right;
margin: 3px 0 3px 3px;
vertical-align: middle;
display: inline-block;
height: var(--default-input-height);
}
.colorPicker img {
vertical-align: middle;
}
.colorPicker .color {
width: 40px;
height: 15px;
border: none;
padding: 0;
margin: 0;
display: block;
}
.color:hover {
border: 1px dashed black;
}
.colorlist {
height: 75px;
overflow: auto;
position: sticky;
display: block;
z-index: 10;
padding:0;
margin: 0;
border: gray 1px solid;
}
.locationSelect {
margin: 3px;
display: inline-block;
}
.locationSelect select {
width: 100px;
}
.textAlignSelect {
margin: 0 10px 2px 0;
display: inline-block;
}
.textAlignSelect select {
margin-left: 2px;
width: 75px;
}
.designCanvas {
background: transparent;
position: absolute;
z-index: 1;
}
.reportObject {
border: none;
}
.reportObject:hover {
border: solid 1px crimson;
}
.chartElements {
position: absolute;
box-sizing:border-box;
background: var(--default-bkcolor);
vertical-align: top;
width: 98%;
}
.chartElements table {
padding: 0;
margin: 0;
}
.chartElements th {
font-weight: var(--strong-font-weight);
text-align: center;
border-bottom: solid gray 1px;
}
.chartElements tr td:nth-of-type(1) {
text-align: right;
}
.chartElements select {
width: 75px;
margin: 0;
padding: 0;
}
.chartTitle input {
width: 75px;
}
.chartDataSelect img {
padding-left: 5px;
margin-top: 4px;
cursor: pointer;
}
.lineStyle1 {
background-color: var(--default-bkcolor)
}