diff --git a/packages/core/src/icon/collections/social.ts b/packages/core/src/icon/collections/social.ts
index f8b6883c1..36b1c3877 100644
--- a/packages/core/src/icon/collections/social.ts
+++ b/packages/core/src/icon/collections/social.ts
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2020 VMware, Inc. All Rights Reserved.
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
* This software is released under MIT license.
* The full license information can be found in LICENSE in the root directory of this project.
*/
@@ -10,6 +10,7 @@ import { IconAlias, IconShapeTuple } from '../interfaces/icon.interfaces.js';
import { bookmarkIcon, bookmarkIconName } from '../shapes/bookmark.js';
import { calendarIcon, calendarIconName } from '../shapes/calendar.js';
import { chatBubbleIcon, chatBubbleIconName } from '../shapes/chat-bubble.js';
+import { contractIcon, contractIconName } from '../shapes/contract.js';
import { crownIcon, crownIconName } from '../shapes/crown.js';
import { envelopeIcon, envelopeIconName } from '../shapes/envelope.js';
import { eventIcon, eventIconName } from '../shapes/event.js';
@@ -34,6 +35,7 @@ export const socialCollectionIcons: IconShapeTuple[] = [
bookmarkIcon,
calendarIcon,
chatBubbleIcon,
+ contractIcon,
crownIcon,
envelopeIcon,
eventIcon,
@@ -82,6 +84,7 @@ declare module '@cds/core/internal' {
[bookmarkIconName]: string;
[calendarIconName]: string;
[chatBubbleIconName]: string;
+ [contractIconName]: string;
[crownIconName]: string;
[envelopeIconName]: string;
[eventIconName]: string;
diff --git a/packages/core/src/icon/icon.performance.ts b/packages/core/src/icon/icon.performance.ts
index 89a77053e..db24c593b 100644
--- a/packages/core/src/icon/icon.performance.ts
+++ b/packages/core/src/icon/icon.performance.ts
@@ -36,7 +36,7 @@ describe('cds-icon performance', () => {
loadTextEditIconSet();
loadTravelIconSet();
`;
- expect((await testBundleSize(bundle)).kb).toBeLessThan(105);
+ expect((await testBundleSize(bundle)).kb).toBeLessThan(106);
});
const icon = html``;
diff --git a/packages/core/src/icon/index.ts b/packages/core/src/icon/index.ts
index c3c6c7113..cae29e09d 100644
--- a/packages/core/src/icon/index.ts
+++ b/packages/core/src/icon/index.ts
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2021 VMware, Inc. All Rights Reserved.
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
* This software is released under MIT license.
* The full license information can be found in LICENSE in the root directory of this project.
*/
@@ -357,6 +357,7 @@ export { wifiIcon, wifiIconName } from './shapes/wifi.js';
// SHAPES - SOCIAL
export { bookmarkIcon, bookmarkIconName } from './shapes/bookmark.js';
export { chatBubbleIcon, chatBubbleIconName } from './shapes/chat-bubble.js';
+export { contractIcon, contractIconName } from './shapes/contract.js';
export { crownIcon, crownIconName } from './shapes/crown.js';
export { envelopeIcon, envelopeIconName } from './shapes/envelope.js';
export { flagIcon, flagIconName } from './shapes/flag.js';
diff --git a/packages/core/src/icon/shapes/contract.ts b/packages/core/src/icon/shapes/contract.ts
new file mode 100644
index 000000000..cc8929669
--- /dev/null
+++ b/packages/core/src/icon/shapes/contract.ts
@@ -0,0 +1,18 @@
+/*
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
+ * This software is released under MIT license.
+ * The full license information can be found in LICENSE in the root directory of this project.
+ */
+
+import { renderIcon } from '../icon.renderer.js';
+import { IconShapeTuple } from '../interfaces/icon.interfaces.js';
+
+const icon = {
+ outline:
+ '',
+ solid:
+ '',
+};
+
+export const contractIconName = 'contract';
+export const contractIcon: IconShapeTuple = [contractIconName, renderIcon(icon)];