Commit Graph

95 Commits (2e429c0c25c0f82abb6a6b348195cd541052397e)

Author SHA1 Message Date
Eugen Rochko c48772fd3f Introduce react-textarea-autosize instead of using style.height side effects (#3334) 8 years ago
Nolan Lawson 2469fd1cdc Add improved performance marks for development mode (#3297) 8 years ago
Yamagishi Kazutoshi 531c1bb245 Add localization of datetime in public page (#3296) 8 years ago
Yamagishi Kazutoshi c52090dbfe fix storybook (#3292) 8 years ago
Sorin Davidoi 8e4d1cba00 Lazy load toots using IntersectionObserver (#3191)
* refactor(components/status_list): Lazy load using IntersectionObserver

* refactor(components/status_list): Avoid setState bottleneck

* refactor(components/status_list): Update state correctly

* fix(components/status): Render if isIntersecting is undefined

* refactor(components/status): Recycle timeout

* refactor(components/status): Reduce animation duration

* refactor(components/status): Use requestIdleCallback

* chore: Split polyfill bundles

* refactor(components/status_list): Increase rootMargin to 300%

* fix(components/status): Check if onRef is not defined

* chore: Add note about polyfill bundle splitting

* fix(components/status): Reduce animation duration to 0.3 seconds
8 years ago
Nolan Lawson 1fd18a61bd Use node instead of babel-node for streaming (#3269) 8 years ago
Yamagishi Kazutoshi 860ffc0560 Focus the submit button (#3253)
Focus the submit button when confirmation modal is opened.

Also, changed cancellation link to button.
This makes the meaning clearer.
8 years ago
Nolan Lawson 60e2b951de Add webpack-bundle-analyzer for production builds (#3170) 8 years ago
Nolan Lawson 9d04de1c8d Only load Intl data for current language (#3130)
* Only load Intl data for current language

* Extract common chunk only from application.js and public.js

* Generate locale packs, avoid caching on window object
8 years ago
Yamagishi Kazutoshi 2e112e2406 Improve eslint rules (#3147)
* Add semi to ESLint rules

* Add padded-blocks to ESLint rules

* Add comma-dangle to ESLint rules

* add config/webpack and storyboard

* add streaming/

* yarn test:lint -- --fix
8 years ago
Yamagishi Kazutoshi 4a3db71692 Remove react-autosuggest (#3140)
react-autosuggest is added from c49f6290eb

Dependence removed from b27066e154
8 years ago
Yamagishi Kazutoshi dc559d6b7a Downgrade eslint-plugin-jsx-a11y to v4.0.0 (#3131)
In Code Climate, eslint-plugin-jsx-a11y v4.0.0 is used.
Therefore, it seems that a warning is displayed.

ref https://github.com/codeclimate/codeclimate-eslint/pull/273
8 years ago
Sorin Davidoi f18a6c2cf2 feat(babel): Strip prop types (#3122)
* feat(babel): Strip prop types

* chore(babel): Indent

* fix(babel): Move babel-plugin-transform-react-remove-prop-types to dependencies
8 years ago
Nolan Lawson 4cc8ddabe5 Add transform-runtime for smaller Babel helpers (#3116) 8 years ago
Yamagishi Kazutoshi 72c8562cc9 Use babel-preset-env on Streaming Server (#2998)
* Use babel-preset-env on Streaming Server

Change the streaming server to use babel-preset-env as well as asset compilation.
This shortens the load time at first boot.

* remove babel-plugin-lodash
8 years ago
Yamagishi Kazutoshi 882e4f5322 Remove Babel plugin for ES Modules (#2975)
* Remove Babel plugin for ES Modules

Processing of ES Modules is executed by Webpack.
Don't have to do it on Babel side.

* Add plugin for test
8 years ago
Daigo 3 Dango 66328adf83 Rebuild node-sass (#3002)
Got an error in asset precompile on Heroku:
Module build failed: Error: ENOENT: no such file or directory, scandir '/tmp/.../node_modules/node-sass/vendor'

ref: https://github.com/rails/webpacker#troubleshooting
8 years ago
Yamagishi Kazutoshi 2991a7cfe6 Use ES Class Fields & Static Properties (#3008)
Use ES Class Fields & Static Properties (currently stage 2) for improve class outlook.

Added babel-plugin-transform-class-properties as a Babel plugin.
8 years ago
Yamagishi Kazutoshi 654f4f62ed Remove dependencies that are no longer needed now (#2999)
There are some dependencies that are no longer needed anymore.
As a result, it took more time to install the package than necessary.

I want to delete them and shorten the installation time.
8 years ago
Nolan Lawson 0ec77c5b3e Add dynamic polyfills for older browsers (#2985)
Fixes #2941
8 years ago
Yamagishi Kazutoshi 42eb841dc2 Remove jquery-ujs (#2939)
* Remove jquery-ujs

* fix for eslint
8 years ago
Yamagishi Kazutoshi f000673599 Remove local_time gem, and add similar (#2875) 8 years ago
Nolan Lawson 5b6c2a1e72 upgrade emojione-picker (#2874) 8 years ago
Nolan Lawson df81bc4a97 add asynchronous emojione-picker (code-splitting) (#2863) 8 years ago
Koala Yeung 6f71cfeff9 Eslintrc fix (#2850)
* eslintrc: adapt changes in eslint-plugin-jsx-a11y

* Replace 'jsx-a11y/img-has-alt' with 'jsx-a11y/alt-text'.
  Reference: evcohen/eslint-plugin-jsx-a11y@24b6193

* Replace 'jsx-a11y/onclick-has-focus' with 'jsx-a11y/interactive-supports-focus'
  Reference: evcohen/eslint-plugin-jsx-a11y@cbdfeb8

* Replace 'jsx-a11y/onclick-has-role' with 'jsx-a11y/no-noninteractive-element-interactions'
  Reference: evcohen/eslint-plugin-jsx-a11y@18c9b71

* Update eslint-plugin-jsx-a11y to 5.0.0

Follow the change in Code Climate. Make sure the same eslintrc
can be executed locally and in Code Climate.

* Convert .eslintrc.json to equivlant .eslintrc.yml

* Less quotes and commas, more readability, allow comment.
8 years ago
Eshin Kunishima 67b7d3d3b6 Replace ws with uws (#2807)
* Replace ws with uws

* fix indent

* Adjust indentation

* remove trailing space
8 years ago
Nolan Lawson 553e13144f remove legacy decorators, use lodash.debounce (#2830) 8 years ago
Yamagishi Kazutoshi 494945ff4f Move babel-plugin-lodash to dependencies from devDependencies (#2831) 8 years ago
Nolan Lawson 37caf0b36e separate .babelrc for prod/dev, add babel-plugin-lodash (#2829) 8 years ago
Koala Yeung cf0b753209 Streamline javascript translation by improving translationRunner (#2808)
* package.json: Add "build:*" targets

* Improve react-intl-translations-manager workflow.
  * Added "build:production" to build production bundle.
  * Added "build:development" to build development bundle.

* Fix json translation files

* Run `yarn manage:translations` to fix translation files.
* Fix `pl.json` for syntax error.

* translationRunner: auto detect existing languages

* Auto detect existing rfc5646 language tag in *.json filenames
  in `app/javascript/mastodon/locale` folder. No need to manually
  define every new language in the languages array here.

* translationRunner: add more functionality

* Allow script user to specify language code to check.
* Added available language check.
* Added --force flag to force creation of unexists language.
* Added --help flag and help messages.

* gitignore: ignore npm-debug.log

* Fix webpack error if NODE_ENV is not defined

Default to use 'development' in config/webpack/configuration.js
8 years ago
Yamagishi Kazutoshi e95983f5df Decode IDNA in PreviewCard (#2781) 8 years ago
Eugen Rochko f5bf5ebb82 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
8 years ago
Michael Deeb e4c294432f Added the repository field and a script for after npm version (#2459) 8 years ago
Ash Furrow 48652cb41e Fixes string length issue for multibyte characters. (#2443) 8 years ago
Keiji, Yoshimi 2bf7e81ed5 update emojione-picker for fixed warnings. (#2324) 8 years ago
Yamagishi Kazutoshi 1948f9e767 Remove deprecated features at React v15.5 (#1905)
* Remove deprecated features at React v15.5

- [x] React.PropTypes
- [x] react-addons-pure-render-mixin
- [x] react-addons-test-utils

* Uncommented out & Add browserify_rails options

* re-add react-addons-shallow

* Fix syntax error from resolve conflicts

* follow up 59a77923b3
8 years ago
Mingye Wang b00f4a0cf3 Use new ESLint filename (.json) (#2248)
* Use new ESLint filename (.json)

Codeclimate's ESLint 3 is complaining about the old filename. Let me try changing it.

* point eslint to new rc

(squash this)
8 years ago
Christoph Witzany 556f68ab15 Make Docker image buildable on ARM (#2065)
* after yarn upgrade

* after manually removing node-gyp as top level dependency
8 years ago
Alda Marteau-Hardi 77d1447ac4 Add the licence key in package.json (#1914) 8 years ago
Zac Anger f4045ba3d9 Add eslint-plugin-jsx-a11y (#1651)
* Add eslint-plugin-jsx-a11y.

* Fix npm script.

* Adjust npm scripts so test also runs lint.

* Fix existing lint errors.

* Don't break on a11y issues.

* Add role and tabIndex.

* Add vim and Mac files to .gitignore and .dockerignore.

* Handle htmlFor (partially), a that's actually a button.

* Fix missing tabIndex.

* Add cursor:pointer to load-more

* Revert change to load_more.

* Fixes based on review.

* Update yarn.lock.

* Don't try to install fsevents on Linux (hides warning noise).
8 years ago
Eugen b22b2cbfac Fix #1491 - Fix broken notifications, broken Link header parsing for exclude_types (#1548) 8 years ago
Gavin Mogan 3672a799d4 Dev Tooling fixes (eslint/editorconfig) (#1398)
* Add eslint to dev dependancies so it gets installed for the repo

yarn add --dev eslint babel-eslint eslint-plugin-reac

project specific version of eslint, you can globally install eslint-cli
if you want the global runtime, or add .bin to your path

* fix eslint errors about inconsitent returns

* eslint ignore the same as git ignore. allows for eslint .

* Add editorconfig file so everyones editor will be setup to follow the same standards
8 years ago
Eugen Rochko 333e44c3fc Improve emojis - use SVGs where possible 8 years ago
Eugen Rochko 952bce3023 Replace howler.js with simple <audio />, will hopefully resolve
some weird mobile browser behaviours
8 years ago
Eugen Rochko 89fc2d7f48 Fix #372 - Emoji picker 8 years ago
Eugen Rochko b44dd38360 Fix broken dependency on inner react utility function 8 years ago
Eugen Rochko 2c50687279 Improve compose form performance, upgrade JS dependencies. LightingBox
now allows to cycle through multiple images
8 years ago
Eugen Rochko 4d2be9f432 Add unique request IDs to streaming API to improve logs 8 years ago
Eugen Rochko b5bf807a34 Remove react-dnd as it was interfering with text selection. Move content
warning mentions preview into area where actual content would be
8 years ago
Eugen Rochko dbb7e5a644 Getting started on draggable columns 8 years ago