Replace sprockets/browserify with Webpack (#2617)
* Replace browserify with webpack * Add react-intl-translations-manager * Do not minify in development, add offline-plugin for ServiceWorker background cache updates * Adjust tests and dependencies * Fix production deployments * Fix tests * More optimizations * Improve travis cache for npm stuff * Re-run travis * Add back support for custom.scss as before * Remove offline-plugin and babili * Fix issue with Immutable.List().unshift(...values) not working as expected * Make travis load schema instead of running all migrations in sequence * Fix missing React import in WarningContainer. Optimize rendering performance by using ImmutablePureComponent instead of React.PureComponent. ImmutablePureComponent uses Immutable.is() to compare props. Replace dynamic callback bindings in <UI /> * Add react definitions to places that use JSX * Add Procfile.dev for running rails, webpack and streaming API at the same time
This commit is contained in:
parent
26bc591572
commit
f5bf5ebb82
343 changed files with 5299 additions and 2081 deletions
|
@ -27,14 +27,11 @@ RSpec.describe Api::V1::AccountsController, type: :controller do
|
|||
describe 'PATCH #update_credentials' do
|
||||
describe 'with valid data' do
|
||||
before do
|
||||
avatar = File.read(Rails.root.join('app', 'assets', 'images', 'logo.png'))
|
||||
header = File.read(Rails.root.join('app', 'assets', 'images', 'mastodon-getting-started.png'))
|
||||
|
||||
patch :update_credentials, params: {
|
||||
display_name: "Alice Isn't Dead",
|
||||
note: "Hi!\n\nToot toot!",
|
||||
avatar: "data:image/png;base64,#{Base64.encode64(avatar)}",
|
||||
header: "data:image/png;base64,#{Base64.encode64(header)}",
|
||||
avatar: fixture_file_upload('files/avatar.gif', 'image/gif'),
|
||||
header: fixture_file_upload('files/attachment.jpg', 'image/jpeg'),
|
||||
}
|
||||
end
|
||||
|
||||
|
|
|
@ -11,6 +11,6 @@ feature "Log in" do
|
|||
fill_in "user_password", with: password
|
||||
click_on "Log in"
|
||||
|
||||
expect(page).to have_css "div.app-holder[data-react-class=Mastodon]"
|
||||
expect(page).to have_css "div.app-holder"
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { expect } from 'chai';
|
||||
import { render } from 'enzyme';
|
||||
|
||||
import Avatar from '../../../app/assets/javascripts/components/components/avatar'
|
||||
import Avatar from '../../../app/javascript/mastodon/components/avatar'
|
||||
|
||||
describe('<Avatar />', () => {
|
||||
const src = '/path/to/image.jpg';
|
||||
|
|
|
@ -2,7 +2,7 @@ import { expect } from 'chai';
|
|||
import { shallow } from 'enzyme';
|
||||
import sinon from 'sinon';
|
||||
|
||||
import Button from '../../../app/assets/javascripts/components/components/button';
|
||||
import Button from '../../../app/javascript/mastodon/components/button';
|
||||
|
||||
describe('<Button />', () => {
|
||||
it('renders a button element', () => {
|
||||
|
|
|
@ -2,7 +2,7 @@ import { expect } from 'chai';
|
|||
import { render } from 'enzyme';
|
||||
import Immutable from 'immutable';
|
||||
|
||||
import DisplayName from '../../../app/assets/javascripts/components/components/display_name'
|
||||
import DisplayName from '../../../app/javascript/mastodon/components/display_name'
|
||||
|
||||
describe('<DisplayName />', () => {
|
||||
it('renders display name + account name', () => {
|
||||
|
|
|
@ -2,7 +2,7 @@ import { expect } from 'chai';
|
|||
import { shallow, mount } from 'enzyme';
|
||||
import sinon from 'sinon';
|
||||
|
||||
import DropdownMenu from '../../../app/assets/javascripts/components/components/dropdown_menu';
|
||||
import DropdownMenu from '../../../app/javascript/mastodon/components/dropdown_menu';
|
||||
import Dropdown, { DropdownTrigger, DropdownContent } from 'react-simple-dropdown';
|
||||
|
||||
describe('<DropdownMenu />', () => {
|
||||
|
|
|
@ -2,8 +2,8 @@ import { expect } from 'chai';
|
|||
import { mount } from 'enzyme';
|
||||
import sinon from 'sinon';
|
||||
|
||||
import Column from '../../../../../../app/assets/javascripts/components/features/ui/components/column';
|
||||
import ColumnHeader from '../../../../../../app/assets/javascripts/components/features/ui/components/column_header';
|
||||
import Column from '../../../../../../app/javascript/mastodon/features/ui/components/column';
|
||||
import ColumnHeader from '../../../../../../app/javascript/mastodon/features/ui/components/column_header';
|
||||
|
||||
describe('<Column />', () => {
|
||||
describe('<ColumnHeader /> click handler', () => {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { expect } from 'chai';
|
||||
import { shallow } from 'enzyme';
|
||||
|
||||
import LoadingIndicator from '../../../app/assets/javascripts/components/components/loading_indicator'
|
||||
import LoadingIndicator from '../../../app/javascript/mastodon/components/loading_indicator'
|
||||
|
||||
describe('<LoadingIndicator />', () => {
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue