@redvars/peacock 3.8.6 → 3.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/code-highlighter.js +1 -4
- package/dist/code-highlighter.js.map +1 -1
- package/dist/custom-elements-jsdocs.json +93 -213
- package/dist/custom-elements.json +488 -2149
- package/dist/elevation.js +55 -2
- package/dist/elevation.js.map +1 -1
- package/dist/flow.js +762 -0
- package/dist/flow.js.map +1 -0
- package/dist/index.js +3 -3
- package/dist/loader.js +10 -9
- package/dist/loader.js.map +1 -1
- package/dist/menu-item.js +144 -63
- package/dist/menu-item.js.map +1 -1
- package/dist/menu.js +161 -73
- package/dist/menu.js.map +1 -1
- package/dist/src/flow/flow.d.ts +102 -0
- package/dist/src/flow/index.d.ts +2 -0
- package/dist/src/index.d.ts +3 -4
- package/dist/src/menu/menu/menu.d.ts +10 -9
- package/dist/src/menu/menu-item/menu-item.d.ts +1 -3
- package/dist/src/timeline/index.d.ts +2 -0
- package/dist/src/timeline/timeline-item.d.ts +23 -0
- package/dist/src/timeline/timeline.d.ts +26 -0
- package/dist/sub-menu.js +28 -1
- package/dist/sub-menu.js.map +1 -1
- package/dist/timeline-item.js +163 -0
- package/dist/timeline-item.js.map +1 -0
- package/dist/timeline.js +52 -0
- package/dist/timeline.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/readme.md +2 -2
- package/src/code-highlighter/code-highlighter.scss +1 -7
- package/src/elevation/demo/index.html +52 -0
- package/src/elevation/elevation.scss +52 -5
- package/src/elevation/elevation.ts +8 -1
- package/src/flow/flow.scss +195 -0
- package/src/flow/flow.ts +683 -0
- package/src/flow/index.ts +2 -0
- package/src/index.ts +3 -16
- package/src/loader.ts +10 -9
- package/src/menu/menu/copy-component-files.mjs +47 -0
- package/src/menu/menu/menu.scss +55 -17
- package/src/menu/menu/menu.ts +155 -84
- package/src/menu/menu-item/menu-item-colors.scss +3 -3
- package/src/menu/menu-item/menu-item.scss +118 -24
- package/src/menu/menu-item/menu-item.ts +61 -55
- package/src/menu/sub-menu/sub-menu.scss +30 -1
- package/src/timeline/index.ts +2 -0
- package/src/timeline/timeline-item.scss +98 -0
- package/src/timeline/timeline-item.ts +63 -0
- package/src/timeline/timeline.scss +11 -0
- package/src/timeline/timeline.ts +41 -0
- package/dist/canvas.js +0 -385
- package/dist/canvas.js.map +0 -1
- package/dist/flow-designer-node-CGSm6cUH.js +0 -553
- package/dist/flow-designer-node-CGSm6cUH.js.map +0 -1
- package/dist/flow-designer-node.js +0 -4
- package/dist/flow-designer-node.js.map +0 -1
- package/dist/flow-designer.js +0 -1417
- package/dist/flow-designer.js.map +0 -1
- package/dist/src/canvas/canvas.d.ts +0 -92
- package/dist/src/canvas/index.d.ts +0 -2
- package/dist/src/flow-designer/commands.d.ts +0 -66
- package/dist/src/flow-designer/flow-designer-node.d.ts +0 -46
- package/dist/src/flow-designer/flow-designer.d.ts +0 -133
- package/dist/src/flow-designer/index.d.ts +0 -7
- package/dist/src/flow-designer/layout.d.ts +0 -30
- package/dist/src/flow-designer/types.d.ts +0 -142
- package/dist/src/flow-designer/validation.d.ts +0 -43
- package/dist/src/flow-designer/workflow-utils.d.ts +0 -40
- package/src/canvas/canvas.scss +0 -72
- package/src/canvas/canvas.ts +0 -413
- package/src/canvas/index.ts +0 -2
- package/src/flow-designer/DEMO.md +0 -239
- package/src/flow-designer/commands.ts +0 -278
- package/src/flow-designer/flow-designer-node.ts +0 -172
- package/src/flow-designer/flow-designer.scss +0 -457
- package/src/flow-designer/flow-designer.ts +0 -611
- package/src/flow-designer/index.ts +0 -41
- package/src/flow-designer/layout.ts +0 -357
- package/src/flow-designer/types.ts +0 -166
- package/src/flow-designer/validation.ts +0 -284
- package/src/flow-designer/workflow-utils.ts +0 -282
- /package/dist/test/{flow-designer.test.d.ts → elevation.test.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@redvars/peacock",
|
|
3
3
|
"description": "The foundation for beautiful user interfaces",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
|
-
"version": "3.
|
|
5
|
+
"version": "3.9.1",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"module": "dist/index.js",
|
|
@@ -32,9 +32,10 @@
|
|
|
32
32
|
"analyze": "cem analyze --config \"./custom-elements-manifest.config.mjs\" && node bin/typedoc-gen.mjs",
|
|
33
33
|
"start": "rollup -c && concurrently -k -r \"rollup -c -w\" \"web-dev-server\"",
|
|
34
34
|
"start:for-docs": "rollup -c -w",
|
|
35
|
-
"build": "npm run build:lit && npm run analyze -- --exclude dist && npm run build:scss",
|
|
35
|
+
"build": "npm run build:lit && npm run analyze -- --exclude dist && npm run build:scss && npm run publish:docs",
|
|
36
36
|
"build:lit": "rollup -c",
|
|
37
37
|
"build:scss": "node ./bin/scss-build.mjs",
|
|
38
|
+
"publish:docs": "node ./bin/docs-publish.mjs",
|
|
38
39
|
"lint": "eslint --ext .ts,.html . --ignore-path .gitignore && prettier \"**/*.ts\" --check --ignore-path .gitignore",
|
|
39
40
|
"format": "eslint --ext .ts,.html . --fix --ignore-path .gitignore && prettier \"**/*.ts\" --write --ignore-path .gitignore",
|
|
40
41
|
"prepare": "husky",
|
package/readme.md
CHANGED
|
@@ -44,9 +44,9 @@ Visit [https://peacock.redvars.com](https://peacock.redvars.com) to view the doc
|
|
|
44
44
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
45
45
|
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+Mono:wght@100..900&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap" rel="stylesheet">
|
|
46
46
|
|
|
47
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@redvars/peacock@3.
|
|
47
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@redvars/peacock@3.9.1/dist/assets/styles.css"></link>
|
|
48
48
|
<script type='module'
|
|
49
|
-
src='https://cdn.jsdelivr.net/npm/@redvars/peacock@3.
|
|
49
|
+
src='https://cdn.jsdelivr.net/npm/@redvars/peacock@3.9.1/dist/loader.js'></script>
|
|
50
50
|
</head>
|
|
51
51
|
|
|
52
52
|
<wc-button>Button</wc-button>
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
@include mixin.base-styles;
|
|
4
4
|
|
|
5
|
-
|
|
6
5
|
:host {
|
|
7
6
|
display: block;
|
|
8
7
|
height: 100%;
|
|
@@ -32,7 +31,7 @@
|
|
|
32
31
|
align-items: center;
|
|
33
32
|
justify-content: space-between;
|
|
34
33
|
background-color: var(--code-highlighter-background);
|
|
35
|
-
|
|
34
|
+
border-bottom: 1px solid var(--color-outline-variant);
|
|
36
35
|
|
|
37
36
|
@include mixin.get-typography(body-medium);
|
|
38
37
|
|
|
@@ -41,18 +40,15 @@
|
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
42
|
|
|
44
|
-
|
|
45
43
|
.scroll-wrapper {
|
|
46
44
|
flex: 1;
|
|
47
45
|
overflow-y: auto;
|
|
48
46
|
background-color: var(--code-highlighter-background);
|
|
49
47
|
|
|
50
|
-
|
|
51
48
|
.highlighter {
|
|
52
49
|
margin: 0;
|
|
53
50
|
position: relative;
|
|
54
51
|
|
|
55
|
-
|
|
56
52
|
.shiki {
|
|
57
53
|
margin: 0;
|
|
58
54
|
padding: var(--spacing-200);
|
|
@@ -69,8 +65,6 @@
|
|
|
69
65
|
}
|
|
70
66
|
|
|
71
67
|
&.line-numbers {
|
|
72
|
-
margin-left: 3.75rem;
|
|
73
|
-
|
|
74
68
|
.highlighter .shiki {
|
|
75
69
|
/* Reset counter for line numbers */
|
|
76
70
|
counter-reset: line-counter;
|
|
@@ -48,6 +48,58 @@
|
|
|
48
48
|
Level 5
|
|
49
49
|
</div>
|
|
50
50
|
|
|
51
|
+
<h2>Selective Shade Hiding (Level 3 shadow)</h2>
|
|
52
|
+
<div style="display: flex; gap: var(--spacing-400); flex-wrap: wrap; margin-block: var(--spacing-400);">
|
|
53
|
+
<div class="elevated-element">
|
|
54
|
+
<p-elevation style="--elevation-level: 3; --elevation-level-block-start: 0;"></p-elevation>
|
|
55
|
+
Hide Top
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<div class="elevated-element">
|
|
59
|
+
<p-elevation style="--elevation-level: 3; --elevation-level-block-end: 0;"></p-elevation>
|
|
60
|
+
Hide Bottom
|
|
61
|
+
</div>
|
|
62
|
+
|
|
63
|
+
<div class="elevated-element">
|
|
64
|
+
<p-elevation style="--elevation-level: 3; --elevation-level-inline-start: 0;"></p-elevation>
|
|
65
|
+
Hide Start (Left)
|
|
66
|
+
</div>
|
|
67
|
+
|
|
68
|
+
<div class="elevated-element">
|
|
69
|
+
<p-elevation style="--elevation-level: 3; --elevation-level-inline-end: 0;"></p-elevation>
|
|
70
|
+
Hide End (Right)
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
|
|
74
|
+
<h3>RTL Direction (Hide Start should be Right, Hide End should be Left)</h3>
|
|
75
|
+
<div dir="rtl" style="display: flex; gap: var(--spacing-400); flex-wrap: wrap; margin-block: var(--spacing-400);">
|
|
76
|
+
<div class="elevated-element">
|
|
77
|
+
<p-elevation style="--elevation-level: 3; --elevation-level-inline-start: 0;"></p-elevation>
|
|
78
|
+
Hide Start (Right in RTL)
|
|
79
|
+
</div>
|
|
80
|
+
|
|
81
|
+
<div class="elevated-element">
|
|
82
|
+
<p-elevation style="--elevation-level: 3; --elevation-level-inline-end: 0;"></p-elevation>
|
|
83
|
+
Hide End (Left in RTL)
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
|
|
87
|
+
<h2>Multi-level Selective Shading (Different levels per side)</h2>
|
|
88
|
+
<div style="display: flex; gap: var(--spacing-400); flex-wrap: wrap; margin-block: var(--spacing-400);">
|
|
89
|
+
<div class="elevated-element">
|
|
90
|
+
<p-elevation style="--elevation-level-block-start: 4; --elevation-level-block-end: 1; --elevation-level-inline-start: 2; --elevation-level-inline-end: 5;"></p-elevation>
|
|
91
|
+
Top 4, Bottom 1, Left 2, Right 5
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
<div class="elevated-element">
|
|
95
|
+
<p-elevation style="--elevation-level-block-start: 5;"></p-elevation>
|
|
96
|
+
Top 5, others unset (0)
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
51
103
|
|
|
52
104
|
|
|
53
105
|
<script type='module'>
|
|
@@ -30,6 +30,57 @@
|
|
|
30
30
|
transition-property: box-shadow, opacity;
|
|
31
31
|
--elevation-level: 0;
|
|
32
32
|
--elevation-color: var(--elevation-color-default, black);
|
|
33
|
+
|
|
34
|
+
/* Fallback values for side-specific levels, falling back to --elevation-level */
|
|
35
|
+
--_level-top: var(--elevation-level-block-start, var(--elevation-level, 0));
|
|
36
|
+
--_level-bottom: var(--elevation-level-block-end, var(--elevation-level, 0));
|
|
37
|
+
--_level-left: var(--elevation-level-inline-start, var(--elevation-level, 0));
|
|
38
|
+
--_level-right: var(--elevation-level-inline-end, var(--elevation-level, 0));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
:host-context([dir="rtl"]) {
|
|
42
|
+
--_level-left: var(--elevation-level-inline-end, var(--elevation-level, 0));
|
|
43
|
+
--_level-right: var(--elevation-level-inline-start, var(--elevation-level, 0));
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
:host([dir="rtl"]) {
|
|
47
|
+
--_level-left: var(--elevation-level-inline-end, var(--elevation-level, 0));
|
|
48
|
+
--_level-right: var(--elevation-level-inline-start, var(--elevation-level, 0));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.shadow {
|
|
52
|
+
/* Set the default private level property */
|
|
53
|
+
--_level: var(--elevation-level, 0);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.shadow.block-start {
|
|
57
|
+
--_level: var(--_level-top);
|
|
58
|
+
clip-path: polygon(50% 50%, -950% -950%, 1050% -950%);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.shadow.block-end {
|
|
62
|
+
--_level: var(--_level-bottom);
|
|
63
|
+
clip-path: polygon(50% 50%, 1050% 1050%, -950% 1050%);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.shadow.inline-start {
|
|
67
|
+
--_level: var(--_level-left);
|
|
68
|
+
clip-path: polygon(50% 50%, -950% 1050%, -950% -950%);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.shadow.inline-end {
|
|
72
|
+
--_level: var(--_level-right);
|
|
73
|
+
clip-path: polygon(50% 50%, 1050% -950%, 1050% 1050%);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
:host-context([dir="rtl"]),
|
|
77
|
+
:host([dir="rtl"]) {
|
|
78
|
+
.shadow.inline-start {
|
|
79
|
+
clip-path: polygon(50% 50%, 1050% -950%, 1050% 1050%);
|
|
80
|
+
}
|
|
81
|
+
.shadow.inline-end {
|
|
82
|
+
clip-path: polygon(50% 50%, -950% 1050%, -950% -950%);
|
|
83
|
+
}
|
|
33
84
|
}
|
|
34
85
|
|
|
35
86
|
.shadow::before,
|
|
@@ -37,11 +88,7 @@
|
|
|
37
88
|
content: '';
|
|
38
89
|
transition-property: box-shadow, opacity;
|
|
39
90
|
|
|
40
|
-
//
|
|
41
|
-
// would not use private custom properties. However, these variables are
|
|
42
|
-
// repeated several times in the styles below, and a shorter custom property
|
|
43
|
-
// reduces the CSS size, minified and gzip.
|
|
44
|
-
--_level: var(--elevation-level);
|
|
91
|
+
// --_level is inherited from .shadow
|
|
45
92
|
--_shadow-color: var(--elevation-color);
|
|
46
93
|
}
|
|
47
94
|
|
|
@@ -29,6 +29,13 @@ export class Elevation extends LitElement {
|
|
|
29
29
|
static styles = [styles];
|
|
30
30
|
|
|
31
31
|
render() {
|
|
32
|
-
return html
|
|
32
|
+
return html`
|
|
33
|
+
<span class="shadow block-start"></span>
|
|
34
|
+
<span class="shadow block-end"></span>
|
|
35
|
+
<span class="shadow inline-start"></span>
|
|
36
|
+
<span class="shadow inline-end"></span>
|
|
37
|
+
`;
|
|
33
38
|
}
|
|
34
39
|
}
|
|
40
|
+
|
|
41
|
+
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
@use '../../scss/mixin';
|
|
2
|
+
|
|
3
|
+
@include mixin.base-styles;
|
|
4
|
+
|
|
5
|
+
:host {
|
|
6
|
+
display: block;
|
|
7
|
+
width: 100%;
|
|
8
|
+
height: 100%;
|
|
9
|
+
overflow: hidden;
|
|
10
|
+
--flow-background: var(--color-surface-container-lowest, #f4f5f8);
|
|
11
|
+
--flow-dot-color: var(--color-outline-variant, #e1e3e8);
|
|
12
|
+
--flow-line-color: var(--color-outline, #75777c);
|
|
13
|
+
--flow-hover-color: var(--color-primary, #005FAF);
|
|
14
|
+
--flow-node-bg: var(--color-surface-container-low, #f8f9fc);
|
|
15
|
+
--flow-node-border: var(--color-outline-variant, #c5c6cb);
|
|
16
|
+
--flow-node-shadow: 0 4px 12px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.05);
|
|
17
|
+
--flow-node-active-shadow: 0 8px 24px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.08);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.flow-container {
|
|
21
|
+
position: relative;
|
|
22
|
+
width: 100%;
|
|
23
|
+
height: 100%;
|
|
24
|
+
background: var(--flow-background);
|
|
25
|
+
border: 1px solid var(--color-outline-variant);
|
|
26
|
+
border-radius: 16px;
|
|
27
|
+
overflow: auto;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.flow-workspace {
|
|
31
|
+
position: relative;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.flow-svg {
|
|
35
|
+
position: absolute;
|
|
36
|
+
inset: 0;
|
|
37
|
+
width: 100%;
|
|
38
|
+
height: 100%;
|
|
39
|
+
pointer-events: auto;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
#dot-grid circle {
|
|
43
|
+
fill: var(--flow-dot-color);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// --- Edges ---
|
|
47
|
+
.flow-edge {
|
|
48
|
+
transition: stroke 150ms ease, stroke-width 150ms ease;
|
|
49
|
+
pointer-events: stroke;
|
|
50
|
+
cursor: pointer;
|
|
51
|
+
|
|
52
|
+
&:hover {
|
|
53
|
+
stroke: var(--flow-hover-color);
|
|
54
|
+
stroke-width: 3;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&.variant-dashed {
|
|
58
|
+
stroke-dasharray: 5 5;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&.variant-animated-dashed {
|
|
62
|
+
stroke-dasharray: 5 5;
|
|
63
|
+
animation: flow-dash-flow 1s linear infinite;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.flow-edge-preview {
|
|
68
|
+
stroke-dasharray: 5 5;
|
|
69
|
+
animation: flow-dash-flow 1s linear infinite;
|
|
70
|
+
pointer-events: none;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// --- Nodes ---
|
|
74
|
+
.flow-nodes {
|
|
75
|
+
pointer-events: none;
|
|
76
|
+
|
|
77
|
+
> * {
|
|
78
|
+
pointer-events: auto;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.flow-node {
|
|
83
|
+
display: inline-flex;
|
|
84
|
+
align-items: center;
|
|
85
|
+
justify-content: center;
|
|
86
|
+
background: var(--flow-node-bg);
|
|
87
|
+
border: 1px solid var(--flow-node-border);
|
|
88
|
+
box-shadow: var(--flow-node-shadow);
|
|
89
|
+
border-radius: 12px;
|
|
90
|
+
min-width: 150px;
|
|
91
|
+
min-height: 70px;
|
|
92
|
+
cursor: grab;
|
|
93
|
+
user-select: none;
|
|
94
|
+
z-index: 5;
|
|
95
|
+
transition: box-shadow 150ms ease, border-color 150ms ease, transform 150ms ease;
|
|
96
|
+
|
|
97
|
+
&:active {
|
|
98
|
+
cursor: grabbing;
|
|
99
|
+
box-shadow: var(--flow-node-active-shadow);
|
|
100
|
+
border-color: var(--flow-hover-color);
|
|
101
|
+
transform: translateY(-1px);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.flow-node-content {
|
|
106
|
+
width: 100%;
|
|
107
|
+
height: 100%;
|
|
108
|
+
padding: 12px 16px;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
// --- Default Node Card Design ---
|
|
112
|
+
.flow-node-default-card {
|
|
113
|
+
display: flex;
|
|
114
|
+
flex-direction: column;
|
|
115
|
+
justify-content: center;
|
|
116
|
+
align-items: center;
|
|
117
|
+
text-align: center;
|
|
118
|
+
width: 100%;
|
|
119
|
+
height: 100%;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.flow-node-title {
|
|
123
|
+
font-family: inherit;
|
|
124
|
+
font-size: 14px;
|
|
125
|
+
font-weight: 500;
|
|
126
|
+
color: var(--color-on-surface);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
// --- Sockets / Handles ---
|
|
130
|
+
.handle {
|
|
131
|
+
position: absolute;
|
|
132
|
+
width: 12px;
|
|
133
|
+
height: 12px;
|
|
134
|
+
border-radius: 50%;
|
|
135
|
+
background: var(--color-surface, #ffffff);
|
|
136
|
+
border: 2px solid var(--color-outline, #75777c);
|
|
137
|
+
z-index: 10;
|
|
138
|
+
cursor: crosshair;
|
|
139
|
+
transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1),
|
|
140
|
+
background-color 150ms ease,
|
|
141
|
+
border-color 150ms ease,
|
|
142
|
+
box-shadow 150ms ease;
|
|
143
|
+
|
|
144
|
+
&:hover {
|
|
145
|
+
transform: scale(1.4);
|
|
146
|
+
background-color: var(--flow-hover-color);
|
|
147
|
+
border-color: var(--flow-hover-color);
|
|
148
|
+
box-shadow: 0 0 8px rgba(0, 95, 175, 0.5);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
&:active {
|
|
152
|
+
transform: scale(1.2);
|
|
153
|
+
background-color: var(--flow-hover-color);
|
|
154
|
+
border-color: var(--flow-hover-color);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.handle-position-left {
|
|
159
|
+
left: -7px;
|
|
160
|
+
top: calc(50% - 6px);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.handle-position-right {
|
|
164
|
+
right: -7px;
|
|
165
|
+
top: calc(50% - 6px);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.handle-position-top {
|
|
169
|
+
top: -7px;
|
|
170
|
+
left: calc(50% - 6px);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.handle-position-bottom {
|
|
174
|
+
bottom: -7px;
|
|
175
|
+
left: calc(50% - 6px);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
// --- Animations ---
|
|
179
|
+
@keyframes flow-dash-flow {
|
|
180
|
+
to {
|
|
181
|
+
stroke-dashoffset: -20;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.flow-node-custom {
|
|
186
|
+
background: transparent !important;
|
|
187
|
+
border-color: transparent !important;
|
|
188
|
+
box-shadow: none !important;
|
|
189
|
+
min-width: 0 !important;
|
|
190
|
+
min-height: 0 !important;
|
|
191
|
+
|
|
192
|
+
.flow-node-content {
|
|
193
|
+
padding: 0 !important;
|
|
194
|
+
}
|
|
195
|
+
}
|