@ngx-stoui/core 15.0.1 → 16.0.0

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 (66) hide show
  1. package/README.md +7 -7
  2. package/{esm2020 → esm2022}/index.mjs +1 -1
  3. package/{esm2020 → esm2022}/lib/abstract-and-interfaces/keyPress.enum.mjs +1 -1
  4. package/esm2022/lib/sto-directives/context-menu.directive.mjs +36 -0
  5. package/esm2022/lib/sto-directives/date-form-field-click.directive.mjs +46 -0
  6. package/esm2022/lib/sto-directives/directives.module.mjs +64 -0
  7. package/{esm2020 → esm2022}/lib/sto-directives/index.mjs +1 -1
  8. package/esm2022/lib/sto-directives/menu-overlay.directive.mjs +48 -0
  9. package/{esm2020 → esm2022}/lib/sto-directives/quick-keys.directive.mjs +4 -4
  10. package/{esm2020 → esm2022}/lib/sto-directives/sto-grid.directive.mjs +10 -10
  11. package/{esm2020 → esm2022}/lib/sto-directives/sto-select-text-on-focus.directive.mjs +4 -4
  12. package/{esm2020 → esm2022}/lib/sto-pipes/currency-format.pipe.mjs +4 -4
  13. package/{esm2020 → esm2022}/lib/sto-pipes/date-format.pipe.mjs +4 -4
  14. package/{esm2020 → esm2022}/lib/sto-pipes/keys.pipe.mjs +4 -4
  15. package/{esm2020 → esm2022}/lib/sto-pipes/number-format.pipe.mjs +4 -4
  16. package/{esm2020 → esm2022}/lib/sto-pipes/sto-pipes.module.mjs +17 -17
  17. package/{esm2020 → esm2022}/lib/sto-pipes/with-unit.mjs +7 -7
  18. package/{esm2020 → esm2022}/lib/sto-pipes/yes-no.mjs +4 -4
  19. package/{fesm2020 → fesm2022}/ngx-stoui-core.mjs +83 -84
  20. package/fesm2022/ngx-stoui-core.mjs.map +1 -0
  21. package/lib/sto-directives/context-menu.directive.d.ts +2 -2
  22. package/lib/sto-directives/date-form-field-click.directive.d.ts +2 -2
  23. package/lib/sto-directives/menu-overlay.directive.d.ts +1 -1
  24. package/lib/sto-directives/quick-keys.directive.d.ts +1 -1
  25. package/lib/sto-directives/sto-grid.directive.d.ts +2 -2
  26. package/ngx-datatable.css +26 -9
  27. package/ngx-stoui.css +3289 -3554
  28. package/package.json +18 -18
  29. package/style/_fonts.scss +3 -3
  30. package/style/datatable/_ngx-datatable-compact.scss +144 -144
  31. package/style/datatable/_ngx-datatable-form.scss +94 -95
  32. package/style/datatable/_ngx-datatable-variables.scss +10 -10
  33. package/style/datatable/ngx-datatable.scss +404 -398
  34. package/style/form/sto-form.scss +348 -342
  35. package/style/grid.scss +20 -20
  36. package/style/sto-dialog.scss +73 -73
  37. package/style/sto-grid.scss +67 -67
  38. package/style/theme/_action-footer.scss +20 -20
  39. package/style/theme/_appheader.scss +121 -122
  40. package/style/theme/_card.scss +28 -26
  41. package/style/theme/_colors.scss +170 -170
  42. package/style/theme/_datatable.scss +231 -224
  43. package/style/theme/_daterange.scss +47 -51
  44. package/style/theme/_dialog.scss +25 -25
  45. package/style/theme/_filterpanel.scss +88 -88
  46. package/style/theme/_input-overrides.scss +119 -117
  47. package/style/theme/_message-panel.scss +89 -89
  48. package/style/theme/_number-input.scss +23 -23
  49. package/style/theme/_number-unit-input.scss +34 -34
  50. package/style/theme/_select-filter.scss +16 -16
  51. package/style/theme/_sto-indicators.scss +89 -89
  52. package/style/theme/_theme-variables.scss +63 -61
  53. package/style/theme/_theme.scss +22 -16
  54. package/style/theme/_typography.scss +44 -41
  55. package/style/theme/_wysiwyg.scss +38 -38
  56. package/style/theme/components.scss +16 -16
  57. package/style/theme/preference-manager.scss +50 -50
  58. package/style/theme.scss +41 -35
  59. package/esm2020/lib/sto-directives/context-menu.directive.mjs +0 -36
  60. package/esm2020/lib/sto-directives/date-form-field-click.directive.mjs +0 -46
  61. package/esm2020/lib/sto-directives/directives.module.mjs +0 -64
  62. package/esm2020/lib/sto-directives/menu-overlay.directive.mjs +0 -48
  63. package/fesm2015/ngx-stoui-core.mjs +0 -829
  64. package/fesm2015/ngx-stoui-core.mjs.map +0 -1
  65. package/fesm2020/ngx-stoui-core.mjs.map +0 -1
  66. /package/{esm2020 → esm2022}/ngx-stoui-core.mjs +0 -0
