blume 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/cli/index.js +1921 -560
  2. package/dist/cli/index.js.map +36 -24
  3. package/dist/types/core/data.d.ts +16 -0
  4. package/dist/types/core/define-components.d.ts +9 -2
  5. package/dist/types/core/diagnostics.d.ts +5 -0
  6. package/dist/types/core/schema.d.ts +26 -502
  7. package/dist/types/core/types.d.ts +2 -2
  8. package/docs/02-deployment.mdx +21 -2
  9. package/docs/advanced/custom-pages.mdx +63 -1
  10. package/docs/configuration/ai.mdx +20 -3
  11. package/docs/configuration/customization.mdx +103 -5
  12. package/docs/configuration/index.mdx +13 -0
  13. package/docs/configuration/seo.mdx +5 -0
  14. package/docs/content/islands.mdx +73 -0
  15. package/docs/content/navigation.mdx +25 -0
  16. package/docs/index.mdx +3 -12
  17. package/docs/reference/cli.mdx +42 -0
  18. package/package.json +3 -1
  19. package/src/ai/ask-context.ts +131 -0
  20. package/src/ai/ask-data.ts +25 -0
  21. package/src/astro/component-slots.ts +165 -0
  22. package/src/astro/generate.ts +132 -13
  23. package/src/astro/integration.ts +59 -0
  24. package/src/astro/pages.ts +5 -12
  25. package/src/astro/templates.ts +92 -44
  26. package/src/blume-modules.d.ts +25 -0
  27. package/src/cli/commands/build.ts +186 -1
  28. package/src/cli/commands/check.ts +62 -0
  29. package/src/cli/commands/dev.ts +21 -1
  30. package/src/cli/commands/doctor.ts +23 -6
  31. package/src/cli/commands/init.ts +163 -15
  32. package/src/cli/commands/validate.ts +16 -2
  33. package/src/cli/index.ts +15 -0
  34. package/src/cli/internal-error.ts +63 -0
  35. package/src/cli/log.ts +30 -1
  36. package/src/cli/prepare.ts +17 -3
  37. package/src/cli/required-secrets.ts +44 -0
  38. package/src/components/BlumePage.astro +107 -0
  39. package/src/components/index.ts +3 -3
  40. package/src/components/islands/ask-ai.tsx +15 -1
  41. package/src/components/islands/hooks.ts +188 -0
  42. package/src/components/layout/Empty.astro +6 -0
  43. package/src/components/layout/Header.astro +24 -39
  44. package/src/components/layout/Logo.astro +50 -0
  45. package/src/components/layout/NavSelector.astro +75 -0
  46. package/src/components/layout/PageLayout.astro +38 -2
  47. package/src/components/layout/RootLayout.astro +70 -4
  48. package/src/components/layout/hydration-hint.ts +30 -0
  49. package/src/components/layout/overrides.ts +6 -4
  50. package/src/components/props.ts +68 -0
  51. package/src/core/builtin-tags.ts +39 -0
  52. package/src/core/component-diagnostics.ts +44 -0
  53. package/src/core/component-overrides.ts +478 -0
  54. package/src/core/config.ts +8 -0
  55. package/src/core/data.ts +14 -0
  56. package/src/core/define-components.ts +9 -2
  57. package/src/core/diagnostics.ts +90 -1
  58. package/src/core/graph.ts +7 -0
  59. package/src/core/nav-diagnostics.ts +205 -0
  60. package/src/core/project-graph.ts +40 -1
  61. package/src/core/schema.ts +28 -96
  62. package/src/core/sources/normalize.ts +51 -0
  63. package/src/core/types.ts +2 -2
  64. package/src/deploy/redirects.ts +43 -0
  65. package/src/migrate/mintlify/config.ts +1 -176
  66. package/src/migrate/starlight/config.ts +0 -4
  67. package/src/og/card.ts +163 -38
  68. package/src/registry/eject.ts +39 -9
  69. package/src/registry/registry.ts +166 -0
  70. package/src/runtime/index.ts +61 -0
  71. package/src/vite-env.d.ts +14 -0
