blob: 78c127ae0e4de8075161c3525a54490f35af81d5 [file] [log] [blame]
AviZi280f8012017-06-09 02:39:56 +03001/*!
svishnevbacc7152018-11-05 12:11:30 +02002 * Copyright © 2016-2018 European Support Limited
AviZi280f8012017-06-09 02:39:56 +03003 *
Michael Landoefa037d2017-02-19 12:57:33 +02004 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
AviZi280f8012017-06-09 02:39:56 +03007 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
Michael Landoefa037d2017-02-19 12:57:33 +020010 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
AviZi280f8012017-06-09 02:39:56 +030012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
13 * or implied. See the License for the specific language governing
14 * permissions and limitations under the License.
Michael Landoefa037d2017-02-19 12:57:33 +020015 */
Michael Landoefa037d2017-02-19 12:57:33 +020016import keyMirror from 'nfvo-utils/KeyMirror.js';
17import i18n from 'nfvo-utils/i18n/i18n.js';
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020018import InputOptions, {
19 other as optionInputOther
20} from 'nfvo-components/input/validation/InputOptions.jsx';
Michael Landoefa037d2017-02-19 12:57:33 +020021
svishnevbacc7152018-11-05 12:11:30 +020022export const actionTypes = keyMirror(
23 {
24 LICENSE_AGREEMENT_LIST_LOADED: null,
25 DELETE_LICENSE_AGREEMENT: null,
Michael Landoefa037d2017-02-19 12:57:33 +020026
svishnevbacc7152018-11-05 12:11:30 +020027 licenseAgreementEditor: {
28 OPEN: null,
29 CLOSE: null,
30 DATA_CHANGED: null,
31 SELECT_TAB: null
32 }
33 },
34 'licenseAgreement'
35);
Michael Landoefa037d2017-02-19 12:57:33 +020036
AviZi280f8012017-06-09 02:39:56 +030037export const LA_EDITOR_FORM = 'LA_EDITOR_FORM';
38
Michael Landoefa037d2017-02-19 12:57:33 +020039export const enums = keyMirror({
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020040 SELECTED_LICENSE_AGREEMENT_TAB: {
41 GENERAL: 1,
42 FEATURE_GROUPS: 2
43 }
Michael Landoefa037d2017-02-19 12:57:33 +020044});
45
46export const defaultState = {
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020047 LICENSE_AGREEMENT_EDITOR_DATA: {
48 licenseTerm: { choice: '', other: '' }
49 }
Michael Landoefa037d2017-02-19 12:57:33 +020050};
51
52export const optionsInputValues = {
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020053 LICENSE_MODEL_TYPE: [
54 { enum: '', title: i18n('please select…') },
55 { enum: 'Fixed_Term', title: 'Fixed Term' },
56 { enum: 'Perpetual', title: 'Perpetual' },
57 { enum: 'Unlimited', title: 'Unlimited' }
58 ]
Michael Landoefa037d2017-02-19 12:57:33 +020059};
AviZi280f8012017-06-09 02:39:56 +030060
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020061export const extractValue = item => {
62 if (item === undefined) {
63 return '';
64 } //TODO fix it later
AviZi280f8012017-06-09 02:39:56 +030065
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020066 return item
67 ? item.choice === optionInputOther.OTHER
68 ? item.other
69 : InputOptions.getTitleByName(optionsInputValues, item.choice)
70 : '';
AviZi280f8012017-06-09 02:39:56 +030071};