Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Nettalco/nettalco-theme/llms.txt
Use this file to discover all available pages before exploring further.
The Select component is PrimeNG’s single-value dropdown picker. It combines a trigger field with a floating overlay containing a filterable option list. Nettalco Theme styles the trigger through form.field.* tokens and adds dedicated tokens for the dropdown chevron icon, the overlay panel, list layout, option states, option groups, clear icon, checkmark indicator, and empty message.
Usage
<!-- Basic select -->
<p-select
[(ngModel)]="selectedCity"
[options]="cities"
optionLabel="name"
placeholder="Select a City"
/>
<!-- With filter -->
<p-select
[(ngModel)]="selectedCountry"
[options]="countries"
optionLabel="name"
[filter]="true"
filterPlaceholder="Search..."
placeholder="Select a Country"
/>
<!-- With clear button -->
<p-select
[(ngModel)]="selectedItem"
[options]="items"
optionLabel="label"
[showClear]="true"
placeholder="Choose one"
/>
import { Component } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { SelectModule } from 'primeng/select';
@Component({
selector: 'app-example',
standalone: true,
imports: [SelectModule, FormsModule],
templateUrl: './example.component.html'
})
export class ExampleComponent {
selectedCity: any;
cities = [
{ name: 'New York', code: 'NY' },
{ name: 'London', code: 'LDN' },
{ name: 'Tokyo', code: 'TKY' }
];
}
Design Tokens
Root (trigger field — inherits form.field)
| Token | Value | Description |
|---|
background | {form.field.background} | Trigger field background |
disabledBackground | {form.field.disabled.background} | Background when disabled |
filledBackground | {form.field.filled.background} | Background in filled variant mode |
filledHoverBackground | {form.field.filled.hover.background} | Filled background on hover |
filledFocusBackground | {form.field.filled.focus.background} | Filled background on focus |
borderColor | {form.field.border.color} | Default border |
hoverBorderColor | {form.field.hover.border.color} | Border on hover |
focusBorderColor | {form.field.focus.border.color} | Border on focus |
invalidBorderColor | {form.field.invalid.border.color} | Border in invalid state |
color | {form.field.color} | Selected value text color |
disabledColor | {form.field.disabled.color} | Text color when disabled |
placeholderColor | {form.field.placeholder.color} | Placeholder text color |
invalidPlaceholderColor | {form.field.invalid.placeholder.color} | Placeholder color in invalid state |
shadow | {form.field.shadow} | Box shadow |
paddingX | {form.field.padding.x} | Horizontal padding |
paddingY | {form.field.padding.y} | Vertical padding |
borderRadius | {form.field.border.radius} | Corner radius |
focusRing.width | {form.field.focus.ring.width} | Focus ring width |
focusRing.style | {form.field.focus.ring.style} | Focus ring style |
focusRing.color | {form.field.focus.ring.color} | Focus ring color |
focusRing.offset | {form.field.focus.ring.offset} | Focus ring offset |
focusRing.shadow | {form.field.focus.ring.shadow} | Focus ring shadow |
transitionDuration | {form.field.transition.duration} | Transition duration |
sm.fontSize | {form.field.sm.font.size} | Font size in sm variant |
sm.paddingX | {form.field.sm.padding.x} | Horizontal padding for sm |
sm.paddingY | {form.field.sm.padding.y} | Vertical padding for sm |
lg.fontSize | {form.field.lg.font.size} | Font size in lg variant |
lg.paddingX | {form.field.lg.padding.x} | Horizontal padding for lg |
lg.paddingY | {form.field.lg.padding.y} | Vertical padding for lg |
Dropdown (chevron)
| Token | Value | Description |
|---|
dropdown.width | 2.5rem | Width of the chevron area |
dropdown.color | {form.field.icon.color} | Chevron icon color |
Overlay (dropdown panel)
| Token | Value | Description |
|---|
overlay.background | {overlay.select.background} | Panel background |
overlay.borderColor | {overlay.select.border.color} | Panel border color |
overlay.borderRadius | {overlay.select.border.radius} | Panel corner radius |
overlay.color | {overlay.select.color} | Panel text color |
overlay.shadow | {overlay.select.shadow} | Panel drop shadow |
List layout
| Token | Value | Description |
|---|
list.padding | {list.padding} | Overall list padding |
list.gap | {list.gap} | Gap between option items |
list.header.padding | {list.header.padding} | Filter header padding |
Option
| Token | Value | Description |
|---|
option.focusBackground | {list.option.focus.background} | Background on keyboard/hover focus |
option.selectedBackground | {list.option.selected.background} | Background when selected |
option.selectedFocusBackground | {list.option.selected.focus.background} | Selected + focused background |
option.color | {list.option.color} | Option text color |
option.focusColor | {list.option.focus.color} | Text color on focus |
option.selectedColor | {list.option.selected.color} | Text color when selected |
option.selectedFocusColor | {list.option.selected.focus.color} | Text color when selected + focused |
option.padding | {list.option.padding} | Option item padding |
option.borderRadius | {list.option.border.radius} | Option item corner radius |
Option group
| Token | Value | Description |
|---|
optionGroup.background | {list.option.group.background} | Group header background |
optionGroup.color | {list.option.group.color} | Group header text color |
optionGroup.fontWeight | {list.option.group.font.weight} | Group header font weight |
optionGroup.padding | {list.option.group.padding} | Group header padding |
Checkmark
| Token | Value | Description |
|---|
checkmark.color | {list.option.color} | Checkmark icon color |
checkmark.gutterStart | -0.375rem | Negative start gutter for alignment |
checkmark.gutterEnd | 0.375rem | End gutter for alignment |
Other
| Token | Value | Description |
|---|
clearIcon.color | {form.field.icon.color} | Clear (×) icon color |
emptyMessage.padding | {list.option.padding} | Padding of the “no results” message |
Theme Notes
The overlay uses overlay.select.* tokens (shared with MultiSelect and other dropdown-style overlays), distinct from overlay.popover.* used by Tooltip and ConfirmPopup. Both sets resolve to the same background/border in Nettalco’s default configuration, but can be overridden independently.
The checkmark’s gutterStart: -0.375rem pulls the icon slightly into the option’s start padding, aligning it visually with the option text rather than adding extra width to each row.