@@ -847,7 +847,6 @@ declare const openapiSourceSchema: z.ZodObject<{
847
847
  route?: string | undefined;
848
848
  }>;
849
849
  export type OpenApiSource = z.infer<typeof openapiSourceSchema>;
850
- /** Full user-facing config schema. All fields optional with defaults. */
851
850
  export declare const blumeConfigSchema: z.ZodObject<{
852
851
  ai: z.ZodDefault<z.ZodObject<{
853
852
  ask: z.ZodOptional<z.ZodEffects<z.ZodObject<{
@@ -1491,41 +1490,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
1491
1490
  source: ContentSource;
1492
1491
  })[] | undefined;
1493
1492
  }>>;
1494
- contextual: z.ZodDefault<z.ZodObject<{
1495
- display: z.ZodDefault<z.ZodEnum<["header", "toc"]>>;
1496
- options: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
1497
- description: z.ZodOptional<z.ZodString>;
1498
- href: z.ZodOptional<z.ZodString>;
1499
- icon: z.ZodOptional<z.ZodString>;
1500
- title: z.ZodString;
1501
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1502
- description: z.ZodOptional<z.ZodString>;
1503
- href: z.ZodOptional<z.ZodString>;
1504
- icon: z.ZodOptional<z.ZodString>;
1505
- title: z.ZodString;
1506
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1507
- description: z.ZodOptional<z.ZodString>;
1508
- href: z.ZodOptional<z.ZodString>;
1509
- icon: z.ZodOptional<z.ZodString>;
1510
- title: z.ZodString;
1511
- }, z.ZodTypeAny, "passthrough">>]>, "many">>;
1512
- }, "strict", z.ZodTypeAny, {
1513
- display: "toc" | "header";
1514
- options: (string | z.objectOutputType<{
1515
- description: z.ZodOptional<z.ZodString>;
1516
- href: z.ZodOptional<z.ZodString>;
1517
- icon: z.ZodOptional<z.ZodString>;
1518
- title: z.ZodString;
1519
- }, z.ZodTypeAny, "passthrough">)[];
1520
- }, {
1521
- display?: "toc" | "header" | undefined;
1522
- options?: (string | z.objectInputType<{
1523
- description: z.ZodOptional<z.ZodString>;
1524
- href: z.ZodOptional<z.ZodString>;
1525
- icon: z.ZodOptional<z.ZodString>;
1526
- title: z.ZodString;
1527
- }, z.ZodTypeAny, "passthrough">)[] | undefined;
1528
- }>>;
1529
1493
  deployment: z.ZodDefault<z.ZodObject<{
1530
1494
  adapter: z.ZodDefault<z.ZodNullable<z.ZodEnum<["vercel", "node", "netlify", "cloudflare"]>>>;
1531
1495
  base: z.ZodOptional<z.ZodString>;
@@ -1584,52 +1548,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
1584
1548
  light?: string | undefined;
1585
1549
  }>]>>;
1586
1550
  feedback: z.ZodDefault<z.ZodBoolean>;
