@sumaris-net/ngx-components 2.7.3-rc4 → 2.7.3-rc40

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 (40) hide show
  1. package/esm2022/src/app/admin/users/users.mjs +2 -2
  2. package/esm2022/src/app/core/account/account.page.mjs +1 -1
  3. package/esm2022/src/app/core/form/properties/properties.form.mjs +1 -1
  4. package/esm2022/src/app/core/form/properties/properties.table.mjs +1 -1
  5. package/esm2022/src/app/core/register/register.form.mjs +1 -1
  6. package/esm2022/src/app/core/services/config/core.config.mjs +7 -1
  7. package/esm2022/src/app/core/settings/settings.page.mjs +1 -1
  8. package/esm2022/src/app/core/table/testing/table-validator.service.mjs +4 -1
  9. package/esm2022/src/app/core/table/testing/table.testing.mjs +39 -20
  10. package/esm2022/src/app/shared/form/field.component.mjs +10 -7
  11. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +8 -5
  12. package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +3 -3
  13. package/esm2022/src/app/shared/material/chips/material.chips.mjs +3 -3
  14. package/esm2022/src/app/shared/material/datetime/material.date.mjs +10 -3
  15. package/esm2022/src/app/shared/material/datetime/material.datetime.mjs +71 -41
  16. package/esm2022/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +6 -6
  17. package/esm2022/src/app/shared/material/latlong/material.latlong.mjs +16 -11
  18. package/esm2022/src/app/shared/material/latlong/testing/latlong.test.mjs +7 -3
  19. package/esm2022/src/app/shared/material/material.config.mjs +2 -1
  20. package/esm2022/src/app/shared/material/testing/common.test.mjs +3 -3
  21. package/esm2022/src/app/shared/pipes/maskito.pipe.mjs +37 -16
  22. package/fesm2022/sumaris-net.ngx-components.mjs +238 -139
  23. package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
  24. package/package.json +1 -1
  25. package/src/app/core/services/config/core.config.d.ts +1 -0
  26. package/src/app/shared/form/field.component.d.ts +5 -3
  27. package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +1 -0
  28. package/src/app/shared/material/datetime/material.date.d.ts +1 -0
  29. package/src/app/shared/material/datetime/material.datetime.d.ts +25 -22
  30. package/src/app/shared/material/datetime/testing/mat-date-time.test.d.ts +2 -2
  31. package/src/app/shared/material/latlong/material.latlong.d.ts +5 -3
  32. package/src/app/shared/material/latlong/testing/latlong.test.d.ts +4 -0
  33. package/src/app/shared/material/material.config.d.ts +2 -1
  34. package/src/assets/manifest.json +1 -1
  35. package/src/theme/_material.scss +16 -4
  36. package/src/theme/_mixins.scss +6 -4
  37. package/src/theme/_ngx-components.globals.scss +7 -4
  38. package/src/theme/_ngx-components.scss +65 -46
  39. package/src/theme/_ngx-components.table.scss +88 -129
  40. package/src/theme/_ngx-components.tabs.scss +0 -324
@@ -36,327 +36,3 @@
36
36
  display: inherit;
37
37
  }
38
38
 
