@trebired/frontend 29.0.0 → 29.2.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 (220) hide show
  1. package/CHANGELOG.md +27 -7
  2. package/README.md +32 -0
  3. package/dist/actions/copy-components.js +1 -1
  4. package/dist/actions/copy-components.js.map +1 -1
  5. package/dist/config/containers.d.ts +2 -1
  6. package/dist/config/containers.d.ts.map +1 -1
  7. package/dist/config/containers.js +16 -2
  8. package/dist/config/containers.js.map +1 -1
  9. package/dist/config/default/component-tokens.d.ts +2 -0
  10. package/dist/config/default/component-tokens.d.ts.map +1 -1
  11. package/dist/config/default/component-tokens.js +1 -0
  12. package/dist/config/default/component-tokens.js.map +1 -1
  13. package/dist/config/default/config.d.ts.map +1 -1
  14. package/dist/config/default/config.js +1 -0
  15. package/dist/config/default/config.js.map +1 -1
  16. package/dist/config/default/primitive-tokens.d.ts +1 -0
  17. package/dist/config/default/primitive-tokens.d.ts.map +1 -1
  18. package/dist/config/default/primitive-tokens.js +1 -0
  19. package/dist/config/default/primitive-tokens.js.map +1 -1
  20. package/dist/config/normalize.d.ts.map +1 -1
  21. package/dist/config/normalize.js +12 -5
  22. package/dist/config/normalize.js.map +1 -1
  23. package/dist/config/scss.d.ts.map +1 -1
  24. package/dist/config/scss.js +8 -1
  25. package/dist/config/scss.js.map +1 -1
  26. package/dist/config/titles.d.ts +28 -0
  27. package/dist/config/titles.d.ts.map +1 -0
  28. package/dist/config/titles.js +178 -0
  29. package/dist/config/titles.js.map +1 -0
  30. package/dist/config/types/containers.d.ts +2 -0
  31. package/dist/config/types/containers.d.ts.map +1 -1
  32. package/dist/config/types/design.d.ts +3 -0
  33. package/dist/config/types/design.d.ts.map +1 -1
  34. package/dist/config/types.d.ts +2 -0
  35. package/dist/config/types.d.ts.map +1 -1
  36. package/dist/document/components/index.js +1 -1
  37. package/dist/document/components/index.js.map +1 -1
  38. package/dist/editor/components/surface.js +1 -1
  39. package/dist/editor/components/surface.js.map +1 -1
  40. package/dist/entity/list.js +1 -1
  41. package/dist/entity/list.js.map +1 -1
  42. package/dist/entries/react/02.d.ts +1 -1
  43. package/dist/entries/react/02.d.ts.map +1 -1
  44. package/dist/entries/react/02.js +1 -1
  45. package/dist/entries/react/02.js.map +1 -1
  46. package/dist/entries/root/03.d.ts +1 -0
  47. package/dist/entries/root/03.d.ts.map +1 -1
  48. package/dist/entries/root/03.js +1 -0
  49. package/dist/entries/root/03.js.map +1 -1
  50. package/dist/frost/index.d.ts +4 -0
  51. package/dist/frost/index.d.ts.map +1 -0
  52. package/dist/frost/index.js +110 -0
  53. package/dist/frost/index.js.map +1 -0
  54. package/dist/graph/advanced/graph/details.js +1 -1
  55. package/dist/graph/advanced/graph/details.js.map +1 -1
  56. package/dist/heading/glyphs.d.ts +7 -0
  57. package/dist/heading/glyphs.d.ts.map +1 -0
  58. package/dist/heading/glyphs.js +79 -0
  59. package/dist/heading/glyphs.js.map +1 -0
  60. package/dist/heading/index.d.ts +3 -1
  61. package/dist/heading/index.d.ts.map +1 -1
  62. package/dist/heading/index.js +19 -4
  63. package/dist/heading/index.js.map +1 -1
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +2 -0
  66. package/dist/index.js.map +1 -1
  67. package/dist/inputs/styles/primitives.scss +7 -2
  68. package/dist/language/source/modal.js +1 -1
  69. package/dist/language/source/modal.js.map +1 -1
  70. package/dist/language/source/visualizer.js +1 -1
  71. package/dist/language/source/visualizer.js.map +1 -1
  72. package/dist/layout/components/outline.d.ts +20 -4
  73. package/dist/layout/components/outline.d.ts.map +1 -1
  74. package/dist/layout/components/outline.js +147 -70
  75. package/dist/layout/components/outline.js.map +1 -1
  76. package/dist/layout/components/outline_dock.d.ts +5 -0
  77. package/dist/layout/components/outline_dock.d.ts.map +1 -0
  78. package/dist/layout/components/outline_dock.js +139 -0
  79. package/dist/layout/components/outline_dock.js.map +1 -0
  80. package/dist/layout/components/site/category.d.ts +11 -0
  81. package/dist/layout/components/site/category.d.ts.map +1 -0
  82. package/dist/layout/components/site/category.js +9 -0
  83. package/dist/layout/components/site/category.js.map +1 -0
  84. package/dist/layout/components/site/footer.d.ts.map +1 -1
  85. package/dist/layout/components/site/footer.js +2 -1
  86. package/dist/layout/components/site/footer.js.map +1 -1
  87. package/dist/layout/components/site/header/groups.d.ts.map +1 -1
  88. package/dist/layout/components/site/header/groups.js +3 -2
  89. package/dist/layout/components/site/header/groups.js.map +1 -1
  90. package/dist/layout/scroll.js +3 -3
  91. package/dist/layout/scroll.js.map +1 -1
  92. package/dist/layout/styles/index.scss +1 -0
  93. package/dist/layout/styles/outline.scss +126 -0
  94. package/dist/layout/styles/site/category.scss +16 -0
  95. package/dist/layout/styles/site/footer.scss +1 -11
  96. package/dist/layout/styles/site/menu.scss +5 -12
  97. package/dist/layout/styles/site/sheet.scss +20 -15
  98. package/dist/logs/view/detail_modal.js +1 -1
  99. package/dist/logs/view/detail_modal.js.map +1 -1
  100. package/dist/popover/index.js +3 -3
  101. package/dist/popover/index.js.map +1 -1
  102. package/dist/primitives/components/index.d.ts +1 -0
  103. package/dist/primitives/components/index.d.ts.map +1 -1
  104. package/dist/primitives/components/index.js +1 -0
  105. package/dist/primitives/components/index.js.map +1 -1
  106. package/dist/primitives/components/quote.d.ts +9 -0
  107. package/dist/primitives/components/quote.d.ts.map +1 -0
  108. package/dist/primitives/components/quote.js +16 -0
  109. package/dist/primitives/components/quote.js.map +1 -0
  110. package/dist/primitives/styles/_link.scss +5 -1
  111. package/dist/primitives/styles/_quote.scss +34 -0
  112. package/dist/primitives/styles/index.scss +1 -0
  113. package/dist/src/actions/copy-components.js +1 -1
  114. package/dist/src/actions/copy-components.js.map +1 -1
  115. package/dist/src/config/containers.d.ts +2 -1
  116. package/dist/src/config/containers.d.ts.map +1 -1
  117. package/dist/src/config/containers.js +16 -2
  118. package/dist/src/config/containers.js.map +1 -1
  119. package/dist/src/config/default/component-tokens.d.ts +2 -0
  120. package/dist/src/config/default/component-tokens.d.ts.map +1 -1
  121. package/dist/src/config/default/component-tokens.js +1 -0
  122. package/dist/src/config/default/component-tokens.js.map +1 -1
  123. package/dist/src/config/default/config.d.ts.map +1 -1
  124. package/dist/src/config/default/config.js +1 -0
  125. package/dist/src/config/default/config.js.map +1 -1
  126. package/dist/src/config/default/primitive-tokens.d.ts +1 -0
  127. package/dist/src/config/default/primitive-tokens.d.ts.map +1 -1
  128. package/dist/src/config/default/primitive-tokens.js +1 -0
  129. package/dist/src/config/default/primitive-tokens.js.map +1 -1
  130. package/dist/src/config/normalize.d.ts.map +1 -1
  131. package/dist/src/config/normalize.js +12 -5
  132. package/dist/src/config/normalize.js.map +1 -1
  133. package/dist/src/config/scss.d.ts.map +1 -1
  134. package/dist/src/config/scss.js +8 -1
  135. package/dist/src/config/scss.js.map +1 -1
  136. package/dist/src/config/titles.d.ts +28 -0
  137. package/dist/src/config/titles.d.ts.map +1 -0
  138. package/dist/src/config/titles.js +178 -0
  139. package/dist/src/config/titles.js.map +1 -0
  140. package/dist/src/config/types/containers.d.ts +2 -0
  141. package/dist/src/config/types/containers.d.ts.map +1 -1
  142. package/dist/src/config/types/design.d.ts +3 -0
  143. package/dist/src/config/types/design.d.ts.map +1 -1
  144. package/dist/src/config/types.d.ts +2 -0
  145. package/dist/src/config/types.d.ts.map +1 -1
  146. package/dist/src/document/components/index.js +1 -1
  147. package/dist/src/document/components/index.js.map +1 -1
  148. package/dist/src/editor/components/surface.js +1 -1
  149. package/dist/src/editor/components/surface.js.map +1 -1
  150. package/dist/src/entity/list.js +1 -1
  151. package/dist/src/entity/list.js.map +1 -1
  152. package/dist/src/entries/react/02.d.ts +1 -1
  153. package/dist/src/entries/react/02.d.ts.map +1 -1
  154. package/dist/src/entries/react/02.js +1 -1
  155. package/dist/src/entries/react/02.js.map +1 -1
  156. package/dist/src/entries/root/03.d.ts +1 -0
  157. package/dist/src/entries/root/03.d.ts.map +1 -1
  158. package/dist/src/entries/root/03.js +1 -0
  159. package/dist/src/entries/root/03.js.map +1 -1
  160. package/dist/src/frost/index.d.ts +4 -0
  161. package/dist/src/frost/index.d.ts.map +1 -0
  162. package/dist/src/frost/index.js +110 -0
  163. package/dist/src/frost/index.js.map +1 -0
  164. package/dist/src/graph/advanced/graph/details.js +1 -1
  165. package/dist/src/graph/advanced/graph/details.js.map +1 -1
  166. package/dist/src/heading/glyphs.d.ts +7 -0
  167. package/dist/src/heading/glyphs.d.ts.map +1 -0
  168. package/dist/src/heading/glyphs.js +79 -0
  169. package/dist/src/heading/glyphs.js.map +1 -0
  170. package/dist/src/heading/index.d.ts +3 -1
  171. package/dist/src/heading/index.d.ts.map +1 -1
  172. package/dist/src/heading/index.js +19 -4
  173. package/dist/src/heading/index.js.map +1 -1
  174. package/dist/src/index.d.ts.map +1 -1
  175. package/dist/src/index.js +2 -0
  176. package/dist/src/index.js.map +1 -1
  177. package/dist/src/language/source/modal.js +1 -1
  178. package/dist/src/language/source/modal.js.map +1 -1
  179. package/dist/src/language/source/visualizer.js +1 -1
  180. package/dist/src/language/source/visualizer.js.map +1 -1
  181. package/dist/src/layout/components/outline.d.ts +20 -4
  182. package/dist/src/layout/components/outline.d.ts.map +1 -1
  183. package/dist/src/layout/components/outline.js +147 -70
  184. package/dist/src/layout/components/outline.js.map +1 -1
  185. package/dist/src/layout/components/outline_dock.d.ts +5 -0
  186. package/dist/src/layout/components/outline_dock.d.ts.map +1 -0
  187. package/dist/src/layout/components/outline_dock.js +139 -0
  188. package/dist/src/layout/components/outline_dock.js.map +1 -0
  189. package/dist/src/layout/components/site/category.d.ts +11 -0
  190. package/dist/src/layout/components/site/category.d.ts.map +1 -0
  191. package/dist/src/layout/components/site/category.js +9 -0
  192. package/dist/src/layout/components/site/category.js.map +1 -0
  193. package/dist/src/layout/components/site/footer.d.ts.map +1 -1
  194. package/dist/src/layout/components/site/footer.js +2 -1
  195. package/dist/src/layout/components/site/footer.js.map +1 -1
  196. package/dist/src/layout/components/site/header/groups.d.ts.map +1 -1
  197. package/dist/src/layout/components/site/header/groups.js +3 -2
  198. package/dist/src/layout/components/site/header/groups.js.map +1 -1
  199. package/dist/src/layout/scroll.js +3 -3
  200. package/dist/src/layout/scroll.js.map +1 -1
  201. package/dist/src/logs/view/detail_modal.js +1 -1
  202. package/dist/src/logs/view/detail_modal.js.map +1 -1
  203. package/dist/src/popover/index.js +3 -3
  204. package/dist/src/popover/index.js.map +1 -1
  205. package/dist/src/primitives/components/index.d.ts +1 -0
  206. package/dist/src/primitives/components/index.d.ts.map +1 -1
  207. package/dist/src/primitives/components/index.js +1 -0
  208. package/dist/src/primitives/components/index.js.map +1 -1
  209. package/dist/src/primitives/components/quote.d.ts +9 -0
  210. package/dist/src/primitives/components/quote.d.ts.map +1 -0
  211. package/dist/src/primitives/components/quote.js +16 -0
  212. package/dist/src/primitives/components/quote.js.map +1 -0
  213. package/dist/src/steps/panel.js +1 -1
  214. package/dist/src/steps/panel.js.map +1 -1
  215. package/dist/steps/panel.js +1 -1
  216. package/dist/steps/panel.js.map +1 -1
  217. package/dist/styles/tokens.scss +1 -0
  218. package/dist/styles/utils/_frost.scss +30 -0
  219. package/dist/styles/utils/text/core.scss +6 -6
  220. package/package.json +3 -3
