comindware.core.ui
Version:
Comindware Core UI provides the basic components like editors, lists, dropdowns, popups that we so desperately need while creating Marionette-based single-page applications.
171 lines (158 loc) • 5.14 kB
text/typescript
import 'core-js/stable';
import '../resources/styles';
import libApi from 'lib';
import utilsApi from 'utils';
import dropdownApi from 'dropdown';
import * as layoutApi from './layout';
import formApi from 'form';
import listApi from 'list';
import meta_ from './Meta';
import Controller from './controller/Controller';
import Application from './Application';
import LoadingView from './views/LoadingView';
import LoadingBehavior from './views/behaviors/LoadingBehavior';
import SearchBarView from './views/SearchBarView';
import SplitPanelView from './views/SplitPanelView';
import ErrorsPanelView from './views/ErrorsPanelView';
import ErrorButtonView from './views/ErrorButtonView';
import RoutingService from './services/RoutingService';
import ToastNotifications from './services/ToastNotificationService';
import MessageService from './services/MessageService';
import WindowService from './services/WindowService';
import GlobalEventService from './services/GlobalEventService';
import LocalizationService from './services/LocalizationService';
import AjaxService from './services/AjaxService';
import PromiseService from './services/PromiseService';
import UserService from './services/UserService';
import InterfaceErrorMessageService from './services/InterfaceErrorMessageService';
import ThemeService from './services/ThemeService';
import TestService from './services/TestService';
import UIService from './services/UIService';
import VirtualCollection from './collections/VirtualCollection';
import SelectableBehavior from './models/behaviors/SelectableBehavior';
import MobileService from './services/MobileService';
import NavigationDrawer from './components/navigationDrawer/NavigationDrawer';
import BreadCrumbs from './components/breadCrumbs/BreadCrumbs';
import Toolbar from './components/toolbar/ToolbarView';
import VideoChat from './components/videoChat/VideoChat';
import TreeEditor from './components/treeEditor';
/**
* Core UI components: основные компоненты для построение веб-интерфейса Comindware.
* @name module:core
* */
const core = {
Controller,
Application,
RoutingService,
ToastNotifications,
lib: libApi,
InterfaceError: InterfaceErrorMessageService,
/**
* Services of general use the UI is built on.
* @namespace
* @memberof module:core
* */
services: {
MessageService,
/**
* The service is responsible for displaying global windows. For example, modal dialogs (popups).
* @namespace
* @memberof module:core.services
* */
WindowService,
LocalizationService,
AjaxService,
/**
* The services provides an interface to global window events, so you could easily subscribe
* to them through <code>this.listenTo(GlobalEventService, ...)</code> in you views.
* @namespace
* @memberof module:core.services
* */
GlobalEventService,
PromiseService,
UserService,
MobileService,
ThemeService,
TestService,
UIService
},
/**
* Backbone collections of general use.
* @namespace
* @memberof module:core
* */
collections: {
VirtualCollection
},
/**
* Backbone models of general use.
* @namespace
* @memberof module:core
* */
models: {
behaviors: {
SelectableBehavior
}
},
views: {
behaviors: {
LoadingBehavior
},
LoadingView,
SearchBarView,
SplitPanelView,
ErrorButtonView,
ErrorsPanelView
},
/**
* Dropdown components of general use. It may be used in menus, dropdown lists and more complex cases like displaying some fancy about-me panel.
* @namespace
* @memberof module:core
* */
dropdown: dropdownApi,
layout: layoutApi,
/**
* A large set of editors and related classes built on top of [Backbone.Form](https://github.com/powmedia/backbone-forms) library.
* @namespace
* @memberof module:core
* */
form: formApi,
/**
* List and Grid components with data virtualization.
* @namespace
* @memberof module:core
* */
list: listApi,
/**
* Combines useful helper classes, functions and constants.
* @namespace
* @memberof module:core
* */
utils: utilsApi,
/**
* Constants used inside the library.
* @namespace
* @memberof module:core
* */
meta: meta_,
components: {
NavigationDrawer,
Toolbar,
BreadCrumbs,
VideoChat,
TreeEditor
}
};
window.Core = core;
export default core;
export const lib = core.lib;
export const layout = core.layout;
export const services = core.services;
export const collections = core.collections;
export const models = core.models;
export const views = core.views;
export const dropdown = core.dropdown;
export const form = core.form;
export const list = core.list;
export const utils = core.utils;
export const meta = core.meta;