plugin

Parent: app

Children: actionPositiontype = templateComponent, actionTemplatetype = templateComponent, attributeGrouptype in (item); type in (region); type in (process); type in (dynamicAction); type in (templateComponent); type in (genAITool), customAttribute, eventtype in (item); type in (region); type in (dynamicAction), file, slottype = templateComponent, standardAttributeConfigtype in (item); type in (region); type in (process); type in (dynamicAction); type in (restDataSource)

Direct Properties:

PropertyTypeRequiredDefault ValueDetails
namestringYesdata type=string; maxLen=255
The name of your plug-in.
apexlangNamestringYesdata type=string; maxLen=40

Enter the camelCase name for this plug-in as it appears in an APEXlang file.

Caution: Changing it may prevent existing APEXlang files from being imported.

staticIdstringYesdata type=string; maxLen=45; textCase=UPPER
typeenumYestemplateComponentdata type=string; lov=STATIC
Valid values: templateComponent item region dynamicAction genAITool process authenticationScheme authorizationScheme restDataSource interactiveReportColumn
themereferenceNodata type=reference; lov=COMPONENT; references=theme
Applies whentype = templateComponent

Property Groups:

  • templateComponent
  • defaultSlots
  • aiTool
  • onDemand
  • component
  • source
  • callbacks
  • advanced
  • css
  • javaScript
  • information
  • subscription
  • comments
