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.
Files changed (82) hide show
  1. package/assets/styles/extends-layer/srcdev-forms/components/_form-fieldset.css +16 -0
  2. package/assets/styles/extends-layer/srcdev-forms/components/_input-checkbox-radio-options-button.css +59 -0
  3. package/assets/styles/extends-layer/srcdev-forms/components/_input-checkbox.css +71 -0
  4. package/assets/styles/extends-layer/srcdev-forms/components/_input-error.css +55 -0
  5. package/assets/styles/extends-layer/srcdev-forms/components/_input-label.css +18 -0
  6. package/assets/styles/extends-layer/srcdev-forms/components/_input-radio.css +67 -0
  7. package/assets/styles/extends-layer/srcdev-forms/components/_input-select.css +16 -0
  8. package/assets/styles/extends-layer/srcdev-forms/components/_input-text-as-number.css +22 -0
  9. package/assets/styles/extends-layer/srcdev-forms/components/_input-textarea.css +5 -0
  10. package/assets/styles/extends-layer/srcdev-forms/components/index.css +9 -0
  11. package/assets/styles/extends-layer/srcdev-forms/index.css +2 -0
  12. package/assets/styles/{forms/variables/_theme.css → extends-layer/srcdev-forms/setup/_generic.css} +3 -1
  13. package/assets/styles/extends-layer/srcdev-forms/setup/index.css +4 -0
  14. package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_default.css +12 -0
  15. package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_large.css +12 -0
  16. package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_medium.css +12 -0
  17. package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_small.css +12 -0
  18. package/assets/styles/extends-layer/srcdev-forms/setup/sizes/_x-small.css +11 -0
  19. package/assets/styles/extends-layer/srcdev-forms/setup/sizes/index.css +21 -0
  20. package/assets/styles/extends-layer/srcdev-forms/setup/variants/_normal.css +48 -0
  21. package/assets/styles/extends-layer/srcdev-forms/setup/variants/_underlined.css +48 -0
  22. package/assets/styles/extends-layer/srcdev-forms/setup/variants/index.css +2 -0
  23. package/assets/styles/main.css +3 -3
  24. package/assets/styles/setup/index.css +1 -0
  25. package/assets/styles/setup/variables/index.css +2 -0
  26. package/assets/styles/theming/index.css +2 -0
  27. package/assets/styles/theming/vars/index.css +1 -0
  28. package/assets/styles/utils/_page.css +1 -1
  29. package/components/forms/c12/prop-validators/index.ts +1 -1
  30. package/components/forms/form-errors/InputError.vue +22 -6
  31. package/components/forms/form-fieldset/FormFieldset.vue +94 -0
  32. package/components/forms/input-button/InputButtonCore.vue +1 -1
  33. package/components/forms/input-button/variants/InputButtonConfirm.vue +1 -1
  34. package/components/forms/input-button/variants/InputButtonSubmit.vue +1 -1
  35. package/components/forms/input-checkbox/MultipleCheckboxes.vue +62 -78
  36. package/components/forms/input-checkbox/SingleCheckbox.vue +19 -40
  37. package/components/forms/input-checkbox-radio/InputCheckboxRadioButton.vue +43 -40
  38. package/components/forms/input-checkbox-radio/InputCheckboxRadioCore.vue +28 -42
  39. package/components/forms/input-checkbox-radio/InputCheckboxRadioWithLabel.vue +5 -1
  40. package/components/forms/input-label/InputLabel.vue +60 -0
  41. package/components/forms/input-radio/MultipleRadiobuttons.vue +56 -78
  42. package/components/forms/input-select/InputSelectCore.vue +164 -0
  43. package/components/forms/input-select/variants/InputSelectWithLabel.vue +123 -0
  44. package/components/forms/input-text/InputTextCore.vue +60 -1
  45. package/components/forms/input-text/variants/InputTextAsNumberWithLabel.vue +1 -1
  46. package/components/forms/input-text/variants/InputTextWithLabel.vue +11 -9
  47. package/components/forms/input-textarea/InputTextareaCore.vue +62 -1
  48. package/components/forms/input-textarea/variants/InputTextareaWithLabel.vue +7 -5
  49. package/components/forms/toggle-switch/ToggleSwitchCore.vue +1 -1
  50. package/components/forms/toggle-switch/ToggleSwitchCoreOld.vue +1 -1
  51. package/components/forms/toggle-switch/variants/ToggleSwitchWithLabel.vue +1 -1
  52. package/components/forms/toggle-switch/variants/ToggleSwitchWithLabelInline.vue +1 -1
  53. package/package.json +1 -1
  54. package/assets/styles/forms/index.css +0 -2
  55. package/assets/styles/forms/variables/_sizes.css +0 -71
  56. package/assets/styles/forms/variables/index.css +0 -2
  57. package/assets/styles/typography/index.css +0 -2
  58. package/assets/styles/typography/variables/index.css +0 -2
  59. package/assets/styles/variables/index.css +0 -1
  60. package/components/forms/input-select/InputSelect.vue +0 -289
  61. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_error.css +0 -0
  62. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_ghost.css +0 -0
  63. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_input-action-underlined.css +0 -0
  64. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_input-action.css +0 -0
  65. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_primary.css +0 -0
  66. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_secondary.css +0 -0
  67. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_success.css +0 -0
  68. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_tertiary.css +0 -0
  69. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/_warning.css +0 -0
  70. /package/assets/styles/{forms → extends-layer/srcdev-forms/setup}/themes/index.css +0 -0
  71. /package/assets/styles/{typography → setup}/variables/_reponsive-font-size.css +0 -0
  72. /package/assets/styles/{variables → setup/variables}/colors/_blue.css +0 -0
  73. /package/assets/styles/{variables → setup/variables}/colors/_gray.css +0 -0
  74. /package/assets/styles/{variables → setup/variables}/colors/_green.css +0 -0
  75. /package/assets/styles/{variables → setup/variables}/colors/_orange.css +0 -0
  76. /package/assets/styles/{variables → setup/variables}/colors/_red.css +0 -0
  77. /package/assets/styles/{variables → setup/variables}/colors/_yellow.css +0 -0
  78. /package/assets/styles/{variables/colors/colors.css → setup/variables/colors/index.css} +0 -0
  79. /package/assets/styles/{typography → theming}/utils/_font-classes.css +0 -0
  80. /package/assets/styles/{typography → theming}/utils/_weights.css +0 -0
  81. /package/assets/styles/{typography → theming}/utils/index.css +0 -0
  82. /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
