mirror of
https://github.com/n8n-io/n8n.git
synced 2026-09-01 05:38:33 +08:00
fix(core): Fix for jumpy UI when using drag/drop to fields in NDV (#23516)
Co-authored-by: Michael Kret <michael.k@radency.com>
This commit is contained in:
@@ -41,13 +41,16 @@ const onDrop = (value: string) => {
|
||||
}
|
||||
|
||||
.droppable {
|
||||
border-color: var(--ndv--droppable-parameter--color);
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
background: var(--ndv--droppable-parameter--color--background);
|
||||
}
|
||||
|
||||
.active {
|
||||
border-color: var(--color--success);
|
||||
border-width: 1px;
|
||||
background: var(--ndv--droppable-parameter--color--background--active);
|
||||
outline: none;
|
||||
}
|
||||
</style>
|
||||
|
||||
+9
-4
@@ -315,12 +315,14 @@ defineExpose({ focus, select });
|
||||
}
|
||||
|
||||
.droppable {
|
||||
--input--border-color: var(--ndv--droppable-parameter--color);
|
||||
--input--border-right-color: var(--ndv--droppable-parameter--color);
|
||||
--input--border-style: dashed;
|
||||
--input--border-color: transparent;
|
||||
--input--border-right-color: transparent;
|
||||
|
||||
:global(.cm-editor) {
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
transition: none;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -332,7 +334,10 @@ defineExpose({ focus, select });
|
||||
|
||||
:global(.cm-editor) {
|
||||
cursor: grabbing !important;
|
||||
border-color: var(--color--success);
|
||||
border-width: 1px;
|
||||
outline: none;
|
||||
transition: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
+11
-5
@@ -1910,14 +1910,16 @@ onUpdated(async () => {
|
||||
}
|
||||
|
||||
.droppable {
|
||||
--input--border-color: var(--ndv--droppable-parameter--color);
|
||||
--input--border-right-color: var(--ndv--droppable-parameter--color);
|
||||
--input--border-style: dashed;
|
||||
--input--border-color: transparent;
|
||||
--input--border-right-color: transparent;
|
||||
|
||||
textarea,
|
||||
input,
|
||||
.cm-editor {
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
transition: none;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1928,9 +1930,13 @@ onUpdated(async () => {
|
||||
--input--border-style: solid;
|
||||
|
||||
textarea,
|
||||
input {
|
||||
input,
|
||||
.cm-editor {
|
||||
cursor: grabbing !important;
|
||||
border-color: var(--color--success);
|
||||
border-width: 1px;
|
||||
outline: none;
|
||||
transition: none;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+4
-3
@@ -341,9 +341,9 @@ defineExpose({
|
||||
|
||||
.editorInput.droppable {
|
||||
:global(.cm-editor) {
|
||||
border-color: var(--ndv--droppable-parameter--color);
|
||||
border-style: dashed;
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -353,6 +353,7 @@ defineExpose({
|
||||
border-style: solid;
|
||||
cursor: grabbing;
|
||||
border-width: 1px;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
+4
-3
@@ -131,9 +131,9 @@ defineExpose({
|
||||
|
||||
.droppable {
|
||||
:global(.cm-editor) {
|
||||
border-color: var(--ndv--droppable-parameter--color);
|
||||
border-style: dashed;
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,6 +143,7 @@ defineExpose({
|
||||
border-style: solid;
|
||||
cursor: grabbing;
|
||||
border-width: 1px;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
+4
-3
@@ -292,9 +292,9 @@ defineExpose({
|
||||
|
||||
.droppable {
|
||||
:global(.cm-editor) {
|
||||
border-color: var(--ndv--droppable-parameter--color);
|
||||
border-style: dashed;
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -304,6 +304,7 @@ defineExpose({
|
||||
border-style: solid;
|
||||
cursor: grabbing;
|
||||
border-width: 1px;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
+4
-3
@@ -249,9 +249,9 @@ defineExpose({
|
||||
|
||||
.codemirror.droppable {
|
||||
:global(.cm-editor) {
|
||||
border-color: var(--ndv--droppable-parameter--color);
|
||||
border-style: dashed;
|
||||
border-width: 1.5px;
|
||||
border-color: transparent;
|
||||
outline: 1.5px dashed var(--ndv--droppable-parameter--color);
|
||||
outline-offset: -1.5px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,6 +261,7 @@ defineExpose({
|
||||
border-style: solid;
|
||||
cursor: grabbing;
|
||||
border-width: 1px;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -333,10 +333,10 @@ test.describe('Data Mapping', () => {
|
||||
await expect(n8n.ndv.getParameterTextInput('includeOtherFields')).toBeVisible();
|
||||
|
||||
const includeOtherFieldsInput = n8n.ndv.getParameterTextInput('includeOtherFields');
|
||||
await expect(includeOtherFieldsInput).toHaveCSS('border', /dashed.*rgb\(90, 76, 194\)/);
|
||||
await expect(includeOtherFieldsInput).toHaveCSS('outline', /rgb\(90, 76, 194\) dashed/);
|
||||
|
||||
const valueInput = n8n.ndv.getParameterTextInput('value');
|
||||
await expect(valueInput).toHaveCSS('border', /dashed.*rgb\(90, 76, 194\)/);
|
||||
await expect(valueInput).toHaveCSS('outline', /rgb\(90, 76, 194\) dashed/);
|
||||
|
||||
await n8n.page.mouse.up();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user