/******/ (function() { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ "./packages/packages/core/editor-templates/src/init.ts": /*!*************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/init.ts ***! \*************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ init: function() { return /* binding */ init; } /* harmony export */ }); /* harmony import */ var _elementor_editor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor */ "@elementor/editor"); /* harmony import */ var _elementor_editor__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/editor-styles-repository */ "@elementor/editor-styles-repository"); /* harmony import */ var _elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @elementor/editor-v1-adapters */ "@elementor/editor-v1-adapters"); /* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @elementor/store */ "@elementor/store"); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _load_templates__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./load-templates */ "./packages/packages/core/editor-templates/src/load-templates.ts"); /* harmony import */ var _render_template_styles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./render-template-styles */ "./packages/packages/core/editor-templates/src/render-template-styles.tsx"); /* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./store */ "./packages/packages/core/editor-templates/src/store.ts"); /* harmony import */ var _templates_styles_provider__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./templates-styles-provider */ "./packages/packages/core/editor-templates/src/templates-styles-provider.ts"); /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils */ "./packages/packages/core/editor-templates/src/utils.ts"); function init() { if (!(0,_utils__WEBPACK_IMPORTED_MODULE_8__.isHandlingTemplateStyles)()) { return; } (0,_elementor_store__WEBPACK_IMPORTED_MODULE_3__.__registerSlice)(_store__WEBPACK_IMPORTED_MODULE_6__.slice); _elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_1__.stylesRepository.register(_templates_styles_provider__WEBPACK_IMPORTED_MODULE_7__.templatesStylesProvider); (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_2__.registerDataHook)('after', 'editor/documents/attach-preview', async () => { (0,_load_templates__WEBPACK_IMPORTED_MODULE_4__.unloadTemplates)(); (0,_templates_styles_provider__WEBPACK_IMPORTED_MODULE_7__.clearTemplatesStyles)(); await (0,_load_templates__WEBPACK_IMPORTED_MODULE_4__.loadTemplates)(); }); (0,_elementor_editor__WEBPACK_IMPORTED_MODULE_0__.injectIntoLogic)({ id: 'templates-styles', component: _render_template_styles__WEBPACK_IMPORTED_MODULE_5__.RenderTemplateStyles }); } /***/ }), /***/ "./packages/packages/core/editor-templates/src/load-templates.ts": /*!***********************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/load-templates.ts ***! \***********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ loadTemplates: function() { return /* binding */ loadTemplates; }, /* harmony export */ unloadTemplates: function() { return /* binding */ unloadTemplates; } /* harmony export */ }); /* harmony import */ var _elementor_editor_documents__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-documents */ "@elementor/editor-documents"); /* harmony import */ var _elementor_editor_documents__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_documents__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/editor-v1-adapters */ "@elementor/editor-v1-adapters"); /* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @elementor/store */ "@elementor/store"); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./store */ "./packages/packages/core/editor-templates/src/store.ts"); const TEMPLATE_ATTRIBUTE = 'data-elementor-post-type="elementor_library"'; const DOCUMENT_WRAPPER_ATTR = 'data-elementor-id'; async function loadTemplates() { const iframeDocument = (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.getCanvasIframeDocument)(); if (!iframeDocument) { return; } const currentDocumentId = (0,_elementor_editor_documents__WEBPACK_IMPORTED_MODULE_0__.getV1CurrentDocument)()?.id; const templateIds = getTemplateIds(iframeDocument, currentDocumentId); if (!templateIds.length) { return; } const documents = await fetchDocuments(templateIds); (0,_elementor_store__WEBPACK_IMPORTED_MODULE_2__.__dispatch)(_store__WEBPACK_IMPORTED_MODULE_3__.slice.actions.setTemplates(documents)); } function unloadTemplates() { (0,_elementor_store__WEBPACK_IMPORTED_MODULE_2__.__dispatch)(_store__WEBPACK_IMPORTED_MODULE_3__.slice.actions.clearTemplates()); } function getTemplateIds(iframeDocument, currentDocumentId) { const elements = [...iframeDocument.body.querySelectorAll(`[${TEMPLATE_ATTRIBUTE}]`)]; const ids = elements.map(el => Number(el.getAttribute(DOCUMENT_WRAPPER_ATTR))).filter(id => !isNaN(id) && id !== currentDocumentId); return [...new Set(ids)]; } async function fetchDocuments(ids) { const results = await Promise.all(ids.map(async id => { try { // using ajax.load instead of the document-manager as the latter causes an issue when trying to edit a template return await _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.ajax.load({ data: { id }, action: 'get_document_config', unique_id: `template-${id}` }); } catch { return null; } })); return results.filter(doc => doc !== null); } /***/ }), /***/ "./packages/packages/core/editor-templates/src/render-template-styles.tsx": /*!********************************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/render-template-styles.tsx ***! \********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ RenderTemplateStyles: function() { return /* binding */ RenderTemplateStyles; } /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _templates_styles_provider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./templates-styles-provider */ "./packages/packages/core/editor-templates/src/templates-styles-provider.ts"); /* harmony import */ var _use_loaded_templates__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-loaded-templates */ "./packages/packages/core/editor-templates/src/use-loaded-templates.ts"); const RenderTemplateStyles = () => { const templates = (0,_use_loaded_templates__WEBPACK_IMPORTED_MODULE_2__.useLoadedTemplates)(); (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => { const styles = templates.flatMap(extractStylesFromDocument); (0,_templates_styles_provider__WEBPACK_IMPORTED_MODULE_1__.addTemplateStyles)(styles); }, [templates]); return null; }; function extractStylesFromDocument(elements) { if (!elements.length) { return []; } return elements.flatMap(extractStylesFromElement); } function extractStylesFromElement(element) { return [...Object.values(element.styles ?? {}), ...(element.elements ?? []).flatMap(extractStylesFromElement)]; } /***/ }), /***/ "./packages/packages/core/editor-templates/src/store.ts": /*!**************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/store.ts ***! \**************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ selectTemplates: function() { return /* binding */ selectTemplates; }, /* harmony export */ slice: function() { return /* binding */ slice; } /* harmony export */ }); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/store */ "@elementor/store"); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_0__); const initialState = { entities: {} }; const slice = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__createSlice)({ name: 'templates', initialState, reducers: { setTemplates(state, action) { action.payload.forEach(doc => { state.entities[doc.id] = doc.elements ?? []; }); }, clearTemplates(state) { state.entities = {}; } } }); const selectEntities = state => state.templates.entities; const selectTemplates = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__createSelector)([selectEntities], entities => Object.values(entities)); /***/ }), /***/ "./packages/packages/core/editor-templates/src/templates-styles-provider.ts": /*!**********************************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/templates-styles-provider.ts ***! \**********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ addTemplateStyles: function() { return /* binding */ addTemplateStyles; }, /* harmony export */ clearTemplatesStyles: function() { return /* binding */ clearTemplatesStyles; }, /* harmony export */ templatesStylesProvider: function() { return /* binding */ templatesStylesProvider; } /* harmony export */ }); /* harmony import */ var _elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-styles-repository */ "@elementor/editor-styles-repository"); /* harmony import */ var _elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_0__); let styles = []; const listeners = new Set(); function addTemplateStyles(newStyles) { styles = [...styles, ...newStyles]; listeners.forEach(cb => cb()); } function clearTemplatesStyles() { styles = []; listeners.forEach(cb => cb()); } const templatesStylesProvider = (0,_elementor_editor_styles_repository__WEBPACK_IMPORTED_MODULE_0__.createStylesProvider)({ key: 'templates-styles', priority: 50, subscribe: cb => { listeners.add(cb); return () => { listeners.delete(cb); }; }, actions: { all: () => styles, get: id => styles.find(style => style.id === id) ?? null } }); /***/ }), /***/ "./packages/packages/core/editor-templates/src/use-loaded-templates.ts": /*!*****************************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/use-loaded-templates.ts ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ useLoadedTemplates: function() { return /* binding */ useLoadedTemplates; } /* harmony export */ }); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/store */ "@elementor/store"); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./store */ "./packages/packages/core/editor-templates/src/store.ts"); function useLoadedTemplates() { return (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__useSelector)(_store__WEBPACK_IMPORTED_MODULE_1__.selectTemplates); } /***/ }), /***/ "./packages/packages/core/editor-templates/src/utils.ts": /*!**************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/utils.ts ***! \**************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ isHandlingTemplateStyles: function() { return /* binding */ isHandlingTemplateStyles; } /* harmony export */ }); /* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/utils */ "@elementor/utils"); /* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_utils__WEBPACK_IMPORTED_MODULE_0__); const MIN_PRO_VERSION_FOR_SELF_HANDLED_STYLES = '4.1'; const isHandlingTemplateStyles = () => (0,_elementor_utils__WEBPACK_IMPORTED_MODULE_0__.isProActive)() && !(0,_elementor_utils__WEBPACK_IMPORTED_MODULE_0__.isProAtLeast)(MIN_PRO_VERSION_FOR_SELF_HANDLED_STYLES); /***/ }), /***/ "@elementor/editor": /*!*****************************************!*\ !*** external ["elementorV2","editor"] ***! \*****************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["editor"]; /***/ }), /***/ "@elementor/editor-documents": /*!**************************************************!*\ !*** external ["elementorV2","editorDocuments"] ***! \**************************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["editorDocuments"]; /***/ }), /***/ "@elementor/editor-styles-repository": /*!*********************************************************!*\ !*** external ["elementorV2","editorStylesRepository"] ***! \*********************************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["editorStylesRepository"]; /***/ }), /***/ "@elementor/editor-v1-adapters": /*!***************************************************!*\ !*** external ["elementorV2","editorV1Adapters"] ***! \***************************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["editorV1Adapters"]; /***/ }), /***/ "@elementor/store": /*!****************************************!*\ !*** external ["elementorV2","store"] ***! \****************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["store"]; /***/ }), /***/ "@elementor/utils": /*!****************************************!*\ !*** external ["elementorV2","utils"] ***! \****************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["utils"]; /***/ }), /***/ "react": /*!**************************!*\ !*** external ["React"] ***! \**************************/ /***/ (function(module) { module.exports = window["React"]; /***/ }) /******/ }); /************************************************************************/ /******/ // 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 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ !function() { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function() { return module['default']; } : /******/ function() { return module; }; /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ !function() { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = function(exports, definition) { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ !function() { /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } /******/ }(); /******/ /******/ /* webpack/runtime/make namespace object */ /******/ !function() { /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ }(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk. !function() { /*!**************************************************************!*\ !*** ./packages/packages/core/editor-templates/src/index.ts ***! \**************************************************************/ __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ init: function() { return /* reexport safe */ _init__WEBPACK_IMPORTED_MODULE_0__.init; }, /* harmony export */ isHandlingTemplateStyles: function() { return /* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_2__.isHandlingTemplateStyles; }, /* harmony export */ useLoadedTemplates: function() { return /* reexport safe */ _use_loaded_templates__WEBPACK_IMPORTED_MODULE_1__.useLoadedTemplates; } /* harmony export */ }); /* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./init */ "./packages/packages/core/editor-templates/src/init.ts"); /* harmony import */ var _use_loaded_templates__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-loaded-templates */ "./packages/packages/core/editor-templates/src/use-loaded-templates.ts"); /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils */ "./packages/packages/core/editor-templates/src/utils.ts"); }(); (window.elementorV2 = window.elementorV2 || {}).editorTemplates = __webpack_exports__; /******/ })() ; window.elementorV2.editorTemplates?.init?.(); //# sourceMappingURL=editor-templates.js.map/* dialog.css */ /* Dialog wrapper */ .elfinder .elfinder-dialog { /* */ } /* Dialog title */ .elfinder .elfinder-dialog .ui-dialog-titlebar { padding: 3px 0 3px 6px; height: 30px; box-sizing: border-box; } /* Close button */ .elfinder .elfinder-dialog .ui-dialog-titlebar-close { background: url('../images/close.png'); right: 0; border-radius: 0; margin-top: -15px; webkit-transition: background 0.3s; /* Safari */ transition: background-image 0.3s; height: 29px; width: 45px; } .elfinder .elfinder-dialog .ui-dialog-titlebar-close:hover { background: url('../images/close-hover.png'); } .std42-dialog .ui-dialog-titlebar .elfinder-titlebar-button.elfinder-titlebar-button-right { left: 1px; top: 12px; } /* Dialog content */ .elfinder .elfinder-dialog .ui-dialog-content { /* */ } /* Tabs */ /* Tabs wrapper */ .elfinder .elfinder-dialog .ui-tabs-nav { /* */ } /* Normal tab */ .elfinder .elfinder-dialog .ui-tabs-nav .ui-state-default { /* */ } /* Current tab */ .elfinder .elfinder-dialog .ui-tabs-nav .ui-tabs-selected { /* */ } /* Active tab */ .elfinder .elfinder-dialog .ui-tabs-nav li:active { /* */ } .elfinder .ui-state-active { background: #1979CA none repeat scroll 0 0; /*background: #009688 none repeat scroll 0 0; */ } /* Icons */ /* Dialog icon (e.g. for error messages) */ .elfinder .elfinder-dialog .elfinder-dialog-icon { /* */ } /* Error icon */ .elfinder .elfinder-dialog .elfinder-dialog-icon-error { /* */ } /* Confirmation icon */ .elfinder .elfinder-dialog .elfinder-dialog-icon-confirm { /* */ } /* Footer */ .elfinder .elfinder-dialog .ui-dialog-buttonpane { /* */ } /* Buttonset (wrapper) */ .elfinder .elfinder-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { /* */ } /* Button */ .elfinder .elfinder-dialog .ui-dialog-buttonpane .ui-dialog-buttonset .ui-button { /* */ } /* Styling specific types of dialogs */ /* Error */ .elfinder .elfinder-dialog-error { /* */ } /* Confirm */ .elfinder .elfinder-dialog-confirm { /* */ } /* File editing */ .elfinder .elfinder-dialog .elfinder-file-edit { /* */ } /* File information */ /* Title */ .elfinder .elfinder-dialog .elfinder-info-title { /* */ } /* Table */ .elfinder .elfinder-dialog .elfinder-info-tb { /* */ } /* File upload (including dropbox) */ .elfinder .elfinder-dialog .elfinder-upload-dropbox, .elfinder .elfinder-dialog .elfinder-upload-dialog-or { /* */ } "aviator Az: Azərbaycanda Necə Oynamaq Olar Və Nə Vacibdir -

“aviator Az: Azərbaycanda Necə Oynamaq Olar Və Nə Vacibdir

Haqqımızda ᐉ Aviator Oyununa Dair Etibarlı Məlumat Platforması”

Lakin Aviator oyunu Provably Fair texnologiyası ilə mühafizə olunduğu üçün, proqramların və Aviator bot təxminləri əsassız qalacaqdır. Bu texnologiya oyundakı hər mərcin təsadüfi və gözlənilməz olmasını təmin edir. Aviator oyunu HTML-5 ilə işləyir və hər hansı bir cihaz üçün uyğunlaşır. Bu, istənilən qurğudan mobil versiyada oynaya bilərsiniz. Oyunun öz tətbiqi yoxdur, lakin onu onlayn kazino çərçivəsində yükləmək mümkündür.

  • Aviator hack üçün internətdə müxtəlif proqramlar mövcuddur.
  • Crash-oyununun inkişaf etdiricisi UKGC tərəfindən lisenziyaya malikdir və proqram təminatının etibarlılığını təmin edir.
  • Aviator. com. az istifadəçilərinə yalnız yoxlanılmış və dəqiq məlumat təqdim etməyi öhdəsinə götürür.
  • Müxtəlif onlayn kazinolarda mövcudluq, oyunçulara istədikləri platformada Aviator oyununun zövqünü çıxarmaq imkanı verir.
  • Saytdan istifadə etməyə davam edərək və “qəbul edirəm” düyməsini basaraq çərəzlərdən istifadə etməyi qəbul edirsiniz.
  • Bu platformalar arasında o, həm də azərbaycanlı oyunçular üçün əlverişli və populyar seçimdir.

Əsas yadda saxla ki, Aviator hack apk yükləmək və ya pul ödəmək lazım deyil. Onlar işləmir və sənə zərər verə bilər, çünki fırıldaqçılar proqramlar əvəzinə tez-tez hansısa scam-ı verir. Sürətli raundlar, sadə idarəetmə, istənilən yerdə oynamaq imkanı oyunu telefon üçün ideal edir. Azərbaycanlı oyunçuların əksəriyyəti məhz Aviator-un mobil versiyasını üstün tutur. Aviatoru demo rejimi oyunu risksiz öyrənməyin ən yaxşı yoludur. Mexanikası pullu versiyanın tamamilə eynidir, yalnız pul virtualdır.

Tək Mərc Strateji

Biz yalnız oyunun qaydalarını deyil, həm də oyunçular üçün ən yaxşı platformaları və added bonus imkanlarını göstəririk. Aviator. com. az istifadəçilərinə oyun təcrübəsini artırmaq və onlara doğru platformanı seçməkdə kömək etmək üçün geniş araşdırmalar aparır. Aviator. com. az istifadəçilərinə yalnız yoxlanılmış və dəqiq məlumat təqdim etməyi öhdəsinə götürür. Bizim məlumatlarımızın əsasını ekspert rəyləri və istifadəçi təcrübələri təşkil edir. Aviator. possuindo. az-da yayımlanan hər bir məzmun obyektiv və dəqiqdir.

  • Bizim məlumatlarımızın əsasını ekspert rəyləri və istifadəçi təcrübələri təşkil edir.
  • Bu baxışın bir hissəsi olaraq Aviator Azərbaycan oyununun xüsusiyyətlərini və qaydalarını ətraflı nəzərdən keçirəcəyik.
  • Provably Fair texnologiyası oyunun nəticələrinin şəffaf və adil olduğunu təmin edir, buna görə də oyunçulara etibarlı bir oyun təcrübəsi verir.

Bu oyun sadə qaydalar və yüksək qazanc imkanları ilə oyunçuları cəlb edir. Bu baxışın bir hissəsi olaraq Aviator Azərbaycan oyununun xüsusiyyətlərini və qaydalarını ətraflı nəzərdən keçirəcəyik. Araşdırmamız göstərdi ki, Aviator Game 2019-cu ildə Spribe tərəfindən istifadəyə verilmiş bir oyundur. Bu oyunda istifadəçilər virtual təyyarənin uçuşunu izləyirlər aviator az.

Bu Gün Azərbaycanda Aviatoru Harada Oynamaq Olar?

Məsələn, əgər əmanətiniz 100 AZN-dir, o zaman mərciniz 1 AZN olmalıdır. Buna görə də, uyğun sahəyə təyin edilmiş olan əmsal dəyərini daxil edə və “Avtomatik çıxış” xidmətindən istifadə edə bilərsiniz. Bu taktikadan istifadə edərkən orta itki riski ilə x2-x3 əmsalları seçməlisiniz. Belə bir çarpanla itirilmiş əmsalların ehtimalı ümumi oyun vaxtının orta hesabı 40-42%-dir. Uzun müddətdə böyük əmsalların olmadığını görürsəniz, mərci artırmaq və riski artırmaq mümkündür.

Aviator. com. az-a güvənərək siz, yalnız doğru və dəqiq məlumat əldə edirsiniz! Bu yanaşma oyunçulara ən yaxşı seçim etməkdə kömək edir və Aviator. com. az-ı onlayn qumar sahəsində etibarlı bir mənbə halına gətirir. Aviator. com. az istifadəçilərinə hər zaman dəstək göstərməyə hazırdır. Bizə suallarınızı və təkliflərinizi göndərərək asanlıqla əlaqə saxlaya bilərsiniz. Platformamız istifadəçilərin ehtiyaclarını qarşılamaq üçün daim yenilənir. Hər hansı sualınız olduqda, bizimlə əlaqə saxlamaqdan çəkinməyin.

Aviatoru Ios/android Üzrə Yükləmək Mümkündürmü?

Oyunun adilliyyətini qorumaq üçün çoxlu təhlükəsizlik tədbirləri mövcuddur. Aviator Predictor proqramları və botları, oyunun nəticəsini proqnoz etməyə cəhd edir. Bu növ proqramlar və botlar, çeşitli statistik məlumatları və alqoritmləri istifadə edir.

  • Təhlükəsizlik və məsuliyyətli oyun prinsipləri Aviator. apresentando. az-ın fəaliyyətinin əsas hissəsidir.
  • Düymələr barmaqlar üçün uyğunlaşdırılıb, interfeys zəif telefonlarda belə lag etmir.
  • Aviator. apresentando. az veb saytımıza ən yaxşı girişi təmin etmək üçün çərəzlərdən istifadə edir.
  • Özünüzə depozit və vaxt limiti təyin edin, itkinin arxasınca getməyin.
  • Uzun müddətdə böyük əmsalların olmadığını görürsəniz, mərci artırmaq və riski artırmaq mümkündür.

Təyyarənin davranışında və ya qəzaların tezliyində heç bir fərq yoxdur. Onlayn kazinoda Aviator demo-da minimum 100 raund keçirməyi məsləhət görürəm. Bu oyunun ritmini anlamağa, strategiyaları analyze etməyə və öz tərzi yaratmağa kömək edəcək. Aviator. possuindo. az – Azərbaycanın məşhur onlayn kazino oyunları üçün nəzərdə tutulmuş araşdırma platformasıdır. Biz Aviator oyunu ilə bağlı ən dəqiq və ətraflı məlumatları təqdim edirik, həmçinin təhlükəsiz və məsuliyyətli oyun təcrübəsini dəstəkləyirik. Bizim əsas məqsədimiz oyunçulara oyun təcrübəsini daha təhlükəsiz və məlumatlı etmək üçün bütün lazımi resursları təqdim etməkdir.

Ayrıca Azərbaycan Tətbiqi Var?

Bu rejimdə, oyunçu maliyyə riski olmadan oyun təcrübəsi yaşaya bilər və oyunun qaydalarına və taktikalarına daha yaxından baxa bilər. Aviator oyununda uğur qazanmaq üçün müxtəlif strategiyalar və məsləhətlər mövcuddur. Bu strateyalar oyunun dinamiklərinə və hər bir raundun əvvəlində qoyulan mərc ölçüsünə görə dəyişir.

  • Oyunçunun mərc idarə etməsi panel vasitəsilə aşağı tərəfdə mümkündür.
  • Bəzi kazinolar sosial şəbəkə hesablarınız və ya e-poçtunuz vasitəsilə də Aviator qeydiyyat imkanı təklif edir.
  • Bu oyunda istifadəçilər virtual təyyarənin uçuşunu izləyirlər.
  • Təyyarə nə qədər uzun müddət uçuşda olarsa, bahis çarpanı bir o qədər yüksək olar.

Solda olan qələbə/uduz məlumatları və yuxarıdakı çarpan məlumatları təhlil üçün faydalı olacaq. Testlərimiz göstərir ki, seçimlər Aviator üçün müxtəlif strategiyalara inteqrasiya edilə bilər. Crash-oyununun inkişaf etdiricisi UKGC tərəfindən lisenziyaya malikdir və proqram təminatının etibarlılığını təmin edir. Aviator sadə və əyləncəli bir oyundur, burada məqsəd mərcinizi vaxtında satmaqdır. Oyunçunun yeganə məqsədi – mərci bağlamağa yetişməkdir.

Dəstək

Oyuncular təyyarə yüksələnə qədər oynaya bilər və Cashout düyməsini düzgün vaxtda sıxaraq qazancı əldə etməlidirlər. Aviator bir çox onlayn kazino platformalarında mövcuddur. Bu platformalar arasında o, həm də azərbaycanlı oyunçular üçün əlverişli və populyar seçimdir.

Bizim öz təcrübəmizə” “əsasən, belə yükləmə formatı rəsmi mağazadan aşağı düşmür. Aviator oyununu mobil cihazınıza yükləməklə, hər zaman və istədiyiniz yerdə bu əyləncəli oyunun keyfini çıxara bilərsiniz. Aviator demosu Spribe şirkətinin veb saytında və onlayn kazinolarda mövcuddur. Bu rejimdə, oyunçu virtual kreditlərlə təmin olunmuş demo hesabı ilə oynayır. Demo rejimində oynamaq üçün qeydiyyatdan keçmək və ya giriş etmək tələb olunmur. Aviator demo, oyunun mekaniyasını və funksiyalarını öyrənmək və yeni strategiyalar sınaqdan keçirmək üçün mükəmməl bir olanak təqdim edir.

Aviator: Oyunun Və Qazanmağın Tam Bələdçisi

Aviator oyununu Android və iOS cihazlarına yükləmək çox sadədir. Oyunun öz tətbiqi olmasa de uma, onu onlayn kazino tərəfindən təmin edilən mobil versiyasında oynamaq mümkündür. Aviatori Android os üçün APK formatında yükləmək mümkündür. Belə bir halda, əvvəlcədən telefonunuzun parametrlərindən bilinməyən mənbələrdən fayllar yükləməyə icazə verilməsini təmin etməlisiniz. Bundan sonra, casino saytına keçid edərək, oyunu xüsusi bölmədən yükləyə bilərsiniz.

  • Oyunçunun yeganə məqsədi – mərci bağlamağa yetişməkdir.
  • Bu rejimdə, oyunçu virtual kreditlərlə təmin olunmuş demo hesabı ilə oynayır.
  • Aviator. com. az istifadəçilərinə hər zaman dəstək göstərməyə hazırdır.

Agresiv bahis strategiyaları ilə sürətli itkilər mümkündür, yüksək riskli bir oyundur. Aviator signal ilə oynamağa çalışdım, amma bu, mənim öz intuisiyamdan yaxşı deyil. Aviator predictor işlətməklə qazanmaq istədim, amma özümdə oynamaq daha maraqlı oldu. Aviator hack axtardım, amma daha yaxşısı öz güvənimlə oynamaq oldu. Aviator demo ilə başladım, əsl oyuna keçmək üçün əla seçimdir! Aviator online olaraq rahat oynamalıdır, amma bir arizona gecikmə var idi.

Aviator Kazinoda Qeydiyyat Və Giriş

Aviator. com. az, yalnız lisenziyası olan və etibarlı fəaliyyət göstərən onlayn kazinoları tövsiyə edir. Bu, oyunçuların həm hüquqi, həm də təhlükəsizlik baxımından tam müdafiə olunmasını təmin edir. Təhlükəsizlik və məsuliyyətli oyun prinsipləri Aviator. com. az-ın fəaliyyətinin əsas hissəsidir. Biz istifadəçilərə təhlükəsiz oyun təcrübəsi üçün lazımi məsləhətləri təqdim edirik və məsuliyyətli qumar oynamağı təşviq edirik. Platformamızda məsuliyyətli oyun haqqında geniş məlumat və resurslar mövcuddur. Aviator. com. az istifadəçilərlə daima açıq və şəffaf ünsiyyətdə olmağa çalışır.

Qələbə halında, uğursuz raundlardan əvvəl mənfi cəhətləri örtəcək. Statistikaya əsasən, Aviator oyununda x100-ə yaxın əmsallar ortalama olaraq dəqiqə ərzində bir dəfə baş verir. Əvvəlki böyük qələbənin təxminən dəqiqə əvvəl” “olduğu bir vəziyyəti gözləyin və maksimum əmsalların azalmasını gözləyərək oyuna qoşulun. Bu, riskli bir taktikadır, lakin uğurlu olduqda sürətli pul qazanmaq üçün zəmanət verir. Çeşitli bahis seçimləri oyunculara stratejiyə görə threat səviyyələrini ayarlama imkanı verir, bu de uma oyunun əlverişli olmasını təmin edir. Sürətli və sadə oyun qaydaları, yeni və təcrübəli oyunçulara kompleks olmayan, təlatümlü əyləncə təklif edir.

Aviator Proqnozçusu: Çıxış Üçün Ən Yaxşı Anlar

Əmin olun ki, Aviator oynamaq üçün lisenziyalı və etibarlı onlayn kazinoları seçərsinizsə, bu proses” “təhlükəsizdir. Etibarlı kazino platformaları, məxfilik və ödəniş təhlükəsizliyini qorumaq üçün müvafiq tədbirləri götürür. Aviatorun məşhur mobil versiyası mövcuddur, amma bunu yalnız onlayn kazino platformalarından yükləmək mümkündür. Mobil tətbiq yoxdur, lakin HTML-5 ilə uyğun olduğundan hər hansı bir cihazdan istifadə edə bilərsiniz. Aviator. apresentando. az veb saytımıza ən yaxşı girişi təmin etmək üçün çərəzlərdən istifadə edir. Saytdan istifadə etməyə davam edərək və “qəbul edirəm” düyməsini basaraq çərəzlərdən istifadə etməyi qəbul edirsiniz.

  • Aviator kazinolarında populyar olan yeni bir oyun növüdür.
  • Lakin Aviator oyununun mühafizə altında olduğu ilə işlədiyi üçün bu növ proqramlar işləməyəcəkdir.
  • Aviator oyununda əsas məqsəd təyyarənin uçuşunu izləmək və uçuş sona çatmadan mərci bağlamaqdır.
  • Bu proseslər istifadəçilərə sadə və asan yoldur, ki, onlar Aviator on-line oyununda qeyri-müəyyən bir rahatlıqla iştirak edə bilərlər.

Aviator yükle üçün, seçdiyiniz onlayn kazinonun mobil versiyasına giriş edin. Oyunun çevik və uyğun interfeysi, hər hansı bir mobil cihazdan istifadə etməyə imkan verir. Aviator mobil versiyasında eyni oyun mekanikası və funksiyalar mövcuddur. Cihazınızın ekranına uyğun olaraq adaptasiya olunmuş interfeys, rahat bir oyun təcrübəsi təmin edir.

Haqqımızda – Aviator Game Azerbaijan

Aviator on line casino oynamaq üçün ilk addım, bu platformlardan birinə qeydiyyatdan keçməkdir. Aviator kazinosuna qeydiyyatdan keçmək və daxil olmaq üçün bir neçə yol onda bilər. Ən çox istifadə olunan yollar, adınızı, elektron poçtunuzu və telefon nömrənizi daxil edərək qeydiyyatdan keçməkdir. Bəzi kazinolar sosial şəbəkə hesablarınız və ya e-poçtunuz vasitəsilə də Aviator qeydiyyat imkanı təklif edir. Qeydiyyat prosesi tamamlandıqdan sonra, hesabınıza pul əlavə edərək Aviator oyunu ilə oynamağa başlaya bilərsiniz. Aviatori kazino kolleksiyasında tapmaq üçün, hesabınıza depozit əlavə edərək və oyunun axtarış hissəsində axtararaq edə bilərsiniz.

  • Aviator oyununu yeni başlayanları eyni səhvləri edir.
  • Xeyr; eyni oyun mövcud platformalar vasitəsilə açılır.
  • Mexanikası pullu versiyanın tamamilə eynidir, yalnız pul virtualdır.

Saytımızla bağlı hər hansı sualınız, təklifiniz və ahora rəyiniz olduqda, bizimlə əlaqə saxlamaq çox asandır. Bu cür məsələlərdə birbaşa Aviator oyununu təqdim edən onlayn kazinolarla əlaqə saxlamağınızı tövsiyə edirik.”

Aviator: Bu Onlayn Kazino Oyunu Nədir?

Bütün diqqətinizi oyuna verəcək və vaxtında “Cashout” düyməsini sıxmaq vaxtı gəldikdə olacaq – təyyarə havaa qalxmazdan əvvəl. Bu strateji ilə mərc ölçüsünü seçmək əhəmiyyətlidir. İlk 200 oyununuz üçün bankroll’unuzun yetəcəyini gözləmək üçün bare minimum mərc ölçüsünü təklif edirik oyundur.

  • Aviator demo ilə başladım, əsl oyuna keçmək üçün əla seçimdir!
  • Oyunçular üçün əsas məsələ, əlində yüksək rəy və lisenziyaya malik olan güvənilir platformları seçməkdir.
  • Aviator signal ilə oynamağa çalışdım, amma bu, mənim öz intuisiyamdan yaxşı deyil.

Amma unutma ki, Aviator azart oyunudur və yalnız 18+ yaşından yuxarı vətəndaşlar üçün əlçatandır. Mən true pula oynamağa çağırmıram və oyunu təbliğ etmirəm. Aviator oyununu yeni başlayanları eyni səhvləri edir. Çox mərc edir,” “çarpanlarda tamahkar olur, uduzuşdan sonra qazanmağa çalışır. Bütün bunlar sürətlə pul itirməyə və oyundan məyus olmağa gətirib çıxarır.

Manatla Oynamaq Olar?

Ən son vaxtlarda Azərbaycanın axtarış sorğularında Aviator hətta “dollar kursu”nu belə geridə qoydu. Təyyarənin en este momento göylərə qalxdığı, veya birinci saniyədə düşdüyü oyun əsl struck oldu. Hər gün bu məşhur Spribe studiyasının crash oyununda milyonlarla manat fırlanır.

  • Oyunun öz tətbiqi olmasa da, onu onlayn kazino tərəfindən təmin edilən mobil versiyasında oynamaq mümkündür.
  • Bu yanaşma oyunçulara ən yaxşı seçim etməkdə kömək edir və Aviator. com. az-ı onlayn qumar sahəsində etibarlı bir mənbə halına gətirir.
  • Belə bir halda, əvvəlcədən telefonunuzun parametrlərindən bilinməyən mənbələrdən fayllar yükləməyə icazə verilməsini təmin etməlisiniz.
  • Oyun asılılığı fizzle wheeze whistle snuffle edirsinizsə, ara verin və peşəkar dəstək axtarın.
  • Hər bir turun nəticəsi təsadüfi olaraq müəyyənləşir, bu da nəticələri süni etməni və ya proqnozlaşdırmağı çətin edir.
  • Çox azərbaycanlı oyunçu ümumiyyətlə yalnız Aviator oyununu mobil vasitəsilə oynayır.

Aviator hack üçün internətdə müxtəlif proqramlar mövcuddur. Bu proqramlar, oyunun nəticələrini manipulyasiya etməyə çalışır və daimi qalib gəlməni təmin edəcəyini iddia edir. Lakin Aviator oyununun mühafizə altında olduğu ilə işlədiyi üçün bu növ proqramlar işləməyəcəkdir.

Aviator Nədir Və Necə Oynanır?

Bu proseslər istifadəçilərə sadə və asan yoldur, ki, onlar Aviator on the internet oyununda qeyri-müəyyən bir rahatlıqla iştirak edə bilərlər. İnternetdə sıx sıx rast gəlinən Aviator hack apk-lər, daimi qalibliklər vəd edir. Ancaq bizim” “təcrübəmiz göstərir ki, xarici proqramlar vasitəsilə nadir hallarda mali uğura çatmaq mümkündür. Aviator oyununda qalib olmağın əsas məsləhətləri strategiyalardan istifadə etməkdir.

  • Aviator. com. az, bu meyarlara əsaslanaraq ən yaxşı platformaları seçir və istifadəçilər üçün obyektiv tövsiyələr təqdim edir.
  • Uğursuzlar sırasında olmamaq üçün Aviator üçün bu məsləhətləri qəbul ainsi que.
  • Ödəniş üsulları çox vaxt bank kartı, bəzən elektron pulqabı və köçürmə olur.
  • İndi Aviator oyunu haqqında hər şeyi öyrənəcəksən.

Biz onlayn qumar sahəsində illərdir fəaliyyət göstərən təcrübəli komanda ilə işləyirik. Həmçinin, saytımızda yalnız rəsmi lisenziyaya malik kazinoların məlumatları paylaşılır. Bu, istifadəçilərin məlumatlarının qorunmasını və təhlükəsiz oyun təcrübəsini təmin edir. Aviator. com. az platformasının əsas üstünlükləri onun təklif etdiyi unikal xüsusiyyətlərdən ibarətdir.

Məsuliyyətli Oyun

Oyunun mahiyyəti, təyyarə ekrandan uçmadan və dövrə bitməmişdən əvvəl mərcinizi satmağı bacarmaqdır. Aviator oyununda əsas məqsəd təyyarənin uçuşunu izləmək və uçuş sona çatmadan mərci bağlamaqdır. Oyunun başında oyunçu mərc edir və təyyarə havaya qalxır. Təyyarə nə qədər uzun müddət uçuşda olarsa, bahis çarpanı bir o qədər yüksək olar.

  • Bu texnologiya oyundakı hər mərcin təsadüfi və gözlənilməz olmasını təmin edir.
  • Aviator game mövcud olduğu illər ərzində oyunçular onlarla strategiya icad ediblər.
  • Oyunçu mərcini raundun sonuna qədər satarsa, um, cari çarpana vurulur” “və qalib gəlir.
  • Aşağıda mərc idarəetməsi üçün panel var, solda mərc statistikasını ətraflı görmək mümkündür, yuxarıda isə raund tarixinə baxılır.

Özünüzə depozit və vaxt limiti təyin edin, itkinin arxasınca getməyin. Oyun asılılığı hiss edirsinizsə, ara verin və peşəkar dəstək axtarın. Riski azaltmaq üçün əvvəlcə oyunu demo rejimində sınamaq, sonra oynamağın addımlarına baxmaq rahatdır. Bəli, onu təqdim edən lisenziyalı beynəlxalq platformalarda.

Aviator Oyununun Xüsusiyyətləri

Oyunçu mərcini raundun sonuna qədər satarsa, o, cari çarpana vurulur” “və qalib gəlir. Bu sadə, lakin əyləncəli mexanik ola Aviator Azerbaycan oyunçular arasında məşhur edir. Oyun pəncərəsinin mərkəzində təyyarənin uçuşu görüntülənir. Oyunçunun mərc idarə etməsi panel vasitəsilə aşağı tərəfdə mümkündür.

  • Amma unutma ki, Aviator azart oyunudur və yalnız 18+ yaşından yuxarı vətəndaşlar üçün əlçatandır.
  • Aviator hack axtardım, amma daha yaxşısı öz güvənimlə oynamaq oldu.
  • Hər hansı sualınız olduqda, bizimlə əlaqə saxlamaqdan çəkinməyin.
  • Həmçinin, saytımızda yalnız rəsmi lisenziyaya malik kazinoların məlumatları paylaşılır.

Əsas məsələ təyyarənin vaxtında satılmasıdır, adrenaline tam! Aviator azerbaycan üçün gözəl seçimdir, yerli platformalarda tapıla bilir. Aviator, çox səbəblərə görə dünya genişində məşhur olan, sadə lakin əyləncəli bir crash-oynudur.

Scroll to Top