@miljodirektoratet/md-css 6.9.0 → 6.11.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miljodirektoratet/md-css",
3
- "version": "6.9.0",
3
+ "version": "6.11.0",
4
4
  "description": "CSS for Miljødirektoratet",
5
5
  "author": "Miljødirektoratet",
6
6
  "main": "./src/index.css",
@@ -0,0 +1,52 @@
1
+ # Structure
2
+
3
+ To use the `Input` css in `@miljodirektoratet/md-css` as a standalone, without the accompanying React component, please use the following HTML structure.
4
+
5
+ Class names in brackets [] are optional-/togglable-/decorator- or state dependant classes.
6
+
7
+ See [Storybook](https://miljodir.github.io/md-components) for examples and more info.
8
+
9
+ ```html
10
+ <div class="md-inputsearch__outer-wrapper">
11
+ <div class="md-inputsearch__label">
12
+ <label> {label} </label>
13
+
14
+ <!-- Optional button for handling help text -->
15
+ <div class="md-inputsearch__help-button">
16
+ <MdHelpButton />
17
+ </div>
18
+ }
19
+ </div>
20
+
21
+ <!-- Optional container for displaying helpt text -->
22
+ <div class="md-inputsearch__help-text [md-inputsearch__help-text--open]">
23
+ <!-- See MdHelpText html/css for this -->
24
+ <MdHelpText>{ helpText }</MdHelpText>
25
+ </div>
26
+
27
+ <div class="md-inputsearch__wrapper [md-inputsearch__wrapper--small]">
28
+ <!-- Optional prefix-icon -->
29
+ <div class="md-inputsearch__prefix [md-inputsearch__prefix--disabled]">{prefixIcon}</div>
30
+
31
+ <input
32
+ id=""
33
+ class="md-inputsearch [md-input--small, md-input--has-prefix]"
34
+ value="{value}"
35
+ ...
36
+ />
37
+ <MdIconButton
38
+ aria-label="Søk"
39
+ onClick={() => {}}
40
+ theme="filled"
41
+ >
42
+ <MdIconSearch />
43
+ </MdIconButton>
44
+ </div>
45
+
46
+ <!-- Optional container for error text -->
47
+ <div class="md-inputsearch__error">{errorText}</div>
48
+
49
+ <!-- Optional container for support text -->
50
+ <div class="md-inputsearch__support-text">{supportText}</div>
51
+ </div>
52
+ ```
@@ -0,0 +1,199 @@
1
+ .md-inputsearch__outer-wrapper {
2
+ font-family: var(--md-typography-family-body);
3
+ font-size: var(--md-typography-size-16);
4
+ }
5
+
6
+ .md-inputsearch {
7
+ padding: 0.6875rem var(--md-size-32) 0.6875rem var(--md-size-16);
8
+ max-width: 100%;
9
+ width: 100%;
10
+ background-color: var(--md-color-background-primary);
11
+ border-radius: var(--md-size-4);
12
+ border: var(--md-size-1) solid var(--md-color-border-primary);
13
+ margin: var(--md-size-1);
14
+ color: var(--md-color-text-primary);
15
+ font-size: var(--md-typography-size-16);
16
+ line-height: var(--md-typography-line-height-medium);
17
+ box-sizing: border-box;
18
+ }
19
+
20
+ .md-inputsearch.md-inputsearch--button {
21
+ border-top-right-radius: 0;
22
+ border-bottom-right-radius: 0;
23
+ }
24
+
25
+ .md-inputsearch--small {
26
+ padding: 0.4375rem var(--md-size-32) 0.4375rem var(--md-size-16);
27
+ }
28
+
29
+ .md-inputsearch--large {
30
+ padding: 0.9375rem var(--md-size-32) 0.9375rem var(--md-size-16);
31
+ }
32
+
33
+ .md-inputsearch:not(.md-inputsearch.md-inputsearch--readonly):not(.md-inputsearch.md-inputsearch--disabled):active,
34
+ .md-inputsearch:not(.md-inputsearch.md-inputsearch--readonly):not(.md-inputsearch.md-inputsearch--disabled):focus-visible {
35
+ outline: 2px solid var(--md-color-cta-primary-focus);
36
+ outline-offset: -2px;
37
+ border-color: transparent;
38
+ }
39
+
40
+ .md-inputsearch.md-inputsearch--disabled:focus-visible,
41
+ .md-inputsearch.md-inputsearch--readonly:focus-visible {
42
+ outline: 0;
43
+ cursor: default;
44
+ }
45
+
46
+ .md-inputsearch.md-inputsearch--disabled {
47
+ background-color: var(--md-color-disabled-bg);
48
+ color: var(--md-color-text-disabled);
49
+ }
50
+
51
+ .md-inputsearch.md-inputsearch--readonly:not(.md-inputsearch.md-inputsearch--disabled) {
52
+ background-color: transparent;
53
+ border: 0;
54
+ border-bottom: var(--md-size-1) solid var(--md-color-border-primary);
55
+ border-radius: 0;
56
+ }
57
+
58
+ .md-inputsearch.md-inputsearch--error {
59
+ border-color: var(--md-color-attention-error-primary);
60
+ }
61
+
62
+ .md-inputsearch.md-inputsearch--has-suffix {
63
+ padding-right: var(--md-size-8);
64
+ }
65
+
66
+ .md-inputsearch.md-inputsearch--has-prefix {
67
+ padding-left: 2.8rem;
68
+ }
69
+
70
+ .md-inputsearch__wrapper {
71
+ position: relative;
72
+ display: flex;
73
+ flex-direction: row;
74
+ align-items: stretch;
75
+ }
76
+
77
+ .md-inputsearch__label-wrapper {
78
+ margin-bottom: var(--md-size-8);
79
+ }
80
+
81
+ .md-inputsearch__label {
82
+ display: flex;
83
+ align-items: flex-end;
84
+ }
85
+
86
+ .md-inputsearch__label label {
87
+ font-weight: var(--md-typography-weight-medium);
88
+ }
89
+
90
+ .md-inputsearch__label > * + * {
91
+ margin-left: var(--md-size-16);
92
+ }
93
+
94
+ .md-inputsearch__help-button {
95
+ display: flex;
96
+ flex-grow: 1;
97
+ }
98
+
99
+ .md-inputsearch__error {
100
+ color: var(--md-color-attention-error-primary);
101
+ font-size: 0.88rem;
102
+ margin-top: var(--md-size-8);
103
+ }
104
+
105
+ .md-inputsearch__support-text {
106
+ color: var(--md-color-text-primary);
107
+ font-size: 0.88rem;
108
+ margin-top: var(--md-size-8);
109
+ }
110
+
111
+ .md-inputsearch__help-text {
112
+ max-height: 0;
113
+ overflow: hidden;
114
+ transition: max-height 0.15s ease-out;
115
+ }
116
+
117
+ .md-inputsearch__help-text--open {
118
+ padding-top: 0.5rem;
119
+ max-height: 2000px;
120
+ transition: max-height 0.5s ease-in;
121
+ }
122
+
123
+ .md-inputsearch__prefix {
124
+ position: absolute;
125
+ top: var(--md-size-16);
126
+ left: var(--md-size-16);
127
+ height: var(--md-size-20);
128
+ width: var(--md-size-20);
129
+ display: flex;
130
+ color: var(--md-color-cta-primary-default);
131
+ }
132
+
133
+ .md-inputsearch__prefix.md-inputsearch__prefix--disabled {
134
+ color: var(--md-color-text-disabled);
135
+ }
136
+
137
+ .md-inputsearch__wrapper.md-inputsearch__wrapper--small .md-inputsearch__prefix {
138
+ top: 0.7rem;
139
+ }
140
+ .md-inputsearch__wrapper.md-inputsearch__wrapper--large .md-inputsearch__prefix {
141
+ top: 1.2rem;
142
+ }
143
+
144
+ .md-inputsearch__suffix {
145
+ position: absolute;
146
+ top: 0.9rem;
147
+ right: var(--md-size-16);
148
+ display: flex;
149
+ color: var(--md-color-text-disabled);
150
+ }
151
+
152
+ .md-inputsearch__suffix > * + * {
153
+ margin-left: var(--md-size-8);
154
+ }
155
+
156
+ .md-inputsearch__error-icon {
157
+ width: var(--md-size-20);
158
+ height: var(--md-size-20);
159
+ margin-left: var(--md-size-8);
160
+ color: var(--md-color-attention-error-primary);
161
+ }
162
+
163
+ .md-inputsearch__wrapper.md-inputsearch__wrapper--small .md-inputsearch__suffix {
164
+ top: 0.6rem;
165
+ }
166
+ .md-inputsearch__wrapper.md-inputsearch__wrapper--large .md-inputsearch__suffix {
167
+ top: 1.1rem;
168
+ }
169
+
170
+ .md-inputsearch__wrapper.md-inputsearch__wrapper--small .md-inputsearch__suffix > * + * {
171
+ margin-left: 0.3rem;
172
+ }
173
+
174
+ .md-inputsearch::placeholder {
175
+ color: var(--md-color-text-disabled);
176
+ font-family: var(--md-typography-family-body);
177
+ }
178
+
179
+ /* Hacks for hiding arrows if type=number */
180
+ .md-inputsearch.md-inputsearch--hide-number-arrows[type='number'],
181
+ .md-inputsearch.md-inputsearch--hide-number-arrows::-webkit-outer-spin-button,
182
+ .md-inputsearch.md-inputsearch--hide-number-arrows::-webkit-inner-spin-button {
183
+ appearance: none;
184
+ -webkit-appearance: none;
185
+ margin: var(--md-size-1);
186
+ -moz-appearance: textfield;
187
+ }
188
+
189
+ /* */
190
+ .md-inputsearch__wrapper .md-icon-button {
191
+ border-radius: 0;
192
+ border-top-right-radius: var(--md-size-4);
193
+ border-bottom-right-radius: var(--md-size-4);
194
+ margin-left: calc(var(--md-size-1) * -1);
195
+ margin-top: var(--md-size-1);
196
+ margin-bottom: var(--md-size-1);
197
+ height: auto;
198
+ padding: 0 var(--md-size-32);
199
+ }
package/src/index.css CHANGED
@@ -12,6 +12,7 @@
12
12
  @import './formElements/combobox/combobox.css';
13
13
  @import './formElements/fileupload/fileupload.css';
14
14
  @import './formElements/input/input.css';
15
+ @import './formElements/inputsearch/inputsearch.css';
15
16
  @import './formElements/multiautocomplete/multiautocomplete.css';
16
17
  @import './formElements/multiselect/multiselect.css';
17
18
  @import './formElements/radiobutton/radiobutton.css';
@@ -27,7 +27,7 @@
27
27
  --md-color-attention-error-primary-active: var(--md-color-attention-error-8);
28
28
  --md-color-attention-error-secondary: var(--md-color-attention-white);
29
29
  --md-color-attention-error-secondary-hover: var(--md-color-attention-error-1);
30
- --md-color-attention-error-secondary-active: var(--md-color-attention-error-4);
30
+ --md-color-attention-error-secondary-active: var(--md-color-attention-error-2);
31
31
  --md-color-attention-error-surface: var(--md-color-attention-error-1);
32
32
  --md-color-attention-error-surface-hover: var(--md-color-attention-error-3);
33
33
  --md-color-attention-error-border: var(--md-color-attention-error-6);