@corva/ui 0.32.0-9 → 0.32.0-rc.2

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 (727) hide show
  1. package/CLI/assets/DevCenterLogo.js.map +1 -0
  2. package/CLI/components/App/App.css.js.map +1 -0
  3. package/CLI/components/App/App.js +1 -1
  4. package/CLI/components/App/App.js.map +1 -0
  5. package/CLI/components/App/components/AppBar/AppBar.js +1 -1
  6. package/CLI/components/App/components/AppBar/AppBar.js.map +1 -0
  7. package/CLI/constants/index.js.map +1 -0
  8. package/CLI/context/auth.js.map +1 -0
  9. package/CLI/hocs/constants.js.map +1 -0
  10. package/CLI/hocs/effects/useProvideAuth.js.map +1 -0
  11. package/CLI/hocs/utils.js.map +1 -0
  12. package/CLI/hocs/withAppDataProviderHOC.js +1 -1
  13. package/CLI/hocs/withAppDataProviderHOC.js.map +1 -0
  14. package/CLI/hocs/withCLIAppSettingsHOC.js.map +1 -0
  15. package/CLI/hocs/withCorvaMagicHOC.js +1 -1
  16. package/CLI/hocs/withCorvaMagicHOC.js.map +1 -0
  17. package/CLI/hocs/withDevCenterRouterHOC.js.map +1 -0
  18. package/CLI/hocs/withGridLayoutHOC/withGridLayoutHOC.css.js.map +1 -0
  19. package/CLI/hocs/withGridLayoutHOC/withGridLayoutHOC.global.css.js.map +1 -0
  20. package/CLI/hocs/withGridLayoutHOC/withGridLayoutHOC.js +1 -1
  21. package/CLI/hocs/withGridLayoutHOC/withGridLayoutHOC.js.map +1 -0
  22. package/CLI/hocs/withPDFLayoutHOC.js.map +1 -0
  23. package/CLI/hocs/withReactRouterHOC.js +1 -1
  24. package/CLI/hocs/withReactRouterHOC.js.map +1 -0
  25. package/CLI/index.js.map +1 -0
  26. package/CLI/screens/LoginScreen/LoginScreen.css.js.map +1 -0
  27. package/CLI/screens/LoginScreen/LoginScreen.js.map +1 -0
  28. package/CLI/screens/LoginScreen/components/Auth.js.map +1 -0
  29. package/CLI/screens/LoginScreen/components/AuthStep.js.map +1 -0
  30. package/CLI/screens/LoginScreen/components/EmailStep.js.map +1 -0
  31. package/CLI/screens/LoginScreen/components/IconLogo.js.map +1 -0
  32. package/CLI/screens/LoginScreen/components/SSOButton.js.map +1 -0
  33. package/CLI/screens/OAuthCallbackScreen/index.js +1 -1
  34. package/CLI/screens/OAuthCallbackScreen/index.js.map +1 -0
  35. package/cjs/devcenter/webpack/DevServerEntryPoint.js +1 -17
  36. package/cjs/devcenter/webpack/DevServerEntryPoint.js.map +1 -0
  37. package/cjs/devcenter/webpack/DevServerIsolatedAppEntryPoint.js +1 -0
  38. package/cjs/devcenter/webpack/DevServerIsolatedAppEntryPoint.js.map +1 -0
  39. package/cjs/devcenter/webpack/public/DevCenterIsolatedAppPage.html +28 -0
  40. package/cjs/devcenter/webpack/webpack.config.dev.js +1 -1
  41. package/clients/api/apiCore.js.map +1 -0
  42. package/clients/api/httpMessages.js.map +1 -0
  43. package/clients/auth0/index.js.map +1 -0
  44. package/clients/clientStorage/core.js.map +1 -0
  45. package/clients/clientStorage/index.js +1 -1
  46. package/clients/clientStorage/index.js.map +1 -0
  47. package/clients/constants.js.map +1 -0
  48. package/clients/index.js.map +1 -0
  49. package/clients/jsonApi/index.js +1 -1
  50. package/clients/jsonApi/index.js.map +1 -0
  51. package/clients/subscriptions.js.map +1 -0
  52. package/clients/utils.js.map +1 -0
  53. package/components/AddComment/Popover.js +1 -1
  54. package/components/AddComment/Popover.js.map +1 -0
  55. package/components/AddComment/Popup.js.map +1 -0
  56. package/components/AddComment/components/Content.js +1 -1
  57. package/components/AddComment/components/Content.js.map +1 -0
  58. package/components/AnchorsList/AnchorsList.js.map +1 -0
  59. package/components/Annotations/AnnotationsContext.js.map +1 -0
  60. package/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js +1 -1
  61. package/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js.map +1 -0
  62. package/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/style.css.js.map +1 -0
  63. package/components/Annotations/components/AnnotationsList/components/Annotation/index.js +1 -1
  64. package/components/Annotations/components/AnnotationsList/components/Annotation/index.js.map +1 -0
  65. package/components/Annotations/components/AnnotationsList/components/Annotation/style.css.js.map +1 -0
  66. package/components/Annotations/components/AnnotationsList/components/AnnotationComments/index.js.map +1 -0
  67. package/components/Annotations/components/AnnotationsList/components/AnnotationComments/style.css.js.map +1 -0
  68. package/components/Annotations/components/AnnotationsList/components/AnnotationInput/StyledSelect.js.map +1 -0
  69. package/components/Annotations/components/AnnotationsList/components/AnnotationInput/index.js.map +1 -0
  70. package/components/Annotations/components/AnnotationsList/components/AnnotationInput/style.css.js.map +1 -0
  71. package/components/Annotations/components/AnnotationsList/index.js.map +1 -0
  72. package/components/Annotations/components/AnnotationsList/style.css.js.map +1 -0
  73. package/components/Annotations/components/LastAnnotation/index.js +1 -1
  74. package/components/Annotations/components/LastAnnotation/index.js.map +1 -0
  75. package/components/Annotations/components/LastAnnotation/style.css.js.map +1 -0
  76. package/components/Annotations/constants.js.map +1 -0
  77. package/components/AppVersionsSelect/AppVersionsSelect.js +1 -1
  78. package/components/AppVersionsSelect/AppVersionsSelect.js.map +1 -0
  79. package/components/AppVersionsSelect/effects/index.js.map +1 -0
  80. package/components/AssetEditor/AssetEditorAutocomplete.js.map +1 -0
  81. package/components/AssetEditor/AssetEditors.css.js.map +1 -0
  82. package/components/AssetEditor/SingleAssetEditor.js.map +1 -0
  83. package/components/AssetEditor/constants.js.map +1 -0
  84. package/components/AssetEditor/effects/index.js +1 -1
  85. package/components/AssetEditor/effects/index.js.map +1 -0
  86. package/components/AssetEditor/index.js.map +1 -0
  87. package/components/AssetNameLabel/index.js.map +1 -0
  88. package/components/AssetNameLabel/styles.css.js.map +1 -0
  89. package/components/Attachment/index.js +1 -1
  90. package/components/Attachment/index.js.map +1 -0
  91. package/components/Attachment/styles.css.js.map +1 -0
  92. package/components/Avatar/index.js.map +1 -0
  93. package/components/BICOffsetPickerDialog/components/Map/Map.css.js.map +1 -0
  94. package/components/BICOffsetPickerDialog/components/Map/Map.js.map +1 -0
  95. package/components/BICOffsetPickerDialog/components/Map/index.css.js +1 -1
  96. package/components/BICOffsetPickerDialog/components/Map/index.css.js.map +1 -0
  97. package/components/BICOffsetPickerDialog/components/Map/index.js.map +1 -0
  98. package/components/BICOffsetPickerDialog/components/WellSection/AssetSearch.js.map +1 -0
  99. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/AssetResultSection.js.map +1 -0
  100. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/AssetTypesSection.js.map +1 -0
  101. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
  102. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -0
  103. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/constants.js.map +1 -0
  104. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/effects/useAssetsData.js.map +1 -0
  105. package/components/BICOffsetPickerDialog/components/WellSection/AutoCompleteAssetSearch/utils/apiCalls.js.map +1 -0
  106. package/components/BICOffsetPickerDialog/components/WellSection/NumberCircle.js.map +1 -0
  107. package/components/BICOffsetPickerDialog/components/WellSection/SectionItem.js +1 -1
  108. package/components/BICOffsetPickerDialog/components/WellSection/SectionItem.js.map +1 -0
  109. package/components/BICOffsetPickerDialog/components/WellSection/WellListItem.js.map +1 -0
  110. package/components/BICOffsetPickerDialog/components/WellSection/index.js +1 -1
  111. package/components/BICOffsetPickerDialog/components/WellSection/index.js.map +1 -0
  112. package/components/BICOffsetPickerDialog/constants.js.map +1 -0
  113. package/components/BICOffsetPickerDialog/effects/index.js.map +1 -0
  114. package/components/BICOffsetPickerDialog/index.js +1 -1
  115. package/components/BICOffsetPickerDialog/index.js.map +1 -0
  116. package/components/BICOffsetPickerDialog/utils/apiCalls.js.map +1 -0
  117. package/components/Breadcrumbs/index.js +1 -1
  118. package/components/Breadcrumbs/index.js.map +1 -0
  119. package/components/Button/index.js.map +1 -0
  120. package/components/Casing/CasingComponentIcon.js.map +1 -0
  121. package/components/Casing/CasingTable/CasingComponent.js.map +1 -0
  122. package/components/Casing/CasingTable/index.js.map +1 -0
  123. package/components/ChartActionsList/ChartActionsList.css.js.map +1 -0
  124. package/components/ChartActionsList/ChartActionsList.js.map +1 -0
  125. package/components/ChartActionsList/icons/GoLive.js.map +1 -0
  126. package/components/ChartActionsList/icons/LeftArrow.js.map +1 -0
  127. package/components/ChartActionsList/icons/RightArrow.js.map +1 -0
  128. package/components/ChartActionsList/icons/TimeRange.js.map +1 -0
  129. package/components/ChartActionsList/icons/ZoomIn.js.map +1 -0
  130. package/components/ChartActionsList/icons/ZoomOut.js.map +1 -0
  131. package/components/Checkbox/index.js.map +1 -0
  132. package/components/Chip/index.js.map +1 -0
  133. package/components/CollapsableSidebar.js +1 -1
  134. package/components/CollapsableSidebar.js.map +1 -0
  135. package/components/CollapsibleContent.js.map +1 -0
  136. package/components/ColorPicker/ColorPicker.js.map +1 -0
  137. package/components/ColorPicker/PaletteChromePicker/ColorSquare/ColorSquare.js.map +1 -0
  138. package/components/ColorPicker/PaletteChromePicker/Palette/Palette.css.js.map +1 -0
  139. package/components/ColorPicker/PaletteChromePicker/Palette/Palette.js.map +1 -0
  140. package/components/ColorPicker/PaletteChromePicker/Palette/PaletteConstants.js.map +1 -0
  141. package/components/ColorPicker/PaletteChromePicker/PaletteChromePicker.js.map +1 -0
  142. package/components/Comment/CommentIcon/BadgeIcon.js.map +1 -0
  143. package/components/Comment/CommentIcon/index.js.map +1 -0
  144. package/components/Comment/index.js +1 -1
  145. package/components/Comment/index.js.map +1 -0
  146. package/components/Comment/styles.css.js.map +1 -0
  147. package/components/CommentInput/index.js.map +1 -0
  148. package/components/CommentInput/styles.css.js.map +1 -0
  149. package/components/CommentLoader.js.map +1 -0
  150. package/components/CommentWrapper.js.map +1 -0
  151. package/components/CommentsInfo/index.js.map +1 -0
  152. package/components/CommentsInfo/styles.css.js.map +1 -0
  153. package/components/ConfirmationDialog.js +1 -1
  154. package/components/ConfirmationDialog.js.map +1 -0
  155. package/components/ContextMenuItem/index.js.map +1 -0
  156. package/components/Counter/index.js.map +1 -0
  157. package/components/DatePicker/index.js.map +1 -0
  158. package/components/DateTimePicker/index.js.map +1 -0
  159. package/components/DevCenter/AppContext.js.map +1 -0
  160. package/components/DevCenter/AppHeader/AppHeader.css.js.map +1 -0
  161. package/components/DevCenter/AppHeader/AppHeader.js +1 -1
  162. package/components/DevCenter/AppHeader/AppHeader.js.map +1 -0
  163. package/components/DevCenter/AppHeader/AppHeaderNew.css.js +1 -1
  164. package/components/DevCenter/AppHeader/AppHeaderNew.css.js.map +1 -0
  165. package/components/DevCenter/AppHeader/AppHeaderNew.js +1 -1
  166. package/components/DevCenter/AppHeader/AppHeaderNew.js.map +1 -0
  167. package/components/DevCenter/AppHeader/PadMode.js +1 -1
  168. package/components/DevCenter/AppHeader/PadMode.js.map +1 -0
  169. package/components/DevCenter/AppHeader/VersionBadge.css.js.map +1 -0
  170. package/components/DevCenter/AppHeader/VersionBadge.js.map +1 -0
  171. package/components/DevCenter/AppHeader/utils.js.map +1 -0
  172. package/components/DevCenter/AppSettingsPopover/AppSettingsPopover.js +1 -1
  173. package/components/DevCenter/AppSettingsPopover/AppSettingsPopover.js.map +1 -0
  174. package/components/DevCenter/AppSideBar/AppSideBar.js +1 -1
  175. package/components/DevCenter/AppSideBar/AppSideBar.js.map +1 -0
  176. package/components/DevCenter/AppsDataProvider/AppsDataProvider.js.map +1 -0
  177. package/components/DevCenter/AppsDataProvider/effects/dataResolvers.js +1 -1
  178. package/components/DevCenter/AppsDataProvider/effects/dataResolvers.js.map +1 -0
  179. package/components/DevCenter/AppsDataProvider/effects/useAppsData.js.map +1 -0
  180. package/components/DevCenter/AppsDataProvider/effects/utils.js +1 -1
  181. package/components/DevCenter/AppsDataProvider/effects/utils.js.map +1 -0
  182. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.css.js.map +1 -0
  183. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  184. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -0
  185. package/components/DevCenter/DevCenterAppContainer/components/AnnotationsButton/AnnotationsButton.js.map +1 -0
  186. package/components/DevCenter/DevCenterAppContainer/components/AppActions/AppActions.css.js.map +1 -0
  187. package/components/DevCenter/DevCenterAppContainer/components/AppActions/AppActions.js.map +1 -0
  188. package/components/DevCenter/DevCenterAppContainer/components/AppInfoMessage/AppInfoMessage.css.js.map +1 -0
  189. package/components/DevCenter/DevCenterAppContainer/components/AppInfoMessage/AppInfoMessage.js +1 -1
  190. package/components/DevCenter/DevCenterAppContainer/components/AppInfoMessage/AppInfoMessage.js.map +1 -0
  191. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppDetails.js.map +1 -0
  192. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js +1 -1
  193. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js.map +1 -0
  194. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.module.css.js.map +1 -0
  195. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/RemoveAppButton.js +1 -1
  196. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/RemoveAppButton.js.map +1 -0
  197. package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/style.css.js.map +1 -0
  198. package/components/DevCenter/DevCenterAppContainer/components/DcTooltipsCoordinatorProvider/DcTooltipsCoordinatorProvider.js.map +1 -0
  199. package/components/DevCenter/DevCenterAppContainer/components/DevCenterAppView/DevCenterAppView.js +1 -1
  200. package/components/DevCenter/DevCenterAppContainer/components/DevCenterAppView/DevCenterAppView.js.map +1 -0
  201. package/components/DevCenter/DevCenterAppContainer/components/DevCenterAppView/components/ChooseAssetButton/index.js +1 -0
  202. package/components/DevCenter/DevCenterAppContainer/components/DevCenterAppView/components/ChooseAssetButton/index.js.map +1 -0
  203. package/components/DevCenter/DevCenterAppContainer/components/DisabledSettingsMessage/DisabledSettingsMessage.js.map +1 -0
  204. package/components/DevCenter/DevCenterAppContainer/components/FullscreenButton/FullscreenButton.css.js.map +1 -0
  205. package/components/DevCenter/DevCenterAppContainer/components/FullscreenButton/FullscreenButton.js.map +1 -0
  206. package/components/DevCenter/DevCenterAppContainer/components/HelpCenterDialog/HelpCenterDialog.js +1 -1
  207. package/components/DevCenter/DevCenterAppContainer/components/HelpCenterDialog/HelpCenterDialog.js.map +1 -0
  208. package/components/DevCenter/DevCenterAppContainer/components/IsInsideDcAppProvider/IsInsideDcAppProvider.js.map +1 -0
  209. package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus/NonPriorityMenus.css.js.map +1 -0
  210. package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus/NonPriorityMenus.js.map +1 -0
  211. package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus/PriorityMenus.css.js.map +1 -0
  212. package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus/PriorityMenus.js.map +1 -0
  213. package/components/DevCenter/DevCenterAppContainer/components/RestoreAppSizeButton/RestoreAppSizeButton.css.js.map +1 -0
  214. package/components/DevCenter/DevCenterAppContainer/components/RestoreAppSizeButton/index.js.map +1 -0
  215. package/components/DevCenter/DevCenterAppContainer/effects/useAnnotationsData.js +1 -1
  216. package/components/DevCenter/DevCenterAppContainer/effects/useAnnotationsData.js.map +1 -0
  217. package/components/DevCenter/DevCenterAppContainer/effects/useAnnotationsList.js.map +1 -0
  218. package/components/DevCenter/DevCenterAppContainer/effects/useAppMaximized.js +1 -1
  219. package/components/DevCenter/DevCenterAppContainer/effects/useAppMaximized.js.map +1 -0
  220. package/components/DevCenter/DevCenterAppContainer/effects/useAppSettings.js.map +1 -0
  221. package/components/DevCenter/DevCenterAppContainer/effects/useHelpCenter.js.map +1 -0
  222. package/components/DevCenter/DevCenterAppContainer/utils.js.map +1 -0
  223. package/components/DevCenter/DevCenterRouterContext/DevCenterRouterContext.js.map +1 -0
  224. package/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.css.js.map +1 -0
  225. package/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js.map +1 -0
  226. package/components/DevCenter/DevCenterRouterContext/effects/useDevCenterRouter.js.map +1 -0
  227. package/components/DevCenter/DevCenterRouterContext/hocs/withUniversalLocationHOC.js.map +1 -0
  228. package/components/DevCenter/IsolatedDevCenterAppContainer/AppsGridDragHandle.js +1 -0
  229. package/components/DevCenter/IsolatedDevCenterAppContainer/AppsGridDragHandle.js.map +1 -0
  230. package/components/DevCenter/IsolatedDevCenterAppContainer/AppsGridDragHandle.scss.js +1 -0
  231. package/components/DevCenter/IsolatedDevCenterAppContainer/AppsGridDragHandle.scss.js.map +1 -0
  232. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterAppZoidComponent.js +1 -0
  233. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterAppZoidComponent.js.map +1 -0
  234. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js +1 -0
  235. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js.map +1 -0
  236. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.module.css.js +1 -0
  237. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.module.css.js.map +1 -0
  238. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js +1 -0
  239. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js.map +1 -0
  240. package/components/DevCenter/IsolatedDevCenterAppContainer/constants.js +1 -0
  241. package/components/DevCenter/IsolatedDevCenterAppContainer/constants.js.map +1 -0
  242. package/components/DevCenter/IsolatedDevCenterAppContainer/effects/useXProps.js +1 -0
  243. package/components/DevCenter/IsolatedDevCenterAppContainer/effects/useXProps.js.map +1 -0
  244. package/components/DevCenter/IsolatedDevCenterAppContainer/utils/replaceUndefinedValuesWithNull.js +1 -0
  245. package/components/DevCenter/IsolatedDevCenterAppContainer/utils/replaceUndefinedValuesWithNull.js.map +1 -0
  246. package/components/DevCenter/NavigationBar/NavigationBar.js.map +1 -0
  247. package/components/DevCenter/SideBar/SideBar.js.map +1 -0
  248. package/components/Drillstring/BHAComponentDetail/constants.js.map +1 -0
  249. package/components/Drillstring/BHAComponentDetail/index.js.map +1 -0
  250. package/components/Drillstring/BHAComponentIcon.js.map +1 -0
  251. package/components/Drillstring/BHASchematic.js.map +1 -0
  252. package/components/Drillstring/BHATable/BHAComponent.js.map +1 -0
  253. package/components/Drillstring/BHATable/index.js.map +1 -0
  254. package/components/EditableItem/EditableItem/index.js.map +1 -0
  255. package/components/EditableItem/EditableItemWithBadge/index.js.map +1 -0
  256. package/components/EmojiIconButton.js.map +1 -0
  257. package/components/EmptyView/EmptyAppView/EmptyAppView.js.map +1 -0
  258. package/components/EmptyView/EmptyAppView/components/ErrorSubtitleWithIntercomLink.js.map +1 -0
  259. package/components/EmptyView/EmptyView.js.map +1 -0
  260. package/components/ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.css.js.map +1 -0
  261. package/components/ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.js +1 -1
  262. package/components/ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.js.map +1 -0
  263. package/components/ErrorBoundary/ErrorBoundary.js.map +1 -0
  264. package/components/FailedFileUploading.js.map +1 -0
  265. package/components/FeedItem/FeedItem.css.js.map +1 -0
  266. package/components/FeedItem/FeedItem.js +1 -1
  267. package/components/FeedItem/FeedItem.js.map +1 -0
  268. package/components/FeedItem/FeedItemEditProvider/FeedItemEditModal.js.map +1 -0
  269. package/components/FeedItem/FeedItemEditProvider/FeedItemEditProvider.js.map +1 -0
  270. package/components/FeedItem/components/Actions.js.map +1 -0
  271. package/components/FeedItem/components/AvatarIcon.js.map +1 -0
  272. package/components/FeedItem/components/Comments.js +1 -1
  273. package/components/FeedItem/components/Comments.js.map +1 -0
  274. package/components/FeedItem/components/Content.js +1 -1
  275. package/components/FeedItem/components/Content.js.map +1 -0
  276. package/components/FeedItem/components/CreatedAt.js.map +1 -0
  277. package/components/FeedItem/components/FeedComments.js +1 -1
  278. package/components/FeedItem/components/FeedComments.js.map +1 -0
  279. package/components/FeedItem/components/Icon.js.map +1 -0
  280. package/components/FeedItem/components/Reactions.js +1 -1
  281. package/components/FeedItem/components/Reactions.js.map +1 -0
  282. package/components/FeedItem/components/RigAndWell.js.map +1 -0
  283. package/components/FeedItem/components/TypeAndAssetTitle.js.map +1 -0
  284. package/components/FeedItem/feedItemTypes/AlertFeedItem.js.map +1 -0
  285. package/components/FeedItem/feedItemTypes/CompletionDailyCostFeedItem.js.map +1 -0
  286. package/components/FeedItem/feedItemTypes/CompletionDocumentFeedItem.js.map +1 -0
  287. package/components/FeedItem/feedItemTypes/CompletionNptFeedItem.js +1 -1
  288. package/components/FeedItem/feedItemTypes/CompletionNptFeedItem.js.map +1 -0
  289. package/components/FeedItem/feedItemTypes/CompletionOperationSummaryFeedItem.js.map +1 -0
  290. package/components/FeedItem/feedItemTypes/CompletionOperationalNoteFeedItem.js.map +1 -0
  291. package/components/FeedItem/feedItemTypes/DocumentFeedItem.js.map +1 -0
  292. package/components/FeedItem/feedItemTypes/DrillerMemoFeedItem.js.map +1 -0
  293. package/components/FeedItem/feedItemTypes/DrillingDailyCostFeedItem.js.map +1 -0
  294. package/components/FeedItem/feedItemTypes/DrillingOperationSummaryFeedItem.js.map +1 -0
  295. package/components/FeedItem/feedItemTypes/DrillingOperationalNoteFeedItem.js.map +1 -0
  296. package/components/FeedItem/feedItemTypes/LessonsLearnedFeedItem/icons/Critical.js.map +1 -0
  297. package/components/FeedItem/feedItemTypes/LessonsLearnedFeedItem/icons/Major.js.map +1 -0
  298. package/components/FeedItem/feedItemTypes/LessonsLearnedFeedItem/icons/Minor.js.map +1 -0
  299. package/components/FeedItem/feedItemTypes/LessonsLearnedFeedItem/index.js.map +1 -0
  300. package/components/FeedItem/feedItemTypes/NptFeedItem.js +1 -1
  301. package/components/FeedItem/feedItemTypes/NptFeedItem.js.map +1 -0
  302. package/components/FeedItem/feedItemTypes/PostFeedItem.js.map +1 -0
  303. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/api.js +1 -0
  304. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/api.js.map +1 -0
  305. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/NoData.js +1 -0
  306. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/NoData.js.map +1 -0
  307. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/Predictions.js +1 -0
  308. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/Predictions.js.map +1 -0
  309. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/PredictionsItem.js +1 -0
  310. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/PredictionsItem.js.map +1 -0
  311. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/Stages/Stages.js +1 -0
  312. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/Stages/Stages.js.map +1 -0
  313. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/Stages/utils.js +1 -0
  314. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/components/Stages/utils.js.map +1 -0
  315. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/index.js +1 -0
  316. package/components/FeedItem/feedItemTypes/StageOverviewFeedItem/index.js.map +1 -0
  317. package/components/FeedItem/feedItemTypes/TracesMemoFeedItem.js +1 -1
  318. package/components/FeedItem/feedItemTypes/TracesMemoFeedItem.js.map +1 -0
  319. package/components/FilePreview/index.js.map +1 -0
  320. package/components/FilePreview/styles.css.js.map +1 -0
  321. package/components/FileTypeIcon.js.map +1 -0
  322. package/components/FileUploadIconButton.js.map +1 -0
  323. package/components/FilesLoader/FilesLoader.js.map +1 -0
  324. package/components/FilesLoader/Icons/CSVFileIcon.js.map +1 -0
  325. package/components/FilesLoader/Icons/DocFileIcon.js.map +1 -0
  326. package/components/FilesLoader/Icons/ExelFileIcon.js.map +1 -0
  327. package/components/FilesLoader/Icons/FileIcon.js.map +1 -0
  328. package/components/FilesLoader/Icons/IconCancel.js.map +1 -0
  329. package/components/FilesLoader/Icons/IconSuccess.js.map +1 -0
  330. package/components/FilesLoader/Icons/IconWarning.js.map +1 -0
  331. package/components/FilesLoader/Icons/ImageFileIcon.js.map +1 -0
  332. package/components/FilesLoader/Icons/PdfFileIcon.js.map +1 -0
  333. package/components/FilesLoader/Icons/UnknownFileIcon.js.map +1 -0
  334. package/components/FilesLoader/useStyles.js.map +1 -0
  335. package/components/FolderMenuItem/components/ClosedFolderIcon.js.map +1 -0
  336. package/components/FolderMenuItem/components/FolderIcon.js.map +1 -0
  337. package/components/FolderMenuItem/components/OpenFolderIcon.js.map +1 -0
  338. package/components/FolderMenuItem/index.js.map +1 -0
  339. package/components/FolderMenuItemWithLinks/index.js.map +1 -0
  340. package/components/GoogleDocsViewer/index.js.map +1 -0
  341. package/components/GoogleDocsViewer/styles.css.js.map +1 -0
  342. package/components/HeaderLayout/HeaderLayout.css.js.map +1 -0
  343. package/components/HeaderLayout/HeaderLayout.js.map +1 -0
  344. package/components/HeaderLayout/constants.js.map +1 -0
  345. package/components/HeaderLayout/effects/index.js.map +1 -0
  346. package/components/HeaderLayout/utils.js.map +1 -0
  347. package/components/IconButton/index.js.map +1 -0
  348. package/components/IconMenu/index.js.map +1 -0
  349. package/components/Icons/AttachIcon.js.map +1 -0
  350. package/components/Icons/EmojiIcon.js.map +1 -0
  351. package/components/Icons/SendIcon.js.map +1 -0
  352. package/components/ImageViewer/index.js.map +1 -0
  353. package/components/ImageViewer/styles.css.js.map +1 -0
  354. package/components/InfiniteList/index.js +1 -1
  355. package/components/InfiniteList/index.js.map +1 -0
  356. package/components/InfiniteList/styles.css.js.map +1 -0
  357. package/components/KeyboardDateTimePicker.js.map +1 -0
  358. package/components/LabelsCounter/LabelsCounter.js.map +1 -0
  359. package/components/LoadingIndicator/FullScreenLoadingIndicator.js.map +1 -0
  360. package/components/LoadingIndicator/InlineLoadingIndicator.js.map +1 -0
  361. package/components/LoadingIndicator/Loader.js.map +1 -0
  362. package/components/LoadingIndicator/LoadingIndicator.css.js.map +1 -0
  363. package/components/LoadingIndicator/LoadingIndicator.js.map +1 -0
  364. package/components/Login/components/Chip.js.map +1 -0
  365. package/components/Login/components/EmailField.js.map +1 -0
  366. package/components/Login/components/HiddenEmailField.js.map +1 -0
  367. package/components/Login/components/Login.global.css.js.map +1 -0
  368. package/components/Login/components/Login.js.map +1 -0
  369. package/components/Login/components/LogoIcon.js.map +1 -0
  370. package/components/Login/components/OrDivider.js.map +1 -0
  371. package/components/Login/components/PasswordField.js.map +1 -0
  372. package/components/Login/components/Step.js.map +1 -0
  373. package/components/Login/components/StepContent.js.map +1 -0
  374. package/components/Login/components/StepFooter.js.map +1 -0
  375. package/components/Login/components/StepHeader.js.map +1 -0
  376. package/components/Login/index.js.map +1 -0
  377. package/components/MenuItem/index.js.map +1 -0
  378. package/components/Modal/Modal.css.js.map +1 -0
  379. package/components/Modal/index.js.map +1 -0
  380. package/components/Notifications/Notifications.js.map +1 -0
  381. package/components/Notifications/NotificationsContainer.js +1 -1
  382. package/components/Notifications/NotificationsContainer.js.map +1 -0
  383. package/components/Notifications/components/Toast.js +1 -1
  384. package/components/Notifications/components/Toast.js.map +1 -0
  385. package/components/Notifications/components/styles.js.map +1 -0
  386. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -0
  387. package/components/OffsetWellPickerV2/components/Filter/ClearFiltersButton.js.map +1 -0
  388. package/components/OffsetWellPickerV2/components/Filter/MultiSelect.js.map +1 -0
  389. package/components/OffsetWellPickerV2/components/Filter/RadiusInput.js.map +1 -0
  390. package/components/OffsetWellPickerV2/components/Filter/SidetrackSwitch.js +1 -1
  391. package/components/OffsetWellPickerV2/components/Filter/SidetrackSwitch.js.map +1 -0
  392. package/components/OffsetWellPickerV2/components/Filter/SingleSelect.js.map +1 -0
  393. package/components/OffsetWellPickerV2/components/Filter/SubjectWellSearch.js.map +1 -0
  394. package/components/OffsetWellPickerV2/components/Filter/ToggleFiltersButton.js.map +1 -0
  395. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  396. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -0
  397. package/components/OffsetWellPickerV2/components/Filter/index.js +1 -1
  398. package/components/OffsetWellPickerV2/components/Filter/index.js.map +1 -0
  399. package/components/OffsetWellPickerV2/components/Map/Map.css.js.map +1 -0
  400. package/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -0
  401. package/components/OffsetWellPickerV2/components/Map/index.css.js.map +1 -0
  402. package/components/OffsetWellPickerV2/components/Map/index.js.map +1 -0
  403. package/components/OffsetWellPickerV2/components/Map/popup.css.js.map +1 -0
  404. package/components/OffsetWellPickerV2/components/Map/popupGenerator.js.map +1 -0
  405. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  406. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -0
  407. package/components/OffsetWellPickerV2/components/Table/MetricsSelect.js.map +1 -0
  408. package/components/OffsetWellPickerV2/components/Table/SubjectIndicator.css.js.map +1 -0
  409. package/components/OffsetWellPickerV2/components/Table/SubjectIndicator.js.map +1 -0
  410. package/components/OffsetWellPickerV2/components/Table/index.js +1 -1
  411. package/components/OffsetWellPickerV2/components/Table/index.js.map +1 -0
  412. package/components/OffsetWellPickerV2/constants.js +1 -1
  413. package/components/OffsetWellPickerV2/constants.js.map +1 -0
  414. package/components/OffsetWellPickerV2/effects/biDirectionalFiltering.js.map +1 -0
  415. package/components/OffsetWellPickerV2/effects/index.js +1 -1
  416. package/components/OffsetWellPickerV2/effects/index.js.map +1 -0
  417. package/components/OffsetWellPickerV2/utils/apiCalls.js +1 -1
  418. package/components/OffsetWellPickerV2/utils/apiCalls.js.map +1 -0
  419. package/components/PadModeSelect/PadModeSelect.js +1 -1
  420. package/components/PadModeSelect/PadModeSelect.js.map +1 -0
  421. package/components/PadModeSelect/utils.js.map +1 -0
  422. package/components/PadOffsetsPicker/OffsetAssetChip.js.map +1 -0
  423. package/components/PadOffsetsPicker/OffsetAssetsListExpander.js.map +1 -0
  424. package/components/PadOffsetsPicker/PadOffsetsPicker.js +1 -1
  425. package/components/PadOffsetsPicker/PadOffsetsPicker.js.map +1 -0
  426. package/components/PadOffsetsPicker/StagesSelector.js.map +1 -0
  427. package/components/PadOffsetsPicker/index.js.map +1 -0
  428. package/components/ParameterCharts/AddEditTrack.css.js.map +1 -0
  429. package/components/ParameterCharts/AddEditTrack.js.map +1 -0
  430. package/components/ParameterCharts/ChartsContext.js.map +1 -0
  431. package/components/ParameterCharts/DataContext.js.map +1 -0
  432. package/components/ParameterCharts/ParameterCharts.css.js.map +1 -0
  433. package/components/ParameterCharts/ParameterCharts.js.map +1 -0
  434. package/components/ParameterCharts/SettingsContext.js.map +1 -0
  435. package/components/ParameterCharts/components/ChartContainer.css.js.map +1 -0
  436. package/components/ParameterCharts/components/ChartContainer.js.map +1 -0
  437. package/components/ParameterCharts/components/Charts/EmptyChart.css.js.map +1 -0
  438. package/components/ParameterCharts/components/Charts/EmptyChart.js.map +1 -0
  439. package/components/ParameterCharts/components/Charts/LineChart.css.js.map +1 -0
  440. package/components/ParameterCharts/components/Charts/LineChart.js.map +1 -0
  441. package/components/ParameterCharts/components/Charts/options.js.map +1 -0
  442. package/components/ParameterCharts/components/DataLoadingIndicator.js.map +1 -0
  443. package/components/ParameterCharts/components/SingleChannelTrackSettings.js.map +1 -0
  444. package/components/ParameterCharts/components/Tooltip/CursorPositioner.css.js.map +1 -0
  445. package/components/ParameterCharts/components/Tooltip/CursorPositioner.js.map +1 -0
  446. package/components/ParameterCharts/components/Tooltip/Tooltip.css.js.map +1 -0
  447. package/components/ParameterCharts/components/Tooltip/Tooltip.js.map +1 -0
  448. package/components/ParameterCharts/components/TraceHeader.css.js.map +1 -0
  449. package/components/ParameterCharts/components/TraceHeader.js.map +1 -0
  450. package/components/ParameterCharts/components/TraceSelect.js.map +1 -0
  451. package/components/ParameterCharts/components/TraceSettings.css.js.map +1 -0
  452. package/components/ParameterCharts/components/TraceSettings.js.map +1 -0
  453. package/components/ParameterCharts/components/Track.css.js.map +1 -0
  454. package/components/ParameterCharts/components/Track.js +1 -1
  455. package/components/ParameterCharts/components/Track.js.map +1 -0
  456. package/components/ParameterCharts/components/TrackSettings.css.js.map +1 -0
  457. package/components/ParameterCharts/components/TrackSettings.js.map +1 -0
  458. package/components/ParameterCharts/constants.js.map +1 -0
  459. package/components/ParameterCharts/utils/dataParser.js.map +1 -0
  460. package/components/PinnableFilters/PinnableFilters.css.js.map +1 -0
  461. package/components/PinnableFilters/PinnableFilters.js.map +1 -0
  462. package/components/PinnableFilters/components/FiltersToggler.js.map +1 -0
  463. package/components/PinnableFilters/components/PinAppSwitch.js.map +1 -0
  464. package/components/PinnableFilters/constants.js.map +1 -0
  465. package/components/PinnableFilters/effects/index.js +1 -1
  466. package/components/PinnableFilters/effects/index.js.map +1 -0
  467. package/components/PinnableFilters/utils.js.map +1 -0
  468. package/components/PostInput/PostInput.css.js.map +1 -0
  469. package/components/PostInput/PostInput.js.map +1 -0
  470. package/components/PostPreviewDialog/index.js +1 -1
  471. package/components/PostPreviewDialog/index.js.map +1 -0
  472. package/components/PostPreviewDialog/styles.css.js.map +1 -0
  473. package/components/PriceInput/FormattedNumber.js.map +1 -0
  474. package/components/PriceInput/PriceInput.js.map +1 -0
  475. package/components/RangeSlider/Input.css.js.map +1 -0
  476. package/components/RangeSlider/RangeSlider.css.js.map +1 -0
  477. package/components/RangeSlider/RangeSlider.js.map +1 -0
  478. package/components/RangeSlider/constants.js.map +1 -0
  479. package/components/RangeSlider/inputs/FromInput.js.map +1 -0
  480. package/components/RangeSlider/inputs/ToInput.js.map +1 -0
  481. package/components/RangeSlider/strategies/horizontal.js.map +1 -0
  482. package/components/RangeSlider/strategies/vertical.js.map +1 -0
  483. package/components/RangeSlider/utils.js.map +1 -0
  484. package/components/ResizableTable/ResizableTable.js +1 -1
  485. package/components/ResizableTable/ResizableTable.js.map +1 -0
  486. package/components/ResizableTable/ResizableTableCell.js.map +1 -0
  487. package/components/ResizableTable/ResizableTableHeaderCell.js.map +1 -0
  488. package/components/SearchInput/index.js.map +1 -0
  489. package/components/Select/index.js.map +1 -0
  490. package/components/SettingEditors/ColorEditor/index.js.map +1 -0
  491. package/components/SettingEditors/ColorEditor/style.css.js.map +1 -0
  492. package/components/SettingEditors/DropdownEditor/index.js.map +1 -0
  493. package/components/SettingEditors/RadioEditor/index.js.map +1 -0
  494. package/components/SlateFormattedText/Constants.js.map +1 -0
  495. package/components/SlateFormattedText/Elements/ImageElement/ImageElement.css.js.map +1 -0
  496. package/components/SlateFormattedText/Elements/ImageElement/ImageElement.js.map +1 -0
  497. package/components/SlateFormattedText/Elements/VideoElement/VideoElement.js.map +1 -0
  498. package/components/SlateFormattedText/Elements/VideoElement/style.css.js.map +1 -0
  499. package/components/SlateFormattedText/RenderElements.js.map +1 -0
  500. package/components/SlateFormattedText/SlateFormattedText.js +1 -1
  501. package/components/SlateFormattedText/SlateFormattedText.js.map +1 -0
  502. package/components/SlateFormattedText/style.css.js.map +1 -0
  503. package/components/SlateFormattedText/utils.js.map +1 -0
  504. package/components/StageDesignVActual/ComparisonBar/ComparisonBar.js +1 -0
  505. package/components/StageDesignVActual/ComparisonBar/ComparisonBar.js.map +1 -0
  506. package/components/StageDesignVActual/ComparisonBar/utils.js +1 -0
  507. package/components/StageDesignVActual/ComparisonBar/utils.js.map +1 -0
  508. package/components/StageDesignVActual/ComparisonHeader.js +1 -0
  509. package/components/StageDesignVActual/ComparisonHeader.js.map +1 -0
  510. package/components/StageDesignVActual/ComparisonRow.js +1 -0
  511. package/components/StageDesignVActual/ComparisonRow.js.map +1 -0
  512. package/components/StageDesignVActual/ComparisonTable.css.js +1 -0
  513. package/components/StageDesignVActual/ComparisonTable.css.js.map +1 -0
  514. package/components/StageDesignVActual/ElementsComparison/ElementsComparison.js +1 -0
  515. package/components/StageDesignVActual/ElementsComparison/ElementsComparison.js.map +1 -0
  516. package/components/StageDesignVActual/ElementsComparison/utils.js +1 -0
  517. package/components/StageDesignVActual/ElementsComparison/utils.js.map +1 -0
  518. package/components/Stepper/Step.css.js.map +1 -0
  519. package/components/Stepper/Step.js.map +1 -0
  520. package/components/Stepper/Stepper.js.map +1 -0
  521. package/components/Stepper/StepsWrapper.css.js.map +1 -0
  522. package/components/Stepper/StepsWrapper.js.map +1 -0
  523. package/components/StyledMenuItem/index.js.map +1 -0
  524. package/components/SwitchControl/index.js.map +1 -0
  525. package/components/SwitchControl/style.css.js.map +1 -0
  526. package/components/Table/TableSortLabel/TableSortLabel.js.map +1 -0
  527. package/components/Table/TableToolbar/TableToolbar.js.map +1 -0
  528. package/components/Tabs/Tab.js.map +1 -0
  529. package/components/Tabs/Tabs.js.map +1 -0
  530. package/components/Template/TemplatePopover/Styles.js.map +1 -0
  531. package/components/Template/TemplatePopover/index.js.map +1 -0
  532. package/components/Template/TemplateSharingDialog/ChipSelector.css.js.map +1 -0
  533. package/components/Template/TemplateSharingDialog/ChipSelector.js.map +1 -0
  534. package/components/Template/TemplateSharingDialog/UsersChipSelector.js.map +1 -0
  535. package/components/Template/TemplateSharingDialog/index.js.map +1 -0
  536. package/components/TextField/effects/index.js.map +1 -0
  537. package/components/TextField/index.js.map +1 -0
  538. package/components/TextLink/index.js.map +1 -0
  539. package/components/Tooltip/MuiTooltipDcWrapper.js +1 -1
  540. package/components/Tooltip/MuiTooltipDcWrapper.js.map +1 -0
  541. package/components/Tooltip/Tooltip.js +1 -1
  542. package/components/Tooltip/Tooltip.js.map +1 -0
  543. package/components/TracesEditModal/TracesEditModal.css.js.map +1 -0
  544. package/components/TracesEditModal/TracesEditModal.js.map +1 -0
  545. package/components/TracesEditModal/TracesEditModalContainer.js.map +1 -0
  546. package/components/TruncatedText/index.js.map +1 -0
  547. package/components/Typography.js.map +1 -0
  548. package/components/UserCard/index.js +1 -1
  549. package/components/UserCard/index.js.map +1 -0
  550. package/components/UserCard/style.css.js.map +1 -0
  551. package/components/UserCardPopover.js.map +1 -0
  552. package/components/UserMention/constants.js.map +1 -0
  553. package/components/UserMention/index.js.map +1 -0
  554. package/components/UserMention/style.css.js.map +1 -0
  555. package/components/UserMention/utils/index.js.map +1 -0
  556. package/components/VirtualizedTable/CustomizeColumnsDialog.js.map +1 -0
  557. package/components/VirtualizedTable/DraggableList.js +1 -1
  558. package/components/VirtualizedTable/DraggableList.js.map +1 -0
  559. package/components/VirtualizedTable/VirtualizedTable.js +1 -1
  560. package/components/VirtualizedTable/VirtualizedTable.js.map +1 -0
  561. package/components/VirtualizedTable/index.js.map +1 -0
  562. package/components/WellSummary/ActivitySummaryChart.js.map +1 -0
  563. package/components/WellSummary/FracWirelineTimeChart.js.map +1 -0
  564. package/components/WellSummary/WellSummaryItemLabel.js.map +1 -0
  565. package/components/WellSummary/WellSummaryItemTitle.js.map +1 -0
  566. package/components/WellSummary/WellSummaryItemValue.js +1 -1
  567. package/components/WellSummary/WellSummaryItemValue.js.map +1 -0
  568. package/components/WellSummary/effects/useWellSummaryData.js +1 -1
  569. package/components/WellSummary/effects/useWellSummaryData.js.map +1 -0
  570. package/components/WellSummary/index.js.map +1 -0
  571. package/components/WellSummary/utils.js.map +1 -0
  572. package/components/index.js +1 -1
  573. package/components/index.js.map +1 -0
  574. package/config/highcharts/highcharts-contour.js.map +1 -0
  575. package/config/highcharts/highcharts.js.map +1 -0
  576. package/config/index.js.map +1 -0
  577. package/config/initGlobalDependencies.js +1 -0
  578. package/config/initGlobalDependencies.js.map +1 -0
  579. package/config/mapbox/index.js.map +1 -0
  580. package/config/theme/accordionOverrides.js.map +1 -0
  581. package/config/theme/buttonOverrides.js.map +1 -0
  582. package/config/theme/checkboxOverrides.js.map +1 -0
  583. package/config/theme/chipOverrides.js.map +1 -0
  584. package/config/theme/dateTimePickerThemeOverrides.js.map +1 -0
  585. package/config/theme/fabOverrides.js.map +1 -0
  586. package/config/theme/formControlLabelOverrides.js.map +1 -0
  587. package/config/theme/formGroupOverrides.js.map +1 -0
  588. package/config/theme/index.js.map +1 -0
  589. package/config/theme/lightThemePalette.mjs.js.map +1 -0
  590. package/config/theme/palette.mjs.js.map +1 -0
  591. package/config/theme/radioOverrides.js.map +1 -0
  592. package/config/theme/tableOverrides.js.map +1 -0
  593. package/config/theme/textFieldOverrides.js.map +1 -0
  594. package/config/theme/themeVariables.mjs.js.map +1 -0
  595. package/config/theme/toggleButtonsGroupOverrides.js.map +1 -0
  596. package/config/theme/tooltipOverrides.js.map +1 -0
  597. package/constants/accuracy.js.map +1 -0
  598. package/constants/alerts.js.map +1 -0
  599. package/constants/appPackages.js.map +1 -0
  600. package/constants/apps.js.map +1 -0
  601. package/constants/assetTypes.js.map +1 -0
  602. package/constants/casing.js.map +1 -0
  603. package/constants/completion.js.map +1 -0
  604. package/constants/dateTimeFormat.js.map +1 -0
  605. package/constants/devcenter.js.map +1 -0
  606. package/constants/drillstring.js.map +1 -0
  607. package/constants/feed.js.map +1 -0
  608. package/constants/goals.js.map +1 -0
  609. package/constants/index.js.map +1 -0
  610. package/constants/notifications.js.map +1 -0
  611. package/constants/rigActivity.js.map +1 -0
  612. package/constants/segment.js.map +1 -0
  613. package/constants/theme.js.map +1 -0
  614. package/constants/wellSummary.js.map +1 -0
  615. package/effects/index.js.map +1 -0
  616. package/effects/useDevCenterApp.js.map +1 -0
  617. package/effects/useEscPress.js.map +1 -0
  618. package/effects/useOutsideClick.js.map +1 -0
  619. package/effects/useSignedURL.js.map +1 -0
  620. package/effects/useSubscriptions.js.map +1 -0
  621. package/ext-esm/@material-ui/icons/esm/ExpandLess.js.map +1 -0
  622. package/ext-esm/@material-ui/icons/esm/ExpandMore.js.map +1 -0
  623. package/ext-esm/@material-ui/icons/esm/Map.js.map +1 -0
  624. package/ext-esm/@material-ui/icons/esm/UnfoldLess.js.map +1 -0
  625. package/ext-esm/@material-ui/icons/esm/UnfoldMore.js.map +1 -0
  626. package/ext-esm/@material-ui/icons/esm/utils/createSvgIcon.js.map +1 -0
  627. package/ext-esm/style-inject/dist/style-inject.es.js.map +1 -0
  628. package/hocs/index.js.map +1 -0
  629. package/hocs/withMUIProvidersHOC.js.map +1 -0
  630. package/index.js +1 -1
  631. package/index.js.map +1 -0
  632. package/package.json +3 -2
  633. package/permissions/PermissionsContext.js +1 -0
  634. package/permissions/PermissionsContext.js.map +1 -0
  635. package/permissions/ProvidePermissions.js +1 -0
  636. package/permissions/ProvidePermissions.js.map +1 -0
  637. package/permissions/constants/abilities.js +1 -0
  638. package/permissions/constants/abilities.js.map +1 -0
  639. package/permissions/constants/appsPermissions.js +1 -0
  640. package/permissions/constants/appsPermissions.js.map +1 -0
  641. package/permissions/constants/index.js +1 -0
  642. package/permissions/constants/index.js.map +1 -0
  643. package/permissions/constants/settingsApps.js +1 -0
  644. package/permissions/constants/settingsApps.js.map +1 -0
  645. package/permissions/index.js +1 -0
  646. package/permissions/index.js.map +1 -0
  647. package/permissions/usePermissions.js +1 -0
  648. package/permissions/usePermissions.js.map +1 -0
  649. package/permissions/useProvidePermissions.js +1 -0
  650. package/permissions/useProvidePermissions.js.map +1 -0
  651. package/permissions/utils.js +1 -0
  652. package/permissions/utils.js.map +1 -0
  653. package/permissions/withPermissionsHOC.js +1 -0
  654. package/permissions/withPermissionsHOC.js.map +1 -0
  655. package/styles/counter/counter.module.scss.js.map +1 -0
  656. package/styles/counter/index.js.map +1 -0
  657. package/styles/customScrollbars.global.css.js.map +1 -0
  658. package/styles/emojiMart.global.css.js.map +1 -0
  659. package/styles/generatedThemesVariables.global.css.js.map +1 -0
  660. package/styles/globalStyles.js +1 -0
  661. package/styles/globalStyles.js.map +1 -0
  662. package/styles/index.global.css.js.map +1 -0
  663. package/styles/index.js.map +1 -0
  664. package/styles/mapbox.global.css.js.map +1 -0
  665. package/styles/reactVirtualized.global.css.js.map +1 -0
  666. package/styles/typography/colors.module.scss.js.map +1 -0
  667. package/styles/typography/index.js.map +1 -0
  668. package/styles/typography/typography.module.scss.js.map +1 -0
  669. package/utils/AccuracyUtils.js.map +1 -0
  670. package/utils/DrillstringUtils.js +1 -1
  671. package/utils/DrillstringUtils.js.map +1 -0
  672. package/utils/FluidCheckUtils.js +1 -1
  673. package/utils/FluidCheckUtils.js.map +1 -0
  674. package/utils/StageDesignVActualUtils.js +1 -1
  675. package/utils/StageDesignVActualUtils.js.map +1 -0
  676. package/utils/alerts.js.map +1 -0
  677. package/utils/apps.js.map +1 -0
  678. package/utils/audio.js.map +1 -0
  679. package/utils/casing/conversion.js +1 -1
  680. package/utils/casing/conversion.js.map +1 -0
  681. package/utils/casing/index.js.map +1 -0
  682. package/utils/casing/validation.js +1 -1
  683. package/utils/casing/validation.js.map +1 -0
  684. package/utils/chartSeries.js.map +1 -0
  685. package/utils/completion.js +1 -1
  686. package/utils/completion.js.map +1 -0
  687. package/utils/components.js.map +1 -0
  688. package/utils/constants/units.js.map +1 -0
  689. package/utils/convert.js.map +1 -0
  690. package/utils/convertKeys.js.map +1 -0
  691. package/utils/csvExport.js.map +1 -0
  692. package/utils/dashboardReports.js.map +1 -0
  693. package/utils/devcenter.js +1 -1
  694. package/utils/devcenter.js.map +1 -0
  695. package/utils/drillstring/conversion.js.map +1 -0
  696. package/utils/drillstring/index.js.map +1 -0
  697. package/utils/drillstring/schematic.js.map +1 -0
  698. package/utils/drillstring/validation.js +1 -1
  699. package/utils/drillstring/validation.js.map +1 -0
  700. package/utils/env.js.map +1 -0
  701. package/utils/feed.js.map +1 -0
  702. package/utils/fileExtension.js.map +1 -0
  703. package/utils/formatting.js.map +1 -0
  704. package/utils/ga.js.map +1 -0
  705. package/utils/goals.js.map +1 -0
  706. package/utils/index.js +1 -1
  707. package/utils/index.js.map +1 -0
  708. package/utils/lasParser.js.map +1 -0
  709. package/utils/loadable.js.map +1 -0
  710. package/utils/main.js.map +1 -0
  711. package/utils/mapUnits.js.map +1 -0
  712. package/utils/mapbox.js.map +1 -0
  713. package/utils/metrics/index.js.map +1 -0
  714. package/utils/metrics/metricsConfig.js.map +1 -0
  715. package/utils/metrics/utils.js.map +1 -0
  716. package/utils/mobileDetect.js.map +1 -0
  717. package/utils/nativeMessages.js.map +1 -0
  718. package/utils/notificationToasts.js.map +1 -0
  719. package/utils/notifications.js.map +1 -0
  720. package/utils/permissions.js.map +1 -0
  721. package/utils/reports.js.map +1 -0
  722. package/utils/rollbar.js.map +1 -0
  723. package/utils/sqlParser.js.map +1 -0
  724. package/utils/themeVariables.js.map +1 -0
  725. package/utils/time.js.map +1 -0
  726. package/utils/torqueAndHookloadUtils.js.map +1 -0
  727. package/utils/user.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sources":["../../../src/utils/drillstring/validation.js"],"sourcesContent":["import moment from 'moment';\nimport { isEmpty, omit, maxBy } from 'lodash';\nimport { getUnitPreference, convertValue, getUnitDisplay } from '../convert';\n\nconst ALLOWED_DIFF_OD_BIT_SIZE = 0.1;\n\nconst DEF_MIN_ID = 0;\nconst DEF_MAX_ID = 100;\nconst DEF_MIN_OD = 1;\nconst DEF_MAX_OD = 100;\nconst DEF_MIN_LENGTH = 0;\n\nconst UR_MIN_ID = 0;\nconst UR_MAX_ID = 50;\nconst UR_MIN_BODY_OD = 1;\nconst UR_MAX_BODY_OD = 50;\nconst UR_MIN_OPENED_OD = 1;\nconst UR_MAX_OPENED_OD = 50;\n\nconst CT_MIN_ID = 0;\nconst CT_MAX_ID = 100;\nconst CT_MIN_OD = 1;\nconst CT_MAX_OD = 100;\nconst CT_MIN_RD = 0;\nconst CT_MAX_RD = 500;\nconst CT_MIN_LENGTH = 0;\n\nconst DP_MIN_ID = 1;\nconst DP_MAX_ID = 7;\nconst DP_MIN_OD = 2;\nconst DP_MAX_OD = 8;\nconst DP_MIN_TJ_ID = 1;\nconst DP_MAX_TJ_ID = 7;\nconst DP_MIN_TJ_OD = 2;\nconst DP_MAX_TJ_OD = 10;\nconst DP_MIN_LENGTH = 0;\n\nconst HWDP_MIN_ID = 1;\nconst HWDP_MAX_ID = 7;\nconst HWDP_MIN_OD = 2;\nconst HWDP_MAX_OD = 8;\nconst HWDP_MIN_TJ_ID = 1;\nconst HWDP_MAX_TJ_ID = 7;\nconst HWDP_MIN_TJ_OD = 2;\nconst HWDP_MAX_TJ_OD = 10;\nconst HWDP_MIN_LENGTH = 0;\n\nconst DC_MIN_ID = 0.5;\nconst DC_MAX_ID = 7;\nconst DC_MIN_OD = 2;\nconst DC_MAX_OD = 13;\nconst DC_MIN_LENGTH = 0;\n\nconst STABLE_MIN_ID = 0;\nconst STABLE_MAX_ID = 100;\nconst STABLE_MIN_OD = 1;\nconst STABLE_MAX_OD = 100;\nconst STABLE_MIN_LENGTH = 0;\n\nconst PDM_MIN_OD = 2;\nconst PDM_MAX_OD = 15;\nconst PDM_MIN_ID = 0;\nconst PDM_MAX_ID = 12;\nconst PDM_MIN_LENGTH = 4;\n\nconst PDM_MIN_STATOR = 2;\nconst PDM_MAX_STATOR = 10;\nconst PDM_MIN_ROTOR = 1;\nconst PDM_MAX_ROTOR = 10;\nconst PDM_MIN_RPG = 0;\nconst PDM_MAX_RPG = 10;\nconst PDM_MIN_WOB = 0;\nconst PDM_MAX_WOB = 200;\nconst PDM_MIN_FLOW_RANGE = 0;\nconst PDM_MAX_FLOW_RANGE = 2500;\nconst PDM_MIN_MODP = 0;\nconst PDM_MAX_MODP = 3000;\nconst PDM_MIN_TMODP = 0;\nconst PDM_MAX_TMODP = 40;\nconst PDM_MIN_FLOW_LOSS = 0;\nconst PDM_MAX_FLOW_LOSS = 20;\nconst PDM_MIN_OFF_BOTTOM_PRESSURE_LOSS = 0;\n\nconst MWD_MIN_ID = 0;\nconst MWD_MAX_ID = 12;\nconst MWD_MIN_OD = 2;\nconst MWD_MAX_OD = 13;\nconst MWD_MIN_LENGTH = 1.0;\nconst MWD_MIN_PRESSURE_LOSS = 0;\n\nconst LWD_MIN_ID = 0.1;\nconst LWD_MAX_ID = 7;\nconst LWD_MIN_OD = 2;\nconst LWD_MAX_OD = 9.5;\nconst LWD_MIN_LENGTH = 1.0;\n\nconst RSS_MIN_ID = 0;\nconst RSS_MAX_ID = 12;\nconst RSS_MIN_OD = 2;\nconst RSS_MAX_OD = 13;\nconst RSS_MIN_LENGTH = 1.0;\nconst RSS_MIN_FLOW_LOSS = 0;\nconst RSS_MAX_FLOW_LOSS = 10;\nconst RSS_MIN_PRESSURE_LOSS = 0;\n\nconst AGITATOR_MIN_ID = 0;\nconst AGITATOR_MAX_ID = 12;\nconst AGITATOR_MIN_OD = 2;\nconst AGITATOR_MAX_OD = 13;\nconst AGITATOR_MIN_LENGTH = 1.0;\nconst AGITATOR_MIN_PRESSURE_LOSS = 0;\n\nconst BIT_MIN_TFA = 0;\nconst BIT_MAX_TFA = 20;\n\nconst DEPTH_IN_HOLE_MIN = 0;\nconst DEPTH_IN_HOLE_MAX = 55000;\nconst DEPTH_IN_HOLE_PROHIBITED = 1;\n\nconst NULL_ERROR = { general: { empty: 'It should not be empty.' } };\nconst FAMILY_ERROR = { general: { family: 'Family should be matched.' } };\n\nexport function ctoi(val, unitType, unit, precision = 2) {\n if (val === null || typeof val === 'undefined') {\n return null;\n }\n if (!unitType || !unit) {\n return parseFloat(val);\n }\n return parseFloat(convertValue(val, unitType, getUnitPreference(unitType), unit, precision));\n}\n\nexport function ctop(val, unitType, unit, precision = 2) {\n if (val !== 0 && !val) {\n return null;\n }\n return unitType && unit ? convertValue(val, unitType, unit, null, precision) : val;\n}\n\nexport function isValueEmpty(val) {\n return val === null || typeof val === 'undefined' || val === '';\n}\n\nexport function isValidNumber(num, min, max, { isMinInclusive = true } = {}) {\n const parsedNum = parseFloat(num);\n if (Number.isNaN(parsedNum)) return false;\n if ((isMinInclusive && parsedNum < min) || (!isMinInclusive && parsedNum <= min)) {\n return false;\n }\n if (max && parsedNum > max) return false;\n return true;\n}\n\nexport function isValidLinearWeight(id, od, linearWeight) {\n const prefShortLengthUnit = getUnitPreference('shortLength');\n let convertedId = id;\n let convertedOd = od;\n if (prefShortLengthUnit !== 'in') {\n convertedId = convertValue(id, 'shortLength', prefShortLengthUnit, 'in');\n convertedOd = convertValue(od, 'shortLength', prefShortLengthUnit, 'in');\n }\n const estimation = 2.673 * (convertedOd * convertedOd - convertedId * convertedId);\n const convertedEstimation =\n prefShortLengthUnit !== 'in' ? convertValue(estimation, 'massPerLength', 'lb-ft') : estimation;\n return linearWeight >= convertedEstimation * 0.5 && linearWeight <= convertedEstimation * 1.5;\n}\n\nexport function validateCommon(comp, baseParams, bitSize = null) {\n if (!comp || !baseParams) return NULL_ERROR;\n\n const {\n min_id,\n min_od,\n max_id,\n max_od,\n min_length,\n min_tj_id,\n max_tj_id,\n min_tj_od,\n max_tj_od,\n min_pressure_loss,\n min_off_bottom_pressure_loss,\n } = baseParams;\n\n const shortLengthUnitDisplay = getUnitDisplay('shortLength');\n const error = {};\n let hasErrors = false;\n\n if (!isValueEmpty(min_id) && !isValueEmpty(min_od)) {\n if (!isValidNumber(comp.inner_diameter, min_id, max_id)) {\n error.inner_diameter = `${min_id.toFixed(1)}~${max_id.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n hasErrors = true;\n }\n\n if (!isValidNumber(comp.outer_diameter, min_od, max_od)) {\n error.outer_diameter = `${min_od.toFixed(1)}~${max_od.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n hasErrors = true;\n }\n\n if (\n isValidNumber(comp.inner_diameter, min_id, max_id) &&\n isValidNumber(comp.outer_diameter, min_od, max_od) &&\n !isValidNumber(comp.inner_diameter, min_id, comp.outer_diameter)\n ) {\n error.outer_diameter = 'O.D > I.D';\n hasErrors = true;\n }\n\n if (!error.outer_diameter && bitSize) {\n if (\n +comp.outer_diameter + convertValue(ALLOWED_DIFF_OD_BIT_SIZE, 'shortLength', 'in') >\n bitSize\n ) {\n error.outer_diameter = ' O.D + 0.1 < Bit Size';\n hasErrors = true;\n }\n }\n \n // only check validity of linear weight when family is not bit\n if (!isValidNumber(comp.linear_weight, 0)) {\n error.linear_weight = 'Invalid value';\n hasErrors = true;\n }\n }\n\n if (!isValueEmpty(min_tj_id) && !isValueEmpty(min_tj_od)) {\n if (!isValidNumber(comp.inner_diameter_tooljoint, min_tj_id, max_tj_id)) {\n error.inner_diameter_tooljoint = `${min_tj_id.toFixed(1)}~${max_tj_id.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n hasErrors = true;\n }\n\n if (!isValidNumber(comp.outer_diameter_tooljoint, min_tj_od, max_tj_od)) {\n error.outer_diameter_tooljoint = `${min_tj_od.toFixed(1)}~${max_tj_od.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n hasErrors = true;\n }\n\n if (!isValidNumber(comp.outer_diameter_tooljoint, comp.outer_diameter, max_tj_od)) {\n error.outer_diameter_tooljoint = 'Tool Joint O.D >= O.D';\n hasErrors = true;\n }\n }\n\n if (!isValueEmpty(min_length)) {\n if (!isValidNumber(comp.length, min_length)) {\n error.length = 'Invalid value';\n hasErrors = true;\n }\n }\n\n if (!isValueEmpty(comp.length_tooljoint) && !isValueEmpty(comp.component_length)) {\n if (+comp.length_tooljoint > +comp.component_length) {\n error.length_tooljoint = 'Tool Joint Length < Component Length';\n hasErrors = true;\n }\n }\n\n if (comp.off_bottom_pressure_loss && comp.off_bottom_pressure_loss.length > 0) {\n error.off_bottom_pressure_loss = {};\n for (let j = 0; j < comp.off_bottom_pressure_loss.length; j += 1) {\n const obpsItem = comp.off_bottom_pressure_loss[j];\n error.off_bottom_pressure_loss[j] = {};\n if (isValueEmpty(obpsItem.flow_rate)) {\n error.off_bottom_pressure_loss[j].flow_rate = 'flow rate is required.';\n hasErrors = true;\n }\n if (isValueEmpty(obpsItem.pressure_loss)) {\n error.off_bottom_pressure_loss[j].pressure_loss = 'pressure loss is required.';\n hasErrors = true;\n }\n if (\n !isValueEmpty(min_off_bottom_pressure_loss) &&\n !isValidNumber(obpsItem.pressure_loss, min_off_bottom_pressure_loss, null, {\n isMinInclusive: false,\n })\n ) {\n error.off_bottom_pressure_loss[j].pressure_loss = 'Invalid range';\n hasErrors = true;\n }\n }\n }\n\n if (comp.pressure_loss && comp.pressure_loss.length > 0) {\n error.pressure_loss = {};\n for (let j = 0; j < comp.pressure_loss.length; j += 1) {\n const pressureLossItem = comp.pressure_loss[j];\n error.pressure_loss[j] = {};\n if (isValueEmpty(pressureLossItem.flow_rate)) {\n error.pressure_loss[j].flow_rate = 'flow rate is required.';\n hasErrors = true;\n }\n if (isValueEmpty(pressureLossItem.pressure_loss)) {\n error.pressure_loss[j].pressure_loss = 'pressure loss is required.';\n hasErrors = true;\n }\n if (\n !isValueEmpty(min_pressure_loss) &&\n !isValidNumber(pressureLossItem.pressure_loss, min_pressure_loss, null, {\n isMinInclusive: false,\n })\n ) {\n error.pressure_loss[j].pressure_loss = 'Invalid range';\n hasErrors = true;\n }\n }\n }\n\n if (comp.has_stabilizer && comp.stabilizer) {\n const stabMinId = convertValue(STABLE_MIN_ID, 'shortLength', 'in');\n const stabMaxId = convertValue(STABLE_MAX_ID, 'shortLength', 'in');\n const stabMinOd = convertValue(STABLE_MIN_OD, 'shortLength', 'in');\n const stabMaxOd = convertValue(STABLE_MAX_OD, 'shortLength', 'in');\n const stabMinLength = convertValue(STABLE_MIN_LENGTH, 'length', 'ft');\n\n if (\n isValidNumber(comp.stabilizer.inner_diameter, stabMinId, stabMaxId) &&\n isValidNumber(comp.stabilizer.outer_diameter, stabMinOd, stabMaxOd) &&\n !isValidNumber(comp.stabilizer.inner_diameter, min_id, comp.stabilizer.outer_diameter)\n ) {\n error.stabilizer_outer_diameter = 'O.D > I.D';\n hasErrors = true;\n }\n\n if (!isValidNumber(comp.stabilizer.inner_diameter, stabMinId, stabMaxId)) {\n error.stabilizer_inner_diameter = `${stabMinId.toFixed(1)}~${stabMaxId.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n hasErrors = true;\n }\n if (!isValidNumber(comp.stabilizer.outer_diameter, stabMinOd, stabMaxOd)) {\n error.stabilizer_outer_diameter = `${stabMinOd.toFixed(1)}~${stabMaxOd.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n hasErrors = true;\n }\n if (!isValueEmpty(stabMinLength)) {\n if (!isValidNumber(comp.stabilizer.length, stabMinLength)) {\n error.stabilizer_length = 'Invalid value';\n hasErrors = true;\n }\n }\n if (isValueEmpty(comp.stabilizer.linear_weight)) {\n error.stabilizer_linear_weight = 'Invalid value';\n hasErrors = true;\n }\n if (!error.stabilizer_outer_diameter && bitSize) {\n if (\n +comp.stabilizer.outer_diameter +\n convertValue(ALLOWED_DIFF_OD_BIT_SIZE, 'shortLength', 'in') >\n bitSize\n ) {\n error.stabilizer_outer_diameter = ' O.D + 0.1 < Bit Size';\n hasErrors = true;\n }\n }\n }\n\n return hasErrors ? error : null;\n}\n\nexport function validateHeader(header) {\n if (!header) return NULL_ERROR;\n const lengthUnitDisplay = getUnitDisplay('length');\n const errors = {};\n\n if (isValueEmpty(header.id)) {\n errors.id = 'It should not be empty.';\n }\n if (header.start_timestamp_str && !moment(new Date(header.start_timestamp_str)).isValid()) {\n errors.start_timestamp = 'Invalid Date.';\n }\n if (Number.isFinite(header.start_depth)) {\n const minDepth = convertValue(DEPTH_IN_HOLE_MIN, 'length', 'ft');\n const maxDepth = convertValue(DEPTH_IN_HOLE_MAX, 'length', 'ft');\n const prohibitedDepth = convertValue(DEPTH_IN_HOLE_PROHIBITED, 'length', 'ft');\n if (header.start_depth <= minDepth || header.start_depth > maxDepth) {\n errors.start_depth = `Should be a positive number ${minDepth.toFixed(2)}~${maxDepth.toFixed(\n 2\n )} (${lengthUnitDisplay})`;\n }\n if (header.start_depth === prohibitedDepth) {\n errors.start_depth = `Should not be equal to ${prohibitedDepth} (${lengthUnitDisplay})`;\n }\n } else {\n errors.start_depth = 'It should not be empty.';\n }\n\n return isEmpty(errors) ? null : errors;\n}\n\nexport function validateComponentDefaullt(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n const baseParams = {\n min_id: convertValue(DEF_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(DEF_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(DEF_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(DEF_MAX_OD, 'shortLength', 'in'),\n min_length: convertValue(DEF_MIN_LENGTH, 'length', 'ft'),\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentDp(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'dp') return FAMILY_ERROR;\n\n const baseParams = {\n min_id: convertValue(DP_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(DP_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(DP_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(DP_MAX_OD, 'shortLength', 'in'),\n min_tj_id: convertValue(DP_MIN_TJ_ID, 'shortLength', 'in'),\n max_tj_id: convertValue(DP_MAX_TJ_ID, 'shortLength', 'in'),\n min_tj_od: convertValue(DP_MIN_TJ_OD, 'shortLength', 'in'),\n max_tj_od: convertValue(DP_MAX_TJ_OD, 'shortLength', 'in'),\n min_length: convertValue(DP_MIN_LENGTH, 'length', 'ft'),\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n if (!error.inner_diameter && !error.outer_diameter && !error.linear_weight) {\n if (\n !isValidLinearWeight(\n component.inner_diameter,\n component.outer_diameter,\n component.linear_weight\n )\n ) {\n error.linear_weight = 'Invalid range';\n }\n }\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentHwdp(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'hwdp') return FAMILY_ERROR;\n\n const baseParams = {\n min_id: convertValue(HWDP_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(HWDP_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(HWDP_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(HWDP_MAX_OD, 'shortLength', 'in'),\n min_tj_id: convertValue(HWDP_MIN_TJ_ID, 'shortLength', 'in'),\n max_tj_id: convertValue(HWDP_MAX_TJ_ID, 'shortLength', 'in'),\n min_tj_od: convertValue(HWDP_MIN_TJ_OD, 'shortLength', 'in'),\n max_tj_od: convertValue(HWDP_MAX_TJ_OD, 'shortLength', 'in'),\n min_length: convertValue(HWDP_MIN_LENGTH, 'length', 'ft'),\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n if (!error.inner_diameter && !error.outer_diameter && !error.linear_weight) {\n if (\n !isValidLinearWeight(\n component.inner_diameter,\n component.outer_diameter,\n component.linear_weight\n )\n ) {\n error.linear_weight = 'Invalid range';\n }\n }\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentDc(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'dc') return FAMILY_ERROR;\n\n const baseParams = {\n min_id: convertValue(DC_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(DC_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(DC_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(DC_MAX_OD, 'shortLength', 'in'),\n min_length: convertValue(DC_MIN_LENGTH, 'length', 'ft'),\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n if (!error.inner_diameter && !error.outer_diameter && !error.linear_weight) {\n if (\n !isValidLinearWeight(\n component.inner_diameter,\n component.outer_diameter,\n component.linear_weight\n )\n ) {\n error.linear_weight = 'Invalid range';\n }\n }\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentJar(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n return component.family !== 'jar' ? FAMILY_ERROR : validateComponentDefaullt(component, bitSize);\n}\n\nexport function validateComponentSub(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n return component.family !== 'sub' ? FAMILY_ERROR : validateComponentDefaullt(component, bitSize);\n}\n\nexport function validateComponentBit(component, maxOd = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'bit') return FAMILY_ERROR;\n\n const bitSize = component.size;\n const commonErrors = validateCommon(component, {}, bitSize);\n const error = commonErrors || {};\n const ratio = ctop(1, 'shortLength', 'in');\n const lowerLimit = BIT_MIN_TFA * (ratio * ratio);\n const upperLimit = BIT_MAX_TFA * (ratio * ratio);\n\n if (!isValueEmpty(maxOd) && !isValueEmpty(bitSize)) {\n if (\n +maxOd + convertValue(ALLOWED_DIFF_OD_BIT_SIZE, 'shortLength', 'in') >\n bitSize\n ) {\n error.size = ' max(O.D) + 0.1 < Bit Size';\n }\n }\n if (!isValidNumber(component.tfa, lowerLimit, upperLimit)) {\n error.tfa = `TFA must be ${lowerLimit.toFixed(2)}~${BIT_MAX_TFA.toFixed(2)}`;\n }\n\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentPdm(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'pdm') return FAMILY_ERROR;\n\n const baseParams = {\n min_od: convertValue(PDM_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(PDM_MAX_OD, 'shortLength', 'in'),\n min_id: convertValue(PDM_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(PDM_MAX_ID, 'shortLength', 'in'),\n min_length: convertValue(PDM_MIN_LENGTH, 'length', 'ft'),\n min_off_bottom_pressure_loss: PDM_MIN_OFF_BOTTOM_PRESSURE_LOSS,\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n\n let pdmFieldUnitLower;\n let pdmFieldUnitUpper;\n\n if (!isValidNumber(component.number_rotor_lobes, PDM_MIN_ROTOR, PDM_MAX_ROTOR)) {\n error.number_rotor_lobes = `It must be ${PDM_MIN_ROTOR}~${PDM_MAX_ROTOR}`;\n }\n\n if (!isValidNumber(component.number_stator_lobes, PDM_MIN_STATOR, PDM_MAX_STATOR)) {\n error.number_stator_lobes = `It must be ${PDM_MIN_STATOR}~${PDM_MAX_STATOR}`;\n }\n\n if (!isValidNumber(component.rpg, PDM_MIN_RPG, PDM_MAX_RPG)) {\n error.rpg = `It must be ${PDM_MIN_RPG}~${PDM_MAX_RPG}`;\n }\n\n pdmFieldUnitLower = convertValue(PDM_MIN_WOB, 'force', 'klbf');\n pdmFieldUnitUpper = convertValue(PDM_MAX_WOB, 'force', 'klbf');\n if (\n !isValueEmpty(component.max_weight_on_bit) &&\n !isValidNumber(component.max_weight_on_bit, pdmFieldUnitLower, pdmFieldUnitUpper)\n ) {\n error.max_weight_on_bit = `It must be ${pdmFieldUnitUpper.toFixed(\n 2\n )}~${pdmFieldUnitUpper.toFixed(2)}`;\n }\n\n pdmFieldUnitLower = convertValue(PDM_MIN_FLOW_RANGE, 'volumeFlowRate', 'gal/min');\n pdmFieldUnitUpper = convertValue(PDM_MAX_FLOW_RANGE, 'volumeFlowRate', 'gal/min');\n if (!isValidNumber(component.min_standard_flowrate, pdmFieldUnitLower, pdmFieldUnitUpper)) {\n error.min_standard_flowrate = `It must be ${pdmFieldUnitLower.toFixed(\n 2\n )}~${pdmFieldUnitUpper.toFixed(2)}`;\n }\n\n if (!isValidNumber(component.max_standard_flowrate, pdmFieldUnitLower, pdmFieldUnitUpper)) {\n error.max_standard_flowrate = `It must be ${pdmFieldUnitLower.toFixed(\n 2\n )}~${pdmFieldUnitUpper.toFixed(2)}`;\n }\n\n pdmFieldUnitLower = convertValue(PDM_MIN_MODP, 'pressure', 'psi');\n pdmFieldUnitUpper = convertValue(PDM_MAX_MODP, 'pressure', 'psi');\n if (\n !isValidNumber(\n component.max_operating_differential_pressure,\n pdmFieldUnitLower,\n pdmFieldUnitUpper\n )\n ) {\n error.max_operating_differential_pressure = `It must be ${pdmFieldUnitLower.toFixed(\n 2\n )}~${pdmFieldUnitUpper.toFixed(2)}`;\n }\n\n pdmFieldUnitLower = convertValue(PDM_MIN_TMODP, 'torque', 'ft-klbf');\n pdmFieldUnitUpper = convertValue(PDM_MAX_TMODP, 'torque', 'ft-klbf');\n if (\n !isValidNumber(\n component.torque_at_max_operating_differential_pressure,\n pdmFieldUnitLower,\n pdmFieldUnitUpper\n )\n ) {\n error.torque_at_max_operating_differential_pressure = `It must be ${pdmFieldUnitLower.toFixed(\n 2\n )}~${pdmFieldUnitUpper.toFixed(2)}`;\n }\n\n if (!isValidNumber(component.flow_loss_percentage, PDM_MIN_FLOW_LOSS, PDM_MAX_FLOW_LOSS)) {\n error.flow_loss_percentage = `It must be ${PDM_MIN_FLOW_LOSS}~${PDM_MAX_FLOW_LOSS}`;\n }\n\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentLwd(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'lwd') return FAMILY_ERROR;\n\n const baseParams = {\n min_od: convertValue(LWD_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(LWD_MAX_OD, 'shortLength', 'in'),\n min_id: convertValue(LWD_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(LWD_MAX_ID, 'shortLength', 'in'),\n min_length: convertValue(LWD_MIN_LENGTH, 'length', 'ft'),\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n let hasErrors = false;\n if (commonErrors) hasErrors = true;\n\n if (component.lwd_measurements && component.lwd_measurements.length > 0) {\n error.lwd_measurements = {};\n for (let j = 0; j < component.lwd_measurements.length; j += 1) {\n const lwdMeasurementItem = component.lwd_measurements[j];\n error.lwd_measurements[j] = {};\n if (isValueEmpty(lwdMeasurementItem.type)) {\n error.lwd_measurements[j].type = 'measurement type is required.';\n hasErrors = true;\n }\n if (isValueEmpty(lwdMeasurementItem.distance)) {\n error.lwd_measurements[j].distance = 'measurement distance is required.';\n hasErrors = true;\n }\n }\n }\n\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n if (!component.lwd_measurements || !component.lwd_measurements.length) {\n errors.general.lwd_measurements =\n 'LWD Tool requires at least one LWD measurement should be selected.';\n hasErrors = true;\n }\n\n return hasErrors ? errors : null;\n}\n\nexport function validateComponentStabilizer(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'stabilizer') return FAMILY_ERROR;\n\n const baseParams = {\n min_id: convertValue(STABLE_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(STABLE_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(STABLE_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(STABLE_MAX_OD, 'shortLength', 'in'),\n min_length: convertValue(STABLE_MIN_LENGTH, 'length', 'ft'),\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentMwd(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'mwd') return FAMILY_ERROR;\n\n const baseParams = {\n min_od: convertValue(MWD_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(MWD_MAX_OD, 'shortLength', 'in'),\n min_id: convertValue(MWD_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(MWD_MAX_ID, 'shortLength', 'in'),\n min_length: convertValue(MWD_MIN_LENGTH, 'length', 'ft'),\n min_pressure_loss: MWD_MIN_PRESSURE_LOSS,\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n\n if (component.has_gamma_sensor && !Number.isFinite(component.gamma_sensor_to_bit_distance)) {\n error.gamma_sensor_to_bit_distance = 'This field is required.';\n }\n\n if (component.has_survey_sensor && !Number.isFinite(component.bit_to_survey_distance)) {\n error.bit_to_survey_distance = 'This field is required.';\n } else if (component.has_survey_sensor && component.bit_to_survey_distance <= 0) {\n error.bit_to_survey_distance = 'Should be a positive number.';\n } else if (component.has_survey_sensor && component.bit_to_survey_distance > 150) {\n error.bit_to_survey_distance = 'Should be less then 150.';\n }\n\n if (\n component.has_directional_sensor &&\n !Number.isFinite(component.directional_sensor_to_bit_distance)\n ) {\n error.directional_sensor_to_bit_distance = 'This field is required.';\n } else if (\n component.has_directional_sensor &&\n component.directional_sensor_to_bit_distance <= 0\n ) {\n error.directional_sensor_to_bit_distance = 'Should be a positive number.';\n } else if (\n component.has_directional_sensor &&\n component.directional_sensor_to_bit_distance > 150\n ) {\n error.directional_sensor_to_bit_distance = 'Should be less then 150.';\n }\n\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentAgitator(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'agitator') return FAMILY_ERROR;\n\n const baseParams = {\n min_od: convertValue(AGITATOR_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(AGITATOR_MAX_OD, 'shortLength', 'in'),\n min_id: convertValue(AGITATOR_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(AGITATOR_MAX_ID, 'shortLength', 'in'),\n min_length: convertValue(AGITATOR_MIN_LENGTH, 'length', 'ft'),\n min_pressure_loss: AGITATOR_MIN_PRESSURE_LOSS,\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentRss(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'rss') return FAMILY_ERROR;\n\n const baseParams = {\n min_od: convertValue(RSS_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(RSS_MAX_OD, 'shortLength', 'in'),\n min_id: convertValue(RSS_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(RSS_MAX_ID, 'shortLength', 'in'),\n min_length: convertValue(RSS_MIN_LENGTH, 'length', 'ft'),\n min_pressure_loss: RSS_MIN_PRESSURE_LOSS,\n };\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n if (!isValidNumber(component.flow_loss_percentage, RSS_MIN_FLOW_LOSS, RSS_MAX_FLOW_LOSS)) {\n error.flow_loss_percentage = `It must be ${RSS_MIN_FLOW_LOSS}~${RSS_MAX_FLOW_LOSS}`;\n }\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentCt(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'ct') return FAMILY_ERROR;\n const shortLengthUnitDisplay = getUnitDisplay('shortLength');\n\n const baseParams = {\n min_id: convertValue(CT_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(CT_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(CT_MIN_OD, 'shortLength', 'in'),\n max_od: convertValue(CT_MAX_OD, 'shortLength', 'in'),\n min_length: convertValue(CT_MIN_LENGTH, 'length', 'ft'),\n };\n const minRd = convertValue(CT_MIN_RD, 'shortLength', 'in');\n const maxRd = convertValue(CT_MAX_RD, 'shortLength', 'in');\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n if (!error.inner_diameter && !error.outer_diameter && !error.linear_weight) {\n if (\n !isValidLinearWeight(\n component.inner_diameter,\n component.outer_diameter,\n component.linear_weight\n )\n ) {\n error.linear_weight = 'Invalid range';\n }\n }\n if (!isValidNumber(component.reel_diameter, minRd, maxRd)) {\n error.reel_diameter = `${minRd.toFixed(1)}~${maxRd.toFixed(1)} (${shortLengthUnitDisplay})`;\n }\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponentUr(component, bitSize = null) {\n if (!component) return NULL_ERROR;\n if (component.family !== 'ur') return FAMILY_ERROR;\n const shortLengthUnitDisplay = getUnitDisplay('shortLength');\n\n const baseParams = {\n min_id: convertValue(UR_MIN_ID, 'shortLength', 'in'),\n max_id: convertValue(UR_MAX_ID, 'shortLength', 'in'),\n min_od: convertValue(UR_MIN_BODY_OD, 'shortLength', 'in'),\n max_od: convertValue(UR_MAX_BODY_OD, 'shortLength', 'in'),\n };\n const minOpenedOd = convertValue(UR_MIN_OPENED_OD, 'shortLength', 'in');\n const maxOpenedOd = convertValue(UR_MAX_OPENED_OD, 'shortLength', 'in');\n const commonErrors = validateCommon(component, baseParams, bitSize);\n const error = commonErrors || {};\n if (!error.inner_diameter && !error.outer_diameter && !error.linear_weight) {\n if (\n !isValidLinearWeight(\n component.inner_diameter,\n component.outer_diameter,\n component.linear_weight\n )\n ) {\n error.linear_weight = 'Invalid range';\n }\n }\n if (!isValidNumber(component.ur_opened_od, minOpenedOd, maxOpenedOd)) {\n error.ur_opened_od = `${minOpenedOd.toFixed(1)}~${maxOpenedOd.toFixed(\n 1\n )} (${shortLengthUnitDisplay})`;\n } else if (component.ur_opened_od < bitSize) {\n error.ur_opened_od = 'Max O.D (Opened) >= Bit Size';\n }\n\n if (!Number.isFinite(component.flow_rate)) {\n error.flow_rate = 'This field is required.';\n }\n\n if (\n component.activation_logic === 'depth_activation' &&\n !Number.isFinite(component.ur_opened_depth)\n ) {\n error.ur_opened_depth = 'This field is required.';\n }\n \n if (!component.activation_logic) {\n error.activation_logic = 'This field is required.';\n }\n\n const ratio = ctop(1, 'shortLength', 'in');\n const lowerLimit = BIT_MIN_TFA * (ratio * ratio);\n const upperLimit = BIT_MAX_TFA * (ratio * ratio);\n if (!isValidNumber(component.tfa, lowerLimit, upperLimit)) {\n error.tfa = `TFA must be ${lowerLimit.toFixed(2)}~${BIT_MAX_TFA.toFixed(2)}`;\n }\n const errors = {\n general: {},\n components: {\n [component.id]: error,\n },\n specificErrors: {},\n };\n\n return isEmpty(error) ? null : errors;\n}\n\nexport function validateComponent(component, bitSize = null, maxOd = null) {\n if (!component) return NULL_ERROR;\n\n switch (component.family) {\n case 'dp':\n return validateComponentDp(component, bitSize);\n case 'hwdp':\n return validateComponentHwdp(component, bitSize);\n case 'dc':\n return validateComponentDc(component, bitSize);\n case 'jar':\n return validateComponentJar(component, bitSize);\n case 'sub':\n return validateComponentSub(component, bitSize);\n case 'bit':\n return validateComponentBit(component, maxOd);\n case 'pdm':\n return validateComponentPdm(component, bitSize);\n case 'lwd':\n return validateComponentLwd(component, bitSize);\n case 'stabilizer':\n return validateComponentStabilizer(component, bitSize);\n case 'mwd':\n return validateComponentMwd(component, bitSize);\n case 'agitator':\n return validateComponentAgitator(component, bitSize);\n case 'rss':\n return validateComponentRss(component, bitSize);\n case 'ct':\n return validateComponentCt(component, bitSize);\n case 'ur':\n return validateComponentUr(component, bitSize);\n default:\n return validateComponentDefaullt(component, bitSize);\n }\n}\n\nexport function validateComponents(components, component = null) {\n if (!components) return NULL_ERROR;\n const bitComponents = components.filter(comp => comp.family === 'bit');\n const bitSize = bitComponents && (bitComponents.length > 0 ? bitComponents[0].size : null);\n const maxOd = maxBy(components, 'outer_diameter')?.outer_diameter;\n const mwdHavingGamma = components.filter(comp => comp.family === 'mwd' && comp.has_gamma_sensor);\n let hasFormErrors = false;\n let errors = {\n general: {},\n components: {},\n specificErrors: {},\n };\n for (let i = 0; i < components.length; i += 1) {\n const comp = components[i];\n if(!component || comp === component) {\n const error = component ? validateComponent(comp, bitSize, maxOd) :\n validateComponent(comp, bitSize);\n if (error) {\n hasFormErrors = true;\n errors = {\n ...errors,\n ...omit(error, ['general', 'components']),\n general: { ...errors.general, ...error.general },\n components: { ...errors.components, ...error.components },\n };\n }\n if (comp.family === 'mwd' && mwdHavingGamma.length > 1) {\n errors.components[\n comp.id\n ].gamma_sensor_to_bit_distance = `Only 1 gamma sensor allowed. Currently ${mwdHavingGamma.length}`;\n hasFormErrors = true;\n }\n }\n }\n if (!bitComponents || bitComponents.length !== 1) {\n errors.general.bit_count = 'Number of \"BIT\" components is invalid.';\n hasFormErrors = true;\n } else if (components[components.length - 1].family !== 'bit' && components[0].family !== 'bit') {\n // bit should be top or bottom\n errors.general.bit_position = '\"BIT\" category should be on the bottom of the list.';\n hasFormErrors = true;\n }\n\n if (hasFormErrors) {\n return errors;\n }\n return null;\n}\n\nexport function validate(recordData) {\n if (!recordData) return NULL_ERROR;\n\n const {\n data: { id, start_timestamp_str, start_depth, components },\n } = recordData;\n if (!components) return NULL_ERROR;\n let errors = validateHeader({ id, start_timestamp_str, start_depth });\n const componentsErrors = validateComponents(components);\n\n if (componentsErrors) {\n errors = { ...errors, ...componentsErrors };\n }\n\n return errors;\n}\n"],"names":["ALLOWED_DIFF_OD_BIT_SIZE","DEF_MIN_ID","DEF_MAX_ID","DEF_MIN_OD","DEF_MAX_OD","DEF_MIN_LENGTH","UR_MIN_ID","UR_MAX_ID","UR_MIN_BODY_OD","UR_MAX_BODY_OD","UR_MIN_OPENED_OD","UR_MAX_OPENED_OD","CT_MIN_ID","CT_MAX_ID","CT_MIN_OD","CT_MAX_OD","CT_MIN_RD","CT_MAX_RD","CT_MIN_LENGTH","DP_MIN_ID","DP_MAX_ID","DP_MIN_OD","DP_MAX_OD","DP_MIN_TJ_ID","DP_MAX_TJ_ID","DP_MIN_TJ_OD","DP_MAX_TJ_OD","DP_MIN_LENGTH","HWDP_MIN_ID","HWDP_MAX_ID","HWDP_MIN_OD","HWDP_MAX_OD","HWDP_MIN_TJ_ID","HWDP_MAX_TJ_ID","HWDP_MIN_TJ_OD","HWDP_MAX_TJ_OD","HWDP_MIN_LENGTH","DC_MIN_ID","DC_MAX_ID","DC_MIN_OD","DC_MAX_OD","DC_MIN_LENGTH","STABLE_MIN_ID","STABLE_MAX_ID","STABLE_MIN_OD","STABLE_MAX_OD","STABLE_MIN_LENGTH","PDM_MIN_OD","PDM_MAX_OD","PDM_MIN_ID","PDM_MAX_ID","PDM_MIN_LENGTH","PDM_MIN_STATOR","PDM_MAX_STATOR","PDM_MIN_ROTOR","PDM_MAX_ROTOR","PDM_MIN_RPG","PDM_MAX_RPG","PDM_MIN_WOB","PDM_MAX_WOB","PDM_MIN_FLOW_RANGE","PDM_MAX_FLOW_RANGE","PDM_MIN_MODP","PDM_MAX_MODP","PDM_MIN_TMODP","PDM_MAX_TMODP","PDM_MIN_FLOW_LOSS","PDM_MAX_FLOW_LOSS","PDM_MIN_OFF_BOTTOM_PRESSURE_LOSS","MWD_MIN_ID","MWD_MAX_ID","MWD_MIN_OD","MWD_MAX_OD","MWD_MIN_LENGTH","MWD_MIN_PRESSURE_LOSS","LWD_MIN_ID","LWD_MAX_ID","LWD_MIN_OD","LWD_MAX_OD","LWD_MIN_LENGTH","RSS_MIN_ID","RSS_MAX_ID","RSS_MIN_OD","RSS_MAX_OD","RSS_MIN_LENGTH","RSS_MIN_FLOW_LOSS","RSS_MAX_FLOW_LOSS","RSS_MIN_PRESSURE_LOSS","AGITATOR_MIN_ID","AGITATOR_MAX_ID","AGITATOR_MIN_OD","AGITATOR_MAX_OD","AGITATOR_MIN_LENGTH","AGITATOR_MIN_PRESSURE_LOSS","BIT_MIN_TFA","BIT_MAX_TFA","DEPTH_IN_HOLE_MIN","DEPTH_IN_HOLE_MAX","DEPTH_IN_HOLE_PROHIBITED","NULL_ERROR","general","empty","FAMILY_ERROR","family","ctoi","val","unitType","unit","precision","parseFloat","convertValue","getUnitPreference","ctop","isValueEmpty","isValidNumber","num","min","max","isMinInclusive","parsedNum","Number","isNaN","isValidLinearWeight","id","od","linearWeight","prefShortLengthUnit","convertedId","convertedOd","estimation","convertedEstimation","validateCommon","comp","baseParams","bitSize","min_id","min_od","max_id","max_od","min_length","min_tj_id","max_tj_id","min_tj_od","max_tj_od","min_pressure_loss","min_off_bottom_pressure_loss","shortLengthUnitDisplay","getUnitDisplay","error","hasErrors","inner_diameter","toFixed","outer_diameter","linear_weight","inner_diameter_tooljoint","outer_diameter_tooljoint","length","length_tooljoint","component_length","off_bottom_pressure_loss","j","obpsItem","flow_rate","pressure_loss","pressureLossItem","has_stabilizer","stabilizer","stabMinId","stabMaxId","stabMinOd","stabMaxOd","stabMinLength","stabilizer_outer_diameter","stabilizer_inner_diameter","stabilizer_length","stabilizer_linear_weight","validateHeader","header","lengthUnitDisplay","errors","start_timestamp_str","moment","Date","isValid","start_timestamp","isFinite","start_depth","minDepth","maxDepth","prohibitedDepth","isEmpty","validateComponentDefaullt","component","commonErrors","components","specificErrors","validateComponentDp","validateComponentHwdp","validateComponentDc","validateComponentJar","validateComponentSub","validateComponentBit","maxOd","size","ratio","lowerLimit","upperLimit","tfa","validateComponentPdm","pdmFieldUnitLower","pdmFieldUnitUpper","number_rotor_lobes","number_stator_lobes","rpg","max_weight_on_bit","min_standard_flowrate","max_standard_flowrate","max_operating_differential_pressure","torque_at_max_operating_differential_pressure","flow_loss_percentage","validateComponentLwd","lwd_measurements","lwdMeasurementItem","type","distance","validateComponentStabilizer","validateComponentMwd","has_gamma_sensor","gamma_sensor_to_bit_distance","has_survey_sensor","bit_to_survey_distance","has_directional_sensor","directional_sensor_to_bit_distance","validateComponentAgitator","validateComponentRss","validateComponentCt","minRd","maxRd","reel_diameter","validateComponentUr","minOpenedOd","maxOpenedOd","ur_opened_od","activation_logic","ur_opened_depth","validateComponent","validateComponents","bitComponents","filter","maxBy","mwdHavingGamma","hasFormErrors","i","omit","bit_count","bit_position","validate","recordData","data","componentsErrors"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sources":["../../src/utils/env.js"],"sourcesContent":["export const isDevOrQAEnv =\n process.env.REACT_APP_ENVIRONMENT === 'qa' || process.env.REACT_APP_ENVIRONMENT === 'development';\n"],"names":["isDevOrQAEnv","process","env","REACT_APP_ENVIRONMENT"],"mappings":"IAAaA,YAAY,GACvBC,OAAO,CAACC,GAAR,CAAYC,qBAAZ,KAAsC,IAAtC,IAA8CF,OAAO,CAACC,GAAR,CAAYC,qBAAZ,KAAsC;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feed.js","sources":["../../src/utils/feed.js"],"sourcesContent":["import { get } from 'lodash';\n\nimport alertIcon from '~/assets/feed-item-type-icons/alert.svg';\nimport bhaIcon from '~/assets/feed-item-type-icons/bha.svg';\nimport dailyCostIcon from '~/assets/feed-item-type-icons/daily-cost.svg';\nimport documentIcon from '~/assets/feed-item-type-icons/document.svg';\nimport drillerMemoIcon from '~/assets/feed-item-type-icons/driller-memo.svg';\nimport fluidReportIcon from '~/assets/feed-item-type-icons/fluid-report.svg';\nimport operationalNoteIcon from '~/assets/feed-item-type-icons/operational-note.svg';\nimport operationSummaryIcon from '~/assets/feed-item-type-icons/operation-summary.svg';\nimport surveyStationIcon from '~/assets/feed-item-type-icons/survey-station.svg';\nimport annotationMenuIcon from '~/assets/annotations-menu.svg';\nimport lessonsLearnedIcon from '~/assets/feed-item-type-icons/lessons-learned.svg';\n\nimport { FEED_ITEM_TYPES_BY_KEY, FEED_ITEM_TYPES } from '~/constants/feed';\n\nexport const AVATAR_ICON = 'AVATAR_ICON';\n\nconst FEED_TYPES_WITH_AVATAR_ICON = [\n FEED_ITEM_TYPES_BY_KEY.post.type,\n FEED_ITEM_TYPES_BY_KEY.app_annotation.type,\n FEED_ITEM_TYPES.TRACES_MEMO,\n];\n\nexport function isAvatarIcon(feedItemType) {\n return FEED_TYPES_WITH_AVATAR_ICON.includes(feedItemType);\n}\n\nexport function getIconForFeedItemType(feedItemType) {\n if (isAvatarIcon(feedItemType)) {\n return AVATAR_ICON;\n } else {\n switch (feedItemType) {\n case get(FEED_ITEM_TYPES_BY_KEY, 'alert.type'): {\n return alertIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'operation_summary.type'):\n case get(FEED_ITEM_TYPES_BY_KEY, 'completion_operation_summary.type'): {\n return operationSummaryIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'operational_note.type'):\n case get(FEED_ITEM_TYPES_BY_KEY, 'completion_operational_note.type'): {\n return operationalNoteIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'bha.type'): {\n return bhaIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'daily_cost.type'):\n case get(FEED_ITEM_TYPES_BY_KEY, 'completion_daily_cost.type'): {\n return dailyCostIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'document.type'): {\n return documentIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'driller_memo.type'): {\n return drillerMemoIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'fluid_report.type'): {\n return fluidReportIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'survey_station.type'): {\n return surveyStationIcon;\n }\n case get(FEED_ITEM_TYPES_BY_KEY, 'lessons_learned.type'): {\n return lessonsLearnedIcon;\n }\n // FIXME: Implement when icons will be available\n // get(FEED_ITEM_TYPES_BY_KEY, 'completion_stage.type')\n // get(FEED_ITEM_TYPES_BY_KEY, 'completion_npt_event.type')\n // get(FEED_ITEM_TYPES_BY_KEY, 'completion_time_log.type')\n default:\n return annotationMenuIcon;\n }\n }\n}\n"],"names":["AVATAR_ICON","FEED_TYPES_WITH_AVATAR_ICON","FEED_ITEM_TYPES_BY_KEY","post","type","app_annotation","FEED_ITEM_TYPES","TRACES_MEMO","isAvatarIcon","feedItemType","includes","getIconForFeedItemType","get","alertIcon","operationSummaryIcon","operationalNoteIcon","bhaIcon","dailyCostIcon","documentIcon","drillerMemoIcon","fluidReportIcon","surveyStationIcon","lessonsLearnedIcon","annotationMenuIcon"],"mappings":";;;;;;;;;;;;;;IAgBaA,WAAW,GAAG;AAE3B,IAAMC,2BAA2B,GAAG,CAClCC,sBAAsB,CAACC,IAAvB,CAA4BC,IADM,EAElCF,sBAAsB,CAACG,cAAvB,CAAsCD,IAFJ,EAGlCE,eAAe,CAACC,WAHkB,CAApC;AAMO,SAASC,YAAT,CAAsBC,YAAtB,EAAoC;AACzC,SAAOR,2BAA2B,CAACS,QAA5B,CAAqCD,YAArC,CAAP;AACD;AAEM,SAASE,sBAAT,CAAgCF,YAAhC,EAA8C;AACnD,MAAID,YAAY,CAACC,YAAD,CAAhB,EAAgC;AAC9B,WAAOT,WAAP;AACD,GAFD,MAEO;AACL,YAAQS,YAAR;AACE,WAAKG,GAAG,CAACV,sBAAD,EAAyB,YAAzB,CAAR;AAAgD;AAC9C,iBAAOW,SAAP;AACD;;AACD,WAAKD,GAAG,CAACV,sBAAD,EAAyB,wBAAzB,CAAR;AACA,WAAKU,GAAG,CAACV,sBAAD,EAAyB,mCAAzB,CAAR;AAAuE;AACrE,iBAAOY,oBAAP;AACD;;AACD,WAAKF,GAAG,CAACV,sBAAD,EAAyB,uBAAzB,CAAR;AACA,WAAKU,GAAG,CAACV,sBAAD,EAAyB,kCAAzB,CAAR;AAAsE;AACpE,iBAAOa,mBAAP;AACD;;AACD,WAAKH,GAAG,CAACV,sBAAD,EAAyB,UAAzB,CAAR;AAA8C;AAC5C,iBAAOc,OAAP;AACD;;AACD,WAAKJ,GAAG,CAACV,sBAAD,EAAyB,iBAAzB,CAAR;AACA,WAAKU,GAAG,CAACV,sBAAD,EAAyB,4BAAzB,CAAR;AAAgE;AAC9D,iBAAOe,aAAP;AACD;;AACD,WAAKL,GAAG,CAACV,sBAAD,EAAyB,eAAzB,CAAR;AAAmD;AACjD,iBAAOgB,YAAP;AACD;;AACD,WAAKN,GAAG,CAACV,sBAAD,EAAyB,mBAAzB,CAAR;AAAuD;AACrD,iBAAOiB,eAAP;AACD;;AACD,WAAKP,GAAG,CAACV,sBAAD,EAAyB,mBAAzB,CAAR;AAAuD;AACrD,iBAAOkB,eAAP;AACD;;AACD,WAAKR,GAAG,CAACV,sBAAD,EAAyB,qBAAzB,CAAR;AAAyD;AACvD,iBAAOmB,iBAAP;AACD;;AACD,WAAKT,GAAG,CAACV,sBAAD,EAAyB,sBAAzB,CAAR;AAA0D;AACxD,iBAAOoB,kBAAP;AACD;AACD;AACA;AACA;AACA;;AACA;AACE,eAAOC,kBAAP;AAvCJ;AAyCD;AACF;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileExtension.js","sources":["../../src/utils/fileExtension.js"],"sourcesContent":["import fileExtension from 'file-extension';\nimport imageExtensions from 'image-extensions';\nimport videoExtensions from 'video-extensions';\n\nexport const getFileExtension = fileName => fileExtension((fileName || '').split('?')[0]);\n\nexport const getIsVideo = fileName => videoExtensions.includes(getFileExtension(fileName));\n\nexport const getIsImage = fileName => imageExtensions.includes(getFileExtension(fileName));\n"],"names":["getFileExtension","fileName","fileExtension","split","getIsVideo","videoExtensions","includes","getIsImage","imageExtensions"],"mappings":";;;;IAIaA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAAC,QAAQ;AAAA,SAAIC,eAAa,CAAC,CAACD,QAAQ,IAAI,EAAb,EAAiBE,KAAjB,CAAuB,GAAvB,EAA4B,CAA5B,CAAD,CAAjB;AAAA;IAE3BC,UAAU,GAAG,SAAbA,UAAa,CAAAH,QAAQ;AAAA,SAAII,eAAe,CAACC,QAAhB,CAAyBN,gBAAgB,CAACC,QAAD,CAAzC,CAAJ;AAAA;IAErBM,UAAU,GAAG,SAAbA,UAAa,CAAAN,QAAQ;AAAA,SAAIO,eAAe,CAACF,QAAhB,CAAyBN,gBAAgB,CAACC,QAAD,CAAzC,CAAJ;AAAA;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatting.js","sources":["../../src/utils/formatting.js"],"sourcesContent":["export const orDash = value => {\n return Number.isFinite(value) || typeof value === 'string' ? value : '-';\n};\n\nconst MOBILE_BREAK_POINT_WIDTH = 420;\nconst MAX_ASSET_NAME_LENGTH = 6;\n\nexport const formatAssetName = (\n assetName = '',\n containerPixelWidth,\n mobileBreakPointWidth = MOBILE_BREAK_POINT_WIDTH,\n maxAssetNameLength = MAX_ASSET_NAME_LENGTH\n) => {\n const words = assetName.split(' ');\n if (\n containerPixelWidth > mobileBreakPointWidth ||\n assetName.length < maxAssetNameLength ||\n words.length <= 1\n ) {\n return assetName;\n }\n\n const initialChar = assetName[0];\n const lastWord = words[words.length - 1];\n return `${initialChar} ${lastWord}`;\n};\n"],"names":["orDash","value","Number","isFinite","MOBILE_BREAK_POINT_WIDTH","MAX_ASSET_NAME_LENGTH","formatAssetName","assetName","containerPixelWidth","mobileBreakPointWidth","maxAssetNameLength","words","split","length","initialChar","lastWord"],"mappings":"IAAaA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK,EAAI;AAC7B,SAAOC,MAAM,CAACC,QAAP,CAAgBF,KAAhB,KAA0B,OAAOA,KAAP,KAAiB,QAA3C,GAAsDA,KAAtD,GAA8D,GAArE;AACD;AAED,IAAMG,wBAAwB,GAAG,GAAjC;AACA,IAAMC,qBAAqB,GAAG,CAA9B;IAEaC,eAAe,GAAG,SAAlBA,eAAkB,GAK1B;AAAA,MAJHC,SAIG,uEAJS,EAIT;AAAA,MAHHC,mBAGG;AAAA,MAFHC,qBAEG,uEAFqBL,wBAErB;AAAA,MADHM,kBACG,uEADkBL,qBAClB;AACH,MAAMM,KAAK,GAAGJ,SAAS,CAACK,KAAV,CAAgB,GAAhB,CAAd;;AACA,MACEJ,mBAAmB,GAAGC,qBAAtB,IACAF,SAAS,CAACM,MAAV,GAAmBH,kBADnB,IAEAC,KAAK,CAACE,MAAN,IAAgB,CAHlB,EAIE;AACA,WAAON,SAAP;AACD;;AAED,MAAMO,WAAW,GAAGP,SAAS,CAAC,CAAD,CAA7B;AACA,MAAMQ,QAAQ,GAAGJ,KAAK,CAACA,KAAK,CAACE,MAAN,GAAe,CAAhB,CAAtB;AACA,mBAAUC,WAAV,cAAyBC,QAAzB;AACD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ga.js","sources":["../../src/utils/ga.js"],"sourcesContent":["import { isReportsPage } from '~/utils/reports';\n\nexport const isLoggingToGoogleAnalytics = // eslint-disable-line import/prefer-default-export\n (process.env.REACT_APP_ENVIRONMENT === 'production' ||\n process.env.REACT_APP_ENVIRONMENT === 'beta') &&\n !isReportsPage;\n"],"names":["isLoggingToGoogleAnalytics","process","env","REACT_APP_ENVIRONMENT","isReportsPage"],"mappings":";;IAEaA,0BAA0B;AACrC,CAACC,OAAO,CAACC,GAAR,CAAYC,qBAAZ,KAAsC,YAAtC,IACCF,OAAO,CAACC,GAAR,CAAYC,qBAAZ,KAAsC,MADxC,KAEA,CAACC;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goals.js","sources":["../../src/utils/goals.js"],"sourcesContent":["import { get } from 'lodash';\n\nimport { GOAL_TYPES_DICT } from '~/constants/goals';\nimport { SEGMENTS } from '~/constants/segment';\n\nexport function getCompanyGoalSetting(companyGoals, goalName, segment = SEGMENTS.DRILLING) {\n return get(companyGoals, `${goalName}.${segment}.${GOAL_TYPES_DICT.company.key}`);\n}\n\nexport function getProgramGoalSetting(\n companyGoals,\n goalName,\n programId,\n segment = SEGMENTS.DRILLING\n) {\n return get(companyGoals, `${goalName}.${segment}.${GOAL_TYPES_DICT.program.key}.${programId}`);\n}\n\n// NOTE: Program goal has higher priority than company goal\nexport function getPriorityGoalSetting(\n companyGoals,\n goalName,\n programId,\n segment = SEGMENTS.DRILLING\n) {\n const programGoal = getProgramGoalSetting(companyGoals, goalName, programId, segment);\n const companyGoal = getCompanyGoalSetting(companyGoals, goalName, segment);\n return Number.isFinite(programGoal) ? programGoal : companyGoal;\n}\n"],"names":["getCompanyGoalSetting","companyGoals","goalName","segment","SEGMENTS","DRILLING","get","GOAL_TYPES_DICT","company","key","getProgramGoalSetting","programId","program","getPriorityGoalSetting","programGoal","companyGoal","Number","isFinite"],"mappings":";;;;AAKO,SAASA,qBAAT,CAA+BC,YAA/B,EAA6CC,QAA7C,EAAoF;AAAA,MAA7BC,OAA6B,uEAAnBC,QAAQ,CAACC,QAAU;AACzF,SAAOC,GAAG,CAACL,YAAD,YAAkBC,QAAlB,cAA8BC,OAA9B,cAAyCI,eAAe,CAACC,OAAhB,CAAwBC,GAAjE,EAAV;AACD;AAEM,SAASC,qBAAT,CACLT,YADK,EAELC,QAFK,EAGLS,SAHK,EAKL;AAAA,MADAR,OACA,uEADUC,QAAQ,CAACC,QACnB;AACA,SAAOC,GAAG,CAACL,YAAD,YAAkBC,QAAlB,cAA8BC,OAA9B,cAAyCI,eAAe,CAACK,OAAhB,CAAwBH,GAAjE,cAAwEE,SAAxE,EAAV;AACD;;AAGM,SAASE,sBAAT,CACLZ,YADK,EAELC,QAFK,EAGLS,SAHK,EAKL;AAAA,MADAR,OACA,uEADUC,QAAQ,CAACC,QACnB;AACA,MAAMS,WAAW,GAAGJ,qBAAqB,CAACT,YAAD,EAAeC,QAAf,EAAyBS,SAAzB,EAAoCR,OAApC,CAAzC;AACA,MAAMY,WAAW,GAAGf,qBAAqB,CAACC,YAAD,EAAeC,QAAf,EAAyBC,OAAzB,CAAzC;AACA,SAAOa,MAAM,CAACC,QAAP,CAAgBH,WAAhB,IAA+BA,WAA/B,GAA6CC,WAApD;AACD;;;;"}
package/utils/index.js CHANGED
@@ -1 +1 @@
1
- import r from"@babel/runtime/helpers/defineProperty";import*as t from"./StageDesignVActualUtils.js";export{t as StageDesignVActualUtils};import*as o from"./alerts.js";export{o as alerts};import*as e from"./audio.js";export{e as audio};import{convertArray as s,convertValue as i,getAllUnitTypes as a,getDefaultImperialUnit as p,getDefaultUnits as n,getUnitDescription as m,getUnitDisplay as f,getUnitPlural as c,getUnitPreference as l,getUnitsByType as j,getUnitSingular as x,getUnitSystem as u,updateUserUnits as g,getUserUnits as y,subscribeForUserUnitsUpdates as U,convertImmutables as b,convertImmutablesByBatch as v,getUniqueUnitsByType as d}from"./convert.js";import*as O from"./convert.js";export{O as convert};import*as h from"./casing/index.js";export{h as casing};import*as P from"./chartSeries.js";export{P as chartSeries};import*as w from"./completion.js";export{w as completion};import*as D from"./components.js";import*as S from"./csvExport.js";export{S as csvExport};import*as A from"./metrics/index.js";export{A as metricsUtils};import*as C from"./devcenter.js";export{C as devcenter};import*as N from"./drillstring/index.js";export{N as drillstring};import*as T from"./DrillstringUtils.js";export{T as drillstringUtils};import*as k from"./FluidCheckUtils.js";export{k as fluidCheckUtils};import*as E from"./formatting.js";export{E as formatting};import*as B from"./reports.js";export{B as reports};import*as I from"./ga.js";export{I as ga};import*as K from"./goals.js";export{K as goals};import*as q from"./lasParser.js";export{q as lasParser};import*as V from"./loadable.js";export{V as loadable};import*as F from"./main.js";export{F as main};import*as J from"./mapUnits.js";export{J as mapUnits};import*as H from"./mapbox.js";import*as M from"./mobileDetect.js";export{M as mobileDetect};import*as R from"./nativeMessages.js";export{R as nativeMessages};import*as W from"./notifications.js";export{W as notifications};import*as z from"./permissions.js";export{z as permissions};import*as G from"./rollbar.js";export{G as rollbar};import*as L from"./sqlParser.js";export{L as sqlParser};import*as Q from"./time.js";export{Q as time};import*as X from"./torqueAndHookloadUtils.js";export{X as torqueAndHookloadUtils};export{default as AccuracyUtils}from"./AccuracyUtils.js";export{createNotification,removeNotification,showErrorNotification,showInfoNotification,showSuccessNotification,showWarningNotification}from"./notificationToasts.js";export{convertKeysToCamelCase,convertKeysToSnakeCase,getConvertKeys}from"./convertKeys.js";import*as Y from"./dashboardReports.js";export{Y as dashboardReports};import*as Z from"./apps.js";export{Z as apps};import*as $ from"./themeVariables.js";export{$ as themeVariables};import*as _ from"./env.js";export{_ as env};import*as rr from"./fileExtension.js";export{rr as fileExtension};function tr(r,t){var o=Object.keys(r);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(r);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),o.push.apply(o,e)}return o}var or={get:function(r,t){var o=r[t];return"function"==typeof o?function(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return o.apply(r,e.map((function(r){return r.toJS?r.toJS():r})))}:o}};function er(t){return new Proxy(function(t){for(var o=1;o<arguments.length;o++){var e=null!=arguments[o]?arguments[o]:{};o%2?tr(Object(e),!0).forEach((function(o){r(t,o,e[o])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):tr(Object(e)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}({},t),or)}var sr=s,ir=i,ar=a,pr=p,nr=n,mr=m,fr=f,cr=c,lr=l,jr=j,xr=x,ur=u,gr=g,yr=y,Ur=U,br=b,vr=v,dr=d,Or=er(H),hr=er(D);export{hr as components,sr as convertArray,br as convertImmutables,vr as convertImmutablesByBatch,ir as convertValue,ar as getAllUnitTypes,pr as getDefaultImperialUnit,nr as getDefaultUnits,dr as getUniqueUnitsByType,mr as getUnitDescription,fr as getUnitDisplay,cr as getUnitPlural,lr as getUnitPreference,xr as getUnitSingular,ur as getUnitSystem,jr as getUnitsByType,yr as getUserUnits,Or as mapbox,Ur as subscribeForUserUnitsUpdates,gr as updateUserUnits};
1
+ import r from"@babel/runtime/helpers/defineProperty";import{convertArray as t,convertValue as o,getAllUnitTypes as e,getDefaultImperialUnit as s,getDefaultUnits as i,getUnitDescription as a,getUnitDisplay as p,getUnitPlural as n,getUnitPreference as m,getUnitsByType as f,getUnitSingular as c,getUnitSystem as l,updateUserUnits as j,getUserUnits as x,subscribeForUserUnitsUpdates as u,convertImmutables as g,convertImmutablesByBatch as y,getUniqueUnitsByType as U}from"./convert.js";import*as b from"./convert.js";export{b as convert};import*as v from"./StageDesignVActualUtils.js";export{v as StageDesignVActualUtils};import*as d from"./alerts.js";export{d as alerts};import*as O from"./audio.js";export{O as audio};import*as h from"./casing/index.js";export{h as casing};import*as P from"./chartSeries.js";export{P as chartSeries};import*as w from"./completion.js";export{w as completion};import*as D from"./components.js";import*as S from"./csvExport.js";export{S as csvExport};import*as A from"./metrics/index.js";export{A as metricsUtils};import*as C from"./devcenter.js";export{C as devcenter};import*as N from"./drillstring/index.js";export{N as drillstring};import*as T from"./DrillstringUtils.js";export{T as drillstringUtils};import*as k from"./FluidCheckUtils.js";export{k as fluidCheckUtils};import*as E from"./formatting.js";export{E as formatting};import*as B from"./reports.js";export{B as reports};import*as I from"./ga.js";export{I as ga};import*as K from"./goals.js";export{K as goals};import*as q from"./lasParser.js";export{q as lasParser};import*as V from"./loadable.js";export{V as loadable};import*as F from"./main.js";export{F as main};import*as J from"./mapUnits.js";export{J as mapUnits};import*as H from"./mapbox.js";import*as M from"./mobileDetect.js";export{M as mobileDetect};import*as R from"./nativeMessages.js";export{R as nativeMessages};import*as W from"./notifications.js";export{W as notifications};import*as z from"./permissions.js";export{z as permissions};import*as G from"./rollbar.js";export{G as rollbar};import*as L from"./sqlParser.js";export{L as sqlParser};import*as Q from"./time.js";export{Q as time};import*as X from"./torqueAndHookloadUtils.js";export{X as torqueAndHookloadUtils};export{default as AccuracyUtils}from"./AccuracyUtils.js";export{createNotification,removeNotification,showErrorNotification,showInfoNotification,showSuccessNotification,showWarningNotification}from"./notificationToasts.js";export{convertKeysToCamelCase,convertKeysToSnakeCase,getConvertKeys}from"./convertKeys.js";import*as Y from"./dashboardReports.js";export{Y as dashboardReports};import*as Z from"./apps.js";export{Z as apps};import*as $ from"./themeVariables.js";export{$ as themeVariables};import*as _ from"./env.js";export{_ as env};import*as rr from"./fileExtension.js";export{rr as fileExtension};function tr(r,t){var o=Object.keys(r);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(r);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),o.push.apply(o,e)}return o}var or={get:function(r,t){var o=r[t];return"function"==typeof o?function(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return o.apply(r,e.map((function(r){return r.toJS?r.toJS():r})))}:o}};function er(t){return new Proxy(function(t){for(var o=1;o<arguments.length;o++){var e=null!=arguments[o]?arguments[o]:{};o%2?tr(Object(e),!0).forEach((function(o){r(t,o,e[o])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):tr(Object(e)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}({},t),or)}var sr=t,ir=o,ar=e,pr=s,nr=i,mr=a,fr=p,cr=n,lr=m,jr=f,xr=c,ur=l,gr=j,yr=x,Ur=u,br=g,vr=y,dr=U,Or=er(H),hr=er(D);export{hr as components,sr as convertArray,br as convertImmutables,vr as convertImmutablesByBatch,ir as convertValue,ar as getAllUnitTypes,pr as getDefaultImperialUnit,nr as getDefaultUnits,dr as getUniqueUnitsByType,mr as getUnitDescription,fr as getUnitDisplay,cr as getUnitPlural,lr as getUnitPreference,xr as getUnitSingular,ur as getUnitSystem,jr as getUnitsByType,yr as getUserUnits,Or as mapbox,Ur as subscribeForUserUnitsUpdates,gr as updateUserUnits};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/utils/index.js"],"sourcesContent":["import * 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 componentsFormerImmutable 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 lasParser from './lasParser';\nimport * as loadable from './loadable';\nimport * as main from './main';\nimport * as mapUnits from './mapUnits';\nimport * as mapboxFormerImmutable from './mapbox';\nimport * as metricsUtils from './metrics';\nimport * as mobileDetect from './mobileDetect';\nimport * as nativeMessages from './nativeMessages';\nimport * as notifications from './notifications';\nimport * as permissions from './permissions';\nimport * as reports from './reports';\nimport * as rollbar from './rollbar';\nimport * as sqlParser from './sqlParser';\nimport * as time from './time';\nimport * as torqueAndHookloadUtils from './torqueAndHookloadUtils';\nimport AccuracyUtils from './AccuracyUtils';\nimport {\n createNotification,\n removeNotification,\n showSuccessNotification,\n showErrorNotification,\n showWarningNotification,\n showInfoNotification,\n} from './notificationToasts';\nimport { getConvertKeys, convertKeysToSnakeCase, convertKeysToCamelCase } 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';\n\nconst backwardCompatibleHandler = {\n get(target, propKey) {\n const original = target[propKey];\n return typeof original === 'function'\n ? (...props) =>\n original.apply(\n target,\n props.map(prop => (prop.toJS ? prop.toJS() : prop))\n )\n : original;\n },\n};\n\nfunction getBackwardCompatibility(module) {\n return new Proxy({ ...module }, backwardCompatibleHandler);\n}\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 convertImmutables,\n convertImmutablesByBatch,\n getUniqueUnitsByType,\n} = convert;\n\nconst mapbox = getBackwardCompatibility(mapboxFormerImmutable);\nconst components = getBackwardCompatibility(componentsFormerImmutable);\n\nexport {\n AccuracyUtils,\n StageDesignVActualUtils,\n alerts,\n apps,\n audio,\n casing,\n chartSeries,\n completion,\n components,\n convert,\n convertArray,\n convertImmutables,\n convertImmutablesByBatch,\n convertKeysToCamelCase,\n convertKeysToSnakeCase,\n convertValue,\n createNotification,\n csvExport,\n dashboardReports,\n devcenter,\n drillstring,\n drillstringUtils,\n env,\n fileExtension,\n fluidCheckUtils,\n formatting,\n ga,\n getAllUnitTypes,\n getConvertKeys,\n getDefaultImperialUnit,\n getDefaultUnits,\n getUniqueUnitsByType,\n getUnitDescription,\n getUnitDisplay,\n getUnitPlural,\n getUnitPreference,\n getUnitSingular,\n getUnitSystem,\n getUnitsByType,\n getUserUnits,\n goals,\n lasParser,\n loadable,\n main,\n mapUnits,\n mapbox,\n metricsUtils,\n mobileDetect,\n nativeMessages,\n notifications,\n permissions,\n removeNotification,\n reports,\n rollbar,\n showErrorNotification,\n showInfoNotification,\n showSuccessNotification,\n showWarningNotification,\n sqlParser,\n subscribeForUserUnitsUpdates,\n themeVariables,\n time,\n torqueAndHookloadUtils,\n updateUserUnits,\n};\n"],"names":["backwardCompatibleHandler","get","target","propKey","original","props","apply","map","prop","toJS","getBackwardCompatibility","module","Proxy","convertArray","convert","convertValue","getAllUnitTypes","getDefaultImperialUnit","getDefaultUnits","getUnitDescription","getUnitDisplay","getUnitPlural","getUnitPreference","getUnitsByType","getUnitSingular","getUnitSystem","updateUserUnits","getUserUnits","subscribeForUserUnitsUpdates","convertImmutables","convertImmutablesByBatch","getUniqueUnitsByType","mapbox","mapboxFormerImmutable","components","componentsFormerImmutable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,IAAMA,yBAAyB,GAAG;AAChCC,EAAAA,GADgC,eAC5BC,MAD4B,EACpBC,OADoB,EACX;AACnB,QAAMC,QAAQ,GAAGF,MAAM,CAACC,OAAD,CAAvB;AACA,WAAO,OAAOC,QAAP,KAAoB,UAApB,GACH;AAAA,wCAAIC,KAAJ;AAAIA,QAAAA,KAAJ;AAAA;;AAAA,aACED,QAAQ,CAACE,KAAT,CACEJ,MADF,EAEEG,KAAK,CAACE,GAAN,CAAU,UAAAC,IAAI;AAAA,eAAKA,IAAI,CAACC,IAAL,GAAYD,IAAI,CAACC,IAAL,EAAZ,GAA0BD,IAA/B;AAAA,OAAd,CAFF,CADF;AAAA,KADG,GAMHJ,QANJ;AAOD;AAV+B,CAAlC;;AAaA,SAASM,wBAAT,CAAkCC,MAAlC,EAA0C;AACxC,SAAO,IAAIC,KAAJ,mBAAeD,MAAf,GAAyBX,yBAAzB,CAAP;AACD;;IAGCa,eAkBEC;IAjBFC,eAiBED;IAhBFE,kBAgBEF;IAfFG,yBAeEH;IAdFI,kBAcEJ;IAbFK,qBAaEL;IAZFM,iBAYEN;IAXFO,gBAWEP;IAVFQ,oBAUER;IATFS,iBASET;IARFU,kBAQEV;IAPFW,gBAOEX;IANFY,kBAMEZ;IALFa,eAKEb;IAJFc,+BAIEd;IAHFe,oBAGEf;IAFFgB,2BAEEhB;IADFiB,uBACEjB;IAEEkB,MAAM,GAAGtB,wBAAwB,CAACuB,QAAD;IACjCC,UAAU,GAAGxB,wBAAwB,CAACyB,YAAD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lasParser.js","sources":["../../src/utils/lasParser.js"],"sourcesContent":["const VERSION_CONF_STR = 'VERS.';\nconst WRAP_CONF_STR = 'WRAP.';\nconst DELIMITER_CONF_STR = 'DLM';\n\nconst VERSION_SECTION_BEGINNING = '~version';\nconst COLUMNS_LINE_BEGINNING = '~curve';\nconst DATA_LINE_BEGINNING = '~a';\n\nexport default class LasParser {\n constructor() {\n this.config = {\n version: null,\n wrap: null,\n delimiter: null,\n };\n }\n\n getConfiguration = lines => {\n let version = null;\n let wrap = null;\n let delimiter = null;\n let flag = false;\n\n lines.forEach(line => {\n // NOTE: Detect the beginning of version section\n if (line.toLowerCase().startsWith(VERSION_SECTION_BEGINNING)) {\n flag = true;\n return;\n }\n\n // NOTE: Detect the beginning of other sections\n if (line.toLowerCase().startsWith('~')) {\n flag = false;\n return;\n }\n\n if (flag) {\n const configurationLine = line.split(' ').filter(Boolean);\n\n // NOTE: When parsing delimiter line, `value` will be '.' (DLM . -> LAS 3.0 format)\n const [key, value, dlmValue] = configurationLine;\n\n switch (key) {\n case VERSION_CONF_STR:\n version = value;\n break;\n case WRAP_CONF_STR:\n wrap = value;\n break;\n case DELIMITER_CONF_STR:\n delimiter = dlmValue;\n break;\n default:\n break;\n }\n }\n\n this.config = {\n version,\n wrap,\n delimiter,\n };\n });\n };\n\n parseHeaders = file => {\n const lines = file.split('\\n');\n\n this.getConfiguration(lines);\n\n let flag = false;\n\n return lines.reduce((accHeaders, line) => {\n if (line.toLowerCase().startsWith(COLUMNS_LINE_BEGINNING)) {\n flag = true;\n return accHeaders;\n }\n\n if (line.startsWith('~')) {\n flag = false;\n }\n\n if (flag && !line.startsWith('#') && !line.startsWith('\\r')) {\n const clearedLine = line.split(' ').filter(Boolean);\n if (!clearedLine) {\n return accHeaders;\n }\n\n return accHeaders.push(clearedLine[0]);\n }\n\n return accHeaders;\n }, []);\n };\n\n parseData = (file, parsedHeaders, keysForParsing) => {\n const lines = file.split('\\n');\n\n let flag = false;\n\n return lines.reduce((accData, line) => {\n if (line.toLowerCase().startsWith(DATA_LINE_BEGINNING)) {\n flag = true;\n return accData;\n }\n\n if (line.startsWith('~')) {\n flag = false;\n }\n\n if (flag) {\n // NOTE: Delimiters can be comma, space and tab.\n const headers = line.split(/[\\t\\s,]/).filter(Boolean);\n const dataPiece = headers.reduce((acc, item, index) => {\n const key = parsedHeaders[index];\n const parsingKeyItem = keysForParsing.find(keyItem => keyItem.parsingKey === key);\n\n if (parsingKeyItem) {\n const parsingKey = parsingKeyItem.innerKey;\n return {\n ...acc,\n [parsingKey]: parseFloat(item, 2),\n };\n }\n\n return acc;\n }, {});\n\n return dataPiece.isEmpty() ? accData : accData.push(dataPiece);\n }\n\n return accData;\n }, []);\n };\n}\n"],"names":["VERSION_CONF_STR","WRAP_CONF_STR","DELIMITER_CONF_STR","VERSION_SECTION_BEGINNING","COLUMNS_LINE_BEGINNING","DATA_LINE_BEGINNING","LasParser","lines","version","wrap","delimiter","flag","forEach","line","toLowerCase","startsWith","configurationLine","split","filter","Boolean","key","value","dlmValue","config","file","getConfiguration","reduce","accHeaders","clearedLine","push","parsedHeaders","keysForParsing","accData","headers","dataPiece","acc","item","index","parsingKeyItem","find","keyItem","parsingKey","innerKey","parseFloat","isEmpty"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadable.js","sources":["../../src/utils/loadable.js"],"sourcesContent":["// import React, { PureComponent } from 'react';\n\n// import InternalErrorView from '~/screens/App/shared/components/InternalErrorView';\n// import LoadingIndicator from '~/screens/App/shared/components/LoadingIndicator';\n\n// // NOTE: To change this, take a look at react-loadable API: https://github.com/jamiebuilds/react-loadable\n// /* eslint-disable react/prop-types */\n// class LoaderView extends PureComponent {\n// componentDidUpdate(prevProps) {\n// if (\n// window.Rollbar &&\n// this.props.error &&\n// this.props.error !== prevProps.error\n// ) {\n// console.error(this.props.error);\n// window.Rollbar.error(this.props.error);\n// }\n// }\n\n// render() {\n// if (this.props.error) {\n// return (\n// <InternalErrorView\n// title={this.props.errorTitle}\n// onRetry={this.props.retry}\n// />\n// );\n// // NOTE: If it takes more than 200ms(to avoid flashing) to load the component, show the loader\n// } else if (this.props.pastDelay) {\n// return <LoadingIndicator fullscreen={this.props.isFullscreen} />;\n// }\n// // NOTE: Don't render anything, if it takes less than 200ms to load the component\n// return null;\n// }\n// }\n\n// const createLoader = ({ isFullscreen, errorTitle }) => props =>\n// <LoaderView\n// isFullscreen={isFullscreen}\n// errorTitle={errorTitle}\n// {...props}\n// />;\n// /* eslint-enable */\n\n// export const asyncRouteLoadableOptions = options => ({\n// loading: createLoader({ isFullscreen: true, errorTitle: 'Page Loading Error' }),\n// render: (loaded, props) => <loaded.default.component {...props} />,\n// ...options,\n// });\n\n// export const asyncAppLoadableOptions = options => ({\n// loading: createLoader({ isFullscreen: false, errorTitle: 'App Loading Error' }),\n// ...options,\n// });\n"],"names":[],"mappings":"AAAA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sources":["../../src/utils/main.js"],"sourcesContent":["import FileSaver from 'file-saver';\nimport chroma from 'chroma-js';\n\nimport round from 'lodash/round';\nimport isNaN from 'lodash/isNaN';\nimport isNumber from 'lodash/isNumber';\n\n/**\n * TODO: html2canvas - is used in order to take snapshots for DOM elements.\n * It must be removed after moving snapshot functionality to the back-end\n */\nimport html2canvas from 'html2canvas';\n\nimport grey from '@material-ui/core/colors/grey';\nimport red from '@material-ui/core/colors/red';\nimport yellow from '@material-ui/core/colors/yellow';\nimport blue from '@material-ui/core/colors/blue';\nimport green from '@material-ui/core/colors/green';\n\nimport { SUPPORTED_DRILLING_OPERATIONS, DEFAULT_DRILLING_OPERATION_TYPE } from '~/constants/apps';\n\nconst grey500 = grey['500'];\nconst red500 = red['500'];\nconst yellow500 = yellow['500'];\nconst blue500 = blue['500'];\nconst green500 = green['500'];\n\nconst utils = {\n formatValuePrecision(value) {\n if (!Number.isFinite(value)) return value;\n\n const displayMorePrecise = value < 100 && value > -100;\n return displayMorePrecise ? value.formatNumeral('0,0.00') : value.formatNumeral('0,0.0');\n },\n\n downloadPDF(filename, pdfBlob) {\n const pdf = new File([pdfBlob], `${filename}.pdf`, {\n type: 'application/pdf;charset=utf-8',\n });\n FileSaver.saveAs(pdf);\n },\n\n /**\n * Unescape line break '\\n' symbols. Summary and description of App may contain escaped\n * single '\\\\n' or multiple '\\\\n\\\\n...' line break symbols.\n * @param {String} - String to unescape\n * @return {String} - Unescaped string\n */\n unescapeLineBreaks(string = '') {\n return string.replace(/\\\\n/g, '\\n');\n },\n\n /**\n * Convert dataURL to Blob object.\n * @param dataURL {String} - dataURL string to convert\n * @returns {Blob} - result Blob object\n */\n dataURLtoBlob(dataURL) {\n const byteString = window.atob(dataURL.split(',')[1]);\n const mimeString = dataURL.split(',')[0].split(':')[1].split(';')[0];\n const ab = new ArrayBuffer(byteString.length);\n const ia = new Uint8Array(ab);\n for (let i = 0; i < byteString.length; i += 1) {\n ia[i] = byteString.charCodeAt(i);\n }\n return new Blob([ab], { type: mimeString });\n },\n\n /**\n * Timer for code banchmarks\n * @param {String} name - bame of timer\n * @return {Object} - object with timer stop method\n */\n banchmarkTimer(name) {\n const start = new Date();\n return {\n stop() {\n const end = new Date();\n const time = end.getTime() - start.getTime();\n console.info('Timer:', name, 'finished in', time, 'ms'); // eslint-disable-line no-console\n },\n };\n },\n\n /**\n * Get percent value\n * @param {number} value - target value\n * @param {number} sum - base value\n * @return {number} - percentage\n */\n convertToPercent(value, sum) {\n return value && Number.isFinite(sum) && sum !== 0\n ? Math.round(((value * 100) / sum) * 100) / 100\n : 0;\n },\n\n /**\n * Gets average by each column in CSV\n * @param {String} csv - CSV\n * @return {Array} - first element is headers, second element is averages\n */\n getAverageByColumnsForCSV(csv) {\n const lines = csv.split('\\n');\n\n const headers = lines[0].split(',');\n const initAverages = lines[1].split(',').map(string => [this.parseNumberFromString(string)]);\n const linesFrequency = this.getLinesFrequency(lines.length);\n\n lines.shift(); // NOTE: Remove CSV headers\n\n const averages = lines\n .reduce((averagesAccum, line, index) => {\n if (index % linesFrequency === 0) {\n // NOTE: every 'linesFrequency' line\n const numbers = line.split(',').map(this.parseNumberFromString);\n\n return averagesAccum.map((averagesArr, i) => {\n const number = +numbers[i];\n return isNumber(number) && !isNaN(number) && number > 0\n ? [...averagesArr, number]\n : averagesArr;\n });\n }\n return averagesAccum;\n }, initAverages)\n .map(averagesArr => {\n const sum = averagesArr.reduce((a, b) => a + b);\n return sum / averagesArr.length;\n });\n\n const maxDigitsAfterComa = 5;\n\n return averages.map((average, index) => ({\n header: headers[index],\n value: round(average, maxDigitsAfterComa),\n }));\n },\n\n /**\n * Parse number from string, if not number - returns 0\n * @param {String} string - string that may contain number\n * @return {[type]} - parsed number or 0\n */\n parseNumberFromString(string) {\n const number = +string;\n return isNaN(number) ? 0 : number;\n },\n\n /**\n * Get lines friquency to get from CSV\n * Helps to get from 1000 to 9999 lines from CSV to preven complex calculations\n * @param {Number} linesAmount - lines amount in CSV\n * @return {Number} - fines frequency\n */\n getLinesFrequency(linesAmount) {\n const linesFrequency = 1;\n const linesAmountString = `${linesAmount}`;\n const maxDigits = 4; // NOTE: linesAmount <= 9999\n\n if (linesAmountString.length <= maxDigits) {\n return linesFrequency;\n }\n const amountOfDigitsAfterThird = linesAmountString.slice(maxDigits).length;\n const numberWithSameAmountOfZeroes = 10 ** amountOfDigitsAfterThird;\n return linesFrequency * numberWithSameAmountOfZeroes;\n },\n\n /**\n * Transform given string to a color (RGB)\n * @param {string} str\n * @returns {string}\n */\n getColorFromString(str) {\n return this.intToRGB(this.hashCode(str));\n },\n\n /**\n * Transform given number to a color (RGB)\n * @param i\n * @returns {string}\n * @private\n */\n intToRGB(i) {\n const c = (i & 0x00ffffff) // eslint-disable-line no-bitwise\n .toString(16)\n .toUpperCase();\n return '00000'.substring(0, 6 - c.length) + c;\n },\n\n /**\n * Transform given string to a hash code\n * @param str\n * @returns {number}\n * @private\n */\n hashCode(str) {\n let hash = 0;\n for (let i = 0; i < str.length; i += 1) {\n hash = str.charCodeAt(i) + ((hash << 5) - hash); // eslint-disable-line no-bitwise\n }\n return hash;\n },\n\n /**\n * Optimize event handler via throttling\n * @param obj - event emitter (must have addEventListener method)\n * @param type - event type\n * @param callback - event handler\n * @param ctx - context for event handler execution\n * @returns {function()} - unsubscribe function\n */\n throttledEventListener(obj, type, callback, ctx) {\n let running = false;\n\n const func = function eventListener() {\n if (running) return;\n running = true;\n window.requestAnimationFrame(() => {\n callback.call(ctx);\n running = false;\n });\n };\n\n obj.addEventListener(type, func);\n\n return () => {\n obj.removeEventListener(type, func);\n };\n },\n\n /**\n * Get a snapshot for any DOM element on the page\n * @param elemId {string} - dom element id\n * @returns {string} - data URL for snapshot\n */\n async getSnapshotForElement(elemId) {\n const elem = window.document.getElementById(elemId);\n if (!elem) return null;\n\n const { clientHeight: height, clientWidth: width } = elem;\n const canvas = await html2canvas(elem, { height, width, logging: false });\n return canvas.toDataURL();\n },\n\n getAssetStatusColor(status) {\n if (status === 'active') {\n return green500;\n } else if (status === 'complete') {\n return blue500;\n } else if (status === 'paused') {\n return yellow500;\n } else if (status === 'idle' || status === 'unknown') {\n return grey500;\n }\n return red500;\n },\n\n /**\n * Finds closest to value in array of numbers\n * Source: https://stackoverflow.com/a/19277804/8337033\n * @param {array} array - array to find closest to value\n * @param {number} value - value to which find closest in array\n * @return {number} - closest to value in array\n */\n closest(array, value) {\n return array.reduce((currentClosest, arrayItem) =>\n Math.abs(arrayItem - value) < Math.abs(currentClosest - value) ? arrayItem : currentClosest\n );\n },\n\n mathMax(a, b) {\n if (!Number.isFinite(a)) {\n return b;\n } else if (!Number.isFinite(b)) {\n return a;\n }\n return Math.max(a, b);\n },\n\n mathMin(a, b) {\n if (!Number.isFinite(a)) {\n return b;\n } else if (!Number.isFinite(b)) {\n return a;\n }\n return Math.min(a, b);\n },\n\n /**\n * Gets operation by operation type\n * @param {number|null} operationType - operation type\n * @return {object|undefined} operation - operation\n */\n getOperationByType(operationType) {\n return Object.values(SUPPORTED_DRILLING_OPERATIONS).find(\n ({ value }) => value === operationType || DEFAULT_DRILLING_OPERATION_TYPE\n );\n },\n\n getUserFullName(user) {\n return user ? `${user.first_name} ${user.last_name}` : '';\n },\n\n getNameInitials(name) {\n return name\n .split(' ')\n .slice(0, 2)\n .map(part => part.substr(0, 1))\n .join('');\n },\n\n getS3BucketName() {\n return process.env.REACT_APP_ENVIRONMENT === 'development' ||\n process.env.REACT_APP_ENVIRONMENT === 'qa'\n ? 'corva-files-qa'\n : 'corva-files';\n },\n\n getS3FileUrl(bucket, fileName) {\n return `https://${bucket}.s3.amazonaws.com/${fileName}`;\n },\n\n getFileNameWithExtensionFromPath(path = '') {\n return path.split('?')[0].replace(/^.*[\\\\/]/, '');\n },\n\n hexToRgbA(hex, alpha = 1) {\n const rgba = chroma(hex).rgba();\n rgba[rgba.length - 1] = alpha;\n return `rgba(${rgba.join(',')})`;\n },\n\n truncateString(str, limit) {\n return str.length > limit ? `${str.substr(0, limit - 1)}&hellip;` : str;\n },\n\n /**\n * Copies text to clipboard\n * @param {string} text - text to copy\n * @return {undefined}\n */\n copyToClipboard(text) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n document.body.appendChild(textarea);\n\n const selection = document.getSelection();\n const range = document.createRange();\n range.selectNode(textarea);\n selection.removeAllRanges();\n selection.addRange(range);\n\n document.execCommand('copy');\n\n selection.removeAllRanges();\n document.body.removeChild(textarea);\n },\n};\n\n/**\n * Enable that for \"HTML to image\" service\n */\nwindow.getSnapshotForElement = utils.getSnapshotForElement;\n\nexport default utils;\n"],"names":["grey500","grey","red500","red","yellow500","yellow","blue500","blue","green500","green","utils","formatValuePrecision","value","Number","isFinite","displayMorePrecise","formatNumeral","downloadPDF","filename","pdfBlob","pdf","File","type","FileSaver","saveAs","unescapeLineBreaks","string","replace","dataURLtoBlob","dataURL","byteString","window","atob","split","mimeString","ab","ArrayBuffer","length","ia","Uint8Array","i","charCodeAt","Blob","banchmarkTimer","name","start","Date","stop","end","time","getTime","console","info","convertToPercent","sum","Math","round","getAverageByColumnsForCSV","csv","lines","headers","initAverages","map","parseNumberFromString","linesFrequency","getLinesFrequency","shift","averages","reduce","averagesAccum","line","index","numbers","averagesArr","number","isNumber","isNaN","a","b","maxDigitsAfterComa","average","header","linesAmount","linesAmountString","maxDigits","amountOfDigitsAfterThird","slice","numberWithSameAmountOfZeroes","getColorFromString","str","intToRGB","hashCode","c","toString","toUpperCase","substring","hash","throttledEventListener","obj","callback","ctx","running","func","eventListener","requestAnimationFrame","call","addEventListener","removeEventListener","getSnapshotForElement","elemId","elem","document","getElementById","height","clientHeight","width","clientWidth","html2canvas","logging","canvas","toDataURL","getAssetStatusColor","status","closest","array","currentClosest","arrayItem","abs","mathMax","max","mathMin","min","getOperationByType","operationType","Object","values","SUPPORTED_DRILLING_OPERATIONS","find","DEFAULT_DRILLING_OPERATION_TYPE","getUserFullName","user","first_name","last_name","getNameInitials","part","substr","join","getS3BucketName","process","env","REACT_APP_ENVIRONMENT","getS3FileUrl","bucket","fileName","getFileNameWithExtensionFromPath","path","hexToRgbA","hex","alpha","rgba","chroma","truncateString","limit","copyToClipboard","text","textarea","createElement","textContent","body","appendChild","selection","getSelection","range","createRange","selectNode","removeAllRanges","addRange","execCommand","removeChild"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapUnits.js","sources":["../../src/utils/mapUnits.js"],"sourcesContent":["/**\n * Map titles(labels) with respective metrics\n * @param {Object} data - object with titles/labels and metrics: { footage: {\n * label: 'Some text',\n * metrics: 'length',\n * } }\n * @param {Object} units - object with metrics: { length: 'meters' }\n * @return {Object} - Formatted object with titles(labels) and respective metrics\n */\n\nconst mapUnits = (data, units) =>\n Object.keys(data).reduce((acc, key) => {\n const field = data[key];\n acc[key] = field.label;\n\n if ('metrics' in field) {\n acc[key] += ` (${units[field.metrics]})`;\n }\n\n return acc;\n }, {});\n\nexport default mapUnits;\n"],"names":["mapUnits","data","units","Object","keys","reduce","acc","key","field","label","metrics"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IAEMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,IAAD,EAAOC,KAAP;AAAA,SACfC,MAAM,CAACC,IAAP,CAAYH,IAAZ,EAAkBI,MAAlB,CAAyB,UAACC,GAAD,EAAMC,GAAN,EAAc;AACrC,QAAMC,KAAK,GAAGP,IAAI,CAACM,GAAD,CAAlB;AACAD,IAAAA,GAAG,CAACC,GAAD,CAAH,GAAWC,KAAK,CAACC,KAAjB;;AAEA,QAAI,aAAaD,KAAjB,EAAwB;AACtBF,MAAAA,GAAG,CAACC,GAAD,CAAH,gBAAiBL,KAAK,CAACM,KAAK,CAACE,OAAP,CAAtB;AACD;;AAED,WAAOJ,GAAP;AACD,GATD,EASG,EATH,CADe;AAAA;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapbox.js","sources":["../../src/utils/mapbox.js"],"sourcesContent":["// NOTE: Don't want to break the algorithm\nimport { get, isArray } from 'lodash';\n\nexport function parseLatLng(input) {\n if (!input || !(typeof input === 'string') || input.length < 1) {\n return [];\n }\n\n if (\n input.indexOf('N') === -1 &&\n input.indexOf('S') === -1 &&\n input.indexOf('W') === -1 &&\n input.indexOf('E') === -1\n ) {\n const coords = input.split(',');\n if (!coords[0] || !coords[1])\n return [];\n coords[0] = parseFloat(coords[0]);\n coords[1] = parseFloat(coords[1]);\n return coords;\n }\n\n const parts = input\n .split(/[°'\"]+/)\n .join(' ')\n .split(/[^\\w\\S]+/);\n const directions = [];\n const coords = [];\n let dd = 0;\n let pow = 0;\n\n // eslint-disable-next-line no-restricted-syntax\n for (const i in parts) {\n // we end on a direction\n // eslint-disable-next-line no-restricted-globals\n if (isNaN(parts[i])) {\n const floatNumber = parseFloat(parts[i]);\n\n let direction = parts[i];\n\n if (!Number.isNaN(floatNumber)) {\n dd += floatNumber / 60 ** pow;\n pow += 1;\n direction = parts[i].replace(floatNumber, '');\n }\n\n [direction] = direction;\n\n if (direction === 'S' || direction === 'W') {\n dd *= -1;\n }\n\n directions[directions.length] = direction;\n\n coords[coords.length] = dd;\n dd = 0;\n pow = 0;\n } else {\n dd += parseFloat(parts[i]) / 60 ** pow;\n pow += 1;\n }\n }\n\n if (directions[0] === 'W' || directions[0] === 'E') {\n const tmp = coords[0];\n coords[0] = coords[1]; // eslint-disable-line prefer-destructuring\n coords[1] = tmp;\n }\n\n return coords;\n}\n\nfunction toRadians(value) {\n /** Converts numeric degrees to radians */\n return (value * Math.PI) / 180;\n}\n\nexport function getDistanceByCoordinates(coords1, coords2) {\n // Earth radius in meters\n const R = 6371e3;\n const mile = 1609.34;\n const phi1 = toRadians(coords1[0]);\n const phi2 = toRadians(coords2[0]);\n const deltaPhi = toRadians(coords2[0] - coords1[0]);\n const deltaLambda = toRadians(coords2[1] - coords1[1]);\n\n const a =\n Math.sin(deltaPhi / 2) * Math.sin(deltaPhi / 2) +\n Math.cos(phi1) * Math.cos(phi2) * Math.sin(deltaLambda / 2) * Math.sin(deltaLambda / 2);\n const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\n\n return (R * c) / mile;\n}\n\nexport function isValidLatLng(latLngArray) {\n let isValid = true;\n if (!isArray(latLngArray) || latLngArray.length !== 2) {\n isValid = false;\n } else {\n latLngArray.forEach(part => {\n if (!Number.isFinite(part)) {\n isValid = false;\n }\n });\n }\n return isValid;\n}\n\nexport const isValidCoordinates = ([lat, lng]) => Math.abs(lat) <= 90 && Math.abs(lng) <= 180;\n\nexport function getAssetCoordinates(asset) {\n if (!asset) {\n return null;\n }\n const coordinates = get(asset, ['top_hole', 'coordinates']);\n const raw = get(asset, ['top_hole', 'raw']);\n if (coordinates) {\n return coordinates;\n } else if (raw) {\n const parsed = parseLatLng(raw);\n if (isValidLatLng(parsed)) {\n return parsed;\n }\n }\n return null;\n}\n\n// NOTE: Data path of top_hole info may be modified for the purpose\nexport function getAssetV2Coordinates(asset, path = 'attributes.top_hole') {\n if (!asset) return null;\n const { coordinates, raw } = get(asset, path) || {};\n if (coordinates) return coordinates;\n if (raw) {\n const parsed = parseLatLng(raw);\n if (isValidLatLng(parsed)) return parsed;\n }\n return null;\n}\n"],"names":["parseLatLng","input","length","indexOf","coords","split","parseFloat","parts","join","directions","dd","pow","i","isNaN","floatNumber","direction","Number","replace","tmp","toRadians","value","Math","PI","getDistanceByCoordinates","coords1","coords2","R","mile","phi1","phi2","deltaPhi","deltaLambda","a","sin","cos","c","atan2","sqrt","isValidLatLng","latLngArray","isValid","isArray","forEach","part","isFinite","isValidCoordinates","lat","lng","abs","getAssetCoordinates","asset","coordinates","get","raw","parsed","getAssetV2Coordinates","path"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/utils/metrics/index.js"],"sourcesContent":["import * as metrics from './metricsConfig';\nimport { getMetricUnitDisplay } from './utils';\n\nexport function getMetricTypeUnitDisplay(metricType) {\n const metricConfig = metrics[metricType];\n return getMetricUnitDisplay(metricConfig);\n}\n\nexport { getMetricUnitDisplay, getConvertedMetricValue, convertPercentageMetrics } from './utils';\nexport default metrics;\n"],"names":["getMetricTypeUnitDisplay","metricType","metricConfig","metrics","getMetricUnitDisplay"],"mappings":";;;;;AAGO,SAASA,wBAAT,CAAkCC,UAAlC,EAA8C;AACnD,MAAMC,YAAY,GAAGC,aAAO,CAACF,UAAD,CAA5B;AACA,SAAOG,oBAAoB,CAACF,YAAD,CAA3B;AACD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metricsConfig.js","sources":["../../../src/utils/metrics/metricsConfig.js"],"sourcesContent":["/* eslint-disable camelcase */\n\n/*\n These are base configs for all metrics\n Any app can overwrite and extend any config\n Config specs: https://www.notion.so/corva/Drilling-Metrics-31de1dc4b7b448ec9e91ad4b61a941a2\n\n Fields:\n Required:\n label: UI metric name\n key: api key for metric\n\n Optional:\n unitType: the class of unit such as volume, length, mass, etc, used in convert.js\n from: the specific unit such as m, gal, lb, etc according to api\n to: the unit that we want to convert the value to (on UI)\n precision: rounding api metric value, default is 2\n isBiggestBest: some metrics should be maximized, other - minimized\n customScale: function for scaling metrics, for example percents\n formatUnitDisplay: takes unitDisplay as argument\n allowNegativeValue: only a few metrics can be negative\n\n*/\nimport { getUnitPreference, getUnitDescription, convertValue } from '../convert';\nimport { convertPercentageMetrics } from './utils';\n\nexport const hole_depth = {\n label: 'Hole Depth',\n key: 'hole_depth',\n isBiggestBest: true,\n unitType: 'length',\n from: 'ft',\n};\n\nexport const hole_depth_change = {\n label: 'Total Distance Drilled',\n key: 'hole_depth_change',\n unitType: 'length',\n from: 'ft',\n isBiggestBest: true,\n};\n\nexport const drilled_feet_rotary = {\n label: 'Rotary Distance Drilled',\n key: 'drilled_feet_rotary',\n unitType: 'length',\n from: 'ft',\n isBiggestBest: true,\n};\n\nexport const drilled_feet_slide = {\n label: 'Slide Distance Drilled',\n key: 'drilled_feet_slide',\n unitType: 'length',\n from: 'ft',\n};\n\nexport const drilled_feet_rotary_percentage = {\n label: 'Rotary %',\n key: 'drilled_feet_rotary_percentage',\n to: '%',\n customConvert: convertPercentageMetrics,\n isBiggestBest: true,\n};\nexport const drilled_feet_slide_percentage = {\n label: 'Slide %',\n key: 'drilled_feet_slide_percentage',\n to: '%',\n customConvert: convertPercentageMetrics,\n};\nexport const drilling_percentage = {\n label: 'Drilling %',\n key: 'drilling_percentage',\n to: '%',\n customConvert: convertPercentageMetrics,\n isBiggestBest: true,\n};\nexport const rop = {\n label: 'On-Bottom ROP',\n key: 'rop',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const rop_rotary = {\n label: 'Rotary ROP',\n key: 'rop_rotary',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const rop_slide = {\n label: 'Slide ROP',\n key: 'rop_slide',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const rop_gross = {\n label: 'Gross ROP',\n key: 'rop_gross',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const feet_per_day = {\n label: 'Drilled Distance/Day',\n key: 'feet_per_day',\n unitType: 'length',\n from: 'ft',\n formatUnitDisplay: unitDisplay => `${unitDisplay}/day`,\n isBiggestBest: true,\n};\nexport const drilling_time_rotary = {\n label: 'Rotary Drilling Time',\n key: 'drilling_time_rotary',\n to: 'h',\n isBiggestBest: true,\n};\nexport const drilling_time_slide = {\n label: 'Slide Drilling Time',\n key: 'drilling_time_slide',\n to: 'h',\n};\nexport const on_bottom_time = {\n label: 'On Bottom Time',\n key: 'on_bottom_time',\n to: 'h',\n};\nexport const on_bottom_percentage = {\n label: 'On Bottom %',\n key: 'on_bottom_percentage',\n to: '%',\n customConvert: convertPercentageMetrics,\n isBiggestBest: true,\n};\nexport const drilling_connection_average = {\n label: 'Slips to Slips',\n key: 'drilling_connection_average',\n to: 'min',\n unitType: 'time',\n from: 's',\n};\nexport const weight_to_weight_average = {\n label: 'Weight to Weight',\n key: 'weight_to_weight_average',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\n\nexport const bottom_to_slips_average = {\n label: 'Bottom to Slips',\n key: 'bottom_to_slips_average',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\nexport const slips_to_bottom_average = {\n label: 'Slips to Bottom',\n key: 'slips_to_bottom_average',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\n\nexport const pumps_on_to_bottom_average = {\n label: 'Pumps on to Bottom',\n key: 'pumps_on_to_bottom_average',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\n\nexport const tripping_in_speed = {\n label: 'Hole Tripping In Speed',\n key: 'tripping_in_speed',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const tripping_out_speed = {\n label: 'Hole Tripping Out Speed',\n key: 'tripping_out_speed',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const tripping_in_speed_cased = {\n label: 'Cased Hole Tripping In Speed',\n key: 'tripping_in_speed_cased',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const tripping_out_speed_cased = {\n label: 'Cased Hole Tripping Out Speed',\n key: 'tripping_out_speed_cased',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const tripping_in_speed_open = {\n label: 'Open Hole Tripping In Speed',\n key: 'tripping_in_speed_open',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const tripping_out_speed_open = {\n label: 'Open Hole Tripping Out Speed',\n key: 'tripping_out_speed_open',\n unitType: 'velocity',\n from: 'ft/h',\n isBiggestBest: true,\n};\nexport const tripping_in_time_cased = {\n label: 'Casing Tripping In Cased Hole',\n key: 'tripping_in_time_cased',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\nexport const tripping_in_time_open = {\n label: 'Casing Tripping In Open Hole',\n key: 'tripping_in_time_open',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\nexport const tripping_in_time = {\n label: 'Casing Tripping In Entire Hole',\n key: 'tripping_in_time',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\nexport const tripping_in_connection_time_cased = {\n label: 'Connection Time in Cased Hole',\n key: 'tripping_in_connection_time_cased',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\nexport const tripping_in_time_with_connection_open = {\n label: 'Casing Tripping In Open Hole + Connection Time in Open Hole',\n key: 'tripping_in_time_with_connection_open',\n to: 'min',\n from: 'h',\n unitType: 'time',\n};\nexport const tripping_in_time_with_connection = {\n label: 'Casing Tripping In Entire Hole + Connection Time in Entire Hole',\n key: 'tripping_in_time_with_connection',\n to: 'min',\n from: 'h',\n unitType: 'time',\n};\nexport const slips_to_slips = {\n label: 'Casing Slips to Slips',\n key: 'slips_to_slips_average',\n to: 'min',\n from: 's',\n unitType: 'time',\n};\nexport const gross_tripping_in_speed_cased = {\n label: 'Cased Hole Tripping In Speed (with connection)',\n key: 'gross_tripping_in_speed_cased',\n unitType: 'velocity',\n from: 'ft/h',\n};\nexport const gross_tripping_in_speed_open = {\n label: 'Open Hole Tripping In Speed (with connection)',\n key: 'gross_tripping_in_speed_open',\n unitType: 'velocity',\n from: 'ft/h',\n};\nexport const gross_tripping_in_speed = {\n label: 'Entire Hole Tripping In Speed (with connection)',\n key: 'gross_tripping_in_speed',\n unitType: 'velocity',\n from: 'ft/h',\n};\n\nexport const cost_per_ft = {\n label: `Cost/${getUnitDescription(getUnitPreference('length')).singular}`,\n key: 'cost_per_ft',\n customConvert: value => value / convertValue(1, 'length', 'ft'),\n};\n\nexport const cost_per_lat_ft = {\n label: `Lateral Cost/${getUnitDescription(getUnitPreference('length')).singular}`,\n key: 'cost_per_lat_ft',\n customConvert: value => value / convertValue(1, 'length', 'ft'),\n};\n\nexport const npt = {\n label: 'NPT',\n key: 'npt',\n unitType: 'time',\n from: 'h',\n to: 'h',\n};\n\nexport const circulating_time = {\n label: 'Circulating Time',\n key: 'circulating_time',\n unitType: 'time',\n from: 'h',\n to: 'h',\n};\n\nexport const spud_to_rig_release_time = {\n label: 'Spud to Rig Release',\n key: 'spud_to_rig_release_time',\n unitType: 'time',\n from: 'h',\n to: 'd',\n};\n\nexport const spud_to_target = {\n label: 'Spud to Target',\n key: 'spud_to_target',\n unitType: 'time',\n from: 'h',\n to: 'd',\n};\n\nexport const spud_to_total_depth_time = {\n label: 'Spud to Total Depth',\n key: 'spud_to_total_depth_time',\n unitType: 'time',\n from: 'h',\n to: 'd',\n};\n\nexport const spud_to_landing_point = {\n label: 'Spud to Landing Point',\n key: 'spud_to_landing_point',\n unitType: 'time',\n from: 'h',\n to: 'd',\n};\n\nexport const gross_time = {\n label: 'Gross Time',\n key: 'gross_time',\n unitType: 'time',\n from: 's',\n to: 'h',\n};\n\nexport const turn_rate = {\n label: 'Turn Rate',\n key: 'turn_rate',\n unitType: 'anglePerLength',\n from: 'dp100f',\n allowNegativeValue: true,\n};\n\nexport const build_rate = {\n label: 'Build Rate',\n key: 'build_rate',\n unitType: 'anglePerLength',\n from: 'dp100f',\n allowNegativeValue: true,\n};\n\n// NOTE: Has no unit\nexport const cumulative_tortuosity = {\n label: 'Cumulative Tortuosity',\n key: 'cumulative_tortuosity',\n};\n"],"names":["hole_depth","label","key","isBiggestBest","unitType","from","hole_depth_change","drilled_feet_rotary","drilled_feet_slide","drilled_feet_rotary_percentage","to","customConvert","convertPercentageMetrics","drilled_feet_slide_percentage","drilling_percentage","rop","rop_rotary","rop_slide","rop_gross","feet_per_day","formatUnitDisplay","unitDisplay","drilling_time_rotary","drilling_time_slide","on_bottom_time","on_bottom_percentage","drilling_connection_average","weight_to_weight_average","bottom_to_slips_average","slips_to_bottom_average","pumps_on_to_bottom_average","tripping_in_speed","tripping_out_speed","tripping_in_speed_cased","tripping_out_speed_cased","tripping_in_speed_open","tripping_out_speed_open","tripping_in_time_cased","tripping_in_time_open","tripping_in_time","tripping_in_connection_time_cased","tripping_in_time_with_connection_open","tripping_in_time_with_connection","slips_to_slips","gross_tripping_in_speed_cased","gross_tripping_in_speed_open","gross_tripping_in_speed","cost_per_ft","getUnitDescription","getUnitPreference","singular","value","convertValue","cost_per_lat_ft","npt","circulating_time","spud_to_rig_release_time","spud_to_target","spud_to_total_depth_time","spud_to_landing_point","gross_time","turn_rate","allowNegativeValue","build_rate","cumulative_tortuosity"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../../src/utils/metrics/utils.js"],"sourcesContent":["import { round, identity } from 'lodash';\nimport { convertValue, getUnitDisplay } from '~/utils/convert';\n\nexport function getMetricUnitDisplay({ formatUnitDisplay = identity, to, unitType } = {}) {\n // NOTE: If no unitType provided - show `to` value as unitDisplay\n if (!to && !unitType) return '';\n return formatUnitDisplay(to || getUnitDisplay(unitType));\n}\n\nexport function getConvertedMetricValue(metricApiValue, metricConfig) {\n // NOTE: Metric api value must be numeric\n if (!Number.isFinite(metricApiValue) || !metricConfig) return null;\n\n const {\n unitType, // The class of unit such as volume, length, mass, etc.\n from, // The specific unit such as m, gal, lb, etc. API returns metric in this unit\n to, // To (optional) the unit that we want to convert the value to.\n customConvert, // Use custom conversion if provided\n precision = 2, // Round metric with this precision\n allowNegativeValue = false,\n } = metricConfig;\n\n if (customConvert) return customConvert(metricApiValue, metricConfig);\n\n // NOTE: Scale, convert and round value\n let value = unitType\n ? convertValue(metricApiValue, unitType, from, to, precision)\n : metricApiValue;\n // NOTE: Convert's round sometimes skip rounding\n value = round(value, precision);\n\n // NOTE: Metrics should be non-negative by default\n value = allowNegativeValue ? value : Math.max(value, 0);\n return value;\n}\n\n// NOTE: Round down all values between 100-101.50% to 100.00%. Leave all values above 101.50%.\nexport function convertPercentageMetrics(value, { precision = 2 } = {}) {\n const convertedValue = value * 100;\n return round(convertedValue > 100 && convertedValue < 101.5 ? 100 : convertedValue, precision);\n}\n"],"names":["getMetricUnitDisplay","formatUnitDisplay","identity","to","unitType","getUnitDisplay","getConvertedMetricValue","metricApiValue","metricConfig","Number","isFinite","from","customConvert","precision","allowNegativeValue","value","convertValue","round","Math","max","convertPercentageMetrics","convertedValue"],"mappings":";;;AAGO,SAASA,oBAAT,GAAmF;AAAA,iFAAJ,EAAI;AAAA,mCAAnDC,iBAAmD;AAAA,MAAnDA,iBAAmD,sCAA/BC,QAA+B;AAAA,MAArBC,EAAqB,QAArBA,EAAqB;AAAA,MAAjBC,QAAiB,QAAjBA,QAAiB;;AACxF;AACA,MAAI,CAACD,EAAD,IAAO,CAACC,QAAZ,EAAsB,OAAO,EAAP;AACtB,SAAOH,iBAAiB,CAACE,EAAE,IAAIE,cAAc,CAACD,QAAD,CAArB,CAAxB;AACD;AAEM,SAASE,uBAAT,CAAiCC,cAAjC,EAAiDC,YAAjD,EAA+D;AACpE;AACA,MAAI,CAACC,MAAM,CAACC,QAAP,CAAgBH,cAAhB,CAAD,IAAoC,CAACC,YAAzC,EAAuD,OAAO,IAAP;AAFa,MAKlEJ,QALkE,GAWhEI,YAXgE,CAKlEJ,QALkE;AAAA,MAMlEO,IANkE,GAWhEH,YAXgE,CAMlEG,IANkE;AAAA,MAOlER,EAPkE,GAWhEK,YAXgE,CAOlEL,EAPkE;AAAA,MAQlES,aARkE,GAWhEJ,YAXgE,CAQlEI,aARkE;AAAA,8BAWhEJ,YAXgE,CASlEK,SATkE;AAAA,MASlEA,SATkE,sCAStD,CATsD;AAAA,8BAWhEL,YAXgE,CAUlEM,kBAVkE;AAAA,MAUlEA,kBAVkE,sCAU7C,KAV6C;AAapE,MAAIF,aAAJ,EAAmB,OAAOA,aAAa,CAACL,cAAD,EAAiBC,YAAjB,CAApB,CAbiD;;AAgBpE,MAAIO,KAAK,GAAGX,QAAQ,GAChBY,YAAY,CAACT,cAAD,EAAiBH,QAAjB,EAA2BO,IAA3B,EAAiCR,EAAjC,EAAqCU,SAArC,CADI,GAEhBN,cAFJ,CAhBoE;;AAoBpEQ,EAAAA,KAAK,GAAGE,KAAK,CAACF,KAAD,EAAQF,SAAR,CAAb,CApBoE;;AAuBpEE,EAAAA,KAAK,GAAGD,kBAAkB,GAAGC,KAAH,GAAWG,IAAI,CAACC,GAAL,CAASJ,KAAT,EAAgB,CAAhB,CAArC;AACA,SAAOA,KAAP;AACD;;AAGM,SAASK,wBAAT,CAAkCL,KAAlC,EAAiE;AAAA,kFAAJ,EAAI;AAAA,8BAAtBF,SAAsB;AAAA,MAAtBA,SAAsB,gCAAV,CAAU;;AACtE,MAAMQ,cAAc,GAAGN,KAAK,GAAG,GAA/B;AACA,SAAOE,KAAK,CAACI,cAAc,GAAG,GAAjB,IAAwBA,cAAc,GAAG,KAAzC,GAAiD,GAAjD,GAAuDA,cAAxD,EAAwER,SAAxE,CAAZ;AACD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobileDetect.js","sources":["../../src/utils/mobileDetect.js"],"sourcesContent":["import MobileDetect from 'mobile-detect';\nimport queryString from 'query-string';\n\nconst md = new MobileDetect(window.navigator.userAgent);\nconst { native, tablet } = queryString.parse(window.location.search);\n\nexport const isMobileDetected = !!md.mobile();\nexport const isTabletDetected = !!md.tablet();\nexport const isNativeDetected = !!native;\nexport const isNativeTabletDetected = isNativeDetected && !!tablet;\n\nexport const isPhoneDetected = !!md.phone();\n"],"names":["md","MobileDetect","window","navigator","userAgent","queryString","parse","location","search","native","tablet","isMobileDetected","mobile","isTabletDetected","isNativeDetected","isNativeTabletDetected","isPhoneDetected","phone"],"mappings":";;;AAGA,IAAMA,EAAE,GAAG,IAAIC,YAAJ,CAAiBC,MAAM,CAACC,SAAP,CAAiBC,SAAlC,CAAX;;yBAC2BC,WAAW,CAACC,KAAZ,CAAkBJ,MAAM,CAACK,QAAP,CAAgBC,MAAlC;IAAnBC,4BAAAA;IAAQC,4BAAAA;;IAEHC,gBAAgB,GAAG,CAAC,CAACX,EAAE,CAACY,MAAH;IACrBC,gBAAgB,GAAG,CAAC,CAACb,EAAE,CAACU,MAAH;IACrBI,gBAAgB,GAAG,CAAC,CAACL;IACrBM,sBAAsB,GAAGD,gBAAgB,IAAI,CAAC,CAACJ;IAE/CM,eAAe,GAAG,CAAC,CAAChB,EAAE,CAACiB,KAAH;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeMessages.js","sources":["../../src/utils/nativeMessages.js"],"sourcesContent":["// Handlers for notifying the native (iOS) app of some things when running in a WebView.\n// The functions here do nothing when we are *not* in a native WebView environment.\n\nfunction getHandler() {\n return window.webkit && window.webkit.messageHandlers\n ? window.webkit.messageHandlers.swiftHandler\n : null;\n}\n\nfunction notify(message) {\n const handler = getHandler();\n if (handler) {\n handler.postMessage(message);\n } else if (window.androidInterface != null) {\n window.androidInterface.notify(message);\n }\n}\n\nexport function notifyDisablePullToRefresh() {\n notify('disablePullToRefresh');\n}\n\nexport function notifyPageLoaded() {\n notify('pageLoaded');\n}\n\nexport function notifyAppMaximized() {\n notify('appMaximized');\n}\n\nexport function notifyAppRestored() {\n notify('appRestored');\n}\n\nexport function notifyGoToAsset(assetId, slug) {\n notify(`goToAsset#${assetId}#${slug}`);\n}\n\nexport function notifyGoToAlert(alertId) {\n notify(`goToAlert#${alertId}`);\n}\n\nexport function notifyGoToAlertDefinitions() {\n notify('goToAlertDefinitions');\n}\n\nexport function notifyGoToCreateAlertDefinition() {\n notify('goToCreateAlertDefinition');\n}\n\nexport function notifyGoToAlertDefinition(alertDefinitionId) {\n notify(`goToAlertDefinition#${alertDefinitionId}`);\n}\n\nexport function notifyLog(message) {\n notify(`nativeLog#${message}`);\n}\n\nexport function notifyCommentPost(message) {\n notify(`commentPost#${message}`);\n}\n\nexport function notifyCommentEdit(message) {\n notify(`commentEdit#${message}`);\n}\n\nexport function notifyGoToFeedItem(feedItemId) {\n notify(`goToFeedItem#${feedItemId}`);\n}\n\nexport function notifyOpenFeedCommentInput(feedItemId) {\n notify(`openFeedCommentInput${feedItemId}`);\n}\n"],"names":["getHandler","window","webkit","messageHandlers","swiftHandler","notify","message","handler","postMessage","androidInterface","notifyDisablePullToRefresh","notifyPageLoaded","notifyAppMaximized","notifyAppRestored","notifyGoToAsset","assetId","slug","notifyGoToAlert","alertId","notifyGoToAlertDefinitions","notifyGoToCreateAlertDefinition","notifyGoToAlertDefinition","alertDefinitionId","notifyLog","notifyCommentPost","notifyCommentEdit","notifyGoToFeedItem","feedItemId","notifyOpenFeedCommentInput"],"mappings":"AAAA;AACA;AAEA,SAASA,UAAT,GAAsB;AACpB,SAAOC,MAAM,CAACC,MAAP,IAAiBD,MAAM,CAACC,MAAP,CAAcC,eAA/B,GACHF,MAAM,CAACC,MAAP,CAAcC,eAAd,CAA8BC,YAD3B,GAEH,IAFJ;AAGD;;AAED,SAASC,MAAT,CAAgBC,OAAhB,EAAyB;AACvB,MAAMC,OAAO,GAAGP,UAAU,EAA1B;;AACA,MAAIO,OAAJ,EAAa;AACXA,IAAAA,OAAO,CAACC,WAAR,CAAoBF,OAApB;AACD,GAFD,MAEO,IAAIL,MAAM,CAACQ,gBAAP,IAA2B,IAA/B,EAAqC;AAC1CR,IAAAA,MAAM,CAACQ,gBAAP,CAAwBJ,MAAxB,CAA+BC,OAA/B;AACD;AACF;;AAEM,SAASI,0BAAT,GAAsC;AAC3CL,EAAAA,MAAM,CAAC,sBAAD,CAAN;AACD;AAEM,SAASM,gBAAT,GAA4B;AACjCN,EAAAA,MAAM,CAAC,YAAD,CAAN;AACD;AAEM,SAASO,kBAAT,GAA8B;AACnCP,EAAAA,MAAM,CAAC,cAAD,CAAN;AACD;AAEM,SAASQ,iBAAT,GAA6B;AAClCR,EAAAA,MAAM,CAAC,aAAD,CAAN;AACD;AAEM,SAASS,eAAT,CAAyBC,OAAzB,EAAkCC,IAAlC,EAAwC;AAC7CX,EAAAA,MAAM,qBAAcU,OAAd,cAAyBC,IAAzB,EAAN;AACD;AAEM,SAASC,eAAT,CAAyBC,OAAzB,EAAkC;AACvCb,EAAAA,MAAM,qBAAca,OAAd,EAAN;AACD;AAEM,SAASC,0BAAT,GAAsC;AAC3Cd,EAAAA,MAAM,CAAC,sBAAD,CAAN;AACD;AAEM,SAASe,+BAAT,GAA2C;AAChDf,EAAAA,MAAM,CAAC,2BAAD,CAAN;AACD;AAEM,SAASgB,yBAAT,CAAmCC,iBAAnC,EAAsD;AAC3DjB,EAAAA,MAAM,+BAAwBiB,iBAAxB,EAAN;AACD;AAEM,SAASC,SAAT,CAAmBjB,OAAnB,EAA4B;AACjCD,EAAAA,MAAM,qBAAcC,OAAd,EAAN;AACD;AAEM,SAASkB,iBAAT,CAA2BlB,OAA3B,EAAoC;AACzCD,EAAAA,MAAM,uBAAgBC,OAAhB,EAAN;AACD;AAEM,SAASmB,iBAAT,CAA2BnB,OAA3B,EAAoC;AACzCD,EAAAA,MAAM,uBAAgBC,OAAhB,EAAN;AACD;AAEM,SAASoB,kBAAT,CAA4BC,UAA5B,EAAwC;AAC7CtB,EAAAA,MAAM,wBAAiBsB,UAAjB,EAAN;AACD;AAEM,SAASC,0BAAT,CAAoCD,UAApC,EAAgD;AACrDtB,EAAAA,MAAM,+BAAwBsB,UAAxB,EAAN;AACD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notificationToasts.js","sources":["../../src/utils/notificationToasts.js"],"sourcesContent":["const notificationToasts = () => window[Symbol.for('notificationToasts')];\n\nconst notifyToConsole = (...args) => {\n // eslint-disable-next-line no-console\n console.log('Notifications are not setup: ', ...args);\n};\n\nconst getHandler = handlerName => (...args) => {\n const handler = notificationToasts()?.[handlerName];\n return handler ? handler(...args) : notifyToConsole(...args);\n};\n\nexport const createNotification = getHandler('createNotification');\nexport const removeNotification = getHandler('removeNotification');\nexport const showSuccessNotification = getHandler('showSuccessNotification');\nexport const showErrorNotification = getHandler('showErrorNotification');\nexport const showWarningNotification = getHandler('showWarningNotification');\nexport const showInfoNotification = getHandler('showInfoNotification');\n"],"names":["notificationToasts","window","Symbol","for","notifyToConsole","args","console","log","getHandler","handlerName","handler","createNotification","removeNotification","showSuccessNotification","showErrorNotification","showWarningNotification","showInfoNotification"],"mappings":"AAAA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,SAAMC,MAAM,CAACC,MAAM,CAACC,GAAP,CAAW,oBAAX,CAAD,CAAZ;AAAA,CAA3B;;AAEA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAa;AAAA;;AAAA,oCAATC,IAAS;AAATA,IAAAA,IAAS;AAAA;;AACnC;AACA,cAAAC,OAAO,EAACC,GAAR,kBAAY,+BAAZ,SAAgDF,IAAhD;AACD,CAHD;;AAKA,IAAMG,UAAU,GAAG,SAAbA,UAAa,CAAAC,WAAW;AAAA,SAAI,YAAa;AAAA;;AAC7C,QAAMC,OAAO,0BAAGV,kBAAkB,EAArB,wDAAG,oBAAuBS,WAAvB,CAAhB;AACA,WAAOC,OAAO,GAAGA,OAAO,MAAP,mBAAH,GAAsBN,eAAe,MAAf,mBAApC;AACD,GAH6B;AAAA,CAA9B;;IAKaO,kBAAkB,GAAGH,UAAU,CAAC,oBAAD;IAC/BI,kBAAkB,GAAGJ,UAAU,CAAC,oBAAD;IAC/BK,uBAAuB,GAAGL,UAAU,CAAC,yBAAD;IACpCM,qBAAqB,GAAGN,UAAU,CAAC,uBAAD;IAClCO,uBAAuB,GAAGP,UAAU,CAAC,yBAAD;IACpCQ,oBAAoB,GAAGR,UAAU,CAAC,sBAAD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications.js","sources":["../../src/utils/notifications.js"],"sourcesContent":["import { NOTIFICATION_TRIGGER_TYPES } from '~/constants/notifications';\n\nexport const getNotificationMessageByType = (type, triggerObj) => {\n if (\n [\n NOTIFICATION_TRIGGER_TYPES.activityComment,\n NOTIFICATION_TRIGGER_TYPES.dashboardAppAnnotation,\n ].includes(type)\n ) {\n return triggerObj.body;\n }\n\n if (type === NOTIFICATION_TRIGGER_TYPES.activity) {\n return triggerObj.context.post.body;\n }\n\n return null;\n};\n\nexport const getNotificationAttachmentByType = (type, triggerObj) => {\n if (\n [\n NOTIFICATION_TRIGGER_TYPES.activityComment,\n NOTIFICATION_TRIGGER_TYPES.dashboardAppAnnotation,\n ].includes(type)\n ) {\n return triggerObj.attachment;\n }\n\n if (type === NOTIFICATION_TRIGGER_TYPES.activity) {\n return triggerObj.context.post.attachment;\n }\n\n return null;\n};\n\nexport const getNotificationSourceUrl = activityId => (activityId ? `/feed/${activityId}` : null);\n"],"names":["getNotificationMessageByType","type","triggerObj","NOTIFICATION_TRIGGER_TYPES","activityComment","dashboardAppAnnotation","includes","body","activity","context","post","getNotificationAttachmentByType","attachment","getNotificationSourceUrl","activityId"],"mappings":";;IAEaA,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACC,IAAD,EAAOC,UAAP,EAAsB;AAChE,MACE,CACEC,0BAA0B,CAACC,eAD7B,EAEED,0BAA0B,CAACE,sBAF7B,EAGEC,QAHF,CAGWL,IAHX,CADF,EAKE;AACA,WAAOC,UAAU,CAACK,IAAlB;AACD;;AAED,MAAIN,IAAI,KAAKE,0BAA0B,CAACK,QAAxC,EAAkD;AAChD,WAAON,UAAU,CAACO,OAAX,CAAmBC,IAAnB,CAAwBH,IAA/B;AACD;;AAED,SAAO,IAAP;AACD;IAEYI,+BAA+B,GAAG,SAAlCA,+BAAkC,CAACV,IAAD,EAAOC,UAAP,EAAsB;AACnE,MACE,CACEC,0BAA0B,CAACC,eAD7B,EAEED,0BAA0B,CAACE,sBAF7B,EAGEC,QAHF,CAGWL,IAHX,CADF,EAKE;AACA,WAAOC,UAAU,CAACU,UAAlB;AACD;;AAED,MAAIX,IAAI,KAAKE,0BAA0B,CAACK,QAAxC,EAAkD;AAChD,WAAON,UAAU,CAACO,OAAX,CAAmBC,IAAnB,CAAwBE,UAA/B;AACD;;AAED,SAAO,IAAP;AACD;IAEYC,wBAAwB,GAAG,SAA3BA,wBAA2B,CAAAC,UAAU;AAAA,SAAKA,UAAU,mBAAYA,UAAZ,IAA2B,IAA1C;AAAA;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.js","sources":["../../src/utils/permissions.js"],"sourcesContent":["import get from 'lodash/get';\n\nfunction isAdmin(user) {\n return user.role === 'admin';\n}\n\nfunction isCorvaAdmin(user) {\n return isAdmin(user) && get(user, ['company', 'provider'], null) === 'corva';\n}\n\nconst PERMISSION_RULES = {\n is_admin: isAdmin,\n is_corva_admin: isCorvaAdmin,\n};\n\nfunction checkUserPermissionByKey(user, key) {\n if (key in PERMISSION_RULES) {\n return PERMISSION_RULES[key](user);\n }\n\n throw new Error(`There is no rule ${key}, please check the spelling`);\n}\n\nexport default function checkUserPermissions(user, permissions = []) {\n return permissions.reduce(\n (isAllowed, rule) => isAllowed && checkUserPermissionByKey(user, rule),\n true\n );\n}\n"],"names":["isAdmin","user","role","isCorvaAdmin","get","PERMISSION_RULES","is_admin","is_corva_admin","checkUserPermissionByKey","key","Error","checkUserPermissions","permissions","reduce","isAllowed","rule"],"mappings":";;AAEA,SAASA,OAAT,CAAiBC,IAAjB,EAAuB;AACrB,SAAOA,IAAI,CAACC,IAAL,KAAc,OAArB;AACD;;AAED,SAASC,YAAT,CAAsBF,IAAtB,EAA4B;AAC1B,SAAOD,OAAO,CAACC,IAAD,CAAP,IAAiBG,GAAG,CAACH,IAAD,EAAO,CAAC,SAAD,EAAY,UAAZ,CAAP,EAAgC,IAAhC,CAAH,KAA6C,OAArE;AACD;;AAED,IAAMI,gBAAgB,GAAG;AACvBC,EAAAA,QAAQ,EAAEN,OADa;AAEvBO,EAAAA,cAAc,EAAEJ;AAFO,CAAzB;;AAKA,SAASK,wBAAT,CAAkCP,IAAlC,EAAwCQ,GAAxC,EAA6C;AAC3C,MAAIA,GAAG,IAAIJ,gBAAX,EAA6B;AAC3B,WAAOA,gBAAgB,CAACI,GAAD,CAAhB,CAAsBR,IAAtB,CAAP;AACD;;AAED,QAAM,IAAIS,KAAJ,4BAA8BD,GAA9B,iCAAN;AACD;;AAEc,SAASE,oBAAT,CAA8BV,IAA9B,EAAsD;AAAA,MAAlBW,WAAkB,uEAAJ,EAAI;AACnE,SAAOA,WAAW,CAACC,MAAZ,CACL,UAACC,SAAD,EAAYC,IAAZ;AAAA,WAAqBD,SAAS,IAAIN,wBAAwB,CAACP,IAAD,EAAOc,IAAP,CAA1D;AAAA,GADK,EAEL,IAFK,CAAP;AAID;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reports.js","sources":["../../src/utils/reports.js"],"sourcesContent":["// NOTE: Define this on the initialization of the app. User can't go to the Reports page from\n// another page and vice versa. On report generation Back-end just goes straight to the Reports page\n// using JWT in query params\n// eslint-disable-next-line import/prefer-default-export\nexport const isReportsPage = window.location.pathname.startsWith('/reports/');\n"],"names":["isReportsPage","window","location","pathname","startsWith"],"mappings":"AAAA;AACA;AACA;AACA;IACaA,aAAa,GAAGC,MAAM,CAACC,QAAP,CAAgBC,QAAhB,CAAyBC,UAAzB,CAAoC,WAApC;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollbar.js","sources":["../../src/utils/rollbar.js"],"sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport function configurePerson(user) {\n if (window.Rollbar) {\n window.Rollbar.configure({\n payload: {\n person: {\n id: user.id,\n username: `${user.first_name} ${user.last_name}`,\n email: user.email,\n },\n },\n });\n }\n}\n"],"names":["configurePerson","user","window","Rollbar","configure","payload","person","id","username","first_name","last_name","email"],"mappings":"AAAA;AACO,SAASA,eAAT,CAAyBC,IAAzB,EAA+B;AACpC,MAAIC,MAAM,CAACC,OAAX,EAAoB;AAClBD,IAAAA,MAAM,CAACC,OAAP,CAAeC,SAAf,CAAyB;AACvBC,MAAAA,OAAO,EAAE;AACPC,QAAAA,MAAM,EAAE;AACNC,UAAAA,EAAE,EAAEN,IAAI,CAACM,EADH;AAENC,UAAAA,QAAQ,YAAKP,IAAI,CAACQ,UAAV,cAAwBR,IAAI,CAACS,SAA7B,CAFF;AAGNC,UAAAA,KAAK,EAAEV,IAAI,CAACU;AAHN;AADD;AADc,KAAzB;AASD;AACF;;;;"}