Display VLM Entities Order by name
Issue-ID: SDC-1750
Change-Id: Ia73fa82b4f67530502df4fb4dfdcf9bb4ca2040c
Signed-off-by: svishnev <shlomo-stanisla.vishnevetskiy@amdocs.com>
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelConstants.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelConstants.js
index d97f682..93e9348 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelConstants.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelConstants.js
@@ -36,3 +36,5 @@
{ enum: thresholdUnitType.PERCENTAGE, title: '%' }
]
};
+
+export const SORTING_PROPERTY_NAME = 'name';
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsEditor.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsEditor.js
index 5fcdad9..a148e6a 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsEditor.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsEditor.js
@@ -1,22 +1,24 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import EntitlementPoolsActionHelper from './EntitlementPoolsActionHelper.js';
import EntitlementPoolsEditorView from './EntitlementPoolsEditorView.jsx';
import ValidationHelper from 'sdc-app/common/helpers/ValidationHelper.js';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
import LimitEditorActionHelper from '../limits/LimitEditorActionHelper.js';
@@ -25,7 +27,7 @@
data,
genericFieldInfo,
formReady,
- limitsList
+ limitsList = []
} = entitlementPool.entitlementPoolEditor;
let isFormValid = ValidationHelper.checkFormValid(genericFieldInfo);
@@ -51,7 +53,7 @@
isFormValid,
formReady,
EPNames,
- limitsList
+ limitsList: sortByStringProperty(limitsList, SORTING_PROPERTY_NAME)
};
};
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsListEditor.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsListEditor.js
index 819fb7d..4679b9e 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsListEditor.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/entitlementPools/EntitlementPoolsListEditor.js
@@ -1,25 +1,27 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
import i18n from 'nfvo-utils/i18n/i18n.js';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import EntitlementPoolsActionHelper from './EntitlementPoolsActionHelper.js';
import EntitlementPoolsListEditorView, {
generateConfirmationMsg
} from './EntitlementPoolsListEditorView.jsx';
import { actionTypes as globalMoadlActions } from 'nfvo-components/modal/GlobalModalConstants.js';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
const mapStateToProps = ({
licenseModel: { entitlementPool, licenseModelEditor }
@@ -30,7 +32,10 @@
return {
vendorName,
- entitlementPoolsList,
+ entitlementPoolsList: sortByStringProperty(
+ entitlementPoolsList,
+ SORTING_PROPERTY_NAME
+ ),
isDisplayModal: Boolean(data),
isModalInEditMode: Boolean(data && data.id)
};
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/featureGroups/FeatureGroupListEditor.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/featureGroups/FeatureGroupListEditor.js
index 55e2710..8d41b97 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/featureGroups/FeatureGroupListEditor.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/featureGroups/FeatureGroupListEditor.js
@@ -1,25 +1,27 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import FeatureGroupsActionHelper from './FeatureGroupsActionHelper.js';
import FeatureGroupListEditorView, {
generateConfirmationMsg
} from './FeatureGroupListEditorView.jsx';
import i18n from 'nfvo-utils/i18n/i18n.js';
import { actionTypes as globalMoadlActions } from 'nfvo-components/modal/GlobalModalConstants.js';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
export const mapStateToProps = ({
licenseModel: { featureGroup, licenseModelEditor }
@@ -34,7 +36,10 @@
show: Boolean(data),
editMode: Boolean(data && data.id)
},
- featureGroupsList
+ featureGroupsList: sortByStringProperty(
+ featureGroupsList,
+ SORTING_PROPERTY_NAME
+ )
};
};
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseAgreement/LicenseAgreementListEditor.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseAgreement/LicenseAgreementListEditor.js
index cba3973..fcb83b4 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseAgreement/LicenseAgreementListEditor.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseAgreement/LicenseAgreementListEditor.js
@@ -1,23 +1,25 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
import i18n from 'nfvo-utils/i18n/i18n.js';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import LicenseAgreementActionHelper from './LicenseAgreementActionHelper.js';
import LicenseAgreementListEditorView from './LicenseAgreementListEditorView.jsx';
import { actionTypes as globalMoadlActions } from 'nfvo-components/modal/GlobalModalConstants.js';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
const mapStateToProps = ({
licenseModel: { licenseAgreement, licenseModelEditor }
@@ -29,7 +31,10 @@
return {
vendorName,
version,
- licenseAgreementList,
+ licenseAgreementList: sortByStringProperty(
+ licenseAgreementList,
+ SORTING_PROPERTY_NAME
+ ),
isDisplayModal: Boolean(data),
isModalInEditMode: Boolean(data && data.id)
};
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsEditor.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsEditor.js
index fa62bba..b4ad2e9 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsEditor.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsEditor.js
@@ -1,30 +1,32 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import LicenseKeyGroupsActionHelper from './LicenseKeyGroupsActionHelper.js';
import LicenseKeyGroupsEditorView from './LicenseKeyGroupsEditorView.jsx';
import LimitEditorActionHelper from '../limits/LimitEditorActionHelper.js';
import ValidationHelper from 'sdc-app/common/helpers/ValidationHelper.js';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
const mapStateToProps = ({ licenseModel: { licenseKeyGroup } }) => {
let {
data,
genericFieldInfo,
formReady,
- limitsList
+ limitsList = []
} = licenseKeyGroup.licenseKeyGroupsEditor;
let previousData,
@@ -50,7 +52,7 @@
isFormValid,
formReady,
LKGNames,
- limitsList
+ limitsList: sortByStringProperty(limitsList, SORTING_PROPERTY_NAME)
};
};
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsListEditor.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsListEditor.js
index 6151c59..514e9b8 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsListEditor.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/licenseKeyGroups/LicenseKeyGroupsListEditor.js
@@ -1,20 +1,21 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
import i18n from 'nfvo-utils/i18n/i18n.js';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import { actionTypes as globalMoadlActions } from 'nfvo-components/modal/GlobalModalConstants.js';
@@ -22,6 +23,7 @@
import LicenseKeyGroupsListEditorView, {
generateConfirmationMsg
} from './LicenseKeyGroupsListEditorView.jsx';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
const mapStateToProps = ({
licenseModel: { licenseKeyGroup, licenseModelEditor }
@@ -32,7 +34,10 @@
return {
vendorName,
- licenseKeyGroupsList,
+ licenseKeyGroupsList: sortByStringProperty(
+ licenseKeyGroupsList,
+ SORTING_PROPERTY_NAME
+ ),
isDisplayModal: Boolean(data),
isModalInEditMode: Boolean(data && data.id)
};
diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/overview/LicenseModelOverview.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/overview/LicenseModelOverview.js
index 2b10e42..572b029 100644
--- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/overview/LicenseModelOverview.js
+++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/overview/LicenseModelOverview.js
@@ -1,19 +1,20 @@
-/*!
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+/*
+* Copyright © 2016-2018 European Support Limited
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
import { connect } from 'react-redux';
+import sortByStringProperty from 'nfvo-utils/sortByStringProperty.js';
import LicenseModelActionHelper from 'sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js';
import LicenseModelOverviewView from './LicenseModelOverviewView.jsx';
import {
@@ -21,6 +22,7 @@
selectedButton
} from './LicenseModelOverviewConstants.js';
import licenseModelOverviewActionHelper from './licenseModelOverviewActionHelper.js';
+import { SORTING_PROPERTY_NAME } from 'sdc-app/onboarding/licenseModel/LicenseModelConstants.js';
export const mapStateToProps = ({
licenseModel: {
@@ -78,12 +80,24 @@
...curFeatureGroup,
itemType: overviewEditorHeaders.FEATURE_GROUP,
children: [
- ...(entitlementPoolsIds.length
- ? entitlementPoolsIds.reduce(reduceEntitlementPools, [])
- : []),
- ...(licenseKeyGroupsIds.length
- ? licenseKeyGroupsIds.reduce(reduceLicenseKeyGroups, [])
- : [])
+ ...sortByStringProperty(
+ entitlementPoolsIds.length
+ ? entitlementPoolsIds.reduce(
+ reduceEntitlementPools,
+ []
+ )
+ : [],
+ SORTING_PROPERTY_NAME
+ ),
+ ...sortByStringProperty(
+ licenseKeyGroupsIds.length
+ ? licenseKeyGroupsIds.reduce(
+ reduceLicenseKeyGroups,
+ []
+ )
+ : [],
+ SORTING_PROPERTY_NAME
+ )
]
});
}
@@ -145,7 +159,10 @@
...licenseAgreement,
itemType: overviewEditorHeaders.LICENSE_AGREEMENT,
children: featureGroupsIds.length
- ? featureGroupsIds.reduce(reduceFeatureGroups, [])
+ ? sortByStringProperty(
+ featureGroupsIds.reduce(reduceFeatureGroups, []),
+ SORTING_PROPERTY_NAME
+ )
: []
};
};
@@ -177,15 +194,29 @@
}
let orphanDataList = [
- ...featureGroup.featureGroupsList.reduce(checkFG, []),
- ...entitlementPool.entitlementPoolsList.reduce(checkEP, []),
- ...licenseKeyGroup.licenseKeyGroupsList.reduce(checkLG, [])
+ ...sortByStringProperty(
+ featureGroup.featureGroupsList.reduce(checkFG, []),
+ SORTING_PROPERTY_NAME
+ ),
+ ...sortByStringProperty(
+ entitlementPool.entitlementPoolsList.reduce(checkEP, []),
+ SORTING_PROPERTY_NAME
+ ),
+ ...sortByStringProperty(
+ licenseKeyGroup.licenseKeyGroupsList.reduce(checkLG, []),
+ SORTING_PROPERTY_NAME
+ )
];
licensingDataList =
licenseAgreement.licenseAgreementList &&
licenseAgreement.licenseAgreementList.length
- ? licenseAgreement.licenseAgreementList.map(mapLicenseAgreementData)
+ ? sortByStringProperty(
+ licenseAgreement.licenseAgreementList.map(
+ mapLicenseAgreementData
+ ),
+ SORTING_PROPERTY_NAME
+ )
: [];
let selectedTab = licenseModelOverview.selectedTab;
// on first entry, we will decide what tab to open depending on data. if there are no connections, we will open the orphans