linkifyjs

JavaScript plugin for finding links in plain-text and converting them to HTML <a> tags.

MIT License

Downloads
7.5M
Stars
1.8K
Committers
38

Bot releases are hidden (Show)

linkifyjs - v4.1.3 Latest Release

Published by nfrasser 11 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/Hypercontext/linkifyjs/compare/v4.1.2...v4.1.3

linkifyjs - v4.1.2

Published by nfrasser 12 months ago

What's Changed

Full Changelog: https://github.com/Hypercontext/linkifyjs/compare/v4.1.1...v4.1.2

linkifyjs - v4.1.1

Published by nfrasser over 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/Hypercontext/linkifyjs/compare/v4.1.0...v4.1.1

linkifyjs - v4.1.0

Published by nfrasser almost 2 years ago

What's Changed

  • Drop support for Safari 10 (#425)
  • Reduce core bundle file size by ~30% (#426)
  • Restore support for email address with scheme local part (#417)
  • Allow hashtags with emojis

New Contributors

Full Changelog: https://github.com/Hypercontext/linkifyjs/compare/v4.0.2...v4.1.0

linkifyjs - v4.0.2

Published by nfrasser about 2 years ago

  • Fix email address detection with domains containing numbers
linkifyjs - v4.0.1

Published by nfrasser about 2 years ago

  • Restore nl2br option for linkify-html
  • Fixed duplicate key warning in linkify-react with multiple children
linkifyjs - v4.0.0

Published by nfrasser about 2 years ago

Breaking Changes

  • Removed deprecated linkifyjs/string, linkifyjs/html, linkifyjs/plugins/*
    packages. Use linkify-string, linkify-html and linkify-plugin-* instead.
  • Refactored scanner internals break custom link plugins created with Linkify v3
  • Links that begin with mailto: now have type url instead of email
  • Drop official IE 11 support

Added

  • linkify-plugin-ip plugin for detecting IPv4 and IPv6 addresses
  • linkify-plugin-keyword plugin for detecting arbitrary keywords
  • linkify.find() function accepts an options argument for output formatting
  • New render option to override link rendering
  • Second optionalSlashSlash argument for registerCustomProtocol to allow links that don't require // after scheme:
  • Link token methods toFormattedString(options), toFormattedHref(options) and toFormattedObject(options) that accept a linkify.Options object
  • More granular scanner tokens for improved plugin flexibility
  • linkify-react: New as property (alias for tagName)

Fixed

  • Improved link detection with mixed languages
  • Consistent option availability across interfaces (including truncate)
  • linkify-html: Improved HTML entity parsing
linkifyjs - v4.0.0-beta.1

Published by nfrasser over 2 years ago

Breaking Changes

  • Removed deprecated linkifyjs/string, linkifyjs/html, linkifyjs/plugins/* packages
  • Refactored scanner internals break plugins created with Linkify v3
  • Links that begin with mailto: now have type url instead of email

Added

  • linkify.find() function accepts a third options argument for output formatting
  • Link token methods toFormattedString(options), toFormattedHref(options) and toFormattedObject(options) that accept a linkify.Options object
  • New render option to override link rendering
  • More granular scanner tokens for improved plugin flexibility
  • Second optionalSlashSlash argument for registerCustomProtocol to allow links that don't require // after scheme:

Fixed

  • Improved HTML entity parsing with linkify-html
  • Improved link detection with mixed languages
  • Consistent option availability across interfaces (including truncate)
linkifyjs - v3.0.5

Published by nfrasser almost 3 years ago

  • Fix potential Cross-Site Scripting issue when using linkify-html
linkifyjs - v3.0.4

Published by nfrasser almost 3 years ago

  • Expose ES6 modules with "module" field in package.json (#363 - thanks @palash2601)
linkifyjs - v3.0.3

Published by nfrasser about 3 years ago

  • Add linkifyjs ES6 module build (#356 - thanks @emersion)
linkifyjs - v3.0.2

Published by nfrasser about 3 years ago

  • Correctly detect hashtags with underscores
  • Fix plugin import bug
  • Fix linkify-string and linkify-html type declarations
linkifyjs - v3.0.1

Published by nfrasser about 3 years ago

  • Fix React component type declarations
  • Include LICENSE file in all published packages
linkifyjs - v3.0.0

Published by nfrasser about 3 years ago

BREAKING CHANGES

  • React, jQuery and Element interfaces moved to dedicated packages at linkify-react,linkify-jquery and linkify-element respectively:
  • Remove default class="linkified" from all discovered links. Opt back in by setting the className option:
    linkifyStr(str, { className: 'linkified' })
    
  • Remove default target="_blank" attribute for discovered URLs. Opt back in by setting the target option:
    linkifyHtml(str, {
      target: (href, type) => type === 'url' && '_blank'
    })
    
  • React component: Remove outer <span> tag wrapper in favour of tag-less React.Fragment for React >=16. To opt back-in, set tagName='span':
    <Linkify tagName='span'>{content}</Linkify>
    
  • AMD module interface is no longer provided. Use an ESM bundler instead.
  • Plugins imported after linkify is called on a string for the first time will not longer work. Import all plugins before calling a linkify core or interface function.
  • Custom plugin API is not compatible with previous API in Linkify v2
  • Dropped support for Internet Explorer versions 9 and 10. IE11 is still supported
  • Dropped support for React versions <15

Deprecations

  • Use dedicated packages linkify-string and linkify-html instead of linkifyjs/string and linkifyjs/html. The embedded packages will be removed in v4.0
  • Use dedicated plugin packages linkify-plugin-[PLUGIN] instead of linkifyjs/plugin/[PLUGIN]. The embedded packages will be removed in v4.0

All Changes

  • Full Internationalized Domain (IDN) and Emoji domain support 🇺🇳🌍✈️🎉💃! Detect URLs, #hashtags and @mentions in any language
  • ~10x faster startup; ~4x faster combined startup + first run
  • Custom protocols with linkify.registerCustomProtocol('protocol')
  • Modernized codebase and build system
  • Add new rel option at top level as an alternate way of including it in attributes
  • New and improved plugin API
  • TypeScript definitions included in published packages
  • linkify.find() output includes start and end indexes for where in the string a link was found
  • Plugins no longer need to be called on linkify after import
    // Before
    import * as linkify from 'linkifyjs'
    import hashtag from 'linkifyjs/plugins/hashtag'
    hashtag(linkify)
    
    // After
    import * as linkify from 'linkifyjs'
    import 'linkifyjs/plugins/hashtag'
    
linkifyjs - v2.1.9

Published by nfrasser over 3 years ago

  • Move optional dependencies to peerdependencies (#282)
  • Fix npm install displays vulnerabilities. (#265)
  • Fix typo (#275)
linkifyjs - v2.1.8

Published by nfrasser over 5 years ago

  • Allow mentions with inner @ sign for federated mentions - thanks @juliushaertl!
  • Drop official support for Internet Explorer 8 and Node.js 6 (still supported unofficially but may break in future releases)
  • Update dev dependencies
linkifyjs - v2.1.6

Published by nfrasser over 6 years ago

  • Fix a bug where unique element IDs aren't unique (#215)
  • Update tlds.js (#213)
  • Automated browser test fixes (#224)
  • Add partialProtocolMailtoStates to domainStates (#210)
  • Use Object.defineProperty to extend String prototype so that 'linkify' function is not enumerable (#197)
  • Allow null overrides in options for target and className (#189)
linkifyjs - v2.1.5

Published by nfrasser about 7 years ago

  • React plugin compatibility updates
linkifyjs - v2.1.4

Published by nfrasser almost 8 years ago

  • Add explicit support for mailto: addresses (#186)
  • Add support for mentions containing dots (#185)
  • URL followed by &nbsp; now works as expected in linkify-html (#184)
  • Small dependency updates (#183)
  • Drop deprecated babel-preset-es2015-loose dependency (#172) - Thanks @saivann
  • Web workers support (#168) - Thanks @sklyukin
linkifyjs - v2.1.3

Published by nfrasser about 8 years ago

  • Links in angle brackets (#166) - Thanks @dbkr!