From cf843f887d2f13b8e11b4ba6c19fc1530dc8b2e3 Mon Sep 17 00:00:00 2001 From: primakov Date: Tue, 9 Apr 2024 16:01:15 +0300 Subject: [PATCH] =?UTF-8?q?=D0=91=D0=B0=D1=80=20=D0=9F=D0=BE=D1=81=D0=B5?= =?UTF-8?q?=D1=89=D0=B0=D0=B5=D0=BC=D0=BE=D1=81=D1=82=D1=8C=20=D0=BB=D0=B5?= =?UTF-8?q?=D0=BA=D1=86=D0=B8=D0=B9=20=D1=81=D1=82=D1=83=D0=B4=D0=B5=D0=BD?= =?UTF-8?q?=D1=82=D0=B0=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ijl.config.js | 5 + package-lock.json | 396 +++++++- package.json | 1 + src/pages/lesson-list.tsx | 50 +- stubs/mocks/lessons/list/success.json | 1333 +++++++++++-------------- 5 files changed, 1033 insertions(+), 752 deletions(-) diff --git a/ijl.config.js b/ijl.config.js index c4c48a4..86ab287 100644 --- a/ijl.config.js +++ b/ijl.config.js @@ -13,6 +13,11 @@ module.exports = { features: { 'journal': { // add your features here in the format [featureName]: { value: string } + "lesson.bar": { + "on": true, + "value": "", + "key": "lesson.bar" + } }, }, config: { diff --git a/package-lock.json b/package-lock.json index 3bcd4e7..91a1bc2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "@chakra-ui/react": "^2.8.2", "@emotion/react": "^11.11.4", "@emotion/styled": "^11.11.0", + "@nivo/bar": "^0.85.1", "@reduxjs/toolkit": "^2.2.1", "@types/react": "^18.2.60", "@types/react-dom": "^18.2.19", @@ -3617,6 +3618,172 @@ "@jridgewell/sourcemap-codec": "1.4.14" } }, + "node_modules/@nivo/annotations": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/annotations/-/annotations-0.85.1.tgz", + "integrity": "sha512-+YVFKMokf6MMXsztpEoOoFwG+XcEJV90xezuqJ8FmS0hgEzJ8xTeWNxPRWfrvxndMXNrau4QIRU5GrumBmiy4Q==", + "dependencies": { + "@nivo/colors": "0.85.1", + "@nivo/core": "0.85.1", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/prop-types": "^15.7.2", + "lodash": "^4.17.21", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/axes": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/axes/-/axes-0.85.1.tgz", + "integrity": "sha512-qhqyamgH8CAdOGEiLwwnqMpPKN6bv9FmKr/75UrNcAvWbU0PZ3unZJGKNkuFzlVAI9/RVvOUvXEE0rRBqV93qg==", + "dependencies": { + "@nivo/core": "0.85.1", + "@nivo/scales": "0.85.1", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/d3-format": "^1.4.1", + "@types/d3-time-format": "^2.3.1", + "@types/prop-types": "^15.7.2", + "d3-format": "^1.4.4", + "d3-time-format": "^3.0.0", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/bar": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/bar/-/bar-0.85.1.tgz", + "integrity": "sha512-42Hjvt5YJ9O5Ew+SrZ+jd8NR30odSRuHS/B4tpsL/Yqg2MjmpB+niRMuybEhUAuhQ0aCKvwUHlocjwRRzNXqnA==", + "dependencies": { + "@nivo/annotations": "0.85.1", + "@nivo/axes": "0.85.1", + "@nivo/colors": "0.85.1", + "@nivo/core": "0.85.1", + "@nivo/legends": "0.85.1", + "@nivo/scales": "0.85.1", + "@nivo/tooltip": "0.85.1", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/d3-scale": "^4.0.8", + "@types/d3-shape": "^2.0.0", + "d3-scale": "^4.0.2", + "d3-shape": "^1.3.5", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/colors": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/colors/-/colors-0.85.1.tgz", + "integrity": "sha512-61qG98cfyku0fTJTdtCTS3zBQKt88URh4FAvlQIoifvKg0607S2Gz5l7P9KJfN7xEK5tmE4bRaOMmjc4AZS2Kg==", + "dependencies": { + "@nivo/core": "0.85.1", + "@types/d3-color": "^3.0.0", + "@types/d3-scale": "^4.0.8", + "@types/d3-scale-chromatic": "^3.0.0", + "@types/prop-types": "^15.7.2", + "d3-color": "^3.1.0", + "d3-scale": "^4.0.2", + "d3-scale-chromatic": "^3.0.0", + "lodash": "^4.17.21", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/core": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/core/-/core-0.85.1.tgz", + "integrity": "sha512-366bc4hBicsitcinQyKGfUPpifk5W60RAjwZ4sQkY8R6OzwPMgY+eu/sfPZTNcY7rsleGg8whX0A2dBg2czWMA==", + "dependencies": { + "@nivo/recompose": "0.85.0", + "@nivo/tooltip": "0.85.1", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/d3-shape": "^2.0.0", + "d3-color": "^3.1.0", + "d3-format": "^1.4.4", + "d3-interpolate": "^3.0.1", + "d3-scale": "^4.0.2", + "d3-scale-chromatic": "^3.0.0", + "d3-shape": "^1.3.5", + "d3-time-format": "^3.0.0", + "lodash": "^4.17.21", + "prop-types": "^15.7.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nivo/donate" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/legends": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/legends/-/legends-0.85.1.tgz", + "integrity": "sha512-v2DRiUieo3/iV1Fft3i9pbGTkE5arXzmw+p1ptb4xfBBPpd0hSAHvaePXDY370G31dsh2v5LouL97u+q12li4Q==", + "dependencies": { + "@nivo/colors": "0.85.1", + "@nivo/core": "0.85.1", + "@types/d3-scale": "^4.0.8", + "@types/prop-types": "^15.7.2", + "d3-scale": "^4.0.2", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/recompose": { + "version": "0.85.0", + "resolved": "https://registry.npmjs.org/@nivo/recompose/-/recompose-0.85.0.tgz", + "integrity": "sha512-UptKwVJ9mlGQKn4a/JiORWbZgo6hT+qEpKBKIs9BUHRIW0a4T0BIE2PA+uDMPpNxzNFgOCu/y8iM5Rhs6QmrmA==", + "dependencies": { + "@types/prop-types": "^15.7.2", + "@types/react-lifecycles-compat": "^3.0.1", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.4" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/scales": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/scales/-/scales-0.85.1.tgz", + "integrity": "sha512-zObimCMjbbioMpQtVSGmr52OTn+BVJZsyhKHFx7CK57RA+OW/9lGnvqzc0rnFxl8WBqvHk7wReE5UI8xva/6Zw==", + "dependencies": { + "@types/d3-scale": "^4.0.8", + "@types/d3-time": "^1.1.1", + "@types/d3-time-format": "^3.0.0", + "d3-scale": "^4.0.2", + "d3-time": "^1.0.11", + "d3-time-format": "^3.0.0", + "lodash": "^4.17.21" + } + }, + "node_modules/@nivo/scales/node_modules/@types/d3-time-format": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-3.0.4.tgz", + "integrity": "sha512-or9DiDnYI1h38J9hxKEsw513+KVuFbEVhl7qdxcaudoiqWWepapUen+2vAriFGexr6W5+P4l9+HJrB39GG+oRg==" + }, + "node_modules/@nivo/tooltip": { + "version": "0.85.1", + "resolved": "https://registry.npmjs.org/@nivo/tooltip/-/tooltip-0.85.1.tgz", + "integrity": "sha512-lX0/MuDI9HvGzYxAtE3mnriYEgFHBWf7d5BMqUifJZIyg82XkI9g3z6vwAwPKRJ52rON9Yhik42+gwFMFj3BrA==", + "dependencies": { + "@nivo/core": "0.85.1", + "@react-spring/web": "9.4.5 || ^9.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -3661,6 +3828,66 @@ "url": "https://opencollective.com/popperjs" } }, + "node_modules/@react-spring/animated": { + "version": "9.7.3", + "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.7.3.tgz", + "integrity": "sha512-5CWeNJt9pNgyvuSzQH+uy2pvTg8Y4/OisoscZIR8/ZNLIOI+CatFBhGZpDGTF/OzdNFsAoGk3wiUYTwoJ0YIvw==", + "dependencies": { + "@react-spring/shared": "~9.7.3", + "@react-spring/types": "~9.7.3" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/core": { + "version": "9.7.3", + "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.7.3.tgz", + "integrity": "sha512-IqFdPVf3ZOC1Cx7+M0cXf4odNLxDC+n7IN3MDcVCTIOSBfqEcBebSv+vlY5AhM0zw05PDbjKrNmBpzv/AqpjnQ==", + "dependencies": { + "@react-spring/animated": "~9.7.3", + "@react-spring/shared": "~9.7.3", + "@react-spring/types": "~9.7.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-spring/donate" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/shared": { + "version": "9.7.3", + "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.7.3.tgz", + "integrity": "sha512-NEopD+9S5xYyQ0pGtioacLhL2luflh6HACSSDUZOwLHoxA5eku1UPuqcJqjwSD6luKjjLfiLOspxo43FUHKKSA==", + "dependencies": { + "@react-spring/types": "~9.7.3" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/types": { + "version": "9.7.3", + "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.7.3.tgz", + "integrity": "sha512-Kpx/fQ/ZFX31OtlqVEFfgaD1ACzul4NksrvIgYfIFq9JpDHFwQkMVZ10tbo0FU/grje4rcL4EIrjekl3kYwgWw==" + }, + "node_modules/@react-spring/web": { + "version": "9.7.3", + "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.3.tgz", + "integrity": "sha512-BXt6BpS9aJL/QdVqEIX9YoUy8CE6TJrU0mNCqSoxdXlIeNcEBWOfIyE6B14ENNsyQKS3wOWkiJfco0tCr/9tUg==", + "dependencies": { + "@react-spring/animated": "~9.7.3", + "@react-spring/core": "~9.7.3", + "@react-spring/shared": "~9.7.3", + "@react-spring/types": "~9.7.3" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/@reduxjs/toolkit": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.1.tgz", @@ -3719,6 +3946,52 @@ "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", "dev": true }, + "node_modules/@types/d3-color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==" + }, + "node_modules/@types/d3-format": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-1.4.5.tgz", + "integrity": "sha512-mLxrC1MSWupOSncXN/HOlWUAAIffAEBaI4+PKy2uMPsKe4FNZlk7qrbTjmzJXITQQqBHivaks4Td18azgqnotA==" + }, + "node_modules/@types/d3-path": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-2.0.4.tgz", + "integrity": "sha512-jjZVLBjEX4q6xneKMmv62UocaFJFOTQSb/1aTzs3m3ICTOFoVaqGBHpNLm/4dVi0/FTltfBKgmOK1ECj3/gGjA==" + }, + "node_modules/@types/d3-scale": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", + "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-scale-chromatic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz", + "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==" + }, + "node_modules/@types/d3-shape": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-2.1.7.tgz", + "integrity": "sha512-HedHlfGHdwzKqX9+PiQVXZrdmGlwo7naoefJP7kCNk4Y7qcpQt1tUaoRa6qn0kbTdlaIHGO7111qLtb/6J8uuw==", + "dependencies": { + "@types/d3-path": "^2" + } + }, + "node_modules/@types/d3-time": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-1.1.4.tgz", + "integrity": "sha512-JIvy2HjRInE+TXOmIGN5LCmeO0hkFZx5f9FZ7kiN+D+YTcc8pptsiLiuHsvwxwC7VVKmJ2ExHUgNlAiV7vQM9g==" + }, + "node_modules/@types/d3-time-format": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-2.3.4.tgz", + "integrity": "sha512-xdDXbpVO74EvadI3UDxjxTdR6QIxm1FKzEA/+F8tL4GWWUg/hgvBqf6chql64U5A9ZUGWo7pEu4eNlyLwbKdhg==" + }, "node_modules/@types/eslint": { "version": "8.4.10", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", @@ -3814,6 +4087,14 @@ "@types/react": "*" } }, + "node_modules/@types/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-1CM48Y9ztL5S4wjt7DK2izrkgPp/Ql0zCJu/vHzhgl7J+BD4UbSGjHN1M2TlePms472JvOazUtAO1/G3oFZqIQ==", + "dependencies": { + "@types/react": "*" + } + }, "node_modules/@types/scheduler": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", @@ -5619,6 +5900,105 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "dependencies": { + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-format": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.5.tgz", + "integrity": "sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==" + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-path": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" + }, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "dependencies": { + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-scale-chromatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", + "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", + "dependencies": { + "d3-color": "1 - 3", + "d3-interpolate": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-scale/node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "dependencies": { + "d3-array": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-shape": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", + "dependencies": { + "d3-path": "1" + } + }, + "node_modules/d3-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", + "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" + }, + "node_modules/d3-time-format": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-3.0.0.tgz", + "integrity": "sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==", + "dependencies": { + "d3-time": "1 - 2" + } + }, "node_modules/data-view-buffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", @@ -8141,6 +8521,14 @@ "node": ">= 0.4" } }, + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "engines": { + "node": ">=12" + } + }, "node_modules/interpret": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", @@ -8914,6 +9302,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -10432,8 +10825,7 @@ "node_modules/react-lifecycles-compat": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", - "dev": true + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" }, "node_modules/react-redux": { "version": "9.1.0", diff --git a/package.json b/package.json index e437a51..1368ed7 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ "@chakra-ui/react": "^2.8.2", "@emotion/react": "^11.11.4", "@emotion/styled": "^11.11.0", + "@nivo/bar": "^0.85.1", "@reduxjs/toolkit": "^2.2.1", "@types/react": "^18.2.60", "@types/react-dom": "^18.2.19", diff --git a/src/pages/lesson-list.tsx b/src/pages/lesson-list.tsx index 2a3065e..4ce21d1 100644 --- a/src/pages/lesson-list.tsx +++ b/src/pages/lesson-list.tsx @@ -1,7 +1,8 @@ -import React, { useCallback, useEffect, useRef, useState } from 'react' +import React, { useEffect, useRef, useState } from 'react' +import { ResponsiveBar } from '@nivo/bar' import dayjs from 'dayjs' import { Link, useParams } from 'react-router-dom' -import { getNavigationsValue } from '@ijl/cli' +import { getNavigationsValue, getFeatures } from '@ijl/cli' import { useForm, Controller } from 'react-hook-form' import { Breadcrumb, @@ -51,9 +52,14 @@ import { api } from '../__data__/api/api' import { isTeacher } from '../utils/user' import { qrCode } from '../assets' import { Lesson } from '../__data__/model' +import pkg from '../../package.json' import { ErrorSpan, BreadcrumbsWrapper } from './style' +const features = getFeatures('journal') + +const barFeature = features?.['lesson.bar'] + interface NewLessonForm { name: string date: string @@ -333,7 +339,7 @@ const LessonList = () => { - + {isTeacher(user) && ( {showForm ? ( @@ -363,7 +369,17 @@ const LessonList = () => { )} )} - + {barFeature && ( + + ({ + lessonIndex: `#${index + 1}`, + count: lesson.students.length, + }))} + /> + + )} + @@ -435,3 +451,29 @@ const LessonList = () => { } export default LessonList + +const Bar = ({ data /* see data tab */ }) => ( + + e.id + ': ' + e.formattedValue + ' on lection: ' + e.indexValue + } + /> +) diff --git a/stubs/mocks/lessons/list/success.json b/stubs/mocks/lessons/list/success.json index 2117cdf..19cad60 100644 --- a/stubs/mocks/lessons/list/success.json +++ b/stubs/mocks/lessons/list/success.json @@ -1,751 +1,592 @@ { "success": true, "body": [ - { - "_id": "65e2e5fbec37fec650f28489", - "name": "ВВЕДЕНИЕ В ВЕБ-РАЗРАБОТКУ. ИНСТРУМЕНТАРИЙ, ОБЗОР ВЕБ-ТЕХНОЛОГИЙ", - "students": [ - { - "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", - "email_verified": true, - "name": "Мария Капитанова", - "preferred_username": "maryaKapitan@gmail.com", - "given_name": "Мария", - "family_name": "Капитанова", - "email": "maryaKapitan@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" - }, - { - "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", - "email_verified": true, - "name": "Евгений Кореной", - "preferred_username": "koren@gmail.com", - "given_name": "Кореной", - "family_name": "Евгений", - "email": "koren@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" - }, - { - "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", - "email_verified": true, - "name": "Ирина Игнатьева", - "preferred_username": "irign@gmailcom", - "given_name": "Ирина", - "family_name": "Игнатьева", - "email": "irign@gmailcom", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" - }, - { - "sub": "95ccc005-95b9-4305-9447-364a32033911", - "email_verified": true, - "name": "Иван Петров", - "preferred_username": "petrov@mail.ru", - "given_name": "Иван", - "family_name": "Петров", - "email": "petrov@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" - }, - { - "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", - "email_verified": true, - "name": "Константин Тимуров", - "preferred_username": "konstantK@gmail.com", - "given_name": "Константин", - "family_name": "Тимуров", - "email": "konstantK@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" - }, - { - "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", - "email_verified": true, - "name": "Александра Питерская", - "preferred_username": "piteralex@gmail.com", - "given_name": "Александра", - "family_name": "Питерская", - "email": "piteralex@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" - }, - { - "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", - "email_verified": true, - "name": "Анастасия Светлых", - "preferred_username": "anastasya@gmail.ocm", - "given_name": "Анастасия", - "family_name": "Светлых", - "email": "anastasya@gmail.ocm", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" - }, - { - "sub": "b4634921-00b3-4082-9284-8ac47f269394", - "email_verified": true, - "name": "Эмилия Снежко", - "preferred_username": "emi@mail.ru", - "given_name": "Эмилия", - "family_name": "Снежко", - "email": "emi@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" - }, - { - "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", - "email_verified": true, - "name": "Юлия Бобова", - "preferred_username": "bobova@gmail.com", - "given_name": "Юлия", - "family_name": "Бобова", - "email": "bobova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" - }, - { - "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", - "email_verified": true, - "name": "Анна Самоварова", - "preferred_username": "samovar@gmail.com", - "given_name": "Анна", - "family_name": "Самоварова", - "email": "samovar@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" - }, - { - "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", - "email_verified": true, - "name": "Евгения Жужова", - "preferred_username": "zhuzhova@gmail.com", - "given_name": "Евгения", - "family_name": "Жужова", - "email": "zhuzhova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" - }, - { - "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", - "email_verified": true, - "name": "Эдгар Петренко", - "preferred_username": "petrenk@mail.ru", - "given_name": "Эдгар", - "family_name": "Петренко", - "email": "petrenk@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" - }, - { - "sub": "4082b72a-4730-4841-ad68-06a0e19263df", - "email_verified": true, - "name": "Елена Вавилон", - "preferred_username": "elenvavil@mail.ru", - "given_name": "Елена", - "family_name": "Вавилон", - "email": "elenvavil@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" - }, - { - "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", - "email_verified": true, - "name": "Ольга Шарова", - "preferred_username": "julyashap", - "given_name": "Ольга", - "family_name": "Шарова", - "email": "sharova@mail.ru" - } - - ], - "date": "2024-03-02T08:40:27.390Z", - "created": "2024-03-02T08:40:27.390Z", - "__v": 0 - }, - { - "_id": "65e301c4ec37fec650f2aafe", - "name": "НАСТРОЙКА ОКРУЖЕНИЯ (GIT + VSCODE + NODEJS)", - "students": [ - { - "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", - "email_verified": true, - "name": "Мария Капитанова", - "preferred_username": "maryaKapitan@gmail.com", - "given_name": "Мария", - "family_name": "Капитанова", - "email": "maryaKapitan@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" - }, - { - "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", - "email_verified": true, - "name": "Евгений Кореной", - "preferred_username": "koren@gmail.com", - "given_name": "Кореной", - "family_name": "Евгений", - "email": "koren@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" - }, - { - "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", - "email_verified": true, - "name": "Ирина Игнатьева", - "preferred_username": "irign@gmailcom", - "given_name": "Ирина", - "family_name": "Игнатьева", - "email": "irign@gmailcom", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" - }, - { - "sub": "95ccc005-95b9-4305-9447-364a32033911", - "email_verified": true, - "name": "Иван Петров", - "preferred_username": "petrov@mail.ru", - "given_name": "Иван", - "family_name": "Петров", - "email": "petrov@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" - }, - { - "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", - "email_verified": true, - "name": "Константин Тимуров", - "preferred_username": "konstantK@gmail.com", - "given_name": "Константин", - "family_name": "Тимуров", - "email": "konstantK@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" - }, - { - "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", - "email_verified": true, - "name": "Александра Питерская", - "preferred_username": "piteralex@gmail.com", - "given_name": "Александра", - "family_name": "Питерская", - "email": "piteralex@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" - }, - { - "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", - "email_verified": true, - "name": "Анастасия Светлых", - "preferred_username": "anastasya@gmail.ocm", - "given_name": "Анастасия", - "family_name": "Светлых", - "email": "anastasya@gmail.ocm", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" - }, - { - "sub": "b4634921-00b3-4082-9284-8ac47f269394", - "email_verified": true, - "name": "Эмилия Снежко", - "preferred_username": "emi@mail.ru", - "given_name": "Эмилия", - "family_name": "Снежко", - "email": "emi@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" - }, - { - "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", - "email_verified": true, - "name": "Юлия Бобова", - "preferred_username": "bobova@gmail.com", - "given_name": "Юлия", - "family_name": "Бобова", - "email": "bobova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" - }, - { - "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", - "email_verified": true, - "name": "Анна Самоварова", - "preferred_username": "samovar@gmail.com", - "given_name": "Анна", - "family_name": "Самоварова", - "email": "samovar@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" - }, - { - "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", - "email_verified": true, - "name": "Евгения Жужова", - "preferred_username": "zhuzhova@gmail.com", - "given_name": "Евгения", - "family_name": "Жужова", - "email": "zhuzhova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" - }, - { - "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", - "email_verified": true, - "name": "Эдгар Петренко", - "preferred_username": "petrenk@mail.ru", - "given_name": "Эдгар", - "family_name": "Петренко", - "email": "petrenk@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" - }, - { - "sub": "4082b72a-4730-4841-ad68-06a0e19263df", - "email_verified": true, - "name": "Елена Вавилон", - "preferred_username": "elenvavil@mail.ru", - "given_name": "Елена", - "family_name": "Вавилон", - "email": "elenvavil@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" - }, - { - "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", - "email_verified": true, - "name": "Ольга Шарова", - "preferred_username": "julyashap", - "given_name": "Ольга", - "family_name": "Шарова", - "email": "sharova@mail.ru" - } - - ], - "date": "2024-03-02T10:39:00.718Z", - "created": "2024-03-02T10:39:00.718Z", - "__v": 0 - }, - { - "_id": "65e78bebced789d2f6791315", - "name": "ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСОВ (MIND MAP. FIGMA)", - "students": [ - { - "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", - "email_verified": true, - "name": "Мария Капитанова", - "preferred_username": "maryaKapitan@gmail.com", - "given_name": "Мария", - "family_name": "Капитанова", - "email": "maryaKapitan@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" - }, - { - "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", - "email_verified": true, - "name": "Евгений Кореной", - "preferred_username": "koren@gmail.com", - "given_name": "Кореной", - "family_name": "Евгений", - "email": "koren@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" - }, - { - "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", - "email_verified": true, - "name": "Ирина Игнатьева", - "preferred_username": "irign@gmailcom", - "given_name": "Ирина", - "family_name": "Игнатьева", - "email": "irign@gmailcom", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" - }, - { - "sub": "95ccc005-95b9-4305-9447-364a32033911", - "email_verified": true, - "name": "Иван Петров", - "preferred_username": "petrov@mail.ru", - "given_name": "Иван", - "family_name": "Петров", - "email": "petrov@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" - }, - { - "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", - "email_verified": true, - "name": "Константин Тимуров", - "preferred_username": "konstantK@gmail.com", - "given_name": "Константин", - "family_name": "Тимуров", - "email": "konstantK@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" - }, - { - "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", - "email_verified": true, - "name": "Александра Питерская", - "preferred_username": "piteralex@gmail.com", - "given_name": "Александра", - "family_name": "Питерская", - "email": "piteralex@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" - }, - { - "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", - "email_verified": true, - "name": "Анастасия Светлых", - "preferred_username": "anastasya@gmail.ocm", - "given_name": "Анастасия", - "family_name": "Светлых", - "email": "anastasya@gmail.ocm", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" - }, - { - "sub": "b4634921-00b3-4082-9284-8ac47f269394", - "email_verified": true, - "name": "Эмилия Снежко", - "preferred_username": "emi@mail.ru", - "given_name": "Эмилия", - "family_name": "Снежко", - "email": "emi@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" - }, - { - "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", - "email_verified": true, - "name": "Юлия Бобова", - "preferred_username": "bobova@gmail.com", - "given_name": "Юлия", - "family_name": "Бобова", - "email": "bobova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" - }, - { - "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", - "email_verified": true, - "name": "Анна Самоварова", - "preferred_username": "samovar@gmail.com", - "given_name": "Анна", - "family_name": "Самоварова", - "email": "samovar@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" - }, - { - "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", - "email_verified": true, - "name": "Евгения Жужова", - "preferred_username": "zhuzhova@gmail.com", - "given_name": "Евгения", - "family_name": "Жужова", - "email": "zhuzhova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" - }, - { - "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", - "email_verified": true, - "name": "Эдгар Петренко", - "preferred_username": "petrenk@mail.ru", - "given_name": "Эдгар", - "family_name": "Петренко", - "email": "petrenk@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" - }, - { - "sub": "4082b72a-4730-4841-ad68-06a0e19263df", - "email_verified": true, - "name": "Елена Вавилон", - "preferred_username": "elenvavil@mail.ru", - "given_name": "Елена", - "family_name": "Вавилон", - "email": "elenvavil@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" - }, - { - "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", - "email_verified": true, - "name": "Ольга Шарова", - "preferred_username": "julyashap", - "given_name": "Ольга", - "family_name": "Шарова", - "email": "sharova@mail.ru" - } - - ], - "date": "2024-03-08T21:17:31.401Z", - "created": "2024-03-05T21:17:31.401Z", - "__v": 1 - }, - { - "_id": "65e78c0fced789d2f679131b", - "name": "ТЕХНОЛОГИЯ HTML СТРУКТУРА ДОКУМЕНТА И ОСНОВНЫЕ ПОНЯТИЯ.", - "students": [ - { - "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", - "email_verified": true, - "name": "Мария Капитанова", - "preferred_username": "maryaKapitan@gmail.com", - "given_name": "Мария", - "family_name": "Капитанова", - "email": "maryaKapitan@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" - }, - { - "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", - "email_verified": true, - "name": "Евгений Кореной", - "preferred_username": "koren@gmail.com", - "given_name": "Кореной", - "family_name": "Евгений", - "email": "koren@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" - }, - { - "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", - "email_verified": true, - "name": "Ирина Игнатьева", - "preferred_username": "irign@gmailcom", - "given_name": "Ирина", - "family_name": "Игнатьева", - "email": "irign@gmailcom", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" - }, - { - "sub": "95ccc005-95b9-4305-9447-364a32033911", - "email_verified": true, - "name": "Иван Петров", - "preferred_username": "petrov@mail.ru", - "given_name": "Иван", - "family_name": "Петров", - "email": "petrov@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" - }, - { - "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", - "email_verified": true, - "name": "Константин Тимуров", - "preferred_username": "konstantK@gmail.com", - "given_name": "Константин", - "family_name": "Тимуров", - "email": "konstantK@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" - }, - { - "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", - "email_verified": true, - "name": "Александра Питерская", - "preferred_username": "piteralex@gmail.com", - "given_name": "Александра", - "family_name": "Питерская", - "email": "piteralex@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" - }, - { - "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", - "email_verified": true, - "name": "Анастасия Светлых", - "preferred_username": "anastasya@gmail.ocm", - "given_name": "Анастасия", - "family_name": "Светлых", - "email": "anastasya@gmail.ocm", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" - }, - { - "sub": "b4634921-00b3-4082-9284-8ac47f269394", - "email_verified": true, - "name": "Эмилия Снежко", - "preferred_username": "emi@mail.ru", - "given_name": "Эмилия", - "family_name": "Снежко", - "email": "emi@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" - }, - { - "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", - "email_verified": true, - "name": "Юлия Бобова", - "preferred_username": "bobova@gmail.com", - "given_name": "Юлия", - "family_name": "Бобова", - "email": "bobova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" - }, - { - "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", - "email_verified": true, - "name": "Анна Самоварова", - "preferred_username": "samovar@gmail.com", - "given_name": "Анна", - "family_name": "Самоварова", - "email": "samovar@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" - }, - { - "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", - "email_verified": true, - "name": "Евгения Жужова", - "preferred_username": "zhuzhova@gmail.com", - "given_name": "Евгения", - "family_name": "Жужова", - "email": "zhuzhova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" - }, - { - "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", - "email_verified": true, - "name": "Эдгар Петренко", - "preferred_username": "petrenk@mail.ru", - "given_name": "Эдгар", - "family_name": "Петренко", - "email": "petrenk@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" - }, - { - "sub": "4082b72a-4730-4841-ad68-06a0e19263df", - "email_verified": true, - "name": "Елена Вавилон", - "preferred_username": "elenvavil@mail.ru", - "given_name": "Елена", - "family_name": "Вавилон", - "email": "elenvavil@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" - }, - { - "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", - "email_verified": true, - "name": "Ольга Шарова", - "preferred_username": "julyashap", - "given_name": "Ольга", - "family_name": "Шарова", - "email": "sharova@mail.ru" - } - - ], - "date": "2024-03-08T21:18:07.033Z", - "created": "2024-03-05T21:18:07.033Z", - "__v": 22 - }, - { - "_id": "65e78c0fced789d2f6791tt5", - "name": "ВВОДНАЯ ПО JS.ПРИМЕНЕНИЕ И СПОСОБЫ ПОДКЛЮЧЕНИЯ НА СТРАНИЦЕ. LET, CONST. БАЗОВЫЕ ТИПЫ ДАННЫХ, ПРИВЕДЕНИЕ ТИПОВ. ПЕРЕМЕННЫЕ, ОБЛАСТЬ ВИДИМОСТИ ПЕРЕМЕННЫХ", - "students": [ - { - "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", - "email_verified": true, - "name": "Мария Капитанова", - "preferred_username": "maryaKapitan@gmail.com", - "given_name": "Мария", - "family_name": "Капитанова", - "email": "maryaKapitan@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" - }, - { - "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", - "email_verified": true, - "name": "Евгений Кореной", - "preferred_username": "koren@gmail.com", - "given_name": "Кореной", - "family_name": "Евгений", - "email": "koren@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" - }, - { - "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", - "email_verified": true, - "name": "Ирина Игнатьева", - "preferred_username": "irign@gmailcom", - "given_name": "Ирина", - "family_name": "Игнатьева", - "email": "irign@gmailcom", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" - }, - { - "sub": "95ccc005-95b9-4305-9447-364a32033911", - "email_verified": true, - "name": "Иван Петров", - "preferred_username": "petrov@mail.ru", - "given_name": "Иван", - "family_name": "Петров", - "email": "petrov@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" - }, - { - "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", - "email_verified": true, - "name": "Константин Тимуров", - "preferred_username": "konstantK@gmail.com", - "given_name": "Константин", - "family_name": "Тимуров", - "email": "konstantK@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" - }, - { - "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", - "email_verified": true, - "name": "Александра Питерская", - "preferred_username": "piteralex@gmail.com", - "given_name": "Александра", - "family_name": "Питерская", - "email": "piteralex@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" - }, - { - "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", - "email_verified": true, - "name": "Анастасия Светлых", - "preferred_username": "anastasya@gmail.ocm", - "given_name": "Анастасия", - "family_name": "Светлых", - "email": "anastasya@gmail.ocm", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" - }, - { - "sub": "b4634921-00b3-4082-9284-8ac47f269394", - "email_verified": true, - "name": "Эмилия Снежко", - "preferred_username": "emi@mail.ru", - "given_name": "Эмилия", - "family_name": "Снежко", - "email": "emi@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" - }, - { - "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", - "email_verified": true, - "name": "Юлия Бобова", - "preferred_username": "bobova@gmail.com", - "given_name": "Юлия", - "family_name": "Бобова", - "email": "bobova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" - }, - { - "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", - "email_verified": true, - "name": "Анна Самоварова", - "preferred_username": "samovar@gmail.com", - "given_name": "Анна", - "family_name": "Самоварова", - "email": "samovar@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" - }, - { - "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", - "email_verified": true, - "name": "Евгения Жужова", - "preferred_username": "zhuzhova@gmail.com", - "given_name": "Евгения", - "family_name": "Жужова", - "email": "zhuzhova@gmail.com", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" - }, - { - "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", - "email_verified": true, - "name": "Эдгар Петренко", - "preferred_username": "petrenk@mail.ru", - "given_name": "Эдгар", - "family_name": "Петренко", - "email": "petrenk@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" - }, - { - "sub": "4082b72a-4730-4841-ad68-06a0e19263df", - "email_verified": true, - "name": "Елена Вавилон", - "preferred_username": "elenvavil@mail.ru", - "given_name": "Елена", - "family_name": "Вавилон", - "email": "elenvavil@mail.ru", - "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" - }, - { - "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", - "email_verified": true, - "name": "Ольга Шарова", - "preferred_username": "julyashap", - "given_name": "Ольга", - "family_name": "Шарова", - "email": "sharova@mail.ru" - } - - ], - "date": "2024-03-08T21:18:07.033Z", - "created": "2024-03-05T21:18:07.033Z", - "__v": 22 - } + { + "_id": "65e2e5fbec37fec650f28489", + "name": "ВВЕДЕНИЕ В ВЕБ-РАЗРАБОТКУ. ИНСТРУМЕНТАРИЙ, ОБЗОР ВЕБ-ТЕХНОЛОГИЙ", + "students": [ + { + "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", + "email_verified": true, + "name": "Мария Капитанова", + "preferred_username": "maryaKapitan@gmail.com", + "given_name": "Мария", + "family_name": "Капитанова", + "email": "maryaKapitan@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" + }, + { + "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", + "email_verified": true, + "name": "Евгений Кореной", + "preferred_username": "koren@gmail.com", + "given_name": "Кореной", + "family_name": "Евгений", + "email": "koren@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" + }, + { + "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", + "email_verified": true, + "name": "Ирина Игнатьева", + "preferred_username": "irign@gmailcom", + "given_name": "Ирина", + "family_name": "Игнатьева", + "email": "irign@gmailcom", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" + }, + { + "sub": "95ccc005-95b9-4305-9447-364a32033911", + "email_verified": true, + "name": "Иван Петров", + "preferred_username": "petrov@mail.ru", + "given_name": "Иван", + "family_name": "Петров", + "email": "petrov@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" + }, + { + "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", + "email_verified": true, + "name": "Константин Тимуров", + "preferred_username": "konstantK@gmail.com", + "given_name": "Константин", + "family_name": "Тимуров", + "email": "konstantK@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" + }, + { + "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", + "email_verified": true, + "name": "Александра Питерская", + "preferred_username": "piteralex@gmail.com", + "given_name": "Александра", + "family_name": "Питерская", + "email": "piteralex@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" + }, + { + "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", + "email_verified": true, + "name": "Анастасия Светлых", + "preferred_username": "anastasya@gmail.ocm", + "given_name": "Анастасия", + "family_name": "Светлых", + "email": "anastasya@gmail.ocm", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" + }, + { + "sub": "b4634921-00b3-4082-9284-8ac47f269394", + "email_verified": true, + "name": "Эмилия Снежко", + "preferred_username": "emi@mail.ru", + "given_name": "Эмилия", + "family_name": "Снежко", + "email": "emi@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" + }, + { + "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", + "email_verified": true, + "name": "Юлия Бобова", + "preferred_username": "bobova@gmail.com", + "given_name": "Юлия", + "family_name": "Бобова", + "email": "bobova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" + }, + { + "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", + "email_verified": true, + "name": "Анна Самоварова", + "preferred_username": "samovar@gmail.com", + "given_name": "Анна", + "family_name": "Самоварова", + "email": "samovar@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" + }, + { + "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", + "email_verified": true, + "name": "Евгения Жужова", + "preferred_username": "zhuzhova@gmail.com", + "given_name": "Евгения", + "family_name": "Жужова", + "email": "zhuzhova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" + }, + { + "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", + "email_verified": true, + "name": "Эдгар Петренко", + "preferred_username": "petrenk@mail.ru", + "given_name": "Эдгар", + "family_name": "Петренко", + "email": "petrenk@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" + }, + { + "sub": "4082b72a-4730-4841-ad68-06a0e19263df", + "email_verified": true, + "name": "Елена Вавилон", + "preferred_username": "elenvavil@mail.ru", + "given_name": "Елена", + "family_name": "Вавилон", + "email": "elenvavil@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" + }, + { + "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", + "email_verified": true, + "name": "Ольга Шарова", + "preferred_username": "julyashap", + "given_name": "Ольга", + "family_name": "Шарова", + "email": "sharova@mail.ru" + } + ], + "date": "2024-03-02T08:40:27.390Z", + "created": "2024-03-02T08:40:27.390Z", + "__v": 0 + }, + { + "_id": "65e301c4ec37fec650f2aafe", + "name": "НАСТРОЙКА ОКРУЖЕНИЯ (GIT + VSCODE + NODEJS)", + "students": [ + { + "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", + "email_verified": true, + "name": "Евгений Кореной", + "preferred_username": "koren@gmail.com", + "given_name": "Кореной", + "family_name": "Евгений", + "email": "koren@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" + }, + { + "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", + "email_verified": true, + "name": "Ирина Игнатьева", + "preferred_username": "irign@gmailcom", + "given_name": "Ирина", + "family_name": "Игнатьева", + "email": "irign@gmailcom", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" + }, + + { + "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", + "email_verified": true, + "name": "Константин Тимуров", + "preferred_username": "konstantK@gmail.com", + "given_name": "Константин", + "family_name": "Тимуров", + "email": "konstantK@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" + }, + { + "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", + "email_verified": true, + "name": "Александра Питерская", + "preferred_username": "piteralex@gmail.com", + "given_name": "Александра", + "family_name": "Питерская", + "email": "piteralex@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" + }, + + { + "sub": "b4634921-00b3-4082-9284-8ac47f269394", + "email_verified": true, + "name": "Эмилия Снежко", + "preferred_username": "emi@mail.ru", + "given_name": "Эмилия", + "family_name": "Снежко", + "email": "emi@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" + }, + { + "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", + "email_verified": true, + "name": "Юлия Бобова", + "preferred_username": "bobova@gmail.com", + "given_name": "Юлия", + "family_name": "Бобова", + "email": "bobova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" + }, + { + "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", + "email_verified": true, + "name": "Анна Самоварова", + "preferred_username": "samovar@gmail.com", + "given_name": "Анна", + "family_name": "Самоварова", + "email": "samovar@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" + }, + { + "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", + "email_verified": true, + "name": "Евгения Жужова", + "preferred_username": "zhuzhova@gmail.com", + "given_name": "Евгения", + "family_name": "Жужова", + "email": "zhuzhova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" + }, + + { + "sub": "4082b72a-4730-4841-ad68-06a0e19263df", + "email_verified": true, + "name": "Елена Вавилон", + "preferred_username": "elenvavil@mail.ru", + "given_name": "Елена", + "family_name": "Вавилон", + "email": "elenvavil@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" + }, + { + "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", + "email_verified": true, + "name": "Ольга Шарова", + "preferred_username": "julyashap", + "given_name": "Ольга", + "family_name": "Шарова", + "email": "sharova@mail.ru" + } + ], + "date": "2024-03-02T10:39:00.718Z", + "created": "2024-03-02T10:39:00.718Z", + "__v": 0 + }, + { + "_id": "65e78bebced789d2f6791315", + "name": "ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСОВ (MIND MAP. FIGMA)", + "students": [ + { + "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", + "email_verified": true, + "name": "Мария Капитанова", + "preferred_username": "maryaKapitan@gmail.com", + "given_name": "Мария", + "family_name": "Капитанова", + "email": "maryaKapitan@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" + }, + { + "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", + "email_verified": true, + "name": "Евгений Кореной", + "preferred_username": "koren@gmail.com", + "given_name": "Кореной", + "family_name": "Евгений", + "email": "koren@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" + }, + + { + "sub": "95ccc005-95b9-4305-9447-364a32033911", + "email_verified": true, + "name": "Иван Петров", + "preferred_username": "petrov@mail.ru", + "given_name": "Иван", + "family_name": "Петров", + "email": "petrov@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" + }, + { + "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", + "email_verified": true, + "name": "Константин Тимуров", + "preferred_username": "konstantK@gmail.com", + "given_name": "Константин", + "family_name": "Тимуров", + "email": "konstantK@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" + }, + { + "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", + "email_verified": true, + "name": "Александра Питерская", + "preferred_username": "piteralex@gmail.com", + "given_name": "Александра", + "family_name": "Питерская", + "email": "piteralex@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" + }, + + { + "sub": "b4634921-00b3-4082-9284-8ac47f269394", + "email_verified": true, + "name": "Эмилия Снежко", + "preferred_username": "emi@mail.ru", + "given_name": "Эмилия", + "family_name": "Снежко", + "email": "emi@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" + }, + { + "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", + "email_verified": true, + "name": "Юлия Бобова", + "preferred_username": "bobova@gmail.com", + "given_name": "Юлия", + "family_name": "Бобова", + "email": "bobova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" + }, + { + "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", + "email_verified": true, + "name": "Анна Самоварова", + "preferred_username": "samovar@gmail.com", + "given_name": "Анна", + "family_name": "Самоварова", + "email": "samovar@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" + }, + { + "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", + "email_verified": true, + "name": "Евгения Жужова", + "preferred_username": "zhuzhova@gmail.com", + "given_name": "Евгения", + "family_name": "Жужова", + "email": "zhuzhova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" + }, + { + "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", + "email_verified": true, + "name": "Эдгар Петренко", + "preferred_username": "petrenk@mail.ru", + "given_name": "Эдгар", + "family_name": "Петренко", + "email": "petrenk@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" + }, + { + "sub": "4082b72a-4730-4841-ad68-06a0e19263df", + "email_verified": true, + "name": "Елена Вавилон", + "preferred_username": "elenvavil@mail.ru", + "given_name": "Елена", + "family_name": "Вавилон", + "email": "elenvavil@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" + }, + { + "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", + "email_verified": true, + "name": "Ольга Шарова", + "preferred_username": "julyashap", + "given_name": "Ольга", + "family_name": "Шарова", + "email": "sharova@mail.ru" + } + ], + "date": "2024-03-08T21:17:31.401Z", + "created": "2024-03-05T21:17:31.401Z", + "__v": 1 + }, + { + "_id": "65e78c0fced789d2f679131b", + "name": "ТЕХНОЛОГИЯ HTML СТРУКТУРА ДОКУМЕНТА И ОСНОВНЫЕ ПОНЯТИЯ.", + "students": [ + { + "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", + "email_verified": true, + "name": "Мария Капитанова", + "preferred_username": "maryaKapitan@gmail.com", + "given_name": "Мария", + "family_name": "Капитанова", + "email": "maryaKapitan@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" + }, + + { + "sub": "b4634921-00b3-4082-9284-8ac47f269394", + "email_verified": true, + "name": "Эмилия Снежко", + "preferred_username": "emi@mail.ru", + "given_name": "Эмилия", + "family_name": "Снежко", + "email": "emi@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" + }, + { + "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", + "email_verified": true, + "name": "Юлия Бобова", + "preferred_username": "bobova@gmail.com", + "given_name": "Юлия", + "family_name": "Бобова", + "email": "bobova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" + }, + { + "sub": "c273a3e3-f7ba-4057-8c57-a1f43b6174a5", + "email_verified": true, + "name": "Анна Самоварова", + "preferred_username": "samovar@gmail.com", + "given_name": "Анна", + "family_name": "Самоварова", + "email": "samovar@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJOhIMdQkXPd55wTMgTTkUCnqbsu4EncgEPm67iz_mK=s96-c" + }, + { + "sub": "8555885b-715c-4dee-a7c5-9563a6a05211", + "email_verified": true, + "name": "Евгения Жужова", + "preferred_username": "zhuzhova@gmail.com", + "given_name": "Евгения", + "family_name": "Жужова", + "email": "zhuzhova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJUtJBAVBm642AxoGpMDDMV8CPu3MEoLjU3hmO7oisG=s96-c" + }, + { + "sub": "12dee54f-64e9-4be3-9cb0-02ff07ab24fe", + "email_verified": true, + "name": "Эдгар Петренко", + "preferred_username": "petrenk@mail.ru", + "given_name": "Эдгар", + "family_name": "Петренко", + "email": "petrenk@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocLgKAZag32kpGVHMVbh_GsU-rX_MAtmeVIPoov0ZPBYIA=s96-c" + }, + { + "sub": "4082b72a-4730-4841-ad68-06a0e19263df", + "email_verified": true, + "name": "Елена Вавилон", + "preferred_username": "elenvavil@mail.ru", + "given_name": "Елена", + "family_name": "Вавилон", + "email": "elenvavil@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" + } + ], + "date": "2024-03-08T21:18:07.033Z", + "created": "2024-03-05T21:18:07.033Z", + "__v": 22 + }, + { + "_id": "65e78c0fced789d2f6791tt5", + "name": "ВВОДНАЯ ПО JS.ПРИМЕНЕНИЕ И СПОСОБЫ ПОДКЛЮЧЕНИЯ НА СТРАНИЦЕ. LET, CONST. БАЗОВЫЕ ТИПЫ ДАННЫХ, ПРИВЕДЕНИЕ ТИПОВ. ПЕРЕМЕННЫЕ, ОБЛАСТЬ ВИДИМОСТИ ПЕРЕМЕННЫХ", + "students": [ + { + "sub": "fcde3f22-d9ba-412a-a572-c59e515a290f", + "email_verified": true, + "name": "Мария Капитанова", + "preferred_username": "maryaKapitan@gmail.com", + "given_name": "Мария", + "family_name": "Капитанова", + "email": "maryaKapitan@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJgIjjOFD2YUSyRF5kH4jaysE6X5p-kq0Cg0CFncfMi=s96-c" + }, + { + "sub": "5b072deb-33ee-443e-9718-3b5720a3dfb7", + "email_verified": true, + "name": "Евгений Кореной", + "preferred_username": "koren@gmail.com", + "given_name": "Кореной", + "family_name": "Евгений", + "email": "koren@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJpVhDeG-Rpjjm2Un6r8ACz_s_injuIFKpzXf3qmyCn3Cg=s96-c" + }, + { + "sub": "7adf0cd1-cf07-4079-88d8-1a5c9b8f42c2", + "email_verified": true, + "name": "Ирина Игнатьева", + "preferred_username": "irign@gmailcom", + "given_name": "Ирина", + "family_name": "Игнатьева", + "email": "irign@gmailcom", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocL45E4Gt8D5oyIl3ipkcGsv4ShWGs3bdlwEMA_1rzGZ=s96-c" + }, + { + "sub": "95ccc005-95b9-4305-9447-364a32033911", + "email_verified": true, + "name": "Иван Петров", + "preferred_username": "petrov@mail.ru", + "given_name": "Иван", + "family_name": "Петров", + "email": "petrov@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocIgQn5mfDAh2djx-3ofG9z1Em26ZyuUgVPd-6rDOl6z=s96-c" + }, + { + "sub": "ede1ef2c-6ecf-484a-8fb8-282a77e1caa1", + "email_verified": true, + "name": "Константин Тимуров", + "preferred_username": "konstantK@gmail.com", + "given_name": "Константин", + "family_name": "Тимуров", + "email": "konstantK@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJjnOfqaoAU_D4STrJPN9fPOeJ8tv60WbWVZu2ZWcHs=s96-c" + }, + { + "sub": "92cc6a15-805c-4439-b592-b23f32d6d208", + "email_verified": true, + "name": "Александра Питерская", + "preferred_username": "piteralex@gmail.com", + "given_name": "Александра", + "family_name": "Питерская", + "email": "piteralex@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKhbCbWvBBc_m7bjU5sLCE-dQ-KygBk-aUCSR8XaYtq=s96-c" + }, + { + "sub": "4a3ba8b8-4120-4877-a160-be9ba4d5b3e3", + "email_verified": true, + "name": "Анастасия Светлых", + "preferred_username": "anastasya@gmail.ocm", + "given_name": "Анастасия", + "family_name": "Светлых", + "email": "anastasya@gmail.ocm", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJnsM8UGhbH806yLVgWZ17g3-gJFVcG0Uz5kvqT7dvC=s96-c" + }, + { + "sub": "b4634921-00b3-4082-9284-8ac47f269394", + "email_verified": true, + "name": "Эмилия Снежко", + "preferred_username": "emi@mail.ru", + "given_name": "Эмилия", + "family_name": "Снежко", + "email": "emi@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocI98dzSFQDPr2LXMPFEUX8KLY6bY2m08O_aAj2B5KVNKg=s96-c" + }, + { + "sub": "bf1a95aa-39a2-4528-9b8d-319409995df5", + "email_verified": true, + "name": "Юлия Бобова", + "preferred_username": "bobova@gmail.com", + "given_name": "Юлия", + "family_name": "Бобова", + "email": "bobova@gmail.com", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocJ_Ud4iI-jgqcJ3QJcWpESbRLX_C1BnB8_7uTTC-4Dn=s96-c" + }, + { + "sub": "4082b72a-4730-4841-ad68-06a0e19263df", + "email_verified": true, + "name": "Елена Вавилон", + "preferred_username": "elenvavil@mail.ru", + "given_name": "Елена", + "family_name": "Вавилон", + "email": "elenvavil@mail.ru", + "picture": "https://lh3.googleusercontent.com/a/ACg8ocKXcmzcqRch2--j2Ge2m9e8MIOZ8y1MjsQ0cSEoXOmW=s96-c" + }, + { + "sub": "9e8a08d8-d76a-4f26-99c5-9a1d3c067104", + "email_verified": true, + "name": "Ольга Шарова", + "preferred_username": "julyashap", + "given_name": "Ольга", + "family_name": "Шарова", + "email": "sharova@mail.ru" + } + ], + "date": "2024-03-08T21:18:07.033Z", + "created": "2024-03-05T21:18:07.033Z", + "__v": 22 + } ] } -