Compare commits
No commits in common. "gh-pages" and "master" have entirely different histories.
|
@ -0,0 +1,110 @@
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
|
||||||
|
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||||
|
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||||
|
|
||||||
|
# Runtime data
|
||||||
|
pids
|
||||||
|
*.pid
|
||||||
|
*.seed
|
||||||
|
*.pid.lock
|
||||||
|
|
||||||
|
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||||
|
lib-cov
|
||||||
|
|
||||||
|
# Coverage directory used by tools like istanbul
|
||||||
|
coverage
|
||||||
|
*.lcov
|
||||||
|
|
||||||
|
# nyc test coverage
|
||||||
|
.nyc_output
|
||||||
|
|
||||||
|
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||||
|
.grunt
|
||||||
|
|
||||||
|
# Bower dependency directory (https://bower.io/)
|
||||||
|
bower_components
|
||||||
|
|
||||||
|
# node-waf configuration
|
||||||
|
.lock-wscript
|
||||||
|
|
||||||
|
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||||
|
build/Release
|
||||||
|
|
||||||
|
# Dependency directories
|
||||||
|
node_modules/
|
||||||
|
jspm_packages/
|
||||||
|
|
||||||
|
# TypeScript v1 declaration files
|
||||||
|
typings/
|
||||||
|
|
||||||
|
# TypeScript cache
|
||||||
|
*.tsbuildinfo
|
||||||
|
|
||||||
|
# Optional npm cache directory
|
||||||
|
.npm
|
||||||
|
|
||||||
|
# Optional eslint cache
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# Microbundle cache
|
||||||
|
.rpt2_cache/
|
||||||
|
.rts2_cache_cjs/
|
||||||
|
.rts2_cache_es/
|
||||||
|
.rts2_cache_umd/
|
||||||
|
|
||||||
|
# Optional REPL history
|
||||||
|
.node_repl_history
|
||||||
|
|
||||||
|
# Output of 'npm pack'
|
||||||
|
*.tgz
|
||||||
|
|
||||||
|
# Yarn Integrity file
|
||||||
|
.yarn-integrity
|
||||||
|
|
||||||
|
# dotenv environment variables file
|
||||||
|
.env
|
||||||
|
.env.test
|
||||||
|
|
||||||
|
# parcel-bundler cache (https://parceljs.org/)
|
||||||
|
.cache
|
||||||
|
|
||||||
|
# Next.js build output
|
||||||
|
.next
|
||||||
|
|
||||||
|
# Nuxt.js build / generate output
|
||||||
|
.nuxt
|
||||||
|
dist
|
||||||
|
|
||||||
|
# Gatsby files
|
||||||
|
.cache/
|
||||||
|
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||||
|
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||||
|
# public
|
||||||
|
|
||||||
|
# vuepress build output
|
||||||
|
.vuepress/dist
|
||||||
|
|
||||||
|
# Serverless directories
|
||||||
|
.serverless/
|
||||||
|
|
||||||
|
# FuseBox cache
|
||||||
|
.fusebox/
|
||||||
|
|
||||||
|
# DynamoDB Local files
|
||||||
|
.dynamodb/
|
||||||
|
|
||||||
|
# TernJS port file
|
||||||
|
.tern-port
|
||||||
|
|
||||||
|
# utils/table-generator generated files
|
||||||
|
utils/table-generator/tables/
|
||||||
|
utils/table-generator/tables.md
|
||||||
|
utils/table-generator/activities/
|
||||||
|
utils/table-generator/activities.md
|
|
@ -0,0 +1,8 @@
|
||||||
|
# Default ignored files
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
||||||
|
# Editor-based HTTP Client requests
|
||||||
|
/httpRequests/
|
||||||
|
# Datasource local storage ignored files
|
||||||
|
/dataSources/
|
||||||
|
/dataSources.local.xml
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/.idea/edu-dis-labs.iml" filepath="$PROJECT_DIR$/.idea/edu-dis-labs.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
22
404.html
|
@ -1,22 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
||||||
<title>Xpertise</title>
|
|
||||||
<meta name="generator" content="VuePress 1.8.2">
|
|
||||||
<link rel="icon" href="/edu-dis-labs/favicon.ico">
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.5.1/katex.min.css">
|
|
||||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
|
||||||
<meta name="description" content="Лабораторні роботи з дисципліни "Організація баз даних"">
|
|
||||||
|
|
||||||
<link rel="preload" href="/edu-dis-labs/assets/css/0.styles.683d4db1.css" as="style"><link rel="preload" href="/edu-dis-labs/assets/js/app.ef1e786b.js" as="script"><link rel="preload" href="/edu-dis-labs/assets/js/14.2545c1ad.js" as="script"><link rel="prefetch" href="/edu-dis-labs/assets/js/10.e50a5206.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/11.29ee89f8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/12.0b4fa948.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/13.6b4a3ce8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/15.0aee5be2.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/16.ae758f43.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/17.b51d0d04.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/18.51ffb2cf.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/19.85d5c25e.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/2.1dcc2d74.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/20.45f25853.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/21.c178c591.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/22.3dfa983e.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/23.58c0e73a.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/24.1862bf96.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/25.d4ca4f91.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/26.a9d31514.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/27.678360d8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/28.01bbdb4a.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/3.3d08d86c.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/4.4c193c95.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/5.dea68fdd.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/6.6d8c3d51.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/7.9617083c.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/8.53a1b2bd.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/9.1882ecda.js">
|
|
||||||
<link rel="stylesheet" href="/edu-dis-labs/assets/css/0.styles.683d4db1.css">
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div id="app" data-server-rendered="true"><div class="theme-container"><div class="theme-default-content"><h1>404</h1> <blockquote>There's nothing here.</blockquote> <a href="/edu-dis-labs/" class="router-link-active">
|
|
||||||
Take me home.
|
|
||||||
</a></div></div><div class="global-ui"><!----></div></div>
|
|
||||||
<script src="/edu-dis-labs/assets/js/app.ef1e786b.js" defer></script><script src="/edu-dis-labs/assets/js/14.2545c1ad.js" defer></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
ECL 2.0
|
||||||
|
|
||||||
|
Copyright (c) 2021 Andrey Boldak
|
||||||
|
|
||||||
|
Licensed under the
|
||||||
|
Educational Community License, Version 2.0 (the "License"); you may
|
||||||
|
not use this file except in compliance with the License. You may
|
||||||
|
obtain a copy of the License at
|
||||||
|
|
||||||
|
https://opensource.org/licenses/ECL-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing,
|
||||||
|
software distributed under the License is distributed on an "AS IS"
|
||||||
|
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||||
|
or implied. See the License for the specific language governing
|
||||||
|
permissions and limitations under the License.
|
|
@ -0,0 +1,62 @@
|
||||||
|
# Шаблон репозиторію для виконання лабораторних робіт з дисципліни "Розподілені інформаційні системи"
|
||||||
|
|
||||||
|
## Як використовувати
|
||||||
|
|
||||||
|
В цьому репозиторії знаходиться шаблон для виконання лабораторних робіт.
|
||||||
|
|
||||||
|
Для виконання лабораторних робіт необхідно зробити ```fork``` цього репозіторію, склонувати вже власний репозіторій та розміщувати документацію у відповідних діректоріях ```./docs```.
|
||||||
|
|
||||||
|
В цьому файлі необхідно вказати назву проекту. Коротку загальну характеристику
|
||||||
|
проекту, контактні дані виконавців.
|
||||||
|
|
||||||
|
|
||||||
|
Шаблон публікування підготовлено з використанням [VuePress](https://vuepress.vuejs.org/), та стартера
|
||||||
|
[FriendlyUser/vuepress-theme-cool-starter](https://github.com/FriendlyUser/vuepress-theme-cool-starter).
|
||||||
|
|
||||||
|
Щоб опублікувати проект у Github Pages, налаштовуємо Github Pages (гілка ```gh-pages```), змінюємо файл ```./publish.sh```
|
||||||
|
|
||||||
|
```sh {24}
|
||||||
|
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
# abort on errors
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# build
|
||||||
|
npm run docs:build
|
||||||
|
|
||||||
|
# navigate into the build output directory
|
||||||
|
cd docs/.vuepress/dist
|
||||||
|
|
||||||
|
# if you are deploying to a custom domain
|
||||||
|
# echo 'www.example.com' > CNAME
|
||||||
|
|
||||||
|
git init
|
||||||
|
git add -A
|
||||||
|
git commit -m 'deploy'
|
||||||
|
|
||||||
|
# if you are deploying to https://<USERNAME>.github.io
|
||||||
|
# git push -f git@github.com:boldak/<USERNAME>.github.io.git master
|
||||||
|
|
||||||
|
# if you are deploying to https://<USERNAME>.github.io/<REPO>
|
||||||
|
git push -f https://github.com/<USERNAME>/dis-edu.git master:gh-pages
|
||||||
|
|
||||||
|
cd -
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
Потім запускаємо
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run publish
|
||||||
|
```
|
||||||
|
|
||||||
|
Для відлагодження документації в локальному режимі запускаємо
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run docs:dev
|
||||||
|
```
|
||||||
|
|
||||||
|
Доступ до локально опублікованої версії документації [http://localhost:3030](http://localhost:3030)
|
||||||
|
|
||||||
|
***Happy learning! Happy coding!***
|
|
@ -1,32 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
||||||
<title>Xpertise</title>
|
|
||||||
<meta name="generator" content="VuePress 1.8.2">
|
|
||||||
<link rel="icon" href="/edu-dis-labs/favicon.ico">
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.5.1/katex.min.css">
|
|
||||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
|
||||||
<meta name="description" content="Лабораторні роботи з дисципліни "Організація баз даних"">
|
|
||||||
|
|
||||||
<link rel="preload" href="/edu-dis-labs/assets/css/0.styles.683d4db1.css" as="style"><link rel="preload" href="/edu-dis-labs/assets/js/app.ef1e786b.js" as="script"><link rel="preload" href="/edu-dis-labs/assets/js/2.1dcc2d74.js" as="script"><link rel="preload" href="/edu-dis-labs/assets/js/17.b51d0d04.js" as="script"><link rel="prefetch" href="/edu-dis-labs/assets/js/10.e50a5206.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/11.29ee89f8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/12.0b4fa948.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/13.6b4a3ce8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/14.2545c1ad.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/15.0aee5be2.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/16.ae758f43.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/18.51ffb2cf.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/19.85d5c25e.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/20.45f25853.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/21.c178c591.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/22.3dfa983e.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/23.58c0e73a.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/24.1862bf96.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/25.d4ca4f91.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/26.a9d31514.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/27.678360d8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/28.01bbdb4a.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/3.3d08d86c.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/4.4c193c95.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/5.dea68fdd.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/6.6d8c3d51.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/7.9617083c.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/8.53a1b2bd.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/9.1882ecda.js">
|
|
||||||
<link rel="stylesheet" href="/edu-dis-labs/assets/css/0.styles.683d4db1.css">
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/edu-dis-labs/" class="home-link router-link-active"><!----> <span class="site-name">Xpertise</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/edu-dis-labs/" class="nav-link">
|
|
||||||
Початок
|
|
||||||
</a></div> <a href="http://139.162.162.130:3000/hasslesstech/edu-dis-labs" target="_blank" rel="noopener noreferrer" class="repo-link">
|
|
||||||
Gitea
|
|
||||||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/edu-dis-labs/" class="nav-link">
|
|
||||||
Початок
|
|
||||||
</a></div> <a href="http://139.162.162.130:3000/hasslesstech/edu-dis-labs" target="_blank" rel="noopener noreferrer" class="repo-link">
|
|
||||||
Gitea
|
|
||||||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/edu-dis-labs/intro/" class="sidebar-link">Вступ</a></li><li><section class="sidebar-group collapsable depth-0"><a href="/edu-dis-labs/requirements/" class="sidebar-heading clickable"><span>Розроблення вимог до системи</span> <span class="arrow right"></span></a> <!----></section></li><li><a href="/edu-dis-labs/use-cases/" class="sidebar-link">Розроблення вимог до функціональности системи</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#загальна-схема" class="sidebar-link">Загальна схема</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#схеми-використання-для-окремих-діячів" class="sidebar-link">Схеми використання для окремих діячів</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#сценаріі-використання" class="sidebar-link">Сценарії використання</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#для-гостя" class="sidebar-link">Для гостя</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#для-зареєстрованого-користувача" class="sidebar-link">Для зареєстрованого користувача</a></li></ul></li></ul></li><li><a href="/edu-dis-labs/design/" class="sidebar-link">Проєктування архітектури системи</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/design/#be-модель" class="sidebar-link">BE модель</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/design/#er-модель" class="sidebar-link">ER-модель</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/design/#реляціина-схема" class="sidebar-link">Реляційна схема</a></li></ul></li><li><a href="/edu-dis-labs/software/" class="sidebar-link">Реалізація інформаційного та програмного забезпечення</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/software/#sql-скрипт-для-створення-та-початкового-наповнення-бази-даних" class="sidebar-link">SQL-скрипт для створення та початкового наповнення бази даних</a></li></ul></li><li><a href="/edu-dis-labs/test/" class="sidebar-link">Тестування працездатності системи</a></li><li><a href="/edu-dis-labs/conclusion/" class="sidebar-link">Висновки</a></li><li><a href="/edu-dis-labs/api/" aria-current="page" class="active sidebar-link">API</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"></div> <footer class="page-edit"><!----> <div class="last-updated"><span class="prefix">Останнє оновлення:</span> <span class="time">8/30/2021, 5:54:57 PM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
|
|
||||||
←
|
|
||||||
<a href="/edu-dis-labs/conclusion/" class="prev">
|
|
||||||
Висновки
|
|
||||||
</a></span> <!----></p></div> </main></div><div class="global-ui"><!----></div></div>
|
|
||||||
<script src="/edu-dis-labs/assets/js/app.ef1e786b.js" defer></script><script src="/edu-dis-labs/assets/js/2.1dcc2d74.js" defer></script><script src="/edu-dis-labs/assets/js/17.b51d0d04.js" defer></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="12" height="13"><g stroke-width="2" stroke="#aaa" fill="none"><path d="M11.29 11.71l-4-4"/><circle cx="5" cy="5" r="4"/></g></svg>
|
|
Before Width: | Height: | Size: 216 B |
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{566:function(n,o,e){},654:function(n,o,e){"use strict";e.r(o);e(566);var l={name:"Styles"},t=e(34),u=Object(t.a)(l,void 0,void 0,!1,null,null,null);o.default=u.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{619:function(t,a,s){t.exports=s.p+"assets/img/relational_scheme.50c04084.png"},644:function(t,a,s){"use strict";s.r(a);var r=s(34),e=Object(r.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"проєктування-бази-даних"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#проєктування-бази-даних"}},[t._v("#")]),t._v(" Проєктування бази даних")]),t._v(" "),r("h2",{attrs:{id:"be-модель"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#be-модель"}},[t._v("#")]),t._v(" BE модель")]),t._v(" "),r("center",{staticStyle:{"border-radius":"4px",border:"1px solid #cfd7e6","box-shadow":"0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025)",padding:"1em"}},[r("img",{attrs:{src:"https://www.plantuml.com/plantuml/svg/VPJBReCm44Nt_Wh4CWeesKTHKYcBI8ZqmQ9TMZ1ghGQ3_4YRlwzji0EswP8vTsRiUoqEN60cP7j52AWWufuSwxgJL2IxtQcipjN7Vk-HN79W5BUW9DNflGe5FURyfsFDGs0LRvBTu1wPFO0yEdPaZMHOa8ukSSAViJgQtlfqkHIdOncHb6h1N64bBnBuEDu_d4MvW5yHNkeLUD_H6YAT5kKtV9KGjXQ4VaVQT5dPZ3-X82tHAyzbvM4sZbvMA3FulwrnscFnDJbfa7gMhMpIA4Xy2j4qL0s6R-Jd6I8NPGmD4Ku8yktAf8AwY29EUT2Ob4NrVjqOysX7NhY6s1f2yqTZe2qvKvDqkzwcQasIRjQhT7vL7xfkzr970RCAjzoDtom8pBiRQdg-cMFTF01jr0_X3m00",alt:"uml diagram"}})]),t._v(" "),r("h2",{attrs:{id:"er-модель"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#er-модель"}},[t._v("#")]),t._v(" ER-модель")]),t._v(" "),r("center",{staticStyle:{"border-radius":"4px",border:"1px solid #cfd7e6","box-shadow":"0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025)",padding:"1em"}},[r("img",{attrs:{src:"https://www.plantuml.com/plantuml/svg/XL9TIyCm57tFhmXzShB1kiqYPPHL6JWedMvzyJ4q5mskQSd7T8Z_tIuDQQspvYavzvvpSWzt9HKHIXS7X80hfauuplDISuMNotMQRRBdACAV2DU7qN2JPkQg9GXE2WZl7-BTLR0O6RGYKhwNWZRex2OOeIydkmDPbJo7GTqZEMWhwWVpsqLNu4c3LApaWm8AFjH5-xqMHpWDSjk13FSCKIt8sRC7C_b8wWXeUBVT9kiujM1Q2xHOwvqm_lPVdD8zX0rATiha1H9MCFMhwITQ4VNQV7K-CyExqBtf-Dh3aqc4FN_iUovCv5BjTpI18PjRlsgN19dH_g1UCfzsoMW5dDQhzmq0",alt:"uml diagram"}})]),t._v(" "),r("h2",{attrs:{id:"реляціина-схема"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#реляціина-схема"}},[t._v("#")]),t._v(" Реляційна схема")]),t._v(" "),r("center",{staticStyle:{"border-radius":"4px",border:"1px solid #cfd7e6","box-shadow":"0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025)",padding:"1em"}},[r("p",[r("img",{attrs:{src:s(619),alt:"relational_schema"}})])])],1)}),[],!1,null,null,null);a.default=e.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{635:function(e,a,t){"use strict";t.r(a);var n={name:"my-component",components:{VueGoodTable:t(85).a},data:function(){return{columns:[{label:"Name",field:"name"},{label:"Age",field:"age",type:"number"},{label:"Created On",field:"createdAt",type:"date",dateInputFormat:"yyyy-mm-dd",dateOutputFormat:"MMM Do yy"},{label:"Percent",field:"score",type:"percentage"}],rows:[{id:1,name:"John",age:20,createdAt:"2011-10-31",score:.03343},{id:2,name:"Jane",age:24,createdAt:"2019-10-31",score:.03343},{id:3,name:"Susan",age:16,createdAt:"2011-10-30",score:.03343},{id:4,name:"Chris",age:55,createdAt:"2011-10-11",score:.03343},{id:5,name:"Dan",age:40,createdAt:"2011-10-21",score:.03343},{id:6,name:"John",age:20,createdAt:"2011-10-31",score:.03343}]}}},r=t(34),o=Object(r.a)(n,(function(){var e=this.$createElement,a=this._self._c||e;return a("div",[a("vue-good-table",{attrs:{columns:this.columns,rows:this.rows}})],1)}),[],!1,null,null,null);a.default=o.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[14],{633:function(t,e,s){"use strict";s.r(e);var n=["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."],o={methods:{getMsg:function(){return n[Math.floor(Math.random()*n.length)]}}},i=s(34),h=Object(i.a)(o,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"theme-container"},[e("div",{staticClass:"theme-default-content"},[e("h1",[this._v("404")]),this._v(" "),e("blockquote",[this._v(this._s(this.getMsg()))]),this._v(" "),e("RouterLink",{attrs:{to:"/"}},[this._v("\n Take me home.\n ")])],1)])}),[],!1,null,null,null);e.default=h.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{637:function(t,n,e){"use strict";e.r(n);e(10),e(15),e(17);var i={name:"mermaid",mounted:function(){e.e(27).then(e.t.bind(null,630,7)).then((function(t){t.initialize({startOnLoad:!0}),t.init()}))}},a=e(34),l=Object(a.a)(i,(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"mermaid"},[this._t("default")],2)}),[],!1,null,null,null);n.default=l.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[16],{641:function(r,e,t){"use strict";t.r(e);var n=t(34),a=Object(n.a)({},(function(){var r=this,e=r.$createElement,t=r._self._c||e;return t("ContentSlotsDistributor",{attrs:{"slot-key":r.$parent.slotKey}},[t("p",[t("strong",[r._v("Виконали:")])]),r._v(" "),t("p",[t("em",[r._v("студенти 2-го курсу, групи ІО-23:")])]),r._v(" "),t("p",[t("em",[r._v("Олег ШМУЛЯР [shmuliar1@ukr.net, "),t("a",{attrs:{href:"https://t.me/dmytrofiot23",target:"_blank",rel:"noopener noreferrer"}},[r._v("@dmytrofiot23"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("em",[r._v("Андрій БОДНАР [bodnarandrew123@gmail.com, "),t("a",{attrs:{href:"https://t.me/andrux4",target:"_blank",rel:"noopener noreferrer"}},[r._v("@andrux4"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("em",[r._v("Андрій ШВЕД [andreyfrog26@gmail.com, "),t("a",{attrs:{href:"https://t.me/Rhinemann",target:"_blank",rel:"noopener noreferrer"}},[r._v("@Rhinemann"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("em",[r._v("Євгеній ГОЛОВАТЕНКО [ievgeniigol@gmail.com, "),t("a",{attrs:{href:"https://t.me/yevholova",target:"_blank",rel:"noopener noreferrer"}},[r._v("@yevholova"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("em",[r._v("Вікторія ВОДЯНА [vodyanayaviktoria@gmail.com, "),t("a",{attrs:{href:"https://t.me/victoriavodyana",target:"_blank",rel:"noopener noreferrer"}},[r._v("@victoriavodyana"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("em",[r._v("Михайло КОРБУТ [korbutmykhailo@gmail.com, "),t("a",{attrs:{href:"https://t.me/misha1tigr",target:"_blank",rel:"noopener noreferrer"}},[r._v("@misha1tigr"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("em",[r._v("Олександр ГУРАНЕЦЬ [bacant150@gmail.com, "),t("a",{attrs:{href:"https://t.me/Bacant150",target:"_blank",rel:"noopener noreferrer"}},[r._v("@Bacant150"),t("OutboundLink")],1),r._v("]")])]),r._v(" "),t("p",[t("strong",[r._v("Керівник")])]),r._v(" "),t("p",[t("em",[r._v("доцент кафедри ОТ ФІОТ, к.т.н., доцент")]),t("span",{attrs:{"padding-right:5em":""}}),r._v(" "),t("strong",[r._v("Андрій БОЛДАК")])]),r._v(" "),t("p",[t("a",{attrs:{href:"https://kpi.ua/",target:"_blank",rel:"noopener noreferrer"}},[r._v('НТУУ "КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ імені ІГОРЯ СІКОРСЬКОГО'),t("OutboundLink")],1)]),r._v(" "),t("p",[t("a",{attrs:{href:"https://fiot.kpi.ua/",target:"_blank",rel:"noopener noreferrer"}},[r._v("Факультет інформатики та обчислювальної техніки"),t("OutboundLink")],1)]),r._v(" "),t("p",[t("a",{attrs:{href:"https://comsys.kpi.ua/",target:"_blank",rel:"noopener noreferrer"}},[r._v("Кафедра обчислювальної техніки"),t("OutboundLink")],1)]),r._v(" "),t("p",[r._v("Київ")])])}),[],!1,null,null,null);e.default=a.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[17],{642:function(t,e,n){"use strict";n.r(e);var s=n(34),l=Object(s.a)({},(function(){var t=this.$createElement;return(this._self._c||t)("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}})}),[],!1,null,null,null);e.default=l.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{643:function(t,n,e){"use strict";e.r(n);var s=e(34),r=Object(s.a)({},(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"висновки"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#висновки"}},[t._v("#")]),t._v(" Висновки")]),t._v(" "),e("p",[t._v("У висновках наводять оцінку отриманих результатів, можливі галузі його використання. Висновки повинні містити в собі коротку узагальнену оцінку результатів розробки, у\nтому числі і з погляду на їх технічно-економічну ефективність. Необхідно порівняти\nотримані результати усіх характеристик об’єкта проєктування із завданням і з основними показниками сучасних аналогічних об’єктів.")]),t._v(" "),e("p",[t._v("Необхідно вказати яке нове технічне рішення покладене в основу проєкту і у чому її\nпереваги, що нового було запропоновано самим студентом.")]),t._v(" "),e("p",[t._v("На базі отриманих висновків можуть надаватися рекомендації по використанню розробки. Вони повинні\nмати конкретний характер і бути цілком підтверджені проєктом.")])])}),[],!1,null,null,null);n.default=r.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[19],{645:function(t,n,e){"use strict";e.r(n);var s=e(34),r=Object(s.a)({},(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"вступ"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#вступ"}},[t._v("#")]),t._v(" Вступ")]),t._v(" "),e("p",[t._v("У вступі описується мета роботи і розглядається поставлене завдання з позиції її\nактуальності, значення її розв’язання для тієї предметної області, до якої відноситься\nтема бакалаврського проєкту.")]),t._v(" "),e("p",[t._v("Коротко характеризується сучасний рівень розв’язання\nданого завдання і взаємозв’язок з іншими проєктами по цій тематиці.")]),t._v(" "),e("p",[t._v("Наводяться\nосновні технічні характеристики розробки й очікуваний технічно-економічний ефект\nвід її реалізації.")])])}),[],!1,null,null,null);n.default=r.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{646:function(t,s,e){"use strict";e.r(s);var r=e(34),i=Object(r.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"розроблення-загальних-вимог-до-системи"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#розроблення-загальних-вимог-до-системи"}},[this._v("#")]),this._v(" Розроблення загальних вимог до системи")]),this._v(" "),s("ul",[s("li",[s("RouterLink",{attrs:{to:"/requirements/state-of-the-art.html"}},[this._v("Аналіз предметної області")])],1),this._v(" "),s("li",[s("RouterLink",{attrs:{to:"/requirements/stakeholders-needs.html"}},[this._v("Запити зацікавлених осіб")])],1)])])}),[],!1,null,null,null);s.default=i.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{647:function(e,r,t){"use strict";t.r(r);var o=t(34),n=Object(o.a)({},(function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("p",[e._v("Серед наявних наразі сервісів порівняймо такі:")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://uk.wikipedia.org/wiki/Google_%D0%A4%D0%BE%D1%80%D0%BC%D0%B8",target:"_blank",rel:"noopener noreferrer"}},[e._v("Google Forms"),t("OutboundLink")],1),e._v(" -\nпрограмне забезпечення для адміністрування опитування, що входить до складу безкоштовного\nвебпакету Google Docs Editors, пропонованого Google. Google Форми доступні лише як вебдодаток.\nДодаток дозволяє користувачам створювати та редагувати опитування в Інтернеті, співпрацюючи з\nіншими користувачами в режимі реального часу.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://en.wikipedia.org/wiki/SurveyMonkey",target:"_blank",rel:"noopener noreferrer"}},[e._v("SurveyMonkey"),t("OutboundLink")],1),e._v(" - компанія, що зокрема пропонує\nхмарне програмне забезпечення задля опитування працівників, клієнтів та інших категорій\nлюдей.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://www.responsly.com",target:"_blank",rel:"noopener noreferrer"}},[e._v("Responsly"),t("OutboundLink")],1),e._v(" - платформа для створення опитувань з можливостями їх\nгенерації за допомогою штучного інтелекту. Має зроблені заздалегідь шаблони для типових\nопитувань та конструктор власних.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://www.jotform.com/",target:"_blank",rel:"noopener noreferrer"}},[e._v("Jotform"),t("OutboundLink")],1),e._v(" - це компанія, що надає послуги зі створення онлайн-форм.\nНадає можливість вбудовування оплати безпосередньо у створені форми.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://www.questionpro.com/",target:"_blank",rel:"noopener noreferrer"}},[e._v("QuestionPro"),t("OutboundLink")],1),e._v(" - онлайн-сервіс для створення опитувань з можливістю обирати готові шаблони.")]),e._v(" "),t("p",[t("a",{attrs:{href:"https://www.fillout.com",target:"_blank",rel:"noopener noreferrer"}},[e._v("Fillout"),t("OutboundLink")],1),e._v(" - платформа для створення онлайн-форм, що робить акцент на застосуванні штучного інтелекту та розширених можливостях, зокрема отримання платежів та розгалуженій логіці переходів.")])])}),[],!1,null,null,null);r.default=n.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{651:function(t,s,e){"use strict";e.r(s);var n=e(34),r=Object(n.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"тестування-працездатності-системи"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#тестування-працездатності-системи"}},[this._v("#")]),this._v(" Тестування працездатності системи")]),this._v(" "),s("p",[s("em",[this._v("В цьому розділі необхідно вказати засоби тестування, навести вихідні коди тестів та результати тестування.")])])])}),[],!1,null,null,null);s.default=r.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{629:function(n,e,t){"use strict";t.r(e),t.d(e,"register",(function(){return o})),t.d(e,"unregister",(function(){return c}));var r;function o(n,e){void 0===e&&(e={});var t=e.registrationOptions;void 0===t&&(t={}),delete e.registrationOptions;var o=function(n){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];e&&e[n]&&e[n].apply(e,t)};"serviceWorker"in navigator&&r.then((function(){Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))?(!function(n,e,t){fetch(n).then((function(r){404===r.status?(e("error",new Error("Service worker not found at "+n)),c()):-1===r.headers.get("content-type").indexOf("javascript")?(e("error",new Error("Expected "+n+" to have javascript content-type, but received "+r.headers.get("content-type"))),c()):a(n,e,t)})).catch((function(n){return i(e,n)}))}(n,o,t),navigator.serviceWorker.ready.then((function(n){o("ready",n)})).catch((function(n){return i(o,n)}))):(a(n,o,t),navigator.serviceWorker.ready.then((function(n){o("ready",n)})).catch((function(n){return i(o,n)})))}))}function i(n,e){navigator.onLine||n("offline"),n("error",e)}function a(n,e,t){navigator.serviceWorker.register(n,t).then((function(n){e("registered",n),n.waiting?e("updated",n):n.onupdatefound=function(){e("updatefound",n);var t=n.installing;t.onstatechange=function(){"installed"===t.state&&(navigator.serviceWorker.controller?e("updated",n):e("cached",n))}}})).catch((function(n){return i(e,n)}))}function c(){"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(n){n.unregister()})).catch((function(n){return i(emit,n)}))}"undefined"!=typeof window&&(r="undefined"!=typeof Promise?new Promise((function(n){return window.addEventListener("load",n)})):{then:function(n){return window.addEventListener("load",n)}})}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{585:function(t,e,i){},620:function(t,e,i){"use strict";i(585)},634:function(t,e,i){"use strict";i.r(e);var n={name:"Details",props:{title:{type:String,default:"title"},content:{type:String,default:"title"}}},s=(i(620),i(34)),l=Object(s.a)(n,(function(){var t=this.$createElement,e=this._self._c||t;return e("details",[e("summary",[this._v(this._s(this.title))]),this._v(this._s(this.content)+" ")])}),[],!1,null,"5c5bfe02",null);e.default=l.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{590:function(t,e,n){},626:function(t,e,n){"use strict";n(590)},655:function(t,e,n){"use strict";n.r(e);var i={functional:!0,props:{type:{type:String,default:"tip"},text:String,vertical:{type:String,default:"top"}},render:function(t,e){var n=e.props,i=e.slots;return t("span",{class:["badge",n.type],style:{verticalAlign:n.vertical}},n.text||i().default)}},r=(n(626),n(34)),p=Object(r.a)(i,void 0,void 0,!1,null,"15b7b770",null);e.default=p.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{591:function(t,e,a){},627:function(t,e,a){"use strict";a(591)},639:function(t,e,a){"use strict";a.r(e);var n={name:"CodeBlock",props:{title:{type:String,required:!0},active:{type:Boolean,default:!1}},mounted:function(){this.$parent&&this.$parent.loadTabs&&this.$parent.loadTabs()}},i=(a(627),a(34)),s=Object(i.a)(n,(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"theme-code-block",class:{"theme-code-block__active":this.active}},[this._t("default")],2)}),[],!1,null,"759a7d02",null);e.default=s.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{592:function(e,t,a){},628:function(e,t,a){"use strict";a(592)},640:function(e,t,a){"use strict";a.r(t);a(90),a(41),a(134),a(135);var o={name:"CodeGroup",data:function(){return{codeTabs:[],activeCodeTabIndex:-1}},watch:{activeCodeTabIndex:function(e){this.activateCodeTab(e)}},mounted:function(){this.loadTabs()},methods:{changeCodeTab:function(e){this.activeCodeTabIndex=e},loadTabs:function(){var e=this;this.codeTabs=(this.$slots.default||[]).filter((function(e){return Boolean(e.componentOptions)})).map((function(t,a){return""===t.componentOptions.propsData.active&&(e.activeCodeTabIndex=a),{title:t.componentOptions.propsData.title,elm:t.elm}})),-1===this.activeCodeTabIndex&&this.codeTabs.length>0&&(this.activeCodeTabIndex=0),this.activateCodeTab(0)},activateCodeTab:function(e){this.codeTabs.forEach((function(e){e.elm&&e.elm.classList.remove("theme-code-block__active")})),this.codeTabs[e].elm&&this.codeTabs[e].elm.classList.add("theme-code-block__active")}}},n=(a(628),a(34)),c=Object(n.a)(o,(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ClientOnly",[a("div",{staticClass:"theme-code-group"},[a("div",{staticClass:"theme-code-group__nav"},[a("ul",{staticClass:"theme-code-group__ul"},e._l(e.codeTabs,(function(t,o){return a("li",{key:t.title,staticClass:"theme-code-group__li"},[a("button",{staticClass:"theme-code-group__nav-tab",class:{"theme-code-group__nav-tab-active":o===e.activeCodeTabIndex},on:{click:function(t){return e.changeCodeTab(o)}}},[e._v("\n "+e._s(t.title)+"\n ")])])})),0)]),e._v(" "),e._t("default"),e._v(" "),e.codeTabs.length<1?a("pre",{staticClass:"pre-blank"},[e._v("// Make sure to add code blocks to your code group")]):e._e()],2)])}),[],!1,null,"deefee04",null);t.default=c.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{589:function(n,t,s){},625:function(n,t,s){"use strict";s(589)},638:function(n,t,s){"use strict";s.r(t);var i={name:"pros-cons",props:{intro:{type:String,required:!0},good:{type:Array,default:null},bad:{type:Array,default:null}}},a=(s(625),s(34)),e=Object(a.a)(i,(function(){var n=this,t=n.$createElement,s=n._self._c||t;return s("div",[s("p",{staticClass:"intro"},[n._v("\n "+n._s(n.intro)+"\n ")]),n._v(" "),s("div",{staticClass:"comparison"},[s("div",{staticClass:"comparison__container"},[n._m(0),n._v(" "),s("ul",n._l(n.good,(function(n){return s("li",{key:n,domProps:{innerHTML:n}})})),0)]),n._v(" "),s("div",{staticClass:"comparison__container comparison__container--donts"},[n._m(1),n._v(" "),s("ul",n._l(n.bad,(function(n){return s("li",{key:n,domProps:{innerHTML:n}})})),0)])])])}),[function(){var n=this.$createElement,t=this._self._c||n;return t("div",{staticClass:"comparison__heading"},[t("i",{staticClass:"material-icons blue-text"},[this._v("check")]),this._v("\n Pros\n ")])},function(){var n=this.$createElement,t=this._self._c||n;return t("div",{staticClass:"comparison__heading comparison__heading--donts"},[t("i",{staticClass:"material-icons"},[this._v("close")]),this._v("\n Cons\n ")])}],!1,null,"541222b7",null);t.default=e.exports}}]);
|
|
|
@ -1 +0,0 @@
|
||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{566:function(n,o,e){},653:function(n,o,e){"use strict";e.r(o);e(566);var l={name:"Styles"},t=e(34),u=Object(t.a)(l,void 0,void 0,!1,null,null,null);o.default=u.exports}}]);
|
|
|
@ -1,40 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
||||||
<title>Висновки | Xpertise</title>
|
|
||||||
<meta name="generator" content="VuePress 1.8.2">
|
|
||||||
<link rel="icon" href="/edu-dis-labs/favicon.ico">
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.5.1/katex.min.css">
|
|
||||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
|
||||||
<meta name="description" content="Лабораторні роботи з дисципліни "Організація баз даних"">
|
|
||||||
|
|
||||||
<link rel="preload" href="/edu-dis-labs/assets/css/0.styles.683d4db1.css" as="style"><link rel="preload" href="/edu-dis-labs/assets/js/app.ef1e786b.js" as="script"><link rel="preload" href="/edu-dis-labs/assets/js/2.1dcc2d74.js" as="script"><link rel="preload" href="/edu-dis-labs/assets/js/18.51ffb2cf.js" as="script"><link rel="prefetch" href="/edu-dis-labs/assets/js/10.e50a5206.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/11.29ee89f8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/12.0b4fa948.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/13.6b4a3ce8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/14.2545c1ad.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/15.0aee5be2.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/16.ae758f43.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/17.b51d0d04.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/19.85d5c25e.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/20.45f25853.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/21.c178c591.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/22.3dfa983e.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/23.58c0e73a.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/24.1862bf96.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/25.d4ca4f91.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/26.a9d31514.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/27.678360d8.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/28.01bbdb4a.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/3.3d08d86c.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/4.4c193c95.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/5.dea68fdd.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/6.6d8c3d51.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/7.9617083c.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/8.53a1b2bd.js"><link rel="prefetch" href="/edu-dis-labs/assets/js/9.1882ecda.js">
|
|
||||||
<link rel="stylesheet" href="/edu-dis-labs/assets/css/0.styles.683d4db1.css">
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/edu-dis-labs/" class="home-link router-link-active"><!----> <span class="site-name">Xpertise</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/edu-dis-labs/" class="nav-link">
|
|
||||||
Початок
|
|
||||||
</a></div> <a href="http://139.162.162.130:3000/hasslesstech/edu-dis-labs" target="_blank" rel="noopener noreferrer" class="repo-link">
|
|
||||||
Gitea
|
|
||||||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/edu-dis-labs/" class="nav-link">
|
|
||||||
Початок
|
|
||||||
</a></div> <a href="http://139.162.162.130:3000/hasslesstech/edu-dis-labs" target="_blank" rel="noopener noreferrer" class="repo-link">
|
|
||||||
Gitea
|
|
||||||
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/edu-dis-labs/intro/" class="sidebar-link">Вступ</a></li><li><section class="sidebar-group collapsable depth-0"><a href="/edu-dis-labs/requirements/" class="sidebar-heading clickable"><span>Розроблення вимог до системи</span> <span class="arrow right"></span></a> <!----></section></li><li><a href="/edu-dis-labs/use-cases/" class="sidebar-link">Розроблення вимог до функціональности системи</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#загальна-схема" class="sidebar-link">Загальна схема</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#схеми-використання-для-окремих-діячів" class="sidebar-link">Схеми використання для окремих діячів</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#сценаріі-використання" class="sidebar-link">Сценарії використання</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#для-гостя" class="sidebar-link">Для гостя</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/use-cases/#для-зареєстрованого-користувача" class="sidebar-link">Для зареєстрованого користувача</a></li></ul></li></ul></li><li><a href="/edu-dis-labs/design/" class="sidebar-link">Проєктування архітектури системи</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/design/#be-модель" class="sidebar-link">BE модель</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/design/#er-модель" class="sidebar-link">ER-модель</a></li><li class="sidebar-sub-header"><a href="/edu-dis-labs/design/#реляціина-схема" class="sidebar-link">Реляційна схема</a></li></ul></li><li><a href="/edu-dis-labs/software/" class="sidebar-link">Реалізація інформаційного та програмного забезпечення</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/edu-dis-labs/software/#sql-скрипт-для-створення-та-початкового-наповнення-бази-даних" class="sidebar-link">SQL-скрипт для створення та початкового наповнення бази даних</a></li></ul></li><li><a href="/edu-dis-labs/test/" class="sidebar-link">Тестування працездатності системи</a></li><li><a href="/edu-dis-labs/conclusion/" aria-current="page" class="active sidebar-link">Висновки</a></li><li><a href="/edu-dis-labs/api/" class="sidebar-link">API</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="висновки"><a href="#висновки" class="header-anchor">#</a> Висновки</h1> <p>У висновках наводять оцінку отриманих результатів, можливі галузі його використання. Висновки повинні містити в собі коротку узагальнену оцінку результатів розробки, у
|
|
||||||
тому числі і з погляду на їх технічно-економічну ефективність. Необхідно порівняти
|
|
||||||
отримані результати усіх характеристик об’єкта проєктування із завданням і з основними показниками сучасних аналогічних об’єктів.</p> <p>Необхідно вказати яке нове технічне рішення покладене в основу проєкту і у чому її
|
|
||||||
переваги, що нового було запропоновано самим студентом.</p> <p>На базі отриманих висновків можуть надаватися рекомендації по використанню розробки. Вони повинні
|
|
||||||
мати конкретний характер і бути цілком підтверджені проєктом.</p></div> <footer class="page-edit"><!----> <div class="last-updated"><span class="prefix">Останнє оновлення:</span> <span class="time">8/30/2021, 5:54:57 PM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
|
|
||||||
←
|
|
||||||
<a href="/edu-dis-labs/test/" class="prev">
|
|
||||||
Тестування працездатності системи
|
|
||||||
</a></span> <span class="next"><a href="/edu-dis-labs/api/">
|
|
||||||
API
|
|
||||||
</a>
|
|
||||||
→
|
|
||||||
</span></p></div> </main></div><div class="global-ui"><!----></div></div>
|
|
||||||
<script src="/edu-dis-labs/assets/js/app.ef1e786b.js" defer></script><script src="/edu-dis-labs/assets/js/2.1dcc2d74.js" defer></script><script src="/edu-dis-labs/assets/js/18.51ffb2cf.js" defer></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
css
|
||||||
|
dist
|
|
@ -0,0 +1,39 @@
|
||||||
|
<template>
|
||||||
|
<details><summary>{{title}}</summary>{{content}} </details>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'Details',
|
||||||
|
props: {
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
default: "title"
|
||||||
|
},
|
||||||
|
content: {
|
||||||
|
type: String,
|
||||||
|
default: "title"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped lang="styl">
|
||||||
|
details {
|
||||||
|
border-radius: 3px;
|
||||||
|
background: #EEE;
|
||||||
|
}
|
||||||
|
details summary {
|
||||||
|
font-size: 17px;
|
||||||
|
vertical-align: top;
|
||||||
|
background: #333;
|
||||||
|
color: #FFF;
|
||||||
|
border-radius: 3px;
|
||||||
|
/* padding: 5px 10px; */
|
||||||
|
padding: 5px 0px;
|
||||||
|
outline: none;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,324 @@
|
||||||
|
<template>
|
||||||
|
<!--container-->
|
||||||
|
<section class="container">
|
||||||
|
|
||||||
|
<!-- transition -->
|
||||||
|
<transition :duration="{ enter: 500, leave: 300 }" enter-active-class="animated zoomIn" leave-active-class="animated zoomOut" mode="out-in">
|
||||||
|
|
||||||
|
<!--questionContainer-->
|
||||||
|
<div class="questionContainer" v-if="questionIndex<quiz.questions.length" v-bind:key="questionIndex">
|
||||||
|
<header>
|
||||||
|
<div class="shell">
|
||||||
|
<div class="bar" :style="{width: questionIndex/quiz.questions.length*100 + '%' }">
|
||||||
|
<span>{{(questionIndex/quiz.questions.length)*100}}%</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<!--/progress-->
|
||||||
|
|
||||||
|
<!-- questionTitle -->
|
||||||
|
<h2 class="titleContainer title">{{ quiz.questions[questionIndex] && quiz.questions[questionIndex].text }}</h2>
|
||||||
|
<!-- /questionTitle -->
|
||||||
|
<!-- quizOptions -->
|
||||||
|
<div class="optionContainer" v-if="quiz.questions[questionIndex]">
|
||||||
|
<div class="option" v-for="(response, index) in quiz.questions[questionIndex].responses" @click="selectOption(index)" :class="{ 'is-selected': userResponses[questionIndex] == index}" :key="index">
|
||||||
|
{{ index | charIndex }}. {{ response.text || "Mpthasdng"}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!--quizFooter: navigation and progress-->
|
||||||
|
<footer class="questionFooter">
|
||||||
|
|
||||||
|
<!--pagination-->
|
||||||
|
<nav class="pagination" role="navigation" aria-label="pagination">
|
||||||
|
|
||||||
|
<!-- back button -->
|
||||||
|
<a class="button" v-on:click="prev();" :disabled="questionIndex < 1">
|
||||||
|
Back
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<!-- next button -->
|
||||||
|
<a class="button" :class="(userResponses[questionIndex]==null)?'':'is-active'" v-on:click="next();" :disabled="questionIndex>=quiz.questions.length">
|
||||||
|
{{ (userResponses[questionIndex]==null)?'Skip':'Next' }}
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</nav>
|
||||||
|
<!--/pagination-->
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
<!--/quizFooter-->
|
||||||
|
</div>
|
||||||
|
<!--/questionBox-->
|
||||||
|
<!--quizCompletedResult-->
|
||||||
|
<div v-if="questionIndex >= quiz.questions.length" v-bind:key="questionIndex" class="quizCompleted has-text-centered">
|
||||||
|
<!-- quizCompletedIcon: Achievement Icon -->
|
||||||
|
<span class="icon">
|
||||||
|
<i class="fa" :class="score() > 3 ?'fa-check-circle-o is-active':'fa-times-circle'"></i>
|
||||||
|
</span>
|
||||||
|
|
||||||
|
<!--resultTitleBlock-->
|
||||||
|
<h2 class="title">
|
||||||
|
You did {{ (score() / quiz.questions.length > 0.7 ?'an amazing':(score() / quiz.questions.length < 0.4 ?'a poor':'a good')) }} job!
|
||||||
|
</h2>
|
||||||
|
<p class="subtitle">
|
||||||
|
Total score: {{ score() }} / {{ quiz.questions.length }}
|
||||||
|
</p>
|
||||||
|
<br>
|
||||||
|
<a class="button" @click="restart()">restart <i class="fa fa-refresh"></i></a>
|
||||||
|
<!--/resultTitleBlock-->
|
||||||
|
</div>
|
||||||
|
</transition>
|
||||||
|
<!--/quizCompetedResult-->
|
||||||
|
</section>
|
||||||
|
<!--/container-->
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import * as quizzes from '../quizzes'
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default {
|
||||||
|
name: 'Quiz',
|
||||||
|
props: {
|
||||||
|
quizNum: Number
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
let quizData
|
||||||
|
switch (this.quizNum) {
|
||||||
|
case 1:
|
||||||
|
quizData = quizzes.quiz1
|
||||||
|
break
|
||||||
|
case 2:
|
||||||
|
quizData = quizzes.quiz2
|
||||||
|
break
|
||||||
|
default:
|
||||||
|
quizData = quizzes.quiz1
|
||||||
|
break
|
||||||
|
}
|
||||||
|
const userResponseSkelaton = Array(quizData.questions.length).fill(null);
|
||||||
|
return {
|
||||||
|
quiz: quizData,
|
||||||
|
questionIndex: 0,
|
||||||
|
userResponses: userResponseSkelaton,
|
||||||
|
isActive: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
filters: {
|
||||||
|
charIndex: function(i) {
|
||||||
|
return String.fromCharCode(97 + i);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
restart: function(){
|
||||||
|
this.questionIndex=0;
|
||||||
|
this.userResponses=Array(this.quiz.questions.length).fill(null);
|
||||||
|
},
|
||||||
|
selectOption: function(index) {
|
||||||
|
this.$set(this.userResponses, this.questionIndex, index);
|
||||||
|
},
|
||||||
|
next: function() {
|
||||||
|
if (this.questionIndex < this.quiz.questions.length)
|
||||||
|
this.questionIndex++;
|
||||||
|
},
|
||||||
|
|
||||||
|
prev: function() {
|
||||||
|
if (this.quiz.questions.length > 0) this.questionIndex--;
|
||||||
|
},
|
||||||
|
// Return "true" count in userResponses
|
||||||
|
score: function() {
|
||||||
|
var score = 0;
|
||||||
|
for (let i = 0; i < this.userResponses.length; i++) {
|
||||||
|
if (
|
||||||
|
typeof this.quiz.questions[i].responses[
|
||||||
|
this.userResponses[i]
|
||||||
|
] !== "undefined" &&
|
||||||
|
this.quiz.questions[i].responses[this.userResponses[i]].correct
|
||||||
|
) {
|
||||||
|
score = score + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// calculate percentage
|
||||||
|
return score;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped>
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Montserrat:400,400i,700");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700");
|
||||||
|
.button {
|
||||||
|
transition: 0.3s;
|
||||||
|
}
|
||||||
|
.title, .subtitle {
|
||||||
|
font-family: Montserrat, sans-serif;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
.animated {
|
||||||
|
transition-duration: 0.15s;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
margin: 0 0.5rem;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.questionBox {
|
||||||
|
max-width: 30rem;
|
||||||
|
width: 30rem;
|
||||||
|
min-height: 30rem;
|
||||||
|
position: relative;
|
||||||
|
display: flex;
|
||||||
|
border-radius: 0.5rem;
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
|
||||||
|
}
|
||||||
|
.questionContainer header {
|
||||||
|
background-color: rgba(124, 32, 32, 0.025);
|
||||||
|
background: rgba(124, 32, 32, 0.025);
|
||||||
|
padding: 1.5rem;
|
||||||
|
text-align: center;
|
||||||
|
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.questionContainer header h1 {
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
.progressContainer {
|
||||||
|
width: 60%;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titleContainer {
|
||||||
|
text-align: center;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 1.5rem;
|
||||||
|
}
|
||||||
|
.quizForm {
|
||||||
|
display: block;
|
||||||
|
white-space: normal;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.quizForm .quizFormContainer {
|
||||||
|
height: 100%;
|
||||||
|
margin: 15px 18px;
|
||||||
|
}
|
||||||
|
.quizForm .quizFormContainer .field-label {
|
||||||
|
text-align: left;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.quizCompleted {
|
||||||
|
width: 100%;
|
||||||
|
padding: 1rem;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.quizCompleted > .icon {
|
||||||
|
color: #f86c6b;
|
||||||
|
font-size: 5rem;
|
||||||
|
}
|
||||||
|
.quizCompleted > .icon .is-active {
|
||||||
|
color: #4dbd74;
|
||||||
|
}
|
||||||
|
.questionContainer {
|
||||||
|
white-space: normal;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.questionContainer .optionContainer {
|
||||||
|
margin-top: 12px;
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
.questionContainer .optionContainer .option {
|
||||||
|
border-radius: 290486px;
|
||||||
|
padding: 9px 18px;
|
||||||
|
margin: 0 18px;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
transition: 0.3s;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #73818f;
|
||||||
|
color: #f0f3f5;
|
||||||
|
border: transparent 1px solid;
|
||||||
|
}
|
||||||
|
.questionContainer .optionContainer .option.is-selected {
|
||||||
|
border-color: rgba(0, 0, 0, 0.25);
|
||||||
|
background-color: #834c9d;
|
||||||
|
}
|
||||||
|
.questionContainer .optionContainer .option:hover {
|
||||||
|
background-color: #B589D6;
|
||||||
|
}
|
||||||
|
.questionContainer .optionContainer .option:active {
|
||||||
|
transform: scaleX(0.9);
|
||||||
|
}
|
||||||
|
.questionContainer .questionFooter {
|
||||||
|
background: rgba(0, 0, 0, 0.025);
|
||||||
|
border-top: 1px solid rgba(0, 0, 0, 0.1);
|
||||||
|
width: 100%;
|
||||||
|
align-self: flex-end;
|
||||||
|
}
|
||||||
|
.questionContainer .questionFooter .pagination {
|
||||||
|
margin: 15px 25px;
|
||||||
|
}
|
||||||
|
.pagination {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
.button {
|
||||||
|
padding: 0.5rem 1rem;
|
||||||
|
border: 1px solid rgba(0, 0, 0, 0.25);
|
||||||
|
border-radius: 5rem;
|
||||||
|
margin: 0 0.25rem;
|
||||||
|
transition: 0.3s;
|
||||||
|
}
|
||||||
|
.button:hover {
|
||||||
|
cursor: pointer;
|
||||||
|
background: #552586;
|
||||||
|
border-color: rgba(0, 0, 0, 0.25);
|
||||||
|
}
|
||||||
|
.button.is-active {
|
||||||
|
background: #834c9d;
|
||||||
|
color: white;
|
||||||
|
border-color: transparent;
|
||||||
|
}
|
||||||
|
.button.is-active:hover {
|
||||||
|
background: #0a2ffe;
|
||||||
|
}
|
||||||
|
@media screen and (min-width: 769px) {
|
||||||
|
.questionBox {
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.questionContainer {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media screen and (max-width: 768px) {
|
||||||
|
.sidebar {
|
||||||
|
height: auto !important;
|
||||||
|
border-radius: 6px 6px 0px 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Custom Progress bar */
|
||||||
|
.shell {
|
||||||
|
height: 20px;
|
||||||
|
width: 250px;
|
||||||
|
border: 1px solid #73818f;
|
||||||
|
border-radius: 13px;
|
||||||
|
padding: 3px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
.bar {
|
||||||
|
background: linear-gradient(to right, #B589D6, #804FB3);
|
||||||
|
height: 20px;
|
||||||
|
width: 15px;
|
||||||
|
border-radius: 9px;
|
||||||
|
}
|
||||||
|
.bar span {
|
||||||
|
float: right;
|
||||||
|
padding: 4px 5px;
|
||||||
|
color: #f0f3f5;
|
||||||
|
font-size: 0.7em;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,10 @@
|
||||||
|
<script>
|
||||||
|
import "vue-good-table/dist/vue-good-table.css";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "Styles",
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
|
@ -0,0 +1,56 @@
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<vue-good-table
|
||||||
|
:columns="columns"
|
||||||
|
:rows="rows"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { VueGoodTable } from 'vue-good-table';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'my-component',
|
||||||
|
|
||||||
|
// add to component
|
||||||
|
components: {
|
||||||
|
VueGoodTable,
|
||||||
|
},
|
||||||
|
data(){
|
||||||
|
return {
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
label: 'Name',
|
||||||
|
field: 'name',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'Age',
|
||||||
|
field: 'age',
|
||||||
|
type: 'number',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'Created On',
|
||||||
|
field: 'createdAt',
|
||||||
|
type: 'date',
|
||||||
|
dateInputFormat: 'yyyy-mm-dd',
|
||||||
|
dateOutputFormat: 'MMM Do yy',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'Percent',
|
||||||
|
field: 'score',
|
||||||
|
type: 'percentage',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
rows: [
|
||||||
|
{ id:1, name:"John", age: 20, createdAt: '2011-10-31',score: 0.03343 },
|
||||||
|
{ id:2, name:"Jane", age: 24, createdAt: '2019-10-31', score: 0.03343 },
|
||||||
|
{ id:3, name:"Susan", age: 16, createdAt: '2011-10-30', score: 0.03343 },
|
||||||
|
{ id:4, name:"Chris", age: 55, createdAt: '2011-10-11', score: 0.03343 },
|
||||||
|
{ id:5, name:"Dan", age: 40, createdAt: '2011-10-21', score: 0.03343 },
|
||||||
|
{ id:6, name:"John", age: 20, createdAt: '2011-10-31', score: 0.03343 },
|
||||||
|
],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
|
@ -0,0 +1,35 @@
|
||||||
|
// .vuepress/components/sample-timeline.vue
|
||||||
|
<template>
|
||||||
|
<timeline timeline-theme="lightblue">
|
||||||
|
<timeline-title bg-color="#09FFAA">Prehistoric hunters cross over into Canada from Asia</timeline-title>
|
||||||
|
<timeline-item bg-color="#9dd8e0"> Leif Ericsson leads a Viking expedition to the New World</timeline-item>
|
||||||
|
<timeline-item bg-color="#9dFFe0">First Year 1B</timeline-item>
|
||||||
|
<timeline-item bg-color="#FFF000">Accepted Computer Engineering</timeline-item>
|
||||||
|
<timeline-item bg-color="#cFe8eF">The Iroquois Confederacy is formed</timeline-item>
|
||||||
|
<timeline-item bg-color="#97Aec8">John Cabot reaches Newfoundland (or perhaps Cape Breton)</timeline-item>
|
||||||
|
<timeline-item bg-color="#5744D4">Jacques Cartier first explores the St. Lawrence region</timeline-item>
|
||||||
|
<timeline-item bg-color="#0F4859">Second Year 2B</timeline-item>
|
||||||
|
<timeline-item bg-color="#094341">Samuel de Champlain establishes a French colony at Québec City</timeline-item>
|
||||||
|
<timeline-item bg-color="#825F03">Hudson’s Bay Company is formed</timeline-item>
|
||||||
|
<timeline-item bg-color="#954F08">Expulsion of the Acadians</timeline-item>
|
||||||
|
<timeline-item bg-color="#A71490">Battle of the Plains of Abraham: Québec City is captured</timeline-item>
|
||||||
|
<timeline-item bg-color="#C084A9">New France is formally ceded to Britain; Pontiac Rebellion erupts</timeline-item>
|
||||||
|
<timeline-item bg-color="#7B71C2">Loyalist refugees begin arriving after the American Revolution</timeline-item>
|
||||||
|
<timeline-item bg-color="#2348B1">War of 1812: U.S. invades Canada</timeline-item>
|
||||||
|
<timeline-item bg-color="#915F15">Rebellions against British rule in Upper and Lower Canada</timeline-item>
|
||||||
|
<timeline-item bg-color="#0909FA"> Responsible government is won, first in Nova Scotia, then in Canada</timeline-item>
|
||||||
|
</timeline>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { Timeline, TimelineItem, TimelineTitle } from 'vue-cute-timeline'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'sample-timeline',
|
||||||
|
components: {
|
||||||
|
Timeline,
|
||||||
|
TimelineItem,
|
||||||
|
TimelineTitle,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,211 @@
|
||||||
|
// .vuepress/config.js
|
||||||
|
// missing markdownItAds boostnote admonitions
|
||||||
|
const fs = require('fs')
|
||||||
|
const path = require('path')
|
||||||
|
const util = require('util')
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
base: '/vuepress-theme-cool-starter/',
|
||||||
|
theme: 'cool',
|
||||||
|
//dest: 'dist',
|
||||||
|
head: [
|
||||||
|
['link', { rel: 'icon', href: '/faviconCustom.ico' }],
|
||||||
|
['link', { rel: 'stylesheet', href: 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.5.1/katex.min.css' }],
|
||||||
|
['link', {href: 'https://fonts.googleapis.com/icon?family=Material+Icons', rel :'stylesheet'}]
|
||||||
|
],
|
||||||
|
plugins: [
|
||||||
|
'@vuepress/last-updated',
|
||||||
|
'@vuepress/back-to-top',
|
||||||
|
'@vuepress/pwa'
|
||||||
|
],
|
||||||
|
themeConfig: {
|
||||||
|
// logo: './myAvatar.png',
|
||||||
|
sidebar: genSideBar('.'),
|
||||||
|
sidebarDepth: 2,
|
||||||
|
displayAllHeaders: true, // Default: false themeConfig: {
|
||||||
|
nav: genNavBarList(),
|
||||||
|
lastUpdated: 'Last Updated', // string | boolean
|
||||||
|
// Assumes GitHub. Can also be a full GitLab url.
|
||||||
|
repo: 'FriendlyUser/vuepress-theme-cool-starter',
|
||||||
|
// Customising the header label
|
||||||
|
// Defaults to "GitHub"/"GitLab"/"Bitbucket" depending on `themeConfig.repo`
|
||||||
|
repoLabel: 'Contribute!',
|
||||||
|
// Optional options for generating "Edit this page" link
|
||||||
|
// if your docs are in a different repo from your main project:
|
||||||
|
//docsRepo: 'FriendlyUser/markdown-notes-template',
|
||||||
|
// if your docs are not at the root of the repo:
|
||||||
|
//docsDir: 'docs',
|
||||||
|
// if your docs are in a specific branch (defaults to 'master'):
|
||||||
|
docsBranch: 'gh-pages',
|
||||||
|
// defaults to false, set to true to enable
|
||||||
|
editLinks: true,
|
||||||
|
// custom text for edit link. Defaults to "Edit this page"
|
||||||
|
editLinkText: 'Help us improve this page!'
|
||||||
|
|
||||||
|
},
|
||||||
|
title: 'Vuepress Theme Cool Starter',
|
||||||
|
description: 'Example project to get started with the vuepress-theme-cool',
|
||||||
|
configureWebpack: {
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
'@alias': '../img'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
plugins: {
|
||||||
|
'@vuepress/pwa': { serviceWorker: true,
|
||||||
|
updatePopup: {
|
||||||
|
message: "New content is available.",
|
||||||
|
buttonText: "Refresh"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
markdown: {
|
||||||
|
extendMarkdown: md => {
|
||||||
|
md.set({ html: true })
|
||||||
|
md.use(require('markdown-it-katex'))
|
||||||
|
md.use(require('markdown-it-plantuml'))
|
||||||
|
md.use(require('markdown-it-admonition'))
|
||||||
|
md.use(require('markdown-it-task-lists'))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Helper functions
|
||||||
|
function fromDir(startPath,filter,callback){
|
||||||
|
|
||||||
|
//console.log('Starting from dir '+startPath+'/');
|
||||||
|
if (!fs.existsSync(startPath)){
|
||||||
|
console.log("no dir ",startPath);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var files=fs.readdirSync(startPath);
|
||||||
|
for(var i=0;i<files.length;i++){
|
||||||
|
var filename=path.join(startPath,files[i]);
|
||||||
|
var stat = fs.lstatSync(filename);
|
||||||
|
if (stat.isDirectory()){
|
||||||
|
fromDir(filename,filter,callback); //recurse
|
||||||
|
}
|
||||||
|
else if (filter.test(filename)) callback(filename);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
function getDirectories(path) {
|
||||||
|
return fs.readdirSync(path).filter(function (file) {
|
||||||
|
if (file != '.vuepress') {
|
||||||
|
return fs.statSync(path+'/'+file).isDirectory();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function getFilesInDir(directoryName) {
|
||||||
|
var files = []
|
||||||
|
// sidebar settings
|
||||||
|
const relPath = path.join('docs', directoryName)
|
||||||
|
fromDir(relPath,/\.md$/,function(filename){
|
||||||
|
console.log('-- found: ',filename);
|
||||||
|
files.push(filename)
|
||||||
|
});
|
||||||
|
return files
|
||||||
|
}
|
||||||
|
|
||||||
|
// Base file names with removed file extensions
|
||||||
|
function getFilesInDirBase(directoryName) {
|
||||||
|
var files = []
|
||||||
|
// sidebar settings
|
||||||
|
const relPath = path.join('docs', directoryName)
|
||||||
|
fromDir(relPath,/\.md$/,function(filename){
|
||||||
|
let baseName = path.basename(filename)
|
||||||
|
// this it will fail on files without extension, see https://stackoverflow.com/questions/4250364/how-to-trim-a-file-extension-from-a-string-in-javascript
|
||||||
|
baseName = baseName.split('.').slice(0, -1).join('.')
|
||||||
|
|
||||||
|
// Add README as '', and everything else as standard
|
||||||
|
if (baseName.toUpperCase() == 'README') {
|
||||||
|
files.push('Home')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
files.push(baseName)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return files
|
||||||
|
}
|
||||||
|
|
||||||
|
// pass in the folder relative to the folder docs
|
||||||
|
function genSideBarConfigFolder (titleName, directoryName) {
|
||||||
|
const rawFilePaths = getFilesInDirBase(directoryName)
|
||||||
|
return [
|
||||||
|
{
|
||||||
|
title: titleName,
|
||||||
|
collapsable: true,
|
||||||
|
children: rawFilePaths
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
function genSideBar (directoryName) {
|
||||||
|
const dirNames = getFilesInDirBase(directoryName)
|
||||||
|
let markdownArray = []
|
||||||
|
for (var i = 0; i < dirNames.length; i++) {
|
||||||
|
let stringValue = dirNames[i].toString()
|
||||||
|
if(stringValue === 'Home' || stringValue === '') {
|
||||||
|
markdownArray.push('')
|
||||||
|
} else {
|
||||||
|
markdownArray.push(stringValue)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const sideBarConfig = {
|
||||||
|
'/': markdownArray
|
||||||
|
}
|
||||||
|
console.log(sideBarConfig)
|
||||||
|
return sideBarConfig
|
||||||
|
}
|
||||||
|
|
||||||
|
// doesn't work, fix later, can't figure out how to generate { text: link:} recursively? Or maybe have another function that returns text: link
|
||||||
|
function genNavBarList() {
|
||||||
|
let dirNames = []
|
||||||
|
// navbar settings
|
||||||
|
dirNames = getFilesInDirBase('.')
|
||||||
|
let navBarNames = [];
|
||||||
|
|
||||||
|
var numOfDirs = dirNames.length;
|
||||||
|
for (var i = 0; i < numOfDirs; i++) {
|
||||||
|
let stringValue = dirNames[i].toString()
|
||||||
|
// convert - to capitialization
|
||||||
|
stringValue = transformToUpperCase(stringValue)
|
||||||
|
let linkValue = '/'
|
||||||
|
if (stringValue !== 'Home') {
|
||||||
|
linkValue = `/${stringValue}/`
|
||||||
|
}
|
||||||
|
|
||||||
|
// @todo change loop to iterate for nested directories
|
||||||
|
if (true) {
|
||||||
|
navBarNames.push(genNavBarItem(stringValue,linkValue))
|
||||||
|
}
|
||||||
|
// last entry
|
||||||
|
else {
|
||||||
|
//navBarNames = navBarNames + "{ text : \'" + stringValue + "\', " + "link: " + "\'/" + stringValue + "/\'}, \n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return navBarNames
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function genNavBarItem(textValue, linkValue) {
|
||||||
|
return {
|
||||||
|
text: textValue,
|
||||||
|
link: linkValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function transformToUpperCase(str) {
|
||||||
|
let upperString = str
|
||||||
|
upperString = upperString.replace(/-/g, ' ');
|
||||||
|
upperString = upperString.split(" ");
|
||||||
|
for (var i = 0, x = upperString.length; i < x; i++) {
|
||||||
|
upperString[i] = upperString[i][0].toUpperCase() + upperString[i].substr(1);
|
||||||
|
}
|
||||||
|
return upperString.join(" ");
|
||||||
|
}
|
|
@ -0,0 +1,118 @@
|
||||||
|
// .vuepress/config.js
|
||||||
|
module.exports = {
|
||||||
|
plugins: [
|
||||||
|
'@vuepress/back-to-top',
|
||||||
|
'@vuepress/pwa',
|
||||||
|
{
|
||||||
|
serviceWorker: true,
|
||||||
|
updatePopup: true
|
||||||
|
},
|
||||||
|
,
|
||||||
|
['container', {
|
||||||
|
type: 'vue',
|
||||||
|
before: '<pre class="vue-container"><code>',
|
||||||
|
after: '</code></pre>'
|
||||||
|
}]
|
||||||
|
],
|
||||||
|
port: 3030,
|
||||||
|
base: '/edu-dis-labs/',
|
||||||
|
theme: 'cool',
|
||||||
|
// dest: 'dist',
|
||||||
|
head: [
|
||||||
|
['link', { rel: 'icon', href: '/favicon.ico' }],
|
||||||
|
['link', { rel: 'stylesheet', href: 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.5.1/katex.min.css' }],
|
||||||
|
['link', {href: 'https://fonts.googleapis.com/icon?family=Material+Icons', rel :'stylesheet'}],
|
||||||
|
|
||||||
|
],
|
||||||
|
themeConfig: {
|
||||||
|
// logo: './myAvatar.png',
|
||||||
|
sidebar: [
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Вступ',
|
||||||
|
path:"/intro/"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Розроблення вимог до системи',
|
||||||
|
path:"/requirements/",
|
||||||
|
children: [
|
||||||
|
"/requirements/state-of-the-art",
|
||||||
|
"/requirements/stakeholders-needs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Розроблення вимог до функціональности системи',
|
||||||
|
path:"/use-cases/"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Проєктування архітектури системи',
|
||||||
|
path:"/design/"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Реалізація інформаційного та програмного забезпечення',
|
||||||
|
path:"/software/"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Тестування працездатності системи',
|
||||||
|
path:"/test/"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
title: 'Висновки',
|
||||||
|
path:"/conclusion/"
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
],
|
||||||
|
sidebarDepth: 2,
|
||||||
|
displayAllHeaders: true, // Default: false
|
||||||
|
|
||||||
|
|
||||||
|
nav: [
|
||||||
|
{ text: 'Початок', link: '/' },
|
||||||
|
],
|
||||||
|
|
||||||
|
lastUpdated: 'Останнє оновлення', // string | boolean
|
||||||
|
// Assumes GitHub. Can also be a full GitLab url.
|
||||||
|
repo: 'http://139.162.162.130:3000/hasslesstech/edu-dis-labs',
|
||||||
|
// Customising the header label
|
||||||
|
// Defaults to "GitHub"/"GitLab"/"Bitbucket" depending on `themeConfig.repo`
|
||||||
|
repoLabel: 'Gitea',
|
||||||
|
|
||||||
|
// Optional options for generating "Edit this page" link
|
||||||
|
|
||||||
|
// if your docs are in a different repo from your main project:
|
||||||
|
// docsRepo: 'boldak/dis-edu',
|
||||||
|
// if your docs are not at the root of the repo:
|
||||||
|
docsDir: 'docs',
|
||||||
|
// if your docs are in a specific branch (defaults to 'master'):
|
||||||
|
docsBranch: 'master',
|
||||||
|
// defaults to false, set to true to enable
|
||||||
|
// editLinks: true,
|
||||||
|
// custom text for edit link. Defaults to "Edit this page"
|
||||||
|
// editLinkText: 'Ви можете покращити цю сторінку'
|
||||||
|
|
||||||
|
},
|
||||||
|
title: 'Xpertise',
|
||||||
|
description: 'Лабораторні роботи з дисципліни "Організація баз даних"',
|
||||||
|
configureWebpack: {
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
'@alias': '../img'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
markdown: {
|
||||||
|
extendMarkdown: md => {
|
||||||
|
md.set({ html: true })
|
||||||
|
md.use(require('markdown-it-katex'))
|
||||||
|
md.use(require('markdown-it-plantuml'))
|
||||||
|
md.use(require('markdown-it-admonition'))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,30 @@
|
||||||
|
import Vuex from 'vuex'
|
||||||
|
|
||||||
|
import VueChartkick from 'vue-chartkick'
|
||||||
|
import Chart from 'chart.js'
|
||||||
|
import VueGoodTablePlugin from 'vue-good-table';
|
||||||
|
|
||||||
|
// The styles are important in another component because of the way webpack is configured
|
||||||
|
// import 'vue-good-table/dist/vue-good-table.css'
|
||||||
|
export default ({ Vue, options, router, siteData }) => {
|
||||||
|
Vue.use(Vuex)
|
||||||
|
Vue.use(VueChartkick, {adapter: Chart})
|
||||||
|
Vue.use(VueGoodTablePlugin)
|
||||||
|
Vue.mixin({
|
||||||
|
computed: {
|
||||||
|
$title() {
|
||||||
|
const page = this.$page
|
||||||
|
const siteTitle = this.$siteTitle
|
||||||
|
const selfTitle = page.frontmatter.home ? null : (
|
||||||
|
page.frontmatter.title || // explicit title
|
||||||
|
(page.title ? page.title.replace(/[_`]/g, '') : '') // inferred title
|
||||||
|
)
|
||||||
|
return siteTitle
|
||||||
|
? selfTitle
|
||||||
|
? (selfTitle + ' | ' + siteTitle)
|
||||||
|
: siteTitle
|
||||||
|
: selfTitle || 'VuePress'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
Before Width: | Height: | Size: 278 KiB After Width: | Height: | Size: 278 KiB |
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 232 KiB |
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 236 KiB |
Before Width: | Height: | Size: 218 KiB After Width: | Height: | Size: 218 KiB |
Before Width: | Height: | Size: 264 KiB After Width: | Height: | Size: 264 KiB |
Before Width: | Height: | Size: 246 KiB After Width: | Height: | Size: 246 KiB |
Before Width: | Height: | Size: 273 KiB After Width: | Height: | Size: 273 KiB |
Before Width: | Height: | Size: 281 KiB After Width: | Height: | Size: 281 KiB |
Before Width: | Height: | Size: 247 KiB After Width: | Height: | Size: 247 KiB |
Before Width: | Height: | Size: 262 KiB After Width: | Height: | Size: 262 KiB |
Before Width: | Height: | Size: 266 KiB After Width: | Height: | Size: 266 KiB |
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 139 KiB After Width: | Height: | Size: 139 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 163 KiB After Width: | Height: | Size: 163 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 266 KiB After Width: | Height: | Size: 266 KiB |
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 92 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 214 KiB After Width: | Height: | Size: 214 KiB |
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 83 KiB |
Before Width: | Height: | Size: 314 KiB After Width: | Height: | Size: 314 KiB |
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 121 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 162 KiB After Width: | Height: | Size: 162 KiB |
Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 274 KiB After Width: | Height: | Size: 274 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
@ -0,0 +1,7 @@
|
||||||
|
import quiz1 from './quiz1.json'
|
||||||
|
import quiz2 from './quiz2.json'
|
||||||
|
|
||||||
|
export {
|
||||||
|
quiz1,
|
||||||
|
quiz2
|
||||||
|
}
|
|
@ -0,0 +1,185 @@
|
||||||
|
{
|
||||||
|
"user": "Dave",
|
||||||
|
"questions": [
|
||||||
|
{
|
||||||
|
"text": "What is the full form of HTTP?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Hyper text transfer package"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Hyper text transfer protocol",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Hyphenation text test program"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "HTML document start and end with which tag pairs?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "HTML",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "WEB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "HEAD"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "BODY"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Which tag is used to create body text in HTML?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "HEAD"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "BODY",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "TITLE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "TEXT"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Outlook Express is _________",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "E-Mail Client",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Browser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Search Engine"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "What is a search engine?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "A hardware component "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "A machinery engine that search data"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "A web site that searches anything",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "A program that searches engines"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "What does the .com domain represents?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Network"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Education"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Commercial",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "In Satellite based communication, VSAT stands for? ",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": " Very Small Aperture Terminal",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Varying Size Aperture Terminal "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Very Small Analog Terminal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "What is the full form of TCP/IP? ",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Telephone call protocol / international protocol"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Transmission control protocol / internet protocol",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Transport control protocol / internet protocol "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "What is the full form of HTML?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Hyper text marking language"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Hyphenation text markup language "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Hyper text markup language",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Hyphenation test marking language"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "\"Yahoo\", \"Infoseek\" and \"Lycos\" are _________?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Browsers "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Search Engines",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "News Group"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,41 @@
|
||||||
|
{
|
||||||
|
"user": "Dave",
|
||||||
|
"questions": [
|
||||||
|
{
|
||||||
|
"text": "Who is the Batman",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Laughing Bat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Bruce Wayne",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Dick Grayson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "\"Yahoo\", \"Infoseek\" and \"Lycos\" are _________?",
|
||||||
|
"responses": [
|
||||||
|
{
|
||||||
|
"text": "Browsers "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Search Engines",
|
||||||
|
"correct": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "News Group"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "None of the above"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,179 @@
|
||||||
|
@import url(https://fonts.googleapis.com/icon?family=Material+Icons)
|
||||||
|
.admonition.note,
|
||||||
|
.admonition.hint,
|
||||||
|
.admonition.danger,
|
||||||
|
.admonition.caution,
|
||||||
|
.admonition.error,
|
||||||
|
.admonition.attention {
|
||||||
|
box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
|
||||||
|
position: relative;
|
||||||
|
margin: 1.5625em 0;
|
||||||
|
padding: 0 1.2rem;
|
||||||
|
border-left: 0.4rem solid #448aff;
|
||||||
|
border-radius: 0.2rem;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
html .admonition>:last-child {
|
||||||
|
margin-bottom: 1.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition .admonition {
|
||||||
|
margin: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition p {
|
||||||
|
margin-top: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.note>.admonition-title:before,
|
||||||
|
.admonition.hint>.admonition-title:before,
|
||||||
|
.admonition.danger>.admonition-title:before,
|
||||||
|
.admonition.caution>.admonition-title:before,
|
||||||
|
.admonition.error>.admonition-title:before,
|
||||||
|
.admonition.attention>.admonition-title:before {
|
||||||
|
position: absolute;
|
||||||
|
left: 1.2rem;
|
||||||
|
font-family: "Material Icons";
|
||||||
|
font-size: 24px;
|
||||||
|
display: inline-block;
|
||||||
|
line-height: 1;
|
||||||
|
text-transform: none;
|
||||||
|
letter-spacing: normal;
|
||||||
|
word-wrap: normal;
|
||||||
|
white-space: nowrap;
|
||||||
|
direction: ltr;
|
||||||
|
/* Support for all WebKit browsers. */
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
/* Support for Safari and Chrome. */
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
/* Support for Firefox. */
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
/* Support for IE. */
|
||||||
|
font-feature-settings: 'liga';
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.note>.admonition-title,
|
||||||
|
.admonition.hint>.admonition-title,
|
||||||
|
.admonition.danger>.admonition-title,
|
||||||
|
.admonition.caution>.admonition-title,
|
||||||
|
.admonition.error>.admonition-title,
|
||||||
|
.admonition.attention>.admonition-title {
|
||||||
|
margin: 0 -1.2rem;
|
||||||
|
padding: 0.8rem 1.2rem 0.8rem 4rem;
|
||||||
|
border-bottom: 0.1rem solid rgba(68,138,255,0.1);
|
||||||
|
background-color: rgba(68,138,255,0.1);
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition>.admonition-title:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.note {
|
||||||
|
border-left-color: #448aff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.note>.admonition-title {
|
||||||
|
border-bottom-color: 0.1rem solid rgba(68,138,255,0.1);
|
||||||
|
background-color: rgba(68,138,255,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.note>.admonition-title:before {
|
||||||
|
color: #448aff;
|
||||||
|
content: "note";
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.hint {
|
||||||
|
border-left-color: #00bfa5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.hint>.admonition-title {
|
||||||
|
border-bottom-color: 0.1rem solid rgba(0,191,165,0.1);
|
||||||
|
background-color: rgba(0,191,165,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.hint>.admonition-title:before {
|
||||||
|
color: #00bfa5;
|
||||||
|
content: "info";
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.danger {
|
||||||
|
border-left-color: #ff1744;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.danger>.admonition-title {
|
||||||
|
border-bottom-color: 0.1rem solid rgba(255,23,68,0.1);
|
||||||
|
background-color: rgba(255,23,68,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.danger>.admonition-title:before {
|
||||||
|
color: #ff1744;
|
||||||
|
content: "block";
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.caution {
|
||||||
|
border-left-color: #ff9100;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.caution>.admonition-title {
|
||||||
|
border-bottom-color: 0.1rem solid rgba(255,145,0,0.1);
|
||||||
|
background-color: rgba(255,145,0,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.caution>.admonition-title:before {
|
||||||
|
color: #ff9100;
|
||||||
|
content: "warning";
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.error {
|
||||||
|
border-left-color: #ff1744;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.error>.admonition-title {
|
||||||
|
border-bottom-color: 0.1rem solid rgba(255,23,68,0.1);
|
||||||
|
background-color: rgba(255,23,68,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.error>.admonition-title:before {
|
||||||
|
color: #ff1744;
|
||||||
|
content: "error";
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.attention {
|
||||||
|
border-left-color: #64dd17;
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.attention>.admonition-title {
|
||||||
|
border-bottom-color: 0.1rem solid rgba(100,221,23,0.1);
|
||||||
|
background-color: rgba(100,221,23,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.admonition.attention>.admonition-title:before {
|
||||||
|
color: #64dd17;
|
||||||
|
content: "priority_high";
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-size 16px;
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-default-content:not(.custom) {
|
||||||
|
max-width: 950px;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 2rem 2.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-heading {
|
||||||
|
color: #2c3e50;
|
||||||
|
transition: color 0.15s ease;
|
||||||
|
cursor: pointer;
|
||||||
|
font-size: 1em !important;
|
||||||
|
font-weight: 500 !important;
|
||||||
|
padding: 0.35rem 1.5rem 0.35rem 1.25rem;
|
||||||
|
width: 100%;
|
||||||
|
box-sizing: border-box;
|
||||||
|
margin: 0;
|
||||||
|
border-left: 0.25rem solid transparent;
|
||||||
|
}
|
|
@ -0,0 +1,89 @@
|
||||||
|
// showing default values
|
||||||
|
$accentColor = #0984e3
|
||||||
|
$textColor = #2c3e50
|
||||||
|
$borderColor = #eaecef
|
||||||
|
$codeBgColor = #282c34
|
||||||
|
|
||||||
|
$admonition
|
||||||
|
box-shadow 0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2)
|
||||||
|
position relative
|
||||||
|
margin 1.5625em 0
|
||||||
|
padding 0 1.2rem
|
||||||
|
border-left .4rem solid #448aff
|
||||||
|
border-radius .2rem
|
||||||
|
overflow auto
|
||||||
|
|
||||||
|
html .admonition>:last-child
|
||||||
|
margin-bottom 1.2rem
|
||||||
|
|
||||||
|
.admonition .admonition
|
||||||
|
margin 1em 0
|
||||||
|
|
||||||
|
.admonition p
|
||||||
|
margin-top: 0.5em
|
||||||
|
|
||||||
|
$admonition-icon
|
||||||
|
position absolute
|
||||||
|
left 1.2rem
|
||||||
|
font-family: "Material Icons"
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 24px
|
||||||
|
display: inline-block;
|
||||||
|
line-height: 1;
|
||||||
|
text-transform: none;
|
||||||
|
letter-spacing: normal;
|
||||||
|
word-wrap: normal;
|
||||||
|
white-space: nowrap;
|
||||||
|
direction: ltr;
|
||||||
|
|
||||||
|
/* Support for all WebKit browsers. */
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
/* Support for Safari and Chrome. */
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
|
||||||
|
/* Support for Firefox. */
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
|
||||||
|
/* Support for IE. */
|
||||||
|
font-feature-settings: 'liga';
|
||||||
|
|
||||||
|
$admonition-title
|
||||||
|
margin 0 -1.2rem
|
||||||
|
padding .8rem 1.2rem .8rem 4rem
|
||||||
|
border-bottom .1rem solid rgba(68,138,255,.1)
|
||||||
|
background-color rgba(68,138,255,.1)
|
||||||
|
font-weight 700
|
||||||
|
|
||||||
|
.admonition>.admonition-title:last-child
|
||||||
|
margin-bottom 0
|
||||||
|
|
||||||
|
admonition_types = {
|
||||||
|
note: {color: #0288D1, icon: "edit_sharp"},
|
||||||
|
abstract: {color: #c5d845, icon: "speaker_notes_filled"},
|
||||||
|
info: {color: #19d8f5, icon: "info"}
|
||||||
|
tip: {color: #00bfa5, icon: "code"},
|
||||||
|
success: {color: #00c853, icon: "check_circle_outline"},
|
||||||
|
question: {color: #64dd17, icon: "help"},
|
||||||
|
warning: {color: #ff9100, icon: "warning"},
|
||||||
|
failure: {color: #ff5252, icon: "close"},
|
||||||
|
danger: {color: #c2185b, icon: "flash_on"},
|
||||||
|
bug: {color: #e040fb, icon: "bug_report"},
|
||||||
|
example: {color: #651fff, icon: "format_list_numbered_rtl"},
|
||||||
|
quote: {color: #9e9e9e, icon: "format_quote"}
|
||||||
|
}
|
||||||
|
|
||||||
|
for name, val in admonition_types
|
||||||
|
.admonition.{name}
|
||||||
|
@extend $admonition
|
||||||
|
border-left-color: val[color]
|
||||||
|
|
||||||
|
.admonition.{name}>.admonition-title
|
||||||
|
@extend $admonition-title
|
||||||
|
border-bottom-color: .1rem solid rgba(val[color], 0.2)
|
||||||
|
background-color: rgba(val[color], 0.2)
|
||||||
|
|
||||||
|
.admonition.{name}>.admonition-title:before
|
||||||
|
@extend $admonition-icon
|
||||||
|
color: val[color]
|
||||||
|
content: val[icon]
|
|
@ -0,0 +1,26 @@
|
||||||
|
---
|
||||||
|
home: true
|
||||||
|
actionText: Розпочати →
|
||||||
|
actionLink: /intro/
|
||||||
|
|
||||||
|
footer: "ECL 2.0 Licensed | Copyright © 2024 [Your Name]"
|
||||||
|
---
|
||||||
|
|
||||||
|
**Виконала:**
|
||||||
|
|
||||||
|
*студентка 2-го курсу, групи ІО-23:*
|
||||||
|
|
||||||
|
*Вікторія ВОДЯНА [vodyanayaviktoria@gmail.com, [@victoriavodyana](https://t.me/victoriavodyana)]*
|
||||||
|
|
||||||
|
|
||||||
|
**Керівник**
|
||||||
|
|
||||||
|
*доцент кафедри ОТ ФІОТ, к.т.н., доцент*<span padding-right:5em></span> **Андрій БОЛДАК**
|
||||||
|
|
||||||
|
[НТУУ "КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ імені ІГОРЯ СІКОРСЬКОГО](https://kpi.ua/)
|
||||||
|
|
||||||
|
[Факультет інформатики та обчислювальної техніки](https://fiot.kpi.ua/)
|
||||||
|
|
||||||
|
[Кафедра обчислювальної техніки](https://comsys.kpi.ua/)
|
||||||
|
|
||||||
|
Київ
|
|
@ -0,0 +1,9 @@
|
||||||
|
# Висновки
|
||||||
|
|
||||||
|
У цьому проєкті була використана локальна база даних для зберігання інформації. Розроблена серверна частина надає RESTful-інтерфейс для доступу до цієї бази даних. Цей інтерфейс може використовуватися для взаємодії з таблицею питань (survey), що дозволяє здійснювати операції читання, запису, оновлення та видалення даних через HTTP-запити. Такий підхід забезпечує зручний та ефективний спосіб взаємодії з базою даних і відкриває широкі можливості для розвитку та розширення функціональності системи.
|
||||||
|
|
||||||
|
|
||||||
|
Технічне рішення, що покладене в основу проєкту, полягає у використанні мови програмування Python та веб-фреймворку Flask для створення RESTful сервісу. Це дозволило забезпечити швидку реалізацію системи та забезпечити її продуктивність та масштабованість.
|
||||||
|
|
||||||
|
Отримана система дозволяє автоматизувати процес збору та аналізу відповідей, що значно знижує час та ресурси, необхідні для проведення таких опитувань. Завдяки використанню сучасних технологій, таких як Flask, система має високу продуктивність та може легко масштабуватися відповідно до потреб користувачів.
|
||||||
|
|
|
@ -0,0 +1,130 @@
|
||||||
|
# Проєктування бази даних
|
||||||
|
|
||||||
|
## BE модель
|
||||||
|
|
||||||
|
<center style="
|
||||||
|
border-radius:4px;
|
||||||
|
border: 1px solid #cfd7e6;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025);
|
||||||
|
padding: 1em;"
|
||||||
|
>
|
||||||
|
|
||||||
|
@startuml
|
||||||
|
|
||||||
|
entity Account <<ENTITY>>
|
||||||
|
entity Account.username <<TEXT>>
|
||||||
|
entity Account.password <<TEXT>>
|
||||||
|
|
||||||
|
entity Survey <<ENTITY>>
|
||||||
|
entity Survey.name <<TEXT>>
|
||||||
|
entity Survey.duration <<TEXT>>
|
||||||
|
entity Survey.isPaused <<BOOLEAN>>
|
||||||
|
entity Survey.isNamed <<BOOLEAN>>
|
||||||
|
|
||||||
|
entity Question <<ENTITY>>
|
||||||
|
entity Question.text <<TEXT>>
|
||||||
|
|
||||||
|
entity Responce <<ENTITY>>
|
||||||
|
entity Responce.value <<TEXT>>
|
||||||
|
|
||||||
|
entity Link <<ENTITY>>
|
||||||
|
entity Link.usageLimit <<INT>>
|
||||||
|
entity Link.responceLimit <<INT>>
|
||||||
|
entity Link.uses <<INT>>
|
||||||
|
entity Link.responces <<INT>>
|
||||||
|
entity Link.path <<TEXT>>
|
||||||
|
|
||||||
|
Account.username --* Account
|
||||||
|
Account.password --* Account
|
||||||
|
|
||||||
|
Survey.name --* Survey
|
||||||
|
Survey.duration --* Survey
|
||||||
|
Survey.isPaused --* Survey
|
||||||
|
Survey.isNamed --* Survey
|
||||||
|
|
||||||
|
Link.usageLimit -u-* Link
|
||||||
|
Link.responceLimit -u-* Link
|
||||||
|
Link.uses --* Link
|
||||||
|
Link.responces --* Link
|
||||||
|
Link.path -u-* Link
|
||||||
|
|
||||||
|
Responce.value -u-* Responce
|
||||||
|
|
||||||
|
Question.text -u-* Question
|
||||||
|
|
||||||
|
Account "1,1" -- "0,*" Survey
|
||||||
|
Survey "1,1" -- "0,*" Question
|
||||||
|
Question "1,1" -r- "0,*" Responce
|
||||||
|
Account "0,1" -r- "0,*" Responce
|
||||||
|
Link "0,*" -- "1,1" Survey
|
||||||
|
|
||||||
|
@enduml
|
||||||
|
|
||||||
|
</center>
|
||||||
|
|
||||||
|
## ER-модель
|
||||||
|
|
||||||
|
<center style="
|
||||||
|
border-radius:4px;
|
||||||
|
border: 1px solid #cfd7e6;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025);
|
||||||
|
padding: 1em;"
|
||||||
|
>
|
||||||
|
|
||||||
|
@startuml
|
||||||
|
|
||||||
|
entity Account <<ENTITY>> {
|
||||||
|
id:INT
|
||||||
|
username:CHAR(64)
|
||||||
|
password:CHAR(256)
|
||||||
|
}
|
||||||
|
|
||||||
|
entity Responce <<ENTITY>> {
|
||||||
|
id:INT
|
||||||
|
value:CHAR(16384)
|
||||||
|
}
|
||||||
|
|
||||||
|
entity Question <<ENTITY>> {
|
||||||
|
id:INT
|
||||||
|
text:CHAR(256)
|
||||||
|
}
|
||||||
|
|
||||||
|
entity Survey <<ENTITY>> {
|
||||||
|
id:INT
|
||||||
|
name:CHAR(256)
|
||||||
|
duration:CHAR(256)
|
||||||
|
isPaused:BOOLEAN
|
||||||
|
isNamed:BOOLEAN
|
||||||
|
}
|
||||||
|
|
||||||
|
entity Link <<ENTITY>> {
|
||||||
|
id:INT
|
||||||
|
uses:INT
|
||||||
|
responces:INT
|
||||||
|
usageLimit:INT
|
||||||
|
responceLimit:INT
|
||||||
|
path:CHAR(32)
|
||||||
|
}
|
||||||
|
|
||||||
|
Responce "0,*" --> "1,1" Question
|
||||||
|
Question "0,*" --> "1,1" Survey
|
||||||
|
Survey "0,*" --> "1,1" Account
|
||||||
|
Link "0,*" --> "1,1" Survey
|
||||||
|
Responce "0,*" --> "0,1" Account
|
||||||
|
|
||||||
|
@enduml
|
||||||
|
|
||||||
|
</center>
|
||||||
|
|
||||||
|
## Реляційна схема
|
||||||
|
|
||||||
|
<center style="
|
||||||
|
border-radius:4px;
|
||||||
|
border: 1px solid #cfd7e6;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025);
|
||||||
|
padding: 1em;"
|
||||||
|
>
|
||||||
|
|
||||||
|
![relational_schema](./relational_scheme.png)
|
||||||
|
|
||||||
|
</center>
|