All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Removed
PocketShare— Pocket was shut down by Mozilla in July 2025. - Removed
WorkplaceShare— Meta Workplace was discontinued in 2026. - Removed
FacebookCount— Facebook's engagement API requires a server-side app token, and the old implementation dangerously asked users to put their app secret in client-side code. - Removed
RedditCount— Reddit blocked unauthenticated JSON/JSONP access in 2023. - Count components no longer accept
appId/appSecretprops. - The CommonJS build moved from
dist/index.jstodist/index.cjsand a properexportsmap was added. This fixes the long-standing "index.js is treated as an ES module" crash (#16).
XShare— the canonical X (formerly Twitter) button: X logo, openshttps://x.com/intent/post. Props:url,title,via,hashtags,related.BlueskyShare— openshttps://bsky.app/intent/compose. Props:url,title,separator.ThreadsShare— openshttps://www.threads.net/intent/post. Props:url,title.VKShareexport. The oldVKShareSharemisspelling remains as a deprecated alias.- All standard button HTML props (
className,style,data-*,aria-*, event handlers, etc.) are now forwarded to the underlying<button>— the buttons can finally be styled with CSS classes (#19).disablednow truly disables the button and appliesdisabledStyle;iconStyle/iconFillColornow work. - TypeScript prop/param types are now exported from the package root.
'use client'banner in the bundle — works when imported directly into Next.js App Router server components.- React 19 support: the peer range is now
^17 || ^18 || ^19, anddefaultPropswas removed internally — fixing buttons silently not opening under React 19 (#20) and thedefaultPropsdeprecation warning.
TwitterShareis now a deprecated alias ofXShare(X icon,x.com/intent/post).- Endpoints refreshed: WhatsApp always uses
api.whatsapp.com/send; Telegram usest.me/share/url; LinkedIn useswww.linkedin.com/sharing/share-offsite/; Hatena, Instapaper and Weibo upgraded to https. - Toolchain: rollup +
@rollup/plugin-typescript, TypeScript 5.9, ESLint 9 flat config, sourcemaps shipped, no more minified-only output.
- Hatena link params are now properly URL-encoded.
- Popup windows opened with
blankTargetnow usenoopener,noreferrer(security). - Buttons render
type="button"— no more accidental form submits. - Buttons no longer strip the keyboard focus outline (a11y; react-share-lite #6 applied here too).
- Tumblr
tagsprop is now correctly typed asstring[]. - Email button: clicking navigates to the
mailto:link; a customonClickno longer breaks it.
- Last v1 release.