@furo/ui5
Version:
SAP UI5 Web Components data bindings for furo-web
101 lines (76 loc) • 2.87 kB
YAML
name: "SAP Fiori Object Page"
description: "The object page detail floorplan is used to display and categorize all relevant information about an object (aggregate)."
variables:
- varname: ServiceName
default: ""
prompt: "Please select the service"
inputKind: "service"
- varname: Service
expression: "GetService(ServiceName)"
- varname: EntityName
default: "GetStringFromMap(Service,'services.Get.data.response')"
prompt: "Please select the entity of the primary object."
inputKind: "type"
- varname: Entity
expression: "GetType(EntityName)"
- varname: PageType
default: "'detail'"
prompt: "Which kind of page you would like to create? Like detail, edit or create"
inputKind: "string"
- varname: InnerTypeName
default: "GetStringFromMap(Entity,'fields.data.type')"
prompt: "Set the main object type"
inputKind: "string"
- varname: InnerType
expression: "GetType(InnerTypeName)"
- varname: Description
default: ""
prompt: "Enter a short description"
inputKind: "string"
- varname: Dir
default: "'./src/' + ToKebab(InnerTypeName)"
prompt: "Target directory"
inputKind: "directory"
- varname: ComponentsPrefix
default: "ToKebab(InnerTypeName)"
prompt: "Please enter prefix for the sub components"
inputKind: "string"
- varname: Tabs
default: "'main'"
prompt: "Please enter the tab names"
inputKind: "stringlist"
regexp: "^[^\\s-]+$"
regexpText: "No whitespaces allowed"
- varname: ViewComponentName
default: "'page-' + ComponentsPrefix + '-object-' + PageType"
prompt: "Change the component name if you do not like it"
inputKind: "string"
- varname: ViewComponentClassName
expression: "ToCamel(ViewComponentName)"
- varname: DataEntityComponentName
default: "ComponentsPrefix + '-entity'"
prompt: "Change the data entity component name if you do not like it"
inputKind: "string"
- varname: DataEntityClassName
expression: "ToCamel(DataEntityComponentName)"
- varname: LowerInnerTypeName
expression: "ToLower(InnerTypeName)"
structure:
- target: "Dir + '/' + ViewComponentName + '.js'"
template: "view-xx-xx-object-detail.js.tpl"
notes: ""
condition: ""
- target: "Dir + '/data/' + DataEntityComponentName + '.js'"
template: "data/xx-xx-entity.js.tpl"
notes: ""
condition: ""
- target: "Dir + '/object-' + PageType + '/' + DetailElementName + '.js'"
template: "panel-object-detail.js.tpl"
notes: "Initial detail panel"
repeatBy: "Tabs"
repeatAs: "Tab"
condition: ""
repeatExpressions:
DetailElementName: "ToKebab(ComponentsPrefix + '-' + PageType + '-' + Tab)"
DetailClassName: "ToCamel(DetailElementName)"
data: #additional data, this goes directly to your template and is not parsed or evaluated.