From 6ff72775cea305c31073b77b1c84a6cceb748170 Mon Sep 17 00:00:00 2001 From: Pascal Desmarets Date: Thu, 16 May 2019 14:56:25 +0200 Subject: [PATCH] Markdown and cleanup --- package.json | 6 +- .../container_level/containerLevelConfig.json | 81 +++++++++-- .../entity_level/entityLevelConfig.json | 56 ++++---- .../field_level/fieldLevelConfig.json | 132 +++++++++++++----- .../model_level/modelLevelConfig.json | 78 +++++++++-- .../view_level/viewLevelConfig.json | 109 ++++++++++++++- 6 files changed, 381 insertions(+), 81 deletions(-) diff --git a/package.json b/package.json index 1bc4d393..637fa9bb 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "Cassandra", - "version": "0.1.28", - "versionDate": "2019-04-24", + "version": "0.1.29", + "versionDate": "2019-05-16", "author": "hackolade", "engines": { "hackolade": "2.1.x", @@ -24,7 +24,7 @@ "disablePatternField": false, "enableForwardEngineering": true, "disableMultipleTypes": true, - "disableReverseEngineering": false, + "enableReverseEngineering": true, "disableChoices": true, "enableJsonType": true, "enableArrayItemName": true diff --git a/properties_pane/container_level/containerLevelConfig.json b/properties_pane/container_level/containerLevelConfig.json index 5889927b..5bc515b0 100644 --- a/properties_pane/container_level/containerLevelConfig.json +++ b/properties_pane/container_level/containerLevelConfig.json @@ -1,5 +1,5 @@ /* -* Copyright © 2016-2017 by IntegrIT S.A. dba Hackolade. All rights reserved. +* Copyright © 2016-2019 by IntegrIT S.A. dba Hackolade. All rights reserved. * * The copyright to the computer software herein is the property of IntegrIT S.A. * The software may be used and/or copied only with the written permission of @@ -13,13 +13,12 @@ making sure that you maintain a proper JSON format. { "propertyName": "Simple text", "propertyKeyword": "simpletextProp", - "shouldValidate": false, - "propertyType": "text" + "propertyType": "text", + "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Text area", "propertyKeyword": "textareaProp", - "propertyValidate": false, "propertyTooltip": "Popup for multi-line text entry", "propertyType": "details", "template": "textarea" @@ -27,7 +26,6 @@ making sure that you maintain a proper JSON format. { "propertyName": "Dropdown selection", "propertyKeyword": "dropdownProp", - "shouldValidate": false, "propertyTooltip": "Select from list of options", "propertyType": "select", "options": [ @@ -42,13 +40,76 @@ making sure that you maintain a proper JSON format. "propertyKeyword": "numericProp", "propertyValidate": true, "propertyType": "numeric", - "valueType": "number" + "valueType": "number", + "allowNegative": false, + "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Checkbox", "propertyKeyword": "checkboxProp", - "shouldValidate": false, "propertyType": "checkbox" + }, + { + "propertyName": "Group", + "propertyType": "group", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, +// “groupInput” can have the following states - 0 items, 1 item, and many items. +// “blockInput” has only 2 states - 0 items or 1 item. +// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing +// and forward-engineering in particular. + { + "propertyName": "Block", + "propertyType": "block", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, + { + "propertyName": "Field List", + "propertyKeyword": "keyList", + "propertyType": "fieldList", + "template": "orderedList" + }, + { + "propertyName": "List with attribute", + "propertyKeyword": "keyListOrder", + "propertyType": "fieldList", + "template": "orderedList", + "attributeList": [ + "ascending", + "descending" + ] } */ @@ -177,7 +238,8 @@ making sure that you maintain a proper JSON format. "shouldValidate": false, "propertyTooltip": "description", "propertyType": "details", - "template": "textarea" + "template": "textarea", + "markdown": false }, { "propertyName": "Comments", @@ -227,7 +289,8 @@ making sure that you maintain a proper JSON format. "shouldValidate": false, "propertyTooltip": "description", "propertyType": "details", - "template": "textarea" + "template": "textarea", + "markdown": false }, { "propertyName": "Comments", diff --git a/properties_pane/entity_level/entityLevelConfig.json b/properties_pane/entity_level/entityLevelConfig.json index 006f72af..c383cd15 100644 --- a/properties_pane/entity_level/entityLevelConfig.json +++ b/properties_pane/entity_level/entityLevelConfig.json @@ -1,25 +1,24 @@ /* -* Copyright © 2016-2017 by IntegrIT S.A. dba Hackolade. All rights reserved. +* Copyright © 2016-2019 by IntegrIT S.A. dba Hackolade. All rights reserved. * * The copyright to the computer software herein is the property of IntegrIT S.A. * The software may be used and/or copied only with the written permission of * IntegrIT S.A. or in accordance with the terms and conditions stipulated in * the agreement/contract under which the software has been supplied. + In order to define custom properties for any object's properties pane, you may copy/paste from the following, making sure that you maintain a proper JSON format. { "propertyName": "Simple text", "propertyKeyword": "simpletextProp", - "shouldValidate": false, "propertyType": "text", "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Text area", "propertyKeyword": "textareaProp", - "propertyValidate": false, "propertyTooltip": "Popup for multi-line text entry", "propertyType": "details", "template": "textarea" @@ -27,7 +26,6 @@ making sure that you maintain a proper JSON format. { "propertyName": "Dropdown selection", "propertyKeyword": "dropdownProp", - "shouldValidate": false, "propertyTooltip": "Select from list of options", "propertyType": "select", "options": [ @@ -49,27 +47,48 @@ making sure that you maintain a proper JSON format. { "propertyName": "Checkbox", "propertyKeyword": "checkboxProp", - "shouldValidate": false, "propertyType": "checkbox" }, { - "propertyName": "Properties Group", + "propertyName": "Group", "propertyType": "group", "propertyKeyword": "grpProp", - "shouldValidate": true, "propertyTooltip": "", "structure": [ { "propertyName": "Simple Grp Text", "propertyKeyword": "simpleGrpText", - "shouldValidate": false, "propertyTooltip": "", "propertyType": "text" }, { "propertyName": "Group Number", "propertyKeyword": "grpNumber", - "propertyValidate": true, + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, +// “groupInput” can have the following states - 0 items, 1 item, and many items. +// “blockInput” has only 2 states - 0 items or 1 item. +// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing +// and forward-engineering in particular. + { + "propertyName": "Block", + "propertyType": "block", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", "propertyType": "numeric", "valueType": "number", "allowNegative": false @@ -79,14 +98,12 @@ making sure that you maintain a proper JSON format. { "propertyName": "Field List", "propertyKeyword": "keyList", - "shouldValidate": false, "propertyType": "fieldList", "template": "orderedList" }, { "propertyName": "List with attribute", "propertyKeyword": "keyListOrder", - "shouldValidate": false, "propertyType": "fieldList", "template": "orderedList", "attributeList": [ @@ -104,20 +121,17 @@ making sure that you maintain a proper JSON format. { "propertyName": "Technical name", "propertyKeyword": "code", - "shouldValidate": true, "propertyType": "text" }, { "propertyName": "Partition key", "propertyKeyword": "compositePartitionKey", - "shouldValidate": false, "propertyType": "primaryKeySetter", "abbr": "PK" }, { "propertyName": "Clustering key", "propertyKeyword": "compositeClusteringKey", - "shouldValidate": false, "propertyType": "primaryKeySetter", "abbr": "CK", "attributeList": [ @@ -128,16 +142,15 @@ making sure that you maintain a proper JSON format. { "propertyName": "Options", "propertyKeyword": "tableOptions", - "shouldValidate": false, "propertyTooltip": "Table options separated by 'AND'", "propertyType": "details", "template": "textarea", - "valueType": "string" + "valueType": "string", + "markdown": false }, { "propertyName": "Comments", "propertyKeyword": "comments", - "shouldValidate": false, "propertyTooltip": "comments", "propertyType": "details", "template": "textarea", @@ -152,20 +165,17 @@ making sure that you maintain a proper JSON format. "propertyName": "Secondary Index", "propertyType": "group", "propertyKeyword": "SecIndxs", - "shouldValidate": false, "propertyTooltip": "", "structure": [ { "propertyName": "Name", "propertyKeyword": "name", - "shouldValidate": false, "propertyTooltip": "", "propertyType": "text" }, { "propertyName": "Key", "propertyKeyword": "SecIndxKey", - "shouldValidate": false, "propertyType": "fieldList", "template": "orderedList", "attributeList": [ @@ -176,14 +186,12 @@ making sure that you maintain a proper JSON format. { "propertyName": "Id", "propertyKeyword": "SecIndxID", - "shouldValidate": false, "propertyTooltip": "Secondary Index ID", "propertyType": "text" }, { "propertyName": "Description", "propertyKeyword": "SecIndxDescription", - "shouldValidate": false, "propertyTooltip": "description", "propertyType": "details", "template": "textarea" @@ -191,10 +199,10 @@ making sure that you maintain a proper JSON format. { "propertyName": "Function", "propertyKeyword": "SecIndxFunction", - "shouldValidate": false, "propertyTooltip": "description", "propertyType": "details", - "template": "textarea" + "template": "textarea", + "markdown": false }, { "propertyName": "Comments", diff --git a/properties_pane/field_level/fieldLevelConfig.json b/properties_pane/field_level/fieldLevelConfig.json index 5c69a9a3..dec60186 100644 --- a/properties_pane/field_level/fieldLevelConfig.json +++ b/properties_pane/field_level/fieldLevelConfig.json @@ -1,5 +1,5 @@ /* -* Copyright © 2016-2017 by IntegrIT S.A. dba Hackolade. All rights reserved. +* Copyright © 2016-2019 by IntegrIT S.A. dba Hackolade. All rights reserved. * * The copyright to the computer software herein is the property of IntegrIT S.A. * The software may be used and/or copied only with the written permission of @@ -13,13 +13,12 @@ making sure that you maintain a proper JSON format. { "propertyName": "Simple text", "propertyKeyword": "simpletextProp", - "shouldValidate": false, - "propertyType": "text" + "propertyType": "text", + "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Text area", "propertyKeyword": "textareaProp", - "propertyValidate": false, "propertyTooltip": "Popup for multi-line text entry", "propertyType": "details", "template": "textarea" @@ -27,7 +26,6 @@ making sure that you maintain a proper JSON format. { "propertyName": "Dropdown selection", "propertyKeyword": "dropdownProp", - "shouldValidate": false, "propertyTooltip": "Select from list of options", "propertyType": "select", "options": [ @@ -41,14 +39,77 @@ making sure that you maintain a proper JSON format. "propertyName": "Numeric", "propertyKeyword": "numericProp", "propertyValidate": true, - "propertyType": "text", - "valueType": "number" + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false, + "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Checkbox", "propertyKeyword": "checkboxProp", - "shouldValidate": false, "propertyType": "checkbox" + }, + { + "propertyName": "Group", + "propertyType": "group", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, +// “groupInput” can have the following states - 0 items, 1 item, and many items. +// “blockInput” has only 2 states - 0 items or 1 item. +// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing +// and forward-engineering in particular. + { + "propertyName": "Block", + "propertyType": "block", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, + { + "propertyName": "Field List", + "propertyKeyword": "keyList", + "propertyType": "fieldList", + "template": "orderedList" + }, + { + "propertyName": "List with attribute", + "propertyKeyword": "keyListOrder", + "propertyType": "fieldList", + "template": "orderedList", + "attributeList": [ + "ascending", + "descending" + ] } */ @@ -60,6 +121,7 @@ making sure that you maintain a proper JSON format. "name", "code", "schemaId", + "description", "type", { "propertyName": "Subtype", @@ -75,8 +137,6 @@ making sure that you maintain a proper JSON format. "data": "options", "valueType": "string" }, - "description", - "dependencies", { "propertyName": "Required", "propertyKeyword": "required", @@ -125,15 +185,16 @@ making sure that you maintain a proper JSON format. "propertyType": "checkbox", "valueType": "boolean" }, - "foreignCollection", - "foreignField", - "relationshipType", - "default", "minLength", "maxLength", "pattern", "format", + "default", "enum", + "dependencies", + "foreignCollection", + "foreignField", + "relationshipType", "sample", "comments" ], @@ -141,6 +202,7 @@ making sure that you maintain a proper JSON format. "name", "code", "schemaId", + "description", "type", { "propertyName": "Subtype", @@ -161,7 +223,6 @@ making sure that you maintain a proper JSON format. "data": "options", "valueType": "string" }, - "description", "dependencies", { "propertyName": "Required", @@ -211,10 +272,6 @@ making sure that you maintain a proper JSON format. "propertyType": "checkbox", "valueType": "boolean" }, - "foreignCollection", - "foreignField", - "relationshipType", - "default", "unit", "minimum", "exclusiveMinimum", @@ -223,7 +280,11 @@ making sure that you maintain a proper JSON format. "multipleOf", "divisibleBy", "pattern", + "default", "enum", + "foreignCollection", + "foreignField", + "relationshipType", "sample", "comments" ], @@ -231,10 +292,9 @@ making sure that you maintain a proper JSON format. "name", "code", "schemaId", - "type", "description", + "type", "dependencies", - { "propertyName": "Required", "propertyKeyword": "required", @@ -293,8 +353,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -352,8 +412,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -412,8 +472,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -475,8 +535,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -538,8 +598,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -601,8 +661,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -663,8 +723,8 @@ making sure that you maintain a proper JSON format. "code", "sampleName", "schemaId", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -727,6 +787,7 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", + "description", "type", { "propertyName": "Subtype", @@ -753,7 +814,6 @@ making sure that you maintain a proper JSON format. "propertyType": "checkbox", "valueType": "boolean" }, - "description", "dependencies", { "propertyName": "Required", @@ -808,6 +868,7 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", + "description", "type", { "propertyName": "Subtype", @@ -834,7 +895,6 @@ making sure that you maintain a proper JSON format. "propertyType": "checkbox", "valueType": "boolean" }, - "description", "dependencies", { "propertyName": "Required", @@ -889,6 +949,7 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", + "description", "type", { "propertyName": "Key type", @@ -972,7 +1033,6 @@ making sure that you maintain a proper JSON format. "propertyType": "checkbox", "valueType": "boolean" }, - "description", "dependencies", { "propertyName": "Required", @@ -1026,8 +1086,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -1081,8 +1141,8 @@ making sure that you maintain a proper JSON format. "name", "code", "schemaId", - "type", "description", + "type", { "propertyName": "Required", "propertyKeyword": "required", @@ -1137,8 +1197,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -1210,8 +1270,8 @@ making sure that you maintain a proper JSON format. "sampleName", "schemaId", "refPath", - "type", "description", + "type", "dependencies", { "propertyName": "Required", @@ -1278,8 +1338,8 @@ making sure that you maintain a proper JSON format. "code", "sampleName", "schemaId", - "type", "description", + "type", "dependencies", { "propertyName": "Required", diff --git a/properties_pane/model_level/modelLevelConfig.json b/properties_pane/model_level/modelLevelConfig.json index 4985614e..7307495e 100644 --- a/properties_pane/model_level/modelLevelConfig.json +++ b/properties_pane/model_level/modelLevelConfig.json @@ -1,24 +1,24 @@ /* -* Copyright © 2016-2017 by IntegrIT S.A. dba Hackolade. All rights reserved. +* Copyright © 2016-2019 by IntegrIT S.A. dba Hackolade. All rights reserved. * * The copyright to the computer software herein is the property of IntegrIT S.A. * The software may be used and/or copied only with the written permission of * IntegrIT S.A. or in accordance with the terms and conditions stipulated in * the agreement/contract under which the software has been supplied. + In order to define custom properties for any object's properties pane, you may copy/paste from the following, making sure that you maintain a proper JSON format. { "propertyName": "Simple text", "propertyKeyword": "simpletextProp", - "shouldValidate": false, - "propertyType": "text" + "propertyType": "text", + "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Text area", "propertyKeyword": "textareaProp", - "propertyValidate": false, "propertyTooltip": "Popup for multi-line text entry", "propertyType": "details", "template": "textarea" @@ -26,7 +26,6 @@ making sure that you maintain a proper JSON format. { "propertyName": "Dropdown selection", "propertyKeyword": "dropdownProp", - "shouldValidate": false, "propertyTooltip": "Select from list of options", "propertyType": "select", "options": [ @@ -40,14 +39,77 @@ making sure that you maintain a proper JSON format. "propertyName": "Numeric", "propertyKeyword": "numericProp", "propertyValidate": true, - "propertyType": "text", - "valueType": "number" + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false, + "sampleGen": "&containerName|&entityName|&random|" }, { "propertyName": "Checkbox", "propertyKeyword": "checkboxProp", - "shouldValidate": false, "propertyType": "checkbox" + }, + { + "propertyName": "Group", + "propertyType": "group", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, +// “groupInput” can have the following states - 0 items, 1 item, and many items. +// “blockInput” has only 2 states - 0 items or 1 item. +// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing +// and forward-engineering in particular. + { + "propertyName": "Block", + "propertyType": "block", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, + { + "propertyName": "Field List", + "propertyKeyword": "keyList", + "propertyType": "fieldList", + "template": "orderedList" + }, + { + "propertyName": "List with attribute", + "propertyKeyword": "keyListOrder", + "propertyType": "fieldList", + "template": "orderedList", + "attributeList": [ + "ascending", + "descending" + ] } */ diff --git a/properties_pane/view_level/viewLevelConfig.json b/properties_pane/view_level/viewLevelConfig.json index a43dfd8c..f35cb1a0 100644 --- a/properties_pane/view_level/viewLevelConfig.json +++ b/properties_pane/view_level/viewLevelConfig.json @@ -1,10 +1,117 @@ /* -* Copyright © 2016-2017 by IntegrIT S.A. dba Hackolade. All rights reserved. +* Copyright © 2016-2019 by IntegrIT S.A. dba Hackolade. All rights reserved. * * The copyright to the computer software herein is the property of IntegrIT S.A. * The software may be used and/or copied only with the written permission of * IntegrIT S.A. or in accordance with the terms and conditions stipulated in * the agreement/contract under which the software has been supplied. + + +In order to define custom properties for any object's properties pane, you may copy/paste from the following, +making sure that you maintain a proper JSON format. + + { + "propertyName": "Simple text", + "propertyKeyword": "simpletextProp", + "propertyType": "text", + "sampleGen": "&containerName|&entityName|&random|" + }, + { + "propertyName": "Text area", + "propertyKeyword": "textareaProp", + "propertyTooltip": "Popup for multi-line text entry", + "propertyType": "details", + "template": "textarea" + }, + { + "propertyName": "Dropdown selection", + "propertyKeyword": "dropdownProp", + "propertyTooltip": "Select from list of options", + "propertyType": "select", + "options": [ + "Option 1", + "Option 2", + "Option 3", + "Option 4" + ] + }, + { + "propertyName": "Numeric", + "propertyKeyword": "numericProp", + "propertyValidate": true, + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false, + "sampleGen": "&containerName|&entityName|&random|" + }, + { + "propertyName": "Checkbox", + "propertyKeyword": "checkboxProp", + "propertyType": "checkbox" + }, + { + "propertyName": "Group", + "propertyType": "group", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, +// “groupInput” can have the following states - 0 items, 1 item, and many items. +// “blockInput” has only 2 states - 0 items or 1 item. +// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing +// and forward-engineering in particular. + { + "propertyName": "Block", + "propertyType": "block", + "propertyKeyword": "grpProp", + "propertyTooltip": "", + "structure": [ + { + "propertyName": "Simple Grp Text", + "propertyKeyword": "simpleGrpText", + "propertyTooltip": "", + "propertyType": "text" + }, + { + "propertyName": "Group Number", + "propertyKeyword": "grpNumber", + "propertyType": "numeric", + "valueType": "number", + "allowNegative": false + } + ] + }, + { + "propertyName": "Field List", + "propertyKeyword": "keyList", + "propertyType": "fieldList", + "template": "orderedList" + }, + { + "propertyName": "List with attribute", + "propertyKeyword": "keyListOrder", + "propertyType": "fieldList", + "template": "orderedList", + "attributeList": [ + "ascending", + "descending" + ] + } + */ [