silverstripe-webpack/app/client/src/js/app.js

118 lines
4.0 KiB
JavaScript
Raw Normal View History

2020-02-07 20:51:42 +01:00
'use strict';
import '../scss/app.scss';
2018-02-05 12:11:01 +01:00
2018-06-23 12:27:06 +02:00
// import Bootstrap
import 'popper.js';
2018-02-09 13:10:40 +01:00
import 'bootstrap/js/dist/util';
import 'bootstrap/js/dist/alert';
import 'bootstrap/js/dist/button';
import 'bootstrap/js/dist/carousel';
import 'bootstrap/js/dist/collapse';
2020-02-07 20:51:42 +01:00
2020-02-12 21:31:59 +01:00
//import 'hammerjs/hammer';
//import 'jquery-hammerjs/jquery.hammer';
2020-02-07 20:51:42 +01:00
// Routie
//import 'pouchdb/dist/pouchdb';
//import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/routes/index';
// conflicts with _components/_ui.hover.js (shows dropdown on hover)
//import 'bootstrap/js/dist/dropdown';
2020-08-04 16:17:23 +02:00
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.shrink';
2020-02-07 20:51:42 +01:00
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.hover';
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.carousel';
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.menu';
2018-02-09 13:10:40 +01:00
import 'bootstrap/js/dist/modal';
import 'bootstrap/js/dist/tooltip';
import 'bootstrap/js/dist/popover';
import 'bootstrap/js/dist/scrollspy';
import 'bootstrap/js/dist/tab';
2018-02-05 12:11:01 +01:00
//
2020-02-07 20:51:42 +01:00
import Spinner from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.spinner';
// Sticky sidebar
import SidebarUI from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.sidebar';
//import Multislider from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.multislider';
// Flyout UI
//import Flyout from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.flyout';
// Offcanvas menu
2019-09-07 03:49:31 +02:00
//import 'offcanvas-bootstrap/dist/js/bootstrap.offcanvas';
2020-02-07 20:51:42 +01:00
// Uncomment it to enable meta-lightbox zooming on hover
//import 'jquery-zoom/jquery.zoom';
// Toggle bootstrap form fields
//import FormToggleUI from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.fields.toggle';
// Bootstrap Date & Time fields
//import FormDatetime from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.datetime';
// Stepped forms functionality
//import FormStepped from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.stepped';
// Forms validation functionality
2020-05-14 14:06:58 +02:00
import FormValidate from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.validate';
2020-02-07 20:51:42 +01:00
// Store forms data into localStorage
2020-05-14 14:06:58 +02:00
import FormStorage from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.storage';
// Google NoCaptcha fields
import NoCaptcha from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.nocaptcha';
2020-02-07 20:51:42 +01:00
// client-side images cropping
//import FormCroppie from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.croppie';
2019-09-07 03:49:31 +02:00
// youtube video preview image
2019-11-25 08:00:33 +01:00
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.video.preview';
2019-09-07 03:49:31 +02:00
2020-02-07 20:51:42 +01:00
// Meta Lightbox
2020-05-14 19:38:35 +02:00
import '@a2nt/meta-lightbox/src/js/app';
2020-02-07 20:51:42 +01:00
//import Confirmation from 'bootstrap-confirmation2/dist/bootstrap-confirmation';
//import Table from 'bootstrap-table/dist/bootstrap-table';
2019-12-02 18:49:28 +01:00
2021-01-14 19:27:03 +01:00
//import FormSelect2 from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.form.select2';
2020-02-07 20:51:42 +01:00
// AJAX UI
2021-01-14 19:27:03 +01:00
import AjaxUI from '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/_ui.ajax';
2020-02-07 20:51:42 +01:00
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_main';
import './_layout';
2018-02-05 12:11:01 +01:00
2020-04-02 02:20:17 +02:00
// Register service worker
if ('serviceWorker' in navigator) {
2020-04-02 05:24:55 +02:00
const baseHref = (document.getElementsByTagName('base')[0] || {}).href;
const version = (document.querySelector('meta[name="swversion"]') || {})
.content;
2020-04-02 02:20:17 +02:00
if (baseHref) {
2020-04-02 05:24:55 +02:00
navigator.serviceWorker
.register(`${baseHref}sw.js?v=${version}`)
.then(() => {
console.log('Service Worker Registered');
});
2020-04-02 02:20:17 +02:00
}
}
function importAll(r) {
return r.keys().map(r);
}
const images = importAll(
require.context('../img/', false, /\.(png|jpe?g|svg)$/),
);
const fontAwesome = importAll(
require.context('font-awesome', false, /\.(otf|eot|svg|ttf|woff|woff2)$/),
);
2020-02-07 20:51:42 +01:00
// Google Analytics
import '@a2nt/ss-bootstrap-ui-webpack-boilerplate/src/js/_components/drivers/_google.track.external.links';
2020-02-12 21:31:59 +01:00
//import MarkerClusterer from '@google/markerclusterer/src/markerclusterer.js';