@oxy.so/bloom 4.10.0 → 4.12.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/docs/item.mdx CHANGED
@@ -35,6 +35,7 @@ import { Item } from '@oxy.so/bloom/item';
35
35
  | `role` | **how it is announced** — see below |
36
36
  | `selected` | the selected state, for `option` / `radio` rows |
37
37
  | `active` | the "you are here" state, for navigation rows |
38
+ | `highlighted` | the keyboard's cursor, in a list a field drives |
38
39
  | `density` | `comfortable` (default) or `compact` for a dense list |
39
40
  | `destructive` | paints the title in the error role |
40
41
 
@@ -62,6 +63,12 @@ similar and they are not the same claim: a sidebar row is active without the
62
63
  user having selected anything, and a picker row is selected whether or not it
63
64
  is focused.
64
65
 
66
+ `highlighted` is the third: *the keyboard is here* — the row an arrow key has
67
+ moved to in a list the field above it drives (a combobox, a composer's
68
+ suggestions). It paints the hover wash, because it is the same claim as the
69
+ pointer resting on the row, and it announces nothing: the row is neither chosen
70
+ nor current.
71
+
65
72
  ## `destructive` colours, it does not confirm
66
73
 
67
74
  It paints the title in the error role. It does not add a confirmation step —
@@ -72,6 +72,28 @@ continuous scroll. A screen that measures scroll passes its own value.
72
72
  has reached the first heading has read something — and an empty outline at 0,
73
73
  which is the honest answer rather than a guess.
74
74
 
