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

Source: api/js/Abcs.js

define([
    'api/js/Entities',
    'api/js/Operations',
    'api/js/Pages',
    'api/js/System',
    'api/js/UI'
], function (
        Entities,
        Operations,
        Pages,
        System,
        UI
        ) {

    'use strict';

    /**
     * Abcs Application API.
     * <p>
     * It serves basic API support modules which enables functionality around
     * i.e. entities, UI, operations etc.
     *
     * @AbcsAPI stable
     * @version 15.4.5
     * @exports api/js/Abcs
     */
    var Abcs = function() {
        AbcsLib.throwStaticClassError();
    };

    /**
     * Gets the Pages API support module.
     *
     * @AbcsAPI stable
     * @version 15.4.5
     * @returns {module:api/js/Pages}
     *
     * @example
     * var pagesAPI = Abcs.Pages();
     * @example
     * Abcs.Pages().navigateToPage('home');
     */
    Abcs.Pages = function () {
        return Pages;
    };

    /**
     * Gets the Entities API support module.
     *
     * @AbcsAPI stable
     * @version 15.4.5
     * @returns {module:api/js/Entities}
     *
     * @example
     * var entitiesAPI = Abcs.Entities();
     * @example
     * var entities = Abcs.Entities().getAll();
     */
    Abcs.Entities = function () {
        return Entities;
    };

    /**
     * Gets the Operation API support module.
     *
     * @AbcsAPI stable
     * @version 15.4.5
     * @returns {module:api/js/Operations}
     *
     * @example
     * var operationAPI = Abcs.Operations();
     */
    Abcs.Operations = function () {
        return Operations;
    };

    /**
     * Gets the UI API support module.
     *
     * @AbcsAPI stable
     * @version 15.4.5
     * @returns {module:api/js/UI}
     *
     * @example
     * var uiAPI = Abcs.UI();
     * @example
     * Abcs.UI().showNotification(Abcs.UI().Notification.create({
     *      message: 'I'm informing you ...'
     * });
     */
    Abcs.UI = function () {
        return UI;
    };

    /**
     * Gets the System API support module.
     *
     * @AbcsAPI stable
     * @version 15.4.5
     * @returns {module:api/js/System}
     *
     * @example
     * var systemAPI = Abcs.System();
     * @example
     * var userEntity = Abcs.System().getLoggedInUser();
     */
    Abcs.System = function () {
        return System;
    };

    return Abcs;

});