@lexibase/rdx-types 2.3.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/config.d.ts CHANGED
@@ -21,6 +21,18 @@ export type RDXConfig = {
21
21
  * @defaultValue false
22
22
  */
23
23
  search?: boolean
24
+ /** Syntax highlighting for Markdown code blocks. */
25
+ syntaxHighlighting?: {
26
+ /** Project-relative TextMate JSON files keyed by the fence language. */
27
+ languages?: Record<string, string>
28
+ /** Bundled Shiki theme names for each site appearance. */
29
+ themes?: {
30
+ /** @defaultValue 'github-light' */
31
+ light?: string
32
+ /** @defaultValue 'github-dark' */
33
+ dark?: string
34
+ }
35
+ }
24
36
  /**
25
37
  * Enable floating heading navigation on documentation pages.
26
38
  * Hidden when a page has too few sections to navigate.
@@ -103,6 +115,14 @@ export type RDXConfig = {
103
115
  }
104
116
  }
105
117
 
118
+ /** Values available to a project-owned homepage. */
119
+ export type RdxHomepageProps = {
120
+ /** Active language tag, such as 'en' or 'pt-BR'. */
121
+ lang: string
122
+ /** Documentation entry point for the active language. */
123
+ docsHref: string
124
+ }
125
+
106
126
  /** Options for the built-in landing page or a project-owned home.tsx component. */
107
127
  export type RdxHomepage = {
108
128
  /**
@@ -112,17 +132,17 @@ export type RdxHomepage = {
112
132
  enabled?: boolean
113
133
  /**
114
134
  * Imported React component that owns the homepage body.
115
- * The shared navbar remains; built-in title, description and buttons are not
116
- * injected into this component. Used only when enabled is true.
135
+ * The shared navbar remains. Use the lang and docsHref props to localize the
136
+ * homepage content and navigation. Used only when enabled is true.
117
137
  * @example
118
138
  * component: Home // import Home from './home'
119
139
  */
120
- component?: ComponentType
140
+ component?: ComponentType<RdxHomepageProps>
121
141
  /** Built-in homepage heading. Defaults to metadata.applicationName. */
122
142
  title?: string
123
- /** Optional text below the built-in heading; omitted means no description. */
143
+ /** Text below the built-in heading. Defaults to the site description. */
124
144
  description?: string
125
- /** Buttons below the built-in description. The first button is primary. */
145
+ /** Hero buttons. The first is primary. Defaults to a Docs link; use [] to hide it. */
126
146
  buttons?: {
127
147
  /** Visible button text and accessible name; must not be empty. */
128
148
  label: string
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export { RdxSearchEntry, RdxSearchIndex } from './search'
3
3
  export {
4
4
  RDXConfig,
5
5
  RdxHomepage,
6
+ RdxHomepageProps,
6
7
  RdxMetadata,
7
8
  RdxRuntimeConfig,
8
9
  ResolvedRdxConfig,
package/dist/plugins.d.ts CHANGED
@@ -93,8 +93,10 @@ export type RdxProject = {
93
93
  config: ResolvedRdxConfig
94
94
  sources: RdxContentSource[]
95
95
  commands: RdxPluginCommand[]
96
- /** Project-relative files plugins need when serving deployed documentation. */
96
+ /** Project-relative files needed when serving deployed documentation. */
97
97
  runtimeFiles: string[]
98
+ /** Parsed project-owned TextMate grammars, registered under their fence names. */
99
+ syntaxGrammars?: { name: string; scopeName: string; patterns: unknown[] }[]
98
100
  localization?: RdxLocalization
99
101
  /** Selected locale on a request-scoped view, never a global mutable setting. */
100
102
  locale?: RdxLocale
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lexibase/rdx-types",
3
- "version": "2.3.0",
3
+ "version": "2.5.0",
4
4
  "license": "MIT",
5
5
  "description": "Shared TypeScript types for RDX documentation projects.",
6
6
  "types": "./dist/index.d.ts",