From 52715e70558b9a82172c16402a15d9ba9632b575 Mon Sep 17 00:00:00 2001 From: Orr Gottlieb <60314759+orrgottlieb@users.noreply.github.com> Date: Mon, 28 Dec 2020 14:45:39 +0200 Subject: [PATCH] Craftmanship/orr (#44) * test: update checkbox * bump: update package version --- package.json | 2 +- src/components/Checkbox/Checkbox.js | 22 +++++++++-- src/components/Checkbox/Checkbox.scss | 37 +++++++++++-------- .../__snapshots__/checkbox.jest.js.snap | 18 ++++----- .../__snapshots__/counter.jest.js.snap | 2 + src/components/componensts-stories.js | 7 ++-- 6 files changed, 54 insertions(+), 34 deletions(-) diff --git a/package.json b/package.json index 012706d6b7..8add8dd0f6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "monday-ui-react-core", - "version": "0.0.43", + "version": "0.0.44", "description": "Official monday.com UI resources for application development in React.js", "main": "dist/main.js", "scripts": { diff --git a/src/components/Checkbox/Checkbox.js b/src/components/Checkbox/Checkbox.js index ce0c918d0b..3097fb43d7 100644 --- a/src/components/Checkbox/Checkbox.js +++ b/src/components/Checkbox/Checkbox.js @@ -1,6 +1,6 @@ +import React, { useEffect, useRef } from "react"; import NOOP from "lodash/noop"; import isNil from "lodash/isNil"; -import React from "react"; import PropTypes from "prop-types"; import cx from "classnames"; import Icon from "../Icon/Icon"; @@ -19,7 +19,12 @@ export const Checkbox = ({ value, name }) => { - const checkboxClassNames = [`${BASE_CLASS_NAME}__checkbox`]; + const iconContainerRef = useRef(null); + + const checkboxClassNames = [ + `${BASE_CLASS_NAME}__checkbox`, + `${BASE_CLASS_NAME}__prevent-animation` + ]; let overrideDefaultChecked = defaultChecked; // If component did not receive default checked and checked props, choose default checked as @@ -28,6 +33,15 @@ export const Checkbox = ({ overrideDefaultChecked = false; } + useEffect(() => { + if (iconContainerRef.current) { + return () => {}; + } + iconContainerRef.current.classList.remove( + `${BASE_CLASS_NAME}__prevent-animation` + ); + }, [iconContainerRef]); + return (