livemark 0.23.0 → 0.24.1

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 (281) hide show
  1. package/.agents/skills/change-review/SKILL.md +47 -0
  2. package/{skills/configuration → .agents/skills/livemark-configuration}/SKILL.md +2 -4
  3. package/build/actions/changelog/build.d.ts +21 -9
  4. package/build/actions/changelog/build.js +31 -23
  5. package/build/actions/changelog/build.unit.js +156 -2
  6. package/build/actions/config/load.js +1 -1
  7. package/build/actions/config/load.unit.js +1 -1
  8. package/build/actions/target/build.js +2 -5
  9. package/build/commands/build.js +1 -1
  10. package/build/commands/escape.js +1 -1
  11. package/build/commands/preview.js +1 -1
  12. package/build/commands/start.js +1 -1
  13. package/build/components/Abbr.js +2 -2
  14. package/build/components/Article.js +2 -2
  15. package/build/components/BlogIndex.js +2 -4
  16. package/build/components/Callout.js +2 -2
  17. package/build/components/ChangelogIndex.js +1 -1
  18. package/build/components/CodeBlock.js +3 -5
  19. package/build/components/CodeTabs.js +1 -1
  20. package/build/components/Columns.js +2 -4
  21. package/build/components/Content.js +2 -2
  22. package/build/components/ContentTab.js +1 -1
  23. package/build/components/ContentTabs.js +1 -1
  24. package/build/components/DefinitionList.js +1 -1
  25. package/build/components/FileTree.js +1 -1
  26. package/build/components/FootnoteRef.js +2 -2
  27. package/build/components/InlineToc.js +1 -1
  28. package/build/components/Layout.js +1 -1
  29. package/build/components/LinkButton.js +2 -2
  30. package/build/components/Mermaid.js +1 -1
  31. package/build/components/PackageTabs.js +2 -2
  32. package/build/components/PageToolbar.js +2 -2
  33. package/build/components/PrevNext.js +3 -7
  34. package/build/components/SearchDialog.js +1 -1
  35. package/build/components/Section.js +2 -2
  36. package/build/components/SectionHeader.js +2 -2
  37. package/build/components/Sidebar.js +2 -2
  38. package/build/components/SidebarArticles.js +2 -2
  39. package/build/components/SidebarLinks.js +2 -2
  40. package/build/components/TagIndex.js +2 -4
  41. package/build/components/Toc.js +1 -1
  42. package/build/content/article.js +1 -1
  43. package/build/content-collections.js +6 -7
  44. package/build/elements/accordion.js +2 -2
  45. package/build/elements/alert-dialog.js +5 -5
  46. package/build/elements/alert.js +2 -2
  47. package/build/elements/aspect-ratio.js +2 -2
  48. package/build/elements/avatar.d.ts +1 -1
  49. package/build/elements/avatar.js +3 -3
  50. package/build/elements/badge.js +2 -2
  51. package/build/elements/breadcrumb.js +2 -2
  52. package/build/elements/button-group.d.ts +1 -1
  53. package/build/elements/button-group.js +3 -3
  54. package/build/elements/button.js +2 -2
  55. package/build/elements/calendar.js +5 -5
  56. package/build/elements/card.js +2 -2
  57. package/build/elements/carousel.js +2 -2
  58. package/build/elements/chart.js +5 -15
  59. package/build/elements/checkbox.js +2 -2
  60. package/build/elements/collapsible.js +3 -3
  61. package/build/elements/command.js +2 -2
  62. package/build/elements/context-menu.js +5 -5
  63. package/build/elements/dialog.js +2 -2
  64. package/build/elements/direction.d.ts +1 -1
  65. package/build/elements/direction.js +2 -2
  66. package/build/elements/drawer.js +2 -2
  67. package/build/elements/dropdown-menu.js +3 -3
  68. package/build/elements/empty.d.ts +1 -1
  69. package/build/elements/empty.js +3 -3
  70. package/build/elements/field.js +2 -2
  71. package/build/elements/hover-card.js +3 -3
  72. package/build/elements/input-group.js +2 -2
  73. package/build/elements/input-otp.js +2 -2
  74. package/build/elements/input.js +2 -2
  75. package/build/elements/item.js +2 -2
  76. package/build/elements/kbd.js +2 -2
  77. package/build/elements/label.js +2 -2
  78. package/build/elements/menubar.js +2 -2
  79. package/build/elements/native-select.js +2 -2
  80. package/build/elements/navigation-menu.js +2 -2
  81. package/build/elements/pagination.js +3 -3
  82. package/build/elements/popover.js +2 -2
  83. package/build/elements/progress.d.ts +1 -1
  84. package/build/elements/progress.js +3 -3
  85. package/build/elements/radio-group.js +2 -2
  86. package/build/elements/resizable.js +3 -3
  87. package/build/elements/scroll-area.js +2 -2
  88. package/build/elements/select.js +2 -2
  89. package/build/elements/separator.js +2 -2
  90. package/build/elements/sheet.js +2 -2
  91. package/build/elements/sidebar.js +3 -4
  92. package/build/elements/skeleton.js +2 -2
  93. package/build/elements/slider.js +2 -2
  94. package/build/elements/spinner.js +2 -2
  95. package/build/elements/switch.js +2 -2
  96. package/build/elements/table.js +2 -2
  97. package/build/elements/tabs.js +2 -2
  98. package/build/elements/textarea.js +2 -2
  99. package/build/elements/toggle-group.js +2 -2
  100. package/build/elements/toggle.js +2 -2
  101. package/build/elements/tooltip.js +2 -2
  102. package/build/helpers/changelog-source.js +1 -1
  103. package/build/helpers/dynamic-icon-resolver.js +1 -1
  104. package/build/helpers/resolve-asset-path.unit.js +1 -1
  105. package/build/helpers/resolve-base.unit.js +2 -2
  106. package/build/helpers/resolve-includes.js +2 -2
  107. package/build/helpers/resolve-includes.unit.js +1 -1
  108. package/build/helpers/rss.js +2 -4
  109. package/build/helpers/rss.unit.js +1 -1
  110. package/build/helpers/section.js +2 -3
  111. package/build/helpers/section.unit.js +4 -13
  112. package/build/helpers/toc.unit.js +2 -4
  113. package/build/plugins/rehype-inline-code.js +2 -2
  114. package/build/plugins/rehype-task-list-a11y.js +1 -1
  115. package/build/plugins/remark-abbr.js +2 -4
  116. package/build/plugins/remark-ansi.js +2 -4
  117. package/build/plugins/remark-ansi.unit.js +1 -1
  118. package/build/plugins/remark-badge.js +2 -4
  119. package/build/plugins/remark-button.unit.js +1 -1
  120. package/build/plugins/remark-callout.js +1 -1
  121. package/build/plugins/remark-card.js +1 -1
  122. package/build/plugins/remark-code-tabs.js +4 -8
  123. package/build/plugins/remark-columns.js +1 -1
  124. package/build/plugins/remark-custom-heading-id.unit.js +1 -1
  125. package/build/plugins/remark-deflist.js +1 -1
  126. package/build/plugins/remark-details.js +2 -4
  127. package/build/plugins/remark-filetree.js +1 -1
  128. package/build/plugins/remark-filetree.unit.js +1 -1
  129. package/build/plugins/remark-media.js +3 -7
  130. package/build/plugins/remark-media.unit.js +1 -1
  131. package/build/plugins/remark-steps.unit.js +1 -1
  132. package/build/plugins/remark-tab.js +4 -2
  133. package/build/plugins/remark-tab.unit.js +3 -7
  134. package/build/plugins/remark-toc.unit.js +1 -1
  135. package/build/plugins/shiki-icon.js +1 -1
  136. package/build/plugins/shiki-line-highlight.js +1 -1
  137. package/build/plugins/vite-livemark.js +1 -1
  138. package/build/plugins/vite-robots.js +1 -1
  139. package/build/plugins/vite-robots.unit.js +1 -1
  140. package/build/routes/$.js +1 -1
  141. package/build/vite.config.js +3 -8
  142. package/package.json +17 -19
  143. package/source/actions/changelog/build.ts +32 -35
  144. package/source/actions/changelog/build.unit.ts +191 -1
  145. package/source/actions/config/load.ts +1 -3
  146. package/source/actions/config/load.unit.ts +2 -7
  147. package/source/actions/target/build.ts +1 -4
  148. package/source/commands/build.ts +1 -7
  149. package/source/commands/escape.ts +3 -8
  150. package/source/commands/preview.ts +1 -7
  151. package/source/commands/start.ts +1 -7
  152. package/source/components/Abbr.tsx +1 -5
  153. package/source/components/Article.tsx +1 -5
  154. package/source/components/BlogIndex.tsx +3 -9
  155. package/source/components/Callout.tsx +2 -7
  156. package/source/components/ChangelogIndex.tsx +1 -3
  157. package/source/components/CodeBlock.tsx +4 -14
  158. package/source/components/CodeTabs.tsx +1 -3
  159. package/source/components/Columns.tsx +1 -3
  160. package/source/components/Content.tsx +1 -5
  161. package/source/components/ContentTab.tsx +1 -4
  162. package/source/components/ContentTabs.tsx +3 -10
  163. package/source/components/DefinitionList.tsx +1 -4
  164. package/source/components/FileTree.tsx +1 -5
  165. package/source/components/FootnoteRef.tsx +1 -5
  166. package/source/components/InlineToc.tsx +1 -4
  167. package/source/components/Layout.tsx +3 -10
  168. package/source/components/LinkButton.tsx +2 -8
  169. package/source/components/Mermaid.tsx +1 -3
  170. package/source/components/PackageTabs.tsx +1 -5
  171. package/source/components/PageToolbar.tsx +1 -5
  172. package/source/components/PrevNext.tsx +2 -6
  173. package/source/components/SearchDialog.tsx +2 -6
  174. package/source/components/Section.tsx +1 -1
  175. package/source/components/SectionHeader.tsx +2 -8
  176. package/source/components/Sidebar.tsx +2 -7
  177. package/source/components/SidebarArticles.tsx +4 -20
  178. package/source/components/SidebarLinks.tsx +2 -6
  179. package/source/components/TagIndex.tsx +3 -9
  180. package/source/components/Toc.tsx +2 -7
  181. package/source/content/article.ts +1 -2
  182. package/source/content-collections.ts +6 -8
  183. package/source/elements/accordion.tsx +1 -1
  184. package/source/elements/alert-dialog.tsx +8 -30
  185. package/source/elements/alert.tsx +2 -5
  186. package/source/elements/aspect-ratio.tsx +1 -1
  187. package/source/elements/avatar.tsx +5 -21
  188. package/source/elements/badge.tsx +3 -5
  189. package/source/elements/breadcrumb.tsx +4 -14
  190. package/source/elements/button-group.tsx +2 -7
  191. package/source/elements/button.tsx +1 -1
  192. package/source/elements/calendar.tsx +7 -24
  193. package/source/elements/card.tsx +1 -1
  194. package/source/elements/carousel.tsx +4 -11
  195. package/source/elements/chart.tsx +9 -34
  196. package/source/elements/checkbox.tsx +1 -1
  197. package/source/elements/collapsible.tsx +2 -6
  198. package/source/elements/command.tsx +4 -13
  199. package/source/elements/context-menu.tsx +8 -25
  200. package/source/elements/dialog.tsx +4 -14
  201. package/source/elements/direction.tsx +1 -4
  202. package/source/elements/drawer.tsx +4 -10
  203. package/source/elements/dropdown-menu.tsx +5 -19
  204. package/source/elements/empty.tsx +3 -13
  205. package/source/elements/field.tsx +3 -7
  206. package/source/elements/hover-card.tsx +2 -4
  207. package/source/elements/input-group.tsx +15 -28
  208. package/source/elements/input-otp.tsx +1 -1
  209. package/source/elements/input.tsx +1 -1
  210. package/source/elements/item.tsx +4 -13
  211. package/source/elements/kbd.tsx +1 -1
  212. package/source/elements/label.tsx +1 -1
  213. package/source/elements/menubar.tsx +5 -14
  214. package/source/elements/native-select.tsx +4 -15
  215. package/source/elements/navigation-menu.tsx +2 -5
  216. package/source/elements/pagination.tsx +4 -14
  217. package/source/elements/popover.tsx +2 -5
  218. package/source/elements/progress.tsx +4 -16
  219. package/source/elements/radio-group.tsx +1 -1
  220. package/source/elements/resizable.tsx +4 -12
  221. package/source/elements/scroll-area.tsx +2 -6
  222. package/source/elements/select.tsx +4 -14
  223. package/source/elements/separator.tsx +1 -1
  224. package/source/elements/sheet.tsx +3 -10
  225. package/source/elements/sidebar.tsx +7 -25
  226. package/source/elements/skeleton.tsx +1 -1
  227. package/source/elements/slider.tsx +1 -1
  228. package/source/elements/spinner.tsx +1 -1
  229. package/source/elements/switch.tsx +1 -1
  230. package/source/elements/table.tsx +4 -13
  231. package/source/elements/tabs.tsx +1 -1
  232. package/source/elements/textarea.tsx +1 -1
  233. package/source/elements/toggle-group.tsx +2 -4
  234. package/source/elements/toggle.tsx +1 -1
  235. package/source/elements/tooltip.tsx +3 -10
  236. package/source/helpers/changelog-source.ts +1 -3
  237. package/source/helpers/dynamic-icon-resolver.tsx +1 -4
  238. package/source/helpers/resolve-asset-path.unit.ts +6 -12
  239. package/source/helpers/resolve-base.unit.ts +1 -2
  240. package/source/helpers/resolve-includes.ts +2 -8
  241. package/source/helpers/resolve-includes.unit.ts +9 -36
  242. package/source/helpers/rss.ts +3 -9
  243. package/source/helpers/rss.unit.ts +1 -3
  244. package/source/helpers/section.ts +1 -4
  245. package/source/helpers/section.unit.ts +5 -18
  246. package/source/helpers/toc.unit.ts +1 -3
  247. package/source/plugins/rehype-inline-code.ts +5 -21
  248. package/source/plugins/rehype-task-list-a11y.ts +1 -2
  249. package/source/plugins/remark-abbr.ts +1 -3
  250. package/source/plugins/remark-ansi.ts +2 -5
  251. package/source/plugins/remark-ansi.unit.ts +6 -18
  252. package/source/plugins/remark-badge.ts +1 -3
  253. package/source/plugins/remark-button.unit.ts +3 -9
  254. package/source/plugins/remark-callout.ts +35 -40
  255. package/source/plugins/remark-card.ts +25 -29
  256. package/source/plugins/remark-code-tabs.ts +3 -7
  257. package/source/plugins/remark-columns.ts +13 -17
  258. package/source/plugins/remark-custom-heading-id.unit.ts +2 -6
  259. package/source/plugins/remark-deflist.ts +1 -2
  260. package/source/plugins/remark-details.ts +28 -34
  261. package/source/plugins/remark-filetree.ts +28 -34
  262. package/source/plugins/remark-filetree.unit.ts +1 -4
  263. package/source/plugins/remark-media.ts +2 -6
  264. package/source/plugins/remark-media.unit.ts +2 -6
  265. package/source/plugins/remark-steps.unit.ts +2 -7
  266. package/source/plugins/remark-tab.ts +26 -30
  267. package/source/plugins/remark-tab.unit.ts +2 -6
  268. package/source/plugins/remark-toc.unit.ts +1 -3
  269. package/source/plugins/shiki-icon.ts +1 -4
  270. package/source/plugins/shiki-line-highlight.ts +4 -11
  271. package/source/plugins/vite-livemark.ts +3 -10
  272. package/source/plugins/vite-robots.ts +1 -6
  273. package/source/plugins/vite-robots.unit.ts +1 -3
  274. package/source/routes/$.tsx +1 -3
  275. package/source/styles/general.css +1 -5
  276. package/source/vite.config.ts +2 -7
  277. package/build/utils/style.d.ts +0 -2
  278. package/build/utils/style.js +0 -6
  279. package/source/utils/style.ts +0 -6
  280. /package/{skills/authoring → .agents/skills/livemark-authoring}/SKILL.md +0 -0
  281. /package/{skills/customization → .agents/skills/livemark-customization}/SKILL.md +0 -0
