@corva/ui 3.55.0-4 → 3.55.0-6

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.
Files changed (43) hide show
  1. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  2. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  3. package/cjs-bundle/components/FeedItem/FeedItem.js +1 -1
  4. package/cjs-bundle/components/FeedItem/FeedItem.js.map +1 -1
  5. package/cjs-bundle/components/FeedItem/components/Reactions.js +1 -1
  6. package/cjs-bundle/components/FeedItem/components/Reactions.js.map +1 -1
  7. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/FilterStoreWrapper/FilterStoreWrapper.js +1 -1
  8. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
  9. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.js +2 -0
  10. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.js.map +1 -0
  11. package/cjs-bundle/components/OffsetWellPickerV5/stores/filter-store/FilterStoreProvider.js +1 -1
  12. package/cjs-bundle/components/OffsetWellPickerV5/stores/filter-store/createFilterStore.js +1 -1
  13. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.d.ts +2 -1
  14. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.d.ts.map +1 -1
  15. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  16. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  17. package/components/FeedItem/FeedItem.d.ts +3 -1
  18. package/components/FeedItem/FeedItem.d.ts.map +1 -1
  19. package/components/FeedItem/FeedItem.js +1 -1
  20. package/components/FeedItem/FeedItem.js.map +1 -1
  21. package/components/FeedItem/components/Reactions.d.ts +2 -1
  22. package/components/FeedItem/components/Reactions.d.ts.map +1 -1
  23. package/components/FeedItem/components/Reactions.js +1 -1
  24. package/components/FeedItem/components/Reactions.js.map +1 -1
  25. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/FilterStoreWrapper/FilterStoreWrapper.d.ts.map +1 -1
  26. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/FilterStoreWrapper/FilterStoreWrapper.js +1 -1
  27. package/components/OffsetWellPickerV5/hooks/useCompanies.d.ts.map +1 -1
  28. package/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
  29. package/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.d.ts +7 -0
  30. package/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.d.ts.map +1 -0
  31. package/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.js +2 -0
  32. package/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.js.map +1 -0
  33. package/components/OffsetWellPickerV5/stores/filter-store/FilterStoreProvider.d.ts +1 -0
  34. package/components/OffsetWellPickerV5/stores/filter-store/FilterStoreProvider.d.ts.map +1 -1
  35. package/components/OffsetWellPickerV5/stores/filter-store/FilterStoreProvider.js +1 -1
  36. package/components/OffsetWellPickerV5/stores/filter-store/__tests__/FilterStoreProvider.test.d.ts +2 -0
  37. package/components/OffsetWellPickerV5/stores/filter-store/__tests__/FilterStoreProvider.test.d.ts.map +1 -0
  38. package/components/OffsetWellPickerV5/stores/filter-store/createFilterStore.js +1 -1
  39. package/components/OffsetWellPickerV5/stores/filter-store/types.d.ts +1 -0
  40. package/components/OffsetWellPickerV5/stores/filter-store/types.d.ts.map +1 -1
  41. package/mcp-server/server.mjs +83 -1
  42. package/package.json +1 -1
  43. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FeedItem.js","sources":["../../../src/components/FeedItem/FeedItem.js"],"sourcesContent":["import { useRef, useState } from 'react';\nimport classNames from 'classnames';\nimport { Divider, makeStyles, Paper, Typography } from '@material-ui/core';\nimport { get, includes, noop, startCase } from 'lodash';\nimport grey from '@material-ui/core/colors/grey';\n\nimport { useDevCenterRouter } from '../DevCenter';\n\nimport Actions from './components/Actions';\nimport FeedComments from './components/FeedComments';\nimport Content from './components/Content';\nimport CreatedAt from './components/CreatedAt';\nimport Icon from './components/Icon';\nimport Reactions from './components/Reactions';\nimport RigAndWell from './components/RigAndWell';\nimport TypeAndAssetTitle from './components/TypeAndAssetTitle';\nimport CompletionDateTimestamp from './components/CompletionDateTimestamp';\n\nimport styles from './FeedItem.css';\n\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport ConfirmationDialog from '~/components/ConfirmationDialog';\nimport LoadingIndicator from '~/components/LoadingIndicator';\nimport ErrorBoundary from '~/components/ErrorBoundary';\nimport { useIsInsideIsolatedDcApp } from '~/components/DevCenter/DevCenterAppContainer/components';\nimport { FEED_ITEM_TYPES, FEED_ITEM_TYPES_BY_KEY } from '~/constants/feed';\nimport { deleteFeedItem, toggleFeedItemLike } from '~/clients/jsonApi';\nimport { showSuccessNotification } from '~/utils';\nimport utils from '~/utils/main';\nimport { OPEN_ALERT_DETAILS_ID_STORAGE_KEY } from '~/constants/alerts';\n\nconst PAGE_NAME = 'FeedPo';\n\nconst useStyles = makeStyles(theme => ({\n paperRoot: {\n position: 'relative',\n marginBottom: 10,\n paddingBottom: 16,\n backgroundColor: ({ isInsideDcApp }) =>\n isInsideDcApp ? 'rgba(65, 65, 65, 0.9)' : theme.palette.background.b8,\n width: ({ isInsideDcApp }) => (isInsideDcApp ? 360 : '100%'),\n boxShadow: ({ isInsideDcApp }) =>\n isInsideDcApp &&\n '0px 8px 10px rgba(0, 0, 0, 0.14), 0px 3px 14px rgba(0, 0, 0, 0.12), 0px 5px 5px rgba(0, 0, 0, 0.2)',\n },\n clickablePaperRoot: {\n '&:hover': {\n filter: 'brightness(90%)',\n transition: 'filter 0.3s',\n },\n },\n headerDividerRoot: {\n margin: '8px 0 8px 0',\n backgroundColor: '#595959',\n },\n dateTimestamp: {\n color: theme.palette.primary.text6,\n '& span': {\n color: theme.palette.primary.contrastText,\n },\n },\n}));\n\n/**\n * @typedef {object} ActivityItem\n * @property {number} id\n * @property {string} type\n * @property {Record<string, any>} [context]\n * @property {Array<'update' | 'destroy' | 'like'>} [allowed_actions]\n * @property {number} [company_id]\n * @property {number} [asset_id] is not received from the back but have to be provided while saving activities\n * @property {any} [rig]\n * @property {any} [well]\n * @property {string} [updated_at]\n * @property {any} [segment]\n * @property {boolean} [liked]\n * @property {any[]} [likes]\n * @property {number} [likes_count]\n * @property {any[]} [mentioned_users]\n */\n\n/**\n * @param {object} props\n * @param {ActivityItem} props.feedItem\n * @param {string[]} [props.editableFeedItemTypes]\n * @param {(feedItemId: number) => void} [props.removeFeedItem] called after a feed item was removed by a user\n * @param {(feedItem: ActivityItem) => void} [props.enterEditMode] called when a used clicks \"Edit\" menu item\n * @param {any} [props.router]\n * @param {any} props.currentUser used to display Avatar and to determine the ability to edit comments\n * @param {any} [props.appData] passed to body Template\n * @param {Record<string, any>} [props.customFeedItemTypeTemplates]\n * @param {string} [props.paperClassName]\n * @param {any} [props.getFeedItemMessage] used only to create a data-testid attribute\n * @param {(feedItem: ActivityItem) => void} [props.onFeedItemClick]\n * used to override built-in navigation for clickable alert feed items\n */\nfunction FeedItem({\n feedItem,\n editableFeedItemTypes = [FEED_ITEM_TYPES.POST],\n removeFeedItem = noop,\n enterEditMode = noop,\n router,\n currentUser,\n appData,\n customFeedItemTypeTemplates = {},\n paperClassName,\n getFeedItemMessage = ({ context }) => context?.post?.body || context?.dvd_comment?.body,\n onFeedItemClick,\n ...props\n}) {\n const isCorvaV3FeaturesEnabled = get(currentUser, [\n 'settings',\n 'uiSettings',\n 'corva_v3_features_enabled',\n ]);\n\n const canDeleteFeedItem = includes(feedItem.allowed_actions, 'destroy');\n\n const isInsideDcApp = useIsInsideIsolatedDcApp();\n const classes = useStyles({ isInsideDcApp });\n const [isLoading, setIsLoading] = useState(false);\n const [openCommentInput, setOpenCommentInput] = useState(true);\n const [openCommentList, setOpenCommentList] = useState(true);\n const [openDeleteDialog, setOpenDeleteDialog] = useState(false);\n\n const isPost = feedItem.type === FEED_ITEM_TYPES_BY_KEY.post.type;\n const isEditableItem = editableFeedItemTypes.includes(feedItem.type);\n\n const isGeosteering = feedItem.type === FEED_ITEM_TYPES_BY_KEY.geosteering_comments.type;\n const isRecommended =\n isGeosteering && feedItem.context?.geosteering_comments?.data?.isRecommendation;\n\n const typeCategory = FEED_ITEM_TYPES_BY_KEY[feedItem.type]?.category || 'post';\n\n const userFullName = utils.getUserFullName(feedItem.user);\n const typeLabel = FEED_ITEM_TYPES_BY_KEY[feedItem.type]?.showCreatorToLabel\n ? userFullName\n : FEED_ITEM_TYPES_BY_KEY[feedItem.type]?.label || startCase(feedItem.type);\n\n const feedItemSourceLink =\n feedItem.type === FEED_ITEM_TYPES_BY_KEY.alert.type && `/alerts/${feedItem.context?.alert?.id}`;\n\n const isFeedItemClickable =\n feedItem.type === FEED_ITEM_TYPES_BY_KEY.alert.type && feedItemSourceLink;\n\n const handleDeleteFeedItem = async () => {\n setIsLoading(true);\n\n try {\n await deleteFeedItem(feedItem.id);\n } catch (e) {\n return;\n } finally {\n setIsLoading(false);\n }\n\n showSuccessNotification('Item was deleted');\n\n removeFeedItem(feedItem.id);\n };\n\n const isBeingLikedRef = useRef(false);\n\n const handleToggleLike = async () => {\n if (!isBeingLikedRef.current) {\n const feedItemId = feedItem.id;\n isBeingLikedRef.current = true;\n try {\n await toggleFeedItemLike(feedItemId); // NOTE: Received through subscription\n } catch (e) {\n // NOTE: Do nothing\n }\n isBeingLikedRef.current = false;\n }\n };\n\n const handleEditMenuItem = () => {\n enterEditMode(feedItem);\n };\n\n const handleDeleteMenuItem = () => {\n setOpenDeleteDialog(true);\n };\n\n const copyFeedItemLink = () => {\n const feedId = feedItem.id;\n const text = `${window.location.host}/feed/${feedId}`;\n\n utils.copyToClipboard(text);\n };\n\n const handleDelete = () => {\n handleDeleteFeedItem();\n };\n\n const devCenterRouter = useDevCenterRouter();\n\n const handleMainContainerClick = () => {\n if (!isFeedItemClickable) return;\n\n if (onFeedItemClick) {\n onFeedItemClick(feedItem);\n return;\n }\n\n if (isCorvaV3FeaturesEnabled)\n localStorage.setItem(OPEN_ALERT_DETAILS_ID_STORAGE_KEY, feedItem.context.alert.id);\n else (router || devCenterRouter).push(feedItemSourceLink);\n };\n\n const getRigName = feedItem => {\n const isRigBasedItem = !!feedItem.rig;\n return isRigBasedItem ? feedItem.rig?.name : feedItem.well?.parent_asset?.name;\n };\n\n return (\n <Paper\n data-testid={`${PAGE_NAME}_post_${getFeedItemMessage(feedItem)}_rigName_${getRigName(\n feedItem\n )}`}\n className={classNames(classes.paperRoot, paperClassName, {\n [classes.clickablePaperRoot]: isFeedItemClickable,\n [styles.hideOverflow]: isLoading,\n })}\n elevation={0}\n >\n <div\n onClick={handleMainContainerClick}\n className={classNames(styles.mainContainer, {\n [styles.mainContainerClickable]: isFeedItemClickable,\n [styles.mainContainerNative]: isNativeDetected,\n })}\n >\n <Icon\n feedItem={feedItem}\n classes={classes}\n displayName={userFullName}\n isRecommended={isRecommended}\n currentUser={currentUser}\n />\n <div\n className={classNames(styles.mainContainerTop, {\n [styles.mainContainerTopNative]: isNativeDetected,\n })}\n >\n <div className={styles.mainContainerTopLine}>\n <TypeAndAssetTitle\n feedItem={feedItem}\n userFullName={userFullName}\n typeLabel={typeLabel}\n classes={classes}\n isPost={isPost}\n />\n <div className={styles.mainContainerTopMenu}>\n <CreatedAt feedItem={feedItem} classes={classes} />\n\n <Actions\n data-testid={`${PAGE_NAME}_actionsDropdown`}\n isPost={isPost}\n isEditableItem={isEditableItem}\n canDeleteFeedItem={canDeleteFeedItem}\n handleEditMenuItem={handleEditMenuItem}\n handleDeleteMenuItem={handleDeleteMenuItem}\n copyFeedItemLink={copyFeedItemLink}\n feedItem={feedItem}\n currentUser={currentUser}\n />\n </div>\n </div>\n\n <RigAndWell feedItem={feedItem} isPost={isPost} />\n </div>\n <Divider className={classes.headerDividerRoot} />\n <CompletionDateTimestamp feedItem={feedItem} />\n <ErrorBoundary ErrorView={() => <Typography>Feed Item loading failed</Typography>}>\n <Content\n feedItem={feedItem}\n appData={appData}\n customFeedItemTypeTemplates={customFeedItemTypeTemplates}\n currentUser={currentUser}\n isCorvaV3FeaturesEnabled={isCorvaV3FeaturesEnabled}\n onFeedItemClick={onFeedItemClick}\n {...props}\n />\n </ErrorBoundary>\n </div>\n <Reactions\n feedItem={feedItem}\n handleToggleLike={handleToggleLike}\n setOpenCommentInput={setOpenCommentInput}\n setOpenCommentList={setOpenCommentList}\n openCommentInput={openCommentInput}\n openCommentList={openCommentList}\n currentUser={currentUser}\n />\n <FeedComments\n openCommentInput={openCommentInput}\n openCommentList={openCommentList}\n feedItem={feedItem}\n currentUser={currentUser}\n />\n {isLoading && ( // NOTE: Avoids feed item height change\n <div className={styles.loadingContainer} style={{ backgroundColor: grey[800] }}>\n <LoadingIndicator />\n </div>\n )}\n {openDeleteDialog && (\n <ConfirmationDialog\n open={openDeleteDialog}\n title={`Delete ${typeCategory}`}\n text={`Are you sure you want to delete ${typeCategory} and all attachments?`}\n handleClose={() => setOpenDeleteDialog(false)}\n handleOk={handleDelete}\n okText=\"Delete\"\n />\n )}\n </Paper>\n );\n}\n\nexport default FeedItem;\n"],"names":["useStyles","makeStyles","theme","paperRoot","position","marginBottom","paddingBottom","backgroundColor","_ref","isInsideDcApp","palette","background","b8","width","_ref2","boxShadow","_ref3","clickablePaperRoot","filter","transition","headerDividerRoot","margin","dateTimestamp","color","primary","text6","contrastText","FeedItem","_ref4","_feedItem$context","_feedItem$context$geo","_feedItem$context$geo2","_FEED_ITEM_TYPES_BY_K","_FEED_ITEM_TYPES_BY_K2","_FEED_ITEM_TYPES_BY_K3","_feedItem$context2","_feedItem$context2$al","_classNames","_classNames2","_ref6","_ref7","feedItem","_ref4$editableFeedIte","editableFeedItemTypes","FEED_ITEM_TYPES","POST","_ref4$removeFeedItem","removeFeedItem","noop","_ref4$enterEditMode","enterEditMode","router","currentUser","appData","_ref4$customFeedItemT","customFeedItemTypeTemplates","paperClassName","_ref4$getFeedItemMess","getFeedItemMessage","_ref5","_context$post","_context$dvd_comment","context","post","body","dvd_comment","onFeedItemClick","props","_objectWithoutProperties","_excluded","isCorvaV3FeaturesEnabled","get","canDeleteFeedItem","includes","allowed_actions","useIsInsideIsolatedDcApp","classes","useState","_useState2","_slicedToArray","_useState","isLoading","setIsLoading","_useState4","_useState3","openCommentInput","setOpenCommentInput","_useState6","_useState5","openCommentList","setOpenCommentList","_useState8","_useState7","openDeleteDialog","setOpenDeleteDialog","isPost","type","FEED_ITEM_TYPES_BY_KEY","isEditableItem","isRecommended","geosteering_comments","data","isRecommendation","typeCategory","category","userFullName","utils","getUserFullName","user","typeLabel","showCreatorToLabel","label","startCase","feedItemSourceLink","alert","id","isFeedItemClickable","handleDeleteFeedItem","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","deleteFeedItem","t0","abrupt","finish","showSuccessNotification","stop","apply","this","arguments","isBeingLikedRef","useRef","handleToggleLike","_callee2","feedItemId","_context2","current","toggleFeedItemLike","devCenterRouter","useDevCenterRouter","_jsxs","Paper","PAGE_NAME","concat","_feedItem$rig","_feedItem$well","_feedItem$well$parent","rig","name","well","parent_asset","getRigName","className","classNames","styles","hideOverflow","elevation","children","onClick","localStorage","setItem","OPEN_ALERT_DETAILS_ID_STORAGE_KEY","push","mainContainer","mainContainerClickable","mainContainerNative","isNativeDetected","_jsx","Icon","displayName","mainContainerTop","mainContainerTopNative","mainContainerTopLine","TypeAndAssetTitle","mainContainerTopMenu","CreatedAt","Actions","handleEditMenuItem","handleDeleteMenuItem","copyFeedItemLink","feedId","text","window","location","host","copyToClipboard","RigAndWell","Divider","CompletionDateTimestamp","ErrorBoundary","ErrorView","Typography","Content","_objectSpread","Reactions","FeedComments","loadingContainer","style","grey","LoadingIndicator","ConfirmationDialog","open","title","handleClose","handleOk","okText"],"mappings":"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"}
1
+ {"version":3,"file":"FeedItem.js","sources":["../../../src/components/FeedItem/FeedItem.js"],"sourcesContent":["import { useRef, useState } from 'react';\nimport classNames from 'classnames';\nimport { Divider, makeStyles, Paper, Typography } from '@material-ui/core';\nimport { get, includes, noop, startCase } from 'lodash';\nimport grey from '@material-ui/core/colors/grey';\n\nimport { useDevCenterRouter } from '../DevCenter';\n\nimport Actions from './components/Actions';\nimport FeedComments from './components/FeedComments';\nimport Content from './components/Content';\nimport CreatedAt from './components/CreatedAt';\nimport Icon from './components/Icon';\nimport Reactions from './components/Reactions';\nimport RigAndWell from './components/RigAndWell';\nimport TypeAndAssetTitle from './components/TypeAndAssetTitle';\nimport CompletionDateTimestamp from './components/CompletionDateTimestamp';\n\nimport styles from './FeedItem.css';\n\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport ConfirmationDialog from '~/components/ConfirmationDialog';\nimport LoadingIndicator from '~/components/LoadingIndicator';\nimport ErrorBoundary from '~/components/ErrorBoundary';\nimport { useIsInsideIsolatedDcApp } from '~/components/DevCenter/DevCenterAppContainer/components';\nimport { FEED_ITEM_TYPES, FEED_ITEM_TYPES_BY_KEY } from '~/constants/feed';\nimport { deleteFeedItem, toggleFeedItemLike } from '~/clients/jsonApi';\nimport { showSuccessNotification } from '~/utils';\nimport utils from '~/utils/main';\nimport { OPEN_ALERT_DETAILS_ID_STORAGE_KEY } from '~/constants/alerts';\n\nconst PAGE_NAME = 'FeedPo';\n\nconst useStyles = makeStyles(theme => ({\n paperRoot: {\n position: 'relative',\n marginBottom: 10,\n paddingBottom: 16,\n backgroundColor: ({ isInsideDcApp }) =>\n isInsideDcApp ? 'rgba(65, 65, 65, 0.9)' : theme.palette.background.b8,\n width: ({ isInsideDcApp }) => (isInsideDcApp ? 360 : '100%'),\n boxShadow: ({ isInsideDcApp }) =>\n isInsideDcApp &&\n '0px 8px 10px rgba(0, 0, 0, 0.14), 0px 3px 14px rgba(0, 0, 0, 0.12), 0px 5px 5px rgba(0, 0, 0, 0.2)',\n },\n clickablePaperRoot: {\n '&:hover': {\n filter: 'brightness(90%)',\n transition: 'filter 0.3s',\n },\n },\n headerDividerRoot: {\n margin: '8px 0 8px 0',\n backgroundColor: '#595959',\n },\n dateTimestamp: {\n color: theme.palette.primary.text6,\n '& span': {\n color: theme.palette.primary.contrastText,\n },\n },\n}));\n\n/**\n * @typedef {object} ActivityItem\n * @property {number} id\n * @property {string} type\n * @property {Record<string, any>} [context]\n * @property {Array<'update' | 'destroy' | 'like'>} [allowed_actions]\n * @property {number} [company_id]\n * @property {number} [asset_id] is not received from the back but have to be provided while saving activities\n * @property {any} [rig]\n * @property {any} [well]\n * @property {string} [updated_at]\n * @property {any} [segment]\n * @property {boolean} [liked]\n * @property {any[]} [likes]\n * @property {number} [likes_count]\n * @property {any[]} [mentioned_users]\n */\n\n/**\n * @param {object} props\n * @param {ActivityItem} props.feedItem\n * @param {string[]} [props.editableFeedItemTypes]\n * @param {(feedItemId: number) => void} [props.removeFeedItem] called after a feed item was removed by a user\n * @param {(feedItem: ActivityItem) => void} [props.enterEditMode] called when a used clicks \"Edit\" menu item\n * @param {any} [props.router]\n * @param {any} props.currentUser used to display Avatar and to determine the ability to edit comments\n * @param {any} [props.appData] passed to body Template\n * @param {Record<string, any>} [props.customFeedItemTypeTemplates]\n * @param {string} [props.paperClassName]\n * @param {any} [props.getFeedItemMessage] used only to create a data-testid attribute\n * @param {(feedItem: ActivityItem) => void} [props.onFeedItemClick]\n * used to override built-in navigation for clickable alert feed items\n * @param {ReactNode} [props.extraActions] additional action nodes rendered inside the reactions/actions row, after the built-in like and comment buttons\n */\nfunction FeedItem({\n feedItem,\n editableFeedItemTypes = [FEED_ITEM_TYPES.POST],\n removeFeedItem = noop,\n enterEditMode = noop,\n router,\n currentUser,\n appData,\n customFeedItemTypeTemplates = {},\n paperClassName,\n getFeedItemMessage = ({ context }) => context?.post?.body || context?.dvd_comment?.body,\n onFeedItemClick,\n extraActions,\n ...props\n}) {\n const isCorvaV3FeaturesEnabled = get(currentUser, [\n 'settings',\n 'uiSettings',\n 'corva_v3_features_enabled',\n ]);\n\n const canDeleteFeedItem = includes(feedItem.allowed_actions, 'destroy');\n\n const isInsideDcApp = useIsInsideIsolatedDcApp();\n const classes = useStyles({ isInsideDcApp });\n const [isLoading, setIsLoading] = useState(false);\n const [openCommentInput, setOpenCommentInput] = useState(true);\n const [openCommentList, setOpenCommentList] = useState(true);\n const [openDeleteDialog, setOpenDeleteDialog] = useState(false);\n\n const isPost = feedItem.type === FEED_ITEM_TYPES_BY_KEY.post.type;\n const isEditableItem = editableFeedItemTypes.includes(feedItem.type);\n\n const isGeosteering = feedItem.type === FEED_ITEM_TYPES_BY_KEY.geosteering_comments.type;\n const isRecommended =\n isGeosteering && feedItem.context?.geosteering_comments?.data?.isRecommendation;\n\n const typeCategory = FEED_ITEM_TYPES_BY_KEY[feedItem.type]?.category || 'post';\n\n const userFullName = utils.getUserFullName(feedItem.user);\n const typeLabel = FEED_ITEM_TYPES_BY_KEY[feedItem.type]?.showCreatorToLabel\n ? userFullName\n : FEED_ITEM_TYPES_BY_KEY[feedItem.type]?.label || startCase(feedItem.type);\n\n const feedItemSourceLink =\n feedItem.type === FEED_ITEM_TYPES_BY_KEY.alert.type && `/alerts/${feedItem.context?.alert?.id}`;\n\n const isFeedItemClickable =\n feedItem.type === FEED_ITEM_TYPES_BY_KEY.alert.type && feedItemSourceLink;\n\n const handleDeleteFeedItem = async () => {\n setIsLoading(true);\n\n try {\n await deleteFeedItem(feedItem.id);\n } catch (e) {\n return;\n } finally {\n setIsLoading(false);\n }\n\n showSuccessNotification('Item was deleted');\n\n removeFeedItem(feedItem.id);\n };\n\n const isBeingLikedRef = useRef(false);\n\n const handleToggleLike = async () => {\n if (!isBeingLikedRef.current) {\n const feedItemId = feedItem.id;\n isBeingLikedRef.current = true;\n try {\n await toggleFeedItemLike(feedItemId); // NOTE: Received through subscription\n } catch (e) {\n // NOTE: Do nothing\n }\n isBeingLikedRef.current = false;\n }\n };\n\n const handleEditMenuItem = () => {\n enterEditMode(feedItem);\n };\n\n const handleDeleteMenuItem = () => {\n setOpenDeleteDialog(true);\n };\n\n const copyFeedItemLink = () => {\n const feedId = feedItem.id;\n const text = `${window.location.host}/feed/${feedId}`;\n\n utils.copyToClipboard(text);\n };\n\n const handleDelete = () => {\n handleDeleteFeedItem();\n };\n\n const devCenterRouter = useDevCenterRouter();\n\n const handleMainContainerClick = () => {\n if (!isFeedItemClickable) return;\n\n if (onFeedItemClick) {\n onFeedItemClick(feedItem);\n return;\n }\n\n if (isCorvaV3FeaturesEnabled)\n localStorage.setItem(OPEN_ALERT_DETAILS_ID_STORAGE_KEY, feedItem.context.alert.id);\n else (router || devCenterRouter).push(feedItemSourceLink);\n };\n\n const getRigName = feedItem => {\n const isRigBasedItem = !!feedItem.rig;\n return isRigBasedItem ? feedItem.rig?.name : feedItem.well?.parent_asset?.name;\n };\n\n return (\n <Paper\n data-testid={`${PAGE_NAME}_post_${getFeedItemMessage(feedItem)}_rigName_${getRigName(\n feedItem\n )}`}\n className={classNames(classes.paperRoot, paperClassName, {\n [classes.clickablePaperRoot]: isFeedItemClickable,\n [styles.hideOverflow]: isLoading,\n })}\n elevation={0}\n >\n <div\n onClick={handleMainContainerClick}\n className={classNames(styles.mainContainer, {\n [styles.mainContainerClickable]: isFeedItemClickable,\n [styles.mainContainerNative]: isNativeDetected,\n })}\n >\n <Icon\n feedItem={feedItem}\n classes={classes}\n displayName={userFullName}\n isRecommended={isRecommended}\n currentUser={currentUser}\n />\n <div\n className={classNames(styles.mainContainerTop, {\n [styles.mainContainerTopNative]: isNativeDetected,\n })}\n >\n <div className={styles.mainContainerTopLine}>\n <TypeAndAssetTitle\n feedItem={feedItem}\n userFullName={userFullName}\n typeLabel={typeLabel}\n classes={classes}\n isPost={isPost}\n />\n <div className={styles.mainContainerTopMenu}>\n <CreatedAt feedItem={feedItem} classes={classes} />\n\n <Actions\n data-testid={`${PAGE_NAME}_actionsDropdown`}\n isPost={isPost}\n isEditableItem={isEditableItem}\n canDeleteFeedItem={canDeleteFeedItem}\n handleEditMenuItem={handleEditMenuItem}\n handleDeleteMenuItem={handleDeleteMenuItem}\n copyFeedItemLink={copyFeedItemLink}\n feedItem={feedItem}\n currentUser={currentUser}\n />\n </div>\n </div>\n\n <RigAndWell feedItem={feedItem} isPost={isPost} />\n </div>\n <Divider className={classes.headerDividerRoot} />\n <CompletionDateTimestamp feedItem={feedItem} />\n <ErrorBoundary ErrorView={() => <Typography>Feed Item loading failed</Typography>}>\n <Content\n feedItem={feedItem}\n appData={appData}\n customFeedItemTypeTemplates={customFeedItemTypeTemplates}\n currentUser={currentUser}\n isCorvaV3FeaturesEnabled={isCorvaV3FeaturesEnabled}\n onFeedItemClick={onFeedItemClick}\n {...props}\n />\n </ErrorBoundary>\n </div>\n <Reactions\n feedItem={feedItem}\n handleToggleLike={handleToggleLike}\n setOpenCommentInput={setOpenCommentInput}\n setOpenCommentList={setOpenCommentList}\n openCommentInput={openCommentInput}\n openCommentList={openCommentList}\n currentUser={currentUser}\n extraActions={extraActions}\n />\n <FeedComments\n openCommentInput={openCommentInput}\n openCommentList={openCommentList}\n feedItem={feedItem}\n currentUser={currentUser}\n />\n {isLoading && ( // NOTE: Avoids feed item height change\n <div className={styles.loadingContainer} style={{ backgroundColor: grey[800] }}>\n <LoadingIndicator />\n </div>\n )}\n {openDeleteDialog && (\n <ConfirmationDialog\n open={openDeleteDialog}\n title={`Delete ${typeCategory}`}\n text={`Are you sure you want to delete ${typeCategory} and all attachments?`}\n handleClose={() => setOpenDeleteDialog(false)}\n handleOk={handleDelete}\n okText=\"Delete\"\n />\n )}\n </Paper>\n );\n}\n\nexport default FeedItem;\n"],"names":["useStyles","makeStyles","theme","paperRoot","position","marginBottom","paddingBottom","backgroundColor","_ref","isInsideDcApp","palette","background","b8","width","_ref2","boxShadow","_ref3","clickablePaperRoot","filter","transition","headerDividerRoot","margin","dateTimestamp","color","primary","text6","contrastText","FeedItem","_ref4","_feedItem$context","_feedItem$context$geo","_feedItem$context$geo2","_FEED_ITEM_TYPES_BY_K","_FEED_ITEM_TYPES_BY_K2","_FEED_ITEM_TYPES_BY_K3","_feedItem$context2","_feedItem$context2$al","_classNames","_classNames2","_ref6","_ref7","feedItem","_ref4$editableFeedIte","editableFeedItemTypes","FEED_ITEM_TYPES","POST","_ref4$removeFeedItem","removeFeedItem","noop","_ref4$enterEditMode","enterEditMode","router","currentUser","appData","_ref4$customFeedItemT","customFeedItemTypeTemplates","paperClassName","_ref4$getFeedItemMess","getFeedItemMessage","_ref5","_context$post","_context$dvd_comment","context","post","body","dvd_comment","onFeedItemClick","extraActions","props","_objectWithoutProperties","_excluded","isCorvaV3FeaturesEnabled","get","canDeleteFeedItem","includes","allowed_actions","useIsInsideIsolatedDcApp","classes","useState","_useState2","_slicedToArray","_useState","isLoading","setIsLoading","_useState4","_useState3","openCommentInput","setOpenCommentInput","_useState6","_useState5","openCommentList","setOpenCommentList","_useState8","_useState7","openDeleteDialog","setOpenDeleteDialog","isPost","type","FEED_ITEM_TYPES_BY_KEY","isEditableItem","isRecommended","geosteering_comments","data","isRecommendation","typeCategory","category","userFullName","utils","getUserFullName","user","typeLabel","showCreatorToLabel","label","startCase","feedItemSourceLink","alert","id","isFeedItemClickable","handleDeleteFeedItem","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","deleteFeedItem","t0","abrupt","finish","showSuccessNotification","stop","apply","this","arguments","isBeingLikedRef","useRef","handleToggleLike","_callee2","feedItemId","_context2","current","toggleFeedItemLike","devCenterRouter","useDevCenterRouter","_jsxs","Paper","PAGE_NAME","concat","_feedItem$rig","_feedItem$well","_feedItem$well$parent","rig","name","well","parent_asset","getRigName","className","classNames","styles","hideOverflow","elevation","children","onClick","localStorage","setItem","OPEN_ALERT_DETAILS_ID_STORAGE_KEY","push","mainContainer","mainContainerClickable","mainContainerNative","isNativeDetected","_jsx","Icon","displayName","mainContainerTop","mainContainerTopNative","mainContainerTopLine","TypeAndAssetTitle","mainContainerTopMenu","CreatedAt","Actions","handleEditMenuItem","handleDeleteMenuItem","copyFeedItemLink","feedId","text","window","location","host","copyToClipboard","RigAndWell","Divider","CompletionDateTimestamp","ErrorBoundary","ErrorView","Typography","Content","_objectSpread","Reactions","FeedComments","loadingContainer","style","grey","LoadingIndicator","ConfirmationDialog","open","title","handleClose","handleOk","okText"],"mappings":"uueA+BA,IAEMA,EAAYC,GAAW,SAAAC,GAAK,MAAK,CACrCC,UAAW,CACTC,SAAU,WACVC,aAAc,GACdC,cAAe,GACfC,gBAAiB,SAAAC,GAAgB,SAAbC,cACF,wBAA0BP,EAAMQ,QAAQC,WAAWC,EAAE,EACvEC,MAAO,SAAAC,GAAgB,SAAbL,cAAqC,IAAM,MAAO,EAC5DM,UAAW,SAAAC,GAAgB,SAAbP,eAEZ,oGAAoG,GAExGQ,mBAAoB,CAClB,UAAW,CACTC,OAAQ,kBACRC,WAAY,gBAGhBC,kBAAmB,CACjBC,OAAQ,cACRd,gBAAiB,WAEnBe,cAAe,CACbC,MAAOrB,EAAMQ,QAAQc,QAAQC,MAC7B,SAAU,CACRF,MAAOrB,EAAMQ,QAAQc,QAAQE,eAGlC,IAoCD,SAASC,EAcNC,GAAA,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,GAoC4BC,GAkBJC,GAnEzBC,KAAAA,SAAQC,GAAAd,EACRe,sBAAAA,QAAwB,IAAAD,GAAA,CAACE,EAAgBC,MAAKH,GAAAI,GAAAlB,EAC9CmB,eAAAA,eAAiBC,EAAIF,GAAAG,GAAArB,EACrBsB,cAAAA,eAAgBF,EAAIC,GACpBE,KAAAA,OACAC,KAAAA,YACAC,KAAAA,QAAOC,GAAA1B,EACP2B,4BAAAA,QAA2B,IAAAD,GAAG,CAAE,EAAAA,GAChCE,KAAAA,eAAcC,GAAA7B,EACd8B,mBAAAA,QAAqB,IAAAD,GAAA,SAAAE,GAAA,IAAAC,EAAAC,EAAGC,IAAAA,QAAO,OAAOA,SAAA,UAAAA,EAASC,YAAT,IAAAH,SAAAA,EAAeI,QAAQF,SAAA,QAAOD,EAAPC,EAASG,mBAAT,IAAAJ,OAAO,EAAPA,EAAsBG,KAAI,EAAAP,GACvFS,KAAAA,gBACAC,KAAAA,aACGC,GAAKC,EAAAzC,EAAA0C,GAEFC,GAA2BC,EAAIpB,GAAa,CAChD,WACA,aACA,8BAGIqB,GAAoBC,EAASjC,GAASkC,gBAAiB,WAEvDlE,GAAgBmE,IAChBC,GAAU7E,EAAU,CAAES,cAAAA,KACMqE,GAAAA,GAAS,GAAMC,GAAAC,EAAAC,GAAA,GAA1CC,GAASH,GAAA,GAAEI,GAAYJ,GAAA,GACkBD,GAAAA,GAAS,GAAKM,GAAAJ,EAAAK,GAAA,GAAvDC,GAAgBF,GAAA,GAAEG,GAAmBH,GAAA,GACEN,GAAAA,GAAS,GAAKU,GAAAR,EAAAS,GAAA,GAArDC,GAAeF,GAAA,GAAEG,GAAkBH,GAAA,GACMV,GAAAA,GAAS,GAAMc,GAAAZ,EAAAa,GAAA,GAAxDC,GAAgBF,GAAA,GAAEG,GAAmBH,GAAA,GAEtCI,GAASvD,GAASwD,OAASC,EAAuBnC,KAAKkC,KACvDE,GAAiBxD,GAAsB+B,SAASjC,GAASwD,MAGzDG,GADgB3D,GAASwD,OAASC,EAAuBG,qBAAqBJ,OAEjE,QAAJpE,EAAIY,GAASqB,eAAT,IAAAjC,GAAA,QAAAC,EAAAD,EAAkBwE,4BAAlB,IAAAvE,GAA4C,QAA5CC,EAAAD,EAAwCwE,YAAI,IAAAvE,OAA5C,EAAAA,EAA8CwE,kBAE3DC,IAAoD,QAArCN,EAAAA,EAAuBzD,GAASwD,aAAK,IAAAjE,OAAA,EAArCA,EAAuCyE,WAAY,OAElEC,GAAeC,EAAMC,gBAAgBnE,GAASoE,MAC9CC,GAAiD,QAArCZ,EAAAA,EAAuBzD,GAASwD,aAAK,IAAAhE,GAArCA,EAAuC8E,mBACrDL,IACA,QAAAR,EAAAA,EAAuBzD,GAASwD,aAAhC,IAAA/D,OAAA,EAAAA,EAAuC8E,QAASC,EAAUxE,GAASwD,MAEjEiB,GACJzE,GAASwD,OAASC,EAAuBiB,MAAMlB,MAAmBxD,WAAAA,OAAgB,QAAhBA,EAAAA,GAASqB,eAAO,IAAA3B,GAAO,QAAPC,EAAhBD,EAAkBgF,aAAK,IAAA/E,OAAP,EAAhBA,EAAyBgF,IAEvFC,GACJ5E,GAASwD,OAASC,EAAuBiB,MAAMlB,MAAQiB,GAEnDI,IAAuB/E,GAAAgF,EAAAC,EAAAC,MAAA,SAAAC,IAAA,OAAAF,EAAAG,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EACR,OAAnB3C,IAAa,GAAMyC,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAGXC,EAAetF,GAAS2E,IAAG,KAAA,EAAAQ,EAAAE,KAAA,EAAA,MAAA,KAAA,EAAA,OAAAF,EAAAC,KAAA,EAAAD,EAAAI,GAAAJ,EAAA,MAAA,GAAAA,EAAAK,OAAA,UAAA,KAAA,EAIb,OAJaL,EAAAC,KAAA,EAIjC1C,IAAa,GAAOyC,EAAAM,OAAA,GAAA,KAAA,GAGtBC,EAAwB,oBAExBpF,GAAeN,GAAS2E,IAAI,KAAA,GAAA,IAAA,MAAA,OAAAQ,EAAAQ,OAAA,GAAAV,EAAA,KAAA,CAAA,CAAA,EAAA,EAAA,EAAA,KAC7B,KAAA,WAdyB,OAAAnF,GAAA8F,MAAAC,KAAAC,UAAA,GAgBpBC,GAAkBC,GAAO,GAEzBC,IAAmBlG,GAAA+E,EAAAC,EAAAC,MAAA,SAAAkB,IAAA,IAAAC,EAAA,OAAApB,EAAAG,MAAA,SAAAkB,GAAA,OAAA,OAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,KAAA,EAAA,GAClBU,GAAgBM,QAAO,CAAAD,EAAAf,KAAA,GAAA,KAAA,CAEK,OADzBc,EAAanG,GAAS2E,GAC5BoB,GAAgBM,SAAU,EAAKD,EAAAhB,KAAA,EAAAgB,EAAAf,KAAA,EAEvBiB,EAAmBH,GAAW,KAAA,EAAAC,EAAAf,KAAA,GAAA,MAAA,KAAA,EAAAe,EAAAhB,KAAA,EAAAgB,EAAAb,GAAAa,EAAA,MAAA,GAAA,KAAA,GAItCL,GAAgBM,SAAU,EAAM,KAAA,GAAA,IAAA,MAAA,OAAAD,EAAAT,OAAA,GAAAO,EAAA,KAAA,CAAA,CAAA,EAAA,IAEnC,KAAA,WAXqB,OAAAnG,GAAA6F,MAAAC,KAAAC,UAAA,GAgChBS,GAAkBC,IAoBxB,OACEC,EAACC,EAAK,CACJ,cAAgBC,GAAAA,OA5LJ,SA4LsB1F,UAAAA,OAAAA,GAAmBjB,IAAS,aAAA4G,OAP/C,SAAA5G,GAAY,IAAA6G,EAAAC,EAAAC,EAE7B,QADyB/G,EAASgH,YACVhH,EAAAA,EAASgH,wBAATH,EAAcI,KAAoB,QAAbjH,EAAAA,EAASkH,YAAI,IAAAJ,GAAc,QAAdC,EAAbD,EAAeK,oBAAY,IAAAJ,OAAd,EAAbA,EAA6BE,KAKEG,CACxEpH,KAEFqH,UAAWC,EAAWlF,GAAQ1E,UAAWqD,IACtCqB,EAAAA,CAAAA,EAAAA,EAAAA,EAAAA,GAAQ5D,mBAAqBoG,IAC7B2C,EAAAA,EAAAA,EAAOC,aAAe/E,IACtB7C,IACH6H,UAAW,EAAEC,SAEb,CAAAjB,EAAA,MAAA,CACEkB,QA9B2B,WAC1B/C,KAEDnD,GACFA,GAAgBzB,IAId8B,GACF8F,aAAaC,QAAQC,EAAmC9H,GAASqB,QAAQqD,MAAMC,KAC3EjE,IAAU6F,IAAiBwB,KAAKtD,MAqBlC4C,UAAWC,EAAWC,EAAOS,0BAC1BT,EAAOU,uBAAyBrD,IAChC2C,EAAAA,GAAAA,EAAOW,oBAAsBC,GAC7BtI,KAAA6H,SAAA,CAEHU,EAACC,EAAI,CACHrI,SAAUA,GACVoC,QAASA,GACTkG,YAAarE,GACbN,cAAeA,GACfhD,YAAaA,KAEf8F,EAAA,MAAA,CACEY,UAAWC,EAAWC,EAAOgB,iBAC1BhB,EAAAA,CAAAA,EAAAA,EAAOiB,uBAAyBL,IAChCT,SAEH,CAAAjB,EAAA,MAAA,CAAKY,UAAWE,EAAOkB,qBAAqBf,SAAA,CAC1CU,EAACM,EAAiB,CAChB1I,SAAUA,GACViE,aAAcA,GACdI,UAAWA,GACXjC,QAASA,GACTmB,OAAQA,KAEVkD,EAAA,MAAA,CAAKY,UAAWE,EAAOoB,qBAAqBjB,SAAA,CAC1CU,EAACQ,EAAS,CAAC5I,SAAUA,GAAUoC,QAASA,KAExCgG,EAACS,EAAO,CACN,cAAA,GAAAjC,OApOE,SAoO0C,oBAC5CrD,OAAQA,GACRG,eAAgBA,GAChB1B,kBAAmBA,GACnB8G,mBArFa,WACzBrI,GAAcT,KAqFF+I,qBAlFe,WAC3BzF,IAAoB,IAkFR0F,iBA/EW,WACvB,IAAMC,EAASjJ,GAAS2E,GAClBuE,YAAUC,OAAOC,SAASC,KAAaJ,UAAAA,OAAAA,GAE7C/E,EAAMoF,gBAAgBJ,IA4EVlJ,SAAUA,GACVW,YAAaA,WAKnByH,EAACmB,EAAU,CAACvJ,SAAUA,GAAUuD,OAAQA,QAE1C6E,EAACoB,EAAO,CAACnC,UAAWjF,GAAQzD,oBAC5ByJ,EAACqB,EAAuB,CAACzJ,SAAUA,KACnCoI,EAACsB,EAAa,CAACC,UAAW,WAAA,OAAMvB,EAACwB,EAAU,CAAAlC,SAAA,4BAAuC,EAAAA,SAChFU,EAACyB,EAAOC,EAAA,CACN9J,SAAUA,GACVY,QAASA,GACTE,4BAA6BA,GAC7BH,YAAaA,GACbmB,yBAA0BA,GAC1BL,gBAAiBA,IACbE,UAIVyG,EAAC2B,EAAS,CACR/J,SAAUA,GACViG,iBAAkBA,GAClBnD,oBAAqBA,GACrBI,mBAAoBA,GACpBL,iBAAkBA,GAClBI,gBAAiBA,GACjBtC,YAAaA,GACbe,aAAcA,KAEhB0G,EAAC4B,EAAY,CACXnH,iBAAkBA,GAClBI,gBAAiBA,GACjBjD,SAAUA,GACVW,YAAaA,KAEd8B,IACC2F,EAAA,MAAA,CAAKf,UAAWE,EAAO0C,iBAAkBC,MAAO,CAAEpM,gBAAiBqM,EAAK,MAAOzC,SAC7EU,EAACgC,EAAgB,MAGpB/G,IACC+E,EAACiC,EAAkB,CACjBC,KAAMjH,GACNkH,MAAK,UAAA3D,OAAY7C,IACjBmF,KAAI,mCAAAtC,OAAqC7C,GAAoC,yBAC7EyG,YAAa,WAAA,OAAMlH,IAAoB,EAAO,EAC9CmH,SA1Ha,WACnB5F,MA0HM6F,OAAO,aAKjB"}
@@ -1,5 +1,5 @@
1
1
  export default Reactions;
2
- declare function Reactions({ feedItem, currentUser, setOpenCommentInput, setOpenCommentList, openCommentInput, openCommentList, handleToggleLike, }: {
2
+ declare function Reactions({ feedItem, currentUser, setOpenCommentInput, setOpenCommentList, openCommentInput, openCommentList, handleToggleLike, extraActions, }: {
3
3
  feedItem: any;
4
4
  currentUser: any;
5
5
  setOpenCommentInput: any;
@@ -7,5 +7,6 @@ declare function Reactions({ feedItem, currentUser, setOpenCommentInput, setOpen
7
7
  openCommentInput: any;
8
8
  openCommentList: any;
9
9
  handleToggleLike: any;
10
+ extraActions: any;
10
11
  }): JSX.Element;
11
12
  //# sourceMappingURL=Reactions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Reactions.d.ts","sourceRoot":"","sources":["../../../../src/components/FeedItem/components/Reactions.js"],"names":[],"mappings":";AAsCA;;;;;;;;gBAkFC"}
1
+ {"version":3,"file":"Reactions.d.ts","sourceRoot":"","sources":["../../../../src/components/FeedItem/components/Reactions.js"],"names":[],"mappings":";AAsCA;;;;;;;;;gBAqFC"}
@@ -1,2 +1,2 @@
1
- import e from"@babel/runtime/helpers/defineProperty";import t from"classnames";import i from"moment";import{uniq as n,uniqBy as o}from"lodash";import{makeStyles as r,useTheme as m,IconButton as a}from"@material-ui/core";import s from"@material-ui/icons/ThumbUp";import l from"@material-ui/icons/Comment";import{notifyOpenFeedCommentInput as c}from"../../../utils/nativeMessages.js";import{isNativeDetected as u}from"../../../utils/mobileDetect.js";import p from"../../CommentsInfo/index.js";import d from"../../../utils/main.js";import{jsx as f,jsxs as g}from"react/jsx-runtime";var C=r({reactionButton:{padding:8},reactions:{minHeight:48,marginTop:5,display:"flex",alignItems:"center",padding:"8px 16px 8px 24px",flexWrap:"wrap"},reactionsNative:{padding:"0 16px"},actions:{display:"flex",marginRight:30,alignItems:"center"}}),h=u?2:3,k=function(r){var k=r.feedItem,x=r.currentUser,v=r.setOpenCommentInput,N=r.setOpenCommentList,b=r.openCommentInput,y=r.openCommentList,I=r.handleToggleLike,L=m(),j=C(),B=k.likes_count,U=k.comments.length,F=(k.likes||[]).find((function(e){var t;return(null===(t=e.user)||void 0===t?void 0:t.id)===x.id})),_=(k.likes||[]).map((function(e){return d.getUserFullName(e.user)})),P=n((k.comments||[]).map((function(e){return d.getUserFullName(e.user)}))),T=o((k.comments||[]).concat(k.likes||[]).map((function(e){return e.user})).sort((function(e){return i(e.created_at).unix()})),"id").slice(0,h),W=!b||!y;return f("div",{className:t(j.reactions,e({},j.reactionsNative,u)),children:g("div",{className:j.actions,children:[f(a,{"data-testid":"".concat("FeedPo","_likeButton"),"aria-label":"Like",onClick:I,className:j.reactionButton,children:f(s,{htmlColor:F?L.palette.primary.main:L.palette.grey[400]})}),f(a,{"data-testid":"".concat("FeedPo","_commentButton"),"aria-label":"Comment",onClick:function(){u?c(k.id):(v(W),N(W))},className:j.reactionButton,children:f(l,{htmlColor:L.palette.grey[400]})}),f(p,{likesCount:B,usersWhoLike:_,commentsCount:U,usersWhoCommented:P,activeUsersList:T,onCommentsClick:function(){return N(!y)},small:!0})]})})};export{k as default};
1
+ import e from"@babel/runtime/helpers/defineProperty";import t from"classnames";import i from"moment";import{uniq as n,uniqBy as o}from"lodash";import{makeStyles as r,useTheme as m,IconButton as a}from"@material-ui/core";import s from"@material-ui/icons/ThumbUp";import l from"@material-ui/icons/Comment";import{notifyOpenFeedCommentInput as c}from"../../../utils/nativeMessages.js";import{isNativeDetected as u}from"../../../utils/mobileDetect.js";import p from"../../CommentsInfo/index.js";import d from"../../../utils/main.js";import{jsx as f,jsxs as g}from"react/jsx-runtime";var C=r({reactionButton:{padding:8},reactions:{minHeight:48,marginTop:5,display:"flex",alignItems:"center",padding:"8px 16px 8px 24px",flexWrap:"wrap"},reactionsNative:{padding:"0 16px"},actions:{display:"flex",marginRight:30,alignItems:"center"}}),h=u?2:3,x=function(r){var x=r.feedItem,k=r.currentUser,v=r.setOpenCommentInput,N=r.setOpenCommentList,b=r.openCommentInput,y=r.openCommentList,I=r.handleToggleLike,L=r.extraActions,j=m(),B=C(),U=x.likes_count,F=x.comments.length,_=(x.likes||[]).find((function(e){var t;return(null===(t=e.user)||void 0===t?void 0:t.id)===k.id})),P=(x.likes||[]).map((function(e){return d.getUserFullName(e.user)})),T=n((x.comments||[]).map((function(e){return d.getUserFullName(e.user)}))),W=o((x.comments||[]).concat(x.likes||[]).map((function(e){return e.user})).sort((function(e){return i(e.created_at).unix()})),"id").slice(0,h),O=!b||!y;return f("div",{className:t(B.reactions,e({},B.reactionsNative,u)),children:g("div",{className:B.actions,children:[f(a,{"data-testid":"".concat("FeedPo","_likeButton"),"aria-label":"Like",onClick:I,className:B.reactionButton,children:f(s,{htmlColor:_?j.palette.primary.main:j.palette.grey[400]})}),f(a,{"data-testid":"".concat("FeedPo","_commentButton"),"aria-label":"Comment",onClick:function(){u?c(x.id):(v(O),N(O))},className:B.reactionButton,children:f(l,{htmlColor:j.palette.grey[400]})}),L,f(p,{likesCount:U,usersWhoLike:P,commentsCount:F,usersWhoCommented:T,activeUsersList:W,onCommentsClick:function(){return N(!y)},small:!0})]})})};export{x as default};
2
2
  //# sourceMappingURL=Reactions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Reactions.js","sources":["../../../../src/components/FeedItem/components/Reactions.js"],"sourcesContent":["/* eslint-disable react/prop-types */\n// NOTE: CHECK utils\nimport classNames from 'classnames';\nimport moment from 'moment';\nimport { uniq, uniqBy } from 'lodash';\nimport { makeStyles, useTheme, IconButton } from '@material-ui/core';\nimport ThumbUpIcon from '@material-ui/icons/ThumbUp';\nimport CommentIcon from '@material-ui/icons/Comment';\n\nimport { notifyOpenFeedCommentInput } from '~/utils/nativeMessages';\nimport { isNativeDetected } from '~utils/mobileDetect';\nimport CommentsInfo from '~/components/CommentsInfo';\nimport utils from '~/utils/main';\n\nconst PAGE_NAME = 'FeedPo';\n\nconst useStyles = makeStyles({\n reactionButton: { padding: 8 },\n reactions: {\n minHeight: 48,\n marginTop: 5,\n display: 'flex',\n alignItems: 'center',\n padding: '8px 16px 8px 24px',\n flexWrap: 'wrap',\n },\n reactionsNative: {\n padding: '0 16px',\n },\n actions: {\n display: 'flex',\n marginRight: 30,\n alignItems: 'center',\n },\n});\n\nconst AVATARS_VISIBLE_AMOUNT = isNativeDetected ? 2 : 3;\n\nconst Reactions = ({\n feedItem,\n currentUser,\n setOpenCommentInput,\n setOpenCommentList,\n openCommentInput,\n openCommentList,\n handleToggleLike,\n}) => {\n const theme = useTheme();\n const classes = useStyles();\n const likesCount = feedItem.likes_count;\n const commentsCount = feedItem.comments.length;\n\n const isLikedByCurrentUser = (feedItem.likes || []).find(\n like => like.user?.id === currentUser.id\n );\n\n const usersWhoLike = (feedItem.likes || []).map(like => utils.getUserFullName(like.user));\n\n const usersWhoCommented = uniq(\n (feedItem.comments || []).map(comment => utils.getUserFullName(comment.user))\n );\n\n const activeUsersList = uniqBy(\n (feedItem.comments || [])\n .concat(feedItem.likes || [])\n .map(item => item.user)\n .sort(item => moment(item.created_at).unix()),\n 'id'\n ).slice(0, AVATARS_VISIBLE_AMOUNT);\n\n const isListOrInputClosed = !openCommentInput || !openCommentList;\n\n const handleCommentIconClick = () => {\n if (isNativeDetected) {\n notifyOpenFeedCommentInput(feedItem.id);\n } else {\n setOpenCommentInput(isListOrInputClosed);\n setOpenCommentList(isListOrInputClosed);\n }\n };\n\n return (\n <div\n className={classNames(classes.reactions, {\n [classes.reactionsNative]: isNativeDetected,\n })}\n >\n <div className={classes.actions}>\n <IconButton\n data-testid={`${PAGE_NAME}_likeButton`}\n aria-label=\"Like\"\n onClick={handleToggleLike}\n className={classes.reactionButton}\n >\n <ThumbUpIcon\n htmlColor={isLikedByCurrentUser ? theme.palette.primary.main : theme.palette.grey[400]}\n />\n </IconButton>\n\n <IconButton\n data-testid={`${PAGE_NAME}_commentButton`}\n aria-label=\"Comment\"\n onClick={handleCommentIconClick}\n className={classes.reactionButton}\n >\n <CommentIcon htmlColor={theme.palette.grey[400]} />\n </IconButton>\n\n <CommentsInfo\n likesCount={likesCount}\n usersWhoLike={usersWhoLike}\n commentsCount={commentsCount}\n usersWhoCommented={usersWhoCommented}\n activeUsersList={activeUsersList}\n onCommentsClick={() => setOpenCommentList(!openCommentList)}\n small\n />\n </div>\n </div>\n );\n};\n\nexport default Reactions;\n"],"names":["useStyles","makeStyles","reactionButton","padding","reactions","minHeight","marginTop","display","alignItems","flexWrap","reactionsNative","actions","marginRight","AVATARS_VISIBLE_AMOUNT","isNativeDetected","Reactions","_ref","feedItem","currentUser","setOpenCommentInput","setOpenCommentList","openCommentInput","openCommentList","handleToggleLike","theme","useTheme","classes","likesCount","likes_count","commentsCount","comments","length","isLikedByCurrentUser","likes","find","like","_like$user","user","id","usersWhoLike","map","utils","getUserFullName","usersWhoCommented","uniq","comment","activeUsersList","uniqBy","concat","item","sort","moment","created_at","unix","slice","isListOrInputClosed","_jsx","className","classNames","children","_jsxs","IconButton","onClick","ThumbUpIcon","htmlColor","palette","primary","main","grey","notifyOpenFeedCommentInput","CommentIcon","CommentsInfo","onCommentsClick","small"],"mappings":"mkBAcA,IAEMA,EAAYC,EAAW,CAC3BC,eAAgB,CAAEC,QAAS,GAC3BC,UAAW,CACTC,UAAW,GACXC,UAAW,EACXC,QAAS,OACTC,WAAY,SACZL,QAAS,oBACTM,SAAU,QAEZC,gBAAiB,CACfP,QAAS,UAEXQ,QAAS,CACPJ,QAAS,OACTK,YAAa,GACbJ,WAAY,YAIVK,EAAyBC,EAAmB,EAAI,EAEhDC,EAAY,SAQZC,GAAA,IAPJC,IAAAA,SACAC,IAAAA,YACAC,IAAAA,oBACAC,IAAAA,mBACAC,IAAAA,iBACAC,IAAAA,gBACAC,IAAAA,iBAEMC,EAAQC,IACRC,EAAU1B,IACV2B,EAAaV,EAASW,YACtBC,EAAgBZ,EAASa,SAASC,OAElCC,GAAwBf,EAASgB,OAAS,IAAIC,MAClD,SAAAC,GAAI,IAAAC,EAAA,OAAa,QAATA,EAAAD,EAAKE,YAAI,IAAAD,OAAA,EAATA,EAAWE,MAAOpB,EAAYoB,MAGlCC,GAAgBtB,EAASgB,OAAS,IAAIO,KAAI,SAAAL,GAAI,OAAIM,EAAMC,gBAAgBP,EAAKE,SAE7EM,EAAoBC,GACvB3B,EAASa,UAAY,IAAIU,KAAI,SAAAK,GAAO,OAAIJ,EAAMC,gBAAgBG,EAAQR,KAAK,KAGxES,EAAkBC,GACrB9B,EAASa,UAAY,IACnBkB,OAAO/B,EAASgB,OAAS,IACzBO,KAAI,SAAAS,GAAI,OAAIA,EAAKZ,IAAI,IACrBa,MAAK,SAAAD,GAAI,OAAIE,EAAOF,EAAKG,YAAYC,MAAO,IAC/C,MACAC,MAAM,EAAGzC,GAEL0C,GAAuBlC,IAAqBC,EAWlD,OACEkC,EAAA,MAAA,CACEC,UAAWC,EAAWhC,EAAQtB,UAC3BsB,EAAAA,CAAAA,EAAAA,EAAQhB,gBAAkBI,IAC1B6C,SAEHC,EAAA,MAAA,CAAKH,UAAW/B,EAAQf,QAAQgD,SAAA,CAC9BH,EAACK,EAAU,CACT,cAAA,GAAAb,OA3EQ,SA2E+B,eACvC,aAAW,OACXc,QAASvC,EACTkC,UAAW/B,EAAQxB,eAAeyD,SAElCH,EAACO,EAAW,CACVC,UAAWhC,EAAuBR,EAAMyC,QAAQC,QAAQC,KAAO3C,EAAMyC,QAAQG,KAAK,SAItFZ,EAACK,EAAU,CACT,cAAA,GAAAb,OAtFQ,SAsFkC,kBAC1C,aAAW,UACXc,QA9BuB,WACzBhD,EACFuD,EAA2BpD,EAASqB,KAEpCnB,EAAoBoC,GACpBnC,EAAmBmC,KA0BfE,UAAW/B,EAAQxB,eAAeyD,SAElCH,EAACc,EAAW,CAACN,UAAWxC,EAAMyC,QAAQG,KAAK,SAG7CZ,EAACe,EAAY,CACX5C,WAAYA,EACZY,aAAcA,EACdV,cAAeA,EACfc,kBAAmBA,EACnBG,gBAAiBA,EACjB0B,gBAAiB,WAAA,OAAMpD,GAAoBE,EAAiB,EAC5DmD,OAAK,QAKf"}
1
+ {"version":3,"file":"Reactions.js","sources":["../../../../src/components/FeedItem/components/Reactions.js"],"sourcesContent":["/* eslint-disable react/prop-types */\n// NOTE: CHECK utils\nimport classNames from 'classnames';\nimport moment from 'moment';\nimport { uniq, uniqBy } from 'lodash';\nimport { makeStyles, useTheme, IconButton } from '@material-ui/core';\nimport ThumbUpIcon from '@material-ui/icons/ThumbUp';\nimport CommentIcon from '@material-ui/icons/Comment';\n\nimport { notifyOpenFeedCommentInput } from '~/utils/nativeMessages';\nimport { isNativeDetected } from '~utils/mobileDetect';\nimport CommentsInfo from '~/components/CommentsInfo';\nimport utils from '~/utils/main';\n\nconst PAGE_NAME = 'FeedPo';\n\nconst useStyles = makeStyles({\n reactionButton: { padding: 8 },\n reactions: {\n minHeight: 48,\n marginTop: 5,\n display: 'flex',\n alignItems: 'center',\n padding: '8px 16px 8px 24px',\n flexWrap: 'wrap',\n },\n reactionsNative: {\n padding: '0 16px',\n },\n actions: {\n display: 'flex',\n marginRight: 30,\n alignItems: 'center',\n },\n});\n\nconst AVATARS_VISIBLE_AMOUNT = isNativeDetected ? 2 : 3;\n\nconst Reactions = ({\n feedItem,\n currentUser,\n setOpenCommentInput,\n setOpenCommentList,\n openCommentInput,\n openCommentList,\n handleToggleLike,\n extraActions,\n}) => {\n const theme = useTheme();\n const classes = useStyles();\n const likesCount = feedItem.likes_count;\n const commentsCount = feedItem.comments.length;\n\n const isLikedByCurrentUser = (feedItem.likes || []).find(\n like => like.user?.id === currentUser.id\n );\n\n const usersWhoLike = (feedItem.likes || []).map(like => utils.getUserFullName(like.user));\n\n const usersWhoCommented = uniq(\n (feedItem.comments || []).map(comment => utils.getUserFullName(comment.user))\n );\n\n const activeUsersList = uniqBy(\n (feedItem.comments || [])\n .concat(feedItem.likes || [])\n .map(item => item.user)\n .sort(item => moment(item.created_at).unix()),\n 'id'\n ).slice(0, AVATARS_VISIBLE_AMOUNT);\n\n const isListOrInputClosed = !openCommentInput || !openCommentList;\n\n const handleCommentIconClick = () => {\n if (isNativeDetected) {\n notifyOpenFeedCommentInput(feedItem.id);\n } else {\n setOpenCommentInput(isListOrInputClosed);\n setOpenCommentList(isListOrInputClosed);\n }\n };\n\n return (\n <div\n className={classNames(classes.reactions, {\n [classes.reactionsNative]: isNativeDetected,\n })}\n >\n <div className={classes.actions}>\n <IconButton\n data-testid={`${PAGE_NAME}_likeButton`}\n aria-label=\"Like\"\n onClick={handleToggleLike}\n className={classes.reactionButton}\n >\n <ThumbUpIcon\n htmlColor={isLikedByCurrentUser ? theme.palette.primary.main : theme.palette.grey[400]}\n />\n </IconButton>\n\n <IconButton\n data-testid={`${PAGE_NAME}_commentButton`}\n aria-label=\"Comment\"\n onClick={handleCommentIconClick}\n className={classes.reactionButton}\n >\n <CommentIcon htmlColor={theme.palette.grey[400]} />\n </IconButton>\n\n {extraActions}\n\n <CommentsInfo\n likesCount={likesCount}\n usersWhoLike={usersWhoLike}\n commentsCount={commentsCount}\n usersWhoCommented={usersWhoCommented}\n activeUsersList={activeUsersList}\n onCommentsClick={() => setOpenCommentList(!openCommentList)}\n small\n />\n </div>\n </div>\n );\n};\n\nexport default Reactions;\n"],"names":["useStyles","makeStyles","reactionButton","padding","reactions","minHeight","marginTop","display","alignItems","flexWrap","reactionsNative","actions","marginRight","AVATARS_VISIBLE_AMOUNT","isNativeDetected","Reactions","_ref","feedItem","currentUser","setOpenCommentInput","setOpenCommentList","openCommentInput","openCommentList","handleToggleLike","extraActions","theme","useTheme","classes","likesCount","likes_count","commentsCount","comments","length","isLikedByCurrentUser","likes","find","like","_like$user","user","id","usersWhoLike","map","utils","getUserFullName","usersWhoCommented","uniq","comment","activeUsersList","uniqBy","concat","item","sort","moment","created_at","unix","slice","isListOrInputClosed","_jsx","className","classNames","children","_jsxs","IconButton","onClick","ThumbUpIcon","htmlColor","palette","primary","main","grey","notifyOpenFeedCommentInput","CommentIcon","CommentsInfo","onCommentsClick","small"],"mappings":"mkBAcA,IAEMA,EAAYC,EAAW,CAC3BC,eAAgB,CAAEC,QAAS,GAC3BC,UAAW,CACTC,UAAW,GACXC,UAAW,EACXC,QAAS,OACTC,WAAY,SACZL,QAAS,oBACTM,SAAU,QAEZC,gBAAiB,CACfP,QAAS,UAEXQ,QAAS,CACPJ,QAAS,OACTK,YAAa,GACbJ,WAAY,YAIVK,EAAyBC,EAAmB,EAAI,EAEhDC,EAAY,SASZC,GAAA,IARJC,IAAAA,SACAC,IAAAA,YACAC,IAAAA,oBACAC,IAAAA,mBACAC,IAAAA,iBACAC,IAAAA,gBACAC,IAAAA,iBACAC,IAAAA,aAEMC,EAAQC,IACRC,EAAU3B,IACV4B,EAAaX,EAASY,YACtBC,EAAgBb,EAASc,SAASC,OAElCC,GAAwBhB,EAASiB,OAAS,IAAIC,MAClD,SAAAC,GAAI,IAAAC,EAAA,OAAa,QAATA,EAAAD,EAAKE,YAAI,IAAAD,OAAA,EAATA,EAAWE,MAAOrB,EAAYqB,MAGlCC,GAAgBvB,EAASiB,OAAS,IAAIO,KAAI,SAAAL,GAAI,OAAIM,EAAMC,gBAAgBP,EAAKE,SAE7EM,EAAoBC,GACvB5B,EAASc,UAAY,IAAIU,KAAI,SAAAK,GAAO,OAAIJ,EAAMC,gBAAgBG,EAAQR,KAAK,KAGxES,EAAkBC,GACrB/B,EAASc,UAAY,IACnBkB,OAAOhC,EAASiB,OAAS,IACzBO,KAAI,SAAAS,GAAI,OAAIA,EAAKZ,IAAI,IACrBa,MAAK,SAAAD,GAAI,OAAIE,EAAOF,EAAKG,YAAYC,MAAO,IAC/C,MACAC,MAAM,EAAG1C,GAEL2C,GAAuBnC,IAAqBC,EAWlD,OACEmC,EAAA,MAAA,CACEC,UAAWC,EAAWhC,EAAQvB,UAC3BuB,EAAAA,CAAAA,EAAAA,EAAQjB,gBAAkBI,IAC1B8C,SAEHC,EAAA,MAAA,CAAKH,UAAW/B,EAAQhB,QAAQiD,SAAA,CAC9BH,EAACK,EAAU,CACT,cAAA,GAAAb,OA5EQ,SA4E+B,eACvC,aAAW,OACXc,QAASxC,EACTmC,UAAW/B,EAAQzB,eAAe0D,SAElCH,EAACO,EAAW,CACVC,UAAWhC,EAAuBR,EAAMyC,QAAQC,QAAQC,KAAO3C,EAAMyC,QAAQG,KAAK,SAItFZ,EAACK,EAAU,CACT,cAAA,GAAAb,OAvFQ,SAuFkC,kBAC1C,aAAW,UACXc,QA9BuB,WACzBjD,EACFwD,EAA2BrD,EAASsB,KAEpCpB,EAAoBqC,GACpBpC,EAAmBoC,KA0BfE,UAAW/B,EAAQzB,eAAe0D,SAElCH,EAACc,EAAW,CAACN,UAAWxC,EAAMyC,QAAQG,KAAK,SAG5C7C,EAEDiC,EAACe,EAAY,CACX5C,WAAYA,EACZY,aAAcA,EACdV,cAAeA,EACfc,kBAAmBA,EACnBG,gBAAiBA,EACjB0B,gBAAiB,WAAA,OAAMrD,GAAoBE,EAAiB,EAC5DoD,OAAK,QAKf"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilterStoreWrapper.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/FilterStoreWrapper/FilterStoreWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKtC,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAI1D,CAAC"}
1
+ {"version":3,"file":"FilterStoreWrapper.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/FilterStoreWrapper/FilterStoreWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMtC,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAY1D,CAAC"}
@@ -1,2 +1,2 @@
1
- import{jsx as r}from"react/jsx-runtime";import{usePickerPropsStore as e}from"../../../../stores/picker-props-store/usePickerPropsStore.js";import{FilterStoreProvider as t}from"../../../../stores/filter-store/FilterStoreProvider.js";var o=function(o){var i=o.children,s=e((function(r){return r.offsetSettings}));return r(t,{filters:null==s?void 0:s.filters,children:i})};o.displayName="FilterStoreWrapper";export{o as FilterStoreWrapper};
1
+ import{jsx as r}from"react/jsx-runtime";import{usePickerPropsStore as e}from"../../../../stores/picker-props-store/usePickerPropsStore.js";import{FilterStoreProvider as o}from"../../../../stores/filter-store/FilterStoreProvider.js";import{useCompanySelectorPermission as i}from"../../../../hooks/useCompanySelectorPermission.js";var t=function(t){var s=t.children,n=e((function(r){return r.offsetSettings})),p=i(),m=p.canViewCompanies,a=p.canViewCompaniesLoading;return r(o,{filters:null==n?void 0:n.filters,canViewCompanies:!a&&m,children:s})};t.displayName="FilterStoreWrapper";export{t as FilterStoreWrapper};
2
2
  //# sourceMappingURL=FilterStoreWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCompanies.d.ts","sourceRoot":"","sources":["../../../../src/components/OffsetWellPickerV5/hooks/useCompanies.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qDAAqD,CAAC;AAKnF,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;IACjC,SAAS,EAAE,OAAO,EAAE,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,UAAU,kBAAkB,KAAG,kBAmB3D,CAAC"}
1
+ {"version":3,"file":"useCompanies.d.ts","sourceRoot":"","sources":["../../../../src/components/OffsetWellPickerV5/hooks/useCompanies.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qDAAqD,CAAC;AAKnF,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;IACjC,SAAS,EAAE,OAAO,EAAE,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,UAAU,kBAAkB,KAAG,kBAiB3D,CAAC"}
@@ -1,2 +1,2 @@
1
- import s from"@babel/runtime/helpers/asyncToGenerator";import i from"@babel/runtime/helpers/slicedToArray";import t from"@babel/runtime/regenerator";import{useState as r,useEffect as o}from"react";import"lodash";import"@babel/runtime/helpers/toConsumableArray";import"@babel/runtime/helpers/defineProperty";import"uuid";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import"../../../clients/jsonApi/index.js";import"../../../clients/subscriptions/constants.js";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";import"../../../clients/api/apiCore.js";import"../../../clients/constants.js";import"../../../clients/sso/auth0.js";import"../../../clients/sso/oauth2.js";import{fetchCompanies as e}from"../api/companies/fetchCompanies.js";import"../constants.js";import"../api/shared/dataFormatter.js";import n from"../../../permissions/usePermissions.js";import{PERMISSIONS as p}from"../../../permissions/constants/index.js";import"../../../permissions/withPermissionsHOC.js";import"../../../permissions/ProvidePermissions.js";import"../../../permissions/PermissionsContext.js";var m=function(m){var a=m.open,c=r([]),l=i(c,2),u=l[0],h=l[1],f=n([p.companySelectorView]),j=i(f,1)[0],b=j.active,d=j.loading;return o((function(){function i(){return(i=s(t.mark((function s(){var i;return t.wrap((function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,e();case 2:i=s.sent,h(i);case 4:case"end":return s.stop()}}),s)})))).apply(this,arguments)}b&&a&&0===u.length&&function(){i.apply(this,arguments)}()}),[b,u.length,a]),{canViewCompanies:b,canViewCompaniesLoading:d,companies:u}};export{m as useCompanies};
1
+ import t from"@babel/runtime/helpers/asyncToGenerator";import e from"@babel/runtime/helpers/slicedToArray";import r from"@babel/runtime/regenerator";import{useState as i,useEffect as o}from"react";import"lodash";import"@babel/runtime/helpers/toConsumableArray";import"@babel/runtime/helpers/defineProperty";import"uuid";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import"../../../clients/jsonApi/index.js";import"../../../clients/subscriptions/constants.js";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";import"../../../clients/api/apiCore.js";import"../../../clients/constants.js";import"../../../clients/sso/auth0.js";import"../../../clients/sso/oauth2.js";import{fetchCompanies as s}from"../api/companies/fetchCompanies.js";import"../constants.js";import"../api/shared/dataFormatter.js";import{useCompanySelectorPermission as n}from"./useCompanySelectorPermission.js";var a=function(a){var p=a.open,m=i([]),c=e(m,2),l=c[0],u=c[1],h=n(),f=h.canViewCompanies,b=h.canViewCompaniesLoading;return o((function(){function e(){return(e=t(r.mark((function t(){var e;return r.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,s();case 2:e=t.sent,u(e);case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}f&&p&&0===l.length&&function(){e.apply(this,arguments)}()}),[f,l.length,p]),{canViewCompanies:f,canViewCompaniesLoading:b,companies:l}};export{a as useCompanies};
2
2
  //# sourceMappingURL=useCompanies.js.map
@@ -0,0 +1,7 @@
1
+ type UseCompanySelectorPermissionResult = {
2
+ canViewCompanies: boolean;
3
+ canViewCompaniesLoading: boolean;
4
+ };
5
+ export declare const useCompanySelectorPermission: () => UseCompanySelectorPermissionResult;
6
+ export {};
7
+ //# sourceMappingURL=useCompanySelectorPermission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCompanySelectorPermission.d.ts","sourceRoot":"","sources":["../../../../src/components/OffsetWellPickerV5/hooks/useCompanySelectorPermission.ts"],"names":[],"mappings":"AAEA,KAAK,kCAAkC,GAAG;IACxC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,4BAA4B,QAAO,kCAQ/C,CAAC"}
@@ -0,0 +1,2 @@
1
+ import i from"../../../permissions/usePermissions.js";import{PERMISSIONS as e}from"../../../permissions/constants/index.js";import"@babel/runtime/helpers/slicedToArray";import"../../../permissions/withPermissionsHOC.js";import"@babel/runtime/helpers/defineProperty";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/regenerator";import"react";import"../../../clients/jsonApi/index.js";import"../../../permissions/ProvidePermissions.js";import"../../../permissions/PermissionsContext.js";var s=function(){var s=i({canViewCompanies:e.companySelectorView}).canViewCompanies;return{canViewCompanies:s.active,canViewCompaniesLoading:s.loading}};export{s as useCompanySelectorPermission};
2
+ //# sourceMappingURL=useCompanySelectorPermission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCompanySelectorPermission.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
1
  import { FC, ReactNode } from 'react';
2
2
  import type { FilterStoreProps } from './types';
3
3
  type FilterStoreProviderProps = FilterStoreProps & {
4
+ canViewCompanies: boolean;
4
5
  children: ReactNode;
5
6
  };
6
7
  export declare const FilterStoreProvider: FC<FilterStoreProviderProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"FilterStoreProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/FilterStoreProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAqB,MAAM,OAAO,CAAC;AAGzD,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAK7D,KAAK,wBAAwB,GAAG,gBAAgB,GAAG;IACjD,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,wBAAwB,CAsC5D,CAAC"}
1
+ {"version":3,"file":"FilterStoreProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/FilterStoreProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAqB,MAAM,OAAO,CAAC;AAKzD,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAK7D,KAAK,wBAAwB,GAAG,gBAAgB,GAAG;IACjD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,wBAAwB,CA6C5D,CAAC"}
@@ -1,2 +1,2 @@
1
- import r from"@babel/runtime/helpers/defineProperty";import{jsx as e}from"react/jsx-runtime";import{useRef as t,useEffect as i}from"react";import{getDefaultRadiusMiles as o}from"./utils/getDefaultRadiusMiles.js";import{createFilterStore as l}from"./createFilterStore.js";import{FilterStoreContext as n}from"./FilterStoreContext.js";import{normalizeFilters as s}from"./utils/normalizeFilters.js";function u(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(r);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),t.push.apply(t,i)}return t}function c(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?u(Object(i),!0).forEach((function(t){r(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):u(Object(i)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(i,r))}))}return e}var a=function(r){var u=r.children,a=r.filters,d=t(null);if(!d.current){var f,p,m,v=o(),O=s(a),b=c(c({},O),{},{selectionMode:null!==(f=null==O?void 0:O.selectionMode)&&void 0!==f?f:"radius",radius:null!==(p=null==O?void 0:O.radius)&&void 0!==p?p:v,drillingWells:null===(m=null==O?void 0:O.drillingWells)||void 0===m||m}),j={selectionMode:"radius",radius:v,drillingWells:!0};d.current=l({filters:b,defaultFilters:j})}var y=d.current;return i((function(){var r=s(a);void 0!==r&&y.getState().setFilters(r,"external_sync")}),[y,a]),e(n.Provider,{value:y,children:u})};a.displayName="FilterStoreProvider";export{a as FilterStoreProvider};
1
+ import e from"@babel/runtime/helpers/defineProperty";import{jsx as r}from"react/jsx-runtime";import{useRef as t,useEffect as i}from"react";import{useSyncProps as o}from"../utils/useSyncProps.js";import{getDefaultRadiusMiles as n}from"./utils/getDefaultRadiusMiles.js";import{createFilterStore as l}from"./createFilterStore.js";import{FilterStoreContext as s}from"./FilterStoreContext.js";import{normalizeFilters as c}from"./utils/normalizeFilters.js";function a(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);r&&(i=i.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,i)}return t}function u(r){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?a(Object(i),!0).forEach((function(t){e(r,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):a(Object(i)).forEach((function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(i,e))}))}return r}var p=function(e){var a=e.children,p=e.filters,d=e.canViewCompanies,f=t(null);if(!f.current){var m,v,j,O=n(),b=c(p),y=u(u({},b),{},{selectionMode:null!==(m=null==b?void 0:b.selectionMode)&&void 0!==m?m:"radius",radius:null!==(v=null==b?void 0:b.radius)&&void 0!==v?v:O,drillingWells:null===(j=null==b?void 0:b.drillingWells)||void 0===j||j}),g={selectionMode:"radius",radius:O,drillingWells:!0};f.current=l({filters:y,defaultFilters:g,canViewCompanies:d})}var P=f.current;return o(P,{canViewCompanies:d},[{key:"canViewCompanies"}]),i((function(){var e=c(p);void 0!==e&&P.getState().setFilters(e,"external_sync")}),[P,p]),r(s.Provider,{value:P,children:a})};p.displayName="FilterStoreProvider";export{p as FilterStoreProvider};
2
2
  //# sourceMappingURL=FilterStoreProvider.js.map
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FilterStoreProvider.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterStoreProvider.test.d.ts","sourceRoot":"","sources":["../../../../../../src/components/OffsetWellPickerV5/stores/filter-store/__tests__/FilterStoreProvider.test.tsx"],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import t from"@babel/runtime/helpers/defineProperty";import{createStore as e}from"zustand";import{BASE_DEFAULT_FILTERS as r}from"./types.js";import{createFilterCrudActions as i}from"./utils/createFilterCrudActions.js";import{createFilterResetActions as n}from"./utils/createFilterResetActions.js";import{createTempFilterActions as o}from"./utils/createTempFilterActions.js";import{createSelectionActions as l}from"./utils/createSelectionActions.js";function s(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function u(e){for(var r=1;r<arguments.length;r++){var i=null!=arguments[r]?arguments[r]:{};r%2?s(Object(i),!0).forEach((function(r){t(e,r,i[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):s(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}var c=function(t){var s,c,a,f=u(u({},r),null!==(s=t.filters)&&void 0!==s?s:{}),p=u(u({},r),null!==(c=null!==(a=t.defaultFilters)&&void 0!==a?a:t.filters)&&void 0!==c?c:{}),m=e()((function(t,e){var r=function(e,r){t((function(t){return u(u({},e),{},{lastFilterMutationSource:r,filterMutationSeq:t.filterMutationSeq+1})}))};return u(u(u(u({wells:null,companies:[],canViewCompanies:!0,filters:f,defaultFilters:p,tempFilters:{},lastFilterMutationSource:"external_sync",filterMutationSeq:0},i({get:e,setWithMutation:r})),n({get:e,setWithMutation:r,defaultFilters:p})),o({set:t,get:e})),l({get:e,setWithMutation:r}))})),b=m.getState().wells;return m.subscribe((function(t){if(null===b&&null!==t.wells)return b=t.wells,void t.pruneAllCascades();b=t.wells})),m};export{c as createFilterStore};
1
+ import t from"@babel/runtime/helpers/defineProperty";import{createStore as e}from"zustand";import{BASE_DEFAULT_FILTERS as r}from"./types.js";import{createFilterCrudActions as i}from"./utils/createFilterCrudActions.js";import{createFilterResetActions as n}from"./utils/createFilterResetActions.js";import{createTempFilterActions as o}from"./utils/createTempFilterActions.js";import{createSelectionActions as l}from"./utils/createSelectionActions.js";function s(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function u(e){for(var r=1;r<arguments.length;r++){var i=null!=arguments[r]?arguments[r]:{};r%2?s(Object(i),!0).forEach((function(r){t(e,r,i[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):s(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}var c=function(t){var s,c,a,f=u(u({},r),null!==(s=t.filters)&&void 0!==s?s:{}),p=u(u({},r),null!==(c=null!==(a=t.defaultFilters)&&void 0!==a?a:t.filters)&&void 0!==c?c:{}),m=e()((function(e,r){var s,c=function(t,r){e((function(e){return u(u({},t),{},{lastFilterMutationSource:r,filterMutationSeq:e.filterMutationSeq+1})}))};return u(u(u(u({wells:null,companies:[],canViewCompanies:null!==(s=t.canViewCompanies)&&void 0!==s&&s,filters:f,defaultFilters:p,tempFilters:{},lastFilterMutationSource:"external_sync",filterMutationSeq:0},i({get:r,setWithMutation:c})),n({get:r,setWithMutation:c,defaultFilters:p})),o({set:e,get:r})),l({get:r,setWithMutation:c}))})),b=m.getState().wells;return m.subscribe((function(t){if(null===b&&null!==t.wells)return b=t.wells,void t.pruneAllCascades();b=t.wells})),m};export{c as createFilterStore};
2
2
  //# sourceMappingURL=createFilterStore.js.map
@@ -63,6 +63,7 @@ export type FilterStore = FilterStoreDataSources & {
63
63
  export type FilterStoreProps = {
64
64
  filters?: FilterState;
65
65
  defaultFilters?: FilterState;
66
+ canViewCompanies?: boolean;
66
67
  };
67
68
  export type SetWithMutation = (updates: Partial<Pick<FilterStore, 'filters' | 'tempFilters'>>, source: FilterMutationSource) => void;
68
69
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"names":[],"mappings":"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"}
@@ -228,7 +228,7 @@ const validateDsn = (dsn) => {
228
228
 
229
229
  const MCP_SERVER_VERSION = '1.1.0';
230
230
 
231
- var version = "3.55.0-4";
231
+ var version = "3.55.0-6";
232
232
 
233
233
  const CORVA_UI_VERSION = version;
234
234
 
@@ -19275,6 +19275,40 @@ var clientsData = [
19275
19275
  }
19276
19276
  }
19277
19277
  },
19278
+ {
19279
+ path: "/v1/alerts/{id}",
19280
+ method: "GET",
19281
+ summary: "Get Alert",
19282
+ tags: [
19283
+ "Alerts"
19284
+ ],
19285
+ parameters: [
19286
+ {
19287
+ name: "id",
19288
+ "in": "path",
19289
+ type: "integer",
19290
+ required: true,
19291
+ description: "Alert ID"
19292
+ }
19293
+ ],
19294
+ responses: {
19295
+ "200": {
19296
+ description: "Successful response",
19297
+ schema: "any"
19298
+ },
19299
+ "401": {
19300
+ description: "Authentication error",
19301
+ schema: "any"
19302
+ },
19303
+ "403": {
19304
+ description: "Authorization error",
19305
+ schema: "any"
19306
+ },
19307
+ "404": {
19308
+ description: "Alert not found"
19309
+ }
19310
+ }
19311
+ },
19278
19312
  {
19279
19313
  path: "/v1/alerts/{alert_id}/acknowledge",
19280
19314
  method: "POST",
@@ -22467,6 +22501,13 @@ var clientsData = [
22467
22501
  required: false,
22468
22502
  description: "Search by well name"
22469
22503
  },
22504
+ {
22505
+ name: "asset_id",
22506
+ "in": "query",
22507
+ type: "integer",
22508
+ required: false,
22509
+ description: "Filter by asset ID"
22510
+ },
22470
22511
  {
22471
22512
  name: "fields",
22472
22513
  "in": "query",
@@ -47032,6 +47073,40 @@ var clientsData = [
47032
47073
  }
47033
47074
  }
47034
47075
  },
47076
+ {
47077
+ path: "/v1/alerts/{id}",
47078
+ method: "GET",
47079
+ summary: "Get Alert",
47080
+ tags: [
47081
+ "Alerts"
47082
+ ],
47083
+ parameters: [
47084
+ {
47085
+ name: "id",
47086
+ "in": "path",
47087
+ type: "integer",
47088
+ required: true,
47089
+ description: "Alert ID"
47090
+ }
47091
+ ],
47092
+ responses: {
47093
+ "200": {
47094
+ description: "Successful response",
47095
+ schema: "any"
47096
+ },
47097
+ "401": {
47098
+ description: "Authentication error",
47099
+ schema: "any"
47100
+ },
47101
+ "403": {
47102
+ description: "Authorization error",
47103
+ schema: "any"
47104
+ },
47105
+ "404": {
47106
+ description: "Alert not found"
47107
+ }
47108
+ }
47109
+ },
47035
47110
  {
47036
47111
  path: "/v1/alerts/acknowledge",
47037
47112
  method: "POST",
@@ -58259,6 +58334,13 @@ var clientsData = [
58259
58334
  required: false,
58260
58335
  description: "Search by well name"
58261
58336
  },
58337
+ {
58338
+ name: "asset_id",
58339
+ "in": "query",
58340
+ type: "integer",
58341
+ required: false,
58342
+ description: "Filter by asset ID"
58343
+ },
58262
58344
  {
58263
58345
  name: "fields",
58264
58346
  "in": "query",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@corva/ui",
3
- "version": "3.55.0-4",
3
+ "version": "3.55.0-6",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "description": "Shared components/utils for Corva ui projects",
6
6
  "keywords": [