templateComponent
PropertyTypeRequiredDefault ValueDetails
availableAsarray of enumsNodata type=string; lov=STATIC
Valid values: partial report regionOnly
Applies whentype = templateComponent
partialmultiline stringNodata type=multiline string; maxLen=32767
Applies whentype = templateComponent
reportBodymultiline stringNodata type=multiline string; maxLen=32767
Applies whentype = templateComponent and availableAs = report
reportGroupmultiline stringNodata type=multiline string; maxLen=32767
Applies whentype = templateComponent and availableAs = report
reportRowmultiline stringNodata type=multiline string; maxLen=32767
Applies whentype = templateComponent and availableAs = report
reportContainermultiline stringNodata type=multiline string; maxLen=32767
Applies whentype = templateComponent and availableAs = report
translateTemplatesbooleanYesfalsedata type=boolean
Applies whentype = templateComponent
defaultEscapeModeenumYeshtmldata type=string; lov=STATIC
Valid values: html htmlAttribute stripHtml raw
Applies whentype = templateComponent
numberOfLazyLoadingSkeletonsintegerNodata type=integer; maxLen=32767
Applies whentype = templateComponent and availableAs = report
templateComponent {
  availableAs: [
    partial
    report
  ]
  partial: ```html
    value
  ```
  reportBody: ```html
    value
  ```
  reportGroup: ```html
    value
  ```
  reportRow: ```html
    value
  ```
  reportContainer: ```html
    value
  ```
  translateTemplates: false
  defaultEscapeMode: html
  numberOfLazyLoadingSkeletons: 42
}
defaultSlots
PropertyTypeRequiredDefault ValueDetails
regionsstringNodata type=string; lov=SLOTS
Applies whentype = templateComponent
itemsstringNodata type=string; lov=SLOTS
Applies whentype = templateComponent
buttonsstringNodata type=string; lov=SLOTS
Applies whentype = templateComponent
defaultSlots {
  regions: value
  items: value
  buttons: value
}
aiTool
PropertyTypeRequiredDefault ValueDetails
executionLocationenumYesserverSidedata type=string; lov=STATIC
Valid values: clientSide serverSide
Applies whentype = genAITool
supportedExecutionPointsarray of enumsYesonDemanddata type=string; lov=STATIC
Valid values: augmentSystemPrompt onDemand
Applies whentype = genAITool
aiTool {
  executionLocation: clientSide
  supportedExecutionPoints: [
    augmentSystemPrompt
    onDemand
  ]
}
onDemand
PropertyTypeRequiredDefault ValueDetails
descriptionmultiline stringNodata type=multiline string; maxLen=32767
Applies whentype = genAITool and supportedExecutionPoints = onDemand
parametersenumYesnoParametersdata type=string; lov=STATIC
Valid values: noParameters definedByAiTool definedByPlugIn
Applies whentype = genAITool and supportedExecutionPoints = onDemand
parametersJsonSchemamultiline stringYesdata type=multiline string; maxLen=32767
Applies whentype = genAITool and supportedExecutionPoints = onDemand and parameters = definedByPlugIn
onDemand {
  description: ```
    value
  ```
  parameters: noParameters
  parametersJsonSchema: ```json
    value
  ```
}
component
PropertyTypeRequiredDefault ValueDetails
supportsarray of enumsYesAPEX_APPLICATION_PAGE_ITEMS:APEX_APPL_PAGE_IG_COLUMNSdata type=string; lov=STATIC
Valid values: pageItems interactiveGridColumns facets facetGroupItems filters filterGroupItems
Applies whentype = item
supportsarray of enumsYesAPEX_APPLICATION_PAGE_PROC:APEX_APPL_AUTOMATION_ACTIONS:APEX_APPL_TASKDEF_ACTIONS:APEX_APPL_WORKFLOW_ACTIVITIESdata type=string; lov=STATIC
Valid values: pageProcesses automationActions taskDefinitionActions workflowActivities
Applies whentype = process
supportsSessionStateDataTypesarray of enumsYesvarchar2data type=string; lov=STATIC
Valid values: varchar2 clob boolean
Applies whentype = item
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: visibleWidget standardFormElement sessionStateChangeable readOnlyAttr escapeSpecialCharsAttr quickPickAttrs sourceAttrs formatMaskDateOnly formatMaskNumberOnly elementAttrs widthAttrs heightAttr elementOptionAttr placeholderAttr iconAttr encryptSessionStateAttr listOfValues lovDisplayNullAttrs cascadingLovAttrs joinLovforColumnDisplay filter link initJavascriptCodeAttr facetGatherOccurrences facetShowSelectedFirst facetMaxDisplayedEntries facetClientSideFiltering facetLovDisplayNullValue aiEnabled configurableAiEnabled configurableAiSystemPrompt requiresAiChatWidget alwaysMultipleValues optionalMultipleValues
Applies whentype = item
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: rowSelection regionTemplateAttr
Applies whentype = templateComponent
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: regionSourceSupportsDifferentDataSources regionSourceIsSqlQuery regionSourceIsPlsqlCode regionSourceIsPlsqlFunctionBody regionSourceIsHtml regionSourceIsPlainText pageItemsToSubmitAttr orderByAttr noOfFetchedRowsAttr noDataFoundMessageAttr escapeSpecialCharsRegionAttr initJavascriptCodeAttr regionColumns headingColumnAttr headingAlignmentColumnAttr alignmentColumnAttr cssClassColumnAttr customAttrsColumnAttr escapeSpecialCharsColumnAttr supportsFacetedSearchSmartFilters lazyLoading lazyLoadingAlways isEditable aiEnabled configurableAiEnabled configurableAiSystemPrompt requiresAiChatWidget
Applies whentype = region
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: forItem forButton forRegion forJquerySelector forJavaScriptExpression forTriggeringElement forEventSource affectedElementRequired defaultFireOnInitialization stopExecutionOnErrorAttr waitForResultAttr initJavascriptCodeAttr aiEnabled configurableAiEnabled configurableAiSystemPrompt requiresAiChatWidget
Applies whentype = dynamicAction
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: sessionNotValidAttr hasLoginPage
Applies whentype = authenticationScheme
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: defaultEndpoint doNotTestEndpoint
Applies whentype = restDataSource
standardAttributesarray of enumsNodata type=string; lov=STATIC
Valid values: region regionRequired waitForCompletion form aiEnabled configurableAiEnabled configurableAiSystemPrompt
Applies whentype = process
component {
  supports: [
    pageItems
    interactiveGridColumns
  ]
  supportsSessionStateDataTypes: [
    varchar2
    clob
  ]
  standardAttributes: [
    visibleWidget
    standardFormElement
  ]
}
source
PropertyTypeRequiredDefault ValueDetails
plsqlCodemultiline stringNodata type=multiline string; maxLen=32767
Applies whentype in (region)type in (dynamicAction)type in (process)type in (authorizationScheme)type in (authenticationScheme)type in (item)type in (restDataSource)type in (genAITool)
sampleDataenumNodata type=string; lov=STATIC
Valid values: employees tasks products projects
Applies whentype in (region)type in (templateComponent)
source {
  plsqlCode: ```plsql
    value
  ```
  sampleData: employees
}
callbacks
PropertyTypeRequiredDefault ValueDetails
apiInterfaceenumYesproceduredata type=string; lov=STATIC
Valid values: procedure procedureWithLegacyAttributes function
renderProcedureNamestringNodata type=string; maxLen=255
Applies whentype in (dynamicAction)type in (item)type in (region)type = genAITool and executionLocation = clientSide
metaDataProcedureNamestringNodata type=string; maxLen=255
Applies whentype = item
sessionSentryProcedureNamestringNodata type=string; maxLen=255
Applies whentype = authenticationScheme
invalidSessionProcedureNamestringNodata type=string; maxLen=255
Applies whentype = authenticationScheme
authenticationProcedureNamestringNodata type=string; maxLen=255
Applies whentype = authenticationScheme
postLogoutProcedureNamestringNodata type=string; maxLen=255
Applies whentype = authenticationScheme
ajaxProcedureNamestringNodata type=string; maxLen=255
Applies whentype in (authenticationScheme)type in (dynamicAction)type in (region)type in (item)
validationProcedureNamestringNodata type=string; maxLen=255
Applies whentype = item
executionFunctionProcedureNamestringNodata type=string; maxLen=255
Applies whentype in (authorizationScheme)type in (process)type = genAITool and executionLocation = serverSide
completionFunctionProcedureNamestringNodata type=string; maxLen=255
Applies whentype = process and standardAttributes = waitForCompletion
terminationFunctionProcedureNamestringNodata type=string; maxLen=255
Applies whentype = process and standardAttributes = waitForCompletion
restSourceCapabilitiesProcedurestringNodata type=string; maxLen=255
Applies whentype = restDataSource
restSourceFetchProcedurestringNodata type=string; maxLen=255
Applies whentype = restDataSource
restSourceDmlProcedurestringNodata type=string; maxLen=255
Applies whentype = restDataSource
restSourceExecuteProcedurestringNodata type=string; maxLen=255
Applies whentype = restDataSource
aiRequestHandlerProcedurestringNodata type=string; maxLen=255
Applies whentype = region and standardAttributes in (configurableAiEnabled)type = region and standardAttributes in (aiEnabled)type = item and standardAttributes in (configurableAiEnabled)type = item and standardAttributes in (aiEnabled)type = dynamicAction and standardAttributes in (configurableAiEnabled)type = dynamicAction and standardAttributes in (aiEnabled)
aiResponseHandlerProcedurestringNodata type=string; maxLen=255
Applies whentype = region and standardAttributes in (configurableAiEnabled)type = region and standardAttributes in (aiEnabled)type = item and standardAttributes in (configurableAiEnabled)type = item and standardAttributes in (aiEnabled)type = dynamicAction and standardAttributes in (configurableAiEnabled)type = dynamicAction and standardAttributes in (aiEnabled)
restSourceDiscoverProcedurestringNodata type=string; maxLen=255
Applies whentype = restDataSource
callbacks {
  apiInterface: procedure
  renderProcedureName: value
  metaDataProcedureName: value
  sessionSentryProcedureName: value
  invalidSessionProcedureName: value
  authenticationProcedureName: value
  postLogoutProcedureName: value
  ajaxProcedureName: value
  validationProcedureName: value
  executionFunctionProcedureName: value
  completionFunctionProcedureName: value
  terminationFunctionProcedureName: value
  restSourceCapabilitiesProcedure: value
  restSourceFetchProcedure: value
  restSourceDmlProcedure: value
  restSourceExecuteProcedure: value
  aiRequestHandlerProcedure: value
  aiResponseHandlerProcedure: value
  restSourceDiscoverProcedure: value
}
advanced
PropertyTypeRequiredDefault ValueDetails
filePrefixstringNodata type=string; maxLen=255