39
- // --------------------------------------------------
40
- // Material menu
41
- // --------------------------------------------------
42
-
43
-
44
- .mat-menu-panel {
45
-
46
- // Max width = 400px
47
- &.mat-menu-size-400 {
48
- min-width: unset;
49
- width: 400px;
50
- max-width: calc(90vw);
51
- }
52
- // Max width = 75vw
53
- &.mat-menu-size-75vw {
54
- min-width: unset;
55
- width: calc(75vw);
56
- max-width: calc(90vw);
57
- }
58
-
59
- // No padding
60
- &.ion-no-padding {
61
- .mat-menu-content {
62
- padding: 0 !important;
63
- }
64
- }
65
-
66
- // Small menu item (e.g. for actions on a table row)
67
- &.mat-menu-small-item-height .mat-menu-item,
68
- .mat-menu-item.mat-menu-item-small-height
69
- {
70
- padding: 0 8px;
71
- height: 35px;
72
- line-height: 35px;
73
- }
74
- // Reduce the font size, on label just inside a mat-menu (e.g. see trips.page.html)
75
- .mat-menu-content > ion-label {
76
- @include font-size(12px);
77
- }
78
-
79
- .mat-menu-content ion-item > ion-icon[slot="start"] {
80
- margin-right: 16px;
81
- vertical-align: middle;
82
- }
83
-
84
- // Menu title (e.g. see extraction map)
85
- .mat-menu-item.mat-menu-title {
86
- padding: 0 8px;
87
- height: 27px;
88
- line-height: 27px;
89
- @include font-size(12px);
90
- pointer-events: none;
91
- color: var(--ion-color-medium, rgba(0, 0, 0, 0.38));
92
- }
93
- }
94
-
95
- // --------------------------------------------------
96
- // Alert
97
- // --------------------------------------------------
98
-
99
- ion-alert button.alert-button {
100
- cursor: pointer;
101
- }
102
-
103
- // --------------------------------------------------
104
- // Date and time picker
105
- // --------------------------------------------------
106
-
107
- mat-calendar {
108
- .mat-calendar-header {
109
- background-color: var(--ion-color-secondary) !important;
110
- color: var(--ion-color-secondary-contrast) !important;
111
-
112
- button {
113
- color: var(--ion-color-secondary-contrast) !important;
114
- }
115
- }
116
-
117
- .mat-calendar-body-selected {
118
- background-color: var(--ion-color-accent) !important;
119
- color: var(--ion-color-accent-contrast) !important;
120
- font-weight: bold;
121
- }
122
-
123
- .mat-calendar-arrow {
124
- border-top-color: var(--ion-color-secondary-contrast) !important;
125
- }
126
- }
127
-
128
-
129
- .timepicker-backdrop-overlay {
130
- background-color: rgba(0, 0, 0, 0.32);
131
- z-index: 1000;
132
- opacity: 1;
133
- -webkit-tap-highlight-color: transparent;
134
- transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
135
- }
136
-
137
- ngx-material-timepicker-content {
138
- --clock-hand-color: var(--ion-color-accent) !important;
139
- --clock-face-time-active-color: var(--ion-color-accent-contrast) !important;
140
- // TODO review !
141
- //@extend .mat-dialog-container !optional;
142
-
143
- .timepicker {
144
- box-shadow: unset !important;
145
- border-radius: 4px;
146
-
147
- header {
148
- --dial-background-color: var(--ion-color-secondary) !important;
149
- color: var(--ion-color-secondary-contrast) !important;
150
- }
151
- }
152
-
153
- ngx-material-timepicker-dial-control {
154
- outline-color: var(--ion-color-accent) !important;
155
- input {
156
- outline-color: inherit !important;
157
- }
158
- }
159
- }
160
-
161
- .mat-mdc-form-field-type-mat-chip-grid {
162
- .mat-mdc-form-field-infix {
163
- padding-bottom: 5px !important;
164
- --mdc-chip-container-height: 24px !important;
165
- }
166
- }
167
-
168
-
169
- // --------------------------------------------------
170
- // Pages
171
- // --------------------------------------------------
172
- ion-item {
173
- ion-label.error {
174
- line-height: 16px;
175
- line-break: normal;
176
- overflow: visible;
177
- white-space: normal;
178
- }
179
- }
180
-
181
- // --------------------------------------------------
182
- // Modal
183
- // --------------------------------------------------
184
-
185
- ion-modal.stack-modal {
186
- --box-shadow: 0 28px 48px rgba(0, 0, 0, 0.4);
187
- --backdrop-opacity: var(--ion-backdrop-opacity, 0.32);
188
- }
189
-
190
- ion-modal.modal-large{
191
- --min-height: calc(100% - 50px) !important;
192
- --min-width: calc(100% - 100px) !important;
193
- }
194
- ion-modal.modal-fullscreen {
195
- --min-height: calc(100%) !important;
196
- --min-width: calc(100%) !important;
197
- }
198
-
199
-
200
- // --------------------------------------------------
201
- // Popover
202
- // --------------------------------------------------
203
-
204
- .popover-large {
205
- --min-width: calc(min(500px, 80%));
206
- }
207
-
208
- .popover-notifications {
209
- --popover-top: 0;
210
- --max-height: calc(90vh - 40px /* header + footer height */ - var(--popover-top, 0px) - var(--offset-y, 0px));
211
-
212
- ion-item {
213
- --ion-item-background-color-hover: var(--ion-color-light);
214
- &.unread {
215
- --ion-item-background: rgba(var(--ion-color-secondary100-rgb), 0.2);
216
- --ion-item-background-color-hover: rgba(var(--ion-color-secondary100-rgb), 0.3);
217
- }
218
- }
219
- }
220
-
221
- // --------------------------------------------------
222
- // Large button with icon floating on right
223
- // --------------------------------------------------
224
- .flex-margin ion-icon,
225
- .flex-margin span {
226
- margin-left: auto;
227
- }
228
-
229
- // --------------------------------------------------
230
- // Icon tooltip, and title
231
- // --------------------------------------------------
232
- // Fix Button icon name overrides button's own title on mouse over
233
- /*ion-icon[name='chatbox'] {
234
- pointer-events: none !important;
235
- }*/
236
- .mat-cell {
237
- /* smaller size, for the comment icon */
238
- mat-icon.comment {
239
- @include font-size(16pt);
240
- height: 100%;
241
- vertical-align: center;
242
- color: var(--ion-color-tertiary, grey);
243
-
244
- &.disabled {
245
- color: var(--ion-color-medium, grey);
246
- }
247
- }
248
- }
249
-
250
- // --------------------------------------------------
251
- // Icon inside text
252
- // --------------------------------------------------
253
- mat-icon,
254
- ion-icon {
255
- &.text-size {
256
- font-size: 1em;
257
- width: 1em;
258
- height: 1em;
259
- }
260
- }
261
- ion-button[expand="block"],
262
- ion-button[expand="full"],
263
- .mat-button,
264
- .mat-raised-button {
265
- mat-icon,
266
- ion-icon {
267
- &[slot] {
268
- pointer-events: none;
269
- width: 24px;
270
- height: 24px;
271
- }
272
- &[slot='start'],
273
- &[slot='end'] {
274
- margin-left: unset;
275
- margin-right: unset;
276
- margin-top: 0;
277
- margin-bottom: 0;
278
- }
279
- &t[slot='start'] {
280
- margin-inline-start: -0.3em;
281
- margin-inline-end: 0.3em;
282
- }
283
- &[slot='end'] {
284
- margin-inline-start: 0.3em;
285
- margin-inline-end: -0.3em;
286
- }
287
- &.ion-float-start[slot='start'] {
288
- position: absolute;
289
- left: 0;
290
- }
291
- &.ion-float-end[slot='end'] {
292
- position: absolute;
293
- right: 0;
294
- }
295
- }
296
- }
297
-
298
- // --------------------------------------------------
299
- // Icon multiple
300
- // --------------------------------------------------
301
- ion-icon.icon-secondary,
302
- mat-icon.icon-secondary {
303
- position: absolute;
304
- left: 0;
305
- }
306
-
307
- // --------------------------------------------------
308
- // Toast
309
- // --------------------------------------------------
310
- ion-toast {
311
- --background: var(--ion-color-dark);
312
- --color: var(--ion-color-dark-contrast);
313
- --button-color: var(--ion-color-secondary);
314
-
315
- &.secondary {
316
- --background: var(--ion-color-secondary);
317
- --color: var(--ion-color-secondary-contrast);
318
- --button-color: var(--ion-color-tertiary);
319
- }
320
- &.accent {
321
- --background: var(--ion-color-accent);
322
- --color: var(--ion-color-accent-contrast);
323
- --button-color: var(--ion-color-primary);
324
- }
325
- &.danger {
326
- --background: var(--ion-color-danger);
327
- --color: var(--ion-color-danger-contrast);
328
- --button-color: var(--ion-color-primary);
329
- }
330
-
331
- /* -- workaround because toast animation failed */
332
- --toast-max-height: 75px;
333
-
334
- &.toast-stack-offset-1 {
335
- --toast-stack-offset: 1;
336
- }
337
- &.toast-stack-offset-2 {
338
- --toast-stack-offset: 2;
339
- }
340
- &.toast-stack-offset-3 {
341
- --toast-stack-offset: 3;
342
- }
343
- &.toast-stack-offset-4 {
344
- --toast-stack-offset: 4;
345
- }
346
-
347
- &.toast-stacked-top {
348
- --toast-top: calc(var(--toast-stack-offset, 0) * var(--toast-max-height, 0));
349
- transform: translateY(var(--toast-top));
350
- }
351
- &.toast-stacked-bottom {
352
- --toast-bottom: calc(-1 * var(--toast-stack-offset, 0) * var(--toast-max-height, 0)) !important;
353
- transform: translateY(var(--toast-bottom));
354
- }
355
- }
356
-
357
- // --------------------------------------------------
358
- // Refresher
359
- // --------------------------------------------------
360
- ion-refresher.refresher-native {
361
- z-index: 1000;
362
- }