Compare commits

...

2 Commits

30 changed files with 133 additions and 593 deletions

View File

@ -31,7 +31,7 @@ There are also many more actions available for plan blueprints. When you clink o
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role or the tenant specific **TenantPlanManager** role can access this page.
## Navigation ## Navigation

View File

@ -19,7 +19,7 @@ You can also create new or edit / remove sources by clicking to the `+ Create Pr
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role can access this page.
## Navigation ## Navigation

View File

@ -0,0 +1,49 @@
---
sidebar_position: 13
description: Manage all entity locks
---
# Entity Locks
In this page, there is a listing where you can view details about all the actively locked entites.
:::info
When a user edits a [plan](/docs/documentation/application/plans) or a [description](/docs/documentation/application/descriptions), no other user can make changes on them at the same time. This is forced by an implemented locking mechanism. All the locks are eventually removed after some period of inactivity on the entities or when the user is done editing them.
:::
The information displayed by default is: the `target` which is the id of the entity, the `type` of the entity and timestamps for the `locking` and `updating` of the locks. At the top right corner of the listing you can also select which columns to display.
:::tip
For entity locks, all the columns are visible by default.
:::
You can manually remove a lock by clicking on the three dots on the far right corner of the records and then select `Delete`.
## Authorization
Only users that have the global **Admin** role can access this page.
## Navigation
This view is available when the user presses the `Entity Locks` link from the side navigation menu.
## Pagination
Not all the records are being displayed at once. By default, there is a pagination of 10 records applied to them.
You can control how many records are being displayed at any time, by adjusting the `items per page` control at the bottom left corner of the table.
## Filtering
There are some filtering options available for users.
- **Users**: You can filter locks by their user. You can select one or more users.<br/>*By default, no user is selected.*
- **Types**: You can filter locks by the entity type they act uppon. You can select one or more types.<br/>*By default, no type is selected.*
In order for the filters to apply, you have to click the `Apply filters` button.
You can also clear any filters already applied, by pressing the `clear all filters` option, located at the top of the popup.

View File

@ -21,7 +21,7 @@ Editing and removing existing languages is also possible by clicking on the tree
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role or the tenant specific **TenantConfigManager** role can access this page.
## Navigation ## Navigation

View File

@ -19,7 +19,7 @@ You can also create new or edit / remove notification templates by clicking to t
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role or the tenant specific **TenantConfigManager** role can access this page.
## Navigation ## Navigation

View File

@ -25,7 +25,7 @@ You can also create new or edit / remove reference types by clicking to the `+ C
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role can access this page.
## Navigation ## Navigation

View File

@ -16,7 +16,7 @@ When you select both options above, the **supportive material editor** is openin
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role or the tenant specific **TenantConfigManager** role can access this page.
## Navigation ## Navigation

View File

