Member Junction
    Preparing search index...

    <mj-form-panel-slot> — dynamic slot host that discovers and mounts every registered BaseFormPanel whose metadata matches the slot's Entity + Slot inputs. Generated entity-form HTML emits one of these at each well-known slot position so consumers can extend the form WITHOUT replacing it via the custom-form override pattern.

    Discovery: uses ClassFactory.GetAllRegistrationsByMetadata(BaseFormPanel, ...) to find every panel registered with metadata { entity, slot } matching this slot. Registrations without a metadata bag (or without these required keys) are silently ignored so legacy registrations don't accidentally bind.

    Ordering: registrations are sorted by metadata.sortKey descending — higher number renders first within the slot. Use ranges (100/50/10) so future panels can wedge in without renumbering. Ties fall back to the ClassRegistration.Priority field (also descending), and finally to registration order.

    Fallback chain (see FormSlotCoordinator): each slot host registers with the per-form coordinator and additionally renders panels whose REGISTERED slot is missing in the current form, when this host happens to be the next-existing slot down the chain. The container template guarantees an after-everything slot host, so fallback always terminates somewhere. Downstream consumers running an older form template (no CodeGen rerun yet) get every panel rendered at the bottom; consumers on the new template get them in the preferred position.

    Re-mount: any input change OR a coordinator change (another slot registers/deregisters) triggers a re-render so fallback assignments stay correct as slots come and go.

    Implements

    • OnInit
    • OnChanges
    • OnDestroy
    Index

    Constructors

    Properties

    Entity: string

    The entity name (e.g., "MJ: Content Sources") being edited.

    FormComponent: BaseFormComponent

    The host form component — used by panels for EditMode + dirty notifications.

    FormContext?: FormContext

    Optional form context — same shape collapsible-panel chrome expects.

    Record: BaseEntity

    The record being edited — threaded through to every mounted panel.

    Which slot position this host represents.

    Methods

    • A callback method that is invoked immediately after the default change detector has checked data-bound properties if at least one has changed, and before the view and content children are checked.

      Parameters

      • changes: { [propName: string]: SimpleChange<any> }

        The changed properties.

      Returns void

    • A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.

      Returns void