Our small team is a group of driven, detail-oriented people who are passionate about their customers.

Woman on beach, splashing water.
Portrait of a nurse
Picture of a person typing on a typewriter.
Man in hat, standing in front of a building.
/*! elementor-pro - v4.2.0 - 19-08-2026 */ /******/ (() => { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ "../modules/interactions/assets/js/interactions-utils.js" /*!***************************************************************!*\ !*** ../modules/interactions/assets/js/interactions-utils.js ***! \***************************************************************/ (__unused_webpack_module, exports, __webpack_require__) { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.animationKeyframes = animationKeyframes; exports.config = void 0; exports.extractAnimationConfig = extractAnimationConfig; exports.getAnimateFunction = exports.extractInteractionId = void 0; exports.getAnimationRepeatOptions = getAnimationRepeatOptions; exports.getClickFunction = getClickFunction; exports.getHoverFunction = getHoverFunction; exports.getInViewFunction = void 0; exports.getKeyframes = getKeyframes; exports.getScrollFunction = getScrollFunction; exports.getTransformBaselineFromComputedStyle = void 0; exports.parseAnimationName = parseAnimationName; exports.waitForAnimateFunction = exports.skipInteraction = exports.resetElementStyles = exports.preserveTransformKeyframes = exports.parseInteractionsData = void 0; __webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.every.js */ "../node_modules/core-js/modules/esnext.iterator.every.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.filter.js */ "../node_modules/core-js/modules/esnext.iterator.filter.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.map.js */ "../node_modules/core-js/modules/esnext.iterator.map.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.reduce.js */ "../node_modules/core-js/modules/esnext.iterator.reduce.js"); const { config: getConfig, skipInteraction, extractInteractionId, getAnimateFunction, getInViewFunction, waitForAnimateFunction, parseInteractionsData, unwrapInteractionValue, timingValueToMs } = window.elementorModules.interactions; exports.parseInteractionsData = parseInteractionsData; exports.waitForAnimateFunction = waitForAnimateFunction; exports.getInViewFunction = getInViewFunction; exports.getAnimateFunction = getAnimateFunction; exports.extractInteractionId = extractInteractionId; exports.skipInteraction = skipInteraction; exports.config = getConfig; let { resetElementStyles, getTransformBaselineFromComputedStyle, preserveTransformKeyframes } = window.elementorModules.interactions; /** * @deprecated 4.2.0 - will be removed. Backward-compatibility fallback when Core does not provide resetElementStyles. */ exports.preserveTransformKeyframes = preserveTransformKeyframes; exports.getTransformBaselineFromComputedStyle = getTransformBaselineFromComputedStyle; exports.resetElementStyles = resetElementStyles; if (!resetElementStyles) { exports.resetElementStyles = resetElementStyles = element => { if (!element) { return; } element.style.transition = ''; element.style.transform = ''; element.style.opacity = ''; }; } /** * @deprecated 4.2.0 - will be removed. Backward-compatibility when Core does not expose transform helpers on elementorModules.interactions. */ if (!getTransformBaselineFromComputedStyle || !preserveTransformKeyframes) { const TRANSFORM_EPSILON = 0.001; const radiansToDegrees = radians => radians * (180 / Math.PI); const isNear = (value, expected) => Math.abs(value - expected) <= TRANSFORM_EPSILON; const isNearZero = value => isNear(value, 0); const isNearOne = value => isNear(value, 1); function parseMatrixValues(transformValue) { const match = transformValue.match(/^matrix(3d)?\((.+)\)$/); if (!match) { return null; } return match[2].split(',').map(token => Number.parseFloat(token.trim())).filter(value => Number.isFinite(value)); } function createMatrixFromTransform(transformValue) { if (!transformValue || 'none' === transformValue) { return null; } const matrixFactories = [window.DOMMatrixReadOnly, window.DOMMatrix].filter(Factory => 'function' === typeof Factory); for (const MatrixFactory of matrixFactories) { try { const matrix = new MatrixFactory(transformValue); const compactMatrix = { matrixXfromX: matrix.a ?? matrix.m11 ?? 1, matrixYfromX: matrix.b ?? matrix.m12 ?? 0, matrixXfromY: matrix.c ?? matrix.m21 ?? 0, matrixYfromY: matrix.d ?? matrix.m22 ?? 1, matrixTranslateX: matrix.e ?? matrix.m41 ?? 0, matrixTranslateY: matrix.f ?? matrix.m42 ?? 0 }; if (Object.values(compactMatrix).every(Number.isFinite)) { return compactMatrix; } } catch {} } const parsedValues = parseMatrixValues(transformValue); if (!parsedValues) { return null; } if (6 === parsedValues.length) { const [matrixXfromX, matrixYfromX, matrixXfromY, matrixYfromY, matrixTranslateX, matrixTranslateY] = parsedValues; return { matrixXfromX, matrixYfromX, matrixXfromY, matrixYfromY, matrixTranslateX, matrixTranslateY }; } if (16 === parsedValues.length) { const [matrixXfromX, matrixYfromX,,, matrixXfromY, matrixYfromY,,,,,,, matrixTranslateX, matrixTranslateY] = parsedValues; return { matrixXfromX, matrixYfromX, matrixXfromY, matrixYfromY, matrixTranslateX, matrixTranslateY }; } return null; } if (!getTransformBaselineFromComputedStyle) { exports.getTransformBaselineFromComputedStyle = getTransformBaselineFromComputedStyle = element => { if (!element) { return null; } const computedStyle = window.getComputedStyle(element); const matrix = createMatrixFromTransform(computedStyle?.transform || ''); if (!matrix) { return null; } const { matrixXfromX, matrixYfromX, matrixXfromY, matrixYfromY, matrixTranslateX, matrixTranslateY } = matrix; const scaleX = Math.hypot(matrixXfromX, matrixYfromX); const determinant = matrixXfromX * matrixYfromY - matrixYfromX * matrixXfromY; const scaleY = scaleX ? determinant / scaleX : Math.hypot(matrixXfromY, matrixYfromY); const rotate = radiansToDegrees(Math.atan2(matrixYfromX, matrixXfromX)); const shear = scaleX ? (matrixXfromX * matrixXfromY + matrixYfromX * matrixYfromY) / (scaleX * scaleX) : 0; const skewX = radiansToDegrees(Math.atan(shear)); return { x: matrixTranslateX, y: matrixTranslateY, scaleX: Number.isFinite(scaleX) ? scaleX : 1, scaleY: Number.isFinite(scaleY) ? scaleY : 1, rotate: Number.isFinite(rotate) ? rotate : 0, skewX: Number.isFinite(skewX) ? skewX : 0 }; }; } if (!preserveTransformKeyframes) { exports.preserveTransformKeyframes = preserveTransformKeyframes = (keyframes, baseline) => { if (!baseline) { return keyframes; } const mergedKeyframes = { ...keyframes }; const hasScaleShorthand = mergedKeyframes.scale !== undefined; const canSetScaleX = mergedKeyframes.scaleX === undefined && !isNearOne(baseline.scaleX); const canSetScaleY = mergedKeyframes.scaleY === undefined && !isNearOne(baseline.scaleY); if (mergedKeyframes.x === undefined && !isNearZero(baseline.x)) { mergedKeyframes.x = [baseline.x, baseline.x]; } if (mergedKeyframes.y === undefined && !isNearZero(baseline.y)) { mergedKeyframes.y = [baseline.y, baseline.y]; } if (!hasScaleShorthand) { if (canSetScaleX && canSetScaleY && isNear(baseline.scaleX, baseline.scaleY)) { mergedKeyframes.scale = [baseline.scaleX, baseline.scaleX]; } else { if (canSetScaleX) { mergedKeyframes.scaleX = [baseline.scaleX, baseline.scaleX]; } if (canSetScaleY) { mergedKeyframes.scaleY = [baseline.scaleY, baseline.scaleY]; } } } if (mergedKeyframes.rotate === undefined && mergedKeyframes.rotateZ === undefined && !isNearZero(baseline.rotate)) { mergedKeyframes.rotate = [baseline.rotate, baseline.rotate]; } if (mergedKeyframes.skew === undefined && mergedKeyframes.skewX === undefined && !isNearZero(baseline.skewX)) { mergedKeyframes.skewX = [baseline.skewX, baseline.skewX]; } return mergedKeyframes; }; } } function getScrollFunction() { return motionFunc('scroll'); } function getClickFunction() { return motionFunc('press'); } function getHoverFunction() { return motionFunc('hover'); } function motionFunc(name) { if ('function' !== typeof window?.Motion?.[name]) { return null; } return window?.Motion?.[name]; } function animationKeyframes(animConfig) { if ('custom' === animConfig.animation.effect) { return getKeyframes({ type: 'custom', preset: animConfig.animation.customEffect }); } return getKeyframes({ type: 'preset', preset: { effect: animConfig.animation.effect, type: animConfig.animation.type, direction: animConfig.animation.direction } }); } function buildKeyframesFromConfig(customEffect) { const mapping = { opacity: [], scaleX: [], scaleY: [], skewX: [], skewY: [], rotateX: [], rotateY: [], rotateZ: [], x: [], y: [], z: [] }; customEffect?.keyframes?.forEach(keyframe => { const settings = keyframe.settings; Object.entries(mapping).forEach(([key, value]) => { if (settings.hasOwnProperty(key)) { value.push(settings[key]); } }); }); const keyframes = {}; for (const [key, value] of Object.entries(mapping)) { if (1 > value.length) { continue; } keyframes[key] = value; } return keyframes; } function buildKeyframesFromPreset({ effect, type, direction }) { const isIn = 'in' === type; const keyframes = {}; if ('fade' === effect) { keyframes.opacity = isIn ? [0, 1] : [1, 0]; } const config = getConfig(); if ('scale' === effect) { keyframes.scale = isIn ? [config.scaleStart, 1] : [1, config.scaleStart]; } if (direction && 'string' === typeof direction) { const distance = config.slideDistance; const movement = { left: { x: isIn ? [-distance, 0] : [0, -distance] }, right: { x: isIn ? [distance, 0] : [0, distance] }, top: { y: isIn ? [-distance, 0] : [0, -distance] }, bottom: { y: isIn ? [distance, 0] : [0, distance] } }; direction.split('-').forEach(part => { if (movement[part]) { Object.assign(keyframes, movement[part]); } }); } return keyframes; } function getKeyframes({ type, preset }) { if ('custom' === type) { return buildKeyframesFromConfig(preset); } if ('preset' !== type) { return {}; } return buildKeyframesFromPreset(preset); } function parseAnimationName(name) { const [trigger, effect, type, direction, duration, delay, replay, easing, relativeTo, end, start] = name.split('-'); const config = getConfig(); const parsed = { trigger, animation: { effect, customEffect: {}, type, direction: direction || null, replay: replay ?? false, relativeTo: relativeTo ?? config.relativeTo, start: start ? parseInt(start, 10) : config.start, end: end ? parseInt(end, 10) : config.end, easing: easing ?? config.defaultEasing, repeat: '', times: 1, timing: { duration: duration ? parseInt(duration, 10) : config.defaultDuration, delay: delay ? parseInt(delay, 10) : config.defaultDelay } } }; return parsed; } function extractAnimationConfig(interaction) { if ('string' === typeof interaction) { return parseAnimationName(interaction); } const payload = 'interaction-item' === interaction?.$$type && interaction?.value ? interaction.value : interaction; if (!payload) { return null; } if (payload?.animation?.animation_id) { return parseAnimationName(payload.animation.animation_id); } const animation = unwrapInteractionValue(payload.animation); if (!animation) { return null; } const breakpoints = unwrapInteractionBreakpoints(payload.breakpoints); const animationConfig = unwrapInteractionValue(animation.config, {}); const config = getConfig(); const parsed = { trigger: unwrapInteractionValue(payload.trigger, 'load'), breakpoints, animation: { effect: unwrapInteractionValue(animation.effect, 'fade'), customEffect: unwrapCustomEffect(animation.custom_effect, {}), type: unwrapInteractionValue(animation.type, 'in'), direction: unwrapInteractionValue(animation.direction, ''), replay: unwrapInteractionValue(animationConfig.replay, false), relativeTo: unwrapInteractionValue(animationConfig.relativeTo, config.relativeTo), start: sizeValueToNumber(animationConfig.start, config.start), end: sizeValueToNumber(animationConfig.end, config.end), easing: unwrapInteractionValue(animationConfig.easing, config.defaultEasing), repeat: unwrapInteractionValue(animationConfig.repeat, ''), times: unwrapInteractionValue(animationConfig.times, 1), timing: unwrapTiming(animation.timing_config) } }; return parsed; } function unwrapInteractionBreakpoints(propValue) { const breakpointsConfig = unwrapInteractionValue(propValue, {}); const excluded = unwrapInteractionValue(breakpointsConfig.excluded, []); if (1 > excluded.length) { return {}; } const breakpoints = { excluded: excluded.map(breakpoint => unwrapInteractionValue(breakpoint, '')) }; return breakpoints; } function unwrapTiming(propValue) { const config = getConfig(); const timingConfig = unwrapInteractionValue(propValue, {}); return { duration: timingValueToMs(timingConfig?.duration, config.defaultDuration), delay: timingValueToMs(timingConfig?.delay, config.defaultDelay) }; } function denullify(obj) { return Object.entries(obj).reduce((acc, [key, value]) => { if (null === value || undefined === value || '' === value) { return acc; } acc[key] = value; return acc; }, {}); } function unwrapCustomEffect(propValue) { const customEffectConfig = unwrapInteractionValue(propValue, {}); const keyframes = unwrapInteractionValue(customEffectConfig.keyframes, []).map(keyframe => { const keyframeStop = unwrapInteractionValue(keyframe, {}); const stop = unwrapInteractionValue(keyframeStop.stop, {}); const settings = unwrapInteractionValue(keyframeStop.settings, {}); const move = unwrapInteractionValue(settings.move, {}); const scale = unwrapInteractionValue(settings.scale, {}); const skew = unwrapInteractionValue(settings.skew, {}); const rotate = unwrapInteractionValue(settings.rotate, {}); return { stop: stop.size, settings: denullify({ opacity: sizeValue(settings.opacity), x: sizeValue(move.x), y: sizeValue(move.y), z: sizeValue(move.z), rotateX: sizeValue(rotate.x), rotateY: sizeValue(rotate.y), rotateZ: sizeValue(rotate.z), scaleX: sizeValueToNumber(scale.x), scaleY: sizeValueToNumber(scale.y), skewX: sizeValue(skew.x), skewY: sizeValue(skew.y) }) }; }).sort((a, b) => { if (a.stop === b.stop) { return 0; } return a.stop - b.stop; }); if (1 > keyframes.length) { return {}; } return { keyframes }; } function sizeValue(propValue) { const unwrapped = unwrapInteractionValue(propValue); const size = unwrapInteractionValue(unwrapped); return [size?.size, size?.unit].join('') || null; } function sizeValueToNumber(value, fallback = null) { if (null === value || value === undefined) { return fallback; } const unwrapped = unwrapInteractionValue(value); if ('number' === typeof unwrapped) { return unwrapped; } const sizeObj = unwrapInteractionValue(unwrapped); const size = sizeObj?.size; return size; } function getAnimationRepeatOptions(animationConfig = {}) { const repeatMode = unwrapInteractionValue(animationConfig.repeat, ''); if ('loop' === repeatMode) { return { repeat: Infinity }; } if ('times' === repeatMode) { const rawTimes = unwrapInteractionValue(animationConfig.times, 1); const normalizedTimes = Number.isFinite(rawTimes) ? Math.max(0, Math.floor(rawTimes)) : 0; return { repeat: Math.max(normalizedTimes - 1, 0) }; } return {}; } /***/ }, /***/ "../node_modules/core-js/internals/a-callable.js" /*!*******************************************************!*\ !*** ../node_modules/core-js/internals/a-callable.js ***! \*******************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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/an-instance.js" /*!********************************************************!*\ !*** ../node_modules/core-js/internals/an-instance.js ***! \********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ "../node_modules/core-js/internals/object-is-prototype-of.js"); var $TypeError = TypeError; module.exports = function (it, Prototype) { if (isPrototypeOf(Prototype, it)) return it; throw new $TypeError('Incorrect invocation'); }; /***/ }, /***/ "../node_modules/core-js/internals/an-object.js" /*!******************************************************!*\ !*** ../node_modules/core-js/internals/an-object.js ***! \******************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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__) { 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/array-set-length.js" /*!*************************************************************!*\ !*** ../node_modules/core-js/internals/array-set-length.js ***! \*************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js"); var isArray = __webpack_require__(/*! ../internals/is-array */ "../node_modules/core-js/internals/is-array.js"); var $TypeError = TypeError; // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // Safari < 13 does not throw an error in this case var SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () { // makes no sense without proper strict mode support if (this !== undefined) return true; try { // eslint-disable-next-line es/no-object-defineproperty -- safe Object.defineProperty([], 'length', { writable: false }).length = 1; } catch (error) { return error instanceof TypeError; } }(); module.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) { if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) { throw new $TypeError('Cannot set read only .length'); } return O.length = length; } : function (O, length) { return O.length = length; }; /***/ }, /***/ "../node_modules/core-js/internals/call-with-safe-iteration-closing.js" /*!*****************************************************************************!*\ !*** ../node_modules/core-js/internals/call-with-safe-iteration-closing.js ***! \*****************************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); // call something on iterator step with safe closing on error module.exports = function (iterator, fn, value, ENTRIES) { try { return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); } catch (error) { iteratorClose(iterator, 'throw', error); } }; /***/ }, /***/ "../node_modules/core-js/internals/classof-raw.js" /*!********************************************************!*\ !*** ../node_modules/core-js/internals/classof-raw.js ***! \********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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/classof.js" /*!****************************************************!*\ !*** ../node_modules/core-js/internals/classof.js ***! \****************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var TO_STRING_TAG_SUPPORT = __webpack_require__(/*! ../internals/to-string-tag-support */ "../node_modules/core-js/internals/to-string-tag-support.js"); var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js"); var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ "../node_modules/core-js/internals/classof-raw.js"); var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var $Object = Object; // ES3 wrong here var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments'; // fallback for IE11 Script Access Denied error var tryGet = function (it, key) { try { return it[key]; } catch (error) { /* empty */ } }; // getting tag from ES6+ `Object.prototype.toString` module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { var O, tag, result; return it === undefined ? 'Undefined' : it === null ? 'Null' // @@toStringTag case : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag // builtinTag case : CORRECT_ARGUMENTS ? classofRaw(O) // ES3 arguments fallback : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result; }; /***/ }, /***/ "../node_modules/core-js/internals/copy-constructor-properties.js" /*!************************************************************************!*\ !*** ../node_modules/core-js/internals/copy-constructor-properties.js ***! \************************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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/correct-prototype-getter.js" /*!*********************************************************************!*\ !*** ../node_modules/core-js/internals/correct-prototype-getter.js ***! \*********************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js"); module.exports = !fails(function () { function F() { /* empty */ } F.prototype.constructor = null; // eslint-disable-next-line es/no-object-getprototypeof -- required for testing return Object.getPrototypeOf(new F()) !== F.prototype; }); /***/ }, /***/ "../node_modules/core-js/internals/create-iter-result-object.js" /*!**********************************************************************!*\ !*** ../node_modules/core-js/internals/create-iter-result-object.js ***! \**********************************************************************/ (module) { // `CreateIterResultObject` abstract operation // https://tc39.es/ecma262/#sec-createiterresultobject module.exports = function (value, done) { return { value: value, done: done }; }; /***/ }, /***/ "../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__) { 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) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }, /***/ "../node_modules/core-js/internals/create-property.js" /*!************************************************************!*\ !*** ../node_modules/core-js/internals/create-property.js ***! \************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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 = function (object, key, value) { if (DESCRIPTORS) definePropertyModule.f(object, key, createPropertyDescriptor(0, value)); else object[key] = value; }; /***/ }, /***/ "../node_modules/core-js/internals/define-built-in-accessor.js" /*!*********************************************************************!*\ !*** ../node_modules/core-js/internals/define-built-in-accessor.js ***! \*********************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ "../node_modules/core-js/internals/make-built-in.js"); var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js"); module.exports = function (target, name, descriptor) { if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true }); if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true }); return defineProperty.f(target, name, descriptor); }; /***/ }, /***/ "../node_modules/core-js/internals/define-built-in.js" /*!************************************************************!*\ !*** ../node_modules/core-js/internals/define-built-in.js ***! \************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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-built-ins.js" /*!*************************************************************!*\ !*** ../node_modules/core-js/internals/define-built-ins.js ***! \*************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ "../node_modules/core-js/internals/define-built-in.js"); module.exports = function (target, src, options) { for (var key in src) defineBuiltIn(target, key, src[key], options); return target; }; /***/ }, /***/ "../node_modules/core-js/internals/define-global-property.js" /*!*******************************************************************!*\ !*** ../node_modules/core-js/internals/define-global-property.js ***! \*******************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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__) { 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__) { 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/does-not-exceed-safe-integer.js" /*!*************************************************************************!*\ !*** ../node_modules/core-js/internals/does-not-exceed-safe-integer.js ***! \*************************************************************************/ (module) { var $TypeError = TypeError; var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991 module.exports = function (it) { if (it > MAX_SAFE_INTEGER) throw new $TypeError('Maximum allowed index exceeded'); return it; }; /***/ }, /***/ "../node_modules/core-js/internals/enum-bug-keys.js" /*!**********************************************************!*\ !*** ../node_modules/core-js/internals/enum-bug-keys.js ***! \**********************************************************/ (module) { // 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__) { 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__) { 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__) { 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) { module.exports = function (exec) { try { return !!exec(); } catch (error) { return true; } }; /***/ }, /***/ "../node_modules/core-js/internals/function-apply.js" /*!***********************************************************!*\ !*** ../node_modules/core-js/internals/function-apply.js ***! \***********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js"); var FunctionPrototype = Function.prototype; var apply = FunctionPrototype.apply; var call = FunctionPrototype.call; // eslint-disable-next-line es/no-function-prototype-bind, es/no-reflect -- safe module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () { return call.apply(apply, arguments); }); /***/ }, /***/ "../node_modules/core-js/internals/function-bind-context.js" /*!******************************************************************!*\ !*** ../node_modules/core-js/internals/function-bind-context.js ***! \******************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ "../node_modules/core-js/internals/function-uncurry-this-clause.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js"); var bind = uncurryThis(uncurryThis.bind); // optional / simple context binding module.exports = function (fn, that) { aCallable(fn); return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) { return fn.apply(that, arguments); }; }; /***/ }, /***/ "../node_modules/core-js/internals/function-bind-native.js" /*!*****************************************************************!*\ !*** ../node_modules/core-js/internals/function-bind-native.js ***! \*****************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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__) { var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js"); var call = Function.prototype.call; // eslint-disable-next-line es/no-function-prototype-bind -- safe 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__) { 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-clause.js" /*!*************************************************************************!*\ !*** ../node_modules/core-js/internals/function-uncurry-this-clause.js ***! \*************************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ "../node_modules/core-js/internals/classof-raw.js"); var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js"); module.exports = function (fn) { // Nashorn bug: // https://github.com/zloirock/core-js/issues/1128 // https://github.com/zloirock/core-js/issues/1130 if (classofRaw(fn) === 'Function') return uncurryThis(fn); }; /***/ }, /***/ "../node_modules/core-js/internals/function-uncurry-this.js" /*!******************************************************************!*\ !*** ../node_modules/core-js/internals/function-uncurry-this.js ***! \******************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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; // eslint-disable-next-line es/no-function-prototype-bind -- safe 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__) { 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-iterator-direct.js" /*!****************************************************************!*\ !*** ../node_modules/core-js/internals/get-iterator-direct.js ***! \****************************************************************/ (module) { // `GetIteratorDirect(obj)` abstract operation // https://tc39.es/ecma262/#sec-getiteratordirect module.exports = function (obj) { return { iterator: obj, next: obj.next, done: false }; }; /***/ }, /***/ "../node_modules/core-js/internals/get-iterator-method.js" /*!****************************************************************!*\ !*** ../node_modules/core-js/internals/get-iterator-method.js ***! \****************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var classof = __webpack_require__(/*! ../internals/classof */ "../node_modules/core-js/internals/classof.js"); var getMethod = __webpack_require__(/*! ../internals/get-method */ "../node_modules/core-js/internals/get-method.js"); var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ "../node_modules/core-js/internals/is-null-or-undefined.js"); var Iterators = __webpack_require__(/*! ../internals/iterators */ "../node_modules/core-js/internals/iterators.js"); var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var ITERATOR = wellKnownSymbol('iterator'); module.exports = function (it) { if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR) || getMethod(it, '@@iterator') || Iterators[classof(it)]; }; /***/ }, /***/ "../node_modules/core-js/internals/get-iterator.js" /*!*********************************************************!*\ !*** ../node_modules/core-js/internals/get-iterator.js ***! \*********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var tryToString = __webpack_require__(/*! ../internals/try-to-string */ "../node_modules/core-js/internals/try-to-string.js"); var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ "../node_modules/core-js/internals/get-iterator-method.js"); var $TypeError = TypeError; module.exports = function (argument, usingIterator) { var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator; if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument)); throw new $TypeError(tryToString(argument) + ' is not iterable'); }; /***/ }, /***/ "../node_modules/core-js/internals/get-method.js" /*!*******************************************************!*\ !*** ../node_modules/core-js/internals/get-method.js ***! \*******************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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 ***! \********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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__) { 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) { module.exports = {}; /***/ }, /***/ "../node_modules/core-js/internals/html.js" /*!*************************************************!*\ !*** ../node_modules/core-js/internals/html.js ***! \*************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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__) { 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__) { 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__) { 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__) { 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-array-iterator-method.js" /*!*********************************************************************!*\ !*** ../node_modules/core-js/internals/is-array-iterator-method.js ***! \*********************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var Iterators = __webpack_require__(/*! ../internals/iterators */ "../node_modules/core-js/internals/iterators.js"); var ITERATOR = wellKnownSymbol('iterator'); var ArrayPrototype = Array.prototype; // check on default Array iterator module.exports = function (it) { return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); }; /***/ }, /***/ "../node_modules/core-js/internals/is-array.js" /*!*****************************************************!*\ !*** ../node_modules/core-js/internals/is-array.js ***! \*****************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var classof = __webpack_require__(/*! ../internals/classof-raw */ "../node_modules/core-js/internals/classof-raw.js"); // `IsArray` abstract operation // https://tc39.es/ecma262/#sec-isarray // eslint-disable-next-line es/no-array-isarray -- safe module.exports = Array.isArray || function isArray(argument) { return classof(argument) === 'Array'; }; /***/ }, /***/ "../node_modules/core-js/internals/is-callable.js" /*!********************************************************!*\ !*** ../node_modules/core-js/internals/is-callable.js ***! \********************************************************/ (module) { // 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__) { 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) { // 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__) { 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) { 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__) { 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/iterate.js" /*!****************************************************!*\ !*** ../node_modules/core-js/internals/iterate.js ***! \****************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var bind = __webpack_require__(/*! ../internals/function-bind-context */ "../node_modules/core-js/internals/function-bind-context.js"); var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var tryToString = __webpack_require__(/*! ../internals/try-to-string */ "../node_modules/core-js/internals/try-to-string.js"); var isArrayIteratorMethod = __webpack_require__(/*! ../internals/is-array-iterator-method */ "../node_modules/core-js/internals/is-array-iterator-method.js"); var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ "../node_modules/core-js/internals/length-of-array-like.js"); var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ "../node_modules/core-js/internals/object-is-prototype-of.js"); var getIterator = __webpack_require__(/*! ../internals/get-iterator */ "../node_modules/core-js/internals/get-iterator.js"); var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ "../node_modules/core-js/internals/get-iterator-method.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var $TypeError = TypeError; var Result = function (stopped, result) { this.stopped = stopped; this.result = result; }; var ResultPrototype = Result.prototype; module.exports = function (iterable, unboundFunction, options) { var that = options && options.that; var AS_ENTRIES = !!(options && options.AS_ENTRIES); var IS_RECORD = !!(options && options.IS_RECORD); var IS_ITERATOR = !!(options && options.IS_ITERATOR); var INTERRUPTED = !!(options && options.INTERRUPTED); var fn = bind(unboundFunction, that); var iterator, iterFn, index, length, result, next, step; var stop = function (condition) { var $iterator = iterator; iterator = undefined; if ($iterator) iteratorClose($iterator, 'normal'); return new Result(true, condition); }; var callFn = function (value) { if (AS_ENTRIES) { anObject(value); return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]); } return INTERRUPTED ? fn(value, stop) : fn(value); }; if (IS_RECORD) { iterator = iterable.iterator; } else if (IS_ITERATOR) { iterator = iterable; } else { iterFn = getIteratorMethod(iterable); if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable'); // optimisation for array iterators if (isArrayIteratorMethod(iterFn)) { for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) { result = callFn(iterable[index]); if (result && isPrototypeOf(ResultPrototype, result)) return result; } return new Result(false); } iterator = getIterator(iterable, iterFn); } next = IS_RECORD ? iterable.next : iterator.next; while (!(step = call(next, iterator)).done) { // `IteratorValue` errors should propagate without closing the iterator var value = step.value; try { result = callFn(value); } catch (error) { if (iterator) iteratorClose(iterator, 'throw', error); else throw error; } if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result; } return new Result(false); }; /***/ }, /***/ "../node_modules/core-js/internals/iterator-close-all.js" /*!***************************************************************!*\ !*** ../node_modules/core-js/internals/iterator-close-all.js ***! \***************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); module.exports = function (iters, kind, value) { for (var i = iters.length - 1; i >= 0; i--) { if (iters[i] === undefined) continue; try { value = iteratorClose(iters[i].iterator, kind, value); } catch (error) { kind = 'throw'; value = error; } } if (kind === 'throw') throw value; return value; }; /***/ }, /***/ "../node_modules/core-js/internals/iterator-close.js" /*!***********************************************************!*\ !*** ../node_modules/core-js/internals/iterator-close.js ***! \***********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getMethod = __webpack_require__(/*! ../internals/get-method */ "../node_modules/core-js/internals/get-method.js"); module.exports = function (iterator, kind, value) { var innerResult, innerError; anObject(iterator); try { innerResult = getMethod(iterator, 'return'); if (!innerResult) { if (kind === 'throw') throw value; return value; } innerResult = call(innerResult, iterator); } catch (error) { innerError = true; innerResult = error; } if (kind === 'throw') throw value; if (innerError) throw innerResult; anObject(innerResult); return value; }; /***/ }, /***/ "../node_modules/core-js/internals/iterator-create-proxy.js" /*!******************************************************************!*\ !*** ../node_modules/core-js/internals/iterator-create-proxy.js ***! \******************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var create = __webpack_require__(/*! ../internals/object-create */ "../node_modules/core-js/internals/object-create.js"); var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js"); var defineBuiltIns = __webpack_require__(/*! ../internals/define-built-ins */ "../node_modules/core-js/internals/define-built-ins.js"); var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../node_modules/core-js/internals/internal-state.js"); var getMethod = __webpack_require__(/*! ../internals/get-method */ "../node_modules/core-js/internals/get-method.js"); var IteratorPrototype = (__webpack_require__(/*! ../internals/iterators-core */ "../node_modules/core-js/internals/iterators-core.js").IteratorPrototype); var createIterResultObject = __webpack_require__(/*! ../internals/create-iter-result-object */ "../node_modules/core-js/internals/create-iter-result-object.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorCloseAll = __webpack_require__(/*! ../internals/iterator-close-all */ "../node_modules/core-js/internals/iterator-close-all.js"); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var ITERATOR_HELPER = 'IteratorHelper'; var WRAP_FOR_VALID_ITERATOR = 'WrapForValidIterator'; var NORMAL = 'normal'; var THROW = 'throw'; var setInternalState = InternalStateModule.set; var createIteratorProxyPrototype = function (IS_ITERATOR) { var getInternalState = InternalStateModule.getterFor(IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER); return defineBuiltIns(create(IteratorPrototype), { next: function next() { var state = getInternalState(this); // for simplification: // for `%WrapForValidIteratorPrototype%.next` or with `state.returnHandlerResult` our `nextHandler` returns `IterResultObject` // for `%IteratorHelperPrototype%.next` - just a value if (IS_ITERATOR) return state.nextHandler(); if (state.done) return createIterResultObject(undefined, true); try { var result = state.nextHandler(); return state.returnHandlerResult ? result : createIterResultObject(result, state.done); } catch (error) { state.done = true; throw error; } }, 'return': function () { var state = getInternalState(this); var iterator = state.iterator; var done = state.done; state.done = true; if (IS_ITERATOR) { var returnMethod = getMethod(iterator, 'return'); return returnMethod ? call(returnMethod, iterator) : createIterResultObject(undefined, true); } if (done) return createIterResultObject(undefined, true); if (state.inner) try { iteratorClose(state.inner.iterator, NORMAL); } catch (error) { return iteratorClose(iterator, THROW, error); } if (state.openIters) try { iteratorCloseAll(state.openIters, NORMAL); } catch (error) { if (iterator) return iteratorClose(iterator, THROW, error); throw error; } if (iterator) iteratorClose(iterator, NORMAL); return createIterResultObject(undefined, true); } }); }; var WrapForValidIteratorPrototype = createIteratorProxyPrototype(true); var IteratorHelperPrototype = createIteratorProxyPrototype(false); createNonEnumerableProperty(IteratorHelperPrototype, TO_STRING_TAG, 'Iterator Helper'); module.exports = function (nextHandler, IS_ITERATOR, RETURN_HANDLER_RESULT) { var IteratorProxy = function Iterator(record, state) { if (state) { state.iterator = record.iterator; state.next = record.next; } else state = record; state.type = IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER; state.returnHandlerResult = !!RETURN_HANDLER_RESULT; state.nextHandler = nextHandler; state.counter = 0; state.done = false; setInternalState(this, state); }; IteratorProxy.prototype = IS_ITERATOR ? WrapForValidIteratorPrototype : IteratorHelperPrototype; return IteratorProxy; }; /***/ }, /***/ "../node_modules/core-js/internals/iterator-helper-throws-on-invalid-iterator.js" /*!***************************************************************************************!*\ !*** ../node_modules/core-js/internals/iterator-helper-throws-on-invalid-iterator.js ***! \***************************************************************************************/ (module) { // Should throw an error on invalid iterator // https://issues.chromium.org/issues/336839115 module.exports = function (methodName, argument) { // eslint-disable-next-line es/no-iterator -- required for testing var method = typeof Iterator == 'function' && Iterator.prototype[methodName]; if (method) try { method.call({ next: null }, argument).next(); } catch (error) { return true; } }; /***/ }, /***/ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js" /*!*******************************************************************************************!*\ !*** ../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js ***! \*******************************************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js"); // https://github.com/tc39/ecma262/pull/3467 module.exports = function (METHOD_NAME, ExpectedError) { var Iterator = globalThis.Iterator; var IteratorPrototype = Iterator && Iterator.prototype; var method = IteratorPrototype && IteratorPrototype[METHOD_NAME]; var CLOSED = false; if (method) try { method.call({ next: function () { return { done: true }; }, 'return': function () { CLOSED = true; } }, -1); } catch (error) { // https://bugs.webkit.org/show_bug.cgi?id=291195 if (!(error instanceof ExpectedError)) CLOSED = false; } if (!CLOSED) return method; }; /***/ }, /***/ "../node_modules/core-js/internals/iterators-core.js" /*!***********************************************************!*\ !*** ../node_modules/core-js/internals/iterators-core.js ***! \***********************************************************/ (module, __unused_webpack_exports, __webpack_require__) { 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 isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js"); var create = __webpack_require__(/*! ../internals/object-create */ "../node_modules/core-js/internals/object-create.js"); var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "../node_modules/core-js/internals/object-get-prototype-of.js"); var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ "../node_modules/core-js/internals/define-built-in.js"); var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js"); var ITERATOR = wellKnownSymbol('iterator'); var BUGGY_SAFARI_ITERATORS = false; // `%IteratorPrototype%` object // https://tc39.es/ecma262/#sec-%iteratorprototype%-object var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; /* eslint-disable es/no-array-prototype-keys -- safe */ if ([].keys) { arrayIterator = [].keys(); // Safari 8 has buggy iterators w/o `next` if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; else { PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; } } var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () { var test = {}; // FF44- legacy iterators case return IteratorPrototype[ITERATOR].call(test) !== test; }); if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {}; else if (IS_PURE) IteratorPrototype = create(IteratorPrototype); // `%IteratorPrototype%[@@iterator]()` method // https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator if (!isCallable(IteratorPrototype[ITERATOR])) { defineBuiltIn(IteratorPrototype, ITERATOR, function () { return this; }); } module.exports = { IteratorPrototype: IteratorPrototype, BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS }; /***/ }, /***/ "../node_modules/core-js/internals/iterators.js" /*!******************************************************!*\ !*** ../node_modules/core-js/internals/iterators.js ***! \******************************************************/ (module) { module.exports = {}; /***/ }, /***/ "../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__) { 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__) { 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) { 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__) { /* 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__) { 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__) { 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__) { 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__) { 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) { // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe exports.f = Object.getOwnPropertySymbols; /***/ }, /***/ "../node_modules/core-js/internals/object-get-prototype-of.js" /*!********************************************************************!*\ !*** ../node_modules/core-js/internals/object-get-prototype-of.js ***! \********************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js"); var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js"); var toObject = __webpack_require__(/*! ../internals/to-object */ "../node_modules/core-js/internals/to-object.js"); var sharedKey = __webpack_require__(/*! ../internals/shared-key */ "../node_modules/core-js/internals/shared-key.js"); var CORRECT_PROTOTYPE_GETTER = __webpack_require__(/*! ../internals/correct-prototype-getter */ "../node_modules/core-js/internals/correct-prototype-getter.js"); var IE_PROTO = sharedKey('IE_PROTO'); var $Object = Object; var ObjectPrototype = $Object.prototype; // `Object.getPrototypeOf` method // https://tc39.es/ecma262/#sec-object.getprototypeof // eslint-disable-next-line es/no-object-getprototypeof -- safe module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) { var object = toObject(O); if (hasOwn(object, IE_PROTO)) return object[IE_PROTO]; var constructor = object.constructor; if (isCallable(constructor) && object instanceof constructor) { return constructor.prototype; } return object instanceof $Object ? ObjectPrototype : null; }; /***/ }, /***/ "../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__) { 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__) { 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__) { 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) { 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__) { 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__) { 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__) { 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__) { 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__) { 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.49.0', mode: IS_PURE ? 'pure' : 'global', copyright: '© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.', license: 'https://github.com/zloirock/core-js/blob/v3.49.0/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__) { 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__) { /* 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__) { 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__) { // 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__) { 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__) { 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__) { 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__) { 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__) { 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/to-string-tag-support.js" /*!******************************************************************!*\ !*** ../node_modules/core-js/internals/to-string-tag-support.js ***! \******************************************************************/ (module, __unused_webpack_exports, __webpack_require__) { var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var test = {}; // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation test[TO_STRING_TAG] = 'z'; module.exports = String(test) === '[object z]'; /***/ }, /***/ "../node_modules/core-js/internals/try-to-string.js" /*!**********************************************************!*\ !*** ../node_modules/core-js/internals/try-to-string.js ***! \**********************************************************/ (module) { 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__) { 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.1.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__) { /* 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__) { 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__) { 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__) { 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.push.js" /*!********************************************************!*\ !*** ../node_modules/core-js/modules/es.array.push.js ***! \********************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var toObject = __webpack_require__(/*! ../internals/to-object */ "../node_modules/core-js/internals/to-object.js"); var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ "../node_modules/core-js/internals/length-of-array-like.js"); var setArrayLength = __webpack_require__(/*! ../internals/array-set-length */ "../node_modules/core-js/internals/array-set-length.js"); var doesNotExceedSafeInteger = __webpack_require__(/*! ../internals/does-not-exceed-safe-integer */ "../node_modules/core-js/internals/does-not-exceed-safe-integer.js"); var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js"); var INCORRECT_TO_LENGTH = fails(function () { return [].push.call({ length: 0x100000000 }, 1) !== 4294967297; }); // V8 <= 121 and Safari <= 15.4; FF < 23 throws InternalError // https://bugs.chromium.org/p/v8/issues/detail?id=12681 var properErrorOnNonWritableLength = function () { try { // eslint-disable-next-line es/no-object-defineproperty -- safe Object.defineProperty([], 'length', { writable: false }).push(); } catch (error) { return error instanceof TypeError; } }; var FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength(); // `Array.prototype.push` method // https://tc39.es/ecma262/#sec-array.prototype.push $({ target: 'Array', proto: true, arity: 1, forced: FORCED }, { // eslint-disable-next-line no-unused-vars -- required for `.length` push: function push(item) { var O = toObject(this); var len = lengthOfArrayLike(O); var argCount = arguments.length; doesNotExceedSafeInteger(len + argCount); for (var i = 0; i < argCount; i++) { O[len] = arguments[i]; len++; } setArrayLength(O, len); return len; } }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.constructor.js" /*!******************************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.constructor.js ***! \******************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js"); var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../node_modules/core-js/internals/an-instance.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js"); var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ "../node_modules/core-js/internals/object-get-prototype-of.js"); var defineBuiltInAccessor = __webpack_require__(/*! ../internals/define-built-in-accessor */ "../node_modules/core-js/internals/define-built-in-accessor.js"); var createProperty = __webpack_require__(/*! ../internals/create-property */ "../node_modules/core-js/internals/create-property.js"); var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js"); var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js"); var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js"); var IteratorPrototype = (__webpack_require__(/*! ../internals/iterators-core */ "../node_modules/core-js/internals/iterators-core.js").IteratorPrototype); var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js"); var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js"); var CONSTRUCTOR = 'constructor'; var ITERATOR = 'Iterator'; var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var $TypeError = TypeError; var NativeIterator = globalThis[ITERATOR]; // FF56- have non-standard global helper `Iterator` var FORCED = IS_PURE || !isCallable(NativeIterator) || NativeIterator.prototype !== IteratorPrototype // FF44- non-standard `Iterator` passes previous tests || !fails(function () { NativeIterator({}); }); var IteratorConstructor = function Iterator() { anInstance(this, IteratorPrototype); if (getPrototypeOf(this) === IteratorPrototype) throw new $TypeError('Abstract class Iterator not directly constructable'); }; var defineIteratorPrototypeAccessor = function (key, value) { if (DESCRIPTORS) { defineBuiltInAccessor(IteratorPrototype, key, { configurable: true, get: function () { return value; }, set: function (replacement) { anObject(this); if (this === IteratorPrototype) throw new $TypeError("You can't redefine this property"); if (hasOwn(this, key)) this[key] = replacement; else createProperty(this, key, replacement); } }); } else IteratorPrototype[key] = value; }; if (!hasOwn(IteratorPrototype, TO_STRING_TAG)) defineIteratorPrototypeAccessor(TO_STRING_TAG, ITERATOR); if (FORCED || !hasOwn(IteratorPrototype, CONSTRUCTOR) || IteratorPrototype[CONSTRUCTOR] === Object) { defineIteratorPrototypeAccessor(CONSTRUCTOR, IteratorConstructor); } IteratorConstructor.prototype = IteratorPrototype; // `Iterator` constructor // https://tc39.es/ecma262/#sec-iterator $({ global: true, constructor: true, forced: FORCED }, { Iterator: IteratorConstructor }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.every.js" /*!************************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.every.js ***! \************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var iterate = __webpack_require__(/*! ../internals/iterate */ "../node_modules/core-js/internals/iterate.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getIteratorDirect = __webpack_require__(/*! ../internals/get-iterator-direct */ "../node_modules/core-js/internals/get-iterator-direct.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(/*! ../internals/iterator-helper-without-closing-on-early-error */ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js"); var everyWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('every', TypeError); // `Iterator.prototype.every` method // https://tc39.es/ecma262/#sec-iterator.prototype.every $({ target: 'Iterator', proto: true, real: true, forced: everyWithoutClosingOnEarlyError }, { every: function every(predicate) { anObject(this); try { aCallable(predicate); } catch (error) { iteratorClose(this, 'throw', error); } if (everyWithoutClosingOnEarlyError) return call(everyWithoutClosingOnEarlyError, this, predicate); var record = getIteratorDirect(this); var counter = 0; return !iterate(record, function (value, stop) { if (!predicate(value, counter++)) return stop(); }, { IS_RECORD: true, INTERRUPTED: true }).stopped; } }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.filter.js" /*!*************************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.filter.js ***! \*************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getIteratorDirect = __webpack_require__(/*! ../internals/get-iterator-direct */ "../node_modules/core-js/internals/get-iterator-direct.js"); var createIteratorProxy = __webpack_require__(/*! ../internals/iterator-create-proxy */ "../node_modules/core-js/internals/iterator-create-proxy.js"); var callWithSafeIterationClosing = __webpack_require__(/*! ../internals/call-with-safe-iteration-closing */ "../node_modules/core-js/internals/call-with-safe-iteration-closing.js"); var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorHelperThrowsOnInvalidIterator = __webpack_require__(/*! ../internals/iterator-helper-throws-on-invalid-iterator */ "../node_modules/core-js/internals/iterator-helper-throws-on-invalid-iterator.js"); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(/*! ../internals/iterator-helper-without-closing-on-early-error */ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js"); var FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !iteratorHelperThrowsOnInvalidIterator('filter', function () { /* empty */ }); var filterWithoutClosingOnEarlyError = !IS_PURE && !FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR && iteratorHelperWithoutClosingOnEarlyError('filter', TypeError); var FORCED = IS_PURE || FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR || filterWithoutClosingOnEarlyError; var IteratorProxy = createIteratorProxy(function () { var iterator = this.iterator; var predicate = this.predicate; var next = this.next; var result, done, value; while (true) { result = anObject(call(next, iterator)); done = this.done = !!result.done; if (done) return; value = result.value; if (callWithSafeIterationClosing(iterator, predicate, [value, this.counter++], true)) return value; } }); // `Iterator.prototype.filter` method // https://tc39.es/ecma262/#sec-iterator.prototype.filter $({ target: 'Iterator', proto: true, real: true, forced: FORCED }, { filter: function filter(predicate) { anObject(this); try { aCallable(predicate); } catch (error) { iteratorClose(this, 'throw', error); } if (filterWithoutClosingOnEarlyError) return call(filterWithoutClosingOnEarlyError, this, predicate); return new IteratorProxy(getIteratorDirect(this), { predicate: predicate }); } }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.find.js" /*!***********************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.find.js ***! \***********************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var iterate = __webpack_require__(/*! ../internals/iterate */ "../node_modules/core-js/internals/iterate.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getIteratorDirect = __webpack_require__(/*! ../internals/get-iterator-direct */ "../node_modules/core-js/internals/get-iterator-direct.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(/*! ../internals/iterator-helper-without-closing-on-early-error */ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js"); var findWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('find', TypeError); // `Iterator.prototype.find` method // https://tc39.es/ecma262/#sec-iterator.prototype.find $({ target: 'Iterator', proto: true, real: true, forced: findWithoutClosingOnEarlyError }, { find: function find(predicate) { anObject(this); try { aCallable(predicate); } catch (error) { iteratorClose(this, 'throw', error); } if (findWithoutClosingOnEarlyError) return call(findWithoutClosingOnEarlyError, this, predicate); var record = getIteratorDirect(this); var counter = 0; return iterate(record, function (value, stop) { if (predicate(value, counter++)) return stop(value); }, { IS_RECORD: true, INTERRUPTED: true }).result; } }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.for-each.js" /*!***************************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.for-each.js ***! \***************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var iterate = __webpack_require__(/*! ../internals/iterate */ "../node_modules/core-js/internals/iterate.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getIteratorDirect = __webpack_require__(/*! ../internals/get-iterator-direct */ "../node_modules/core-js/internals/get-iterator-direct.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(/*! ../internals/iterator-helper-without-closing-on-early-error */ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js"); var forEachWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('forEach', TypeError); // `Iterator.prototype.forEach` method // https://tc39.es/ecma262/#sec-iterator.prototype.foreach $({ target: 'Iterator', proto: true, real: true, forced: forEachWithoutClosingOnEarlyError }, { forEach: function forEach(fn) { anObject(this); try { aCallable(fn); } catch (error) { iteratorClose(this, 'throw', error); } if (forEachWithoutClosingOnEarlyError) return call(forEachWithoutClosingOnEarlyError, this, fn); var record = getIteratorDirect(this); var counter = 0; iterate(record, function (value) { fn(value, counter++); }, { IS_RECORD: true }); } }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.map.js" /*!**********************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.map.js ***! \**********************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getIteratorDirect = __webpack_require__(/*! ../internals/get-iterator-direct */ "../node_modules/core-js/internals/get-iterator-direct.js"); var createIteratorProxy = __webpack_require__(/*! ../internals/iterator-create-proxy */ "../node_modules/core-js/internals/iterator-create-proxy.js"); var callWithSafeIterationClosing = __webpack_require__(/*! ../internals/call-with-safe-iteration-closing */ "../node_modules/core-js/internals/call-with-safe-iteration-closing.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorHelperThrowsOnInvalidIterator = __webpack_require__(/*! ../internals/iterator-helper-throws-on-invalid-iterator */ "../node_modules/core-js/internals/iterator-helper-throws-on-invalid-iterator.js"); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(/*! ../internals/iterator-helper-without-closing-on-early-error */ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js"); var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js"); var MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !iteratorHelperThrowsOnInvalidIterator('map', function () { /* empty */ }); var mapWithoutClosingOnEarlyError = !IS_PURE && !MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR && iteratorHelperWithoutClosingOnEarlyError('map', TypeError); var FORCED = IS_PURE || MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR || mapWithoutClosingOnEarlyError; var IteratorProxy = createIteratorProxy(function () { var iterator = this.iterator; var result = anObject(call(this.next, iterator)); var done = this.done = !!result.done; if (!done) return callWithSafeIterationClosing(iterator, this.mapper, [result.value, this.counter++], true); }); // `Iterator.prototype.map` method // https://tc39.es/ecma262/#sec-iterator.prototype.map $({ target: 'Iterator', proto: true, real: true, forced: FORCED }, { map: function map(mapper) { anObject(this); try { aCallable(mapper); } catch (error) { iteratorClose(this, 'throw', error); } if (mapWithoutClosingOnEarlyError) return call(mapWithoutClosingOnEarlyError, this, mapper); return new IteratorProxy(getIteratorDirect(this), { mapper: mapper }); } }); /***/ }, /***/ "../node_modules/core-js/modules/es.iterator.reduce.js" /*!*************************************************************!*\ !*** ../node_modules/core-js/modules/es.iterator.reduce.js ***! \*************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js"); var iterate = __webpack_require__(/*! ../internals/iterate */ "../node_modules/core-js/internals/iterate.js"); var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js"); var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js"); var getIteratorDirect = __webpack_require__(/*! ../internals/get-iterator-direct */ "../node_modules/core-js/internals/get-iterator-direct.js"); var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ "../node_modules/core-js/internals/iterator-close.js"); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(/*! ../internals/iterator-helper-without-closing-on-early-error */ "../node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js"); var apply = __webpack_require__(/*! ../internals/function-apply */ "../node_modules/core-js/internals/function-apply.js"); var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js"); var $TypeError = TypeError; // https://bugs.webkit.org/show_bug.cgi?id=291651 var FAILS_ON_INITIAL_UNDEFINED = fails(function () { // eslint-disable-next-line es/no-iterator-prototype-reduce, es/no-array-prototype-keys, array-callback-return -- required for testing [].keys().reduce(function () { /* empty */ }, undefined); }); var reduceWithoutClosingOnEarlyError = !FAILS_ON_INITIAL_UNDEFINED && iteratorHelperWithoutClosingOnEarlyError('reduce', $TypeError); // `Iterator.prototype.reduce` method // https://tc39.es/ecma262/#sec-iterator.prototype.reduce $({ target: 'Iterator', proto: true, real: true, forced: FAILS_ON_INITIAL_UNDEFINED || reduceWithoutClosingOnEarlyError }, { reduce: function reduce(reducer /* , initialValue */) { anObject(this); try { aCallable(reducer); } catch (error) { iteratorClose(this, 'throw', error); } var noInitial = arguments.length < 2; var accumulator = noInitial ? undefined : arguments[1]; if (reduceWithoutClosingOnEarlyError) { return apply(reduceWithoutClosingOnEarlyError, this, noInitial ? [reducer] : [reducer, accumulator]); } var record = getIteratorDirect(this); var counter = 0; iterate(record, function (value) { if (noInitial) { noInitial = false; accumulator = value; } else { accumulator = reducer(accumulator, value, counter); } counter++; }, { IS_RECORD: true }); if (noInitial) throw new $TypeError('Reduce of empty iterator with no initial value'); return accumulator; } }); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.constructor.js" /*!**********************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.constructor.js ***! \**********************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.constructor */ "../node_modules/core-js/modules/es.iterator.constructor.js"); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.every.js" /*!****************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.every.js ***! \****************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.every */ "../node_modules/core-js/modules/es.iterator.every.js"); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.filter.js" /*!*****************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.filter.js ***! \*****************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.filter */ "../node_modules/core-js/modules/es.iterator.filter.js"); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.find.js" /*!***************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.find.js ***! \***************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.find */ "../node_modules/core-js/modules/es.iterator.find.js"); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.for-each.js" /*!*******************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.for-each.js ***! \*******************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.for-each */ "../node_modules/core-js/modules/es.iterator.for-each.js"); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.map.js" /*!**************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.map.js ***! \**************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.map */ "../node_modules/core-js/modules/es.iterator.map.js"); /***/ }, /***/ "../node_modules/core-js/modules/esnext.iterator.reduce.js" /*!*****************************************************************!*\ !*** ../node_modules/core-js/modules/esnext.iterator.reduce.js ***! \*****************************************************************/ (__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { // TODO: Remove from `core-js@4` __webpack_require__(/*! ../modules/es.iterator.reduce */ "../node_modules/core-js/modules/es.iterator.reduce.js"); /***/ } /******/ }); /************************************************************************/ /******/ // 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] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ if (!(moduleId in __webpack_modules__)) { /******/ delete __webpack_module_cache__[moduleId]; /******/ var e = new Error("Cannot find module '" + moduleId + "'"); /******/ e.code = 'MODULE_NOT_FOUND'; /******/ throw e; /******/ } /******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* 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; /******/ } /******/ })(); /******/ })(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk. (() => { /*!********************************************************************!*\ !*** ../modules/interactions/assets/js/editor-interactions-pro.js ***! \********************************************************************/ __webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.filter.js */ "../node_modules/core-js/modules/esnext.iterator.filter.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.find.js */ "../node_modules/core-js/modules/esnext.iterator.find.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js"); __webpack_require__(/*! core-js/modules/esnext.iterator.map.js */ "../node_modules/core-js/modules/esnext.iterator.map.js"); var _interactionsUtils = __webpack_require__(/*! ./interactions-utils.js */ "../modules/interactions/assets/js/interactions-utils.js"); /** * @type {Record & { cancel: () => void }>} */ const playingInteractionsToStop = {}; const MAX_REPEAT_COUNT_EDITOR = 3; function applyAnimation(element, animConfig, animateFunc) { const { id } = element; if (playingInteractionsToStop[id]) { playingInteractionsToStop[id].cancel(); delete playingInteractionsToStop[id]; } const baseline = (0, _interactionsUtils.getTransformBaselineFromComputedStyle)(element); const keyframes = (0, _interactionsUtils.preserveTransformKeyframes)((0, _interactionsUtils.animationKeyframes)(animConfig), baseline); const isScrollOn = 'scrollOn' === animConfig.trigger; const repeatOptions = isScrollOn ? {} : (0, _interactionsUtils.getAnimationRepeatOptions)(animConfig.animation); if (repeatOptions.repeat === Infinity) { repeatOptions.repeat = MAX_REPEAT_COUNT_EDITOR; } const options = { duration: animConfig.animation.timing.duration * .001, delay: animConfig.animation.timing.delay * .001, ease: animConfig.animation.easing ?? (0, _interactionsUtils.config)()?.defaultEasing, ...repeatOptions }; const initialKeyframes = {}; Object.keys(keyframes).forEach(key => { initialKeyframes[key] = keyframes[key][0]; }); // WHY - Transition can be set on elements but once it sets it destroys all animations, so we basically put it aside. element.style.transition = 'initial'; animateFunc(element, initialKeyframes, { duration: 0 }).then(() => { const animation = animateFunc(element, keyframes, options); playingInteractionsToStop[id] = animation; animation.then(() => { requestAnimationFrame(() => { (0, _interactionsUtils.resetElementStyles)(element); }); delete playingInteractionsToStop[id]; }); }); } function getInteractionsData() { const scriptTag = document.querySelector('script[data-e-interactions="true"]'); if (!scriptTag) { return []; } try { return JSON.parse(scriptTag.textContent || '[]'); } catch { return []; } } function findElementByInteractionId(interactionId) { return document.querySelector('[data-interaction-id="' + interactionId + '"]'); } function applyInteractionsToElement(element, interactionsData) { const animateFunc = (0, _interactionsUtils.getAnimateFunction)(); if (!animateFunc) { return; } const parsedData = (0, _interactionsUtils.parseInteractionsData)(interactionsData); if (!parsedData) { return; } const interactions = Object.values(parsedData?.items || []); interactions.forEach(interaction => { const animConfig = (0, _interactionsUtils.extractAnimationConfig)(interaction); if (animConfig) { applyAnimation(element, animConfig, animateFunc); } }); } let previousInteractionsData = []; function handleInteractionsUpdate() { const currentInteractionsData = getInteractionsData(); const changedItems = currentInteractionsData.filter(currentItem => { const previousItem = previousInteractionsData.find(prev => prev.dataId === currentItem.dataId); if (!previousItem) { return true; } const currentIds = (currentItem.interactions?.items || []).map(_interactionsUtils.extractInteractionId).filter(Boolean).sort().join(','); const prevIds = (previousItem.interactions?.items || []).map(_interactionsUtils.extractInteractionId).filter(Boolean).sort().join(','); return currentIds !== prevIds; }); changedItems.forEach(item => { const element = findElementByInteractionId(item.dataId); const prevInteractions = previousInteractionsData.find(prev => prev.dataId === item.dataId)?.interactions; if (!element || !item.interactions?.items?.length) { return; } const prevIds = new Set((prevInteractions?.items || []).map(_interactionsUtils.extractInteractionId).filter(Boolean)); const changedInteractions = item.interactions.items.filter(interaction => { const id = (0, _interactionsUtils.extractInteractionId)(interaction); return !id || !prevIds.has(id); }); if (changedInteractions.length > 0) { applyInteractionsToElement(element, { ...item.interactions, items: changedInteractions }); } }); previousInteractionsData = currentInteractionsData; } function initEditorInteractionsHandler() { (0, _interactionsUtils.waitForAnimateFunction)(() => { const head = document.head; let scriptTag = null; let observer = null; function setupObserver(tag) { if (observer) { observer.disconnect(); } observer = new MutationObserver(() => { handleInteractionsUpdate(); }); observer.observe(tag, { childList: true, characterData: true, subtree: true }); handleInteractionsUpdate(); registerWindowEvents(); } const headObserver = new MutationObserver(() => { const foundScriptTag = document.querySelector('script[data-e-interactions="true"]'); if (foundScriptTag && foundScriptTag !== scriptTag) { scriptTag = foundScriptTag; setupObserver(scriptTag); headObserver.disconnect(); } }); headObserver.observe(head, { childList: true, subtree: true }); scriptTag = document.querySelector('script[data-e-interactions="true"]'); if (scriptTag) { setupObserver(scriptTag); headObserver.disconnect(); } }); } function registerWindowEvents() { window.top.addEventListener('atomic/play_interactions', handlePlayInteractions); } function handlePlayInteractions(event) { const { elementId, interactionId } = event.detail; const interactionsData = getInteractionsData(); const item = interactionsData.find(elementItemData => elementItemData.dataId === elementId); if (!item) { return; } const element = findElementByInteractionId(elementId); if (!element) { return; } const interactionsCopy = { ...item.interactions, items: item.interactions.items.filter(interactionItem => { const itemId = (0, _interactionsUtils.extractInteractionId)(interactionItem); return itemId === interactionId; }) }; applyInteractionsToElement(element, interactionsCopy); } if ('loading' === document.readyState) { document.addEventListener('DOMContentLoaded', initEditorInteractionsHandler); } else { initEditorInteractionsHandler(); } })(); /******/ })() ; //# sourceMappingURL=editor-interactions-pro.js.map Atul tutorials https://atultutorials.com Fri, 30 Oct 2026 16:45:40 +0000 en-US hourly 1 https://wordpress.org/?v=6.7.11 https://atultutorials.com/wp-content/uploads/2024/12/cropped-Atul-Tutorials-logo-02-1-32x32.png Atul tutorials https://atultutorials.com 32 32 Wolf Winner Casino: Quick-Hit Sessions and the Art of the Fast Cash-Out https://atultutorials.com/2026/10/30/wolf-winner-casino-quick-hit-sessions-and-the-art-of-the-fast-cash-out/ Fri, 30 Oct 2026 14:42:15 +0000 https://atultutorials.com/?p=5532 Some players settle in for a long evening. Others want a result in five minutes. This piece is about the second group — the players who open Wolf Winner, pick a game, make a handful of decisions, and either bank a small profit or walk away without drama. If that rhythm sounds familiar, you’ll recognise […]

The post Wolf Winner Casino: Quick-Hit Sessions and the Art of the Fast Cash-Out first appeared on Atul tutorials.

]]>
Some players settle in for a long evening. Others want a result in five minutes. This piece is about the second group — the players who open Wolf Winner, pick a game, make a handful of decisions, and either bank a small profit or walk away without drama. If that rhythm sounds familiar, you’ll recognise most of what follows.

