blob: 4b798086c5ed6be546ebc9b1b17e81fe131b4b5b [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/* (begin) global */
.kie-dmn-editor--root {
height: 100%;
}
.kie-dmn-editor--diagram-container {
height: 100%;
position: relative;
}
.kie-dmn-editor--bee-container {
position: relative;
height: 100%;
display: flex;
flex-direction: column;
overflow: auto;
user-select: none;
padding-left: 16px;
}
/* (end) global */
/* (begin) diagram empty state */
.kie-dmn-editor--diagram-empty-state {
border: 1px solid lightgray;
backdrop-filter: blur(4px);
background: rgb(255, 255, 255, 60%);
border-radius: 16px;
padding: 16px;
pointer-events: all;
box-shadow: 0 0 60px 20px #e1e1e1;
}
/* (end) diagram empty state */
/* (begin) nodes */
.kie-dmn-editor--node {
height: 100%;
width: 100%;
padding: 10px;
display: flex;
align-items: center;
justify-content: center;
word-break: break-word;
overflow: hidden;
-webkit-line-clamp: 2; /* number of lines to show */
line-clamp: 2;
-webkit-box-orient: vertical;
text-align: center;
position: absolute;
z-index: 10;
top: 0;
left: 0;
overflow: visible;
z-index: 10000; /* Makes the data type node panel appear correctly, on top of the node */
}
.kie-dmn-editor--node:focus {
outline: none;
}
.kie-dmn-editor--node.dimmed,
.kie-dmn-editor--node-shape.dimmed,
.kie-dmn-editor--input-data-node.dimmed {
opacity: 0.3;
pointer-events: none;
}
.kie-dmn-editor--node-shape {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 1;
}
.kie-dmn-editor--input-data-node {
outline: none;
width: 100%;
height: 100%;
}
.kie-dmn-editor--text-annotation-node {
text-align: left;
display: block;
}
.kie-dmn-editor--unknown-node {
color: red;
}
/* (end) nodes */
/* (begin) decisionService and group nodes */
/* DECISION SERVICES AND GROUPS HAVE A SPECIFIC SELECTION MECHANISM TO ALLOW EDITING EDGES INSIDE THEM */
.kie-dmn-editor--node-decisionService-visibleRect {
pointer-events: none;
}
.kie-dmn-editor--node-containerNodeInteractionRect,
.kie-dmn-editor--node-decisionService-interactionDividerLine {
pointer-events: stroke !important;
opacity: 0;
/* ⬇ Uncomment for debugging purposes:*/
/* stroke: purple;
opacity: 0.2; */
}
.kie-dmn-editor--node-decisionService-interactionDividerLine:not(.readonly):hover {
cursor: row-resize;
}
.react-flow__node-node_group,
.react-flow__node-node_decisionService {
pointer-events: none !important;
background: transparent;
box-shadow: none !important;
}
.react-flow__node-node_group:not(.selected) .kie-dmn-editor--node-shape,
.react-flow__node-node_decisionService:not(.selected) .kie-dmn-editor--node-shape {
filter: none !important;
}
.react-flow__node-node_decisionService .kie-dmn-editor--outgoing-stuff-node-panel,
.react-flow__node-node_group .kie-dmn-editor--outgoing-stuff-node-panel,
.react-flow__node-node_decisionService .kie-dmn-editor--editable-node-name-input span,
.react-flow__node-node_group .kie-dmn-editor--editable-node-name-input span,
.react-flow__node-node_decisionService .kie-dmn-editor--info-node-panel,
.react-flow__node-node_group .kie-dmn-editor--info-node-panel,
.react-flow__node-node_decisionService .kie-dmn-editor--data-type-node-panel,
.react-flow__node-node_group .kie-dmn-editor--data-type-node-panel,
.react-flow__node-node_decisionService .react-flow__resize-control div,
.react-flow__node-node_group .react-flow__resize-control div {
pointer-events: all !important;
}
.kie-dmn-editor--decision-service-node {
position: relative;
}
.react-flow__node-node_decisionService.selected .kie-dmn-editor--decision-service-collapsed-button {
border-color: #006ba4 !important;
}
.kie-dmn-editor--decision-service-node .kie-dmn-editor--decision-service-collapsed-button {
border: 3px;
border-style: solid;
border-color: black;
font-weight: bold;
position: absolute;
width: 24px;
height: 25px;
font-size: 24px;
text-align: center;
bottom: 4px;
line-height: 21px;
}
.react-flow__node-node_decisionService .kie-dmn-editor--node-shape .kie-dmn-editor--decision-service-label {
font-family: system-ui;
font-size: 0.6em;
letter-spacing: 8px;
fill: #a9a9a9;
}
/* (end) decisionService and group nodes */
/* (begin) external nodes */
.kie-dmn-editor--node.external {
text-decoration: underline;
}
/* (end) external node */
/* (begin) alternative input node */
.kie-dmn-editor--selected-alternative-input-data-node:before {
content: "";
display: block;
position: absolute;
pointer-events: none;
border-radius: 6px;
top: -10px;
left: -10px;
width: calc(100% + 20px);
height: var(--selected-alternative-input-data-node-shape--height);
backdrop-filter: blur(8px);
}
.kie-dmn-editor--selected-alternative-input-data-node:before {
border: 1px dashed #006ba4;
background-color: rgb(161 222 255 / 20%); /* Very slightly blue hue */
}
/* (end) alternative input node */
/* (begin) textAnnotation, and unknown nodes */
.react-flow__node-node_unknown.selected:before,
.react-flow__node-node_textAnnotation.selected:before {
content: "";
display: block;
position: absolute;
pointer-events: none;
border-radius: 6px;
top: -10px;
left: -10px;
width: calc(100% + 20px);
height: calc(100% + 20px);
backdrop-filter: blur(8px);
}
.react-flow__node-node_textAnnotation.selected:before {
border: 1px dashed #006ba4;
background-color: rgb(161 222 255 / 20%); /* Very slightly blue hue */
}
.react-flow__node-node_unknown.selected:before {
border: 1px dashed #a40000;
background-color: rgb(255 161 161 / 20%); /* Very slightly red hue */
}
/* (end) textAnnotation, and unknown nodes */
/* (begin) palette */
.kie-dmn-editor--drd-selector-popover .pf-c-popover__body {
padding: 0;
}
.kie-dmn-editor--drd-selector {
padding: 3px 8px 3px 16px;
border-radius: 99999px;
background: white;
border: 1px solid black;
display: flex;
align-items: center;
}
.kie-dmn-editor--drd-selector input {
overflow: hidden;
text-wrap: nowrap;
text-overflow: ellipsis;
max-width: 300px;
min-width: 50px;
}
.kie-dmn-editor--drd-selector:hover {
box-shadow: 4px 4px 2px 0px rgb(127 127 127);
filter: brightness(95%);
}
.kie-dmn-editor--drd-selector button {
border: 0;
padding: 4px 16px;
border-radius: 8px;
background: white;
}
.kie-dmn-editor--drd-selector button:hover {
filter: brightness(95%);
}
.kie-dmn-editor--drd-selector button:active {
filter: brightness(90%);
}
.kie-dmn-editor--drd-list button {
padding: 8px 16px;
margin: 4px 0;
margin-right: 16px;
border-radius: 12px;
text-align: left;
background: white;
border-radius: 8px;
border: 0;
max-width: 300px;
width: 100%;
overflow: hidden;
text-wrap: nowrap;
text-overflow: ellipsis;
}
.kie-dmn-editor--drd-list button.active {
color: #0067cc;
filter: brightness(95%);
}
.kie-dmn-editor--drd-list button:hover {
filter: brightness(95%);
}
.kie-dmn-editor--drd-list button:active {
filter: brightness(90%);
}
.kie-dmn-editor--drd-properties--input-data-node-shape button {
height: 36px;
}
.kie-dmn-editor--palette {
width: 42px;
background: #fff;
border-radius: 40px;
border: 1px solid black;
}
.kie-dmn-editor--palette:hover {
box-shadow: 4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--palette.pulse {
animation: pulse 3s infinite;
}
@keyframes pulse {
0% {
box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
}
70% {
box-shadow: 0 0 20px 20px rgba(0, 0, 0, 0);
}
100% {
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0);
}
}
.kie-dmn-editor--palette-button {
margin: 0;
margin-bottom: 8px;
padding: 0;
width: 40px;
height: 40px;
max-width: 40px;
border-radius: 40px;
border: 0;
background: white;
}
.kie-dmn-editor--palette-button:hover {
filter: brightness(95%);
cursor: grab;
}
.kie-dmn-editor--palette-button:active {
filter: brightness(90%);
cursor: grabbing;
}
/* (end) palette */
/* (begin) properties panel toggle */
.kie-dmn-editor--properties-panel-toggle {
width: 42px;
background: #fff;
border-radius: 40px;
border: 1px solid black;
}
.kie-dmn-editor--properties-panel-toggle:hover {
box-shadow: -4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--properties-panel-toggle-button {
margin: 0;
width: 40px;
height: 40px;
max-width: 40px;
border-radius: 40px;
border: 0;
background: white;
}
.kie-dmn-editor--properties-panel-toggle-button:hover {
filter: brightness(95%);
}
.kie-dmn-editor--properties-panel-toggle-button:active {
filter: brightness(90%);
}
/* (end) properties panel toggle */
/* (begin) version popover */
.kie-dmn-editor--version-popover .pf-c-popover__body {
padding: 0;
}
/* (end) version popover */
/* (begin) autolayout panel toggle */
.kie-dmn-editor--autolayout-panel-toggle {
width: 42px;
background: #fff;
border-radius: 40px;
border: 1px solid black;
}
.kie-dmn-editor--autolayout-panel-toggle:not(:last-child) {
margin-right: 16px;
}
.kie-dmn-editor--autolayout-panel-toggle:hover {
box-shadow: -4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--autolayout-panel-toggle-button {
margin: 0;
width: 40px;
height: 40px;
max-width: 40px;
border-radius: 40px;
border: 0;
background: white;
}
.kie-dmn-editor--autolayout-panel-toggle-button:hover {
filter: brightness(95%);
}
.kie-dmn-editor--autolayout-panel-toggle-button:active {
filter: brightness(90%);
}
/* (end) autolayout panel toggle */
/* (begin) overlays panel toggle */
.kie-dmn-editor--overlays-panel-toggle {
width: 42px;
background: #fff;
border-radius: 40px;
border: 1px solid black;
}
.kie-dmn-editor--overlays-panel-toggle:not(:last-child) {
margin-right: 16px;
}
.kie-dmn-editor--overlays-panel-toggle:hover {
box-shadow: -4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--overlays-panel-toggle-button {
margin: 0;
width: 40px;
height: 40px;
max-width: 40px;
border-radius: 40px;
border: 0;
background: white;
}
.kie-dmn-editor--overlays-panel-toggle-button:hover {
filter: brightness(95%);
}
.kie-dmn-editor--overlays-panel-toggle-button:active {
filter: brightness(90%);
}
.kie-dmn-editor--snap-slider .pf-c-slider__value > input {
max-width: 60px;
min-width: 60px;
width: 60px;
}
/* (end) overlays panel toggle */
/* (begin) drg/external nodes panel toggle */
.kie-dmn-editor--drg-panel-toggle {
margin-right: 16px;
width: 42px;
background: #fff;
border-radius: 40px;
border: 1px solid black;
}
.kie-dmn-editor--external-nodes-panel-toggle:hover,
.kie-dmn-editor--drg-panel-toggle:hover {
box-shadow: 4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--external-nodes-panel-toggle-button,
.kie-dmn-editor--drg-panel-toggle-button {
margin: 0;
width: 40px;
height: 40px;
max-width: 40px;
border-radius: 40px;
border: 0;
background: white;
}
.kie-dmn-editor--external-nodes-panel-toggle-button:hover,
.kie-dmn-editor--drg-panel-toggle-button:hover {
filter: brightness(95%);
}
.kie-dmn-editor--external-nodes-panel-toggle-button:active,
.kie-dmn-editor--drg-panel-toggle-button:active {
filter: brightness(90%);
}
.kie-dmn-editor--external-nodes-panel-toggle-button.active,
.kie-dmn-editor--drg-panel-toggle-button.active {
color: #006ba4;
}
.kie-dmn-editor--palette-nodes-popover {
position: absolute;
top: 0;
left: 58px;
overflow: auto;
box-shadow: 0px 5px 10px 0px lightgray;
background: rgb(255, 255, 255, 90%);
backdrop-filter: blur(4px);
width: 400px;
}
.kie-dmn-editor--external-nodes-panel-toggle {
margin-right: 16px;
width: 42px;
background: #fff;
border-radius: 40px;
border: 1px solid black;
}
.kie-dmn-editor--external-nodes-panel-toggle-button svg {
transform: scale(1, -1); /* Flip the 'migration icon' vertically, to point to the Diagram */
}
/* (end) drg/external nodes panel toggle */
/* nodes */
.kie-dmn-editor--outgoing-stuff-node-panel {
position: absolute;
left: calc(100% - 10px); /* - 1px to make sure it is directly connected to the node */
top: 0;
padding-left: 15px;
height: max(40%, 80px);
align-content: flex-start;
}
.kie-dmn-editor--outgoing-stuff-node-panel > div {
display: flex;
margin: 0 0 4px 0;
background: #fff;
border-radius: 24px;
border: 1px solid black;
box-shadow: 4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--outgoing-stuff-node-panel > div > div {
color: black;
margin: 0;
padding: 0;
width: 34px;
height: 34px;
max-width: 34px;
border-radius: 34px;
background: #fff;
border: 0;
cursor: pointer;
display: flex;
font-weight: bold;
align-items: center;
justify-content: center;
}
.kie-dmn-editor--outgoing-stuff-node-panel > div > div:hover {
filter: brightness(95%);
}
.kie-dmn-editor--outgoing-stuff-node-panel > div > div:active {
filter: brightness(90%);
}
/* (begin) node handles */
/* To make sure connection lines are steadly glued to the
handles, we make their indicators be ::before elements. The handle
itself is a 0px by 0px div, as connection lines can move freely when
the cursor is inside it. By making it adimensional, that never happens. */
.kie-dmn-editor--node-handle.connecting::before {
content: "";
position: absolute;
background: #0388ce;
border-radius: 100%;
border: 1px solid black;
pointer-events: none;
width: 20px;
height: 20px;
top: -10px;
left: -10px;
}
.kie-dmn-editor--node-handle:not(.connecting)::before {
content: "";
position: absolute;
background: #0388ce;
border-radius: 100%;
border: 1px solid black;
pointer-events: none;
width: 14px;
height: 14px;
top: -7px;
left: -7px;
}
.kie-dmn-editor--node-handle {
/* These 0px are is by design. See explanation above. */
width: 0px;
min-width: 0px;
height: 0px;
min-height: 0px;
border: 0;
z-index: 20;
}
.kie-dmn-editor--node-handle.top {
top: 0;
left: 50%;
}
.kie-dmn-editor--node-handle.right {
top: 50%;
right: 0;
}
.kie-dmn-editor--node-handle.bottom {
bottom: 0;
left: 50%;
}
.kie-dmn-editor--node-handle.left {
top: 50%;
left: 0;
}
.kie-dmn-editor--node-handle.center {
top: 50%;
left: 50%;
}
/* (end) node handles */
/* (begin) node panels */
/* data type selector on inputData, decision, bkm, and decisionService nodes */
.kie-dmn-editor--data-type-node-panel {
position: absolute;
top: -46px;
padding-bottom: 14px;
display: flex;
align-items: end;
/* zoom is not supported by Playwright library */
transform: scale(0.8);
}
.kie-dmn-editor--data-type-node-panel .kie-dmn-editor--data-type-jump-to-definition {
padding-left: 4px;
padding-right: 4px;
}
/* Customizing some patternfly components is hard... */
.kie-dmn-editor--data-type-node-panel > div > div:first-of-type > div:first-of-type > div:first-of-type > button,
.kie-dmn-editor--data-type-node-panel > div > div:first-of-type > div:first-of-type > div:first-of-type input,
.kie-dmn-editor--data-type-node-panel > div > div:first-of-type > div:first-of-type > div:first-of-type,
.kie-dmn-editor--data-type-node-panel > div > div:first-of-type > div:first-of-type,
.kie-dmn-editor--data-type-node-panel > div > div:first-of-type > button,
.kie-dmn-editor--data-type-node-panel > div > div:first-of-type,
.kie-dmn-editor--data-type-node-panel > div {
border-radius: 99999px;
outline: none;
}
.kie-dmn-editor--data-type-node-panel > div {
padding-left: 12px;
border: 1.25px solid black;
background: white;
box-shadow: 5px 5px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--data-type-node-panel .pf-c-select__menu.pf-m-static {
text-align: left;
z-index: 999999;
}
.kie-dmn-editor--data-type-node-panel span {
height: 19px;
}
.kie-dmn-editor--data-type-node-panel .pf-c-button.pf-c-select__toggle-button.pf-m-plain {
margin-left: 24px;
}
.kie-dmn-editor--data-type-node-panel .pf-c-button.pf-m-control::after,
.kie-dmn-editor--data-type-node-panel .pf-c-select__toggle.pf-m-typeahead::before {
border: 0;
}
/* edit button on decision and bkm nodes */
.kie-dmn-editor--edit-expression-node-panel {
position: absolute;
padding: 4px 8px;
bottom: -16px;
font-size: 0.7em;
box-shadow: 4px 4px 2px 0px rgb(127 127 127);
cursor: pointer;
background: white;
color: black;
}
.kie-dmn-editor--edit-expression-node-panel > .pf-c-label__content::before {
border: 1px solid black;
}
.kie-dmn-editor--edit-expression-node-panel:hover {
filter: brightness(95%);
}
.kie-dmn-editor--edit-expression-node-panel:active {
filter: brightness(90%);
}
.kie-dmn-editor--tabs ~ section {
overflow: auto;
height: calc(100% - 40px);
}
/* info button on all nodes */
.kie-dmn-editor--info-node-panel {
position: absolute;
top: 0;
right: calc(100% + 4px - 21px);
padding-right: 21px;
height: max(25%, 40px);
}
.kie-dmn-editor--info-label {
padding: 4px 5px;
height: 19px;
cursor: pointer;
background: white;
color: black;
font-weight: bold;
box-shadow: 4px 4px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--info-label > .pf-c-label__content::before {
border: 1px solid black;
}
.kie-dmn-editor--info-label:hover {
filter: brightness(95%);
}
.kie-dmn-editor--info-label:active {
filter: brightness(90%);
}
/* (end) node panels */
/* back button on boxed expression */
.kie-dmn-editor--boxed-expression-back {
cursor: pointer;
background: white;
margin-left: -1px;
height: 40px;
width: 160px;
justify-content: center;
}
.kie-dmn-editor--boxed-expression-back > .pf-c-label__content::before {
border: 1px solid black;
}
.kie-dmn-editor--boxed-expression-back:hover {
filter: brightness(95%);
box-shadow: 2px 3px 2px 0px rgb(127 127 127);
}
.kie-dmn-editor--boxed-expression-back:active {
filter: brightness(90%);
}
/* (begin) edges with waypoints */
.kie-dmn-editor--edge.dimmed {
opacity: 0.3;
pointer-events: none;
}
circle.kie-dmn-editor--diagram-edge-waypoint {
fill: black;
stroke-width: 8;
stroke: #006ba4;
}
circle.kie-dmn-editor--diagram-edge-waypoint:active,
circle.kie-dmn-editor--diagram-edge-waypoint:hover {
stroke-width: 16;
cursor: grab;
}
.react-flow__edge.selected .kie-dmn-editor--edge-waypoint-potential,
.react-flow__edge:not(.selected) .kie-dmn-editor--edge-waypoint-potential {
fill: #4d809b96;
}
.kie-dmn-editor--edge-waypoint-potential {
pointer-events: none;
}
/* (end) edges with waypoints */
/* (begin) misc */
.kie-dmn-editor--round-svg-container {
pointer-events: none;
width: 100%;
height: 100%;
}
.kie-dmn-editor--sticky-top-glass-header {
position: sticky;
top: 0;
left: 0;
z-index: 9999;
background: rgb(255, 255, 255, 60%);
backdrop-filter: blur(4px);
border-bottom: 1px solid lightgray;
}
.kie-dmn-editor--boxed-expression-header {
padding: 14px;
padding-left: 0;
}
.kie-dmn-editor--data-type-panel-header {
padding: 0 16px 0 16px;
align-items: center !important;
}
.kie-dmn-editor--data-type-panel-header-nested-or-external {
height: 120px;
align-items: flex-end !important;
padding: 0 16px 0 16px;
}
/* (end) misc */
/* (begin) external nodes */
.kie-dmn-editor--external-nodes-section:not(:last-child) {
margin-bottom: 16px;
padding-bottom: 12px;
border-bottom: 1px solid lightgray;
}
.kie-dmn-editor--external-nodes-section-title {
margin-bottom: 6px;
}
.kie-dmn-editor--external-nodes-list-item {
border-radius: 999px;
}
.kie-dmn-editor--external-nodes-list-item:hover {
background-color: rgba(0, 0, 0, 0.1);
cursor: grab;
}
.kie-dmn-editor--external-nodes-list-item:active {
background-color: rgba(0, 0, 0, 0.15);
cursor: grabbing;
}
/* (end) external nodes */
/* (begin) data type label */
.kie-dmn-editor--data-type-label {
font-style: italic;
font-size: smaller;
color: #1b515f;
text-overflow: ellipsis;
white-space: nowrap;
}
/* (end) data type label */
/* (begin) data types */
.kie-dmn-editor--data-types-filter {
padding: 16px;
}
.kie-dmn-editor--data-types-filter input {
flex-grow: 1;
}
.kie-dmn-editor--data-types-nav {
padding-left: 16px;
}
.kie-dmn-editor--data-types-nav-item:first-child {
margin-top: 16px;
}
.kie-dmn-editor--data-types-nav-item {
display: flex;
align-items: baseline;
padding: 0 16px;
margin: 8px 0;
margin-right: 16px;
border-radius: 12px;
cursor: pointer;
}
.kie-dmn-editor--data-types-title {
flex-grow: 1;
font-size: 2em;
}
.kie-dmn-editor--data-types-title div,
.kie-dmn-editor--data-types-title div input {
width: 100%;
}
.kie-dmn-editor--data-types-nav-item.active {
color: #0067cc;
backdrop-filter: brightness(95%);
}
.kie-dmn-editor--data-types-nav-item:hover {
backdrop-filter: brightness(90%);
}
.kie-dmn-editor--data-types-nav-item:focus {
backdrop-filter: brightness(80%);
}
.kie-dmn-editor--data-type-parents button {
padding: 6px !important;
margin-right: 36px !important;
}
.kie-dmn-editor--data-type-parents button:last-child::after {
content: "↴";
margin-top: 8px;
}
.kie-dmn-editor--data-type-parents button::after {
content: ">";
margin: 0;
font-size: 24px;
position: absolute;
padding: 8px;
pointer-events: none;
right: 0px;
width: calc(100% + 30px);
height: 100%;
text-align: right;
display: flex;
align-items: center;
justify-content: flex-end;
}
.kie-dmn-editor--data-type-properties-table--empty-state {
margin: 8px 24px 0 0;
padding: 24px;
background: #eee;
border-radius: 24px;
text-align: center;
}
.kie-dmn-editor--data-type-properties-table td,
th {
padding: 12px;
}
.kie-dmn-editor--data-type-properties-table {
position: relative;
overflow: hidden;
}
.kie-dmn-editor--data-type-properties-table tr {
border-bottom: 1px solid lightgray;
position: relative;
}
/* Hover effect */
.kie-dmn-editor--data-type-properties-table tbody tr:hover::after {
content: "";
position: absolute;
left: 0;
width: 6px;
height: 100%;
background: #0067cc;
}
/* Gradients for depth illusion */
.kie-dmn-editor--data-type-properties-table .first-nested-at-level {
background: linear-gradient(to bottom, rgb(0, 0, 0, 0.07) 0, transparent 12px, transparent 100%);
}
.kie-dmn-editor--data-type-properties-table .last-nested-at-level {
background: linear-gradient(to top, rgb(0, 0, 0, 0.07) 0, transparent 12px, transparent 100%);
}
.kie-dmn-editor--data-type-properties-table .first-nested-at-level.last-nested-at-level {
background: linear-gradient(to bottom, rgb(0, 0, 0, 0.07) 0, transparent 12px, transparent 100%),
linear-gradient(to top, rgb(0, 0, 0, 0.07) 0, transparent 12px, transparent 100%);
}
.kie-dmn-editor--data-type-properties-table .pf-m-typeahead {
background: rgb(255, 255, 255, 0.7); /* Let */
}
.kie-dmn-editor--type-ref-selector-invalid-value input {
color: red;
text-decoration: red dotted underline;
text-underline-position: under;
}
/* (end) data types */
/* ******************************* */
/* ******************************* */
/* ******************************* */
/* ******************************* */
/* ******************************* */
/* ⬇ (begin) react-flow theming ⬇ */
/* ******************************* */
/* edge selection / hover */
.react-flow__edge > .kie-dmn-editor--edge {
pointer-events: none;
}
.react-flow__edge.selected > .kie-dmn-editor--edge {
fill: #006ba4 !important;
stroke: #006ba4 !important;
stroke-width: 3px !important;
filter: drop-shadow(2px 2px 2px #006ba477);
}
.react-flow__edge.selected .react-flow__edge-interaction.normal {
cursor: crosshair;
}
.react-flow__edge.selected .react-flow__edge-interaction.dragging-waypoint,
.react-flow__edge.selected
.react-flow__edge-interaction.dragging-waypoint
~ .kie-dmn-editor--diagram-edge-waypoints
circle {
cursor: grabbing;
}
.react-flow__edge:not(.selected) .kie-dmn-editor--edge:hover,
.react-flow__edge:not(.selected) .react-flow__edge-interaction:hover + .kie-dmn-editor--edge {
stroke-width: 2px !important;
}
/* nodes selection / hover */
.react-flow__node:not(.selected):hover > .kie-dmn-editor--node-shape.normal {
filter: drop-shadow(2px 2px 2px rgb(127, 127, 127));
}
.react-flow__node.selected {
color: #006ba4 !important;
}
.react-flow__node > .kie-dmn-editor--node-shape.drop-target-invalid ~ .kie-dmn-editor--node,
.react-flow__node
> .kie-dmn-editor--node-shape.drop-target-invalid
~ .kie-dmn-editor--node
.kie-dmn-editor--decision-service-collapsed-button {
border-color: red !important;
color: red !important;
opacity: 0.4;
}
.react-flow__node > .kie-dmn-editor--node-shape.drop-target-invalid {
border-color: red !important;
}
.react-flow__node > .kie-dmn-editor--node-shape.drop-target-invalid > * {
stroke: rgba(255, 0, 0, 0.2) !important;
fill: rgba(164, 0, 0, 0.1) !important;
}
.react-flow__node > .kie-dmn-editor--node-shape.drop-target ~ .kie-dmn-editor--node {
color: #006ba4 !important;
}
.react-flow__node > .kie-dmn-editor--node-shape.drop-target,
.react-flow__node.selected > .kie-dmn-editor--node-shape.normal {
border-color: #006ba4 !important;
filter: drop-shadow(2px 2px 2px #006ba477);
}
.react-flow__node > .kie-dmn-editor--node-shape.drop-target > * {
stroke: #006ba4 !important;
fill: rgba(0, 107, 164, 0.1) !important;
}
.react-flow__node.selected:not(.react-flow__node-node_unknown):not(.react-flow__node-node_textAnnotation)
> .kie-dmn-editor--node-shape
> * {
stroke: #006ba4 !important;
}
/* hierarchy view */
.react-flow__node.hierarchy.up::after,
.react-flow__node.hierarchy.down::after {
content: "";
width: calc(100% + 20px);
height: calc(100% + 20px);
position: absolute;
top: -10px;
left: -10px;
border-radius: 24px;
}
.react-flow__node.hierarchy.up::after {
background-color: rgba(0, 131, 164, 0.15);
}
.react-flow__node.hierarchy.down::after {
background-color: rgb(0 1 128 / 10%);
}
.react-flow__edge.hierarchy.up .react-flow__edge-interaction {
stroke: rgba(0, 131, 164, 0.15);
}
.react-flow__edge.hierarchy.down .react-flow__edge-interaction {
stroke: rgb(0 1 128 / 10%);
}
/* selection rect */
.react-flow__nodesselection-rect {
display: none;
}
/* controls */
.react-flow__controls {
border-radius: 20px;
border: 1px solid black;
background: white;
margin-bottom: 24px;
}
.react-flow__controls:hover {
box-shadow: -4px -4px 2px 0px rgb(127 127 127);
}
.react-flow__controls > button {
border-radius: 20px;
}
.react-flow__controls > button:hover {
filter: brightness(95%);
}
.react-flow__controls > button:active {
filter: brightness(90%);
}
.react-flow__controls {
border-radius: 1000px;
}
.react-flow__controls-button {
width: 30px;
height: 30px;
border: 0;
border-radius: 1000px;
}
.react-flow__resize-control {
z-index: 0;
}
/* This is the rectangle that renders when dragging to select nodes. It shouldn't have any interaction with the mouse, as it messes hoverInfo for nodes. */
.react-flow__selection.react-flow__container {
pointer-events: none;
}
/* This is the rectangle that renders when dragging to select nodes. It shouldn't have any interaction with the mouse, as it messes hoverInfo for nodes. */
.react-flow__connectionline {
z-index: 10000;
}
/* edge updaters */
.react-flow__edgeupdater {
z-index: 9000;
fill: white;
stroke: #006ba4;
stroke-width: 2px;
cursor: grab;
}
.react-flow__edge:not(.selected:hover) .react-flow__edgeupdater,
.react-flow__edgeupdater.hidden {
opacity: 0;
pointer-events: none;
}
.react-flow__pane.selection {
cursor: crosshair;
}
/* attribution*/
.react-flow__attribution {
margin-right: 7px;
}
/* ⬆ (end) react-flow theming ⬆ */
/* ******************************* */
/* ******************************* */
/* ******************************* */
/* ******************************* */
/* ******************************* */
/* ⬇ (begin) pf4 overrides ⬇ */
/* ******************************* */
.pf-c-popover {
max-width: unset;
}
.pf-c-truncate,
.pf-c-truncate__start {
min-width: 0 !important;
}
.pf-c-select__menu {
margin-top: 1px;
}
/* ⬆ (end) pf4 overrides ⬆ */