1587
- footer: z.ZodDefault<z.ZodObject<{
1588
- links: z.ZodDefault<z.ZodArray<z.ZodObject<{
1589
- header: z.ZodOptional<z.ZodString>;
1590
- items: z.ZodDefault<z.ZodArray<z.ZodObject<{
1591
- href: z.ZodString;
1592
- label: z.ZodString;
1593
- }, "strict", z.ZodTypeAny, {
1594
- label: string;
1595
- href: string;
1596
- }, {
1597
- label: string;
1598
- href: string;
1599
- }>, "many">>;
1600
- }, "strict", z.ZodTypeAny, {
1601
- items: {
1602
- label: string;
1603
- href: string;
1604
- }[];
1605
- header?: string | undefined;
1606
- }, {
1607
- items?: {
1608
- label: string;
1609
- href: string;
1610
- }[] | undefined;
1611
- header?: string | undefined;
1612
- }>, "many">>;
1613
- socials: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1614
- }, "strict", z.ZodTypeAny, {
1615
- links: {
1616
- items: {
1617
- label: string;
1618
- href: string;
1619
- }[];
1620
- header?: string | undefined;
1621
- }[];
1622
- socials: Record<string, string>;
1623
- }, {
1624
- links?: {
1625
- items?: {
1626
- label: string;
1627
- href: string;
1628
- }[] | undefined;
1629
- header?: string | undefined;
1630
- }[] | undefined;
1631
- socials?: Record<string, string> | undefined;
1632
- }>>;
1633
1551
  github: z.ZodOptional<z.ZodObject<{
1634
1552
  branch: z.ZodDefault<z.ZodString>;
1635
1553
  /** Path from the repo root to the project root (for monorepos). */
@@ -1716,13 +1634,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
1716
1634
  parser?: "dir" | "dot" | undefined;
1717
1635
  ui?: Record<string, Record<string, Record<string, string>>> | undefined;
1718
1636
  }>>;
1719
- icons: z.ZodDefault<z.ZodObject<{
1720
- library: z.ZodDefault<z.ZodEnum<["fontawesome", "lucide", "tabler"]>>;
1721
- }, "strict", z.ZodTypeAny, {
1722
- library: "fontawesome" | "lucide" | "tabler";
1723
- }, {
1724
- library?: "fontawesome" | "lucide" | "tabler" | undefined;
1725
- }>>;
1726
1637
  lastModified: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
1727
1638
  type: z.ZodDefault<z.ZodEnum<["git", "frontmatter"]>>;
1728
1639
  }, "strict", z.ZodTypeAny, {
@@ -1861,79 +1772,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
1861
1772
  name?: string | undefined;
1862
1773
  route?: string | undefined;
1863
1774
  }>>;
1864
- navbar: z.ZodDefault<z.ZodObject<{
1865
- links: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodObject<{
1866
- href: z.ZodString;
1867
- icon: z.ZodOptional<z.ZodString>;
1868
- label: z.ZodOptional<z.ZodString>;
1869
- type: z.ZodOptional<z.ZodEnum<["github", "discord"]>>;
1870
- }, "strict", z.ZodTypeAny, {
1871
- href: string;
1872
- type?: "github" | "discord" | undefined;
1873
- label?: string | undefined;
1874
- icon?: string | undefined;
1875
- }, {
1876
- href: string;
1877
- type?: "github" | "discord" | undefined;
1878
- label?: string | undefined;
1879
- icon?: string | undefined;
1880
- }>, {
1881
- href: string;
1882
- type?: "github" | "discord" | undefined;
1883
- label?: string | undefined;
1884
- icon?: string | undefined;
1885
- }, {
1886
- href: string;
1887
- type?: "github" | "discord" | undefined;
1888
- label?: string | undefined;
1889
- icon?: string | undefined;
1890
- }>, "many">>;
1891
- primary: z.ZodOptional<z.ZodEffects<z.ZodObject<{
1892
- href: z.ZodString;
1893
- label: z.ZodOptional<z.ZodString>;
1894
- type: z.ZodDefault<z.ZodEnum<["button", "github", "discord"]>>;
1895
- }, "strict", z.ZodTypeAny, {
1896
- type: "button" | "github" | "discord";
1897
- href: string;
1898
- label?: string | undefined;
1899
- }, {
1900
- href: string;
1901
- type?: "button" | "github" | "discord" | undefined;
1902
- label?: string | undefined;
1903
- }>, {
1904
- type: "button" | "github" | "discord";
1905
- href: string;
1906
- label?: string | undefined;
1907
- }, {
1908
- href: string;
1909
- type?: "button" | "github" | "discord" | undefined;
1910
- label?: string | undefined;
1911
- }>>;
1912
- }, "strict", z.ZodTypeAny, {
1913
- links: {
1914
- href: string;
1915
- type?: "github" | "discord" | undefined;
1916
- label?: string | undefined;
1917
- icon?: string | undefined;
1918
- }[];
1919
- primary?: {
1920
- type: "button" | "github" | "discord";
1921
- href: string;
1922
- label?: string | undefined;
1923
- } | undefined;
1924
- }, {
1925
- links?: {
1926
- href: string;
1927
- type?: "github" | "discord" | undefined;
1928
- label?: string | undefined;
1929
- icon?: string | undefined;
1930
- }[] | undefined;
1931
- primary?: {
1932
- href: string;
1933
- type?: "button" | "github" | "discord" | undefined;
1934
- label?: string | undefined;
1935
- } | undefined;
1936
- }>>;
1937
1775
  navigation: z.ZodDefault<z.ZodObject<{
1938
1776
  chromeVariants: z.ZodDefault<z.ZodArray<z.ZodObject<{
1939
1777
  banner: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodObject<{
@@ -1998,125 +1836,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
1998
1836
  text: string;
1999
1837
  } | undefined;
2000
1838
  }>]>>;
