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\LoginManager
;
18 use Shaarli\Security\SessionManager
;
19 use Shaarli\Thumbnailer
;
23 * Extension of Slim container to document the injected objects.
25 * @property string $basePath Shaarli's instance base path (e.g. `/shaarli/`)
26 * @property BookmarkServiceInterface $bookmarkService
27 * @property ConfigManager $conf
28 * @property mixed[] $environment $_SERVER automatically injected by Slim
29 * @property FeedBuilder $feedBuilder
30 * @property FormatterFactory $formatterFactory
31 * @property History $history
32 * @property HttpAccess $httpAccess
33 * @property LoginManager $loginManager
34 * @property NetscapeBookmarkUtils $netscapeBookmarkUtils
35 * @property PageBuilder $pageBuilder
36 * @property PageCacheManager $pageCacheManager
37 * @property PluginManager $pluginManager
38 * @property SessionManager $sessionManager
39 * @property Thumbnailer $thumbnailer
41 class ShaarliContainer
extends Container