@fairgarden/design 0.1.0-alpha.1 → 0.1.0-alpha.2

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 (517) hide show
  1. package/LICENSE +21 -0
  2. package/Readme.md +51 -27
  3. package/actions/button/Button.d.ts.map +1 -1
  4. package/actions/button/Button.js +13 -1
  5. package/actions/button/Button.js.map +1 -1
  6. package/actions/button/button.module.css +85 -25
  7. package/actions/chip/Chip.d.ts +2 -2
  8. package/actions/chip/Chip.js +2 -2
  9. package/actions/chip/chip.module.css +12 -18
  10. package/actions/link/Link.d.ts +1 -1
  11. package/actions/link/link.module.css +22 -19
  12. package/actions/toggle/Toggle.js +1 -1
  13. package/actions/toggle/toggle.module.css +27 -23
  14. package/content/card/card.module.css +27 -27
  15. package/content/card-grid/CardGrid.js +1 -1
  16. package/content/card-grid/card-grid.module.css +3 -3
  17. package/content/carousel/Carousel.d.ts.map +1 -1
  18. package/content/carousel/Carousel.js +1 -4
  19. package/content/carousel/Carousel.js.map +1 -1
  20. package/content/carousel/carousel.module.css +19 -9
  21. package/content/code-block/CodeActionsMenu.d.ts +34 -0
  22. package/content/code-block/CodeActionsMenu.d.ts.map +1 -0
  23. package/content/code-block/CodeActionsMenu.js +102 -0
  24. package/content/code-block/CodeActionsMenu.js.map +1 -0
  25. package/content/code-block/CodeBlock.d.ts +37 -0
  26. package/content/code-block/CodeBlock.d.ts.map +1 -0
  27. package/content/code-block/CodeBlock.js +30 -0
  28. package/content/code-block/CodeBlock.js.map +1 -0
  29. package/content/code-block/CodeBlockFrame.d.ts +54 -0
  30. package/content/code-block/CodeBlockFrame.d.ts.map +1 -0
  31. package/content/code-block/CodeBlockFrame.js +80 -0
  32. package/content/code-block/CodeBlockFrame.js.map +1 -0
  33. package/content/code-block/CodeBlockHeader.d.ts +26 -0
  34. package/content/code-block/CodeBlockHeader.d.ts.map +1 -0
  35. package/content/code-block/CodeBlockHeader.js +16 -0
  36. package/content/code-block/CodeBlockHeader.js.map +1 -0
  37. package/content/code-block/CodeBlockLazy.d.ts +11 -0
  38. package/content/code-block/CodeBlockLazy.d.ts.map +1 -0
  39. package/content/code-block/CodeBlockLazy.js +14 -0
  40. package/content/code-block/CodeBlockLazy.js.map +1 -0
  41. package/content/code-block/CodeBlockLoading.d.ts +31 -0
  42. package/content/code-block/CodeBlockLoading.d.ts.map +1 -0
  43. package/content/code-block/CodeBlockLoading.js +90 -0
  44. package/content/code-block/CodeBlockLoading.js.map +1 -0
  45. package/content/code-block/CodeBlockSection.d.ts +40 -0
  46. package/content/code-block/CodeBlockSection.d.ts.map +1 -0
  47. package/content/code-block/CodeBlockSection.js +105 -0
  48. package/content/code-block/CodeBlockSection.js.map +1 -0
  49. package/content/code-block/CodeBlockToasts.d.ts +26 -0
  50. package/content/code-block/CodeBlockToasts.d.ts.map +1 -0
  51. package/content/code-block/CodeBlockToasts.js +88 -0
  52. package/content/code-block/CodeBlockToasts.js.map +1 -0
  53. package/content/code-block/code-block.module.css +949 -0
  54. package/content/code-block/index.d.ts +4 -0
  55. package/content/code-block/index.d.ts.map +1 -0
  56. package/content/code-block/index.js +4 -0
  57. package/content/code-block/index.js.map +1 -0
  58. package/content/demo/DemoContent.d.ts +32 -0
  59. package/content/demo/DemoContent.d.ts.map +1 -0
  60. package/content/demo/DemoContent.js +87 -0
  61. package/content/demo/DemoContent.js.map +1 -0
  62. package/content/demo/DemoFrame.d.ts +6 -0
  63. package/content/demo/DemoFrame.d.ts.map +1 -0
  64. package/content/demo/DemoFrame.js +17 -0
  65. package/content/demo/DemoFrame.js.map +1 -0
  66. package/content/demo/DemoLazy.d.ts +11 -0
  67. package/content/demo/DemoLazy.d.ts.map +1 -0
  68. package/content/demo/DemoLazy.js +14 -0
  69. package/content/demo/DemoLazy.js.map +1 -0
  70. package/content/demo/DemoLoading.d.ts +23 -0
  71. package/content/demo/DemoLoading.d.ts.map +1 -0
  72. package/content/demo/DemoLoading.js +26 -0
  73. package/content/demo/DemoLoading.js.map +1 -0
  74. package/content/demo/demo.module.css +163 -0
  75. package/content/demo/index.d.ts +4 -0
  76. package/content/demo/index.d.ts.map +1 -0
  77. package/content/demo/index.js +4 -0
  78. package/content/demo/index.js.map +1 -0
  79. package/content/empty-state/EmptyState.d.ts +1 -1
  80. package/content/empty-state/EmptyState.js +1 -1
  81. package/content/empty-state/empty-state.module.css +11 -11
  82. package/content/feature-grid/feature-grid.module.css +22 -22
  83. package/content/index-rows/IndexRows.d.ts +2 -2
  84. package/content/index-rows/IndexRows.d.ts.map +1 -1
  85. package/content/index-rows/IndexRows.js +1 -1
  86. package/content/index-rows/index-rows.module.css +29 -29
  87. package/content/pricing/Pricing.d.ts +4 -4
  88. package/content/pricing/Pricing.d.ts.map +1 -1
  89. package/content/pricing/Pricing.js +4 -4
  90. package/content/pricing/Pricing.js.map +1 -1
  91. package/content/pricing/pricing.module.css +22 -22
  92. package/content/profile/Profile.d.ts +1 -1
  93. package/content/profile/Profile.js +2 -2
  94. package/content/profile/profile.module.css +13 -13
  95. package/content/quote/Quote.d.ts +1 -1
  96. package/content/quote/quote.module.css +9 -9
  97. package/content/timeline/Timeline.d.ts +1 -1
  98. package/content/timeline/Timeline.d.ts.map +1 -1
  99. package/content/timeline/Timeline.js +5 -5
  100. package/content/timeline/Timeline.js.map +1 -1
  101. package/content/timeline/timeline.module.css +12 -12
  102. package/content/types-table/TypePre.d.ts +11 -0
  103. package/content/types-table/TypePre.d.ts.map +1 -0
  104. package/content/types-table/TypePre.js +13 -0
  105. package/content/types-table/TypePre.js.map +1 -0
  106. package/content/types-table/TypesTable.d.ts +22 -0
  107. package/content/types-table/TypesTable.d.ts.map +1 -0
  108. package/content/types-table/TypesTable.js +124 -0
  109. package/content/types-table/TypesTable.js.map +1 -0
  110. package/content/types-table/index.d.ts +3 -0
  111. package/content/types-table/index.d.ts.map +1 -0
  112. package/content/types-table/index.js +3 -0
  113. package/content/types-table/index.js.map +1 -0
  114. package/content/types-table/types-table.module.css +160 -0
  115. package/data/chart/Chart.d.ts +8 -1
  116. package/data/chart/Chart.d.ts.map +1 -1
  117. package/data/chart/Chart.js +28 -15
  118. package/data/chart/Chart.js.map +1 -1
  119. package/data/chart/chart.module.css +20 -6
  120. package/data/figure/Figure.d.ts +1 -1
  121. package/data/figure/Figure.js +1 -1
  122. package/data/figure/figure.module.css +7 -7
  123. package/data/map/Map.d.ts +3 -3
  124. package/data/map/Map.d.ts.map +1 -1
  125. package/data/map/Map.js +10 -8
  126. package/data/map/Map.js.map +1 -1
  127. package/data/map/MapCanvas.d.ts.map +1 -1
  128. package/data/map/MapCanvas.js +5 -9
  129. package/data/map/MapCanvas.js.map +1 -1
  130. package/data/map/map.module.css +39 -14
  131. package/data/map/mapStyle.d.ts +2 -2
  132. package/data/map/mapStyle.d.ts.map +1 -1
  133. package/data/map/mapStyle.js +5 -5
  134. package/data/map/mapStyle.js.map +1 -1
  135. package/data/scroll-area/ScrollArea.d.ts.map +1 -1
  136. package/data/scroll-area/ScrollArea.js +8 -4
  137. package/data/scroll-area/ScrollArea.js.map +1 -1
  138. package/data/scroll-area/scroll-area.module.css +28 -9
  139. package/data/spec-grid/spec-grid.module.css +8 -8
  140. package/data/spec-list/spec-list.module.css +3 -3
  141. package/data/spec-sheet/SpecSheet.d.ts +2 -2
  142. package/data/spec-sheet/SpecSheet.js +1 -1
  143. package/data/spec-sheet/spec-sheet.module.css +9 -9
  144. package/data/stat/Stat.d.ts +1 -1
  145. package/data/stat/Stat.d.ts.map +1 -1
  146. package/data/stat/stat.module.css +4 -4
  147. package/data/table/Table.d.ts +6 -5
  148. package/data/table/Table.d.ts.map +1 -1
  149. package/data/table/Table.js.map +1 -1
  150. package/data/table/table.module.css +43 -46
  151. package/disclosure/accordion/Accordion.d.ts +1 -1
  152. package/disclosure/accordion/Accordion.js +1 -1
  153. package/disclosure/accordion/accordion.module.css +12 -12
  154. package/disclosure/collapsible/Collapsible.d.ts +4 -4
  155. package/disclosure/collapsible/Collapsible.js +4 -4
  156. package/disclosure/collapsible/collapsible.module.css +10 -10
  157. package/disclosure/faq/FAQ.d.ts +3 -3
  158. package/disclosure/faq/FAQ.d.ts.map +1 -1
  159. package/disclosure/faq/FAQ.js +3 -3
  160. package/disclosure/faq/FAQ.js.map +1 -1
  161. package/disclosure/faq/faq.module.css +20 -20
  162. package/feedback/alert/alert.module.css +4 -4
  163. package/feedback/avatar/avatar-group.module.css +2 -2
  164. package/feedback/avatar/avatar.module.css +9 -9
  165. package/feedback/badge/Badge.d.ts +1 -1
  166. package/feedback/badge/badge.module.css +7 -7
  167. package/feedback/meter/Meter.d.ts +2 -2
  168. package/feedback/meter/meter.module.css +14 -14
  169. package/feedback/progress/Progress.d.ts +1 -1
  170. package/feedback/progress/progress.module.css +7 -7
  171. package/feedback/tag/tag.module.css +7 -7
  172. package/feedback/toast/Toast.d.ts +3 -3
  173. package/feedback/toast/Toast.d.ts.map +1 -1
  174. package/feedback/toast/Toast.js +17 -7
  175. package/feedback/toast/Toast.js.map +1 -1
  176. package/feedback/toast/toast.module.css +31 -20
  177. package/forms/autocomplete/Autocomplete.d.ts +11 -0
  178. package/forms/autocomplete/Autocomplete.d.ts.map +1 -1
  179. package/forms/autocomplete/Autocomplete.js +27 -6
  180. package/forms/autocomplete/Autocomplete.js.map +1 -1
  181. package/forms/autocomplete/autocomplete.module.css +35 -41
  182. package/forms/checkbox/Checkbox.js +1 -1
  183. package/forms/checkbox/checkbox.module.css +29 -25
  184. package/forms/checkbox-group/checkbox-group.module.css +4 -4
  185. package/forms/combobox/Combobox.d.ts +10 -0
  186. package/forms/combobox/Combobox.d.ts.map +1 -1
  187. package/forms/combobox/Combobox.js +28 -7
  188. package/forms/combobox/Combobox.js.map +1 -1
  189. package/forms/combobox/combobox.module.css +34 -41
  190. package/forms/field/field.module.css +1 -1
  191. package/forms/fieldset/Fieldset.d.ts +1 -1
  192. package/forms/fieldset/Fieldset.js +2 -2
  193. package/forms/fieldset/fieldset.module.css +14 -14
  194. package/forms/form/form.module.css +2 -2
  195. package/forms/input/Input.d.ts +10 -3
  196. package/forms/input/Input.d.ts.map +1 -1
  197. package/forms/input/Input.js +10 -4
  198. package/forms/input/Input.js.map +1 -1
  199. package/forms/input/input.module.css +38 -21
  200. package/forms/number-field/number-field.module.css +24 -23
  201. package/forms/radio/Radio.d.ts +1 -1
  202. package/forms/radio/Radio.d.ts.map +1 -1
  203. package/forms/radio/Radio.js +5 -3
  204. package/forms/radio/Radio.js.map +1 -1
  205. package/forms/radio/radio.module.css +38 -30
  206. package/forms/radio-group/RadioGroup.d.ts +1 -1
  207. package/forms/radio-group/radio-group.module.css +3 -3
  208. package/forms/search/Search.d.ts +10 -0
  209. package/forms/search/Search.d.ts.map +1 -1
  210. package/forms/search/Search.js +25 -6
  211. package/forms/search/Search.js.map +1 -1
  212. package/forms/search/search.module.css +25 -33
  213. package/forms/select/Select.d.ts +10 -2
  214. package/forms/select/Select.d.ts.map +1 -1
  215. package/forms/select/Select.js +27 -12
  216. package/forms/select/Select.js.map +1 -1
  217. package/forms/select/select.module.css +42 -48
  218. package/forms/slider/Slider.js +2 -2
  219. package/forms/slider/slider.module.css +23 -23
  220. package/forms/switch/Switch.js +1 -1
  221. package/forms/switch/switch.module.css +23 -19
  222. package/foundations/expanding-box/ExpandingBox.d.ts +86 -0
  223. package/foundations/expanding-box/ExpandingBox.d.ts.map +1 -0
  224. package/foundations/expanding-box/ExpandingBox.js +179 -0
  225. package/foundations/expanding-box/ExpandingBox.js.map +1 -0
  226. package/foundations/expanding-box/expanding-box.module.css +415 -0
  227. package/foundations/expanding-box/index.d.ts +3 -0
  228. package/foundations/expanding-box/index.d.ts.map +1 -0
  229. package/foundations/expanding-box/index.js +3 -0
  230. package/foundations/expanding-box/index.js.map +1 -0
  231. package/foundations/expanding-box/startExpandingTransition.d.ts +33 -0
  232. package/foundations/expanding-box/startExpandingTransition.d.ts.map +1 -0
  233. package/foundations/expanding-box/startExpandingTransition.js +82 -0
  234. package/foundations/expanding-box/startExpandingTransition.js.map +1 -0
  235. package/foundations/ground/Ground.d.ts +1 -1
  236. package/foundations/ground/ground.module.css +4 -4
  237. package/foundations/icon/Icon.d.ts +1 -1
  238. package/foundations/icon/Icon.js +1 -1
  239. package/foundations/icon/icon.module.css +1 -1
  240. package/foundations/outline-morph/OutlineMorph.d.ts +112 -0
  241. package/foundations/outline-morph/OutlineMorph.d.ts.map +1 -0
  242. package/foundations/outline-morph/OutlineMorph.js +83 -0
  243. package/foundations/outline-morph/OutlineMorph.js.map +1 -0
  244. package/foundations/outline-morph/index.d.ts +3 -0
  245. package/foundations/outline-morph/index.d.ts.map +1 -0
  246. package/foundations/outline-morph/index.js +3 -0
  247. package/foundations/outline-morph/index.js.map +1 -0
  248. package/foundations/outline-morph/morphEngine.d.ts +219 -0
  249. package/foundations/outline-morph/morphEngine.d.ts.map +1 -0
  250. package/foundations/outline-morph/morphEngine.js +1331 -0
  251. package/foundations/outline-morph/morphEngine.js.map +1 -0
  252. package/foundations/outline-morph/outline-morph.module.css +113 -0
  253. package/foundations/outline-morph/useOutlineMorphRoot.d.ts +50 -0
  254. package/foundations/outline-morph/useOutlineMorphRoot.d.ts.map +1 -0
  255. package/foundations/outline-morph/useOutlineMorphRoot.js +55 -0
  256. package/foundations/outline-morph/useOutlineMorphRoot.js.map +1 -0
  257. package/foundations/separator/separator.module.css +10 -10
  258. package/foundations/sticker/Sticker.d.ts +4 -4
  259. package/foundations/sticker/Sticker.d.ts.map +1 -1
  260. package/foundations/sticker/Sticker.js +3 -3
  261. package/foundations/sticker/sticker.module.css +10 -10
  262. package/icons/paths.d.ts +1 -1
  263. package/icons/paths.d.ts.map +1 -1
  264. package/icons/paths.js +50 -0
  265. package/icons/paths.js.map +1 -1
  266. package/navigation/breadcrumb/Breadcrumb.d.ts +7 -1
  267. package/navigation/breadcrumb/Breadcrumb.d.ts.map +1 -1
  268. package/navigation/breadcrumb/Breadcrumb.js +8 -8
  269. package/navigation/breadcrumb/Breadcrumb.js.map +1 -1
  270. package/navigation/breadcrumb/breadcrumb.module.css +14 -14
  271. package/navigation/file-tabs/FileTabs.d.ts +169 -0
  272. package/navigation/file-tabs/FileTabs.d.ts.map +1 -0
  273. package/navigation/file-tabs/FileTabs.js +253 -0
  274. package/navigation/file-tabs/FileTabs.js.map +1 -0
  275. package/navigation/file-tabs/file-tabs.module.css +868 -0
  276. package/navigation/file-tabs/index.d.ts +2 -0
  277. package/navigation/file-tabs/index.d.ts.map +1 -0
  278. package/navigation/file-tabs/index.js +2 -0
  279. package/navigation/file-tabs/index.js.map +1 -0
  280. package/navigation/nav-drawer/NavDrawer.d.ts +32 -6
  281. package/navigation/nav-drawer/NavDrawer.d.ts.map +1 -1
  282. package/navigation/nav-drawer/NavDrawer.js +94 -28
  283. package/navigation/nav-drawer/NavDrawer.js.map +1 -1
  284. package/navigation/nav-drawer/nav-drawer.module.css +78 -55
  285. package/navigation/navigation-bar/NavigationBar.d.ts +31 -11
  286. package/navigation/navigation-bar/NavigationBar.d.ts.map +1 -1
  287. package/navigation/navigation-bar/NavigationBar.js +40 -17
  288. package/navigation/navigation-bar/NavigationBar.js.map +1 -1
  289. package/navigation/navigation-bar/navigation-bar.module.css +58 -27
  290. package/navigation/navigation-menu/NavigationMenu.d.ts +9 -9
  291. package/navigation/navigation-menu/NavigationMenu.d.ts.map +1 -1
  292. package/navigation/navigation-menu/NavigationMenu.js +15 -15
  293. package/navigation/navigation-menu/navigation-menu.module.css +39 -53
  294. package/navigation/pagination/Pagination.js +1 -1
  295. package/navigation/pagination/pagination.module.css +24 -24
  296. package/navigation/sidebar-nav/SidebarNav.d.ts +71 -0
  297. package/navigation/sidebar-nav/SidebarNav.d.ts.map +1 -0
  298. package/navigation/sidebar-nav/SidebarNav.js +169 -0
  299. package/navigation/sidebar-nav/SidebarNav.js.map +1 -0
  300. package/navigation/sidebar-nav/index.d.ts +2 -0
  301. package/navigation/sidebar-nav/index.d.ts.map +1 -0
  302. package/navigation/sidebar-nav/index.js +2 -0
  303. package/navigation/sidebar-nav/index.js.map +1 -0
  304. package/navigation/sidebar-nav/sidebar-nav.module.css +270 -0
  305. package/navigation/table-of-contents/TableOfContents.d.ts +92 -0
  306. package/navigation/table-of-contents/TableOfContents.d.ts.map +1 -0
  307. package/navigation/table-of-contents/TableOfContents.js +211 -0
  308. package/navigation/table-of-contents/TableOfContents.js.map +1 -0
  309. package/navigation/table-of-contents/index.d.ts +3 -0
  310. package/navigation/table-of-contents/index.d.ts.map +1 -0
  311. package/navigation/table-of-contents/index.js +3 -0
  312. package/navigation/table-of-contents/index.js.map +1 -0
  313. package/navigation/table-of-contents/table-of-contents.module.css +322 -0
  314. package/navigation/table-of-contents/useActiveHeading.d.ts +37 -0
  315. package/navigation/table-of-contents/useActiveHeading.d.ts.map +1 -0
  316. package/navigation/table-of-contents/useActiveHeading.js +111 -0
  317. package/navigation/table-of-contents/useActiveHeading.js.map +1 -0
  318. package/navigation/tabs/Tabs.d.ts +2 -2
  319. package/navigation/tabs/Tabs.js +3 -3
  320. package/navigation/tabs/tabs.module.css +22 -19
  321. package/navigation/toolbar/Toolbar.d.ts +7 -1
  322. package/navigation/toolbar/Toolbar.d.ts.map +1 -1
  323. package/navigation/toolbar/Toolbar.js +3 -3
  324. package/navigation/toolbar/Toolbar.js.map +1 -1
  325. package/navigation/toolbar/toolbar.module.css +6 -6
  326. package/overlays/alert-dialog/AlertDialog.d.ts +14 -4
  327. package/overlays/alert-dialog/AlertDialog.d.ts.map +1 -1
  328. package/overlays/alert-dialog/AlertDialog.js +15 -5
  329. package/overlays/alert-dialog/AlertDialog.js.map +1 -1
  330. package/overlays/alert-dialog/alert-dialog.module.css +4 -4
  331. package/overlays/context-menu/ContextMenu.d.ts +1 -1
  332. package/overlays/context-menu/ContextMenu.js +1 -1
  333. package/overlays/dialog/Dialog.d.ts +26 -11
  334. package/overlays/dialog/Dialog.d.ts.map +1 -1
  335. package/overlays/dialog/Dialog.js +36 -17
  336. package/overlays/dialog/Dialog.js.map +1 -1
  337. package/overlays/dialog/dialog.module.css +32 -31
  338. package/overlays/dialog/morph.d.ts +17 -0
  339. package/overlays/dialog/morph.d.ts.map +1 -0
  340. package/overlays/dialog/morph.js +44 -0
  341. package/overlays/dialog/morph.js.map +1 -0
  342. package/overlays/menu/Menu.d.ts +18 -7
  343. package/overlays/menu/Menu.d.ts.map +1 -1
  344. package/overlays/menu/Menu.js +35 -12
  345. package/overlays/menu/Menu.js.map +1 -1
  346. package/overlays/menu/menu.module.css +26 -50
  347. package/overlays/menu/morph.d.ts +16 -0
  348. package/overlays/menu/morph.d.ts.map +1 -0
  349. package/overlays/menu/morph.js +36 -0
  350. package/overlays/menu/morph.js.map +1 -0
  351. package/overlays/menu/popup.d.ts +2 -0
  352. package/overlays/menu/popup.d.ts.map +1 -1
  353. package/overlays/menu/popup.js +11 -3
  354. package/overlays/menu/popup.js.map +1 -1
  355. package/overlays/menubar/Menubar.d.ts +10 -1
  356. package/overlays/menubar/Menubar.d.ts.map +1 -1
  357. package/overlays/menubar/Menubar.js +22 -12
  358. package/overlays/menubar/Menubar.js.map +1 -1
  359. package/overlays/menubar/menubar.module.css +13 -13
  360. package/overlays/popover/Popover.d.ts +22 -8
  361. package/overlays/popover/Popover.d.ts.map +1 -1
  362. package/overlays/popover/Popover.js +51 -16
  363. package/overlays/popover/Popover.js.map +1 -1
  364. package/overlays/popover/popover.module.css +73 -47
  365. package/overlays/preview-card/PreviewCard.d.ts +3 -3
  366. package/overlays/preview-card/PreviewCard.d.ts.map +1 -1
  367. package/overlays/preview-card/PreviewCard.js +5 -6
  368. package/overlays/preview-card/PreviewCard.js.map +1 -1
  369. package/overlays/preview-card/preview-card.module.css +19 -54
  370. package/overlays/search-dialog/SearchDialog.d.ts +89 -0
  371. package/overlays/search-dialog/SearchDialog.d.ts.map +1 -0
  372. package/overlays/search-dialog/SearchDialog.js +220 -0
  373. package/overlays/search-dialog/SearchDialog.js.map +1 -0
  374. package/overlays/search-dialog/SearchDialogPopup.d.ts +39 -0
  375. package/overlays/search-dialog/SearchDialogPopup.d.ts.map +1 -0
  376. package/overlays/search-dialog/SearchDialogPopup.js +80 -0
  377. package/overlays/search-dialog/SearchDialogPopup.js.map +1 -0
  378. package/overlays/search-dialog/SearchDialogTrigger.d.ts +24 -0
  379. package/overlays/search-dialog/SearchDialogTrigger.d.ts.map +1 -0
  380. package/overlays/search-dialog/SearchDialogTrigger.js +32 -0
  381. package/overlays/search-dialog/SearchDialogTrigger.js.map +1 -0
  382. package/overlays/search-dialog/index.d.ts +3 -0
  383. package/overlays/search-dialog/index.d.ts.map +1 -0
  384. package/overlays/search-dialog/index.js +3 -0
  385. package/overlays/search-dialog/index.js.map +1 -0
  386. package/overlays/search-dialog/search-dialog.module.css +492 -0
  387. package/overlays/search-dialog/useShortcutLabel.d.ts +13 -0
  388. package/overlays/search-dialog/useShortcutLabel.d.ts.map +1 -0
  389. package/overlays/search-dialog/useShortcutLabel.js +19 -0
  390. package/overlays/search-dialog/useShortcutLabel.js.map +1 -0
  391. package/overlays/search-dialog/variants.d.ts +25 -0
  392. package/overlays/search-dialog/variants.d.ts.map +1 -0
  393. package/overlays/search-dialog/variants.js +31 -0
  394. package/overlays/search-dialog/variants.js.map +1 -0
  395. package/overlays/tooltip/Tooltip.d.ts +3 -3
  396. package/overlays/tooltip/Tooltip.d.ts.map +1 -1
  397. package/overlays/tooltip/Tooltip.js +3 -3
  398. package/overlays/tooltip/Tooltip.js.map +1 -1
  399. package/overlays/tooltip/tooltip.module.css +2 -2
  400. package/package.json +27 -19
  401. package/page/announcement-bar/AnnouncementBar.d.ts +1 -1
  402. package/page/announcement-bar/AnnouncementBar.js +4 -4
  403. package/page/announcement-bar/AnnouncementBar.js.map +1 -1
  404. package/page/announcement-bar/announcement-bar.module.css +11 -17
  405. package/page/cta-block/CTABlock.d.ts +5 -5
  406. package/page/cta-block/CTABlock.d.ts.map +1 -1
  407. package/page/cta-block/CTABlock.js +2 -2
  408. package/page/cta-block/cta-block.module.css +26 -26
  409. package/page/docs-layout/DocsLayout.d.ts +83 -0
  410. package/page/docs-layout/DocsLayout.d.ts.map +1 -0
  411. package/page/docs-layout/DocsLayout.js +108 -0
  412. package/page/docs-layout/DocsLayout.js.map +1 -0
  413. package/page/docs-layout/docs-layout.module.css +266 -0
  414. package/page/docs-layout/index.d.ts +2 -0
  415. package/page/docs-layout/index.d.ts.map +1 -0
  416. package/page/docs-layout/index.js +2 -0
  417. package/page/docs-layout/index.js.map +1 -0
  418. package/page/footer/Footer.d.ts +1 -1
  419. package/page/footer/Footer.js +1 -1
  420. package/page/footer/footer.module.css +31 -31
  421. package/page/hero/Hero.d.ts +3 -3
  422. package/page/hero/Hero.d.ts.map +1 -1
  423. package/page/hero/Hero.js +1 -1
  424. package/page/hero/hero.module.css +36 -36
  425. package/page/marquee/Marquee.d.ts +2 -2
  426. package/page/marquee/Marquee.js +1 -1
  427. package/page/marquee/marquee.module.css +11 -11
  428. package/page/newsletter/Newsletter.d.ts.map +1 -1
  429. package/page/newsletter/Newsletter.js +4 -59
  430. package/page/newsletter/Newsletter.js.map +1 -1
  431. package/page/newsletter/newsletter.module.css +44 -22
  432. package/page/section-bar/SectionBar.d.ts +10 -3
  433. package/page/section-bar/SectionBar.d.ts.map +1 -1
  434. package/page/section-bar/SectionBar.js +21 -11
  435. package/page/section-bar/SectionBar.js.map +1 -1
  436. package/page/section-bar/section-bar.module.css +43 -46
  437. package/page/section-divider/SectionDivider.d.ts +2 -2
  438. package/page/section-divider/SectionDivider.js +4 -4
  439. package/page/section-divider/SectionDivider.js.map +1 -1
  440. package/page/section-divider/section-divider.module.css +18 -18
  441. package/page/section-header/SectionHeader.d.ts +7 -7
  442. package/page/section-header/SectionHeader.d.ts.map +1 -1
  443. package/page/section-header/SectionHeader.js +3 -3
  444. package/page/section-header/SectionHeader.js.map +1 -1
  445. package/page/section-header/section-header.module.css +16 -16
  446. package/utils/Ornament.d.ts +1 -1
  447. package/utils/Ornament.js +2 -2
  448. package/utils/assignRef.d.ts +7 -1
  449. package/utils/assignRef.d.ts.map +1 -1
  450. package/utils/assignRef.js +18 -0
  451. package/utils/assignRef.js.map +1 -1
  452. package/utils/docs/DemoTitle.d.ts +12 -0
  453. package/utils/docs/DemoTitle.d.ts.map +1 -0
  454. package/utils/docs/DemoTitle.js +11 -0
  455. package/utils/docs/DemoTitle.js.map +1 -0
  456. package/utils/docs/Pre.d.ts +39 -0
  457. package/utils/docs/Pre.d.ts.map +1 -0
  458. package/utils/docs/Pre.js +26 -0
  459. package/utils/docs/Pre.js.map +1 -0
  460. package/utils/docs/createDemo.d.ts +89 -0
  461. package/utils/docs/createDemo.d.ts.map +1 -0
  462. package/utils/docs/createDemo.js +51 -0
  463. package/utils/docs/createDemo.js.map +1 -0
  464. package/utils/docs/createMdxComponents.d.ts +52 -0
  465. package/utils/docs/createMdxComponents.d.ts.map +1 -0
  466. package/utils/docs/createMdxComponents.js +59 -0
  467. package/utils/docs/createMdxComponents.js.map +1 -0
  468. package/utils/docs/createTypes.d.ts +23 -0
  469. package/utils/docs/createTypes.d.ts.map +1 -0
  470. package/utils/docs/createTypes.js +27 -0
  471. package/utils/docs/createTypes.js.map +1 -0
  472. package/utils/docs/index.d.ts +8 -0
  473. package/utils/docs/index.d.ts.map +1 -0
  474. package/utils/docs/index.js +16 -0
  475. package/utils/docs/index.js.map +1 -0
  476. package/utils/docs/mdx.module.css +201 -0
  477. package/utils/docs/serverSourceEnhancers.d.ts +26 -0
  478. package/utils/docs/serverSourceEnhancers.d.ts.map +1 -0
  479. package/utils/docs/serverSourceEnhancers.js +32 -0
  480. package/utils/docs/serverSourceEnhancers.js.map +1 -0
  481. package/utils/docs/toSidebarItems.d.ts +23 -0
  482. package/utils/docs/toSidebarItems.d.ts.map +1 -0
  483. package/utils/docs/toSidebarItems.js +36 -0
  484. package/utils/docs/toSidebarItems.js.map +1 -0
  485. package/utils/font-fallbacks.css +176 -0
  486. package/utils/fonts.d.ts +1 -0
  487. package/utils/fonts.d.ts.map +1 -1
  488. package/utils/fonts.js +12 -0
  489. package/utils/fonts.js.map +1 -1
  490. package/utils/frame.d.ts +4 -0
  491. package/utils/frame.d.ts.map +1 -0
  492. package/utils/frame.js +11 -0
  493. package/utils/frame.js.map +1 -0
  494. package/utils/global.css +480 -266
  495. package/utils/line.module.css +17 -17
  496. package/utils/media.css +1 -1
  497. package/utils/ornament.module.css +19 -19
  498. package/utils/overlay.d.ts +4 -4
  499. package/utils/overlay.js +4 -4
  500. package/utils/pattern.module.css +45 -45
  501. package/utils/print.css +48 -34
  502. package/utils/reset.css +9 -2
  503. package/utils/roles.css +29 -29
  504. package/utils/seriesPatterns.js +3 -3
  505. package/utils/syntax.module.css +92 -0
  506. package/utils/theme.css +6 -6
  507. package/utils/tokens.css +262 -192
  508. package/utils/tokens.d.ts +51 -8
  509. package/utils/tokens.d.ts.map +1 -1
  510. package/utils/tokens.js +46 -9
  511. package/utils/tokens.js.map +1 -1
  512. package/utils/type.module.css +87 -87
  513. package/utils/useReleaseMark.d.ts +13 -0
  514. package/utils/useReleaseMark.d.ts.map +1 -0
  515. package/utils/useReleaseMark.js +44 -0
  516. package/utils/useReleaseMark.js.map +1 -0
  517. package/utils/view-transitions.css +122 -0
