@corva/ui 3.78.0-7 → 3.78.0-9
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/cjs-bundle/components/StatusBadge/components/DQAlertsTooltip.js +1 -1
- package/cjs-bundle/components/StatusBadge/components/DQAlertsTooltip.js.map +1 -1
- package/cjs-bundle/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js +1 -1
- package/cjs-bundle/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js.map +1 -1
- package/cjs-bundle/utils/index.js +1 -1
- package/cjs-bundle/utils/index.js.map +1 -1
- package/cjs-bundle/utils/safeTemplate.js +2 -0
- package/cjs-bundle/utils/safeTemplate.js.map +1 -0
- package/components/StatusBadge/components/DQAlertsTooltip.d.ts.map +1 -1
- package/components/StatusBadge/components/DQAlertsTooltip.js +1 -1
- package/components/StatusBadge/components/DQAlertsTooltip.js.map +1 -1
- package/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.d.ts.map +1 -1
- package/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js +1 -1
- package/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js.map +1 -1
- package/componentsV2/Autocomplete/AutocompleteNext.stories.d.ts +1 -0
- package/componentsV2/Autocomplete/AutocompleteNext.stories.d.ts.map +1 -1
- package/mcp-server/server.mjs +24 -8578
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/utils/__tests__/safeTemplate.test.d.ts +2 -0
- package/utils/__tests__/safeTemplate.test.d.ts.map +1 -0
- package/utils/index.d.ts +1 -0
- package/utils/index.d.ts.map +1 -1
- package/utils/index.js +1 -1
- package/utils/index.js.map +1 -1
- package/utils/safeTemplate.d.ts +24 -0
- package/utils/safeTemplate.d.ts.map +1 -0
- package/utils/safeTemplate.js +2 -0
- package/utils/safeTemplate.js.map +1 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("moment"),t=require("lodash"),s=require("@material-ui/core"),i=require("@material-ui/icons/ArrowForward"),a=require("../../Tooltip/Tooltip.js");require("../../Tooltip/ScrollableTooltip.js");var n=require("../utils.js"),l=require("../constants.js"),o=require("../../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),u=require("../styles.js"),c=require("../../../constants/mixpanel.js");require("../../UserMention/utils/index.js"),require("@babel/runtime/helpers/defineProperty"),require("../../../utils/convert.js"),require("../../../constants/completion.js"),require("../../../constants/alerts.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../../utils/casing/validation.js"),require("@babel/runtime/helpers/slicedToArray"),require("lodash/mean"),require("../../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../../constants/goals.js"),require("../../../constants/segment.js"),require("../../../constants/apps.js"),require("../../../constants/drillstring.js"),require("../../../constants/appPackages.js"),require("../../../constants/notifications.js"),require("../../../constants/feed.js"),require("../../../constants/bha.js"),require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js"),require("../../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../../utils/ga.js"),require("../../../utils/goalsConfig/goalsConfig.js"),require("../../../utils/lasParser.js"),require("../../../utils/main.js"),require("../../../utils/metrics/metricsConfig.js"),require("../../../utils/mobileDetect.js"),require("../../../utils/feed.js"),require("../../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../../utils/dashboardReports.js"),require("../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../utils/jsonaDataFormatter.js"),require("../../../utils/bha.js"),require("jsona"),require("../../../clients/jsonApi/index.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../utils/charts/Styles.scss.js"),require("../../../utils/getSingleAsset.js");var p=require("../../../utils/safeTemplate.js"),d=require("react/jsx-runtime");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var h=m(r),g=m(i),j=s.makeStyles((function(e){return{errorIcon:{width:20,height:18},title:{maxWidth:198,padding:"0 0 8px",fontSize:16,lineHeight:"22px",color:e.palette.primary.text1,display:"flex",alignItems:"center"},emptyMessage:{padding:"0",fontSize:16,lineHeight:"22px",color:e.palette.primary.contrastText},alertTime:{fontSize:14,color:e.palette.primary.text6,"& span":{color:e.palette.primary.text1}},alertMessage:{width:"100%",height:40,margin:0,overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box","-webkit-line-clamp":2,"-webkit-box-orient":"vertical",whiteSpace:"pre-wrap",fontSize:14,lineHeight:"20px",color:e.palette.primary.text1},alertMessageFull:{marginBottom:8,fontSize:14,lineHeight:"20px",color:e.palette.primary.text1,whiteSpace:"pre-wrap"},alertInfo:{display:"flex",alignItems:"center",flexWrap:"wrap",marginBottom:8,fontSize:14,textTransform:"capitalize","& span":{color:e.palette.primary.text6,marginRight:8},"& .error":{color:e.palette.error.main},"& .warning":{color:"#ffa500"}},resolvedInfo:{display:"flex",alignItems:"center",marginBottom:8,color:e.palette.primary.text6,fontSize:14},infoIcon:{color:e.palette.info.main,marginRight:8,fontSize:16},popover:{marginLeft:77,width:270,padding:12,display:"flex",flexDirection:"column",justifyContent:"space-between",backgroundColor:e.palette.background.b9,border:"1px solid ".concat(e.palette.primary.text9),boxShadow:"0px 3px 10px rgba(0, 0, 0, 0.4)",borderRadius:4,zIndex:500,"& .MuiTooltip-tooltip":{backgroundColor:e.palette.background.b10,fontWeight:400,lineHeight:"20px",margin:0}},message:{whiteSpace:"pre-wrap"},note:{marginBottom:4},ok:{color:"#F99500 !important"},good:{color:"".concat(e.palette.warning.light," !important")}}})),x=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"MMM D YYYY, hh:mm A";return e?h.default.unix(e).format(r):null},q=function(e){return h.default.unix(e).format("DD MMM HH:mm (Z)")},f=function(e){var r=e.children,t=j(),s=p.safeTemplate(r)({timestampFormatter:q}).split("**").map((function(e,r){return r%2==1?d.jsx("b",{children:e},r):e}));return d.jsx("span",{className:t.message,children:s})},b=e.memo((function(e){var r,t=e.alert,s=e.alertIcon,i=e.children,p=e.linkToDQPage,m=j(),h=u.useDQUnvalidatedContentStyles({}),q=Math.max(t.statusUpdatedAt,t.lastCheckedAt),b=x(q);return d.jsx(a.Tooltip,{interactive:!0,children:i,PopperProps:{className:m.popover},placement:"right",title:d.jsxs(d.Fragment,{children:[t.emptyMessage&&d.jsx("div",{className:m.emptyMessage,children:t.statusUpdatedAt?x(t.statusUpdatedAt):t.emptyMessage}),!t.emptyMessage&&d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:m.title,children:[t.name,d.jsx(a.Tooltip,{isFullScreen:!1,title:"Go to Data Quality page",children:d.jsx("div",{children:d.jsx(o.UniversalLink,{className:h.link,href:p,onClick:function(){var e,r;null===(e=(r=window)[Symbol.for("logToMixpanel")])||void 0===e||e.call(r,c.MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD,{referer:"DQ Badge"})},children:d.jsx(g.default,{className:h.linkIcon})})})})]}),d.jsxs("span",{className:m.alertInfo,children:[d.jsx("span",{children:"Category:"})," ",t.category]}),d.jsxs("span",{className:m.alertInfo,children:[d.jsx("span",{children:"Status:"})," ",t.status]}),d.jsxs("span",{className:m.alertInfo,children:[d.jsx("span",{children:"Error Type:"}),d.jsx("div",{className:m.errorIcon,children:s}),d.jsx("span",{className:t.state===l.ALERT_STATES.issue?l.BADGE_ICON_STATUSES.warning:l.BADGE_ICON_STATUSES.error,children:t.state})]}),d.jsxs("span",{className:m.alertInfo,children:[d.jsx("span",{children:"Score Deduction:"}),d.jsx("span",{className:n.getDeductsFromScoreClass(m,t.deductsFromScore,n.isResolved(t.status)),children:n.getDeductsFromScoreValue(t.deductsFromScore,n.isResolved(t.status))})]}),d.jsxs("div",{className:m.alertMessageFull,children:[t.isThrottled&&d.jsx("b",{children:"[Throttled]: "}),d.jsx(f,{children:t.message})]}),d.jsxs("span",{className:m.alertInfo,children:[d.jsx("span",{className:m.note,children:"Note:"})," ",null!==(r=t.note)&&void 0!==r&&r.length?t.note:"—"]}),d.jsxs("span",{className:m.alertTime,children:["Updated at: ",d.jsx("span",{children:b})]})]})]})})}),(function(e,r){return t.isEqual(e.alert,r.alert)}));exports.DQAlertsTooltip=b;
|
|
2
2
|
//# sourceMappingURL=DQAlertsTooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DQAlertsTooltip.js","sources":["../../../../../src/components/StatusBadge/components/DQAlertsTooltip.tsx"],"sourcesContent":["import { ReactElement, memo } from 'react';\nimport moment from 'moment';\nimport { template, isEqual } from 'lodash';\nimport { makeStyles } from '@material-ui/core';\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\nimport Tooltip from '~/components/Tooltip';\nimport {\n getDeductsFromScoreValue,\n isResolved,\n getDeductsFromScoreClass,\n} from '~/components/StatusBadge/utils';\nimport { Alert, ALERT_STATES, BADGE_ICON_STATUSES } from '~/components/StatusBadge/constants';\nimport { UniversalLink } from '~/components/DevCenter/DevCenterRouterContext/UniversalLink';\nimport { useDQUnvalidatedContentStyles } from '~/components/StatusBadge/styles';\nimport { MIXPANEL_ACTION_TYPES } from '~/constants/mixpanel';\n\nconst useStyles = makeStyles(theme => ({\n errorIcon: {\n width: 20,\n height: 18,\n },\n title: {\n maxWidth: 198,\n padding: '0 0 8px',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.text1,\n display: 'flex',\n alignItems: 'center',\n },\n emptyMessage: {\n padding: '0',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.contrastText,\n },\n alertTime: {\n fontSize: 14,\n color: theme.palette.primary.text6,\n\n '& span': {\n color: theme.palette.primary.text1,\n },\n },\n alertMessage: {\n width: '100%',\n height: 40,\n margin: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n '-webkit-line-clamp': 2,\n '-webkit-box-orient': 'vertical',\n whiteSpace: 'pre-wrap',\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n },\n alertMessageFull: {\n marginBottom: 8,\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n whiteSpace: 'pre-wrap',\n },\n alertInfo: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginBottom: 8,\n fontSize: 14,\n textTransform: 'capitalize',\n\n '& span': {\n color: theme.palette.primary.text6,\n marginRight: 8,\n },\n\n '& .error': {\n color: theme.palette.error.main,\n },\n '& .warning': {\n color: '#ffa500',\n },\n },\n resolvedInfo: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: 8,\n color: theme.palette.primary.text6,\n fontSize: 14,\n },\n infoIcon: {\n color: theme.palette.info.main,\n marginRight: 8,\n fontSize: 16,\n },\n popover: {\n marginLeft: 77,\n width: 270,\n padding: 12,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n backgroundColor: theme.palette.background.b9,\n border: `1px solid ${theme.palette.primary.text9}`,\n boxShadow: '0px 3px 10px rgba(0, 0, 0, 0.4)',\n borderRadius: 4,\n zIndex: 500,\n '& .MuiTooltip-tooltip': {\n backgroundColor: theme.palette.background.b10,\n fontWeight: 400,\n lineHeight: '20px',\n margin: 0,\n },\n },\n message: { whiteSpace: 'pre-wrap' },\n note: { marginBottom: 4 },\n ok: { color: '#F99500 !important' },\n good: { color: `${theme.palette.warning.light} !important` },\n}));\n\nconst formatDate = (date: number, format = 'MMM D YYYY, hh:mm A') => {\n if (!date) return null;\n\n return moment.unix(date).format(format);\n};\n\nconst timestampFormatter = (timestamp: number) => {\n return moment.unix(timestamp).format('DD MMM HH:mm (Z)');\n};\n\nconst FormattedMessage = ({ children }: { children: string }) => {\n const styles = useStyles();\n const compiled = template(children);\n const messageParts = compiled({\n timestampFormatter,\n })\n // Support of **Bold** syntax just for backward compatibility\n .split('**')\n .map((message, i) => (i % 2 === 1 ? <b key={i}>{message}</b> : message));\n return <span className={styles.message}>{messageParts}</span>;\n};\n\ntype DQCountryCheckTooltipProps = {\n alert: Alert;\n alertIcon: ReactElement;\n children: ReactElement<any, any>;\n linkToDQPage: string;\n};\n\nexport const DQAlertsTooltip = memo(\n ({ alert, alertIcon, children, linkToDQPage }: DQCountryCheckTooltipProps): JSX.Element => {\n const classes = useStyles();\n const DQUnvalidatedContentClasses = useDQUnvalidatedContentStyles({});\n const latestUpdateTime = Math.max(alert.statusUpdatedAt, alert.lastCheckedAt);\n const statusUpdatedAt = formatDate(latestUpdateTime);\n\n return (\n <Tooltip\n interactive\n children={children}\n PopperProps={{ className: classes.popover }}\n placement=\"right\"\n title={\n <>\n {alert.emptyMessage && (\n <div className={classes.emptyMessage}>\n {alert.statusUpdatedAt ? formatDate(alert.statusUpdatedAt) : alert.emptyMessage}\n </div>\n )}\n {!alert.emptyMessage && (\n <>\n <div className={classes.title}>\n {alert.name}\n <Tooltip isFullScreen={false} title=\"Go to Data Quality page\">\n <div>\n <UniversalLink\n className={DQUnvalidatedContentClasses.link}\n href={linkToDQPage}\n onClick={() => {\n (window as unknown as Record<symbol, Function>)[\n Symbol.for('logToMixpanel')\n ]?.(MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD, {\n referer: 'DQ Badge',\n });\n }}\n >\n <ArrowForwardIcon className={DQUnvalidatedContentClasses.linkIcon} />\n </UniversalLink>\n </div>\n </Tooltip>\n </div>\n <span className={classes.alertInfo}>\n <span>Category:</span> {alert.category}\n </span>\n <span className={classes.alertInfo}>\n <span>Status:</span> {alert.status}\n </span>\n <span className={classes.alertInfo}>\n <span>Error Type:</span>\n <div className={classes.errorIcon}>{alertIcon}</div>\n <span\n className={\n alert.state === ALERT_STATES.issue\n ? BADGE_ICON_STATUSES.warning\n : BADGE_ICON_STATUSES.error\n }\n >\n {alert.state}\n </span>\n </span>\n <span className={classes.alertInfo}>\n <span>Score Deduction:</span>\n <span\n className={getDeductsFromScoreClass(\n classes,\n alert.deductsFromScore,\n isResolved(alert.status)\n )}\n >\n {getDeductsFromScoreValue(alert.deductsFromScore, isResolved(alert.status))}\n </span>\n </span>\n <div className={classes.alertMessageFull}>\n {alert.isThrottled && <b>[Throttled]: </b>}\n <FormattedMessage>{alert.message}</FormattedMessage>\n </div>\n <span className={classes.alertInfo}>\n <span className={classes.note}>Note:</span>{' '}\n {alert.note?.length ? alert.note : '—'}\n </span>\n <span className={classes.alertTime}>\n Updated at: <span>{statusUpdatedAt}</span>\n </span>\n </>\n )}\n </>\n }\n />\n );\n },\n (prev, next) => isEqual(prev.alert, next.alert)\n);\n"],"names":["useStyles","makeStyles","theme","errorIcon","width","height","title","maxWidth","padding","fontSize","lineHeight","color","palette","primary","text1","display","alignItems","emptyMessage","contrastText","alertTime","text6","alertMessage","margin","overflow","textOverflow","whiteSpace","alertMessageFull","marginBottom","alertInfo","flexWrap","textTransform","marginRight","error","main","resolvedInfo","infoIcon","info","popover","marginLeft","flexDirection","justifyContent","backgroundColor","background","b9","border","concat","text9","boxShadow","borderRadius","zIndex","b10","fontWeight","message","note","ok","good","warning","light","formatDate","date","format","moment","unix","timestampFormatter","timestamp","FormattedMessage","_ref","children","styles","messageParts","template","compiled","split","map","i","_jsx","className","DQAlertsTooltip","memo","_ref2","_alert$note","alert","alertIcon","linkToDQPage","classes","DQUnvalidatedContentClasses","useDQUnvalidatedContentStyles","latestUpdateTime","Math","max","statusUpdatedAt","lastCheckedAt","Tooltip","interactive","PopperProps","placement","_jsxs","jsxs","_Fragment","name","isFullScreen","jsx","UniversalLink","link","href","onClick","_Symbol$for","_ref3","window","Symbol","for","MIXPANEL_ACTION_TYPES","REDIRECT","ASSET_DASHBOARD","referer","ArrowForwardIcon","linkIcon","category","status","state","ALERT_STATES","issue","BADGE_ICON_STATUSES","getDeductsFromScoreClass","deductsFromScore","isResolved","getDeductsFromScoreValue","isThrottled","length","prev","next","isEqual"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DQAlertsTooltip.js","sources":["../../../../../src/components/StatusBadge/components/DQAlertsTooltip.tsx"],"sourcesContent":["import { ReactElement, memo } from 'react';\nimport moment from 'moment';\nimport { isEqual } from 'lodash';\nimport { makeStyles } from '@material-ui/core';\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\nimport Tooltip from '~/components/Tooltip';\nimport {\n getDeductsFromScoreValue,\n isResolved,\n getDeductsFromScoreClass,\n} from '~/components/StatusBadge/utils';\nimport { Alert, ALERT_STATES, BADGE_ICON_STATUSES } from '~/components/StatusBadge/constants';\nimport { UniversalLink } from '~/components/DevCenter/DevCenterRouterContext/UniversalLink';\nimport { useDQUnvalidatedContentStyles } from '~/components/StatusBadge/styles';\nimport { MIXPANEL_ACTION_TYPES } from '~/constants/mixpanel';\nimport { safeTemplate } from '~/utils';\n\nconst useStyles = makeStyles(theme => ({\n errorIcon: {\n width: 20,\n height: 18,\n },\n title: {\n maxWidth: 198,\n padding: '0 0 8px',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.text1,\n display: 'flex',\n alignItems: 'center',\n },\n emptyMessage: {\n padding: '0',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.contrastText,\n },\n alertTime: {\n fontSize: 14,\n color: theme.palette.primary.text6,\n\n '& span': {\n color: theme.palette.primary.text1,\n },\n },\n alertMessage: {\n width: '100%',\n height: 40,\n margin: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n '-webkit-line-clamp': 2,\n '-webkit-box-orient': 'vertical',\n whiteSpace: 'pre-wrap',\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n },\n alertMessageFull: {\n marginBottom: 8,\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n whiteSpace: 'pre-wrap',\n },\n alertInfo: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginBottom: 8,\n fontSize: 14,\n textTransform: 'capitalize',\n\n '& span': {\n color: theme.palette.primary.text6,\n marginRight: 8,\n },\n\n '& .error': {\n color: theme.palette.error.main,\n },\n '& .warning': {\n color: '#ffa500',\n },\n },\n resolvedInfo: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: 8,\n color: theme.palette.primary.text6,\n fontSize: 14,\n },\n infoIcon: {\n color: theme.palette.info.main,\n marginRight: 8,\n fontSize: 16,\n },\n popover: {\n marginLeft: 77,\n width: 270,\n padding: 12,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n backgroundColor: theme.palette.background.b9,\n border: `1px solid ${theme.palette.primary.text9}`,\n boxShadow: '0px 3px 10px rgba(0, 0, 0, 0.4)',\n borderRadius: 4,\n zIndex: 500,\n '& .MuiTooltip-tooltip': {\n backgroundColor: theme.palette.background.b10,\n fontWeight: 400,\n lineHeight: '20px',\n margin: 0,\n },\n },\n message: { whiteSpace: 'pre-wrap' },\n note: { marginBottom: 4 },\n ok: { color: '#F99500 !important' },\n good: { color: `${theme.palette.warning.light} !important` },\n}));\n\nconst formatDate = (date: number, format = 'MMM D YYYY, hh:mm A') => {\n if (!date) return null;\n\n return moment.unix(date).format(format);\n};\n\nconst timestampFormatter = (timestamp: number) => {\n return moment.unix(timestamp).format('DD MMM HH:mm (Z)');\n};\n\nconst FormattedMessage = ({ children }: { children: string }) => {\n const styles = useStyles();\n const compiled = safeTemplate(children);\n const messageParts = compiled({\n timestampFormatter,\n })\n // Support of **Bold** syntax just for backward compatibility\n .split('**')\n .map((message, i) => (i % 2 === 1 ? <b key={i}>{message}</b> : message));\n return <span className={styles.message}>{messageParts}</span>;\n};\n\ntype DQCountryCheckTooltipProps = {\n alert: Alert;\n alertIcon: ReactElement;\n children: ReactElement<any, any>;\n linkToDQPage: string;\n};\n\nexport const DQAlertsTooltip = memo(\n ({ alert, alertIcon, children, linkToDQPage }: DQCountryCheckTooltipProps): JSX.Element => {\n const classes = useStyles();\n const DQUnvalidatedContentClasses = useDQUnvalidatedContentStyles({});\n const latestUpdateTime = Math.max(alert.statusUpdatedAt, alert.lastCheckedAt);\n const statusUpdatedAt = formatDate(latestUpdateTime);\n\n return (\n <Tooltip\n interactive\n children={children}\n PopperProps={{ className: classes.popover }}\n placement=\"right\"\n title={\n <>\n {alert.emptyMessage && (\n <div className={classes.emptyMessage}>\n {alert.statusUpdatedAt ? formatDate(alert.statusUpdatedAt) : alert.emptyMessage}\n </div>\n )}\n {!alert.emptyMessage && (\n <>\n <div className={classes.title}>\n {alert.name}\n <Tooltip isFullScreen={false} title=\"Go to Data Quality page\">\n <div>\n <UniversalLink\n className={DQUnvalidatedContentClasses.link}\n href={linkToDQPage}\n onClick={() => {\n (window as unknown as Record<symbol, Function>)[\n Symbol.for('logToMixpanel')\n ]?.(MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD, {\n referer: 'DQ Badge',\n });\n }}\n >\n <ArrowForwardIcon className={DQUnvalidatedContentClasses.linkIcon} />\n </UniversalLink>\n </div>\n </Tooltip>\n </div>\n <span className={classes.alertInfo}>\n <span>Category:</span> {alert.category}\n </span>\n <span className={classes.alertInfo}>\n <span>Status:</span> {alert.status}\n </span>\n <span className={classes.alertInfo}>\n <span>Error Type:</span>\n <div className={classes.errorIcon}>{alertIcon}</div>\n <span\n className={\n alert.state === ALERT_STATES.issue\n ? BADGE_ICON_STATUSES.warning\n : BADGE_ICON_STATUSES.error\n }\n >\n {alert.state}\n </span>\n </span>\n <span className={classes.alertInfo}>\n <span>Score Deduction:</span>\n <span\n className={getDeductsFromScoreClass(\n classes,\n alert.deductsFromScore,\n isResolved(alert.status)\n )}\n >\n {getDeductsFromScoreValue(alert.deductsFromScore, isResolved(alert.status))}\n </span>\n </span>\n <div className={classes.alertMessageFull}>\n {alert.isThrottled && <b>[Throttled]: </b>}\n <FormattedMessage>{alert.message}</FormattedMessage>\n </div>\n <span className={classes.alertInfo}>\n <span className={classes.note}>Note:</span>{' '}\n {alert.note?.length ? alert.note : '—'}\n </span>\n <span className={classes.alertTime}>\n Updated at: <span>{statusUpdatedAt}</span>\n </span>\n </>\n )}\n </>\n }\n />\n );\n },\n (prev, next) => isEqual(prev.alert, next.alert)\n);\n"],"names":["useStyles","makeStyles","theme","errorIcon","width","height","title","maxWidth","padding","fontSize","lineHeight","color","palette","primary","text1","display","alignItems","emptyMessage","contrastText","alertTime","text6","alertMessage","margin","overflow","textOverflow","whiteSpace","alertMessageFull","marginBottom","alertInfo","flexWrap","textTransform","marginRight","error","main","resolvedInfo","infoIcon","info","popover","marginLeft","flexDirection","justifyContent","backgroundColor","background","b9","border","concat","text9","boxShadow","borderRadius","zIndex","b10","fontWeight","message","note","ok","good","warning","light","formatDate","date","format","moment","unix","timestampFormatter","timestamp","FormattedMessage","_ref","children","styles","messageParts","safeTemplate","compiled","split","map","i","_jsx","className","DQAlertsTooltip","memo","_ref2","_alert$note","alert","alertIcon","linkToDQPage","classes","DQUnvalidatedContentClasses","useDQUnvalidatedContentStyles","latestUpdateTime","Math","max","statusUpdatedAt","lastCheckedAt","Tooltip","interactive","PopperProps","placement","_jsxs","jsxs","_Fragment","name","isFullScreen","jsx","UniversalLink","link","href","onClick","_Symbol$for","_ref3","window","Symbol","for","MIXPANEL_ACTION_TYPES","REDIRECT","ASSET_DASHBOARD","referer","ArrowForwardIcon","linkIcon","category","status","state","ALERT_STATES","issue","BADGE_ICON_STATUSES","getDeductsFromScoreClass","deductsFromScore","isResolved","getDeductsFromScoreValue","isThrottled","length","prev","next","isEqual"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var s=require("moment"),o=require("lodash"),e=require("../../Tooltip/Tooltip.js"),c=require("../../ButtonIcon/ButtonIcon.js"),i=require("../../AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),n=require("../../Text/Text.js"),r=require("../../../components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),t=require("../../../constants/mixpanel.js"),u=require("../../../icons/iconParkIcons.js");require("../../../icons/customIcons/icons/AddMessage.js"),require("../../../icons/customIcons/icons/DragOne.js"),require("../../../icons/customIcons/icons/Attention.js"),require("../../../icons/customIcons/icons/Collapse.js"),require("../../../icons/customIcons/icons/Dashboard.js"),require("../../../icons/customIcons/icons/Expand.js"),require("../../../icons/customIcons/icons/FolderClosed.js"),require("../../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../../icons/customIcons/icons/FolderOpened.js"),require("../../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../../icons/customIcons/icons/LessOrEqual.js"),require("../../../icons/customIcons/icons/Search.js"),require("../../../icons/customIcons/icons/SearchOne.js"),require("../../../icons/customIcons/icons/Wellhub.js"),require("../../../icons/customIcons/icons/MultiRuler.js"),require("../../../icons/customIcons/icons/Checkbox.js"),require("../../../icons/customIcons/icons/CheckboxChecked.js"),require("../../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../../icons/customIcons/icons/Radio.js"),require("../../../icons/customIcons/icons/RadioChecked.js"),require("../../../icons/customIcons/icons/SimulFrac.js"),require("../../../icons/customIcons/icons/ZipperFrac.js"),require("../../../icons/customIcons/icons/CautionFilled.js"),require("../../../icons/customIcons/icons/InfoRounded.js"),require("../../../icons/customIcons/icons/FlameFilled.js"),require("../../../icons/customIcons/icons/MoreApp.js"),require("../../../icons/customIcons/icons/Pad.js"),require("../../../icons/customIcons/icons/DrilloutUnit.js"),require("../../../icons/customIcons/icons/FracFleet.js"),require("../../../icons/customIcons/icons/Global.js"),require("../../../icons/customIcons/icons/Program.js"),require("../../../icons/customIcons/icons/Rig.js"),require("../../../icons/customIcons/icons/Well.js"),require("../../../icons/customIcons/icons/Gap.js"),require("../../../icons/customIcons/icons/Pin.js"),require("../../../icons/customIcons/icons/PinOne.js"),require("../../../icons/customIcons/icons/PinOneCrossed.js"),require("../../../icons/customIcons/icons/CloseOneFilled.js"),require("../../../icons/customIcons/icons/AttentionFilled.js"),require("../../../icons/customIcons/icons/CheckOneFilled.js"),require("../../../icons/customIcons/icons/Archive.js"),require("../../../icons/customIcons/icons/ArchiveCancel.js"),require("../../../icons/customIcons/icons/Unarchive.js"),require("../../../icons/customIcons/icons/Archived.js"),require("../../../icons/customIcons/icons/InterventionUnit.js"),require("../../../icons/customIcons/icons/CloudDelete.js"),require("../../../icons/customIcons/icons/Lasso.js"),require("../../../icons/customIcons/icons/Radius.js"),require("../../../icons/customIcons/icons/ErrorOps.js"),require("../../../icons/customIcons/icons/DataTypeOps.js"),require("../../../icons/customIcons/icons/FalsePositiveOps.js"),require("../../../icons/customIcons/icons/CalibrationOps.js"),require("../../../icons/customIcons/icons/CriticalOps.js"),require("../../../icons/customIcons/icons/Company.js"),require("../../../icons/customIcons/icons/ArchiveOne.js"),require("../../../icons/customIcons/icons/ParseBotFusion.js"),require("../../../icons/customIcons/icons/Connect.js"),require("../../../icons/customIcons/icons/PuzzleOne.js"),require("../../../icons/customIcons/icons/Feed.js"),require("../../../icons/customIcons/icons/Prompt.js"),require("../../../icons/customIcons/icons/Companies.js"),require("../../../icons/customIcons/icons/ClipboardAi.js"),require("../../../icons/customIcons/icons/Key.js"),require("../../../icons/customIcons/icons/AtSignCrossed.js"),require("../../../icons/customIcons/icons/MappingManual.js"),require("../../../icons/customIcons/icons/Mapping.js"),require("../../../icons/customIcons/icons/Metrics.js"),require("../../../icons/customIcons/icons/Drops.js"),require("../../../icons/customIcons/icons/ClipboardSearch.js"),require("../../../icons/customIcons/icons/Template.js"),require("../../../icons/customIcons/icons/ClipboardMetrics.js"),require("../../../icons/customIcons/icons/ClipboardBuilder.js"),require("../../../icons/customIcons/icons/UnitConversion.js"),require("../../../icons/customIcons/icons/NPT.js"),require("../../../icons/customIcons/icons/GuidedFrac.js");var l=require("./DqAlertTooltip.scss.js"),a=require("react/jsx-runtime");function d(s){return s&&"object"==typeof s&&"default"in s?s:{default:s}}var m=d(s),j=function(s){return s&&m.default.unix(s).format("MMM D YYYY, hh:mm A")},q=function(s){return m.default.unix(s).format("DD MMM HH:mm (Z)")},I=function(s){var e=s.message,c=o.template(e)({timestampFormatter:q}).split("**").map((function(s,o){return o%2==1?a.jsx("b",{children:s},o):s}));return a.jsx("span",{className:l.message,children:c})},v=function(s){var o=s.children,e=s.label,c=s.className;return a.jsxs("div",{className:l.item,children:[e&&a.jsx(n.Text,{size:14,color:"T6",children:e}),o&&a.jsx(n.Text,{size:14,color:"T1",className:c,children:o})]})};exports.DqAlertTooltip=function(s){var o,d,m,q,p,h,x,C,T,g,F,A,D,b,M,f,O,S,y,N,P,k,E,R=s.children,U=s.item,B=Math.max(null===(o=U.alert)||void 0===o?void 0:o.statusUpdatedAt,null===(d=U.alert)||void 0===d?void 0:d.lastCheckedAt),z=j(B),G=a.jsx("div",{className:l.content,children:null!==(m=U.alert)&&void 0!==m&&m.emptyMessage?a.jsx(n.Text,{size:16,children:null!==(q=U.alert)&&void 0!==q&&q.statusUpdatedAt?j(null===(p=U.alert)||void 0===p?void 0:p.statusUpdatedAt):null===(h=U.alert)||void 0===h?void 0:h.emptyMessage}):a.jsxs(a.Fragment,{children:[a.jsxs(n.Text,{size:16,className:l.title,children:[null===(x=U.alert)||void 0===x?void 0:x.name,a.jsx(e.Tooltip,{title:"Go to Data Quality page",children:a.jsx(r.UniversalLink,{href:U.linkToDQPage,onClick:function(){var s,o;null===(s=(o=window)[Symbol.for("logToMixpanel")])||void 0===s||s.call(o,t.MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD,{referer:"DQ Badge"})},children:a.jsx(c.ButtonIcon,{size:"medium",type:"secondary",children:a.jsx(u.ArrowRightIcon,{})})})})]}),a.jsxs("div",{className:l.items,children:[a.jsx(v,{label:"Category:",children:null===(C=U.alert)||void 0===C?void 0:C.category}),a.jsx(v,{label:"Status:",className:l.status,children:null===(T=U.alert)||void 0===T?void 0:T.status}),a.jsxs(v,{label:"Error Type:",className:"Issue"===(null===(g=U.alert)||void 0===g?void 0:g.state)?l.typeWarning:l.typeError,children:[a.jsx(i.DqStatusIcon,{statusBadgeIconType:"Issue"===(null===(F=U.alert)||void 0===F?void 0:F.state)?"issue":"error",className:l.typeIcon}),null===(A=U.alert)||void 0===A?void 0:A.state]}),a.jsx(v,{label:"Score Deduction:",className:(k=null===(D=U.alert)||void 0===D?void 0:D.deductsFromScore,E="resolved"===(null===(b=U.alert)||void 0===b?void 0:b.status),E||!k?"":k>40?l.deductError:k>10?l.deductWarning:k>5?l.deductOk:l.deductGood),children:"resolved"!==(null===(M=U.alert)||void 0===M?void 0:M.status)&&null!==(f=U.alert)&&void 0!==f&&f.deductsFromScore&&(null===(O=U.alert)||void 0===O?void 0:O.deductsFromScore)>=0?"".concat(null===(S=U.alert)||void 0===S?void 0:S.deductsFromScore,"%"):"—"}),a.jsxs(v,{className:l.alertMessage,children:[(null===(y=U.alert)||void 0===y?void 0:y.isThrottled)&&a.jsx("b",{children:"[Throttled]: "}),a.jsx(I,{message:null===(N=U.alert)||void 0===N?void 0:N.message})]}),a.jsx(v,{label:"Note:",children:(null===(P=U.alert)||void 0===P?void 0:P.note)||"—"}),a.jsx(v,{label:"Updated at:",children:z})]})]})});return a.jsx(e.Tooltip,{title:G,placement:"right",interactive:!0,className:l.root,children:R})};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var s=require("moment"),e=require("../../Tooltip/Tooltip.js"),o=require("../../ButtonIcon/ButtonIcon.js"),i=require("../../AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),r=require("../../Text/Text.js"),n=require("../../../components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),c=require("../../../constants/mixpanel.js"),t=require("../../../icons/iconParkIcons.js");require("../../../icons/customIcons/icons/AddMessage.js"),require("../../../icons/customIcons/icons/DragOne.js"),require("../../../icons/customIcons/icons/Attention.js"),require("../../../icons/customIcons/icons/Collapse.js"),require("../../../icons/customIcons/icons/Dashboard.js"),require("../../../icons/customIcons/icons/Expand.js"),require("../../../icons/customIcons/icons/FolderClosed.js"),require("../../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../../icons/customIcons/icons/FolderOpened.js"),require("../../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../../icons/customIcons/icons/LessOrEqual.js"),require("../../../icons/customIcons/icons/Search.js"),require("../../../icons/customIcons/icons/SearchOne.js"),require("../../../icons/customIcons/icons/Wellhub.js"),require("../../../icons/customIcons/icons/MultiRuler.js"),require("../../../icons/customIcons/icons/Checkbox.js"),require("../../../icons/customIcons/icons/CheckboxChecked.js"),require("../../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../../icons/customIcons/icons/Radio.js"),require("../../../icons/customIcons/icons/RadioChecked.js"),require("../../../icons/customIcons/icons/SimulFrac.js"),require("../../../icons/customIcons/icons/ZipperFrac.js"),require("../../../icons/customIcons/icons/CautionFilled.js"),require("../../../icons/customIcons/icons/InfoRounded.js"),require("../../../icons/customIcons/icons/FlameFilled.js"),require("../../../icons/customIcons/icons/MoreApp.js"),require("../../../icons/customIcons/icons/Pad.js"),require("../../../icons/customIcons/icons/DrilloutUnit.js"),require("../../../icons/customIcons/icons/FracFleet.js"),require("../../../icons/customIcons/icons/Global.js"),require("../../../icons/customIcons/icons/Program.js"),require("../../../icons/customIcons/icons/Rig.js"),require("../../../icons/customIcons/icons/Well.js"),require("../../../icons/customIcons/icons/Gap.js"),require("../../../icons/customIcons/icons/Pin.js"),require("../../../icons/customIcons/icons/PinOne.js"),require("../../../icons/customIcons/icons/PinOneCrossed.js"),require("../../../icons/customIcons/icons/CloseOneFilled.js"),require("../../../icons/customIcons/icons/AttentionFilled.js"),require("../../../icons/customIcons/icons/CheckOneFilled.js"),require("../../../icons/customIcons/icons/Archive.js"),require("../../../icons/customIcons/icons/ArchiveCancel.js"),require("../../../icons/customIcons/icons/Unarchive.js"),require("../../../icons/customIcons/icons/Archived.js"),require("../../../icons/customIcons/icons/InterventionUnit.js"),require("../../../icons/customIcons/icons/CloudDelete.js"),require("../../../icons/customIcons/icons/Lasso.js"),require("../../../icons/customIcons/icons/Radius.js"),require("../../../icons/customIcons/icons/ErrorOps.js"),require("../../../icons/customIcons/icons/DataTypeOps.js"),require("../../../icons/customIcons/icons/FalsePositiveOps.js"),require("../../../icons/customIcons/icons/CalibrationOps.js"),require("../../../icons/customIcons/icons/CriticalOps.js"),require("../../../icons/customIcons/icons/Company.js"),require("../../../icons/customIcons/icons/ArchiveOne.js"),require("../../../icons/customIcons/icons/ParseBotFusion.js"),require("../../../icons/customIcons/icons/Connect.js"),require("../../../icons/customIcons/icons/PuzzleOne.js"),require("../../../icons/customIcons/icons/Feed.js"),require("../../../icons/customIcons/icons/Prompt.js"),require("../../../icons/customIcons/icons/Companies.js"),require("../../../icons/customIcons/icons/ClipboardAi.js"),require("../../../icons/customIcons/icons/Key.js"),require("../../../icons/customIcons/icons/AtSignCrossed.js"),require("../../../icons/customIcons/icons/MappingManual.js"),require("../../../icons/customIcons/icons/Mapping.js"),require("../../../icons/customIcons/icons/Metrics.js"),require("../../../icons/customIcons/icons/Drops.js"),require("../../../icons/customIcons/icons/ClipboardSearch.js"),require("../../../icons/customIcons/icons/Template.js"),require("../../../icons/customIcons/icons/ClipboardMetrics.js"),require("../../../icons/customIcons/icons/ClipboardBuilder.js"),require("../../../icons/customIcons/icons/UnitConversion.js"),require("../../../icons/customIcons/icons/NPT.js"),require("../../../icons/customIcons/icons/GuidedFrac.js"),require("../../../components/UserMention/utils/index.js"),require("@babel/runtime/helpers/defineProperty"),require("../../../utils/convert.js"),require("../../../constants/completion.js"),require("../../../constants/alerts.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../../utils/casing/validation.js"),require("@babel/runtime/helpers/slicedToArray"),require("lodash/mean"),require("lodash"),require("../../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../../constants/goals.js"),require("../../../constants/segment.js"),require("../../../constants/apps.js"),require("../../../constants/drillstring.js"),require("../../../constants/appPackages.js"),require("../../../constants/notifications.js"),require("../../../constants/feed.js"),require("../../../constants/bha.js"),require("../../../constants/corvaCompanyId.js"),require("../../../components/GradientManager/configuration/constants.js"),require("../../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../../utils/ga.js"),require("../../../utils/goalsConfig/goalsConfig.js"),require("../../../utils/lasParser.js"),require("../../../utils/main.js"),require("../../../utils/metrics/metricsConfig.js"),require("../../../utils/mobileDetect.js"),require("../../../utils/feed.js"),require("../../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../../utils/dashboardReports.js"),require("../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../utils/jsonaDataFormatter.js"),require("../../../utils/bha.js"),require("jsona"),require("../../../clients/jsonApi/index.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../utils/charts/Styles.scss.js"),require("../../../utils/getSingleAsset.js");var u=require("../../../utils/safeTemplate.js"),l=require("./DqAlertTooltip.scss.js"),a=require("react/jsx-runtime");function d(s){return s&&"object"==typeof s&&"default"in s?s:{default:s}}var m=d(s),q=function(s){return s&&m.default.unix(s).format("MMM D YYYY, hh:mm A")},j=function(s){return m.default.unix(s).format("DD MMM HH:mm (Z)")},I=function(s){var e=s.message,o=u.safeTemplate(e)({timestampFormatter:j}).split("**").map((function(s,e){return e%2==1?a.jsx("b",{children:s},e):s}));return a.jsx("span",{className:l.message,children:o})},p=function(s){var e=s.children,o=s.label,i=s.className;return a.jsxs("div",{className:l.item,children:[o&&a.jsx(r.Text,{size:14,color:"T6",children:o}),e&&a.jsx(r.Text,{size:14,color:"T1",className:i,children:e})]})};exports.DqAlertTooltip=function(s){var u,d,m,j,v,h,x,g,b,C,f,T,A,y,D,F,M,S,O,P,N,k,E,R=s.children,U=s.item,z=Math.max(null===(u=U.alert)||void 0===u?void 0:u.statusUpdatedAt,null===(d=U.alert)||void 0===d?void 0:d.lastCheckedAt),B=q(z),G=a.jsx("div",{className:l.content,children:null!==(m=U.alert)&&void 0!==m&&m.emptyMessage?a.jsx(r.Text,{size:16,children:null!==(j=U.alert)&&void 0!==j&&j.statusUpdatedAt?q(null===(v=U.alert)||void 0===v?void 0:v.statusUpdatedAt):null===(h=U.alert)||void 0===h?void 0:h.emptyMessage}):a.jsxs(a.Fragment,{children:[a.jsxs(r.Text,{size:16,className:l.title,children:[null===(x=U.alert)||void 0===x?void 0:x.name,a.jsx(e.Tooltip,{title:"Go to Data Quality page",children:a.jsx(n.UniversalLink,{href:U.linkToDQPage,onClick:function(){var s,e;null===(s=(e=window)[Symbol.for("logToMixpanel")])||void 0===s||s.call(e,c.MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD,{referer:"DQ Badge"})},children:a.jsx(o.ButtonIcon,{size:"medium",type:"secondary",children:a.jsx(t.ArrowRightIcon,{})})})})]}),a.jsxs("div",{className:l.items,children:[a.jsx(p,{label:"Category:",children:null===(g=U.alert)||void 0===g?void 0:g.category}),a.jsx(p,{label:"Status:",className:l.status,children:null===(b=U.alert)||void 0===b?void 0:b.status}),a.jsxs(p,{label:"Error Type:",className:"Issue"===(null===(C=U.alert)||void 0===C?void 0:C.state)?l.typeWarning:l.typeError,children:[a.jsx(i.DqStatusIcon,{statusBadgeIconType:"Issue"===(null===(f=U.alert)||void 0===f?void 0:f.state)?"issue":"error",className:l.typeIcon}),null===(T=U.alert)||void 0===T?void 0:T.state]}),a.jsx(p,{label:"Score Deduction:",className:(k=null===(A=U.alert)||void 0===A?void 0:A.deductsFromScore,E="resolved"===(null===(y=U.alert)||void 0===y?void 0:y.status),E||!k?"":k>40?l.deductError:k>10?l.deductWarning:k>5?l.deductOk:l.deductGood),children:"resolved"!==(null===(D=U.alert)||void 0===D?void 0:D.status)&&null!==(F=U.alert)&&void 0!==F&&F.deductsFromScore&&(null===(M=U.alert)||void 0===M?void 0:M.deductsFromScore)>=0?"".concat(null===(S=U.alert)||void 0===S?void 0:S.deductsFromScore,"%"):"—"}),a.jsxs(p,{className:l.alertMessage,children:[(null===(O=U.alert)||void 0===O?void 0:O.isThrottled)&&a.jsx("b",{children:"[Throttled]: "}),a.jsx(I,{message:null===(P=U.alert)||void 0===P?void 0:P.message})]}),a.jsx(p,{label:"Note:",children:(null===(N=U.alert)||void 0===N?void 0:N.note)||"—"}),a.jsx(p,{label:"Updated at:",children:B})]})]})});return a.jsx(e.Tooltip,{title:G,placement:"right",interactive:!0,className:l.root,children:R})};
|
|
2
2
|
//# sourceMappingURL=DqAlertTooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DqAlertTooltip.js","sources":["../../../../../src/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.tsx"],"sourcesContent":["import { ReactElement, ReactNode } from 'react';\nimport moment from 'moment';\
|
|
1
|
+
{"version":3,"file":"DqAlertTooltip.js","sources":["../../../../../src/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.tsx"],"sourcesContent":["import { ReactElement, ReactNode } from 'react';\nimport moment from 'moment';\n\nimport { Tooltip } from '../../Tooltip';\nimport { AssetItem } from '../../AppFooter/DqPopover/types';\nimport { ButtonIcon } from '../../ButtonIcon';\nimport { DqStatusIcon } from '../../AppFooter/DqPopover/DqStatusIcon';\nimport { Text } from '../../Text';\nimport { UniversalLink } from '../../../components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink';\nimport { MIXPANEL_ACTION_TYPES } from '../../../constants/mixpanel';\nimport { ArrowRightIcon } from '../../../icons';\nimport { safeTemplate } from '../../../utils';\n\nimport styles from './DqAlertTooltip.scss';\n\nconst formatDate = (date: number) => date && moment.unix(date).format('MMM D YYYY, hh:mm A');\n\nconst timestampFormatter = (timestamp: number) => {\n return moment.unix(timestamp).format('DD MMM HH:mm (Z)');\n};\n\nconst FormattedMessage = ({ message }: { message: string }) => {\n const compiled = safeTemplate(message);\n const messageParts = compiled({\n timestampFormatter,\n })\n // Support of **Bold** syntax for backward compatibility\n .split('**')\n .map((message, i) => (i % 2 === 1 ? <b key={i}>{message}</b> : message));\n return <span className={styles.message}>{messageParts}</span>;\n};\n\nconst getDeductsFromScoreClass = (score: number | undefined, isResolved: boolean) => {\n if (isResolved || !score) return '';\n\n if (score > 40) {\n return styles.deductError;\n } else if (score > 10) {\n return styles.deductWarning;\n } else if (score > 5) {\n return styles.deductOk;\n }\n\n return styles.deductGood;\n};\n\nconst Item = ({\n children,\n label,\n className,\n}: {\n label?: ReactNode;\n children?: ReactNode;\n className?: string;\n}) => (\n <div className={styles.item}>\n {label && (\n <Text size={14} color=\"T6\">\n {label}\n </Text>\n )}\n {children && (\n <Text size={14} color=\"T1\" className={className}>\n {children}\n </Text>\n )}\n </div>\n);\n\nexport type DqAlertTooltipProps = {\n children: ReactElement;\n item: AssetItem;\n};\n\nexport const DqAlertTooltip = ({ children, item }: DqAlertTooltipProps) => {\n const latestUpdateTime = Math.max(item.alert?.statusUpdatedAt, item.alert?.lastCheckedAt);\n const statusUpdatedAt = formatDate(latestUpdateTime);\n\n const title = (\n <div className={styles.content}>\n {item.alert?.emptyMessage ? (\n <Text size={16}>\n {item.alert?.statusUpdatedAt\n ? formatDate(item.alert?.statusUpdatedAt)\n : item.alert?.emptyMessage}\n </Text>\n ) : (\n <>\n <Text size={16} className={styles.title}>\n {item.alert?.name}\n <Tooltip title=\"Go to Data Quality page\">\n <UniversalLink\n href={item.linkToDQPage}\n onClick={() => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (window as any)[Symbol.for('logToMixpanel')]?.(\n MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD,\n { referer: 'DQ Badge' }\n );\n }}\n >\n <ButtonIcon size=\"medium\" type=\"secondary\">\n <ArrowRightIcon />\n </ButtonIcon>\n </UniversalLink>\n </Tooltip>\n </Text>\n\n <div className={styles.items}>\n <Item label=\"Category:\">{item.alert?.category}</Item>\n <Item label=\"Status:\" className={styles.status}>\n {item.alert?.status}\n </Item>\n <Item\n label=\"Error Type:\"\n className={item.alert?.state === 'Issue' ? styles.typeWarning : styles.typeError}\n >\n <DqStatusIcon\n statusBadgeIconType={item.alert?.state === 'Issue' ? 'issue' : 'error'}\n className={styles.typeIcon}\n />\n {item.alert?.state}\n </Item>\n <Item\n label=\"Score Deduction:\"\n className={getDeductsFromScoreClass(\n item.alert?.deductsFromScore,\n item.alert?.status === 'resolved'\n )}\n >\n {item.alert?.status !== 'resolved' &&\n item.alert?.deductsFromScore &&\n item.alert?.deductsFromScore >= 0\n ? `${item.alert?.deductsFromScore}%`\n : '—'}\n </Item>\n <Item className={styles.alertMessage}>\n {item.alert?.isThrottled && <b>[Throttled]: </b>}\n <FormattedMessage message={item.alert?.message} />\n </Item>\n <Item label=\"Note:\">{item.alert?.note || '—'}</Item>\n <Item label=\"Updated at:\">{statusUpdatedAt}</Item>\n </div>\n </>\n )}\n </div>\n );\n\n return (\n <Tooltip title={title} placement=\"right\" interactive className={styles.root}>\n {children}\n </Tooltip>\n );\n};\n"],"names":["formatDate","date","moment","unix","format","timestampFormatter","timestamp","FormattedMessage","_ref","message","messageParts","safeTemplate","compiled","split","map","i","_jsx","children","className","styles","Item","_ref2","label","_jsxs","item","jsx","Text","size","color","_ref3","_item$alert","_item$alert2","_item$alert3","_item$alert4","_item$alert5","_item$alert6","_item$alert7","_item$alert8","_item$alert9","_item$alert10","_item$alert11","_item$alert12","_item$alert13","_item$alert14","_item$alert15","_item$alert16","_item$alert17","_item$alert18","_item$alert19","_item$alert20","_item$alert21","score","isResolved","latestUpdateTime","Math","max","alert","statusUpdatedAt","lastCheckedAt","title","content","emptyMessage","jsxs","_Fragment","name","Tooltip","UniversalLink","href","linkToDQPage","onClick","_Symbol$for","_ref4","window","Symbol","for","MIXPANEL_ACTION_TYPES","REDIRECT","ASSET_DASHBOARD","referer","ButtonIcon","type","ArrowRightIcon","items","category","status","state","typeWarning","typeError","DqStatusIcon","statusBadgeIconType","typeIcon","deductsFromScore","deductError","deductWarning","deductOk","deductGood","concat","alertMessage","isThrottled","note","placement","interactive","root"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../components/UserMention/utils/index.js"),t=require("./StageDesignVActualUtils.js"),r=require("./alerts.js"),s=require("./audio.js"),o=require("./casing/index.js"),i=require("./chartSeries.js"),a=require("./completion.js"),n=require("./components.js"),p=require("./convert.js"),l=require("./csvExport.js"),x=require("./devcenter.js"),u=require("./drillstring/index.js"),g=require("./DrillstringUtils.js"),c=require("./FluidCheckUtils.js"),d=require("./formatting.js"),j=require("./ga.js"),q=require("./goals.js"),U=require("./goalsConfig/index.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../components/UserMention/utils/index.js"),t=require("./StageDesignVActualUtils.js"),r=require("./alerts.js"),s=require("./audio.js"),o=require("./casing/index.js"),i=require("./chartSeries.js"),a=require("./completion.js"),n=require("./components.js"),p=require("./convert.js"),l=require("./csvExport.js"),x=require("./devcenter.js"),u=require("./drillstring/index.js"),g=require("./DrillstringUtils.js"),c=require("./FluidCheckUtils.js"),d=require("./formatting.js"),j=require("./ga.js"),q=require("./goals.js"),U=require("./goalsConfig/index.js"),m=require("./lasParser.js"),y=require("./main.js"),f=require("./mapUnits.js"),h=require("./mapbox.js"),v=require("./metrics/index.js"),S=require("./mobileDetect.js"),A=require("./nativeMessages.js"),I=require("./notifications.js"),b=require("./feed.js"),D=require("./permissions.js"),T=require("./reports.js"),B=require("./time.js"),C=require("./torqueAndHookloadUtils.js"),F=require("./accuracy.js"),N=require("./notificationToasts.js"),w=require("./devcenterToasts.js"),M=require("./convertKeys.js"),P=require("./dashboardReports.js"),k=require("./apps.js"),H=require("./themeVariables.js"),W=require("./env.js"),K=require("./fileExtension.js"),V=require("./jsonaDataFormatter.js"),E=require("./bha.js"),L=require("./localStorage.js"),R=require("./sharedDCStore.js"),z=require("./resolveWellHubSlug.js"),O=require("./delayedHighcharts.js"),X=require("./formatFileSize.js"),Y=require("./charts/index.js"),_=require("./delay.js"),G=require("./downloadBlob.js"),J=require("./getSingleAsset.js"),Q=require("./safeTemplate.js"),Z=require("./charts/getXAxis.js"),$=require("./charts/getYAxis.js"),ee=p.convertArray,te=p.convertValue,re=p.getAllUnitTypes,se=p.getDefaultImperialUnit,oe=p.getDefaultUnits,ie=p.getUnitDescription,ae=p.getUnitDisplay,ne=p.getUnitPlural,pe=p.getUnitPreference,le=p.getUnitsByType,xe=p.getUnitSingular,ue=p.getUnitSystem,ge=p.updateUserUnits,ce=p.getUserUnits,de=p.subscribeForUserUnitsUpdates,je=p.getUniqueUnitsByType,qe=Z.getXAxis,Ue=$.getYAxis;exports.formatMentionText=e.formatMentionText,exports.isSuggestionsListOpened=e.isSuggestionsListOpened,exports.stripMentionMarkup=e.stripMentionMarkup,exports.StageDesignVActualUtils=t,exports.alerts=r,exports.audio=s,exports.casing=o,exports.chartSeries=i,exports.completion=a,exports.components=n,exports.convert=p,exports.csvExport=l,exports.devcenter=x,exports.drillstring=u,exports.drillstringUtils=g,exports.fluidCheckUtils=c,exports.formatting=d,exports.ga=j,exports.goals=q,exports.goalsConfig=U,exports.lasParser=m,exports.main=y,exports.mapUnits=f,exports.mapbox=h,exports.metricsUtils=v,exports.mobileDetect=S,exports.nativeMessages=A,exports.notifications=I,exports.feed=b,exports.permissions=D,exports.reports=T,exports.time=B,exports.torqueAndHookloadUtils=C,exports.accuracy=F,exports.createNotification=N.createNotification,exports.removeNotification=N.removeNotification,exports.showErrorNotification=N.showErrorNotification,exports.showInfoNotification=N.showInfoNotification,exports.showNeutralNotification=N.showNeutralNotification,exports.showSuccessNotification=N.showSuccessNotification,exports.showWarningNotification=N.showWarningNotification,exports.showToast=w.showToast,exports.convertKeysToCamelCase=M.convertKeysToCamelCase,exports.convertKeysToSnakeCase=M.convertKeysToSnakeCase,exports.getConvertKeys=M.getConvertKeys,exports.dashboardReports=P,exports.apps=k,exports.themeVariables=H,exports.env=W,exports.fileExtension=K,exports.jsonaDataFormatter=V.jsonaDataFormatter,exports.bha=E,exports.getLocalStorageItem=L.getLocalStorageItem,exports.updateLocalStorageItem=L.updateLocalStorageItem,exports.sharedDCStore=R.sharedDCStore,exports.resolveWellHubSlug=z,exports.enableHighchartsDelayedTooltip=O.enableHighchartsDelayedTooltip,exports.formatFileSize=X.formatFileSize,exports.chart=Y,exports.delay=_.delay,exports.downloadBlob=G.downloadBlob,exports.getAssetByFracFleetId=J.getAssetByFracFleetId,exports.getAssetByInterventionUnitId=J.getAssetByInterventionUnitId,exports.getAssetByPadId=J.getAssetByPadId,exports.getAssetByRigId=J.getAssetByRigId,exports.getAssetByWellIdForInterventionUnit=J.getAssetByWellIdForInterventionUnit,exports.getAssetByWellIdForRig=J.getAssetByWellIdForRig,exports.safeTemplate=Q.safeTemplate,exports.convertArray=ee,exports.convertValue=te,exports.getAllUnitTypes=re,exports.getChartHorizontalAxis=qe,exports.getChartVerticalAxis=Ue,exports.getDefaultImperialUnit=se,exports.getDefaultUnits=oe,exports.getUniqueUnitsByType=je,exports.getUnitDescription=ie,exports.getUnitDisplay=ae,exports.getUnitPlural=ne,exports.getUnitPreference=pe,exports.getUnitSingular=xe,exports.getUnitSystem=ue,exports.getUnitsByType=le,exports.getUserUnits=ce,exports.subscribeForUserUnitsUpdates=de,exports.updateUserUnits=ge;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/utils/index.ts"],"sourcesContent":["import {\n formatMentionText,\n isSuggestionsListOpened,\n stripMentionMarkup,\n} from '../components/UserMention/utils';\n\nimport * as StageDesignVActualUtils from './StageDesignVActualUtils';\nimport * as alerts from './alerts';\nimport * as audio from './audio';\nimport * as casing from './casing';\nimport * as chartSeries from './chartSeries';\nimport * as completion from './completion';\nimport * as components from './components';\nimport * as convert from './convert';\nimport * as csvExport from './csvExport';\nimport * as devcenter from './devcenter';\nimport * as drillstring from './drillstring';\nimport * as drillstringUtils from './DrillstringUtils';\nimport * as fluidCheckUtils from './FluidCheckUtils';\nimport * as formatting from './formatting';\nimport * as ga from './ga';\nimport * as goals from './goals';\nimport * as goalsConfig from './goalsConfig';\nimport * as lasParser from './lasParser';\nimport * as main from './main';\nimport * as mapUnits from './mapUnits';\nimport * as mapbox from './mapbox';\nimport * as metricsUtils from './metrics';\nimport * as mobileDetect from './mobileDetect';\nimport * as nativeMessages from './nativeMessages';\nimport * as notifications from './notifications';\nimport * as feed from './feed';\nimport * as permissions from './permissions';\nimport * as reports from './reports';\nimport * as time from './time';\nimport * as torqueAndHookloadUtils from './torqueAndHookloadUtils';\nimport * as accuracy from './accuracy';\nimport {\n createNotification,\n removeNotification,\n showErrorNotification,\n showInfoNotification,\n showNeutralNotification,\n showSuccessNotification,\n showWarningNotification,\n} from './notificationToasts';\nimport { showToast } from './devcenterToasts';\nimport { convertKeysToCamelCase, convertKeysToSnakeCase, getConvertKeys } from './convertKeys';\nimport * as dashboardReports from './dashboardReports';\nimport * as apps from './apps';\nimport * as themeVariables from './themeVariables';\nimport * as env from './env';\nimport * as fileExtension from './fileExtension';\nimport { jsonaDataFormatter } from './jsonaDataFormatter';\nimport * as bha from './bha';\nimport { getLocalStorageItem, updateLocalStorageItem } from './localStorage';\nimport { sharedDCStore } from './sharedDCStore';\nimport resolveWellHubSlug from './resolveWellHubSlug';\nimport { enableHighchartsDelayedTooltip } from './delayedHighcharts';\nimport { formatFileSize } from './formatFileSize';\nimport { getXAxis, getYAxis } from './charts';\n\nconst {\n convertArray,\n convertValue,\n getAllUnitTypes,\n getDefaultImperialUnit,\n getDefaultUnits,\n getUnitDescription,\n getUnitDisplay,\n getUnitPlural,\n getUnitPreference,\n getUnitsByType,\n getUnitSingular,\n getUnitSystem,\n updateUserUnits,\n getUserUnits,\n subscribeForUserUnitsUpdates,\n getUniqueUnitsByType,\n} = convert;\n\nexport {\n StageDesignVActualUtils,\n accuracy,\n alerts,\n apps,\n audio,\n bha,\n casing,\n chartSeries,\n enableHighchartsDelayedTooltip,\n completion,\n components,\n convert,\n convertArray,\n convertKeysToCamelCase,\n convertKeysToSnakeCase,\n convertValue,\n createNotification,\n csvExport,\n dashboardReports,\n devcenter,\n drillstring,\n drillstringUtils,\n env,\n feed,\n fileExtension,\n fluidCheckUtils,\n formatting,\n ga,\n formatMentionText,\n getAllUnitTypes,\n getConvertKeys,\n getDefaultImperialUnit,\n getDefaultUnits,\n getLocalStorageItem,\n getUniqueUnitsByType,\n getUnitDescription,\n getUnitDisplay,\n getUnitPlural,\n getUnitPreference,\n getUnitSingular,\n getUnitSystem,\n getUnitsByType,\n getUserUnits,\n goals,\n goalsConfig,\n jsonaDataFormatter,\n lasParser,\n main,\n mapUnits,\n mapbox,\n metricsUtils,\n mobileDetect,\n nativeMessages,\n notifications,\n permissions,\n removeNotification,\n reports,\n resolveWellHubSlug,\n sharedDCStore,\n showErrorNotification,\n showInfoNotification,\n showNeutralNotification,\n showSuccessNotification,\n showToast,\n showWarningNotification,\n subscribeForUserUnitsUpdates,\n themeVariables,\n time,\n torqueAndHookloadUtils,\n updateLocalStorageItem,\n updateUserUnits,\n isSuggestionsListOpened,\n stripMentionMarkup,\n formatFileSize,\n};\n\nexport * from './delay';\nexport * from './downloadBlob';\nexport * from './getSingleAsset';\n\nexport * as chart from './charts';\n// Deprecated, reexported for backwards compatibility\n/**\n * @deprecated\n */\nexport const getChartHorizontalAxis = getXAxis;\n\n/**\n * @deprecated\n */\nexport const getChartVerticalAxis = getYAxis;\n"],"names":["convertArray","convert","convertValue","getAllUnitTypes","getDefaultImperialUnit","getDefaultUnits","getUnitDescription","getUnitDisplay","getUnitPlural","getUnitPreference","getUnitsByType","getUnitSingular","getUnitSystem","updateUserUnits","getUserUnits","subscribeForUserUnitsUpdates","getUniqueUnitsByType","getChartHorizontalAxis","getXAxis","getChartVerticalAxis","getYAxis"],"mappings":"+
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/utils/index.ts"],"sourcesContent":["import {\n formatMentionText,\n isSuggestionsListOpened,\n stripMentionMarkup,\n} from '../components/UserMention/utils';\n\nimport * as StageDesignVActualUtils from './StageDesignVActualUtils';\nimport * as alerts from './alerts';\nimport * as audio from './audio';\nimport * as casing from './casing';\nimport * as chartSeries from './chartSeries';\nimport * as completion from './completion';\nimport * as components from './components';\nimport * as convert from './convert';\nimport * as csvExport from './csvExport';\nimport * as devcenter from './devcenter';\nimport * as drillstring from './drillstring';\nimport * as drillstringUtils from './DrillstringUtils';\nimport * as fluidCheckUtils from './FluidCheckUtils';\nimport * as formatting from './formatting';\nimport * as ga from './ga';\nimport * as goals from './goals';\nimport * as goalsConfig from './goalsConfig';\nimport * as lasParser from './lasParser';\nimport * as main from './main';\nimport * as mapUnits from './mapUnits';\nimport * as mapbox from './mapbox';\nimport * as metricsUtils from './metrics';\nimport * as mobileDetect from './mobileDetect';\nimport * as nativeMessages from './nativeMessages';\nimport * as notifications from './notifications';\nimport * as feed from './feed';\nimport * as permissions from './permissions';\nimport * as reports from './reports';\nimport * as time from './time';\nimport * as torqueAndHookloadUtils from './torqueAndHookloadUtils';\nimport * as accuracy from './accuracy';\nimport {\n createNotification,\n removeNotification,\n showErrorNotification,\n showInfoNotification,\n showNeutralNotification,\n showSuccessNotification,\n showWarningNotification,\n} from './notificationToasts';\nimport { showToast } from './devcenterToasts';\nimport { convertKeysToCamelCase, convertKeysToSnakeCase, getConvertKeys } from './convertKeys';\nimport * as dashboardReports from './dashboardReports';\nimport * as apps from './apps';\nimport * as themeVariables from './themeVariables';\nimport * as env from './env';\nimport * as fileExtension from './fileExtension';\nimport { jsonaDataFormatter } from './jsonaDataFormatter';\nimport * as bha from './bha';\nimport { getLocalStorageItem, updateLocalStorageItem } from './localStorage';\nimport { sharedDCStore } from './sharedDCStore';\nimport resolveWellHubSlug from './resolveWellHubSlug';\nimport { enableHighchartsDelayedTooltip } from './delayedHighcharts';\nimport { formatFileSize } from './formatFileSize';\nimport { getXAxis, getYAxis } from './charts';\n\nconst {\n convertArray,\n convertValue,\n getAllUnitTypes,\n getDefaultImperialUnit,\n getDefaultUnits,\n getUnitDescription,\n getUnitDisplay,\n getUnitPlural,\n getUnitPreference,\n getUnitsByType,\n getUnitSingular,\n getUnitSystem,\n updateUserUnits,\n getUserUnits,\n subscribeForUserUnitsUpdates,\n getUniqueUnitsByType,\n} = convert;\n\nexport {\n StageDesignVActualUtils,\n accuracy,\n alerts,\n apps,\n audio,\n bha,\n casing,\n chartSeries,\n enableHighchartsDelayedTooltip,\n completion,\n components,\n convert,\n convertArray,\n convertKeysToCamelCase,\n convertKeysToSnakeCase,\n convertValue,\n createNotification,\n csvExport,\n dashboardReports,\n devcenter,\n drillstring,\n drillstringUtils,\n env,\n feed,\n fileExtension,\n fluidCheckUtils,\n formatting,\n ga,\n formatMentionText,\n getAllUnitTypes,\n getConvertKeys,\n getDefaultImperialUnit,\n getDefaultUnits,\n getLocalStorageItem,\n getUniqueUnitsByType,\n getUnitDescription,\n getUnitDisplay,\n getUnitPlural,\n getUnitPreference,\n getUnitSingular,\n getUnitSystem,\n getUnitsByType,\n getUserUnits,\n goals,\n goalsConfig,\n jsonaDataFormatter,\n lasParser,\n main,\n mapUnits,\n mapbox,\n metricsUtils,\n mobileDetect,\n nativeMessages,\n notifications,\n permissions,\n removeNotification,\n reports,\n resolveWellHubSlug,\n sharedDCStore,\n showErrorNotification,\n showInfoNotification,\n showNeutralNotification,\n showSuccessNotification,\n showToast,\n showWarningNotification,\n subscribeForUserUnitsUpdates,\n themeVariables,\n time,\n torqueAndHookloadUtils,\n updateLocalStorageItem,\n updateUserUnits,\n isSuggestionsListOpened,\n stripMentionMarkup,\n formatFileSize,\n};\n\nexport * from './delay';\nexport * from './downloadBlob';\nexport * from './getSingleAsset';\n\nexport * as chart from './charts';\n// Deprecated, reexported for backwards compatibility\n/**\n * @deprecated\n */\nexport const getChartHorizontalAxis = getXAxis;\n\n/**\n * @deprecated\n */\nexport const getChartVerticalAxis = getYAxis;\n\nexport * from './safeTemplate';\n"],"names":["convertArray","convert","convertValue","getAllUnitTypes","getDefaultImperialUnit","getDefaultUnits","getUnitDescription","getUnitDisplay","getUnitPlural","getUnitPreference","getUnitsByType","getUnitSingular","getUnitSystem","updateUserUnits","getUserUnits","subscribeForUserUnitsUpdates","getUniqueUnitsByType","getChartHorizontalAxis","getXAxis","getChartVerticalAxis","getYAxis"],"mappings":"8rDA+DEA,GAgBEC,EAAAA,aAfFC,GAeED,EAAAA,aAdFE,GAcEF,EAAAA,gBAbFG,GAaEH,EAAAA,uBAZFI,GAYEJ,EAAAA,gBAXFK,GAWEL,EAAAA,mBAVFM,GAUEN,EAAAA,eATFO,GASEP,EAAAA,cARFQ,GAQER,EAAAA,kBAPFS,GAOET,EAAAA,eANFU,GAMEV,EAAAA,gBALFW,GAKEX,EAAAA,cAJFY,GAIEZ,EAAAA,gBAHFa,GAGEb,EAAAA,aAFFc,GAEEd,EAAAA,6BADFe,GACEf,EADkBe,qBAyFTC,GAAyBC,EAAQA,SAKjCC,GAAuBC,EAAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/slicedToArray"),r=require("@babel/runtime/helpers/toConsumableArray");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=t(e),i=t(r),a=/<%-([\s\S]*?)%>|<%=([\s\S]*?)%>|<%([\s\S]*?)%>|\$\{([\s\S]*?)\}/g,o=/^[A-Za-z_$][\w$]*/,u=/^(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/,l={true:!0,false:!1,null:null,undefined:void 0},c={"&":"&","<":"<",">":">",'"':""","'":"'"},f=function(e){return e.replace(/[&<>"']/g,(function(e){return c[e]}))},p={b:"\b",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v",0:"\0"},s=["\n","\r","\u2028","\u2029"],d=/\\(?:u\{([\da-fA-F]+)\}|u([\da-fA-F]{4})|x([\da-fA-F]{2})|\r\n|([\s\S]))/g,v=function(e){var r=0,t=function(t){throw new SyntaxError("".concat(t," in template expression `").concat(e,"` (position ").concat(r,")"))},n=function(){for(;r<e.length&&/\s/.test(e[r]);)r+=1},i=function(t){return n(),e[r]===t&&(r+=1,!0)},a=function(e){i(e)||t("Expected `".concat(e,"`"))},c=function(){n(),r>=e.length&&t("Unexpected end of expression");var i=e[r];if("("===i){r+=1;var c=v();return a(")"),c}if('"'===i||"'"===i)return function(){for(var n=e[r],i=r+=1;r<e.length&&e[r]!==n;)r+="\\"===e[r]?2:1;e[r]!==n&&t("Unterminated string literal");var a,o=e.slice(i,r);return r+=1,{type:"literal",value:(a=o,a.replace(d,(function(e,r,t,n,i){var a;return void 0!==r?String.fromCodePoint(parseInt(r,16)):void 0!==t?String.fromCharCode(parseInt(t,16)):void 0!==n?String.fromCharCode(parseInt(n,16)):void 0===i||s.includes(i)?"":null!==(a=p[i])&&void 0!==a?a:i})))}}();var f=u.exec(e.slice(r));if(f)return r+=f[0].length,{type:"literal",value:Number(f[0])};var m=o.exec(e.slice(r));if(m){r+=m[0].length;var y=m[0];return y in l?{type:"literal",value:l[y]}:{type:"identifier",name:y}}return t("Unsupported syntax `".concat(i,"`"))},f=function(){var e=[];if(i(")"))return e;do{e.push(v())}while(i(","));return a(")"),e};function v(){for(var u=c();;)if(i(".")){n();var l=o.exec(e.slice(r));if(!l)return t("Expected a property name after `.`");r+=l[0].length,u={type:"member",object:u,property:{type:"literal",value:l[0]}}}else if(i("[")){var p=v();a("]"),u={type:"member",object:u,property:p}}else{if(!i("("))return u;u={type:"call",callee:u,args:f()}}}var m=v();return n(),r<e.length&&t("Unexpected `".concat(e[r],"`")),m},m=function(e,r){if("function"!=typeof e)throw new TypeError("".concat(r," is not a function"));return e},y=function e(r,t){var n;switch(r.type){case"literal":return r.value;case"identifier":if(t&&!(r.name in t))throw new ReferenceError("".concat(r.name," is not defined"));return null==t?void 0:t[r.name];case"member":var a=e(r.object,t),o=String(e(r.property,t));return null!=a&&null!==(n=a.hasOwnProperty)&&void 0!==n&&n.call(a,o)?a[o]:void 0;case"call":var u=r.args.map((function(r){return e(r,t)})),l=r.callee;if("member"===l.type){var c=e(l.object,t),f=String(e(l.property,t));return c&&null!=c&&c.hasOwnProperty(f)?m(c[f],f).apply(c,u):void 0}var p=e(l,t);return p?m(p,function(e){return"identifier"===e.type?e.name:"expression"}(l)).apply(void 0,i.default(u)):void 0;default:return}},h=function(e){return null==e?"":String(e)};exports.safeTemplate=function(e){var r=[],t=0;a.lastIndex=0;for(var i=a.exec(e);i;){var o,u=i,l=n.default(u,5),c=l[0],p=l[1],s=l[2],d=l[3],m=l[4];if(void 0!==d)throw new SyntaxError("The `<% %>` (evaluate) delimiter is not supported: `".concat(c.trim(),"`"));i.index>t&&r.push({text:e.slice(t,i.index)}),r.push({node:v(null!==(o=null!=p?p:s)&&void 0!==o?o:m),escape:void 0!==p}),t=i.index+c.length,i=a.exec(e)}return t<e.length&&r.push({text:e.slice(t)}),function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return r.map((function(r){if("text"in r)return r.text;var t=h(y(r.node,e));return r.escape?f(t):t})).join("")}};
|
|
2
|
+
//# sourceMappingURL=safeTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeTemplate.js","sources":["../../../src/utils/safeTemplate.ts"],"sourcesContent":["/**\n * A drop-in replacement for lodash's `template`, limited to interpolation.\n *\n * Supported delimiters (lodash defaults):\n * `<%= expression %>` — interpolate\n * `${ expression }` — interpolate (ES template syntax)\n * `<%- expression %>` — interpolate, HTML-escaped\n *\n * `<% statements %>` (the \"evaluate\" delimiter) is intentionally not supported.\n *\n * Unlike lodash, the compiled template is not built with `new Function`, so it\n * works under a CSP that forbids `unsafe-eval`. The price is a restricted\n * expression grammar: literals, identifiers resolved against the data object,\n * property access and function calls. Operators, assignments and anything else\n * throw a `SyntaxError` at compile time.\n */\n\ntype TemplateData = Record<string, unknown>;\n\ntype Node =\n | { type: 'literal'; value: unknown }\n | { type: 'identifier'; name: string }\n | { type: 'member'; object: Node; property: Node }\n | { type: 'call'; callee: Node; args: Node[] };\n\ntype Chunk = { text: string } | { node: Node; escape: boolean };\n\nconst TOKEN_RE = /<%-([\\s\\S]*?)%>|<%=([\\s\\S]*?)%>|<%([\\s\\S]*?)%>|\\$\\{([\\s\\S]*?)\\}/g;\n\nconst IDENTIFIER_RE = /^[A-Za-z_$][\\w$]*/;\nconst NUMBER_RE = /^(?:\\d+\\.?\\d*|\\.\\d+)(?:[eE][+-]?\\d+)?/;\n\nconst KEYWORDS: Record<string, unknown> = {\n true: true,\n false: false,\n null: null,\n undefined: undefined,\n};\n\nconst HTML_ESCAPES: Record<string, string> = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n};\n\nconst escapeHtml = (value: string) => value.replace(/[&<>\"']/g, char => HTML_ESCAPES[char]);\n\nconst STRING_ESCAPES: Record<string, string> = {\n b: '\\b',\n f: '\\f',\n n: '\\n',\n r: '\\r',\n t: '\\t',\n v: '\\v',\n '0': '\\0',\n};\n\nconst LINE_TERMINATORS = ['\\n', '\\r', '\\u2028', '\\u2029'];\n\nconst ESCAPE_SEQUENCE_RE =\n /\\\\(?:u\\{([\\da-fA-F]+)\\}|u([\\da-fA-F]{4})|x([\\da-fA-F]{2})|\\r\\n|([\\s\\S]))/g;\n\n/**\n * Resolves backslash escape sequences the way a JS string literal does: the\n * single-character ones (`\\n`, `\\t`, `\\\\`, `\\'`, …), `\\xNN`, `\\uNNNN`, `\\u{NNNNN}`\n * and line continuations. A backslash before anything else is dropped and the\n * character kept as-is — again like a string literal. A trailing lone backslash\n * has nothing to escape, so it stays.\n */\nconst unescapeBackslashes = (value: string) =>\n value.replace(ESCAPE_SEQUENCE_RE, (_match, codePoint, unicode, hex, char) => {\n if (codePoint !== undefined) return String.fromCodePoint(parseInt(codePoint, 16));\n if (unicode !== undefined) return String.fromCharCode(parseInt(unicode, 16));\n if (hex !== undefined) return String.fromCharCode(parseInt(hex, 16));\n // `\\` before a real line break is a line continuation: both of them go away.\n if (char === undefined || LINE_TERMINATORS.includes(char)) return '';\n\n return STRING_ESCAPES[char] ?? char;\n });\n\nconst parseExpression = (source: string): Node => {\n let pos = 0;\n\n const fail = (message: string): never => {\n throw new SyntaxError(`${message} in template expression \\`${source}\\` (position ${pos})`);\n };\n\n const skipSpaces = () => {\n while (pos < source.length && /\\s/.test(source[pos])) pos += 1;\n };\n\n const eat = (char: string) => {\n skipSpaces();\n if (source[pos] !== char) return false;\n pos += 1;\n return true;\n };\n\n const expect = (char: string) => {\n if (!eat(char)) fail(`Expected \\`${char}\\``);\n };\n\n const parseString = (): Node => {\n const quote = source[pos];\n pos += 1;\n const start = pos;\n while (pos < source.length && source[pos] !== quote) {\n // A backslash escapes the character behind it, the closing quote included.\n pos += source[pos] === '\\\\' ? 2 : 1;\n }\n if (source[pos] !== quote) fail('Unterminated string literal');\n const raw = source.slice(start, pos);\n pos += 1;\n return { type: 'literal', value: unescapeBackslashes(raw) };\n };\n\n const parsePrimary = (): Node => {\n skipSpaces();\n if (pos >= source.length) fail('Unexpected end of expression');\n\n const char = source[pos];\n\n if (char === '(') {\n pos += 1;\n const node = parseOperand();\n expect(')');\n return node;\n }\n\n if (char === '\"' || char === \"'\") return parseString();\n\n const number = NUMBER_RE.exec(source.slice(pos));\n if (number) {\n pos += number[0].length;\n return { type: 'literal', value: Number(number[0]) };\n }\n\n const identifier = IDENTIFIER_RE.exec(source.slice(pos));\n if (identifier) {\n pos += identifier[0].length;\n const name = identifier[0];\n if (name in KEYWORDS) return { type: 'literal', value: KEYWORDS[name] };\n return { type: 'identifier', name };\n }\n\n return fail(`Unsupported syntax \\`${char}\\``);\n };\n\n const parseArguments = (): Node[] => {\n const args: Node[] = [];\n if (eat(')')) return args;\n do {\n args.push(parseOperand());\n } while (eat(','));\n expect(')');\n return args;\n };\n\n function parseOperand(): Node {\n let node = parsePrimary();\n\n for (;;) {\n if (eat('.')) {\n skipSpaces();\n const property = IDENTIFIER_RE.exec(source.slice(pos));\n if (!property) return fail('Expected a property name after `.`');\n pos += property[0].length;\n node = { type: 'member', object: node, property: { type: 'literal', value: property[0] } };\n } else if (eat('[')) {\n const property = parseOperand();\n expect(']');\n node = { type: 'member', object: node, property };\n } else if (eat('(')) {\n node = { type: 'call', callee: node, args: parseArguments() };\n } else {\n return node;\n }\n }\n }\n\n const node = parseOperand();\n skipSpaces();\n if (pos < source.length) fail(`Unexpected \\`${source[pos]}\\``);\n return node;\n};\n\nconst describe = (node: Node) => (node.type === 'identifier' ? node.name : 'expression');\n\nconst asFunction = (value: unknown, name: string) => {\n if (typeof value !== 'function') {\n throw new TypeError(`${name} is not a function`);\n }\n return value as (...args: unknown[]) => unknown;\n};\n\nconst evaluate = (node: Node, data: TemplateData): unknown => {\n switch (node.type) {\n case 'literal':\n return node.value;\n\n case 'identifier':\n if (data && !(node.name in data)) throw new ReferenceError(`${node.name} is not defined`);\n return data?.[node.name];\n\n case 'member':\n const evaluated = evaluate(node.object, data) as Record<string, unknown>;\n const propertyName = String(evaluate(node.property, data));\n return evaluated?.hasOwnProperty?.(propertyName) ? evaluated[propertyName] : undefined;\n\n case 'call': {\n const args = node.args.map(arg => evaluate(arg, data));\n const { callee } = node;\n\n // Keep the receiver for method calls, so `a.b()` still sees `a` as `this`.\n if (callee.type === 'member') {\n const thisArg = evaluate(callee.object, data) as Record<string, unknown>;\n const key = String(evaluate(callee.property, data));\n\n return thisArg && thisArg?.hasOwnProperty(key)\n ? asFunction(thisArg[key], key).apply(thisArg, args)\n : undefined;\n }\n\n const maybeFunction = evaluate(callee, data);\n\n return maybeFunction ? asFunction(maybeFunction, describe(callee))(...args) : undefined;\n }\n\n default:\n return undefined;\n }\n};\n\nconst toString = (value: unknown) => (value == null ? '' : String(value));\n\n/**\n * Compiles `source` into a function that interpolates a data object into it,\n * mirroring `lodash.template(source)(data)` for interpolation-only templates.\n */\nexport const safeTemplate = (source: string) => {\n const chunks: Chunk[] = [];\n let index = 0;\n\n TOKEN_RE.lastIndex = 0;\n let match = TOKEN_RE.exec(source);\n while (match) {\n const [token, escaped, interpolated, evaluated, esInterpolated] = match;\n\n if (evaluated !== undefined) {\n throw new SyntaxError(\n `The \\`<% %>\\` (evaluate) delimiter is not supported: \\`${token.trim()}\\``\n );\n }\n\n if (match.index > index) chunks.push({ text: source.slice(index, match.index) });\n chunks.push({\n node: parseExpression(escaped ?? interpolated ?? esInterpolated),\n escape: escaped !== undefined,\n });\n\n index = match.index + token.length;\n match = TOKEN_RE.exec(source);\n }\n\n if (index < source.length) chunks.push({ text: source.slice(index) });\n\n return (data: TemplateData = {}) =>\n chunks\n .map(chunk => {\n if ('text' in chunk) return chunk.text;\n const value = toString(evaluate(chunk.node, data));\n return chunk.escape ? escapeHtml(value) : value;\n })\n .join('');\n};\n"],"names":["TOKEN_RE","IDENTIFIER_RE","NUMBER_RE","KEYWORDS","true","false","null","undefined","HTML_ESCAPES","escapeHtml","value","replace","char","STRING_ESCAPES","b","f","n","r","t","v","LINE_TERMINATORS","ESCAPE_SEQUENCE_RE","parseExpression","source","pos","fail","message","SyntaxError","concat","skipSpaces","length","test","eat","expect","parsePrimary","node","parseOperand","quote","start","raw","slice","type","_match","codePoint","unicode","hex","_STRING_ESCAPES$char","String","fromCodePoint","parseInt","fromCharCode","includes","parseString","number","exec","Number","identifier","name","parseArguments","args","push","property","object","callee","asFunction","TypeError","evaluate","data","_evaluated$hasOwnProp","ReferenceError","evaluated","propertyName","hasOwnProperty","call","map","arg","thisArg","key","apply","maybeFunction","describe","_toConsumableArray","toString","chunks","index","lastIndex","match","_ref","_match2","_match3","_slicedToArray","token","escaped","interpolated","esInterpolated","trim","text","escape","arguments","chunk","join"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DQAlertsTooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/StatusBadge/components/DQAlertsTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAQ,MAAM,OAAO,CAAC;AAW3C,OAAO,EAAE,KAAK,EAAqC,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"DQAlertsTooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/StatusBadge/components/DQAlertsTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAQ,MAAM,OAAO,CAAC;AAW3C,OAAO,EAAE,KAAK,EAAqC,MAAM,oCAAoC,CAAC;AAsI9F,KAAK,0BAA0B,GAAG;IAChC,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,YAAY,CAAC;IACxB,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,eAAe,qFACqB,0BAA0B,KAAG,GAAG,CAAC,OAAO,CA2FxF,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{memo as
|
|
1
|
+
import{memo as t}from"react";import e from"moment";import{isEqual as r}from"lodash";import{makeStyles as i}from"@material-ui/core";import o from"@material-ui/icons/ArrowForward";import{Tooltip as a}from"../../Tooltip/Tooltip.js";import"../../Tooltip/ScrollableTooltip.js";import{getDeductsFromScoreClass as s,isResolved as n,getDeductsFromScoreValue as l}from"../utils.js";import{ALERT_STATES as p,BADGE_ICON_STATUSES as m}from"../constants.js";import{UniversalLink as c}from"../../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js";import{useDQUnvalidatedContentStyles as d}from"../styles.js";import{MIXPANEL_ACTION_TYPES as h}from"../../../constants/mixpanel.js";import"../../UserMention/utils/index.js";import"@babel/runtime/helpers/defineProperty";import"../../../utils/convert.js";import"../../../constants/completion.js";import"../../../constants/alerts.js";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/regenerator";import"../../../utils/casing/validation.js";import"@babel/runtime/helpers/slicedToArray";import"lodash/mean";import"../../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"query-string";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";import"../../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"@babel/runtime/helpers/toConsumableArray";import"lodash/isNumber";import"lodash/has";import"../../../utils/ga.js";import"../../../utils/goalsConfig/goalsConfig.js";import"../../../utils/lasParser.js";import"../../../utils/main.js";import"../../../utils/metrics/metricsConfig.js";import"../../../utils/mobileDetect.js";import"../../../utils/feed.js";import"../../../utils/reports.js";import"moment-timezone";import"@babel/runtime/helpers/typeof";import"../../../utils/dashboardReports.js";import"../../../utils/env.js";import"file-extension";import"image-extensions";import"video-extensions";import"../../../utils/jsonaDataFormatter.js";import"../../../utils/bha.js";import"jsona";import"../../../clients/jsonApi/index.js";import"@babel/runtime/helpers/objectWithoutProperties";import"classnames";import"../../../utils/charts/Styles.scss.js";import"../../../utils/getSingleAsset.js";import{safeTemplate as u}from"../../../utils/safeTemplate.js";import{jsx as g,jsxs as f,Fragment as j}from"react/jsx-runtime";var x=i((function(t){return{errorIcon:{width:20,height:18},title:{maxWidth:198,padding:"0 0 8px",fontSize:16,lineHeight:"22px",color:t.palette.primary.text1,display:"flex",alignItems:"center"},emptyMessage:{padding:"0",fontSize:16,lineHeight:"22px",color:t.palette.primary.contrastText},alertTime:{fontSize:14,color:t.palette.primary.text6,"& span":{color:t.palette.primary.text1}},alertMessage:{width:"100%",height:40,margin:0,overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box","-webkit-line-clamp":2,"-webkit-box-orient":"vertical",whiteSpace:"pre-wrap",fontSize:14,lineHeight:"20px",color:t.palette.primary.text1},alertMessageFull:{marginBottom:8,fontSize:14,lineHeight:"20px",color:t.palette.primary.text1,whiteSpace:"pre-wrap"},alertInfo:{display:"flex",alignItems:"center",flexWrap:"wrap",marginBottom:8,fontSize:14,textTransform:"capitalize","& span":{color:t.palette.primary.text6,marginRight:8},"& .error":{color:t.palette.error.main},"& .warning":{color:"#ffa500"}},resolvedInfo:{display:"flex",alignItems:"center",marginBottom:8,color:t.palette.primary.text6,fontSize:14},infoIcon:{color:t.palette.info.main,marginRight:8,fontSize:16},popover:{marginLeft:77,width:270,padding:12,display:"flex",flexDirection:"column",justifyContent:"space-between",backgroundColor:t.palette.background.b9,border:"1px solid ".concat(t.palette.primary.text9),boxShadow:"0px 3px 10px rgba(0, 0, 0, 0.4)",borderRadius:4,zIndex:500,"& .MuiTooltip-tooltip":{backgroundColor:t.palette.background.b10,fontWeight:400,lineHeight:"20px",margin:0}},message:{whiteSpace:"pre-wrap"},note:{marginBottom:4},ok:{color:"#F99500 !important"},good:{color:"".concat(t.palette.warning.light," !important")}}})),b=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"MMM D YYYY, hh:mm A";return t?e.unix(t).format(r):null},y=function(t){return e.unix(t).format("DD MMM HH:mm (Z)")},v=function(t){var e=t.children,r=x(),i=u(e)({timestampFormatter:y}).split("**").map((function(t,e){return e%2==1?g("b",{children:t},e):t}));return g("span",{className:r.message,children:i})},S=t((function(t){var e,r=t.alert,i=t.alertIcon,u=t.children,y=t.linkToDQPage,S=x(),w=d({}),T=Math.max(r.statusUpdatedAt,r.lastCheckedAt),M=b(T);return g(a,{interactive:!0,children:u,PopperProps:{className:S.popover},placement:"right",title:f(j,{children:[r.emptyMessage&&g("div",{className:S.emptyMessage,children:r.statusUpdatedAt?b(r.statusUpdatedAt):r.emptyMessage}),!r.emptyMessage&&f(j,{children:[f("div",{className:S.title,children:[r.name,g(a,{isFullScreen:!1,title:"Go to Data Quality page",children:g("div",{children:g(c,{className:w.link,href:y,onClick:function(){var t,e;null===(t=(e=window)[Symbol.for("logToMixpanel")])||void 0===t||t.call(e,h.REDIRECT.ASSET_DASHBOARD,{referer:"DQ Badge"})},children:g(o,{className:w.linkIcon})})})})]}),f("span",{className:S.alertInfo,children:[g("span",{children:"Category:"})," ",r.category]}),f("span",{className:S.alertInfo,children:[g("span",{children:"Status:"})," ",r.status]}),f("span",{className:S.alertInfo,children:[g("span",{children:"Error Type:"}),g("div",{className:S.errorIcon,children:i}),g("span",{className:r.state===p.issue?m.warning:m.error,children:r.state})]}),f("span",{className:S.alertInfo,children:[g("span",{children:"Score Deduction:"}),g("span",{className:s(S,r.deductsFromScore,n(r.status)),children:l(r.deductsFromScore,n(r.status))})]}),f("div",{className:S.alertMessageFull,children:[r.isThrottled&&g("b",{children:"[Throttled]: "}),g(v,{children:r.message})]}),f("span",{className:S.alertInfo,children:[g("span",{className:S.note,children:"Note:"})," ",null!==(e=r.note)&&void 0!==e&&e.length?r.note:"—"]}),f("span",{className:S.alertTime,children:["Updated at: ",g("span",{children:M})]})]})]})})}),(function(t,e){return r(t.alert,e.alert)}));export{S as DQAlertsTooltip};
|
|
2
2
|
//# sourceMappingURL=DQAlertsTooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DQAlertsTooltip.js","sources":["../../../../src/components/StatusBadge/components/DQAlertsTooltip.tsx"],"sourcesContent":["import { ReactElement, memo } from 'react';\nimport moment from 'moment';\nimport { template, isEqual } from 'lodash';\nimport { makeStyles } from '@material-ui/core';\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\nimport Tooltip from '~/components/Tooltip';\nimport {\n getDeductsFromScoreValue,\n isResolved,\n getDeductsFromScoreClass,\n} from '~/components/StatusBadge/utils';\nimport { Alert, ALERT_STATES, BADGE_ICON_STATUSES } from '~/components/StatusBadge/constants';\nimport { UniversalLink } from '~/components/DevCenter/DevCenterRouterContext/UniversalLink';\nimport { useDQUnvalidatedContentStyles } from '~/components/StatusBadge/styles';\nimport { MIXPANEL_ACTION_TYPES } from '~/constants/mixpanel';\n\nconst useStyles = makeStyles(theme => ({\n errorIcon: {\n width: 20,\n height: 18,\n },\n title: {\n maxWidth: 198,\n padding: '0 0 8px',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.text1,\n display: 'flex',\n alignItems: 'center',\n },\n emptyMessage: {\n padding: '0',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.contrastText,\n },\n alertTime: {\n fontSize: 14,\n color: theme.palette.primary.text6,\n\n '& span': {\n color: theme.palette.primary.text1,\n },\n },\n alertMessage: {\n width: '100%',\n height: 40,\n margin: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n '-webkit-line-clamp': 2,\n '-webkit-box-orient': 'vertical',\n whiteSpace: 'pre-wrap',\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n },\n alertMessageFull: {\n marginBottom: 8,\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n whiteSpace: 'pre-wrap',\n },\n alertInfo: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginBottom: 8,\n fontSize: 14,\n textTransform: 'capitalize',\n\n '& span': {\n color: theme.palette.primary.text6,\n marginRight: 8,\n },\n\n '& .error': {\n color: theme.palette.error.main,\n },\n '& .warning': {\n color: '#ffa500',\n },\n },\n resolvedInfo: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: 8,\n color: theme.palette.primary.text6,\n fontSize: 14,\n },\n infoIcon: {\n color: theme.palette.info.main,\n marginRight: 8,\n fontSize: 16,\n },\n popover: {\n marginLeft: 77,\n width: 270,\n padding: 12,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n backgroundColor: theme.palette.background.b9,\n border: `1px solid ${theme.palette.primary.text9}`,\n boxShadow: '0px 3px 10px rgba(0, 0, 0, 0.4)',\n borderRadius: 4,\n zIndex: 500,\n '& .MuiTooltip-tooltip': {\n backgroundColor: theme.palette.background.b10,\n fontWeight: 400,\n lineHeight: '20px',\n margin: 0,\n },\n },\n message: { whiteSpace: 'pre-wrap' },\n note: { marginBottom: 4 },\n ok: { color: '#F99500 !important' },\n good: { color: `${theme.palette.warning.light} !important` },\n}));\n\nconst formatDate = (date: number, format = 'MMM D YYYY, hh:mm A') => {\n if (!date) return null;\n\n return moment.unix(date).format(format);\n};\n\nconst timestampFormatter = (timestamp: number) => {\n return moment.unix(timestamp).format('DD MMM HH:mm (Z)');\n};\n\nconst FormattedMessage = ({ children }: { children: string }) => {\n const styles = useStyles();\n const compiled = template(children);\n const messageParts = compiled({\n timestampFormatter,\n })\n // Support of **Bold** syntax just for backward compatibility\n .split('**')\n .map((message, i) => (i % 2 === 1 ? <b key={i}>{message}</b> : message));\n return <span className={styles.message}>{messageParts}</span>;\n};\n\ntype DQCountryCheckTooltipProps = {\n alert: Alert;\n alertIcon: ReactElement;\n children: ReactElement<any, any>;\n linkToDQPage: string;\n};\n\nexport const DQAlertsTooltip = memo(\n ({ alert, alertIcon, children, linkToDQPage }: DQCountryCheckTooltipProps): JSX.Element => {\n const classes = useStyles();\n const DQUnvalidatedContentClasses = useDQUnvalidatedContentStyles({});\n const latestUpdateTime = Math.max(alert.statusUpdatedAt, alert.lastCheckedAt);\n const statusUpdatedAt = formatDate(latestUpdateTime);\n\n return (\n <Tooltip\n interactive\n children={children}\n PopperProps={{ className: classes.popover }}\n placement=\"right\"\n title={\n <>\n {alert.emptyMessage && (\n <div className={classes.emptyMessage}>\n {alert.statusUpdatedAt ? formatDate(alert.statusUpdatedAt) : alert.emptyMessage}\n </div>\n )}\n {!alert.emptyMessage && (\n <>\n <div className={classes.title}>\n {alert.name}\n <Tooltip isFullScreen={false} title=\"Go to Data Quality page\">\n <div>\n <UniversalLink\n className={DQUnvalidatedContentClasses.link}\n href={linkToDQPage}\n onClick={() => {\n (window as unknown as Record<symbol, Function>)[\n Symbol.for('logToMixpanel')\n ]?.(MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD, {\n referer: 'DQ Badge',\n });\n }}\n >\n <ArrowForwardIcon className={DQUnvalidatedContentClasses.linkIcon} />\n </UniversalLink>\n </div>\n </Tooltip>\n </div>\n <span className={classes.alertInfo}>\n <span>Category:</span> {alert.category}\n </span>\n <span className={classes.alertInfo}>\n <span>Status:</span> {alert.status}\n </span>\n <span className={classes.alertInfo}>\n <span>Error Type:</span>\n <div className={classes.errorIcon}>{alertIcon}</div>\n <span\n className={\n alert.state === ALERT_STATES.issue\n ? BADGE_ICON_STATUSES.warning\n : BADGE_ICON_STATUSES.error\n }\n >\n {alert.state}\n </span>\n </span>\n <span className={classes.alertInfo}>\n <span>Score Deduction:</span>\n <span\n className={getDeductsFromScoreClass(\n classes,\n alert.deductsFromScore,\n isResolved(alert.status)\n )}\n >\n {getDeductsFromScoreValue(alert.deductsFromScore, isResolved(alert.status))}\n </span>\n </span>\n <div className={classes.alertMessageFull}>\n {alert.isThrottled && <b>[Throttled]: </b>}\n <FormattedMessage>{alert.message}</FormattedMessage>\n </div>\n <span className={classes.alertInfo}>\n <span className={classes.note}>Note:</span>{' '}\n {alert.note?.length ? alert.note : '—'}\n </span>\n <span className={classes.alertTime}>\n Updated at: <span>{statusUpdatedAt}</span>\n </span>\n </>\n )}\n </>\n }\n />\n );\n },\n (prev, next) => isEqual(prev.alert, next.alert)\n);\n"],"names":["useStyles","makeStyles","theme","errorIcon","width","height","title","maxWidth","padding","fontSize","lineHeight","color","palette","primary","text1","display","alignItems","emptyMessage","contrastText","alertTime","text6","alertMessage","margin","overflow","textOverflow","whiteSpace","alertMessageFull","marginBottom","alertInfo","flexWrap","textTransform","marginRight","error","main","resolvedInfo","infoIcon","info","popover","marginLeft","flexDirection","justifyContent","backgroundColor","background","b9","border","concat","text9","boxShadow","borderRadius","zIndex","b10","fontWeight","message","note","ok","good","warning","light","formatDate","date","format","moment","unix","timestampFormatter","timestamp","FormattedMessage","_ref","children","styles","messageParts","template","compiled","split","map","i","_jsx","className","DQAlertsTooltip","memo","_ref2","_alert$note","alert","alertIcon","linkToDQPage","classes","DQUnvalidatedContentClasses","useDQUnvalidatedContentStyles","latestUpdateTime","Math","max","statusUpdatedAt","lastCheckedAt","Tooltip","interactive","PopperProps","placement","_jsxs","_Fragment","name","isFullScreen","UniversalLink","link","href","onClick","_Symbol$for","_ref3","window","Symbol","for","MIXPANEL_ACTION_TYPES","REDIRECT","ASSET_DASHBOARD","referer","ArrowForwardIcon","linkIcon","category","status","state","ALERT_STATES","issue","BADGE_ICON_STATUSES","getDeductsFromScoreClass","deductsFromScore","isResolved","getDeductsFromScoreValue","isThrottled","length","prev","next","isEqual"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DQAlertsTooltip.js","sources":["../../../../src/components/StatusBadge/components/DQAlertsTooltip.tsx"],"sourcesContent":["import { ReactElement, memo } from 'react';\nimport moment from 'moment';\nimport { isEqual } from 'lodash';\nimport { makeStyles } from '@material-ui/core';\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\nimport Tooltip from '~/components/Tooltip';\nimport {\n getDeductsFromScoreValue,\n isResolved,\n getDeductsFromScoreClass,\n} from '~/components/StatusBadge/utils';\nimport { Alert, ALERT_STATES, BADGE_ICON_STATUSES } from '~/components/StatusBadge/constants';\nimport { UniversalLink } from '~/components/DevCenter/DevCenterRouterContext/UniversalLink';\nimport { useDQUnvalidatedContentStyles } from '~/components/StatusBadge/styles';\nimport { MIXPANEL_ACTION_TYPES } from '~/constants/mixpanel';\nimport { safeTemplate } from '~/utils';\n\nconst useStyles = makeStyles(theme => ({\n errorIcon: {\n width: 20,\n height: 18,\n },\n title: {\n maxWidth: 198,\n padding: '0 0 8px',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.text1,\n display: 'flex',\n alignItems: 'center',\n },\n emptyMessage: {\n padding: '0',\n fontSize: 16,\n lineHeight: '22px',\n color: theme.palette.primary.contrastText,\n },\n alertTime: {\n fontSize: 14,\n color: theme.palette.primary.text6,\n\n '& span': {\n color: theme.palette.primary.text1,\n },\n },\n alertMessage: {\n width: '100%',\n height: 40,\n margin: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n '-webkit-line-clamp': 2,\n '-webkit-box-orient': 'vertical',\n whiteSpace: 'pre-wrap',\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n },\n alertMessageFull: {\n marginBottom: 8,\n fontSize: 14,\n lineHeight: '20px',\n color: theme.palette.primary.text1,\n whiteSpace: 'pre-wrap',\n },\n alertInfo: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginBottom: 8,\n fontSize: 14,\n textTransform: 'capitalize',\n\n '& span': {\n color: theme.palette.primary.text6,\n marginRight: 8,\n },\n\n '& .error': {\n color: theme.palette.error.main,\n },\n '& .warning': {\n color: '#ffa500',\n },\n },\n resolvedInfo: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: 8,\n color: theme.palette.primary.text6,\n fontSize: 14,\n },\n infoIcon: {\n color: theme.palette.info.main,\n marginRight: 8,\n fontSize: 16,\n },\n popover: {\n marginLeft: 77,\n width: 270,\n padding: 12,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n backgroundColor: theme.palette.background.b9,\n border: `1px solid ${theme.palette.primary.text9}`,\n boxShadow: '0px 3px 10px rgba(0, 0, 0, 0.4)',\n borderRadius: 4,\n zIndex: 500,\n '& .MuiTooltip-tooltip': {\n backgroundColor: theme.palette.background.b10,\n fontWeight: 400,\n lineHeight: '20px',\n margin: 0,\n },\n },\n message: { whiteSpace: 'pre-wrap' },\n note: { marginBottom: 4 },\n ok: { color: '#F99500 !important' },\n good: { color: `${theme.palette.warning.light} !important` },\n}));\n\nconst formatDate = (date: number, format = 'MMM D YYYY, hh:mm A') => {\n if (!date) return null;\n\n return moment.unix(date).format(format);\n};\n\nconst timestampFormatter = (timestamp: number) => {\n return moment.unix(timestamp).format('DD MMM HH:mm (Z)');\n};\n\nconst FormattedMessage = ({ children }: { children: string }) => {\n const styles = useStyles();\n const compiled = safeTemplate(children);\n const messageParts = compiled({\n timestampFormatter,\n })\n // Support of **Bold** syntax just for backward compatibility\n .split('**')\n .map((message, i) => (i % 2 === 1 ? <b key={i}>{message}</b> : message));\n return <span className={styles.message}>{messageParts}</span>;\n};\n\ntype DQCountryCheckTooltipProps = {\n alert: Alert;\n alertIcon: ReactElement;\n children: ReactElement<any, any>;\n linkToDQPage: string;\n};\n\nexport const DQAlertsTooltip = memo(\n ({ alert, alertIcon, children, linkToDQPage }: DQCountryCheckTooltipProps): JSX.Element => {\n const classes = useStyles();\n const DQUnvalidatedContentClasses = useDQUnvalidatedContentStyles({});\n const latestUpdateTime = Math.max(alert.statusUpdatedAt, alert.lastCheckedAt);\n const statusUpdatedAt = formatDate(latestUpdateTime);\n\n return (\n <Tooltip\n interactive\n children={children}\n PopperProps={{ className: classes.popover }}\n placement=\"right\"\n title={\n <>\n {alert.emptyMessage && (\n <div className={classes.emptyMessage}>\n {alert.statusUpdatedAt ? formatDate(alert.statusUpdatedAt) : alert.emptyMessage}\n </div>\n )}\n {!alert.emptyMessage && (\n <>\n <div className={classes.title}>\n {alert.name}\n <Tooltip isFullScreen={false} title=\"Go to Data Quality page\">\n <div>\n <UniversalLink\n className={DQUnvalidatedContentClasses.link}\n href={linkToDQPage}\n onClick={() => {\n (window as unknown as Record<symbol, Function>)[\n Symbol.for('logToMixpanel')\n ]?.(MIXPANEL_ACTION_TYPES.REDIRECT.ASSET_DASHBOARD, {\n referer: 'DQ Badge',\n });\n }}\n >\n <ArrowForwardIcon className={DQUnvalidatedContentClasses.linkIcon} />\n </UniversalLink>\n </div>\n </Tooltip>\n </div>\n <span className={classes.alertInfo}>\n <span>Category:</span> {alert.category}\n </span>\n <span className={classes.alertInfo}>\n <span>Status:</span> {alert.status}\n </span>\n <span className={classes.alertInfo}>\n <span>Error Type:</span>\n <div className={classes.errorIcon}>{alertIcon}</div>\n <span\n className={\n alert.state === ALERT_STATES.issue\n ? BADGE_ICON_STATUSES.warning\n : BADGE_ICON_STATUSES.error\n }\n >\n {alert.state}\n </span>\n </span>\n <span className={classes.alertInfo}>\n <span>Score Deduction:</span>\n <span\n className={getDeductsFromScoreClass(\n classes,\n alert.deductsFromScore,\n isResolved(alert.status)\n )}\n >\n {getDeductsFromScoreValue(alert.deductsFromScore, isResolved(alert.status))}\n </span>\n </span>\n <div className={classes.alertMessageFull}>\n {alert.isThrottled && <b>[Throttled]: </b>}\n <FormattedMessage>{alert.message}</FormattedMessage>\n </div>\n <span className={classes.alertInfo}>\n <span className={classes.note}>Note:</span>{' '}\n {alert.note?.length ? alert.note : '—'}\n </span>\n <span className={classes.alertTime}>\n Updated at: <span>{statusUpdatedAt}</span>\n </span>\n </>\n )}\n </>\n }\n />\n );\n },\n (prev, next) => isEqual(prev.alert, next.alert)\n);\n"],"names":["useStyles","makeStyles","theme","errorIcon","width","height","title","maxWidth","padding","fontSize","lineHeight","color","palette","primary","text1","display","alignItems","emptyMessage","contrastText","alertTime","text6","alertMessage","margin","overflow","textOverflow","whiteSpace","alertMessageFull","marginBottom","alertInfo","flexWrap","textTransform","marginRight","error","main","resolvedInfo","infoIcon","info","popover","marginLeft","flexDirection","justifyContent","backgroundColor","background","b9","border","concat","text9","boxShadow","borderRadius","zIndex","b10","fontWeight","message","note","ok","good","warning","light","formatDate","date","format","moment","unix","timestampFormatter","timestamp","FormattedMessage","_ref","children","styles","messageParts","safeTemplate","compiled","split","map","i","_jsx","className","DQAlertsTooltip","memo","_ref2","_alert$note","alert","alertIcon","linkToDQPage","classes","DQUnvalidatedContentClasses","useDQUnvalidatedContentStyles","latestUpdateTime","Math","max","statusUpdatedAt","lastCheckedAt","Tooltip","interactive","PopperProps","placement","_jsxs","_Fragment","name","isFullScreen","UniversalLink","link","href","onClick","_Symbol$for","_ref3","window","Symbol","for","MIXPANEL_ACTION_TYPES","REDIRECT","ASSET_DASHBOARD","referer","ArrowForwardIcon","linkIcon","category","status","state","ALERT_STATES","issue","BADGE_ICON_STATUSES","getDeductsFromScoreClass","deductsFromScore","isResolved","getDeductsFromScoreValue","isThrottled","length","prev","next","isEqual"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DqAlertTooltip.d.ts","sourceRoot":"","sources":["../../../../src/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DqAlertTooltip.d.ts","sourceRoot":"","sources":["../../../../src/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAIhD,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAiE5D,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,cAAc,uBAAwB,mBAAmB,4CA+ErE,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"moment";import{
|
|
1
|
+
import o from"moment";import{Tooltip as s}from"../../Tooltip/Tooltip.js";import{ButtonIcon as i}from"../../ButtonIcon/ButtonIcon.js";import{DqStatusIcon as t}from"../../AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js";import{Text as n}from"../../Text/Text.js";import{UniversalLink as c}from"../../../components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js";import{MIXPANEL_ACTION_TYPES as r}from"../../../constants/mixpanel.js";import{ArrowRightIcon as e}from"../../../icons/iconParkIcons.js";import"../../../icons/customIcons/icons/AddMessage.js";import"../../../icons/customIcons/icons/DragOne.js";import"../../../icons/customIcons/icons/Attention.js";import"../../../icons/customIcons/icons/Collapse.js";import"../../../icons/customIcons/icons/Dashboard.js";import"../../../icons/customIcons/icons/Expand.js";import"../../../icons/customIcons/icons/FolderClosed.js";import"../../../icons/customIcons/icons/FolderClosedFilled.js";import"../../../icons/customIcons/icons/FolderOpened.js";import"../../../icons/customIcons/icons/GreaterOrEqual.js";import"../../../icons/customIcons/icons/LessOrEqual.js";import"../../../icons/customIcons/icons/Search.js";import"../../../icons/customIcons/icons/SearchOne.js";import"../../../icons/customIcons/icons/Wellhub.js";import"../../../icons/customIcons/icons/MultiRuler.js";import"../../../icons/customIcons/icons/Checkbox.js";import"../../../icons/customIcons/icons/CheckboxChecked.js";import"../../../icons/customIcons/icons/CheckboxIndeterminate.js";import"../../../icons/customIcons/icons/Radio.js";import"../../../icons/customIcons/icons/RadioChecked.js";import"../../../icons/customIcons/icons/SimulFrac.js";import"../../../icons/customIcons/icons/ZipperFrac.js";import"../../../icons/customIcons/icons/CautionFilled.js";import"../../../icons/customIcons/icons/InfoRounded.js";import"../../../icons/customIcons/icons/FlameFilled.js";import"../../../icons/customIcons/icons/MoreApp.js";import"../../../icons/customIcons/icons/Pad.js";import"../../../icons/customIcons/icons/DrilloutUnit.js";import"../../../icons/customIcons/icons/FracFleet.js";import"../../../icons/customIcons/icons/Global.js";import"../../../icons/customIcons/icons/Program.js";import"../../../icons/customIcons/icons/Rig.js";import"../../../icons/customIcons/icons/Well.js";import"../../../icons/customIcons/icons/Gap.js";import"../../../icons/customIcons/icons/Pin.js";import"../../../icons/customIcons/icons/PinOne.js";import"../../../icons/customIcons/icons/PinOneCrossed.js";import"../../../icons/customIcons/icons/CloseOneFilled.js";import"../../../icons/customIcons/icons/AttentionFilled.js";import"../../../icons/customIcons/icons/CheckOneFilled.js";import"../../../icons/customIcons/icons/Archive.js";import"../../../icons/customIcons/icons/ArchiveCancel.js";import"../../../icons/customIcons/icons/Unarchive.js";import"../../../icons/customIcons/icons/Archived.js";import"../../../icons/customIcons/icons/InterventionUnit.js";import"../../../icons/customIcons/icons/CloudDelete.js";import"../../../icons/customIcons/icons/Lasso.js";import"../../../icons/customIcons/icons/Radius.js";import"../../../icons/customIcons/icons/ErrorOps.js";import"../../../icons/customIcons/icons/DataTypeOps.js";import"../../../icons/customIcons/icons/FalsePositiveOps.js";import"../../../icons/customIcons/icons/CalibrationOps.js";import"../../../icons/customIcons/icons/CriticalOps.js";import"../../../icons/customIcons/icons/Company.js";import"../../../icons/customIcons/icons/ArchiveOne.js";import"../../../icons/customIcons/icons/ParseBotFusion.js";import"../../../icons/customIcons/icons/Connect.js";import"../../../icons/customIcons/icons/PuzzleOne.js";import"../../../icons/customIcons/icons/Feed.js";import"../../../icons/customIcons/icons/Prompt.js";import"../../../icons/customIcons/icons/Companies.js";import"../../../icons/customIcons/icons/ClipboardAi.js";import"../../../icons/customIcons/icons/Key.js";import"../../../icons/customIcons/icons/AtSignCrossed.js";import"../../../icons/customIcons/icons/MappingManual.js";import"../../../icons/customIcons/icons/Mapping.js";import"../../../icons/customIcons/icons/Metrics.js";import"../../../icons/customIcons/icons/Drops.js";import"../../../icons/customIcons/icons/ClipboardSearch.js";import"../../../icons/customIcons/icons/Template.js";import"../../../icons/customIcons/icons/ClipboardMetrics.js";import"../../../icons/customIcons/icons/ClipboardBuilder.js";import"../../../icons/customIcons/icons/UnitConversion.js";import"../../../icons/customIcons/icons/NPT.js";import"../../../icons/customIcons/icons/GuidedFrac.js";import"../../../components/UserMention/utils/index.js";import"@babel/runtime/helpers/defineProperty";import"../../../utils/convert.js";import"../../../constants/completion.js";import"../../../constants/alerts.js";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/regenerator";import"../../../utils/casing/validation.js";import"@babel/runtime/helpers/slicedToArray";import"lodash/mean";import"lodash";import"../../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"query-string";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import"../../../constants/corvaCompanyId.js";import"../../../components/GradientManager/configuration/constants.js";import"../../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"@babel/runtime/helpers/toConsumableArray";import"lodash/isNumber";import"lodash/has";import"../../../utils/ga.js";import"../../../utils/goalsConfig/goalsConfig.js";import"../../../utils/lasParser.js";import"../../../utils/main.js";import"../../../utils/metrics/metricsConfig.js";import"../../../utils/mobileDetect.js";import"../../../utils/feed.js";import"../../../utils/reports.js";import"moment-timezone";import"@babel/runtime/helpers/typeof";import"../../../utils/dashboardReports.js";import"../../../utils/env.js";import"file-extension";import"image-extensions";import"video-extensions";import"../../../utils/jsonaDataFormatter.js";import"../../../utils/bha.js";import"jsona";import"../../../clients/jsonApi/index.js";import"@babel/runtime/helpers/objectWithoutProperties";import"classnames";import"../../../utils/charts/Styles.scss.js";import"../../../utils/getSingleAsset.js";import{safeTemplate as m}from"../../../utils/safeTemplate.js";import l from"./DqAlertTooltip.scss.js";import{jsx as a,jsxs as p,Fragment as u}from"react/jsx-runtime";var d=function(s){return s&&o.unix(s).format("MMM D YYYY, hh:mm A")},j=function(s){return o.unix(s).format("DD MMM HH:mm (Z)")},I=function(o){var s=o.message,i=m(s)({timestampFormatter:j}).split("**").map((function(o,s){return s%2==1?a("b",{children:o},s):o}));return a("span",{className:l.message,children:i})},v=function(o){var s=o.children,i=o.label,t=o.className;return p("div",{className:l.item,children:[i&&a(n,{size:14,color:"T6",children:i}),s&&a(n,{size:14,color:"T1",className:t,children:s})]})},h=function(o){var m,j,h,g,b,C,f,y,D,F,A,T,M,S,x,O,P,N,k,R,U,E,z,G=o.children,q=o.item,B=Math.max(null===(m=q.alert)||void 0===m?void 0:m.statusUpdatedAt,null===(j=q.alert)||void 0===j?void 0:j.lastCheckedAt),W=d(B),L=a("div",{className:l.content,children:null!==(h=q.alert)&&void 0!==h&&h.emptyMessage?a(n,{size:16,children:null!==(g=q.alert)&&void 0!==g&&g.statusUpdatedAt?d(null===(b=q.alert)||void 0===b?void 0:b.statusUpdatedAt):null===(C=q.alert)||void 0===C?void 0:C.emptyMessage}):p(u,{children:[p(n,{size:16,className:l.title,children:[null===(f=q.alert)||void 0===f?void 0:f.name,a(s,{title:"Go to Data Quality page",children:a(c,{href:q.linkToDQPage,onClick:function(){var o,s;null===(o=(s=window)[Symbol.for("logToMixpanel")])||void 0===o||o.call(s,r.REDIRECT.ASSET_DASHBOARD,{referer:"DQ Badge"})},children:a(i,{size:"medium",type:"secondary",children:a(e,{})})})})]}),p("div",{className:l.items,children:[a(v,{label:"Category:",children:null===(y=q.alert)||void 0===y?void 0:y.category}),a(v,{label:"Status:",className:l.status,children:null===(D=q.alert)||void 0===D?void 0:D.status}),p(v,{label:"Error Type:",className:"Issue"===(null===(F=q.alert)||void 0===F?void 0:F.state)?l.typeWarning:l.typeError,children:[a(t,{statusBadgeIconType:"Issue"===(null===(A=q.alert)||void 0===A?void 0:A.state)?"issue":"error",className:l.typeIcon}),null===(T=q.alert)||void 0===T?void 0:T.state]}),a(v,{label:"Score Deduction:",className:(E=null===(M=q.alert)||void 0===M?void 0:M.deductsFromScore,z="resolved"===(null===(S=q.alert)||void 0===S?void 0:S.status),z||!E?"":E>40?l.deductError:E>10?l.deductWarning:E>5?l.deductOk:l.deductGood),children:"resolved"!==(null===(x=q.alert)||void 0===x?void 0:x.status)&&null!==(O=q.alert)&&void 0!==O&&O.deductsFromScore&&(null===(P=q.alert)||void 0===P?void 0:P.deductsFromScore)>=0?"".concat(null===(N=q.alert)||void 0===N?void 0:N.deductsFromScore,"%"):"—"}),p(v,{className:l.alertMessage,children:[(null===(k=q.alert)||void 0===k?void 0:k.isThrottled)&&a("b",{children:"[Throttled]: "}),a(I,{message:null===(R=q.alert)||void 0===R?void 0:R.message})]}),a(v,{label:"Note:",children:(null===(U=q.alert)||void 0===U?void 0:U.note)||"—"}),a(v,{label:"Updated at:",children:W})]})]})});return a(s,{title:L,placement:"right",interactive:!0,className:l.root,children:G})};export{h as DqAlertTooltip};
|
|
2
2
|
//# sourceMappingURL=DqAlertTooltip.js.map
|