Files
VITEC-website/composer.json
o-rasche 3aaf8fdad5 VITEC headless v14: 5-bug fix unifies plugin renderers + cleanup
Resolves a cascade of TYPO3 v14 breaking changes that left every VITEC
plugin's JSON output silently empty:

1. `list_type` column dropped — all renderer page-discovery queries now
   filter by `CType = 'vitec_X'`.
2. `#[AsAllowedCallable]` attribute added to every public render() —
   without it v14 throws AllowedCallableException, which headless
   silently filters via its "Oops, an error occurred!" guard.
3. `$GLOBALS['TSFE']->id` is null inside JSON cObj context — page id
   now read from the `frontend.page.information` request attribute
   (TSFE fallback kept for legacy entry points).
4. page.tsconfig wizard items migrated to `CType = vitec_X` directly
   (legacy `CType=list, list_type=...` no longer exists in v14).
5. ContainerChildrenProcessor + ContentElementResolver dispatch the
   PLUGIN_RENDERERS map by CType (primary) with list_type fallback.

Beyond the bug fix this commit also contains:
- Datasheets renderer rewritten to "products with newest datasheet"
  semantics (filtered via Download.hideondatasheets).
- New vitec/card content block — multi-purpose card with backend
  preview and layout/background/aspect/alignment/border/shadow options.
- New vitec_container CType (b13 single-column container, FlexForm
  cssClass propagated into the JSON envelope).
- ContentElementResolver service for contentelement/contentelementcta
  link resolution; ContainerChildrenProcessor for nested plugin
  resolution inside b13 containers.
- Vitecset setup.typoscript: ContentElement import moved to top so
  lib.contentElement is defined before VITEC's tt_content blocks.
- Cleanup: 98 .bak.<timestamp> debugging backups removed; *.bak.* and
  /public/_assets_install/ added to .gitignore.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 14:29:17 +02:00

65 lines
1.6 KiB
JSON

{
"name": "typo3/cms-base-distribution",
"description": "TYPO3 CMS Base Distribution",
"license": "GPL-2.0-or-later",
"type": "project",
"config": {
"allow-plugins": {
"b13/typo3-updater": true,
"typo3/class-alias-loader": true,
"typo3/cms-composer-installers": true
},
"platform": {
"php": "8.4.0"
},
"sort-packages": true
},
"require": {
"b13/container": "^3.1",
"b13/typo3-updater": "^1.1",
"evomedien/vitec": "^1.0.1",
"friendsoftypo3/content-blocks": "^2.4",
"friendsoftypo3/headless": "^5.0@rc",
"netzbewegung/nb-headless-content-blocks": "^0.0.23",
"typo3/cms-backend": "^14.3",
"typo3/cms-belog": "^14.3",
"typo3/cms-beuser": "^14.3",
"typo3/cms-core": "^14.3",
"typo3/cms-dashboard": "^14.3",
"typo3/cms-extbase": "^14.3",
"typo3/cms-extensionmanager": "^14.3",
"typo3/cms-felogin": "^14.3",
"typo3/cms-filelist": "^14.3",
"typo3/cms-fluid": "^14.3",
"typo3/cms-fluid-styled-content": "^14.3",
"typo3/cms-form": "^14.3",
"typo3/cms-frontend": "^14.3",
"typo3/cms-impexp": "^14.3",
"typo3/cms-info": "^14.3",
"typo3/cms-install": "^14.3",
"typo3/cms-reactions": "^14.3",
"typo3/cms-recycler": "^14.3",
"typo3/cms-rte-ckeditor": "^14.3",
"typo3/cms-scheduler": "^14.3",
"typo3/cms-seo": "^14.3",
"typo3/cms-sys-note": "^14.3",
"typo3/cms-tstemplate": "^14.3",
"typo3/cms-viewpage": "^14.3",
"typo3/cms-webhooks": "^14.3"
},
"repositories": [
{
"name": "t3planet",
"type": "composer",
"url": "https://composer.t3planet.cloud",
"only": [
"nitsan/ns_theme_reactbootstrap"
]
},
{
"type": "path",
"url": "./packages/*"
}
]
}