@beehexa/design-rules 0.0.0-stage → 2611.3.3

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 (290) hide show
  1. package/README.md +56 -2
  2. package/dist/AGENTS.md +24 -0
  3. package/dist/catalog.json +1814 -0
  4. package/dist/docs/public/_redirects +7 -0
  5. package/dist/docs/public/apple-touch-icon.png +0 -0
  6. package/dist/docs/public/brand/logos/app/apple-touch-icon.png +0 -0
  7. package/dist/docs/public/brand/logos/app/avatar-800.png +0 -0
  8. package/dist/docs/public/brand/logos/app/icon-192.png +0 -0
  9. package/dist/docs/public/brand/logos/app/icon-512.png +0 -0
  10. package/dist/docs/public/brand/logos/app/icon-maskable-512.png +0 -0
  11. package/dist/docs/public/brand/logos/archive/d-550/beehexa-horizontal-1-light.svg +1 -0
  12. package/dist/docs/public/brand/logos/archive/d-550/beehexa-horizontal-2-dark.svg +1 -0
  13. package/dist/docs/public/brand/logos/archive/d-550/beehexa-horizontal-3-white.svg +1 -0
  14. package/dist/docs/public/brand/logos/archive/d-550/beehexa-horizontal-4-graphite.svg +1 -0
  15. package/dist/docs/public/brand/logos/archive/d-550/hexasync-horizontal-1-light.svg +1 -0
  16. package/dist/docs/public/brand/logos/archive/d-550/hexasync-horizontal-2-dark.svg +1 -0
  17. package/dist/docs/public/brand/logos/archive/d-550/hexasync-horizontal-3-white.svg +1 -0
  18. package/dist/docs/public/brand/logos/archive/d-550/hexasync-horizontal-4-graphite.svg +1 -0
  19. package/dist/docs/public/brand/logos/archive/d-550/ui/beehexa-d-550-dark.svg +1 -0
  20. package/dist/docs/public/brand/logos/archive/d-550/ui/beehexa-d-550-light.svg +1 -0
  21. package/dist/docs/public/brand/logos/archive/d-550/ui/beehexa-design-d-550-dark.svg +1 -0
  22. package/dist/docs/public/brand/logos/archive/d-550/ui/beehexa-design-d-550-light.svg +1 -0
  23. package/dist/docs/public/brand/logos/archive/d-550/ui/hexasync-d-550-dark.svg +1 -0
  24. package/dist/docs/public/brand/logos/archive/d-550/ui/hexasync-d-550-light.svg +1 -0
  25. package/dist/docs/public/brand/logos/archive/d-550/ui/png/beehexa-design-d-550-dark@3x.png +0 -0
  26. package/dist/docs/public/brand/logos/archive/d-550/ui/png/beehexa-design-d-550-light@3x.png +0 -0
  27. package/dist/docs/public/brand/logos/beehexa-logo.zip +0 -0
  28. package/dist/docs/public/brand/logos/fig/anatomy-en.png +0 -0
  29. package/dist/docs/public/brand/logos/fig/anatomy-vi.png +0 -0
  30. package/dist/docs/public/brand/logos/fig/beehexa-dark-12.png +0 -0
  31. package/dist/docs/public/brand/logos/fig/beehexa-dark-14.png +0 -0
  32. package/dist/docs/public/brand/logos/fig/beehexa-dark-28.png +0 -0
  33. package/dist/docs/public/brand/logos/fig/beehexa-dark-32.png +0 -0
  34. package/dist/docs/public/brand/logos/fig/beehexa-dark-56.png +0 -0
  35. package/dist/docs/public/brand/logos/fig/beehexa-graphite-28.png +0 -0
  36. package/dist/docs/public/brand/logos/fig/beehexa-graphite-32.png +0 -0
  37. package/dist/docs/public/brand/logos/fig/beehexa-light-14.png +0 -0
  38. package/dist/docs/public/brand/logos/fig/beehexa-light-21.png +0 -0
  39. package/dist/docs/public/brand/logos/fig/beehexa-light-22.png +0 -0
  40. package/dist/docs/public/brand/logos/fig/beehexa-light-24.png +0 -0
  41. package/dist/docs/public/brand/logos/fig/beehexa-light-28.png +0 -0
  42. package/dist/docs/public/brand/logos/fig/beehexa-light-32.png +0 -0
  43. package/dist/docs/public/brand/logos/fig/beehexa-light-36-7c3aed7c3aed.png +0 -0
  44. package/dist/docs/public/brand/logos/fig/beehexa-light-36-swap.png +0 -0
  45. package/dist/docs/public/brand/logos/fig/beehexa-light-36.png +0 -0
  46. package/dist/docs/public/brand/logos/fig/beehexa-light-56.png +0 -0
  47. package/dist/docs/public/brand/logos/fig/beehexa-white-20.png +0 -0
  48. package/dist/docs/public/brand/logos/fig/beehexa-white-32.png +0 -0
  49. package/dist/docs/public/brand/logos/fig/clearspace.png +0 -0
  50. package/dist/docs/public/brand/logos/fig/construction-en.png +0 -0
  51. package/dist/docs/public/brand/logos/fig/construction-vi.png +0 -0
  52. package/dist/docs/public/brand/logos/fig/container-en.png +0 -0
  53. package/dist/docs/public/brand/logos/fig/container-vi.png +0 -0
  54. package/dist/docs/public/brand/logos/fig/hexasync-dark-20.png +0 -0
  55. package/dist/docs/public/brand/logos/fig/hexasync-dark-28.png +0 -0
  56. package/dist/docs/public/brand/logos/fig/hexasync-dark-48.png +0 -0
  57. package/dist/docs/public/brand/logos/fig/hexasync-light-19.png +0 -0
  58. package/dist/docs/public/brand/logos/fig/hexasync-light-28.png +0 -0
  59. package/dist/docs/public/brand/logos/fig/hexasync-light-48.png +0 -0
  60. package/dist/docs/public/brand/logos/fig/icon-graphite-14.png +0 -0
  61. package/dist/docs/public/brand/logos/fig/icon-graphite-16.png +0 -0
  62. package/dist/docs/public/brand/logos/fig/icon-light-16.png +0 -0
  63. package/dist/docs/public/brand/logos/fig/icon-light-24.png +0 -0
  64. package/dist/docs/public/brand/logos/fig/icon-light-48.png +0 -0
  65. package/dist/docs/public/brand/logos/fig/icon-light-92.png +0 -0
  66. package/dist/docs/public/brand/logos/fig/meaning-bee-en.png +0 -0
  67. package/dist/docs/public/brand/logos/fig/meaning-bee-vi.png +0 -0
  68. package/dist/docs/public/brand/logos/fig/meaning-outline-en.png +0 -0
  69. package/dist/docs/public/brand/logos/fig/meaning-outline-vi.png +0 -0
  70. package/dist/docs/public/brand/logos/fig/meaning-stack-en.png +0 -0
  71. package/dist/docs/public/brand/logos/fig/meaning-stack-vi.png +0 -0
  72. package/dist/docs/public/brand/logos/fig/misuse-serif.png +0 -0
  73. package/dist/docs/public/brand/logos/icon/beehexa-icon-graphite.svg +1 -0
  74. package/dist/docs/public/brand/logos/icon/beehexa-icon-white.svg +1 -0
  75. package/dist/docs/public/brand/logos/icon/beehexa-icon-yellow.svg +1 -0
  76. package/dist/docs/public/brand/logos/lockups/beehexa-horizontal-1-light.svg +1 -0
  77. package/dist/docs/public/brand/logos/lockups/beehexa-horizontal-2-dark.svg +1 -0
  78. package/dist/docs/public/brand/logos/lockups/beehexa-horizontal-3-white.svg +1 -0
  79. package/dist/docs/public/brand/logos/lockups/beehexa-horizontal-4-graphite.svg +1 -0
  80. package/dist/docs/public/brand/logos/lockups/hexasync-horizontal-1-light.svg +1 -0
  81. package/dist/docs/public/brand/logos/lockups/hexasync-horizontal-2-dark.svg +1 -0
  82. package/dist/docs/public/brand/logos/lockups/hexasync-horizontal-3-white.svg +1 -0
  83. package/dist/docs/public/brand/logos/lockups/hexasync-horizontal-4-graphite.svg +1 -0
  84. package/dist/docs/public/brand/logos/ui/beehexa-dark.svg +1 -0
  85. package/dist/docs/public/brand/logos/ui/beehexa-design-dark.svg +1 -0
  86. package/dist/docs/public/brand/logos/ui/beehexa-design-light.svg +1 -0
  87. package/dist/docs/public/brand/logos/ui/beehexa-icon-yellow.svg +1 -0
  88. package/dist/docs/public/brand/logos/ui/beehexa-light.svg +1 -0
  89. package/dist/docs/public/brand/logos/ui/hexasync-dark.svg +1 -0
  90. package/dist/docs/public/brand/logos/ui/hexasync-light.svg +1 -0
  91. package/dist/docs/public/brand/logos/ui/png/beehexa-design-dark@3x.png +0 -0
  92. package/dist/docs/public/brand/logos/ui/png/beehexa-design-light@3x.png +0 -0
  93. package/dist/docs/public/favicon.ico +0 -0
  94. package/dist/docs/public/favicon.svg +1 -0
  95. package/dist/docs/public/fonts/LICENSE-Inter.txt +93 -0
  96. package/dist/docs/public/fonts/LICENSE-JetBrainsMono.txt +93 -0
  97. package/dist/docs/public/fonts/inter-latin-ext-opsz-wght-italic.woff2 +0 -0
  98. package/dist/docs/public/fonts/inter-latin-ext-opsz-wght-normal.woff2 +0 -0
  99. package/dist/docs/public/fonts/inter-latin-opsz-wght-italic.woff2 +0 -0
  100. package/dist/docs/public/fonts/inter-latin-opsz-wght-normal.woff2 +0 -0
  101. package/dist/docs/public/fonts/inter-vietnamese-opsz-wght-italic.woff2 +0 -0
  102. package/dist/docs/public/fonts/inter-vietnamese-opsz-wght-normal.woff2 +0 -0
  103. package/dist/docs/public/fonts/jetbrains-mono-latin-ext-wght-normal.woff2 +0 -0
  104. package/dist/docs/public/fonts/jetbrains-mono-latin-wght-normal.woff2 +0 -0
  105. package/dist/docs/public/fonts/jetbrains-mono-vietnamese-wght-normal.woff2 +0 -0
  106. package/dist/docs/public/icon-192.png +0 -0
  107. package/dist/docs/public/icon-512.png +0 -0
  108. package/dist/docs/public/icon-maskable-512.png +0 -0
  109. package/dist/docs/public/robots.txt +4 -0
  110. package/dist/docs/public/site.webmanifest +21 -0
  111. package/dist/docs/scripts/color-pairs.mjs +46 -0
  112. package/dist/docs/scripts/contrast-exceptions.mjs +6 -0
  113. package/dist/docs/scripts/token-utils.d.mts +26 -0
  114. package/dist/docs/scripts/token-utils.mjs +114 -0
  115. package/dist/docs/src/brand/Beehexa-brandguide-full-mar12.pdf +0 -0
  116. package/dist/docs/src/brand/color+typoDirections.pdf +0 -0
  117. package/dist/docs/src/brand/structure-proposal.md +227 -0
  118. package/dist/docs/src/components/ChildPages.astro +25 -0
  119. package/dist/docs/src/components/CodeExample.astro +18 -0
  120. package/dist/docs/src/components/ColorDemo.astro +794 -0
  121. package/dist/docs/src/components/ColorExample.astro +32 -0
  122. package/dist/docs/src/components/ColorSwatch.astro +20 -0
  123. package/dist/docs/src/components/ComponentTabs.astro +21 -0
  124. package/dist/docs/src/components/DocsFooter.astro +25 -0
  125. package/dist/docs/src/components/HelpOptions.astro +20 -0
  126. package/dist/docs/src/components/IconBrowser.astro +257 -0
  127. package/dist/docs/src/components/IconDemo.astro +185 -0
  128. package/dist/docs/src/components/InDevelopment.astro +29 -0
  129. package/dist/docs/src/components/LayoutDemo.astro +384 -0
  130. package/dist/docs/src/components/Logo.astro +25 -0
  131. package/dist/docs/src/components/PhaseTable.astro +22 -0
  132. package/dist/docs/src/components/RoleGuides.astro +48 -0
  133. package/dist/docs/src/components/ShapeDemo.astro +239 -0
  134. package/dist/docs/src/components/ShapePin.astro +22 -0
  135. package/dist/docs/src/components/Sidebar.astro +206 -0
  136. package/dist/docs/src/components/SiteHeader.astro +211 -0
  137. package/dist/docs/src/components/SpacingDemo.astro +172 -0
  138. package/dist/docs/src/components/StatusBadge.astro +22 -0
  139. package/dist/docs/src/components/SystemAreas.astro +29 -0
  140. package/dist/docs/src/components/TableOfContents.astro +47 -0
  141. package/dist/docs/src/components/TokenTable.astro +40 -0
  142. package/dist/docs/src/components/TypeDemo.astro +249 -0
  143. package/dist/docs/src/components/logos/Fig.astro +28 -0
  144. package/dist/docs/src/components/logos/LogoAnatomy.astro +101 -0
  145. package/dist/docs/src/components/logos/LogoClearSpace.astro +81 -0
  146. package/dist/docs/src/components/logos/LogoColourVersions.astro +45 -0
  147. package/dist/docs/src/components/logos/LogoConstruction.astro +84 -0
  148. package/dist/docs/src/components/logos/LogoContainer.astro +84 -0
  149. package/dist/docs/src/components/logos/LogoHero.astro +42 -0
  150. package/dist/docs/src/components/logos/LogoInUse.astro +197 -0
  151. package/dist/docs/src/components/logos/LogoMeanings.astro +75 -0
  152. package/dist/docs/src/components/logos/LogoMinSize.astro +55 -0
  153. package/dist/docs/src/components/logos/LogoMistakes.astro +109 -0
  154. package/dist/docs/src/components/logos/LogoMisuse.astro +96 -0
  155. package/dist/docs/src/components/logos/LogoPair.astro +26 -0
  156. package/dist/docs/src/components/logos/LogoSvg.astro +68 -0
  157. package/dist/docs/src/content/components/button/accessibility.mdx +18 -0
  158. package/dist/docs/src/content/components/button/changelog.mdx +6 -0
  159. package/dist/docs/src/content/components/button/code.mdx +27 -0
  160. package/dist/docs/src/content/components/button/examples.mdx +21 -0
  161. package/dist/docs/src/content/components/button/meta.json +5 -0
  162. package/dist/docs/src/content/components/button/usage.mdx +18 -0
  163. package/dist/docs/src/content/foundations/guidelines/accessibility.mdx +19 -0
  164. package/dist/docs/src/content/foundations/guidelines/content.mdx +25 -0
  165. package/dist/docs/src/content/foundations/index.mdx +9 -0
  166. package/dist/docs/src/content/foundations/styles/border.mdx +89 -0
  167. package/dist/docs/src/content/foundations/styles/color/accessibility.mdx +32 -0
  168. package/dist/docs/src/content/foundations/styles/color/dark-mode.mdx +22 -0
  169. package/dist/docs/src/content/foundations/styles/color/index.mdx +65 -0
  170. package/dist/docs/src/content/foundations/styles/color/palette.mdx +57 -0
  171. package/dist/docs/src/content/foundations/styles/color/tokens.mdx +55 -0
  172. package/dist/docs/src/content/foundations/styles/color/usage.mdx +111 -0
  173. package/dist/docs/src/content/foundations/styles/data-visualization.mdx +11 -0
  174. package/dist/docs/src/content/foundations/styles/elevation.mdx +12 -0
  175. package/dist/docs/src/content/foundations/styles/icons/accessibility.mdx +72 -0
  176. package/dist/docs/src/content/foundations/styles/icons/code.mdx +171 -0
  177. package/dist/docs/src/content/foundations/styles/icons/index.mdx +62 -0
  178. package/dist/docs/src/content/foundations/styles/icons/library.mdx +19 -0
  179. package/dist/docs/src/content/foundations/styles/icons/usage.mdx +100 -0
  180. package/dist/docs/src/content/foundations/styles/illustration.mdx +9 -0
  181. package/dist/docs/src/content/foundations/styles/interaction-states.mdx +49 -0
  182. package/dist/docs/src/content/foundations/styles/layout/app-frame.mdx +81 -0
  183. package/dist/docs/src/content/foundations/styles/layout/breakpoints.mdx +56 -0
  184. package/dist/docs/src/content/foundations/styles/layout/grid.mdx +87 -0
  185. package/dist/docs/src/content/foundations/styles/layout/index.mdx +24 -0
  186. package/dist/docs/src/content/foundations/styles/layout/overlays.mdx +45 -0
  187. package/dist/docs/src/content/foundations/styles/layout/page-widths.mdx +38 -0
  188. package/dist/docs/src/content/foundations/styles/logos/downloads-and-terms.mdx +65 -0
  189. package/dist/docs/src/content/foundations/styles/logos/index.mdx +64 -0
  190. package/dist/docs/src/content/foundations/styles/logos/placement-and-containers.mdx +96 -0
  191. package/dist/docs/src/content/foundations/styles/logos/product-logos.mdx +56 -0
  192. package/dist/docs/src/content/foundations/styles/logos/using-the-logo.mdx +70 -0
  193. package/dist/docs/src/content/foundations/styles/motion.mdx +11 -0
  194. package/dist/docs/src/content/foundations/styles/opacity.mdx +9 -0
  195. package/dist/docs/src/content/foundations/styles/radius.mdx +98 -0
  196. package/dist/docs/src/content/foundations/styles/size-and-density.mdx +41 -0
  197. package/dist/docs/src/content/foundations/styles/spacing.mdx +70 -0
  198. package/dist/docs/src/content/foundations/styles/typography/code.mdx +53 -0
  199. package/dist/docs/src/content/foundations/styles/typography/index.mdx +58 -0
  200. package/dist/docs/src/content/foundations/styles/typography/usage.mdx +144 -0
  201. package/dist/docs/src/content/foundations/styles/typography/vietnamese.mdx +46 -0
  202. package/dist/docs/src/content/foundations/styles/z-index.mdx +9 -0
  203. package/dist/docs/src/content/foundations/tokens/all-tokens.mdx +36 -0
  204. package/dist/docs/src/content/foundations/tokens/index.mdx +27 -0
  205. package/dist/docs/src/content/get-started/content.mdx +14 -0
  206. package/dist/docs/src/content/get-started/design.mdx +30 -0
  207. package/dist/docs/src/content/get-started/develop.mdx +59 -0
  208. package/dist/docs/src/content/get-started/get-help.mdx +19 -0
  209. package/dist/docs/src/content/get-started/index.mdx +50 -0
  210. package/dist/docs/src/content/news/2026-10-16-site-structure.md +15 -0
  211. package/dist/docs/src/content/news/2026-10-20-docs-site.md +13 -0
  212. package/dist/docs/src/content/release-phases/index.mdx +12 -0
  213. package/dist/docs/src/content/tools/ai-agents.mdx +49 -0
  214. package/dist/docs/src/content/tools/ant-design-vue-theme.mdx +138 -0
  215. package/dist/docs/src/content/tools/eslint.mdx +15 -0
  216. package/dist/docs/src/content/tools/index.mdx +7 -0
  217. package/dist/docs/src/content/tools/stylelint.mdx +19 -0
  218. package/dist/docs/src/content-vi/foundations/styles/border.mdx +89 -0
  219. package/dist/docs/src/content-vi/foundations/styles/color/accessibility.mdx +32 -0
  220. package/dist/docs/src/content-vi/foundations/styles/color/dark-mode.mdx +22 -0
  221. package/dist/docs/src/content-vi/foundations/styles/color/index.mdx +65 -0
  222. package/dist/docs/src/content-vi/foundations/styles/color/palette.mdx +57 -0
  223. package/dist/docs/src/content-vi/foundations/styles/color/tokens.mdx +55 -0
  224. package/dist/docs/src/content-vi/foundations/styles/color/usage.mdx +111 -0
  225. package/dist/docs/src/content-vi/foundations/styles/data-visualization.mdx +11 -0
  226. package/dist/docs/src/content-vi/foundations/styles/icons/accessibility.mdx +72 -0
  227. package/dist/docs/src/content-vi/foundations/styles/icons/code.mdx +170 -0
  228. package/dist/docs/src/content-vi/foundations/styles/icons/index.mdx +62 -0
  229. package/dist/docs/src/content-vi/foundations/styles/icons/library.mdx +19 -0
  230. package/dist/docs/src/content-vi/foundations/styles/icons/usage.mdx +100 -0
  231. package/dist/docs/src/content-vi/foundations/styles/illustration.mdx +9 -0
  232. package/dist/docs/src/content-vi/foundations/styles/interaction-states.mdx +49 -0
  233. package/dist/docs/src/content-vi/foundations/styles/layout/app-frame.mdx +77 -0
  234. package/dist/docs/src/content-vi/foundations/styles/layout/breakpoints.mdx +56 -0
  235. package/dist/docs/src/content-vi/foundations/styles/layout/grid.mdx +87 -0
  236. package/dist/docs/src/content-vi/foundations/styles/layout/index.mdx +24 -0
  237. package/dist/docs/src/content-vi/foundations/styles/layout/page-widths.mdx +34 -0
  238. package/dist/docs/src/content-vi/foundations/styles/logos/downloads-and-terms.mdx +65 -0
  239. package/dist/docs/src/content-vi/foundations/styles/logos/index.mdx +64 -0
  240. package/dist/docs/src/content-vi/foundations/styles/logos/placement-and-containers.mdx +96 -0
  241. package/dist/docs/src/content-vi/foundations/styles/logos/product-logos.mdx +56 -0
  242. package/dist/docs/src/content-vi/foundations/styles/logos/using-the-logo.mdx +70 -0
  243. package/dist/docs/src/content-vi/foundations/styles/opacity.mdx +9 -0
  244. package/dist/docs/src/content-vi/foundations/styles/radius.mdx +98 -0
  245. package/dist/docs/src/content-vi/foundations/styles/size-and-density.mdx +41 -0
  246. package/dist/docs/src/content-vi/foundations/styles/spacing.mdx +70 -0
  247. package/dist/docs/src/content-vi/foundations/styles/typography/code.mdx +53 -0
  248. package/dist/docs/src/content-vi/foundations/styles/typography/index.mdx +58 -0
  249. package/dist/docs/src/content-vi/foundations/styles/typography/usage.mdx +144 -0
  250. package/dist/docs/src/content-vi/foundations/styles/typography/vietnamese.mdx +46 -0
  251. package/dist/docs/src/content-vi/foundations/styles/z-index.mdx +9 -0
  252. package/dist/docs/src/content.config.ts +68 -0
  253. package/dist/docs/src/lib/brand.ts +57 -0
  254. package/dist/docs/src/lib/contrast.ts +34 -0
  255. package/dist/docs/src/lib/i18n.ts +152 -0
  256. package/dist/docs/src/lib/icons.ts +46 -0
  257. package/dist/docs/src/lib/logo-geometry.ts +30 -0
  258. package/dist/docs/src/lib/lucide-categories.json +1 -0
  259. package/dist/docs/src/lib/lucide-data.ts +40 -0
  260. package/dist/docs/src/lib/navigation.ts +222 -0
  261. package/dist/docs/src/lib/release-phases.ts +10 -0
  262. package/dist/docs/src/lib/routes.ts +40 -0
  263. package/dist/docs/src/lib/token-descriptions-vi.ts +40 -0
  264. package/dist/docs/src/lib/tokens.ts +67 -0
  265. package/dist/docs/src/lib/tri-grid.ts +28 -0
  266. package/dist/docs/src/styles/chrome.css +122 -0
  267. package/dist/docs/src/styles/color.css +270 -0
  268. package/dist/docs/src/styles/docs.css +323 -0
  269. package/dist/docs/src/styles/global.css +66 -0
  270. package/dist/docs/src/styles/icons.css +135 -0
  271. package/dist/docs/src/styles/layout.css +165 -0
  272. package/dist/docs/src/styles/logos.css +236 -0
  273. package/dist/docs/src/styles/shapes.css +139 -0
  274. package/dist/docs/src/styles/tokens.css +461 -0
  275. package/dist/docs/src/styles/tokens.js +425 -0
  276. package/dist/docs/src/styles/typography.css +91 -0
  277. package/dist/docs/tokens/border.json +26 -0
  278. package/dist/docs/tokens/breakpoints.json +8 -0
  279. package/dist/docs/tokens/color.json +1350 -0
  280. package/dist/docs/tokens/elevation.json +26 -0
  281. package/dist/docs/tokens/layout.json +29 -0
  282. package/dist/docs/tokens/motion.json +12 -0
  283. package/dist/docs/tokens/radius.json +44 -0
  284. package/dist/docs/tokens/size.json +13 -0
  285. package/dist/docs/tokens/spacing.json +18 -0
  286. package/dist/docs/tokens/states.json +12 -0
  287. package/dist/docs/tokens/typography.json +220 -0
  288. package/dist/index.d.ts +19 -0
  289. package/dist/index.js +1823 -0
  290. package/package.json +36 -4
