mirror of
https://github.com/discourse/discourse.git
synced 2024-12-05 09:13:43 +08:00
7c25597da2
This commit adds a new `/hashtag/search` endpoint and both relevant JS and ruby plugin APIs to handle plugins adding their own data sources and priority orders for types of things to search when `#` is pressed. A `context` param is added to `setupHashtagAutocomplete` which a corresponding chat PR https://github.com/discourse/discourse-chat/pull/1302 will now use. The UI calls `registerHashtagSearchParam` for each context that will require a `#` search (e.g. the topic composer), for each type of record that the context needs to search for, as well as a priority order for that type. Core uses this call to add the `category` and `tag` data sources to the topic composer. The `register_hashtag_data_source` ruby plugin API call is for plugins to add a new data source for the hashtag searching endpoint, e.g. discourse-chat may add a `channel` data source. This functionality is hidden behind the `enable_experimental_hashtag_autocomplete` flag, except for the change to `setupHashtagAutocomplete` since only core and discourse-chat are using that function. Note this PR does **not** include required changes for hashtag lookup or new styling. |
||
---|---|---|
.. | ||
notifications | ||
anonymous_shadow_creator_spec.rb | ||
auto_silence_spec.rb | ||
badge_granter_spec.rb | ||
base_bookmarkable_spec.rb | ||
color_scheme_revisor_spec.rb | ||
destroy_task_spec.rb | ||
email_settings_exception_handler_spec.rb | ||
email_settings_validator_spec.rb | ||
email_style_updater_spec.rb | ||
external_upload_manager_spec.rb | ||
flag_sockpuppets_spec.rb | ||
group_action_logger_spec.rb | ||
group_mentions_updater_spec.rb | ||
group_message_spec.rb | ||
hashtag_autocomplete_service_spec.rb | ||
heat_settings_updater_spec.rb | ||
inline_uploads_multisite_spec.rb | ||
inline_uploads_spec.rb | ||
notification_emailer_spec.rb | ||
post_action_notifier_spec.rb | ||
post_alerter_spec.rb | ||
post_bookmarkable_spec.rb | ||
post_owner_changer_spec.rb | ||
push_notification_pusher_spec.rb | ||
random_topic_selector_spec.rb | ||
search_indexer_spec.rb | ||
site_settings_spec.rb | ||
staff_action_logger_spec.rb | ||
themes_spec.rb | ||
topic_bookmarkable_spec.rb | ||
topic_status_updater_spec.rb | ||
topic_timestamp_changer_spec.rb | ||
trust_level_granter_spec.rb | ||
user_activator_spec.rb | ||
user_anonymizer_spec.rb | ||
user_authenticator_spec.rb | ||
user_destroyer_spec.rb | ||
user_merger_spec.rb | ||
user_notification_schedule_processor_spec.rb | ||
user_silencer_spec.rb | ||
user_stat_count_updater_spec.rb | ||
user_updater_spec.rb | ||
username_changer_spec.rb | ||
username_checker_service_spec.rb | ||
wildcard_domain_checker_spec.rb | ||
wildcard_url_checker_spec.rb | ||
word_watcher_spec.rb |