75
+ ## Give a heading an `href` and it is a real link
76
+
77
+ On web a heading with an `href` (usually `#id`) renders as an `<a href>`. A
78
+ reader can open it in a new tab, copy it, or middle-click it, and a crawler
79
+ reads the document's structure from the links — none of which a row that only
80
+ answers presses can offer.
81
+
82
+ ```tsx
83
+ <OutlineNav
84
+ headings={headings.map((h) => ({ ...h, href: `#${h.id}` }))}
85
+ activeId={activeId}
86
+ onSelect={(heading) => scrollTo(heading.id)}
87
+ />
88
+ ```
89
+
90
+ `onSelect` still owns the ordinary press: a plain click calls it and the
91
+ browser does not follow the link, so the app's own scroll (and any offset for a
92
+ sticky header) is what runs. A modified click — ⌘, Ctrl or Shift held, or a
93
+ button other than the primary — is left to the browser, which opens the tab or
94
+ window the reader asked for. Without `onSelect`, the anchor simply navigates.
95
+ Native ignores `href`.
96
+
75
97
  ## Traps
76
98
 
77
99
  - **The progress bar is a `Meter`**, so it is a real `progressbar` with a name
@@ -45,6 +45,7 @@ const ItemComponent = function Item({
45
45
  // different statements to assistive tech; both remain falsy for styling.
46
46
  selected,
47
47
  active = false,
48
+ highlighted = false,
48
49
  density = 'comfortable',
49
50
  style,
50
51
  titleStyle,
@@ -88,20 +89,21 @@ const ItemComponent = function Item({
88
89
  minHeight: cfg.minHeight,
89
90
  borderRadius: _tokens.borderRadius.sm
90
91
  };
91
- // Precedence, loudest first. Hover paints ONLY a row that had no background
92
- // of its own: washing over `active` or `selected` would read as the row
93
- // losing the state it is announcing, which is worse than no hover at all.
94
- // `contrast50` is the same wash `SubtleHover` uses, so a hovered row and a
95
- // hovered card agree.
92
+ // Precedence, loudest first. Hover and the keyboard's cursor paint ONLY a
93
+ // row that had no background of its own: washing over `active` or
94
+ // `selected` would read as the row losing the state it is announcing,
95
+ // which is worse than no hover at all. `contrast50` is the same wash
96
+ // `SubtleHover` uses, so a hovered row and a hovered card agree — and it
97
+ // reads on a primary-tinted surface, where `primaryLight` does not.
96
98
  if (active) {
97
99
  base.backgroundColor = theme.colors.primaryLight;
98
100
  } else if (selected) {
99
101
  base.backgroundColor = theme.colors.backgroundSecondary;
100
- } else if (hovered) {
102
+ } else if (highlighted || hovered) {
101
103
  base.backgroundColor = theme.colors.contrast50;
102
104
  }
103
105
  return base;
104
- }, [cfg, selected, active, hovered, theme]);
106
+ }, [cfg, selected, active, highlighted, hovered, theme]);
105
107
  const body = children != null ? children : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
106
108
  style: styles.textColumn,
107
109
  children: [title != null ? typeof title === 'string' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Text, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_useInteractionState","_index","_tokens","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DENSITY","comfortable","paddingVertical","minHeight","compact","ItemComponent","Item","title","subtitle","children","leading","trailing","onPress","onLongPress","disabled","destructive","selected","active","density","style","titleStyle","subtitleStyle","accessibilityLabel","accessibilityHint","accessibilityRole","role","expanded","testID","theme","useTheme","state","pressed","onIn","onPressIn","onOut","onPressOut","useInteractionState","hovered","onHoverIn","onHoverOut","titleColor","colors","error","text","cfg","containerStyle","useMemo","base","flexDirection","alignItems","gap","space","md","paddingLeft","lg","paddingRight","borderRadius","sm","backgroundColor","primaryLight","backgroundSecondary","contrast50","body","jsxs","View","styles","textColumn","jsx","Text","numberOfLines","color","textSecondary","content","slot","resolvedRole","selectedAria","handlePress","undefined","handleLongPress","Pressable","android_ripple","border","accessibilityState","StyleSheet","create","justifyContent","flex","minWidth","fontSize","fontWeight","lineHeight","opacity","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["item/Item.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_useInteractionState","_index","_tokens","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DENSITY","comfortable","paddingVertical","minHeight","compact","ItemComponent","Item","title","subtitle","children","leading","trailing","onPress","onLongPress","disabled","destructive","selected","active","highlighted","density","style","titleStyle","subtitleStyle","accessibilityLabel","accessibilityHint","accessibilityRole","role","expanded","testID","theme","useTheme","state","pressed","onIn","onPressIn","onOut","onPressOut","useInteractionState","hovered","onHoverIn","onHoverOut","titleColor","colors","error","text","cfg","containerStyle","useMemo","base","flexDirection","alignItems","gap","space","md","paddingLeft","lg","paddingRight","borderRadius","sm","backgroundColor","primaryLight","backgroundSecondary","contrast50","body","jsxs","View","styles","textColumn","jsx","Text","numberOfLines","color","textSecondary","content","slot","resolvedRole","selectedAria","handlePress","undefined","handleLongPress","Pressable","android_ripple","border","accessibilityState","StyleSheet","create","justifyContent","flex","minWidth","fontSize","fontWeight","lineHeight","opacity","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["item/Item.tsx"],"mappings":"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","ignoreList":[]}
@@ -90,10 +90,15 @@ function OutlineRow({
90
90
  paddingLeft: 10,
91
91
  '--bloom-outline-ring': paint.accent
92
92
  };
93
+ // On web a heading with an href is a real anchor (see `OutlineHeading.href`).
94
+ const href = IS_WEB ? heading.href : undefined;
93
95
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
94
96
  ...(0, _webData.webDataSet)({
95
97
  bloomOutlineRow: ''
96
98
  }),
99
+ ...(href != null ? {
100
+ href
101
+ } : {}),
97
102
  role: "link",
98
103
  accessibilityLabel: heading.label
99
104
  // The reader is AT this heading; they did not choose it from a set.
@@ -102,7 +107,16 @@ function OutlineRow({
102
107
  accessibilityState: {
103
108
  selected: active
104
109
  },
105
- onPress: onSelect ? () => onSelect(heading) : undefined,
110
+ onPress: onSelect ? event => {
111
+ if (href != null) {
112
+ // A modified click asks the browser for a tab or a window: leave
113
+ // it the anchor. Only a plain press is the app's jump.
114
+ const click = event.nativeEvent;
115
+ if (click.metaKey || click.ctrlKey || click.shiftKey || (click.button ?? 0) !== 0) return;
116
+ event.preventDefault();
117
+ }
118
+ onSelect(heading);
119
+ } : undefined,
106
120
  onHoverIn: onIn,
107
121
  onHoverOut: onOut,
108
122
  style: [rowStyle, ringOffset],
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_index","_useInteractionState","_surfaceLevels","_interactiveWebCss","_webData","_useTheme","_index2","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","IS_WEB","Platform","OS","STYLE_ID","ROW","OUTLINE_NAV_CSS","interactiveWebCss","selector","varPrefix","reset","transition","outlineOffset","DEFAULT_LABELS","outline","progress","at","of","INDENT","RAIL","OutlineRow","heading","active","paint","height","onSelect","testID","state","hovered","onIn","onOut","useInteractionState","ringOffset","useRingOffsetStyle","rowStyle","flexDirection","alignItems","minHeight","paddingVertical","paddingRight","borderLeftWidth","borderLeftColor","accent","rail","paddingLeft","jsx","Pressable","webDataSet","bloomOutlineRow","role","accessibilityLabel","label","undefined","accessibilityState","selected","onPress","onHoverIn","onHoverOut","style","children","Text","variant","numberOfLines","color","text","quiet","flexShrink","LIST_ROLE","accessibilityRole","LIST_ITEM_ROLE","OutlineList","nodes","depth","activeId","View","marginLeft","map","node","jsxs","id","length","OutlineNav","headings","hideProgress","title","compactMaxLevel","labels","labelsProp","theme","useTheme","surface","useSurfaceFill","useInteractiveWebCss","compact","shown","useMemo","compactHeadings","tree","buildOutlineTree","surfaceTextOn","textSecondary","colors","primarySubtleForeground","textGraphical","value","outlineProgress","Math","max","findIndex","name","marginBottom","Meter","valueText","displayName"],"sourceRoot":"../../../src","sources":["outline-nav/OutlineNav.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_index","_useInteractionState","_surfaceLevels","_interactiveWebCss","_webData","_useTheme","_index2","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","IS_WEB","Platform","OS","STYLE_ID","ROW","OUTLINE_NAV_CSS","interactiveWebCss","selector","varPrefix","reset","transition","outlineOffset","DEFAULT_LABELS","outline","progress","at","of","INDENT","RAIL","OutlineRow","heading","active","paint","height","onSelect","testID","state","hovered","onIn","onOut","useInteractionState","ringOffset","useRingOffsetStyle","rowStyle","flexDirection","alignItems","minHeight","paddingVertical","paddingRight","borderLeftWidth","borderLeftColor","accent","rail","paddingLeft","href","undefined","jsx","Pressable","webDataSet","bloomOutlineRow","role","accessibilityLabel","label","accessibilityState","selected","onPress","event","click","nativeEvent","metaKey","ctrlKey","shiftKey","button","preventDefault","onHoverIn","onHoverOut","style","children","Text","variant","numberOfLines","color","text","quiet","flexShrink","LIST_ROLE","accessibilityRole","LIST_ITEM_ROLE","OutlineList","nodes","depth","activeId","View","marginLeft","map","node","jsxs","id","length","OutlineNav","headings","hideProgress","title","compactMaxLevel","labels","labelsProp","theme","useTheme","surface","useSurfaceFill","useInteractiveWebCss","compact","shown","useMemo","compactHeadings","tree","buildOutlineTree","surfaceTextOn","textSecondary","colors","primarySubtleForeground","textGraphical","value","outlineProgress","Math","max","findIndex","name","marginBottom","Meter","valueText","displayName"],"sourceRoot":"../../../src","sources":["outline-nav/OutlineNav.tsx"],"mappings":"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","ignoreList":[]}
@@ -40,6 +40,7 @@ const ItemComponent = function Item({
40
40
  // different statements to assistive tech; both remain falsy for styling.
41
41
  selected,
42
42
  active = false,
43
+ highlighted = false,
43
44
  density = 'comfortable',
44
45
  style,
45
46
  titleStyle,
@@ -83,20 +84,21 @@ const ItemComponent = function Item({
83
84
  minHeight: cfg.minHeight,
84
85
  borderRadius: borderRadius.sm
85
86
  };
86
- // Precedence, loudest first. Hover paints ONLY a row that had no background
87
- // of its own: washing over `active` or `selected` would read as the row
88
- // losing the state it is announcing, which is worse than no hover at all.
89
- // `contrast50` is the same wash `SubtleHover` uses, so a hovered row and a
90
- // hovered card agree.
87
+ // Precedence, loudest first. Hover and the keyboard's cursor paint ONLY a
88
+ // row that had no background of its own: washing over `active` or
89
+ // `selected` would read as the row losing the state it is announcing,
90
+ // which is worse than no hover at all. `contrast50` is the same wash
91
+ // `SubtleHover` uses, so a hovered row and a hovered card agree — and it
92
+ // reads on a primary-tinted surface, where `primaryLight` does not.
91
93
  if (active) {
92
94
  base.backgroundColor = theme.colors.primaryLight;
93
95
  } else if (selected) {
94
96
  base.backgroundColor = theme.colors.backgroundSecondary;
95
- } else if (hovered) {
97
+ } else if (highlighted || hovered) {
96
98
  base.backgroundColor = theme.colors.contrast50;
97
99
  }
98
100
  return base;
99
- }, [cfg, selected, active, hovered, theme]);
101
+ }, [cfg, selected, active, highlighted, hovered, theme]);
100
102
  const body = children != null ? children : /*#__PURE__*/_jsxs(View, {
101
103
  style: styles.textColumn,
102
104
  children: [title != null ? typeof title === 'string' ? /*#__PURE__*/_jsx(Text, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useMemo","Pressable","StyleSheet","View","useTheme","useInteractionState","Text","borderRadius","fontSize","space","jsx","_jsx","jsxs","_jsxs","DENSITY","comfortable","paddingVertical","minHeight","compact","ItemComponent","Item","title","subtitle","children","leading","trailing","onPress","onLongPress","disabled","destructive","selected","active","density","style","titleStyle","subtitleStyle","accessibilityLabel","accessibilityHint","accessibilityRole","role","expanded","testID","theme","state","pressed","onIn","onPressIn","onOut","onPressOut","hovered","onHoverIn","onHoverOut","titleColor","colors","error","text","cfg","containerStyle","base","flexDirection","alignItems","gap","md","paddingLeft","lg","paddingRight","sm","backgroundColor","primaryLight","backgroundSecondary","contrast50","body","styles","textColumn","numberOfLines","color","textSecondary","content","slot","resolvedRole","selectedAria","handlePress","undefined","handleLongPress","android_ripple","border","accessibilityState","create","justifyContent","flex","minWidth","fontWeight","lineHeight","opacity","displayName"],"sourceRoot":"../../../src","sources":["item/Item.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useMemo","Pressable","StyleSheet","View","useTheme","useInteractionState","Text","borderRadius","fontSize","space","jsx","_jsx","jsxs","_jsxs","DENSITY","comfortable","paddingVertical","minHeight","compact","ItemComponent","Item","title","subtitle","children","leading","trailing","onPress","onLongPress","disabled","destructive","selected","active","highlighted","density","style","titleStyle","subtitleStyle","accessibilityLabel","accessibilityHint","accessibilityRole","role","expanded","testID","theme","state","pressed","onIn","onPressIn","onOut","onPressOut","hovered","onHoverIn","onHoverOut","titleColor","colors","error","text","cfg","containerStyle","base","flexDirection","alignItems","gap","md","paddingLeft","lg","paddingRight","sm","backgroundColor","primaryLight","backgroundSecondary","contrast50","body","styles","textColumn","numberOfLines","color","textSecondary","content","slot","resolvedRole","selectedAria","handlePress","undefined","handleLongPress","android_ripple","border","accessibilityState","create","justifyContent","flex","minWidth","fontWeight","lineHeight","opacity","displayName"],"sourceRoot":"../../../src","sources":["item/Item.tsx"],"mappings":"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","ignoreList":[]}
@@ -85,10 +85,15 @@ function OutlineRow({
85
85
  paddingLeft: 10,
86
86
  '--bloom-outline-ring': paint.accent
87
87
  };
88
+ // On web a heading with an href is a real anchor (see `OutlineHeading.href`).
89
+ const href = IS_WEB ? heading.href : undefined;
88
90
  return /*#__PURE__*/_jsx(Pressable, {
89
91
  ...webDataSet({
90
92
  bloomOutlineRow: ''
91
93
  }),
94
+ ...(href != null ? {
95
+ href
96
+ } : {}),
92
97
  role: "link",
93
98
  accessibilityLabel: heading.label
94
99
  // The reader is AT this heading; they did not choose it from a set.
@@ -97,7 +102,16 @@ function OutlineRow({
97
102
  accessibilityState: {
98
103
  selected: active
99
104
  },
100
- onPress: onSelect ? () => onSelect(heading) : undefined,
105
+ onPress: onSelect ? event => {
106
+ if (href != null) {
107
+ // A modified click asks the browser for a tab or a window: leave
108
+ // it the anchor. Only a plain press is the app's jump.
109
+ const click = event.nativeEvent;
110
+ if (click.metaKey || click.ctrlKey || click.shiftKey || (click.button ?? 0) !== 0) return;
111
+ event.preventDefault();
112
+ }
113
+ onSelect(heading);
114
+ } : undefined,
101
115
  onHoverIn: onIn,
102
116
  onHoverOut: onOut,
103
117
  style: [rowStyle, ringOffset],
@@ -1 +1 @@
1
- {"version":3,"names":["React","useMemo","Platform","Pressable","View","Meter","useInteractionState","surfaceTextOn","useRingOffsetStyle","useSurfaceFill","interactiveWebCss","useInteractiveWebCss","webDataSet","useTheme","Text","buildOutlineTree","compactHeadings","outlineProgress","jsx","_jsx","jsxs","_jsxs","IS_WEB","OS","STYLE_ID","ROW","OUTLINE_NAV_CSS","selector","varPrefix","reset","transition","outlineOffset","DEFAULT_LABELS","outline","progress","at","of","INDENT","RAIL","OutlineRow","heading","active","paint","height","onSelect","testID","state","hovered","onIn","onOut","ringOffset","rowStyle","flexDirection","alignItems","minHeight","paddingVertical","paddingRight","borderLeftWidth","borderLeftColor","accent","rail","paddingLeft","bloomOutlineRow","role","accessibilityLabel","label","undefined","accessibilityState","selected","onPress","onHoverIn","onHoverOut","style","children","variant","numberOfLines","color","text","quiet","flexShrink","LIST_ROLE","accessibilityRole","LIST_ITEM_ROLE","OutlineList","nodes","depth","activeId","marginLeft","map","node","id","length","OutlineNav","headings","hideProgress","title","compactMaxLevel","labels","labelsProp","theme","surface","compact","shown","tree","textSecondary","colors","primarySubtleForeground","textGraphical","value","Math","max","findIndex","name","marginBottom","valueText","displayName"],"sourceRoot":"../../../src","sources":["outline-nav/OutlineNav.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","Platform","Pressable","View","Meter","useInteractionState","surfaceTextOn","useRingOffsetStyle","useSurfaceFill","interactiveWebCss","useInteractiveWebCss","webDataSet","useTheme","Text","buildOutlineTree","compactHeadings","outlineProgress","jsx","_jsx","jsxs","_jsxs","IS_WEB","OS","STYLE_ID","ROW","OUTLINE_NAV_CSS","selector","varPrefix","reset","transition","outlineOffset","DEFAULT_LABELS","outline","progress","at","of","INDENT","RAIL","OutlineRow","heading","active","paint","height","onSelect","testID","state","hovered","onIn","onOut","ringOffset","rowStyle","flexDirection","alignItems","minHeight","paddingVertical","paddingRight","borderLeftWidth","borderLeftColor","accent","rail","paddingLeft","href","undefined","bloomOutlineRow","role","accessibilityLabel","label","accessibilityState","selected","onPress","event","click","nativeEvent","metaKey","ctrlKey","shiftKey","button","preventDefault","onHoverIn","onHoverOut","style","children","variant","numberOfLines","color","text","quiet","flexShrink","LIST_ROLE","accessibilityRole","LIST_ITEM_ROLE","OutlineList","nodes","depth","activeId","marginLeft","map","node","id","length","OutlineNav","headings","hideProgress","title","compactMaxLevel","labels","labelsProp","theme","surface","compact","shown","tree","textSecondary","colors","primarySubtleForeground","textGraphical","value","Math","max","findIndex","name","marginBottom","valueText","displayName"],"sourceRoot":"../../../src","sources":["outline-nav/OutlineNav.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,QAAQ,EAAEC,SAAS,EAAEC,IAAI,QAAoC,cAAc;AAEpF,SAASC,KAAK,QAAQ,sBAAa;AACnC,SAASC,mBAAmB,QAAQ,mCAAgC;AACpE,SAASC,aAAa,EAAEC,kBAAkB,EAAEC,cAAc,QAAQ,6BAA0B;AAC5F,SAASC,iBAAiB,EAAEC,oBAAoB,QAAQ,kCAA+B;AACvF,SAASC,UAAU,QAAQ,uBAAoB;AAE/C,SAASC,QAAQ,QAAQ,uBAAoB;AAC7C,SAASC,IAAI,QAAQ,wBAAe;AACpC,SAASC,gBAAgB,EAAEC,eAAe,EAAEC,eAAe,QAA0B,aAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAGhG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,MAAM,GAAGpB,QAAQ,CAACqB,EAAE,KAAK,KAAK;AAEpC,MAAMC,QAAQ,GAAG,2BAA2B;AAC5C,MAAMC,GAAG,GAAG,0BAA0B;AAEtC,MAAMC,eAAe,GAAGhB,iBAAiB,CAAC;EACxCiB,QAAQ,EAAEF,GAAG;EACbG,SAAS,EAAE,eAAe;EAC1BC,KAAK,EAAE,MAAM;EACbC,UAAU,EAAE,kBAAkB;EAC9BC,aAAa,EAAE;AACjB,CAAC,CAAC;AAEF,MAAMC,cAA0C,GAAG;EACjDC,OAAO,EAAE,cAAc;EACvBC,QAAQ,EAAEA,CAACC,EAAE,EAAEC,EAAE,KAAK,WAAWD,EAAE,OAAOC,EAAE;AAC9C,CAAC;;AAED;AACA,MAAMC,MAAM,GAAG,EAAE;AACjB;AACA,MAAMC,IAAI,GAAG,CAAC;AASd,SAASC,UAAUA,CAAC;EAClBC,OAAO;EACPC,MAAM;EACNC,KAAK;EACLC,MAAM;EACNC,QAAQ;EACRC;AAQF,CAAC,EAAE;EACD,MAAM;IAAEC,KAAK,EAAEC,OAAO;IAAEC,IAAI;IAAEC;EAAM,CAAC,GAAG3C,mBAAmB,CAAC,CAAC;EAC7D,MAAM4C,UAAU,GAAG1C,kBAAkB,CAAC,CAAC;EACvC,MAAM2C,QAAqB,GAAG;IAC5BC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,SAAS,EAAEX,MAAM;IACjBY,eAAe,EAAE,CAAC;IAClBC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAEnB,IAAI;IACrBoB,eAAe,EAAEjB,MAAM,GAAGC,KAAK,CAACiB,MAAM,GAAGjB,KAAK,CAACkB,IAAI;IACnDC,WAAW,EAAE,EAAE;IACf,sBAAsB,EAAEnB,KAAK,CAACiB;EAChC,CAAC;EACD;EACA,MAAMG,IAAI,GAAGxC,MAAM,GAAGkB,OAAO,CAACsB,IAAI,GAAGC,SAAS;EAC9C,oBACE5C,IAAA,CAAChB,SAAS;IAAA,GACJS,UAAU,CAAC;MAAEoD,eAAe,EAAE;IAAG,CAAC,CAAC;IAAA,IAClCF,IAAI,IAAI,IAAI,GAAI;MAAEA;IAAK,CAAC,GAA+B,CAAC,CAAC;IAC9DG,IAAI,EAAC,MAAM;IACXC,kBAAkB,EAAE1B,OAAO,CAAC2B;IAC5B;IAAA;IACA,gBAAc1B,MAAM,GAAI,UAAU,GAAasB,SAAU;IACzDK,kBAAkB,EAAE;MAAEC,QAAQ,EAAE5B;IAAO,CAAE;IACzC6B,OAAO,EACL1B,QAAQ,GACH2B,KAA4B,IAAK;MAChC,IAAIT,IAAI,IAAI,IAAI,EAAE;QAChB;QACA;QACA,MAAMU,KAAK,GAAGD,KAAK,CAACE,WAKnB;QACD,IAAID,KAAK,CAACE,OAAO,IAAIF,KAAK,CAACG,OAAO,IAAIH,KAAK,CAACI,QAAQ,IAAI,CAACJ,KAAK,CAACK,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE;QACnFN,KAAK,CAACO,cAAc,CAAC,CAAC;MACxB;MACAlC,QAAQ,CAACJ,OAAO,CAAC;IACnB,CAAC,GACDuB,SACL;IACDgB,SAAS,EAAE/B,IAAK;IAChBgC,UAAU,EAAE/B,KAAM;IAClBgC,KAAK,EAAE,CAAC9B,QAAQ,EAAED,UAAU,CAAiB;IAC7CL,MAAM,EAAEA,MAAO;IAAAqC,QAAA,eAEf/D,IAAA,CAACL,IAAI;MACHqE,OAAO,EAAE1C,MAAM,GAAG,eAAe,GAAG,gBAAiB;MACrD2C,aAAa,EAAE,CAAE;MACjBH,KAAK,EAAE;QAAEI,KAAK,EAAE5C,MAAM,GAAGC,KAAK,CAACiB,MAAM,GAAGZ,OAAO,GAAGL,KAAK,CAAC4C,IAAI,GAAG5C,KAAK,CAAC6C,KAAK;QAAEC,UAAU,EAAE;MAAE,CAAE;MAAAN,QAAA,EAE3F1C,OAAO,CAAC2B;IAAK,CACV;EAAC,CACE,CAAC;AAEhB;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAMsB,SAAkC,GAAGnE,MAAM,GAAG;EAAE2C,IAAI,EAAE;AAAO,CAAC,GAAG;EAAEyB,iBAAiB,EAAE;AAAO,CAAC;AACpG,MAAMC,cAAuC,GAAGrE,MAAM,GAAG;EAAE2C,IAAI,EAAE;AAAW,CAAC,GAAG,CAAC,CAAC;AAElF,SAAS2B,WAAWA,CAAC;EACnBC,KAAK;EACLC,KAAK;EACLC,QAAQ;EACRrD,KAAK;EACLC,MAAM;EACNC,QAAQ;EACRC;AASF,CAAC,EAAE;EACD,oBACE1B,IAAA,CAACf,IAAI;IAAA,GAAKqF,SAAS;IAAER,KAAK,EAAEa,KAAK,KAAK,CAAC,GAAG/B,SAAS,GAAG;MAAEiC,UAAU,EAAE3D;IAAO,CAAE;IAAA6C,QAAA,EAC1EW,KAAK,CAACI,GAAG,CAAEC,IAAI,iBACd7E,KAAA,CAACjB,IAAI;MAAA,GAA2BuF,cAAc;MAAAT,QAAA,gBAC5C/D,IAAA,CAACoB,UAAU;QACTC,OAAO,EAAE0D,IAAI,CAAC1D,OAAQ;QACtBC,MAAM,EAAEyD,IAAI,CAAC1D,OAAO,CAAC2D,EAAE,KAAKJ,QAAS;QACrCrD,KAAK,EAAEA,KAAM;QACbC,MAAM,EAAEA,MAAO;QACfC,QAAQ,EAAEA,QAAS;QACnBC,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,IAAIqD,IAAI,CAAC1D,OAAO,CAAC2D,EAAE,EAAE,GAAGpC;MAAU,CAC7D,CAAC,EACDmC,IAAI,CAAChB,QAAQ,CAACkB,MAAM,GAAG,CAAC,gBACvBjF,IAAA,CAACyE,WAAW;QACVC,KAAK,EAAEK,IAAI,CAAChB,QAAS;QACrBY,KAAK,EAAEA,KAAK,GAAG,CAAE;QACjBC,QAAQ,EAAEA,QAAS;QACnBrD,KAAK,EAAEA,KAAM;QACbC,MAAM,EAAEA,MAAO;QACfC,QAAQ,EAAEA,QAAS;QACnBC,MAAM,EAAEA;MAAO,CAChB,CAAC,GACA,IAAI;IAAA,GAnBCqD,IAAI,CAAC1D,OAAO,CAAC2D,EAoBlB,CACP;EAAC,CACE,CAAC;AAEX;AAEA,OAAO,SAASE,UAAUA,CAAC;EACzBC,QAAQ;EACRP,QAAQ;EACRnD,QAAQ;EACRuC,OAAO,GAAG,MAAM;EAChBjD,QAAQ;EACRqE,YAAY,GAAG,KAAK;EACpBC,KAAK;EACLC,eAAe,GAAG,CAAC;EACnBvC,kBAAkB;EAClBwC,MAAM,EAAEC,UAAU;EAClB1B,KAAK;EACLpC;AACe,CAAC,EAAE;EAClB,MAAM+D,KAAK,GAAG/F,QAAQ,CAAC,CAAC;EACxB,MAAMgG,OAAO,GAAGpG,cAAc,CAAC,CAAC;EAChCE,oBAAoB,CAACa,QAAQ,EAAEE,eAAe,CAAC;EAC/C,MAAMgF,MAAM,GAAG;IAAE,GAAG1E,cAAc;IAAE,GAAG2E;EAAW,CAAC;EACnD,MAAMG,OAAO,GAAG3B,OAAO,KAAK,SAAS;EAErC,MAAM4B,KAAK,GAAG9G,OAAO,CACnB,MAAO6G,OAAO,GAAG9F,eAAe,CAACsF,QAAQ,EAAEG,eAAe,CAAC,GAAGH,QAAS,EACvE,CAACQ,OAAO,EAAER,QAAQ,EAAEG,eAAe,CACrC,CAAC;EACD,MAAMO,IAAI,GAAG/G,OAAO,CAAC,MAAMc,gBAAgB,CAACgG,KAAK,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAE5D,MAAMrE,KAAK,GAAGzC,OAAO,CAAW,MAAM;IACpC,MAAMqF,IAAI,GAAG/E,aAAa,CAACqG,KAAK,EAAEC,OAAO,CAAC;IAC1C,OAAO;MACLvB,IAAI,EAAEA,IAAI,CAACA,IAAI;MACfC,KAAK,EAAED,IAAI,CAAC2B,aAAa;MACzBtD,MAAM,EAAEiD,KAAK,CAACM,MAAM,CAACC,uBAAuB;MAC5CvD,IAAI,EAAE0B,IAAI,CAAC8B;IACb,CAAC;EACH,CAAC,EAAE,CAACR,KAAK,EAAEC,OAAO,CAAC,CAAC;EAEpB,MAAMQ,KAAK,GAAGnF,QAAQ,IAAIjB,eAAe,CAAC8F,KAAK,EAAEhB,QAAQ,CAAC;EAC1D,MAAM5D,EAAE,GAAGmF,IAAI,CAACC,GAAG,CAAC,CAAC,EAAER,KAAK,CAACS,SAAS,CAAEhF,OAAO,IAAKA,OAAO,CAAC2D,EAAE,KAAKJ,QAAQ,CAAC,CAAC,GAAG,CAAC;EACjF,MAAM0B,IAAI,GAAGvD,kBAAkB,IAAIwC,MAAM,CAACzE,OAAO;EAEjD,oBACEZ,KAAA,CAACjB,IAAI;IACH6D,IAAI,EAAC,YAAY;IACjBC,kBAAkB,EAAEuD,IAAK;IACzBxC,KAAK,EAAEA,KAAM;IACbpC,MAAM,EAAEA,MAAO;IAAAqC,QAAA,GAEd,CAAC4B,OAAO,IAAI,CAACN,KAAK,IAAIE,MAAM,CAACzE,OAAO,MAAM8B,SAAS,gBAClD5C,IAAA,CAACL,IAAI;MACHqE,OAAO,EAAC,kBAAkB;MAC1BF,KAAK,EAAE;QAAEI,KAAK,EAAE3C,KAAK,CAAC6C,KAAK;QAAEmC,YAAY,EAAE,CAAC;QAAE7D,WAAW,EAAE;MAAG,CAAE;MAChEhB,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,QAAQ,GAAGkB,SAAU;MAAAmB,QAAA,EAE9CsB,KAAK,IAAIE,MAAM,CAACzE;IAAO,CACpB,CAAC,GACL,IAAI,EACPsE,YAAY,GAAG,IAAI,gBAClBpF,IAAA,CAACd,KAAK;MACJgH,KAAK,EAAEA,KAAM;MACb1E,MAAM,EAAEmE,OAAO,GAAG,CAAC,GAAG,CAAE;MACxB5C,kBAAkB,EAAEuD,IAAK;MACzBE,SAAS,EAAEjB,MAAM,CAACxE,QAAQ,CAACC,EAAE,EAAE4E,KAAK,CAACX,MAAM,CAAE;MAC7CnB,KAAK,EAAE;QAAEyC,YAAY,EAAEZ,OAAO,GAAG,CAAC,GAAG;MAAG,CAAE;MAC1CjE,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,WAAW,GAAGkB;IAAU,CACnD,CACF,eACD5C,IAAA,CAACyE,WAAW;MACVC,KAAK,EAAEmB,IAAK;MACZlB,KAAK,EAAE,CAAE;MACTC,QAAQ,EAAEA,QAAS;MACnBrD,KAAK,EAAEA,KAAM;MACbC,MAAM,EAAEmE,OAAO,GAAG,EAAE,GAAG,EAAG;MAC1BlE,QAAQ,EAAEA,QAAS;MACnBC,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,MAAM,GAAGkB;IAAU,CAC9C,CAAC;EAAA,CACE,CAAC;AAEX;AACAsC,UAAU,CAACuB,WAAW,GAAG,YAAY","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  import type { ItemProps } from './types';
3
- export declare const Item: React.MemoExoticComponent<({ title, subtitle, children, leading, trailing, onPress, onLongPress, disabled, destructive, selected, active, density, style, titleStyle, subtitleStyle, accessibilityLabel, accessibilityHint, accessibilityRole, role, expanded, testID, }: ItemProps) => import("react/jsx-runtime").JSX.Element>;
3
+ export declare const Item: React.MemoExoticComponent<({ title, subtitle, children, leading, trailing, onPress, onLongPress, disabled, destructive, selected, active, highlighted, density, style, titleStyle, subtitleStyle, accessibilityLabel, accessibilityHint, accessibilityRole, role, expanded, testID, }: ItemProps) => import("react/jsx-runtime").JSX.Element>;
4
4
  //# sourceMappingURL=Item.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../src/item/Item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAO7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAoOzC,eAAO,MAAM,IAAI,4QA7Ld,SAAS,6CA6L2B,CAAC"}
1
+ {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../src/item/Item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAO7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAsOzC,eAAO,MAAM,IAAI,yRA9Ld,SAAS,6CA8L2B,CAAC"}
@@ -25,8 +25,15 @@ export interface ItemProps {
25
25
  * `Item` is used as an option inside an overlay (combobox, command, menu).
26
26
  */
27
27
  selected?: boolean;
28
- /** Highlighted (keyboard-focused) state for overlay lists. */
28
+ /** The "you are here" state: the current route in a navigation list. */
29
29
  active?: boolean;
30
+ /**
31
+ * The keyboard's cursor in a list the field above it drives (arrow keys over
32
+ * a combobox or a composer's suggestions). Paints the hover wash, since it
33
+ * is the same claim as the pointer resting on the row, and announces
34
+ * nothing: the row is neither chosen (`selected`) nor current (`active`).
35
+ */
36
+ highlighted?: boolean;
30
37
  /** Vertical density. Defaults to `'comfortable'`. */
31
38
  density?: 'comfortable' | 'compact';
32
39
  style?: StyleProp<ViewStyle>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvF,MAAM,WAAW,SAAS;IACxB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qDAAqD;IACrD,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvF,MAAM,WAAW,SAAS;IACxB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qDAAqD;IACrD,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"OutlineNav.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/OutlineNav.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAoC,eAAe,EAAE,MAAM,SAAS,CAAC;AAyKjF,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAgB,EAChB,QAAQ,EACR,YAAoB,EACpB,KAAK,EACL,eAAmB,EACnB,kBAAkB,EAClB,MAAM,EAAE,UAAU,EAClB,KAAK,EACL,MAAM,GACP,EAAE,eAAe,2CAgEjB;yBA7Ee,UAAU"}
1
+ {"version":3,"file":"OutlineNav.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/OutlineNav.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAoC,eAAe,EAAE,MAAM,SAAS,CAAC;AA8LjF,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAgB,EAChB,QAAQ,EACR,YAAoB,EACpB,KAAK,EACL,eAAmB,EACnB,kBAAkB,EAClB,MAAM,EAAE,UAAU,EAClB,KAAK,EACL,MAAM,GACP,EAAE,eAAe,2CAgEjB;yBA7Ee,UAAU"}
@@ -11,6 +11,14 @@ export interface OutlineHeading {
11
11
  * arithmetic.
12
12
  */
13
13
  level: number;
14
+ /**
15
+ * Where the heading lives, usually `#id`. On web it makes the row a real
16
+ * `<a href>`: a reader can open it in a new tab, copy it, or middle-click it,
17
+ * and a crawler sees the document's structure. A plain press still goes to
18
+ * `onSelect` (the app does the jumping); a modified one (⌘/Ctrl/Shift, or a
19
+ * button other than the primary) is left to the browser. Ignored on native.
20
+ */
21
+ href?: string;
14
22
  }
