@@ -478,3 +630,117 @@ export const Tools = {
`
};
+
+/**
+ * @summary Model settings with streaming and reasoning controls, sampling parameters, and token limits. Use synchronized sliders and numeric inputs with contextual help to configure model responses.
+ * @tags pattern
+ */
+export const ModelSettings = {
+ render() {
+ return html`
+
+
+ `;
+ }
+};
diff --git a/projects/internals/patterns/src/code.examples.ts b/projects/internals/patterns/src/code.examples.ts
index 623e70b6d8..628e1fa35e 100644
--- a/projects/internals/patterns/src/code.examples.ts
+++ b/projects/internals/patterns/src/code.examples.ts
@@ -12,7 +12,9 @@ import '@nvidia-elements/core/format-datetime/define.js';
import '@nvidia-elements/core/grid/define.js';
import '@nvidia-elements/core/icon/define.js';
import '@nvidia-elements/core/password/define.js';
+import '@nvidia-elements/core/switch/define.js';
import '@nvidia-elements/core/tree/define.js';
+import '@nvidia-elements/monaco/diff-editor/define.js';
export default {
title: 'Patterns/Code',
@@ -170,6 +172,43 @@ export const FileTree = {
`
};
+/**
+ * @summary Expandable changed-file tree with additions and deletions aligned beside each file. Use during Git reviews to scan the scope of changes without losing the repository hierarchy.
+ * @tags pattern
+ */
+export const FileTreeGitDiff = {
+ render: () => html`
+
+ `
+};
+
/**
* @summary Commit details with author, copyable hash, and expandable file changes. Use after an assistant edits a repository to show the scope of a change and distinguish added, modified, deleted, and renamed files.
* @tags pattern
@@ -274,3 +313,83 @@ export const EnvironmentVariables = {
`
};
+
+/**
+ * @summary Git change review for a warehouse robot navigation configuration with branch context and read-only comparisons. Use before merging robot behavior changes to inspect revised parameters in side-by-side or inline views.
+ * @tags pattern
+ */
+export const GitReviewDiff = {
+ render() {
+ return html`
+
+
+ `;
+ }
+};
diff --git a/projects/markdown/src/markdown/markdown.examples.ts b/projects/markdown/src/markdown/markdown.examples.ts
index eec79f7979..c10be762fa 100644
--- a/projects/markdown/src/markdown/markdown.examples.ts
+++ b/projects/markdown/src/markdown/markdown.examples.ts
@@ -2,6 +2,7 @@
// SPDX-License-Identifier: Apache-2.0
import { html } from 'lit';
+import '@nvidia-elements/core/button/define.js';
import '@nvidia-elements/markdown/markdown/define.js';
import '@nvidia-elements/markdown/styles/index.css';
@@ -249,12 +250,15 @@ This content has
mixed with markdown.
};
/**
- * @summary Progressive streaming demo simulating AI assistant responses with block-by-block content rendering
+ * @summary Progressive AI response streaming with a restart action. Use to replay content from the beginning and inspect how markdown renders as new blocks arrive.
* @tags test-case
*/
-export const JavaScriptDriven = {
+export const StreamingContent = {
render: () => html`
-
+
`
diff --git a/projects/site/public/static/themes/classic.css b/projects/site/public/static/themes/classic.css
index 38f47ac4a8..d88982111f 100644
--- a/projects/site/public/static/themes/classic.css
+++ b/projects/site/public/static/themes/classic.css
@@ -6,7 +6,6 @@
--nve-config-color-scheme-light: true;
--nve-config-experimental: true;
--nve-config-theme-classic: true;
- /* eslint-disable-line @nve/lint/no-unknown-css-variable */
--nve-ref-color-neutral-100: oklch(99.1% 0 none);
--nve-ref-color-neutral-200: oklch(98.1% 0 none);
--nve-ref-color-neutral-300: oklch(95.3% 0 none);
@@ -19,6 +18,19 @@
--nve-ref-color-neutral-1000: oklch(60.3% 0 none);
--nve-ref-color-neutral-1100: oklch(50.3% 0 none);
--nve-ref-color-neutral-1200: oklch(24.3% 0 none);
+ --nve-ref-color-gray-denim-100: oklch(99.1% 0 none);
+ --nve-ref-color-gray-denim-200: oklch(98.1% 0 none);
+ --nve-ref-color-gray-denim-300: oklch(95.3% 0 none);
+ --nve-ref-color-gray-denim-400: oklch(93% 0 none);
+ --nve-ref-color-gray-denim-500: oklch(90.8% 0 none);
+ --nve-ref-color-gray-denim-600: oklch(88.4% 0 none);
+ --nve-ref-color-gray-denim-700: oklch(85.1% 0 none);
+ --nve-ref-color-gray-denim-800: oklch(79.1% 0 none);
+ --nve-ref-color-gray-denim-900: oklch(63.01% 0 0);
+ --nve-ref-color-gray-denim-1000: oklch(60.3% 0 none);
+ --nve-ref-color-gray-denim-1100: oklch(50.3% 0 none);
+ --nve-ref-color-gray-denim-1200: oklch(24.3% 0 none);
+
--nve-ref-border-radius-lg: 16px;
--nve-ref-shadow-100: 0 1px 1px rgb(0 0 0 / 0.06), 0 2px 2px rgb(0 0 0 / 0.05), 0 4px 4px rgb(0 0 0 / 0.04);
--nve-ref-shadow-200: 0 2px 2px rgb(0 0 0 / 0.06), 0 4px 4px rgb(0 0 0 / 0.05), 0 8px 8px rgb(0 0 0 / 0.04);
@@ -43,7 +55,7 @@
var(--nve-ref-color-scheme-inverse) 5.3%);
--nve-sys-layer-container-accent-background: color-mix(in oklch,
var(--nve-sys-layer-container-background),
- var(--nve-ref-color-scheme-inverse) 5.3%);
+ var(--nve-ref-color-scheme-inverse) 2.3%);
--nve-sys-layer-overlay-accent-background: color-mix(in oklch,
var(--nve-sys-layer-overlay-background),
var(--nve-ref-color-scheme-inverse) 5.3%);
@@ -273,10 +285,6 @@
--gap: var(--nve-ref-space-xxs);
}
- nve-badge:not([container]) {
- --border: var(--nve-ref-border-width-sm) solid var(--state-color-base);
- }
-
nve-badge:not([status], [color]) {
--state-color-base: var(--nve-sys-support-accent-color);
}
@@ -940,8 +948,7 @@
--nve-config-color-scheme-dark: true;
--nve-config-experimental: true;
--nve-config-theme-classic-dark: true;
- /* eslint-disable-line @nve/lint/no-unknown-css-variable */
- --nve-ref-color-neutral-100: oklch(10% 0 0);
+ --nve-ref-color-neutral-100: oklch(0% 0 0);
--nve-ref-color-neutral-200: oklch(20.02% 0 0);
--nve-ref-color-neutral-300: oklch(25.2% 0 0);
--nve-ref-color-neutral-400: oklch(28.09% 0 0);
@@ -953,6 +960,19 @@
--nve-ref-color-neutral-1000: oklch(77.31% 0 0);
--nve-ref-color-neutral-1100: oklch(85.45% 0 0);
--nve-ref-color-neutral-1200: oklch(90.67% 0 0);
+ --nve-ref-color-gray-denim-100: oklch(0% 0 0);
+ --nve-ref-color-gray-denim-200: oklch(20.02% 0 0);
+ --nve-ref-color-gray-denim-300: oklch(25.2% 0 0);
+ --nve-ref-color-gray-denim-400: oklch(28.09% 0 0);
+ --nve-ref-color-gray-denim-500: oklch(31.32% 0 0);
+ --nve-ref-color-gray-denim-600: oklch(35.23% 0 0);
+ --nve-ref-color-gray-denim-700: oklch(40.17% 0 0);
+ --nve-ref-color-gray-denim-800: oklch(49.26% 0 0);
+ --nve-ref-color-gray-denim-900: oklch(56.24% 0 0);
+ --nve-ref-color-gray-denim-1000: oklch(77.31% 0 0);
+ --nve-ref-color-gray-denim-1100: oklch(85.45% 0 0);
+ --nve-ref-color-gray-denim-1200: oklch(90.67% 0 0);
+
--nve-ref-color-scheme-base: var(--nve-ref-color-black);
--nve-ref-color-scheme-inverse: var(--nve-ref-color-white);
diff --git a/projects/site/src/_11ty/layouts/common.js b/projects/site/src/_11ty/layouts/common.js
index 2e2a7f95f4..f6f41e3a17 100644
--- a/projects/site/src/_11ty/layouts/common.js
+++ b/projects/site/src/_11ty/layouts/common.js
@@ -489,13 +489,22 @@ export function renderGlobalsScript(data = { disableTheme: false }) {
}
export function renderBasePageHeader(data) {
+ const isCatalogPage = [
+ '/docs/elements/',
+ '/docs/code/',
+ '/docs/markdown/',
+ '/docs/media/',
+ '/docs/monaco/',
+ '/docs/viewport/'
+ ].some(path => data.page.url.startsWith(path));
+
return /* html */ `
NV
NVIDIA Elements
-
+
${ELEMENTS_PLAYGROUND_BASE_URL ? /* html */ `` : ''}
-
+
System Themes
diff --git a/projects/site/src/_11ty/layouts/docs.11ty.js b/projects/site/src/_11ty/layouts/docs.11ty.js
index c19d9d2b5c..15326f177d 100644
--- a/projects/site/src/_11ty/layouts/docs.11ty.js
+++ b/projects/site/src/_11ty/layouts/docs.11ty.js
@@ -70,13 +70,6 @@ export async function render(data) {
${ELEMENTS_PAGES_BASE_URL}/llms.txt is available and optimized for AI and LLM tools.
${renderBasePageHeader(data)}
-
-
-
- ${renderDocsNav(data)}
-
-
-
${
data.tag
? `
@@ -129,6 +122,13 @@ export async function render(data) {
${data.tag && !data.hideStatus && !(data.page.url.includes('api') || data.page.url.includes('examples')) ? `${elementStatus(data.tag)}` : ''}