Short, high-intensity play is not a lesser way to gamble. It’s a distinct discipline. The whole session might last as long as a coffee break, and every click carries weight because there’s no time to “wait it out”. Understanding how that pace actually works — where the pressure points are, when to stop, how to read your own behaviour — matters more than any game’s theme or soundtrack.

Why the Five-Minute Session Has Its Own Logic

Long sessions invite drift. You start with a plan, then slowly lose the thread somewhere around the fortieth spin. Short sessions don’t allow that. The trade-off is that everything is compressed: a bad streak arrives faster, and so does a good one.

Players who favour this style tend to think in rounds rather than hours. A typical visit to Wolf Winner might look like this:

  • Log in, check the balance, decide on a hard stop figure before the first spin
  • Choose one game — often a volatile slot like Sweet Bonanza or Gonzo’s Quest — and commit to it rather than hopping around
  • Set a rough spin count: twenty, thirty, maybe fifty, then reassess
  • Cash out at a predetermined point, or stop when the count runs out, whichever comes first

That last item is where most people fail, and they know it. The discipline isn’t in picking the game. It’s in leaving when the plan says leave. A quick session only works if it actually ends quickly.

Picking the Right Game for a Fast Result

Not every title suits a sprint. Low-volatility games like Starburst can stretch a small balance across many spins, which is fine if you want to linger — but it’s the opposite of what a quick-hit player wants. They want variance. They want the possibility of a meaningful multiplier inside a short window, and they accept that most rounds will return nothing.