@@ -1,342 +1,348 @@
1
- @import "../theme/theme";
2
- @import "../theme/typography";
3
-
4
- @mixin sto-form-theme($theme, $variables) {
5
- $color: map_get($variables, color);
6
- $secondary-color: map_get($variables, secondary);
7
- $disabled-color: map_get($variables, disabled);
8
- $border-hover: map_get($variables, hover-bg-color);
9
- $border: map_get($variables, border-color);
10
- $selected-color: map_get($variables, selected-color);
11
-
12
- .sto-form {
13
- &__field {
14
- .mat-form-field-wrapper .mat-form-field-underline {
15
- background-color: $border;
16
- }
17
- }
18
-
19
- &__field--disabled {
20
- color: $disabled-color;
21
-
22
- .mat-form-field-flex {
23
- color: $disabled-color;
24
- }
25
-
26
- .mat-select.mat-select-disabled {
27
- .mat-select-arrow {
28
- color: $disabled-color;
29
- }
30
- }
31
- }
32
- }
33
- }
34
-
35
- // Include theme styles for your custom components.
36
- body {
37
- @include sto-form-theme($sto-theme, $variables);
38
- }
39
-
40
- $form-field-bg: var(--bg-light);
41
- $border-radius: 4px;
42
- $height: 72px;
43
-
44
- %sto-form__field {
45
- width: 100%;
46
- min-height: $height;
47
- outline: none;
48
-
49
- .mat-input-element {
50
- cursor: pointer;
51
- overflow: hidden;
52
- }
53
- }
54
-
55
- %sto-card {
56
- width: 100%;
57
- padding: 16px 8px 0 8px;
58
- margin-bottom: 8px;
59
- border-radius: $border-radius;
60
- }
61
-
62
-
63
- %sto-form__field--focused {
64
- .mat-form-field-underline {
65
- //bottom: 16px;
66
- height: 2px;
67
- background-color: transparent;
68
- -webkit-transition-property: background-color, width, left;
69
- -webkit-transition-delay: 0.2s;
70
- width: calc(100% - 2px);
71
- left: 1px;
72
-
73
- .mat-form-field-ripple {
74
- border-bottom-left-radius: $border-radius;
75
- border-bottom-right-radius: $border-radius;
76
- top: 0;
77
-
78
- }
79
- }
80
- }
81
-
82
- %sto-form__select {
83
- .mat-select-arrow {
84
- margin-top:-10px;
85
- }
86
- }
87
-
88
- .mat-card.sto-card {
89
- @extend %sto-card;
90
-
91
-
92
- .mat-card-title.sto-card__title {
93
- width: 100%;
94
- padding-left: 8px;
95
- display: flex;
96
- justify-content: space-between;
97
- h1, h2, h3 {
98
- display: inline-block;
99
- margin-bottom: 0;
100
- white-space: nowrap;
101
- }
102
- }
103
-
104
- .mat-card-subtitle.sto-card__subtitle {
105
- padding-left: 8px;
106
- }
107
-
108
- .sto-card__button-row {
109
- width: 100%;
110
- display: flex;
111
- justify-content: flex-end;
112
-
113
- .mat-button {
114
- margin-top: -8px;
115
- }
116
-
117
- }
118
-
119
- .sto-card__content {
120
- padding-left: 8px;
121
- }
122
-
123
- }
124
-
125
- .sto-form {
126
- &__field {
127
- cursor: pointer;
128
- @extend %sto-form__field;
129
-
130
- &.mat-focused {
131
- @extend %sto-form__field--focused;
132
- &.sto-form__field--disabled{
133
- .mat-form-field-underline{
134
- .mat-form-field-ripple {
135
- display:none;
136
- }
137
- }
138
- }
139
- }
140
-
141
- &.sto-form__field--readonly{
142
- cursor: default;
143
- }
144
- &.sto-form__field--disabled{
145
- cursor: default;
146
- .mat-input-element{
147
- cursor: default;
148
- }
149
- }
150
-
151
- .mat-form-field-flex {
152
- padding: 6px;
153
- border-radius: 4px;
154
- background-color: $form-field-bg;
155
- align-items: center;
156
- .mat-icon-button {
157
- .mat-icon, .mat-datepicker-toggle-default-icon {
158
- }
159
- .mat-datepicker-toggle-default-icon{
160
- margin-top: -2px;
161
- }
162
- }
163
-
164
-
165
- }
166
-
167
- .mat-form-field-subscript-wrapper {
168
- font-size: 11px;
169
- margin: 6px;
170
- }
171
- .mat-form-field-wrapper {
172
- margin: 0 2px;
173
- }
174
- .mat-form-field-flex .mat-form-field-infix {
175
- padding: 6px 0 0 0;
176
- }
177
- .mat-form-field-suffix {
178
-
179
- height: 18px;
180
- > span {
181
- display: inline-block;
182
- margin-top: 0.8em;
183
- }
184
- }
185
-
186
- .mat-form-field-invalid .mat-form-field-ripple {
187
- height: 2px;
188
- }
189
-
190
- .mat-slide-toggle {
191
- position: absolute;
192
- top: 0;
193
- right: 4px;
194
- }
195
-
196
- .mat-radio-button{
197
- margin-right: 16px;
198
- &:last-child{
199
- margin-right: 0;
200
- }
201
- }
202
-
203
- .mat-select {
204
- @extend %sto-form__select;
205
- }
206
- }
207
-
208
- .mat-form-field-wrapper .mat-form-field-underline {
209
- //bottom: 16px;
210
- height: 2px;
211
- width: calc(100% - 2px);
212
- left: 1px;
213
- border-bottom-left-radius: $border-radius;
214
- border-bottom-right-radius: $border-radius;
215
-
216
- .mat-form-field-ripple {
217
- height: 2px;
218
- border-bottom-left-radius: $border-radius;
219
- border-bottom-right-radius: $border-radius;
220
- top: 0;
221
- }
222
- }
223
-
224
- &__color {
225
- position: absolute;
226
- top: -8px;
227
- right: 4px;
228
- height: 30px;
229
- width: 30px;
230
- border: 0;
231
- padding: 0;
232
- background-color: transparent;
233
- }
234
-
235
-
236
- }
237
-
238
- //Readonly
239
- .sto-form__field--readonly {
240
-
241
- .mat-input-element {
242
- cursor: default;
243
- }
244
-
245
- .mat-form-field-flex {
246
- border: 1px solid var(--divider);
247
- background-color: transparent;
248
- }
249
-
250
- :hover {
251
- .mat-form-field-flex {
252
- background-color: transparent;
253
- }
254
- .mat-form-field-underline{
255
- background-color: transparent;
256
- }
257
- }
258
-
259
- .mat-form-field-underline {
260
- display: none;
261
- visibility: hidden;
262
- }
263
- &.ng-invalid.ng-dirty {
264
- .mat-form-field-subscript-wrapper {
265
- margin-top: -1px;
266
- }
267
- }
268
- }
269
-
270
- .sto-form__field--disabled {
271
-
272
- .mat-select.mat-select-disabled{
273
- .mat-select-trigger{
274
- user-select: all;
275
- }
276
- }
277
-
278
- .mat-form-field-underline{
279
- display: block;
280
- visibility: hidden;
281
- }
282
-
283
- .mat-form-field-flex {
284
- cursor: default;
285
- border: 1px solid var(--divider);
286
- background-color: transparent;
287
- }
288
- }
289
-
290
- .sto-form__field.sto-form__field--without-placeholder{
291
- height: 0;
292
- min-height: 32px;
293
- .mat-form-field-flex {
294
- height: 30px;
295
- }
296
- .mat-form-field-infix {
297
- border-top-width: 0;
298
- padding: 0;
299
-
300
- }
301
- .mat-select{
302
- .mat-select-arrow{
303
- margin-top: 0px;
304
- }
305
- }
306
-
307
- .mat-form-field-placeholder, .mat-form-field-label {
308
- top: 0;
309
- }
310
- .mat-form-field-placeholder-wrapper, .mat-form-field-label-wrapper {
311
- top: 0;
312
- padding: 0;
313
- }
314
-
315
- }
316
-
317
- .sto-form{
318
- &__input{
319
- &--color{
320
- cursor: pointer;
321
- margin-top: -5px;
322
- padding: 0;
323
- background-color: transparent;
324
- border-color: transparent;
325
- width: 28px;
326
- height: 30px;
327
-
328
- &::-webkit-color-swatch {
329
- border-radius: 4px;
330
- }
331
- }
332
- }
333
- }
334
-
335
- .sto-field--display {
336
- border-width: 0;
337
- border-style: none;
338
- }
339
-
340
- .mat-form-field .mat-form-field-underline {
341
- height: 2px;
342
- }
1
+ @import '../theme/theme';
2
+ @import '../theme/typography';
3
+
4
+ @mixin sto-form-theme($theme, $variables) {
5
+ $color: map_get($variables, color);
6
+ $secondary-color: map_get($variables, secondary);
7
+ $disabled-color: map_get($variables, disabled);
8
+ $border-hover: map_get($variables, hover-bg-color);
9
+ $border: map_get($variables, border-color);
10
+ $selected-color: map_get($variables, selected-color);
11
+
12
+ .sto-form {
13
+ &__field {
14
+ --mdc-filled-text-field-active-indicator-color: var(--divider);
15
+ --mdc-filled-text-field-hover-active-indicator-color: var(
16
+ --primary-resting
17
+ );
18
+ --mdc-filled-text-field-focus-active-indicator-color: var(
19
+ --primary-resting
20
+ );
21
+ --mdc-filled-text-field-label-text-color: #{$color};
22
+ --mdc-filled-text-field-focus-label-text-color: #{$color};
23
+ input {
24
+ color: var(--mdc-filled-text-field-label-text-color);
25
+ }
26
+ }
27
+
28
+ &__field--disabled {
29
+ color: $disabled-color;
30
+
31
+ .mat-mdc-form-field-flex {
32
+ color: $disabled-color;
33
+ }
34
+
35
+ .mat-select.mat-select-disabled {
36
+ .mat-select-arrow {
37
+ color: $disabled-color;
38
+ }
39
+ }
40
+ }
41
+ }
42
+ }
43
+
44
+ // Include theme styles for your custom components.
45
+ body {
46
+ @include sto-form-theme($sto-theme, $variables);
47
+ }
48
+
49
+ $form-field-bg: var(--bg-light);
50
+ $border-radius: 4px;
51
+ $height: 72px;
52
+
53
+ %sto-form__field {
54
+ width: 100%;
55
+ min-height: $height;
56
+ outline: none;
57
+
58
+ .mat-input-element {
59
+ cursor: pointer;
60
+ overflow: hidden;
61
+ }
62
+ }
63
+
64
+ %sto-card {
65
+ width: 100%;
66
+ padding: 16px 8px 0 8px;
67
+ margin-bottom: 8px;
68
+ border-radius: $border-radius;
69
+ }
70
+
71
+ %sto-form__field--focused {
72
+ .mat-form-field-underline {
73
+ //bottom: 16px;
74
+ height: 2px;
75
+ background-color: transparent;
76
+ -webkit-transition-property: background-color, width, left;
77
+ -webkit-transition-delay: 0.2s;
78
+ width: calc(100% - 2px);
79
+ left: 1px;
80
+
81
+ .mat-form-field-ripple {
82
+ border-bottom-left-radius: $border-radius;
83
+ border-bottom-right-radius: $border-radius;
84
+ top: 0;
85
+ }
86
+ }
87
+ }
88
+
89
+ %sto-form__select {
90
+ .mat-select-arrow {
91
+ margin-top: -10px;
92
+ }
93
+ }
94
+
95
+ .mat-card.sto-card {
96
+ @extend %sto-card;
97
+
98
+ .mat-card-title.sto-card__title {
99
+ width: 100%;
100
+ padding-left: 8px;
101
+ display: flex;
102
+ justify-content: space-between;
103
+ h1,
104
+ h2,
105
+ h3 {
106
+ display: inline-block;
107
+ margin-bottom: 0;
108
+ white-space: nowrap;
109
+ }
110
+ }
111
+
112
+ .mat-card-subtitle.sto-card__subtitle {
113
+ padding-left: 8px;
114
+ }
115
+
116
+ .sto-card__button-row {
117
+ width: 100%;
118
+ display: flex;
119
+ justify-content: flex-end;
120
+
121
+ .mat-button {
122
+ margin-top: -8px;
123
+ }
124
+ }
125
+
126
+ .sto-card__content {
127
+ padding-left: 8px;
128
+ }
129
+ }
130
+
131
+ .sto-form {
132
+ &__field {
133
+ cursor: pointer;
134
+ @extend %sto-form__field;
135
+ --mdc-filled-text-field-container-color: #{$form-field-bg};
136
+
137
+ &.mat-focused {
138
+ @extend %sto-form__field--focused;
139
+ &.sto-form__field--disabled {
140
+ .mat-form-field-underline {
141
+ .mat-form-field-ripple {
142
+ display: none;
143
+ }
144
+ }
145
+ }
146
+ }
147
+
148
+ &.sto-form__field--readonly {
149
+ cursor: default;
150
+ }
151
+ &.sto-form__field--disabled {
152
+ cursor: default;
153
+ .mat-input-element {
154
+ cursor: default;
155
+ }
156
+ }
157
+
158
+ .mat-mdc-form-field-flex {
159
+ padding: 6px;
160
+ border-radius: 4px;
161
+ // background-color: $form-field-bg;
162
+ align-items: center;
163
+ .mat-mdc-floating-label {
164
+ top: 5px;
165
+ }
166
+ .mat-icon-button {
167
+ .mat-icon,
168
+ .mat-datepicker-toggle-default-icon {
169
+ }
170
+ .mat-datepicker-toggle-default-icon {
171
+ margin-top: -2px;
172
+ }
173
+ }
174
+ }
175
+
176
+ .mat-mdc-form-field-subscript-wrapper {
177
+ font-size: 11px;
178
+ margin: 6px;
179
+ }
180
+ .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea),
181
+ .mat-mdc-form-field-flex {
182
+ .mat-mdc-form-field-infix {
183
+ padding: 6px 0 0 0;
184
+ }
185
+ }
186
+ .mat-mdc-form-field-flex .mat-mdc-form-field-infix {
187
+ min-height: auto;
188
+ border-top: 0.99975em solid transparent;
189
+ }
190
+ .mat-mdc-form-field-icon-suffix {
191
+ height: 18px;
192
+ color: var(--text);
193
+ display: flex;
194
+ .mat-mdc-icon-button {
195
+ --mdc-icon-button-state-layer-size: 23px;
196
+ padding: 2px;
197
+ }
198
+ > span {
199
+ display: inline-block;
200
+ margin-top: 0.8em;
201
+ }
202
+ > .mat-icon {
203
+ padding: 2px;
204
+ }
205
+ }
206
+ &:has(.mdc-floating-label) .mat-mdc-form-field-icon-suffix {
207
+ place-self: center;
208
+ }
209
+ .mat-mdc-select-arrow-wrapper {
210
+ height: 20px;
211
+ }
212
+
213
+ .mat-form-field-invalid .mat-form-field-ripple {
214
+ height: 2px;
215
+ }
216
+
217
+ .mat-mdc-slide-toggle {
218
+ position: absolute;
219
+ top: 0;
220
+ right: 4px;
221
+ }
222
+
223
+ .mat-radio-button {
224
+ margin-right: 16px;
225
+ &:last-child {
226
+ margin-right: 0;
227
+ }
228
+ }
229
+
230
+ .mat-select {
231
+ @extend %sto-form__select;
232
+ }
233
+ }
234
+
235
+ &__color {
236
+ position: absolute;
237
+ top: -8px;
238
+ right: 4px;
239
+ height: 30px;
240
+ width: 30px;
241
+ border: 0;
242
+ padding: 0;
243
+ background-color: transparent;
244
+ }
245
+ }
246
+
247
+ //Readonly
248
+ .sto-form__field--readonly {
249
+ .mat-input-element {
250
+ cursor: default;
251
+ }
252
+
253
+ .mat-mdc-form-field-flex {
254
+ background-color: transparent;
255
+ }
256
+
257
+ :hover {
258
+ .mat-mdc-form-field-flex {
259
+ background-color: transparent;
260
+ }
261
+ .mat-form-field-underline {
262
+ background-color: transparent;
263
+ }
264
+ }
265
+
266
+ .mat-form-field-underline {
267
+ display: none;
268
+ visibility: hidden;
269
+ }
270
+ &.ng-invalid.ng-dirty {
271
+ .mat-mdc-form-field-subscript-wrapper {
272
+ margin-top: -1px;
273
+ }
274
+ }
275
+ }
276
+
277
+ .sto-form__field--disabled {
278
+ .mat-select.mat-select-disabled {
279
+ .mat-select-trigger {
280
+ user-select: all;
281
+ }
282
+ }
283
+
284
+ .mat-form-field-underline {
285
+ display: block;
286
+ visibility: hidden;
287
+ }
288
+
289
+ .mat-mdc-form-field-flex {
290
+ cursor: default;
291
+ border: 1px solid var(--divider);
292
+ background-color: transparent;
293
+ }
294
+ }
295
+
296
+ .sto-form__field.sto-form__field--without-placeholder {
297
+ height: 0;
298
+ min-height: 32px;
299
+ .mat-mdc-form-field-flex {
300
+ height: 30px;
301
+ }
302
+ .mat-mdc-form-field-infix {
303
+ border-top-width: 0;
304
+ padding: 0;
305
+ }
306
+ .mat-select {
307
+ .mat-select-arrow {
308
+ margin-top: 0px;
309
+ }
310
+ }
311
+
312
+ .mat-form-field-placeholder,
313
+ .mat-mdc-floating-label {
314
+ top: 0;
315
+ }
316
+ .mat-form-field-placeholder-wrapper,
317
+ .mat-mdc-floating-label-wrapper {
318
+ top: 0;
319
+ padding: 0;
320
+ }
321
+ }
322
+
323
+ .sto-form {
324
+ &__input {
325
+ &--color {
326
+ cursor: pointer;
327
+ margin-top: -5px;
328
+ padding: 0;
329
+ background-color: transparent;
330
+ border-color: transparent;
331
+ width: 28px;
332
+ height: 30px;
333
+
334
+ &::-webkit-color-swatch {
335
+ border-radius: 4px;
336
+ }
337
+ }
338
+ }
339
+ }
340
+
341
+ .sto-field--display {
342
+ border-width: 0;
343
+ border-style: none;
344
+ }
345
+
346
+ .mat-form-field .mat-form-field-underline {
347
+ height: 2px;
348
+ }