AOSSIE-Org / AOSSIE-Org/SocialShareButton
Improvement: Add try-catch blocks for better error handling in social-share-button.js
- Dominant language
- TypeScript
- Stars
- 25
- Forks
- 64
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 1
Description
## Overview
This issue tracks the addition of try-catch blocks in `src/social-share-button.js` to improve error handling and resilience. Adding defensive error handling in key methods ensures that unexpected failures are caught and surfaced appropriately, rather than silently failing or causing unhandled exceptions.
---
## Try-catch blocks to add
### 1. `createButton()` → `document.querySelector()`
`querySelector()` throws a `SyntaxError` when passed an invalid CSS selector string. Since the selector is user-supplied via `options.container`, a try-catch here is appropriate defensive programming.
### 2. `fallbackCopy()` → rename `_err` → `error` and add logging
The existing catch block silently swallows errors. Binding the error variable and logging it through the debug-gated `_debugWarn()` helper is a valid improvement.
---
## Acceptance Criteria
- [ ] Add try-catch in `createButton()` around `document.querySelector()` with `_debugWarn` logging
- [ ] Update the `fallbackCopy()` catch block to bind the error variable and log it via `_debugWarn()`
Contributor guide
Assessment
This issue has not been assessed yet.