Optional custom card template. This is host-level configuration (not stored in the view
type's config), so the host sets it via a guarded setInput. Type matches
EntityCardsComponent.cardTemplate.
View-type-specific configuration. Cards has no per-view config — this is accepted to satisfy the IViewRenderer contract and is otherwise unused (no-op).
Required by IViewRenderer; the cards view never mutates its own config, so this never emits. Declared so the host's uniform output subscription is satisfied.
The entity whose records are being rendered.
Active filter text (used by the cards view for match highlighting).
Optional map of record primary-key strings → hidden field names that matched the active
filter, used by the cards view to flag matches in non-visible fields. Host-level config,
set by the host via a guarded setInput. Type matches
EntityCardsComponent.hiddenFieldMatches.
If specified, this provider will be used for communication and for all metadata purposes. By default, if not provided, the Metadata and RunView classes are used for this and the default GraphQLDataProvider is used which is connected to the same back-end MJAPI instance as the Metadata and RunView classes. If you want to have this component connect to a different MJAPI back-end, create an instance of a ProviderBase sub-class like GraphQLDataProvider/etc, and configure it as appropriate to connect to the MJAPI back-end you want to use, and then pass it in here.
Emitted when a record should be opened (double-click / open) — payload is the raw record object.
The records to render (already loaded/filtered by the host).
Emitted when a record is selected (single click) — payload is the raw record object.
Primary-key string of the currently selected record, if any.
StaticɵdirStaticɵfacReturns either the default Metadata provider or the one specified in the Provider property, if it was specified
Returns either the default RunQuery provider or the one specified in the Provider property, if it was specified
Returns either the default RunReport provider or the one specified in the Provider property, if it was specified
Returns either the default RunView provider or the one specified in the Provider property, if it was specified
Relay <mj-entity-cards>'s open event, normalizing to the raw record the host expects
(the host builds the composite key itself).
Relay <mj-entity-cards>'s selection event, normalizing to the raw record the host
expects (the host builds the composite key itself).
CardsViewRendererComponent
The Cards view type renderer — a thin IViewRenderer adapter that hosts the existing EntityCardsComponent (
<mj-entity-cards>) inside the entity-viewer's pluggable view-type system. It is the dynamic-mounted plug-in that theCardsViewTypedescriptor points at, replacing the descriptor's previous direct reference toEntityCardsComponent(which did not honor the IViewRenderer contract).The host feeds the standard renderer inputs (
entity/records/selectedRecordId/filterText/config) viasetInputand listens forrecordSelected/recordOpened. Two extra inputs (cardTemplate,hiddenFieldMatches) reproduce the host-level bindings that<mj-entity-cards>was previously given directly inentity-viewer.component.html— the host sets them via a guardedsetInput.Payload normalization:
<mj-entity-cards>emits the rich RecordSelectedEvent / RecordOpenedEvent objects ({ record, entity, compositeKey }), but the host's dynamic renderer handler expects the raw record and builds the composite key itself. This adapter therefore extracts.recordand re-emits just that object, matching the other plug-in renderers (e.g. the Cluster renderer emits raw record objects).This is an NgModule-declared (
standalone: false) component, declared inEntityViewerModulealongside EntityCardsComponent — so it renders<mj-entity-cards>directly from the module's compilation scope with noimportsarray and no self-import of the module (the module loads the view-type descriptors, which reference these wrappers, so a wrapper importing the module back would form a runtime import cycle — NG0919).Inputs use the camelCase names mandated by the IViewRenderer contract (the host binds them by those exact names via
setInput), rather than MJ's usual PascalCase for public members — mirroring the Cluster renderer.