fix(ui): modify activity feed icon and text (#12595)

* modify activity feed icon and text

* fix edit icon issue in custom properties and made changes as per comments

---------

Co-authored-by: Chirag Madlani <12962843+chirag-madlani@users.noreply.github.com>
This commit is contained in:
Ashish Gupta 2023-07-26 15:20:27 +05:30 committed by GitHub
parent e3278cb578
commit ff7fbcd699
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 143 additions and 51 deletions

View File

@ -0,0 +1,25 @@
<svg viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_2826_34844)">
<path d="M10.2266 5.17973C9.6875 5.5391 9.6875 5.52348 9.6875 9.15629V12.4219H9.17187C8.53125 12.4219 8.17969 12.5782 7.90625 12.9922L7.69531 13.3125L7.67187 17.086L7.64844 20.8594H7.08594C6.40625 20.8594 5.96094 21.0391 5.69531 21.4141L5.50781 21.6797L5.48437 32.8985L5.46875 44.1172L5.64844 44.3829C5.74219 44.5235 5.94531 44.7266 6.08594 44.8204L6.35156 45H24.9766C45.6172 45 43.8359 45.0469 44.2734 44.4766L44.4922 44.1954L44.5156 42.3594C44.5391 40.8438 44.5234 40.5 44.4219 40.3516C44.1875 39.9922 43.5469 40.0391 43.3672 40.4375C43.3125 40.5625 43.2812 41.1954 43.2812 42.1797C43.2812 43.5235 43.2656 43.7422 43.1562 43.7813C43.0859 43.8047 34.8984 43.8282 24.9609 43.8282C8.63281 43.8282 6.875 43.8125 6.76562 43.7032C6.65625 43.5938 6.64062 42.75 6.64062 35.5782V27.5782H24.9609H43.2812V32.9297C43.2812 36.7344 43.3047 38.3282 43.3672 38.4688C43.4766 38.711 43.8125 38.8516 44.0937 38.7813C44.5547 38.6719 44.5312 39.1563 44.5312 30.1485V21.8985L44.3516 21.5625C44.0859 21.0625 43.6641 20.8594 42.875 20.8594H42.2656V17.0782V13.3047L42.0859 13.0391C41.7812 12.586 41.4531 12.4219 40.8516 12.4219H40.3125V9.19535C40.3125 6.18754 40.2969 5.95317 40.1562 5.64848C40.0703 5.45317 39.8984 5.25004 39.75 5.15629C39.4922 5.00004 39.3984 5.00004 24.9922 5.00004H10.4922L10.2266 5.17973ZM29.1641 6.2266L39.0625 6.27348V7.75004V9.21879H25H10.9375V7.69535V6.17192H15.1016C17.3828 6.17192 23.7109 6.19535 29.1641 6.2266ZM39.0625 11.4454V12.4219H30.8359C21.8594 12.4219 22.3437 12.3985 22.2344 12.8594C22.1641 13.1407 22.3047 13.4766 22.5469 13.586C22.6875 13.6485 25.2578 13.6719 31.875 13.6719H41.0156V15.4297V17.1875H24.9609H8.90625V15.4297V13.6719H14.6797C20.3125 13.6719 20.4531 13.6719 20.6484 13.5157C20.75 13.4297 20.8672 13.2735 20.8906 13.1641C20.9453 12.9375 20.7734 12.5469 20.5859 12.4688C20.5156 12.4454 18.3125 12.4219 15.6953 12.4219H10.9375V11.4454V10.4688H25H39.0625V11.4454ZM41.0156 19.6485V20.8594H35.5156C30.0781 20.8594 30.0156 20.8594 29.8125 21.0235C29.5625 21.2188 29.5391 21.6094 29.7578 21.8829L29.9062 22.0704L36.5781 22.1094L43.2422 22.1485L43.2656 24.2344L43.2812 26.3282H24.9609H6.64062V24.3438C6.64062 23.25 6.66406 22.3047 6.6875 22.2344C6.73437 22.125 7.74219 22.1094 17.3203 22.1094H27.8984L28.0859 21.9141C28.3437 21.6641 28.3437 21.3047 28.0859 21.0547L27.8984 20.8594H18.3984H8.90625V19.6485V18.4375H24.9609H41.0156V19.6485Z" fill="#757575"/>
<path d="M34.266 6.89846C34.1957 7.00783 34.1566 7.30471 34.1566 7.75002C34.1488 8.50002 34.2582 8.69533 34.6644 8.68752C34.9301 8.67971 35.2738 8.67971 35.5785 8.68752C35.9144 8.69533 36.2035 8.33596 36.1332 8.01565C36.1019 7.88283 36.0863 7.70315 36.0941 7.61721C36.1879 6.84377 36.0629 6.7344 35.1098 6.72658C34.4379 6.72658 34.3676 6.74221 34.266 6.89846Z" fill="#757575"/>
<path d="M13.9135 7.31256C13.5931 7.71881 13.7963 8.22662 14.3119 8.32037C14.4525 8.34381 15.8666 8.35943 17.4447 8.34381L20.3275 8.32037L20.515 8.10162C20.7416 7.836 20.7572 7.586 20.5385 7.31256L20.3822 7.10943H17.226H14.0697L13.9135 7.31256Z" fill="#757575"/>
<path d="M36.7418 14.3751C36.4137 14.5079 36.2887 15.0548 36.5231 15.3126C36.6325 15.4298 36.6325 15.4532 36.5231 15.547C36.3356 15.7032 36.3746 16.1485 36.6012 16.3673C36.8121 16.586 37.0465 16.6095 37.3512 16.4532C37.5231 16.3673 37.5778 16.3673 37.695 16.4532C37.8981 16.6095 38.1481 16.586 38.3746 16.4063C38.6168 16.2188 38.6793 15.9532 38.5543 15.6563C38.484 15.4845 38.484 15.3751 38.5543 15.211C38.6793 14.9142 38.6168 14.6407 38.3746 14.4532C38.1481 14.2735 37.8981 14.2501 37.695 14.4063C37.5621 14.5001 37.5153 14.5001 37.3278 14.4063C37.0856 14.2813 36.984 14.2735 36.7418 14.3751Z" fill="#757575"/>
<path d="M11.6799 15.0001C11.4768 15.2266 11.4846 15.6641 11.7033 15.8829C11.8752 16.0547 11.8987 16.0547 14.7502 16.0782C16.3283 16.0938 17.7346 16.0782 17.8752 16.0547C18.0158 16.0313 18.2033 15.9376 18.2893 15.8516C18.4846 15.6563 18.4846 15.2344 18.2815 15.0157C18.1174 14.8438 18.1096 14.8438 14.969 14.8438C11.8987 14.8438 11.8205 14.8438 11.6799 15.0001Z" fill="#757575"/>
<path d="M34.1714 23.0781C33.8823 23.3203 33.8667 23.7812 34.1323 23.9922C34.2886 24.1172 34.4527 24.1406 35.273 24.1406C36.2261 24.1406 36.2417 24.1406 36.398 23.9375C36.4917 23.8203 36.562 23.6484 36.562 23.5469C36.562 23.0312 36.2808 22.8906 35.2027 22.8906C34.4527 22.8906 34.3667 22.9062 34.1714 23.0781Z" fill="#757575"/>
<path d="M38.3828 23.0313C38.1641 23.0625 37.8906 23.3984 37.8906 23.6328C37.8906 23.7266 37.9609 23.8984 38.0469 24.0078C38.1797 24.1719 38.1875 24.2188 38.0859 24.2969C37.9062 24.4453 37.8672 24.8047 38 25.0703C38.1719 25.3906 38.5938 25.4766 38.8984 25.25C39.1016 25.1016 39.1094 25.1016 39.2891 25.2422C39.6094 25.5078 40.0156 25.4219 40.2031 25.0625C40.3359 24.8047 40.2891 24.4453 40.1172 24.2969C40.0156 24.2188 40.0234 24.1719 40.1562 24.0078C40.3516 23.7578 40.3516 23.5156 40.1562 23.2656C39.9531 23.0078 39.6641 22.9531 39.3359 23.125C39.1797 23.2031 39.0469 23.2344 39.0234 23.2031C38.9609 23.1016 38.5703 23 38.3828 23.0313Z" fill="#757575"/>
<path d="M10.1804 23.7266C10.0789 23.7422 9.93045 23.8516 9.8367 23.9688C9.65701 24.2031 9.68045 24.5391 9.8992 24.7812C10.0164 24.9141 10.2273 24.9219 13.1648 24.9219H16.3054L16.4695 24.7422C16.782 24.4062 16.6648 23.9062 16.2429 23.7578C16.0008 23.6719 10.5945 23.6484 10.1804 23.7266Z" fill="#757575"/>
<path d="M34.1016 24.5312C34.0156 24.625 33.9531 24.8125 33.9531 24.9609C33.9531 25.1094 34.0156 25.2969 34.1016 25.3906C34.2266 25.5312 34.3359 25.5469 35.2422 25.5469C36.2266 25.5469 36.2422 25.5469 36.3984 25.3438C36.4922 25.2266 36.5625 25.0547 36.5625 24.9609C36.5625 24.8672 36.4922 24.6953 36.3984 24.5781C36.2422 24.375 36.2266 24.375 35.2422 24.375C34.3359 24.375 34.2266 24.3906 34.1016 24.5312Z" fill="#757575"/>
<path d="M12.2888 29.6172C11.781 29.8126 11.1873 30.336 10.9216 30.836C10.8044 31.0391 10.6716 31.4454 10.6169 31.7344C10.5388 32.1797 10.5388 32.3282 10.656 32.7891C10.8904 33.7579 11.4841 34.4219 12.4138 34.7735C12.7654 34.9063 12.9685 34.9297 13.4763 34.9063C14.5388 34.8438 15.3279 34.3282 15.7966 33.3751C16.0232 32.9141 16.0544 32.7813 16.0544 32.1876C16.0544 31.6172 16.0232 31.4532 15.8279 31.0313C15.5388 30.4141 14.9373 29.8438 14.3357 29.6172C13.7576 29.3985 12.8513 29.3985 12.2888 29.6172ZM13.8826 30.7891C14.1951 30.9063 14.5232 31.2344 14.6951 31.6016C15.2732 32.8516 13.8826 34.1407 12.6482 33.4922C11.8123 33.0469 11.5857 32.0235 12.156 31.2657C12.531 30.7813 13.2966 30.5626 13.8826 30.7891Z" fill="#1890FF"/>
<path d="M18.125 30.5625C17.9219 30.7812 17.9219 31.2031 18.125 31.4062C18.2656 31.5469 18.3828 31.5625 19.6094 31.5625C20.8359 31.5625 20.9531 31.5469 21.0938 31.4062C21.1875 31.3125 21.25 31.1484 21.25 30.9766C21.25 30.8047 21.1875 30.6406 21.0938 30.5469C20.9531 30.4062 20.8359 30.3906 19.6094 30.3906C18.3516 30.3906 18.2812 30.3984 18.125 30.5625Z" fill="#1890FF"/>
<path d="M18.125 32.3438C17.9219 32.5469 17.9219 32.9688 18.125 33.1875L18.2891 33.3594H26.75C35.1797 33.3594 35.2109 33.3594 35.3516 33.2031C35.4375 33.1094 35.5 32.9219 35.5 32.7734C35.5 32.625 35.4375 32.4375 35.3516 32.3438C35.2109 32.1875 35.1797 32.1875 26.7422 32.1875C18.3828 32.1875 18.2812 32.1875 18.125 32.3438Z" fill="#757575"/>
<path d="M12.4923 36.3126C11.2969 36.711 10.586 37.7188 10.5938 38.9844C10.5938 39.4532 10.6407 39.6719 10.8126 40.0391C11.7969 42.2032 14.7891 42.2422 15.8282 40.0938C16.0235 39.711 16.0469 39.5547 16.0548 38.9454C16.0548 38.3438 16.0235 38.1797 15.8438 37.7969C15.2579 36.5391 13.7813 35.8907 12.4923 36.3126ZM14.1407 37.6876C14.5157 37.9297 14.7501 38.3204 14.8126 38.7735C14.9141 39.5079 14.3282 40.2657 13.5391 40.4297C12.9063 40.5626 12.0626 39.9922 11.8751 39.3047C11.6954 38.6407 12.0391 37.9454 12.6954 37.6094C13.1719 37.3672 13.6954 37.3907 14.1407 37.6876Z" fill="#1890FF"/>
<path d="M18.1641 37.6172C18.0391 37.7344 17.9688 37.8984 17.9688 38.0469C17.9688 38.1953 18.0391 38.3594 18.1641 38.4766C18.3516 38.6641 18.3828 38.6719 19.5938 38.6719C20.7344 38.6719 20.8594 38.6562 21.0469 38.5078C21.3203 38.2969 21.3281 37.8359 21.0703 37.5938C20.8984 37.4297 20.8125 37.4219 19.6172 37.4219C18.375 37.4219 18.3516 37.4297 18.1641 37.6172Z" fill="#1890FF"/>
<path d="M18.1321 39.4219C17.9134 39.7031 17.9212 40.0391 18.1634 40.2734L18.3509 40.4688H26.7025C34.9134 40.4688 35.0618 40.4688 35.2571 40.3125C35.3587 40.2266 35.4759 40.0703 35.4993 39.9609C35.554 39.7344 35.3821 39.3438 35.1946 39.2656C35.1243 39.2422 31.2884 39.2188 26.679 39.2188H18.2884L18.1321 39.4219Z" fill="#757575"/>
</g>
<defs>
<clipPath id="clip0_2826_34844">
<rect width="40" height="40" fill="white" transform="translate(5 5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

