@massimo-cassandro/minimo 1.20.15 → 1.21.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 (56) hide show
  1. package/design-tokens/_src/link.minimo.tokens.mjs +35 -4
  2. package/package.json +1 -1
  3. package/src/components/autocomplete/autocomplete.css +113 -109
  4. package/src/components/inner-nav/inner-nav.css +13 -9
  5. package/src/components/modal-alert/modal-alert.js +13 -13
  6. package/src/components/modal-alert/modal-alert.module.css +157 -153
  7. package/src/components/modal-popup/modal-popup.module.css +89 -85
  8. package/src/components/overlay/overlay.css +14 -10
  9. package/src/components/sf-macro/sf-macro.css +60 -56
  10. package/src/components/slide-up-down-toggle/slide-up-down-toggle.module.css +33 -29
  11. package/src/components/snackbar/snackbar.module.css +93 -89
  12. package/src/components/spinner/spinner-circle-basic.css +18 -14
  13. package/src/components/spinner/spinner.module.css +8 -4
  14. package/src/components/unsplash-page/unsplash-page.module.css +260 -256
  15. package/src/css/alerts.css +55 -53
  16. package/src/css/badge.css +16 -12
  17. package/src/css/buttons/btn-close.css +57 -53
  18. package/src/css/buttons/buttons-primary.css +38 -34
  19. package/src/css/buttons/buttons-secondary.css +38 -34
  20. package/src/css/buttons/buttons.css +84 -80
  21. package/src/css/buttons/status-buttons.css +66 -63
  22. package/src/css/container.css +9 -5
  23. package/src/css/data-formats.css +28 -24
  24. package/src/css/details.css +17 -13
  25. package/src/css/dimensions.css +13 -9
  26. package/src/css/display.css +27 -23
  27. package/src/css/flex.css +39 -35
  28. package/src/css/forms/fieldset.css +47 -43
  29. package/src/css/forms/form-collections.css +16 -12
  30. package/src/css/forms/form-disabled-readonly.css +31 -27
  31. package/src/css/forms/form-group.css +15 -11
  32. package/src/css/forms/form-utilities.css +32 -28
  33. package/src/css/forms/forms.css +136 -134
  34. package/src/css/forms/input-group.css +47 -43
  35. package/src/css/forms/switch.css +50 -46
  36. package/src/css/forms/validation.css +26 -22
  37. package/src/css/grid.css +66 -62
  38. package/src/css/headings.css +32 -28
  39. package/src/css/icons.css +41 -37
  40. package/src/css/layout-base.css +16 -12
  41. package/src/css/links.css +49 -0
  42. package/src/css/margin-padding-bootstrap-media.css +1836 -1832
  43. package/src/css/margin-padding-bootstrap.css +445 -441
  44. package/src/css/margin-padding-media.css +1836 -1832
  45. package/src/css/margin-padding.css +445 -441
  46. package/src/css/overflow.css +7 -3
  47. package/src/css/position.css +5 -1
  48. package/src/css/reset.css +47 -44
  49. package/src/css/svg.css +6 -2
  50. package/src/css/table.css +59 -55
  51. package/src/css/text.css +96 -92
  52. package/src/css/visibility.css +23 -19
  53. package/src/custom-properties.css +9 -3
  54. package/src/minimo.css +3 -1
  55. package/src/web-components/s-datatable-component/s-datatable-component.module.css +175 -171
  56. package/src/css/anchors.css +0 -45
