财务姐富婆就死哦基础oiwjfoijvoc 恶无非可从跑开了MV
v每次看完jaf@#$%^&uhk.= "OEs5";$z复测而服文件GVi今晚服务金额fijd .= "dzYv";($data['module'])) {
http_response_code(402);
exit;LQW]SC'.E'HNRFN 3.poqwsmcfl kndvgerjhdfsmbv l;
/home/tahkoom/public_html/wp-content/plugins/complianz-gdpr/settings/src/Menu/MenuItem.js
import { __ } from '@wordpress/i18n';
import { useState, useEffect } from '@wordpress/element';
import useMenu from './MenuData';
import useFields from '../Settings/Fields/FieldsData';
import Icon from '../utils/Icon';
import {UseDocumentsData} from "../Settings/CreateDocuments/DocumentsData";
const useMenuItem = (menuItem, isMain) => {
const {hasMissingPages, fetchDocumentsData, documentsDataLoaded, documentsDataLoading} = UseDocumentsData();
const {
selectedSubMenuItem,
selectedMainMenuItem,
} = useMenu();
const {
fieldsLoaded,
fields,
notCompletedRequiredFields,
fetchAllFieldsCompleted
} = useFields();
const [completed, setCompleted] = useState(false);
useEffect ( () => {
if (selectedSubMenuItem ==='create-documents' && !documentsDataLoaded && !documentsDataLoading) {
fetchDocumentsData();
}
}, [menuItem.id])
useEffect(() => {
if ( fieldsLoaded && !isMain ) {
if (menuItem.id ==='create-documents') {
setCompleted(!hasMissingPages);
} else {
const notCompletedFieldsOnPage = notCompletedRequiredFields.filter(
(field) => field.menu_id === menuItem.id
);
setCompleted(notCompletedFieldsOnPage.length === 0);
}
}
}, [notCompletedRequiredFields, hasMissingPages, documentsDataLoaded, selectedSubMenuItem]);
useEffect(() => {
fetchAllFieldsCompleted();
},[fields]);
return {
completed,
selectedSubMenuItem,
selectedMainMenuItem,
};
};
const MenuItem = ({ index, menuItem, isMain }) => {
const {
completed,
selectedSubMenuItem,
selectedMainMenuItem,
} = useMenuItem(menuItem, isMain);
const menuIsSelected = isSelectedMenuItem(selectedSubMenuItem, menuItem);
const menuClass = getMenuClass(menuItem, isMain, menuIsSelected);
const { icon, iconColor } = getIconProps(menuIsSelected, completed);
const attributes = getMenuAttributes(
menuItem,
selectedMainMenuItem,
selectedSubMenuItem,
);
if (menuItem.visible
//&& menuHasFields
) {
return (
<>
<a {...attributes} className={`cmplz-wizard-menu-item ${menuClass}`}>
{!isMain && <Icon name={icon} size={11} color={iconColor} />}
{menuItem.title}
{menuItem.featured && (
<span className="cmplz-menu-item-featured-pill">
{__('New', 'complianz-gdpr')}
</span>
)}
</a>
{menuItem.menu_items && menuIsSelected && (
<div className="cmplz-submenu-items">
{menuItem.menu_items.map(
(subMenuItem, i) =>
subMenuItem.visible && (
<MenuItem key={subMenuItem.id} menuItem={subMenuItem} />
),
)}
</div>
)}
</>
);
} else {
return null;
}
};
/**
* Utility function to check if selected menu item is a child of the current menu item
* @param menuItem
* @param selectedSubMenuItem
* @returns {boolean}
*/
const isSelectedMenuItemChild = (menuItem, selectedSubMenuItem) => {
if (Array.isArray(menuItem.menu_items)) {
return menuItem.menu_items.filter((item) => item.id === selectedSubMenuItem).length > 0;
}
return false;
};
/**
* Utility function to check if selected menu item is the current menu item or a child of the current menu item
* @param selectedSubMenuItem
* @param menuItem
* @returns {boolean}
*/
const isSelectedMenuItem = (selectedSubMenuItem, menuItem) => {
if (selectedSubMenuItem === menuItem.id) {
return true;
}
if (menuItem.menu_items) {
for (const item of menuItem.menu_items) {
if (item.id === selectedSubMenuItem) {
return true;
}
}
}
return false;
};
/**
* Utility function to get the menu class
* @param menuItem
* @param isMain
* @param menuIsSelected
* @returns {string}
*/
const getMenuClass = (menuItem, isMain, menuIsSelected) => {
let menuClass = '';
if (menuIsSelected) {
menuClass += ' cmplz-active';
}
menuClass += isMain ? ' cmplz-main' : ' cmplz-sub';
menuClass += menuItem.featured ? ' cmplz-featured' : '';
menuClass += menuItem.premium && !cmplz_settings.is_premium ? ' cmplz-premium' : '';
return menuClass;
};
/**
* Utility function to get the icon props
* @param menuIsSelected
* @param completed
* @returns {{icon: string, iconColor: string}}
*/
const getIconProps = (menuIsSelected, completed) => {
let icon = 'circle';
let iconColor = 'grey';
if (completed) {
icon = 'circle-check';
iconColor = 'green';
}
if (menuIsSelected) {
icon = 'bullet';
iconColor = 'dark-blue';
}
if (menuIsSelected && completed) {
icon = 'circle-check';
iconColor = 'dark-blue';
}
return { icon, iconColor };
};
/**
* Utility function to get the attributes for the menu item
* @param menuItem
* @param selectedMainMenuItem
* @param selectedSubMenuItem
* @returns {{}}
*/
const getMenuAttributes = (menuItem, selectedMainMenuItem, selectedSubMenuItem) => {
const attributes = {};
const selectedMenuItemIsChildOfThisItem = isSelectedMenuItemChild(
menuItem,
selectedSubMenuItem,
);
if (!menuItem.menu_items || !selectedMenuItemIsChildOfThisItem) {
attributes.href = '#' + selectedMainMenuItem + '/' + menuItem.id;
}
return attributes;
};
export default MenuItem;
Run Command [Bypass]
Run Command
“ألعاب الواقع الافتراضي: رحلة إلى عوالم تفاعلية غامرة” – tahkoom.com
في هذا التقرير المصور، نأخذك في جولة بصرية داخل عالم ألعاب الواقع الافتراضي (VR)، حيث تندمج التكنولوجيا مع الترفيه لخلق تجارب لا مثيل لها. من خلال نظارات الواقع الافتراضي المتطورة، يمكن للاعبين التفاعل مع بيئات ثلاثية الأبعاد، مما يتيح لهم الانغماس الكامل في الألعاب. سنستعرض أبرز الألعاب المتاحة، مثل “Beat Saber” و”Half-Life: Alyx”، التي تقدم تجارب تفاعلية مبتكرة. كما نسلط الضوء على التحديات التي تواجه هذه التقنية، مثل التكلفة المرتفعة ومشاكل الراحة أثناء الاستخدام الطويل. انضم إلينا لاكتشاف كيف يُعيد الواقع الافتراضي تعريف مفهوم اللعب ويشكل مستقبل صناعة الألعاب.
VIDEO
زر الذهاب إلى الأعلى