Skip to content

Commit fe8f786

Browse files
committed
Remove ts-nocheck from brave://settings files
1 parent 5272a71 commit fe8f786

31 files changed

+1255
-981
lines changed
Lines changed: 72 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,48 @@
1-
// @ts-nocheck
21
/* Copyright (c) 2019 The Brave Authors. All rights reserved.
32
* This Source Code Form is subject to the terms of the Mozilla Public
43
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
5-
* you can obtain one at https://mozilla.org/MPL/2.0/. */
4+
* You can obtain one at https://mozilla.org/MPL/2.0/. */
65

6+
import './brave_clear_browsing_data_on_exit_page.js'
77

8-
import "./brave_clear_browsing_data_on_exit_page.js"
8+
import {CrButtonElement} from 'chrome://resources/cr_elements/cr_button/cr_button.js'
9+
import {
10+
SettingsBraveClearBrowsingDataOnExitPageElement
11+
} from './brave_clear_browsing_data_on_exit_page.js'
912

10-
import {loadTimeData} from "../i18n_setup.js"
11-
import {WebUiListenerMixin} from 'chrome://resources/cr_elements/web_ui_listener_mixin.js';
12-
import {SettingsClearBrowsingDataDialogElement} from '../clear_browsing_data_dialog/clear_browsing_data_dialog.js'
13-
import type {SettingsClearBrowsingDataDialogElement as BraveSettingsClearBrowsingDataDialogElement}
14-
from '../clear_browsing_data_dialog/clear_browsing_data_dialog.js'
15-
import {BraveClearBrowsingDataDialogBrowserProxy, BraveClearBrowsingDataDialogBrowserProxyImpl}
16-
from './brave_clear_browsing_data_dialog_proxy.js'
13+
import {loadTimeData} from '../i18n_setup.js'
1714

