Address vue/v-on-event-hyphenation offenses
❗ COMMUNITY CONTRIBUTORS, PLEASE DO NOT ASSIGN THIS ISSUE TO YOURSELF. JUST CREATE A MERGE REQUEST. ONLY PICK ONE EVENT AND UPDATE IT ACCROSS ALL FILES (NOT JUST WHERE THE EVENT IS EMITTED) ❗
The vue/on-event-hyphenation ESLint rule was enabled in Adds linting for Vue events formatting (!214221 - merged) and uncovered many offenses
This epic tracks the progress for addressing existing offenses in the files that are currently ignored in .eslint_todo/vue-on-event-hyphenation.mjs.
Example from the docs
<template>
<!-- ✓ GOOD -->
<MyComponent v-on:custom-event="handleEvent" />
<!-- ✗ BAD -->
<MyComponent v-on:customEvent="handleEvent" />
</template>Implementation
-
Pick a directory of files from .eslint_todo/vue-v-on-event-hyphenation.mjs and remove the files from the list
-
Update all
v-oncustom events to be kebab-case-
NOTE: The
--fixoption on the command line can automatically fix some of the problems reported by this rule.yarn eslint path/to/the/directory --fix -
NOTE: Some GitLab-UI components currently don't support hyphenated actions (e.g. GlAlert). Disable this eslint rule around those components
<!-- eslint-disable vue/v-on-event-hyphenation --> ... <!-- eslint-enable vue/v-on-event-hyphenation -->
-
-
Update all event consumers and specs, by searching for
@customEventandemit('customEvent')in the whole codebase. -
Create a screen recording of the components working as expected in the application
-
Stage all changes
git add . -
Run Prettier on all staged files
yarn run lint:prettier:staged:fix -
Stage all new changes
git add . -
Run eslint to verify all files were fixed or fix any any issues
node scripts/frontend/eslint.js --no-warn-ignored --no-error-on-unmatched-pattern --format gitlab .eslint_todo/vue-v-on-event-hyphenation.mjs ./path/to/directory -
Open a merge request to update any alt text that doesn't follow the guidelines. For details with how to open a merge request, see Contribute to the GitLab documentation. In the merge request description, include this text:
Related to: https://gitlab.com/gitlab-org/gitlab/-/issues/583560
Support
Support contact: @aturinske