@ldmjs/ui 1.0.90 → 2.0.0-beta.1

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.
Files changed (104) hide show
  1. package/README.md +46 -94
  2. package/dist/components/ld-avatar.js +1 -0
  3. package/dist/components/ld-badge.js +1 -0
  4. package/dist/components/ld-breadcrumbs.js +1 -0
  5. package/dist/components/ld-button.js +1 -0
  6. package/dist/components/ld-calendar.js +1 -0
  7. package/dist/components/ld-checkbox.js +1 -0
  8. package/dist/components/ld-chip.js +1 -0
  9. package/dist/components/ld-combobox.js +1 -0
  10. package/dist/components/ld-data-iterator.js +1 -0
  11. package/dist/components/ld-datepicker.js +1 -0
  12. package/dist/components/ld-dialog.js +1 -0
  13. package/dist/components/ld-edit-list-box.js +1 -0
  14. package/dist/components/ld-edit-masked-text.js +1 -0
  15. package/dist/components/ld-edit-text.js +1 -0
  16. package/dist/components/ld-expansion-panel.js +1 -0
  17. package/dist/components/ld-expansion-panels.js +1 -0
  18. package/dist/components/ld-icon.js +1 -0
  19. package/dist/components/ld-loader.js +1 -0
  20. package/dist/components/ld-page-toolbar.js +1 -0
  21. package/dist/components/ld-pager.js +1 -0
  22. package/dist/components/ld-progress.js +1 -0
  23. package/dist/components/ld-radiobutton.js +1 -0
  24. package/dist/components/ld-radiogroup.js +1 -0
  25. package/dist/components/ld-select-list-box.js +1 -0
  26. package/dist/components/ld-select.js +1 -0
  27. package/dist/components/ld-slider.js +1 -0
  28. package/dist/components/ld-splitter.js +1 -0
  29. package/dist/components/ld-step.js +1 -0
  30. package/dist/components/ld-switch.js +1 -0
  31. package/dist/components/ld-tab.js +1 -0
  32. package/dist/components/ld-tabs.js +1 -0
  33. package/dist/components/ld-text-markup.js +1 -0
  34. package/dist/components/ld-text-viewer.js +1 -0
  35. package/dist/components/ld-textarea.js +1 -0
  36. package/dist/components/ld-timepicker.js +1 -0
  37. package/dist/components/ld-toggle-buttons.js +1 -0
  38. package/dist/components/ld-uploader.js +1 -0
  39. package/dist/fonts/Roboto-Medium.ttf +0 -0
  40. package/dist/fonts/Roboto-Medium.woff +0 -0
  41. package/dist/fonts/Roboto-Medium.woff2 +0 -0
  42. package/dist/fonts/Roboto-SemiBold.ttf +0 -0
  43. package/dist/fonts/Roboto-SemiBold.woff +0 -0
  44. package/dist/fonts/Roboto-SemiBold.woff2 +0 -0
  45. package/dist/i18n/ru/ru-Ru.json +50 -2
  46. package/dist/index.d.ts +20 -15
  47. package/dist/index.js +1 -21186
  48. package/dist/lib/runtime-template.js +1 -1
  49. package/dist/lib/toastification.js +1 -1
  50. package/dist/scss/_animations.scss +31 -12
  51. package/dist/scss/_avatar.scss +333 -0
  52. package/dist/scss/_badge.scss +128 -0
  53. package/dist/scss/_breadcrumbs.scss +133 -17
  54. package/dist/scss/_buttons.scss +584 -282
  55. package/dist/scss/_calendar.scss +154 -51
  56. package/dist/scss/_checkbox.scss +245 -0
  57. package/dist/scss/_chip.scss +163 -63
  58. package/dist/scss/_colors.scss +21 -19
  59. package/dist/scss/_dialogs.scss +106 -177
  60. package/dist/scss/_editor.scss +146 -0
  61. package/dist/scss/_expansions.scss +57 -0
  62. package/dist/scss/_fonts.scss +115 -0
  63. package/dist/scss/_inputs.scss +928 -138
  64. package/dist/scss/_loader.scss +163 -0
  65. package/dist/scss/_pager.scss +83 -16
  66. package/dist/scss/_progress.scss +282 -0
  67. package/dist/scss/_radiobutton.scss +218 -0
  68. package/dist/scss/_radiogroup.scss +87 -0
  69. package/dist/scss/_scroll.scss +65 -0
  70. package/dist/scss/_shadows.scss +47 -0
  71. package/dist/scss/_slider.scss +53 -0
  72. package/dist/scss/_splitter.scss +60 -0
  73. package/dist/scss/_step.scss +179 -0
  74. package/dist/scss/_switch.scss +198 -0
  75. package/dist/scss/_tabs.scss +318 -0
  76. package/dist/scss/_textmarkup.scss +47 -0
  77. package/dist/scss/_textviewer.scss +13 -0
  78. package/dist/scss/_toasted.scss +44 -22
  79. package/dist/scss/_toggle.scss +125 -0
  80. package/dist/scss/_toolbar.scss +40 -1
  81. package/dist/scss/_tooltip.scss +30 -0
  82. package/dist/scss/_treeview.scss +35 -0
  83. package/dist/scss/_uploader.scss +167 -0
  84. package/dist/scss/_variables.scss +5 -27
  85. package/dist/scss/index.scss +150 -16
  86. package/dist/scss/utils.scss +17 -0
  87. package/dist/types/breadcrumbs.d.ts +2 -0
  88. package/dist/types/calendar.d.ts +8 -73
  89. package/dist/types/combobox.d.ts +10 -0
  90. package/dist/types/dialogs.d.ts +28 -1
  91. package/dist/types/form.d.ts +6 -0
  92. package/dist/types/options.d.ts +11 -1
  93. package/dist/types/toasted.d.ts +4 -4
  94. package/dist/utils/validators.js +1 -1
  95. package/package.json +123 -120
  96. package/dist/css/calendar.css +0 -1066
  97. package/dist/css/index.css +0 -20
  98. package/dist/css/root.css +0 -86
  99. package/dist/lib/calendar.js +0 -1
  100. package/dist/lib/floating.js +0 -1
  101. package/dist/lib/multiselect.js +0 -1
  102. package/dist/scss/_multiselect.scss +0 -170
  103. package/dist/scss/_toasted-old.scss +0 -408
  104. package/dist/scss/index-old.scss +0 -16
