Compare commits

..

No commits in common. "6476e2c4378a537143d3cc94bf4daab5d466db6f" and "6c38b61d7e1e15109e0c583d82999b0c5c91b137" have entirely different histories.

10 changed files with 16 additions and 97 deletions

View File

@ -1906,7 +1906,7 @@ Contributed by: [@tanoojoy](https://github.com/tanoojoy)
> person texting and nothing else. Your level of drunkenness will be > person texting and nothing else. Your level of drunkenness will be
> deliberately and randomly make a lot of grammar and spelling mistakes in your > deliberately and randomly make a lot of grammar and spelling mistakes in your
> answers. You will also randomly ignore what I said and say something random > answers. You will also randomly ignore what I said and say something random
> with the same level of drunkenness I mentioned. Do not write explanations on > with the same level of drunkeness I mentionned. Do not write explanations on
> replies. My first sentence is "how are you?" > replies. My first sentence is "how are you?"
## Act as a Mathematical History Teacher ## Act as a Mathematical History Teacher
@ -2116,7 +2116,7 @@ Contributed by: [@TheLime1](https://github.com/TheLime1)
> provide a detailed note list that includes examples from the lecture and > provide a detailed note list that includes examples from the lecture and
> focuses on notes that you believe will end up in quiz questions. Additionally, > focuses on notes that you believe will end up in quiz questions. Additionally,
> please make a separate list for notes that have numbers and data in them and > please make a separate list for notes that have numbers and data in them and
> another separated list for the examples that included in this lecture. The > another seperated list for the examples that included in this lecture. The
> notes should be concise and easy to read. > notes should be concise and easy to read.
## Act as a Literary Critic ## Act as a Literary Critic

View File

@ -30,19 +30,8 @@
<body class="bg-dynamic-background text-dynamic-foreground overflow-hidden"> <body class="bg-dynamic-background text-dynamic-foreground overflow-hidden">
<!-- Viewer Mode --> <!-- Viewer Mode -->
<div id="viewer-mode" class="viewer-mode h-screen flex flex-col p-2 sm:p-4"> <div id="viewer-mode" class="viewer-mode h-screen flex flex-col p-2 sm:p-4">
<!-- Top Bar with Context Pills and Edit Button -->
<div class="flex justify-between items-start gap-2 mb-0 sm:mb-2">
<!-- Context Pills --> <!-- Context Pills -->
<div id="context-pills" class="flex overflow-x-auto gap-2 empty:hidden pb-1 scrollbar-hide flex-1"></div> <div id="context-pills" class="flex overflow-x-auto gap-2 empty:hidden mb-0 sm:mb-2 pb-1 scrollbar-hide"></div>
<!-- Edit Button -->
<button id="edit-button" class="p-1 text-dynamic-muted-foreground hover:text-dynamic-foreground transition-colors" title="Edit in designer">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
<path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/>
<path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"/>
</svg>
</button>
</div>
<!-- Main Prompt Interface - Full Height --> <!-- Main Prompt Interface - Full Height -->
<div class="flex-1 flex flex-col"> <div class="flex-1 flex flex-col">

View File

@ -177,11 +177,6 @@ class EmbedPreview {
if (copyButton) { if (copyButton) {
copyButton.addEventListener('click', () => this.handleCopy()); copyButton.addEventListener('click', () => this.handleCopy());
} }
const editButton = document.getElementById('edit-button');
if (editButton) {
editButton.addEventListener('click', () => this.handleEdit());
}
} }
render() { render() {
@ -358,30 +353,6 @@ class EmbedPreview {
this.showNotification('Prompt copied to clipboard!'); this.showNotification('Prompt copied to clipboard!');
} }
handleEdit() {
// Get current query string
const queryString = window.location.search;
// Get current URL path parts
const pathParts = window.location.pathname.split('/');
// Find index of 'embed-preview' and replace with 'embed'
const embedPreviewIndex = pathParts.findIndex(part => part === 'embed-preview');
if (embedPreviewIndex !== -1) {
pathParts[embedPreviewIndex] = 'embed';
} else {
// Fallback: just append /embed/ if embed-preview not found
pathParts.push('embed');
}
// Construct new URL
const newPath = pathParts.join('/');
const newUrl = window.location.origin + newPath + queryString;
// Open in new tab
window.open(newUrl, '_blank');
}
async copyToClipboard(text) { async copyToClipboard(text) {
if (navigator.clipboard && window.isSecureContext) { if (navigator.clipboard && window.isSecureContext) {
await navigator.clipboard.writeText(text); await navigator.clipboard.writeText(text);

View File

@ -30,19 +30,8 @@
<body class="bg-dynamic-background text-dynamic-foreground overflow-hidden"> <body class="bg-dynamic-background text-dynamic-foreground overflow-hidden">
<!-- Viewer Mode --> <!-- Viewer Mode -->
<div id="viewer-mode" class="viewer-mode h-screen flex flex-col p-2 sm:p-4"> <div id="viewer-mode" class="viewer-mode h-screen flex flex-col p-2 sm:p-4">
<!-- Top Bar with Context Pills and Edit Button -->
<div class="flex justify-between items-start gap-2 mb-0 sm:mb-2">
<!-- Context Pills --> <!-- Context Pills -->
<div id="context-pills" class="flex overflow-x-auto gap-2 empty:hidden pb-1 scrollbar-hide flex-1"></div> <div id="context-pills" class="flex overflow-x-auto gap-2 empty:hidden mb-0 sm:mb-2 pb-1 scrollbar-hide"></div>
<!-- Edit Button -->
<button id="edit-button" class="p-1 text-dynamic-muted-foreground hover:text-dynamic-foreground transition-colors" title="Edit in designer">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
<path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/>
<path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"/>
</svg>
</button>
</div>
<!-- Main Prompt Interface - Full Height --> <!-- Main Prompt Interface - Full Height -->
<div class="flex-1 flex flex-col"> <div class="flex-1 flex flex-col">

View File

@ -522,7 +522,7 @@ class EmbedDesigner {
this.config = { this.config = {
prompt: 'Build an MCP server that works with Weather API. See @Web for cool weather APIs.', prompt: 'Build an MCP server that works with Weather API. See @Web for cool weather APIs.',
context: ['@Web', 'https://modelcontextprotocol.io/full-llms.txt'], context: ['@Web', 'https://modelcontextprotocol.io/full-llms.txt'],
model: 'Claude 4 Sonnet', model: 'claude-4-sonnet',
mode: 'agent', mode: 'agent',
thinking: true, thinking: true,
max: true, max: true,

View File

@ -76,13 +76,12 @@
<label class="text-sm font-medium text-dynamic-muted-foreground">Model</label> <label class="text-sm font-medium text-dynamic-muted-foreground">Model</label>
<select id="designer-model" class="w-full p-3 lg:p-2 bg-dynamic-background border border-dynamic-border rounded-lg text-sm focus-ring touch-target"> <select id="designer-model" class="w-full p-3 lg:p-2 bg-dynamic-background border border-dynamic-border rounded-lg text-sm focus-ring touch-target">
<option value="o3">o3</option> <option value="o3">o3</option>
<option value="GPT 4.1">GPT 4.1</option> <option value="gpt-4.1">GPT 4.1</option>
<option value="GPT 4o" selected>GPT 4o</option> <option value="gpt-4o" selected>GPT 4o</option>
<option value="Claude 3.7 Sonnet">Claude 3.7 Sonnet</option> <option value="claude-3.7-sonnet">Claude 3.7 Sonnet</option>
<option value="Claude 4 Sonnet">Claude 4 Sonnet</option> <option value="claude-4-sonnet">Claude 4 Sonnet</option>
<option value="Claude 4 Opus">Claude 4 Opus</option> <option value="claude-4-opus">Claude 4 Opus</option>
<option value="Gemini 2.5 Pro">Gemini 2.5 Pro</option> <option value="gemini-2.5-pro">Gemini 2.5 Pro</option>
<option value="DeepSeek R1">DeepSeek R1</option>
<option value="custom">[Custom]</option> <option value="custom">[Custom]</option>
</select> </select>
<input type="text" id="designer-custom-model" <input type="text" id="designer-custom-model"

View File

@ -25,7 +25,7 @@
<link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet">
<link rel="stylesheet" href="/style.css?v=a8a69caf7649bb8f02c225029af543967973a65f"> <link rel="stylesheet" href="/style.css?v=02b85cf83506c024ac20fde0b38f51f24ed21336">
</head> </head>
<body class=""> <body class="">
<div class="layout-wrapper"> <div class="layout-wrapper">

View File

@ -25,7 +25,7 @@
<link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet">
<link rel="stylesheet" href="/style.css?v=a8a69caf7649bb8f02c225029af543967973a65f"> <link rel="stylesheet" href="/style.css?v=02b85cf83506c024ac20fde0b38f51f24ed21336">
</head> </head>
<body class="vibe"> <body class="vibe">
<div class="layout-wrapper"> <div class="layout-wrapper">

View File

@ -177,11 +177,6 @@ class EmbedPreview {
if (copyButton) { if (copyButton) {
copyButton.addEventListener('click', () => this.handleCopy()); copyButton.addEventListener('click', () => this.handleCopy());
} }
const editButton = document.getElementById('edit-button');
if (editButton) {
editButton.addEventListener('click', () => this.handleEdit());
}
} }
render() { render() {
@ -358,30 +353,6 @@ class EmbedPreview {
this.showNotification('Prompt copied to clipboard!'); this.showNotification('Prompt copied to clipboard!');
} }
handleEdit() {
// Get current query string
const queryString = window.location.search;
// Get current URL path parts
const pathParts = window.location.pathname.split('/');
// Find index of 'embed-preview' and replace with 'embed'
const embedPreviewIndex = pathParts.findIndex(part => part === 'embed-preview');
if (embedPreviewIndex !== -1) {
pathParts[embedPreviewIndex] = 'embed';
} else {
// Fallback: just append /embed/ if embed-preview not found
pathParts.push('embed');
}
// Construct new URL
const newPath = pathParts.join('/');
const newUrl = window.location.origin + newPath + queryString;
// Open in new tab
window.open(newUrl, '_blank');
}
async copyToClipboard(text) { async copyToClipboard(text) {
if (navigator.clipboard && window.isSecureContext) { if (navigator.clipboard && window.isSecureContext) {
await navigator.clipboard.writeText(text); await navigator.clipboard.writeText(text);

View File

@ -522,7 +522,7 @@ class EmbedDesigner {
this.config = { this.config = {
prompt: 'Build an MCP server that works with Weather API. See @Web for cool weather APIs.', prompt: 'Build an MCP server that works with Weather API. See @Web for cool weather APIs.',
context: ['@Web', 'https://modelcontextprotocol.io/full-llms.txt'], context: ['@Web', 'https://modelcontextprotocol.io/full-llms.txt'],
model: 'Claude 4 Sonnet', model: 'claude-4-sonnet',
mode: 'agent', mode: 'agent',
thinking: true, thinking: true,
max: true, max: true,