[BUGFIX] Fix slug generation for non-pages records with pid=0
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Configuration / Services.yaml
1 services:
2 _defaults:
3 autowire: true
4 autoconfigure: true
5 public: false
6
7 TYPO3\CMS\Core\:
8 resource: '../Classes/*'
9
10 TYPO3\CMS\Core\DependencyInjection\EnvVarProcessor:
11 tags: ['container.env_var_processor']
12
13 TYPO3\CMS\Core\Command\ExtensionListCommand:
14 tags:
15 - name: 'console.command'
16 command: 'extension:list'
17 description: 'Shows the list of extensions available to the system'
18 schedulable: false
19
20 TYPO3\CMS\Core\Command\SendEmailCommand:
21 tags:
22 - name: 'console.command'
23 command: 'mailer:spool:send'
24 description: 'Sends emails from the spool'
25 - name: 'console.command'
26 command: 'swiftmailer:spool:send'
27 alias: true
28 schedulable: false
29
30
31 TYPO3\CMS\Core\Command\SiteListCommand:
32 tags:
33 - name: 'console.command'
34 command: 'site:list'
35 description: 'Shows the list of sites available to the system'
36 schedulable: false
37
38 TYPO3\CMS\Core\Command\SiteShowCommand:
39 tags:
40 - name: 'console.command'
41 command: 'site:show'
42 description: 'Shows the configuration of the specified site'
43 schedulable: false
44
45 TYPO3\CMS\Core\Configuration\SiteConfiguration:
46 arguments:
47 $coreCache: '@cache.core'
48 $configPath: "%env(TYPO3:configPath)%/sites"
49
50 TYPO3\CMS\Core\Package\UnitTestPackageManager:
51 autoconfigure: false
52
53 TYPO3\CMS\Core\Http\MiddlewareDispatcher:
54 autoconfigure: false
55
56 TYPO3\CMS\Core\Configuration\Loader\PageTsConfigLoader:
57 public: true
58
59 TYPO3\CMS\Core\Database\Schema\SqlReader:
60 public: true
61
62 TYPO3\CMS\Core\Html\RteHtmlParser:
63 public: true
64
65 TYPO3\CMS\Core\Mail\Mailer:
66 public: true
67
68 TYPO3\CMS\Core\Controller\FileDumpController:
69 public: true
70
71 TYPO3\CMS\Core\Localization\TcaSystemLanguageCollector:
72 public: true
73
74 TYPO3\CMS\Core\Authentication\Mfa\MfaProviderRegistry:
75 public: true
76
77 TYPO3\CMS\Core\RateLimiter\Storage\CachingFrameworkStorage:
78 public: true
79
80 TYPO3\CMS\Core\Authentication\Mfa\Provider\TotpProvider:
81 tags:
82 - name: mfa.provider
83 identifier: 'totp'
84 title: 'LLL:EXT:core/Resources/Private/Language/locallang_mfa_provider.xlf:totp.title'
85 description: 'LLL:EXT:core/Resources/Private/Language/locallang_mfa_provider.xlf:totp.description'
86 setupInstructions: 'LLL:EXT:core/Resources/Private/Language/locallang_mfa_provider.xlf:totp.setupInstructions'
87 icon: 'actions-qrcode'
88 defaultProviderAllowed: true
89 before: 'recovery-codes'
90
91 TYPO3\CMS\Core\Authentication\Mfa\Provider\RecoveryCodesProvider:
92 tags:
93 - name: mfa.provider
94 identifier: 'recovery-codes'
95 title: 'LLL:EXT:core/Resources/Private/Language/locallang_mfa_provider.xlf:recoveryCodes.title'
96 description: 'LLL:EXT:core/Resources/Private/Language/locallang_mfa_provider.xlf:recoveryCodes.description'
97 setupInstructions: 'LLL:EXT:core/Resources/Private/Language/locallang_mfa_provider.xlf:recoveryCodes.setupInstructions'
98 icon: 'content-text-columns'
99 defaultProviderAllowed: false
100 after: 'totp'
101
102 TYPO3\CMS\Core\Core\ClassLoadingInformation:
103 public: false
104 tags:
105 - name: event.listener
106 identifier: 'non-composer-class-loader'
107 method: 'updateClassLoadingInformationAfterPackageActivation'
108 - name: event.listener
109 identifier: 'non-composer-class-loader'
110 method: 'updateClassLoadingInformationAfterPackageDeactivation'
111
112 TYPO3\CMS\Core\Tree\TableConfiguration\DatabaseTreeDataProvider:
113 shared: false
114 public: true
115
116 TYPO3\CMS\Core\Authentication\GroupResolver:
117 shared: false
118 public: true
119
120 TYPO3\CMS\Core\RateLimiter\RateLimiterFactory:
121 shared: false
122 public: true
123
124 # FAL security checks for backend users
125 TYPO3\CMS\Core\Resource\Security\StoragePermissionsAspect:
126 tags:
127 - name: event.listener
128 identifier: 'backend-user-permissions'
129 method: 'addUserPermissionsToStorage'
130
131 TYPO3\CMS\Core\Cache\DatabaseSchemaService:
132 tags:
133 - name: event.listener
134 identifier: 'caching-framework'
135 method: 'addCachingFrameworkDatabaseSchema'
136
137 TYPO3\CMS\Core\Category\CategoryRegistry:
138 tags:
139 - name: event.listener
140 identifier: 'category-registry'
141 method: 'addCategoryDatabaseSchema'
142
143 # Soft Reference Parsers
144 TYPO3\CMS\Core\DataHandling\SoftReference\SubstituteSoftReferenceParser:
145 tags:
146 - name: softreference.parser
147 parserKey: substitute
148
149 TYPO3\CMS\Core\DataHandling\SoftReference\NotifySoftReferenceParser:
150 tags:
151 - name: softreference.parser
152 parserKey: notify
153
154 TYPO3\CMS\Core\DataHandling\SoftReference\TypolinkSoftReferenceParser:
155 tags:
156 - name: softreference.parser
157 parserKey: typolink
158
159 TYPO3\CMS\Core\DataHandling\SoftReference\TypolinkTagSoftReferenceParser:
160 tags:
161 - name: softreference.parser
162 parserKey: typolink_tag
163
164 TYPO3\CMS\Core\DataHandling\SoftReference\ExtensionPathSoftReferenceParser:
165 tags:
166 - name: softreference.parser
167 parserKey: ext_fileref
168
169 TYPO3\CMS\Core\DataHandling\SoftReference\EmailSoftReferenceParser:
170 tags:
171 - name: softreference.parser
172 parserKey: email
173
174 TYPO3\CMS\Core\DataHandling\SoftReference\UrlSoftReferenceParser:
175 tags:
176 - name: softreference.parser
177 parserKey: url
178
179
180 TYPO3\CMS\Core\Core\Event\WarmupBaseTcaCache:
181 public: true
182 arguments:
183 $coreCache: '@cache.core'
184
185 # @internal
186 # This service entry is provided for legacy code that instantiates LanguageService
187 # using GeneralUtility::makeInstance instead of the factory methods which itself
188 # use LanguageServiceFactory (for install tool compatibility).
189 TYPO3\CMS\Core\Localization\LanguageService:
190 shared: false
191 public: true
192 arguments:
193 $runtimeCache: '@cache.runtime'
194 deprecated:
195 package: 'typo3/cms-core'
196 version: '11.3'
197 message: 'Injection/Instantiation of "%service_id%" is deprecated. Please use TYPO3\CMS\Core\Localization\LanguageServiceFactory->create().'
198
199 TYPO3\CMS\Core\Localization\CacheWarmer:
200 tags:
201 - name: event.listener
202 method: 'warmupCaches'
203 event: TYPO3\CMS\Core\Cache\Event\CacheWarmupEvent
204
205 TYPO3\CMS\Core\ExpressionLanguage\ProviderConfigurationLoader:
206 public: true
207 arguments:
208 $coreCache: '@cache.core'
209 tags:
210 - name: event.listener
211 method: 'warmupCaches'
212 event: TYPO3\CMS\Core\Cache\Event\CacheWarmupEvent
213
214 TYPO3\CMS\Core\Page\AssetRenderer:
215 public: true
216 arguments:
217 $eventDispatcher: '@Psr\EventDispatcher\EventDispatcherInterface'
218
219 # clean up files
220 TYPO3\CMS\Core\Resource\Processing\FileDeletionAspect:
221 tags:
222 - name: event.listener
223 identifier: 'delete-processed-files-after-add'
224 method: 'cleanupProcessedFilesPostFileAdd'
225 - name: event.listener
226 identifier: 'delete-processed-files-after-replace'
227 method: 'cleanupProcessedFilesPostFileReplace'
228 - name: event.listener
229 identifier: 'delete-processed-files-after-delete'
230 method: 'removeFromRepositoryAfterFileDeleted'
231
232 # synchronize folder relations
233 TYPO3\CMS\Core\Resource\SynchronizeFolderRelations:
234 tags:
235 - name: event.listener
236 identifier: 'synchronize-file-collections-after-folder-renamed'
237 method: 'synchronizeFileCollectionsAfterRename'
238 - name: event.listener
239 identifier: 'synchronize-filemounts-after-folder-renamed'
240 method: 'synchronizeFilemountsAfterRename'
241
242 TYPO3\CMS\Core\Resource\Security\SvgEventListener:
243 tags:
244 - name: event.listener
245 identifier: 'svg-resource-storage-listener-before-file-added'
246 method: 'beforeFileAdded'
247 event: TYPO3\CMS\Core\Resource\Event\BeforeFileAddedEvent
248 - name: event.listener
249 identifier: 'svg-resource-storage-listener-before-file-replaced'
250 method: 'beforeFileReplaced'
251 event: TYPO3\CMS\Core\Resource\Event\BeforeFileReplacedEvent
252 - name: event.listener
253 identifier: 'svg-resource-storage-listener-after-file-content-set'
254 method: 'afterFileContentsSet'
255 event: TYPO3\CMS\Core\Resource\Event\AfterFileContentsSetEvent
256
257 TYPO3\CMS\Core\Resource\Security\SvgHookHandler:
258 public: true
259
260 TYPO3\CMS\Core\Resource\Security\SvgTypeCheck:
261 public: true
262
263 # Core caches, cache.core and cache.assets are injected as early
264 # entries in TYPO3\CMS\Core\Core\Bootstrap and therefore omitted here
265 cache.hash:
266 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
267 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
268 arguments: ['hash']
269
270 cache.pages:
271 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
272 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
273 arguments: ['pages']
274
275 cache.pagesection:
276 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
277 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
278 arguments: ['pagesection']
279
280 cache.runtime:
281 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
282 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
283 arguments: ['runtime']
284
285 cache.rootline:
286 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
287 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
288 arguments: ['rootline']
289
290 cache.imagesizes:
291 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
292 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
293 arguments: ['imagesizes']
294
295 cache.l10n:
296 class: TYPO3\CMS\Core\Cache\Frontend\FrontendInterface
297 factory: ['@TYPO3\CMS\Core\Cache\CacheManager', 'getCache']
298 arguments: ['l10n']
299
300 # Interface implementations
301 Psr\Container\ContainerInterface:
302 alias: service_container
303 public: true
304 Psr\EventDispatcher\EventDispatcherInterface:
305 alias: TYPO3\CMS\Core\EventDispatcher\EventDispatcher
306 public: true
307 Psr\Http\Client\ClientInterface:
308 alias: GuzzleHttp\Client
309 public: true
310 Psr\Http\Message\RequestFactoryInterface:
311 alias: TYPO3\CMS\Core\Http\RequestFactory
312 public: true
313 Psr\Http\Message\ResponseFactoryInterface:
314 alias: TYPO3\CMS\Core\Http\ResponseFactory
315 public: true
316 Psr\Http\Message\ServerRequestFactoryInterface:
317 alias: TYPO3\CMS\Core\Http\ServerRequestFactory
318 public: true
319 Psr\Http\Message\StreamFactoryInterface:
320 alias: TYPO3\CMS\Core\Http\StreamFactory
321 public: true
322 Psr\Http\Message\UploadedFileFactoryInterface:
323 alias: TYPO3\CMS\Core\Http\UploadedFileFactory
324 public: true
325 Psr\Http\Message\UriFactoryInterface:
326 alias: TYPO3\CMS\Core\Http\UriFactory
327 public: true
328 GuzzleHttp\ClientInterface:
329 alias: GuzzleHttp\Client
330 public: true
331 Symfony\Contracts\EventDispatcher\EventDispatcherInterface:
332 alias: TYPO3\SymfonyPsrEventDispatcherAdapter\EventDispatcherAdapter
333 public: true
334
335 # External dependencies
336 GuzzleHttp\Client:
337 factory: ['TYPO3\CMS\Core\Http\Client\GuzzleClientFactory', 'getClient']