Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions NOTICE.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ This product includes the following bundled third-party software:
- @inquirer/prompts v8.5.0 [MIT] (used by: @nvidia-elements/cli)
Copyright: Simon Boudrias <admin@simonboudrias.com>

- @modelcontextprotocol/ext-apps v1.7.3 [MIT] (used by: @nvidia-elements/cli)
- @modelcontextprotocol/ext-apps v1.7.5 [MIT] (used by: @nvidia-elements/cli)
Copyright: Olivier Chafik

- @modelcontextprotocol/sdk v1.29.0 [MIT] (used by: @nvidia-elements/cli)
- @modelcontextprotocol/sdk v1.30.0 [MIT] (used by: @nvidia-elements/cli)
Copyright: Anthropic, PBC (https://anthropic.com)

- adm-zip v0.5.17 [MIT] (used by: @nvidia-elements/cli)
Expand Down Expand Up @@ -307,8 +307,8 @@ The following bundled components are provided under the MIT license:
@html-eslint/eslint-plugin v0.61.0 - Copyright yeonjuan (https://github.com/yeonjuan)
@html-eslint/parser v0.61.0 - Copyright yeonjuan (https://github.com/yeonjuan)
@inquirer/prompts v8.5.0 - Copyright Simon Boudrias <admin@simonboudrias.com>
@modelcontextprotocol/ext-apps v1.7.3 - Copyright Olivier Chafik
@modelcontextprotocol/sdk v1.29.0 - Copyright Anthropic, PBC (https://anthropic.com)
@modelcontextprotocol/ext-apps v1.7.5 - Copyright Olivier Chafik
@modelcontextprotocol/sdk v1.30.0 - Copyright Anthropic, PBC (https://anthropic.com)
adm-zip v0.5.17 - Copyright Nasca Iacob <sy@another-d-mention.ro> (https://github.com/cthackers)
archiver v8.0.0 - Copyright Chris Talkington (http://christalkington.com/)
markdown-it v14.3.0 - Copyright Unknown
Expand Down
36 changes: 23 additions & 13 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions pnpm-workspace.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,8 @@ catalog:
'@lit-labs/ssr-react': 0.3.4
'@lit-labs/virtualizer': 2.1.1
'@lit/reactive-element': 2.1.2
'@modelcontextprotocol/ext-apps': 1.7.3
'@modelcontextprotocol/sdk': 1.29.0
'@modelcontextprotocol/ext-apps': 1.7.5
'@modelcontextprotocol/sdk': 1.30.0
'@types/node': 25.6.2
'@types/react': 19.2.14
'@types/react-dom': 19.2.3
Expand Down
8 changes: 4 additions & 4 deletions projects/cli/NOTICE.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ This project includes the following bundled third-party software:
- @inquirer/prompts v8.5.0 [MIT]
Copyright: Simon Boudrias <admin@simonboudrias.com>

- @modelcontextprotocol/ext-apps v1.7.3 [MIT]
- @modelcontextprotocol/ext-apps v1.7.5 [MIT]
Copyright: Olivier Chafik

- @modelcontextprotocol/sdk v1.29.0 [MIT]
- @modelcontextprotocol/sdk v1.30.0 [MIT]
Copyright: Anthropic, PBC (https://anthropic.com)

- adm-zip v0.5.17 [MIT]
Expand Down Expand Up @@ -48,8 +48,8 @@ MIT
The following bundled components are provided under the MIT license:

@inquirer/prompts v8.5.0 - Copyright Simon Boudrias <admin@simonboudrias.com>
@modelcontextprotocol/ext-apps v1.7.3 - Copyright Olivier Chafik
@modelcontextprotocol/sdk v1.29.0 - Copyright Anthropic, PBC (https://anthropic.com)
@modelcontextprotocol/ext-apps v1.7.5 - Copyright Olivier Chafik
@modelcontextprotocol/sdk v1.30.0 - Copyright Anthropic, PBC (https://anthropic.com)
adm-zip v0.5.17 - Copyright Nasca Iacob <sy@another-d-mention.ro> (https://github.com/cthackers)
archiver v8.0.0 - Copyright Chris Talkington (http://christalkington.com/)
marked v18.0.3 - Copyright Christopher Jeffrey
Expand Down
12 changes: 7 additions & 5 deletions projects/core/src/accordion/accordion.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ import accordionGroupStyleSheet from './accordion-group.css?inline';
* @documentation https://nvidia.github.io/elements/docs/elements/accordion/
* @since 0.12.0
* @entrypoint \@nvidia-elements/core/accordion
* @slot - default content slot
* @slot - Heading text and supporting content that labels the accordion section.
* @slot prefix - slot for prefix content
* @slot suffix - slot for suffix content
* @cssprop --cursor
Expand All @@ -57,6 +57,7 @@ export class AccordionHeader extends LitElement {
`;
}

/** @private */
@hostAttr() slot = 'header';

connectedCallback() {
Expand Down Expand Up @@ -101,14 +102,13 @@ export class AccordionContent extends LitElement {
* @command --open - use to open the accordion
* @command --close - use to close the accordion
* @command --toggle - use to toggle the accordion
* @slot - This is a default/unnamed slot for accordion content
* @slot - Content displayed in the collapsible region, typically an `nve-accordion-content` element.
* @slot icon-button - icon elements to display for expand/collapse
Comment thread
coryrylan marked this conversation as resolved.
* @slot header - header element (Use `accordion-header` or custom content)
* @slot content - content element (Use `accordion-content` or custom content)
* @cssprop --background
* @cssprop --color
* @cssprop --border-radius
* @cssprop --header-padding
* @cssprop --header-padding - Padding around the header content.
* @cssprop --cursor
* @cssprop --transition
* @csspart icon-button - The toggle icon button element
Expand Down Expand Up @@ -244,7 +244,9 @@ export class AccordionGroup extends LitElement {
*/
@property({ type: Boolean, attribute: 'behavior-expand-single' }) behaviorExpandSingle = false;

/** flat (Borderless, container-less accordions), full (default), or inset (Rounded corner, contained accordion) */
/**
* Controls the container style applied to child accordions. `flat` removes the visual container, `inset` adds rounded containment, and omission uses the default divided presentation.
*/
@property({ type: String, reflect: true }) container?: Extract<Container, 'flat' | 'inset'>;

static readonly metadata = {
Expand Down
2 changes: 1 addition & 1 deletion projects/core/src/avatar/avatar-group.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import styles from './avatar-group.css?inline';
* @description An avatar group displays a collection of user avatars in a compact and organized layout, showcasing many participants or contributors in a space-efficient way.
* @since 1.20.0
* @entrypoint \@nvidia-elements/core/avatar
* @slot - default slot for content
* @slot - `nve-avatar` elements that represent the group members.
* @aria https://www.w3.org/WAI/ARIA/apg/patterns/alert/
*
*/
Expand Down
2 changes: 1 addition & 1 deletion projects/core/src/avatar/avatar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import styles from './avatar.css?inline';
* @documentation https://nvidia.github.io/elements/docs/elements/avatar/
* @since 1.20.0
* @entrypoint \@nvidia-elements/core/avatar
* @slot - default slot for content
* @slot - Initials, an image, or other content that identifies the represented user or bot.
* @cssprop --background
* @cssprop --color
* @cssprop --border-radius
Expand Down
2 changes: 1 addition & 1 deletion projects/core/src/badge/badge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import styles from './badge.css?inline';
* @documentation https://nvidia.github.io/elements/docs/elements/badge/
* @since 0.11.0
* @entrypoint \@nvidia-elements/core/badge
* @slot - default slot for content
* @slot - Short text that communicates the badge status.
Comment thread
coryrylan marked this conversation as resolved.
* @slot prefix-icon - slot for prefix icon
* @slot suffix-icon - slot for suffix icon
* @cssprop --background
Expand Down
4 changes: 3 additions & 1 deletion projects/core/src/card/card.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ export class Card extends LitElement implements ContainerElement {
* @documentation https://nvidia.github.io/elements/docs/elements/card/
* @since 0.1.3
* @entrypoint \@nvidia-elements/core/card
* @slot - default slot
* @slot - Card title, supporting text, and optional action controls.
* @cssprop --padding
* @cssprop --border-bottom
* @cssprop --line-height
Expand All @@ -72,6 +72,7 @@ export class CardHeader extends LitElement {
parents: ['nve-card']
};

/** @private */
@hostAttr() slot = 'header';

render() {
Expand Down Expand Up @@ -133,6 +134,7 @@ export class CardFooter extends LitElement {
parents: ['nve-card']
};

/** @private */
@hostAttr() slot = 'footer';

render() {
Expand Down
4 changes: 3 additions & 1 deletion projects/core/src/chat-message/chat-message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import globalStyles from './chat-message.global.css?inline';
* @documentation https://nvidia.github.io/elements/docs/elements/chat-message/
* @since 1.25.0
* @entrypoint \@nvidia-elements/core/chat-message
* @slot - default slot for content
* @slot - The message body displayed between the prefix and suffix content.
* @slot prefix - for avatar/img content
* @slot suffix - for avatar/img content
* @cssprop --background
Expand All @@ -37,10 +37,12 @@ export class ChatMessage extends LitElement {
version: '0.0.0'
};

/** Applies a transparent background and reduced horizontal padding for embedding the message in another container. */
@property({ type: String, reflect: true }) container: 'flat';

@property({ type: String, reflect: true }) color: Color;

/** Removes the border radius from the selected message corner to indicate the speaker direction. */
@property({ type: String, reflect: true, attribute: 'arrow-position' }) arrowPosition:
| 'top-start'
| 'top-end'
Expand Down
2 changes: 1 addition & 1 deletion projects/core/src/copy-button/copy-button.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import styles from './copy-button.css?inline';
* @documentation https://nvidia.github.io/elements/docs/elements/copy-button/
* @since 1.1.4
* @entrypoint \@nvidia-elements/core/copy-button
* @slot - default
* @slot - Text label displayed before the copy icon.
* @slot icon - slot for custom icon
* @cssprop --color
* @cssprop --background
Expand Down
2 changes: 1 addition & 1 deletion projects/core/src/dialog/dialog.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import styles from './dialog.css?inline';
* @event toggle - Dispatched on a popover element just after showing or hiding. [MDN](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/toggle_event)
* @event open - Dispatched when the dialog opens.
* @event close - Dispatched when the dialog closes.
* @slot - default content slot
* @slot - Dialog body content displayed between the header and footer.
* @cssprop --border
* @cssprop --border-radius
* @cssprop --background
Expand Down
2 changes: 1 addition & 1 deletion projects/core/src/drawer/drawer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import styles from './drawer.css?inline';
* @event toggle - Dispatched on a popover element just after showing or hiding. [MDN](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/toggle_event)
* @event open - Dispatched when the drawer opens.
* @event close - Dispatched when the drawer closes.
* @slot - default content slot
* @slot - Drawer body content displayed between the header and footer.
* @cssprop --border
* @cssprop --background
* @cssprop --color
Expand Down
3 changes: 1 addition & 2 deletions projects/core/src/dropdown-group/dropdown-group.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,6 @@ import globalStyles from './dropdown-group.global.css?inline';
* @slot - default slot for dropdown content
* @event open - Dispatched when a dropdown in the group opens
* @event close - Dispatched when a dropdown in the group closes
* @cssprop --nve-dropdown-group-spacing
* @cssprop --nve-dropdown-group-transition
* @cssprop --arrow-transform - Transform applied to the popover arrow
* @aria https://www.w3.org/WAI/ARIA/apg/patterns/menubar/
*/
Expand Down Expand Up @@ -114,6 +112,7 @@ export class DropdownGroup extends LitElement {
}
}

/** Closes every descendant dropdown in the group. */
close() {
this.querySelectorAll('nve-dropdown').forEach(d => d.hidePopover());
}
Expand Down
1 change: 1 addition & 0 deletions projects/core/src/dropdown/dropdown.ts
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@ export class Dropdown extends LitElement {
/** @private */
@property({ type: String, attribute: 'popover-type' }) popoverType: PopoverType = 'auto';

/** @private */
@query('.arrow') popoverArrow: HTMLElement;

#i18nController: I18nController<this> = new I18nController<this>(this);
Expand Down
12 changes: 9 additions & 3 deletions projects/core/src/dropzone/dropzone.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,30 +16,35 @@ import styles from './dropzone.css?inline';
import { FormControlMixin } from '@nvidia-elements/forms/mixins';
import { fileTypeValidator, fileSizeValidator, getFileTypeSpecifiers } from './dropzone.util';

/* eslint-disable jsdoc/no-types */
// Explicit JSDoc type because the CEM analyzer loses the inherited generic specialization.

/**
* @element nve-dropzone
* @description A dropzone form control that enables users to drag and drop files onto it.
* @documentation https://nvidia.github.io/elements/docs/elements/dropzone/
* @since 1.29.0
* @entrypoint \@nvidia-elements/core/dropzone
* @property {File[]} value - Files selected or dropped by the user. Assign files through the JavaScript property; the HTML `value` attribute is not supported.
* @event change - Dispatched when the value has changed (files located in event.target)
Comment thread
coryrylan marked this conversation as resolved.
* @slot - use only when custom messaging requires it
* @slot - Custom messaging that replaces the default upload instructions.
* @cssprop --background
* @cssprop --border-color
* @cssprop --border-radius
* @cssprop --padding
* @cssprop --min-height
* @cssprop --color
* @slot icon - default slot for icon
* @slot content - default slot for content
* @slot icon - Custom icon that replaces the default upload icon.
* @csspart icon - The upload icon element
* @aria https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file
*/
@scopedRegistry()
export class Dropzone extends FormControlMixin<typeof LitElement, File[]>(LitElement) {
/** Comma-separated file extensions or MIME types accepted by the dropzone. */
@property()
accept: string = `image/gif, image/jpeg, image/png, image/svg+xml`;

/** File size limit in bytes. */
@property({ attribute: 'max-file-size', type: Number })
maxFileSize: number = 2 * 1024 ** 2;

Expand Down Expand Up @@ -76,6 +81,7 @@ export class Dropzone extends FormControlMixin<typeof LitElement, File[]>(LitEle
[Icon.metadata.tag]: Icon
};

/** @protected */
formResetCallback() {
this.value = [];
this.requestUpdate();
Expand Down
3 changes: 2 additions & 1 deletion projects/core/src/format-number/format-number.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,8 @@ export class FormatNumber extends LitElement {
/**
* Grouping separators: 'auto' | 'always' | 'min2' | 'true' | 'false'.
*/
@property({ type: String, attribute: 'use-grouping' }) useGrouping?: string;
@property({ type: String, attribute: 'use-grouping' })
useGrouping?: 'auto' | 'always' | 'min2' | 'true' | 'false' | boolean;
Comment thread
coryrylan marked this conversation as resolved.

/**
* Pad fraction output to at least this many digits (0-20).
Expand Down
3 changes: 2 additions & 1 deletion projects/core/src/forms/control-message/control-message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ const statusIcons = {
* @documentation https://nvidia.github.io/elements/docs/elements/control/
* @since 0.3.0
* @entrypoint \@nvidia-elements/core/forms
* @slot - default slot for content
* @slot - Validation or supporting message text for the associated control.
* @cssprop --color
* @cssprop --font-weight
* @cssprop --font-size
Expand Down Expand Up @@ -54,6 +54,7 @@ export class ControlMessage extends LitElement {
[Icon.metadata.tag]: Icon
};

/** @private */
@hostAttr() slot = 'messages';

render() {
Expand Down
Loading