@danske/sapphire-css 16.3.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 (109) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +57 -0
  3. package/build/themes/cjs/default-dark.d.ts +3 -0
  4. package/build/themes/cjs/default-dark.js +8 -0
  5. package/build/themes/cjs/default.d.ts +3 -0
  6. package/build/themes/cjs/default.js +8 -0
  7. package/build/themes/cjs/index.d.ts +1 -0
  8. package/build/themes/cjs/index.js +16 -0
  9. package/build/themes/cjs/june-dark.d.ts +4 -0
  10. package/build/themes/cjs/june-dark.js +9 -0
  11. package/build/themes/cjs/june.d.ts +4 -0
  12. package/build/themes/cjs/june.js +9 -0
  13. package/build/themes/esm/default-dark.d.ts +3 -0
  14. package/build/themes/esm/default-dark.js +3 -0
  15. package/build/themes/esm/default.d.ts +3 -0
  16. package/build/themes/esm/default.js +3 -0
  17. package/build/themes/esm/index.d.ts +1 -0
  18. package/build/themes/esm/index.js +1 -0
  19. package/build/themes/esm/june-dark.d.ts +4 -0
  20. package/build/themes/esm/june-dark.js +4 -0
  21. package/build/themes/esm/june.d.ts +4 -0
  22. package/build/themes/esm/june.js +4 -0
  23. package/components/accordion/accordion.module.css.d.ts +19 -0
  24. package/components/avatar/avatar.module.css.d.ts +27 -0
  25. package/components/backdrop/backdrop.module.css +8 -0
  26. package/components/backdrop/backdrop.module.css.d.ts +5 -0
  27. package/components/badge/badge.module.css +121 -0
  28. package/components/badge/badge.module.css.d.ts +16 -0
  29. package/components/button/button.module.css +278 -0
  30. package/components/button/button.module.css.d.ts +23 -0
  31. package/components/buttonGroup/buttonGroup.module.css +24 -0
  32. package/components/buttonGroup/buttonGroup.module.css.d.ts +10 -0
  33. package/components/calendar/calendar.module.css +406 -0
  34. package/components/calendar/calendar.module.css.d.ts +47 -0
  35. package/components/checkbox/checkbox.module.css +182 -0
  36. package/components/checkbox/checkbox.module.css.d.ts +18 -0
  37. package/components/contextualHelp/contextualHelp.module.css +35 -0
  38. package/components/contextualHelp/contextualHelp.module.css.d.ts +7 -0
  39. package/components/dateField/dateField.module.css +239 -0
  40. package/components/dateField/dateField.module.css.d.ts +22 -0
  41. package/components/dialog/dialog.module.css +81 -0
  42. package/components/dialog/dialog.module.css.d.ts +15 -0
  43. package/components/feedbackMessage/feedbackMessage.module.css +42 -0
  44. package/components/feedbackMessage/feedbackMessage.module.css.d.ts +10 -0
  45. package/components/field/field.module.css.d.ts +17 -0
  46. package/components/fieldGroup/fieldGroup.module.css +64 -0
  47. package/components/fieldGroup/fieldGroup.module.css.d.ts +12 -0
  48. package/components/heading/heading.module.css +143 -0
  49. package/components/heading/heading.module.css.d.ts +12 -0
  50. package/components/icon/icon.module.css +14 -0
  51. package/components/icon/icon.module.css.d.ts +8 -0
  52. package/components/iconButton/iconButton.module.css +225 -0
  53. package/components/iconButton/iconButton.module.css.d.ts +19 -0
  54. package/components/label/label.module.css.d.ts +9 -0
  55. package/components/link/link.module.css +35 -0
  56. package/components/link/link.module.css.d.ts +10 -0
  57. package/components/list/list.module.css +160 -0
  58. package/components/list/list.module.css.d.ts +19 -0
  59. package/components/listbox/listbox.module.css +211 -0
  60. package/components/listbox/listbox.module.css.d.ts +21 -0
  61. package/components/notificationBadge/notificationBadge.module.css.d.ts +16 -0
  62. package/components/pagination/pagination.module.css +44 -0
  63. package/components/pagination/pagination.module.css.d.ts +8 -0
  64. package/components/panel/panel.module.css +87 -0
  65. package/components/panel/panel.module.css.d.ts +18 -0
  66. package/components/paragraph/paragraph.module.css +35 -0
  67. package/components/paragraph/paragraph.module.css.d.ts +8 -0
  68. package/components/popover/popover.module.css +39 -0
  69. package/components/popover/popover.module.css.d.ts +8 -0
  70. package/components/radio/radio.module.css +117 -0
  71. package/components/radio/radio.module.css.d.ts +14 -0
  72. package/components/searchField/searchField.module.css +148 -0
  73. package/components/searchField/searchField.module.css.d.ts +14 -0
  74. package/components/segmentedControl/segmentedControl.module.css +140 -0
  75. package/components/segmentedControl/segmentedControl.module.css.d.ts +16 -0
  76. package/components/select/select.module.css +166 -0
  77. package/components/select/select.module.css.d.ts +19 -0
  78. package/components/skeleton/skeleton.module.css +52 -0
  79. package/components/skeleton/skeleton.module.css.d.ts +9 -0
  80. package/components/spinner/spinner.module.css.d.ts +14 -0
  81. package/components/surface/surface.module.css +19 -0
  82. package/components/surface/surface.module.css.d.ts +5 -0
  83. package/components/switch/switch.module.css +170 -0
  84. package/components/switch/switch.module.css.d.ts +13 -0
  85. package/components/table/table.module.css +303 -0
  86. package/components/table/table.module.css.d.ts +37 -0
  87. package/components/tabs/tabs.module.css +83 -0
  88. package/components/tabs/tabs.module.css.d.ts +17 -0
  89. package/components/text/text.module.css.d.ts +21 -0
  90. package/components/textField/textField.module.css +208 -0
  91. package/components/textField/textField.module.css.d.ts +22 -0
  92. package/components/toast/toast.module.css.d.ts +12 -0
  93. package/components/tooltip/tooltip.module.css +41 -0
  94. package/components/tooltip/tooltip.module.css.d.ts +6 -0
  95. package/package.json +68 -0
  96. package/themes/default-dark.css +2 -0
  97. package/themes/default-dark.d.ts +3 -0
  98. package/themes/default-dark.js +8 -0
  99. package/themes/default.css +2 -0
  100. package/themes/default.d.ts +3 -0
  101. package/themes/default.js +8 -0
  102. package/themes/index.d.ts +1 -0
  103. package/themes/index.js +16 -0
  104. package/themes/june-dark.css +3 -0
  105. package/themes/june-dark.d.ts +4 -0
  106. package/themes/june-dark.js +9 -0
  107. package/themes/june.css +3 -0
  108. package/themes/june.d.ts +4 -0
  109. package/themes/june.js +9 -0
