-
Notifications
You must be signed in to change notification settings - Fork 1
fix(cli): handle pnpm build approvals #125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
aa2d2c0
b01a0dc
419801d
88f625d
055fc77
040f127
17edec4
505c360
5d83f58
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -201,7 +201,7 @@ export class Combobox extends Control implements ContainerElement { | |
| const hasNoResults = visibleOptions.filter(o => !o.disabled).length === 0; | ||
| const showCreateItem = this.#showCreateItem; | ||
| return html` | ||
| <nve-dropdown part="dropdown" .popoverType=${'manual'} .modal=${false} @open=${this.#onDropdownOpen} @close=${this.#closeListBox} hidden .anchor=${this.#input as HTMLElement} .trigger=${this.#input as HTMLElement} position="bottom"> | ||
| <nve-dropdown part="dropdown" .popoverType=${'manual'} .modal=${false} @open=${this.#openDropdown} @close=${this.#closeDropdown} hidden .anchor=${this.#input as HTMLElement} position="bottom"> | ||
| <nve-menu part="menu" role="listbox" style="--width: 100%; --min-width: fit-content" aria-label=${ifDefined(this.i18n.select)}> | ||
| ${visibleOptions.map( | ||
| o => html` | ||
|
|
@@ -371,8 +371,14 @@ export class Combobox extends Control implements ContainerElement { | |
| } | ||
| } | ||
|
|
||
| #onDropdownOpen(e: Event) { | ||
| (e.target as HTMLElement).hidden = false; | ||
| #openDropdown() { | ||
| this.#dropdown!.hidden = false; | ||
| } | ||
|
|
||
| #closeDropdown() { | ||
| this.#dropdown!.hidden = true; | ||
| this._internals.states.delete('dirty'); | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I get the sense there are two competing meanings of "dirty" at play here.
Maybe this needs a distinct state? Otherwise, unconditionally clearing on close makes this behave differently than other controls.
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah that makes sense, I was thinking in terms of "active" it shouldn't be treated as "dirty". I'll fix that
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ok, going to likely follow up on that change since dirty was the prior behavior. It looks like thats used to determine the initial filtering state on open. I need to figure out the exact logic that the base form control has that sets dirty and emulate that here to ensure it doesnt break any prior behavior |
||
| this.#validateSingleSelectValue(); | ||
| } | ||
|
|
||
| #setupAutoCompleteKeyEvents() { | ||
|
|
@@ -515,12 +521,6 @@ export class Combobox extends Control implements ContainerElement { | |
| } | ||
| } | ||
|
|
||
| #closeListBox() { | ||
| this.#dropdown!.hidePopover(); | ||
| this._internals.states.delete('dirty'); | ||
| this.#validateSingleSelectValue(); | ||
| } | ||
|
|
||
| #validateSingleSelectValue() { | ||
| const invalidInputValue = | ||
| this.#select && | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| /* SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. */ | ||
| /* SPDX-License-Identifier: Apache-2.0 */ | ||
|
|
||
| nve-select select[multiple] option { | ||
| pointer-events: none !important; | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: NVIDIA/elements
Length of output: 3237
Update semantic dependency health to accept
workspace:/catalog:peer specifiersprojects/internals/tools/src/project/health.ts’scheckSemanticDependenciescurrently flags any@nvidia-elements/*peerDependency whose version does not start with^, soworkspace:^inprojects/code/package.jsonlines 193-194 will still be reported asdanger(“must contain caret (^) prefix”). Align it with the lint rule by allowingworkspace:(andcatalog:).Suggested fix at root cause (`projects/internals/tools/src/project/health.ts`)
export function checkSemanticDependencies(packageJson: PackageData): ReportCheck { const hasPinnedVersion = Object.entries(packageJson.peerDependencies ?? {}).find( - ([key, value]) => key.includes('`@nvidia-elements`') && !value.startsWith('^') + ([key, value]) => + key.includes('`@nvidia-elements`') && + !value.startsWith('^') && + !value.startsWith('workspace:') && + !value.startsWith('catalog:') );🤖 Prompt for AI Agents