@@ -1,52 +1,58 @@
1
- $colors: ('primary', 'secondary', 'success', 'warning', 'error', 'grey', 'dark', 'white');
1
+ $colors: ('primary', 'secondary', 'success', 'warning', 'error', 'grey', 'white');
2
2
 
3
3
  body,
4
4
  .v-application {
5
5
  @each $color in $colors {
6
6
  & .#{$color} {
7
- background-color: var(--#{$color}) !important;
8
- border-color: var(--#{$color}) !important;
7
+ background-color: var(--#{$color});
8
+ border-color: var(--#{$color});
9
9
  }
10
10
  & .#{$color}--text, & .text-#{$color} {
11
11
  @if $color == 'primary' {
12
- color: var(--#{$color}-l-2) !important;
12
+ color: var(--#{$color}-d-1);
13
+ }
14
+ @else if $color == 'success' {
15
+ color: var(--#{$color}-d-1);
16
+ }
17
+ @else if $color == 'grey' {
18
+ color: var(--#{$color}-d-3);
13
19
  } @else {
14
- color: var(--#{$color}) !important;
20
+ color: var(--#{$color});
15
21
  }
16
22
  }
17
23
  & .#{$color}--bg, & .bg-#{$color} {
18
24
  @if $color == 'primary' {
19
- background-color: var(--#{$color}-l-8) !important;
25
+ background-color: var(--#{$color}-l-5);
20
26
  } @else if $color == 'grey' {
21
- background-color: var(--#{$color}-l-6) !important;
27
+ background-color: var(--#{$color}-l-6);
22
28
  } @else if $color == 'secondary' {
23
- background-color: var(--#{$color}-l-5) !important;
29
+ background-color: var(--#{$color}-l-5);
24
30
  } @else {
25
- background-color: var(--#{$color}) !important;
31
+ background-color: var(--#{$color});
26
32
  }
27
33
  }
28
34
  & .#{$color}--border, & .border-#{$color} {
29
35
  @if $color == 'primary' {
30
- border-color: var(--#{$color}-l-2) !important;
36
+ border-color: var(--#{$color}-l-2);
31
37
  } @else if $color == 'grey' {
32
- border-color: var(--#{$color}-l-5) !important;
38
+ border-color: var(--#{$color}-l-5);
33
39
  } @else {
34
- border-color: var(--#{$color}) !important;
40
+ border-color: var(--#{$color});
35
41
  }
36
42
  }
37
43
  & .#{$color}--hover {
38
44
  transition: background 0.1s;
39
45
  @if $color == 'grey' {
40
46
  &:hover {
41
- background-color: var(--#{$color}-l-6) !important;
47
+ background-color: var(--#{$color}-l-6);
42
48
  }
43
49
  } @else if $color == 'secondary' {
44
50
  &:hover {
45
- background-color: var(--#{$color}-l-5) !important;
51
+ background-color: var(--#{$color}-l-5);
46
52
  }
47
53
  } @else {
48
54
  &:hover {
49
- background-color: var(--#{$color}) !important;
55
+ background-color: var(--#{$color});
50
56
  }
51
57
  }
52
58
  }
@@ -55,9 +61,5 @@ body,
55
61
  & .text-color {
56
62
  color: var(--text);
57
63
  }
58
-
59
- & .label-color {
60
- color: var(--label);
61
- }
62
64
  }
63
65
 
@@ -1,207 +1,136 @@
1
+ $modal-border-radius: 20px !default; // радиус скругления модальных окон
2
+ $modal-window-gap: 24px !default;
3
+
4
+ :root {
5
+ --modal-border-radius: #{$modal-border-radius};
6
+ --modal-window-gap: #{$modal-window-gap};
7
+ }
8
+
1
9
  body {
2
10
  .v-dialog {
3
11
  display: flex;
4
- transition: none;
12
+ justify-content: center;
13
+ overflow-x: hidden;
14
+ overflow-y: auto;
5
15
 
6
- .v-overlay__content {
7
- contain: none;
8
-
9
- & > .v-card {
10
- flex-grow: 1;
11
- border: 1px solid var(--primary);
12
- border-radius: var(--toolbar-border-radius);
13
- box-shadow: var(--shadow-4);
16
+ .v-overlay__scrim {
17
+ opacity: 1;
18
+ background-color: var(--shade-30);
19
+ }
14
20
 
15
- & > .v-card-title {
16
- height: var(--toolbar-height);
17
- padding: 0 20px;
18
- }
21
+ &.Alert,
22
+ &.Confirm {
23
+ align-items: center;
24
+ }
19
25
 
20
- & > .v-card-text {
21
- padding: 0 20px 20px 20px;
22
- }
23
- }
26
+ &:not(.Alert):not(.Confirm) {
27
+ align-items: start;
24
28
  }
25
- }
26
29
 
27
- .minimized-dialogs {
28
- position: absolute;
29
- right: 25px;
30
- bottom: 17px;
31
- z-index: 999;
32
- }
30
+ &--align-left {
31
+ justify-content: flex-start !important;
33
32
 
34
- .minimize-btn {
35
- width: 300px;
36
- height: var(--input-height);
37
- font-size: var(--font-size);
38
- transition: background 0.2s;
39
- background-color: var(--primary-l-2);
40
- border-radius: var(--border-radius);
33
+ .ld-dialog-content.v-overlay__content {
34
+ border-radius: 0 !important;
41
35
 
42
- &:hover {
43
- background-color: var(--primary-l-1);
36
+ & > .v-card {
37
+ border-radius: 0 !important;
38
+ }
39
+ }
44
40
  }
45
- }
46
- }
47
41
 
48
- .ld-dialog-content {
49
- & > .card {
50
- display: flex;
51
- flex-direction: column;
52
-
53
- & > .v-card-title {
54
- display: flex;
55
- flex-wrap: nowrap;
56
- position: relative;
57
- flex-shrink: 0;
58
- padding: 0 20px !important;
59
- z-index: 1;
60
- box-shadow: none;
61
- font-weight: 700;
62
-
63
- &--dark {
64
- background-color: var(--primary);
65
- color: var(--white);
66
- box-shadow: var(--shadow-2);
67
- }
42
+ &--align-right {
43
+ justify-content: flex-end !important;
68
44
 
69
- &.modal-title {
70
- display: flex;
71
- align-items: center;
72
- flex-wrap: nowrap !important;
73
- font-size: var(--font-size-2);
74
- padding-top: 0;
75
- padding-left: 10px;
76
- padding-right: 10px;
77
-
78
- & > span {
79
- display: block;
80
- white-space: nowrap;
81
- overflow: hidden;
82
- text-overflow: ellipsis;
45
+ .ld-dialog-content.v-overlay__content {
46
+ border-radius: 0 !important;
47
+
48
+ & > .v-card {
49
+ border-radius: 0 !important;
83
50
  }
84
51
  }
85
52
  }
86
53
 
87
- & > .v-card-text {
88
- position: relative;
89
- display: flex;
90
- flex-direction: column;
91
- height: auto;
92
- flex-basis: 100%;
93
- overflow-x: hidden;
94
- overflow-y: auto;
95
- padding: 0 20px 20px 20px !important;
96
-
97
- &.content {
98
- height: 100%;
99
- overflow-y: auto;
100
- overflow-x: hidden;
101
- font-size: var(--font-size) !important;
102
- }
54
+ &.ld-dialog--hidden {
55
+ visibility: hidden !important;
56
+ opacity: 0 !important;
103
57
  }
104
58
 
105
- & > .v-card-actions {
106
- flex-shrink: 0;
107
- padding: 8px 20px 20px 20px;
108
- min-height: unset;
109
- }
59
+ .ld-dialog-content.v-overlay__content {
60
+ max-width: unset;
61
+ max-height: unset;
62
+ border-radius: var(--modal-border-radius);
110
63
 
111
- &--simple {
112
- padding: 0 !important;
113
- .v-card-title {
114
- padding-top: 5px !important;
115
- height: 40px !important;
116
- }
117
- .v-card-text {
118
- padding: 0 20px 0px !important;
119
- }
64
+ & > .v-card {
65
+ display: flex;
66
+ flex-direction: column;
67
+ border-radius: var(--modal-border-radius);
68
+ box-shadow: var(--shadow-xxl);
120
69
 
121
- .v-card-actions {
122
- padding: 20px 20px 17px !important;
123
- }
124
- }
70
+ & > .v-card-title {
71
+ display: flex;
72
+ align-items: center;
73
+ flex-wrap: nowrap;
74
+ position: relative;
75
+ flex-shrink: 0;
76
+ padding: 24px 24px 20px 24px;
77
+ border-bottom: 1px solid var(--grey-l-5);
78
+
79
+ & > span:first-child {
80
+ color: var(--text);
81
+ font-family: var(--semibold);
82
+ font-size: var(--text-body-x);
83
+ font-weight: 600;
84
+ line-height: calc(var(--text-body-x) + 8px);
85
+ }
86
+ }
87
+
88
+ & > .v-card-text {
89
+ color: var(--text);
90
+ font-family: var(--regular);
91
+ font-size: var(--text-body-m);
92
+ line-height: 20px;
93
+ padding: 20px 24px;
94
+ overflow-x: hidden;
95
+ overflow-y: auto;
96
+ }
97
+
98
+ & > .v-card-actions {
99
+ position: relative;
100
+ flex-shrink: 0;
101
+ padding: 24px 24px 20px 24px;
102
+ border-top: 1px solid var(--grey-l-5);
125
103
 
126
- &--mobile {
127
- display: grid !important;
128
- grid-template-rows: 44px 1fr;
129
- height: 100%;
130
- &.not-select-dialog {
131
- min-height: 115px;
132
- max-height: 100%;
133
- // .mobile-container {
134
- // .v-card-text {
135
- // font-size: var(--font-size);
136
- // padding: 10px !important;
137
- // }
138
- // }
139
- .v-card-actions {
140
- padding: 10px 0;
104
+ & > button {
105
+ width: var(--max-child-width);
106
+ }
141
107
  }
142
108
  }
143
109
 
144
- // .mobile-container {
145
- // position: relative;
146
- // min-height: 100%;
147
- // max-height: 100%;
148
- // overflow-y: auto;
149
-
150
- // .v-card-text {
151
- // height: 100%;
152
- // }
153
- // }
154
-
155
- // .modal-header {
156
- // z-index: 1;
157
- // height: $modal-header-height !important;
158
- // border-radius: 0 !important;
159
- // background-color: var(--white);
160
-
161
- // & .v-toolbar__content {
162
- // height: 100% !important;
163
- // display: flex;
164
- // justify-content: space-between;
165
- // & .v-toolbar-title {
166
- // margin-inline-start: 12px !important;
167
- // }
168
- // }
169
- // }
170
- // .v-toolbar__title {
171
- // font-size: var(--font-size) !important;
172
- // margin-inline-start: 12px !important;
173
- // }
174
- // .v-card-actions {
175
- // background: var(--white);
176
- // padding: 10px 0;
177
- // }
178
-
179
- // .v-toolbar__content {
180
- // // margin: 0 10px;
181
- // padding: 0;
182
- // }
183
-
184
- .v-card-text {
185
- height: 100%;
186
- padding: 0 12px 20px 12px;
110
+ &.ld-dialog-content--without-content {
111
+ & > .v-card {
112
+ & > .v-card-title {
113
+ border-color: transparent;
114
+ }
115
+ & > .v-card-actions {
116
+ border-color: transparent;
117
+ }
118
+ }
187
119
  }
188
- }
189
- }
190
-
191
- &.Info,
192
- &.Select,
193
- &.CreateEdit {
194
- .card {
195
- .v-card-text {
196
- &.content {
197
- min-height: 55px;
120
+ &.ld-dialog-content--mobile {
121
+ & > .v-card {
122
+ & > .v-card-actions {
123
+ display: grid;
124
+ grid-auto-flow: column dense;
125
+ grid-auto-columns: 1fr;
126
+ gap: 8px;
127
+ }
198
128
  }
199
129
  }
130
+ &.ld-dialog-content--hidden {
131
+ visibility: hidden !important;
132
+ opacity: 0 !important;
133
+ }
200
134
  }
201
135
  }
202
-
203
- &--hidden {
204
- visibility: hidden !important;
205
- opacity: 0 !important;
206
- }
207
- }
136
+ }
@@ -0,0 +1,146 @@
1
+ body {
2
+ .ld-editor {
3
+ position: relative;
4
+ height: 100%;
5
+ width: 100%;
6
+
7
+ #toolbar {
8
+ position: absolute;
9
+ top: 0;
10
+ left: 0;
11
+ width: 100%;
12
+ border: none !important;
13
+ background-color: rgba(255, 255, 255, 1);
14
+ padding: 12px 0 8px 0;
15
+ z-index: 1;
16
+
17
+ button[type="button"] {
18
+ width: 32px;
19
+ height: 32px;
20
+
21
+ svg {
22
+ width: 20px;
23
+ height: 20px;
24
+ }
25
+ }
26
+
27
+ & + div {
28
+ border: none !important;
29
+ padding: 52px 0 0 0;
30
+ }
31
+ }
32
+
33
+ .ql-toolbar {
34
+ .ql-fill {
35
+ fill: var(--grey-d-3);
36
+ }
37
+ .ql-stroke {
38
+ stroke: var(--grey-d-3);
39
+ }
40
+ .ql-picker-options {
41
+ max-height: 250px;
42
+ overflow-y: auto;
43
+ }
44
+
45
+ button.sep {
46
+ width: 14px;
47
+ height: var(--button-xs);
48
+ color: var(--grey-l-4);
49
+ font-size: var(--text-body-s);
50
+ &:hover {
51
+ background-color: transparent !important;
52
+ cursor: default;
53
+ }
54
+ }
55
+
56
+ button[type="button"] {
57
+ width: var(--button-xs);
58
+ height: var(--button-xs);
59
+ border: 2px solid transparent;
60
+ border-radius: var(--border-radius);
61
+
62
+ svg {
63
+ width: 20px;
64
+ height: 20px;
65
+ }
66
+
67
+ &.ql-active {
68
+ border-color: var(--focus);
69
+ background: none !important;
70
+ color: var(--text) !important;
71
+
72
+ .ql-fill {
73
+ fill: var(--text);
74
+ }
75
+ .ql-stroke {
76
+ stroke: var(--text);
77
+ }
78
+ }
79
+ }
80
+
81
+ .ql-color-picker {
82
+ width: var(--button-xs);
83
+ height: var(--button-xs);
84
+
85
+ .ql-picker-label {
86
+ display: flex;
87
+ align-items: center;
88
+ justify-content: center;
89
+ border-radius: 8px;
90
+ padding: 0;
91
+
92
+ svg {
93
+ width: 20px;
94
+ height: 20px;
95
+ }
96
+ }
97
+ }
98
+
99
+ .ql-font,
100
+ .ql-size {
101
+ display: flex;
102
+ align-items: center;
103
+ height: var(--button-xs);
104
+ border: 2px solid transparent;
105
+ border-radius: var(--border-radius);
106
+
107
+ .ql-picker-label {
108
+ height: 20px;
109
+ border: none !important;
110
+ background: none;
111
+
112
+ &:hover {
113
+ background: none;
114
+ }
115
+
116
+ &.ql-active {
117
+ color: var(--text);
118
+
119
+ .ql-stroke {
120
+ stroke: var(--text);
121
+ }
122
+ }
123
+ }
124
+
125
+ &.ql-expanded {
126
+ border-color: var(--focus);
127
+ }
128
+ }
129
+
130
+ .ql-font {
131
+ width: 240px !important;
132
+ }
133
+ .ql-size {
134
+ width: 135px !important;
135
+ }
136
+ }
137
+
138
+ .ql-editor {
139
+ border: 1px solid var(--grey-l-4);
140
+ border-radius: var(--border-radius);
141
+ background-color: rgba(255, 255, 255, 1);
142
+ padding: 12px 16px !important;
143
+ }
144
+ }
145
+ }
146
+
@@ -0,0 +1,57 @@
1
+ body {
2
+ .v-expansion-panels {
3
+ &.v-expansion-panels--variant-accordion {
4
+ & > .v-expansion-panel:first-child:not(:last-child) {
5
+ border-bottom-left-radius: var(--border-radius) !important;
6
+ border-bottom-right-radius: var(--border-radius) !important;
7
+ }
8
+
9
+ & > .v-expansion-panel:not(:first-child):not(:last-child) {
10
+ border-radius: var(--border-radius) !important;
11
+ }
12
+
13
+ & > .v-expansion-panel:not(:first-child) {
14
+ margin-top: 4px;
15
+ }
16
+ }
17
+ }
18
+ .v-expansion-panel {
19
+ padding: 0 32px;
20
+ border-radius: var(--border-radius);
21
+ &:not(:first-child) {
22
+ &:after {
23
+ content: unset !important;
24
+ }
25
+ }
26
+ .v-expansion-panel__shadow {
27
+ box-shadow: var(--shadow-sm) !important;
28
+ }
29
+ .v-expansion-panel-title {
30
+ display: flex;
31
+ flex-direction: row-reverse;
32
+ justify-content: flex-end !important;
33
+ padding-left: 0;
34
+ padding-right: 0;
35
+ font-family: var(--semibold);
36
+ font-size: var(--text-body-m);
37
+ .v-expansion-panel-title__icon {
38
+ margin-inline-start: unset;
39
+ transition: transform 0.2s;
40
+ }
41
+ .v-expansion-panel-title__overlay {
42
+ opacity: 0;
43
+ }
44
+ }
45
+
46
+ &--active {
47
+
48
+ &:not(:first-child) {
49
+ margin-top: 0;
50
+ }
51
+
52
+ .v-expansion-panel-title__icon {
53
+ transform: rotate(90deg);
54
+ }
55
+ }
56
+ }
57
+ }