summaryrefslogtreecommitdiff
path: root/ext/js/pages/welcome-main.js
diff options
context:
space:
mode:
authortoasted-nutbread <toasted-nutbread@users.noreply.github.com>2024-02-07 02:55:48 -0500
committerGitHub <noreply@github.com>2024-02-07 07:55:48 +0000
commitdc22c0260e55121b2930f8bf8761271ba977503f (patch)
tree1c5cf6d59fb600dfc03e46f11d3fba3dfb30c8f1 /ext/js/pages/welcome-main.js
parent376bac7195bf2114da8b234ffa64af9751b4466d (diff)
Update application init process (#634)
Diffstat (limited to 'ext/js/pages/welcome-main.js')
-rw-r--r--ext/js/pages/welcome-main.js83
1 files changed, 36 insertions, 47 deletions
diff --git a/ext/js/pages/welcome-main.js b/ext/js/pages/welcome-main.js
index 030d2826..82afaacb 100644
--- a/ext/js/pages/welcome-main.js
+++ b/ext/js/pages/welcome-main.js
@@ -17,7 +17,6 @@
*/
import {Application} from '../application.js';
-import {log} from '../core/logger.js';
import {DocumentFocusController} from '../dom/document-focus-controller.js';
import {querySelectorNotNull} from '../dom/query-selector.js';
import {ExtensionContentController} from './common/extension-content-controller.js';
@@ -50,64 +49,54 @@ async function setupGenericSettingsController(genericSettingController) {
await genericSettingController.refresh();
}
-/** Entry point. */
-async function main() {
- try {
- const documentFocusController = new DocumentFocusController();
- documentFocusController.prepare();
+await Application.main(async (application) => {
+ const documentFocusController = new DocumentFocusController();
+ documentFocusController.prepare();
- const extensionContentController = new ExtensionContentController();
- extensionContentController.prepare();
+ const extensionContentController = new ExtensionContentController();
+ extensionContentController.prepare();
- /** @type {HTMLElement} */
- const statusFooterElement = querySelectorNotNull(document, '.status-footer-container');
- const statusFooter = new StatusFooter(statusFooterElement);
- statusFooter.prepare();
+ /** @type {HTMLElement} */
+ const statusFooterElement = querySelectorNotNull(document, '.status-footer-container');
+ const statusFooter = new StatusFooter(statusFooterElement);
+ statusFooter.prepare();
- const application = new Application();
- await application.prepare();
+ setupEnvironmentInfo(application.api);
- setupEnvironmentInfo(application.api);
+ chrome.storage.session.get({'needsCustomTemplatesWarning': false}).then((result) => {
+ if (result.needsCustomTemplatesWarning) {
+ document.documentElement.dataset.warnCustomTemplates = 'true';
+ chrome.storage.session.remove(['needsCustomTemplatesWarning']);
+ }
+ });
- chrome.storage.session.get({'needsCustomTemplatesWarning': false}).then((result) => {
- if (result.needsCustomTemplatesWarning) {
- document.documentElement.dataset.warnCustomTemplates = 'true';
- chrome.storage.session.remove(['needsCustomTemplatesWarning']);
- }
- });
+ const preparePromises = [];
- const preparePromises = [];
+ const modalController = new ModalController();
+ modalController.prepare();
- const modalController = new ModalController();
- modalController.prepare();
+ const settingsController = new SettingsController(application);
+ await settingsController.prepare();
- const settingsController = new SettingsController(application);
- await settingsController.prepare();
+ const dictionaryController = new DictionaryController(settingsController, modalController, statusFooter);
+ dictionaryController.prepare();
- const dictionaryController = new DictionaryController(settingsController, modalController, statusFooter);
- dictionaryController.prepare();
+ const dictionaryImportController = new DictionaryImportController(settingsController, modalController, statusFooter);
+ dictionaryImportController.prepare();
- const dictionaryImportController = new DictionaryImportController(settingsController, modalController, statusFooter);
- dictionaryImportController.prepare();
+ const genericSettingController = new GenericSettingController(settingsController);
+ preparePromises.push(setupGenericSettingsController(genericSettingController));
- const genericSettingController = new GenericSettingController(settingsController);
- preparePromises.push(setupGenericSettingsController(genericSettingController));
+ const simpleScanningInputController = new ScanInputsSimpleController(settingsController);
+ simpleScanningInputController.prepare();
- const simpleScanningInputController = new ScanInputsSimpleController(settingsController);
- simpleScanningInputController.prepare();
+ const recommendedPermissionsController = new RecommendedPermissionsController(settingsController);
+ recommendedPermissionsController.prepare();
- const recommendedPermissionsController = new RecommendedPermissionsController(settingsController);
- recommendedPermissionsController.prepare();
+ await Promise.all(preparePromises);
- await Promise.all(preparePromises);
+ document.documentElement.dataset.loaded = 'true';
- document.documentElement.dataset.loaded = 'true';
-
- const settingsDisplayController = new SettingsDisplayController(settingsController, modalController);
- settingsDisplayController.prepare();
- } catch (e) {
- log.error(e);
- }
-}
-
-await main();
+ const settingsDisplayController = new SettingsDisplayController(settingsController, modalController);
+ settingsDisplayController.prepare();
+});