Skip to content

Commit e27161b

Browse files
committed
moved save policy function into edit policy section
1 parent 375e7c3 commit e27161b

3 files changed

Lines changed: 54 additions & 46 deletions

File tree

x-pack/plugins/index_lifecycle_management/public/application/lib/policies.ts

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,8 @@
33
* or more contributor license agreements. Licensed under the Elastic License;
44
* you may not use this file except in compliance with the Elastic License.
55
*/
6-
import { i18n } from '@kbn/i18n';
7-
import { METRIC_TYPE } from '@kbn/analytics';
86

9-
import { PolicyFromES, SerializedPolicy } from '../../../common/types';
10-
11-
import { toasts } from '../services/notification';
12-
import { savePolicy as savePolicyApi } from '../services/api';
13-
import { getUiMetricsForPhases, trackUiMetric } from '../services/ui_metric';
14-
import { showApiError } from '../services/api_errors';
15-
import { UIM_POLICY_CREATE, UIM_POLICY_UPDATE } from '../constants';
7+
import { PolicyFromES } from '../../../common/types';
168

179
export const splitSizeAndUnits = (field: string): { size: string; units: string } => {
1810
let size = '';
@@ -38,39 +30,3 @@ export const getPolicyByName = (
3830
return policies.find((policy: PolicyFromES) => policy.name === policyName);
3931
}
4032
};
41-
42-
export const savePolicy = async (
43-
serializedPolicy: SerializedPolicy,
44-
isNew: boolean
45-
): Promise<boolean> => {
46-
try {
47-
await savePolicyApi(serializedPolicy);
48-
} catch (err) {
49-
const title = i18n.translate('xpack.indexLifecycleMgmt.editPolicy.saveErrorMessage', {
50-
defaultMessage: 'Error saving lifecycle policy {lifecycleName}',
51-
values: { lifecycleName: serializedPolicy.name },
52-
});
53-
showApiError(err, title);
54-
return false;
55-
}
56-
57-
const uiMetrics = getUiMetricsForPhases(serializedPolicy.phases);
58-
uiMetrics.push(isNew ? UIM_POLICY_CREATE : UIM_POLICY_UPDATE);
59-
trackUiMetric(METRIC_TYPE.COUNT, uiMetrics);
60-
61-
const message = i18n.translate('xpack.indexLifecycleMgmt.editPolicy.successfulSaveMessage', {
62-
defaultMessage: '{verb} lifecycle policy "{lifecycleName}"',
63-
values: {
64-
verb: isNew
65-
? i18n.translate('xpack.indexLifecycleMgmt.editPolicy.createdMessage', {
66-
defaultMessage: 'Created',
67-
})
68-
: i18n.translate('xpack.indexLifecycleMgmt.editPolicy.updatedMessage', {
69-
defaultMessage: 'Updated',
70-
}),
71-
lifecycleName: serializedPolicy.name,
72-
},
73-
});
74-
toasts.addSuccess(message);
75-
return true;
76-
};

x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/edit_policy.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import { useForm, Form, UseField, TextField, useFormData } from '../../../shared
3434

3535
import { toasts } from '../../services/notification';
3636

37-
import { savePolicy } from '../../lib/policies';
37+
import { savePolicy } from './save_policy';
3838

3939
import {
4040
LearnMoreLink,
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
/*
2+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3+
* or more contributor license agreements. Licensed under the Elastic License;
4+
* you may not use this file except in compliance with the Elastic License.
5+
*/
6+
import { i18n } from '@kbn/i18n';
7+
import { METRIC_TYPE } from '@kbn/analytics';
8+
9+
import { SerializedPolicy } from '../../../../common/types';
10+
11+
import { UIM_POLICY_CREATE, UIM_POLICY_UPDATE } from '../../constants';
12+
13+
import { toasts } from '../../services/notification';
14+
import { savePolicy as savePolicyApi } from '../../services/api';
15+
import { getUiMetricsForPhases, trackUiMetric } from '../../services/ui_metric';
16+
import { showApiError } from '../../services/api_errors';
17+
18+
export const savePolicy = async (
19+
serializedPolicy: SerializedPolicy,
20+
isNew: boolean
21+
): Promise<boolean> => {
22+
try {
23+
await savePolicyApi(serializedPolicy);
24+
} catch (err) {
25+
const title = i18n.translate('xpack.indexLifecycleMgmt.editPolicy.saveErrorMessage', {
26+
defaultMessage: 'Error saving lifecycle policy {lifecycleName}',
27+
values: { lifecycleName: serializedPolicy.name },
28+
});
29+
showApiError(err, title);
30+
return false;
31+
}
32+
33+
const uiMetrics = getUiMetricsForPhases(serializedPolicy.phases);
34+
uiMetrics.push(isNew ? UIM_POLICY_CREATE : UIM_POLICY_UPDATE);
35+
trackUiMetric(METRIC_TYPE.COUNT, uiMetrics);
36+
37+
const message = i18n.translate('xpack.indexLifecycleMgmt.editPolicy.successfulSaveMessage', {
38+
defaultMessage: '{verb} lifecycle policy "{lifecycleName}"',
39+
values: {
40+
verb: isNew
41+
? i18n.translate('xpack.indexLifecycleMgmt.editPolicy.createdMessage', {
42+
defaultMessage: 'Created',
43+
})
44+
: i18n.translate('xpack.indexLifecycleMgmt.editPolicy.updatedMessage', {
45+
defaultMessage: 'Updated',
46+
}),
47+
lifecycleName: serializedPolicy.name,
48+
},
49+
});
50+
toasts.addSuccess(message);
51+
return true;
52+
};

0 commit comments

Comments
 (0)