18-
const BaseElement = WebUiListenerMixin(SettingsClearBrowsingDataDialogElement)
19-
export class BraveSettingsClearBrowsingDataDialogElement extends BaseElement {
20-
braveRewardsEnabled_: Boolean = false;
21-
onClearBraveAdsDataClickHandler_: (() => void) = () => {};
15+
import {
16+
SettingsClearBrowsingDataDialogElement
17+
} from '../clear_browsing_data_dialog/clear_browsing_data_dialog.js'
2218

23-
private clearDataBrowserProxy_ =
24-
BraveClearBrowsingDataDialogBrowserProxyImpl.getInstance();
25-
private onSelectedPageChangedCallback_: (() => void) | null = null;
26-
private updateSaveButtonStateCallback_: (() => void) | null = null;
27-
private saveOnExitSettingsCallback_: (() => void) | null = null;
19+
import {
20+
BraveClearBrowsingDataDialogBrowserProxy,
21+
BraveClearBrowsingDataDialogBrowserProxyImpl
22+
} from './brave_clear_browsing_data_dialog_proxy.js'
23+
24+
export class BraveSettingsClearBrowsingDataDialogElement
25+
extends SettingsClearBrowsingDataDialogElement {
26+
braveRewardsEnabled_: Boolean = false
27+
onClearBraveAdsDataClickHandler_: ((e: Event) => void) = () => {}
28+
29+
private clearDataBrowserProxy_: BraveClearBrowsingDataDialogBrowserProxy =
30+
BraveClearBrowsingDataDialogBrowserProxyImpl.getInstance()
31+
32+
private onSelectedPageChangedCallback_: (() => void) | null = null
33+
34+
private updateSaveButtonStateCallback_: (() => void) | null = null
35+
36+
private saveOnExitSettingsCallback_: (() => void) | null = null
2837

2938
override ready() {
30-
super.ready();
39+
super.ready()
3140

3241
// Append On exit tab to tab selector.
33-
this.tabsNames_.push(loadTimeData.getString('onExitPageTitle'));
42+
;(this as any).tabsNames_.push(loadTimeData.getString('onExitPageTitle'))
3443

3544
this.addWebUiListener(
36-
'update-counter-text', this.updateOnExitCountersText.bind(this))
45+
'update-counter-text', this.updateOnExitCountersText_.bind(this))
3746

3847
this.addWebUiListener(
3948
'brave-rewards-enabled-changed', (enabled: boolean) => {
@@ -56,9 +65,9 @@ export class BraveSettingsClearBrowsingDataDialogElement extends BaseElement {
5665
this.shadowRoot!.querySelector('#on-exit-tab')!.addEventListener(
5766
'clear-data-on-exit-page-change', this.updateSaveButtonStateCallback_)
5867

59-
this.saveOnExitSettingsCallback_ = this.saveOnExitSettings_.bind(this);
60-
this.shadowRoot.querySelector('#saveOnExitSettingsConfirm').addEventListener(
61-
'click', this.saveOnExitSettingsCallback_);
68+
this.saveOnExitSettingsCallback_ = this.saveOnExitSettings_.bind(this)
69+
this.shadowRoot!.querySelector('#saveOnExitSettingsConfirm')!
70+
.addEventListener('click', this.saveOnExitSettingsCallback_)
6271

6372
this.onClearBraveAdsDataClickHandler_ = this.clearBraveAdsData_.bind(this)
6473
}
@@ -72,16 +81,17 @@ export class BraveSettingsClearBrowsingDataDialogElement extends BaseElement {
7281
this.onSelectedPageChangedCallback_ = null
7382
}
7483

75-
if (this.saveOnExitSettingsCallback_) {
76-
this.shadowRoot.querySelector('#on-exit-tab').removeEventListener(
77-
'clear-data-on-exit-page-change', this.updateSaveButtonStateCallback_);
78-
this.updateSaveButtonStateCallback_ = null;
84+
if (this.updateSaveButtonStateCallback_) {
85+
this.shadowRoot!.querySelector('#on-exit-tab')!.removeEventListener(
86+
'clear-data-on-exit-page-change', this.updateSaveButtonStateCallback_)
87+
this.updateSaveButtonStateCallback_ = null
7988
}
8089

8190
if (this.saveOnExitSettingsCallback_) {
82-
this.shadowRoot.querySelector('#saveOnExitSettingsConfirm').removeEventListener(
83-
'click', this.saveOnExitSettingsCallback_);
84-
this.saveOnExitSettingsCallback_ = null;
91+
this.shadowRoot!.
92+
querySelector('#saveOnExitSettingsConfirm')!.
93+
removeEventListener('click', this.saveOnExitSettingsCallback_)
94+
this.saveOnExitSettingsCallback_ = null
8595
}
8696

8797
this.onClearBraveAdsDataClickHandler_ = () => {}
@@ -92,60 +102,67 @@ export class BraveSettingsClearBrowsingDataDialogElement extends BaseElement {
92102
* preference.
93103
* @param {string} prefName Browsing data type deletion preference.
94104
* @param {string} text The text with which to update the counter
95-
* @private
96105
*/
97-
updateOnExitCountersText(prefName, text) {
106+
private updateOnExitCountersText_(prefName: string, text: string) {
98107
// Data type deletion preferences are named "browser.clear_data.<datatype>".
99108
// Strip the common prefix, i.e. use only "<datatype>".
100-
const matches = prefName.match(/^browser\.clear_data\.(\w+)$/);
101-
this.shadowRoot.querySelector('#on-exit-tab').setCounter(matches[1], text);
109+
const matches = prefName.match(/^browser\.clear_data\.(\w+)$/)
110+
if (matches) {
111+
this.shadowRoot!.
112+
querySelector<SettingsBraveClearBrowsingDataOnExitPageElement>(
113+
'#on-exit-tab')!.setCounter(matches[1], text)
114+
}
102115
}
103116

104117
/**
105118
* Updates Clear and Save buttons visibility based on the selected tab.
106-
* @private
107119
*/
108-
onSelectedPageChanged_() {
109-
const page = this.$.pages.selectedItem;
120+
private onSelectedPageChanged_() {
121+
const page = this.$.pages.selectedItem
110122
if (!page) {
111123
return
112124
}
113-
const isOnExitPage = (page.id === 'on-exit-tab');
114-
this.$.clearButton.hidden = isOnExitPage;
115-
this.shadowRoot.querySelector('#saveOnExitSettingsConfirm').hidden = !isOnExitPage;
125+
const isOnExitPage = page.id === 'on-exit-tab'
126+
this.$.clearButton.hidden = isOnExitPage
127+
this.shadowRoot!.querySelector<CrButtonElement>(
128+
'#saveOnExitSettingsConfirm')!.hidden = !isOnExitPage
116129
}
117130

118131
/**
119132
* Updates Save button enabled state based on on-exit-tab's changed state.
120-
* @private
121133
*/
122-
updateSaveButtonState_() {
123-
this.shadowRoot.querySelector('#saveOnExitSettingsConfirm').disabled =
124-
!this.shadowRoot.querySelector('#on-exit-tab').isModified;
134+
private updateSaveButtonState_() {
135+
const saveButton = this.shadowRoot!.
136+
querySelector<CrButtonElement>('#saveOnExitSettingsConfirm')
137+
if (saveButton) {
138+
saveButton.disabled = !this.shadowRoot!.
139+
querySelector<SettingsBraveClearBrowsingDataOnExitPageElement>(
140+
'#on-exit-tab')!.isModified_
141+
}
125142
}
126143

127144
/**
128145
* Saves on exit settings selections.
129-
* @private
130146
*/
131-
saveOnExitSettings_() {
132-
const changed = this.shadowRoot.querySelector('#on-exit-tab').getChangedSettings();
147+
private saveOnExitSettings_() {
148+
const changed = this.shadowRoot!.
149+
querySelector<SettingsBraveClearBrowsingDataOnExitPageElement>(
150+
'#on-exit-tab')!.getChangedSettings()
133151
changed.forEach((change) => {
134152
this.set('prefs.' + change.key + '.value', change.value)
135153
})
136154
this.updateSaveButtonState_()
137-
if (!this.clearingInProgress_) {
155+
if (!(this as any).clearingInProgress_) {
138156
this.$.clearBrowsingDataDialog.close()
139157
}
140158
}
141159

142160
/**
143161
* Clears Brave Ads data.
144-
* @private
145162
*/
146-
clearBraveAdsData_(e: any) {
147-
e.preventDefault();
148-
this.clearDataBrowserProxy_.clearBraveAdsData();
149-
this.$.clearBrowsingDataDialog.close();
163+
private clearBraveAdsData_(e: Event) {
164+
e.preventDefault()
165+
this.clearDataBrowserProxy_.clearBraveAdsData()
166+
this.$.clearBrowsingDataDialog.close()
150167
}
151168
}

browser/resources/settings/brave_clear_browsing_data_dialog/brave_clear_browsing_data_on_exit_page.ts

Lines changed: 87 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -3,85 +3,115 @@
33
// License, v. 2.0. If a copy of the MPL was not distributed with this file,
44
// you can obtain one at https://mozilla.org/MPL/2.0/.
55

6-
// @ts-nocheck
7-
8-
import {Polymer} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
9-
import {loadTimeData} from '../i18n_setup.js';
10-
import '../settings_shared.css.js';
11-
import '../settings_vars.css.js';
12-
import '../controls/settings_checkbox.js';
6+
import {PrefsMixin} from '/shared/settings/prefs/prefs_mixin.js'
7+
import {BaseMixin} from '../base_mixin.js'
8+
import {PolymerElement} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js'
9+
import {loadTimeData} from '../i18n_setup.js'
10+
import '../settings_shared.css.js'
11+
import '../settings_vars.css.js'
12+
import '../controls/settings_checkbox.js'
1313
import {getTemplate} from './brave_clear_browsing_data_on_exit_page.html.js'
1414

15-
Polymer({
16-
is: 'settings-brave-clear-browsing-data-on-exit-page',
15+
export interface SettingsBraveClearBrowsingDataOnExitPageElement {
16+
$: {
17+
checkboxes: HTMLElement,
18+
}
19+
}
1720

18-
_template: getTemplate(),
21+
const SettingsBraveClearBrowsingDataOnExitPageElementBase =
22+
PrefsMixin(BaseMixin(PolymerElement))
1923

20-
properties: {
21-
prefs: {
22-
type: Object,
23-
notify: true,
24-
},
24+
export class SettingsBraveClearBrowsingDataOnExitPageElement
25+
extends SettingsBraveClearBrowsingDataOnExitPageElementBase {
26+
static get is() {
27+
return 'settings-brave-clear-browsing-data-on-exit-page'
28+
}
2529

26-
counters: {
27-
type: Object,
28-
// Will be filled as results are reported.
29-
value: function() {
30-
return {};
31-
}
32-
},
30+
static get template() {
31+
return getTemplate()
32+
}
3333

34-
isModified: {
35-
type: Boolean,
36-
value: false,
37-
},
34+
static getProperties() {
35+
return {
36+
prefs: {
37+
type: Object,
38+
notify: true,
39+
},
40+
41+
counters: {
42+
type: Object,
43+
// Will be filled as results are reported.
44+
value() {
45+
return {}
46+
}
47+
},
3848

39-
isChildAccount_: {
40-
type: Boolean,
41-
value: function() {
42-
return loadTimeData.getBoolean('isChildAccount');
49+
isModified_: {
50+
type: Boolean,
51+
value: false,
4352
},
44-
},
4553

46-
isAIChatAndHistoryAllowed_: {
47-
type: Boolean,
48-
value: function() {
49-
return loadTimeData.getBoolean('isLeoAssistantAllowed')
50-
&& loadTimeData.getBoolean('isLeoAssistantHistoryAllowed');
54+
isChildAccount_: {
55+
type: Boolean,
56+
value() {
57+
return loadTimeData.getBoolean('isChildAccount')
58+
},
5159
},
60+
61+
isAIChatAndHistoryAllowed_: {
62+
type: Boolean,
63+
value() {
64+
return loadTimeData.getBoolean('isLeoAssistantAllowed')
65+
&& loadTimeData.getBoolean('isLeoAssistantHistoryAllowed')
66+
},
67+
}
5268
}
53-
},
69+
}
70+
71+
public isModified_: boolean
72+
73+
private counters: {[k: string]: string} = {}
74+
private isChildAccount_: boolean
75+
private isAIChatAndHistoryAllowed_: boolean
5476

55-
listeners: {'settings-boolean-control-change': 'updateModified_'},
77+
override ready() {
78+
super.ready()
79+
this.addEventListener(
80+
'settings-boolean-control-change', this.updateModified_)
81+
}
5682

57-
setCounter: function (counter: string, text: string) {
58-
this.set('counters.' + counter, text);
59-
},
83+
public setCounter(counter: string, text: string) {
84+
this.set('counters.' + counter, text)
85+
}
6086

61-
getChangedSettings: function () {
62-
let changed: {key: string, value: boolean}[] = [];
63-
const boxes = this.$.checkboxes.querySelectorAll('settings-checkbox');
87+
public getChangedSettings() {
88+
let changed: Array<{key: string, value: boolean}> = []
89+
const boxes = this.$.checkboxes.querySelectorAll('settings-checkbox')
6490
boxes.forEach((checkbox) => {
65-
if (checkbox.checked != this.get(checkbox.pref.key, this.prefs).value) {
66-
changed.push({key:checkbox.pref.key, value:checkbox.checked});
91+
if (checkbox.checked !== this.get(checkbox.pref!.key, this.prefs).value) {
92+
changed.push({key:checkbox.pref!.key, value:checkbox.checked})
6793
}
6894
})
6995
return changed
7096
}
7197

72-
updateModified_: function () {
73-
let modified = false;
74-
const boxes = this.$.checkboxes.querySelectorAll('settings-checkbox');
98+
private updateModified_() {
99+
let modified = false
100+
const boxes = this.$.checkboxes.querySelectorAll('settings-checkbox')
75101
for (let checkbox of boxes) {
76-
if (checkbox.checked != this.get(checkbox.pref.key, this.prefs).value) {
77-
modified = true;
78-
break;
102+
if (checkbox.checked !== this.get(checkbox.pref!.key, this.prefs).value) {
103+
modified = true
104+
break
79105
}
80106
}
81107

82-
if (this.isModified !== modified) {
83-
this.isModified = modified;
84-
this.fire('clear-data-on-exit-page-change');
108+
if (this.isModified_ !== modified) {
109+
this.isModified_ = modified
110+
this.fire('clear-data-on-exit-page-change')
85111
}
86-
},
87-
});
112+
}
113+
}
114+
115+
customElements.define(
116+
SettingsBraveClearBrowsingDataOnExitPageElement.is,
117+
SettingsBraveClearBrowsingDataOnExitPageElement)

0 commit comments

Comments
 (0)