coveragebook_components 0.10.1.beta.1 → 0.11.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 (40) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/build/coco/app.css +3968 -3053
  3. data/app/assets/build/coco/app.js +5 -4
  4. data/app/assets/build/coco/book.css +1609 -627
  5. data/app/assets/build/coco/book.js +2 -2
  6. data/app/assets/css/app/tippy.css +1 -1
  7. data/app/assets/css/base.css +0 -4
  8. data/app/assets/css/shared/tippy.css +2 -2
  9. data/app/assets/css/shared/utils/text.css +323 -66
  10. data/app/components/coco/app/blocks/sidebar_nav/item/item.css +3 -3
  11. data/app/components/coco/app/blocks/sidebar_nav/menu/menu.css +3 -3
  12. data/app/components/coco/app/elements/alert/alert.css +7 -7
  13. data/app/components/coco/app/elements/color_picker/color_picker.css +2 -2
  14. data/app/components/coco/app/elements/confirm_panel/confirm_panel.css +1 -1
  15. data/app/components/coco/app/elements/image_picker/image_picker.css +4 -4
  16. data/app/components/coco/app/elements/menu/menu.css +2 -2
  17. data/app/components/coco/app/elements/menu_items/user_profile/user_profile.css +1 -1
  18. data/app/components/coco/app/elements/snackbar/snackbar.css +1 -1
  19. data/app/components/coco/app/layouts/page/page.css +1 -5
  20. data/app/components/coco/app/layouts/page/page.html.erb +3 -9
  21. data/app/components/coco/app/layouts/page/page.rb +18 -3
  22. data/app/components/coco/shared/button/button.css +31 -31
  23. data/app/components/coco/shared/button/button.rb +2 -2
  24. data/app/components/coco/shared/link/link.css +67 -0
  25. data/app/components/coco/shared/link/link.rb +20 -1
  26. data/app/components/coco/shared/prose/prose.css +28 -0
  27. data/app/components/coco/shared/prose/prose.rb +14 -0
  28. data/app/components/coco/shared/spacer/spacer.css +201 -0
  29. data/app/components/coco/shared/spacer/spacer.rb +23 -0
  30. data/app/components/coco/shared/stack/stack.css +4 -0
  31. data/app/components/coco/shared/stack/stack.html.erb +4 -0
  32. data/app/components/coco/shared/stack/stack.rb +47 -0
  33. data/app/helpers/coco/app_helper.rb +1 -1
  34. data/app/helpers/coco/shared_helper.rb +13 -0
  35. data/config/tailwind.base.config.cjs +3 -1
  36. data/config/tokens.cjs +1 -0
  37. data/lib/coco.rb +1 -1
  38. metadata +12 -7
  39. data/app/components/coco/app/elements/link/link.css +0 -70
  40. data/app/components/coco/app/elements/link/link.rb +0 -33
@@ -16044,14 +16044,14 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el);
16044
16044
  }
16045
16045
  }
16046
16046
 
16047
- // import-glob:/Users/oliviabonnal/code/coveragebook/coco/app/assets/js/shared|@sharedComponents/**/*.js
16047
+ // import-glob:/Users/mark/Code/coveragebook/coco/app/assets/js/shared|@sharedComponents/**/*.js
16048
16048
  var modules = [button_exports, button_dropdown_exports, button_group_exports, dropdown_exports, icon_exports, image_uploader_exports, modal_exports, modal_dialog_exports, modal_lightbox_exports, poll_controller_exports];
16049
16049
  var __default = modules;
16050
16050
 
16051
16051
  // shared/components.js
16052
16052
  var components_default = registerComponents(__default);
16053
16053
 
16054
- // import-glob:/Users/oliviabonnal/code/coveragebook/coco/app/assets/js/book|@bookComponents/**/*.js
16054
+ // import-glob:/Users/mark/Code/coveragebook/coco/app/assets/js/book|@bookComponents/**/*.js
16055
16055
  var modules2 = [];
16056
16056
  var __default2 = modules2;
16057
16057
 
