@carlonicora/nextjs-jsonapi 1.109.0 → 1.110.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/{AssistantMessageInterface-Cs1yb-gF.d.ts → AssistantMessageInterface-BNzf1etU.d.ts} +14 -1
- package/dist/{AssistantMessageInterface-DQ3mH5L8.d.mts → AssistantMessageInterface-DrgHDjZ5.d.mts} +14 -1
- package/dist/{BlockNoteEditor-3XYBZLWO.js → BlockNoteEditor-7OKW6HHN.js} +19 -20
- package/dist/BlockNoteEditor-7OKW6HHN.js.map +1 -0
- package/dist/{BlockNoteEditor-EBFZG7AL.mjs → BlockNoteEditor-K7IIWM3S.mjs} +4 -5
- package/dist/{BlockNoteEditor-EBFZG7AL.mjs.map → BlockNoteEditor-K7IIWM3S.mjs.map} +1 -1
- package/dist/BlockNoteViewer-OPSCTHKJ.mjs +31 -0
- package/dist/BlockNoteViewer-OPSCTHKJ.mjs.map +1 -0
- package/dist/BlockNoteViewer-UW5VZ5UF.js +31 -0
- package/dist/BlockNoteViewer-UW5VZ5UF.js.map +1 -0
- package/dist/billing/index.d.mts +41 -41
- package/dist/billing/index.d.ts +41 -41
- package/dist/billing/index.js +346 -347
- package/dist/billing/index.js.map +1 -1
- package/dist/billing/index.mjs +3 -4
- package/dist/billing/index.mjs.map +1 -1
- package/dist/{chunk-7E3O52U5.js → chunk-6XWW67F2.js} +25 -12
- package/dist/chunk-6XWW67F2.js.map +1 -0
- package/dist/{chunk-UHO3KUUH.js → chunk-AKXUNE3A.js} +977 -850
- package/dist/chunk-AKXUNE3A.js.map +1 -0
- package/dist/{chunk-UOYIWJEJ.mjs → chunk-CWVYU4YZ.mjs} +18 -5
- package/dist/{chunk-UOYIWJEJ.mjs.map → chunk-CWVYU4YZ.mjs.map} +1 -1
- package/dist/{chunk-CRTVAQEK.mjs → chunk-TXVVZLUQ.mjs} +1388 -1261
- package/dist/chunk-TXVVZLUQ.mjs.map +1 -0
- package/dist/{chunk-CFI4WZ5R.js → chunk-U2HR57MY.js} +111 -5
- package/dist/chunk-U2HR57MY.js.map +1 -0
- package/dist/chunk-WPAQRB5Q.mjs +7 -0
- package/dist/chunk-WPAQRB5Q.mjs.map +1 -0
- package/dist/chunk-YBZVWLPH.js +7 -0
- package/dist/chunk-YBZVWLPH.js.map +1 -0
- package/dist/{chunk-MSNNAHDB.mjs → chunk-ZYPNVEHB.mjs} +112 -6
- package/dist/{chunk-MSNNAHDB.mjs.map → chunk-ZYPNVEHB.mjs.map} +1 -1
- package/dist/client/index.d.mts +3 -4
- package/dist/client/index.d.ts +3 -4
- package/dist/client/index.js +4 -5
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +3 -4
- package/dist/components/index.d.mts +418 -415
- package/dist/components/index.d.ts +418 -415
- package/dist/components/index.js +6 -5
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +5 -4
- package/dist/{config-CN23v3eJ.d.ts → config-BrkU_Ynz.d.ts} +2 -2
- package/dist/{config-gh88Qn4h.d.mts → config-snd2ToEB.d.mts} +2 -2
- package/dist/contexts/index.d.mts +15 -15
- package/dist/contexts/index.d.ts +15 -15
- package/dist/contexts/index.js +4 -5
- package/dist/contexts/index.js.map +1 -1
- package/dist/contexts/index.mjs +3 -4
- package/dist/core/index.d.mts +35 -4
- package/dist/core/index.d.ts +35 -4
- package/dist/core/index.js +2 -2
- package/dist/core/index.mjs +1 -1
- package/dist/features/help/index.d.mts +25 -66
- package/dist/features/help/index.d.ts +25 -66
- package/dist/features/help/index.js +114 -124
- package/dist/features/help/index.js.map +1 -1
- package/dist/features/help/index.mjs +95 -105
- package/dist/features/help/index.mjs.map +1 -1
- package/dist/features/help/server.d.mts +27 -65
- package/dist/features/help/server.d.ts +27 -65
- package/dist/features/help/server.js +4 -119
- package/dist/features/help/server.js.map +1 -1
- package/dist/features/help/server.mjs +4 -119
- package/dist/features/help/server.mjs.map +1 -1
- package/dist/help-content-config.interface-C5ESIod9.d.mts +13 -0
- package/dist/help-content-config.interface-C5ESIod9.d.ts +13 -0
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -3
- package/dist/server/index.js +3 -3
- package/dist/server/index.mjs +1 -1
- package/dist/testing/index.d.mts +1 -2
- package/dist/testing/index.d.ts +1 -2
- package/package.json +1 -6
- package/src/client/config.ts +1 -1
- package/src/components/index.ts +1 -0
- package/src/components/viewers/BlockNoteViewer.tsx +27 -0
- package/src/components/viewers/BlockNoteViewerContainer.tsx +10 -0
- package/src/core/registry/helpStore.ts +2 -19
- package/src/features/assistant-message/components/parts/MessageSourcesContainer.tsx +4 -0
- package/src/features/assistant-message/components/parts/tabs/ContentsTab.tsx +5 -5
- package/src/features/assistant-message/components/parts/tabs/ReferencesTab.tsx +3 -2
- package/src/features/help/components/HelpArticleBody.tsx +27 -19
- package/src/features/help/components/HelpHint.tsx +20 -11
- package/src/features/help/components/HelpSearchResultRow.tsx +16 -6
- package/src/features/help/components/HelpSideNav.tsx +54 -19
- package/src/features/help/components/__tests__/HelpAskAi.spec.tsx +1 -1
- package/src/features/help/components/__tests__/HelpHint.spec.tsx +17 -17
- package/src/features/help/components/__tests__/HelpSearchResultRow.spec.tsx +18 -19
- package/src/features/help/components/__tests__/HelpSideNav.spec.tsx +20 -22
- package/src/features/help/contexts/HelpContext.spec.tsx +1 -3
- package/src/features/help/index.ts +3 -6
- package/src/features/help/interfaces/help-content-config.interface.ts +0 -5
- package/src/features/help/server-entry.ts +6 -15
- package/src/features/help/types/help-article.types.ts +2 -4
- package/src/features/how-to/HowToModule.ts +14 -1
- package/src/features/how-to/components/forms/HowToEditor.tsx +108 -4
- package/src/features/how-to/data/HowTo.spec.ts +43 -0
- package/src/features/how-to/data/HowTo.ts +47 -4
- package/src/features/how-to/data/HowToInterface.ts +14 -1
- package/src/features/how-to/data/HowToService.ts +61 -0
- package/dist/BlockNoteEditor-3XYBZLWO.js.map +0 -1
- package/dist/chunk-3J7RQBF3.js +0 -123
- package/dist/chunk-3J7RQBF3.js.map +0 -1
- package/dist/chunk-7E3O52U5.js.map +0 -1
- package/dist/chunk-CFI4WZ5R.js.map +0 -1
- package/dist/chunk-CQID6RCF.mjs +0 -38
- package/dist/chunk-CQID6RCF.mjs.map +0 -1
- package/dist/chunk-CRTVAQEK.mjs.map +0 -1
- package/dist/chunk-MZTKPPET.mjs +0 -123
- package/dist/chunk-MZTKPPET.mjs.map +0 -1
- package/dist/chunk-UHO3KUUH.js.map +0 -1
- package/dist/chunk-YQQHAFBS.js +0 -38
- package/dist/chunk-YQQHAFBS.js.map +0 -1
- package/dist/features/help/server/createHelpAssetRouteHandler.d.mts +0 -11
- package/dist/features/help/server/createHelpAssetRouteHandler.d.ts +0 -11
- package/dist/features/help/server/createHelpAssetRouteHandler.js +0 -43
- package/dist/features/help/server/createHelpAssetRouteHandler.js.map +0 -1
- package/dist/features/help/server/createHelpAssetRouteHandler.mjs +0 -43
- package/dist/features/help/server/createHelpAssetRouteHandler.mjs.map +0 -1
- package/dist/help-content-config.interface-B9L02u9i.d.mts +0 -50
- package/dist/help-content-config.interface-B9L02u9i.d.ts +0 -50
- package/src/features/help/components/mdx/Callout.tsx +0 -21
- package/src/features/help/components/mdx/EntityRef.tsx +0 -18
- package/src/features/help/components/mdx/KeyBinding.tsx +0 -6
- package/src/features/help/components/mdx/Related.tsx +0 -33
- package/src/features/help/components/mdx/Screenshot.tsx +0 -9
- package/src/features/help/components/mdx/Steps.tsx +0 -21
- package/src/features/help/components/mdx/Video.tsx +0 -8
- package/src/features/help/components/mdx/mdx-server-components.ts +0 -23
- package/src/features/help/components/mdx/mdxComponents.ts +0 -9
- package/src/features/help/hooks/useHelpArticle.ts +0 -7
- package/src/features/help/hooks/useHelpManifest.ts +0 -5
- package/src/features/help/server/__tests__/createHelpAssetRouteHandler.spec.ts +0 -43
- package/src/features/help/server/createHelpAssetRouteHandler.ts +0 -35
- package/src/features/help/server/generateHelpArticleMetadata.ts +0 -18
- package/src/features/help/server/generateHelpArticleStaticParams.ts +0 -7
- package/src/features/help/server/generateHelpModeStaticParams.ts +0 -5
- package/src/features/help/server/getHelpContent.ts +0 -17
- package/src/features/help/server/index.ts +0 -8
- package/src/features/help/server/serializeHelpArticle.tsx +0 -46
- package/src/features/help/utils/__tests__/helpNavigation.spec.ts +0 -70
- package/src/features/help/utils/helpNavigation.ts +0 -29
package/dist/chunk-MZTKPPET.mjs
DELETED
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Modules
|
|
3
|
-
} from "./chunk-MSNNAHDB.mjs";
|
|
4
|
-
import {
|
|
5
|
-
__name
|
|
6
|
-
} from "./chunk-PAWJFY3S.mjs";
|
|
7
|
-
|
|
8
|
-
// src/features/help/types/help-article.types.ts
|
|
9
|
-
var HELP_MODES = ["tutorial", "how-to", "reference", "explanation"];
|
|
10
|
-
|
|
11
|
-
// src/features/help/utils/helpNavigation.ts
|
|
12
|
-
function buildHelpNav(manifest) {
|
|
13
|
-
return HELP_MODES.map((mode) => ({
|
|
14
|
-
mode,
|
|
15
|
-
articles: manifest.filter((a) => a.mode === mode && !a.draft).sort((a, b) => a.order - b.order)
|
|
16
|
-
}));
|
|
17
|
-
}
|
|
18
|
-
__name(buildHelpNav, "buildHelpNav");
|
|
19
|
-
function findHelpArticle(manifest, mode, slug) {
|
|
20
|
-
return manifest.find((a) => a.mode === mode && a.slug === slug);
|
|
21
|
-
}
|
|
22
|
-
__name(findHelpArticle, "findHelpArticle");
|
|
23
|
-
function prevNextWithinMode(manifest, current) {
|
|
24
|
-
const siblings = manifest.filter((a) => a.mode === current.mode && !a.draft).sort((a, b) => a.order - b.order);
|
|
25
|
-
const idx = siblings.findIndex((a) => a.slug === current.slug);
|
|
26
|
-
return {
|
|
27
|
-
prev: idx > 0 ? siblings[idx - 1] : null,
|
|
28
|
-
next: idx >= 0 && idx < siblings.length - 1 ? siblings[idx + 1] : null
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
__name(prevNextWithinMode, "prevNextWithinMode");
|
|
32
|
-
|
|
33
|
-
// src/features/help/components/mdx/Callout.tsx
|
|
34
|
-
import { InfoIcon, AlertTriangleIcon, LightbulbIcon, XCircleIcon } from "lucide-react";
|
|
35
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
36
|
-
var STYLES = {
|
|
37
|
-
info: { icon: InfoIcon, ring: "ring-blue-500/30 bg-blue-500/5" },
|
|
38
|
-
warning: { icon: AlertTriangleIcon, ring: "ring-amber-500/30 bg-amber-500/5" },
|
|
39
|
-
tip: { icon: LightbulbIcon, ring: "ring-emerald-500/30 bg-emerald-500/5" },
|
|
40
|
-
danger: { icon: XCircleIcon, ring: "ring-rose-500/30 bg-rose-500/5" }
|
|
41
|
-
};
|
|
42
|
-
function Callout({ type = "info", children }) {
|
|
43
|
-
const { icon: Icon, ring } = STYLES[type];
|
|
44
|
-
return /* @__PURE__ */ jsxs("div", { className: `my-4 flex gap-3 rounded-md ring-1 p-3 ${ring}`, children: [
|
|
45
|
-
/* @__PURE__ */ jsx(Icon, { className: "mt-0.5 h-4 w-4 shrink-0" }),
|
|
46
|
-
/* @__PURE__ */ jsx("div", { className: "text-sm leading-relaxed", children })
|
|
47
|
-
] });
|
|
48
|
-
}
|
|
49
|
-
__name(Callout, "Callout");
|
|
50
|
-
|
|
51
|
-
// src/features/help/components/mdx/Steps.tsx
|
|
52
|
-
import { Children } from "react";
|
|
53
|
-
import { Fragment, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
54
|
-
function Steps({ children }) {
|
|
55
|
-
const items = Children.toArray(children);
|
|
56
|
-
return /* @__PURE__ */ jsx2("ol", { className: "my-4 list-none space-y-3 pl-0", children: items.map((child, i) => /* @__PURE__ */ jsxs2("li", { className: "flex gap-3", children: [
|
|
57
|
-
/* @__PURE__ */ jsx2("span", { className: "bg-muted text-muted-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full text-xs", children: i + 1 }),
|
|
58
|
-
/* @__PURE__ */ jsx2("div", { className: "flex-1 [&>p:first-child]:mt-0", children: child })
|
|
59
|
-
] }, i)) });
|
|
60
|
-
}
|
|
61
|
-
__name(Steps, "Steps");
|
|
62
|
-
function Step({ children }) {
|
|
63
|
-
return /* @__PURE__ */ jsx2(Fragment, { children });
|
|
64
|
-
}
|
|
65
|
-
__name(Step, "Step");
|
|
66
|
-
|
|
67
|
-
// src/features/help/components/mdx/Screenshot.tsx
|
|
68
|
-
import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
69
|
-
function Screenshot({ src, alt, caption }) {
|
|
70
|
-
const url = src.startsWith("/") ? src : `/help-assets/${src}`;
|
|
71
|
-
return /* @__PURE__ */ jsxs3("figure", { className: "my-4", children: [
|
|
72
|
-
/* @__PURE__ */ jsx3("img", { src: url, alt: alt ?? caption ?? "", className: "rounded-md ring-1 ring-border" }),
|
|
73
|
-
caption ? /* @__PURE__ */ jsx3("figcaption", { className: "text-muted-foreground mt-1 text-xs", children: caption }) : null
|
|
74
|
-
] });
|
|
75
|
-
}
|
|
76
|
-
__name(Screenshot, "Screenshot");
|
|
77
|
-
|
|
78
|
-
// src/features/help/components/mdx/EntityRef.tsx
|
|
79
|
-
import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
80
|
-
function EntityRef({ type, children }) {
|
|
81
|
-
let Icon = null;
|
|
82
|
-
try {
|
|
83
|
-
const m = Modules.findByName(type);
|
|
84
|
-
Icon = m.icon ?? null;
|
|
85
|
-
} catch {
|
|
86
|
-
Icon = null;
|
|
87
|
-
}
|
|
88
|
-
return /* @__PURE__ */ jsxs4("span", { className: "bg-muted text-foreground/90 inline-flex items-center gap-1 rounded px-1.5 py-0.5 align-middle text-xs", children: [
|
|
89
|
-
Icon ? /* @__PURE__ */ jsx4(Icon, { className: "h-3 w-3" }) : null,
|
|
90
|
-
children
|
|
91
|
-
] });
|
|
92
|
-
}
|
|
93
|
-
__name(EntityRef, "EntityRef");
|
|
94
|
-
|
|
95
|
-
// src/features/help/components/mdx/KeyBinding.tsx
|
|
96
|
-
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
97
|
-
function KeyBinding({ children }) {
|
|
98
|
-
return /* @__PURE__ */ jsx5("kbd", { className: "bg-muted text-muted-foreground rounded border px-1.5 py-0.5 text-xs font-medium", children });
|
|
99
|
-
}
|
|
100
|
-
__name(KeyBinding, "KeyBinding");
|
|
101
|
-
|
|
102
|
-
// src/features/help/components/mdx/Video.tsx
|
|
103
|
-
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
104
|
-
function Video({ src, poster }) {
|
|
105
|
-
const url = src.startsWith("/") ? src : `/help-assets/${src}`;
|
|
106
|
-
return /* @__PURE__ */ jsx6("video", { controls: true, preload: "metadata", poster, className: "my-4 w-full rounded-md ring-1 ring-border", children: /* @__PURE__ */ jsx6("source", { src: url }) });
|
|
107
|
-
}
|
|
108
|
-
__name(Video, "Video");
|
|
109
|
-
|
|
110
|
-
export {
|
|
111
|
-
HELP_MODES,
|
|
112
|
-
buildHelpNav,
|
|
113
|
-
findHelpArticle,
|
|
114
|
-
prevNextWithinMode,
|
|
115
|
-
Callout,
|
|
116
|
-
Steps,
|
|
117
|
-
Step,
|
|
118
|
-
Screenshot,
|
|
119
|
-
EntityRef,
|
|
120
|
-
KeyBinding,
|
|
121
|
-
Video
|
|
122
|
-
};
|
|
123
|
-
//# sourceMappingURL=chunk-MZTKPPET.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/features/help/types/help-article.types.ts","../src/features/help/utils/helpNavigation.ts","../src/features/help/components/mdx/Callout.tsx","../src/features/help/components/mdx/Steps.tsx","../src/features/help/components/mdx/Screenshot.tsx","../src/features/help/components/mdx/EntityRef.tsx","../src/features/help/components/mdx/KeyBinding.tsx","../src/features/help/components/mdx/Video.tsx"],"sourcesContent":["/**\n * Local copy of the help-article types to keep this published frontend library\n * decoupled from `@carlonicora/nestjs-neo4jsonapi`. Must stay in sync with\n * `packages/nestjs-neo4jsonapi/src/foundations/help-content-sync/interfaces/help-article.interface.ts`.\n */\n\nexport const HELP_MODES = [\"tutorial\", \"how-to\", \"reference\", \"explanation\"] as const;\nexport type HelpMode = (typeof HELP_MODES)[number];\n\nexport interface HelpHeading {\n depth: 2 | 3;\n slug: string;\n text: string;\n}\n\nexport interface HelpArticle {\n id: string;\n slug: string;\n mode: HelpMode;\n title: string;\n summary: string;\n order: number;\n tags: readonly string[];\n contextualKeys: readonly string[];\n aiIndexed: boolean;\n draft: boolean;\n contentHash: string;\n path: string;\n headings: readonly HelpHeading[];\n relatedSlugs: readonly string[];\n lastUpdated: string;\n}\n\nexport interface HelpRedirect {\n from: string;\n to: string;\n}\n","import { HELP_MODES, type HelpArticle, type HelpMode } from \"../types/help-article.types\";\n\nexport interface HelpNavGroup {\n mode: HelpMode;\n articles: HelpArticle[];\n}\n\nexport function buildHelpNav(manifest: readonly HelpArticle[]): HelpNavGroup[] {\n return HELP_MODES.map((mode) => ({\n mode,\n articles: manifest.filter((a) => a.mode === mode && !a.draft).sort((a, b) => a.order - b.order),\n }));\n}\n\nexport function findHelpArticle(manifest: readonly HelpArticle[], mode: string, slug: string): HelpArticle | undefined {\n return manifest.find((a) => a.mode === mode && a.slug === slug);\n}\n\nexport function prevNextWithinMode(\n manifest: readonly HelpArticle[],\n current: HelpArticle,\n): { prev: HelpArticle | null; next: HelpArticle | null } {\n const siblings = manifest.filter((a) => a.mode === current.mode && !a.draft).sort((a, b) => a.order - b.order);\n const idx = siblings.findIndex((a) => a.slug === current.slug);\n return {\n prev: idx > 0 ? siblings[idx - 1] : null,\n next: idx >= 0 && idx < siblings.length - 1 ? siblings[idx + 1] : null,\n };\n}\n","import { InfoIcon, AlertTriangleIcon, LightbulbIcon, XCircleIcon, LucideIcon } from \"lucide-react\";\nimport { ReactNode } from \"react\";\n\ntype CalloutType = \"info\" | \"warning\" | \"tip\" | \"danger\";\n\nconst STYLES: Record<CalloutType, { icon: LucideIcon; ring: string }> = {\n info: { icon: InfoIcon, ring: \"ring-blue-500/30 bg-blue-500/5\" },\n warning: { icon: AlertTriangleIcon, ring: \"ring-amber-500/30 bg-amber-500/5\" },\n tip: { icon: LightbulbIcon, ring: \"ring-emerald-500/30 bg-emerald-500/5\" },\n danger: { icon: XCircleIcon, ring: \"ring-rose-500/30 bg-rose-500/5\" },\n};\n\nexport function Callout({ type = \"info\", children }: { type?: CalloutType; children: ReactNode }) {\n const { icon: Icon, ring } = STYLES[type];\n return (\n <div className={`my-4 flex gap-3 rounded-md ring-1 p-3 ${ring}`}>\n <Icon className=\"mt-0.5 h-4 w-4 shrink-0\" />\n <div className=\"text-sm leading-relaxed\">{children}</div>\n </div>\n );\n}\n","import { ReactNode, Children } from \"react\";\n\nexport function Steps({ children }: { children: ReactNode }) {\n const items = Children.toArray(children);\n return (\n <ol className=\"my-4 list-none space-y-3 pl-0\">\n {items.map((child, i) => (\n <li key={i} className=\"flex gap-3\">\n <span className=\"bg-muted text-muted-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full text-xs\">\n {i + 1}\n </span>\n <div className=\"flex-1 [&>p:first-child]:mt-0\">{child}</div>\n </li>\n ))}\n </ol>\n );\n}\n\nexport function Step({ children }: { children: ReactNode }) {\n return <>{children}</>;\n}\n","export function Screenshot({ src, alt, caption }: { src: string; alt?: string; caption?: string }) {\n const url = src.startsWith(\"/\") ? src : `/help-assets/${src}`;\n return (\n <figure className=\"my-4\">\n <img src={url} alt={alt ?? caption ?? \"\"} className=\"rounded-md ring-1 ring-border\" />\n {caption ? <figcaption className=\"text-muted-foreground mt-1 text-xs\">{caption}</figcaption> : null}\n </figure>\n );\n}\n","import { Modules } from \"../../../../core\";\nimport { ReactNode } from \"react\";\n\nexport function EntityRef({ type, children }: { type: string; children: ReactNode }) {\n let Icon: React.ComponentType<{ className?: string }> | null = null;\n try {\n const m = Modules.findByName(type);\n Icon = m.icon ?? null;\n } catch {\n Icon = null;\n }\n return (\n <span className=\"bg-muted text-foreground/90 inline-flex items-center gap-1 rounded px-1.5 py-0.5 align-middle text-xs\">\n {Icon ? <Icon className=\"h-3 w-3\" /> : null}\n {children}\n </span>\n );\n}\n","import { ReactNode } from \"react\";\nexport function KeyBinding({ children }: { children: ReactNode }) {\n return (\n <kbd className=\"bg-muted text-muted-foreground rounded border px-1.5 py-0.5 text-xs font-medium\">{children}</kbd>\n );\n}\n","export function Video({ src, poster }: { src: string; poster?: string }) {\n const url = src.startsWith(\"/\") ? src : `/help-assets/${src}`;\n return (\n <video controls preload=\"metadata\" poster={poster} className=\"my-4 w-full rounded-md ring-1 ring-border\">\n <source src={url} />\n </video>\n );\n}\n"],"mappings":"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","names":["jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx"]}
|