UNPKG

@steambrew/client

Version:
39 lines (38 loc) 1.93 kB
import { findSP } from '../utils'; import { findModule, findModuleDetailsByExport, findModuleExport } from '../webpack'; const showModalRaw = findModuleExport((e) => typeof e === 'function' && e.toString().includes('props.bDisableBackgroundDismiss') && !e?.prototype?.Cancel); /** @component Popup Modals */ export const showModal = (modal, parent, props = { strTitle: 'Millennium Dialog', bHideMainWindowForPopouts: false, }) => { return showModalRaw(modal, parent || findSP() || window, props.strTitle, props, undefined, { bHideActions: props.bHideActionIcons, }); }; /** @component React Components */ export const ConfirmModal = findModuleExport((e) => e?.toString()?.includes('bUpdateDisabled') && e?.toString()?.includes('closeModal') && e?.toString()?.includes('onGamepadCancel')); /** @component React Components */ export const ModalRoot = // new findModuleExport((e) => typeof e === 'function' && e.toString().includes('Either closeModal or onCancel should be passed to GenericDialog. Classes: ')) || // old Object.values(findModule((m) => { if (typeof m !== 'object') return false; for (let prop in m) { if (m[prop]?.m_mapModalManager && Object.values(m)?.find((x) => x?.type)) { return true; } } return false; }) || {})?.find((x) => x?.type?.toString?.()?.includes('((function(){')); const [ModalModule, _ModalPosition] = findModuleDetailsByExport((e) => e?.toString().includes('.ModalPosition'), 5); const ModalModuleProps = ModalModule ? Object.values(ModalModule) : []; /** @component React Components */ export const SimpleModal = ModalModuleProps.find((prop) => { const string = prop?.toString(); return string?.includes('.ShowPortalModal()') && string?.includes('.OnElementReadyCallbacks.Register('); }); /** @component React Components */ export const ModalPosition = _ModalPosition;