Use explicit jQuery import, remove unused eslint globals (#18435)

- Don't rely on globals (window.$) for jQuery import
- Remove eslint globals no longer in use
This commit is contained in:
silverwind 2022-01-28 13:00:11 -08:00 committed by GitHub
parent 7b04c97b7b
commit 19b017f398
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
51 changed files with 76 additions and 18 deletions

View File

@ -23,9 +23,6 @@ env:
globals:
__webpack_public_path__: true
CodeMirror: false
Dropzone: false
SimpleMDE: false
settings:
html/html-extensions: [".tmpl"]
@ -34,7 +31,6 @@ overrides:
- files: ["web_src/**/*.js", "web_src/**/*.vue", "templates/**/*.tmpl"]
env:
browser: true
jquery: true
node: false
- files: ["templates/**/*.tmpl"]
rules:

View File

@ -24,6 +24,7 @@
</template>
<script>
import $ from 'jquery';
import {SvgIcon} from '../svg.js';
const {appSubUrl, i18n} = window.config;

View File

@ -1,4 +1,5 @@
import Vue from 'vue';
import $ from 'jquery';
import {initVueSvg, vueDelimiters} from './VueComponentLoader.js';
const {appSubUrl, assetUrlPrefix, pageData} = window.config;

View File

@ -1,4 +1,5 @@
import Vue from 'vue';
import $ from 'jquery';
import {vueDelimiters} from './VueComponentLoader.js';
export function initRepoBranchTagDropdown(selector) {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {csrfToken} = window.config;
export function initAdminCommon() {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initAdminEmails() {
function linkEmailAction(e) {
const $this = $(this);

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initAdminUserListSearchForm() {
const searchForm = window.config.pageData.adminUserListSearchForm;
if (!searchForm) return;

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {copy_success, copy_error} = window.config.i18n;
function onSuccess(btn) {

View File

@ -1,9 +1,9 @@
import $ from 'jquery';
import 'jquery.are-you-sure';
import {mqBinarySearch} from '../utils.js';
import createDropzone from './dropzone.js';
import {initCompColorPicker} from './comp/ColorPicker.js';
import 'jquery.are-you-sure';
const {csrfToken} = window.config;
export function initGlobalFormDirtyLeaveConfirm() {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {updateIssuesMeta} from './repo-issue.js';
export function initCommonIssue() {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {initCompLabelEdit} from './comp/LabelEdit.js';
export function initCommonOrganization() {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import createColorPicker from '../colorpicker.js';
export function initCompColorPicker() {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import attachTribute from '../tribute.js';
const {appSubUrl} = window.config;
@ -54,7 +55,7 @@ export async function importEasyMDE() {
* @returns {null|EasyMDE}
*/
export async function createCommentEasyMDE(textarea, easyMDEOptions = {}) {
if (textarea instanceof jQuery) {
if (textarea instanceof $) {
textarea = textarea[0];
}
if (!textarea) {
@ -151,7 +152,7 @@ export function attachEasyMDEToElements(easyMDE) {
* @returns {null|EasyMDE}
*/
export function getAttachedEasyMDE(el) {
if (el instanceof jQuery) {
if (el instanceof $) {
el = el[0];
}
if (!el) {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
const {csrfToken} = window.config;
async function uploadFile(file, uploadUrl) {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {initCompColorPicker} from './ColorPicker.js';
export function initCompLabelEdit(selector) {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {initMarkupContent} from '../../markup/content.js';
const {csrfToken} = window.config;

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
const {csrfToken} = window.config;
export function initCompReactionSelector(parent) {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {htmlEscape} from 'escape-goat';
const {appSubUrl} = window.config;

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
const {csrfToken} = window.config;
export function initCompWebHookEditor() {

View File

@ -1,5 +1,5 @@
import $ from 'jquery';
import Vue from 'vue';
import ContextPopup from '../components/ContextPopup.vue';
import {parseIssueHref} from '../utils.js';

View File

@ -1,5 +1,4 @@
import Vue from 'vue';
import ActivityHeatmap from '../components/ActivityHeatmap.vue';
export default function initHeatmap() {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
function getDefaultSvgBoundsIfUndefined(svgXml, src) {
const DefaultSize = 300;
const MaxSize = 99999;

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initInstall() {
if ($('.page-content.install').length === 0) {
return;

View File

@ -1,5 +1,6 @@
const {appSubUrl, csrfToken, notificationSettings} = window.config;
import $ from 'jquery';
const {appSubUrl, csrfToken, notificationSettings} = window.config;
let notificationSequenceNumber = 0;
export function initNotificationsTable() {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {appSubUrl} = window.config;
export function initOrgTeamSettings() {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initRepoBranchButton() {
$('.show-create-branch-modal.button').on('click', function () {
$('#create-branch-form')[0].action = $('#create-branch-form').data('base-action') + $(this).data('branch-from-urlcomponent');

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {svg} from '../svg.js';
function changeHash(hash) {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {csrfToken} = window.config;
export function initRepoEllipsisButton() {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {csrfToken} = window.config;
function getArchive($target, url, first) {

View File

@ -1,6 +1,8 @@
import $ from 'jquery';
import {initCompReactionSelector} from './comp/ReactionSelector.js';
import {initRepoIssueContentHistory} from './repo-issue-content.js';
import {validateTextareaNonEmpty} from './comp/EasyMDE.js';
const {csrfToken} = window.config;
export function initRepoDiffReviewButton() {

View File

@ -1,9 +1,9 @@
import $ from 'jquery';
import {htmlEscape} from 'escape-goat';
import {initMarkupContent} from '../markup/content.js';
import {createCodeEditor} from './codeeditor.js';
const {csrfToken} = window.config;
let previewFileModes;
function initEditPreviewTab($form) {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export default function initRepoGraphGit() {
const graphContainer = document.getElementById('git-graph-container');
if (!graphContainer) return;

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {stripTags} from '../utils.js';
const {appSubUrl, csrfToken} = window.config;

View File

@ -1,7 +1,7 @@
import $ from 'jquery';
import {svg} from '../svg.js';
const {appSubUrl, csrfToken} = window.config;
let i18nTextEdited;
let i18nTextOptions;
let i18nTextDeleteFromHistory;

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {htmlEscape} from 'escape-goat';
import attachTribute from './tribute.js';
import {createCommentEasyMDE, getAttachedEasyMDE} from './comp/EasyMDE.js';

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {createCommentEasyMDE, getAttachedEasyMDE} from './comp/EasyMDE.js';
import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js';
import {initCompImagePaste, initEasyMDEImagePaste} from './comp/ImagePaste.js';

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {appSubUrl, csrfToken} = window.config;
export function initRepoMigrationStatusChecker() {

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const $service = $('#service_type');
const $user = $('#auth_username');
const $pass = $('#auth_password');

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
const {csrfToken} = window.config;
function moveIssue({item, from, to, oldIndex}) {

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import attachTribute from './tribute.js';
import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js';
import {initEasyMDEImagePaste} from './comp/ImagePaste.js';

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {createMonaco} from './codeeditor.js';
import {initRepoCommonFilterSearchDropdown} from './repo-common.js';

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {htmlEscape} from 'escape-goat';
const {appSubUrl} = window.config;

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initUnicodeEscapeButton() {
$(document).on('click', 'a.escape-button', (e) => {
e.preventDefault();

View File

@ -1,3 +1,4 @@
import $ from 'jquery';
import {initMarkupContent} from '../markup/content.js';
import {attachEasyMDEToElements, importEasyMDE, validateTextareaNonEmpty} from './comp/EasyMDE.js';
import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js';

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initSshKeyFormParser() {
// Parse SSH Key
$('#ssh-key-content').on('change paste keyup', function () {

View File

@ -1,6 +1,7 @@
import $ from 'jquery';
import prettyMilliseconds from 'pretty-ms';
const {appSubUrl, csrfToken, notificationSettings, enableTimeTracking} = window.config;
const {appSubUrl, csrfToken, notificationSettings, enableTimeTracking} = window.config;
let updateTimeInterval = null; // holds setInterval id when active
export function initStopwatch() {

View File

@ -1,8 +1,8 @@
import $ from 'jquery';
import {encode, decode} from 'uint8-to-base64';
const {appSubUrl, csrfToken} = window.config;
export function initUserAuthWebAuthn() {
if ($('.user.signin.webauthn-prompt').length === 0) {
return;

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initUserAuthOauth2() {
const $oauth2LoginNav = $('#oauth2-login-navigator');
if ($oauth2LoginNav.length === 0) return;

View File

@ -1,3 +1,5 @@
import $ from 'jquery';
export function initUserSettings() {
if ($('.user.settings.profile').length > 0) {
$('#username').on('keyup', function () {

View File

@ -1,5 +1,6 @@
import './publicpath.js';
import $ from 'jquery';
import {initVueEnv} from './components/VueComponentLoader.js';
import {initRepoActivityTopAuthorsChart} from './components/RepoActivityTopAuthors.vue';
import {initDashboardRepoList} from './components/DashboardRepoList.js';

View File

@ -1,3 +1,7 @@
import $ from 'jquery';
const preventListener = (e) => e.preventDefault();
/**
* Attaches `input` handlers to markdown rendered tasklist checkboxes in comments.
*
@ -5,9 +9,6 @@
* is set accordingly and sent to the server. On success it updates the raw-content on
* error it resets the checkbox to its original value.
*/
const preventListener = (e) => e.preventDefault();
export function initMarkupTasklist() {
for (const el of document.querySelectorAll(`.markup[data-can-edit=true]`) || []) {
const container = el.parentNode;