diff --git a/CHANGELOG.md b/CHANGELOG.md
index ac0d4fe15fa..fd0db843bf9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,7 @@
**Bug fixes**
- Fixed bug in `EuiBasicTable` not fully expanding tall rows (height > 1000px) ([#3855](https://github.com/elastic/eui/pull/3855))
+- Added `regressionJob`, `outlierDetectionJob` and `classificationJob` icons to Machine Learning icon set, updated others. ([#3931](https://github.com/elastic/eui/pull/3931))
## [`28.2.0`](https://github.com/elastic/eui/tree/v28.2.0)
diff --git a/src-docs/src/views/icon/ml.js b/src-docs/src/views/icon/ml.js
index 826e47ed92d..d77a1a74f37 100644
--- a/src-docs/src/views/icon/ml.js
+++ b/src-docs/src/views/icon/ml.js
@@ -23,8 +23,11 @@ import {
const iconTypes = [
'dataVisualizer',
'createAdvancedJob',
+ 'classificationJob',
'createMultiMetricJob',
+ 'outlierDetectionJob',
'createPopulationJob',
+ 'regressionJob',
'createSingleMetricJob',
];
diff --git a/src/components/icon/__snapshots__/icon.test.tsx.snap b/src/components/icon/__snapshots__/icon.test.tsx.snap
index 6ac4dc3f050..13dc9ab3dee 100644
--- a/src/components/icon/__snapshots__/icon.test.tsx.snap
+++ b/src/components/icon/__snapshots__/icon.test.tsx.snap
@@ -1069,6 +1069,27 @@ exports[`EuiIcon props type cheer is rendered 1`] = `
`;
+exports[`EuiIcon props type classificationJob is rendered 1`] = `
+
+`;
+
exports[`EuiIcon props type clock is rendered 1`] = `
`;
@@ -1333,11 +1354,11 @@ exports[`EuiIcon props type createMultiMetricJob is rendered 1`] = `
xmlns="http://www.w3.org/2000/svg"
>
`;
@@ -1354,11 +1375,11 @@ exports[`EuiIcon props type createPopulationJob is rendered 1`] = `
xmlns="http://www.w3.org/2000/svg"
>
`;
@@ -1531,11 +1552,11 @@ exports[`EuiIcon props type dataVisualizer is rendered 1`] = `
xmlns="http://www.w3.org/2000/svg"
>
`;
@@ -6327,6 +6348,27 @@ exports[`EuiIcon props type online is rendered 1`] = `
`;
+exports[`EuiIcon props type outlierDetectionJob is rendered 1`] = `
+
+`;
+
exports[`EuiIcon props type package is rendered 1`] = `
);
diff --git a/src/components/icon/assets/app_workplace_search.svg b/src/components/icon/assets/app_workplace_search.svg
index 7efc647de0a..06580043ab9 100644
--- a/src/components/icon/assets/app_workplace_search.svg
+++ b/src/components/icon/assets/app_workplace_search.svg
@@ -1,4 +1,4 @@
-
-
+
+
diff --git a/src/components/icon/assets/ml_classification_job.js b/src/components/icon/assets/ml_classification_job.js
new file mode 100644
index 00000000000..acfac1e68fd
--- /dev/null
+++ b/src/components/icon/assets/ml_classification_job.js
@@ -0,0 +1,20 @@
+import React from 'react';
+
+const EuiIconMlClassificationJob = ({ title, titleId, ...props }) => (
+
+ {title ? {title} : null}
+
+
+
+);
+
+export const icon = EuiIconMlClassificationJob;
diff --git a/src/components/icon/assets/ml_classification_job.svg b/src/components/icon/assets/ml_classification_job.svg
new file mode 100644
index 00000000000..51a55973c66
--- /dev/null
+++ b/src/components/icon/assets/ml_classification_job.svg
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/src/components/icon/assets/ml_create_advanced_job.js b/src/components/icon/assets/ml_create_advanced_job.js
index 58419d4ad6d..43955149321 100644
--- a/src/components/icon/assets/ml_create_advanced_job.js
+++ b/src/components/icon/assets/ml_create_advanced_job.js
@@ -12,7 +12,7 @@ const EuiIconMlCreateAdvancedJob = ({ title, titleId, ...props }) => (
);
diff --git a/src/components/icon/assets/ml_create_advanced_job.svg b/src/components/icon/assets/ml_create_advanced_job.svg
index f0d5e51a89f..abb613fa54f 100644
--- a/src/components/icon/assets/ml_create_advanced_job.svg
+++ b/src/components/icon/assets/ml_create_advanced_job.svg
@@ -1,9 +1,4 @@
-
-
-
-
-
-
-
+
+
diff --git a/src/components/icon/assets/ml_create_multi_metric_job.js b/src/components/icon/assets/ml_create_multi_metric_job.js
index 0cf786a773a..4b06751e7cd 100644
--- a/src/components/icon/assets/ml_create_multi_metric_job.js
+++ b/src/components/icon/assets/ml_create_multi_metric_job.js
@@ -9,11 +9,11 @@ const EuiIconMlCreateMultiMetricJob = ({ title, titleId, ...props }) => (
aria-labelledby={titleId}
{...props}>
{title ?
{title} : null}
-
+
);
diff --git a/src/components/icon/assets/ml_create_multi_metric_job.svg b/src/components/icon/assets/ml_create_multi_metric_job.svg
index 3ec7e391f89..f48300444f0 100644
--- a/src/components/icon/assets/ml_create_multi_metric_job.svg
+++ b/src/components/icon/assets/ml_create_multi_metric_job.svg
@@ -1,7 +1,4 @@
-
-
-
-
-
+
+
diff --git a/src/components/icon/assets/ml_create_population_job.js b/src/components/icon/assets/ml_create_population_job.js
index eaa9bd689e0..9fc5959876f 100644
--- a/src/components/icon/assets/ml_create_population_job.js
+++ b/src/components/icon/assets/ml_create_population_job.js
@@ -9,10 +9,10 @@ const EuiIconMlCreatePopulationJob = ({ title, titleId, ...props }) => (
aria-labelledby={titleId}
{...props}>
{title ? {title} : null}
-
+
);
diff --git a/src/components/icon/assets/ml_create_population_job.svg b/src/components/icon/assets/ml_create_population_job.svg
index e9a3f870a91..8ab7f8e2d74 100644
--- a/src/components/icon/assets/ml_create_population_job.svg
+++ b/src/components/icon/assets/ml_create_population_job.svg
@@ -1,7 +1,4 @@
-
-
-
-
-
+
+
diff --git a/src/components/icon/assets/ml_data_visualizer.js b/src/components/icon/assets/ml_data_visualizer.js
index 66d6fcaaeb9..495792edc74 100644
--- a/src/components/icon/assets/ml_data_visualizer.js
+++ b/src/components/icon/assets/ml_data_visualizer.js
@@ -9,11 +9,11 @@ const EuiIconMlDataVisualizer = ({ title, titleId, ...props }) => (
aria-labelledby={titleId}
{...props}>
{title ? {title} : null}
+
-
);
diff --git a/src/components/icon/assets/ml_data_visualizer.svg b/src/components/icon/assets/ml_data_visualizer.svg
index c2922e50228..17adf828cdb 100755
--- a/src/components/icon/assets/ml_data_visualizer.svg
+++ b/src/components/icon/assets/ml_data_visualizer.svg
@@ -1,10 +1,4 @@
-
-
-
-
-
-
-
-
+
+
diff --git a/src/components/icon/assets/ml_outlier_detection_job.js b/src/components/icon/assets/ml_outlier_detection_job.js
new file mode 100644
index 00000000000..f3b1f9c2043
--- /dev/null
+++ b/src/components/icon/assets/ml_outlier_detection_job.js
@@ -0,0 +1,20 @@
+import React from 'react';
+
+const EuiIconMlOutlierDetectionJob = ({ title, titleId, ...props }) => (
+
+ {title ? {title} : null}
+
+
+
+);
+
+export const icon = EuiIconMlOutlierDetectionJob;
diff --git a/src/components/icon/assets/ml_outlier_detection_job.svg b/src/components/icon/assets/ml_outlier_detection_job.svg
new file mode 100644
index 00000000000..c75a8120a9f
--- /dev/null
+++ b/src/components/icon/assets/ml_outlier_detection_job.svg
@@ -0,0 +1,7 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/components/icon/assets/ml_regression_job.js b/src/components/icon/assets/ml_regression_job.js
new file mode 100644
index 00000000000..8780782a4ae
--- /dev/null
+++ b/src/components/icon/assets/ml_regression_job.js
@@ -0,0 +1,20 @@
+import React from 'react';
+
+const EuiIconMlRegressionJob = ({ title, titleId, ...props }) => (
+
+ {title ? {title} : null}
+
+
+
+);
+
+export const icon = EuiIconMlRegressionJob;
diff --git a/src/components/icon/assets/ml_regression_job.svg b/src/components/icon/assets/ml_regression_job.svg
new file mode 100644
index 00000000000..d76158bc58b
--- /dev/null
+++ b/src/components/icon/assets/ml_regression_job.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/src/components/icon/icon.tsx b/src/components/icon/icon.tsx
index a1402d3564a..658f107890c 100644
--- a/src/components/icon/icon.tsx
+++ b/src/components/icon/icon.tsx
@@ -71,6 +71,7 @@ const typeToPathMap = {
check: 'check',
checkInCircleFilled: 'checkInCircleFilled',
cheer: 'cheer',
+ classificationJob: 'ml_classification_job',
clock: 'clock',
cloudDrizzle: 'cloudDrizzle',
cloudStormy: 'cloudStormy',
@@ -280,6 +281,7 @@ const typeToPathMap = {
number: 'number',
offline: 'offline',
online: 'online',
+ outlierDetectionJob: 'ml_outlier_detection_job',
package: 'package',
packetbeatApp: 'app_packetbeat',
pageSelect: 'pageSelect',
@@ -300,6 +302,7 @@ const typeToPathMap = {
quote: 'quote',
recentlyViewedApp: 'app_recently_viewed',
refresh: 'refresh',
+ regressionJob: 'ml_regression_job',
reporter: 'reporter',
reportingApp: 'app_reporting',
returnKey: 'return_key',