WIP <Compose> Refactor; SCSS ed.

This commit is contained in:
kibigo!
2017-12-29 14:55:06 -08:00
parent 8713659dff
commit 083170bec7
19 changed files with 626 additions and 782 deletions

View File

@@ -236,7 +236,12 @@ export default class ComposerOptions extends React.PureComponent {
}}
>
{({ scale }) => (
<div style={{ transform: `scale(${scale})` }}>
<div
style={{
display: hasMedia ? null : 'none',
transform: `scale(${scale})`,
}}
>
<IconButton
active={sensitive}
className='sensitive'

View File

@@ -49,6 +49,7 @@ export default function ComposerPublisher ({
<span class='count'>{diff}</span>
{sideArm && sideArm !== 'none' ? (
<Button
className='side_arm'
text={
<span>
<Icon
@@ -67,7 +68,7 @@ export default function ComposerPublisher ({
/>
) : null}
<Button
className='compose-form__publish__primary'
className='primary'
text={function () {
switch (true) {
case !!sideArm && sideArm !== 'none':

View File

@@ -70,24 +70,31 @@ export default class ComposerReply extends React.PureComponent {
<article className='composer--reply'>
<header>
<IconButton
className='cancel'
icon='times'
onClick={click}
title={intl.formatMessage(messages.cancel)}
/>
{account ? (
<a
className='account'
href={account.get('url')}
onClick={clickAccount}
>
<Avatar
account={account}
className='avatar'
size={24}
/>
<DisplayName account={account} />
<DisplayName
account={account}
className='display_name'
/>
</a>
) : null}
</header>
<div
className='content'
dangerouslySetInnerHTML={{ __html: content || '' }}
style={{ direction: isRtl(content) ? 'rtl' : 'ltr' }}
/>

View File

@@ -246,12 +246,13 @@ export default class ComposerTextarea extends React.Component {
// The result.
return (
<div className='autosuggest-textarea'>
<div className='composer--textarea'>
<label>
<span {...hiddenComponent}><FormattedMessage {...messages.placeholder} /></span>
<Textarea
aria-autocomplete='list'
autoFocus={autoFocus}
className='textarea'
disabled={disabled}
inputRef={refTextarea}
onBlur={blur}

View File

@@ -1,5 +1,4 @@
// Package imports.
import classNames from 'classnames';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
@@ -14,10 +13,13 @@ export default function ComposerTextareaSuggestions ({
suggestions,
value,
}) {
const computedClass = classNames('comoser--textarea--suggestions', { hidden: hidden || suggestions.isEmpty() });
// The result.
return (
<div className={computedClass}>
<div
className='composer--textarea--suggestions'
hidden={hidden || suggestions.isEmpty()}
>
{!hidden ? suggestions.map(
(suggestion, index) => (
<ComposerTextareaSuggestionsItem

View File

@@ -50,10 +50,10 @@ export default class ComposerTextareaSuggestionsItem extends React.Component {
// The result.
return (
<div
role='button'
tabIndex='0'
className={computedClass}
onMouseDown={click}
role='button'
tabIndex='0'
>
{ // If the suggestion is an object, then we render an emoji.
// Otherwise, we render an account.

View File

@@ -139,6 +139,7 @@ export default class ComposerUploadFormItem extends React.PureComponent {
}}
>
<IconButton
className='close'
icon='times'
onClick={remove}
size={36}