15
23
  /**
16
24
  * `full` is the side column of a wide screen: a title, the progress bar and the
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnD,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8HAA8H;IAC9H,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;IACxC,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7C,sBAAsB;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnD,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8HAA8H;IAC9H,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;IACxC,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7C,sBAAsB;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  import type { ItemProps } from './types';
3
- export declare const Item: React.MemoExoticComponent<({ title, subtitle, children, leading, trailing, onPress, onLongPress, disabled, destructive, selected, active, density, style, titleStyle, subtitleStyle, accessibilityLabel, accessibilityHint, accessibilityRole, role, expanded, testID, }: ItemProps) => import("react/jsx-runtime").JSX.Element>;
3
+ export declare const Item: React.MemoExoticComponent<({ title, subtitle, children, leading, trailing, onPress, onLongPress, disabled, destructive, selected, active, highlighted, density, style, titleStyle, subtitleStyle, accessibilityLabel, accessibilityHint, accessibilityRole, role, expanded, testID, }: ItemProps) => import("react/jsx-runtime").JSX.Element>;
4
4
  //# sourceMappingURL=Item.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../src/item/Item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAO7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAoOzC,eAAO,MAAM,IAAI,4QA7Ld,SAAS,6CA6L2B,CAAC"}
1
+ {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../src/item/Item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAO7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAsOzC,eAAO,MAAM,IAAI,yRA9Ld,SAAS,6CA8L2B,CAAC"}
@@ -25,8 +25,15 @@ export interface ItemProps {
25
25
  * `Item` is used as an option inside an overlay (combobox, command, menu).
26
26
  */
