Skip to content

Commit

Permalink
Merge pull request #8 from abap2UI5/test
Browse files Browse the repository at this point in the history
Test
  • Loading branch information
oblomov-dev authored Oct 13, 2024
2 parents 3c53769 + dd92a94 commit 7592c78
Show file tree
Hide file tree
Showing 17 changed files with 238 additions and 142 deletions.
1 change: 1 addition & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,4 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

143 changes: 72 additions & 71 deletions docs/.vitepress/config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,19 @@ import { defineConfig } from 'vitepress'

// https://vitepress.dev/reference/site-config
export default defineConfig({
lastUpdated: {
text: 'Updated at',
formatOptions: {
dateStyle: 'full',
timeStyle: 'medium'
}
},
base: '/docs/', // Set your base URL here
head: [
['link', { rel: 'shortcut icon', href: '/docs/favicon.ico' }],
['link', { rel: 'apple-touch-icon', sizes: '180x180', href: '/docs/favicon.ico' }],
['link', { rel: 'stylesheet', href: 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css' }],

],
title: "abap2UI5",
description: "Developing Purely in ABAP",
Expand All @@ -32,26 +41,18 @@ export default defineConfig({
{ text: 'Technical Insights', link: '/insights/insights' },
{ text: 'Resources', link: '/resources/resources' },
]},
{ text: 'Jump', items: [
{ text: 'Repositories', items: [
{ text: 'Project', link: '/item-1' },
{ text: 'Downports', link: '/item-2' },
{ text: 'Issues', link: '/item-2' },
]},
{ text: 'Connectors', items: [
{ text: 'Addons', link: '/item-1' },
{ text: 'Alln', link: '/item-2' },
{ text: 'Issues', link: '/item-2' }
]},
{ text: 'Addons', items: [
{ text: 'Addons', link: '/item-1' },
{ text: 'Alln', link: '/item-2' },
{ text: 'Issues', link: '/item-2' },
{ text: 'Links', items: [
{ text: 'Project', items: [
{ text: 'abap2UI5', link: 'https://github.com/abap2UI5/abap2UI5' },
{ text: 'samples', link: 'https://github.com/abap2UI5/samples' },
{ text: 'docs', link: 'https://github.com/abap2UI5/docs' },
{ text: 'issues', link: 'https://github.com/abap2UI5/abap2UI5/issues' },
]},
{ text: 'Apps', items: [
{ text: 'Addons', link: '/item-1' },
{ text: 'Alln', link: '/item-2' },
{ text: 'Issues', link: '/item-2' },
{ text: 'More', items: [
{ text: 'addons', link: 'https://github.com/abap2UI5-addons' },
{ text: 'connectors', link: 'https://github.com/abap2UI5-connectors' },
{ text: 'apps', link: 'https://github.com/abap2UI5-apps' },
{ text: 'downports', link: 'https://github.com/abap2UI5-downports' },
]},
]},
{ text: '1.134.0', items: [
Expand All @@ -78,78 +79,78 @@ export default defineConfig({
link: '/development/development',
collapsed: true,
items: [
{ text: 'Basic Concepts' },
{ text: 'Messages, Errors', link: '/features/' },
{ text: 'Translation, 18n', link: '/features/' },
{ text: 'User Interface', link: '/features/' },
{ text: 'Data Binding', link: '/features/' },
{ text: 'Navigation', link: '/features/' },
{ text: 'Runtime Typed Data', link: '/features/' },
{ text: 'Debugging', link: '/features/' },
{
text: 'Addons', items: [
{ text: 'Popups', link: '/api-examples' },
{ text: 'Layouts & Variants', link: '/api-examples' },
{ text: 'External Libraries', link: '/markdown-examples' },
]
},
{ text: 'General', link: '/development/general' },
// { text: 'Messages, Errors', link: '/features/' },
// { text: 'Translation, 18n', link: '/features/' },
// { text: 'User Interface', link: '/features/' },
// { text: 'Data Binding', link: '/features/' },
// { text: 'Navigation', link: '/features/' },
// { text: 'Runtime Typed Data', link: '/features/' },
// { text: 'Debugging', link: '/features/' },
// {
// text: 'Addons', items: [
// { text: 'Popups', link: '/api-examples' },
// { text: 'Layouts & Variants', link: '/api-examples' },
// { text: 'External Libraries', link: '/markdown-examples' },
// ]
// },
]
},
{
text: 'Configuration',
link: '/configuration/configuration',
collapsed: true,
items: [
{ text: 'General Settings' },
{ text: 'Productive Usage', link: '/features/' },
{ text: 'Performance', link: '/features/faq' },
{ text: 'Security, Authorization', link: '/features/faq' },
{ text: 'Fiori Launchpad', link: '/features/' },
{
text: 'Installation',
items: [
{ text: 'BTP ABAP Environment', link: '/markdown-examples' },
{ text: 'S/4 Public Cloud', link: '/markdown-examples' },
{ text: 'S/4 Private Cloud', link: '/markdown-examples' },
{ text: 'R/3 Netweaver', link: '/markdown-examples' }
]
},
{
text: 'More',
items: [
{ text: 'SE80 or ADT', link: '/features/faq' },
{ text: 'UI5 Versions', link: '/features/faq' },
{ text: 'ABAP Versions', link: '/features/faq' },
]
}
{ text: 'General', link: '/configuration/general' },
// { text: 'Productive Usage', link: '/features/' },
// { text: 'Performance', link: '/features/faq' },
// { text: 'Security, Authorization', link: '/features/faq' },
// { text: 'Fiori Launchpad', link: '/features/' },
// {
// text: 'Installation',
// items: [
// { text: 'BTP ABAP Environment', link: '/markdown-examples' },
// { text: 'S/4 Public Cloud', link: '/markdown-examples' },
// { text: 'S/4 Private Cloud', link: '/markdown-examples' },
// { text: 'R/3 Netweaver', link: '/markdown-examples' }
// ]
// },
// {
// text: 'More',
// items: [
// { text: 'SE80 or ADT', link: '/features/faq' },
// { text: 'UI5 Versions', link: '/features/faq' },
// { text: 'ABAP Versions', link: '/features/faq' },
// ]
// }
]
},
{
text: 'Advanced Topics',
link: '/advanced/advanced',
collapsed: true,
items: [
{ text: 'BTP Workzone', link: '/features/' },
{ text: 'Stateful Sessions', link: '/features/' },
{ text: 'Remotely App Call', link: '/features/' },
{ text: 'Downporting', link: '/features/' },
{ text: 'Renaming', link: '/features/' },
{ text: 'JS Transpiling', link: '/features/' },
{
text: 'Extensibility',
items: [
{ text: 'Custom JS', link: '/features/' },
{ text: 'Custom Controls', link: '/features/' },
{ text: 'External Libraries', link: '/features/' },
]
},
// { text: 'BTP Workzone', link: '/features/' },
// { text: 'Stateful Sessions', link: '/features/' },
// { text: 'Remotely App Call', link: '/features/' },
{ text: 'Downporting', link: '/advanced/downporting/' },
{ text: 'Renaming', link: '/advanced/renaming/' },
// { text: 'JS Transpiling', link: '/features/' },
// {
// text: 'Extensibility',
// items: [
// { text: 'Custom JS', link: '/features/' },
// { text: 'Custom Controls', link: '/features/' },
// { text: 'External Libraries', link: '/features/' },
// ]
// },
]
},
{
text: 'Technical Insights',
link: '/insights/insights',
collapsed: true,
items: [ { text: '...', link: '/insights/insights' }, ]
items: [ { text: 'General', link: '/insights/general' }, ]
},
{
text: 'Resources',
Expand Down
13 changes: 13 additions & 0 deletions docs/.vitepress/theme/style.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
:root {
--vp-home-hero-name-color: #d03c4a; /* Replace this with the color from logo.png */
--vp-button-brand-bg: #d03c4a; /* Ändern Sie dies in die gewünschte Farbe */
--vp-button-brand-border: #d03c4a; /* Ändern Sie dies in die gewünschte Farbe */
--vp-button-brand-text: #ffffff; /* Ändern Sie dies in die gewünschte Textfarbe */
--vp-button-brand-bg-hover: #a83232; /* Dunkelrot für Hover-Zustand */
--vp-button-brand-border-hover: #a83232; /* Dunkelrot für Hover-Zustand */
}

.VPButton.brand[data-v-2dba8ca9]:hover {
background-color: var(--vp-button-brand-bg-hover);
border-color: var(--vp-button-brand-border-hover);
}
2 changes: 1 addition & 1 deletion docs/advanced/advanced.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Advanced Topics

Explore specialized features and advanced use cases that help you leverage the full power of the framework for complex scenarios and custom solutions.
Explore more features and advanced use cases that help you leverage the full power of the framework.
3 changes: 3 additions & 0 deletions docs/advanced/downporting.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Downporting

Downporting the Source Code of abap2UI5 offers the possibilty to install this project on releases lower than ABAP 7.50. Check out [this blog post](https://www.linkedin.com/pulse/running-abap2ui5-older-r3-releases-downport-compatibility-abaplint-mjkle/) for more information.
19 changes: 19 additions & 0 deletions docs/advanced/extension.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Extension

## Custom JS
Use this for example to install additional custom controls [here:](https://github.com/abap2UI5-addons/custom-controls)
```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
lo_server->main( VALUE #(
custom_js = z2ui5add_cl_cc_websocket=>get_js( )
) ).
```


## Extension
#### 1. **How can i call my own custom function?**
Extend the initial HTTP Get call:<br>
<img width="500" alt="image" src="https://github.com/abap2UI5/abap2UI5-documentation/assets/102328295/b671b89f-530b-4a35-98ba-e1a779fc0087"><br>
And in your application, call the function in the view definition:<br>
<img width="500" alt="image" src="https://github.com/abap2UI5/abap2UI5-documentation/assets/102328295/2f041184-a8c1-4d11-893a-ee6800b3214c">

3 changes: 3 additions & 0 deletions docs/advanced/renaming.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Renaming

Renaming of abap2UI5 Artifacts allows multiple installations of this project in the same system. Check out [this blog article](https://www.linkedin.com/pulse/renaming-abap-artifacts-power-abaplint-github-actions-development-kqede/) for further information and use cases.
36 changes: 11 additions & 25 deletions docs/configuration/basics.md → docs/configuration/general.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
# Configuration
---
outline: [2, 4]
---

# General

### HTTP Handler

abap2UI5 can be run with various custom configurations. This is the call for the default setup:
```abap
Expand All @@ -10,7 +16,7 @@ abap2UI5 can be run with various custom configurations. This is the call for the
```
For custom configurations, simply create a config variable and import it to the main method:

## Theme
### Theme
eg. for changing the theme the source code looks like this:
```abap
METHOD if_http_extension~handle_request.
Expand All @@ -23,7 +29,7 @@ eg. for changing the theme the source code looks like this:
ENDMETHOD.
```

## UI5 Bootstrapping
### UI5 Bootstrapping

```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
Expand All @@ -32,27 +38,7 @@ eg. for changing the theme the source code looks like this:
) ).
```

## Custom JS
Use this for example to install additional custom controls [here:](https://github.com/abap2UI5-addons/custom-controls)
```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
lo_server->main( VALUE #(
custom_js = z2ui5add_cl_cc_websocket=>get_js( )
) ).
```

## Content-Security-Policy

```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
lo_server->main( VALUE #(
content_security_policy = ` <meta http-equiv="Content-Security-Policy" content="default-src 'self' 'unsafe-inline' 'unsafe-eval' data: ` && |\n| &&
` ui5.sap.com *.ui5.sap.com sapui5.hana.ondemand.com *.sapui5.hana.ondemand.com ` && |\n| &&
` sdk.openui5.org *.sdk.openui5.org "/>`
) ).
```

## Title
### Title

```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
Expand All @@ -61,7 +47,7 @@ Use this for example to install additional custom controls [here:](https://githu
) ).
```

## Style / CSS
### Style / CSS

```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
Expand Down
12 changes: 12 additions & 0 deletions docs/configuration/productive_usage.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Productive Usage

#### **1. Can abap2UI5 used in a productive system?**
The project is technically just an implementation of an HTTP handler and can be used as any other HTTP Service also in a productive scenario.
#### **2. Are there any dependencies or preparations needed before using abap2UI5 in a productiv scenario?**
No, but it is recommended to follow these steps before using abap2UI5 apps in a productive scenario:
1. Transport the abap2UI5 HTTP service and the framework first
2. Sometimes an extra activation of the HTTP service is needed, along with an adjustment of the UI5 bootstrapping
3. Test the "hello world" app to ensure that abap2UI5 works correctly
4. Now continue with tranporting your custom apps...
#### **3. Does a stable version of abap2UI5 exist?**
The project will be continuously further developed. Therefore, there is no specific "stable" version. However, adjustments to the public APIs will be kept to a minimum to avoid frequent refactoring of apps. You can use [releases](https://github.com/abap2ui5/abap2ui5/releases/) instead of pulling the main branch and only update from time to time to reduce refactoring efforts.
13 changes: 13 additions & 0 deletions docs/configuration/security_authorization.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Security & Authorization


## Content-Security-Policy

```abap
DATA(lo_server) = z2ui5_cl_http_handler=>factory( server ).
lo_server->main( VALUE #(
content_security_policy = ` <meta http-equiv="Content-Security-Policy" content="default-src 'self' 'unsafe-inline' 'unsafe-eval' data: ` && |\n| &&
` ui5.sap.com *.ui5.sap.com sapui5.hana.ondemand.com *.sapui5.hana.ondemand.com ` && |\n| &&
` sdk.openui5.org *.sdk.openui5.org "/>`
) ).
```
Loading

0 comments on commit 7592c78

Please sign in to comment.