record panel reference
This commit is contained in:
Generated
+19
@@ -341,6 +341,25 @@
|
||||
</SchemaInfo>
|
||||
</value>
|
||||
</entry>
|
||||
<entry key="metadata/app/clientRecord">
|
||||
<value>
|
||||
<SchemaInfo>
|
||||
<option name="generatedName" value="New Schema" />
|
||||
<option name="name" value="metadata/app/clientRecord" />
|
||||
<option name="relativePathToSchema" value="schema/metadata/app/clientRecord.json" />
|
||||
<option name="schemaVersion" value="JSON Schema version 7" />
|
||||
<option name="patterns">
|
||||
<list>
|
||||
<Item>
|
||||
<option name="pattern" value="true" />
|
||||
<option name="path" value="*/Resources/metadata/app/clientRecord.json" />
|
||||
<option name="mappingKind" value="Pattern" />
|
||||
</Item>
|
||||
</list>
|
||||
</option>
|
||||
</SchemaInfo>
|
||||
</value>
|
||||
</entry>
|
||||
<entry key="metadata/app/clientRoutes">
|
||||
<value>
|
||||
<SchemaInfo>
|
||||
|
||||
Vendored
+6
@@ -184,6 +184,12 @@
|
||||
],
|
||||
"url": "./schema/metadata/app/client.json"
|
||||
},
|
||||
{
|
||||
"fileMatch": [
|
||||
"*/Resources/metadata/app/clientRecord.json"
|
||||
],
|
||||
"url": "./schema/metadata/app/clientRecord.json"
|
||||
},
|
||||
{
|
||||
"fileMatch": [
|
||||
"*/Resources/metadata/app/clientRoutes.json"
|
||||
|
||||
@@ -5,21 +5,15 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -5,21 +5,15 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -5,21 +5,15 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -8,41 +8,29 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
],
|
||||
"detailSmall": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -19,46 +19,36 @@
|
||||
"checkVisibilityFunction": "isRejectAvailable"
|
||||
}
|
||||
],
|
||||
"sidePanels":{
|
||||
"detail":[
|
||||
{
|
||||
"name":"activities",
|
||||
"label":"Activities",
|
||||
"view":"crm:views/case/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"history",
|
||||
"label":"History",
|
||||
"view":"crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"tasks",
|
||||
"label":"Tasks",
|
||||
"view":"crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
}
|
||||
"sidePanels": {
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"reference": "activities",
|
||||
"view": "crm:views/case/record/panels/activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"reference": "tasks"
|
||||
}
|
||||
],
|
||||
"detailSmall":[
|
||||
{
|
||||
"name":"activities",
|
||||
"label":"Activities",
|
||||
"view":"crm:views/case/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"history",
|
||||
"label":"History",
|
||||
"view":"crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"tasks",
|
||||
"label":"Tasks",
|
||||
"view":"crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
}
|
||||
"detailSmall": [
|
||||
{
|
||||
"name": "activities",
|
||||
"reference": "activities",
|
||||
"view": "crm:views/case/record/panels/activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
},
|
||||
"filterList": [
|
||||
|
||||
@@ -12,41 +12,29 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
],
|
||||
"detailSmall": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
"recordViews":{
|
||||
"detail":"crm:views/lead/record/detail"
|
||||
},
|
||||
"sidePanels":{
|
||||
"detail":[
|
||||
"sidePanels": {
|
||||
"detail": [
|
||||
{
|
||||
"name":"convertedTo",
|
||||
"label":"Converted To",
|
||||
@@ -18,22 +18,16 @@
|
||||
"isForm": true
|
||||
},
|
||||
{
|
||||
"name":"activities",
|
||||
"label":"Activities",
|
||||
"view":"crm:views/record/panels/activities",
|
||||
"aclScope":"Activities"
|
||||
"name": "activities",
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name":"history",
|
||||
"label":"History",
|
||||
"view":"crm:views/record/panels/history",
|
||||
"aclScope":"Activities"
|
||||
"name": "history",
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name":"tasks",
|
||||
"label":"Tasks",
|
||||
"view":"crm:views/record/panels/tasks",
|
||||
"aclScope":"Task"
|
||||
"name": "tasks",
|
||||
"reference": "tasks"
|
||||
}
|
||||
],
|
||||
"edit":[
|
||||
@@ -47,7 +41,7 @@
|
||||
"isForm": true
|
||||
}
|
||||
],
|
||||
"detailSmall":[
|
||||
"detailSmall": [
|
||||
{
|
||||
"name":"convertedTo",
|
||||
"label":"Converted To",
|
||||
@@ -58,22 +52,16 @@
|
||||
"isForm": true
|
||||
},
|
||||
{
|
||||
"name":"activities",
|
||||
"label":"Activities",
|
||||
"view":"crm:views/record/panels/activities",
|
||||
"aclScope":"Activities"
|
||||
"name": "activities",
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name":"history",
|
||||
"label":"History",
|
||||
"view":"crm:views/record/panels/history",
|
||||
"aclScope":"Activities"
|
||||
"name": "history",
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name":"tasks",
|
||||
"label":"Tasks",
|
||||
"view":"crm:views/record/panels/tasks",
|
||||
"aclScope":"Task"
|
||||
"name": "tasks",
|
||||
"reference": "tasks"
|
||||
}
|
||||
],
|
||||
"editSmall":[
|
||||
|
||||
@@ -10,46 +10,36 @@
|
||||
"list":"crm:views/opportunity/record/list",
|
||||
"kanban": "crm:views/opportunity/record/kanban"
|
||||
},
|
||||
"sidePanels":{
|
||||
"detail":[
|
||||
{
|
||||
"name":"activities",
|
||||
"label":"Activities",
|
||||
"view":"crm:views/opportunity/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"history",
|
||||
"label":"History",
|
||||
"view":"crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"tasks",
|
||||
"label":"Tasks",
|
||||
"view":"crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
}
|
||||
"sidePanels": {
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"reference": "activities",
|
||||
"view": "crm:views/opportunity/record/panels/activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"reference": "tasks"
|
||||
}
|
||||
],
|
||||
"detailSmall":[
|
||||
{
|
||||
"name":"activities",
|
||||
"label":"Activities",
|
||||
"view":"crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"history",
|
||||
"label":"History",
|
||||
"view":"crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
{
|
||||
"name":"tasks",
|
||||
"label":"Tasks",
|
||||
"view":"crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
}
|
||||
"detailSmall": [
|
||||
{
|
||||
"name": "activities",
|
||||
"reference": "activities",
|
||||
"view": "crm:views/opportunity/record/panels/activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"reference": "tasks"
|
||||
}
|
||||
]
|
||||
},
|
||||
"filterList": [
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"panels": {
|
||||
"activities": {
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
"history": {
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
},
|
||||
"tasks": {
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -32,29 +32,21 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
}
|
||||
],
|
||||
"detailSmall": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -66,4 +58,4 @@
|
||||
"filter": "activePortal"
|
||||
},
|
||||
"iconClass": "far fa-user-circle"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,41 +73,31 @@
|
||||
"detail": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/user/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks",
|
||||
"view": "crm:views/user/record/panels/tasks"
|
||||
}
|
||||
],
|
||||
"detailSmall": [
|
||||
{
|
||||
"name": "activities",
|
||||
"label": "Activities",
|
||||
"view": "crm:views/record/panels/activities",
|
||||
"aclScope": "Activities"
|
||||
"reference": "activities"
|
||||
},
|
||||
{
|
||||
"name": "history",
|
||||
"label": "History",
|
||||
"view": "crm:views/record/panels/history",
|
||||
"aclScope": "Activities"
|
||||
"reference": "history"
|
||||
},
|
||||
{
|
||||
"name": "tasks",
|
||||
"label": "Tasks",
|
||||
"view": "crm:views/user/record/panels/tasks",
|
||||
"aclScope": "Task"
|
||||
"reference": "tasks",
|
||||
"view": "crm:views/user/record/panels/tasks"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -82,7 +82,14 @@ class LayoutBottomPanelsDetail extends LayoutSidePanelsDetailView {
|
||||
|
||||
(this.getMetadata()
|
||||
.get(['clientDefs', this.scope, 'bottomPanels', this.viewType]) || []
|
||||
).forEach(item => {
|
||||
).forEach(/** Record */item => {
|
||||
if (item.reference) {
|
||||
item = {
|
||||
...this.getMetadata().get(`app.clientRecord.panels.${item.reference}`),
|
||||
...item,
|
||||
};
|
||||
}
|
||||
|
||||
if (!item.name) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -150,7 +150,14 @@ class LayoutSidePanelsDetailView extends LayoutRowsView {
|
||||
}
|
||||
|
||||
(this.getMetadata().get(['clientDefs', this.scope, 'sidePanels', this.viewType]) || [])
|
||||
.forEach(item => {
|
||||
.forEach(/** Record */item => {
|
||||
if (item.reference) {
|
||||
item = {
|
||||
...this.getMetadata().get(`app.clientRecord.panels.${item.reference}`),
|
||||
...item,
|
||||
};
|
||||
}
|
||||
|
||||
if (!item.name) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -50,9 +50,23 @@ class DetailBottomRecordView extends PanelsContainerRecordView {
|
||||
setupPanels() {
|
||||
const scope = this.scope;
|
||||
|
||||
this.panelList = Espo.Utils.clone(
|
||||
this.getMetadata()
|
||||
.get(['clientDefs', scope, 'bottomPanels', this.type]) || this.panelList || []);
|
||||
this.panelList = this.getMetadata().get(['clientDefs', scope, 'bottomPanels', this.type]) ||
|
||||
this.panelList || [];
|
||||
|
||||
this.panelList = [...this.panelList].map(item => {
|
||||
if ('reference' in item && item.reference) {
|
||||
// noinspection UnnecessaryLocalVariableJS
|
||||
/** @type {module:views/record/panels-container~panel} */
|
||||
const newItem = {
|
||||
...this.getMetadata().get(`app.clientRecord.panels.${item.reference}`),
|
||||
...item,
|
||||
};
|
||||
|
||||
return newItem;
|
||||
}
|
||||
|
||||
return item;
|
||||
});
|
||||
|
||||
this.panelList.forEach(item => {
|
||||
if ('index' in item) {
|
||||
|
||||
@@ -111,6 +111,21 @@ class DetailSideRecordView extends PanelsContainerRecordView {
|
||||
});
|
||||
}
|
||||
|
||||
this.panelList = this.panelList.map(item => {
|
||||
if ('reference' in item && item.reference) {
|
||||
// noinspection UnnecessaryLocalVariableJS
|
||||
/** @type {module:views/record/panels-container~panel} */
|
||||
const newItem = {
|
||||
...this.getMetadata().get(`app.clientRecord.panels.${item.reference}`),
|
||||
...item,
|
||||
};
|
||||
|
||||
return newItem;
|
||||
}
|
||||
|
||||
return item;
|
||||
});
|
||||
|
||||
this.panelList = this.panelList.filter((p) => {
|
||||
if (p.aclScope) {
|
||||
if (!this.getAcl().checkScope(p.aclScope)) {
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://www.espocrm.com/schema/metadata/app/clientRecord.json",
|
||||
"title": "app/navbar",
|
||||
"description": "Client record definitions.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"panels": {
|
||||
"description": "Detail view panels. Can be references from clientDefs > sidePanels/bottomPanels. As of v9.0.",
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"description": "A panel.",
|
||||
"type": "object",
|
||||
"$ref": "../clientDefs.json#/definitions/panel"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -330,59 +330,7 @@
|
||||
"anyOf": [
|
||||
{"const": "__APPEND__"},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"description": "A name.",
|
||||
"type": "string"
|
||||
},
|
||||
"label": {
|
||||
"description": "A translatable label.",
|
||||
"type": "string"
|
||||
},
|
||||
"view": {
|
||||
"description": "A view class.",
|
||||
"type": "string"
|
||||
},
|
||||
"options": {
|
||||
"description": "Options to be passed to the view.",
|
||||
"type": "object"
|
||||
},
|
||||
"isForm": {
|
||||
"description": "Whether the panel should display a form.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"notRefreshable": {
|
||||
"description": "Disable the ability to refresh the panel.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"style": {
|
||||
"description": "A style.",
|
||||
"enum": ["default", "success", "warning", "danger"]
|
||||
},
|
||||
"hidden": {
|
||||
"description": "Hidden by default.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"aclScope": {
|
||||
"description": "A scope access to which is required for the panel being visible.",
|
||||
"type": "string"
|
||||
},
|
||||
"acl": {
|
||||
"description": "An ACL action access to which is required for the panel being visible.",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"create",
|
||||
"read",
|
||||
"edit",
|
||||
"delete",
|
||||
"stream"
|
||||
]
|
||||
},
|
||||
"accessDataList": {
|
||||
"$ref": "#/definitions/accessDataList"
|
||||
}
|
||||
}
|
||||
"$ref": "#/definitions/panel"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1247,6 +1195,65 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"panel": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"description": "A name.",
|
||||
"type": "string"
|
||||
},
|
||||
"label": {
|
||||
"description": "A translatable label.",
|
||||
"type": "string"
|
||||
},
|
||||
"view": {
|
||||
"description": "A view class.",
|
||||
"type": "string"
|
||||
},
|
||||
"options": {
|
||||
"description": "Options to be passed to the view.",
|
||||
"type": "object"
|
||||
},
|
||||
"isForm": {
|
||||
"description": "Whether the panel should display a form.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"notRefreshable": {
|
||||
"description": "Disable the ability to refresh the panel.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"style": {
|
||||
"description": "A style.",
|
||||
"enum": ["default", "success", "warning", "danger"]
|
||||
},
|
||||
"hidden": {
|
||||
"description": "Hidden by default.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"aclScope": {
|
||||
"description": "A scope access to which is required for the panel being visible.",
|
||||
"type": "string"
|
||||
},
|
||||
"acl": {
|
||||
"description": "An ACL action access to which is required for the panel being visible.",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"create",
|
||||
"read",
|
||||
"edit",
|
||||
"delete",
|
||||
"stream"
|
||||
]
|
||||
},
|
||||
"accessDataList": {
|
||||
"$ref": "#/definitions/accessDataList"
|
||||
},
|
||||
"reference": {
|
||||
"type": "string",
|
||||
"description": "A panel reference name. Panels are defined in app > clientRecord > panels. As of v9.0."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user