Replace jquery.caret / jquery.atwho / At.js for autocompletion
For quick actions in Markdown we use https://github.com/ichord/At.js. Since October 2018 that project is no longer maintained and still has a number of open bugs that affect us, too. We need to evaluate an alternative library—for example https://github.com/zurb/tribute which is mentioned there.
Autocomplete types to convert
-
members -
labels -
issues -
merge requests -
epics -
milestones -
snippets -
emojis
Places to convert usage from atjs to tribute
Call hierarchy (generated 21 July 2020):
new GfmAutoComplete (app/assets/javascripts/gfm_auto_complete.js)
app/assets/javascripts/gl_form.js
app/assets/javascripts/notes.js
app/assets/javascripts/pages/projects/merge_requests/init_merge_request.js
app/assets/javascripts/pages/projects/merge_requests/edit/index.js
app/assets/javascripts/pages/projects/merge_requests/creations/index.js
app/assets/javascripts/pages/projects/tags/new/index.js
app/assets/javascripts/pages/projects/tags/releases/index.js
app/assets/javascripts/pages/shared/wikis/index.js
app/assets/javascripts/pages/snippets/form.js
app/assets/javascripts/shared/milestones/form.js
app/assets/javascripts/pages/groups/milestones/edit/index.js
app/assets/javascripts/pages/groups/milestones/new/index.js
app/assets/javascripts/pages/projects/milestones/edit/index.js
app/assets/javascripts/pages/projects/milestones/new/index.js
app/assets/javascripts/snippet/snippet_edit.js
app/assets/javascripts/pages/projects/snippets/edit/index.js
app/assets/javascripts/pages/projects/snippets/new/index.js
app/assets/javascripts/pages/snippets/edit/index.js
app/assets/javascripts/pages/snippets/new/index.js
app/assets/javascripts/vue_shared/components/markdown/field.vue
app/assets/javascripts/design_management/components/design_notes/design_reply_form.vue
app/assets/javascripts/issue_show/components/fields/description.vue
app/assets/javascripts/notes/components/comment_form.vue
app/assets/javascripts/notes/components/note_form.vue
app/assets/javascripts/releases/components/app_edit.vue
app/assets/javascripts/snippets/components/snippet_description_edit.vue
ee/app/assets/javascripts/epic/components/epic_form.vue
ee/app/assets/javascripts/iterations/components/iteration_form.vue
app/assets/javascripts/issuable_form.js
app/assets/javascripts/pages/projects/issues/form.js
app/assets/javascripts/pages/projects/issues/new/index.js
app/assets/javascripts/pages/projects/issues/edit/index.js
app/assets/javascripts/behaviors/markdown/gfm_auto_complete.js
app/assets/javascripts/behaviors/index.js
app/assets/javascripts/main.js
app/assets/javascripts/pages/profiles/show/index.js
ee/app/assets/javascripts/related_issues/components/related_issuable_input.vue
app/assets/javascripts/set_status_modal/set_status_modal_wrapper.vue
Edited by Coung Ngo