From 80fd08561ec3ca1381d7b40582def7d41e3d90d3 Mon Sep 17 00:00:00 2001 From: vasya Date: Sun, 22 Mar 2026 18:26:55 +0300 Subject: [PATCH] =?UTF-8?q?=D1=81=D0=BA=D1=80=D0=B8=D0=BF=D1=82=D1=8B=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D1=87=D0=B0=D1=81=D1=82=D0=B8=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=BC=D0=BF=D0=BE=D0=BD=D0=B5=D0=BD=D1=82=D0=B0=20=D0=B2?= =?UTF-8?q?=D1=81=D0=BF=D0=BB=D1=8B=D0=B2=D0=B0=D1=8E=D1=89=D0=B8=D1=85=20?= =?UTF-8?q?=D0=BE=D0=BA=D0=BE=D0=BD=20-=20=D0=BA=D0=BE=D0=BD=D1=82=D0=B5?= =?UTF-8?q?=D0=B9=D0=BD=D0=B5=D1=80=20=D0=B4=D0=BB=D1=8F=20=D0=B2=D1=81?= =?UTF-8?q?=D0=BF=D0=BB=D1=8B=D0=B2=D0=B0=D1=8E=D1=89=D0=B8=D1=85=20=D0=BE?= =?UTF-8?q?=D0=BA=D0=BE=D0=BD,=20=D0=B3=D0=B4=D0=B5=20=D0=B1=D1=83=D0=B4?= =?UTF-8?q?=D1=83=D1=82=20=D1=80=D0=B5=D0=BD=D0=B4=D0=B5=D1=80=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=D1=81=D1=8F=20=D0=B2=D1=81=D0=B5=20=D0=B2=D1=81=D0=BF?= =?UTF-8?q?=D0=BB=D1=8B=D0=B2=D0=B0=D1=8E=D1=89=D0=B8=D0=B5=20=D0=BE=D0=BA?= =?UTF-8?q?=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../css/components/MagicPopupContainer.css | 8 ++++ .../js/components/MagicPopupContainer.tsx | 45 +++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 resources/css/components/MagicPopupContainer.css create mode 100644 resources/js/components/MagicPopupContainer.tsx diff --git a/resources/css/components/MagicPopupContainer.css b/resources/css/components/MagicPopupContainer.css new file mode 100644 index 0000000..d4634db --- /dev/null +++ b/resources/css/components/MagicPopupContainer.css @@ -0,0 +1,8 @@ +#popup-parent-container{ + padding: 10px; + top: 150px; + z-index: 901; + position: fixed; + left: 50%; + transform: translate(-50%, -50px); +} \ No newline at end of file diff --git a/resources/js/components/MagicPopupContainer.tsx b/resources/js/components/MagicPopupContainer.tsx new file mode 100644 index 0000000..1f66931 --- /dev/null +++ b/resources/js/components/MagicPopupContainer.tsx @@ -0,0 +1,45 @@ +import React, { useContext, ComponentProps } from "react"; +import MagicPopup from "./MagicPopup"; +import './../../css/components/magicPopupContainer.css'; +import { PopupContext } from "../contexts/PopupContext"; + +/** + * Компонент контейнера для всплывающих окон, который вызывается на странице и куда передается массив всплывающих окон + */ + +//ГАВРИЛОВ. ЛОГИЧНЕЕ ЭКСПОРТИРОВАТЬ ТИП С ПРОПСАМИ КОМПОНЕНТА ИЗ САМОГО КОМПОНЕНТА MAGICPOPUP? +/** + * Дополнительный экспорт типа MagicPopup из компонента всплывающего окна для возможности его импорта, в свою очередь, из компонента, собирающего страницу, например TaxiPage TaxiPage + */ +export type MagicPopupType = ComponentProps; +/** + * Метод рендеринга контейнара для всплывающих окон + * @param {array} magicPopupArr массив объектов типа MagicPopup с информацией о всплывающем окне: текст, таймер и т.д. + * @param {callable} delHiddenPopupFunc колбэк для закрытия конкретного всплывающего окна по его уникальному идентификатору + * @returns ReactNode + */ +export default function MagicPopupContainer () +{ + const popupArr = useContext(PopupContext); + + return ( + //Родительский контейнер для всех всплывающих окон + + ) +}