@rolemodel/optics 0.2.4 → 0.3.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.
- package/.github/release.yml +53 -0
- package/.github/workflows/publish-storybook.yml +11 -3
- package/.storybook/documentation.scss +64 -36
- package/.storybook/main.js +1 -0
- package/.stylelintrc.json +1 -1
- package/README.md +15 -0
- package/dist/css/optics.css +1911 -1325
- package/dist/css/optics.css.map +1 -1
- package/dist/scss/addons/rails-modal-and-panel/modal.scss +38 -13
- package/dist/scss/addons/rails-modal-and-panel/panel.scss +38 -13
- package/dist/scss/addons/tom-select.scss +22 -22
- package/dist/scss/components/alert.scss +48 -48
- package/dist/scss/components/badge.scss +20 -20
- package/dist/scss/components/button.scss +72 -72
- package/dist/scss/components/card.scss +14 -14
- package/dist/scss/components/flash.scss +24 -24
- package/dist/scss/components/form.scss +48 -48
- package/dist/scss/components/icon.scss +32 -32
- package/dist/scss/components/sidebar.scss +67 -67
- package/dist/scss/components/table.scss +26 -26
- package/dist/scss/core/base.scss +16 -16
- package/dist/scss/core/layout.scss +8 -8
- package/dist/scss/core/tokens/base_tokens.scss +223 -123
- package/dist/scss/core/tokens/dark_mode_tokens.scss +409 -262
- package/dist/scss/core/tokens/scale_color_tokens.scss +408 -240
- package/dist/scss/core/utilities.scss +74 -70
- package/dist/scss/recipes/16six-sidebar.scss +17 -17
- package/dist/scss/recipes/domains-sidebar.scss +9 -9
- package/dist/tokens/tokens.json +567 -276
- package/package.json +4 -2
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
.container {
|
|
4
4
|
width: 100%;
|
|
5
5
|
max-width: $breakpoint-medium;
|
|
6
|
-
padding: 0 var(--
|
|
6
|
+
padding: 0 var(--op-space-large);
|
|
7
7
|
margin: 0 auto;
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
.container--md-padding {
|
|
15
|
-
padding: 0 var(--
|
|
15
|
+
padding: 0 var(--op-space-medium);
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
.container--sm-padding {
|
|
19
|
-
padding: 0 var(--
|
|
19
|
+
padding: 0 var(--op-space-small);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
.container--xs {
|
|
@@ -93,39 +93,39 @@
|
|
|
93
93
|
|
|
94
94
|
// Gap Properties
|
|
95
95
|
.gap-xxs {
|
|
96
|
-
gap: var(--
|
|
96
|
+
gap: var(--op-space-2x-small);
|
|
97
97
|
|
|
98
|
-
--
|
|
98
|
+
--op-gap: var(--op-space-2x-small);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
.gap-xs {
|
|
102
|
-
gap: var(--
|
|
102
|
+
gap: var(--op-space-x-small);
|
|
103
103
|
|
|
104
|
-
--
|
|
104
|
+
--op-gap: var(--op-space-x-small);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
.gap-sm {
|
|
108
|
-
gap: var(--
|
|
108
|
+
gap: var(--op-space-small);
|
|
109
109
|
|
|
110
|
-
--
|
|
110
|
+
--op-gap: var(--op-space-small);
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
.gap-md {
|
|
114
|
-
gap: var(--
|
|
114
|
+
gap: var(--op-space-medium);
|
|
115
115
|
|
|
116
|
-
--
|
|
116
|
+
--op-gap: var(--op-space-medium);
|
|
117
117
|
}
|
|
118
118
|
|
|
119
119
|
.gap-lg {
|
|
120
|
-
gap: var(--
|
|
120
|
+
gap: var(--op-space-large);
|
|
121
121
|
|
|
122
|
-
--
|
|
122
|
+
--op-gap: var(--op-space-large);
|
|
123
123
|
}
|
|
124
124
|
|
|
125
125
|
.gap-xl {
|
|
126
|
-
gap: var(--
|
|
126
|
+
gap: var(--op-space-x-large);
|
|
127
127
|
|
|
128
|
-
--
|
|
128
|
+
--op-gap: var(--op-space-x-large);
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
// Justify Content
|
|
@@ -194,6 +194,10 @@
|
|
|
194
194
|
align-self: stretch;
|
|
195
195
|
}
|
|
196
196
|
|
|
197
|
+
.self-baseline {
|
|
198
|
+
align-self: baseline;
|
|
199
|
+
}
|
|
200
|
+
|
|
197
201
|
// Text Alignment
|
|
198
202
|
|
|
199
203
|
.text-left {
|
|
@@ -215,23 +219,23 @@
|
|
|
215
219
|
// Box Margin
|
|
216
220
|
|
|
217
221
|
.margin-xl {
|
|
218
|
-
margin: var(--
|
|
222
|
+
margin: var(--op-space-x-large);
|
|
219
223
|
}
|
|
220
224
|
|
|
221
225
|
.margin-lg {
|
|
222
|
-
margin: var(--
|
|
226
|
+
margin: var(--op-space-large);
|
|
223
227
|
}
|
|
224
228
|
|
|
225
229
|
.margin-md {
|
|
226
|
-
margin: var(--
|
|
230
|
+
margin: var(--op-space-medium);
|
|
227
231
|
}
|
|
228
232
|
|
|
229
233
|
.margin-sm {
|
|
230
|
-
margin: var(--
|
|
234
|
+
margin: var(--op-space-small);
|
|
231
235
|
}
|
|
232
236
|
|
|
233
237
|
.margin-xs {
|
|
234
|
-
margin: var(--
|
|
238
|
+
margin: var(--op-space-x-small);
|
|
235
239
|
}
|
|
236
240
|
|
|
237
241
|
.margin-none {
|
|
@@ -245,28 +249,28 @@
|
|
|
245
249
|
// Vertical Margin
|
|
246
250
|
|
|
247
251
|
.margin-y-xl {
|
|
248
|
-
margin-top: var(--
|
|
249
|
-
margin-bottom: var(--
|
|
252
|
+
margin-top: var(--op-space-x-large);
|
|
253
|
+
margin-bottom: var(--op-space-x-large);
|
|
250
254
|
}
|
|
251
255
|
|
|
252
256
|
.margin-y-lg {
|
|
253
|
-
margin-top: var(--
|
|
254
|
-
margin-bottom: var(--
|
|
257
|
+
margin-top: var(--op-space-large);
|
|
258
|
+
margin-bottom: var(--op-space-large);
|
|
255
259
|
}
|
|
256
260
|
|
|
257
261
|
.margin-y-md {
|
|
258
|
-
margin-top: var(--
|
|
259
|
-
margin-bottom: var(--
|
|
262
|
+
margin-top: var(--op-space-medium);
|
|
263
|
+
margin-bottom: var(--op-space-medium);
|
|
260
264
|
}
|
|
261
265
|
|
|
262
266
|
.margin-y-sm {
|
|
263
|
-
margin-top: var(--
|
|
264
|
-
margin-bottom: var(--
|
|
267
|
+
margin-top: var(--op-space-small);
|
|
268
|
+
margin-bottom: var(--op-space-small);
|
|
265
269
|
}
|
|
266
270
|
|
|
267
271
|
.margin-y-xs {
|
|
268
|
-
margin-top: var(--
|
|
269
|
-
margin-bottom: var(--
|
|
272
|
+
margin-top: var(--op-space-x-small);
|
|
273
|
+
margin-bottom: var(--op-space-x-small);
|
|
270
274
|
}
|
|
271
275
|
|
|
272
276
|
.margin-y-none {
|
|
@@ -277,28 +281,28 @@
|
|
|
277
281
|
// Horizontal Margin
|
|
278
282
|
|
|
279
283
|
.margin-x-xl {
|
|
280
|
-
margin-right: var(--
|
|
281
|
-
margin-left: var(--
|
|
284
|
+
margin-right: var(--op-space-x-large);
|
|
285
|
+
margin-left: var(--op-space-x-large);
|
|
282
286
|
}
|
|
283
287
|
|
|
284
288
|
.margin-x-lg {
|
|
285
|
-
margin-right: var(--
|
|
286
|
-
margin-left: var(--
|
|
289
|
+
margin-right: var(--op-space-large);
|
|
290
|
+
margin-left: var(--op-space-large);
|
|
287
291
|
}
|
|
288
292
|
|
|
289
293
|
.margin-x-md {
|
|
290
|
-
margin-right: var(--
|
|
291
|
-
margin-left: var(--
|
|
294
|
+
margin-right: var(--op-space-medium);
|
|
295
|
+
margin-left: var(--op-space-medium);
|
|
292
296
|
}
|
|
293
297
|
|
|
294
298
|
.margin-x-sm {
|
|
295
|
-
margin-right: var(--
|
|
296
|
-
margin-left: var(--
|
|
299
|
+
margin-right: var(--op-space-small);
|
|
300
|
+
margin-left: var(--op-space-small);
|
|
297
301
|
}
|
|
298
302
|
|
|
299
303
|
.margin-x-xs {
|
|
300
|
-
margin-right: var(--
|
|
301
|
-
margin-left: var(--
|
|
304
|
+
margin-right: var(--op-space-x-small);
|
|
305
|
+
margin-left: var(--op-space-x-small);
|
|
302
306
|
}
|
|
303
307
|
|
|
304
308
|
.margin-x-none {
|
|
@@ -309,23 +313,23 @@
|
|
|
309
313
|
// Top Margin
|
|
310
314
|
|
|
311
315
|
.margin-top-xl {
|
|
312
|
-
margin-top: var(--
|
|
316
|
+
margin-top: var(--op-space-x-large);
|
|
313
317
|
}
|
|
314
318
|
|
|
315
319
|
.margin-top-lg {
|
|
316
|
-
margin-top: var(--
|
|
320
|
+
margin-top: var(--op-space-large);
|
|
317
321
|
}
|
|
318
322
|
|
|
319
323
|
.margin-top-md {
|
|
320
|
-
margin-top: var(--
|
|
324
|
+
margin-top: var(--op-space-medium);
|
|
321
325
|
}
|
|
322
326
|
|
|
323
327
|
.margin-top-sm {
|
|
324
|
-
margin-top: var(--
|
|
328
|
+
margin-top: var(--op-space-small);
|
|
325
329
|
}
|
|
326
330
|
|
|
327
331
|
.margin-top-xs {
|
|
328
|
-
margin-top: var(--
|
|
332
|
+
margin-top: var(--op-space-x-small);
|
|
329
333
|
}
|
|
330
334
|
|
|
331
335
|
.margin-top-none {
|
|
@@ -335,23 +339,23 @@
|
|
|
335
339
|
// Bottom Margin
|
|
336
340
|
|
|
337
341
|
.margin-bottom-xl {
|
|
338
|
-
margin-bottom: var(--
|
|
342
|
+
margin-bottom: var(--op-space-x-large);
|
|
339
343
|
}
|
|
340
344
|
|
|
341
345
|
.margin-bottom-lg {
|
|
342
|
-
margin-bottom: var(--
|
|
346
|
+
margin-bottom: var(--op-space-large);
|
|
343
347
|
}
|
|
344
348
|
|
|
345
349
|
.margin-bottom-md {
|
|
346
|
-
margin-bottom: var(--
|
|
350
|
+
margin-bottom: var(--op-space-medium);
|
|
347
351
|
}
|
|
348
352
|
|
|
349
353
|
.margin-bottom-sm {
|
|
350
|
-
margin-bottom: var(--
|
|
354
|
+
margin-bottom: var(--op-space-small);
|
|
351
355
|
}
|
|
352
356
|
|
|
353
357
|
.margin-bottom-xs {
|
|
354
|
-
margin-bottom: var(--
|
|
358
|
+
margin-bottom: var(--op-space-x-small);
|
|
355
359
|
}
|
|
356
360
|
|
|
357
361
|
.margin-bottom-none {
|
|
@@ -361,23 +365,23 @@
|
|
|
361
365
|
// Right Margin
|
|
362
366
|
|
|
363
367
|
.margin-right-xl {
|
|
364
|
-
margin-right: var(--
|
|
368
|
+
margin-right: var(--op-space-x-large);
|
|
365
369
|
}
|
|
366
370
|
|
|
367
371
|
.margin-right-lg {
|
|
368
|
-
margin-right: var(--
|
|
372
|
+
margin-right: var(--op-space-large);
|
|
369
373
|
}
|
|
370
374
|
|
|
371
375
|
.margin-right-md {
|
|
372
|
-
margin-right: var(--
|
|
376
|
+
margin-right: var(--op-space-medium);
|
|
373
377
|
}
|
|
374
378
|
|
|
375
379
|
.margin-right-sm {
|
|
376
|
-
margin-right: var(--
|
|
380
|
+
margin-right: var(--op-space-small);
|
|
377
381
|
}
|
|
378
382
|
|
|
379
383
|
.margin-right-xs {
|
|
380
|
-
margin-right: var(--
|
|
384
|
+
margin-right: var(--op-space-x-small);
|
|
381
385
|
}
|
|
382
386
|
|
|
383
387
|
.margin-right-none {
|
|
@@ -387,23 +391,23 @@
|
|
|
387
391
|
// Left Margin
|
|
388
392
|
|
|
389
393
|
.margin-left-xl {
|
|
390
|
-
margin-left: var(--
|
|
394
|
+
margin-left: var(--op-space-x-large);
|
|
391
395
|
}
|
|
392
396
|
|
|
393
397
|
.margin-left-lg {
|
|
394
|
-
margin-left: var(--
|
|
398
|
+
margin-left: var(--op-space-large);
|
|
395
399
|
}
|
|
396
400
|
|
|
397
401
|
.margin-left-md {
|
|
398
|
-
margin-left: var(--
|
|
402
|
+
margin-left: var(--op-space-medium);
|
|
399
403
|
}
|
|
400
404
|
|
|
401
405
|
.margin-left-sm {
|
|
402
|
-
margin-left: var(--
|
|
406
|
+
margin-left: var(--op-space-small);
|
|
403
407
|
}
|
|
404
408
|
|
|
405
409
|
.margin-left-xs {
|
|
406
|
-
margin-left: var(--
|
|
410
|
+
margin-left: var(--op-space-x-small);
|
|
407
411
|
}
|
|
408
412
|
|
|
409
413
|
.margin-left-none {
|
|
@@ -495,43 +499,43 @@
|
|
|
495
499
|
flex: 1;
|
|
496
500
|
|
|
497
501
|
&.four-fifths-width {
|
|
498
|
-
flex-basis: calc(calc(100% * 4 / 5) - var(--
|
|
502
|
+
flex-basis: calc(calc(100% * 4 / 5) - var(--op-gap));
|
|
499
503
|
}
|
|
500
504
|
|
|
501
505
|
&.three-fifths-width {
|
|
502
|
-
flex-basis: calc(calc(100% * 3 / 5) - var(--
|
|
506
|
+
flex-basis: calc(calc(100% * 3 / 5) - var(--op-gap));
|
|
503
507
|
}
|
|
504
508
|
|
|
505
509
|
&.two-fifths-width {
|
|
506
|
-
flex-basis: calc(calc(100% * 2 / 5) - var(--
|
|
510
|
+
flex-basis: calc(calc(100% * 2 / 5) - var(--op-gap));
|
|
507
511
|
}
|
|
508
512
|
|
|
509
513
|
&.one-fifth-width {
|
|
510
|
-
flex-basis: calc(calc(100% * 1 / 5) - var(--
|
|
514
|
+
flex-basis: calc(calc(100% * 1 / 5) - var(--op-gap));
|
|
511
515
|
}
|
|
512
516
|
|
|
513
517
|
&.three-quarters-width {
|
|
514
|
-
flex-basis: calc(calc(100% * 3 / 4) - var(--
|
|
518
|
+
flex-basis: calc(calc(100% * 3 / 4) - var(--op-gap));
|
|
515
519
|
}
|
|
516
520
|
|
|
517
521
|
&.one-quarter-width {
|
|
518
|
-
flex-basis: calc(calc(100% * 1 / 4) - var(--
|
|
522
|
+
flex-basis: calc(calc(100% * 1 / 4) - var(--op-gap));
|
|
519
523
|
}
|
|
520
524
|
|
|
521
525
|
&.two-thirds-width {
|
|
522
|
-
flex-basis: calc(calc(100% * 2 / 3) - var(--
|
|
526
|
+
flex-basis: calc(calc(100% * 2 / 3) - var(--op-gap));
|
|
523
527
|
}
|
|
524
528
|
|
|
525
529
|
&.one-third-width {
|
|
526
|
-
flex-basis: calc(calc(100% * 1 / 3) - var(--
|
|
530
|
+
flex-basis: calc(calc(100% * 1 / 3) - var(--op-gap));
|
|
527
531
|
}
|
|
528
532
|
|
|
529
533
|
&.full-width {
|
|
530
|
-
flex-basis: calc(100% - var(--
|
|
534
|
+
flex-basis: calc(100% - var(--op-gap));
|
|
531
535
|
}
|
|
532
536
|
|
|
533
537
|
&.half-width {
|
|
534
|
-
flex-basis: calc(50% - var(--
|
|
538
|
+
flex-basis: calc(50% - var(--op-gap));
|
|
535
539
|
}
|
|
536
540
|
}
|
|
537
541
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
.sidebar__brand {
|
|
4
4
|
svg {
|
|
5
5
|
width: 100%;
|
|
6
|
-
padding: 0 var(--
|
|
6
|
+
padding: 0 var(--op-space-small);
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
.sidebar__brand-label {
|
|
@@ -14,54 +14,54 @@
|
|
|
14
14
|
|
|
15
15
|
@mixin sidebar-16six-drawer-global {
|
|
16
16
|
.sidebar__item {
|
|
17
|
-
border-radius: var(--
|
|
18
|
-
font-size: var(--
|
|
17
|
+
border-radius: var(--op-radius-large);
|
|
18
|
+
font-size: var(--op-font-small);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
.sidebar-16six {
|
|
23
23
|
@extend %sidebar-global;
|
|
24
24
|
|
|
25
|
-
--
|
|
25
|
+
--_op-sidebar-spacing: var(--op-space-x-small);
|
|
26
26
|
|
|
27
27
|
// Normal
|
|
28
|
-
--
|
|
29
|
-
--
|
|
28
|
+
--_op-sidebar-background-color: var(--op-color-primary-minus-five);
|
|
29
|
+
--_op-sidebar-text-color: var(--op-color-primary-on-minus-five);
|
|
30
30
|
|
|
31
31
|
// Active
|
|
32
|
-
--
|
|
33
|
-
--
|
|
32
|
+
--_op-sidebar-icon-background-active-color: var(--op-color-primary-minus-three);
|
|
33
|
+
--_op-sidebar-icon-text-active-color: var(--op-color-primary-on-minus-three);
|
|
34
34
|
|
|
35
35
|
// Hover
|
|
36
|
-
--
|
|
37
|
-
--
|
|
36
|
+
--_op-sidebar-icon-background-hover-color: var(--op-color-primary-minus-three);
|
|
37
|
+
--_op-sidebar-icon-text-hover-color: var(--op-color-primary-on-minus-three);
|
|
38
38
|
|
|
39
|
-
gap: var(--
|
|
39
|
+
gap: var(--op-space-x-large);
|
|
40
40
|
|
|
41
41
|
.sidebar__brand {
|
|
42
42
|
display: flex;
|
|
43
43
|
color: inherit;
|
|
44
|
-
gap: var(--
|
|
44
|
+
gap: var(--op-space-small);
|
|
45
45
|
text-decoration: none;
|
|
46
46
|
|
|
47
47
|
svg {
|
|
48
|
-
width: var(--
|
|
48
|
+
width: var(--op-space-3x-large);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
.sidebar__brand-label {
|
|
52
52
|
display: flex;
|
|
53
53
|
flex-direction: column;
|
|
54
|
-
gap: var(--
|
|
54
|
+
gap: var(--op-space-4x-small);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
.sidebar__content {
|
|
59
|
-
gap: var(--
|
|
59
|
+
gap: var(--op-space-x-small);
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
.sidebar__item {
|
|
63
63
|
.sidebar__item-icon {
|
|
64
|
-
border-radius: var(--
|
|
64
|
+
border-radius: var(--op-radius-large);
|
|
65
65
|
|
|
66
66
|
&.sidebar__item-icon--rotated {
|
|
67
67
|
rotate: 90deg;
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
&:hover,
|
|
72
72
|
&.active {
|
|
73
73
|
.sidebar__item-icon {
|
|
74
|
-
--
|
|
74
|
+
--op-mso-weight: var(--op-font-weight-medium);
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Domains Sidebar Example
|
|
2
2
|
@mixin sidebar-domains-rail-global {
|
|
3
3
|
.sidebar__brand {
|
|
4
|
-
padding: 0 var(--
|
|
4
|
+
padding: 0 var(--_op-sidebar-spacing);
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
7
|
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
.sidebar__section-divider {
|
|
19
|
-
margin: var(--
|
|
19
|
+
margin: var(--op-space-small) 0;
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
|
|
@@ -24,19 +24,19 @@
|
|
|
24
24
|
@extend %sidebar-global;
|
|
25
25
|
|
|
26
26
|
// Normal
|
|
27
|
-
--
|
|
28
|
-
--
|
|
27
|
+
--_op-sidebar-background-color: var(--op-color-background);
|
|
28
|
+
--_op-sidebar-text-color: var(--op-color-on-background);
|
|
29
29
|
|
|
30
30
|
// Active
|
|
31
|
-
--
|
|
32
|
-
--
|
|
31
|
+
--_op-sidebar-icon-background-active-color: var(--op-color-primary-plus-seven);
|
|
32
|
+
--_op-sidebar-icon-text-active-color: var(--op-color-primary-on-plus-seven);
|
|
33
33
|
|
|
34
34
|
// Hover
|
|
35
|
-
--
|
|
36
|
-
--
|
|
35
|
+
--_op-sidebar-icon-background-hover-color: var(--op-color-neutral-plus-seven);
|
|
36
|
+
--_op-sidebar-icon-text-hover-color: var(--op-color-neutral-on-plus-seven);
|
|
37
37
|
|
|
38
38
|
.sidebar__brand {
|
|
39
|
-
padding: 0 var(--
|
|
39
|
+
padding: 0 var(--op-space-4x-large);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
// Modifiers
|