function prepareData (aPropertyEditorConfigs, mLayoutConfig) {
		mLayoutConfig = mLayoutConfig || {};
		var aConfigs = aPropertyEditorConfigs.slice();
		var aGroups = mLayoutConfig.groups || [];
		var mResponsiveGridLayout = mLayoutConfig.responsiveGridLayout || mDefaultResponsiveGridLayout;
		var bRenderLabels = mLayoutConfig.renderLabels !== false;
		var mViewModel = {
			responsiveGridLayout: mResponsiveGridLayout
		};

		if (!bRenderLabels) {
			aConfigs = aConfigs.map(function (mPropertyEditorConfig) {
				return _omit(mPropertyEditorConfig, "label");
			});
		}

		if (aGroups.length > 0) {
			mViewModel.groups = aGroups.map(function (mGroupConfig) {
				var aItems = [];

				mGroupConfig.items.forEach(function (mItemConfig) {
					switch (mItemConfig.type) {
						case "tag":
							aItems = aItems.concat(
								getConfigsByTag(aConfigs, mItemConfig.value)
									.map(function (mConfig) {
										return createFormField(mConfig);
									})
							);
							break;
						case "propertyName":
							var mPropertyEditorConfig = getConfigByName(aConfigs, mItemConfig.value);
							if (mPropertyEditorConfig) {
								aItems = aItems.concat(createFormField(mPropertyEditorConfig));
							}
							break;
					}
				});

				return {
					label: mGroupConfig.label,
					items: aItems,
					visible: isGroupVisible(aItems)
				};
			});
		} else {
			var aItems = aConfigs.splice(0, aConfigs.length).map(createFormField);
			mViewModel.groups = [{
				items: aItems,
				visible: isGroupVisible(aItems)
			}];
		}

		// Filter out empty groups
		mViewModel.groups = mViewModel.groups.filter(function (mGroup) {
			return mGroup.items.length > 0;
		});

		mViewModel.count = aPropertyEditorConfigs.length - aConfigs.length;

		return mViewModel;
	}
/**
	 * Prepares data for JSONModel which is then used by Form fragment.
	 *
	 * @function
	 * @since 1.77
	 * @private
	 * @alias module:sap/ui/integration/designtime/baseEditor/layout/Form
	 * @param {sap.ui.integration.designtime.baseEditor.layout.Form.PropertyEditorConfig[]} aPropertyEditorConfigs - List of property editors configurations
	 * @param {object} [mLayoutConfig] - Layout settings
	 * @param {sap.ui.integration.designtime.baseEditor.layout.Form.Group[]} [mLayoutConfig.groups] - List of configuration groups
	 * @param {object} [mLayoutConfig.responsiveGridLayout] - @see sap.ui.layout.form.ResponsiveGridLayout for the configuration options
	 * @param {boolean} [mLayoutConfig.renderLabels] - Default: true. Indicates whether form labels should be rendered
	 * @returns {object} Returns data in a convenient for the Form fragment format
	 */
Prepares data for JSONModel which is then used by Form fragment.
Prepares data for JSONModel which is then used by Form fragment .
function prepareData (aPropertyEditorConfigs, mLayoutConfig) {
		mLayoutConfig = mLayoutConfig || {};
		var aConfigs = aPropertyEditorConfigs.slice();
		var aGroups = mLayoutConfig.groups || [];
		var mResponsiveGridLayout = mLayoutConfig.responsiveGridLayout || mDefaultResponsiveGridLayout;
		var bRenderLabels = mLayoutConfig.renderLabels !== false;
		var mViewModel = {
			responsiveGridLayout: mResponsiveGridLayout
		};
		if (!bRenderLabels) {
			aConfigs = aConfigs.map(function (mPropertyEditorConfig) {
				return _omit(mPropertyEditorConfig, "label");
			});
		}
		if (aGroups.length > 0) {
			mViewModel.groups = aGroups.map(function (mGroupConfig) {
				var aItems = [];
				mGroupConfig.items.forEach(function (mItemConfig) {
					switch (mItemConfig.type) {
						case "tag":
							aItems = aItems.concat(
								getConfigsByTag(aConfigs, mItemConfig.value)
									.map(function (mConfig) {
										return createFormField(mConfig);
									})
							);
							break;
						case "propertyName":
							var mPropertyEditorConfig = getConfigByName(aConfigs, mItemConfig.value);
							if (mPropertyEditorConfig) {
								aItems = aItems.concat(createFormField(mPropertyEditorConfig));
							}
							break;
					}
				});
				return {
					label: mGroupConfig.label,
					items: aItems,
					visible: isGroupVisible(aItems)
				};
			});
		} else {
			var aItems = aConfigs.splice(0, aConfigs.length).map(createFormField);
			mViewModel.groups = [{
				items: aItems,
				visible: isGroupVisible(aItems)
			}];
		}
		mViewModel.groups = mViewModel.groups.filter(function (mGroup) {
			return mGroup.items.length > 0;
		});
		mViewModel.count = aPropertyEditorConfigs.length - aConfigs.length;
		return mViewModel;
	}
function prepareData ( aPropertyEditorConfigs , mLayoutConfig ) { mLayoutConfig = mLayoutConfig || { } ; var aConfigs = aPropertyEditorConfigs . slice ( ) ; var aGroups = mLayoutConfig . groups || [ ] ; var mResponsiveGridLayout = mLayoutConfig . responsiveGridLayout || mDefaultResponsiveGridLayout ; var bRenderLabels = mLayoutConfig . renderLabels !== false ; var mViewModel = { responsiveGridLayout : mResponsiveGridLayout } ; if ( ! bRenderLabels ) { aConfigs = aConfigs . map ( function ( mPropertyEditorConfig ) { return _omit ( mPropertyEditorConfig , "label" ) ; } ) ; } if ( aGroups . length > 0 ) { mViewModel . groups = aGroups . map ( function ( mGroupConfig ) { var aItems = [ ] ; mGroupConfig . items . forEach ( function ( mItemConfig ) { switch ( mItemConfig . type ) { case "tag" : aItems = aItems . concat ( getConfigsByTag ( aConfigs , mItemConfig . value ) . map ( function ( mConfig ) { return createFormField ( mConfig ) ; } ) ) ; break ; case "propertyName" : var mPropertyEditorConfig = getConfigByName ( aConfigs , mItemConfig . value ) ; if ( mPropertyEditorConfig ) { aItems = aItems . concat ( createFormField ( mPropertyEditorConfig ) ) ; } break ; } } ) ; return { label : mGroupConfig . label , items : aItems , visible : isGroupVisible ( aItems ) } ; } ) ; } else { var aItems = aConfigs . splice ( 0 , aConfigs . length ) . map ( createFormField ) ; mViewModel . groups = [ { items : aItems , visible : isGroupVisible ( aItems ) } ] ; } mViewModel . groups = mViewModel . groups . filter ( function ( mGroup ) { return mGroup . items . length > 0 ; } ) ; mViewModel . count = aPropertyEditorConfigs . length - aConfigs . length ; return mViewModel ; }
Prepares data for JSONModel which is then used by Form fragment.
Prepares data for JSONModel which is then used by Form fragment .
// Filter out empty groups