waaseyaa / groups
Multi-bundle Group content entity type for Waaseyaa (extracted from Minoo)
Requires
- php: >=8.4
- waaseyaa/entity: ^0.1.0-alpha.150
- waaseyaa/entity-storage: ^0.1.0-alpha.150
- waaseyaa/field: ^0.1.0-alpha.150
- waaseyaa/foundation: ^0.1.0-alpha.150
Requires (Dev)
- phpunit/phpunit: ^10.5
This package is auto-updated.
Last update: 2026-04-20 00:10:00 UTC
README
Layer 2 — Content Types
Multi-bundle group content entity type for Waaseyaa applications.
Defines two entity types:
group— the content entity. Bundle-aware (bundleEntityType: 'group_type'), keyed bygid/uuid, labeled byname.group_type— the config entity that declares bundle identities.
The package ships with zero pre-registered bundles and zero bundle-scoped fields. Consuming applications create GroupType config entities and register bundle-scoped fields via EntityTypeManager::addBundleFields($entityTypeId, $bundle, $fields). Bundle-scoped columns land in per-bundle subtables named group__{bundle} as described in docs/specs/bundle-scoped-storage.md.
Key classes: Group, GroupType, GroupsServiceProvider.
Adding a bundle
$entityTypeManager->addBundleFields('group', 'business', [ new FieldDefinition( name: 'email', type: 'string', targetEntityTypeId: 'group', targetBundle: 'business', ), ]);
The framework materializes group__business on the next install / schema pass. Missing subtables for registered-but-unmaterialized bundles are reported by waaseyaa health:check as MISSING_BUNDLE_SUBTABLE.