Member Junction
    Preparing search index...

    Asks where a generated panel should go before anything is written.

    Presentational by design: it takes the form's composition and the component's own proposal, and emits the answers. It reads nothing and saves nothing, so the host owns both the fetch and the write, and this stays testable without a provider.

    Scope is not a control here. The create path clamps every contribution to the calling user, deliberately — an agent must not be able to change another person's form — so the dialog states the audience rather than offering a choice it cannot honour. An edit from the Manage drawer keeps the panel's own audience, which the host states through VisibleTo.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Applied: EventEmitter<FormPlacementDecision> = ...

    The user pressed Apply.

    Cancelled: EventEmitter<void> = ...

    The user backed out.

    ComponentName: string = ''

    Name of the component being placed, for the dialog heading.

    DroppedProposalClaim: FormPlacementDroppedClaim | null = null

    A proposal's claim the caller's seed dropped because this form could not confirm it, for the summary to report while the answers do not make that claim. Null when the seed dropped none. The seed sets it; resetting the answers clears it, and so does reading the form's sections, before the seed runs again against them.

    OfferKeepOff: boolean = false

    Offers keeping the panel off, for an edit of a panel that is off now.

    PanelComponentID: string | null = null

    The saved component of the panel being edited, for the same reason.

    PanelComponentSpec: ComponentSpec | null = null

    The component being placed, so the preview draws it rather than a placeholder.

    PreviewFailed: boolean = false

    True when the scaled form could not be drawn, so the list stands in for it.

    ProbeForm: boolean = true

    Whether to read the entity's form to find out which positions it offers.

    On by default: without it the list is the shape CodeGen produces, which is right for a generated form and can be wrong for a hand-written one. A host that already knows the slots, or one with no Angular form to render, turns it off.

    Probing: boolean = false

    True while the form is being read to find out which positions it offers.

    Provider: IMetadataProvider | null

    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.

    RecordKey: CompositeKey | null = null

    The record the scaled form preview shows. Null shows a new, unsaved record, which is what a dialog opened from a conversation has.

    ReplacesRowID: string | null = null

    The saved row being edited, which the preview leaves off so it shows only the edit.

    State: FormPlacementState = ...
    VisibleTo: string = ...

    Who sees the panel, as the end of "visible to …". The caller alone unless the host says otherwise.

    "ɵdir": unknown
    "ɵfac": ɵɵFactoryDeclaration<BaseAngularComponent, never>

    Accessors

    • get CanReplaceField(): boolean

      Whether standing in for fields is offered.

      Only when the fields were read off a real form. Derived targets name the entity's fields rather than the ones this form draws, and a claim on a field the form does not draw hides nothing while still reading as applied.

      Returns boolean

    • get ProviderToUse(): IMetadataProvider

      Returns either the default Metadata provider or the one specified in the Provider property, if it was specified

      Returns IMetadataProvider

    • get RunQueryToUse(): IRunQueryProvider

      Returns either the default RunQuery provider or the one specified in the Provider property, if it was specified

      Returns IRunQueryProvider

    • get RunViewToUse(): IRunViewProvider

      Returns either the default RunView provider or the one specified in the Provider property, if it was specified

      Returns IRunViewProvider

    Methods

    • Switch which section the claim draws from, dropping the fields chosen in the old one.

      A claim renders at the top of ONE section, so fields from two of them describe a panel with two places to be. Clearing on switch makes that impossible to express rather than something the dialog has to refuse later.

      Parameters

      • sectionKey: string

      Returns void