mirror of
https://github.com/ToolJet/ToolJet
synced 2026-05-03 21:38:42 +00:00
* init textinput revamp * updated styles panel * bugfix * updates * fix :: accordion * fix :: styling * add box shadow , additional property,tooltip * fix conditional render for styles * feat :: fixed order of each property and styles * feat :: styling input * bugfix * feat :: add option to add icon * add option to add icon * adding option to toggle visibility * updated password input with new design * chnaging component location * bugfix * style fixes * fix :: added loader * updated :: few detailing * few bugfixes * fix :: for form widget label * fixes * added option to add icon color * including label field for password input * fix for label * fix * test fix backward compatibility for height * updates * revert * adding key for distinguishing older and newer widgets * testing * test * test * update * update * migration testing * limit vertical resizing in textinput * testing * throw test * test * adding check for label length * fixing edge cases * removing resize * backward compatibility height * backward compatibility * number input review fixes * added exposed items * fixing csa * ui fixes * fix height compatibility * feat :: csa for all inputs and exposed variables * backward compatibility fixes and validation fixes * fixes :: textinput positioning of loader and icon * fix :: password input * cleanup and fixes * fixes * cleanup * fixes * review fixes * review fixes * typo fix * fix padding * review fixes styles component panel * fix naming * fix padding * fix :: icons position * updates * cleanup * updates events , csa * backward compatibility * clean * feat :: change validation from properties * ui fixes * icon name * removed 'px' text from tooltip * fixes placeholder * few updates :: removing label in form * ui in form * update :: number input validation behaviour * testing fixes * added side handlers * removing unwanted fx * disabling fx for padding field * ordering change * fix * label issue + restricted side handler * fix :: box shadow bug * on change event doesnt propagate exposed vars correctly * adding debounce for slider value change * fix :: for modal ooen bug during onfocus event * test slider * Add common utils * Modify helpers * Add text input spec * Add utils for field validation * Minor spec updates * Fix for password basic automation cases --------- Co-authored-by: stepinfwd <[email protected]>
121 lines
3.6 KiB
JavaScript
121 lines
3.6 KiB
JavaScript
import { commonWidgetSelector } from "Selectors/common";
|
|
import {
|
|
addAndVerifyTooltip,
|
|
openAccordion,
|
|
openEditorSidebar,
|
|
selectColourFromColourPicker,
|
|
verifyAndModifyParameter,
|
|
verifyAndModifyToggleFx,
|
|
verifyWidgetColorCss,
|
|
} from "Support/utils/commonWidget";
|
|
import { commonWidgetText, customValidation } from "Texts/common";
|
|
import { textInputText } from "Texts/textInput";
|
|
|
|
export const addValidations = (
|
|
widgetName,
|
|
data,
|
|
min = commonWidgetText.labelMinLength,
|
|
max = commonWidgetText.labelMaxLength
|
|
) => {
|
|
openEditorSidebar(widgetName);
|
|
openAccordion(commonWidgetText.accordionValidation);
|
|
verifyAndModifyParameter(
|
|
commonWidgetText.labelRegex,
|
|
commonWidgetText.regularExpression
|
|
);
|
|
verifyAndModifyParameter(min, data.minimumLength);
|
|
verifyAndModifyParameter(max, data.maximumLength);
|
|
verifyAndModifyParameter(
|
|
commonWidgetText.labelcustomValidadtion,
|
|
customValidation(data.widgetName, data.customText)
|
|
);
|
|
verifyAndModifyToggleFx("Make this field mandatory", "");
|
|
};
|
|
|
|
export const addAndVerifyAdditionalActions = (widgetName, tooltipText) => {
|
|
openEditorSidebar(widgetName);
|
|
openAccordion("Additional Actions");
|
|
verifyAndModifyToggleFx(
|
|
commonWidgetText.parameterVisibility,
|
|
commonWidgetText.codeMirrorLabelTrue
|
|
);
|
|
cy.get(commonWidgetSelector.draggableWidget(widgetName)).should(
|
|
"not.be.visible"
|
|
);
|
|
|
|
cy.get(
|
|
commonWidgetSelector.parameterTogglebutton(
|
|
commonWidgetText.parameterVisibility
|
|
)
|
|
).click();
|
|
|
|
verifyAndModifyToggleFx(
|
|
commonWidgetText.parameterDisable,
|
|
commonWidgetText.codeMirrorLabelFalse
|
|
);
|
|
cy.waitForAutoSave();
|
|
cy.get(commonWidgetSelector.draggableWidget(widgetName)).should(
|
|
"have.attr",
|
|
"disabled"
|
|
);
|
|
|
|
cy.get(
|
|
commonWidgetSelector.parameterTogglebutton(
|
|
commonWidgetText.parameterDisable
|
|
)
|
|
).click();
|
|
|
|
verifyAndModifyToggleFx(
|
|
commonWidgetText.loadingState,
|
|
commonWidgetText.codeMirrorLabelFalse
|
|
);
|
|
cy.get(commonWidgetSelector.draggableWidget(widgetName))
|
|
.parent()
|
|
.within(() => {
|
|
cy.get(".tj-widget-loader").should("be.visible");
|
|
});
|
|
|
|
cy.get(
|
|
commonWidgetSelector.parameterTogglebutton(commonWidgetText.loadingState)
|
|
).click();
|
|
|
|
addAndVerifyTooltip(
|
|
commonWidgetSelector.draggableWidget(widgetName),
|
|
tooltipText
|
|
);
|
|
};
|
|
|
|
export const addAllInputFieldColors = (data) => {
|
|
selectColourFromColourPicker("BG color", data.bgColor);
|
|
selectColourFromColourPicker("Border color", data.borderColor);
|
|
selectColourFromColourPicker("Text color", data.textColor);
|
|
selectColourFromColourPicker("Error text color", data.errorTextColor);
|
|
selectColourFromColourPicker("Icon color", data.iconColor);
|
|
};
|
|
|
|
export const verifyInputFieldColors = (selectorInput, data) => {
|
|
verifyWidgetColorCss(selectorInput, "color", data.textColor);
|
|
verifyWidgetColorCss(selectorInput, "border-color", data.borderColor);
|
|
verifyWidgetColorCss(selectorInput, "background-color", data.bgColor);
|
|
openEditorSidebar(textInputText.defaultWidgetName);
|
|
cy.get('[data-cy="make-this-field-mandatory-toggle-button"]').click();
|
|
cy.get(commonWidgetSelector.draggableWidget("textinput1")).clear();
|
|
cy.forceClickOnCanvas();
|
|
cy.verifyCssProperty(
|
|
'[data-cy="textinput1-invalid-feedback"]',
|
|
"color",
|
|
`rgba(${data.errorTextColor[0]}, ${data.errorTextColor[1]}, ${
|
|
data.errorTextColor[2]
|
|
}, ${data.errorTextColor[3] / 100})`
|
|
);
|
|
|
|
cy.get(commonWidgetSelector.draggableWidget("textinput1"))
|
|
.siblings("svg")
|
|
.should(
|
|
"have.css",
|
|
"stroke",
|
|
`rgba(${data.iconColor[0]}, ${data.iconColor[1]}, ${data.iconColor[2]}, ${
|
|
data.iconColor[3] / 100
|
|
})`
|
|
);
|
|
};
|