This is why the more volatile slots dominate short-session play. Big Bass Bonanza, Book of Dead, Buffalo Blitz — these games can produce a lopsided result in a dozen spins or produce nothing at all. The player isn’t buying entertainment time. They’re buying a lottery ticket with a spin button.

Where live tables fit in

Live games behave differently. A hand of Live Blackjack or a round of Live Roulette takes real time, and the pace is set by the dealer, not by you. That suits a slightly longer version of the same mindset — maybe ten minutes rather than five. Some players use a single live round as a chaser after a slot session, a way to end on a deliberate, considered decision rather than another reflex tap. Crazy Time and Monopoly Live sit somewhere in between: fast enough to feel like a sprint, structured enough to feel like an event.

The Mental Bookkeeping of a Short Session

Here’s something experienced quick-hit players do that newcomers rarely manage: they decide what “done” looks like before they start. Not a vague hope of winning. A number. If the balance hits a certain figure, they stop. If it drops to a certain figure, they also stop.

The reason is simple. In a session that lasts three hours, one bad decision gets diluted. In a session that lasts five minutes, one bad decision is the whole session. There’s no room to recover from a tilt-driven double-up, because by the time you’d normally cool off, the session is already over — usually in the red.

So the practical habits look like this:

  • Deposits are small and deliberate; the welcome package at Wolf Winner, with its 200% match up to AU$500 and 100 free spins on a AU$20 minimum, is often treated as session ammunition rather than a bankroll to be preserved
  • Stake size is fixed per spin, not escalated after losses
  • Wins are withdrawn rather than recycled — the point of a quick session is that it produces a result
  • A timer or a spin counter does the job that willpower often can’t