@ -19,7 +19,7 @@ You can also create new or remove template types by clicking to the `Create Desc
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role or the tenant specific **TenantPlanManager** role can access this page.
## Navigation ## Navigation

View File

@ -33,7 +33,7 @@ There are also many more actions available for description templates. When you c
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role or the tenant specific **TenantPlanManager** role can access this page.
## Navigation ## Navigation
@ -162,6 +162,12 @@ For every question you configure, you can view a live preview on how it will loo
::: :::
:::info
You can invite users to the templates so that they can also edit them.
:::
--- ---
<DocCardList /> <DocCardList />

View File

@ -1,5 +1,5 @@
--- ---
sidebar_position: 11 sidebar_position: 12
description: Configure the tenant you are logged in with description: Configure the tenant you are logged in with
--- ---
@ -7,12 +7,6 @@ description: Configure the tenant you are logged in with
On this page, we can configure the tenant we are logged in with. The configuration options are separated in the following sections. On this page, we can configure the tenant we are logged in with. The configuration options are separated in the following sections.
:::info
Only tenant administrators can access this page.
:::
<details> <details>
<summary>Default Tenant Locale</summary> <summary>Default Tenant Locale</summary>
@ -72,4 +66,8 @@ Here we can upload an extra logo, which will be displayed next to the platform l
<summary>Notification Preferences</summary> <summary>Notification Preferences</summary>
Here we specify the notification preferences, which will be applied by default to the users of this tenant. For every notification case, we can specify the channels which will be used and their priority. Here we specify the notification preferences, which will be applied by default to the users of this tenant. For every notification case, we can specify the channels which will be used and their priority.
</details> </details>
## Authorization
Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role can access this page.

View File

@ -0,0 +1,53 @@
---
sidebar_position: 11
description: Manage all tenant based user roles
---
# Tenant Users
In this page, there is a listing where you can view details about all the tenant registered users.
:::info
Users that are not assigned to a specific tenant are always assigned to the *default* tenant. If you are an administrator on a tenant, you can view the assigned users and their roles in this page by selecting your tenant from the respective top navigation menu dropdown. If you do not belong to a tenant, that dropdown won't be available for you.
:::
The information displayed by default is: the `name` of the users, the `status` of their accounts and timestamps for the `creation` and `updates` of the records. At the top right corner of the listing you can also select which columns to display.
:::tip
For tenant users, there is a column for `emails`, hidden by default.
:::
You can assign new or remove assigned tenant roles from users by clicking to the icon next to the roles column. When you click it, a multiselect dropdown is made available in the roles column.
You can also invite users by clicking the `Invite users` button at the top of the listing, as well as export the users list in **.csv** format by clicking the `Export Users` button respectively.
For the user invitation, you will have to provide an email and a list of the roles you want the user to be assigned with, on the currently selected tenant.
## Authorization
Only users that have the global **Admin** role or the tenant specific **TenantAdmin** role can access this page.
## Navigation
This view is available when the user presses the `Tenant Users` link from the side navigation menu.
## Pagination
Not all the records are being displayed at once. By default, there is a pagination of 10 records applied to them.
You can control how many records are being displayed at any time, by adjusting the `items per page` control at the bottom left corner of the table.
## Filtering
There are some filtering options available for users.
- **Is Active**: By toggling this control you can view only the active or only the disabled users.<br/>*By default, this option is set to true.*
- **Roles**: You can filter users by their assigned roles. You can select one or more roles.<br/>*By default, no role is selected.*
In order for the filters to apply, you have to click the `Apply filters` button.
You can also clear any filters already applied, by pressing the `clear all filters` option, located at the top of the popup.

View File

@ -19,7 +19,7 @@ You can also create new or edit / remove tenants by clicking to the `Create Tena
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the global **InstallationAdmin** role can access this page.
## Navigation ## Navigation

View File

@ -19,7 +19,7 @@ You can also assign new or remove assigned roles from users by clicking to the i
## Authorization ## Authorization
Only users that have the **Admin** role can access this page. Only users that have the global **Admin** role or the global **InstallationAdmin** role can access this page.
## Navigation ## Navigation

View File

@ -12,7 +12,7 @@ import Admonition from '@theme/Admonition';
The swagger UI is available at the `/swagger-ui/index.html` url. It contains documentation for the following API endpoints. The swagger UI is available at the `/swagger-ui/index.html` url. It contains documentation for the following API endpoints.
<Tabs> <Tabs>
<TabItem value="public" label="Legacy"> <TabItem value="legacy" label="Legacy">
- **/api/public/dmps/\*\*** - **/api/public/dmps/\*\***
- **/api/public/descriptions/\*\*** - **/api/public/descriptions/\*\***
@ -22,10 +22,16 @@ The swagger UI is available at the `/swagger-ui/index.html` url. It contains doc
</Admonition> </Admonition>
</TabItem> </TabItem>
<TabItem value="internal" label="Current"> <TabItem value="current" label="Current">
- **/api/dmp/\*\*** - **/api/dmp/\*\***
- **/api/description/\*\*** - **/api/description/\*\***
- **/api/description-template/\*\***
- **/api/description-template-type/\*\***
- **/api/dmp-blueprint/\*\***
- **/api/entity-doi/\*\***
- **/api/deposit/\*\***
- **/api/file-transformer/\*\***
<Admonition type="info"> <Admonition type="info">
<p>These endpoints require authentication.</p> <p>These endpoints require authentication.</p>

View File

@ -1,7 +0,0 @@
{
"label": "Tutorials",
"position": 1,
"link": {
"type": "generated-index"
}
}

View File

@ -1,47 +0,0 @@
---
sidebar_position: 1
---
# Tutorial Intro
Let's discover **Docusaurus in less than 5 minutes**.
## Getting Started
Get started by **creating a new site**.
Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**.
### What you'll need
- [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
- When installing Node.js, you are recommended to check all checkboxes related to dependencies.
## Generate a new site
Generate a new Docusaurus site using the **classic template**.
The classic template will automatically be added to your project after you run the command:
```bash
npm init docusaurus@latest my-website classic
```
You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor.
The command also installs all necessary dependencies you need to run Docusaurus.
## Start your site
Run the development server:
```bash
cd my-website
npm run start
```
The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there.
The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/.
Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes.

View File

@ -1,8 +0,0 @@
{
"label": "Tutorial - Basics",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn the most important Docusaurus concepts."
}
}

