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

81 lines
2.6 KiB
JavaScript
Raw Normal View History

import '../shared/polyfills';
import Turbolinks from 'turbolinks';
import Rails from '@rails/ujs';
import * as ActiveStorage from '@rails/activestorage';
import '@rails/actiontext';
import 'whatwg-fetch'; // window.fetch polyfill
import Chartkick from 'chartkick';
import Highcharts from 'highcharts';
2019-08-14 13:11:36 +02:00
import ReactRailsUJS from 'react_ujs';
2019-08-01 15:22:37 +02:00
import '../shared/page-update-event';
2019-02-13 14:16:22 +01:00
import '../shared/activestorage/ujs';
import '../shared/activestorage/attachment-checker';
import '../shared/rails-ujs-fix';
2018-08-31 12:56:56 +02:00
import '../shared/safari-11-file-xhr-workaround';
import '../shared/autocomplete';
import '../shared/remote-input';
import '../shared/franceconnect';
import '../shared/toggle-target';
import '../new_design/dropdown';
2019-11-19 17:55:30 +01:00
import '../new_design/autosave';
import '../new_design/form-validation';
import '../new_design/procedure-context';
import '../new_design/procedure-form';
import '../new_design/select2';
2019-02-21 17:50:18 +01:00
import '../new_design/spinner';
import '../new_design/support';
2018-10-17 12:07:12 +02:00
import '../new_design/champs/carte';
import '../new_design/champs/linked-drop-down-list';
2019-01-30 16:14:15 +01:00
import '../new_design/champs/repetition';
import { toggleCondidentielExplanation } from '../new_design/avis';
import { scrollMessagerie } from '../new_design/messagerie';
import {
showMotivation,
motivationCancel,
showImportJustificatif
} from '../new_design/state-button';
import { toggleChart } from '../new_design/toggle-chart';
import { replaceSemicolonByComma } from '../new_design/avis';
import { acceptEmailSuggestion, discardEmailSuggestionBox } from '../new_design/user-sign_up';
// This is the global application namespace where we expose helpers used from rails views
const DS = {
2018-11-14 16:28:02 +01:00
fire: (eventName, data) => Rails.fire(document, eventName, data),
toggleCondidentielExplanation,
scrollMessagerie,
showMotivation,
motivationCancel,
showImportJustificatif,
toggleChart,
replaceSemicolonByComma,
acceptEmailSuggestion,
discardEmailSuggestionBox
};
// Start Rails helpers
Chartkick.addAdapter(Highcharts);
Rails.start();
Turbolinks.start();
ActiveStorage.start();
2019-08-14 13:11:36 +02:00
// If Turbolinks is imported via Webpacker (and thus not available globally),
// ReactRailsUJS will be unable to locate it.
// https://github.com/reactjs/react-rails#event-handling
// eslint-disable-next-line no-undef
ReactRailsUJS.useContext(require.context('components', true));
// Add Turbolinks to the global namespace:
window.Turbolinks = Turbolinks;
// Remove previous event handlers and add new ones:
ReactRailsUJS.detectEvents();
// (Optional) Clean up global namespace:
delete window.Turbolinks;
// Expose globals
window.DS = window.DS || DS;
window.Chartkick = Chartkick;