JavaScript Extension Development API for Oracle Visual Builder Cloud Service - Classic Applications

Source: extensions.dt/js/api/ExtensionType.js

define([], function() {

    'use strict';

    /**
     * Defines types of ABCS extensions.
     *
     * @AbcsExtension stable
     * @typedef extensions.dt/js/spi/ExtensionManager~ExtensionType
     * @version 16.3.1
     * @property {string} uicomponent - Visual/UI custom component.
     * @property {string} sharedObject - Application wide shared custom object.
     * @property {string} businessObjectsProvider - Business Objects Provider.
     * @property {string} theme - Theme
     */
    function ExtensionType() {
        AbcsLib.throwStaticClassError();
    }

    /**
     * Visual/UI custom component.
     *
     * @type {String}
     */
    ExtensionType.uicomponent = 'uicomponent';

    /**
     * App wide shared custom object.
     *
     * @type {String}
     */
    ExtensionType.sharedObject = 'sharedObject';

    /**
     * Business Objects Provider.
     *
     * @type {String}
     */
    ExtensionType.businessObjectsProvider = 'businessObjectsProvider';

    /**
     * Theme
     *
     * @type {String}
     */
    ExtensionType.theme = 'theme';

    /**
     * "Freeform extension. May be used to aggregate dependencies or to tweak
     * objects provided by other extensions.
     */
    ExtensionType.freeform = 'freeform';

    ExtensionType.VALUES = [
        ExtensionType.uicomponent,
        ExtensionType.sharedObject,
        ExtensionType.businessObjectsProvider,
        ExtensionType.theme
        //ExtensionType.freeform
    ];

    return ExtensionType;

});