diff --git a/.prettierignore b/.prettierignore
index a428ada07199e36a8287c4aea1e14c372b81f823..f8a9b7ca56fa549cf13fe4768f9f76b53c510ddd 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -11,23 +11,6 @@ doc/api/graphql/reference/gitlab_schema.graphql
 *.md
 
 # temporarly ignored in order to migrate to prettier@2 more efficiently and iteratively:
-spec/frontend/incidents/components
-spec/frontend/incidents_settings/components
-spec/frontend/integrations/edit/components
-spec/frontend/issuable/related_issues/components
-spec/frontend/issuable_list/components
-spec/frontend/issuable_show/components
-spec/frontend/issuable_suggestions/components
-spec/frontend/issue_show/components
-spec/frontend/issues_list/components
-spec/frontend/jobs/components
-spec/frontend/lib/utils
-spec/frontend/logs/components
-spec/frontend/members/components/action_buttons
-spec/frontend/members/components/filter_sort
-spec/frontend/members/components/table
-spec/frontend/milestones
-spec/frontend/monitoring
 spec/frontend/notes
 spec/frontend/packages/details/components
 spec/frontend/packages/details/store
diff --git a/spec/frontend/incidents/components/incidents_list_spec.js b/spec/frontend/incidents/components/incidents_list_spec.js
index 6329a84ff6e06b2d7b7572b1a33852f73471cc6d..8212776742caf62147c729adeb7dc8d95e3b470c 100644
--- a/spec/frontend/incidents/components/incidents_list_spec.js
+++ b/spec/frontend/incidents/components/incidents_list_spec.js
@@ -158,17 +158,11 @@ describe('Incidents List', () => {
 
     describe('Assignees', () => {
       it('shows Unassigned when there are no assignees', () => {
-        expect(
-          findAssignees()
-            .at(0)
-            .text(),
-        ).toBe(I18N.unassigned);
+        expect(findAssignees().at(0).text()).toBe(I18N.unassigned);
       });
 
       it('renders an avatar component when there is an assignee', () => {
-        const avatar = findAssignees()
-          .at(1)
-          .find(GlAvatar);
+        const avatar = findAssignees().at(1).find(GlAvatar);
         const { src, label } = avatar.attributes();
         const { name, avatarUrl } = mockIncidents[1].assignees.nodes[0];
 
@@ -189,9 +183,7 @@ describe('Incidents List', () => {
     });
 
     it('contains a link to the incident details page', async () => {
-      findTableRows()
-        .at(0)
-        .trigger('click');
+      findTableRows().at(0).trigger('click');
       expect(visitUrl).toHaveBeenCalledWith(
         joinPaths(`/project/issues/incident`, mockIncidents[0].iid),
       );
diff --git a/spec/frontend/incidents_settings/components/incidents_settings_tabs_spec.js b/spec/frontend/incidents_settings/components/incidents_settings_tabs_spec.js
index 11b9eda2585f84ee9453880d5d88238bf1b46bd1..e94645c4e1dea729d5fd4252aee1e73703bee426 100644
--- a/spec/frontend/incidents_settings/components/incidents_settings_tabs_spec.js
+++ b/spec/frontend/incidents_settings/components/incidents_settings_tabs_spec.js
@@ -42,16 +42,9 @@ describe('IncidentsSettingTabs', () => {
     const activeTabs = wrapper.vm.$options.tabs.filter(tab => tab.active);
     expect(findIntegrationTabs().length).toBe(activeTabs.length);
     activeTabs.forEach((tab, index) => {
+      expect(findIntegrationTabs().at(index).attributes('title')).toBe(tab.title);
       expect(
-        findIntegrationTabs()
-          .at(index)
-          .attributes('title'),
-      ).toBe(tab.title);
-      expect(
-        findIntegrationTabs()
-          .at(index)
-          .find(`[data-testid="${tab.component}-tab"]`)
-          .exists(),
+        findIntegrationTabs().at(index).find(`[data-testid="${tab.component}-tab"]`).exists(),
       ).toBe(true);
     });
   });
diff --git a/spec/frontend/integrations/edit/components/dynamic_field_spec.js b/spec/frontend/integrations/edit/components/dynamic_field_spec.js
index 53234419f5f5e7711d4e960afaf2427cdd9dc306..ecd031039926e3c52fde335cefc65e54d025eba7 100644
--- a/spec/frontend/integrations/edit/components/dynamic_field_spec.js
+++ b/spec/frontend/integrations/edit/components/dynamic_field_spec.js
@@ -37,153 +37,142 @@ describe('DynamicField', () => {
   const findGlFormTextarea = () => wrapper.find(GlFormTextarea);
 
   describe('template', () => {
-    describe.each([[true, 'disabled', 'readonly'], [false, undefined, undefined]])(
-      'dynamic field, when isInheriting = `%p`',
-      (isInheriting, disabled, readonly) => {
-        describe('type is checkbox', () => {
-          beforeEach(() => {
-            createComponent(
-              {
-                type: 'checkbox',
-              },
-              isInheriting,
-            );
-          });
-
-          it(`renders GlFormCheckbox, which ${isInheriting ? 'is' : 'is not'} disabled`, () => {
-            expect(findGlFormCheckbox().exists()).toBe(true);
-            expect(
-              findGlFormCheckbox()
-                .find('[type=checkbox]')
-                .attributes('disabled'),
-            ).toBe(disabled);
-          });
+    describe.each([
+      [true, 'disabled', 'readonly'],
+      [false, undefined, undefined],
+    ])('dynamic field, when isInheriting = `%p`', (isInheriting, disabled, readonly) => {
+      describe('type is checkbox', () => {
+        beforeEach(() => {
+          createComponent(
+            {
+              type: 'checkbox',
+            },
+            isInheriting,
+          );
+        });
 
-          it('does not render other types of input', () => {
-            expect(findGlFormSelect().exists()).toBe(false);
-            expect(findGlFormTextarea().exists()).toBe(false);
-            expect(findGlFormInput().exists()).toBe(false);
-          });
+        it(`renders GlFormCheckbox, which ${isInheriting ? 'is' : 'is not'} disabled`, () => {
+          expect(findGlFormCheckbox().exists()).toBe(true);
+          expect(findGlFormCheckbox().find('[type=checkbox]').attributes('disabled')).toBe(
+            disabled,
+          );
         });
 
-        describe('type is select', () => {
-          beforeEach(() => {
-            createComponent(
-              {
-                type: 'select',
-                choices: [['all', 'All details'], ['standard', 'Standard']],
-              },
-              isInheriting,
-            );
-          });
+        it('does not render other types of input', () => {
+          expect(findGlFormSelect().exists()).toBe(false);
+          expect(findGlFormTextarea().exists()).toBe(false);
+          expect(findGlFormInput().exists()).toBe(false);
+        });
+      });
 
-          it(`renders GlFormSelect, which ${isInheriting ? 'is' : 'is not'} disabled`, () => {
-            expect(findGlFormSelect().exists()).toBe(true);
-            expect(findGlFormSelect().findAll('option')).toHaveLength(2);
-            expect(
-              findGlFormSelect()
-                .find('select')
-                .attributes('disabled'),
-            ).toBe(disabled);
-          });
+      describe('type is select', () => {
+        beforeEach(() => {
+          createComponent(
+            {
+              type: 'select',
+              choices: [
+                ['all', 'All details'],
+                ['standard', 'Standard'],
+              ],
+            },
+            isInheriting,
+          );
+        });
 
-          it('does not render other types of input', () => {
-            expect(findGlFormCheckbox().exists()).toBe(false);
-            expect(findGlFormTextarea().exists()).toBe(false);
-            expect(findGlFormInput().exists()).toBe(false);
-          });
+        it(`renders GlFormSelect, which ${isInheriting ? 'is' : 'is not'} disabled`, () => {
+          expect(findGlFormSelect().exists()).toBe(true);
+          expect(findGlFormSelect().findAll('option')).toHaveLength(2);
+          expect(findGlFormSelect().find('select').attributes('disabled')).toBe(disabled);
         });
 
-        describe('type is textarea', () => {
-          beforeEach(() => {
-            createComponent(
-              {
-                type: 'textarea',
-              },
-              isInheriting,
-            );
-          });
+        it('does not render other types of input', () => {
+          expect(findGlFormCheckbox().exists()).toBe(false);
+          expect(findGlFormTextarea().exists()).toBe(false);
+          expect(findGlFormInput().exists()).toBe(false);
+        });
+      });
 
-          it(`renders GlFormTextarea, which ${isInheriting ? 'is' : 'is not'} readonly`, () => {
-            expect(findGlFormTextarea().exists()).toBe(true);
-            expect(
-              findGlFormTextarea()
-                .find('textarea')
-                .attributes('readonly'),
-            ).toBe(readonly);
-          });
+      describe('type is textarea', () => {
+        beforeEach(() => {
+          createComponent(
+            {
+              type: 'textarea',
+            },
+            isInheriting,
+          );
+        });
 
-          it('does not render other types of input', () => {
-            expect(findGlFormCheckbox().exists()).toBe(false);
-            expect(findGlFormSelect().exists()).toBe(false);
-            expect(findGlFormInput().exists()).toBe(false);
-          });
+        it(`renders GlFormTextarea, which ${isInheriting ? 'is' : 'is not'} readonly`, () => {
+          expect(findGlFormTextarea().exists()).toBe(true);
+          expect(findGlFormTextarea().find('textarea').attributes('readonly')).toBe(readonly);
         });
 
-        describe('type is password', () => {
-          beforeEach(() => {
-            createComponent(
-              {
-                type: 'password',
-              },
-              isInheriting,
-            );
-          });
+        it('does not render other types of input', () => {
+          expect(findGlFormCheckbox().exists()).toBe(false);
+          expect(findGlFormSelect().exists()).toBe(false);
+          expect(findGlFormInput().exists()).toBe(false);
+        });
+      });
 
-          it(`renders GlFormInput, which ${isInheriting ? 'is' : 'is not'} readonly`, () => {
-            expect(findGlFormInput().exists()).toBe(true);
-            expect(findGlFormInput().attributes('type')).toBe('password');
-            expect(findGlFormInput().attributes('readonly')).toBe(readonly);
-          });
+      describe('type is password', () => {
+        beforeEach(() => {
+          createComponent(
+            {
+              type: 'password',
+            },
+            isInheriting,
+          );
+        });
 
-          it('does not render other types of input', () => {
-            expect(findGlFormCheckbox().exists()).toBe(false);
-            expect(findGlFormSelect().exists()).toBe(false);
-            expect(findGlFormTextarea().exists()).toBe(false);
-          });
+        it(`renders GlFormInput, which ${isInheriting ? 'is' : 'is not'} readonly`, () => {
+          expect(findGlFormInput().exists()).toBe(true);
+          expect(findGlFormInput().attributes('type')).toBe('password');
+          expect(findGlFormInput().attributes('readonly')).toBe(readonly);
         });
 
-        describe('type is text', () => {
-          beforeEach(() => {
-            createComponent(
-              {
-                type: 'text',
-                required: true,
-              },
-              isInheriting,
-            );
-          });
+        it('does not render other types of input', () => {
+          expect(findGlFormCheckbox().exists()).toBe(false);
+          expect(findGlFormSelect().exists()).toBe(false);
+          expect(findGlFormTextarea().exists()).toBe(false);
+        });
+      });
 
-          it(`renders GlFormInput, which ${isInheriting ? 'is' : 'is not'} readonly`, () => {
-            expect(findGlFormInput().exists()).toBe(true);
-            expect(findGlFormInput().attributes()).toMatchObject({
+      describe('type is text', () => {
+        beforeEach(() => {
+          createComponent(
+            {
               type: 'text',
-              id: 'service_project_url',
-              name: 'service[project_url]',
-              placeholder: defaultProps.placeholder,
-              required: 'required',
-            });
-            expect(findGlFormInput().attributes('readonly')).toBe(readonly);
-          });
+              required: true,
+            },
+            isInheriting,
+          );
+        });
 
-          it('does not render other types of input', () => {
-            expect(findGlFormCheckbox().exists()).toBe(false);
-            expect(findGlFormSelect().exists()).toBe(false);
-            expect(findGlFormTextarea().exists()).toBe(false);
+        it(`renders GlFormInput, which ${isInheriting ? 'is' : 'is not'} readonly`, () => {
+          expect(findGlFormInput().exists()).toBe(true);
+          expect(findGlFormInput().attributes()).toMatchObject({
+            type: 'text',
+            id: 'service_project_url',
+            name: 'service[project_url]',
+            placeholder: defaultProps.placeholder,
+            required: 'required',
           });
+          expect(findGlFormInput().attributes('readonly')).toBe(readonly);
         });
-      },
-    );
+
+        it('does not render other types of input', () => {
+          expect(findGlFormCheckbox().exists()).toBe(false);
+          expect(findGlFormSelect().exists()).toBe(false);
+          expect(findGlFormTextarea().exists()).toBe(false);
+        });
+      });
+    });
 
     describe('help text', () => {
       it('renders description with help text', () => {
         createComponent();
 
-        expect(
-          findGlFormGroup()
-            .find('small')
-            .text(),
-        ).toBe(defaultProps.help);
+        expect(findGlFormGroup().find('small').text()).toBe(defaultProps.help);
       });
 
       it('renders description with help text as HTML', () => {
@@ -193,11 +182,7 @@ describe('DynamicField', () => {
           help: helpHTML,
         });
 
-        expect(
-          findGlFormGroup()
-            .find('small')
-            .html(),
-        ).toContain(helpHTML);
+        expect(findGlFormGroup().find('small').html()).toContain(helpHTML);
       });
     });
 
@@ -205,11 +190,7 @@ describe('DynamicField', () => {
       it('renders label with title', () => {
         createComponent();
 
-        expect(
-          findGlFormGroup()
-            .find('label')
-            .text(),
-        ).toBe(defaultProps.title);
+        expect(findGlFormGroup().find('label').text()).toBe(defaultProps.title);
       });
 
       describe('for password field with some value (hidden by backend)', () => {
@@ -219,11 +200,7 @@ describe('DynamicField', () => {
             value: 'true',
           });
 
-          expect(
-            findGlFormGroup()
-              .find('label')
-              .text(),
-          ).toBe(`Enter new ${defaultProps.title}`);
+          expect(findGlFormGroup().find('label').text()).toBe(`Enter new ${defaultProps.title}`);
         });
       });
     });
diff --git a/spec/frontend/integrations/edit/components/jira_trigger_fields_spec.js b/spec/frontend/integrations/edit/components/jira_trigger_fields_spec.js
index 782930eb6a2ea2aff845a97be55abf1887bf6aca..f3827d6f55aaf68c6000618b45889555de8f6164 100644
--- a/spec/frontend/integrations/edit/components/jira_trigger_fields_spec.js
+++ b/spec/frontend/integrations/edit/components/jira_trigger_fields_spec.js
@@ -57,9 +57,7 @@ describe('JiraTriggerFields', () => {
       // browsers don't include unchecked boxes in form submissions.
       it('includes comment settings as false even if unchecked', () => {
         expect(
-          findCommentSettings()
-            .find('input[name="service[comment_on_event_enabled]"]')
-            .exists(),
+          findCommentSettings().find('input[name="service[comment_on_event_enabled]"]').exists(),
         ).toBe(true);
       });
 
diff --git a/spec/frontend/issuable/related_issues/components/related_issues_block_spec.js b/spec/frontend/issuable/related_issues/components/related_issues_block_spec.js
index dd05f49b4582386751fb3a8bf52d84417983d92a..1864888ef49f54830b676eca0342ee016a0a4bc8 100644
--- a/spec/frontend/issuable/related_issues/components/related_issues_block_spec.js
+++ b/spec/frontend/issuable/related_issues/components/related_issues_block_spec.js
@@ -130,10 +130,7 @@ describe('RelatedIssuesBlock', () => {
   describe('showCategorizedIssues prop', () => {
     const issueList = () => wrapper.findAll('.js-related-issues-token-list-item');
     const categorizedHeadings = () => wrapper.findAll('h4');
-    const headingTextAt = index =>
-      categorizedHeadings()
-        .at(index)
-        .text();
+    const headingTextAt = index => categorizedHeadings().at(index).text();
     const mountComponent = showCategorizedIssues => {
       wrapper = mount(RelatedIssuesBlock, {
         propsData: {
diff --git a/spec/frontend/issuable/related_issues/components/related_issues_list_spec.js b/spec/frontend/issuable/related_issues/components/related_issues_list_spec.js
index 39bc244297be92076f1fe6f4eafa4e6797e6cf5c..ffd9683cd6be7ff70b99987ab332bfc991ebb3e1 100644
--- a/spec/frontend/issuable/related_issues/components/related_issues_list_spec.js
+++ b/spec/frontend/issuable/related_issues/components/related_issues_list_spec.js
@@ -182,12 +182,7 @@ describe('RelatedIssuesList', () => {
     });
 
     it('shows due date', () => {
-      expect(
-        wrapper
-          .find(IssueDueDate)
-          .find('.board-card-info-text')
-          .text(),
-      ).toBe('Nov 22, 2010');
+      expect(wrapper.find(IssueDueDate).find('.board-card-info-text').text()).toBe('Nov 22, 2010');
     });
   });
 });
diff --git a/spec/frontend/issuable/related_issues/components/related_issues_root_spec.js b/spec/frontend/issuable/related_issues/components/related_issues_root_spec.js
index 2c02e1e1de409f443edde1037ccf5227e3b3d74b..93fe321957ce18a52ca7fa6d67c47309f5208196 100644
--- a/spec/frontend/issuable/related_issues/components/related_issues_root_spec.js
+++ b/spec/frontend/issuable/related_issues/components/related_issues_root_spec.js
@@ -315,9 +315,7 @@ describe('RelatedIssuesRoot', () => {
         const input = 23;
 
         wrapper.vm.onInput({
-          untouchedRawReferences: String(input)
-            .trim()
-            .split(/\s/),
+          untouchedRawReferences: String(input).trim().split(/\s/),
           touchedReference: input,
         });
 
diff --git a/spec/frontend/issuable_list/components/issuable_item_spec.js b/spec/frontend/issuable_list/components/issuable_item_spec.js
index 3a9a0d3fd59fb09d5837f78f912c91bfe5203e50..3c01bf2d3199b4293adb2c6896ac6fa1dfe27236 100644
--- a/spec/frontend/issuable_list/components/issuable_item_spec.js
+++ b/spec/frontend/issuable_list/components/issuable_item_spec.js
@@ -252,12 +252,9 @@ describe('IssuableItem', () => {
 
       await wrapper.vm.$nextTick();
 
-      expect(
-        wrapper
-          .find('[data-testid="issuable-title"]')
-          .find(GlLink)
-          .attributes('target'),
-      ).toBe('_blank');
+      expect(wrapper.find('[data-testid="issuable-title"]').find(GlLink).attributes('target')).toBe(
+        '_blank',
+      );
     });
 
     it('renders issuable reference', () => {
diff --git a/spec/frontend/issuable_show/components/issuable_body_spec.js b/spec/frontend/issuable_show/components/issuable_body_spec.js
index 5708eaf4a311463593f8dc3259c6e5163e876e6e..65bace1ce3f0d4c8b0ad5bbbcaa6b5353a4d6005 100644
--- a/spec/frontend/issuable_show/components/issuable_body_spec.js
+++ b/spec/frontend/issuable_show/components/issuable_body_spec.js
@@ -98,10 +98,7 @@ describe('IssuableBody', () => {
 
     it('renders issuable edit info', () => {
       const editedEl = wrapper.find('small');
-      const sanitizedText = editedEl
-        .text()
-        .replace(/\n/g, ' ')
-        .replace(/\s+/g, ' ');
+      const sanitizedText = editedEl.text().replace(/\n/g, ' ').replace(/\s+/g, ' ');
 
       expect(sanitizedText).toContain('Edited');
       expect(sanitizedText).toContain('ago');
diff --git a/spec/frontend/issuable_suggestions/components/app_spec.js b/spec/frontend/issuable_suggestions/components/app_spec.js
index 0cb5b9c90baa17f0f3ce27055abe50a27b34a0b5..fb8ef00567cb2ec4a58f09cb962fc16fcfbde9cb 100644
--- a/spec/frontend/issuable_suggestions/components/app_spec.js
+++ b/spec/frontend/issuable_suggestions/components/app_spec.js
@@ -85,12 +85,7 @@ describe('Issuable suggestions app component', () => {
       wrapper.setData(data);
 
       return wrapper.vm.$nextTick(() => {
-        expect(
-          wrapper
-            .findAll('li')
-            .at(0)
-            .classes(),
-        ).toContain('gl-mb-3');
+        expect(wrapper.findAll('li').at(0).classes()).toContain('gl-mb-3');
       });
     });
 
@@ -98,12 +93,7 @@ describe('Issuable suggestions app component', () => {
       wrapper.setData(data);
 
       return wrapper.vm.$nextTick(() => {
-        expect(
-          wrapper
-            .findAll('li')
-            .at(1)
-            .classes(),
-        ).not.toContain('gl-mb-3');
+        expect(wrapper.findAll('li').at(1).classes()).not.toContain('gl-mb-3');
       });
     });
   });
diff --git a/spec/frontend/issue_show/components/header_actions_spec.js b/spec/frontend/issue_show/components/header_actions_spec.js
index b9836ae7240ea3ac03be163dcaea7812801cef53..8af99cd5a31c19685cab20799f72af31b513d94e 100644
--- a/spec/frontend/issue_show/components/header_actions_spec.js
+++ b/spec/frontend/issue_show/components/header_actions_spec.js
@@ -70,10 +70,7 @@ describe('HeaderActions component', () => {
 
   const findModal = () => wrapper.find(GlModal);
 
-  const findModalLinkAt = index =>
-    findModal()
-      .findAll(GlLink)
-      .at(index);
+  const findModalLinkAt = index => findModal().findAll(GlLink).at(index);
 
   const mountComponent = ({
     props = {},
diff --git a/spec/frontend/issue_show/components/pinned_links_spec.js b/spec/frontend/issue_show/components/pinned_links_spec.js
index bb67feee60177c6d1b3a6bf74f12fac1ee22a8b8..74a0b39a852593cfbdc703209056c6caab193b46 100644
--- a/spec/frontend/issue_show/components/pinned_links_spec.js
+++ b/spec/frontend/issue_show/components/pinned_links_spec.js
@@ -26,11 +26,7 @@ describe('PinnedLinks', () => {
       zoomMeetingUrl: `<a href="${plainZoomUrl}">Zoom</a>`,
     });
 
-    expect(
-      findButtons()
-        .at(0)
-        .text(),
-    ).toBe(JOIN_ZOOM_MEETING);
+    expect(findButtons().at(0).text()).toBe(JOIN_ZOOM_MEETING);
   });
 
   it('displays Status link', () => {
@@ -38,11 +34,7 @@ describe('PinnedLinks', () => {
       publishedIncidentUrl: `<a href="${plainStatusUrl}">Status</a>`,
     });
 
-    expect(
-      findButtons()
-        .at(0)
-        .text(),
-    ).toBe(STATUS_PAGE_PUBLISHED);
+    expect(findButtons().at(0).text()).toBe(STATUS_PAGE_PUBLISHED);
   });
 
   it('does not render if there are no links', () => {
diff --git a/spec/frontend/issues_list/components/issuables_list_app_spec.js b/spec/frontend/issues_list/components/issuables_list_app_spec.js
index 1f80b4fc54a1b6fd1efdd6157f528bd561c46ae2..c14d78322e83c6e6920fc2ee4b1fa93655f28b66 100644
--- a/spec/frontend/issues_list/components/issuables_list_app_spec.js
+++ b/spec/frontend/issues_list/components/issuables_list_app_spec.js
@@ -238,15 +238,15 @@ describe('Issuables list component', () => {
       wrapper.vm.onSelectIssuable({ issuable: i0, selected: false });
       expect(wrapper.vm.selection).toEqual({});
       wrapper.vm.onSelectIssuable({ issuable: i1, selected: true });
-      expect(wrapper.vm.selection).toEqual({ '1': true });
+      expect(wrapper.vm.selection).toEqual({ 1: true });
       wrapper.vm.onSelectIssuable({ issuable: i0, selected: true });
-      expect(wrapper.vm.selection).toEqual({ '1': true, '0': true });
+      expect(wrapper.vm.selection).toEqual({ 1: true, 0: true });
       wrapper.vm.onSelectIssuable({ issuable: i2, selected: true });
-      expect(wrapper.vm.selection).toEqual({ '1': true, '0': true, '2': true });
+      expect(wrapper.vm.selection).toEqual({ 1: true, 0: true, 2: true });
       wrapper.vm.onSelectIssuable({ issuable: i2, selected: true });
-      expect(wrapper.vm.selection).toEqual({ '1': true, '0': true, '2': true });
+      expect(wrapper.vm.selection).toEqual({ 1: true, 0: true, 2: true });
       wrapper.vm.onSelectIssuable({ issuable: i0, selected: false });
-      expect(wrapper.vm.selection).toEqual({ '1': true, '2': true });
+      expect(wrapper.vm.selection).toEqual({ 1: true, 2: true });
     });
 
     it('broadcasts a message to the bulk edit sidebar when a value is added to selection', () => {
diff --git a/spec/frontend/jobs/components/empty_state_spec.js b/spec/frontend/jobs/components/empty_state_spec.js
index 29d0c4e07aafdc8f10e35968b3624f80d02849cb..f9a6afe0770d905cde0ebcb04af9c4772e03b980 100644
--- a/spec/frontend/jobs/components/empty_state_spec.js
+++ b/spec/frontend/jobs/components/empty_state_spec.js
@@ -46,11 +46,7 @@ describe('Empty State', () => {
     });
 
     it('renders provided title', () => {
-      expect(
-        findTitle()
-          .text()
-          .trim(),
-      ).toBe(defaultProps.title);
+      expect(findTitle().text().trim()).toBe(defaultProps.title);
     });
   });
 
@@ -60,11 +56,7 @@ describe('Empty State', () => {
     });
 
     it('renders content', () => {
-      expect(
-        findContent()
-          .text()
-          .trim(),
-      ).toBe(content);
+      expect(findContent().text().trim()).toBe(content);
     });
   });
 
diff --git a/spec/frontend/jobs/components/job_app_spec.js b/spec/frontend/jobs/components/job_app_spec.js
index 94653d4d4c71e9218341c1a08a380de295b42bb6..d5fa158806fc28c3b9ccdf9aa928bed57c57ffcf 100644
--- a/spec/frontend/jobs/components/job_app_spec.js
+++ b/spec/frontend/jobs/components/job_app_spec.js
@@ -133,13 +133,9 @@ describe('Job App', () => {
         });
 
         it('should render provided job information', () => {
-          expect(
-            wrapper
-              .find('.header-main-content')
-              .text()
-              .replace(/\s+/g, ' ')
-              .trim(),
-          ).toContain('passed Job #4757 triggered 1 year ago by Root');
+          expect(wrapper.find('.header-main-content').text().replace(/\s+/g, ' ').trim()).toContain(
+            'passed Job #4757 triggered 1 year ago by Root',
+          );
         });
 
         it('should render new issue link', () => {
@@ -151,11 +147,7 @@ describe('Job App', () => {
         it('should render created key', () =>
           setupAndMount().then(() => {
             expect(
-              wrapper
-                .find('.header-main-content')
-                .text()
-                .replace(/\s+/g, ' ')
-                .trim(),
+              wrapper.find('.header-main-content').text().replace(/\s+/g, ' ').trim(),
             ).toContain('passed Job #4757 created 3 weeks ago by Root');
           }));
       });
diff --git a/spec/frontend/jobs/components/log/line_spec.js b/spec/frontend/jobs/components/log/line_spec.js
index 914ae2424c8fe698ac3e53e533825517ea46ff4e..a127ee98c2a34169180920255e63fcd7bb10c5bf 100644
--- a/spec/frontend/jobs/components/log/line_spec.js
+++ b/spec/frontend/jobs/components/log/line_spec.js
@@ -34,10 +34,7 @@ describe('Job Log Line', () => {
   const findLine = () => wrapper.find('span');
   const findLink = () => findLine().find('a');
   const findLinks = () => findLine().findAll('a');
-  const findLinkAttributeByIndex = i =>
-    findLinks()
-      .at(i)
-      .attributes();
+  const findLinkAttributeByIndex = i => findLinks().at(i).attributes();
 
   beforeEach(() => {
     data = mockProps();
diff --git a/spec/frontend/jobs/components/log/log_spec.js b/spec/frontend/jobs/components/log/log_spec.js
index 015d5e01a466ff5dcf9d960bf42882e8df092042..f662ffa1780a135a06c23add0665f63f4bcd7f62 100644
--- a/spec/frontend/jobs/components/log/log_spec.js
+++ b/spec/frontend/jobs/components/log/log_spec.js
@@ -62,11 +62,7 @@ describe('Job Log', () => {
     });
 
     it('renders an icon with the open state', () => {
-      expect(
-        findCollapsibleLine()
-          .find('[data-testid="angle-down-icon"]')
-          .exists(),
-      ).toBe(true);
+      expect(findCollapsibleLine().find('[data-testid="angle-down-icon"]').exists()).toBe(true);
     });
 
     describe('on click header section', () => {
diff --git a/spec/frontend/lib/utils/chart_utils_spec.js b/spec/frontend/lib/utils/chart_utils_spec.js
index e811b8405fb680d6d6219c97189a45928df71557..65bb68c501731608edc6c02fec0c84f13f5d645a 100644
--- a/spec/frontend/lib/utils/chart_utils_spec.js
+++ b/spec/frontend/lib/utils/chart_utils_spec.js
@@ -3,7 +3,11 @@ import { firstAndLastY } from '~/lib/utils/chart_utils';
 describe('Chart utils', () => {
   describe('firstAndLastY', () => {
     it('returns the first and last y-values of a given data set as an array', () => {
-      const data = [['', 1], ['', 2], ['', 3]];
+      const data = [
+        ['', 1],
+        ['', 2],
+        ['', 3],
+      ];
 
       expect(firstAndLastY(data)).toEqual([1, 3]);
     });
diff --git a/spec/frontend/logs/components/environment_logs_spec.js b/spec/frontend/logs/components/environment_logs_spec.js
index e32deaea9934d084d3d2ffc87028e515314d66b9..74e924a8f6e32873c0402bf0865aece4d1501555 100644
--- a/spec/frontend/logs/components/environment_logs_spec.js
+++ b/spec/frontend/logs/components/environment_logs_spec.js
@@ -181,11 +181,7 @@ describe('EnvironmentLogs', () => {
 
     it('shows a logs trace', () => {
       expect(findLogTrace().text()).toBe('');
-      expect(
-        findLogTrace()
-          .find('.js-build-loader-animation')
-          .isVisible(),
-      ).toBe(true);
+      expect(findLogTrace().find('.js-build-loader-animation').isVisible()).toBe(true);
     });
   });
 
diff --git a/spec/frontend/members/components/action_buttons/resend_invite_button_spec.js b/spec/frontend/members/components/action_buttons/resend_invite_button_spec.js
index a48942dd2778a1fb385db8331f9bd28cec496239..05ea0dc28868a588f6f51b8cc7fc1e30adef67d1 100644
--- a/spec/frontend/members/components/action_buttons/resend_invite_button_spec.js
+++ b/spec/frontend/members/components/action_buttons/resend_invite_button_spec.js
@@ -57,10 +57,8 @@ describe('ResendInviteButton', () => {
 
   it('displays form with correct action and inputs', () => {
     expect(findForm().attributes('action')).toBe('/groups/foo-bar/-/group_members/1/resend_invite');
-    expect(
-      findForm()
-        .find('input[name="authenticity_token"]')
-        .attributes('value'),
-    ).toBe('mock-csrf-token');
+    expect(findForm().find('input[name="authenticity_token"]').attributes('value')).toBe(
+      'mock-csrf-token',
+    );
   });
 });
diff --git a/spec/frontend/members/components/filter_sort/members_filtered_search_bar_spec.js b/spec/frontend/members/components/filter_sort/members_filtered_search_bar_spec.js
index ca885000c2f9bc434e3d142d636fe95f7ef23a31..37f5333343a6c4874be4620387f675d9172af86d 100644
--- a/spec/frontend/members/components/filter_sort/members_filtered_search_bar_spec.js
+++ b/spec/frontend/members/components/filter_sort/members_filtered_search_bar_spec.js
@@ -86,7 +86,10 @@ describe('MembersFilteredSearchBar', () => {
             token: GlFilteredSearchToken,
             unique: true,
             operators: [{ value: '=', description: 'is' }],
-            options: [{ value: 'exclude', title: 'Direct' }, { value: 'only', title: 'Inherited' }],
+            options: [
+              { value: 'exclude', title: 'Direct' },
+              { value: 'only', title: 'Inherited' },
+            ],
           },
         ]);
       });
diff --git a/spec/frontend/members/components/table/expiration_datepicker_spec.js b/spec/frontend/members/components/table/expiration_datepicker_spec.js
index ba1b2256e7642fe9b487d4a56a2ea9e3f0959101..7319989e1d924b3f53acb12c431f2c6142e35821 100644
--- a/spec/frontend/members/components/table/expiration_datepicker_spec.js
+++ b/spec/frontend/members/components/table/expiration_datepicker_spec.js
@@ -72,11 +72,9 @@ describe('ExpirationDatepicker', () => {
     });
 
     it('sets `minDate` prop as tomorrow', () => {
-      expect(
-        findDatepicker()
-          .props('minDate')
-          .toISOString(),
-      ).toBe(new Date('2020-3-16').toISOString());
+      expect(findDatepicker().props('minDate').toISOString()).toBe(
+        new Date('2020-3-16').toISOString(),
+      );
     });
 
     it('sets `target` prop as `null` so datepicker opens on focus', () => {
diff --git a/spec/frontend/members/components/table/members_table_spec.js b/spec/frontend/members/components/table/members_table_spec.js
index 9945cc7ee57f95dcd3920afffa41a1b6955b3289..728853b585b590806ae3fb25862146f9018ee376 100644
--- a/spec/frontend/members/components/table/members_table_spec.js
+++ b/spec/frontend/members/components/table/members_table_spec.js
@@ -100,10 +100,7 @@ describe('MembersTable', () => {
 
       if (expectedComponent) {
         expect(
-          wrapper
-            .find(`[data-label="${label}"][role="cell"]`)
-            .find(expectedComponent)
-            .exists(),
+          wrapper.find(`[data-label="${label}"][role="cell"]`).find(expectedComponent).exists(),
         ).toBe(true);
       }
     });
@@ -117,10 +114,7 @@ describe('MembersTable', () => {
         expect(actionField.exists()).toBe(true);
         expect(actionField.classes('gl-sr-only')).toBe(true);
         expect(
-          wrapper
-            .find(`[data-label="Actions"][role="cell"]`)
-            .find(MemberActionButtons)
-            .exists(),
+          wrapper.find(`[data-label="Actions"][role="cell"]`).find(MemberActionButtons).exists(),
         ).toBe(true);
       });
 
@@ -177,12 +171,9 @@ describe('MembersTable', () => {
     it('renders badge in "Max role" field', () => {
       createComponent({ members: [memberMock], tableFields: ['maxRole'] });
 
-      expect(
-        wrapper
-          .find(`[data-label="Max role"][role="cell"]`)
-          .find(GlBadge)
-          .text(),
-      ).toBe(memberMock.accessLevel.stringValue);
+      expect(wrapper.find(`[data-label="Max role"][role="cell"]`).find(GlBadge).text()).toBe(
+        memberMock.accessLevel.stringValue,
+      );
     });
   });
 
@@ -203,10 +194,6 @@ describe('MembersTable', () => {
   it('adds QA selector to table row', () => {
     createComponent();
 
-    expect(
-      findTable()
-        .find('tbody tr')
-        .attributes('data-qa-selector'),
-    ).toBe('member_row');
+    expect(findTable().find('tbody tr').attributes('data-qa-selector')).toBe('member_row');
   });
 });
diff --git a/spec/frontend/milestones/milestone_combobox_spec.js b/spec/frontend/milestones/milestone_combobox_spec.js
index 047484f117f9845ff98a65712cd05f457869e353..c7a123f7d99b7112adcf1dbd77178575f70de26e 100644
--- a/spec/frontend/milestones/milestone_combobox_spec.js
+++ b/spec/frontend/milestones/milestone_combobox_spec.js
@@ -336,9 +336,7 @@ describe('Milestone combobox component', () => {
           await localVue.nextTick();
 
           expect(
-            findFirstProjectMilestonesDropdownItem()
-              .find('span')
-              .classes('selected-item'),
+            findFirstProjectMilestonesDropdownItem().find('span').classes('selected-item'),
           ).toBe(false);
 
           selectFirstProjectMilestone();
@@ -346,9 +344,7 @@ describe('Milestone combobox component', () => {
           await localVue.nextTick();
 
           expect(
-            findFirstProjectMilestonesDropdownItem()
-              .find('span')
-              .classes('selected-item'),
+            findFirstProjectMilestonesDropdownItem().find('span').classes('selected-item'),
           ).toBe(true);
         });
 
@@ -465,21 +461,17 @@ describe('Milestone combobox component', () => {
 
           await localVue.nextTick();
 
-          expect(
-            findFirstGroupMilestonesDropdownItem()
-              .find('span')
-              .classes('selected-item'),
-          ).toBe(false);
+          expect(findFirstGroupMilestonesDropdownItem().find('span').classes('selected-item')).toBe(
+            false,
+          );
 
           selectFirstGroupMilestone();
 
           await localVue.nextTick();
 
-          expect(
-            findFirstGroupMilestonesDropdownItem()
-              .find('span')
-              .classes('selected-item'),
-          ).toBe(true);
+          expect(findFirstGroupMilestonesDropdownItem().find('span').classes('selected-item')).toBe(
+            true,
+          );
         });
 
         describe('when a group milestones is selected', () => {
diff --git a/spec/frontend/monitoring/alert_widget_spec.js b/spec/frontend/monitoring/alert_widget_spec.js
index d004b1da0b64dafbe1b103d8a9585ee3771258d2..e66c389a4abbdc90762a719267c58a4bda7179d1 100644
--- a/spec/frontend/monitoring/alert_widget_spec.js
+++ b/spec/frontend/monitoring/alert_widget_spec.js
@@ -28,12 +28,20 @@ describe('AlertWidget', () => {
 
   const nonFiringAlertResult = [
     {
-      values: [[0, 1], [1, 42], [2, 41]],
+      values: [
+        [0, 1],
+        [1, 42],
+        [2, 41],
+      ],
     },
   ];
   const firingAlertResult = [
     {
-      values: [[0, 42], [1, 43], [2, 44]],
+      values: [
+        [0, 42],
+        [1, 43],
+        [2, 44],
+      ],
     },
   ];
   const metricId = '5';
@@ -88,10 +96,7 @@ describe('AlertWidget', () => {
   const findWidgetForm = () => wrapper.find({ ref: 'widgetForm' });
   const findAlertErrorMessage = () => wrapper.find({ ref: 'alertErrorMessage' });
   const findCurrentSettingsText = () =>
-    wrapper
-      .find({ ref: 'alertCurrentSetting' })
-      .text()
-      .replace(/\s\s+/g, ' ');
+    wrapper.find({ ref: 'alertCurrentSetting' }).text().replace(/\s\s+/g, ' ');
   const findBadge = () => wrapper.find(GlBadge);
   const findTooltip = () => wrapper.find(GlTooltip);
 
@@ -300,11 +305,7 @@ describe('AlertWidget', () => {
       createComponent(propsWithManyAlerts);
 
       return waitForPromises().then(() => {
-        expect(
-          findTooltip()
-            .text()
-            .replace(/\s\s+/g, ' '),
-        ).toEqual('Firing: alert-label > 42');
+        expect(findTooltip().text().replace(/\s\s+/g, ' ')).toEqual('Firing: alert-label > 42');
       });
     });
   });
diff --git a/spec/frontend/monitoring/components/dashboard_panel_spec.js b/spec/frontend/monitoring/components/dashboard_panel_spec.js
index 1808faf8f0ef599825d63e3203cc5daab908b2e8..0936e390770ad7eec68ef994aed62aa7b45a1874 100644
--- a/spec/frontend/monitoring/components/dashboard_panel_spec.js
+++ b/spec/frontend/monitoring/components/dashboard_panel_spec.js
@@ -777,11 +777,7 @@ describe('Dashboard Panel', () => {
         await wrapper.vm.$nextTick();
 
         expect(findRunbookLinks().length).toBe(1);
-        expect(
-          findRunbookLinks()
-            .at(0)
-            .attributes('href'),
-        ).toBe(invalidUrl);
+        expect(findRunbookLinks().at(0).attributes('href')).toBe(invalidUrl);
       });
     });
   });
diff --git a/spec/frontend/monitoring/components/dashboard_spec.js b/spec/frontend/monitoring/components/dashboard_spec.js
index 27e479ba4985fb7094b90177def7de2a8ffd8f54..0552d1621bf1dc52e8dfbe069cfefb9893152481 100644
--- a/spec/frontend/monitoring/components/dashboard_spec.js
+++ b/spec/frontend/monitoring/components/dashboard_spec.js
@@ -587,12 +587,9 @@ describe('Dashboard', () => {
     });
 
     it('group empty area displays a NO_DATA state', () => {
-      expect(
-        wrapper
-          .findAll({ ref: 'empty-group' })
-          .at(0)
-          .props('selectedState'),
-      ).toEqual(metricStates.NO_DATA);
+      expect(wrapper.findAll({ ref: 'empty-group' }).at(0).props('selectedState')).toEqual(
+        metricStates.NO_DATA,
+      );
     });
   });
 
@@ -634,9 +631,7 @@ describe('Dashboard', () => {
 
       describe('when rearrange button is clicked', () => {
         const findFirstDraggableRemoveButton = () =>
-          findDraggablePanels()
-            .at(0)
-            .find('.js-draggable-remove');
+          findDraggablePanels().at(0).find('.js-draggable-remove');
 
         beforeEach(() => {
           findRearrangeButton().vm.$emit('click');
@@ -668,11 +663,7 @@ describe('Dashboard', () => {
         });
 
         it('shows a remove button, which removes a panel', () => {
-          expect(
-            findFirstDraggableRemoveButton()
-              .find('a')
-              .exists(),
-          ).toBe(true);
+          expect(findFirstDraggableRemoveButton().find('a').exists()).toBe(true);
 
           expect(findDraggablePanels().length).toEqual(metricsDashboardPanelCount);
           findFirstDraggableRemoveButton().trigger('click');
@@ -772,10 +763,7 @@ describe('Dashboard', () => {
     const panelIndex = 1; // skip expanded panel
 
     const getClipboardTextFirstPanel = () =>
-      wrapper
-        .findAll(DashboardPanel)
-        .at(panelIndex)
-        .props('clipboardText');
+      wrapper.findAll(DashboardPanel).at(panelIndex).props('clipboardText');
 
     beforeEach(() => {
       setupStoreWithData(store);
diff --git a/spec/frontend/monitoring/components/duplicate_dashboard_modal_spec.js b/spec/frontend/monitoring/components/duplicate_dashboard_modal_spec.js
index d8ffb4443ac3390860d5a6a9dbb4249c80ea0cbc..442269d93fa1c18f34c7f0aeabaff6d93d5509cc 100644
--- a/spec/frontend/monitoring/components/duplicate_dashboard_modal_spec.js
+++ b/spec/frontend/monitoring/components/duplicate_dashboard_modal_spec.js
@@ -101,9 +101,7 @@ describe('duplicate dashboard modal', () => {
       commitMessage: 'A commit message',
     };
 
-    findModal()
-      .find(DuplicateDashboardForm)
-      .vm.$emit('change', formVals);
+    findModal().find(DuplicateDashboardForm).vm.$emit('change', formVals);
 
     // Binding's second argument contains the modal id
     expect(wrapper.vm.form).toEqual(formVals);
diff --git a/spec/frontend/monitoring/components/variables/dropdown_field_spec.js b/spec/frontend/monitoring/components/variables/dropdown_field_spec.js
index cc384aef2319b59c3e1d4ad9341338b3175363a2..690df5045ae8df4c8df995f1282586771bcca77e 100644
--- a/spec/frontend/monitoring/components/variables/dropdown_field_spec.js
+++ b/spec/frontend/monitoring/components/variables/dropdown_field_spec.js
@@ -10,7 +10,10 @@ describe('Custom variable component', () => {
     label: 'Select environment',
     value: 'Production',
     options: {
-      values: [{ text: 'Production', value: 'prod' }, { text: 'Canary', value: 'canary' }],
+      values: [
+        { text: 'Production', value: 'prod' },
+        { text: 'Canary', value: 'canary' },
+      ],
     },
   };
 
@@ -54,9 +57,7 @@ describe('Custom variable component', () => {
     createShallowWrapper();
     jest.spyOn(wrapper.vm, '$emit');
 
-    findDropdownItems()
-      .at(1)
-      .vm.$emit('click');
+    findDropdownItems().at(1).vm.$emit('click');
 
     return wrapper.vm.$nextTick(() => {
       expect(wrapper.vm.$emit).toHaveBeenCalledWith('input', 'canary');
diff --git a/spec/frontend/monitoring/router_spec.js b/spec/frontend/monitoring/router_spec.js
index 8b97c8ed1258d299c5a4ef75d4af00471e959396..c30c4c56a6c4cfee482055d00638ee6b7a083797 100644
--- a/spec/frontend/monitoring/router_spec.js
+++ b/spec/frontend/monitoring/router_spec.js
@@ -63,12 +63,7 @@ describe('Monitoring router', () => {
       });
 
       expect(wrapper.find(DashboardPage).exists()).toBe(true);
-      expect(
-        wrapper
-          .find(DashboardPage)
-          .find(Dashboard)
-          .exists(),
-      ).toBe(true);
+      expect(wrapper.find(DashboardPage).find(Dashboard).exists()).toBe(true);
     });
   });
 
@@ -91,12 +86,7 @@ describe('Monitoring router', () => {
       });
 
       expect(wrapper.find(DashboardPage).exists()).toBe(true);
-      expect(
-        wrapper
-          .find(DashboardPage)
-          .find(Dashboard)
-          .exists(),
-      ).toBe(true);
+      expect(wrapper.find(DashboardPage).find(Dashboard).exists()).toBe(true);
     });
   });
 
diff --git a/spec/frontend/monitoring/store/mutations_spec.js b/spec/frontend/monitoring/store/mutations_spec.js
index 8d1351fc9099510fd0daf254fda987fa0da66115..984e52e7bef61af852bafce0268993c8db6301c2 100644
--- a/spec/frontend/monitoring/store/mutations_spec.js
+++ b/spec/frontend/monitoring/store/mutations_spec.js
@@ -465,7 +465,10 @@ describe('Monitoring mutations', () => {
       });
 
       expect(variable.options).toEqual({
-        values: [{ text: 'prometheus', value: 'prometheus' }, { text: 'node', value: 'node' }],
+        values: [
+          { text: 'prometheus', value: 'prometheus' },
+          { text: 'node', value: 'node' },
+        ],
       });
     });
   });
diff --git a/spec/frontend/monitoring/store/utils_spec.js b/spec/frontend/monitoring/store/utils_spec.js
index b97948fa1bf6576e77e9f80c2921f0eecd163910..80b15e768794a6f026ef217c306e5f7d412635a7 100644
--- a/spec/frontend/monitoring/store/utils_spec.js
+++ b/spec/frontend/monitoring/store/utils_spec.js
@@ -775,7 +775,11 @@ describe('normalizeQueryResponseData', () => {
             job: 'prometheus',
             instance: 'localhost:9090',
           },
-          values: [[1435781430.781, '1'], [1435781445.781, '2'], [1435781460.781, '3']],
+          values: [
+            [1435781430.781, '1'],
+            [1435781445.781, '2'],
+            [1435781460.781, '3'],
+          ],
         },
         {
           metric: {
@@ -783,7 +787,11 @@ describe('normalizeQueryResponseData', () => {
             job: 'node',
             instance: 'localhost:9091',
           },
-          values: [[1435781430.781, '4'], [1435781445.781, '5'], [1435781460.781, '6']],
+          values: [
+            [1435781430.781, '4'],
+            [1435781445.781, '5'],
+            [1435781460.781, '6'],
+          ],
         },
       ],
     };
@@ -840,7 +848,10 @@ describe('normalizeQueryResponseData', () => {
             job: 'prometheus',
             instance: 'localhost:9090',
           },
-          values: [[1435781430.781, '1'], [1435781460.781, 'NaN']],
+          values: [
+            [1435781430.781, '1'],
+            [1435781460.781, 'NaN'],
+          ],
         },
       ],
     };
@@ -849,7 +860,10 @@ describe('normalizeQueryResponseData', () => {
       {
         metric: { __name__: 'up', instance: 'localhost:9090', job: 'prometheus' },
         value: ['2015-07-01T20:11:00.781Z', NaN],
-        values: [['2015-07-01T20:10:30.781Z', 1], ['2015-07-01T20:11:00.781Z', NaN]],
+        values: [
+          ['2015-07-01T20:10:30.781Z', 1],
+          ['2015-07-01T20:11:00.781Z', NaN],
+        ],
       },
     ]);
   });