2020-03-23 15:35:58 +01:00
/ *
2024-09-24 09:42:07 +02:00
* Copyright ( c ) 2020 - present Cloudogu GmbH
2020-03-23 15:35:58 +01:00
*
2024-09-24 09:42:07 +02:00
* This program is free software : you can redistribute it and / or modify it under
* the terms of the GNU Affero General Public License as published by the Free
* Software Foundation , version 3 .
2020-03-23 15:35:58 +01:00
*
2024-09-24 09:42:07 +02:00
* This program is distributed in the hope that it will be useful , but WITHOUT
* ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE . See the GNU Affero General Public License for more
* details .
2020-03-23 15:35:58 +01:00
*
2024-09-24 09:42:07 +02:00
* You should have received a copy of the GNU Affero General Public License
* along with this program . If not , see https : //www.gnu.org/licenses/.
2020-03-23 15:35:58 +01:00
* /
2024-09-24 09:42:07 +02:00
2019-10-20 18:02:52 +02:00
import React from "react" ;
import ReactDOM from "react-dom" ;
import Index from "./containers/Index" ;
2019-10-19 16:38:07 +02:00
2019-10-20 18:02:52 +02:00
import { I18nextProvider } from "react-i18next" ;
import i18n from "./i18n" ;
2019-10-19 16:38:07 +02:00
2019-10-20 18:02:52 +02:00
import { BrowserRouter as Router } from "react-router-dom" ;
2019-10-19 16:38:07 +02:00
2022-10-21 08:47:42 +02:00
import { ActiveModalCountContextProvider , urls } from "@scm-manager/ui-components" ;
2022-03-29 15:04:14 +02:00
import { binder , extensionPoints } from "@scm-manager/ui-extensions" ;
2020-07-01 10:43:17 +02:00
import ChangesetShortLink from "./repos/components/changesets/ChangesetShortLink" ;
2021-02-24 08:17:40 +01:00
import "./tokenExpired" ;
2024-10-28 15:05:13 +01:00
import { ApiProvider } from "@scm-manager/ui-api" ;
2024-01-24 10:38:17 +01:00
import { ShortcutDocsContextProvider } from "@scm-manager/ui-core" ; // Makes sure that the global `define` function is registered and all provided modules are included in the final bundle at all times
2023-10-13 08:15:27 +02:00
import "./_modules/provided-modules" ;
2022-03-29 15:04:14 +02:00
binder . bind < extensionPoints.ChangesetDescriptionTokens > ( "changeset.description.tokens" , ChangesetShortLink ) ;
2019-10-19 16:38:07 +02:00
2019-10-20 18:02:52 +02:00
const root = document . getElementById ( "root" ) ;
2019-10-19 16:38:07 +02:00
if ( ! root ) {
2019-10-20 18:02:52 +02:00
throw new Error ( "could not find root element" ) ;
2019-10-19 16:38:07 +02:00
}
ReactDOM . render (
2022-02-18 14:47:37 +01:00
< ApiProvider >
< I18nextProvider i18n = { i18n } >
2024-10-28 15:05:13 +01:00
< ShortcutDocsContextProvider >
< ActiveModalCountContextProvider >
< Router basename = { urls . contextPath } >
< Index / >
< / Router >
< / ActiveModalCountContextProvider >
< / ShortcutDocsContextProvider >
2022-02-18 14:47:37 +01:00
< / I18nextProvider >
< / ApiProvider > ,
2019-10-20 18:02:52 +02:00
root
2019-10-19 16:38:07 +02:00
) ;