None of this is glamorous. It’s just the difference between a player who treats short sessions as a controlled burst and one who treats them as a way to lose money faster.

Mobile Visits and the Friction Problem

Most short sessions happen on a phone. That’s not a preference so much as a consequence of when the impulse strikes — in a queue, on a break, waiting for someone. Wolf Winner runs in the browser on iOS and Android, so there’s no app to install and no update to wait for. You open the site, you’re in.

Friction matters more than people admit. Every extra step between the impulse and the first spin is a chance to reconsider, and most players don’t want to reconsider — they’ve already decided. The same logic applies on the way out. A withdrawal that takes days to land undercuts the entire point of a five-minute session; the result should feel settled, not pending. This is where payment choice quietly shapes behaviour. Crypto and e-wallet routes tend to suit the quick-exit mindset, while bank transfers are for people who don’t mind the wait.

What Short-Session Players Actually Get Wrong

The most common mistake isn’t chasing losses. It’s something subtler: treating the bonus balance as free money. It isn’t. The 30x wagering requirement attached to the welcome offer means a quick session and a bonus balance are not natural partners — clearing that kind of playthrough takes volume, and volume takes time.

Quick-hit players who understand this either skip bonuses entirely or treat them as a separate, longer project. Mixing the two leads to the worst outcome: a player trying to play fast while technically locked into a slow obligation. The same tension shows up in the VIP tiers, which reward activity over time. A sprinter will climb slowly, and that’s fine — the perks aren’t the reason they’re here.