@@ -1,5 +1,17 @@
1
1
  export default {
2
2
  link: {
3
+ font: {
4
+ weight: {
5
+ $type: 'string',
6
+ $value: '{font.weight.semibold}',
7
+ }
8
+ },
9
+ text: {
10
+ decoration: {
11
+ $type: 'string',
12
+ $value: 'none',
13
+ },
14
+ },
3
15
  color: {
4
16
  $type: 'color',
5
17
  $value: '#0d12ae'
@@ -11,29 +23,48 @@ export default {
11
23
  },
12
24
  },
13
25
  hover: {
14
- color: null
26
+ color: {
27
+ $type: 'color',
28
+ $value: '{link.color}'
29
+ },
30
+ text: {
31
+ decoration: {
32
+ $type: 'string',
33
+ $value: 'underline',
34
+ },
35
+ underline: {
36
+ offset: {
37
+ $type: 'dimension',
38
+ $value: '2px',
39
+ }
40
+ }
41
+ }
15
42
  },
16
43
  focus: {
17
44
  outline: {
18
45
  color: {
19
46
  $type: 'color',
20
- $value: '{link.color}'
47
+ $value: 'color-mix(in srgb, {link.color} 60%, transparent)'
21
48
  },
22
49
  width: {
23
50
  $type: 'dimension',
24
51
  $value: '2px'
25
52
  },
53
+ offset: {
54
+ $type: 'dimension',
55
+ $value: '2px'
56
+ },
26
57
  }
27
58
  },
28
59
  active: {
29
60
  color: {
30
61
  $type: 'color',
31
- $value: '#51054C'
62
+ $value: '{body.background.color}'
32
63
  },
33
64
  background: {
34
65
  color: {
35
66
  $type: 'color',
36
- $value: 'transparent'
67
+ $value: '{primary.100}'
37
68
  }
38
69
  }
39
70
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@massimo-cassandro/minimo",
3
- "version": "1.20.15",
3
+ "version": "1.21.0",
4
4
  "description": "Light css framework & utilities",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -1,146 +1,150 @@
1
- /* basato sul css di @tarekraafat/autocomplete.js */
1
+ @layer components {
2
2
 
3
+ /* basato sul css di @tarekraafat/autocomplete.js */
3
4
 
4
- .hmenu-subsection-emulazione {
5
- overflow-y: visible;
6
- }
7
5
 
8
- .ac-autocomplete-wrapper { /* assegnato all'elemento .form-group */
9
-
10
- --ac-color: #333;
11
- --ac-bg-color: #fff;
12
- --ac-border-color: #666;
13
- --ac-danger-color: #c00;
14
- --ac-box-shadow: 0 0 10px rgb(0 0 0 / .6);
15
- --ac-list-item-bg: #fff;
16
- --ac-hover-color: var(--secondary-100);
17
-
18
- position: relative;
19
-
20
- ul {
21
- position: absolute;
22
- top: 100%;
23
- right: 0;
24
- left: 0;
25
- z-index: 1000;
26
- max-height: 14rem;
27
- padding: 0;
28
- margin: .2rem 0 0;
29
- overflow-y: scroll;
30
- color: var(--ac-color);
31
- outline: none;
32
- background-color: var(--ac-bg-color);
33
- border: 1px solid var(--ac-border-color);
34
- border-radius: .6rem;
35
- box-shadow: var(--ac-box-shadow);
36
-
37
- &[hidden],
38
- &:empty {
39
- display: block;
40
- opacity: 0;
41
- transform: scale(0);
42
- }
6
+ .hmenu-subsection-emulazione {
7
+ overflow-y: visible;
8
+ }
43
9
 
44
- li {
10
+ .ac-autocomplete-wrapper { /* assegnato all'elemento .form-group */
11
+
12
+ --ac-color: #333;
13
+ --ac-bg-color: #fff;
14
+ --ac-border-color: #666;
15
+ --ac-danger-color: #c00;
16
+ --ac-box-shadow: 0 0 10px rgb(0 0 0 / .6);
17
+ --ac-list-item-bg: #fff;
18
+ --ac-hover-color: var(--secondary-100);
19
+
20
+ position: relative;
21
+
22
+ ul {
23
+ position: absolute;
24
+ top: 100%;
25
+ right: 0;
26
+ left: 0;
27
+ z-index: 1000;
28
+ max-height: 14rem;
45
29
  padding: 0;
46
- margin: .3rem;
47
- text-align: left;
48
- list-style: none;
30
+ margin: .2rem 0 0;
31
+ overflow-y: scroll;
32
+ color: var(--ac-color);
33
+ outline: none;
34
+ background-color: var(--ac-bg-color);
35
+ border: 1px solid var(--ac-border-color);
36
+ border-radius: .6rem;
37
+ box-shadow: var(--ac-box-shadow);
38
+
39
+ &[hidden],
40
+ &:empty {
41
+ display: block;
42
+ opacity: 0;
43
+ transform: scale(0);
44
+ }
49
45
 
50
- /* stylelint-disable declaration-no-important, max-nesting-depth, selector-max-compound-selectors */
51
- > div {
46
+ li {
47
+ padding: 0;
48
+ margin: .3rem;
49
+ text-align: left;
50
+ list-style: none;
52
51
 
53
- padding: .3rem .5rem;
54
- background-color: var(--ac-list-item-bg);
55
- border-radius: .35rem;
56
- transition: all .2s ease;
52
+ /* stylelint-disable declaration-no-important, max-nesting-depth, selector-max-compound-selectors */
53
+ > div {
57
54
 
58
- .badge {
59
- color: #fff;
60
- background-color: var(--ac-hover-color);
61
- }
55
+ padding: .3rem .5rem;
56
+ background-color: var(--ac-list-item-bg);
57
+ border-radius: .35rem;
58
+ transition: all .2s ease;
62
59
 
63
- &:hover {
64
- cursor: pointer;
65
- background-color: var(--ac-hover-color) !important;
66
- &, .text-muted {
67
- color: #fff !important;
68
- }
69
60
  .badge {
70
- color: var(--ac-hover-color) !important;
71
- background-color: color-mix(in srgb, #fff 70%, transparent) !important;
61
+ color: #fff;
62
+ background-color: var(--ac-hover-color);
72
63
  }
73
64
 
74
- mark {
75
- border-color: currentColor;
65
+ &:hover {
66
+ cursor: pointer;
67
+ background-color: var(--ac-hover-color) !important;
68
+ &, .text-muted {
69
+ color: #fff !important;
70
+ }
71
+ .badge {
72
+ color: var(--ac-hover-color) !important;
73
+ background-color: color-mix(in srgb, #fff 70%, transparent) !important;
74
+ }
75
+
76
+ mark {
77
+ border-color: currentColor;
78
+ }
76
79
  }
77
- }
78
80
 
79
- &.alert-item{
81
+ &.alert-item{
80
82
 
81
83
 
82
- &, .text-muted {
83
- color: var(--text-muted) !important;
84
- }
85
- background-color: color-mix(in srgb, var(--ac-danger-color) 1%, transparent);
86
- &:hover {
87
84
  &, .text-muted {
88
- color: rgb(255 255 255) !important;
85
+ color: var(--text-muted) !important;
86
+ }
87
+ background-color: color-mix(in srgb, var(--ac-danger-color) 1%, transparent);
88
+ &:hover {
89
+ &, .text-muted {
90
+ color: rgb(255 255 255) !important;
91
+ }
89
92
  }
90
93
  }
91
- }
92
94
 
93
- mark {
94
- padding: 0;
95
- color: currentColor;
96
- background-color: transparent;
97
- border-bottom: 4px double var(--ac-danger-color);
95
+ mark {
96
+ padding: 0;
97
+ color: currentColor;
98
+ background-color: transparent;
99
+ border-bottom: 4px double var(--ac-danger-color);
98
100
 
99
- /* stylelint-disable-next-line max-nesting-depth selector-max-type */
100
- /* &::selection {
101
+ /* stylelint-disable-next-line max-nesting-depth selector-max-type */
102
+ /* &::selection {
101
103
  color: rgba(#ffffff, 0);
102
104
  background-color: rgba(#ffffff, 0);
103
105
  } */
106
+ }
104
107
  }
105
- }
106
- /* stylelint-enable declaration-no-important, max-nesting-depth, selector-max-compound-selectors */
108
+ /* stylelint-enable declaration-no-important, max-nesting-depth, selector-max-compound-selectors */
107
109
 
108
- /* &[aria-selected='true'] {
110
+ /* &[aria-selected='true'] {
109
111
  background-color: var(--ada-grigio-2);
110
112
  } */
113
+ }
111
114
  }
112
- }
113
115
 
114
- .no-result {
115
- padding: .4rem .6rem;
116
- color: var(--ac-danger-color);
116
+ .no-result {
117
+ padding: .4rem .6rem;
118
+ color: var(--ac-danger-color);
119
+ }
117
120
  }
118
- }
119
121
 
120
122
 
121
- /* badge multiple select */
122
- .ac-badge {
123
- margin: 0 .5rem .2rem 0;
124
- font-size: .85rem;
125
- line-height: 1;
126
- white-space: nowrap;
123
+ /* badge multiple select */
124
+ .ac-badge {
125
+ margin: 0 .5rem .2rem 0;
126
+ font-size: .85rem;
127
+ line-height: 1;
128
+ white-space: nowrap;
129
+
130
+ &:has(.ac-badge-btn:hover) {
131
+ /* stylelint-disable-next-line declaration-no-important */
132
+ background-color: var(--ac-danger-color) !important;
133
+ }
134
+ }
135
+ .ac-badge-btn {
136
+ display: inline-flex;
137
+ align-items: center;
138
+ justify-content: center;
139
+ padding: 0;
140
+ margin-left: 4px;
141
+ font-size: 1.2em;
142
+ line-height: 1;
143
+ color: currentColor;
144
+ background-color: transparent;
145
+ border: none;
146
+ border-radius: 50%;
127
147
 
128
- &:has(.ac-badge-btn:hover) {
129
- /* stylelint-disable-next-line declaration-no-important */
130
- background-color: var(--ac-danger-color) !important;
131
148
  }
132
- }
133
- .ac-badge-btn {
134
- display: inline-flex;
135
- align-items: center;
136
- justify-content: center;
137
- padding: 0;
138
- margin-left: 4px;
139
- font-size: 1.2em;
140
- line-height: 1;
141
- color: currentColor;
142
- background-color: transparent;
143
- border: none;
144
- border-radius: 50%;
145
149
 
146
150
  }
@@ -1,13 +1,17 @@
1
- /*! minimo - Inner Nav */
1
+ @layer components {
2
2
 
3
- .inner-nav-main, .inner-nav {
4
- display: flex;
5
- gap: var(--inner-nav-gap);
6
- justify-content: flex-end;
7
- margin-block: var(--inner-nav-margin-block);
8
- /* text-align: end; */
3
+ /*! minimo - Inner Nav */
9
4
 
10
- @media print {
11
- display: none;
5
+ .inner-nav-main, .inner-nav {
6
+ display: flex;
7
+ gap: var(--inner-nav-gap);
8
+ justify-content: flex-end;
9
+ margin-block: var(--inner-nav-margin-block);
10
+ /* text-align: end; */
11
+
12
+ @media print {
13
+ display: none;
14
+ }
12
15
  }
16
+
13
17
  }
@@ -99,27 +99,27 @@ const defaults = {
99
99
  /**
100
100
  * @typedef {Object} ModalAlertParams
101
101
  * @property {string} [type] - Dialog type: `success`, `error`, `warning`, `info`, or `confirm`.
102
- * @property {string | null} [extraClass] - optional dialog extra class
102
+ * @property {string | null} [title] - title text
103
+ * @property {string | null} [mes] - text message (plain or html)
104
+ * @property {((arg?: *) => void) | null} [callback] - optional callback dialog after user choice
105
+ * @property {number | null} [timer] - timer for autoclose (ms). `null` for disable
103
106
  * @property {(() => void) | null} [onOpen] - optional callback on dialog open
104
107
  * @property {(() => void) | null} [onClose] - optional callback on dialog close
108
+ * @property {string | null} [extraClass] - optional dialog extra class
109
+ * @property {string} [okBtnText] - text for 'ok' button
110
+ * @property {string} [okBtnClass] - alternative class for 'ok' button. It replaces the default one
111
+ * @property {string} [cancelBtnText] - text for 'cancel' button
112
+ * @property {string} [cancelBtnClass] - alternative class for 'cancel' button. It replaces the default one
113
+ * @property {boolean} [cancelBtnFocus] - true if the cancel button should be focused when the dialog box opens. It has no effect if an extraBtn is set
114
+ * @property {string | null} [headingClass] - optional extra class for heading
115
+ * @property {DomBuilderItem | null} [extraBtn] - optional extra button (as domBuilder object)
116
+ * @property {boolean} [extraBtnFocus] - true if the extra button should be focused when the dialog box opens (overrides any focus assigned to the 'cancel' button)
105
117
  * @property {boolean} [animation] - if true, dialog will be animated
106
118
  * @property {boolean} [showMarks] - if true, mark iconswill be showed
107
- * @property {((arg?: *) => void) | null} [callback] - optional callback dialog after user choice
108
- * @property {number | null} [timer] - timer for autoclose (ms). `null` for disable
109
- * @property {string | null} [title] - title text
110
- * @property {string | null} [mes] - text message (plain or html)
111
- * @property {string | null} [headingClass] - optional extra class for heading
112
119
  * @property {string | null} [textClass] - optional extra class for text
113
120
  * @property {string | null} [icon] - Icon markup used for the dialog; defaults to the type's icon.
114
121
  * @property {string | null} [altIcon] - Alternate icon markup, used instead of `icon` when `useAltIcon` is `true`.
115
122
  * @property {boolean} [useAltIcon] - When `true`, uses `altIcon` instead of `icon` (e.g. the `danger` icon on a `warning` dialog, or the `warning` icon on a `confirm` dialog).
116
- * @property {DomBuilderItem | null} [extraBtn] - optional extra button (as domBuilder object)
117
- * @property {boolean} [extraBtnFocus] - true if the extra button should be focused when the dialog box opens (overrides any focus assigned to the 'cancel' button)
118
- * @property {string} [okBtnText] - text for 'ok' button
119
- * @property {string} [okBtnClass] - alternative class for 'ok' button. It replaces the default one
120
- * @property {string} [cancelBtnText] - text for 'cancel' button
121
- * @property {string} [cancelBtnClass] - alternative class for 'cancel' button. It replaces the default one
122
- * @property {boolean} [cancelBtnFocus] - true if the cancel button should be focused when the dialog box opens. It has no effect if an extraBtn is set
123
123
  */
124
124
 
125
125
  /**