2001
- footer: z.ZodOptional<z.ZodObject<{
2002
- links: z.ZodDefault<z.ZodArray<z.ZodObject<{
2003
- header: z.ZodOptional<z.ZodString>;
2004
- items: z.ZodDefault<z.ZodArray<z.ZodObject<{
2005
- href: z.ZodString;
2006
- label: z.ZodString;
2007
- }, "strict", z.ZodTypeAny, {
2008
- label: string;
2009
- href: string;
2010
- }, {
2011
- label: string;
2012
- href: string;
2013
- }>, "many">>;
2014
- }, "strict", z.ZodTypeAny, {
2015
- items: {
2016
- label: string;
2017
- href: string;
2018
- }[];
2019
- header?: string | undefined;
2020
- }, {
2021
- items?: {
2022
- label: string;
2023
- href: string;
2024
- }[] | undefined;
2025
- header?: string | undefined;
2026
- }>, "many">>;
2027
- socials: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
2028
- }, "strict", z.ZodTypeAny, {
2029
- links: {
2030
- items: {
2031
- label: string;
2032
- href: string;
2033
- }[];
2034
- header?: string | undefined;
2035
- }[];
2036
- socials: Record<string, string>;
2037
- }, {
2038
- links?: {
2039
- items?: {
2040
- label: string;
2041
- href: string;
2042
- }[] | undefined;
2043
- header?: string | undefined;
2044
- }[] | undefined;
2045
- socials?: Record<string, string> | undefined;
2046
- }>>;
2047
- navbar: z.ZodOptional<z.ZodObject<{
2048
- links: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodObject<{
2049
- href: z.ZodString;
2050
- icon: z.ZodOptional<z.ZodString>;
2051
- label: z.ZodOptional<z.ZodString>;
2052
- type: z.ZodOptional<z.ZodEnum<["github", "discord"]>>;
2053
- }, "strict", z.ZodTypeAny, {
2054
- href: string;
2055
- type?: "github" | "discord" | undefined;
2056
- label?: string | undefined;
2057
- icon?: string | undefined;
2058
- }, {
2059
- href: string;
2060
- type?: "github" | "discord" | undefined;
2061
- label?: string | undefined;
2062
- icon?: string | undefined;
2063
- }>, {
2064
- href: string;
2065
- type?: "github" | "discord" | undefined;
2066
- label?: string | undefined;
2067
- icon?: string | undefined;
2068
- }, {
2069
- href: string;
2070
- type?: "github" | "discord" | undefined;
2071
- label?: string | undefined;
2072
- icon?: string | undefined;
2073
- }>, "many">>;
2074
- primary: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2075
- href: z.ZodString;
2076
- label: z.ZodOptional<z.ZodString>;
2077
- type: z.ZodDefault<z.ZodEnum<["button", "github", "discord"]>>;
2078
- }, "strict", z.ZodTypeAny, {
2079
- type: "button" | "github" | "discord";
2080
- href: string;
2081
- label?: string | undefined;
2082
- }, {
2083
- href: string;
2084
- type?: "button" | "github" | "discord" | undefined;
2085
- label?: string | undefined;
2086
- }>, {
2087
- type: "button" | "github" | "discord";
2088
- href: string;
2089
- label?: string | undefined;
2090
- }, {
2091
- href: string;
2092
- type?: "button" | "github" | "discord" | undefined;
2093
- label?: string | undefined;
2094
- }>>;
2095
- }, "strict", z.ZodTypeAny, {
2096
- links: {
2097
- href: string;
2098
- type?: "github" | "discord" | undefined;
2099
- label?: string | undefined;
2100
- icon?: string | undefined;
2101
- }[];
2102
- primary?: {
2103
- type: "button" | "github" | "discord";
2104
- href: string;
2105
- label?: string | undefined;
2106
- } | undefined;
2107
- }, {
2108
- links?: {
2109
- href: string;
2110
- type?: "github" | "discord" | undefined;
2111
- label?: string | undefined;
2112
- icon?: string | undefined;
2113
- }[] | undefined;
2114
- primary?: {
2115
- href: string;
2116
- type?: "button" | "github" | "discord" | undefined;
2117
- label?: string | undefined;
2118
- } | undefined;
2119
- }>>;
2120
1839
  path: z.ZodString;
