diff --git a/packages/calcite-components/src/assets/styles/includes.scss b/packages/calcite-components/src/assets/styles/includes.scss index 7c6d7bf90fd..6d7c1f12fc5 100644 --- a/packages/calcite-components/src/assets/styles/includes.scss +++ b/packages/calcite-components/src/assets/styles/includes.scss @@ -37,6 +37,17 @@ } } +// mixin for the container of validation messages displayed below form-associated components +@mixin form-validation-message() { + .message-container { + padding-block-start: 0.5rem; + display: flex; + flex-direction: column; + align-items: flex-start; + align-self: stretch; + } +} + // mixin to provide base disabled styles for interactive components // additional styling can be passed via @content @mixin disabled() { diff --git a/packages/calcite-components/src/components/combobox/combobox.scss b/packages/calcite-components/src/components/combobox/combobox.scss index 92e9f4dd4d5..58ba3dac8df 100644 --- a/packages/calcite-components/src/components/combobox/combobox.scss +++ b/packages/calcite-components/src/components/combobox/combobox.scss @@ -206,14 +206,6 @@ @apply sr-only; } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - .list-container { @apply bg-foreground-1 max-h-menu @@ -250,6 +242,7 @@ calcite-chip { @apply block; } +@include form-validation-message(); @include hidden-form-input(); @include base-component(); diff --git a/packages/calcite-components/src/components/input-date-picker/input-date-picker.scss b/packages/calcite-components/src/components/input-date-picker/input-date-picker.scss index 86d1a772777..f4001554e38 100644 --- a/packages/calcite-components/src/components/input-date-picker/input-date-picker.scss +++ b/packages/calcite-components/src/components/input-date-picker/input-date-picker.scss @@ -115,14 +115,6 @@ @apply mt-0; } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - :host([range][layout="vertical"][scale="m"]) .vertical-arrow-container { inset-block-start: theme("spacing.6"); padding-inline-start: theme("spacing.3"); @@ -145,6 +137,7 @@ } } +@include form-validation-message(); @include hidden-form-input(); .assistive-text { diff --git a/packages/calcite-components/src/components/input-number/input-number.scss b/packages/calcite-components/src/components/input-number/input-number.scss index 3aaca2f425c..daf21d600ce 100755 --- a/packages/calcite-components/src/components/input-number/input-number.scss +++ b/packages/calcite-components/src/components/input-number/input-number.scss @@ -122,14 +122,6 @@ input:focus { } } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - // ICONS // position icons @@ -421,5 +413,6 @@ input:focus { padding-inline-start: 0; } +@include form-validation-message(); @include hidden-form-input(); @include base-component(); diff --git a/packages/calcite-components/src/components/input-text/input-text.scss b/packages/calcite-components/src/components/input-text/input-text.scss index 38a7be7750e..6bf2a65951d 100755 --- a/packages/calcite-components/src/components/input-text/input-text.scss +++ b/packages/calcite-components/src/components/input-text/input-text.scss @@ -112,14 +112,6 @@ input { } } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - // states input { @apply text-color-1 @@ -345,5 +337,6 @@ input[type="text"]::-ms-reveal { padding-inline-start: 0; } +@include form-validation-message(); @include hidden-form-input(); @include base-component(); diff --git a/packages/calcite-components/src/components/input-time-picker/input-time-picker.scss b/packages/calcite-components/src/components/input-time-picker/input-time-picker.scss index f8aa9650095..3ad1035368b 100644 --- a/packages/calcite-components/src/components/input-time-picker/input-time-picker.scss +++ b/packages/calcite-components/src/components/input-time-picker/input-time-picker.scss @@ -29,14 +29,6 @@ @apply relative; } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - .toggle-icon { @apply absolute flex cursor-pointer items-center; inset-inline-end: 0; @@ -44,4 +36,5 @@ padding-inline: var(--calcite-toggle-spacing); } +@include form-validation-message(); @include base-component(); diff --git a/packages/calcite-components/src/components/input/input.scss b/packages/calcite-components/src/components/input/input.scss index fda9c88db35..2f52b2bd93c 100755 --- a/packages/calcite-components/src/components/input/input.scss +++ b/packages/calcite-components/src/components/input/input.scss @@ -174,14 +174,6 @@ input:focus { } } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - // ICONS // position icons @@ -582,5 +574,6 @@ input { } } +@include form-validation-message(); @include hidden-form-input(); @include base-component(); diff --git a/packages/calcite-components/src/components/select/select.scss b/packages/calcite-components/src/components/select/select.scss index 9a8cf9d589f..16616e1e915 100644 --- a/packages/calcite-components/src/components/select/select.scss +++ b/packages/calcite-components/src/components/select/select.scss @@ -16,14 +16,6 @@ inline-size: var(--select-width); } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - @include disabled(); :host([scale="s"]) { @@ -134,5 +126,6 @@ select:disabled { @apply border-color-transparent; } +@include form-validation-message(); @include hidden-form-input(); @include base-component(); diff --git a/packages/calcite-components/src/components/text-area/text-area.scss b/packages/calcite-components/src/components/text-area/text-area.scss index f448638835e..b561b9c5cd7 100644 --- a/packages/calcite-components/src/components/text-area/text-area.scss +++ b/packages/calcite-components/src/components/text-area/text-area.scss @@ -149,14 +149,6 @@ textarea { } } -.message-container { - padding-block-start: 0.5rem; - display: flex; - flex-direction: column; - align-items: flex-start; - align-self: stretch; -} - .readonly { @apply bg-background font-medium; } @@ -198,6 +190,7 @@ textarea.block-size--full { @apply sr-only; } +@include form-validation-message(); @include hidden-form-input(); @include disabled(); @include base-component(); diff --git a/packages/calcite-components/src/demos/input-text.html b/packages/calcite-components/src/demos/input-text.html index 296f9a4c4d5..326150ab781 100644 --- a/packages/calcite-components/src/demos/input-text.html +++ b/packages/calcite-components/src/demos/input-text.html @@ -182,22 +182,40 @@
Message Info
- - Info message + +
- - Info message + +
- - Info message + +
@@ -207,22 +225,40 @@
Message Success
- - Success message + +
- - Success message + +
- - Success message + +
@@ -231,23 +267,27 @@
Message Warning
- - - Warning message +
- - Warning message + +
- - Warning message + +
@@ -257,22 +297,40 @@
Message Error
- - Error message + +
- - Error message + +
- - Error message + +
diff --git a/packages/calcite-components/src/demos/input-time-zone.html b/packages/calcite-components/src/demos/input-time-zone.html index 6bf9b608888..1de84ad495a 100644 --- a/packages/calcite-components/src/demos/input-time-zone.html +++ b/packages/calcite-components/src/demos/input-time-zone.html @@ -77,6 +77,36 @@

