# TallStackUI: Soft Customization Internal Scopes
> Auto-generated by `scripts/list-internal-scopes.php`. Do not edit manually —
> re-run the script after Blade changes (`php scripts/list-internal-scopes.php`).
TallStackUI components frequently delegate parts of their rendering to other
components. For example, `` renders an internal ``, ``
and ``. To allow each parent to customize its nested children
independently of the standalone components, every nested instance is invoked
with a `scope="..."` attribute that namespaces the customization.
This document is the canonical list of every internal scope declared by
TallStackUI's Blade templates.
## Usage
In a service provider (typically `AppServiceProvider::boot()`):
```php
TallStackUi::customize('label', scope: 'form.pin.label')
->block('wrapper', 'your-tailwind-classes');
```
Or via the chained API:
```php
TallStackUi::customize()
->label(scope: 'form.pin.label')
->block('wrapper', 'your-tailwind-classes');
```
## Scopes by parent component
### `calendar`
| Scope | Target | Line(s) |
|------------------|---------------|---------|
| `calendar.label` | `` | 32 |
| `calendar.hint` | `` | 255 |
### `clipboard`
| Scope | Target | Line(s) |
|-------------------|---------------|---------|
| `clipboard.label` | `` | 7 |
| `clipboard.hint` | `` | 72 |
### `dialog`
| Scope | Target | Line(s) |
|-----------------|----------------|---------|
| `dialog.button` | `` | 121 |
### `dropdown`
| Scope | Target | Line(s) |
|---------------------|------------------|---------|
| `dropdown.floating` | `` | 47 |
### `dropdown/submenu`
| Scope | Target | Line(s) |
|-----------------------------|------------------|---------|
| `dropdown.submenu.floating` | `` | 55 |
### `editor`
| Scope | Target | Line(s) |
|----------------------|------------------|---------|
| `editor.toolbar` | `` | 44, 223 |
| `editor.modal.link` | `` | 456 |
| `editor.modal.image` | `` | 496 |
### `form/autocomplete`
| Scope | Target | Line(s) |
|------------------------------|------------------|---------|
| `form.autocomplete.input` | `` | 22 |
| `form.autocomplete.floating` | `` | 62 |
### `form/checkbox/group`
| Scope | Target | Line(s) |
|-----------------------------|---------------|---------|
| `form.checkbox.group.hint` | `` | 23 |
| `form.checkbox.group.error` | `` | 26 |
### `form/color`
| Scope | Target | Line(s) |
|-----------------------|------------------|---------|
| `form.color.input` | `` | 23 |
| `form.color.floating` | `` | 67 |
### `form/currency`
| Scope | Target | Line(s) |
|-----------------------|---------------|---------|
| `form.currency.input` | `` | 21 |
### `form/date`
| Scope | Target | Line(s) |
|----------------------|------------------|---------|
| `form.date.input` | `` | 30 |
| `form.date.floating` | `` | 62 |
### `form/password`
| Scope | Target | Line(s) |
|--------------------------|------------------|---------|
| `form.password.input` | `` | 8 |
| `form.password.floating` | `` | 58 |
### `form/pin`
| Scope | Target | Line(s) |
|------------------|---------------|---------|
| `form.pin.label` | `` | 14 |
| `form.pin.hint` | `` | 104 |
| `form.pin.error` | `` | 107 |
### `form/radio/group`
| Scope | Target | Line(s) |
|--------------------------|---------------|---------|
| `form.radio.group.hint` | `` | 23 |
| `form.radio.group.error` | `` | 26 |
### `form/select/native`
| Scope | Target | Line(s) |
|----------------------------|---------------|---------|
| `form.select-native.label` | `` | 7 |
| `form.select-native.hint` | `` | 49 |
| `form.select-native.error` | `` | 52 |
### `form/select/styled`
| Scope | Target | Line(s) |
|-------------------------------|------------------|---------|
| `form.select-styled.label` | `` | 41 |
| `form.select-styled.floating` | `` | 132 |
| `form.select-styled.input` | `` | 141 |
| `form.select-styled.hint` | `` | 269 |
| `form.select-styled.error` | `` | 272 |
### `form/tag`
| Scope | Target | Line(s) |
|---------------------|------------------|---------|
| `form.tag.floating` | `` | 71 |
### `form/time`
| Scope | Target | Line(s) |
|----------------------|------------------|---------|
| `form.time.input` | `` | 22 |
| `form.time.floating` | `` | 55 |
| `form.time.button` | `` | 133 |
### `form/upload`
| Scope | Target | Line(s) |
|------------------------|------------------|---------|
| `form.upload.input` | `` | 28 |
| `form.upload.label` | `` | 52 |
| `form.upload.floating` | `` | 97 |
| `form.upload.error` | `` | 161 |
### `form/upload/async`
| Scope | Target | Line(s) |
|---------------------------|----------------|---------|
| `form.upload.async.label` | `` | 32 |
| `form.upload.async.hint` | `` | 173 |
| `form.upload.async.clear` | `` | 182 |
| `form.upload.async.send` | `` | 190 |
### `form/upload/editor`
| Scope | Target | Line(s) |
|-----------------------------|----------------|---------|
| `form.upload.editor.modal` | `` | 7 |
| `form.upload.editor.cancel` | `` | 83 |
| `form.upload.editor.apply` | `` | 91 |
### `layout/sidebar/item`
| Scope | Target | Line(s) |
|-----------------------|------------------|------------------|
| `sidebar.item.badge` | `` | 62, 70, 167, 175 |
| `sidebar.item.flyout` | `` | 90 |
### `list/items`
| Scope | Target | Line(s) |
|-------------------|------------------|---------|
| `list.items.menu` | `` | 49 |
### `list`
| Scope | Target | Line(s) |
|--------------|---------------|---------|
| `list.label` | `` | 8 |
| `list.hint` | `` | 85 |
### `table`
| Scope | Target | Line(s) |
|-----------------------|-----------------------|---------|
| `table.select-styled` | `` | 26, 34 |
| `table.input` | `` | 48, 56 |
| `table.checkbox` | `` | 92, 165 |
### `wrapper/input`
| Scope | Target | Line(s) |
|-----------------------|---------------|---------|
| `wrapper.input.label` | `` | 9 |
| `wrapper.input.hint` | `` | 15 |
| `wrapper.input.error` | `` | 18 |
### `wrapper/radio`
| Scope | Target | Line(s) |
|-----------------------|---------------|---------|
| `wrapper.radio.error` | `` | 24 |
## Stats
- Total internal scope occurrences: 68
- Distinct scopes: 61
- Files declaring scopes: 27