From c9182de7928fdbcdd373fc813365c33294d5953e Mon Sep 17 00:00:00 2001 From: Ilya Oleshko Date: Mon, 20 Jan 2020 10:38:24 +0300 Subject: [PATCH] Web: Components: DropDownProfileItem: Removed component --- .../drop-down-profile-item/README.md | 32 ------- .../drop-down-profile-item.stories.js | 39 -------- .../drop-down-profile-item.test.js | 44 --------- .../drop-down-profile-item/index.js | 89 ------------------- web/ASC.Web.Components/src/index.js | 1 - 5 files changed, 205 deletions(-) delete mode 100644 web/ASC.Web.Components/src/components/drop-down-profile-item/README.md delete mode 100644 web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.stories.js delete mode 100644 web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.test.js delete mode 100644 web/ASC.Web.Components/src/components/drop-down-profile-item/index.js diff --git a/web/ASC.Web.Components/src/components/drop-down-profile-item/README.md b/web/ASC.Web.Components/src/components/drop-down-profile-item/README.md deleted file mode 100644 index 8bf7c5b692..0000000000 --- a/web/ASC.Web.Components/src/components/drop-down-profile-item/README.md +++ /dev/null @@ -1,32 +0,0 @@ -# DropDownProfileItem - -### Usage - -```js -import { DropDownProfileItem } from "asc-web-components"; -``` - -```jsx - -``` - -To add preview of user profile, you must use DropDownProfileItem component inherited from DropDownItem and add isUserPreview parameter to DropDown. - -To add an avatar username and email when you turn on isUserPreview parameter, you need to add parameters of Avatar component: avatarSource - link to user's avatar, avatarRole - user's role, displayName - user name and email - user’s email address. - -### Properties - -| Props | Type | Required | Values | Default | Description | -| -------------- | :------------: | :------: | :----------------------------: | :-----: | ---------------------- | -| `avatarRole` | `oneOf` | - | `owner`,`admin`,`guest`,`user` | `user` | Adds a user role table | -| `avatarSource` | `string` | - | - | - | Avatar image source | -| `className` | `string` | - | - | - | Accepts class | -| `displayName` | `string` | - | - | - | User name for display | -| `email` | `string` | - | - | - | User email for display | -| `id` | `string` | - | - | - | Accepts id | -| `style` | `obj`, `array` | - | - | - | Accepts css style | diff --git a/web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.stories.js b/web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.stories.js deleted file mode 100644 index 8eb5ad0389..0000000000 --- a/web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.stories.js +++ /dev/null @@ -1,39 +0,0 @@ -import React from 'react' -import { storiesOf } from '@storybook/react' -import withReadme from 'storybook-readme/with-readme' -import Readme from './README.md' -import DropDown from '../drop-down'; -import DropDownItem from '../drop-down-item'; -import DropDownProfileItem from '.'; -import Section from '../../../.storybook/decorators/section'; - -storiesOf('Components | DropDown', module) - .addDecorator(withReadme(Readme)) - .add('base profile item', () => { - - return ( -
- - - console.log('Profile clicked')} /> - console.log('About clicked')} /> - console.log('Log out clicked')} /> - -
- ) - }); \ No newline at end of file diff --git a/web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.test.js b/web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.test.js deleted file mode 100644 index 55e542fd69..0000000000 --- a/web/ASC.Web.Components/src/components/drop-down-profile-item/drop-down-profile-item.test.js +++ /dev/null @@ -1,44 +0,0 @@ -import React from 'react'; -import { mount } from 'enzyme'; -import DropDownProfileItem from '.'; - -const baseProps = { - avatarRole: 'admin', - avatarSource: '', - displayName: 'Jane Doe', - email: 'janedoe@gmail.com' -} - -describe('', () => { - it('renders without error', () => { - const wrapper = mount( - - ); - - expect(wrapper).toExist(); - }); - - it('accepts id', () => { - const wrapper = mount( - - ); - - expect(wrapper.prop('id')).toEqual('testId'); - }); - - it('accepts className', () => { - const wrapper = mount( - - ); - - expect(wrapper.prop('className')).toEqual('test'); - }); - - it('accepts style', () => { - const wrapper = mount( - - ); - - expect(wrapper.prop('style')).toEqual({ color: 'red' }); - }); -}); diff --git a/web/ASC.Web.Components/src/components/drop-down-profile-item/index.js b/web/ASC.Web.Components/src/components/drop-down-profile-item/index.js deleted file mode 100644 index be113d1f86..0000000000 --- a/web/ASC.Web.Components/src/components/drop-down-profile-item/index.js +++ /dev/null @@ -1,89 +0,0 @@ -import React, { memo } from 'react' -import styled, { css } from 'styled-components' -import PropTypes from 'prop-types' -import Avatar from '../avatar' -import DropDownItem from '../drop-down-item' - -const StyledDropDownItem = styled(DropDownItem)`` - -const StyledDropdownProfileItem = styled.div` - ${StyledDropDownItem} - padding: 0px; - cursor: pointer; - display: inline-block; -`; - -const commonStyle = css` - font-family: 'Open Sans',sans-serif,Arial; - font-style: normal; - color: #FFFFFF; - margin-left: 60px; - max-width:300px; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -`; - -const UserPreview = styled.div` - position: relative; - height: 76px; - background: linear-gradient(200.71deg, #2274AA 0%, #0F4071 100%); - border-radius: 6px 6px 0px 0px; - padding: 15px; - cursor: default; - box-sizing: border-box; -`; - -const AvatarWrapper = styled.div` - display: inline-block; - float: left; -`; - -const UserNameWrapper = styled.div` - font-size: 16px; - line-height: 28px; - - ${commonStyle} -`; - -const UserEmailWrapper = styled.div` - font-weight: normal; - font-size: 11px; - line-height: 16px; - - ${commonStyle} -`; - -// eslint-disable-next-line react/display-name -const DropDownProfileItem = memo(props => { - //console.log("DropDownItem render"); - const { displayName, email, avatarRole, avatarSource } = props; - - return ( - - - - - - {displayName} - {email} - - - ); -}); - -DropDownProfileItem.propTypes = { - displayName: PropTypes.string, - email: PropTypes.string, - avatarRole: PropTypes.oneOf(['owner', 'admin', 'guest', 'user']), - avatarSource: PropTypes.string, - className: PropTypes.string, - id: PropTypes.string, - style: PropTypes.oneOfType([PropTypes.object, PropTypes.array]) -}; - -export default DropDownProfileItem \ No newline at end of file diff --git a/web/ASC.Web.Components/src/index.js b/web/ASC.Web.Components/src/index.js index 91bf03936c..aaeb26abd4 100644 --- a/web/ASC.Web.Components/src/index.js +++ b/web/ASC.Web.Components/src/index.js @@ -13,7 +13,6 @@ export { default as CustomScrollbarsVirtualList } from './components/scrollbar/c export { default as DatePicker } from './components/date-picker' export { default as DropDown } from './components/drop-down' export { default as DropDownItem } from './components/drop-down-item' -export { default as DropDownProfileItem } from './components/drop-down-profile-item' export { default as EmailInput } from './components/email-input' export { default as EmptyScreenContainer} from './components/empty-screen-container' export { default as ErrorContainer } from './components/error-container'