[ADF-5252] Disable settings and about pages by default ()

* move Settings readme to the plugin itself

* disable settings, update readme

* about plugin readme

* disable about module
This commit is contained in:
Denys Vuika 2020-11-10 17:03:19 +00:00 committed by GitHub
parent bfe6fb2bc9
commit 99140b3ac9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 154 additions and 171 deletions

@ -16,7 +16,6 @@ Learn how to extend the features of the Alfresco Content Application.
- [Actions](/extending/actions)
- [Application actions](/extending/application-actions)
- [Rules](/extending/rules)
- [Settings](/extending/settings)
- [Application features](/extending/application-features)
- [Custom icons](/extending/icons)
- [Registration](/extending/registration)

@ -1,45 +0,0 @@
---
Title: Settings
---
# Settings
The application settings can be accessed via the `/settings` route.
You can project custom configuration groups via the `settings` section:
```json
{
"settings": [
{
"id": "extensions.ps.settings",
"name": "Extensions: Process Services",
"parameters": [
{
"name": "Enable Process Services Extensions",
"key": "processServices",
"type": "boolean",
"value": false
}
]
}
]
}
```
At runtime, you are going to get an extra group called "Extensions: Process Services"
with a custom boolean setting "Enable Process Services Extensions".
![Custom settings group](../images/aca-settings-custom-group.png)
## Parameters
Each setting parameter object supports the following properties:
| Property | Description |
| -------- | ----------------------------------------------- |
| id | (optional) Unique identifier |
| name | Public name, can be translation key |
| key | The key to use when saving to the storage |
| type | The type of the value (boolean / string) |
| value | (optional) Default value to use for the setting |

