From 0d85ac597b001e8cbc9f9d760429b8a7c34f49b6 Mon Sep 17 00:00:00 2001 From: alisagerasimova Date: Tue, 17 Mar 2026 13:47:52 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=B8=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=B0=D0=BB=20=D0=BF=D1=80=D0=BE=D0=B5=D0=BA?= =?UTF-8?q?=D1=82=20=D0=B8=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BB=D0=BE=D0=B3=D0=BE=D1=82=D0=B8=D0=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 2 +- package-lock.json | 4 +- package.json | 4 +- public/images/logo.jpg | Bin 0 -> 5415 bytes src/components/MyDialog.vue | 2 +- src/components/MyDropMenu.vue | 75 +++++++++++++++-------------- src/components/UI/CustomButton.vue | 6 ++- src/main.js | 2 + 8 files changed, 51 insertions(+), 44 deletions(-) create mode 100644 public/images/logo.jpg diff --git a/index.html b/index.html index 0694331..98f3860 100644 --- a/index.html +++ b/index.html @@ -2,7 +2,7 @@ - Probody + SkyVue diff --git a/package-lock.json b/package-lock.json index 2c416e6..71ba7c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "probody", + "name": "SkyVue", "version": "1.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "probody", + "name": "SkyVue", "version": "1.0.0", "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index dceac85..f1915ab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "probody", - "productName": "probody", + "name": "SkyVue", + "productName": "SkyVue", "version": "1.0.0", "description": "My Electron application description", "main": ".vite/build/main.js", diff --git a/public/images/logo.jpg b/public/images/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..be449f01fa12456d7aadce0e2c2906f8ab03dd44 GIT binary patch literal 5415 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 literal 0 HcmV?d00001 diff --git a/src/components/MyDialog.vue b/src/components/MyDialog.vue index d3bafa2..7d0ce6f 100644 --- a/src/components/MyDialog.vue +++ b/src/components/MyDialog.vue @@ -28,7 +28,7 @@ const props = defineProps({ isSuccess: { type: Boolean, - required: true + default: true, }, show: { type: Boolean, diff --git a/src/components/MyDropMenu.vue b/src/components/MyDropMenu.vue index 8402735..b255953 100644 --- a/src/components/MyDropMenu.vue +++ b/src/components/MyDropMenu.vue @@ -34,7 +34,8 @@ @@ -66,40 +67,16 @@ function openInfoCard(obj) { const links = [ { - title: 'Что такое ROS?', + title: 'ROS', body: 'ROS (Robot Operating System) — экосистема для программирования роботов с открытым исходным кодом', hrefToDoc: 'https://www.ros.org/', hrefToCourse: 'https://stepik.org/lesson/2260739/step/1?unit=2294748' }, { - title: 'Что такое нода?', - body: 'Нода в ROS - исполняемая программа, которая выполняет одну задачу. ', - hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', - hrefToCourse: 'https://stepik.org/lesson/2261765/step/1?unit=2295758' - }, - { - title: 'Что такое topic?', - body: 'Топик (Topic) в ROS — это именованный канал передачи данных, через который ноды обмениваются сообщениями.', - hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', - hrefToCourse: 'https://stepik.org/lesson/2262844/step/1?unit=2296866' - }, - { - title: 'Что такое издатель?', - body: 'Издатель (Publisher) в ROS — это узел, который производит данные. Он может публиковать сообщения определённого типа в заданной теме и делать их доступными для других узлов (подписчиков). ', - hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', - hrefToCourse: 'https://stepik.org/lesson/2262844/step/1?unit=2296866' - }, - { - title: 'Что такое подписчик?', - body: 'Подписчик (Subscriber) в ROS — это узел, который получает сообщения и информацию, публикуемые в определённой теме (канале) ROS.', - hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', - hrefToCourse: 'https://stepik.org/lesson/2262844/step/1?unit=2296866' - }, - { - title: 'Что такое сервис?', - body: 'Сервис в ROS - это функция, которую мы можем вызвать, чтобы либо дать команду роботу,либо получить от него какую-то информацию.', - hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', - hrefToCourse: 'https://stepik.org/lesson/2263182/step/1?unit=2297206' + title: 'OpenCV', + body: 'OpenCV (Open Source Computer Vision Library) — библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения с открытым кодом.', + hrefToDoc: 'https://opencv.org/', + hrefToCourse: 'https://stepik.org/lesson/2272700/step/1?unit=2306893' }, { title: 'navigate_wait', @@ -107,18 +84,42 @@ const links = [ hrefToDoc: 'https://clover.coex.tech/ru/snippets.html', hrefToCourse: 'https://stepik.org/lesson/2264712/step/1?unit=2298803' }, + { + title: 'Topic', + body: 'Топик (Topic) в ROS — это именованный канал передачи данных, через который ноды обмениваются сообщениями.', + hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', + hrefToCourse: 'https://stepik.org/lesson/2262844/step/1?unit=2296866' + }, + { + title: 'Нода', + body: 'Нода в ROS - исполняемая программа, которая выполняет одну задачу. ', + hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', + hrefToCourse: 'https://stepik.org/lesson/2261765/step/1?unit=2295758' + }, + { + title: 'Издатель', + body: 'Издатель (Publisher) в ROS — это узел, который производит данные. Он может публиковать сообщения определённого типа в заданной теме и делать их доступными для других узлов (подписчиков). ', + hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', + hrefToCourse: 'https://stepik.org/lesson/2262844/step/1?unit=2296866' + }, + { + title: 'Подписчик', + body: 'Подписчик (Subscriber) в ROS — это узел, который получает сообщения и информацию, публикуемые в определённой теме (канале) ROS.', + hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', + hrefToCourse: 'https://stepik.org/lesson/2262844/step/1?unit=2296866' + }, + { + title: 'Сервис', + body: 'Сервис в ROS - это функция, которую мы можем вызвать, чтобы либо дать команду роботу,либо получить от него какую-то информацию.', + hrefToDoc: 'https://docs.voltbro.ru/starting-ros/basics.html', + hrefToCourse: 'https://stepik.org/lesson/2263182/step/1?unit=2297206' + }, { title: 'Системы координат', body: 'Системы координат в Clover позволяют определять местоположение дрона относительно разных точек отсчёта, что важно для автономного полёта, навигации и других задач. Наиболее часто используемые: aruco_map и body', hrefToCourse: 'https://stepik.org/lesson/2264336/step/1?unit=2298407', hrefToDoc: 'https://clover.coex.tech/ru/frames.html' }, - { - title: 'OpenCV', - body: 'OpenCV (Open Source Computer Vision Library) — библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения с открытым кодом.', - hrefToDoc: 'https://opencv.org/', - hrefToCourse: 'https://stepik.org/lesson/2272700/step/1?unit=2306893' - } ] // Экспортируем методы, если захотим управлять меню извне @@ -187,6 +188,8 @@ h1 { z-index: 1000; padding: 0 20px 20px; overflow-y: scroll; + overflow: auto; + border-right: white 2px solid; } /* Затемнение фона */ diff --git a/src/components/UI/CustomButton.vue b/src/components/UI/CustomButton.vue index b77c445..1552730 100644 --- a/src/components/UI/CustomButton.vue +++ b/src/components/UI/CustomButton.vue @@ -9,7 +9,6 @@ const props = defineProps({ default: null } }) -