diff --git a/package-lock.json b/package-lock.json index 4f0a647d1..cec315d15 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@devtron-labs/devtron-fe-common-lib", - "version": "1.20.6-pre-27", + "version": "1.20.6-pre-28", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@devtron-labs/devtron-fe-common-lib", - "version": "1.20.6-pre-27", + "version": "1.20.6-pre-28", "hasInstallScript": true, "license": "ISC", "dependencies": { diff --git a/package.json b/package.json index c3d8d9361..90bdf1c35 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@devtron-labs/devtron-fe-common-lib", - "version": "1.20.6-pre-27", + "version": "1.20.6-pre-28", "description": "Supporting common component library", "type": "module", "main": "dist/index.js", diff --git a/src/Assets/IconV2/ic-book-gear.svg b/src/Assets/IconV2/ic-book-gear.svg new file mode 100644 index 000000000..aad326fba --- /dev/null +++ b/src/Assets/IconV2/ic-book-gear.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/Assets/IconV2/ic-check-green.svg b/src/Assets/IconV2/ic-check-green.svg new file mode 100644 index 000000000..3d2537bba --- /dev/null +++ b/src/Assets/IconV2/ic-check-green.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Assets/IconV2/ic-close-circle-red.svg b/src/Assets/IconV2/ic-close-circle-red.svg new file mode 100644 index 000000000..39eb6570a --- /dev/null +++ b/src/Assets/IconV2/ic-close-circle-red.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Assets/IconV2/ic-close-circle.svg b/src/Assets/IconV2/ic-close-circle.svg new file mode 100644 index 000000000..5c48b3451 --- /dev/null +++ b/src/Assets/IconV2/ic-close-circle.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Assets/IconV2/ic-confirm.svg b/src/Assets/IconV2/ic-confirm.svg new file mode 100644 index 000000000..33f68aeed --- /dev/null +++ b/src/Assets/IconV2/ic-confirm.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Assets/IconV2/ic-info-filled-new.svg b/src/Assets/IconV2/ic-info-filled-new.svg new file mode 100644 index 000000000..121dc6fc3 --- /dev/null +++ b/src/Assets/IconV2/ic-info-filled-new.svg @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/src/Assets/IconV2/ic-pencil-white.svg b/src/Assets/IconV2/ic-pencil-white.svg new file mode 100644 index 000000000..85f43a527 --- /dev/null +++ b/src/Assets/IconV2/ic-pencil-white.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Assets/IconV2/ic-timer-green.svg b/src/Assets/IconV2/ic-timer-green.svg new file mode 100644 index 000000000..da7308969 --- /dev/null +++ b/src/Assets/IconV2/ic-timer-green.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Assets/IconV2/ic-timer-red.svg b/src/Assets/IconV2/ic-timer-red.svg new file mode 100644 index 000000000..fd3f830d4 --- /dev/null +++ b/src/Assets/IconV2/ic-timer-red.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/Common/Constants.ts b/src/Common/Constants.ts index f695527af..58dc559d2 100644 --- a/src/Common/Constants.ts +++ b/src/Common/Constants.ts @@ -144,6 +144,7 @@ export const URLS = { AI_RECOMMENDATIONS: AI_RECOMMENDATIONS_ROOT, AI_RECOMMENDATIONS_NOTIFICATIONS: `${AI_RECOMMENDATIONS_ROOT}/notifications`, EXTERNAL_APPS: 'ea', + AI_RECOMMENDATIONS_RUNBOOKS: `${AI_RECOMMENDATIONS_ROOT}/runbooks`, } as const export const ROUTES = { diff --git a/src/Shared/Components/DocLink/constants.ts b/src/Shared/Components/DocLink/constants.ts index a8dbe184b..988793b59 100644 --- a/src/Shared/Components/DocLink/constants.ts +++ b/src/Shared/Components/DocLink/constants.ts @@ -90,7 +90,8 @@ export const DOCUMENTATION = { SECURITY: 'usage/security-features', SPECIFY_IMAGE_PULL_SECRET: 'getting-started/global-configurations/container-registries#specify-image-pull-secret', TENANT_INSTALLATION: 'usage/software-distribution-hub/tenants', - + // Todo: Replace with correct Url + SAMPLE_RUNBOOK_LINK: 'https://github.com/devtron-labs/athena-be/wiki/Runbook-Actions', // ENTERPRISE CEL: 'https://github.com/google/cel-spec/blob/master/doc/langdef.md', KUBERNETES_LABELS: 'https://kubernetes.io/docs/concepts/overview/working-with-objects/labels', diff --git a/src/Shared/Components/Icon/Icon.tsx b/src/Shared/Components/Icon/Icon.tsx index c6d790773..9dd61269e 100644 --- a/src/Shared/Components/Icon/Icon.tsx +++ b/src/Shared/Components/Icon/Icon.tsx @@ -34,6 +34,7 @@ import { ReactComponent as ICBgScan } from '@IconsV2/ic-bg-scan.svg' import { ReactComponent as ICBgWebhook } from '@IconsV2/ic-bg-webhook.svg' import { ReactComponent as ICBharatpe } from '@IconsV2/ic-bharatpe.svg' import { ReactComponent as ICBitbucket } from '@IconsV2/ic-bitbucket.svg' +import { ReactComponent as ICBookGear } from '@IconsV2/ic-book-gear.svg' import { ReactComponent as ICBookOpen } from '@IconsV2/ic-book-open.svg' import { ReactComponent as ICBot } from '@IconsV2/ic-bot.svg' import { ReactComponent as ICBrain } from '@IconsV2/ic-brain.svg' @@ -54,6 +55,7 @@ import { ReactComponent as ICChatCircleOnline } from '@IconsV2/ic-chat-circle-on import { ReactComponent as ICCheck } from '@IconsV2/ic-check.svg' import { ReactComponent as ICCheckAll } from '@IconsV2/ic-check-all.svg' import { ReactComponent as ICCheckCircle } from '@IconsV2/ic-check-circle.svg' +import { ReactComponent as ICCheckGreen } from '@IconsV2/ic-check-green.svg' import { ReactComponent as ICCheckSquare } from '@IconsV2/ic-check-square.svg' import { ReactComponent as ICChecks } from '@IconsV2/ic-checks.svg' import { ReactComponent as ICCiLinked } from '@IconsV2/ic-ci-linked.svg' @@ -64,6 +66,8 @@ import { ReactComponent as ICCleanBrush } from '@IconsV2/ic-clean-brush.svg' import { ReactComponent as ICClipboard } from '@IconsV2/ic-clipboard.svg' import { ReactComponent as ICClock } from '@IconsV2/ic-clock.svg' import { ReactComponent as ICClockCounterclockwise } from '@IconsV2/ic-clock-counterclockwise.svg' +import { ReactComponent as ICCloseCircle } from '@IconsV2/ic-close-circle.svg' +import { ReactComponent as ICCloseCircleRed } from '@IconsV2/ic-close-circle-red.svg' import { ReactComponent as ICCloseLarge } from '@IconsV2/ic-close-large.svg' import { ReactComponent as ICCloseSmall } from '@IconsV2/ic-close-small.svg' import { ReactComponent as ICCloud } from '@IconsV2/ic-cloud.svg' @@ -72,6 +76,7 @@ import { ReactComponent as ICCluster } from '@IconsV2/ic-cluster.svg' import { ReactComponent as ICClusterIsolated } from '@IconsV2/ic-cluster-isolated.svg' import { ReactComponent as ICCode } from '@IconsV2/ic-code.svg' import { ReactComponent as ICCoins } from '@IconsV2/ic-coins.svg' +import { ReactComponent as ICConfirm } from '@IconsV2/ic-confirm.svg' import { ReactComponent as ICContainer } from '@IconsV2/ic-container.svg' import { ReactComponent as ICContainerRegistry } from '@IconsV2/ic-container-registry.svg' import { ReactComponent as ICCookr } from '@IconsV2/ic-cookr.svg' @@ -161,6 +166,7 @@ import { ReactComponent as ICHibernateCircle } from '@IconsV2/ic-hibernate-circl import { ReactComponent as ICInProgress } from '@IconsV2/ic-in-progress.svg' import { ReactComponent as ICInfoFilled } from '@IconsV2/ic-info-filled.svg' import { ReactComponent as ICInfoFilledColor } from '@IconsV2/ic-info-filled-color.svg' +import { ReactComponent as ICInfoFilledNew } from '@IconsV2/ic-info-filled-new.svg' import { ReactComponent as ICInfoOutline } from '@IconsV2/ic-info-outline.svg' import { ReactComponent as ICInput } from '@IconsV2/ic-input.svg' import { ReactComponent as ICInstall } from '@IconsV2/ic-install.svg' @@ -216,6 +222,7 @@ import { ReactComponent as ICParty } from '@IconsV2/ic-party.svg' import { ReactComponent as ICPath } from '@IconsV2/ic-path.svg' import { ReactComponent as ICPauseCircle } from '@IconsV2/ic-pause-circle.svg' import { ReactComponent as ICPencil } from '@IconsV2/ic-pencil.svg' +import { ReactComponent as ICPencilWhite } from '@IconsV2/ic-pencil-white.svg' import { ReactComponent as ICPiggybank } from '@IconsV2/ic-piggybank.svg' import { ReactComponent as ICPlayOutline } from '@IconsV2/ic-play-outline.svg' import { ReactComponent as ICPriorityHighFill } from '@IconsV2/ic-priority-high-fill.svg' @@ -269,6 +276,8 @@ import { ReactComponent as ICThumbDown } from '@IconsV2/ic-thumb-down.svg' import { ReactComponent as ICThumbUp } from '@IconsV2/ic-thumb-up.svg' import { ReactComponent as ICTimeoutDash } from '@IconsV2/ic-timeout-dash.svg' import { ReactComponent as ICTimer } from '@IconsV2/ic-timer.svg' +import { ReactComponent as ICTimerGreen } from '@IconsV2/ic-timer-green.svg' +import { ReactComponent as ICTimerRed } from '@IconsV2/ic-timer-red.svg' import { ReactComponent as ICTrafficSignal } from '@IconsV2/ic-traffic-signal.svg' import { ReactComponent as ICTravclan } from '@IconsV2/ic-travclan.svg' import { ReactComponent as ICTrendUp } from '@IconsV2/ic-trend-up.svg' @@ -328,6 +337,7 @@ export const iconMap = { 'ic-bg-webhook': ICBgWebhook, 'ic-bharatpe': ICBharatpe, 'ic-bitbucket': ICBitbucket, + 'ic-book-gear': ICBookGear, 'ic-book-open': ICBookOpen, 'ic-bot': ICBot, 'ic-brain': ICBrain, @@ -347,6 +357,7 @@ export const iconMap = { 'ic-chat-circle-online': ICChatCircleOnline, 'ic-check-all': ICCheckAll, 'ic-check-circle': ICCheckCircle, + 'ic-check-green': ICCheckGreen, 'ic-check-square': ICCheckSquare, 'ic-check': ICCheck, 'ic-checks': ICChecks, @@ -358,6 +369,8 @@ export const iconMap = { 'ic-clipboard': ICClipboard, 'ic-clock-counterclockwise': ICClockCounterclockwise, 'ic-clock': ICClock, + 'ic-close-circle-red': ICCloseCircleRed, + 'ic-close-circle': ICCloseCircle, 'ic-close-large': ICCloseLarge, 'ic-close-small': ICCloseSmall, 'ic-cloud-vms': ICCloudVms, @@ -366,6 +379,7 @@ export const iconMap = { 'ic-cluster': ICCluster, 'ic-code': ICCode, 'ic-coins': ICCoins, + 'ic-confirm': ICConfirm, 'ic-container-registry': ICContainerRegistry, 'ic-container': ICContainer, 'ic-cookr': ICCookr, @@ -454,6 +468,7 @@ export const iconMap = { 'ic-hibernate': ICHibernate, 'ic-in-progress': ICInProgress, 'ic-info-filled-color': ICInfoFilledColor, + 'ic-info-filled-new': ICInfoFilledNew, 'ic-info-filled': ICInfoFilled, 'ic-info-outline': ICInfoOutline, 'ic-input': ICInput, @@ -509,6 +524,7 @@ export const iconMap = { 'ic-party': ICParty, 'ic-path': ICPath, 'ic-pause-circle': ICPauseCircle, + 'ic-pencil-white': ICPencilWhite, 'ic-pencil': ICPencil, 'ic-piggybank': ICPiggybank, 'ic-play-outline': ICPlayOutline, @@ -562,6 +578,8 @@ export const iconMap = { 'ic-thumb-down': ICThumbDown, 'ic-thumb-up': ICThumbUp, 'ic-timeout-dash': ICTimeoutDash, + 'ic-timer-green': ICTimerGreen, + 'ic-timer-red': ICTimerRed, 'ic-timer': ICTimer, 'ic-traffic-signal': ICTrafficSignal, 'ic-travclan': ICTravclan, diff --git a/src/Shared/Hooks/useUserPreferences/types.ts b/src/Shared/Hooks/useUserPreferences/types.ts index e0b280ad0..db29cabdd 100644 --- a/src/Shared/Hooks/useUserPreferences/types.ts +++ b/src/Shared/Hooks/useUserPreferences/types.ts @@ -57,6 +57,8 @@ export type NavigationItemID = | 'data-protection-backup-repositories' | 'data-protection-backup-locations' | 'data-protection-history-and-logs' + | 'ai-recommendations-overview' + | 'ai-recommendations-runbooks' | 'ai-recommendations-notifications' export type NavigationSubMenuItemID = @@ -66,6 +68,7 @@ export type NavigationSubMenuItemID = | 'application-management-configurations-chart-repository' | 'application-management-configurations-deployment-charts' | 'application-management-configurations-notifications' + | 'application-management-configurations-runbook' | 'application-management-configurations-catalog-frameworks' | 'application-management-configurations-scoped-variables' | 'application-management-configurations-build-infra'