AOSSIE-Org / AOSSIE-Org/SocialShareButton

Improvement: Add try-catch blocks for better error handling in social-share-button.js

Open
#132 5 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.