1import{s as ht,j as a,b as yt,d as bt,c as _t,e as Bt,r as e,t as Ft,m as z,F as Pt,B as H,l as Y}from"./index-ec743896.js";import{V as P}from"./array-27f32878.js";import{M as Ct}from"./MainContainer-f9ee934d.js";import{C as St}from"./index-5106c49b.js";import{M as wt}from"./Map-bc77ccc2.js";import{B as vt,u as Et,a as Lt,b as kt,c as xt,d as Rt,e as Vt,f as Dt}from"./validation-schemas-e9cfae29.js";import{u as Gt}from"./useAssets-d4100f30.js";import{i as w,r as C,c as At}from"./BudgetList-2ab89089.js";import{g as It}from"./repair-priority.action-880cc41f.js";import{C as Ot}from"./CloudDownload-2836a576.js";import{D as Wt}from"./DoubleArrow-755a2fcd.js";import"./upperFirst-957a52b1.js";import"./_baseAssignValue-7a437873.js";import"./ContentPane-22d9e7b1.js";import"./isSymbol-0cffd913.js";import"./projectors-89580c2c.js";import"./Map-d496c183.js";import"./Basemap-ed0c857e.js";import"./loadAll-49a2a2f4.js";import"./asyncUtils-c128580c.js";import"./PortalItem-c1e0ac6b.js";import"./intl-ad646b03.js";import"./isBasemap-a44d5d0f.js";import"./writeUtils-9d1c4624.js";import"./layerUtils-e17c9ca4.js";import"./CollectionFlattener-05fbfd0e.js";import"./uuid-409b6a0c.js";import"./persistable-061755af.js";import"./MD5-715f37cd.js";import"./multiOriginJSONSupportUtils-c978f4c3.js";import"./resourceExtension-296c26fa.js";import"./PolygonCollection-12c34299.js";import"./projectionUtils-65ca48fc.js";import"./mat4f32-176526a0.js";import"./mat4-6eafcee1.js";import"./TablesMixin-b62f11eb.js";import"./MapView-dc83c12e.js";import"./Texture-12c48ff4.js";import"./Cyclical-976bf4bf.js";import"./enums-f9b09dbc.js";import"./jsonUtils-87334bc8.js";import"./typeUtils-c530565a.js";import"./workers-dcb5a3b8.js";import"./Queue-875ec290.js";import"./GraphicsCollection-ad48d5fc.js";import"./Graphic-b38a95b0.js";import"./getPopupProvider-997a7607.js";import"./fieldUtils-415e03cd.js";import"./createFeatureId-0ffcb182.js";import"./typeUtils-24903583.js";import"./SimpleMarkerSymbol-561835ce.js";import"./screenUtils-c9e101bc.js";import"./aaBoundingBox-320413aa.js";import"./DoubleArray-eaf5f7f5.js";import"./mat4f64-78ff2589.js";import"./TextSymbol-57f1eab9.js";import"./PictureMarkerSymbol-ff7b77f8.js";import"./TileInfo-3c4aa26a.js";import"./TileKey-4739c75b.js";import"./jsxFactory-f9f03aee.js";import"./sanitizerUtils-8778e332.js";import"./UpdatingHandles-2cbd8cdf.js";import"./signal-c6bff383.js";import"./HeightModelInfo-b60513ff.js";import"./timeZoneUtils-48a51224.js";import"./ReactiveMap-7d651aa2.js";import"./Query-855c25fd.js";import"./Field-545bfca1.js";import"./fieldType-d07b5726.js";import"./vec2f64-1f37f5b9.js";import"./Tile-177ac237.js";import"./TileKey-a9913e43.js";import"./arcadeUtils-ff917068.js";import"./quickselect-b7b34c34.js";import"./normalizeUtils-13dbdedd.js";import"./normalizeUtilsCommon-305fa5aa.js";import"./utils-9bb59dea.js";import"./utils-89e1adff.js";import"./Scheduler-b837355d.js";import"./vec32-cc67dc50.js";import"./unitBezier-0bb0dc5d.js";import"./definitions-c9d1325d.js";import"./imageUtils-8d625b3a.js";import"./capabilities-2af38b34.js";import"./Version-ddbf928d.js";import"./MultiOriginJSONSupport-246836df.js";import"./portalItemUtils-4c56b3f9.js";import"./TimeInfo-8d54cdd8.js";import"./jsonContext-ddf0ba97.js";import"./project-6c8d80ab.js";import"./FeatureLayer-79ecd0fd.js";import"./layerContainerType-85622d42.js";import"./FormTemplate-01f76a90.js";import"./GraphicOrigin-a72a4e38.js";import"./editsZScale-12c7c3ff.js";import"./queryZScale-e696119e.js";import"./FeatureSet-ad51495f.js";import"./APIKeyMixin-20ba90eb.js";import"./ArcGISService-50563aa3.js";import"./BlendLayer-84cae2e4.js";import"./jsonUtils-2de014a9.js";import"./parser-e8753ad4.js";import"./CustomParametersMixin-d20b69ac.js";import"./DisplayFilteredLayer-a2bc91d4.js";import"./scaleUtils-e9882cd2.js";import"./displayFilterUtils-993d6a0f.js";import"./EditBusLayer-77735735.js";import"./FeatureEffectLayer-212ab2f9.js";import"./FeatureEffect-7ad78581.js";import"./FeatureFilter-7bd8b3cb.js";import"./FeatureLayerBase-dfe08466.js";import"./OperationalLayer-3d43bee4.js";import"./ElevationInfo-5a16691b.js";import"./lengthUtils-4e4cc01a.js";import"./labelingInfo-ce3aa450.js";import"./SimpleRenderer-83319c78.js";import"./commonProperties-2cdd0fc6.js";import"./colorRamps-136740f8.js";import"./ColorStop-cd3f703c.js";import"./visualVariableUtils-183f75d9.js";import"./jsonUtils-f3c6ea51.js";import"./defaults-3796da81.js";import"./defaultsJSON-59981e75.js";import"./UniqueValueRenderer-96a58322.js";import"./diffUtils-b5347bb0.js";import"./RendererLegendOptions-dbdcb01d.js";import"./styleUtils-87f264a2.js";import"./NormalizationBinParametersMixin-a24a9dbd.js";import"./labelUtils-79d85921.js";import"./LayerFloorInfo-a36f7885.js";import"./multiLayerServiceUtils-6a7219af.js";import"./Relationship-d60583d2.js";import"./serviceCapabilitiesUtils-0fba99b1.js";import"./infoFor3D-ced56f35.js";import"./FeatureReductionLayer-a7af52f0.js";import"./FeatureReductionSelection-d1df7206.js";import"./jsonUtils-4e59d2fd.js";import"./typeUtils-3ae34b14.js";import"./ClassBreaksRenderer-5cf00f43.js";import"./LRUCache-2a3be9c8.js";import"./DictionaryScriptEvaluator-f03576f2.js";import"./FieldsIndex-d079d0d3.js";import"./UnknownTimeZone-2ef5095d.js";import"./ArcadeExpression-e90a0f92.js";import"./TimeOnly-63691752.js";import"./enum-04c2c7e8.js";
1import"./utils-cbb88351.js";import"./defaultCIMValues-eec8d472.js";import"./heatmapUtils-033db9e8.js";import"./vec42-42452832.js";import"./vec4f64-c1b9eff9.js";import"./OrderedLayer-d9ca4e54.js";import"./OrderByInfo-667ec5d4.js";import"./PortalLayer-3cac126e.js";import"./RefreshableLayer-b4814599.js";import"./ScaleRangeLayer-83c163d7.js";import"./TemporalLayer-34abb558.js";import"./TrackableLayer-56762c4d.js";import"./FeatureTemplate-9595e176.js";import"./FeatureType-3a396023.js";import"./fieldProperties-b572961f.js";import"./TitleCreator-0217e0b1.js";import"./versionUtils-8957f7d5.js";import"./styleUtils-733aded9.js";import"./popupUtils-b1359581.js";import"./TelecomNetworkElement-3b59d6f5.js";import"./NetworkElement-22c47347.js";import"./featureReductionUtils-de5589ef.js";import"./actionUtils-15bc243b.js";import"./utils-07bc5f9e.js";import"./colorUtils-e66bf786.js";import"./utils-38320973.js";import"./substitute-f2675355.js";import"./EffectView-c733d290.js";import"./ExportImageParameters-d7f469e5.js";import"./floorFilterUtils-080a7cd2.js";import"./sublayerUtils-4e5bd443.js";import"./pixelRangeUtils-085021cc.js";import"./previewSymbol3D-0dbf1634.js";import"./previewUtils-7f01cfd5.js";import"./webStyleSymbolUtils-bafff480.js";import"./devEnvironmentUtils-5c761adb.js";import"./webStyleAcceptedFormats-d576a39d.js";import"./previewCIMSymbol-588949de.js";import"./CIMSymbolHelper-e15f6174.js";import"./BidiEngine-2d6f1cc5.js";import"./labelPoint-016a877f.js";import"./OptimizedGeometry-0f89db72.js";import"./memoryEstimations-e39a3b7f.js";import"./GeometryUtils-d806ae25.js";import"./fontUtils-90230ac4.js";import"./rasterizingUtils-0a47cdf7.js";import"./Rect-ea14f53a.js";import"./BoundingBox-f89c8d18.js";import"./CIMResourceManager-4a9d152a.js";import"./OverrideHelper-568fa265.js";import"./quantizationUtils-c65f38be.js";import"./utils-959993e6.js";import"./getDefaultUnitForView-99091a63.js";import"./customElement-73e4a4a9.js";import"./dom-8f3efb43.js";import"./form-2d7a2323.js";import"./customElement-17306242.js";import"./customElement-ecde8194.js";import"./keyed-40b69bc1.js";import"./interactive-9c7788a3.js";import"./gis-map.styled-017cbec1.js";import"./UnfoldMore-281245b7.js";import"./PlayArrow-d05b9554.js";import"./mapUtils-6948efbf.js";import"./utils-525f73b3.js";import"./reports.action-9426a04f.js";import"./useUnitSystem-c7cfaf36.js";import"./index-67e56f94.js";import"./Grid-f831aa45.js";import"./DesktopDatePicker-4e3cfd56.js";import"./index-955022cb.js";import"./useThemeProps-754c8194.js";import"./Delete-9eabf4c5.js";import"./WarningDialog-7940d7ea.js";import"./Outlinedbutton-9410a6a2.js";import"./StandardButton-f872b28b.js";import"./SaveAs-9679c15c.js";import"./DoneAll-7e013e9a.js";import"./Add-fc78de74.js";import"./ChevronRight-dd59d50f.js";import"./Settings-1bbc2451.js";import"./IOSSwitch-e69f0ce2.js";import"./Switch-3a0f0de5.js";import"./SwitchBase-7904e789.js";import"./repair-method.action-d606cefd.js";import"./FormControlLabel-fded703a.js";import"./MergeType-2ae73dd8.js";import"./papaparse.min-7fd15a1e.js";import"./FileSaver.min-5b8286a3.js";import"./useMapHighlightAndSelection-140d5144.js";import"./useAssetTypeColumnsMap-c9d19e06.js";import"./TableContainer-1f93e0ad.js";import"./AddCircleOutline-3d09109f.js";import"./useChartColors-03dba7a4.js";import"./AutoAwesome-ead825b6.js";import"./AccordionSummary-15d3af13.js";import"./Collapse-e406d6f6.js";import"./ExpandMore-170f9baa.js";import"./Restore-da66423d.js";import"./Draw-b1727137.js";import"./GraphicsLayer-d73e0daa.js";import"./projectVectorToVector-ae120cb2.js";import"./projectPointToVector-f7bb0b01.js";import"./SnappingVisualizer2D-665196ce.js";import"./automaticLengthMeasurementUtils-1c901c10.js";import"./elevationInfoUtils-ea8e79fe.js";import"./quantityUtils-17e3ed7f.js";import"./spatialReferenceEllipsoidUtils-17af0946.js";import"./geodeticLengthOperator-3c54c140.js";import"./geodeticCurveType-07cde097.js";import"./geodesicUtils-b82bbf8c.js";import"./SnappingContext-889e0fc6.js";import"./PointSnappingHint-32dca9da.js";import"./plane-2f9b2bd5.js";import"./vectorStacks-c74f433c.js";import"./quatf64-216ddd5a.js";import"./rotate-aff63cbe.js";import"./curveOperationUtils-c3748f57.js";
1import"./DrawingMode-bc8a71cd.js";import"./surfaceCoordinateSystems-61cbf477.js";import"./quat-8a73ed8b.js";import"./FeatureSearch-9ec67b8f.js";import"./Save-4c13f494.js";import"./KeyboardArrowLeft-198c81ba.js";import"./RadioGroup-9232f6ef.js";import"./Radio-810bf8fe.js";import"./FormGroup-3e4c6f56.js";import"./useToggle-991514aa.js";import"./usePDFWorker-13907b3a.js";import"./TabPanel-e1a72eaf.js";import"./clsx-0839fdbe.js";import"./Tabs-a2410589.js";import"./Check-10e01cf6.js";import"./GenericList-3a5c7182.js";import"./SearchField-9b51dc08.js";import"./styles-5a79d921.js";import"./utils-900c8459.js";import"./masterTracker.service-e635d6c8.js";import"./Stepper-05f36163.js";import"./DatePicker-f3909ff4.js";import"./useMapPadding-0dfb836e.js";import"./AddCircle-2c1a7ff9.js";import"./LinearProgress-b94501ca.js";import"./ToggleButton-cc9f6e6c.js";const S={scenario_name:"",start_year:new Date().getFullYear(),duration:1,inflation:2,advanced_configuration:!1,configFilterGorups:[{...w,id:ht()}],applyManagementSection:!1,life_cycle_repair:!1,use_cbr:!1,errors:{}},Mt=()=>{const b=Gt("budgetPlan"),{loadingScenario:v,loaded:E,handleLoadScenario:J}=Et(),{showSnackbar:L}=yt(),_=bt(),{can:k}=_t(),x=Bt(p=>p.assetsManagement.assetsLoadedWithLayers),[R,c]=e.useState(S),[n,K]=e.useState(()=>{if(b.length)return Ft(b)}),[N,V]=e.useState(!1),[D,B]=e.useState(!1),[X,Z]=e.useState(!1),[tt,G]=e.useState(!1),[rt,it]=e.useState([]),[ot,et]=e.useState(null);e.useEffect(()=>{_("Budget Planner Open")},[]),e.useEffect(()=>{if(!n)return;(async()=>{try{G(!0);const i=await It(n.id);it(i);const m=i.find(d=>d.in_use===!0);m&&(et(m),c(d=>({...d,configFilterGorups:[{...d.configFilterGorups[0],repair_priority:{id:m.id,factors:m.factors}}]})))}catch(i){console.log("error",i)}finally{G(!1)}})()},[n]);const g=e.useCallback(()=>{Z(p=>!p)},[]),pt=e.useCallback((p,i)=>{c(m=>({...m,configFilterGorups:[{...m.configFilterGorups[0],filter:w.filter,ms:w.ms}],use_cbr:i,advanced_configuration:p})),g()},[g]),F=e.useCallback((p=!1)=>{c(i=>{const m={...S};return p&&(m.configFilterGorups=[{...S.configFilterGorups[0],repair_priority:i.configFilterGorups[0].repair_priority}]),m}),g()},[g]),mt=e.useCallback((p,i)=>{K(i),F()},[F]),at=async()=>{var O,W,M,j,U;const{scenario_name:p,duration:i,applyManagementSection:m,inflation:d,start_year:nt,life_cycle_repair:st,configFilterGorups:f,use_cbr:lt,advanced_configuration:ut}=R,A={asset_config_id:n==null?void 0:n.id,scenario_name:p,start_year:nt,life_cycle_repair:st,inflation:Array.from({length:i}).map(t=>d),is_management_sections:m,duration:i,use_cbr:lt};let h=!1,I={};try{await Rt.validate(A,{abortEarly:!1})}catch(t){h=!0,t instanceof P&&(I=C(t,["inflation"]))}const ct=await Promise.all(f.map(async t=>{const r={...t,errors:{}};try{await Vt.validate(t,{abortEarly:!1,context:{duration:i,advanced_configuration:ut}})}catch(o){h=!0,o instanceof P&&(r.errors=C(o,[]))}return t.type==="breakdown_by_ms"&&(r.ms=await Promise.all(t.ms.map(async o=>{const s={...o,errors:{}};try{await Dt.validate(o,{abortEarly:!1,context:{duration:i}})}catch(l){h=!0,l instanceof P&&(s.errors=C(l,[]))}return s}))),r}));if(c(t=>({...t,errors:I,configFilterGorups:ct})),!h)try{const t={...A};if(m)t.budget=f[0].budget;else if((n==null?void 0:n.type)==="Sign"){const{budget:r,filter:o,ms:s}=f[0];t.budget=r,t.initial_filter=o,t.filter=s.length?`maintenance_suggestion in ('${s.map(l=>l.name).join("','")}')`:""}else t.configuration=Y.cloneDeep(f).map(r=>(delete r.id,delete r.hasCustomBudget,delete r.errors,delete r.conflicting_with,r.type==="breakdown_by_ms"&&(r.budget=null),r.ms=r.ms.map(o=>(delete o.id,delete o.hasCustomBudget,delete o.errors,r.type==="breakdown_by_filter"&&(o.budget=null),o)),r));V(!0),await At(t),F(!0),L("We have received the configuration for executing the budget planner. We are working on it, and will notify you as soon as it is available.","success"),_("Budget Planner Execute")}catch(t){if(console.log("error",t),((W=(O=t==null?void 0:t.response)==null?void 0:O.data)==null?void 0:W.error_type)==="conflicting_filters"){const{filters:r}=(M=t==null?void 0:t.response)==null?void 0:M.data,o=r.map(s=>s.map(l=>({filter:l,groups:f.filter(u=>u.filter===l).map(u=>u.id)})));c(s=>({...s,configFilterGorups:s.configFilterGorups.map(u=>{const Q={...u},T=[];return o.forEach($=>{if(!!!$.find(({filter:y})=>y===u.filter))return;const dt=$.reduce((y,{filter:ft,groups:gt})=>(gt.forEach(q=>{q!==u.id&&y.push({id:q,filter:ft})}),y),[]);T.push(...dt)}),Q.conflicting_with=Y.uniqBy(T,"id"),Q})}))}L(`Error creating budget plan. ${((U=(j=t==null?void 0:t.response)==null?void 0:j.data)==null?void 0:U.message)||""} `,"error")}finally{V(!1)}};return k("budget_planner.view")?z(Ct,{children:[a(wt,{visible:v||E}),v||E?a(Lt,{}):a(St,{containerProps:{subHeading:"Budgets /",heading:"Budget Planner",helpUrl:"https://streetlogixsupport.zendesk.com/hc/en-us/articles/12246142268948-Budget-Planner"},initialWidth:"100%",isCollapsible:!1,isLoading:N||!x||tt,actionButtons:{compact:a(Pt,{}),default:z(e.Fragment,{children:[a(H,{variant:"outlined",startIcon:a(Ot,{}),onClick:()=>{_("Budget Planner Load Dialog"),B(!0)},disabled:!x,"aria-label":"Load a scenario",children:"Load"}
1),k("budget_planner.create")&&a(H,{variant:"contained",startIcon:a(Wt,{}),onClick:at,"aria-label":"Create a new scenario",children:"Apply"})]})},scrollable:!0,children:a(kt,{budgetEstimator:!1,assetTypes:b,selectedAssetType:n,handleChangeAssetType:mt,formValues:R,setFormValues:c,repairPriorities:rt,inUseRepairPriority:ot,resetQueryBuilder:X,handleResetBudgetDetails:pt})}),D&&a(xt,{open:D,handleClose:()=>B(!1),title:"Load Scenario",handleLoadScenario:p=>{B(!1),J(p)},load:!0})]}):null},nm=()=>a(vt,{children:a(Mt,{})});export{nm as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.