@@ -1,27 +1,44 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback, useEffect, useRef, useState } from "react";
2
+ import { useCallback, useEffect, useLayoutEffect, useRef, useState } from "react";
3
3
  import { classNames } from "../../../components/index.js";
4
- import { frontendClassName, frontendCssVar, frontendDataAttr, frontendElementClass } from "../../../namespace/index.js";
4
+ import { frontendClassName, frontendCssVar, frontendDataAttr, frontendDataAttrs, frontendElementClass } from "../../../namespace/index.js";
5
5
  import { motionReduced } from "./../../a11y/attributes.js";
6
6
  const block = "page-outline";
7
- const layoutBlock = "page-outline-layout";
8
7
  const ACTIVE_LINE = 0.3;
8
+ const SETTLE_DELAY = 160;
9
9
  const OUTLINE_STORAGE_PREFIX = "tbf.outline:";
10
- function activeId(items) {
11
- let current = "";
12
- let nearest = -Infinity;
13
- const line = Math.max(window.innerHeight * ACTIVE_LINE, 120);
10
+ const USER_SCROLL_EVENTS = ["wheel", "touchstart", "keydown"];
11
+ const useClientLayoutEffect = typeof window === "undefined" ? useEffect : useLayoutEffect;
12
+ function sectionTops(items) {
13
+ const tops = [];
14
14
  for (const item of items) {
15
15
  const element = document.getElementById(item.id);
16
- if (!element)
17
- continue;
18
- const { top } = element.getBoundingClientRect();
19
- if (top > line || top <= nearest)
20
- continue;
21
- nearest = top;
22
- current = item.id;
16
+ if (element)
17
+ tops.push([item.id, element.getBoundingClientRect().top]);
23
18
  }
24
- return current || items[0]?.id || "";
19
+ return tops;
20
+ }
21
+ function atPageEnd() {
22
+ const { scrollHeight } = document.documentElement;
23
+ return window.scrollY > 0 && window.scrollY + window.innerHeight >= scrollHeight - 2;
24
+ }
25
+ function activeId(items) {
26
+ const tops = sectionTops(items);
27
+ const last = tops[tops.length - 1];
28
+ if (!last)
29
+ return items[0]?.id || "";
30
+ if (atPageEnd())
31
+ return last[0];
32
+ const line = Math.max(window.innerHeight * ACTIVE_LINE, 120);
33
+ let current = tops[0]?.[0] || "";
34
+ for (const [id, top] of tops)
35
+ if (top <= line)
36
+ current = id;
37
+ return current;
38
+ }
39
+ function bootedId(list, items) {
40
+ const id = list?.querySelector("a[aria-current=\"true\"]")?.getAttribute("href")?.slice(1) || "";
41
+ return items.some((item) => item.id === id) ? id : "";
25
42
  }
26
43
  function scrollToSection(id) {
27
44
  const target = document.getElementById(id);
@@ -32,93 +49,153 @@ function scrollToSection(id) {
32
49
  target.scrollIntoView({ behavior: motionReduced() ? "auto" : "smooth", block: "start" });
33
50
  window.history.replaceState(null, "", `#${id}`);
34
51
  }
35
- function useActiveSection(items) {
52
+ function settleLater(hold) {
53
+ window.clearTimeout(hold.timer);
54
+ hold.timer = window.setTimeout(() => {
55
+ hold.settled = true;
56
+ }, SETTLE_DELAY);
57
+ }
58
+ function watchScroll(measure, hold) {
59
+ let frame = 0;
60
+ const schedule = () => {
61
+ if (!frame)
62
+ frame = requestAnimationFrame(() => {
63
+ frame = 0;
64
+ measure();
65
+ });
66
+ };
67
+ const release = () => {
68
+ if (hold.current)
69
+ window.clearTimeout(hold.current.timer);
70
+ hold.current = null;
71
+ schedule();
72
+ };
73
+ const onScroll = () => {
74
+ const held = hold.current;
75
+ if (!held)
76
+ schedule();
77
+ else if (held.settled)
78
+ release();
79
+ else
80
+ settleLater(held);
81
+ };
82
+ if (document.readyState === "complete")
83
+ schedule();
84
+ else
85
+ window.addEventListener("load", schedule, { once: true });
86
+ window.addEventListener("scroll", onScroll, { passive: true });
87
+ window.addEventListener("resize", schedule, { passive: true });
88
+ USER_SCROLL_EVENTS.forEach((name) => window.addEventListener(name, release, { passive: true }));
89
+ return () => {
90
+ if (frame)
91
+ cancelAnimationFrame(frame);
92
+ if (hold.current)
93
+ window.clearTimeout(hold.current.timer);
94
+ window.removeEventListener("load", schedule);
95
+ window.removeEventListener("scroll", onScroll);
96
+ window.removeEventListener("resize", schedule);
97
+ USER_SCROLL_EVENTS.forEach((name) => window.removeEventListener(name, release));
98
+ };
99
+ }
100
+ function useActiveSection(items, listRef) {
36
101
  const [active, setActive] = useState(() => items[0]?.id || "");
37
102
  const key = items.map((item) => item.id).join("|");
38
103
  const itemsRef = useRef(items);
39
104
  itemsRef.current = items;
40
- const measure = useCallback(() => {
41
- setActive(activeId(itemsRef.current));
105
+ const hold = useRef(null);
106
+ useClientLayoutEffect(() => {
107
+ if (!itemsRef.current.length)
108
+ return;
109
+ const booted = bootedId(listRef.current, itemsRef.current);
110
+ if (booted)
111
+ setActive(booted);
112
+ return watchScroll(() => setActive(hold.current ? hold.current.id : activeId(itemsRef.current)), hold);
113
+ }, [key, listRef]);
114
+ const select = useCallback((id) => {
115
+ if (hold.current)
116
+ window.clearTimeout(hold.current.timer);
117
+ const next = { id, settled: false, timer: 0 };
118
+ settleLater(next);
119
+ hold.current = next;
120
+ setActive(id);
42
121
  }, []);
43
- useEffect(() => {
44
- let frame = 0;
45
- const run = () => {
46
- frame = 0;
47
- measure();
48
- };
49
- const schedule = () => {
50
- if (!frame)
51
- frame = requestAnimationFrame(run);
52
- };
53
- measure();
54
- window.addEventListener("scroll", schedule, { passive: true });
55
- window.addEventListener("resize", schedule, { passive: true });
56
- return () => {
57
- if (frame)
58
- cancelAnimationFrame(frame);
59
- window.removeEventListener("scroll", schedule);
60
- window.removeEventListener("resize", schedule);
61
- };
62
- }, [key, measure]);
63
- return active;
122
+ return [active, select];
64
123
  }
65
- function useMarker(active) {
66
- const listRef = useRef(null);
67
- useEffect(() => {
124
+ function useMarker(listRef, active) {
125
+ useClientLayoutEffect(() => {
68
126
  const list = listRef.current;
69
127
  if (!list)
70
128
  return;
71
- const current = list.querySelector("[aria-current=\"true\"]");
72
- list.style.setProperty(frontendCssVar("outline-marker-top"), `${current ? current.offsetTop : 0}px`);
73
- list.style.setProperty(frontendCssVar("outline-marker-height"), `${current ? current.offsetHeight : 0}px`);
74
- if (current)
129
+ const place = () => {
130
+ const current = list.querySelector("[aria-current=\"true\"]");
131
+ if (!current)
132
+ return;
133
+ list.style.setProperty(frontendCssVar("outline-marker-top"), `${current.offsetTop}px`);
134
+ list.style.setProperty(frontendCssVar("outline-marker-height"), `${current.offsetHeight}px`);
75
135
  list.setAttribute(frontendDataAttr("outline-ready"), "true");
76
- }, [active]);
77
- return listRef;
136
+ };
137
+ place();
138
+ if (typeof ResizeObserver === "undefined")
139
+ return;
140
+ const observer = new ResizeObserver(place);
141
+ observer.observe(list);
142
+ return () => observer.disconnect();
143
+ }, [active, listRef]);
78
144
  }
79
145
  function outlineBootWanted() {
80
146
  return [
81
- `var K=${JSON.stringify(OUTLINE_STORAGE_PREFIX)}+location.pathname+location.search,w='',N='';`,
147
+ `var P=${JSON.stringify(OUTLINE_STORAGE_PREFIX)},w='',N='';`,
82
148
  "try{N=(performance.getEntriesByType('navigation')[0]||{}).type||''}catch(e){}",
83
- "if(N==='reload'||N==='back_forward'){try{w=sessionStorage.getItem(K)||''}catch(e){}}",
149
+ "if(N==='reload'||N==='back_forward'){try{w=sessionStorage.getItem(P+location.pathname+location.search)||''}catch(e){}}",
84
150
  "if(!w){try{w=decodeURIComponent(location.hash.slice(1))}catch(e){}}",
85
151
  ];
86
152
  }
153
+ function outlineBootSave() {
154
+ const current = JSON.stringify(`.${frontendElementClass(block, "link")}[aria-current="true"]`);
155
+ return [
156
+ "addEventListener('pagehide',function(){try{",
157
+ `var k=document.querySelector(${current});`,
158
+ "if(k)sessionStorage.setItem(P+location.pathname+location.search,k.getAttribute('href').slice(1))}catch(e){}});",
159
+ ];
160
+ }
87
161
  function outlineBootSource() {
88
162
  const markerTop = JSON.stringify(frontendCssVar("outline-marker-top"));
89
163
  const markerHeight = JSON.stringify(frontendCssVar("outline-marker-height"));
90
164
  const ready = JSON.stringify(frontendDataAttr("outline-ready"));
91
165
  return [
92
166
  "(function(){try{var s=document.currentScript,n=s&&s.previousElementSibling;if(!n)return;",
93
- "var l=n.querySelector('ol'),a=n.querySelectorAll('a[href^=\"#\"]'),c=null;",
167
+ "var l=n.querySelector('ol'),a=n.querySelectorAll('a[href^=\"#\"]'),c=a[0]||null;",
94
168
  ...outlineBootWanted(),
95
- "for(var i=0;i<a.length;i++){var id=a[i].getAttribute('href').slice(1);",
96
- "if(w?id===w:i===0){c=a[i];a[i].setAttribute('aria-current','true')}else a[i].removeAttribute('aria-current')}",
169
+ "for(var i=0;i<a.length;i++){if(a[i].getAttribute('href').slice(1)===w)c=a[i]}",
170
+ "for(var j=0;j<a.length;j++){if(a[j]===c)a[j].setAttribute('aria-current','true');else a[j].removeAttribute('aria-current')}",
97
171
  `if(l&&c){l.style.setProperty(${markerTop},c.offsetTop+'px');`,
98
172
  `l.style.setProperty(${markerHeight},c.offsetHeight+'px');l.setAttribute(${ready},'true')}`,
99
- "addEventListener('pagehide',function(){try{var k=n.querySelector('a[aria-current=\"true\"]');",
100
- "if(k)sessionStorage.setItem(K,k.getAttribute('href').slice(1))}catch(e){}});",
173
+ ...outlineBootSave(),
101
174
  "}catch(e){}})();",
102
175
  ].join("");
103
176
  }
177
+ function usePageOutline(items) {
178
+ const listRef = useRef(null);
179
+ const [active, select] = useActiveSection(items, listRef);
180
+ return { active, listRef, select };
181
+ }
182
+ function OutlineList({ closes = false, items, listRef, state }) {
183
+ useMarker(listRef, state.active);
184
+ return (_jsx("ol", { className: frontendElementClass(block, "list"), ref: listRef, suppressHydrationWarning: true, children: items.map((item) => (_jsx("li", { children: _jsx("a", { "aria-current": item.id === state.active ? "true" : undefined, className: frontendElementClass(block, "link"), href: `#${item.id}`, suppressHydrationWarning: true, ...frontendDataAttrs({ "popover-close": closes ? "" : undefined }), onClick: (event) => {
185
+ if (event.metaKey || event.ctrlKey || event.shiftKey)
186
+ return;
187
+ event.preventDefault();
188
+ state.select(item.id);
189
+ scrollToSection(item.id);
190
+ }, children: item.label }) }, item.id))) }));
191
+ }
104
192
  function PageOutline(props) {
105
193
  const { className, items, label } = props;
106
- const active = useActiveSection(items);
107
- const listRef = useMarker(active);
194
+ const own = usePageOutline(props.state ? [] : items);
195
+ const state = props.state || own;
108
196
  if (items.length === 0)
109
197
  return null;
110
- return (_jsxs(_Fragment, { children: [_jsx("nav", { "aria-label": label, className: classNames(frontendClassName(block), className), children: _jsx("ol", { className: frontendElementClass(block, "list"), ref: listRef, suppressHydrationWarning: true, children: items.map((item) => (_jsx("li", { children: _jsx("a", { "aria-current": item.id === active ? "true" : undefined, className: frontendElementClass(block, "link"), href: `#${item.id}`, suppressHydrationWarning: true, onClick: (event) => {
111
- if (event.metaKey || event.ctrlKey || event.shiftKey)
112
- return;
113
- event.preventDefault();
114
- scrollToSection(item.id);
115
- }, children: item.label }) }, item.id))) }) }), _jsx("script", { dangerouslySetInnerHTML: { __html: outlineBootSource() } })] }));
116
- }
117
- function PageOutlineLayout(props) {
118
- const { aside, children, className, frame, items, label } = props;
119
- if (items.length === 0 && !frame && !aside)
120
- return _jsx(_Fragment, { children: children });
121
- return (_jsxs("div", { className: classNames(frontendClassName(layoutBlock), frame ? frontendClassName(`${layoutBlock}--frame`) : "", className), children: [items.length > 0 || aside ? (_jsx("div", { className: frontendElementClass(layoutBlock, "track"), children: _jsxs("aside", { className: frontendElementClass(layoutBlock, "rail"), children: [aside ? _jsx("div", { className: frontendElementClass(layoutBlock, "aside"), children: aside }) : null, _jsx(PageOutline, { items: items, label: label })] }) })) : null, _jsx("div", { className: frontendElementClass(layoutBlock, "content"), children: children })] }));
198
+ return (_jsxs(_Fragment, { children: [_jsx("nav", { "aria-label": label, className: classNames(frontendClassName(block), className), children: _jsx(OutlineList, { items: items, listRef: state.listRef, state: state }) }), _jsx("script", { dangerouslySetInnerHTML: { __html: outlineBootSource() } })] }));
122
199
  }
123
- export { PageOutline, PageOutlineLayout };
200
+ export { block as outlineBlock, OutlineList, PageOutline, useClientLayoutEffect, usePageOutline };
124
201
  //# sourceMappingURL=outline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"outline.js","sourceRoot":"","sources":["../../../../src/layout/components/outline.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outline.js","sourceRoot":"","sources":["../../../../src/layout/components/outline.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type PageOutlineLayoutProps, type PageOutlineProps } from "./outline.js";
2
+ declare function PageOutlineDock(props: PageOutlineProps): import("react").JSX.Element;
3
+ declare function PageOutlineLayout(props: PageOutlineLayoutProps): import("react").JSX.Element;
4
+ export { PageOutlineDock, PageOutlineLayout };
5
+ //# sourceMappingURL=outline_dock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline_dock.d.ts","sourceRoot":"","sources":["../../../../src/layout/components/outline_dock.tsx"],"names":[],"mappings":"AAOA,OAAO,EAOL,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACtB,MAAM,cAAc,CAAC;AAyGtB,iBAAS,eAAe,CAAC,KAAK,EAAE,gBAAgB,+BAsC/C;AAED,iBAAS,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,+BA8BvD;AAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,139 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useEffect, useId, useRef } from "react";
3
+ import { classNames } from "../../../components/index.js";
4
+ import { frontendClassName, frontendCssVar, frontendDataAttr, frontendDataAttrs, frontendElementClass } from "../../../namespace/index.js";
5
+ import { PopoverOpenButton, PopoverPanel } from "../../../popover/components/index.js";
6
+ import { bindPopoverTrigger, hidePopover } from "../../../popover/index.js";
7
+ import { motionReduced } from "./../../a11y/attributes.js";
8
+ import { outlineBlock as block, OutlineList, PageOutline, useClientLayoutEffect, usePageOutline, } from "./outline.js";
9
+ const layoutBlock = "page-outline-layout";
10
+ function useDockTrigger(dockRef) {
11
+ useEffect(() => {
12
+ const frame = requestAnimationFrame(() => bindPopoverTrigger(dockRef.current?.querySelector("button") || null));
13
+ return () => cancelAnimationFrame(frame);
14
+ }, [dockRef]);
15
+ }
16
+ function useAfterPaint() {
17
+ const painted = useRef(false);
18
+ useEffect(() => {
19
+ const frame = requestAnimationFrame(() => {
20
+ painted.current = true;
21
+ });
22
+ return () => cancelAnimationFrame(frame);
23
+ }, []);
24
+ return painted;
25
+ }
26
+ function useDockMotion(items, active, painted) {
27
+ const previous = useRef(active);
28
+ const moved = useRef(undefined);
29
+ if (previous.current !== active && !painted.current)
30
+ previous.current = active;
31
+ if (previous.current !== active) {
32
+ const from = items.findIndex((item) => item.id === previous.current);
33
+ moved.current = items.findIndex((item) => item.id === active) < from ? "up" : "down";
34
+ previous.current = active;
35
+ }
36
+ return moved.current;
37
+ }
38
+ function useDockWidth(dockRef, active, painted) {
39
+ const width = useRef(0);
40
+ useClientLayoutEffect(() => {
41
+ const button = dockRef.current?.querySelector("button");
42
+ if (!button)
43
+ return;
44
+ const from = width.current;
45
+ button.style.width = "";
46
+ const to = button.getBoundingClientRect().width;
47
+ width.current = to;
48
+ if (!painted.current || !from || Math.abs(from - to) < 1 || motionReduced())
49
+ return;
50
+ button.style.width = `${from}px`;
51
+ void button.offsetWidth;
52
+ button.style.width = `${to}px`;
53
+ const clear = () => {
54
+ button.style.width = "";
55
+ };
56
+ button.addEventListener("transitionend", clear, { once: true });
57
+ return () => button.removeEventListener("transitionend", clear);
58
+ }, [active, dockRef, painted]);
59
+ }
60
+ const AWAY_LINE = 0.85;
61
+ function useDockInView(dockRef, panelId) {
62
+ useEffect(() => {
63
+ const dock = dockRef.current;
64
+ const layout = dock?.parentElement;
65
+ if (!dock || !layout)
66
+ return;
67
+ let frame = 0;
68
+ const measure = () => {
69
+ frame = 0;
70
+ const box = layout.getBoundingClientRect();
71
+ const line = window.innerHeight * AWAY_LINE;
72
+ const away = box.bottom < line || box.top > line;
73
+ if (away === (dock.getAttribute(frontendDataAttr("outline-away")) === "true"))
74
+ return;
75
+ if (away) {
76
+ dock.setAttribute(frontendDataAttr("outline-away"), "true");
77
+ hidePopover(document.getElementById(panelId));
78
+ }
79
+ else
80
+ dock.removeAttribute(frontendDataAttr("outline-away"));
81
+ };
82
+ const schedule = () => {
83
+ if (!frame)
84
+ frame = requestAnimationFrame(measure);
85
+ };
86
+ measure();
87
+ window.addEventListener("scroll", schedule, { passive: true });
88
+ window.addEventListener("resize", schedule, { passive: true });
89
+ return () => {
90
+ if (frame)
91
+ cancelAnimationFrame(frame);
92
+ window.removeEventListener("scroll", schedule);
93
+ window.removeEventListener("resize", schedule);
94
+ };
95
+ }, [dockRef, panelId]);
96
+ }
97
+ function dockBootSource() {
98
+ const list = `.${frontendElementClass(block, "list")}`;
99
+ const rail = JSON.stringify(`${list} a[aria-current="true"]`);
100
+ const label = JSON.stringify(`.${frontendElementClass(block, "dock-current")}`);
101
+ const top = JSON.stringify(frontendCssVar("outline-marker-top"));
102
+ const height = JSON.stringify(frontendCssVar("outline-marker-height"));
103
+ return [
104
+ "(function(){try{var s=document.currentScript,d=s&&s.previousElementSibling,p=d&&d.parentElement;if(!p)return;",
105
+ `var c=p.querySelector(${rail});if(!c)return;var h=c.getAttribute('href'),t=d.querySelector(${label});`,
106
+ "if(t)t.textContent=c.textContent;",
107
+ `var l=d.querySelector(${JSON.stringify(list)}),a=d.querySelectorAll('a[href^="#"]'),m=null;for(var i=0;i<a.length;i++){`,
108
+ "if(a[i].getAttribute('href')===h){a[i].setAttribute('aria-current','true');m=a[i]}else a[i].removeAttribute('aria-current')}",
109
+ `if(l&&m){l.style.setProperty(${top},m.offsetTop+'px');l.style.setProperty(${height},m.offsetHeight+'px')}`,
110
+ "}catch(e){}})();",
111
+ ].join("");
112
+ }
113
+ function PageOutlineDock(props) {
114
+ const { items, label } = props;
115
+ const dockRef = useRef(null);
116
+ const id = `${useId().replace(/:/gu, "")}_outline_dock`;
117
+ const own = usePageOutline(props.state ? [] : items);
118
+ const state = props.state || own;
119
+ const { active } = state;
120
+ const listRef = useRef(null);
121
+ const painted = useAfterPaint();
122
+ const motion = useDockMotion(items, active, painted);
123
+ useDockTrigger(dockRef);
124
+ useDockWidth(dockRef, active, painted);
125
+ useDockInView(dockRef, id);
126
+ const current = items.find((item) => item.id === active) || items[0];
127
+ if (!current)
128
+ return null;
129
+ return (_jsxs("div", { className: frontendElementClass(block, "dock"), ref: dockRef, children: [_jsxs(PopoverOpenButton, { "aria-label": label, className: frontendElementClass(block, "dock-toggle"), controls: id, indicator: false, children: [_jsx("span", { "aria-hidden": "true", className: frontendElementClass(block, "dock-icon") }), _jsx("span", { className: frontendElementClass(block, "dock-window"), children: _jsx("span", { className: frontendElementClass(block, "dock-current"), suppressHydrationWarning: true, ...frontendDataAttrs({ "outline-motion": motion }), children: current.label }, current.id) })] }), _jsx(PopoverPanel, { "aria-label": label, className: frontendElementClass(block, "dock-panel"), id: id, role: "navigation", children: _jsx("div", { className: frontendClassName(block), children: _jsx(OutlineList, { closes: true, items: items, listRef: listRef, state: state }) }) })] }));
130
+ }
131
+ function PageOutlineLayout(props) {
132
+ const { aside, children, className, frame, items, label } = props;
133
+ const state = usePageOutline(items);
134
+ if (items.length === 0 && !frame && !aside)
135
+ return _jsx(_Fragment, { children: children });
136
+ return (_jsxs("div", { className: classNames(frontendClassName(layoutBlock), frame ? frontendClassName(`${layoutBlock}--frame`) : "", className), children: [items.length > 0 || aside ? (_jsx("div", { className: frontendElementClass(layoutBlock, "track"), children: _jsxs("aside", { className: frontendElementClass(layoutBlock, "rail"), children: [aside ? _jsx("div", { className: frontendElementClass(layoutBlock, "aside"), children: aside }) : null, _jsx(PageOutline, { items: items, label: label, state: state })] }) })) : null, _jsx("div", { className: frontendElementClass(layoutBlock, "content"), children: children }), items.length > 1 ? (_jsxs(_Fragment, { children: [_jsx(PageOutlineDock, { items: items, label: label, state: state }), _jsx("script", { dangerouslySetInnerHTML: { __html: dockBootSource() } })] })) : null] }));
137
+ }
138
+ export { PageOutlineDock, PageOutlineLayout };
139
+ //# sourceMappingURL=outline_dock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline_dock.js","sourceRoot":"","sources":["../../../../src/layout/components/outline_dock.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { ReactNode } from "react";
2
+ type SiteLinkCategoryProps = {
3
+ children?: ReactNode;
4
+ heading: ReactNode;
5
+ headingId?: string;
6
+ nav?: boolean;
7
+ };
8
+ declare function SiteLinkCategory({ children, heading, headingId, nav }: SiteLinkCategoryProps): import("react").JSX.Element;
9
+ export { SiteLinkCategory };
10
+ export type { SiteLinkCategoryProps };
11
+ //# sourceMappingURL=category.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category.d.ts","sourceRoot":"","sources":["../../../../../src/layout/components/site/category.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,iBAAS,gBAAgB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,GAAW,EAAE,EAAE,qBAAqB,+BAQ7F;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { frontendClassName, frontendElementClass } from "../../../../namespace/index.js";
3
+ const block = "link-category";
4
+ function SiteLinkCategory({ children, heading, headingId, nav = false }) {
5
+ const Links = nav ? "nav" : "div";
6
+ return (_jsxs("div", { className: frontendClassName(block), children: [_jsx("h5", { className: frontendElementClass(block, "heading"), id: headingId, children: heading }), _jsx(Links, { "aria-labelledby": nav ? headingId : undefined, className: frontendElementClass(block, "links"), children: children })] }));
7
+ }
8
+ export { SiteLinkCategory };
9
+ //# sourceMappingURL=category.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category.js","sourceRoot":"","sources":["../../../../../src/layout/components/site/category.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,KAAK,GAAG,eAAe,CAAC;AAS9B,SAAS,gBAAgB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,GAAG,KAAK,EAAyB;IAC5F,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAClC,OAAO,CACL,eAAK,SAAS,EAAE,iBAAiB,CAAC,KAAK,CAAC,aACxC,aAAI,SAAS,EAAE,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,YAAG,OAAO,GAAM,EACpF,KAAC,KAAK,uBAAkB,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,YAAG,QAAQ,GAAS,IAClH,CACP,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../../src/layout/components/site/footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvD,OAAO,EAAgE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAMxG,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF,KAAK,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,GAAG;IACrE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;CAC5B,CAAC;AA6EF,iBAAS,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,+BAOzH;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,eAAe,+BAmCzC;AAED,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../../src/layout/components/site/footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvD,OAAO,EAAgE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAOxG,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF,KAAK,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,GAAG;IACrE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;CAC5B,CAAC;AA8EF,iBAAS,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,+BAOzH;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,eAAe,+BAmCzC;AAED,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC"}
@@ -7,6 +7,7 @@ import { Icon } from "../../../../icons/react/index.js";
7
7
  import { siteSocialService } from "./../../social.js";
8
8
  import { resolveSiteLinks } from "./../../links.js";
9
9
  import { useLocale } from "./../../../react/locale.js";
10
+ import { SiteLinkCategory } from "./category.js";
10
11
  const block = "site-footer";
11
12
  function socialEntry(entry) {
12
13
  const known = entry.service ? siteSocialService(entry.service) : null;
@@ -32,7 +33,7 @@ function FooterLinks({ className, links, softRedirect }) {
32
33
  return (_jsx("nav", { className: frontendElementClass(block, className), children: links.map((link, index) => (_jsx(FooterLink, { link: link, softRedirect: softRedirect }, siteLinkKey(link, index)))) }));
33
34
  }
34
35
  function FooterGroup({ group, softRedirect }) {
35
- return (_jsxs("div", { className: frontendElementClass(block, "group"), children: [_jsx("h5", { children: group.heading }), _jsx(FooterLinks, { className: "links", links: group.links, softRedirect: softRedirect })] }));
36
+ return (_jsx(SiteLinkCategory, { heading: group.heading, nav: true, children: group.links.map((link, index) => (_jsx(FooterLink, { link: link, softRedirect: softRedirect }, siteLinkKey(link, index)))) }));
36
37
  }
37
38
  function SiteFooterBrand({ brand, social, tagline }) {
38
39
  if (!brand && !tagline && !social?.length)
@@ -1 +1 @@
1
- {"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../../../src/layout/components/site/footer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../../../src/layout/components/site/footer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../../../../../../src/layout/components/site/header/groups.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,EAUL,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,KAAK,eAAe,GAAG;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,UAAU,GAAG,eAAe,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvD,KAAK,UAAU,GAAG;IAAE,KAAK,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAQ9D,iBAAS,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE;;;;;EAY1C;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,+BAe/H;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,+BAoB/E;AA4DD,iBAAS,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,+BAiC7G;AAiCD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,UAAU,+BAe7C;AAED,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC;AAC/G,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../../../../../../src/layout/components/site/header/groups.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,EAUL,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,KAAK,eAAe,GAAG;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,UAAU,GAAG,eAAe,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvD,KAAK,UAAU,GAAG;IAAE,KAAK,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAQ9D,iBAAS,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE;;;;;EAY1C;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,+BAe/H;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,+BAoB/E;AA4DD,iBAAS,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,+BAiC7G;AA8BD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,UAAU,+BAe7C;AAED,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC;AAC/G,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC"}
@@ -7,6 +7,7 @@ import { useRenderCurrentUrl } from "./../../../../render/current_url.js";
7
7
  import { activeSection, observeSections, serverActiveSection, subscribeActiveSection } from "./../section_spy.js";
8
8
  import { isSiteLinkActive, isSiteLinkGroup, SiteLinkAnchor, siteLinkChildren, SiteLinkLabel, siteLinkFragment, siteLinkKey, siteLinkOnCurrentPage, sitePathForms, } from "./../link.js";
9
9
  import { SiteHeaderSearch } from "./search.js";
10
+ import { SiteLinkCategory } from "./../category.js";
10
11
  const block = "site-header";
11
12
  function siteLinkLeaves(links) {
12
13
  return links.flatMap((link) => (isSiteLinkGroup(link) ? siteLinkLeaves(siteLinkChildren(link)) : [link]));
@@ -39,7 +40,7 @@ function SiteHeaderNavTrigger(props) {
39
40
  function SheetEntry(props) {
40
41
  const { link } = props;
41
42
  const description = link.description === undefined ? null : (_jsx("span", { className: frontendElementClass(block, "sheet-description"), children: link.description }));
42
- return (_jsxs(SiteHeaderAnchor, { ...props, className: frontendElementClass(block, "sheet-entry"), link: link, children: [_jsx("span", { children: _jsx(SiteLinkLabel, { link: link }) }), description] }));
43
+ return (_jsxs(SiteHeaderAnchor, { ...props, className: frontendElementClass(block, "sheet-entry"), link: link, plain: true, children: [_jsx("span", { className: frontendClassName("text-link"), children: _jsx(SiteLinkLabel, { link: link }) }), description] }));
43
44
  }
44
45
  function SheetColumn(props) {
45
46
  const headingId = `${useId().replace(/:/gu, "")}_sheet_heading`;
@@ -72,7 +73,7 @@ function SiteHeaderChevron() {
72
73
  return _jsx("span", { "aria-hidden": "true", className: frontendElementClass(block, "menu-group-chevron") });
73
74
  }
74
75
  function MenuSection(props) {
75
- return (_jsxs("div", { className: frontendElementClass(block, "menu-section"), children: [_jsx("h5", { className: frontendElementClass(block, "menu-section-heading"), children: props.link.label }), _jsx("div", { className: frontendElementClass(block, "menu-section-links"), children: siteLinkChildren(props.link).map((child, index) => (_createElement(SiteHeaderAnchor, { ...props, key: siteLinkKey(child, index), link: child }))) })] }));
76
+ return (_jsx(SiteLinkCategory, { heading: props.link.label, children: siteLinkChildren(props.link).map((child, index) => (_createElement(SiteHeaderAnchor, { ...props, key: siteLinkKey(child, index), link: child }))) }));
76
77
  }
77
78
  function MenuGroupLinks(props) {
78
79
  const links = (_jsx("div", { className: frontendElementClass(block, "menu-group-links"), children: siteLinkChildren(props.link).map((child, index) => {