@@ -1,12 +1,7 @@
1
1
  import { cpSync, existsSync, rmSync } from "node:fs"
2
2
  import { join, sep } from "node:path"
3
3
  import { watch as chokidarWatch } from "chokidar"
4
- import type {
5
- ConfigEnv,
6
- Plugin,
7
- UserConfig as ViteUserConfig,
8
- ViteDevServer,
9
- } from "vite"
4
+ import type { ConfigEnv, Plugin, UserConfig as ViteUserConfig, ViteDevServer } from "vite"
10
5
  import { mergeConfig } from "vite"
11
6
  import { buildTarget } from "../actions/target/build.ts"
12
7
  import type { Config } from "../models/config.ts"
@@ -181,13 +176,11 @@ function syncOverlay(
181
176
  const source = join(SOURCE_DIR, hit.rel)
182
177
  if (kind === "unlink") {
183
178
  rmSync(dest, { force: true, recursive: true })
184
- if (existsSync(source))
185
- cpSync(source, dest, { recursive: true, force: true })
179
+ if (existsSync(source)) cpSync(source, dest, { recursive: true, force: true })
186
180
  return
187
181
  }
188
182
  const overlay = join(overridesRoot, hit.rel)
189
- if (existsSync(overlay))
190
- cpSync(overlay, dest, { recursive: true, force: true })
183
+ if (existsSync(overlay)) cpSync(overlay, dest, { recursive: true, force: true })
191
184
  }