2121
1840
  }, "strict", z.ZodTypeAny, {
2122
1841
  path: string;
@@ -2134,29 +1853,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2134
1853
  text: string;
2135
1854
  } | undefined;
2136
1855
  } | undefined;
2137
- footer?: {
2138
- links: {
2139
- items: {
2140
- label: string;
2141
- href: string;
2142
- }[];
2143
- header?: string | undefined;
2144
- }[];
2145
- socials: Record<string, string>;
2146
- } | undefined;
2147
- navbar?: {
2148
- links: {
2149
- href: string;
2150
- type?: "github" | "discord" | undefined;
2151
- label?: string | undefined;
2152
- icon?: string | undefined;
2153
- }[];
2154
- primary?: {
2155
- type: "button" | "github" | "discord";
2156
- href: string;
2157
- label?: string | undefined;
2158
- } | undefined;
2159
- } | undefined;
2160
1856
  }, {
2161
1857
  path: string;
2162
1858
  banner?: string | {
@@ -2173,29 +1869,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2173
1869
  text: string;
2174
1870
  } | undefined;
2175
1871
  } | undefined;
2176
- footer?: {
2177
- links?: {
2178
- items?: {
2179
- label: string;
2180
- href: string;
2181
- }[] | undefined;
2182
- header?: string | undefined;
2183
- }[] | undefined;
2184
- socials?: Record<string, string> | undefined;
2185
- } | undefined;
2186
- navbar?: {
2187
- links?: {
2188
- href: string;
2189
- type?: "github" | "discord" | undefined;
2190
- label?: string | undefined;
2191
- icon?: string | undefined;
2192
- }[] | undefined;
2193
- primary?: {
2194
- href: string;
2195
- type?: "button" | "github" | "discord" | undefined;
2196
- label?: string | undefined;
2197
- } | undefined;
2198
- } | undefined;
2199
1872
  }>, "many">>;
2200
1873
  /** Show a GitHub repo link in the header (requires `github` configured). */
2201
1874
  repo: z.ZodDefault<z.ZodBoolean>;
@@ -2318,29 +1991,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2318
1991
  text: string;
2319
1992
  } | undefined;
2320
1993
  } | undefined;
