epages-essence 0.1.0 → 0.2.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 (107) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +4 -3
  4. data/app/assets/images/essence/icon_component/arrow_right.svg +1 -0
  5. data/app/assets/images/essence/icon_component/chevron_up_down.svg +3 -0
  6. data/app/assets/images/essence/icon_component/power_off.svg +1 -0
  7. data/app/assets/images/essence/icon_component/sparkles.svg +1 -0
  8. data/app/assets/images/essence/icon_component/x_mark.svg +3 -0
  9. data/app/assets/stylesheets/essence/beyond/{_base.scss → layout/base.css} +0 -5
  10. data/app/assets/stylesheets/essence/beyond/layout/{_content.scss → content.css} +1 -1
  11. data/app/assets/stylesheets/essence/beyond/simple_form/control.css +249 -0
  12. data/app/assets/stylesheets/essence/beyond/simple_form/error.css +29 -0
  13. data/app/assets/stylesheets/essence/beyond/simple_form/fieldset.css +32 -0
  14. data/app/assets/stylesheets/essence/beyond/simple_form/group.css +21 -0
  15. data/app/assets/stylesheets/essence/beyond/simple_form/hint.css +6 -0
  16. data/app/assets/stylesheets/essence/beyond/simple_form/label.css +38 -0
  17. data/app/assets/stylesheets/essence/beyond/simple_form/row.css +5 -0
  18. data/app/assets/stylesheets/essence/beyond/simple_form/wrapper.css +3 -0
  19. data/app/assets/stylesheets/essence/beyond/utils/margin.css +15 -0
  20. data/app/assets/stylesheets/essence/beyond/variables.css +281 -0
  21. data/app/assets/stylesheets/essence/beyond.css +39 -0
  22. data/app/components/essence/action_bar_component/action_bar_component.css +23 -0
  23. data/app/components/essence/action_bar_component.rb +2 -1
  24. data/app/components/essence/app_info_component/app_info_component.css +45 -0
  25. data/app/components/essence/application_component.rb +1 -3
  26. data/app/components/essence/breadcrumb_component/breadcrumb_component.css +35 -0
  27. data/app/components/essence/button_component/button_component.css +140 -0
  28. data/app/components/essence/button_component/button_component.html.erb +2 -0
  29. data/app/components/essence/button_component/button_component_controller.js +27 -0
  30. data/app/components/essence/button_component.rb +27 -2
  31. data/app/components/essence/button_group_component/button_group_component.css +21 -0
  32. data/app/components/essence/button_group_component/button_group_component.html.erb +5 -0
  33. data/app/components/essence/button_group_component.rb +28 -0
  34. data/app/components/essence/card_component/card_component.css +66 -0
  35. data/app/components/essence/card_component/card_component.html.erb +6 -0
  36. data/app/components/essence/card_component/ribbon_component.html.erb +3 -0
  37. data/app/components/essence/card_component.rb +38 -4
  38. data/app/components/essence/clipboard_copy_component/{clipboard_copy_component.scss → clipboard_copy_component.css} +4 -4
  39. data/app/components/essence/empty_state_component/empty_state_component.css +42 -0
  40. data/app/components/essence/expandable_component/expandable_component.css +36 -0
  41. data/app/components/essence/expandable_component/expandable_component.html.erb +8 -0
  42. data/app/components/essence/expandable_component/expandable_component_controller.js +32 -0
  43. data/app/components/essence/expandable_component.rb +30 -0
  44. data/app/components/essence/expandable_toggle_component/expandable_toggle_component.css +7 -0
  45. data/app/components/essence/expandable_toggle_component/expandable_toggle_component.html.erb +3 -0
  46. data/app/components/essence/expandable_toggle_component/expandable_toggle_component.yml +4 -0
  47. data/app/components/essence/expandable_toggle_component/expandable_toggle_component_controller.js +52 -0
  48. data/app/components/essence/expandable_toggle_component.rb +38 -0
  49. data/app/components/essence/flash_component/container_component.html.erb +7 -0
  50. data/app/components/essence/flash_component/flash_component.css +101 -0
  51. data/app/components/essence/flash_component/flash_component.html.erb +11 -0
  52. data/app/components/essence/flash_component/flash_component_controller.js +24 -0
  53. data/app/components/essence/flash_component.rb +29 -0
  54. data/app/components/essence/link_component/link_component.css +49 -0
  55. data/app/components/essence/notification_component/notification_component.css +55 -0
  56. data/app/components/essence/notification_component.rb +6 -2
  57. data/app/components/essence/paragraph_component/{paragraph_component.scss → paragraph_component.css} +0 -5
  58. data/app/components/essence/scroll_shadow_component/{scroll_shadow_component.scss → scroll_shadow_component.css} +4 -0
  59. data/app/components/essence/spinner_component/{spinner_component.scss → spinner_component.css} +5 -12
  60. data/app/components/essence/spinner_component/spinner_component.html.erb +1 -1
  61. data/app/components/essence/spinner_component.rb +4 -2
  62. data/app/components/essence/status_component/status_component.css +64 -0
  63. data/app/components/essence/status_component.rb +1 -1
  64. data/app/components/essence/step_list_component/step_list_component.css +72 -0
  65. data/app/components/essence/step_list_component/step_list_component.html.erb +3 -1
  66. data/app/components/essence/step_list_component.rb +7 -1
  67. data/app/components/essence/table_component/{table_component.scss → table_component.css} +5 -8
  68. data/app/components/essence/title_component/{title_component.scss → title_component.css} +0 -4
  69. data/app/components/essence/tooltip_component/tooltip_component.css +55 -0
  70. data/app/inputs/file_input.rb +73 -0
  71. data/app/javascript/essence/application.js +2 -2
  72. data/app/javascript/essence/controllers/file_input_controller.js +41 -0
  73. data/app/javascript/essence/controllers/index.js +18 -3
  74. data/app/views/essence/beyond/body.html.erb +1 -0
  75. data/config/importmap.rb +3 -0
  76. data/config/initializers/essence/inline_svg.rb +5 -0
  77. data/config/initializers/essence/simple_form.rb +29 -8
  78. data/config/locales/essence.en.yml +3 -0
  79. data/lib/components/input_group.rb +19 -0
  80. data/lib/essence/engine.rb +20 -5
  81. data/lib/essence/version.rb +1 -1
  82. data/lib/essence.rb +1 -1
  83. data/vendor/assets/stylesheets/essence/flexboxgrid.css +824 -0
  84. metadata +78 -53
  85. data/app/assets/config/essence_manifest.js +0 -5
  86. data/app/assets/stylesheets/essence/beyond/components/_index.scss +0 -17
  87. data/app/assets/stylesheets/essence/beyond/layout/_index.scss +0 -1
  88. data/app/assets/stylesheets/essence/beyond/simple_form/_control.scss +0 -172
  89. data/app/assets/stylesheets/essence/beyond/simple_form/_error.scss +0 -27
  90. data/app/assets/stylesheets/essence/beyond/simple_form/_fieldset.scss +0 -34
  91. data/app/assets/stylesheets/essence/beyond/simple_form/_group.scss +0 -6
  92. data/app/assets/stylesheets/essence/beyond/simple_form/_hint.scss +0 -8
  93. data/app/assets/stylesheets/essence/beyond/simple_form/_index.scss +0 -43
  94. data/app/assets/stylesheets/essence/beyond/simple_form/_label.scss +0 -26
  95. data/app/assets/stylesheets/essence/beyond/simple_form/_wrapper.scss +0 -5
  96. data/app/assets/stylesheets/essence/beyond.scss +0 -4
  97. data/app/components/essence/action_bar_component/action_bar_component.scss +0 -29
  98. data/app/components/essence/app_info_component/app_info_component.scss +0 -45
  99. data/app/components/essence/breadcrumb_component/breadcrumb_component.scss +0 -39
  100. data/app/components/essence/button_component/button_component.scss +0 -105
  101. data/app/components/essence/card_component/card_component.scss +0 -21
  102. data/app/components/essence/empty_state_component/empty_state_component.scss +0 -50
  103. data/app/components/essence/link_component/link_component.scss +0 -58
  104. data/app/components/essence/notification_component/notification_component.scss +0 -63
  105. data/app/components/essence/status_component/status_component.scss +0 -80
  106. data/app/components/essence/step_list_component/step_list_component.scss +0 -79
  107. data/app/components/essence/tooltip_component/tooltip_component.scss +0 -63
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6ed6897e7890245d4b2608a117871b5f3e9001bebc2e67c7931f0899dcba589e
4
- data.tar.gz: 1c68b54c6545f6aa20ca25635e2f59de8946a51326427a7064751f94629efab6
3
+ metadata.gz: e9ea06918221dc8c34ae3e86f7e698cadecef11324d56be11c1ef0aa3ec2821c
4
+ data.tar.gz: '08c04fcfb73b8837bb826f6953dcda3462ce673cb81add44c76aba10dc1fe236'
5
5
  SHA512:
6
- metadata.gz: 112822c3aa89a967852dedd8de1881bbfa95333324236a9f8a73386d905ae52276b036988c5ff32dbf271f2c6361fd0d94217c317239403b5d3eca5c3bdb210b
7
- data.tar.gz: 0be07019b5e9d2f50b5bd8b5874cc7e293bc701bfe4d1b4999e382881aec30f7d1b16fced4fed0dbc2907b312826605976967d34774172a815c26a783c458044
6
+ metadata.gz: f95037f6eeda4b2e6863cedf3614237b4d59c73d6a3c7cc4c22c9c3c9df987f0ec699093b5cb010ceacf7a03500cae31f7eb4b4524693fe2d6c64989495e1baa
7
+ data.tar.gz: 91d79535e5d7cb8d9a15715eec79603442d89dbd6081977317e9ed20219f4e8d549252c8722d99d8e59f674e0cabff543f50300a9b34fea5e5534e8cd55eec55
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2024 ePages GmbH
1
+ Copyright (c) 2025 ePages GmbH
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -23,8 +23,9 @@
23
23
  <!DOCTYPE html>
24
24
  <html>
25
25
  <head>
26
- <%= stylesheet_link_tag 'essence/beyond', 'data-turbo-track': 'reload' %>
27
- <%= javascript_importmap_tags 'essence/application' %>
26
+ <%= stylesheet_link_tag 'essence/beyond' %>
27
+ <%= javascript_importmap_tags "application", importmap: Essence.importmap %>
28
+
28
29
  <%= yield :head %>