Determines the virtual path the Web server uses to point to the files of the plug-in.

Do not specify anything to reference files which are stored with your plug-in definition in the database.

For performance reasons you can also store your plug-in files on your Web Server. Use #APEX_FILES# or any valid URL to reference them.

categoryenumNodata type=string; lov=STATIC
Valid values: component effect execute initialize miscellaneous navigation notification style builtInComponents appComponents themeComponents ai
Applies whentype = dynamicAction
quickPickbooleanYesfalsedata type=boolean
Applies whentype = templateComponent
substituteAttributeValuesbooleanYesfalsedata type=boolean
Applies whenapiInterface in (function)apiInterface in (procedureWithLegacyAttributes)
deprecatedbooleanYesfalsedata type=boolean
legacybooleanYesfalsedata type=boolean
advanced {
  filePrefix: value
  category: component
  quickPick: false
  substituteAttributeValues: false
  deprecated: false
  legacy: false
}
css
PropertyTypeRequiredDefault ValueDetails
fileUrlsarray of stringsNodata type=string; maxLen=4000
Applies whentype in (region)type in (dynamicAction)type in (item)type in (templateComponent)type = genAITool and executionLocation = clientSide

Enter Cascading Style Sheet file URLs to be loaded with this plug-in. Each URL has to be written on a new line. If you provide a minified version of your file you can use the substitution string #MIN# to include .min, or #MIN_DIRECTORY# to include minified/ in your file URL for a regular page view, and an empty string if the page is viewed in debug mode. You also have access to the substitution string #PLUGIN_FILES# to substitute with the value of the plug-in's file prefix.