+ }
@@ -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,5 @@
1
+ :root {
2
+ .input-textarea-core {
3
+ --input-textarea-min-height: 4em;
4
+ }
5
+ }
@@ -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';
@@ -0,0 +1,2 @@
1
+ @import './setup/';
2
+ @import './components/';
@@ -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,4 @@
1
+ @import './themes/';
2
+ @import './variants/';
3
+ @import './sizes/';
4
+ @import './_generic';
@@ -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
+ }
@@ -0,0 +1,2 @@
1
+ @import './_normal';
2
+ @import './_underlined';
@@ -1,5 +1,5 @@
1
- @import './variables';
2
- @import './forms';
1
+ @import './setup/';
2
+ @import './theming/';
3
+ @import './extends-layer/srcdev-forms/';
3
4
  @import './utils';
4
- @import './typography';
5
5
  @import './ally/';
@@ -0,0 +1 @@
1
+ @import './variables/';
@@ -0,0 +1,2 @@
1
+ @import './colors/';
2
+ @import './_reponsive-font-size';
@@ -0,0 +1,2 @@
1
+ @import './vars/';
2
+ @import './utils/';
@@ -0,0 +1 @@
1
+ @import './_type-colors';
@@ -39,7 +39,7 @@ body {
39
39
  form {
40
40
  input {
41
41
  font: inherit;
42
- accent-color: var(--accent-color, red);
42
+ /* accent-color: var(--accent-color, red); */
43
43
  }
44
44
 
45
45
  label {
@@ -1,5 +1,5 @@
1
1
  export const propValidators = {
2
- size: ['x-small', 'small', 'normal', 'medium', 'large'],
2
+ size: ['x-small', 'small', 'default', 'medium', 'large'],
3
3
  weight: [
4
4
  'wght-100',
5
5
  'wght-200',
@@ -66,7 +66,7 @@ const isArray = computed(() => {
66
66
  const { elementClasses, updateElementClasses } = useStyleClassPassthrough(props.styleClassPassthrough);
67
67
  </script>
68
68
 
69
- <style lang="css" scoped>
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(--theme-error-text);
100
- background-color: var(--theme-error-surface);
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
- &.detached {
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;