| @@ -836,12 +836,9 @@ | ||
| 836 | 836 | gap: 1.5, |
| 837 | 837 | sx: function sx(theme) { |
| 838 | 838 | return { |
| 839 | 839 | position: 'sticky', |
| 840 | - top: 0, | |
| 841 | - '@media screen and (max-width: 782px)': { | |
| 842 | - top: 'calc(var(--e-admin-bar-height, 0px) + var(--e-top-bar-header-height, 0px))' | |
| 843 | - }, | |
| 840 | + top: theme.spacing(10), | |
| 844 | 841 | backgroundColor: 'var(--e-one-palette-background-default)', |
| 845 | 842 | zIndex: 10, |
| 846 | 843 | paddingBlock: 2, |
| 847 | 844 | paddingInline: 2, |
| @@ -1758,8 +1755,767 @@ | ||
| 1758 | 1755 | }; |
| 1759 | 1756 | |
| 1760 | 1757 | /***/ }), |
| 1761 | 1758 | |
| 1759 | +/***/ "../modules/element-manager/assets/js/app.js": | |
| 1760 | +/*!***************************************************!*\ | |
| 1761 | + !*** ../modules/element-manager/assets/js/app.js ***! | |
| 1762 | + \***************************************************/ | |
| 1763 | +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { | |
| 1764 | + | |
| 1765 | +"use strict"; | |
| 1766 | + | |
| 1767 | + | |
| 1768 | +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); | |
| 1769 | +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); | |
| 1770 | +Object.defineProperty(exports, "__esModule", ({ | |
| 1771 | + value: true | |
| 1772 | +})); | |
| 1773 | +exports.AppLegacy = void 0; | |
| 1774 | +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react")); | |
| 1775 | +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js")); | |
| 1776 | +var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js")); | |
| 1777 | +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); | |
| 1778 | +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js")); | |
| 1779 | +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); | |
| 1780 | +var _components = __webpack_require__(/*! @wordpress/components */ "@wordpress/components"); | |
| 1781 | +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"); | |
| 1782 | +var _upgradeButton = __webpack_require__(/*! ./upgrade-button */ "../modules/element-manager/assets/js/upgrade-button.js"); | |
| 1783 | +var _api = __webpack_require__(/*! ./api */ "../modules/element-manager/assets/js/api.js"); | |
| 1784 | +var _rolePermissions = __webpack_require__(/*! ./role-permissions */ "../modules/element-manager/assets/js/role-permissions.js"); | |
| 1785 | +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } | |
| 1786 | +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } | |
| 1787 | +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /* eslint-disable react/prop-types */ | |
| 1788 | +var AppLegacy = exports.AppLegacy = function AppLegacy() { | |
| 1789 | + var _useState = (0, _react.useState)(true), | |
| 1790 | + _useState2 = (0, _slicedToArray2.default)(_useState, 2), | |
| 1791 | + isLoading = _useState2[0], | |
| 1792 | + setIsLoading = _useState2[1]; | |
| 1793 | + var _useState3 = (0, _react.useState)(''), | |
| 1794 | + _useState4 = (0, _slicedToArray2.default)(_useState3, 2), | |
| 1795 | + searchKeyword = _useState4[0], | |
| 1796 | + setSearchKeyword = _useState4[1]; | |
| 1797 | + var _useState5 = (0, _react.useState)([]), | |
| 1798 | + _useState6 = (0, _slicedToArray2.default)(_useState5, 2), | |
| 1799 | + widgets = _useState6[0], | |
| 1800 | + setWidgets = _useState6[1]; | |
| 1801 | + var _useState7 = (0, _react.useState)([]), | |
| 1802 | + _useState8 = (0, _slicedToArray2.default)(_useState7, 2), | |
| 1803 | + promotionWidgets = _useState8[0], | |
| 1804 | + setPromotionWidgets = _useState8[1]; | |
| 1805 | + var _useState9 = (0, _react.useState)([]), | |
| 1806 | + _useState0 = (0, _slicedToArray2.default)(_useState9, 2), | |
| 1807 | + plugins = _useState0[0], | |
| 1808 | + setPlugins = _useState0[1]; | |
| 1809 | + var _useState1 = (0, _react.useState)([]), | |
| 1810 | + _useState10 = (0, _slicedToArray2.default)(_useState1, 2), | |
| 1811 | + roles = _useState10[0], | |
| 1812 | + setRoles = _useState10[1]; | |
| 1813 | + var _useState11 = (0, _react.useState)({ | |
| 1814 | + isLoading: false, | |
| 1815 | + data: null | |
| 1816 | + }), | |
| 1817 | + _useState12 = (0, _slicedToArray2.default)(_useState11, 2), | |
| 1818 | + usageWidgets = _useState12[0], | |
| 1819 | + setUsageWidgets = _useState12[1]; | |
| 1820 | + var _useState13 = (0, _react.useState)([]), | |
| 1821 | + _useState14 = (0, _slicedToArray2.default)(_useState13, 2), | |
| 1822 | + widgetsDisabled = _useState14[0], | |
| 1823 | + setWidgetsDisabled = _useState14[1]; | |
| 1824 | + var _useState15 = (0, _react.useState)('widget'), | |
| 1825 | + _useState16 = (0, _slicedToArray2.default)(_useState15, 2), | |
| 1826 | + sortingColumn = _useState16[0], | |
| 1827 | + setSortingColumn = _useState16[1]; | |
| 1828 | + var _useState17 = (0, _react.useState)('asc'), | |
| 1829 | + _useState18 = (0, _slicedToArray2.default)(_useState17, 2), | |
| 1830 | + sortingDirection = _useState18[0], | |
| 1831 | + setSortingDirection = _useState18[1]; | |
| 1832 | + var _useState19 = (0, _react.useState)(''), | |
| 1833 | + _useState20 = (0, _slicedToArray2.default)(_useState19, 2), | |
| 1834 | + filterByPlugin = _useState20[0], | |
| 1835 | + setFilterByPlugin = _useState20[1]; | |
| 1836 | + var _useState21 = (0, _react.useState)('all'), | |
| 1837 | + _useState22 = (0, _slicedToArray2.default)(_useState21, 2), | |
| 1838 | + filterByStatus = _useState22[0], | |
| 1839 | + setFilterByStatus = _useState22[1]; | |
| 1840 | + var _useState23 = (0, _react.useState)({ | |
| 1841 | + isSaving: false, | |
| 1842 | + isUnsavedChanges: false | |
| 1843 | + }), | |
| 1844 | + _useState24 = (0, _slicedToArray2.default)(_useState23, 2), | |
| 1845 | + changeProgress = _useState24[0], | |
| 1846 | + setChangeProgress = _useState24[1]; | |
| 1847 | + var _useState25 = (0, _react.useState)(false), | |
| 1848 | + _useState26 = (0, _slicedToArray2.default)(_useState25, 2), | |
| 1849 | + isConfirmDialogOpen = _useState26[0], | |
| 1850 | + setIsConfirmDialogOpen = _useState26[1]; | |
| 1851 | + var _useState27 = (0, _react.useState)(false), | |
| 1852 | + _useState28 = (0, _slicedToArray2.default)(_useState27, 2), | |
| 1853 | + isSnackbarOpen = _useState28[0], | |
| 1854 | + setIsSnackbarOpen = _useState28[1]; | |
| 1855 | + var _useState29 = (0, _react.useState)(null), | |
| 1856 | + _useState30 = (0, _slicedToArray2.default)(_useState29, 2), | |
| 1857 | + noticeData = _useState30[0], | |
| 1858 | + setNoticeData = _useState30[1]; | |
| 1859 | + var _useState31 = (0, _react.useState)(null), | |
| 1860 | + _useState32 = (0, _slicedToArray2.default)(_useState31, 2), | |
| 1861 | + widgetsRoleRestrictions = _useState32[0], | |
| 1862 | + setWidgetsRoleRestrictions = _useState32[1]; | |
| 1863 | + var _useState33 = (0, _react.useState)([]), | |
| 1864 | + _useState34 = (0, _slicedToArray2.default)(_useState33, 2), | |
| 1865 | + promotionData = _useState34[0], | |
| 1866 | + setPromotionData = _useState34[1]; | |
| 1867 | + var managerPermissions = promotionData.manager_permissions, | |
| 1868 | + elementManager = promotionData.element_manager; | |
| 1869 | + var getWidgetUsage = function getWidgetUsage(widgetName) { | |
| 1870 | + if (!usageWidgets.data || !usageWidgets.data.hasOwnProperty(widgetName)) { | |
| 1871 | + return 0; | |
| 1872 | + } | |
| 1873 | + return usageWidgets.data[widgetName]; | |
| 1874 | + }; | |
| 1875 | + var sortedAndFilteredWidgets = (0, _react.useMemo)(function () { | |
| 1876 | + var filteredWidgets = widgets.filter(function (widget) { | |
| 1877 | + return widget.title.toLowerCase().includes(searchKeyword.toLowerCase()); | |
| 1878 | + }); | |
| 1879 | + if ('' !== filterByPlugin) { | |
| 1880 | + filteredWidgets = filteredWidgets.filter(function (widget) { | |
| 1881 | + return widget.plugin.toLowerCase() === filterByPlugin.toLowerCase(); | |
| 1882 | + }); | |
| 1883 | + } | |
| 1884 | + if ('all' !== filterByStatus) { | |
| 1885 | + filteredWidgets = filteredWidgets.filter(function (widget) { | |
| 1886 | + if ('active' === filterByStatus) { | |
| 1887 | + return !widgetsDisabled.includes(widget.name); | |
| 1888 | + } | |
| 1889 | + return widgetsDisabled.includes(widget.name); | |
| 1890 | + }); | |
| 1891 | + } | |
| 1892 | + filteredWidgets.sort(function (a, b) { | |
| 1893 | + var aValue; | |
| 1894 | + var bValue; | |
| 1895 | + if ('widget' === sortingColumn) { | |
| 1896 | + aValue = a.title; | |
| 1897 | + bValue = b.title; | |
| 1898 | + } | |
| 1899 | + if ('usage' === sortingColumn) { | |
| 1900 | + aValue = getWidgetUsage(a.name); | |
| 1901 | + bValue = getWidgetUsage(b.name); | |
| 1902 | + } | |
| 1903 | + if (aValue === bValue) { | |
| 1904 | + return 0; | |
| 1905 | + } | |
| 1906 | + if ('asc' === sortingDirection) { | |
| 1907 | + return aValue < bValue ? -1 : 1; | |
| 1908 | + } | |
| 1909 | + return aValue > bValue ? -1 : 1; | |
| 1910 | + }); | |
| 1911 | + return filteredWidgets; | |
| 1912 | + }, [widgets, searchKeyword, sortingColumn, sortingDirection, filterByPlugin, usageWidgets, filterByStatus, widgetsDisabled]); | |
| 1913 | + var getSortingIndicatorClasses = function getSortingIndicatorClasses(column) { | |
| 1914 | + if (sortingColumn !== column) { | |
| 1915 | + return ''; | |
| 1916 | + } | |
| 1917 | + if ('asc' === sortingDirection) { | |
| 1918 | + return 'sorted asc'; | |
| 1919 | + } | |
| 1920 | + return 'sorted desc'; | |
| 1921 | + }; | |
| 1922 | + var onSortingClicked = function onSortingClicked(column) { | |
| 1923 | + if (sortingColumn === column) { | |
| 1924 | + if ('asc' === sortingDirection) { | |
| 1925 | + setSortingDirection('desc'); | |
| 1926 | + } else { | |
| 1927 | + setSortingDirection('asc'); | |
| 1928 | + } | |
| 1929 | + } else { | |
| 1930 | + setSortingColumn(column); | |
| 1931 | + setSortingDirection('asc'); | |
| 1932 | + } | |
| 1933 | + }; | |
| 1934 | + var onSaveClicked = /*#__PURE__*/function () { | |
| 1935 | + var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() { | |
| 1936 | + return _regenerator.default.wrap(function (_context) { | |
| 1937 | + while (1) switch (_context.prev = _context.next) { | |
| 1938 | + case 0: | |
| 1939 | + setIsConfirmDialogOpen(false); | |
| 1940 | + setChangeProgress(_objectSpread(_objectSpread({}, changeProgress), {}, { | |
| 1941 | + isSaving: true | |
| 1942 | + })); | |
| 1943 | + _context.next = 1; | |
| 1944 | + return (0, _api.saveDisabledWidgets)(widgetsDisabled, widgetsRoleRestrictions); | |
| 1945 | + case 1: | |
| 1946 | + setChangeProgress(_objectSpread(_objectSpread({}, changeProgress), {}, { | |
| 1947 | + isSaving: false, | |
| 1948 | + isUnsavedChanges: false | |
| 1949 | + })); | |
| 1950 | + setIsSnackbarOpen(true); | |
| 1951 | + case 2: | |
| 1952 | + case "end": | |
| 1953 | + return _context.stop(); | |
| 1954 | + } | |
| 1955 | + }, _callee); | |
| 1956 | + })); | |
| 1957 | + return function onSaveClicked() { | |
| 1958 | + return _ref.apply(this, arguments); | |
| 1959 | + }; | |
| 1960 | + }(); | |
| 1961 | + var deactivateAllUnusedWidgets = function deactivateAllUnusedWidgets() { | |
| 1962 | + var widgetsToDeactivate = widgets.filter(function (widget) { | |
| 1963 | + return !usageWidgets.data.hasOwnProperty(widget.name) || widgetsDisabled.includes(widget.name); | |
| 1964 | + }); | |
| 1965 | + setWidgetsDisabled(widgetsToDeactivate.map(function (widget) { | |
| 1966 | + return widget.name; | |
| 1967 | + })); | |
| 1968 | + }; | |
| 1969 | + var enableAllWidgets = function enableAllWidgets() { | |
| 1970 | + setWidgetsDisabled([]); | |
| 1971 | + }; | |
| 1972 | + var onScanUsageElementsClicked = /*#__PURE__*/function () { | |
| 1973 | + var _ref2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() { | |
| 1974 | + var data; | |
| 1975 | + return _regenerator.default.wrap(function (_context2) { | |
| 1976 | + while (1) switch (_context2.prev = _context2.next) { | |
| 1977 | + case 0: | |
| 1978 | + setUsageWidgets(_objectSpread(_objectSpread({}, usageWidgets), {}, { | |
| 1979 | + isLoading: true | |
| 1980 | + })); | |
| 1981 | + _context2.next = 1; | |
| 1982 | + return (0, _api.getUsageWidgets)(); | |
| 1983 | + case 1: | |
| 1984 | + data = _context2.sent; | |
| 1985 | + setUsageWidgets({ | |
| 1986 | + data: data, | |
| 1987 | + isLoading: false | |
| 1988 | + }); | |
| 1989 | + setSortingColumn('usage'); | |
| 1990 | + setSortingDirection('desc'); | |
| 1991 | + case 2: | |
| 1992 | + case "end": | |
| 1993 | + return _context2.stop(); | |
| 1994 | + } | |
| 1995 | + }, _callee2); | |
| 1996 | + })); | |
| 1997 | + return function onScanUsageElementsClicked() { | |
| 1998 | + return _ref2.apply(this, arguments); | |
| 1999 | + }; | |
| 2000 | + }(); | |
| 2001 | + var UsageTimesColumn = function UsageTimesColumn(_ref3) { | |
| 2002 | + var widgetName = _ref3.widgetName; | |
| 2003 | + if (null !== usageWidgets.data) { | |
| 2004 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, getWidgetUsage(widgetName), " ", (0, _i18n.__)('times', 'elementor')); | |
| 2005 | + } | |
| 2006 | + if (usageWidgets.isLoading) { | |
| 2007 | + return /*#__PURE__*/_react.default.createElement(_components.Spinner, null); | |
| 2008 | + } | |
| 2009 | + return /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2010 | + onClick: onScanUsageElementsClicked, | |
| 2011 | + size: 'small', | |
| 2012 | + variant: 'secondary', | |
| 2013 | + className: "e-id-elementor-element-manager-button-show-usage" | |
| 2014 | + }, (0, _i18n.__)('Show', 'elementor')); | |
| 2015 | + }; | |
| 2016 | + (0, _react.useEffect)(function () { | |
| 2017 | + var onLoading = /*#__PURE__*/function () { | |
| 2018 | + var _ref4 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() { | |
| 2019 | + var _appData$additional_d, _appData$additional_d2; | |
| 2020 | + var appData, pluginsData; | |
| 2021 | + return _regenerator.default.wrap(function (_context3) { | |
| 2022 | + while (1) switch (_context3.prev = _context3.next) { | |
| 2023 | + case 0: | |
| 2024 | + _context3.next = 1; | |
| 2025 | + return (0, _api.getAdminAppData)(); | |
| 2026 | + case 1: | |
| 2027 | + appData = _context3.sent; | |
| 2028 | + setNoticeData(appData.notice_data); | |
| 2029 | + setWidgetsDisabled(appData.disabled_elements); | |
| 2030 | + setWidgets(appData.widgets); | |
| 2031 | + setPromotionWidgets(appData.promotion_widgets); | |
| 2032 | + setPromotionData(appData.promotion_data); | |
| 2033 | + if ((_appData$additional_d = appData.additional_data) !== null && _appData$additional_d !== void 0 && _appData$additional_d.roles) { | |
| 2034 | + setRoles(appData.additional_data.roles); | |
| 2035 | + } | |
| 2036 | + if ((_appData$additional_d2 = appData.additional_data) !== null && _appData$additional_d2 !== void 0 && _appData$additional_d2.role_restrictions) { | |
| 2037 | + setWidgetsRoleRestrictions(appData.additional_data.role_restrictions); | |
| 2038 | + } | |
| 2039 | + pluginsData = appData.plugins.map(function (plugin) { | |
| 2040 | + return { | |
| 2041 | + label: plugin, | |
| 2042 | + value: plugin | |
| 2043 | + }; | |
| 2044 | + }); | |
| 2045 | + pluginsData.unshift({ | |
| 2046 | + label: (0, _i18n.__)('All Plugins', 'elementor'), | |
| 2047 | + value: '' | |
| 2048 | + }); | |
| 2049 | + setPlugins(pluginsData); | |
| 2050 | + setIsLoading(false); | |
| 2051 | + case 2: | |
| 2052 | + case "end": | |
| 2053 | + return _context3.stop(); | |
| 2054 | + } | |
| 2055 | + }, _callee3); | |
| 2056 | + })); | |
| 2057 | + return function onLoading() { | |
| 2058 | + return _ref4.apply(this, arguments); | |
| 2059 | + }; | |
| 2060 | + }(); | |
| 2061 | + onLoading(); | |
| 2062 | + }, []); | |
| 2063 | + (0, _react.useEffect)(function () { | |
| 2064 | + if (isLoading) { | |
| 2065 | + return; | |
| 2066 | + } | |
| 2067 | + setChangeProgress(_objectSpread(_objectSpread({}, changeProgress), {}, { | |
| 2068 | + isUnsavedChanges: true | |
| 2069 | + })); | |
| 2070 | + }, [widgetsDisabled, widgetsRoleRestrictions]); | |
| 2071 | + (0, _react.useEffect)(function () { | |
| 2072 | + var handleBeforeUnload = function handleBeforeUnload(event) { | |
| 2073 | + event.preventDefault(); | |
| 2074 | + event.returnValue = ''; | |
| 2075 | + }; | |
| 2076 | + if (changeProgress.isUnsavedChanges) { | |
| 2077 | + window.addEventListener('beforeunload', handleBeforeUnload); | |
| 2078 | + } else { | |
| 2079 | + window.removeEventListener('beforeunload', handleBeforeUnload); | |
| 2080 | + } | |
| 2081 | + return function () { | |
| 2082 | + window.removeEventListener('beforeunload', handleBeforeUnload); | |
| 2083 | + }; | |
| 2084 | + }, [changeProgress.isUnsavedChanges]); | |
| 2085 | + if (isLoading) { | |
| 2086 | + return /*#__PURE__*/_react.default.createElement(_components.Flex, { | |
| 2087 | + justify: 'center', | |
| 2088 | + style: { | |
| 2089 | + margin: '100px' | |
| 2090 | + } | |
| 2091 | + }, /*#__PURE__*/_react.default.createElement(_components.Spinner, { | |
| 2092 | + style: { | |
| 2093 | + height: 'calc(4px * 20)', | |
| 2094 | + width: 'calc(4px * 20)' | |
| 2095 | + } | |
| 2096 | + })); | |
| 2097 | + } | |
| 2098 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("p", { | |
| 2099 | + style: { | |
| 2100 | + marginBottom: '20px', | |
| 2101 | + maxWidth: '800px' | |
| 2102 | + } | |
| 2103 | + }, (0, _i18n.__)('Here\'s where you can fine-tune Elementor to your workflow. Disable elements you don\'t use for a cleaner interface, more focused creative experience, and improved performance.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", { | |
| 2104 | + href: "https://go.elementor.com/wp-dash-element-manager/", | |
| 2105 | + rel: 'noreferrer', | |
| 2106 | + target: '_blank' | |
| 2107 | + }, (0, _i18n.__)('Learn More', 'elementor'))), !noticeData.is_viewed && /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement(_components.Notice, { | |
| 2108 | + onRemove: function onRemove() { | |
| 2109 | + (0, _api.markNoticeViewed)(noticeData.notice_id, noticeData.nonce); | |
| 2110 | + setNoticeData(_objectSpread(_objectSpread({}, noticeData), {}, { | |
| 2111 | + is_viewed: true | |
| 2112 | + })); | |
| 2113 | + }, | |
| 2114 | + status: "warning" | |
| 2115 | + }, /*#__PURE__*/_react.default.createElement("strong", null, (0, _i18n.__)('Before you continue:', 'elementor')), " ", (0, _i18n.__)('Deactivating widgets here will remove them from both the Elementor Editor and your website, which can cause changes to your overall layout, design and what visitors see.', 'elementor'))), /*#__PURE__*/_react.default.createElement(_components.Panel, null, /*#__PURE__*/_react.default.createElement(_components.PanelBody, null, /*#__PURE__*/_react.default.createElement(_components.Flex, { | |
| 2116 | + style: { | |
| 2117 | + position: 'sticky', | |
| 2118 | + top: '32px', | |
| 2119 | + background: 'rgb(255, 255, 255)', | |
| 2120 | + zIndex: 10, | |
| 2121 | + padding: '20px 16px', | |
| 2122 | + boxShadow: 'rgba(0, 0, 0, 0.15) 0 5px 10px 0', | |
| 2123 | + margin: '-16px -16px 24px' | |
| 2124 | + } | |
| 2125 | + }, /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, /*#__PURE__*/_react.default.createElement(_components.Flex, { | |
| 2126 | + align: 'center' | |
| 2127 | + }, /*#__PURE__*/_react.default.createElement(_components.SearchControl, { | |
| 2128 | + label: (0, _i18n.__)('Search widgets', 'elementor'), | |
| 2129 | + value: searchKeyword, | |
| 2130 | + size: 'compact', | |
| 2131 | + style: { | |
| 2132 | + height: '40px', | |
| 2133 | + border: '1px solid rgba(30, 30, 30, 0.5)', | |
| 2134 | + background: 'transparent' | |
| 2135 | + }, | |
| 2136 | + __nextHasNoMarginBottom: true, | |
| 2137 | + onChange: setSearchKeyword | |
| 2138 | + }), /*#__PURE__*/_react.default.createElement(_components.FlexItem, { | |
| 2139 | + style: { | |
| 2140 | + maxWidth: '130px' | |
| 2141 | + } | |
| 2142 | + }, /*#__PURE__*/_react.default.createElement(_components.SelectControl, { | |
| 2143 | + onChange: setFilterByPlugin, | |
| 2144 | + size: '__unstable-large', | |
| 2145 | + __nextHasNoMarginBottom: true, | |
| 2146 | + options: plugins, | |
| 2147 | + name: "elementor-element-manager-select-filter-by-plugin" | |
| 2148 | + })), /*#__PURE__*/_react.default.createElement(_components.FlexItem, { | |
| 2149 | + style: { | |
| 2150 | + maxWidth: '130px' | |
| 2151 | + } | |
| 2152 | + }, /*#__PURE__*/_react.default.createElement(_components.SelectControl, { | |
| 2153 | + onChange: setFilterByStatus, | |
| 2154 | + size: '__unstable-large', | |
| 2155 | + __nextHasNoMarginBottom: true, | |
| 2156 | + name: "elementor-element-manager-select-filter-by-status", | |
| 2157 | + options: [{ | |
| 2158 | + label: (0, _i18n.__)('All Statuses', 'elementor'), | |
| 2159 | + value: 'all' | |
| 2160 | + }, { | |
| 2161 | + label: (0, _i18n.__)('Active', 'elementor'), | |
| 2162 | + value: 'active' | |
| 2163 | + }, { | |
| 2164 | + label: (0, _i18n.__)('Inactive', 'elementor'), | |
| 2165 | + value: 'inactive' | |
| 2166 | + }] | |
| 2167 | + })), /*#__PURE__*/_react.default.createElement("hr", { | |
| 2168 | + style: { | |
| 2169 | + height: '30px', | |
| 2170 | + margin: '0 5px', | |
| 2171 | + borderWidth: '0 1px 0 0', | |
| 2172 | + borderStyle: 'solid', | |
| 2173 | + borderColor: 'rgba(30, 30, 30, 0.5)' | |
| 2174 | + } | |
| 2175 | + }), /*#__PURE__*/_react.default.createElement(_components.ButtonGroup, null, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2176 | + variant: 'secondary', | |
| 2177 | + style: { | |
| 2178 | + marginInlineEnd: '10px' | |
| 2179 | + }, | |
| 2180 | + disabled: usageWidgets.isLoading, | |
| 2181 | + isBusy: usageWidgets.isLoading, | |
| 2182 | + onClick: onScanUsageElementsClicked, | |
| 2183 | + className: "e-id-elementor-element-manager-button-scan-element-usage" | |
| 2184 | + }, (0, _i18n.__)('Scan Element Usage', 'elementor')), /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2185 | + variant: 'secondary', | |
| 2186 | + style: { | |
| 2187 | + marginInlineEnd: '10px' | |
| 2188 | + }, | |
| 2189 | + onClick: deactivateAllUnusedWidgets, | |
| 2190 | + disabled: null === usageWidgets.data, | |
| 2191 | + className: "e-id-elementor-element-manager-button-deactivate-unused-elements" | |
| 2192 | + }, (0, _i18n.__)('Deactivate Unused Elements', 'elementor')), /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2193 | + variant: 'secondary', | |
| 2194 | + disabled: !widgetsDisabled.length, | |
| 2195 | + style: { | |
| 2196 | + marginInlineEnd: '10px' | |
| 2197 | + }, | |
| 2198 | + onClick: enableAllWidgets, | |
| 2199 | + className: "e-id-elementor-element-manager-button-enable-all" | |
| 2200 | + }, (0, _i18n.__)('Enable All', 'elementor'))))), /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2201 | + variant: "primary", | |
| 2202 | + disabled: changeProgress.isSaving || !changeProgress.isUnsavedChanges, | |
| 2203 | + isBusy: changeProgress.isSaving, | |
| 2204 | + onClick: function onClick() { | |
| 2205 | + setIsConfirmDialogOpen(true); | |
| 2206 | + }, | |
| 2207 | + className: "e-id-elementor-element-manager-button-save-changes" | |
| 2208 | + }, (0, _i18n.__)('Save Changes', 'elementor')))), /*#__PURE__*/_react.default.createElement(_components.PanelRow, null, !sortedAndFilteredWidgets.length ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('No elements found.', 'elementor')) : /*#__PURE__*/_react.default.createElement("table", { | |
| 2209 | + className: 'wp-list-table widefat fixed striped table-view-list' | |
| 2210 | + }, /*#__PURE__*/_react.default.createElement("thead", null, /*#__PURE__*/_react.default.createElement("tr", null, /*#__PURE__*/_react.default.createElement("th", { | |
| 2211 | + className: "manage-column sortable ".concat(getSortingIndicatorClasses('widget')) | |
| 2212 | + }, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2213 | + href: '#', | |
| 2214 | + onClick: function onClick(event) { | |
| 2215 | + event.preventDefault(); | |
| 2216 | + onSortingClicked('widget'); | |
| 2217 | + }, | |
| 2218 | + className: "e-id-elementor-element-manager-button-sort-by-element" | |
| 2219 | + }, /*#__PURE__*/_react.default.createElement("span", null, (0, _i18n.__)('Element', 'elementor')), /*#__PURE__*/_react.default.createElement("span", { | |
| 2220 | + className: "sorting-indicators" | |
| 2221 | + }, /*#__PURE__*/_react.default.createElement("span", { | |
| 2222 | + className: "sorting-indicator asc", | |
| 2223 | + "aria-hidden": "true" | |
| 2224 | + }), /*#__PURE__*/_react.default.createElement("span", { | |
| 2225 | + className: "sorting-indicator desc", | |
| 2226 | + "aria-hidden": "true" | |
| 2227 | + })))), /*#__PURE__*/_react.default.createElement("th", null, (0, _i18n.__)('Status', 'elementor')), /*#__PURE__*/_react.default.createElement("th", { | |
| 2228 | + className: "manage-column sortable ".concat(getSortingIndicatorClasses('usage')) | |
| 2229 | + }, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2230 | + href: '#', | |
| 2231 | + onClick: function onClick(event) { | |
| 2232 | + event.preventDefault(); | |
| 2233 | + onSortingClicked('usage'); | |
| 2234 | + }, | |
| 2235 | + className: "e-id-elementor-element-manager-button-sort-by-usage" | |
| 2236 | + }, /*#__PURE__*/_react.default.createElement("span", null, (0, _i18n.__)('Usage', 'elementor')), /*#__PURE__*/_react.default.createElement("span", { | |
| 2237 | + className: "sorting-indicators" | |
| 2238 | + }, /*#__PURE__*/_react.default.createElement("span", { | |
| 2239 | + className: "sorting-indicator asc", | |
| 2240 | + "aria-hidden": "true" | |
| 2241 | + }), /*#__PURE__*/_react.default.createElement("span", { | |
| 2242 | + className: "sorting-indicator desc", | |
| 2243 | + "aria-hidden": "true" | |
| 2244 | + })))), /*#__PURE__*/_react.default.createElement("th", null, (0, _i18n.__)('Plugin', 'elementor')), /*#__PURE__*/_react.default.createElement("th", null, /*#__PURE__*/_react.default.createElement(_components.Flex, { | |
| 2245 | + justify: 'flex-start', | |
| 2246 | + gap: 0 | |
| 2247 | + }, /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, (0, _i18n.__)('Permission', 'elementor')), /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, /*#__PURE__*/_react.default.createElement(_components.Tooltip, { | |
| 2248 | + placement: 'top', | |
| 2249 | + delay: 100, | |
| 2250 | + text: (0, _i18n.__)('Choose which users will have access to each widget.', 'elementor') | |
| 2251 | + }, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2252 | + icon: 'info-outline', | |
| 2253 | + iconSize: 16 | |
| 2254 | + }))), null === widgetsRoleRestrictions && /*#__PURE__*/_react.default.createElement(_components.FlexItem, { | |
| 2255 | + style: { | |
| 2256 | + marginInlineStart: '10px' | |
| 2257 | + } | |
| 2258 | + }, /*#__PURE__*/_react.default.createElement(_upgradeButton.UpgradeButton, { | |
| 2259 | + href: promotionWidgets.length ? managerPermissions.pro.url : managerPermissions.advanced.url, | |
| 2260 | + size: 'small', | |
| 2261 | + text: promotionWidgets.length ? managerPermissions.pro.text : managerPermissions.advanced.text, | |
| 2262 | + className: ['e-id-elementor-element-manager-button-upgrade-permissions', 'go-pro'].join(' ') | |
| 2263 | + })))))), /*#__PURE__*/_react.default.createElement("tbody", null, sortedAndFilteredWidgets.map(function (widget) { | |
| 2264 | + return /*#__PURE__*/_react.default.createElement("tr", { | |
| 2265 | + key: widget.name, | |
| 2266 | + "data-key-id": widget.name | |
| 2267 | + }, /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement("i", { | |
| 2268 | + style: { | |
| 2269 | + marginInlineEnd: '5px', | |
| 2270 | + marginInlineStart: '0', | |
| 2271 | + display: 'inline-block' | |
| 2272 | + }, | |
| 2273 | + className: "".concat(widget.icon) | |
| 2274 | + }), " ", widget.title), /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement(_components.ToggleControl, { | |
| 2275 | + checked: !widgetsDisabled.includes(widget.name), | |
| 2276 | + __nextHasNoMarginBottom: true, | |
| 2277 | + onChange: function onChange() { | |
| 2278 | + if (widgetsDisabled.includes(widget.name)) { | |
| 2279 | + setWidgetsDisabled(widgetsDisabled.filter(function (item) { | |
| 2280 | + return item !== widget.name; | |
| 2281 | + })); | |
| 2282 | + } else { | |
| 2283 | + setWidgetsDisabled([].concat((0, _toConsumableArray2.default)(widgetsDisabled), [widget.name])); | |
| 2284 | + } | |
| 2285 | + }, | |
| 2286 | + className: "e-id-elementor-element-manager-toggle-".concat(widget.name) | |
| 2287 | + })), /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement(UsageTimesColumn, { | |
| 2288 | + widgetName: widget.name | |
| 2289 | + })), /*#__PURE__*/_react.default.createElement("td", null, widget.plugin), /*#__PURE__*/_react.default.createElement("td", null, null !== widgetsRoleRestrictions && !widgetsDisabled.includes(widget.name) ? /*#__PURE__*/_react.default.createElement(_rolePermissions.RolePermissions, { | |
| 2290 | + widgetName: widget.name, | |
| 2291 | + roles: roles, | |
| 2292 | + widgetsRoleRestrictions: widgetsRoleRestrictions, | |
| 2293 | + setWidgetsRoleRestrictions: setWidgetsRoleRestrictions | |
| 2294 | + }) : /*#__PURE__*/_react.default.createElement(_rolePermissions.EditButtonDisabled, null))); | |
| 2295 | + })))), promotionWidgets.length > 0 && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_components.PanelRow, null, /*#__PURE__*/_react.default.createElement(_components.Flex, { | |
| 2296 | + style: { | |
| 2297 | + marginTop: '40px', | |
| 2298 | + marginBottom: '20px' | |
| 2299 | + } | |
| 2300 | + }, /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, /*#__PURE__*/_react.default.createElement("h3", null, (0, _i18n.__)('Elementor Pro Elements', 'elementor')), /*#__PURE__*/_react.default.createElement("p", null, (0, _i18n.__)('Unleash the full power of Elementor\'s features and web creation tools.', 'elementor'))), /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, /*#__PURE__*/_react.default.createElement(_upgradeButton.UpgradeButton, { | |
| 2301 | + href: elementManager.url, | |
| 2302 | + text: elementManager.text, | |
| 2303 | + className: "e-id-elementor-element-manager-button-upgrade-pro-elements" | |
| 2304 | + })))), /*#__PURE__*/_react.default.createElement(_components.PanelRow, null, /*#__PURE__*/_react.default.createElement("table", { | |
| 2305 | + className: 'wp-list-table widefat fixed striped table-view-list' | |
| 2306 | + }, /*#__PURE__*/_react.default.createElement("thead", null, /*#__PURE__*/_react.default.createElement("tr", null, /*#__PURE__*/_react.default.createElement("th", { | |
| 2307 | + className: "manage-column" | |
| 2308 | + }, /*#__PURE__*/_react.default.createElement("span", null, (0, _i18n.__)('Element', 'elementor'))), /*#__PURE__*/_react.default.createElement("th", null, (0, _i18n.__)('Status', 'elementor')), /*#__PURE__*/_react.default.createElement("th", null, (0, _i18n.__)('Usage', 'elementor')), /*#__PURE__*/_react.default.createElement("th", null, (0, _i18n.__)('Plugin', 'elementor')), /*#__PURE__*/_react.default.createElement("th", null, /*#__PURE__*/_react.default.createElement(_components.Flex, { | |
| 2309 | + justify: 'flex-start' | |
| 2310 | + }, /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, (0, _i18n.__)('Permission', 'elementor')), /*#__PURE__*/_react.default.createElement(_components.FlexItem, null, /*#__PURE__*/_react.default.createElement(_components.Tooltip, { | |
| 2311 | + placement: 'top', | |
| 2312 | + delay: 100, | |
| 2313 | + text: (0, _i18n.__)('Choose which role will have access to a specific widget.', 'elementor') | |
| 2314 | + }, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2315 | + icon: 'info-outline' | |
| 2316 | + }))))))), /*#__PURE__*/_react.default.createElement("tbody", null, promotionWidgets.map(function (widget) { | |
| 2317 | + return /*#__PURE__*/_react.default.createElement("tr", { | |
| 2318 | + key: widget.name | |
| 2319 | + }, /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement("i", { | |
| 2320 | + style: { | |
| 2321 | + marginInlineEnd: '5px' | |
| 2322 | + }, | |
| 2323 | + className: "".concat(widget.icon) | |
| 2324 | + }), " ", widget.title), /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement(_components.ToggleControl, { | |
| 2325 | + __nextHasNoMarginBottom: true, | |
| 2326 | + checked: false, | |
| 2327 | + disabled: true, | |
| 2328 | + className: "e-id-elementor-element-manager-toggle-".concat(widget.name) | |
| 2329 | + })), /*#__PURE__*/_react.default.createElement("td", null), /*#__PURE__*/_react.default.createElement("td", null, (0, _i18n.__)('Elementor Pro', 'elementor')), /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement(_rolePermissions.EditButtonDisabled, { | |
| 2330 | + widgetName: widget.name | |
| 2331 | + }))); | |
| 2332 | + }))))))), isConfirmDialogOpen && /*#__PURE__*/_react.default.createElement(_components.Modal, { | |
| 2333 | + title: (0, _i18n.__)('Sure you want to save these changes?', 'elementor'), | |
| 2334 | + size: 'small', | |
| 2335 | + isDismissible: false, | |
| 2336 | + onRequestClose: function onRequestClose() { | |
| 2337 | + setIsConfirmDialogOpen(false); | |
| 2338 | + } | |
| 2339 | + }, /*#__PURE__*/_react.default.createElement("p", { | |
| 2340 | + style: { | |
| 2341 | + maxWidth: '400px', | |
| 2342 | + marginBlockEnd: '30px', | |
| 2343 | + marginBlockStart: '0' | |
| 2344 | + } | |
| 2345 | + }, (0, _i18n.__)('Turning widgets off will hide them from the editor panel, and can potentially affect your layout or front-end.', 'elementor'), /*#__PURE__*/_react.default.createElement("span", { | |
| 2346 | + style: { | |
| 2347 | + display: 'block', | |
| 2348 | + marginTop: '20px' | |
| 2349 | + } | |
| 2350 | + }, (0, _i18n.__)('If you’re adding widgets back in, enjoy them!', 'elementor'))), /*#__PURE__*/_react.default.createElement(_components.ButtonGroup, { | |
| 2351 | + style: { | |
| 2352 | + display: 'flex', | |
| 2353 | + justifyContent: 'flex-end', | |
| 2354 | + gap: '30px' | |
| 2355 | + } | |
| 2356 | + }, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2357 | + variant: 'link', | |
| 2358 | + onClick: function onClick() { | |
| 2359 | + setIsConfirmDialogOpen(false); | |
| 2360 | + }, | |
| 2361 | + className: "e-id-elementor-element-manager-modal-button-cancel" | |
| 2362 | + }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2363 | + variant: 'primary', | |
| 2364 | + onClick: onSaveClicked, | |
| 2365 | + className: "e-id-elementor-element-manager-modal-button-save" | |
| 2366 | + }, (0, _i18n.__)('Save', 'elementor')))), /*#__PURE__*/_react.default.createElement("div", { | |
| 2367 | + style: { | |
| 2368 | + position: 'fixed', | |
| 2369 | + bottom: '40px', | |
| 2370 | + left: '50%', | |
| 2371 | + transform: 'translateX(-50%)', | |
| 2372 | + display: isSnackbarOpen ? 'block' : 'none' | |
| 2373 | + } | |
| 2374 | + }, /*#__PURE__*/_react.default.createElement(_components.Snackbar, { | |
| 2375 | + isDismissible: true, | |
| 2376 | + status: 'success', | |
| 2377 | + onRemove: function onRemove() { | |
| 2378 | + return setIsSnackbarOpen(false); | |
| 2379 | + } | |
| 2380 | + }, (0, _i18n.__)('We saved your changes.', 'elementor')))); | |
| 2381 | +}; | |
| 2382 | + | |
| 2383 | +/***/ }), | |
| 2384 | + | |
| 2385 | +/***/ "../modules/element-manager/assets/js/role-permissions.js": | |
| 2386 | +/*!****************************************************************!*\ | |
| 2387 | + !*** ../modules/element-manager/assets/js/role-permissions.js ***! | |
| 2388 | + \****************************************************************/ | |
| 2389 | +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { | |
| 2390 | + | |
| 2391 | +"use strict"; | |
| 2392 | + | |
| 2393 | + | |
| 2394 | +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); | |
| 2395 | +Object.defineProperty(exports, "__esModule", ({ | |
| 2396 | + value: true | |
| 2397 | +})); | |
| 2398 | +exports.RolePermissions = exports.EditButtonDisabled = void 0; | |
| 2399 | +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); | |
| 2400 | +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); | |
| 2401 | +var _components = __webpack_require__(/*! @wordpress/components */ "@wordpress/components"); | |
| 2402 | +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"); | |
| 2403 | +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } | |
| 2404 | +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /* eslint-disable react/prop-types */ | |
| 2405 | +var toggleRoleRestrictions = function toggleRoleRestrictions(widgetName, roleId, widgetsRoleRestrictions, setWidgetsRoleRestrictions) { | |
| 2406 | + var widgetRoleRestrictions = widgetsRoleRestrictions[widgetName] || []; | |
| 2407 | + if (widgetRoleRestrictions.includes(roleId)) { | |
| 2408 | + widgetRoleRestrictions.splice(widgetRoleRestrictions.indexOf(roleId), 1); | |
| 2409 | + } else { | |
| 2410 | + widgetRoleRestrictions.push(roleId); | |
| 2411 | + } | |
| 2412 | + | |
| 2413 | + // TODO: Remove the object from the state if it's empty | |
| 2414 | + setWidgetsRoleRestrictions(_objectSpread(_objectSpread({}, widgetsRoleRestrictions), {}, (0, _defineProperty2.default)({}, widgetName, widgetRoleRestrictions))); | |
| 2415 | +}; | |
| 2416 | +var RolesList = function RolesList(props) { | |
| 2417 | + var roles = props.roles, | |
| 2418 | + widgetRoleRestrictions = props.widgetRoleRestrictions; | |
| 2419 | + var rolesEnables = roles.filter(function (role) { | |
| 2420 | + return !widgetRoleRestrictions.includes(role.id); | |
| 2421 | + }); | |
| 2422 | + if (!rolesEnables.length) { | |
| 2423 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "(", (0, _i18n.__)('Admin', 'elementor'), ")"); | |
| 2424 | + } | |
| 2425 | + if (rolesEnables.length === roles.length) { | |
| 2426 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "(", (0, _i18n.__)('All Roles', 'elementor'), ")"); | |
| 2427 | + } | |
| 2428 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "(", rolesEnables.map(function (role) { | |
| 2429 | + return role.name; | |
| 2430 | + }).join(', '), ")"); | |
| 2431 | +}; | |
| 2432 | +var RolePermissions = exports.RolePermissions = function RolePermissions(props) { | |
| 2433 | + var roles = props.roles, | |
| 2434 | + widgetName = props.widgetName, | |
| 2435 | + widgetsRoleRestrictions = props.widgetsRoleRestrictions, | |
| 2436 | + setWidgetsRoleRestrictions = props.setWidgetsRoleRestrictions; | |
| 2437 | + var widgetRoleRestrictions = widgetsRoleRestrictions[widgetName] || []; | |
| 2438 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_components.Dropdown, { | |
| 2439 | + className: 'my-container-class-name', | |
| 2440 | + contentClassName: 'my-dropdown-content-classname', | |
| 2441 | + popoverProps: { | |
| 2442 | + placement: 'bottom-start' | |
| 2443 | + }, | |
| 2444 | + renderToggle: function renderToggle(_ref) { | |
| 2445 | + var isOpen = _ref.isOpen, | |
| 2446 | + onToggle = _ref.onToggle; | |
| 2447 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2448 | + variant: 'link', | |
| 2449 | + onClick: onToggle, | |
| 2450 | + "aria-expanded": isOpen, | |
| 2451 | + style: { | |
| 2452 | + textDecoration: 'none' | |
| 2453 | + }, | |
| 2454 | + className: "e-id-elementor-element-manager-button-edit-permissions-".concat(widgetName) | |
| 2455 | + }, (0, _i18n.__)('Edit', 'elementor')), ' ', /*#__PURE__*/_react.default.createElement("span", { | |
| 2456 | + style: { | |
| 2457 | + color: 'var(--e-a-color-txt-muted)' | |
| 2458 | + } | |
| 2459 | + }, /*#__PURE__*/_react.default.createElement(RolesList, { | |
| 2460 | + roles: roles, | |
| 2461 | + widgetRoleRestrictions: widgetRoleRestrictions | |
| 2462 | + }))); | |
| 2463 | + }, | |
| 2464 | + renderContent: function renderContent() { | |
| 2465 | + var isAllChecked = roles.every(function (role) { | |
| 2466 | + return !widgetRoleRestrictions.includes(role.id); | |
| 2467 | + }); | |
| 2468 | + var isIndeterminate = !isAllChecked && roles.some(function (role) { | |
| 2469 | + return !widgetRoleRestrictions.includes(role.id); | |
| 2470 | + }); | |
| 2471 | + return /*#__PURE__*/_react.default.createElement("div", { | |
| 2472 | + style: { | |
| 2473 | + minWidth: '150px', | |
| 2474 | + paddingInline: '10px', | |
| 2475 | + paddingBlockStart: '10px' | |
| 2476 | + } | |
| 2477 | + }, /*#__PURE__*/_react.default.createElement(_components.CheckboxControl, { | |
| 2478 | + checked: isAllChecked, | |
| 2479 | + indeterminate: isIndeterminate, | |
| 2480 | + label: 'All', | |
| 2481 | + onChange: function onChange(value) { | |
| 2482 | + if (value) { | |
| 2483 | + setWidgetsRoleRestrictions(_objectSpread(_objectSpread({}, widgetsRoleRestrictions), {}, (0, _defineProperty2.default)({}, widgetName, []))); | |
| 2484 | + } else { | |
| 2485 | + setWidgetsRoleRestrictions(_objectSpread(_objectSpread({}, widgetsRoleRestrictions), {}, (0, _defineProperty2.default)({}, widgetName, roles.map(function (role) { | |
| 2486 | + return role.id; | |
| 2487 | + })))); | |
| 2488 | + } | |
| 2489 | + } | |
| 2490 | + }), roles.map(function (role) { | |
| 2491 | + return /*#__PURE__*/_react.default.createElement("div", { | |
| 2492 | + key: role.id | |
| 2493 | + }, /*#__PURE__*/_react.default.createElement(_components.CheckboxControl, { | |
| 2494 | + checked: !widgetRoleRestrictions.includes(role.id), | |
| 2495 | + label: role.name, | |
| 2496 | + onChange: function onChange() { | |
| 2497 | + toggleRoleRestrictions(widgetName, role.id, widgetsRoleRestrictions, setWidgetsRoleRestrictions); | |
| 2498 | + } | |
| 2499 | + })); | |
| 2500 | + })); | |
| 2501 | + } | |
| 2502 | + })); | |
| 2503 | +}; | |
| 2504 | +var EditButtonDisabled = exports.EditButtonDisabled = function EditButtonDisabled(props) { | |
| 2505 | + var widgetName = props.widgetName || 'unknown'; | |
| 2506 | + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_components.Button, { | |
| 2507 | + variant: "link", | |
| 2508 | + disabled: true, | |
| 2509 | + style: { | |
| 2510 | + textDecoration: 'none' | |
| 2511 | + }, | |
| 2512 | + className: "e-id-elementor-element-manager-button-edit-permissions-".concat(widgetName) | |
| 2513 | + }, (0, _i18n.__)('Edit', 'elementor'))); | |
| 2514 | +}; | |
| 2515 | + | |
| 2516 | +/***/ }), | |
| 2517 | + | |
| 1762 | 2518 | /***/ "../modules/element-manager/assets/js/upgrade-button.js": |
| 1763 | 2519 | /*!**************************************************************!*\ |
| 1764 | 2520 | !*** ../modules/element-manager/assets/js/upgrade-button.js ***! |
| 1765 | 2521 | \**************************************************************/ |
| @@ -6061,15 +6817,22 @@ | ||
| 6061 | 6817 | var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react")); |
| 6062 | 6818 | var _element = __webpack_require__(/*! @wordpress/element */ "../node_modules/@wordpress/element/build-module/index.js"); |
| 6063 | 6819 | var _domReady = _interopRequireDefault(__webpack_require__(/*! @wordpress/dom-ready */ "@wordpress/dom-ready")); |
| 6064 | 6820 | var _appEditorOne = __webpack_require__(/*! ./app-editor-one */ "../modules/element-manager/assets/js/app-editor-one/index.js"); |
| 6821 | +var _app = __webpack_require__(/*! ./app */ "../modules/element-manager/assets/js/app.js"); | |
| 6065 | 6822 | (0, _domReady.default)(function () { |
| 6823 | + var _elementorCommon$conf; | |
| 6066 | 6824 | var htmlOutput = document.getElementById('elementor-element-manager-wrap'); |
| 6067 | 6825 | if (!htmlOutput) { |
| 6068 | 6826 | return; |
| 6069 | 6827 | } |
| 6828 | + var isEditorOneEnabled = typeof elementorCommon !== 'undefined' && true === ((_elementorCommon$conf = elementorCommon.config) === null || _elementorCommon$conf === void 0 || (_elementorCommon$conf = _elementorCommon$conf.experimentalFeatures) === null || _elementorCommon$conf === void 0 ? void 0 : _elementorCommon$conf.e_editor_one); | |
| 6070 | 6829 | var root = (0, _element.createRoot)(htmlOutput); |
| 6071 | - root.render(/*#__PURE__*/_react.default.createElement(_appEditorOne.AppModern, null)); | |
| 6830 | + if (isEditorOneEnabled) { | |
| 6831 | + root.render(/*#__PURE__*/_react.default.createElement(_appEditorOne.AppModern, null)); | |
| 6832 | + } else { | |
| 6833 | + root.render(/*#__PURE__*/_react.default.createElement(_app.AppLegacy, null)); | |
| 6834 | + } | |
| 6072 | 6835 | }); |
| 6073 | 6836 | })(); |
| 6074 | 6837 | |
| 6075 | 6838 | /******/ })() |