Sorin Davidoi
0c7c188c45
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
Akihiko Odaki (@fn_aki@pawoo.net)
8784bd79d0
Require stylesheets in common.js ( #4152 )
...
Require stylesheets in common.js because stylesheets are shared by the
entry points.
2017-07-11 15:15:42 +02:00
Yamagishi Kazutoshi
a27879c0cf
Replace state to /web when root path ( #4009 )
2017-06-30 05:37:41 +02:00
Akihiko Odaki (@fn_aki@pawoo.net)
e98559c3ff
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
Eugen Rochko
62ca37884a
Fix #2922 - Load stylesheet from "custom.css" entrypoint when present ( #3332 )
...
* Fix #2922 - Load stylesheet from "custom.css" entrypoint when present
This is pretty much the same way it worked as before, albeit with
having to create app/javascript/packs/custom.js with
require('../styles/custom.scss') (or whatever you want really), which
will be a blank slate for you to import whatever you want
* Remove old assets directory
* Extract font-awesome into common.css and always load it
2017-05-27 16:55:09 +02:00
Nolan Lawson
2469fd1cdc
Add improved performance marks for development mode ( #3297 )
2017-05-25 14:09:55 +02:00
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
2017-05-20 17:31:47 +02:00
Akihiko Odaki
85c9496340
Introduce common JavaScript file ( #2981 )
...
* Create common chunk rather than vendor chunk
vendor chunk is a set of modules provided by external vendors, but now we
can have a chunk as a set of modules shared by multiple entry points,
which could be more efficent than having vendor chunk.
* Start rails-ujs in common.js
This is used by /settings/two_factor_authentication.
2017-05-15 20:20:10 +02:00
Koala Yeung
b535966ab5
Allow SCSS variables to be overridden ( #2987 )
...
* Allow SCSS variables to be overridden with
`app/javascript/pack/variables*.scss`
* Allow these SCSS variables to be overriden:
* `$base-shadow-color`
* `$base-overlay-background`
* `$base-border-color`
* `$simple-background-color`
* `$primary-text-color`
* `$valid-value-color
* `$error-value-color`
2017-05-12 19:22:50 +02:00
Nolan Lawson
0ec77c5b3e
Add dynamic polyfills for older browsers ( #2985 )
...
Fixes #2941
2017-05-11 11:26:06 +02:00