cloudstack/ui/docs/config.md
Rohit Yadav 38cf569b27 docs: fixes and updates
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:13 +05:30

64 lines
2.7 KiB
Markdown

## Configuration
### Section Config Definition
A new section may be added in `src/config/section` and in `src/config/router.js`
import the new section (newconfig.js as example) configuration file and rules to
`asyncRouterMap` as:
import newconfig from '@/config/section/newconfig'
[ ... snipped ... ]
generateRouterMap(newSection),
### API
An existing or new section config/js file must export the following parameters:
- `name`: unique path in URL
- `title`: the name to be displayed in navigation and breadcrumb
- `icon`: the icon to be displayed, from AntD's icon set https://vue.ant.design/components/icon/
- `children`: (optional) array of resources sub-navigation under the parent group
- `permission`: when children are not defined, the array of API to check against
allowed auto-discovered APIs
- `columns`: when children is not defined, list of column keys
- `component`: when children is not defined, the custom component for rendering
the route view
See `src/config/section/compute.js` and `src/config/section/project.js` for example.
The children should have:
- `name`: unique path in the URL
- `title`: the name to be displayed in navigation and breadcrumb
- `icon`: the icon to be displayed, from AntD's icon set https://vue.ant.design/components/icon/
- `permission`: the array of API to check against auto-discovered APIs
- `columns`: list of column keys for list view rendering
- `details`: list of keys for detail list rendering for a resource
- `tabs`: array of custom components that will get rendered as tabs in the
resource view
- `component`: the custom component for rendering the route view
default list view (table)
- `actions`: arrays of actions/buttons
### Action API
The actions defined for a children show up as group of buttons on the default
autogen view (that shows tables, actions etc.). Each action item should define:
- `api`: The CloudStack API for the action
- `icon`: the icon to be displayed, from AntD's icon set https://vue.ant.design/components/icon/
- `label`: The action button name label
- `listView`: (boolean) whether to show the action button in list view (table)
- `dataView`: (boolean) whether to show the action button in resource/data view
- `groupAction`: Whether the button supports groupable actions when multiple
items are selected in the table
- `options`: list of API arguments to render/show on auto-generated action form
- `hidden`: function that takes in a records and returns a boolean to control if
the action button needs to be disabled/hidden
- `component`: the custom component to render the action (in a separate route view)
- `popup`: (boolean) when true, displays any custom component in a popup modal
than in its separate route view