2321
- footer?: {
2322
- links: {
2323
- items: {
2324
- label: string;
2325
- href: string;
2326
- }[];
2327
- header?: string | undefined;
2328
- }[];
2329
- socials: Record<string, string>;
2330
- } | undefined;
2331
- navbar?: {
2332
- links: {
2333
- href: string;
2334
- type?: "github" | "discord" | undefined;
2335
- label?: string | undefined;
2336
- icon?: string | undefined;
2337
- }[];
2338
- primary?: {
2339
- type: "button" | "github" | "discord";
2340
- href: string;
2341
- label?: string | undefined;
2342
- } | undefined;
2343
- } | undefined;
2344
1994
  }[];
2345
1995
  selectors: {
2346
1996
  label: string;
@@ -2389,29 +2039,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2389
2039
  text: string;
2390
2040
  } | undefined;
2391
2041
  } | undefined;
2392
- footer?: {
2393
- links?: {
2394
- items?: {
2395
- label: string;
2396
- href: string;
2397
- }[] | undefined;
2398
- header?: string | undefined;
2399
- }[] | undefined;
2400
- socials?: Record<string, string> | undefined;
2401
- } | undefined;
2402
- navbar?: {
2403
- links?: {
2404
- href: string;
2405
- type?: "github" | "discord" | undefined;
2406
- label?: string | undefined;
2407
- icon?: string | undefined;
2408
- }[] | undefined;
2409
- primary?: {
2410
- href: string;
2411
- type?: "button" | "github" | "discord" | undefined;
2412
- label?: string | undefined;
2413
- } | undefined;
2414
- } | undefined;
2415
2042
  }[] | undefined;
2416
2043
  selectors?: {
2417
2044
  label: string;
@@ -2731,13 +2358,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2731
2358
  sitemap?: boolean | undefined;
2732
2359
  structuredData?: boolean | undefined;
2733
2360
  }>>;
2734
- styling: z.ZodDefault<z.ZodObject<{
2735
- eyebrows: z.ZodDefault<z.ZodEnum<["breadcrumbs", "section"]>>;
2736
- }, "strict", z.ZodTypeAny, {
2737
- eyebrows: "breadcrumbs" | "section";
2738
- }, {
2739
- eyebrows?: "breadcrumbs" | "section" | undefined;
2740
- }>>;
2741
2361
  theme: z.ZodDefault<z.ZodObject<{
2742
2362
  accent: z.ZodDefault<z.ZodString>;
2743
2363
  accentDark: z.ZodOptional<z.ZodString>;
@@ -2802,6 +2422,23 @@ export declare const blumeConfigSchema: z.ZodObject<{
2802
2422
  radius?: "md" | "none" | "sm" | "lg" | undefined;
2803
2423
  }>>;
2804
2424
  title: z.ZodDefault<z.ZodString>;
2425
+ toc: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
2426
+ maxHeadingLevel: z.ZodOptional<z.ZodNumber>;
2427
+ minHeadingLevel: z.ZodOptional<z.ZodNumber>;
2428
+ }, "strict", z.ZodTypeAny, {
2429
+ maxHeadingLevel?: number | undefined;
2430
+ minHeadingLevel?: number | undefined;
2431
+ }, {
2432
+ maxHeadingLevel?: number | undefined;
2433
+ minHeadingLevel?: number | undefined;
2434
+ }>]>>, {
2435
+ enabled: boolean;
2436
+ maxLevel: number;
2437
+ minLevel: number;
2438
+ }, boolean | {
2439
+ maxHeadingLevel?: number | undefined;
2440
+ minHeadingLevel?: number | undefined;
2441
+ } | undefined>;
2805
2442
  variables: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
2806
2443
  }, "strict", z.ZodTypeAny, {
2807
2444
  title: string;
@@ -2833,6 +2470,11 @@ export declare const blumeConfigSchema: z.ZodObject<{
2833
2470
  } | undefined;
2834
2471
  prompt?: string | undefined;
2835
2472
  };
2473
+ toc: {
2474
+ enabled: boolean;
2475
+ maxLevel: number;
2476
+ minLevel: number;
2477
+ };
2836
2478
  lastModified: boolean | {
2837
2479
  type: "git" | "frontmatter";
2838
2480
  };
