@rolemodel/optics 2.0.1 → 2.1.2

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 (47) hide show
  1. package/.yarn/install-state.gz +0 -0
  2. package/dist/LICENSE +21 -0
  3. package/dist/README.md +78 -0
  4. package/dist/css/addons/fonts/feather_icons.css +939 -0
  5. package/dist/css/addons/fonts/lucide_icons.css +4672 -0
  6. package/dist/css/addons/fonts/material_symbols_outlined_variable.css +10 -0
  7. package/dist/css/addons/fonts/phosphor_icons.css +44 -0
  8. package/dist/css/addons/fonts/tabler_icons.css +11 -0
  9. package/dist/css/optics.css +4964 -7
  10. package/dist/css/optics.min.css +1 -4934
  11. package/dist/package.json +87 -0
  12. package/package.json +6 -4
  13. package/postcss.config.js +6 -3
  14. package/dist/css/components/accordion.css +0 -66
  15. package/dist/css/components/alert.css +0 -171
  16. package/dist/css/components/avatar.css +0 -95
  17. package/dist/css/components/badge.css +0 -73
  18. package/dist/css/components/breadcrumbs.css +0 -37
  19. package/dist/css/components/button.css +0 -273
  20. package/dist/css/components/button_group.css +0 -47
  21. package/dist/css/components/card.css +0 -62
  22. package/dist/css/components/confirm-dialog.css +0 -80
  23. package/dist/css/components/divider.css +0 -55
  24. package/dist/css/components/form.css +0 -360
  25. package/dist/css/components/icon.css +0 -114
  26. package/dist/css/components/index.css +0 -24
  27. package/dist/css/components/modal.css +0 -149
  28. package/dist/css/components/navbar.css +0 -60
  29. package/dist/css/components/pagination.css +0 -24
  30. package/dist/css/components/side_panel.css +0 -90
  31. package/dist/css/components/sidebar.css +0 -139
  32. package/dist/css/components/spinner.css +0 -52
  33. package/dist/css/components/switch.css +0 -107
  34. package/dist/css/components/tab.css +0 -76
  35. package/dist/css/components/table.css +0 -133
  36. package/dist/css/components/tag.css +0 -168
  37. package/dist/css/components/text_pair.css +0 -55
  38. package/dist/css/components/tooltip.css +0 -134
  39. package/dist/css/core/base.css +0 -95
  40. package/dist/css/core/layout.css +0 -43
  41. package/dist/css/core/tokens/base_tokens.css +0 -354
  42. package/dist/css/core/tokens/index.css +0 -2
  43. package/dist/css/core/tokens/scale_color_tokens.css +0 -1498
  44. package/dist/css/core/utilities.css +0 -429
  45. package/dist/css/recipes/16six-sidebar.css +0 -63
  46. package/dist/css/recipes/aligned-header.css +0 -16
  47. package/dist/css/recipes/domains-sidebar.css +0 -40