@@ -0,0 +1 @@
1
+ {"version":"1.62.0","source":"categories/*.json and icons/*.json of github.com/lucide-icons/lucide at tag 1.62.0 (ISC)","categories":[{"id":"accessibility","title":"Accessibility","icons":["accessibility","ad","baby","badge-info","badge-question-mark","circle-question-mark","closed-caption","contrast","ear","ear-off","eclipse","eye","eye-closed","eye-dashed","eye-off","glasses","hand","info","life-buoy","moon","moon-star","mouth","mouth-off","person-standing","scan-eye","scan-search","speech","sun","sun-dim","sun-medium","sun-moon","transgender","zoom-in","zoom-out"]},{"id":"account","title":"Accounts & access","icons":["activity","at-sign","award","badge","badge-alert","badge-info","ban","belarusian-ruble","bell","bell-check","bell-dot","book-user","bookmark","bookmark-check","bookmark-minus","bookmark-off","bookmark-plus","bookmark-x","briefcase-plus","building","building-complex","building-complex-plus","cake","circle-user","circle-user-round","cog","contact","contact-round","cookie","credit-card","credit-card-check","credit-card-minus","credit-card-plus","credit-card-x","face-slightly-frowning","face-slightly-smiling","file-user","fingerprint-pattern","flag","flag-off","folder-user","folder-users","gift","hand-coins","handshake","hat-glasses","heart-handshake","heart-minus","heart-plus","id-card","id-card-lanyard","inbox","key","key-round","key-square","link","link-2","log-in","log-out","mail","mail-clock","mail-dot","map-pin","map-pin-check","map-pin-check-inside","map-pin-house","map-pin-minus","map-pin-minus-inside","map-pin-pen","map-pin-plus","map-pin-plus-inside","map-pin-search","map-pin-x","map-pin-x-inside","map-pinned","menu","message-circle-check","message-circle-dashed-check","message-circle-x","message-square-check","notebook-tabs","pin","rotate-ccw-key","scan-eye","scan-face","scan-qr-code","settings","settings-2","share","share-2","shield","shield-alert","shield-ban","shield-check","shield-cog","shield-cog-corner","shield-ellipsis","shield-half","shield-house","shield-keyhole","shield-minus","shield-off","shield-plus","shield-question-mark","shield-user","shield-x","sliders-horizontal","sliders-vertical","smartphone-user-round","square-user","square-user-round","star","star-check","star-minus","star-plus","star-x","tag","tag-plus","tag-x","tags","thumbs-down","thumbs-up","ticket","tickets","toggle-left","toggle-right","user","user-check","user-cog","user-group","user-key","user-lock","user-minus","user-pen","user-plus","user-round","user-round-arrow-left","user-round-check","user-round-cog","user-round-group","user-round-key","user-round-minus","user-round-pen","user-round-plus","user-round-search","user-round-star","user-round-x","user-search","user-shield","user-star","user-x","users","users-collaboration","users-round","users-round-collaboration","venetian-mask","vibrate","vibrate-off","wallet","wallet-cards","wallet-minimal","wallpaper","waypoints","webhook","webhook-off","wrench","wrench-off"]},{"id":"animals","title":"Animals","icons":["bird","birdhouse","bone","bone-fracture","bug","bug-off","bug-play","cat","dog","egg","feather","fish","fish-off","fish-symbol","origami","panda","paw-print","rabbit","rat","shell","shrimp","shrimp-off","snail","squirrel","turtle","worm"]},{"id":"arrows","title":"Arrows","icons":["arrow-big-down","arrow-big-down-dash","arrow-big-left","arrow-big-left-dash","arrow-big-right","arrow-big-right-dash","arrow-big-up","arrow-big-up-dash","arrow-down","arrow-down-0-1","arrow-down-1-0","arrow-down-a-z","arrow-down-from-line","arrow-down-left","arrow-down-narrow-wide","arrow-down-right","arrow-down-to-dot","arrow-down-to-line","arrow-down-up","arrow-down-wide-narrow","arrow-down-z-a","arrow-left","arrow-left-from-line","arrow-left-right","arrow-left-to-line","arrow-right","arrow-right-from-line","arrow-right-left","arrow-right-to-line","arrow-up","arrow-up-0-1","arrow-up-1-0","arrow-up-a-z","arrow-up-down","arrow-up-from-dot","arrow-up-from-line","arrow-up-left","arrow-up-narrow-wide","arrow-up-right","arrow-up-to-line","arrow-up-wide-narrow","arrow-up-z-a","arrows-up-from-line","calendar-chevrons-left","calendar-chevrons-right","calendar-sync","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down","chevrons-down-up","chevrons-left","chevrons-left-right","chevrons-right","chevrons-right-left","chevrons-up","chevrons-up-down","circle-arrow-down","circle-arrow-left","circle-arrow-out-down-left","circle-arrow-out-down-right","circle-arrow-out-up-left","circle-arrow-out-up-right","circle-arrow-right","circle-arrow-up","circle-chevron-down","circle-chevron-left","circle-chevron-right","circle-chevron-up","circle-chevrons-down","circle-chevrons-left","circle-chevrons-right","circle-chevrons-up","circle-fading-arrow-up","clipboard-copy","clipboard-paste","clock-arrow-right","cloud-backup","cloud-download","cloud-sync","cloud-upload","corner-down-left","corner-down-right","corner-left-down","corner-left-up","corner-right-down","corner-right-up","corner-up-left","corner-up-right","database-backup","decimals-arrow-left","decimals-arrow-right","delete","download","expand","external-link","fast-forward","file-down","file-input","file-output","file-up","fold-horizontal","fold-vertical","folder-down","folder-input","folder-output","folder-sync","folder-up","git-compare-arrows","git-pull-request-arrow","git-pull-request-create-arrow","hard-drive-download","hard-drive-upload","import","iteration-ccw","iteration-cw","lasso-select","layers-arrow-up","list-chevrons-down-up","list-chevrons-up-down","log-in","log-out","maximize-2","merge","milestone","minimize-2","mouse-pointer","mouse-pointer-2","mouse-pointer-2-off","mouse-pointer-ban","mouse-pointer-click","move","move-diagonal","move-diagonal-2","move-down","move-down-left","move-down-right","move-horizontal","move-left","move-right","move-up","move-up-left","move-up-right","move-vertical","panel-bottom-close","panel-bottom-open","panel-left-close","panel-left-open","panel-right-close","panel-right-open","panel-top-close","panel-top-open","phone-forwarded","phone-incoming","phone-outgoing","play","redo","redo-2","redo-dot","refresh-ccw","refresh-ccw-dot","refresh-cw","refresh-cw-off","repeat","repeat-2","repeat-off","rewind","rotate-ccw","rotate-ccw-clock","rotate-ccw-square","rotate-cw","rotate-cw-clock","rotate-cw-square","separator-horizontal","separator-vertical","shrink","shuffle","signpost","signpost-big","skip-back","skip-forward","spline-pointer","split","square-arrow-down","square-arrow-down-left","square-arrow-down-right","square-arrow-left","square-arrow-out-down-left","square-arrow-out-down-right","square-arrow-out-up-left","square-arrow-out-up-right","square-arrow-right","square-arrow-right-enter","square-arrow-right-exit","square-arrow-up","square-arrow-up-left","square-arrow-up-right","square-chevron-down","square-chevron-left","square-chevron-right","square-chevron-up","square-dashed-mouse-pointer","square-mouse-pointer","square-play","step-back","step-forward","sunrise","sunset","text-wrap","trending-down","trending-up","trending-up-down","undo","undo-2","undo-dot","unfold-horizontal","unfold-vertical","upload","user-round-arrow-left","wind-arrow-up"]},{"id":"buildings","title":"Buildings","icons":["anvil","brick-wall","bridge","building","building-complex","building-complex-plus","castle","church","dam","dome","factory","fence","graduation-cap","hospital","hotel","house","house-cog","house-heart","house-plug","house-plus","house-wifi","houses","landmark","lighthouse","mosque","school","store","theater","university","utility-pole","warehouse"]},{"id":"charts","title":"Charts","icons":["chart-area","chart-bar","chart-bar-big","chart-bar-decreasing","chart-bar-increasing","chart-bar-stacked","chart-candlestick","chart-column","chart-column-big","chart-column-decreasing","chart-column-increasing","chart-column-stacked","chart-gantt","chart-line","chart-network","chart-no-axes-column","chart-no-axes-column-decreasing","chart-no-axes-column-increasing","chart-no-axes-combined","chart-no-axes-gantt","chart-pie","chart-scatter","chart-spline","equal-approximately-not","folder-kanban","graph-star","kanban","square-chart-gantt","square-dashed-kanban","square-kanban","trending-down","trending-up","trending-up-down"]},{"id":"communication","title":"Communication","icons":["antenna","audio-lines","audio-lines-off","audio-lines-x","audio-waveform","book-user","camera","camera-off","card-sim","cassette-tape","cctv","cctv-off","chevrons-left-right-ellipsis","circle-fading-plus","contact","contact-round","ethernet-port","face-slightly-smiling-plus","hand-fist","handshake","headphone-off","lectern","mail-badge","mail-clock","messages-circle","mic","mic-audio-lines","mic-off","mic-signal","mouth","mouth-off","newspaper","nfc","notebook","notebook-dot","notebook-tabs","phone","phone-call","phone-forwarded","phone-incoming","phone-log","phone-missed","phone-off","phone-outgoing","presentation","projector","radar","screen-share","screen-share-off","send","send-horizontal","smartphone-nfc","speech","spool","spotlight","switch-camera","tv","users-collaboration","users-round-collaboration","video","video-off","videotape","volume","volume-1","volume-2","volume-off","volume-x","webcam","webcam-off"]},{"id":"connectivity","title":"Connectivity","icons":["airplay","battery","battery-charging","battery-full","battery-low","battery-medium","battery-warning","bluetooth","bluetooth-connected","bluetooth-off","bluetooth-searching","book-user","brick-wall-fire","brick-wall-shield","cable","car-battery","card-sim","cassette-tape","cast","cctv","cctv-off","certificate","circle-power","cloud-off","contact","contact-round","globe-off","globe-x","graph-hub","headphone-off","headphones","headset","house-wifi","mic","mic-off","mic-signal","midi-port","monitor","monitor-check","monitor-cloud","monitor-cog","monitor-dot","monitor-down","monitor-off","monitor-pause","monitor-play","monitor-smartphone","monitor-speaker","monitor-stop","monitor-up","monitor-x","phone","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","power","power-off","rectangle-goggles","router","satellite","satellite-dish","screen-share","screen-share-off","send","send-horizontal","shield-house","signal","signal-high","signal-low","signal-medium","signal-zero","smartphone","smartphone-charging","square-power","vibrate","vibrate-off","video","video-off","videotape","voicemail","volume","volume-1","volume-2","volume-off","volume-x","webcam","webcam-off","wifi","wifi-cog","wifi-high","wifi-lock","wifi-low","wifi-off","wifi-pen","wifi-sync","wifi-zero","zap","zap-off"]},{"id":"cursors","title":"Cursors","icons":["circle-plus","hand","hand-grab","lasso","lasso-select","loader","loader-circle","loader-pinwheel","mouse-pointer","mouse-pointer-2","mouse-pointer-2-off","mouse-pointer-ban","mouse-pointer-click","move","move-diagonal","move-diagonal-2","move-horizontal","move-vertical","pen-tool","pencil","pencil-off","pencil-sparkles","plus","pointer","pointer-off","sparkles","spline-pointer","square-dashed-mouse-pointer","square-dashed-text","square-mouse-pointer","stamp","text-cursor","wand","wand-sparkles"]},{"id":"design","title":"Design","icons":["a-arrow-down","a-arrow-up","a-large-small","angle","app-window","app-window-mac","axis-3d","between-horizontal-end","between-horizontal-start","between-vertical-end","between-vertical-start","blend","book-type","bring-to-front","brush","brush-cleaning","chart-no-axes-gantt","columns-2","columns-3","columns-3-cog","columns-4","component","contrast","crop","cylinder","database-backup","decimals-arrow-left","decimals-arrow-right","diameter","dock","drafting-compass","eclipse","eye","eye-closed","eye-dashed","eye-off","file-axis-3d","file-box","folder-kanban","frame","fullscreen","gallery-horizontal","gallery-horizontal-end","gallery-thumbnails","gallery-vertical","gallery-vertical-end","gap-horizontal","gap-vertical","grid-2x2","grid-3x2","grid-3x3","hand-grab","handle-bottom-right","heart-x","highlighter","iteration-ccw","iteration-cw","kanban","land-plot","lasso","lasso-select","layer-arrow-down","layer-arrow-up","layers","layers-2","layers-arrow-down","layers-arrow-up","layers-minus","layers-plus","layout-arrow-down","layout-arrow-right","layout-dashboard","layout-freeform","layout-grid","layout-grid-circles","layout-list","layout-panel-left","line-squiggle","line-style","loader","loader-pinwheel","magnet","maximize","maximize-2","minimize","minimize-2","mop-sparkles","move-3d","notebook","origami","paint-bucket","paint-roller","paintbrush","paintbrush-vertical","palette","panel-top","panels-top-left","paperclip","pen","pen-line","pen-off","pen-tool","pencil","pencil-line","pencil-off","pencil-ruler","pencil-sparkles","pipette","presentation","proportions","radius","ratio","rectangle-horizontal","rectangle-vertical","rotate-3d","rotate-ccw","rotate-ccw-square","rotate-cw","rotate-cw-square","rows-2","rows-3","rows-4","ruler","ruler-dimension-line","scale-3d","scaling","scan-box","scan-square","scissors","scissors-line-dashed","send-to-back","slice","spline","spline-pointer","spray-can","square-bottom-dashed-scissors","square-centerline-dashed-horizontal","square-centerline-dashed-vertical","square-chart-gantt","square-dashed","square-dashed-kanban","square-dashed-plus","square-dashed-top-solid","square-dashed-x","square-dashed-x-corner","square-dimensions","square-kanban","square-off","square-round-corner","square-scissors","squares-exclude","squares-intersect","squares-subtract","squares-unite","squircle-dashed","stamp","swatch-book","tablet-smartphone","tangent","torus","triangles-centerline-dashed-horizontal","triangles-centerline-dashed-vertical","vector-polygon","vector-square","view","wand","wand-sparkles","zoom-in","zoom-out"]},{"id":"development","title":"Coding & development","icons":["ampersand","ampersands","app-window","app-window-mac","arrow-big-up","arrow-big-up-dash","arrow-down-to-line","arrow-right-to-line","arrow-up-from-line","asterisk","binary","binoculars","bitcoin","blend","blocks","book","book-alert","book-bookmark","book-check","book-copy","book-dashed","book-down","book-key","book-lock","book-minus","book-open","book-open-check","book-open-text","book-plus","book-search","book-up","book-up-2","bot","bot-message-square","bot-off","box","boxes","braces","brackets","brain-circuit","brain-cog","brain-off","bug","bug-off","bug-play","case-lower","case-upper","chart-no-axes-gantt","chevron-right","circle-arrow-out-up-left","circle-dashed","circle-dashed-check","circle-dot","circle-dot-dashed","circle-ellipsis","circle-fading-arrow-up","circle-plus","circle-slash","circle-slash-2","circle-x","circuit-board","cloud-alert","cloud-check","cloud-cog","code","code-xml","combine","command","component","computer","construction","container","copy-slash","corner-down-right","cpu-ai","database","database-arrow-down","database-arrow-up","database-backup","database-check","database-minus","database-plus","database-search","database-x","database-zap","diff","divide","dock","earth-lock","eclipse","ellipsis","equal","equal-approximately-not","equal-not","file-box","file-braces","file-braces-corner","file-code","file-code-corner","file-diff","file-digit","file-sliders","file-stack","file-terminal","flag-triangle-left","flag-triangle-right","folder-code","folder-dot","folder-kanban","folder-open-dot","folder-root","form","gallery-horizontal","gallery-horizontal-end","gallery-thumbnails","gallery-vertical","gallery-vertical-end","gem","git-branch","git-branch-minus","git-branch-plus","git-commit-horizontal","git-commit-vertical","git-compare","git-compare-arrows","git-fork","git-graph","git-merge","git-merge-conflict","git-pull-request","git-pull-request-arrow","git-pull-request-closed","git-pull-request-create","git-pull-request-create-arrow","git-pull-request-draft","globe-code","globe-lock","graph-hub","graph-star","hard-drive","hard-drive-download","hard-drive-upload","hexagon","kanban","keyboard","keyboard-off","lambda","library","library-big","line-dot-bottom-vertical","line-dot-left-horizontal","line-dot-right-horizontal","line-dot-top-vertical","list-indent-decrease","list-indent-increase","merge","message-circle-code","message-square-code","message-square-diff","milestone","minus","monitor-cloud","monitor-pc","network","omega","option","package","package-2","package-check","package-minus","package-open","package-plus","package-search","package-x","panel-top","panels-top-left","parentheses","percent","pi","playing-card","playing-cards","playing-cards-fan","plug","plug-2","plus","puzzle","qr-code","radical","rectangle-circle","rectangle-ellipsis","refresh-ccw-dot","regex","rocket","router","rss","save-check","scan-square","scratch-blocks","scroll","scroll-text","search-code","server","server-cog","server-crash","server-nas","server-off","server-plus","shell","shield","shield-alert","shield-ban","shield-check","shield-cog","shield-cog-corner","shield-ellipsis","shield-half","shield-house","shield-keyhole","shield-minus","shield-off","shield-plus","shield-question-mark","shield-user","shield-x","signpost","signpost-big","slash","spell-check","spell-check-2","split","square-asterisk","square-bottom-dashed-scissors","square-chart-gantt","square-chevron-right","square-code","square-dashed-bottom","square-dashed-bottom-code","square-dashed-kanban","square-dashed-mouse-pointer","square-dashed-top-solid","square-dashed-x","square-dashed-x-corner","square-dot","square-function","square-kanban","square-library","square-minus","square-mouse-pointer","square-pi","square-plus","square-radical","square-round-corner","square-scissors","square-slash","square-stack","square-terminal","square-text","squircle-dashed","table-properties","tablet-smartphone","telescope","terminal","toggle-left","toggle-right","tombstone","tool-case","toy-brick","triangle-alert","unplug","user-shield","variable","waypoints","webhook","webhook-off","workflow","wrench","wrench-off"]},{"id":"devices","title":"Devices","icons":["alarm-clock","alarm-clock-check","alarm-clock-minus","alarm-clock-off","alarm-clock-plus","alarm-smoke","antenna","battery","battery-charging","battery-full","battery-low","battery-medium","battery-plus","battery-warning","bell-electric","bluetooth","bluetooth-connected","bluetooth-off","bluetooth-searching","boom-box","cable","calculator","camera","camera-off","card-sim","cassette-tape","cast","cctv","cctv-off","chevrons-left-right-ellipsis","computer","cpu","cpu-ai","database","database-arrow-down","database-arrow-up","database-backup","database-check","database-minus","database-plus","database-search","database-x","database-zap","diamond-minus","diamond-plus","disc","disc-2","disc-3","disc-album","drill","drone","drum","earth-lock","eject","ethernet-port","fingerprint-pattern","flashlight","flashlight-off","gamepad","gamepad-2","gamepad-directional","globe-lock","globe-off","globe-x","gpu","hard-drive","hard-drive-download","hard-drive-upload","hd","hdmi-port","headphone-off","headphones","headset","heater","joystick","keyboard","keyboard-music","keyboard-off","laptop","laptop-minimal","laptop-minimal-check","memory-stick","mic","mic-audio-lines","mic-off","mic-signal","mic-vocal","microchip","midi-port","monitor","monitor-check","monitor-cloud","monitor-cog","monitor-dot","monitor-down","monitor-off","monitor-pause","monitor-pc","monitor-play","monitor-smartphone","monitor-speaker","monitor-stop","monitor-up","monitor-x","mouse","mouse-left","mouse-off","mouse-right","nfc","pc-case","phone","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","piano","plug","plug-2","plug-zap","presentation","printer","printer-3d","printer-check","printer-x","projector","proportions","radio","radio-off","radio-receiver","radio-tower","rectangle-goggles","robot-vacuum","router","satellite-dish","scan","scan-barcode","scan-box","scan-eye","scan-face","scan-line","scan-qr-code","scan-text","screen-share","screen-share-off","server","server-cog","server-crash","server-nas","server-off","server-plus","smartphone","smartphone-charging","smartphone-nfc","smartphone-user-round","speaker","spotlight","square-minus","switch-camera","tablet","tablet-smartphone","toilet","touchpad","touchpad-off","tv","tv-minimal","tv-minimal-play","unplug","usb","usb-c-port","vibrate","vibrate-off","video","video-off","videotape","voicemail","wallpaper","washing-machine","webcam","webcam-off","wifi","wifi-cog","wifi-high","wifi-lock","wifi-low","wifi-off","wifi-pen","wifi-sync","wifi-zero","zap","zap-off"]},{"id":"emoji","title":"Emoji","icons":["balloon","biceps-flexed","chess-bishop","chess-king","chess-knight","chess-pawn","chess-queen","chess-rook","face-angry","face-expressionless","face-grinning","face-neutral","face-slightly-frowning","face-slightly-smiling","face-slightly-smiling-plus","hand-fist","hand-helping","hand-metal","heart","heart-crack","heart-handshake","leafy-green","party-popper","ribbon","salad","star","star-check","star-minus","star-plus","star-x","thumbs-down","thumbs-up","zodiac-aquarius","zodiac-aries","zodiac-cancer","zodiac-capricorn","zodiac-gemini","zodiac-leo","zodiac-libra","zodiac-ophiuchus","zodiac-pisces","zodiac-sagittarius","zodiac-scorpio","zodiac-taurus","zodiac-virgo"]},{"id":"files","title":"File icons","icons":["app-window","app-window-mac","archive","archive-restore","archive-x","arrow-big-down-dash","arrow-down-from-line","arrow-down-to-line","arrow-up-from-line","arrow-up-to-line","book-image","braces","brackets","briefcase-plus","calendar-fold","cassette-tape","chart-pie","cloud-backup","cloud-download","cloud-sync","cloud-upload","combine","diff","dock","download","eighth-note","eighth-notes","eject","file","file-archive","file-axis-3d","file-badge","file-box","file-braces","file-braces-corner","file-chart-column","file-chart-column-increasing","file-chart-line","file-chart-pie","file-check","file-check-corner","file-clock","file-code","file-code-corner","file-cog","file-diff","file-digit","file-down","file-exclamation-point","file-headphone","file-heart","file-image","file-input","file-key","file-lock","file-minus","file-minus-corner","file-music","file-output","file-pen","file-pen-line","file-play","file-plus","file-plus-corner","file-question-mark","file-scan","file-search","file-search-corner","file-signal","file-sliders","file-spreadsheet","file-stack","file-symlink","file-terminal","file-text","file-type","file-type-corner","file-up","file-user","file-video-camera","file-volume","file-x","file-x-corner","files","folder","folder-archive","folder-bookmark","folder-check","folder-clock","folder-closed","folder-code","folder-cog","folder-dot","folder-down","folder-git","folder-git-2","folder-heart","folder-input","folder-kanban","folder-key","folder-lock","folder-minus","folder-open","folder-open-dot","folder-output","folder-pen","folder-plus","folder-root","folder-search","folder-search-2","folder-symlink","folder-sync","folder-tree","folder-up","folder-user","folder-users","folder-x","folders","gallery-horizontal-end","gallery-vertical-end","group","half-note","hard-drive-download","hard-drive-upload","headphones","headset","image","image-down","image-minus","image-off","image-play","image-plus","image-up","images","import","list-tree","message-square-diff","package","package-2","package-open","package-search","paperclip","parentheses","save","save-all","save-check","save-off","save-pen","save-plus","sheet","shield-keyhole","shredder","sixteenth-notes","square-bottom-dashed-scissors","square-dashed-bottom","square-dashed-bottom-code","square-scissors","square-sparkles","square-stack","table","table-2","table-cells-merge","table-cells-split","table-columns-split","table-properties","table-rows-split","trash","trash-off","ungroup","upload","videotape","wifi-cog"]},{"id":"finance","title":"Finance","icons":["armenian-dram","azerbaijani-manat","badge-cent","badge-dollar-sign","badge-euro","badge-indian-rupee","badge-japanese-yen","badge-percent","badge-pound-sterling","badge-russian-ruble","badge-swiss-franc","badge-turkish-lira","bangladeshi-taka","banknote","banknote-arrow-down","banknote-arrow-up","banknote-check","banknote-x","belarusian-ruble","bitcoin","chart-candlestick","circle-dollar-sign","circle-euro","circle-percent","circle-pound-sterling","credit-card","credit-card-check","credit-card-minus","credit-card-plus","credit-card-reader","credit-card-x","currency","diamond-percent","dollar-sign","emirati-dirham","euro","gem","georgian-lari","hand-coins","handshake","indian-rupee","japanese-yen","kazakh-tenge","landmark","nepali-rupee","nfc","percent","philippine-peso","piggy-bank","pound-sterling","receipt","receipt-cent","receipt-euro","receipt-indian-rupee","receipt-japanese-yen","receipt-pound-sterling","receipt-russian-ruble","receipt-swiss-franc","receipt-text","receipt-turkish-lira","russian-ruble","saudi-riyal","scale","smartphone-nfc","square-percent","swiss-franc","turkish-lira","wallet","wallet-cards","wallet-minimal"]},{"id":"food-beverage","title":"Food & beverage","icons":["amphora","apple","avocado","bacon","banana","barrel","bean","bean-off","beef","beef-off","beer","beer-off","blender","bottle-wine","broccoli","cake","cake-slice","can","can-soda","candy","candy-cane","candy-off","carrot","carton","carton-off","chef-hat","cherry","citrus","coffee","cookie","cooking-pot","croissant","cuboid","cup-soda","cupcake","dessert","dna-off","donut","door-closed-package","drumstick","egg","egg-fried","egg-off","faucet","fish","fish-off","fish-symbol","glass-water","grape","groceries","ham","hamburger","hand-platter","hop","hop-off","ice-cream-bowl","ice-cream-cone","leafy-green","lollipop","martini","microwave","milk","milk-off","nut","nut-off","paper-bag","pizza","popcorn","popsicle","refrigerator","salad","sandwich","shell","shrimp","shrimp-off","snail","soup","torus","tractor","utensils","utensils-crossed","vegan","wheat","wheat-off","wine","wine-off"]},{"id":"gaming","title":"Gaming","icons":["amphora","anvil","arrow-big-down","arrow-big-down-dash","arrow-big-left","arrow-big-left-dash","arrow-big-right","arrow-big-right-dash","arrow-big-up","arrow-big-up-dash","award","axe","backpack","ball-wave","beaker","bone","book","book-a","book-alert","book-bookmark","book-check","book-copy","book-heart","book-key","book-lock","book-minus","book-open","book-open-check","book-plus","book-search","book-text","book-type","book-x","bow-arrow","box","boxes","broom","broom-sparkles","castle","chess-bishop","chess-king","chess-knight","chess-pawn","chess-queen","chess-rook","chevron-down","chevron-up","chevrons-down","chevrons-left","chevrons-left-right-ellipsis","chevrons-right","chevrons-up","circle-arrow-down","circle-arrow-left","circle-arrow-right","circle-arrow-up","circle-plus","circle-star","clover","club","coins","computer","crown","diamond","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","dices","droplet","droplet-off","ethernet-port","feather","flame","flame-kindling","flask-conical","flask-conical-off","flask-round","flower","gamepad","gamepad-2","gamepad-directional","gem","ghost","gift","goal","gpu","hdmi-port","headphone-off","headphones","headset","heart","heart-minus","heart-plus","hourglass","joystick","land-plot","medal","memory-stick","milestone","monitor-pc","mountain","pc-case","pickaxe","playing-card","playing-cards","playing-cards-fan","plus","podium","puzzle","rectangle-goggles","rocket","scan","scan-box","scroll","scroll-text","shapes","shield","shield-alert","shield-ban","shield-check","shield-cog","shield-cog-corner","shield-ellipsis","shield-half","shield-minus","shield-off","shield-plus","shield-question-mark","shield-x","shovel","signpost","signpost-big","skull","spade","sparkles","sprout","square-arrow-down","square-arrow-down-left","square-arrow-down-right","square-star","star","star-check","star-minus","star-plus","star-x","sword","swords","tally-1","tally-2","tally-3","tally-4","tally-5","target","tic-tac-toe","tombstone","toy-brick","trophy","usb-c-port","venetian-mask","volleyball","wand","wand-sparkles"]},{"id":"home","title":"Home","icons":["air-vent","alarm-smoke","armchair","bed","bed-double","bed-single","bell-electric","birdhouse","blender","blinds","bolt","brick-wall","brick-wall-fire","brick-wall-shield","broom","broom-sparkles","brush-cleaning","cooking-pot","door-closed","door-closed-cog","door-closed-locked","door-closed-package","door-open","door-stairwell","drill","fan","faucet","fence","fire-extinguisher","hammer","heater","house","house-cog","house-heart","house-plug","house-wifi","houses","lamp","lamp-ceiling","lamp-desk","lamp-floor","lamp-wall-down","lamp-wall-up","microwave","mirror-rectangular","mirror-round","mop","mop-sparkles","paint-roller","paintbrush","paintbrush-vertical","plant-pot","refrigerator","robot-vacuum","rocking-chair","rose","router","shell","shelving-unit","shield-house","shower-head","soap-dispenser-droplet","sofa","solar-panel","swatch-book","toilet","tool-case","toolbox","toothbrush","toothbrush-sparkles","towel-rack","tube-lotion","turntable","usb","usb-c-port","utility-pole","vault","washing-machine","waves-ladder"]},{"id":"layout","title":"Layout","icons":["align-center-horizontal","align-center-vertical","align-end-horizontal","align-end-vertical","align-horizontal-distribute-center","align-horizontal-distribute-end","align-horizontal-distribute-start","align-horizontal-justify-center","align-horizontal-justify-end","align-horizontal-justify-start","align-horizontal-space-around","align-horizontal-space-between","align-start-horizontal","align-start-vertical","align-vertical-distribute-center","align-vertical-distribute-end","align-vertical-distribute-start","align-vertical-justify-center","align-vertical-justify-end","align-vertical-justify-start","align-vertical-space-around","align-vertical-space-between","app-window","app-window-mac","arrow-down-0-1","arrow-down-1-0","arrow-down-a-z","arrow-down-narrow-wide","arrow-down-wide-narrow","arrow-down-z-a","arrow-up-0-1","arrow-up-1-0","arrow-up-a-z","arrow-up-narrow-wide","arrow-up-wide-narrow","arrow-up-z-a","between-horizontal-end","between-horizontal-start","between-vertical-end","between-vertical-start","blocks","bring-to-front","circle-ellipsis","columns-2","columns-3","columns-3-cog","columns-4","dock","ellipsis","ellipsis-vertical","fold-horizontal","fold-vertical","fullscreen","funnel","funnel-plus","funnel-x","gallery-horizontal","gallery-horizontal-end","gallery-thumbnails","gallery-vertical","gallery-vertical-end","gap-horizontal","gap-vertical","grid-2x2","grid-2x2-check","grid-2x2-plus","grid-2x2-x","grid-3x2","grid-3x3","grip","grip-horizontal","grip-vertical","hand-grab","layer-arrow-down","layer-arrow-up","layers","layers-2","layers-arrow-down","layers-arrow-up","layers-minus","layers-plus","layout-arrow-down","layout-arrow-right","layout-dashboard","layout-freeform","layout-grid","layout-grid-circles","layout-list","layout-panel-left","layout-panel-top","layout-template","list-filter-plus","list-sort-ascending","list-sort-descending","list-tree","loader","loader-circle","maximize","maximize-2","menu","minimize","minimize-2","panel-bottom","panel-bottom-close","panel-bottom-dashed","panel-bottom-open","panel-left","panel-left-close","panel-left-dashed","panel-left-open","panel-left-right-dashed","panel-right","panel-right-close","panel-right-dashed","panel-right-open","panel-top","panel-top-bottom-dashed","panel-top-close","panel-top-dashed","panel-top-open","panels-left-bottom","panels-right-bottom","panels-top-left","pencil-ruler","proportions","ratio","rotate-ccw-square","rotate-cw-square","rows-2","rows-3","rows-4","ruler","ruler-dimension-line","send-to-back","separator-horizontal","separator-vertical","shrink","square-arrow-right-enter","square-arrow-right-exit","square-dashed-plus","square-dashed-top-solid","square-dashed-x","square-dashed-x-corner","square-dimensions","square-menu","square-round-corner","square-split-horizontal","square-split-vertical","square-square","stretch-horizontal","stretch-vertical","text-cursor-input","toggle-left","toggle-right","unfold-horizontal","unfold-vertical","zoom-in","zoom-out"]},{"id":"mail","title":"Mail","icons":["archive","archive-restore","archive-x","arrows-up-from-line","container","forward","inbox","mail","mail-badge","mail-check","mail-clock","mail-dot","mail-minus","mail-open","mail-pen","mail-plus","mail-question-mark","mail-search","mail-warning","mail-x","mailbox","mails","paperclip","reply","reply-all","send","send-horizontal","shredder","trash","trash-off"]},{"id":"math","title":"Mathematics","icons":["angle","asterisk","astroid","badge-percent","box","calculator","chevron-right","chevron-up","circle-divide","circle-equal","circle-minus","circle-percent","circle-plus","circle-slash","circle-slash-2","circle-x","cone","copy-minus","copy-plus","copy-slash","copy-x","cuboid","cylinder","decimals-arrow-left","decimals-arrow-right","diameter","diamond-percent","divide","drafting-compass","equal","equal-approximately","equal-approximately-not","equal-not","grid-2x2","grid-2x2-check","grid-2x2-plus","grid-2x2-x","grid-3x2","lambda","land-plot","line-squiggle","minus","octagon-x","omega","parentheses","percent","phi","pi","plus","pyramid","radical","radius","sigma","slash","square-asterisk","square-chevron-up","square-divide","square-equal","square-function","square-minus","square-percent","square-pi","square-plus","square-radical","square-sigma","square-slash","square-x","tally-1","tally-2","tally-3","tally-4","tally-5","tangent","triangle-right","variable","vector-polygon","vector-square","weight","weight-tilde","x","x-line-top"]},{"id":"medical","title":"Medical","icons":["accessibility","activity","ambulance","bandage","bone","bone-fracture","brain","brain-off","briefcase-medical","cigarette","cigarette-off","circle-small","clipboard-minus","clipboard-plus","dna","dna-off","ear","ear-off","fingerprint-pattern","germ","germ-off","heart","heart-minus","heart-plus","heart-pulse","hospital","house-heart","house-plus","iv-bag","life-buoy","mars","mars-stroke","microscope","mouth","mouth-off","non-binary","pill","pill-bottle","ribbon","scan-heart","shield-plus","siren","square-activity","stethoscope","syringe","tablets","toothbrush","toothbrush-sparkles","transgender","tube-lotion","venus","venus-and-mars","virus","virus-off"]},{"id":"multimedia","title":"Multimedia","icons":["activity","ad","airplay","antenna","audio-lines","audio-lines-off","audio-lines-x","audio-waveform","book-audio","book-headphones","book-image","boom-box","cable","captions","captions-off","card-sim","cassette-tape","chevron-first","chevron-last","chevrons-left-right-ellipsis","circle-chevrons-left","circle-chevrons-right","circle-fading-play","circle-pause","circle-play","circle-stop","clapperboard","clef-alto","clef-bass","clef-treble","closed-caption","diamond-minus","diamond-plus","disc","disc-2","disc-3","disc-album","drama","drum","eighth-note","eighth-notes","eject","ethernet-port","fast-forward","file-music","film","fullscreen","gallery-horizontal","gallery-horizontal-end","gallery-thumbnails","gallery-vertical","gallery-vertical-end","guitar","guitar-electric","half-note","hand-metal","hd","hdmi-port","headphone-off","headphones","headset","heart","heart-minus","heart-off","heart-plus","heart-x","image","image-down","image-minus","image-off","image-play","image-plus","image-up","image-upscale","images","infinity","keyboard-music","lectern","library","library-big","list-end","list-minus","list-music","list-plus","list-restart","list-start","list-video","list-x","loader","loader-circle","megaphone","megaphone-off","metronome","mic","mic-audio-lines","mic-off","mic-signal","mic-vocal","midi-port","monitor-pause","monitor-play","monitor-stop","newspaper","octagon-pause","pause","piano","picture-in-picture","picture-in-picture-2","play","play-off","popcorn","presentation","projector","radio","radio-off","radio-tower","rectangle-goggles","repeat","repeat-1","repeat-2","repeat-off","rewind","satellite-dish","scan-eye","scan-search","shuffle","sixteenth-notes","skip-back","skip-forward","sparkles","speaker","spotlight","square","square-activity","square-arrow-right-enter","square-arrow-right-exit","square-bookmark","square-library","square-pause","square-play","square-sparkles","square-stop","star","star-check","star-half","star-minus","star-off","star-plus","star-x","step-back","step-forward","turntable","tv","tv-minimal","tv-minimal-play","usb","usb-c-port","volume","volume-1","volume-2","volume-off","volume-x","waves-horizontal"]},{"id":"nature","title":"Nature","icons":["binoculars","birdhouse","cannabis","cannabis-off","caravan","feather","flame-kindling","flower","flower-2","hiking-stick","leaf","mountain","mountain-snow","park","plant-pot","rose","shell","shovel","shrub","sprout","stone","tent","tent-tree","tree-deciduous","tree-palm","tree-pine","trees"]},{"id":"navigation","title":"Navigation & Places","icons":["barrel","binoculars","birdhouse","calendar-chevrons-left","calendar-chevrons-right","castle","church","circle-chevrons-down","circle-chevrons-left","circle-chevrons-right","circle-chevrons-up","circle-parking","circle-parking-off","compass","credit-card-reader","dam","dome","dumbbell","earth","ev-charger","factory","faucet","ferris-wheel","flag-triangle-left","flag-triangle-right","footprints","fuel","gavel","git-commit-horizontal","git-commit-vertical","globe","globe-check","globe-code","globe-off","globe-x","hiking-stick","hospital","hotel","house","landmark","library","library-big","lighthouse","line-dot-bottom-vertical","line-dot-left-horizontal","line-dot-right-horizontal","line-dot-top-vertical","locate","locate-fixed","locate-off","map","map-minus","map-pin","map-pin-check","map-pin-check-inside","map-pin-house","map-pin-minus","map-pin-minus-inside","map-pin-off","map-pin-pen","map-pin-plus","map-pin-plus-inside","map-pin-search","map-pin-x","map-pin-x-inside","map-pinned","map-plus","milestone","mosque","navigation","navigation-2","navigation-2-off","navigation-off","park","parking-meter","pin","pin-off","plane","radar","roller-coaster","route","route-off","scale","school","ship","ship-cargo","ship-wheel","signpost","signpost-big","square-chevron-down","square-chevron-left","square-chevron-right","square-chevron-up","square-library","square-m","square-parking","square-parking-off","store","tombstone","train-front-tunnel","train-track","university","utensils","utensils-crossed","warehouse","waves-horizontal","waypoints","wind-arrow-up"]},{"id":"notifications","title":"Notifications","icons":["ad","alarm-clock","alarm-clock-check","alarm-clock-minus","alarm-clock-off","alarm-clock-plus","bell","bell-check","bell-dot","bell-electric","bell-minus","bell-off","bell-plus","bell-ring","check","check-check","check-line","circle-alert","circle-check","circle-check-big","circle-dashed-check","circle-question-mark","copy-check","copy-x","face-slightly-smiling-plus","file-exclamation-point","info","laptop-minimal-check","list-clock","mail-clock","megaphone","megaphone-off","message-circle-warning","message-square-dot","message-square-warning","messages-circle","octagon-alert","octagon-x","shield-alert","square-check","square-check-big","square-exclamation-point","square-x","triangle-alert","vibrate","whistle","x","x-line-top"]},{"id":"people","title":"People","icons":["baby","clock-arrow-right","folder-user","folder-users","hand-platter","person-standing","smartphone-user-round","tombstone","user-group","user-round-arrow-left","user-round-group","user-shield","users-collaboration","users-round-collaboration"]},{"id":"photography","title":"Photography","icons":["aperture","backpack","binoculars","blend","book-image","camera","camera-off","cctv","cctv-off","contrast","crop","crosshair","database-backup","diamond-minus","diamond-plus","eclipse","eye","eye-closed","eye-dashed","eye-off","film","flashlight","flashlight-off","focus","frame","fullscreen","gallery-horizontal","gallery-horizontal-end","gallery-thumbnails","gallery-vertical","gallery-vertical-end","image","image-down","image-minus","image-off","image-play","image-plus","image-up","image-upscale","images","layout-list","lens","library","library-big","lightbulb","lightbulb-off","paintbrush","paintbrush-vertical","palette","pencil-sparkles","presentation","projector","proportions","ratio","rotate-ccw","rotate-ccw-square","rotate-cw","rotate-cw-square","scan-eye","scan-search","scan-square","spotlight","square-bookmark","square-centerline-dashed-horizontal","square-centerline-dashed-vertical","square-library","square-sparkles","swatch-book","triangles-centerline-dashed-horizontal","triangles-centerline-dashed-vertical","video","video-off","videotape","view","wand","wand-sparkles","zap","zap-off","zoom-in","zoom-out"]},{"id":"science","title":"Science","icons":["activity","atom","beaker","binoculars","biohazard","brain","brain-circuit","brain-cog","brain-off","circle-gauge","circuit-board","eclipse","equal-approximately-not","flask-conical","flask-conical-off","flask-round","galaxy","gauge","germ","germ-off","lambda","lens","lens-concave","lens-convex","microscope","mirror-rectangular","mirror-round","omega","orbit","phi","pipette","radiation","robot-arm","satellite","scale","shell","sigma","solar-panel","square-activity","stethoscope","syringe","telescope","test-tube","test-tube-diagonal","test-tubes","virus","virus-off"]},{"id":"seasons","title":"Seasons","icons":["flower-2","leaf","rose","snowflake","sun","tube-lotion"]},{"id":"security","title":"Security","icons":["bomb","book-key","book-lock","brick-wall-fire","brick-wall-shield","cctv","cctv-off","certificate","columns-4","door-closed","door-closed-cog","door-closed-locked","door-open","earth-lock","eye","eye-closed","eye-dashed","eye-off","file-key","file-lock","fingerprint-pattern","folder-key","folder-lock","folder-user","folder-users","germ","germ-off","globe-lock","handshake","hat-glasses","heart-handshake","id-card","id-card-lanyard","key","key-round","key-square","lock","lock-keyhole","lock-keyhole-open","lock-open","mail-badge","radar","rotate-ccw-key","scan","scan-eye","scan-face","scan-qr-code","shield","shield-alert","shield-ban","shield-check","shield-cog","shield-cog-corner","shield-ellipsis","shield-half","shield-house","shield-keyhole","shield-lock","shield-minus","shield-off","shield-plus","shield-question-mark","shield-user","shield-x","square-asterisk","user-lock","user-shield","vault","virus","virus-off","waypoints","wifi-lock","worm"]},{"id":"shapes","title":"Shapes","icons":["astroid","badge","badge-question-mark","blocks","box","boxes","circle","circle-dashed","circle-dashed-check","circle-dot","circle-dot-dashed","circle-off","circle-pile","circle-slash-2","circle-small","club","cone","cross","cuboid","cylinder","diameter","diamond","dot","ellipse","heart","heart-x","hexagon","lens-concave","lens-convex","line-squiggle","octagon","octagon-alert","octagon-pause","pentagon","pyramid","radius","rectangle-horizontal","rectangle-vertical","shapes","shield","shield-cog","shield-cog-corner","spade","sparkle","square","square-arrow-right-enter","square-arrow-right-exit","square-dashed-plus","square-exclamation-point","square-off","square-text","squircle","squircle-dashed","star","star-check","star-minus","star-plus","star-x","tangent","torus","triangle","triangle-alert","triangle-dashed","triangle-right","ungroup","vector-polygon","vector-square"]},{"id":"shopping","title":"Shopping","icons":["badge-cent","badge-dollar-sign","badge-euro","badge-indian-rupee","badge-japanese-yen","badge-percent","badge-pound-sterling","badge-russian-ruble","badge-swiss-franc","badge-turkish-lira","bangladeshi-taka","barcode","belarusian-ruble","book-image","circle-euro","circle-percent","credit-card-check","credit-card-minus","credit-card-plus","credit-card-reader","credit-card-x","diamond-percent","handbag","nepali-rupee","paper-bag","percent","perfume-bottle","scan","scan-barcode","scan-box","scan-line","scan-qr-code","shirt","shopping-bag","shopping-basket","shopping-cart","shopping-cart-minus","shopping-cart-plus","square-percent","store","ticket-percent","tube-lotion"]},{"id":"social","title":"Social","icons":["activity","badge","badge-alert","badge-check","badge-info","badge-minus","badge-percent","badge-plus","badge-question-mark","badge-x","book-heart","book-image","book-user","boom-box","bot","bot-message-square","bot-off","cake","cake-slice","circle-fading-play","circle-fading-plus","circle-percent","contact","contact-round","diamond-percent","external-link","face-slightly-smiling-plus","flag","flag-off","flame","flame-kindling","folder-user","folder-users","hand-fist","hand-heart","handshake","hash","hat-glasses","heart","heart-minus","heart-off","heart-plus","heart-x","message-circle","message-circle-check","message-circle-code","message-circle-dashed","message-circle-dashed-check","message-circle-heart","message-circle-more","message-circle-off","message-circle-plus","message-circle-question-mark","message-circle-reply","message-circle-text","message-circle-warning","message-circle-x","message-square","message-square-check","message-square-code","message-square-dashed","message-square-diff","message-square-dot","message-square-heart","message-square-lock","message-square-more","message-square-off","message-square-plus","message-square-quote","message-square-reply","message-square-share","message-square-text","message-square-warning","message-square-x","messages-circle","messages-square","notebook","notebook-pen","notebook-tabs","notebook-text","notepad-text","notepad-text-dashed","playing-cards-fan","qr-code","radio","radio-off","radio-tower","repeat-2","ribbon","rose","rss","scan","scan-face","search","search-alert","search-check","search-code","search-slash","search-x","share","share-2","spool","square-activity","square-arrow-out-up-right","square-arrow-up-right","square-percent","star","star-check","star-half","star-minus","star-off","star-plus","star-x","sticker","sticky-note","sticky-note-check","sticky-note-minus","sticky-note-off","sticky-note-plus","sticky-note-x","sticky-notes","theater","thumbs-down","thumbs-up","user-group","user-round-group","user-round-search","user-search","voicemail","vote","waypoints","webhook","webhook-off","zodiac-aquarius","zodiac-aries","zodiac-cancer","zodiac-capricorn","zodiac-gemini","zodiac-leo","zodiac-libra","zodiac-ophiuchus","zodiac-pisces","zodiac-sagittarius","zodiac-scorpio","zodiac-taurus","zodiac-virgo"]},{"id":"sports","title":"Sports","icons":["award","ball-wave","circle-gauge","circle-star","dumbbell","fishing-hook","fishing-rod","gauge","hand-fist","hiking-stick","hockey-stick","hot-air-balloon","land-plot","medal","podium","rugby-ball","sport-shoe","square-star","trophy","volleyball","waves-ladder","whistle"]},{"id":"sustainability","title":"Sustainability","icons":["dam","flower","flower-2","house-plug","leaf","leafy-green","recycle","rose","solar-panel","sprout","sun","tent","tractor","tree-deciduous","tree-palm","tree-pine","trees","utility-pole","vegan","waves-arrow-down","waves-arrow-up","waves-horizontal","waves-vertical","wind","wind-arrow-down","wind-arrow-up"]},{"id":"text","title":"Text formatting","icons":["a-arrow-down","a-arrow-up","a-large-small","ampersand","ampersands","anchor","arrow-big-up","arrow-big-up-dash","arrow-down-0-1","arrow-down-1-0","arrow-down-a-z","arrow-down-narrow-wide","arrow-down-wide-narrow","arrow-down-z-a","arrow-up-0-1","arrow-up-1-0","arrow-up-a-z","arrow-up-narrow-wide","arrow-up-wide-narrow","arrow-up-z-a","asterisk","at-sign","baseline","binary","bold","book","book-a","book-alert","book-audio","book-bookmark","book-check","book-copy","book-headphones","book-heart","book-image","book-minus","book-open","book-open-check","book-open-text","book-plus","book-search","book-text","book-type","book-x","brush","case-lower","case-sensitive","case-upper","circle-question-mark","clipboard","clipboard-check","clipboard-clock","clipboard-copy","clipboard-list","clipboard-minus","clipboard-paste","clipboard-pen","clipboard-pen-line","clipboard-plus","clipboard-type","clipboard-x","code","code-xml","columns-2","columns-3","columns-4","copy","copy-check","copy-minus","copy-plus","copy-slash","copyleft","copyright","corner-down-right","creative-commons","decimals-arrow-left","decimals-arrow-right","delete","dot","eraser","expand","external-link","feather","file-text","file-type","file-type-corner","grid-2x2","grid-2x2-check","grid-2x2-plus","grid-2x2-x","grid-3x2","grid-3x3","hash","heading","heading-1","heading-2","heading-3","heading-4","heading-5","heading-6","highlighter","image","image-down","image-play","image-up","images","italic","keyboard","keyboard-off","lambda","languages","layout-list","letter-spacing","letters","library","library-big","ligature","line-height","link","link-2","link-2-off","list","list-check","list-checks","list-chevrons-down-up","list-chevrons-up-down","list-clock","list-collapse","list-end","list-filter","list-filter-plus","list-indent-decrease","list-indent-increase","list-minus","list-ordered","list-plus","list-restart","list-sort-ascending","list-sort-descending","list-start","list-todo","list-tree","list-x","logs","mail","mail-clock","mail-dot","map","map-pin-search","message-square-quote","minus","notebook","notebook-pen","notebook-text","notepad-text","notepad-text-dashed","omega","paint-roller","paintbrush","paintbrush-vertical","palette","paperclip","pen","pen-line","pen-off","pen-tool","pencil","pencil-line","pencil-off","pencil-ruler","pencil-sparkles","phone","pilcrow","pilcrow-left","pilcrow-right","pipette","plus","quote","rectangle-circle","rectangle-ellipsis","redo","redo-2","redo-dot","regex","remove-formatting","replace","replace-all","rows-2","rows-3","rows-4","save","save-all","save-check","save-off","save-pen","save-plus","scan-text","scissors","scroll","scroll-text","search","search-alert","search-check","search-code","search-slash","search-x","section","separator-horizontal","separator-vertical","sheet","sigma","signature","space","spell-check","spell-check-2","square-asterisk","square-bottom-dashed-scissors","square-code","square-dashed","square-dashed-text","square-library","square-minus","square-pen","square-pilcrow","square-plus","square-scissors","square-sigma","square-sparkles","square-stack","square-text","sticky-note","sticky-note-check","sticky-note-minus","sticky-note-off","sticky-note-plus","sticky-note-x","sticky-notes","strikethrough","subscript","summary","superscript","table","table-2","table-cells-merge","table-cells-split","table-columns-split","table-of-contents","table-properties","table-rows-split","text-align-center","text-align-end","text-align-justify","text-align-justify-center","text-align-justify-end","text-align-justify-start","text-align-start","text-cursor","text-cursor-input","text-initial","text-quote","text-search","text-wrap","type","type-outline","underline","undo","undo-2","undo-dot","unlink","unlink-2","whole-word","zoom-in","zoom-out"]},{"id":"time","title":"Time & calendar","icons":["alarm-clock","alarm-clock-check","alarm-clock-minus","alarm-clock-off","alarm-clock-plus","calendar","calendar-1","calendar-arrow-down","calendar-arrow-up","calendar-check","calendar-check-2","calendar-chevrons-left","calendar-chevrons-right","calendar-clock","calendar-cog","calendar-days","calendar-fold","calendar-heart","calendar-minus","calendar-minus-2","calendar-off","calendar-plus","calendar-plus-2","calendar-range","calendar-search","calendar-sync","calendar-x","calendar-x-2","calendars","chart-no-axes-gantt","clipboard-clock","clock","clock-1","clock-10","clock-11","clock-12","clock-2","clock-3","clock-4","clock-5","clock-6","clock-7","clock-8","clock-9","clock-alert","clock-arrow-down","clock-arrow-left","clock-arrow-right","clock-arrow-up","clock-check","clock-fading","clock-plus","file-clock","folder-clock","hourglass","hourglass-cog","list-clock","mail-clock","metronome","rotate-ccw-clock","rotate-cw-clock","rotate-cw-fading-clock","square-chart-gantt","sunrise","timeline","timer","timer-off","timer-reset","watch"]},{"id":"tools","title":"Tools","icons":["anvil","axe","between-horizontal-end","between-horizontal-start","between-vertical-end","between-vertical-start","blend","bolt","bomb","bow-arrow","broom","broom-sparkles","brush","brush-cleaning","diameter","diamond-minus","diamond-plus","drafting-compass","drill","fire-extinguisher","gavel","hammer","hard-hat","hourglass-cog","inspection-panel","land-plot","lens","lens-concave","lens-convex","line-style","minus","mirror-rectangular","mirror-round","mop","mop-sparkles","paint-bucket","paint-roller","paintbrush","paintbrush-vertical","pen","pen-line","pen-off","pencil","pencil-line","pencil-off","pencil-ruler","pencil-sparkles","pickaxe","plus","pocket-knife","printer-3d","radius","robot-arm","robot-vacuum","rotate-ccw-square","rotate-cw-square","ruler","ruler-dimension-line","scissors","scissors-line-dashed","screw","shovel","spline-pointer","spool","spray-can","square-bottom-dashed-scissors","square-dashed-mouse-pointer","square-minus","square-mouse-pointer","square-plus","square-scissors","stamp","sword","swords","tablet-smartphone","tangent","telescope","tool-case","toolbox","toothbrush","toothbrush-sparkles","torus","vector-square","wrench","wrench-off"]},{"id":"transportation","title":"Transportation","icons":["ambulance","anchor","arrows-up-from-line","baggage-claim","bike","bridge","briefcase","briefcase-business","briefcase-conveyor-belt","briefcase-medical","briefcase-plus","bus","bus-front","cable-car","car","car-battery","car-front","car-taxi-front","caravan","cigarette","cigarette-off","circle-gauge","circle-parking","circle-parking-off","container","door-closed-package","drone","engine","ev-charger","forklift","fuel","gauge","handbag","helicopter","kayak","luggage","motorbike","octagon-minus","parking-meter","plane","plane-landing","plane-takeoff","road","sailboat","scooter","ship","ship-cargo","ship-wheel","square-m","square-parking","square-parking-off","ticket","ticket-check","ticket-minus","ticket-percent","ticket-plus","ticket-slash","ticket-x","tickets","tickets-plane","tower-control","tractor","traffic-cone","trailer","train-front","train-front-tunnel","train-track","tram-front","truck","truck-electric","van"]},{"id":"travel","title":"Travel","icons":["alarm-smoke","backpack","baggage-claim","bangladeshi-taka","bath","binoculars","book-image","bridge","briefcase-conveyor-belt","cable-car","caravan","cigarette","cigarette-off","compass","concierge-bell","dome","door-closed","door-closed-locked","door-open","door-stairwell","faucet","fire-extinguisher","fishing-hook","fishing-rod","heater","helicopter","hiking-stick","hospital","hotel","lighthouse","luggage","map-minus","map-pin","map-pin-check","map-pin-check-inside","map-pin-house","map-pin-minus","map-pin-minus-inside","map-pin-off","map-pin-pen","map-pin-plus","map-pin-plus-inside","map-pin-search","map-pin-x","map-pin-x-inside","map-pinned","mosque","nepali-rupee","parasol","park","perfume-bottle","plane","plane-landing","plane-takeoff","pyramid","receipt","receipt-cent","receipt-euro","receipt-indian-rupee","receipt-japanese-yen","receipt-pound-sterling","receipt-russian-ruble","receipt-swiss-franc","receipt-text","receipt-turkish-lira","sailboat","shell","ship","ship-cargo","ship-wheel","shower-head","soap-dispenser-droplet","tent","tent-tree","tickets","tickets-plane","toothbrush","toothbrush-sparkles","towel-rack","tower-control","tube-lotion","utensils","utensils-crossed","vault","volleyball","washing-machine"]},{"id":"weather","title":"Weather","icons":["bubbles","cloud","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon","cloud-moon-rain","cloud-off","cloud-rain","cloud-rain-wind","cloud-snow","cloud-sun","cloud-sun-rain","cloudy","droplet","droplet-off","droplets","flame","haze","moon-star","parasol","rainbow","snowflake","solar-panel","sparkles","star","star-check","star-minus","star-plus","star-x","sun","sun-dim","sun-medium","sun-snow","sunrise","sunset","thermometer","thermometer-snowflake","thermometer-sun","tornado","umbrella","umbrella-off","waves-arrow-down","waves-arrow-up","waves-horizontal","waves-vertical","wind","wind-arrow-down","wind-arrow-up","zap","zap-off"]}]}
@@ -0,0 +1,40 @@
1
+ // Every Lucide icon, read at build time from the official lucide-static package (ISC licence).
2
+ // lucide-static has no categories, so they come from src/lib/lucide-categories.json: the
3
+ // categories/*.json and icons/*.json files of the Lucide repository at the same version.
4
+ import { readFileSync } from 'node:fs';
5
+ import { join } from 'node:path';
6
+ import categoryData from './lucide-categories.json';
7
+ import { iconActions, lucideVersion } from './icons';
8
+
9
+ type IconNode = [string, Record<string, string>][];
10
+
11
+ const pkg = join(process.cwd(), 'node_modules', 'lucide-static');
12
+ const read = <T,>(file: string): T => JSON.parse(readFileSync(join(pkg, file), 'utf8')) as T;
13
+
14
+ let cache: ReturnType<typeof load> | undefined;
15
+
16
+ function load() {
17
+ const version = read<{ version: string }>('package.json').version;
18
+ if (version !== lucideVersion) throw new Error(`lucide-static is ${version}; src/lib/icons.ts expects ${lucideVersion}`);
19
+ if (categoryData.version !== lucideVersion) throw new Error(`lucide-categories.json is for Lucide ${categoryData.version}`);
20
+ const nodes = read<Record<string, IconNode>>('icon-nodes.json');
21
+ const tags = read<Record<string, string[]>>('tags.json');
22
+ const names = Object.keys(nodes).sort();
23
+ for (const action of iconActions) {
24
+ if (!nodes[action.icon]) throw new Error(`src/lib/icons.ts: "${action.icon}" is not a Lucide ${lucideVersion} icon`);
25
+ }
26
+ const categories = [...categoryData.categories].sort((a, b) => a.title.localeCompare(b.title));
27
+ const catsOf = new Map<string, number[]>();
28
+ categories.forEach((category, i) => category.icons.forEach((name) => catsOf.set(name, [...(catsOf.get(name) ?? []), i])));
29
+ // The inner markup of each icon; the page wraps it in its own <svg>.
30
+ const inner = (name: string) =>
31
+ nodes[name].map(([tag, attrs]) => `<${tag}${Object.entries(attrs).map(([k, v]) => ` ${k}="${v}"`).join('')}/>`).join('');
32
+ return {
33
+ version,
34
+ names,
35
+ categories: categories.map((c) => ({ id: c.id, title: c.title, count: c.icons.length })),
36
+ icons: names.map((name) => ({ name, tags: tags[name] ?? [], cats: catsOf.get(name) ?? [], svg: inner(name) })),
37
+ };
38
+ }
39
+
40
+ export const lucide = () => (cache ??= load());
@@ -0,0 +1,222 @@
1
+ import { getCollection, type CollectionEntry } from 'astro:content';
2
+ import { componentTabs } from '../content.config';
3
+ import type { ReleasePhase } from './release-phases';
4
+ import { name, type Lang } from './i18n';
5
+
6
+ // Top-level sections, in sidebar order. Every section except News is a branch of the one
7
+ // sidebar tree; the header only switches between the design system and News (as on
8
+ // atlassian.design, checked 23/10/2026).
9
+ export const sections = [
10
+ { id: 'get-started', label: 'Get started', href: '/get-started/' },
11
+ { id: 'foundations', label: 'Foundations', href: '/foundations/' },
12
+ { id: 'components', label: 'Components', href: '/components/' },
13
+ { id: 'tools', label: 'Tools', href: '/tools/' },
14
+ { id: 'news', label: 'News', href: '/news/' },
15
+ ] as const;
16
+
17
+ export type SectionId = (typeof sections)[number]['id'];
18
+
19
+ // The header links. "Design system" covers every section in the sidebar tree.
20
+ export const siteAreas = [
21
+ { id: 'design-system', label: 'Design system', href: '/get-started/' },
22
+ { id: 'news', label: 'News', href: '/news/' },
23
+ ] as const;
24
+ export const areaOf = (section?: SectionId) => (section === 'news' ? 'news' : section ? 'design-system' : undefined);
25
+
26
+ // Sections shown as branches of the sidebar tree.
27
+ export const treeSections = sections.filter((section) => section.id !== 'news').map((section) => section.id);
28
+
29
+ export async function getTree(lang: Lang = 'en'): Promise<(Sidebar & { id: SectionId })[]> {
30
+ return Promise.all(treeSections.map(async (id) => ({ id, ...(await getSidebar(id, lang)) })));
31
+ }
32
+
33
+ // Folders that keep their own URL but are shown inside another section.
34
+ // /release-phases/ is reference material for Get started.
35
+ const sectionAliases: Record<string, SectionId> = { 'release-phases': 'get-started' };
36
+
37
+ // Sidebar groups inside a section, keyed by the folder under the section. Order is the order shown.
38
+ const groups: Partial<Record<SectionId, Record<string, string>>> = {
39
+ foundations: { tokens: 'Design tokens', guidelines: 'Guidelines', styles: 'Styles' },
40
+ };
41
+
42
+ // Links that are not docs pages but belong in a section's sidebar. (News is in the header,
43
+ // so it is not repeated here.)
44
+ const extraItems: Partial<Record<SectionId, { group: string; order: number; title: string; href: string }[]>> = {};
45
+
46
+ export const tabLabels: Record<(typeof componentTabs)[number], string> = {
47
+ examples: 'Examples',
48
+ code: 'Code',
49
+ usage: 'Usage',
50
+ accessibility: 'Accessibility',
51
+ changelog: 'Changelog',
52
+ };
53
+
54
+ export interface NavItem {
55
+ title: string;
56
+ href: string;
57
+ status?: ReleasePhase;
58
+ // Sub-pages, such as the pages under Logos. The first child is the parent page itself.
59
+ children?: NavItem[];
60
+ }
61
+
62
+ export interface NavGroup {
63
+ label?: string;
64
+ items: NavItem[];
65
+ }
66
+
67
+ export interface Sidebar {
68
+ title: string;
69
+ href: string;
70
+ groups: NavGroup[];
71
+ // When every page in the section has the same release phase, the sidebar says it once
72
+ // instead of repeating a badge on every item.
73
+ sharedStatus?: ReleasePhase;
74
+ }
75
+
76
+ export const docHref = (entry: CollectionEntry<'docs'>) => `/${entry.id}/`;
77
+
78
+ export function sectionOf(pathname: string): SectionId | undefined {
79
+ const first = pathname.split('/').filter(Boolean)[0];
80
+ if (!first) return undefined;
81
+ return sectionAliases[first] ?? sections.find((section) => section.id === first)?.id;
82
+ }
83
+
84
+ export const sectionOfDoc = (id: string) => sectionOf(`/${id}/`);
85
+
86
+ const byOrder = (a: CollectionEntry<'docs'>, b: CollectionEntry<'docs'>) =>
87
+ a.data.order - b.data.order || a.data.title.localeCompare(b.data.title);
88
+
89
+ // Navigation works on English paths in both languages; Vietnamese titles replace English ones
90
+ // where a page has a Vietnamese text. Links are localised when rendered (see i18n.ts).
91
+ export async function getSidebar(section: SectionId, lang: Lang = 'en'): Promise<Sidebar> {
92
+ const meta = sections.find((item) => item.id === section)!;
93
+ const base = { title: name(meta.label, lang), href: meta.href };
94
+ if (section === 'components') return { ...base, groups: await getComponentSidebar(lang) };
95
+ if (section === 'news') return { ...base, groups: [] };
96
+
97
+ const english = (await getCollection('docs', ({ id }) => sectionOfDoc(id) === section)).sort(byOrder);
98
+ const vi = lang === 'vi' ? await getCollection('docsVi') : [];
99
+ // Same ids and order as English; title and sidebar label from the Vietnamese text if there is one.
100
+ const entries = english.map((entry) => {
101
+ const v = vi.find((e) => e.id === entry.id);
102
+ if (v) return { ...entry, data: { ...entry.data, title: v.data.title, sidebarLabel: v.data.sidebarLabel ?? entry.data.sidebarLabel } };
103
+ // No Vietnamese text yet: the page stays in English, its name in the tree does not.
104
+ return lang === 'vi' ? { ...entry, data: { ...entry.data, title: name(entry.data.title, lang) } } : entry;
105
+ });
106
+ const ids = new Set(entries.map((entry) => entry.id));
107
+ const sectionGroups = groups[section] ?? {};
108
+
109
+ // A page is a sub-page when its parent folder has its own page at least two levels deep,
110
+ // such as foundations/styles/logos/using-the-logo under foundations/styles/logos.
111
+ const parentOf = (id: string) => {
112
+ const parent = id.split('/').slice(0, -1).join('/');
113
+ return parent.split('/').length >= 3 && ids.has(parent) ? parent : undefined;
114
+ };
115
+
116
+ const items = new Map<string, NavItem>();
117
+ for (const entry of entries) {
118
+ const isSectionIndex = entry.id === section;
119
+ items.set(entry.id, {
120
+ title: entry.data.sidebarLabel ? name(entry.data.sidebarLabel, lang) : isSectionIndex ? name('Overview', lang) : entry.data.title,
121
+ href: docHref(entry),
122
+ status: entry.data.status,
123
+ });
124
+ }
125
+
126
+ const ordered: { group?: string; order: number; item: NavItem }[] = [];
127
+ for (const entry of entries) {
128
+ const item = items.get(entry.id)!;
129
+ const parent = parentOf(entry.id);
130
+ if (parent) {
131
+ const parentItem = items.get(parent)!;
132
+ const parentEntry = entries.find((e) => e.id === parent)!;
133
+ parentItem.children ??= [{ ...parentItem, title: name(parentEntry.data.sidebarLabel ?? 'Overview', lang) }];
134
+ parentItem.children.push(item);
135
+ continue;
136
+ }
137
+ // The parent keeps the page title; its own child row carries the short label.
138
+ if (entries.some((e) => parentOf(e.id) === entry.id)) item.title = entry.data.title;
139
+ const folder = entry.id.split('/')[1];
140
+ const group = entry.data.sidebarGroup ?? sectionGroups[folder];
141
+ ordered.push({ group: group && name(group, lang), order: entry.data.order, item });
142
+ }
143
+ for (const extra of extraItems[section] ?? []) {
144
+ ordered.push({ group: name(extra.group, lang), order: extra.order, item: { title: extra.title, href: extra.href } });
145
+ }
146
+
147
+ const groupOrder = [undefined, ...Object.values(sectionGroups).map((g) => name(g, lang))];
148
+ for (const { group } of ordered) if (!groupOrder.includes(group)) groupOrder.push(group);
149
+
150
+ const navGroups = groupOrder
151
+ .map((label) => ({
152
+ label,
153
+ items: ordered.filter((row) => row.group === label).sort((a, b) => a.order - b.order).map((row) => row.item),
154
+ }))
155
+ .filter((group) => group.items.length);
156
+
157
+ return { ...base, groups: navGroups, sharedStatus: sharedStatus(navGroups) };
158
+ }
159
+
160
+ async function getComponentSidebar(lang: Lang): Promise<NavGroup[]> {
161
+ const components = (await getCollection('components')).sort((a, b) => a.data.title.localeCompare(b.data.title));
162
+ const byGroup = new Map<string, NavItem[]>();
163
+ for (const component of components) {
164
+ const items = byGroup.get(component.data.group) ?? [];
165
+ items.push({ title: component.data.title, href: `/components/${component.id}/`, status: component.data.status });
166
+ byGroup.set(component.data.group, items);
167
+ }
168
+ return [
169
+ { items: [{ title: name('All components', lang), href: '/components/' }] },
170
+ ...[...byGroup].sort(([a], [b]) => a.localeCompare(b)).map(([label, items]) => ({ label: name(label, lang), items })),
171
+ ];
172
+ }
173
+
174
+ export function flatten(groups: NavGroup[]): NavItem[] {
175
+ const seen = new Set<string>();
176
+ const out: NavItem[] = [];
177
+ const add = (item: NavItem) => {
178
+ if (!seen.has(item.href)) {
179
+ seen.add(item.href);
180
+ out.push(item);
181
+ }
182
+ item.children?.forEach(add);
183
+ };
184
+ groups.forEach((group) => group.items.forEach(add));
185
+ return out;
186
+ }
187
+
188
+ function sharedStatus(groups: NavGroup[]): ReleasePhase | undefined {
189
+ const statuses = new Set(flatten(groups).map((item) => item.status).filter(Boolean));
190
+ return statuses.size === 1 ? [...statuses][0] : undefined;
191
+ }
192
+
193
+ // True when `href` is the page at `pathname`, or a component whose tab pages sit under it.
194
+ export function isCurrent(href: string, pathname: string) {
195
+ if (pathname === href) return true;
196
+ return href !== '/components/' && href.startsWith('/components/') && pathname.startsWith(href);
197
+ }
198
+
199
+ // Breadcrumb trail from the sidebar: section, group, parent page, page.
200
+ export function trail(sidebar: Sidebar, pathname: string): { label: string; href?: string }[] {
201
+ const crumbs: { label: string; href?: string }[] = [{ label: sidebar.title, href: sidebar.href }];
202
+ for (const group of sidebar.groups) {
203
+ for (const item of group.items) {
204
+ const child = item.children?.find((c) => isCurrent(c.href, pathname));
205
+ if (!child && !isCurrent(item.href, pathname)) continue;
206
+ // The section's own overview page: "Get started / Overview".
207
+ if (item.href === sidebar.href) {
208
+ crumbs.push({ label: item.children ? (item.children[0]?.title ?? item.title) : item.title });
209
+ return crumbs;
210
+ }
211
+ if (group.label) crumbs.push({ label: group.label });
212
+ if (child) {
213
+ crumbs.push({ label: item.title, href: item.href });
214
+ crumbs.push({ label: child.title });
215
+ } else {
216
+ crumbs.push({ label: item.title });
217
+ }
218
+ return crumbs;
219
+ }
220
+ }
221
+ return crumbs;
222
+ }
@@ -0,0 +1,10 @@
1
+ import type { releasePhases } from '../content.config';
2
+
3
+ export type ReleasePhase = (typeof releasePhases)[number];
4
+
5
+ export const releasePhaseLabels: Record<ReleasePhase, string> = {
6
+ 'early-access': 'Early Access',
7
+ beta: 'Beta',
8
+ ga: 'General Availability',
9
+ deprecated: 'Deprecated',
10
+ };
@@ -0,0 +1,40 @@
1
+ // Static paths shared by the English pages and their /vi/ copies.
2
+ import { getCollection } from 'astro:content';
3
+ import { componentTabs } from '../content.config';
4
+
5
+ type Tab = (typeof componentTabs)[number];
6
+
7
+ export async function docPaths() {
8
+ const entries = await getCollection('docs');
9
+ const vi = await getCollection('docsVi');
10
+ return entries.map((entry) => ({ params: { slug: entry.id }, props: { entry, vi: vi.find((v) => v.id === entry.id) } }));
11
+ }
12
+
13
+ export async function componentPaths() {
14
+ const components = await getCollection('components');
15
+ return components.map((component) => ({ params: { name: component.id } }));
16
+ }
17
+
18
+ export async function componentTabPaths() {
19
+ const components = await getCollection('components');
20
+ const pages = await getCollection('componentPages');
21
+ for (const page of pages) {
22
+ const [name, tab] = page.id.split('/');
23
+ if (!componentTabs.includes(tab as Tab)) {
24
+ throw new Error(`Unknown component tab "${tab}" in ${page.id}. Use one of: ${componentTabs.join(', ')}`);
25
+ }
26
+ if (!components.some((item) => item.id === name)) throw new Error(`Missing src/content/components/${name}/meta.json`);
27
+ }
28
+ // Every component shows every tab. A tab without a file shows the "In development" notice.
29
+ return components.flatMap((component) =>
30
+ componentTabs.map((tab) => ({
31
+ params: { name: component.id, tab },
32
+ props: { page: pages.find((p) => p.id === `${component.id}/${tab}`), component, tabs: [...componentTabs], current: tab },
33
+ })),
34
+ );
35
+ }
36
+
37
+ export async function newsPaths() {
38
+ const posts = await getCollection('news');
39
+ return posts.map((post) => ({ params: { slug: post.id }, props: { post } }));
40
+ }
@@ -0,0 +1,40 @@
1
+ // Vietnamese descriptions of design tokens, shown on /vi/ pages. The token files (tokens/*.json)
2
+ // keep one English description; a token missing here shows that English text.
3
+ export const tokenDescriptionsVi: Record<string, string> = {
4
+ 'breakpoint.xs': 'Điện thoại và cửa sổ nhỏ, dưới 768 px. Một bố cục co giãn: 4 cột, gutter và lề 16 px, menu bên nằm trong drawer. Phải dùng được tới 320 px.',
5
+ 'breakpoint.md': 'Máy tính bảng và cửa sổ hẹp. 8 cột, gutter và lề 24 px. Menu bên vẫn nằm trong drawer.',
6
+ 'breakpoint.lg': 'Laptop từ 1024 px, kể cả màn hình 1280 và 1366 px. 12 cột. Menu bên mở ở 280 px; người dùng có thể thu thành rail 64 px.',
7
+ 'breakpoint.xl': 'Máy bàn, kể cả màn hình 1536 và 1920 px. Lề trang 32 px.',
8
+ 'size.control.small': '24 px. Chiều cao control cỡ nhỏ: bảng dày đặc và thanh công cụ của chúng, bộ lọc, tag. Padding ngang space.100.',
9
+ 'size.control.default': '32 px. Chiều cao của nút, ô nhập, select, segmented control và tab ở mọi chỗ còn lại: form, header, thanh công cụ. Padding ngang space.150.',
10
+ 'size.control.large': '40 px. Chiều cao control ở trang đăng nhập và onboarding. Có thể dùng cho thao tác chính trên màn hình cảm ứng.',
11
+ 'size.target.minimum': '24 px. Vùng nhỏ nhất phản hồi khi bấm hoặc chạm (WCAG 2.2 SC 2.5.8). Mọi control và nút icon đều có cỡ ít nhất bằng mức này.',
12
+ 'size.target.touch': '44 px. Vùng phản hồi khi chạm trên màn hình cảm ứng. Mở rộng vùng bấm quanh control nhỏ hơn; chiều cao nhìn thấy giữ nguyên.',
13
+ 'space.0': '0. Các phần tử dính liền, như các nút trong một segmented group.',
14
+ 'space.025': '2 px. Badge trên icon, chấm trạng thái cạnh chữ. Không dùng giữa các control hay làm padding.',
15
+ 'space.050': '4 px. Giữa icon và chữ 14 px; giữa tiêu đề và mô tả.',
16
+ 'space.075': '6 px. Chỉ dùng bên trong component: trên và dưới nhãn của control 32 px, và hai bên tooltip. Không dùng cho bố cục, khoảng cách giữa các phần hay padding của card.',
17
+ 'space.100': '8 px. Giữa icon và chữ 16 px; giữa các nút; giữa nhãn và ô nhập; padding ngang của control 24 px.',
18
+ 'space.150': '12 px. Padding ngang của control 32 px, như ô nhập và nút.',
19
+ 'space.200': '16 px. Giữa các phần tử liên quan: ô nhập, mục danh sách, card. Lề trang và gutter lưới dưới 768 px.',
20
+ 'space.250': '20 px. Giữa tiêu đề phần và nội dung của nó. Mép của logo và icon menu bên.',
21
+ 'space.300': '24 px. Bên trong card, panel và dialog. Lề trang và gutter lưới từ 768 px.',
22
+ 'space.400': '32 px. Giữa các nhóm, như các phần của form. Lề trang từ 1440 px.',
23
+ 'space.500': '40 px. Quanh trạng thái trống.',
24
+ 'space.600': '48 px. Giữa các phần của trang.',
25
+ 'space.800': '64 px. Giữa các phần lớn của một trang dài. Độ rộng menu bên khi thu gọn.',
26
+ 'space.1000': '80 px. Phía trên và dưới trang đăng nhập và onboarding. Hiếm khi dùng.',
27
+ 'radius.0': '0. Mép chạm cạnh màn hình, bảng tràn hết chiều ngang và header của trang.',
28
+ 'radius.025': '2 px. Phần nằm trong một control, cách mép 6 px.',
29
+ 'radius.050': '4 px. Checkbox, tag, badge và mục menu; phần nằm trong một control, cách mép 4 px.',
30
+ 'radius.075': '6 px. Không gán cho component nào. Chỉ dùng khi quy tắc lồng nhau cho ra 6 px.',
31
+ 'radius.100': '8 px. Button, ô nhập, select, menu, popover, tooltip và alert.',
32
+ 'radius.150': '12 px. Card, và nhóm control có padding 4 px.',
33
+ 'radius.200': '16 px. Dialog, drawer, và nhóm control có padding 8 px.',
34
+ 'radius.full': 'Viên thuốc và hình tròn. Avatar, switch và chip dạng viên thuốc.',
35
+ 'border.width.default': '1 px. Ô nhập, button phụ, card, bảng và đường phân cách.',
36
+ 'border.width.selected': '2 px. Thanh dưới tab đang chọn hoặc cạnh mục side nav đang chọn, và viền card đang chọn. Đi cùng color.border.selected.',
37
+ 'border.width.focused': '2 px. Focus ring. Đi cùng color.border.focus và state.focus.offset.',
38
+ 'border.width.accent': '4 px. Thanh trạng thái hoặc nhấn mạnh ở một cạnh: alert, banner, dòng bị lỗi, callout và trích dẫn. Đi cùng màu viền trạng thái hoặc màu brand.',
39
+ 'state.focus.offset': '2 px. Khoảng giữa control và focus ring. Ring vẽ ra ngoài; trong khung cắt mất ring (mục menu, ô bảng, tab trong vùng cuộn) thì dùng giá trị âm.',
40
+ };