View File

@ -1,23 +0,0 @@
---
sidebar_position: 6
---
# Congratulations!
You have just learned the **basics of Docusaurus** and made some changes to the **initial template**.
Docusaurus has **much more to offer**!
Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**.
Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610)
## What's next?
- Read the [official documentation](https://docusaurus.io/)
- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config)
- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration)
- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout)
- Add a [search bar](https://docusaurus.io/docs/search)
- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase)
- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support)

View File

@ -1,34 +0,0 @@
---
sidebar_position: 3
---
# Create a Blog Post
Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed...
## Create your first Post
Create a file at `blog/2021-02-28-greetings.md`:
```md title="blog/2021-02-28-greetings.md"
---
slug: greetings
title: Greetings!
authors:
- name: Joel Marcey
title: Co-creator of Docusaurus 1
url: https://github.com/JoelMarcey
image_url: https://github.com/JoelMarcey.png
- name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png
tags: [greetings]
---
Congratulations, you have made your first post!
Feel free to play around and edit this post as much as you like.
```
A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings).

View File

@ -1,57 +0,0 @@
---
sidebar_position: 2
---
# Create a Document
Documents are **groups of pages** connected through:
- a **sidebar**
- **previous/next navigation**
- **versioning**
## Create your first Doc
Create a Markdown file at `docs/hello.md`:
```md title="docs/hello.md"
# Hello
This is my **first Docusaurus document**!
```
A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello).
## Configure the Sidebar
Docusaurus automatically **creates a sidebar** from the `docs` folder.
Add metadata to customize the sidebar label and position:
```md title="docs/hello.md" {1-4}
---
sidebar_label: 'Hi!'
sidebar_position: 3
---
# Hello
This is my **first Docusaurus document**!
```
It is also possible to create your sidebar explicitly in `sidebars.js`:
```js title="sidebars.js"
export default {
tutorialSidebar: [
'intro',
// highlight-next-line
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
};
```

View File

@ -1,43 +0,0 @@
---
sidebar_position: 1
---
# Create a Page
Add **Markdown or React** files to `src/pages` to create a **standalone page**:
- `src/pages/index.js``localhost:3000/`
- `src/pages/foo.md``localhost:3000/foo`
- `src/pages/foo/bar.js``localhost:3000/foo/bar`
## Create your first React Page
Create a file at `src/pages/my-react-page.js`:
```jsx title="src/pages/my-react-page.js"
import React from 'react';
import Layout from '@theme/Layout';
export default function MyReactPage() {
return (
<Layout>
<h1>My React page</h1>
<p>This is a React page</p>
</Layout>
);
}
```
A new page is now available at [http://localhost:3000/my-react-page](http://localhost:3000/my-react-page).
## Create your first Markdown Page
Create a file at `src/pages/my-markdown-page.md`:
```mdx title="src/pages/my-markdown-page.md"
# My Markdown page
This is a Markdown page
```
A new page is now available at [http://localhost:3000/my-markdown-page](http://localhost:3000/my-markdown-page).

View File

@ -1,31 +0,0 @@
---
sidebar_position: 5
---
# Deploy your site
Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**).
It builds your site as simple **static HTML, JavaScript and CSS files**.
## Build your site
Build your site **for production**:
```bash
npm run build
```
The static files are generated in the `build` folder.
## Deploy your site
Test your production build locally:
```bash
npm run serve
```
The `build` folder is now served at [http://localhost:3000/](http://localhost:3000/).
You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**).

View File

@ -1,152 +0,0 @@
---
sidebar_position: 4
---
# Markdown Features
Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**.
## Front Matter
Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/):
```text title="my-doc.md"
// highlight-start
---
id: my-doc-id
title: My document title
description: My document description
slug: /my-custom-url
---
// highlight-end
## Markdown heading
Markdown text with [links](./hello.md)
```
## Links
Regular Markdown links are supported, using url paths or relative file paths.
```md
Let's see how to [Create a page](/create-a-page).
```
```md
Let's see how to [Create a page](./create-a-page.md).
```
**Result:** Let's see how to [Create a page](./create-a-page.md).
## Images
Regular Markdown images are supported.
You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
```md
![Docusaurus logo](/img/docusaurus.png)
```
![Docusaurus logo](/img/docusaurus.png)
You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:
```md
![Docusaurus logo](./img/docusaurus.png)
```
## Code Blocks
Markdown code blocks are supported with Syntax highlighting.
````md
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
````
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
## Admonitions
Docusaurus has a special syntax to create admonitions and callouts:
```md
:::tip My tip
Use this awesome feature option
:::
:::danger Take care
This action is dangerous
:::
```
:::tip My tip
Use this awesome feature option
:::
:::danger Take care
This action is dangerous
:::
## MDX and React Components
[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**:
```jsx
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`)
}}>
{children}
</span>
);
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
This is <Highlight color="#1877F2">Facebook blue</Highlight> !
```
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`);
}}>
{children}
</span>
);
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
This is <Highlight color="#1877F2">Facebook blue</Highlight> !