Select

+
+
Basic (offset mode) + validation message
+
+ +
+ +
+ +
+ +
+ +
+
+
name mode
diff --git a/packages/calcite-components/src/demos/input.html b/packages/calcite-components/src/demos/input.html index 7cbcd3f92b7..b5704704dcf 100644 --- a/packages/calcite-components/src/demos/input.html +++ b/packages/calcite-components/src/demos/input.html @@ -967,22 +967,43 @@
Message Info
- - Info message + +
- - Info message + +
- - Info message + +
@@ -992,22 +1013,43 @@
Message Success
- - Success message + +
- - Success message + +
- - Success message + +
@@ -1017,22 +1059,22 @@
Message Warning
- - Warning message + +
- - Warning message + +
- - Warning message + +
@@ -1042,22 +1084,43 @@
Message Error
- - Error message + +
- - Error message + +
- - Error message + +
@@ -1188,24 +1251,42 @@
Input Label - - Error message +
Input Label - - Error message +
Input Label - - Error message +
@@ -1216,27 +1297,51 @@
Input Label - + - Error message
Input Label - + - Error message
Input Label - + - Error message
@@ -1247,24 +1352,42 @@
File input - - Error message +
File input - - Error message +
File input - - Error message +
diff --git a/packages/calcite-components/src/demos/text-area.html b/packages/calcite-components/src/demos/text-area.html index 4cef862ef8e..7c4628d7c2d 100644 --- a/packages/calcite-components/src/demos/text-area.html +++ b/packages/calcite-components/src/demos/text-area.html @@ -68,6 +68,39 @@ +
+
Validation message
+
+ +
+
+ + +
+
+ + +
+
+
Default with Value