3 declare(strict_types
=1);
5 namespace Shaarli\Container
;
7 use Shaarli\Bookmark\BookmarkServiceInterface
;
8 use Shaarli\Config\ConfigManager
;
9 use Shaarli\Feed\FeedBuilder
;
10 use Shaarli\Formatter\FormatterFactory
;
12 use Shaarli\Http\HttpAccess
;
13 use Shaarli\Netscape\NetscapeBookmarkUtils
;
14 use Shaarli\Plugin\PluginManager
;
15 use Shaarli\Render\PageBuilder
;
16 use Shaarli\Render\PageCacheManager
;
17 use Shaarli\Security\CookieManager
;
18 use Shaarli\Security\LoginManager
;
19 use Shaarli\Security\SessionManager
;
20 use Shaarli\Thumbnailer
;
21 use Shaarli\Updater\Updater
;
25 * Extension of Slim container to document the injected objects.
27 * @property string $basePath Shaarli's instance base path (e.g. `/shaarli/`)
28 * @property BookmarkServiceInterface $bookmarkService
29 * @property CookieManager $cookieManager
30 * @property ConfigManager $conf
31 * @property mixed[] $environment $_SERVER automatically injected by Slim
32 * @property callable $errorHandler Overrides default Slim exception display
33 * @property FeedBuilder $feedBuilder
34 * @property FormatterFactory $formatterFactory
35 * @property History $history
36 * @property HttpAccess $httpAccess
37 * @property LoginManager $loginManager
38 * @property NetscapeBookmarkUtils $netscapeBookmarkUtils
39 * @property PageBuilder $pageBuilder
40 * @property PageCacheManager $pageCacheManager
41 * @property callable $phpErrorHandler Overrides default Slim PHP error display
42 * @property PluginManager $pluginManager
43 * @property SessionManager $sessionManager
44 * @property Thumbnailer $thumbnailer
45 * @property Updater $updater
47 class ShaarliContainer
extends Container