diff --git a/rsconcept/frontend/src/components/Common/EmbedYoutube.tsx b/rsconcept/frontend/src/components/Common/EmbedYoutube.tsx
new file mode 100644
index 00000000..bbb4da35
--- /dev/null
+++ b/rsconcept/frontend/src/components/Common/EmbedYoutube.tsx
@@ -0,0 +1,31 @@
+interface EmbedYoutubeProps {
+ videoID: string
+ pxHeight: number
+ pxWidth?: number
+}
+
+function EmbedYoutube({ videoID, pxHeight, pxWidth }: EmbedYoutubeProps) {
+ if (!pxWidth) {
+ pxWidth = pxHeight * 16 / 9;
+ console.log(pxWidth);
+ }
+ return (
+
-
Язык родов структур
-
Формальная запись (экспликация) концептуальных схем осуществляется с помощью языка родов структур. Данный математический аппарат основан на аксиоматической теории множеств Цермелло-Френкеля и аппарате родов структур Н.Бурбаки.
-
Для ознакомления с основами родов структур можно использовать следующие материалы:
-
+
+
+
Язык родов структур
+
Формальная запись (экспликация) концептуальных схем осуществляется с помощью языка родов структур.
+
Данный математический аппарат основан на аксиоматической теории множеств Цермелло-Френкеля и аппарате родов структур Н.Бурбаки.
+
Для ознакомления с основами родов структур можно использовать следующие материалы:
+
+
+
+
+
);
}
diff --git a/rsconcept/frontend/src/hooks/useWindowSize.ts b/rsconcept/frontend/src/hooks/useWindowSize.ts
new file mode 100644
index 00000000..0bf2e8de
--- /dev/null
+++ b/rsconcept/frontend/src/hooks/useWindowSize.ts
@@ -0,0 +1,31 @@
+import { useEffect, useState } from 'react';
+
+function useWindowSize() {
+ const isClient = typeof window === "object";
+
+ function getSize() {
+ return {
+ width: isClient ? window.innerWidth : undefined,
+ height: isClient ? window.innerHeight : undefined
+ };
+ }
+
+ const [windowSize, setWindowSize] = useState(getSize);
+
+ useEffect(
+ () => {
+ if (!isClient) {
+ return;
+ }
+ function handleResize() {
+ setWindowSize(getSize());
+ }
+ window.addEventListener("resize", handleResize);
+ return () => window.removeEventListener("resize", handleResize);
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, []);
+
+ return windowSize;
+}
+
+export default useWindowSize;
\ No newline at end of file
diff --git a/rsconcept/frontend/src/utils/constants.ts b/rsconcept/frontend/src/utils/constants.ts
index 933b6e94..226cf559 100644
--- a/rsconcept/frontend/src/utils/constants.ts
+++ b/rsconcept/frontend/src/utils/constants.ts
@@ -13,6 +13,10 @@ const dev = {
export const config = process.env.NODE_ENV === 'production' ? prod : dev;
export const TIMEOUT_UI_REFRESH = 100;
+export const youtube = {
+ intro: '0Ty9mu9sOJo'
+};
+
export const urls = {
concept: 'https://www.acconcept.ru/',
exteor32: 'https://drive.google.com/open?id=1IHlMMwaYlAUBRSxU1RU_hXM5mFU9-oyK&usp=drive_fs',