@@ -1,273 +0,0 @@
1
- .btn {
2
- /* Public API (customizable component options) */
3
- --_op-btn-height-small: var(--op-input-height-small);
4
- --_op-btn-height-medium: var(--op-input-height-medium);
5
- --_op-btn-height-large: var(--op-input-height-large);
6
- --_op-btn-font-small: var(--op-font-x-small);
7
- --_op-btn-font-medium: var(--op-font-small);
8
- --_op-btn-font-large: var(--op-font-small);
9
- --_op-btn-padding-small: 0 var(--op-space-x-small);
10
- --_op-btn-padding-medium: 0 var(--op-space-small);
11
- --_op-btn-padding-large: 0 var(--op-space-small);
12
-
13
- /* Private API (component option defaults) */
14
- --__op-btn-height: var(--_op-btn-height-large);
15
- --__op-btn-font-size: var(--_op-btn-font-large);
16
- --__op-btn-padding: var(--_op-btn-padding-large);
17
-
18
- display: inline-flex;
19
- min-height: var(--__op-btn-height);
20
- align-items: center;
21
- justify-content: center;
22
- padding: var(--__op-btn-padding);
23
- border-radius: var(--op-radius-medium);
24
- appearance: none;
25
- background-color: var(--op-color-neutral-plus-eight);
26
- box-shadow: inset var(--op-border-all) var(--op-color-neutral-plus-four);
27
- color: var(--op-color-neutral-on-plus-eight);
28
- cursor: pointer;
29
- font-size: var(--__op-btn-font-size);
30
- font-weight: var(--op-font-weight-normal);
31
- gap: var(--op-space-x-small);
32
- text-align: center;
33
- text-decoration: none;
34
- transition: var(--op-transition-input);
35
- white-space: nowrap;
36
-
37
- /* Modifiers */
38
-
39
- /* Default Active State */
40
- &.btn--active {
41
- background-color: var(--op-color-primary-plus-five);
42
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
43
- color: var(--op-color-primary-on-plus-five);
44
- }
45
-
46
- /* Default Hover State */
47
- &:hover {
48
- background-color: var(--op-color-primary-plus-eight);
49
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
50
- color: var(--op-color-primary-on-plus-eight);
51
- }
52
-
53
- /* Default Focus State */
54
- &:focus-visible {
55
- background-color: var(--op-color-neutral-plus-eight);
56
- box-shadow: var(--op-input-focus-primary);
57
- color: var(--op-color-neutral-on-plus-eight);
58
- }
59
-
60
- /* Default Borderless State */
61
- &.btn--no-border {
62
- background-color: transparent;
63
- box-shadow: none;
64
- color: var(--op-color-primary-on-plus-max);
65
-
66
- /* Default Borderless + Active State. */
67
- &.btn--active {
68
- background-color: var(--op-color-primary-plus-five);
69
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
70
- color: var(--op-color-primary-on-plus-five);
71
- }
72
-
73
- /* Default Borderless + Hover State */
74
- &:hover {
75
- background-color: var(--op-color-primary-plus-eight);
76
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-five);
77
- color: var(--op-color-primary-on-plus-eight);
78
- }
79
-
80
- /* Default Borderless + Focus State */
81
- &:focus-visible {
82
- background-color: var(--op-color-primary-plus-eight);
83
- box-shadow: var(--op-input-focus-primary);
84
- color: var(--op-color-primary-on-plus-eight);
85
- }
86
- }
87
-
88
- /* Pill Modifier */
89
- &.btn--pill {
90
- border-radius: var(--op-radius-pill);
91
- }
92
-
93
- /* Icon Modifier */
94
- &.btn--icon {
95
- width: var(--__op-btn-height);
96
- min-width: var(--__op-btn-height);
97
- padding: 0;
98
- }
99
-
100
- /* Icon With Label Modifier */
101
- &.btn--icon-with-label {
102
- flex-direction: column;
103
- padding: var(--op-space-small);
104
- gap: var(--op-space-3x-small);
105
- }
106
-
107
- /* Size Modifiers */
108
- &.btn--small {
109
- --__op-btn-height: var(--_op-btn-height-small);
110
- --__op-btn-font-size: var(--_op-btn-font-small);
111
- --__op-btn-padding: var(--_op-btn-padding-small);
112
- }
113
-
114
- &.btn--medium {
115
- --__op-btn-height: var(--_op-btn-height-medium);
116
- --__op-btn-font-size: var(--_op-btn-font-medium);
117
- --__op-btn-padding: var(--_op-btn-padding-medium);
118
- }
119
-
120
- &.btn--large {
121
- --__op-btn-height: var(--_op-btn-height-large);
122
- --__op-btn-font-size: var(--_op-btn-font-large);
123
- --__op-btn-padding: var(--_op-btn-padding-large);
124
- }
125
-
126
- /* Disabled Modifier */
127
- &.btn--disabled,
128
- &:disabled {
129
- opacity: var(--op-opacity-disabled);
130
- pointer-events: none;
131
- -webkit-user-select: none; /* stylelint-disable property-no-vendor-prefix */
132
- user-select: none;
133
- }
134
-
135
- /* Button with notification style badge */
136
- &.btn--with-badge {
137
- position: relative;
138
- }
139
-
140
- /* Focus State */
141
- &:focus,
142
- &:focus-within,
143
- &:focus-visible {
144
- outline: none;
145
- }
146
-
147
- /* https:/*uxmovement.com/mobile/optimal-size-and-spacing-for-mobile-buttons/ */
148
-
149
- /* --op-breakpoint-small */
150
- @media (width <= 768px) {
151
- --__op-btn-height: var(--_op-btn-height-large);
152
- --__op-btn-font-size: var(--_op-btn-font-large);
153
-
154
- &.btn--small,
155
- &.btn--medium,
156
- &.btn--large {
157
- --__op-btn-height: var(--_op-btn-height-large);
158
- --__op-btn-font-size: var(--_op-btn-font-large);
159
- --__op-btn-padding: var(--_op-btn-padding-large);
160
- }
161
- }
162
-
163
- /* Variant Modifiers */
164
- &.btn--primary {
165
- background-color: var(--op-color-primary-base);
166
- box-shadow: inset var(--op-border-all) var(--op-color-primary-base);
167
- color: var(--op-color-primary-on-base);
168
-
169
- /* Active State */
170
- &.btn--active {
171
- background-color: var(--op-color-primary-minus-five);
172
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-two);
173
- color: var(--op-color-primary-on-minus-five);
174
- }
175
-
176
- /* Hover State */
177
- &:hover {
178
- background-color: var(--op-color-primary-plus-one);
179
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-one);
180
- color: var(--op-color-primary-on-plus-one);
181
- }
182
-
183
- /* Focus State */
184
- &:focus-visible {
185
- background-color: var(--op-color-primary-base);
186
- box-shadow: var(--op-input-focus-primary);
187
- color: var(--op-color-primary-on-base);
188
- }
189
-
190
- /* Borderless State */
191
- &.btn--no-border {
192
- background-color: transparent;
193
- box-shadow: none;
194
- color: var(--op-color-primary-base);
195
-
196
- /* Borderless + Active State */
197
- &.btn--active {
198
- background-color: var(--op-color-primary-plus-five);
199
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
200
- color: var(--op-color-primary-on-plus-five);
201
- }
202
-
203
- /* Borderless + Hover State */
204
- &:hover {
205
- background-color: var(--op-color-primary-plus-eight);
206
- box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-five);
207
- color: var(--op-color-primary-on-plus-eight);
208
- }
209
-
210
- /* Borderless + Focus State */
211
- &:focus-visible {
212
- background-color: var(--op-color-primary-plus-eight);
213
- box-shadow: var(--op-input-focus-primary);
214
- color: var(--op-color-primary-on-plus-eight);
215
- }
216
- }
217
- }
218
-
219
- &.btn--destructive,
220
- &.btn--delete {
221
- background-color: var(--op-color-alerts-danger-base);
222
- box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-base);
223
- color: var(--op-color-alerts-danger-on-base);
224
-
225
- /* Active State */
226
- &.btn--active {
227
- background-color: var(--op-color-alerts-danger-plus-five);
228
- box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-plus-three);
229
- color: var(--op-color-alerts-danger-on-plus-five);
230
- }
231
-
232
- /* Hover State */
233
- &:hover {
234
- background-color: var(--op-color-alerts-danger-minus-two);
235
- box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-minus-two);
236
- color: var(--op-color-alerts-danger-on-minus-two);
237
- }
238
-
239
- /* Focus State */
240
- &:focus-visible {
241
- background-color: var(--op-color-alerts-danger-base);
242
- box-shadow: var(--op-input-focus-danger);
243
- color: var(--op-color-alerts-danger-on-base);
244
- }
245
- }
246
-
247
- &.btn--warning {
248
- background-color: var(--op-color-alerts-warning-base);
249
- box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-base);
250
- color: var(--op-color-alerts-warning-on-base);
251
-
252
- /* Active State */
253
- &.btn--active {
254
- background-color: var(--op-color-alerts-warning-plus-five);
255
- box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-plus-three);
256
- color: var(--op-color-alerts-warning-on-plus-five);
257
- }
258
-
259
- /* Hover State */
260
- &:hover {
261
- background-color: var(--op-color-alerts-warning-minus-two);
262
- box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-minus-two);
263
- color: var(--op-color-alerts-warning-on-minus-two);
264
- }
265
-
266
- /* Focus State */
267
- &:focus-visible {
268
- background-color: var(--op-color-alerts-warning-base);
269
- box-shadow: var(--op-input-focus-warning);
270
- color: var(--op-color-alerts-warning-on-base);
271
- }
272
- }
273
- }
@@ -1,47 +0,0 @@
1
- .btn-group {
2
- --op-btn-group-hover-z-index: 1;
3
- --op-btn-group-active-z-index: 2;
4
- --op-btn-group-focus-z-index: 3;
5
-
6
- display: inline-flex;
7
- align-items: center;
8
-
9
- .btn {
10
- + .btn {
11
- margin-inline-start: calc(var(--op-border-width) * -1);
12
- }
13
-
14
- &:hover {
15
- z-index: var(--op-btn-group-hover-z-index);
16
- }
17
-
18
- &.btn--active {
19
- z-index: var(--op-btn-group-active-z-index);
20
- }
21
-
22
- &:focus,
23
- &:focus-within,
24
- &:focus-visible {
25
- z-index: var(--op-btn-group-focus-z-index);
26
- }
27
-
28
- &:not(:first-child, :last-child) {
29
- border-radius: 0;
30
- }
31
-
32
- &:first-child:not(:last-child) {
33
- border-bottom-right-radius: 0;
34
- border-top-right-radius: 0;
35
- }
36
-
37
- &:last-child:not(:first-child) {
38
- border-bottom-left-radius: 0;
39
- border-top-left-radius: 0;
40
- }
41
- }
42
- }
43
-
44
- .btn-group-toolbar {
45
- display: flex;
46
- flex-wrap: wrap;
47
- }
@@ -1,62 +0,0 @@
1
- .card {
2
- /* Public API (customizable component options) */
3
- --_op-card-padding: var(--op-space-medium);
4
- --_op-card-box-shadow: var(--op-border-all) var(--op-color-border);
5
-
6
- position: relative;
7
- border-radius: var(--op-radius-medium);
8
- background-color: var(--op-color-background);
9
- box-shadow: var(--_op-card-box-shadow);
10
- color: var(--op-color-on-background);
11
- contain: paint;
12
- font-size: var(--op-font-medium);
13
- line-height: var(--op-line-height-base);
14
-
15
- /* Modifiers */
16
-
17
- &.card--condensed {
18
- --_op-card-padding: var(--op-space-x-small);
19
- }
20
-
21
- &.card--padded {
22
- padding: var(--_op-card-padding);
23
- }
24
-
25
- &.card--shadow-x-small {
26
- box-shadow: var(--_op-card-box-shadow), var(--op-shadow-x-small);
27
- }
28
-
29
- &.card--shadow-small {
30
- box-shadow: var(--_op-card-box-shadow), var(--op-shadow-small);
31
- }
32
-
33
- &.card--shadow-medium {
34
- box-shadow: var(--_op-card-box-shadow), var(--op-shadow-medium);
35
- }
36
-
37
- &.card--shadow-large {
38
- box-shadow: var(--_op-card-box-shadow), var(--op-shadow-large);
39
- }
40
-
41
- &.card--shadow-x-large {
42
- box-shadow: var(--_op-card-box-shadow), var(--op-shadow-x-large);
43
- }
44
-
45
- /* Elements */
46
- .card__header,
47
- .card__body,
48
- .card__footer {
49
- padding: var(--_op-card-padding);
50
- }
51
-
52
- .card__header {
53
- h1,
54
- h2,
55
- h3,
56
- h4,
57
- h5,
58
- h6 {
59
- margin: 0;
60
- }
61
- }
62
- }
@@ -1,80 +0,0 @@
1
- .confirm-dialog-wrapper {
2
- position: fixed;
3
- z-index: var(--op-z-index-dialog);
4
- display: flex;
5
- overflow: hidden;
6
- align-items: center;
7
- justify-content: center;
8
- inset: 0;
9
- outline: 0;
10
- visibility: hidden;
11
-
12
- /* Elements */
13
-
14
- .confirm-dialog-wrapper__backdrop {
15
- position: fixed;
16
- z-index: var(--op-z-index-dialog-backdrop);
17
- background: var(--op-color-black);
18
- inset: 0;
19
- opacity: var(--op-opacity-none);
20
- transition: var(--op-transition-modal);
21
- visibility: hidden;
22
- }
23
-
24
- /* Modifiers */
25
-
26
- &.confirm-dialog-wrapper--active {
27
- visibility: visible;
28
-
29
- .confirm-dialog {
30
- opacity: var(--op-opacity-full);
31
- transform: scale(1);
32
- }
33
-
34
- .confirm-dialog-wrapper__backdrop {
35
- opacity: var(--op-opacity-half);
36
- visibility: visible;
37
- }
38
- }
39
- }
40
-
41
- /* stylelint-disable no-descending-specificity */
42
- .confirm-dialog {
43
- /* Public API (customizable component options) */
44
- --_op-confirm-dialog-width: calc(100 * var(--op-size-unit)); /* 400px */
45
-
46
- z-index: var(--op-z-index-dialog-content);
47
- width: var(--_op-confirm-dialog-width);
48
- border-radius: var(--op-radius-medium);
49
- background-color: var(--op-color-background);
50
- box-shadow: var(--op-border-all) var(--op-color-border);
51
- color: var(--op-color-on-background);
52
- contain: paint;
53
- font-size: var(--op-font-medium);
54
- line-height: var(--op-line-height-base);
55
- opacity: var(--op-opacity-none);
56
- transform: scale(0.7);
57
- transition: var(--op-transition-modal);
58
-
59
- .confirm-dialog__header,
60
- .confirm-dialog__body,
61
- .confirm-dialog__footer {
62
- padding: var(--op-space-medium);
63
- }
64
-
65
- .confirm-dialog__header {
66
- font-size: var(--op-font-large);
67
- font-weight: var(--op-font-weight-semi-bold);
68
- }
69
-
70
- .confirm-dialog__body {
71
- box-shadow: var(--op-border-all) var(--op-color-border);
72
- }
73
-
74
- .confirm-dialog__footer {
75
- display: flex;
76
- align-items: center;
77
- justify-content: space-between;
78
- }
79
- }
80
- /* stylelint-enable no-descending-specificity */
@@ -1,55 +0,0 @@
1
- .divider {
2
- /* Public API (customizable component options) */
3
- --_op-divider-vertical-min-height: var(--op-space-large);
4
- --_op-divider-height-small: var(--op-border-width);
5
- --_op-divider-height-medium: var(--op-border-width-large);
6
- --_op-divider-height-large: var(--op-border-width-x-large);
7
- --_op-divider-padding-small: var(--op-space-2x-small);
8
- --_op-divider-padding-medium: var(--op-space-x-small);
9
- --_op-divider-padding-large: var(--op-space-medium);
10
-
11
- /* Private API (component option defaults) */
12
- --__op-divider-height: var(--_op-divider-height-small);
13
- --__op-divider-padding: 0;
14
-
15
- width: 100%;
16
- height: var(--__op-divider-height);
17
- background-color: var(--op-color-border);
18
- margin-block: var(--__op-divider-padding);
19
- margin-inline: 0;
20
-
21
- /* Size Modifiers */
22
- &.divider--small {
23
- --__op-divider-height: var(--_op-divider-height-small);
24
- }
25
-
26
- &.divider--medium {
27
- --__op-divider-height: var(--_op-divider-height-medium);
28
- }
29
-
30
- &.divider--large {
31
- --__op-divider-height: var(--_op-divider-height-large);
32
- }
33
-
34
- /* Spacing Modifiers */
35
- &.divider--spacing-small {
36
- --__op-divider-padding: var(--_op-divider-padding-small);
37
- }
38
-
39
- &.divider--spacing-medium {
40
- --__op-divider-padding: var(--_op-divider-padding-medium);
41
- }
42
-
43
- &.divider--spacing-large {
44
- --__op-divider-padding: var(--_op-divider-padding-large);
45
- }
46
-
47
- /* Direction Modifier */
48
- &.divider--vertical {
49
- width: var(--__op-divider-height);
50
- height: 100%;
51
- min-height: var(--_op-divider-vertical-min-height);
52
- margin-block: 0;
53
- margin-inline: var(--__op-divider-padding);
54
- }
55
- }