Skip to content
Back to skills

Source 04b28f454d1a8650e48a15cd

ASecurity

Fix HTML bootstrap parameter issues that UI5 linter reports but cannot auto-fix. Use this skill when linter outputs these rules: - `no-deprecated-api` - For missing/deprecated bootstrap parameters (async, compat-version, animation, binding-syntax, etc.) - `no-deprecated-theme` - For deprecated theme values in data-sap-ui-theme - `no-deprecated-library` - For deprecated libraries in data-sap-ui-libs Trigger on error messages containing: "Missing bootstrap parameter", "Abandoned bootstrap param...

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentsgoapi

Works with

  • api

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned November 7, 2026

npx -y skills add gutsofpratik/OpenClaude-Skills --skill source-04b28f454d1a8650e48a15cd --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Source 04b28f454d1a8650e48a15cd?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Source 04b28f454d1a8650e48a15cd
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gutsofpratik-source-04b28f454d1a8650e48a15cd/badge)](https://www.skillsdirectory.com/skills/gutsofpratik-source-04b28f454d1a8650e48a15cd)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: fix-bootstrap-params
description: |
  Fix HTML bootstrap parameter issues that UI5 linter reports but cannot auto-fix. Use this skill when linter outputs these rules:
  - `no-deprecated-api` - For missing/deprecated bootstrap parameters (async, compat-version, animation, binding-syntax, etc.)
  - `no-deprecated-theme` - For deprecated theme values in data-sap-ui-theme
  - `no-deprecated-library` - For deprecated libraries in data-sap-ui-libs
  Trigger on error messages containing: "Missing bootstrap parameter", "Abandoned bootstrap parameter", "Redundant bootstrap parameter", "deprecated value", "bootstrap"
  Automatically applies safe fixes to HTML files containing UI5 bootstrap script tags.
---

# Fix Bootstrap Parameters

## Key Rules

1. **ONLY modify the bootstrap `<script>` tag** (identified by `id="sap-ui-bootstrap"` or `src` matching `sap-ui-core.js`). All other `<script>` tags — including inline scripts, config blocks, and non-UI5 script references — MUST be preserved exactly as-is. They will be handled by `fix-csp-compliance` in a later phase.
2. Do not delete, move, or rewrite any `<script>` block that is not the bootstrap tag. If the file has `<script>window.config = {...}</script>` before or after the bootstrap tag, leave it untouched.

This skill fixes HTML bootstrap parameter issues that the UI5 linter detects but cannot auto-fix because the changes may affect application behavior.

## Linter Rules Handled

| Rule ID | Message Pattern | This Skill's Action |
|---------|-----------------|---------------------|
| `no-deprecated-api` | Missing bootstrap parameter 'data-sap-ui-async' | Add `data-sap-ui-async="true"` |
| `no-deprecated-api` | Missing bootstrap parameter 'data-sap-ui-compat-version' | Add `data-sap-ui-compat-version="edge"` |
| `no-deprecated-api` | Use of deprecated value 'false' for bootstrap parameter 'data-sap-ui-async' | Change to `"true"` |
| `no-deprecated-api` | Use of deprecated value '...' for bootstrap parameter 'data-sap-ui-compat-version' | Change to `"edge"` |
| `no-deprecated-api` | Abandoned bootstrap parameter '...' should be removed | Remove the parameter |
| `no-deprecated-api` | Redundant bootstrap parameter '...' should be removed | Remove the parameter |
| `no-deprecated-api` | Bootstrap parameter '...' should be replaced with '...' | Replace with new parameter |
| `no-deprecated-theme` | Use of deprecated theme '...' | Change to `sap_horizon` |
| `no-deprecated-library` | Use of deprecated library '...' | Remove from libs |

## When to Use

Apply this skill when you see linter output like:
```
index.html:8:3 error Missing bootstrap parameter 'data-sap-ui-async'  no-deprecated-api
index.html:9:3 error Missing bootstrap parameter 'data-sap-ui-compat-version'  no-deprecated-api
index.html:12:3 error Abandoned bootstrap parameter 'data-sap-ui-no-duplicate-ids' should be removed  no-deprecated-api
index.html:15:3 error Use of deprecated theme 'sap_bluecrystal'  no-deprecated-theme
```

## Fix Strategy

### 1. Locate the Bootstrap Script Tag

Find the `<script>` tag with either:
- `id="sap-ui-bootstrap"`
- `src` attribute matching pattern: `sap-ui-core.js`, `sap-ui-custom.js`, `sap-ui-boot.js`, etc.

### 2. Apply Fixes Based on Rule and Message

#### `no-deprecated-api` - Missing Parameters

**Missing `data-sap-ui-async`**: Add `data-sap-ui-async="true"`
**Missing `data-sap-ui-compat-version`**: Add `data-sap-ui-compat-version="edge"`

```html
<!-- Before -->
<script id="sap-ui-bootstrap"
    src="resources/sap-ui-core.js"
    data-sap-ui-theme="sap_horizon">
</script>

<!-- After -->
<script id="sap-ui-bootstrap"
    src="resources/sap-ui-core.js"
    data-sap-ui-async="true"
    data-sap-ui-compat-version="edge"
    data-sap-ui-theme="sap_horizon">
</script>
```

#### `no-deprecated-api` - Deprecated Values

**`data-sap-ui-async="false"`**: Change to `"true"`
**`data-sap-ui-compat-version` with non-edge value**: Change to `"edge"`

#### `no-deprecated-api` - Abandoned Parameters (remove completely)

Remove these parameters entirely:
- `data-sap-ui-no-duplicate-ids` - Enforced in modern UI5
- `data-sap-ui-auto-aria-body-role` - Removed in modern UI5
- `data-sap-ui-manifest-first` - Use Component.create manifest option instead
- `data-sap-ui-origin-info` - No longer supported
- `data-sap-ui-areas` - Use Control.placeAt instead
- `data-sap-ui-trace` - No longer supported
- `data-sap-ui-xx-no-less` - No longer supported

#### `no-deprecated-api` - Redundant Parameters

- `data-sap-ui-binding-syntax="simple"` - Remove; complex syntax is enforced in modern UI5
- `data-sap-ui-binding-syntax="complex"` - Remove if `compat-version="edge"` is set
- `data-sap-ui-preload` with invalid values - Remove

#### `no-deprecated-api` - Replaced Parameters

- `data-sap-ui-animation` → `data-sap-ui-animation-mode` (convert `true`→`full`, `false`→`minimal`)

#### `no-deprecated-theme` - Deprecated Themes

Replace with modern theme:
- `sap_bluecrystal` → `sap_horizon`
- `sap_belize` → `sap_horizon`
- `sap_belize_plus` → `sap_horizon`
- `sap_belize_hcb` → `sap_horizon_hcb`
- `sap_belize_hcw` → `sap_horizon_hcw`
- `sap_hcb` → `sap_horizon_hcb`
- `sap_ux` → `sap_horizon`
- `sap_platinum` → `sap_horizon`
- `sap_goldreflection` → `sap_horizon`

#### `no-deprecated-library` - Deprecated Libraries

Remove deprecated libraries from `data-sap-ui-libs`:
- `sap.ui.commons`
- `sap.ui.ux3`
- `sap.makit`
- `sap.me`
- `sap.ca.ui`
- `sap.sac.grid`
- `sap.ui.suite`
- `sap.zen.commons`
- `sap.zen.crosstab`
- `sap.zen.dsh`

## Implementation Steps

1. Read the HTML file
2. Parse to find the bootstrap script tag
3. For each linter error (identified by rule ID and message):
   - If missing parameter: Add the parameter with recommended value
   - If deprecated value: Update to recommended value
   - If abandoned/redundant: Remove the parameter
   - If deprecated theme: Replace with modern theme
   - If deprecated library: Remove from libs list
4. Preserve formatting (indentation, line breaks) as much as possible
5. Write the updated file

## Example Fix

Given linter output:
```
index.html:8:3 error Missing bootstrap parameter 'data-sap-ui-async'  no-deprecated-api
index.html:8:3 error Missing bootstrap parameter 'data-sap-ui-compat-version'  no-deprecated-api
index.html:12:3 error Abandoned bootstrap parameter 'data-sap-ui-no-duplicate-ids' should be removed  no-deprecated-api
index.html:10:3 error Use of deprecated theme 'sap_bluecrystal'  no-deprecated-theme
```

Transform:
```html
<!-- Before -->
<script id="sap-ui-bootstrap"
    src="resources/sap-ui-core.js"
    data-sap-ui-theme="sap_bluecrystal"
    data-sap-ui-no-duplicate-ids="true"
    data-sap-ui-resource-roots='{"my.app": "./"}'>
</script>

<!-- After -->
<script id="sap-ui-bootstrap"
    src="resources/sap-ui-core.js"
    data-sap-ui-async="true"
    data-sap-ui-compat-version="edge"
    data-sap-ui-theme="sap_horizon"
    data-sap-ui-resource-roots='{"my.app": "./"}'>
</script>
```

## Notes

- Always add `data-sap-ui-async="true"` before other data attributes for consistency
- Setting `compat-version="edge"` enables complex binding syntax automatically, so `binding-syntax` becomes redundant
- Removed parameters should not leave trailing whitespace or empty lines
- If the file has multiple script tags, only modify the bootstrap tag — leave all others intact (including inline `<script>` blocks that will be handled by CSP compliance in Phase 5)

Files in this skill

  • PROVENANCE.json240 B
  • SKILL.md7.3 KB
  • UPSTREAM-LICENSE.txt11.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.