29
30
  </head>
30
31
 
@@ -34,7 +35,7 @@
34
35
  </html>
35
36
  ```
36
37
 
37
- > Any `javascript_import_module_tag` must come after the `javascript_importmap_tags` declaration, that's why `<%= yield :head %>` is placed after this declaration. See [`importmap-rails` gem](https://github.com/rails/importmap-rails?tab=readme-ov-file#selectively-importing-modules).
38
+ > Any `javascript_import_module_tag` should come after the `javascript_importmap_tags` declaration, that's why `<%= yield :head %>` is placed after this declaration. See [`importmap-rails` gem](https://github.com/rails/importmap-rails?tab=readme-ov-file#selectively-importing-modules).
38
39
 
39
40
  ## Component preview
40
41
 
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M5 3l3.057-3L20 12 8.057 24 5 21l9-9z"/></svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
+ <path d="M12 18.8l-5.9-5.2-2.4 2.1L12 23l8.3-7.2-2.4-2.1-5.9 5.1zm0-13.6l5.9 5.2 2.4-2.1L12 1 3.7 8.2l2.4 2.1L12 5.2z"/>
3
+ </svg>
@@ -0,0 +1 @@
1
+ <svg data-token-category="icons" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 12.81h-2V0h2z"></path><path d="M17.06 1.13V3.4a10 10 0 11-10.12 0V1.13a12 12 0 1010.12 0z"></path></svg>
@@ -0,0 +1 @@
1
+ <svg data-token-category="icons" xmlns="http://www.w3.org/2000/svg" width="83.75" height="67.98" viewBox="0 0 83.75 67.98"><path d="M83 32.98l-8.7-1c-11.2-1.4-20.1-10.2-21.4-21.4l-1-8.7c-.1-1-1.6-1-1.7 0l-1 8.7c-1.4 11.2-10.2 20.1-21.4 21.4l-8.7 1c-1 .1-1 1.6 0 1.7l8.7 1c11.2 1.4 20.1 10.2 21.4 21.4l1 8.7c.1 1 1.6 1 1.7 0l1-8.7c1.4-11.2 10.2-20.1 21.4-21.4l8.7-1c1-.1 1-1.6 0-1.7zM2.2 15.48l4 .5c5.1.6 9.2 4.6 9.8 9.8l.5 4c.1.5.8.5.8 0l.5-4c.6-5.1 4.6-9.2 9.8-9.8l4-.5c.5-.1.5-.8 0-.8l-4-.5c-5.1-.6-9.2-4.6-9.8-9.8l-.5-4c-.1-.5-.8-.5-.8 0l-.5 4c-.6 5.1-4.6 9.2-9.8 9.8l-4 .5c-.5.1-.5.8 0 .8zm23.2 39.3l-3.4-.4c-4.4-.5-7.9-4-8.4-8.4l-.4-3.4c-.1-.4-.7-.4-.7 0l-.4 3.4c-.5 4.4-4 7.9-8.4 8.4l-3.4.4c-.4.1-.4.7 0 .7l3.4.4c4.4.5 7.9 4 8.4 8.4l.4 3.4c.1.4.7.4.7 0l.4-3.4c.5-4.4 4-7.9 8.4-8.4l3.4-.4c.4-.1.4-.7 0-.7z"></path></svg>
@@ -0,0 +1,3 @@
1
+ <svg data-token-category="icons" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
+ <path d="M24 20.188l-8.315-8.209 8.2-8.282L20.188 0l-8.212 8.318L3.666.115 0 3.781l8.321 8.24-8.206 8.313L3.781 24l8.237-8.318 8.285 8.203z"></path>
3
+ </svg>
@@ -1,8 +1,3 @@
1
- :root {
2
- --workspace-text: #3e3e3e;
3
- --workspace-background: #e6e6e6;
4
- }
5
-
6
1
  body {
7
2
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
8
3
  -webkit-font-smoothing: antialiased;
@@ -3,7 +3,7 @@
3
3
  }
4
4
 
5
5
  .action-bar {
6
- & + .content {
6
+ &+.content {
7
7
  padding-top: 12px;
8
8
  }
9
9
  }
@@ -0,0 +1,249 @@
1
+ .form-control {
2
+ &.country,
3
+ &.numeric,
4
+ &.password,
5
+ &.select,
6
+ &.date,
7
+ &.string,
8
+ &.text {
9
+ background-color: var(--inputField-background);
10
+ border: 1px solid var(--inputField-border);
11
+ color: var(--inputField-text);
12
+ display: block;
13
+ font-size: 14px;
14
+ outline: none;
15
+ padding: 6px 8px;
16
+ transition: border-color 0.125s ease-in, box-shadow 0.125s ease-in;
17
+ width: 100%;
18
+
19
+ &::placeholder {
20
+ color: var(--inputField-placeholder-text);
21
+ }
22
+
23
+ &:focus {
24
+ border-color: var(--inputField-border-focus);
25
+ }
26
+
27
+ &:disabled {
28
+ background-color: var(--inputField-background-disabled);
29
+ color: var(--inputField-text-disabled);
30
+ }
31
+
32
+ &.invalid {
33
+ box-shadow: inset 2px 0 0 0 var(--formGroup-validation-error);
34
+ }
35
+ }
36
+
37
+ &.text {
38
+ min-height: 100px;
39
+ }
40
+
41
+ &.numeric,
42
+ &.password,
43
+ &.string,
44
+ &.text {
45
+ &:read-only {
46
+ background-color: var(--inputField-background-disabled);
47
+ color: var(--inputField-text-disabled);
48
+ border-color: var(--inputField-border);
49
+ }
50
+ }
51
+
52
+ &.select,
53
+ &.date {
54
+ -webkit-appearance: none;
55
+ appearance: none;
56
+ background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg data-token-category=%27icons%27 xmlns=%27http://www.w3.org/2000/svg%27 width=%2724%27 height=%2724%27 viewBox=%270 0 24 24%27 fill=%27%237a764c%27%3E %3Cpath d=%27M24,7L12,19L0,7H24z%27/%3E %3C/svg%3E");
57
+ background-position: right 10px top 50%;
58
+ background-repeat: no-repeat;
59
+ background-size: 10px auto;
60
+ padding-right: 30px;
61
+
62
+ &[readonly] {
63
+ background-image: none;
64
+ padding: 6px 8px;
65
+ pointer-events: none;
66
+ }
67
+ }
68
+
69
+ &.date {
70
+ &:not(:first-child) {
71
+ border-left: 0;
72
+
73
+ &:focus {
74
+ box-shadow: -1px 0 0 0 var(--inputField-border-focus);
75
+ }
76
+ }
77
+ }
78
+
79
+ &.boolean,
80
+ &.check_boxes {
81
+ appearance: none;
82
+ border: 2px solid var(--uncheck-color);
83
+ border-radius: 0;
84
+ cursor: pointer;
85
+ flex-shrink: 0;
86
+ height: 16px;
87
+ margin: 0;
88
+ width: 16px;
89
+
90
+ &:checked {
91
+ background-color: var(--check-color);
92
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon fill='%23ffffff' points='9.6,18.4 3.8,12.8 5.8,10.7 9.5,14.3 18,5.6 20.1,7.7'/%3E%3C/svg%3E%0A");
93
+ background-size: contain;
94
+ border: none;
95
+ }
96
+
97
+ ~ .form-label {
98
+ cursor: pointer;
99
+ }
100
+
101
+ &:disabled {
102
+ border-color: var(--check-disabled-icon);
103
+
104
+ &:checked {
105
+ background-color: var(--check-disabled-text);
106
+ }
107
+
108
+ ~ .form-label {
109
+ color: var(--check-disabled-text);
110
+ }
111
+ }
112
+ }
113
+
114
+ &.toggle {
115
+ border: 1px solid var(--flipSwitch-border);
116
+ border-radius: 11px;
117
+ cursor: pointer;
118
+ display: block;
119
+ height: 22px;
120
+ position: relative;
121
+ width: 42px;
122
+
123
+ &::before {
124
+ background-color: var(--flipSwitch-unchecked-background);
125
+ border-radius: 100%;
126
+ content: "";
127
+ height: 18px;
128
+ left: 1px;
129
+ position: absolute;
130
+ top: 1px;
131
+ transition: 0.3s;
132
+ width: 18px;
133
+ background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20.5" height="20.5" viewBox="0 0 20.5 20.5"><path fill="%23ffffff" d="M15.2,13.7l-3.5-3.4,3.4-3.5-1.5-1.5-3.4,3.5-3.5-3.4-1.5,1.5,3.5,3.4-3.4,3.5,1.5,1.5,3.4-3.5,3.5,3.4,1.5-1.5Z"/></svg>');
134
+ background-size: contain;
135
+ }
136
+
137
+ &:has(~ input[type="checkbox"]:checked) {
138
+ &::before {
139
+ background-color: var(--flipSwitch-checked-background);
140
+ left: calc(100% - 19px);
141
+ background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20.5" height="20.5" viewBox="0 0 20.5 20.5"><path fill="%23ffffff" d="M8.6,15.3l-5-4.8,1.6-1.6,3.4,3.3,6.8-7,1.6,1.6-8.4,8.5Z"/></svg>');
142
+ }
143
+ }
144
+
145
+ ~ input[type="checkbox"] {
146
+ opacity: 0;
147
+ width: 0;
148
+ height: 0;
149
+ margin: 0;
150
+ }
151
+
152
+ ~ .form-label {
153
+ cursor: pointer;
154
+ }
155
+ }
156
+
157
+ &.radio_buttons {
158
+ appearance: none;
159
+ border: 2px solid var(--uncheck-color);
160
+ border-radius: 100%;
161
+ cursor: pointer;
162
+ flex-shrink: 0;
163
+ height: 16px;
164
+ margin: 0;
165
+ width: 16px;
166
+
167
+ &:checked {
168
+ background-color: var(--check-color);
169
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='%23ffffff' %3E%3Cpath d='M12,2.4c-5.3,0-9.6,4.3-9.6,9.6s4.3,9.6,9.6,9.6s9.6-4.3,9.6-9.6S17.3,2.4,12,2.4z M12,18.2c-3.5,0-6.3-2.7-6.3-6.2 S8.6,5.7,12,5.7s6.2,2.9,6.2,6.3S15.5,18.2,12,18.2z' /%3E%3C/svg%3E");
170
+ background-size: contain;
171
+ border: none;
172
+ cursor: default;
173
+ }
174
+
175
+ &:not(:checked) {
176
+ ~ .form-label {
177
+ cursor: pointer;
178
+ }
179
+ }
180
+
181
+ &:disabled {
182
+ border-color: var(--check-disabled-icon);
183
+
184
+ &:checked {
185
+ background-color: var(--check-disabled-text);
186
+ }
187
+
188
+ ~ .form-label {
189
+ color: var(--check-disabled-text);
190
+ }
191
+ }
192
+ }
193
+ }
194
+
195
+ .form-control-prepend,
196
+ .form-control-append {
197
+ align-items: center;
198
+ border: 1px solid;
199
+ border-color: var(--inputField-border);
200
+ box-sizing: border-box;
201
+ background-color: var(--inputField-background);
202
+ display: flex;
203
+ flex-shrink: 0;
204
+ padding: 6px 8px;
205
+ line-height: 1.5;
206
+
207
+ &:has(.form-control) {
208
+ border: 0;
209
+ padding: 0;
210
+
211
+ .form-control {
212
+ &:focus {
213
+ z-index: 1;
214
+ }
215
+ }
216
+ }
217
+ }
218
+
219
+ .form-control-prepend {
220
+ border-right: 0;
221
+
222
+ &:has(.form-control) {
223
+ .form-control {
224
+ border-top-left-radius: var(--inputField-borderRadius);
225
+ border-bottom-left-radius: var(--inputField-borderRadius);
226
+ border-right: 0;
227
+
228
+ &:focus {
229
+ box-shadow: 1px 0 0 0 var(--inputField-border-focus);
230
+ }
231
+ }
232
+ }
233
+ }
234
+
235
+ .form-control-append {
236
+ border-left: 0;
237
+
238
+ &:has(.form-control) {
239
+ .form-control {
240
+ border-top-right-radius: var(--inputField-borderRadius);
241
+ border-bottom-right-radius: var(--inputField-borderRadius);
242
+ border-left: 0;
243
+
244
+ &:focus {
245
+ box-shadow: -1px 0 0 0 var(--inputField-border-focus);
246
+ }
247
+ }
248
+ }
249
+ }
@@ -0,0 +1,29 @@
1
+ .form-error {
2
+ background-color: var(--formGroup-validation-error);
3
+ border-radius: var(--formGroup-validation-borderRadius);
4
+ color: var(--formGroup-validation-text);
5
+ font-size: 13px;
6
+ font-weight: normal;
7
+ margin: 0;
8
+ padding: 5px 7px;
9
+ position: absolute;
10
+ top: calc(100% + 8px);
11
+ z-index: 1;
12
+
13
+ &::first-letter {
14
+ text-transform: uppercase;
15
+ }
16
+
17
+ &::before {
18
+ border: solid transparent;
19
+ border-bottom-color: var(--formGroup-validation-error);
20
+ border-width: 6px;
21
+ bottom: 100%;
22
+ content: '';
23
+ height: 0;
24
+ left: 8px;
25
+ pointer-events: none;
26
+ position: absolute;
27
+ width: 0;
28
+ }
29
+ }
@@ -0,0 +1,32 @@
1
+ .form-fieldset {
2
+ border: none;
3
+ margin: 0;
4
+ padding: 0;
5
+
6
+ &.check_boxes,
7
+ &.radio_buttons {
8
+ .form-wrapper {
9
+ display: flex;
10
+ flex-direction: column;
11
+ gap: 7px;
12
+ }
13
+ }
14
+
15
+ &.check_boxes {
16
+ .form-legend {
17
+ color: #3e3e3e;
18
+ margin-bottom: 15px;
19
+ font-size: 20px;
20
+ font-weight: normal;
21
+ }
22
+ }
23
+
24
+ &.radio_buttons {
25
+ .form-legend {
26
+ color: var(--formGroup-label);
27
+ font-size: 13px;
28
+ font-weight: bold;
29
+ margin-bottom: 8px;
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,21 @@
1
+ .form-group {
2
+ &:not(:has(trix-editor)) {
3
+ display: flex;
4
+ align-items: center;
5
+
6
+ & > *:first-child {
7
+ border-top-left-radius: var(--inputField-borderRadius);
8
+ border-bottom-left-radius: var(--inputField-borderRadius);
9
+ }
10
+
11
+ & > *:last-child {
12
+ border-top-right-radius: var(--inputField-borderRadius);
13
+ border-bottom-right-radius: var(--inputField-borderRadius);
14
+ }
15
+
16
+ & > .date:last-of-type {
17
+ border-top-right-radius: var(--inputField-borderRadius);
18
+ border-bottom-right-radius: var(--inputField-borderRadius);
19
+ }
20
+ }
21
+ }
@@ -0,0 +1,6 @@
1
+ .form-hint {
2
+ color: var(--inputField-hint-text);
3
+ font-size: 13px;
4
+ line-height: 1.2;
5
+ margin-top: .25em;
6
+ }
@@ -0,0 +1,38 @@
1
+ .form-label {
2
+ display: inline-block;
3
+
4
+ &::first-letter {
5
+ text-transform: uppercase;
6
+ }
7
+
8
+ abbr {
9
+ text-decoration: none;
10
+ }
11
+
12
+ &.collection_radio_buttons {
13
+ color: #808080;
14
+ font-size: 13px;
15
+ }
16
+
17
+ &:not(.collection_radio_buttons) {
18
+ color: var(--formGroup-label);
19
+ font-size: 13px;
20
+ font-weight: bold;
21
+ }
22
+
23
+ &.boolean,
24
+ &.collection_check_boxes,
25
+ &.collection_radio_buttons {
26
+ line-height: 16px;
27
+ padding-left: 7px;
28
+ }
29
+
30
+ &.toggle {
31
+ line-height: 16px;
32
+ padding-left: 10px;
33
+ }
34
+
35
+ &.file-name {
36
+ margin-left: 1em;
37
+ }
38
+ }
@@ -0,0 +1,5 @@
1
+ .form-row {
2
+ &:not(.hidden):not(:last-of-type) {
3
+ margin-bottom: 30px;
4
+ }
5
+ }
@@ -0,0 +1,3 @@
1
+ .form-wrapper {
2
+ position: relative;
3
+ }
@@ -0,0 +1,15 @@
1
+ .margin-top {
2
+ margin-top: 30px !important;
3
+ }
4
+
5
+ .margin-bottom {
6
+ margin-bottom: 30px !important;
7
+ }
8
+
9
+ .margin-left {
10
+ margin-left: 30px !important;
11
+ }
12
+
13
+ .margin-right {
14
+ margin-right: 30px !important;
15
+ }