View File

@ -1,7 +0,0 @@
{
"label": "Tutorial - Extras",
"position": 3,
"link": {
"type": "generated-index"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

View File

@ -1,55 +0,0 @@
---
sidebar_position: 1
---
# Manage Docs Versions
Docusaurus can manage multiple versions of your docs.
## Create a docs version
Release a version 1.0 of your project:
```bash
npm run docusaurus docs:version 1.0
```
The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created.
Your docs now have 2 versions:
- `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs
- `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs**
## Add a Version Dropdown
To navigate seamlessly across versions, add a version dropdown.
Modify the `docusaurus.config.js` file:
```js title="docusaurus.config.js"
export default {
themeConfig: {
navbar: {
items: [
// highlight-start
{
type: 'docsVersionDropdown',
},
// highlight-end
],
},
},
};
```
The docs version dropdown appears in your navbar:
![Docs Version Dropdown](./img/docsVersionDropdown.png)
## Update an existing version
It is possible to edit versioned docs in their respective folder:
- `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello`
- `docs/hello.md` updates `http://localhost:3000/docs/next/hello`

View File

@ -1,88 +0,0 @@
---
sidebar_position: 2
---
# Translate your site
Let's translate `docs/intro.md` to French.
## Configure i18n
Modify `docusaurus.config.js` to add support for the `fr` locale:
```js title="docusaurus.config.js"
export default {
i18n: {
defaultLocale: 'en',
locales: ['en', 'fr'],
},
};
```
## Translate a doc
Copy the `docs/intro.md` file to the `i18n/fr` folder:
```bash
mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/
cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md
```
Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French.
## Start your localized site
Start your site on the French locale:
```bash
npm run start -- --locale fr
```
Your localized site is accessible at [http://localhost:3000/fr/](http://localhost:3000/fr/) and the `Getting Started` page is translated.
:::caution
In development, you can only use one locale at a time.
:::
## Add a Locale Dropdown
To navigate seamlessly across languages, add a locale dropdown.
Modify the `docusaurus.config.js` file:
```js title="docusaurus.config.js"
export default {
themeConfig: {
navbar: {
items: [
// highlight-start
{
type: 'localeDropdown',
},
// highlight-end
],
},
},
};
```
The locale dropdown now appears in your navbar:
![Locale Dropdown](./img/localeDropdown.png)
## Build your localized site
Build your site for a specific locale:
```bash
npm run build -- --locale fr
```
Or build your site to include all the locales at once:
```bash
npm run build
```

View File

@ -74,12 +74,6 @@ const config: Config = {
position: 'left', position: 'left',
label: 'Documentation', label: 'Documentation',
}, },
{
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'left',
label: 'Tutorials',
},
{ {
href: 'https://test4.opendmp.eu/splash/', href: 'https://test4.opendmp.eu/splash/',
label: 'Visit OpenCDMP', label: 'Visit OpenCDMP',

View File

@ -12,21 +12,7 @@ import type {SidebarsConfig} from '@docusaurus/plugin-content-docs';
*/ */
const sidebars: SidebarsConfig = { const sidebars: SidebarsConfig = {
// By default, Docusaurus generates a sidebar from the docs folder structure // By default, Docusaurus generates a sidebar from the docs folder structure
documentationSidebar: [{type: 'autogenerated', dirName: 'documentation'}], documentationSidebar: [{type: 'autogenerated', dirName: 'documentation'}]
tutorialSidebar: [{type: 'autogenerated', dirName: 'tutorials'}]
// But you can create a sidebar manually
/*
tutorialSidebar: [
'intro',
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
*/
}; };
export default sidebars; export default sidebars;