Submit
Path:
~
/
home
/
getwphos
/
public_html
/
organizedproductivity
/
wp-content
/
plugins
/
elementor
/
assets
/
js
/
File Content:
onboarding.9ee547c8074641c253ee.bundle.js
/*! elementor - v3.12.2 - 23-04-2023 */ "use strict"; (self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["onboarding"],{ /***/ "../app/assets/js/molecules/elementor-loading.js": /*!*******************************************************!*\ !*** ../app/assets/js/molecules/elementor-loading.js ***! \*******************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = ElementorLoading; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); function ElementorLoading(props) { return /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loading" }, /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader-wrapper" }, /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader" }, /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader-boxes" }, /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader-box" }), /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader-box" }), /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader-box" }), /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loader-box" }))), /*#__PURE__*/_react.default.createElement("div", { className: "elementor-loading-title" }, props.loadingText))); } ElementorLoading.propTypes = { loadingText: PropTypes.string }; ElementorLoading.defaultProps = { loadingText: __('Loading', 'elementor') }; /***/ }), /***/ "../app/assets/js/ui/popover-dialog/popover-dialog.js": /*!************************************************************!*\ !*** ../app/assets/js/ui/popover-dialog/popover-dialog.js ***! \************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = PopoverDialog; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function PopoverDialog(props) { var targetRef = props.targetRef, offsetTop = props.offsetTop, offsetLeft = props.offsetLeft, wrapperClass = props.wrapperClass, trigger = props.trigger, hideAfter = props.hideAfter, popoverRef = (0, _react.useCallback)(function (popoverEl) { var target = targetRef === null || targetRef === void 0 ? void 0 : targetRef.current; // If the target or the popover element does not exist on the page anymore after a re-render, do nothing. if (!target || !popoverEl) { return; } /** * Show Popover */ var showPopover = function showPopover() { popoverEl.style.display = 'block'; popoverEl.setAttribute('aria-expanded', true); var targetRect = target.getBoundingClientRect(), popoverRect = popoverEl.getBoundingClientRect(), widthDifference = popoverRect.width - targetRect.width; popoverEl.style.top = targetRect.bottom + offsetTop + 'px'; popoverEl.style.left = targetRect.left - widthDifference / 2 - offsetLeft + 'px'; // 16px to compensate for the arrow width. popoverEl.style.setProperty('--popover-arrow-offset-end', (popoverRect.width - 16) / 2 + 'px'); }; /** * Hide Popover */ var hidePopover = function hidePopover() { popoverEl.style.display = 'none'; popoverEl.setAttribute('aria-expanded', false); }; /** * Handle the Popover's hover functionality */ var handlePopoverHover = function handlePopoverHover() { var hideOnMouseOut = true, timeOut = null; // Show popover on hover of the target target.addEventListener('mouseover', function () { hideOnMouseOut = true; showPopover(); }); // Hide popover when not overing over the target or the popover itself target.addEventListener('mouseleave', function () { timeOut = setTimeout(function () { if (hideOnMouseOut) { if ('block' === popoverEl.style.display) { hidePopover(); } } }, hideAfter); }); // Don't hide the popover if the user is still hovering over it. popoverEl.addEventListener('mouseover', function () { hideOnMouseOut = false; if (timeOut) { clearTimeout(timeOut); timeOut = null; } }); // Once the user stops hovering over the popover, hide it. popoverEl.addEventListener('mouseleave', function () { timeOut = setTimeout(function () { if (hideOnMouseOut) { if ('block' === popoverEl.style.display) { hidePopover(); } } }, hideAfter); hideOnMouseOut = true; }); }; /** * Handle the Popover's click functionality */ var handlePopoverClick = function handlePopoverClick() { var popoverIsActive = false; target.addEventListener('click', function (e) { e.preventDefault(); e.stopPropagation(); if (popoverIsActive) { hidePopover(); popoverIsActive = false; } else { showPopover(); popoverIsActive = true; } }); // Make sure the popover doesn't close when it is clicked on. popoverEl.addEventListener('click', function (e) { e.stopPropagation(); }); // Hide the popover when clicking outside of it. document.body.addEventListener('click', function () { if (popoverIsActive) { hidePopover(); popoverIsActive = false; } }); }; if ('hover' === trigger) { handlePopoverHover(); } else if ('click' === trigger) { handlePopoverClick(); } }, [targetRef]); var wrapperClasses = 'e-app__popover'; if (wrapperClass) { wrapperClasses += ' ' + wrapperClass; } return /*#__PURE__*/_react.default.createElement("div", { className: wrapperClasses, ref: popoverRef }, props.children); } PopoverDialog.propTypes = { targetRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).isRequired, trigger: PropTypes.string, direction: PropTypes.string, offsetTop: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), offsetLeft: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), wrapperClass: PropTypes.string, children: PropTypes.any, hideAfter: PropTypes.number }; PopoverDialog.defaultProps = { direction: 'bottom', trigger: 'hover', offsetTop: 10, offsetLeft: 0, hideAfter: 300 }; /***/ }), /***/ "../app/modules/onboarding/assets/js/app.js": /*!**************************************************!*\ !*** ../app/modules/onboarding/assets/js/app.js ***! \**************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = App; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router")); var _context = __webpack_require__(/*! ./context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _account = _interopRequireDefault(__webpack_require__(/*! ./pages/account */ "../app/modules/onboarding/assets/js/pages/account.js")); var _helloTheme = _interopRequireDefault(__webpack_require__(/*! ./pages/hello-theme */ "../app/modules/onboarding/assets/js/pages/hello-theme.js")); var _siteName = _interopRequireDefault(__webpack_require__(/*! ./pages/site-name */ "../app/modules/onboarding/assets/js/pages/site-name.js")); var _siteLogo = _interopRequireDefault(__webpack_require__(/*! ./pages/site-logo */ "../app/modules/onboarding/assets/js/pages/site-logo.js")); var _goodToGo = _interopRequireDefault(__webpack_require__(/*! ./pages/good-to-go */ "../app/modules/onboarding/assets/js/pages/good-to-go.js")); var _uploadAndInstallPro = _interopRequireDefault(__webpack_require__(/*! ./pages/upload-and-install-pro */ "../app/modules/onboarding/assets/js/pages/upload-and-install-pro.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function App() { // Send an AJAX request to update the database option which makes sure the Onboarding process only runs once, // for new Elementor sites. (0, _react.useEffect)(function () { // This is to prevent dark theme in onboarding app from the frontend and not backend var darkThemeClassName = 'eps-theme-dark'; var hasDarkMode = document.body.classList.contains(darkThemeClassName); if (hasDarkMode) { document.body.classList.remove(darkThemeClassName); } if (!elementorAppConfig.onboarding.onboardingAlreadyRan) { var formData = new FormData(); formData.append('_nonce', elementorCommon.config.ajax.nonce); formData.append('action', 'elementor_update_onboarding_option'); fetch(elementorCommon.config.ajax.url, { method: 'POST', body: formData }); } elementorAppConfig.return_url = elementorAppConfig.admin_url; return function () { if (hasDarkMode) { document.body.classList.add(darkThemeClassName); } }; }, []); return /*#__PURE__*/_react.default.createElement(_context.ContextProvider, null, /*#__PURE__*/_react.default.createElement(_router.LocationProvider, { history: _router2.default.appHistory }, /*#__PURE__*/_react.default.createElement(_router.Router, null, /*#__PURE__*/_react.default.createElement(_account.default, { default: true }), /*#__PURE__*/_react.default.createElement(_helloTheme.default, { path: "hello" }), /*#__PURE__*/_react.default.createElement(_siteName.default, { path: "siteName" }), /*#__PURE__*/_react.default.createElement(_siteLogo.default, { path: "siteLogo" }), /*#__PURE__*/_react.default.createElement(_goodToGo.default, { path: "goodToGo" }), /*#__PURE__*/_react.default.createElement(_uploadAndInstallPro.default, { path: "uploadAndInstallPro" })))); } /***/ }), /***/ "../app/modules/onboarding/assets/js/components/button.js": /*!****************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/button.js ***! \****************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Button; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); function Button(props) { var buttonSettings = props.buttonSettings, type = props.type; var buttonClasses = 'e-onboarding__button'; if (type) { buttonClasses += " e-onboarding__button-".concat(type); } if (buttonSettings.className) { buttonSettings.className += ' ' + buttonClasses; } else { buttonSettings.className = buttonClasses; } if (buttonSettings.href) { return /*#__PURE__*/_react.default.createElement("a", buttonSettings, buttonSettings.text); } return /*#__PURE__*/_react.default.createElement("div", buttonSettings, buttonSettings.text); } Button.propTypes = { buttonSettings: PropTypes.object.isRequired, type: PropTypes.string }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/card.js": /*!**************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/card.js ***! \**************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Card; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); function Card(_ref) { var image = _ref.image, imageAlt = _ref.imageAlt, text = _ref.text, link = _ref.link, name = _ref.name, clickAction = _ref.clickAction; var onClick = function onClick() { elementorCommon.events.dispatchEvent({ event: 'starting canvas click', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, selection: name } }); if (clickAction) { clickAction(); } }; return /*#__PURE__*/_react.default.createElement("a", { className: "e-onboarding__card", href: link, onClick: onClick }, /*#__PURE__*/_react.default.createElement("img", { className: "e-onboarding__card-image", src: image, alt: imageAlt }), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__card-text" }, text)); } Card.propTypes = { image: PropTypes.string.isRequired, imageAlt: PropTypes.string.isRequired, text: PropTypes.string.isRequired, link: PropTypes.string.isRequired, name: PropTypes.string.isRequired, clickAction: PropTypes.func }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/checklist-item.js": /*!************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/checklist-item.js ***! \************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = ChecklistItem; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); function ChecklistItem(props) { return /*#__PURE__*/_react.default.createElement("li", { className: "e-onboarding__checklist-item" }, /*#__PURE__*/_react.default.createElement("i", { className: "eicon-check-circle" }), props.children); } ChecklistItem.propTypes = { children: PropTypes.string }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/checklist.js": /*!*******************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/checklist.js ***! \*******************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Checklist; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); function Checklist(props) { return /*#__PURE__*/_react.default.createElement("ul", { className: "e-onboarding__checklist" }, props.children); } Checklist.propTypes = { children: PropTypes.any.isRequired }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/go-pro-popover.js": /*!************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/go-pro-popover.js ***! \************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = GoProPopover; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _popoverDialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/popover-dialog/popover-dialog */ "../app/assets/js/ui/popover-dialog/popover-dialog.js")); var _checklist = _interopRequireDefault(__webpack_require__(/*! ./checklist */ "../app/modules/onboarding/assets/js/components/checklist.js")); var _checklistItem = _interopRequireDefault(__webpack_require__(/*! ./checklist-item */ "../app/modules/onboarding/assets/js/components/checklist-item.js")); var _button = _interopRequireDefault(__webpack_require__(/*! ./button */ "../app/modules/onboarding/assets/js/components/button.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function GoProPopover(props) { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState; // Handle the Pro Upload popup window. var alreadyHaveProButtonRef = (0, _react.useCallback)(function (alreadyHaveProButton) { if (!alreadyHaveProButton) { return; } alreadyHaveProButton.addEventListener('click', function (event) { event.preventDefault(); elementorCommon.events.dispatchEvent({ event: 'already have pro', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); // Open the Pro Upload screen in a popup. window.open(alreadyHaveProButton.href + '&mode=popup', 'elementorUploadPro', "toolbar=no, menubar=no, width=728, height=531, top=100, left=100"); // Run the callback for when the upload succeeds. elementorCommon.elements.$body.on('elementor/upload-and-install-pro/success', function () { updateState({ hasPro: true, proNotice: { type: 'success', icon: 'eicon-check-circle-o', message: __('Elementor Pro has been successfully installed.', 'elementor') } }); }); }); }, []); // The buttonsConfig prop is an array of objects. To find the 'Upgrade Now' button, we need to iterate over the object. var goProButton = props.buttonsConfig.find(function (button) { return 'go-pro' === button.id; }), getElProButton = { text: __('Upgrade Now', 'elementor'), className: 'e-onboarding__go-pro-cta', target: '_blank', href: 'https://elementor.com/pro/?utm_source=onboarding-wizard&utm_campaign=gopro&utm_medium=wp-dash&utm_content=top-bar-dropdown&utm_term=' + elementorAppConfig.onboarding.onboardingVersion, tabIndex: 0, onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'get elementor pro', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); } }; return /*#__PURE__*/_react.default.createElement(_popoverDialog.default, { targetRef: goProButton.elRef, wrapperClass: "e-onboarding__go-pro" }, /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__go-pro-content" }, /*#__PURE__*/_react.default.createElement("h2", { className: "e-onboarding__go-pro-title" }, __('Ready to Get Elementor Pro?', 'elementor')), /*#__PURE__*/_react.default.createElement(_checklist.default, null, /*#__PURE__*/_react.default.createElement(_checklistItem.default, null, __('90+ Basic & Pro widgets', 'elementor')), /*#__PURE__*/_react.default.createElement(_checklistItem.default, null, __('300+ Basic & Pro templates', 'elementor')), /*#__PURE__*/_react.default.createElement(_checklistItem.default, null, __('Premium Support', 'elementor'))), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__go-pro-paragraph" }, __('And so much more!', 'elementor')), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__go-pro-paragraph" }, /*#__PURE__*/_react.default.createElement(_button.default, { buttonSettings: getElProButton })), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__go-pro-paragraph" }, /*#__PURE__*/_react.default.createElement("a", { tabIndex: "0", className: "e-onboarding__go-pro-already-have", ref: alreadyHaveProButtonRef, href: elementorAppConfig.onboarding.urls.uploadPro, rel: "opener" }, __('Already have Elementor Pro?', 'elementor'))))); } GoProPopover.propTypes = { buttonsConfig: PropTypes.array.isRequired }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/layout/footer-buttons.js": /*!*******************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/layout/footer-buttons.js ***! \*******************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = FooterButtons; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../app/assets/js/ui/grid/grid.js")); var _button = _interopRequireDefault(__webpack_require__(/*! ../button */ "../app/modules/onboarding/assets/js/components/button.js")); var _skipButton = _interopRequireDefault(__webpack_require__(/*! ../skip-button */ "../app/modules/onboarding/assets/js/components/skip-button.js")); function FooterButtons(_ref) { var actionButton = _ref.actionButton, skipButton = _ref.skipButton, className = _ref.className; var classNames = 'e-onboarding__footer'; if (className) { classNames += ' ' + className; } return /*#__PURE__*/_react.default.createElement(_grid.default, { container: true, alignItems: "center", justify: "space-between", className: classNames }, actionButton && /*#__PURE__*/_react.default.createElement(_button.default, { buttonSettings: actionButton, type: "action" }), skipButton && /*#__PURE__*/_react.default.createElement(_skipButton.default, { button: skipButton })); } FooterButtons.propTypes = { actionButton: PropTypes.object, skipButton: PropTypes.object, className: PropTypes.string }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/layout/header.js": /*!***********************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/layout/header.js ***! \***********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Header; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _context = __webpack_require__(/*! ../../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../app/assets/js/ui/grid/grid.js")); var _goProPopover = _interopRequireDefault(__webpack_require__(/*! ../go-pro-popover */ "../app/modules/onboarding/assets/js/components/go-pro-popover.js")); var _headerButtons = _interopRequireDefault(__webpack_require__(/*! elementor-app/layout/header-buttons */ "../app/assets/js/layout/header-buttons.js")); var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../app/assets/js/hooks/use-page-title.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function Header(props) { (0, _usePageTitle.default)({ title: props.title }); var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state; var onClose = function onClose() { elementorCommon.events.dispatchEvent({ event: 'close modal', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); window.top.location = elementorAppConfig.admin_url; }; return /*#__PURE__*/_react.default.createElement(_grid.default, { container: true, alignItems: "center", justify: "space-between", className: "eps-app__header e-onboarding__header" }, /*#__PURE__*/_react.default.createElement("div", { className: "eps-app__logo-title-wrapper e-onboarding__header-logo" }, /*#__PURE__*/_react.default.createElement("i", { className: "eps-app__logo eicon-elementor" }), /*#__PURE__*/_react.default.createElement("img", { src: elementorCommon.config.urls.assets + 'images/logo-platform.svg', alt: __('Elementor Logo', 'elementor') })), /*#__PURE__*/_react.default.createElement(_headerButtons.default, { buttons: props.buttons, onClose: onClose }), !state.hasPro && /*#__PURE__*/_react.default.createElement(_goProPopover.default, { buttonsConfig: props.buttons })); } Header.propTypes = { title: PropTypes.string, buttons: PropTypes.arrayOf(PropTypes.object) }; Header.defaultProps = { buttons: [] }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/layout/layout.js": /*!***********************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/layout/layout.js ***! \***********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Layout; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _context = __webpack_require__(/*! ../../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _header = _interopRequireDefault(__webpack_require__(/*! ./header */ "../app/modules/onboarding/assets/js/components/layout/header.js")); var _progressBar = _interopRequireDefault(__webpack_require__(/*! ../progress-bar/progress-bar */ "../app/modules/onboarding/assets/js/components/progress-bar/progress-bar.js")); var _content = _interopRequireDefault(__webpack_require__(/*! ../../../../../../assets/js/layout/content */ "../app/assets/js/layout/content.js")); var _connect = _interopRequireDefault(__webpack_require__(/*! ../../utils/connect */ "../app/modules/onboarding/assets/js/utils/connect.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function Layout(props) { (0, _react.useEffect)(function () { // Send modal load event for current step. elementorCommon.events.dispatchEvent({ event: 'modal load', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: props.pageId, user_state: elementorCommon.config.library_connect.is_connected ? 'logged' : 'anon' } }); updateState({ currentStep: props.pageId, nextStep: props.nextStep || '', proNotice: null }); }, [props.pageId]); var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, headerButtons = [], goProButtonRef = (0, _react.useRef)(), createAccountButton = { id: 'create-account', text: __('Create Account', 'elementor-pro'), hideText: false, elRef: (0, _react.useRef)(), url: elementorAppConfig.onboarding.urls.signUp + elementorAppConfig.onboarding.utms.connectTopBar, target: '_blank', rel: 'opener', onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'create account', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, source: 'header' } }); } }; if (state.isLibraryConnected) { headerButtons.push({ id: 'my-elementor', text: __('My Elementor', 'elementor-pro'), hideText: false, icon: 'eicon-user-circle-o', url: 'https://my.elementor.com/?utm_source=onboarding-wizard&utm_medium=wp-dash&utm_campaign=my-account&utm_content=top-bar&utm_term=' + elementorAppConfig.onboarding.onboardingVersion, target: '_blank', onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'my elementor click', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, source: 'header' } }); } }); } else { headerButtons.push(createAccountButton); } if (!state.hasPro) { headerButtons.push({ id: 'go-pro', text: __('Upgrade', 'elementor'), hideText: false, className: 'eps-button__go-pro-btn', url: 'https://elementor.com/pro/?utm_source=onboarding-wizard&utm_campaign=gopro&utm_medium=wp-dash&utm_content=top-bar&utm_term=' + elementorAppConfig.onboarding.onboardingVersion, target: '_blank', elRef: goProButtonRef, onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'go pro', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); } }); } return /*#__PURE__*/_react.default.createElement("div", { className: "eps-app__lightbox" }, /*#__PURE__*/_react.default.createElement("div", { className: "eps-app e-onboarding" }, !state.isLibraryConnected && /*#__PURE__*/_react.default.createElement(_connect.default, { buttonRef: createAccountButton.elRef }), /*#__PURE__*/_react.default.createElement(_header.default, { title: __('Getting Started', 'elementor'), buttons: headerButtons }), /*#__PURE__*/_react.default.createElement("div", { className: 'eps-app__main e-onboarding__page-' + props.pageId }, /*#__PURE__*/_react.default.createElement(_content.default, { className: "e-onboarding__content" }, /*#__PURE__*/_react.default.createElement(_progressBar.default, null), props.children)))); } Layout.propTypes = { pageId: PropTypes.string.isRequired, nextStep: PropTypes.string, className: PropTypes.string, children: PropTypes.any.isRequired }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/layout/page-content-layout.js": /*!************************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/layout/page-content-layout.js ***! \************************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = PageContentLayout; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _context = __webpack_require__(/*! ../../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../app/assets/js/ui/grid/grid.js")); var _notice = _interopRequireDefault(__webpack_require__(/*! ../notice */ "../app/modules/onboarding/assets/js/components/notice.js")); var _footerButtons = _interopRequireDefault(__webpack_require__(/*! ./footer-buttons */ "../app/modules/onboarding/assets/js/components/layout/footer-buttons.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function PageContentLayout(props) { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state; var printNotices = function printNotices() { return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.noticeState && /*#__PURE__*/_react.default.createElement(_notice.default, { noticeState: props.noticeState }), state.proNotice && /*#__PURE__*/_react.default.createElement(_notice.default, { noticeState: state.proNotice })); }; return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_grid.default, { container: true, alignItems: "center", justify: "space-between", className: "e-onboarding__page-content" }, /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__page-content-start" }, /*#__PURE__*/_react.default.createElement("h1", { className: "e-onboarding__page-content-section-title" }, props.title), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__page-content-section-text" }, props.children)), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__page-content-end" }, /*#__PURE__*/_react.default.createElement("img", { src: props.image, alt: "Information" }))), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__notice-container" }, props.noticeState || state.proNotice ? printNotices() : /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__notice-empty-spacer" })), /*#__PURE__*/_react.default.createElement(_footerButtons.default, { actionButton: props.actionButton, skipButton: props.skipButton })); } PageContentLayout.propTypes = { title: PropTypes.string, children: PropTypes.any, image: PropTypes.string, actionButton: PropTypes.object, skipButton: PropTypes.object, noticeState: PropTypes.any }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/notice.js": /*!****************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/notice.js ***! \****************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Notice; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); function Notice(props) { return /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__notice e-onboarding__notice--".concat(props.noticeState.type) }, /*#__PURE__*/_react.default.createElement("i", { className: props.noticeState.icon }), /*#__PURE__*/_react.default.createElement("span", { className: "e-onboarding__notice-text" }, props.noticeState.message)); } Notice.propTypes = { noticeState: PropTypes.object }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/progress-bar/progress-bar-item.js": /*!****************************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/progress-bar/progress-bar-item.js ***! \****************************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = ProgressBarItem; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _context = __webpack_require__(/*! ../../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function ProgressBarItem(props) { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, stepCompleted = 'completed' === state.steps[props.id], stepSkipped = 'skipped' === state.steps[props.id]; var itemClasses = 'e-onboarding__progress-bar-item'; if (props.id === state.currentStep) { itemClasses += ' e-onboarding__progress-bar-item--active'; } else if (stepCompleted) { itemClasses += ' e-onboarding__progress-bar-item--completed'; } else if (stepSkipped) { itemClasses += ' e-onboarding__progress-bar-item--skipped'; } return ( /*#__PURE__*/ // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions _react.default.createElement("div", { onClick: props.onClick, className: itemClasses }, /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__progress-bar-item-icon" }, stepCompleted ? /*#__PURE__*/_react.default.createElement("i", { className: "eicon-check" }) : props.index + 1), props.title) ); } ProgressBarItem.propTypes = { index: PropTypes.number.isRequired, id: PropTypes.string.isRequired, title: PropTypes.string.isRequired, route: PropTypes.string, onClick: PropTypes.func }; /***/ }), /***/ "../app/modules/onboarding/assets/js/components/progress-bar/progress-bar.js": /*!***********************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/progress-bar/progress-bar.js ***! \***********************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = ProgressBar; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js")); var _context = __webpack_require__(/*! ../../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _progressBarItem = _interopRequireDefault(__webpack_require__(/*! ./progress-bar-item */ "../app/modules/onboarding/assets/js/components/progress-bar/progress-bar-item.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function ProgressBar() { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, navigate = (0, _router.useNavigate)(), progressBarItemsConfig = [{ id: 'account', title: __('Elementor Account', 'elementor'), route: 'account' }]; // If hello theme is already activated when onboarding starts, don't show this step in the onboarding. if (!elementorAppConfig.onboarding.helloActivated) { progressBarItemsConfig.push({ id: 'hello', title: __('Hello Theme', 'elementor'), route: 'hello' }); } progressBarItemsConfig.push({ id: 'siteName', title: __('Site Name', 'elementor'), route: 'site-name' }, { id: 'siteLogo', title: __('Site Logo', 'elementor'), route: 'site-logo' }, { id: 'goodToGo', title: __('Good to Go', 'elementor'), route: 'good-to-go' }); var progressBarItems = progressBarItemsConfig.map(function (itemConfig, index) { itemConfig.index = index; if (state.steps[itemConfig.id]) { itemConfig.onClick = function () { elementorCommon.events.dispatchEvent({ event: 'step click', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, next_step: itemConfig.id } }); navigate('/onboarding/' + itemConfig.id); }; } return /*#__PURE__*/_react.default.createElement(_progressBarItem.default, (0, _extends2.default)({ key: itemConfig.id }, itemConfig)); }); return /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__progress-bar" }, progressBarItems); } /***/ }), /***/ "../app/modules/onboarding/assets/js/components/skip-button.js": /*!*********************************************************************!*\ !*** ../app/modules/onboarding/assets/js/components/skip-button.js ***! \*********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = SkipButton; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _button = _interopRequireDefault(__webpack_require__(/*! ./button */ "../app/modules/onboarding/assets/js/components/button.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function SkipButton(props) { var button = props.button, className = props.className, _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, navigate = (0, _router.useNavigate)(), skipStep = function skipStep() { var mutatedState = JSON.parse(JSON.stringify(state)); mutatedState.steps[state.currentStep] = 'skipped'; updateState(mutatedState); if (state.nextStep) { navigate('onboarding/' + state.nextStep); } }, action = button.action || skipStep; // Make sure the 'action' prop doesn't get printed on the button markup which causes an error. delete button.action; // If the button is a link, no onClick functionality should be added. button.onClick = function () { elementorCommon.events.dispatchEvent({ event: 'skip', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); if (!button.href) { action(); } }; return /*#__PURE__*/_react.default.createElement(_button.default, { buttonSettings: button, className: className, type: "skip" }); } SkipButton.propTypes = { button: PropTypes.object.isRequired, className: PropTypes.string }; /***/ }), /***/ "../app/modules/onboarding/assets/js/context/context.js": /*!**************************************************************!*\ !*** ../app/modules/onboarding/assets/js/context/context.js ***! \**************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports.ContextProvider = ContextProvider; exports.OnboardingContext = void 0; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } var OnboardingContext = (0, _react.createContext)({}); exports.OnboardingContext = OnboardingContext; function ContextProvider(props) { var onboardingConfig = elementorAppConfig.onboarding, initialState = { // eslint-disable-next-line camelcase hasPro: elementorAppConfig.hasPro, isLibraryConnected: onboardingConfig.isLibraryConnected, isHelloThemeInstalled: onboardingConfig.helloInstalled, isHelloThemeActivated: onboardingConfig.helloActivated, siteName: onboardingConfig.siteName, siteLogo: onboardingConfig.siteLogo, proNotice: '', currentStep: '', nextStep: '', steps: { account: false, hello: false, siteName: false, siteLogo: false, goodToGo: false } }, _useState = (0, _react.useState)(initialState), _useState2 = (0, _slicedToArray2.default)(_useState, 2), state = _useState2[0], setState = _useState2[1], updateState = (0, _react.useCallback)(function (newState) { setState(function (prev) { return _objectSpread(_objectSpread({}, prev), newState); }); }, [setState]), getStateObjectToUpdate = function getStateObjectToUpdate(stateObject, mainChangedPropertyKey, subChangedPropertyKey, subChangedPropertyValue) { var mutatedStateCopy = JSON.parse(JSON.stringify(stateObject)); mutatedStateCopy[mainChangedPropertyKey][subChangedPropertyKey] = subChangedPropertyValue; return mutatedStateCopy; }; return /*#__PURE__*/_react.default.createElement(OnboardingContext.Provider, { value: { state: state, setState: setState, updateState: updateState, getStateObjectToUpdate: getStateObjectToUpdate } }, props.children); } ContextProvider.propTypes = { children: PropTypes.any }; /***/ }), /***/ "../app/modules/onboarding/assets/js/pages/account.js": /*!************************************************************!*\ !*** ../app/modules/onboarding/assets/js/pages/account.js ***! \************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Account; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _connect = _interopRequireDefault(__webpack_require__(/*! ../utils/connect */ "../app/modules/onboarding/assets/js/utils/connect.js")); var _layout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/layout */ "../app/modules/onboarding/assets/js/components/layout/layout.js")); var _pageContentLayout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/page-content-layout */ "../app/modules/onboarding/assets/js/components/layout/page-content-layout.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function Account() { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, getStateObjectToUpdate = _useContext.getStateObjectToUpdate, _useState = (0, _react.useState)(null), _useState2 = (0, _slicedToArray2.default)(_useState, 2), noticeState = _useState2[0], setNoticeState = _useState2[1], navigate = (0, _router.useNavigate)(), pageId = 'account', nextStep = state.isHelloThemeActivated ? 'siteName' : 'hello', actionButtonRef = (0, _react.useRef)(), alreadyHaveAccountLinkRef = (0, _react.useRef)(); var skipButton; if ('completed' !== state.steps[pageId]) { skipButton = { text: __('Skip', 'elementor') }; } var pageTexts = {}; if (state.isLibraryConnected) { pageTexts = { firstLine: __('To get the most out of Elementor, we\'ll help you take your first steps:', 'elementor'), listItems: [__('Set your site\'s theme', 'elementor'), __('Give your site a name & logo', 'elementor'), __('Choose how to start creating', 'elementor')] }; } else { pageTexts = { firstLine: __('To get the most out of Elementor, we’ll connect your account.', 'elementor') + ' ' + __('Then you can:', 'elementor'), listItems: [__('Choose from countless professional templates', 'elementor'), __('Manage your site with our handy dashboard', 'elementor'), __('Take part in the community forum, share & grow together', 'elementor')] }; } // If the user is not connected, the on-click action is handled by the <Connect> component, so there is no onclick // property. var actionButton = { role: 'button' }; if (state.isLibraryConnected) { actionButton.text = __('Let’s do it', 'elementor'); actionButton.onClick = function () { elementorCommon.events.dispatchEvent({ event: 'next', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); updateState(getStateObjectToUpdate(state, 'steps', pageId, 'completed')); navigate('onboarding/' + nextStep); }; } else { actionButton.text = __('Create my account', 'elementor'); actionButton.href = elementorAppConfig.onboarding.urls.signUp + elementorAppConfig.onboarding.utms.connectCta; actionButton.ref = actionButtonRef; actionButton.onClick = function () { elementorCommon.events.dispatchEvent({ event: 'create account', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, source: 'cta' } }); }; } var connectSuccessCallback = function connectSuccessCallback(data) { var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); stateToUpdate.isLibraryConnected = true; elementorCommon.config.library_connect.is_connected = true; elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0; updateState(stateToUpdate); elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'success', action: 'connect account' } }); setNoticeState({ type: 'success', icon: 'eicon-check-circle-o', message: 'Alrighty - your account is connected.' }); navigate('onboarding/' + nextStep); }; var connectFailureCallback = function connectFailureCallback() { elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: 'connect account' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: __('Oops, the connection failed. Try again.', 'elementor') }); navigate('onboarding/' + nextStep); }; return /*#__PURE__*/_react.default.createElement(_layout.default, { pageId: pageId, nextStep: nextStep }, /*#__PURE__*/_react.default.createElement(_pageContentLayout.default, { image: elementorCommon.config.urls.assets + 'images/app/onboarding/Illustration_Account.svg', title: __('You\'re here! Let\'s set things up.', 'elementor'), actionButton: actionButton, skipButton: skipButton, noticeState: noticeState }, actionButton.ref && !state.isLibraryConnected && /*#__PURE__*/_react.default.createElement(_connect.default, { buttonRef: actionButton.ref, successCallback: function successCallback(data) { return connectSuccessCallback(data); }, errorCallback: connectFailureCallback }), /*#__PURE__*/_react.default.createElement("span", null, pageTexts.firstLine), /*#__PURE__*/_react.default.createElement("ul", null, pageTexts.listItems.map(function (listItem, index) { return /*#__PURE__*/_react.default.createElement("li", { key: 'listItem' + index }, listItem); }))), !state.isLibraryConnected && /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__footnote" }, /*#__PURE__*/_react.default.createElement("p", null, __('Already have one?', 'elementor') + ' ', /*#__PURE__*/_react.default.createElement("a", { ref: alreadyHaveAccountLinkRef, href: elementorAppConfig.onboarding.urls.connect + elementorAppConfig.onboarding.utms.connectCtaLink, onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'connect account', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement } }); } }, __('Connect your account', 'elementor'))), /*#__PURE__*/_react.default.createElement(_connect.default, { buttonRef: alreadyHaveAccountLinkRef, successCallback: connectSuccessCallback, errorCallback: connectFailureCallback }))); } /***/ }), /***/ "../app/modules/onboarding/assets/js/pages/good-to-go.js": /*!***************************************************************!*\ !*** ../app/modules/onboarding/assets/js/pages/good-to-go.js ***! \***************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = GoodToGo; var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../app/assets/js/ui/grid/grid.js")); var _layout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/layout */ "../app/modules/onboarding/assets/js/components/layout/layout.js")); var _card = _interopRequireDefault(__webpack_require__(/*! ../components/card */ "../app/modules/onboarding/assets/js/components/card.js")); var _footerButtons = _interopRequireDefault(__webpack_require__(/*! ../components/layout/footer-buttons */ "../app/modules/onboarding/assets/js/components/layout/footer-buttons.js")); function GoodToGo() { var pageId = 'goodToGo', skipButton = { text: __('Skip', 'elementor'), href: elementorAppConfig.onboarding.urls.createNewPage }, kitLibraryLink = elementorAppConfig.onboarding.urls.kitLibrary + '&referrer=onboarding'; return /*#__PURE__*/_react.default.createElement(_layout.default, { pageId: pageId }, /*#__PURE__*/_react.default.createElement("h1", { className: "e-onboarding__page-content-section-title" }, __('That\'s a wrap! What\'s next?', 'elementor')), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__page-content-section-text" }, __('There are two ways to get started with Elementor:', 'elementor')), /*#__PURE__*/_react.default.createElement(_grid.default, { container: true, alignItems: "center", justify: "space-between", className: "e-onboarding__cards-grid e-onboarding__page-content" }, /*#__PURE__*/_react.default.createElement(_card.default, { name: "blank", image: elementorCommon.config.urls.assets + 'images/app/onboarding/Blank_Canvas.svg', imageAlt: __('Click here to create a new page and open it in Elementor Editor', 'elementor'), text: __('Edit a blank canvas with the Elementor Editor', 'elementor'), link: elementorAppConfig.onboarding.urls.createNewPage }), /*#__PURE__*/_react.default.createElement(_card.default, { name: "template", image: elementorCommon.config.urls.assets + 'images/app/onboarding/Library.svg', imageAlt: __('Click here to go to Elementor\'s Kit Library', 'elementor'), text: __('Browse from +100 templates or import your own', 'elementor'), link: kitLibraryLink, clickAction: function clickAction() { // The location is reloaded to make sure the Kit Library's state is re-created. location.href = kitLibraryLink; location.reload(); } })), /*#__PURE__*/_react.default.createElement(_footerButtons.default, { skipButton: skipButton, className: "e-onboarding__good-to-go-footer" })); } /***/ }), /***/ "../app/modules/onboarding/assets/js/pages/hello-theme.js": /*!****************************************************************!*\ !*** ../app/modules/onboarding/assets/js/pages/hello-theme.js ***! \****************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = HelloTheme; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../app/assets/js/hooks/use-ajax.js")); var _layout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/layout */ "../app/modules/onboarding/assets/js/components/layout/layout.js")); var _pageContentLayout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/page-content-layout */ "../app/modules/onboarding/assets/js/components/layout/page-content-layout.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } /* eslint-disable @wordpress/i18n-ellipsis */ function HelloTheme() { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, getStateObjectToUpdate = _useContext.getStateObjectToUpdate, _useAjax = (0, _useAjax2.default)(), activateHelloThemeAjaxState = _useAjax.ajaxState, setActivateHelloThemeAjaxState = _useAjax.setAjax, _useState = (0, _react.useState)(false), _useState2 = (0, _slicedToArray2.default)(_useState, 2), helloInstalledInOnboarding = _useState2[0], setHelloInstalledInOnboarding = _useState2[1], _useState3 = (0, _react.useState)(false), _useState4 = (0, _slicedToArray2.default)(_useState3, 2), isInstalling = _useState4[0], setIsInstalling = _useState4[1], noticeStateSuccess = { type: 'success', icon: 'eicon-check-circle-o', message: __('Your site’s got Hello theme. High-five!', 'elementor') }, _useState5 = (0, _react.useState)(state.isHelloThemeActivated ? noticeStateSuccess : null), _useState6 = (0, _slicedToArray2.default)(_useState5, 2), noticeState = _useState6[0], setNoticeState = _useState6[1], _useState7 = (0, _react.useState)([]), _useState8 = (0, _slicedToArray2.default)(_useState7, 2), activeTimeouts = _useState8[0], setActiveTimeouts = _useState8[1], continueWithHelloThemeText = state.isHelloThemeActivated ? __('Next', 'elementor') : __('Continue with Hello Theme', 'elementor'), _useState9 = (0, _react.useState)(continueWithHelloThemeText), _useState10 = (0, _slicedToArray2.default)(_useState9, 2), actionButtonText = _useState10[0], setActionButtonText = _useState10[1], navigate = (0, _router.useNavigate)(), pageId = 'hello', nextStep = 'siteName', goToNextScreen = function goToNextScreen() { return navigate('onboarding/' + nextStep); }; /** * Setup * * If Hello Theme is already activated when onboarding starts, This screen is unneeded and is marked as 'completed' * and skipped. */ (0, _react.useEffect)(function () { if (!helloInstalledInOnboarding && state.isHelloThemeActivated) { var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); updateState(stateToUpdate); goToNextScreen(); } }, []); var resetScreenContent = function resetScreenContent() { // Clear any active timeouts for changing the action button text during installation. activeTimeouts.forEach(function (timeoutID) { return clearTimeout(timeoutID); }); setActiveTimeouts([]); setIsInstalling(false); setActionButtonText(continueWithHelloThemeText); }; /** * Callbacks */ var onHelloThemeActivationSuccess = (0, _react.useCallback)(function () { setIsInstalling(false); elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'success', action: 'hello theme activation' } }); setNoticeState(noticeStateSuccess); setActionButtonText(__('Next', 'elementor')); var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); stateToUpdate.isHelloThemeActivated = true; updateState(stateToUpdate); setHelloInstalledInOnboarding(true); goToNextScreen(); }, []); var onErrorInstallHelloTheme = function onErrorInstallHelloTheme() { elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: 'hello theme install' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: __('There was a problem installing Hello Theme.', 'elementor') }); resetScreenContent(); }; var activateHelloTheme = function activateHelloTheme() { setIsInstalling(true); updateState({ isHelloThemeInstalled: true }); setActivateHelloThemeAjaxState({ data: { action: 'elementor_activate_hello_theme' } }); }; var installHelloTheme = function installHelloTheme() { if (!isInstalling) { setIsInstalling(true); } wp.updates.ajax('install-theme', { slug: 'hello-elementor', success: function success() { return activateHelloTheme(); }, error: function error() { return onErrorInstallHelloTheme(); } }); }; var sendNextButtonEvent = function sendNextButtonEvent() { elementorCommon.events.dispatchEvent({ event: 'next', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); }; /** * Action Button */ var actionButton = { text: actionButtonText, role: 'button' }; if (isInstalling) { actionButton.className = 'e-onboarding__button--processing'; } if (state.isHelloThemeActivated) { actionButton.onClick = function () { sendNextButtonEvent(); goToNextScreen(); }; } else { actionButton.onClick = function () { sendNextButtonEvent(); if (state.isHelloThemeInstalled && !state.isHelloThemeActivated) { activateHelloTheme(); } else if (!state.isHelloThemeInstalled) { installHelloTheme(); } else { goToNextScreen(); } }; } /** * Skip Button */ var skipButton; if ('completed' !== state.steps[pageId]) { skipButton = { text: __('Skip', 'elementor') }; } /** * Set timeouts for updating the 'Next' button text if the Hello Theme installation is taking too long. */ (0, _react.useEffect)(function () { if (isInstalling) { setActionButtonText( /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("i", { className: "eicon-loading eicon-animation-spin", "aria-hidden": "true" }))); } var actionTextTimeouts = []; var timeout4 = setTimeout(function () { if (!isInstalling) { return; } setActionButtonText( /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("i", { className: "eicon-loading eicon-animation-spin", "aria-hidden": "true" }), /*#__PURE__*/_react.default.createElement("span", { className: "e-onboarding__action-button-text" }, __('Hold on, this can take a minute...', 'elementor')))); }, 4000); actionTextTimeouts.push(timeout4); var timeout30 = setTimeout(function () { if (!isInstalling) { return; } setActionButtonText( /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("i", { className: "eicon-loading eicon-animation-spin", "aria-hidden": "true" }), /*#__PURE__*/_react.default.createElement("span", { className: "e-onboarding__action-button-text" }, __('Okay, now we\'re really close...', 'elementor')))); }, 30000); actionTextTimeouts.push(timeout30); setActiveTimeouts(actionTextTimeouts); }, [isInstalling]); (0, _react.useEffect)(function () { if ('initial' !== activateHelloThemeAjaxState.status) { var _activateHelloThemeAj; if ('success' === activateHelloThemeAjaxState.status && (_activateHelloThemeAj = activateHelloThemeAjaxState.response) !== null && _activateHelloThemeAj !== void 0 && _activateHelloThemeAj.helloThemeActivated) { onHelloThemeActivationSuccess(); } else if ('error' === activateHelloThemeAjaxState.status) { elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: 'hello theme activation' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: __('There was a problem activating Hello Theme.', 'elementor') }); // Clear any active timeouts for changing the action button text during installation. resetScreenContent(); } } }, [activateHelloThemeAjaxState.status]); return /*#__PURE__*/_react.default.createElement(_layout.default, { pageId: pageId, nextStep: nextStep }, /*#__PURE__*/_react.default.createElement(_pageContentLayout.default, { image: elementorCommon.config.urls.assets + 'images/app/onboarding/Illustration_Hello.svg', title: __('Every site starts with a theme.', 'elementor'), actionButton: actionButton, skipButton: skipButton, noticeState: noticeState }, /*#__PURE__*/_react.default.createElement("p", null, __('Hello is Elementor\'s official blank canvas theme optimized to build your website exactly the way you want.', 'elementor')), /*#__PURE__*/_react.default.createElement("p", null, __('Here\'s why:', 'elementor')), /*#__PURE__*/_react.default.createElement("ul", { className: "e-onboarding__feature-list" }, /*#__PURE__*/_react.default.createElement("li", null, __('Light-weight and fast loading', 'elementor')), /*#__PURE__*/_react.default.createElement("li", null, __('Great for SEO', 'elementor')), /*#__PURE__*/_react.default.createElement("li", null, __('Already being used by 1M+ web creators', 'elementor')))), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__footnote" }, '* ' + __('You can switch your theme later on', 'elementor'))); } /***/ }), /***/ "../app/modules/onboarding/assets/js/pages/site-logo.js": /*!**************************************************************!*\ !*** ../app/modules/onboarding/assets/js/pages/site-logo.js ***! \**************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = SiteLogo; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _useAjax3 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../app/assets/js/hooks/use-ajax.js")); var _dropZone = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/drop-zone */ "../app/assets/js/organisms/drop-zone.js")); var _unfilteredFilesDialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/unfiltered-files-dialog */ "../app/assets/js/organisms/unfiltered-files-dialog.js")); var _layout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/layout */ "../app/modules/onboarding/assets/js/components/layout/layout.js")); var _pageContentLayout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/page-content-layout */ "../app/modules/onboarding/assets/js/components/layout/page-content-layout.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } /* eslint-disable jsx-a11y/no-static-element-interactions */ /* eslint-disable jsx-a11y/click-events-have-key-events */ function SiteLogo() { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, getStateObjectToUpdate = _useContext.getStateObjectToUpdate, _useState = (0, _react.useState)(state.siteLogo.id ? state.siteLogo : null), _useState2 = (0, _slicedToArray2.default)(_useState, 2), file = _useState2[0], setFile = _useState2[1], _useState3 = (0, _react.useState)(false), _useState4 = (0, _slicedToArray2.default)(_useState3, 2), isUploading = _useState4[0], setIsUploading = _useState4[1], _useState5 = (0, _react.useState)(false), _useState6 = (0, _slicedToArray2.default)(_useState5, 2), showUnfilteredFilesDialog = _useState6[0], setShowUnfilteredFilesDialog = _useState6[1], _useState7 = (0, _react.useState)(), _useState8 = (0, _slicedToArray2.default)(_useState7, 2), fileSource = _useState8[0], setFileSource = _useState8[1], _useState9 = (0, _react.useState)(null), _useState10 = (0, _slicedToArray2.default)(_useState9, 2), noticeState = _useState10[0], setNoticeState = _useState10[1], _useAjax = (0, _useAjax3.default)(), updateLogoAjaxState = _useAjax.ajaxState, setUpdateLogoAjax = _useAjax.setAjax, _useAjax2 = (0, _useAjax3.default)(), uploadImageAjaxState = _useAjax2.ajaxState, setUploadImageAjax = _useAjax2.setAjax, pageId = 'siteLogo', nextStep = 'goodToGo', navigate = (0, _router.useNavigate)(), actionButton = { role: 'button', onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'next', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); if (file.id) { if (file.id !== state.siteLogo.id) { updateSiteLogo(); } else { // If the currently displayed logo is already set as the site logo, just go to the next screen. var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); updateState(stateToUpdate); navigate('onboarding/' + nextStep); } } } }; var skipButton; if ('completed' !== state.steps[pageId]) { skipButton = { text: __('Skip', 'elementor') }; } if (isUploading) { actionButton.text = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("i", { className: "eicon-loading eicon-animation-spin", "aria-hidden": "true" })); } else { actionButton.text = __('Next', 'elementor'); } if (!file) { actionButton.className = 'e-onboarding__button--disabled'; } var updateSiteLogo = (0, _react.useCallback)(function () { setIsUploading(true); setUpdateLogoAjax({ data: { action: 'elementor_update_site_logo', data: JSON.stringify({ attachmentId: file.id }) } }); }, [file]); var uploadSiteLogo = function uploadSiteLogo(fileToUpload) { setIsUploading(true); setUploadImageAjax({ data: { action: 'elementor_upload_site_logo', fileToUpload: fileToUpload } }); }; var dismissUnfilteredFilesCallback = function dismissUnfilteredFilesCallback() { setIsUploading(false); setFile(null); setShowUnfilteredFilesDialog(false); }; var _onFileSelect = function onFileSelect(selectedFile) { setFileSource('drop'); if ('image/svg+xml' === selectedFile.type && !elementorAppConfig.onboarding.isUnfilteredFilesEnabled) { setFile(selectedFile); setIsUploading(true); setShowUnfilteredFilesDialog(true); } else { setFile(selectedFile); setNoticeState(null); uploadSiteLogo(selectedFile); } }; var onImageRemoveClick = function onImageRemoveClick() { elementorCommon.events.dispatchEvent({ event: 'remove selected logo', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement } }); setFile(null); }; /** * Ajax Callbacks */ // Run the callback for the new image upload AJAX request. (0, _react.useEffect)(function () { if ('initial' !== uploadImageAjaxState.status) { var _uploadImageAjaxState, _uploadImageAjaxState2; if ('success' === uploadImageAjaxState.status && (_uploadImageAjaxState = uploadImageAjaxState.response) !== null && _uploadImageAjaxState !== void 0 && (_uploadImageAjaxState2 = _uploadImageAjaxState.imageAttachment) !== null && _uploadImageAjaxState2 !== void 0 && _uploadImageAjaxState2.id) { elementorCommon.events.dispatchEvent({ event: 'logo image uploaded', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, source: fileSource } }); setIsUploading(false); setFile(uploadImageAjaxState.response.imageAttachment); if (noticeState) { setNoticeState(null); } } else if ('error' === uploadImageAjaxState.status) { setIsUploading(false); setFile(null); elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, action_state: 'failure', action: 'logo image upload' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: 'That didn\'t work. Try uploading your file again.' }); } } }, [uploadImageAjaxState.status]); // Run the callback for the site logo update AJAX request. (0, _react.useEffect)(function () { if ('initial' !== updateLogoAjaxState.status) { var _updateLogoAjaxState$; if ('success' === updateLogoAjaxState.status && (_updateLogoAjaxState$ = updateLogoAjaxState.response) !== null && _updateLogoAjaxState$ !== void 0 && _updateLogoAjaxState$.siteLogoUpdated) { elementorCommon.events.dispatchEvent({ event: 'logo image updated', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, source: fileSource } }); setIsUploading(false); if (noticeState) { setNoticeState(null); } var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); stateToUpdate.siteLogo = { id: file.id, url: file.url }; updateState(stateToUpdate); navigate('onboarding/' + nextStep); } else if ('error' === updateLogoAjaxState.status) { setIsUploading(false); elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: 'update site logo' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: 'That didn\'t work. Try uploading your file again.' }); } } }, [updateLogoAjaxState.status]); return /*#__PURE__*/_react.default.createElement(_layout.default, { pageId: pageId, nextStep: nextStep }, /*#__PURE__*/_react.default.createElement(_pageContentLayout.default, { image: elementorCommon.config.urls.assets + 'images/app/onboarding/Illustration_Setup.svg', title: __('Have a logo? Add it here.', 'elementor'), actionButton: actionButton, skipButton: skipButton, noticeState: noticeState }, /*#__PURE__*/_react.default.createElement("span", null, __('Otherwise, you can skip this and add one later.', 'elementor')), file && !showUnfilteredFilesDialog ? /*#__PURE__*/_react.default.createElement("div", { className: 'e-onboarding__logo-container' + (isUploading ? ' e-onboarding__is-uploading' : '') }, /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__logo-remove", onClick: function onClick() { return onImageRemoveClick(); } }, /*#__PURE__*/_react.default.createElement("i", { className: "eicon-trash-o" })), /*#__PURE__*/_react.default.createElement("img", { src: file.url, alt: __('Potential Site Logo', 'elementor') })) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_dropZone.default, { className: "e-onboarding__drop-zone", heading: __('Drop image here', 'elementor'), secondaryText: __('or', 'elementor'), buttonText: __('Open Media Library', 'elementor'), buttonVariant: "outlined", buttonColor: "cta", icon: '', type: "wp-media", filetypes: ['jpg', 'jpeg', 'png', 'svg'], onFileSelect: function onFileSelect(selectedFile) { return _onFileSelect(selectedFile); }, onWpMediaSelect: function onWpMediaSelect(frame) { // Get media attachment details from the frame state var attachment = frame.state().get('selection').first().toJSON(); setFileSource('browse'); setFile(attachment); setNoticeState(null); }, onButtonClick: function onButtonClick() { elementorCommon.events.dispatchEvent({ event: 'browse file click', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); } // TODO: DEAL WITH ERROR , onError: function onError(error) { if ('file_not_allowed' === error.id) { elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: 'logo upload format' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: __('This file type is not supported. Try a different type of file', 'elementor') }); } } })), /*#__PURE__*/_react.default.createElement(_unfilteredFilesDialog.default, { show: showUnfilteredFilesDialog, setShow: setShowUnfilteredFilesDialog, confirmModalText: __('This allows Elementor to scan your SVGs for malicious content. If you do not wish to allow this, use a different image format.', 'elementor'), errorModalText: __('There was a problem with enabling SVG uploads. Try again, or use another image format.', 'elementor'), onReady: function onReady() { setShowUnfilteredFilesDialog(false); elementorAppConfig.onboarding.isUnfilteredFilesEnabled = true; uploadSiteLogo(file); }, onDismiss: function onDismiss() { return dismissUnfilteredFilesCallback(); }, onCancel: function onCancel() { return dismissUnfilteredFilesCallback(); } }))); } /***/ }), /***/ "../app/modules/onboarding/assets/js/pages/site-name.js": /*!**************************************************************!*\ !*** ../app/modules/onboarding/assets/js/pages/site-name.js ***! \**************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = SiteName; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js"); var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../app/assets/js/hooks/use-ajax.js")); var _layout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/layout */ "../app/modules/onboarding/assets/js/components/layout/layout.js")); var _pageContentLayout = _interopRequireDefault(__webpack_require__(/*! ../components/layout/page-content-layout */ "../app/modules/onboarding/assets/js/components/layout/page-content-layout.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function SiteName() { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, getStateObjectToUpdate = _useContext.getStateObjectToUpdate, _useAjax = (0, _useAjax2.default)(), ajaxState = _useAjax.ajaxState, setAjax = _useAjax.setAjax, _useState = (0, _react.useState)(null), _useState2 = (0, _slicedToArray2.default)(_useState, 2), noticeState = _useState2[0], setNoticeState = _useState2[1], _useState3 = (0, _react.useState)(state.siteName), _useState4 = (0, _slicedToArray2.default)(_useState3, 2), siteNameInputValue = _useState4[0], setSiteNameInputValue = _useState4[1], pageId = 'siteName', nextStep = 'siteLogo', navigate = (0, _router.useNavigate)(), nameInputRef = (0, _react.useRef)(), actionButton = { text: __('Next', 'elementor'), onClick: function onClick() { elementorCommon.events.dispatchEvent({ event: 'next', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); // Only run the site name update AJAX if the new name is different than the existing one and it isn't empty. if (nameInputRef.current.value !== state.siteName && '' !== nameInputRef.current.value) { setAjax({ data: { action: 'elementor_update_site_name', data: JSON.stringify({ siteName: nameInputRef.current.value }) } }); } else if (nameInputRef.current.value === state.siteName) { var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); updateState(stateToUpdate); navigate('onboarding/' + nextStep); } else { var _stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'skipped'); updateState(_stateToUpdate); navigate('onboarding/' + nextStep); } } }; var skipButton; if ('completed' !== state.steps[pageId]) { skipButton = { text: __('Skip', 'elementor') }; } if (!siteNameInputValue) { actionButton.className = 'e-onboarding__button--disabled'; } // Run the callback for the site name update AJAX request. (0, _react.useEffect)(function () { if ('initial' !== ajaxState.status) { var _ajaxState$response; if ('success' === ajaxState.status && (_ajaxState$response = ajaxState.response) !== null && _ajaxState$response !== void 0 && _ajaxState$response.siteNameUpdated) { var stateToUpdate = getStateObjectToUpdate(state, 'steps', pageId, 'completed'); stateToUpdate.siteName = nameInputRef.current.value; updateState(stateToUpdate); navigate('onboarding/' + nextStep); } else if ('error' === ajaxState.status) { elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: 'site name update' } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: __('Sorry, the name wasn\'t saved. Try again, or skip for now.', 'elementor') }); } } }, [ajaxState.status]); return /*#__PURE__*/_react.default.createElement(_layout.default, { pageId: pageId, nextStep: nextStep }, /*#__PURE__*/_react.default.createElement(_pageContentLayout.default, { image: elementorCommon.config.urls.assets + 'images/app/onboarding/Illustration_Setup.svg', title: __('Now, let\'s give your site a name.', 'elementor'), actionButton: actionButton, skipButton: skipButton, noticeState: noticeState }, /*#__PURE__*/_react.default.createElement("p", null, __('This is what your site is called on the WP dashboard, and can be changed later from the general settings - it\'s not your website\'s URL.', 'elementor')), /*#__PURE__*/_react.default.createElement("input", { className: "e-onboarding__text-input e-onboarding__site-name-input", type: "text", placeholder: "e.g. Eric's Space Shuttles", defaultValue: state.siteName || '', ref: nameInputRef, onChange: function onChange(event) { return setSiteNameInputValue(event.target.value); } }))); } /***/ }), /***/ "../app/modules/onboarding/assets/js/pages/upload-and-install-pro.js": /*!***************************************************************************!*\ !*** ../app/modules/onboarding/assets/js/pages/upload-and-install-pro.js ***! \***************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = UploadAndInstallPro; var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../app/assets/js/hooks/use-ajax.js")); var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../app/assets/js/hooks/use-page-title.js")); var _content = _interopRequireDefault(__webpack_require__(/*! ../../../../../assets/js/layout/content */ "../app/assets/js/layout/content.js")); var _dropZone = _interopRequireDefault(__webpack_require__(/*! ../../../../../assets/js/organisms/drop-zone */ "../app/assets/js/organisms/drop-zone.js")); var _notice = _interopRequireDefault(__webpack_require__(/*! ../components/notice */ "../app/modules/onboarding/assets/js/components/notice.js")); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); var _elementorLoading = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/elementor-loading */ "../app/assets/js/molecules/elementor-loading.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function UploadAndInstallPro() { (0, _usePageTitle.default)({ title: __('Upload and Install Elementor Pro', 'elementor') }); var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, _useAjax = (0, _useAjax2.default)(), installProZipAjaxState = _useAjax.ajaxState, setInstallProZipAjaxState = _useAjax.setAjax, _useState = (0, _react.useState)(null), _useState2 = (0, _slicedToArray2.default)(_useState, 2), noticeState = _useState2[0], setNoticeState = _useState2[1], _useState3 = (0, _react.useState)(false), _useState4 = (0, _slicedToArray2.default)(_useState3, 2), isLoading = _useState4[0], setIsLoading = _useState4[1], _useState5 = (0, _react.useState)(), _useState6 = (0, _slicedToArray2.default)(_useState5, 2), fileSource = _useState6[0], setFileSource = _useState6[1]; var uploadProZip = (0, _react.useCallback)(function (file) { setIsLoading(true); setInstallProZipAjaxState({ data: { action: 'elementor_upload_and_install_pro', fileToUpload: file } }); }, []); var setErrorNotice = function setErrorNotice() { var error = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var step = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'upload'; var errorMessage = (error === null || error === void 0 ? void 0 : error.message) || 'That didn\'t work. Try uploading your file again.'; elementorCommon.events.dispatchEvent({ event: 'indication prompt', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, action_state: 'failure', action: step + ' pro', source: fileSource } }); setNoticeState({ type: 'error', icon: 'eicon-warning', message: errorMessage }); }; /** * Ajax Callbacks */ // Run the callback that runs when the Pro Upload Ajax returns a response. (0, _react.useEffect)(function () { if ('initial' !== installProZipAjaxState.status) { var _installProZipAjaxSta; setIsLoading(false); if ('success' === installProZipAjaxState.status && (_installProZipAjaxSta = installProZipAjaxState.response) !== null && _installProZipAjaxSta !== void 0 && _installProZipAjaxSta.elementorProInstalled) { elementorCommon.events.dispatchEvent({ event: 'pro uploaded', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep, source: fileSource } }); if (opener && opener !== window) { opener.jQuery('body').trigger('elementor/upload-and-install-pro/success'); window.close(); opener.focus(); } } else if ('error' === installProZipAjaxState.status) { setErrorNotice('install'); } } }, [installProZipAjaxState.status]); var onProUploadHelpLinkClick = function onProUploadHelpLinkClick() { elementorCommon.events.dispatchEvent({ event: 'pro plugin upload help', version: '', details: { placement: elementorAppConfig.onboarding.eventPlacement, step: state.currentStep } }); }; if (isLoading) { return /*#__PURE__*/_react.default.createElement(_elementorLoading.default, { loadingText: __('Uploading', 'elementor') }); } return /*#__PURE__*/_react.default.createElement("div", { className: "eps-app e-onboarding__upload-pro" }, /*#__PURE__*/_react.default.createElement(_content.default, null, /*#__PURE__*/_react.default.createElement(_dropZone.default, { className: "e-onboarding__upload-pro-drop-zone", onFileSelect: function onFileSelect(file, event, source) { setFileSource(source); uploadProZip(file); }, onError: function onError(error) { return setErrorNotice(error, 'upload'); }, filetypes: ['zip'], buttonColor: "cta", buttonVariant: "contained", heading: __('Import your Elementor Pro plugin file', 'elementor'), text: __('Drag & Drop your .zip file here', 'elementor'), secondaryText: __('or', 'elementor'), buttonText: __('Browse', 'elementor') }), noticeState && /*#__PURE__*/_react.default.createElement(_notice.default, { noticeState: noticeState }), /*#__PURE__*/_react.default.createElement("div", { className: "e-onboarding__upload-pro-get-file" }, __('Don\'t know where to get the file from?', 'elementor') + ' ', /*#__PURE__*/_react.default.createElement("a", { onClick: function onClick() { return onProUploadHelpLinkClick(); }, href: 'https://my.elementor.com/subscriptions/' + elementorAppConfig.onboarding.utms.downloadPro, target: "_blank" }, __('Click here', 'elementor'))))); } /***/ }), /***/ "../app/modules/onboarding/assets/js/utils/connect.js": /*!************************************************************!*\ !*** ../app/modules/onboarding/assets/js/utils/connect.js ***! \************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = Connect; var _react = __webpack_require__(/*! react */ "react"); var _context = __webpack_require__(/*! ../context/context */ "../app/modules/onboarding/assets/js/context/context.js"); function Connect(props) { var _useContext = (0, _react.useContext)(_context.OnboardingContext), state = _useContext.state, updateState = _useContext.updateState, getStateObjectToUpdate = _useContext.getStateObjectToUpdate; var connectSuccessCallback = function connectSuccessCallback(data) { var stateToUpdate = getStateObjectToUpdate(state, 'steps', 'account', 'completed'); elementorCommon.config.library_connect.is_connected = true; elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0; stateToUpdate.isLibraryConnected = true; updateState(stateToUpdate); }; (0, _react.useEffect)(function () { jQuery(props.buttonRef.current).elementorConnect({ success: function success(data) { return props.successCallback ? props.successCallback(data) : connectSuccessCallback(data); }, error: function error() { if (props.errorCallback) { props.errorCallback(); } }, popup: { width: 726, height: 534 } }); }, []); return null; } Connect.propTypes = { buttonRef: PropTypes.object.isRequired, successCallback: PropTypes.func, errorCallback: PropTypes.func }; /***/ }) }]); //# sourceMappingURL=onboarding.9ee547c8074641c253ee.bundle.js.map
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
packages
---
0755
1be27d786af272b43945.bundle.js
19636 bytes
0644
1bef795bdeaafc779b19.bundle.min.js
59816 bytes
0644
41242dd2abc7917a4e40.bundle.js
10792 bytes
0644
468f41fa91dee0f38b7d.bundle.js
52176 bytes
0644
62aed6374b1561fb5fd8.bundle.js
272188 bytes
0644
765551b6f9005a42004c.bundle.js
64597 bytes
0644
82916c9aba5712bca47c.bundle.js
12354 bytes
0644
acc61395c1134c30c981.bundle.min.js
3966 bytes
0644
accordion.8799675460c73eb48972.bundle.min.js
3743 bytes
0644
accordion.d0e98fa492444fcce9f9.bundle.js
7529 bytes
0644
adadcfdaada40ff3919c.bundle.min.js
23248 bytes
0644
admin-feedback.js
4640 bytes
0644
admin-feedback.min.js
1976 bytes
0644
admin-modules.js
18122 bytes
0644
admin-modules.min.js
6458 bytes
0644
admin-top-bar.js
65923 bytes
0644
admin-top-bar.min.js
10819 bytes
0644
admin.js
86522 bytes
0644
admin.min.js
39088 bytes
0644
alert.5c23f364fd0f1ece78ac.bundle.js
1140 bytes
0644
alert.cbc2a0fee74ee3ed0419.bundle.min.js
624 bytes
0644
announcements-app.js
97452 bytes
0644
announcements-app.min.js
25515 bytes
0644
announcements-app.min.js.LICENSE.txt
149 bytes
0644
app-loader.js
263851 bytes
0644
app-loader.min.js
91253 bytes
0644
app-packages.js
357043 bytes
0644
app-packages.min.js
122338 bytes
0644
app-packages.min.js.LICENSE.txt
149 bytes
0644
app.js
809054 bytes
0644
app.min.js
294309 bytes
0644
app.min.js.LICENSE.txt
637 bytes
0644
beta-tester.js
23185 bytes
0644
beta-tester.min.js
9448 bytes
0644
common-modules.js
299096 bytes
0644
common-modules.min.js
104444 bytes
0644
common.js
424851 bytes
0644
common.min.js
158788 bytes
0644
common.min.js.LICENSE.txt
149 bytes
0644
container-converter.js
55125 bytes
0644
container-converter.min.js
19228 bytes
0644
container.0fe1d3abe4a4fd76f033.bundle.min.js
2977 bytes
0644
container.ce4736775f29926cf0bb.bundle.js
5551 bytes
0644
counter.02cef29c589e742d4c8c.bundle.min.js
912 bytes
0644
counter.6e06639071a3da2a8059.bundle.js
1628 bytes
0644
dev-tools.js
24531 bytes
0644
dev-tools.min.js
7689 bytes
0644
df16c9d56464dd4f0800.bundle.min.js
13480 bytes
0644
editor-document.js
75168 bytes
0644
editor-document.min.js
27131 bytes
0644
editor-loader-v1.js
393 bytes
0644
editor-loader-v1.min.js
88 bytes
0644
editor-loader-v2.js
963 bytes
0644
editor-loader-v2.min.js
512 bytes
0644
editor-modules.js
105023 bytes
0644
editor-modules.min.js
42690 bytes
0644
editor.js
2625168 bytes
0644
editor.min.js
1085545 bytes
0644
editor.min.js.LICENSE.txt
149 bytes
0644
elementor-admin-bar.js
19798 bytes
0644
elementor-admin-bar.min.js
7536 bytes
0644
f44354f947a948ef36c9.bundle.min.js
4251 bytes
0644
frontend-modules.js
147851 bytes
0644
frontend-modules.min.js
42288 bytes
0644
frontend.js
103111 bytes
0644
frontend.min.js
40591 bytes
0644
gutenberg.js
6089 bytes
0644
gutenberg.min.js
2974 bytes
0644
image-carousel.624de4dfcf054f3ddaa7.bundle.min.js
3388 bytes
0644
image-carousel.a3907df0152c390cff84.bundle.js
6905 bytes
0644
import-export-admin.js
15537 bytes
0644
import-export-admin.min.js
6328 bytes
0644
kit-elements-defaults-editor.js
92561 bytes
0644
kit-elements-defaults-editor.min.js
36253 bytes
0644
kit-elements-defaults-editor.min.js.LICENSE.txt
149 bytes
0644
kit-library.1101176ec8af9d357159.bundle.js
232033 bytes
0644
kit-library.9b6fdf0970e61d76a49f.bundle.min.js
90403 bytes
0644
lightbox.10bc81bc33e5bd8f8073.bundle.min.js
30017 bytes
0644
lightbox.d1807324971bbc117b97.bundle.js
52361 bytes
0644
nested-elements.js
20986 bytes
0644
nested-elements.min.js
6379 bytes
0644
nested-tabs.js
29893 bytes
0644
nested-tabs.min.js
12625 bytes
0644
nested-tabs.min.js.LICENSE.txt
149 bytes
0644
new-template.js
15880 bytes
0644
new-template.min.js
6841 bytes
0644
notes.js
26295 bytes
0644
notes.min.js
9750 bytes
0644
onboarding.3e3dea382a15b3aaa603.bundle.min.js
52722 bytes
0644
onboarding.9ee547c8074641c253ee.bundle.js
120313 bytes
0644
preloaded-modules.js
84527 bytes
0644
preloaded-modules.min.js
44791 bytes
0644
progress.ca55d33bb06cee4e6f02.bundle.min.js
655 bytes
0644
progress.ddc47ad5120f8813e430.bundle.js
1239 bytes
0644
responsive-bar.js
26758 bytes
0644
responsive-bar.min.js
11998 bytes
0644
tabs.c2af5be7f9cb3cdcf3d5.bundle.min.js
3705 bytes
0644
tabs.dc22ac11bf840003dd7f.bundle.js
7456 bytes
0644
text-editor.2c35aafbe5bf0e127950.bundle.min.js
1360 bytes
0644
text-editor.904ef93cc88acb021fdd.bundle.js
2800 bytes
0644
text-path.b50b3e74488a4e302613.bundle.min.js
3255 bytes
0644
text-path.e17f48a91199337badc8.bundle.js
8100 bytes
0644
toggle.29e5a34bb6e51dab4600.bundle.js
7560 bytes
0644
toggle.31881477c45ff5cf9d4d.bundle.min.js
3770 bytes
0644
video.82d55b692da440a65954.bundle.js
7010 bytes
0644
video.d86bfd0676264945e968.bundle.min.js
3499 bytes
0644
web-cli.js
510382 bytes
0644
web-cli.min.js
177943 bytes
0644
web-cli.min.js.LICENSE.txt
149 bytes
0644
webpack.runtime.js
15384 bytes
0644
webpack.runtime.min.js
4958 bytes
0644
wp-audio.4368a4a260548f3c083a.bundle.js
781 bytes
0644
wp-audio.75f0ced143febb8cd31a.bundle.min.js
349 bytes
0644
N4ST4R_ID | Naxtarrr