27
27
  selected?: boolean;
28
- /** Highlighted (keyboard-focused) state for overlay lists. */
28
+ /** The "you are here" state: the current route in a navigation list. */
29
29
  active?: boolean;
30
+ /**
31
+ * The keyboard's cursor in a list the field above it drives (arrow keys over
32
+ * a combobox or a composer's suggestions). Paints the hover wash, since it
33
+ * is the same claim as the pointer resting on the row, and announces
34
+ * nothing: the row is neither chosen (`selected`) nor current (`active`).
35
+ */
36
+ highlighted?: boolean;
30
37
  /** Vertical density. Defaults to `'comfortable'`. */
31
38
  density?: 'comfortable' | 'compact';
32
39
  style?: StyleProp<ViewStyle>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvF,MAAM,WAAW,SAAS;IACxB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qDAAqD;IACrD,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvF,MAAM,WAAW,SAAS;IACxB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qDAAqD;IACrD,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"OutlineNav.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/OutlineNav.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAoC,eAAe,EAAE,MAAM,SAAS,CAAC;AAyKjF,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAgB,EAChB,QAAQ,EACR,YAAoB,EACpB,KAAK,EACL,eAAmB,EACnB,kBAAkB,EAClB,MAAM,EAAE,UAAU,EAClB,KAAK,EACL,MAAM,GACP,EAAE,eAAe,2CAgEjB;yBA7Ee,UAAU"}
