waaseyaa/groups

Multi-bundle Group content entity type for Waaseyaa (extracted from Minoo)

Maintainers

Package info

github.com/waaseyaa/groups

pkg:composer/waaseyaa/groups

Statistics

Installs: 16

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0-alpha.151 2026-04-20 00:08 UTC

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 by gid/uuid, labeled by name.
  • 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.