@crewlethq/ui 0.74.0 → 0.75.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/dist/ArtifactBar/index.js +1 -1
- package/dist/ArtifactCard/index.js +4 -4
- package/dist/Avatar/Avatar.d.ts +7 -2
- package/dist/Avatar/index.js +2 -2
- package/dist/{Avatar-FDQSCB7A.css → Avatar-VJSJGFRG.css} +48 -0
- package/dist/AvatarPicker/index.js +3 -3
- package/dist/CharacterPicker/index.js +2 -2
- package/dist/ChoiceButtons/index.js +1 -1
- package/dist/{ChoiceButtons-Q2ET3I2N.css → ChoiceButtons-G7XHZKDP.css} +7 -0
- package/dist/ColorChip/ColorChip.d.ts +6 -2
- package/dist/ColorChip/index.js +1 -1
- package/dist/{ColorChip-A5XHTH3J.css → ColorChip-EYQCUXBV.css} +23 -2
- package/dist/CommentThread/index.js +4 -4
- package/dist/{Editor-WZ5L4BI2.js → Editor-SSCCUK7P.js} +4 -3
- package/dist/EntityChip/index.js +3 -3
- package/dist/ImageUpload/index.js +3 -3
- package/dist/InlineRef/InlineRef.d.ts +73 -0
- package/dist/InlineRef/index.d.ts +3 -0
- package/dist/InlineRef/index.js +3 -0
- package/dist/InlineRef-SJWUKXGT.css +129 -0
- package/dist/Markdown/index.js +2 -1
- package/dist/OpenInAppCard/index.js +3 -2
- package/dist/OrgLabel/index.js +3 -3
- package/dist/OrgNode/index.js +4 -4
- package/dist/OrgTable/index.js +4 -4
- package/dist/PeopleRail/index.js +3 -3
- package/dist/PresenceStack/index.js +3 -3
- package/dist/Principal/index.js +3 -3
- package/dist/PrincipalPicker/index.js +4 -4
- package/dist/RichEditor/index.js +4 -3
- package/dist/RichEditorMarkdown/index.js +4 -3
- package/dist/ShareDialog/index.js +4 -4
- package/dist/SheetGrid/index.js +4 -4
- package/dist/TableCells/index.js +3 -3
- package/dist/ThemeGallery/index.js +2 -2
- package/dist/VersionTimeline/index.js +4 -4
- package/dist/chunk-266I4BJJ.js +70 -0
- package/dist/{chunk-CSQTDGTS.js → chunk-2DMTW2Y3.js} +1 -1
- package/dist/{chunk-O3HCFM3D.js → chunk-53J2YNQA.js} +1 -1
- package/dist/{chunk-OSKJZNBT.js → chunk-5XBNJNSO.js} +1 -1
- package/dist/{chunk-EVXXY75R.js → chunk-6LN64KGG.js} +1 -1
- package/dist/{chunk-3EETQFAM.js → chunk-6UBCZZWD.js} +2 -2
- package/dist/{chunk-QH6VYJ3X.js → chunk-7CSTEH5I.js} +1 -1
- package/dist/{chunk-YGWIWDXE.js → chunk-AB6F5YXX.js} +1 -1
- package/dist/{chunk-75S74BBK.js → chunk-B5K2YUD4.js} +2 -2
- package/dist/{chunk-BKP6XCAJ.js → chunk-BT3GB7HC.js} +2 -2
- package/dist/{chunk-7SYEOJLP.js → chunk-FXMYDXCI.js} +1 -1
- package/dist/{chunk-SWD4QBL6.js → chunk-GBASM5EV.js} +1 -1
- package/dist/{chunk-G4QZWVAB.js → chunk-GT2OG2XM.js} +1 -1
- package/dist/{chunk-SNQRGH4A.js → chunk-I22MUEG7.js} +1 -1
- package/dist/{chunk-PZKHBB7D.js → chunk-KTIQSSME.js} +12 -4
- package/dist/{chunk-EN4UJQ63.js → chunk-L3OL2WUH.js} +2 -2
- package/dist/{chunk-ONQKKHON.js → chunk-LM6VYJTV.js} +1 -1
- package/dist/{chunk-FWUX3F6Q.js → chunk-MUFBHVCT.js} +1 -1
- package/dist/{chunk-CI3VPIJN.js → chunk-N2BF272H.js} +1 -1
- package/dist/{chunk-MFQPGMJT.js → chunk-NU5RUT7Y.js} +1 -1
- package/dist/{chunk-DB7UVFOY.js → chunk-OXEOC64K.js} +2 -2
- package/dist/{chunk-RUBKDJAQ.js → chunk-OZAZHM55.js} +1 -1
- package/dist/{chunk-AGLONIVV.js → chunk-PKVWCKS2.js} +1 -1
- package/dist/{chunk-73SAOOR5.js → chunk-Q2T4L6ML.js} +1 -1
- package/dist/{chunk-6GTTRJWJ.js → chunk-QGWZN3KU.js} +1 -1
- package/dist/chunk-TWM6G2I2.js +1 -0
- package/dist/{chunk-56IFLQGF.js → chunk-ZQEJSEPS.js} +1 -1
- package/dist/{chunk-SMZPUHBL.js → chunk-ZWXHTXZO.js} +1 -1
- package/dist/generated/index.d.ts +1 -0
- package/dist/generated/index.js +63 -61
- package/dist/index.js +63 -61
- package/dist/styles.css +213 -5
- package/package.json +3 -3
- package/dist/{chunk-LWFOX3PB.js → chunk-BYNKGOBA.js} +1 -1
- /package/dist/{chunk-BAKPMH3S.js → chunk-KBZO4B33.js} +0 -0
- /package/dist/{chunk-ABGLGAFJ.js → chunk-KOJPDCGQ.js} +0 -0
package/dist/styles.css
CHANGED
|
@@ -4560,7 +4560,7 @@ a.crewlet-make-row__item:active {
|
|
|
4560
4560
|
}
|
|
4561
4561
|
|
|
4562
4562
|
|
|
4563
|
-
/* Avatar-
|
|
4563
|
+
/* Avatar-VJSJGFRG.css */
|
|
4564
4564
|
/*
|
|
4565
4565
|
* The identity badge.
|
|
4566
4566
|
*
|
|
@@ -4643,6 +4643,54 @@ a.crewlet-make-row__item:active {
|
|
|
4643
4643
|
* 9px, in the component), so the step and its numeric twin draw one badge and
|
|
4644
4644
|
* two initials clear the ring by a pixel or more.
|
|
4645
4645
|
*/
|
|
4646
|
+
/*
|
|
4647
|
+
* A FACE IN A SENTENCE (`size="text"`): its box is the words' own size, so
|
|
4648
|
+
* it takes their font size and is measured in it, and its initials are set
|
|
4649
|
+
* apart at half that (`.crewlet-avatar__initials`), since setting the box's
|
|
4650
|
+
* own type would change what its em measures.
|
|
4651
|
+
*/
|
|
4652
|
+
.crewlet-avatar--text {
|
|
4653
|
+
--crewlet-avatar-size: 1.15em;
|
|
4654
|
+
font-size: inherit;
|
|
4655
|
+
/*
|
|
4656
|
+
* AN INLINE BLOCK, not a flex box, because it sits inside words a reader
|
|
4657
|
+
* copies: a browser copies a line break before an inline flex container,
|
|
4658
|
+
* so "ask @miles" came out over two lines. Its face is centred by its line
|
|
4659
|
+
* instead (`line-height` is its own height).
|
|
4660
|
+
*/
|
|
4661
|
+
display: inline-block;
|
|
4662
|
+
text-align: center;
|
|
4663
|
+
line-height: var(--crewlet-avatar-size);
|
|
4664
|
+
}
|
|
4665
|
+
|
|
4666
|
+
/* An image face is a block at every other size. */
|
|
4667
|
+
.crewlet-avatar--text.crewlet-avatar--image {
|
|
4668
|
+
display: inline-block;
|
|
4669
|
+
}
|
|
4670
|
+
|
|
4671
|
+
/* A glyph face (a token's key) centred by the line too, never a flex box. */
|
|
4672
|
+
.crewlet-avatar--text .crewlet-avatar__icon {
|
|
4673
|
+
display: inline-block;
|
|
4674
|
+
vertical-align: middle;
|
|
4675
|
+
}
|
|
4676
|
+
|
|
4677
|
+
/* The character takes 74% of the box: the rest, shared above and below it. */
|
|
4678
|
+
.crewlet-avatar--text .crewlet-avatar__character {
|
|
4679
|
+
margin: 13% auto;
|
|
4680
|
+
}
|
|
4681
|
+
|
|
4682
|
+
.crewlet-avatar__initials {
|
|
4683
|
+
/*
|
|
4684
|
+
* RELATIVE, like InlineCode's size and for its reason: the face sits in
|
|
4685
|
+
* whatever register its sentence is set in, so its initials are half of
|
|
4686
|
+
* that, never a step off the scale.
|
|
4687
|
+
*/
|
|
4688
|
+
--crewlet-avatar-initials-size: 0.5em;
|
|
4689
|
+
font-size: var(--crewlet-avatar-initials-size);
|
|
4690
|
+
line-height: 1;
|
|
4691
|
+
vertical-align: middle;
|
|
4692
|
+
}
|
|
4693
|
+
|
|
4646
4694
|
.crewlet-avatar--xs {
|
|
4647
4695
|
--crewlet-avatar-size: 20px;
|
|
4648
4696
|
font-size: calc(var(--crewlet-avatar-size) * 0.45);
|
|
@@ -10055,7 +10103,7 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10055
10103
|
}
|
|
10056
10104
|
|
|
10057
10105
|
|
|
10058
|
-
/* ChoiceButtons-
|
|
10106
|
+
/* ChoiceButtons-G7XHZKDP.css */
|
|
10059
10107
|
/*
|
|
10060
10108
|
* One answer, sent with one press: a column of buttons as tall as a touch
|
|
10061
10109
|
* target, the recommended one first and filled with the accent.
|
|
@@ -10155,6 +10203,13 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10155
10203
|
background: var(--color-brand-accent);
|
|
10156
10204
|
border-color: transparent;
|
|
10157
10205
|
color: var(--color-text-on-accent);
|
|
10206
|
+
/*
|
|
10207
|
+
* A COLOUR OR A REFERENCE IN THE LABEL takes the label's own ink for its
|
|
10208
|
+
* edge and its mark: the control border and the secondary grey are measured
|
|
10209
|
+
* on the surfaces, and on the accent they all but vanish (1.09:1 light).
|
|
10210
|
+
*/
|
|
10211
|
+
--crewlet-color-chip-ring: currentColor;
|
|
10212
|
+
--crewlet-inline-ref-mark-ink: currentColor;
|
|
10158
10213
|
}
|
|
10159
10214
|
|
|
10160
10215
|
.crewlet-choice-buttons__option--recommended:hover:not([aria-disabled='true']) {
|
|
@@ -10707,7 +10762,7 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10707
10762
|
}
|
|
10708
10763
|
|
|
10709
10764
|
|
|
10710
|
-
/* ColorChip-
|
|
10765
|
+
/* ColorChip-EYQCUXBV.css */
|
|
10711
10766
|
/*
|
|
10712
10767
|
* A colour as a small chip (ColorChip.tsx). Its fill is the one value that is
|
|
10713
10768
|
* not a token, and it arrives through `--crewlet-color-chip-value` only after
|
|
@@ -10720,8 +10775,15 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10720
10775
|
width: var(--spacing-3);
|
|
10721
10776
|
height: var(--spacing-3);
|
|
10722
10777
|
background: var(--crewlet-color-chip-value, var(--color-surface-inset));
|
|
10723
|
-
/*
|
|
10724
|
-
|
|
10778
|
+
/*
|
|
10779
|
+
* AN EDGE OF ITS OWN, so a colour that matches its ground is still a chip,
|
|
10780
|
+
* at the control border's step: it is the chip's boundary, a graphic a
|
|
10781
|
+
* reader has to see (WCAG 1.4.11), and that step clears 3:1 on every ground
|
|
10782
|
+
* in both themes. On a filled ground (an accent option) the ground sets
|
|
10783
|
+
* `--crewlet-color-chip-ring` to its own label's ink, since a grey edge
|
|
10784
|
+
* drawn on the accent nearly vanishes into it.
|
|
10785
|
+
*/
|
|
10786
|
+
box-shadow: inset 0 0 0 1px var(--crewlet-color-chip-ring, var(--color-border-control));
|
|
10725
10787
|
vertical-align: middle;
|
|
10726
10788
|
}
|
|
10727
10789
|
|
|
@@ -10730,6 +10792,20 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10730
10792
|
height: var(--spacing-4);
|
|
10731
10793
|
}
|
|
10732
10794
|
|
|
10795
|
+
/*
|
|
10796
|
+
* AT THE TEXT'S SIZE, for a colour written in a sentence, a code span or a
|
|
10797
|
+
* label: sized by the words around it, so it scales with any register, and
|
|
10798
|
+
* nearly square, since a round chip at this size reads as a status dot.
|
|
10799
|
+
*/
|
|
10800
|
+
.crewlet-color-chip--text {
|
|
10801
|
+
width: 0.8em;
|
|
10802
|
+
height: 0.8em;
|
|
10803
|
+
}
|
|
10804
|
+
|
|
10805
|
+
.crewlet-color-chip--text.crewlet-color-chip--square {
|
|
10806
|
+
border-radius: calc(var(--radius-xs) / 2);
|
|
10807
|
+
}
|
|
10808
|
+
|
|
10733
10809
|
.crewlet-color-chip--round {
|
|
10734
10810
|
border-radius: var(--radius-circle);
|
|
10735
10811
|
}
|
|
@@ -20307,6 +20383,138 @@ a.crewlet-icon-btn {
|
|
|
20307
20383
|
}
|
|
20308
20384
|
|
|
20309
20385
|
|
|
20386
|
+
/* InlineRef-SJWUKXGT.css */
|
|
20387
|
+
/*
|
|
20388
|
+
* A reference inside a sentence (InlineRef.tsx): a mark at the text's size,
|
|
20389
|
+
* then its words, in the sentence's own ink unless it is a link.
|
|
20390
|
+
*/
|
|
20391
|
+
|
|
20392
|
+
.crewlet-inline-ref {
|
|
20393
|
+
/*
|
|
20394
|
+
* InlineCode's size, restated because a consumer may import this component
|
|
20395
|
+
* without that one's stylesheet; the suite holds the two equal.
|
|
20396
|
+
*/
|
|
20397
|
+
--crewlet-inline-code-size: 0.92em;
|
|
20398
|
+
/* THE SENTENCE'S OWN INK: a reference in a row or on a filled option reads in what is around it. */
|
|
20399
|
+
color: inherit;
|
|
20400
|
+
/* A token is one word to a reader, and moves to the next line whole. */
|
|
20401
|
+
white-space: nowrap;
|
|
20402
|
+
}
|
|
20403
|
+
|
|
20404
|
+
.crewlet-inline-ref--wrap {
|
|
20405
|
+
white-space: normal;
|
|
20406
|
+
}
|
|
20407
|
+
|
|
20408
|
+
/* The mark and the first word are one run, so no mark ever ends a line alone. */
|
|
20409
|
+
.crewlet-inline-ref__head {
|
|
20410
|
+
white-space: nowrap;
|
|
20411
|
+
}
|
|
20412
|
+
|
|
20413
|
+
/*
|
|
20414
|
+
* A LINK reads as one, in the accent's ink step as `Link` draws it. The
|
|
20415
|
+
* underline is the words', never the mark's: an inline-block takes no
|
|
20416
|
+
* decoration from the anchor around it.
|
|
20417
|
+
*/
|
|
20418
|
+
.crewlet-inline-ref--link {
|
|
20419
|
+
color: var(--color-brand-accent-ink);
|
|
20420
|
+
text-decoration: none;
|
|
20421
|
+
border-radius: var(--radius-xs);
|
|
20422
|
+
}
|
|
20423
|
+
|
|
20424
|
+
.crewlet-inline-ref--link:hover {
|
|
20425
|
+
text-decoration: underline;
|
|
20426
|
+
}
|
|
20427
|
+
|
|
20428
|
+
.crewlet-inline-ref--link:focus-visible {
|
|
20429
|
+
outline: 2px solid var(--color-focus);
|
|
20430
|
+
outline-offset: 2px;
|
|
20431
|
+
}
|
|
20432
|
+
|
|
20433
|
+
/*
|
|
20434
|
+
* ONE SQUARE AT THE TEXT'S SIZE for every glyph, mark and chip, centred on
|
|
20435
|
+
* the same line, so a GitHub mark beside one word and a task's glyph beside
|
|
20436
|
+
* the next stand at the same height.
|
|
20437
|
+
*
|
|
20438
|
+
* AN INLINE BLOCK THAT CLIPS, because that is the one box whose baseline is
|
|
20439
|
+
* its own bottom edge whatever it holds: an inline-flex box takes its first
|
|
20440
|
+
* child's, so a vendor mark's `vertical-align: middle` put every mark a fifth
|
|
20441
|
+
* of an em low, and a smaller colour chip moved its box a tenth of an em
|
|
20442
|
+
* below the marks beside it. The drawing inside is centred in it.
|
|
20443
|
+
*/
|
|
20444
|
+
.crewlet-inline-ref__mark {
|
|
20445
|
+
display: inline-block;
|
|
20446
|
+
overflow: hidden;
|
|
20447
|
+
line-height: 0;
|
|
20448
|
+
margin-inline-end: 0.3em;
|
|
20449
|
+
/* A copy carries the words, never a picture's place. */
|
|
20450
|
+
user-select: none;
|
|
20451
|
+
}
|
|
20452
|
+
|
|
20453
|
+
.crewlet-inline-ref__mark--glyph {
|
|
20454
|
+
width: 1em;
|
|
20455
|
+
height: 1em;
|
|
20456
|
+
vertical-align: -0.125em;
|
|
20457
|
+
/*
|
|
20458
|
+
* The words' quiet step, or the ink a filled ground asks for: on an accent
|
|
20459
|
+
* fill a secondary grey is the one colour that does not read.
|
|
20460
|
+
*/
|
|
20461
|
+
color: var(--crewlet-inline-ref-mark-ink, var(--color-text-secondary));
|
|
20462
|
+
}
|
|
20463
|
+
|
|
20464
|
+
.crewlet-inline-ref__mark--glyph > * {
|
|
20465
|
+
display: block;
|
|
20466
|
+
position: relative;
|
|
20467
|
+
top: 50%;
|
|
20468
|
+
margin-inline: auto;
|
|
20469
|
+
translate: 0 -50%;
|
|
20470
|
+
}
|
|
20471
|
+
|
|
20472
|
+
.crewlet-inline-ref__mark--glyph > svg {
|
|
20473
|
+
width: 100%;
|
|
20474
|
+
height: 100%;
|
|
20475
|
+
}
|
|
20476
|
+
|
|
20477
|
+
/*
|
|
20478
|
+
* A FACE (`Avatar size="text"`) stands in a square a little larger than the
|
|
20479
|
+
* words, and a little below their centre, so it reaches no higher than a
|
|
20480
|
+
* capital and the line keeps its height. It fills its square from the top.
|
|
20481
|
+
*/
|
|
20482
|
+
.crewlet-inline-ref__mark--face {
|
|
20483
|
+
width: 1.15em;
|
|
20484
|
+
height: 1.15em;
|
|
20485
|
+
vertical-align: -0.22em;
|
|
20486
|
+
}
|
|
20487
|
+
|
|
20488
|
+
.crewlet-inline-ref__mark--face > * {
|
|
20489
|
+
vertical-align: top;
|
|
20490
|
+
}
|
|
20491
|
+
|
|
20492
|
+
.crewlet-inline-ref--code .crewlet-inline-ref__text {
|
|
20493
|
+
font-family: var(--font-family-mono);
|
|
20494
|
+
font-size: var(--crewlet-inline-code-size);
|
|
20495
|
+
/* An identifier is read character by character. */
|
|
20496
|
+
font-variant-ligatures: none;
|
|
20497
|
+
}
|
|
20498
|
+
|
|
20499
|
+
/*
|
|
20500
|
+
* WHAT A SCREEN READER IS TOLD AND THE EYE IS NOT: what the mark means, and
|
|
20501
|
+
* that a link opens a tab. Clipped as `VisuallyHidden` clips, and left out of
|
|
20502
|
+
* a copy, which carries the words a reader selected.
|
|
20503
|
+
*/
|
|
20504
|
+
.crewlet-inline-ref__said {
|
|
20505
|
+
position: absolute;
|
|
20506
|
+
width: 1px;
|
|
20507
|
+
height: 1px;
|
|
20508
|
+
margin: -1px;
|
|
20509
|
+
padding: 0;
|
|
20510
|
+
border: 0;
|
|
20511
|
+
overflow: hidden;
|
|
20512
|
+
clip-path: inset(50%);
|
|
20513
|
+
white-space: pre;
|
|
20514
|
+
user-select: none;
|
|
20515
|
+
}
|
|
20516
|
+
|
|
20517
|
+
|
|
20310
20518
|
/* Input-GEFFMKBS.css */
|
|
20311
20519
|
/*
|
|
20312
20520
|
* The form row: Input, Textarea, Label, FormField, FormRow, FormSection and
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.75.0",
|
|
4
4
|
"description": "Crewlet shared React components built on @crewlethq/tokens and @crewlethq/icons.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -42,8 +42,8 @@
|
|
|
42
42
|
"clean": "rm -rf dist src/generated"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@crewlethq/icons": "0.
|
|
46
|
-
"@crewlethq/tokens": "0.
|
|
45
|
+
"@crewlethq/icons": "0.75.0",
|
|
46
|
+
"@crewlethq/tokens": "0.75.0",
|
|
47
47
|
"prosemirror-commands": "1.7.2",
|
|
48
48
|
"prosemirror-gapcursor": "1.4.1",
|
|
49
49
|
"prosemirror-history": "1.5.1",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ThemeSwatch } from './chunk-3XQUEF5C.js';
|
|
2
2
|
import { useHighlightRest } from './chunk-7KHM2FZH.js';
|
|
3
|
-
import { Tag } from './chunk-I5OIKDX2.js';
|
|
4
3
|
import { useRoving, tabStop } from './chunk-EGMQURBR.js';
|
|
4
|
+
import { Tag } from './chunk-I5OIKDX2.js';
|
|
5
5
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
6
6
|
import './ThemeGallery-UEFZRT6W.css';
|
|
7
7
|
import { useId } from 'react';
|
|
File without changes
|
|
File without changes
|