@ -1,24 +1,66 @@
# AcaAbout
# About Plugin for Alfresco Content App
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.14.
Provides the "About" page for ACA and ACA-based apps.
## Code scaffolding
## Installing
Run `ng generate component component-name --project aca-about` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project aca-about`.
> Note: Don't forget to add `--project aca-about` or else it will be added to the default project in your `angular.json` file.
Import the module into the application:
## Build
```ts
// src/app/extensions.module.ts
Run `ng build aca-about` to build the project. The build artifacts will be stored in the `dist/` directory.
import { AcaAboutModule } from '@alfresco/aca-about';
## Publishing
@NgModule({
imports: [
// other modules
AcaAboutModule
]
})
export class AcaAboutModule {}
```
After building your library with `ng build aca-about`, go to the dist folder `cd dist/aca-about` and run `npm publish`.
Update the `app.extensions.json` extension configuration to enable extra routes and components:
## Running unit tests
```json
{
"actions": [
{
"id": "app.actions.about",
"type": "NAVIGATE_URL",
"payload": "/about"
}
],
Run `ng test aca-about` to execute the unit tests via [Karma](https://karma-runner.github.io).
"routes": [
{
"id": "app.about",
"path": "about",
"layout": "app.layout.main",
"component": "app.about.component"
}
],
## Further help
"features": {
"header": [
{
"id": "app.header.more",
"children": [
{
"id": "app.header.about",
"order": 100,
"title": "APP.BROWSE.ABOUT.TITLE",
"description": "APP.BROWSE.ABOUT.TITLE",
"icon": "info",
"actions": {
"click": "app.actions.about"
}
}
]
}
]
}
}
```
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
Compile and distribute/run the application.

@ -1,24 +1,108 @@
# AcaSettings
---
Title: Settings
---
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.14.
# Settings
## Code scaffolding
The application settings can be accessed via the `/settings` route.
Run `ng generate component component-name --project aca-settings` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project aca-settings`.
> Note: Don't forget to add `--project aca-settings` or else it will be added to the default project in your `angular.json` file.
You can project custom configuration groups via the `settings` section:
## Build
```json
{
"settings": [
{
"id": "extensions.ps.settings",
"name": "Extensions: Process Services",
"parameters": [
{
"name": "Enable Process Services Extensions",
"key": "processServices",
"type": "boolean",
"value": false
}
]
}
]
}
```
Run `ng build aca-settings` to build the project. The build artifacts will be stored in the `dist/` directory.
At runtime, you are going to get an extra group called "Extensions: Process Services"
with a custom boolean setting "Enable Process Services Extensions".
## Publishing
![Custom settings group](assets/aca-settings-custom-group.png)
After building your library with `ng build aca-settings`, go to the dist folder `cd dist/aca-settings` and run `npm publish`.
## Parameters
## Running unit tests
Each setting parameter object supports the following properties:
Run `ng test aca-settings` to execute the unit tests via [Karma](https://karma-runner.github.io).
| Property | Description |
| -------- | ----------------------------------------------- |
| id | (optional) Unique identifier |
| name | Public name, can be translation key |
| key | The key to use when saving to the storage |
| type | The type of the value (boolean / string) |
| value | (optional) Default value to use for the setting |
## Further help
# Installing
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
Import the module into the application:
```ts
// src/app/extensions.module.ts
import { AcaSettingsModule } from '@alfresco/aca-settings';
@NgModule({
imports: [
// other modules
AcaSettingsModule
]
})
export class AppExtensionsModule {}
```
Update the `app.extensions.json` extension configuration to enable extra routes and components:
```json
{
"actions": [
{
"id": "app.actions.settings",
"type": "NAVIGATE_URL",
"payload": "/settings"
}
],
"routes": [
{
"id": "app.settings",
"path": "settings",
"layout": "blank",
"component": "app.settings.component"
}
],
"features": {
"header": [
{
"id": "app.header.more",
"children": [
{
"id": "app.header.settings",
"order": 110,
"title": "APP.SETTINGS.TITLE",
"description": "APP.SETTINGS.TITLE",
"icon": "info",
"actions": {
"click": "app.actions.settings"
}
}
]
}
]
}
}
```
Compile and distribute/run the application.

@ -25,13 +25,11 @@
import { NgModule } from '@angular/core';
import { AosExtensionModule } from '@alfresco/adf-office-services-ext';
import { AcaAboutModule } from '@alfresco/aca-about';
import { AcaSettingsModule } from '@alfresco/aca-settings';
// Main entry point for external extensions only.
// For any application-specific code use CoreExtensionsModule instead.
@NgModule({
imports: [AosExtensionModule, AcaAboutModule, AcaSettingsModule]
imports: [AosExtensionModule]
})
export class AppExtensionsModule {}

@ -8,9 +8,7 @@
"$runtime": "1.7.0",
"$description": "Core application extensions and features",
"$references": [
"aos.plugin.json",
"app.about.json",
"app.settings.json"
"aos.plugin.json"
],
"rules": [

@ -1,46 +0,0 @@
{
"$schema": "../../../extension.schema.json",
"$id": "app.about",
"$name": "app.about",
"$version": "1.0.0",
"$vendor": "Alfresco Software, Ltd.",
"$license": "LGPL-3.0",
"$description": "Application About Screen",
"actions": [
{
"id": "app.actions.about",
"type": "NAVIGATE_URL",
"payload": "/about"
}
],
"routes": [
{
"id": "app.about",
"path": "about",
"layout": "app.layout.main",
"component": "app.about.component"
}
],
"features": {
"header": [
{
"id": "app.header.more",
"children": [
{
"id": "app.header.about",
"order": 100,
"title": "APP.BROWSE.ABOUT.TITLE",
"description": "APP.BROWSE.ABOUT.TITLE",
"icon": "info",
"actions": {
"click": "app.actions.about"
}
}
]
}
]
}
}

@ -1,46 +0,0 @@
{
"$schema": "../../../extension.schema.json",
"$id": "app.settings",
"$name": "app.settings",
"$version": "1.0.0",
"$vendor": "Alfresco Software, Ltd.",
"$license": "LGPL-3.0",
"$description": "Application Settings Screen",
"actions": [
{
"id": "app.actions.settings",
"type": "NAVIGATE_URL",
"payload": "/settings"
}
],
"routes": [
{
"id": "app.settings",
"path": "settings",
"layout": "blank",
"component": "app.settings.component"
}
],
"features": {
"header": [
{
"id": "app.header.more",
"children": [
{
"id": "app.header.settings",
"order": 110,
"title": "APP.SETTINGS.TITLE",
"description": "APP.SETTINGS.TITLE",
"icon": "info",
"actions": {
"click": "app.actions.settings"
}
}
]
}
]
}
}