1
0
Fork 0
mirror of https://gitlab.com/bramw/baserow.git synced 2025-04-23 21:00:17 +00:00
bramw_baserow/web-frontend/modules/database/plugin.js
2021-09-14 14:46:55 +00:00

131 lines
5.4 KiB
JavaScript

import { DatabaseApplicationType } from '@baserow/modules/database/applicationTypes'
import { GridViewType, FormViewType } from '@baserow/modules/database/viewTypes'
import {
TextFieldType,
LongTextFieldType,
URLFieldType,
EmailFieldType,
LinkRowFieldType,
NumberFieldType,
BooleanFieldType,
DateFieldType,
LastModifiedFieldType,
FileFieldType,
SingleSelectFieldType,
PhoneNumberFieldType,
CreatedOnFieldType,
} from '@baserow/modules/database/fieldTypes'
import {
EqualViewFilterType,
NotEqualViewFilterType,
DateEqualViewFilterType,
DateNotEqualViewFilterType,
ContainsViewFilterType,
FilenameContainsViewFilterType,
ContainsNotViewFilterType,
HigherThanViewFilterType,
LowerThanViewFilterType,
SingleSelectEqualViewFilterType,
SingleSelectNotEqualViewFilterType,
BooleanViewFilterType,
EmptyViewFilterType,
NotEmptyViewFilterType,
DateEqualsTodayViewFilterType,
DateEqualsCurrentMonthViewFilterType,
DateEqualsCurrentYearViewFilterType,
DateBeforeViewFilterType,
DateAfterViewFilterType,
LinkRowHasFilterType,
LinkRowHasNotFilterType,
} from '@baserow/modules/database/viewFilters'
import {
CSVImporterType,
PasteImporterType,
XMLImporterType,
JSONImporterType,
} from '@baserow/modules/database/importerTypes'
import { APITokenSettingsType } from '@baserow/modules/database/settingsTypes'
import tableStore from '@baserow/modules/database/store/table'
import viewStore from '@baserow/modules/database/store/view'
import fieldStore from '@baserow/modules/database/store/field'
import gridStore from '@baserow/modules/database/store/view/grid'
import formStore from '@baserow/modules/database/store/view/form'
import { registerRealtimeEvents } from '@baserow/modules/database/realtime'
import { CSVTableExporterType } from '@baserow/modules/database/exporterTypes'
export default (context) => {
const { store, app } = context
store.registerModule('table', tableStore)
store.registerModule('view', viewStore)
store.registerModule('field', fieldStore)
store.registerModule('page/view/grid', gridStore)
store.registerModule('page/view/form', formStore)
store.registerModule('template/view/grid', gridStore)
store.registerModule('template/view/form', formStore)
app.$registry.register('application', new DatabaseApplicationType(context))
app.$registry.register('view', new GridViewType(context))
app.$registry.register('view', new FormViewType(context))
app.$registry.register('viewFilter', new EqualViewFilterType(context))
app.$registry.register('viewFilter', new NotEqualViewFilterType(context))
app.$registry.register('viewFilter', new DateEqualViewFilterType(context))
app.$registry.register('viewFilter', new DateNotEqualViewFilterType(context))
app.$registry.register(
'viewFilter',
new DateEqualsTodayViewFilterType(context)
)
app.$registry.register(
'viewFilter',
new DateEqualsCurrentMonthViewFilterType(context)
)
app.$registry.register(
'viewFilter',
new DateEqualsCurrentYearViewFilterType(context)
)
app.$registry.register('viewFilter', new DateBeforeViewFilterType(context))
app.$registry.register('viewFilter', new DateAfterViewFilterType(context))
app.$registry.register('viewFilter', new ContainsViewFilterType(context))
app.$registry.register(
'viewFilter',
new FilenameContainsViewFilterType(context)
)
app.$registry.register('viewFilter', new ContainsNotViewFilterType(context))
app.$registry.register('viewFilter', new HigherThanViewFilterType(context))
app.$registry.register('viewFilter', new LowerThanViewFilterType(context))
app.$registry.register(
'viewFilter',
new SingleSelectEqualViewFilterType(context)
)
app.$registry.register(
'viewFilter',
new SingleSelectNotEqualViewFilterType(context)
)
app.$registry.register('viewFilter', new BooleanViewFilterType(context))
app.$registry.register('viewFilter', new LinkRowHasFilterType(context))
app.$registry.register('viewFilter', new LinkRowHasNotFilterType(context))
app.$registry.register('viewFilter', new EmptyViewFilterType(context))
app.$registry.register('viewFilter', new NotEmptyViewFilterType(context))
app.$registry.register('field', new TextFieldType(context))
app.$registry.register('field', new LongTextFieldType(context))
app.$registry.register('field', new LinkRowFieldType(context))
app.$registry.register('field', new NumberFieldType(context))
app.$registry.register('field', new BooleanFieldType(context))
app.$registry.register('field', new DateFieldType(context))
app.$registry.register('field', new LastModifiedFieldType(context))
app.$registry.register('field', new CreatedOnFieldType(context))
app.$registry.register('field', new URLFieldType(context))
app.$registry.register('field', new EmailFieldType(context))
app.$registry.register('field', new FileFieldType(context))
app.$registry.register('field', new SingleSelectFieldType(context))
app.$registry.register('field', new PhoneNumberFieldType(context))
app.$registry.register('importer', new CSVImporterType(context))
app.$registry.register('importer', new PasteImporterType(context))
app.$registry.register('importer', new XMLImporterType(context))
app.$registry.register('importer', new JSONImporterType(context))
app.$registry.register('settings', new APITokenSettingsType(context))
app.$registry.register('exporter', new CSVTableExporterType(context))
registerRealtimeEvents(app.$realtime)
}