@@ -0,0 +1,7 @@
1
+ declare const styles: {
2
+ readonly "sapphire-contextual-help": string;
3
+ readonly "sapphire-contextual-help__header": string;
4
+ readonly "sapphire-contextual-help__footer": string;
5
+ };
6
+ export = styles;
7
+
@@ -0,0 +1,239 @@
1
+ .sapphire-date-field {
2
+ display: inline-flex;
3
+ flex-direction: column;
4
+ font-family: var(--sapphire-date-field-font-name);
5
+ width: var(--sapphire-date-field-size-width-control);
6
+
7
+ /* The below is meant to address a font rendering quirk in OSX where the text
8
+ * looks bolder than intended due to subpixel rendering. This quirk generally
9
+ * occurs for bold fonts on dark backgrounds but depending on the font, it
10
+ * can happen in other contexts as well.
11
+ *
12
+ * These do not do anything except in webkit browsers & firefox on OSX.
13
+ *
14
+ * For more details see:
15
+ * - https://azuredevops/Main/WCCJ/_git/sapphire/pullRequest/212710?path=%2Fpackages%2Fcss%2Fcomponents%2Fbutton%2Fbutton.module.css&discussionId=1507702&_a=files
16
+ * - https://usabilitypost.com/2012/11/05/stop-fixing-font-smoothing/
17
+ */
18
+ -webkit-font-smoothing: antialiased;
19
+ -moz-osx-font-smoothing: grayscale;
20
+
21
+ box-sizing: border-box;
22
+ }
23
+
24
+ .sapphire-date-field__label {
25
+ display: flex;
26
+ align-items: center;
27
+ gap: var(--sapphire-date-field-size-spacing-label-horizontal);
28
+ min-height: var(--sapphire-date-field-size-height-label);
29
+ margin-bottom: var(--sapphire-date-field-size-spacing-label-vertical);
30
+ }
31
+
32
+ .sapphire-date-field__label-text {
33
+ font-size: var(--sapphire-date-field-size-font-label);
34
+ font-weight: var(--sapphire-date-field-size-font-weight-label);
35
+ line-height: var(--sapphire-date-field-size-line-height-label);
36
+ color: var(--sapphire-date-field-color-content-label);
37
+ }
38
+
39
+ .sapphire-date-field__content {
40
+ box-sizing: border-box;
41
+ display: grid;
42
+ grid-auto-flow: column;
43
+ align-items: center;
44
+ gap: var(--sapphire-date-field-size-spacing-control-gap);
45
+ /*
46
+ * The right-side "clear" button column should always take space even if the
47
+ * button isn't there. This is to make sure the field doesn't jump when the
48
+ * "clear" button appears in the last column.
49
+ */
50
+ grid-template-columns: auto 1fr var(--sapphire-date-field-size-width-button);
51
+ height: var(--sapphire-date-field-size-height-field);
52
+ border-radius: var(--sapphire-date-field-size-radius-field);
53
+ padding: 0 var(--sapphire-date-field-size-spacing-control-horizontal);
54
+ border: var(--sapphire-date-field-size-width-border) solid
55
+ var(--sapphire-date-field-color-border-default);
56
+ background-color: var(--sapphire-date-field-color-background-field);
57
+ }
58
+
59
+ .sapphire-date-field__input {
60
+ display: flex;
61
+ align-items: center;
62
+ height: 100%;
63
+ cursor: text;
64
+ line-height: var(--sapphire-date-field-size-line-height-content);
65
+ font-size: var(--sapphire-date-field-size-font-content);
66
+ font-weight: var(--sapphire-date-field-size-font-weight-input);
67
+ }
68
+
69
+ /**
70
+ * Editable segments
71
+ */
72
+ .sapphire-date-field__segment {
73
+ padding: 0 var(--sapphire-date-field-size-spacing-segment-horizontal);
74
+ color: var(--sapphire-date-field-color-content-segment-placeholder);
75
+ border-radius: var(--sapphire-date-field-size-radius-segment);
76
+ transition-property: color, background-color;
77
+ transition-duration: var(--sapphire-date-field-time-transition);
78
+ transition-timing-function: ease-in-out;
79
+ text-align: right;
80
+ text-transform: uppercase;
81
+ }
82
+
83
+ .sapphire-date-field__segment:focus,
84
+ .sapphire-date-field__segment.is-focus {
85
+ color: var(--sapphire-date-field-color-content-segment-selected);
86
+ background-color: var(--sapphire-date-field-color-background-segment);
87
+ outline: none;
88
+ }
89
+
90
+ .sapphire-date-field__segment::selection {
91
+ background-color: transparent;
92
+ }
93
+
94
+ .sapphire-date-field__segment--filled {
95
+ color: var(--sapphire-date-field-color-content-segment-unselected);
96
+ }
97
+
98
+ /**
99
+ * Note
100
+ */
101
+
102
+ .sapphire-date-field__note-row {
103
+ display: flex;
104
+ justify-content: space-between;
105
+ font-size: var(--sapphire-date-field-size-font-note);
106
+ line-height: var(--sapphire-date-field-size-line-height-note);
107
+ color: var(--sapphire-date-field-color-content-note-default);
108
+ margin-top: var(--sapphire-date-field-size-spacing-note-vertical);
109
+ }
110
+
111
+ .sapphire-date-field__note {
112
+ display: block;
113
+ font-size: var(--sapphire-date-field-size-font-note);
114
+ line-height: var(--sapphire-date-field-size-line-height-note);
115
+ color: var(--sapphire-date-field-color-content-note-default);
116
+ }
117
+
118
+ .sapphire-date-field--error .sapphire-date-field__note {
119
+ color: var(--sapphire-date-field-color-content-note-error);
120
+ }
121
+
122
+ .sapphire-date-field--error .sapphire-date-field__content {
123
+ border-color: var(--sapphire-date-field-color-border-error);
124
+ }
125
+
126
+ /**
127
+ * Focus
128
+ *
129
+ * NOTE
130
+ * At the time of this writing only Firefox doesn't support :has selector by
131
+ * default https://caniuse.com/?search=%3Ahas
132
+ * But this is not a crucial aspect of the UI and we can live with this for a time.
133
+ */
134
+ .sapphire-date-field__content:has(.sapphire-date-field__segment:focus),
135
+ .sapphire-date-field__content:has(.sapphire-date-field__segment.is-focus) {
136
+ outline: var(--sapphire-date-field-size-focus-ring) solid
137
+ var(--sapphire-date-field-color-focus-ring);
138
+ outline-offset: calc(-1 * var(--sapphire-date-field-size-focus-ring));
139
+ }
140
+
141
+ /**
142
+ * Disabled
143
+ */
144
+ .sapphire-date-field.is-disabled {
145
+ opacity: var(--sapphire-date-field-opacity-disabled);
146
+ cursor: not-allowed;
147
+ }
148
+
149
+ .sapphire-date-field.is-disabled .sapphire-date-field__button,
150
+ .sapphire-date-field.is-disabled .sapphire-date-field__input {
151
+ cursor: not-allowed;
152
+ }
153
+
154
+ /**
155
+ * Buttons (calendar and clear)
156
+ *
157
+ * These are special buttons, not matching any of our existing buttons or icon
158
+ * buttons and these are only meant to be used in the datefield.
159
+ */
160
+
161
+ .sapphire-date-field__button {
162
+ box-sizing: border-box;
163
+ display: inline-flex;
164
+ align-items: center;
165
+ justify-content: center;
166
+ vertical-align: middle;
167
+ white-space: nowrap;
168
+
169
+ /* In Safari buttons get a 2px border
170
+ * https://github.com/necolas/normalize.css/blob/master/normalize.css#L160-L169
171
+ */
172
+ margin: 0;
173
+ padding: 0;
174
+
175
+ /* shape */
176
+ border-radius: var(--sapphire-date-field-size-radius-button);
177
+ border-style: solid;
178
+ border-width: 0;
179
+ border-color: transparent;
180
+
181
+ /* transition */
182
+ /* we don't want to transition outline-offset */
183
+ transition-property: color;
184
+ transition-duration: var(--sapphire-date-field-time-transition);
185
+ transition-timing-function: ease-in-out;
186
+ cursor: pointer;
187
+
188
+ height: var(--sapphire-date-field-size-height-button);
189
+ width: var(--sapphire-date-field-size-width-button);
190
+ background-color: transparent;
191
+ color: var(--sapphire-date-field-color-content-button-default);
192
+ }
193
+
194
+ /**
195
+ * Icon (button)
196
+ */
197
+ .sapphire-date-field__icon {
198
+ height: var(--sapphire-date-field-size-icon);
199
+ width: var(--sapphire-date-field-size-icon);
200
+ }
201
+
202
+ /**
203
+ * Hover (buttons)
204
+ */
205
+ .sapphire-date-field__button:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
206
+ .sapphire-date-field__button:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
207
+ color: var(--sapphire-date-field-color-content-button-hover);
208
+ }
209
+
210
+ /**
211
+ * Focus (buttons)
212
+ */
213
+ .sapphire-date-field__button:focus {
214
+ outline: none;
215
+ }
216
+
217
+ .sapphire-date-field__button.is-focus,
218
+ .sapphire-date-field__button:not(.js-focus):focus-visible {
219
+ outline: var(--sapphire-date-field-size-focus-ring) solid
220
+ var(--sapphire-date-field-color-focus-ring);
221
+ }
222
+
223
+ /**
224
+ * Disabled (buttons)
225
+ */
226
+ .sapphire-date-field__button:disabled,
227
+ .sapphire-date-field__button.is-disabled {
228
+ opacity: var(--sapphire-date-field-opacity-disabled);
229
+ cursor: not-allowed;
230
+ }
231
+
232
+ /**
233
+ * Active (buttons)
234
+ */
235
+ .sapphire-date-field__button:not(:disabled):not(.is-disabled).is-active,
236
+ .sapphire-date-field__button:not(:disabled):not(.is-disabled):active,
237
+ .sapphire-date-field__button:not(:disabled):not(.is-disabled):focus-visible:active {
238
+ color: var(--sapphire-date-field-color-content-button-active);
239
+ }
@@ -0,0 +1,22 @@
1
+ declare const styles: {
2
+ readonly "sapphire-date-field": string;
3
+ readonly "sapphire-date-field__label": string;
4
+ readonly "sapphire-date-field__label-text": string;
5
+ readonly "sapphire-date-field__content": string;
6
+ readonly "sapphire-date-field__input": string;
7
+ readonly "sapphire-date-field__segment": string;
8
+ readonly "is-focus": string;
9
+ readonly "sapphire-date-field__segment--filled": string;
10
+ readonly "sapphire-date-field__note-row": string;
11
+ readonly "sapphire-date-field__note": string;
12
+ readonly "sapphire-date-field--error": string;
13
+ readonly "is-disabled": string;
14
+ readonly "sapphire-date-field__button": string;
15
+ readonly "sapphire-date-field__icon": string;
16
+ readonly "is-active": string;
17
+ readonly "js-hover": string;
18
+ readonly "is-hover": string;
19
+ readonly "js-focus": string;
20
+ };
21
+ export = styles;
22
+
@@ -0,0 +1,81 @@
1
+ .sapphire-dialog {
2
+ border-radius: var(--sapphire-dialog-size-radius);
3
+ background-color: var(--sapphire-dialog-color-background-dialog);
4
+ box-sizing: border-box;
5
+ overflow: hidden;
6
+ max-height: 90vh;
7
+ max-width: 90vw;
8
+ display: flex;
9
+ flex-direction: column;
10
+ /* if implemented as focusable, we don't want the outline because this is not
11
+ * an an interactive element in itself */
12
+ outline: none;
13
+ }
14
+
15
+ .sapphire-dialog--small {
16
+ width: var(--sapphire-dialog-size-width-small);
17
+ }
18
+
19
+ .sapphire-dialog--medium {
20
+ width: var(--sapphire-dialog-size-width-medium);
21
+ }
22
+
23
+ .sapphire-dialog--large {
24
+ width: var(--sapphire-dialog-size-width-large);
25
+ }
26
+
27
+ .sapphire-dialog-header {
28
+ padding: var(--sapphire-dialog-size-spacing-header-top-default)
29
+ var(--sapphire-dialog-size-spacing-header-right-default)
30
+ var(--sapphire-dialog-size-spacing-header-bottom-default)
31
+ var(--sapphire-dialog-size-spacing-header-left-default);
32
+ display: flex;
33
+ justify-content: space-between;
34
+ align-items: center;
35
+ }
36
+
37
+ .sapphire-dialog--passive .sapphire-dialog-header {
38
+ padding: var(--sapphire-dialog-size-spacing-header-top-passive)
39
+ var(--sapphire-dialog-size-spacing-header-right-passive)
40
+ var(--sapphire-dialog-size-spacing-header-bottom-passive)
41
+ var(--sapphire-dialog-size-spacing-header-left-passive);
42
+ }
43
+
44
+ .sapphire-dialog--scrolled .sapphire-dialog-header {
45
+ box-shadow: 0 var(--sapphire-dialog-size-border) 0
46
+ var(--sapphire-dialog-color-border-scrollable);
47
+ }
48
+
49
+ .sapphire-dialog-close-button-container {
50
+ align-self: flex-start;
51
+ }
52
+
53
+ .sapphire-dialog-body {
54
+ padding: var(--sapphire-dialog-size-spacing-body-top-default)
55
+ var(--sapphire-dialog-size-spacing-body-right-default)
56
+ var(--sapphire-dialog-size-spacing-body-bottom-default)
57
+ var(--sapphire-dialog-size-spacing-body-left-default);
58
+ overflow-y: auto;
59
+ }
60
+
61
+ .sapphire-dialog--passive .sapphire-dialog-body {
62
+ padding: var(--sapphire-dialog-size-spacing-body-top-passive)
63
+ var(--sapphire-dialog-size-spacing-body-right-passive)
64
+ var(--sapphire-dialog-size-spacing-body-bottom-passive)
65
+ var(--sapphire-dialog-size-spacing-body-left-passive);
66
+ }
67
+
68
+ .sapphire-dialog-footer {
69
+ padding: var(--sapphire-dialog-size-spacing-footer-top-default)
70
+ var(--sapphire-dialog-size-spacing-footer-right-default)
71
+ var(--sapphire-dialog-size-spacing-footer-bottom-default)
72
+ var(--sapphire-dialog-size-spacing-footer-left-default);
73
+ }
74
+
75
+ .sapphire-dialog--scrollable .sapphire-dialog-footer {
76
+ border-top: 1px solid var(--sapphire-dialog-color-border-scrollable);
77
+ margin-left: var(--sapphire-dialog-size-spacing-footer-left-scrollable);
78
+ margin-right: var(--sapphire-dialog-size-spacing-footer-right-scrollable);
79
+ padding: var(--sapphire-dialog-size-spacing-footer-top-scrollable) 0
80
+ var(--sapphire-dialog-size-spacing-footer-bottom-scrollable) 0;
81
+ }
@@ -0,0 +1,15 @@
1
+ declare const styles: {
2
+ readonly "sapphire-dialog": string;
3
+ readonly "sapphire-dialog--small": string;
4
+ readonly "sapphire-dialog--medium": string;
5
+ readonly "sapphire-dialog--large": string;
6
+ readonly "sapphire-dialog-header": string;
7
+ readonly "sapphire-dialog--passive": string;
8
+ readonly "sapphire-dialog--scrolled": string;
9
+ readonly "sapphire-dialog-close-button-container": string;
10
+ readonly "sapphire-dialog-body": string;
11
+ readonly "sapphire-dialog-footer": string;
12
+ readonly "sapphire-dialog--scrollable": string;
13
+ };
14
+ export = styles;
15
+
@@ -0,0 +1,42 @@
1
+ .sapphire-feedback-message {
2
+ display: flex;
3
+ flex-direction: column;
4
+ align-items: center;
5
+ justify-content: center;
6
+ margin: auto;
7
+ gap: var(--sapphire-feedback-message-size-spacing-gap);
8
+ max-width: var(--sapphire-feedback-message-size-max-width);
9
+ }
10
+
11
+ .sapphire-feedback-message__icon {
12
+ padding: var(--sapphire-feedback-message-size-spacing-icon);
13
+ border-radius: 100%; /* big enough value */
14
+ line-height: 0; /* to make sure height won't exceed width */
15
+ }
16
+
17
+ .sapphire-feedback-message__icon--success {
18
+ background-color: var(
19
+ --sapphire-feedback-message-color-background-icon-success
20
+ );
21
+ color: var(--sapphire-feedback-message-color-content-icon-success);
22
+ }
23
+ .sapphire-feedback-message__icon--error {
24
+ background-color: var(
25
+ --sapphire-feedback-message-color-background-icon-error
26
+ );
27
+ color: var(--sapphire-feedback-message-color-content-icon-error);
28
+ }
29
+
30
+ .sapphire-feedback-message__content {
31
+ display: flex;
32
+ flex-direction: column;
33
+ align-items: center;
34
+ text-align: center;
35
+ gap: var(--sapphire-feedback-message-size-spacing-content-gap);
36
+ }
37
+
38
+ .sapphire-feedback-message__body {
39
+ color: var(--sapphire-feedback-message-color-content-body);
40
+ font-family: var(--sapphire-feedback-message-font-name);
41
+ line-height: var(--sapphire-feedback-message-size-line-height);
42
+ }
@@ -0,0 +1,10 @@
1
+ declare const styles: {
2
+ readonly "sapphire-feedback-message": string;
3
+ readonly "sapphire-feedback-message__icon": string;
4
+ readonly "sapphire-feedback-message__icon--success": string;
5
+ readonly "sapphire-feedback-message__icon--error": string;
6
+ readonly "sapphire-feedback-message__content": string;
7
+ readonly "sapphire-feedback-message__body": string;
8
+ };
9
+ export = styles;
10
+
@@ -0,0 +1,17 @@
1
+ declare const styles: {
2
+ readonly "sapphire-field": string;
3
+ readonly "sapphire-field__label": string;
4
+ readonly "sapphire-field__control": string;
5
+ readonly "sapphire-field__control--group": string;
6
+ readonly "sapphire-field--no-shrink": string;
7
+ readonly "sapphire-field__message": string;
8
+ readonly "sapphire-field__note-row": string;
9
+ readonly "sapphire-field--medium": string;
10
+ readonly "sapphire-field__note": string;
11
+ readonly "sapphire-field--error": string;
12
+ readonly "is-disabled": string;
13
+ readonly "sapphire-field--label-placement-side": string;
14
+ readonly "sapphire-fieldset": string;
15
+ };
16
+ export = styles;
17
+
@@ -0,0 +1,64 @@
1
+ .sapphire-fieldGroup-label-container {
2
+ /* The below is meant to address a font rendering quirk in OSX where the text
3
+ * looks bolder than intended due to subpixel rendering. This quirk generally
4
+ * occurs for bold fonts on dark backgrounds but depending on the font, it
5
+ * can happen in other contexts as well.
6
+ *
7
+ * These do not do anything except in webkit browsers & firefox on OSX.
8
+ *
9
+ * For more details see:
10
+ * - https://azuredevops/Main/WCCJ/_git/sapphire/pullRequest/212710?path=%2Fpackages%2Fcss%2Fcomponents%2Fbutton%2Fbutton.module.css&discussionId=1507702&_a=files
11
+ * - https://usabilitypost.com/2012/11/05/stop-fixing-font-smoothing/
12
+ */
13
+ -webkit-font-smoothing: antialiased;
14
+ -moz-osx-font-smoothing: grayscale;
15
+
16
+ display: flex;
17
+ align-items: center;
18
+ gap: var(--sapphire-field-group-size-spacing-heading-horizontal);
19
+ margin-bottom: var(--sapphire-field-group-size-spacing-heading-vertical);
20
+ }
21
+
22
+ .sapphire-fieldGroup-label-text {
23
+ font-family: var(--sapphire-field-group-font-heading-name);
24
+ font-weight: var(--sapphire-field-group-font-heading-weight);
25
+ font-size: var(--sapphire-field-group-size-font-default);
26
+ line-height: var(--sapphire-field-group-size-line-height);
27
+ color: var(--sapphire-field-group-color-label);
28
+ }
29
+
30
+ .sapphire-fieldGroup-label-text--disabled {
31
+ opacity: var(--sapphire-radio-opacity-disabled);
32
+ }
33
+
34
+ .sapphire-fieldGroup-content {
35
+ display: flex;
36
+ }
37
+
38
+ .sapphire-fieldGroup-content--horizontal {
39
+ flex-direction: row;
40
+ flex-wrap: wrap;
41
+ }
42
+
43
+ .sapphire-fieldGroup-content--horizontal
44
+ .sapphire-fieldGroup-field:not(:last-child) {
45
+ margin-right: var(--sapphire-field-group-size-spacing-field-horizontal);
46
+ }
47
+
48
+ .sapphire-fieldGroup-content--vertical {
49
+ flex-direction: column;
50
+ }
51
+
52
+ .sapphire-fieldGroup-content--vertical
53
+ .sapphire-fieldGroup-field:not(:last-child) {
54
+ margin-bottom: var(--sapphire-field-group-size-spacing-field-vertical);
55
+ }
56
+
57
+ .sapphire-fieldGroup-error-text {
58
+ display: block;
59
+ font-family: var(--sapphire-field-group-font-heading-name);
60
+ font-weight: var(--sapphire-field-group-font-error-text-weight);
61
+ font-size: var(--sapphire-field-group-size-font-error-text);
62
+ margin-top: var(--sapphire-field-group-size-spacing-error-text-vertical);
63
+ color: var(--sapphire-field-group-color-error-text);
64
+ }
@@ -0,0 +1,12 @@
1
+ declare const styles: {
2
+ readonly "sapphire-fieldGroup-label-container": string;
3
+ readonly "sapphire-fieldGroup-label-text": string;
4
+ readonly "sapphire-fieldGroup-label-text--disabled": string;
5
+ readonly "sapphire-fieldGroup-content": string;
6
+ readonly "sapphire-fieldGroup-content--horizontal": string;
7
+ readonly "sapphire-fieldGroup-field": string;
8
+ readonly "sapphire-fieldGroup-content--vertical": string;
9
+ readonly "sapphire-fieldGroup-error-text": string;
10
+ };
11
+ export = styles;
12
+
@@ -0,0 +1,143 @@
1
+ .sapphire-heading {
2
+ /* not able to find specification in sketch docs for margin,
3
+ will update this once specifications are established */
4
+ margin-top: 0px;
5
+ margin-bottom: 0px;
6
+
7
+ line-height: var(--sapphire-heading-size-line-height);
8
+
9
+ /* The below is meant to address a font rendering quirk in OSX where the text
10
+ * looks bolder than intended due to subpixel rendering. This quirk generally
11
+ * occurs for bold fonts on dark backgrounds but depending on the font, it
12
+ * can happen in other contexts as well.
13
+ *
14
+ * These do not do anything except in webkit browsers & firefox on OSX.
15
+ *
16
+ * For more details see:
17
+ * - https://azuredevops/Main/WCCJ/_git/sapphire/pullRequest/212710?path=%2Fpackages%2Fcss%2Fcomponents%2Fbutton%2Fbutton.module.css&discussionId=1507702&_a=files
18
+ * - https://usabilitypost.com/2012/11/05/stop-fixing-font-smoothing/
19
+ */
20
+ -webkit-font-smoothing: antialiased;
21
+ -moz-osx-font-smoothing: grayscale;
22
+ }
23
+
24
+ /* heading levels */
25
+ .sapphire-heading--level1 {
26
+ font-family: var(--sapphire-heading-font-name-default-level1);
27
+ font-weight: var(--sapphire-heading-font-weight-default-level1);
28
+ font-size: var(--sapphire-heading-size-font-level1);
29
+ text-transform: var(--sapphire-heading-font-text-transform-default-level1);
30
+ letter-spacing: var(--sapphire-heading-font-letter-spacing-default-level1);
31
+ color: var(--sapphire-heading-color-text-level1);
32
+ }
33
+
34
+ .sapphire-heading--level2 {
35
+ font-family: var(--sapphire-heading-font-name-default-level2);
36
+ font-weight: var(--sapphire-heading-font-weight-default-level2);
37
+ font-size: var(--sapphire-heading-size-font-level2);
38
+ text-transform: var(--sapphire-heading-font-text-transform-default-level2);
39
+ letter-spacing: var(--sapphire-heading-font-letter-spacing-default-level2);
40
+ color: var(--sapphire-heading-color-text-level2);
41
+ }
42
+
43
+ .sapphire-heading--level3 {
44
+ font-family: var(--sapphire-heading-font-name-default-level3);
45
+ font-weight: var(--sapphire-heading-font-weight-default-level3);
46
+ font-size: var(--sapphire-heading-size-font-level3);
47
+ text-transform: var(--sapphire-heading-font-text-transform-default-level3);
48
+ letter-spacing: var(--sapphire-heading-font-letter-spacing-default-level3);
49
+ color: var(--sapphire-heading-color-text-level3);
50
+ }
51
+
52
+ .sapphire-heading--level4 {
53
+ font-family: var(--sapphire-heading-font-name-default-level4);
54
+ font-weight: var(--sapphire-heading-font-weight-default-level4);
55
+ font-size: var(--sapphire-heading-size-font-level4);
56
+ text-transform: var(--sapphire-heading-font-text-transform-default-level4);
57
+ letter-spacing: var(--sapphire-heading-font-letter-spacing-default-level4);
58
+ color: var(--sapphire-heading-color-text-level4);
59
+ }
60
+
61
+ .sapphire-heading--level5 {
62
+ font-family: var(--sapphire-heading-font-name-default-level5);
63
+ font-weight: var(--sapphire-heading-font-weight-default-level5);
64
+ font-size: var(--sapphire-heading-size-font-level5);
65
+ text-transform: var(--sapphire-heading-font-text-transform-default-level5);
66
+ letter-spacing: var(--sapphire-heading-font-letter-spacing-default-level5);
67
+ color: var(--sapphire-heading-color-text-level5);
68
+ }
69
+
70
+ .sapphire-heading--level6 {
71
+ font-family: var(--sapphire-heading-font-name-default-level6);
72
+ font-weight: var(--sapphire-heading-font-weight-default-level6);
73
+ font-size: var(--sapphire-heading-size-font-level6);
74
+ text-transform: var(--sapphire-heading-font-text-transform-default-level6);
75
+ letter-spacing: var(--sapphire-heading-font-letter-spacing-default-level6);
76
+ color: var(--sapphire-heading-color-text-level6);
77
+ }
78
+
79
+ .sapphire-heading--level1.sapphire-heading--alternative {
80
+ font-family: var(--sapphire-heading-font-name-alternative-level1);
81
+ font-weight: var(--sapphire-heading-font-weight-alternative-level1);
82
+ text-transform: var(
83
+ --sapphire-heading-font-text-transform-alternative-level1
84
+ );
85
+ letter-spacing: var(
86
+ --sapphire-heading-font-letter-spacing-alternative-level1
87
+ );
88
+ }
89
+
90
+ .sapphire-heading--level2.sapphire-heading--alternative {
91
+ font-family: var(--sapphire-heading-font-name-alternative-level2);
92
+ font-weight: var(--sapphire-heading-font-weight-alternative-level2);
93
+ text-transform: var(
94
+ --sapphire-heading-font-text-transform-alternative-level2
95
+ );
96
+ letter-spacing: var(
97
+ --sapphire-heading-font-letter-spacing-alternative-level2
98
+ );
99
+ }
100
+
101
+ .sapphire-heading--level3.sapphire-heading--alternative {
102
+ font-family: var(--sapphire-heading-font-name-alternative-level3);
103
+ font-weight: var(--sapphire-heading-font-weight-alternative-level3);
104
+ text-transform: var(
105
+ --sapphire-heading-font-text-transform-alternative-level3
106
+ );
107
+ letter-spacing: var(
108
+ --sapphire-heading-font-letter-spacing-alternative-level3
109
+ );
110
+ }
111
+
112
+ .sapphire-heading--level4.sapphire-heading--alternative {
113
+ font-family: var(--sapphire-heading-font-name-alternative-level4);
114
+ font-weight: var(--sapphire-heading-font-weight-alternative-level4);
115
+ text-transform: var(
116
+ --sapphire-heading-font-text-transform-alternative-level4
117
+ );
118
+ letter-spacing: var(
119
+ --sapphire-heading-font-letter-spacing-alternative-level4
120
+ );
121
+ }
122
+
123
+ .sapphire-heading--level5.sapphire-heading--alternative {
124
+ font-family: var(--sapphire-heading-font-name-alternative-level5);
125
+ font-weight: var(--sapphire-heading-font-weight-alternative-level5);
126
+ text-transform: var(
127
+ --sapphire-heading-font-text-transform-alternative-level5
128
+ );
129
+ letter-spacing: var(
130
+ --sapphire-heading-font-letter-spacing-alternative-level5
131
+ );
132
+ }
133
+
134
+ .sapphire-heading--level6.sapphire-heading--alternative {
135
+ font-family: var(--sapphire-heading-font-name-alternative-level6);
136
+ font-weight: var(--sapphire-heading-font-weight-alternative-level6);
137
+ text-transform: var(
138
+ --sapphire-heading-font-text-transform-alternative-level6
139
+ );
140
+ letter-spacing: var(
141
+ --sapphire-heading-font-letter-spacing-alternative-level6
142
+ );
143
+ }
@@ -0,0 +1,12 @@
1
+ declare const styles: {
2
+ readonly "sapphire-heading": string;
3
+ readonly "sapphire-heading--level1": string;
4
+ readonly "sapphire-heading--level2": string;
5
+ readonly "sapphire-heading--level3": string;
6
+ readonly "sapphire-heading--level4": string;
7
+ readonly "sapphire-heading--level5": string;
8
+ readonly "sapphire-heading--level6": string;
9
+ readonly "sapphire-heading--alternative": string;
10
+ };
11
+ export = styles;
12
+
@@ -0,0 +1,14 @@
1
+ .sapphire-icon.sapphire-icon--small {
2
+ height: var(--sapphire-icon-size-small);
3
+ width: var(--sapphire-icon-size-small);
4
+ }
5
+
6
+ .sapphire-icon.sapphire-icon--medium {
7
+ height: var(--sapphire-icon-size-medium);
8
+ width: var(--sapphire-icon-size-medium);
9
+ }
10
+
11
+ .sapphire-icon.sapphire-icon--large {
12
+ height: var(--sapphire-icon-size-large);
13
+ width: var(--sapphire-icon-size-large);
14
+ }