Reading your own patterns

After a few weeks, most players notice something about themselves. Maybe sessions stretch past the intended five minutes. Maybe the stake creeps up after two losses. Maybe the cash-out button gets ignored because the next spin “feels close”. These aren’t moral failings; they’re just patterns, and patterns can be observed. The players who last are the ones who look at their own history honestly and adjust the plan accordingly — a lower fixed stake, a stricter spin count, a rule that any win above a set figure gets withdrawn immediately.

Set Your Limit, Spin Fast, and Get Your Bonus Now

Short sessions are not reckless by definition. Done with a fixed stake, a spin count, and a cash-out target, they’re arguably the most controlled way to play — because the whole thing is over before bad habits have time to form. The intensity is the point. So is the exit.

If that’s your rhythm, Wolf Winner fits it well enough: a large game library to pick a single title from, mobile access without an install, and payment routes that let a small win actually leave the account. Decide your number before you log in. Spin with intent. And when the plan says stop, stop — that’s the whole skill.

The post Wolf Winner Casino: Quick-Hit Sessions and the Art of the Fast Cash-Out first appeared on Atul tutorials.

]]>
https://atultutorials.com/2026/10/30/page-138/ https://atultutorials.com/2026/10/30/page-138/#respond Fri, 30 Oct 2026 09:43:24 +0000 https://atultutorials.com/?p=5538 Pinup Casino: Azərbaycanın Onlayn Qazanc Mərkəzi Pinup Casino: Azərbaycanın Onlayn Oyun Dünyası Son illərdə onlayn kazino oyunları Azərbaycanda populyarlıq qazanıb. İnsanlar evdən çıxmadan real pula oynamaq və əylənmək imkanı axtarırlar. Bu kontekstdə, pin up kazino platforması diqqət çəkir. Burada oyunçular müxtəlif kazino oyunları və slotlar ilə tanış ola bilərlər. Pinup Casino-nun Xüsusiyyətləri Pinup Casino, geniş […]

The post first appeared on Atul tutorials.

]]>
Pinup Casino: Azərbaycanın Onlayn Qazanc Mərkəzi

Pinup Casino: Azərbaycanın Onlayn Oyun Dünyası

Son illərdə onlayn kazino oyunları Azərbaycanda populyarlıq qazanıb. İnsanlar evdən çıxmadan real pula oynamaq və əylənmək imkanı axtarırlar. Bu kontekstdə, pin up kazino platforması diqqət çəkir. Burada oyunçular müxtəlif kazino oyunları və slotlar ilə tanış ola bilərlər.

Pinup Casino-nun Xüsusiyyətləri

Pinup Casino, geniş oyun seçimi ilə müştərilərə xidmət edir. Bu platformada həm klassik kazino oyunları, həm də yeni nəsil slotlar mövcuddur. Oyunçular üçün müasir və intuitiv interfeys təqdim olunur. Həmçinin, platformada bonuslar və pulsuz fırlanmalar da mövcuddur.

Qeydiyyat Prosesi

Pinup Casino-da qeydiyyat prosesi sadə və sürətlidir. Oyunçular yalnız bir neçə dəqiqə ərzində öz hesablarını yarada bilərlər. Qeydiyyat zamanı istifadəçi adınızı, e-poçtunuzu və şifrənizi daxil etməlisiniz. Bu, sizə onlayn oyunlar oynamağa başlamaq imkanı verəcək.

Bonuslar və Pulsuz Fırlanmalar

Pinup Casino-nun təklif etdiyi bonuslar, oyunçuların oyun təcrübəsini artırmaq məqsədini güdür. Yeni başlayanlar üçün xoş gəlmisiniz bonusu təqdim edilir. Eyni zamanda, mütəmadi oyunçular üçün pulsuz fırlanmalar və digər promosyonlar mövcuddur. Bu bonuslar, oyunçuların daha çox qazanma şansı əldə etmələrini təmin edir.

Oyun Seçimi

Pinup Casino, müxtəlif oyun növləri ilə zəngindir. Oyunçular, klassik kart oyunlarından tutmuş, müxtəlif slotlara qədər geniş seçim edə bilərlər. Hər bir oyun, unikal temalar və yüksək keyfiyyətli qrafika ilə oyunçulara təqdim olunur. Bu da oyun təcrübəsini daha da maraqlı edir.

Real Pula Oynamaq

Onlayn kazino oyunlarını real pula oynamaq, bir çox insan üçün həyəcan verici bir təcrübədir. Pinup Casino-da oyunçular, öz strategiyalarını sınaqdan keçirə və qazanma şanslarını artırmaq üçün fərqli oyunları seçə bilərlər. Burada, hər bir oyunçu üçün uyğun bir şey tapmaq mümkündür.

Müştəri Dəstəyi

Pinup Casino, müştəri məmnuniyyətini ön planda tutur. Oyunçular, istənilən sual və ya problem ilə bağlı 24/7 müştəri dəstəyi ilə əlaqə saxlaya bilərlər. Bu, istifadəçilərin rahatlığını artırır və onlayn oyun təcrübəsini daha da mükəmməl edir.

Nəticə

Pinup Casino, Azərbaycanın onlayn oyun dünyasında seçilən platformalardan biridir. Geniş oyun seçimi, cazibədar bonuslar və mükəmməl müştəri xidməti ilə oyunçulara keyfiyyətli bir təcrübə təqdim edir. Onlayn kazino oyunlarına maraq göstərən hər kəs üçün Pinup Casino mükəmməl bir seçimdir.

The post first appeared on Atul tutorials.

]]>
https://atultutorials.com/2026/10/30/page-138/feed/ 0
Descubre la Emoción de Jugar con Fortune Gems 2: La App de Casino Ideal para México https://atultutorials.com/2026/10/30/descubre-la-emocion-de-jugar-con-fortune-gems-2-la-4/ https://atultutorials.com/2026/10/30/descubre-la-emocion-de-jugar-con-fortune-gems-2-la-4/#respond Fri, 30 Oct 2026 08:56:26 +0000 https://atultutorials.com/?p=5526 Introducción a Fortune Gems 2 App En el emocionante mundo de los casinos en línea, la Fortune Gems 2 app se ha posicionado como una de las opciones más atractivas para los jugadores en México. Esta aplicación ofrece una experiencia de juego única, combinando la diversión de las tragamonedas con la posibilidad de ganar bonos […]

The post Descubre la Emoción de Jugar con Fortune Gems 2: La App de Casino Ideal para México first appeared on Atul tutorials.

]]>
Introducción a Fortune Gems 2 App

En el emocionante mundo de los casinos en línea, la Fortune Gems 2 app se ha posicionado como una de las opciones más atractivas para los jugadores en México. Esta aplicación ofrece una experiencia de juego única, combinando la diversión de las tragamonedas con la posibilidad de ganar bonos y giros gratis. Si estás buscando una forma de entretenerte y, al mismo tiempo, tener la oportunidad de jugar con dinero real, has llegado al lugar indicado. Puedes descargar fortune gems 2 y comenzar tu aventura en el mundo de los juegos de casino.

Características principales de la Fortune Gems 2 App

La Fortune Gems 2 app cuenta con diversas características que la hacen destacar entre otras aplicaciones de juegos en línea. A continuación, te presentamos algunas de las más relevantes:

  • Interfaz amigable: La aplicación está diseñada para ser intuitiva, lo que permite a los usuarios navegar fácilmente por sus diferentes secciones.
  • Variedad de tragamonedas: Ofrece una amplia gama de juegos de tragamonedas, cada uno con gráficos atractivos y mecánicas emocionantes.
  • Bonos atractivos: Los nuevos usuarios pueden disfrutar de bonos de bienvenida que aumentan sus posibilidades de ganar desde el principio.
  • Giros gratis: La aplicación frecuentemente ofrece promociones de giros gratis, permitiendo a los jugadores probar suerte sin arriesgar su propio dinero.

¿Cómo registrarse en Fortune Gems 2 App?

Registrar una cuenta en la Fortune Gems 2 app es un proceso sencillo y rápido. A continuación, te mostramos los pasos a seguir:

  • Paso 1: Descarga la aplicación desde el enlace proporcionado.
  • Paso 2: Abre la aplicación y busca la opción de registro.
  • Paso 3: Completa el formulario con tu información personal, incluyendo tu nombre, correo electrónico y una contraseña segura.
  • Paso 4: Acepta los términos y condiciones, y confirma tu registro.
  • Paso 5: Verifica tu cuenta a través del correo electrónico que recibirás.

Una vez que completes estos pasos, estarás listo para explorar todos los juegos que la Fortune Gems 2 app tiene para ofrecer.

Bonos y promociones

Uno de los aspectos más emocionantes de la Fortune Gems 2 app son los bonos y promociones que ofrece a sus usuarios. Estos incentivos son una excelente manera de maximizar tu experiencia de juego y aumentar tus posibilidades de ganar. Algunos de los bonos más populares incluyen:

  • Bonos de bienvenida: Al registrarte, recibirás un bono que puede ser utilizado en tus primeras apuestas.
  • Promociones diarias: La app ofrece promociones que cambian diariamente, permitiéndote obtener giros gratis o bonos adicionales.
  • Programa de lealtad: Al jugar con frecuencia, puedes acumular puntos que se pueden canjear por recompensas exclusivas.

Estas promociones hacen que la Fortune Gems 2 app sea aún más atractiva para los jugadores que buscan obtener el máximo valor en su tiempo de juego.

Opciones de juego en la Fortune Gems 2 App

La variedad de juegos disponibles en la Fortune Gems 2 app es impresionante. Desde clásicas tragamonedas de tres carretes hasta modernas máquinas de video, hay algo para todos los gustos. Algunos de los tipos de juegos que puedes encontrar incluyen:

  • Tragamonedas clásicas: Juegos que evocan la nostalgia de los casinos tradicionales.
  • Tragamonedas de video: Con gráficos avanzados y funciones interactivas, estos juegos ofrecen una experiencia más inmersiva.
  • Juegos de mesa: Opciones como el blackjack y la ruleta están disponibles para aquellos que prefieren los juegos de casino más tradicionales.
  • Juegos en vivo: Experimenta la emoción de jugar con crupieres reales a través de la transmisión en vivo.

Independientemente de tu preferencia, la Fortune Gems 2 app tiene un juego que se adaptará a tu estilo.

Consejos para jugar en la Fortune Gems 2 App

Si eres nuevo en la Fortune Gems 2 app o en el mundo de los juegos de casino, aquí hay algunos consejos para mejorar tu experiencia de juego:

  • Establece un presupuesto: Antes de comenzar a jugar, decide cuánto dinero estás dispuesto a gastar y mantente dentro de ese límite.
  • Prueba los juegos gratis: Aprovecha las opciones de juegos gratuitos para familiarizarte con las mecánicas antes de jugar con dinero real.
  • Infórmate sobre los bonos: Conoce las promociones disponibles y utilízalas para maximizar tu tiempo de juego.
  • Juega responsablemente: Recuerda que el juego debe ser una forma de entretenimiento. Si sientes que te está afectando, busca ayuda.

Siguiendo estos consejos, podrás disfrutar de una experiencia de juego más segura y agradable en la Fortune Gems 2 app.

Conclusión

La Fortune Gems 2 app se presenta como una opción emocionante para los amantes de los juegos en línea en México. Con su amplia variedad de tragamonedas, atractivos bonos y una experiencia de registro sencilla, se ha convertido en una de las aplicaciones más populares en el mercado. No esperes más para descargar fortune gems 2 y comenzar a disfrutar de todo lo que esta increíble app tiene para ofrecer. Recuerda siempre jugar de manera responsable y divertirte al máximo en cada sesión de juego.