File URLs you enter here will be emitted within the #APEX_CSS# substitution string in the page template.

Note: You do not need to include opening or closing link tags, just the file URL.

css {
  fileUrls: [
    value
    value
  ]
}
javaScript
PropertyTypeRequiredDefault ValueDetails
fileUrlsarray of stringsNodata type=string; maxLen=4000
Applies whentype in (region)type in (dynamicAction)type in (item)type in (templateComponent)type = genAITool and executionLocation = clientSide

Enter JavaScript file URLs for code to be loaded with this plug-in. Each URL has to be written on a new line. If you provide a minified version of your file you can use the substitution string #MIN# to include .min, or #MIN_DIRECTORY# to include minified/ in your file URL for a regular page view, and an empty string if the page is viewed in debug mode. You also have access to the substitution string #PLUGIN_FILES# to substitute the value of the plug-in's file prefix.

JavaScript file URLs you enter here will be emitted within the #GENERATED_JAVASCRIPT# substitution string in the page template.

Note: You do not need to include opening or closing script tags, just the file URL.

javaScript {
  fileUrls: [
    value
    value
  ]
}
information
PropertyTypeRequiredDefault ValueDetails
versionstringNodata type=string; maxLen=30
aboutUrlstringNodata type=string; maxLen=255
helpTextmultiline stringNodata type=multiline string; maxLen=4000
information {
  version: value
  aboutUrl: value
  helpText: ```
    value
  ```
}
subscription
PropertyTypeRequiredDefault ValueDetails
masterreferenceNodata type=reference; lov=COMPONENT; references=plugin
subscribeComponentSettingsbooleanYestruedata type=boolean
Applies whenmaster is set
subscription {
  master: @component
  subscribeComponentSettings: false
}
comments
PropertyTypeRequiredDefault ValueDetails
commentsmultiline stringNodata type=multiline string; maxLen=4000
comments {
  comments: ```
    value
  ```
}

APEXlang Example

plugin sample (
    name: value
    apexlangName: value
    staticId: value
    type: templateComponent
    theme: @component
    templateComponent {
        availableAs: [
          partial
          report
        ]
        partial: ```html
          value
        ```
        reportBody: ```html
          value
        ```
        reportGroup: ```html
          value
        ```
        reportRow: ```html
          value
        ```
        reportContainer: ```html
          value
        ```
        translateTemplates: false
        defaultEscapeMode: html
        numberOfLazyLoadingSkeletons: 42
    }
    defaultSlots {
        regions: value
        items: value
        buttons: value
    }
    aiTool {
        executionLocation: clientSide
        supportedExecutionPoints: [
          augmentSystemPrompt
          onDemand
        ]
    }
    onDemand {
        description: ```
          value
        ```
        parameters: noParameters
        parametersJsonSchema: ```json
          value
        ```
    }
    component {
        supports: [
          pageItems
          interactiveGridColumns
        ]
        supportsSessionStateDataTypes: [
          varchar2
          clob
        ]
        standardAttributes: [
          visibleWidget
          standardFormElement
        ]
    }
    source {
        plsqlCode: ```plsql
          value
        ```
        sampleData: employees
    }
    callbacks {
        apiInterface: procedure
        renderProcedureName: value
        metaDataProcedureName: value
        sessionSentryProcedureName: value
        invalidSessionProcedureName: value
        authenticationProcedureName: value
        postLogoutProcedureName: value
        ajaxProcedureName: value
        validationProcedureName: value
        executionFunctionProcedureName: value
        completionFunctionProcedureName: value
        terminationFunctionProcedureName: value
        restSourceCapabilitiesProcedure: value
        restSourceFetchProcedure: value
        restSourceDmlProcedure: value
        restSourceExecuteProcedure: value
        aiRequestHandlerProcedure: value
        aiResponseHandlerProcedure: value
        restSourceDiscoverProcedure: value
    }
    advanced {
        filePrefix: value
        category: component
        quickPick: false
        substituteAttributeValues: false
        deprecated: false
        legacy: false
    }
    css {
        fileUrls: [
          value
          value
        ]
    }
    javaScript {
        fileUrls: [
          value
          value
        ]
    }
    information {
        version: value
        aboutUrl: value
        helpText: ```
          value
        ```
    }
    subscription {
        master: @component
        subscribeComponentSettings: false
    }
    comments {
        comments: ```
          value
        ```
    }
)