@corva/ui 3.77.0-18 → 3.77.0-19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/constants.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/constants.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/stores/filter-store/types.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
- package/components/OffsetWellPickerV5/constants.d.ts +9 -0
- package/components/OffsetWellPickerV5/constants.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/constants.js +1 -1
- package/components/OffsetWellPickerV5/constants.js.map +1 -1
- package/components/OffsetWellPickerV5/stores/filter-store/types.d.ts +2 -1
- package/components/OffsetWellPickerV5/stores/filter-store/types.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/stores/filter-store/types.js.map +1 -1
- package/components/OffsetWellPickerV5/utils/__tests__/getTimestampByPeriod.test.d.ts +2 -0
- package/components/OffsetWellPickerV5/utils/__tests__/getTimestampByPeriod.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.d.ts +4 -0
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js +1 -1
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js.map +1 -1
- package/mcp-server/server.mjs +1 -1
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeriodFilterSelect.js","sources":["../../../../../../../../src/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.tsx"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { OBJECTIVE_PERIOD_LIST } from '../../../../constants';\nimport { useIsAllWellsLoading } from '../../../../hooks/useIsAllWellsLoading';\nimport type { PeriodType } from '../../../../stores/filter-store/types';\n\nimport { AutocompleteNext, TextInputNext } from '~/componentsV2';\n\ntype PeriodOption = {\n id:
|
|
1
|
+
{"version":3,"file":"PeriodFilterSelect.js","sources":["../../../../../../../../src/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.tsx"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { OBJECTIVE_PERIOD_LIST } from '../../../../constants';\nimport { useIsAllWellsLoading } from '../../../../hooks/useIsAllWellsLoading';\nimport type { PeriodType } from '../../../../stores/filter-store/types';\n\nimport { AutocompleteNext, TextInputNext } from '~/componentsV2';\n\ntype PeriodOption = {\n id: PeriodType;\n title: string;\n};\n\ntype PeriodFilterSelectProps = {\n value: PeriodType | null;\n onChange: (value: PeriodType | null) => void;\n testId?: string;\n dropdownClassName?: string;\n};\n\nexport const PeriodFilterSelect = ({\n value,\n onChange,\n testId,\n dropdownClassName,\n}: PeriodFilterSelectProps) => {\n const disabled = useIsAllWellsLoading();\n const options: PeriodOption[] = OBJECTIVE_PERIOD_LIST.map(item => ({\n id: item.value,\n title: item.label,\n }));\n\n const handleChange = useCallback(\n (selectedOption: PeriodOption | undefined) => {\n if (!selectedOption) {\n return;\n }\n\n if (selectedOption.id === 'all') {\n onChange(null);\n } else {\n onChange(selectedOption.id);\n }\n },\n [onChange]\n );\n\n return (\n <AutocompleteNext\n label={\n <TextInputNext.Label infoTooltip=\"Based on the latest data received from the drilling stream\">\n Date\n </TextInputNext.Label>\n }\n options={options}\n value={disabled ? undefined : value ?? 'all'}\n onChange={handleChange}\n clearable={false}\n testId={testId}\n dropdownClassName={dropdownClassName}\n disabled={disabled}\n placeholder={disabled ? 'All' : undefined}\n />\n );\n};\n\nPeriodFilterSelect.displayName = 'PeriodFilterSelect';\n"],"names":["PeriodFilterSelect","_ref","value","onChange","testId","dropdownClassName","disabled","useIsAllWellsLoading","options","OBJECTIVE_PERIOD_LIST","map","item","id","title","label","handleChange","useCallback","selectedOption","_jsx","AutocompleteNext","TextInputNext","Label","infoTooltip","children","undefined","clearable","placeholder","displayName"],"mappings":"6+jBAoBaA,IAAAA,EAAqB,SAKHC,GAAA,IAJ7BC,IAAAA,MACAC,IAAAA,SACAC,IAAAA,OACAC,IAAAA,kBAEMC,EAAWC,EAAAA,uBACXC,EAA0BC,EAAAA,sBAAsBC,KAAI,SAAAC,GAAI,MAAK,CACjEC,GAAID,EAAKT,MACTW,MAAOF,EAAKG,MACb,IAEKC,EAAeC,eACnB,SAACC,GACMA,IAIqB,QAAtBA,EAAeL,GACjBT,EAAS,MAETA,EAASc,EAAeL,IAE5B,GACA,CAACT,IAGH,OACEe,EAAAA,IAACC,EAAAA,iBAAgB,CACfL,MACEI,EAAAA,IAACE,EAAaA,cAACC,MAAK,CAACC,YAAY,6DAA4DC,SAAA,SAI/Ff,QAASA,EACTN,MAAOI,OAAWkB,EAAYtB,QAAAA,EAAS,MACvCC,SAAUY,EACVU,WAAW,EACXrB,OAAQA,EACRC,kBAAmBA,EACnBC,SAAUA,EACVoB,YAAapB,EAAW,WAAQkB,GAGtC,EAEAxB,EAAmB2B,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("lodash");require("../UserMention/utils/index.js"),require("@babel/runtime/helpers/defineProperty"),require("../../utils/convert.js"),require("../../constants/completion.js"),require("moment"),require("../../constants/alerts.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../utils/casing/validation.js"),require("@babel/runtime/helpers/slicedToArray"),require("lodash/mean"),require("../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js"),require("../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("lodash/isNumber"),require("lodash/has"),require("../../utils/ga.js"),require("../../utils/goalsConfig/goalsConfig.js"),require("../../utils/lasParser.js"),require("../../utils/main.js");var r=require("../../utils/metrics/metricsConfig.js");function
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("lodash");require("../UserMention/utils/index.js"),require("@babel/runtime/helpers/defineProperty"),require("../../utils/convert.js"),require("../../constants/completion.js"),require("moment"),require("../../constants/alerts.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../utils/casing/validation.js"),require("@babel/runtime/helpers/slicedToArray"),require("lodash/mean"),require("../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js"),require("../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("lodash/isNumber"),require("lodash/has"),require("../../utils/ga.js"),require("../../utils/goalsConfig/goalsConfig.js"),require("../../utils/lasParser.js"),require("../../utils/main.js");var r=require("../../utils/metrics/metricsConfig.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../utils/mobileDetect.js"),require("../../utils/feed.js"),require("../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../utils/dashboardReports.js"),require("../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../utils/jsonaDataFormatter.js"),require("../../utils/bha.js"),require("jsona"),require("../../clients/jsonApi/index.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../utils/charts/Styles.scss.js"),require("../../utils/getSingleAsset.js");var s=a(e),i=r,l=[i.mud_type.key],n={status:"status",company:"companyId",rig:"rigName",program:"programName",basin:"basin",county:"county",area:"area",formation:"formation",stringDesign:"stringDesign",interventionAsset:"interventionAsset",padName:"padName",radius:"radius",period:"period",sideTracks:"sideTracks",drillingWells:"drillingWells",activeInterventionWells:"activeInterventionWells",timeRangeFrom:"timeRangeFrom",timeRangeTo:"timeRangeTo"},o=[{value:n.company,label:"Company"},{value:n.program,label:"Program/BU"},{value:n.rig,label:"Rig"},{value:n.basin,label:"Basin"},{value:n.county,label:"County"},{value:n.area,label:"Area"},{value:n.formation,label:"Target Formation"},{value:n.stringDesign,label:"String Design"},{value:n.interventionAsset,label:"Intervention Asset"},{value:n.padName,label:"Pad"},{value:n.status,label:"Status"}],u={unknown:"unknown",idle:"idle",active:"active",paused:"paused",complete:"complete"},p=[{value:u.unknown,color:"#FFFFFF"},{value:u.idle,color:"#ADADFF"},{value:u.active,color:"#A8FF3D"},{value:u.paused,color:"#FFF66C"},{value:u.complete,color:"#76C2FF"}],m={name:"name",status:"status",company:"companyName",rig:"rigName",interventionAsset:"interventionAsset",padName:"padName",formation:"formation",distance:"distance",taScore:"TA",lastDrillingAt:"lastDrillingAt",lastInterventionAt:"lastInterventionAt",metrics:"metrics",wellSection:"wellSection"},c=[{type:m.name,label:"Well Name",key:m.name,minWidth:[280,197,197,186],flex:3},{type:m.status,label:"",key:m.status,minWidth:[40,40,40,30],flex:0},{type:m.company,label:"Company",key:m.company,minWidth:[180,140,140,93],flex:2},{type:m.interventionAsset,label:"Intervention Asset",key:m.interventionAsset,minWidth:[200,150,150,100],flex:2},{type:m.padName,label:"Pad",key:m.padName,minWidth:[160,130,130,90],flex:1.5},{type:m.formation,label:"Formation",key:m.formation,minWidth:[160,130,130,90],flex:1.5},{type:m.rig,label:"Rig",key:m.rig,minWidth:[220,140,140,93],flex:2},{type:m.distance,label:"Distance",key:m.distance,minWidth:[160,160,122,93],flex:1},{type:m.taScore,label:"TA",key:m.taScore,minWidth:[90,90,75,70],flex:1},{type:m.lastDrillingAt,label:"Date",key:m.lastDrillingAt,minWidth:[140,140,108,98],flex:1.5},{type:m.lastInterventionAt,label:"Last Intervention At",key:m.lastInterventionAt,minWidth:[180,160,128,108],flex:1.5},{type:m.metrics,label:"",key:"",minWidth:[0,212,141,141],flex:2},{type:m.wellSection,label:"Well Section",key:m.wellSection,minWidth:[180,131,131,97],flex:1.5}],d={key:"stringDesign",label:"String Design"},_=[d.key],g=t.sortBy([d,i.hole_depth,i.hole_depth_change,i.hole_depth_change_lateral,i.drilled_feet_rotary,i.drilled_feet_slide,i.rop_gross,i.rop,i.rop_rotary,i.rop_slide,i.drilled_feet_rotary_percentage,i.drilled_feet_slide_percentage,i.on_bottom_percentage,i.cost_per_ft,i.cost_per_lat_ft,i.feet_per_day,i.target_formation,i.mud_type,i.total_time].concat(s.default("production"!==process.env.REACT_APP_ENVIRONMENT?[i.npt,i.circulating_time,i.spud_to_rig_release_time,i.spud_to_total_depth_time]:[])),"label");exports.ALL_SECTION_KEY="all",exports.ALL_SECTION_LABEL="All",exports.COMPANY_PROVIDERS_FOR_IDAS=["xto"],exports.ColumnType=m,exports.DEFAULT_RADIUS_KM=40,exports.DEFAULT_RADIUS_MILES=25,exports.EXPANDED_WELL_NAME_WIDTH=450,exports.FilterOptions=o,exports.FilterType=n,exports.H_SCROLL_THRESHOLD=5,exports.LEAVE_TOUCH_DELAY=1e4,exports.MAX_MANUAL_METRICS_COUNT=5,exports.METRICS_LIST=g,exports.MapLayout={width:{default:600,min:314,max:900},minContentWidth:400,columnsGap:16,hintsStashBreakpoint:480},exports.NonConvertableMetrics=l,exports.OBJECTIVE_PERIOD_LIST=[{value:"all",label:"All"},{value:"last12h",label:"Last 12 hrs"},{value:"last24h",label:"Last 24 hrs"},{value:"last7d",label:"Last 7 days"},{value:"lastMonth",label:"Last Month"},{value:"last6Months",label:"Last 6 months"},{value:"yearToDate",label:"Year to Date"},{value:"last1Year",label:"Last 1 Year"},{value:"custom",label:"Custom"}],exports.ROWS_PER_PAGE=50,exports.STRING_DESIGN_METRIC=d,exports.SortDirection={ASC:"ASC",DESC:"DESC"},exports.StatusOptions=p,exports.TableColumns=c,exports.WELL_ATTRIBUTE_METRICS=_,exports.WellSectionColors=["#6EACFF","#69B919","#E95DAF","#A77DFF","#77FFC1","#018EFE","#FF5D7E","#B9E310","#FFD111","#24BB8E","#C426F3"],exports.WellStatus=u;
|
|
2
2
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../../src/components/OffsetWellPickerV5/constants.ts"],"sourcesContent":["import { sortBy } from 'lodash';\n\nimport { metricsUtils } from '~/utils';\n\nexport const DEFAULT_RADIUS_MILES = 25;\nexport const DEFAULT_RADIUS_KM = 40;\n\nexport const ALL_SECTION_KEY = 'all';\nexport const ALL_SECTION_LABEL = 'All';\nexport const EXPANDED_WELL_NAME_WIDTH = 450;\nexport const ROWS_PER_PAGE = 50;\n// Horizontal scroll (px) past which the sticky well-name column casts its shadow.\nexport const H_SCROLL_THRESHOLD = 5;\nexport const LEAVE_TOUCH_DELAY = 10000;\nexport const COMPANY_PROVIDERS_FOR_IDAS = ['xto'] as const;\nconst metrics = metricsUtils.default;\n\nexport const NonConvertableMetrics = [metrics.mud_type.key] as const;\n\nexport const FilterType = {\n status: 'status',\n company: 'companyId',\n rig: 'rigName',\n program: 'programName',\n basin: 'basin',\n county: 'county',\n area: 'area',\n formation: 'formation',\n stringDesign: 'stringDesign',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n radius: 'radius',\n period: 'period',\n sideTracks: 'sideTracks',\n drillingWells: 'drillingWells',\n activeInterventionWells: 'activeInterventionWells',\n timeRangeFrom: 'timeRangeFrom',\n timeRangeTo: 'timeRangeTo',\n} as const;\n\nexport const FilterOptions = [\n {\n value: FilterType.company,\n label: 'Company',\n },\n {\n value: FilterType.program,\n label: 'Program/BU',\n },\n {\n value: FilterType.rig,\n label: 'Rig',\n },\n {\n value: FilterType.basin,\n label: 'Basin',\n },\n {\n value: FilterType.county,\n label: 'County',\n },\n {\n value: FilterType.area,\n label: 'Area',\n },\n {\n value: FilterType.formation,\n label: 'Target Formation',\n },\n {\n value: FilterType.stringDesign,\n label: 'String Design',\n },\n {\n value: FilterType.interventionAsset,\n label: 'Intervention Asset',\n },\n {\n value: FilterType.padName,\n label: 'Pad',\n },\n {\n value: FilterType.status,\n label: 'Status',\n },\n] as const;\n\nexport const WellStatus = {\n unknown: 'unknown',\n idle: 'idle',\n active: 'active',\n paused: 'paused',\n complete: 'complete',\n} as const;\n\nexport const StatusOptions = [\n { value: WellStatus.unknown, color: '#FFFFFF' },\n { value: WellStatus.idle, color: '#ADADFF' },\n { value: WellStatus.active, color: '#A8FF3D' },\n { value: WellStatus.paused, color: '#FFF66C' },\n { value: WellStatus.complete, color: '#76C2FF' },\n] as const;\n\nexport const ColumnType = {\n name: 'name',\n status: 'status',\n company: 'companyName',\n rig: 'rigName',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n formation: 'formation',\n distance: 'distance',\n taScore: 'TA',\n lastDrillingAt: 'lastDrillingAt',\n lastInterventionAt: 'lastInterventionAt',\n metrics: 'metrics',\n wellSection: 'wellSection',\n} as const;\n\nexport const TableColumns = [\n {\n type: ColumnType.name,\n label: 'Well Name',\n key: ColumnType.name,\n minWidth: [280, 197, 197, 186] as const,\n flex: 3,\n },\n {\n type: ColumnType.status,\n label: '',\n key: ColumnType.status,\n minWidth: [40, 40, 40, 30] as const,\n flex: 0,\n },\n {\n type: ColumnType.company,\n label: 'Company',\n key: ColumnType.company,\n minWidth: [180, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.interventionAsset,\n label: 'Intervention Asset',\n key: ColumnType.interventionAsset,\n minWidth: [200, 150, 150, 100] as const,\n flex: 2,\n },\n {\n type: ColumnType.padName,\n label: 'Pad',\n key: ColumnType.padName,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.formation,\n label: 'Formation',\n key: ColumnType.formation,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.rig,\n label: 'Rig',\n key: ColumnType.rig,\n minWidth: [220, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.distance,\n label: 'Distance',\n key: ColumnType.distance,\n minWidth: [160, 160, 122, 93] as const,\n flex: 1,\n },\n {\n type: ColumnType.taScore,\n label: 'TA',\n key: ColumnType.taScore,\n minWidth: [90, 90, 75, 70] as const,\n flex: 1,\n },\n {\n type: ColumnType.lastDrillingAt,\n label: 'Date',\n key: ColumnType.lastDrillingAt,\n minWidth: [140, 140, 108, 98] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.lastInterventionAt,\n label: 'Last Intervention At',\n key: ColumnType.lastInterventionAt,\n minWidth: [180, 160, 128, 108] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.metrics,\n label: '',\n key: '',\n minWidth: [0, 212, 141, 141] as const,\n flex: 2,\n },\n {\n type: ColumnType.wellSection,\n label: 'Well Section',\n key: ColumnType.wellSection,\n minWidth: [180, 131, 131, 97] as const,\n flex: 1.5,\n },\n];\n\nexport const OBJECTIVE_PERIOD_LIST = [\n { value: 'all', label: 'All' },\n { value: 'last12h', label: 'Last 12 hrs' },\n { value: 'last24h', label: 'Last 24 hrs' },\n { value: 'last7d', label: 'Last 7 days' },\n { value: 'lastMonth', label: 'Last Month' },\n { value: 'custom', label: 'Custom' },\n] as const;\n\n/**\n * Max metrics a user can manually pick in the Settings checklist.\n * Excludes the segment's always-present default metric, so the total number of\n * metric columns is `MAX_MANUAL_METRICS_COUNT + 1` when a default exists.\n */\nexport const MAX_MANUAL_METRICS_COUNT = 5;\n\n/**\n * Pseudo-metric: selectable, capped and rendered like a metric, but its value is the well's\n * `stringDesign` attribute, not a `corva/metrics` record. Kept local so the shared metrics\n * config stays a list of real metrics.\n */\nexport const STRING_DESIGN_METRIC = { key: 'stringDesign', label: 'String Design' } as const;\n\n/** Metric keys read from well attributes — never requested from the metrics API. */\nexport const WELL_ATTRIBUTE_METRICS: readonly string[] = [STRING_DESIGN_METRIC.key];\n\nexport const METRICS_LIST = sortBy(\n [\n STRING_DESIGN_METRIC,\n metrics.hole_depth,\n metrics.hole_depth_change,\n metrics.hole_depth_change_lateral,\n metrics.drilled_feet_rotary,\n metrics.drilled_feet_slide,\n metrics.rop_gross,\n metrics.rop,\n metrics.rop_rotary,\n metrics.rop_slide,\n metrics.drilled_feet_rotary_percentage,\n metrics.drilled_feet_slide_percentage,\n metrics.on_bottom_percentage,\n metrics.cost_per_ft,\n metrics.cost_per_lat_ft,\n metrics.feet_per_day,\n metrics.target_formation,\n metrics.mud_type,\n metrics.total_time,\n ...(process.env.REACT_APP_ENVIRONMENT !== 'production'\n ? [\n metrics.npt,\n metrics.circulating_time,\n metrics.spud_to_rig_release_time,\n metrics.spud_to_total_depth_time,\n ]\n : []),\n ],\n 'label'\n);\n\nexport const WellSectionColors = [\n '#6EACFF',\n '#69B919',\n '#E95DAF',\n '#A77DFF',\n '#77FFC1',\n '#018EFE',\n '#FF5D7E',\n '#B9E310',\n '#FFD111',\n '#24BB8E',\n '#C426F3',\n] as const;\n\n// --- Resizable map ---\n// Layout for the draggable map/content split (px). Width bounds are configurable; tune\n// min/max on large monitors. `mapWidth` is persisted per user (see view-store /\n// user-settings-store).\n//\n// `minContentWidth` and `columnsGap` mirror values authored in\n// `OffsetWellPickerV5.module.css` (`.rightColumn { min-width: 400px }` and\n// `.columnsContainer { gap: 16px }`); they exist here only for the effective-max clamp\n// math and must stay in sync with the CSS. `hintsStashBreakpoint` is the map width at/below\n// which the top-right hints collapse into an icon + dropdown stash — but only while the top-left\n// radius input is also visible (they compete for the same horizontal band). With the radius input\n// hidden the hints stay expanded down to the map's min width.\nexport const MapLayout = {\n width: {\n default: 600,\n min: 314,\n max: 900, // ~1.5× default — largest the map should grow on a big modal\n },\n minContentWidth: 400,\n columnsGap: 16,\n hintsStashBreakpoint: 480,\n} as const;\n\nexport const DEFAULT_METRICS_KEY = 'hole_depth_change';\n\nexport type SortDirectionType = 'ASC' | 'DESC';\n\nexport type SortDirectionStatic = {\n ASC: 'ASC';\n DESC: 'DESC';\n};\n\nexport const SortDirection: SortDirectionStatic = { ASC: 'ASC', DESC: 'DESC' };\n"],"names":["metrics","metricsUtils","NonConvertableMetrics","mud_type","key","FilterType","status","company","rig","program","basin","county","area","formation","stringDesign","interventionAsset","padName","radius","period","sideTracks","drillingWells","activeInterventionWells","timeRangeFrom","timeRangeTo","FilterOptions","value","label","WellStatus","unknown","idle","active","paused","complete","StatusOptions","color","ColumnType","name","distance","taScore","lastDrillingAt","lastInterventionAt","wellSection","TableColumns","type","minWidth","flex","STRING_DESIGN_METRIC","WELL_ATTRIBUTE_METRICS","METRICS_LIST","sortBy","hole_depth","hole_depth_change","hole_depth_change_lateral","drilled_feet_rotary","drilled_feet_slide","rop_gross","rop","rop_rotary","rop_slide","drilled_feet_rotary_percentage","drilled_feet_slide_percentage","on_bottom_percentage","cost_per_ft","cost_per_lat_ft","feet_per_day","target_formation","total_time","process","env","REACT_APP_ENVIRONMENT","npt","circulating_time","spud_to_rig_release_time","spud_to_total_depth_time","width","default","min","max","minContentWidth","columnsGap","hintsStashBreakpoint","ASC","DESC"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/components/OffsetWellPickerV5/constants.ts"],"sourcesContent":["import { sortBy } from 'lodash';\n\nimport { metricsUtils } from '~/utils';\n\nexport const DEFAULT_RADIUS_MILES = 25;\nexport const DEFAULT_RADIUS_KM = 40;\n\nexport const ALL_SECTION_KEY = 'all';\nexport const ALL_SECTION_LABEL = 'All';\nexport const EXPANDED_WELL_NAME_WIDTH = 450;\nexport const ROWS_PER_PAGE = 50;\n// Horizontal scroll (px) past which the sticky well-name column casts its shadow.\nexport const H_SCROLL_THRESHOLD = 5;\nexport const LEAVE_TOUCH_DELAY = 10000;\nexport const COMPANY_PROVIDERS_FOR_IDAS = ['xto'] as const;\nconst metrics = metricsUtils.default;\n\nexport const NonConvertableMetrics = [metrics.mud_type.key] as const;\n\nexport const FilterType = {\n status: 'status',\n company: 'companyId',\n rig: 'rigName',\n program: 'programName',\n basin: 'basin',\n county: 'county',\n area: 'area',\n formation: 'formation',\n stringDesign: 'stringDesign',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n radius: 'radius',\n period: 'period',\n sideTracks: 'sideTracks',\n drillingWells: 'drillingWells',\n activeInterventionWells: 'activeInterventionWells',\n timeRangeFrom: 'timeRangeFrom',\n timeRangeTo: 'timeRangeTo',\n} as const;\n\nexport const FilterOptions = [\n {\n value: FilterType.company,\n label: 'Company',\n },\n {\n value: FilterType.program,\n label: 'Program/BU',\n },\n {\n value: FilterType.rig,\n label: 'Rig',\n },\n {\n value: FilterType.basin,\n label: 'Basin',\n },\n {\n value: FilterType.county,\n label: 'County',\n },\n {\n value: FilterType.area,\n label: 'Area',\n },\n {\n value: FilterType.formation,\n label: 'Target Formation',\n },\n {\n value: FilterType.stringDesign,\n label: 'String Design',\n },\n {\n value: FilterType.interventionAsset,\n label: 'Intervention Asset',\n },\n {\n value: FilterType.padName,\n label: 'Pad',\n },\n {\n value: FilterType.status,\n label: 'Status',\n },\n] as const;\n\nexport const WellStatus = {\n unknown: 'unknown',\n idle: 'idle',\n active: 'active',\n paused: 'paused',\n complete: 'complete',\n} as const;\n\nexport const StatusOptions = [\n { value: WellStatus.unknown, color: '#FFFFFF' },\n { value: WellStatus.idle, color: '#ADADFF' },\n { value: WellStatus.active, color: '#A8FF3D' },\n { value: WellStatus.paused, color: '#FFF66C' },\n { value: WellStatus.complete, color: '#76C2FF' },\n] as const;\n\nexport const ColumnType = {\n name: 'name',\n status: 'status',\n company: 'companyName',\n rig: 'rigName',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n formation: 'formation',\n distance: 'distance',\n taScore: 'TA',\n lastDrillingAt: 'lastDrillingAt',\n lastInterventionAt: 'lastInterventionAt',\n metrics: 'metrics',\n wellSection: 'wellSection',\n} as const;\n\nexport const TableColumns = [\n {\n type: ColumnType.name,\n label: 'Well Name',\n key: ColumnType.name,\n minWidth: [280, 197, 197, 186] as const,\n flex: 3,\n },\n {\n type: ColumnType.status,\n label: '',\n key: ColumnType.status,\n minWidth: [40, 40, 40, 30] as const,\n flex: 0,\n },\n {\n type: ColumnType.company,\n label: 'Company',\n key: ColumnType.company,\n minWidth: [180, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.interventionAsset,\n label: 'Intervention Asset',\n key: ColumnType.interventionAsset,\n minWidth: [200, 150, 150, 100] as const,\n flex: 2,\n },\n {\n type: ColumnType.padName,\n label: 'Pad',\n key: ColumnType.padName,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.formation,\n label: 'Formation',\n key: ColumnType.formation,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.rig,\n label: 'Rig',\n key: ColumnType.rig,\n minWidth: [220, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.distance,\n label: 'Distance',\n key: ColumnType.distance,\n minWidth: [160, 160, 122, 93] as const,\n flex: 1,\n },\n {\n type: ColumnType.taScore,\n label: 'TA',\n key: ColumnType.taScore,\n minWidth: [90, 90, 75, 70] as const,\n flex: 1,\n },\n {\n type: ColumnType.lastDrillingAt,\n label: 'Date',\n key: ColumnType.lastDrillingAt,\n minWidth: [140, 140, 108, 98] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.lastInterventionAt,\n label: 'Last Intervention At',\n key: ColumnType.lastInterventionAt,\n minWidth: [180, 160, 128, 108] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.metrics,\n label: '',\n key: '',\n minWidth: [0, 212, 141, 141] as const,\n flex: 2,\n },\n {\n type: ColumnType.wellSection,\n label: 'Well Section',\n key: ColumnType.wellSection,\n minWidth: [180, 131, 131, 97] as const,\n flex: 1.5,\n },\n];\n\nexport const OBJECTIVE_PERIOD_LIST = [\n { value: 'all', label: 'All' },\n { value: 'last12h', label: 'Last 12 hrs' },\n { value: 'last24h', label: 'Last 24 hrs' },\n { value: 'last7d', label: 'Last 7 days' },\n { value: 'lastMonth', label: 'Last Month' },\n { value: 'last6Months', label: 'Last 6 months' },\n { value: 'yearToDate', label: 'Year to Date' },\n { value: 'last1Year', label: 'Last 1 Year' },\n { value: 'custom', label: 'Custom' },\n] as const;\n\n/**\n * Max metrics a user can manually pick in the Settings checklist.\n * Excludes the segment's always-present default metric, so the total number of\n * metric columns is `MAX_MANUAL_METRICS_COUNT + 1` when a default exists.\n */\nexport const MAX_MANUAL_METRICS_COUNT = 5;\n\n/**\n * Pseudo-metric: selectable, capped and rendered like a metric, but its value is the well's\n * `stringDesign` attribute, not a `corva/metrics` record. Kept local so the shared metrics\n * config stays a list of real metrics.\n */\nexport const STRING_DESIGN_METRIC = { key: 'stringDesign', label: 'String Design' } as const;\n\n/** Metric keys read from well attributes — never requested from the metrics API. */\nexport const WELL_ATTRIBUTE_METRICS: readonly string[] = [STRING_DESIGN_METRIC.key];\n\nexport const METRICS_LIST = sortBy(\n [\n STRING_DESIGN_METRIC,\n metrics.hole_depth,\n metrics.hole_depth_change,\n metrics.hole_depth_change_lateral,\n metrics.drilled_feet_rotary,\n metrics.drilled_feet_slide,\n metrics.rop_gross,\n metrics.rop,\n metrics.rop_rotary,\n metrics.rop_slide,\n metrics.drilled_feet_rotary_percentage,\n metrics.drilled_feet_slide_percentage,\n metrics.on_bottom_percentage,\n metrics.cost_per_ft,\n metrics.cost_per_lat_ft,\n metrics.feet_per_day,\n metrics.target_formation,\n metrics.mud_type,\n metrics.total_time,\n ...(process.env.REACT_APP_ENVIRONMENT !== 'production'\n ? [\n metrics.npt,\n metrics.circulating_time,\n metrics.spud_to_rig_release_time,\n metrics.spud_to_total_depth_time,\n ]\n : []),\n ],\n 'label'\n);\n\nexport const WellSectionColors = [\n '#6EACFF',\n '#69B919',\n '#E95DAF',\n '#A77DFF',\n '#77FFC1',\n '#018EFE',\n '#FF5D7E',\n '#B9E310',\n '#FFD111',\n '#24BB8E',\n '#C426F3',\n] as const;\n\n// --- Resizable map ---\n// Layout for the draggable map/content split (px). Width bounds are configurable; tune\n// min/max on large monitors. `mapWidth` is persisted per user (see view-store /\n// user-settings-store).\n//\n// `minContentWidth` and `columnsGap` mirror values authored in\n// `OffsetWellPickerV5.module.css` (`.rightColumn { min-width: 400px }` and\n// `.columnsContainer { gap: 16px }`); they exist here only for the effective-max clamp\n// math and must stay in sync with the CSS. `hintsStashBreakpoint` is the map width at/below\n// which the top-right hints collapse into an icon + dropdown stash — but only while the top-left\n// radius input is also visible (they compete for the same horizontal band). With the radius input\n// hidden the hints stay expanded down to the map's min width.\nexport const MapLayout = {\n width: {\n default: 600,\n min: 314,\n max: 900, // ~1.5× default — largest the map should grow on a big modal\n },\n minContentWidth: 400,\n columnsGap: 16,\n hintsStashBreakpoint: 480,\n} as const;\n\nexport const DEFAULT_METRICS_KEY = 'hole_depth_change';\n\nexport type SortDirectionType = 'ASC' | 'DESC';\n\nexport type SortDirectionStatic = {\n ASC: 'ASC';\n DESC: 'DESC';\n};\n\nexport const SortDirection: SortDirectionStatic = { ASC: 'ASC', DESC: 'DESC' };\n"],"names":["metrics","metricsUtils","NonConvertableMetrics","mud_type","key","FilterType","status","company","rig","program","basin","county","area","formation","stringDesign","interventionAsset","padName","radius","period","sideTracks","drillingWells","activeInterventionWells","timeRangeFrom","timeRangeTo","FilterOptions","value","label","WellStatus","unknown","idle","active","paused","complete","StatusOptions","color","ColumnType","name","distance","taScore","lastDrillingAt","lastInterventionAt","wellSection","TableColumns","type","minWidth","flex","STRING_DESIGN_METRIC","WELL_ATTRIBUTE_METRICS","METRICS_LIST","sortBy","hole_depth","hole_depth_change","hole_depth_change_lateral","drilled_feet_rotary","drilled_feet_slide","rop_gross","rop","rop_rotary","rop_slide","drilled_feet_rotary_percentage","drilled_feet_slide_percentage","on_bottom_percentage","cost_per_ft","cost_per_lat_ft","feet_per_day","target_formation","total_time","process","env","REACT_APP_ENVIRONMENT","npt","circulating_time","spud_to_rig_release_time","spud_to_total_depth_time","width","default","min","max","minContentWidth","columnsGap","hintsStashBreakpoint","ASC","DESC"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"sourcesContent":["import type { FetchedOffsetWell } from '../../api/shared/types';\nimport type { Company } from '../company-safeguard/CompanySafeguardContext';\n\nexport type PeriodType =
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"sourcesContent":["import type { FetchedOffsetWell } from '../../api/shared/types';\nimport type { OBJECTIVE_PERIOD_LIST } from '../../constants';\nimport type { Company } from '../company-safeguard/CompanySafeguardContext';\n\nexport type PeriodType = typeof OBJECTIVE_PERIOD_LIST[number]['value'];\n\nexport type SelectionMode = 'radius' | 'lasso';\nexport type FilterMutationSource = 'manual_ui' | 'system' | 'external_sync';\n\n/** Mirrors `PickerSegment` in OffsetWellPickerV5.types (kept here to avoid circular imports). */\nexport type PickerSegmentId = 'drilling' | 'intervention';\n\nexport type PolygonCoord = {\n latitude: number;\n longitude: number;\n};\n\nexport type FilterState = {\n status?: string[];\n companyId?: number[];\n rigName?: string[];\n programName?: string[];\n basin?: string[];\n county?: string[];\n area?: string[];\n formation?: string[];\n stringDesign?: string[];\n interventionAsset?: string[];\n padName?: string[];\n period?: PeriodType;\n sideTracks?: boolean;\n drillingWells?: boolean;\n interventionWells?: boolean;\n activeInterventionWells?: boolean;\n timeRangeFrom?: number;\n timeRangeTo?: number;\n selectionMode?: SelectionMode;\n polygonCoords?: PolygonCoord[];\n radius?: number;\n hasUserConfirmedAllCompaniesLoadAll?: boolean;\n showHiddenWells?: boolean;\n};\n\nexport const BASE_DEFAULT_FILTERS: FilterState = {\n showHiddenWells: false,\n};\n\n/**\n * Keys representing map selection state (not filter criteria).\n * These are preserved during filter resets and excluded from default-state comparisons.\n */\nexport const SELECTION_FILTER_KEYS = ['selectionMode', 'radius', 'polygonCoords'] as const;\n\nexport type FilterStoreDataSources = {\n wells: FetchedOffsetWell[] | null;\n companies: Company[];\n canViewCompanies: boolean;\n isAllWellsLoaded: boolean;\n isLoadAllWells: boolean;\n segment: PickerSegmentId;\n};\n\nexport type FilterStore = FilterStoreDataSources & {\n filters: FilterState;\n defaultFilters: FilterState;\n tempFilters: Partial<FilterState>;\n lastFilterMutationSource: FilterMutationSource;\n filterMutationSeq: number;\n setFilter: (\n key: keyof FilterState,\n value: FilterState[keyof FilterState],\n source?: FilterMutationSource\n ) => void;\n setFilters: (filters: FilterState, source?: FilterMutationSource) => void;\n clearFilters: (source?: FilterMutationSource) => void;\n resetFilters: (source?: FilterMutationSource) => void;\n resetFilterCriteria: (source?: FilterMutationSource) => void;\n hasActiveFilters: () => boolean;\n setTempFilter: (key: keyof FilterState, value: FilterState[keyof FilterState]) => void;\n clearTempFilter: (key: keyof FilterState) => void;\n clearAllTempFilters: () => void;\n commitTempFilter: (key: keyof FilterState) => void;\n setSelectionMode: (mode: SelectionMode) => void;\n setPolygonCoords: (coords: PolygonCoord[] | undefined) => void;\n setRadius: (radius: number) => void;\n pruneAllCascades: () => void;\n};\n\nexport type FilterStoreProps = {\n filters?: FilterState;\n defaultFilters?: FilterState;\n canViewCompanies?: boolean;\n};\n\nexport type SetWithMutation = (\n updates: Partial<Pick<FilterStore, 'filters' | 'tempFilters'>>,\n source: FilterMutationSource\n) => void;\n"],"names":["showHiddenWells"],"mappings":"iGA2CiD,CAC/CA,iBAAiB,iCAOkB,CAAC,gBAAiB,SAAU"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var
|
|
1
|
+
"use strict";function t(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(require("moment")),r={last12h:function(t){return t.clone().subtract(12,"hours")},last24h:function(t){return t.clone().subtract(24,"hours")},last7d:function(t){return t.clone().subtract(7,"days")},lastMonth:function(t){return t.clone().subtract(1,"month")},last6Months:function(t){return t.clone().subtract(6,"months")},yearToDate:function(t){return t.clone().startOf("year")},last1Year:function(t){return t.clone().subtract(1,"year")}};exports.getTimestampByPeriod=function(t,e,u){if("custom"===t)return[null!=e?e:null,null!=u?u:null];if(void 0!==t&&function(t){return Object.prototype.hasOwnProperty.call(r,t)}(t)){var o=n.default();return[r[t](o).unix(),o.unix()]}return[null,null]};
|
|
2
2
|
//# sourceMappingURL=getTimestampByPeriod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTimestampByPeriod.js","sources":["../../../../../src/components/OffsetWellPickerV5/utils/getTimestampByPeriod.ts"],"sourcesContent":["import moment from 'moment';\n\nimport {
|
|
1
|
+
{"version":3,"file":"getTimestampByPeriod.js","sources":["../../../../../src/components/OffsetWellPickerV5/utils/getTimestampByPeriod.ts"],"sourcesContent":["import moment from 'moment';\nimport type { Moment } from 'moment';\n\nimport type { PeriodType } from '../stores/filter-store/types';\n\ntype RelativePeriod = Exclude<PeriodType, 'all' | 'custom'>;\n\n/**\n * Start-of-range resolvers for the rolling/relative period options.\n * All are computed from `now` in the effective moment timezone (the app may call\n * `moment.tz.setDefault`), so \"Year to Date\" means Jan 1 00:00 of that zone, not UTC.\n * Month/year subtraction uses moment's documented end-of-month clamping\n * (Aug 31 − 6 months → Feb 29 / Feb 28).\n */\nconst RELATIVE_PERIOD_START: Record<RelativePeriod, (now: Moment) => Moment> = {\n last12h: now => now.clone().subtract(12, 'hours'),\n last24h: now => now.clone().subtract(24, 'hours'),\n last7d: now => now.clone().subtract(7, 'days'),\n lastMonth: now => now.clone().subtract(1, 'month'),\n last6Months: now => now.clone().subtract(6, 'months'),\n yearToDate: now => now.clone().startOf('year'),\n last1Year: now => now.clone().subtract(1, 'year'),\n};\n\nconst isRelativePeriod = (period: string): period is RelativePeriod =>\n Object.prototype.hasOwnProperty.call(RELATIVE_PERIOD_START, period);\n\n/**\n * Resolves a period option to a `[start, end]` pair of unix seconds.\n * Returns `[null, null]` for `'all'`, `undefined`, or any unknown value.\n */\nexport const getTimestampByPeriod = (\n period: string | undefined,\n customFrom: number | undefined,\n customTo: number | undefined\n): [number | null, number | null] => {\n if (period === 'custom') {\n return [customFrom ?? null, customTo ?? null];\n }\n\n if (period !== undefined && isRelativePeriod(period)) {\n const now = moment();\n\n return [RELATIVE_PERIOD_START[period](now).unix(), now.unix()];\n }\n\n return [null, null];\n};\n"],"names":["RELATIVE_PERIOD_START","last12h","now","clone","subtract","last24h","last7d","lastMonth","last6Months","yearToDate","startOf","last1Year","period","customFrom","customTo","undefined","Object","prototype","hasOwnProperty","call","isRelativePeriod","moment","unix"],"mappings":"uKAcMA,EAAyE,CAC7EC,QAAS,SAAAC,GAAG,OAAIA,EAAIC,QAAQC,SAAS,GAAI,QAAQ,EACjDC,QAAS,SAAAH,GAAG,OAAIA,EAAIC,QAAQC,SAAS,GAAI,QAAQ,EACjDE,OAAQ,SAAAJ,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,OAAO,EAC9CG,UAAW,SAAAL,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,QAAQ,EAClDI,YAAa,SAAAN,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,SAAS,EACrDK,WAAY,SAAAP,GAAG,OAAIA,EAAIC,QAAQO,QAAQ,OAAO,EAC9CC,UAAW,SAAAT,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,OAAO,gCAUf,SAClCQ,EACAC,EACAC,GAEA,GAAe,WAAXF,EACF,MAAO,CAACC,QAAAA,EAAc,KAAMC,QAAAA,EAAY,MAG1C,QAAeC,IAAXH,GAhBmB,SAACA,GAAc,OACtCI,OAAOC,UAAUC,eAAeC,KAAKnB,EAAuBY,EAAO,CAevCQ,CAAiBR,GAAS,CACpD,IAAMV,EAAMmB,EAAAA,UAEZ,MAAO,CAACrB,EAAsBY,GAAQV,GAAKoB,OAAQpB,EAAIoB,OACzD,CAEA,MAAO,CAAC,KAAM,KAChB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeriodFilterSelect.js","sources":["../../../../../../../src/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.tsx"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { OBJECTIVE_PERIOD_LIST } from '../../../../constants';\nimport { useIsAllWellsLoading } from '../../../../hooks/useIsAllWellsLoading';\nimport type { PeriodType } from '../../../../stores/filter-store/types';\n\nimport { AutocompleteNext, TextInputNext } from '~/componentsV2';\n\ntype PeriodOption = {\n id:
|
|
1
|
+
{"version":3,"file":"PeriodFilterSelect.js","sources":["../../../../../../../src/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.tsx"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { OBJECTIVE_PERIOD_LIST } from '../../../../constants';\nimport { useIsAllWellsLoading } from '../../../../hooks/useIsAllWellsLoading';\nimport type { PeriodType } from '../../../../stores/filter-store/types';\n\nimport { AutocompleteNext, TextInputNext } from '~/componentsV2';\n\ntype PeriodOption = {\n id: PeriodType;\n title: string;\n};\n\ntype PeriodFilterSelectProps = {\n value: PeriodType | null;\n onChange: (value: PeriodType | null) => void;\n testId?: string;\n dropdownClassName?: string;\n};\n\nexport const PeriodFilterSelect = ({\n value,\n onChange,\n testId,\n dropdownClassName,\n}: PeriodFilterSelectProps) => {\n const disabled = useIsAllWellsLoading();\n const options: PeriodOption[] = OBJECTIVE_PERIOD_LIST.map(item => ({\n id: item.value,\n title: item.label,\n }));\n\n const handleChange = useCallback(\n (selectedOption: PeriodOption | undefined) => {\n if (!selectedOption) {\n return;\n }\n\n if (selectedOption.id === 'all') {\n onChange(null);\n } else {\n onChange(selectedOption.id);\n }\n },\n [onChange]\n );\n\n return (\n <AutocompleteNext\n label={\n <TextInputNext.Label infoTooltip=\"Based on the latest data received from the drilling stream\">\n Date\n </TextInputNext.Label>\n }\n options={options}\n value={disabled ? undefined : value ?? 'all'}\n onChange={handleChange}\n clearable={false}\n testId={testId}\n dropdownClassName={dropdownClassName}\n disabled={disabled}\n placeholder={disabled ? 'All' : undefined}\n />\n );\n};\n\nPeriodFilterSelect.displayName = 'PeriodFilterSelect';\n"],"names":["PeriodFilterSelect","_ref","value","onChange","testId","dropdownClassName","disabled","useIsAllWellsLoading","options","OBJECTIVE_PERIOD_LIST","map","item","id","title","label","handleChange","useCallback","selectedOption","_jsx","AutocompleteNext","TextInputNext","Label","infoTooltip","children","undefined","clearable","placeholder","displayName"],"mappings":"6riBAoBaA,IAAAA,EAAqB,SAKHC,GAAA,IAJ7BC,IAAAA,MACAC,IAAAA,SACAC,IAAAA,OACAC,IAAAA,kBAEMC,EAAWC,IACXC,EAA0BC,EAAsBC,KAAI,SAAAC,GAAI,MAAK,CACjEC,GAAID,EAAKT,MACTW,MAAOF,EAAKG,MACb,IAEKC,EAAeC,GACnB,SAACC,GACMA,IAIqB,QAAtBA,EAAeL,GACjBT,EAAS,MAETA,EAASc,EAAeL,IAE5B,GACA,CAACT,IAGH,OACEe,EAACC,EAAgB,CACfL,MACEI,EAACE,EAAcC,MAAK,CAACC,YAAY,6DAA4DC,SAAA,SAI/Ff,QAASA,EACTN,MAAOI,OAAWkB,EAAYtB,QAAAA,EAAS,MACvCC,SAAUY,EACVU,WAAW,EACXrB,OAAQA,EACRC,kBAAmBA,EACnBC,SAAUA,EACVoB,YAAapB,EAAW,WAAQkB,GAGtC,EAEAxB,EAAmB2B,YAAc"}
|
|
@@ -194,6 +194,15 @@ export declare const OBJECTIVE_PERIOD_LIST: readonly [{
|
|
|
194
194
|
}, {
|
|
195
195
|
readonly value: 'lastMonth';
|
|
196
196
|
readonly label: 'Last Month';
|
|
197
|
+
}, {
|
|
198
|
+
readonly value: 'last6Months';
|
|
199
|
+
readonly label: 'Last 6 months';
|
|
200
|
+
}, {
|
|
201
|
+
readonly value: 'yearToDate';
|
|
202
|
+
readonly label: 'Year to Date';
|
|
203
|
+
}, {
|
|
204
|
+
readonly value: 'last1Year';
|
|
205
|
+
readonly label: 'Last 1 Year';
|
|
197
206
|
}, {
|
|
198
207
|
readonly value: 'custom';
|
|
199
208
|
readonly label: 'Custom';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/OffsetWellPickerV5/constants.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,aAAa,KAAK,CAAC;AAEhC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,0BAA0B,YAAI,KAAK,CAAU,CAAC;AAG3D,eAAO,MAAM,qBAAqB,mBAAkC,CAAC;AAErE,eAAO,MAAM,UAAU;aACrB,MAAM,EAAE,QAAQ;aAChB,OAAO,EAAE,WAAW;aACpB,GAAG,EAAE,SAAS;aACd,OAAO,EAAE,aAAa;aACtB,KAAK,EAAE,OAAO;aACd,MAAM,EAAE,QAAQ;aAChB,IAAI,EAAE,MAAM;aACZ,SAAS,EAAE,WAAW;aACtB,YAAY,EAAE,cAAc;aAC5B,iBAAiB,EAAE,mBAAmB;aACtC,OAAO,EAAE,SAAS;aAClB,MAAM,EAAE,QAAQ;aAChB,MAAM,EAAE,QAAQ;aAChB,UAAU,EAAE,YAAY;aACxB,aAAa,EAAE,eAAe;aAC9B,uBAAuB,EAAE,yBAAyB;aAClD,aAAa,EAAE,eAAe;aAC9B,WAAW,EAAE,aAAa;CAClB,CAAC;AAEX,eAAO,MAAM,aAAa;aAEtB,KAAK;aACL,KAAK,EAAE,SAAS;;aAGhB,KAAK;aACL,KAAK,EAAE,YAAY;;aAGnB,KAAK;aACL,KAAK,EAAE,KAAK;;aAGZ,KAAK;aACL,KAAK,EAAE,OAAO;;aAGd,KAAK;aACL,KAAK,EAAE,QAAQ;;aAGf,KAAK;aACL,KAAK,EAAE,MAAM;;aAGb,KAAK;aACL,KAAK,EAAE,kBAAkB;;aAGzB,KAAK;aACL,KAAK,EAAE,eAAe;;aAGtB,KAAK;aACL,KAAK,EAAE,oBAAoB;;aAG3B,KAAK;aACL,KAAK,EAAE,KAAK;;aAGZ,KAAK;aACL,KAAK,EAAE,QAAQ;EAET,CAAC;AAEX,eAAO,MAAM,UAAU;aACrB,OAAO,EAAE,SAAS;aAClB,IAAI,EAAE,MAAM;aACZ,MAAM,EAAE,QAAQ;aAChB,MAAM,EAAE,QAAQ;aAChB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAEX,eAAO,MAAM,aAAa;aACtB,KAAK;aAAsB,KAAK,EAAE,SAAS;;aAC3C,KAAK;aAAmB,KAAK,EAAE,SAAS;;aACxC,KAAK;aAAqB,KAAK,EAAE,SAAS;;aAC1C,KAAK;aAAqB,KAAK,EAAE,SAAS;;aAC1C,KAAK;aAAuB,KAAK,EAAE,SAAS;EACtC,CAAC;AAEX,eAAO,MAAM,UAAU;aACrB,IAAI,EAAE,MAAM;aACZ,MAAM,EAAE,QAAQ;aAChB,OAAO,EAAE,aAAa;aACtB,GAAG,EAAE,SAAS;aACd,iBAAiB,EAAE,mBAAmB;aACtC,OAAO,EAAE,SAAS;aAClB,SAAS,EAAE,WAAW;aACtB,QAAQ,EAAE,UAAU;aACpB,OAAO,EAAE,IAAI;aACb,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,OAAO,EAAE,SAAS;aAClB,WAAW,EAAE,aAAa;CAClB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;wBAKV,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;;;;;;wBAOlB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;;;;;;wBAOd,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;;;;;wBAOjB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;;;;;;wBAOlB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;;;;;wBAOjB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;;;;;wBAOjB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;;;;;wBAOjB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;;;;;wBAOjB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;;;;;;wBAOd,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;;;;;wBAOjB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;;;;;;wBAOlB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;;;;;;wBAOhB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;;IAG/B,CAAC;AAEF,eAAO,MAAM,qBAAqB;aAC9B,KAAK,EAAE,KAAK;aAAE,KAAK,EAAE,KAAK;;aAC1B,KAAK,EAAE,SAAS;aAAE,KAAK,EAAE,aAAa;;aACtC,KAAK,EAAE,SAAS;aAAE,KAAK,EAAE,aAAa;;aACtC,KAAK,EAAE,QAAQ;aAAE,KAAK,EAAE,aAAa;;aACrC,KAAK,EAAE,WAAW;aAAE,KAAK,EAAE,YAAY;;aACvC,KAAK,EAAE,QAAQ;aAAE,KAAK,EAAE,QAAQ;EAC1B,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;aAAK,GAAG,EAAE,cAAc;aAAE,KAAK,EAAE,eAAe;CAAW,CAAC;AAE7F,oFAAoF;AACpF,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAA+B,CAAC;AAEpF,eAAO,MAAM,YAAY;;;;kBALkB,cAAc;oBAAS,eAAe;IAoChF,CAAC;AAEF,eAAO,MAAM,iBAAiB,YAC5B,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,CACD,CAAC;AAcX,eAAO,MAAM,SAAS;aACpB,KAAK;iBACH,OAAO,EAAE,GAAG;iBACZ,GAAG,EAAE,GAAG;iBACR,GAAG,EAAE,GAAG;;aAEV,eAAe,EAAE,GAAG;aACpB,UAAU,EAAE,EAAE;aACd,oBAAoB,EAAE,GAAG;CACjB,CAAC;AAEX,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAEvD,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,MAAM,CAAC;AAE/C,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,EAAE,KAAK,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,mBAAkD,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/OffsetWellPickerV5/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"@babel/runtime/helpers/toConsumableArray";import{sortBy as t}from"lodash";import"../UserMention/utils/index.js";import"@babel/runtime/helpers/defineProperty";import"../../utils/convert.js";import"../../constants/completion.js";import"moment";import"../../constants/alerts.js";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/regenerator";import"../../utils/casing/validation.js";import"@babel/runtime/helpers/slicedToArray";import"lodash/mean";import"../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"query-string";import"../../constants/goals.js";import"../../constants/segment.js";import"../../constants/apps.js";import"../../constants/drillstring.js";import"../../constants/appPackages.js";import"../../constants/notifications.js";import"../../constants/feed.js";import"../../constants/bha.js";import"../../constants/corvaCompanyId.js";import"../GradientManager/configuration/constants.js";import"../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"lodash/isNumber";import"lodash/has";import"../../utils/ga.js";import"../../utils/goalsConfig/goalsConfig.js";import"../../utils/lasParser.js";import"../../utils/main.js";import*as
|
|
1
|
+
import e from"@babel/runtime/helpers/toConsumableArray";import{sortBy as t}from"lodash";import"../UserMention/utils/index.js";import"@babel/runtime/helpers/defineProperty";import"../../utils/convert.js";import"../../constants/completion.js";import"moment";import"../../constants/alerts.js";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/regenerator";import"../../utils/casing/validation.js";import"@babel/runtime/helpers/slicedToArray";import"lodash/mean";import"../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"query-string";import"../../constants/goals.js";import"../../constants/segment.js";import"../../constants/apps.js";import"../../constants/drillstring.js";import"../../constants/appPackages.js";import"../../constants/notifications.js";import"../../constants/feed.js";import"../../constants/bha.js";import"../../constants/corvaCompanyId.js";import"../GradientManager/configuration/constants.js";import"../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"lodash/isNumber";import"lodash/has";import"../../utils/ga.js";import"../../utils/goalsConfig/goalsConfig.js";import"../../utils/lasParser.js";import"../../utils/main.js";import*as a from"../../utils/metrics/metricsConfig.js";import"../../utils/mobileDetect.js";import"../../utils/feed.js";import"../../utils/reports.js";import"moment-timezone";import"@babel/runtime/helpers/typeof";import"../../utils/dashboardReports.js";import"../../utils/env.js";import"file-extension";import"image-extensions";import"video-extensions";import"../../utils/jsonaDataFormatter.js";import"../../utils/bha.js";import"jsona";import"../../clients/jsonApi/index.js";import"@babel/runtime/helpers/objectWithoutProperties";import"classnames";import"../../utils/charts/Styles.scss.js";import"../../utils/getSingleAsset.js";var i=25,l=40,s="all",o="All",n=450,r=50,m=5,p=1e4,c=["xto"],d=a,u=[d.mud_type.key],g={status:"status",company:"companyId",rig:"rigName",program:"programName",basin:"basin",county:"county",area:"area",formation:"formation",stringDesign:"stringDesign",interventionAsset:"interventionAsset",padName:"padName",radius:"radius",period:"period",sideTracks:"sideTracks",drillingWells:"drillingWells",activeInterventionWells:"activeInterventionWells",timeRangeFrom:"timeRangeFrom",timeRangeTo:"timeRangeTo"},b=[{value:g.company,label:"Company"},{value:g.program,label:"Program/BU"},{value:g.rig,label:"Rig"},{value:g.basin,label:"Basin"},{value:g.county,label:"County"},{value:g.area,label:"Area"},{value:g.formation,label:"Target Formation"},{value:g.stringDesign,label:"String Design"},{value:g.interventionAsset,label:"Intervention Asset"},{value:g.padName,label:"Pad"},{value:g.status,label:"Status"}],y={unknown:"unknown",idle:"idle",active:"active",paused:"paused",complete:"complete"},v=[{value:y.unknown,color:"#FFFFFF"},{value:y.idle,color:"#ADADFF"},{value:y.active,color:"#A8FF3D"},{value:y.paused,color:"#FFF66C"},{value:y.complete,color:"#76C2FF"}],h={name:"name",status:"status",company:"companyName",rig:"rigName",interventionAsset:"interventionAsset",padName:"padName",formation:"formation",distance:"distance",taScore:"TA",lastDrillingAt:"lastDrillingAt",lastInterventionAt:"lastInterventionAt",metrics:"metrics",wellSection:"wellSection"},f=[{type:h.name,label:"Well Name",key:h.name,minWidth:[280,197,197,186],flex:3},{type:h.status,label:"",key:h.status,minWidth:[40,40,40,30],flex:0},{type:h.company,label:"Company",key:h.company,minWidth:[180,140,140,93],flex:2},{type:h.interventionAsset,label:"Intervention Asset",key:h.interventionAsset,minWidth:[200,150,150,100],flex:2},{type:h.padName,label:"Pad",key:h.padName,minWidth:[160,130,130,90],flex:1.5},{type:h.formation,label:"Formation",key:h.formation,minWidth:[160,130,130,90],flex:1.5},{type:h.rig,label:"Rig",key:h.rig,minWidth:[220,140,140,93],flex:2},{type:h.distance,label:"Distance",key:h.distance,minWidth:[160,160,122,93],flex:1},{type:h.taScore,label:"TA",key:h.taScore,minWidth:[90,90,75,70],flex:1},{type:h.lastDrillingAt,label:"Date",key:h.lastDrillingAt,minWidth:[140,140,108,98],flex:1.5},{type:h.lastInterventionAt,label:"Last Intervention At",key:h.lastInterventionAt,minWidth:[180,160,128,108],flex:1.5},{type:h.metrics,label:"",key:"",minWidth:[0,212,141,141],flex:2},{type:h.wellSection,label:"Well Section",key:h.wellSection,minWidth:[180,131,131,97],flex:1.5}],_=[{value:"all",label:"All"},{value:"last12h",label:"Last 12 hrs"},{value:"last24h",label:"Last 24 hrs"},{value:"last7d",label:"Last 7 days"},{value:"lastMonth",label:"Last Month"},{value:"last6Months",label:"Last 6 months"},{value:"yearToDate",label:"Year to Date"},{value:"last1Year",label:"Last 1 Year"},{value:"custom",label:"Custom"}],A=5,j={key:"stringDesign",label:"String Design"},F=[j.key],D=t([j,d.hole_depth,d.hole_depth_change,d.hole_depth_change_lateral,d.drilled_feet_rotary,d.drilled_feet_slide,d.rop_gross,d.rop,d.rop_rotary,d.rop_slide,d.drilled_feet_rotary_percentage,d.drilled_feet_slide_percentage,d.on_bottom_percentage,d.cost_per_ft,d.cost_per_lat_ft,d.feet_per_day,d.target_formation,d.mud_type,d.total_time].concat(e("production"!==process.env.REACT_APP_ENVIRONMENT?[d.npt,d.circulating_time,d.spud_to_rig_release_time,d.spud_to_total_depth_time]:[])),"label"),k=["#6EACFF","#69B919","#E95DAF","#A77DFF","#77FFC1","#018EFE","#FF5D7E","#B9E310","#FFD111","#24BB8E","#C426F3"],x={width:{default:600,min:314,max:900},minContentWidth:400,columnsGap:16,hintsStashBreakpoint:480},W={ASC:"ASC",DESC:"DESC"};export{s as ALL_SECTION_KEY,o as ALL_SECTION_LABEL,c as COMPANY_PROVIDERS_FOR_IDAS,h as ColumnType,l as DEFAULT_RADIUS_KM,i as DEFAULT_RADIUS_MILES,n as EXPANDED_WELL_NAME_WIDTH,b as FilterOptions,g as FilterType,m as H_SCROLL_THRESHOLD,p as LEAVE_TOUCH_DELAY,A as MAX_MANUAL_METRICS_COUNT,D as METRICS_LIST,x as MapLayout,u as NonConvertableMetrics,_ as OBJECTIVE_PERIOD_LIST,r as ROWS_PER_PAGE,j as STRING_DESIGN_METRIC,W as SortDirection,v as StatusOptions,f as TableColumns,F as WELL_ATTRIBUTE_METRICS,k as WellSectionColors,y as WellStatus};
|
|
2
2
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../src/components/OffsetWellPickerV5/constants.ts"],"sourcesContent":["import { sortBy } from 'lodash';\n\nimport { metricsUtils } from '~/utils';\n\nexport const DEFAULT_RADIUS_MILES = 25;\nexport const DEFAULT_RADIUS_KM = 40;\n\nexport const ALL_SECTION_KEY = 'all';\nexport const ALL_SECTION_LABEL = 'All';\nexport const EXPANDED_WELL_NAME_WIDTH = 450;\nexport const ROWS_PER_PAGE = 50;\n// Horizontal scroll (px) past which the sticky well-name column casts its shadow.\nexport const H_SCROLL_THRESHOLD = 5;\nexport const LEAVE_TOUCH_DELAY = 10000;\nexport const COMPANY_PROVIDERS_FOR_IDAS = ['xto'] as const;\nconst metrics = metricsUtils.default;\n\nexport const NonConvertableMetrics = [metrics.mud_type.key] as const;\n\nexport const FilterType = {\n status: 'status',\n company: 'companyId',\n rig: 'rigName',\n program: 'programName',\n basin: 'basin',\n county: 'county',\n area: 'area',\n formation: 'formation',\n stringDesign: 'stringDesign',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n radius: 'radius',\n period: 'period',\n sideTracks: 'sideTracks',\n drillingWells: 'drillingWells',\n activeInterventionWells: 'activeInterventionWells',\n timeRangeFrom: 'timeRangeFrom',\n timeRangeTo: 'timeRangeTo',\n} as const;\n\nexport const FilterOptions = [\n {\n value: FilterType.company,\n label: 'Company',\n },\n {\n value: FilterType.program,\n label: 'Program/BU',\n },\n {\n value: FilterType.rig,\n label: 'Rig',\n },\n {\n value: FilterType.basin,\n label: 'Basin',\n },\n {\n value: FilterType.county,\n label: 'County',\n },\n {\n value: FilterType.area,\n label: 'Area',\n },\n {\n value: FilterType.formation,\n label: 'Target Formation',\n },\n {\n value: FilterType.stringDesign,\n label: 'String Design',\n },\n {\n value: FilterType.interventionAsset,\n label: 'Intervention Asset',\n },\n {\n value: FilterType.padName,\n label: 'Pad',\n },\n {\n value: FilterType.status,\n label: 'Status',\n },\n] as const;\n\nexport const WellStatus = {\n unknown: 'unknown',\n idle: 'idle',\n active: 'active',\n paused: 'paused',\n complete: 'complete',\n} as const;\n\nexport const StatusOptions = [\n { value: WellStatus.unknown, color: '#FFFFFF' },\n { value: WellStatus.idle, color: '#ADADFF' },\n { value: WellStatus.active, color: '#A8FF3D' },\n { value: WellStatus.paused, color: '#FFF66C' },\n { value: WellStatus.complete, color: '#76C2FF' },\n] as const;\n\nexport const ColumnType = {\n name: 'name',\n status: 'status',\n company: 'companyName',\n rig: 'rigName',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n formation: 'formation',\n distance: 'distance',\n taScore: 'TA',\n lastDrillingAt: 'lastDrillingAt',\n lastInterventionAt: 'lastInterventionAt',\n metrics: 'metrics',\n wellSection: 'wellSection',\n} as const;\n\nexport const TableColumns = [\n {\n type: ColumnType.name,\n label: 'Well Name',\n key: ColumnType.name,\n minWidth: [280, 197, 197, 186] as const,\n flex: 3,\n },\n {\n type: ColumnType.status,\n label: '',\n key: ColumnType.status,\n minWidth: [40, 40, 40, 30] as const,\n flex: 0,\n },\n {\n type: ColumnType.company,\n label: 'Company',\n key: ColumnType.company,\n minWidth: [180, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.interventionAsset,\n label: 'Intervention Asset',\n key: ColumnType.interventionAsset,\n minWidth: [200, 150, 150, 100] as const,\n flex: 2,\n },\n {\n type: ColumnType.padName,\n label: 'Pad',\n key: ColumnType.padName,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.formation,\n label: 'Formation',\n key: ColumnType.formation,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.rig,\n label: 'Rig',\n key: ColumnType.rig,\n minWidth: [220, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.distance,\n label: 'Distance',\n key: ColumnType.distance,\n minWidth: [160, 160, 122, 93] as const,\n flex: 1,\n },\n {\n type: ColumnType.taScore,\n label: 'TA',\n key: ColumnType.taScore,\n minWidth: [90, 90, 75, 70] as const,\n flex: 1,\n },\n {\n type: ColumnType.lastDrillingAt,\n label: 'Date',\n key: ColumnType.lastDrillingAt,\n minWidth: [140, 140, 108, 98] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.lastInterventionAt,\n label: 'Last Intervention At',\n key: ColumnType.lastInterventionAt,\n minWidth: [180, 160, 128, 108] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.metrics,\n label: '',\n key: '',\n minWidth: [0, 212, 141, 141] as const,\n flex: 2,\n },\n {\n type: ColumnType.wellSection,\n label: 'Well Section',\n key: ColumnType.wellSection,\n minWidth: [180, 131, 131, 97] as const,\n flex: 1.5,\n },\n];\n\nexport const OBJECTIVE_PERIOD_LIST = [\n { value: 'all', label: 'All' },\n { value: 'last12h', label: 'Last 12 hrs' },\n { value: 'last24h', label: 'Last 24 hrs' },\n { value: 'last7d', label: 'Last 7 days' },\n { value: 'lastMonth', label: 'Last Month' },\n { value: 'custom', label: 'Custom' },\n] as const;\n\n/**\n * Max metrics a user can manually pick in the Settings checklist.\n * Excludes the segment's always-present default metric, so the total number of\n * metric columns is `MAX_MANUAL_METRICS_COUNT + 1` when a default exists.\n */\nexport const MAX_MANUAL_METRICS_COUNT = 5;\n\n/**\n * Pseudo-metric: selectable, capped and rendered like a metric, but its value is the well's\n * `stringDesign` attribute, not a `corva/metrics` record. Kept local so the shared metrics\n * config stays a list of real metrics.\n */\nexport const STRING_DESIGN_METRIC = { key: 'stringDesign', label: 'String Design' } as const;\n\n/** Metric keys read from well attributes — never requested from the metrics API. */\nexport const WELL_ATTRIBUTE_METRICS: readonly string[] = [STRING_DESIGN_METRIC.key];\n\nexport const METRICS_LIST = sortBy(\n [\n STRING_DESIGN_METRIC,\n metrics.hole_depth,\n metrics.hole_depth_change,\n metrics.hole_depth_change_lateral,\n metrics.drilled_feet_rotary,\n metrics.drilled_feet_slide,\n metrics.rop_gross,\n metrics.rop,\n metrics.rop_rotary,\n metrics.rop_slide,\n metrics.drilled_feet_rotary_percentage,\n metrics.drilled_feet_slide_percentage,\n metrics.on_bottom_percentage,\n metrics.cost_per_ft,\n metrics.cost_per_lat_ft,\n metrics.feet_per_day,\n metrics.target_formation,\n metrics.mud_type,\n metrics.total_time,\n ...(process.env.REACT_APP_ENVIRONMENT !== 'production'\n ? [\n metrics.npt,\n metrics.circulating_time,\n metrics.spud_to_rig_release_time,\n metrics.spud_to_total_depth_time,\n ]\n : []),\n ],\n 'label'\n);\n\nexport const WellSectionColors = [\n '#6EACFF',\n '#69B919',\n '#E95DAF',\n '#A77DFF',\n '#77FFC1',\n '#018EFE',\n '#FF5D7E',\n '#B9E310',\n '#FFD111',\n '#24BB8E',\n '#C426F3',\n] as const;\n\n// --- Resizable map ---\n// Layout for the draggable map/content split (px). Width bounds are configurable; tune\n// min/max on large monitors. `mapWidth` is persisted per user (see view-store /\n// user-settings-store).\n//\n// `minContentWidth` and `columnsGap` mirror values authored in\n// `OffsetWellPickerV5.module.css` (`.rightColumn { min-width: 400px }` and\n// `.columnsContainer { gap: 16px }`); they exist here only for the effective-max clamp\n// math and must stay in sync with the CSS. `hintsStashBreakpoint` is the map width at/below\n// which the top-right hints collapse into an icon + dropdown stash — but only while the top-left\n// radius input is also visible (they compete for the same horizontal band). With the radius input\n// hidden the hints stay expanded down to the map's min width.\nexport const MapLayout = {\n width: {\n default: 600,\n min: 314,\n max: 900, // ~1.5× default — largest the map should grow on a big modal\n },\n minContentWidth: 400,\n columnsGap: 16,\n hintsStashBreakpoint: 480,\n} as const;\n\nexport const DEFAULT_METRICS_KEY = 'hole_depth_change';\n\nexport type SortDirectionType = 'ASC' | 'DESC';\n\nexport type SortDirectionStatic = {\n ASC: 'ASC';\n DESC: 'DESC';\n};\n\nexport const SortDirection: SortDirectionStatic = { ASC: 'ASC', DESC: 'DESC' };\n"],"names":["DEFAULT_RADIUS_MILES","DEFAULT_RADIUS_KM","ALL_SECTION_KEY","ALL_SECTION_LABEL","EXPANDED_WELL_NAME_WIDTH","ROWS_PER_PAGE","H_SCROLL_THRESHOLD","LEAVE_TOUCH_DELAY","COMPANY_PROVIDERS_FOR_IDAS","metrics","metricsUtils","NonConvertableMetrics","mud_type","key","FilterType","status","company","rig","program","basin","county","area","formation","stringDesign","interventionAsset","padName","radius","period","sideTracks","drillingWells","activeInterventionWells","timeRangeFrom","timeRangeTo","FilterOptions","value","label","WellStatus","unknown","idle","active","paused","complete","StatusOptions","color","ColumnType","name","distance","taScore","lastDrillingAt","lastInterventionAt","wellSection","TableColumns","type","minWidth","flex","OBJECTIVE_PERIOD_LIST","MAX_MANUAL_METRICS_COUNT","STRING_DESIGN_METRIC","WELL_ATTRIBUTE_METRICS","METRICS_LIST","sortBy","hole_depth","hole_depth_change","hole_depth_change_lateral","drilled_feet_rotary","drilled_feet_slide","rop_gross","rop","rop_rotary","rop_slide","drilled_feet_rotary_percentage","drilled_feet_slide_percentage","on_bottom_percentage","cost_per_ft","cost_per_lat_ft","feet_per_day","target_formation","total_time","process","env","REACT_APP_ENVIRONMENT","npt","circulating_time","spud_to_rig_release_time","spud_to_total_depth_time","WellSectionColors","MapLayout","width","default","min","max","minContentWidth","columnsGap","hintsStashBreakpoint","SortDirection","ASC","DESC"],"mappings":"+zDAIO,IAAMA,EAAuB,GACvBC,EAAoB,GAEpBC,EAAkB,MAClBC,EAAoB,MACpBC,EAA2B,IAC3BC,EAAgB,GAEhBC,EAAqB,EACrBC,EAAoB,IACpBC,EAA6B,CAAC,OACrCC,EAAUC,EAEHC,EAAwB,CAACF,EAAQG,SAASC,KAE1CC,EAAa,CACxBC,OAAQ,SACRC,QAAS,YACTC,IAAK,UACLC,QAAS,cACTC,MAAO,QACPC,OAAQ,SACRC,KAAM,OACNC,UAAW,YACXC,aAAc,eACdC,kBAAmB,oBACnBC,QAAS,UACTC,OAAQ,SACRC,OAAQ,SACRC,WAAY,aACZC,cAAe,gBACfC,wBAAyB,0BACzBC,cAAe,gBACfC,YAAa,eAGFC,EAAgB,CAC3B,CACEC,MAAOpB,EAAWE,QAClBmB,MAAO,WAET,CACED,MAAOpB,EAAWI,QAClBiB,MAAO,cAET,CACED,MAAOpB,EAAWG,IAClBkB,MAAO,OAET,CACED,MAAOpB,EAAWK,MAClBgB,MAAO,SAET,CACED,MAAOpB,EAAWM,OAClBe,MAAO,UAET,CACED,MAAOpB,EAAWO,KAClBc,MAAO,QAET,CACED,MAAOpB,EAAWQ,UAClBa,MAAO,oBAET,CACED,MAAOpB,EAAWS,aAClBY,MAAO,iBAET,CACED,MAAOpB,EAAWU,kBAClBW,MAAO,sBAET,CACED,MAAOpB,EAAWW,QAClBU,MAAO,OAET,CACED,MAAOpB,EAAWC,OAClBoB,MAAO,WAIEC,EAAa,CACxBC,QAAS,UACTC,KAAM,OACNC,OAAQ,SACRC,OAAQ,SACRC,SAAU,YAGCC,EAAgB,CAC3B,CAAER,MAAOE,EAAWC,QAASM,MAAO,WACpC,CAAET,MAAOE,EAAWE,KAAMK,MAAO,WACjC,CAAET,MAAOE,EAAWG,OAAQI,MAAO,WACnC,CAAET,MAAOE,EAAWI,OAAQG,MAAO,WACnC,CAAET,MAAOE,EAAWK,SAAUE,MAAO,YAG1BC,EAAa,CACxBC,KAAM,OACN9B,OAAQ,SACRC,QAAS,cACTC,IAAK,UACLO,kBAAmB,oBACnBC,QAAS,UACTH,UAAW,YACXwB,SAAU,WACVC,QAAS,KACTC,eAAgB,iBAChBC,mBAAoB,qBACpBxC,QAAS,UACTyC,YAAa,eAGFC,EAAe,CAC1B,CACEC,KAAMR,EAAWC,KACjBV,MAAO,YACPtB,IAAK+B,EAAWC,KAChBQ,SAAU,CAAC,IAAK,IAAK,IAAK,KAC1BC,KAAM,GAER,CACEF,KAAMR,EAAW7B,OACjBoB,MAAO,GACPtB,IAAK+B,EAAW7B,OAChBsC,SAAU,CAAC,GAAI,GAAI,GAAI,IACvBC,KAAM,GAER,CACEF,KAAMR,EAAW5B,QACjBmB,MAAO,UACPtB,IAAK+B,EAAW5B,QAChBqC,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,GAER,CACEF,KAAMR,EAAWpB,kBACjBW,MAAO,qBACPtB,IAAK+B,EAAWpB,kBAChB6B,SAAU,CAAC,IAAK,IAAK,IAAK,KAC1BC,KAAM,GAER,CACEF,KAAMR,EAAWnB,QACjBU,MAAO,MACPtB,IAAK+B,EAAWnB,QAChB4B,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,KAER,CACEF,KAAMR,EAAWtB,UACjBa,MAAO,YACPtB,IAAK+B,EAAWtB,UAChB+B,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,KAER,CACEF,KAAMR,EAAW3B,IACjBkB,MAAO,MACPtB,IAAK+B,EAAW3B,IAChBoC,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,GAER,CACEF,KAAMR,EAAWE,SACjBX,MAAO,WACPtB,IAAK+B,EAAWE,SAChBO,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,GAER,CACEF,KAAMR,EAAWG,QACjBZ,MAAO,KACPtB,IAAK+B,EAAWG,QAChBM,SAAU,CAAC,GAAI,GAAI,GAAI,IACvBC,KAAM,GAER,CACEF,KAAMR,EAAWI,eACjBb,MAAO,OACPtB,IAAK+B,EAAWI,eAChBK,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,KAER,CACEF,KAAMR,EAAWK,mBACjBd,MAAO,uBACPtB,IAAK+B,EAAWK,mBAChBI,SAAU,CAAC,IAAK,IAAK,IAAK,KAC1BC,KAAM,KAER,CACEF,KAAMR,EAAWnC,QACjB0B,MAAO,GACPtB,IAAK,GACLwC,SAAU,CAAC,EAAG,IAAK,IAAK,KACxBC,KAAM,GAER,CACEF,KAAMR,EAAWM,YACjBf,MAAO,eACPtB,IAAK+B,EAAWM,YAChBG,SAAU,CAAC,IAAK,IAAK,IAAK,IAC1BC,KAAM,MAIGC,EAAwB,CACnC,CAAErB,MAAO,MAAOC,MAAO,OACvB,CAAED,MAAO,UAAWC,MAAO,eAC3B,CAAED,MAAO,UAAWC,MAAO,eAC3B,CAAED,MAAO,SAAUC,MAAO,eAC1B,CAAED,MAAO,YAAaC,MAAO,cAC7B,CAAED,MAAO,SAAUC,MAAO,WAQfqB,EAA2B,EAO3BC,EAAuB,CAAE5C,IAAK,eAAgBsB,MAAO,iBAGrDuB,EAA4C,CAACD,EAAqB5C,KAElE8C,EAAeC,EAAM,CAE9BH,EACAhD,EAAQoD,WACRpD,EAAQqD,kBACRrD,EAAQsD,0BACRtD,EAAQuD,oBACRvD,EAAQwD,mBACRxD,EAAQyD,UACRzD,EAAQ0D,IACR1D,EAAQ2D,WACR3D,EAAQ4D,UACR5D,EAAQ6D,+BACR7D,EAAQ8D,8BACR9D,EAAQ+D,qBACR/D,EAAQgE,YACRhE,EAAQiE,gBACRjE,EAAQkE,aACRlE,EAAQmE,iBACRnE,EAAQG,SACRH,EAAQoE,YACJC,OAAAA,EAAsC,eAAtCA,QAAQC,IAAIC,sBACZ,CACEvE,EAAQwE,IACRxE,EAAQyE,iBACRzE,EAAQ0E,yBACR1E,EAAQ2E,0BAEV,KAEN,SAGWC,EAAoB,CAC/B,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WAeWC,EAAY,CACvBC,MAAO,CACLC,QAAS,IACTC,IAAK,IACLC,IAAK,KAEPC,gBAAiB,IACjBC,WAAY,GACZC,qBAAsB,KAYXC,EAAqC,CAAEC,IAAK,MAAOC,KAAM"}
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../src/components/OffsetWellPickerV5/constants.ts"],"sourcesContent":["import { sortBy } from 'lodash';\n\nimport { metricsUtils } from '~/utils';\n\nexport const DEFAULT_RADIUS_MILES = 25;\nexport const DEFAULT_RADIUS_KM = 40;\n\nexport const ALL_SECTION_KEY = 'all';\nexport const ALL_SECTION_LABEL = 'All';\nexport const EXPANDED_WELL_NAME_WIDTH = 450;\nexport const ROWS_PER_PAGE = 50;\n// Horizontal scroll (px) past which the sticky well-name column casts its shadow.\nexport const H_SCROLL_THRESHOLD = 5;\nexport const LEAVE_TOUCH_DELAY = 10000;\nexport const COMPANY_PROVIDERS_FOR_IDAS = ['xto'] as const;\nconst metrics = metricsUtils.default;\n\nexport const NonConvertableMetrics = [metrics.mud_type.key] as const;\n\nexport const FilterType = {\n status: 'status',\n company: 'companyId',\n rig: 'rigName',\n program: 'programName',\n basin: 'basin',\n county: 'county',\n area: 'area',\n formation: 'formation',\n stringDesign: 'stringDesign',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n radius: 'radius',\n period: 'period',\n sideTracks: 'sideTracks',\n drillingWells: 'drillingWells',\n activeInterventionWells: 'activeInterventionWells',\n timeRangeFrom: 'timeRangeFrom',\n timeRangeTo: 'timeRangeTo',\n} as const;\n\nexport const FilterOptions = [\n {\n value: FilterType.company,\n label: 'Company',\n },\n {\n value: FilterType.program,\n label: 'Program/BU',\n },\n {\n value: FilterType.rig,\n label: 'Rig',\n },\n {\n value: FilterType.basin,\n label: 'Basin',\n },\n {\n value: FilterType.county,\n label: 'County',\n },\n {\n value: FilterType.area,\n label: 'Area',\n },\n {\n value: FilterType.formation,\n label: 'Target Formation',\n },\n {\n value: FilterType.stringDesign,\n label: 'String Design',\n },\n {\n value: FilterType.interventionAsset,\n label: 'Intervention Asset',\n },\n {\n value: FilterType.padName,\n label: 'Pad',\n },\n {\n value: FilterType.status,\n label: 'Status',\n },\n] as const;\n\nexport const WellStatus = {\n unknown: 'unknown',\n idle: 'idle',\n active: 'active',\n paused: 'paused',\n complete: 'complete',\n} as const;\n\nexport const StatusOptions = [\n { value: WellStatus.unknown, color: '#FFFFFF' },\n { value: WellStatus.idle, color: '#ADADFF' },\n { value: WellStatus.active, color: '#A8FF3D' },\n { value: WellStatus.paused, color: '#FFF66C' },\n { value: WellStatus.complete, color: '#76C2FF' },\n] as const;\n\nexport const ColumnType = {\n name: 'name',\n status: 'status',\n company: 'companyName',\n rig: 'rigName',\n interventionAsset: 'interventionAsset',\n padName: 'padName',\n formation: 'formation',\n distance: 'distance',\n taScore: 'TA',\n lastDrillingAt: 'lastDrillingAt',\n lastInterventionAt: 'lastInterventionAt',\n metrics: 'metrics',\n wellSection: 'wellSection',\n} as const;\n\nexport const TableColumns = [\n {\n type: ColumnType.name,\n label: 'Well Name',\n key: ColumnType.name,\n minWidth: [280, 197, 197, 186] as const,\n flex: 3,\n },\n {\n type: ColumnType.status,\n label: '',\n key: ColumnType.status,\n minWidth: [40, 40, 40, 30] as const,\n flex: 0,\n },\n {\n type: ColumnType.company,\n label: 'Company',\n key: ColumnType.company,\n minWidth: [180, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.interventionAsset,\n label: 'Intervention Asset',\n key: ColumnType.interventionAsset,\n minWidth: [200, 150, 150, 100] as const,\n flex: 2,\n },\n {\n type: ColumnType.padName,\n label: 'Pad',\n key: ColumnType.padName,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.formation,\n label: 'Formation',\n key: ColumnType.formation,\n minWidth: [160, 130, 130, 90] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.rig,\n label: 'Rig',\n key: ColumnType.rig,\n minWidth: [220, 140, 140, 93] as const,\n flex: 2,\n },\n {\n type: ColumnType.distance,\n label: 'Distance',\n key: ColumnType.distance,\n minWidth: [160, 160, 122, 93] as const,\n flex: 1,\n },\n {\n type: ColumnType.taScore,\n label: 'TA',\n key: ColumnType.taScore,\n minWidth: [90, 90, 75, 70] as const,\n flex: 1,\n },\n {\n type: ColumnType.lastDrillingAt,\n label: 'Date',\n key: ColumnType.lastDrillingAt,\n minWidth: [140, 140, 108, 98] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.lastInterventionAt,\n label: 'Last Intervention At',\n key: ColumnType.lastInterventionAt,\n minWidth: [180, 160, 128, 108] as const,\n flex: 1.5,\n },\n {\n type: ColumnType.metrics,\n label: '',\n key: '',\n minWidth: [0, 212, 141, 141] as const,\n flex: 2,\n },\n {\n type: ColumnType.wellSection,\n label: 'Well Section',\n key: ColumnType.wellSection,\n minWidth: [180, 131, 131, 97] as const,\n flex: 1.5,\n },\n];\n\nexport const OBJECTIVE_PERIOD_LIST = [\n { value: 'all', label: 'All' },\n { value: 'last12h', label: 'Last 12 hrs' },\n { value: 'last24h', label: 'Last 24 hrs' },\n { value: 'last7d', label: 'Last 7 days' },\n { value: 'lastMonth', label: 'Last Month' },\n { value: 'last6Months', label: 'Last 6 months' },\n { value: 'yearToDate', label: 'Year to Date' },\n { value: 'last1Year', label: 'Last 1 Year' },\n { value: 'custom', label: 'Custom' },\n] as const;\n\n/**\n * Max metrics a user can manually pick in the Settings checklist.\n * Excludes the segment's always-present default metric, so the total number of\n * metric columns is `MAX_MANUAL_METRICS_COUNT + 1` when a default exists.\n */\nexport const MAX_MANUAL_METRICS_COUNT = 5;\n\n/**\n * Pseudo-metric: selectable, capped and rendered like a metric, but its value is the well's\n * `stringDesign` attribute, not a `corva/metrics` record. Kept local so the shared metrics\n * config stays a list of real metrics.\n */\nexport const STRING_DESIGN_METRIC = { key: 'stringDesign', label: 'String Design' } as const;\n\n/** Metric keys read from well attributes — never requested from the metrics API. */\nexport const WELL_ATTRIBUTE_METRICS: readonly string[] = [STRING_DESIGN_METRIC.key];\n\nexport const METRICS_LIST = sortBy(\n [\n STRING_DESIGN_METRIC,\n metrics.hole_depth,\n metrics.hole_depth_change,\n metrics.hole_depth_change_lateral,\n metrics.drilled_feet_rotary,\n metrics.drilled_feet_slide,\n metrics.rop_gross,\n metrics.rop,\n metrics.rop_rotary,\n metrics.rop_slide,\n metrics.drilled_feet_rotary_percentage,\n metrics.drilled_feet_slide_percentage,\n metrics.on_bottom_percentage,\n metrics.cost_per_ft,\n metrics.cost_per_lat_ft,\n metrics.feet_per_day,\n metrics.target_formation,\n metrics.mud_type,\n metrics.total_time,\n ...(process.env.REACT_APP_ENVIRONMENT !== 'production'\n ? [\n metrics.npt,\n metrics.circulating_time,\n metrics.spud_to_rig_release_time,\n metrics.spud_to_total_depth_time,\n ]\n : []),\n ],\n 'label'\n);\n\nexport const WellSectionColors = [\n '#6EACFF',\n '#69B919',\n '#E95DAF',\n '#A77DFF',\n '#77FFC1',\n '#018EFE',\n '#FF5D7E',\n '#B9E310',\n '#FFD111',\n '#24BB8E',\n '#C426F3',\n] as const;\n\n// --- Resizable map ---\n// Layout for the draggable map/content split (px). Width bounds are configurable; tune\n// min/max on large monitors. `mapWidth` is persisted per user (see view-store /\n// user-settings-store).\n//\n// `minContentWidth` and `columnsGap` mirror values authored in\n// `OffsetWellPickerV5.module.css` (`.rightColumn { min-width: 400px }` and\n// `.columnsContainer { gap: 16px }`); they exist here only for the effective-max clamp\n// math and must stay in sync with the CSS. `hintsStashBreakpoint` is the map width at/below\n// which the top-right hints collapse into an icon + dropdown stash — but only while the top-left\n// radius input is also visible (they compete for the same horizontal band). With the radius input\n// hidden the hints stay expanded down to the map's min width.\nexport const MapLayout = {\n width: {\n default: 600,\n min: 314,\n max: 900, // ~1.5× default — largest the map should grow on a big modal\n },\n minContentWidth: 400,\n columnsGap: 16,\n hintsStashBreakpoint: 480,\n} as const;\n\nexport const DEFAULT_METRICS_KEY = 'hole_depth_change';\n\nexport type SortDirectionType = 'ASC' | 'DESC';\n\nexport type SortDirectionStatic = {\n ASC: 'ASC';\n DESC: 'DESC';\n};\n\nexport const SortDirection: SortDirectionStatic = { ASC: 'ASC', DESC: 'DESC' };\n"],"names":["DEFAULT_RADIUS_MILES","DEFAULT_RADIUS_KM","ALL_SECTION_KEY","ALL_SECTION_LABEL","EXPANDED_WELL_NAME_WIDTH","ROWS_PER_PAGE","H_SCROLL_THRESHOLD","LEAVE_TOUCH_DELAY","COMPANY_PROVIDERS_FOR_IDAS","metrics","metricsUtils","NonConvertableMetrics","mud_type","key","FilterType","status","company","rig","program","basin","county","area","formation","stringDesign","interventionAsset","padName","radius","period","sideTracks","drillingWells","activeInterventionWells","timeRangeFrom","timeRangeTo","FilterOptions","value","label","WellStatus","unknown","idle","active","paused","complete","StatusOptions","color","ColumnType","name","distance","taScore","lastDrillingAt","lastInterventionAt","wellSection","TableColumns","type","minWidth","flex","OBJECTIVE_PERIOD_LIST","MAX_MANUAL_METRICS_COUNT","STRING_DESIGN_METRIC","WELL_ATTRIBUTE_METRICS","METRICS_LIST","sortBy","hole_depth","hole_depth_change","hole_depth_change_lateral","drilled_feet_rotary","drilled_feet_slide","rop_gross","rop","rop_rotary","rop_slide","drilled_feet_rotary_percentage","drilled_feet_slide_percentage","on_bottom_percentage","cost_per_ft","cost_per_lat_ft","feet_per_day","target_formation","total_time","process","env","REACT_APP_ENVIRONMENT","npt","circulating_time","spud_to_rig_release_time","spud_to_total_depth_time","WellSectionColors","MapLayout","width","default","min","max","minContentWidth","columnsGap","hintsStashBreakpoint","SortDirection","ASC","DESC"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { FetchedOffsetWell } from '../../api/shared/types';
|
|
2
|
+
import type { OBJECTIVE_PERIOD_LIST } from '../../constants';
|
|
2
3
|
import type { Company } from '../company-safeguard/CompanySafeguardContext';
|
|
3
|
-
export type PeriodType =
|
|
4
|
+
export type PeriodType = typeof OBJECTIVE_PERIOD_LIST[number]['value'];
|
|
4
5
|
export type SelectionMode = 'radius' | 'lasso';
|
|
5
6
|
export type FilterMutationSource = 'manual_ui' | 'system' | 'external_sync';
|
|
6
7
|
/** Mirrors `PickerSegment` in OffsetWellPickerV5.types (kept here to avoid circular imports). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8CAA8C,CAAC;AAE5E,MAAM,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"sourcesContent":["import type { FetchedOffsetWell } from '../../api/shared/types';\nimport type { Company } from '../company-safeguard/CompanySafeguardContext';\n\nexport type PeriodType =
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../../src/components/OffsetWellPickerV5/stores/filter-store/types.ts"],"sourcesContent":["import type { FetchedOffsetWell } from '../../api/shared/types';\nimport type { OBJECTIVE_PERIOD_LIST } from '../../constants';\nimport type { Company } from '../company-safeguard/CompanySafeguardContext';\n\nexport type PeriodType = typeof OBJECTIVE_PERIOD_LIST[number]['value'];\n\nexport type SelectionMode = 'radius' | 'lasso';\nexport type FilterMutationSource = 'manual_ui' | 'system' | 'external_sync';\n\n/** Mirrors `PickerSegment` in OffsetWellPickerV5.types (kept here to avoid circular imports). */\nexport type PickerSegmentId = 'drilling' | 'intervention';\n\nexport type PolygonCoord = {\n latitude: number;\n longitude: number;\n};\n\nexport type FilterState = {\n status?: string[];\n companyId?: number[];\n rigName?: string[];\n programName?: string[];\n basin?: string[];\n county?: string[];\n area?: string[];\n formation?: string[];\n stringDesign?: string[];\n interventionAsset?: string[];\n padName?: string[];\n period?: PeriodType;\n sideTracks?: boolean;\n drillingWells?: boolean;\n interventionWells?: boolean;\n activeInterventionWells?: boolean;\n timeRangeFrom?: number;\n timeRangeTo?: number;\n selectionMode?: SelectionMode;\n polygonCoords?: PolygonCoord[];\n radius?: number;\n hasUserConfirmedAllCompaniesLoadAll?: boolean;\n showHiddenWells?: boolean;\n};\n\nexport const BASE_DEFAULT_FILTERS: FilterState = {\n showHiddenWells: false,\n};\n\n/**\n * Keys representing map selection state (not filter criteria).\n * These are preserved during filter resets and excluded from default-state comparisons.\n */\nexport const SELECTION_FILTER_KEYS = ['selectionMode', 'radius', 'polygonCoords'] as const;\n\nexport type FilterStoreDataSources = {\n wells: FetchedOffsetWell[] | null;\n companies: Company[];\n canViewCompanies: boolean;\n isAllWellsLoaded: boolean;\n isLoadAllWells: boolean;\n segment: PickerSegmentId;\n};\n\nexport type FilterStore = FilterStoreDataSources & {\n filters: FilterState;\n defaultFilters: FilterState;\n tempFilters: Partial<FilterState>;\n lastFilterMutationSource: FilterMutationSource;\n filterMutationSeq: number;\n setFilter: (\n key: keyof FilterState,\n value: FilterState[keyof FilterState],\n source?: FilterMutationSource\n ) => void;\n setFilters: (filters: FilterState, source?: FilterMutationSource) => void;\n clearFilters: (source?: FilterMutationSource) => void;\n resetFilters: (source?: FilterMutationSource) => void;\n resetFilterCriteria: (source?: FilterMutationSource) => void;\n hasActiveFilters: () => boolean;\n setTempFilter: (key: keyof FilterState, value: FilterState[keyof FilterState]) => void;\n clearTempFilter: (key: keyof FilterState) => void;\n clearAllTempFilters: () => void;\n commitTempFilter: (key: keyof FilterState) => void;\n setSelectionMode: (mode: SelectionMode) => void;\n setPolygonCoords: (coords: PolygonCoord[] | undefined) => void;\n setRadius: (radius: number) => void;\n pruneAllCascades: () => void;\n};\n\nexport type FilterStoreProps = {\n filters?: FilterState;\n defaultFilters?: FilterState;\n canViewCompanies?: boolean;\n};\n\nexport type SetWithMutation = (\n updates: Partial<Pick<FilterStore, 'filters' | 'tempFilters'>>,\n source: FilterMutationSource\n) => void;\n"],"names":["BASE_DEFAULT_FILTERS","showHiddenWells","SELECTION_FILTER_KEYS"],"mappings":"AA2CO,IAAMA,EAAoC,CAC/CC,iBAAiB,GAONC,EAAwB,CAAC,gBAAiB,SAAU"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTimestampByPeriod.test.d.ts","sourceRoot":"","sources":["../../../../../src/components/OffsetWellPickerV5/utils/__tests__/getTimestampByPeriod.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolves a period option to a `[start, end]` pair of unix seconds.
|
|
3
|
+
* Returns `[null, null]` for `'all'`, `undefined`, or any unknown value.
|
|
4
|
+
*/
|
|
1
5
|
export declare const getTimestampByPeriod: (period: string | undefined, customFrom: number | undefined, customTo: number | undefined) => [number | null, number | null];
|
|
2
6
|
//# sourceMappingURL=getTimestampByPeriod.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTimestampByPeriod.d.ts","sourceRoot":"","sources":["../../../../src/components/OffsetWellPickerV5/utils/getTimestampByPeriod.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getTimestampByPeriod.d.ts","sourceRoot":"","sources":["../../../../src/components/OffsetWellPickerV5/utils/getTimestampByPeriod.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,eAAO,MAAM,oBAAoB,WACvB,MAAM,GAAG,SAAS,cACd,MAAM,GAAG,SAAS,YACpB,MAAM,GAAG,SAAS,KAC3B,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,CAY/B,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import t from"moment";var n={last12h:function(t){return t.clone().subtract(12,"hours")},last24h:function(t){return t.clone().subtract(24,"hours")},last7d:function(t){return t.clone().subtract(7,"days")},lastMonth:function(t){return t.clone().subtract(1,"month")},last6Months:function(t){return t.clone().subtract(6,"months")},yearToDate:function(t){return t.clone().startOf("year")},last1Year:function(t){return t.clone().subtract(1,"year")}},r=function(r,u,o){if("custom"===r)return[null!=u?u:null,null!=o?o:null];if(void 0!==r&&function(t){return Object.prototype.hasOwnProperty.call(n,t)}(r)){var e=t();return[n[r](e).unix(),e.unix()]}return[null,null]};export{r as getTimestampByPeriod};
|
|
2
2
|
//# sourceMappingURL=getTimestampByPeriod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTimestampByPeriod.js","sources":["../../../../src/components/OffsetWellPickerV5/utils/getTimestampByPeriod.ts"],"sourcesContent":["import moment from 'moment';\n\nimport {
|
|
1
|
+
{"version":3,"file":"getTimestampByPeriod.js","sources":["../../../../src/components/OffsetWellPickerV5/utils/getTimestampByPeriod.ts"],"sourcesContent":["import moment from 'moment';\nimport type { Moment } from 'moment';\n\nimport type { PeriodType } from '../stores/filter-store/types';\n\ntype RelativePeriod = Exclude<PeriodType, 'all' | 'custom'>;\n\n/**\n * Start-of-range resolvers for the rolling/relative period options.\n * All are computed from `now` in the effective moment timezone (the app may call\n * `moment.tz.setDefault`), so \"Year to Date\" means Jan 1 00:00 of that zone, not UTC.\n * Month/year subtraction uses moment's documented end-of-month clamping\n * (Aug 31 − 6 months → Feb 29 / Feb 28).\n */\nconst RELATIVE_PERIOD_START: Record<RelativePeriod, (now: Moment) => Moment> = {\n last12h: now => now.clone().subtract(12, 'hours'),\n last24h: now => now.clone().subtract(24, 'hours'),\n last7d: now => now.clone().subtract(7, 'days'),\n lastMonth: now => now.clone().subtract(1, 'month'),\n last6Months: now => now.clone().subtract(6, 'months'),\n yearToDate: now => now.clone().startOf('year'),\n last1Year: now => now.clone().subtract(1, 'year'),\n};\n\nconst isRelativePeriod = (period: string): period is RelativePeriod =>\n Object.prototype.hasOwnProperty.call(RELATIVE_PERIOD_START, period);\n\n/**\n * Resolves a period option to a `[start, end]` pair of unix seconds.\n * Returns `[null, null]` for `'all'`, `undefined`, or any unknown value.\n */\nexport const getTimestampByPeriod = (\n period: string | undefined,\n customFrom: number | undefined,\n customTo: number | undefined\n): [number | null, number | null] => {\n if (period === 'custom') {\n return [customFrom ?? null, customTo ?? null];\n }\n\n if (period !== undefined && isRelativePeriod(period)) {\n const now = moment();\n\n return [RELATIVE_PERIOD_START[period](now).unix(), now.unix()];\n }\n\n return [null, null];\n};\n"],"names":["RELATIVE_PERIOD_START","last12h","now","clone","subtract","last24h","last7d","lastMonth","last6Months","yearToDate","startOf","last1Year","getTimestampByPeriod","period","customFrom","customTo","undefined","Object","prototype","hasOwnProperty","call","isRelativePeriod","moment","unix"],"mappings":"sBAcA,IAAMA,EAAyE,CAC7EC,QAAS,SAAAC,GAAG,OAAIA,EAAIC,QAAQC,SAAS,GAAI,QAAQ,EACjDC,QAAS,SAAAH,GAAG,OAAIA,EAAIC,QAAQC,SAAS,GAAI,QAAQ,EACjDE,OAAQ,SAAAJ,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,OAAO,EAC9CG,UAAW,SAAAL,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,QAAQ,EAClDI,YAAa,SAAAN,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,SAAS,EACrDK,WAAY,SAAAP,GAAG,OAAIA,EAAIC,QAAQO,QAAQ,OAAO,EAC9CC,UAAW,SAAAT,GAAG,OAAIA,EAAIC,QAAQC,SAAS,EAAG,OAAO,GAUtCQ,EAAuB,SAClCC,EACAC,EACAC,GAEA,GAAe,WAAXF,EACF,MAAO,CAACC,QAAAA,EAAc,KAAMC,QAAAA,EAAY,MAG1C,QAAeC,IAAXH,GAhBmB,SAACA,GAAc,OACtCI,OAAOC,UAAUC,eAAeC,KAAKpB,EAAuBa,EAAO,CAevCQ,CAAiBR,GAAS,CACpD,IAAMX,EAAMoB,IAEZ,MAAO,CAACtB,EAAsBa,GAAQX,GAAKqB,OAAQrB,EAAIqB,OACzD,CAEA,MAAO,CAAC,KAAM,KAChB"}
|
package/mcp-server/server.mjs
CHANGED