From 5db1c28fd88b89ad950ce19020142587ad267094 Mon Sep 17 00:00:00 2001 From: Christian CUNAT-BRULE Date: Thu, 6 Aug 2026 20:51:00 +0200 Subject: [PATCH 1/3] Ajout des modules --- .env.example | 6 + .gitignore | 3 +- module/@popperjs/core@2.11.8/LICENSE.md | 20 + module/@popperjs/core@2.11.8/README.md | 376 + module/@popperjs/core@2.11.8/index.d.ts | 1 + .../core@2.11.8/lib/createPopper.d.ts | 9 + .../@popperjs/core@2.11.8/lib/createPopper.js | 199 + .../core@2.11.8/lib/createPopper.js.flow | 218 + .../core@2.11.8/lib/dom-utils/contains.d.ts | 1 + .../core@2.11.8/lib/dom-utils/contains.js | 23 + .../lib/dom-utils/contains.js.flow | 25 + .../lib/dom-utils/getBoundingClientRect.d.ts | 2 + .../lib/dom-utils/getBoundingClientRect.js | 41 + .../dom-utils/getBoundingClientRect.js.flow | 52 + .../lib/dom-utils/getClippingRect.d.ts | 3 + .../lib/dom-utils/getClippingRect.js | 70 + .../lib/dom-utils/getClippingRect.js.flow | 106 + .../lib/dom-utils/getCompositeRect.d.ts | 2 + .../lib/dom-utils/getCompositeRect.js | 58 + .../lib/dom-utils/getCompositeRect.js.flow | 64 + .../lib/dom-utils/getComputedStyle.d.ts | 1 + .../lib/dom-utils/getComputedStyle.js | 4 + .../lib/dom-utils/getComputedStyle.js.flow | 8 + .../lib/dom-utils/getDocumentElement.d.ts | 2 + .../lib/dom-utils/getDocumentElement.js | 6 + .../lib/dom-utils/getDocumentElement.js.flow | 15 + .../lib/dom-utils/getDocumentRect.d.ts | 2 + .../lib/dom-utils/getDocumentRect.js | 29 + .../lib/dom-utils/getDocumentRect.js.flow | 37 + .../lib/dom-utils/getHTMLElementScroll.d.ts | 4 + .../lib/dom-utils/getHTMLElementScroll.js | 6 + .../dom-utils/getHTMLElementScroll.js.flow | 8 + .../lib/dom-utils/getLayoutRect.d.ts | 2 + .../lib/dom-utils/getLayoutRect.js | 25 + .../lib/dom-utils/getLayoutRect.js.flow | 29 + .../lib/dom-utils/getNodeName.d.ts | 2 + .../core@2.11.8/lib/dom-utils/getNodeName.js | 3 + .../lib/dom-utils/getNodeName.js.flow | 6 + .../lib/dom-utils/getNodeScroll.d.ts | 5 + .../lib/dom-utils/getNodeScroll.js | 11 + .../lib/dom-utils/getNodeScroll.js.flow | 14 + .../lib/dom-utils/getOffsetParent.d.ts | 1 + .../lib/dom-utils/getOffsetParent.js | 69 + .../lib/dom-utils/getOffsetParent.js.flow | 93 + .../lib/dom-utils/getParentNode.d.ts | 1 + .../lib/dom-utils/getParentNode.js | 19 + .../lib/dom-utils/getParentNode.js.flow | 21 + .../lib/dom-utils/getScrollParent.d.ts | 1 + .../lib/dom-utils/getScrollParent.js | 16 + .../lib/dom-utils/getScrollParent.js.flow | 18 + .../lib/dom-utils/getViewportRect.d.ts | 7 + .../lib/dom-utils/getViewportRect.js | 31 + .../lib/dom-utils/getViewportRect.js.flow | 39 + .../core@2.11.8/lib/dom-utils/getWindow.d.ts | 1 + .../core@2.11.8/lib/dom-utils/getWindow.js | 12 + .../lib/dom-utils/getWindow.js.flow | 16 + .../lib/dom-utils/getWindowScroll.d.ts | 5 + .../lib/dom-utils/getWindowScroll.js | 10 + .../lib/dom-utils/getWindowScroll.js.flow | 14 + .../lib/dom-utils/getWindowScrollBarX.d.ts | 1 + .../lib/dom-utils/getWindowScrollBarX.js | 13 + .../lib/dom-utils/getWindowScrollBarX.js.flow | 18 + .../core@2.11.8/lib/dom-utils/instanceOf.d.ts | 4 + .../core@2.11.8/lib/dom-utils/instanceOf.js | 23 + .../lib/dom-utils/instanceOf.js.flow | 29 + .../lib/dom-utils/isLayoutViewport.d.ts | 1 + .../lib/dom-utils/isLayoutViewport.js | 4 + .../lib/dom-utils/isLayoutViewport.js.flow | 6 + .../lib/dom-utils/isScrollParent.d.ts | 1 + .../lib/dom-utils/isScrollParent.js | 10 + .../lib/dom-utils/isScrollParent.js.flow | 8 + .../lib/dom-utils/isTableElement.d.ts | 1 + .../lib/dom-utils/isTableElement.js | 4 + .../lib/dom-utils/isTableElement.js.flow | 6 + .../lib/dom-utils/listScrollParents.d.ts | 2 + .../lib/dom-utils/listScrollParents.js | 26 + .../lib/dom-utils/listScrollParents.js.flow | 33 + module/@popperjs/core@2.11.8/lib/enums.d.ts | 34 + module/@popperjs/core@2.11.8/lib/enums.js | 31 + .../@popperjs/core@2.11.8/lib/enums.js.flow | 91 + module/@popperjs/core@2.11.8/lib/index.d.ts | 6 + module/@popperjs/core@2.11.8/lib/index.js | 8 + .../@popperjs/core@2.11.8/lib/index.js.flow | 13 + .../lib/modifiers/applyStyles.d.ts | 4 + .../core@2.11.8/lib/modifiers/applyStyles.js | 84 + .../lib/modifiers/applyStyles.js.flow | 98 + .../core@2.11.8/lib/modifiers/arrow.d.ts | 13 + .../core@2.11.8/lib/modifiers/arrow.js | 90 + .../core@2.11.8/lib/modifiers/arrow.js.flow | 120 + .../lib/modifiers/computeStyles.d.ts | 38 + .../lib/modifiers/computeStyles.js | 169 + .../lib/modifiers/computeStyles.js.flow | 233 + .../lib/modifiers/eventListeners.d.ts | 8 + .../lib/modifiers/eventListeners.js | 49 + .../lib/modifiers/eventListeners.js.flow | 54 + .../core@2.11.8/lib/modifiers/flip.d.ts | 16 + .../core@2.11.8/lib/modifiers/flip.js | 147 + .../core@2.11.8/lib/modifiers/flip.js.flow | 177 + .../core@2.11.8/lib/modifiers/hide.d.ts | 4 + .../core@2.11.8/lib/modifiers/hide.js | 61 + .../core@2.11.8/lib/modifiers/hide.js.flow | 76 + .../core@2.11.8/lib/modifiers/index.d.ts | 9 + .../core@2.11.8/lib/modifiers/index.js | 9 + .../core@2.11.8/lib/modifiers/index.js.flow | 10 + .../core@2.11.8/lib/modifiers/offset.d.ts | 18 + .../core@2.11.8/lib/modifiers/offset.js | 54 + .../core@2.11.8/lib/modifiers/offset.js.flow | 71 + .../lib/modifiers/popperOffsets.d.ts | 4 + .../lib/modifiers/popperOffsets.js | 25 + .../lib/modifiers/popperOffsets.js.flow | 26 + .../lib/modifiers/preventOverflow.d.ts | 30 + .../lib/modifiers/preventOverflow.js | 142 + .../lib/modifiers/preventOverflow.js.flow | 220 + .../core@2.11.8/lib/popper-base.d.ts | 3 + .../@popperjs/core@2.11.8/lib/popper-base.js | 3 + .../core@2.11.8/lib/popper-base.js.flow | 7 + .../core@2.11.8/lib/popper-lite.d.ts | 5 + .../@popperjs/core@2.11.8/lib/popper-lite.js | 11 + .../core@2.11.8/lib/popper-lite.js.flow | 21 + module/@popperjs/core@2.11.8/lib/popper.d.ts | 7 + module/@popperjs/core@2.11.8/lib/popper.js | 20 + .../@popperjs/core@2.11.8/lib/popper.js.flow | 35 + module/@popperjs/core@2.11.8/lib/types.d.ts | 167 + module/@popperjs/core@2.11.8/lib/types.js | 0 .../@popperjs/core@2.11.8/lib/types.js.flow | 199 + .../lib/utils/computeAutoPlacement.d.ts | 12 + .../lib/utils/computeAutoPlacement.js | 43 + .../lib/utils/computeAutoPlacement.js.flow | 73 + .../core@2.11.8/lib/utils/computeOffsets.d.ts | 8 + .../core@2.11.8/lib/utils/computeOffsets.js | 70 + .../lib/utils/computeOffsets.js.flow | 82 + .../core@2.11.8/lib/utils/debounce.d.ts | 1 + .../core@2.11.8/lib/utils/debounce.js | 15 + .../core@2.11.8/lib/utils/debounce.js.flow | 17 + .../core@2.11.8/lib/utils/detectOverflow.d.ts | 12 + .../core@2.11.8/lib/utils/detectOverflow.js | 65 + .../lib/utils/detectOverflow.js.flow | 112 + .../lib/utils/expandToHashMap.d.ts | 3 + .../core@2.11.8/lib/utils/expandToHashMap.js | 6 + .../lib/utils/expandToHashMap.js.flow | 11 + .../core@2.11.8/lib/utils/getAltAxis.d.ts | 1 + .../core@2.11.8/lib/utils/getAltAxis.js | 3 + .../core@2.11.8/lib/utils/getAltAxis.js.flow | 5 + .../core@2.11.8/lib/utils/getAltLen.d.ts | 1 + .../core@2.11.8/lib/utils/getAltLen.js | 3 + .../core@2.11.8/lib/utils/getAltLen.js.flow | 5 + .../lib/utils/getBasePlacement.d.ts | 2 + .../core@2.11.8/lib/utils/getBasePlacement.js | 4 + .../lib/utils/getBasePlacement.js.flow | 8 + .../lib/utils/getFreshSideObject.d.ts | 2 + .../lib/utils/getFreshSideObject.js | 8 + .../lib/utils/getFreshSideObject.js.flow | 11 + .../lib/utils/getMainAxisFromPlacement.d.ts | 2 + .../lib/utils/getMainAxisFromPlacement.js | 3 + .../utils/getMainAxisFromPlacement.js.flow | 8 + .../lib/utils/getOppositePlacement.d.ts | 2 + .../lib/utils/getOppositePlacement.js | 11 + .../lib/utils/getOppositePlacement.js.flow | 11 + .../utils/getOppositeVariationPlacement.d.ts | 2 + .../utils/getOppositeVariationPlacement.js | 9 + .../getOppositeVariationPlacement.js.flow | 10 + .../core@2.11.8/lib/utils/getVariation.d.ts | 2 + .../core@2.11.8/lib/utils/getVariation.js | 3 + .../lib/utils/getVariation.js.flow | 6 + .../@popperjs/core@2.11.8/lib/utils/math.d.ts | 3 + .../@popperjs/core@2.11.8/lib/utils/math.js | 3 + .../core@2.11.8/lib/utils/math.js.flow | 4 + .../core@2.11.8/lib/utils/mergeByName.d.ts | 2 + .../core@2.11.8/lib/utils/mergeByName.js | 14 + .../core@2.11.8/lib/utils/mergeByName.js.flow | 22 + .../lib/utils/mergePaddingObject.d.ts | 2 + .../lib/utils/mergePaddingObject.js | 4 + .../lib/utils/mergePaddingObject.js.flow | 12 + .../core@2.11.8/lib/utils/orderModifiers.d.ts | 2 + .../core@2.11.8/lib/utils/orderModifiers.js | 44 + .../lib/utils/orderModifiers.js.flow | 59 + .../lib/utils/rectToClientRect.d.ts | 2 + .../core@2.11.8/lib/utils/rectToClientRect.js | 8 + .../lib/utils/rectToClientRect.js.flow | 12 + .../core@2.11.8/lib/utils/uniqueBy.d.ts | 1 + .../core@2.11.8/lib/utils/uniqueBy.js | 11 + .../core@2.11.8/lib/utils/uniqueBy.js.flow | 14 + .../core@2.11.8/lib/utils/userAgent.d.ts | 1 + .../core@2.11.8/lib/utils/userAgent.js | 11 + .../core@2.11.8/lib/utils/userAgent.js.flow | 20 + .../core@2.11.8/lib/utils/within.d.ts | 2 + .../@popperjs/core@2.11.8/lib/utils/within.js | 8 + .../core@2.11.8/lib/utils/within.js.flow | 11 + module/@popperjs/core@2.11.8/package.json | 119 + .../css/bootstrap-grid.css | 2050 +++ .../css/bootstrap-grid.css.map | 1 + .../css/bootstrap-grid.min.css | 7 + .../css/bootstrap-grid.min.css.map | 1 + .../css/bootstrap-reboot.css | 330 + .../css/bootstrap-reboot.css.map | 1 + .../css/bootstrap-reboot.min.css | 8 + .../css/bootstrap-reboot.min.css.map | 1 + module/bootstrap-4.0.0-dist/css/bootstrap.css | 8975 +++++++++ .../css/bootstrap.css.map | 1 + .../css/bootstrap.min.css | 7 + .../css/bootstrap.min.css.map | 1 + .../jquery-3.2.1.slim.min.js | 4 + .../js/bootstrap.bundle.js | 6328 +++++++ .../js/bootstrap.bundle.js.map | 1 + .../js/bootstrap.bundle.min.js | 7 + .../js/bootstrap.bundle.min.js.map | 1 + module/bootstrap-4.0.0-dist/js/bootstrap.js | 3894 ++++ .../bootstrap-4.0.0-dist/js/bootstrap.js.map | 1 + .../bootstrap-4.0.0-dist/js/bootstrap.min.js | 7 + .../js/bootstrap.min.js.map | 1 + module/bootstrap-4.0.0-dist/popper.min.js | 5 + module/bootstrap-icons/LICENSE | 21 + module/bootstrap-icons/README.md | 100 + module/bootstrap-icons/bootstrap-icons.svg | 1 + .../bootstrap-icons/font/bootstrap-icons.css | 2078 +++ .../bootstrap-icons/font/bootstrap-icons.json | 2052 +++ .../font/bootstrap-icons.min.css | 5 + .../bootstrap-icons/font/bootstrap-icons.scss | 2090 +++ .../font/fonts/bootstrap-icons.woff | Bin 0 -> 176030 bytes .../font/fonts/bootstrap-icons.woff2 | Bin 0 -> 130393 bytes .../bootstrap-icons/icons/0-circle-fill.svg | 4 + module/bootstrap-icons/icons/0-circle.svg | 4 + .../bootstrap-icons/icons/0-square-fill.svg | 4 + module/bootstrap-icons/icons/0-square.svg | 4 + .../bootstrap-icons/icons/1-circle-fill.svg | 3 + module/bootstrap-icons/icons/1-circle.svg | 3 + .../bootstrap-icons/icons/1-square-fill.svg | 3 + module/bootstrap-icons/icons/1-square.svg | 4 + module/bootstrap-icons/icons/123.svg | 3 + .../bootstrap-icons/icons/2-circle-fill.svg | 3 + module/bootstrap-icons/icons/2-circle.svg | 3 + .../bootstrap-icons/icons/2-square-fill.svg | 3 + module/bootstrap-icons/icons/2-square.svg | 4 + .../bootstrap-icons/icons/3-circle-fill.svg | 3 + module/bootstrap-icons/icons/3-circle.svg | 4 + .../bootstrap-icons/icons/3-square-fill.svg | 3 + module/bootstrap-icons/icons/3-square.svg | 4 + .../bootstrap-icons/icons/4-circle-fill.svg | 3 + module/bootstrap-icons/icons/4-circle.svg | 4 + .../bootstrap-icons/icons/4-square-fill.svg | 4 + module/bootstrap-icons/icons/4-square.svg | 4 + .../bootstrap-icons/icons/5-circle-fill.svg | 3 + module/bootstrap-icons/icons/5-circle.svg | 3 + .../bootstrap-icons/icons/5-square-fill.svg | 3 + module/bootstrap-icons/icons/5-square.svg | 4 + .../bootstrap-icons/icons/6-circle-fill.svg | 3 + module/bootstrap-icons/icons/6-circle.svg | 3 + .../bootstrap-icons/icons/6-square-fill.svg | 4 + module/bootstrap-icons/icons/6-square.svg | 4 + .../bootstrap-icons/icons/7-circle-fill.svg | 3 + module/bootstrap-icons/icons/7-circle.svg | 3 + .../bootstrap-icons/icons/7-square-fill.svg | 3 + module/bootstrap-icons/icons/7-square.svg | 4 + .../bootstrap-icons/icons/8-circle-fill.svg | 3 + module/bootstrap-icons/icons/8-circle.svg | 3 + .../bootstrap-icons/icons/8-square-fill.svg | 4 + module/bootstrap-icons/icons/8-square.svg | 4 + .../bootstrap-icons/icons/9-circle-fill.svg | 3 + module/bootstrap-icons/icons/9-circle.svg | 3 + .../bootstrap-icons/icons/9-square-fill.svg | 4 + module/bootstrap-icons/icons/9-square.svg | 4 + module/bootstrap-icons/icons/activity.svg | 3 + .../icons/airplane-engines-fill.svg | 3 + .../icons/airplane-engines.svg | 3 + .../bootstrap-icons/icons/airplane-fill.svg | 3 + module/bootstrap-icons/icons/airplane.svg | 3 + module/bootstrap-icons/icons/alarm-fill.svg | 3 + module/bootstrap-icons/icons/alarm.svg | 4 + module/bootstrap-icons/icons/alexa.svg | 3 + module/bootstrap-icons/icons/align-bottom.svg | 4 + module/bootstrap-icons/icons/align-center.svg | 3 + module/bootstrap-icons/icons/align-end.svg | 4 + module/bootstrap-icons/icons/align-middle.svg | 3 + module/bootstrap-icons/icons/align-start.svg | 4 + module/bootstrap-icons/icons/align-top.svg | 4 + module/bootstrap-icons/icons/alipay.svg | 4 + .../icons/alphabet-uppercase.svg | 3 + module/bootstrap-icons/icons/alphabet.svg | 3 + module/bootstrap-icons/icons/alt.svg | 3 + module/bootstrap-icons/icons/amazon.svg | 4 + module/bootstrap-icons/icons/amd.svg | 3 + module/bootstrap-icons/icons/android.svg | 3 + module/bootstrap-icons/icons/android2.svg | 3 + .../bootstrap-icons/icons/app-indicator.svg | 4 + module/bootstrap-icons/icons/app.svg | 3 + module/bootstrap-icons/icons/apple.svg | 4 + module/bootstrap-icons/icons/archive-fill.svg | 3 + module/bootstrap-icons/icons/archive.svg | 3 + .../icons/arrow-90deg-down.svg | 3 + .../icons/arrow-90deg-left.svg | 3 + .../icons/arrow-90deg-right.svg | 3 + .../bootstrap-icons/icons/arrow-90deg-up.svg | 3 + .../bootstrap-icons/icons/arrow-bar-down.svg | 3 + .../bootstrap-icons/icons/arrow-bar-left.svg | 3 + .../bootstrap-icons/icons/arrow-bar-right.svg | 3 + module/bootstrap-icons/icons/arrow-bar-up.svg | 3 + .../bootstrap-icons/icons/arrow-clockwise.svg | 4 + .../icons/arrow-counterclockwise.svg | 4 + .../icons/arrow-down-circle-fill.svg | 3 + .../icons/arrow-down-circle.svg | 3 + .../icons/arrow-down-left-circle-fill.svg | 3 + .../icons/arrow-down-left-circle.svg | 3 + .../icons/arrow-down-left-square-fill.svg | 3 + .../icons/arrow-down-left-square.svg | 3 + .../bootstrap-icons/icons/arrow-down-left.svg | 3 + .../icons/arrow-down-right-circle-fill.svg | 3 + .../icons/arrow-down-right-circle.svg | 3 + .../icons/arrow-down-right-square-fill.svg | 3 + .../icons/arrow-down-right-square.svg | 3 + .../icons/arrow-down-right.svg | 3 + .../icons/arrow-down-short.svg | 3 + .../icons/arrow-down-square-fill.svg | 3 + .../icons/arrow-down-square.svg | 3 + .../bootstrap-icons/icons/arrow-down-up.svg | 3 + module/bootstrap-icons/icons/arrow-down.svg | 3 + .../icons/arrow-left-circle-fill.svg | 3 + .../icons/arrow-left-circle.svg | 3 + .../icons/arrow-left-right.svg | 3 + .../icons/arrow-left-short.svg | 3 + .../icons/arrow-left-square-fill.svg | 3 + .../icons/arrow-left-square.svg | 3 + module/bootstrap-icons/icons/arrow-left.svg | 3 + module/bootstrap-icons/icons/arrow-repeat.svg | 4 + .../icons/arrow-return-left.svg | 3 + .../icons/arrow-return-right.svg | 3 + .../icons/arrow-right-circle-fill.svg | 3 + .../icons/arrow-right-circle.svg | 3 + .../icons/arrow-right-short.svg | 3 + .../icons/arrow-right-square-fill.svg | 3 + .../icons/arrow-right-square.svg | 3 + module/bootstrap-icons/icons/arrow-right.svg | 3 + .../icons/arrow-through-heart-fill.svg | 3 + .../icons/arrow-through-heart.svg | 3 + .../icons/arrow-up-circle-fill.svg | 3 + .../bootstrap-icons/icons/arrow-up-circle.svg | 3 + .../icons/arrow-up-left-circle-fill.svg | 3 + .../icons/arrow-up-left-circle.svg | 3 + .../icons/arrow-up-left-square-fill.svg | 3 + .../icons/arrow-up-left-square.svg | 3 + .../bootstrap-icons/icons/arrow-up-left.svg | 3 + .../icons/arrow-up-right-circle-fill.svg | 3 + .../icons/arrow-up-right-circle.svg | 3 + .../icons/arrow-up-right-square-fill.svg | 3 + .../icons/arrow-up-right-square.svg | 3 + .../bootstrap-icons/icons/arrow-up-right.svg | 3 + .../bootstrap-icons/icons/arrow-up-short.svg | 3 + .../icons/arrow-up-square-fill.svg | 3 + .../bootstrap-icons/icons/arrow-up-square.svg | 3 + module/bootstrap-icons/icons/arrow-up.svg | 3 + .../icons/arrows-angle-contract.svg | 3 + .../icons/arrows-angle-expand.svg | 3 + .../icons/arrows-collapse-vertical.svg | 3 + .../bootstrap-icons/icons/arrows-collapse.svg | 3 + .../icons/arrows-expand-vertical.svg | 3 + .../bootstrap-icons/icons/arrows-expand.svg | 3 + .../icons/arrows-fullscreen.svg | 3 + module/bootstrap-icons/icons/arrows-move.svg | 3 + .../bootstrap-icons/icons/arrows-vertical.svg | 3 + module/bootstrap-icons/icons/arrows.svg | 3 + .../icons/aspect-ratio-fill.svg | 3 + module/bootstrap-icons/icons/aspect-ratio.svg | 4 + module/bootstrap-icons/icons/asterisk.svg | 3 + module/bootstrap-icons/icons/at.svg | 3 + module/bootstrap-icons/icons/award-fill.svg | 4 + module/bootstrap-icons/icons/award.svg | 4 + module/bootstrap-icons/icons/back.svg | 3 + .../bootstrap-icons/icons/backpack-fill.svg | 4 + module/bootstrap-icons/icons/backpack.svg | 4 + .../bootstrap-icons/icons/backpack2-fill.svg | 4 + module/bootstrap-icons/icons/backpack2.svg | 5 + .../bootstrap-icons/icons/backpack3-fill.svg | 4 + module/bootstrap-icons/icons/backpack3.svg | 4 + .../bootstrap-icons/icons/backpack4-fill.svg | 4 + module/bootstrap-icons/icons/backpack4.svg | 4 + .../bootstrap-icons/icons/backspace-fill.svg | 3 + .../icons/backspace-reverse-fill.svg | 3 + .../icons/backspace-reverse.svg | 4 + module/bootstrap-icons/icons/backspace.svg | 4 + .../bootstrap-icons/icons/badge-3d-fill.svg | 4 + module/bootstrap-icons/icons/badge-3d.svg | 4 + .../bootstrap-icons/icons/badge-4k-fill.svg | 4 + module/bootstrap-icons/icons/badge-4k.svg | 4 + .../bootstrap-icons/icons/badge-8k-fill.svg | 4 + module/bootstrap-icons/icons/badge-8k.svg | 4 + .../bootstrap-icons/icons/badge-ad-fill.svg | 4 + module/bootstrap-icons/icons/badge-ad.svg | 4 + .../bootstrap-icons/icons/badge-ar-fill.svg | 4 + module/bootstrap-icons/icons/badge-ar.svg | 4 + .../bootstrap-icons/icons/badge-cc-fill.svg | 3 + module/bootstrap-icons/icons/badge-cc.svg | 4 + .../bootstrap-icons/icons/badge-hd-fill.svg | 4 + module/bootstrap-icons/icons/badge-hd.svg | 4 + .../bootstrap-icons/icons/badge-sd-fill.svg | 4 + module/bootstrap-icons/icons/badge-sd.svg | 3 + .../bootstrap-icons/icons/badge-tm-fill.svg | 3 + module/bootstrap-icons/icons/badge-tm.svg | 4 + .../bootstrap-icons/icons/badge-vo-fill.svg | 4 + module/bootstrap-icons/icons/badge-vo.svg | 4 + .../bootstrap-icons/icons/badge-vr-fill.svg | 4 + module/bootstrap-icons/icons/badge-vr.svg | 4 + .../bootstrap-icons/icons/badge-wc-fill.svg | 3 + module/bootstrap-icons/icons/badge-wc.svg | 4 + .../bootstrap-icons/icons/bag-check-fill.svg | 3 + module/bootstrap-icons/icons/bag-check.svg | 4 + .../bootstrap-icons/icons/bag-dash-fill.svg | 3 + module/bootstrap-icons/icons/bag-dash.svg | 4 + module/bootstrap-icons/icons/bag-fill.svg | 3 + .../bootstrap-icons/icons/bag-heart-fill.svg | 3 + module/bootstrap-icons/icons/bag-heart.svg | 3 + .../bootstrap-icons/icons/bag-plus-fill.svg | 3 + module/bootstrap-icons/icons/bag-plus.svg | 4 + module/bootstrap-icons/icons/bag-x-fill.svg | 3 + module/bootstrap-icons/icons/bag-x.svg | 4 + module/bootstrap-icons/icons/bag.svg | 3 + module/bootstrap-icons/icons/balloon-fill.svg | 3 + .../icons/balloon-heart-fill.svg | 3 + .../bootstrap-icons/icons/balloon-heart.svg | 3 + module/bootstrap-icons/icons/balloon.svg | 3 + module/bootstrap-icons/icons/ban-fill.svg | 3 + module/bootstrap-icons/icons/ban.svg | 3 + module/bootstrap-icons/icons/bandaid-fill.svg | 3 + module/bootstrap-icons/icons/bandaid.svg | 4 + module/bootstrap-icons/icons/bank.svg | 3 + module/bootstrap-icons/icons/bank2.svg | 3 + .../bootstrap-icons/icons/bar-chart-fill.svg | 3 + .../icons/bar-chart-line-fill.svg | 3 + .../bootstrap-icons/icons/bar-chart-line.svg | 3 + .../bootstrap-icons/icons/bar-chart-steps.svg | 3 + module/bootstrap-icons/icons/bar-chart.svg | 3 + module/bootstrap-icons/icons/basket-fill.svg | 3 + module/bootstrap-icons/icons/basket.svg | 3 + module/bootstrap-icons/icons/basket2-fill.svg | 3 + module/bootstrap-icons/icons/basket2.svg | 4 + module/bootstrap-icons/icons/basket3-fill.svg | 3 + module/bootstrap-icons/icons/basket3.svg | 3 + .../icons/battery-charging.svg | 6 + module/bootstrap-icons/icons/battery-full.svg | 4 + module/bootstrap-icons/icons/battery-half.svg | 4 + module/bootstrap-icons/icons/battery.svg | 3 + module/bootstrap-icons/icons/behance.svg | 3 + module/bootstrap-icons/icons/bell-fill.svg | 3 + .../bootstrap-icons/icons/bell-slash-fill.svg | 3 + module/bootstrap-icons/icons/bell-slash.svg | 3 + module/bootstrap-icons/icons/bell.svg | 3 + module/bootstrap-icons/icons/bezier.svg | 4 + module/bootstrap-icons/icons/bezier2.svg | 3 + module/bootstrap-icons/icons/bicycle.svg | 3 + module/bootstrap-icons/icons/bing.svg | 5 + .../bootstrap-icons/icons/binoculars-fill.svg | 3 + module/bootstrap-icons/icons/binoculars.svg | 3 + .../bootstrap-icons/icons/blockquote-left.svg | 3 + .../icons/blockquote-right.svg | 3 + module/bootstrap-icons/icons/bluetooth.svg | 3 + module/bootstrap-icons/icons/body-text.svg | 3 + module/bootstrap-icons/icons/book-fill.svg | 3 + module/bootstrap-icons/icons/book-half.svg | 3 + module/bootstrap-icons/icons/book.svg | 3 + .../icons/bookmark-check-fill.svg | 3 + .../bootstrap-icons/icons/bookmark-check.svg | 4 + .../icons/bookmark-dash-fill.svg | 3 + .../bootstrap-icons/icons/bookmark-dash.svg | 4 + .../bootstrap-icons/icons/bookmark-fill.svg | 3 + .../icons/bookmark-heart-fill.svg | 3 + .../bootstrap-icons/icons/bookmark-heart.svg | 4 + .../icons/bookmark-plus-fill.svg | 3 + .../bootstrap-icons/icons/bookmark-plus.svg | 4 + .../icons/bookmark-star-fill.svg | 3 + .../bootstrap-icons/icons/bookmark-star.svg | 4 + .../bootstrap-icons/icons/bookmark-x-fill.svg | 3 + module/bootstrap-icons/icons/bookmark-x.svg | 4 + module/bootstrap-icons/icons/bookmark.svg | 3 + .../bootstrap-icons/icons/bookmarks-fill.svg | 4 + module/bootstrap-icons/icons/bookmarks.svg | 4 + module/bootstrap-icons/icons/bookshelf.svg | 3 + module/bootstrap-icons/icons/boombox-fill.svg | 4 + module/bootstrap-icons/icons/boombox.svg | 6 + .../bootstrap-icons/icons/bootstrap-fill.svg | 4 + .../icons/bootstrap-reboot.svg | 4 + module/bootstrap-icons/icons/bootstrap.svg | 4 + module/bootstrap-icons/icons/border-all.svg | 3 + .../bootstrap-icons/icons/border-bottom.svg | 3 + .../bootstrap-icons/icons/border-center.svg | 3 + module/bootstrap-icons/icons/border-inner.svg | 5 + module/bootstrap-icons/icons/border-left.svg | 3 + .../bootstrap-icons/icons/border-middle.svg | 3 + module/bootstrap-icons/icons/border-outer.svg | 4 + module/bootstrap-icons/icons/border-right.svg | 3 + module/bootstrap-icons/icons/border-style.svg | 3 + module/bootstrap-icons/icons/border-top.svg | 3 + module/bootstrap-icons/icons/border-width.svg | 3 + module/bootstrap-icons/icons/border.svg | 3 + .../icons/bounding-box-circles.svg | 3 + module/bootstrap-icons/icons/bounding-box.svg | 3 + .../icons/box-arrow-down-left.svg | 4 + .../icons/box-arrow-down-right.svg | 4 + .../bootstrap-icons/icons/box-arrow-down.svg | 4 + .../icons/box-arrow-in-down-left.svg | 4 + .../icons/box-arrow-in-down-right.svg | 4 + .../icons/box-arrow-in-down.svg | 4 + .../icons/box-arrow-in-left.svg | 4 + .../icons/box-arrow-in-right.svg | 4 + .../icons/box-arrow-in-up-left.svg | 4 + .../icons/box-arrow-in-up-right.svg | 4 + .../bootstrap-icons/icons/box-arrow-in-up.svg | 4 + .../bootstrap-icons/icons/box-arrow-left.svg | 4 + .../bootstrap-icons/icons/box-arrow-right.svg | 4 + .../icons/box-arrow-up-left.svg | 4 + .../icons/box-arrow-up-right.svg | 4 + module/bootstrap-icons/icons/box-arrow-up.svg | 4 + module/bootstrap-icons/icons/box-fill.svg | 3 + .../bootstrap-icons/icons/box-seam-fill.svg | 3 + module/bootstrap-icons/icons/box-seam.svg | 3 + module/bootstrap-icons/icons/box.svg | 3 + module/bootstrap-icons/icons/box2-fill.svg | 3 + .../bootstrap-icons/icons/box2-heart-fill.svg | 3 + module/bootstrap-icons/icons/box2-heart.svg | 4 + module/bootstrap-icons/icons/box2.svg | 3 + module/bootstrap-icons/icons/boxes.svg | 3 + .../bootstrap-icons/icons/braces-asterisk.svg | 3 + module/bootstrap-icons/icons/braces.svg | 3 + module/bootstrap-icons/icons/bricks.svg | 3 + .../bootstrap-icons/icons/briefcase-fill.svg | 4 + module/bootstrap-icons/icons/briefcase.svg | 3 + .../icons/brightness-alt-high-fill.svg | 3 + .../icons/brightness-alt-high.svg | 3 + .../icons/brightness-alt-low-fill.svg | 3 + .../icons/brightness-alt-low.svg | 3 + .../icons/brightness-high-fill.svg | 3 + .../bootstrap-icons/icons/brightness-high.svg | 3 + .../icons/brightness-low-fill.svg | 3 + .../bootstrap-icons/icons/brightness-low.svg | 3 + module/bootstrap-icons/icons/brilliance.svg | 3 + .../bootstrap-icons/icons/broadcast-pin.svg | 3 + module/bootstrap-icons/icons/broadcast.svg | 3 + .../bootstrap-icons/icons/browser-chrome.svg | 3 + module/bootstrap-icons/icons/browser-edge.svg | 5 + .../bootstrap-icons/icons/browser-firefox.svg | 3 + .../bootstrap-icons/icons/browser-safari.svg | 3 + module/bootstrap-icons/icons/brush-fill.svg | 3 + module/bootstrap-icons/icons/brush.svg | 3 + module/bootstrap-icons/icons/bucket-fill.svg | 3 + module/bootstrap-icons/icons/bucket.svg | 3 + module/bootstrap-icons/icons/bug-fill.svg | 4 + module/bootstrap-icons/icons/bug.svg | 3 + module/bootstrap-icons/icons/building-add.svg | 5 + .../bootstrap-icons/icons/building-check.svg | 5 + .../bootstrap-icons/icons/building-dash.svg | 5 + .../bootstrap-icons/icons/building-down.svg | 5 + .../icons/building-exclamation.svg | 4 + .../icons/building-fill-add.svg | 4 + .../icons/building-fill-check.svg | 4 + .../icons/building-fill-dash.svg | 4 + .../icons/building-fill-down.svg | 4 + .../icons/building-fill-exclamation.svg | 4 + .../icons/building-fill-gear.svg | 4 + .../icons/building-fill-lock.svg | 4 + .../icons/building-fill-slash.svg | 4 + .../icons/building-fill-up.svg | 4 + .../bootstrap-icons/icons/building-fill-x.svg | 4 + .../bootstrap-icons/icons/building-fill.svg | 3 + .../bootstrap-icons/icons/building-gear.svg | 4 + .../bootstrap-icons/icons/building-lock.svg | 4 + .../bootstrap-icons/icons/building-slash.svg | 5 + module/bootstrap-icons/icons/building-up.svg | 5 + module/bootstrap-icons/icons/building-x.svg | 4 + module/bootstrap-icons/icons/building.svg | 4 + .../bootstrap-icons/icons/buildings-fill.svg | 3 + module/bootstrap-icons/icons/buildings.svg | 4 + module/bootstrap-icons/icons/bullseye.svg | 6 + .../bootstrap-icons/icons/bus-front-fill.svg | 3 + module/bootstrap-icons/icons/bus-front.svg | 4 + .../bootstrap-icons/icons/c-circle-fill.svg | 3 + module/bootstrap-icons/icons/c-circle.svg | 3 + .../bootstrap-icons/icons/c-square-fill.svg | 3 + module/bootstrap-icons/icons/c-square.svg | 4 + module/bootstrap-icons/icons/cake-fill.svg | 3 + module/bootstrap-icons/icons/cake.svg | 3 + module/bootstrap-icons/icons/cake2-fill.svg | 4 + module/bootstrap-icons/icons/cake2.svg | 3 + .../bootstrap-icons/icons/calculator-fill.svg | 3 + module/bootstrap-icons/icons/calculator.svg | 4 + .../icons/calendar-check-fill.svg | 3 + .../bootstrap-icons/icons/calendar-check.svg | 4 + .../icons/calendar-date-fill.svg | 4 + .../bootstrap-icons/icons/calendar-date.svg | 4 + .../icons/calendar-day-fill.svg | 3 + module/bootstrap-icons/icons/calendar-day.svg | 4 + .../icons/calendar-event-fill.svg | 3 + .../bootstrap-icons/icons/calendar-event.svg | 4 + .../bootstrap-icons/icons/calendar-fill.svg | 3 + .../icons/calendar-heart-fill.svg | 3 + .../bootstrap-icons/icons/calendar-heart.svg | 3 + .../icons/calendar-minus-fill.svg | 3 + .../bootstrap-icons/icons/calendar-minus.svg | 4 + .../icons/calendar-month-fill.svg | 4 + .../bootstrap-icons/icons/calendar-month.svg | 4 + .../icons/calendar-plus-fill.svg | 3 + .../bootstrap-icons/icons/calendar-plus.svg | 4 + .../icons/calendar-range-fill.svg | 3 + .../bootstrap-icons/icons/calendar-range.svg | 4 + .../icons/calendar-week-fill.svg | 3 + .../bootstrap-icons/icons/calendar-week.svg | 4 + .../bootstrap-icons/icons/calendar-x-fill.svg | 3 + module/bootstrap-icons/icons/calendar-x.svg | 4 + module/bootstrap-icons/icons/calendar.svg | 3 + .../icons/calendar2-check-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-check.svg | 5 + .../icons/calendar2-date-fill.svg | 4 + .../bootstrap-icons/icons/calendar2-date.svg | 5 + .../icons/calendar2-day-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-day.svg | 5 + .../icons/calendar2-event-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-event.svg | 5 + .../bootstrap-icons/icons/calendar2-fill.svg | 3 + .../icons/calendar2-heart-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-heart.svg | 3 + .../icons/calendar2-minus-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-minus.svg | 5 + .../icons/calendar2-month-fill.svg | 4 + .../bootstrap-icons/icons/calendar2-month.svg | 5 + .../icons/calendar2-plus-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-plus.svg | 4 + .../icons/calendar2-range-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-range.svg | 4 + .../icons/calendar2-week-fill.svg | 3 + .../bootstrap-icons/icons/calendar2-week.svg | 4 + .../icons/calendar2-x-fill.svg | 3 + module/bootstrap-icons/icons/calendar2-x.svg | 5 + module/bootstrap-icons/icons/calendar2.svg | 4 + .../icons/calendar3-event-fill.svg | 3 + .../bootstrap-icons/icons/calendar3-event.svg | 4 + .../bootstrap-icons/icons/calendar3-fill.svg | 3 + .../icons/calendar3-range-fill.svg | 3 + .../bootstrap-icons/icons/calendar3-range.svg | 4 + .../icons/calendar3-week-fill.svg | 3 + .../bootstrap-icons/icons/calendar3-week.svg | 4 + module/bootstrap-icons/icons/calendar3.svg | 4 + .../bootstrap-icons/icons/calendar4-event.svg | 4 + .../bootstrap-icons/icons/calendar4-range.svg | 4 + .../bootstrap-icons/icons/calendar4-week.svg | 4 + module/bootstrap-icons/icons/calendar4.svg | 3 + module/bootstrap-icons/icons/camera-fill.svg | 4 + .../icons/camera-reels-fill.svg | 5 + module/bootstrap-icons/icons/camera-reels.svg | 5 + .../icons/camera-video-fill.svg | 3 + .../icons/camera-video-off-fill.svg | 3 + .../icons/camera-video-off.svg | 3 + module/bootstrap-icons/icons/camera-video.svg | 3 + module/bootstrap-icons/icons/camera.svg | 4 + module/bootstrap-icons/icons/camera2.svg | 4 + .../bootstrap-icons/icons/capslock-fill.svg | 3 + module/bootstrap-icons/icons/capslock.svg | 3 + module/bootstrap-icons/icons/capsule-pill.svg | 3 + module/bootstrap-icons/icons/capsule.svg | 3 + .../bootstrap-icons/icons/car-front-fill.svg | 3 + module/bootstrap-icons/icons/car-front.svg | 4 + .../bootstrap-icons/icons/card-checklist.svg | 4 + module/bootstrap-icons/icons/card-heading.svg | 4 + module/bootstrap-icons/icons/card-image.svg | 4 + module/bootstrap-icons/icons/card-list.svg | 4 + module/bootstrap-icons/icons/card-text.svg | 4 + .../bootstrap-icons/icons/caret-down-fill.svg | 3 + .../icons/caret-down-square-fill.svg | 3 + .../icons/caret-down-square.svg | 4 + module/bootstrap-icons/icons/caret-down.svg | 3 + .../bootstrap-icons/icons/caret-left-fill.svg | 3 + .../icons/caret-left-square-fill.svg | 3 + .../icons/caret-left-square.svg | 4 + module/bootstrap-icons/icons/caret-left.svg | 3 + .../icons/caret-right-fill.svg | 3 + .../icons/caret-right-square-fill.svg | 3 + .../icons/caret-right-square.svg | 4 + module/bootstrap-icons/icons/caret-right.svg | 3 + .../bootstrap-icons/icons/caret-up-fill.svg | 3 + .../icons/caret-up-square-fill.svg | 3 + .../bootstrap-icons/icons/caret-up-square.svg | 4 + module/bootstrap-icons/icons/caret-up.svg | 3 + .../bootstrap-icons/icons/cart-check-fill.svg | 3 + module/bootstrap-icons/icons/cart-check.svg | 4 + .../bootstrap-icons/icons/cart-dash-fill.svg | 3 + module/bootstrap-icons/icons/cart-dash.svg | 4 + module/bootstrap-icons/icons/cart-fill.svg | 3 + .../bootstrap-icons/icons/cart-plus-fill.svg | 3 + module/bootstrap-icons/icons/cart-plus.svg | 4 + module/bootstrap-icons/icons/cart-x-fill.svg | 3 + module/bootstrap-icons/icons/cart-x.svg | 4 + module/bootstrap-icons/icons/cart.svg | 3 + module/bootstrap-icons/icons/cart2.svg | 3 + module/bootstrap-icons/icons/cart3.svg | 3 + module/bootstrap-icons/icons/cart4.svg | 3 + module/bootstrap-icons/icons/cash-coin.svg | 6 + module/bootstrap-icons/icons/cash-stack.svg | 4 + module/bootstrap-icons/icons/cash.svg | 4 + .../bootstrap-icons/icons/cassette-fill.svg | 4 + module/bootstrap-icons/icons/cassette.svg | 4 + module/bootstrap-icons/icons/cast.svg | 4 + .../bootstrap-icons/icons/cc-circle-fill.svg | 3 + module/bootstrap-icons/icons/cc-circle.svg | 3 + .../bootstrap-icons/icons/cc-square-fill.svg | 3 + module/bootstrap-icons/icons/cc-square.svg | 4 + .../bootstrap-icons/icons/chat-dots-fill.svg | 3 + module/bootstrap-icons/icons/chat-dots.svg | 4 + module/bootstrap-icons/icons/chat-fill.svg | 3 + .../bootstrap-icons/icons/chat-heart-fill.svg | 3 + module/bootstrap-icons/icons/chat-heart.svg | 3 + .../icons/chat-left-dots-fill.svg | 3 + .../bootstrap-icons/icons/chat-left-dots.svg | 4 + .../bootstrap-icons/icons/chat-left-fill.svg | 3 + .../icons/chat-left-heart-fill.svg | 3 + .../bootstrap-icons/icons/chat-left-heart.svg | 4 + .../icons/chat-left-quote-fill.svg | 3 + .../bootstrap-icons/icons/chat-left-quote.svg | 4 + .../icons/chat-left-text-fill.svg | 3 + .../bootstrap-icons/icons/chat-left-text.svg | 4 + module/bootstrap-icons/icons/chat-left.svg | 3 + .../bootstrap-icons/icons/chat-quote-fill.svg | 3 + module/bootstrap-icons/icons/chat-quote.svg | 4 + .../icons/chat-right-dots-fill.svg | 3 + .../bootstrap-icons/icons/chat-right-dots.svg | 4 + .../bootstrap-icons/icons/chat-right-fill.svg | 3 + .../icons/chat-right-heart-fill.svg | 3 + .../icons/chat-right-heart.svg | 4 + .../icons/chat-right-quote-fill.svg | 3 + .../icons/chat-right-quote.svg | 4 + .../icons/chat-right-text-fill.svg | 3 + .../bootstrap-icons/icons/chat-right-text.svg | 4 + module/bootstrap-icons/icons/chat-right.svg | 3 + .../icons/chat-square-dots-fill.svg | 3 + .../icons/chat-square-dots.svg | 4 + .../icons/chat-square-fill.svg | 3 + .../icons/chat-square-heart-fill.svg | 3 + .../icons/chat-square-heart.svg | 4 + .../icons/chat-square-quote-fill.svg | 3 + .../icons/chat-square-quote.svg | 4 + .../icons/chat-square-text-fill.svg | 3 + .../icons/chat-square-text.svg | 4 + module/bootstrap-icons/icons/chat-square.svg | 3 + .../bootstrap-icons/icons/chat-text-fill.svg | 3 + module/bootstrap-icons/icons/chat-text.svg | 4 + module/bootstrap-icons/icons/chat.svg | 3 + module/bootstrap-icons/icons/check-all.svg | 3 + .../icons/check-circle-fill.svg | 3 + module/bootstrap-icons/icons/check-circle.svg | 4 + module/bootstrap-icons/icons/check-lg.svg | 3 + .../icons/check-square-fill.svg | 3 + module/bootstrap-icons/icons/check-square.svg | 4 + module/bootstrap-icons/icons/check.svg | 3 + module/bootstrap-icons/icons/check2-all.svg | 4 + .../bootstrap-icons/icons/check2-circle.svg | 4 + .../bootstrap-icons/icons/check2-square.svg | 4 + module/bootstrap-icons/icons/check2.svg | 3 + .../icons/chevron-bar-contract.svg | 3 + .../icons/chevron-bar-down.svg | 3 + .../icons/chevron-bar-expand.svg | 3 + .../icons/chevron-bar-left.svg | 3 + .../icons/chevron-bar-right.svg | 3 + .../bootstrap-icons/icons/chevron-bar-up.svg | 3 + .../icons/chevron-compact-down.svg | 3 + .../icons/chevron-compact-left.svg | 3 + .../icons/chevron-compact-right.svg | 3 + .../icons/chevron-compact-up.svg | 3 + .../icons/chevron-contract.svg | 3 + .../icons/chevron-double-down.svg | 4 + .../icons/chevron-double-left.svg | 4 + .../icons/chevron-double-right.svg | 4 + .../icons/chevron-double-up.svg | 4 + module/bootstrap-icons/icons/chevron-down.svg | 3 + .../bootstrap-icons/icons/chevron-expand.svg | 3 + module/bootstrap-icons/icons/chevron-left.svg | 3 + .../bootstrap-icons/icons/chevron-right.svg | 3 + module/bootstrap-icons/icons/chevron-up.svg | 3 + module/bootstrap-icons/icons/circle-fill.svg | 3 + module/bootstrap-icons/icons/circle-half.svg | 3 + .../bootstrap-icons/icons/circle-square.svg | 4 + module/bootstrap-icons/icons/circle.svg | 3 + .../icons/clipboard-check-fill.svg | 4 + .../bootstrap-icons/icons/clipboard-check.svg | 5 + .../icons/clipboard-data-fill.svg | 4 + .../bootstrap-icons/icons/clipboard-data.svg | 5 + .../bootstrap-icons/icons/clipboard-fill.svg | 3 + .../icons/clipboard-heart-fill.svg | 4 + .../bootstrap-icons/icons/clipboard-heart.svg | 5 + .../icons/clipboard-minus-fill.svg | 4 + .../bootstrap-icons/icons/clipboard-minus.svg | 5 + .../icons/clipboard-plus-fill.svg | 4 + .../bootstrap-icons/icons/clipboard-plus.svg | 5 + .../bootstrap-icons/icons/clipboard-pulse.svg | 3 + .../icons/clipboard-x-fill.svg | 4 + module/bootstrap-icons/icons/clipboard-x.svg | 5 + module/bootstrap-icons/icons/clipboard.svg | 4 + .../icons/clipboard2-check-fill.svg | 4 + .../icons/clipboard2-check.svg | 5 + .../icons/clipboard2-data-fill.svg | 4 + .../bootstrap-icons/icons/clipboard2-data.svg | 5 + .../bootstrap-icons/icons/clipboard2-fill.svg | 4 + .../icons/clipboard2-heart-fill.svg | 4 + .../icons/clipboard2-heart.svg | 5 + .../icons/clipboard2-minus-fill.svg | 4 + .../icons/clipboard2-minus.svg | 5 + .../icons/clipboard2-plus-fill.svg | 4 + .../bootstrap-icons/icons/clipboard2-plus.svg | 5 + .../icons/clipboard2-pulse-fill.svg | 4 + .../icons/clipboard2-pulse.svg | 5 + .../icons/clipboard2-x-fill.svg | 4 + module/bootstrap-icons/icons/clipboard2-x.svg | 5 + module/bootstrap-icons/icons/clipboard2.svg | 4 + module/bootstrap-icons/icons/clock-fill.svg | 3 + .../bootstrap-icons/icons/clock-history.svg | 5 + module/bootstrap-icons/icons/clock.svg | 4 + .../icons/cloud-arrow-down-fill.svg | 3 + .../icons/cloud-arrow-down.svg | 4 + .../icons/cloud-arrow-up-fill.svg | 3 + .../bootstrap-icons/icons/cloud-arrow-up.svg | 4 + .../icons/cloud-check-fill.svg | 3 + module/bootstrap-icons/icons/cloud-check.svg | 4 + .../icons/cloud-download-fill.svg | 3 + .../bootstrap-icons/icons/cloud-download.svg | 4 + .../icons/cloud-drizzle-fill.svg | 3 + .../bootstrap-icons/icons/cloud-drizzle.svg | 3 + module/bootstrap-icons/icons/cloud-fill.svg | 3 + .../bootstrap-icons/icons/cloud-fog-fill.svg | 3 + module/bootstrap-icons/icons/cloud-fog.svg | 3 + .../bootstrap-icons/icons/cloud-fog2-fill.svg | 3 + module/bootstrap-icons/icons/cloud-fog2.svg | 3 + .../bootstrap-icons/icons/cloud-hail-fill.svg | 3 + module/bootstrap-icons/icons/cloud-hail.svg | 3 + .../bootstrap-icons/icons/cloud-haze-fill.svg | 3 + module/bootstrap-icons/icons/cloud-haze.svg | 3 + .../icons/cloud-haze2-fill.svg | 3 + module/bootstrap-icons/icons/cloud-haze2.svg | 3 + .../icons/cloud-lightning-fill.svg | 3 + .../icons/cloud-lightning-rain-fill.svg | 3 + .../icons/cloud-lightning-rain.svg | 3 + .../bootstrap-icons/icons/cloud-lightning.svg | 3 + .../icons/cloud-minus-fill.svg | 3 + module/bootstrap-icons/icons/cloud-minus.svg | 4 + .../bootstrap-icons/icons/cloud-moon-fill.svg | 4 + module/bootstrap-icons/icons/cloud-moon.svg | 4 + .../bootstrap-icons/icons/cloud-plus-fill.svg | 3 + module/bootstrap-icons/icons/cloud-plus.svg | 4 + .../bootstrap-icons/icons/cloud-rain-fill.svg | 3 + .../icons/cloud-rain-heavy-fill.svg | 3 + .../icons/cloud-rain-heavy.svg | 3 + module/bootstrap-icons/icons/cloud-rain.svg | 3 + .../icons/cloud-slash-fill.svg | 3 + module/bootstrap-icons/icons/cloud-slash.svg | 4 + .../icons/cloud-sleet-fill.svg | 3 + module/bootstrap-icons/icons/cloud-sleet.svg | 3 + .../bootstrap-icons/icons/cloud-snow-fill.svg | 3 + module/bootstrap-icons/icons/cloud-snow.svg | 3 + .../bootstrap-icons/icons/cloud-sun-fill.svg | 4 + module/bootstrap-icons/icons/cloud-sun.svg | 4 + .../icons/cloud-upload-fill.svg | 3 + module/bootstrap-icons/icons/cloud-upload.svg | 4 + module/bootstrap-icons/icons/cloud.svg | 3 + module/bootstrap-icons/icons/clouds-fill.svg | 4 + module/bootstrap-icons/icons/clouds.svg | 4 + module/bootstrap-icons/icons/cloudy-fill.svg | 3 + module/bootstrap-icons/icons/cloudy.svg | 3 + module/bootstrap-icons/icons/code-slash.svg | 3 + module/bootstrap-icons/icons/code-square.svg | 4 + module/bootstrap-icons/icons/code.svg | 3 + module/bootstrap-icons/icons/coin.svg | 5 + .../bootstrap-icons/icons/collection-fill.svg | 3 + .../icons/collection-play-fill.svg | 3 + .../bootstrap-icons/icons/collection-play.svg | 4 + module/bootstrap-icons/icons/collection.svg | 3 + module/bootstrap-icons/icons/columns-gap.svg | 3 + module/bootstrap-icons/icons/columns.svg | 3 + module/bootstrap-icons/icons/command.svg | 3 + module/bootstrap-icons/icons/compass-fill.svg | 3 + module/bootstrap-icons/icons/compass.svg | 4 + module/bootstrap-icons/icons/cone-striped.svg | 3 + module/bootstrap-icons/icons/cone.svg | 3 + module/bootstrap-icons/icons/controller.svg | 4 + module/bootstrap-icons/icons/cookie.svg | 4 + module/bootstrap-icons/icons/copy.svg | 3 + module/bootstrap-icons/icons/cpu-fill.svg | 4 + module/bootstrap-icons/icons/cpu.svg | 3 + .../icons/credit-card-2-back-fill.svg | 3 + .../icons/credit-card-2-back.svg | 4 + .../icons/credit-card-2-front-fill.svg | 3 + .../icons/credit-card-2-front.svg | 4 + .../icons/credit-card-fill.svg | 3 + module/bootstrap-icons/icons/credit-card.svg | 4 + module/bootstrap-icons/icons/crop.svg | 3 + module/bootstrap-icons/icons/crosshair.svg | 3 + module/bootstrap-icons/icons/crosshair2.svg | 3 + module/bootstrap-icons/icons/cup-fill.svg | 3 + module/bootstrap-icons/icons/cup-hot-fill.svg | 4 + module/bootstrap-icons/icons/cup-hot.svg | 4 + module/bootstrap-icons/icons/cup-straw.svg | 3 + module/bootstrap-icons/icons/cup.svg | 3 + .../icons/currency-bitcoin.svg | 3 + .../bootstrap-icons/icons/currency-dollar.svg | 3 + .../bootstrap-icons/icons/currency-euro.svg | 3 + .../icons/currency-exchange.svg | 3 + .../bootstrap-icons/icons/currency-pound.svg | 3 + .../bootstrap-icons/icons/currency-rupee.svg | 3 + module/bootstrap-icons/icons/currency-yen.svg | 3 + module/bootstrap-icons/icons/cursor-fill.svg | 3 + module/bootstrap-icons/icons/cursor-text.svg | 3 + module/bootstrap-icons/icons/cursor.svg | 3 + .../icons/dash-circle-dotted.svg | 3 + .../icons/dash-circle-fill.svg | 3 + module/bootstrap-icons/icons/dash-circle.svg | 4 + module/bootstrap-icons/icons/dash-lg.svg | 3 + .../icons/dash-square-dotted.svg | 3 + .../icons/dash-square-fill.svg | 3 + module/bootstrap-icons/icons/dash-square.svg | 4 + module/bootstrap-icons/icons/dash.svg | 3 + module/bootstrap-icons/icons/database-add.svg | 4 + .../bootstrap-icons/icons/database-check.svg | 4 + .../bootstrap-icons/icons/database-dash.svg | 4 + .../bootstrap-icons/icons/database-down.svg | 4 + .../icons/database-exclamation.svg | 4 + .../icons/database-fill-add.svg | 4 + .../icons/database-fill-check.svg | 4 + .../icons/database-fill-dash.svg | 4 + .../icons/database-fill-down.svg | 4 + .../icons/database-fill-exclamation.svg | 5 + .../icons/database-fill-gear.svg | 4 + .../icons/database-fill-lock.svg | 5 + .../icons/database-fill-slash.svg | 4 + .../icons/database-fill-up.svg | 4 + .../bootstrap-icons/icons/database-fill-x.svg | 5 + .../bootstrap-icons/icons/database-fill.svg | 6 + .../bootstrap-icons/icons/database-gear.svg | 4 + .../bootstrap-icons/icons/database-lock.svg | 4 + .../bootstrap-icons/icons/database-slash.svg | 4 + module/bootstrap-icons/icons/database-up.svg | 4 + module/bootstrap-icons/icons/database-x.svg | 4 + module/bootstrap-icons/icons/database.svg | 3 + .../bootstrap-icons/icons/device-hdd-fill.svg | 4 + module/bootstrap-icons/icons/device-hdd.svg | 5 + .../bootstrap-icons/icons/device-ssd-fill.svg | 4 + module/bootstrap-icons/icons/device-ssd.svg | 4 + .../bootstrap-icons/icons/diagram-2-fill.svg | 3 + module/bootstrap-icons/icons/diagram-2.svg | 3 + .../bootstrap-icons/icons/diagram-3-fill.svg | 3 + module/bootstrap-icons/icons/diagram-3.svg | 3 + module/bootstrap-icons/icons/diamond-fill.svg | 3 + module/bootstrap-icons/icons/diamond-half.svg | 3 + module/bootstrap-icons/icons/diamond.svg | 3 + module/bootstrap-icons/icons/dice-1-fill.svg | 3 + module/bootstrap-icons/icons/dice-1.svg | 4 + module/bootstrap-icons/icons/dice-2-fill.svg | 3 + module/bootstrap-icons/icons/dice-2.svg | 4 + module/bootstrap-icons/icons/dice-3-fill.svg | 3 + module/bootstrap-icons/icons/dice-3.svg | 4 + module/bootstrap-icons/icons/dice-4-fill.svg | 3 + module/bootstrap-icons/icons/dice-4.svg | 4 + module/bootstrap-icons/icons/dice-5-fill.svg | 3 + module/bootstrap-icons/icons/dice-5.svg | 4 + module/bootstrap-icons/icons/dice-6-fill.svg | 3 + module/bootstrap-icons/icons/dice-6.svg | 4 + module/bootstrap-icons/icons/disc-fill.svg | 3 + module/bootstrap-icons/icons/disc.svg | 4 + module/bootstrap-icons/icons/discord.svg | 3 + module/bootstrap-icons/icons/display-fill.svg | 3 + module/bootstrap-icons/icons/display.svg | 3 + .../icons/displayport-fill.svg | 3 + module/bootstrap-icons/icons/displayport.svg | 4 + .../icons/distribute-horizontal.svg | 4 + .../icons/distribute-vertical.svg | 4 + .../icons/door-closed-fill.svg | 3 + module/bootstrap-icons/icons/door-closed.svg | 4 + .../bootstrap-icons/icons/door-open-fill.svg | 3 + module/bootstrap-icons/icons/door-open.svg | 4 + module/bootstrap-icons/icons/dot.svg | 3 + module/bootstrap-icons/icons/download.svg | 4 + module/bootstrap-icons/icons/dpad-fill.svg | 3 + module/bootstrap-icons/icons/dpad.svg | 4 + module/bootstrap-icons/icons/dribbble.svg | 3 + module/bootstrap-icons/icons/dropbox.svg | 3 + module/bootstrap-icons/icons/droplet-fill.svg | 3 + module/bootstrap-icons/icons/droplet-half.svg | 4 + module/bootstrap-icons/icons/droplet.svg | 4 + module/bootstrap-icons/icons/duffle-fill.svg | 3 + module/bootstrap-icons/icons/duffle.svg | 4 + module/bootstrap-icons/icons/ear-fill.svg | 3 + module/bootstrap-icons/icons/ear.svg | 3 + module/bootstrap-icons/icons/earbuds.svg | 3 + module/bootstrap-icons/icons/easel-fill.svg | 3 + module/bootstrap-icons/icons/easel.svg | 3 + module/bootstrap-icons/icons/easel2-fill.svg | 4 + module/bootstrap-icons/icons/easel2.svg | 3 + module/bootstrap-icons/icons/easel3-fill.svg | 3 + module/bootstrap-icons/icons/easel3.svg | 3 + module/bootstrap-icons/icons/egg-fill.svg | 3 + module/bootstrap-icons/icons/egg-fried.svg | 4 + module/bootstrap-icons/icons/egg.svg | 3 + module/bootstrap-icons/icons/eject-fill.svg | 3 + module/bootstrap-icons/icons/eject.svg | 3 + .../icons/emoji-angry-fill.svg | 3 + module/bootstrap-icons/icons/emoji-angry.svg | 4 + .../icons/emoji-astonished-fill.svg | 3 + .../icons/emoji-astonished.svg | 4 + .../icons/emoji-dizzy-fill.svg | 3 + module/bootstrap-icons/icons/emoji-dizzy.svg | 4 + .../icons/emoji-expressionless-fill.svg | 3 + .../icons/emoji-expressionless.svg | 4 + .../icons/emoji-frown-fill.svg | 3 + module/bootstrap-icons/icons/emoji-frown.svg | 4 + .../icons/emoji-grimace-fill.svg | 3 + .../bootstrap-icons/icons/emoji-grimace.svg | 4 + .../bootstrap-icons/icons/emoji-grin-fill.svg | 3 + module/bootstrap-icons/icons/emoji-grin.svg | 4 + .../icons/emoji-heart-eyes-fill.svg | 3 + .../icons/emoji-heart-eyes.svg | 4 + .../bootstrap-icons/icons/emoji-kiss-fill.svg | 3 + module/bootstrap-icons/icons/emoji-kiss.svg | 3 + .../icons/emoji-laughing-fill.svg | 3 + .../bootstrap-icons/icons/emoji-laughing.svg | 4 + .../icons/emoji-neutral-fill.svg | 3 + .../bootstrap-icons/icons/emoji-neutral.svg | 4 + .../icons/emoji-smile-fill.svg | 3 + .../icons/emoji-smile-upside-down-fill.svg | 3 + .../icons/emoji-smile-upside-down.svg | 4 + module/bootstrap-icons/icons/emoji-smile.svg | 4 + .../icons/emoji-sunglasses-fill.svg | 3 + .../icons/emoji-sunglasses.svg | 4 + .../icons/emoji-surprise-fill.svg | 3 + .../bootstrap-icons/icons/emoji-surprise.svg | 4 + .../bootstrap-icons/icons/emoji-tear-fill.svg | 3 + module/bootstrap-icons/icons/emoji-tear.svg | 4 + .../bootstrap-icons/icons/emoji-wink-fill.svg | 3 + module/bootstrap-icons/icons/emoji-wink.svg | 4 + .../icons/envelope-arrow-down-fill.svg | 4 + .../icons/envelope-arrow-down.svg | 4 + .../icons/envelope-arrow-up-fill.svg | 4 + .../icons/envelope-arrow-up.svg | 4 + .../icons/envelope-at-fill.svg | 4 + module/bootstrap-icons/icons/envelope-at.svg | 4 + .../icons/envelope-check-fill.svg | 4 + .../bootstrap-icons/icons/envelope-check.svg | 4 + .../icons/envelope-dash-fill.svg | 4 + .../bootstrap-icons/icons/envelope-dash.svg | 4 + .../icons/envelope-exclamation-fill.svg | 4 + .../icons/envelope-exclamation.svg | 4 + .../bootstrap-icons/icons/envelope-fill.svg | 3 + .../icons/envelope-heart-fill.svg | 4 + .../bootstrap-icons/icons/envelope-heart.svg | 3 + .../icons/envelope-open-fill.svg | 3 + .../icons/envelope-open-heart-fill.svg | 4 + .../icons/envelope-open-heart.svg | 3 + .../bootstrap-icons/icons/envelope-open.svg | 3 + .../icons/envelope-paper-fill.svg | 3 + .../icons/envelope-paper-heart-fill.svg | 3 + .../icons/envelope-paper-heart.svg | 3 + .../bootstrap-icons/icons/envelope-paper.svg | 3 + .../icons/envelope-plus-fill.svg | 4 + .../bootstrap-icons/icons/envelope-plus.svg | 4 + .../icons/envelope-slash-fill.svg | 4 + .../bootstrap-icons/icons/envelope-slash.svg | 4 + .../bootstrap-icons/icons/envelope-x-fill.svg | 4 + module/bootstrap-icons/icons/envelope-x.svg | 4 + module/bootstrap-icons/icons/envelope.svg | 3 + module/bootstrap-icons/icons/eraser-fill.svg | 3 + module/bootstrap-icons/icons/eraser.svg | 3 + module/bootstrap-icons/icons/escape.svg | 4 + module/bootstrap-icons/icons/ethernet.svg | 4 + .../bootstrap-icons/icons/ev-front-fill.svg | 3 + module/bootstrap-icons/icons/ev-front.svg | 4 + .../bootstrap-icons/icons/ev-station-fill.svg | 3 + module/bootstrap-icons/icons/ev-station.svg | 4 + .../icons/exclamation-circle-fill.svg | 3 + .../icons/exclamation-circle.svg | 4 + .../icons/exclamation-diamond-fill.svg | 3 + .../icons/exclamation-diamond.svg | 4 + .../bootstrap-icons/icons/exclamation-lg.svg | 3 + .../icons/exclamation-octagon-fill.svg | 3 + .../icons/exclamation-octagon.svg | 4 + .../icons/exclamation-square-fill.svg | 3 + .../icons/exclamation-square.svg | 4 + .../icons/exclamation-triangle-fill.svg | 3 + .../icons/exclamation-triangle.svg | 4 + module/bootstrap-icons/icons/exclamation.svg | 3 + module/bootstrap-icons/icons/exclude.svg | 3 + .../bootstrap-icons/icons/explicit-fill.svg | 3 + module/bootstrap-icons/icons/explicit.svg | 4 + module/bootstrap-icons/icons/exposure.svg | 4 + module/bootstrap-icons/icons/eye-fill.svg | 4 + .../bootstrap-icons/icons/eye-slash-fill.svg | 4 + module/bootstrap-icons/icons/eye-slash.svg | 5 + module/bootstrap-icons/icons/eye.svg | 4 + module/bootstrap-icons/icons/eyedropper.svg | 3 + module/bootstrap-icons/icons/eyeglasses.svg | 3 + module/bootstrap-icons/icons/facebook.svg | 3 + module/bootstrap-icons/icons/fan.svg | 4 + .../icons/fast-forward-btn-fill.svg | 3 + .../icons/fast-forward-btn.svg | 4 + .../icons/fast-forward-circle-fill.svg | 3 + .../icons/fast-forward-circle.svg | 4 + .../icons/fast-forward-fill.svg | 4 + module/bootstrap-icons/icons/fast-forward.svg | 4 + module/bootstrap-icons/icons/feather.svg | 3 + module/bootstrap-icons/icons/feather2.svg | 3 + .../icons/file-arrow-down-fill.svg | 3 + .../bootstrap-icons/icons/file-arrow-down.svg | 4 + .../icons/file-arrow-up-fill.svg | 3 + .../bootstrap-icons/icons/file-arrow-up.svg | 4 + .../icons/file-bar-graph-fill.svg | 3 + .../bootstrap-icons/icons/file-bar-graph.svg | 4 + .../icons/file-binary-fill.svg | 4 + module/bootstrap-icons/icons/file-binary.svg | 4 + .../bootstrap-icons/icons/file-break-fill.svg | 3 + module/bootstrap-icons/icons/file-break.svg | 3 + .../bootstrap-icons/icons/file-check-fill.svg | 3 + module/bootstrap-icons/icons/file-check.svg | 4 + .../bootstrap-icons/icons/file-code-fill.svg | 3 + module/bootstrap-icons/icons/file-code.svg | 4 + .../bootstrap-icons/icons/file-diff-fill.svg | 3 + module/bootstrap-icons/icons/file-diff.svg | 4 + .../icons/file-earmark-arrow-down-fill.svg | 3 + .../icons/file-earmark-arrow-down.svg | 4 + .../icons/file-earmark-arrow-up-fill.svg | 3 + .../icons/file-earmark-arrow-up.svg | 4 + .../icons/file-earmark-bar-graph-fill.svg | 3 + .../icons/file-earmark-bar-graph.svg | 4 + .../icons/file-earmark-binary-fill.svg | 4 + .../icons/file-earmark-binary.svg | 4 + .../icons/file-earmark-break-fill.svg | 3 + .../icons/file-earmark-break.svg | 3 + .../icons/file-earmark-check-fill.svg | 3 + .../icons/file-earmark-check.svg | 4 + .../icons/file-earmark-code-fill.svg | 3 + .../icons/file-earmark-code.svg | 4 + .../icons/file-earmark-diff-fill.svg | 3 + .../icons/file-earmark-diff.svg | 4 + .../icons/file-earmark-easel-fill.svg | 4 + .../icons/file-earmark-easel.svg | 4 + .../icons/file-earmark-excel-fill.svg | 3 + .../icons/file-earmark-excel.svg | 4 + .../icons/file-earmark-fill.svg | 3 + .../icons/file-earmark-font-fill.svg | 3 + .../icons/file-earmark-font.svg | 4 + .../icons/file-earmark-image-fill.svg | 4 + .../icons/file-earmark-image.svg | 4 + .../icons/file-earmark-lock-fill.svg | 4 + .../icons/file-earmark-lock.svg | 4 + .../icons/file-earmark-lock2-fill.svg | 4 + .../icons/file-earmark-lock2.svg | 4 + .../icons/file-earmark-medical-fill.svg | 3 + .../icons/file-earmark-medical.svg | 4 + .../icons/file-earmark-minus-fill.svg | 3 + .../icons/file-earmark-minus.svg | 4 + .../icons/file-earmark-music-fill.svg | 3 + .../icons/file-earmark-music.svg | 4 + .../icons/file-earmark-pdf-fill.svg | 4 + .../icons/file-earmark-pdf.svg | 4 + .../icons/file-earmark-person-fill.svg | 3 + .../icons/file-earmark-person.svg | 4 + .../icons/file-earmark-play-fill.svg | 3 + .../icons/file-earmark-play.svg | 4 + .../icons/file-earmark-plus-fill.svg | 3 + .../icons/file-earmark-plus.svg | 4 + .../icons/file-earmark-post-fill.svg | 3 + .../icons/file-earmark-post.svg | 4 + .../icons/file-earmark-ppt-fill.svg | 4 + .../icons/file-earmark-ppt.svg | 4 + .../icons/file-earmark-richtext-fill.svg | 3 + .../icons/file-earmark-richtext.svg | 4 + .../icons/file-earmark-ruled-fill.svg | 3 + .../icons/file-earmark-ruled.svg | 3 + .../icons/file-earmark-slides-fill.svg | 4 + .../icons/file-earmark-slides.svg | 4 + .../icons/file-earmark-spreadsheet-fill.svg | 4 + .../icons/file-earmark-spreadsheet.svg | 3 + .../icons/file-earmark-text-fill.svg | 3 + .../icons/file-earmark-text.svg | 4 + .../icons/file-earmark-word-fill.svg | 3 + .../icons/file-earmark-word.svg | 4 + .../icons/file-earmark-x-fill.svg | 3 + .../bootstrap-icons/icons/file-earmark-x.svg | 4 + .../icons/file-earmark-zip-fill.svg | 4 + .../icons/file-earmark-zip.svg | 4 + module/bootstrap-icons/icons/file-earmark.svg | 3 + .../bootstrap-icons/icons/file-easel-fill.svg | 4 + module/bootstrap-icons/icons/file-easel.svg | 4 + .../bootstrap-icons/icons/file-excel-fill.svg | 3 + module/bootstrap-icons/icons/file-excel.svg | 4 + module/bootstrap-icons/icons/file-fill.svg | 3 + .../bootstrap-icons/icons/file-font-fill.svg | 3 + module/bootstrap-icons/icons/file-font.svg | 4 + .../bootstrap-icons/icons/file-image-fill.svg | 4 + module/bootstrap-icons/icons/file-image.svg | 4 + .../bootstrap-icons/icons/file-lock-fill.svg | 4 + module/bootstrap-icons/icons/file-lock.svg | 4 + .../bootstrap-icons/icons/file-lock2-fill.svg | 4 + module/bootstrap-icons/icons/file-lock2.svg | 4 + .../icons/file-medical-fill.svg | 3 + module/bootstrap-icons/icons/file-medical.svg | 4 + .../bootstrap-icons/icons/file-minus-fill.svg | 3 + module/bootstrap-icons/icons/file-minus.svg | 4 + .../bootstrap-icons/icons/file-music-fill.svg | 3 + module/bootstrap-icons/icons/file-music.svg | 4 + .../bootstrap-icons/icons/file-pdf-fill.svg | 4 + module/bootstrap-icons/icons/file-pdf.svg | 4 + .../icons/file-person-fill.svg | 3 + module/bootstrap-icons/icons/file-person.svg | 4 + .../bootstrap-icons/icons/file-play-fill.svg | 3 + module/bootstrap-icons/icons/file-play.svg | 4 + .../bootstrap-icons/icons/file-plus-fill.svg | 3 + module/bootstrap-icons/icons/file-plus.svg | 4 + .../bootstrap-icons/icons/file-post-fill.svg | 3 + module/bootstrap-icons/icons/file-post.svg | 4 + .../bootstrap-icons/icons/file-ppt-fill.svg | 4 + module/bootstrap-icons/icons/file-ppt.svg | 4 + .../icons/file-richtext-fill.svg | 3 + .../bootstrap-icons/icons/file-richtext.svg | 4 + .../bootstrap-icons/icons/file-ruled-fill.svg | 3 + module/bootstrap-icons/icons/file-ruled.svg | 3 + .../icons/file-slides-fill.svg | 4 + module/bootstrap-icons/icons/file-slides.svg | 4 + .../icons/file-spreadsheet-fill.svg | 3 + .../icons/file-spreadsheet.svg | 3 + .../bootstrap-icons/icons/file-text-fill.svg | 3 + module/bootstrap-icons/icons/file-text.svg | 4 + .../bootstrap-icons/icons/file-word-fill.svg | 3 + module/bootstrap-icons/icons/file-word.svg | 4 + module/bootstrap-icons/icons/file-x-fill.svg | 3 + module/bootstrap-icons/icons/file-x.svg | 4 + .../bootstrap-icons/icons/file-zip-fill.svg | 4 + module/bootstrap-icons/icons/file-zip.svg | 4 + module/bootstrap-icons/icons/file.svg | 3 + module/bootstrap-icons/icons/files-alt.svg | 3 + module/bootstrap-icons/icons/files.svg | 3 + module/bootstrap-icons/icons/filetype-aac.svg | 3 + module/bootstrap-icons/icons/filetype-ai.svg | 3 + module/bootstrap-icons/icons/filetype-bmp.svg | 3 + module/bootstrap-icons/icons/filetype-cs.svg | 3 + module/bootstrap-icons/icons/filetype-css.svg | 3 + module/bootstrap-icons/icons/filetype-csv.svg | 3 + module/bootstrap-icons/icons/filetype-doc.svg | 3 + .../bootstrap-icons/icons/filetype-docx.svg | 3 + module/bootstrap-icons/icons/filetype-exe.svg | 3 + module/bootstrap-icons/icons/filetype-gif.svg | 3 + .../bootstrap-icons/icons/filetype-heic.svg | 3 + .../bootstrap-icons/icons/filetype-html.svg | 3 + .../bootstrap-icons/icons/filetype-java.svg | 3 + module/bootstrap-icons/icons/filetype-jpg.svg | 3 + module/bootstrap-icons/icons/filetype-js.svg | 3 + .../bootstrap-icons/icons/filetype-json.svg | 3 + module/bootstrap-icons/icons/filetype-jsx.svg | 3 + module/bootstrap-icons/icons/filetype-key.svg | 3 + module/bootstrap-icons/icons/filetype-m4p.svg | 3 + module/bootstrap-icons/icons/filetype-md.svg | 3 + module/bootstrap-icons/icons/filetype-mdx.svg | 3 + module/bootstrap-icons/icons/filetype-mov.svg | 3 + module/bootstrap-icons/icons/filetype-mp3.svg | 3 + module/bootstrap-icons/icons/filetype-mp4.svg | 3 + module/bootstrap-icons/icons/filetype-otf.svg | 3 + module/bootstrap-icons/icons/filetype-pdf.svg | 3 + module/bootstrap-icons/icons/filetype-php.svg | 3 + module/bootstrap-icons/icons/filetype-png.svg | 3 + module/bootstrap-icons/icons/filetype-ppt.svg | 3 + .../bootstrap-icons/icons/filetype-pptx.svg | 3 + module/bootstrap-icons/icons/filetype-psd.svg | 3 + module/bootstrap-icons/icons/filetype-py.svg | 3 + module/bootstrap-icons/icons/filetype-raw.svg | 3 + module/bootstrap-icons/icons/filetype-rb.svg | 3 + .../bootstrap-icons/icons/filetype-sass.svg | 3 + .../bootstrap-icons/icons/filetype-scss.svg | 3 + module/bootstrap-icons/icons/filetype-sh.svg | 3 + module/bootstrap-icons/icons/filetype-sql.svg | 3 + module/bootstrap-icons/icons/filetype-svg.svg | 3 + .../bootstrap-icons/icons/filetype-tiff.svg | 3 + module/bootstrap-icons/icons/filetype-tsx.svg | 3 + module/bootstrap-icons/icons/filetype-ttf.svg | 3 + module/bootstrap-icons/icons/filetype-txt.svg | 3 + module/bootstrap-icons/icons/filetype-wav.svg | 3 + .../bootstrap-icons/icons/filetype-woff.svg | 3 + module/bootstrap-icons/icons/filetype-xls.svg | 3 + .../bootstrap-icons/icons/filetype-xlsx.svg | 3 + module/bootstrap-icons/icons/filetype-xml.svg | 3 + module/bootstrap-icons/icons/filetype-yml.svg | 3 + module/bootstrap-icons/icons/film.svg | 3 + .../icons/filter-circle-fill.svg | 3 + .../bootstrap-icons/icons/filter-circle.svg | 4 + module/bootstrap-icons/icons/filter-left.svg | 3 + module/bootstrap-icons/icons/filter-right.svg | 3 + .../icons/filter-square-fill.svg | 3 + .../bootstrap-icons/icons/filter-square.svg | 4 + module/bootstrap-icons/icons/filter.svg | 3 + module/bootstrap-icons/icons/fingerprint.svg | 7 + module/bootstrap-icons/icons/fire.svg | 3 + module/bootstrap-icons/icons/flag-fill.svg | 3 + module/bootstrap-icons/icons/flag.svg | 3 + module/bootstrap-icons/icons/floppy-fill.svg | 4 + module/bootstrap-icons/icons/floppy.svg | 4 + module/bootstrap-icons/icons/floppy2-fill.svg | 4 + module/bootstrap-icons/icons/floppy2.svg | 3 + module/bootstrap-icons/icons/flower1.svg | 3 + module/bootstrap-icons/icons/flower2.svg | 3 + module/bootstrap-icons/icons/flower3.svg | 3 + module/bootstrap-icons/icons/folder-check.svg | 4 + module/bootstrap-icons/icons/folder-fill.svg | 3 + module/bootstrap-icons/icons/folder-minus.svg | 4 + module/bootstrap-icons/icons/folder-plus.svg | 4 + .../icons/folder-symlink-fill.svg | 3 + .../bootstrap-icons/icons/folder-symlink.svg | 4 + module/bootstrap-icons/icons/folder-x.svg | 4 + module/bootstrap-icons/icons/folder.svg | 3 + module/bootstrap-icons/icons/folder2-open.svg | 3 + module/bootstrap-icons/icons/folder2.svg | 3 + module/bootstrap-icons/icons/fonts.svg | 3 + module/bootstrap-icons/icons/forward-fill.svg | 3 + module/bootstrap-icons/icons/forward.svg | 3 + module/bootstrap-icons/icons/front.svg | 3 + .../icons/fuel-pump-diesel-fill.svg | 4 + .../icons/fuel-pump-diesel.svg | 4 + .../bootstrap-icons/icons/fuel-pump-fill.svg | 3 + module/bootstrap-icons/icons/fuel-pump.svg | 4 + .../bootstrap-icons/icons/fullscreen-exit.svg | 3 + module/bootstrap-icons/icons/fullscreen.svg | 3 + module/bootstrap-icons/icons/funnel-fill.svg | 3 + module/bootstrap-icons/icons/funnel.svg | 3 + module/bootstrap-icons/icons/gear-fill.svg | 3 + .../icons/gear-wide-connected.svg | 3 + module/bootstrap-icons/icons/gear-wide.svg | 3 + module/bootstrap-icons/icons/gear.svg | 4 + module/bootstrap-icons/icons/gem.svg | 3 + .../icons/gender-ambiguous.svg | 3 + .../bootstrap-icons/icons/gender-female.svg | 3 + module/bootstrap-icons/icons/gender-male.svg | 3 + .../bootstrap-icons/icons/gender-neuter.svg | 3 + module/bootstrap-icons/icons/gender-trans.svg | 3 + module/bootstrap-icons/icons/geo-alt-fill.svg | 3 + module/bootstrap-icons/icons/geo-alt.svg | 4 + module/bootstrap-icons/icons/geo-fill.svg | 3 + module/bootstrap-icons/icons/geo.svg | 3 + module/bootstrap-icons/icons/gift-fill.svg | 3 + module/bootstrap-icons/icons/gift.svg | 3 + module/bootstrap-icons/icons/git.svg | 3 + module/bootstrap-icons/icons/github.svg | 3 + module/bootstrap-icons/icons/gitlab.svg | 3 + .../bootstrap-icons/icons/globe-americas.svg | 3 + .../icons/globe-asia-australia.svg | 4 + .../icons/globe-central-south-asia.svg | 3 + .../icons/globe-europe-africa.svg | 3 + module/bootstrap-icons/icons/globe.svg | 3 + module/bootstrap-icons/icons/globe2.svg | 3 + module/bootstrap-icons/icons/google-play.svg | 3 + module/bootstrap-icons/icons/google.svg | 3 + module/bootstrap-icons/icons/gpu-card.svg | 5 + .../icons/graph-down-arrow.svg | 3 + module/bootstrap-icons/icons/graph-down.svg | 3 + .../bootstrap-icons/icons/graph-up-arrow.svg | 3 + module/bootstrap-icons/icons/graph-up.svg | 3 + .../bootstrap-icons/icons/grid-1x2-fill.svg | 3 + module/bootstrap-icons/icons/grid-1x2.svg | 3 + .../icons/grid-3x2-gap-fill.svg | 3 + module/bootstrap-icons/icons/grid-3x2-gap.svg | 3 + module/bootstrap-icons/icons/grid-3x2.svg | 3 + .../icons/grid-3x3-gap-fill.svg | 3 + module/bootstrap-icons/icons/grid-3x3-gap.svg | 3 + module/bootstrap-icons/icons/grid-3x3.svg | 3 + module/bootstrap-icons/icons/grid-fill.svg | 3 + module/bootstrap-icons/icons/grid.svg | 3 + .../bootstrap-icons/icons/grip-horizontal.svg | 3 + .../bootstrap-icons/icons/grip-vertical.svg | 3 + .../bootstrap-icons/icons/h-circle-fill.svg | 3 + module/bootstrap-icons/icons/h-circle.svg | 3 + .../bootstrap-icons/icons/h-square-fill.svg | 3 + module/bootstrap-icons/icons/h-square.svg | 4 + module/bootstrap-icons/icons/hammer.svg | 3 + .../bootstrap-icons/icons/hand-index-fill.svg | 3 + .../icons/hand-index-thumb-fill.svg | 3 + .../icons/hand-index-thumb.svg | 3 + module/bootstrap-icons/icons/hand-index.svg | 3 + .../icons/hand-thumbs-down-fill.svg | 3 + .../icons/hand-thumbs-down.svg | 3 + .../icons/hand-thumbs-up-fill.svg | 3 + .../bootstrap-icons/icons/hand-thumbs-up.svg | 3 + module/bootstrap-icons/icons/handbag-fill.svg | 3 + module/bootstrap-icons/icons/handbag.svg | 3 + module/bootstrap-icons/icons/hash.svg | 3 + module/bootstrap-icons/icons/hdd-fill.svg | 3 + .../icons/hdd-network-fill.svg | 3 + module/bootstrap-icons/icons/hdd-network.svg | 4 + .../bootstrap-icons/icons/hdd-rack-fill.svg | 3 + module/bootstrap-icons/icons/hdd-rack.svg | 4 + .../bootstrap-icons/icons/hdd-stack-fill.svg | 3 + module/bootstrap-icons/icons/hdd-stack.svg | 5 + module/bootstrap-icons/icons/hdd.svg | 4 + module/bootstrap-icons/icons/hdmi-fill.svg | 3 + module/bootstrap-icons/icons/hdmi.svg | 4 + module/bootstrap-icons/icons/headphones.svg | 3 + module/bootstrap-icons/icons/headset-vr.svg | 4 + module/bootstrap-icons/icons/headset.svg | 3 + module/bootstrap-icons/icons/heart-arrow.svg | 3 + module/bootstrap-icons/icons/heart-fill.svg | 3 + module/bootstrap-icons/icons/heart-half.svg | 3 + .../icons/heart-pulse-fill.svg | 4 + module/bootstrap-icons/icons/heart-pulse.svg | 4 + module/bootstrap-icons/icons/heart.svg | 3 + .../bootstrap-icons/icons/heartbreak-fill.svg | 3 + module/bootstrap-icons/icons/heartbreak.svg | 3 + module/bootstrap-icons/icons/hearts.svg | 3 + .../bootstrap-icons/icons/heptagon-fill.svg | 3 + .../bootstrap-icons/icons/heptagon-half.svg | 3 + module/bootstrap-icons/icons/heptagon.svg | 3 + module/bootstrap-icons/icons/hexagon-fill.svg | 3 + module/bootstrap-icons/icons/hexagon-half.svg | 3 + module/bootstrap-icons/icons/hexagon.svg | 3 + module/bootstrap-icons/icons/highlighter.svg | 3 + module/bootstrap-icons/icons/highlights.svg | 3 + .../bootstrap-icons/icons/hospital-fill.svg | 3 + module/bootstrap-icons/icons/hospital.svg | 4 + .../icons/hourglass-bottom.svg | 3 + .../bootstrap-icons/icons/hourglass-split.svg | 3 + .../bootstrap-icons/icons/hourglass-top.svg | 3 + module/bootstrap-icons/icons/hourglass.svg | 3 + .../bootstrap-icons/icons/house-add-fill.svg | 5 + module/bootstrap-icons/icons/house-add.svg | 4 + .../icons/house-check-fill.svg | 5 + module/bootstrap-icons/icons/house-check.svg | 4 + .../bootstrap-icons/icons/house-dash-fill.svg | 5 + module/bootstrap-icons/icons/house-dash.svg | 4 + .../bootstrap-icons/icons/house-door-fill.svg | 3 + module/bootstrap-icons/icons/house-door.svg | 3 + .../bootstrap-icons/icons/house-down-fill.svg | 5 + module/bootstrap-icons/icons/house-down.svg | 4 + .../icons/house-exclamation-fill.svg | 5 + .../icons/house-exclamation.svg | 4 + module/bootstrap-icons/icons/house-fill.svg | 4 + .../bootstrap-icons/icons/house-gear-fill.svg | 5 + module/bootstrap-icons/icons/house-gear.svg | 4 + .../icons/house-heart-fill.svg | 4 + module/bootstrap-icons/icons/house-heart.svg | 4 + .../bootstrap-icons/icons/house-lock-fill.svg | 5 + module/bootstrap-icons/icons/house-lock.svg | 4 + .../icons/house-slash-fill.svg | 5 + module/bootstrap-icons/icons/house-slash.svg | 4 + .../bootstrap-icons/icons/house-up-fill.svg | 5 + module/bootstrap-icons/icons/house-up.svg | 4 + module/bootstrap-icons/icons/house-x-fill.svg | 5 + module/bootstrap-icons/icons/house-x.svg | 4 + module/bootstrap-icons/icons/house.svg | 3 + module/bootstrap-icons/icons/houses-fill.svg | 4 + module/bootstrap-icons/icons/houses.svg | 3 + module/bootstrap-icons/icons/hr.svg | 3 + module/bootstrap-icons/icons/hurricane.svg | 3 + module/bootstrap-icons/icons/hypnotize.svg | 4 + module/bootstrap-icons/icons/image-alt.svg | 3 + module/bootstrap-icons/icons/image-fill.svg | 3 + module/bootstrap-icons/icons/image.svg | 4 + module/bootstrap-icons/icons/images.svg | 4 + module/bootstrap-icons/icons/inbox-fill.svg | 3 + module/bootstrap-icons/icons/inbox.svg | 3 + module/bootstrap-icons/icons/inboxes-fill.svg | 3 + module/bootstrap-icons/icons/inboxes.svg | 3 + module/bootstrap-icons/icons/incognito.svg | 3 + module/bootstrap-icons/icons/indent.svg | 4 + module/bootstrap-icons/icons/infinity.svg | 3 + .../icons/info-circle-fill.svg | 3 + module/bootstrap-icons/icons/info-circle.svg | 4 + module/bootstrap-icons/icons/info-lg.svg | 3 + .../icons/info-square-fill.svg | 3 + module/bootstrap-icons/icons/info-square.svg | 4 + module/bootstrap-icons/icons/info.svg | 3 + .../icons/input-cursor-text.svg | 4 + module/bootstrap-icons/icons/input-cursor.svg | 4 + module/bootstrap-icons/icons/instagram.svg | 3 + module/bootstrap-icons/icons/intersect.svg | 3 + .../bootstrap-icons/icons/journal-album.svg | 5 + .../icons/journal-arrow-down.svg | 5 + .../icons/journal-arrow-up.svg | 5 + .../icons/journal-bookmark-fill.svg | 5 + .../icons/journal-bookmark.svg | 5 + .../bootstrap-icons/icons/journal-check.svg | 5 + module/bootstrap-icons/icons/journal-code.svg | 5 + .../bootstrap-icons/icons/journal-medical.svg | 5 + .../bootstrap-icons/icons/journal-minus.svg | 5 + module/bootstrap-icons/icons/journal-plus.svg | 5 + .../icons/journal-richtext.svg | 5 + module/bootstrap-icons/icons/journal-text.svg | 5 + module/bootstrap-icons/icons/journal-x.svg | 5 + module/bootstrap-icons/icons/journal.svg | 4 + module/bootstrap-icons/icons/journals.svg | 4 + module/bootstrap-icons/icons/joystick.svg | 4 + module/bootstrap-icons/icons/justify-left.svg | 3 + .../bootstrap-icons/icons/justify-right.svg | 3 + module/bootstrap-icons/icons/justify.svg | 3 + module/bootstrap-icons/icons/kanban-fill.svg | 3 + module/bootstrap-icons/icons/kanban.svg | 4 + module/bootstrap-icons/icons/key-fill.svg | 3 + module/bootstrap-icons/icons/key.svg | 4 + .../bootstrap-icons/icons/keyboard-fill.svg | 3 + module/bootstrap-icons/icons/keyboard.svg | 4 + module/bootstrap-icons/icons/ladder.svg | 3 + module/bootstrap-icons/icons/lamp-fill.svg | 4 + module/bootstrap-icons/icons/lamp.svg | 4 + module/bootstrap-icons/icons/laptop-fill.svg | 3 + module/bootstrap-icons/icons/laptop.svg | 3 + .../bootstrap-icons/icons/layer-backward.svg | 4 + .../bootstrap-icons/icons/layer-forward.svg | 4 + module/bootstrap-icons/icons/layers-fill.svg | 4 + module/bootstrap-icons/icons/layers-half.svg | 3 + module/bootstrap-icons/icons/layers.svg | 3 + .../icons/layout-sidebar-inset-reverse.svg | 4 + .../icons/layout-sidebar-inset.svg | 4 + .../icons/layout-sidebar-reverse.svg | 3 + .../bootstrap-icons/icons/layout-sidebar.svg | 3 + module/bootstrap-icons/icons/layout-split.svg | 3 + .../icons/layout-text-sidebar-reverse.svg | 4 + .../icons/layout-text-sidebar.svg | 4 + .../icons/layout-text-window-reverse.svg | 4 + .../icons/layout-text-window.svg | 4 + .../icons/layout-three-columns.svg | 3 + module/bootstrap-icons/icons/layout-wtf.svg | 3 + .../bootstrap-icons/icons/life-preserver.svg | 3 + .../bootstrap-icons/icons/lightbulb-fill.svg | 3 + .../icons/lightbulb-off-fill.svg | 3 + .../bootstrap-icons/icons/lightbulb-off.svg | 3 + module/bootstrap-icons/icons/lightbulb.svg | 3 + .../icons/lightning-charge-fill.svg | 3 + .../icons/lightning-charge.svg | 3 + .../bootstrap-icons/icons/lightning-fill.svg | 3 + module/bootstrap-icons/icons/lightning.svg | 3 + module/bootstrap-icons/icons/line.svg | 3 + module/bootstrap-icons/icons/link-45deg.svg | 4 + module/bootstrap-icons/icons/link.svg | 4 + module/bootstrap-icons/icons/linkedin.svg | 3 + module/bootstrap-icons/icons/list-check.svg | 3 + .../icons/list-columns-reverse.svg | 3 + module/bootstrap-icons/icons/list-columns.svg | 3 + module/bootstrap-icons/icons/list-nested.svg | 3 + module/bootstrap-icons/icons/list-ol.svg | 4 + module/bootstrap-icons/icons/list-stars.svg | 4 + module/bootstrap-icons/icons/list-task.svg | 5 + module/bootstrap-icons/icons/list-ul.svg | 3 + module/bootstrap-icons/icons/list.svg | 3 + module/bootstrap-icons/icons/lock-fill.svg | 3 + module/bootstrap-icons/icons/lock.svg | 3 + module/bootstrap-icons/icons/luggage-fill.svg | 4 + module/bootstrap-icons/icons/luggage.svg | 4 + module/bootstrap-icons/icons/lungs-fill.svg | 3 + module/bootstrap-icons/icons/lungs.svg | 3 + module/bootstrap-icons/icons/magic.svg | 3 + module/bootstrap-icons/icons/magnet-fill.svg | 3 + module/bootstrap-icons/icons/magnet.svg | 3 + module/bootstrap-icons/icons/mailbox-flag.svg | 4 + module/bootstrap-icons/icons/mailbox.svg | 4 + .../bootstrap-icons/icons/mailbox2-flag.svg | 4 + module/bootstrap-icons/icons/mailbox2.svg | 4 + module/bootstrap-icons/icons/map-fill.svg | 3 + module/bootstrap-icons/icons/map.svg | 3 + .../bootstrap-icons/icons/markdown-fill.svg | 3 + module/bootstrap-icons/icons/markdown.svg | 6 + module/bootstrap-icons/icons/marker-tip.svg | 3 + module/bootstrap-icons/icons/mask.svg | 3 + module/bootstrap-icons/icons/mastodon.svg | 3 + module/bootstrap-icons/icons/medium.svg | 3 + .../bootstrap-icons/icons/megaphone-fill.svg | 3 + module/bootstrap-icons/icons/megaphone.svg | 3 + module/bootstrap-icons/icons/memory.svg | 3 + .../bootstrap-icons/icons/menu-app-fill.svg | 3 + module/bootstrap-icons/icons/menu-app.svg | 3 + .../icons/menu-button-fill.svg | 3 + .../icons/menu-button-wide-fill.svg | 3 + .../icons/menu-button-wide.svg | 4 + module/bootstrap-icons/icons/menu-button.svg | 4 + module/bootstrap-icons/icons/menu-down.svg | 3 + module/bootstrap-icons/icons/menu-up.svg | 3 + module/bootstrap-icons/icons/messenger.svg | 3 + module/bootstrap-icons/icons/meta.svg | 3 + module/bootstrap-icons/icons/mic-fill.svg | 4 + .../bootstrap-icons/icons/mic-mute-fill.svg | 4 + module/bootstrap-icons/icons/mic-mute.svg | 4 + module/bootstrap-icons/icons/mic.svg | 4 + .../bootstrap-icons/icons/microsoft-teams.svg | 4 + module/bootstrap-icons/icons/microsoft.svg | 3 + .../bootstrap-icons/icons/minecart-loaded.svg | 4 + module/bootstrap-icons/icons/minecart.svg | 3 + module/bootstrap-icons/icons/modem-fill.svg | 3 + module/bootstrap-icons/icons/modem.svg | 4 + module/bootstrap-icons/icons/moisture.svg | 3 + module/bootstrap-icons/icons/moon-fill.svg | 3 + .../bootstrap-icons/icons/moon-stars-fill.svg | 4 + module/bootstrap-icons/icons/moon-stars.svg | 4 + module/bootstrap-icons/icons/moon.svg | 3 + .../icons/mortarboard-fill.svg | 4 + module/bootstrap-icons/icons/mortarboard.svg | 4 + .../icons/motherboard-fill.svg | 4 + module/bootstrap-icons/icons/motherboard.svg | 4 + module/bootstrap-icons/icons/mouse-fill.svg | 3 + module/bootstrap-icons/icons/mouse.svg | 3 + module/bootstrap-icons/icons/mouse2-fill.svg | 3 + module/bootstrap-icons/icons/mouse2.svg | 3 + module/bootstrap-icons/icons/mouse3-fill.svg | 3 + module/bootstrap-icons/icons/mouse3.svg | 3 + .../icons/music-note-beamed.svg | 5 + .../bootstrap-icons/icons/music-note-list.svg | 6 + module/bootstrap-icons/icons/music-note.svg | 5 + .../icons/music-player-fill.svg | 4 + module/bootstrap-icons/icons/music-player.svg | 5 + module/bootstrap-icons/icons/newspaper.svg | 4 + .../bootstrap-icons/icons/nintendo-switch.svg | 4 + .../bootstrap-icons/icons/node-minus-fill.svg | 3 + module/bootstrap-icons/icons/node-minus.svg | 3 + .../bootstrap-icons/icons/node-plus-fill.svg | 3 + module/bootstrap-icons/icons/node-plus.svg | 3 + .../bootstrap-icons/icons/noise-reduction.svg | 4 + module/bootstrap-icons/icons/nut-fill.svg | 3 + module/bootstrap-icons/icons/nut.svg | 4 + module/bootstrap-icons/icons/nvidia.svg | 3 + module/bootstrap-icons/icons/nvme-fill.svg | 4 + module/bootstrap-icons/icons/nvme.svg | 4 + module/bootstrap-icons/icons/octagon-fill.svg | 3 + module/bootstrap-icons/icons/octagon-half.svg | 3 + module/bootstrap-icons/icons/octagon.svg | 3 + .../bootstrap-icons/icons/opencollective.svg | 4 + .../icons/optical-audio-fill.svg | 4 + .../bootstrap-icons/icons/optical-audio.svg | 5 + module/bootstrap-icons/icons/option.svg | 3 + module/bootstrap-icons/icons/outlet.svg | 4 + .../bootstrap-icons/icons/p-circle-fill.svg | 3 + module/bootstrap-icons/icons/p-circle.svg | 3 + .../bootstrap-icons/icons/p-square-fill.svg | 4 + module/bootstrap-icons/icons/p-square.svg | 4 + module/bootstrap-icons/icons/paint-bucket.svg | 3 + module/bootstrap-icons/icons/palette-fill.svg | 3 + module/bootstrap-icons/icons/palette.svg | 4 + module/bootstrap-icons/icons/palette2.svg | 3 + module/bootstrap-icons/icons/paperclip.svg | 3 + module/bootstrap-icons/icons/paragraph.svg | 3 + module/bootstrap-icons/icons/pass-fill.svg | 3 + module/bootstrap-icons/icons/pass.svg | 4 + .../bootstrap-icons/icons/passport-fill.svg | 4 + module/bootstrap-icons/icons/passport.svg | 4 + .../icons/patch-check-fill.svg | 3 + module/bootstrap-icons/icons/patch-check.svg | 4 + .../icons/patch-exclamation-fill.svg | 3 + .../icons/patch-exclamation.svg | 4 + .../icons/patch-minus-fill.svg | 3 + module/bootstrap-icons/icons/patch-minus.svg | 4 + .../bootstrap-icons/icons/patch-plus-fill.svg | 3 + module/bootstrap-icons/icons/patch-plus.svg | 4 + .../icons/patch-question-fill.svg | 3 + .../bootstrap-icons/icons/patch-question.svg | 5 + .../bootstrap-icons/icons/pause-btn-fill.svg | 3 + module/bootstrap-icons/icons/pause-btn.svg | 4 + .../icons/pause-circle-fill.svg | 3 + module/bootstrap-icons/icons/pause-circle.svg | 4 + module/bootstrap-icons/icons/pause-fill.svg | 3 + module/bootstrap-icons/icons/pause.svg | 3 + module/bootstrap-icons/icons/paypal.svg | 3 + .../icons/pc-display-horizontal.svg | 3 + module/bootstrap-icons/icons/pc-display.svg | 3 + .../bootstrap-icons/icons/pc-horizontal.svg | 3 + module/bootstrap-icons/icons/pc.svg | 3 + .../icons/pci-card-network.svg | 5 + .../bootstrap-icons/icons/pci-card-sound.svg | 5 + module/bootstrap-icons/icons/pci-card.svg | 4 + module/bootstrap-icons/icons/peace-fill.svg | 3 + module/bootstrap-icons/icons/peace.svg | 3 + module/bootstrap-icons/icons/pen-fill.svg | 3 + module/bootstrap-icons/icons/pen.svg | 3 + module/bootstrap-icons/icons/pencil-fill.svg | 3 + .../bootstrap-icons/icons/pencil-square.svg | 4 + module/bootstrap-icons/icons/pencil.svg | 3 + .../bootstrap-icons/icons/pentagon-fill.svg | 3 + .../bootstrap-icons/icons/pentagon-half.svg | 3 + module/bootstrap-icons/icons/pentagon.svg | 3 + module/bootstrap-icons/icons/people-fill.svg | 3 + module/bootstrap-icons/icons/people.svg | 3 + module/bootstrap-icons/icons/percent.svg | 3 + module/bootstrap-icons/icons/person-add.svg | 4 + .../bootstrap-icons/icons/person-arms-up.svg | 4 + .../icons/person-badge-fill.svg | 3 + module/bootstrap-icons/icons/person-badge.svg | 4 + .../icons/person-bounding-box.svg | 4 + .../icons/person-check-fill.svg | 4 + module/bootstrap-icons/icons/person-check.svg | 4 + .../bootstrap-icons/icons/person-circle.svg | 4 + .../icons/person-dash-fill.svg | 4 + module/bootstrap-icons/icons/person-dash.svg | 4 + module/bootstrap-icons/icons/person-down.svg | 4 + .../icons/person-exclamation.svg | 4 + .../bootstrap-icons/icons/person-fill-add.svg | 4 + .../icons/person-fill-check.svg | 4 + .../icons/person-fill-dash.svg | 4 + .../icons/person-fill-down.svg | 4 + .../icons/person-fill-exclamation.svg | 4 + .../icons/person-fill-gear.svg | 3 + .../icons/person-fill-lock.svg | 3 + .../icons/person-fill-slash.svg | 3 + .../bootstrap-icons/icons/person-fill-up.svg | 4 + .../bootstrap-icons/icons/person-fill-x.svg | 4 + module/bootstrap-icons/icons/person-fill.svg | 3 + module/bootstrap-icons/icons/person-gear.svg | 3 + module/bootstrap-icons/icons/person-heart.svg | 3 + .../bootstrap-icons/icons/person-hearts.svg | 3 + .../icons/person-lines-fill.svg | 3 + module/bootstrap-icons/icons/person-lock.svg | 3 + .../icons/person-plus-fill.svg | 4 + module/bootstrap-icons/icons/person-plus.svg | 4 + .../icons/person-raised-hand.svg | 4 + .../bootstrap-icons/icons/person-rolodex.svg | 4 + module/bootstrap-icons/icons/person-slash.svg | 3 + .../bootstrap-icons/icons/person-square.svg | 4 + .../icons/person-standing-dress.svg | 3 + .../bootstrap-icons/icons/person-standing.svg | 3 + module/bootstrap-icons/icons/person-up.svg | 4 + .../icons/person-vcard-fill.svg | 3 + module/bootstrap-icons/icons/person-vcard.svg | 4 + module/bootstrap-icons/icons/person-video.svg | 4 + .../bootstrap-icons/icons/person-video2.svg | 4 + .../bootstrap-icons/icons/person-video3.svg | 4 + .../bootstrap-icons/icons/person-walking.svg | 4 + .../icons/person-wheelchair.svg | 3 + .../icons/person-workspace.svg | 4 + .../bootstrap-icons/icons/person-x-fill.svg | 3 + module/bootstrap-icons/icons/person-x.svg | 4 + module/bootstrap-icons/icons/person.svg | 3 + module/bootstrap-icons/icons/phone-fill.svg | 3 + module/bootstrap-icons/icons/phone-flip.svg | 3 + .../icons/phone-landscape-fill.svg | 3 + .../bootstrap-icons/icons/phone-landscape.svg | 4 + .../icons/phone-vibrate-fill.svg | 3 + .../bootstrap-icons/icons/phone-vibrate.svg | 4 + module/bootstrap-icons/icons/phone.svg | 4 + .../bootstrap-icons/icons/pie-chart-fill.svg | 3 + module/bootstrap-icons/icons/pie-chart.svg | 3 + .../bootstrap-icons/icons/piggy-bank-fill.svg | 3 + module/bootstrap-icons/icons/piggy-bank.svg | 4 + .../bootstrap-icons/icons/pin-angle-fill.svg | 3 + module/bootstrap-icons/icons/pin-angle.svg | 3 + module/bootstrap-icons/icons/pin-fill.svg | 3 + module/bootstrap-icons/icons/pin-map-fill.svg | 4 + module/bootstrap-icons/icons/pin-map.svg | 4 + module/bootstrap-icons/icons/pin.svg | 3 + module/bootstrap-icons/icons/pinterest.svg | 3 + module/bootstrap-icons/icons/pip-fill.svg | 3 + module/bootstrap-icons/icons/pip.svg | 4 + .../bootstrap-icons/icons/play-btn-fill.svg | 3 + module/bootstrap-icons/icons/play-btn.svg | 4 + .../icons/play-circle-fill.svg | 3 + module/bootstrap-icons/icons/play-circle.svg | 4 + module/bootstrap-icons/icons/play-fill.svg | 3 + module/bootstrap-icons/icons/play.svg | 3 + module/bootstrap-icons/icons/playstation.svg | 3 + module/bootstrap-icons/icons/plug-fill.svg | 3 + module/bootstrap-icons/icons/plug.svg | 3 + module/bootstrap-icons/icons/plugin.svg | 3 + .../icons/plus-circle-dotted.svg | 3 + .../icons/plus-circle-fill.svg | 3 + module/bootstrap-icons/icons/plus-circle.svg | 4 + module/bootstrap-icons/icons/plus-lg.svg | 3 + .../icons/plus-slash-minus.svg | 3 + .../icons/plus-square-dotted.svg | 3 + .../icons/plus-square-fill.svg | 3 + module/bootstrap-icons/icons/plus-square.svg | 4 + module/bootstrap-icons/icons/plus.svg | 3 + module/bootstrap-icons/icons/postage-fill.svg | 4 + .../icons/postage-heart-fill.svg | 4 + .../bootstrap-icons/icons/postage-heart.svg | 4 + module/bootstrap-icons/icons/postage.svg | 4 + .../bootstrap-icons/icons/postcard-fill.svg | 4 + .../icons/postcard-heart-fill.svg | 3 + .../bootstrap-icons/icons/postcard-heart.svg | 4 + module/bootstrap-icons/icons/postcard.svg | 3 + module/bootstrap-icons/icons/power.svg | 4 + module/bootstrap-icons/icons/prescription.svg | 4 + .../bootstrap-icons/icons/prescription2.svg | 4 + module/bootstrap-icons/icons/printer-fill.svg | 4 + module/bootstrap-icons/icons/printer.svg | 4 + .../bootstrap-icons/icons/projector-fill.svg | 3 + module/bootstrap-icons/icons/projector.svg | 4 + module/bootstrap-icons/icons/puzzle-fill.svg | 3 + module/bootstrap-icons/icons/puzzle.svg | 3 + module/bootstrap-icons/icons/qr-code-scan.svg | 7 + module/bootstrap-icons/icons/qr-code.svg | 7 + .../icons/question-circle-fill.svg | 3 + .../bootstrap-icons/icons/question-circle.svg | 4 + .../icons/question-diamond-fill.svg | 3 + .../icons/question-diamond.svg | 4 + module/bootstrap-icons/icons/question-lg.svg | 3 + .../icons/question-octagon-fill.svg | 3 + .../icons/question-octagon.svg | 4 + .../icons/question-square-fill.svg | 3 + .../bootstrap-icons/icons/question-square.svg | 4 + module/bootstrap-icons/icons/question.svg | 3 + module/bootstrap-icons/icons/quora.svg | 3 + module/bootstrap-icons/icons/quote.svg | 3 + .../bootstrap-icons/icons/r-circle-fill.svg | 3 + module/bootstrap-icons/icons/r-circle.svg | 3 + .../bootstrap-icons/icons/r-square-fill.svg | 4 + module/bootstrap-icons/icons/r-square.svg | 4 + module/bootstrap-icons/icons/radar.svg | 3 + module/bootstrap-icons/icons/radioactive.svg | 4 + module/bootstrap-icons/icons/rainbow.svg | 3 + .../bootstrap-icons/icons/receipt-cutoff.svg | 4 + module/bootstrap-icons/icons/receipt.svg | 4 + module/bootstrap-icons/icons/reception-0.svg | 3 + module/bootstrap-icons/icons/reception-1.svg | 3 + module/bootstrap-icons/icons/reception-2.svg | 3 + module/bootstrap-icons/icons/reception-3.svg | 3 + module/bootstrap-icons/icons/reception-4.svg | 3 + .../bootstrap-icons/icons/record-btn-fill.svg | 3 + module/bootstrap-icons/icons/record-btn.svg | 4 + .../icons/record-circle-fill.svg | 3 + .../bootstrap-icons/icons/record-circle.svg | 4 + module/bootstrap-icons/icons/record-fill.svg | 3 + module/bootstrap-icons/icons/record.svg | 3 + module/bootstrap-icons/icons/record2-fill.svg | 4 + module/bootstrap-icons/icons/record2.svg | 4 + module/bootstrap-icons/icons/recycle.svg | 3 + module/bootstrap-icons/icons/reddit.svg | 4 + module/bootstrap-icons/icons/regex.svg | 3 + module/bootstrap-icons/icons/repeat-1.svg | 4 + module/bootstrap-icons/icons/repeat.svg | 3 + .../bootstrap-icons/icons/reply-all-fill.svg | 4 + module/bootstrap-icons/icons/reply-all.svg | 4 + module/bootstrap-icons/icons/reply-fill.svg | 3 + module/bootstrap-icons/icons/reply.svg | 3 + .../bootstrap-icons/icons/rewind-btn-fill.svg | 3 + module/bootstrap-icons/icons/rewind-btn.svg | 4 + .../icons/rewind-circle-fill.svg | 3 + .../bootstrap-icons/icons/rewind-circle.svg | 4 + module/bootstrap-icons/icons/rewind-fill.svg | 4 + module/bootstrap-icons/icons/rewind.svg | 4 + module/bootstrap-icons/icons/robot.svg | 4 + module/bootstrap-icons/icons/rocket-fill.svg | 4 + .../icons/rocket-takeoff-fill.svg | 4 + .../bootstrap-icons/icons/rocket-takeoff.svg | 5 + module/bootstrap-icons/icons/rocket.svg | 5 + module/bootstrap-icons/icons/router-fill.svg | 6 + module/bootstrap-icons/icons/router.svg | 6 + module/bootstrap-icons/icons/rss-fill.svg | 3 + module/bootstrap-icons/icons/rss.svg | 4 + module/bootstrap-icons/icons/rulers.svg | 3 + module/bootstrap-icons/icons/safe-fill.svg | 4 + module/bootstrap-icons/icons/safe.svg | 4 + module/bootstrap-icons/icons/safe2-fill.svg | 4 + module/bootstrap-icons/icons/safe2.svg | 4 + module/bootstrap-icons/icons/save-fill.svg | 3 + module/bootstrap-icons/icons/save.svg | 3 + module/bootstrap-icons/icons/save2-fill.svg | 3 + module/bootstrap-icons/icons/save2.svg | 3 + module/bootstrap-icons/icons/scissors.svg | 3 + module/bootstrap-icons/icons/scooter.svg | 3 + module/bootstrap-icons/icons/screwdriver.svg | 3 + module/bootstrap-icons/icons/sd-card-fill.svg | 3 + module/bootstrap-icons/icons/sd-card.svg | 4 + .../icons/search-heart-fill.svg | 3 + module/bootstrap-icons/icons/search-heart.svg | 4 + module/bootstrap-icons/icons/search.svg | 3 + .../bootstrap-icons/icons/segmented-nav.svg | 3 + .../icons/send-arrow-down-fill.svg | 4 + .../bootstrap-icons/icons/send-arrow-down.svg | 4 + .../icons/send-arrow-up-fill.svg | 4 + .../bootstrap-icons/icons/send-arrow-up.svg | 4 + .../bootstrap-icons/icons/send-check-fill.svg | 4 + module/bootstrap-icons/icons/send-check.svg | 4 + .../bootstrap-icons/icons/send-dash-fill.svg | 4 + module/bootstrap-icons/icons/send-dash.svg | 4 + .../icons/send-exclamation-fill.svg | 4 + .../icons/send-exclamation.svg | 4 + module/bootstrap-icons/icons/send-fill.svg | 3 + .../bootstrap-icons/icons/send-plus-fill.svg | 4 + module/bootstrap-icons/icons/send-plus.svg | 4 + .../bootstrap-icons/icons/send-slash-fill.svg | 4 + module/bootstrap-icons/icons/send-slash.svg | 4 + module/bootstrap-icons/icons/send-x-fill.svg | 4 + module/bootstrap-icons/icons/send-x.svg | 4 + module/bootstrap-icons/icons/send.svg | 3 + module/bootstrap-icons/icons/server.svg | 5 + module/bootstrap-icons/icons/shadows.svg | 3 + module/bootstrap-icons/icons/share-fill.svg | 3 + module/bootstrap-icons/icons/share.svg | 3 + module/bootstrap-icons/icons/shield-check.svg | 4 + .../icons/shield-exclamation.svg | 4 + .../icons/shield-fill-check.svg | 3 + .../icons/shield-fill-exclamation.svg | 3 + .../icons/shield-fill-minus.svg | 3 + .../icons/shield-fill-plus.svg | 3 + .../bootstrap-icons/icons/shield-fill-x.svg | 3 + module/bootstrap-icons/icons/shield-fill.svg | 3 + .../icons/shield-lock-fill.svg | 3 + module/bootstrap-icons/icons/shield-lock.svg | 4 + module/bootstrap-icons/icons/shield-minus.svg | 4 + module/bootstrap-icons/icons/shield-plus.svg | 4 + .../bootstrap-icons/icons/shield-shaded.svg | 3 + .../icons/shield-slash-fill.svg | 3 + module/bootstrap-icons/icons/shield-slash.svg | 3 + module/bootstrap-icons/icons/shield-x.svg | 4 + module/bootstrap-icons/icons/shield.svg | 3 + module/bootstrap-icons/icons/shift-fill.svg | 3 + module/bootstrap-icons/icons/shift.svg | 3 + module/bootstrap-icons/icons/shop-window.svg | 3 + module/bootstrap-icons/icons/shop.svg | 3 + module/bootstrap-icons/icons/shuffle.svg | 4 + .../icons/sign-dead-end-fill.svg | 4 + .../bootstrap-icons/icons/sign-dead-end.svg | 4 + .../icons/sign-do-not-enter-fill.svg | 4 + .../icons/sign-do-not-enter.svg | 4 + .../icons/sign-intersection-fill.svg | 3 + .../icons/sign-intersection-side-fill.svg | 3 + .../icons/sign-intersection-side.svg | 4 + .../icons/sign-intersection-t-fill.svg | 3 + .../icons/sign-intersection-t.svg | 4 + .../icons/sign-intersection-y-fill.svg | 3 + .../icons/sign-intersection-y.svg | 4 + .../icons/sign-intersection.svg | 4 + .../icons/sign-merge-left-fill.svg | 3 + .../bootstrap-icons/icons/sign-merge-left.svg | 4 + .../icons/sign-merge-right-fill.svg | 3 + .../icons/sign-merge-right.svg | 4 + .../icons/sign-no-left-turn-fill.svg | 4 + .../icons/sign-no-left-turn.svg | 3 + .../icons/sign-no-parking-fill.svg | 4 + .../bootstrap-icons/icons/sign-no-parking.svg | 3 + .../icons/sign-no-right-turn-fill.svg | 4 + .../icons/sign-no-right-turn.svg | 3 + .../icons/sign-railroad-fill.svg | 5 + .../bootstrap-icons/icons/sign-railroad.svg | 4 + .../bootstrap-icons/icons/sign-stop-fill.svg | 4 + .../icons/sign-stop-lights-fill.svg | 4 + .../icons/sign-stop-lights.svg | 4 + module/bootstrap-icons/icons/sign-stop.svg | 5 + .../icons/sign-turn-left-fill.svg | 3 + .../bootstrap-icons/icons/sign-turn-left.svg | 4 + .../icons/sign-turn-right-fill.svg | 3 + .../bootstrap-icons/icons/sign-turn-right.svg | 4 + .../icons/sign-turn-slight-left-fill.svg | 3 + .../icons/sign-turn-slight-left.svg | 4 + .../icons/sign-turn-slight-right-fill.svg | 3 + .../icons/sign-turn-slight-right.svg | 4 + .../bootstrap-icons/icons/sign-yield-fill.svg | 4 + module/bootstrap-icons/icons/sign-yield.svg | 5 + module/bootstrap-icons/icons/signal.svg | 3 + .../bootstrap-icons/icons/signpost-2-fill.svg | 3 + module/bootstrap-icons/icons/signpost-2.svg | 3 + .../bootstrap-icons/icons/signpost-fill.svg | 3 + .../icons/signpost-split-fill.svg | 3 + .../bootstrap-icons/icons/signpost-split.svg | 3 + module/bootstrap-icons/icons/signpost.svg | 3 + module/bootstrap-icons/icons/sim-fill.svg | 4 + .../bootstrap-icons/icons/sim-slash-fill.svg | 3 + module/bootstrap-icons/icons/sim-slash.svg | 3 + module/bootstrap-icons/icons/sim.svg | 4 + module/bootstrap-icons/icons/sina-weibo.svg | 4 + .../icons/skip-backward-btn-fill.svg | 3 + .../icons/skip-backward-btn.svg | 4 + .../icons/skip-backward-circle-fill.svg | 3 + .../icons/skip-backward-circle.svg | 4 + .../icons/skip-backward-fill.svg | 3 + .../bootstrap-icons/icons/skip-backward.svg | 3 + .../icons/skip-end-btn-fill.svg | 3 + module/bootstrap-icons/icons/skip-end-btn.svg | 4 + .../icons/skip-end-circle-fill.svg | 3 + .../bootstrap-icons/icons/skip-end-circle.svg | 4 + .../bootstrap-icons/icons/skip-end-fill.svg | 3 + module/bootstrap-icons/icons/skip-end.svg | 3 + .../icons/skip-forward-btn-fill.svg | 3 + .../icons/skip-forward-btn.svg | 4 + .../icons/skip-forward-circle-fill.svg | 3 + .../icons/skip-forward-circle.svg | 4 + .../icons/skip-forward-fill.svg | 3 + module/bootstrap-icons/icons/skip-forward.svg | 3 + .../icons/skip-start-btn-fill.svg | 3 + .../bootstrap-icons/icons/skip-start-btn.svg | 4 + .../icons/skip-start-circle-fill.svg | 3 + .../icons/skip-start-circle.svg | 4 + .../bootstrap-icons/icons/skip-start-fill.svg | 3 + module/bootstrap-icons/icons/skip-start.svg | 3 + module/bootstrap-icons/icons/skype.svg | 3 + module/bootstrap-icons/icons/slack.svg | 3 + .../icons/slash-circle-fill.svg | 3 + module/bootstrap-icons/icons/slash-circle.svg | 4 + module/bootstrap-icons/icons/slash-lg.svg | 3 + .../icons/slash-square-fill.svg | 3 + module/bootstrap-icons/icons/slash-square.svg | 4 + module/bootstrap-icons/icons/slash.svg | 3 + module/bootstrap-icons/icons/sliders.svg | 3 + .../icons/sliders2-vertical.svg | 3 + module/bootstrap-icons/icons/sliders2.svg | 3 + module/bootstrap-icons/icons/smartwatch.svg | 4 + module/bootstrap-icons/icons/snapchat.svg | 3 + module/bootstrap-icons/icons/snow.svg | 3 + module/bootstrap-icons/icons/snow2.svg | 3 + module/bootstrap-icons/icons/snow3.svg | 4 + .../icons/sort-alpha-down-alt.svg | 5 + .../bootstrap-icons/icons/sort-alpha-down.svg | 4 + .../icons/sort-alpha-up-alt.svg | 5 + .../bootstrap-icons/icons/sort-alpha-up.svg | 4 + .../bootstrap-icons/icons/sort-down-alt.svg | 3 + module/bootstrap-icons/icons/sort-down.svg | 3 + .../icons/sort-numeric-down-alt.svg | 4 + .../icons/sort-numeric-down.svg | 5 + .../icons/sort-numeric-up-alt.svg | 4 + .../bootstrap-icons/icons/sort-numeric-up.svg | 5 + module/bootstrap-icons/icons/sort-up-alt.svg | 3 + module/bootstrap-icons/icons/sort-up.svg | 3 + module/bootstrap-icons/icons/soundwave.svg | 3 + module/bootstrap-icons/icons/sourceforge.svg | 4 + module/bootstrap-icons/icons/speaker-fill.svg | 4 + module/bootstrap-icons/icons/speaker.svg | 4 + module/bootstrap-icons/icons/speedometer.svg | 4 + module/bootstrap-icons/icons/speedometer2.svg | 4 + module/bootstrap-icons/icons/spellcheck.svg | 4 + module/bootstrap-icons/icons/spotify.svg | 3 + module/bootstrap-icons/icons/square-fill.svg | 3 + module/bootstrap-icons/icons/square-half.svg | 3 + module/bootstrap-icons/icons/square.svg | 3 + .../bootstrap-icons/icons/stack-overflow.svg | 4 + module/bootstrap-icons/icons/stack.svg | 4 + module/bootstrap-icons/icons/star-fill.svg | 3 + module/bootstrap-icons/icons/star-half.svg | 3 + module/bootstrap-icons/icons/star.svg | 3 + module/bootstrap-icons/icons/stars.svg | 3 + module/bootstrap-icons/icons/steam.svg | 4 + .../bootstrap-icons/icons/stickies-fill.svg | 4 + module/bootstrap-icons/icons/stickies.svg | 4 + module/bootstrap-icons/icons/sticky-fill.svg | 3 + module/bootstrap-icons/icons/sticky.svg | 3 + .../bootstrap-icons/icons/stop-btn-fill.svg | 3 + module/bootstrap-icons/icons/stop-btn.svg | 4 + .../icons/stop-circle-fill.svg | 3 + module/bootstrap-icons/icons/stop-circle.svg | 4 + module/bootstrap-icons/icons/stop-fill.svg | 3 + module/bootstrap-icons/icons/stop.svg | 3 + .../bootstrap-icons/icons/stoplights-fill.svg | 3 + module/bootstrap-icons/icons/stoplights.svg | 4 + .../bootstrap-icons/icons/stopwatch-fill.svg | 3 + module/bootstrap-icons/icons/stopwatch.svg | 4 + module/bootstrap-icons/icons/strava.svg | 3 + module/bootstrap-icons/icons/stripe.svg | 3 + module/bootstrap-icons/icons/subscript.svg | 3 + module/bootstrap-icons/icons/substack.svg | 3 + module/bootstrap-icons/icons/subtract.svg | 3 + .../bootstrap-icons/icons/suit-club-fill.svg | 3 + module/bootstrap-icons/icons/suit-club.svg | 3 + .../icons/suit-diamond-fill.svg | 3 + module/bootstrap-icons/icons/suit-diamond.svg | 3 + .../bootstrap-icons/icons/suit-heart-fill.svg | 3 + module/bootstrap-icons/icons/suit-heart.svg | 3 + .../bootstrap-icons/icons/suit-spade-fill.svg | 3 + module/bootstrap-icons/icons/suit-spade.svg | 3 + .../bootstrap-icons/icons/suitcase-fill.svg | 3 + .../icons/suitcase-lg-fill.svg | 3 + module/bootstrap-icons/icons/suitcase-lg.svg | 3 + module/bootstrap-icons/icons/suitcase.svg | 4 + .../bootstrap-icons/icons/suitcase2-fill.svg | 3 + module/bootstrap-icons/icons/suitcase2.svg | 3 + module/bootstrap-icons/icons/sun-fill.svg | 3 + module/bootstrap-icons/icons/sun.svg | 3 + module/bootstrap-icons/icons/sunglasses.svg | 3 + module/bootstrap-icons/icons/sunrise-fill.svg | 3 + module/bootstrap-icons/icons/sunrise.svg | 3 + module/bootstrap-icons/icons/sunset-fill.svg | 3 + module/bootstrap-icons/icons/sunset.svg | 3 + module/bootstrap-icons/icons/superscript.svg | 3 + .../icons/symmetry-horizontal.svg | 3 + .../icons/symmetry-vertical.svg | 3 + module/bootstrap-icons/icons/table.svg | 3 + module/bootstrap-icons/icons/tablet-fill.svg | 3 + .../icons/tablet-landscape-fill.svg | 3 + .../icons/tablet-landscape.svg | 4 + module/bootstrap-icons/icons/tablet.svg | 4 + module/bootstrap-icons/icons/tag-fill.svg | 3 + module/bootstrap-icons/icons/tag.svg | 4 + module/bootstrap-icons/icons/tags-fill.svg | 4 + module/bootstrap-icons/icons/tags.svg | 4 + .../bootstrap-icons/icons/taxi-front-fill.svg | 3 + module/bootstrap-icons/icons/taxi-front.svg | 4 + module/bootstrap-icons/icons/telegram.svg | 3 + .../bootstrap-icons/icons/telephone-fill.svg | 3 + .../icons/telephone-forward-fill.svg | 3 + .../icons/telephone-forward.svg | 3 + .../icons/telephone-inbound-fill.svg | 3 + .../icons/telephone-inbound.svg | 3 + .../icons/telephone-minus-fill.svg | 3 + .../bootstrap-icons/icons/telephone-minus.svg | 4 + .../icons/telephone-outbound-fill.svg | 3 + .../icons/telephone-outbound.svg | 3 + .../icons/telephone-plus-fill.svg | 3 + .../bootstrap-icons/icons/telephone-plus.svg | 4 + .../icons/telephone-x-fill.svg | 3 + module/bootstrap-icons/icons/telephone-x.svg | 4 + module/bootstrap-icons/icons/telephone.svg | 3 + module/bootstrap-icons/icons/tencent-qq.svg | 4 + .../bootstrap-icons/icons/terminal-dash.svg | 4 + .../bootstrap-icons/icons/terminal-fill.svg | 3 + .../bootstrap-icons/icons/terminal-plus.svg | 4 + .../bootstrap-icons/icons/terminal-split.svg | 4 + module/bootstrap-icons/icons/terminal-x.svg | 4 + module/bootstrap-icons/icons/terminal.svg | 4 + module/bootstrap-icons/icons/text-center.svg | 3 + .../icons/text-indent-left.svg | 3 + .../icons/text-indent-right.svg | 3 + module/bootstrap-icons/icons/text-left.svg | 3 + .../bootstrap-icons/icons/text-paragraph.svg | 3 + module/bootstrap-icons/icons/text-right.svg | 3 + module/bootstrap-icons/icons/text-wrap.svg | 3 + .../bootstrap-icons/icons/textarea-resize.svg | 3 + module/bootstrap-icons/icons/textarea-t.svg | 4 + module/bootstrap-icons/icons/textarea.svg | 3 + .../icons/thermometer-half.svg | 4 + .../icons/thermometer-high.svg | 4 + .../bootstrap-icons/icons/thermometer-low.svg | 4 + .../icons/thermometer-snow.svg | 4 + .../bootstrap-icons/icons/thermometer-sun.svg | 4 + module/bootstrap-icons/icons/thermometer.svg | 4 + module/bootstrap-icons/icons/threads-fill.svg | 4 + module/bootstrap-icons/icons/threads.svg | 3 + .../icons/three-dots-vertical.svg | 3 + module/bootstrap-icons/icons/three-dots.svg | 3 + .../icons/thunderbolt-fill.svg | 3 + module/bootstrap-icons/icons/thunderbolt.svg | 4 + .../icons/ticket-detailed-fill.svg | 3 + .../bootstrap-icons/icons/ticket-detailed.svg | 4 + module/bootstrap-icons/icons/ticket-fill.svg | 3 + .../icons/ticket-perforated-fill.svg | 3 + .../icons/ticket-perforated.svg | 4 + module/bootstrap-icons/icons/ticket.svg | 3 + module/bootstrap-icons/icons/tiktok.svg | 3 + module/bootstrap-icons/icons/toggle-off.svg | 3 + module/bootstrap-icons/icons/toggle-on.svg | 3 + module/bootstrap-icons/icons/toggle2-off.svg | 4 + module/bootstrap-icons/icons/toggle2-on.svg | 4 + module/bootstrap-icons/icons/toggles.svg | 3 + module/bootstrap-icons/icons/toggles2.svg | 5 + module/bootstrap-icons/icons/tools.svg | 3 + module/bootstrap-icons/icons/tornado.svg | 3 + .../icons/train-freight-front-fill.svg | 3 + .../icons/train-freight-front.svg | 3 + .../icons/train-front-fill.svg | 3 + module/bootstrap-icons/icons/train-front.svg | 3 + .../icons/train-lightrail-front-fill.svg | 3 + .../icons/train-lightrail-front.svg | 3 + module/bootstrap-icons/icons/translate.svg | 4 + module/bootstrap-icons/icons/transparency.svg | 3 + module/bootstrap-icons/icons/trash-fill.svg | 3 + module/bootstrap-icons/icons/trash.svg | 4 + module/bootstrap-icons/icons/trash2-fill.svg | 3 + module/bootstrap-icons/icons/trash2.svg | 3 + module/bootstrap-icons/icons/trash3-fill.svg | 3 + module/bootstrap-icons/icons/trash3.svg | 3 + module/bootstrap-icons/icons/tree-fill.svg | 3 + module/bootstrap-icons/icons/tree.svg | 3 + module/bootstrap-icons/icons/trello.svg | 3 + .../bootstrap-icons/icons/triangle-fill.svg | 3 + .../bootstrap-icons/icons/triangle-half.svg | 3 + module/bootstrap-icons/icons/triangle.svg | 3 + module/bootstrap-icons/icons/trophy-fill.svg | 3 + module/bootstrap-icons/icons/trophy.svg | 3 + .../bootstrap-icons/icons/tropical-storm.svg | 4 + .../bootstrap-icons/icons/truck-flatbed.svg | 3 + .../icons/truck-front-fill.svg | 3 + module/bootstrap-icons/icons/truck-front.svg | 4 + module/bootstrap-icons/icons/truck.svg | 3 + module/bootstrap-icons/icons/tsunami.svg | 3 + module/bootstrap-icons/icons/tv-fill.svg | 3 + module/bootstrap-icons/icons/tv.svg | 3 + module/bootstrap-icons/icons/twitch.svg | 4 + module/bootstrap-icons/icons/twitter-x.svg | 3 + module/bootstrap-icons/icons/twitter.svg | 3 + module/bootstrap-icons/icons/type-bold.svg | 3 + module/bootstrap-icons/icons/type-h1.svg | 3 + module/bootstrap-icons/icons/type-h2.svg | 3 + module/bootstrap-icons/icons/type-h3.svg | 3 + module/bootstrap-icons/icons/type-h4.svg | 3 + module/bootstrap-icons/icons/type-h5.svg | 3 + module/bootstrap-icons/icons/type-h6.svg | 3 + module/bootstrap-icons/icons/type-italic.svg | 3 + .../icons/type-strikethrough.svg | 3 + .../bootstrap-icons/icons/type-underline.svg | 3 + module/bootstrap-icons/icons/type.svg | 3 + module/bootstrap-icons/icons/ubuntu.svg | 3 + .../bootstrap-icons/icons/ui-checks-grid.svg | 3 + module/bootstrap-icons/icons/ui-checks.svg | 3 + .../bootstrap-icons/icons/ui-radios-grid.svg | 3 + module/bootstrap-icons/icons/ui-radios.svg | 3 + .../bootstrap-icons/icons/umbrella-fill.svg | 3 + module/bootstrap-icons/icons/umbrella.svg | 3 + module/bootstrap-icons/icons/unindent.svg | 4 + module/bootstrap-icons/icons/union.svg | 3 + module/bootstrap-icons/icons/unity.svg | 3 + .../icons/universal-access-circle.svg | 4 + .../icons/universal-access.svg | 3 + module/bootstrap-icons/icons/unlock-fill.svg | 3 + module/bootstrap-icons/icons/unlock.svg | 3 + module/bootstrap-icons/icons/upc-scan.svg | 3 + module/bootstrap-icons/icons/upc.svg | 3 + module/bootstrap-icons/icons/upload.svg | 4 + module/bootstrap-icons/icons/usb-c-fill.svg | 3 + module/bootstrap-icons/icons/usb-c.svg | 4 + .../bootstrap-icons/icons/usb-drive-fill.svg | 3 + module/bootstrap-icons/icons/usb-drive.svg | 3 + module/bootstrap-icons/icons/usb-fill.svg | 3 + .../bootstrap-icons/icons/usb-micro-fill.svg | 3 + module/bootstrap-icons/icons/usb-micro.svg | 4 + .../bootstrap-icons/icons/usb-mini-fill.svg | 3 + module/bootstrap-icons/icons/usb-mini.svg | 4 + .../bootstrap-icons/icons/usb-plug-fill.svg | 3 + module/bootstrap-icons/icons/usb-plug.svg | 3 + module/bootstrap-icons/icons/usb-symbol.svg | 3 + module/bootstrap-icons/icons/usb.svg | 4 + module/bootstrap-icons/icons/valentine.svg | 4 + module/bootstrap-icons/icons/valentine2.svg | 4 + module/bootstrap-icons/icons/vector-pen.svg | 4 + module/bootstrap-icons/icons/view-list.svg | 3 + module/bootstrap-icons/icons/view-stacked.svg | 3 + module/bootstrap-icons/icons/vignette.svg | 4 + module/bootstrap-icons/icons/vimeo.svg | 3 + module/bootstrap-icons/icons/vinyl-fill.svg | 4 + module/bootstrap-icons/icons/vinyl.svg | 5 + module/bootstrap-icons/icons/virus.svg | 3 + module/bootstrap-icons/icons/virus2.svg | 3 + module/bootstrap-icons/icons/voicemail.svg | 3 + .../icons/volume-down-fill.svg | 3 + module/bootstrap-icons/icons/volume-down.svg | 3 + .../icons/volume-mute-fill.svg | 3 + module/bootstrap-icons/icons/volume-mute.svg | 3 + .../bootstrap-icons/icons/volume-off-fill.svg | 3 + module/bootstrap-icons/icons/volume-off.svg | 3 + .../bootstrap-icons/icons/volume-up-fill.svg | 5 + module/bootstrap-icons/icons/volume-up.svg | 5 + module/bootstrap-icons/icons/vr.svg | 3 + module/bootstrap-icons/icons/wallet-fill.svg | 4 + module/bootstrap-icons/icons/wallet.svg | 3 + module/bootstrap-icons/icons/wallet2.svg | 3 + module/bootstrap-icons/icons/watch.svg | 4 + module/bootstrap-icons/icons/water.svg | 3 + module/bootstrap-icons/icons/webcam-fill.svg | 4 + module/bootstrap-icons/icons/webcam.svg | 4 + module/bootstrap-icons/icons/wechat.svg | 4 + module/bootstrap-icons/icons/whatsapp.svg | 3 + module/bootstrap-icons/icons/wifi-1.svg | 3 + module/bootstrap-icons/icons/wifi-2.svg | 3 + module/bootstrap-icons/icons/wifi-off.svg | 3 + module/bootstrap-icons/icons/wifi.svg | 4 + module/bootstrap-icons/icons/wikipedia.svg | 3 + module/bootstrap-icons/icons/wind.svg | 3 + module/bootstrap-icons/icons/window-dash.svg | 5 + .../bootstrap-icons/icons/window-desktop.svg | 4 + module/bootstrap-icons/icons/window-dock.svg | 4 + .../icons/window-fullscreen.svg | 4 + module/bootstrap-icons/icons/window-plus.svg | 5 + .../bootstrap-icons/icons/window-sidebar.svg | 4 + module/bootstrap-icons/icons/window-split.svg | 4 + module/bootstrap-icons/icons/window-stack.svg | 4 + module/bootstrap-icons/icons/window-x.svg | 5 + module/bootstrap-icons/icons/window.svg | 4 + module/bootstrap-icons/icons/windows.svg | 3 + module/bootstrap-icons/icons/wordpress.svg | 5 + .../icons/wrench-adjustable-circle-fill.svg | 4 + .../icons/wrench-adjustable-circle.svg | 4 + .../icons/wrench-adjustable.svg | 4 + module/bootstrap-icons/icons/wrench.svg | 3 + .../bootstrap-icons/icons/x-circle-fill.svg | 3 + module/bootstrap-icons/icons/x-circle.svg | 4 + .../bootstrap-icons/icons/x-diamond-fill.svg | 3 + module/bootstrap-icons/icons/x-diamond.svg | 3 + module/bootstrap-icons/icons/x-lg.svg | 3 + .../bootstrap-icons/icons/x-octagon-fill.svg | 3 + module/bootstrap-icons/icons/x-octagon.svg | 4 + .../bootstrap-icons/icons/x-square-fill.svg | 3 + module/bootstrap-icons/icons/x-square.svg | 4 + module/bootstrap-icons/icons/x.svg | 3 + module/bootstrap-icons/icons/xbox.svg | 3 + module/bootstrap-icons/icons/yelp.svg | 3 + module/bootstrap-icons/icons/yin-yang.svg | 4 + module/bootstrap-icons/icons/youtube.svg | 3 + module/bootstrap-icons/icons/zoom-in.svg | 5 + module/bootstrap-icons/icons/zoom-out.svg | 5 + module/bootstrap-icons/package.json | 91 + module/bootstrap@5.3.3/LICENSE | 21 + module/bootstrap@5.3.3/README.md | 246 + module/bootstrap@5.3.3/js/index.esm.js | 19 + module/bootstrap@5.3.3/js/index.umd.js | 34 + module/bootstrap@5.3.3/js/src/alert.js | 87 + .../bootstrap@5.3.3/js/src/base-component.js | 85 + module/bootstrap@5.3.3/js/src/button.js | 72 + module/bootstrap@5.3.3/js/src/carousel.js | 474 + module/bootstrap@5.3.3/js/src/collapse.js | 297 + module/bootstrap@5.3.3/js/src/dom/data.js | 55 + .../js/src/dom/event-handler.js | 317 + .../bootstrap@5.3.3/js/src/dom/manipulator.js | 71 + .../js/src/dom/selector-engine.js | 126 + module/bootstrap@5.3.3/js/src/dropdown.js | 455 + module/bootstrap@5.3.3/js/src/modal.js | 378 + module/bootstrap@5.3.3/js/src/offcanvas.js | 282 + module/bootstrap@5.3.3/js/src/popover.js | 97 + module/bootstrap@5.3.3/js/src/scrollspy.js | 296 + module/bootstrap@5.3.3/js/src/tab.js | 315 + module/bootstrap@5.3.3/js/src/toast.js | 225 + module/bootstrap@5.3.3/js/src/tooltip.js | 633 + .../bootstrap@5.3.3/js/src/util/backdrop.js | 151 + .../js/src/util/component-functions.js | 35 + module/bootstrap@5.3.3/js/src/util/config.js | 65 + .../bootstrap@5.3.3/js/src/util/focustrap.js | 115 + module/bootstrap@5.3.3/js/src/util/index.js | 306 + .../bootstrap@5.3.3/js/src/util/sanitizer.js | 117 + .../bootstrap@5.3.3/js/src/util/scrollbar.js | 114 + module/bootstrap@5.3.3/js/src/util/swipe.js | 146 + .../js/src/util/template-factory.js | 160 + module/bootstrap@5.3.3/package.json | 184 + module/bootstrap@5.3.3/scss/_accordion.scss | 158 + module/bootstrap@5.3.3/scss/_alert.scss | 68 + module/bootstrap@5.3.3/scss/_badge.scss | 38 + module/bootstrap@5.3.3/scss/_breadcrumb.scss | 40 + .../bootstrap@5.3.3/scss/_button-group.scss | 142 + module/bootstrap@5.3.3/scss/_buttons.scss | 216 + module/bootstrap@5.3.3/scss/_card.scss | 239 + module/bootstrap@5.3.3/scss/_carousel.scss | 236 + module/bootstrap@5.3.3/scss/_close.scss | 63 + module/bootstrap@5.3.3/scss/_containers.scss | 41 + module/bootstrap@5.3.3/scss/_dropdown.scss | 250 + module/bootstrap@5.3.3/scss/_forms.scss | 9 + module/bootstrap@5.3.3/scss/_functions.scss | 302 + module/bootstrap@5.3.3/scss/_grid.scss | 39 + module/bootstrap@5.3.3/scss/_helpers.scss | 12 + module/bootstrap@5.3.3/scss/_images.scss | 42 + module/bootstrap@5.3.3/scss/_list-group.scss | 197 + module/bootstrap@5.3.3/scss/_maps.scss | 174 + module/bootstrap@5.3.3/scss/_mixins.scss | 42 + module/bootstrap@5.3.3/scss/_modal.scss | 236 + module/bootstrap@5.3.3/scss/_nav.scss | 197 + module/bootstrap@5.3.3/scss/_navbar.scss | 289 + module/bootstrap@5.3.3/scss/_offcanvas.scss | 143 + module/bootstrap@5.3.3/scss/_pagination.scss | 109 + .../bootstrap@5.3.3/scss/_placeholders.scss | 51 + module/bootstrap@5.3.3/scss/_popover.scss | 196 + module/bootstrap@5.3.3/scss/_progress.scss | 68 + module/bootstrap@5.3.3/scss/_reboot.scss | 611 + module/bootstrap@5.3.3/scss/_root.scss | 187 + module/bootstrap@5.3.3/scss/_spinners.scss | 85 + module/bootstrap@5.3.3/scss/_tables.scss | 171 + module/bootstrap@5.3.3/scss/_toasts.scss | 73 + module/bootstrap@5.3.3/scss/_tooltip.scss | 119 + module/bootstrap@5.3.3/scss/_transitions.scss | 27 + module/bootstrap@5.3.3/scss/_type.scss | 106 + module/bootstrap@5.3.3/scss/_utilities.scss | 806 + .../bootstrap@5.3.3/scss/_variables-dark.scss | 87 + module/bootstrap@5.3.3/scss/_variables.scss | 1751 ++ .../bootstrap@5.3.3/scss/bootstrap-grid.scss | 62 + .../scss/bootstrap-reboot.scss | 10 + .../scss/bootstrap-utilities.scss | 19 + module/bootstrap@5.3.3/scss/bootstrap.scss | 52 + .../scss/forms/_floating-labels.scss | 95 + .../scss/forms/_form-check.scss | 189 + .../scss/forms/_form-control.scss | 214 + .../scss/forms/_form-range.scss | 91 + .../scss/forms/_form-select.scss | 80 + .../scss/forms/_form-text.scss | 11 + .../scss/forms/_input-group.scss | 132 + .../bootstrap@5.3.3/scss/forms/_labels.scss | 36 + .../scss/forms/_validation.scss | 12 + .../scss/helpers/_clearfix.scss | 3 + .../scss/helpers/_color-bg.scss | 7 + .../scss/helpers/_colored-links.scss | 30 + .../scss/helpers/_focus-ring.scss | 5 + .../scss/helpers/_icon-link.scss | 25 + .../scss/helpers/_position.scss | 36 + .../bootstrap@5.3.3/scss/helpers/_ratio.scss | 26 + .../bootstrap@5.3.3/scss/helpers/_stacks.scss | 15 + .../scss/helpers/_stretched-link.scss | 15 + .../scss/helpers/_text-truncation.scss | 7 + .../scss/helpers/_visually-hidden.scss | 8 + module/bootstrap@5.3.3/scss/helpers/_vr.scss | 8 + .../bootstrap@5.3.3/scss/mixins/_alert.scss | 18 + .../scss/mixins/_backdrop.scss | 14 + .../bootstrap@5.3.3/scss/mixins/_banner.scss | 7 + .../scss/mixins/_border-radius.scss | 78 + .../scss/mixins/_box-shadow.scss | 18 + .../scss/mixins/_breakpoints.scss | 127 + .../bootstrap@5.3.3/scss/mixins/_buttons.scss | 70 + .../bootstrap@5.3.3/scss/mixins/_caret.scss | 69 + .../scss/mixins/_clearfix.scss | 9 + .../scss/mixins/_color-mode.scss | 21 + .../scss/mixins/_color-scheme.scss | 7 + .../scss/mixins/_container.scss | 11 + .../scss/mixins/_deprecate.scss | 10 + .../bootstrap@5.3.3/scss/mixins/_forms.scss | 163 + .../scss/mixins/_gradients.scss | 47 + module/bootstrap@5.3.3/scss/mixins/_grid.scss | 151 + .../bootstrap@5.3.3/scss/mixins/_image.scss | 16 + .../scss/mixins/_list-group.scss | 26 + .../bootstrap@5.3.3/scss/mixins/_lists.scss | 7 + .../scss/mixins/_pagination.scss | 10 + .../scss/mixins/_reset-text.scss | 17 + .../bootstrap@5.3.3/scss/mixins/_resize.scss | 6 + .../scss/mixins/_table-variants.scss | 24 + .../scss/mixins/_text-truncate.scss | 8 + .../scss/mixins/_transition.scss | 26 + .../scss/mixins/_utilities.scss | 97 + .../scss/mixins/_visually-hidden.scss | 33 + .../bootstrap@5.3.3/scss/utilities/_api.scss | 47 + module/bootstrap@5.3.3/scss/vendor/_rfs.scss | 348 + module/fullcalendar-3.9.0/fullcalendar.css | 1293 ++ module/fullcalendar-3.9.0/fullcalendar.js | 15010 ++++++++++++++++ .../fullcalendar-3.9.0/fullcalendar.min.css | 5 + module/fullcalendar-3.9.0/fullcalendar.min.js | 12 + .../fullcalendar-3.9.0/fullcalendar.print.css | 176 + .../fullcalendar.print.min.css | 9 + module/fullcalendar-3.9.0/gcal.js | 324 + module/fullcalendar-3.9.0/gcal.min.js | 6 + .../fullcalendar-3.9.0/lib/jquery-ui.min.js | 13 + module/fullcalendar-3.9.0/lib/jquery.min.js | 2 + module/fullcalendar-3.9.0/lib/moment.min.js | 1 + module/fullcalendar-3.9.0/locale-all.js | 6 + module/fullcalendar-3.9.0/locale/af.js | 1 + module/fullcalendar-3.9.0/locale/ar-dz.js | 1 + module/fullcalendar-3.9.0/locale/ar-kw.js | 1 + module/fullcalendar-3.9.0/locale/ar-ly.js | 1 + module/fullcalendar-3.9.0/locale/ar-ma.js | 1 + module/fullcalendar-3.9.0/locale/ar-sa.js | 1 + module/fullcalendar-3.9.0/locale/ar-tn.js | 1 + module/fullcalendar-3.9.0/locale/ar.js | 1 + module/fullcalendar-3.9.0/locale/bg.js | 1 + module/fullcalendar-3.9.0/locale/bs.js | 1 + module/fullcalendar-3.9.0/locale/ca.js | 1 + module/fullcalendar-3.9.0/locale/cs.js | 1 + module/fullcalendar-3.9.0/locale/da.js | 1 + module/fullcalendar-3.9.0/locale/de-at.js | 1 + module/fullcalendar-3.9.0/locale/de-ch.js | 1 + module/fullcalendar-3.9.0/locale/de.js | 1 + module/fullcalendar-3.9.0/locale/el.js | 1 + module/fullcalendar-3.9.0/locale/en-au.js | 1 + module/fullcalendar-3.9.0/locale/en-ca.js | 1 + module/fullcalendar-3.9.0/locale/en-gb.js | 1 + module/fullcalendar-3.9.0/locale/en-ie.js | 1 + module/fullcalendar-3.9.0/locale/en-nz.js | 1 + module/fullcalendar-3.9.0/locale/es-do.js | 1 + module/fullcalendar-3.9.0/locale/es-us.js | 1 + module/fullcalendar-3.9.0/locale/es.js | 1 + module/fullcalendar-3.9.0/locale/et.js | 1 + module/fullcalendar-3.9.0/locale/eu.js | 1 + module/fullcalendar-3.9.0/locale/fa.js | 1 + module/fullcalendar-3.9.0/locale/fi.js | 1 + module/fullcalendar-3.9.0/locale/fr-ca.js | 1 + module/fullcalendar-3.9.0/locale/fr-ch.js | 1 + module/fullcalendar-3.9.0/locale/fr.js | 1 + module/fullcalendar-3.9.0/locale/gl.js | 1 + module/fullcalendar-3.9.0/locale/he.js | 1 + module/fullcalendar-3.9.0/locale/hi.js | 1 + module/fullcalendar-3.9.0/locale/hr.js | 1 + module/fullcalendar-3.9.0/locale/hu.js | 1 + module/fullcalendar-3.9.0/locale/id.js | 1 + module/fullcalendar-3.9.0/locale/is.js | 1 + module/fullcalendar-3.9.0/locale/it.js | 1 + module/fullcalendar-3.9.0/locale/ja.js | 1 + module/fullcalendar-3.9.0/locale/ka.js | 1 + module/fullcalendar-3.9.0/locale/kk.js | 1 + module/fullcalendar-3.9.0/locale/ko.js | 1 + module/fullcalendar-3.9.0/locale/lb.js | 1 + module/fullcalendar-3.9.0/locale/lt.js | 1 + module/fullcalendar-3.9.0/locale/lv.js | 1 + module/fullcalendar-3.9.0/locale/mk.js | 1 + module/fullcalendar-3.9.0/locale/ms-my.js | 1 + module/fullcalendar-3.9.0/locale/ms.js | 1 + module/fullcalendar-3.9.0/locale/nb.js | 1 + module/fullcalendar-3.9.0/locale/nl-be.js | 1 + module/fullcalendar-3.9.0/locale/nl.js | 1 + module/fullcalendar-3.9.0/locale/nn.js | 1 + module/fullcalendar-3.9.0/locale/pl.js | 1 + module/fullcalendar-3.9.0/locale/pt-br.js | 1 + module/fullcalendar-3.9.0/locale/pt.js | 1 + module/fullcalendar-3.9.0/locale/ro.js | 1 + module/fullcalendar-3.9.0/locale/ru.js | 1 + module/fullcalendar-3.9.0/locale/sk.js | 1 + module/fullcalendar-3.9.0/locale/sl.js | 1 + module/fullcalendar-3.9.0/locale/sq.js | 1 + module/fullcalendar-3.9.0/locale/sr-cyrl.js | 1 + module/fullcalendar-3.9.0/locale/sr.js | 1 + module/fullcalendar-3.9.0/locale/sv.js | 1 + module/fullcalendar-3.9.0/locale/th.js | 1 + module/fullcalendar-3.9.0/locale/tr.js | 1 + module/fullcalendar-3.9.0/locale/uk.js | 1 + module/fullcalendar-3.9.0/locale/vi.js | 1 + module/fullcalendar-3.9.0/locale/zh-cn.js | 1 + module/fullcalendar-3.9.0/locale/zh-tw.js | 1 + 2477 files changed, 74218 insertions(+), 2 deletions(-) create mode 100644 .env.example create mode 100644 module/@popperjs/core@2.11.8/LICENSE.md create mode 100644 module/@popperjs/core@2.11.8/README.md create mode 100644 module/@popperjs/core@2.11.8/index.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/createPopper.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/createPopper.js create mode 100644 module/@popperjs/core@2.11.8/lib/createPopper.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/contains.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/contains.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/contains.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getBoundingClientRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getBoundingClientRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getBoundingClientRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getClippingRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getClippingRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getClippingRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getCompositeRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getCompositeRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getCompositeRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getComputedStyle.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getComputedStyle.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getComputedStyle.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getDocumentElement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getDocumentElement.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getDocumentElement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getDocumentRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getDocumentRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getDocumentRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getHTMLElementScroll.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getHTMLElementScroll.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getHTMLElementScroll.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getLayoutRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getLayoutRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getLayoutRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getNodeName.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getNodeName.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getNodeName.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getNodeScroll.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getNodeScroll.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getNodeScroll.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getOffsetParent.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getOffsetParent.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getOffsetParent.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getParentNode.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getParentNode.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getParentNode.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getScrollParent.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getScrollParent.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getScrollParent.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getViewportRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getViewportRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getViewportRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindow.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindow.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindow.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindowScroll.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindowScroll.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindowScroll.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindowScrollBarX.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindowScrollBarX.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/getWindowScrollBarX.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/instanceOf.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/instanceOf.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/instanceOf.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isLayoutViewport.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isLayoutViewport.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isLayoutViewport.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isScrollParent.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isScrollParent.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isScrollParent.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isTableElement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isTableElement.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/isTableElement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/listScrollParents.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/listScrollParents.js create mode 100644 module/@popperjs/core@2.11.8/lib/dom-utils/listScrollParents.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/enums.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/enums.js create mode 100644 module/@popperjs/core@2.11.8/lib/enums.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/index.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/index.js create mode 100644 module/@popperjs/core@2.11.8/lib/index.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/applyStyles.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/applyStyles.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/applyStyles.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/arrow.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/arrow.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/arrow.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/computeStyles.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/computeStyles.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/computeStyles.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/eventListeners.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/eventListeners.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/eventListeners.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/flip.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/flip.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/flip.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/hide.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/hide.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/hide.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/index.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/index.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/index.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/offset.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/offset.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/offset.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/popperOffsets.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/popperOffsets.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/popperOffsets.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/preventOverflow.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/preventOverflow.js create mode 100644 module/@popperjs/core@2.11.8/lib/modifiers/preventOverflow.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/popper-base.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/popper-base.js create mode 100644 module/@popperjs/core@2.11.8/lib/popper-base.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/popper-lite.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/popper-lite.js create mode 100644 module/@popperjs/core@2.11.8/lib/popper-lite.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/popper.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/popper.js create mode 100644 module/@popperjs/core@2.11.8/lib/popper.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/types.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/types.js create mode 100644 module/@popperjs/core@2.11.8/lib/types.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/computeAutoPlacement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/computeAutoPlacement.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/computeAutoPlacement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/computeOffsets.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/computeOffsets.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/computeOffsets.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/debounce.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/debounce.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/debounce.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/detectOverflow.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/detectOverflow.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/detectOverflow.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/expandToHashMap.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/expandToHashMap.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/expandToHashMap.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getAltAxis.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getAltAxis.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getAltAxis.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getAltLen.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getAltLen.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getAltLen.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getBasePlacement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getBasePlacement.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getBasePlacement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getFreshSideObject.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getFreshSideObject.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getFreshSideObject.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getMainAxisFromPlacement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getMainAxisFromPlacement.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getMainAxisFromPlacement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getOppositePlacement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getOppositePlacement.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getOppositePlacement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getOppositeVariationPlacement.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getOppositeVariationPlacement.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getOppositeVariationPlacement.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getVariation.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getVariation.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/getVariation.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/math.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/math.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/math.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/mergeByName.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/mergeByName.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/mergeByName.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/mergePaddingObject.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/mergePaddingObject.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/mergePaddingObject.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/orderModifiers.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/orderModifiers.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/orderModifiers.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/rectToClientRect.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/rectToClientRect.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/rectToClientRect.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/uniqueBy.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/uniqueBy.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/uniqueBy.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/userAgent.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/userAgent.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/userAgent.js.flow create mode 100644 module/@popperjs/core@2.11.8/lib/utils/within.d.ts create mode 100644 module/@popperjs/core@2.11.8/lib/utils/within.js create mode 100644 module/@popperjs/core@2.11.8/lib/utils/within.js.flow create mode 100644 module/@popperjs/core@2.11.8/package.json create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-grid.css create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-grid.css.map create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-grid.min.css create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-grid.min.css.map create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-reboot.css create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-reboot.css.map create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-reboot.min.css create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap-reboot.min.css.map create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap.css create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap.css.map create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap.min.css create mode 100644 module/bootstrap-4.0.0-dist/css/bootstrap.min.css.map create mode 100644 module/bootstrap-4.0.0-dist/jquery-3.2.1.slim.min.js create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.bundle.js create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.bundle.js.map create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.bundle.min.js create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.bundle.min.js.map create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.js create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.js.map create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.min.js create mode 100644 module/bootstrap-4.0.0-dist/js/bootstrap.min.js.map create mode 100644 module/bootstrap-4.0.0-dist/popper.min.js create mode 100644 module/bootstrap-icons/LICENSE create mode 100644 module/bootstrap-icons/README.md create mode 100644 module/bootstrap-icons/bootstrap-icons.svg create mode 100644 module/bootstrap-icons/font/bootstrap-icons.css create mode 100644 module/bootstrap-icons/font/bootstrap-icons.json create mode 100644 module/bootstrap-icons/font/bootstrap-icons.min.css create mode 100644 module/bootstrap-icons/font/bootstrap-icons.scss create mode 100644 module/bootstrap-icons/font/fonts/bootstrap-icons.woff create mode 100644 module/bootstrap-icons/font/fonts/bootstrap-icons.woff2 create mode 100644 module/bootstrap-icons/icons/0-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/0-circle.svg create mode 100644 module/bootstrap-icons/icons/0-square-fill.svg create mode 100644 module/bootstrap-icons/icons/0-square.svg create mode 100644 module/bootstrap-icons/icons/1-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/1-circle.svg create mode 100644 module/bootstrap-icons/icons/1-square-fill.svg create mode 100644 module/bootstrap-icons/icons/1-square.svg create mode 100644 module/bootstrap-icons/icons/123.svg create mode 100644 module/bootstrap-icons/icons/2-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/2-circle.svg create mode 100644 module/bootstrap-icons/icons/2-square-fill.svg create mode 100644 module/bootstrap-icons/icons/2-square.svg create mode 100644 module/bootstrap-icons/icons/3-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/3-circle.svg create mode 100644 module/bootstrap-icons/icons/3-square-fill.svg create mode 100644 module/bootstrap-icons/icons/3-square.svg create mode 100644 module/bootstrap-icons/icons/4-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/4-circle.svg create mode 100644 module/bootstrap-icons/icons/4-square-fill.svg create mode 100644 module/bootstrap-icons/icons/4-square.svg create mode 100644 module/bootstrap-icons/icons/5-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/5-circle.svg create mode 100644 module/bootstrap-icons/icons/5-square-fill.svg create mode 100644 module/bootstrap-icons/icons/5-square.svg create mode 100644 module/bootstrap-icons/icons/6-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/6-circle.svg create mode 100644 module/bootstrap-icons/icons/6-square-fill.svg create mode 100644 module/bootstrap-icons/icons/6-square.svg create mode 100644 module/bootstrap-icons/icons/7-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/7-circle.svg create mode 100644 module/bootstrap-icons/icons/7-square-fill.svg create mode 100644 module/bootstrap-icons/icons/7-square.svg create mode 100644 module/bootstrap-icons/icons/8-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/8-circle.svg create mode 100644 module/bootstrap-icons/icons/8-square-fill.svg create mode 100644 module/bootstrap-icons/icons/8-square.svg create mode 100644 module/bootstrap-icons/icons/9-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/9-circle.svg create mode 100644 module/bootstrap-icons/icons/9-square-fill.svg create mode 100644 module/bootstrap-icons/icons/9-square.svg create mode 100644 module/bootstrap-icons/icons/activity.svg create mode 100644 module/bootstrap-icons/icons/airplane-engines-fill.svg create mode 100644 module/bootstrap-icons/icons/airplane-engines.svg create mode 100644 module/bootstrap-icons/icons/airplane-fill.svg create mode 100644 module/bootstrap-icons/icons/airplane.svg create mode 100644 module/bootstrap-icons/icons/alarm-fill.svg create mode 100644 module/bootstrap-icons/icons/alarm.svg create mode 100644 module/bootstrap-icons/icons/alexa.svg create mode 100644 module/bootstrap-icons/icons/align-bottom.svg create mode 100644 module/bootstrap-icons/icons/align-center.svg create mode 100644 module/bootstrap-icons/icons/align-end.svg create mode 100644 module/bootstrap-icons/icons/align-middle.svg create mode 100644 module/bootstrap-icons/icons/align-start.svg create mode 100644 module/bootstrap-icons/icons/align-top.svg create mode 100644 module/bootstrap-icons/icons/alipay.svg create mode 100644 module/bootstrap-icons/icons/alphabet-uppercase.svg create mode 100644 module/bootstrap-icons/icons/alphabet.svg create mode 100644 module/bootstrap-icons/icons/alt.svg create mode 100644 module/bootstrap-icons/icons/amazon.svg create mode 100644 module/bootstrap-icons/icons/amd.svg create mode 100644 module/bootstrap-icons/icons/android.svg create mode 100644 module/bootstrap-icons/icons/android2.svg create mode 100644 module/bootstrap-icons/icons/app-indicator.svg create mode 100644 module/bootstrap-icons/icons/app.svg create mode 100644 module/bootstrap-icons/icons/apple.svg create mode 100644 module/bootstrap-icons/icons/archive-fill.svg create mode 100644 module/bootstrap-icons/icons/archive.svg create mode 100644 module/bootstrap-icons/icons/arrow-90deg-down.svg create mode 100644 module/bootstrap-icons/icons/arrow-90deg-left.svg create mode 100644 module/bootstrap-icons/icons/arrow-90deg-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-90deg-up.svg create mode 100644 module/bootstrap-icons/icons/arrow-bar-down.svg create mode 100644 module/bootstrap-icons/icons/arrow-bar-left.svg create mode 100644 module/bootstrap-icons/icons/arrow-bar-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-bar-up.svg create mode 100644 module/bootstrap-icons/icons/arrow-clockwise.svg create mode 100644 module/bootstrap-icons/icons/arrow-counterclockwise.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-left-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-left-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-left-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-left-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-left.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-right-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-right-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-right-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-right-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-short.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-down-up.svg create mode 100644 module/bootstrap-icons/icons/arrow-down.svg create mode 100644 module/bootstrap-icons/icons/arrow-left-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-left-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-left-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-left-short.svg create mode 100644 module/bootstrap-icons/icons/arrow-left-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-left-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-left.svg create mode 100644 module/bootstrap-icons/icons/arrow-repeat.svg create mode 100644 module/bootstrap-icons/icons/arrow-return-left.svg create mode 100644 module/bootstrap-icons/icons/arrow-return-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-right-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-right-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-right-short.svg create mode 100644 module/bootstrap-icons/icons/arrow-right-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-right-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-through-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-through-heart.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-left-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-left-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-left-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-left-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-left.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-right-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-right-circle.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-right-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-right-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-right.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-short.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-square-fill.svg create mode 100644 module/bootstrap-icons/icons/arrow-up-square.svg create mode 100644 module/bootstrap-icons/icons/arrow-up.svg create mode 100644 module/bootstrap-icons/icons/arrows-angle-contract.svg create mode 100644 module/bootstrap-icons/icons/arrows-angle-expand.svg create mode 100644 module/bootstrap-icons/icons/arrows-collapse-vertical.svg create mode 100644 module/bootstrap-icons/icons/arrows-collapse.svg create mode 100644 module/bootstrap-icons/icons/arrows-expand-vertical.svg create mode 100644 module/bootstrap-icons/icons/arrows-expand.svg create mode 100644 module/bootstrap-icons/icons/arrows-fullscreen.svg create mode 100644 module/bootstrap-icons/icons/arrows-move.svg create mode 100644 module/bootstrap-icons/icons/arrows-vertical.svg create mode 100644 module/bootstrap-icons/icons/arrows.svg create mode 100644 module/bootstrap-icons/icons/aspect-ratio-fill.svg create mode 100644 module/bootstrap-icons/icons/aspect-ratio.svg create mode 100644 module/bootstrap-icons/icons/asterisk.svg create mode 100644 module/bootstrap-icons/icons/at.svg create mode 100644 module/bootstrap-icons/icons/award-fill.svg create mode 100644 module/bootstrap-icons/icons/award.svg create mode 100644 module/bootstrap-icons/icons/back.svg create mode 100644 module/bootstrap-icons/icons/backpack-fill.svg create mode 100644 module/bootstrap-icons/icons/backpack.svg create mode 100644 module/bootstrap-icons/icons/backpack2-fill.svg create mode 100644 module/bootstrap-icons/icons/backpack2.svg create mode 100644 module/bootstrap-icons/icons/backpack3-fill.svg create mode 100644 module/bootstrap-icons/icons/backpack3.svg create mode 100644 module/bootstrap-icons/icons/backpack4-fill.svg create mode 100644 module/bootstrap-icons/icons/backpack4.svg create mode 100644 module/bootstrap-icons/icons/backspace-fill.svg create mode 100644 module/bootstrap-icons/icons/backspace-reverse-fill.svg create mode 100644 module/bootstrap-icons/icons/backspace-reverse.svg create mode 100644 module/bootstrap-icons/icons/backspace.svg create mode 100644 module/bootstrap-icons/icons/badge-3d-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-3d.svg create mode 100644 module/bootstrap-icons/icons/badge-4k-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-4k.svg create mode 100644 module/bootstrap-icons/icons/badge-8k-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-8k.svg create mode 100644 module/bootstrap-icons/icons/badge-ad-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-ad.svg create mode 100644 module/bootstrap-icons/icons/badge-ar-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-ar.svg create mode 100644 module/bootstrap-icons/icons/badge-cc-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-cc.svg create mode 100644 module/bootstrap-icons/icons/badge-hd-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-hd.svg create mode 100644 module/bootstrap-icons/icons/badge-sd-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-sd.svg create mode 100644 module/bootstrap-icons/icons/badge-tm-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-tm.svg create mode 100644 module/bootstrap-icons/icons/badge-vo-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-vo.svg create mode 100644 module/bootstrap-icons/icons/badge-vr-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-vr.svg create mode 100644 module/bootstrap-icons/icons/badge-wc-fill.svg create mode 100644 module/bootstrap-icons/icons/badge-wc.svg create mode 100644 module/bootstrap-icons/icons/bag-check-fill.svg create mode 100644 module/bootstrap-icons/icons/bag-check.svg create mode 100644 module/bootstrap-icons/icons/bag-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/bag-dash.svg create mode 100644 module/bootstrap-icons/icons/bag-fill.svg create mode 100644 module/bootstrap-icons/icons/bag-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/bag-heart.svg create mode 100644 module/bootstrap-icons/icons/bag-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/bag-plus.svg create mode 100644 module/bootstrap-icons/icons/bag-x-fill.svg create mode 100644 module/bootstrap-icons/icons/bag-x.svg create mode 100644 module/bootstrap-icons/icons/bag.svg create mode 100644 module/bootstrap-icons/icons/balloon-fill.svg create mode 100644 module/bootstrap-icons/icons/balloon-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/balloon-heart.svg create mode 100644 module/bootstrap-icons/icons/balloon.svg create mode 100644 module/bootstrap-icons/icons/ban-fill.svg create mode 100644 module/bootstrap-icons/icons/ban.svg create mode 100644 module/bootstrap-icons/icons/bandaid-fill.svg create mode 100644 module/bootstrap-icons/icons/bandaid.svg create mode 100644 module/bootstrap-icons/icons/bank.svg create mode 100644 module/bootstrap-icons/icons/bank2.svg create mode 100644 module/bootstrap-icons/icons/bar-chart-fill.svg create mode 100644 module/bootstrap-icons/icons/bar-chart-line-fill.svg create mode 100644 module/bootstrap-icons/icons/bar-chart-line.svg create mode 100644 module/bootstrap-icons/icons/bar-chart-steps.svg create mode 100644 module/bootstrap-icons/icons/bar-chart.svg create mode 100644 module/bootstrap-icons/icons/basket-fill.svg create mode 100644 module/bootstrap-icons/icons/basket.svg create mode 100644 module/bootstrap-icons/icons/basket2-fill.svg create mode 100644 module/bootstrap-icons/icons/basket2.svg create mode 100644 module/bootstrap-icons/icons/basket3-fill.svg create mode 100644 module/bootstrap-icons/icons/basket3.svg create mode 100644 module/bootstrap-icons/icons/battery-charging.svg create mode 100644 module/bootstrap-icons/icons/battery-full.svg create mode 100644 module/bootstrap-icons/icons/battery-half.svg create mode 100644 module/bootstrap-icons/icons/battery.svg create mode 100644 module/bootstrap-icons/icons/behance.svg create mode 100644 module/bootstrap-icons/icons/bell-fill.svg create mode 100644 module/bootstrap-icons/icons/bell-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/bell-slash.svg create mode 100644 module/bootstrap-icons/icons/bell.svg create mode 100644 module/bootstrap-icons/icons/bezier.svg create mode 100644 module/bootstrap-icons/icons/bezier2.svg create mode 100644 module/bootstrap-icons/icons/bicycle.svg create mode 100644 module/bootstrap-icons/icons/bing.svg create mode 100644 module/bootstrap-icons/icons/binoculars-fill.svg create mode 100644 module/bootstrap-icons/icons/binoculars.svg create mode 100644 module/bootstrap-icons/icons/blockquote-left.svg create mode 100644 module/bootstrap-icons/icons/blockquote-right.svg create mode 100644 module/bootstrap-icons/icons/bluetooth.svg create mode 100644 module/bootstrap-icons/icons/body-text.svg create mode 100644 module/bootstrap-icons/icons/book-fill.svg create mode 100644 module/bootstrap-icons/icons/book-half.svg create mode 100644 module/bootstrap-icons/icons/book.svg create mode 100644 module/bootstrap-icons/icons/bookmark-check-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-check.svg create mode 100644 module/bootstrap-icons/icons/bookmark-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-dash.svg create mode 100644 module/bootstrap-icons/icons/bookmark-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-heart.svg create mode 100644 module/bootstrap-icons/icons/bookmark-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-plus.svg create mode 100644 module/bootstrap-icons/icons/bookmark-star-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-star.svg create mode 100644 module/bootstrap-icons/icons/bookmark-x-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmark-x.svg create mode 100644 module/bootstrap-icons/icons/bookmark.svg create mode 100644 module/bootstrap-icons/icons/bookmarks-fill.svg create mode 100644 module/bootstrap-icons/icons/bookmarks.svg create mode 100644 module/bootstrap-icons/icons/bookshelf.svg create mode 100644 module/bootstrap-icons/icons/boombox-fill.svg create mode 100644 module/bootstrap-icons/icons/boombox.svg create mode 100644 module/bootstrap-icons/icons/bootstrap-fill.svg create mode 100644 module/bootstrap-icons/icons/bootstrap-reboot.svg create mode 100644 module/bootstrap-icons/icons/bootstrap.svg create mode 100644 module/bootstrap-icons/icons/border-all.svg create mode 100644 module/bootstrap-icons/icons/border-bottom.svg create mode 100644 module/bootstrap-icons/icons/border-center.svg create mode 100644 module/bootstrap-icons/icons/border-inner.svg create mode 100644 module/bootstrap-icons/icons/border-left.svg create mode 100644 module/bootstrap-icons/icons/border-middle.svg create mode 100644 module/bootstrap-icons/icons/border-outer.svg create mode 100644 module/bootstrap-icons/icons/border-right.svg create mode 100644 module/bootstrap-icons/icons/border-style.svg create mode 100644 module/bootstrap-icons/icons/border-top.svg create mode 100644 module/bootstrap-icons/icons/border-width.svg create mode 100644 module/bootstrap-icons/icons/border.svg create mode 100644 module/bootstrap-icons/icons/bounding-box-circles.svg create mode 100644 module/bootstrap-icons/icons/bounding-box.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-down-left.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-down-right.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-down-left.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-down-right.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-down.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-left.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-right.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-up-left.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-up-right.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-in-up.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-left.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-right.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-up-left.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-up-right.svg create mode 100644 module/bootstrap-icons/icons/box-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/box-fill.svg create mode 100644 module/bootstrap-icons/icons/box-seam-fill.svg create mode 100644 module/bootstrap-icons/icons/box-seam.svg create mode 100644 module/bootstrap-icons/icons/box.svg create mode 100644 module/bootstrap-icons/icons/box2-fill.svg create mode 100644 module/bootstrap-icons/icons/box2-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/box2-heart.svg create mode 100644 module/bootstrap-icons/icons/box2.svg create mode 100644 module/bootstrap-icons/icons/boxes.svg create mode 100644 module/bootstrap-icons/icons/braces-asterisk.svg create mode 100644 module/bootstrap-icons/icons/braces.svg create mode 100644 module/bootstrap-icons/icons/bricks.svg create mode 100644 module/bootstrap-icons/icons/briefcase-fill.svg create mode 100644 module/bootstrap-icons/icons/briefcase.svg create mode 100644 module/bootstrap-icons/icons/brightness-alt-high-fill.svg create mode 100644 module/bootstrap-icons/icons/brightness-alt-high.svg create mode 100644 module/bootstrap-icons/icons/brightness-alt-low-fill.svg create mode 100644 module/bootstrap-icons/icons/brightness-alt-low.svg create mode 100644 module/bootstrap-icons/icons/brightness-high-fill.svg create mode 100644 module/bootstrap-icons/icons/brightness-high.svg create mode 100644 module/bootstrap-icons/icons/brightness-low-fill.svg create mode 100644 module/bootstrap-icons/icons/brightness-low.svg create mode 100644 module/bootstrap-icons/icons/brilliance.svg create mode 100644 module/bootstrap-icons/icons/broadcast-pin.svg create mode 100644 module/bootstrap-icons/icons/broadcast.svg create mode 100644 module/bootstrap-icons/icons/browser-chrome.svg create mode 100644 module/bootstrap-icons/icons/browser-edge.svg create mode 100644 module/bootstrap-icons/icons/browser-firefox.svg create mode 100644 module/bootstrap-icons/icons/browser-safari.svg create mode 100644 module/bootstrap-icons/icons/brush-fill.svg create mode 100644 module/bootstrap-icons/icons/brush.svg create mode 100644 module/bootstrap-icons/icons/bucket-fill.svg create mode 100644 module/bootstrap-icons/icons/bucket.svg create mode 100644 module/bootstrap-icons/icons/bug-fill.svg create mode 100644 module/bootstrap-icons/icons/bug.svg create mode 100644 module/bootstrap-icons/icons/building-add.svg create mode 100644 module/bootstrap-icons/icons/building-check.svg create mode 100644 module/bootstrap-icons/icons/building-dash.svg create mode 100644 module/bootstrap-icons/icons/building-down.svg create mode 100644 module/bootstrap-icons/icons/building-exclamation.svg create mode 100644 module/bootstrap-icons/icons/building-fill-add.svg create mode 100644 module/bootstrap-icons/icons/building-fill-check.svg create mode 100644 module/bootstrap-icons/icons/building-fill-dash.svg create mode 100644 module/bootstrap-icons/icons/building-fill-down.svg create mode 100644 module/bootstrap-icons/icons/building-fill-exclamation.svg create mode 100644 module/bootstrap-icons/icons/building-fill-gear.svg create mode 100644 module/bootstrap-icons/icons/building-fill-lock.svg create mode 100644 module/bootstrap-icons/icons/building-fill-slash.svg create mode 100644 module/bootstrap-icons/icons/building-fill-up.svg create mode 100644 module/bootstrap-icons/icons/building-fill-x.svg create mode 100644 module/bootstrap-icons/icons/building-fill.svg create mode 100644 module/bootstrap-icons/icons/building-gear.svg create mode 100644 module/bootstrap-icons/icons/building-lock.svg create mode 100644 module/bootstrap-icons/icons/building-slash.svg create mode 100644 module/bootstrap-icons/icons/building-up.svg create mode 100644 module/bootstrap-icons/icons/building-x.svg create mode 100644 module/bootstrap-icons/icons/building.svg create mode 100644 module/bootstrap-icons/icons/buildings-fill.svg create mode 100644 module/bootstrap-icons/icons/buildings.svg create mode 100644 module/bootstrap-icons/icons/bullseye.svg create mode 100644 module/bootstrap-icons/icons/bus-front-fill.svg create mode 100644 module/bootstrap-icons/icons/bus-front.svg create mode 100644 module/bootstrap-icons/icons/c-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/c-circle.svg create mode 100644 module/bootstrap-icons/icons/c-square-fill.svg create mode 100644 module/bootstrap-icons/icons/c-square.svg create mode 100644 module/bootstrap-icons/icons/cake-fill.svg create mode 100644 module/bootstrap-icons/icons/cake.svg create mode 100644 module/bootstrap-icons/icons/cake2-fill.svg create mode 100644 module/bootstrap-icons/icons/cake2.svg create mode 100644 module/bootstrap-icons/icons/calculator-fill.svg create mode 100644 module/bootstrap-icons/icons/calculator.svg create mode 100644 module/bootstrap-icons/icons/calendar-check-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-check.svg create mode 100644 module/bootstrap-icons/icons/calendar-date-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-date.svg create mode 100644 module/bootstrap-icons/icons/calendar-day-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-day.svg create mode 100644 module/bootstrap-icons/icons/calendar-event-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-event.svg create mode 100644 module/bootstrap-icons/icons/calendar-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-heart.svg create mode 100644 module/bootstrap-icons/icons/calendar-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-minus.svg create mode 100644 module/bootstrap-icons/icons/calendar-month-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-month.svg create mode 100644 module/bootstrap-icons/icons/calendar-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-plus.svg create mode 100644 module/bootstrap-icons/icons/calendar-range-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-range.svg create mode 100644 module/bootstrap-icons/icons/calendar-week-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-week.svg create mode 100644 module/bootstrap-icons/icons/calendar-x-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar-x.svg create mode 100644 module/bootstrap-icons/icons/calendar.svg create mode 100644 module/bootstrap-icons/icons/calendar2-check-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-check.svg create mode 100644 module/bootstrap-icons/icons/calendar2-date-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-date.svg create mode 100644 module/bootstrap-icons/icons/calendar2-day-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-day.svg create mode 100644 module/bootstrap-icons/icons/calendar2-event-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-event.svg create mode 100644 module/bootstrap-icons/icons/calendar2-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-heart.svg create mode 100644 module/bootstrap-icons/icons/calendar2-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-minus.svg create mode 100644 module/bootstrap-icons/icons/calendar2-month-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-month.svg create mode 100644 module/bootstrap-icons/icons/calendar2-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-plus.svg create mode 100644 module/bootstrap-icons/icons/calendar2-range-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-range.svg create mode 100644 module/bootstrap-icons/icons/calendar2-week-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-week.svg create mode 100644 module/bootstrap-icons/icons/calendar2-x-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar2-x.svg create mode 100644 module/bootstrap-icons/icons/calendar2.svg create mode 100644 module/bootstrap-icons/icons/calendar3-event-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar3-event.svg create mode 100644 module/bootstrap-icons/icons/calendar3-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar3-range-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar3-range.svg create mode 100644 module/bootstrap-icons/icons/calendar3-week-fill.svg create mode 100644 module/bootstrap-icons/icons/calendar3-week.svg create mode 100644 module/bootstrap-icons/icons/calendar3.svg create mode 100644 module/bootstrap-icons/icons/calendar4-event.svg create mode 100644 module/bootstrap-icons/icons/calendar4-range.svg create mode 100644 module/bootstrap-icons/icons/calendar4-week.svg create mode 100644 module/bootstrap-icons/icons/calendar4.svg create mode 100644 module/bootstrap-icons/icons/camera-fill.svg create mode 100644 module/bootstrap-icons/icons/camera-reels-fill.svg create mode 100644 module/bootstrap-icons/icons/camera-reels.svg create mode 100644 module/bootstrap-icons/icons/camera-video-fill.svg create mode 100644 module/bootstrap-icons/icons/camera-video-off-fill.svg create mode 100644 module/bootstrap-icons/icons/camera-video-off.svg create mode 100644 module/bootstrap-icons/icons/camera-video.svg create mode 100644 module/bootstrap-icons/icons/camera.svg create mode 100644 module/bootstrap-icons/icons/camera2.svg create mode 100644 module/bootstrap-icons/icons/capslock-fill.svg create mode 100644 module/bootstrap-icons/icons/capslock.svg create mode 100644 module/bootstrap-icons/icons/capsule-pill.svg create mode 100644 module/bootstrap-icons/icons/capsule.svg create mode 100644 module/bootstrap-icons/icons/car-front-fill.svg create mode 100644 module/bootstrap-icons/icons/car-front.svg create mode 100644 module/bootstrap-icons/icons/card-checklist.svg create mode 100644 module/bootstrap-icons/icons/card-heading.svg create mode 100644 module/bootstrap-icons/icons/card-image.svg create mode 100644 module/bootstrap-icons/icons/card-list.svg create mode 100644 module/bootstrap-icons/icons/card-text.svg create mode 100644 module/bootstrap-icons/icons/caret-down-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-down-square-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-down-square.svg create mode 100644 module/bootstrap-icons/icons/caret-down.svg create mode 100644 module/bootstrap-icons/icons/caret-left-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-left-square-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-left-square.svg create mode 100644 module/bootstrap-icons/icons/caret-left.svg create mode 100644 module/bootstrap-icons/icons/caret-right-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-right-square-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-right-square.svg create mode 100644 module/bootstrap-icons/icons/caret-right.svg create mode 100644 module/bootstrap-icons/icons/caret-up-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-up-square-fill.svg create mode 100644 module/bootstrap-icons/icons/caret-up-square.svg create mode 100644 module/bootstrap-icons/icons/caret-up.svg create mode 100644 module/bootstrap-icons/icons/cart-check-fill.svg create mode 100644 module/bootstrap-icons/icons/cart-check.svg create mode 100644 module/bootstrap-icons/icons/cart-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/cart-dash.svg create mode 100644 module/bootstrap-icons/icons/cart-fill.svg create mode 100644 module/bootstrap-icons/icons/cart-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/cart-plus.svg create mode 100644 module/bootstrap-icons/icons/cart-x-fill.svg create mode 100644 module/bootstrap-icons/icons/cart-x.svg create mode 100644 module/bootstrap-icons/icons/cart.svg create mode 100644 module/bootstrap-icons/icons/cart2.svg create mode 100644 module/bootstrap-icons/icons/cart3.svg create mode 100644 module/bootstrap-icons/icons/cart4.svg create mode 100644 module/bootstrap-icons/icons/cash-coin.svg create mode 100644 module/bootstrap-icons/icons/cash-stack.svg create mode 100644 module/bootstrap-icons/icons/cash.svg create mode 100644 module/bootstrap-icons/icons/cassette-fill.svg create mode 100644 module/bootstrap-icons/icons/cassette.svg create mode 100644 module/bootstrap-icons/icons/cast.svg create mode 100644 module/bootstrap-icons/icons/cc-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/cc-circle.svg create mode 100644 module/bootstrap-icons/icons/cc-square-fill.svg create mode 100644 module/bootstrap-icons/icons/cc-square.svg create mode 100644 module/bootstrap-icons/icons/chat-dots-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-dots.svg create mode 100644 module/bootstrap-icons/icons/chat-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-heart.svg create mode 100644 module/bootstrap-icons/icons/chat-left-dots-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-left-dots.svg create mode 100644 module/bootstrap-icons/icons/chat-left-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-left-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-left-heart.svg create mode 100644 module/bootstrap-icons/icons/chat-left-quote-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-left-quote.svg create mode 100644 module/bootstrap-icons/icons/chat-left-text-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-left-text.svg create mode 100644 module/bootstrap-icons/icons/chat-left.svg create mode 100644 module/bootstrap-icons/icons/chat-quote-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-quote.svg create mode 100644 module/bootstrap-icons/icons/chat-right-dots-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-right-dots.svg create mode 100644 module/bootstrap-icons/icons/chat-right-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-right-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-right-heart.svg create mode 100644 module/bootstrap-icons/icons/chat-right-quote-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-right-quote.svg create mode 100644 module/bootstrap-icons/icons/chat-right-text-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-right-text.svg create mode 100644 module/bootstrap-icons/icons/chat-right.svg create mode 100644 module/bootstrap-icons/icons/chat-square-dots-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-square-dots.svg create mode 100644 module/bootstrap-icons/icons/chat-square-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-square-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-square-heart.svg create mode 100644 module/bootstrap-icons/icons/chat-square-quote-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-square-quote.svg create mode 100644 module/bootstrap-icons/icons/chat-square-text-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-square-text.svg create mode 100644 module/bootstrap-icons/icons/chat-square.svg create mode 100644 module/bootstrap-icons/icons/chat-text-fill.svg create mode 100644 module/bootstrap-icons/icons/chat-text.svg create mode 100644 module/bootstrap-icons/icons/chat.svg create mode 100644 module/bootstrap-icons/icons/check-all.svg create mode 100644 module/bootstrap-icons/icons/check-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/check-circle.svg create mode 100644 module/bootstrap-icons/icons/check-lg.svg create mode 100644 module/bootstrap-icons/icons/check-square-fill.svg create mode 100644 module/bootstrap-icons/icons/check-square.svg create mode 100644 module/bootstrap-icons/icons/check.svg create mode 100644 module/bootstrap-icons/icons/check2-all.svg create mode 100644 module/bootstrap-icons/icons/check2-circle.svg create mode 100644 module/bootstrap-icons/icons/check2-square.svg create mode 100644 module/bootstrap-icons/icons/check2.svg create mode 100644 module/bootstrap-icons/icons/chevron-bar-contract.svg create mode 100644 module/bootstrap-icons/icons/chevron-bar-down.svg create mode 100644 module/bootstrap-icons/icons/chevron-bar-expand.svg create mode 100644 module/bootstrap-icons/icons/chevron-bar-left.svg create mode 100644 module/bootstrap-icons/icons/chevron-bar-right.svg create mode 100644 module/bootstrap-icons/icons/chevron-bar-up.svg create mode 100644 module/bootstrap-icons/icons/chevron-compact-down.svg create mode 100644 module/bootstrap-icons/icons/chevron-compact-left.svg create mode 100644 module/bootstrap-icons/icons/chevron-compact-right.svg create mode 100644 module/bootstrap-icons/icons/chevron-compact-up.svg create mode 100644 module/bootstrap-icons/icons/chevron-contract.svg create mode 100644 module/bootstrap-icons/icons/chevron-double-down.svg create mode 100644 module/bootstrap-icons/icons/chevron-double-left.svg create mode 100644 module/bootstrap-icons/icons/chevron-double-right.svg create mode 100644 module/bootstrap-icons/icons/chevron-double-up.svg create mode 100644 module/bootstrap-icons/icons/chevron-down.svg create mode 100644 module/bootstrap-icons/icons/chevron-expand.svg create mode 100644 module/bootstrap-icons/icons/chevron-left.svg create mode 100644 module/bootstrap-icons/icons/chevron-right.svg create mode 100644 module/bootstrap-icons/icons/chevron-up.svg create mode 100644 module/bootstrap-icons/icons/circle-fill.svg create mode 100644 module/bootstrap-icons/icons/circle-half.svg create mode 100644 module/bootstrap-icons/icons/circle-square.svg create mode 100644 module/bootstrap-icons/icons/circle.svg create mode 100644 module/bootstrap-icons/icons/clipboard-check-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-check.svg create mode 100644 module/bootstrap-icons/icons/clipboard-data-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-data.svg create mode 100644 module/bootstrap-icons/icons/clipboard-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-heart.svg create mode 100644 module/bootstrap-icons/icons/clipboard-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-minus.svg create mode 100644 module/bootstrap-icons/icons/clipboard-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-plus.svg create mode 100644 module/bootstrap-icons/icons/clipboard-pulse.svg create mode 100644 module/bootstrap-icons/icons/clipboard-x-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard-x.svg create mode 100644 module/bootstrap-icons/icons/clipboard.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-check-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-check.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-data-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-data.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-heart.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-minus.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-plus.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-pulse-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-pulse.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-x-fill.svg create mode 100644 module/bootstrap-icons/icons/clipboard2-x.svg create mode 100644 module/bootstrap-icons/icons/clipboard2.svg create mode 100644 module/bootstrap-icons/icons/clock-fill.svg create mode 100644 module/bootstrap-icons/icons/clock-history.svg create mode 100644 module/bootstrap-icons/icons/clock.svg create mode 100644 module/bootstrap-icons/icons/cloud-arrow-down-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/cloud-arrow-up-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/cloud-check-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-check.svg create mode 100644 module/bootstrap-icons/icons/cloud-download-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-download.svg create mode 100644 module/bootstrap-icons/icons/cloud-drizzle-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-drizzle.svg create mode 100644 module/bootstrap-icons/icons/cloud-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-fog-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-fog.svg create mode 100644 module/bootstrap-icons/icons/cloud-fog2-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-fog2.svg create mode 100644 module/bootstrap-icons/icons/cloud-hail-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-hail.svg create mode 100644 module/bootstrap-icons/icons/cloud-haze-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-haze.svg create mode 100644 module/bootstrap-icons/icons/cloud-haze2-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-haze2.svg create mode 100644 module/bootstrap-icons/icons/cloud-lightning-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-lightning-rain-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-lightning-rain.svg create mode 100644 module/bootstrap-icons/icons/cloud-lightning.svg create mode 100644 module/bootstrap-icons/icons/cloud-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-minus.svg create mode 100644 module/bootstrap-icons/icons/cloud-moon-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-moon.svg create mode 100644 module/bootstrap-icons/icons/cloud-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-plus.svg create mode 100644 module/bootstrap-icons/icons/cloud-rain-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-rain-heavy-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-rain-heavy.svg create mode 100644 module/bootstrap-icons/icons/cloud-rain.svg create mode 100644 module/bootstrap-icons/icons/cloud-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-slash.svg create mode 100644 module/bootstrap-icons/icons/cloud-sleet-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-sleet.svg create mode 100644 module/bootstrap-icons/icons/cloud-snow-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-snow.svg create mode 100644 module/bootstrap-icons/icons/cloud-sun-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-sun.svg create mode 100644 module/bootstrap-icons/icons/cloud-upload-fill.svg create mode 100644 module/bootstrap-icons/icons/cloud-upload.svg create mode 100644 module/bootstrap-icons/icons/cloud.svg create mode 100644 module/bootstrap-icons/icons/clouds-fill.svg create mode 100644 module/bootstrap-icons/icons/clouds.svg create mode 100644 module/bootstrap-icons/icons/cloudy-fill.svg create mode 100644 module/bootstrap-icons/icons/cloudy.svg create mode 100644 module/bootstrap-icons/icons/code-slash.svg create mode 100644 module/bootstrap-icons/icons/code-square.svg create mode 100644 module/bootstrap-icons/icons/code.svg create mode 100644 module/bootstrap-icons/icons/coin.svg create mode 100644 module/bootstrap-icons/icons/collection-fill.svg create mode 100644 module/bootstrap-icons/icons/collection-play-fill.svg create mode 100644 module/bootstrap-icons/icons/collection-play.svg create mode 100644 module/bootstrap-icons/icons/collection.svg create mode 100644 module/bootstrap-icons/icons/columns-gap.svg create mode 100644 module/bootstrap-icons/icons/columns.svg create mode 100644 module/bootstrap-icons/icons/command.svg create mode 100644 module/bootstrap-icons/icons/compass-fill.svg create mode 100644 module/bootstrap-icons/icons/compass.svg create mode 100644 module/bootstrap-icons/icons/cone-striped.svg create mode 100644 module/bootstrap-icons/icons/cone.svg create mode 100644 module/bootstrap-icons/icons/controller.svg create mode 100644 module/bootstrap-icons/icons/cookie.svg create mode 100644 module/bootstrap-icons/icons/copy.svg create mode 100644 module/bootstrap-icons/icons/cpu-fill.svg create mode 100644 module/bootstrap-icons/icons/cpu.svg create mode 100644 module/bootstrap-icons/icons/credit-card-2-back-fill.svg create mode 100644 module/bootstrap-icons/icons/credit-card-2-back.svg create mode 100644 module/bootstrap-icons/icons/credit-card-2-front-fill.svg create mode 100644 module/bootstrap-icons/icons/credit-card-2-front.svg create mode 100644 module/bootstrap-icons/icons/credit-card-fill.svg create mode 100644 module/bootstrap-icons/icons/credit-card.svg create mode 100644 module/bootstrap-icons/icons/crop.svg create mode 100644 module/bootstrap-icons/icons/crosshair.svg create mode 100644 module/bootstrap-icons/icons/crosshair2.svg create mode 100644 module/bootstrap-icons/icons/cup-fill.svg create mode 100644 module/bootstrap-icons/icons/cup-hot-fill.svg create mode 100644 module/bootstrap-icons/icons/cup-hot.svg create mode 100644 module/bootstrap-icons/icons/cup-straw.svg create mode 100644 module/bootstrap-icons/icons/cup.svg create mode 100644 module/bootstrap-icons/icons/currency-bitcoin.svg create mode 100644 module/bootstrap-icons/icons/currency-dollar.svg create mode 100644 module/bootstrap-icons/icons/currency-euro.svg create mode 100644 module/bootstrap-icons/icons/currency-exchange.svg create mode 100644 module/bootstrap-icons/icons/currency-pound.svg create mode 100644 module/bootstrap-icons/icons/currency-rupee.svg create mode 100644 module/bootstrap-icons/icons/currency-yen.svg create mode 100644 module/bootstrap-icons/icons/cursor-fill.svg create mode 100644 module/bootstrap-icons/icons/cursor-text.svg create mode 100644 module/bootstrap-icons/icons/cursor.svg create mode 100644 module/bootstrap-icons/icons/dash-circle-dotted.svg create mode 100644 module/bootstrap-icons/icons/dash-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/dash-circle.svg create mode 100644 module/bootstrap-icons/icons/dash-lg.svg create mode 100644 module/bootstrap-icons/icons/dash-square-dotted.svg create mode 100644 module/bootstrap-icons/icons/dash-square-fill.svg create mode 100644 module/bootstrap-icons/icons/dash-square.svg create mode 100644 module/bootstrap-icons/icons/dash.svg create mode 100644 module/bootstrap-icons/icons/database-add.svg create mode 100644 module/bootstrap-icons/icons/database-check.svg create mode 100644 module/bootstrap-icons/icons/database-dash.svg create mode 100644 module/bootstrap-icons/icons/database-down.svg create mode 100644 module/bootstrap-icons/icons/database-exclamation.svg create mode 100644 module/bootstrap-icons/icons/database-fill-add.svg create mode 100644 module/bootstrap-icons/icons/database-fill-check.svg create mode 100644 module/bootstrap-icons/icons/database-fill-dash.svg create mode 100644 module/bootstrap-icons/icons/database-fill-down.svg create mode 100644 module/bootstrap-icons/icons/database-fill-exclamation.svg create mode 100644 module/bootstrap-icons/icons/database-fill-gear.svg create mode 100644 module/bootstrap-icons/icons/database-fill-lock.svg create mode 100644 module/bootstrap-icons/icons/database-fill-slash.svg create mode 100644 module/bootstrap-icons/icons/database-fill-up.svg create mode 100644 module/bootstrap-icons/icons/database-fill-x.svg create mode 100644 module/bootstrap-icons/icons/database-fill.svg create mode 100644 module/bootstrap-icons/icons/database-gear.svg create mode 100644 module/bootstrap-icons/icons/database-lock.svg create mode 100644 module/bootstrap-icons/icons/database-slash.svg create mode 100644 module/bootstrap-icons/icons/database-up.svg create mode 100644 module/bootstrap-icons/icons/database-x.svg create mode 100644 module/bootstrap-icons/icons/database.svg create mode 100644 module/bootstrap-icons/icons/device-hdd-fill.svg create mode 100644 module/bootstrap-icons/icons/device-hdd.svg create mode 100644 module/bootstrap-icons/icons/device-ssd-fill.svg create mode 100644 module/bootstrap-icons/icons/device-ssd.svg create mode 100644 module/bootstrap-icons/icons/diagram-2-fill.svg create mode 100644 module/bootstrap-icons/icons/diagram-2.svg create mode 100644 module/bootstrap-icons/icons/diagram-3-fill.svg create mode 100644 module/bootstrap-icons/icons/diagram-3.svg create mode 100644 module/bootstrap-icons/icons/diamond-fill.svg create mode 100644 module/bootstrap-icons/icons/diamond-half.svg create mode 100644 module/bootstrap-icons/icons/diamond.svg create mode 100644 module/bootstrap-icons/icons/dice-1-fill.svg create mode 100644 module/bootstrap-icons/icons/dice-1.svg create mode 100644 module/bootstrap-icons/icons/dice-2-fill.svg create mode 100644 module/bootstrap-icons/icons/dice-2.svg create mode 100644 module/bootstrap-icons/icons/dice-3-fill.svg create mode 100644 module/bootstrap-icons/icons/dice-3.svg create mode 100644 module/bootstrap-icons/icons/dice-4-fill.svg create mode 100644 module/bootstrap-icons/icons/dice-4.svg create mode 100644 module/bootstrap-icons/icons/dice-5-fill.svg create mode 100644 module/bootstrap-icons/icons/dice-5.svg create mode 100644 module/bootstrap-icons/icons/dice-6-fill.svg create mode 100644 module/bootstrap-icons/icons/dice-6.svg create mode 100644 module/bootstrap-icons/icons/disc-fill.svg create mode 100644 module/bootstrap-icons/icons/disc.svg create mode 100644 module/bootstrap-icons/icons/discord.svg create mode 100644 module/bootstrap-icons/icons/display-fill.svg create mode 100644 module/bootstrap-icons/icons/display.svg create mode 100644 module/bootstrap-icons/icons/displayport-fill.svg create mode 100644 module/bootstrap-icons/icons/displayport.svg create mode 100644 module/bootstrap-icons/icons/distribute-horizontal.svg create mode 100644 module/bootstrap-icons/icons/distribute-vertical.svg create mode 100644 module/bootstrap-icons/icons/door-closed-fill.svg create mode 100644 module/bootstrap-icons/icons/door-closed.svg create mode 100644 module/bootstrap-icons/icons/door-open-fill.svg create mode 100644 module/bootstrap-icons/icons/door-open.svg create mode 100644 module/bootstrap-icons/icons/dot.svg create mode 100644 module/bootstrap-icons/icons/download.svg create mode 100644 module/bootstrap-icons/icons/dpad-fill.svg create mode 100644 module/bootstrap-icons/icons/dpad.svg create mode 100644 module/bootstrap-icons/icons/dribbble.svg create mode 100644 module/bootstrap-icons/icons/dropbox.svg create mode 100644 module/bootstrap-icons/icons/droplet-fill.svg create mode 100644 module/bootstrap-icons/icons/droplet-half.svg create mode 100644 module/bootstrap-icons/icons/droplet.svg create mode 100644 module/bootstrap-icons/icons/duffle-fill.svg create mode 100644 module/bootstrap-icons/icons/duffle.svg create mode 100644 module/bootstrap-icons/icons/ear-fill.svg create mode 100644 module/bootstrap-icons/icons/ear.svg create mode 100644 module/bootstrap-icons/icons/earbuds.svg create mode 100644 module/bootstrap-icons/icons/easel-fill.svg create mode 100644 module/bootstrap-icons/icons/easel.svg create mode 100644 module/bootstrap-icons/icons/easel2-fill.svg create mode 100644 module/bootstrap-icons/icons/easel2.svg create mode 100644 module/bootstrap-icons/icons/easel3-fill.svg create mode 100644 module/bootstrap-icons/icons/easel3.svg create mode 100644 module/bootstrap-icons/icons/egg-fill.svg create mode 100644 module/bootstrap-icons/icons/egg-fried.svg create mode 100644 module/bootstrap-icons/icons/egg.svg create mode 100644 module/bootstrap-icons/icons/eject-fill.svg create mode 100644 module/bootstrap-icons/icons/eject.svg create mode 100644 module/bootstrap-icons/icons/emoji-angry-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-angry.svg create mode 100644 module/bootstrap-icons/icons/emoji-astonished-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-astonished.svg create mode 100644 module/bootstrap-icons/icons/emoji-dizzy-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-dizzy.svg create mode 100644 module/bootstrap-icons/icons/emoji-expressionless-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-expressionless.svg create mode 100644 module/bootstrap-icons/icons/emoji-frown-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-frown.svg create mode 100644 module/bootstrap-icons/icons/emoji-grimace-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-grimace.svg create mode 100644 module/bootstrap-icons/icons/emoji-grin-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-grin.svg create mode 100644 module/bootstrap-icons/icons/emoji-heart-eyes-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-heart-eyes.svg create mode 100644 module/bootstrap-icons/icons/emoji-kiss-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-kiss.svg create mode 100644 module/bootstrap-icons/icons/emoji-laughing-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-laughing.svg create mode 100644 module/bootstrap-icons/icons/emoji-neutral-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-neutral.svg create mode 100644 module/bootstrap-icons/icons/emoji-smile-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-smile-upside-down-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-smile-upside-down.svg create mode 100644 module/bootstrap-icons/icons/emoji-smile.svg create mode 100644 module/bootstrap-icons/icons/emoji-sunglasses-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-sunglasses.svg create mode 100644 module/bootstrap-icons/icons/emoji-surprise-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-surprise.svg create mode 100644 module/bootstrap-icons/icons/emoji-tear-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-tear.svg create mode 100644 module/bootstrap-icons/icons/emoji-wink-fill.svg create mode 100644 module/bootstrap-icons/icons/emoji-wink.svg create mode 100644 module/bootstrap-icons/icons/envelope-arrow-down-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/envelope-arrow-up-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/envelope-at-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-at.svg create mode 100644 module/bootstrap-icons/icons/envelope-check-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-check.svg create mode 100644 module/bootstrap-icons/icons/envelope-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-dash.svg create mode 100644 module/bootstrap-icons/icons/envelope-exclamation-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-exclamation.svg create mode 100644 module/bootstrap-icons/icons/envelope-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-heart.svg create mode 100644 module/bootstrap-icons/icons/envelope-open-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-open-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-open-heart.svg create mode 100644 module/bootstrap-icons/icons/envelope-open.svg create mode 100644 module/bootstrap-icons/icons/envelope-paper-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-paper-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-paper-heart.svg create mode 100644 module/bootstrap-icons/icons/envelope-paper.svg create mode 100644 module/bootstrap-icons/icons/envelope-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-plus.svg create mode 100644 module/bootstrap-icons/icons/envelope-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-slash.svg create mode 100644 module/bootstrap-icons/icons/envelope-x-fill.svg create mode 100644 module/bootstrap-icons/icons/envelope-x.svg create mode 100644 module/bootstrap-icons/icons/envelope.svg create mode 100644 module/bootstrap-icons/icons/eraser-fill.svg create mode 100644 module/bootstrap-icons/icons/eraser.svg create mode 100644 module/bootstrap-icons/icons/escape.svg create mode 100644 module/bootstrap-icons/icons/ethernet.svg create mode 100644 module/bootstrap-icons/icons/ev-front-fill.svg create mode 100644 module/bootstrap-icons/icons/ev-front.svg create mode 100644 module/bootstrap-icons/icons/ev-station-fill.svg create mode 100644 module/bootstrap-icons/icons/ev-station.svg create mode 100644 module/bootstrap-icons/icons/exclamation-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/exclamation-circle.svg create mode 100644 module/bootstrap-icons/icons/exclamation-diamond-fill.svg create mode 100644 module/bootstrap-icons/icons/exclamation-diamond.svg create mode 100644 module/bootstrap-icons/icons/exclamation-lg.svg create mode 100644 module/bootstrap-icons/icons/exclamation-octagon-fill.svg create mode 100644 module/bootstrap-icons/icons/exclamation-octagon.svg create mode 100644 module/bootstrap-icons/icons/exclamation-square-fill.svg create mode 100644 module/bootstrap-icons/icons/exclamation-square.svg create mode 100644 module/bootstrap-icons/icons/exclamation-triangle-fill.svg create mode 100644 module/bootstrap-icons/icons/exclamation-triangle.svg create mode 100644 module/bootstrap-icons/icons/exclamation.svg create mode 100644 module/bootstrap-icons/icons/exclude.svg create mode 100644 module/bootstrap-icons/icons/explicit-fill.svg create mode 100644 module/bootstrap-icons/icons/explicit.svg create mode 100644 module/bootstrap-icons/icons/exposure.svg create mode 100644 module/bootstrap-icons/icons/eye-fill.svg create mode 100644 module/bootstrap-icons/icons/eye-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/eye-slash.svg create mode 100644 module/bootstrap-icons/icons/eye.svg create mode 100644 module/bootstrap-icons/icons/eyedropper.svg create mode 100644 module/bootstrap-icons/icons/eyeglasses.svg create mode 100644 module/bootstrap-icons/icons/facebook.svg create mode 100644 module/bootstrap-icons/icons/fan.svg create mode 100644 module/bootstrap-icons/icons/fast-forward-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/fast-forward-btn.svg create mode 100644 module/bootstrap-icons/icons/fast-forward-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/fast-forward-circle.svg create mode 100644 module/bootstrap-icons/icons/fast-forward-fill.svg create mode 100644 module/bootstrap-icons/icons/fast-forward.svg create mode 100644 module/bootstrap-icons/icons/feather.svg create mode 100644 module/bootstrap-icons/icons/feather2.svg create mode 100644 module/bootstrap-icons/icons/file-arrow-down-fill.svg create mode 100644 module/bootstrap-icons/icons/file-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/file-arrow-up-fill.svg create mode 100644 module/bootstrap-icons/icons/file-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/file-bar-graph-fill.svg create mode 100644 module/bootstrap-icons/icons/file-bar-graph.svg create mode 100644 module/bootstrap-icons/icons/file-binary-fill.svg create mode 100644 module/bootstrap-icons/icons/file-binary.svg create mode 100644 module/bootstrap-icons/icons/file-break-fill.svg create mode 100644 module/bootstrap-icons/icons/file-break.svg create mode 100644 module/bootstrap-icons/icons/file-check-fill.svg create mode 100644 module/bootstrap-icons/icons/file-check.svg create mode 100644 module/bootstrap-icons/icons/file-code-fill.svg create mode 100644 module/bootstrap-icons/icons/file-code.svg create mode 100644 module/bootstrap-icons/icons/file-diff-fill.svg create mode 100644 module/bootstrap-icons/icons/file-diff.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-arrow-down-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-arrow-up-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-bar-graph-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-bar-graph.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-binary-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-binary.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-break-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-break.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-check-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-check.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-code-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-code.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-diff-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-diff.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-easel-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-easel.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-excel-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-excel.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-font-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-font.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-image-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-image.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-lock-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-lock.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-lock2-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-lock2.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-medical-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-medical.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-minus.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-music-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-music.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-pdf-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-pdf.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-person-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-person.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-play-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-play.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-plus.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-post-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-post.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-ppt-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-ppt.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-richtext-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-richtext.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-ruled-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-ruled.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-slides-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-slides.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-spreadsheet-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-spreadsheet.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-text-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-text.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-word-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-word.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-x-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-x.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-zip-fill.svg create mode 100644 module/bootstrap-icons/icons/file-earmark-zip.svg create mode 100644 module/bootstrap-icons/icons/file-earmark.svg create mode 100644 module/bootstrap-icons/icons/file-easel-fill.svg create mode 100644 module/bootstrap-icons/icons/file-easel.svg create mode 100644 module/bootstrap-icons/icons/file-excel-fill.svg create mode 100644 module/bootstrap-icons/icons/file-excel.svg create mode 100644 module/bootstrap-icons/icons/file-fill.svg create mode 100644 module/bootstrap-icons/icons/file-font-fill.svg create mode 100644 module/bootstrap-icons/icons/file-font.svg create mode 100644 module/bootstrap-icons/icons/file-image-fill.svg create mode 100644 module/bootstrap-icons/icons/file-image.svg create mode 100644 module/bootstrap-icons/icons/file-lock-fill.svg create mode 100644 module/bootstrap-icons/icons/file-lock.svg create mode 100644 module/bootstrap-icons/icons/file-lock2-fill.svg create mode 100644 module/bootstrap-icons/icons/file-lock2.svg create mode 100644 module/bootstrap-icons/icons/file-medical-fill.svg create mode 100644 module/bootstrap-icons/icons/file-medical.svg create mode 100644 module/bootstrap-icons/icons/file-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/file-minus.svg create mode 100644 module/bootstrap-icons/icons/file-music-fill.svg create mode 100644 module/bootstrap-icons/icons/file-music.svg create mode 100644 module/bootstrap-icons/icons/file-pdf-fill.svg create mode 100644 module/bootstrap-icons/icons/file-pdf.svg create mode 100644 module/bootstrap-icons/icons/file-person-fill.svg create mode 100644 module/bootstrap-icons/icons/file-person.svg create mode 100644 module/bootstrap-icons/icons/file-play-fill.svg create mode 100644 module/bootstrap-icons/icons/file-play.svg create mode 100644 module/bootstrap-icons/icons/file-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/file-plus.svg create mode 100644 module/bootstrap-icons/icons/file-post-fill.svg create mode 100644 module/bootstrap-icons/icons/file-post.svg create mode 100644 module/bootstrap-icons/icons/file-ppt-fill.svg create mode 100644 module/bootstrap-icons/icons/file-ppt.svg create mode 100644 module/bootstrap-icons/icons/file-richtext-fill.svg create mode 100644 module/bootstrap-icons/icons/file-richtext.svg create mode 100644 module/bootstrap-icons/icons/file-ruled-fill.svg create mode 100644 module/bootstrap-icons/icons/file-ruled.svg create mode 100644 module/bootstrap-icons/icons/file-slides-fill.svg create mode 100644 module/bootstrap-icons/icons/file-slides.svg create mode 100644 module/bootstrap-icons/icons/file-spreadsheet-fill.svg create mode 100644 module/bootstrap-icons/icons/file-spreadsheet.svg create mode 100644 module/bootstrap-icons/icons/file-text-fill.svg create mode 100644 module/bootstrap-icons/icons/file-text.svg create mode 100644 module/bootstrap-icons/icons/file-word-fill.svg create mode 100644 module/bootstrap-icons/icons/file-word.svg create mode 100644 module/bootstrap-icons/icons/file-x-fill.svg create mode 100644 module/bootstrap-icons/icons/file-x.svg create mode 100644 module/bootstrap-icons/icons/file-zip-fill.svg create mode 100644 module/bootstrap-icons/icons/file-zip.svg create mode 100644 module/bootstrap-icons/icons/file.svg create mode 100644 module/bootstrap-icons/icons/files-alt.svg create mode 100644 module/bootstrap-icons/icons/files.svg create mode 100644 module/bootstrap-icons/icons/filetype-aac.svg create mode 100644 module/bootstrap-icons/icons/filetype-ai.svg create mode 100644 module/bootstrap-icons/icons/filetype-bmp.svg create mode 100644 module/bootstrap-icons/icons/filetype-cs.svg create mode 100644 module/bootstrap-icons/icons/filetype-css.svg create mode 100644 module/bootstrap-icons/icons/filetype-csv.svg create mode 100644 module/bootstrap-icons/icons/filetype-doc.svg create mode 100644 module/bootstrap-icons/icons/filetype-docx.svg create mode 100644 module/bootstrap-icons/icons/filetype-exe.svg create mode 100644 module/bootstrap-icons/icons/filetype-gif.svg create mode 100644 module/bootstrap-icons/icons/filetype-heic.svg create mode 100644 module/bootstrap-icons/icons/filetype-html.svg create mode 100644 module/bootstrap-icons/icons/filetype-java.svg create mode 100644 module/bootstrap-icons/icons/filetype-jpg.svg create mode 100644 module/bootstrap-icons/icons/filetype-js.svg create mode 100644 module/bootstrap-icons/icons/filetype-json.svg create mode 100644 module/bootstrap-icons/icons/filetype-jsx.svg create mode 100644 module/bootstrap-icons/icons/filetype-key.svg create mode 100644 module/bootstrap-icons/icons/filetype-m4p.svg create mode 100644 module/bootstrap-icons/icons/filetype-md.svg create mode 100644 module/bootstrap-icons/icons/filetype-mdx.svg create mode 100644 module/bootstrap-icons/icons/filetype-mov.svg create mode 100644 module/bootstrap-icons/icons/filetype-mp3.svg create mode 100644 module/bootstrap-icons/icons/filetype-mp4.svg create mode 100644 module/bootstrap-icons/icons/filetype-otf.svg create mode 100644 module/bootstrap-icons/icons/filetype-pdf.svg create mode 100644 module/bootstrap-icons/icons/filetype-php.svg create mode 100644 module/bootstrap-icons/icons/filetype-png.svg create mode 100644 module/bootstrap-icons/icons/filetype-ppt.svg create mode 100644 module/bootstrap-icons/icons/filetype-pptx.svg create mode 100644 module/bootstrap-icons/icons/filetype-psd.svg create mode 100644 module/bootstrap-icons/icons/filetype-py.svg create mode 100644 module/bootstrap-icons/icons/filetype-raw.svg create mode 100644 module/bootstrap-icons/icons/filetype-rb.svg create mode 100644 module/bootstrap-icons/icons/filetype-sass.svg create mode 100644 module/bootstrap-icons/icons/filetype-scss.svg create mode 100644 module/bootstrap-icons/icons/filetype-sh.svg create mode 100644 module/bootstrap-icons/icons/filetype-sql.svg create mode 100644 module/bootstrap-icons/icons/filetype-svg.svg create mode 100644 module/bootstrap-icons/icons/filetype-tiff.svg create mode 100644 module/bootstrap-icons/icons/filetype-tsx.svg create mode 100644 module/bootstrap-icons/icons/filetype-ttf.svg create mode 100644 module/bootstrap-icons/icons/filetype-txt.svg create mode 100644 module/bootstrap-icons/icons/filetype-wav.svg create mode 100644 module/bootstrap-icons/icons/filetype-woff.svg create mode 100644 module/bootstrap-icons/icons/filetype-xls.svg create mode 100644 module/bootstrap-icons/icons/filetype-xlsx.svg create mode 100644 module/bootstrap-icons/icons/filetype-xml.svg create mode 100644 module/bootstrap-icons/icons/filetype-yml.svg create mode 100644 module/bootstrap-icons/icons/film.svg create mode 100644 module/bootstrap-icons/icons/filter-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/filter-circle.svg create mode 100644 module/bootstrap-icons/icons/filter-left.svg create mode 100644 module/bootstrap-icons/icons/filter-right.svg create mode 100644 module/bootstrap-icons/icons/filter-square-fill.svg create mode 100644 module/bootstrap-icons/icons/filter-square.svg create mode 100644 module/bootstrap-icons/icons/filter.svg create mode 100644 module/bootstrap-icons/icons/fingerprint.svg create mode 100644 module/bootstrap-icons/icons/fire.svg create mode 100644 module/bootstrap-icons/icons/flag-fill.svg create mode 100644 module/bootstrap-icons/icons/flag.svg create mode 100644 module/bootstrap-icons/icons/floppy-fill.svg create mode 100644 module/bootstrap-icons/icons/floppy.svg create mode 100644 module/bootstrap-icons/icons/floppy2-fill.svg create mode 100644 module/bootstrap-icons/icons/floppy2.svg create mode 100644 module/bootstrap-icons/icons/flower1.svg create mode 100644 module/bootstrap-icons/icons/flower2.svg create mode 100644 module/bootstrap-icons/icons/flower3.svg create mode 100644 module/bootstrap-icons/icons/folder-check.svg create mode 100644 module/bootstrap-icons/icons/folder-fill.svg create mode 100644 module/bootstrap-icons/icons/folder-minus.svg create mode 100644 module/bootstrap-icons/icons/folder-plus.svg create mode 100644 module/bootstrap-icons/icons/folder-symlink-fill.svg create mode 100644 module/bootstrap-icons/icons/folder-symlink.svg create mode 100644 module/bootstrap-icons/icons/folder-x.svg create mode 100644 module/bootstrap-icons/icons/folder.svg create mode 100644 module/bootstrap-icons/icons/folder2-open.svg create mode 100644 module/bootstrap-icons/icons/folder2.svg create mode 100644 module/bootstrap-icons/icons/fonts.svg create mode 100644 module/bootstrap-icons/icons/forward-fill.svg create mode 100644 module/bootstrap-icons/icons/forward.svg create mode 100644 module/bootstrap-icons/icons/front.svg create mode 100644 module/bootstrap-icons/icons/fuel-pump-diesel-fill.svg create mode 100644 module/bootstrap-icons/icons/fuel-pump-diesel.svg create mode 100644 module/bootstrap-icons/icons/fuel-pump-fill.svg create mode 100644 module/bootstrap-icons/icons/fuel-pump.svg create mode 100644 module/bootstrap-icons/icons/fullscreen-exit.svg create mode 100644 module/bootstrap-icons/icons/fullscreen.svg create mode 100644 module/bootstrap-icons/icons/funnel-fill.svg create mode 100644 module/bootstrap-icons/icons/funnel.svg create mode 100644 module/bootstrap-icons/icons/gear-fill.svg create mode 100644 module/bootstrap-icons/icons/gear-wide-connected.svg create mode 100644 module/bootstrap-icons/icons/gear-wide.svg create mode 100644 module/bootstrap-icons/icons/gear.svg create mode 100644 module/bootstrap-icons/icons/gem.svg create mode 100644 module/bootstrap-icons/icons/gender-ambiguous.svg create mode 100644 module/bootstrap-icons/icons/gender-female.svg create mode 100644 module/bootstrap-icons/icons/gender-male.svg create mode 100644 module/bootstrap-icons/icons/gender-neuter.svg create mode 100644 module/bootstrap-icons/icons/gender-trans.svg create mode 100644 module/bootstrap-icons/icons/geo-alt-fill.svg create mode 100644 module/bootstrap-icons/icons/geo-alt.svg create mode 100644 module/bootstrap-icons/icons/geo-fill.svg create mode 100644 module/bootstrap-icons/icons/geo.svg create mode 100644 module/bootstrap-icons/icons/gift-fill.svg create mode 100644 module/bootstrap-icons/icons/gift.svg create mode 100644 module/bootstrap-icons/icons/git.svg create mode 100644 module/bootstrap-icons/icons/github.svg create mode 100644 module/bootstrap-icons/icons/gitlab.svg create mode 100644 module/bootstrap-icons/icons/globe-americas.svg create mode 100644 module/bootstrap-icons/icons/globe-asia-australia.svg create mode 100644 module/bootstrap-icons/icons/globe-central-south-asia.svg create mode 100644 module/bootstrap-icons/icons/globe-europe-africa.svg create mode 100644 module/bootstrap-icons/icons/globe.svg create mode 100644 module/bootstrap-icons/icons/globe2.svg create mode 100644 module/bootstrap-icons/icons/google-play.svg create mode 100644 module/bootstrap-icons/icons/google.svg create mode 100644 module/bootstrap-icons/icons/gpu-card.svg create mode 100644 module/bootstrap-icons/icons/graph-down-arrow.svg create mode 100644 module/bootstrap-icons/icons/graph-down.svg create mode 100644 module/bootstrap-icons/icons/graph-up-arrow.svg create mode 100644 module/bootstrap-icons/icons/graph-up.svg create mode 100644 module/bootstrap-icons/icons/grid-1x2-fill.svg create mode 100644 module/bootstrap-icons/icons/grid-1x2.svg create mode 100644 module/bootstrap-icons/icons/grid-3x2-gap-fill.svg create mode 100644 module/bootstrap-icons/icons/grid-3x2-gap.svg create mode 100644 module/bootstrap-icons/icons/grid-3x2.svg create mode 100644 module/bootstrap-icons/icons/grid-3x3-gap-fill.svg create mode 100644 module/bootstrap-icons/icons/grid-3x3-gap.svg create mode 100644 module/bootstrap-icons/icons/grid-3x3.svg create mode 100644 module/bootstrap-icons/icons/grid-fill.svg create mode 100644 module/bootstrap-icons/icons/grid.svg create mode 100644 module/bootstrap-icons/icons/grip-horizontal.svg create mode 100644 module/bootstrap-icons/icons/grip-vertical.svg create mode 100644 module/bootstrap-icons/icons/h-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/h-circle.svg create mode 100644 module/bootstrap-icons/icons/h-square-fill.svg create mode 100644 module/bootstrap-icons/icons/h-square.svg create mode 100644 module/bootstrap-icons/icons/hammer.svg create mode 100644 module/bootstrap-icons/icons/hand-index-fill.svg create mode 100644 module/bootstrap-icons/icons/hand-index-thumb-fill.svg create mode 100644 module/bootstrap-icons/icons/hand-index-thumb.svg create mode 100644 module/bootstrap-icons/icons/hand-index.svg create mode 100644 module/bootstrap-icons/icons/hand-thumbs-down-fill.svg create mode 100644 module/bootstrap-icons/icons/hand-thumbs-down.svg create mode 100644 module/bootstrap-icons/icons/hand-thumbs-up-fill.svg create mode 100644 module/bootstrap-icons/icons/hand-thumbs-up.svg create mode 100644 module/bootstrap-icons/icons/handbag-fill.svg create mode 100644 module/bootstrap-icons/icons/handbag.svg create mode 100644 module/bootstrap-icons/icons/hash.svg create mode 100644 module/bootstrap-icons/icons/hdd-fill.svg create mode 100644 module/bootstrap-icons/icons/hdd-network-fill.svg create mode 100644 module/bootstrap-icons/icons/hdd-network.svg create mode 100644 module/bootstrap-icons/icons/hdd-rack-fill.svg create mode 100644 module/bootstrap-icons/icons/hdd-rack.svg create mode 100644 module/bootstrap-icons/icons/hdd-stack-fill.svg create mode 100644 module/bootstrap-icons/icons/hdd-stack.svg create mode 100644 module/bootstrap-icons/icons/hdd.svg create mode 100644 module/bootstrap-icons/icons/hdmi-fill.svg create mode 100644 module/bootstrap-icons/icons/hdmi.svg create mode 100644 module/bootstrap-icons/icons/headphones.svg create mode 100644 module/bootstrap-icons/icons/headset-vr.svg create mode 100644 module/bootstrap-icons/icons/headset.svg create mode 100644 module/bootstrap-icons/icons/heart-arrow.svg create mode 100644 module/bootstrap-icons/icons/heart-fill.svg create mode 100644 module/bootstrap-icons/icons/heart-half.svg create mode 100644 module/bootstrap-icons/icons/heart-pulse-fill.svg create mode 100644 module/bootstrap-icons/icons/heart-pulse.svg create mode 100644 module/bootstrap-icons/icons/heart.svg create mode 100644 module/bootstrap-icons/icons/heartbreak-fill.svg create mode 100644 module/bootstrap-icons/icons/heartbreak.svg create mode 100644 module/bootstrap-icons/icons/hearts.svg create mode 100644 module/bootstrap-icons/icons/heptagon-fill.svg create mode 100644 module/bootstrap-icons/icons/heptagon-half.svg create mode 100644 module/bootstrap-icons/icons/heptagon.svg create mode 100644 module/bootstrap-icons/icons/hexagon-fill.svg create mode 100644 module/bootstrap-icons/icons/hexagon-half.svg create mode 100644 module/bootstrap-icons/icons/hexagon.svg create mode 100644 module/bootstrap-icons/icons/highlighter.svg create mode 100644 module/bootstrap-icons/icons/highlights.svg create mode 100644 module/bootstrap-icons/icons/hospital-fill.svg create mode 100644 module/bootstrap-icons/icons/hospital.svg create mode 100644 module/bootstrap-icons/icons/hourglass-bottom.svg create mode 100644 module/bootstrap-icons/icons/hourglass-split.svg create mode 100644 module/bootstrap-icons/icons/hourglass-top.svg create mode 100644 module/bootstrap-icons/icons/hourglass.svg create mode 100644 module/bootstrap-icons/icons/house-add-fill.svg create mode 100644 module/bootstrap-icons/icons/house-add.svg create mode 100644 module/bootstrap-icons/icons/house-check-fill.svg create mode 100644 module/bootstrap-icons/icons/house-check.svg create mode 100644 module/bootstrap-icons/icons/house-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/house-dash.svg create mode 100644 module/bootstrap-icons/icons/house-door-fill.svg create mode 100644 module/bootstrap-icons/icons/house-door.svg create mode 100644 module/bootstrap-icons/icons/house-down-fill.svg create mode 100644 module/bootstrap-icons/icons/house-down.svg create mode 100644 module/bootstrap-icons/icons/house-exclamation-fill.svg create mode 100644 module/bootstrap-icons/icons/house-exclamation.svg create mode 100644 module/bootstrap-icons/icons/house-fill.svg create mode 100644 module/bootstrap-icons/icons/house-gear-fill.svg create mode 100644 module/bootstrap-icons/icons/house-gear.svg create mode 100644 module/bootstrap-icons/icons/house-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/house-heart.svg create mode 100644 module/bootstrap-icons/icons/house-lock-fill.svg create mode 100644 module/bootstrap-icons/icons/house-lock.svg create mode 100644 module/bootstrap-icons/icons/house-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/house-slash.svg create mode 100644 module/bootstrap-icons/icons/house-up-fill.svg create mode 100644 module/bootstrap-icons/icons/house-up.svg create mode 100644 module/bootstrap-icons/icons/house-x-fill.svg create mode 100644 module/bootstrap-icons/icons/house-x.svg create mode 100644 module/bootstrap-icons/icons/house.svg create mode 100644 module/bootstrap-icons/icons/houses-fill.svg create mode 100644 module/bootstrap-icons/icons/houses.svg create mode 100644 module/bootstrap-icons/icons/hr.svg create mode 100644 module/bootstrap-icons/icons/hurricane.svg create mode 100644 module/bootstrap-icons/icons/hypnotize.svg create mode 100644 module/bootstrap-icons/icons/image-alt.svg create mode 100644 module/bootstrap-icons/icons/image-fill.svg create mode 100644 module/bootstrap-icons/icons/image.svg create mode 100644 module/bootstrap-icons/icons/images.svg create mode 100644 module/bootstrap-icons/icons/inbox-fill.svg create mode 100644 module/bootstrap-icons/icons/inbox.svg create mode 100644 module/bootstrap-icons/icons/inboxes-fill.svg create mode 100644 module/bootstrap-icons/icons/inboxes.svg create mode 100644 module/bootstrap-icons/icons/incognito.svg create mode 100644 module/bootstrap-icons/icons/indent.svg create mode 100644 module/bootstrap-icons/icons/infinity.svg create mode 100644 module/bootstrap-icons/icons/info-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/info-circle.svg create mode 100644 module/bootstrap-icons/icons/info-lg.svg create mode 100644 module/bootstrap-icons/icons/info-square-fill.svg create mode 100644 module/bootstrap-icons/icons/info-square.svg create mode 100644 module/bootstrap-icons/icons/info.svg create mode 100644 module/bootstrap-icons/icons/input-cursor-text.svg create mode 100644 module/bootstrap-icons/icons/input-cursor.svg create mode 100644 module/bootstrap-icons/icons/instagram.svg create mode 100644 module/bootstrap-icons/icons/intersect.svg create mode 100644 module/bootstrap-icons/icons/journal-album.svg create mode 100644 module/bootstrap-icons/icons/journal-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/journal-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/journal-bookmark-fill.svg create mode 100644 module/bootstrap-icons/icons/journal-bookmark.svg create mode 100644 module/bootstrap-icons/icons/journal-check.svg create mode 100644 module/bootstrap-icons/icons/journal-code.svg create mode 100644 module/bootstrap-icons/icons/journal-medical.svg create mode 100644 module/bootstrap-icons/icons/journal-minus.svg create mode 100644 module/bootstrap-icons/icons/journal-plus.svg create mode 100644 module/bootstrap-icons/icons/journal-richtext.svg create mode 100644 module/bootstrap-icons/icons/journal-text.svg create mode 100644 module/bootstrap-icons/icons/journal-x.svg create mode 100644 module/bootstrap-icons/icons/journal.svg create mode 100644 module/bootstrap-icons/icons/journals.svg create mode 100644 module/bootstrap-icons/icons/joystick.svg create mode 100644 module/bootstrap-icons/icons/justify-left.svg create mode 100644 module/bootstrap-icons/icons/justify-right.svg create mode 100644 module/bootstrap-icons/icons/justify.svg create mode 100644 module/bootstrap-icons/icons/kanban-fill.svg create mode 100644 module/bootstrap-icons/icons/kanban.svg create mode 100644 module/bootstrap-icons/icons/key-fill.svg create mode 100644 module/bootstrap-icons/icons/key.svg create mode 100644 module/bootstrap-icons/icons/keyboard-fill.svg create mode 100644 module/bootstrap-icons/icons/keyboard.svg create mode 100644 module/bootstrap-icons/icons/ladder.svg create mode 100644 module/bootstrap-icons/icons/lamp-fill.svg create mode 100644 module/bootstrap-icons/icons/lamp.svg create mode 100644 module/bootstrap-icons/icons/laptop-fill.svg create mode 100644 module/bootstrap-icons/icons/laptop.svg create mode 100644 module/bootstrap-icons/icons/layer-backward.svg create mode 100644 module/bootstrap-icons/icons/layer-forward.svg create mode 100644 module/bootstrap-icons/icons/layers-fill.svg create mode 100644 module/bootstrap-icons/icons/layers-half.svg create mode 100644 module/bootstrap-icons/icons/layers.svg create mode 100644 module/bootstrap-icons/icons/layout-sidebar-inset-reverse.svg create mode 100644 module/bootstrap-icons/icons/layout-sidebar-inset.svg create mode 100644 module/bootstrap-icons/icons/layout-sidebar-reverse.svg create mode 100644 module/bootstrap-icons/icons/layout-sidebar.svg create mode 100644 module/bootstrap-icons/icons/layout-split.svg create mode 100644 module/bootstrap-icons/icons/layout-text-sidebar-reverse.svg create mode 100644 module/bootstrap-icons/icons/layout-text-sidebar.svg create mode 100644 module/bootstrap-icons/icons/layout-text-window-reverse.svg create mode 100644 module/bootstrap-icons/icons/layout-text-window.svg create mode 100644 module/bootstrap-icons/icons/layout-three-columns.svg create mode 100644 module/bootstrap-icons/icons/layout-wtf.svg create mode 100644 module/bootstrap-icons/icons/life-preserver.svg create mode 100644 module/bootstrap-icons/icons/lightbulb-fill.svg create mode 100644 module/bootstrap-icons/icons/lightbulb-off-fill.svg create mode 100644 module/bootstrap-icons/icons/lightbulb-off.svg create mode 100644 module/bootstrap-icons/icons/lightbulb.svg create mode 100644 module/bootstrap-icons/icons/lightning-charge-fill.svg create mode 100644 module/bootstrap-icons/icons/lightning-charge.svg create mode 100644 module/bootstrap-icons/icons/lightning-fill.svg create mode 100644 module/bootstrap-icons/icons/lightning.svg create mode 100644 module/bootstrap-icons/icons/line.svg create mode 100644 module/bootstrap-icons/icons/link-45deg.svg create mode 100644 module/bootstrap-icons/icons/link.svg create mode 100644 module/bootstrap-icons/icons/linkedin.svg create mode 100644 module/bootstrap-icons/icons/list-check.svg create mode 100644 module/bootstrap-icons/icons/list-columns-reverse.svg create mode 100644 module/bootstrap-icons/icons/list-columns.svg create mode 100644 module/bootstrap-icons/icons/list-nested.svg create mode 100644 module/bootstrap-icons/icons/list-ol.svg create mode 100644 module/bootstrap-icons/icons/list-stars.svg create mode 100644 module/bootstrap-icons/icons/list-task.svg create mode 100644 module/bootstrap-icons/icons/list-ul.svg create mode 100644 module/bootstrap-icons/icons/list.svg create mode 100644 module/bootstrap-icons/icons/lock-fill.svg create mode 100644 module/bootstrap-icons/icons/lock.svg create mode 100644 module/bootstrap-icons/icons/luggage-fill.svg create mode 100644 module/bootstrap-icons/icons/luggage.svg create mode 100644 module/bootstrap-icons/icons/lungs-fill.svg create mode 100644 module/bootstrap-icons/icons/lungs.svg create mode 100644 module/bootstrap-icons/icons/magic.svg create mode 100644 module/bootstrap-icons/icons/magnet-fill.svg create mode 100644 module/bootstrap-icons/icons/magnet.svg create mode 100644 module/bootstrap-icons/icons/mailbox-flag.svg create mode 100644 module/bootstrap-icons/icons/mailbox.svg create mode 100644 module/bootstrap-icons/icons/mailbox2-flag.svg create mode 100644 module/bootstrap-icons/icons/mailbox2.svg create mode 100644 module/bootstrap-icons/icons/map-fill.svg create mode 100644 module/bootstrap-icons/icons/map.svg create mode 100644 module/bootstrap-icons/icons/markdown-fill.svg create mode 100644 module/bootstrap-icons/icons/markdown.svg create mode 100644 module/bootstrap-icons/icons/marker-tip.svg create mode 100644 module/bootstrap-icons/icons/mask.svg create mode 100644 module/bootstrap-icons/icons/mastodon.svg create mode 100644 module/bootstrap-icons/icons/medium.svg create mode 100644 module/bootstrap-icons/icons/megaphone-fill.svg create mode 100644 module/bootstrap-icons/icons/megaphone.svg create mode 100644 module/bootstrap-icons/icons/memory.svg create mode 100644 module/bootstrap-icons/icons/menu-app-fill.svg create mode 100644 module/bootstrap-icons/icons/menu-app.svg create mode 100644 module/bootstrap-icons/icons/menu-button-fill.svg create mode 100644 module/bootstrap-icons/icons/menu-button-wide-fill.svg create mode 100644 module/bootstrap-icons/icons/menu-button-wide.svg create mode 100644 module/bootstrap-icons/icons/menu-button.svg create mode 100644 module/bootstrap-icons/icons/menu-down.svg create mode 100644 module/bootstrap-icons/icons/menu-up.svg create mode 100644 module/bootstrap-icons/icons/messenger.svg create mode 100644 module/bootstrap-icons/icons/meta.svg create mode 100644 module/bootstrap-icons/icons/mic-fill.svg create mode 100644 module/bootstrap-icons/icons/mic-mute-fill.svg create mode 100644 module/bootstrap-icons/icons/mic-mute.svg create mode 100644 module/bootstrap-icons/icons/mic.svg create mode 100644 module/bootstrap-icons/icons/microsoft-teams.svg create mode 100644 module/bootstrap-icons/icons/microsoft.svg create mode 100644 module/bootstrap-icons/icons/minecart-loaded.svg create mode 100644 module/bootstrap-icons/icons/minecart.svg create mode 100644 module/bootstrap-icons/icons/modem-fill.svg create mode 100644 module/bootstrap-icons/icons/modem.svg create mode 100644 module/bootstrap-icons/icons/moisture.svg create mode 100644 module/bootstrap-icons/icons/moon-fill.svg create mode 100644 module/bootstrap-icons/icons/moon-stars-fill.svg create mode 100644 module/bootstrap-icons/icons/moon-stars.svg create mode 100644 module/bootstrap-icons/icons/moon.svg create mode 100644 module/bootstrap-icons/icons/mortarboard-fill.svg create mode 100644 module/bootstrap-icons/icons/mortarboard.svg create mode 100644 module/bootstrap-icons/icons/motherboard-fill.svg create mode 100644 module/bootstrap-icons/icons/motherboard.svg create mode 100644 module/bootstrap-icons/icons/mouse-fill.svg create mode 100644 module/bootstrap-icons/icons/mouse.svg create mode 100644 module/bootstrap-icons/icons/mouse2-fill.svg create mode 100644 module/bootstrap-icons/icons/mouse2.svg create mode 100644 module/bootstrap-icons/icons/mouse3-fill.svg create mode 100644 module/bootstrap-icons/icons/mouse3.svg create mode 100644 module/bootstrap-icons/icons/music-note-beamed.svg create mode 100644 module/bootstrap-icons/icons/music-note-list.svg create mode 100644 module/bootstrap-icons/icons/music-note.svg create mode 100644 module/bootstrap-icons/icons/music-player-fill.svg create mode 100644 module/bootstrap-icons/icons/music-player.svg create mode 100644 module/bootstrap-icons/icons/newspaper.svg create mode 100644 module/bootstrap-icons/icons/nintendo-switch.svg create mode 100644 module/bootstrap-icons/icons/node-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/node-minus.svg create mode 100644 module/bootstrap-icons/icons/node-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/node-plus.svg create mode 100644 module/bootstrap-icons/icons/noise-reduction.svg create mode 100644 module/bootstrap-icons/icons/nut-fill.svg create mode 100644 module/bootstrap-icons/icons/nut.svg create mode 100644 module/bootstrap-icons/icons/nvidia.svg create mode 100644 module/bootstrap-icons/icons/nvme-fill.svg create mode 100644 module/bootstrap-icons/icons/nvme.svg create mode 100644 module/bootstrap-icons/icons/octagon-fill.svg create mode 100644 module/bootstrap-icons/icons/octagon-half.svg create mode 100644 module/bootstrap-icons/icons/octagon.svg create mode 100644 module/bootstrap-icons/icons/opencollective.svg create mode 100644 module/bootstrap-icons/icons/optical-audio-fill.svg create mode 100644 module/bootstrap-icons/icons/optical-audio.svg create mode 100644 module/bootstrap-icons/icons/option.svg create mode 100644 module/bootstrap-icons/icons/outlet.svg create mode 100644 module/bootstrap-icons/icons/p-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/p-circle.svg create mode 100644 module/bootstrap-icons/icons/p-square-fill.svg create mode 100644 module/bootstrap-icons/icons/p-square.svg create mode 100644 module/bootstrap-icons/icons/paint-bucket.svg create mode 100644 module/bootstrap-icons/icons/palette-fill.svg create mode 100644 module/bootstrap-icons/icons/palette.svg create mode 100644 module/bootstrap-icons/icons/palette2.svg create mode 100644 module/bootstrap-icons/icons/paperclip.svg create mode 100644 module/bootstrap-icons/icons/paragraph.svg create mode 100644 module/bootstrap-icons/icons/pass-fill.svg create mode 100644 module/bootstrap-icons/icons/pass.svg create mode 100644 module/bootstrap-icons/icons/passport-fill.svg create mode 100644 module/bootstrap-icons/icons/passport.svg create mode 100644 module/bootstrap-icons/icons/patch-check-fill.svg create mode 100644 module/bootstrap-icons/icons/patch-check.svg create mode 100644 module/bootstrap-icons/icons/patch-exclamation-fill.svg create mode 100644 module/bootstrap-icons/icons/patch-exclamation.svg create mode 100644 module/bootstrap-icons/icons/patch-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/patch-minus.svg create mode 100644 module/bootstrap-icons/icons/patch-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/patch-plus.svg create mode 100644 module/bootstrap-icons/icons/patch-question-fill.svg create mode 100644 module/bootstrap-icons/icons/patch-question.svg create mode 100644 module/bootstrap-icons/icons/pause-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/pause-btn.svg create mode 100644 module/bootstrap-icons/icons/pause-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/pause-circle.svg create mode 100644 module/bootstrap-icons/icons/pause-fill.svg create mode 100644 module/bootstrap-icons/icons/pause.svg create mode 100644 module/bootstrap-icons/icons/paypal.svg create mode 100644 module/bootstrap-icons/icons/pc-display-horizontal.svg create mode 100644 module/bootstrap-icons/icons/pc-display.svg create mode 100644 module/bootstrap-icons/icons/pc-horizontal.svg create mode 100644 module/bootstrap-icons/icons/pc.svg create mode 100644 module/bootstrap-icons/icons/pci-card-network.svg create mode 100644 module/bootstrap-icons/icons/pci-card-sound.svg create mode 100644 module/bootstrap-icons/icons/pci-card.svg create mode 100644 module/bootstrap-icons/icons/peace-fill.svg create mode 100644 module/bootstrap-icons/icons/peace.svg create mode 100644 module/bootstrap-icons/icons/pen-fill.svg create mode 100644 module/bootstrap-icons/icons/pen.svg create mode 100644 module/bootstrap-icons/icons/pencil-fill.svg create mode 100644 module/bootstrap-icons/icons/pencil-square.svg create mode 100644 module/bootstrap-icons/icons/pencil.svg create mode 100644 module/bootstrap-icons/icons/pentagon-fill.svg create mode 100644 module/bootstrap-icons/icons/pentagon-half.svg create mode 100644 module/bootstrap-icons/icons/pentagon.svg create mode 100644 module/bootstrap-icons/icons/people-fill.svg create mode 100644 module/bootstrap-icons/icons/people.svg create mode 100644 module/bootstrap-icons/icons/percent.svg create mode 100644 module/bootstrap-icons/icons/person-add.svg create mode 100644 module/bootstrap-icons/icons/person-arms-up.svg create mode 100644 module/bootstrap-icons/icons/person-badge-fill.svg create mode 100644 module/bootstrap-icons/icons/person-badge.svg create mode 100644 module/bootstrap-icons/icons/person-bounding-box.svg create mode 100644 module/bootstrap-icons/icons/person-check-fill.svg create mode 100644 module/bootstrap-icons/icons/person-check.svg create mode 100644 module/bootstrap-icons/icons/person-circle.svg create mode 100644 module/bootstrap-icons/icons/person-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/person-dash.svg create mode 100644 module/bootstrap-icons/icons/person-down.svg create mode 100644 module/bootstrap-icons/icons/person-exclamation.svg create mode 100644 module/bootstrap-icons/icons/person-fill-add.svg create mode 100644 module/bootstrap-icons/icons/person-fill-check.svg create mode 100644 module/bootstrap-icons/icons/person-fill-dash.svg create mode 100644 module/bootstrap-icons/icons/person-fill-down.svg create mode 100644 module/bootstrap-icons/icons/person-fill-exclamation.svg create mode 100644 module/bootstrap-icons/icons/person-fill-gear.svg create mode 100644 module/bootstrap-icons/icons/person-fill-lock.svg create mode 100644 module/bootstrap-icons/icons/person-fill-slash.svg create mode 100644 module/bootstrap-icons/icons/person-fill-up.svg create mode 100644 module/bootstrap-icons/icons/person-fill-x.svg create mode 100644 module/bootstrap-icons/icons/person-fill.svg create mode 100644 module/bootstrap-icons/icons/person-gear.svg create mode 100644 module/bootstrap-icons/icons/person-heart.svg create mode 100644 module/bootstrap-icons/icons/person-hearts.svg create mode 100644 module/bootstrap-icons/icons/person-lines-fill.svg create mode 100644 module/bootstrap-icons/icons/person-lock.svg create mode 100644 module/bootstrap-icons/icons/person-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/person-plus.svg create mode 100644 module/bootstrap-icons/icons/person-raised-hand.svg create mode 100644 module/bootstrap-icons/icons/person-rolodex.svg create mode 100644 module/bootstrap-icons/icons/person-slash.svg create mode 100644 module/bootstrap-icons/icons/person-square.svg create mode 100644 module/bootstrap-icons/icons/person-standing-dress.svg create mode 100644 module/bootstrap-icons/icons/person-standing.svg create mode 100644 module/bootstrap-icons/icons/person-up.svg create mode 100644 module/bootstrap-icons/icons/person-vcard-fill.svg create mode 100644 module/bootstrap-icons/icons/person-vcard.svg create mode 100644 module/bootstrap-icons/icons/person-video.svg create mode 100644 module/bootstrap-icons/icons/person-video2.svg create mode 100644 module/bootstrap-icons/icons/person-video3.svg create mode 100644 module/bootstrap-icons/icons/person-walking.svg create mode 100644 module/bootstrap-icons/icons/person-wheelchair.svg create mode 100644 module/bootstrap-icons/icons/person-workspace.svg create mode 100644 module/bootstrap-icons/icons/person-x-fill.svg create mode 100644 module/bootstrap-icons/icons/person-x.svg create mode 100644 module/bootstrap-icons/icons/person.svg create mode 100644 module/bootstrap-icons/icons/phone-fill.svg create mode 100644 module/bootstrap-icons/icons/phone-flip.svg create mode 100644 module/bootstrap-icons/icons/phone-landscape-fill.svg create mode 100644 module/bootstrap-icons/icons/phone-landscape.svg create mode 100644 module/bootstrap-icons/icons/phone-vibrate-fill.svg create mode 100644 module/bootstrap-icons/icons/phone-vibrate.svg create mode 100644 module/bootstrap-icons/icons/phone.svg create mode 100644 module/bootstrap-icons/icons/pie-chart-fill.svg create mode 100644 module/bootstrap-icons/icons/pie-chart.svg create mode 100644 module/bootstrap-icons/icons/piggy-bank-fill.svg create mode 100644 module/bootstrap-icons/icons/piggy-bank.svg create mode 100644 module/bootstrap-icons/icons/pin-angle-fill.svg create mode 100644 module/bootstrap-icons/icons/pin-angle.svg create mode 100644 module/bootstrap-icons/icons/pin-fill.svg create mode 100644 module/bootstrap-icons/icons/pin-map-fill.svg create mode 100644 module/bootstrap-icons/icons/pin-map.svg create mode 100644 module/bootstrap-icons/icons/pin.svg create mode 100644 module/bootstrap-icons/icons/pinterest.svg create mode 100644 module/bootstrap-icons/icons/pip-fill.svg create mode 100644 module/bootstrap-icons/icons/pip.svg create mode 100644 module/bootstrap-icons/icons/play-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/play-btn.svg create mode 100644 module/bootstrap-icons/icons/play-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/play-circle.svg create mode 100644 module/bootstrap-icons/icons/play-fill.svg create mode 100644 module/bootstrap-icons/icons/play.svg create mode 100644 module/bootstrap-icons/icons/playstation.svg create mode 100644 module/bootstrap-icons/icons/plug-fill.svg create mode 100644 module/bootstrap-icons/icons/plug.svg create mode 100644 module/bootstrap-icons/icons/plugin.svg create mode 100644 module/bootstrap-icons/icons/plus-circle-dotted.svg create mode 100644 module/bootstrap-icons/icons/plus-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/plus-circle.svg create mode 100644 module/bootstrap-icons/icons/plus-lg.svg create mode 100644 module/bootstrap-icons/icons/plus-slash-minus.svg create mode 100644 module/bootstrap-icons/icons/plus-square-dotted.svg create mode 100644 module/bootstrap-icons/icons/plus-square-fill.svg create mode 100644 module/bootstrap-icons/icons/plus-square.svg create mode 100644 module/bootstrap-icons/icons/plus.svg create mode 100644 module/bootstrap-icons/icons/postage-fill.svg create mode 100644 module/bootstrap-icons/icons/postage-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/postage-heart.svg create mode 100644 module/bootstrap-icons/icons/postage.svg create mode 100644 module/bootstrap-icons/icons/postcard-fill.svg create mode 100644 module/bootstrap-icons/icons/postcard-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/postcard-heart.svg create mode 100644 module/bootstrap-icons/icons/postcard.svg create mode 100644 module/bootstrap-icons/icons/power.svg create mode 100644 module/bootstrap-icons/icons/prescription.svg create mode 100644 module/bootstrap-icons/icons/prescription2.svg create mode 100644 module/bootstrap-icons/icons/printer-fill.svg create mode 100644 module/bootstrap-icons/icons/printer.svg create mode 100644 module/bootstrap-icons/icons/projector-fill.svg create mode 100644 module/bootstrap-icons/icons/projector.svg create mode 100644 module/bootstrap-icons/icons/puzzle-fill.svg create mode 100644 module/bootstrap-icons/icons/puzzle.svg create mode 100644 module/bootstrap-icons/icons/qr-code-scan.svg create mode 100644 module/bootstrap-icons/icons/qr-code.svg create mode 100644 module/bootstrap-icons/icons/question-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/question-circle.svg create mode 100644 module/bootstrap-icons/icons/question-diamond-fill.svg create mode 100644 module/bootstrap-icons/icons/question-diamond.svg create mode 100644 module/bootstrap-icons/icons/question-lg.svg create mode 100644 module/bootstrap-icons/icons/question-octagon-fill.svg create mode 100644 module/bootstrap-icons/icons/question-octagon.svg create mode 100644 module/bootstrap-icons/icons/question-square-fill.svg create mode 100644 module/bootstrap-icons/icons/question-square.svg create mode 100644 module/bootstrap-icons/icons/question.svg create mode 100644 module/bootstrap-icons/icons/quora.svg create mode 100644 module/bootstrap-icons/icons/quote.svg create mode 100644 module/bootstrap-icons/icons/r-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/r-circle.svg create mode 100644 module/bootstrap-icons/icons/r-square-fill.svg create mode 100644 module/bootstrap-icons/icons/r-square.svg create mode 100644 module/bootstrap-icons/icons/radar.svg create mode 100644 module/bootstrap-icons/icons/radioactive.svg create mode 100644 module/bootstrap-icons/icons/rainbow.svg create mode 100644 module/bootstrap-icons/icons/receipt-cutoff.svg create mode 100644 module/bootstrap-icons/icons/receipt.svg create mode 100644 module/bootstrap-icons/icons/reception-0.svg create mode 100644 module/bootstrap-icons/icons/reception-1.svg create mode 100644 module/bootstrap-icons/icons/reception-2.svg create mode 100644 module/bootstrap-icons/icons/reception-3.svg create mode 100644 module/bootstrap-icons/icons/reception-4.svg create mode 100644 module/bootstrap-icons/icons/record-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/record-btn.svg create mode 100644 module/bootstrap-icons/icons/record-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/record-circle.svg create mode 100644 module/bootstrap-icons/icons/record-fill.svg create mode 100644 module/bootstrap-icons/icons/record.svg create mode 100644 module/bootstrap-icons/icons/record2-fill.svg create mode 100644 module/bootstrap-icons/icons/record2.svg create mode 100644 module/bootstrap-icons/icons/recycle.svg create mode 100644 module/bootstrap-icons/icons/reddit.svg create mode 100644 module/bootstrap-icons/icons/regex.svg create mode 100644 module/bootstrap-icons/icons/repeat-1.svg create mode 100644 module/bootstrap-icons/icons/repeat.svg create mode 100644 module/bootstrap-icons/icons/reply-all-fill.svg create mode 100644 module/bootstrap-icons/icons/reply-all.svg create mode 100644 module/bootstrap-icons/icons/reply-fill.svg create mode 100644 module/bootstrap-icons/icons/reply.svg create mode 100644 module/bootstrap-icons/icons/rewind-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/rewind-btn.svg create mode 100644 module/bootstrap-icons/icons/rewind-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/rewind-circle.svg create mode 100644 module/bootstrap-icons/icons/rewind-fill.svg create mode 100644 module/bootstrap-icons/icons/rewind.svg create mode 100644 module/bootstrap-icons/icons/robot.svg create mode 100644 module/bootstrap-icons/icons/rocket-fill.svg create mode 100644 module/bootstrap-icons/icons/rocket-takeoff-fill.svg create mode 100644 module/bootstrap-icons/icons/rocket-takeoff.svg create mode 100644 module/bootstrap-icons/icons/rocket.svg create mode 100644 module/bootstrap-icons/icons/router-fill.svg create mode 100644 module/bootstrap-icons/icons/router.svg create mode 100644 module/bootstrap-icons/icons/rss-fill.svg create mode 100644 module/bootstrap-icons/icons/rss.svg create mode 100644 module/bootstrap-icons/icons/rulers.svg create mode 100644 module/bootstrap-icons/icons/safe-fill.svg create mode 100644 module/bootstrap-icons/icons/safe.svg create mode 100644 module/bootstrap-icons/icons/safe2-fill.svg create mode 100644 module/bootstrap-icons/icons/safe2.svg create mode 100644 module/bootstrap-icons/icons/save-fill.svg create mode 100644 module/bootstrap-icons/icons/save.svg create mode 100644 module/bootstrap-icons/icons/save2-fill.svg create mode 100644 module/bootstrap-icons/icons/save2.svg create mode 100644 module/bootstrap-icons/icons/scissors.svg create mode 100644 module/bootstrap-icons/icons/scooter.svg create mode 100644 module/bootstrap-icons/icons/screwdriver.svg create mode 100644 module/bootstrap-icons/icons/sd-card-fill.svg create mode 100644 module/bootstrap-icons/icons/sd-card.svg create mode 100644 module/bootstrap-icons/icons/search-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/search-heart.svg create mode 100644 module/bootstrap-icons/icons/search.svg create mode 100644 module/bootstrap-icons/icons/segmented-nav.svg create mode 100644 module/bootstrap-icons/icons/send-arrow-down-fill.svg create mode 100644 module/bootstrap-icons/icons/send-arrow-down.svg create mode 100644 module/bootstrap-icons/icons/send-arrow-up-fill.svg create mode 100644 module/bootstrap-icons/icons/send-arrow-up.svg create mode 100644 module/bootstrap-icons/icons/send-check-fill.svg create mode 100644 module/bootstrap-icons/icons/send-check.svg create mode 100644 module/bootstrap-icons/icons/send-dash-fill.svg create mode 100644 module/bootstrap-icons/icons/send-dash.svg create mode 100644 module/bootstrap-icons/icons/send-exclamation-fill.svg create mode 100644 module/bootstrap-icons/icons/send-exclamation.svg create mode 100644 module/bootstrap-icons/icons/send-fill.svg create mode 100644 module/bootstrap-icons/icons/send-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/send-plus.svg create mode 100644 module/bootstrap-icons/icons/send-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/send-slash.svg create mode 100644 module/bootstrap-icons/icons/send-x-fill.svg create mode 100644 module/bootstrap-icons/icons/send-x.svg create mode 100644 module/bootstrap-icons/icons/send.svg create mode 100644 module/bootstrap-icons/icons/server.svg create mode 100644 module/bootstrap-icons/icons/shadows.svg create mode 100644 module/bootstrap-icons/icons/share-fill.svg create mode 100644 module/bootstrap-icons/icons/share.svg create mode 100644 module/bootstrap-icons/icons/shield-check.svg create mode 100644 module/bootstrap-icons/icons/shield-exclamation.svg create mode 100644 module/bootstrap-icons/icons/shield-fill-check.svg create mode 100644 module/bootstrap-icons/icons/shield-fill-exclamation.svg create mode 100644 module/bootstrap-icons/icons/shield-fill-minus.svg create mode 100644 module/bootstrap-icons/icons/shield-fill-plus.svg create mode 100644 module/bootstrap-icons/icons/shield-fill-x.svg create mode 100644 module/bootstrap-icons/icons/shield-fill.svg create mode 100644 module/bootstrap-icons/icons/shield-lock-fill.svg create mode 100644 module/bootstrap-icons/icons/shield-lock.svg create mode 100644 module/bootstrap-icons/icons/shield-minus.svg create mode 100644 module/bootstrap-icons/icons/shield-plus.svg create mode 100644 module/bootstrap-icons/icons/shield-shaded.svg create mode 100644 module/bootstrap-icons/icons/shield-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/shield-slash.svg create mode 100644 module/bootstrap-icons/icons/shield-x.svg create mode 100644 module/bootstrap-icons/icons/shield.svg create mode 100644 module/bootstrap-icons/icons/shift-fill.svg create mode 100644 module/bootstrap-icons/icons/shift.svg create mode 100644 module/bootstrap-icons/icons/shop-window.svg create mode 100644 module/bootstrap-icons/icons/shop.svg create mode 100644 module/bootstrap-icons/icons/shuffle.svg create mode 100644 module/bootstrap-icons/icons/sign-dead-end-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-dead-end.svg create mode 100644 module/bootstrap-icons/icons/sign-do-not-enter-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-do-not-enter.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-side-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-side.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-t-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-t.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-y-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection-y.svg create mode 100644 module/bootstrap-icons/icons/sign-intersection.svg create mode 100644 module/bootstrap-icons/icons/sign-merge-left-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-merge-left.svg create mode 100644 module/bootstrap-icons/icons/sign-merge-right-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-merge-right.svg create mode 100644 module/bootstrap-icons/icons/sign-no-left-turn-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-no-left-turn.svg create mode 100644 module/bootstrap-icons/icons/sign-no-parking-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-no-parking.svg create mode 100644 module/bootstrap-icons/icons/sign-no-right-turn-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-no-right-turn.svg create mode 100644 module/bootstrap-icons/icons/sign-railroad-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-railroad.svg create mode 100644 module/bootstrap-icons/icons/sign-stop-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-stop-lights-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-stop-lights.svg create mode 100644 module/bootstrap-icons/icons/sign-stop.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-left-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-left.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-right-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-right.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-slight-left-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-slight-left.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-slight-right-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-turn-slight-right.svg create mode 100644 module/bootstrap-icons/icons/sign-yield-fill.svg create mode 100644 module/bootstrap-icons/icons/sign-yield.svg create mode 100644 module/bootstrap-icons/icons/signal.svg create mode 100644 module/bootstrap-icons/icons/signpost-2-fill.svg create mode 100644 module/bootstrap-icons/icons/signpost-2.svg create mode 100644 module/bootstrap-icons/icons/signpost-fill.svg create mode 100644 module/bootstrap-icons/icons/signpost-split-fill.svg create mode 100644 module/bootstrap-icons/icons/signpost-split.svg create mode 100644 module/bootstrap-icons/icons/signpost.svg create mode 100644 module/bootstrap-icons/icons/sim-fill.svg create mode 100644 module/bootstrap-icons/icons/sim-slash-fill.svg create mode 100644 module/bootstrap-icons/icons/sim-slash.svg create mode 100644 module/bootstrap-icons/icons/sim.svg create mode 100644 module/bootstrap-icons/icons/sina-weibo.svg create mode 100644 module/bootstrap-icons/icons/skip-backward-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-backward-btn.svg create mode 100644 module/bootstrap-icons/icons/skip-backward-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-backward-circle.svg create mode 100644 module/bootstrap-icons/icons/skip-backward-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-backward.svg create mode 100644 module/bootstrap-icons/icons/skip-end-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-end-btn.svg create mode 100644 module/bootstrap-icons/icons/skip-end-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-end-circle.svg create mode 100644 module/bootstrap-icons/icons/skip-end-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-end.svg create mode 100644 module/bootstrap-icons/icons/skip-forward-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-forward-btn.svg create mode 100644 module/bootstrap-icons/icons/skip-forward-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-forward-circle.svg create mode 100644 module/bootstrap-icons/icons/skip-forward-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-forward.svg create mode 100644 module/bootstrap-icons/icons/skip-start-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-start-btn.svg create mode 100644 module/bootstrap-icons/icons/skip-start-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-start-circle.svg create mode 100644 module/bootstrap-icons/icons/skip-start-fill.svg create mode 100644 module/bootstrap-icons/icons/skip-start.svg create mode 100644 module/bootstrap-icons/icons/skype.svg create mode 100644 module/bootstrap-icons/icons/slack.svg create mode 100644 module/bootstrap-icons/icons/slash-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/slash-circle.svg create mode 100644 module/bootstrap-icons/icons/slash-lg.svg create mode 100644 module/bootstrap-icons/icons/slash-square-fill.svg create mode 100644 module/bootstrap-icons/icons/slash-square.svg create mode 100644 module/bootstrap-icons/icons/slash.svg create mode 100644 module/bootstrap-icons/icons/sliders.svg create mode 100644 module/bootstrap-icons/icons/sliders2-vertical.svg create mode 100644 module/bootstrap-icons/icons/sliders2.svg create mode 100644 module/bootstrap-icons/icons/smartwatch.svg create mode 100644 module/bootstrap-icons/icons/snapchat.svg create mode 100644 module/bootstrap-icons/icons/snow.svg create mode 100644 module/bootstrap-icons/icons/snow2.svg create mode 100644 module/bootstrap-icons/icons/snow3.svg create mode 100644 module/bootstrap-icons/icons/sort-alpha-down-alt.svg create mode 100644 module/bootstrap-icons/icons/sort-alpha-down.svg create mode 100644 module/bootstrap-icons/icons/sort-alpha-up-alt.svg create mode 100644 module/bootstrap-icons/icons/sort-alpha-up.svg create mode 100644 module/bootstrap-icons/icons/sort-down-alt.svg create mode 100644 module/bootstrap-icons/icons/sort-down.svg create mode 100644 module/bootstrap-icons/icons/sort-numeric-down-alt.svg create mode 100644 module/bootstrap-icons/icons/sort-numeric-down.svg create mode 100644 module/bootstrap-icons/icons/sort-numeric-up-alt.svg create mode 100644 module/bootstrap-icons/icons/sort-numeric-up.svg create mode 100644 module/bootstrap-icons/icons/sort-up-alt.svg create mode 100644 module/bootstrap-icons/icons/sort-up.svg create mode 100644 module/bootstrap-icons/icons/soundwave.svg create mode 100644 module/bootstrap-icons/icons/sourceforge.svg create mode 100644 module/bootstrap-icons/icons/speaker-fill.svg create mode 100644 module/bootstrap-icons/icons/speaker.svg create mode 100644 module/bootstrap-icons/icons/speedometer.svg create mode 100644 module/bootstrap-icons/icons/speedometer2.svg create mode 100644 module/bootstrap-icons/icons/spellcheck.svg create mode 100644 module/bootstrap-icons/icons/spotify.svg create mode 100644 module/bootstrap-icons/icons/square-fill.svg create mode 100644 module/bootstrap-icons/icons/square-half.svg create mode 100644 module/bootstrap-icons/icons/square.svg create mode 100644 module/bootstrap-icons/icons/stack-overflow.svg create mode 100644 module/bootstrap-icons/icons/stack.svg create mode 100644 module/bootstrap-icons/icons/star-fill.svg create mode 100644 module/bootstrap-icons/icons/star-half.svg create mode 100644 module/bootstrap-icons/icons/star.svg create mode 100644 module/bootstrap-icons/icons/stars.svg create mode 100644 module/bootstrap-icons/icons/steam.svg create mode 100644 module/bootstrap-icons/icons/stickies-fill.svg create mode 100644 module/bootstrap-icons/icons/stickies.svg create mode 100644 module/bootstrap-icons/icons/sticky-fill.svg create mode 100644 module/bootstrap-icons/icons/sticky.svg create mode 100644 module/bootstrap-icons/icons/stop-btn-fill.svg create mode 100644 module/bootstrap-icons/icons/stop-btn.svg create mode 100644 module/bootstrap-icons/icons/stop-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/stop-circle.svg create mode 100644 module/bootstrap-icons/icons/stop-fill.svg create mode 100644 module/bootstrap-icons/icons/stop.svg create mode 100644 module/bootstrap-icons/icons/stoplights-fill.svg create mode 100644 module/bootstrap-icons/icons/stoplights.svg create mode 100644 module/bootstrap-icons/icons/stopwatch-fill.svg create mode 100644 module/bootstrap-icons/icons/stopwatch.svg create mode 100644 module/bootstrap-icons/icons/strava.svg create mode 100644 module/bootstrap-icons/icons/stripe.svg create mode 100644 module/bootstrap-icons/icons/subscript.svg create mode 100644 module/bootstrap-icons/icons/substack.svg create mode 100644 module/bootstrap-icons/icons/subtract.svg create mode 100644 module/bootstrap-icons/icons/suit-club-fill.svg create mode 100644 module/bootstrap-icons/icons/suit-club.svg create mode 100644 module/bootstrap-icons/icons/suit-diamond-fill.svg create mode 100644 module/bootstrap-icons/icons/suit-diamond.svg create mode 100644 module/bootstrap-icons/icons/suit-heart-fill.svg create mode 100644 module/bootstrap-icons/icons/suit-heart.svg create mode 100644 module/bootstrap-icons/icons/suit-spade-fill.svg create mode 100644 module/bootstrap-icons/icons/suit-spade.svg create mode 100644 module/bootstrap-icons/icons/suitcase-fill.svg create mode 100644 module/bootstrap-icons/icons/suitcase-lg-fill.svg create mode 100644 module/bootstrap-icons/icons/suitcase-lg.svg create mode 100644 module/bootstrap-icons/icons/suitcase.svg create mode 100644 module/bootstrap-icons/icons/suitcase2-fill.svg create mode 100644 module/bootstrap-icons/icons/suitcase2.svg create mode 100644 module/bootstrap-icons/icons/sun-fill.svg create mode 100644 module/bootstrap-icons/icons/sun.svg create mode 100644 module/bootstrap-icons/icons/sunglasses.svg create mode 100644 module/bootstrap-icons/icons/sunrise-fill.svg create mode 100644 module/bootstrap-icons/icons/sunrise.svg create mode 100644 module/bootstrap-icons/icons/sunset-fill.svg create mode 100644 module/bootstrap-icons/icons/sunset.svg create mode 100644 module/bootstrap-icons/icons/superscript.svg create mode 100644 module/bootstrap-icons/icons/symmetry-horizontal.svg create mode 100644 module/bootstrap-icons/icons/symmetry-vertical.svg create mode 100644 module/bootstrap-icons/icons/table.svg create mode 100644 module/bootstrap-icons/icons/tablet-fill.svg create mode 100644 module/bootstrap-icons/icons/tablet-landscape-fill.svg create mode 100644 module/bootstrap-icons/icons/tablet-landscape.svg create mode 100644 module/bootstrap-icons/icons/tablet.svg create mode 100644 module/bootstrap-icons/icons/tag-fill.svg create mode 100644 module/bootstrap-icons/icons/tag.svg create mode 100644 module/bootstrap-icons/icons/tags-fill.svg create mode 100644 module/bootstrap-icons/icons/tags.svg create mode 100644 module/bootstrap-icons/icons/taxi-front-fill.svg create mode 100644 module/bootstrap-icons/icons/taxi-front.svg create mode 100644 module/bootstrap-icons/icons/telegram.svg create mode 100644 module/bootstrap-icons/icons/telephone-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-forward-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-forward.svg create mode 100644 module/bootstrap-icons/icons/telephone-inbound-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-inbound.svg create mode 100644 module/bootstrap-icons/icons/telephone-minus-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-minus.svg create mode 100644 module/bootstrap-icons/icons/telephone-outbound-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-outbound.svg create mode 100644 module/bootstrap-icons/icons/telephone-plus-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-plus.svg create mode 100644 module/bootstrap-icons/icons/telephone-x-fill.svg create mode 100644 module/bootstrap-icons/icons/telephone-x.svg create mode 100644 module/bootstrap-icons/icons/telephone.svg create mode 100644 module/bootstrap-icons/icons/tencent-qq.svg create mode 100644 module/bootstrap-icons/icons/terminal-dash.svg create mode 100644 module/bootstrap-icons/icons/terminal-fill.svg create mode 100644 module/bootstrap-icons/icons/terminal-plus.svg create mode 100644 module/bootstrap-icons/icons/terminal-split.svg create mode 100644 module/bootstrap-icons/icons/terminal-x.svg create mode 100644 module/bootstrap-icons/icons/terminal.svg create mode 100644 module/bootstrap-icons/icons/text-center.svg create mode 100644 module/bootstrap-icons/icons/text-indent-left.svg create mode 100644 module/bootstrap-icons/icons/text-indent-right.svg create mode 100644 module/bootstrap-icons/icons/text-left.svg create mode 100644 module/bootstrap-icons/icons/text-paragraph.svg create mode 100644 module/bootstrap-icons/icons/text-right.svg create mode 100644 module/bootstrap-icons/icons/text-wrap.svg create mode 100644 module/bootstrap-icons/icons/textarea-resize.svg create mode 100644 module/bootstrap-icons/icons/textarea-t.svg create mode 100644 module/bootstrap-icons/icons/textarea.svg create mode 100644 module/bootstrap-icons/icons/thermometer-half.svg create mode 100644 module/bootstrap-icons/icons/thermometer-high.svg create mode 100644 module/bootstrap-icons/icons/thermometer-low.svg create mode 100644 module/bootstrap-icons/icons/thermometer-snow.svg create mode 100644 module/bootstrap-icons/icons/thermometer-sun.svg create mode 100644 module/bootstrap-icons/icons/thermometer.svg create mode 100644 module/bootstrap-icons/icons/threads-fill.svg create mode 100644 module/bootstrap-icons/icons/threads.svg create mode 100644 module/bootstrap-icons/icons/three-dots-vertical.svg create mode 100644 module/bootstrap-icons/icons/three-dots.svg create mode 100644 module/bootstrap-icons/icons/thunderbolt-fill.svg create mode 100644 module/bootstrap-icons/icons/thunderbolt.svg create mode 100644 module/bootstrap-icons/icons/ticket-detailed-fill.svg create mode 100644 module/bootstrap-icons/icons/ticket-detailed.svg create mode 100644 module/bootstrap-icons/icons/ticket-fill.svg create mode 100644 module/bootstrap-icons/icons/ticket-perforated-fill.svg create mode 100644 module/bootstrap-icons/icons/ticket-perforated.svg create mode 100644 module/bootstrap-icons/icons/ticket.svg create mode 100644 module/bootstrap-icons/icons/tiktok.svg create mode 100644 module/bootstrap-icons/icons/toggle-off.svg create mode 100644 module/bootstrap-icons/icons/toggle-on.svg create mode 100644 module/bootstrap-icons/icons/toggle2-off.svg create mode 100644 module/bootstrap-icons/icons/toggle2-on.svg create mode 100644 module/bootstrap-icons/icons/toggles.svg create mode 100644 module/bootstrap-icons/icons/toggles2.svg create mode 100644 module/bootstrap-icons/icons/tools.svg create mode 100644 module/bootstrap-icons/icons/tornado.svg create mode 100644 module/bootstrap-icons/icons/train-freight-front-fill.svg create mode 100644 module/bootstrap-icons/icons/train-freight-front.svg create mode 100644 module/bootstrap-icons/icons/train-front-fill.svg create mode 100644 module/bootstrap-icons/icons/train-front.svg create mode 100644 module/bootstrap-icons/icons/train-lightrail-front-fill.svg create mode 100644 module/bootstrap-icons/icons/train-lightrail-front.svg create mode 100644 module/bootstrap-icons/icons/translate.svg create mode 100644 module/bootstrap-icons/icons/transparency.svg create mode 100644 module/bootstrap-icons/icons/trash-fill.svg create mode 100644 module/bootstrap-icons/icons/trash.svg create mode 100644 module/bootstrap-icons/icons/trash2-fill.svg create mode 100644 module/bootstrap-icons/icons/trash2.svg create mode 100644 module/bootstrap-icons/icons/trash3-fill.svg create mode 100644 module/bootstrap-icons/icons/trash3.svg create mode 100644 module/bootstrap-icons/icons/tree-fill.svg create mode 100644 module/bootstrap-icons/icons/tree.svg create mode 100644 module/bootstrap-icons/icons/trello.svg create mode 100644 module/bootstrap-icons/icons/triangle-fill.svg create mode 100644 module/bootstrap-icons/icons/triangle-half.svg create mode 100644 module/bootstrap-icons/icons/triangle.svg create mode 100644 module/bootstrap-icons/icons/trophy-fill.svg create mode 100644 module/bootstrap-icons/icons/trophy.svg create mode 100644 module/bootstrap-icons/icons/tropical-storm.svg create mode 100644 module/bootstrap-icons/icons/truck-flatbed.svg create mode 100644 module/bootstrap-icons/icons/truck-front-fill.svg create mode 100644 module/bootstrap-icons/icons/truck-front.svg create mode 100644 module/bootstrap-icons/icons/truck.svg create mode 100644 module/bootstrap-icons/icons/tsunami.svg create mode 100644 module/bootstrap-icons/icons/tv-fill.svg create mode 100644 module/bootstrap-icons/icons/tv.svg create mode 100644 module/bootstrap-icons/icons/twitch.svg create mode 100644 module/bootstrap-icons/icons/twitter-x.svg create mode 100644 module/bootstrap-icons/icons/twitter.svg create mode 100644 module/bootstrap-icons/icons/type-bold.svg create mode 100644 module/bootstrap-icons/icons/type-h1.svg create mode 100644 module/bootstrap-icons/icons/type-h2.svg create mode 100644 module/bootstrap-icons/icons/type-h3.svg create mode 100644 module/bootstrap-icons/icons/type-h4.svg create mode 100644 module/bootstrap-icons/icons/type-h5.svg create mode 100644 module/bootstrap-icons/icons/type-h6.svg create mode 100644 module/bootstrap-icons/icons/type-italic.svg create mode 100644 module/bootstrap-icons/icons/type-strikethrough.svg create mode 100644 module/bootstrap-icons/icons/type-underline.svg create mode 100644 module/bootstrap-icons/icons/type.svg create mode 100644 module/bootstrap-icons/icons/ubuntu.svg create mode 100644 module/bootstrap-icons/icons/ui-checks-grid.svg create mode 100644 module/bootstrap-icons/icons/ui-checks.svg create mode 100644 module/bootstrap-icons/icons/ui-radios-grid.svg create mode 100644 module/bootstrap-icons/icons/ui-radios.svg create mode 100644 module/bootstrap-icons/icons/umbrella-fill.svg create mode 100644 module/bootstrap-icons/icons/umbrella.svg create mode 100644 module/bootstrap-icons/icons/unindent.svg create mode 100644 module/bootstrap-icons/icons/union.svg create mode 100644 module/bootstrap-icons/icons/unity.svg create mode 100644 module/bootstrap-icons/icons/universal-access-circle.svg create mode 100644 module/bootstrap-icons/icons/universal-access.svg create mode 100644 module/bootstrap-icons/icons/unlock-fill.svg create mode 100644 module/bootstrap-icons/icons/unlock.svg create mode 100644 module/bootstrap-icons/icons/upc-scan.svg create mode 100644 module/bootstrap-icons/icons/upc.svg create mode 100644 module/bootstrap-icons/icons/upload.svg create mode 100644 module/bootstrap-icons/icons/usb-c-fill.svg create mode 100644 module/bootstrap-icons/icons/usb-c.svg create mode 100644 module/bootstrap-icons/icons/usb-drive-fill.svg create mode 100644 module/bootstrap-icons/icons/usb-drive.svg create mode 100644 module/bootstrap-icons/icons/usb-fill.svg create mode 100644 module/bootstrap-icons/icons/usb-micro-fill.svg create mode 100644 module/bootstrap-icons/icons/usb-micro.svg create mode 100644 module/bootstrap-icons/icons/usb-mini-fill.svg create mode 100644 module/bootstrap-icons/icons/usb-mini.svg create mode 100644 module/bootstrap-icons/icons/usb-plug-fill.svg create mode 100644 module/bootstrap-icons/icons/usb-plug.svg create mode 100644 module/bootstrap-icons/icons/usb-symbol.svg create mode 100644 module/bootstrap-icons/icons/usb.svg create mode 100644 module/bootstrap-icons/icons/valentine.svg create mode 100644 module/bootstrap-icons/icons/valentine2.svg create mode 100644 module/bootstrap-icons/icons/vector-pen.svg create mode 100644 module/bootstrap-icons/icons/view-list.svg create mode 100644 module/bootstrap-icons/icons/view-stacked.svg create mode 100644 module/bootstrap-icons/icons/vignette.svg create mode 100644 module/bootstrap-icons/icons/vimeo.svg create mode 100644 module/bootstrap-icons/icons/vinyl-fill.svg create mode 100644 module/bootstrap-icons/icons/vinyl.svg create mode 100644 module/bootstrap-icons/icons/virus.svg create mode 100644 module/bootstrap-icons/icons/virus2.svg create mode 100644 module/bootstrap-icons/icons/voicemail.svg create mode 100644 module/bootstrap-icons/icons/volume-down-fill.svg create mode 100644 module/bootstrap-icons/icons/volume-down.svg create mode 100644 module/bootstrap-icons/icons/volume-mute-fill.svg create mode 100644 module/bootstrap-icons/icons/volume-mute.svg create mode 100644 module/bootstrap-icons/icons/volume-off-fill.svg create mode 100644 module/bootstrap-icons/icons/volume-off.svg create mode 100644 module/bootstrap-icons/icons/volume-up-fill.svg create mode 100644 module/bootstrap-icons/icons/volume-up.svg create mode 100644 module/bootstrap-icons/icons/vr.svg create mode 100644 module/bootstrap-icons/icons/wallet-fill.svg create mode 100644 module/bootstrap-icons/icons/wallet.svg create mode 100644 module/bootstrap-icons/icons/wallet2.svg create mode 100644 module/bootstrap-icons/icons/watch.svg create mode 100644 module/bootstrap-icons/icons/water.svg create mode 100644 module/bootstrap-icons/icons/webcam-fill.svg create mode 100644 module/bootstrap-icons/icons/webcam.svg create mode 100644 module/bootstrap-icons/icons/wechat.svg create mode 100644 module/bootstrap-icons/icons/whatsapp.svg create mode 100644 module/bootstrap-icons/icons/wifi-1.svg create mode 100644 module/bootstrap-icons/icons/wifi-2.svg create mode 100644 module/bootstrap-icons/icons/wifi-off.svg create mode 100644 module/bootstrap-icons/icons/wifi.svg create mode 100644 module/bootstrap-icons/icons/wikipedia.svg create mode 100644 module/bootstrap-icons/icons/wind.svg create mode 100644 module/bootstrap-icons/icons/window-dash.svg create mode 100644 module/bootstrap-icons/icons/window-desktop.svg create mode 100644 module/bootstrap-icons/icons/window-dock.svg create mode 100644 module/bootstrap-icons/icons/window-fullscreen.svg create mode 100644 module/bootstrap-icons/icons/window-plus.svg create mode 100644 module/bootstrap-icons/icons/window-sidebar.svg create mode 100644 module/bootstrap-icons/icons/window-split.svg create mode 100644 module/bootstrap-icons/icons/window-stack.svg create mode 100644 module/bootstrap-icons/icons/window-x.svg create mode 100644 module/bootstrap-icons/icons/window.svg create mode 100644 module/bootstrap-icons/icons/windows.svg create mode 100644 module/bootstrap-icons/icons/wordpress.svg create mode 100644 module/bootstrap-icons/icons/wrench-adjustable-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/wrench-adjustable-circle.svg create mode 100644 module/bootstrap-icons/icons/wrench-adjustable.svg create mode 100644 module/bootstrap-icons/icons/wrench.svg create mode 100644 module/bootstrap-icons/icons/x-circle-fill.svg create mode 100644 module/bootstrap-icons/icons/x-circle.svg create mode 100644 module/bootstrap-icons/icons/x-diamond-fill.svg create mode 100644 module/bootstrap-icons/icons/x-diamond.svg create mode 100644 module/bootstrap-icons/icons/x-lg.svg create mode 100644 module/bootstrap-icons/icons/x-octagon-fill.svg create mode 100644 module/bootstrap-icons/icons/x-octagon.svg create mode 100644 module/bootstrap-icons/icons/x-square-fill.svg create mode 100644 module/bootstrap-icons/icons/x-square.svg create mode 100644 module/bootstrap-icons/icons/x.svg create mode 100644 module/bootstrap-icons/icons/xbox.svg create mode 100644 module/bootstrap-icons/icons/yelp.svg create mode 100644 module/bootstrap-icons/icons/yin-yang.svg create mode 100644 module/bootstrap-icons/icons/youtube.svg create mode 100644 module/bootstrap-icons/icons/zoom-in.svg create mode 100644 module/bootstrap-icons/icons/zoom-out.svg create mode 100644 module/bootstrap-icons/package.json create mode 100644 module/bootstrap@5.3.3/LICENSE create mode 100644 module/bootstrap@5.3.3/README.md create mode 100644 module/bootstrap@5.3.3/js/index.esm.js create mode 100644 module/bootstrap@5.3.3/js/index.umd.js create mode 100644 module/bootstrap@5.3.3/js/src/alert.js create mode 100644 module/bootstrap@5.3.3/js/src/base-component.js create mode 100644 module/bootstrap@5.3.3/js/src/button.js create mode 100644 module/bootstrap@5.3.3/js/src/carousel.js create mode 100644 module/bootstrap@5.3.3/js/src/collapse.js create mode 100644 module/bootstrap@5.3.3/js/src/dom/data.js create mode 100644 module/bootstrap@5.3.3/js/src/dom/event-handler.js create mode 100644 module/bootstrap@5.3.3/js/src/dom/manipulator.js create mode 100644 module/bootstrap@5.3.3/js/src/dom/selector-engine.js create mode 100644 module/bootstrap@5.3.3/js/src/dropdown.js create mode 100644 module/bootstrap@5.3.3/js/src/modal.js create mode 100644 module/bootstrap@5.3.3/js/src/offcanvas.js create mode 100644 module/bootstrap@5.3.3/js/src/popover.js create mode 100644 module/bootstrap@5.3.3/js/src/scrollspy.js create mode 100644 module/bootstrap@5.3.3/js/src/tab.js create mode 100644 module/bootstrap@5.3.3/js/src/toast.js create mode 100644 module/bootstrap@5.3.3/js/src/tooltip.js create mode 100644 module/bootstrap@5.3.3/js/src/util/backdrop.js create mode 100644 module/bootstrap@5.3.3/js/src/util/component-functions.js create mode 100644 module/bootstrap@5.3.3/js/src/util/config.js create mode 100644 module/bootstrap@5.3.3/js/src/util/focustrap.js create mode 100644 module/bootstrap@5.3.3/js/src/util/index.js create mode 100644 module/bootstrap@5.3.3/js/src/util/sanitizer.js create mode 100644 module/bootstrap@5.3.3/js/src/util/scrollbar.js create mode 100644 module/bootstrap@5.3.3/js/src/util/swipe.js create mode 100644 module/bootstrap@5.3.3/js/src/util/template-factory.js create mode 100644 module/bootstrap@5.3.3/package.json create mode 100644 module/bootstrap@5.3.3/scss/_accordion.scss create mode 100644 module/bootstrap@5.3.3/scss/_alert.scss create mode 100644 module/bootstrap@5.3.3/scss/_badge.scss create mode 100644 module/bootstrap@5.3.3/scss/_breadcrumb.scss create mode 100644 module/bootstrap@5.3.3/scss/_button-group.scss create mode 100644 module/bootstrap@5.3.3/scss/_buttons.scss create mode 100644 module/bootstrap@5.3.3/scss/_card.scss create mode 100644 module/bootstrap@5.3.3/scss/_carousel.scss create mode 100644 module/bootstrap@5.3.3/scss/_close.scss create mode 100644 module/bootstrap@5.3.3/scss/_containers.scss create mode 100644 module/bootstrap@5.3.3/scss/_dropdown.scss create mode 100644 module/bootstrap@5.3.3/scss/_forms.scss create mode 100644 module/bootstrap@5.3.3/scss/_functions.scss create mode 100644 module/bootstrap@5.3.3/scss/_grid.scss create mode 100644 module/bootstrap@5.3.3/scss/_helpers.scss create mode 100644 module/bootstrap@5.3.3/scss/_images.scss create mode 100644 module/bootstrap@5.3.3/scss/_list-group.scss create mode 100644 module/bootstrap@5.3.3/scss/_maps.scss create mode 100644 module/bootstrap@5.3.3/scss/_mixins.scss create mode 100644 module/bootstrap@5.3.3/scss/_modal.scss create mode 100644 module/bootstrap@5.3.3/scss/_nav.scss create mode 100644 module/bootstrap@5.3.3/scss/_navbar.scss create mode 100644 module/bootstrap@5.3.3/scss/_offcanvas.scss create mode 100644 module/bootstrap@5.3.3/scss/_pagination.scss create mode 100644 module/bootstrap@5.3.3/scss/_placeholders.scss create mode 100644 module/bootstrap@5.3.3/scss/_popover.scss create mode 100644 module/bootstrap@5.3.3/scss/_progress.scss create mode 100644 module/bootstrap@5.3.3/scss/_reboot.scss create mode 100644 module/bootstrap@5.3.3/scss/_root.scss create mode 100644 module/bootstrap@5.3.3/scss/_spinners.scss create mode 100644 module/bootstrap@5.3.3/scss/_tables.scss create mode 100644 module/bootstrap@5.3.3/scss/_toasts.scss create mode 100644 module/bootstrap@5.3.3/scss/_tooltip.scss create mode 100644 module/bootstrap@5.3.3/scss/_transitions.scss create mode 100644 module/bootstrap@5.3.3/scss/_type.scss create mode 100644 module/bootstrap@5.3.3/scss/_utilities.scss create mode 100644 module/bootstrap@5.3.3/scss/_variables-dark.scss create mode 100644 module/bootstrap@5.3.3/scss/_variables.scss create mode 100644 module/bootstrap@5.3.3/scss/bootstrap-grid.scss create mode 100644 module/bootstrap@5.3.3/scss/bootstrap-reboot.scss create mode 100644 module/bootstrap@5.3.3/scss/bootstrap-utilities.scss create mode 100644 module/bootstrap@5.3.3/scss/bootstrap.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_floating-labels.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_form-check.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_form-control.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_form-range.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_form-select.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_form-text.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_input-group.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_labels.scss create mode 100644 module/bootstrap@5.3.3/scss/forms/_validation.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_clearfix.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_color-bg.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_colored-links.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_focus-ring.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_icon-link.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_position.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_ratio.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_stacks.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_stretched-link.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_text-truncation.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_visually-hidden.scss create mode 100644 module/bootstrap@5.3.3/scss/helpers/_vr.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_alert.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_backdrop.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_banner.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_border-radius.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_box-shadow.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_breakpoints.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_buttons.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_caret.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_clearfix.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_color-mode.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_color-scheme.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_container.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_deprecate.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_forms.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_gradients.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_grid.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_image.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_list-group.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_lists.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_pagination.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_reset-text.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_resize.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_table-variants.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_text-truncate.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_transition.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_utilities.scss create mode 100644 module/bootstrap@5.3.3/scss/mixins/_visually-hidden.scss create mode 100644 module/bootstrap@5.3.3/scss/utilities/_api.scss create mode 100644 module/bootstrap@5.3.3/scss/vendor/_rfs.scss create mode 100644 module/fullcalendar-3.9.0/fullcalendar.css create mode 100644 module/fullcalendar-3.9.0/fullcalendar.js create mode 100644 module/fullcalendar-3.9.0/fullcalendar.min.css create mode 100644 module/fullcalendar-3.9.0/fullcalendar.min.js create mode 100644 module/fullcalendar-3.9.0/fullcalendar.print.css create mode 100644 module/fullcalendar-3.9.0/fullcalendar.print.min.css create mode 100644 module/fullcalendar-3.9.0/gcal.js create mode 100644 module/fullcalendar-3.9.0/gcal.min.js create mode 100644 module/fullcalendar-3.9.0/lib/jquery-ui.min.js create mode 100644 module/fullcalendar-3.9.0/lib/jquery.min.js create mode 100644 module/fullcalendar-3.9.0/lib/moment.min.js create mode 100644 module/fullcalendar-3.9.0/locale-all.js create mode 100644 module/fullcalendar-3.9.0/locale/af.js create mode 100644 module/fullcalendar-3.9.0/locale/ar-dz.js create mode 100644 module/fullcalendar-3.9.0/locale/ar-kw.js create mode 100644 module/fullcalendar-3.9.0/locale/ar-ly.js create mode 100644 module/fullcalendar-3.9.0/locale/ar-ma.js create mode 100644 module/fullcalendar-3.9.0/locale/ar-sa.js create mode 100644 module/fullcalendar-3.9.0/locale/ar-tn.js create mode 100644 module/fullcalendar-3.9.0/locale/ar.js create mode 100644 module/fullcalendar-3.9.0/locale/bg.js create mode 100644 module/fullcalendar-3.9.0/locale/bs.js create mode 100644 module/fullcalendar-3.9.0/locale/ca.js create mode 100644 module/fullcalendar-3.9.0/locale/cs.js create mode 100644 module/fullcalendar-3.9.0/locale/da.js create mode 100644 module/fullcalendar-3.9.0/locale/de-at.js create mode 100644 module/fullcalendar-3.9.0/locale/de-ch.js create mode 100644 module/fullcalendar-3.9.0/locale/de.js create mode 100644 module/fullcalendar-3.9.0/locale/el.js create mode 100644 module/fullcalendar-3.9.0/locale/en-au.js create mode 100644 module/fullcalendar-3.9.0/locale/en-ca.js create mode 100644 module/fullcalendar-3.9.0/locale/en-gb.js create mode 100644 module/fullcalendar-3.9.0/locale/en-ie.js create mode 100644 module/fullcalendar-3.9.0/locale/en-nz.js create mode 100644 module/fullcalendar-3.9.0/locale/es-do.js create mode 100644 module/fullcalendar-3.9.0/locale/es-us.js create mode 100644 module/fullcalendar-3.9.0/locale/es.js create mode 100644 module/fullcalendar-3.9.0/locale/et.js create mode 100644 module/fullcalendar-3.9.0/locale/eu.js create mode 100644 module/fullcalendar-3.9.0/locale/fa.js create mode 100644 module/fullcalendar-3.9.0/locale/fi.js create mode 100644 module/fullcalendar-3.9.0/locale/fr-ca.js create mode 100644 module/fullcalendar-3.9.0/locale/fr-ch.js create mode 100644 module/fullcalendar-3.9.0/locale/fr.js create mode 100644 module/fullcalendar-3.9.0/locale/gl.js create mode 100644 module/fullcalendar-3.9.0/locale/he.js create mode 100644 module/fullcalendar-3.9.0/locale/hi.js create mode 100644 module/fullcalendar-3.9.0/locale/hr.js create mode 100644 module/fullcalendar-3.9.0/locale/hu.js create mode 100644 module/fullcalendar-3.9.0/locale/id.js create mode 100644 module/fullcalendar-3.9.0/locale/is.js create mode 100644 module/fullcalendar-3.9.0/locale/it.js create mode 100644 module/fullcalendar-3.9.0/locale/ja.js create mode 100644 module/fullcalendar-3.9.0/locale/ka.js create mode 100644 module/fullcalendar-3.9.0/locale/kk.js create mode 100644 module/fullcalendar-3.9.0/locale/ko.js create mode 100644 module/fullcalendar-3.9.0/locale/lb.js create mode 100644 module/fullcalendar-3.9.0/locale/lt.js create mode 100644 module/fullcalendar-3.9.0/locale/lv.js create mode 100644 module/fullcalendar-3.9.0/locale/mk.js create mode 100644 module/fullcalendar-3.9.0/locale/ms-my.js create mode 100644 module/fullcalendar-3.9.0/locale/ms.js create mode 100644 module/fullcalendar-3.9.0/locale/nb.js create mode 100644 module/fullcalendar-3.9.0/locale/nl-be.js create mode 100644 module/fullcalendar-3.9.0/locale/nl.js create mode 100644 module/fullcalendar-3.9.0/locale/nn.js create mode 100644 module/fullcalendar-3.9.0/locale/pl.js create mode 100644 module/fullcalendar-3.9.0/locale/pt-br.js create mode 100644 module/fullcalendar-3.9.0/locale/pt.js create mode 100644 module/fullcalendar-3.9.0/locale/ro.js create mode 100644 module/fullcalendar-3.9.0/locale/ru.js create mode 100644 module/fullcalendar-3.9.0/locale/sk.js create mode 100644 module/fullcalendar-3.9.0/locale/sl.js create mode 100644 module/fullcalendar-3.9.0/locale/sq.js create mode 100644 module/fullcalendar-3.9.0/locale/sr-cyrl.js create mode 100644 module/fullcalendar-3.9.0/locale/sr.js create mode 100644 module/fullcalendar-3.9.0/locale/sv.js create mode 100644 module/fullcalendar-3.9.0/locale/th.js create mode 100644 module/fullcalendar-3.9.0/locale/tr.js create mode 100644 module/fullcalendar-3.9.0/locale/uk.js create mode 100644 module/fullcalendar-3.9.0/locale/vi.js create mode 100644 module/fullcalendar-3.9.0/locale/zh-cn.js create mode 100644 module/fullcalendar-3.9.0/locale/zh-tw.js diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..190ace8 --- /dev/null +++ b/.env.example @@ -0,0 +1,6 @@ +DB_HOST=localhost +DB_PORT=3306 +DB_NAME=DB +DB_USER=USER +DB_PASS=PASS +DB_CHARSET=utf8 \ No newline at end of file diff --git a/.gitignore b/.gitignore index 821aba3..6e79c68 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,13 @@ # ---------------------- # Personnalisé / PHP MVC # ---------------------- -**/module/ +# **/module/ **/.env **/*.local **/*.config **/config/database.php **/documents **/Libs -config/connexion_sql.php # ---------------------- # Node.js diff --git a/module/@popperjs/core@2.11.8/LICENSE.md b/module/@popperjs/core@2.11.8/LICENSE.md new file mode 100644 index 0000000..0370c45 --- /dev/null +++ b/module/@popperjs/core@2.11.8/LICENSE.md @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2019 Federico Zivolo + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/module/@popperjs/core@2.11.8/README.md b/module/@popperjs/core@2.11.8/README.md new file mode 100644 index 0000000..53be7b9 --- /dev/null +++ b/module/@popperjs/core@2.11.8/README.md @@ -0,0 +1,376 @@ + +

+ Popper +

+ +
+

Tooltip & Popover Positioning Engine

+
+ +

+ + npm version + + + npm downloads per month (popper.js + @popperjs/core) + + + Rolling Versions + +

+ +
+ + +**Positioning tooltips and popovers is difficult. Popper is here to help!** + +Given an element, such as a button, and a tooltip element describing it, Popper +will automatically put the tooltip in the right place near the button. + +It will position _any_ UI element that "pops out" from the flow of your document +and floats near a target element. The most common example is a tooltip, but it +also includes popovers, drop-downs, and more. All of these can be generically +described as a "popper" element. + +## Demo + +[![Popper visualized](https://i.imgur.com/F7qWsmV.jpg)](https://popper.js.org) + +## Docs + +- [v2.x (latest)](https://popper.js.org/docs/v2/) +- [v1.x](https://popper.js.org/docs/v1/) + +We've created a +[Migration Guide](https://popper.js.org/docs/v2/migration-guide/) to help you +migrate from Popper 1 to Popper 2. + +To contribute to the Popper website and documentation, please visit the +[dedicated repository](https://github.com/popperjs/website). + +## Why not use pure CSS? + +- **Clipping and overflow issues**: Pure CSS poppers will not be prevented from + overflowing clipping boundaries, such as the viewport. It will get partially + cut off or overflows if it's near the edge since there is no dynamic + positioning logic. When using Popper, your popper will always be positioned in + the right place without needing manual adjustments. +- **No flipping**: CSS poppers will not flip to a different placement to fit + better in view if necessary. While you can manually adjust for the main axis + overflow, this feature cannot be achieved via CSS alone. Popper automatically + flips the tooltip to make it fit in view as best as possible for the user. +- **No virtual positioning**: CSS poppers cannot follow the mouse cursor or be + used as a context menu. Popper allows you to position your tooltip relative to + any coordinates you desire. +- **Slower development cycle**: When pure CSS is used to position popper + elements, the lack of dynamic positioning means they must be carefully placed + to consider overflow on all screen sizes. In reusable component libraries, + this means a developer can't just add the component anywhere on the page, + because these issues need to be considered and adjusted for every time. With + Popper, you can place your elements anywhere and they will be positioned + correctly, without needing to consider different screen sizes, layouts, etc. + This massively speeds up development time because this work is automatically + offloaded to Popper. +- **Lack of extensibility**: CSS poppers cannot be easily extended to fit any + arbitrary use case you may need to adjust for. Popper is built with + extensibility in mind. + +## Why Popper? + +With the CSS drawbacks out of the way, we now move on to Popper in the +JavaScript space itself. + +Naive JavaScript tooltip implementations usually have the following problems: + +- **Scrolling containers**: They don't ensure the tooltip stays with the + reference element while scrolling when inside any number of scrolling + containers. +- **DOM context**: They often require the tooltip move outside of its original + DOM context because they don't handle `offsetParent` contexts. +- **Compatibility**: Popper handles an incredible number of edge cases regarding + different browsers and environments (mobile viewports, RTL, scrollbars enabled + or disabled, etc.). Popper is a popular and well-maintained library, so you + can be confident positioning will work for your users on any device. +- **Configurability**: They often lack advanced configurability to suit any + possible use case. +- **Size**: They are usually relatively large in size, or require an ancient + jQuery dependency. +- **Performance**: They often have runtime performance issues and update the + tooltip position too slowly. + +**Popper solves all of these key problems in an elegant, performant manner.** It +is a lightweight ~3 kB library that aims to provide a reliable and extensible +positioning engine you can use to ensure all your popper elements are positioned +in the right place. + +When you start writing your own popper implementation, you'll quickly run into +all of the problems mentioned above. These widgets are incredibly common in our +UIs; we've done the hard work figuring this out so you don't need to spend hours +fixing and handling numerous edge cases that we already ran into while building +the library! + +Popper is used in popular libraries like Bootstrap, Foundation, Material UI, and +more. It's likely you've already used popper elements on the web positioned by +Popper at some point in the past few years. + +Since we write UIs using powerful abstraction libraries such as React or Angular +nowadays, you'll also be glad to know Popper can fully integrate with them and +be a good citizen together with your other components. Check out `react-popper` +for the official Popper wrapper for React. + +## Installation + +### 1. Package Manager + +```bash +# With npm +npm i @popperjs/core + +# With Yarn +yarn add @popperjs/core +``` + +### 2. CDN + +```html + + + + + +``` + +### 3. Direct Download? + +Managing dependencies by "directly downloading" them and placing them into your +source code is not recommended for a variety of reasons, including missing out +on feat/fix updates easily. Please use a versioning management system like a CDN +or npm/Yarn. + +## Usage + +The most straightforward way to get started is to import Popper from the `unpkg` +CDN, which includes all of its features. You can call the `Popper.createPopper` +constructor to create new popper instances. + +Here is a complete example: + +```html + +Popper example + + + + + + + + +``` + +Visit the [tutorial](https://popper.js.org/docs/v2/tutorial/) for an example of +how to build your own tooltip from scratch using Popper. + +### Module bundlers + +You can import the `createPopper` constructor from the fully-featured file: + +```js +import { createPopper } from '@popperjs/core'; + +const button = document.querySelector('#button'); +const tooltip = document.querySelector('#tooltip'); + +// Pass the button, the tooltip, and some options, and Popper will do the +// magic positioning for you: +createPopper(button, tooltip, { + placement: 'right', +}); +``` + +All the modifiers listed in the docs menu will be enabled and "just work", so +you don't need to think about setting Popper up. The size of Popper including +all of its features is about 5 kB minzipped, but it may grow a bit in the +future. + +#### Popper Lite (tree-shaking) + +If bundle size is important, you'll want to take advantage of tree-shaking. The +library is built in a modular way to allow to import only the parts you really +need. + +```js +import { createPopperLite as createPopper } from '@popperjs/core'; +``` + +The Lite version includes the most necessary modifiers that will compute the +offsets of the popper, compute and add the positioning styles, and add event +listeners. This is close in bundle size to pure CSS tooltip libraries, and +behaves somewhat similarly. + +However, this does not include the features that makes Popper truly useful. + +The two most useful modifiers not included in Lite are `preventOverflow` and +`flip`: + +```js +import { + createPopperLite as createPopper, + preventOverflow, + flip, +} from '@popperjs/core'; + +const button = document.querySelector('#button'); +const tooltip = document.querySelector('#tooltip'); + +createPopper(button, tooltip, { + modifiers: [preventOverflow, flip], +}); +``` + +As you make more poppers, you may be finding yourself needing other modifiers +provided by the library. + +See [tree-shaking](https://popper.js.org/docs/v2/performance/#tree-shaking) for more +information. + +## Distribution targets + +Popper is distributed in 3 different versions, in 3 different file formats. + +The 3 file formats are: + +- `esm` (works with `import` syntax — **recommended**) +- `umd` (works with ` - - - -``` - -### 3. Direct Download? - -Managing dependencies by "directly downloading" them and placing them into your -source code is not recommended for a variety of reasons, including missing out -on feat/fix updates easily. Please use a versioning management system like a CDN -or npm/Yarn. - -## Usage - -The most straightforward way to get started is to import Popper from the `unpkg` -CDN, which includes all of its features. You can call the `Popper.createPopper` -constructor to create new popper instances. - -Here is a complete example: - -```html - -Popper example - - - - - - - - -``` - -Visit the [tutorial](https://popper.js.org/docs/v2/tutorial/) for an example of -how to build your own tooltip from scratch using Popper. - -### Module bundlers - -You can import the `createPopper` constructor from the fully-featured file: - -```js -import { createPopper } from '@popperjs/core'; - -const button = document.querySelector('#button'); -const tooltip = document.querySelector('#tooltip'); - -// Pass the button, the tooltip, and some options, and Popper will do the -// magic positioning for you: -createPopper(button, tooltip, { - placement: 'right', -}); -``` - -All the modifiers listed in the docs menu will be enabled and "just work", so -you don't need to think about setting Popper up. The size of Popper including -all of its features is about 5 kB minzipped, but it may grow a bit in the -future. - -#### Popper Lite (tree-shaking) - -If bundle size is important, you'll want to take advantage of tree-shaking. The -library is built in a modular way to allow to import only the parts you really -need. - -```js -import { createPopperLite as createPopper } from '@popperjs/core'; -``` - -The Lite version includes the most necessary modifiers that will compute the -offsets of the popper, compute and add the positioning styles, and add event -listeners. This is close in bundle size to pure CSS tooltip libraries, and -behaves somewhat similarly. - -However, this does not include the features that makes Popper truly useful. - -The two most useful modifiers not included in Lite are `preventOverflow` and -`flip`: - -```js -import { - createPopperLite as createPopper, - preventOverflow, - flip, -} from '@popperjs/core'; - -const button = document.querySelector('#button'); -const tooltip = document.querySelector('#tooltip'); - -createPopper(button, tooltip, { - modifiers: [preventOverflow, flip], -}); -``` - -As you make more poppers, you may be finding yourself needing other modifiers -provided by the library. - -See [tree-shaking](https://popper.js.org/docs/v2/performance/#tree-shaking) for more -information. - -## Distribution targets - -Popper is distributed in 3 different versions, in 3 different file formats. - -The 3 file formats are: - -- `esm` (works with `import` syntax — **recommended**) -- `umd` (works with ` - - - + + + diff --git a/vue/header.html b/vue/header.html index 3738e0b..51938cb 100644 --- a/vue/header.html +++ b/vue/header.html @@ -6,9 +6,9 @@ CARIA Project - + - + -- 2.49.1 From 13d0ae62c1f3932d0915aacefdb59474e05b53b3 Mon Sep 17 00:00:00 2001 From: Christian CUNAT-BRULE Date: Thu, 6 Aug 2026 21:11:19 +0200 Subject: [PATCH 3/3] Edit module --- .gitignore | 2 +- .../dist/MarkerCluster.Default.css | 60 ++ module/leaflet-1.3.0/dist/MarkerCluster.css | 14 + module/leaflet-1.3.0/dist/leaflet.css | 636 ++++++++++++++++++ module/leaflet-1.3.0/dist/leaflet.js | 5 + .../dist/leaflet.markercluster.js | 3 + 6 files changed, 719 insertions(+), 1 deletion(-) create mode 100644 module/leaflet-1.3.0/dist/MarkerCluster.Default.css create mode 100644 module/leaflet-1.3.0/dist/MarkerCluster.css create mode 100644 module/leaflet-1.3.0/dist/leaflet.css create mode 100644 module/leaflet-1.3.0/dist/leaflet.js create mode 100644 module/leaflet-1.3.0/dist/leaflet.markercluster.js diff --git a/.gitignore b/.gitignore index 6e79c68..343cafb 100644 --- a/.gitignore +++ b/.gitignore @@ -106,6 +106,6 @@ $RECYCLE.BIN/ # ---------------------- # Output / build directories # ---------------------- -dist/ +# dist/ build/ out/ diff --git a/module/leaflet-1.3.0/dist/MarkerCluster.Default.css b/module/leaflet-1.3.0/dist/MarkerCluster.Default.css new file mode 100644 index 0000000..bbc8c9f --- /dev/null +++ b/module/leaflet-1.3.0/dist/MarkerCluster.Default.css @@ -0,0 +1,60 @@ +.marker-cluster-small { + background-color: rgba(181, 226, 140, 0.6); + } +.marker-cluster-small div { + background-color: rgba(110, 204, 57, 0.6); + } + +.marker-cluster-medium { + background-color: rgba(241, 211, 87, 0.6); + } +.marker-cluster-medium div { + background-color: rgba(240, 194, 12, 0.6); + } + +.marker-cluster-large { + background-color: rgba(253, 156, 115, 0.6); + } +.marker-cluster-large div { + background-color: rgba(241, 128, 23, 0.6); + } + + /* IE 6-8 fallback colors */ +.leaflet-oldie .marker-cluster-small { + background-color: rgb(181, 226, 140); + } +.leaflet-oldie .marker-cluster-small div { + background-color: rgb(110, 204, 57); + } + +.leaflet-oldie .marker-cluster-medium { + background-color: rgb(241, 211, 87); + } +.leaflet-oldie .marker-cluster-medium div { + background-color: rgb(240, 194, 12); + } + +.leaflet-oldie .marker-cluster-large { + background-color: rgb(253, 156, 115); + } +.leaflet-oldie .marker-cluster-large div { + background-color: rgb(241, 128, 23); +} + +.marker-cluster { + background-clip: padding-box; + border-radius: 20px; + } +.marker-cluster div { + width: 30px; + height: 30px; + margin-left: 5px; + margin-top: 5px; + + text-align: center; + border-radius: 15px; + font: 12px "Helvetica Neue", Arial, Helvetica, sans-serif; + } +.marker-cluster span { + line-height: 30px; + } \ No newline at end of file diff --git a/module/leaflet-1.3.0/dist/MarkerCluster.css b/module/leaflet-1.3.0/dist/MarkerCluster.css new file mode 100644 index 0000000..c60d71b --- /dev/null +++ b/module/leaflet-1.3.0/dist/MarkerCluster.css @@ -0,0 +1,14 @@ +.leaflet-cluster-anim .leaflet-marker-icon, .leaflet-cluster-anim .leaflet-marker-shadow { + -webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s ease-in; + -moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s ease-in; + -o-transition: -o-transform 0.3s ease-out, opacity 0.3s ease-in; + transition: transform 0.3s ease-out, opacity 0.3s ease-in; +} + +.leaflet-cluster-spider-leg { + /* stroke-dashoffset (duration and function) should match with leaflet-marker-icon transform in order to track it exactly */ + -webkit-transition: -webkit-stroke-dashoffset 0.3s ease-out, -webkit-stroke-opacity 0.3s ease-in; + -moz-transition: -moz-stroke-dashoffset 0.3s ease-out, -moz-stroke-opacity 0.3s ease-in; + -o-transition: -o-stroke-dashoffset 0.3s ease-out, -o-stroke-opacity 0.3s ease-in; + transition: stroke-dashoffset 0.3s ease-out, stroke-opacity 0.3s ease-in; +} diff --git a/module/leaflet-1.3.0/dist/leaflet.css b/module/leaflet-1.3.0/dist/leaflet.css new file mode 100644 index 0000000..d1b47a1 --- /dev/null +++ b/module/leaflet-1.3.0/dist/leaflet.css @@ -0,0 +1,636 @@ +/* required styles */ + +.leaflet-pane, +.leaflet-tile, +.leaflet-marker-icon, +.leaflet-marker-shadow, +.leaflet-tile-container, +.leaflet-pane > svg, +.leaflet-pane > canvas, +.leaflet-zoom-box, +.leaflet-image-layer, +.leaflet-layer { + position: absolute; + left: 0; + top: 0; + } +.leaflet-container { + overflow: hidden; + } +.leaflet-tile, +.leaflet-marker-icon, +.leaflet-marker-shadow { + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + -webkit-user-drag: none; + } +/* Safari renders non-retina tile on retina better with this, but Chrome is worse */ +.leaflet-safari .leaflet-tile { + image-rendering: -webkit-optimize-contrast; + } +/* hack that prevents hw layers "stretching" when loading new tiles */ +.leaflet-safari .leaflet-tile-container { + width: 1600px; + height: 1600px; + -webkit-transform-origin: 0 0; + } +.leaflet-marker-icon, +.leaflet-marker-shadow { + display: block; + } +/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */ +/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */ +.leaflet-container .leaflet-overlay-pane svg, +.leaflet-container .leaflet-marker-pane img, +.leaflet-container .leaflet-shadow-pane img, +.leaflet-container .leaflet-tile-pane img, +.leaflet-container img.leaflet-image-layer { + max-width: none !important; + max-height: none !important; + } + +.leaflet-container.leaflet-touch-zoom { + -ms-touch-action: pan-x pan-y; + touch-action: pan-x pan-y; + } +.leaflet-container.leaflet-touch-drag { + -ms-touch-action: pinch-zoom; + /* Fallback for FF which doesn't support pinch-zoom */ + touch-action: none; + touch-action: pinch-zoom; +} +.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom { + -ms-touch-action: none; + touch-action: none; +} +.leaflet-container { + -webkit-tap-highlight-color: transparent; +} +.leaflet-container a { + -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4); +} +.leaflet-tile { + filter: inherit; + visibility: hidden; + } +.leaflet-tile-loaded { + visibility: inherit; + } +.leaflet-zoom-box { + width: 0; + height: 0; + -moz-box-sizing: border-box; + box-sizing: border-box; + z-index: 800; + } +/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */ +.leaflet-overlay-pane svg { + -moz-user-select: none; + } + +.leaflet-pane { z-index: 400; } + +.leaflet-tile-pane { z-index: 200; } +.leaflet-overlay-pane { z-index: 400; } +.leaflet-shadow-pane { z-index: 500; } +.leaflet-marker-pane { z-index: 600; } +.leaflet-tooltip-pane { z-index: 650; } +.leaflet-popup-pane { z-index: 700; } + +.leaflet-map-pane canvas { z-index: 100; } +.leaflet-map-pane svg { z-index: 200; } + +.leaflet-vml-shape { + width: 1px; + height: 1px; + } +.lvml { + behavior: url(#default#VML); + display: inline-block; + position: absolute; + } + + +/* control positioning */ + +.leaflet-control { + position: relative; + z-index: 800; + pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */ + pointer-events: auto; + } +.leaflet-top, +.leaflet-bottom { + position: absolute; + z-index: 1000; + pointer-events: none; + } +.leaflet-top { + top: 0; + } +.leaflet-right { + right: 0; + } +.leaflet-bottom { + bottom: 0; + } +.leaflet-left { + left: 0; + } +.leaflet-control { + float: left; + clear: both; + } +.leaflet-right .leaflet-control { + float: right; + } +.leaflet-top .leaflet-control { + margin-top: 10px; + } +.leaflet-bottom .leaflet-control { + margin-bottom: 10px; + } +.leaflet-left .leaflet-control { + margin-left: 10px; + } +.leaflet-right .leaflet-control { + margin-right: 10px; + } + + +/* zoom and fade animations */ + +.leaflet-fade-anim .leaflet-tile { + will-change: opacity; + } +.leaflet-fade-anim .leaflet-popup { + opacity: 0; + -webkit-transition: opacity 0.2s linear; + -moz-transition: opacity 0.2s linear; + -o-transition: opacity 0.2s linear; + transition: opacity 0.2s linear; + } +.leaflet-fade-anim .leaflet-map-pane .leaflet-popup { + opacity: 1; + } +.leaflet-zoom-animated { + -webkit-transform-origin: 0 0; + -ms-transform-origin: 0 0; + transform-origin: 0 0; + } +.leaflet-zoom-anim .leaflet-zoom-animated { + will-change: transform; + } +.leaflet-zoom-anim .leaflet-zoom-animated { + -webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1); + -moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1); + -o-transition: -o-transform 0.25s cubic-bezier(0,0,0.25,1); + transition: transform 0.25s cubic-bezier(0,0,0.25,1); + } +.leaflet-zoom-anim .leaflet-tile, +.leaflet-pan-anim .leaflet-tile { + -webkit-transition: none; + -moz-transition: none; + -o-transition: none; + transition: none; + } + +.leaflet-zoom-anim .leaflet-zoom-hide { + visibility: hidden; + } + + +/* cursors */ + +.leaflet-interactive { + cursor: pointer; + } +.leaflet-grab { + cursor: -webkit-grab; + cursor: -moz-grab; + } +.leaflet-crosshair, +.leaflet-crosshair .leaflet-interactive { + cursor: crosshair; + } +.leaflet-popup-pane, +.leaflet-control { + cursor: auto; + } +.leaflet-dragging .leaflet-grab, +.leaflet-dragging .leaflet-grab .leaflet-interactive, +.leaflet-dragging .leaflet-marker-draggable { + cursor: move; + cursor: -webkit-grabbing; + cursor: -moz-grabbing; + } + +/* marker & overlays interactivity */ +.leaflet-marker-icon, +.leaflet-marker-shadow, +.leaflet-image-layer, +.leaflet-pane > svg path, +.leaflet-tile-container { + pointer-events: none; + } + +.leaflet-marker-icon.leaflet-interactive, +.leaflet-image-layer.leaflet-interactive, +.leaflet-pane > svg path.leaflet-interactive { + pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */ + pointer-events: auto; + } + +/* visual tweaks */ + +.leaflet-container { + background: #ddd; + outline: 0; + } +.leaflet-container a { + color: #0078A8; + } +.leaflet-container a.leaflet-active { + outline: 2px solid orange; + } +.leaflet-zoom-box { + border: 2px dotted #38f; + background: rgba(255,255,255,0.5); + } + + +/* general typography */ +.leaflet-container { + font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif; + } + + +/* general toolbar styles */ + +.leaflet-bar { + box-shadow: 0 1px 5px rgba(0,0,0,0.65); + border-radius: 4px; + } +.leaflet-bar a, +.leaflet-bar a:hover { + background-color: #fff; + border-bottom: 1px solid #ccc; + width: 26px; + height: 26px; + line-height: 26px; + display: block; + text-align: center; + text-decoration: none; + color: black; + } +.leaflet-bar a, +.leaflet-control-layers-toggle { + background-position: 50% 50%; + background-repeat: no-repeat; + display: block; + } +.leaflet-bar a:hover { + background-color: #f4f4f4; + } +.leaflet-bar a:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + } +.leaflet-bar a:last-child { + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + border-bottom: none; + } +.leaflet-bar a.leaflet-disabled { + cursor: default; + background-color: #f4f4f4; + color: #bbb; + } + +.leaflet-touch .leaflet-bar a { + width: 30px; + height: 30px; + line-height: 30px; + } +.leaflet-touch .leaflet-bar a:first-child { + border-top-left-radius: 2px; + border-top-right-radius: 2px; + } +.leaflet-touch .leaflet-bar a:last-child { + border-bottom-left-radius: 2px; + border-bottom-right-radius: 2px; + } + +/* zoom control */ + +.leaflet-control-zoom-in, +.leaflet-control-zoom-out { + font: bold 18px 'Lucida Console', Monaco, monospace; + text-indent: 1px; + } + +.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out { + font-size: 22px; + } + + +/* layers control */ + +.leaflet-control-layers { + box-shadow: 0 1px 5px rgba(0,0,0,0.4); + background: #fff; + border-radius: 5px; + } +.leaflet-control-layers-toggle { + background-image: url(images/layers.png); + width: 36px; + height: 36px; + } +.leaflet-retina .leaflet-control-layers-toggle { + background-image: url(images/layers-2x.png); + background-size: 26px 26px; + } +.leaflet-touch .leaflet-control-layers-toggle { + width: 44px; + height: 44px; + } +.leaflet-control-layers .leaflet-control-layers-list, +.leaflet-control-layers-expanded .leaflet-control-layers-toggle { + display: none; + } +.leaflet-control-layers-expanded .leaflet-control-layers-list { + display: block; + position: relative; + } +.leaflet-control-layers-expanded { + padding: 6px 10px 6px 6px; + color: #333; + background: #fff; + } +.leaflet-control-layers-scrollbar { + overflow-y: scroll; + overflow-x: hidden; + padding-right: 5px; + } +.leaflet-control-layers-selector { + margin-top: 2px; + position: relative; + top: 1px; + } +.leaflet-control-layers label { + display: block; + } +.leaflet-control-layers-separator { + height: 0; + border-top: 1px solid #ddd; + margin: 5px -10px 5px -6px; + } + +/* Default icon URLs */ +.leaflet-default-icon-path { + background-image: url(images/marker-icon.png); + } + + +/* attribution and scale controls */ + +.leaflet-container .leaflet-control-attribution { + background: #fff; + background: rgba(255, 255, 255, 0.7); + margin: 0; + } +.leaflet-control-attribution, +.leaflet-control-scale-line { + padding: 0 5px; + color: #333; + } +.leaflet-control-attribution a { + text-decoration: none; + } +.leaflet-control-attribution a:hover { + text-decoration: underline; + } +.leaflet-container .leaflet-control-attribution, +.leaflet-container .leaflet-control-scale { + font-size: 11px; + } +.leaflet-left .leaflet-control-scale { + margin-left: 5px; + } +.leaflet-bottom .leaflet-control-scale { + margin-bottom: 5px; + } +.leaflet-control-scale-line { + border: 2px solid #777; + border-top: none; + line-height: 1.1; + padding: 2px 5px 1px; + font-size: 11px; + white-space: nowrap; + overflow: hidden; + -moz-box-sizing: border-box; + box-sizing: border-box; + + background: #fff; + background: rgba(255, 255, 255, 0.5); + } +.leaflet-control-scale-line:not(:first-child) { + border-top: 2px solid #777; + border-bottom: none; + margin-top: -2px; + } +.leaflet-control-scale-line:not(:first-child):not(:last-child) { + border-bottom: 2px solid #777; + } + +.leaflet-touch .leaflet-control-attribution, +.leaflet-touch .leaflet-control-layers, +.leaflet-touch .leaflet-bar { + box-shadow: none; + } +.leaflet-touch .leaflet-control-layers, +.leaflet-touch .leaflet-bar { + border: 2px solid rgba(0,0,0,0.2); + background-clip: padding-box; + } + + +/* popup */ + +.leaflet-popup { + position: absolute; + text-align: center; + margin-bottom: 20px; + } +.leaflet-popup-content-wrapper { + padding: 1px; + text-align: left; + border-radius: 12px; + } +.leaflet-popup-content { + margin: 13px 19px; + line-height: 1.4; + } +.leaflet-popup-content p { + margin: 18px 0; + } +.leaflet-popup-tip-container { + width: 40px; + height: 20px; + position: absolute; + left: 50%; + margin-left: -20px; + overflow: hidden; + pointer-events: none; + } +.leaflet-popup-tip { + width: 17px; + height: 17px; + padding: 1px; + + margin: -10px auto 0; + + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + -o-transform: rotate(45deg); + transform: rotate(45deg); + } +.leaflet-popup-content-wrapper, +.leaflet-popup-tip { + background: white; + color: #333; + box-shadow: 0 3px 14px rgba(0,0,0,0.4); + } +.leaflet-container a.leaflet-popup-close-button { + position: absolute; + top: 0; + right: 0; + padding: 4px 4px 0 0; + border: none; + text-align: center; + width: 18px; + height: 14px; + font: 16px/14px Tahoma, Verdana, sans-serif; + color: #c3c3c3; + text-decoration: none; + font-weight: bold; + background: transparent; + } +.leaflet-container a.leaflet-popup-close-button:hover { + color: #999; + } +.leaflet-popup-scrolled { + overflow: auto; + border-bottom: 1px solid #ddd; + border-top: 1px solid #ddd; + } + +.leaflet-oldie .leaflet-popup-content-wrapper { + zoom: 1; + } +.leaflet-oldie .leaflet-popup-tip { + width: 24px; + margin: 0 auto; + + -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)"; + filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678); + } +.leaflet-oldie .leaflet-popup-tip-container { + margin-top: -1px; + } + +.leaflet-oldie .leaflet-control-zoom, +.leaflet-oldie .leaflet-control-layers, +.leaflet-oldie .leaflet-popup-content-wrapper, +.leaflet-oldie .leaflet-popup-tip { + border: 1px solid #999; + } + + +/* div icon */ + +.leaflet-div-icon { + background: #fff; + border: 1px solid #666; + } + + +/* Tooltip */ +/* Base styles for the element that has a tooltip */ +.leaflet-tooltip { + position: absolute; + padding: 6px; + background-color: #fff; + border: 1px solid #fff; + border-radius: 3px; + color: #222; + white-space: nowrap; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + pointer-events: none; + box-shadow: 0 1px 3px rgba(0,0,0,0.4); + } +.leaflet-tooltip.leaflet-clickable { + cursor: pointer; + pointer-events: auto; + } +.leaflet-tooltip-top:before, +.leaflet-tooltip-bottom:before, +.leaflet-tooltip-left:before, +.leaflet-tooltip-right:before { + position: absolute; + pointer-events: none; + border: 6px solid transparent; + background: transparent; + content: ""; + } + +/* Directions */ + +.leaflet-tooltip-bottom { + margin-top: 6px; +} +.leaflet-tooltip-top { + margin-top: -6px; +} +.leaflet-tooltip-bottom:before, +.leaflet-tooltip-top:before { + left: 50%; + margin-left: -6px; + } +.leaflet-tooltip-top:before { + bottom: 0; + margin-bottom: -12px; + border-top-color: #fff; + } +.leaflet-tooltip-bottom:before { + top: 0; + margin-top: -12px; + margin-left: -6px; + border-bottom-color: #fff; + } +.leaflet-tooltip-left { + margin-left: -6px; +} +.leaflet-tooltip-right { + margin-left: 6px; +} +.leaflet-tooltip-left:before, +.leaflet-tooltip-right:before { + top: 50%; + margin-top: -6px; + } +.leaflet-tooltip-left:before { + right: 0; + margin-right: -12px; + border-left-color: #fff; + } +.leaflet-tooltip-right:before { + left: 0; + margin-left: -12px; + border-right-color: #fff; + } diff --git a/module/leaflet-1.3.0/dist/leaflet.js b/module/leaflet-1.3.0/dist/leaflet.js new file mode 100644 index 0000000..4601ceb --- /dev/null +++ b/module/leaflet-1.3.0/dist/leaflet.js @@ -0,0 +1,5 @@ +/* @preserve + * Leaflet 1.3.0, a JS library for interactive maps. http://leafletjs.com + * (c) 2010-2017 Vladimir Agafonkin, (c) 2010-2011 CloudMade + */ +!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(t.L={})}(this,function(t){"use strict";function i(t){var i,e,n,o;for(e=1,n=arguments.length;e=0}function A(t,i,e,n){return"touchstart"===i?O(t,e,n):"touchmove"===i?W(t,e,n):"touchend"===i&&H(t,e,n),this}function B(t,i,e){var n=t["_leaflet_"+i+e];return"touchstart"===i?t.removeEventListener(Qi,n,!1):"touchmove"===i?t.removeEventListener(te,n,!1):"touchend"===i&&(t.removeEventListener(ie,n,!1),t.removeEventListener(ee,n,!1)),this}function O(t,i,n){var o=e(function(t){if("mouse"!==t.pointerType&&t.MSPOINTER_TYPE_MOUSE&&t.pointerType!==t.MSPOINTER_TYPE_MOUSE){if(!(ne.indexOf(t.target.tagName)<0))return;$(t)}j(t,i)});t["_leaflet_touchstart"+n]=o,t.addEventListener(Qi,o,!1),se||(document.documentElement.addEventListener(Qi,R,!0),document.documentElement.addEventListener(te,D,!0),document.documentElement.addEventListener(ie,N,!0),document.documentElement.addEventListener(ee,N,!0),se=!0)}function R(t){oe[t.pointerId]=t,re++}function D(t){oe[t.pointerId]&&(oe[t.pointerId]=t)}function N(t){delete oe[t.pointerId],re--}function j(t,i){t.touches=[];for(var e in oe)t.touches.push(oe[e]);t.changedTouches=[t],i(t)}function W(t,i,e){var n=function(t){(t.pointerType!==t.MSPOINTER_TYPE_MOUSE&&"mouse"!==t.pointerType||0!==t.buttons)&&j(t,i)};t["_leaflet_touchmove"+e]=n,t.addEventListener(te,n,!1)}function H(t,i,e){var n=function(t){j(t,i)};t["_leaflet_touchend"+e]=n,t.addEventListener(ie,n,!1),t.addEventListener(ee,n,!1)}function F(t,i,e){function n(t){var i;if(Ui){if(!Pi||"mouse"===t.pointerType)return;i=re}else i=t.touches.length;if(!(i>1)){var e=Date.now(),n=e-(s||e);r=t.touches?t.touches[0]:t,a=n>0&&n<=h,s=e}}function o(t){if(a&&!r.cancelBubble){if(Ui){if(!Pi||"mouse"===t.pointerType)return;var e,n,o={};for(n in r)e=r[n],o[n]=e&&e.bind?e.bind(r):e;r=o}r.type="dblclick",i(r),s=null}}var s,r,a=!1,h=250;return t[ue+ae+e]=n,t[ue+he+e]=o,t[ue+"dblclick"+e]=i,t.addEventListener(ae,n,!1),t.addEventListener(he,o,!1),t.addEventListener("dblclick",i,!1),this}function U(t,i){var e=t[ue+ae+i],n=t[ue+he+i],o=t[ue+"dblclick"+i];return t.removeEventListener(ae,e,!1),t.removeEventListener(he,n,!1),Pi||t.removeEventListener("dblclick",o,!1),this}function V(t,i,e,n){if("object"==typeof i)for(var o in i)G(t,o,i[o],e);else for(var s=0,r=(i=u(i)).length;s100&&n<500||t.target._simulatedClick&&!t._simulated?Q(t):(pi=e,i(t))}function rt(t){return"string"==typeof t?document.getElementById(t):t}function at(t,i){var e=t.style[i]||t.currentStyle&&t.currentStyle[i];if((!e||"auto"===e)&&document.defaultView){var n=document.defaultView.getComputedStyle(t,null);e=n?n[i]:null}return"auto"===e?null:e}function ht(t,i,e){var n=document.createElement(t);return n.className=i||"",e&&e.appendChild(n),n}function ut(t){var i=t.parentNode;i&&i.removeChild(t)}function lt(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function ct(t){var i=t.parentNode;i.lastChild!==t&&i.appendChild(t)}function _t(t){var i=t.parentNode;i.firstChild!==t&&i.insertBefore(t,i.firstChild)}function dt(t,i){if(void 0!==t.classList)return t.classList.contains(i);var e=gt(t);return e.length>0&&new RegExp("(^|\\s)"+i+"(\\s|$)").test(e)}function pt(t,i){if(void 0!==t.classList)for(var e=u(i),n=0,o=e.length;nh&&(s=r,h=a);h>e&&(i[s]=1,Et(t,i,e,n,s),Et(t,i,e,s,o))}function kt(t,i){for(var e=[t[0]],n=1,o=0,s=t.length;ni&&(e.push(t[n]),o=n);return oi.max.x&&(e|=2),t.yi.max.y&&(e|=8),e}function Ot(t,i){var e=i.x-t.x,n=i.y-t.y;return e*e+n*n}function Rt(t,i,e,n){var o,s=i.x,r=i.y,a=e.x-s,h=e.y-r,u=a*a+h*h;return u>0&&((o=((t.x-s)*a+(t.y-r)*h)/u)>1?(s=e.x,r=e.y):o>0&&(s+=a*o,r+=h*o)),a=t.x-s,h=t.y-r,n?a*a+h*h:new x(s,r)}function Dt(t){return!ei(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function Nt(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Dt(t)}function jt(t,i,e){var n,o,s,r,a,h,u,l,c,_=[1,4,2,8];for(o=0,u=t.length;o0?Math.floor(t):Math.ceil(t)};x.prototype={clone:function(){return new x(this.x,this.y)},add:function(t){return this.clone()._add(w(t))},_add:function(t){return this.x+=t.x,this.y+=t.y,this},subtract:function(t){return this.clone()._subtract(w(t))},_subtract:function(t){return this.x-=t.x,this.y-=t.y,this},divideBy:function(t){return this.clone()._divideBy(t)},_divideBy:function(t){return this.x/=t,this.y/=t,this},multiplyBy:function(t){return this.clone()._multiplyBy(t)},_multiplyBy:function(t){return this.x*=t,this.y*=t,this},scaleBy:function(t){return new x(this.x*t.x,this.y*t.y)},unscaleBy:function(t){return new x(this.x/t.x,this.y/t.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=li(this.x),this.y=li(this.y),this},distanceTo:function(t){var i=(t=w(t)).x-this.x,e=t.y-this.y;return Math.sqrt(i*i+e*e)},equals:function(t){return(t=w(t)).x===this.x&&t.y===this.y},contains:function(t){return t=w(t),Math.abs(t.x)<=Math.abs(this.x)&&Math.abs(t.y)<=Math.abs(this.y)},toString:function(){return"Point("+a(this.x)+", "+a(this.y)+")"}},P.prototype={extend:function(t){return t=w(t),this.min||this.max?(this.min.x=Math.min(t.x,this.min.x),this.max.x=Math.max(t.x,this.max.x),this.min.y=Math.min(t.y,this.min.y),this.max.y=Math.max(t.y,this.max.y)):(this.min=t.clone(),this.max=t.clone()),this},getCenter:function(t){return new x((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,t)},getBottomLeft:function(){return new x(this.min.x,this.max.y)},getTopRight:function(){return new x(this.max.x,this.min.y)},getTopLeft:function(){return this.min},getBottomRight:function(){return this.max},getSize:function(){return this.max.subtract(this.min)},contains:function(t){var i,e;return(t="number"==typeof t[0]||t instanceof x?w(t):b(t))instanceof P?(i=t.min,e=t.max):i=e=t,i.x>=this.min.x&&e.x<=this.max.x&&i.y>=this.min.y&&e.y<=this.max.y},intersects:function(t){t=b(t);var i=this.min,e=this.max,n=t.min,o=t.max,s=o.x>=i.x&&n.x<=e.x,r=o.y>=i.y&&n.y<=e.y;return s&&r},overlaps:function(t){t=b(t);var i=this.min,e=this.max,n=t.min,o=t.max,s=o.x>i.x&&n.xi.y&&n.y=n.lat&&e.lat<=o.lat&&i.lng>=n.lng&&e.lng<=o.lng},intersects:function(t){t=z(t);var i=this._southWest,e=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=i.lat&&n.lat<=e.lat,r=o.lng>=i.lng&&n.lng<=e.lng;return s&&r},overlaps:function(t){t=z(t);var i=this._southWest,e=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>i.lat&&n.lati.lng&&n.lng1,Yi=!!document.createElement("canvas").getContext,Xi=!(!document.createElementNS||!E("svg").createSVGRect),Ji=!Xi&&function(){try{var t=document.createElement("div");t.innerHTML='';var i=t.firstChild;return i.style.behavior="url(#default#VML)",i&&"object"==typeof i.adj}catch(t){return!1}}(),$i=(Object.freeze||Object)({ie:wi,ielt9:Li,edge:Pi,webkit:bi,android:Ti,android23:zi,androidStock:Ci,opera:Zi,chrome:Si,gecko:Ei,safari:ki,phantom:Ii,opera12:Ai,win:Bi,ie3d:Oi,webkit3d:Ri,gecko3d:Di,any3d:Ni,mobile:ji,mobileWebkit:Wi,mobileWebkit3d:Hi,msPointer:Fi,pointer:Ui,touch:Vi,mobileOpera:qi,mobileGecko:Gi,retina:Ki,canvas:Yi,svg:Xi,vml:Ji}),Qi=Fi?"MSPointerDown":"pointerdown",te=Fi?"MSPointerMove":"pointermove",ie=Fi?"MSPointerUp":"pointerup",ee=Fi?"MSPointerCancel":"pointercancel",ne=["INPUT","SELECT","OPTION"],oe={},se=!1,re=0,ae=Fi?"MSPointerDown":Ui?"pointerdown":"touchstart",he=Fi?"MSPointerUp":Ui?"pointerup":"touchend",ue="_leaflet_",le="_leaflet_events",ce=Bi&&Si?2*window.devicePixelRatio:Ei?window.devicePixelRatio:1,_e={},de=(Object.freeze||Object)({on:V,off:q,stopPropagation:Y,disableScrollPropagation:X,disableClickPropagation:J,preventDefault:$,stop:Q,getMousePosition:tt,getWheelDelta:it,fakeStop:et,skipped:nt,isExternalTarget:ot,addListener:V,removeListener:q}),pe=xt(["transform","WebkitTransform","OTransform","MozTransform","msTransform"]),me=xt(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),fe="webkitTransition"===me||"OTransition"===me?me+"End":"transitionend";if("onselectstart"in document)mi=function(){V(window,"selectstart",$)},fi=function(){q(window,"selectstart",$)};else{var ge=xt(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]);mi=function(){if(ge){var t=document.documentElement.style;gi=t[ge],t[ge]="none"}},fi=function(){ge&&(document.documentElement.style[ge]=gi,gi=void 0)}}var ve,ye,xe=(Object.freeze||Object)({TRANSFORM:pe,TRANSITION:me,TRANSITION_END:fe,get:rt,getStyle:at,create:ht,remove:ut,empty:lt,toFront:ct,toBack:_t,hasClass:dt,addClass:pt,removeClass:mt,setClass:ft,getClass:gt,setOpacity:vt,testProp:xt,setTransform:wt,setPosition:Lt,getPosition:Pt,disableTextSelection:mi,enableTextSelection:fi,disableImageDrag:bt,enableImageDrag:Tt,preventOutline:zt,restoreOutline:Mt}),we=ui.extend({run:function(t,i,e,n){this.stop(),this._el=t,this._inProgress=!0,this._duration=e||.25,this._easeOutPower=1/Math.max(n||.5,.2),this._startPos=Pt(t),this._offset=i.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=f(this._animate,this),this._step()},_step:function(t){var i=+new Date-this._startTime,e=1e3*this._duration;ithis.options.maxZoom)?this.setZoom(t):this},panInsideBounds:function(t,i){this._enforcingBounds=!0;var e=this.getCenter(),n=this._limitCenter(e,this._zoom,z(t));return e.equals(n)||this.panTo(n,i),this._enforcingBounds=!1,this},invalidateSize:function(t){if(!this._loaded)return this;t=i({animate:!1,pan:!0},!0===t?{animate:!0}:t);var n=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var o=this.getSize(),s=n.divideBy(2).round(),r=o.divideBy(2).round(),a=s.subtract(r);return a.x||a.y?(t.animate&&t.pan?this.panBy(a):(t.pan&&this._rawPanBy(a),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(e(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:n,newSize:o})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=i({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var n=e(this._handleGeolocationResponse,this),o=e(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(n,o,t):navigator.geolocation.getCurrentPosition(n,o,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){var i=t.code,e=t.message||(1===i?"permission denied":2===i?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:i,message:"Geolocation error: "+e+"."})},_handleGeolocationResponse:function(t){var i=new M(t.coords.latitude,t.coords.longitude),e=i.toBounds(t.coords.accuracy),n=this._locateOptions;if(n.setView){var o=this.getBoundsZoom(e);this.setView(i,n.maxZoom?Math.min(o,n.maxZoom):o)}var s={latlng:i,bounds:e,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)},addHandler:function(t,i){if(!i)return this;var e=this[t]=new i(this);return this._handlers.push(e),this.options[t]&&e.enable(),this},remove:function(){if(this._initEvents(!0),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(t){this._container._leaflet_id=void 0,this._containerId=void 0}void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),ut(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._clearHandlers(),this._loaded&&this.fire("unload");var t;for(t in this._layers)this._layers[t].remove();for(t in this._panes)ut(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,i){var e=ht("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),i||this._mapPane);return t&&(this._panes[t]=e),e},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter:this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new T(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,i,e){t=z(t),e=w(e||[0,0]);var n=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),h=this.getSize().subtract(e),u=b(this.project(a,n),this.project(r,n)).getSize(),l=Ni?this.options.zoomSnap:1,c=h.x/u.x,_=h.y/u.y,d=i?Math.max(c,_):Math.min(c,_);return n=this.getScaleZoom(d,n),l&&(n=Math.round(n/(l/100))*(l/100),n=i?Math.ceil(n/l)*l:Math.floor(n/l)*l),Math.max(o,Math.min(s,n))},getSize:function(){return this._size&&!this._sizeChanged||(this._size=new x(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,i){var e=this._getTopLeftPoint(t,i);return new P(e,e.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,i){var e=this.options.crs;return i=void 0===i?this._zoom:i,e.scale(t)/e.scale(i)},getScaleZoom:function(t,i){var e=this.options.crs;i=void 0===i?this._zoom:i;var n=e.zoom(t*e.scale(i));return isNaN(n)?1/0:n},project:function(t,i){return i=void 0===i?this._zoom:i,this.options.crs.latLngToPoint(C(t),i)},unproject:function(t,i){return i=void 0===i?this._zoom:i,this.options.crs.pointToLatLng(w(t),i)},layerPointToLatLng:function(t){var i=w(t).add(this.getPixelOrigin());return this.unproject(i)},latLngToLayerPoint:function(t){return this.project(C(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(C(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(z(t))},distance:function(t,i){return this.options.crs.distance(C(t),C(i))},containerPointToLayerPoint:function(t){return w(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return w(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var i=this.containerPointToLayerPoint(w(t));return this.layerPointToLatLng(i)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(C(t)))},mouseEventToContainerPoint:function(t){return tt(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var i=this._container=rt(t);if(!i)throw new Error("Map container not found.");if(i._leaflet_id)throw new Error("Map container is already initialized.");V(i,"scroll",this._onScroll,this),this._containerId=n(i)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&Ni,pt(t,"leaflet-container"+(Vi?" leaflet-touch":"")+(Ki?" leaflet-retina":"")+(Li?" leaflet-oldie":"")+(ki?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var i=at(t,"position");"absolute"!==i&&"relative"!==i&&"fixed"!==i&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),Lt(this._mapPane,new x(0,0)),this.createPane("tilePane"),this.createPane("shadowPane"),this.createPane("overlayPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(pt(t.markerPane,"leaflet-zoom-hide"),pt(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,i){Lt(this._mapPane,new x(0,0));var e=!this._loaded;this._loaded=!0,i=this._limitZoom(i),this.fire("viewprereset");var n=this._zoom!==i;this._moveStart(n,!1)._move(t,i)._moveEnd(n),this.fire("viewreset"),e&&this.fire("load")},_moveStart:function(t,i){return t&&this.fire("zoomstart"),i||this.fire("movestart"),this},_move:function(t,i,e){void 0===i&&(i=this._zoom);var n=this._zoom!==i;return this._zoom=i,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),(n||e&&e.pinch)&&this.fire("zoom",e),this.fire("move",e)},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return g(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){Lt(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[n(this._container)]=this;var i=t?q:V;i(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress",this._handleDOMEvent,this),this.options.trackResize&&i(window,"resize",this._onResize,this),Ni&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){g(this._resizeRequest),this._resizeRequest=f(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,i){for(var e,o=[],s="mouseout"===i||"mouseover"===i,r=t.target||t.srcElement,a=!1;r;){if((e=this._targets[n(r)])&&("click"===i||"preclick"===i)&&!t._simulated&&this._draggableMoved(e)){a=!0;break}if(e&&e.listens(i,!0)){if(s&&!ot(r,t))break;if(o.push(e),s)break}if(r===this._container)break;r=r.parentNode}return o.length||a||s||!ot(r,t)||(o=[this]),o},_handleDOMEvent:function(t){if(this._loaded&&!nt(t)){var i=t.type;"mousedown"!==i&&"keypress"!==i||zt(t.target||t.srcElement),this._fireDOMEvent(t,i)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,e,n){if("click"===t.type){var o=i({},t);o.type="preclick",this._fireDOMEvent(o,o.type,n)}if(!t._stopped&&(n=(n||[]).concat(this._findEventTargets(t,e))).length){var s=n[0];"contextmenu"===e&&s.listens(e,!0)&&$(t);var r={originalEvent:t};if("keypress"!==t.type){var a=s.getLatLng&&(!s._radius||s._radius<=10);r.containerPoint=a?this.latLngToContainerPoint(s.getLatLng()):this.mouseEventToContainerPoint(t),r.layerPoint=this.containerPointToLayerPoint(r.containerPoint),r.latlng=a?s.getLatLng():this.layerPointToLatLng(r.layerPoint)}for(var h=0;h0?Math.round(t-i)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(i))},_limitZoom:function(t){var i=this.getMinZoom(),e=this.getMaxZoom(),n=Ni?this.options.zoomSnap:1;return n&&(t=Math.round(t/n)*n),Math.max(i,Math.min(e,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){mt(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,i){var e=this._getCenterOffset(t)._trunc();return!(!0!==(i&&i.animate)&&!this.getSize().contains(e))&&(this.panBy(e,i),!0)},_createAnimProxy:function(){var t=this._proxy=ht("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",function(t){var i=pe,e=this._proxy.style[i];wt(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),e===this._proxy.style[i]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",function(){var t=this.getCenter(),i=this.getZoom();wt(this._proxy,this.project(t,i),this.getZoomScale(i,1))},this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){ut(this._proxy),delete this._proxy},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,i,e){if(this._animatingZoom)return!0;if(e=e||{},!this._zoomAnimated||!1===e.animate||this._nothingToAnimate()||Math.abs(i-this._zoom)>this.options.zoomAnimationThreshold)return!1;var n=this.getZoomScale(i),o=this._getCenterOffset(t)._divideBy(1-1/n);return!(!0!==e.animate&&!this.getSize().contains(o))&&(f(function(){this._moveStart(!0,!1)._animateZoom(t,i,!0)},this),!0)},_animateZoom:function(t,i,n,o){this._mapPane&&(n&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=i,pt(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:i,noUpdate:o}),setTimeout(e(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&mt(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom),f(function(){this._moveEnd(!0)},this))}}),Pe=v.extend({options:{position:"topright"},initialize:function(t){l(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var i=this._map;return i&&i.removeControl(this),this.options.position=t,i&&i.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var i=this._container=this.onAdd(t),e=this.getPosition(),n=t._controlCorners[e];return pt(i,"leaflet-control"),-1!==e.indexOf("bottom")?n.insertBefore(i,n.firstChild):n.appendChild(i),this},remove:function(){return this._map?(ut(this._container),this.onRemove&&this.onRemove(this._map),this._map=null,this):this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),be=function(t){return new Pe(t)};Le.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){function t(t,o){var s=e+t+" "+e+o;i[t+o]=ht("div",s,n)}var i=this._controlCorners={},e="leaflet-",n=this._controlContainer=ht("div",e+"control-container",this._container);t("top","left"),t("top","right"),t("bottom","left"),t("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)ut(this._controlCorners[t]);ut(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var Te=Pe.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,i,e,n){return e1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=i&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var i=this._getLayer(n(t.target)),e=i.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;e&&this._map.fire(e,i)},_createRadioElement:function(t,i){var e='",n=document.createElement("div");return n.innerHTML=e,n.firstChild},_addItem:function(t){var i,e=document.createElement("label"),o=this._map.hasLayer(t.layer);t.overlay?((i=document.createElement("input")).type="checkbox",i.className="leaflet-control-layers-selector",i.defaultChecked=o):i=this._createRadioElement("leaflet-base-layers",o),this._layerControlInputs.push(i),i.layerId=n(t.layer),V(i,"click",this._onInputClick,this);var s=document.createElement("span");s.innerHTML=" "+t.name;var r=document.createElement("div");return e.appendChild(r),r.appendChild(i),r.appendChild(s),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(e),this._checkDisabledLayers(),e},_onInputClick:function(){var t,i,e=this._layerControlInputs,n=[],o=[];this._handlingClick=!0;for(var s=e.length-1;s>=0;s--)t=e[s],i=this._getLayer(t.layerId).layer,t.checked?n.push(i):t.checked||o.push(i);for(s=0;s=0;o--)t=e[o],i=this._getLayer(t.layerId).layer,t.disabled=void 0!==i.options.minZoom&&ni.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expand:function(){return this.expand()},_collapse:function(){return this.collapse()}}),ze=Pe.extend({options:{position:"topleft",zoomInText:"+",zoomInTitle:"Zoom in",zoomOutText:"−",zoomOutTitle:"Zoom out"},onAdd:function(t){var i="leaflet-control-zoom",e=ht("div",i+" leaflet-bar"),n=this.options;return this._zoomInButton=this._createButton(n.zoomInText,n.zoomInTitle,i+"-in",e,this._zoomIn),this._zoomOutButton=this._createButton(n.zoomOutText,n.zoomOutTitle,i+"-out",e,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),e},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,i,e,n,o){var s=ht("a",e,n);return s.innerHTML=t,s.href="#",s.title=i,s.setAttribute("role","button"),s.setAttribute("aria-label",i),J(s),V(s,"click",Q),V(s,"click",o,this),V(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,i="leaflet-disabled";mt(this._zoomInButton,i),mt(this._zoomOutButton,i),(this._disabled||t._zoom===t.getMinZoom())&&pt(this._zoomOutButton,i),(this._disabled||t._zoom===t.getMaxZoom())&&pt(this._zoomInButton,i)}});Le.mergeOptions({zoomControl:!0}),Le.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new ze,this.addControl(this.zoomControl))});var Me=Pe.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var i=ht("div","leaflet-control-scale"),e=this.options;return this._addScales(e,"leaflet-control-scale-line",i),t.on(e.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),i},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,i,e){t.metric&&(this._mScale=ht("div",i,e)),t.imperial&&(this._iScale=ht("div",i,e))},_update:function(){var t=this._map,i=t.getSize().y/2,e=t.distance(t.containerPointToLatLng([0,i]),t.containerPointToLatLng([this.options.maxWidth,i]));this._updateScales(e)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var i=this._getRoundNum(t),e=i<1e3?i+" m":i/1e3+" km";this._updateScale(this._mScale,e,i/t)},_updateImperial:function(t){var i,e,n,o=3.2808399*t;o>5280?(i=o/5280,e=this._getRoundNum(i),this._updateScale(this._iScale,e+" mi",e/i)):(n=this._getRoundNum(o),this._updateScale(this._iScale,n+" ft",n/o))},_updateScale:function(t,i,e){t.style.width=Math.round(this.options.maxWidth*e)+"px",t.innerHTML=i},_getRoundNum:function(t){var i=Math.pow(10,(Math.floor(t)+"").length-1),e=t/i;return e=e>=10?10:e>=5?5:e>=3?3:e>=2?2:1,i*e}}),Ce=Pe.extend({options:{position:"bottomright",prefix:'Leaflet'},initialize:function(t){l(this,t),this._attributions={}},onAdd:function(t){t.attributionControl=this,this._container=ht("div","leaflet-control-attribution"),J(this._container);for(var i in t._layers)t._layers[i].getAttribution&&this.addAttribution(t._layers[i].getAttribution());return this._update(),this._container},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t?(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update(),this):this},removeAttribution:function(t){return t?(this._attributions[t]&&(this._attributions[t]--,this._update()),this):this},_update:function(){if(this._map){var t=[];for(var i in this._attributions)this._attributions[i]&&t.push(i);var e=[];this.options.prefix&&e.push(this.options.prefix),t.length&&e.push(t.join(", ")),this._container.innerHTML=e.join(" | ")}}});Le.mergeOptions({attributionControl:!0}),Le.addInitHook(function(){this.options.attributionControl&&(new Ce).addTo(this)});Pe.Layers=Te,Pe.Zoom=ze,Pe.Scale=Me,Pe.Attribution=Ce,be.layers=function(t,i,e){return new Te(t,i,e)},be.zoom=function(t){return new ze(t)},be.scale=function(t){return new Me(t)},be.attribution=function(t){return new Ce(t)};var Ze=v.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});Ze.addTo=function(t,i){return t.addHandler(i,this),this};var Se,Ee={Events:hi},ke=Vi?"touchstart mousedown":"mousedown",Ie={mousedown:"mouseup",touchstart:"touchend",pointerdown:"touchend",MSPointerDown:"touchend"},Ae={mousedown:"mousemove",touchstart:"touchmove",pointerdown:"touchmove",MSPointerDown:"touchmove"},Be=ui.extend({options:{clickTolerance:3},initialize:function(t,i,e,n){l(this,n),this._element=t,this._dragStartTarget=i||t,this._preventOutline=e},enable:function(){this._enabled||(V(this._dragStartTarget,ke,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(Be._dragging===this&&this.finishDrag(),q(this._dragStartTarget,ke,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(!t._simulated&&this._enabled&&(this._moved=!1,!dt(this._element,"leaflet-zoom-anim")&&!(Be._dragging||t.shiftKey||1!==t.which&&1!==t.button&&!t.touches||(Be._dragging=this,this._preventOutline&&zt(this._element),bt(),mi(),this._moving)))){this.fire("down");var i=t.touches?t.touches[0]:t;this._startPoint=new x(i.clientX,i.clientY),V(document,Ae[t.type],this._onMove,this),V(document,Ie[t.type],this._onUp,this)}},_onMove:function(t){if(!t._simulated&&this._enabled)if(t.touches&&t.touches.length>1)this._moved=!0;else{var i=t.touches&&1===t.touches.length?t.touches[0]:t,e=new x(i.clientX,i.clientY).subtract(this._startPoint);(e.x||e.y)&&(Math.abs(e.x)+Math.abs(e.y)1e-7;h++)i=s*Math.sin(a),i=Math.pow((1-i)/(1+i),s/2),a+=u=Math.PI/2-2*Math.atan(r*i)-a;return new M(a*e,t.x*e/n)}},je=(Object.freeze||Object)({LonLat:De,Mercator:Ne,SphericalMercator:di}),We=i({},_i,{code:"EPSG:3395",projection:Ne,transformation:function(){var t=.5/(Math.PI*Ne.R);return S(t,.5,-t,.5)}()}),He=i({},_i,{code:"EPSG:4326",projection:De,transformation:S(1/180,1,-1/180,.5)}),Fe=i({},ci,{projection:De,transformation:S(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,i){var e=i.lng-t.lng,n=i.lat-t.lat;return Math.sqrt(e*e+n*n)},infinite:!0});ci.Earth=_i,ci.EPSG3395=We,ci.EPSG3857=vi,ci.EPSG900913=yi,ci.EPSG4326=He,ci.Simple=Fe;var Ue=ui.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[n(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[n(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var i=t.target;if(i.hasLayer(this)){if(this._map=i,this._zoomAnimated=i._zoomAnimated,this.getEvents){var e=this.getEvents();i.on(e,this),this.once("remove",function(){i.off(e,this)},this)}this.onAdd(i),this.getAttribution&&i.attributionControl&&i.attributionControl.addAttribution(this.getAttribution()),this.fire("add"),i.fire("layeradd",{layer:this})}}});Le.include({addLayer:function(t){if(!t._layerAdd)throw new Error("The provided object is not a Layer.");var i=n(t);return this._layers[i]?this:(this._layers[i]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t),this)},removeLayer:function(t){var i=n(t);return this._layers[i]?(this._loaded&&t.onRemove(this),t.getAttribution&&this.attributionControl&&this.attributionControl.removeAttribution(t.getAttribution()),delete this._layers[i],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null,this):this},hasLayer:function(t){return!!t&&n(t)in this._layers},eachLayer:function(t,i){for(var e in this._layers)t.call(i,this._layers[e]);return this},_addLayers:function(t){for(var i=0,e=(t=t?ei(t)?t:[t]:[]).length;ithis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()i)return r=(n-i)/e,this._map.layerPointToLatLng([s.x-r*(s.x-o.x),s.y-r*(s.y-o.y)])},getBounds:function(){return this._bounds},addLatLng:function(t,i){return i=i||this._defaultShape(),t=C(t),i.push(t),this._bounds.extend(t),this.redraw()},_setLatLngs:function(t){this._bounds=new T,this._latlngs=this._convertLatLngs(t)},_defaultShape:function(){return Dt(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(t){for(var i=[],e=Dt(t),n=0,o=t.length;n=2&&i[0]instanceof M&&i[0].equals(i[e-1])&&i.pop(),i},_setLatLngs:function(t){tn.prototype._setLatLngs.call(this,t),Dt(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Dt(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,i=this.options.weight,e=new x(i,i);if(t=new P(t.min.subtract(e),t.max.add(e)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else for(var n,o=0,s=this._rings.length;ot.y!=n.y>t.y&&t.x<(n.x-e.x)*(t.y-e.y)/(n.y-e.y)+e.x&&(u=!u);return u||tn.prototype._containsPoint.call(this,t,!0)}}),nn=qe.extend({initialize:function(t,i){l(this,i),this._layers={},t&&this.addData(t)},addData:function(t){var i,e,n,o=ei(t)?t:t.features;if(o){for(i=0,e=o.length;i0?o:[i.src]}else{ei(this._url)||(this._url=[this._url]),i.autoplay=!!this.options.autoplay,i.loop=!!this.options.loop;for(var a=0;ao?(i.height=o+"px",pt(t,"leaflet-popup-scrolled")):mt(t,"leaflet-popup-scrolled"),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var i=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),e=this._getAnchor();Lt(this._container,i.add(e))},_adjustPan:function(){if(!(!this.options.autoPan||this._map._panAnim&&this._map._panAnim._inProgress)){var t=this._map,i=parseInt(at(this._container,"marginBottom"),10)||0,e=this._container.offsetHeight+i,n=this._containerWidth,o=new x(this._containerLeft,-e-this._containerBottom);o._add(Pt(this._container));var s=t.layerPointToContainerPoint(o),r=w(this.options.autoPanPadding),a=w(this.options.autoPanPaddingTopLeft||r),h=w(this.options.autoPanPaddingBottomRight||r),u=t.getSize(),l=0,c=0;s.x+n+h.x>u.x&&(l=s.x+n-u.x+h.x),s.x-l-a.x<0&&(l=s.x-a.x),s.y+e+h.y>u.y&&(c=s.y+e-u.y+h.y),s.y-c-a.y<0&&(c=s.y-a.y),(l||c)&&t.fire("autopanstart").panBy([l,c])}},_onCloseButtonClick:function(t){this._close(),Q(t)},_getAnchor:function(){return w(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});Le.mergeOptions({closePopupOnClick:!0}),Le.include({openPopup:function(t,i,e){return t instanceof un||(t=new un(e).setContent(t)),i&&t.setLatLng(i),this.hasLayer(t)?this:(this._popup&&this._popup.options.autoClose&&this.closePopup(),this._popup=t,this.addLayer(t))},closePopup:function(t){return t&&t!==this._popup||(t=this._popup,this._popup=null),t&&this.removeLayer(t),this}}),Ue.include({bindPopup:function(t,i){return t instanceof un?(l(t,i),this._popup=t,t._source=this):(this._popup&&!i||(this._popup=new un(i,this)),this._popup.setContent(t)),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t,i){if(t instanceof Ue||(i=t,t=this),t instanceof qe)for(var e in this._layers){t=this._layers[e];break}return i||(i=t.getCenter?t.getCenter():t.getLatLng()),this._popup&&this._map&&(this._popup._source=t,this._popup.update(),this._map.openPopup(this._popup,i)),this},closePopup:function(){return this._popup&&this._popup._close(),this},togglePopup:function(t){return this._popup&&(this._popup._map?this.closePopup():this.openPopup(t)),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){var i=t.layer||t.target;this._popup&&this._map&&(Q(t),i instanceof Je?this.openPopup(t.layer||t.target,t.latlng):this._map.hasLayer(this._popup)&&this._popup._source===i?this.closePopup():this.openPopup(i,t.latlng))},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var ln=hn.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,interactive:!1,opacity:.9},onAdd:function(t){hn.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&this._source.fire("tooltipopen",{tooltip:this},!0)},onRemove:function(t){hn.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&this._source.fire("tooltipclose",{tooltip:this},!0)},getEvents:function(){var t=hn.prototype.getEvents.call(this);return Vi&&!this.options.permanent&&(t.preclick=this._close),t},_close:function(){this._map&&this._map.closeTooltip(this)},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=ht("div",t)},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var i=this._map,e=this._container,n=i.latLngToContainerPoint(i.getCenter()),o=i.layerPointToContainerPoint(t),s=this.options.direction,r=e.offsetWidth,a=e.offsetHeight,h=w(this.options.offset),u=this._getAnchor();"top"===s?t=t.add(w(-r/2+h.x,-a+h.y+u.y,!0)):"bottom"===s?t=t.subtract(w(r/2-h.x,-h.y,!0)):"center"===s?t=t.subtract(w(r/2+h.x,a/2-u.y+h.y,!0)):"right"===s||"auto"===s&&o.xthis.options.maxZoom||en&&this._retainParent(o,s,r,n))},_retainChildren:function(t,i,e,n){for(var o=2*t;o<2*t+2;o++)for(var s=2*i;s<2*i+2;s++){var r=new x(o,s);r.z=e+1;var a=this._tileCoordsToKey(r),h=this._tiles[a];h&&h.active?h.retain=!0:(h&&h.loaded&&(h.retain=!0),e+1this.options.maxZoom||void 0!==this.options.minZoom&&o1)this._setView(t,e);else{for(var c=o.min.y;c<=o.max.y;c++)for(var _=o.min.x;_<=o.max.x;_++){var d=new x(_,c);if(d.z=this._tileZoom,this._isValidTile(d)){var p=this._tiles[this._tileCoordsToKey(d)];p?p.current=!0:r.push(d)}}if(r.sort(function(t,i){return t.distanceTo(s)-i.distanceTo(s)}),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var m=document.createDocumentFragment();for(_=0;_e.max.x)||!i.wrapLat&&(t.ye.max.y))return!1}if(!this.options.bounds)return!0;var n=this._tileCoordsToBounds(t);return z(this.options.bounds).overlaps(n)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var i=this._map,e=this.getTileSize(),n=t.scaleBy(e),o=n.add(e);return[i.unproject(n,t.z),i.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var i=this._tileCoordsToNwSe(t),e=new T(i[0],i[1]);return this.options.noWrap||(e=this._map.wrapLatLngBounds(e)),e},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var i=t.split(":"),e=new x(+i[0],+i[1]);return e.z=+i[2],e},_removeTile:function(t){var i=this._tiles[t];i&&(Ci||i.el.setAttribute("src",ni),ut(i.el),delete this._tiles[t],this.fire("tileunload",{tile:i.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){pt(t,"leaflet-tile");var i=this.getTileSize();t.style.width=i.x+"px",t.style.height=i.y+"px",t.onselectstart=r,t.onmousemove=r,Li&&this.options.opacity<1&&vt(t,this.options.opacity),Ti&&!zi&&(t.style.WebkitBackfaceVisibility="hidden")},_addTile:function(t,i){var n=this._getTilePos(t),o=this._tileCoordsToKey(t),s=this.createTile(this._wrapCoords(t),e(this._tileReady,this,t));this._initTile(s),this.createTile.length<2&&f(e(this._tileReady,this,t,null,s)),Lt(s,n),this._tiles[o]={el:s,coords:t,current:!0},i.appendChild(s),this.fire("tileloadstart",{tile:s,coords:t})},_tileReady:function(t,i,n){if(this._map){i&&this.fire("tileerror",{error:i,tile:n,coords:t});var o=this._tileCoordsToKey(t);(n=this._tiles[o])&&(n.loaded=+new Date,this._map._fadeAnimated?(vt(n.el,0),g(this._fadeFrame),this._fadeFrame=f(this._updateOpacity,this)):(n.active=!0,this._pruneTiles()),i||(pt(n.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:n.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Li||!this._map._fadeAnimated?f(this._pruneTiles,this):setTimeout(e(this._pruneTiles,this),250)))}},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var i=new x(this._wrapX?s(t.x,this._wrapX):t.x,this._wrapY?s(t.y,this._wrapY):t.y);return i.z=t.z,i},_pxBoundsToTileRange:function(t){var i=this.getTileSize();return new P(t.min.unscaleBy(i).floor(),t.max.unscaleBy(i).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}}),dn=_n.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1},initialize:function(t,i){this._url=t,(i=l(this,i)).detectRetina&&Ki&&i.maxZoom>0&&(i.tileSize=Math.floor(i.tileSize/2),i.zoomReverse?(i.zoomOffset--,i.minZoom++):(i.zoomOffset++,i.maxZoom--),i.minZoom=Math.max(0,i.minZoom)),"string"==typeof i.subdomains&&(i.subdomains=i.subdomains.split("")),Ti||this.on("tileunload",this._onTileRemove)},setUrl:function(t,i){return this._url=t,i||this.redraw(),this},createTile:function(t,i){var n=document.createElement("img");return V(n,"load",e(this._tileOnLoad,this,i,n)),V(n,"error",e(this._tileOnError,this,i,n)),this.options.crossOrigin&&(n.crossOrigin=""),n.alt="",n.setAttribute("role","presentation"),n.src=this.getTileUrl(t),n},getTileUrl:function(t){var e={r:Ki?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:t.z?t.z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var n=this._globalTileRange.max.y-t.y;this.options.tms&&(e.y=n),e["-y"]=n}return _(this._url,i(e,this.options))},_tileOnLoad:function(t,i){Li?setTimeout(e(t,this,null,i),0):t(null,i)},_tileOnError:function(t,i,e){var n=this.options.errorTileUrl;n&&i.getAttribute("src")!==n&&(i.src=n),t(e,i)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,i=this.options.maxZoom,e=this.options.zoomReverse,n=this.options.zoomOffset;return e&&(t=i-t),t+n},_getSubdomain:function(t){var i=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[i]},_abortLoading:function(){var t,i;for(t in this._tiles)this._tiles[t].coords.z!==this._tileZoom&&((i=this._tiles[t].el).onload=r,i.onerror=r,i.complete||(i.src=ni,ut(i),delete this._tiles[t]))}}),pn=dn.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,e){this._url=t;var n=i({},this.defaultWmsParams);for(var o in e)o in this.options||(n[o]=e[o]);var s=(e=l(this,e)).detectRetina&&Ki?2:1,r=this.getTileSize();n.width=r.x*s,n.height=r.y*s,this.wmsParams=n},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var i=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[i]=this._crs.code,dn.prototype.onAdd.call(this,t)},getTileUrl:function(t){var i=this._tileCoordsToNwSe(t),e=this._crs,n=b(e.project(i[0]),e.project(i[1])),o=n.min,s=n.max,r=(this._wmsVersion>=1.3&&this._crs===He?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=L.TileLayer.prototype.getTileUrl.call(this,t);return a+c(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,e){return i(this.wmsParams,t),e||this.redraw(),this}});dn.WMS=pn,Yt.wms=function(t,i){return new pn(t,i)};var mn=Ue.extend({options:{padding:.1,tolerance:0},initialize:function(t){l(this,t),n(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),this._zoomAnimated&&pt(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,i){var e=this._map.getZoomScale(i,this._zoom),n=Pt(this._container),o=this._map.getSize().multiplyBy(.5+this.options.padding),s=this._map.project(this._center,i),r=this._map.project(t,i).subtract(s),a=o.multiplyBy(-e).add(n).add(o).subtract(r);Ni?wt(this._container,a,e):Lt(this._container,a)},_reset:function(){this._update(),this._updateTransform(this._center,this._zoom);for(var t in this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,i=this._map.getSize(),e=this._map.containerPointToLayerPoint(i.multiplyBy(-t)).round();this._bounds=new P(e,e.add(i.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),fn=mn.extend({getEvents:function(){var t=mn.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){mn.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");V(t,"mousemove",o(this._onMouseMove,32,this),this),V(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),V(t,"mouseout",this._handleMouseOut,this),this._ctx=t.getContext("2d")},_destroyContainer:function(){delete this._ctx,ut(this._container),q(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){this._redrawBounds=null;for(var t in this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){this._drawnLayers={},mn.prototype._update.call(this);var t=this._bounds,i=this._container,e=t.getSize(),n=Ki?2:1;Lt(i,t.min),i.width=n*e.x,i.height=n*e.y,i.style.width=e.x+"px",i.style.height=e.y+"px",Ki&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){mn.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[n(t)]=t;var i=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=i),this._drawLast=i,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var i=t._order,e=i.next,n=i.prev;e?e.prev=n:this._drawLast=n,n?n.next=e:this._drawFirst=e,delete t._order,delete this._layers[L.stamp(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if(t.options.dashArray){var i,e=t.options.dashArray.split(","),n=[];for(i=0;i')}}catch(t){return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}}(),vn={_initContainer:function(){this._container=ht("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(mn.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var i=t._container=gn("shape");pt(i,"leaflet-vml-shape "+(this.options.className||"")),i.coordsize="1 1",t._path=gn("path"),i.appendChild(t._path),this._updateStyle(t),this._layers[n(t)]=t},_addPath:function(t){var i=t._container;this._container.appendChild(i),t.options.interactive&&t.addInteractiveTarget(i)},_removePath:function(t){var i=t._container;ut(i),t.removeInteractiveTarget(i),delete this._layers[n(t)]},_updateStyle:function(t){var i=t._stroke,e=t._fill,n=t.options,o=t._container;o.stroked=!!n.stroke,o.filled=!!n.fill,n.stroke?(i||(i=t._stroke=gn("stroke")),o.appendChild(i),i.weight=n.weight+"px",i.color=n.color,i.opacity=n.opacity,n.dashArray?i.dashStyle=ei(n.dashArray)?n.dashArray.join(" "):n.dashArray.replace(/( *, *)/g," "):i.dashStyle="",i.endcap=n.lineCap.replace("butt","flat"),i.joinstyle=n.lineJoin):i&&(o.removeChild(i),t._stroke=null),n.fill?(e||(e=t._fill=gn("fill")),o.appendChild(e),e.color=n.fillColor||n.color,e.opacity=n.fillOpacity):e&&(o.removeChild(e),t._fill=null)},_updateCircle:function(t){var i=t._point.round(),e=Math.round(t._radius),n=Math.round(t._radiusY||e);this._setPath(t,t._empty()?"M0 0":"AL "+i.x+","+i.y+" "+e+","+n+" 0,23592600")},_setPath:function(t,i){t._path.v=i},_bringToFront:function(t){ct(t._container)},_bringToBack:function(t){_t(t._container)}},yn=Ji?gn:E,xn=mn.extend({getEvents:function(){var t=mn.prototype.getEvents.call(this);return t.zoomstart=this._onZoomStart,t},_initContainer:function(){this._container=yn("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=yn("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){ut(this._container),q(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_onZoomStart:function(){this._update()},_update:function(){if(!this._map._animatingZoom||!this._bounds){mn.prototype._update.call(this);var t=this._bounds,i=t.getSize(),e=this._container;this._svgSize&&this._svgSize.equals(i)||(this._svgSize=i,e.setAttribute("width",i.x),e.setAttribute("height",i.y)),Lt(e,t.min),e.setAttribute("viewBox",[t.min.x,t.min.y,i.x,i.y].join(" ")),this.fire("update")}},_initPath:function(t){var i=t._path=yn("path");t.options.className&&pt(i,t.options.className),t.options.interactive&&pt(i,"leaflet-interactive"),this._updateStyle(t),this._layers[n(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){ut(t._path),t.removeInteractiveTarget(t._path),delete this._layers[n(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var i=t._path,e=t.options;i&&(e.stroke?(i.setAttribute("stroke",e.color),i.setAttribute("stroke-opacity",e.opacity),i.setAttribute("stroke-width",e.weight),i.setAttribute("stroke-linecap",e.lineCap),i.setAttribute("stroke-linejoin",e.lineJoin),e.dashArray?i.setAttribute("stroke-dasharray",e.dashArray):i.removeAttribute("stroke-dasharray"),e.dashOffset?i.setAttribute("stroke-dashoffset",e.dashOffset):i.removeAttribute("stroke-dashoffset")):i.setAttribute("stroke","none"),e.fill?(i.setAttribute("fill",e.fillColor||e.color),i.setAttribute("fill-opacity",e.fillOpacity),i.setAttribute("fill-rule",e.fillRule||"evenodd")):i.setAttribute("fill","none"))},_updatePoly:function(t,i){this._setPath(t,k(t._parts,i))},_updateCircle:function(t){var i=t._point,e=Math.max(Math.round(t._radius),1),n="a"+e+","+(Math.max(Math.round(t._radiusY),1)||e)+" 0 1,0 ",o=t._empty()?"M0 0":"M"+(i.x-e)+","+i.y+n+2*e+",0 "+n+2*-e+",0 ";this._setPath(t,o)},_setPath:function(t,i){t._path.setAttribute("d",i)},_bringToFront:function(t){ct(t._path)},_bringToBack:function(t){_t(t._path)}});Ji&&xn.include(vn),Le.include({getRenderer:function(t){var i=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return i||(i=this._renderer=this.options.preferCanvas&&Xt()||Jt()),this.hasLayer(i)||this.addLayer(i),i},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var i=this._paneRenderers[t];return void 0===i&&(i=xn&&Jt({pane:t})||fn&&Xt({pane:t}),this._paneRenderers[t]=i),i}});var wn=en.extend({initialize:function(t,i){en.prototype.initialize.call(this,this._boundsToLatLngs(t),i)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return t=z(t),[t.getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});xn.create=yn,xn.pointsToPath=k,nn.geometryToLayer=Wt,nn.coordsToLatLng=Ht,nn.coordsToLatLngs=Ft,nn.latLngToCoords=Ut,nn.latLngsToCoords=Vt,nn.getFeature=qt,nn.asFeature=Gt,Le.mergeOptions({boxZoom:!0});var Ln=Ze.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){V(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){q(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){ut(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),mi(),bt(),this._startPoint=this._map.mouseEventToContainerPoint(t),V(document,{contextmenu:Q,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=ht("div","leaflet-zoom-box",this._container),pt(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var i=new P(this._point,this._startPoint),e=i.getSize();Lt(this._box,i.min),this._box.style.width=e.x+"px",this._box.style.height=e.y+"px"},_finish:function(){this._moved&&(ut(this._box),mt(this._container,"leaflet-crosshair")),fi(),Tt(),q(document,{contextmenu:Q,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(e(this._resetState,this),0);var i=new T(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(i).fire("boxzoomend",{boxZoomBounds:i})}},_onKeyDown:function(t){27===t.keyCode&&this._finish()}});Le.addInitHook("addHandler","boxZoom",Ln),Le.mergeOptions({doubleClickZoom:!0});var Pn=Ze.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var i=this._map,e=i.getZoom(),n=i.options.zoomDelta,o=t.originalEvent.shiftKey?e-n:e+n;"center"===i.options.doubleClickZoom?i.setZoom(o):i.setZoomAround(t.containerPoint,o)}});Le.addInitHook("addHandler","doubleClickZoom",Pn),Le.mergeOptions({dragging:!0,inertia:!zi,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var bn=Ze.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new Be(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}pt(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){mt(this._map._container,"leaflet-grab"),mt(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var i=z(this._map.options.maxBounds);this._offsetLimit=b(this._map.latLngToContainerPoint(i.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(i.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var i=this._lastTime=+new Date,e=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(e),this._times.push(i),this._prunePositions(i)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),i=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=i.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,i){return t-(t-i)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),i=this._offsetLimit;t.xi.max.x&&(t.x=this._viscousLimit(t.x,i.max.x)),t.y>i.max.y&&(t.y=this._viscousLimit(t.y,i.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,i=Math.round(t/2),e=this._initialWorldOffset,n=this._draggable._newPos.x,o=(n-i+e)%t+i-e,s=(n+i+e)%t-i-e,r=Math.abs(o+e)0?s:-s))-i;this._delta=0,this._startTime=null,r&&("center"===t.options.scrollWheelZoom?t.setZoom(i+r):t.setZoomAround(this._lastMousePos,i+r))}});Le.addInitHook("addHandler","scrollWheelZoom",zn),Le.mergeOptions({tap:!0,tapTolerance:15});var Mn=Ze.extend({addHooks:function(){V(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){q(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(t.touches){if($(t),this._fireClick=!0,t.touches.length>1)return this._fireClick=!1,void clearTimeout(this._holdTimeout);var i=t.touches[0],n=i.target;this._startPos=this._newPos=new x(i.clientX,i.clientY),n.tagName&&"a"===n.tagName.toLowerCase()&&pt(n,"leaflet-active"),this._holdTimeout=setTimeout(e(function(){this._isTapValid()&&(this._fireClick=!1,this._onUp(),this._simulateEvent("contextmenu",i))},this),1e3),this._simulateEvent("mousedown",i),V(document,{touchmove:this._onMove,touchend:this._onUp},this)}},_onUp:function(t){if(clearTimeout(this._holdTimeout),q(document,{touchmove:this._onMove,touchend:this._onUp},this),this._fireClick&&t&&t.changedTouches){var i=t.changedTouches[0],e=i.target;e&&e.tagName&&"a"===e.tagName.toLowerCase()&&mt(e,"leaflet-active"),this._simulateEvent("mouseup",i),this._isTapValid()&&this._simulateEvent("click",i)}},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_onMove:function(t){var i=t.touches[0];this._newPos=new x(i.clientX,i.clientY),this._simulateEvent("mousemove",i)},_simulateEvent:function(t,i){var e=document.createEvent("MouseEvents");e._simulated=!0,i.target._simulatedClick=!0,e.initMouseEvent(t,!0,!0,window,1,i.screenX,i.screenY,i.clientX,i.clientY,!1,!1,!1,!1,0,null),i.target.dispatchEvent(e)}});Vi&&!Ui&&Le.addInitHook("addHandler","tap",Mn),Le.mergeOptions({touchZoom:Vi&&!zi,bounceAtZoomLimits:!0});var Cn=Ze.extend({addHooks:function(){pt(this._map._container,"leaflet-touch-zoom"),V(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){mt(this._map._container,"leaflet-touch-zoom"),q(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var i=this._map;if(t.touches&&2===t.touches.length&&!i._animatingZoom&&!this._zooming){var e=i.mouseEventToContainerPoint(t.touches[0]),n=i.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=i.getSize()._divideBy(2),this._startLatLng=i.containerPointToLatLng(this._centerPoint),"center"!==i.options.touchZoom&&(this._pinchStartLatLng=i.containerPointToLatLng(e.add(n)._divideBy(2))),this._startDist=e.distanceTo(n),this._startZoom=i.getZoom(),this._moved=!1,this._zooming=!0,i._stop(),V(document,"touchmove",this._onTouchMove,this),V(document,"touchend",this._onTouchEnd,this),$(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var i=this._map,n=i.mouseEventToContainerPoint(t.touches[0]),o=i.mouseEventToContainerPoint(t.touches[1]),s=n.distanceTo(o)/this._startDist;if(this._zoom=i.getScaleZoom(s,this._startZoom),!i.options.bounceAtZoomLimits&&(this._zoomi.getMaxZoom()&&s>1)&&(this._zoom=i._limitZoom(this._zoom)),"center"===i.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{var r=n._add(o)._divideBy(2)._subtract(this._centerPoint);if(1===s&&0===r.x&&0===r.y)return;this._center=i.unproject(i.project(this._pinchStartLatLng,this._zoom).subtract(r),this._zoom)}this._moved||(i._moveStart(!0,!1),this._moved=!0),g(this._animRequest);var a=e(i._move,i,this._center,this._zoom,{pinch:!0,round:!1});this._animRequest=f(a,this,!0),$(t)}},_onTouchEnd:function(){this._moved&&this._zooming?(this._zooming=!1,g(this._animRequest),q(document,"touchmove",this._onTouchMove),q(document,"touchend",this._onTouchEnd),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))):this._zooming=!1}});Le.addInitHook("addHandler","touchZoom",Cn),Le.BoxZoom=Ln,Le.DoubleClickZoom=Pn,Le.Drag=bn,Le.Keyboard=Tn,Le.ScrollWheelZoom=zn,Le.Tap=Mn,Le.TouchZoom=Cn;var Zn=window.L;window.L=t,Object.freeze=$t,t.version="1.3.0",t.noConflict=function(){return window.L=Zn,this},t.Control=Pe,t.control=be,t.Browser=$i,t.Evented=ui,t.Mixin=Ee,t.Util=ai,t.Class=v,t.Handler=Ze,t.extend=i,t.bind=e,t.stamp=n,t.setOptions=l,t.DomEvent=de,t.DomUtil=xe,t.PosAnimation=we,t.Draggable=Be,t.LineUtil=Oe,t.PolyUtil=Re,t.Point=x,t.point=w,t.Bounds=P,t.bounds=b,t.Transformation=Z,t.transformation=S,t.Projection=je,t.LatLng=M,t.latLng=C,t.LatLngBounds=T,t.latLngBounds=z,t.CRS=ci,t.GeoJSON=nn,t.geoJSON=Kt,t.geoJson=sn,t.Layer=Ue,t.LayerGroup=Ve,t.layerGroup=function(t,i){return new Ve(t,i)},t.FeatureGroup=qe,t.featureGroup=function(t){return new qe(t)},t.ImageOverlay=rn,t.imageOverlay=function(t,i,e){return new rn(t,i,e)},t.VideoOverlay=an,t.videoOverlay=function(t,i,e){return new an(t,i,e)},t.DivOverlay=hn,t.Popup=un,t.popup=function(t,i){return new un(t,i)},t.Tooltip=ln,t.tooltip=function(t,i){return new ln(t,i)},t.Icon=Ge,t.icon=function(t){return new Ge(t)},t.DivIcon=cn,t.divIcon=function(t){return new cn(t)},t.Marker=Xe,t.marker=function(t,i){return new Xe(t,i)},t.TileLayer=dn,t.tileLayer=Yt,t.GridLayer=_n,t.gridLayer=function(t){return new _n(t)},t.SVG=xn,t.svg=Jt,t.Renderer=mn,t.Canvas=fn,t.canvas=Xt,t.Path=Je,t.CircleMarker=$e,t.circleMarker=function(t,i){return new $e(t,i)},t.Circle=Qe,t.circle=function(t,i,e){return new Qe(t,i,e)},t.Polyline=tn,t.polyline=function(t,i){return new tn(t,i)},t.Polygon=en,t.polygon=function(t,i){return new en(t,i)},t.Rectangle=wn,t.rectangle=function(t,i){return new wn(t,i)},t.Map=Le,t.map=function(t,i){return new Le(t,i)}}); \ No newline at end of file diff --git a/module/leaflet-1.3.0/dist/leaflet.markercluster.js b/module/leaflet-1.3.0/dist/leaflet.markercluster.js new file mode 100644 index 0000000..ed22dc0 --- /dev/null +++ b/module/leaflet-1.3.0/dist/leaflet.markercluster.js @@ -0,0 +1,3 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e.Leaflet=e.Leaflet||{},e.Leaflet.markercluster=e.Leaflet.markercluster||{}))}(this,function(e){"use strict";var t=L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,clusterPane:L.Marker.prototype.options.pane,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animate:!0,animateAddingMarkers:!1,spiderfyDistanceMultiplier:1,spiderLegPolylineOptions:{weight:1.5,color:"#222",opacity:.5},chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(e){L.Util.setOptions(this,e),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction),this._featureGroup=L.featureGroup(),this._featureGroup.addEventParent(this),this._nonPointGroup=L.featureGroup(),this._nonPointGroup.addEventParent(this),this._inZoomAnimation=0,this._needsClustering=[],this._needsRemoving=[],this._currentShownBounds=null,this._queue=[],this._childMarkerEventHandlers={dragstart:this._childMarkerDragStart,move:this._childMarkerMoved,dragend:this._childMarkerDragEnd};var t=L.DomUtil.TRANSITION&&this.options.animate;L.extend(this,t?this._withAnimation:this._noAnimation),this._markerCluster=t?L.MarkerCluster:L.MarkerClusterNonAnimated},addLayer:function(e){if(e instanceof L.LayerGroup)return this.addLayers([e]);if(!e.getLatLng)return this._nonPointGroup.addLayer(e),this.fire("layeradd",{layer:e}),this;if(!this._map)return this._needsClustering.push(e),this.fire("layeradd",{layer:e}),this;if(this.hasLayer(e))return this;this._unspiderfy&&this._unspiderfy(),this._addLayer(e,this._maxZoom),this.fire("layeradd",{layer:e}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons();var t=e,i=this._zoom;if(e.__parent)for(;t.__parent._zoom>=i;)t=t.__parent;return this._currentShownBounds.contains(t.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(e,t):this._animationAddLayerNonAnimated(e,t)),this},removeLayer:function(e){return e instanceof L.LayerGroup?this.removeLayers([e]):e.getLatLng?this._map?e.__parent?(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(e)),this._removeLayer(e,!0),this.fire("layerremove",{layer:e}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),e.off(this._childMarkerEventHandlers,this),this._featureGroup.hasLayer(e)&&(this._featureGroup.removeLayer(e),e.clusterShow&&e.clusterShow()),this):this:(!this._arraySplice(this._needsClustering,e)&&this.hasLayer(e)&&this._needsRemoving.push({layer:e,latlng:e._latlng}),this.fire("layerremove",{layer:e}),this):(this._nonPointGroup.removeLayer(e),this.fire("layerremove",{layer:e}),this)},addLayers:function(e,t){if(!L.Util.isArray(e))return this.addLayer(e);var i,n=this._featureGroup,r=this._nonPointGroup,s=this.options.chunkedLoading,o=this.options.chunkInterval,a=this.options.chunkProgress,h=e.length,l=0,u=!0;if(this._map){var _=(new Date).getTime(),d=L.bind(function(){for(var c=(new Date).getTime();h>l;l++){if(s&&0===l%200){var p=(new Date).getTime()-c;if(p>o)break}if(i=e[l],i instanceof L.LayerGroup)u&&(e=e.slice(),u=!1),this._extractNonGroupLayers(i,e),h=e.length;else if(i.getLatLng){if(!this.hasLayer(i)&&(this._addLayer(i,this._maxZoom),t||this.fire("layeradd",{layer:i}),i.__parent&&2===i.__parent.getChildCount())){var f=i.__parent.getAllChildMarkers(),m=f[0]===i?f[1]:f[0];n.removeLayer(m)}}else r.addLayer(i),t||this.fire("layeradd",{layer:i})}a&&a(l,h,(new Date).getTime()-_),l===h?(this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)):setTimeout(d,this.options.chunkDelay)},this);d()}else for(var c=this._needsClustering;h>l;l++)i=e[l],i instanceof L.LayerGroup?(u&&(e=e.slice(),u=!1),this._extractNonGroupLayers(i,e),h=e.length):i.getLatLng?this.hasLayer(i)||c.push(i):r.addLayer(i);return this},removeLayers:function(e){var t,i,n=e.length,r=this._featureGroup,s=this._nonPointGroup,o=!0;if(!this._map){for(t=0;n>t;t++)i=e[t],i instanceof L.LayerGroup?(o&&(e=e.slice(),o=!1),this._extractNonGroupLayers(i,e),n=e.length):(this._arraySplice(this._needsClustering,i),s.removeLayer(i),this.hasLayer(i)&&this._needsRemoving.push({layer:i,latlng:i._latlng}),this.fire("layerremove",{layer:i}));return this}if(this._unspiderfy){this._unspiderfy();var a=e.slice(),h=n;for(t=0;h>t;t++)i=a[t],i instanceof L.LayerGroup?(this._extractNonGroupLayers(i,a),h=a.length):this._unspiderfyLayer(i)}for(t=0;n>t;t++)i=e[t],i instanceof L.LayerGroup?(o&&(e=e.slice(),o=!1),this._extractNonGroupLayers(i,e),n=e.length):i.__parent?(this._removeLayer(i,!0,!0),this.fire("layerremove",{layer:i}),r.hasLayer(i)&&(r.removeLayer(i),i.clusterShow&&i.clusterShow())):(s.removeLayer(i),this.fire("layerremove",{layer:i}));return this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),this},clearLayers:function(){return this._map||(this._needsClustering=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(e){e.off(this._childMarkerEventHandlers,this),delete e.__parent},this),this._map&&this._generateInitialClusters(),this},getBounds:function(){var e=new L.LatLngBounds;this._topClusterLevel&&e.extend(this._topClusterLevel._bounds);for(var t=this._needsClustering.length-1;t>=0;t--)e.extend(this._needsClustering[t].getLatLng());return e.extend(this._nonPointGroup.getBounds()),e},eachLayer:function(e,t){var i,n,r,s=this._needsClustering.slice(),o=this._needsRemoving;for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(s),n=s.length-1;n>=0;n--){for(i=!0,r=o.length-1;r>=0;r--)if(o[r].layer===s[n]){i=!1;break}i&&e.call(t,s[n])}this._nonPointGroup.eachLayer(e,t)},getLayers:function(){var e=[];return this.eachLayer(function(t){e.push(t)}),e},getLayer:function(e){var t=null;return e=parseInt(e,10),this.eachLayer(function(i){L.stamp(i)===e&&(t=i)}),t},hasLayer:function(e){if(!e)return!1;var t,i=this._needsClustering;for(t=i.length-1;t>=0;t--)if(i[t]===e)return!0;for(i=this._needsRemoving,t=i.length-1;t>=0;t--)if(i[t].layer===e)return!1;return!(!e.__parent||e.__parent._group!==this)||this._nonPointGroup.hasLayer(e)},zoomToShowLayer:function(e,t){"function"!=typeof t&&(t=function(){});var i=function(){!e._icon&&!e.__parent._icon||this._inZoomAnimation||(this._map.off("moveend",i,this),this.off("animationend",i,this),e._icon?t():e.__parent._icon&&(this.once("spiderfied",t,this),e.__parent.spiderfy()))};e._icon&&this._map.getBounds().contains(e.getLatLng())?t():e.__parent._zoomt;t++)n=this._needsRemoving[t],n.newlatlng=n.layer._latlng,n.layer._latlng=n.latlng;for(t=0,i=this._needsRemoving.length;i>t;t++)n=this._needsRemoving[t],this._removeLayer(n.layer,!0),n.layer._latlng=n.newlatlng;this._needsRemoving=[],this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds(),this._map.on("zoomend",this._zoomEnd,this),this._map.on("moveend",this._moveEnd,this),this._spiderfierOnAdd&&this._spiderfierOnAdd(),this._bindEvents(),i=this._needsClustering,this._needsClustering=[],this.addLayers(i,!0)},onRemove:function(e){e.off("zoomend",this._zoomEnd,this),e.off("moveend",this._moveEnd,this),this._unbindEvents(),this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""),this._spiderfierOnRemove&&this._spiderfierOnRemove(),delete this._maxLat,this._hideCoverage(),this._featureGroup.remove(),this._nonPointGroup.remove(),this._featureGroup.clearLayers(),this._map=null},getVisibleParent:function(e){for(var t=e;t&&!t._icon;)t=t.__parent;return t||null},_arraySplice:function(e,t){for(var i=e.length-1;i>=0;i--)if(e[i]===t)return e.splice(i,1),!0},_removeFromGridUnclustered:function(e,t){for(var i=this._map,n=this._gridUnclustered,r=Math.floor(this._map.getMinZoom());t>=r&&n[t].removeObject(e,i.project(e.getLatLng(),t));t--);},_childMarkerDragStart:function(e){e.target.__dragStart=e.target._latlng},_childMarkerMoved:function(e){if(!this._ignoreMove&&!e.target.__dragStart){var t=e.target._popup&&e.target._popup.isOpen();this._moveChild(e.target,e.oldLatLng,e.latlng),t&&e.target.openPopup()}},_moveChild:function(e,t,i){e._latlng=t,this.removeLayer(e),e._latlng=i,this.addLayer(e)},_childMarkerDragEnd:function(e){e.target.__dragStart&&this._moveChild(e.target,e.target.__dragStart,e.target._latlng),delete e.target.__dragStart},_removeLayer:function(e,t,i){var n=this._gridClusters,r=this._gridUnclustered,s=this._featureGroup,o=this._map,a=Math.floor(this._map.getMinZoom());t&&this._removeFromGridUnclustered(e,this._maxZoom);var h,l=e.__parent,u=l._markers;for(this._arraySplice(u,e);l&&(l._childCount--,l._boundsNeedUpdate=!0,!(l._zoomt?"small":100>t?"medium":"large",new L.DivIcon({html:"
"+t+"
",className:"marker-cluster"+i,iconSize:new L.Point(40,40)})},_bindEvents:function(){var e=this._map,t=this.options.spiderfyOnMaxZoom,i=this.options.showCoverageOnHover,n=this.options.zoomToBoundsOnClick;(t||n)&&this.on("clusterclick",this._zoomOrSpiderfy,this),i&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),e.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(e){for(var t=e.layer,i=t;1===i._childClusters.length;)i=i._childClusters[0];i._zoom===this._maxZoom&&i._childCount===t._childCount&&this.options.spiderfyOnMaxZoom?t.spiderfy():this.options.zoomToBoundsOnClick&&t.zoomToBounds(),e.originalEvent&&13===e.originalEvent.keyCode&&this._map._container.focus()},_showCoverage:function(e){var t=this._map;this._inZoomAnimation||(this._shownPolygon&&t.removeLayer(this._shownPolygon),e.layer.getChildCount()>2&&e.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(e.layer.getConvexHull(),this.options.polygonOptions),t.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var e=this.options.spiderfyOnMaxZoom,t=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,n=this._map;(e||i)&&this.off("clusterclick",this._zoomOrSpiderfy,this),t&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),n.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var e=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,e),this._topClusterLevel._recursivelyAddChildrenToMap(null,Math.round(this._map._zoom),e),this._currentShownBounds=e}},_generateInitialClusters:function(){var e=Math.ceil(this._map.getMaxZoom()),t=Math.floor(this._map.getMinZoom()),i=this.options.maxClusterRadius,n=i;"function"!=typeof i&&(n=function(){return i}),null!==this.options.disableClusteringAtZoom&&(e=this.options.disableClusteringAtZoom-1),this._maxZoom=e,this._gridClusters={},this._gridUnclustered={};for(var r=e;r>=t;r--)this._gridClusters[r]=new L.DistanceGrid(n(r)),this._gridUnclustered[r]=new L.DistanceGrid(n(r));this._topClusterLevel=new this._markerCluster(this,t-1)},_addLayer:function(e,t){var i,n,r=this._gridClusters,s=this._gridUnclustered,o=Math.floor(this._map.getMinZoom());for(this.options.singleMarkerMode&&this._overrideMarkerIcon(e),e.on(this._childMarkerEventHandlers,this);t>=o;t--){i=this._map.project(e.getLatLng(),t);var a=r[t].getNearObject(i);if(a)return a._addChild(e),e.__parent=a,void 0;if(a=s[t].getNearObject(i)){var h=a.__parent;h&&this._removeLayer(a,!1);var l=new this._markerCluster(this,t,a,e);r[t].addObject(l,this._map.project(l._cLatLng,t)),a.__parent=l,e.__parent=l;var u=l;for(n=t-1;n>h._zoom;n--)u=new this._markerCluster(this,n,u),r[n].addObject(u,this._map.project(a.getLatLng(),n));return h._addChild(u),this._removeFromGridUnclustered(a,t),void 0}s[t].addObject(e,i)}this._topClusterLevel._addChild(e),e.__parent=this._topClusterLevel},_refreshClustersIcons:function(){this._featureGroup.eachLayer(function(e){e instanceof L.MarkerCluster&&e._iconNeedsUpdate&&e._updateIcon()})},_enqueue:function(e){this._queue.push(e),this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var e=0;ee?(this._animationStart(),this._animationZoomOut(this._zoom,e)):this._moveEnd()},_getExpandedVisibleBounds:function(){return this.options.removeOutsideVisibleBounds?L.Browser.mobile?this._checkBoundsMaxLat(this._map.getBounds()):this._checkBoundsMaxLat(this._map.getBounds().pad(1)):this._mapBoundsInfinite},_checkBoundsMaxLat:function(e){var t=this._maxLat;return void 0!==t&&(e.getNorth()>=t&&(e._northEast.lat=1/0),e.getSouth()<=-t&&(e._southWest.lat=-1/0)),e},_animationAddLayerNonAnimated:function(e,t){if(t===e)this._featureGroup.addLayer(e);else if(2===t._childCount){t._addToMap();var i=t.getAllChildMarkers();this._featureGroup.removeLayer(i[0]),this._featureGroup.removeLayer(i[1])}else t._updateIcon()},_extractNonGroupLayers:function(e,t){var i,n=e.getLayers(),r=0;for(t=t||[];r=0;i--)o=h[i],n.contains(o._latlng)||r.removeLayer(o)}),this._forceLayout(),this._topClusterLevel._recursivelyBecomeVisible(n,t),r.eachLayer(function(e){e instanceof L.MarkerCluster||!e._icon||e.clusterShow()}),this._topClusterLevel._recursively(n,e,t,function(e){e._recursivelyRestoreChildPositions(t)}),this._ignoreMove=!1,this._enqueue(function(){this._topClusterLevel._recursively(n,e,s,function(e){r.removeLayer(e),e.clusterShow()}),this._animationEnd()})},_animationZoomOut:function(e,t){this._animationZoomOutSingle(this._topClusterLevel,e-1,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds()),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),e,this._getExpandedVisibleBounds())},_animationAddLayer:function(e,t){var i=this,n=this._featureGroup;n.addLayer(e),t!==e&&(t._childCount>2?(t._updateIcon(),this._forceLayout(),this._animationStart(),e._setPos(this._map.latLngToLayerPoint(t.getLatLng())),e.clusterHide(),this._enqueue(function(){n.removeLayer(e),e.clusterShow(),i._animationEnd()})):(this._forceLayout(),i._animationStart(),i._animationZoomOutSingle(t,this._map.getMaxZoom(),this._zoom)))}},_animationZoomOutSingle:function(e,t,i){var n=this._getExpandedVisibleBounds(),r=Math.floor(this._map.getMinZoom());e._recursivelyAnimateChildrenInAndAddSelfToMap(n,r,t+1,i);var s=this;this._forceLayout(),e._recursivelyBecomeVisible(n,i),this._enqueue(function(){if(1===e._childCount){var o=e._markers[0];this._ignoreMove=!0,o.setLatLng(o.getLatLng()),this._ignoreMove=!1,o.clusterShow&&o.clusterShow()}else e._recursively(n,i,r,function(e){e._recursivelyRemoveChildrenFromMap(n,r,t+1)});s._animationEnd()})},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","")),this._inZoomAnimation--,this.fire("animationend")},_forceLayout:function(){L.Util.falseFn(document.body.offsetWidth)}}),L.markerClusterGroup=function(e){return new L.MarkerClusterGroup(e)};var i=L.MarkerCluster=L.Marker.extend({options:L.Icon.prototype.options,initialize:function(e,t,i,n){L.Marker.prototype.initialize.call(this,i?i._cLatLng||i.getLatLng():new L.LatLng(0,0),{icon:this,pane:e.options.clusterPane}),this._group=e,this._zoom=t,this._markers=[],this._childClusters=[],this._childCount=0,this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._bounds=new L.LatLngBounds,i&&this._addChild(i),n&&this._addChild(n)},getAllChildMarkers:function(e){e=e||[];for(var t=this._childClusters.length-1;t>=0;t--)this._childClusters[t].getAllChildMarkers(e);for(var i=this._markers.length-1;i>=0;i--)e.push(this._markers[i]);return e},getChildCount:function(){return this._childCount},zoomToBounds:function(e){for(var t,i=this._childClusters.slice(),n=this._group._map,r=n.getBoundsZoom(this._bounds),s=this._zoom+1,o=n.getZoom();i.length>0&&r>s;){s++;var a=[];for(t=0;ts?this._group._map.setView(this._latlng,s):o>=r?this._group._map.setView(this._latlng,o+1):this._group._map.fitBounds(this._bounds,e)},getBounds:function(){var e=new L.LatLngBounds;return e.extend(this._bounds),e},_updateIcon:function(){this._iconNeedsUpdate=!0,this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(e,t){this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._setClusterCenter(e),e instanceof L.MarkerCluster?(t||(this._childClusters.push(e),e.__parent=this),this._childCount+=e._childCount):(t||this._markers.push(e),this._childCount++),this.__parent&&this.__parent._addChild(e,!0)},_setClusterCenter:function(e){this._cLatLng||(this._cLatLng=e._cLatLng||e._latlng)},_resetBounds:function(){var e=this._bounds;e._southWest&&(e._southWest.lat=1/0,e._southWest.lng=1/0),e._northEast&&(e._northEast.lat=-1/0,e._northEast.lng=-1/0)},_recalculateBounds:function(){var e,t,i,n,r=this._markers,s=this._childClusters,o=0,a=0,h=this._childCount;if(0!==h){for(this._resetBounds(),e=0;e=0;i--)n=r[i],n._icon&&(n._setPos(t),n.clusterHide())},function(e){var i,n,r=e._childClusters;for(i=r.length-1;i>=0;i--)n=r[i],n._icon&&(n._setPos(t),n.clusterHide())})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(e,t,i,n){this._recursively(e,n,t,function(r){r._recursivelyAnimateChildrenIn(e,r._group._map.latLngToLayerPoint(r.getLatLng()).round(),i),r._isSingleParent()&&i-1===n?(r.clusterShow(),r._recursivelyRemoveChildrenFromMap(e,t,i)):r.clusterHide(),r._addToMap()})},_recursivelyBecomeVisible:function(e,t){this._recursively(e,this._group._map.getMinZoom(),t,null,function(e){e.clusterShow()})},_recursivelyAddChildrenToMap:function(e,t,i){this._recursively(i,this._group._map.getMinZoom()-1,t,function(n){if(t!==n._zoom)for(var r=n._markers.length-1;r>=0;r--){var s=n._markers[r];i.contains(s._latlng)&&(e&&(s._backupLatlng=s.getLatLng(),s.setLatLng(e),s.clusterHide&&s.clusterHide()),n._group._featureGroup.addLayer(s))}},function(t){t._addToMap(e)})},_recursivelyRestoreChildPositions:function(e){for(var t=this._markers.length-1;t>=0;t--){var i=this._markers[t];i._backupLatlng&&(i.setLatLng(i._backupLatlng),delete i._backupLatlng)}if(e-1===this._zoom)for(var n=this._childClusters.length-1;n>=0;n--)this._childClusters[n]._restorePosition();else for(var r=this._childClusters.length-1;r>=0;r--)this._childClusters[r]._recursivelyRestoreChildPositions(e)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(e,t,i,n){var r,s;this._recursively(e,t-1,i-1,function(e){for(s=e._markers.length-1;s>=0;s--)r=e._markers[s],n&&n.contains(r._latlng)||(e._group._featureGroup.removeLayer(r),r.clusterShow&&r.clusterShow())},function(e){for(s=e._childClusters.length-1;s>=0;s--)r=e._childClusters[s],n&&n.contains(r._latlng)||(e._group._featureGroup.removeLayer(r),r.clusterShow&&r.clusterShow())})},_recursively:function(e,t,i,n,r){var s,o,a=this._childClusters,h=this._zoom;if(h>=t&&(n&&n(this),r&&h===i&&r(this)),t>h||i>h)for(s=a.length-1;s>=0;s--)o=a[s],e.intersects(o._bounds)&&o._recursively(e,t,i,n,r)},_isSingleParent:function(){return this._childClusters.length>0&&this._childClusters[0]._childCount===this._childCount}});L.Marker.include({clusterHide:function(){return this.options.opacityWhenUnclustered=this.options.opacity||1,this.setOpacity(0)},clusterShow:function(){var e=this.setOpacity(this.options.opacity||this.options.opacityWhenUnclustered);return delete this.options.opacityWhenUnclustered,e}}),L.DistanceGrid=function(e){this._cellSize=e,this._sqCellSize=e*e,this._grid={},this._objectPoint={}},L.DistanceGrid.prototype={addObject:function(e,t){var i=this._getCoord(t.x),n=this._getCoord(t.y),r=this._grid,s=r[n]=r[n]||{},o=s[i]=s[i]||[],a=L.Util.stamp(e);this._objectPoint[a]=t,o.push(e)},updateObject:function(e,t){this.removeObject(e),this.addObject(e,t)},removeObject:function(e,t){var i,n,r=this._getCoord(t.x),s=this._getCoord(t.y),o=this._grid,a=o[s]=o[s]||{},h=a[r]=a[r]||[];for(delete this._objectPoint[L.Util.stamp(e)],i=0,n=h.length;n>i;i++)if(h[i]===e)return h.splice(i,1),1===n&&delete a[r],!0},eachObject:function(e,t){var i,n,r,s,o,a,h,l=this._grid;for(i in l){o=l[i];for(n in o)for(a=o[n],r=0,s=a.length;s>r;r++)h=e.call(t,a[r]),h&&(r--,s--)}},getNearObject:function(e){var t,i,n,r,s,o,a,h,l=this._getCoord(e.x),u=this._getCoord(e.y),_=this._objectPoint,d=this._sqCellSize,c=null;for(t=u-1;u+1>=t;t++)if(r=this._grid[t])for(i=l-1;l+1>=i;i++)if(s=r[i])for(n=0,o=s.length;o>n;n++)a=s[n],h=this._sqDist(_[L.Util.stamp(a)],e),(d>h||d>=h&&null===c)&&(d=h,c=a);return c},_getCoord:function(e){var t=Math.floor(e/this._cellSize);return isFinite(t)?t:e},_sqDist:function(e,t){var i=t.x-e.x,n=t.y-e.y;return i*i+n*n}},function(){L.QuickHull={getDistant:function(e,t){var i=t[1].lat-t[0].lat,n=t[0].lng-t[1].lng;return n*(e.lat-t[0].lat)+i*(e.lng-t[0].lng)},findMostDistantPointFromBaseLine:function(e,t){var i,n,r,s=0,o=null,a=[];for(i=t.length-1;i>=0;i--)n=t[i],r=this.getDistant(n,e),r>0&&(a.push(n),r>s&&(s=r,o=n));return{maxPoint:o,newPoints:a}},buildConvexHull:function(e,t){var i=[],n=this.findMostDistantPointFromBaseLine(e,t);return n.maxPoint?(i=i.concat(this.buildConvexHull([e[0],n.maxPoint],n.newPoints)),i=i.concat(this.buildConvexHull([n.maxPoint,e[1]],n.newPoints))):[e[0]]},getConvexHull:function(e){var t,i=!1,n=!1,r=!1,s=!1,o=null,a=null,h=null,l=null,u=null,_=null;for(t=e.length-1;t>=0;t--){var d=e[t];(i===!1||d.lat>i)&&(o=d,i=d.lat),(n===!1||d.latr)&&(h=d,r=d.lng),(s===!1||d.lng=0;t--)e=i[t].getLatLng(),n.push(e);return L.QuickHull.getConvexHull(n)}}),L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:0,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var e,t=this.getAllChildMarkers(),i=this._group,n=i._map,r=n.latLngToLayerPoint(this._latlng);this._group._unspiderfy(),this._group._spiderfied=this,t.length>=this._circleSpiralSwitchover?e=this._generatePointsSpiral(t.length,r):(r.y+=10,e=this._generatePointsCircle(t.length,r)),this._animationSpiderfy(t,e)}},unspiderfy:function(e){this._group._inZoomAnimation||(this._animationUnspiderfy(e),this._group._spiderfied=null)},_generatePointsCircle:function(e,t){var i,n,r=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+e),s=r/this._2PI,o=this._2PI/e,a=[];for(s=Math.max(s,35),a.length=e,i=0;e>i;i++)n=this._circleStartAngle+i*o,a[i]=new L.Point(t.x+s*Math.cos(n),t.y+s*Math.sin(n))._round();return a},_generatePointsSpiral:function(e,t){var i,n=this._group.options.spiderfyDistanceMultiplier,r=n*this._spiralLengthStart,s=n*this._spiralFootSeparation,o=n*this._spiralLengthFactor*this._2PI,a=0,h=[];for(h.length=e,i=e;i>=0;i--)e>i&&(h[i]=new L.Point(t.x+r*Math.cos(a),t.y+r*Math.sin(a))._round()),a+=s/r+5e-4*i,r+=o/a;return h},_noanimationUnspiderfy:function(){var e,t,i=this._group,n=i._map,r=i._featureGroup,s=this.getAllChildMarkers();for(i._ignoreMove=!0,this.setOpacity(1),t=s.length-1;t>=0;t--)e=s[t],r.removeLayer(e),e._preSpiderfyLatlng&&(e.setLatLng(e._preSpiderfyLatlng),delete e._preSpiderfyLatlng),e.setZIndexOffset&&e.setZIndexOffset(0),e._spiderLeg&&(n.removeLayer(e._spiderLeg),delete e._spiderLeg);i.fire("unspiderfied",{cluster:this,markers:s}),i._ignoreMove=!1,i._spiderfied=null}}),L.MarkerClusterNonAnimated=L.MarkerCluster.extend({_animationSpiderfy:function(e,t){var i,n,r,s,o=this._group,a=o._map,h=o._featureGroup,l=this._group.options.spiderLegPolylineOptions;for(o._ignoreMove=!0,i=0;i=0;i--)a=u.layerPointToLatLng(t[i]),n=e[i],n._preSpiderfyLatlng=n._latlng,n.setLatLng(a),n.clusterShow&&n.clusterShow(),p&&(r=n._spiderLeg,s=r._path,s.style.strokeDashoffset=0,r.setStyle({opacity:m}));this.setOpacity(.3),l._ignoreMove=!1,setTimeout(function(){l._animationEnd(),l.fire("spiderfied",{cluster:h,markers:e})},200)},_animationUnspiderfy:function(e){var t,i,n,r,s,o,a=this,h=this._group,l=h._map,u=h._featureGroup,_=e?l._latLngToNewLayerPoint(this._latlng,e.zoom,e.center):l.latLngToLayerPoint(this._latlng),d=this.getAllChildMarkers(),c=L.Path.SVG;for(h._ignoreMove=!0,h._animationStart(),this.setOpacity(1),i=d.length-1;i>=0;i--)t=d[i],t._preSpiderfyLatlng&&(t.closePopup(),t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng,o=!0,t._setPos&&(t._setPos(_),o=!1),t.clusterHide&&(t.clusterHide(),o=!1),o&&u.removeLayer(t),c&&(n=t._spiderLeg,r=n._path,s=r.getTotalLength()+.1,r.style.strokeDashoffset=s,n.setStyle({opacity:0})));h._ignoreMove=!1,setTimeout(function(){var e=0;for(i=d.length-1;i>=0;i--)t=d[i],t._spiderLeg&&e++;for(i=d.length-1;i>=0;i--)t=d[i],t._spiderLeg&&(t.clusterShow&&t.clusterShow(),t.setZIndexOffset&&t.setZIndexOffset(0),e>1&&u.removeLayer(t),l.removeLayer(t._spiderLeg),delete t._spiderLeg);h._animationEnd(),h.fire("unspiderfied",{cluster:a,markers:d})},200)}}),L.MarkerClusterGroup.include({_spiderfied:null,unspiderfy:function(){this._unspiderfy.apply(this,arguments)},_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this),this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this),this._map.on("zoomend",this._noanimationUnspiderfy,this),L.Browser.touch||this._map.getRenderer(this)},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this),this._map.off("zoomstart",this._unspiderfyZoomStart,this),this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._map.off("zoomend",this._noanimationUnspiderfy,this),this._noanimationUnspiderfy() +},_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(e){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(e))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(e){this._spiderfied&&this._spiderfied.unspiderfy(e)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(e){e._spiderLeg&&(this._featureGroup.removeLayer(e),e.clusterShow&&e.clusterShow(),e.setZIndexOffset&&e.setZIndexOffset(0),this._map.removeLayer(e._spiderLeg),delete e._spiderLeg)}}),L.MarkerClusterGroup.include({refreshClusters:function(e){return e?e instanceof L.MarkerClusterGroup?e=e._topClusterLevel.getAllChildMarkers():e instanceof L.LayerGroup?e=e._layers:e instanceof L.MarkerCluster?e=e.getAllChildMarkers():e instanceof L.Marker&&(e=[e]):e=this._topClusterLevel.getAllChildMarkers(),this._flagParentsIconsNeedUpdate(e),this._refreshClustersIcons(),this.options.singleMarkerMode&&this._refreshSingleMarkerModeMarkers(e),this},_flagParentsIconsNeedUpdate:function(e){var t,i;for(t in e)for(i=e[t].__parent;i;)i._iconNeedsUpdate=!0,i=i.__parent},_refreshSingleMarkerModeMarkers:function(e){var t,i;for(t in e)i=e[t],this.hasLayer(i)&&i.setIcon(this._overrideMarkerIcon(i))}}),L.Marker.include({refreshIconOptions:function(e,t){var i=this.options.icon;return L.setOptions(i,e),this.setIcon(i),t&&this.__parent&&this.__parent._group.refreshClusters(this),this}}),e.MarkerClusterGroup=t,e.MarkerCluster=i}); +//# sourceMappingURL=leaflet.markercluster.js.map \ No newline at end of file -- 2.49.1