summaryrefslogtreecommitdiff
path: root/resources/js/vendor.js
blob: 0b9960b133e7663292697a7fa79a0f61eb7004e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
/**
 * webtrees: online genealogy
 * Copyright (C) 2026 webtrees development team
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */

import $ from 'jquery';
window.$ = window.jQuery = $;

import '@popperjs/core';
import { Alert, Button, Carousel, Collapse, Dropdown, Modal, Offcanvas, Popover, ScrollSpy, Tab, Toast, Tooltip } from 'bootstrap';
window.bootstrap = {
  Alert: Alert,
  Button: Button,
  Carousel: Carousel,
  Collapse: Collapse,
  Dropdown: Dropdown,
  Modal: Modal,
  Offcanvas: Offcanvas,
  Popover: Popover,
  ScrollSpy: ScrollSpy,
  Tab: Tab,
  Toast: Toast,
  Tooltip: Tooltip,
};

// Just import the subset of icons that we use in resources/views/icons/
import { dom, library } from '@fortawesome/fontawesome-svg-core';
import {
  // For resources/views/icons/*
  faAddressCard, faArrowDown, faArrowLeft, faArrowRight, faArrowsAltV, faArrowUp, faBan, faBars, faBell,
  faCalendar, faCaretDown, faCaretUp, faCheck, faChildren, faCodeBranch, faCompress, faCopy, faDatabase,
  faDownload, faEnvelope, faExclamationTriangle, faExpand, faFile, faFileAlt, faFileImage, faFolder,
  faGenderless, faGripHorizontal, faGripLines, faHistory, faInfoCircle, faKeyboard, faLanguage, faLink,
  faList, faLock, faMagic, faMap, faMapMarkerAlt, faMars, faMedkit, faMinusSquare, faPaintBrush, faPause,
  faPencilAlt, faPlay, faPlus, faPlusSquare, faPuzzlePiece, faQuestionCircle, faRedo, faSearch,
  faSearchLocation, faSearchMinus, faSearchPlus, faServer, faShareAlt, faSitemap, faSortAmountDown, faSpinner,
  faStar, faStepForward, faStickyNote, faStop, faSyncAlt, faTags, faThList, faThumbtack, faTimes, faTransgender,
  faTrashAlt, faTree, faUndo, faUniversity, faUnlink, faUpload, faUser, faUsers, faVenus, faWrench,
  // For the BeautifyMarker library
  faBabyCarriage, faBullseye, faHome, faIndustry, faInfinity, faStarOfDavid, faWater
} from '@fortawesome/free-solid-svg-icons';
import 'corejs-typeahead';

import DataTable from 'datatables.net';
import 'datatables.net-bs5';
window.DataTable = DataTable;

import Sortable from 'sortablejs';

import TomSelect from 'tom-select/dist/js/tom-select.base.js';
TomSelect.define('caret_position', require('tom-select/dist/js/plugins/caret_position.js'));
TomSelect.define('clear_button', require('tom-select/dist/js/plugins/clear_button.js'));
TomSelect.define('dropdown_input', require('tom-select/dist/js/plugins/dropdown_input.js'));
TomSelect.define('remove_button', require('tom-select/dist/js/plugins/remove_button.js'));
TomSelect.define('virtual_scroll', require('tom-select/dist/js/plugins/virtual_scroll.js'));

window.TomSelect = TomSelect;

import 'moment';

import 'jquery-colorbox';
import 'pinch-zoom-element';

import 'leaflet';
import 'leaflet.markercluster';
import 'beautifymarker';
import 'leaflet-control-geocoder';
import 'leaflet.control.layers.tree';

library.add(
  // For resources/views/icons/*
  faAddressCard, faArrowDown, faArrowLeft, faArrowRight, faArrowsAltV, faArrowUp, faBan, faBars, faBell,
  faCalendar, faCaretDown, faCaretUp, faCheck, faChildren, faCodeBranch, faCompress, faCopy, faDatabase,
  faDownload, faEnvelope, faExclamationTriangle, faExpand, faFile, faFileAlt, faFileImage, faFolder,
  faGenderless, faGripHorizontal, faGripLines, faHistory, faInfoCircle, faKeyboard, faLanguage, faLink,
  faList, faLock, faMagic, faMap, faMapMarkerAlt, faMars, faMedkit, faMinusSquare, faPaintBrush, faPause,
  faPencilAlt, faPlay, faPlus, faPlusSquare, faPuzzlePiece, faQuestionCircle, faRedo, faSearch,
  faSearchLocation, faSearchMinus, faSearchPlus, faServer, faShareAlt, faSitemap, faSortAmountDown, faSpinner,
  faStar, faStepForward, faStickyNote, faStop, faSyncAlt, faTags, faThList, faThumbtack, faTimes, faTransgender,
  faTrashAlt, faTree, faUndo, faUniversity, faUnlink, faUpload, faUser, faUsers, faVenus, faWrench,
  // For the BeautifyMarker library
  faBabyCarriage, faBullseye, faHome, faIndustry, faInfinity, faStarOfDavid, faWater
);
dom.watch();

window.Bloodhound = require('corejs-typeahead/dist/bloodhound.min.js');

// See https://github.com/RubaXa/Sortable/issues/1229
// window.Sortable = require('sortablejs');
window.Sortable = Sortable;