@nanisoft/prism-llms 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/LICENSE +21 -0
  2. package/dist/data.json +557 -0
  3. package/dist/demo-graph.d.ts +24 -0
  4. package/dist/demo-graph.d.ts.map +1 -0
  5. package/dist/demo-graph.js +56 -0
  6. package/dist/demo-graph.js.map +1 -0
  7. package/dist/extractor.d.ts +37 -0
  8. package/dist/extractor.d.ts.map +1 -0
  9. package/dist/extractor.js +243 -0
  10. package/dist/extractor.js.map +1 -0
  11. package/dist/index.d.ts +10 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +9 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/llms-full.txt +1876 -0
  16. package/dist/llms.txt +98 -0
  17. package/dist/markdown.d.ts +42 -0
  18. package/dist/markdown.d.ts.map +1 -0
  19. package/dist/markdown.js +118 -0
  20. package/dist/markdown.js.map +1 -0
  21. package/dist/md/blocks/component-demo.md +19 -0
  22. package/dist/md/blocks/page-header.md +19 -0
  23. package/dist/md/components/affix.md +14 -0
  24. package/dist/md/components/alert.md +14 -0
  25. package/dist/md/components/anchor.md +14 -0
  26. package/dist/md/components/auto-complete.md +14 -0
  27. package/dist/md/components/avatar.md +14 -0
  28. package/dist/md/components/back-top.md +14 -0
  29. package/dist/md/components/badge.md +14 -0
  30. package/dist/md/components/border-beam.md +14 -0
  31. package/dist/md/components/breadcrumb.md +14 -0
  32. package/dist/md/components/button.md +14 -0
  33. package/dist/md/components/calendar.md +14 -0
  34. package/dist/md/components/card.md +14 -0
  35. package/dist/md/components/carousel.md +14 -0
  36. package/dist/md/components/cascader.md +14 -0
  37. package/dist/md/components/checkbox.md +14 -0
  38. package/dist/md/components/col.md +14 -0
  39. package/dist/md/components/collapse.md +14 -0
  40. package/dist/md/components/color-picker.md +14 -0
  41. package/dist/md/components/date-picker.md +14 -0
  42. package/dist/md/components/descriptions.md +14 -0
  43. package/dist/md/components/display-title.md +20 -0
  44. package/dist/md/components/divider.md +14 -0
  45. package/dist/md/components/drawer.md +14 -0
  46. package/dist/md/components/dropdown.md +14 -0
  47. package/dist/md/components/empty.md +14 -0
  48. package/dist/md/components/flex.md +14 -0
  49. package/dist/md/components/float-button.md +14 -0
  50. package/dist/md/components/form.md +14 -0
  51. package/dist/md/components/grid.md +14 -0
  52. package/dist/md/components/image.md +14 -0
  53. package/dist/md/components/input-number.md +14 -0
  54. package/dist/md/components/input.md +14 -0
  55. package/dist/md/components/layout.md +14 -0
  56. package/dist/md/components/list.md +14 -0
  57. package/dist/md/components/listy.md +14 -0
  58. package/dist/md/components/masonry.md +14 -0
  59. package/dist/md/components/mentions.md +14 -0
  60. package/dist/md/components/menu.md +14 -0
  61. package/dist/md/components/modal.md +14 -0
  62. package/dist/md/components/pagination.md +14 -0
  63. package/dist/md/components/popconfirm.md +14 -0
  64. package/dist/md/components/popover.md +14 -0
  65. package/dist/md/components/progress.md +14 -0
  66. package/dist/md/components/qrcode.md +14 -0
  67. package/dist/md/components/radio.md +14 -0
  68. package/dist/md/components/rate.md +14 -0
  69. package/dist/md/components/result.md +14 -0
  70. package/dist/md/components/row.md +14 -0
  71. package/dist/md/components/segmented.md +14 -0
  72. package/dist/md/components/select.md +14 -0
  73. package/dist/md/components/skeleton.md +14 -0
  74. package/dist/md/components/slider.md +14 -0
  75. package/dist/md/components/space.md +14 -0
  76. package/dist/md/components/spin.md +14 -0
  77. package/dist/md/components/splitter.md +14 -0
  78. package/dist/md/components/statistic.md +14 -0
  79. package/dist/md/components/steps.md +14 -0
  80. package/dist/md/components/switch.md +14 -0
  81. package/dist/md/components/table.md +14 -0
  82. package/dist/md/components/tabs.md +14 -0
  83. package/dist/md/components/tag.md +14 -0
  84. package/dist/md/components/time-picker.md +14 -0
  85. package/dist/md/components/timeline.md +14 -0
  86. package/dist/md/components/tooltip.md +14 -0
  87. package/dist/md/components/tour.md +14 -0
  88. package/dist/md/components/transfer.md +14 -0
  89. package/dist/md/components/tree-select.md +14 -0
  90. package/dist/md/components/tree.md +14 -0
  91. package/dist/md/components/typography.md +14 -0
  92. package/dist/md/components/upload.md +14 -0
  93. package/dist/md/components/watermark.md +14 -0
  94. package/dist/md/docs/brand.md +41 -0
  95. package/dist/md/pages/blog-layout.md +19 -0
  96. package/dist/md/pages/docs-shell.md +23 -0
  97. package/dist/md/theme/blue-dark.md +126 -0
  98. package/dist/md/theme/blue-light.md +128 -0
  99. package/dist/md/theme/green-dark.md +126 -0
  100. package/dist/md/theme/green-light.md +128 -0
  101. package/package.json +48 -0