@ -0,0 +1,12 @@
<svg viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.17427 0.0954635C4.39168 0.335004 3.71235 0.860966 3.36453 1.49628C2.97322 2.22012 3.0004 1.37651 3.0004 11.8487C3.0004 20.967 3.00584 21.2952 3.10366 21.6023C3.35366 22.3679 4.03843 23.0188 4.84276 23.2427C5.10363 23.3156 5.81556 23.3261 11.0274 23.3261H16.9132V24.0551C16.9132 24.7165 16.9241 24.7945 17.0218 24.8883C17.2284 25.0862 17.4784 25.0289 18.0653 24.654C18.3588 24.4665 18.6197 24.3155 18.6523 24.3155C18.6849 24.3155 18.9458 24.4665 19.2392 24.654C19.8262 25.0289 20.0762 25.0862 20.2827 24.8883C20.3805 24.7945 20.3914 24.7165 20.3914 24.0551V23.3261H21.587C22.712 23.3261 22.7881 23.3209 22.8914 23.2219C23 23.1177 23 23.0501 23 11.6613C23 0.272518 23 0.204821 22.8914 0.100671C22.7826 -0.00347826 22.712 -0.00347822 14.1307 0.00172946C6.00578 0.00172946 5.45688 0.00693711 5.17427 0.0954635ZM22.1305 9.57829V18.3269H13.6143H5.09276L4.73407 18.4518C4.53841 18.5195 4.26125 18.6445 4.11995 18.7383L3.86995 18.9049V10.9739C3.86995 5.92784 3.89169 2.91272 3.9243 2.67838C3.9569 2.48049 4.03843 2.19408 4.11451 2.04307C4.39712 1.44941 5.05471 0.980734 5.74492 0.887C5.92426 0.860967 9.68507 0.840138 14.1035 0.834923L22.1305 0.829718V9.57829ZM22.1305 19.7849V20.4099H14.848C7.63619 20.4099 7.56554 20.4099 7.45684 20.514C7.3862 20.5817 7.34815 20.6859 7.34815 20.8264C7.34815 20.967 7.3862 21.0712 7.45684 21.1389C7.56554 21.243 7.63619 21.243 12.2394 21.243H16.9132V21.868V22.4928H11.3317C7.74488 22.4928 5.61992 22.472 5.3971 22.4408C4.97319 22.3731 4.69059 22.2377 4.40799 21.9668C4.07103 21.644 3.9243 21.3003 3.9243 20.8212C3.9243 20.4827 3.94604 20.3786 4.08734 20.1078C4.34821 19.6131 4.77755 19.3111 5.34818 19.2173C5.50579 19.1913 9.34811 19.1705 13.8861 19.1653L22.1305 19.1601V19.7849ZM19.5218 22.4981V23.7531L19.3751 23.6645C19.2882 23.6124 19.136 23.5135 19.0327 23.4459C18.7882 23.2896 18.5164 23.2896 18.2719 23.4459C18.1686 23.5135 18.0164 23.6124 17.935 23.6645L17.7827 23.7531V22.4981V21.243H18.6523H19.5218V22.4981ZM22.1305 21.868V22.4928H21.2609H20.3914V21.868V21.243H21.2609H22.1305V21.868Z" fill="currentColor"/>
<path d="M5.95703 2.44141C5.87402 2.52441 5.85938 2.60254 5.85938 2.92969C5.85938 3.39844 5.9375 3.51562 6.25 3.51562C6.5625 3.51562 6.64062 3.39844 6.64062 2.92969C6.64062 2.46094 6.5625 2.34375 6.25 2.34375C6.11816 2.34375 6.02051 2.37793 5.95703 2.44141Z" fill="currentColor"/>
<path d="M5.95703 4.39453C5.85938 4.49219 5.85938 4.55566 5.85938 9.76562C5.85938 14.9756 5.85938 15.0391 5.95703 15.1367C6.08887 15.2686 6.41113 15.2686 6.54297 15.1367C6.64062 15.0391 6.64062 14.9756 6.64062 9.76562C6.64062 4.55566 6.64062 4.49219 6.54297 4.39453C6.47949 4.33105 6.38184 4.29688 6.25 4.29688C6.11816 4.29688 6.02051 4.33105 5.95703 4.39453Z" fill="currentColor"/>
<path d="M5.95703 16.1133C5.87402 16.1963 5.85938 16.2744 5.85938 16.6016C5.85938 17.0703 5.9375 17.1875 6.25 17.1875C6.5625 17.1875 6.64062 17.0703 6.64062 16.6016C6.64062 16.1328 6.5625 16.0156 6.25 16.0156C6.11816 16.0156 6.02051 16.0498 5.95703 16.1133Z" fill="currentColor"/>
<path d="M5.17578 20.0195C5.1123 20.083 5.07812 20.1807 5.07812 20.3125C5.07812 20.6543 5.17578 20.7031 5.85938 20.7031C6.54297 20.7031 6.64062 20.6543 6.64062 20.3125C6.64062 19.9707 6.54297 19.9219 5.85938 19.9219C5.33691 19.9219 5.26367 19.9316 5.17578 20.0195Z" fill="currentColor"/>
<path d="M18.5 7H8.5C8.22386 7 8 7.22386 8 7.5C8 7.77614 8.22386 8 8.5 8H18.5C18.7761 8 19 7.77614 19 7.5C19 7.22386 18.7761 7 18.5 7Z" fill="currentColor"/>
<path d="M18.5 9H8.5C8.22386 9 8 9.22386 8 9.5C8 9.77614 8.22386 10 8.5 10H18.5C18.7761 10 19 9.77614 19 9.5C19 9.22386 18.7761 9 18.5 9Z" fill="currentColor"/>
<path d="M18.5 11H8.5C8.22386 11 8 11.2239 8 11.5C8 11.7761 8.22386 12 8.5 12H18.5C18.7761 12 19 11.7761 19 11.5C19 11.2239 18.7761 11 18.5 11Z" fill="currentColor"/>
<path d="M18.5 13H8.5C8.22386 13 8 13.2239 8 13.5C8 13.7761 8.22386 14 8.5 14H18.5C18.7761 14 19 13.7761 19 13.5C19 13.2239 18.7761 13 18.5 13Z" fill="currentColor"/>
</svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -15,9 +15,13 @@ import ErrorPlaceHolder from 'components/common/error-with-placeholder/ErrorPlac
import Loader from 'components/Loader/Loader';
import { ERROR_PLACEHOLDER_TYPE, SIZE } from 'enums/common.enum';
import { Thread } from 'generated/entity/feed/thread';
import React, { useEffect, useState } from 'react';
import React, { useEffect, useMemo, useState } from 'react';
import { useTranslation } from 'react-i18next';
import { getFeedListWithRelativeDays } from 'utils/FeedUtils';
import { ReactComponent as ActivityFeedIcon } from '../../../assets/svg/activity-feed.svg';
import { ReactComponent as TaskIcon } from '../../../assets/svg/ic-task.svg';
import FeedPanelBodyV1 from '../ActivityFeedPanel/FeedPanelBodyV1';
import { ActivityFeedTabs } from '../ActivityFeedTab/ActivityFeedTab.interface';
import './activity-feed-list.less';
interface ActivityFeedListV1Props {
@ -29,6 +33,7 @@ interface ActivityFeedListV1Props {
hidePopover: boolean;
isForFeedTab?: boolean;
emptyPlaceholderText: string;
tab: ActivityFeedTabs;
}
const ActivityFeedListV1 = ({
@ -40,9 +45,13 @@ const ActivityFeedListV1 = ({
hidePopover = false,
isForFeedTab = false,
emptyPlaceholderText,
tab,
}: ActivityFeedListV1Props) => {
const { t } = useTranslation();
const [entityThread, setEntityThread] = useState<Thread[]>([]);
const isTaskTab = useMemo(() => tab === ActivityFeedTabs.TASKS, [tab]);
useEffect(() => {
const { updatedFeedList } = getFeedListWithRelativeDays(feedList);
setEntityThread(updatedFeedList);
@ -59,15 +68,26 @@ const ActivityFeedListV1 = ({
}
return (
<div className="feed-list-container p-y-md m-b-sm" id="feedData">
<div className="feed-list-container p-y-md m-b-sm h-full" id="feedData">
{entityThread.length === 0 && (
<div
className="h-full p-x-md"
data-testid="no-data-placeholder-container">
<ErrorPlaceHolder
size={SIZE.MEDIUM}
icon={
isTaskTab ? (
<TaskIcon height={24} width={24} />
) : (
<ActivityFeedIcon height={SIZE.MEDIUM} width={SIZE.MEDIUM} />
)
}
type={ERROR_PLACEHOLDER_TYPE.CUSTOM}>
<Typography.Paragraph style={{ marginBottom: '0' }}>
{isTaskTab && (
<Typography.Text strong>
{t('message.no-open-issues')} <br />
</Typography.Text>
)}
{emptyPlaceholderText}
</Typography.Paragraph>
</ErrorPlaceHolder>

View File

@ -68,7 +68,7 @@ export const ActivityFeedTab = ({
const history = useHistory();
const { t } = useTranslation();
const [elementRef, isInView] = useElementInView(observerOptions);
const { subTab: activeTab = 'all' } =
const { subTab: activeTab = ActivityFeedTabs.ALL } =
useParams<{ subTab: ActivityFeedTabs }>();
const [taskFilter, setTaskFilter] = useState<TaskFilter>('open');
const [allCount, setAllCount] = useState(0);
@ -99,6 +99,11 @@ export const ActivityFeedTab = ({
[selectedThread]
);
const isTaskActiveTab = useMemo(
() => activeTab === ActivityFeedTabs.TASKS,
[activeTab]
);
const handleTabChange = (subTab: string) => {
history.push(
getEntityDetailLink(entityType, fqn, EntityTabs.ACTIVITY_FEED, subTab)
@ -241,7 +246,7 @@ export const ActivityFeedTab = ({
};
const threads = useMemo(() => {
if (activeTab === ActivityFeedTabs.TASKS) {
if (isTaskActiveTab) {
return entityThread.filter(
(thread) =>
taskFilter === 'open'
@ -255,7 +260,7 @@ export const ActivityFeedTab = ({
}, [activeTab, entityThread, taskFilter]);
const [openTasks, closedTasks] = useMemo(() => {
if (activeTab === ActivityFeedTabs.TASKS) {
if (isTaskActiveTab) {
return entityThread.reduce(
(acc, curr) => {
if (curr.task?.status === ThreadTaskStatus.Open) {
@ -323,13 +328,7 @@ export const ActivityFeedTab = ({
<TaskListIcon {...ICON_DIMENSION} />
<span>{t('label.task-plural')}</span>
</Space>
<span>
{getCountBadge(
tasksCount,
'',
activeTab === ActivityFeedTabs.TASKS
)}
</span>
<span>{getCountBadge(tasksCount, '', isTaskActiveTab)}</span>
</div>
),
key: 'tasks',
@ -342,7 +341,7 @@ export const ActivityFeedTab = ({
/>
<div className=" center-container">
{activeTab === ActivityFeedTabs.TASKS && (
{isTaskActiveTab && (
<div className="d-flex gap-4 p-sm p-x-lg activity-feed-task">
<Typography.Text
className={classNames(
@ -381,6 +380,7 @@ export const ActivityFeedTab = ({
feedList={threads}
isLoading={false}
showThread={false}
tab={activeTab}
onFeedClick={handleFeedClick}
/>
{loader}

View File

@ -14,10 +14,10 @@ import Icon, { DownOutlined } from '@ant-design/icons';
import { Button, Col, Dropdown, Row, Space, Tooltip, Typography } from 'antd';
import ButtonGroup from 'antd/lib/button/button-group';
import { ItemType } from 'antd/lib/menu/hooks/useItems';
import { ReactComponent as IconTerm } from 'assets/svg/book.svg';
import { ReactComponent as EditIcon } from 'assets/svg/edit-new.svg';
import { ReactComponent as GlossaryIcon } from 'assets/svg/glossary.svg';
import { ReactComponent as ExportIcon } from 'assets/svg/ic-export.svg';
import { ReactComponent as IconFlatDoc } from 'assets/svg/ic-flat-doc.svg';
import { ReactComponent as ImportIcon } from 'assets/svg/ic-import.svg';
import { ReactComponent as VersionIcon } from 'assets/svg/ic-version.svg';
import { ReactComponent as IconDropdown } from 'assets/svg/menu.svg';
@ -376,7 +376,7 @@ const GlossaryHeader = ({
width={32}
/>
) : (
<IconFlatDoc
<IconTerm
color={DE_ACTIVE_COLOR}
height={36}
name="doc"

View File

@ -12,8 +12,8 @@
*/
import { Button, Tooltip, Typography } from 'antd';
import { ReactComponent as IconTerm } from 'assets/svg/book.svg';
import { ReactComponent as EditIcon } from 'assets/svg/edit-new.svg';
import { ReactComponent as IconFlatDoc } from 'assets/svg/ic-flat-doc.svg';
import TagSelectForm from 'components/Tag/TagsSelectForm/TagsSelectForm.component';
import TagButton from 'components/TagButton/TagButton.component';
import { EntityField } from 'constants/Feeds.constants';
@ -161,7 +161,7 @@ const RelatedTerms = ({
(entity: EntityReference, versionStatus?: VersionStatus) => (
<TagButton
className="cursor-pointer"
icon={<IconFlatDoc height={12} name="folder" />}
icon={<IconTerm height={12} name="folder" />}
key={entity.fullyQualifiedName}
label={getEntityName(entity)}
tooltip={

View File

@ -22,7 +22,7 @@ import { getTagDisplay, getTagTooltip } from 'utils/TagsUtils';
import { ReactComponent as IconTag } from 'assets/svg/classification.svg';
import { TAG_START_WITH } from 'constants/Tag.constants';
import { reduceColorOpacity } from 'utils/CommonUtils';
import { ReactComponent as IconPage } from '../../../assets/svg/ic-flat-doc.svg';
import { ReactComponent as IconTerm } from '../../../assets/svg/book.svg';
import { ReactComponent as PlusIcon } from '../../../assets/svg/plus-primary.svg';
import { TagsV1Props } from './TagsV1.interface';
import './tagsV1.less';
@ -45,7 +45,7 @@ const TagsV1 = ({
const startIcon = useMemo(
() =>
isGlossaryTag ? (
<IconPage
<IconTerm
className="flex-shrink"
data-testid="glossary-icon"
height={12}

View File

@ -14,6 +14,7 @@ import { Tabs } from 'antd';
import AppState from 'AppState';
import ActivityFeedListV1 from 'components/ActivityFeed/ActivityFeedList/ActivityFeedListV1.component';
import { useActivityFeedProvider } from 'components/ActivityFeed/ActivityFeedProvider/ActivityFeedProvider';
import { ActivityFeedTabs } from 'components/ActivityFeed/ActivityFeedTab/ActivityFeedTab.interface';
import { useTourProvider } from 'components/TourProvider/TourProvider';
import { mockFeedData } from 'constants/mockTourData.constants';
import { FeedFilter } from 'enums/mydata.enum';
@ -28,7 +29,9 @@ import './feeds-widget.less';
const FeedsWidget = () => {
const { t } = useTranslation();
const { isTourOpen } = useTourProvider();
const [activeTab, setActiveTab] = useState('all');
const [activeTab, setActiveTab] = useState<ActivityFeedTabs>(
ActivityFeedTabs.ALL
);
const { loading, entityThread, getFeedData } = useActivityFeedProvider();
const [taskCount, setTaskCount] = useState(0);
const currentUser = useMemo(
@ -37,19 +40,19 @@ const FeedsWidget = () => {
);
useEffect(() => {
if (activeTab === 'all') {
if (activeTab === ActivityFeedTabs.ALL) {
getFeedData(FeedFilter.OWNER, undefined, ThreadType.Conversation).catch(
() => {
// ignore since error is displayed in toast in the parent promise.
// Added block for sonar code smell
}
);
} else if (activeTab === 'mentions') {
} else if (activeTab === ActivityFeedTabs.MENTIONS) {
getFeedData(FeedFilter.MENTIONS).catch(() => {
// ignore since error is displayed in toast in the parent promise.
// Added block for sonar code smell
});
} else if (activeTab === 'tasks') {
} else if (activeTab === ActivityFeedTabs.TASKS) {
getFeedData(FeedFilter.OWNER, undefined, ThreadType.Task)
.then((data) => {
const openTasks = data.filter(
@ -68,6 +71,8 @@ const FeedsWidget = () => {
return getCountBadge(taskCount, '', activeTab === 'tasks');
}, [taskCount, activeTab]);
const onTabChange = (key: string) => setActiveTab(key as ActivityFeedTabs);
useEffect(() => {
getFeedsWithFilter(
currentUser?.id,
@ -101,7 +106,7 @@ const FeedsWidget = () => {
items={[
{
label: t('label.all'),
key: 'all',
key: ActivityFeedTabs.ALL,
children: (
<ActivityFeedListV1
emptyPlaceholderText={t('message.no-activity-feed')}
@ -109,12 +114,13 @@ const FeedsWidget = () => {
hidePopover={false}
isLoading={loading && !isTourOpen}
showThread={false}
tab={ActivityFeedTabs.ALL}
/>
),
},
{
label: `@${t('label.mention-plural')}`,
key: 'mentions',
key: ActivityFeedTabs.MENTIONS,
children: (
<ActivityFeedListV1
emptyPlaceholderText={t('message.no-mentions')}
@ -122,6 +128,7 @@ const FeedsWidget = () => {
hidePopover={false}
isLoading={loading}
showThread={false}
tab={ActivityFeedTabs.MENTIONS}
/>
),
},
@ -132,7 +139,7 @@ const FeedsWidget = () => {
{countBadge}
</>
),
key: 'tasks',
key: ActivityFeedTabs.TASKS,
children: (
<ActivityFeedListV1
emptyPlaceholderText={t('message.no-tasks-assigned')}
@ -140,11 +147,12 @@ const FeedsWidget = () => {
hidePopover={false}
isLoading={loading}
showThread={false}
tab={ActivityFeedTabs.TASKS}
/>
),
},
]}
onChange={(key) => setActiveTab(key)}
onChange={onTabChange}
/>
</div>
);

View File

@ -110,14 +110,13 @@ export const CustomPropertyTable: FC<CustomPropertyProps> = ({
title: t('label.name'),
dataIndex: 'name',
key: 'name',
width: '50%',
width: 200,
render: (_, record) => getEntityName(record),
},
{
title: t('label.value'),
dataIndex: 'value',
key: 'value',
width: '50%',
render: (_, record) => (
<PropertyValue
extension={extensionObject.extensionObject}

View File

@ -11,6 +11,7 @@
* limitations under the License.
*/
import { Typography } from 'antd';
import { ReactComponent as EditIconComponent } from 'assets/svg/edit-new.svg';
import { t } from 'i18next';
import { isUndefined, toNumber } from 'lodash';
@ -124,7 +125,11 @@ export const PropertyValue: FC<Props> = ({
case 'string':
case 'integer':
default:
return <span data-testid="value">{value}</span>;
return (
<Typography.Text className="break-all" data-testid="value">
{value}
</Typography.Text>
);
}
};

View File

@ -21,18 +21,23 @@ const CustomNoDataPlaceHolder = ({
size,
className,
children,
icon,
}: NoDataPlaceholderProps) => {
return (
<div
className={classNames(className, 'flex-center flex-col w-full h-full')}
data-testid="no-data-placeholder">
<NoDataFoundPlaceHolderIcon
data-testid="no-data-image"
height={size}
width={size}
/>
{icon ? (
icon
) : (
<NoDataFoundPlaceHolderIcon
data-testid="no-data-image"
height={size}
width={size}
/>
)}
<div className="m-t-xss text-center text-sm font-normal">
<div className="m-t-xs text-center text-sm font-normal">
{children ? children : ''}
</div>
</div>

View File

@ -33,6 +33,7 @@ const ErrorPlaceHolder = ({
button,
permission,
buttonId,
icon,
}: ErrorPlaceholderProps) => {
const getErrorPlaceHolder = () => {
switch (type) {
@ -71,7 +72,10 @@ const ErrorPlaceHolder = ({
case ERROR_PLACEHOLDER_TYPE.CUSTOM:
return (
<CustomNoDataPlaceHolder className={className} size={size}>
<CustomNoDataPlaceHolder
className={className}
icon={icon}
size={size}>
{children}
</CustomNoDataPlaceHolder>
);

View File

@ -12,6 +12,7 @@
*/
import { ERROR_PLACEHOLDER_TYPE, SIZE } from 'enums/common.enum';
import { ReactElement } from 'react';
export interface ErrorPlaceholderProps {
children?: React.ReactNode;
@ -22,6 +23,7 @@ export interface ErrorPlaceholderProps {
button?: React.ReactNode;
className?: string;
size?: SIZE;
icon?: ReactElement;
onClick?: () => void;
permission?: boolean;
}
@ -30,6 +32,7 @@ export interface NoDataPlaceholderProps {
size?: SIZE;
className?: string;
children?: React.ReactNode;
icon?: ReactElement;
}
export interface CreatePlaceholderProps {

View File

@ -1248,7 +1248,7 @@
"new-conversation": "You are starting a new conversation",
"new-to-the-platform": "New to the platform?",
"no-access-placeholder": "You dont have access, please check with the admin to get permissions",
"no-activity-feed": "No activity has been discovered within the data assets you own or the ones you are currently following",
"no-activity-feed": "We have not found any activity within the data assets you own or the ones you are currently following.",
"no-announcement-message": "No Announcements, Click on add announcement to add one.",
"no-asset-available": "No assets available.",
"no-closed-task": "No Closed Tasks",
@ -1272,6 +1272,7 @@
"no-match-found": "No match found",
"no-mentions": "There are no instances where you or your team have been referenced in any activities",
"no-notification-found": "No notifications found",
"no-open-issues": "There aren't any open issues.",
"no-open-task": "No Open Tasks",
"no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore</0> option to discover and claim assets.",
"no-permission-for-action": "You do not have the necessary permissions to perform this action.",
@ -1287,7 +1288,7 @@
"no-selected-dbt": "No source selected for dbt Configuration.",
"no-service-connection-details-message": "{{serviceName}} doesn't have connection details filled in. Please add the details before scheduling an ingestion job.",
"no-synonyms-available": "No synonyms available.",
"no-tasks-assigned": "You don't have any pending tasks assigned to you at the moment",
"no-tasks-assigned": "Currently, there are no pending tasks assigned to you.",
"no-team-found": "No team found.",
"no-terms-found": "No terms found",
"no-terms-found-for-search-text": "No terms found for {{searchText}}",

View File

@ -1248,7 +1248,7 @@
"new-conversation": "Estás iniciando una nueva conversación",
"new-to-the-platform": "¿Nuevo en la plataforma?",
"no-access-placeholder": "You dont have access, please check with the admin to get permissions",
"no-activity-feed": "No activity has been discovered within the data assets you own or the ones you are currently following",
"no-activity-feed": "We have not found any activity within the data assets you own or the ones you are currently following.",
"no-announcement-message": "No hay anuncios. Haz clic en agregar anuncio para agregar uno.",
"no-asset-available": "No hay activos disponibles.",
"no-closed-task": "No hay tareas cerradas",
@ -1272,6 +1272,7 @@
"no-match-found": "No se encontraron coincidencias",
"no-mentions": "There are no instances where you or your team have been referenced in any activities",
"no-notification-found": "No se encontraron notificaciones",
"no-open-issues": "There aren't any open issues.",
"no-open-task": "No hay tareas abiertas",
"no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore</0> option to discover and claim assets.",
"no-permission-for-action": "No tiene los permisos necesarios para realizar esta acción.",
@ -1287,7 +1288,7 @@
"no-selected-dbt": "No se ha seleccionado una fuente para la configuración de dbt.",
"no-service-connection-details-message": "{{serviceName}} no tiene los detalles de conexión completados. Por favor añada los detalles antes de programar un workflow de ingesta.",
"no-synonyms-available": "No hay sinónimos disponibles.",
"no-tasks-assigned": "You don't have any pending tasks assigned to you at the moment",
"no-tasks-assigned": "Currently, there are no pending tasks assigned to you.",
"no-team-found": "No se encontró ningún equipo.",
"no-terms-found": "No se encontraron términos",
"no-terms-found-for-search-text": "No se encontraron términos para {{searchText}}",

View File

@ -1248,7 +1248,7 @@
"new-conversation": "Vous commencez une nouvelle conversation",
"new-to-the-platform": "Nouveau sur la platform?",
"no-access-placeholder": "Vous navez pas accès, veuillez vérifier auprès de ladministrateur pour obtenir les autorisations",
"no-activity-feed": "No activity has been discovered within the data assets you own or the ones you are currently following",
"no-activity-feed": "We have not found any activity within the data assets you own or the ones you are currently following.",
"no-announcement-message": "Aucune annonce, cliquez sur ajouter une annonce pour en ajouter une.",
"no-asset-available": "Aucun actif disponible",
"no-closed-task": "Aucune tâche à faire",
@ -1272,6 +1272,7 @@
"no-match-found": "Aucun résultat trouvé",
"no-mentions": "There are no instances where you or your team have been referenced in any activities",
"no-notification-found": "Aucune notifiaction trouvé",
"no-open-issues": "There aren't any open issues.",
"no-open-task": "Aucune tâche ouverte",
"no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore</0> option to discover and claim assets.",
"no-permission-for-action": "Vous n'avez pas les permissions requises pour effectuer cette action.",
@ -1287,7 +1288,7 @@
"no-selected-dbt": "Aucune source sélectionnée pour la configuration dbt.",
"no-service-connection-details-message": "{{serviceName}} n'a pas les détails de connections remplis. Merci d'ajouter les détails de connections avant de programmer une ingestion.",
"no-synonyms-available": "Aucun synonyme n'est disponible.",
"no-tasks-assigned": "You don't have any pending tasks assigned to you at the moment",
"no-tasks-assigned": "Currently, there are no pending tasks assigned to you.",
"no-team-found": "Aucune équipe trouvée.",
"no-terms-found": "Aucun terme trouvé",
"no-terms-found-for-search-text": "Aucun terme trouvé pour {{searchText}}",

View File

@ -1248,7 +1248,7 @@
"new-conversation": "新しく会話を始める",
"new-to-the-platform": "新規利用者の場合",
"no-access-placeholder": "You dont have access, please check with the admin to get permissions",
"no-activity-feed": "No activity has been discovered within the data assets you own or the ones you are currently following",
"no-activity-feed": "We have not found any activity within the data assets you own or the ones you are currently following.",
"no-announcement-message": "お知らせはありません。「お知らせを追加」で追加してください。",
"no-asset-available": "アセットはありません。",
"no-closed-task": "終了したタスクはありません",
@ -1272,6 +1272,7 @@
"no-match-found": "一致するものはありませんでした",
"no-mentions": "There are no instances where you or your team have been referenced in any activities",
"no-notification-found": "No notifications found",
"no-open-issues": "There aren't any open issues.",
"no-open-task": "開いているタスクはありません",
"no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore</0> option to discover and claim assets.",
"no-permission-for-action": "あなたはこのアクションを実行する権限を持っていません。",
@ -1287,7 +1288,7 @@
"no-selected-dbt": "No source selected for dbt Configuration.",
"no-service-connection-details-message": "{{serviceName}} doesn't have connection details filled in. Please add the details before scheduling an ingestion job.",
"no-synonyms-available": "No synonyms available.",
"no-tasks-assigned": "You don't have any pending tasks assigned to you at the moment",
"no-tasks-assigned": "Currently, there are no pending tasks assigned to you.",
"no-team-found": "チームが見つかりません。",
"no-terms-found": "用語が見つかりません",
"no-terms-found-for-search-text": "No terms found for {{searchText}}",

View File

@ -1248,7 +1248,7 @@
"new-conversation": "Você está iniciando uma nova conversa",
"new-to-the-platform": "Novo na plataforma?",
"no-access-placeholder": "You dont have access, please check with the admin to get permissions",
"no-activity-feed": "No activity has been discovered within the data assets you own or the ones you are currently following",
"no-activity-feed": "We have not found any activity within the data assets you own or the ones you are currently following.",
"no-announcement-message": "Nenhum anúncio. Clique em adicionar anúncio para adicionar um.",
"no-asset-available": "Nenhum ativo disponível.",
"no-closed-task": "Nenhuma tarefa concluída",
@ -1272,6 +1272,7 @@
"no-match-found": "Nenhuma correspondência encontrada",
"no-mentions": "There are no instances where you or your team have been referenced in any activities",
"no-notification-found": "Nenhuma notificação encontrada",
"no-open-issues": "There aren't any open issues.",
"no-open-task": "Nenhuma tarefa aberta",
"no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore</0> option to discover and claim assets.",
"no-permission-for-action": "Você não tem as permissões necessárias para executar esta ação.",
@ -1287,7 +1288,7 @@
"no-selected-dbt": "Nenhuma fonte selecionada para a configuração do dbt.",
"no-service-connection-details-message": "{{serviceName}} não possui detalhes de conexão preenchidos. Por favor adicione os detalhes antes de agendar um trabalho de ingestão.",
"no-synonyms-available": "Nenhum sinônimo disponível.",
"no-tasks-assigned": "You don't have any pending tasks assigned to you at the moment",
"no-tasks-assigned": "Currently, there are no pending tasks assigned to you.",
"no-team-found": "Nenhum time encontrado.",
"no-terms-found": "Nenhum termo encontrado",
"no-terms-found-for-search-text": "Nenhum termo encontrado para {{searchText}}",

View File

@ -1248,7 +1248,7 @@
"new-conversation": "您正在开始一次新的对话",
"new-to-the-platform": "您是平台新用户?",
"no-access-placeholder": "您还没有权限访问,请联系系统管理员",
"no-activity-feed": "No activity has been discovered within the data assets you own or the ones you are currently following",
"no-activity-feed": "We have not found any activity within the data assets you own or the ones you are currently following.",
"no-announcement-message": "没有公告,请单击添加公告以新增一个",
"no-asset-available": "没有可用的资产",
"no-closed-task": "没有关闭的任务",
@ -1272,6 +1272,7 @@
"no-match-found": "未找到匹配项",
"no-mentions": "There are no instances where you or your team have been referenced in any activities",
"no-notification-found": "未找到通知",
"no-open-issues": "There aren't any open issues.",
"no-open-task": "无未完成任务",
"no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore</0> option to discover and claim assets.",
"no-permission-for-action": "您没有执行此操作所需的必要权限",
@ -1287,7 +1288,7 @@
"no-selected-dbt": "未为 DBT 配置选择源",
"no-service-connection-details-message": "{{serviceName}}没有填写连接详细信息,请在安排提取作业之前添加详细信息",
"no-synonyms-available": "无可用同义词",
"no-tasks-assigned": "You don't have any pending tasks assigned to you at the moment",
"no-tasks-assigned": "Currently, there are no pending tasks assigned to you.",
"no-team-found": "未找到团队",
"no-terms-found": "未找到术语",
"no-terms-found-for-search-text": "未找到{{searchText}}的术语",

View File

@ -308,7 +308,12 @@ const GlossaryPage = () => {
}
if (!(viewBasicGlossaryPermission || viewAllGlossaryPermission)) {
return <ErrorPlaceHolder type={ERROR_PLACEHOLDER_TYPE.PERMISSION} />;
return (
<ErrorPlaceHolder
className="mt-0-important"
type={ERROR_PLACEHOLDER_TYPE.PERMISSION}
/>
);
}
if (glossaries.length === 0 && !isLoading) {