@@ -1,6 +1,6 @@
1
1
  @layer utilities {
2
2
  .tippy-dropdown-box {
3
- @apply bg-background-light-2 text-gray-900 coco-label-sm border border-solid border-gray-blend-100 shadow-xl rounded-lg;
3
+ @apply bg-background-light-2 text-gray-900 label-sm border border-solid border-gray-blend-100 shadow-xl rounded-lg;
4
4
  }
5
5
  }
6
6
 
@@ -32,10 +32,6 @@
32
32
  display: none !important;
33
33
  }
34
34
 
35
- [data-coco] {
36
- @apply text-content-dark-1 font-body;
37
- }
38
-
39
35
  [x-dropdown] {
40
36
  [x-dropdown\:content] {
41
37
  @apply hidden;
@@ -9,7 +9,7 @@
9
9
  }
10
10
 
11
11
  .tippy-box[data-theme^="coco-"] {
12
- @apply bg-transparent text-gray-900 coco-label-md whitespace-normal;
12
+ @apply bg-transparent text-gray-900 label-md whitespace-normal;
13
13
 
14
14
  .tippy-content {
15
15
  @apply p-0;
@@ -28,7 +28,7 @@
28
28
 
29
29
  /* Tooltip theme */
30
30
  .tippy-box[data-theme~="coco-tooltip"] {
31
- @apply bg-background-dark-2 text-white coco-label-sm rounded-lg shadow-xl;
31
+ @apply bg-background-dark-2 text-white label-sm rounded-lg shadow-xl;
32
32
 
33
33
  .tippy-content {
34
34
  @apply px-3 py-2 truncate max-w-[240px];
@@ -1,143 +1,400 @@
1
+ /*
2
+ * Internal text utilities
3
+ * These are *not* exported for use outside of components.
4
+ */
1
5
  @layer utilities {
2
6
  /* paragraphs */
3
7
 
4
- .coco-para-lg {
5
- @apply font-body text-para-lg;
8
+ .para-lg,
9
+ .para-md,
10
+ .para-sm,
11
+ .para-xs {
12
+ @apply font-body;
6
13
  }
7
14
 
8
- .coco-para-md {
9
- @apply font-body text-para-md;
15
+ .para-lg {
16
+ @apply text-para-lg;
10
17
  }
11
18
 
12
- .coco-para-sm {
13
- @apply font-body text-para-sm;
19
+ .para-md {
20
+ @apply text-para-md;
14
21
  }
15
22
 
16
- .coco-para-xs {
17
- @apply font-body text-para-xs;
23
+ .para-sm {
24
+ @apply text-para-sm;
25
+ }
26
+
27
+ .para-xs {
28
+ @apply text-para-xs;
18
29
  }
19
30
 
20
31
  /* labels */
21
32
 
22
- .coco-label-lg {
23
- @apply font-body text-label-lg font-semibold;
33
+ .label-lg,
34
+ .label-md,
35
+ .label-sm,
36
+ .label-xs,
37
+ .label-xxs {
38
+ @apply font-body font-semibold;
24
39
  }
25
40
 
26
- .coco-label-md {
27
- @apply font-body text-label-md font-semibold;
41
+ .label-lg {
42
+ @apply text-label-lg;
28
43
  }
29
44
 
30
- .coco-label-sm {
31
- @apply font-body text-label-sm font-semibold;
45
+ .label-md {
46
+ @apply text-label-md;
32
47
  }
33
48
 
34
- .coco-label-xs {
35
- @apply font-body text-label-xs font-semibold;
49
+ .label-sm {
50
+ @apply text-label-sm;
36
51
  }
37
52
 
38
- .coco-label-xxs {
39
- @apply font-body text-label-xxs font-semibold;
53
+ .label-xs {
54
+ @apply text-label-xs;
40
55
  }
41
56
 
42
- /* standard headings */
57
+ .label-xxs {
58
+ @apply text-label-xxs;
59
+ }
43
60
 
44
- .coco-heading-1 {
45
- @apply font-body text-heading-1 font-bold;
61
+ /* standard subheadings */
62
+
63
+ .subheading-1,
64
+ .subheading-2,
65
+ .subheading-3,
66
+ .subheading-4 {
67
+ @apply font-body font-[500];
46
68
  }
47
69
 
48
- .coco-heading-2 {
49
- @apply font-body text-heading-2 font-bold;
70
+ .subheading-1 {
71
+ @apply text-subheading-1;
50
72
  }
51
73
 
52
- .coco-heading-3 {
53
- @apply font-body text-heading-3 font-bold;
74
+ .subheading-2 {
75
+ @apply text-subheading-2;
54
76
  }
55
77
 
56
- .coco-heading-4 {
57
- @apply font-body text-heading-4 font-bold;
78
+ .subheading-3 {
79
+ @apply text-subheading-3;
58
80
  }
59
81
 
60
- .coco-heading-5 {
61
- @apply font-body text-heading-5 font-bold;
82
+ .subheading-4 {
83
+ @apply text-subheading-4;
62
84
  }
63
85
 
64
- .coco-heading-6 {
65
- @apply font-body text-heading-6 font-bold;
86
+ /* standard headings */
87
+
88
+ .heading-1,
89
+ .heading-2,
90
+ .heading-3,
91
+ .heading-4,
92
+ .heading-5,
93
+ .heading-6 {
94
+ @apply font-body font-bold;
66
95
  }
67
96
 
68
- /* standard subheadings */
97
+ .heading-1 {
98
+ @apply text-heading-1;
99
+ }
100
+
101
+ .heading-2 {
102
+ @apply text-heading-2;
103
+ }
69
104
 
70
- .coco-subheading-1 {
71
- @apply font-body text-subheading-1 font-[500];
105
+ .heading-3 {
106
+ @apply text-heading-3;
72
107
  }
73
108
 
74
- .coco-subheading-2 {
75
- @apply font-body text-subheading-2 font-[500];
109
+ .heading-4 {
110
+ @apply text-heading-4;
76
111
  }
77
112
 
78
- .coco-subheading-3 {
79
- @apply font-body text-subheading-3 font-[500];
113
+ .heading-5 {
114
+ @apply text-heading-5;
80
115
  }
81
116
 
82
- .coco-subheading-4 {
83
- @apply font-body text-subheading-4 font-[500];
117
+ .heading-6 {
118
+ @apply text-heading-6;
84
119
  }
85
120
 
86
121
  /* display headings */
87
122
 
88
- .coco-display-1 {
89
- @apply font-display text-display-1 font-bold;
123
+ .display-1,
124
+ .display-2,
125
+ .display-3,
126
+ .display-4 {
127
+ @apply font-display font-bold;
90
128
  }
91
129
 
92
- .coco-display-2 {
93
- @apply font-display text-display-2 font-bold;
130
+ .display-1 {
131
+ @apply text-display-1;
94
132
  }
95
133
 
96
- .coco-display-3 {
97
- @apply font-display text-display-3 font-bold;
134
+ .display-2 {
135
+ @apply text-display-2;
98
136
  }
99
137
 
100
- .coco-display-4 {
101
- @apply font-display text-display-4 font-bold;
138
+ .display-3 {
139
+ @apply text-display-3;
140
+ }
141
+
142
+ .display-4 {
143
+ @apply text-display-4;
102
144
  }
103
145
 
104
146
  /* branded headings */
105
147
 
106
- .coco-branded-heading-1 {
107
- @apply font-branded text-heading-1 font-bold;
148
+ .branded-heading-1,
149
+ .branded-heading-2,
150
+ .branded-heading-3,
151
+ .branded-heading-4,
152
+ .branded-heading-5,
153
+ .branded-heading-6 {
154
+ @apply font-branded font-bold;
108
155
  }
109
156
 
110
- .coco-branded-heading-2 {
111
- @apply font-branded text-heading-2 font-bold;
157
+ .branded-heading-1 {
158
+ @apply text-heading-1;
112
159
  }
113
160
 
114
- .coco-branded-heading-3 {
115
- @apply font-branded text-heading-3 font-bold;
161
+ .branded-heading-2 {
162
+ @apply text-heading-2;
116
163
  }
117
164
 
118
- .coco-branded-heading-4 {
119
- @apply font-branded text-heading-4 font-bold;
165
+ .branded-heading-3 {
166
+ @apply text-heading-3;
120
167
  }
121
168
 
122
- .coco-branded-heading-5 {
123
- @apply font-branded text-heading-5 font-bold;
169
+ .branded-heading-4 {
170
+ @apply text-heading-4;
171
+ }
172
+
173
+ .branded-heading-5 {
174
+ @apply text-heading-5;
175
+ }
176
+
177
+ .branded-heading-6 {
178
+ @apply text-heading-6;
124
179
  }
125
180
 
126
181
  /* branded display headings */
127
182
 
128
- .coco-branded-display-1 {
129
- @apply font-branded text-relaxed-display-1 font-bold;
183
+ .branded-display-1,
184
+ .branded-display-2,
185
+ .branded-display-3,
186
+ .branded-display-4 {
187
+ @apply font-branded font-bold;
188
+ }
189
+
190
+ .branded-display-1 {
191
+ @apply text-display-1;
192
+ }
193
+
194
+ .branded-display-2 {
195
+ @apply text-display-2;
196
+ }
197
+
198
+ .branded-display-3 {
199
+ @apply text-display-3;
200
+ }
201
+
202
+ .branded-display-4 {
203
+ @apply text-display-4;
204
+ }
205
+ }
206
+
207
+ /*
208
+ * Public text utilities
209
+ * These are exported as utility classes for use outside of components.
210
+ */
211
+
212
+ /* standard subheadings */
213
+
214
+ .coco-subheading-1 {
215
+ @apply subheading-1;
216
+
217
+ &:not([data-resize="false"]) {
218
+ @apply max-sm:subheading-4 sm:max-md:subheading-3 md:max-lg:subheading-2;
219
+ }
220
+ }
221
+
222
+ .coco-subheading-2 {
223
+ @apply subheading-2;
224
+
225
+ &:not([data-resize="false"]) {
226
+ @apply max-md:subheading-4 md:max-lg:subheading-3;
227
+ }
228
+ }
229
+
230
+ .coco-subheading-3 {
231
+ @apply subheading-3;
232
+
233
+ &:not([data-resize="false"]) {
234
+ @apply max-md:subheading-4;
235
+ }
236
+ }
237
+
238
+ .coco-subheading-4 {
239
+ @apply subheading-4;
240
+ }
241
+
242
+ /* standard headings */
243
+
244
+ .coco-heading-1 {
245
+ @apply heading-1;
246
+
247
+ &:not([data-resize="false"]) {
248
+ @apply max-md:heading-3 md:max-lg:heading-2;
249
+ }
250
+ }
251
+
252
+ .coco-heading-2 {
253
+ @apply heading-2;
254
+
255
+ &:not([data-resize="false"]) {
256
+ @apply max-md:heading-4 md:max-lg:heading-3;
257
+ }
258
+ }
259
+
260
+ .coco-heading-3 {
261
+ @apply heading-3;
262
+
263
+ &:not([data-resize="false"]) {
264
+ @apply max-md:heading-5 md:max-lg:heading-4;
265
+ }
266
+ }
267
+
268
+ .coco-heading-4 {
269
+ @apply heading-4;
270
+
271
+ &:not([data-resize="false"]) {
272
+ @apply max-md:heading-5;
273
+ }
274
+ }
275
+
276
+ .coco-heading-5 {
277
+ @apply heading-5;
278
+
279
+ &:not([data-resize="false"]) {
280
+ @apply max-md:heading-6;
281
+ }
282
+ }
283
+
284
+ .coco-heading-6 {
285
+ @apply heading-6;
286
+ }
287
+
288
+ /* display headings */
289
+
290
+ .coco-display-1 {
291
+ @apply display-1;
292
+
293
+ &:not([data-resize="false"]) {
294
+ @apply max-md:display-3 md:max-lg:display-2;
295
+ }
296
+ }
297
+
298
+ .coco-display-2 {
299
+ @apply display-2;
300
+
301
+ &:not([data-resize="false"]) {
302
+ @apply max-md:display-4 md:max-lg:display-3;
303
+ }
304
+ }
305
+
306
+ .coco-display-3 {
307
+ @apply display-3;
308
+
309
+ &:not([data-resize="false"]) {
310
+ @apply max-md:heading-1 md:max-lg:display-4;
311
+ }
312
+ }
313
+
314
+ .coco-display-4 {
315
+ @apply display-4;
316
+
317
+ &:not([data-resize="false"]) {
318
+ @apply max-md:heading-2 md:max-lg:heading-1;
319
+ }
320
+ }
321
+
322
+ /* branded headings */
323
+
324
+ .coco-heading-1-branded {
325
+ @apply branded-heading-1;
326
+
327
+ &:not([data-resize="false"]) {
328
+ @apply max-md:branded-heading-3 md:max-lg:branded-heading-2;
130
329
  }
330
+ }
331
+
332
+ .coco-heading-2-branded {
333
+ @apply branded-heading-2;
334
+
335
+ &:not([data-resize="false"]) {
336
+ @apply max-md:branded-heading-4 md:max-lg:branded-heading-3;
337
+ }
338
+ }
339
+
340
+ .coco-heading-3-branded {
341
+ @apply branded-heading-3;
131
342
 
132
- .coco-branded-display-2 {
133
- @apply font-branded text-relaxed-display-2 font-bold;
343
+ &:not([data-resize="false"]) {
344
+ @apply max-md:branded-heading-5 md:max-lg:branded-heading-4;
134
345
  }
346
+ }
347
+
348
+ .coco-heading-4-branded {
349
+ @apply branded-heading-4;
135
350
 
136
- .coco-branded-display-3 {
137
- @apply font-branded text-relaxed-display-3 font-bold;
351
+ &:not([data-resize="false"]) {
352
+ @apply max-md:branded-heading-5;
138
353
  }
354
+ }
355
+
356
+ .coco-heading-5-branded {
357
+ @apply branded-heading-5;
358
+
359
+ &:not([data-resize="false"]) {
360
+ @apply max-md:branded-heading-6;
361
+ }
362
+ }
363
+
364
+ .coco-heading-6-branded {
365
+ @apply branded-heading-6;
366
+ }
367
+
368
+ /* branded display headings */
369
+
370
+ .coco-display-1-branded {
371
+ @apply branded-display-1;
372
+
373
+ &:not([data-resize="false"]) {
374
+ @apply max-md:branded-display-3 md:max-lg:branded-display-2;
375
+ }
376
+ }
377
+
378
+ .coco-display-2-branded {
379
+ @apply branded-display-2;
380
+
381
+ &:not([data-resize="false"]) {
382
+ @apply max-md:branded-display-4 md:max-lg:branded-display-3;
383
+ }
384
+ }
385
+
386
+ .coco-display-3-branded {
387
+ @apply branded-display-3;
388
+
389
+ &:not([data-resize="false"]) {
390
+ @apply max-md:branded-heading-1 md:max-lg:branded-display-4;
391
+ }
392
+ }
393
+
394
+ .coco-display-4-branded {
395
+ @apply branded-display-4;
139
396
 
140
- .coco-branded-display-4 {
141
- @apply font-branded text-relaxed-display-4 font-bold;
397
+ &:not([data-resize="false"]) {
398
+ @apply max-md:branded-heading-2 md:max-lg:branded-heading-1;
142
399
  }
143
400
  }
@@ -42,7 +42,7 @@
42
42
  @layer utilities {
43
43
  .app-sidebar-nav-horizontal-item {
44
44
  .nav-item-label {
45
- @apply coco-label-xxs mt-0.5;
45
+ @apply label-xxs mt-0.5;
46
46
  }
47
47
 
48
48
  .nav-item-icon .coco-icon {
@@ -81,7 +81,7 @@
81
81
  @apply py-4;
82
82
 
83
83
  .nav-item-label {
84
- @apply coco-label-xxs mt-1;
84
+ @apply label-xxs mt-1;
85
85
  }
86
86
 
87
87
  .nav-item-icon .coco-icon {
@@ -102,7 +102,7 @@
102
102
  @apply py-5;
103
103
 
104
104
  .nav-item-label {
105
- @apply coco-label-xs mt-1.5;
105
+ @apply label-xs mt-1.5;
106
106
  }
107
107
 
108
108
  .nav-item-icon .coco-icon {
@@ -22,7 +22,7 @@
22
22
  }
23
23
 
24
24
  .menu-item-qualifier {
25
- @apply ml-auto coco-label-sm flex-none pl-4;
25
+ @apply ml-auto label-sm flex-none pl-4;
26
26
  }
27
27
 
28
28
  .menu-item-select {
@@ -47,12 +47,12 @@
47
47
  }
48
48
 
49
49
  h4 {
50
- @apply text-content-light-1 font-bold coco-heading-6;
50
+ @apply text-content-light-1 font-bold heading-6;
51
51
  grid-area: title;
52
52
  }
53
53
 
54
54
  div {
55
- @apply coco-para-sm;
55
+ @apply para-sm;
56
56
  grid-area: text;
57
57
  }
58
58
  }
@@ -23,11 +23,11 @@
23
23
  }
24
24
 
25
25
  .alert-title {
26
- @apply coco-heading-6 font-bold;
26
+ @apply heading-6 font-bold;
27
27
  }
28
28
 
29
29
  .alert-message {
30
- @apply coco-para-md;
30
+ @apply para-md;
31
31
 
32
32
  a {
33
33
  @apply text-current;
@@ -93,11 +93,11 @@
93
93
  }
94
94
 
95
95
  .alert-title {
96
- @apply coco-para-md sm:coco-para-sm xl:coco-para-md;
96
+ @apply para-md sm:para-sm xl:para-md;
97
97
  }
98
98
 
99
99
  .alert-message {
100
- @apply coco-para-md sm:coco-para-sm xl:coco-para-md;
100
+ @apply para-md sm:para-sm xl:para-md;
101
101
  }
102
102
  }
103
103
 
@@ -126,8 +126,8 @@
126
126
  @apply text-content-light-1;
127
127
  }
128
128
 
129
- .coco_link:not([data-theme]) {
130
- @apply app-link-neutral-light;
129
+ .coco-link:not([data-theme]) {
130
+ @apply link-neutral-light;
131
131
  }
132
132
  }
133
133
 
@@ -151,7 +151,7 @@
151
151
  }
152
152
 
153
153
  .coco-link:not([data-theme]) {
154
- @apply app-link-neutral-dark;
154
+ @apply link-neutral-dark;
155
155
  }
156
156
  }
157
157
 
@@ -110,7 +110,7 @@
110
110
  }
111
111
 
112
112
  .picker-display-input {
113
- @apply coco-para-sm h-9;
113
+ @apply para-sm h-9;
114
114
  }
115
115
 
116
116
  .picker-display-color {
@@ -143,7 +143,7 @@
143
143
  }
144
144
 
145
145
  .picker-display-input {
146
- @apply coco-para-md h-11;
146
+ @apply para-md h-11;
147
147
  }
148
148
 
149
149
  .picker-display-color {
@@ -4,7 +4,7 @@
4
4
  @apply px-5 py-4 text-center max-w-[200px] space-y-4;
5
5
 
6
6
  .confirm-text {
7
- @apply coco-label-sm font-semibold;
7
+ @apply label-sm font-semibold;
8
8
  }
9
9
  }
10
10
  }
@@ -72,12 +72,12 @@
72
72
  }
73
73
 
74
74
  .picker-placeholder-text {
75
- @apply coco-para-sm;
75
+ @apply para-sm;
76
76
  width: 148px;
77
77
  }
78
78
 
79
79
  .picker-file-name {
80
- @apply coco-label-sm;
80
+ @apply label-sm;
81
81
  }
82
82
 
83
83
  .picker-actions {
@@ -94,12 +94,12 @@
94
94
  }
95
95
 
96
96
  .picker-placeholder-text {
97
- @apply coco-para-md;
97
+ @apply para-md;
98
98
  width: 172px;
99
99
  }
100
100
 
101
101
  .picker-file-name {
102
- @apply coco-label-md;
102
+ @apply label-md;
103
103
  }
104
104
 
105
105
  .picker-actions {
@@ -35,7 +35,7 @@
35
35
 
36
36
  .menu-item {
37
37
  [data-component="button"] {
38
- @apply px-4 py-2 coco-label-sm;
38
+ @apply px-4 py-2 label-sm;
39
39
 
40
40
  .button-inner {
41
41
  @apply gap-2;
@@ -53,7 +53,7 @@
53
53
 
54
54
  .menu-item {
55
55
  [data-component="button"] {
56
- @apply px-5 py-2.5 coco-label-md;
56
+ @apply px-5 py-2.5 label-md;
57
57
 
58
58
  .button-inner {
59
59
  @apply gap-2;