buepro / typo3-auxlibs
Provides third party libraries to be used in non-composer mode. The following libraries are embedded: hashids/hashids, erusev/parsedown.
Installs: 137
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:typo3-cms-extension
Requires
- erusev/parsedown: ~1.7.4
- hashids/hashids: ~4.0.0
- typo3/cms-core: ^8.7 || ^9.0 || ^10.0
Replaces
- buepro/typo3-auxlibs: 1.3.0
- typo3-ter/auxlibs: 1.3.0
README
This TYPO3 extension provides 3rd party libraries to be used in non-composer mode.
Currently the following libraries are available:
Library | Version |
---|---|
hashids/hashids | 4.0.0 |
erusev/parsedown | 1.7.4 |
Libraries
Hashids
Hashids is small PHP library to generate YouTube-like ids from numbers. Use it when you don't want to expose your database ids to the user.
Example:
$hashids = new \Hashids\Hashids; $handle = $hashids->encode(5, 5, 5);
Parsedown
Parsedown transforms text with markdown syntax to html.
Example:
$parsedown = new \Parsedown; $htmlText = $parsedown->text($markdownText);
ViewHelper
A ViewHelper is available and can be used as following:
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:auxlibs="http://typo3.org/ns/Buepro/Auxlibs/ViewHelpers" data-namespace-typo3-fluid="true"> <!--Inline mode--> {auxlibs:parsedown(text: textWithMarkedownSyntax)} {task.description -> auxlibs:parsedown()} <!--Tag mode--> <auxlibs:parsedown text="{task.description}" /> <auxlibs:parsedown>{task.description}</auxlibs:parsedown> </html>
The ViewHelper has the following properties:
Property | Description | Type | Default |
---|---|---|---|
nl2br | If set maintains line breaks | bool | false |
Usage
The libraries are automatically loaded in a middleware. In case a library needs to be available at an earlier stage it
might be loaded with an include statement. The include statement for the library hashids
would look as following:
use TYPO3\CMS\Core\Utility\ExtensionManagementUtility; @include 'phar://' . ExtensionManagementUtility::extPath('auxlibs') . 'Libraries/hashids-hashids.phar/vendor/autoload.php';