discourse/lib
Kyle Zhao 9b10a78d82 FEATURE: Quick access panels in user menu (#8073)
* Extract QuickAccessPanel from UserNotifications.

* FEATURE: Quick access panels in user menu.

This feature adds quick access panels for bookmarks and personal
messages. It allows uses to browse recent items directly in the user
menu, without being redirected to the full pages.

* REFACTOR: Use QuickAccessItem for messages.

Reusing `DefaultNotificationItem` feels nice but it actually requires a
lot of extra work that is not needed for a quick access item.

Also, `DefaultNotificationItem` shows an incorrect tooptip ("unread
private message"), and it is not trivial to remove / override that.

* Use a plain JS object instead.

An Ember object was required when `DefaultNotificationItem` was used.

* Prefix instead suffix `_` for private helpers.

* Set to null instead of deleting object keys.

JavaScript engines can optimize object property access based on the
object’s shape. https://mathiasbynens.be/notes/shapes-ics

* Change trivial try/catch to one-liners.

* Return the promise in case needs to be waited on.

* Refactor showAll to a link with href

* Store `emptyStatePlaceholderItemText` in state.

* Store items in Session singleton instead.

We can drop `staleItems` (and `findStaleItems`) altogether. Because
`(old) items === staleItems` when switching back to a quick access
panel.

* Add `limit` parameter to the `user_actions` API.

* Explicitly import Session instead.
2019-09-09 11:03:57 -04:00
..
active_record/connection_adapters FIX: Race-condition in fallback handlers (#8005) 2019-08-21 15:47:44 +02:00
auth FEATURE: track date api key was last used 2019-09-03 18:11:30 +10:00
autospec DEV: make parallel spec optional with autospec 2019-06-21 11:00:28 +10:00
backup_restore FEATURE: Allow plugins to manipulate site settings during backup restore 2019-08-22 22:41:26 +02:00
common_passwords DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
content_security_policy FEATURE: Calculate CSP based on active themes (#6976) 2019-02-11 12:32:04 +00:00
demon Revert "Revert "Revert "FIX: Heartbeat check per sidekiq process (#7873)""" 2019-08-30 11:26:16 +01:00
email FIX: correct race condition loading library 2019-08-15 17:16:41 +10:00
emoji FEATURE: adds early support for new emojis (#7785) 2019-06-20 11:30:09 +02:00
es6_module_transpiler DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
file_store FIX: Correctly encode non-ASCII filenames in HTTP header 2019-08-07 19:10:50 +02:00
freedom_patches FIX: Correctly encode non-ASCII filenames in HTTP header 2019-08-07 19:10:50 +02:00
generators FIX: generated controller should be in an underscored folder (#7975) 2019-08-06 10:40:38 +02:00
guardian FEATURE: New post editing period for >= tl2 users (#8070) 2019-09-06 07:44:12 -04:00
highlight_js DEV: already defined constant 'HIGHLIGHTJS_DIR' 2019-01-21 10:12:23 +01:00
i18n FIX: English locale must not fall back to any other locale 2019-06-07 21:53:01 +02:00
import DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
import_export FIX: use uniq instead of uniq! when checking for uncompressed root path. Use rails naming convention for ZipUtils 2019-07-23 07:57:50 -03:00
javascripts FEATURE: Add Belarusian language 2019-07-04 11:37:37 +02:00
middleware FEATURE: improve performance of anonymous cache 2019-09-04 17:18:32 +10:00
migration FIX: Drop readonly function when dropping table 2019-08-09 11:39:46 +02:00
onebox DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
plugin DEV: Added wrapper to signal that NewPostManager#add_plugin_payload_attribute is part of the public API 2019-08-29 11:58:19 -03:00
pretty_text FIX: allows replacement of digits and symbols emojis (#7978) 2019-08-07 11:38:58 +02:00
rate_limiter DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
reviewable FIX: ensures url to full reviewable conversation works on subfolder 2019-06-24 11:31:07 -04:00
scheduler FEATURE: log long running jobs in the defer queue 2018-10-12 17:03:47 +11:00
search FEATURE: when under extreme load disable search 2019-07-02 11:22:01 +10:00
seed_data FIX: Consistently handle category param 2019-05-27 16:39:56 +08:00
sidekiq DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
site_settings REFACTOR: Rename SiteSetting.disable_edit_notifications to disable_system_edit_notifications (#7958) 2019-07-31 20:20:41 +05:30
stylesheet FEATURE: treat theme_uploads as settings in JavaScript 2019-08-21 16:51:10 +10:00
svg_sprite FEATURE: Quick access panels in user menu (#8073) 2019-09-09 11:03:57 -04:00
tasks DEV: Ignore duplicate prefixes when generating release notes 2019-09-04 15:45:48 +02:00
theme_store FIX: use uniq instead of uniq! when checking for uncompressed root path. Use rails naming convention for ZipUtils 2019-07-23 07:57:50 -03:00
turbo_tests DEV: Use recorded runtimes in turbo_rspec when running the whole test suite 2019-09-02 07:25:41 +01:00
validators FIX: Gravatar uploads being dependent on authorized_extensions. 2019-08-01 16:24:09 +08:00
wizard Update UI for wizard themes further reading step (#7669) 2019-06-03 10:47:17 -04:00
admin_confirmation.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
admin_constraint.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
admin_user_index_query.rb DEV: stop mutating inputs as a side effect 2019-04-30 10:25:53 +10:00
age_words.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
archetype.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
auth.rb FEATURE: Login with Discord (#8053) 2019-08-30 10:54:19 +01:00
avatar_lookup.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
badge_posts_view_manager.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
badge_queries.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
base62.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
browser_detection.rb FIX: Detect DiscourseHub user agent. 2019-08-09 11:58:15 +03:00
cache.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
canonical_url.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
category_badge.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
comment_migration.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
composer_messages_finder.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
configurable_urls.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
content_buffer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
content_security_policy.rb FEATURE: Calculate CSP based on active themes (#6976) 2019-02-11 12:32:04 +00:00
cooked_post_processor.rb FIX: Award 'First Onebox' badge just for Oneboxed URLs. (#7974) 2019-08-08 18:45:18 +02:00
crawler_detection.rb FIX: use crawler layout when saving url in Wayback Machine (#7667) 2019-06-03 12:13:32 +10:00
csrf_token_verifier.rb DEV: Provide method for auth plugins to generate a CSRF token 2019-08-13 01:13:08 +01:00
current_user.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
custom_renderer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
custom_setting_providers.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
db_helper.rb FIX: Clear banner topic cache after remapping 2019-08-15 11:24:20 +01:00
directory_helper.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
discourse.rb FEATURE: Login with Discord (#8053) 2019-08-30 10:54:19 +01:00
discourse_cookie_store.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
discourse_diff.rb PERF: limit time spent diffing large blobs of text 2019-06-27 01:45:52 +02:00
discourse_event.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
discourse_hub.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
discourse_iife.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
discourse_ip_info.rb FIX: exception which was meant to be ignored and logged was failing 2019-05-28 11:45:12 +10:00
discourse_logstash_logger.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
discourse_plugin.rb DEV: debundle plugin css assets and don't load if disabled (#7646) 2019-08-20 22:09:52 +05:30
discourse_plugin_registry.rb FIX: properly load desktop and mobile only plugin css assets. 2019-08-22 08:39:10 +05:30
discourse_redis.rb FIX: Race-condition in fallback handlers (#8005) 2019-08-21 15:47:44 +02:00
discourse_tagging.rb FIX: Provide an error message if no valid tags were selected 2019-07-25 12:46:16 -04:00
discourse_updates.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
disk_space.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
distributed_cache.rb REFACTOR: distributed_cache is moved to the message_bus gem 2018-10-15 15:01:45 -04:00
distributed_memoizer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
distributed_mutex.rb FIX: remove dependency on present? in distributed_mutex lib 2019-08-07 15:39:51 -04:00
edit_rate_limiter.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
email.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
email_backup_token.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
email_cook.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
email_updater.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
encodings.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
enum.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
enum_site_setting.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
excerpt_parser.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
feed_element_installer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
feed_item_accessor.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
file_helper.rb FIX: Gravatar uploads being dependent on authorized_extensions. 2019-08-01 16:24:09 +08:00
filter_best_posts.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
final_destination.rb fix the build 2019-08-07 16:39:58 +05:30
flag_query.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
flag_settings.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
gaps.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
global_path.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
guardian.rb REVERT: External auth when redeeming invites 2019-08-16 12:44:14 -06:00
has_errors.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
headless-ember.js
hijack.rb Take 2 of 0f5161af19. 2019-04-29 16:41:35 +08:00
homepage_constraint.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
html_prettify.rb Revert "FEATURE: Use configured quotation marks in fancy topic title" 2019-07-18 11:55:49 +02:00
html_to_markdown.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
image_sizer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
inline_oneboxer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
introduction_updater.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
ip_addr.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
js_locale_helper.rb FIX: Overriding _MF texts didn't work for en_US 2019-08-27 13:17:07 +02:00
json_error.rb FIX: Fix build. 2019-05-22 17:39:44 +03:00
letter_avatar.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
markdown_linker.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
mem_info.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
message_bus_diags.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
method_profiler.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
mini_sql_multisite_connection.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
mobile_detection.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
new_post_manager.rb FIX: Store custom attributes that are needed by plugins in queuedpost payload (#8009) 2019-08-14 15:02:59 -03:00
new_post_result.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
notification_levels.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
oneboxer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
onpdiff.rb PERF: limit time spent diffing large blobs of text 2019-06-27 01:45:52 +02:00
pbkdf2.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
permalink_constraint.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
pinned_check.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
plain_text_to_markdown.rb FIX: use URI.regexp to find URLs in plain text 2019-06-07 01:26:06 +02:00
plugin_gem.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
post_action_creator.rb FIX: Do not create a double like notification. (#7999) 2019-08-12 16:22:46 +03:00
post_action_destroyer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
post_action_result.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
post_creator.rb FIX: Prevent deadlock (#7691) 2019-06-05 11:29:27 +10:00
post_destroyer.rb Feature/Fix: Flagged posts user notifications (#8041) 2019-08-30 10:27:52 -03:00
post_jobs_enqueuer.rb FEATURE: Publish read state on group messages. (Originally introduced in #7989) (#8025) 2019-08-27 09:09:00 -03:00
post_locker.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
post_merger.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
post_revisor.rb REFACTOR: use Ruby's sum 2019-06-27 01:54:40 +02:00
pretty_text.rb FEATURE: do not replace ↔ with an emoji 2019-08-30 15:06:23 +10:00
primary_group_lookup.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
promotion.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
quote_comparer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
rate_limiter.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
read_only_header.rb DEV: rename ReadOnly module to ReadOnlyHeader 2019-05-06 16:07:49 +02:00
retrieve_title.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
route_format.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
rtl.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
s3_helper.rb FIX: don't include multisite upload path to source URL if already exist. 2019-08-02 07:57:27 +05:30
s3_inventory.rb DEV: `S3Inventory#unsorted_files` should always return an array (#8034) 2019-08-23 17:59:31 +10:00
score_calculator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
screening_model.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
search.rb PERF: Improve query speed when looking up direct PMs 2019-07-23 03:52:52 +00:00
secure_session.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
single_sign_on.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
single_sign_on_provider.rb FIX: Better error when SSO fails due to blank secret (#7946) 2019-07-26 17:37:23 +03:00
site_icon_manager.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
site_setting_extension.rb FIX: Remapping URLs didn't affect upload site settings 2019-06-04 18:37:10 +02:00
slug.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
socket_server.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
source_url.rb Correct some missing spots for frozen_string_literal 2019-05-13 09:31:32 +08:00
spam_handler.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
sql_builder.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
staff_constraint.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
staff_message_format.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
suggested_topics_builder.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
system_message.rb FIX: create system message in user selected locale 2019-05-29 21:43:43 +05:30
text_cleaner.rb FEATURE: English locale with international date formats 2019-05-20 13:47:20 +02:00
text_sentinel.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
theme_javascript_compiler.rb DEV: Upgrades to Ember 3.10 (#7871) 2019-07-16 12:45:15 +02:00
theme_settings_manager.rb FEATURE: Load theme setting descriptions from theme locale files 2019-05-31 14:49:59 +01:00
theme_settings_parser.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
theme_translation_manager.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
theme_translation_parser.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
timeline_lookup.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
topic_creator.rb FIX: properly set notification levels on group invite 2019-08-16 18:23:51 +10:00
topic_list_responder.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
topic_publisher.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
topic_query.rb FIX: Topics with muted tag didn't show up when filtering by category and tag 2019-09-06 20:38:03 +02:00
topic_query_params.rb FEATURE: Embed topics list on remote sites via Javascript API. (#8008) 2019-08-15 13:41:06 -04:00
topic_query_sql.rb DEV: Rails 5.2 upgrade and global gem upgrade 2018-06-07 14:21:33 +10:00
topic_retriever.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
topic_subtype.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
topic_view.rb FEATURE: Publish read state on group messages. (Originally introduced in #7989) (#8025) 2019-08-27 09:09:00 -03:00
topics_bulk_action.rb FIX: mark topics in sub categories as unread when dismissing parent 2019-06-27 13:26:48 +10:00
trust_level.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
turbo_tests.rb FIX: Made turbo_rspec display errors in shared groups correctly 2019-08-29 12:41:14 +01:00
twitter_api.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
unread.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
upload_creator.rb FIX: Gravatar uploads being dependent on authorized_extensions. 2019-08-01 16:24:09 +08:00
upload_fixer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
upload_markdown.rb DEV: Refactor helper methods for upload markdown 2019-07-25 16:36:35 +02:00
upload_recovery.rb FIX: make uploads recovery compatible with multisite. 2019-08-02 07:08:21 +05:30
url_helper.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
user_name_suggester.rb FIX: username suggester incorrectly skipping over whitelisted username 2019-05-28 16:48:46 +10:00
version.rb Version bump to 2.4.0.beta4 2019-09-06 16:08:03 -04:00
wizard.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00