The post Descubre la Emoción de Jugar con Fortune Gems 2: La App de Casino Ideal para México first appeared on Atul tutorials.

]]>
https://atultutorials.com/2026/10/30/descubre-la-emocion-de-jugar-con-fortune-gems-2-la-4/feed/ 0
SpinFred Casino: Fast Sessions and the Pull of Quick Wins https://atultutorials.com/2026/10/30/spinfred-casino-fast-sessions-and-the-pull-of-quick-wins/ Fri, 30 Oct 2026 03:22:27 +0000 https://atultutorials.com/?p=5504 Some players want a marathon. Others want a sprint. This piece is about the second group — the ones who open SpinFred, pick a slot, spin hard for a few minutes, and either bank a win or move on without regret. If that sounds familiar, you’ll recognize the rhythm described here. A proper SpinFred Casino […]

The post SpinFred Casino: Fast Sessions and the Pull of Quick Wins first appeared on Atul tutorials.

]]>
Some players want a marathon. Others want a sprint. This piece is about the second group — the ones who open SpinFred, pick a slot, spin hard for a few minutes, and either bank a win or move on without regret. If that sounds familiar, you’ll recognize the rhythm described here.

A proper SpinFred Casino overview should start with how people actually use the site, not just what’s listed on it. The library is huge, the lobby is busy, and the temptation is always to jump between titles. But the quick-outcome player doesn’t browse for long. They arrive with intent, often already knowing the game they want, and the platform rewards that kind of decisive behavior.

The Short-Burst Mindset

Short, high-intensity sessions are a distinct style of play. The player isn’t trying to grind out a long-term profit. They want a result, and they want it soon. Sessions might last ten minutes, sometimes less. A deposit goes in, a slot loads, and the spins come fast.

This is where games like Starburst or Book of Dead fit naturally. Both are easy to read at a glance, both can produce a meaningful hit without requiring an hour of patience, and both load quickly enough that the session doesn’t stall before it starts. The quick player values speed above almost everything else.

  • Deposit, load, spin — minimal setup time matters
  • Stake is set once and rarely adjusted mid-session
  • The exit decision is made fast: cash out or walk away

There’s a certain discipline in this approach. The player who knows they’ll leave in ten minutes is often less likely to chase losses than someone who’s been sitting there for two hours. The clock does some of the risk management for them.

Why the Lobby Suits Fast Decisions

With thousands of slots across dozens of providers, the lobby could easily become a trap for indecisive players. The quick-session player avoids that by treating the search bar as their main tool. They type a name, hit play, and they’re spinning within seconds.

That’s not to say variety doesn’t matter. It matters enormously for repeat visits. A player who pops in three times a week wants something different each time, even if each visit is brief. One day it’s a Megaways title like Bonanza or Extra Chilli, the next it’s a simpler three-reeler for a change of pace. The breadth of the catalogue keeps short sessions from feeling repetitive.

What Gets Skipped

Interestingly, the burst player often ignores large parts of the site entirely. Live dealer tables, video poker, bingo — all available, all rarely touched by this crowd. Not because they’re worse, but because they demand a different tempo. A live blackjack hand takes time. A slot spin takes a second. When your whole session is a few minutes long, that difference decides everything.

Stake Control in Ten-Minute Windows

Risk tolerance in these sessions tends to run higher than average, but it’s bounded by the clock. A player might load twenty dollars and spin at a dollar a spin, knowing the bankroll has a hard floor. When it’s gone, it’s gone — and when it doubles, there’s a real chance they’ll cash out immediately rather than push for more.

This is where the SpinFred Casino bonus structure quietly fits the behavior. The welcome offer spreads 100 free spins across ten days at ten per day, which is almost tailor-made for the player who logs in briefly and often. Ten spins on Starburst is a two-minute affair. It slots neatly into a coffee break.

  • Small daily free spin batches suit repeated micro-visits
  • Wagering terms reward the player who keeps sessions short and focused
  • Slot play counts fully toward requirements, so no detours needed

The max bet cap during wagering is another detail that matters here. A five-dollar ceiling per spin keeps the high-intensity player from going too wild while clearing a bonus, which is a sensible guardrail for exactly this kind of user.

Mobile as the Default Screen

For most quick-session players, the phone is the casino. SpinFred runs fully in a mobile browser, and native apps exist for both iOS and Android if that’s preferred. The practical upshot is that a session can start anywhere — waiting for a bus, standing in a queue, the last five minutes of lunch.

That context shapes everything. Spins happen one-handed. The player isn’t studying paytables; they’re watching the reels and reacting. Biometric login removes the friction of typing a password, which sounds trivial until you realize that friction is exactly what kills a three-minute session before it begins.

Push notifications for bonus expiry are a small but meaningful touch for this crowd. The player who forgets they have free spins waiting is the player who drifts away. A nudge brings them back for another short burst, and the cycle continues.

The Psychology of the Quick Cash-Out

Ask a burst player what a good session looks like and you won’t hear about marathon grinds. You’ll hear about turning twenty into sixty and walking away. The satisfaction comes from the exit, not the duration.

This creates an interesting pattern of behavior. Wins get banked fast. Losses get accepted fast. There’s little of the brooding that comes with longer play, and arguably less of the regret. The session ends on the player’s terms, which is precisely the point.

Of course, the style has its risks. Rapid decisions can become impulsive ones, and the pace of slot play makes it easy to lose track of spend. That’s why the platform’s deposit and session-time limits are worth setting up front, even for players who think they don’t need them. A ten-minute limit on a ten-minute habit is just good housekeeping.

There’s also a social dimension worth noting. Quick players often compare results in group chats or forums, sharing screenshots of a big hit from a five-minute session. The brevity becomes part of the story — the idea that a fortune can land in the time it takes to drink a coffee. That narrative fuels the next visit, and the one after that.

Making the Most of a Brief Visit

If you recognize yourself in this article, a few practical habits are worth adopting. They won’t change the game, but they’ll make short sessions smoother and more controlled.

  1. Decide your stake and your exit point before the first spin.
  2. Pick one or two games per session rather than hopping constantly.
  3. Use the daily free spin batches as a warm-up, not a reason to deposit more.
  4. Check your balance after every significant win — cash-out decisions get worse when delayed.

None of this is revolutionary. It’s just the common sense of a player who values their time and knows that a tight, focused session usually feels better than a long, drifting one. The platform’s speed supports that philosophy; the rest is up to the person holding the phone.

Ready to Spin on Your Own Schedule? Get Your Bonus Now!

Short sessions, fast decisions, and a clean exit — that’s the rhythm this article has followed from start to finish. If it matches how you like to play, SpinFred is built for exactly that pace. Claim the welcome offer, set your limits, and see what a few focused minutes can do. Get Your Bonus Now and make your next coffee break count.

The post SpinFred Casino: Fast Sessions and the Pull of Quick Wins first appeared on Atul tutorials.

]]>
LuckyWins Casino: Fast Sessions, Quick Decisions, and the Mobile Player Mindset https://atultutorials.com/2026/10/29/luckywins-casino-fast-sessions-quick-decisions-and-the-mobile-player-mindset/ Thu, 29 Oct 2026 23:43:37 +0000 https://atultutorials.com/?p=5500 Most players don’t sit down for hours. They open a tab, spin for ten minutes, maybe deposit a little, and close it again. That rhythm — short, repeated, mobile-first — is the one this article is about. LuckyWins fits neatly into that pattern, and if you recognize yourself in it, the way you use the […]

The post LuckyWins Casino: Fast Sessions, Quick Decisions, and the Mobile Player Mindset first appeared on Atul tutorials.

]]>
Most players don’t sit down for hours. They open a tab, spin for ten minutes, maybe deposit a little, and close it again. That rhythm — short, repeated, mobile-first — is the one this article is about. LuckyWins fits neatly into that pattern, and if you recognize yourself in it, the way you use the site will look a lot like what follows.

You’re on your phone, probably on a break or half-watching something else. You open LuckyWins Casino in the browser, log in, and you’re spinning within seconds. No downloads, no app store detours — the HTML5 site just loads. That speed matters more than people admit. When a session is going to last eight minutes, a two-minute setup kills the mood.

What a Ten-Minute Session Actually Looks Like

Here’s a realistic run. Coffee in hand, phone in the other. You open LuckyWins, check your balance, and pick a slot you already know. Big Bass Bonanza, maybe, or 9 Pots of Gold — familiar reels, familiar pace. You set your bet low, because the point isn’t to win big in ten minutes; the point is to enjoy the ten minutes.

This is the core behavior pattern: quick outcomes, small stakes, repeated visits. Players in this mode don’t chase. They spin, watch, and if the balance dips below a self-set line, they close the tab. That line is usually mental, not a setting, but it’s real. The players who enjoy this style most are the ones who treat each visit as its own little episode.

A typical short session might involve:

  • Two or three slots, not ten — variety within a tight window
  • Bets kept small and consistent rather than escalating
  • A hard stop time, often tied to a real-life break ending
  • One quick check of the promotions page before logging off

That last point matters. Short-session players are promotion-aware in a specific way. They don’t study terms for an hour; they glance, see if something fits tonight’s budget, and move on. Magic Mondays free spins or a Friday Happy Hour deposit are exactly the kind of thing that gets noticed in a thirty-second scan.

Why Quick Decisions Beat Deep Strategy Here

In a fast session, decision speed is the whole game. You’re not calculating expected value on every spin. You’re making small, frequent choices: bump the bet up a notch after a dry spell, drop it back down after a hit, switch games when a slot feels cold. Most of these decisions are made in under five seconds, and that’s fine — they’re about keeping the session enjoyable, not optimizing it.

Take 21 Burn Blackjack. In a long session, you might think hard about every hand. In a quick one, you play fast, take the obvious moves, and accept the occasional misstep. Speed Roulette works the same way — the name tells you everything. It’s built for players who want the wheel to keep moving, not for someone deliberating over a betting system.

Crash games push this further. You watch the multiplier climb, and the decision to cash out happens in a heartbeat. Short-session players tend to cash out early and often — small wins, quick exits, back to the lobby. It’s a very different psychology from the patient grinder, and it suits the mobile break perfectly.

Risk tolerance in this mode

Low to moderate, mostly. The player isn’t trying to double a bankroll; they’re trying to make a ten-minute window feel worth it. Bets stay flat. Deposits stay small — the A$30 minimum is a natural fit here. If a session goes well, great. If not, the tab closes and life continues. That’s the discipline that keeps this pattern sustainable.

The Return Visit Rhythm

What separates this pattern from casual dabbling is repetition. The same player comes back the next day, and the day after. Sessions stack up like small errands rather than one long night out. Over a week, that’s maybe an hour of total play spread across six or seven visits.

This rhythm changes how you experience the site. You start noticing small things — which slots load fastest on mobile, where the live lobby sits, how quickly the cashier opens. LuckyWins has a fairly basic interface, and for this style of play that’s not really a drawback. Fewer menus to get lost in. You learn the two or three taps that matter and ignore the rest.

It also shapes game choice. Players in this mode gravitate toward slots with quick base games and clear bonus triggers:

  • Buffalo King Megaways for the volatility spike without a long wait
  • Book of Dead for the familiar rhythm and free-spin rounds
  • Big Bass Splash when they want something light and fast
  • Wild Tiger or Burning Chilli X for straightforward, no-fuss reels

Progressive jackpot slots like Mega Moolah get the occasional spin too — not with expectation, but because the lottery-ticket thrill fits a two-minute window nicely.

Keeping It Controlled Without Overthinking It

The biggest risk in repeated short sessions isn’t a single big loss. It’s drift — the slow accumulation of small deposits that adds up without anyone noticing. Players who handle this well usually build in one simple habit: a weekly cap they actually respect, checked before each visit rather than after.

Another habit that works: deciding the session’s spend before logging in, not during. Ten minutes is short enough that a pre-set number rarely gets blown. The trouble starts when a quick visit turns into “just one more deposit” three times in a row. Recognizing that moment — and closing the tab — is the whole skill.

Practical guardrails for this play style:

  1. Set a per-visit spend and stick to it, even after a win
  2. Use the minimum deposit where it fits, rather than topping up mid-session
  3. Treat promotions as occasional extras, not reasons to deposit more often
  4. Keep sessions tied to real breaks so they end naturally

None of this is exotic advice. It’s just the common sense that matches how short-session players actually behave when things go well.

Where the Mobile Experience Fits In

Everything above assumes the phone. LuckyWins Casino Mobile runs in the browser with no dedicated app, and for this pattern that’s genuinely fine — no updates to install, no storage used, and the full game library available wherever you are. The live casino section loads too, though live dealer tables suit a longer sit than ten minutes; most quick-session players poke in, watch a round of VIP Roulette, and leave.

The languages on offer — English, German, Finnish, Norwegian, French, Italian, Arabic, Spanish, Swedish — matter more than they might seem for this style. A player on a short break wants the interface in their own language immediately, not after hunting through settings. Small friction kills short sessions faster than anything.

Ready to Try It Your Way? Get Your Bonus Now!

If the pattern above sounds familiar — quick visits, small bets, decisions made in seconds — then LuckyWins is built for exactly that kind of play. Open it on your phone, keep your sessions short and your limits firm, and let the ten-minute break be the ten-minute break. When you’re ready to start, the welcome package is waiting: a 100% match up to A$8,000 plus 500 free spins across your first five deposits, with a A$30 minimum to get going. Spin smart, log off on time, and come back when it’s fun again.

The post LuckyWins Casino: Fast Sessions, Quick Decisions, and the Mobile Player Mindset first appeared on Atul tutorials.

]]>
Bizzo Casino: How Rushed Players Handle Fast, High-Intensity Sessions https://atultutorials.com/2026/10/29/bizzo-casino-how-rushed-players-handle-fast-high-intensity-sessions/ Thu, 29 Oct 2026 19:57:52 +0000 https://atultutorials.com/?p=5496 Some players want a slow burn. They settle in, study paytables, and treat a session like a long evening at a brick-and-mortar casino. Others open Bizzo Casino with a very different intent: get in, spin hard, chase a quick result, and get out. This article is about that second group. If you recognize yourself in […]

The post Bizzo Casino: How Rushed Players Handle Fast, High-Intensity Sessions first appeared on Atul tutorials.

]]>
Some players want a slow burn. They settle in, study paytables, and treat a session like a long evening at a brick-and-mortar casino. Others open Bizzo Casino with a very different intent: get in, spin hard, chase a quick result, and get out. This article is about that second group. If you recognize yourself in the phrase “I’ve got ten minutes and a budget,” you already know the rhythm. For a deeper breakdown of terms and payment options, read the full review before committing real money.

Bizzo Online fits this style of play surprisingly well. The library pushes past 3,300 titles, and a large share of them are built for exactly the kind of hit-and-run session we’re describing. The games load fast, the mobile version behaves like the desktop one, and there’s no app to install first. That matters when your window of play is measured in minutes rather than hours.

The Ten-Minute Session Mindset

High-intensity play isn’t really about recklessness. It’s about compression. Every decision happens faster, stakes are set before the first spin, and the exit point is decided in advance. Players in this mode tend to open one or two games, not ten. They pick a stake that lets them survive a cold streak of twenty or thirty spins, then let the reels do the talking.

What does that look like in practice? A typical pattern:

  • Deposit a modest amount, often near the €10 minimum
  • Choose a high-volatility slot with a bonus feature that can pay big
  • Set autoplay for 50 or 100 spins at a fixed stake
  • Watch for the trigger, cash out on a spike, close the tab

There’s no lingering. No scrolling through menus looking for something new. The whole point is that the outcome arrives quickly, one way or the other. read the full review Games load through the browser on iOS and Android without friction, which suits this pattern — you can be spinning within a minute of opening the page.

