Commit Graph

67 Commits (0d900416f71ab9c1a2e6636afd8ce024bfa966bb)

Author SHA1 Message Date
kibigo! 1d7b78817a Fixed index in webpack config 2017-12-11 10:45:21 -08:00
kibigo! b27126f1d6 Linting fixes 2017-12-10 11:08:04 -08:00
kibigo! 99e8710095 Javascript intl8n flavour support 2017-12-10 11:08:04 -08:00
kibigo! e614dc144e Fixed webpack skin folder globbing 2017-12-07 14:33:49 -08:00
kibigo! 882055afd0 Rename themes -> flavours ? ? 2017-12-03 23:26:40 -08:00
kibigo! 36b9f4df56 Skins support 2017-11-30 19:29:47 -08:00
kibigo! eadf1c38a5 Minor fixes 2017-11-21 18:17:38 -08:00
kibigo! 8aeda4f064 Finalized theme loading and stuff 2017-11-20 22:13:37 -08:00
kibigo! 5845057adb Themed prefetching 2017-11-16 21:37:08 -08:00
Surinna Curtis 02ae609d9a Merge tootsuite/master at ab48f2b239 2017-11-16 01:21:16 -06:00
Yamagishi Kazutoshi f0d800d9a9 Update extract-text-webpack-plugin to version 3.0.2 (#5584) 2017-11-05 13:07:59 +01:00
Yamagishi Kazutoshi 395a88eb5d Upgrade compression-webpack-plugin to version 1.0.1 (#5581) 2017-11-01 14:42:19 +01:00
Nolan Lawson ba22580c06 Add ServiceWorker caching for static assets (#5524) 2017-10-31 12:25:51 +01:00
Akihiko Odaki 38d5aa3073 Use contenthash for ExtractTextWebpackPlugin (#5462)
[hash] is not documented.
2017-10-27 23:54:20 +09:00
kibigo! 02827345ae Merge upstream 2.0ish #165 2017-10-11 10:43:10 -07:00
Nolan Lawson 82ff80dbad Remove prop types from external libraries (#5304) 2017-10-10 18:44:51 +02:00
Nolan Lawson 7bde8dcc08 Use ES module build of react-router-dom (#5264) 2017-10-08 02:55:58 +02:00
aschmitz 4f7aa88461 Configure webpack to poll for changes in development (#5040)
* Configure webpack to poll for changes in development

Vagrant on Linux/macOS hosts shared files via NFS, which doens't
support inotify-based watching of files. This tweak makes webpack
check for changes every second, and rebuild if necessary. This
removes the need to restart Foreman every time a frontend file
changes. Note that rebuilding is still a relatively lengthy
process.

The polling frequency can be changed to taste.

* Only poll in Vagrant

This tests for the presence of the VAGRANT environment variable to
determine whether or not we're in Vagrant. It is set in .env.vagrant,
which is set up to be included in the Vagrantfile.
2017-10-04 09:52:11 +02:00
kibigo! cae9e7ab76 Fixed webpack config code 2017-09-25 19:35:54 -07:00
kibigo! aac16a82d6 Better themeing support!! 2017-09-25 19:24:32 -07:00
Andrew b4842ef0b9 Add support for multiple themes (#4959)
* Add support for selecting a theme

* Fix codeclimate issues

* Look up site default style if current user is not available due to e.g. not being logged in

* Remove outdated comment in common.js

* Address requested changes in themes PR

* Fix codeclimate issues

* Explicitly check current_account in application controller and only check theme availability if non-nil

* codeclimate

* explicit precedence with &&

* Fix code style in application_controller according to @nightpool's suggestion, use default style in embedded.html.haml

* codeclimate: indentation + return
2017-09-19 16:36:23 +02:00
David Yip da3f22ee7d Merge branch 'origin/master' into sync/upstream
Conflicts:
	app/javascript/mastodon/components/status_list.js
	app/javascript/mastodon/features/notifications/index.js
	app/javascript/mastodon/features/ui/components/modal_root.js
	app/javascript/mastodon/features/ui/components/onboarding_modal.js
	app/javascript/mastodon/features/ui/index.js
	app/javascript/styles/about.scss
	app/javascript/styles/accounts.scss
	app/javascript/styles/components.scss
	app/presenters/instance_presenter.rb
	app/services/post_status_service.rb
	app/services/reblog_service.rb
	app/views/about/more.html.haml
	app/views/about/show.html.haml
	app/views/accounts/_header.html.haml
	config/webpack/loaders/babel.js
	spec/controllers/api/v1/accounts/credentials_controller_spec.rb
2017-09-09 14:27:47 -05:00
Yamagishi Kazutoshi 9d1019bded Disable babel-loader cache when development environment (#4684) 2017-08-24 19:27:52 +02:00
Ondřej Hruška 913dd13575 Merge remote-tracking branch 'upstream/master' 2017-08-07 22:43:52 +02:00
Yamagishi Kazutoshi 581f8b2909 Enable cache for babel-loader (#4505) 2017-08-03 17:46:49 +02:00
kibigo! 2cdee6ae8a Merge upstream (#111) 2017-08-01 13:20:29 -07:00
Gô Shoemake 58446d39d8 Multiple frontend support (#110)
* Initial multiple frontend support

* Removed unnecessary require()

* Moved styles/images out of common
2017-07-30 19:28:21 +02:00
Yamagishi Kazutoshi f61858281c Remove hash from chunk filename when dev env (#4411) 2017-07-28 05:14:01 +02:00
Satoshi KOJIMA c6344547a3 fix #4356 : place sw.js to assets/sw.js (#4357) 2017-07-28 01:55:52 +02:00
kibigo! 0b64d60988 Fix for stylesheet split 2017-07-18 11:28:52 -07:00
Surinna Curtis 6311bfb8ff Add sourceRoot/includePaths to loaders
Use the settings modal as an example/testcase
2017-07-18 11:27:48 -07:00
Ondřej Hruška 02f16aea28 split added glitch locales from vanilla (#82)
* Locale script now accepts overrides and new keys from glitch/locales

* Revert glitchsoc changes to mastodon/locales to prevent future merge conflicts
2017-07-16 01:15:25 +02:00
Sorin Davidoi ecab38fd66 Web Push Notifications (#3243)
* feat: Register push subscription

* feat: Notify when mentioned

* feat: Boost, favourite, reply, follow, follow request

* feat: Notification interaction

* feat: Handle change of public key

* feat: Unsubscribe if things go wrong

* feat: Do not send normal notifications if push is enabled

* feat: Focus client if open

* refactor: Move push logic to WebPushSubscription

* feat: Better title and body

* feat: Localize messages

* chore: Fix lint errors

* feat: Settings

* refactor: Lazy load

* fix: Check if push settings exist

* feat: Device-based preferences

* refactor: Simplify logic

* refactor: Pull request feedback

* refactor: Pull request feedback

* refactor: Create /api/web/push_subscriptions endpoint

* feat: Spec PushSubscriptionController

* refactor: WebPushSubscription => Web::PushSubscription

* feat: Spec Web::PushSubscription

* feat: Display first media attachment

* feat: Support direction

* fix: Stuff broken while rebasing

* refactor: Integration with session activations

* refactor: Cleanup

* refactor: Simplify implementation

* feat: Set VAPID keys via environment

* chore: Comments

* fix: Crash when no alerts

* fix: Set VAPID keys in testing environment

* fix: Follow link

* feat: Notification actions

* fix: Delete previous subscription

* chore: Temporary logs

* refactor: Move migration to a later date

* fix: Fetch the correct session activation and misc bugs

* refactor: Move migration to a later date

* fix: Remove follow request (no notifications)

* feat: Send administrator contact to push service

* feat: Set time-to-live

* fix: Do not show sensitive images

* fix: Reducer crash in error handling

* feat: Add badge

* chore: Fix lint error

* fix: Checkbox label overlap

* fix: Check for payload support

* fix: Rename action "type" (crash in latest Chrome)

* feat: Action to expand notification

* fix: Lint errors

* fix: Unescape notification body

* fix: Do not allow boosting if the status is hidden

* feat: Add VAPID keys to the production sample environment

* fix: Strip HTML tags from status

* refactor: Better error messages

* refactor: Handle browser not implementing the VAPID protocol (Samsung Internet)

* fix: Error when target_status is nil

* fix: Handle lack of image

* fix: Delete reference to invalid subscriptions

* feat: Better error handling

* fix: Unescape HTML characters after tags are striped

* refactor: Simpify code

* fix: Modify to work with #4091

* Sort strings alphabetically

* i18n: Updated Polish translation

it annoys me that it's not fully localized :P

* refactor: Use current_session in PushSubscriptionController

* fix: Rebase mistake

* fix: Set cacheName to mastodon

* refactor: Pull request feedback

* refactor: Remove logging statements

* chore(yarn): Fix conflicts with master

* chore(yarn): Copy latest from master

* chore(yarn): Readd offline-plugin

* refactor: Use save! and update!

* refactor: Send notifications async

* fix: Allow retry when push fails

* fix: Save track for failed pushes

* fix: Minify sw.js

* fix: Remove account_id from fabricator
2017-07-13 22:15:32 +02:00
Eugen Rochko fb7fcebb2b Fix #4059 - Remove ModuleConcatenationPlugin (#4139)
It increased memory usage of Webpack 1.5x fold with little benefits
2017-07-10 18:46:46 +02:00
Yamagishi Kazutoshi 2cd7d15620 Fix regular expression for RFC 5646 (regression from #3604) (#4133) 2017-07-10 14:02:18 +02:00
unarist 7968c69df4 Fix react-intl/locale-data import issue on production build (#3937)
Webpack seems to fail to import `react-intl/locale-data/*.js` if those
files has been proceed by babel, and this also breaks applying our translation.

Note that this won't be a problem on English locale, because react-intl
includes it as default and works fine without manually added locale-data.
Also this issue seems to only occurs on production build, but I'm not sure
about reason.
2017-06-25 12:49:53 +02:00
unarist 741fd15f4e Fix webpack config for Windows (#3926) 2017-06-24 14:03:52 +02:00
Nolan Lawson 9c246cac5c Apply babel to react-intl to remove prop-types (#3914) 2017-06-23 18:21:33 +02:00
Nolan Lawson 61634505c1 Upgrade to Webpack 3 with module concatenation (#3912) 2017-06-23 17:44:55 +02:00
Yamagishi Kazutoshi 0a2e331bd5 Re-add disableHostCheck (regression #3729) (#3854)
ref #2790
2017-06-19 14:01:31 +02:00
Yamagishi Kazutoshi dece663cd0 Upgrade Webpacker to version 2.0 (#3729) 2017-06-18 02:57:09 +02:00
Eugen Rochko baf07bc83b Exclude packs/custom.js from webpack compilation to prevent breakage (#3719)
due to the change in #3373
2017-06-13 03:55:36 +02:00
Yamagishi Kazutoshi eb34081815 Remove comments for eslint-disable (#3691) 2017-06-11 10:42:42 +02:00
Yamagishi Kazutoshi d66a5fb801 Refactor translationRunner.js (#3604)
- Use yargs instead of minimist
- Simplify validators
- Fix typo (RFC5626 -> RFC5646)
2017-06-06 13:31:57 +02:00
Yamagishi Kazutoshi 615c580665 Add quotes ESLint rules (#3602)
* Add quotes ESLint rule

* Add jsx-quotes ESlint rule

* Sort ESLint rules
2017-06-06 03:56:36 +02:00
Nolan Lawson 1a543944c8 Enable stats.json analysis with Webpack Visualizer (#3509) 2017-06-02 03:49:56 +02:00
Akihiko Odaki (@fn_aki@pawoo.net) 6b0fdf95b9 Resolve custom application stylesheet with Webpack (#3373)
This implementation is a bit smaller and still has the following benefits:

* No need of app/javascript/packs/custom.js
For custom stylesheet, it typically has only
"require('../styles/custom.scss')" and is redundant.

* No need to extract vendor stylesheet to another asset
Extracting vendor stylesheet could be forgotten by developers who do not
use custom stylesheet.
2017-06-01 20:56:32 +02:00
Yamagishi Kazutoshi 59ff072fcf Remove unused loaders of webpack (#3495) 2017-06-01 17:27:35 +02:00
Yamagishi Kazutoshi c7be992701 Add ESLint rule (object-curly-spacing) (#3498) 2017-06-01 17:25:10 +02:00
Naouak b7e9451a40 Fix webpack building on Windows (#3426)
* Path should not be constructed manually. Use path.join to ensure compatibility.

* Path should not be constructed manually. Use path.join to ensure compatibility.

* Fix regexp.

* Fix my own stupidity.
I forgot to check outside my test script the regexp...
2017-05-30 15:30:59 +02:00