192
185
 
193
186
  function syncSource(
@@ -14,12 +14,7 @@ export interface RobotsOptions {
14
14
  * overlay wins — Vite copies the publicDir before writeBundle, so
15
15
  * unconditional emitFile would silently overwrite the override. */
16
16
  export function robots(opts: RobotsOptions): Plugin {
17
- const overrideFile = join(
18
- opts.config.root,
19
- ".livemark",
20
- "public",
21
- "robots.txt",
22
- )
17
+ const overrideFile = join(opts.config.root, ".livemark", "public", "robots.txt")
23
18
  return {
24
19
  name: "livemark:robots",
25
20
  applyToEnvironment(env) {
@@ -19,9 +19,7 @@ describe("renderRobots", () => {
19
19
  })
20
20
 
21
21
  it("includes the base path so the URL matches the build mount", () => {
22
- expect(
23
- renderRobots({ site: "https://user.github.io", base: "/repo" }),
24
- ).toBe(
22
+ expect(renderRobots({ site: "https://user.github.io", base: "/repo" })).toBe(
25
23
  "User-agent: *\nAllow: /\n\nSitemap: https://user.github.io/repo/sitemap.xml\n",
26
24
  )
27
25
  })
@@ -44,9 +44,7 @@ export const Route = createFileRoute("/$")({
44
44
  }
45
45
  }
46
46
 
47
- const tagMatch = splat.match(
48
- new RegExp(`^${section.prefix}tags/([^/]+)/$`),
49
- )
47
+ const tagMatch = splat.match(new RegExp(`^${section.prefix}tags/([^/]+)/$`))
50
48
  const tag = tagMatch?.[1]
51
49
  if (tag) {
52
50
  const tagMap = sectionTags.get(section.prefix)
@@ -140,11 +140,7 @@
140
140
  }
141
141
  [data-slot="sidebar-content"]:hover,
142
142
  [data-slot="sidebar-content"]:focus-within {
143
- scrollbar-color: color-mix(
144
- in oklch,
145
- var(--sidebar-foreground) 20%,
146
- transparent
147
- )
143
+ scrollbar-color: color-mix(in oklch, var(--sidebar-foreground) 20%, transparent)
148
144
  transparent;
149
145
  }
150
146
 
@@ -36,10 +36,7 @@ export default defineConfig({
36
36
  // Seed path must match what the crawler produces (router-emitted
37
37
  // hrefs include the basepath), otherwise prerender records both
38
38
  // shapes and the sitemap ends up with duplicate entries.
39
- pages: [
40
- { path: config.base ? `${config.base}/` : "/" },
41
- ...blogFeedPages,
42
- ],
39
+ pages: [{ path: config.base ? `${config.base}/` : "/" }, ...blogFeedPages],
43
40
  // Disable route-tree auto-discovery: it produces basepath-naive
44
41
  // paths (e.g. `/`) that duplicate the crawl-derived prefixed paths,
45
42
  // bloating pages.json and sitemap. Crawling from the seed already
@@ -49,9 +46,7 @@ export default defineConfig({
49
46
  crawlLinks: true,
50
47
  autoStaticPathsDiscovery: false,
51
48
  },
52
- sitemap: config.site
53
- ? { enabled: true, host: config.site }
54
- : { enabled: false },
49
+ sitemap: config.site ? { enabled: true, host: config.site } : { enabled: false },
55
50
  router: {
56
51
  generatedRouteTree: "routeTree.gen.ts",
57
52
  basepath: config.base,
@@ -1,2 +0,0 @@
1
- import { type ClassValue } from "clsx";
2
- export declare function cn(...inputs: ClassValue[]): string;
@@ -1,6 +0,0 @@
1
- import { clsx } from "clsx";
2
- import { twMerge } from "tailwind-merge";
3
- export function cn(...inputs) {
4
- return twMerge(clsx(inputs));
5
- }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvdXRpbHMvc3R5bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQixJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDNUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXhDLE1BQU0sVUFBVSxFQUFFLENBQUMsR0FBRyxNQUFvQjtJQUN4QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtBQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDbGFzc1ZhbHVlLCBjbHN4IH0gZnJvbSBcImNsc3hcIlxuaW1wb3J0IHsgdHdNZXJnZSB9IGZyb20gXCJ0YWlsd2luZC1tZXJnZVwiXG5cbmV4cG9ydCBmdW5jdGlvbiBjbiguLi5pbnB1dHM6IENsYXNzVmFsdWVbXSkge1xuICByZXR1cm4gdHdNZXJnZShjbHN4KGlucHV0cykpXG59XG4iXX0=
@@ -1,6 +0,0 @@
1
- import { type ClassValue, clsx } from "clsx"
2
- import { twMerge } from "tailwind-merge"
3
-
4
- export function cn(...inputs: ClassValue[]) {
5
- return twMerge(clsx(inputs))
6
- }