Why the Bonus Buy Format Appeals to Impatient Players

Nothing captures the quick-outcome mentality like bonus buy slots. Instead of grinding hundreds of spins waiting for scatters, you pay a fixed price to jump straight into the free spins round. It’s the most direct expression of “I want the result now.” Bizzo’s library includes a healthy selection of these, and providers like Nolimit City and Thunderkick are well represented among them.

The trade-off is obvious to anyone who plays this way. You’re paying a premium for certainty of entry, not certainty of profit. Experienced players treat bonus buys as a single high-stakes decision rather than a strategy. You either accept the swing or you don’t.

A realistic scenario

Picture a player on a lunch break. They’ve deposited €40, played twenty spins on a mid-volatility slot with nothing happening, and now they’re weighing a bonus buy at roughly 100x their base bet. In a long session, they’d keep grinding. In a short one, the decision is binary: buy in and accept the variance, or close out and walk away with most of the deposit intact. Most players in this mode set a rule beforehand — one bonus buy maximum per session — precisely because the temptation to chase is strong.

That kind of self-imposed limit is the real skill in high-intensity play. It’s not about picking winners. It’s about deciding the rules before the adrenaline kicks in.

Fast Games, Live Tables, and the Need for Speed

Not every rushed player wants reels. Some want a card dealt, a wheel spun, a result inside fifteen seconds. Bizzo Casino’s fast games and live casino section — 300+ live titles across roulette, blackjack, baccarat, and poker variants — cater to that impulse. Live blackjack in particular rewards quick decisions: hit, stand, double, done. No waiting for a bonus round to trigger.

Players who lean this way often bounce between formats within a single short visit. A few hands of live blackjack, a quick roulette spin, then back to a slot for one last run. The session feels varied even though it’s brief. It’s the gambling equivalent of channel surfing, and the platform’s structure supports it — everything sits a click or two from everything else.

  • Fast games for instant win/lose outcomes
  • Live tables for a social, real-time feel without leaving the browser
  • Slots with quick spin cycles for volume and feature potential

The common thread is tempo. Nothing in this pattern tolerates dead time.

Short Sessions, Real Friction: Withdrawals and Verification

Here’s where the quick-out mindset meets reality. Players who play in bursts also want to cash out in bursts. And that’s where some Bizzo Casino Review threads turn sour. Multiple complaints mention delayed withdrawals and slow verification during cash-out, and bonus terms with maximum-bet enforcement have generated confiscation disputes.

For the high-intensity player, this friction stings more than it would for someone settling in for a long night. You’ve played your twenty minutes, you’ve hit a spike, and now you want the money moved. If verification drags, the momentum dies. A few practical habits help:

  1. Verify your account before your first session, not after a win
  2. Read the maximum-bet clause on any bonus before spinning at high stakes
  3. Use e-wallets like Skrill or Jeton if speed matters — some players report fast payouts there
  4. Keep withdrawals within the €4,000 daily limit so nothing gets split or delayed

None of this is glamorous. But for the short-session player, admin speed is part of the experience, not an afterthought.

Bonuses Through the Lens of a Quick Player

Welcome packages and ongoing promotions aren’t the main draw for someone playing in ten-minute windows — but they aren’t irrelevant either. The Bizzo Casino Welcome Bonus, a 100% match plus free spins on the first deposit with roughly x40 wagering, effectively doubles a small bankroll. For a player depositing €20 for a rapid session, that extra €20 buys another ten minutes of action.

The Thursday offer — 50% up to €200 plus 100 free spins at 40x wagering — suits players who plan a slightly bigger burst. Monday free spins are almost tailor-made for the quick hitter: no deposit decision required, just spins to burn through and a result to check. The catch, as always, is the wagering. A quick player who triggers a big bonus win and then wants to withdraw immediately will discover the terms stand between them and the cash. Reading the fine print takes five minutes. Skipping it can cost the whole session.

Playing Smart When Every Minute Counts

The high-intensity style has a reputation problem. People assume it’s all impulse and no thought. In reality, the players who do it well are the most disciplined ones on the platform. They set stake limits, session caps, and loss thresholds before logging in. They treat a deposit as spent the moment it’s made, and any withdrawal as a bonus.

Bizzo Casino’s responsible gambling tools support that approach, and the mobile version means the session can happen anywhere — a coffee queue, a train platform, a few minutes between meetings. The browser-based setup on iOS and Android keeps everything available without an install, so there’s no barrier between deciding to play and actually playing.

The trap is escalation. A short session that goes badly invites a second deposit. A bonus buy that misses invites another. The players who keep it fun are the ones who close the tab at the pre-agreed moment, win or lose. That single habit separates a quick thrill from a slow bleed.

Ready to Play Your Way? Get Your Bonus Now!

If fast, focused sessions are your style, Bizzo Casino gives you the tools to play them well — thousands of slots, bonus buy options, live tables, and a mobile experience that keeps pace. Set your limits first, verify early, and let the reels handle the rest. Get Your Bonus Now and see how much you can pack into ten minutes.

The post Bizzo Casino: How Rushed Players Handle Fast, High-Intensity Sessions first appeared on Atul tutorials.

]]>
Wrest Point Casino: Quick Mobile Hits for Players Who Drop In and Out https://atultutorials.com/2026/10/29/wrest-point-casino-quick-mobile-hits-for-players-who-drop-in-and-out/ Thu, 29 Oct 2026 16:11:00 +0000 https://atultutorials.com/?p=5490 Most people don’t sit down for a three-hour session anymore. They check their phone on the train, spin for five minutes while the kettle boils, or tap through a few rounds while waiting for a mate to text back. That stop-start rhythm is the whole personality of mobile play, and it shapes everything about how […]

The post Wrest Point Casino: Quick Mobile Hits for Players Who Drop In and Out first appeared on Atul tutorials.

]]>
Most people don’t sit down for a three-hour session anymore. They check their phone on the train, spin for five minutes while the kettle boils, or tap through a few rounds while waiting for a mate to text back. That stop-start rhythm is the whole personality of mobile play, and it shapes everything about how a platform feels. This review of Wrest Point Casino looks at the site through exactly that lens — the player who opens a browser, plays a handful of rounds, and closes the tab without ceremony.

There’s no app to install here, which some will grumble about. But the mobile site is fully optimised for iOS and Android, and in practice that means one less barrier between deciding to play and actually playing. No update prompts. No storage warnings. You log in, you spin, you get on with your day.

Why the Browser-First Approach Suits Short Visits

The review of Wrest Point Casino mobile experience lives entirely in the browser, and for the brief-visit player that’s a quiet advantage. Bookmarking the login page takes seconds, and returning later is a two-tap affair rather than a hunt through an app drawer.

What tends to happen in these micro-sessions is fairly predictable. A player opens the site, heads straight for something familiar, and plays at a pace that matches whatever else is going on around them. The library is large — around 2,500 titles — so the temptation is to browse. Resist it. The players who enjoy quick visits most are the ones who know their three or four go-to games and ignore the rest of the lobby.

A typical five-minute pattern

  • Open the browser and log in — under a minute.
  • Load one slot and set a bet size you won’t need to think about again.
  • Play 30 to 60 spins, watching for a feature trigger.
  • Cash out or close the tab, whichever comes first.

That last point matters. In short sessions, the decision to stop is the skill. Players who treat each visit as a self-contained unit — a fixed amount in, a fixed amount out — tend to keep the habit light and enjoyable. Those who let one quick visit bleed into the next are the ones who end up frustrated.

Games That Reward a Quick Trigger Finger

Not every title in the catalogue fits a five-minute window. Some slots demand patience and a long bankroll runway. Others are built for exactly this kind of play — fast base games, frequent feature hits, and volatility that doesn’t punish a small spin count too harshly.

Starburst is the obvious starting point. Low volatility, short spins, and a respin feature that fires often enough to make a brief visit feel eventful. Fire Joker plays in a similar register — three reels, quick resolutions, and a wheel bonus that can turn a two-minute session into something worth remembering. Reactoonz sits at the other end of the spectrum; the cascading grid is engaging but the cluster mechanics take a few visits to click, which makes it a better fit for players who return regularly rather than one-off droppers.

For something with a bit more bite, Gonzo’s Quest and Book of Dead both resolve quickly enough to suit a short window, though their volatility means a ten-spin burst can go either way fast. That’s fine — it’s the nature of the format. The player who understands this isn’t chasing a session; they’re taking a punt with money they’ve already written off.

Live tables in a hurry

Live Blackjack and Lightning Roulette are worth a mention because they’re often overlooked by mobile drop-in players. A hand of blackjack takes seconds. You can sit down, play three hands, and leave. Lightning Roulette is slower because of the studio pacing, but the multiplier mechanic gives each spin a bit of theatre that suits a slightly longer visit — maybe ten minutes rather than five.

Bet Sizing When You’re Only Staying a Minute

Here’s where short-session play gets interesting. With so few spins on the clock, bet size becomes the single biggest lever a player controls. A cautious player might keep stakes low and accept that a quick visit probably won’t produce a headline win. A bolder one might push stakes up precisely because the session is short and the exposure is capped by time rather than discipline.

Neither approach is wrong, but they produce very different experiences. Low stakes over forty spins feels like a slow amble — small ups, small downs, and a reasonable chance of ending roughly where you started. Higher stakes over fifteen spins feels like a coin flip with extra steps. The players who get the most out of Wrest Point Casino Mobile tend to pick one style and stick with it rather than drifting between the two mid-session.

  • Decide your total spend before you open the site, not after.
  • Divide it by the number of spins you realistically have time for.
  • Set the stake once and leave it alone.
  • Close the tab when the budget’s gone — don’t reload.

It sounds almost too simple. In practice, the reload is where most short sessions go wrong.

Living With the Bonus and the Fine Print

The welcome offer — a 100% match up to A$500 plus 50 free spins on a first deposit of at least A$20 — is generous on paper, and plenty of players claim it on their very first mobile visit. Worth knowing before you do: the wagering requirement sits at 30x, which is on the higher side. For a drop-in player, that changes the maths considerably.

A bonus effectively locks your balance into a longer commitment than a five-minute visit allows. If your natural pattern is quick, repeated check-ins, a big matched bonus can feel like a leash. Some players deliberately skip it and play with their own funds instead, keeping the freedom to withdraw whenever they like. Others treat the bonus as a separate project — a slower, more deliberate run spread across several short visits over a week or two.

Monthly slot tournaments and seasonal promotions are a better fit for the mobile rhythm. They come and go, they don’t demand a deposit, and dipping in for a few spins during a commute is exactly the kind of engagement they’re designed for. The VIP tiers — Silver, Gold, Platinum — reward volume, so they’ll matter more to the regular returner than the occasional tapper.

The Small Frictions Worth Knowing About

No platform is frictionless, and the honest picture includes a few snags. Withdrawal times can be slow, which stings more when your whole habit is built on quick in-and-out visits — you cash out expecting closure and end up waiting. Customer support response times also vary, so a quick question can turn into a slow thread.

Payment options are broad enough that most players will find something convenient: cards, e-wallets like Skrill and Neteller, and crypto for those who prefer it. The Curaçao licence and 24/7 support round out the basics. None of this is glamorous, but for the browser-based drop-in player, reliability beats spectacle every time.

Ready to Make Your Next Five Minutes Count?

If your version of a casino session looks more like a coffee break than a night out, Wrest Point Casino is built for you. Load the mobile site, pick one slot you know, set a stake you’re comfortable losing, and treat the whole thing as a short, sharp burst of entertainment. The games are there, the browser does the work, and the exit is always one tap away. Get Your Bonus Now — or skip it and play on your own terms. Either way, keep the visits short and the decisions yours.

The post Wrest Point Casino: Quick Mobile Hits for Players Who Drop In and Out first appeared on Atul tutorials.

]]>
Total Casino online i Norge – komplett guide til registrering, bonuser og uttak https://atultutorials.com/2026/10/29/total-casino-online-i-norge-komplett-guide-til-registrering-bonuser-og-uttak/ Thu, 29 Oct 2026 14:52:06 +0000 https://atultutorials.com/?p=5488 Total Casino – Din komplette guide til total casino online i Norge Registrering og første steg i total casino online Det første du møter når du vil starte på Total Casino er et enkelt registreringsskjema. Du blir bedt om navn, e‑postadresse, fødselsdato og et passord. Etter innsending blir du ofte sendt en bekreftelses‑e‑post med en […]

The post Total Casino online i Norge – komplett guide til registrering, bonuser og uttak first appeared on Atul tutorials.

]]>

Total Casino – Din komplette guide til total casino online i Norge

Registrering og første steg i total casino online

Det første du møter når du vil starte på Total Casino er et enkelt registreringsskjema. Du blir bedt om navn, e‑postadresse, fødselsdato og et passord. Etter innsending blir du ofte sendt en bekreftelses‑e‑post med en lenke du må klikke for å aktivere kontoen. Dette trinnet er viktig fordi kasinoet bruker KYC‑prosessen (Know Your Customer) for å sikre at alle spillere er ekte personer.

Etter aktivering kan du logge inn og gå direkte til innskuddsdelen. Husk å bruke samme e‑post du oppga, da supportteamet kun kan hjelpe med kontoen din ved å verifisere den informasjonen. Registreringen er tilrettelagt for både nybegynnere og erfarne spillere, så du kan føle deg trygg uten å måtte lese en lang manual.

Velkomstbonus og andre bonuser – hva du bør vite

Velkomstbonusen på Total Casino er ofte den mest attraktive for total casino online‑entusiaster. Den kan bestå av en 100 % innskuddsbonus opp til 2 000 kr plus 100 gratisspinn på utvalgte spilleautomater. Men les alltid vilkårene: en vanlig wagering‑krav på 30× bonusbeløpet er standard.

Utover velkomstbonusen tilbyr casinoet jevnlige kampanjer som reload‑bonuser, cash‑back og turneringer. For å holde oversikten kan du bruke denne enkle listen:

  • Ukentlig reload – 50 % ekstra på innskudd hver mandag.
  • Cash‑back på tapte spill – 10 % tilbake hver fredag.
  • Live‑dealer turneringer – konkurrer om kontanter i sanntid.

Betalingsmetoder og innskudd i Total Casino

Total Casino støtter en rekke innskuddsalternativer som er vanlige i Norge. Du kan bruke Visa, MasterCard, Trustly, og nettbank‑overføringer. Alle transaksjoner behandles med SSL‑kryptering, så informasjonen din er beskyttet fra første stund.

Under viser en tabell de viktigste betalingsmetodene, innskuddsgrense og forventet behandlingstid:

Betalingsmetode Maksimum innskudd Behandlingstid
Visa / MasterCard 10 000 kr per dag Umiddelbar
Trustly 5 000 kr per transaksjon Umiddelbar
Nettbank 30 000 kr per dag 1–2 timer

Uttak og hastighet – få pengene ut raskt

Det er ingen mening å vinne penger hvis du ikke kan ta dem ut når du vil. Total Casino har etablert flere uttaksmetoder som speiler innskuddene, men med noen ekstra sikkerhetskontroller. Vanlige metoder inkluderer bankoverføring, Skrill og Neteller.

Uttak behandles vanligvis innen 24 timer etter at KYC‑dokumentasjonen er bekreftet. Jo flere ganger du har gjort innskudd og uttak, desto raskere blir prosessen fordi casinoet har opparbeidet tillit til kontoen din. For hastige spillere anbefales det å bruke e‑wallets som gir nesten øyeblikkelig uttak.

Spillutvalg: live casino, slots og sports betting

Total Casino er et komplett total casino online‑tilbud med både klassiske spilleautomater, video‑slots og et omfattende live casino‑område. Live‑dealere fra Evolution Gaming gir deg en autentisk casino‑følelse med ekte kortblanding og kulebord.