package/dist/llms.txt ADDED
@@ -0,0 +1,98 @@
1
+ # Prism
2
+
3
+ > One design language, many expressions — Ant Design v6 components, blocks, and pages under the Prism theme. Apps always import from '@nanisoft/prism-ui', never from antd directly.
4
+
5
+ ## Guides
6
+
7
+ - [Brand policy](https://prism.nanisoft.com/md/docs/brand.md): What the MIT license covers, what it doesn't, and how the Prism and NaniSoft names may be used.
8
+
9
+ ## Components
10
+
11
+ - [Affix](https://prism.nanisoft.com/md/components/affix.md): antd Affix, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
12
+ - [Alert](https://prism.nanisoft.com/md/components/alert.md): antd Alert, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
13
+ - [Anchor](https://prism.nanisoft.com/md/components/anchor.md): antd Anchor, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
14
+ - [AutoComplete](https://prism.nanisoft.com/md/components/auto-complete.md): antd AutoComplete, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
15
+ - [Avatar](https://prism.nanisoft.com/md/components/avatar.md): antd Avatar, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
16
+ - [BackTop](https://prism.nanisoft.com/md/components/back-top.md): antd BackTop, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
17
+ - [Badge](https://prism.nanisoft.com/md/components/badge.md): antd Badge, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
18
+ - [BorderBeam](https://prism.nanisoft.com/md/components/border-beam.md): antd BorderBeam, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
19
+ - [Breadcrumb](https://prism.nanisoft.com/md/components/breadcrumb.md): antd Breadcrumb, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
20
+ - [Button](https://prism.nanisoft.com/md/components/button.md): antd Button, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
21
+ - [Calendar](https://prism.nanisoft.com/md/components/calendar.md): antd Calendar, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
22
+ - [Card](https://prism.nanisoft.com/md/components/card.md): antd Card, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
23
+ - [Carousel](https://prism.nanisoft.com/md/components/carousel.md): antd Carousel, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
24
+ - [Cascader](https://prism.nanisoft.com/md/components/cascader.md): antd Cascader, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
25
+ - [Checkbox](https://prism.nanisoft.com/md/components/checkbox.md): antd Checkbox, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
26
+ - [Col](https://prism.nanisoft.com/md/components/col.md): antd Col, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
27
+ - [Collapse](https://prism.nanisoft.com/md/components/collapse.md): antd Collapse, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
28
+ - [ColorPicker](https://prism.nanisoft.com/md/components/color-picker.md): antd ColorPicker, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
29
+ - [DatePicker](https://prism.nanisoft.com/md/components/date-picker.md): antd DatePicker, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
30
+ - [Descriptions](https://prism.nanisoft.com/md/components/descriptions.md): antd Descriptions, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
31
+ - [DisplayTitle](https://prism.nanisoft.com/md/components/display-title.md): Prism wrapper around antd Typography.Title (brand-behavior).
32
+ - [Divider](https://prism.nanisoft.com/md/components/divider.md): antd Divider, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
33
+ - [Drawer](https://prism.nanisoft.com/md/components/drawer.md): antd Drawer, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
34
+ - [Dropdown](https://prism.nanisoft.com/md/components/dropdown.md): antd Dropdown, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
35
+ - [Empty](https://prism.nanisoft.com/md/components/empty.md): antd Empty, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
36
+ - [Flex](https://prism.nanisoft.com/md/components/flex.md): antd Flex, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
37
+ - [FloatButton](https://prism.nanisoft.com/md/components/float-button.md): antd FloatButton, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
38
+ - [Form](https://prism.nanisoft.com/md/components/form.md): antd Form, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
39
+ - [Grid](https://prism.nanisoft.com/md/components/grid.md): antd Grid, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
40
+ - [Image](https://prism.nanisoft.com/md/components/image.md): antd Image, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
41
+ - [Input](https://prism.nanisoft.com/md/components/input.md): antd Input, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
42
+ - [InputNumber](https://prism.nanisoft.com/md/components/input-number.md): antd InputNumber, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
43
+ - [Layout](https://prism.nanisoft.com/md/components/layout.md): antd Layout, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
44
+ - [List](https://prism.nanisoft.com/md/components/list.md): antd List, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
45
+ - [Listy](https://prism.nanisoft.com/md/components/listy.md): antd Listy, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
46
+ - [Masonry](https://prism.nanisoft.com/md/components/masonry.md): antd Masonry, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
47
+ - [Mentions](https://prism.nanisoft.com/md/components/mentions.md): antd Mentions, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
48
+ - [Menu](https://prism.nanisoft.com/md/components/menu.md): antd Menu, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
49
+ - [Modal](https://prism.nanisoft.com/md/components/modal.md): antd Modal, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
50
+ - [Pagination](https://prism.nanisoft.com/md/components/pagination.md): antd Pagination, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
51
+ - [Popconfirm](https://prism.nanisoft.com/md/components/popconfirm.md): antd Popconfirm, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
52
+ - [Popover](https://prism.nanisoft.com/md/components/popover.md): antd Popover, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
53
+ - [Progress](https://prism.nanisoft.com/md/components/progress.md): antd Progress, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
54
+ - [QRCode](https://prism.nanisoft.com/md/components/qrcode.md): antd QRCode, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
55
+ - [Radio](https://prism.nanisoft.com/md/components/radio.md): antd Radio, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
56
+ - [Rate](https://prism.nanisoft.com/md/components/rate.md): antd Rate, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
57
+ - [Result](https://prism.nanisoft.com/md/components/result.md): antd Result, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
58
+ - [Row](https://prism.nanisoft.com/md/components/row.md): antd Row, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
59
+ - [Segmented](https://prism.nanisoft.com/md/components/segmented.md): antd Segmented, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
60
+ - [Select](https://prism.nanisoft.com/md/components/select.md): antd Select, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
61
+ - [Skeleton](https://prism.nanisoft.com/md/components/skeleton.md): antd Skeleton, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
62
+ - [Slider](https://prism.nanisoft.com/md/components/slider.md): antd Slider, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
63
+ - [Space](https://prism.nanisoft.com/md/components/space.md): antd Space, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
64
+ - [Spin](https://prism.nanisoft.com/md/components/spin.md): antd Spin, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
65
+ - [Splitter](https://prism.nanisoft.com/md/components/splitter.md): antd Splitter, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
66
+ - [Statistic](https://prism.nanisoft.com/md/components/statistic.md): antd Statistic, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
67
+ - [Steps](https://prism.nanisoft.com/md/components/steps.md): antd Steps, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
68
+ - [Switch](https://prism.nanisoft.com/md/components/switch.md): antd Switch, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
69
+ - [Table](https://prism.nanisoft.com/md/components/table.md): antd Table, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
70
+ - [Tabs](https://prism.nanisoft.com/md/components/tabs.md): antd Tabs, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
71
+ - [Tag](https://prism.nanisoft.com/md/components/tag.md): antd Tag, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
72
+ - [Timeline](https://prism.nanisoft.com/md/components/timeline.md): antd Timeline, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
73
+ - [TimePicker](https://prism.nanisoft.com/md/components/time-picker.md): antd TimePicker, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
74
+ - [Tooltip](https://prism.nanisoft.com/md/components/tooltip.md): antd Tooltip, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
75
+ - [Tour](https://prism.nanisoft.com/md/components/tour.md): antd Tour, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
76
+ - [Transfer](https://prism.nanisoft.com/md/components/transfer.md): antd Transfer, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
77
+ - [Tree](https://prism.nanisoft.com/md/components/tree.md): antd Tree, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
78
+ - [TreeSelect](https://prism.nanisoft.com/md/components/tree-select.md): antd TreeSelect, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
79
+ - [Typography](https://prism.nanisoft.com/md/components/typography.md): antd Typography, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
80
+ - [Upload](https://prism.nanisoft.com/md/components/upload.md): antd Upload, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
81
+ - [Watermark](https://prism.nanisoft.com/md/components/watermark.md): antd Watermark, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
82
+
83
+ ## Blocks
84
+
85
+ - [ComponentDemo](https://prism.nanisoft.com/md/blocks/component-demo.md): Prism block — full documentation pending.
86
+ - [PageHeader](https://prism.nanisoft.com/md/blocks/page-header.md): Prism block — full documentation pending.
87
+
88
+ ## Pages
89
+
90
+ - [BlogLayout](https://prism.nanisoft.com/md/pages/blog-layout.md): Prism page — full documentation pending.
91
+ - [DocsShell](https://prism.nanisoft.com/md/pages/docs-shell.md): Prism page — full documentation pending.
92
+
93
+ ## Theming
94
+
95
+ - [Blue pack · beam-dark](https://prism.nanisoft.com/md/theme/blue-dark.md): Theming reference for the blue pack in dark mode — the createPrismTheme snippet, token tiers, and the antd token lane.
96
+ - [Blue pack · light](https://prism.nanisoft.com/md/theme/blue-light.md): Theming reference for the blue pack in light mode — the createPrismTheme snippet, token tiers, and the antd token lane.
97
+ - [Green pack · beam-dark](https://prism.nanisoft.com/md/theme/green-dark.md): Theming reference for the green pack in dark mode — the createPrismTheme snippet, token tiers, and the antd token lane.
98
+ - [Green pack · light](https://prism.nanisoft.com/md/theme/green-light.md): Theming reference for the green pack in light mode — the createPrismTheme snippet, token tiers, and the antd token lane.
@@ -0,0 +1,42 @@
1
+ /**
2
+ * The MDX → Markdown lane (ticket 16 §2): the docs MDX is authoritative prose,
3
+ * emitted to `.md` by stripping frontmatter and MDX machinery and replacing
4
+ * each `ComponentDemo` element with that example's fenced TSX — lossless
5
+ * because ticket 12's self-contained contract makes every demo one file.
6
+ */
7
+ import type { ExtractedInterface } from './extractor.js';
8
+ /** Frontmatter prism-llms consumes — fumadocs defaults only (ticket 12 §3). */
9
+ export interface DocMeta {
10
+ title?: string;
11
+ description?: string;
12
+ }
13
+ export interface ParsedMdx {
14
+ data: DocMeta;
15
+ body: string;
16
+ }
17
+ /** Parse `---`-delimited `key: value` frontmatter (the fumadocs default schema — no nesting). */
18
+ export declare function parseMdx(raw: string): ParsedMdx;
19
+ /** Inline code fences in the emitted Markdown. */
20
+ export declare function fence(code: string, language: string): string;
21
+ /**
22
+ * Replace every `<ComponentDemo id="…" [title="…"] />` element outside code
23
+ * fences with that example's fenced TSX. `readDemo` returns the example source
24
+ * (or undefined for an unknown id — a hard error: the cross-ref would be dead).
25
+ */
26
+ export declare function renderComponentDemos(body: string, readDemo: (id: string) => string | undefined): string;
27
+ /**
28
+ * Strip MDX machinery for the `.md` lane: import statements and JSX comment
29
+ * markers. Fence-aware — fenced import lines are content (the copyable import
30
+ * line of the page skeleton), MDX top-level imports are machinery.
31
+ */
32
+ export declare function stripMdxMechanics(body: string): string;
33
+ /** Render a Markdown table; cells are pipe-escaped and flattened. */
34
+ export declare function renderTable(headers: readonly string[], rows: readonly (readonly string[])[]): string;
35
+ /**
36
+ * The generated props section (ticket 12: API tables from the extractor, never
37
+ * hand-written). Interfaces with no own props collapse to the antd seam line —
38
+ * which is what a wrapper that adds nothing documents. Pass-throughs never
39
+ * reach this function; their MDX carries the Extends pointer instead.
40
+ */
41
+ export declare function renderPropsSection(interfaces: readonly ExtractedInterface[]): string;
42
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,+EAA+E;AAC/E,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,iGAAiG;AACjG,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAc/C;AAED,kDAAkD;AAClD,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GAAG,MAAM,CA4BvG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CActD;AAED,qEAAqE;AACrE,wBAAgB,WAAW,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,CAMpG;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,GAAG,MAAM,CAgBpF"}
@@ -0,0 +1,118 @@
1
+ /** Parse `---`-delimited `key: value` frontmatter (the fumadocs default schema — no nesting). */
2
+ export function parseMdx(raw) {
3
+ const normalized = raw.replace(/\r\n/g, '\n');
4
+ if (!normalized.startsWith('---\n'))
5
+ return { data: {}, body: normalized };
6
+ const close = normalized.indexOf('\n---', 4);
7
+ if (close === -1)
8
+ return { data: {}, body: normalized };
9
+ const front = normalized.slice(4, close);
10
+ const data = {};
11
+ for (const line of front.split('\n')) {
12
+ const match = /^(\w+):\s*(.*)$/.exec(line);
13
+ if (!match)
14
+ continue;
15
+ const value = (match[2] ?? '').replace(/^['"]|['"]$/g, '');
16
+ if (match[1] === 'title' || match[1] === 'description')
17
+ data[match[1]] = value;
18
+ }
19
+ return { data, body: normalized.slice(close + 4).replace(/^\n+/, '') };
20
+ }
21
+ /** Inline code fences in the emitted Markdown. */
22
+ export function fence(code, language) {
23
+ return `\`\`\`${language}\n${code.replace(/\r\n/g, '\n').replace(/\n$/, '')}\n\`\`\``;
24
+ }
25
+ /**
26
+ * Replace every `<ComponentDemo id="…" [title="…"] />` element outside code
27
+ * fences with that example's fenced TSX. `readDemo` returns the example source
28
+ * (or undefined for an unknown id — a hard error: the cross-ref would be dead).
29
+ */
30
+ export function renderComponentDemos(body, readDemo) {
31
+ const lines = body.replace(/\r\n/g, '\n').split('\n');
32
+ const out = [];
33
+ let inFence = false;
34
+ for (const line of lines) {
35
+ if (/^\s*```/.test(line)) {
36
+ inFence = !inFence;
37
+ out.push(line);
38
+ continue;
39
+ }
40
+ if (inFence) {
41
+ out.push(line);
42
+ continue;
43
+ }
44
+ const demo = /^\s*<ComponentDemo\s+([^>]*?)\/>\s*$/.exec(line);
45
+ if (!demo) {
46
+ out.push(line);
47
+ continue;
48
+ }
49
+ const id = /\bid=["']([^"']+)["']/.exec(demo[1] ?? '')?.[1];
50
+ if (!id)
51
+ throw new Error(`ComponentDemo element without an id attribute: ${line.trim()}`);
52
+ const code = readDemo(id);
53
+ if (code === undefined)
54
+ throw new Error(`ComponentDemo references unknown example id '${id}'`);
55
+ const title = /\btitle=["']([^"']+)["']/.exec(demo[1] ?? '')?.[1];
56
+ if (title)
57
+ out.push(`**${title}**`);
58
+ out.push(fence(code, 'tsx'));
59
+ }
60
+ return out.join('\n');
61
+ }
62
+ /**
63
+ * Strip MDX machinery for the `.md` lane: import statements and JSX comment
64
+ * markers. Fence-aware — fenced import lines are content (the copyable import
65
+ * line of the page skeleton), MDX top-level imports are machinery.
66
+ */
67
+ export function stripMdxMechanics(body) {
68
+ const kept = [];
69
+ let inFence = false;
70
+ for (const line of body.replace(/\r\n/g, '\n').split('\n')) {
71
+ if (/^\s*```/.test(line))
72
+ inFence = !inFence;
73
+ if (!inFence && /^\s*import\b/.test(line))
74
+ continue;
75
+ if (!inFence && /^\s*\{\/\*[\s\S]*\*\/\}\s*$/.test(line))
76
+ continue;
77
+ kept.push(line);
78
+ }
79
+ return kept
80
+ .join('\n')
81
+ .replace(/\n{3,}/g, '\n\n')
82
+ .replace(/^\n+/, '')
83
+ .replace(/\s+$/, '');
84
+ }
85
+ /** Render a Markdown table; cells are pipe-escaped and flattened. */
86
+ export function renderTable(headers, rows) {
87
+ const escape = (cell) => cell.replace(/\|/g, '\\|').replace(/\n+/g, ' ').trim();
88
+ const head = `| ${headers.map(escape).join(' | ')} |`;
89
+ const rule = `| ${headers.map(() => '---').join(' | ')} |`;
90
+ const body = rows.map((row) => `| ${row.map(escape).join(' | ')} |`);
91
+ return [head, rule, ...body].join('\n');
92
+ }
93
+ const NO_ADDITIONAL_PROPS = '_No additional props beyond the antd base component._';
94
+ /**
95
+ * The generated props section (ticket 12: API tables from the extractor, never
96
+ * hand-written). Interfaces with no own props collapse to the antd seam line —
97
+ * which is what a wrapper that adds nothing documents. Pass-throughs never
98
+ * reach this function; their MDX carries the Extends pointer instead.
99
+ */
100
+ export function renderPropsSection(interfaces) {
101
+ const withProps = interfaces.filter((iface) => iface.props.length > 0);
102
+ if (withProps.length === 0)
103
+ return `## Props\n\n${NO_ADDITIONAL_PROPS}`;
104
+ const parts = ['## Props'];
105
+ for (const iface of withProps) {
106
+ if (withProps.length > 1)
107
+ parts.push(`### ${iface.typeName}`);
108
+ const rows = iface.props.map((prop) => [
109
+ `\`${prop.name}\`${prop.required ? '' : ' (optional)'}`,
110
+ prop.typeText,
111
+ prop.defaultValue ? `\`${prop.defaultValue}\`` : '—',
112
+ prop.description ?? '—',
113
+ ]);
114
+ parts.push(renderTable(['Prop', 'Type', 'Default', 'Description'], rows));
115
+ }
116
+ return parts.join('\n\n');
117
+ }
118
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ # ComponentDemo
2
+
3
+ Prism block — full documentation pending.
4
+
5
+ ```ts
6
+ import { ComponentDemo } from '@nanisoft/prism-ui/blocks';
7
+ ```
8
+
9
+ `ComponentDemo` is a Prism block. Full documentation is pending — the prism MCP answers API questions in the meantime (`get_item_props`, `get_item_source`).
10
+
11
+ ## Props
12
+
13
+ | Prop | Type | Default | Description |
14
+ | --- | --- | --- | --- |
15
+ | `code` | string | — | The example's source code, verbatim from its demos/<slug>.tsx file. |
16
+ | `children` | ReactNode | — | The live-rendered example. |
17
+ | `language` (optional) | string | — | Which language `code` is (default 'tsx'). |
18
+ | `className` (optional) | string | — | — |
19
+ | `style` (optional) | CSSProperties | — | — |
@@ -0,0 +1,19 @@
1
+ # PageHeader
2
+
3
+ Prism block — full documentation pending.
4
+
5
+ ```ts
6
+ import { PageHeader } from '@nanisoft/prism-ui/blocks';
7
+ ```
8
+
9
+ `PageHeader` is a Prism block. Full documentation is pending — the prism MCP answers API questions in the meantime (`get_item_props`, `get_item_source`).
10
+
11
+ ## Props
12
+
13
+ | Prop | Type | Default | Description |
14
+ | --- | --- | --- | --- |
15
+ | `title` | string | — | — |
16
+ | `subtitle` (optional) | string | — | — |
17
+ | `breadcrumb` (optional) | ReactNode | — | — |
18
+ | `actions` (optional) | ReactNode | — | Right-aligned actions (buttons, links). |
19
+ | `className` (optional) | string | — | — |
@@ -0,0 +1,14 @@
1
+ # Affix
2
+
3
+ antd Affix, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Affix } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Affix` is antd's [Affix](https://ant.design/components/affix), re-exported unchanged.
10
+
11
+ - Extends: antd **Affix** — for inherited props and demos, use the antd MCP (`antd_info Affix`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Alert
2
+
3
+ antd Alert, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Alert } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Alert` is antd's [Alert](https://ant.design/components/alert), re-exported unchanged.
10
+
11
+ - Extends: antd **Alert** — for inherited props and demos, use the antd MCP (`antd_info Alert`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Anchor
2
+
3
+ antd Anchor, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Anchor } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Anchor` is antd's [Anchor](https://ant.design/components/anchor), re-exported unchanged.
10
+
11
+ - Extends: antd **Anchor** — for inherited props and demos, use the antd MCP (`antd_info Anchor`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # AutoComplete
2
+
3
+ antd AutoComplete, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { AutoComplete } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `AutoComplete` is antd's [AutoComplete](https://ant.design/components/auto-complete), re-exported unchanged.
10
+
11
+ - Extends: antd **AutoComplete** — for inherited props and demos, use the antd MCP (`antd_info AutoComplete`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Avatar
2
+
3
+ antd Avatar, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Avatar } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Avatar` is antd's [Avatar](https://ant.design/components/avatar), re-exported unchanged.
10
+
11
+ - Extends: antd **Avatar** — for inherited props and demos, use the antd MCP (`antd_info Avatar`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # BackTop
2
+
3
+ antd BackTop, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { BackTop } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `BackTop` is antd's [BackTop](https://ant.design/components/back-top), re-exported unchanged.
10
+
11
+ - Extends: antd **BackTop** — for inherited props and demos, use the antd MCP (`antd_info BackTop`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Badge
2
+
3
+ antd Badge, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Badge } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Badge` is antd's [Badge](https://ant.design/components/badge), re-exported unchanged.
10
+
11
+ - Extends: antd **Badge** — for inherited props and demos, use the antd MCP (`antd_info Badge`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # BorderBeam
2
+
3
+ antd BorderBeam, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { BorderBeam } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `BorderBeam` is antd's [BorderBeam](https://ant.design/components/border-beam), re-exported unchanged.
10
+
11
+ - Extends: antd **BorderBeam** — for inherited props and demos, use the antd MCP (`antd_info BorderBeam`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Breadcrumb
2
+
3
+ antd Breadcrumb, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Breadcrumb } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Breadcrumb` is antd's [Breadcrumb](https://ant.design/components/breadcrumb), re-exported unchanged.
10
+
11
+ - Extends: antd **Breadcrumb** — for inherited props and demos, use the antd MCP (`antd_info Breadcrumb`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Button
2
+
3
+ antd Button, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Button } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Button` is antd's [Button](https://ant.design/components/button), re-exported unchanged.
10
+
11
+ - Extends: antd **Button** — for inherited props and demos, use the antd MCP (`antd_info Button`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Calendar
2
+
3
+ antd Calendar, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Calendar } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Calendar` is antd's [Calendar](https://ant.design/components/calendar), re-exported unchanged.
10
+
11
+ - Extends: antd **Calendar** — for inherited props and demos, use the antd MCP (`antd_info Calendar`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Card
2
+
3
+ antd Card, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Card } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Card` is antd's [Card](https://ant.design/components/card), re-exported unchanged.
10
+
11
+ - Extends: antd **Card** — for inherited props and demos, use the antd MCP (`antd_info Card`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Carousel
2
+
3
+ antd Carousel, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Carousel } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Carousel` is antd's [Carousel](https://ant.design/components/carousel), re-exported unchanged.
10
+
11
+ - Extends: antd **Carousel** — for inherited props and demos, use the antd MCP (`antd_info Carousel`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Cascader
2
+
3
+ antd Cascader, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Cascader } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Cascader` is antd's [Cascader](https://ant.design/components/cascader), re-exported unchanged.
10
+
11
+ - Extends: antd **Cascader** — for inherited props and demos, use the antd MCP (`antd_info Cascader`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Checkbox
2
+
3
+ antd Checkbox, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Checkbox } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Checkbox` is antd's [Checkbox](https://ant.design/components/checkbox), re-exported unchanged.
10
+
11
+ - Extends: antd **Checkbox** — for inherited props and demos, use the antd MCP (`antd_info Checkbox`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Col
2
+
3
+ antd Col, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Col } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Col` is antd's [Col](https://ant.design/components/col), re-exported unchanged.
10
+
11
+ - Extends: antd **Col** — for inherited props and demos, use the antd MCP (`antd_info Col`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Collapse
2
+
3
+ antd Collapse, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Collapse } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Collapse` is antd's [Collapse](https://ant.design/components/collapse), re-exported unchanged.
10
+
11
+ - Extends: antd **Collapse** — for inherited props and demos, use the antd MCP (`antd_info Collapse`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # ColorPicker
2
+
3
+ antd ColorPicker, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { ColorPicker } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `ColorPicker` is antd's [ColorPicker](https://ant.design/components/color-picker), re-exported unchanged.
10
+
11
+ - Extends: antd **ColorPicker** — for inherited props and demos, use the antd MCP (`antd_info ColorPicker`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # DatePicker
2
+
3
+ antd DatePicker, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { DatePicker } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `DatePicker` is antd's [DatePicker](https://ant.design/components/date-picker), re-exported unchanged.
10
+
11
+ - Extends: antd **DatePicker** — for inherited props and demos, use the antd MCP (`antd_info DatePicker`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._
@@ -0,0 +1,14 @@
1
+ # Descriptions
2
+
3
+ antd Descriptions, unchanged — a pass-through re-export. Import from '@nanisoft/prism-ui'.
4
+
5
+ ```ts
6
+ import { Descriptions } from '@nanisoft/prism-ui/components';
7
+ ```
8
+
9
+ `Descriptions` is antd's [Descriptions](https://ant.design/components/descriptions), re-exported unchanged.
10
+
11
+ - Extends: antd **Descriptions** — for inherited props and demos, use the antd MCP (`antd_info Descriptions`).
12
+ - Always import from '@nanisoft/prism-ui', never from `antd` directly.
13
+
14
+ _No additional props beyond the antd base component._