partners.yml 1.76 KB
# pbc-partners metadata.
#
# Loaded at boot by MetadataLoader, tagged source='core'.
# This declares what the partners PBC offers to the rest of the
# framework and the SPA: which entities exist, which permissions guard
# them, which menu entries point at them.

entities:
  - name: Partner
    pbc: partners
    table: partners__partner
    description: An external organisation the company does business with (customer, supplier, or both)

  - name: Address
    pbc: partners
    table: partners__address
    description: A postal address attached to a partner (billing, shipping, other)

  - name: Contact
    pbc: partners
    table: partners__contact
    description: A named human at a partner organisation (PII — GDPR-relevant)

permissions:
  - key: partners.partner.read
    description: Read partner records
  - key: partners.partner.create
    description: Create partners
  - key: partners.partner.update
    description: Update partners
  - key: partners.partner.deactivate
    description: Deactivate partners (preserved for historical references)

  - key: partners.address.read
    description: Read partner addresses
  - key: partners.address.create
    description: Add an address to a partner
  - key: partners.address.update
    description: Update a partner address
  - key: partners.address.delete
    description: Remove a partner address

  - key: partners.contact.read
    description: Read partner contact people (PII — elevated)
  - key: partners.contact.create
    description: Add a contact to a partner
  - key: partners.contact.update
    description: Update a partner contact
  - key: partners.contact.deactivate
    description: Deactivate a partner contact

menus:
  - path: /partners/partners
    label: Partners
    icon: users
    section: Partners
    order: 300