Visitar URL original
Fix some errors reported by TypeScript · phpmyadmin/phpmyadmin@36bd701 · GitHub
Skip to content

Commit 36bd701

Browse files
committed
Fix some errors reported by TypeScript
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
1 parent 75b8cb5 commit 36bd701

9 files changed

Lines changed: 88 additions & 49 deletions

File tree

‎js/src/database/query_generator.ts‎

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ function generateCondition (criteriaDiv, table) {
4545
return query;
4646
}
4747

48-
window.generateWhereBlock = function () {
48+
function generateWhereBlock () {
4949
var count = 0;
5050
var query = '';
5151
$('.tableNameSelect').each(function () {
@@ -66,7 +66,7 @@ window.generateWhereBlock = function () {
6666
});
6767

6868
return query;
69-
};
69+
}
7070

7171
function generateJoin (newTable, tableAliases, fk) {
7272
var query = '';
@@ -126,7 +126,7 @@ function appendTable (table, tableAliases, usedTables, foreignKeys) {
126126
return query;
127127
}
128128

129-
window.generateFromBlock = (tableAliases, foreignKeys) => {
129+
function generateFromBlock (tableAliases, foreignKeys) {
130130
var usedTables = [];
131131
var query = '';
132132
for (var table in tableAliases) {
@@ -136,4 +136,14 @@ window.generateFromBlock = (tableAliases, foreignKeys) => {
136136
}
137137

138138
return query;
139-
};
139+
}
140+
141+
declare global {
142+
interface Window {
143+
generateWhereBlock: typeof generateWhereBlock;
144+
generateFromBlock: typeof generateFromBlock;
145+
}
146+
}
147+
148+
window.generateWhereBlock = generateWhereBlock;
149+
window.generateFromBlock = generateFromBlock;

‎js/src/designer/database.ts‎

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ var designerTables = [
1414
];
1515

1616
var DesignerOfflineDB = (function () {
17-
var designerDB: {[k: string]: any} = {};
18-
1917
/**
2018
* @type {IDBDatabase|null}
2119
*/
@@ -25,15 +23,15 @@ var DesignerOfflineDB = (function () {
2523
* @param {string} table
2624
* @return {IDBTransaction}
2725
*/
28-
designerDB.getTransaction = function (table) {
26+
const getTransaction = function (table) {
2927
return datastore.transaction([table], 'readwrite');
3028
};
3129

3230
/**
3331
* @param {string} table
3432
* @return {IDBObjectStore}
3533
*/
36-
designerDB.getObjectStore = function (table) {
34+
const getObjectStore = function (table) {
3735
var transaction = designerDB.getTransaction(table);
3836
var objStore = transaction.objectStore(table);
3937

@@ -45,7 +43,7 @@ var DesignerOfflineDB = (function () {
4543
* @param {string} table
4644
* @return {IDBObjectStore}
4745
*/
48-
designerDB.getCursorRequest = function (transaction, table) {
46+
const getCursorRequest = function (transaction, table) {
4947
var objStore = transaction.objectStore(table);
5048
var keyRange = IDBKeyRange.lowerBound(0);
5149
var cursorRequest = objStore.openCursor(keyRange);
@@ -56,7 +54,7 @@ var DesignerOfflineDB = (function () {
5654
/**
5755
* @param {Function} callback
5856
*/
59-
designerDB.open = function (callback): void {
57+
const open = function (callback): void {
6058
var version = 1;
6159
var request = window.indexedDB.open('pma_designer', version);
6260

@@ -96,7 +94,7 @@ var DesignerOfflineDB = (function () {
9694
* @param {string} id
9795
* @param {Function} callback
9896
*/
99-
designerDB.loadObject = function (table, id, callback): void {
97+
const loadObject = function (table, id, callback): void {
10098
if (datastore === null) {
10199
ajaxShowMessage(window.Messages.strIndexedDBNotWorking, null, 'error');
102100

@@ -117,7 +115,7 @@ var DesignerOfflineDB = (function () {
117115
* @param {string} table
118116
* @param {Function} callback
119117
*/
120-
designerDB.loadAllObjects = function (table, callback): void {
118+
const loadAllObjects = function (table, callback): void {
121119
if (datastore === null) {
122120
ajaxShowMessage(window.Messages.strIndexedDBNotWorking, null, 'error');
123121

@@ -149,7 +147,7 @@ var DesignerOfflineDB = (function () {
149147
* @param {string} table
150148
* @param {Function} callback
151149
*/
152-
designerDB.loadFirstObject = function (table, callback): void {
150+
const loadFirstObject = function (table, callback): void {
153151
if (datastore === null) {
154152
ajaxShowMessage(window.Messages.strIndexedDBNotWorking, null, 'error');
155153

@@ -181,7 +179,7 @@ var DesignerOfflineDB = (function () {
181179
* @param {Object} obj
182180
* @param {Function} callback
183181
*/
184-
designerDB.addObject = function (table, obj, callback): void {
182+
const addObject = function (table, obj, callback = undefined): void {
185183
if (datastore === null) {
186184
ajaxShowMessage(window.Messages.strIndexedDBNotWorking, null, 'error');
187185

@@ -205,7 +203,7 @@ var DesignerOfflineDB = (function () {
205203
* @param {string} id
206204
* @param {Function} callback
207205
*/
208-
designerDB.deleteObject = function (table, id, callback): void {
206+
const deleteObject = function (table, id, callback = undefined): void {
209207
if (datastore === null) {
210208
ajaxShowMessage(window.Messages.strIndexedDBNotWorking, null, 'error');
211209

@@ -227,11 +225,24 @@ var DesignerOfflineDB = (function () {
227225
/**
228226
* @param {Error} e
229227
*/
230-
designerDB.onerror = function (e): void {
228+
const onerror = function (e): void {
231229
// eslint-disable-next-line no-console
232230
console.log(e);
233231
};
234232

233+
var designerDB = {
234+
getTransaction: getTransaction,
235+
getObjectStore: getObjectStore,
236+
getCursorRequest: getCursorRequest,
237+
open: open,
238+
loadObject: loadObject,
239+
loadAllObjects: loadAllObjects,
240+
loadFirstObject: loadFirstObject,
241+
addObject: addObject,
242+
deleteObject: deleteObject,
243+
onerror: onerror,
244+
};
245+
235246
// Export the designerDB object.
236247
return designerDB;
237248
}());

‎js/src/designer/page.ts‎

Lines changed: 40 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@ import { DesignerOfflineDB } from './database.ts';
66
import { DesignerMove } from './move.ts';
77
import { DesignerObjects } from './objects.ts';
88

9-
var DesignerPage = {};
10-
11-
DesignerPage.showTablesInLandingPage = function (db) {
9+
function showTablesInLandingPage (db) {
1210
DesignerPage.loadFirstPage(db, function (page) {
1311
if (page) {
1412
DesignerPage.loadHtmlForPage(page.pgNr);
@@ -17,9 +15,9 @@ DesignerPage.showTablesInLandingPage = function (db) {
1715
DesignerPage.showNewPageTables(true);
1816
}
1917
});
20-
};
18+
}
2119

22-
DesignerPage.saveToNewPage = function (db, pageName, tablePositions, callback) {
20+
function saveToNewPage (db, pageName, tablePositions, callback) {
2321
DesignerPage.createNewPage(db, pageName, function (page) {
2422
if (page) {
2523
var tblCords = [];
@@ -41,9 +39,9 @@ DesignerPage.saveToNewPage = function (db, pageName, tablePositions, callback) {
4139
}
4240
}
4341
});
44-
};
42+
}
4543

46-
DesignerPage.saveToSelectedPage = function (db, pageId, pageName, tablePositions, callback) {
44+
function saveToSelectedPage (db, pageId, pageName, tablePositions, callback) {
4745
DesignerPage.deletePage(pageId);
4846
DesignerPage.saveToNewPage(db, pageName, tablePositions, function (page) {
4947
if (typeof callback !== 'undefined') {
@@ -52,23 +50,23 @@ DesignerPage.saveToSelectedPage = function (db, pageId, pageName, tablePositions
5250

5351
DesignerConfig.selectedPage = page.pgNr;
5452
});
55-
};
53+
}
5654

57-
DesignerPage.createNewPage = function (db, pageName, callback) {
55+
function createNewPage (db, pageName, callback) {
5856
var newPage = new DesignerObjects.PdfPage(db, pageName, []);
5957
DesignerOfflineDB.addObject('pdf_pages', newPage, function (pgNr) {
6058
newPage.pgNr = pgNr;
6159
if (typeof callback !== 'undefined') {
6260
callback(newPage);
6361
}
6462
});
65-
};
63+
}
6664

67-
DesignerPage.saveTablePositions = function (positions, callback) {
65+
function saveTablePositions (positions, callback) {
6866
DesignerOfflineDB.addObject('table_coords', positions, callback);
69-
};
67+
}
7068

71-
DesignerPage.createPageList = function (db, callback) {
69+
function createPageList (db, callback) {
7270
DesignerOfflineDB.loadAllObjects('pdf_pages', function (pages) {
7371
var html = '';
7472
for (var p = 0; p < pages.length; p++) {
@@ -83,9 +81,9 @@ DesignerPage.createPageList = function (db, callback) {
8381
callback(html);
8482
}
8583
});
86-
};
84+
}
8785

88-
DesignerPage.deletePage = function (pageId, callback) {
86+
function deletePage (pageId, callback = undefined) {
8987
DesignerOfflineDB.loadObject('pdf_pages', pageId, function (page) {
9088
if (page) {
9189
for (var i = 0; i < page.tblCords.length; i++) {
@@ -95,9 +93,9 @@ DesignerPage.deletePage = function (pageId, callback) {
9593
DesignerOfflineDB.deleteObject('pdf_pages', pageId, callback);
9694
}
9795
});
98-
};
96+
}
9997

100-
DesignerPage.loadFirstPage = function (db, callback) {
98+
function loadFirstPage (db, callback) {
10199
DesignerOfflineDB.loadAllObjects('pdf_pages', function (pages) {
102100
var firstPage = null;
103101
for (var i = 0; i < pages.length; i++) {
@@ -118,10 +116,10 @@ DesignerPage.loadFirstPage = function (db, callback) {
118116

119117
callback(firstPage);
120118
});
121-
};
119+
}
122120

123-
DesignerPage.showNewPageTables = function (check) {
124-
var allTables = $('#id_scroll_tab').find('td input:checkbox');
121+
function showNewPageTables (check) {
122+
var allTables = ($('#id_scroll_tab').find('td input:checkbox') as JQuery<HTMLInputElement>);
125123
allTables.prop('checked', check);
126124
for (var tab = 0; tab < allTables.length; tab++) {
127125
var input = allTables[tab];
@@ -136,9 +134,9 @@ DesignerPage.showNewPageTables = function (check) {
136134
DesignerConfig.selectedPage = -1;
137135
$('#page_name').text(window.Messages.strUntitled);
138136
DesignerMove.markUnsaved();
139-
};
137+
}
140138

141-
DesignerPage.loadHtmlForPage = function (pageId) {
139+
function loadHtmlForPage (pageId) {
142140
DesignerPage.showNewPageTables(true);
143141
DesignerPage.loadPageObjects(pageId, function (page, tblCords) {
144142
$('#name-panel').find('#page_name').text(page.pageDescr);
@@ -154,7 +152,7 @@ DesignerPage.loadHtmlForPage = function (pageId) {
154152
table.style.top = tblCords[t].y + 'px';
155153
table.style.left = tblCords[t].x + 'px';
156154

157-
var checkbox = document.getElementById('check_vis_' + tbId);
155+
var checkbox = (document.getElementById('check_vis_' + tbId) as HTMLInputElement);
158156
checkbox.checked = true;
159157
DesignerMove.visibleTab(checkbox, checkbox.value);
160158
}
@@ -167,9 +165,9 @@ DesignerPage.loadHtmlForPage = function (pageId) {
167165

168166
DesignerConfig.selectedPage = page.pgNr;
169167
});
170-
};
168+
}
171169

172-
DesignerPage.loadPageObjects = function (pageId, callback) {
170+
function loadPageObjects (pageId, callback) {
173171
DesignerOfflineDB.loadObject('pdf_pages', pageId, function (page) {
174172
var tblCords = [];
175173
var count = page.tblCords.length;
@@ -184,12 +182,27 @@ DesignerPage.loadPageObjects = function (pageId, callback) {
184182
});
185183
}
186184
});
187-
};
185+
}
188186

189-
DesignerPage.getRandom = function (max, min) {
187+
function getRandom (max, min) {
190188
var val = Math.random() * (max - min) + min;
191189

192190
return Math.floor(val);
191+
}
192+
193+
const DesignerPage = {
194+
showTablesInLandingPage: showTablesInLandingPage,
195+
saveToNewPage: saveToNewPage,
196+
saveToSelectedPage: saveToSelectedPage,
197+
createNewPage: createNewPage,
198+
saveTablePositions: saveTablePositions,
199+
createPageList: createPageList,
200+
deletePage: deletePage,
201+
loadFirstPage: loadFirstPage,
202+
showNewPageTables: showNewPageTables,
203+
loadHtmlForPage: loadHtmlForPage,
204+
loadPageObjects: loadPageObjects,
205+
getRandom: getRandom,
193206
};
194207

195208
export { DesignerPage };

‎js/src/jquery.sortable-table.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ import $ from 'jquery';
278278
previewMove = null;
279279
}
280280

281-
function moveTo (elem, opts = {}) {
281+
function moveTo (elem, opts: {pos?: any, duration?: any} = {}) {
282282
if (! opts.pos) {
283283
opts.pos = { left: 0, top: 0 };
284284
}

‎js/src/modules/config.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -801,7 +801,7 @@ function on () {
801801
if (! lsSupported) {
802802
disabled = $form.find('input[type=radio][value$=local_storage]').prop('checked');
803803
} else if (! lsExists && $form.attr('name') === 'prefs_import' &&
804-
$('#import_local_storage')[0].checked
804+
($('#import_local_storage') as JQuery<HTMLInputElement>)[0].checked
805805
) {
806806
disabled = true;
807807
}

‎js/src/modules/navigation.ts‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -624,7 +624,7 @@ function ensureSettings (selflink): void {
624624
* @param {object} paths stored navigation paths
625625
*/
626626
function reload (callback = null, paths = null): void {
627-
var params = {
627+
var params: { server: any; reload: boolean; no_debug: boolean, db?: string } = {
628628
'reload': true,
629629
'no_debug': true,
630630
'server': CommonParams.get('server'),
@@ -1070,8 +1070,7 @@ const FastFilter = {
10701070
*/
10711071
getSearchClause: function () {
10721072
var retval = '';
1073-
var $input = $('#pma_navigation_tree')
1074-
.find('li.fast_filter.db_fast_filter input.searchClause');
1073+
var $input = ($('#pma_navigation_tree').find('li.fast_filter.db_fast_filter input.searchClause') as JQuery<HTMLInputElement>);
10751074
if ($input.length && $input.val() !== $input[0].defaultValue) {
10761075
retval = $input.val();
10771076
}
@@ -1278,7 +1277,7 @@ FastFilter.Filter.prototype.request = function (): void {
12781277
var params = self.$this.find('> ul > li > form.fast_filter').first().serialize();
12791278

12801279
if (self.$this.find('> ul > li > form.fast_filter').first().find('input[name=searchClause]').length === 0) {
1281-
var $input = $('#pma_navigation_tree').find('li.fast_filter.db_fast_filter input.searchClause');
1280+
var $input = ($('#pma_navigation_tree').find('li.fast_filter.db_fast_filter input.searchClause') as JQuery<HTMLInputElement>);
12821281
if ($input.length && $input.val() !== $input[0].defaultValue) {
12831282
params += CommonParams.get('arg_separator') + 'searchClause=' + encodeURIComponent($input.val());
12841283
}

‎js/src/name-conflict-fixes.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
import $ from 'jquery';
22

3+
// @ts-ignore
34
$.widget.bridge('uiTooltip', $.ui.tooltip);

‎js/src/setup/scripts.ts‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,10 @@ function ajaxValidate (parent, id, values) {
102102

103103
var error = {};
104104
if (typeof response !== 'object') {
105+
// @ts-ignore
105106
error[$parent.id] = [response];
106107
} else if (typeof response.error !== 'undefined') {
108+
// @ts-ignore
107109
error[$parent.id] = [response.error];
108110
} else {
109111
for (var key in response) {
@@ -189,6 +191,7 @@ $.extend(true, window.validators, {
189191
* @return {true}
190192
*/
191193
Server_login_options: function (isKeyUp) { // eslint-disable-line camelcase
194+
// @ts-ignore
192195
return window.validators.fieldset.Server.apply(this, [isKeyUp]);
193196
},
194197
/**

0 commit comments

Comments
 (0)