demarches-normaliennes/app/javascript/entrypoints/application.js

69 lines
1.8 KiB
JavaScript
Raw Normal View History

import Rails from '@rails/ujs';
import * as ActiveStorage from '@rails/activestorage';
import * as Turbo from '@hotwired/turbo';
import { Application } from '@hotwired/stimulus';
2022-08-31 14:49:53 +02:00
import '@gouvfr/dsfr/dist/dsfr.module.js';
import '../shared/turbo-actions';
2019-02-13 14:16:22 +01:00
import '../shared/activestorage/ujs';
import '../shared/safari-11-empty-file-workaround';
import '../shared/toggle-target';
import { registerControllers } from '../shared/stimulus-loader';
import '../new_design/form-validation';
import '../new_design/procedure-context';
import '../new_design/procedure-form';
2019-02-21 17:50:18 +01:00
import '../new_design/support';
2020-10-06 17:10:34 +02:00
import {
toggleCondidentielExplanation,
replaceSemicolonByComma
} from '../new_design/avis';
import {
showMotivation,
motivationCancel,
showImportJustificatif
} from '../new_design/state-button';
2019-12-02 14:20:26 +01:00
import {
acceptEmailSuggestion,
discardEmailSuggestionBox
} from '../new_design/user-sign_up';
import { showFusion, showNewAccount } from '../new_design/fc-fusion';
const application = Application.start();
registerControllers(application);
// This is the global application namespace where we expose helpers used from rails views
const DS = {
toggleCondidentielExplanation,
showMotivation,
motivationCancel,
showImportJustificatif,
showFusion,
2021-10-13 09:26:54 +02:00
showNewAccount,
replaceSemicolonByComma,
acceptEmailSuggestion,
discardEmailSuggestionBox
};
// Start Rails helpers
ActiveStorage.start();
2022-06-27 13:40:59 +02:00
if (!window._rails_loaded) {
Rails.start();
}
2022-04-20 14:17:40 +02:00
Turbo.session.drive = false;
// Expose globals
window.DS = window.DS || DS;
2022-06-17 12:36:21 +02:00
// enable legacy mode of DSFR when vite is not detectde as modern browser
window.addEventListener('load', function () {
if (!window.__vite_is_modern_browser) {
window.dsfr.internals.legacy.setLegacy();
}
});
import('../shared/track/matomo');
import('../shared/track/sentry');