@rolster/styles-foundations 2.7.3 → 3.0.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 (192) hide show
  1. package/LICENSE +21 -21
  2. package/dist/design-system-bordered.css +4883 -0
  3. package/dist/design-system-bordered.css.map +1 -0
  4. package/dist/design-system-bordered.min.css +143 -0
  5. package/dist/design-system-filled.css +4798 -0
  6. package/dist/design-system-filled.css.map +1 -0
  7. package/dist/design-system-filled.min.css +141 -0
  8. package/dist/styles.css +363 -1242
  9. package/dist/styles.css.map +1 -1
  10. package/dist/styles.min.css +1 -53
  11. package/dist/styles.rtl.css +363 -1242
  12. package/dist/styles.rtl.min.css +1 -53
  13. package/package.json +41 -39
  14. package/scss/design-system-bordered/_index.scss +96 -0
  15. package/scss/{components → design-system-bordered}/app.scss +228 -145
  16. package/scss/design-system-bordered/atoms/amount.scss +58 -0
  17. package/scss/design-system-bordered/atoms/area-text.scss +100 -0
  18. package/scss/design-system-bordered/atoms/avatar.scss +50 -0
  19. package/scss/design-system-bordered/atoms/badge.scss +51 -0
  20. package/scss/design-system-bordered/atoms/breadcrumb.scss +87 -0
  21. package/scss/design-system-bordered/atoms/button-action.scss +124 -0
  22. package/scss/design-system-bordered/atoms/button-option.scss +49 -0
  23. package/scss/design-system-bordered/atoms/button.scss +249 -0
  24. package/scss/design-system-bordered/atoms/check-box.scss +49 -0
  25. package/scss/design-system-bordered/atoms/icon.scss +39 -0
  26. package/scss/design-system-bordered/atoms/image.scss +37 -0
  27. package/scss/design-system-bordered/atoms/input-decimal.scss +15 -0
  28. package/scss/design-system-bordered/atoms/input-money.scss +15 -0
  29. package/scss/design-system-bordered/atoms/input-number.scss +12 -0
  30. package/scss/design-system-bordered/atoms/input-password.scss +48 -0
  31. package/scss/design-system-bordered/atoms/input-percentage.scss +12 -0
  32. package/scss/design-system-bordered/atoms/input-search.scss +28 -0
  33. package/scss/design-system-bordered/atoms/input-text.scss +12 -0
  34. package/scss/design-system-bordered/atoms/input.scss +97 -0
  35. package/scss/design-system-bordered/atoms/label.scss +20 -0
  36. package/scss/design-system-bordered/atoms/message-icon.scss +21 -0
  37. package/scss/design-system-bordered/atoms/poster.scss +42 -0
  38. package/scss/design-system-bordered/atoms/progress-bar.scss +83 -0
  39. package/scss/design-system-bordered/atoms/progress-circular.scss +59 -0
  40. package/scss/design-system-bordered/atoms/radio-button.scss +55 -0
  41. package/scss/design-system-bordered/atoms/skeleton-text.scss +39 -0
  42. package/scss/design-system-bordered/atoms/skeleton.scss +46 -0
  43. package/scss/design-system-bordered/atoms/spinner.scss +102 -0
  44. package/scss/design-system-bordered/atoms/switch.scss +71 -0
  45. package/scss/design-system-bordered/atoms/tabular-text.scss +38 -0
  46. package/scss/design-system-bordered/molecules/accordion.scss +146 -0
  47. package/scss/design-system-bordered/molecules/alert.scss +52 -0
  48. package/scss/design-system-bordered/molecules/ballot.scss +110 -0
  49. package/scss/design-system-bordered/molecules/button-progress.scss +15 -0
  50. package/scss/design-system-bordered/molecules/button-toggle.scss +100 -0
  51. package/scss/design-system-bordered/molecules/field-area.scss +14 -0
  52. package/scss/{components → design-system-bordered/molecules}/field-box.scss +33 -2
  53. package/scss/design-system-bordered/molecules/field-decimal.scss +14 -0
  54. package/scss/design-system-bordered/molecules/field-file.scss +41 -0
  55. package/scss/design-system-bordered/molecules/field-list-suggestions.scss +65 -0
  56. package/scss/{components → design-system-bordered/molecules}/field-list.scss +52 -36
  57. package/scss/design-system-bordered/molecules/field-money.scss +14 -0
  58. package/scss/design-system-bordered/molecules/field-number.scss +14 -0
  59. package/scss/design-system-bordered/molecules/field-password.scss +23 -0
  60. package/scss/design-system-bordered/molecules/field-percentage.scss +14 -0
  61. package/scss/design-system-bordered/molecules/field-readonly.scss +24 -0
  62. package/scss/design-system-bordered/molecules/field-text.scss +14 -0
  63. package/scss/design-system-bordered/molecules/label-check-box.scss +72 -0
  64. package/scss/design-system-bordered/molecules/label-radio-button.scss +79 -0
  65. package/scss/design-system-bordered/molecules/label-switch.scss +71 -0
  66. package/scss/design-system-bordered/molecules/message-empty.scss +80 -0
  67. package/scss/design-system-bordered/molecules/pagination.scss +114 -0
  68. package/scss/design-system-bordered/molecules/picker-day-range.scss +109 -0
  69. package/scss/design-system-bordered/molecules/picker-day.scss +117 -0
  70. package/scss/design-system-bordered/molecules/picker-month.scss +67 -0
  71. package/scss/design-system-bordered/molecules/picker-selector-title.scss +54 -0
  72. package/scss/design-system-bordered/molecules/picker-year.scss +113 -0
  73. package/scss/design-system-bordered/molecules/slider.scss +74 -0
  74. package/scss/design-system-bordered/molecules/tabs.scss +51 -0
  75. package/scss/design-system-bordered/molecules/toolbar.scss +53 -0
  76. package/scss/design-system-bordered/organisms/bottom-sheet.scss +108 -0
  77. package/scss/design-system-bordered/organisms/card.scss +36 -0
  78. package/scss/design-system-bordered/organisms/confirmation.scss +186 -0
  79. package/scss/{components → design-system-bordered/organisms}/data-table.scss +13 -11
  80. package/scss/design-system-bordered/organisms/dropdown.scss +45 -0
  81. package/scss/design-system-bordered/organisms/field-autocomplete.scss +79 -0
  82. package/scss/design-system-bordered/organisms/field-clock.scss +62 -0
  83. package/scss/design-system-bordered/organisms/field-date-range.scss +60 -0
  84. package/scss/design-system-bordered/organisms/field-date.scss +61 -0
  85. package/scss/design-system-bordered/organisms/field-select.scss +18 -0
  86. package/scss/design-system-bordered/organisms/form-navigation.scss +46 -0
  87. package/scss/design-system-bordered/organisms/image-chooser.scss +50 -0
  88. package/scss/design-system-bordered/organisms/image-editor-modal.scss +23 -0
  89. package/scss/design-system-bordered/organisms/image-editor.scss +118 -0
  90. package/scss/design-system-bordered/organisms/modal-sheet.scss +138 -0
  91. package/scss/design-system-bordered/organisms/modal.scss +75 -0
  92. package/scss/design-system-bordered/organisms/picker-clock.scss +144 -0
  93. package/scss/design-system-bordered/organisms/picker-date-range.scss +84 -0
  94. package/scss/design-system-bordered/organisms/picker-date.scss +86 -0
  95. package/scss/design-system-bordered/organisms/snackbar.scss +93 -0
  96. package/scss/design-system-filled/_index.scss +96 -0
  97. package/scss/design-system-filled/app.scss +233 -0
  98. package/scss/design-system-filled/atoms/amount.scss +58 -0
  99. package/scss/design-system-filled/atoms/area-text.scss +100 -0
  100. package/scss/design-system-filled/atoms/avatar.scss +45 -0
  101. package/scss/design-system-filled/atoms/badge.scss +51 -0
  102. package/scss/design-system-filled/atoms/breadcrumb.scss +87 -0
  103. package/scss/design-system-filled/atoms/button-action.scss +124 -0
  104. package/scss/design-system-filled/atoms/button-option.scss +49 -0
  105. package/scss/design-system-filled/atoms/button.scss +222 -0
  106. package/scss/design-system-filled/atoms/check-box.scss +46 -0
  107. package/scss/design-system-filled/atoms/icon.scss +39 -0
  108. package/scss/design-system-filled/atoms/image.scss +37 -0
  109. package/scss/design-system-filled/atoms/input-decimal.scss +15 -0
  110. package/scss/design-system-filled/atoms/input-money.scss +15 -0
  111. package/scss/design-system-filled/atoms/input-number.scss +12 -0
  112. package/scss/design-system-filled/atoms/input-password.scss +48 -0
  113. package/scss/design-system-filled/atoms/input-percentage.scss +12 -0
  114. package/scss/design-system-filled/atoms/input-search.scss +26 -0
  115. package/scss/design-system-filled/atoms/input-text.scss +12 -0
  116. package/scss/design-system-filled/atoms/input.scss +97 -0
  117. package/scss/design-system-filled/atoms/label.scss +20 -0
  118. package/scss/design-system-filled/atoms/message-icon.scss +21 -0
  119. package/scss/design-system-filled/atoms/poster.scss +32 -0
  120. package/scss/design-system-filled/atoms/progress-bar.scss +83 -0
  121. package/scss/design-system-filled/atoms/progress-circular.scss +59 -0
  122. package/scss/design-system-filled/atoms/radio-button.scss +53 -0
  123. package/scss/design-system-filled/atoms/skeleton-text.scss +39 -0
  124. package/scss/design-system-filled/atoms/skeleton.scss +46 -0
  125. package/scss/design-system-filled/atoms/spinner.scss +102 -0
  126. package/scss/design-system-filled/atoms/switch.scss +71 -0
  127. package/scss/design-system-filled/atoms/tabular-text.scss +38 -0
  128. package/scss/design-system-filled/molecules/accordion.scss +138 -0
  129. package/scss/design-system-filled/molecules/alert.scss +52 -0
  130. package/scss/design-system-filled/molecules/ballot.scss +110 -0
  131. package/scss/design-system-filled/molecules/button-progress.scss +15 -0
  132. package/scss/design-system-filled/molecules/button-toggle.scss +100 -0
  133. package/scss/design-system-filled/molecules/field-area.scss +14 -0
  134. package/scss/design-system-filled/molecules/field-box.scss +170 -0
  135. package/scss/design-system-filled/molecules/field-decimal.scss +14 -0
  136. package/scss/design-system-filled/molecules/field-file.scss +41 -0
  137. package/scss/design-system-filled/molecules/field-list-suggestions.scss +65 -0
  138. package/scss/design-system-filled/molecules/field-list.scss +341 -0
  139. package/scss/design-system-filled/molecules/field-money.scss +14 -0
  140. package/scss/design-system-filled/molecules/field-number.scss +14 -0
  141. package/scss/design-system-filled/molecules/field-password.scss +23 -0
  142. package/scss/design-system-filled/molecules/field-percentage.scss +14 -0
  143. package/scss/design-system-filled/molecules/field-readonly.scss +24 -0
  144. package/scss/design-system-filled/molecules/field-text.scss +14 -0
  145. package/scss/design-system-filled/molecules/label-check-box.scss +72 -0
  146. package/scss/design-system-filled/molecules/label-radio-button.scss +79 -0
  147. package/scss/design-system-filled/molecules/label-switch.scss +71 -0
  148. package/scss/design-system-filled/molecules/message-empty.scss +80 -0
  149. package/scss/design-system-filled/molecules/pagination.scss +114 -0
  150. package/scss/design-system-filled/molecules/picker-day-range.scss +109 -0
  151. package/scss/design-system-filled/molecules/picker-day.scss +110 -0
  152. package/scss/design-system-filled/molecules/picker-month.scss +67 -0
  153. package/scss/design-system-filled/molecules/picker-selector-title.scss +55 -0
  154. package/scss/design-system-filled/molecules/picker-year.scss +113 -0
  155. package/scss/design-system-filled/molecules/slider.scss +74 -0
  156. package/scss/design-system-filled/molecules/tabs.scss +48 -0
  157. package/scss/design-system-filled/molecules/toolbar.scss +53 -0
  158. package/scss/design-system-filled/organisms/bottom-sheet.scss +108 -0
  159. package/scss/design-system-filled/organisms/card.scss +27 -0
  160. package/scss/design-system-filled/organisms/confirmation.scss +186 -0
  161. package/scss/design-system-filled/organisms/data-table.scss +435 -0
  162. package/scss/design-system-filled/organisms/dropdown.scss +44 -0
  163. package/scss/design-system-filled/organisms/field-autocomplete.scss +79 -0
  164. package/scss/design-system-filled/organisms/field-clock.scss +62 -0
  165. package/scss/design-system-filled/organisms/field-date-range.scss +60 -0
  166. package/scss/design-system-filled/organisms/field-date.scss +61 -0
  167. package/scss/design-system-filled/organisms/field-select.scss +18 -0
  168. package/scss/design-system-filled/organisms/form-navigation.scss +46 -0
  169. package/scss/design-system-filled/organisms/form.scss +27 -0
  170. package/scss/design-system-filled/organisms/image-chooser.scss +50 -0
  171. package/scss/design-system-filled/organisms/image-editor-modal.scss +23 -0
  172. package/scss/design-system-filled/organisms/image-editor.scss +118 -0
  173. package/scss/design-system-filled/organisms/modal-sheet.scss +138 -0
  174. package/scss/design-system-filled/organisms/modal.scss +75 -0
  175. package/scss/design-system-filled/organisms/picker-clock.scss +144 -0
  176. package/scss/design-system-filled/organisms/picker-date-range.scss +88 -0
  177. package/scss/design-system-filled/organisms/picker-date.scss +90 -0
  178. package/scss/design-system-filled/organisms/snackbar.scss +93 -0
  179. package/scss/foundations/borders.scss +14 -14
  180. package/scss/foundations/colors.scss +30 -30
  181. package/scss/foundations/elevations.scss +130 -128
  182. package/scss/foundations/flex-boxs.scss +96 -96
  183. package/scss/foundations/helpers.scss +123 -123
  184. package/scss/foundations/sizings.scss +6 -0
  185. package/scss/foundations/themes.scss +230 -230
  186. package/scss/styles.scss +0 -1
  187. package/scss/utilities/helpers.scss +124 -124
  188. package/scss/utilities/layout.scss +83 -83
  189. package/scss/utilities/texts.scss +5 -2
  190. package/scss/utilities/typographics.scss +208 -186
  191. package/scss/components.scss +0 -31
  192. /package/scss/{components → design-system-bordered/organisms}/form.scss +0 -0
