srcdev-nuxt-forms 4.2.0 → 5.0.1
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/assets/styles/extends-layer/srcdev-forms/components/_form-fieldset.css +16 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-checkbox-radio-options-button.css +59 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-checkbox.css +71 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-error.css +55 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-label.css +18 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-radio.css +67 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-select.css +16 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-text-as-number.css +22 -0
- package/assets/styles/extends-layer/srcdev-forms/components/_input-textarea.css +5 -0
- package/assets/styles/extends-layer/srcdev-forms/components/index.css +9 -0
- package/assets/styles/extends-layer/srcdev-forms/index.css +2 -0
- package/assets/styles/{forms/variables/_theme.css → extends-layer/srcdev-forms/setup/_generic.css} +3 -1
- package/assets/styles/extends-layer/srcdev-forms/setup/index.css +4 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_default.css +12 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_large.css +12 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_medium.css +12 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_small.css +12 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_x-small.css +11 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/sizes/index.css +21 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/variants/_normal.css +48 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/variants/_underlined.css +48 -0
- package/assets/styles/extends-layer/srcdev-forms/setup/variants/index.css +2 -0
- package/assets/styles/main.css +3 -3
- package/assets/styles/setup/index.css +1 -0
- package/assets/styles/setup/variables/index.css +2 -0
- package/assets/styles/theming/index.css +2 -0
- package/assets/styles/theming/vars/index.css +1 -0
- package/assets/styles/utils/_page.css +1 -1
- package/components/forms/c12/prop-validators/index.ts +1 -1
- package/components/forms/form-errors/InputError.vue +22 -6
- package/components/forms/form-fieldset/FormFieldset.vue +94 -0
- package/components/forms/input-button/InputButtonCore.vue +1 -1
- package/components/forms/input-button/variants/InputButtonConfirm.vue +1 -1
- package/components/forms/input-button/variants/InputButtonSubmit.vue +1 -1
- package/components/forms/input-checkbox/MultipleCheckboxes.vue +62 -78
- package/components/forms/input-checkbox/SingleCheckbox.vue +19 -40
- package/components/forms/input-checkbox-radio/InputCheckboxRadioButton.vue +43 -40
- package/components/forms/input-checkbox-radio/InputCheckboxRadioCore.vue +28 -42
- package/components/forms/input-checkbox-radio/InputCheckboxRadioWithLabel.vue +5 -1
- package/components/forms/input-label/InputLabel.vue +60 -0
- package/components/forms/input-radio/MultipleRadiobuttons.vue +56 -78
- package/components/forms/input-select/InputSelectCore.vue +164 -0
- package/components/forms/input-select/variants/InputSelectWithLabel.vue +123 -0
- package/components/forms/input-text/InputTextCore.vue +60 -1
- package/components/forms/input-text/variants/InputTextAsNumberWithLabel.vue +1 -1
- package/components/forms/input-text/variants/InputTextWithLabel.vue +11 -9
- package/components/forms/input-textarea/InputTextareaCore.vue +62 -1
- package/components/forms/input-textarea/variants/InputTextareaWithLabel.vue +7 -5
- package/components/forms/toggle-switch/ToggleSwitchCore.vue +1 -1
- package/components/forms/toggle-switch/ToggleSwitchCoreOld.vue +1 -1
- package/components/forms/toggle-switch/variants/ToggleSwitchWithLabel.vue +1 -1
- package/components/forms/toggle-switch/variants/ToggleSwitchWithLabelInline.vue +1 -1
- package/package.json +1 -1
- package/assets/styles/forms/index.css +0 -2
- package/assets/styles/forms/variables/_sizes.css +0 -71
- package/assets/styles/forms/variables/index.css +0 -2
- package/assets/styles/typography/index.css +0 -2
- package/assets/styles/typography/variables/index.css +0 -2
- package/assets/styles/variables/index.css +0 -1
- package/components/forms/input-select/InputSelect.vue +0 -289
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_error.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_ghost.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_input-action-underlined.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_input-action.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_primary.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_secondary.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_success.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_tertiary.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_warning.css +0 -0
- /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/index.css +0 -0
- /package/assets/styles/{typography → setup}/variables/_reponsive-font-size.css +0 -0
- /package/assets/styles/{variables → setup/variables}/colors/_blue.css +0 -0
- /package/assets/styles/{variables → setup/variables}/colors/_gray.css +0 -0
- /package/assets/styles/{variables → setup/variables}/colors/_green.css +0 -0
- /package/assets/styles/{variables → setup/variables}/colors/_orange.css +0 -0
- /package/assets/styles/{variables → setup/variables}/colors/_red.css +0 -0
- /package/assets/styles/{variables → setup/variables}/colors/_yellow.css +0 -0
- /package/assets/styles/{variables/colors/colors.css → setup/variables/colors/index.css} +0 -0
- /package/assets/styles/{typography → theming}/utils/_font-classes.css +0 -0
- /package/assets/styles/{typography → theming}/utils/_weights.css +0 -0
- /package/assets/styles/{typography → theming}/utils/index.css +0 -0
- /package/assets/styles/{typography/variables/_colors.css → theming/vars/_type-colors.css} +0 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* Label vars */
|
|
3
|
+
.form-fieldset {
|
|
4
|
+
--form-fieldset-legend-text-color: var(--theme-form-input-text-label-color-normal);
|
|
5
|
+
--form-fieldset-legend-text-margin-block: 0.8rem;
|
|
6
|
+
--form-fieldset-legend-text-size: var(--step-2);
|
|
7
|
+
--form-fieldset-legend-text-weight: normal;
|
|
8
|
+
--form-fieldset-legend-text-line-height: 1.5;
|
|
9
|
+
|
|
10
|
+
--form-fieldset-description-font-size: 1.6rem;
|
|
11
|
+
--form-fieldset-description-margin-top: 1.2rem;
|
|
12
|
+
|
|
13
|
+
--form-fieldset-content-margin-block-start: 0;
|
|
14
|
+
--form-fieldset-content-padding-block-start: 0;
|
|
15
|
+
}
|
|
16
|
+
}
|
package/assets/styles/extends-layer/srcdev-forms/components/_input-checkbox-radio-options-button.css
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
.input-checkbox-radio-options-button {
|
|
3
|
+
/* --input-checkbox-radio-options-button-background-color: hsl(from var(--theme-form-input-border) h s 95%); */
|
|
4
|
+
--input-checkbox-radio-options-button-background-color: color-mix(in srgb, currentColor 5%, transparent);
|
|
5
|
+
--input-checkbox-radio-options-button-background-color-active: hsl(from var(--theme-form-input-border) h s 25%);
|
|
6
|
+
|
|
7
|
+
--input-checkbox-radio-options-button-border: 0.1rem solid var(--theme-form-input-border);
|
|
8
|
+
--input-checkbox-radio-options-button-border-active: 0.1rem solid var(--theme-form-input-border);
|
|
9
|
+
/* --input-checkbox-radio-options-button-border-radius: var(--form-input-border-radius); */
|
|
10
|
+
--input-checkbox-radio-options-button-border-radius: 1lh;
|
|
11
|
+
--input-checkbox-radio-options-button-outline: 0.1rem solid hsl(from var(--theme-form-input-border) h s 55%);
|
|
12
|
+
--input-checkbox-radio-options-button-outline-active: 0.1rem solid hsl(from var(--theme-form-input-border) h s 5%);
|
|
13
|
+
|
|
14
|
+
/* Label styles */
|
|
15
|
+
|
|
16
|
+
--input-checkbox-radio-options-button-label-font-size: var(--form-element-font-size);
|
|
17
|
+
--input-checkbox-radio-options-button-label-min-height: var(--form-element-line-height);
|
|
18
|
+
|
|
19
|
+
--input-checkbox-radio-options-button-label-margin-block: 0.8rem;
|
|
20
|
+
--input-checkbox-radio-options-button-label-padding-inline: 0.8rem;
|
|
21
|
+
|
|
22
|
+
[data-form-theme='primary'] {
|
|
23
|
+
--input-checkbox-radio-options-button-label-text-color: light-dark(var(--gray-11), var(--gray-1));
|
|
24
|
+
--input-checkbox-radio-options-button-label-icon-color: light-dark(var(--gray-11), var(--gray-1));
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/* Size variants */
|
|
28
|
+
&.x-small {
|
|
29
|
+
--input-checkbox-radio-options-padding-block: 0.2rem;
|
|
30
|
+
--input-checkbox-radio-options-padding-inline: 1.6rem;
|
|
31
|
+
|
|
32
|
+
--input-checkbox-radio-options-button-gap: 1rem;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&.small {
|
|
36
|
+
--input-checkbox-radio-options-padding-block: 0.2rem;
|
|
37
|
+
--input-checkbox-radio-options-padding-inline: 1.6rem;
|
|
38
|
+
--input-checkbox-radio-options-button-gap: 1rem;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&.default {
|
|
42
|
+
--input-checkbox-radio-options-padding-block: 0.4rem;
|
|
43
|
+
--input-checkbox-radio-options-padding-inline: 1.2rem;
|
|
44
|
+
--input-checkbox-radio-options-button-gap: 1rem;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&.medium {
|
|
48
|
+
--input-checkbox-radio-options-padding-block: 0.4rem;
|
|
49
|
+
--input-checkbox-radio-options-padding-inline: 1.2rem;
|
|
50
|
+
--input-checkbox-radio-options-button-gap: 1rem;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
&.large {
|
|
54
|
+
--input-checkbox-radio-options-padding-block: 0.4rem;
|
|
55
|
+
--input-checkbox-radio-options-padding-inline: 1.2rem;
|
|
56
|
+
--input-checkbox-radio-options-button-gap: 1rem;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* These styles control the appearance of checkboxes.
|
|
3
|
+
*/
|
|
4
|
+
:root {
|
|
5
|
+
.input-checkbox-radio-wrapper {
|
|
6
|
+
&.checkbox {
|
|
7
|
+
--input-checkbox-radio-wrapper-transition: all var(--theme-form-transition-duration) ease-in-out;
|
|
8
|
+
--input-checkbox-radio-wrapper-background-color: hsl(from var(--theme-form-input-border) h s 25%);
|
|
9
|
+
--input-checkbox-radio-wrapper-border: 0.1rem solid var(--theme-form-input-border);
|
|
10
|
+
--input-checkbox-radio-wrapper-border-radius: var(--form-input-border-radius);
|
|
11
|
+
--input-checkbox-radio-wrapper-outline: 0.1rem solid hsl(from var(--theme-form-input-border) h s 95%);
|
|
12
|
+
|
|
13
|
+
--input-checkbox-radio-wrapper-box-shadow-off: none;
|
|
14
|
+
|
|
15
|
+
/* Interactive state */
|
|
16
|
+
--input-checkbox-radio-wrapper-border-on: 0.1rem solid var(--theme-form-input-border);
|
|
17
|
+
--input-checkbox-radio-wrapper-outline-on: 0.1rem solid hsl(from var(--theme-form-input-border) h s 1%);
|
|
18
|
+
--input-checkbox-radio-wrapper-box-shadow-on: 0.1rem 0.1rem 0.1rem 0.1rem hsl(from var(--theme-form-input-border) h s 95%);
|
|
19
|
+
|
|
20
|
+
--form-input-checkbox-radio-button-symbol-color: hsl(from var(--theme-form-input-border) h s 75%);
|
|
21
|
+
|
|
22
|
+
/* Size variants for radio buttons within a button */
|
|
23
|
+
&.x-small {
|
|
24
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-0);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&.small {
|
|
28
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-1);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&.default {
|
|
32
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-4);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&.medium {
|
|
36
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&.large {
|
|
40
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* Size variants for default checkbox */
|
|
44
|
+
&.button {
|
|
45
|
+
&.display-as-disc {
|
|
46
|
+
--input-checkbox-radio-wrapper-border-radius: 100%;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
&.x-small {
|
|
50
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-0);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
&.small {
|
|
54
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-1);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&.default {
|
|
58
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&.medium {
|
|
62
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
&.large {
|
|
66
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--input-error-color: var(--theme-error-text);
|
|
3
|
+
/* --input-error-background-color: transparent; */
|
|
4
|
+
--input-error-background-color: var(--theme-error-surface);
|
|
5
|
+
|
|
6
|
+
--input-error-font-size: var(--form-element-font-size);
|
|
7
|
+
--input-error-line-height: var(--form-element-line-height);
|
|
8
|
+
--input-error-font-weight: var(--form-element-font-weight);
|
|
9
|
+
|
|
10
|
+
--input-error-margin-block-start: 0rem;
|
|
11
|
+
|
|
12
|
+
--input-error-border-radius: var(--form-input-border-radius);
|
|
13
|
+
|
|
14
|
+
/* Border styles */
|
|
15
|
+
--input-error-border-top-left-radius: 0;
|
|
16
|
+
--input-error-border-top-right-radius: 0;
|
|
17
|
+
--input-error-border-bottom-right-radius: 0;
|
|
18
|
+
--input-error-border-bottom-left-radius: 0;
|
|
19
|
+
|
|
20
|
+
--input-error-border-top-default: var(--form-element-border-width) solid transparent;
|
|
21
|
+
--input-error-border-right-default: var(--form-element-border-width) solid transparent;
|
|
22
|
+
--input-error-border-bottom-default: var(--form-element-border-width-underlined) solid transparent;
|
|
23
|
+
--input-error-border-left-default: var(--form-element-border-width) solid transparent;
|
|
24
|
+
|
|
25
|
+
.detached {
|
|
26
|
+
--input-error-margin-block-start: 2rem;
|
|
27
|
+
|
|
28
|
+
--input-error-border-top-left-radius: var(--input-error-border-radius);
|
|
29
|
+
--input-error-border-top-right-radius: var(--input-error-border-radius);
|
|
30
|
+
--input-error-border-bottom-right-radius: var(--input-error-border-radius);
|
|
31
|
+
--input-error-border-bottom-left-radius: var(--input-error-border-radius);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.show {
|
|
35
|
+
--input-error-background-color: var(--theme-error-surface);
|
|
36
|
+
|
|
37
|
+
--input-error-border-bottom-right-radius: var(--input-error-border-radius);
|
|
38
|
+
--input-error-border-bottom-left-radius: var(--input-error-border-radius);
|
|
39
|
+
|
|
40
|
+
--input-error-border-top-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
41
|
+
--input-error-border-right-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
42
|
+
--input-error-border-bottom-default: var(--form-element-border-width-underlined) solid var(--red-8);
|
|
43
|
+
--input-error-border-left-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.Xunderlined.show {
|
|
47
|
+
--input-error-border-bottom-right-radius: var(--input-error-border-radius);
|
|
48
|
+
--input-error-border-bottom-left-radius: var(--input-error-border-radius);
|
|
49
|
+
|
|
50
|
+
--input-error-border-top-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
51
|
+
--input-error-border-right-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
52
|
+
--input-error-border-bottom-default: var(--form-element-border-width-underlined) solid var(--red-8);
|
|
53
|
+
--input-error-border-left-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* Label vars */
|
|
3
|
+
.normal {
|
|
4
|
+
--input-label-text-color: var(--theme-form-input-text-label-color-normal);
|
|
5
|
+
--input-label-text-margin-block: 0.8rem;
|
|
6
|
+
--input-label-text-size: var(--step-2);
|
|
7
|
+
--input-label-text-weight: normal;
|
|
8
|
+
--input-label-text-line-height: 1.5;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.underlined {
|
|
12
|
+
--input-label-text-color: var(--theme-form-input-text-label-color-normal);
|
|
13
|
+
--input-label-text-margin-block: 0.8rem;
|
|
14
|
+
--input-label-text-size: var(--step-2);
|
|
15
|
+
--input-label-text-weight: normal;
|
|
16
|
+
--input-label-text-line-height: 1.5;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* These styles control the appearance of radio buttons.
|
|
3
|
+
*/
|
|
4
|
+
:root {
|
|
5
|
+
.input-checkbox-radio-wrapper {
|
|
6
|
+
&.radio {
|
|
7
|
+
--input-checkbox-radio-wrapper-transition: all var(--theme-form-transition-duration) ease-in-out;
|
|
8
|
+
--input-checkbox-radio-wrapper-background-color: hsl(from var(--theme-form-input-border) h s 25%);
|
|
9
|
+
--input-checkbox-radio-wrapper-border: 0.1rem solid var(--theme-form-input-border);
|
|
10
|
+
--input-checkbox-radio-wrapper-border-radius: 100%;
|
|
11
|
+
--input-checkbox-radio-wrapper-outline: 0.1rem solid hsl(from var(--theme-form-input-border) h s 95%);
|
|
12
|
+
|
|
13
|
+
--input-checkbox-radio-wrapper-box-shadow-off: none;
|
|
14
|
+
|
|
15
|
+
/* Interactive state */
|
|
16
|
+
--input-checkbox-radio-wrapper-border-on: 0.1rem solid var(--theme-form-input-border);
|
|
17
|
+
--input-checkbox-radio-wrapper-outline-on: 0.1rem solid hsl(from var(--theme-form-input-border) h s 1%);
|
|
18
|
+
--input-checkbox-radio-wrapper-box-shadow-on: 0rem 0rem 0rem 0.3rem hsl(from var(--theme-form-input-border) h s 95%);
|
|
19
|
+
|
|
20
|
+
--form-input-checkbox-radio-button-symbol-color: hsl(from var(--theme-form-input-border) h s 75%);
|
|
21
|
+
|
|
22
|
+
/* Size variants for radio buttons within a button */
|
|
23
|
+
&.x-small {
|
|
24
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-0);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&.small {
|
|
28
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-1);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&.default {
|
|
32
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-4);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&.medium {
|
|
36
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&.large {
|
|
40
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* Size variants for default radio buttons */
|
|
44
|
+
.button {
|
|
45
|
+
&.x-small {
|
|
46
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-0);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
&.small {
|
|
50
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-1);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
&.default {
|
|
54
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&.medium {
|
|
58
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&.large {
|
|
62
|
+
--form-input-checkbox-radio-button-symbol-size: var(--step-3);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
.input-select-core {
|
|
3
|
+
--input-select-animation-duration: 0.2s;
|
|
4
|
+
--input-select-padding-block: 1.5rem;
|
|
5
|
+
--input-select-padding-inline: 1rem;
|
|
6
|
+
|
|
7
|
+
--input-select-option-padding-block: 1rem;
|
|
8
|
+
--input-select-option-padding-inline: 1.75rem;
|
|
9
|
+
--input-select-option-gap: 1.5rem;
|
|
10
|
+
|
|
11
|
+
--input-select-option-background-color-hover: hsl(from var(--theme-form-input-border) h s 25%);
|
|
12
|
+
|
|
13
|
+
--input-select-option-icon-size: 1.5rem;
|
|
14
|
+
--input-select-option-transition: all var(--input-select-animation-duration) ease-in-out;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* See _input-select.css for the base styles
|
|
3
|
+
**/
|
|
4
|
+
:root {
|
|
5
|
+
.input-text-wrapper {
|
|
6
|
+
&[data-inputmode='numeric'] {
|
|
7
|
+
--input-element-padding-block: 1.25rem;
|
|
8
|
+
--element-decorator-padding-inline: 0.4rem;
|
|
9
|
+
|
|
10
|
+
[data-btn-theme='input-action'] {
|
|
11
|
+
--theme-btn-bg: hsl(from var(--theme-form-input-border) h s 25%);
|
|
12
|
+
--theme-btn-text: var(--gray-00);
|
|
13
|
+
--form-input-border-radius: 0.2rem;
|
|
14
|
+
|
|
15
|
+
--theme-btn-border: hsl(from var(--theme-form-input-border) h s 40%);
|
|
16
|
+
|
|
17
|
+
--theme-btn-border-hover: transparent;
|
|
18
|
+
--theme-btn-outline-hover: hsl(from var(--theme-form-input-border) h s 75%);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
@import './_input-error';
|
|
2
|
+
@import './_input-select';
|
|
3
|
+
@import './_input-label';
|
|
4
|
+
@import './_input-textarea';
|
|
5
|
+
@import './_input-text-as-number';
|
|
6
|
+
@import './_input-checkbox';
|
|
7
|
+
@import './_input-radio';
|
|
8
|
+
@import './_input-checkbox-radio-options-button';
|
|
9
|
+
@import './_form-fieldset';
|
package/assets/styles/{forms/variables/_theme.css → extends-layer/srcdev-forms/setup/_generic.css}
RENAMED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
--line-height: calc((var(--font-size) * 2) - 1rem);
|
|
4
4
|
|
|
5
5
|
--font-family: futura-pt, Seravek, 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif;
|
|
6
|
-
|
|
6
|
+
--theme-form-font-familty: var(--font-family);
|
|
7
7
|
--theme-error-surface: var(--red-12);
|
|
8
8
|
--theme-error-text: var(--red-0);
|
|
9
9
|
|
|
10
10
|
--theme-form-button-font-size-normal: var(--form-element-font-size);
|
|
11
|
+
|
|
12
|
+
--theme-form-transition-duration: 0.2s;
|
|
11
13
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
[data-size='default'] {
|
|
3
|
+
--form-element-font-size: var(--step-2);
|
|
4
|
+
--form-placeholder-font-size: calc(var(--step-2) * 0.65);
|
|
5
|
+
--form-element-line-height: var(--step-2);
|
|
6
|
+
--form-icon-size: var(--step-2);
|
|
7
|
+
--form-input-border-radius: 0.4rem;
|
|
8
|
+
--form-icon-only-button-size: calc(var(--step-1) * 2.5 + 1px);
|
|
9
|
+
--form-toggle-symbol-size: calc(var(--step-2) * 1.72);
|
|
10
|
+
--form-toggle-switch-width-adjustment: 0.2rem;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
[data-size='large'] {
|
|
3
|
+
--form-element-font-size: var(--step-3);
|
|
4
|
+
--form-placeholder-font-size: calc(var(--step-3) * 0.65);
|
|
5
|
+
--form-element-line-height: var(--step-3);
|
|
6
|
+
--form-icon-size: var(--step-3);
|
|
7
|
+
--form-input-border-radius: 0.4rem;
|
|
8
|
+
--form-icon-only-button-size: calc(var(--step-1) * 2.75 + 1px);
|
|
9
|
+
--form-toggle-symbol-size: calc(var(--step-3) * 1.78);
|
|
10
|
+
--form-toggle-switch-width-adjustment: 0rem;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
[data-size='medium'] {
|
|
3
|
+
--form-element-font-size: var(--step-3);
|
|
4
|
+
--form-placeholder-font-size: calc(var(--step-3) * 0.65);
|
|
5
|
+
--form-element-line-height: var(--step-3);
|
|
6
|
+
--form-icon-size: var(--step-3);
|
|
7
|
+
--form-input-border-radius: 0.4rem;
|
|
8
|
+
--form-icon-only-button-size: calc(var(--step-1) * 2.75 + 1px);
|
|
9
|
+
--form-toggle-symbol-size: calc(var(--step-3) * 1.78);
|
|
10
|
+
--form-toggle-switch-width-adjustment: 0rem;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
[data-size='small'] {
|
|
3
|
+
--form-element-font-size: var(--step-1);
|
|
4
|
+
--form-placeholder-font-size: calc(var(--step-1) * 0.65);
|
|
5
|
+
--form-element-line-height: var(--step-1);
|
|
6
|
+
--form-icon-size: var(--step-1);
|
|
7
|
+
--form-input-border-radius: 0.4rem;
|
|
8
|
+
--form-icon-only-button-size: calc(var(--step-1) * 2.25 + 1px);
|
|
9
|
+
--form-toggle-symbol-size: calc(var(--step-1) * 1.635);
|
|
10
|
+
--form-toggle-switch-width-adjustment: 0.3rem;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
[data-size='x-small'] {
|
|
3
|
+
--form-element-font-size: var(--step-0);
|
|
4
|
+
--form-placeholder-font-size: calc(var(--step-0) * 0.65);
|
|
5
|
+
--form-element-line-height: var(--step-0);
|
|
6
|
+
--form-input-border-radius: 0.4rem;
|
|
7
|
+
--form-icon-only-button-size: calc(var(--step-1) * 2 + 1px);
|
|
8
|
+
--form-toggle-symbol-size: calc(var(--step-0) * 1.55);
|
|
9
|
+
--form-toggle-switch-width-adjustment: 0.5rem;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
@import './_x-small';
|
|
2
|
+
@import './_small';
|
|
3
|
+
@import './_default';
|
|
4
|
+
@import './_medium';
|
|
5
|
+
@import './_large';
|
|
6
|
+
|
|
7
|
+
:root {
|
|
8
|
+
--form-element-padding-block-start: 0.4lh;
|
|
9
|
+
--form-element-padding-block-end: 0.4lh;
|
|
10
|
+
--form-element-border-width: 0.2rem;
|
|
11
|
+
--form-element-border-width-underlined: 0.4rem;
|
|
12
|
+
--form-element-outline-width: 0.1rem;
|
|
13
|
+
|
|
14
|
+
--form-text-padding-inline: 0.5em;
|
|
15
|
+
--form-button-padding-inline: 1.25em;
|
|
16
|
+
--form-button-icon-gap: 1em;
|
|
17
|
+
--form-input-border-radius: 0.4rem;
|
|
18
|
+
|
|
19
|
+
--input-element-padding-block: 1.25rem;
|
|
20
|
+
--input-element-padding-inline: 1rem;
|
|
21
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
.normal {
|
|
3
|
+
--input-row-margin-block-start: 0;
|
|
4
|
+
|
|
5
|
+
/* --element-decorator-background-color: var(--theme-form-input-bg-normal); */
|
|
6
|
+
--element-decorator-background-color: color-mix(in srgb, currentColor 5%, transparent);
|
|
7
|
+
|
|
8
|
+
--element-decorator-margin-block-start: 0.5rem;
|
|
9
|
+
--element-decorator-padding-inline: 1rem;
|
|
10
|
+
|
|
11
|
+
--element-decorator-outline-default: 1px solid color-mix(in srgb, var(--theme-form-input-border) 5%, transparent);
|
|
12
|
+
--element-decorator-outline-active: 1px solid var(--theme-form-input-border);
|
|
13
|
+
|
|
14
|
+
/* Border styles */
|
|
15
|
+
--element-decorator-border-top-left-radius: var(--form-input-border-radius);
|
|
16
|
+
--element-decorator-border-top-right-radius: var(--form-input-border-radius);
|
|
17
|
+
--element-decorator-border-bottom-right-radius: var(--form-input-border-radius);
|
|
18
|
+
--element-decorator-border-bottom-left-radius: var(--form-input-border-radius);
|
|
19
|
+
|
|
20
|
+
--element-decorator-border-top-default: var(--form-element-border-width) solid var(--theme-form-input-border);
|
|
21
|
+
--element-decorator-border-right-default: var(--form-element-border-width) solid var(--theme-form-input-border);
|
|
22
|
+
--element-decorator-border-bottom-default: var(--form-element-border-width) solid var(--theme-form-input-border);
|
|
23
|
+
--element-decorator-border-left-default: var(--form-element-border-width) solid var(--theme-form-input-border);
|
|
24
|
+
|
|
25
|
+
--input-placeholder-color: var(--gray-5);
|
|
26
|
+
--input-placeholder-font-size: var(--step-2);
|
|
27
|
+
--input-placeholder-font-style: italic;
|
|
28
|
+
--input-placeholder-font-weight: normal;
|
|
29
|
+
--input-placeholder-line-height: 1;
|
|
30
|
+
|
|
31
|
+
/* Label vars */
|
|
32
|
+
--_label-text-color: var(--theme-form-input-text-label-color-underlined);
|
|
33
|
+
--_label-text-margin-block: 0.8rem;
|
|
34
|
+
--_label-text-size: var(--step-2);
|
|
35
|
+
--_label-text-weight: normal;
|
|
36
|
+
--_label-text-line-height: 1.5;
|
|
37
|
+
|
|
38
|
+
.error {
|
|
39
|
+
--element-decorator-border-bottom-right-radius: 0;
|
|
40
|
+
--element-decorator-border-bottom-left-radius: 0;
|
|
41
|
+
|
|
42
|
+
--element-decorator-border-top-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
43
|
+
--element-decorator-border-right-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
44
|
+
--element-decorator-border-bottom-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
45
|
+
--element-decorator-border-left-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
.underlined {
|
|
3
|
+
--input-row-margin-block-start: 3em;
|
|
4
|
+
|
|
5
|
+
/* --element-decorator-background-color: var(--theme-form-input-bg-normal); */
|
|
6
|
+
--element-decorator-background-color: color-mix(in srgb, currentColor 5%, transparent);
|
|
7
|
+
|
|
8
|
+
--element-decorator-margin-block-start: 0.5rem;
|
|
9
|
+
--element-decorator-padding-inline: 1rem;
|
|
10
|
+
|
|
11
|
+
--element-decorator-outline-default: 1px solid transparent;
|
|
12
|
+
--element-decorator-outline-active: 1px solid var(--theme-form-input-border);
|
|
13
|
+
|
|
14
|
+
/* Border styles */
|
|
15
|
+
--element-decorator-border-top-left-radius: 0;
|
|
16
|
+
--element-decorator-border-top-right-radius: 0;
|
|
17
|
+
--element-decorator-border-bottom-right-radius: var(--form-input-border-radius);
|
|
18
|
+
--element-decorator-border-bottom-left-radius: var(--form-input-border-radius);
|
|
19
|
+
|
|
20
|
+
--element-decorator-border-top-default: var(--form-element-border-width) solid transparent;
|
|
21
|
+
--element-decorator-border-right-default: var(--form-element-border-width) solid transparent;
|
|
22
|
+
--element-decorator-border-bottom-default: var(--form-element-border-width-underlined) solid var(--theme-form-input-border);
|
|
23
|
+
--element-decorator-border-left-default: var(--form-element-border-width) solid transparent;
|
|
24
|
+
|
|
25
|
+
--input-placeholder-color: var(--gray-5);
|
|
26
|
+
--input-placeholder-font-size: var(--step-2);
|
|
27
|
+
--input-placeholder-font-style: italic;
|
|
28
|
+
--input-placeholder-font-weight: normal;
|
|
29
|
+
--input-placeholder-line-height: 1;
|
|
30
|
+
|
|
31
|
+
/* Label vars */
|
|
32
|
+
--_label-text-color: var(--theme-form-input-text-label-color-underlined);
|
|
33
|
+
--_label-text-margin-block: 0.8rem;
|
|
34
|
+
--_label-text-size: var(--step-2);
|
|
35
|
+
--_label-text-weight: normal;
|
|
36
|
+
--_label-text-line-height: 1.5;
|
|
37
|
+
|
|
38
|
+
.error {
|
|
39
|
+
--element-decorator-border-bottom-right-radius: 0;
|
|
40
|
+
--element-decorator-border-bottom-left-radius: 0;
|
|
41
|
+
|
|
42
|
+
--element-decorator-border-top-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
43
|
+
--element-decorator-border-right-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
44
|
+
--element-decorator-border-bottom-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
45
|
+
--element-decorator-border-left-default: var(--form-element-border-width) solid var(--theme-error-surface);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
package/assets/styles/main.css
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './variables/';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './_type-colors';
|
|
@@ -66,7 +66,7 @@ const isArray = computed(() => {
|
|
|
66
66
|
const { elementClasses, updateElementClasses } = useStyleClassPassthrough(props.styleClassPassthrough);
|
|
67
67
|
</script>
|
|
68
68
|
|
|
69
|
-
<style lang="css"
|
|
69
|
+
<style lang="css">
|
|
70
70
|
.input-error-message {
|
|
71
71
|
--_grid-template-rows: 0fr;
|
|
72
72
|
--_opacity-show: 1;
|
|
@@ -96,16 +96,32 @@ const { elementClasses, updateElementClasses } = useStyleClassPassthrough(props.
|
|
|
96
96
|
display: grid;
|
|
97
97
|
grid-template-rows: var(--_grid-template-rows);
|
|
98
98
|
|
|
99
|
-
color: var(--
|
|
100
|
-
background-color: var(--
|
|
101
|
-
border-radius: var(--_border-radius);
|
|
99
|
+
color: var(--input-error-color);
|
|
100
|
+
background-color: var(--input-error-background-color);
|
|
101
|
+
/* border-radius: var(--_border-radius); */
|
|
102
102
|
|
|
103
103
|
transition-property: grid-template-rows;
|
|
104
104
|
transition-duration: var(--_transition-duration);
|
|
105
105
|
transition-timing-function: var(--_transition-timing-function);
|
|
106
106
|
transition-behavior: allow-discrete;
|
|
107
107
|
|
|
108
|
-
|
|
108
|
+
border-top-left-radius: var(--input-error-border-top-left-radius);
|
|
109
|
+
border-top-right-radius: var(--input-error-border-top-right-radius);
|
|
110
|
+
border-bottom-left-radius: var(--input-error-border-bottom-left-radius);
|
|
111
|
+
border-bottom-right-radius: var(--input-error-border-bottom-right-radius);
|
|
112
|
+
|
|
113
|
+
border-top: var(--input-error-border-top-default);
|
|
114
|
+
border-right: var(--input-error-border-right-default);
|
|
115
|
+
border-bottom: var(--input-error-border-bottom-default);
|
|
116
|
+
border-left: var(--input-error-border-left-default);
|
|
117
|
+
|
|
118
|
+
background-clip: padding-box;
|
|
119
|
+
|
|
120
|
+
translate: 0 calc(-1 * var(--form-element-border-width));
|
|
121
|
+
|
|
122
|
+
margin-block-start: var(--input-error-margin-block-start);
|
|
123
|
+
|
|
124
|
+
/* &.detached {
|
|
109
125
|
border-radius: var(--form-input-border-radius);
|
|
110
126
|
margin-block-start: 2rem;
|
|
111
127
|
}
|
|
@@ -116,7 +132,7 @@ const { elementClasses, updateElementClasses } = useStyleClassPassthrough(props.
|
|
|
116
132
|
|
|
117
133
|
&.underlined {
|
|
118
134
|
--_border-radius: 0;
|
|
119
|
-
}
|
|
135
|
+
} */
|
|
120
136
|
|
|
121
137
|
.inner {
|
|
122
138
|
align-items: center;
|