Static ReadonlyAuthorizesChanges only the caller's own User-scope forms and panels, with the caller's permissions.
Whether this action can bound what it returns to an audience (RunActionParams.Audience): everyone
besides the caller who will see its output, such as the other participants of a shared conversation.
false by default, and the engine enforces it: when a run's audience adds a reader beyond the caller,
ActionEngineServer.RunAction refuses the action with result code AUDIENCE_UNSUPPORTED, without running
it. Override to return true only when the action honours the audience in full — every record, snippet
and count it returns is something every reader may see (pass the audience to the search engine, check each
reader's entitlement to anything it scopes by, and leave out aggregates computed before that filtering).
ProtectedInternalInternal method that must be implemented by derived action classes. This is where the actual action logic should be implemented.
The action execution parameters including typed context
Promise resolving to the action result
Executes the action with the provided parameters.
The action execution parameters including context
Promise resolving to the action result
Promote one of the caller's own Pending contributions to Active and demote the caller's Active row that shares its EntityID and ContributionKey.
Only the caller's own User-scope rows can be activated; a Role or Global row, or another user's row, returns
FORBIDDEN(shared panels are managed from the form's Manage drawer or Form Builder). A row with no ContributionKey is unique by construction and has no sibling to demote. Activating a row that is already Active is a no-op success, so the apply flow can retry safely. An Inactive row returnsNOT_PENDING— branch a new Pending version from it withModify Form Contributionfirst.