190 Commits
Author SHA1 Message Date
7eba02ac1f CB-4535. Remove Ability to edit all users team (#2341)
* CB-4535. Remove Ability to edit all users team

* CB-4536. Fixed test

* CB-4536. Refactor after review.

* CB-4536. Refactor after review

* CB-4536. Refactor after review

* CB-4536. Refactor after review

* CB-4536. Refactor after review

* CB-4536. Refactor after review.

* CB-4536. Auto filled default group for all user when application is started

* CB-4536. Refactor after review

* CB-4536. Fixed update empty list

* CB-4536 feat: display default user team info

* CB-4536 chore: code cleanup

---------

Co-authored-by: DenisSinelnikov <denis.sinelnikov@dbaever.com>
Co-authored-by: kseniaguzeeva <112612526+kseniaguzeeva@users.noreply.github.com>
Co-authored-by: Aleksei Potsetsuev <wrouds@gmail.com>
2024-02-07 18:15:42 +03:00
fdde4348a2 CB-3703 save product configuration from ui (#2334)
* CB-4560 api for saving product configuration

* CB-4560 save product config in te

* CB-4560 move update product config to mutations

* CB-3703 feat: extend base components

* CB-3703 feat: settings editor

* CB-3703 chore: review fixes

* CB-3703 chore: pr review

* CB-3703 feat: update server configuration icon

* CB-4560 add events

* CB-3703 fix: localization

* CB-3703 chore: localization

---------

Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2024-01-31 20:33:05 +03:00
f41c485ba0 Cb 4382 anonymous access restricted error (#2302)
* CB-4382 fixed anonymous error

* CB-4382 move EAdminPermission to root-resources in order to FeatureResource can import it

* CB-4282 EAdminPermission moved to core-root

* CB-4382 update-ts-references

* СB-4382 removed unneeded deps in packages

* CB-4282 revert needed deps to be present

* CB-4382 reverted popperjs for plugin-data-spreadsheet-new

* CB-4382 TE error fix for fast opening admin server settings

* CB-4382 update yarn lock

---------

Co-authored-by: s.teleshev <s.teleshev@mu.se>
Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: kseniaguzeeva <112612526+kseniaguzeeva@users.noreply.github.com>
2024-01-25 17:42:58 +03:00
47f1267957 Cb 4523 remove identity providers tab (#2310)
* CB-4523 move identity providers from plugin-authentication-administration

* CB-4523 remove * dep

---------

Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2024-01-24 09:42:03 +03:00
alex 10c1b374fc Cb 4534 fix circle deps (#2312)
* CB-4534 fix empty password validation (#2311)

* CB-4534 move password policy hook to core blocks
2024-01-18 16:45:04 +01:00
8ba0eb64b8 CB-4264 password policy configuration (#2301)
* CB-4491 password policy config api

* CB-4491 move policy config to sm

* CB-4491 cb config fix

* CB-4264 add password policy

* CB-4491 deserialization fix

* CB-4491 deserialization fix

* CB-4264 add title

* CB-4264 rename params

* CB-4264 fix naming

* CB-4264 accept any language

---------

Co-authored-by: naumov <iamemptyhuh@gmail.com>
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2024-01-17 19:26:01 +01:00
alexandDaria Marutkina 5041312601 CB-4442 add box styles to the form itself (#2277)
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2024-01-10 14:37:10 +01:00
serge-rider 904375aa66 dbeaver/pro#2341 Copyright update 2024-01-10 10:31:38 +03:00
9aace7c0ce Cb 4364 remove spaces at the beginning of the input fields (#2252)
* CB-4364 create connection trim to SSH fields

* CB-4364 create connection trim to SSL fields

* CB-4364 create connection SSH trim cleanup

* CB-4364 create main tab trim input values

* CB-4364 connection form driver properties trimmed

* CB-4364 trimmed team creation inputs

* CB-4364 trimmed identity providers inputs

* CB-4364 fix trimmed team creation inputs so it checks property type before trim

* CB-4364 trimmed server config service

* CB-4364 trimmed user form in admin settings

* CB-4364 trimmed auth form log:pass data

* CB-4364 options, ssh, ssl create connection tabs supports trim for all of the text inputs

* CB-4364 ssl tab service cleanup

* CB-4364 refactor: cleanup auth config

* CB-4364 refactor: cleanup user form info part

* CB-4364 refactor: SSH tab do not mutated state directly

* CB-4364 refactor: AuthDIalog tab do not mutated state directly

* CB-4364 refactor: connection options tab do not mutated state directly

* CB-4364 prepare config for server configuration service

* CB-4364 fix: trim driver properties if is custom ones

* CB-4364 auth, server config, userFormPart info cleanup

* CB-4364 trim password in format FormPart function

* CB-4364 connectionDriverProps cleanup

* CB-4364 fix: format user form info

* CB-4364 connectionDriverProps cleanup with keys

* CB-4364 fix: useInfoFormPart trim user id only on creation

* CB-4364 userFormInfoPart trim user id on create in format

---------

Co-authored-by: s.teleshev <s.teleshev@mu.se>
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2024-01-03 18:57:38 +01:00
alex 5f26449f30 CB-4388 add credentials menu (#2260)
* CB-4388 add credentials menu

* CB-4388 check key for undefined
2023-12-29 13:20:31 +01:00
s.teleshev 0175d66c33 CB-4438 team creation text with upper cases 2023-12-25 12:02:11 +01:00
alexandmr-anton-t 982485b312 Cb 4414 plugin authentication administration css modules (#2246)
* CB-4414 refactor identity providers to css modules

* CB-4414 migrate UsersTable to css modules

* CB-4414 formatting

* CB-4414 add aria-label

---------

Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
2023-12-22 15:57:33 +01:00
s.teleshev e3c02ed8f5 CB-4386 fix: create form instead of finish for button 2023-12-18 21:17:54 +01:00
s.teleshev bceefc19f4 Merge branch 'devel' into CB-4386-unify-feature-naming 2023-12-18 17:20:46 +01:00
eb1ff96487 CB-4356 useForm does not switch tabs like insane after press enter (#2211)
* CB-4334. Added new property for ObjectPropertyInfo.

* CB-4277. Fixed typo

* CB-4335 added to gql "required" property for form inputs

* CB-4335 added required properties to all inputs of ObjectPropertyInfoForm

* CB-4335 added to useForm submit events handling

* CB-4335 create connection form uses useForm hook (first iteration)

* CB-4335 required fix for render field

* CB-4335 actions not required fix for connection form

* CB-4335 identify providers forms uses useForm

* CB-4335 connection form has scroll and access tab

* enable panels tab switch on invalid text input for SSH and SSL tabs

* CB-4335 all dynamic fields shows correctly

* СB-4335 made textarea required

* CB-4335 user authorization and change password has useForms

* CB-4335 team meta uses useForms

* CB-4335 team form actions uses react context

* CB-4335 Add ConnectionFormActionsContext to
ConnectionFormBaseActions

* CB-4335 Remove unnecessary required attribute from
AuthProviderForm component

* CB-4356 useForm does not switch tabs like insane after press enter

* CB-4335. Added required parameter to AuthProviderInfo

* CB-4335 auth provider form has required property

* Revert "CB-4356 useForm does not switch tabs like insane after press enter"

This reverts commit 6f658eb51e.

* CB-4356 tab panel does not switch on each enter press

* CB-4356 clean code in tabPanel component

* CB-4356 TabPanelValidation handler for switching tabs

* CB-4356 cleanup for useExecutor, TabState, TabPanel components

* CB-4356 switch tabs simplified (cleanup)

* CB-4356 highlight invalid fields after tab being switched

* CB-4356 added license to TabPanelValidation

* CB-4356 remove unneeded dep from useExecutor

* CB-4356 chore: refactor tabs validation

* feat(CB-4356): clear tabs validation state before start new one

* Revert "feat(CB-4356): clear tabs validation state before start new one"

This reverts commit 76b0a9c5ce.

* CB-4356 reset invalid element before form validation

* CB-4356 fix: executor collection usage

* fix: required field should not be required if it is readonly

* CB-4356 fix: forms shows child content correctly

* Revert "CB-4356 fix: forms shows child content correctly"

This reverts commit 4fd046b690.

* CB-4356 fix: TeamForm show users tab correctly

* CB-4356 fix: ssh key doesnt required if it is saved

* CB-4356 remove unique id error in console

* CB-4356 fix: error with form validation

* Revert "CB-4356 fix: error with form validation"

This reverts commit 0dce34f8b4.

---------

Co-authored-by: Denis Sinelnikov <denis.sinelnikov@dbeaver.com>
Co-authored-by: s.teleshev <s.teleshev@mu.se>
Co-authored-by: Aleksei Potsetsuev <wrouds@gmail.com>
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2023-12-18 13:03:19 +01:00
mr-anton-t b7670d15d2 Merge branch 'devel' into CB-4386-unify-feature-naming 2023-12-15 15:53:38 +01:00
Alexeyandmr-anton-t 2f7c674ab9 CB-4332 refactor: migrate some parts of application to css-modules (#2194)
* CB-4332 refactor: migrate some parts of application to css-modules

* CB-4332 fix: aria attribute name

* CB-4332 refactor: remove ADMINISTRATION_TOOLS_PANEL_STYLES

* CB-4332 fix: inputs

* CB-4332 fix: conflicts

* СИ-4396 fix: sql editor sync

---------

Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
2023-12-15 17:28:05 +03:00
AlexeyandEvgenia Bezborodova d8d929ecda CB-4302 fix: always display auth methods tab (#2231)
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-12-15 11:36:55 +03:00
Evgenia Bezborodova 69aaaf00b7 Merge branch 'devel' into CB-4386-unify-feature-naming 2023-12-14 17:14:50 +03:00
807365f42c CB-4306 update ce deps (#2206)
* CB-4306 update ce deps

* CB-4306 update yarn lock

* CB-4306 revert quadtree-ts

* CB-4306 lock version

* CB-4306 pass missed globals to the vm context

* CB-4306 revert prettier version

* CB-4306 add types

* CB-4306 fix: msw types

* CB-4306 refactor: remove reshadow types declaration

---------

Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
2023-12-14 15:25:10 +03:00
s.teleshev d20cda4398 Revert "CB-4386 chore: ui_processing_create for all forms according to dbeaver"
This reverts commit 2bb259379a.
2023-12-14 12:17:35 +01:00
s.teleshev 2bb259379a CB-4386 chore: ui_processing_create for all forms according to dbeaver 2023-12-14 11:52:57 +01:00
s.teleshev e5d6ad121d CB-4386 chore: ui_processing_finish for all forms according to dbeaver 2023-12-14 10:58:14 +01:00
AlexeyandEvgenia Bezborodova 60c320708a CB-4302 refactor: reorganize auth methods (#2208)
* CB-4302 refactor: reorganize auth methods

* CB-4302 fix: type casting

* CB-4302 fix: add overflow for users providers

---------

Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-12-13 15:27:26 +03:00
9a69f4e660 Cb 3963 migrate core view to css modules (#2192)
* CB-3963 error message reshadow refactor

* CB-3963 remove extra reshadow use from ItemListSearch

* CB-3963 remove reshadow from TopAppBar

* CB-3963 remove unused LoadingScreen component

* CB-3963 removed reshadow from VersionUpdate

* CB-3963 removed reshadow from VersionSelector

* CB-3963 removed reshadow from renderLayout

* CB-3963 removed reshadow from AuthenticationProvider

* CB-3963 removed reshadow from VersionInfo

* CB-3963 removed reshadow from TableItemSelect

* CB-3963 removed reshadow from CaptureView

* CB-3963 removed reshadow from ConnectionList

* CB-3963 removed reshadow from WizzardStepper

* CB-3963 removed reshadow from ConfigurationWizardTittle

* Revert "CB-3963 removed reshadow from AuthenticationProvider"

This reverts commit d5828c2689.

* CB.3963 fix checkboxes margin in table items

---------

Co-authored-by: s.teleshev <s.teleshev@mu.se>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
2023-12-13 10:45:31 +03:00
923dadee86 CB-3961 removed ADMINISTRATION_TOOLS_PANEL_STYLES from core-administr… (#2171)
* CB-3961 removed ADMINISTRATION_TOOLS_PANEL_STYLES from core-administration

* Revert "CB-3961 removed ADMINISTRATION_TOOLS_PANEL_STYLES from core-administration"

This reverts commit 50bb0160c8.

* CB-3961 removed reshadow from core-administration

* CB-3961 styles for table has gray color

* CB-3961 ToolsPanel has 2 modes: surface and secondary

* CB-3961 primary/secondary toolsPanel styles fix

* CB-3961 table footer height is 30px

* CB-3961 table footer height is initial

* CB-3961 no border for footer table + min-height 32 px as it was

* CB-3961 no border for footer in table

* CB-3961 remove EE border bottom at ToolsPanel

* CB-3961 remove EE border bottom at ToolsPanel

---------

Co-authored-by: s.teleshev <s.teleshev@mu.se>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
2023-12-12 18:11:59 +03:00
alexandEvgenia Bezborodova e68269efc1 CB-4230 pass case insensitive key to users resource (#2162)
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-11-27 10:38:42 +03:00
1e45a8185e CB-4165. Added acs property (#2153)
* CB-4165. Added acs property

* CB-4165. Added link to graphql

* CB-4165 show acs link in form

---------

Co-authored-by: naumov <iamemptyhuh@gmail.com>
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-11-23 16:27:20 +03:00
a319b1fec3 CB-4196 add delete user functionality (#2121)
* CB-4196 add delete user functionality

* CB-4196 review fixes

* CB-4196 use div for Text component

* CB-4196 add onDelete callback

* CB-4197 delete user project after deleting user

* CB-4196 add project deletion error to session log

* CB-4196 make a disable dialog slightly larger

* CB-4196 change button styles

* CB-4197 add events for deleting user

* CB-4197 code style fix

---------

Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: Ainur <yagudin10@yandex.ru>
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-11-15 23:09:22 +03:00
dfd572aa4c CB-4173 configurable iam provider (#2126)
* CB-4174 configurable iam provider

* CB-4174 refactor: display only available auth providers

* CB-4174 refactor: display only available auth providers

* CB-4174 refactor: display only available auth providers

* CB-4174 chore: remove unused config properties

---------

Co-authored-by: Aleksei Potsetsuev <wrouds@gmail.com>
Co-authored-by: Evgenia Bezborodova <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-11-15 20:12:53 +03:00
AlexeyandDaria Marutkina 6299e73bcd CB-4091 fix: partial data loading with resource (#2132)
* CB-4091 fix: partial data loading with resource

* CB-4091 refactor: track outdated includes

---------

Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2023-11-15 15:44:01 +03:00
alexandDaria Marutkina 212f4a1712 CB-3985 show password for all users if local provider is enabled (#2113)
* CB-3985 show password for all users if local provider is enabled

* CB-3985 remove extra imports

* CB-3985 review fixes

---------

Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2023-11-10 17:37:45 +03:00
b3c1cebd69 CB-4097 fix: set user role when creation user (#2101)
* CB-4097 fix: set user role when creation user

* CB-4097 fix: validate role correctly

* CB-4097 validate team before deleting

* CB-4097 fix: detect auth role correctly

---------

Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
Co-authored-by: Aleksandr Skoblikov <aleksandr.skoblikov@dbeaver.com>
2023-11-01 22:09:20 +03:00
d44e6b4e7a CB-3564 multi server license (#2062)
* CB-3564 fix: localization

* CB-3984 wip

* CB-3984 multi instance license

* CB-3564 feat: external users provider

* CB-3984 server init fix

* CB-3564 feat: load resource for administration users management

* CB-3984 force enable imported user

---------

Co-authored-by: Aleksandr Skoblikov <aleksandr.skoblikov@dbeaver.com>
Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-10-18 21:17:16 +03:00
49f321462e CB-3454 ai (#2033)
* CB-3999 add ai plugin

* CB-3454 review fixes

* CB-3454 gql since directive fix

* CB-3454 update tsconfig

* fix: npm dependencies

* CB-4045 add hint property

* CB-3454 add hints

---------

Co-authored-by: Ainur <yagudin10@yandex.ru>
Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2023-10-13 17:03:33 +03:00
fe2c7b76be feat: migrate form-controls to css modules (#2041)
* feat: migrate form-controls to css modules

* fix: checkbox field styles

* fix: remove old field styles

* fix: styles bugs

* CB-3773 fix: styles

* CB-3773 fix: field description styles

* CB-3773 fix: radio button styles

---------

Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
2023-10-10 20:19:40 +03:00
bdcda6a1fb CB-4028 delete/add api for permissions (#2024)
* CB-4028 delete/add api for permissions

* feat: add new subjects connection add and delete methods

* CB-4028 fix method name

* refactor: subject connection permissions

* fix: after review

* fix: after review

* CB-4028 fix: update ts project references

* fix: dependencies cycle

* chore: fix dependencies

* CB-4028 event for delete

* CB-4028 delete object permission event

---------

Co-authored-by: Dmitry Osipov <teunlao@gmail.com>
Co-authored-by: Alexey <wrouds@gmail.com>
Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-10-10 18:41:14 +03:00
Alexey 01bcf9479d fix: resolve npm dependencies (#2050)
* fix: resolve npm dependencies

* fix: types

* chore: add manual frontend cache actin running

* fix: github workflows

* fix: types

* fix: types

* fix: types
2023-10-09 16:25:07 +03:00
Alexey ff4c453f8d fix: webpack dev mode (#2048) 2023-10-06 17:29:29 +02:00
Alexey be5bb95154 fix: ts configs (#2047) 2023-10-06 15:35:07 +02:00
Alexey ece5e8f3f1 fix: unix paths (#2046) 2023-10-06 14:35:38 +02:00
Alexey 4550a71298 Refactor CB-3819 resources (#2031)
* CB-3819 refactor: split resources to modules

* CB-3819 refactor: move resource API to separate package

* CB-3819 refactor: move resource API to separate package

* CB-3819 refactor: split to submodules

* CB-3819 chore: update ts configuration

* CB-3819 refactor: move administration top bar to separate plugin

* CB-3819 feat: update tests

* CB-3819 chore: add pre scripts

* CB-3819 fix: prebuild tests-runner

* chore: restore cache for jest-tests github action

* chore: update configs

* chore: add frontend build action

* chore: rename build frontend github action

* chore: include test dependencies

* fix: default product build script

* chore: update github action

* chore: rename validation github action

* chore: update typescript cache key

* chore: update naming for github actions

* chore: run tests on ubuntu

* CB-3819 fix: pre build tasks

* CB-3819 fix: ignore order

* CB-3819 fix: remove prettier from gql sdk
2023-10-05 23:36:54 +03:00
AlexeyandEvgeniaBzzz 0d41713c2d CB-3456 refactor: user form (#2010)
* CB-3456 chore: cleanup users administration

* CB-3456 chore: add label for user credentials column

* CB-3456 chore: add deprecation message to reshadow system

* CB-3456 chore: add deprecation message to ComponentStyle

* CB-3456 refactor: user form

* CB-3456 fix: eslint problems

* CB-3456 fix: after review

* CB-3456 fix: base form localization

* CB-3456 fix: remove unused import

* CB-3456 fix: user default team assignment

* CB-3456 chore: update git indexes

* CB-3456 fix: imports

* CB-3456 fix: enable user by default

* CB-3456 refactor: implement FormPart

* CB-3456 fix: make sh executable

* CB-3456 fix: make sh executable

* CB-3456 fix: handle form part exceptions on save

---------

Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-09-28 16:28:28 +03:00
Alexey 5030094f1f CB-3598 fix: react rendering errors (#1990) 2023-09-13 15:04:45 +03:00
f1507c3a7d CB-3602 fix: sql context management (#1942)
* CB-3602 fix: sql context management

* CB-3711 fix: sql context lifecycle

* CB-3602 Cleanup SQL processors/contexts on connection close

* CB-3602 Cleanup SQL processors/contexts on connection close

* CB-3602 fix: log sql script parsing errors

* CB-3602 fix: sql context info convertation

* CB-3602 fix: data concurrency loading

---------

Co-authored-by: Serge Rider <serge@jkiss.org>
Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2023-08-29 22:53:05 +03:00
AinurandDmitry Osipov 4d060ed746 CB-3045 delete team with users (#1943)
* CB-3045 delete team with users

* CB-3905 add force flag for deleting team

* CB-3045: delete teams even they may contain users

* CB-3045: update delete team confirmation message

---------

Co-authored-by: Dmitry Osipov <teunlao@gmail.com>
2023-08-29 17:02:44 +03:00
alexandDaria Marutkina 65e1b25519 CB-2694 do not show invalid user teams state (#1948)
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
2023-08-25 11:16:22 +02:00
alexandEvgeniaBzzz 9839a8fc26 CB-3849 hide password value in main auth dialogs (#1924)
* CB-3849 hide password value in main auth dialogs

* CB-3849 add mergeRefs hook

* CB-3849 hide ssh password value in auth connection form

* CB-3849 allow empty string

---------

Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-08-24 16:08:57 +03:00
30c4020790 Cb 3679 administration toolbar redesign (#1914)
* CB-3679 refactor tools panel to css-modules

* CB-3679 update administration toolbar styles

* CB-3679 update user-administration tabs styles

* CB-3679 fix menu-item styles

---------

Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-08-16 17:53:20 +03:00
AlexeyandEvgeniaBzzz 9443351204 CB-3868 fix: page aliases (#1911)
Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com>
2023-08-15 21:04:12 +03:00