@@ -0,0 +1,83 @@
1
+ import * as React from 'react';
2
+ import { type VariantProps } from 'class-variance-authority';
3
+ import { type NavDrawerProps } from '../../navigation/nav-drawer';
4
+ import { type PageGroundPreset } from '../../utils/scope';
5
+ export declare const docsLayout: (props?: ({
6
+ primary?: "ruby" | "brown" | "crimson" | "gold" | "gray" | "indigo" | "olive" | "pink" | "plum" | "purple" | "red" | "tomato" | "violet" | "bronze" | "iris" | "mauve" | "sage" | "sand" | "slate" | null | undefined;
7
+ secondary?: "ruby" | "blue" | "brown" | "crimson" | "cyan" | "gold" | "gray" | "green" | "indigo" | "lime" | "olive" | "orange" | "pink" | "plum" | "purple" | "red" | "teal" | "tomato" | "violet" | "yellow" | "amber" | "bronze" | "grass" | "iris" | "jade" | "mauve" | "mint" | "sage" | "sand" | "sky" | "slate" | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
9
+ type DocsLayoutVariants = VariantProps<typeof docsLayout>;
10
+ interface DocsLayoutContextValue {
11
+ /** The sidebar navigation, repeated in the drawer below the threshold. */
12
+ sidebar: React.ReactNode;
13
+ /** The in-flow sidebar column. */
14
+ sidebarRef: React.RefObject<HTMLDivElement | null>;
15
+ }
16
+ /** Provided by DocsLayout; read by DocsLayoutDrawer. */
17
+ export declare const DocsLayoutContext: React.Context<DocsLayoutContextValue | null>;
18
+ /** Props for DocsLayout: `div` props, the frame's slots, the page ground and the color axes. */
19
+ export type DocsLayoutProps = Omit<React.ComponentPropsWithRef<'div'>, 'children'> & {
20
+ /**
21
+ * The site header: a `NavigationBar` with `wide` (so its content box
22
+ * meets the columns), whose `drawer` is a `DocsLayoutDrawer`.
23
+ */
24
+ header?: React.ReactNode;
25
+ /**
26
+ * The page tree: a `SidebarNav`. It fills the sticky start column from
27
+ * --fgd-nav-inline-n-above and, below it, the drawer that
28
+ * `DocsLayoutDrawer` opens from the header.
29
+ */
30
+ sidebar?: React.ReactNode;
31
+ /**
32
+ * The page's contents: a `TableOfContents`. It fills the sticky end
33
+ * column from --xl-n-above; below it, the same element draws as its
34
+ * compact bar (`kind="bar"`, set through `TableOfContentsContext`),
35
+ * pinned at the top of the page under the header. Omitted, or with no
36
+ * items, neither appears.
37
+ */
38
+ toc?: React.ReactNode;
39
+ /** The page. */
40
+ children?: React.ReactNode;
41
+ /** A full-width part under the columns, such as the site `Footer`. */
42
+ footer?: React.ReactNode;
43
+ /** The page ground: `paper` (default), `white` or the page's one pastel. */
44
+ preset?: PageGroundPreset;
45
+ /** The `main` element's id, the skip link's target. Default "main". */
46
+ mainId?: string;
47
+ /** The skip link's words. Default "Skip to main content". */
48
+ skipLabel?: string;
49
+ /** Override the page ground's primary. Never defaulted [D133]. */
50
+ primary?: DocsLayoutVariants['primary'];
51
+ /** Override the page ground's secondary. Never defaulted. */
52
+ secondary?: DocsLayoutVariants['secondary'];
53
+ };
54
+ /**
55
+ * The documentation page frame [D202, D203]. A skip link first (the
56
+ * header's Navigation Bar then renders none), the header, then up to three
57
+ * columns inside `--fgd-container-wide`: the sidebar (`SidebarNav`, a
58
+ * sticky 240 px column with its own scroll, from --fgd-nav-inline-n-above;
59
+ * below it the header's menu Button opens the same navigation in the
60
+ * drawer), the `main` page with its end gutter for the code blocks'
61
+ * hanging ⋮, and the table of contents (a sticky 240 px column from
62
+ * --xl-n-above; below it the contents' compact bar, pinned under the
63
+ * header while the page scrolls, naming the section in view and opening
64
+ * the list in a panel). Every placement is viewport media and the bar has
65
+ * one fixed height, so the first paint is the final frame. Print keeps the
66
+ * page alone.
67
+ */
68
+ export declare function DocsLayout(props: DocsLayoutProps): React.JSX.Element;
69
+ /** Props for DocsLayoutDrawer: NavDrawer's, less the list it builds itself. */
70
+ export type DocsLayoutDrawerProps = Omit<NavDrawerProps, 'nav' | 'sections' | 'children' | 'navLabel'>;
71
+ /**
72
+ * The docs layout's drawer [D202]: a `NavDrawer` whose sheet shows the
73
+ * layout's `sidebar` (the same `SidebarNav`, from the same data). Put it in
74
+ * the header's `drawer` slot: the Navigation Bar shows its menu Button
75
+ * below --fgd-nav-inline-n-above, exactly where the sidebar column is
76
+ * absent. Focus moves to the current page's link, is trapped, Escape
77
+ * closes, and focus returns to the menu Button; the page behind is inert
78
+ * and does not scroll. If the window widens past the threshold while it is
79
+ * open, it closes and focus moves to the sidebar column's current link.
80
+ */
81
+ export declare function DocsLayoutDrawer(props: DocsLayoutDrawerProps): React.JSX.Element;
82
+ export {};
83
+ //# sourceMappingURL=DocsLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsLayout.d.ts","sourceRoot":"","sources":["../../src/page/docs-layout/DocsLayout.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAGjE,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAQ5E,OAAO,EAAgC,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AA8BvF,eAAO,MAAM,UAAU;;;8EAMrB,CAAA;AAEF,KAAK,kBAAkB,GAAG,YAAY,CAAC,OAAO,UAAU,CAAC,CAAA;AAEzD,UAAU,sBAAsB;IAC9B,0EAA0E;IAC1E,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,kCAAkC;IAClC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;CACnD;AAED,wDAAwD;AACxD,eAAO,MAAM,iBAAiB,8CAA2D,CAAA;AAGzF,gGAAgG;AAChG,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IACjF;;;OAGG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,sEAAsE;IACtE,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,gBAAgB,CAAA;IACzB,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;IACvC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAA;CAC5C,CAAA;AAEH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,qBA6DhD;AAKD,+EAA+E;AAC/E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC,CAAA;AAEtG;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,qBAmB5D"}
@@ -0,0 +1,108 @@
1
+ 'use client';
2
+ import * as React from 'react';
3
+ import { cva } from 'class-variance-authority';
4
+ import { Ground } from '../../foundations/ground';
5
+ import { NavDrawer } from '../../navigation/nav-drawer';
6
+ import { TableOfContentsContext, } from '../../navigation/table-of-contents';
7
+ import { cx } from '../../utils/className';
8
+ import { SkipLinkContext } from '../../utils/frame';
9
+ import { primaryScaleVariants, secondaryScaleVariants } from '../../utils/scales';
10
+ import { isPageGroundPreset, useScope } from '../../utils/scope';
11
+ import styles from './docs-layout.module.css';
12
+ /*
13
+ * Docs Layout (§11.15) [D202, D203]: the documentation page frame. A skip
14
+ * link, the site header, then the frame's columns: the sidebar navigation,
15
+ * the page, and an optional table of contents.
16
+ *
17
+ * Implementation (CSS Modules + CVA)
18
+ * - Module: docs-layout.module.css; CVA function `docsLayout`.
19
+ * - Axes: `primary`, `secondary` → scales module classes, applied through
20
+ * the root's Ground.
21
+ * - Compound variants: none. Defaults: none; color axes none.
22
+ * - Color fallback: the root is a `kind="band"` Ground of the page ground
23
+ * (`preset`, else the scope's page ground, else `paper`); every part
24
+ * takes its role variables.
25
+ * - States: none of its own. The sidebar column and the table-of-contents
26
+ * column are placed by viewport media only (the sidebar from
27
+ * --fgd-nav-inline-n-above, the contents column from --xl-n-above), so
28
+ * the server HTML paints the final frame: nothing is measured and
29
+ * nothing moves at hydration [D201].
30
+ * - Parts: base (the page), skipLink, frame (the columns), sidebar (its
31
+ * sticky column), main, tocBar (the strip below --xl-n-above that pins
32
+ * the Table of Contents' compact bar under the header), toc (its sticky
33
+ * column),
34
+ * drawerTrigger (the menu Button of a DocsLayoutDrawer outside a
35
+ * Navigation Bar).
36
+ * - Scope: the root re-declares the page ground as a `kind="band"` Ground.
37
+ * - Container: none; page frame on the viewport custom media [D163].
38
+ */
39
+ export const docsLayout = cva(styles.base, {
40
+ variants: {
41
+ // Color axes: never defaulted [D133]; the root's Ground applies them.
42
+ primary: primaryScaleVariants,
43
+ secondary: secondaryScaleVariants,
44
+ },
45
+ });
46
+ /** Provided by DocsLayout; read by DocsLayoutDrawer. */
47
+ export const DocsLayoutContext = React.createContext(null);
48
+ DocsLayoutContext.displayName = 'DocsLayoutContext';
49
+ /**
50
+ * The documentation page frame [D202, D203]. A skip link first (the
51
+ * header's Navigation Bar then renders none), the header, then up to three
52
+ * columns inside `--fgd-container-wide`: the sidebar (`SidebarNav`, a
53
+ * sticky 240 px column with its own scroll, from --fgd-nav-inline-n-above;
54
+ * below it the header's menu Button opens the same navigation in the
55
+ * drawer), the `main` page with its end gutter for the code blocks'
56
+ * hanging ⋮, and the table of contents (a sticky 240 px column from
57
+ * --xl-n-above; below it the contents' compact bar, pinned under the
58
+ * header while the page scrolls, naming the section in view and opening
59
+ * the list in a panel). Every placement is viewport media and the bar has
60
+ * one fixed height, so the first paint is the final frame. Print keeps the
61
+ * page alone.
62
+ */
63
+ export function DocsLayout(props) {
64
+ const { header, sidebar, toc, children, footer, preset: presetProp, mainId = 'main', skipLabel = 'Skip to main content', primary, secondary, className, ...rest } = props;
65
+ const scope = useScope();
66
+ const preset = presetProp ?? (isPageGroundPreset(scope.ground) ? scope.ground : 'paper');
67
+ const sidebarRef = React.useRef(null);
68
+ const context = React.useMemo(() => ({ sidebar, sidebarRef }), [sidebar]);
69
+ const hasSidebar = sidebar != null && sidebar !== false;
70
+ const hasToc = toc != null && toc !== false;
71
+ return (React.createElement(SkipLinkContext.Provider, { value: true },
72
+ React.createElement(DocsLayoutContext.Provider, { value: context },
73
+ React.createElement(Ground, { ...rest, kind: "band", preset: preset, primary: primary ?? undefined, secondary: secondary ?? undefined, render: React.createElement("div", null), className: docsLayout({ className }) },
74
+ React.createElement("a", { className: styles.skipLink, href: `#${mainId}` }, skipLabel),
75
+ header,
76
+ React.createElement("div", { className: cx(styles.frame, hasSidebar && styles.withSidebar, hasToc && styles.withToc) },
77
+ hasSidebar ? (React.createElement("div", { ref: sidebarRef, className: styles.sidebar }, sidebar)) : null,
78
+ React.createElement("main", { id: mainId, className: styles.main },
79
+ hasToc ? (React.createElement("div", { className: styles.tocBar },
80
+ React.createElement(TableOfContentsContext.Provider, { value: BAR }, toc))) : null,
81
+ children),
82
+ hasToc ? React.createElement("div", { className: styles.toc }, toc) : null),
83
+ footer))));
84
+ }
85
+ /** Below --xl-n-above the one `toc` draws as the compact bar. */
86
+ const BAR = { kind: 'bar' };
87
+ /**
88
+ * The docs layout's drawer [D202]: a `NavDrawer` whose sheet shows the
89
+ * layout's `sidebar` (the same `SidebarNav`, from the same data). Put it in
90
+ * the header's `drawer` slot: the Navigation Bar shows its menu Button
91
+ * below --fgd-nav-inline-n-above, exactly where the sidebar column is
92
+ * absent. Focus moves to the current page's link, is trapped, Escape
93
+ * closes, and focus returns to the menu Button; the page behind is inert
94
+ * and does not scroll. If the window widens past the threshold while it is
95
+ * open, it closes and focus moves to the sidebar column's current link.
96
+ */
97
+ export function DocsLayoutDrawer(props) {
98
+ const { triggerClassName, ...rest } = props;
99
+ const layout = React.useContext(DocsLayoutContext);
100
+ const inlineTarget = React.useCallback(() => {
101
+ const column = layout?.sidebarRef.current;
102
+ return (column?.querySelector('a[aria-current="page"]') ??
103
+ column?.querySelector('a[href]') ??
104
+ null);
105
+ }, [layout]);
106
+ return (React.createElement(NavDrawer, { ...rest, nav: layout?.sidebar, inlineTarget: inlineTarget, triggerClassName: cx(styles.drawerTrigger, triggerClassName) }));
107
+ }
108
+ //# sourceMappingURL=DocsLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsLayout.js","sourceRoot":"","sources":["../../src/page/docs-layout/DocsLayout.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,266 @@
1
+ /*
2
+ * Docs Layout (§11.15). CVA function `docsLayout` in DocsLayout.tsx; the
3
+ * root (`base`) is the page's `kind="band"` Ground.
4
+ *
5
+ * Parts: base, skipLink, frame (the columns), withSidebar, withToc, sidebar
6
+ * (its sticky column), main, tocBar (the strip that pins the contents'
7
+ * compact bar), toc (its sticky column), drawerTrigger.
8
+ *
9
+ * Page frame [D163, D202]: placement answers to the viewport custom media
10
+ * alone, the same steps as the rest of the frame (no new breakpoint):
11
+ * - base: one column; the sidebar sits in the drawer (the header's menu
12
+ * Button), the contents in their compact bar, sticky under the header.
13
+ * - --fgd-nav-inline-n-above (1024 px by default): the sidebar column, the
14
+ * same threshold that swaps the header's drawer for inline navigation.
15
+ * - --xl-n-above (1440 px): the contents column; the bar goes.
16
+ * Nothing is measured, so the server HTML paints the final frame [D201].
17
+ * Colors are role variables only; one local custom property carries a
18
+ * dimension (--docs-layout-gutter, the page's end gutter).
19
+ */
20
+
21
+ /* Composition sits in top-level rules, outside the layers: Lightning CSS
22
+ * (Next.js with Turbopack) rejects `composes` inside @layer or any nesting.
23
+ * The composed classes keep their own layers. */
24
+ .skipLink {
25
+ composes: typeButtonSm from '../../utils/type.module.css';
26
+ }
27
+
28
+ @layer base {
29
+ .base {
30
+ position: relative;
31
+ min-block-size: 100dvh;
32
+ }
33
+
34
+ /* The skip link: the first stop in the page, shown on focus (§11.5). */
35
+ .skipLink {
36
+ position: absolute;
37
+ inset-block-start: var(--size-px-2);
38
+ inset-inline-start: var(--fgd-space-margin);
39
+ z-index: var(--layer-3);
40
+ display: inline-flex;
41
+ align-items: center;
42
+ box-sizing: border-box;
43
+ min-block-size: var(--fgd-size-hit);
44
+ padding-inline: var(--size-px-5);
45
+ border: var(--border-size-2) solid var(--primary12);
46
+ border-radius: var(--radius-round);
47
+ background-color: var(--primary12);
48
+ color: var(--role-inverse);
49
+ text-decoration-line: none;
50
+ white-space: nowrap;
51
+ }
52
+
53
+ /*
54
+ * The columns, capped at --fgd-container-wide (reached at the 1440 px
55
+ * viewport, so below it they span the viewport less its margins), with
56
+ * the grid gutter between them. The frame clips sideways at its padding
57
+ * edge (`clip`, so the sticky columns still dock): a code block's hanging
58
+ * ⋮ runs its hit area on into the margin, and on a phone past the
59
+ * viewport, where it must not make the page scroll sideways.
60
+ */
61
+ .frame {
62
+ display: grid;
63
+ grid-template-columns: minmax(0, 1fr);
64
+ column-gap: var(--fgd-space-margin);
65
+ box-sizing: border-box;
66
+ max-inline-size: var(--fgd-container-wide);
67
+ margin-inline: auto;
68
+ padding-inline: var(--fgd-space-margin);
69
+ overflow-x: clip;
70
+ }
71
+
72
+ /* Below its threshold the sidebar lives in the drawer; the contents column below --xl-n-above. */
73
+ .sidebar,
74
+ .toc {
75
+ display: none;
76
+ }
77
+
78
+ /*
79
+ * The page. Its end gutter is the room a code block's or demo's hanging
80
+ * ⋮ always takes, outside the block's frame: --fgd-size-file-tabs-control
81
+ * (24 px), then --fgd-size-hit from --md-n-above, so the whole 44 px hit
82
+ * area fits in the column [D197].
83
+ */
84
+ .main {
85
+ --docs-layout-gutter: var(--fgd-size-file-tabs-control);
86
+
87
+ min-inline-size: 0;
88
+ padding-block: var(--size-px-7-5) var(--fgd-space-section);
89
+ padding-inline-end: var(--docs-layout-gutter);
90
+ }
91
+
92
+ /*
93
+ * The contents below --xl-n-above [D203]: a strip at the top of the page,
94
+ * straight under the header's rule, that sticks to the viewport top once
95
+ * the static header scrolls away, so the bar naming the section in view
96
+ * stays in reach; the page's one sticky bar [D89]. One fixed height (the
97
+ * bar's --fgd-size-control-md box in --size-px-2 of ground, the
98
+ * --fgd-size-control-xl header height) over a --border-size-1 hairline,
99
+ * opaque page ground across the column and its end gutter, so the page
100
+ * scrolls cleanly under it. Its panel is an overlay, so opening it moves
101
+ * nothing. With no items the bar renders nothing and the strip goes.
102
+ */
103
+ .tocBar {
104
+ position: sticky;
105
+ inset-block-start: 0;
106
+ z-index: var(--layer-2);
107
+ display: flex;
108
+ align-items: center;
109
+ box-sizing: border-box;
110
+ block-size: calc(var(--fgd-size-control-xl) + var(--border-size-1));
111
+ margin-block: calc(-1 * var(--size-px-7-5)) var(--size-px-7-5);
112
+ margin-inline-end: calc(-1 * var(--docs-layout-gutter));
113
+ padding-inline-end: var(--docs-layout-gutter);
114
+ border-block-end: var(--border-size-1) solid var(--role-hairline);
115
+ background-color: var(--role-ground);
116
+ }
117
+
118
+ .tocBar:empty {
119
+ display: none;
120
+ }
121
+
122
+ /* A heading a link lands on clears the sticky bar by --size-px-3. */
123
+ .withToc .main [id] {
124
+ scroll-margin-block-start: calc(var(--fgd-size-control-xl) + var(--border-size-1) + var(--size-px-3));
125
+ }
126
+
127
+ @media (min-width: 768px) {
128
+ .main {
129
+ --docs-layout-gutter: var(--fgd-size-hit);
130
+ }
131
+ }
132
+
133
+ /*
134
+ * From the inline threshold: the sidebar column, 240 px, sticky at the
135
+ * viewport top with its own scroll (never the page's), ruled from the
136
+ * page by a --role-hairline. The stable gutter keeps its width whether
137
+ * or not it scrolls.
138
+ */
139
+ @media (min-width: 1024px) {
140
+ .withSidebar {
141
+ grid-template-columns: var(--size-px-13) minmax(0, 1fr);
142
+ }
143
+
144
+ .sidebar {
145
+ position: sticky;
146
+ inset-block-start: 0;
147
+ align-self: start;
148
+ display: block;
149
+ box-sizing: border-box;
150
+ max-block-size: 100dvh;
151
+ padding-block: var(--size-px-7-5);
152
+ padding-inline-end: var(--size-px-3);
153
+ border-inline-end: var(--border-size-1) solid var(--role-hairline);
154
+ overflow-y: auto;
155
+ overscroll-behavior: contain;
156
+ scrollbar-gutter: stable;
157
+ }
158
+
159
+ /*
160
+ * The current page is the column's initial scroll target where
161
+ * supported, so the column opens scrolled to it before first paint (the
162
+ * Sidebar Navigation's layout effect does it elsewhere, after
163
+ * hydration). Scoped to the column, the scroller it names: outside a
164
+ * scroll container `nearest` would scroll the page. No snap type is set,
165
+ * so the alignment is inert otherwise.
166
+ */
167
+ .sidebar [aria-current='page'] {
168
+ scroll-initial-target: nearest;
169
+ scroll-snap-align: center;
170
+ }
171
+ }
172
+
173
+ /* From --xl-n-above: the contents column, 240 px, sticky, scrolling on its own when long. */
174
+ @media (min-width: 1440px) {
175
+ .withToc {
176
+ grid-template-columns: minmax(0, 1fr) var(--size-px-13);
177
+ }
178
+
179
+ .withSidebar.withToc {
180
+ grid-template-columns: var(--size-px-13) minmax(0, 1fr) var(--size-px-13);
181
+ }
182
+
183
+ .toc {
184
+ position: sticky;
185
+ inset-block-start: 0;
186
+ align-self: start;
187
+ display: block;
188
+ box-sizing: border-box;
189
+ max-block-size: 100dvh;
190
+ padding-block: var(--size-px-7-5);
191
+ overflow-y: auto;
192
+ overscroll-behavior: contain;
193
+ scrollbar-gutter: stable;
194
+ }
195
+
196
+ .toc:empty {
197
+ display: none;
198
+ }
199
+
200
+ /* A `toc` with no items: no column. */
201
+ .withToc:has(> .toc:empty) {
202
+ grid-template-columns: minmax(0, 1fr);
203
+ }
204
+
205
+ .withSidebar.withToc:has(> .toc:empty) {
206
+ grid-template-columns: var(--size-px-13) minmax(0, 1fr);
207
+ }
208
+
209
+ .tocBar {
210
+ display: none;
211
+ }
212
+
213
+ .withToc .main [id] {
214
+ scroll-margin-block-start: 0;
215
+ }
216
+ }
217
+ }
218
+
219
+ @layer states {
220
+ .skipLink:not(:focus) {
221
+ inline-size: 1px;
222
+ block-size: 1px;
223
+ min-block-size: 0;
224
+ padding: 0;
225
+ border-width: 0;
226
+ overflow: hidden;
227
+ clip-path: inset(50%);
228
+ }
229
+
230
+ .skipLink:focus-visible {
231
+ outline: var(--border-size-2) solid var(--primary12);
232
+ outline-offset: var(--border-size-2);
233
+ }
234
+
235
+ /* A DocsLayoutDrawer outside a Navigation Bar: its menu Button goes where the sidebar column comes in. */
236
+ @media (min-width: 1024px) {
237
+ .drawerTrigger {
238
+ display: none;
239
+ }
240
+ }
241
+ }
242
+
243
+ @layer print {
244
+ @media print {
245
+ /* The page prints alone (§7.7): no skip link, columns or contents. */
246
+ .skipLink,
247
+ .sidebar,
248
+ .toc,
249
+ .tocBar,
250
+ .drawerTrigger {
251
+ display: none;
252
+ }
253
+
254
+ .frame {
255
+ display: block;
256
+ max-inline-size: none;
257
+ padding-inline: 0;
258
+ overflow: visible;
259
+ }
260
+
261
+ .main {
262
+ padding-block: 0;
263
+ padding-inline-end: 0;
264
+ }
265
+ }
266
+ }
@@ -0,0 +1,2 @@
1
+ export * from './DocsLayout';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/page/docs-layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './DocsLayout';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page/docs-layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
@@ -6,7 +6,7 @@ import type { SitemapSection } from '../../utils/navigation';
6
6
  /** The shared navigation data (utils/navigation), re-exported where it first lived. */
7
7
  export type { SitemapLink, SitemapSection } from '../../utils/navigation';
8
8
  export declare const footer: (props?: ({
9
- kind?: "ruled" | "guide" | "minimal" | null | undefined;
9
+ kind?: "minimal" | "ruled" | "guide" | null | undefined;
10
10
  signoff?: boolean | null | undefined;
11
11
  newsletterColumn?: boolean | null | undefined;
12
12
  collapsed?: boolean | null | undefined;
@@ -32,7 +32,7 @@ import styles from './footer.module.css';
32
32
  * on that Ground. Block actions are §9.2 Buttons, whose `solid` class
33
33
  * aliases the scope's action scale.
34
34
  * - States: the Accordion's `data-open`, `data-panel-open` and clip reveal
35
- * live in its module; `aria-current="page"` → the --ds-stroke-3
35
+ * live in its module; `aria-current="page"` → the --border-size-2-25
36
36
  * start-edge bar and weight 700; `:hover` [D181] → sitemap, group,
37
37
  * cell and back-to-top links are §9.3 list links (Link `kind="nav"`
38
38
  * with `list`) and legal links its `muted` ancestor ink, so Link owns