1
+ {"version":3,"file":"OutlineNav.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/OutlineNav.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAoC,eAAe,EAAE,MAAM,SAAS,CAAC;AA8LjF,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAgB,EAChB,QAAQ,EACR,YAAoB,EACpB,KAAK,EACL,eAAmB,EACnB,kBAAkB,EAClB,MAAM,EAAE,UAAU,EAClB,KAAK,EACL,MAAM,GACP,EAAE,eAAe,2CAgEjB;yBA7Ee,UAAU"}
@@ -11,6 +11,14 @@ export interface OutlineHeading {
11
11
  * arithmetic.
12
12
  */
13
13
  level: number;
14
+ /**
15
+ * Where the heading lives, usually `#id`. On web it makes the row a real
16
+ * `<a href>`: a reader can open it in a new tab, copy it, or middle-click it,
17
+ * and a crawler sees the document's structure. A plain press still goes to
18
+ * `onSelect` (the app does the jumping); a modified one (⌘/Ctrl/Shift, or a
19
+ * button other than the primary) is left to the browser. Ignored on native.
20
+ */
21
+ href?: string;
14
22
  }
15
23
  /**
16
24
  * `full` is the side column of a wide screen: a title, the progress bar and the
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnD,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8HAA8H;IAC9H,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;IACxC,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7C,sBAAsB;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/outline-nav/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnD,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8HAA8H;IAC9H,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;IACxC,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7C,sBAAsB;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxy.so/bloom",
3
- "version": "4.10.0",
3
+ "version": "4.12.0",
4
4
  "packageManager": "bun@1.3.14",
5
5
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
6
6
  "main": "lib/commonjs/index.js",
package/src/item/Item.tsx CHANGED
@@ -34,6 +34,7 @@ const ItemComponent = function Item({
34
34
  // different statements to assistive tech; both remain falsy for styling.
35
35
  selected,
36
36
  active = false,
37
+ highlighted = false,
37
38
  density = 'comfortable',
38
39
  style,
39
40
  titleStyle,
@@ -73,20 +74,21 @@ const ItemComponent = function Item({
73
74
  minHeight: cfg.minHeight,
74
75
  borderRadius: borderRadius.sm,
75
76
  };
76
- // Precedence, loudest first. Hover paints ONLY a row that had no background
77
- // of its own: washing over `active` or `selected` would read as the row
78
- // losing the state it is announcing, which is worse than no hover at all.
79
- // `contrast50` is the same wash `SubtleHover` uses, so a hovered row and a
80
- // hovered card agree.
77
+ // Precedence, loudest first. Hover and the keyboard's cursor paint ONLY a
78
+ // row that had no background of its own: washing over `active` or
79
+ // `selected` would read as the row losing the state it is announcing,
80
+ // which is worse than no hover at all. `contrast50` is the same wash
81
+ // `SubtleHover` uses, so a hovered row and a hovered card agree — and it
82
+ // reads on a primary-tinted surface, where `primaryLight` does not.
81
83
  if (active) {
82
84
  base.backgroundColor = theme.colors.primaryLight;
83
85
  } else if (selected) {
84
86
  base.backgroundColor = theme.colors.backgroundSecondary;
85
- } else if (hovered) {
87
+ } else if (highlighted || hovered) {
86
88
  base.backgroundColor = theme.colors.contrast50;
87
89
  }
88
90
  return base;
89
- }, [cfg, selected, active, hovered, theme]);
91
+ }, [cfg, selected, active, highlighted, hovered, theme]);
90
92
 
91
93
  const body =
92
94
  children != null ? (
package/src/item/types.ts CHANGED
@@ -26,8 +26,15 @@ export interface ItemProps {
26
26
  * `Item` is used as an option inside an overlay (combobox, command, menu).
27
27
  */