For de som foretrekker sportsbetting, finnes det en integrert sportsbook med odds på fotball, håndball og ishockey – de mest populære sportene i Norge. Du kan også sette inn live‑spill på kamper som pågår, med odds som oppdateres i sanntid. Et lite utvalg av spill kan oppsummeres i denne listen:

  • Starburst, Gonzo’s Quest – høyt RTP, lav volatilitet.
  • Live Roulette, Live Blackjack – ekte dealere fra Europa.
  • Fotball- og håndballbetting – odds fra 1,50 til 5,00.

Mobilopplevelse og total casino app

Mobilspill er nå standard, og Total Casino har derfor utviklet en egen app for både iOS og Android. Appen gir deg rask tilgang til alle spill, bonuser og betalingsmuligheter uten å måtte åpne en nettleser. UI‑designet er optimalisert for norske skjermstørrelser, så du får en jevn opplevelse både på telefon og nettbrett.

Installeringen er enkel: last ned appen fra den offisielle siden, logg inn med kontoen du allerede har registrert, og du er klar til å satse. Appen støtter push‑varsler for nye kampanjer, så du går aldri glipp av en bonus. Husk at mobilversjonen også inneholder samme sikkerhetsnivå som desktop‑siden, med to‑faktor‑autentisering tilgjengelig i innstillingene.

Sikkerhet, lisens og ansvarlig spill

Total Casino opererer under en lisens fra Malta Gaming Authority, en av de mest anerkjente regulatorene i Europa. Dette sikrer at alle spill er testet for rettferdighet, og at økonomiske transaksjoner blir overvåket i henhold til strenge krav.

Ansvarlig spill er også høyt prioritert. Du kan sette inn limit på innskudd, tap og spilletid direkte i kontoen din. Dersom du føler at spillingen blir problematisk, finnes det en egen “self‑exclusion”‑funksjon som låser kontoen i inntil 12 måneder.

Kundeservice og support

Supportteamet hos Total Casino er tilgjengelig 24/7 via live‑chat og e‑post. De svarer vanligvis innen noen minutter på chat, og innen én arbeidsdag på e‑post. For rask løsning av KYC‑spørsmål kan du også bruke en enkel opplastingsfunksjon for ID‑dokumenter.

FAQ‑seksjonen på nettsiden dekker de vanligste problemene, fra bonusvilkår til betalingsspørsmål. Om du trenger personlig hjelp, er det anbefalt å ha kontoinformasjon og eventuell dokumentasjon klar før du kontakter support, så sparer du tid.

Vanlige spørsmål (FAQ) – kort oppsummering

Hva er wagering‑kravet på velkomstbonusen? Det er vanligvis 30× bonusbeløpet, men les vilkårene for spesifikke kampanjer.

Kan jeg bruke norsk bank for innskudd? Ja, både Visa, MasterCard og Trustly støtter norske banker.

Hvor raskt kan jeg ta ut gevinster? Med e‑wallets kan du forvente uttak innen 1‑24 timer etter godkjenning.

Er Total Casino lovlig i Norge? Ja, casinoet har en gyldig EU‑lisens og følger norske regler for ansvarlig spill.

The post Total Casino online i Norge – komplett guide til registrering, bonuser og uttak first appeared on Atul tutorials.

]]>
Total Casino login – komplett guide for norske spillere https://atultutorials.com/2026/10/29/total-casino-login-komplett-guide-for-norske-spillere/ Thu, 29 Oct 2026 14:52:04 +0000 https://atultutorials.com/?p=5486 Total Casino – komplett guide til innlogging og første steg Slik gjør du total casino login – trinn for trinn Den første handlingen du må ta når du har opprettet en konto på Total Casino, er å logge inn. Dette kalles total casino login og er enkelt når du kjenner fremgangsmåten. På innloggingssiden tastet du […]

The post Total Casino login – komplett guide for norske spillere first appeared on Atul tutorials.

]]>

Total Casino – komplett guide til innlogging og første steg

Slik gjør du total casino login – trinn for trinn

Den første handlingen du må ta når du har opprettet en konto på Total Casino, er å logge inn. Dette kalles total casino login og er enkelt når du kjenner fremgangsmåten. På innloggingssiden tastet du inn ditt registrerte e‑post eller brukernavn, etterfulgt av passordet du satte. Husk at passordet er case‑sensitivt, så store og små bokstaver må være nøyaktig som du skrev dem.

Etter du har trykket på «Logg inn», blir du sendt til spill‑dashboardet der du kan sette inn penger eller starte spillet med en gratis demo. Dersom du har glemt passordet, finnes det en «Glemt passord?»-lenke som sender en sikker e‑post med reset‑instruksjoner. Merk at du kun får én reset‑e‑post per 10 minutter for å unngå misbruk.

Før du logger inn – registrering

Registreringen på Total Casino krever bare noen få felter: navn, fødselsdato, e‑post og et sterkt passord. Norske spillere må også oppgi sin adresse for å kunne gjennomføre KYC‑kontrollen senere. Når du har klikket «Registrer», får du en velkomstbonus som kan kreve en enkel kode fra e‑posten din.

Etter at kontoen er aktivert, er du klar for total casino login. Prosessen er designet for å være rask, men sikkerheten er like viktig – derfor kan du bli bedt om å svare på et kort sikkerhetsspørsmål ved første innlogging.

Betalingsmetoder – innskudd på et blunk

Total Casino støtter flere norske innskuddsalternativer. De mest populære er Visa, MasterCard, Neteller og Trustly. De fleste av dem er øyeblikkelig, så du kan begynne å spille rett etter at du har trykket «Bekreft».

Det er noen begrensninger: minimumsinnskudd er 200 kr, og maksimal daglig innskudd er 25 000 kr. Dersom du ønsker å sette inn større beløp, må du kontakte kundeservice for manuell godkjenning. Husk alltid å sjekke eventuelle gebyrer hos din bank før du bruker kredittkort.

Innskuddsprosessen – sjekkliste

  • Velg ønsket betalingsmetode i innskuddsmenyen.
  • Angi beløp innenfor tillatte grenser.
  • Fullfør sikkerhetssjekken (3D‑Secure eller OTP).
  • Bekreft og vent på bekreftelsesmeldingen.

Uttak – hvordan hente gevinstene raskt

Etter en vellykket spilløkt vil du gjerne ta ut pengene. Total Casino har flere uttaksmetoder som er tilpasset norske spillere: bankoverføring, Skrill og Trustly. Vanligvis tar uttak via Trustly bare noen minutter, mens bankoverføringer kan ta opptil to virkedager.

For å starte et uttak må du først ha gjennomført KYC‑verifisering. Dette innebærer å laste opp legitimasjon og eventuell adressebekreftelse. Når kontoen er verifisert, kan du sende en uttaksforespørsel på mellom 100 og 20 000 kr per transaksjon. Merk at total casino login‑sesjonen må være aktiv for å godkjenne uttaket.

Uttakssjekkliste

  1. Logg inn via total casino login.
  2. Gå til «Uttak» i kontomenyen.
  3. Velg ønsket betalingsmetode.
  4. Angi ønsket beløp og bekreft.
  5. Vent på bekreftelse via e‑post eller SMS.

Mobilopplevelse – spillet på farten

For norske spillere som er på utkikk etter en fleksibel løsning, har Total Casino utviklet en robust total casino app for både iOS og Android. Appen gir tilgang til samme spillutvalg som desktop‑versjonen, inkludert live casino, spilleautomater og sportsbetting.

Appen støtter også total casino login med fingeravtrykk eller Face ID for ekstra sikkerhet. Når du er innlogget, kan du gjøre raske innskudd via mobile betalingsløsninger som Vipps eller Apple Pay – direkte fra telefonen.

Kundeservice, sikkerhet og lisensiering

Supportteamet hos Total Casino er tilgjengelig 24/7 via live‑chat og e‑post. De er vant til å håndtere spørsmål om innlogging, betaling og bonusvilkår, så du får ofte svar på noen minutter. Alle henvendelser blir loggført for å sikre sporbarhet og overholdelse av regulatoriske krav.

Total Casino opererer med en Malta Gaming Authority‑lisens, som er en av de mest anerkjente i EU. Dette betyr at nettcasinoet må følge strenge retningslinjer for rettferdig spill, datakryptering (SSL) og beskyttelse av personopplysninger. Når du gjør total casino login, vet du at kommunikasjonen er kryptert med 128‑bit TLS.

Ansvarlig spilling – spill trygt og kontrollert

Ansvarlig spill er en integrert del av Total Casino sin praksis. På kontoen finner du verktøy for innsatsgrenser, tap‑grenser og selv‑utelukkelse

The post Total Casino login – komplett guide for norske spillere first appeared on Atul tutorials.

]]>
Leon Casino : étapes et méthodes d’inscription, bonus et retraits https://atultutorials.com/2026/10/29/leon-casino-etapes-et-methodes-d-inscription-bonus-et-retraits/ Thu, 29 Oct 2026 14:52:03 +0000 https://atultutorials.com/?p=5484 Leon Casino : le guide pratique pour bien commencer 1. Inscription et première connexion Le premier pas vers Leon Casino consiste à créer un compte. Le formulaire d’inscription ne demande que les informations essentielles : nom, adresse e‑mail, date de naissance et un mot de passe sécurisé. Après validation, vous recevrez un e‑mail de confirmation contenant […]

The post Leon Casino : étapes et méthodes d’inscription, bonus et retraits first appeared on Atul tutorials.

]]>

Leon Casino : le guide pratique pour bien commencer

1. Inscription et première connexion

Le premier pas vers Leon Casino consiste à créer un compte. Le formulaire d’inscription ne demande que les informations essentielles : nom, adresse e‑mail, date de naissance et un mot de passe sécurisé. Après validation, vous recevrez un e‑mail de confirmation contenant un lien à cliquer. Cette étape garantit que votre adresse e‑mail est bien active et vous évite les problèmes lors du premier dépôt.

Une fois votre compte confirmé, la page de connexion vous attend. Vous pouvez vous y rendre directement via leon casino connexion. Pensez à activer la double authentification si l’option vous est proposée ; cela renforce la protection contre les accès non autorisés.

2. Le bonus de bienvenue et les exigences de mise

Leon Casino séduit les nouveaux joueurs avec un pack de bienvenue réparti sur les trois premiers dépôts : 100 % jusqu’à 200 €, 50 % jusqu’à 300 € et 25 % jusqu’à 500 €. Au total, vous pourriez recevoir jusqu’à 1 000 € de bonus, mais chaque tranche possède ses propres conditions de mise.

Les exigences de mise (wagering requirements) sont de 30× le montant du bonus. Cela signifie que si vous obtenez 200 € de bonus, vous devrez placer 6 000 € en mises avant de pouvoir retirer les gains générés. Prenez le temps de lire le tableau ci‑dessous pour comparer chaque offre.

Comparatif des bonus de bienvenue
Dépot Bonus offert Maximum du bonus Exigences de mise Validité
1er dépôt 100 % 200 € 30× 30 jours
2e dépôt 50 % 300 € 30× 30 jours
3e dépôt 25 % 500 € 30× 30 jours

3. Méthodes de paiement et vitesse de retrait

Leon Casino propose un panel de méthodes de dépôt très complet, adapté aux joueurs français : cartes Visa/MasterCard, cartes prépayées (Paysafecard), portefeuilles électroniques (Skrill, Neteller), et virements bancaires. Les dépôts sont généralement traités en temps réel, ce qui vous permet de commencer à jouer dès que votre argent apparaît sur le compte.

Les retraits sont un peu plus lents, mais restent dans les standards du secteur. Les portefeuilles électroniques offrent les délais les plus rapides (24 h), alors que les virements bancaires peuvent prendre jusqu’à 5 jours ouvrés. Voici une petite liste récapitulative :

  • Skrill / Neteller : 24 h
  • Visa / MasterCard (cartes de crédit) : 2‑3 jours ouvrés
  • Virement bancaire : 3‑5 jours ouvrés
  • Paysafecard : uniquement pour les dépôts, pas de retraits

Avant d’initier un retrait, assurez-vous que votre compte est complètement vérifié (voir section 4). Un compte incomplet peut retarder le paiement de plusieurs jours.

4. Processus de vérification (KYC)

Comme tout casino en ligne licencié, Leon Casino vous demandera de passer par une procédure d’identification (Know Your Customer). Vous devez fournir une copie de votre pièce d’identité officielle, un justificatif de domicile datant de moins de trois mois et, le cas échéant, une preuve de la carte bancaire utilisée.

Le traitement de ces documents dure généralement 24 à 48 heures. Pour accélérer les choses, choisissez des scans nets, assurez‑vous que les informations sont lisibles et que les fichiers sont au format JPEG ou PDF. Une fois votre identité confirmée, vous pourrez profiter des retraits instantanés et des limites de mise plus élevées.

5. Sécurité, licences et jeu responsable

Leon Casino opère sous licence de Curaçao, reconnue par l’Autorité des jeux de Curaçao. Cette licence impose des contrôles stricts sur la génération des nombres aléatoires (RNG) et assure un niveau de protection des données conforme au RGPD.

Le site utilise le chiffrement SSL 128‑bits pour sécuriser toutes les communications. En plus, il propose des outils de jeu responsable : limites de dépôt, de perte et de mise, ainsi qu’une option d’auto‑exclusion qui bloque l’accès au compte pendant une période définie.

6. L’expérience mobile et l’application dédiée

Que vous soyez sur Android ou iOS, Leon Casino propose une version mobile optimisée qui charge en quelques secondes. L’interface conserve toutes les fonctionnalités du bureau : casino live, machines à sous, paris sportifs et gestion du compte. Pour les utilisateurs les plus exigeants, une application native est disponible sur le Google Play Store et l’App Store.

L’avantage de l’application réside dans les notifications push qui vous informent immédiatement des promotions, des tournois à venir et des gains. Elle permet aussi de déposer en un clic grâce à la fonction « Wallet » intégrée.

7. Support client et assistance multicanal

Le service client de Leon Casino est accessible 24 / 7 via chat en direct, e‑mail et téléphone (numéro français dédié). Le chat est le moyen le plus rapide : en moyenne, vous obtenez une réponse en moins de deux minutes. Les réponses par e‑mail sont généralement envoyées sous 24 h.

Le centre d’aide en ligne regroupe une FAQ bien structurée qui couvre les sujets les plus fréquents : inscription, bonus, dépôts, retraits, limites de jeu, etc. En cas de problème complexe, le support peut demander des documents supplémentaires, mais la plupart des demandes sont résolues rapidement.

8. Astuces pratiques pour optimiser votre expérience

Choisir les jeux selon le taux de redistribution (RTP)

Les machines à sous affichent généralement un RTP compris entre 94 % et 98 %. Privilégiez les titres qui dépassent les 96 % pour maximiser vos chances à long terme. Leon Casino propose des filtres de recherche qui permettent de trier les jeux par RTP, volatilité et popularité.

Gérer son budget avec les limites de mise

Définissez une limite de mise quotidienne dans votre tableau de bord. Cette pratique empêche les pertes incontrôlées et vous aide à rester dans le cadre du jeu responsable. Vous pouvez ajuster la limite à tout moment, même après avoir commencé une session.

Profiter des promotions récurrentes

En plus du pack de bienvenue, Leon Casino organise chaque semaine des « cashback », des tours gratuits et des tournois à gain progressif. Inscrivez‑vous à la newsletter pour ne manquer aucune offre et récupérez les codes promo directement dans votre espace personnel.

© 2026 Leon Casino – Tous droits réservés.

The post Leon Casino : étapes et méthodes d’inscription, bonus et retraits first appeared on Atul tutorials.

]]>