triafly-ui-kit 1.0.73 → 1.0.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +93 -93
- package/dist/assets/src/components/Ui/Button/Button.css +1 -1
- package/dist/assets/src/components/Ui/ButtonsArray/ButtonsArray.css +1 -1
- package/dist/assets/src/components/Ui/ModalWindow/ModalWindow.css +1 -1
- package/dist/assets/src/components/Ui/Tooltip/Tooltip.stories.module.css +1 -1
- package/dist/assets/src/context/ToastContext/ToastContext.module.css +1 -0
- package/dist/components/Ui/ButtonsArray/ButtonsArray.js +25 -28
- package/dist/components/Ui/ModalWindow/ModalWindow.js +13 -13
- package/dist/context/ToastContext/ToastContext.js +24 -22
- package/dist/context/TriaflyContext/TriaflyProvider.js +17 -18
- package/dist/context/TriaflyContext/hooks/useTheme/useTheme.js +5 -5
- package/dist/main.d.ts +2 -12
- package/dist/main.js +11 -13
- package/dist/src/components/Ui/Tooltip/Tooltip.stories.module.css.js +1 -1
- package/dist/src/context/ToastContext/ToastContext.module.scss.js +9 -0
- package/package.json +112 -112
- package/src/styles/_mixins.scss +21 -21
- package/src/styles/fix.scss +3 -3
- package/src/styles/main.scss +26 -26
- package/src/styles/reset.scss +105 -105
- package/src/styles/typography.scss +106 -106
- package/src/styles/variables.scss +342 -277
- package/dist/assets/src/context/ToastContext/ToastContext.css +0 -1
- package/dist/components/Ui/NumberInput/NumberInput.js +0 -49
- package/dist/components/Ui/NumberInput/index.js +0 -4
package/README.md
CHANGED
@@ -1,93 +1,93 @@
|
|
1
|
-
# ui-kit
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
## Getting started
|
6
|
-
|
7
|
-
To make it easy for you to get started with GitLab, here's a list of recommended next steps.
|
8
|
-
|
9
|
-
Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)!
|
10
|
-
|
11
|
-
## Add your files
|
12
|
-
|
13
|
-
- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files
|
14
|
-
- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command:
|
15
|
-
|
16
|
-
```
|
17
|
-
cd existing_repo
|
18
|
-
git remote add origin https://git.3afly.ru/triafly-data-platform/ui-kit.git
|
19
|
-
git branch -M main
|
20
|
-
git push -uf origin main
|
21
|
-
```
|
22
|
-
|
23
|
-
## Integrate with your tools
|
24
|
-
|
25
|
-
- [ ] [Set up project integrations](https://git.3afly.ru/triafly-data-platform/ui-kit/-/settings/integrations)
|
26
|
-
|
27
|
-
## Collaborate with your team
|
28
|
-
|
29
|
-
- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/)
|
30
|
-
- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html)
|
31
|
-
- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically)
|
32
|
-
- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/)
|
33
|
-
- [ ] [Set auto-merge](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html)
|
34
|
-
|
35
|
-
## Test and Deploy
|
36
|
-
|
37
|
-
Use the built-in continuous integration in GitLab.
|
38
|
-
|
39
|
-
- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html)
|
40
|
-
- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing (SAST)](https://docs.gitlab.com/ee/user/application_security/sast/)
|
41
|
-
- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html)
|
42
|
-
- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/)
|
43
|
-
- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html)
|
44
|
-
|
45
|
-
***
|
46
|
-
|
47
|
-
# Editing this README
|
48
|
-
|
49
|
-
When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thanks to [makeareadme.com](https://www.makeareadme.com/) for this template.
|
50
|
-
|
51
|
-
## Suggestions for a good README
|
52
|
-
|
53
|
-
Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information.
|
54
|
-
|
55
|
-
## Name
|
56
|
-
Choose a self-explaining name for your project.
|
57
|
-
|
58
|
-
## Description
|
59
|
-
Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors.
|
60
|
-
|
61
|
-
## Badges
|
62
|
-
On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge.
|
63
|
-
|
64
|
-
## Visuals
|
65
|
-
Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method.
|
66
|
-
|
67
|
-
## Installation
|
68
|
-
Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection.
|
69
|
-
|
70
|
-
## Usage
|
71
|
-
Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README.
|
72
|
-
|
73
|
-
## Support
|
74
|
-
Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc.
|
75
|
-
|
76
|
-
## Roadmap
|
77
|
-
If you have ideas for releases in the future, it is a good idea to list them in the README.
|
78
|
-
|
79
|
-
## Contributing
|
80
|
-
State if you are open to contributions and what your requirements are for accepting them.
|
81
|
-
|
82
|
-
For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self.
|
83
|
-
|
84
|
-
You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser.
|
85
|
-
|
86
|
-
## Authors and acknowledgment
|
87
|
-
Show your appreciation to those who have contributed to the project.
|
88
|
-
|
89
|
-
## License
|
90
|
-
For open source projects, say how it is licensed.
|
91
|
-
|
92
|
-
## Project status
|
93
|
-
If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers.
|
1
|
+
# ui-kit
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
## Getting started
|
6
|
+
|
7
|
+
To make it easy for you to get started with GitLab, here's a list of recommended next steps.
|
8
|
+
|
9
|
+
Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)!
|
10
|
+
|
11
|
+
## Add your files
|
12
|
+
|
13
|
+
- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files
|
14
|
+
- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command:
|
15
|
+
|
16
|
+
```
|
17
|
+
cd existing_repo
|
18
|
+
git remote add origin https://git.3afly.ru/triafly-data-platform/ui-kit.git
|
19
|
+
git branch -M main
|
20
|
+
git push -uf origin main
|
21
|
+
```
|
22
|
+
|
23
|
+
## Integrate with your tools
|
24
|
+
|
25
|
+
- [ ] [Set up project integrations](https://git.3afly.ru/triafly-data-platform/ui-kit/-/settings/integrations)
|
26
|
+
|
27
|
+
## Collaborate with your team
|
28
|
+
|
29
|
+
- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/)
|
30
|
+
- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html)
|
31
|
+
- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically)
|
32
|
+
- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/)
|
33
|
+
- [ ] [Set auto-merge](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html)
|
34
|
+
|
35
|
+
## Test and Deploy
|
36
|
+
|
37
|
+
Use the built-in continuous integration in GitLab.
|
38
|
+
|
39
|
+
- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html)
|
40
|
+
- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing (SAST)](https://docs.gitlab.com/ee/user/application_security/sast/)
|
41
|
+
- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html)
|
42
|
+
- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/)
|
43
|
+
- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html)
|
44
|
+
|
45
|
+
***
|
46
|
+
|
47
|
+
# Editing this README
|
48
|
+
|
49
|
+
When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thanks to [makeareadme.com](https://www.makeareadme.com/) for this template.
|
50
|
+
|
51
|
+
## Suggestions for a good README
|
52
|
+
|
53
|
+
Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information.
|
54
|
+
|
55
|
+
## Name
|
56
|
+
Choose a self-explaining name for your project.
|
57
|
+
|
58
|
+
## Description
|
59
|
+
Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors.
|
60
|
+
|
61
|
+
## Badges
|
62
|
+
On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge.
|
63
|
+
|
64
|
+
## Visuals
|
65
|
+
Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method.
|
66
|
+
|
67
|
+
## Installation
|
68
|
+
Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection.
|
69
|
+
|
70
|
+
## Usage
|
71
|
+
Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README.
|
72
|
+
|
73
|
+
## Support
|
74
|
+
Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc.
|
75
|
+
|
76
|
+
## Roadmap
|
77
|
+
If you have ideas for releases in the future, it is a good idea to list them in the README.
|
78
|
+
|
79
|
+
## Contributing
|
80
|
+
State if you are open to contributions and what your requirements are for accepting them.
|
81
|
+
|
82
|
+
For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self.
|
83
|
+
|
84
|
+
You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser.
|
85
|
+
|
86
|
+
## Authors and acknowledgment
|
87
|
+
Show your appreciation to those who have contributed to the project.
|
88
|
+
|
89
|
+
## License
|
90
|
+
For open source projects, say how it is licensed.
|
91
|
+
|
92
|
+
## Project status
|
93
|
+
If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers.
|
@@ -1 +1 @@
|
|
1
|
-
button.btn{--height-sm: 28px;--height-md: 36px;--height-lg: 44px;--height: var(--height-md);flex-shrink:0;background-color:var(--color-bg-brand-default);color:var(--light-color-static)!important;display:flex;justify-content:center;align-items:center;height:var(--height);border-radius:calc(var(--height) / 2);border:none;padding:10px 16px;cursor:pointer;transition:.15s all}button.btn:hover{background-color:var(--color-bg-brand-hover)}button.btn svg *{fill:var(--light-color-static)}button.btn span{color:var(--light-color-static)}button.btn[disabled]{opacity:50%;cursor:default;pointer-events:none}button.btn.brand-light{background-color:var(--color-bg-brand-lightest-default);color:var(--
|
1
|
+
button.btn{--height-sm: 28px;--height-md: 36px;--height-lg: 44px;--height: var(--height-md);flex-shrink:0;background-color:var(--color-bg-brand-default);color:var(--light-color-static)!important;display:flex;justify-content:center;align-items:center;height:var(--height);border-radius:calc(var(--height) / 2);border:none;padding:10px 16px;cursor:pointer;transition:.15s all}button.btn:hover{background-color:var(--color-bg-brand-hover)}button.btn svg *{fill:var(--light-color-static)}button.btn span{color:var(--light-color-static)}button.btn[disabled]{opacity:50%;cursor:default;pointer-events:none}button.btn.brand-light{background-color:var(--color-bg-brand-lightest-default);color:var(--color-button-brandlight-filled-text)!important}button.btn.brand-light:hover{background-color:var(--color-button-brandlight-filled-hover)}button.btn.brand-light svg *{fill:var(--color-button-brandlight-filled-text)}button.btn.brand-light span{color:var(--color-button-brandlight-filled-text)}button.btn.gray{background-color:var(--color-bg-neutral-lightest-default);color:var(--color-text-primary-default)!important}button.btn.gray:hover{background-color:var(--color-bg-neutral-medium-default)}button.btn.gray svg *{fill:var(--color-text-primary-default)}button.btn.gray span{color:var(--color-text-primary-default)}button.btn.danger{background-color:var(--color-bg-error-default);color:var(--light-color-static)!important}button.btn.danger:hover{background-color:var(--color-bg-error-hover)}button.btn.danger svg *{fill:var(--light-color-static)}button.btn.danger span{color:var(--light-color-static)}button.btn.outlined{background-color:transparent!important;border:1px solid var(--color-border-brand-default);color:var(--color-border-brand-default)}button.btn.outlined[disabled]{pointer-events:none}button.btn.outlined:hover{background-color:transparent;box-shadow:inset 0 0 0 1px var(--color-border-brand-default)}button.btn.outlined span{color:var(--color-border-brand-default)}button.btn.outlined svg *{fill:var(--color-border-brand-default)}button.btn.outlined.gray{background-color:transparent!important;border:1px solid var(--color-border-secondary-default);color:var(--color-text-primary-default)}button.btn.outlined.gray[disabled]{pointer-events:none}button.btn.outlined.gray:hover{background-color:transparent;box-shadow:inset 0 0 0 1px var(--color-border-secondary-default)}button.btn.outlined.gray span{color:var(--color-text-primary-default)}button.btn.outlined.gray svg *{fill:var(--color-text-primary-default)}button.btn.outlined.danger{background-color:transparent!important;border:1px solid var(--color-bg-error-default);color:var(--color-bg-error-default)}button.btn.outlined.danger[disabled]{pointer-events:none}button.btn.outlined.danger:hover{background-color:transparent;box-shadow:inset 0 0 0 1px var(--color-bg-error-default)}button.btn.outlined.danger span{color:var(--color-bg-error-default)}button.btn.outlined.danger svg *{fill:var(--color-bg-error-default)}button.btn.sm{--height: var(--height-sm);padding:6px 12px}button.btn.sm span{font-size:12px}button.btn.lg{--height: var(--height-lg);padding:12px 20px}button.btn.icon-button{width:var(--height);height:var(--height);padding:0;border-radius:50%;display:flex;justify-content:center;align-items:center}button.btn.icon-button *{margin:0!important}button.btn.semiround{border-radius:6px}button.btn.semiround.lg{border-radius:8px}button.btn.loading .btn-label{color:transparent}button.btn .arrow{margin:0 10px 0 0}button.btn .arrow:last-child{margin:0 0 0 10px;transform:rotate(180deg)}button.btn .icon{margin:0 8px 0 0;display:flex}button.btn .icon-tail{display:flex;margin:0 0 0 8px}
|
@@ -1 +1 @@
|
|
1
|
-
.buttons .buttons-bar{display:flex}.buttons .buttons-label{margin:0 0 8px;display:flex}.buttons .button{height:44px;padding:0 12px;display:flex;justify-content:center;align-items:center;border:1px solid var(--color-border-primary-default);background-color:var(--color-bg-neutral-basic-default);cursor:pointer}.buttons .button:not(:last-of-type){border-right:0 solid}.buttons .button:first-of-type{border-radius:8px 0 0 8px}.buttons .button:last-of-type{border-radius:0 8px 8px 0}.buttons .button:
|
1
|
+
.buttons .buttons-bar{display:flex}.buttons .buttons-label{margin:0 0 8px;display:flex}.buttons .button{height:44px;padding:0 12px;display:flex;justify-content:center;align-items:center;border:1px solid var(--color-border-primary-default);background-color:var(--color-bg-neutral-basic-default);cursor:pointer}.buttons .button:not(:last-of-type){border-right:0 solid}.buttons .button:first-of-type{border-radius:8px 0 0 8px}.buttons .button:last-of-type{border-radius:0 8px 8px 0}.buttons .button:hover{background:#ddd}.buttons .button.active{background:var(--color-bg-neutral-light-default);font-weight:600}.buttons .button.status-error{color:var(--color-status-error-foreground)}.buttons .button.status-warning{color:var(--color-status-warning-foreground)}.buttons .button.status-success{color:var(--color-status-success-foreground)}
|
@@ -1 +1 @@
|
|
1
|
-
@font-face{font-family:Roboto Slab;src:url(../assets/fonts/RobotoSlab-SemiBold.ttf) format("truetype");font-weight:600}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Regular.ttf) format("truetype");font-weight:400}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Semibold.ttf) format("truetype");font-weight:600}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Bold.ttf) format("truetype");font-weight:700}@font-face{font-family:Fira Code;src:url(../assets/fonts/FiraCode-Regular.ttf) format("truetype");font-weight:400}*{font-family:Manrope,sans-serif;font-size:14px;line-height:1.2em;letter-spacing:.02em;font-weight:400;color:var(--color-text-primary-default)}h1,h2,h3,h4,h5,h6{margin:0}a{color:var(--color-text-brand-default);text-decoration:none}a:hover{color:var(--color-text-brand-hover)}a[href=""]{opacity:40%;cursor:default;pointer-events:none}p:not(:last-child){margin:0 0 8px}.modal-window.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-fader);display:flex;z-index:100}.modal-window.position-center{justify-content:center;align-items:center}.modal-window.position-right{justify-content:flex-end;align-items:center}.modal-window.position-left{justify-content:flex-start;align-items:center}.modal-window.position-top{justify-content:center;align-items:flex-start}.modal-window.position-bottom{justify-content:center;align-items:flex-end}.modal-window__body{background:var(--color-bg-
|
1
|
+
@font-face{font-family:Roboto Slab;src:url(../assets/fonts/RobotoSlab-SemiBold.ttf) format("truetype");font-weight:600}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Regular.ttf) format("truetype");font-weight:400}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Semibold.ttf) format("truetype");font-weight:600}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Bold.ttf) format("truetype");font-weight:700}@font-face{font-family:Fira Code;src:url(../assets/fonts/FiraCode-Regular.ttf) format("truetype");font-weight:400}*{font-family:Manrope,sans-serif;font-size:14px;line-height:1.2em;letter-spacing:.02em;font-weight:400;color:var(--color-text-primary-default)}h1,h2,h3,h4,h5,h6{margin:0}a{color:var(--color-text-brand-default);text-decoration:none}a:hover{color:var(--color-text-brand-hover)}a[href=""]{opacity:40%;cursor:default;pointer-events:none}p:not(:last-child){margin:0 0 8px}.modal-window.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-fader-20);display:flex;z-index:100}.modal-window.position-center{justify-content:center;align-items:center}.modal-window.position-right{justify-content:flex-end;align-items:center}.modal-window.position-left{justify-content:flex-start;align-items:center}.modal-window.position-top{justify-content:center;align-items:flex-start}.modal-window.position-bottom{justify-content:center;align-items:flex-end}.modal-window__body{background:var(--color-bg-neutral-basic-default);max-height:100vh;position:relative}.modal-window__body.size-sm{border-radius:8px;width:360px;padding:10px 12px}.modal-window__body.size-md{width:460px;border-radius:16px;padding:20px 24px}.modal-window__body.size-lg{width:600px;border-radius:16px;padding:24px 28px}.modal-window__body.size-full{width:100%;height:100%}.modal-window__body.foolHeight{height:100vh;border-radius:0}.modal-window__header{display:flex;justify-content:space-between;padding-bottom:28px;align-items:center;gap:12px}.modal-window__header .btn{background:none}.modal-window__header .btn .icon svg *{fill:var(--color-icon-secondary-default)}.modal-window__header .btn:hover{background:none}.modal-window__header__title{font-size:20px;font-weight:600;flex:1;word-break:break-word;overflow-wrap:break-word;white-space:normal;min-width:0}.modal-window__header__icon{border-radius:100%;height:36px;width:36px;display:flex;align-items:center;justify-content:center}.modal-window__header__icon.status-error{background:var(--color-status-error-background)}.modal-window__header__icon.status-error svg *{color:var(--color-bg-error-default)}.modal-window__header__icon.status-warning{background:var(--color-status-warning-background)}.modal-window__header__icon.status-warning svg *{color:var(--color-status-warning-background)}.modal-window__header__icon.status-success{background:var(--color-status-success-background)}.modal-window__header__icon.status-success svg *{color:var(--color-border-success-default)}.modal-window__header__icon.status-info{background:var(--dark-color-static-brand)}.modal-window__header__icon.status-info svg *{color:var(--light-color-static-brand)}
|
@@ -1 +1 @@
|
|
1
|
-
.
|
1
|
+
._container_x4z3a_1{position:relative;width:100%;height:100vh;padding:20px;display:flex;flex-wrap:wrap;justify-content:space-between;align-content:space-between;border:1px dashed #ccc;box-sizing:border-box}._trigger_x4z3a_27{padding:8px 16px;background-color:#1976d2;color:#fff;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s;text-align:center}._trigger_x4z3a_27:hover{background-color:#1565c0}._clickTrigger_x4z3a_57{background-color:#388e3c}._clickTrigger_x4z3a_57:hover{background-color:#2e7d32}._positionsContainer_x4z3a_75{padding:20px}._positionGroup_x4z3a_83{display:flex;gap:20px;margin-bottom:30px;justify-content:center;flex-wrap:wrap}
|
@@ -0,0 +1 @@
|
|
1
|
+
._Wrapper_12sk9_1{position:fixed;bottom:20px;right:20px;z-index:101;display:flex;flex-direction:column;gap:10px}._Toast_12sk9_11{color:var(--color-text-primary-inversed);padding:20px 24px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;min-width:250px;max-width:400px;font-size:16px;box-shadow:0 6px 15px -2px var(--effect-shadow-L, rgba(18, 18, 18, .08));animation:_fadeIn_12sk9_1 .5s ease-in-out;background-color:var(--color-bg-neutral-basic-inversed)}@keyframes _fadeIn_12sk9_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
|
@@ -1,31 +1,28 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import {
|
1
|
+
import { jsxs as a, jsx as n } from "react/jsx-runtime";
|
2
|
+
import { useState as d, useEffect as u } from "react";
|
3
3
|
import '../../../assets/src/components/Ui/ButtonsArray/ButtonsArray.css';/* empty css */
|
4
|
-
const
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
}
|
27
|
-
);
|
28
|
-
h.displayName = "ButtonsArray";
|
4
|
+
const p = ({ tabs: t, label: o, onChange: i, activeKey: e }) => {
|
5
|
+
const [r, l] = d(e ?? t[0].key);
|
6
|
+
u(() => {
|
7
|
+
e != null ? l(e) : l(t[0].key);
|
8
|
+
}, [e]);
|
9
|
+
const c = (s) => {
|
10
|
+
l(s), i && i(s);
|
11
|
+
};
|
12
|
+
return /* @__PURE__ */ a("div", { className: "buttons", children: [
|
13
|
+
o && /* @__PURE__ */ n("span", { className: "buttons-label", children: o }),
|
14
|
+
/* @__PURE__ */ n("div", { className: "buttons-bar", children: t.map((s) => /* @__PURE__ */ n(
|
15
|
+
"button",
|
16
|
+
{
|
17
|
+
disabled: s.disabled,
|
18
|
+
onClick: () => c(s.key),
|
19
|
+
className: `button ${s.key === r ? "active" : ""} status-${s.status}`,
|
20
|
+
children: s.label
|
21
|
+
},
|
22
|
+
s.key
|
23
|
+
)) })
|
24
|
+
] });
|
25
|
+
};
|
29
26
|
export {
|
30
|
-
|
27
|
+
p as ButtonsArray
|
31
28
|
};
|
@@ -1,12 +1,12 @@
|
|
1
|
-
import { jsx as s, Fragment as h, jsxs as
|
2
|
-
import { createElement as
|
3
|
-
import { createPortal as
|
1
|
+
import { jsx as s, Fragment as h, jsxs as m } from "react/jsx-runtime";
|
2
|
+
import { createElement as f } from "react";
|
3
|
+
import { createPortal as u } from "react-dom";
|
4
4
|
import '../../../assets/src/components/Ui/ModalWindow/ModalWindow.css';/* empty css */
|
5
5
|
import { Button as v } from "../Button/Button.js";
|
6
6
|
import { IconX as N } from "../Icons/Icons.js";
|
7
|
-
const
|
8
|
-
isOpen:
|
9
|
-
onClose:
|
7
|
+
const x = ({
|
8
|
+
isOpen: l,
|
9
|
+
onClose: i,
|
10
10
|
width: a,
|
11
11
|
size: r = "md",
|
12
12
|
iconHeader: o,
|
@@ -16,8 +16,8 @@ const j = ({
|
|
16
16
|
foolHeight: c,
|
17
17
|
position: p = "center"
|
18
18
|
}) => {
|
19
|
-
if (!
|
20
|
-
const w = (o == null ? void 0 : o.size) ?? 20, n = /* @__PURE__ */ s(h, { children: /* @__PURE__ */ s("div", { className: `modal-window overlay position-${p}`, children: /* @__PURE__ */
|
19
|
+
if (!l) return null;
|
20
|
+
const w = (o == null ? void 0 : o.size) ?? 20, n = /* @__PURE__ */ s(h, { children: /* @__PURE__ */ s("div", { className: `modal-window overlay position-${p}`, onClick: () => i(!1), children: /* @__PURE__ */ m(
|
21
21
|
"div",
|
22
22
|
{
|
23
23
|
className: `modal-window__body size-${r} ${c ? "foolHeight" : ""}`,
|
@@ -27,8 +27,8 @@ const j = ({
|
|
27
27
|
pointerEvents: "auto"
|
28
28
|
},
|
29
29
|
children: [
|
30
|
-
/* @__PURE__ */
|
31
|
-
(o == null ? void 0 : o.view) && /* @__PURE__ */ s("div", { className: `modal-window__header__icon status-${o.status}`, children:
|
30
|
+
/* @__PURE__ */ m("div", { className: "modal-window__header", children: [
|
31
|
+
(o == null ? void 0 : o.view) && /* @__PURE__ */ s("div", { className: `modal-window__header__icon status-${o.status}`, children: f(o.icon, { size: w }) }),
|
32
32
|
t != null && t.toString() ? /* @__PURE__ */ s("span", { className: "modal-window__header__title", children: t }) : t,
|
33
33
|
/* @__PURE__ */ s(
|
34
34
|
v,
|
@@ -36,7 +36,7 @@ const j = ({
|
|
36
36
|
type: "button",
|
37
37
|
icon: /* @__PURE__ */ s(N, { size: 24 }),
|
38
38
|
className: "icon-button",
|
39
|
-
onClick: () =>
|
39
|
+
onClick: () => i(!1)
|
40
40
|
}
|
41
41
|
)
|
42
42
|
] }),
|
@@ -44,8 +44,8 @@ const j = ({
|
|
44
44
|
]
|
45
45
|
}
|
46
46
|
) }) });
|
47
|
-
return e ?
|
47
|
+
return e ? u(n, document.body) : n;
|
48
48
|
};
|
49
49
|
export {
|
50
|
-
|
50
|
+
x as ModalWindow
|
51
51
|
};
|
@@ -1,38 +1,40 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import { createContext as
|
1
|
+
import { jsxs as v, jsx as l } from "react/jsx-runtime";
|
2
|
+
import { createContext as f, useState as h, useCallback as u, useMemo as w, useContext as g } from "react";
|
3
3
|
import C from "react-dom";
|
4
|
-
import
|
5
|
-
const
|
6
|
-
const
|
7
|
-
if (!
|
4
|
+
import m from "../../src/context/ToastContext/ToastContext.module.scss.js";
|
5
|
+
const T = f(void 0), y = () => {
|
6
|
+
const o = g(T);
|
7
|
+
if (!o)
|
8
8
|
throw new Error("useToast must be used within a ToastProvider");
|
9
|
-
return
|
10
|
-
}, M = ({ children:
|
11
|
-
const [
|
12
|
-
|
13
|
-
}, []),
|
9
|
+
return o;
|
10
|
+
}, M = ({ children: o }) => {
|
11
|
+
const [r, n] = h([]), p = 3, c = 4e3, i = u((t) => {
|
12
|
+
n((e) => e.filter((s) => s.id !== t));
|
13
|
+
}, []), d = u(
|
14
14
|
(t) => {
|
15
|
-
const
|
15
|
+
const e = {
|
16
16
|
id: Date.now(),
|
17
17
|
message: t,
|
18
|
-
duration:
|
18
|
+
duration: c
|
19
19
|
};
|
20
|
-
|
21
|
-
const
|
22
|
-
return
|
23
|
-
}), setTimeout(() => i(
|
20
|
+
n((s) => {
|
21
|
+
const a = [...s, e];
|
22
|
+
return a.length > p ? a.slice(1) : a;
|
23
|
+
}), setTimeout(() => i(e.id), c);
|
24
24
|
},
|
25
25
|
[i]
|
26
|
-
)
|
27
|
-
|
28
|
-
|
26
|
+
);
|
27
|
+
console.log("тест addToast"), console.log("toasts", r);
|
28
|
+
const x = w(() => ({ addToast: d }), [d]);
|
29
|
+
return /* @__PURE__ */ v(T.Provider, { value: x, children: [
|
30
|
+
o,
|
29
31
|
C.createPortal(
|
30
|
-
/* @__PURE__ */
|
32
|
+
/* @__PURE__ */ l("div", { className: m.Wrapper, children: r.map((t) => /* @__PURE__ */ l("div", { className: m.Toast, children: t.message }, t.id)) }),
|
31
33
|
document.body
|
32
34
|
)
|
33
35
|
] });
|
34
36
|
};
|
35
37
|
export {
|
36
38
|
M as ToastProvider,
|
37
|
-
|
39
|
+
y as useToast
|
38
40
|
};
|
@@ -1,28 +1,27 @@
|
|
1
|
-
import { jsx as
|
2
|
-
import { createContext as
|
3
|
-
import { useBreakpointValueTriafly as
|
4
|
-
import { useThemeLogic as
|
5
|
-
import { useModalState as
|
6
|
-
const
|
7
|
-
const e =
|
1
|
+
import { jsx as n } from "react/jsx-runtime";
|
2
|
+
import { createContext as s, useMemo as m, useContext as a } from "react";
|
3
|
+
import { useBreakpointValueTriafly as u } from "./hooks/useBreakpointValue/useBreakpointValue.js";
|
4
|
+
import { useThemeLogic as f } from "./hooks/useTheme/useTheme.js";
|
5
|
+
import { useModalState as l } from "./hooks/useModal/useModal.js";
|
6
|
+
const t = s(void 0), y = () => {
|
7
|
+
const e = a(t);
|
8
8
|
if (!e)
|
9
9
|
throw new Error("useTriafly must be used within a TriaflyProvider");
|
10
10
|
return e;
|
11
|
-
},
|
12
|
-
const { theme:
|
11
|
+
}, h = ({ children: e }) => {
|
12
|
+
const { theme: o, toggleTheme: r } = f(), i = m(
|
13
13
|
() => ({
|
14
|
-
theme:
|
15
|
-
toggleTheme:
|
16
|
-
useBreakpointValueTriafly:
|
17
|
-
useModalState:
|
18
|
-
setTheme: r
|
14
|
+
theme: o,
|
15
|
+
toggleTheme: r,
|
16
|
+
useBreakpointValueTriafly: u,
|
17
|
+
useModalState: l
|
19
18
|
}),
|
20
|
-
[
|
19
|
+
[o, r]
|
21
20
|
);
|
22
|
-
return /* @__PURE__ */
|
21
|
+
return /* @__PURE__ */ n(t.Provider, { value: i, children: e });
|
23
22
|
};
|
24
23
|
export {
|
25
|
-
|
26
|
-
|
24
|
+
t as TriaflyContext,
|
25
|
+
h as TriaflyProvider,
|
27
26
|
y as useTriafly
|
28
27
|
};
|
@@ -1,16 +1,16 @@
|
|
1
1
|
import { useSyncExternalStore as n } from "react";
|
2
|
-
const
|
2
|
+
const o = () => {
|
3
3
|
const t = window.matchMedia("(prefers-color-scheme: dark)").matches;
|
4
4
|
return localStorage.getItem("theme") || (t ? "dark" : "light");
|
5
|
-
}, m =
|
5
|
+
}, m = o();
|
6
6
|
document.documentElement.setAttribute("data-theme", m);
|
7
7
|
const c = () => {
|
8
|
-
const t = n((e) => (window.addEventListener("storage", e), () => window.removeEventListener("storage", e)),
|
8
|
+
const t = n((e) => (window.addEventListener("storage", e), () => window.removeEventListener("storage", e)), o), r = (e) => {
|
9
9
|
localStorage.setItem("theme", e), localStorage.setItem("chakra-ui-color-mode", e), document.documentElement.setAttribute("data-theme", e), window.dispatchEvent(new Event("storage"));
|
10
10
|
};
|
11
11
|
return { theme: t, toggleTheme: () => {
|
12
|
-
|
13
|
-
}
|
12
|
+
r(t === "light" ? "dark" : "light");
|
13
|
+
} };
|
14
14
|
};
|
15
15
|
export {
|
16
16
|
c as useThemeLogic
|
package/dist/main.d.ts
CHANGED
@@ -74,14 +74,13 @@ declare type ButtonProps = {
|
|
74
74
|
iconTail?: ReactElement;
|
75
75
|
};
|
76
76
|
|
77
|
-
export declare const ButtonsArray:
|
77
|
+
export declare const ButtonsArray: React.FC<ButtonsArrayProps>;
|
78
78
|
|
79
79
|
export declare interface ButtonsArrayProps {
|
80
80
|
tabs: ButtonTab[];
|
81
81
|
label?: string;
|
82
82
|
onChange?: (key: string | number) => void;
|
83
83
|
activeKey?: string | number | null | undefined;
|
84
|
-
isDisabled?: boolean;
|
85
84
|
}
|
86
85
|
|
87
86
|
declare interface ButtonTab {
|
@@ -1063,13 +1062,6 @@ declare type ModalWindowProps = {
|
|
1063
1062
|
foolHeight?: boolean;
|
1064
1063
|
};
|
1065
1064
|
|
1066
|
-
export declare const NumberInput: default_2.ForwardRefExoticComponent<NumberInputProps & default_2.RefAttributes<HTMLInputElement>>;
|
1067
|
-
|
1068
|
-
declare interface NumberInputProps extends TextInputProps {
|
1069
|
-
allowNegative?: boolean;
|
1070
|
-
allowDecimal?: boolean;
|
1071
|
-
}
|
1072
|
-
|
1073
1065
|
declare type Option_2 = {
|
1074
1066
|
value: string;
|
1075
1067
|
label: string;
|
@@ -1131,7 +1123,7 @@ declare type SearchInputProps = {
|
|
1131
1123
|
onChange?: (value: string) => void;
|
1132
1124
|
};
|
1133
1125
|
|
1134
|
-
declare type SizeModal = "sm" | "md" | "lg" | "full"
|
1126
|
+
declare type SizeModal = "sm" | "md" | "lg" | "full";
|
1135
1127
|
|
1136
1128
|
declare type SizeUnit = "B" | "KB" | "MB" | "GB";
|
1137
1129
|
|
@@ -1277,7 +1269,6 @@ export declare const TriaflyContext: Context<TriaflyContextType | undefined>;
|
|
1277
1269
|
declare interface TriaflyContextType {
|
1278
1270
|
theme: Theme;
|
1279
1271
|
toggleTheme: () => void;
|
1280
|
-
setTheme: (newTheme: Theme) => void;
|
1281
1272
|
useBreakpointValueTriafly: <T>(values: BreakpointValuesTriafly<T>) => T;
|
1282
1273
|
useModalState: typeof useModalState;
|
1283
1274
|
}
|
@@ -1301,7 +1292,6 @@ export declare const useModalState: () => UseModalReturn;
|
|
1301
1292
|
export declare const useThemeLogic: () => {
|
1302
1293
|
theme: Theme;
|
1303
1294
|
toggleTheme: () => void;
|
1304
|
-
setTheme: (newTheme: Theme) => void;
|
1305
1295
|
};
|
1306
1296
|
|
1307
1297
|
export declare const useToast: () => ToastContextType;
|
package/dist/main.js
CHANGED
@@ -16,8 +16,8 @@ import { DropdownMenu as B } from "./components/Ui/DropdownMenu/DropdownMenu.js"
|
|
16
16
|
import { FileUpload as U } from "./components/Ui/FileUpload/FileUpload.js";
|
17
17
|
import { Form as R } from "./components/Ui/Form/FormRoot/FormRoot.js";
|
18
18
|
import { FormValidationError as X, useForm as b } from "./components/Ui/Form/useForm/useForm.js";
|
19
|
-
import { Loader as
|
20
|
-
import { Pagination as
|
19
|
+
import { Loader as E } from "./components/Ui/Loader/Loader.js";
|
20
|
+
import { Pagination as N } from "./components/Ui/Pagination/Pagination.js";
|
21
21
|
import { Radio as Q } from "./components/Ui/Radio/Radio.js";
|
22
22
|
import { SearchInput as W } from "./components/Ui/SearchInput/SearchInput.js";
|
23
23
|
import { Skeleton as J } from "./components/Ui/Skeleton/Skeleton.js";
|
@@ -27,13 +27,12 @@ import { TextInput as _ } from "./components/Ui/TextInput/TextInput.js";
|
|
27
27
|
import { TextareaInput as oo } from "./components/Ui/TextareaInput/TextareaInput.js";
|
28
28
|
import { Tooltip as no } from "./components/Ui/Tooltip/Tooltip.js";
|
29
29
|
import { Tabs as co } from "./components/Ui/Tabs/Tabs.js";
|
30
|
-
import { IconArrowBendUpRight as Io, IconArrowClockwise as ao, IconArrowDown as io, IconArrowLeft as po, IconArrowLineDown as lo, IconArrowLineLeft as mo, IconArrowLineRight as fo, IconArrowLineUp as xo, IconArrowRight as so, IconArrowUp as uo, IconArrowsOut as Co, IconArticle as ho, IconAt as wo, IconBellSimple as To, IconBookOpenText as go, IconCalendarBlank as ko, IconCaretDown as So, IconCaretLeft as Ao, IconCaretRight as Do, IconCaretUp as Lo, IconCaretUpDown as Po, IconChartPieSlice as yo, IconChatText as Bo, IconCheck as Fo, IconCheckCircle as Uo, IconChecks as Mo, IconCircleNotch as Ro, IconClickHouse as vo, IconCopy as Xo, IconCornersOut as bo, IconCsv as Ho, IconCube as
|
30
|
+
import { IconArrowBendUpRight as Io, IconArrowClockwise as ao, IconArrowDown as io, IconArrowLeft as po, IconArrowLineDown as lo, IconArrowLineLeft as mo, IconArrowLineRight as fo, IconArrowLineUp as xo, IconArrowRight as so, IconArrowUp as uo, IconArrowsOut as Co, IconArticle as ho, IconAt as wo, IconBellSimple as To, IconBookOpenText as go, IconCalendarBlank as ko, IconCaretDown as So, IconCaretLeft as Ao, IconCaretRight as Do, IconCaretUp as Lo, IconCaretUpDown as Po, IconChartPieSlice as yo, IconChatText as Bo, IconCheck as Fo, IconCheckCircle as Uo, IconChecks as Mo, IconCircleNotch as Ro, IconClickHouse as vo, IconCopy as Xo, IconCornersOut as bo, IconCsv as Ho, IconCube as Eo, IconDatabase as Go, IconDotsNine as No, IconDotsThreeVertical as Oo, IconExport as Qo, IconEye as Vo, IconEyeSlash as Wo, IconFile as zo, IconFiles as Jo, IconFloppyDisk as Yo, IconFolderSimple as jo, IconFolderSimpleX as qo, IconFunnel as Ko, IconGauge as Zo, IconGear as _o, IconGitBranchX as $o, IconGoogleDrive as or, IconHand as rr, IconHeadCircuit as nr, IconHouse as er, IconIcon as cr, IconInfo as tr, IconJoin as Ir, IconLanguage as ar, IconLink as ir, IconList as pr, IconLock as lr, IconLockOpen as mr, IconMariaDB as fr, IconMinus as xr, IconMongoDB as sr, IconMoon as ur, IconMySQL as dr, IconNavigationArrow as Cr, IconNotePencil as hr, IconPassword as wr, IconPen as Tr, IconPlay as gr, IconPlugsX as kr, IconPlus as Sr, IconPorsgteSQL as Ar, IconPresentationChart as Dr, IconQuestion as Lr, IconQuestionFullfilled as Pr, IconRedo as yr, IconRoleX as Br, IconSearch as Fr, IconSearchX as Ur, IconSelection as Mr, IconServer as Rr, IconSlidersHorizontal as vr, IconSticker as Xr, IconSun as br, IconThreeDot as Hr, IconTrash as Er, IconTriangleDown as Gr, IconTriangleUp as Nr, IconUndo as Or, IconUploadSimple as Qr, IconUser as Vr, IconUserX as Wr, IconWarningCircle as zr, IconWrench as Jr, IconX as Yr, IconYandexDisk as jr } from "./components/Ui/Icons/Icons.js";
|
31
31
|
import { ToastProvider as Kr, useToast as Zr } from "./context/ToastContext/ToastContext.js";
|
32
32
|
import { TriaflyContext as $r, TriaflyProvider as on, useTriafly as rn } from "./context/TriaflyContext/TriaflyProvider.js";
|
33
33
|
import { useBreakpointValueTriafly as en } from "./context/TriaflyContext/hooks/useBreakpointValue/useBreakpointValue.js";
|
34
34
|
import { useThemeLogic as tn } from "./context/TriaflyContext/hooks/useTheme/useTheme.js";
|
35
35
|
import { useModalState as an } from "./context/TriaflyContext/hooks/useModal/useModal.js";
|
36
|
-
import { NumberInput as ln } from "./components/Ui/NumberInput/NumberInput.js";
|
37
36
|
export {
|
38
37
|
e as Accordeon,
|
39
38
|
t as Alert,
|
@@ -82,9 +81,9 @@ export {
|
|
82
81
|
Xo as IconCopy,
|
83
82
|
bo as IconCornersOut,
|
84
83
|
Ho as IconCsv,
|
85
|
-
|
86
|
-
|
87
|
-
|
84
|
+
Eo as IconCube,
|
85
|
+
Go as IconDatabase,
|
86
|
+
No as IconDotsNine,
|
88
87
|
Oo as IconDotsThreeVertical,
|
89
88
|
Qo as IconExport,
|
90
89
|
Vo as IconEye,
|
@@ -136,9 +135,9 @@ export {
|
|
136
135
|
Xr as IconSticker,
|
137
136
|
br as IconSun,
|
138
137
|
Hr as IconThreeDot,
|
139
|
-
|
140
|
-
|
141
|
-
|
138
|
+
Er as IconTrash,
|
139
|
+
Gr as IconTriangleDown,
|
140
|
+
Nr as IconTriangleUp,
|
142
141
|
Or as IconUndo,
|
143
142
|
Qr as IconUploadSimple,
|
144
143
|
Vr as IconUser,
|
@@ -147,10 +146,9 @@ export {
|
|
147
146
|
Jr as IconWrench,
|
148
147
|
Yr as IconX,
|
149
148
|
jr as IconYandexDisk,
|
150
|
-
|
149
|
+
E as Loader,
|
151
150
|
p as ModalWindow,
|
152
|
-
|
153
|
-
G as Pagination,
|
151
|
+
N as Pagination,
|
154
152
|
Q as Radio,
|
155
153
|
W as SearchInput,
|
156
154
|
J as Skeleton,
|