@@ -0,0 +1,435 @@
1
+ // Rolster Technology Datatable Component
2
+ // v2.6.11
3
+ // @license MIT
4
+ // Author: Rolster Developers
5
+ // Created: 23/Abr/2026
6
+ // Updated: 27/Abr/2026
7
+
8
+ @mixin datatable_cell_vars() {
9
+ --rlc-field-box-body-background: transparent;
10
+ --rlc-field-box-body-background-focused: transparent;
11
+ --rlc-field-box-body-background-disabled: transparent;
12
+ --rlc-field-box-body-padding: 0rem;
13
+ --rlc-field-box-body-border: none;
14
+ --rlc-field-box-body-border-focused: none;
15
+ --rlc-field-box-body-border-error: none;
16
+ --rlc-field-box-body-border-disabled: none;
17
+ --rlc-field-box-body-shadow: none;
18
+ --rlc-field-box-body-shadow-error: none;
19
+ --rlc-field-box-action-background: transparent;
20
+
21
+ --rlc-field-list-control-font-size: var(--pvt-datatable-font-size);
22
+ --rlc-field-list-control-font-weight: var(--rls-font-weight-medium);
23
+ --rlc-field-list-control-letter-spacing: var(--rls-body-letter-spacing);
24
+ --rlc-field-list-element-padding: var(--rls-sizing-x4);
25
+ --rlc-field-list-suggestions-bottom: var(--rls-sizing-x24);
26
+ --rlc-field-list-suggestions-top: var(--rls-sizing-x24);
27
+
28
+ --rlc-poster-font-size: var(--pvt-datatable-font-size);
29
+ --rlc-poster-width: calc(100% - var(--rls-sizing-x2));
30
+ --rlc-poster-height: var(--rls-sizing-x8);
31
+ --rlc-poster-padding: var(--rls-sizing-x2);
32
+ }
33
+
34
+ @mixin datatable_cell_control() {
35
+ --rlc-action-ripple-dimension: var(--rls-sizing-x16);
36
+ --rlc-action-ripple-position: -8rem;
37
+
38
+ --rlc-avatar-radius: var(--rls-sizing-x3);
39
+ --rlc-avatar-width: var(--rls-sizing-x16);
40
+ --rlc-avatar-height: var(--rls-sizing-x16);
41
+ --rlc-avatar-font-size: var(--pvt-datatable-font-size);
42
+
43
+ --rlc-image-width: var(--rls-sizing-x12);
44
+ --rlc-image-height: var(--rls-sizing-x12);
45
+
46
+ --rlc-switch-max-width: var(--rls-sizing-x16);
47
+ --rlc-switch-component-height: var(--rls-sizing-x8);
48
+ --rlc-switch-element-width: var(--rls-sizing-x6);
49
+ --rlc-switch-element-height: var(--rls-sizing-x4);
50
+ --rlc-switch-element-radius: var(--rls-sizing-x4);
51
+
52
+ display: flex;
53
+ justify-content: center;
54
+ align-items: center;
55
+ width: var(--rls-sizing-x24);
56
+ padding: 0rem;
57
+
58
+ & > img {
59
+ width: var(--rls-sizing-x12);
60
+ }
61
+ }
62
+
63
+ @mixin datatable_cell_styles() {
64
+ &--contained {
65
+ overflow: hidden;
66
+ }
67
+
68
+ &--control {
69
+ @include datatable_cell_control();
70
+ }
71
+
72
+ & > span {
73
+ display: block;
74
+ white-space: nowrap;
75
+ text-overflow: ellipsis;
76
+ overflow: hidden;
77
+ }
78
+
79
+ & > p {
80
+ display: block;
81
+ width: 100%;
82
+ white-space: nowrap;
83
+ text-overflow: ellipsis;
84
+ overflow: hidden;
85
+ }
86
+
87
+ .rls-field-list {
88
+ --rlc-field-box-body-padding: var(--rls-sizing-x4) 0rem;
89
+ --rlc-field-box-action-dimension: var(--rls-sizing-x10);
90
+ }
91
+
92
+ .rls-poster {
93
+ overflow: hidden;
94
+ text-overflow: ellipsis;
95
+ white-space: nowrap;
96
+ }
97
+
98
+ & > a {
99
+ &:hover {
100
+ color: var(--rls-app-color-700);
101
+ text-decoration: underline;
102
+ }
103
+ }
104
+ }
105
+
106
+ .rls-datatable {
107
+ --pvt-datatable-font-size: var(
108
+ --rlc-datatable-font-size,
109
+ var(--rls-label-font-size)
110
+ );
111
+
112
+ --pvt-datatable-letter-spacing: var(
113
+ --rlc-datatable-letter-spacing,
114
+ var(--rls-label-letter-spacing)
115
+ );
116
+
117
+ --pvt-datatable-font-color: var(
118
+ --rlc-datatable-font-color,
119
+ var(--rls-app-color-900)
120
+ );
121
+
122
+ --pvt-datatable-padding-component: 0rem;
123
+ --pvt-datatable-padding-scroll: var(--rlc-datatable-padding-scroll, 0rem);
124
+
125
+ --pvt-datatable-table-overflow: initial;
126
+ --pvt-datatable-body-overflow: initial;
127
+
128
+ --pvt-datatable-border-radius: var(
129
+ --rlc-datatable-border-radius,
130
+ var(--rls-sizing-x6)
131
+ );
132
+
133
+ --pvt-datatable-header-padding-right: var(--pvt-datatable-padding-scroll);
134
+ --pvt-datatable-header-background: var(
135
+ --rlc-datatable-header-background,
136
+ var(--rls-app-color-200)
137
+ );
138
+
139
+ --pvt-datatable-row-background: var(
140
+ --rlc-datatable-row-background,
141
+ var(--rls-app-color-050)
142
+ );
143
+
144
+ --pvt-datatable-summary-background: var(
145
+ --rlc-datatable-summary-background,
146
+ var(--rls-app-color-200)
147
+ );
148
+
149
+ --pvt-datatable-footer-background: var(
150
+ --rlc-datatable-footer-background,
151
+ var(--rls-app-color-200)
152
+ );
153
+
154
+ --pvt-datatable-floating-background: var(--rls-app-color-200);
155
+
156
+ --rlc-amount-font-size: var(--pvt-datatable-font-size);
157
+ --rlc-amount-width: 100%;
158
+
159
+ --rlc-badge-padding: 0.5rem var(--rls-sizing-x2);
160
+
161
+ --rlc-ballot-padding: 0rem;
162
+ --rlc-ballot-component-row-gap: var(--rls-sizing-x1);
163
+ --rlc-ballot-title-letter-spacing: var(--rls-smalltext-letter-spacing);
164
+ --rlc-ballot-title-font-size: var(--rls-smalltext-font-size);
165
+ --rlc-ballot-title-line-height: var(--rls-smalltext-line-height);
166
+ --rlc-ballot-subtitle-letter-spacing: var(--rls-overline-letter-spacing);
167
+ --rlc-ballot-subtitle-font-size: var(--rls-overline-font-size);
168
+ --rlc-ballot-subtitle-line-height: var(--rls-overline-line-height);
169
+
170
+ --rlc-field-box-body-background: transparent;
171
+ --rlc-field-box-padding: 0rem;
172
+ --rlc-field-box-width: 100%;
173
+ --rlc-field-box-error-display: none;
174
+ --rlc-field-box-label-display: none;
175
+
176
+ --rlc-input-font-size: var(--pvt-datatable-font-size);
177
+ --rlc-input-letter-spacing: var(--pvt-datatable-letter-spacing);
178
+
179
+ --rlc-skeleton-text-column-gap: var(--rls-sizing-x2);
180
+
181
+ position: relative;
182
+ display: flex;
183
+ width: 100%;
184
+ height: var(--rlc-datatable-height, auto);
185
+ flex-direction: column;
186
+ row-gap: var(--rls-sizing-x6);
187
+ border-radius: var(--rls-sizing-x4);
188
+ box-sizing: border-box;
189
+
190
+ &--resizable {
191
+ --pvt-datatable-table-overflow: hidden;
192
+ --pvt-datatable-body-overflow: auto;
193
+
194
+ height: 100%;
195
+ }
196
+
197
+ &--scrolleable {
198
+ --pvt-datatable-padding-scroll: var(--rls-sizing-x4);
199
+
200
+ --pvt-datatable-header-padding-right: calc(
201
+ var(--pvt-datatable-padding-scroll) +
202
+ var(--rlc-datatable-width-scroll, var(--rls-sizing-x4))
203
+ );
204
+
205
+ --pvt-datatable-padding-component: 0rem
206
+ calc(var(--pvt-datatable-padding-scroll) + 5rem) 0rem 0rem;
207
+ }
208
+
209
+ &__toolbar {
210
+ display: flex;
211
+ flex: 0 0 auto;
212
+ column-gap: var(--rls-sizing-x6);
213
+ padding: var(--pvt-datatable-padding-component);
214
+ box-sizing: border-box;
215
+ background: var(--pvt-datatable-header-background);
216
+ border-radius: var(--pvt-datatable-border-radius);
217
+ }
218
+
219
+ &__table {
220
+ display: flex;
221
+ flex: 0 1 auto;
222
+ overflow: var(--pvt-datatable-table-overflow);
223
+
224
+ & > table {
225
+ display: flex;
226
+ width: 100%;
227
+ flex-direction: column;
228
+ row-gap: var(--rls-sizing-x4);
229
+ border-spacing: 0;
230
+ border-collapse: collapse;
231
+ }
232
+ }
233
+
234
+ &__head {
235
+ flex: 0 0 auto;
236
+ width: 100%;
237
+ padding-right: var(--pvt-datatable-header-padding-right);
238
+ box-sizing: border-box;
239
+ }
240
+
241
+ &__header {
242
+ display: flex;
243
+ column-gap: var(--rls-sizing-x6);
244
+ padding: 0rem var(--rls-sizing-x6);
245
+ box-sizing: border-box;
246
+ background: var(--pvt-datatable-header-background);
247
+ border-radius: var(--pvt-datatable-border-radius);
248
+ }
249
+
250
+ &__title {
251
+ @include datatable_cell_vars();
252
+
253
+ position: relative;
254
+ display: flex;
255
+ min-height: var(--rls-sizing-x20);
256
+ align-items: var(--rlc-datatable-align-items, center);
257
+ justify-content: var(--rlc-datatable-justify-content, flex-start);
258
+ text-align: left;
259
+ white-space: nowrap;
260
+ padding: var(--rls-sizing-x2) 0rem;
261
+ font-size: var(--pvt-datatable-font-size);
262
+ font-weight: var(
263
+ --rlc-datatable-header-font-weight,
264
+ var(--rls-font-weight-semibold)
265
+ );
266
+ letter-spacing: var(--pvt-datatable-letter-spacing);
267
+
268
+ @include datatable_cell_styles();
269
+
270
+ & > * {
271
+ color: var(--rls-app-color-700);
272
+ }
273
+ }
274
+
275
+ &__body {
276
+ display: flex;
277
+ flex: 1 1 auto;
278
+ flex-direction: column;
279
+ row-gap: var(--rls-sizing-x6);
280
+ padding-right: var(--pvt-datatable-padding-scroll);
281
+ box-sizing: border-box;
282
+ overflow-y: var(--pvt-datatable-body-overflow);
283
+ }
284
+
285
+ &__subheader,
286
+ &__record,
287
+ &__totals {
288
+ position: relative;
289
+ display: flex;
290
+ column-gap: var(--rls-sizing-x6);
291
+ padding: 0rem var(--rls-sizing-x6);
292
+ box-sizing: border-box;
293
+ background: var(--pvt-datatable-row-background);
294
+ border-radius: var(--pvt-datatable-border-radius);
295
+
296
+ &--contained {
297
+ overflow: hidden;
298
+ }
299
+
300
+ &--success {
301
+ --pvt-datatable-floating-background: var(--rls-success-color-200);
302
+
303
+ background: var(--rls-success-color-100);
304
+ }
305
+
306
+ &--info {
307
+ --pvt-datatable-floating-background: var(--rls-info-color-200);
308
+
309
+ background: var(--rls-info-color-100);
310
+ }
311
+
312
+ &--warning {
313
+ --pvt-datatable-floating-background: var(--rls-warning-color-200);
314
+
315
+ background: var(--rls-warning-color-100);
316
+ }
317
+
318
+ &--error {
319
+ --pvt-datatable-floating-background: var(--rls-danger-color-200);
320
+
321
+ background: var(--rls-danger-color-100);
322
+ }
323
+ }
324
+
325
+ &__subheader {
326
+ --pvt-data-font-color: var(--rls-app-color-700);
327
+ --pvt-data-font-weight: var(--rls-font-weight-semibold);
328
+
329
+ position: sticky;
330
+ top: 0px;
331
+ z-index: var(--rls-z-index-4);
332
+ background: var(--pvt-datatable-header-background);
333
+ }
334
+
335
+ &__cell,
336
+ &__data {
337
+ @include datatable_cell_vars();
338
+
339
+ position: relative;
340
+ display: flex;
341
+ min-height: var(--rls-sizing-x20);
342
+ align-items: var(--rlc-datatable-align-items, center);
343
+ justify-content: var(--rlc-datatable-justify-content, flex-start);
344
+ cursor: default;
345
+ text-align: left;
346
+ padding: var(--rls-sizing-x2) 0rem;
347
+ font-size: var(--pvt-datatable-font-size);
348
+ font-weight: var(
349
+ --rlc-datatable-cell-font-weight,
350
+ var(--rls-font-weight-regular)
351
+ );
352
+ letter-spacing: var(--pvt-datatable-letter-spacing);
353
+
354
+ @include datatable_cell_styles();
355
+ }
356
+
357
+ &__cell {
358
+ color: var(--pvt-datatable-font-color);
359
+ font-weight: var(--rls-font-weight-regular);
360
+ }
361
+
362
+ &__data {
363
+ color: var(--pvt-data-font-color, var(--pvt-datatable-font-color));
364
+ font-weight: var(--pvt-data-font-weight, var(--rls-font-weight-regular));
365
+ }
366
+
367
+ &__floating {
368
+ --pvt-action-tooltip-left: 0;
369
+ --pvt-action-tooltip-right: initial;
370
+ --pvt-action-tooltip-transform: translate(
371
+ calc(-100% - var(--rls-sizing-x4))
372
+ );
373
+
374
+ position: absolute;
375
+ display: flex;
376
+ left: initial;
377
+ right: 0;
378
+ height: 100%;
379
+ column-gap: 4rem;
380
+ align-items: center;
381
+ z-index: var(--rls-z-index-2);
382
+ padding: 0rem var(--rls-sizing-x6);
383
+ background: var(--pvt-datatable-floating-background);
384
+ border-right: none;
385
+ transform: translateX(calc(100% - var(--rls-sizing-x4)));
386
+ transition: transform 240ms var(--rls-standard-curve);
387
+
388
+ &:hover {
389
+ transform: translateX(0);
390
+ }
391
+
392
+ &--invested {
393
+ --pvt-action-tooltip-left: initial;
394
+ --pvt-action-tooltip-right: 0;
395
+ --pvt-action-tooltip-transform: translate(
396
+ calc(100% + var(--rls-sizing-x4))
397
+ );
398
+
399
+ right: initial;
400
+ left: 0;
401
+ transform: translateX(calc(-100% + var(--rls-sizing-x4)));
402
+ }
403
+
404
+ &[rls-theme] {
405
+ background: var(--rls-theme-color-050);
406
+ }
407
+
408
+ .rls-button-action__tooltip {
409
+ top: 0;
410
+ left: var(--pvt-action-tooltip-left);
411
+ right: var(--pvt-action-tooltip-right);
412
+ transform: var(--pvt-action-tooltip-transform);
413
+ z-index: var(--rls-z-index-2);
414
+ }
415
+ }
416
+
417
+ &__summary {
418
+ --pvt-datatable-row-background: var(--pvt-datatable-summary-background);
419
+
420
+ flex: 0 0 auto;
421
+ padding-right: var(--pvt-datatable-header-padding-right);
422
+ box-sizing: border-box;
423
+ }
424
+
425
+ &__footer {
426
+ --pvt-datatable-row-background: var(--pvt-datatable-footer-background);
427
+
428
+ position: relative;
429
+ flex: 0 0 auto;
430
+ width: 100%;
431
+ overflow: hidden;
432
+ padding: var(--pvt-datatable-padding-component);
433
+ box-sizing: border-box;
434
+ }
435
+ }
@@ -0,0 +1,44 @@
1
+ // Rolster Technology Dropdown Component
2
+ // v1.0.2
3
+ // @license MIT
4
+ // Author: Rolster Developers
5
+ // Created: 23/Abr/2026
6
+ // Updated: 28/Abr/2026
7
+
8
+ .rls-dropdown {
9
+ --pvt-content-opacity: 0;
10
+ --pvt-content-transform: scale(0, 0);
11
+
12
+ position: var(--rlc-dropdown-position, absolute);
13
+ display: block;
14
+ opacity: 0;
15
+ width: auto;
16
+ z-index: -16;
17
+ pointer-events: none;
18
+ transition: opacity 240ms 0ms var(--rls-standard-curve);
19
+
20
+ &--visible {
21
+ --pvt-content-opacity: 1;
22
+ --pvt-content-transform: scale(1, 1);
23
+
24
+ opacity: 1;
25
+ pointer-events: initial;
26
+ z-index: var(--rlc-dropdown-z-index, var(--rls-z-index-4));
27
+ }
28
+
29
+ &__content {
30
+ display: block;
31
+ width: auto;
32
+ max-width: var(--rlc-dropdown-max-width, 150rem);
33
+ border-radius: var(--rlc-dropdown-radius, var(--rls-sizing-x6));
34
+ padding: var(--rlc-dropdown-padding, var(--rls-sizing-x6));
35
+ box-sizing: border-box;
36
+ background: var(--rlc-dropdown-background, var(--rls-app-color-050));
37
+ box-shadow: var(--rls-app-shadow-center-4);
38
+ opacity: var(--pvt-content-opacity);
39
+ transform: var(--pvt-content-transform);
40
+ transition:
41
+ transform 240ms 0ms var(--rls-standard-curve),
42
+ opacity 240ms 0ms var(--rls-standard-curve);
43
+ }
44
+ }
@@ -0,0 +1,79 @@
1
+ // Rolster Technology FieldAutocomplete Component
2
+ // v1.0.7
3
+ // @license MIT
4
+ // Author: Rolster Developers
5
+ // Created: 23/Abr/2026
6
+ // Updated: 23/Abr/2026
7
+
8
+ .rls-field-autocomplete {
9
+ --pvt-control-width: 100%;
10
+ --pvt-control-opacity: 1;
11
+
12
+ &.rls-field-box--selected {
13
+ --pvt-control-width: calc(100% - var(--pvt-action-dimension));
14
+ }
15
+
16
+ &.rls-field-box--disabled {
17
+ --pvt-control-opacity: 0.5;
18
+ }
19
+
20
+ .rls-field-list__ul {
21
+ &__search {
22
+ display: flex;
23
+ align-items: center;
24
+ width: 100%;
25
+ margin-top: var(--rls-sizing-x2);
26
+ margin-bottom: var(--rls-sizing-x6);
27
+ background: var(--rls-app-color-100);
28
+ border-radius: var(--rls-sizing-x4);
29
+ padding: var(--rls-sizing-x4);
30
+ box-sizing: border-box;
31
+
32
+ button {
33
+ color: var(--rls-app-color-600);
34
+ background: transparent;
35
+
36
+ &:not(:disabled):hover {
37
+ color: var(--rls-theme-color-300);
38
+ }
39
+
40
+ &:disabled {
41
+ opacity: 0.5;
42
+ }
43
+ }
44
+ }
45
+
46
+ &__control {
47
+ width: 100%;
48
+ height: var(--rls-sizing-x12);
49
+ line-height: var(--rls-sizing-x12);
50
+ padding: 0rem;
51
+ cursor: text;
52
+ border: none;
53
+ outline: none;
54
+ background: transparent;
55
+ color: var(--rls-app-color-900);
56
+ font-size: var(--rls-input-font-size);
57
+ font-weight: var(--rls-font-weight-medium);
58
+ letter-spacing: var(--rls-input-letter-spacing);
59
+
60
+ &::placeholder {
61
+ color: var(--rls-app-color-400);
62
+ }
63
+
64
+ &::selection {
65
+ background: var(--rls-theme-color-700);
66
+ color: var(--rls-app-color-050);
67
+ }
68
+
69
+ &:disabled {
70
+ opacity: 0.5;
71
+ pointer-events: none;
72
+ }
73
+ }
74
+
75
+ .rls-progress-bar {
76
+ margin-bottom: var(--rls-sizing-x8);
77
+ }
78
+ }
79
+ }
@@ -0,0 +1,62 @@
1
+ // Rolster Technology FieldClock Component
2
+ // v1.1.0
3
+ // @license MIT
4
+ // Author: Rolster Developers
5
+ // Created: 23/Abr/2026
6
+ // Updated: 23/Abr/2026
7
+
8
+ .rls-field-clock {
9
+ --rlc-field-box-body-padding: var(--rls-sizing-x3) var(--rls-sizing-x4);
10
+
11
+ --pvt-font-size: var(--rlc-field-clock-font-size, var(--rls-input-font-size));
12
+
13
+ --pvt-letter-spacing: var(
14
+ --rlc-field-clock-letter-spacing,
15
+ var(--rls-input-letter-spacing)
16
+ );
17
+
18
+ position: relative;
19
+ width: 100%;
20
+ box-sizing: border-box;
21
+
22
+ .rls-field-box--readonly {
23
+ --pvt-control-width: 100%;
24
+ }
25
+
26
+ .rls-field-box__body {
27
+ column-gap: var(--rls-sizing-x2);
28
+ }
29
+
30
+ &__control {
31
+ position: relative;
32
+ width: 100%;
33
+ height: var(--rls-sizing-x12);
34
+ line-height: var(--rls-sizing-x12);
35
+ padding: 0rem;
36
+ cursor: default;
37
+ border: none;
38
+ outline: none;
39
+ background: transparent;
40
+ color: var(--rls-app-color-900);
41
+ font-weight: var(--rls-font-weight-medium);
42
+ font-size: var(--pvt-font-size);
43
+ letter-spacing: var(--pvt-letter-spacing);
44
+
45
+ &::placeholder {
46
+ color: var(--rls-app-color-400);
47
+ }
48
+
49
+ &:disabled {
50
+ opacity: 0.5;
51
+ cursor: not-allowed;
52
+ }
53
+ }
54
+ }
55
+
56
+ .rls-field-clock-modal {
57
+ --rlc-modal-background: transparent;
58
+ --rlc-modal-max-width: 150rem;
59
+ --rlc-picker-clock-radius: var(--rls-sizing-x6);
60
+ --rlc-picker-clock-background: var(--rls-app-color-050);
61
+ --rlc-picker-clock-padding: var(--rls-sizing-x4) 0rem;
62
+ }
@@ -0,0 +1,60 @@
1
+ // Rolster Technology FieldDateRange Component
2
+ // v1.1.8
3
+ // @license MIT
4
+ // Author: Rolster Developers
5
+ // Created: 23/Abr/2026
6
+ // Updated: 23/Abr/2026
7
+
8
+ .rls-field-date-range {
9
+ --rlc-field-box-body-padding: var(--rls-sizing-x3) var(--rls-sizing-x4);
10
+
11
+ --pvt-font-size: var(
12
+ --rlc-field-date-range-font-size,
13
+ var(--rls-input-font-size)
14
+ );
15
+
16
+ --pvt-letter-spacing: var(
17
+ --rlc-field-date-range-letter-spacing,
18
+ var(--rls-input-letter-spacing)
19
+ );
20
+
21
+ position: relative;
22
+ width: 100%;
23
+ box-sizing: border-box;
24
+
25
+ .rls-field-box--readonly {
26
+ --pvt-control-width: 100%;
27
+ }
28
+
29
+ &__control {
30
+ position: relative;
31
+ width: 100%;
32
+ height: var(--rls-sizing-x12);
33
+ line-height: var(--rls-sizing-x12);
34
+ padding: 0rem;
35
+ cursor: default;
36
+ border: none;
37
+ outline: none;
38
+ background: transparent;
39
+ color: var(--rls-app-color-900);
40
+ font-weight: var(--rls-font-weight-medium);
41
+ font-size: var(--pvt-font-size);
42
+ letter-spacing: var(--pvt-letter-spacing);
43
+
44
+ &::placeholder {
45
+ color: var(--rls-app-color-400);
46
+ }
47
+
48
+ &:disabled {
49
+ opacity: 0.5;
50
+ cursor: not-allowed;
51
+ }
52
+ }
53
+ }
54
+
55
+ .rls-field-date-range-modal {
56
+ --rlc-modal-background: transparent;
57
+ --rlc-modal-max-width: 150rem;
58
+ --rlc-picker-date-range-radius: var(--rls-sizing-x6);
59
+ --rlc-picker-date-range-background: var(--rls-app-color-050);
60
+ }