28
28
  selected?: boolean;
29
- /** Highlighted (keyboard-focused) state for overlay lists. */
29
+ /** The "you are here" state: the current route in a navigation list. */
30
30
  active?: boolean;
31
+ /**
32
+ * The keyboard's cursor in a list the field above it drives (arrow keys over
33
+ * a combobox or a composer's suggestions). Paints the hover wash, since it
34
+ * is the same claim as the pointer resting on the row, and announces
35
+ * nothing: the row is neither chosen (`selected`) nor current (`active`).
36
+ */
37
+ highlighted?: boolean;
31
38
  /** Vertical density. Defaults to `'comfortable'`. */
32
39
  density?: 'comfortable' | 'compact';
33
40
  style?: StyleProp<ViewStyle>;
@@ -1,5 +1,5 @@
1
1
  import React, { useMemo } from 'react';
2
- import { Platform, Pressable, View } from 'react-native';
2
+ import { Platform, Pressable, View, type GestureResponderEvent } from 'react-native';
3
3
 
4
4
  import { Meter } from '../stat-bar';
5
5
  import { useInteractionState } from '../hooks/use-interaction-state';
@@ -100,15 +100,36 @@ function OutlineRow({
100
100
  paddingLeft: 10,
101
101
  '--bloom-outline-ring': paint.accent,
102
102
  };
103
+ // On web a heading with an href is a real anchor (see `OutlineHeading.href`).
104
+ const href = IS_WEB ? heading.href : undefined;
103
105
  return (
104
106
  <Pressable
105
107
  {...webDataSet({ bloomOutlineRow: '' })}
108
+ {...(href != null ? ({ href } as Record<string, unknown>) : {})}
106
109
  role="link"
107
110
  accessibilityLabel={heading.label}
108
111
  // The reader is AT this heading; they did not choose it from a set.
109
112
  aria-current={active ? ('location' as const) : undefined}
110
113
  accessibilityState={{ selected: active }}
111
- onPress={onSelect ? () => onSelect(heading) : undefined}
114
+ onPress={
115
+ onSelect
116
+ ? (event: GestureResponderEvent) => {
117
+ if (href != null) {
118
+ // A modified click asks the browser for a tab or a window: leave
119
+ // it the anchor. Only a plain press is the app's jump.
120
+ const click = event.nativeEvent as unknown as {
121
+ metaKey?: boolean;
122
+ ctrlKey?: boolean;
123
+ shiftKey?: boolean;
124
+ button?: number;
125
+ };
126
+ if (click.metaKey || click.ctrlKey || click.shiftKey || (click.button ?? 0) !== 0) return;
127
+ event.preventDefault();
128
+ }
129
+ onSelect(heading);
130
+ }
131
+ : undefined
132
+ }
112
133
  onHoverIn={onIn}
113
134
  onHoverOut={onOut}
114
135
  style={[rowStyle, ringOffset as WebCssStyle]}
@@ -12,6 +12,14 @@ export interface OutlineHeading {
12
12
  * arithmetic.
13
13
  */
14
14
  level: number;
15
+ /**
16
+ * Where the heading lives, usually `#id`. On web it makes the row a real
17
+ * `<a href>`: a reader can open it in a new tab, copy it, or middle-click it,
18
+ * and a crawler sees the document's structure. A plain press still goes to
19
+ * `onSelect` (the app does the jumping); a modified one (⌘/Ctrl/Shift, or a
20
+ * button other than the primary) is left to the browser. Ignored on native.
21
+ */
22
+ href?: string;
15
23
  }
16
24
 
17
25
  /**