@@ -2926,29 +2568,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2926
2568
  })[] | undefined;
2927
2569
  };
2928
2570
  variables: Record<string, string>;
2929
- footer: {
2930
- links: {
2931
- items: {
2932
- label: string;
2933
- href: string;
2934
- }[];
2935
- header?: string | undefined;
2936
- }[];
2937
- socials: Record<string, string>;
2938
- };
2939
- navbar: {
2940
- links: {
2941
- href: string;
2942
- type?: "github" | "discord" | undefined;
2943
- label?: string | undefined;
2944
- icon?: string | undefined;
2945
- }[];
2946
- primary?: {
2947
- type: "button" | "github" | "discord";
2948
- href: string;
2949
- label?: string | undefined;
2950
- } | undefined;
2951
- };
2952
2571
  theme: {
2953
2572
  strict: boolean;
2954
2573
  mode: "dark" | "light" | "system";
@@ -2968,9 +2587,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2968
2587
  backgroundImage?: string | undefined;
2969
2588
  backgroundImageDark?: string | undefined;
2970
2589
  };
2971
- icons: {
2972
- library: "fontawesome" | "lucide" | "tabler";
2973
- };
2974
2590
  ai: {
2975
2591
  llmsTxt: boolean;
2976
2592
  ask?: {
@@ -2992,15 +2608,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
2992
2608
  theme?: string | undefined;
2993
2609
  spec?: string | undefined;
2994
2610
  };
2995
- contextual: {
2996
- display: "toc" | "header";
2997
- options: (string | z.objectOutputType<{
2998
- description: z.ZodOptional<z.ZodString>;
2999
- href: z.ZodOptional<z.ZodString>;
3000
- icon: z.ZodOptional<z.ZodString>;
3001
- title: z.ZodString;
3002
- }, z.ZodTypeAny, "passthrough">)[];
3003
- };
3004
2611
  deployment: {
3005
2612
  adapter: "vercel" | "node" | "netlify" | "cloudflare" | null;
3006
2613
  output: "static" | "server";
@@ -3052,29 +2659,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3052
2659
  text: string;
3053
2660
  } | undefined;
3054
2661
  } | undefined;
3055
- footer?: {
3056
- links: {
3057
- items: {
3058
- label: string;
3059
- href: string;
3060
- }[];
3061
- header?: string | undefined;
3062
- }[];
3063
- socials: Record<string, string>;
3064
- } | undefined;
3065
- navbar?: {
3066
- links: {
3067
- href: string;
3068
- type?: "github" | "discord" | undefined;
3069
- label?: string | undefined;
3070
- icon?: string | undefined;
3071
- }[];
3072
- primary?: {
3073
- type: "button" | "github" | "discord";
3074
- href: string;
3075
- label?: string | undefined;
3076
- } | undefined;
3077
- } | undefined;
3078
2662
  }[];
3079
2663
  selectors: {
3080
2664
  label: string;
@@ -3121,9 +2705,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3121
2705
  from: string;
3122
2706
  to: string;
3123
2707
  }[];
3124
- styling: {
3125
- eyebrows: "breadcrumbs" | "section";
3126
- };
3127
2708
  description?: string | undefined;
3128
2709
  github?: {
3129
2710
  owner: string;
@@ -3210,6 +2791,10 @@ export declare const blumeConfigSchema: z.ZodObject<{
3210
2791
  prompt?: string | undefined;
3211
2792
  provider?: "none" | "orama" | "pagefind" | "flexsearch" | "algolia" | "orama-cloud" | "typesense" | "mixedbread" | undefined;
3212
2793
  } | undefined;
2794
+ toc?: boolean | {
2795
+ maxHeadingLevel?: number | undefined;
2796
+ minHeadingLevel?: number | undefined;
2797
+ } | undefined;
3213
2798
  description?: string | undefined;
3214
2799
  lastModified?: boolean | {
3215
2800
  type?: "git" | "frontmatter" | undefined;
@@ -3324,29 +2909,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3324
2909
  text: string;
3325
2910
  } | undefined;
3326
2911
  } | undefined;
