AppEvents Triggers Reference
AppEvents
The AppEvent system in Discourse provides a pub/sub mechanism for handling UI updates and component interactions - and these events are triggered via calls of AppEvent.trigger.
This topic consolidates a list of all such event triggers and their arguments, along with line-of-code references to the Discourse source code.
AppEvent is based on the Ember's Evented class, and similarly, events are handled by the on method.
Once the specific AppEvent trigger is identified, you may search in the source code for the corresponding .on method with the event name as the first argument.
This method should have an event handler function passed in as the last argument for executing any necessary logic upon trigger of the event.
Taking the composer:open event, we can search for appEvents.on("composer:open". This could lead us to 1 or more places in the code where the event is handled. Each of these would execute a callback function whenever the event is triggered, for example:
this.appEvents.on("composer:opened", this, this._findMessages);
You would then refer to the definition of the callback function this._findMessages to understand what happens when the composer:opened event is triggered. This callback function can take in arguments passed in from the trigger of the event to be processed within the scope of the function.
List of AppEvent Triggers
ace
No arguments passed to this event.
Detailed List
/frontend/discourse/admin/components/admin-theme-editor.gjs#118 :link:
No arguments passed to this event.
/plugins/discourse-data-explorer/assets/javascripts/discourse/controllers/admin-plugins/explorer/index.js#119 :link:
No arguments passed to this event.
/plugins/discourse-data-explorer/assets/javascripts/discourse/controllers/admin-plugins/explorer/queries/details.js#137 :link:
No arguments passed to this event.
bookmarks
bookmarks:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
bookmarkFormData.saveData |
property |
True |
- |
| 2 |
this.bookmarkModel.attachedTo |
called_function |
True |
- |
Detailed List
/frontend/discourse/app/components/bookmark-list.gjs#54 :link:
| Position |
Argument |
Type |
Description |
| 1 |
null |
null |
- |
| 2 |
bookmark1.attachedTo |
called_function |
- |
/frontend/discourse/app/components/bookmark-list.gjs#85 :link:
| Position |
Argument |
Type |
Description |
| 1 |
savedData1 |
variable |
- |
| 2 |
bookmark1.attachedTo |
called_function |
- |
/frontend/discourse/app/controllers/topic.js#1510 :link:
| Position |
Argument |
Type |
Description |
| 1 |
bookmarkFormData.saveData |
property |
- |
| 2 |
bookmark.attachedTo |
called_function |
- |
/frontend/discourse/app/lib/topic-bookmark-manager.js#57 :link:
| Position |
Argument |
Type |
Description |
| 1 |
bookmarkFormData.saveData |
property |
- |
| 2 |
this.bookmarkModel.attachedTo |
called_function |
- |
/frontend/discourse/app/models/post.ts#1248 :link:
| Position |
Argument |
Type |
Description |
| 1 |
data |
variable |
- |
| 2 |
objectArg2 |
object |
- |
| - |
objectArg2.target |
string |
- |
| - |
objectArg2.targetId |
property |
- |
/frontend/discourse/app/models/post.ts#1268 :link:
| Position |
Argument |
Type |
Description |
| 1 |
null |
null |
- |
| 2 |
objectArg2 |
object |
- |
| - |
objectArg2.target |
string |
- |
| - |
objectArg2.targetId |
property |
- |
/frontend/discourse/app/models/topic.ts#1289 :link:
| Position |
Argument |
Type |
Description |
| 1 |
null |
null |
- |
| 2 |
bookmark.attachedTo |
called_function |
- |
/plugins/chat/assets/javascripts/discourse/lib/chat-message-interactor.js#374 :link:
| Position |
Argument |
Type |
Description |
| 1 |
bookmarkFormData.saveData |
property |
- |
| 2 |
bookmark.attachedTo |
called_function |
- |
/plugins/discourse-data-explorer/assets/javascripts/discourse/controllers/group/reports/show.js#121 :link:
| Position |
Argument |
Type |
Description |
| 1 |
bookmarkFormData.saveData |
property |
- |
| 2 |
bookmark.attachedTo |
called_function |
- |
calendar
calendar:create-invitee-status :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.status |
variable |
True |
- |
| - |
objectArg1.postId |
property |
True |
- |
calendar:invitee-left-event :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.invitee |
variable |
True |
- |
| - |
objectArg1.postId |
property |
True |
- |
calendar:update-invitee-status :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.status |
variable |
True |
- |
| - |
objectArg1.postId |
property |
True |
- |
card
No arguments passed to this event.
No arguments passed to this event.
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
username |
variable |
True |
- |
| 2 |
target |
variable |
True |
- |
| 3 |
event |
variable |
True |
- |
chat
chat:message_interaction :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
result1.interaction |
property |
True |
- |
chat:modify-selection :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
event |
variable |
True |
- |
| 2 |
objectArg2 |
object |
True |
- |
| - |
objectArg2.type |
variable |
True |
- |
| - |
objectArg2.context |
property |
True |
- |
chat:open-insert-link-modal :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
event |
variable |
True |
- |
| 2 |
objectArg2 |
object |
True |
- |
| - |
objectArg2.context |
property |
True |
- |
chat:open-url :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
url |
variable |
True |
- |
Detailed List
/plugins/chat/assets/javascripts/discourse/routes/chat.js#66 :link:
| Position |
Argument |
Type |
Description |
| 1 |
url |
variable |
- |
/plugins/chat/assets/javascripts/discourse/routes/chat.js#71 :link:
| Position |
Argument |
Type |
Description |
| 1 |
url |
variable |
- |
chat:refresh-channel-members :link:
No arguments passed to this event.
No arguments passed to this event.
chat:toggle-close :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
event |
variable |
False |
- |
Detailed List
/plugins/chat/assets/javascripts/discourse/initializers/chat-keyboard-shortcuts.js#117 :link:
| Position |
Argument |
Type |
Description |
| 1 |
event |
variable |
- |
/plugins/chat/assets/javascripts/discourse/routes/chat.js#76 :link:
No arguments passed to this event.
chat:toggle-expand :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.chatStateManager.isDrawerExpanded |
property |
True |
- |
Detailed List
/plugins/chat/assets/javascripts/discourse/components/chat-drawer.gjs#163 :link:
| Position |
Argument |
Type |
Description |
| 1 |
this.chatStateManager.isDrawerExpanded |
property |
- |
/plugins/chat/assets/javascripts/discourse/services/chat.js#437 :link:
| Position |
Argument |
Type |
Description |
| 1 |
this.chatStateManager.isDrawerExpanded |
property |
- |
composer
composer:add-files :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
undefined |
undefined |
True |
- |
| 2 |
objectArg2 |
object |
True |
- |
| - |
objectArg2.skipPlaceholder |
boolean |
True |
- |
composer:cancel-upload :link:
No arguments passed to this event.
composer:cancelled :link:
No arguments passed to this event.
Detailed List
/frontend/discourse/app/services/composer.js#1654 :link:
No arguments passed to this event.
/frontend/discourse/app/services/composer.js#1669 :link:
No arguments passed to this event.
/frontend/discourse/app/services/composer.js#1686 :link:
No arguments passed to this event.
composer:created-post :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.postId |
property |
True |
- |
composer:div-resizing :link:
No arguments passed to this event.
composer:edited-post :link:
No arguments passed to this event.
composer:find-similar :link:
No arguments passed to this event.
composer:insert-block :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
template.content |
property |
True |
- |
Detailed List
/frontend/discourse/app/controllers/topic.js#535 :link:
| Position |
Argument |
Type |
Description |
| 1 |
quotedText |
variable |
- |
/frontend/discourse/app/controllers/topic.js#777 :link:
| Position |
Argument |
Type |
Description |
| 1 |
quotedText.trim |
called_function |
- |
/frontend/discourse/app/lib/lightbox/quote-image.js#89 :link:
| Position |
Argument |
Type |
Description |
| 1 |
quote |
variable |
- |
/plugins/discourse-templates/assets/javascripts/discourse/services/d-templates.js#103 :link:
| Position |
Argument |
Type |
Description |
| 1 |
template.content |
property |
- |
composer:insert-text :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
document.activeElement.href |
property |
True |
- |
| 2 |
objectArg2 |
object |
True |
- |
| - |
objectArg2.ensureSpace |
boolean |
True |
- |
composer:open :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.model |
property |
True |
- |
composer:opened :link:
No arguments passed to this event.
composer:preview-toggled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.isPreviewVisible |
property |
True |
- |
composer:replace-text :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
match |
variable |
True |
- |
| 2 |
replacement |
variable |
True |
- |
composer:reply-reloaded :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this |
this |
True |
- |
Detailed List
/frontend/discourse/app/models/composer.ts#1822 :link:
| Position |
Argument |
Type |
Description |
| 1 |
this |
this |
- |
/frontend/discourse/app/models/composer.ts#1841 :link:
| Position |
Argument |
Type |
Description |
| 1 |
this |
this |
- |
composer:resize-ended :link:
No arguments passed to this event.
composer:resize-started :link:
No arguments passed to this event.
composer:resized :link:
No arguments passed to this event.
Detailed List
/frontend/discourse/app/components/composer-body.js#73 :link:
No arguments passed to this event.
/frontend/discourse/app/components/composer-container.gjs#296 :link:
No arguments passed to this event.
composer:saved :link:
No arguments passed to this event.
composer:show-preview :link:
No arguments passed to this event.
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
menuItem |
variable |
True |
- |
composer:typed-reply :link:
No arguments passed to this event.
this.composerEventPrefix:all-uploads-complete :link:
No arguments passed to this event.
this.composerEventPrefix:apply-surround :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
[grid] |
string |
True |
- |
| 2 |
[/grid] |
string |
True |
- |
| 3 |
grid_surround |
string |
True |
- |
| 4 |
objectArg4 |
object |
True |
- |
| - |
objectArg4.useBlockMode |
boolean |
True |
- |
this.composerEventPrefix:closed :link:
No arguments passed to this event.
this.composerEventPrefix:replace-text :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
matchingPlaceholder1.index1 |
property |
True |
- |
| 2 |
replacement1 |
variable |
True |
- |
| 3 |
objectArg3 |
object |
False |
- |
| - |
objectArg3.regex |
variable |
False |
- |
| - |
objectArg3.index |
variable |
False |
- |
Detailed List
/frontend/discourse/app/components/composer-editor.gjs#511 :link:
| Position |
Argument |
Type |
Description |
| 1 |
matchingPlaceholder1.index1 |
property |
- |
| 2 |
replacement1 |
variable |
- |
| 3 |
objectArg3 |
object |
- |
| - |
objectArg3.regex |
variable |
- |
| - |
objectArg3.index |
variable |
- |
/frontend/discourse/app/components/composer-editor.gjs#537 :link:
| Position |
Argument |
Type |
Description |
| 1 |
match1 |
variable |
- |
| 2 |
replacement1 |
variable |
- |
/frontend/discourse/app/components/composer-editor.gjs#597 :link:
| Position |
Argument |
Type |
Description |
| 1 |
matchingPlaceholder1.index1 |
property |
- |
| 2 |
string |
string |
- |
| 3 |
objectArg3 |
object |
- |
| - |
objectArg3.regex |
variable |
- |
| - |
objectArg3.index |
variable |
- |
this.composerEventPrefix:upload-cancelled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
file.id |
property |
True |
- |
this.composerEventPrefix:upload-error :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
file |
variable |
True |
- |
this.composerEventPrefix:upload-started :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
file.name |
property |
True |
- |
this.composerEventPrefix:upload-success :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
file.name |
property |
True |
- |
| 2 |
upload |
variable |
True |
- |
this.composerEventPrefix:uploads-aborted :link:
No arguments passed to this event.
Detailed List
/frontend/discourse/app/lib/uppy/composer-upload.js#132 :link:
No arguments passed to this event.
/frontend/discourse/app/lib/uppy/composer-upload.js#181 :link:
No arguments passed to this event.
this.composerEventPrefix:uploads-cancelled :link:
No arguments passed to this event.
this.composerEventPrefix:uploads-preprocessing-complete :link:
No arguments passed to this event.
this.composerEventPrefix:will-close :link:
No arguments passed to this event.
this.composerEventPrefix:will-open :link:
No arguments passed to this event.
composer-messages
composer-messages:close :link:
No arguments passed to this event.
Detailed List
/frontend/discourse/app/services/composer.js#918 :link:
No arguments passed to this event.
/plugins/discourse-templates/assets/javascripts/discourse/services/d-templates.js#70 :link:
No arguments passed to this event.
composer-messages:create :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.extraClass |
string |
True |
- |
| - |
objectArg1.templateName |
string |
True |
- |
| - |
objectArg1.body |
called_function |
True |
- |
Detailed List
/frontend/discourse/app/services/composer.js#794 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.extraClass |
string |
- |
| - |
objectArg1.templateName |
string |
- |
| - |
objectArg1.body |
called_function |
- |
/frontend/discourse/app/services/composer.js#804 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.extraClass |
string |
- |
| - |
objectArg1.templateName |
string |
- |
| - |
objectArg1.body |
called_function |
- |
/frontend/discourse/app/services/composer.js#969 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.extraClass |
string |
- |
| - |
objectArg1.templateName |
string |
- |
| - |
objectArg1.body |
variable |
- |
/frontend/discourse/app/services/composer.js#993 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.extraClass |
string |
- |
| - |
objectArg1.templateName |
string |
- |
| - |
objectArg1.body |
variable |
- |
/frontend/discourse/app/services/composer.js#1002 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.extraClass |
string |
- |
| - |
objectArg1.templateName |
string |
- |
| - |
objectArg1.body |
called_function |
- |
/frontend/discourse/app/static/prosemirror/extensions/mention.js#251 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.extraClass |
string |
- |
| - |
objectArg1.templateName |
string |
- |
| - |
objectArg1.body |
variable |
- |
composer-service
composer-service:last-validated-at-cleared :link:
No arguments passed to this event.
composer-service:last-validated-at-updated :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.model |
variable |
True |
- |
Detailed List
/frontend/discourse/app/services/composer.js#1073 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.model |
variable |
- |
/frontend/discourse/app/services/composer.js#1282 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.model |
property |
- |
count-updated
count-updated:user.username_lower:key :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
value |
variable |
True |
- |
cta
No arguments passed to this event.
d-editor
d-editor:preview-click-group-card :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
event1.target |
property |
True |
- |
| 2 |
event1 |
variable |
True |
- |
d-editor:preview-click-user-card :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
event1.target |
property |
True |
- |
| 2 |
event1 |
variable |
True |
- |
destroyed-custom-html
destroyed-custom-html:this.name :link:
No arguments passed to this event.
discourse
discourse:focus-changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
session.hasFocus |
property |
True |
- |
discourse-ai
discourse-ai:bot-header-icon-clicked :link:
No arguments passed to this event.
discourse-ai:bot-pm-created :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.id |
property |
True |
- |
| - |
objectArg1.slug |
property |
True |
- |
| - |
objectArg1.title |
variable |
True |
- |
discourse-ai:force-conversations-sidebar :link:
No arguments passed to this event.
discourse-ai:new-conversation-btn-clicked :link:
No arguments passed to this event.
discourse-ai:stop-forcing-conversations-sidebar :link:
No arguments passed to this event.
discourse-reactions
discourse-reactions:reaction-toggled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.post |
variable |
True |
- |
| - |
objectArg1.reaction |
property |
True |
- |
discourse-solved
discourse-solved:solution-toggled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
post1 |
variable |
True |
- |
Detailed List
/plugins/discourse-solved/assets/javascripts/discourse/components/solved-accept-answer-button.gjs#28 :link:
| Position |
Argument |
Type |
Description |
| 1 |
post1 |
variable |
- |
/plugins/discourse-solved/assets/javascripts/discourse/components/solved-unaccept-answer-button.gjs#28 :link:
| Position |
Argument |
Type |
Description |
| 1 |
post1 |
variable |
- |
discourse-templates
discourse-templates:show :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.onInsertTemplate |
variable |
True |
- |
do-not-disturb
do-not-disturb:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.do_not_disturb_until |
property |
True |
- |
dom
No arguments passed to this event.
draft
draft:destroyed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
key |
variable |
True |
- |
emoji-picker
emoji-picker:close :link:
No arguments passed to this event.
flag
flag:created :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.message |
property |
True |
- |
| - |
objectArg1.postId |
property |
True |
- |
full-page-search
full-page-search:trigger-search :link:
No arguments passed to this event.
group
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
group1 |
variable |
True |
- |
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
model1 |
variable |
True |
- |
No arguments passed to this event.
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.type |
string |
True |
- |
| - |
objectArg1.event |
variable |
False |
- |
Detailed List
/frontend/discourse/app/services/keyboard-shortcuts.js#531 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.type |
string |
- |
| - |
objectArg1.event |
variable |
- |
/frontend/discourse/app/services/keyboard-shortcuts.js#540 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.type |
string |
- |
| - |
objectArg1.event |
variable |
- |
/frontend/discourse/app/services/keyboard-shortcuts.js#547 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.type |
string |
- |
| - |
objectArg1.event |
variable |
- |
/frontend/discourse/app/services/search.js#68 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.type |
string |
- |
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
topic1 |
variable |
True |
- |
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
composer.topic |
property |
True |
- |
Detailed List
/frontend/discourse/app/controllers/topic.js#1843 :link:
| Position |
Argument |
Type |
Description |
| 1 |
topic |
variable |
- |
/frontend/discourse/app/instance-initializers/subscribe-user-notifications.js#168 :link:
| Position |
Argument |
Type |
Description |
| 1 |
null |
null |
- |
| 2 |
5000 |
integer |
- |
/frontend/discourse/app/routes/topic.js#428 :link:
| Position |
Argument |
Type |
Description |
| 1 |
model |
variable |
- |
/frontend/discourse/app/services/composer.js#1203 :link:
| Position |
Argument |
Type |
Description |
| 1 |
composer.topic |
property |
- |
/plugins/discourse-assign/assets/javascripts/discourse/initializers/extend-for-assigns.js#502 :link:
| Position |
Argument |
Type |
Description |
| 1 |
topic |
variable |
- |
inserted-custom-html
inserted-custom-html:this.name :link:
No arguments passed to this event.
interface-color
interface-color:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
LIGHT_VALUE_FOR_COOKIE |
variable |
True |
- |
Detailed List
/frontend/discourse/app/services/interface-color.js#95 :link:
| Position |
Argument |
Type |
Description |
| 1 |
LIGHT_VALUE_FOR_COOKIE |
variable |
- |
/frontend/discourse/app/services/interface-color.js#113 :link:
| Position |
Argument |
Type |
Description |
| 1 |
DARK_VALUE_FOR_COOKIE |
variable |
- |
/frontend/discourse/app/services/interface-color.js#127 :link:
| Position |
Argument |
Type |
Description |
| 1 |
LIGHT_VALUE_FOR_COOKIE |
variable |
- |
/frontend/discourse/app/services/interface-color.js#136 :link:
| Position |
Argument |
Type |
Description |
| 1 |
DARK_VALUE_FOR_COOKIE |
variable |
- |
keyboard
keyboard:move-selection :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.articles |
variable |
True |
- |
| - |
objectArg1.selectedArticle |
variable |
True |
- |
notifications
notifications:changed :link:
No arguments passed to this event.
Detailed List
/frontend/discourse/app/instance-initializers/subscribe-user-notifications.js#160 :link:
No arguments passed to this event.
/plugins/chat/assets/javascripts/discourse/services/chat-tracking-state-manager.js#110 :link:
No arguments passed to this event.
page
page:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.url |
variable |
True |
- |
| - |
objectArg1.title |
called_function |
False |
- |
| - |
objectArg1.currentRouteName |
property |
False |
- |
| - |
objectArg1.replacedOnlyQueryParams |
variable |
False |
- |
Detailed List
/frontend/discourse/app/lib/page-tracker.js#42 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
variable |
- |
| - |
objectArg1.title |
called_function |
- |
| - |
objectArg1.currentRouteName |
property |
- |
| - |
objectArg1.replacedOnlyQueryParams |
variable |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#37 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#53 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#93 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#124 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#141 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#153 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#172 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#201 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#218 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
/plugins/discourse-events/test/javascripts/integration/components/upcoming-events-list-test.gjs#239 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.url |
string |
- |
page:compose-reply :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
topic |
variable |
True |
- |
page:like-toggled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
post1 |
variable |
True |
- |
| 2 |
likeAction1 |
variable |
True |
- |
page:topic-loaded :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
topic |
variable |
True |
- |
policy
policy:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.controller |
variable |
True |
- |
| - |
objectArg1.message |
variable |
True |
- |
poll
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
poll1 |
variable |
True |
- |
| 2 |
this.post |
property |
True |
- |
| 3 |
this.vote |
property |
True |
- |
Detailed List
/plugins/poll/assets/javascripts/discourse/components/poll.gjs#190 :link:
| Position |
Argument |
Type |
Description |
| 1 |
poll1 |
variable |
- |
| 2 |
this.post |
property |
- |
| 3 |
this.vote |
property |
- |
/plugins/poll/assets/javascripts/discourse/components/poll.gjs#448 :link:
| Position |
Argument |
Type |
Description |
| 1 |
poll1 |
variable |
- |
| 2 |
this.post |
property |
- |
| 3 |
this.vote |
property |
- |
post
post:created :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
createdPost |
variable |
True |
- |
post:highlight :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
result.payload.post_number |
property |
True |
- |
| 2 |
options |
variable |
False |
- |
Detailed List
/frontend/discourse/app/lib/url.js#366 :link:
| Position |
Argument |
Type |
Description |
| 1 |
closest |
variable |
- |
/frontend/discourse/app/routes/topic/from-params.js#99 :link:
| Position |
Argument |
Type |
Description |
| 1 |
closest |
variable |
- |
/frontend/discourse/app/services/composer.js#1211 :link:
| Position |
Argument |
Type |
Description |
| 1 |
result.payload.post_number |
property |
- |
| 2 |
options |
variable |
- |
post:show-revision :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
copy.postNumber |
property |
True |
- |
| 2 |
copy.revisionNumber |
property |
True |
- |
post-stream
post-stream:filter-replies :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.topic_id |
property |
True |
- |
| - |
objectArg1.post_number |
variable |
True |
- |
| - |
objectArg1.post_id |
variable |
True |
- |
post-stream:filter-show-all :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.args.streamFilters |
property |
True |
- |
post-stream:filter-upwards :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.topic_id |
property |
True |
- |
| - |
objectArg1.post_id |
variable |
True |
- |
post-stream:gap-expanded :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.post_id |
property |
True |
- |
No arguments passed to this event.
No arguments passed to this event.
reviewablenote
reviewablenote:created :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
data1 |
variable |
True |
- |
| 2 |
this.args.reviewable |
property |
True |
- |
| 3 |
this.formApi |
property |
True |
- |
search
search:search_result_view :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.page |
property |
True |
- |
No arguments passed to this event.
No arguments passed to this event.
No arguments passed to this event.
this.eventPrefix
this.eventPrefix:insert-text :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
markdown |
variable |
True |
- |
Detailed List
/frontend/discourse/app/lib/textarea-text-manipulation.js#447 :link:
| Position |
Argument |
Type |
Description |
| 1 |
table |
variable |
- |
/frontend/discourse/app/lib/textarea-text-manipulation.js#501 :link:
| Position |
Argument |
Type |
Description |
| 1 |
markdown |
variable |
- |
topic
topic:created :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
createdPost |
variable |
True |
- |
| 2 |
this |
this |
True |
- |
topic:current-post-changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.post |
variable |
True |
- |
topic:current-post-scrolled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.postIndex |
property |
True |
- |
| - |
objectArg1.percent |
called_function |
True |
- |
topic:jump-to-post :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.get |
called_function |
True |
- |
Detailed List
/frontend/discourse/app/controllers/topic.js#1085 :link:
| Position |
Argument |
Type |
Description |
| 1 |
this.get |
called_function |
- |
/frontend/discourse/app/controllers/topic.js#1478 :link:
| Position |
Argument |
Type |
Description |
| 1 |
postId |
variable |
- |
topic:keyboard-trigger :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.type |
string |
True |
- |
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
offset |
variable |
True |
- |
topic:timings-sent :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
data |
variable |
True |
- |
topic-entrance
topic-entrance:show :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.topic |
variable |
True |
- |
| - |
objectArg1.position |
called_function |
True |
- |
Detailed List
/frontend/discourse/app/components/basic-topic-list.gjs#89 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.topic |
variable |
- |
| - |
objectArg1.position |
called_function |
- |
/frontend/discourse/app/components/featured-topic.gjs#14 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.topic |
property |
- |
| - |
objectArg1.position |
called_function |
- |
/frontend/discourse/app/components/mobile-category-topic.gjs#19 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.topic |
property |
- |
| - |
objectArg1.position |
called_function |
- |
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.args.username |
property |
True |
- |
| 2 |
e1.target |
property |
True |
- |
| 3 |
e1 |
variable |
True |
- |
upload-mixin
upload-mixin:this.config.id:all-uploads-complete :link:
No arguments passed to this event.
upload-mixin:this.config.id:in-progress-uploads :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
this.inProgressUploads |
property |
True |
- |
upload-mixin:this.config.id:upload-cancelled :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
file.id |
property |
True |
- |
upload-mixin:this.config.id:upload-success :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
file.name |
property |
True |
- |
| 2 |
completeResponse |
variable |
True |
- |
Detailed List
/frontend/discourse/app/lib/uppy/uppy-upload.js#252 :link:
| Position |
Argument |
Type |
Description |
| 1 |
file.name |
property |
- |
| 2 |
completeResponse |
variable |
- |
/frontend/discourse/app/lib/uppy/uppy-upload.js#273 :link:
| Position |
Argument |
Type |
Description |
| 1 |
file.name |
property |
- |
| 2 |
upload |
variable |
- |
upload-mixin:this.config.id:uploads-cancelled :link:
No arguments passed to this event.
user-card
user-card:after-show :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.user |
variable |
True |
- |
user-card:show :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.username |
variable |
True |
- |
user-drafts
user-drafts:changed :link:
No arguments passed to this event.
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.notification |
property |
True |
- |
| - |
objectArg1.href |
property |
True |
- |
No arguments passed to this event.
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
tab1.id |
property |
True |
- |
user-reviewable-count
user-reviewable-count:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
count |
variable |
True |
- |
user-status
user-status:changed :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
data |
variable |
True |
- |
other events
AI_RESULTS_TOGGLED :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.enabled |
boolean |
True |
- |
Detailed List
/plugins/discourse-ai/assets/javascripts/discourse/components/ai-full-page-search.gjs#67 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.enabled |
boolean |
- |
/plugins/discourse-ai/assets/javascripts/discourse/components/ai-full-page-search.gjs#156 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.enabled |
undefined |
- |
/plugins/discourse-ai/assets/javascripts/discourse/components/ai-full-page-search.gjs#193 :link:
| Position |
Argument |
Type |
Description |
| 1 |
objectArg1 |
object |
- |
| - |
objectArg1.enabled |
boolean |
- |
click-tracked :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
href |
variable |
True |
- |
desktop-notification-opened :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.url |
property |
True |
- |
keyboard-visibility-change :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
keyboardVisible |
variable |
True |
- |
push-notification-opened :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
objectArg1 |
object |
True |
- |
| - |
objectArg1.url |
property |
True |
- |
No arguments passed to this event.
this.flagCreatedEvent :link:
| Position |
Argument |
Type |
Always Present |
Description |
| 1 |
flagModal.args.model.flagModel |
property |
True |
- |
| 2 |
postAction |
variable |
True |
- |
| 3 |
opts |
variable |
True |
- |