@primer/react 38.35.1-rc.c9c0769e5 → 38.35.1
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/CHANGELOG.md +2 -0
- package/dist/ActionList/Group-d89306a8.css +2 -0
- package/dist/ActionList/Group-d89306a8.css.map +1 -0
- package/dist/ActionList/Group.module.css.js +2 -2
- package/dist/NavList/NavList.d.ts +2 -2
- package/dist/NavList/NavList.js +72 -34
- package/package.json +6 -6
- package/dist/ActionList/Group-efcb39da.css +0 -2
- package/dist/ActionList/Group-efcb39da.css.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
- [#8258](https://github.com/primer/react/pull/8258) [`edbcd94`](https://github.com/primer/react/commit/edbcd942354ff45148c2623be8b543ef8789a20f) Thanks [@llastflowers](https://github.com/llastflowers)! - Update `AvatarStack` to not reserve space when collapsed
|
|
8
8
|
|
|
9
|
+
- [#8273](https://github.com/primer/react/pull/8273) [`0c1e401`](https://github.com/primer/react/commit/0c1e401b6b0d57f95f8115ea90af78281751a766) Thanks [@liuliu-dev](https://github.com/liuliu-dev)! - NavList: Exclude group headings from navigation list item counts
|
|
10
|
+
|
|
9
11
|
## 38.35.0
|
|
10
12
|
|
|
11
13
|
### Minor Changes
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
.prc-ActionList-Group-lMIPQ{list-style:none}.prc-ActionList-Group-lMIPQ:not(:first-child){margin-block-start:var(--base-size-8,.5rem)}.prc-ActionList-GroupList-V5B3-{padding-inline-start:0}.prc-ActionList-GroupHeadingWrap-laXcX{color:var(--fgColor-muted,#59636e);display:flex;flex-direction:column;font-size:var(--text-body-size-small,.75rem);font-weight:var(--base-text-weight-semibold,600);line-height:18px;padding-block:var(--base-size-6,.375rem);padding-inline:var(--base-size-16,1rem)}.prc-ActionList-GroupHeadingWrap-laXcX:where([data-variant=filled]){background:var(--bgColor-muted,#f6f8fa);border-bottom:var(--borderWidth-thin,.0625rem) solid var(--borderColor-muted,#d1d9e0b3);border-top:var(--borderWidth-thin,.0625rem) solid var(--borderColor-muted,#d1d9e0b3);margin-block-end:var(--base-size-8,.5rem);margin-block-start:calc(var(--base-size-8,.5rem) - var(--borderWidth-thin,.0625rem));padding-inline:var(--base-size-16,1rem)}.prc-ActionList-GroupHeadingWrap-laXcX:where([data-variant=filled]):first-child{margin-block-start:0}.prc-ActionList-GroupHeading-STzxi{align-self:flex-start;color:var(--fgColor-muted,#59636e);font-size:var(--text-body-size-small,.75rem);font-weight:var(--base-text-weight-semibold,600);margin:0}.prc-ActionList-GroupHeadingWrap-laXcX[data-has-trailing-action]{align-items:center;flex-direction:row;gap:var(--base-size-8,.5rem);justify-content:space-between}.prc-ActionList-GroupHeadingWrap-laXcX[data-has-trailing-action]>.prc-ActionList-GroupHeading-STzxi{align-self:center}.prc-ActionList-GroupHeadingTrailingAction-jnb64{align-items:center;display:inline-flex;margin-inline-start:auto}
|
|
2
|
+
/*# sourceMappingURL=Group-d89306a8.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ActionList/Group.module.css.js"],"names":[],"mappings":"AAAA,4BACE,eAKF,CAHE,8CACE,2CACF,CAGF,gCACE,sBACF,CAEA,uCAQE,kCAA2B,CAP3B,YAAa,CAQb,qBAAsB,CAPtB,4CAAsC,CACtC,gDAA6C,CAI7C,gBAAiB,CAIjB,wCAAiC,CADjC,uCAoBF,CAjBE,oEAIE,uCAAgC,CAEhC,uFAAqE,CADrE,oFAAkE,CAFlE,yCAAoC,CADpC,oFAAsE,CAKtE,uCAKF,CAHE,gFACE,oBACF,CAQJ,mCAKE,qBAAsB,CADtB,kCAA2B,CAF3B,4CAAsC,CACtC,gDAA6C,CAF7C,QAKF,CAEA,iEAEE,kBAAmB,CADnB,kBAAmB,CAGnB,4BAAuB,CADvB,6BAMF,CAHE,oGACE,iBACF,CAGF,iDAEE,kBAAmB,CADnB,mBAAoB,CAEpB,wBACF","file":"Group-d89306a8.css","sourcesContent":[".Group {\n list-style: none;\n\n &:not(:first-child) {\n margin-block-start: var(--base-size-8);\n }\n}\n\n.GroupList {\n padding-inline-start: 0;\n}\n\n.GroupHeadingWrap {\n display: flex;\n font-size: var(--text-body-size-small);\n font-weight: var(--base-text-weight-semibold);\n\n /* line-height: var(--text-body-lineHeight-small); use when FF rolls out */\n /* stylelint-disable-next-line primer/typography */\n line-height: 18px;\n color: var(--fgColor-muted);\n flex-direction: column;\n padding-inline: var(--base-size-16);\n padding-block: var(--base-size-6);\n\n &:where([data-variant='filled']) {\n /* stylelint-disable-next-line primer/spacing */\n margin-block-start: calc(var(--base-size-8) - var(--borderWidth-thin));\n margin-block-end: var(--base-size-8);\n background: var(--bgColor-muted);\n border-top: solid var(--borderWidth-thin) var(--borderColor-muted);\n border-bottom: solid var(--borderWidth-thin) var(--borderColor-muted);\n padding-inline: var(--base-size-16);\n\n &:first-child {\n margin-block-start: 0;\n }\n }\n\n /* & + ul:has(.GroupHeadingWrap) {\n outline: solid 1px red;\n } */\n}\n\n.GroupHeading {\n margin: 0;\n font-size: var(--text-body-size-small);\n font-weight: var(--base-text-weight-semibold);\n color: var(--fgColor-muted);\n align-self: flex-start;\n}\n\n.GroupHeadingWrap[data-has-trailing-action] {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n gap: var(--base-size-8);\n\n & > .GroupHeading {\n align-self: center;\n }\n}\n\n.GroupHeadingTrailingAction {\n display: inline-flex;\n align-items: center;\n margin-inline-start: auto;\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./Group-
|
|
1
|
+
import "./Group-d89306a8.css";
|
|
2
2
|
//#region src/ActionList/Group.module.css.js
|
|
3
3
|
var Group_module_css_default = {
|
|
4
4
|
"Group": "prc-ActionList-Group-lMIPQ",
|
|
5
|
-
"GroupHeadingWrap": "prc-ActionList-GroupHeadingWrap-laXcX",
|
|
6
5
|
"GroupList": "prc-ActionList-GroupList-V5B3-",
|
|
6
|
+
"GroupHeadingWrap": "prc-ActionList-GroupHeadingWrap-laXcX",
|
|
7
7
|
"GroupHeading": "prc-ActionList-GroupHeading-STzxi",
|
|
8
8
|
"GroupHeadingTrailingAction": "prc-ActionList-GroupHeadingTrailingAction-jnb64"
|
|
9
9
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FCWithSlotMarker } from "../utils/types/Slots.js";
|
|
1
|
+
import { FCWithSlotMarker, WithSlotMarker } from "../utils/types/Slots.js";
|
|
2
2
|
import { ForwardRefComponent } from "../utils/polymorphic.js";
|
|
3
3
|
import { DistributiveOmit, PolymorphicProps } from "../utils/modern-polymorphic.js";
|
|
4
4
|
import { ActionListTrailingActionProps } from "../ActionList/TrailingAction.js";
|
|
@@ -71,7 +71,7 @@ declare const NavList: React.ForwardRefExoticComponent<Omit<NavListProps, "ref">
|
|
|
71
71
|
Divider: FCWithSlotMarker<React.PropsWithChildren<ActionListDividerProps>>;
|
|
72
72
|
Group: React.FC<NavListGroupProps>;
|
|
73
73
|
GroupExpand: React.ForwardRefExoticComponent<NavListGroupExpandProps & React.RefAttributes<HTMLButtonElement>>;
|
|
74
|
-
GroupHeading: React.FC<ActionListGroupHeadingProps
|
|
74
|
+
GroupHeading: WithSlotMarker<React.FC<ActionListGroupHeadingProps>>;
|
|
75
75
|
};
|
|
76
76
|
//#endregion
|
|
77
77
|
export { NavList, NavListDividerProps, NavListGroupExpandProps, NavListGroupHeadingProps, NavListGroupProps, NavListHeadingProps, NavListItemProps, NavListLeadingVisualProps, NavListProps, NavListSubNavProps, NavListTrailingVisualProps };
|
package/dist/NavList/NavList.js
CHANGED
|
@@ -3,6 +3,7 @@ import { useId as useId$1 } from "../hooks/useId.js";
|
|
|
3
3
|
import { useSlots } from "../hooks/useSlots.js";
|
|
4
4
|
import { fixedForwardRef } from "../utils/modern-polymorphic.js";
|
|
5
5
|
import _VisuallyHidden_module_css_default from "../_VisuallyHidden.module.css.js";
|
|
6
|
+
import { asSlot } from "../utils/as-slot.js";
|
|
6
7
|
import { ActionListContainerContext } from "../ActionList/ActionListContainerContext.js";
|
|
7
8
|
import Heading$1 from "../Heading/Heading.js";
|
|
8
9
|
import ActionList_module_css_default from "../ActionList/ActionList.module.css.js";
|
|
@@ -374,8 +375,23 @@ const Divider = ActionList.Divider;
|
|
|
374
375
|
Divider.displayName = "NavList.Divider";
|
|
375
376
|
const TrailingAction = ActionList.TrailingAction;
|
|
376
377
|
TrailingAction.displayName = "NavList.TrailingAction";
|
|
378
|
+
function flattenFragmentChildren(children) {
|
|
379
|
+
const flattenedChildren = [];
|
|
380
|
+
React.Children.forEach(children, (child) => {
|
|
381
|
+
if (/*#__PURE__*/ React.isValidElement(child) && child.type === React.Fragment) flattenedChildren.push(...flattenFragmentChildren(child.props.children));
|
|
382
|
+
else flattenedChildren.push(child);
|
|
383
|
+
});
|
|
384
|
+
return flattenedChildren;
|
|
385
|
+
}
|
|
386
|
+
function removeChildFromFragments(children, childToRemove) {
|
|
387
|
+
return React.Children.map(children, (child) => {
|
|
388
|
+
if (child === childToRemove) return null;
|
|
389
|
+
if (/*#__PURE__*/ React.isValidElement(child) && child.type === React.Fragment) return /*#__PURE__*/ React.cloneElement(child, void 0, removeChildFromFragments(child.props.children, childToRemove));
|
|
390
|
+
return child;
|
|
391
|
+
});
|
|
392
|
+
}
|
|
377
393
|
const Group = (t0) => {
|
|
378
|
-
const $ = c(
|
|
394
|
+
const $ = c(26);
|
|
379
395
|
let children;
|
|
380
396
|
let hideDivider;
|
|
381
397
|
let props;
|
|
@@ -395,48 +411,69 @@ const Group = (t0) => {
|
|
|
395
411
|
}
|
|
396
412
|
const headingLevel = React.useContext(NavListHeadingLevelContext);
|
|
397
413
|
let t1;
|
|
398
|
-
if ($[5] !==
|
|
399
|
-
t1 =
|
|
400
|
-
$[5] =
|
|
414
|
+
if ($[5] !== children) {
|
|
415
|
+
t1 = flattenFragmentChildren(children);
|
|
416
|
+
$[5] = children;
|
|
401
417
|
$[6] = t1;
|
|
402
418
|
} else t1 = $[6];
|
|
403
|
-
const groupHeadingAs = t1;
|
|
404
419
|
let t2;
|
|
405
|
-
if ($[7]
|
|
406
|
-
t2 =
|
|
407
|
-
$[7] =
|
|
408
|
-
|
|
409
|
-
|
|
420
|
+
if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
|
|
421
|
+
t2 = { groupHeading: GroupHeading };
|
|
422
|
+
$[7] = t2;
|
|
423
|
+
} else t2 = $[7];
|
|
424
|
+
const [slots] = useSlots(t1, t2);
|
|
410
425
|
let t3;
|
|
411
|
-
if ($[
|
|
412
|
-
t3 =
|
|
426
|
+
if ($[8] !== children || $[9] !== slots.groupHeading) {
|
|
427
|
+
t3 = slots.groupHeading ? removeChildFromFragments(children, slots.groupHeading) : children;
|
|
428
|
+
$[8] = children;
|
|
429
|
+
$[9] = slots.groupHeading;
|
|
430
|
+
$[10] = t3;
|
|
431
|
+
} else t3 = $[10];
|
|
432
|
+
const childrenWithoutHeading = t3;
|
|
433
|
+
let t4;
|
|
434
|
+
if ($[11] !== headingLevel) {
|
|
435
|
+
t4 = headingLevel ? levelToHeadingTag(headingLevel + 1) : "h3";
|
|
436
|
+
$[11] = headingLevel;
|
|
437
|
+
$[12] = t4;
|
|
438
|
+
} else t4 = $[12];
|
|
439
|
+
const groupHeadingAs = t4;
|
|
440
|
+
let t5;
|
|
441
|
+
if ($[13] !== hideDivider) {
|
|
442
|
+
t5 = !hideDivider && /*#__PURE__*/ jsx(ActionList.Divider, {});
|
|
443
|
+
$[13] = hideDivider;
|
|
444
|
+
$[14] = t5;
|
|
445
|
+
} else t5 = $[14];
|
|
446
|
+
let t6;
|
|
447
|
+
if ($[15] !== groupHeadingAs || $[16] !== slots.groupHeading || $[17] !== title) {
|
|
448
|
+
t6 = slots.groupHeading ? /*#__PURE__*/ React.cloneElement(slots.groupHeading, { headingWrapElement: "div" }) : title ? /*#__PURE__*/ jsx(ActionList.GroupHeading, {
|
|
413
449
|
as: groupHeadingAs,
|
|
414
450
|
"data-component": "ActionList.GroupHeading",
|
|
415
451
|
children: title
|
|
416
452
|
}) : null;
|
|
417
|
-
$[
|
|
418
|
-
$[
|
|
419
|
-
$[
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
453
|
+
$[15] = groupHeadingAs;
|
|
454
|
+
$[16] = slots.groupHeading;
|
|
455
|
+
$[17] = title;
|
|
456
|
+
$[18] = t6;
|
|
457
|
+
} else t6 = $[18];
|
|
458
|
+
let t7;
|
|
459
|
+
if ($[19] !== childrenWithoutHeading || $[20] !== props || $[21] !== t6) {
|
|
460
|
+
t7 = /*#__PURE__*/ jsxs(ActionList.Group, {
|
|
424
461
|
...props,
|
|
425
|
-
children: [
|
|
462
|
+
children: [t6, childrenWithoutHeading]
|
|
426
463
|
});
|
|
427
|
-
$[
|
|
428
|
-
$[
|
|
429
|
-
$[
|
|
430
|
-
$[
|
|
431
|
-
} else
|
|
432
|
-
let
|
|
433
|
-
if ($[
|
|
434
|
-
|
|
435
|
-
$[
|
|
436
|
-
$[
|
|
437
|
-
$[
|
|
438
|
-
} else
|
|
439
|
-
return
|
|
464
|
+
$[19] = childrenWithoutHeading;
|
|
465
|
+
$[20] = props;
|
|
466
|
+
$[21] = t6;
|
|
467
|
+
$[22] = t7;
|
|
468
|
+
} else t7 = $[22];
|
|
469
|
+
let t8;
|
|
470
|
+
if ($[23] !== t5 || $[24] !== t7) {
|
|
471
|
+
t8 = /*#__PURE__*/ jsxs(Fragment, { children: [t5, t7] });
|
|
472
|
+
$[23] = t5;
|
|
473
|
+
$[24] = t7;
|
|
474
|
+
$[25] = t8;
|
|
475
|
+
} else t8 = $[25];
|
|
476
|
+
return t8;
|
|
440
477
|
};
|
|
441
478
|
const GroupExpand = /*#__PURE__*/ React.forwardRef((t0, forwardedRef) => {
|
|
442
479
|
const $ = c(23);
|
|
@@ -534,7 +571,7 @@ const GroupExpand = /*#__PURE__*/ React.forwardRef((t0, forwardedRef) => {
|
|
|
534
571
|
* This is an alternative to the `title` prop on `NavList.Group`.
|
|
535
572
|
* It was primarily added to allow links in group headings.
|
|
536
573
|
*/
|
|
537
|
-
const
|
|
574
|
+
const GroupHeadingImpl = (t0) => {
|
|
538
575
|
const $ = c(13);
|
|
539
576
|
let as;
|
|
540
577
|
let className;
|
|
@@ -582,6 +619,7 @@ const GroupHeading = (t0) => {
|
|
|
582
619
|
} else t3 = $[12];
|
|
583
620
|
return t3;
|
|
584
621
|
};
|
|
622
|
+
const GroupHeading = asSlot(GroupHeadingImpl, ActionList.GroupHeading);
|
|
585
623
|
const NavList = Object.assign(Root, {
|
|
586
624
|
Description: ActionList.Description,
|
|
587
625
|
Heading,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@primer/react",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "38.35.1
|
|
4
|
+
"version": "38.35.1",
|
|
5
5
|
"description": "An implementation of GitHub's Primer Design System using React",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"module": "./dist/index.js",
|
|
@@ -110,12 +110,12 @@
|
|
|
110
110
|
"@primer/doc-gen": "^0.0.1",
|
|
111
111
|
"@primer/react-compiler-check": "^0.0.0",
|
|
112
112
|
"@rolldown/plugin-babel": "^0.2.3",
|
|
113
|
-
"@storybook/addon-a11y": "10.5.
|
|
114
|
-
"@storybook/addon-docs": "10.5.
|
|
115
|
-
"@storybook/addon-links": "10.5.
|
|
113
|
+
"@storybook/addon-a11y": "10.5.5",
|
|
114
|
+
"@storybook/addon-docs": "10.5.5",
|
|
115
|
+
"@storybook/addon-links": "10.5.5",
|
|
116
116
|
"@storybook/addon-mcp": "^0.7.0",
|
|
117
117
|
"@storybook/icons": "^2.1.0",
|
|
118
|
-
"@storybook/react-vite": "10.5.
|
|
118
|
+
"@storybook/react-vite": "10.5.5",
|
|
119
119
|
"@testing-library/dom": "^10.4.0",
|
|
120
120
|
"@testing-library/jest-dom": "^6.4.5",
|
|
121
121
|
"@testing-library/react": "^16.3.0",
|
|
@@ -172,7 +172,7 @@
|
|
|
172
172
|
"rolldown-plugin-dts": "^0.26.0",
|
|
173
173
|
"rolldown-plugin-import-css": "^0.0.0",
|
|
174
174
|
"rolldown-plugin-preserve-directives": "^0.0.0",
|
|
175
|
-
"storybook": "10.5.
|
|
175
|
+
"storybook": "10.5.5",
|
|
176
176
|
"terser": "5.36.0",
|
|
177
177
|
"ts-toolbelt": "9.6.0",
|
|
178
178
|
"tsx": "4.20.3",
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.prc-ActionList-Group-lMIPQ{list-style:none}.prc-ActionList-Group-lMIPQ:not(:first-child){margin-block-start:var(--base-size-8,.5rem)}.prc-ActionList-Group-lMIPQ:not(:first-child):has(.prc-ActionList-GroupHeadingWrap-laXcX+ul>.prc-ActionList-GroupHeadingWrap-laXcX)>.prc-ActionList-GroupHeadingWrap-laXcX{display:none}.prc-ActionList-GroupList-V5B3-{padding-inline-start:0}.prc-ActionList-GroupHeadingWrap-laXcX{color:var(--fgColor-muted,#59636e);display:flex;flex-direction:column;font-size:var(--text-body-size-small,.75rem);font-weight:var(--base-text-weight-semibold,600);line-height:18px;padding-block:var(--base-size-6,.375rem);padding-inline:var(--base-size-16,1rem)}.prc-ActionList-GroupHeadingWrap-laXcX:where([data-variant=filled]){background:var(--bgColor-muted,#f6f8fa);border-bottom:var(--borderWidth-thin,.0625rem) solid var(--borderColor-muted,#d1d9e0b3);border-top:var(--borderWidth-thin,.0625rem) solid var(--borderColor-muted,#d1d9e0b3);margin-block-end:var(--base-size-8,.5rem);margin-block-start:calc(var(--base-size-8,.5rem) - var(--borderWidth-thin,.0625rem));padding-inline:var(--base-size-16,1rem)}.prc-ActionList-GroupHeadingWrap-laXcX:where([data-variant=filled]):first-child{margin-block-start:0}.prc-ActionList-GroupHeading-STzxi{align-self:flex-start;color:var(--fgColor-muted,#59636e);font-size:var(--text-body-size-small,.75rem);font-weight:var(--base-text-weight-semibold,600);margin:0}.prc-ActionList-GroupHeadingWrap-laXcX[data-has-trailing-action]{align-items:center;flex-direction:row;gap:var(--base-size-8,.5rem);justify-content:space-between}.prc-ActionList-GroupHeadingWrap-laXcX[data-has-trailing-action]>.prc-ActionList-GroupHeading-STzxi{align-self:center}.prc-ActionList-GroupHeadingTrailingAction-jnb64{align-items:center;display:inline-flex;margin-inline-start:auto}
|
|
2
|
-
/*# sourceMappingURL=Group-efcb39da.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ActionList/Group.module.css.js"],"names":[],"mappings":"AAAA,4BACE,eAcF,CAZE,8CACE,2CAUF,CAJI,2KACE,YACF,CAKN,gCACE,sBACF,CAEA,uCAQE,kCAA2B,CAP3B,YAAa,CAQb,qBAAsB,CAPtB,4CAAsC,CACtC,gDAA6C,CAI7C,gBAAiB,CAIjB,wCAAiC,CADjC,uCAoBF,CAjBE,oEAIE,uCAAgC,CAEhC,uFAAqE,CADrE,oFAAkE,CAFlE,yCAAoC,CADpC,oFAAsE,CAKtE,uCAKF,CAHE,gFACE,oBACF,CAQJ,mCAKE,qBAAsB,CADtB,kCAA2B,CAF3B,4CAAsC,CACtC,gDAA6C,CAF7C,QAKF,CAEA,iEAEE,kBAAmB,CADnB,kBAAmB,CAGnB,4BAAuB,CADvB,6BAMF,CAHE,oGACE,iBACF,CAGF,iDAEE,kBAAmB,CADnB,mBAAoB,CAEpB,wBACF","file":"Group-efcb39da.css","sourcesContent":[".Group {\n list-style: none;\n\n &:not(:first-child) {\n margin-block-start: var(--base-size-8);\n\n /* If somebody tries to pass the `title` prop AND a `NavList.GroupHeading` as a child, hide the `ActionList.GroupHeading */\n /* stylelint-disable-next-line selector-max-specificity, selector-pseudo-class-disallowed-list -- scoped to CSS Module, audited (github/github-ui#17224) */\n &:has(.GroupHeadingWrap + ul > .GroupHeadingWrap) {\n /* stylelint-disable-next-line selector-max-specificity */\n & > .GroupHeadingWrap {\n display: none;\n }\n }\n }\n}\n\n.GroupList {\n padding-inline-start: 0;\n}\n\n.GroupHeadingWrap {\n display: flex;\n font-size: var(--text-body-size-small);\n font-weight: var(--base-text-weight-semibold);\n\n /* line-height: var(--text-body-lineHeight-small); use when FF rolls out */\n /* stylelint-disable-next-line primer/typography */\n line-height: 18px;\n color: var(--fgColor-muted);\n flex-direction: column;\n padding-inline: var(--base-size-16);\n padding-block: var(--base-size-6);\n\n &:where([data-variant='filled']) {\n /* stylelint-disable-next-line primer/spacing */\n margin-block-start: calc(var(--base-size-8) - var(--borderWidth-thin));\n margin-block-end: var(--base-size-8);\n background: var(--bgColor-muted);\n border-top: solid var(--borderWidth-thin) var(--borderColor-muted);\n border-bottom: solid var(--borderWidth-thin) var(--borderColor-muted);\n padding-inline: var(--base-size-16);\n\n &:first-child {\n margin-block-start: 0;\n }\n }\n\n /* & + ul:has(.GroupHeadingWrap) {\n outline: solid 1px red;\n } */\n}\n\n.GroupHeading {\n margin: 0;\n font-size: var(--text-body-size-small);\n font-weight: var(--base-text-weight-semibold);\n color: var(--fgColor-muted);\n align-self: flex-start;\n}\n\n.GroupHeadingWrap[data-has-trailing-action] {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n gap: var(--base-size-8);\n\n & > .GroupHeading {\n align-self: center;\n }\n}\n\n.GroupHeadingTrailingAction {\n display: inline-flex;\n align-items: center;\n margin-inline-start: auto;\n}\n"]}
|