3327
- footer?: {
3328
- links?: {
3329
- items?: {
3330
- label: string;
3331
- href: string;
3332
- }[] | undefined;
3333
- header?: string | undefined;
3334
- }[] | undefined;
3335
- socials?: Record<string, string> | undefined;
3336
- } | undefined;
3337
- navbar?: {
3338
- links?: {
3339
- href: string;
3340
- type?: "github" | "discord" | undefined;
3341
- label?: string | undefined;
3342
- icon?: string | undefined;
3343
- }[] | undefined;
3344
- primary?: {
3345
- href: string;
3346
- type?: "button" | "github" | "discord" | undefined;
3347
- label?: string | undefined;
3348
- } | undefined;
3349
- } | undefined;
3350
2912
  theme?: {
3351
2913
  strict?: boolean | undefined;
3352
2914
  mode?: "dark" | "light" | "system" | undefined;
@@ -3366,9 +2928,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3366
2928
  layout?: "sidebar" | undefined;
3367
2929
  radius?: "md" | "none" | "sm" | "lg" | undefined;
3368
2930
  } | undefined;
3369
- icons?: {
3370
- library?: "fontawesome" | "lucide" | "tabler" | undefined;
3371
- } | undefined;
3372
2931
  ai?: {
3373
2932
  ask?: {
3374
2933
  provider?: "gateway" | "openrouter" | "llmgateway" | "inkeep" | "openai-compatible" | undefined;
@@ -3403,15 +2962,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3403
2962
  theme?: string | undefined;
3404
2963
  spec?: string | undefined;
3405
2964
  } | undefined;
3406
- contextual?: {
3407
- display?: "toc" | "header" | undefined;
3408
- options?: (string | z.objectInputType<{
3409
- description: z.ZodOptional<z.ZodString>;
3410
- href: z.ZodOptional<z.ZodString>;
3411
- icon: z.ZodOptional<z.ZodString>;
3412
- title: z.ZodString;
3413
- }, z.ZodTypeAny, "passthrough">)[] | undefined;
3414
- } | undefined;
3415
2965
  deployment?: {
3416
2966
  adapter?: "vercel" | "node" | "netlify" | "cloudflare" | null | undefined;
3417
2967
  base?: string | undefined;
@@ -3486,29 +3036,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3486
3036
  text: string;
3487
3037
  } | undefined;
3488
3038
  } | undefined;
3489
- footer?: {
3490
- links?: {
3491
- items?: {
3492
- label: string;
3493
- href: string;
3494
- }[] | undefined;
3495
- header?: string | undefined;
3496
- }[] | undefined;
3497
- socials?: Record<string, string> | undefined;
3498
- } | undefined;
3499
- navbar?: {
3500
- links?: {
3501
- href: string;
3502
- type?: "github" | "discord" | undefined;
3503
- label?: string | undefined;
3504
- icon?: string | undefined;
3505
- }[] | undefined;
3506
- primary?: {
3507
- href: string;
3508
- type?: "button" | "github" | "discord" | undefined;
3509
- label?: string | undefined;
3510
- } | undefined;
3511
- } | undefined;
3512
3039
  }[] | undefined;
3513
3040
  selectors?: {
3514
3041
  label: string;
@@ -3554,9 +3081,6 @@ export declare const blumeConfigSchema: z.ZodObject<{
3554
3081
  to: string;
3555
3082
  status?: 301 | 302 | 307 | 308 | undefined;
3556
3083
  }[] | undefined;
3557
- styling?: {
3558
- eyebrows?: "breadcrumbs" | "section" | undefined;
3559
- } | undefined;
3560
3084
  }>;
3561
3085
  /** Resolved config: every field present after defaults are applied. */
3562
3086
  export type ResolvedConfig = z.infer<typeof blumeConfigSchema>;