netra-artifacts 0.1.0-alpha.11 → 0.1.0-alpha.12
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/iframe/HtmlArtifactCard.d.ts.map +1 -1
- package/dist/iframe/HtmlArtifactCard.js +2 -2
- package/dist/iframe/HtmlArtifactCard.js.map +1 -1
- package/dist/iframe/HtmlArtifactModal.d.ts +7 -1
- package/dist/iframe/HtmlArtifactModal.d.ts.map +1 -1
- package/dist/iframe/HtmlArtifactModal.js +11 -2
- package/dist/iframe/HtmlArtifactModal.js.map +1 -1
- package/dist/iframe/HtmlArtifactPreview.d.ts.map +1 -1
- package/dist/iframe/HtmlArtifactPreview.js +22 -1
- package/dist/iframe/HtmlArtifactPreview.js.map +1 -1
- package/dist/iframe/iframeSizing.d.ts +0 -11
- package/dist/iframe/iframeSizing.d.ts.map +1 -1
- package/dist/iframe/iframeSizing.js +11 -1
- package/dist/iframe/iframeSizing.js.map +1 -1
- package/dist/iframe/styles.d.ts +1 -1
- package/dist/iframe/styles.d.ts.map +1 -1
- package/dist/iframe/styles.js +8 -0
- package/dist/iframe/styles.js.map +1 -1
- package/dist/prompts/threejsGamePrompt.d.ts +1 -1
- package/dist/prompts/threejsGamePrompt.d.ts.map +1 -1
- package/dist/prompts/threejsGamePrompt.js +14 -4
- package/dist/prompts/threejsGamePrompt.js.map +1 -1
- package/dist-cjs/iframe/HtmlArtifactCard.js +2 -2
- package/dist-cjs/iframe/HtmlArtifactCard.js.map +1 -1
- package/dist-cjs/iframe/HtmlArtifactModal.js +11 -2
- package/dist-cjs/iframe/HtmlArtifactModal.js.map +1 -1
- package/dist-cjs/iframe/HtmlArtifactPreview.js +22 -1
- package/dist-cjs/iframe/HtmlArtifactPreview.js.map +1 -1
- package/dist-cjs/iframe/iframeSizing.js +11 -1
- package/dist-cjs/iframe/iframeSizing.js.map +1 -1
- package/dist-cjs/iframe/styles.js +8 -0
- package/dist-cjs/iframe/styles.js.map +1 -1
- package/dist-cjs/prompts/threejsGamePrompt.js +14 -4
- package/dist-cjs/prompts/threejsGamePrompt.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactCard.d.ts","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactCard.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAGV,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAI5B;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"HtmlArtifactCard.d.ts","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactCard.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAGV,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAI5B;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CA0O5D"}
|
|
@@ -106,9 +106,9 @@ export function HtmlArtifactCard(props) {
|
|
|
106
106
|
// sits inline like native chat content — no card frame, no window, no border.
|
|
107
107
|
// A faint action row appears only on hover so the clean UI stays clean.
|
|
108
108
|
if (effectivePresentation === "seamless") {
|
|
109
|
-
return (_jsxs("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [_jsxs("div", { className: "aha-seamless", children: [_jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, bare: true, options: { minHeight: 0, ...previewOptions }, reloadSignal: runSignal }), showToolbar && !streaming && (_jsxs("div", { className: "aha-seamless-actions", children: [_jsx("button", { type: "button", className: "aha-iconbtn", onClick: onRerun, title: "Re-run", "aria-label": "Re-run artifact", children: RERUN_ICON }), allowCopy && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: onCopy, title: "Copy HTML", "aria-label": "Copy HTML", children: copied ? CHECK_ICON : COPY_ICON })), allowPdf && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: onDownloadPdf, title: "Download PDF", "aria-label": "Download PDF", children: PDF_ICON })), allowFullscreen && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: () => setFullscreen(true), title: "Fullscreen", "aria-label": "Fullscreen", children: EXPAND_ICON }))] }))] }), allowFullscreen && (_jsx(HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, children: _jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: { ...previewOptions, autoResize: false, minHeight: 640, maxHeight: 100000 }, reloadSignal: runSignal }) }))] }));
|
|
109
|
+
return (_jsxs("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [_jsxs("div", { className: "aha-seamless", children: [_jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, bare: true, options: { minHeight: 0, ...previewOptions }, reloadSignal: runSignal }), showToolbar && !streaming && (_jsxs("div", { className: "aha-seamless-actions", children: [_jsx("button", { type: "button", className: "aha-iconbtn", onClick: onRerun, title: "Re-run", "aria-label": "Re-run artifact", children: RERUN_ICON }), allowCopy && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: onCopy, title: "Copy HTML", "aria-label": "Copy HTML", children: copied ? CHECK_ICON : COPY_ICON })), allowPdf && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: onDownloadPdf, title: "Download PDF", "aria-label": "Download PDF", children: PDF_ICON })), allowFullscreen && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: () => setFullscreen(true), title: "Fullscreen", "aria-label": "Fullscreen", children: EXPAND_ICON }))] }))] }), allowFullscreen && (_jsx(HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, onViewChange: onRerun, children: _jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: { ...previewOptions, autoResize: false, minHeight: 640, maxHeight: 100000 }, reloadSignal: runSignal }) }))] }));
|
|
110
110
|
}
|
|
111
|
-
return (_jsxs("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [_jsxs("div", { className: "aha-card", "data-variant": variant, style: { ["--aha-radius"]: `${RADIUS[radius]}px` }, children: [showToolbar && (_jsx(HtmlArtifactToolbar, { title: artifact.title, tab: tab, onTabChange: setTab, allowCopy: allowCopy, allowDownload: allowDownload, allowPdf: allowPdf, allowFullscreen: allowFullscreen, copied: copied, streaming: streaming, onCopy: onCopy, onDownload: onDownload, onDownloadPdf: onDownloadPdf, onFullscreen: () => setFullscreen(true), onRerun: onRerun })), tab === "preview" ? (_jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: previewOptions, reloadSignal: runSignal })) : (_jsx(HtmlArtifactCodeView, { html: sourceHtml, maxHeight: previewOptions?.maxHeight ?? 900 }))] }), allowFullscreen && (_jsx(HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, children: _jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: {
|
|
111
|
+
return (_jsxs("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [_jsxs("div", { className: "aha-card", "data-variant": variant, style: { ["--aha-radius"]: `${RADIUS[radius]}px` }, children: [showToolbar && (_jsx(HtmlArtifactToolbar, { title: artifact.title, tab: tab, onTabChange: setTab, allowCopy: allowCopy, allowDownload: allowDownload, allowPdf: allowPdf, allowFullscreen: allowFullscreen, copied: copied, streaming: streaming, onCopy: onCopy, onDownload: onDownload, onDownloadPdf: onDownloadPdf, onFullscreen: () => setFullscreen(true), onRerun: onRerun })), tab === "preview" ? (_jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: previewOptions, reloadSignal: runSignal })) : (_jsx(HtmlArtifactCodeView, { html: sourceHtml, maxHeight: previewOptions?.maxHeight ?? 900 }))] }), allowFullscreen && (_jsx(HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, onViewChange: onRerun, children: _jsx(HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: {
|
|
112
112
|
...previewOptions,
|
|
113
113
|
autoResize: false,
|
|
114
114
|
minHeight: 640,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactCard.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactCard.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"HtmlArtifactCard.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,12 @@ export interface HtmlArtifactModalProps {
|
|
|
4
4
|
onClose: () => void;
|
|
5
5
|
title?: string;
|
|
6
6
|
children: React.ReactNode;
|
|
7
|
+
/**
|
|
8
|
+
* Called when the view should re-run the artifact — on the Re-run button and
|
|
9
|
+
* automatically whenever the device width changes (so games/responsive layouts
|
|
10
|
+
* re-initialise at the new size). Wire this to the card's re-run signal.
|
|
11
|
+
*/
|
|
12
|
+
onViewChange?: () => void;
|
|
7
13
|
}
|
|
8
14
|
/**
|
|
9
15
|
* Premium fullscreen viewer with a responsive testbench: switch the artifact
|
|
@@ -12,5 +18,5 @@ export interface HtmlArtifactModalProps {
|
|
|
12
18
|
* light↔dark (hue-preserving) so a transparent, light-on-dark camouflage
|
|
13
19
|
* artifact is crystal-clear on a light surface too.
|
|
14
20
|
*/
|
|
15
|
-
export declare function HtmlArtifactModal({ open, onClose, title, children }: HtmlArtifactModalProps): import("react/jsx-runtime").JSX.Element | null;
|
|
21
|
+
export declare function HtmlArtifactModal({ open, onClose, title, children, onViewChange }: HtmlArtifactModalProps): import("react/jsx-runtime").JSX.Element | null;
|
|
16
22
|
//# sourceMappingURL=HtmlArtifactModal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactModal.d.ts","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactModal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA+BD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"HtmlArtifactModal.d.ts","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactModal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AA+BD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,sBAAsB,kDA0KzG"}
|
|
@@ -29,10 +29,19 @@ const DEVICES = [
|
|
|
29
29
|
* light↔dark (hue-preserving) so a transparent, light-on-dark camouflage
|
|
30
30
|
* artifact is crystal-clear on a light surface too.
|
|
31
31
|
*/
|
|
32
|
-
export function HtmlArtifactModal({ open, onClose, title, children }) {
|
|
32
|
+
export function HtmlArtifactModal({ open, onClose, title, children, onViewChange }) {
|
|
33
33
|
useArtifactStyles();
|
|
34
34
|
const [device, setDevice] = React.useState("desktop");
|
|
35
35
|
const [inverted, setInverted] = React.useState(false);
|
|
36
|
+
// Switching device width must re-run the artifact so games/responsive layouts
|
|
37
|
+
// re-initialise to the new viewport (e.g. a game re-frames for 9:16 mobile).
|
|
38
|
+
const changeDevice = React.useCallback((id) => {
|
|
39
|
+
setDevice((prev) => {
|
|
40
|
+
if (prev !== id)
|
|
41
|
+
onViewChange?.();
|
|
42
|
+
return id;
|
|
43
|
+
});
|
|
44
|
+
}, [onViewChange]);
|
|
36
45
|
React.useEffect(() => {
|
|
37
46
|
if (!open)
|
|
38
47
|
return;
|
|
@@ -70,7 +79,7 @@ export function HtmlArtifactModal({ open, onClose, title, children }) {
|
|
|
70
79
|
margin: "0 auto",
|
|
71
80
|
width: "100%",
|
|
72
81
|
maxWidth: 1280,
|
|
73
|
-
}, children: [_jsxs("div", { className: "aha-toolbar", children: [_jsxs("span", { className: "aha-dots", "aria-hidden": true, children: [_jsx("span", { className: "aha-dot", style: { background: "#ff5f57" } }), _jsx("span", { className: "aha-dot", style: { background: "#febc2e" } }), _jsx("span", { className: "aha-dot", style: { background: "#28c840" } })] }), _jsx("strong", { className: "aha-title", children: title ?? "Artifact" }), _jsx("div", { style: { flex: 1 } }), _jsx("div", { className: "aha-seg", role: "tablist", "aria-label": "Preview width", children: DEVICES.map((d) => (_jsxs("button", { type: "button", role: "tab", "aria-selected": device === d.id, "data-active": device === d.id, onClick: () =>
|
|
82
|
+
}, children: [_jsxs("div", { className: "aha-toolbar", children: [_jsxs("span", { className: "aha-dots", "aria-hidden": true, children: [_jsx("span", { className: "aha-dot", style: { background: "#ff5f57" } }), _jsx("span", { className: "aha-dot", style: { background: "#febc2e" } }), _jsx("span", { className: "aha-dot", style: { background: "#28c840" } })] }), _jsx("strong", { className: "aha-title", children: title ?? "Artifact" }), _jsx("div", { style: { flex: 1 } }), _jsx("div", { className: "aha-seg", role: "tablist", "aria-label": "Preview width", children: DEVICES.map((d) => (_jsxs("button", { type: "button", role: "tab", "aria-selected": device === d.id, "data-active": device === d.id, onClick: () => changeDevice(d.id), title: d.label, style: { display: "inline-flex", alignItems: "center", gap: 6 }, children: [d.icon, _jsx("span", { className: "aha-seg-label", style: { fontSize: 12 }, children: d.label })] }, d.id))) }), onViewChange && (_jsx("button", { type: "button", className: "aha-iconbtn", onClick: () => onViewChange(), title: "Re-run", "aria-label": "Re-run artifact", children: _jsxs("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("polyline", { points: "23 4 23 10 17 10" }), _jsx("polyline", { points: "1 20 1 14 7 14" }), _jsx("path", { d: "M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15" })] }) })), _jsx("button", { type: "button", className: "aha-iconbtn", onClick: () => setInverted((v) => !v), title: inverted ? "Normal colors" : "Invert (light view)", "aria-label": "Invert colors", "data-active": inverted, style: inverted ? { background: "var(--aha-hover)", color: "var(--aha-fg)" } : undefined, children: _jsxs("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("circle", { cx: "12", cy: "12", r: "9" }), _jsx("path", { d: "M12 3a9 9 0 0 0 0 18z", fill: "currentColor", stroke: "none" })] }) }), _jsx("button", { type: "button", className: "aha-iconbtn", onClick: onClose, "aria-label": "Close", style: { fontSize: 18 }, children: "\u00D7" })] }), _jsx("div", { style: {
|
|
74
83
|
flex: 1,
|
|
75
84
|
minHeight: 0,
|
|
76
85
|
overflow: "auto",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactModal.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactModal.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"HtmlArtifactModal.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactPreview.d.ts","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactPreview.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAGrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,4EAA4E;IAC5E,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,oFAAoF;IACpF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"HtmlArtifactPreview.d.ts","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactPreview.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAGrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,4EAA4E;IAC5E,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,oFAAoF;IACpF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CA0TlE"}
|
|
@@ -127,6 +127,27 @@ export function HtmlArtifactPreview(props) {
|
|
|
127
127
|
prevReloadRef.current = reloadSignal;
|
|
128
128
|
rerun();
|
|
129
129
|
}, [reloadSignal, rerun]);
|
|
130
|
+
// Auto-refresh when the artifact (re)enters the viewport — re-runs scripts/
|
|
131
|
+
// games and re-measures the height, which also recovers any frame that
|
|
132
|
+
// collapsed while off-screen. Skips the initial appearance and streaming.
|
|
133
|
+
const containerRef = React.useRef(null);
|
|
134
|
+
React.useEffect(() => {
|
|
135
|
+
const el = containerRef.current;
|
|
136
|
+
if (!el || typeof IntersectionObserver === "undefined")
|
|
137
|
+
return;
|
|
138
|
+
let wasVisible = false;
|
|
139
|
+
let first = true;
|
|
140
|
+
const io = new IntersectionObserver((entries) => {
|
|
141
|
+
const visible = entries.some((e) => e.isIntersecting);
|
|
142
|
+
if (visible && !wasVisible && !first && !stateRef.current.streaming) {
|
|
143
|
+
rerun();
|
|
144
|
+
}
|
|
145
|
+
first = false;
|
|
146
|
+
wasVisible = visible;
|
|
147
|
+
}, { threshold: 0.01 });
|
|
148
|
+
io.observe(el);
|
|
149
|
+
return () => io.disconnect();
|
|
150
|
+
}, [rerun]);
|
|
130
151
|
// Schedule a flush, throttled to at most once per `debounceMs` and aligned to
|
|
131
152
|
// an animation frame so rapid SSE deltas don't trigger a render storm.
|
|
132
153
|
const schedule = React.useCallback(() => {
|
|
@@ -195,7 +216,7 @@ export function HtmlArtifactPreview(props) {
|
|
|
195
216
|
const showSkeleton = !html && !errored && !bare;
|
|
196
217
|
const minHeight = bare ? 0 : opts.minHeight;
|
|
197
218
|
const iframeSrcDoc = html ? srcDoc : "";
|
|
198
|
-
return (_jsxs("div", { style: {
|
|
219
|
+
return (_jsxs("div", { ref: containerRef, style: {
|
|
199
220
|
position: "relative",
|
|
200
221
|
width: "100%",
|
|
201
222
|
background: bare ? "transparent" : "var(--aha-bg)",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactPreview.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactPreview.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HtmlArtifactPreview.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactPreview.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAoBtD,MAAM,UAAU,mBAAmB,CAAC,KAA+B;IACjE,iBAAiB,EAAE,CAAC;IACpB,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAE9G,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CACxB,GAAG,EAAE,CAAC,WAAW,CAAC,uBAAuB,EAAE,OAAO,CAAC,EACnD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;QACpE,OAAO,EAAE,IAAI,CAAC,UAAU;QACxB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;IAEH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvD,6EAA6E;IAC7E,6DAA6D;IAC7D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAElD,+EAA+E;IAC/E,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAS,EAAE,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAAsB,IAAI,CAAC,CAAC;IAErE,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAgC,IAAI,CAAC,CAAC;IAEvE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE;QACzB,QAAQ,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;IAE5B,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAI1B,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAExC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACxC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,MAAM,EAAE,CAAC;QACT,oBAAoB,CAAC,OAAO,EAAE,EAAE,CAAC;QACjC,oBAAoB,CAAC,OAAO,GAAG,0BAA0B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/E,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAExB,6EAA6E;IAC7E,qEAAqE;IACrE,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAC7B,CAAC,GAAW,EAAE,WAAW,GAAG,KAAK,EAAE,EAAE;QACnC,IAAI,GAAG,KAAK,UAAU,CAAC,OAAO,IAAI,CAAC,WAAW;YAAE,OAAO;QACvD,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;QACzB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,WAAW,EAAE,CAAC;YAChB,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;YAC1B,oBAAoB,CAAC,OAAO,EAAE,EAAE,CAAC;YACjC,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;YACpC,SAAS,CAAC,GAAG,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QACD,IAAI,SAAS,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC;gBACtC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBAC5D,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACjC,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;YACpE,CAAC;QACH,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,CAAC,CACrB,CAAC;IAEF,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;QAC9B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QACnD,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,SAAS,GACb,YAAY,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,sBAAsB,EAAE,CAAC,CAAC;YAChF,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,SAAS,CAAC,UAAU;gBAAE,OAAO;YAClC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;QAC7B,CAAC;QAED,MAAM,GAAG,GAAG,WAAW,CAAC,SAAS,EAAE;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,kBAAkB;YACnF,UAAU,EAAE,IAAI;YAChB,KAAK;YACL,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAEzB,2EAA2E;IAC3E,8EAA8E;IAC9E,wCAAwC;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QACxC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI;YACd,YAAY,EACV,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,kBAAkB;YACvE,UAAU,EAAE,IAAI;YAChB,KAAK;YACL,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1B,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;QACzB,oBAAoB,CAAC,OAAO,EAAE,EAAE,CAAC;QACjC,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;QACpC,SAAS,CAAC,GAAG,CAAC,CAAC;QACf,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAElB,uEAAuE;IACvE,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACjD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,aAAa,CAAC,OAAO,KAAK,YAAY;YAAE,OAAO;QACnD,aAAa,CAAC,OAAO,GAAG,YAAY,CAAC;QACrC,KAAK,EAAE,CAAC;IACV,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IAE1B,4EAA4E;IAC5E,uEAAuE;IACvE,0EAA0E;IAC1E,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAwB,IAAI,CAAC,CAAC;IAC/D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,EAAE,IAAI,OAAO,oBAAoB,KAAK,WAAW;YAAE,OAAO;QAC/D,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,MAAM,EAAE,GAAG,IAAI,oBAAoB,CACjC,CAAC,OAAO,EAAE,EAAE;YACV,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YACtD,IAAI,OAAO,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBACpE,KAAK,EAAE,CAAC;YACV,CAAC;YACD,KAAK,GAAG,KAAK,CAAC;YACd,UAAU,GAAG,OAAO,CAAC;QACvB,CAAC,EACD,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACf,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IAC/B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,8EAA8E;IAC9E,uEAAuE;IACvE,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC/B,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI;YAAE,OAAO,CAAC,kBAAkB;QACxE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;YACnB,IAAI,OAAO,qBAAqB,KAAK,WAAW,EAAE,CAAC;gBACjD,KAAK,CAAC,GAAG,GAAG,qBAAqB,CAAC,GAAG,EAAE;oBACrC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;oBACjB,KAAK,EAAE,CAAC;gBACV,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC,CAAC;QACF,IAAI,IAAI,IAAI,CAAC;YAAE,IAAI,EAAE,CAAC;;YACjB,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC;YACxB,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;YAC1B,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YAC9B,oBAAoB,CAAC,OAAO,EAAE,EAAE,CAAC;YACjC,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;YACpC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,sEAAsE;YACtE,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClC,KAAK,EAAE,CAAC;YACR,yEAAyE;YACzE,sEAAsE;YACtE,yEAAyE;YACzE,uEAAuE;YACvE,6DAA6D;YAC7D,MAAM,GAAG,GACP,OAAO,qBAAqB,KAAK,WAAW;gBAC1C,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC;gBAChC,CAAC,CAAC,IAAI,CAAC;YACX,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YACpE,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,oBAAoB,KAAK,WAAW,EAAE,CAAC;oBAC/D,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;gBACD,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC/B,CAAC,CAAC;QACJ,CAAC;QACD,QAAQ,EAAE,CAAC;IACb,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtD,uCAAuC;IACvC,KAAK,CAAC,SAAS,CACb,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,oBAAoB,CAAC,OAAO,EAAE,EAAE,CAAC;QACjC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAC3B,GAAG,EAAE,CAAC,cAAc,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAC5D,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CACzB,CAAC;IAEF,0EAA0E;IAC1E,wEAAwE;IACxE,MAAM,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAExC,OAAO,CACL,eACE,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,MAAM;YACb,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe;YAClD,SAAS;YACT,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;YACvD,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;YAC7C,UAAU,EAAE,uBAAuB;YACnC,uEAAuE;YACvE,oEAAoE;YACpE,6CAA6C;YAC7C,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;SAC1C,aAEA,SAAS,IAAI,CAAC,IAAI,IAAI,cAAK,SAAS,EAAC,cAAc,wBAAe,EAEnE,iBAEE,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,KAAK,IAAI,kBAAkB,EAClC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,UAAU,EAClB,iBAAiB,QACjB,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAC1C,KAAK,EAAE;oBACL,OAAO,EAAE,OAAO;oBAChB,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oBACzC,SAAS;oBACT,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,aAAa;oBACzB,kEAAkE;oBAClE,sEAAsE;oBACtE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;oBACxC,aAAa,EAAE,SAAS,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oBAC3D,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC7B,UAAU,EAAE,mBAAmB;iBAChC,IArBI,QAAQ,CAsBb,EAED,YAAY,IAAI,CACf,eAAK,SAAS,EAAC,UAAU,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,aAC5D,cAAK,SAAS,EAAC,KAAK,GAAG,EACvB,cAAK,SAAS,EAAC,KAAK,GAAG,EACvB,cAAK,SAAS,EAAC,KAAK,GAAG,EACvB,cAAK,SAAS,EAAC,KAAK,GAAG,EACvB,cAAK,SAAS,EAAC,KAAK,GAAG,EACvB,cAAK,SAAS,EAAC,KAAK,GAAG,IACnB,CACP,EAEA,OAAO,IAAI,CACV,cACE,SAAS,EAAC,aAAa,EACvB,KAAK,EAAE;oBACL,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;oBACxC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC3B,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;iBAC7C,YAED,0BACE,cAAK,KAAK,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC,EAAE,oCAElE,EACL,IAAI,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,qCAAqC,IAC9E,GACF,CACP,IACG,CACP,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,SAAS,GAAG;IACV,OAAO,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;AAC7E,CAAC;AAED,mEAAmE;AACnE,SAAS,eAAe,CAAC,KAGxB;IACC,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,OAAO,oBAAoB,KAAK,WAAW,EAAE,CAAC;QACrE,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI;QAAE,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnD,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;IACjB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;AACrB,CAAC;AAED,SAAS,0BAA0B,CACjC,MAAgC;IAEhC,IAAI,GAAgC,CAAC;IACrC,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,EAAE,eAAe,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpC,IACE,KAAK,CAAC,gBAAgB;YACtB,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,KAAK,CAAC,OAAO;YACb,KAAK,CAAC,OAAO;YACb,KAAK,CAAC,QAAQ;YACd,KAAK,CAAC,MAAM,EACZ,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,YAAY,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,MAAM,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,SAAS,CAA6B,CAAC;QACtE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9D,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW;YAAE,OAAO;QAEzB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;QACrD,MAAM,cAAc,GAClB,WAAW,KAAK,GAAG,CAAC,eAAe;YACjC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;QAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,SAAS,GAAG,cAAc,GAAG,EAAE,CAAC;QAC3D,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/D,CAAC,CAAC;IAEF,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAyB,EAAE,GAAa;IACnE,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3C,IACE,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;YAChC,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ;YACpC,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAChC,CAAC;YACD,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAa,EAAE,IAAY;IACtD,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,GAAG,CAAC,eAAe,CAAC;IAC7C,MAAM,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,eAAe,CAAC;IACpC,OAAO,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACxE,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,MAAgB,EAAE,OAAe;IAC5D,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACrE,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAEhE,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAClF,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAChD,CAAC;IACD,8EAA8E;IAC9E,0EAA0E;IAC1E,mCAAmC;IACnC,gBAAgB,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;IACjE,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAChD,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAe,EAAE,MAAe;IACxD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACjD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YAClD,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -3,17 +3,6 @@ export interface AutoSizeOptions {
|
|
|
3
3
|
minHeight?: number;
|
|
4
4
|
maxHeight?: number;
|
|
5
5
|
}
|
|
6
|
-
/**
|
|
7
|
-
* Auto-size an iframe to its full content height so the artifact never shows an
|
|
8
|
-
* inner scrollbar — the page provides the single scroll. This requires reading
|
|
9
|
-
* the framed document, which works when the sandbox includes `allow-same-origin`
|
|
10
|
-
* (the default static path). Script-enabled previews are isolated without
|
|
11
|
-
* same-origin, so measurement gracefully falls back to the configured minimum.
|
|
12
|
-
*
|
|
13
|
-
* Measurement is resilient: it re-measures on load, on every content reflow
|
|
14
|
-
* (ResizeObserver), and after web fonts finish loading (which changes height).
|
|
15
|
-
* If the document is cross-origin/opaque it falls back to `minHeight`.
|
|
16
|
-
*/
|
|
17
6
|
export declare function useIframeAutoSize(options?: AutoSizeOptions): {
|
|
18
7
|
readonly ref: import("react").RefObject<HTMLIFrameElement | null>;
|
|
19
8
|
readonly height: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iframeSizing.d.ts","sourceRoot":"","sources":["../../src/iframe/iframeSizing.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"iframeSizing.d.ts","sourceRoot":"","sources":["../../src/iframe/iframeSizing.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAwBD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,eAAoB;;;;;EAqF9D"}
|
|
@@ -10,11 +10,21 @@ import { useCallback, useEffect, useRef, useState } from "react";
|
|
|
10
10
|
* (ResizeObserver), and after web fonts finish loading (which changes height).
|
|
11
11
|
* If the document is cross-origin/opaque it falls back to `minHeight`.
|
|
12
12
|
*/
|
|
13
|
+
/**
|
|
14
|
+
* Seed height used when `minHeight` is 0 (seamless/camouflage previews). Starting
|
|
15
|
+
* the iframe at 0 makes its viewport 0-tall, so any content sized by viewport or
|
|
16
|
+
* percentage height resolves to 0 → `scrollHeight` is 0 → the resize bridge never
|
|
17
|
+
* reports a height and the artifact stays hidden (seen on freshly-mounted saved
|
|
18
|
+
* generative-UI chats). A non-zero seed gives the first layout a real viewport;
|
|
19
|
+
* the measurement then converges to the true content height (and may shrink below
|
|
20
|
+
* the seed, since the clamp floor is `minHeight`).
|
|
21
|
+
*/
|
|
22
|
+
const MEASURE_SEED = 280;
|
|
13
23
|
export function useIframeAutoSize(options = {}) {
|
|
14
24
|
const { enabled = true, minHeight = 420, maxHeight = 900 } = options;
|
|
15
25
|
const ref = useRef(null);
|
|
16
26
|
const observerRef = useRef(null);
|
|
17
|
-
const [height, setHeight] = useState(minHeight);
|
|
27
|
+
const [height, setHeight] = useState(minHeight > 0 ? minHeight : MEASURE_SEED);
|
|
18
28
|
const measure = useCallback(() => {
|
|
19
29
|
if (!enabled)
|
|
20
30
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iframeSizing.js","sourceRoot":"","sources":["../../src/iframe/iframeSizing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAQjE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA2B,EAAE;IAC7D,MAAM,EAAE,OAAO,GAAG,IAAI,EAAE,SAAS,GAAG,GAAG,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC;IACrE,MAAM,GAAG,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"iframeSizing.js","sourceRoot":"","sources":["../../src/iframe/iframeSizing.ts"],"names":[],"mappings":"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"}
|
package/dist/iframe/styles.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* on the host app's CSS. Uses the CSS `light-dark()` function (the card sets
|
|
5
5
|
* `color-scheme: light dark`) so it adapts to the OS theme automatically.
|
|
6
6
|
*/
|
|
7
|
-
export declare const ARTIFACT_CSS = "\n.aha-scope{\n color-scheme: light dark;\n --aha-bg: light-dark(#fbfbfc, #0c0c0f);\n --aha-elev: light-dark(#ffffff, #161619);\n --aha-fg: light-dark(#15161a, #f4f4f6);\n --aha-muted: light-dark(#6b7280, #9aa0ab);\n --aha-faint: light-dark(#9ca3af, #6b7280);\n --aha-hairline: light-dark(rgba(0,0,0,.07), rgba(255,255,255,.08));\n --aha-ring: light-dark(oklch(0 0 0 / .08), oklch(1 0 0 / .11));\n --aha-hover: light-dark(rgba(0,0,0,.05), rgba(255,255,255,.07));\n --aha-accent: light-dark(#3b3bff, #8aa0ff);\n font-family: ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", sans-serif;\n -webkit-font-smoothing: antialiased;\n}\n\n/* The premium ring + border + layered shadow treatment (no flat white box). */\n.aha-card{\n position: relative;\n border-radius: var(--aha-radius, 22px);\n background: var(--aha-bg);\n color: var(--aha-fg);\n overflow: hidden;\n box-shadow:\n 0 0 0 1px var(--aha-ring),\n light-dark(oklch(0 0 0 / .04), oklch(0 0 0 / .20)) 0px 2px 2px -1px,\n light-dark(oklch(0 0 0 / .035), oklch(0 0 0 / .22)) 0px 10px 20px -6px,\n light-dark(oklch(0 0 0 / .05), oklch(0 0 0 / .35)) 0px 30px 60px -18px;\n transition: box-shadow .25s ease, transform .25s ease;\n}\n.aha-card[data-variant=\"glass\"]{\n background: light-dark(rgba(255,255,255,.72), rgba(22,22,26,.66));\n backdrop-filter: blur(20px) saturate(140%);\n}\n\n.aha-toolbar{\n display:flex; align-items:center; gap:10px;\n padding: 9px 10px 9px 14px;\n background: light-dark(rgba(252,252,253,.82), rgba(20,20,24,.7));\n backdrop-filter: blur(12px);\n border-bottom: 1px solid var(--aha-hairline);\n position: relative; z-index: 2;\n}\n.aha-dots{ display:inline-flex; gap:6px; margin-right:4px; }\n.aha-dot{ width:11px; height:11px; border-radius:50%; }\n.aha-title{\n font-size:13px; font-weight:600; letter-spacing:-0.01em;\n color: var(--aha-fg);\n white-space:nowrap; overflow:hidden; text-overflow:ellipsis;\n min-width:0; flex: 0 1 auto;\n}\n.aha-stream-dot{\n width:7px;height:7px;border-radius:50%;flex:none;\n background:#22c55e; box-shadow:0 0 0 0 rgba(34,197,94,.55);\n animation: aha-pulse 1.5s infinite;\n}\n\n.aha-seg{\n display:inline-flex; padding:3px; gap:2px; border-radius:11px;\n background: light-dark(rgba(0,0,0,.05), rgba(255,255,255,.06));\n box-shadow: inset 0 0 0 1px var(--aha-ring);\n}\n.aha-seg button{\n appearance:none; border:none; cursor:pointer;\n font-size:12px; font-weight:600; letter-spacing:-0.01em;\n padding:5px 13px; border-radius:8px; color: var(--aha-muted);\n background:transparent; transition: all .15s ease;\n}\n.aha-seg button[data-active=\"true\"]{\n color: var(--aha-fg);\n background: var(--aha-elev);\n box-shadow: 0 1px 2px light-dark(rgba(0,0,0,.10), rgba(0,0,0,.4)), 0 0 0 .5px var(--aha-ring);\n}\n\n.aha-iconbtn{\n display:inline-flex; align-items:center; justify-content:center;\n width:32px; height:32px; border-radius:999px; flex:none;\n border:none; cursor:pointer; padding:0;\n color: var(--aha-muted); background:transparent;\n transition: background .15s ease, color .15s ease, transform .1s ease;\n}\n.aha-iconbtn:hover{ background: var(--aha-hover); color: var(--aha-fg); }\n.aha-iconbtn:active{ transform: scale(.94); }\n\n/* Seamless (\"camouflage\") presentation: chromeless, transparent, inline. The\n action row stays invisible until hover so the surface reads as native UI. */\n.aha-seamless{ position:relative; }\n.aha-seamless-actions{\n position:absolute; top:8px; right:8px; z-index:4;\n display:flex; gap:4px; padding:3px; border-radius:999px;\n background: color-mix(in srgb, var(--aha-bg) 70%, transparent);\n border:1px solid var(--aha-border);\n backdrop-filter: blur(8px);\n opacity:0; transform: translateY(-2px);\n transition: opacity .18s ease, transform .18s ease;\n}\n.aha-seamless:hover .aha-seamless-actions,\n.aha-seamless:focus-within .aha-seamless-actions{ opacity:1; transform: translateY(0); }\n\n/* Streaming progress shimmer along the top edge of the preview. */\n.aha-progress{\n position:absolute; top:0; left:0; right:0; height:2px; z-index:3;\n background: linear-gradient(90deg, transparent, var(--aha-accent), transparent);\n background-size: 40% 100%;\n animation: aha-progress 1.1s linear infinite;\n}\n\n.aha-frame{ display:block; width:100%; border:none; background:transparent; }\n.aha-frame[data-fade=\"in\"]{ animation: aha-fade .45s ease both; }\n\n.aha-skel{\n display:grid; gap:14px; padding:26px;\n background: light-dark(linear-gradient(180deg,#fcfcfd,#f4f5f7), linear-gradient(180deg,#121215,#0d0d10));\n}\n.aha-skel .row{\n height:16px; border-radius:8px;\n background: light-dark(\n linear-gradient(90deg, rgba(0,0,0,.05) 25%, rgba(0,0,0,.10) 37%, rgba(0,0,0,.05) 63%),\n linear-gradient(90deg, rgba(255,255,255,.05) 25%, rgba(255,255,255,.10) 37%, rgba(255,255,255,.05) 63%));\n background-size: 400% 100%;\n animation: aha-shimmer 1.4s ease infinite;\n opacity:0; animation-fill-mode: both;\n}\n/* Stagger the skeleton in so it reads as a layout being built up. */\n.aha-skel .row:nth-child(1){ width:42%; animation-delay:0s,.0s; }\n.aha-skel .row:nth-child(2){ width:88%; }\n.aha-skel .row:nth-child(3){ width:74%; }\n.aha-skel .row:nth-child(4){ height:130px; }\n.aha-skel .row:nth-child(5){ width:60%; }\n.aha-skel .row:nth-child(6){ width:80%; }\n.aha-skel .row{ animation: aha-shimmer 1.4s ease infinite, aha-rise .5s ease both; }\n.aha-skel .row:nth-child(2){ animation-delay: 0s, .07s; }\n.aha-skel .row:nth-child(3){ animation-delay: 0s, .14s; }\n.aha-skel .row:nth-child(4){ animation-delay: 0s, .21s; }\n.aha-skel .row:nth-child(5){ animation-delay: 0s, .28s; }\n.aha-skel .row:nth-child(6){ animation-delay: 0s, .35s; }\n\n.aha-overlay{\n display:flex; align-items:center; justify-content:center; text-align:center;\n padding:24px; color: var(--aha-muted); font-size:13px;\n background: light-dark(rgba(255,255,255,.82), rgba(12,12,15,.82));\n backdrop-filter: blur(3px);\n}\n\n@keyframes aha-pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.5)}70%{box-shadow:0 0 0 6px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}\n@keyframes aha-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}\n@keyframes aha-progress{0%{background-position:120% 0}100%{background-position:-20% 0}}\n@keyframes aha-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}\n@keyframes aha-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}\n@media (prefers-reduced-motion: reduce){\n .aha-frame[data-fade=\"in\"], .aha-skel .row, .aha-progress, .aha-stream-dot{ animation: none !important; }\n .aha-skel .row{ opacity:1; }\n}\n";
|
|
7
|
+
export declare const ARTIFACT_CSS = "\n.aha-scope{\n color-scheme: light dark;\n --aha-bg: light-dark(#fbfbfc, #0c0c0f);\n --aha-elev: light-dark(#ffffff, #161619);\n --aha-fg: light-dark(#15161a, #f4f4f6);\n --aha-muted: light-dark(#6b7280, #9aa0ab);\n --aha-faint: light-dark(#9ca3af, #6b7280);\n --aha-hairline: light-dark(rgba(0,0,0,.07), rgba(255,255,255,.08));\n --aha-ring: light-dark(oklch(0 0 0 / .08), oklch(1 0 0 / .11));\n --aha-hover: light-dark(rgba(0,0,0,.05), rgba(255,255,255,.07));\n --aha-accent: light-dark(#3b3bff, #8aa0ff);\n font-family: ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", sans-serif;\n -webkit-font-smoothing: antialiased;\n}\n\n/* The premium ring + border + layered shadow treatment (no flat white box). */\n.aha-card{\n position: relative;\n border-radius: var(--aha-radius, 22px);\n background: var(--aha-bg);\n color: var(--aha-fg);\n overflow: hidden;\n box-shadow:\n 0 0 0 1px var(--aha-ring),\n light-dark(oklch(0 0 0 / .04), oklch(0 0 0 / .20)) 0px 2px 2px -1px,\n light-dark(oklch(0 0 0 / .035), oklch(0 0 0 / .22)) 0px 10px 20px -6px,\n light-dark(oklch(0 0 0 / .05), oklch(0 0 0 / .35)) 0px 30px 60px -18px;\n transition: box-shadow .25s ease, transform .25s ease;\n}\n.aha-card[data-variant=\"glass\"]{\n background: light-dark(rgba(255,255,255,.72), rgba(22,22,26,.66));\n backdrop-filter: blur(20px) saturate(140%);\n}\n\n.aha-toolbar{\n display:flex; align-items:center; gap:10px;\n flex-wrap: wrap; row-gap: 8px;\n padding: 9px 10px 9px 14px;\n background: light-dark(rgba(252,252,253,.82), rgba(20,20,24,.7));\n backdrop-filter: blur(12px);\n border-bottom: 1px solid var(--aha-hairline);\n position: relative; z-index: 2;\n}\n/* Fullscreen toolbar must never overflow on small screens: drop the device\n labels and tighten spacing so the controls wrap instead of clipping. */\n@media (max-width: 560px){\n .aha-toolbar{ gap:6px; padding:8px 8px 8px 12px; }\n .aha-seg-label{ display:none; }\n .aha-seg button{ padding:6px 9px; }\n}\n.aha-dots{ display:inline-flex; gap:6px; margin-right:4px; }\n.aha-dot{ width:11px; height:11px; border-radius:50%; }\n.aha-title{\n font-size:13px; font-weight:600; letter-spacing:-0.01em;\n color: var(--aha-fg);\n white-space:nowrap; overflow:hidden; text-overflow:ellipsis;\n min-width:0; flex: 0 1 auto;\n}\n.aha-stream-dot{\n width:7px;height:7px;border-radius:50%;flex:none;\n background:#22c55e; box-shadow:0 0 0 0 rgba(34,197,94,.55);\n animation: aha-pulse 1.5s infinite;\n}\n\n.aha-seg{\n display:inline-flex; padding:3px; gap:2px; border-radius:11px;\n background: light-dark(rgba(0,0,0,.05), rgba(255,255,255,.06));\n box-shadow: inset 0 0 0 1px var(--aha-ring);\n}\n.aha-seg button{\n appearance:none; border:none; cursor:pointer;\n font-size:12px; font-weight:600; letter-spacing:-0.01em;\n padding:5px 13px; border-radius:8px; color: var(--aha-muted);\n background:transparent; transition: all .15s ease;\n}\n.aha-seg button[data-active=\"true\"]{\n color: var(--aha-fg);\n background: var(--aha-elev);\n box-shadow: 0 1px 2px light-dark(rgba(0,0,0,.10), rgba(0,0,0,.4)), 0 0 0 .5px var(--aha-ring);\n}\n\n.aha-iconbtn{\n display:inline-flex; align-items:center; justify-content:center;\n width:32px; height:32px; border-radius:999px; flex:none;\n border:none; cursor:pointer; padding:0;\n color: var(--aha-muted); background:transparent;\n transition: background .15s ease, color .15s ease, transform .1s ease;\n}\n.aha-iconbtn:hover{ background: var(--aha-hover); color: var(--aha-fg); }\n.aha-iconbtn:active{ transform: scale(.94); }\n\n/* Seamless (\"camouflage\") presentation: chromeless, transparent, inline. The\n action row stays invisible until hover so the surface reads as native UI. */\n.aha-seamless{ position:relative; }\n.aha-seamless-actions{\n position:absolute; top:8px; right:8px; z-index:4;\n display:flex; gap:4px; padding:3px; border-radius:999px;\n background: color-mix(in srgb, var(--aha-bg) 70%, transparent);\n border:1px solid var(--aha-border);\n backdrop-filter: blur(8px);\n opacity:0; transform: translateY(-2px);\n transition: opacity .18s ease, transform .18s ease;\n}\n.aha-seamless:hover .aha-seamless-actions,\n.aha-seamless:focus-within .aha-seamless-actions{ opacity:1; transform: translateY(0); }\n\n/* Streaming progress shimmer along the top edge of the preview. */\n.aha-progress{\n position:absolute; top:0; left:0; right:0; height:2px; z-index:3;\n background: linear-gradient(90deg, transparent, var(--aha-accent), transparent);\n background-size: 40% 100%;\n animation: aha-progress 1.1s linear infinite;\n}\n\n.aha-frame{ display:block; width:100%; border:none; background:transparent; }\n.aha-frame[data-fade=\"in\"]{ animation: aha-fade .45s ease both; }\n\n.aha-skel{\n display:grid; gap:14px; padding:26px;\n background: light-dark(linear-gradient(180deg,#fcfcfd,#f4f5f7), linear-gradient(180deg,#121215,#0d0d10));\n}\n.aha-skel .row{\n height:16px; border-radius:8px;\n background: light-dark(\n linear-gradient(90deg, rgba(0,0,0,.05) 25%, rgba(0,0,0,.10) 37%, rgba(0,0,0,.05) 63%),\n linear-gradient(90deg, rgba(255,255,255,.05) 25%, rgba(255,255,255,.10) 37%, rgba(255,255,255,.05) 63%));\n background-size: 400% 100%;\n animation: aha-shimmer 1.4s ease infinite;\n opacity:0; animation-fill-mode: both;\n}\n/* Stagger the skeleton in so it reads as a layout being built up. */\n.aha-skel .row:nth-child(1){ width:42%; animation-delay:0s,.0s; }\n.aha-skel .row:nth-child(2){ width:88%; }\n.aha-skel .row:nth-child(3){ width:74%; }\n.aha-skel .row:nth-child(4){ height:130px; }\n.aha-skel .row:nth-child(5){ width:60%; }\n.aha-skel .row:nth-child(6){ width:80%; }\n.aha-skel .row{ animation: aha-shimmer 1.4s ease infinite, aha-rise .5s ease both; }\n.aha-skel .row:nth-child(2){ animation-delay: 0s, .07s; }\n.aha-skel .row:nth-child(3){ animation-delay: 0s, .14s; }\n.aha-skel .row:nth-child(4){ animation-delay: 0s, .21s; }\n.aha-skel .row:nth-child(5){ animation-delay: 0s, .28s; }\n.aha-skel .row:nth-child(6){ animation-delay: 0s, .35s; }\n\n.aha-overlay{\n display:flex; align-items:center; justify-content:center; text-align:center;\n padding:24px; color: var(--aha-muted); font-size:13px;\n background: light-dark(rgba(255,255,255,.82), rgba(12,12,15,.82));\n backdrop-filter: blur(3px);\n}\n\n@keyframes aha-pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.5)}70%{box-shadow:0 0 0 6px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}\n@keyframes aha-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}\n@keyframes aha-progress{0%{background-position:120% 0}100%{background-position:-20% 0}}\n@keyframes aha-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}\n@keyframes aha-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}\n@media (prefers-reduced-motion: reduce){\n .aha-frame[data-fade=\"in\"], .aha-skel .row, .aha-progress, .aha-stream-dot{ animation: none !important; }\n .aha-skel .row{ opacity:1; }\n}\n";
|
|
8
8
|
/** Inject the artifact stylesheet once per document. */
|
|
9
9
|
export declare function useArtifactStyles(): void;
|
|
10
10
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/iframe/styles.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/iframe/styles.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,eAAO,MAAM,YAAY,03NAiKxB,CAAC;AAIF,wDAAwD;AACxD,wBAAgB,iBAAiB,IAAI,IAAI,CAaxC"}
|
package/dist/iframe/styles.js
CHANGED
|
@@ -44,12 +44,20 @@ export const ARTIFACT_CSS = `
|
|
|
44
44
|
|
|
45
45
|
.aha-toolbar{
|
|
46
46
|
display:flex; align-items:center; gap:10px;
|
|
47
|
+
flex-wrap: wrap; row-gap: 8px;
|
|
47
48
|
padding: 9px 10px 9px 14px;
|
|
48
49
|
background: light-dark(rgba(252,252,253,.82), rgba(20,20,24,.7));
|
|
49
50
|
backdrop-filter: blur(12px);
|
|
50
51
|
border-bottom: 1px solid var(--aha-hairline);
|
|
51
52
|
position: relative; z-index: 2;
|
|
52
53
|
}
|
|
54
|
+
/* Fullscreen toolbar must never overflow on small screens: drop the device
|
|
55
|
+
labels and tighten spacing so the controls wrap instead of clipping. */
|
|
56
|
+
@media (max-width: 560px){
|
|
57
|
+
.aha-toolbar{ gap:6px; padding:8px 8px 8px 12px; }
|
|
58
|
+
.aha-seg-label{ display:none; }
|
|
59
|
+
.aha-seg button{ padding:6px 9px; }
|
|
60
|
+
}
|
|
53
61
|
.aha-dots{ display:inline-flex; gap:6px; margin-right:4px; }
|
|
54
62
|
.aha-dot{ width:11px; height:11px; border-radius:50%; }
|
|
55
63
|
.aha-title{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/iframe/styles.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,QAAQ,GAAG,qBAAqB,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/iframe/styles.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,QAAQ,GAAG,qBAAqB,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiK3B,CAAC;AAEF,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB,wDAAwD;AACxD,MAAM,UAAU,iBAAiB;IAC/B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,WAAW;YAAE,OAAO;QACxD,IAAI,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtC,QAAQ,GAAG,IAAI,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC3C,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC;QACjB,EAAE,CAAC,WAAW,GAAG,YAAY,CAAC;QAC9B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9B,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* fixed-timestep loop, and a DOM HUD. It looks good out of the box on purpose —
|
|
8
8
|
* earlier non-art-directed games looked terrible.
|
|
9
9
|
*/
|
|
10
|
-
export declare const THREEJS_GAME_TEMPLATE = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n <title>three.js cartoon game</title>\n <style>\n html, body { margin: 0; height: 100%; overflow: hidden; background: #aee4ff; }\n canvas { display: block; }\n /* DOM HUD overlay \u2014 crisp text/buttons, never 3D text. */\n #hud { position: absolute; inset: 0; pointer-events: none; color: #2a2350;\n font: 800 18px/1.2 system-ui, 'Segoe UI', sans-serif;\n text-shadow: 0 2px 0 rgba(255,255,255,.65); }\n #hud .score { position: absolute; top: 16px; left: 20px; font-size: 28px; }\n #hud .panel { pointer-events: auto; position: absolute; inset: 0; display: grid;\n place-content: center; gap: 16px; text-align: center; font-size: 30px; }\n #hud button { pointer-events: auto; font: inherit; font-size: 20px; padding: 14px 34px;\n border: none; border-radius: 999px; background: #ff5da2; color: #fff;\n box-shadow: 0 6px 0 #c93b7e, 0 12px 22px rgba(0,0,0,.22); cursor: pointer; }\n #hud button:active { transform: translateY(3px); box-shadow: 0 3px 0 #c93b7e; }\n </style>\n <script type=\"importmap\">\n {\n \"imports\": {\n \"three\": \"https://cdn.jsdelivr.net/npm/three@0.169.0/build/three.module.js\",\n \"three/addons/\": \"https://cdn.jsdelivr.net/npm/three@0.169.0/examples/jsm/\"\n }\n }\n </script>\n</head>\n<body>\n <div id=\"hud\">\n <div class=\"score\">0</div>\n <div class=\"panel menu\">\uD83C\uDF88 Bouncy Collector<button id=\"play\">Play</button></div>\n </div>\n <script type=\"module\">\n import * as THREE from \"three\";\n import { EffectComposer } from \"three/addons/postprocessing/EffectComposer.js\";\n import { RenderPass } from \"three/addons/postprocessing/RenderPass.js\";\n import { UnrealBloomPass } from \"three/addons/postprocessing/UnrealBloomPass.js\";\n\n // ---- RENDERER ----\n const renderer = new THREE.WebGLRenderer({ antialias: true });\n renderer.setSize(innerWidth, innerHeight);\n renderer.setPixelRatio(Math.min(devicePixelRatio, 2));\n renderer.outputColorSpace = THREE.SRGBColorSpace;\n renderer.shadowMap.enabled = true;\n renderer.shadowMap.type = THREE.PCFSoftShadowMap;\n document.body.appendChild(renderer.domElement);\n\n // ---- SCENE / CAMERA (bright sky + gentle fog = storybook depth) ----\n const scene = new THREE.Scene();\n scene.background = new THREE.Color(0xaee4ff);\n scene.fog = new THREE.Fog(0xaee4ff, 20, 44);\n const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 100);\n camera.position.set(0, 6, 12);\n camera.lookAt(0, 1, 0);\n\n // ---- CARTOON LIGHTING: soft + even, no harsh PBR ----\n scene.add(new THREE.HemisphereLight(0xffffff, 0x8fb7c9, 1.15));\n const sun = new THREE.DirectionalLight(0xfff2cf, 1.5);\n sun.position.set(6, 13, 6); sun.castShadow = true;\n sun.shadow.mapSize.set(1024, 1024);\n sun.shadow.camera.top = sun.shadow.camera.right = 14;\n sun.shadow.camera.bottom = sun.shadow.camera.left = -14;\n scene.add(sun);\n\n // ---- TOON HELPERS ----\n // Banded gradient map = the core cartoon shading look (flat steps, not smooth).\n function toonGradient(steps = 4) {\n const data = new Uint8Array(steps);\n for (let i = 0; i < steps; i++) data[i] = (i / (steps - 1)) * 255;\n const t = new THREE.DataTexture(data, steps, 1, THREE.RedFormat);\n t.minFilter = t.magFilter = THREE.NearestFilter; t.needsUpdate = true;\n return t;\n }\n const GRAD = toonGradient(4);\n const toon = (color) => new THREE.MeshToonMaterial({ color, gradientMap: GRAD });\n\n // Chunky comic outline via inverted hull (BackSide, scaled up). Reuse one\n // black material; add as a child so it tracks the parent automatically.\n const OUTLINE_MAT = new THREE.MeshBasicMaterial({ color: 0x241a3a, side: THREE.BackSide });\n function outline(mesh, thickness = 0.06) {\n const o = new THREE.Mesh(mesh.geometry, OUTLINE_MAT);\n o.scale.setScalar(1 + thickness);\n mesh.add(o);\n return mesh;\n }\n\n // ---- WORLD ----\n const ground = new THREE.Mesh(new THREE.CylinderGeometry(9, 9, 1, 48), toon(0x7ed957));\n ground.position.y = -0.5; ground.receiveShadow = true; scene.add(ground);\n\n // ---- PLAYER (rounded, chunky, outlined) ----\n const player = new THREE.Mesh(new THREE.SphereGeometry(0.8, 28, 28), toon(0xff5da2));\n player.castShadow = true; player.position.y = 0.8; scene.add(outline(player));\n\n // ---- GLOWING COLLECTIBLE (bright unlit material \u2192 bloom catches it) ----\n function makeOrb() {\n const orb = new THREE.Mesh(new THREE.IcosahedronGeometry(0.45, 0),\n new THREE.MeshBasicMaterial({ color: 0xfff36b }));\n orb.position.set((Math.random()*2-1)*6, 0.7, (Math.random()*2-1)*6);\n scene.add(orb); return orb;\n }\n let orb = makeOrb();\n\n // ---- GLOW:
|
|
10
|
+
export declare const THREEJS_GAME_TEMPLATE = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n <title>three.js cartoon game</title>\n <style>\n html, body { margin: 0; height: 100%; overflow: hidden; background: #aee4ff; }\n canvas { display: block; }\n /* DOM HUD overlay \u2014 crisp text/buttons, never 3D text. */\n #hud { position: absolute; inset: 0; pointer-events: none; color: #2a2350;\n font: 800 18px/1.2 system-ui, 'Segoe UI', sans-serif;\n text-shadow: 0 2px 0 rgba(255,255,255,.65); }\n #hud .score { position: absolute; top: 16px; left: 20px; font-size: 28px; }\n #hud .panel { pointer-events: auto; position: absolute; inset: 0; display: grid;\n place-content: center; gap: 16px; text-align: center; font-size: 30px; }\n #hud button { pointer-events: auto; font: inherit; font-size: 20px; padding: 14px 34px;\n border: none; border-radius: 999px; background: #ff5da2; color: #fff;\n box-shadow: 0 6px 0 #c93b7e, 0 12px 22px rgba(0,0,0,.22); cursor: pointer; }\n #hud button:active { transform: translateY(3px); box-shadow: 0 3px 0 #c93b7e; }\n </style>\n <script type=\"importmap\">\n {\n \"imports\": {\n \"three\": \"https://cdn.jsdelivr.net/npm/three@0.169.0/build/three.module.js\",\n \"three/addons/\": \"https://cdn.jsdelivr.net/npm/three@0.169.0/examples/jsm/\"\n }\n }\n </script>\n</head>\n<body>\n <div id=\"hud\">\n <div class=\"score\">0</div>\n <div class=\"panel menu\">\uD83C\uDF88 Bouncy Collector<button id=\"play\">Play</button></div>\n </div>\n <script type=\"module\">\n import * as THREE from \"three\";\n import { EffectComposer } from \"three/addons/postprocessing/EffectComposer.js\";\n import { RenderPass } from \"three/addons/postprocessing/RenderPass.js\";\n import { UnrealBloomPass } from \"three/addons/postprocessing/UnrealBloomPass.js\";\n\n // ---- RENDERER ----\n const renderer = new THREE.WebGLRenderer({ antialias: true });\n renderer.setSize(innerWidth, innerHeight);\n renderer.setPixelRatio(Math.min(devicePixelRatio, 2));\n renderer.outputColorSpace = THREE.SRGBColorSpace;\n renderer.shadowMap.enabled = true;\n renderer.shadowMap.type = THREE.PCFSoftShadowMap;\n document.body.appendChild(renderer.domElement);\n\n // ---- SCENE / CAMERA (bright sky + gentle fog = storybook depth) ----\n const scene = new THREE.Scene();\n scene.background = new THREE.Color(0xaee4ff);\n scene.fog = new THREE.Fog(0xaee4ff, 20, 44);\n const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 100);\n camera.position.set(0, 6, 12);\n camera.lookAt(0, 1, 0);\n\n // ---- CARTOON LIGHTING: soft + even, no harsh PBR ----\n scene.add(new THREE.HemisphereLight(0xffffff, 0x8fb7c9, 1.15));\n const sun = new THREE.DirectionalLight(0xfff2cf, 1.5);\n sun.position.set(6, 13, 6); sun.castShadow = true;\n sun.shadow.mapSize.set(1024, 1024);\n sun.shadow.camera.top = sun.shadow.camera.right = 14;\n sun.shadow.camera.bottom = sun.shadow.camera.left = -14;\n scene.add(sun);\n\n // ---- TOON HELPERS ----\n // Banded gradient map = the core cartoon shading look (flat steps, not smooth).\n function toonGradient(steps = 4) {\n const data = new Uint8Array(steps);\n for (let i = 0; i < steps; i++) data[i] = (i / (steps - 1)) * 255;\n const t = new THREE.DataTexture(data, steps, 1, THREE.RedFormat);\n t.minFilter = t.magFilter = THREE.NearestFilter; t.needsUpdate = true;\n return t;\n }\n const GRAD = toonGradient(4);\n const toon = (color) => new THREE.MeshToonMaterial({ color, gradientMap: GRAD });\n\n // Chunky comic outline via inverted hull (BackSide, scaled up). Reuse one\n // black material; add as a child so it tracks the parent automatically.\n const OUTLINE_MAT = new THREE.MeshBasicMaterial({ color: 0x241a3a, side: THREE.BackSide });\n function outline(mesh, thickness = 0.06) {\n const o = new THREE.Mesh(mesh.geometry, OUTLINE_MAT);\n o.scale.setScalar(1 + thickness);\n mesh.add(o);\n return mesh;\n }\n\n // ---- WORLD ----\n const ground = new THREE.Mesh(new THREE.CylinderGeometry(9, 9, 1, 48), toon(0x7ed957));\n ground.position.y = -0.5; ground.receiveShadow = true; scene.add(ground);\n\n // ---- PLAYER (rounded, chunky, outlined) ----\n const player = new THREE.Mesh(new THREE.SphereGeometry(0.8, 28, 28), toon(0xff5da2));\n player.castShadow = true; player.position.y = 0.8; scene.add(outline(player));\n\n // ---- GLOWING COLLECTIBLE (bright unlit material \u2192 bloom catches it) ----\n function makeOrb() {\n const orb = new THREE.Mesh(new THREE.IcosahedronGeometry(0.45, 0),\n new THREE.MeshBasicMaterial({ color: 0xfff36b }));\n orb.position.set((Math.random()*2-1)*6, 0.7, (Math.random()*2-1)*6);\n scene.add(orb); return orb;\n }\n let orb = makeOrb();\n\n // ---- GLOW: a SUBTLE bloom, only on the brightest bits (cheap; keep it light) ----\n const composer = new EffectComposer(renderer);\n composer.addPass(new RenderPass(scene, camera));\n const bloom = new UnrealBloomPass(new THREE.Vector2(innerWidth, innerHeight), 0.4, 0.4, 0.85);\n composer.addPass(bloom);\n\n // ---- STATE / INPUT ----\n const game = { running: false, score: 0 };\n const hud = document.getElementById(\"hud\");\n const scoreEl = hud.querySelector(\".score\");\n const keys = {};\n addEventListener(\"keydown\", (e) => { keys[e.code] = true; });\n addEventListener(\"keyup\", (e) => { keys[e.code] = false; });\n document.getElementById(\"play\").onclick = () => {\n game.running = true; hud.querySelector(\".menu\").style.display = \"none\";\n };\n\n // ---- LOOP (fixed timestep) ----\n const clock = new THREE.Clock();\n let acc = 0; const STEP = 1 / 60;\n function update(dt) {\n const mx = (keys.ArrowRight||keys.KeyD?1:0) - (keys.ArrowLeft||keys.KeyA?1:0);\n const mz = (keys.ArrowDown||keys.KeyS?1:0) - (keys.ArrowUp||keys.KeyW?1:0);\n player.position.x = THREE.MathUtils.clamp(player.position.x + mx*7*dt, -7.5, 7.5);\n player.position.z = THREE.MathUtils.clamp(player.position.z + mz*7*dt, -7.5, 7.5);\n player.position.y = 0.8 + Math.abs(Math.sin(clock.elapsedTime*7)) * 0.25; // bouncy juice\n orb.rotation.y += dt*2.2;\n orb.position.y = 0.7 + Math.sin(clock.elapsedTime*3) * 0.15;\n if (player.position.distanceTo(orb.position) < 1.25) {\n game.score++; scoreEl.textContent = game.score;\n scene.remove(orb); orb = makeOrb();\n }\n }\n renderer.setAnimationLoop(() => {\n const dt = Math.min(clock.getDelta(), 0.1);\n if (game.running) { acc += dt; while (acc >= STEP) { update(STEP); acc -= STEP; } }\n composer.render(); // bloom glow (use instead of renderer.render)\n });\n addEventListener(\"resize\", () => {\n camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix();\n renderer.setSize(innerWidth, innerHeight);\n composer.setSize(innerWidth, innerHeight);\n });\n </script>\n</body>\n</html>";
|
|
11
11
|
export interface ThreejsGamePromptOptions {
|
|
12
12
|
/** Optional creative direction (theme/mood) appended to the brief. */
|
|
13
13
|
themeNote?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threejsGamePrompt.d.ts","sourceRoot":"","sources":["../../src/prompts/threejsGamePrompt.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"threejsGamePrompt.d.ts","sourceRoot":"","sources":["../../src/prompts/threejsGamePrompt.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,smOAuJ1B,CAAC;AAgET,MAAM,WAAW,wBAAwB;IACvC,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wEAAwE;AACxE,wBAAgB,sBAAsB,CACpC,OAAO,GAAE,wBAA6B,GACrC,MAAM,CAkBR"}
|
|
@@ -114,10 +114,10 @@ export const THREEJS_GAME_TEMPLATE = `<!DOCTYPE html>
|
|
|
114
114
|
}
|
|
115
115
|
let orb = makeOrb();
|
|
116
116
|
|
|
117
|
-
// ---- GLOW:
|
|
117
|
+
// ---- GLOW: a SUBTLE bloom, only on the brightest bits (cheap; keep it light) ----
|
|
118
118
|
const composer = new EffectComposer(renderer);
|
|
119
119
|
composer.addPass(new RenderPass(scene, camera));
|
|
120
|
-
const bloom = new UnrealBloomPass(new THREE.Vector2(innerWidth, innerHeight), 0.
|
|
120
|
+
const bloom = new UnrealBloomPass(new THREE.Vector2(innerWidth, innerHeight), 0.4, 0.4, 0.85);
|
|
121
121
|
composer.addPass(bloom);
|
|
122
122
|
|
|
123
123
|
// ---- STATE / INPUT ----
|
|
@@ -185,6 +185,12 @@ const THREEJS_TOPIC_CHEATSHEET = `THREE.JS CAPABILITY MAP (import from "three/ad
|
|
|
185
185
|
*/
|
|
186
186
|
const THREEJS_GAME_RULES = `You are generating a COMPLETE, PLAYABLE single-file three.js game as one HTML document. It runs in an isolated, script-enabled sandbox (no same-origin), so it must be fully self-contained.
|
|
187
187
|
|
|
188
|
+
DESIGN IT LIKE A "GAME SHORT" — fast, fun, instantly playable, endlessly replayable:
|
|
189
|
+
- Instant: understandable in 3 seconds, playable in 5. One core verb (jump / dodge / collect / tap / steer). No tutorials, no menus to wade through — a single Play button, then you're in.
|
|
190
|
+
- Fast: snappy controls, quick rounds (~30–90 seconds), immediate restart on death (one tap to go again). It must FEEL fast — responsive input, brisk pacing, juicy feedback.
|
|
191
|
+
- Long-lasting: an escalating difficulty curve and a score/combo/streak chase that makes "one more go" irresistible. Track a best score across rounds.
|
|
192
|
+
- Lightweight & fast-loading: keep geometry simple and counts low, reuse materials, pool objects. The whole thing must load and hit 60fps instantly, including on phones. Effects are seasoning, NOT the meal — keep bloom subtle (strength ~0.3–0.5, high threshold) and skip heavy postprocessing; never let FX cost framerate.
|
|
193
|
+
|
|
188
194
|
NON-NEGOTIABLE STRUCTURE (build from the TEMPLATE below — do not invent a different loader):
|
|
189
195
|
- Exactly ONE <script type="importmap"> in <head>, using this EXACT pinned, trusted CDN (any other host/version is stripped by the sanitizer and the game will not load):
|
|
190
196
|
"three": "https://cdn.jsdelivr.net/npm/three@0.169.0/build/three.module.js"
|
|
@@ -197,8 +203,12 @@ ART DIRECTION — CARTOON / TOON, WITH A LITTLE GLOW (this is mandatory; do NOT
|
|
|
197
203
|
- Chunky comic outlines on the main characters/objects via the inverted-hull trick (BackSide black mesh scaled ~1.05–1.08). Keep outlines off tiny particles to stay cheap.
|
|
198
204
|
- Bold, joyful color: a bright sky or pastel-gradient background, saturated character colors, and gentle THREE.Fog matching the sky for soft depth. Rounded, chunky shapes (spheres, rounded boxes, capsules, icosahedrons) — no thin sharp geometry.
|
|
199
205
|
- Soft, even lighting: HemisphereLight (sky/ground) + one warm DirectionalLight with soft PCFSoft shadows. Avoid dark, moody, high-contrast lighting.
|
|
200
|
-
- A LITTLE glow: a
|
|
201
|
-
- Juice: squash/stretch or a bouncy sine on the player, a pop/scale on pickup, easing on camera,
|
|
206
|
+
- A LITTLE glow, kept subtle: a gentle UnrealBloomPass (strength ~0.3–0.5, high threshold ~0.85) via EffectComposer so ONLY the brightest bits (collectibles / power-ups) glow. Don't overdo bloom or stack heavy effects — it must never cost framerate. Call composer.render() in the loop (not renderer.render) and composer.setSize() on resize. (OutlineEffect and EffectComposer don't compose — use inverted-hull outlines when you use bloom.)
|
|
207
|
+
- Juice: squash/stretch or a bouncy sine on the player, a pop/scale on pickup, easing on camera, the odd particle or flash on events. Cheap, huge charm — favour these over expensive post FX.
|
|
208
|
+
|
|
209
|
+
RESPONSIVE — THE GAME OWNS THE WHOLE SCREEN AND ADAPTS ITSELF:
|
|
210
|
+
- Size the renderer/camera to the iframe viewport (innerWidth/innerHeight) and update on every resize — the frame may be phone-portrait (~9:16), tablet, or desktop, and it can change live. Re-frame the camera (fov/position) so the full playfield fits whatever the aspect is; never let the action get cropped in portrait.
|
|
211
|
+
- Touch FIRST: on-screen controls live in comfortable thumb zones, big tap targets, and the HUD scales with the viewport. The same build must play great with a thumb in portrait and a keyboard on desktop.
|
|
202
212
|
|
|
203
213
|
GAMEPLAY THE ARTIFACT MUST ACTUALLY HAVE (not a tech demo):
|
|
204
214
|
- A clear goal and a win/lose (or endless-score) condition, real player control, and visible feedback.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threejsGamePrompt.js","sourceRoot":"","sources":["../../src/prompts/threejsGamePrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuJ7B,CAAC;AAET;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG;;;;;;;;;;;oHAWmF,CAAC;AAErH;;;;GAIG;AACH,MAAM,kBAAkB,GAAG
|
|
1
|
+
{"version":3,"file":"threejsGamePrompt.js","sourceRoot":"","sources":["../../src/prompts/threejsGamePrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuJ7B,CAAC;AAET;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG;;;;;;;;;;;oHAWmF,CAAC;AAErH;;;;GAIG;AACH,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6IAoCkH,CAAC;AAO9I,wEAAwE;AACxE,MAAM,UAAU,sBAAsB,CACpC,UAAoC,EAAE;IAEtC,OAAO;QACL,kBAAkB;QAClB,EAAE;QACF,kBAAkB;QAClB,EAAE;QACF,wBAAwB;QACxB,EAAE;QACF,gMAAgM;QAChM,qBAAqB;QACrB,OAAO,CAAC,SAAS;YACf,CAAC,CAAC,yBAAyB,OAAO,CAAC,SAAS,qDAAqD;YACjG,CAAC,CAAC,EAAE;QACN,EAAE;QACF,wIAAwI;KACzI;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC"}
|
|
@@ -142,9 +142,9 @@ function HtmlArtifactCard(props) {
|
|
|
142
142
|
// sits inline like native chat content — no card frame, no window, no border.
|
|
143
143
|
// A faint action row appears only on hover so the clean UI stays clean.
|
|
144
144
|
if (effectivePresentation === "seamless") {
|
|
145
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "aha-seamless", children: [(0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, bare: true, options: { minHeight: 0, ...previewOptions }, reloadSignal: runSignal }), showToolbar && !streaming && ((0, jsx_runtime_1.jsxs)("div", { className: "aha-seamless-actions", children: [(0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onRerun, title: "Re-run", "aria-label": "Re-run artifact", children: RERUN_ICON }), allowCopy && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onCopy, title: "Copy HTML", "aria-label": "Copy HTML", children: copied ? CHECK_ICON : COPY_ICON })), allowPdf && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onDownloadPdf, title: "Download PDF", "aria-label": "Download PDF", children: PDF_ICON })), allowFullscreen && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: () => setFullscreen(true), title: "Fullscreen", "aria-label": "Fullscreen", children: EXPAND_ICON }))] }))] }), allowFullscreen && ((0, jsx_runtime_1.jsx)(HtmlArtifactModal_js_1.HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, children: (0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: { ...previewOptions, autoResize: false, minHeight: 640, maxHeight: 100000 }, reloadSignal: runSignal }) }))] }));
|
|
145
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "aha-seamless", children: [(0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, bare: true, options: { minHeight: 0, ...previewOptions }, reloadSignal: runSignal }), showToolbar && !streaming && ((0, jsx_runtime_1.jsxs)("div", { className: "aha-seamless-actions", children: [(0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onRerun, title: "Re-run", "aria-label": "Re-run artifact", children: RERUN_ICON }), allowCopy && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onCopy, title: "Copy HTML", "aria-label": "Copy HTML", children: copied ? CHECK_ICON : COPY_ICON })), allowPdf && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onDownloadPdf, title: "Download PDF", "aria-label": "Download PDF", children: PDF_ICON })), allowFullscreen && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: () => setFullscreen(true), title: "Fullscreen", "aria-label": "Fullscreen", children: EXPAND_ICON }))] }))] }), allowFullscreen && ((0, jsx_runtime_1.jsx)(HtmlArtifactModal_js_1.HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, onViewChange: onRerun, children: (0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: { ...previewOptions, autoResize: false, minHeight: 640, maxHeight: 100000 }, reloadSignal: runSignal }) }))] }));
|
|
146
146
|
}
|
|
147
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "aha-card", "data-variant": variant, style: { ["--aha-radius"]: `${RADIUS[radius]}px` }, children: [showToolbar && ((0, jsx_runtime_1.jsx)(HtmlArtifactToolbar_js_1.HtmlArtifactToolbar, { title: artifact.title, tab: tab, onTabChange: setTab, allowCopy: allowCopy, allowDownload: allowDownload, allowPdf: allowPdf, allowFullscreen: allowFullscreen, copied: copied, streaming: streaming, onCopy: onCopy, onDownload: onDownload, onDownloadPdf: onDownloadPdf, onFullscreen: () => setFullscreen(true), onRerun: onRerun })), tab === "preview" ? ((0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: previewOptions, reloadSignal: runSignal })) : ((0, jsx_runtime_1.jsx)(HtmlArtifactCodeView_js_1.HtmlArtifactCodeView, { html: sourceHtml, maxHeight: previewOptions?.maxHeight ?? 900 }))] }), allowFullscreen && ((0, jsx_runtime_1.jsx)(HtmlArtifactModal_js_1.HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, children: (0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: {
|
|
147
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: `aha-scope${className ? ` ${className}` : ""}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "aha-card", "data-variant": variant, style: { ["--aha-radius"]: `${RADIUS[radius]}px` }, children: [showToolbar && ((0, jsx_runtime_1.jsx)(HtmlArtifactToolbar_js_1.HtmlArtifactToolbar, { title: artifact.title, tab: tab, onTabChange: setTab, allowCopy: allowCopy, allowDownload: allowDownload, allowPdf: allowPdf, allowFullscreen: allowFullscreen, copied: copied, streaming: streaming, onCopy: onCopy, onDownload: onDownload, onDownloadPdf: onDownloadPdf, onFullscreen: () => setFullscreen(true), onRerun: onRerun })), tab === "preview" ? ((0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: previewOptions, reloadSignal: runSignal })) : ((0, jsx_runtime_1.jsx)(HtmlArtifactCodeView_js_1.HtmlArtifactCodeView, { html: sourceHtml, maxHeight: previewOptions?.maxHeight ?? 900 }))] }), allowFullscreen && ((0, jsx_runtime_1.jsx)(HtmlArtifactModal_js_1.HtmlArtifactModal, { open: fullscreen, onClose: () => setFullscreen(false), title: artifact.title, onViewChange: onRerun, children: (0, jsx_runtime_1.jsx)(HtmlArtifactPreview_js_1.HtmlArtifactPreview, { html: previewHtml, streaming: streaming, errored: errored, title: artifact.title, theme: theme, options: {
|
|
148
148
|
...previewOptions,
|
|
149
149
|
autoResize: false,
|
|
150
150
|
minHeight: 640,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactCard.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactCard.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBb,
|
|
1
|
+
{"version":3,"file":"HtmlArtifactCard.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -65,10 +65,19 @@ const DEVICES = [
|
|
|
65
65
|
* light↔dark (hue-preserving) so a transparent, light-on-dark camouflage
|
|
66
66
|
* artifact is crystal-clear on a light surface too.
|
|
67
67
|
*/
|
|
68
|
-
function HtmlArtifactModal({ open, onClose, title, children }) {
|
|
68
|
+
function HtmlArtifactModal({ open, onClose, title, children, onViewChange }) {
|
|
69
69
|
(0, styles_js_1.useArtifactStyles)();
|
|
70
70
|
const [device, setDevice] = React.useState("desktop");
|
|
71
71
|
const [inverted, setInverted] = React.useState(false);
|
|
72
|
+
// Switching device width must re-run the artifact so games/responsive layouts
|
|
73
|
+
// re-initialise to the new viewport (e.g. a game re-frames for 9:16 mobile).
|
|
74
|
+
const changeDevice = React.useCallback((id) => {
|
|
75
|
+
setDevice((prev) => {
|
|
76
|
+
if (prev !== id)
|
|
77
|
+
onViewChange?.();
|
|
78
|
+
return id;
|
|
79
|
+
});
|
|
80
|
+
}, [onViewChange]);
|
|
72
81
|
React.useEffect(() => {
|
|
73
82
|
if (!open)
|
|
74
83
|
return;
|
|
@@ -106,7 +115,7 @@ function HtmlArtifactModal({ open, onClose, title, children }) {
|
|
|
106
115
|
margin: "0 auto",
|
|
107
116
|
width: "100%",
|
|
108
117
|
maxWidth: 1280,
|
|
109
|
-
}, children: [(0, jsx_runtime_1.jsxs)("div", { className: "aha-toolbar", children: [(0, jsx_runtime_1.jsxs)("span", { className: "aha-dots", "aria-hidden": true, children: [(0, jsx_runtime_1.jsx)("span", { className: "aha-dot", style: { background: "#ff5f57" } }), (0, jsx_runtime_1.jsx)("span", { className: "aha-dot", style: { background: "#febc2e" } }), (0, jsx_runtime_1.jsx)("span", { className: "aha-dot", style: { background: "#28c840" } })] }), (0, jsx_runtime_1.jsx)("strong", { className: "aha-title", children: title ?? "Artifact" }), (0, jsx_runtime_1.jsx)("div", { style: { flex: 1 } }), (0, jsx_runtime_1.jsx)("div", { className: "aha-seg", role: "tablist", "aria-label": "Preview width", children: DEVICES.map((d) => ((0, jsx_runtime_1.jsxs)("button", { type: "button", role: "tab", "aria-selected": device === d.id, "data-active": device === d.id, onClick: () =>
|
|
118
|
+
}, children: [(0, jsx_runtime_1.jsxs)("div", { className: "aha-toolbar", children: [(0, jsx_runtime_1.jsxs)("span", { className: "aha-dots", "aria-hidden": true, children: [(0, jsx_runtime_1.jsx)("span", { className: "aha-dot", style: { background: "#ff5f57" } }), (0, jsx_runtime_1.jsx)("span", { className: "aha-dot", style: { background: "#febc2e" } }), (0, jsx_runtime_1.jsx)("span", { className: "aha-dot", style: { background: "#28c840" } })] }), (0, jsx_runtime_1.jsx)("strong", { className: "aha-title", children: title ?? "Artifact" }), (0, jsx_runtime_1.jsx)("div", { style: { flex: 1 } }), (0, jsx_runtime_1.jsx)("div", { className: "aha-seg", role: "tablist", "aria-label": "Preview width", children: DEVICES.map((d) => ((0, jsx_runtime_1.jsxs)("button", { type: "button", role: "tab", "aria-selected": device === d.id, "data-active": device === d.id, onClick: () => changeDevice(d.id), title: d.label, style: { display: "inline-flex", alignItems: "center", gap: 6 }, children: [d.icon, (0, jsx_runtime_1.jsx)("span", { className: "aha-seg-label", style: { fontSize: 12 }, children: d.label })] }, d.id))) }), onViewChange && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: () => onViewChange(), title: "Re-run", "aria-label": "Re-run artifact", children: (0, jsx_runtime_1.jsxs)("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [(0, jsx_runtime_1.jsx)("polyline", { points: "23 4 23 10 17 10" }), (0, jsx_runtime_1.jsx)("polyline", { points: "1 20 1 14 7 14" }), (0, jsx_runtime_1.jsx)("path", { d: "M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15" })] }) })), (0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: () => setInverted((v) => !v), title: inverted ? "Normal colors" : "Invert (light view)", "aria-label": "Invert colors", "data-active": inverted, style: inverted ? { background: "var(--aha-hover)", color: "var(--aha-fg)" } : undefined, children: (0, jsx_runtime_1.jsxs)("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [(0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "9" }), (0, jsx_runtime_1.jsx)("path", { d: "M12 3a9 9 0 0 0 0 18z", fill: "currentColor", stroke: "none" })] }) }), (0, jsx_runtime_1.jsx)("button", { type: "button", className: "aha-iconbtn", onClick: onClose, "aria-label": "Close", style: { fontSize: 18 }, children: "\u00D7" })] }), (0, jsx_runtime_1.jsx)("div", { style: {
|
|
110
119
|
flex: 1,
|
|
111
120
|
minHeight: 0,
|
|
112
121
|
overflow: "auto",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactModal.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactModal.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"HtmlArtifactModal.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -163,6 +163,27 @@ function HtmlArtifactPreview(props) {
|
|
|
163
163
|
prevReloadRef.current = reloadSignal;
|
|
164
164
|
rerun();
|
|
165
165
|
}, [reloadSignal, rerun]);
|
|
166
|
+
// Auto-refresh when the artifact (re)enters the viewport — re-runs scripts/
|
|
167
|
+
// games and re-measures the height, which also recovers any frame that
|
|
168
|
+
// collapsed while off-screen. Skips the initial appearance and streaming.
|
|
169
|
+
const containerRef = React.useRef(null);
|
|
170
|
+
React.useEffect(() => {
|
|
171
|
+
const el = containerRef.current;
|
|
172
|
+
if (!el || typeof IntersectionObserver === "undefined")
|
|
173
|
+
return;
|
|
174
|
+
let wasVisible = false;
|
|
175
|
+
let first = true;
|
|
176
|
+
const io = new IntersectionObserver((entries) => {
|
|
177
|
+
const visible = entries.some((e) => e.isIntersecting);
|
|
178
|
+
if (visible && !wasVisible && !first && !stateRef.current.streaming) {
|
|
179
|
+
rerun();
|
|
180
|
+
}
|
|
181
|
+
first = false;
|
|
182
|
+
wasVisible = visible;
|
|
183
|
+
}, { threshold: 0.01 });
|
|
184
|
+
io.observe(el);
|
|
185
|
+
return () => io.disconnect();
|
|
186
|
+
}, [rerun]);
|
|
166
187
|
// Schedule a flush, throttled to at most once per `debounceMs` and aligned to
|
|
167
188
|
// an animation frame so rapid SSE deltas don't trigger a render storm.
|
|
168
189
|
const schedule = React.useCallback(() => {
|
|
@@ -231,7 +252,7 @@ function HtmlArtifactPreview(props) {
|
|
|
231
252
|
const showSkeleton = !html && !errored && !bare;
|
|
232
253
|
const minHeight = bare ? 0 : opts.minHeight;
|
|
233
254
|
const iframeSrcDoc = html ? srcDoc : "";
|
|
234
|
-
return ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
255
|
+
return ((0, jsx_runtime_1.jsxs)("div", { ref: containerRef, style: {
|
|
235
256
|
position: "relative",
|
|
236
257
|
width: "100%",
|
|
237
258
|
background: bare ? "transparent" : "var(--aha-bg)",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactPreview.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactPreview.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HtmlArtifactPreview.js","sourceRoot":"","sources":["../../src/iframe/HtmlArtifactPreview.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,11 +13,21 @@ const react_1 = require("react");
|
|
|
13
13
|
* (ResizeObserver), and after web fonts finish loading (which changes height).
|
|
14
14
|
* If the document is cross-origin/opaque it falls back to `minHeight`.
|
|
15
15
|
*/
|
|
16
|
+
/**
|
|
17
|
+
* Seed height used when `minHeight` is 0 (seamless/camouflage previews). Starting
|
|
18
|
+
* the iframe at 0 makes its viewport 0-tall, so any content sized by viewport or
|
|
19
|
+
* percentage height resolves to 0 → `scrollHeight` is 0 → the resize bridge never
|
|
20
|
+
* reports a height and the artifact stays hidden (seen on freshly-mounted saved
|
|
21
|
+
* generative-UI chats). A non-zero seed gives the first layout a real viewport;
|
|
22
|
+
* the measurement then converges to the true content height (and may shrink below
|
|
23
|
+
* the seed, since the clamp floor is `minHeight`).
|
|
24
|
+
*/
|
|
25
|
+
const MEASURE_SEED = 280;
|
|
16
26
|
function useIframeAutoSize(options = {}) {
|
|
17
27
|
const { enabled = true, minHeight = 420, maxHeight = 900 } = options;
|
|
18
28
|
const ref = (0, react_1.useRef)(null);
|
|
19
29
|
const observerRef = (0, react_1.useRef)(null);
|
|
20
|
-
const [height, setHeight] = (0, react_1.useState)(minHeight);
|
|
30
|
+
const [height, setHeight] = (0, react_1.useState)(minHeight > 0 ? minHeight : MEASURE_SEED);
|
|
21
31
|
const measure = (0, react_1.useCallback)(() => {
|
|
22
32
|
if (!enabled)
|
|
23
33
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iframeSizing.js","sourceRoot":"","sources":["../../src/iframe/iframeSizing.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"iframeSizing.js","sourceRoot":"","sources":["../../src/iframe/iframeSizing.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,12 +81,20 @@ exports.ARTIFACT_CSS = `
|
|
|
81
81
|
|
|
82
82
|
.aha-toolbar{
|
|
83
83
|
display:flex; align-items:center; gap:10px;
|
|
84
|
+
flex-wrap: wrap; row-gap: 8px;
|
|
84
85
|
padding: 9px 10px 9px 14px;
|
|
85
86
|
background: light-dark(rgba(252,252,253,.82), rgba(20,20,24,.7));
|
|
86
87
|
backdrop-filter: blur(12px);
|
|
87
88
|
border-bottom: 1px solid var(--aha-hairline);
|
|
88
89
|
position: relative; z-index: 2;
|
|
89
90
|
}
|
|
91
|
+
/* Fullscreen toolbar must never overflow on small screens: drop the device
|
|
92
|
+
labels and tighten spacing so the controls wrap instead of clipping. */
|
|
93
|
+
@media (max-width: 560px){
|
|
94
|
+
.aha-toolbar{ gap:6px; padding:8px 8px 8px 12px; }
|
|
95
|
+
.aha-seg-label{ display:none; }
|
|
96
|
+
.aha-seg button{ padding:6px 9px; }
|
|
97
|
+
}
|
|
90
98
|
.aha-dots{ display:inline-flex; gap:6px; margin-right:4px; }
|
|
91
99
|
.aha-dot{ width:11px; height:11px; border-radius:50%; }
|
|
92
100
|
.aha-title{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/iframe/styles.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/iframe/styles.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkLb,8CAaC;AA7LD,6CAA+B;AAE/B,MAAM,QAAQ,GAAG,qBAAqB,CAAC;AAEvC;;;;;GAKG;AACU,QAAA,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiK3B,CAAC;AAEF,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB,wDAAwD;AACxD,SAAgB,iBAAiB;IAC/B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,WAAW;YAAE,OAAO;QACxD,IAAI,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtC,QAAQ,GAAG,IAAI,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC3C,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC;QACjB,EAAE,CAAC,WAAW,GAAG,oBAAY,CAAC;QAC9B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9B,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
|
|
@@ -118,10 +118,10 @@ exports.THREEJS_GAME_TEMPLATE = `<!DOCTYPE html>
|
|
|
118
118
|
}
|
|
119
119
|
let orb = makeOrb();
|
|
120
120
|
|
|
121
|
-
// ---- GLOW:
|
|
121
|
+
// ---- GLOW: a SUBTLE bloom, only on the brightest bits (cheap; keep it light) ----
|
|
122
122
|
const composer = new EffectComposer(renderer);
|
|
123
123
|
composer.addPass(new RenderPass(scene, camera));
|
|
124
|
-
const bloom = new UnrealBloomPass(new THREE.Vector2(innerWidth, innerHeight), 0.
|
|
124
|
+
const bloom = new UnrealBloomPass(new THREE.Vector2(innerWidth, innerHeight), 0.4, 0.4, 0.85);
|
|
125
125
|
composer.addPass(bloom);
|
|
126
126
|
|
|
127
127
|
// ---- STATE / INPUT ----
|
|
@@ -189,6 +189,12 @@ const THREEJS_TOPIC_CHEATSHEET = `THREE.JS CAPABILITY MAP (import from "three/ad
|
|
|
189
189
|
*/
|
|
190
190
|
const THREEJS_GAME_RULES = `You are generating a COMPLETE, PLAYABLE single-file three.js game as one HTML document. It runs in an isolated, script-enabled sandbox (no same-origin), so it must be fully self-contained.
|
|
191
191
|
|
|
192
|
+
DESIGN IT LIKE A "GAME SHORT" — fast, fun, instantly playable, endlessly replayable:
|
|
193
|
+
- Instant: understandable in 3 seconds, playable in 5. One core verb (jump / dodge / collect / tap / steer). No tutorials, no menus to wade through — a single Play button, then you're in.
|
|
194
|
+
- Fast: snappy controls, quick rounds (~30–90 seconds), immediate restart on death (one tap to go again). It must FEEL fast — responsive input, brisk pacing, juicy feedback.
|
|
195
|
+
- Long-lasting: an escalating difficulty curve and a score/combo/streak chase that makes "one more go" irresistible. Track a best score across rounds.
|
|
196
|
+
- Lightweight & fast-loading: keep geometry simple and counts low, reuse materials, pool objects. The whole thing must load and hit 60fps instantly, including on phones. Effects are seasoning, NOT the meal — keep bloom subtle (strength ~0.3–0.5, high threshold) and skip heavy postprocessing; never let FX cost framerate.
|
|
197
|
+
|
|
192
198
|
NON-NEGOTIABLE STRUCTURE (build from the TEMPLATE below — do not invent a different loader):
|
|
193
199
|
- Exactly ONE <script type="importmap"> in <head>, using this EXACT pinned, trusted CDN (any other host/version is stripped by the sanitizer and the game will not load):
|
|
194
200
|
"three": "https://cdn.jsdelivr.net/npm/three@0.169.0/build/three.module.js"
|
|
@@ -201,8 +207,12 @@ ART DIRECTION — CARTOON / TOON, WITH A LITTLE GLOW (this is mandatory; do NOT
|
|
|
201
207
|
- Chunky comic outlines on the main characters/objects via the inverted-hull trick (BackSide black mesh scaled ~1.05–1.08). Keep outlines off tiny particles to stay cheap.
|
|
202
208
|
- Bold, joyful color: a bright sky or pastel-gradient background, saturated character colors, and gentle THREE.Fog matching the sky for soft depth. Rounded, chunky shapes (spheres, rounded boxes, capsules, icosahedrons) — no thin sharp geometry.
|
|
203
209
|
- Soft, even lighting: HemisphereLight (sky/ground) + one warm DirectionalLight with soft PCFSoft shadows. Avoid dark, moody, high-contrast lighting.
|
|
204
|
-
- A LITTLE glow: a
|
|
205
|
-
- Juice: squash/stretch or a bouncy sine on the player, a pop/scale on pickup, easing on camera,
|
|
210
|
+
- A LITTLE glow, kept subtle: a gentle UnrealBloomPass (strength ~0.3–0.5, high threshold ~0.85) via EffectComposer so ONLY the brightest bits (collectibles / power-ups) glow. Don't overdo bloom or stack heavy effects — it must never cost framerate. Call composer.render() in the loop (not renderer.render) and composer.setSize() on resize. (OutlineEffect and EffectComposer don't compose — use inverted-hull outlines when you use bloom.)
|
|
211
|
+
- Juice: squash/stretch or a bouncy sine on the player, a pop/scale on pickup, easing on camera, the odd particle or flash on events. Cheap, huge charm — favour these over expensive post FX.
|
|
212
|
+
|
|
213
|
+
RESPONSIVE — THE GAME OWNS THE WHOLE SCREEN AND ADAPTS ITSELF:
|
|
214
|
+
- Size the renderer/camera to the iframe viewport (innerWidth/innerHeight) and update on every resize — the frame may be phone-portrait (~9:16), tablet, or desktop, and it can change live. Re-frame the camera (fov/position) so the full playfield fits whatever the aspect is; never let the action get cropped in portrait.
|
|
215
|
+
- Touch FIRST: on-screen controls live in comfortable thumb zones, big tap targets, and the HUD scales with the viewport. The same build must play great with a thumb in portrait and a keyboard on desktop.
|
|
206
216
|
|
|
207
217
|
GAMEPLAY THE ARTIFACT MUST ACTUALLY HAVE (not a tech demo):
|
|
208
218
|
- A clear goal and a win/lose (or endless-score) condition, real player control, and visible feedback.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threejsGamePrompt.js","sourceRoot":"","sources":["../../src/prompts/threejsGamePrompt.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"threejsGamePrompt.js","sourceRoot":"","sources":["../../src/prompts/threejsGamePrompt.ts"],"names":[],"mappings":";;;AAwOA,wDAoBC;AA5PD,uDAAuD;AAEvD;;;;;;;;GAQG;AACU,QAAA,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuJ7B,CAAC;AAET;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG;;;;;;;;;;;oHAWmF,CAAC;AAErH;;;;GAIG;AACH,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6IAoCkH,CAAC;AAO9I,wEAAwE;AACxE,SAAgB,sBAAsB,CACpC,UAAoC,EAAE;IAEtC,OAAO;QACL,oCAAkB;QAClB,EAAE;QACF,kBAAkB;QAClB,EAAE;QACF,wBAAwB;QACxB,EAAE;QACF,gMAAgM;QAChM,6BAAqB;QACrB,OAAO,CAAC,SAAS;YACf,CAAC,CAAC,yBAAyB,OAAO,CAAC,SAAS,qDAAqD;YACjG,CAAC,CAAC,EAAE;QACN,EAAE;QACF,wIAAwI;KACzI;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC"}
|
package/package.json
CHANGED