@bikdotai/bik-component-library 0.0.805-beta.9 → 0.0.805
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/whats-new/WhatsNewPanel.js +1 -1
- package/dist/cjs/components/whats-new/WhatsNewPanel.js.map +1 -1
- package/dist/cjs/src/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.d.ts +1 -1
- package/dist/cjs/src/components/QueryBuilder/Triggers/EVENTS/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/cjs/src/components/QueryBuilder/Triggers/IG/components/IGTrigger.d.ts +1 -1
- package/dist/cjs/src/components/QueryBuilder/Triggers/IG/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/cjs/src/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.d.ts +2 -2
- package/dist/cjs/src/components/bik-layout/MockMenus.d.ts +0 -1
- package/dist/esm/components/whats-new/WhatsNewPanel.js +1 -1
- package/dist/esm/components/whats-new/WhatsNewPanel.js.map +1 -1
- package/dist/esm/src/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.d.ts +1 -1
- package/dist/esm/src/components/QueryBuilder/Triggers/EVENTS/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/esm/src/components/QueryBuilder/Triggers/IG/components/IGTrigger.d.ts +1 -1
- package/dist/esm/src/components/QueryBuilder/Triggers/IG/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/esm/src/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.d.ts +2 -2
- package/dist/esm/src/components/bik-layout/MockMenus.d.ts +0 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("date-fns"),s=require("react"),r=require("../../assets/icons/searchIcon.svg.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("date-fns"),s=require("react"),r=require("../../assets/icons/searchIcon.svg.js"),a=require("../../assets/icons/whatsNew.svg.js"),n=require("../../constants/Theme.js"),i=require("../button/Button.js"),o=require("../feature-announcements/VideoModal.js"),d=require("../searchBar/searchBar.js"),c=require("../side-modal/SideModal.js"),l=require("../TypographyStyle.js"),h=require("./WhatsNew.styles.js");exports.WhatsNewPanel=u=>{let{isOpen:j,onClose:m,content:x,isLoading:g=!1,title:p="What's new on BIK",searchPlaceholder:w="Search posts",emptyStateTitle:y="Nothing new!",emptyStateDescription:b="There are no new updates or features at the moment. Check back soon!",noResultsText:C="Sorry, no results found.",width:O="480px",onContentClick:f,renderCustomContent:v}=u;const[N,S]=s.useState(""),[M,B]=s.useState(!1),[q,L]=s.useState(""),T=e=>{if(!e.createdAt)return!1;const s=e.createdAt.toDate?e.createdAt.toDate():new Date(e.createdAt);return t.differenceInBusinessDays(new Date,s)<7},k=s.useMemo((()=>{if(!N.trim())return x;const e=N.toLowerCase();return x.filter((t=>t.title.toLowerCase().includes(e)||t.body.toLowerCase().includes(e)||t.content&&t.content.toLowerCase().includes(e)))}),[x,N]),D=0===x.length,W=0===k.length;return j?e.jsxs(c.SideModal,Object.assign({width:O,onClose:m,header:"",headerCustomComponent:e.jsx(l.TitleMedium,Object.assign({color:n.COLORS.background.inverse},{children:p})),headerStyle:{background:n.COLORS.background.brandLight},hideFooter:!0},{children:[e.jsxs(h.MainContainer,{children:[e.jsx("div",Object.assign({className:"mt-8"},{children:e.jsx(d.SearchBar,{width:"100%",isEnabled:!D,onChange:e=>{S(e)},onEnter:e=>{S(e)},placeholder:w,variant:"default",searchValue:N,onClickCross:()=>{S("")}})})),e.jsx(h.WhatsNewWrapper,{children:D||W?e.jsxs("div",Object.assign({className:"no--data--found"},{children:[e.jsx("div",Object.assign({className:"icon--wrapper"},{children:D?e.jsx(a.default,{width:32,height:32}):e.jsx(r.default,{width:32,height:32})})),D?e.jsxs(e.Fragment,{children:[e.jsx(l.TitleRegular,{children:y}),e.jsx(l.BodyPrimary,Object.assign({color:n.COLORS.content.secondary,className:"text--align",style:{maxWidth:300}},{children:b}))]}):W?e.jsx(l.BodyPrimary,Object.assign({color:n.COLORS.content.secondary,className:"text--align",style:{maxWidth:300}},{children:C})):null]})):e.jsx("div",Object.assign({className:"scroller"},{children:k.map(((s,r)=>{var a;return v?v(s):e.jsxs(h.MainCardContainer,Object.assign({className:"padding--16 mb-mt-8"},{children:[e.jsx(h.BackgroundImageContainer,{imageUrl:s.image,height:"209px",width:"100%",style:{borderRadius:"4px"}}),e.jsx("div",Object.assign({className:"mt-20 full--width"},{children:e.jsxs("div",Object.assign({className:"created--at flex flex--row"},{children:[T(s)?e.jsx("div",Object.assign({className:"new--content--tag"},{children:e.jsx(l.Caption,{children:"New"})})):e.jsx(e.Fragment,{}),e.jsx(l.Caption,Object.assign({style:{color:n.COLORS.content.placeholder}},{children:s.createdAt?t.format(s.createdAt.toDate?s.createdAt.toDate():new Date(s.createdAt),"dd MMMM yyyy"):""}))]}))})),e.jsx("div",Object.assign({className:"mt--8"},{children:e.jsx(l.TitleSmall,{children:s.title})})),e.jsx("div",{dangerouslySetInnerHTML:{__html:s.body},className:"card--desc mt--12"}),e.jsx("div",Object.assign({className:"flex flex--row mt-20 full--width"},{children:e.jsx(i.Button,{buttonText:(null===(a=s.primaryButton)||void 0===a?void 0:a.text)||s.buttonText||"Explore the feature",onClick:()=>(e=>{var t,s;const r=null===(t=e.primaryButton)||void 0===t?void 0:t.action;if("Play Video"===r||!r&&e.productVideo)e.productVideo&&(L(e.productVideo),B(!0));else{const t=(null===(s=e.primaryButton)||void 0===s?void 0:s.redirectionUrl)||e.redirectUrl;t&&(t.startsWith("http")?window.open(t,"_blank","noopener,noreferrer"):window.location.href=t)}f&&f(e)})(s),matchParentWidth:!0,size:"medium"})}))]}),`whats-new-${r}`)}))}))})]}),e.jsx(o.VideoModal,{isOpen:M,videoUrl:q,onClose:()=>{B(!1)}})]})):e.jsx(e.Fragment,{})};
|
|
2
2
|
//# sourceMappingURL=WhatsNewPanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhatsNewPanel.js","sources":["../../../../src/components/whats-new/WhatsNewPanel.tsx"],"sourcesContent":["import { differenceInBusinessDays, format } from 'date-fns';\nimport React, { useMemo, useState } from 'react';\nimport SearchIconSvg from '../../assets/icons/searchIcon.svg';\nimport WhatsNewIcon from '../../assets/icons/whatsNew.svg';\nimport { COLORS } from '../../constants/Theme';\nimport { Button } from '../button';\nimport { VideoModal } from '../feature-announcements/VideoModal';\nimport { SearchBar } from '../searchBar';\nimport { SideModal } from '../side-modal';\nimport {\n\tBodyPrimary,\n\tCaption,\n\tTitleMedium,\n\tTitleRegular,\n\tTitleSmall,\n} from '../TypographyStyle';\nimport {\n\tBackgroundImageContainer,\n\tMainCardContainer,\n\tMainContainer,\n\tWhatsNewWrapper,\n} from './WhatsNew.styles';\nimport { WhatsNewContent, WhatsNewPanelProps } from './WhatsNew.types';\n\nexport const WhatsNewPanel: React.FC<WhatsNewPanelProps> = ({\n\tisOpen,\n\tonClose,\n\tcontent,\n\tisLoading = false,\n\ttitle = \"What's new on BIK\",\n\tsearchPlaceholder = 'Search posts',\n\temptyStateTitle = 'Nothing new!',\n\temptyStateDescription = 'There are no new updates or features at the moment. Check back soon!',\n\tnoResultsText = 'Sorry, no results found.',\n\twidth = '480px',\n\tonContentClick,\n\trenderCustomContent,\n}) => {\n\tconst [searchText, setSearchText] = useState('');\n\tconst [isVideoModalOpen, setIsVideoModalOpen] = useState(false);\n\tconst [videoUrl, setVideoUrl] = useState('');\n\n\tconst ifNewContent = (contentItem: WhatsNewContent): boolean => {\n\t\tif (!contentItem.createdAt) return false;\n\t\tconst createdAt = contentItem.createdAt.toDate\n\t\t\t? contentItem.createdAt.toDate()\n\t\t\t: new Date(contentItem.createdAt);\n\t\treturn differenceInBusinessDays(new Date(), createdAt) < 7;\n\t};\n\n\tconst modifiedWhatsNewContent = useMemo(() => {\n\t\tif (!searchText.trim()) return content;\n\n\t\tconst searchLower = searchText.toLowerCase();\n\t\treturn content.filter(\n\t\t\t(item) =>\n\t\t\t\titem.title.toLowerCase().includes(searchLower) ||\n\t\t\t\titem.body.toLowerCase().includes(searchLower) ||\n\t\t\t\t(item.content && item.content.toLowerCase().includes(searchLower)),\n\t\t);\n\t}, [content, searchText]);\n\n\tconst handleContentClick = (contentItem: WhatsNewContent) => {\n\t\tconst action = contentItem.primaryButton?.action;\n\t\tconsole.log('Content item clicked:', contentItem);\n\t\tif (action === 'Play Video' || (!action && contentItem.productVideo)) {\n\t\t\tif (contentItem.productVideo) {\n\t\t\t\tsetVideoUrl(contentItem.productVideo);\n\t\t\t\tsetIsVideoModalOpen(true);\n\t\t\t}\n\t\t} else {\n\t\t\tconst redirectionUrl =\n\t\t\t\tcontentItem.primaryButton?.redirectionUrl || contentItem.redirectUrl;\n\t\t\tif (redirectionUrl) {\n\t\t\t\tconst isExternal = redirectionUrl.startsWith('http');\n\t\t\t\tif (isExternal) {\n\t\t\t\t\twindow.open(redirectionUrl, '_blank', 'noopener,noreferrer');\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = redirectionUrl;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (onContentClick) {\n\t\t\tonContentClick(contentItem);\n\t\t}\n\t};\n\n\tconst isWhatsNewContentEmpty = content.length === 0;\n\tconst isModifiedWhatsNewContentEmpty = modifiedWhatsNewContent.length === 0;\n\n\tif (!isOpen) {\n\t\treturn <></>;\n\t}\n\n\treturn (\n\t\t<SideModal\n\t\t\twidth={width}\n\t\t\tonClose={onClose}\n\t\t\theader=\"\"\n\t\t\theaderCustomComponent={\n\t\t\t\t<TitleMedium color={COLORS.background.inverse}>{title}</TitleMedium>\n\t\t\t}\n\t\t\theaderStyle={{ background: COLORS.background.brandLight }}\n\t\t\thideFooter={true}\n\t\t>\n\t\t\t<MainContainer>\n\t\t\t\t<div className=\"mt-8\">\n\t\t\t\t\t<SearchBar\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\tisEnabled={!isWhatsNewContentEmpty}\n\t\t\t\t\t\tonChange={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonEnter={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tplaceholder={searchPlaceholder}\n\t\t\t\t\t\tvariant=\"default\"\n\t\t\t\t\t\tsearchValue={searchText}\n\t\t\t\t\t\tonClickCross={() => {\n\t\t\t\t\t\t\tsetSearchText('');\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<WhatsNewWrapper>\n\t\t\t\t\t{isWhatsNewContentEmpty || isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t<div className=\"no--data--found\">\n\t\t\t\t\t\t\t<div className=\"icon--wrapper\">\n\t\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t\t<WhatsNewIcon width={32} height={32} />\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<SearchIconSvg width={32} height={32} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<TitleRegular>{emptyStateTitle}</TitleRegular>\n\t\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{emptyStateDescription}\n\t\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{noResultsText}\n\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div className=\"scroller\">\n\t\t\t\t\t\t\t{modifiedWhatsNewContent.map((contentItem, index) => {\n\t\t\t\t\t\t\t\tif (renderCustomContent) {\n\t\t\t\t\t\t\t\t\treturn renderCustomContent(contentItem);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MainCardContainer\n\t\t\t\t\t\t\t\t\t\tclassName=\"padding--16 mb-mt-8\"\n\t\t\t\t\t\t\t\t\t\tkey={`whats-new-${index}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<BackgroundImageContainer\n\t\t\t\t\t\t\t\t\t\t\timageUrl={contentItem.image}\n\t\t\t\t\t\t\t\t\t\t\theight=\"209px\"\n\t\t\t\t\t\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={{ borderRadius: '4px' }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"created--at flex flex--row\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ifNewContent(contentItem) ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"new--content--tag\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Caption>New</Caption>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<></>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t<Caption style={{ color: COLORS.content.placeholder }}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{contentItem.createdAt\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? format(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.createdAt.toDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? contentItem.createdAt.toDate()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: new Date(contentItem.createdAt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'dd MMMM yyyy',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''}\n\t\t\t\t\t\t\t\t\t\t\t\t</Caption>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt--8\">\n\t\t\t\t\t\t\t\t\t\t\t<TitleSmall>{contentItem.title}</TitleSmall>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: contentItem.body }}\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"card--desc mt--12\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"flex flex--row mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\tbuttonText={\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.primaryButton?.text ||\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.buttonText ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Explore the feature'\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => handleContentClick(contentItem)}\n\t\t\t\t\t\t\t\t\t\t\t\tmatchParentWidth={true}\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</MainCardContainer>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</WhatsNewWrapper>\n\t\t\t</MainContainer>\n\t\t\t<VideoModal\n\t\t\t\tisOpen={isVideoModalOpen}\n\t\t\t\tvideoUrl={videoUrl}\n\t\t\t\tonClose={() => {\n\t\t\t\t\tsetIsVideoModalOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\t\t</SideModal>\n\t);\n};\n"],"names":["_ref","isOpen","onClose","content","isLoading","title","searchPlaceholder","emptyStateTitle","emptyStateDescription","noResultsText","width","onContentClick","renderCustomContent","searchText","setSearchText","useState","isVideoModalOpen","setIsVideoModalOpen","videoUrl","setVideoUrl","ifNewContent","contentItem","createdAt","toDate","Date","differenceInBusinessDays","modifiedWhatsNewContent","useMemo","trim","searchLower","toLowerCase","filter","item","includes","body","isWhatsNewContentEmpty","length","isModifiedWhatsNewContentEmpty","_jsxs","SideModal","Object","assign","header","headerCustomComponent","_jsx","jsx","TitleMedium","color","COLORS","background","inverse","headerStyle","brandLight","hideFooter","jsxs","MainContainer","children","className","SearchBar","isEnabled","onChange","inputText","onEnter","placeholder","variant","searchValue","onClickCross","WhatsNewWrapper","WhatsNewIcon","height","SearchIconSvg","_Fragment","TitleRegular","BodyPrimary","secondary","style","maxWidth","map","index","MainCardContainer","BackgroundImageContainer","imageUrl","image","borderRadius","Caption","format","TitleSmall","dangerouslySetInnerHTML","__html","Button","buttonText","primaryButton","_a","text","onClick","action","console","log","productVideo","redirectionUrl","_b","redirectUrl","startsWith","window","open","location","href","handleContentClick","matchParentWidth","size","VideoModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WhatsNewPanel.js","sources":["../../../../src/components/whats-new/WhatsNewPanel.tsx"],"sourcesContent":["import { differenceInBusinessDays, format } from 'date-fns';\nimport React, { useMemo, useState } from 'react';\nimport SearchIconSvg from '../../assets/icons/searchIcon.svg';\nimport WhatsNewIcon from '../../assets/icons/whatsNew.svg';\nimport { COLORS } from '../../constants/Theme';\nimport { Button } from '../button';\nimport { VideoModal } from '../feature-announcements/VideoModal';\nimport { SearchBar } from '../searchBar';\nimport { SideModal } from '../side-modal';\nimport {\n\tBodyPrimary,\n\tCaption,\n\tTitleMedium,\n\tTitleRegular,\n\tTitleSmall,\n} from '../TypographyStyle';\nimport {\n\tBackgroundImageContainer,\n\tMainCardContainer,\n\tMainContainer,\n\tWhatsNewWrapper,\n} from './WhatsNew.styles';\nimport { WhatsNewContent, WhatsNewPanelProps } from './WhatsNew.types';\n\nexport const WhatsNewPanel: React.FC<WhatsNewPanelProps> = ({\n\tisOpen,\n\tonClose,\n\tcontent,\n\tisLoading = false,\n\ttitle = \"What's new on BIK\",\n\tsearchPlaceholder = 'Search posts',\n\temptyStateTitle = 'Nothing new!',\n\temptyStateDescription = 'There are no new updates or features at the moment. Check back soon!',\n\tnoResultsText = 'Sorry, no results found.',\n\twidth = '480px',\n\tonContentClick,\n\trenderCustomContent,\n}) => {\n\tconst [searchText, setSearchText] = useState('');\n\tconst [isVideoModalOpen, setIsVideoModalOpen] = useState(false);\n\tconst [videoUrl, setVideoUrl] = useState('');\n\n\tconst ifNewContent = (contentItem: WhatsNewContent): boolean => {\n\t\tif (!contentItem.createdAt) return false;\n\t\tconst createdAt = contentItem.createdAt.toDate\n\t\t\t? contentItem.createdAt.toDate()\n\t\t\t: new Date(contentItem.createdAt);\n\t\treturn differenceInBusinessDays(new Date(), createdAt) < 7;\n\t};\n\n\tconst modifiedWhatsNewContent = useMemo(() => {\n\t\tif (!searchText.trim()) return content;\n\n\t\tconst searchLower = searchText.toLowerCase();\n\t\treturn content.filter(\n\t\t\t(item) =>\n\t\t\t\titem.title.toLowerCase().includes(searchLower) ||\n\t\t\t\titem.body.toLowerCase().includes(searchLower) ||\n\t\t\t\t(item.content && item.content.toLowerCase().includes(searchLower)),\n\t\t);\n\t}, [content, searchText]);\n\n\tconst handleContentClick = (contentItem: WhatsNewContent) => {\n\t\tconst action = contentItem.primaryButton?.action;\n\t\tif (action === 'Play Video' || (!action && contentItem.productVideo)) {\n\t\t\tif (contentItem.productVideo) {\n\t\t\t\tsetVideoUrl(contentItem.productVideo);\n\t\t\t\tsetIsVideoModalOpen(true);\n\t\t\t}\n\t\t} else {\n\t\t\tconst redirectionUrl =\n\t\t\t\tcontentItem.primaryButton?.redirectionUrl || contentItem.redirectUrl;\n\t\t\tif (redirectionUrl) {\n\t\t\t\tconst isExternal = redirectionUrl.startsWith('http');\n\t\t\t\tif (isExternal) {\n\t\t\t\t\twindow.open(redirectionUrl, '_blank', 'noopener,noreferrer');\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = redirectionUrl;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (onContentClick) {\n\t\t\tonContentClick(contentItem);\n\t\t}\n\t};\n\n\tconst isWhatsNewContentEmpty = content.length === 0;\n\tconst isModifiedWhatsNewContentEmpty = modifiedWhatsNewContent.length === 0;\n\n\tif (!isOpen) {\n\t\treturn <></>;\n\t}\n\n\treturn (\n\t\t<SideModal\n\t\t\twidth={width}\n\t\t\tonClose={onClose}\n\t\t\theader=\"\"\n\t\t\theaderCustomComponent={\n\t\t\t\t<TitleMedium color={COLORS.background.inverse}>{title}</TitleMedium>\n\t\t\t}\n\t\t\theaderStyle={{ background: COLORS.background.brandLight }}\n\t\t\thideFooter={true}\n\t\t>\n\t\t\t<MainContainer>\n\t\t\t\t<div className=\"mt-8\">\n\t\t\t\t\t<SearchBar\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\tisEnabled={!isWhatsNewContentEmpty}\n\t\t\t\t\t\tonChange={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonEnter={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tplaceholder={searchPlaceholder}\n\t\t\t\t\t\tvariant=\"default\"\n\t\t\t\t\t\tsearchValue={searchText}\n\t\t\t\t\t\tonClickCross={() => {\n\t\t\t\t\t\t\tsetSearchText('');\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<WhatsNewWrapper>\n\t\t\t\t\t{isWhatsNewContentEmpty || isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t<div className=\"no--data--found\">\n\t\t\t\t\t\t\t<div className=\"icon--wrapper\">\n\t\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t\t<WhatsNewIcon width={32} height={32} />\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<SearchIconSvg width={32} height={32} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<TitleRegular>{emptyStateTitle}</TitleRegular>\n\t\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{emptyStateDescription}\n\t\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{noResultsText}\n\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div className=\"scroller\">\n\t\t\t\t\t\t\t{modifiedWhatsNewContent.map((contentItem, index) => {\n\t\t\t\t\t\t\t\tif (renderCustomContent) {\n\t\t\t\t\t\t\t\t\treturn renderCustomContent(contentItem);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MainCardContainer\n\t\t\t\t\t\t\t\t\t\tclassName=\"padding--16 mb-mt-8\"\n\t\t\t\t\t\t\t\t\t\tkey={`whats-new-${index}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<BackgroundImageContainer\n\t\t\t\t\t\t\t\t\t\t\timageUrl={contentItem.image}\n\t\t\t\t\t\t\t\t\t\t\theight=\"209px\"\n\t\t\t\t\t\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={{ borderRadius: '4px' }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"created--at flex flex--row\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ifNewContent(contentItem) ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"new--content--tag\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Caption>New</Caption>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<></>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t<Caption style={{ color: COLORS.content.placeholder }}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{contentItem.createdAt\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? format(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.createdAt.toDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? contentItem.createdAt.toDate()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: new Date(contentItem.createdAt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'dd MMMM yyyy',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''}\n\t\t\t\t\t\t\t\t\t\t\t\t</Caption>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt--8\">\n\t\t\t\t\t\t\t\t\t\t\t<TitleSmall>{contentItem.title}</TitleSmall>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: contentItem.body }}\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"card--desc mt--12\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"flex flex--row mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\tbuttonText={\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.primaryButton?.text ||\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.buttonText ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Explore the feature'\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => handleContentClick(contentItem)}\n\t\t\t\t\t\t\t\t\t\t\t\tmatchParentWidth={true}\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</MainCardContainer>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</WhatsNewWrapper>\n\t\t\t</MainContainer>\n\t\t\t<VideoModal\n\t\t\t\tisOpen={isVideoModalOpen}\n\t\t\t\tvideoUrl={videoUrl}\n\t\t\t\tonClose={() => {\n\t\t\t\t\tsetIsVideoModalOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\t\t</SideModal>\n\t);\n};\n"],"names":["_ref","isOpen","onClose","content","isLoading","title","searchPlaceholder","emptyStateTitle","emptyStateDescription","noResultsText","width","onContentClick","renderCustomContent","searchText","setSearchText","useState","isVideoModalOpen","setIsVideoModalOpen","videoUrl","setVideoUrl","ifNewContent","contentItem","createdAt","toDate","Date","differenceInBusinessDays","modifiedWhatsNewContent","useMemo","trim","searchLower","toLowerCase","filter","item","includes","body","isWhatsNewContentEmpty","length","isModifiedWhatsNewContentEmpty","_jsxs","SideModal","Object","assign","header","headerCustomComponent","_jsx","jsx","TitleMedium","color","COLORS","background","inverse","headerStyle","brandLight","hideFooter","jsxs","MainContainer","children","className","SearchBar","isEnabled","onChange","inputText","onEnter","placeholder","variant","searchValue","onClickCross","WhatsNewWrapper","WhatsNewIcon","height","SearchIconSvg","_Fragment","TitleRegular","BodyPrimary","secondary","style","maxWidth","map","index","MainCardContainer","BackgroundImageContainer","imageUrl","image","borderRadius","Caption","format","TitleSmall","dangerouslySetInnerHTML","__html","Button","buttonText","primaryButton","_a","text","onClick","action","productVideo","redirectionUrl","_b","redirectUrl","startsWith","window","open","location","href","handleContentClick","matchParentWidth","size","VideoModal"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { QueryBuilderNodeProps } from "../../../
|
|
2
|
+
import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
|
|
3
3
|
declare const EventsTrigger: React.FC<QueryBuilderNodeProps>;
|
|
4
4
|
export default EventsTrigger;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { QueryBuilderAPIData } from "../../../
|
|
1
|
+
import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
|
|
2
2
|
export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { QueryBuilderNodeProps } from "../../../
|
|
2
|
+
import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
|
|
3
3
|
declare const IGTrigger: React.FC<QueryBuilderNodeProps>;
|
|
4
4
|
export default IGTrigger;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { QueryBuilderAPIData } from "../../../
|
|
1
|
+
import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
|
|
2
2
|
export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
|
package/dist/cjs/src/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { DropdownOption } from "../../../dropdown/type";
|
|
3
|
-
import { QueryBuilderProperty } from "../../
|
|
4
|
-
import { QueryBuilderNodeProps } from "../../
|
|
3
|
+
import { QueryBuilderProperty } from "../../types/QueryBuilder.type";
|
|
4
|
+
import { QueryBuilderNodeProps } from "../../types/QueryBuilderNodeProps.type";
|
|
5
5
|
declare const BaseTriggerQueryBuilderNode: React.FC<QueryBuilderNodeProps & {
|
|
6
6
|
cacheKey: string;
|
|
7
7
|
propertyAddBtnText: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as e,Fragment as t,jsxs as
|
|
1
|
+
import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{format as n,differenceInBusinessDays as o}from"date-fns";import{useState as s,useMemo as a}from"react";import i from"../../assets/icons/searchIcon.svg.js";import c from"../../assets/icons/whatsNew.svg.js";import{COLORS as d}from"../../constants/Theme.js";import{Button as l}from"../button/Button.js";import{VideoModal as h}from"../feature-announcements/VideoModal.js";import{SearchBar as m}from"../searchBar/searchBar.js";import{SideModal as u}from"../side-modal/SideModal.js";import{TitleMedium as p,TitleRegular as g,BodyPrimary as f,Caption as w,TitleSmall as b}from"../TypographyStyle.js";import{MainContainer as j,WhatsNewWrapper as y,MainCardContainer as v,BackgroundImageContainer as x}from"./WhatsNew.styles.js";const C=C=>{let{isOpen:N,onClose:O,content:k,isLoading:A=!1,title:D="What's new on BIK",searchPlaceholder:S="Search posts",emptyStateTitle:T="Nothing new!",emptyStateDescription:B="There are no new updates or features at the moment. Check back soon!",noResultsText:L="Sorry, no results found.",width:M="480px",onContentClick:V,renderCustomContent:W}=C;const[U,E]=s(""),[I,P]=s(!1),[_,R]=s(""),z=e=>{if(!e.createdAt)return!1;const t=e.createdAt.toDate?e.createdAt.toDate():new Date(e.createdAt);return o(new Date,t)<7},F=a((()=>{if(!U.trim())return k;const e=U.toLowerCase();return k.filter((t=>t.title.toLowerCase().includes(e)||t.body.toLowerCase().includes(e)||t.content&&t.content.toLowerCase().includes(e)))}),[k,U]),H=0===k.length,K=0===F.length;return N?r(u,Object.assign({width:M,onClose:O,header:"",headerCustomComponent:e(p,Object.assign({color:d.background.inverse},{children:D})),headerStyle:{background:d.background.brandLight},hideFooter:!0},{children:[r(j,{children:[e("div",Object.assign({className:"mt-8"},{children:e(m,{width:"100%",isEnabled:!H,onChange:e=>{E(e)},onEnter:e=>{E(e)},placeholder:S,variant:"default",searchValue:U,onClickCross:()=>{E("")}})})),e(y,{children:H||K?r("div",Object.assign({className:"no--data--found"},{children:[e("div",Object.assign({className:"icon--wrapper"},{children:e(H?c:i,{width:32,height:32})})),H?r(t,{children:[e(g,{children:T}),e(f,Object.assign({color:d.content.secondary,className:"text--align",style:{maxWidth:300}},{children:B}))]}):K?e(f,Object.assign({color:d.content.secondary,className:"text--align",style:{maxWidth:300}},{children:L})):null]})):e("div",Object.assign({className:"scroller"},{children:F.map(((o,s)=>{var a;return W?W(o):r(v,Object.assign({className:"padding--16 mb-mt-8"},{children:[e(x,{imageUrl:o.image,height:"209px",width:"100%",style:{borderRadius:"4px"}}),e("div",Object.assign({className:"mt-20 full--width"},{children:r("div",Object.assign({className:"created--at flex flex--row"},{children:[z(o)?e("div",Object.assign({className:"new--content--tag"},{children:e(w,{children:"New"})})):e(t,{}),e(w,Object.assign({style:{color:d.content.placeholder}},{children:o.createdAt?n(o.createdAt.toDate?o.createdAt.toDate():new Date(o.createdAt),"dd MMMM yyyy"):""}))]}))})),e("div",Object.assign({className:"mt--8"},{children:e(b,{children:o.title})})),e("div",{dangerouslySetInnerHTML:{__html:o.body},className:"card--desc mt--12"}),e("div",Object.assign({className:"flex flex--row mt-20 full--width"},{children:e(l,{buttonText:(null===(a=o.primaryButton)||void 0===a?void 0:a.text)||o.buttonText||"Explore the feature",onClick:()=>(e=>{var t,r;const n=null===(t=e.primaryButton)||void 0===t?void 0:t.action;if("Play Video"===n||!n&&e.productVideo)e.productVideo&&(R(e.productVideo),P(!0));else{const t=(null===(r=e.primaryButton)||void 0===r?void 0:r.redirectionUrl)||e.redirectUrl;t&&(t.startsWith("http")?window.open(t,"_blank","noopener,noreferrer"):window.location.href=t)}V&&V(e)})(o),matchParentWidth:!0,size:"medium"})}))]}),`whats-new-${s}`)}))}))})]}),e(h,{isOpen:I,videoUrl:_,onClose:()=>{P(!1)}})]})):e(t,{})};export{C as WhatsNewPanel};
|
|
2
2
|
//# sourceMappingURL=WhatsNewPanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhatsNewPanel.js","sources":["../../../../src/components/whats-new/WhatsNewPanel.tsx"],"sourcesContent":["import { differenceInBusinessDays, format } from 'date-fns';\nimport React, { useMemo, useState } from 'react';\nimport SearchIconSvg from '../../assets/icons/searchIcon.svg';\nimport WhatsNewIcon from '../../assets/icons/whatsNew.svg';\nimport { COLORS } from '../../constants/Theme';\nimport { Button } from '../button';\nimport { VideoModal } from '../feature-announcements/VideoModal';\nimport { SearchBar } from '../searchBar';\nimport { SideModal } from '../side-modal';\nimport {\n\tBodyPrimary,\n\tCaption,\n\tTitleMedium,\n\tTitleRegular,\n\tTitleSmall,\n} from '../TypographyStyle';\nimport {\n\tBackgroundImageContainer,\n\tMainCardContainer,\n\tMainContainer,\n\tWhatsNewWrapper,\n} from './WhatsNew.styles';\nimport { WhatsNewContent, WhatsNewPanelProps } from './WhatsNew.types';\n\nexport const WhatsNewPanel: React.FC<WhatsNewPanelProps> = ({\n\tisOpen,\n\tonClose,\n\tcontent,\n\tisLoading = false,\n\ttitle = \"What's new on BIK\",\n\tsearchPlaceholder = 'Search posts',\n\temptyStateTitle = 'Nothing new!',\n\temptyStateDescription = 'There are no new updates or features at the moment. Check back soon!',\n\tnoResultsText = 'Sorry, no results found.',\n\twidth = '480px',\n\tonContentClick,\n\trenderCustomContent,\n}) => {\n\tconst [searchText, setSearchText] = useState('');\n\tconst [isVideoModalOpen, setIsVideoModalOpen] = useState(false);\n\tconst [videoUrl, setVideoUrl] = useState('');\n\n\tconst ifNewContent = (contentItem: WhatsNewContent): boolean => {\n\t\tif (!contentItem.createdAt) return false;\n\t\tconst createdAt = contentItem.createdAt.toDate\n\t\t\t? contentItem.createdAt.toDate()\n\t\t\t: new Date(contentItem.createdAt);\n\t\treturn differenceInBusinessDays(new Date(), createdAt) < 7;\n\t};\n\n\tconst modifiedWhatsNewContent = useMemo(() => {\n\t\tif (!searchText.trim()) return content;\n\n\t\tconst searchLower = searchText.toLowerCase();\n\t\treturn content.filter(\n\t\t\t(item) =>\n\t\t\t\titem.title.toLowerCase().includes(searchLower) ||\n\t\t\t\titem.body.toLowerCase().includes(searchLower) ||\n\t\t\t\t(item.content && item.content.toLowerCase().includes(searchLower)),\n\t\t);\n\t}, [content, searchText]);\n\n\tconst handleContentClick = (contentItem: WhatsNewContent) => {\n\t\tconst action = contentItem.primaryButton?.action;\n\t\tconsole.log('Content item clicked:', contentItem);\n\t\tif (action === 'Play Video' || (!action && contentItem.productVideo)) {\n\t\t\tif (contentItem.productVideo) {\n\t\t\t\tsetVideoUrl(contentItem.productVideo);\n\t\t\t\tsetIsVideoModalOpen(true);\n\t\t\t}\n\t\t} else {\n\t\t\tconst redirectionUrl =\n\t\t\t\tcontentItem.primaryButton?.redirectionUrl || contentItem.redirectUrl;\n\t\t\tif (redirectionUrl) {\n\t\t\t\tconst isExternal = redirectionUrl.startsWith('http');\n\t\t\t\tif (isExternal) {\n\t\t\t\t\twindow.open(redirectionUrl, '_blank', 'noopener,noreferrer');\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = redirectionUrl;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (onContentClick) {\n\t\t\tonContentClick(contentItem);\n\t\t}\n\t};\n\n\tconst isWhatsNewContentEmpty = content.length === 0;\n\tconst isModifiedWhatsNewContentEmpty = modifiedWhatsNewContent.length === 0;\n\n\tif (!isOpen) {\n\t\treturn <></>;\n\t}\n\n\treturn (\n\t\t<SideModal\n\t\t\twidth={width}\n\t\t\tonClose={onClose}\n\t\t\theader=\"\"\n\t\t\theaderCustomComponent={\n\t\t\t\t<TitleMedium color={COLORS.background.inverse}>{title}</TitleMedium>\n\t\t\t}\n\t\t\theaderStyle={{ background: COLORS.background.brandLight }}\n\t\t\thideFooter={true}\n\t\t>\n\t\t\t<MainContainer>\n\t\t\t\t<div className=\"mt-8\">\n\t\t\t\t\t<SearchBar\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\tisEnabled={!isWhatsNewContentEmpty}\n\t\t\t\t\t\tonChange={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonEnter={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tplaceholder={searchPlaceholder}\n\t\t\t\t\t\tvariant=\"default\"\n\t\t\t\t\t\tsearchValue={searchText}\n\t\t\t\t\t\tonClickCross={() => {\n\t\t\t\t\t\t\tsetSearchText('');\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<WhatsNewWrapper>\n\t\t\t\t\t{isWhatsNewContentEmpty || isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t<div className=\"no--data--found\">\n\t\t\t\t\t\t\t<div className=\"icon--wrapper\">\n\t\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t\t<WhatsNewIcon width={32} height={32} />\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<SearchIconSvg width={32} height={32} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<TitleRegular>{emptyStateTitle}</TitleRegular>\n\t\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{emptyStateDescription}\n\t\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{noResultsText}\n\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div className=\"scroller\">\n\t\t\t\t\t\t\t{modifiedWhatsNewContent.map((contentItem, index) => {\n\t\t\t\t\t\t\t\tif (renderCustomContent) {\n\t\t\t\t\t\t\t\t\treturn renderCustomContent(contentItem);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MainCardContainer\n\t\t\t\t\t\t\t\t\t\tclassName=\"padding--16 mb-mt-8\"\n\t\t\t\t\t\t\t\t\t\tkey={`whats-new-${index}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<BackgroundImageContainer\n\t\t\t\t\t\t\t\t\t\t\timageUrl={contentItem.image}\n\t\t\t\t\t\t\t\t\t\t\theight=\"209px\"\n\t\t\t\t\t\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={{ borderRadius: '4px' }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"created--at flex flex--row\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ifNewContent(contentItem) ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"new--content--tag\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Caption>New</Caption>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<></>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t<Caption style={{ color: COLORS.content.placeholder }}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{contentItem.createdAt\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? format(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.createdAt.toDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? contentItem.createdAt.toDate()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: new Date(contentItem.createdAt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'dd MMMM yyyy',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''}\n\t\t\t\t\t\t\t\t\t\t\t\t</Caption>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt--8\">\n\t\t\t\t\t\t\t\t\t\t\t<TitleSmall>{contentItem.title}</TitleSmall>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: contentItem.body }}\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"card--desc mt--12\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"flex flex--row mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\tbuttonText={\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.primaryButton?.text ||\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.buttonText ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Explore the feature'\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => handleContentClick(contentItem)}\n\t\t\t\t\t\t\t\t\t\t\t\tmatchParentWidth={true}\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</MainCardContainer>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</WhatsNewWrapper>\n\t\t\t</MainContainer>\n\t\t\t<VideoModal\n\t\t\t\tisOpen={isVideoModalOpen}\n\t\t\t\tvideoUrl={videoUrl}\n\t\t\t\tonClose={() => {\n\t\t\t\t\tsetIsVideoModalOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\t\t</SideModal>\n\t);\n};\n"],"names":["WhatsNewPanel","_ref","isOpen","onClose","content","isLoading","title","searchPlaceholder","emptyStateTitle","emptyStateDescription","noResultsText","width","onContentClick","renderCustomContent","searchText","setSearchText","useState","isVideoModalOpen","setIsVideoModalOpen","videoUrl","setVideoUrl","ifNewContent","contentItem","createdAt","toDate","Date","differenceInBusinessDays","modifiedWhatsNewContent","useMemo","trim","searchLower","toLowerCase","filter","item","includes","body","isWhatsNewContentEmpty","length","isModifiedWhatsNewContentEmpty","_jsxs","SideModal","Object","assign","header","headerCustomComponent","_jsx","TitleMedium","color","COLORS","background","inverse","headerStyle","brandLight","hideFooter","MainContainer","children","className","SearchBar","isEnabled","onChange","inputText","onEnter","placeholder","variant","searchValue","onClickCross","WhatsNewWrapper","WhatsNewIcon","SearchIconSvg","height","_Fragment","TitleRegular","BodyPrimary","secondary","style","maxWidth","map","index","MainCardContainer","BackgroundImageContainer","imageUrl","image","borderRadius","Caption","format","TitleSmall","dangerouslySetInnerHTML","__html","Button","buttonText","primaryButton","_a","text","onClick","action","console","log","productVideo","redirectionUrl","_b","redirectUrl","startsWith","window","open","location","href","handleContentClick","matchParentWidth","size","VideoModal"],"mappings":"uxBAwBaA,MAAAA,EAA8CC,IAatD,IAbuDC,OAC3DA,EAAMC,QACNA,EAAOC,QACPA,EAAOC,UACPA,GAAY,EAAKC,MACjBA,EAAQ,oBAAmBC,kBAC3BA,EAAoB,eAAcC,gBAClCA,EAAkB,eAAcC,sBAChCA,EAAwB,uEAAsEC,cAC9FA,EAAgB,2BAA0BC,MAC1CA,EAAQ,QAAOC,eACfA,EAAcC,oBACdA,GACAZ,EACA,MAAOa,EAAYC,GAAiBC,EAAS,KACtCC,EAAkBC,GAAuBF,GAAS,IAClDG,EAAUC,GAAeJ,EAAS,IAEnCK,EAAgBC,IACrB,IAAKA,EAAYC,UAAW,OAAO,EACnC,MAAMA,EAAYD,EAAYC,UAAUC,OACrCF,EAAYC,UAAUC,SACtB,IAAIC,KAAKH,EAAYC,WACxB,OAAOG,EAAyB,IAAID,KAAQF,GAAa,CAAC,EAGrDI,EAA0BC,GAAQ,KACvC,IAAKd,EAAWe,OAAQ,OAAOzB,EAE/B,MAAM0B,EAAchB,EAAWiB,cAC/B,OAAO3B,EAAQ4B,QACbC,GACAA,EAAK3B,MAAMyB,cAAcG,SAASJ,IAClCG,EAAKE,KAAKJ,cAAcG,SAASJ,IAChCG,EAAK7B,SAAW6B,EAAK7B,QAAQ2B,cAAcG,SAASJ,IACtD,GACC,CAAC1B,EAASU,IA4BPsB,EAA4C,IAAnBhC,EAAQiC,OACjCC,EAAoE,IAAnCX,EAAwBU,OAE/D,OAAKnC,EAKJqC,EAACC,EAASC,OAAAC,OAAA,CACT/B,MAAOA,EACPR,QAASA,EACTwC,OAAO,GACPC,sBACCC,EAACC,EAAWL,OAAAC,OAAA,CAACK,MAAOC,EAAOC,WAAWC,mBAAU5C,KAEjD6C,YAAa,CAAEF,WAAYD,EAAOC,WAAWG,YAC7CC,YAAY,cAEZd,EAACe,EACA,CAAAC,SAAA,CAAAV,EAAA,MAAAJ,OAAAC,OAAA,CAAKc,UAAU,QACd,CAAAD,SAAAV,EAACY,EACA,CAAA9C,MAAM,OACN+C,WAAYtB,EACZuB,SAAWC,IACV7C,EAAc6C,EAAU,EAEzBC,QAAUD,IACT7C,EAAc6C,EAAU,EAEzBE,YAAavD,EACbwD,QAAQ,UACRC,YAAalD,EACbmD,aAAcA,KACblD,EAAc,GAAG,OAIpB8B,EAACqB,EACC,CAAAX,SAAAnB,GAA0BE,EAC1BC,EAAA,MAAAE,OAAAC,OAAA,CAAKc,UAAU,mBACd,CAAAD,SAAA,CAAAV,EAAA,MAAAJ,OAAAC,OAAA,CAAKc,UAAU,iBACb,CAAAD,SACAV,EADAT,EACC+B,EAEAC,EAFa,CAAAzD,MAAO,GAAI0D,OAAQ,QAKlCjC,EACAG,EAAA+B,EAAA,CAAAf,SAAA,CACCV,EAAC0B,EAAY,CAAAhB,SAAE/C,IACfqC,EAAC2B,EACA/B,OAAAC,OAAA,CAAAK,MAAOC,EAAO5C,QAAQqE,UACtBjB,UAAU,cACVkB,MAAO,CAAEC,SAAU,MAElB,CAAApB,SAAA9C,QAGA6B,EACHO,EAAC2B,EACA/B,OAAAC,OAAA,CAAAK,MAAOC,EAAO5C,QAAQqE,UACtBjB,UAAU,cACVkB,MAAO,CAAEC,SAAU,MAElB,CAAApB,SAAA7C,KAEC,SAGLmC,EAAA,MAAAJ,OAAAC,OAAA,CAAKc,UAAU,YACb,CAAAD,SAAA5B,EAAwBiD,KAAI,CAACtD,EAAauD,WAC1C,OAAIhE,EACIA,EAAoBS,GAI3BiB,EAACuC,iBACAtB,UAAU,uBAGV,CAAAD,SAAA,CAAAV,EAACkC,EAAwB,CACxBC,SAAU1D,EAAY2D,MACtBZ,OAAO,QACP1D,MAAM,OACN+D,MAAO,CAAEQ,aAAc,SAExBrC,uBAAKW,UAAU,qBACd,CAAAD,SAAAhB,EAAA,MAAAE,OAAAC,OAAA,CAAKc,UAAU,8BACb,CAAAD,SAAA,CAAAlC,EAAaC,GACbuB,EAAK,MAAAJ,OAAAC,OAAA,CAAAc,UAAU,+BACdX,EAACsC,uBAGFtC,EAAAyB,EAAA,CAAA,GAEDzB,EAACsC,EAAQ1C,OAAAC,OAAA,CAAAgC,MAAO,CAAE3B,MAAOC,EAAO5C,QAAQ0D,cACtC,CAAAP,SAAAjC,EAAYC,UACV6D,EACA9D,EAAYC,UAAUC,OACnBF,EAAYC,UAAUC,SACtB,IAAIC,KAAKH,EAAYC,WACxB,gBAEA,aAINsB,EAAK,MAAAJ,OAAAC,OAAA,CAAAc,UAAU,SACd,CAAAD,SAAAV,EAACwC,EAAY,CAAA9B,SAAAjC,EAAYhB,WAE1BuC,EACC,MAAA,CAAAyC,wBAAyB,CAAEC,OAAQjE,EAAYa,MAC/CqB,UAAU,sBAEXX,EAAK,MAAAJ,OAAAC,OAAA,CAAAc,UAAU,8CACdX,EAAC2C,EACA,CAAAC,YAC0B,UAAzBnE,EAAYoE,qBAAa,IAAAC,OAAA,EAAAA,EAAEC,OAC3BtE,EAAYmE,YACZ,sBAEDI,QAASA,IAnJQvE,aAC3B,MAAMwE,EAAkC,QAAzBH,EAAArE,EAAYoE,qBAAa,IAAAC,OAAA,EAAAA,EAAEG,OAE1C,GADAC,QAAQC,IAAI,wBAAyB1E,GACtB,eAAXwE,IAA6BA,GAAUxE,EAAY2E,aAClD3E,EAAY2E,eACf7E,EAAYE,EAAY2E,cACxB/E,GAAoB,QAEf,CACN,MAAMgF,GACoB,QAAzBC,EAAA7E,EAAYoE,qBAAa,IAAAS,OAAA,EAAAA,EAAED,iBAAkB5E,EAAY8E,YACtDF,IACgBA,EAAeG,WAAW,QAE5CC,OAAOC,KAAKL,EAAgB,SAAU,uBAEtCI,OAAOE,SAASC,KAAOP,EAGzB,CAEGtF,GACHA,EAAeU,EACf,EA4HwBoF,CAAmBpF,GAClCqF,kBAAkB,EAClBC,KAAK,iBA7CF,aAAa/B,IAgDC,YAO1BhC,EAACgE,EACA,CAAA3G,OAAQe,EACRE,SAAUA,EACVhB,QAASA,KACRe,GAAoB,EAAM,QArItB2B,OAwIK"}
|
|
1
|
+
{"version":3,"file":"WhatsNewPanel.js","sources":["../../../../src/components/whats-new/WhatsNewPanel.tsx"],"sourcesContent":["import { differenceInBusinessDays, format } from 'date-fns';\nimport React, { useMemo, useState } from 'react';\nimport SearchIconSvg from '../../assets/icons/searchIcon.svg';\nimport WhatsNewIcon from '../../assets/icons/whatsNew.svg';\nimport { COLORS } from '../../constants/Theme';\nimport { Button } from '../button';\nimport { VideoModal } from '../feature-announcements/VideoModal';\nimport { SearchBar } from '../searchBar';\nimport { SideModal } from '../side-modal';\nimport {\n\tBodyPrimary,\n\tCaption,\n\tTitleMedium,\n\tTitleRegular,\n\tTitleSmall,\n} from '../TypographyStyle';\nimport {\n\tBackgroundImageContainer,\n\tMainCardContainer,\n\tMainContainer,\n\tWhatsNewWrapper,\n} from './WhatsNew.styles';\nimport { WhatsNewContent, WhatsNewPanelProps } from './WhatsNew.types';\n\nexport const WhatsNewPanel: React.FC<WhatsNewPanelProps> = ({\n\tisOpen,\n\tonClose,\n\tcontent,\n\tisLoading = false,\n\ttitle = \"What's new on BIK\",\n\tsearchPlaceholder = 'Search posts',\n\temptyStateTitle = 'Nothing new!',\n\temptyStateDescription = 'There are no new updates or features at the moment. Check back soon!',\n\tnoResultsText = 'Sorry, no results found.',\n\twidth = '480px',\n\tonContentClick,\n\trenderCustomContent,\n}) => {\n\tconst [searchText, setSearchText] = useState('');\n\tconst [isVideoModalOpen, setIsVideoModalOpen] = useState(false);\n\tconst [videoUrl, setVideoUrl] = useState('');\n\n\tconst ifNewContent = (contentItem: WhatsNewContent): boolean => {\n\t\tif (!contentItem.createdAt) return false;\n\t\tconst createdAt = contentItem.createdAt.toDate\n\t\t\t? contentItem.createdAt.toDate()\n\t\t\t: new Date(contentItem.createdAt);\n\t\treturn differenceInBusinessDays(new Date(), createdAt) < 7;\n\t};\n\n\tconst modifiedWhatsNewContent = useMemo(() => {\n\t\tif (!searchText.trim()) return content;\n\n\t\tconst searchLower = searchText.toLowerCase();\n\t\treturn content.filter(\n\t\t\t(item) =>\n\t\t\t\titem.title.toLowerCase().includes(searchLower) ||\n\t\t\t\titem.body.toLowerCase().includes(searchLower) ||\n\t\t\t\t(item.content && item.content.toLowerCase().includes(searchLower)),\n\t\t);\n\t}, [content, searchText]);\n\n\tconst handleContentClick = (contentItem: WhatsNewContent) => {\n\t\tconst action = contentItem.primaryButton?.action;\n\t\tif (action === 'Play Video' || (!action && contentItem.productVideo)) {\n\t\t\tif (contentItem.productVideo) {\n\t\t\t\tsetVideoUrl(contentItem.productVideo);\n\t\t\t\tsetIsVideoModalOpen(true);\n\t\t\t}\n\t\t} else {\n\t\t\tconst redirectionUrl =\n\t\t\t\tcontentItem.primaryButton?.redirectionUrl || contentItem.redirectUrl;\n\t\t\tif (redirectionUrl) {\n\t\t\t\tconst isExternal = redirectionUrl.startsWith('http');\n\t\t\t\tif (isExternal) {\n\t\t\t\t\twindow.open(redirectionUrl, '_blank', 'noopener,noreferrer');\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = redirectionUrl;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (onContentClick) {\n\t\t\tonContentClick(contentItem);\n\t\t}\n\t};\n\n\tconst isWhatsNewContentEmpty = content.length === 0;\n\tconst isModifiedWhatsNewContentEmpty = modifiedWhatsNewContent.length === 0;\n\n\tif (!isOpen) {\n\t\treturn <></>;\n\t}\n\n\treturn (\n\t\t<SideModal\n\t\t\twidth={width}\n\t\t\tonClose={onClose}\n\t\t\theader=\"\"\n\t\t\theaderCustomComponent={\n\t\t\t\t<TitleMedium color={COLORS.background.inverse}>{title}</TitleMedium>\n\t\t\t}\n\t\t\theaderStyle={{ background: COLORS.background.brandLight }}\n\t\t\thideFooter={true}\n\t\t>\n\t\t\t<MainContainer>\n\t\t\t\t<div className=\"mt-8\">\n\t\t\t\t\t<SearchBar\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\tisEnabled={!isWhatsNewContentEmpty}\n\t\t\t\t\t\tonChange={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonEnter={(inputText: string) => {\n\t\t\t\t\t\t\tsetSearchText(inputText);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tplaceholder={searchPlaceholder}\n\t\t\t\t\t\tvariant=\"default\"\n\t\t\t\t\t\tsearchValue={searchText}\n\t\t\t\t\t\tonClickCross={() => {\n\t\t\t\t\t\t\tsetSearchText('');\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<WhatsNewWrapper>\n\t\t\t\t\t{isWhatsNewContentEmpty || isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t<div className=\"no--data--found\">\n\t\t\t\t\t\t\t<div className=\"icon--wrapper\">\n\t\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t\t<WhatsNewIcon width={32} height={32} />\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<SearchIconSvg width={32} height={32} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{isWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<TitleRegular>{emptyStateTitle}</TitleRegular>\n\t\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{emptyStateDescription}\n\t\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : isModifiedWhatsNewContentEmpty ? (\n\t\t\t\t\t\t\t\t<BodyPrimary\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\tclassName=\"text--align\"\n\t\t\t\t\t\t\t\t\tstyle={{ maxWidth: 300 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{noResultsText}\n\t\t\t\t\t\t\t\t</BodyPrimary>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div className=\"scroller\">\n\t\t\t\t\t\t\t{modifiedWhatsNewContent.map((contentItem, index) => {\n\t\t\t\t\t\t\t\tif (renderCustomContent) {\n\t\t\t\t\t\t\t\t\treturn renderCustomContent(contentItem);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MainCardContainer\n\t\t\t\t\t\t\t\t\t\tclassName=\"padding--16 mb-mt-8\"\n\t\t\t\t\t\t\t\t\t\tkey={`whats-new-${index}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<BackgroundImageContainer\n\t\t\t\t\t\t\t\t\t\t\timageUrl={contentItem.image}\n\t\t\t\t\t\t\t\t\t\t\theight=\"209px\"\n\t\t\t\t\t\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={{ borderRadius: '4px' }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"created--at flex flex--row\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ifNewContent(contentItem) ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"new--content--tag\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Caption>New</Caption>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<></>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t<Caption style={{ color: COLORS.content.placeholder }}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{contentItem.createdAt\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? format(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.createdAt.toDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? contentItem.createdAt.toDate()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: new Date(contentItem.createdAt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'dd MMMM yyyy',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''}\n\t\t\t\t\t\t\t\t\t\t\t\t</Caption>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div className=\"mt--8\">\n\t\t\t\t\t\t\t\t\t\t\t<TitleSmall>{contentItem.title}</TitleSmall>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: contentItem.body }}\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"card--desc mt--12\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<div className=\"flex flex--row mt-20 full--width\">\n\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\tbuttonText={\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.primaryButton?.text ||\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontentItem.buttonText ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Explore the feature'\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => handleContentClick(contentItem)}\n\t\t\t\t\t\t\t\t\t\t\t\tmatchParentWidth={true}\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</MainCardContainer>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</WhatsNewWrapper>\n\t\t\t</MainContainer>\n\t\t\t<VideoModal\n\t\t\t\tisOpen={isVideoModalOpen}\n\t\t\t\tvideoUrl={videoUrl}\n\t\t\t\tonClose={() => {\n\t\t\t\t\tsetIsVideoModalOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\t\t</SideModal>\n\t);\n};\n"],"names":["WhatsNewPanel","_ref","isOpen","onClose","content","isLoading","title","searchPlaceholder","emptyStateTitle","emptyStateDescription","noResultsText","width","onContentClick","renderCustomContent","searchText","setSearchText","useState","isVideoModalOpen","setIsVideoModalOpen","videoUrl","setVideoUrl","ifNewContent","contentItem","createdAt","toDate","Date","differenceInBusinessDays","modifiedWhatsNewContent","useMemo","trim","searchLower","toLowerCase","filter","item","includes","body","isWhatsNewContentEmpty","length","isModifiedWhatsNewContentEmpty","_jsxs","SideModal","Object","assign","header","headerCustomComponent","_jsx","TitleMedium","color","COLORS","background","inverse","headerStyle","brandLight","hideFooter","MainContainer","children","className","SearchBar","isEnabled","onChange","inputText","onEnter","placeholder","variant","searchValue","onClickCross","WhatsNewWrapper","WhatsNewIcon","SearchIconSvg","height","_Fragment","TitleRegular","BodyPrimary","secondary","style","maxWidth","map","index","MainCardContainer","BackgroundImageContainer","imageUrl","image","borderRadius","Caption","format","TitleSmall","dangerouslySetInnerHTML","__html","Button","buttonText","primaryButton","_a","text","onClick","action","productVideo","redirectionUrl","_b","redirectUrl","startsWith","window","open","location","href","handleContentClick","matchParentWidth","size","VideoModal"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { QueryBuilderNodeProps } from "../../../
|
|
2
|
+
import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
|
|
3
3
|
declare const EventsTrigger: React.FC<QueryBuilderNodeProps>;
|
|
4
4
|
export default EventsTrigger;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { QueryBuilderAPIData } from "../../../
|
|
1
|
+
import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
|
|
2
2
|
export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { QueryBuilderNodeProps } from "../../../
|
|
2
|
+
import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
|
|
3
3
|
declare const IGTrigger: React.FC<QueryBuilderNodeProps>;
|
|
4
4
|
export default IGTrigger;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { QueryBuilderAPIData } from "../../../
|
|
1
|
+
import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
|
|
2
2
|
export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
|
package/dist/esm/src/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { DropdownOption } from "../../../dropdown/type";
|
|
3
|
-
import { QueryBuilderProperty } from "../../
|
|
4
|
-
import { QueryBuilderNodeProps } from "../../
|
|
3
|
+
import { QueryBuilderProperty } from "../../types/QueryBuilder.type";
|
|
4
|
+
import { QueryBuilderNodeProps } from "../../types/QueryBuilderNodeProps.type";
|
|
5
5
|
declare const BaseTriggerQueryBuilderNode: React.FC<QueryBuilderNodeProps & {
|
|
6
6
|
cacheKey: string;
|
|
7
7
|
propertyAddBtnText: string;
|