/*! elementor-pro - v3.30.0 - 22-07-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
/***/ "../modules/page-transitions/assets/js/frontend/components/index.js":
/*!**************************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/components/index.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({
value: true
}));
Object.defineProperty(exports, "PageTransition", ({
enumerable: true,
get: function () {
return _pageTransition.PageTransition;
}
}));
Object.defineProperty(exports, "Preloader", ({
enumerable: true,
get: function () {
return _preloader.Preloader;
}
}));
var _pageTransition = __webpack_require__(/*! ./page-transition/page-transition */ "../modules/page-transitions/assets/js/frontend/components/page-transition/page-transition.js");
var _preloader = __webpack_require__(/*! ./preloader/preloader */ "../modules/page-transitions/assets/js/frontend/components/preloader/preloader.js");
/***/ }),
/***/ "../modules/page-transitions/assets/js/frontend/components/page-transition/filters.js":
/*!********************************************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/components/page-transition/filters.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
// Ref: https://stackoverflow.com/questions/26088849/url-fragment-allowed-characters
const urlFragmentPattern = /.*#[\w\-/$.+()*@?~!&',;=:%]*$/;
var _default = exports["default"] = {
// Disable using data attribute.
isDisabled: a => Object.prototype.hasOwnProperty.call(a.dataset, 'eDisablePageTransition'),
// Allow only links from same origin and without a URL fragment (e.g. #some-string).
isEmptyHref: a => !a.getAttribute('href'),
isTargetBlank: a => '_blank' === a.target,
notSameOrigin: a => !a.href.startsWith(window.location.origin),
hasFragment: a => !!a.href.match(urlFragmentPattern),
// Internal page links, popups, etc.
// Disable for popup links / menu toggles, only when they are closed (to allow opening).
isPopup: a => 'true' === a.getAttribute('aria-haspopup') && 'false' === a.getAttribute('aria-expanded'),
// Disable in WooCommerce links.
isWoocommerce: a => {
const isAddToCart = a.href.match(/\?add-to-cart=/),
isRemoveFromCart = a.href.match(/\?remove_item=/),
isRestoreToCart = a.href.match(/\?undo_item=/),
isWoocommercePagination = a.href.match(/\?product-page=/),
isWoocommerceLogout = a.href.match(/\?elementor_wc_logout=/),
isWoocommerceTab = a.parentElement?.classList.contains('woocommerce-MyAccount-navigation-link');
return isAddToCart || isRemoveFromCart || isRestoreToCart || isWoocommercePagination || isWoocommerceLogout || isWoocommerceTab;
},
// Custom regex filter from attributes.
isExcluded: (a, exclude) => a.href.match(new RegExp(exclude))
};
/***/ }),
/***/ "../modules/page-transitions/assets/js/frontend/components/page-transition/page-transition.js":
/*!****************************************************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/components/page-transition/page-transition.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = exports.PageTransition = void 0;
var _pageTransitionComponent = _interopRequireDefault(__webpack_require__(/*! ./page-transition.component.scss */ "../modules/page-transitions/assets/js/frontend/components/page-transition/page-transition.component.scss"));
var _filters = _interopRequireDefault(__webpack_require__(/*! ./filters */ "../modules/page-transitions/assets/js/frontend/components/page-transition/filters.js"));
class PageTransition extends HTMLElement {
/**
* Initialize the Page Transitions element.
*
* @return {void}
*/
constructor() {
super();
this.classes = this.getClasses();
this.elements = this.getElements();
this.bindEvents();
}
/**
* Get a list of classes that are used in the code.
*
* @return {Object} - List of classes.
*/
getClasses() {
return {
preloader: 'e-page-transition--preloader',
entering: 'e-page-transition--entering',
exiting: 'e-page-transition--exiting',
entered: 'e-page-transition--entered',
preview: 'e-page-transition--preview'
};
}
/**
* Get the Page Transition CSS.
*
* @return {string} - CSS code.
*/
getStyle() {
return ``;
}
/**
* A list of attributes to observe for changes.
*
* @return {string[]} - Attributes to observe.
*/
static get observedAttributes() {
return ['preloader-type', 'preloader-icon', 'preloader-image-url', 'preloader-animation-type', 'disabled'];
}
/**
* Get the Page Transitions elements.
*
* @return {Object} - Elements.
*/
getElements() {
const triggers = this.getAttribute('triggers'),
selector = triggers || 'a:not( [data-elementor-open-lightbox="yes"] )';
return {
links: document.querySelectorAll(selector)
};
}
/**
* Determine if a link should trigger a Page Transition effect.
*
* @param {HTMLAnchorElement} a - The anchor element to check.
* @return {boolean} - Whether the given link should activate the Page Transition.
*/
shouldPageTriggerTransition(a) {
return Object.values(_filters.default).every(shouldDisable => !shouldDisable(a, this.getAttribute('exclude')));
}
/**
* Hide the loader on page show.
*
* @return {void}
*/
onPageShow() {
// To disable animation on back / forward click.
if (this.classList.contains(this.classes.exiting)) {
this.classList.add(this.classes.entered);
this.classList.remove(this.classes.exiting);
}
// Animate the loader on page load.
this.animateState('entering').then(() => {
this.classList.add(this.classes.entered);
});
}
/**
* Trigger the Page Transition on link click.
*
* @param {MouseEvent} e - The click Event.
* @return {void}
*/
onLinkClick(e) {
if (!this.shouldPageTriggerTransition(e.currentTarget)) {
return;
}
e.preventDefault();
const href = e.currentTarget.href;
this.classList.remove(this.classes.entered);
this.animateState('exiting', this.getPreloaderDelay()).then(() => {
this.classList.add(this.classes.exiting);
// Redirect the user to the clicked href only after the Page Transition has entered.
location.href = href;
});
}
/**
* Prerender a webpage using `rel=prerender`.
*
* @param {string} href
* @return {void}
*/
prerender(href) {
if (document.querySelector(`link[href="${href}"]`)) {
return;
}
const link = document.createElement('link');
link.setAttribute('rel', 'prerender');
link.setAttribute('href', href);
document.head.appendChild(link);
}
/**
* Trigger a `prerender` on link mouse enter.
*
* @param {MouseEvent} e
* @return {void}
*/
onLinkMouseEnter(e) {
if (!this.shouldPageTriggerTransition(e.currentTarget)) {
return;
}
this.prerender(e.currentTarget.href);
}
/**
* Bind events to the window & links.
*
* @return {void}
*/
bindEvents() {
window.addEventListener('pageshow', this.onPageShow.bind(this));
window.addEventListener('DOMContentLoaded', () => {
this.elements = this.getElements();
this.elements.links.forEach(a => {
a.addEventListener('click', this.onLinkClick.bind(this));
a.addEventListener('mouseenter', this.onLinkMouseEnter.bind(this));
a.addEventListener('touchstart', this.onLinkMouseEnter.bind(this));
});
});
}
/**
* Escape HTML special chars to prevent XSS.
*
* @param {string} str - String to escape.
*
* @return {string} escaped string
*/
escapeHTML(str) {
const specialChars = {
'&': '&',
'<': '<',
'>': '>',
"'": ''',
'"': '"'
};
return str.replace(/[&<>'"]/g, tag => specialChars[tag] || tag);
}
/**
* Retrieve an icon loader HTML markup.
*
* @return {string} - HTML markup.
*/
getIconLoader() {
const icon = this.getAttribute('preloader-icon') || '';
return `
`;
}
/**
* Retrieve an image loader HTML markup.
*
* @return {string} - HTML markup.
*/
getImageLoader() {
const url = this.getAttribute('preloader-image-url') || '';
return `
`;
}
/**
* Retrieve a custom loader HTML markup.
*
* @return {string} - HTML markup.
*/
getAnimationLoader() {
const type = this.getAttribute('preloader-animation-type');
if (!type) {
return '';
}
return `
`;
}
/**
* Render the Page Transition element.
*
* @return {void}
*/
render() {
// Don't render when the Page Transition is disabled.
if (this.hasAttribute('disabled')) {
this.innerHTML = '';
return;
}
const loaderType = this.getAttribute('preloader-type');
switch (loaderType) {
case 'icon':
this.innerHTML = this.getIconLoader();
break;
case 'image':
this.innerHTML = this.getImageLoader();
break;
case 'animation':
this.innerHTML = this.getAnimationLoader();
break;
default:
this.innerHTML = '';
break;
}
this.innerHTML += this.getStyle();
}
/**
* Get a CSS variable value from the current element's context.
*
* @param {string} variable - Variable name.
* @param {string} prefix - Variable prefix, defaults to `e-page-transition`.
* @return {string} - CSS variable value.
*/
getCssVar(variable) {
let prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'e-page-transition-';
return window.getComputedStyle(this).getPropertyValue(`--${prefix}${variable}`);
}
/**
* Get the animation duration as an integer in order to be used inside a `setTimeout`.
*
* Assumes that all of the timings are in `ms`.
*
* @return {number} - Animation duration.
*/
getAnimationDuration() {
return parseInt(this.getCssVar('animation-duration')) || 0;
}
/**
* Get the preloader delay.
*
* Assumes that all of the timings are in `ms`.
*
* @return {number} - Preloader delay.
*/
getPreloaderDelay() {
return parseInt(this.getCssVar('delay', 'e-preloader-')) || 0;
}
/**
* Start the animate sequence of the Page Transition (enter && exit).
*
* @return {Promise} - Animation sequence Promise.
*/
animate() {
// Don't animate if there is already an animation in progress.
if (this.isAnimating) {
return new Promise((resolve, reject) => {
reject('Animation is already in progress.');
});
}
this.isAnimating = true;
// Delay the exit animation so the user will be able to see the loader for a second.
const delay = this.getPreloaderDelay() + 1500;
this.classList.remove(this.classes.entered);
return new Promise(resolve => {
// Defer to make sure that the `entered` class is fully removed before animating.
// Return a Promise for animations chaining.
setTimeout(() => {
this.animateState('exiting', delay).then(() => {
this.animateState('entering').then(() => {
this.classList.add(this.classes.entered);
this.isAnimating = false;
resolve();
});
});
});
});
}
/**
* Animate a state of the Page Transition (enter || exit).
*
* @param {('entering'|'exiting')} state - The state name to animate.
* @param {number} delay - Delay (in ms) before resolving the Promise.
* @return {Promise} - Animation sequence Promise.
*/
animateState(state) {
let delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
const className = this.classes?.[state];
if (!className) {
return new Promise((resolve, reject) => {
reject(state);
});
}
// Remove and add the class again to force the animation, since it's using `animation-fill-mode: forwards`.
this.classList.remove(className);
this.classList.add(className);
// Return a Promise for animations chaining.
const animationDuration = this.getAnimationDuration();
return new Promise(resolve => {
setTimeout(() => {
this.classList.remove(className);
resolve(state);
}, animationDuration + delay);
});
}
/**
* Listen to attribute changes and re-render the element.
*
* @return {void}
*/
attributeChangedCallback() {
this.render();
}
/**
* Render the element when attached to the document.
*
* @return {void}
*/
connectedCallback() {
this.render();
}
}
exports.PageTransition = PageTransition;
var _default = exports["default"] = PageTransition;
/***/ }),
/***/ "../modules/page-transitions/assets/js/frontend/components/preloader/preloader.js":
/*!****************************************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/components/preloader/preloader.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = exports.Preloader = void 0;
__webpack_require__(/*! core-js/modules/es.array.includes.js */ "../node_modules/core-js/modules/es.array.includes.js");
var _preloaderComponent = _interopRequireDefault(__webpack_require__(/*! ./preloader.component.scss */ "../modules/page-transitions/assets/js/frontend/components/preloader/preloader.component.scss"));
class Preloader extends HTMLElement {
/**
* A list of attributes to observe for changes.
*
* @return {string[]} - Attributes to observe.
*/
static get observedAttributes() {
return ['type'];
}
/**
* Listen to attribute changes and re-render the element.
*
* @return {void}
*/
attributeChangedCallback() {
this.render();
}
/**
* Get the Preloader CSS.
*
* @return {string} - CSS code.
*/
getStyle() {
return ``;
}
/**
* Render the Preloader element.
*
* @return {void}
*/
render() {
const type = this.getAttribute('type'),
dotsTypes = ['bouncing-dots', 'pulsing-dots'];
this.innerHTML = '';
if (!type) {
return;
}
if (dotsTypes.includes(type)) {
this.innerHTML += `
`;
}
this.innerHTML += this.getStyle();
}
/**
* Render the element when attached to the document.
*
* @return {void}
*/
connectedCallback() {
this.render();
}
}
exports.Preloader = Preloader;
var _default = exports["default"] = Preloader;
/***/ }),
/***/ "../modules/page-transitions/assets/js/frontend/components/page-transition/page-transition.component.scss":
/*!****************************************************************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/components/page-transition/page-transition.component.scss ***!
\****************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "../node_modules/css-loader/dist/runtime/noSourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/api.js */ "../node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `e-page-transition {
--preloader-fade-duration: .5s;
--preloader-delay: calc( var( --e-page-transition-animation-duration, 0s ) + var( --e-preloader-delay, 0s ) );
--page-transition-delay: var( --preloader-fade-duration );
position: fixed;
inset: 0;
display: grid;
place-items: center;
z-index: 10000;
background: #FFF;
animation-fill-mode: both;
animation-duration: var(--e-page-transition-animation-duration);
}
e-page-transition[disabled] {
display: none;
}
e-page-transition e-preloader,
e-page-transition .e-page-transition--preloader {
opacity: 0;
}
e-page-transition .e-page-transition--preloader {
position: absolute;
font-size: var(--e-preloader-size);
color: var(--e-preloader-color);
fill: var(--e-preloader-color);
width: var(--e-preloader-width);
max-width: var(--e-preloader-max-width);
transform: rotate(var(--e-preloader-rotate, 0deg));
animation-name: var(--e-preloader-animation);
animation-duration: var(--e-preloader-animation-duration, 1000ms);
animation-iteration-count: infinite;
animation-timing-function: linear;
}
e-page-transition svg.e-page-transition--preloader {
width: var(--e-preloader-size);
}
.e-page-transition--entering {
animation-name: var(--e-page-transition-entrance-animation);
animation-delay: var(--preloader-fade-duration, 0s);
}
.e-page-transition--entering e-preloader,
.e-page-transition--entering .e-page-transition--preloader {
animation: var(--e-preloader-animation, none) var(--e-preloader-animation-duration, 0s) linear infinite, e-page-transition-fade-out var(--preloader-fade-duration) both;
transition: none;
}
.e-page-transition--exiting {
animation-name: var(--e-page-transition-exit-animation);
}
.e-page-transition--exiting e-preloader,
.e-page-transition--exiting .e-page-transition--preloader {
opacity: var(--e-preloader-opacity, 1);
transition: var(--preloader-fade-duration) all;
transition-delay: var(--preloader-delay, 0s);
}
.e-page-transition--entered:not(.e-page-transition--preview) {
display: none;
}
.e-page-transition--preview {
/* Fix preview not working for some animations. */
animation-fill-mode: initial;
}
.e-page-transition--preview.e-page-transition--entered e-preloader,
.e-page-transition--preview.e-page-transition--entered .e-page-transition--preloader {
opacity: var(--e-preloader-opacity, 1);
}
/* Hide the page transition if the user has disabled animations. */
@media (prefers-reduced-motion: reduce) {
e-page-transition {
display: none;
}
}
/* Animations */
@keyframes e-page-transition-fade-in {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes e-page-transition-fade-in-down {
from {
opacity: 0;
transform: translate3d(0, -100%, 0);
}
to {
opacity: 1;
transform: none;
}
}
@keyframes e-page-transition-fade-in-left {
from {
opacity: 0;
transform: translate3d(-100%, 0, 0);
}
to {
opacity: 1;
transform: none;
}
}
@keyframes e-page-transition-fade-in-right {
from {
opacity: 0;
transform: translate3d(100%, 0, 0);
}
to {
opacity: 1;
transform: none;
}
}
@keyframes e-page-transition-fade-in-up {
from {
opacity: 0;
transform: translate3d(0, 100%, 0);
}
to {
opacity: 1;
transform: none;
}
}
@keyframes e-page-transition-zoom-in {
from {
opacity: 0;
transform: scale3d(0.3, 0.3, 0.3);
}
50% {
opacity: 1;
}
}
@keyframes e-page-transition-slide-in-down {
from {
transform: translate3d(0, -100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
@keyframes e-page-transition-slide-in-left {
from {
transform: translate3d(-100%, 0, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
@keyframes e-page-transition-slide-in-right {
from {
transform: translate3d(100%, 0, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
@keyframes e-page-transition-slide-in-up {
from {
transform: translate3d(0, 100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
@keyframes e-page-transition-fade-out {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@keyframes e-page-transition-fade-out-up {
from {
opacity: 1;
transform: none;
}
to {
opacity: 0;
transform: translate3d(0, -100%, 0);
}
}
@keyframes e-page-transition-fade-out-left {
from {
opacity: 1;
transform: none;
}
to {
opacity: 0;
transform: translate3d(-100%, 0, 0);
}
}
@keyframes e-page-transition-fade-out-right {
from {
opacity: 1;
transform: none;
}
to {
opacity: 0;
transform: translate3d(100%, 0, 0);
}
}
@keyframes e-page-transition-fade-out-down {
from {
opacity: 1;
transform: none;
}
to {
opacity: 0;
transform: translate3d(0, 100%, 0);
}
}
@keyframes e-page-transition-slide-out-up {
from {
transform: translate3d(0, 0, 0);
}
to {
transform: translate3d(0, -100%, 0);
visibility: visible;
}
}
@keyframes e-page-transition-slide-out-left {
from {
transform: translate3d(0, 0, 0);
}
to {
transform: translate3d(-100%, 0, 0);
visibility: visible;
}
}
@keyframes e-page-transition-slide-out-right {
from {
transform: translate3d(0, 0, 0);
}
to {
transform: translate3d(100%, 0, 0);
visibility: visible;
}
}
@keyframes e-page-transition-slide-out-down {
from {
transform: translate3d(0, 0, 0);
}
to {
transform: translate3d(0, 100%, 0);
visibility: visible;
}
}
@keyframes e-page-transition-zoom-out {
from {
opacity: 1;
}
50% {
opacity: 0;
transform: scale3d(0.3, 0.3, 0.3);
}
}`, ""]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
/***/ }),
/***/ "../modules/page-transitions/assets/js/frontend/components/preloader/preloader.component.scss":
/*!****************************************************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/components/preloader/preloader.component.scss ***!
\****************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "../node_modules/css-loader/dist/runtime/noSourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/api.js */ "../node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `e-preloader {
--default-duartion: 1000ms;
--duration: var( --e-preloader-animation-duration, var( --default-duration ) );
display: block;
font-size: var(--e-preloader-size);
}
e-preloader[type=circle], e-preloader[type=circle-dashed], e-preloader[type=spinners] {
--e-preloader-animation: e-preloader-spin;
height: 1em;
width: 1em;
border: 0.1em solid var(--e-preloader-color);
border-top-color: transparent;
border-radius: 100%;
animation: var(--duration) var(--e-preloader-animation) linear infinite;
}
e-preloader[type=circle-dashed] {
border: 0.1em solid rgba(255, 255, 255, 0.3);
border-top-color: var(--e-preloader-color);
}
e-preloader[type=spinners] {
border-bottom-color: transparent;
}
e-preloader[type=bouncing-dots], e-preloader[type=pulsing-dots] {
display: flex;
gap: 1em;
}
e-preloader[type=bouncing-dots] i, e-preloader[type=pulsing-dots] i {
height: 1em;
width: 1em;
border-radius: 100%;
background-color: var(--e-preloader-color);
}
e-preloader[type=bouncing-dots] i:nth-child(2), e-preloader[type=pulsing-dots] i:nth-child(2) {
animation-delay: var(--delay);
}
e-preloader[type=bouncing-dots] i:nth-child(3), e-preloader[type=pulsing-dots] i:nth-child(3) {
animation-delay: calc(var(--delay) * 2);
}
e-preloader[type=bouncing-dots] i:nth-child(4), e-preloader[type=pulsing-dots] i:nth-child(4) {
animation-delay: calc(var(--delay) * 3);
}
e-preloader[type=bouncing-dots] i {
--delay: calc( var( --duration ) / 10 );
animation: var(--duration) e-preloader-bounce linear infinite;
}
e-preloader[type=pulsing-dots] i {
--delay: calc( var( --duration ) / 6 );
animation: var(--duration) e-preloader-pulsing-dots linear infinite;
}
e-preloader[type=pulse] {
height: 1em;
width: 1em;
position: relative;
}
e-preloader[type=pulse]::before, e-preloader[type=pulse]::after {
content: "";
position: absolute;
inset: 0;
border: 0.05em solid var(--e-preloader-color);
border-radius: 100%;
animation: 1.2s e-preloader-pulse infinite both ease-out;
}
e-preloader[type=pulse]::after {
animation-delay: 0.6s;
}
e-preloader[type=overlap] {
height: 1em;
width: 1em;
position: relative;
}
e-preloader[type=overlap]::before, e-preloader[type=overlap]::after {
content: "";
inset: 0;
position: absolute;
background: var(--e-preloader-color);
border-radius: 100%;
opacity: 0.5;
animation: 2s e-preloader-overlap infinite both ease-in-out;
}
e-preloader[type=overlap]::after {
animation-delay: -1s;
animation-direction: reverse;
}
e-preloader[type=nested-spinners], e-preloader[type=opposing-nested-spinners], e-preloader[type=opposing-nested-rings] {
height: 1em;
width: 1em;
position: relative;
}
e-preloader[type=nested-spinners]::before, e-preloader[type=nested-spinners]::after, e-preloader[type=opposing-nested-spinners]::before, e-preloader[type=opposing-nested-spinners]::after, e-preloader[type=opposing-nested-rings]::before, e-preloader[type=opposing-nested-rings]::after {
content: "";
display: block;
position: absolute;
border-radius: 100%;
border: 0.1em solid var(--e-preloader-color);
border-top-color: transparent;
animation: var(--duration) e-preloader-spin linear infinite;
}
e-preloader[type=nested-spinners]::before, e-preloader[type=opposing-nested-spinners]::before, e-preloader[type=opposing-nested-rings]::before {
inset: -0.3em;
}
e-preloader[type=nested-spinners]::after, e-preloader[type=opposing-nested-spinners]::after, e-preloader[type=opposing-nested-rings]::after {
animation-duration: calc(var(--duration) - 0.2s);
inset: 0;
opacity: 0.5;
}
e-preloader[type=nested-spinners]::before, e-preloader[type=nested-spinners]::after, e-preloader[type=opposing-nested-spinners]::before, e-preloader[type=opposing-nested-spinners]::after {
border-bottom-color: transparent;
}
e-preloader[type=opposing-nested-rings]::after, e-preloader[type=opposing-nested-spinners]::after {
animation-direction: reverse;
}
e-preloader[type=progress-bar], e-preloader[type=two-way-progress-bar], e-preloader[type=repeating-bar] {
--e-preloader-animation: e-preloader-progress-bar;
height: 0.05em;
width: 5em;
max-width: 50vw;
background: var(--e-preloader-color);
animation: var(--duration) var(--e-preloader-animation) linear infinite both;
}
e-preloader[type=progress-bar] {
transform-origin: 0 50%;
}
e-preloader[type=repeating-bar] {
--e-preloader-animation: e-preloader-repeating-bar;
}
/* Hide the preloader if the user has disabled animations. */
@media (prefers-reduced-motion: reduce) {
e-preloader {
display: none;
}
}
/* Animations */
@keyframes e-preloader-spin {
0% {
transform: rotate(0);
}
100% {
transform: rotate(360deg);
}
}
@keyframes e-preloader-bounce {
0%, 40%, 100% {
transform: translateY(0);
}
20% {
transform: translateY(-80%);
}
}
@keyframes e-preloader-pulsing-dots {
0%, 40%, 100% {
transform: scale(1);
}
20% {
transform: scale(1.5);
}
}
@keyframes e-preloader-pulse {
from {
transform: scale(0);
opacity: 1;
}
to {
transform: scale(1);
opacity: 0;
}
}
@keyframes e-preloader-overlap {
0%, 100% {
transform: scale(0.2);
}
50% {
transform: scale(1);
}
}
@keyframes e-preloader-progress-bar {
0% {
transform: scaleX(0);
}
100% {
transform: scaleX(1);
}
}
@keyframes e-preloader-repeating-bar {
0% {
transform: scaleX(0);
transform-origin: 0 50%;
}
49% {
transform-origin: 0 50%;
}
50% {
transform: scaleX(1);
transform-origin: 100% 50%;
}
100% {
transform: scaleX(0);
transform-origin: 100% 50%;
}
}`, ""]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
/***/ }),
/***/ "../node_modules/css-loader/dist/runtime/api.js":
/*!******************************************************!*\
!*** ../node_modules/css-loader/dist/runtime/api.js ***!
\******************************************************/
/***/ ((module) => {
"use strict";
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
module.exports = function (cssWithMappingToString) {
var list = [];
// return the list of modules as css string
list.toString = function toString() {
return this.map(function (item) {
var content = "";
var needLayer = typeof item[5] !== "undefined";
if (item[4]) {
content += "@supports (".concat(item[4], ") {");
}
if (item[2]) {
content += "@media ".concat(item[2], " {");
}
if (needLayer) {
content += "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {");
}
content += cssWithMappingToString(item);
if (needLayer) {
content += "}";
}
if (item[2]) {
content += "}";
}
if (item[4]) {
content += "}";
}
return content;
}).join("");
};
// import a list of modules into the list
list.i = function i(modules, media, dedupe, supports, layer) {
if (typeof modules === "string") {
modules = [[null, modules, undefined]];
}
var alreadyImportedModules = {};
if (dedupe) {
for (var k = 0; k < this.length; k++) {
var id = this[k][0];
if (id != null) {
alreadyImportedModules[id] = true;
}
}
}
for (var _k = 0; _k < modules.length; _k++) {
var item = [].concat(modules[_k]);
if (dedupe && alreadyImportedModules[item[0]]) {
continue;
}
if (typeof layer !== "undefined") {
if (typeof item[5] === "undefined") {
item[5] = layer;
} else {
item[1] = "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {").concat(item[1], "}");
item[5] = layer;
}
}
if (media) {
if (!item[2]) {
item[2] = media;
} else {
item[1] = "@media ".concat(item[2], " {").concat(item[1], "}");
item[2] = media;
}
}
if (supports) {
if (!item[4]) {
item[4] = "".concat(supports);
} else {
item[1] = "@supports (".concat(item[4], ") {").concat(item[1], "}");
item[4] = supports;
}
}
list.push(item);
}
};
return list;
};
/***/ }),
/***/ "../node_modules/css-loader/dist/runtime/noSourceMaps.js":
/*!***************************************************************!*\
!*** ../node_modules/css-loader/dist/runtime/noSourceMaps.js ***!
\***************************************************************/
/***/ ((module) => {
"use strict";
module.exports = function (i) {
return i[1];
};
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
/*!***********************************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
\***********************************************************************/
/***/ ((module) => {
function _interopRequireDefault(e) {
return e && e.__esModule ? e : {
"default": e
};
}
module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ }),
/***/ "../node_modules/core-js/internals/a-callable.js":
/*!*******************************************************!*\
!*** ../node_modules/core-js/internals/a-callable.js ***!
\*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var tryToString = __webpack_require__(/*! ../internals/try-to-string */ "../node_modules/core-js/internals/try-to-string.js");
var $TypeError = TypeError;
// `Assert: IsCallable(argument) is true`
module.exports = function (argument) {
if (isCallable(argument)) return argument;
throw new $TypeError(tryToString(argument) + ' is not a function');
};
/***/ }),
/***/ "../node_modules/core-js/internals/add-to-unscopables.js":
/*!***************************************************************!*\
!*** ../node_modules/core-js/internals/add-to-unscopables.js ***!
\***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js");
var create = __webpack_require__(/*! ../internals/object-create */ "../node_modules/core-js/internals/object-create.js");
var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js").f);
var UNSCOPABLES = wellKnownSymbol('unscopables');
var ArrayPrototype = Array.prototype;
// Array.prototype[@@unscopables]
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
if (ArrayPrototype[UNSCOPABLES] === undefined) {
defineProperty(ArrayPrototype, UNSCOPABLES, {
configurable: true,
value: create(null)
});
}
// add a key to Array.prototype[@@unscopables]
module.exports = function (key) {
ArrayPrototype[UNSCOPABLES][key] = true;
};
/***/ }),
/***/ "../node_modules/core-js/internals/an-object.js":
/*!******************************************************!*\
!*** ../node_modules/core-js/internals/an-object.js ***!
\******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
var $String = String;
var $TypeError = TypeError;
// `Assert: Type(argument) is Object`
module.exports = function (argument) {
if (isObject(argument)) return argument;
throw new $TypeError($String(argument) + ' is not an object');
};
/***/ }),
/***/ "../node_modules/core-js/internals/array-includes.js":
/*!***********************************************************!*\
!*** ../node_modules/core-js/internals/array-includes.js ***!
\***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../node_modules/core-js/internals/to-absolute-index.js");
var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ "../node_modules/core-js/internals/length-of-array-like.js");
// `Array.prototype.{ indexOf, includes }` methods implementation
var createMethod = function (IS_INCLUDES) {
return function ($this, el, fromIndex) {
var O = toIndexedObject($this);
var length = lengthOfArrayLike(O);
if (length === 0) return !IS_INCLUDES && -1;
var index = toAbsoluteIndex(fromIndex, length);
var value;
// Array#includes uses SameValueZero equality algorithm
// eslint-disable-next-line no-self-compare -- NaN check
if (IS_INCLUDES && el !== el) while (length > index) {
value = O[index++];
// eslint-disable-next-line no-self-compare -- NaN check
if (value !== value) return true;
// Array#indexOf ignores holes, Array#includes - not
} else for (;length > index; index++) {
if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
} return !IS_INCLUDES && -1;
};
};
module.exports = {
// `Array.prototype.includes` method
// https://tc39.es/ecma262/#sec-array.prototype.includes
includes: createMethod(true),
// `Array.prototype.indexOf` method
// https://tc39.es/ecma262/#sec-array.prototype.indexof
indexOf: createMethod(false)
};
/***/ }),
/***/ "../node_modules/core-js/internals/classof-raw.js":
/*!********************************************************!*\
!*** ../node_modules/core-js/internals/classof-raw.js ***!
\********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var toString = uncurryThis({}.toString);
var stringSlice = uncurryThis(''.slice);
module.exports = function (it) {
return stringSlice(toString(it), 8, -1);
};
/***/ }),
/***/ "../node_modules/core-js/internals/copy-constructor-properties.js":
/*!************************************************************************!*\
!*** ../node_modules/core-js/internals/copy-constructor-properties.js ***!
\************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var ownKeys = __webpack_require__(/*! ../internals/own-keys */ "../node_modules/core-js/internals/own-keys.js");
var getOwnPropertyDescriptorModule = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../node_modules/core-js/internals/object-get-own-property-descriptor.js");
var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
module.exports = function (target, source, exceptions) {
var keys = ownKeys(source);
var defineProperty = definePropertyModule.f;
var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
for (var i = 0; i < keys.length; i++) {
var key = keys[i];
if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {
defineProperty(target, key, getOwnPropertyDescriptor(source, key));
}
}
};
/***/ }),
/***/ "../node_modules/core-js/internals/create-non-enumerable-property.js":
/*!***************************************************************************!*\
!*** ../node_modules/core-js/internals/create-non-enumerable-property.js ***!
\***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
module.exports = DESCRIPTORS ? function (object, key, value) {
return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
} : function (object, key, value) {
object[key] = value;
return object;
};
/***/ }),
/***/ "../node_modules/core-js/internals/create-property-descriptor.js":
/*!***********************************************************************!*\
!*** ../node_modules/core-js/internals/create-property-descriptor.js ***!
\***********************************************************************/
/***/ ((module) => {
"use strict";
module.exports = function (bitmap, value) {
return {
enumerable: !(bitmap & 1),
configurable: !(bitmap & 2),
writable: !(bitmap & 4),
value: value
};
};
/***/ }),
/***/ "../node_modules/core-js/internals/define-built-in.js":
/*!************************************************************!*\
!*** ../node_modules/core-js/internals/define-built-in.js ***!
\************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ "../node_modules/core-js/internals/make-built-in.js");
var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ "../node_modules/core-js/internals/define-global-property.js");
module.exports = function (O, key, value, options) {
if (!options) options = {};
var simple = options.enumerable;
var name = options.name !== undefined ? options.name : key;
if (isCallable(value)) makeBuiltIn(value, name, options);
if (options.global) {
if (simple) O[key] = value;
else defineGlobalProperty(key, value);
} else {
try {
if (!options.unsafe) delete O[key];
else if (O[key]) simple = true;
} catch (error) { /* empty */ }
if (simple) O[key] = value;
else definePropertyModule.f(O, key, {
value: value,
enumerable: false,
configurable: !options.nonConfigurable,
writable: !options.nonWritable
});
} return O;
};
/***/ }),
/***/ "../node_modules/core-js/internals/define-global-property.js":
/*!*******************************************************************!*\
!*** ../node_modules/core-js/internals/define-global-property.js ***!
\*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;
module.exports = function (key, value) {
try {
defineProperty(globalThis, key, { value: value, configurable: true, writable: true });
} catch (error) {
globalThis[key] = value;
} return value;
};
/***/ }),
/***/ "../node_modules/core-js/internals/descriptors.js":
/*!********************************************************!*\
!*** ../node_modules/core-js/internals/descriptors.js ***!
\********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
// Detect IE8's incomplete defineProperty implementation
module.exports = !fails(function () {
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;
});
/***/ }),
/***/ "../node_modules/core-js/internals/document-create-element.js":
/*!********************************************************************!*\
!*** ../node_modules/core-js/internals/document-create-element.js ***!
\********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
var document = globalThis.document;
// typeof document.createElement is 'object' in old IE
var EXISTS = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
return EXISTS ? document.createElement(it) : {};
};
/***/ }),
/***/ "../node_modules/core-js/internals/enum-bug-keys.js":
/*!**********************************************************!*\
!*** ../node_modules/core-js/internals/enum-bug-keys.js ***!
\**********************************************************/
/***/ ((module) => {
"use strict";
// IE8- don't enum bug keys
module.exports = [
'constructor',
'hasOwnProperty',
'isPrototypeOf',
'propertyIsEnumerable',
'toLocaleString',
'toString',
'valueOf'
];
/***/ }),
/***/ "../node_modules/core-js/internals/environment-user-agent.js":
/*!*******************************************************************!*\
!*** ../node_modules/core-js/internals/environment-user-agent.js ***!
\*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var navigator = globalThis.navigator;
var userAgent = navigator && navigator.userAgent;
module.exports = userAgent ? String(userAgent) : '';
/***/ }),
/***/ "../node_modules/core-js/internals/environment-v8-version.js":
/*!*******************************************************************!*\
!*** ../node_modules/core-js/internals/environment-v8-version.js ***!
\*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var userAgent = __webpack_require__(/*! ../internals/environment-user-agent */ "../node_modules/core-js/internals/environment-user-agent.js");
var process = globalThis.process;
var Deno = globalThis.Deno;
var versions = process && process.versions || Deno && Deno.version;
var v8 = versions && versions.v8;
var match, version;
if (v8) {
match = v8.split('.');
// in old Chrome, versions of V8 isn't V8 = Chrome / 10
// but their correct versions are not interesting for us
version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
}
// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
// so check `userAgent` even if `.v8` exists, but 0
if (!version && userAgent) {
match = userAgent.match(/Edge\/(\d+)/);
if (!match || match[1] >= 74) {
match = userAgent.match(/Chrome\/(\d+)/);
if (match) version = +match[1];
}
}
module.exports = version;
/***/ }),
/***/ "../node_modules/core-js/internals/export.js":
/*!***************************************************!*\
!*** ../node_modules/core-js/internals/export.js ***!
\***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../node_modules/core-js/internals/object-get-own-property-descriptor.js").f);
var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ "../node_modules/core-js/internals/define-built-in.js");
var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ "../node_modules/core-js/internals/define-global-property.js");
var copyConstructorProperties = __webpack_require__(/*! ../internals/copy-constructor-properties */ "../node_modules/core-js/internals/copy-constructor-properties.js");
var isForced = __webpack_require__(/*! ../internals/is-forced */ "../node_modules/core-js/internals/is-forced.js");
/*
options.target - name of the target object
options.global - target is the global object
options.stat - export as static methods of target
options.proto - export as prototype methods of target
options.real - real prototype method for the `pure` version
options.forced - export even if the native feature is available
options.bind - bind methods to the target, required for the `pure` version
options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
options.unsafe - use the simple assignment of property instead of delete + defineProperty
options.sham - add a flag to not completely full polyfills
options.enumerable - export as enumerable property
options.dontCallGetSet - prevent calling a getter on target
options.name - the .name of the function if it does not match the key
*/
module.exports = function (options, source) {
var TARGET = options.target;
var GLOBAL = options.global;
var STATIC = options.stat;
var FORCED, target, key, targetProperty, sourceProperty, descriptor;
if (GLOBAL) {
target = globalThis;
} else if (STATIC) {
target = globalThis[TARGET] || defineGlobalProperty(TARGET, {});
} else {
target = globalThis[TARGET] && globalThis[TARGET].prototype;
}
if (target) for (key in source) {
sourceProperty = source[key];
if (options.dontCallGetSet) {
descriptor = getOwnPropertyDescriptor(target, key);
targetProperty = descriptor && descriptor.value;
} else targetProperty = target[key];
FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
// contained in target
if (!FORCED && targetProperty !== undefined) {
if (typeof sourceProperty == typeof targetProperty) continue;
copyConstructorProperties(sourceProperty, targetProperty);
}
// add a flag to not completely full polyfills
if (options.sham || (targetProperty && targetProperty.sham)) {
createNonEnumerableProperty(sourceProperty, 'sham', true);
}
defineBuiltIn(target, key, sourceProperty, options);
}
};
/***/ }),
/***/ "../node_modules/core-js/internals/fails.js":
/*!**************************************************!*\
!*** ../node_modules/core-js/internals/fails.js ***!
\**************************************************/
/***/ ((module) => {
"use strict";
module.exports = function (exec) {
try {
return !!exec();
} catch (error) {
return true;
}
};
/***/ }),
/***/ "../node_modules/core-js/internals/function-bind-native.js":
/*!*****************************************************************!*\
!*** ../node_modules/core-js/internals/function-bind-native.js ***!
\*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
module.exports = !fails(function () {
// eslint-disable-next-line es/no-function-prototype-bind -- safe
var test = (function () { /* empty */ }).bind();
// eslint-disable-next-line no-prototype-builtins -- safe
return typeof test != 'function' || test.hasOwnProperty('prototype');
});
/***/ }),
/***/ "../node_modules/core-js/internals/function-call.js":
/*!**********************************************************!*\
!*** ../node_modules/core-js/internals/function-call.js ***!
\**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js");
var call = Function.prototype.call;
module.exports = NATIVE_BIND ? call.bind(call) : function () {
return call.apply(call, arguments);
};
/***/ }),
/***/ "../node_modules/core-js/internals/function-name.js":
/*!**********************************************************!*\
!*** ../node_modules/core-js/internals/function-name.js ***!
\**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var FunctionPrototype = Function.prototype;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;
var EXISTS = hasOwn(FunctionPrototype, 'name');
// additional protection from minified / mangled / dropped function names
var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));
module.exports = {
EXISTS: EXISTS,
PROPER: PROPER,
CONFIGURABLE: CONFIGURABLE
};
/***/ }),
/***/ "../node_modules/core-js/internals/function-uncurry-this.js":
/*!******************************************************************!*\
!*** ../node_modules/core-js/internals/function-uncurry-this.js ***!
\******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js");
var FunctionPrototype = Function.prototype;
var call = FunctionPrototype.call;
var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);
module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
return function () {
return call.apply(fn, arguments);
};
};
/***/ }),
/***/ "../node_modules/core-js/internals/get-built-in.js":
/*!*********************************************************!*\
!*** ../node_modules/core-js/internals/get-built-in.js ***!
\*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var aFunction = function (argument) {
return isCallable(argument) ? argument : undefined;
};
module.exports = function (namespace, method) {
return arguments.length < 2 ? aFunction(globalThis[namespace]) : globalThis[namespace] && globalThis[namespace][method];
};
/***/ }),
/***/ "../node_modules/core-js/internals/get-method.js":
/*!*******************************************************!*\
!*** ../node_modules/core-js/internals/get-method.js ***!
\*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js");
var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ "../node_modules/core-js/internals/is-null-or-undefined.js");
// `GetMethod` abstract operation
// https://tc39.es/ecma262/#sec-getmethod
module.exports = function (V, P) {
var func = V[P];
return isNullOrUndefined(func) ? undefined : aCallable(func);
};
/***/ }),
/***/ "../node_modules/core-js/internals/global-this.js":
/*!********************************************************!*\
!*** ../node_modules/core-js/internals/global-this.js ***!
\********************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
var check = function (it) {
return it && it.Math === Math && it;
};
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
module.exports =
// eslint-disable-next-line es/no-global-this -- safe
check(typeof globalThis == 'object' && globalThis) ||
check(typeof window == 'object' && window) ||
// eslint-disable-next-line no-restricted-globals -- safe
check(typeof self == 'object' && self) ||
check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) ||
check(typeof this == 'object' && this) ||
// eslint-disable-next-line no-new-func -- fallback
(function () { return this; })() || Function('return this')();
/***/ }),
/***/ "../node_modules/core-js/internals/has-own-property.js":
/*!*************************************************************!*\
!*** ../node_modules/core-js/internals/has-own-property.js ***!
\*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var toObject = __webpack_require__(/*! ../internals/to-object */ "../node_modules/core-js/internals/to-object.js");
var hasOwnProperty = uncurryThis({}.hasOwnProperty);
// `HasOwnProperty` abstract operation
// https://tc39.es/ecma262/#sec-hasownproperty
// eslint-disable-next-line es/no-object-hasown -- safe
module.exports = Object.hasOwn || function hasOwn(it, key) {
return hasOwnProperty(toObject(it), key);
};
/***/ }),
/***/ "../node_modules/core-js/internals/hidden-keys.js":
/*!********************************************************!*\
!*** ../node_modules/core-js/internals/hidden-keys.js ***!
\********************************************************/
/***/ ((module) => {
"use strict";
module.exports = {};
/***/ }),
/***/ "../node_modules/core-js/internals/html.js":
/*!*************************************************!*\
!*** ../node_modules/core-js/internals/html.js ***!
\*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
module.exports = getBuiltIn('document', 'documentElement');
/***/ }),
/***/ "../node_modules/core-js/internals/ie8-dom-define.js":
/*!***********************************************************!*\
!*** ../node_modules/core-js/internals/ie8-dom-define.js ***!
\***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
var createElement = __webpack_require__(/*! ../internals/document-create-element */ "../node_modules/core-js/internals/document-create-element.js");
// Thanks to IE8 for its funny defineProperty
module.exports = !DESCRIPTORS && !fails(function () {
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
return Object.defineProperty(createElement('div'), 'a', {
get: function () { return 7; }
}).a !== 7;
});
/***/ }),
/***/ "../node_modules/core-js/internals/indexed-object.js":
/*!***********************************************************!*\
!*** ../node_modules/core-js/internals/indexed-object.js ***!
\***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
var classof = __webpack_require__(/*! ../internals/classof-raw */ "../node_modules/core-js/internals/classof-raw.js");
var $Object = Object;
var split = uncurryThis(''.split);
// fallback for non-array-like ES3 and non-enumerable old V8 strings
module.exports = fails(function () {
// throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
// eslint-disable-next-line no-prototype-builtins -- safe
return !$Object('z').propertyIsEnumerable(0);
}) ? function (it) {
return classof(it) === 'String' ? split(it, '') : $Object(it);
} : $Object;
/***/ }),
/***/ "../node_modules/core-js/internals/inspect-source.js":
/*!***********************************************************!*\
!*** ../node_modules/core-js/internals/inspect-source.js ***!
\***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var store = __webpack_require__(/*! ../internals/shared-store */ "../node_modules/core-js/internals/shared-store.js");
var functionToString = uncurryThis(Function.toString);
// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
if (!isCallable(store.inspectSource)) {
store.inspectSource = function (it) {
return functionToString(it);
};
}
module.exports = store.inspectSource;
/***/ }),
/***/ "../node_modules/core-js/internals/internal-state.js":
/*!***********************************************************!*\
!*** ../node_modules/core-js/internals/internal-state.js ***!
\***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var NATIVE_WEAK_MAP = __webpack_require__(/*! ../internals/weak-map-basic-detection */ "../node_modules/core-js/internals/weak-map-basic-detection.js");
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var shared = __webpack_require__(/*! ../internals/shared-store */ "../node_modules/core-js/internals/shared-store.js");
var sharedKey = __webpack_require__(/*! ../internals/shared-key */ "../node_modules/core-js/internals/shared-key.js");
var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../node_modules/core-js/internals/hidden-keys.js");
var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
var TypeError = globalThis.TypeError;
var WeakMap = globalThis.WeakMap;
var set, get, has;
var enforce = function (it) {
return has(it) ? get(it) : set(it, {});
};
var getterFor = function (TYPE) {
return function (it) {
var state;
if (!isObject(it) || (state = get(it)).type !== TYPE) {
throw new TypeError('Incompatible receiver, ' + TYPE + ' required');
} return state;
};
};
if (NATIVE_WEAK_MAP || shared.state) {
var store = shared.state || (shared.state = new WeakMap());
/* eslint-disable no-self-assign -- prototype methods protection */
store.get = store.get;
store.has = store.has;
store.set = store.set;
/* eslint-enable no-self-assign -- prototype methods protection */
set = function (it, metadata) {
if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
metadata.facade = it;
store.set(it, metadata);
return metadata;
};
get = function (it) {
return store.get(it) || {};
};
has = function (it) {
return store.has(it);
};
} else {
var STATE = sharedKey('state');
hiddenKeys[STATE] = true;
set = function (it, metadata) {
if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
metadata.facade = it;
createNonEnumerableProperty(it, STATE, metadata);
return metadata;
};
get = function (it) {
return hasOwn(it, STATE) ? it[STATE] : {};
};
has = function (it) {
return hasOwn(it, STATE);
};
}
module.exports = {
set: set,
get: get,
has: has,
enforce: enforce,
getterFor: getterFor
};
/***/ }),
/***/ "../node_modules/core-js/internals/is-callable.js":
/*!********************************************************!*\
!*** ../node_modules/core-js/internals/is-callable.js ***!
\********************************************************/
/***/ ((module) => {
"use strict";
// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
var documentAll = typeof document == 'object' && document.all;
// `IsCallable` abstract operation
// https://tc39.es/ecma262/#sec-iscallable
// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing
module.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {
return typeof argument == 'function' || argument === documentAll;
} : function (argument) {
return typeof argument == 'function';
};
/***/ }),
/***/ "../node_modules/core-js/internals/is-forced.js":
/*!******************************************************!*\
!*** ../node_modules/core-js/internals/is-forced.js ***!
\******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var replacement = /#|\.prototype\./;
var isForced = function (feature, detection) {
var value = data[normalize(feature)];
return value === POLYFILL ? true
: value === NATIVE ? false
: isCallable(detection) ? fails(detection)
: !!detection;
};
var normalize = isForced.normalize = function (string) {
return String(string).replace(replacement, '.').toLowerCase();
};
var data = isForced.data = {};
var NATIVE = isForced.NATIVE = 'N';
var POLYFILL = isForced.POLYFILL = 'P';
module.exports = isForced;
/***/ }),
/***/ "../node_modules/core-js/internals/is-null-or-undefined.js":
/*!*****************************************************************!*\
!*** ../node_modules/core-js/internals/is-null-or-undefined.js ***!
\*****************************************************************/
/***/ ((module) => {
"use strict";
// we can't use just `it == null` since of `document.all` special case
// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
module.exports = function (it) {
return it === null || it === undefined;
};
/***/ }),
/***/ "../node_modules/core-js/internals/is-object.js":
/*!******************************************************!*\
!*** ../node_modules/core-js/internals/is-object.js ***!
\******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
module.exports = function (it) {
return typeof it == 'object' ? it !== null : isCallable(it);
};
/***/ }),
/***/ "../node_modules/core-js/internals/is-pure.js":
/*!****************************************************!*\
!*** ../node_modules/core-js/internals/is-pure.js ***!
\****************************************************/
/***/ ((module) => {
"use strict";
module.exports = false;
/***/ }),
/***/ "../node_modules/core-js/internals/is-symbol.js":
/*!******************************************************!*\
!*** ../node_modules/core-js/internals/is-symbol.js ***!
\******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ "../node_modules/core-js/internals/object-is-prototype-of.js");
var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ "../node_modules/core-js/internals/use-symbol-as-uid.js");
var $Object = Object;
module.exports = USE_SYMBOL_AS_UID ? function (it) {
return typeof it == 'symbol';
} : function (it) {
var $Symbol = getBuiltIn('Symbol');
return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
};
/***/ }),
/***/ "../node_modules/core-js/internals/length-of-array-like.js":
/*!*****************************************************************!*\
!*** ../node_modules/core-js/internals/length-of-array-like.js ***!
\*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var toLength = __webpack_require__(/*! ../internals/to-length */ "../node_modules/core-js/internals/to-length.js");
// `LengthOfArrayLike` abstract operation
// https://tc39.es/ecma262/#sec-lengthofarraylike
module.exports = function (obj) {
return toLength(obj.length);
};
/***/ }),
/***/ "../node_modules/core-js/internals/make-built-in.js":
/*!**********************************************************!*\
!*** ../node_modules/core-js/internals/make-built-in.js ***!
\**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ "../node_modules/core-js/internals/function-name.js").CONFIGURABLE);
var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ "../node_modules/core-js/internals/inspect-source.js");
var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../node_modules/core-js/internals/internal-state.js");
var enforceInternalState = InternalStateModule.enforce;
var getInternalState = InternalStateModule.get;
var $String = String;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;
var stringSlice = uncurryThis(''.slice);
var replace = uncurryThis(''.replace);
var join = uncurryThis([].join);
var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {
return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
});
var TEMPLATE = String(String).split('String');
var makeBuiltIn = module.exports = function (value, name, options) {
if (stringSlice($String(name), 0, 7) === 'Symbol(') {
name = '[' + replace($String(name), /^Symbol\(([^)]*)\).*$/, '$1') + ']';
}
if (options && options.getter) name = 'get ' + name;
if (options && options.setter) name = 'set ' + name;
if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });
else value.name = name;
}
if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {
defineProperty(value, 'length', { value: options.arity });
}
try {
if (options && hasOwn(options, 'constructor') && options.constructor) {
if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });
// in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable
} else if (value.prototype) value.prototype = undefined;
} catch (error) { /* empty */ }
var state = enforceInternalState(value);
if (!hasOwn(state, 'source')) {
state.source = join(TEMPLATE, typeof name == 'string' ? name : '');
} return value;
};
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
// eslint-disable-next-line no-extend-native -- required
Function.prototype.toString = makeBuiltIn(function toString() {
return isCallable(this) && getInternalState(this).source || inspectSource(this);
}, 'toString');
/***/ }),
/***/ "../node_modules/core-js/internals/math-trunc.js":
/*!*******************************************************!*\
!*** ../node_modules/core-js/internals/math-trunc.js ***!
\*******************************************************/
/***/ ((module) => {
"use strict";
var ceil = Math.ceil;
var floor = Math.floor;
// `Math.trunc` method
// https://tc39.es/ecma262/#sec-math.trunc
// eslint-disable-next-line es/no-math-trunc -- safe
module.exports = Math.trunc || function trunc(x) {
var n = +x;
return (n > 0 ? floor : ceil)(n);
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-create.js":
/*!**********************************************************!*\
!*** ../node_modules/core-js/internals/object-create.js ***!
\**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
/* global ActiveXObject -- old IE, WSH */
var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
var definePropertiesModule = __webpack_require__(/*! ../internals/object-define-properties */ "../node_modules/core-js/internals/object-define-properties.js");
var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../node_modules/core-js/internals/enum-bug-keys.js");
var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../node_modules/core-js/internals/hidden-keys.js");
var html = __webpack_require__(/*! ../internals/html */ "../node_modules/core-js/internals/html.js");
var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ "../node_modules/core-js/internals/document-create-element.js");
var sharedKey = __webpack_require__(/*! ../internals/shared-key */ "../node_modules/core-js/internals/shared-key.js");
var GT = '>';
var LT = '<';
var PROTOTYPE = 'prototype';
var SCRIPT = 'script';
var IE_PROTO = sharedKey('IE_PROTO');
var EmptyConstructor = function () { /* empty */ };
var scriptTag = function (content) {
return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
};
// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
var NullProtoObjectViaActiveX = function (activeXDocument) {
activeXDocument.write(scriptTag(''));
activeXDocument.close();
var temp = activeXDocument.parentWindow.Object;
// eslint-disable-next-line no-useless-assignment -- avoid memory leak
activeXDocument = null;
return temp;
};
// Create object with fake `null` prototype: use iframe Object with cleared prototype
var NullProtoObjectViaIFrame = function () {
// Thrash, waste and sodomy: IE GC bug
var iframe = documentCreateElement('iframe');
var JS = 'java' + SCRIPT + ':';
var iframeDocument;
iframe.style.display = 'none';
html.appendChild(iframe);
// https://github.com/zloirock/core-js/issues/475
iframe.src = String(JS);
iframeDocument = iframe.contentWindow.document;
iframeDocument.open();
iframeDocument.write(scriptTag('document.F=Object'));
iframeDocument.close();
return iframeDocument.F;
};
// Check for document.domain and active x support
// No need to use active x approach when document.domain is not set
// see https://github.com/es-shims/es5-shim/issues/150
// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
// avoid IE GC bug
var activeXDocument;
var NullProtoObject = function () {
try {
activeXDocument = new ActiveXObject('htmlfile');
} catch (error) { /* ignore */ }
NullProtoObject = typeof document != 'undefined'
? document.domain && activeXDocument
? NullProtoObjectViaActiveX(activeXDocument) // old IE
: NullProtoObjectViaIFrame()
: NullProtoObjectViaActiveX(activeXDocument); // WSH
var length = enumBugKeys.length;
while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
return NullProtoObject();
};
hiddenKeys[IE_PROTO] = true;
// `Object.create` method
// https://tc39.es/ecma262/#sec-object.create
// eslint-disable-next-line es/no-object-create -- safe
module.exports = Object.create || function create(O, Properties) {
var result;
if (O !== null) {
EmptyConstructor[PROTOTYPE] = anObject(O);
result = new EmptyConstructor();
EmptyConstructor[PROTOTYPE] = null;
// add "__proto__" for Object.getPrototypeOf polyfill
result[IE_PROTO] = O;
} else result = NullProtoObject();
return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-define-properties.js":
/*!*********************************************************************!*\
!*** ../node_modules/core-js/internals/object-define-properties.js ***!
\*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ "../node_modules/core-js/internals/v8-prototype-define-bug.js");
var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
var objectKeys = __webpack_require__(/*! ../internals/object-keys */ "../node_modules/core-js/internals/object-keys.js");
// `Object.defineProperties` method
// https://tc39.es/ecma262/#sec-object.defineproperties
// eslint-disable-next-line es/no-object-defineproperties -- safe
exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
anObject(O);
var props = toIndexedObject(Properties);
var keys = objectKeys(Properties);
var length = keys.length;
var index = 0;
var key;
while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);
return O;
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-define-property.js":
/*!*******************************************************************!*\
!*** ../node_modules/core-js/internals/object-define-property.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ "../node_modules/core-js/internals/ie8-dom-define.js");
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ "../node_modules/core-js/internals/v8-prototype-define-bug.js");
var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ "../node_modules/core-js/internals/to-property-key.js");
var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var $defineProperty = Object.defineProperty;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
var ENUMERABLE = 'enumerable';
var CONFIGURABLE = 'configurable';
var WRITABLE = 'writable';
// `Object.defineProperty` method
// https://tc39.es/ecma262/#sec-object.defineproperty
exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {
anObject(O);
P = toPropertyKey(P);
anObject(Attributes);
if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
var current = $getOwnPropertyDescriptor(O, P);
if (current && current[WRITABLE]) {
O[P] = Attributes.value;
Attributes = {
configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],
enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
writable: false
};
}
} return $defineProperty(O, P, Attributes);
} : $defineProperty : function defineProperty(O, P, Attributes) {
anObject(O);
P = toPropertyKey(P);
anObject(Attributes);
if (IE8_DOM_DEFINE) try {
return $defineProperty(O, P, Attributes);
} catch (error) { /* empty */ }
if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');
if ('value' in Attributes) O[P] = Attributes.value;
return O;
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-get-own-property-descriptor.js":
/*!*******************************************************************************!*\
!*** ../node_modules/core-js/internals/object-get-own-property-descriptor.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js");
var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ "../node_modules/core-js/internals/object-property-is-enumerable.js");
var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ "../node_modules/core-js/internals/to-property-key.js");
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ "../node_modules/core-js/internals/ie8-dom-define.js");
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
// `Object.getOwnPropertyDescriptor` method
// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
O = toIndexedObject(O);
P = toPropertyKey(P);
if (IE8_DOM_DEFINE) try {
return $getOwnPropertyDescriptor(O, P);
} catch (error) { /* empty */ }
if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-get-own-property-names.js":
/*!**************************************************************************!*\
!*** ../node_modules/core-js/internals/object-get-own-property-names.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ "../node_modules/core-js/internals/object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../node_modules/core-js/internals/enum-bug-keys.js");
var hiddenKeys = enumBugKeys.concat('length', 'prototype');
// `Object.getOwnPropertyNames` method
// https://tc39.es/ecma262/#sec-object.getownpropertynames
// eslint-disable-next-line es/no-object-getownpropertynames -- safe
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
return internalObjectKeys(O, hiddenKeys);
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-get-own-property-symbols.js":
/*!****************************************************************************!*\
!*** ../node_modules/core-js/internals/object-get-own-property-symbols.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
exports.f = Object.getOwnPropertySymbols;
/***/ }),
/***/ "../node_modules/core-js/internals/object-is-prototype-of.js":
/*!*******************************************************************!*\
!*** ../node_modules/core-js/internals/object-is-prototype-of.js ***!
\*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
module.exports = uncurryThis({}.isPrototypeOf);
/***/ }),
/***/ "../node_modules/core-js/internals/object-keys-internal.js":
/*!*****************************************************************!*\
!*** ../node_modules/core-js/internals/object-keys-internal.js ***!
\*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
var indexOf = (__webpack_require__(/*! ../internals/array-includes */ "../node_modules/core-js/internals/array-includes.js").indexOf);
var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../node_modules/core-js/internals/hidden-keys.js");
var push = uncurryThis([].push);
module.exports = function (object, names) {
var O = toIndexedObject(object);
var i = 0;
var result = [];
var key;
for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);
// Don't enum bug & hidden keys
while (names.length > i) if (hasOwn(O, key = names[i++])) {
~indexOf(result, key) || push(result, key);
}
return result;
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-keys.js":
/*!********************************************************!*\
!*** ../node_modules/core-js/internals/object-keys.js ***!
\********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ "../node_modules/core-js/internals/object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../node_modules/core-js/internals/enum-bug-keys.js");
// `Object.keys` method
// https://tc39.es/ecma262/#sec-object.keys
// eslint-disable-next-line es/no-object-keys -- safe
module.exports = Object.keys || function keys(O) {
return internalObjectKeys(O, enumBugKeys);
};
/***/ }),
/***/ "../node_modules/core-js/internals/object-property-is-enumerable.js":
/*!**************************************************************************!*\
!*** ../node_modules/core-js/internals/object-property-is-enumerable.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
var $propertyIsEnumerable = {}.propertyIsEnumerable;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
// Nashorn ~ JDK8 bug
var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);
// `Object.prototype.propertyIsEnumerable` method implementation
// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
var descriptor = getOwnPropertyDescriptor(this, V);
return !!descriptor && descriptor.enumerable;
} : $propertyIsEnumerable;
/***/ }),
/***/ "../node_modules/core-js/internals/ordinary-to-primitive.js":
/*!******************************************************************!*\
!*** ../node_modules/core-js/internals/ordinary-to-primitive.js ***!
\******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
var $TypeError = TypeError;
// `OrdinaryToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-ordinarytoprimitive
module.exports = function (input, pref) {
var fn, val;
if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
throw new $TypeError("Can't convert object to primitive value");
};
/***/ }),
/***/ "../node_modules/core-js/internals/own-keys.js":
/*!*****************************************************!*\
!*** ../node_modules/core-js/internals/own-keys.js ***!
\*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var getOwnPropertyNamesModule = __webpack_require__(/*! ../internals/object-get-own-property-names */ "../node_modules/core-js/internals/object-get-own-property-names.js");
var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ "../node_modules/core-js/internals/object-get-own-property-symbols.js");
var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
var concat = uncurryThis([].concat);
// all object keys, includes non-enumerable and symbols
module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
var keys = getOwnPropertyNamesModule.f(anObject(it));
var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;
};
/***/ }),
/***/ "../node_modules/core-js/internals/require-object-coercible.js":
/*!*********************************************************************!*\
!*** ../node_modules/core-js/internals/require-object-coercible.js ***!
\*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ "../node_modules/core-js/internals/is-null-or-undefined.js");
var $TypeError = TypeError;
// `RequireObjectCoercible` abstract operation
// https://tc39.es/ecma262/#sec-requireobjectcoercible
module.exports = function (it) {
if (isNullOrUndefined(it)) throw new $TypeError("Can't call method on " + it);
return it;
};
/***/ }),
/***/ "../node_modules/core-js/internals/shared-key.js":
/*!*******************************************************!*\
!*** ../node_modules/core-js/internals/shared-key.js ***!
\*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var shared = __webpack_require__(/*! ../internals/shared */ "../node_modules/core-js/internals/shared.js");
var uid = __webpack_require__(/*! ../internals/uid */ "../node_modules/core-js/internals/uid.js");
var keys = shared('keys');
module.exports = function (key) {
return keys[key] || (keys[key] = uid(key));
};
/***/ }),
/***/ "../node_modules/core-js/internals/shared-store.js":
/*!*********************************************************!*\
!*** ../node_modules/core-js/internals/shared-store.js ***!
\*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js");
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ "../node_modules/core-js/internals/define-global-property.js");
var SHARED = '__core-js_shared__';
var store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
(store.versions || (store.versions = [])).push({
version: '3.38.1',
mode: IS_PURE ? 'pure' : 'global',
copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
license: 'https://github.com/zloirock/core-js/blob/v3.38.1/LICENSE',
source: 'https://github.com/zloirock/core-js'
});
/***/ }),
/***/ "../node_modules/core-js/internals/shared.js":
/*!***************************************************!*\
!*** ../node_modules/core-js/internals/shared.js ***!
\***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var store = __webpack_require__(/*! ../internals/shared-store */ "../node_modules/core-js/internals/shared-store.js");
module.exports = function (key, value) {
return store[key] || (store[key] = value || {});
};
/***/ }),
/***/ "../node_modules/core-js/internals/symbol-constructor-detection.js":
/*!*************************************************************************!*\
!*** ../node_modules/core-js/internals/symbol-constructor-detection.js ***!
\*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
/* eslint-disable es/no-symbol -- required for testing */
var V8_VERSION = __webpack_require__(/*! ../internals/environment-v8-version */ "../node_modules/core-js/internals/environment-v8-version.js");
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var $String = globalThis.String;
// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
var symbol = Symbol('symbol detection');
// Chrome 38 Symbol has incorrect toString conversion
// `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
// nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
// of course, fail.
return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
// Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
!Symbol.sham && V8_VERSION && V8_VERSION < 41;
});
/***/ }),
/***/ "../node_modules/core-js/internals/to-absolute-index.js":
/*!**************************************************************!*\
!*** ../node_modules/core-js/internals/to-absolute-index.js ***!
\**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ "../node_modules/core-js/internals/to-integer-or-infinity.js");
var max = Math.max;
var min = Math.min;
// Helper for a popular repeating case of the spec:
// Let integer be ? ToInteger(index).
// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
module.exports = function (index, length) {
var integer = toIntegerOrInfinity(index);
return integer < 0 ? max(integer + length, 0) : min(integer, length);
};
/***/ }),
/***/ "../node_modules/core-js/internals/to-indexed-object.js":
/*!**************************************************************!*\
!*** ../node_modules/core-js/internals/to-indexed-object.js ***!
\**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
// toObject with fallback for non-array-like ES3 strings
var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ "../node_modules/core-js/internals/indexed-object.js");
var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../node_modules/core-js/internals/require-object-coercible.js");
module.exports = function (it) {
return IndexedObject(requireObjectCoercible(it));
};
/***/ }),
/***/ "../node_modules/core-js/internals/to-integer-or-infinity.js":
/*!*******************************************************************!*\
!*** ../node_modules/core-js/internals/to-integer-or-infinity.js ***!
\*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var trunc = __webpack_require__(/*! ../internals/math-trunc */ "../node_modules/core-js/internals/math-trunc.js");
// `ToIntegerOrInfinity` abstract operation
// https://tc39.es/ecma262/#sec-tointegerorinfinity
module.exports = function (argument) {
var number = +argument;
// eslint-disable-next-line no-self-compare -- NaN check
return number !== number || number === 0 ? 0 : trunc(number);
};
/***/ }),
/***/ "../node_modules/core-js/internals/to-length.js":
/*!******************************************************!*\
!*** ../node_modules/core-js/internals/to-length.js ***!
\******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ "../node_modules/core-js/internals/to-integer-or-infinity.js");
var min = Math.min;
// `ToLength` abstract operation
// https://tc39.es/ecma262/#sec-tolength
module.exports = function (argument) {
var len = toIntegerOrInfinity(argument);
return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
};
/***/ }),
/***/ "../node_modules/core-js/internals/to-object.js":
/*!******************************************************!*\
!*** ../node_modules/core-js/internals/to-object.js ***!
\******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../node_modules/core-js/internals/require-object-coercible.js");
var $Object = Object;
// `ToObject` abstract operation
// https://tc39.es/ecma262/#sec-toobject
module.exports = function (argument) {
return $Object(requireObjectCoercible(argument));
};
/***/ }),
/***/ "../node_modules/core-js/internals/to-primitive.js":
/*!*********************************************************!*\
!*** ../node_modules/core-js/internals/to-primitive.js ***!
\*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js");
var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ "../node_modules/core-js/internals/is-symbol.js");
var getMethod = __webpack_require__(/*! ../internals/get-method */ "../node_modules/core-js/internals/get-method.js");
var ordinaryToPrimitive = __webpack_require__(/*! ../internals/ordinary-to-primitive */ "../node_modules/core-js/internals/ordinary-to-primitive.js");
var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js");
var $TypeError = TypeError;
var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
// `ToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-toprimitive
module.exports = function (input, pref) {
if (!isObject(input) || isSymbol(input)) return input;
var exoticToPrim = getMethod(input, TO_PRIMITIVE);
var result;
if (exoticToPrim) {
if (pref === undefined) pref = 'default';
result = call(exoticToPrim, input, pref);
if (!isObject(result) || isSymbol(result)) return result;
throw new $TypeError("Can't convert object to primitive value");
}
if (pref === undefined) pref = 'number';
return ordinaryToPrimitive(input, pref);
};
/***/ }),
/***/ "../node_modules/core-js/internals/to-property-key.js":
/*!************************************************************!*\
!*** ../node_modules/core-js/internals/to-property-key.js ***!
\************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../node_modules/core-js/internals/to-primitive.js");
var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ "../node_modules/core-js/internals/is-symbol.js");
// `ToPropertyKey` abstract operation
// https://tc39.es/ecma262/#sec-topropertykey
module.exports = function (argument) {
var key = toPrimitive(argument, 'string');
return isSymbol(key) ? key : key + '';
};
/***/ }),
/***/ "../node_modules/core-js/internals/try-to-string.js":
/*!**********************************************************!*\
!*** ../node_modules/core-js/internals/try-to-string.js ***!
\**********************************************************/
/***/ ((module) => {
"use strict";
var $String = String;
module.exports = function (argument) {
try {
return $String(argument);
} catch (error) {
return 'Object';
}
};
/***/ }),
/***/ "../node_modules/core-js/internals/uid.js":
/*!************************************************!*\
!*** ../node_modules/core-js/internals/uid.js ***!
\************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
var id = 0;
var postfix = Math.random();
var toString = uncurryThis(1.0.toString);
module.exports = function (key) {
return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);
};
/***/ }),
/***/ "../node_modules/core-js/internals/use-symbol-as-uid.js":
/*!**************************************************************!*\
!*** ../node_modules/core-js/internals/use-symbol-as-uid.js ***!
\**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
/* eslint-disable es/no-symbol -- required for testing */
var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ "../node_modules/core-js/internals/symbol-constructor-detection.js");
module.exports = NATIVE_SYMBOL
&& !Symbol.sham
&& typeof Symbol.iterator == 'symbol';
/***/ }),
/***/ "../node_modules/core-js/internals/v8-prototype-define-bug.js":
/*!********************************************************************!*\
!*** ../node_modules/core-js/internals/v8-prototype-define-bug.js ***!
\********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
// V8 ~ Chrome 36-
// https://bugs.chromium.org/p/v8/issues/detail?id=3334
module.exports = DESCRIPTORS && fails(function () {
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
return Object.defineProperty(function () { /* empty */ }, 'prototype', {
value: 42,
writable: false
}).prototype !== 42;
});
/***/ }),
/***/ "../node_modules/core-js/internals/weak-map-basic-detection.js":
/*!*********************************************************************!*\
!*** ../node_modules/core-js/internals/weak-map-basic-detection.js ***!
\*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
var WeakMap = globalThis.WeakMap;
module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));
/***/ }),
/***/ "../node_modules/core-js/internals/well-known-symbol.js":
/*!**************************************************************!*\
!*** ../node_modules/core-js/internals/well-known-symbol.js ***!
\**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
var shared = __webpack_require__(/*! ../internals/shared */ "../node_modules/core-js/internals/shared.js");
var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
var uid = __webpack_require__(/*! ../internals/uid */ "../node_modules/core-js/internals/uid.js");
var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ "../node_modules/core-js/internals/symbol-constructor-detection.js");
var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ "../node_modules/core-js/internals/use-symbol-as-uid.js");
var Symbol = globalThis.Symbol;
var WellKnownSymbolsStore = shared('wks');
var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;
module.exports = function (name) {
if (!hasOwn(WellKnownSymbolsStore, name)) {
WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)
? Symbol[name]
: createWellKnownSymbol('Symbol.' + name);
} return WellKnownSymbolsStore[name];
};
/***/ }),
/***/ "../node_modules/core-js/modules/es.array.includes.js":
/*!************************************************************!*\
!*** ../node_modules/core-js/modules/es.array.includes.js ***!
\************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js");
var $includes = (__webpack_require__(/*! ../internals/array-includes */ "../node_modules/core-js/internals/array-includes.js").includes);
var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
var addToUnscopables = __webpack_require__(/*! ../internals/add-to-unscopables */ "../node_modules/core-js/internals/add-to-unscopables.js");
// FF99+ bug
var BROKEN_ON_SPARSE = fails(function () {
// eslint-disable-next-line es/no-array-prototype-includes -- detection
return !Array(1).includes();
});
// `Array.prototype.includes` method
// https://tc39.es/ecma262/#sec-array.prototype.includes
$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {
includes: function includes(el /* , fromIndex = 0 */) {
return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
}
});
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
addToUnscopables('includes');
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ id: moduleId,
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
/******/ /* webpack/runtime/compat get default export */
/******/ (() => {
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = (module) => {
/******/ var getter = module && module.__esModule ?
/******/ () => (module['default']) :
/******/ () => (module);
/******/ __webpack_require__.d(getter, { a: getter });
/******/ return getter;
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (exports, definition) => {
/******/ for(var key in definition) {
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ }
/******/ }
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/global */
/******/ (() => {
/******/ __webpack_require__.g = (function() {
/******/ if (typeof globalThis === 'object') return globalThis;
/******/ try {
/******/ return this || new Function('return this')();
/******/ } catch (e) {
/******/ if (typeof window === 'object') return window;
/******/ }
/******/ })();
/******/ })();
/******/
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
var exports = __webpack_exports__;
/*!******************************************************************!*\
!*** ../modules/page-transitions/assets/js/frontend/frontend.js ***!
\******************************************************************/
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
var _components = __webpack_require__(/*! ./components */ "../modules/page-transitions/assets/js/frontend/components/index.js");
class PageTransitionsFrontend {
/**
* Initialize the module.
*
* @return {void}
*/
constructor() {
customElements.define('e-preloader', _components.Preloader);
customElements.define('e-page-transition', _components.PageTransition);
}
}
exports["default"] = PageTransitionsFrontend;
new PageTransitionsFrontend();
})();
/******/ })()
;
//# sourceMappingURL=page-transitions.js.map
The Tribune - Page 463 of 1367 - Published by the SPT, a student society of McGill University
Latest News
Mat Kuntz is an American Sign Language (ASL) teacher who works with several organizations including Seeing Voices , which seek to make communities more deaf-aware and deaf-accessible. On Oct. 15, he presented the basics of queer ASL to attendees at Wilson Hall. After a short introduction by Meryem Benslimane, equity education advisor and chair of the planning committee of Queer History Month, Kuntz took the stage. Kuntz, who is queer and hearing-impaired, gave the lecture completely in ASL, with Sandra Saoumaa serving as an interpreter.
Kuntz first emphasized that ASL is only one of many sign languages across the world.
“Canada has two sign languages, ASL and LSQ, which stands for ‘Langue Signe Québécoise’,” Kuntz signed. “These languages were finally recognized under Bill C-81 as a primary languages for deaf people. Now that the government has recognized [sign language ], we can make some changes [in how deaf people are expected to conform to hearing society].”
Kuntz explained some of the difficulties deaf individuals face in everyday life. Since ASL is not widely taught, many spaces remain inaccessible for its users if an interpreter is not present. Even job interviews can be impossible unless someone else is there to translate.
“There is a lot of frustration around the lack of accessibility,” Kuntz signed. “Communication is always an issue and I don’t always have the time [to educate everyone I meet]. So we are working on building awareness for that, and training [people] to make things more deaf-accessible. I want to expose [people] to deaf culture and raise awareness about deaf people’s access and needs.”
When teaching ASL, Kuntz went over each sign slowly and carefully, demonstrating it several times. He encouraged the audience to practice, giving everyone a chance to repeat the sign until they felt comfortable. Kuntz also provided everyone with a paper handout with pictures of the signs before he proceeded to do demonstrations.
Kuntz introduced signs for a wide range of queer topics, from gender to sexuality. He presented all of the official queer signs, including words for “fluid,” “spectrum,” and “drag queen/king.” However, Kuntz pointed out that the list was by no means complete, lacking terms like “nonbinary,” for example.
“The deaf community is behind in coming up with signs for everything, so just give us time to catch up with the vocabulary,” Kuntz signed.
At the end, Kuntz thanked everyone for coming, and participants responded by raising their hands and wiggling them, the ASL sign for applause.
While this workshop was only a brief introduction into ASL, there are many opportunities to continue learning sign language. Kuntz teaches sign language courses of different levels at the Canadian Hearing Society , which he recommends for anyone trying to learn more.
Jim Mejino, U4 Arts, and the main coordinator of this event, said that the idea for an an ASL event as part of Queer History Month plays an important role in raising awareness about intersectionality within the queer community.
“[Queer History Month] works with the Union for Gender Empowerment, and part of our mandate is intersectionality,” Megino said. “We want to celebrate the community and bring more awareness and education about how disability and queerness affects people.”
Benslimane stressed the importance of including events that address queer individuals with disabilities.
“Last year was the first edition of Queer History Month,” Benslimane said. “[We] wanted to have an event talking about being queer and folks with disabilities, so to have an event around queer ASL made sense [.…] We wanted to make the calendar as inclusive as possible. That is also why we decided to have it again this year.”
More in Campus Spotlight:
As the long Montreal winter approaches, students are dreading the months of monochrome monotony to come, from cement buildings to white walls. The SSMU Environment Committee, in partnership with Montreal-based hydroponics company Nutritower and the Sustainability Projects Fund, hopes to change that by bringing greenery to residence cafeterias. Sustainability Commissioner Dasha Gousseva started the project last year. She explained how the hydroponic system that underpins the towers works.
“The idea of hydroponic gardening, and these vertical towers specifically, is very low-input local agriculture that maintains itself in a closed system,” Gousseva said. “Plants, instead of needing soil, [get] fertilizer and nutrients from the water itself, [which] is pumped through a system that comes included in the towers [….] LED lights installed in the tower [provide plants with lighting].”
With help from students alongside SSMU Environment Committee members and a representative from Nutritower, the vertical gardens setup event on Saturday revealed the towers for the first time. The team set up towers in three McGill residence cafeterias: Royal Victoria College, New Residence Hall, and Bishop Mountain Hall. Locating the towers in dining halls will allow for the vertical gardens to serve as both an educator about the process of growing food and an actual food source. Given that harvests will be small in comparison to the number of students who frequent these cafeterias, the project plans to incorporate cafeteria-grown produce and herbs into side dishes.
“[We’re currently growing] leafy greens and herbs, which include lettuce, kale, parsley, [and] basil,” Gousseva said. “We’re even trying [to grow] some tomatoes.”
In the future, the SSMU Environment Committee plans to borrow seeds from the MacDonald Campus seed library to expand the range of produce being grown. The Nutritower system allows for plenty of flexibility for what can be grown, which was one reason the Montreal-based company was chosen for the project.
Nutritower was founded by Montrealer Bryce Nagels in 2014, who grew up with fresh produce and was inspired to introduce gardening to city-dwellers. Originally launched on Kickstarter , the growing hydroponics company seeks to address climate change and urban population growth issues. In his campaign statement, Nagels expressed that to secure our future, we must embrace creative technological solutions to feed our population, and that his vertical gardens could be a step in the right direction, however small. He contextualizes Nutritower within the global trend toward a greater proportion of the population living in urban areas and hopes that it will help people better adapt to this transition by bringing home food production to people living in cities.
“[Nutritower’s] goals aligned […] closely with [ours], those goals being to connect people to their food systems and to educate people about how food is grown because [many] don’t realize the steps and all the inputs it takes to get something from [farm to table],” Gousseva said. “They’re also focused on education, primarily [young] students, but they’re also working with universities. [Since they’re also] local, it made working together easy and […] sustainable.”
The vertical gardens will also incorporate much-needed greenery into residence spaces as part of a campus-wide trend toward adding plants to academic spaces. The Sustainability Projects Fund has backed a number of related projects, including the Spin Bike Gardens and Garden Inside , which placed three Nutritowers in the Office for Students with Disabilities (OSD).
The project will also complement existing sustainability initiatives in McGill residence cafeterias, including Waste Educators and Local Food Days , which incorporates seasonal produce and other ingredients from less than 500 kilometres away.
Gousseva plans to work with Student Housing and Hospitality Services to create educational opportunities around the towers and hopes that students will continue to follow the vertical gardens’ progress. Future harvesting events will be posted to the SSMU Environment Committee Facebook page .
Roast chicken is, in my opinion, the best dinner ever—full stop. Not only does it taste incredible, but it’s versatile: One chicken can become a week’s worth of dinners, a few days of lunches, and, eventually, it can simmer down into stock for soup. It’s the meal prepper’s dream. Below, you’ll find a particularly adaptable roast chicken recipe, a few ways to use it, and a knockout side dish.
Ingredients:
1 chicken
1 bunch rosemary
1 lemon, cut in half
5–6 garlic cloves
2 large onions, chopped into medallions
Oil (preferably olive)
Salt
Pepper
Optional spices:
Cayenne
Steak spice
Paprika
Preheat oven to 425°F.
Pat the chicken dry with paper towels. Season with salt and let sit for 30 minutes to allow salt to permeate.
Give the chicken a coating of oil and rub it to ensure that it’s fully coated.
Season with other spices and herbs to give an even coating.
Bruise the rosemary with the blunt side of a knife and place inside the chicken cavity along with two cloves of garlic and a lemon slice.
Lay onion medallions flat on bottom of skillet or sheet pan. (If using a sheet pan, only cover the area where the chicken will be).
Put the chicken on top of onions. Place lemon cut-side down on the pan (not on onions) and add two to three cloves of garlic around the outside.
Roast for 60 minutes. Let sit for 30 minutes before carving.
Smashed potatoes
Anyone can roast veggies, but if you’re looking to upgrade your basic potatoes as a side for chicken or on its own, smashed potatoes are the way to go. This extra bit of effort yields a dish with all the best qualities of both roasted and mashed potatoes.
1 lb baby potatoes
Salt
Pepper
Oil
Preheat oven to 425°F.
Fill a large pot halfway with water and bring to a boil.
Wash potatoes and add to pot. Let boil for 30-40 minutes until potatoes are soft, but not entirely mushy. You should be able to flatten a potato without it crumbling.
Drain water and cover potatoes with oil and season with salt and pepper. The potatoes will be hot so use caution and, if needed, wait for them to cool.
Once potatoes are cooled and seasoned, place on a baking tray. Using a wooden spoon, press down on each potato to flatten it so that the outside crumbles a little, but the potato remains mostly intact. Alternatively, to smash them all at once, use a second baking tray to push down, flattening them all.
Roast again for 15-20 minutes until the outsides are crisp and golden. Serve warm alongside roast chicken.
Quick Leftover Fixes
Chicken BLT
1 chicken breast (roasted)
2 slices of bread
Bacon
Lettuce
Tomato
Toast the bread and butter each side. Put the bread butter-side down on a pan on medium heat until it’s golden brown. Assemble the BLT with chicken on top.
Chicken stock
1 leftover chicken carcass
2 carrots, sliced into medallions
2 stalks of celery, sliced, with greens
2 tbsp salt
Pepper
Place the chicken in a large pot and cover with cold water. Bring to a simmer. Add veggies, salt, and pepper and let simmer for two hours until broth has a pale colour. Use a pair of tongs to remove the larger pieces of vegetables and chicken, then strain to remove everything else. This dish can be stored frozen for months.
More in Science & Technology:
Paleontology has long offered scientists insight into the mysteries of prehistory. Through excavations of colossal skeletons, petrified insects, and fossilized plants, researchers can uncover what life looked like long ago.
Despite the extensive study of animals from the Cretaceous period, which stretched from 145.5 million years ago to the dinosaur extinction 65.5 million years ago, little is known about the climate of this time, especially in regions of eastern Canada. Researchers at the McGill Redpath Museum have taken a different approach to filling in these gaps in knowledge, using paleobotany, the study of fossilized plants.
“The fossil record is rich in assemblages of fern, angiosperm, and conifer leaves that offer clues about the plant diversity of past ecosystems,” Alexandre Demers-Potvin, a graduate student and 2018 National Geographic Explorer, wrote in an email to The McGill Tribune. “Not only do fossil plants offer a glimpse of the vegetation of past landscapes, but some of them […] can be used to predict the climate of that past landscape.”
This past summer, Demers-Potvin, the lead author of a recent study on paleoclimate reconstruction, and a team of researchers under the supervision of Professor Hans Larsson, director of the Redpath Museum, headed to Schefferville, a town near the Quebec-Labrador border. Among the researchers were Noemie Sheppard, an undergraduate student in Environment, and Michel Chartier and Mario Cournoyer, co-founders of Montreal’s Musée de paléontologie et de l’evolution (MPE), which also supported the study. They centred their analysis on insect fossils and angiosperm, or flowering plant, specimens from the region, known as the Redmond flora.
Among the ruins of an abandoned mine, the team found remnants of angiosperms preserved in sedimentary rock, which served as their first clue to what environmental conditions were like in the Late Cretaceous. The composition of the rocks and the fossils’ broad leaves suggest that they formed at the bottom of a lake surrounded by a forest.
Demers-Potvin and Larsson discovered that Schefferville experienced an average yearly temperature of 13 to 17 degrees Celsius during the Late Cretaceous. Although this would have been on the cooler side for North America at the time, the creatures there would have enjoyed moderate humidity and hot summers.
Remarkably, this data was extracted from plant leaves. Since flowering plants of the Cretaceous are anatomically similar to ones today, the researchers can extrapolate climate information from the fossilized plants in the same way that they can deduce this information from modern-day plants. Demers-Potvin and his team derived elements of the bygone environment using a tool called Climate Leaf Analysis Multivariate Program (CLAMP) .
“[CLAMP] rests on the premise that some anatomical traits in leaves are correlated to some climate parameters [such as] temperature [or] precipitation,” Demers-Potvin wrote.
As a system of data analysis, CLAMP uses a scoring method to track the ways in which modern plants adapt to their environment. Referencing fossil records, it then works backward to associate the same traits in older plants to their potential environmental context. The results can be used to understand the effects that drastic climate change had on species thousands of years ago, and how this translates to potential effects on species in today’s climate crisis.
In addition to sampling with CLAMP, the research team unearthed 15 new plant species that were previously unknown to the region. Surprisingly, the taxonomic record of the Redmond flora had not been measured in any meaningful capacity since the 1960s.
Beyond the Creataceous explorations led by Demers-Potvin, who aims to continue the team’s research with insect fossils found in Schefferville, Larsson is overseeing multiple evolutionary field projects, ranging from studies of alligators off the coast of Mexico to Dinosaur Provincial Park in Alberta. Larsson thanked the Redpath Museum for allowing researchers to explore diverse interests.
“None of this would be possible without the Redpath Museum,” Professor Larsson said. “You’re not siloed in here.”
The Visual Arts Visuels’ (VAV) exhibition space at Concordia University may appear modest in its size and spare curation, but the industrial, L-shaped room presents artwork with the same sense of ambition as those found in venues like the MAC and MMFA. It affirms that artistry isn’t found solely in institutions that project an aura of exclusivity. As one of Montreal’s few student-run galleries, the VAV is a valuable outlet for burgeoning voices with new ideas. The VAV features a rolling catalogue of work made mostly by Concordia’s art undergraduates, and on Oct. 17, the venue held a vernissage for its newest gallery, No.01 . The venue hosted a large audience, with the accompaniment of DJ Jacqui Beaumont and appearances by some of the featured artists.
Aptly titled, No. 01 marks the beginning of VAV’s Fall programming. Because the show doesn’t suggest a specific theme, it appeals to the variety of works on display. With an emphasis on experimentation, the gallery features artists who question rigid notions of prescribed mediums and materials while communicating ideas surrounding both public and personal spheres.
In one corner of the gallery, Philippe Vandal , currently studying intermedia cyber arts at Concordia, presents Thigmo , a dynamic piece that connects a motorized fan with an olive tree. While the fan spins, a set of strings pull at the tree in a cycle of perpetually opposing directions, a process that Vandal describes as the “animation of preconceived stillness.” As he explains in his bio, Vandal’s intent is to frame the process of thigmomorphogenesis—in which plants respond to mechanical sensations, usually natural in origin—in an artificial context. Vandal notes how the systematization of this natural process calls into question the human tendency to overlook our impact on our surroundings and the consequences that follow our interference.
Sharing Vandal’s concerns about interactions between synthetic and organic matter, Jules Galbraith, a print media and computational arts student, contextualizes this relationship with our current fears surrounding climate change. Recent findings in the UN Climate Report , which posited a 12-year window to mitigate our effects of environmental abuse, motivated Galbraith to create Accumulations , a set of monochrome scans of the plastic they use everyday. Their work, plastered on a rigid and uneven cast sprawled across the gallery floor, evokes the image of a discarded plastic bag or a pile of garbage. The product appropriates the natural process of fossilization for synthetic matter, and it suggests the unsettling idea that the inventions of our downfall will, in their permanence, outlive us.
More in Arts & Entertainment:
As the saying goes, slow and steady wins the race. In the case of the dream pop group Sorrey, slow and steady can also produce a great album. On Oct. 18, the Prince Edward Island-based dream-pop band released their full-length debut album, In Full Bloom , their first release since their 2015 EP Thick as Thieves. The melancholic and melody-driven release will be followed by a tour throughout Quebec, Ontario, and the Maritimes.
Emilee Sorrey, the band’s namesake and songwriter, leads the group on vocals and guitar. She was working with Colin Buchanan of Paper Lions in 2015 when they began to collaborate on songs that Sorrey had written previously.
“As that project came to a natural end, we started to work on some of my solo songs,” Sorrey said in an interview with The McGill Tribune. From that point, Sorrey-the-singer slowly transformed into Sorrey-the-band, and they have been releasing singles and playing live sets ever since.
The band’s sound is dreamy and ethereal, while the lyrics are well-grounded in Sorrey’s personal experiences. On In Full Bloom, many songs deal with relationship troubles and miscommunication, but in a lighthearted, contemplative tone that makes for a pleasant listening experience.
“Songwriting is me working my emotions out through a song,” Sorrey said. “I start writing with a mood in mind, and then the other band members tighten up my ideas until we have a well-balanced song.”
Patience was key when it came to recording the band’s debut album. All the band members live in the Maritimes; besides influencing their sound, it grounded them in an islander mentality, and within a dedicated community. While they recorded some tracks outside the island, most of the work was done at The Hill Sound Studios in Charlottetown.
“You might think that [the proximity] would make for a quicker recording process, but we took our time with it,” Sorrey said. “Sometimes it can take years to finish a song.”
As the last song the band recorded, the singer sees title track “Full Bloom” as an encapsulation of the entire process of making the album.
“It’s about waiting for the right moment,” she said. “And when the moment is right, everything is in full bloom.”
The song’s moderate tempo and easy-breezy melody evokes an image of lounging in the sun on a summer day, with nowhere to go in particular and just enjoying the moment. Sorrey’s relaxed vocals and catchy melodies give the band its dreamlike quality, while the backing instrumentals often feature bright guitar riffs and warm synths.
The band’s love for live performance reflects the wider Maritime musical community. According to Sorrey, the music scene in P.E.I. is tightly knit and full of energy—an atmosphere that musical groups can thrive in. As all of the band members are either from or currently live on Prince Edward Island, their local music scene provides opportunities for collaboration and musical development within the community.
“Three nights out of the week, you can find a lot of good live music, and not just within our genre,” Sorrey said. “It’s really popping off.”
Despite the comforts of home, going on tour provides a chance to bring their music to new audiences along with a change of scenery.
“No matter how big a crowd is on the island, you’ll know everyone there” Sorrey said. “It’s always exciting to see new faces.”
In F ull Bloom is available now on most streaming platforms.
Martlet hockey (0–1) hosted the Concordia Stingers (1–0) in their regular season home-opener on Oct. 19. A goal each in the second period was the only scoring in regulation, sending the game to a shootout. Concordia stopped all three of McGill’s attempts, while the Stingers found the back of the net on their third shot to claim the victory. Despite a disappointing loss for McGill, both sides played well, showcasing the best of what their rivalry has to offer.
“I think [that] both teams are highly motivated, and I think we like playing each other,” Martlet Head Coach Peter Smith said. “I thought it was a real good game today, and I thought our team played real well.”
Concordia set the pace in the opening minutes of the game. About halfway through the period, the Martlets found their rhythm and started dominating the play, stringing together several quality scoring opportunities. Unfortunately, none of their chances found the net, and the period ended with no score.
Play evened out again in the second period, with Concordia having the better scoring opportunities of the two sides. Late in the period, however, a delayed penalty call against the Stingers gave McGill a six-on-five, and the Martlets capitalized on the opportunity. Fourth-year centre Jade Downie-Landry scored McGill’s first goal of the regular season, assisted by first-year forward Anna MacCara and third-year forward Stéphanie Desjardins . Downie-Landry was called for a penalty a minute later, and the Stingers responded seconds into their power play to even the score at one apiece.
In the third period, McGill took a four-minute penalty but played excellent defence, aided by a strong forecheck forcing key turnovers in their offensive zone to run down the clock. Though McGill had most of the chances in the final minutes of the game, fourth-year goaltender Tricia Deguire , who remained as solid as a rock on the penalty kill, came up with a huge stop in a two-on-one with just over a minute of regulation time to play.
“Your best penalty killer has to be your goaltender, and I thought [Deguire] did a real good job,” Smith said. “That four-minute kill that we had, I thought she was outstanding.”
With the score tied at 1–1, the game went into overtime. Both teams had a few opportunities to end the match, but neither could seal the deal, and a shootout ensued. With the pressure building, the Martlets leaned on each other to remain calm and focused on the game plan.
“It’s all a game of emotions, so we got our mental coach that comes in [and] tells us to breathe when we are too stressed,” Deguire said. “But sticking together, that’s what helps the most, [keeping] all our cheering up, […] helping each other [….] Pressure-wise, teammates are the most helpful.”
The Stingers came out victorious in the shootout, handing the Martlets their first loss of the season. However, Smith is not worried.
“It’s just about the little details, and we’re still early in the season, and we still have lots of chances to work out those details,” Smith said. “We’ve got 19 games to go in the regular season. I suspect that most of those 19 games are going to be exactly like the game we had this afternoon, so this game will make us better.”
The Martlets face off against the Montréal Carabins (1–0) on Oct. 25.
Moment of the Game:
A shot from the point found its way around the crowd in front of the net to fourth-year centre Jade Downie-Landry for McGill’s first goal of the regular season.
Quotable:
“We knew it was the home opener so we wanted for sure to perform, and give the crowd a good game. It was also an emotional game against Concordia. We actually wanted to make sure that we could get out there, and play as hard as we could.” – Fourth-year goaltender Tricia Deguire on the significance of the home-opener against Concordia.
Stat Corner:
Fourth-year goaltender Tricia Deguire made 30 saves throughout the game.
Caroline Polachek is no novice: The singer-songwriter has produced prolifically over the past two decades as part of indie synthpop duo Chairlift, released an album under the name Ramona Lisa, and even boasts a writing credit on Beyonce’s critically lauded 2013 self-titled release. Pang, her solo debut, is a near-perfect breakup album. Though Polachek recently divorced fellow musician Ian Drennan, Pang is about more than just that relationship. Polachek retreads well worn pop music fodder such as songs about dreams, lost youth, and the ocean.
Pang is produced by Polachek herself, along with PC Music’ s Danny L Harle—a harmonious pairing. Harle’s exaggerated pop tendencies joyfully creep in. The glittering synth in the title track, and vocal sampling on “Door” demonstrate his handiwork, but it is Polachek’s talent that dominates the album. It is her heartbreak to swim in, after all. Her vocals ground the album; Polachek has referred to the voice as “the ultimate analog synth ,” and she uses her instrument deftly in Pang . “Ocean of Tears” contains perhaps this year’s most heartbreaking chorus, all thanks to Polachek’s shattering vocals.
Everything on Pang ultimately builds up to “ So Hot You’re Hurting My Feelings, ” an uptempo, New Wave inspired track with an impossibly catchy hook. It is hard not to get swept away in Polachek’s heartache and infatuation—the dreamy bassline provides a steady launchpad for Polachek’s voice to soar from, aided by dizzying auto-tune.
“And I’m out at a party, they’re playing our song / I cry on the dance floor, it’s so embarrassing / Don’t send me photos, you’re making it worse / ‘Cause you’re so hot it’s hurting my feelings,” Polachek sings.
Embarrassment is central to Pang; Polachek chastises herself for loving too much on “Caroline Shut Up,” and frets about her predictable romantic tendencies in “Look At Me Now.” Ultimately, this embarrassment is fitting: Pang’s strength lies in its self-reflexivity and restlessness. After all, no honest break-up album has ever been comfortable or picturesque.
More in Arts & Entertainment:
Tuesday Night Café’s (TNC) performance of Ti-Jean and His Brothers , a modern Caribbean folktale written by Derek Walcott and premiered at Morrice Hall on Oct. 16, is enticingly bizarre. The production is the first of the year from the entirely student-run theatre company and features plenty of up-and-coming actors from the McGill community, including actor and director Deneille Guiseppi.
The play itself is a surreal combination of traditional folk themes set in a more modern colonial context. Ti-Jean and His Brothers takes places some time in the early- to mid-20th century and revolves around the eponymous characters Ti-Jean (Laura Quenneville), Gros-Jean (Deneille Giuseppi), and Mi-Jean (Ryan Chahri) as they clash with the Devil when he shows up on their doorstep. The Devil wishes to live as a human to experience all the horrible things that he has done to the world. He disguises himself as various characters, such as a white plantation owner and an old man, and torments Ti-Jean and his brothers in sadistic ways from behind a human disguise.
The overall atmosphere of the play is accentuated by simple, yet effective set design. The set consists of an arch of branches covered in leaves and some contemporary props, like a lantern and some wooden lawn chairs. They create a fantasy-like setting while clearly being a thematic device representing colonial thinking.
Camille Simon stands out as the boys’ mother, heartbroken as each of her sons leave her in pursuit of a fight against an insurmountable adversary. Her markedly sympathetic disposition brightens this dark play full of tragically flawed characters, and Simon presents this dynamic faithfully.
Jacob Berk gives a commanding performance as the Devil, channeling his inner-demon to perform the role in the most maniacal, conniving and evil way possible. When he gets angry, the sentiment is palpable.
Samantha Ling and Rebecca Turner introduce and lead us through the play as narrators. Taking the form of a frog and a firefly, respectively, Ling and Turner add a much needed touch of levity to a relatively serious production, adding to the play’s twisted fairytale-esque production.
Chahri and Quenneville give dedicated performances as the younger two children, Mi-Jean and Ti-Jean. Mi-Jean is intellectual to a fault, lacking in common sense. Ti-Jean, the smallest of his brethren, is the only one clever enough to have a chance at overcoming his great evil through his faith in God. Despite decent performances, the fact that their characters are written as black boys, despite both actors being white inherently challenges the audience. While this casting choice seldom gets in the way of a general understanding of the narrative, it does muddle the colonial undertones. It is unfortunate that these roles were taken up by white actors, when they could have offered valuable representation for Afro-Caribbean performers at McGill.
Guiseppi plays double duty as Gros-Jean and as the play’s director. Her character is the brawny and hot-headed brother, the first of the devil’s victims. Her direction has a clear vision, and though it is a respectable and ambitious one, the play falls short of achieving such heights. Guiseppi attempts to translate an obscure Caribbean folktale to a McGill stage while retaining all of its original integrity and historical value, and despite some talent in the cast, many were not playing roles they appeared entirely comfortable in. Still, her Caribbean roots shine through, and make Ti-Jean and His Brothers a valuable viewing experience.
More in Science & Technology:
McGill students are no strangers to plumes of e-cigarette vapour, whether it is in class, at McLennan, or on the sidewalk. Created in 2004, vapes imitate the sensation of smoking and are often marketed as being completely safe . E-cigarettes have surged in popularity in the last few years, due in part to advertising campaigns of companies like Juul that target young people, offering products with fun flavours such as mango and mint.
According to Christopher Labos, a cardiologist and an associate with the McGill Office for Science and Society, regular cigarette-users inhale smoke, while e-cigarettes produce vapour.
“The difference between regular cigarettes and e-cigarettes is that regular cigarettes are a combustion product,” Labos said in an interview with The McGill Tribune . “With e-cigarettes, you have liquid nicotine that is usually in an oil solution, and you are producing vapour when it is heated.”
E-cigarettes were originally introduced to help people quit smoking: The first e-cigarette had water vapour but no nicotine and was intended to simply mimic the feeling of a cigarette in your hand. Now, the majority of e-cigarettes have nicotine content ranging from zero to 87 milligrams. For example, one Juul pod contains as much nicotine as a whole pack of cigarettes.
“Nicotine […] itself does have health effects,” Labos said. “It stimulates the sympathetic nervous system of the body and increases […] heart rate and blood pressure.”
Recently, nicotine and marijuana vapes have garnered attention due to their popularity and potentially fatal consequences. As of Oct. 15, 33 people have died in the US and nearly 1,500 people suffered lung injuries associated with marijuana vaping. A Statistics Canada survey showed that e-cigarettes are more popular among younger people, with 23 per cent of high school students having tried them. Currently, scientists know little of the effects of long-term e-cigarette usage. While nicotine is known to be addictive, not enough time has passed to observe the full effects of regularly inhaling mass amounts of vapour.
“If you took a bunch of healthy 20-year-olds, and they started smoking today, the likelihood is in five years you would not see any effect to their health yet,” Labos said.
While vaping’s long-term effects are yet to be established, a study found that vapour can irritate and disrupt the protective layers of the lungs in mice. Due to toxins in the vapour, e-cigarettes also pose potential threats to young people’s brain development. Still, companies often claim that they are safe in advertisements targeting young people.
Before the link between cardiovascular diseases and cigarettes was established by researchers, tobacco companies used to market cigarettes as safe and recommended by doctors. The consequences of this advertising are obvious now; whether e-cigarette advertising will cause the same effects in 40 years is debatable.
Lack of scientific certainty is not a reason to ignore warnings from public health officials and doctors to steer clear from e-cigarettes. Aside from causing a number of deaths and injuries in the US, vaping could potentially affect the lungs and the brain. Further, the nicotine in e-cigarettes puts young people at risk of addiction . Ultimately, the qualified opinion of health professionals is more valuable than that of companies trying to make a profit.