{"version":3,"sources":["webpack://jumpstart-app//tmp/build_c6045d9e/app/javascript/channels|sync|/_channel\\.js$/","webpack://jumpstart-app//tmp/build_c6045d9e/app/javascript/controllers|sync|/_controller\\.js$/","webpack://jumpstart-app/./app/javascript/channels/index.js","webpack://jumpstart-app/./app/javascript/controllers/autocomplete_controller.js","webpack://jumpstart-app/./app/javascript/controllers/braintree_controller.js","webpack://jumpstart-app/./app/javascript/controllers/carrierautocomplete_controller.js","webpack://jumpstart-app/./app/javascript/controllers/carriersaddress_controller.js","webpack://jumpstart-app/./app/javascript/controllers/checkbox_controller.js","webpack://jumpstart-app/./app/javascript/controllers/drag_controller.js","webpack://jumpstart-app/./app/javascript/controllers/fill_form_controller.js","webpack://jumpstart-app/./app/javascript/controllers/index.js","webpack://jumpstart-app/./app/javascript/controllers/infinite_scroll_controller.js","webpack://jumpstart-app/./app/javascript/controllers/loads_bulk_controller.js","webpack://jumpstart-app/./app/javascript/controllers/locationsaddress_controller.js","webpack://jumpstart-app/./app/javascript/controllers/mentions_controller.js","webpack://jumpstart-app/./app/javascript/controllers/navbar_controller.js","webpack://jumpstart-app/./app/javascript/controllers/nested_form_controller.js","webpack://jumpstart-app/./app/javascript/channels/consumer.js","webpack://jumpstart-app/./app/javascript/controllers/notifications_controller.js","webpack://jumpstart-app/./app/javascript/controllers/paypal_controller.js","webpack://jumpstart-app/./app/javascript/controllers/pricing_controller.js","webpack://jumpstart-app/./app/javascript/controllers/regionmap_controller.js","webpack://jumpstart-app/./app/javascript/controllers/search_controller.js","webpack://jumpstart-app/./app/javascript/controllers/search_topbar_controller.js","webpack://jumpstart-app/./app/javascript/controllers/statusdropdown_controller.js","webpack://jumpstart-app/./app/javascript/controllers/stopsearch_controller.js","webpack://jumpstart-app/./app/javascript/controllers/stoptypeform_controller.js","webpack://jumpstart-app/./app/javascript/controllers/stripe_controller.js","webpack://jumpstart-app/./app/javascript/controllers/switch_controller.js","webpack://jumpstart-app/./app/javascript/controllers/toggle_controller.js","webpack://jumpstart-app/./app/javascript/src/actiontext.js","webpack://jumpstart-app/./app/javascript/src/direct_uploads.js","webpack://jumpstart-app/./app/javascript/src/forms.js","webpack://jumpstart-app/./app/javascript/src/timezone.js","webpack://jumpstart-app/./app/javascript/src/tooltips.js"],"names":["webpackEmptyContext","req","e","Error","code","keys","resolve","id","module","exports","map","webpackContext","webpackContextResolve","__webpack_require__","o","Object","channels","require","forEach","source","url","this","data","get","query","callback","axios","params","then","response","connect","ac","autocomplete","fieldTarget","autoselect","hint","debounce","templates","empty","suggestion","name","on","event","dataset","context","setVal","insertData","insertDetails","hiddenFieldTarget","value","record_id","Rails","ajax","type","contentType","dataType","success","showData","modelHTML","modelTemplate","showDetailsTarget","innerHTML","model","street","city","state","zip","contact_name","phone","contact_email","contact_phone","Controller","targets","braintree","dropin","create","authorization","container","dropinTarget","paypal","flow","clientCreated","bind","error","instance","console","submit","preventDefault","requestPaymentMethod","paymentMethod","payload","addHiddenField","nonce","fire","formTarget","hiddenInput","document","createElement","setAttribute","appendChild","log","onSelectCarrier","carrier_id","target","carrierHTML","carrierTemplate","carrierTarget","carrier","handleChangeCheckbox","ev","toggleableTargets","checkboxTarget","checked","classList","remove","add","sortable","Sortable","element","group","animation","onEnd","end","item","FormData","append","newIndex","replace","initialize","fillForm","getTemplates","notesTarget","title","body","temp","btn","onclick","getElementById","buttonsTarget","application","Application","load","definitionsFromContext","register","Alert","Dropdown","Modal","Tabs","Flatpickr","intersectionObserver","IntersectionObserver","entries","processIntersectionEntries","observe","paginationTarget","disconnect","unobserve","entry","isIntersecting","loadMore","scroll","querySelector","href","height","Math","max","areaTarget","scrollHeight","offsetHeight","clientHeight","scrollTop","window","innerHeight","loading","next_page","entriesTarget","insertAdjacentHTML","pagination","toggle","refresh","hasCheckboxAllTarget","checkboxAllTarget","addEventListener","checkboxTargets","checkbox","removeEventListener","triggerInputEvent","markDelivered","markBooked","markCancelled","checkboxesCount","length","checkboxesCheckedCount","indeterminate","Event","bubbles","cancelable","dispatchEvent","filter","onSelectLocation","location_id","locationHTML","locationTemplate","locationTarget","location","editor","initializeTribute","tribute","Tribute","allowSpaces","lookup","values","fetchUsers","attach","replaced","range","pasteHtml","_pasteHtml","detach","text","fetch","json","users","mention","detail","original","attachment","Trix","content","sgid","insertAttachment","insertString","html","startPos","endPos","position","getSelectedRange","setSelectedRange","deleteInDirection","toggleClass","toggleSidebar","wrapperClass","add_association","templateTarget","Date","getTime","linksTarget","remove_association","wrapper","closest","newRecord","style","display","createConsumer","subscription","consumer","subscriptions","channel","connected","_connected","disconnected","_disconnected","received","_received","hasUnread","showUnreadBadge","showPlaceholder","account_id","hidePlaceholder","listTarget","browser","checkPermissionAndNotify","open","hideUnreadBadge","markAsRead","notificationTargets","some","undefined","readAt","badgeTarget","markAllAsRead","ids","perform","currentTarget","markAsInteracted","hasPlaceholderTarget","placeholderTarget","Notification","permission","browserNotification","requestPermission","options","client","buttonTarget","clientInstance","paypalCheckout","paypalCreated","paypalCheckoutErr","paypalCheckoutInstance","Button","render","env","color","shape","size","label","tagline","payment","createPayment","onAuthorize","actions","tokenizePayment","onCancel","JSON","stringify","onError","err","activeFrequencyClass","split","inactiveFrequencyClass","activePlansClass","inactivePlansClass","frequencyTargets","frequency","plansTargets","findIndex","childElementCount","_hideFrequencyToggle","_toggle","toggleTarget","set","showFrequency","hideFrequency","showPlans","hidePlans","google","initMap","sw_lat","sw_lng","ne_lat","ne_lng","center_lat","center_lng","maps","Map","mapTarget","center","LatLng","zoom","original_bounds","north","south","east","west","rectangle","Rectangle","bounds","editable","draggable","setMap","addListener","getUpdatedBounds","ne","getBounds","getNorthEast","sw","getSouthWest","lat","lng","field_sw_latTarget","field_sw_lngTarget","field_ne_latTarget","field_ne_lngTarget","queryTarget","headers","accept","loadHTML","loadTemplate","loadsTarget","date_received","total_revenue","status_wording","queryChange","selectTarget","inputTarget","placeholder","handleSubmit","hide","dropdownTarget","contains","toggleableTarget","stopHTML","stop","stopTemplate","stopsTarget","load_id","address","ship_type","onSelectStopType","stop_type","pickupTarget","deliveryTarget","stripeMeta","stripeKey","getAttribute","stripe","Stripe","elements","setup_intent","payment_intent","card","mount","cardTarget","changed","errorTarget","textContent","message","keydown","keyCode","nameTarget","handleCardPayment","setupNewCard","createPaymentMethod","billing_details","result","handlePaymentMethod","payment_method","confirmCardSetup","setupIntent","payment_method_id","confirmCardPayment","paymentIntent","status","Turbolinks","clearCache","visit","toggleFirst","toggleSecond","lang","getDefaultHTML","bold","italic","strike","link","heading1","quote","bullets","numbers","outdent","indent","attachFiles","undo","redo","urlPlaceholder","unlink","EmbedController","patterns","toolbar","toolbarElement","hrefElement","embedContainerElement","embedElement","reset","installEventHandlers","didInput","embed","trim","loadPatterns","match","pattern","RegExp","regex","test","encodeURIComponent","showEmbed","currentEmbed","focus","file","progress","width","init","fileInputToggle","querySelectorAll","input","nextElementSibling","labelVal","fileName","files","pop","Cookies","oldIntl","Intl","tz","jstz","findTimeZone","expires","path","clipboardTooltip","tippy","showOnCreate","onHidden","destroy","clipboard","ClipboardJS","trigger"],"mappings":"kGAAA,SAASA,EAAoBC,GAC5B,IAAIC,EAAI,IAAIC,MAAM,uBAAyBF,EAAM,KAEjD,MADAC,EAAEE,KAAO,mBACHF,EAEPF,EAAoBK,KAAO,WAAa,MAAO,IAC/CL,EAAoBM,QAAUN,EAC9BA,EAAoBO,GAAK,KACzBC,EAAOC,QAAUT,G,qBCRjB,IAAIU,EAAM,CACT,+BAAgC,IAChC,4BAA6B,KAC7B,sCAAuC,KACvC,kCAAmC,KACnC,2BAA4B,KAC5B,uBAAwB,KACxB,4BAA6B,KAC7B,kCAAmC,KACnC,6BAA8B,KAC9B,mCAAoC,KACpC,2BAA4B,KAC5B,yBAA0B,KAC1B,8BAA+B,KAC/B,gCAAiC,KACjC,yBAA0B,KAC1B,0BAA2B,KAC3B,4BAA6B,KAC7B,yBAA0B,KAC1B,gCAAiC,KACjC,iCAAkC,KAClC,6BAA8B,KAC9B,+BAAgC,KAChC,yBAA0B,KAC1B,yBAA0B,KAC1B,yBAA0B,KAC1B,yCAA0C,IAC1C,sCAAuC,KACvC,gDAAiD,KACjD,4CAA6C,KAC7C,qCAAsC,KACtC,iCAAkC,KAClC,sCAAuC,KACvC,4CAA6C,KAC7C,uCAAwC,KACxC,6CAA8C,KAC9C,qCAAsC,KACtC,mCAAoC,KACpC,wCAAyC,KACzC,0CAA2C,KAC3C,mCAAoC,KACpC,oCAAqC,KACrC,sCAAuC,KACvC,mCAAoC,KACpC,0CAA2C,KAC3C,2CAA4C,KAC5C,uCAAwC,KACxC,yCAA0C,KAC1C,mCAAoC,KACpC,mCAAoC,KACpC,mCAAoC,MAIrC,SAASC,EAAeV,GACvB,IAAIM,EAAKK,EAAsBX,GAC/B,OAAOY,EAAoBN,GAE5B,SAASK,EAAsBX,GAC9B,IAAIY,EAAoBC,EAAEJ,EAAKT,GAAM,CACpC,IAAIC,EAAI,IAAIC,MAAM,uBAAyBF,EAAM,KAEjD,MADAC,EAAEE,KAAO,mBACHF,EAEP,OAAOQ,EAAIT,GAEZU,EAAeN,KAAO,WACrB,OAAOU,OAAOV,KAAKK,IAEpBC,EAAeL,QAAUM,EACzBJ,EAAOC,QAAUE,EACjBA,EAAeJ,GAAK,M,qBCpEpB,IAAMS,EAAWC,QACjBD,EAASX,OAAOa,QAAQF,I,gUCQtBG,OAAA,WACE,IAAMC,EAAMC,KAAKC,KAAKC,IAAI,OAC1B,OAAO,SAACC,EAAOC,GACbC,QAAUN,EAAK,CAAEO,OAAQ,CAAEH,WAAWI,MAAK,SAACC,GAC1CJ,EAASI,EAASP,W,EAKxBQ,QAAA,WAAW,IAAD,OACRT,KAAKU,GAAKC,IACRX,KAAKY,YACL,CACEC,YAAY,EACZC,MAAM,GAER,CACE,CACEhB,OAAQE,KAAKF,SACbiB,SAAU,IACVC,UAAW,CACTC,MACE,iEACFC,WAAY,SAAUA,GACpB,OAAOA,EAAWC,UAM1BC,GAAG,yBAAyB,SAACC,EAAOH,EAAYI,EAASC,GACzD,EAAKb,GAAGC,aAAaa,OAAON,EAAWC,MACvC,EAAKM,WAAWP,EAAWhC,IAC3B,EAAKwC,cAAcR,EAAWhC,Q,EAKlCuC,WAAA,SAAWxB,GACTD,KAAK2B,kBAAkBC,MAAQ3B,G,EAGjCyB,cAAA,SAAczB,GAAO,IAAD,OACZ4B,EAAY5B,EAClB6B,MAAMC,KAAK,CACTC,KAAM,MACNC,YAAa,kCACblC,IAAI,cAAe8B,EAAhB,QACHK,SAAU,OACVC,QAAS,SAACtD,GACR,EAAKuD,SAASvD,O,EAKpBuD,SAAA,SAASnC,GAEP,IAAIoC,EAAY,GAChBA,GAAarC,KAAKsC,cAAcrC,GAChCD,KAAKuC,kBAAkBC,UAAYH,G,EAGrCC,cAAA,SAAcG,GACZ,MAAM,+HAISA,EAAMC,OAJrB,6BAKgBD,EAAME,KALtB,IAK8BF,EAAMG,MALpC,IAK6CH,EAAMI,IALnD,4BAMeJ,EAAMK,aANrB,4BAOeL,EAAMM,MAPrB,4BAQeN,EAAMO,cARrB,4BASeP,EAAMQ,cATrB,gDAUmCR,EAAMvD,GAVzC,6E,GAvEyBgE,M,EACpBC,QAAU,CACf,QACA,qBACA,cACA,gB,6QCJF1C,QAAA,WACE2C,UAAUC,OAAOC,OAAO,CACtBC,cAAevD,KAAKC,KAAKC,IAAI,eAC7BsD,UAAWxD,KAAKyD,aAEhBC,OAAQ,CACNC,KAAM,UAKR3D,KAAK4D,cAAcC,KAAK7D,Q,EAI5B4D,cAAA,SAAcE,EAAOC,GACfD,EACFE,QAAQF,MAAM,qCAAsCA,GAItD9D,KAAK+D,SAAWA,G,EAGlBE,OAAA,SAAO5C,GACLA,EAAM6C,iBAENlE,KAAK+D,SAASI,qBAAqBnE,KAAKoE,cAAcP,KAAK7D,Q,EAG7DoE,cAAA,SAAcN,EAAOO,GACfP,EACFE,QAAQF,MAAM,6BAA8BA,IAI9C9D,KAAKsE,eAAe,qBAAsB,aAC1CtE,KAAKsE,eAAe,sBAAuBD,EAAQE,OAEnDzC,MAAM0C,KAAKxE,KAAKyE,WAAY,Y,EAG9BH,eAAA,SAAenD,EAAMS,GACnB,IAAI8C,EAAcC,SAASC,cAAc,SACzCF,EAAYG,aAAa,OAAQ,UACjCH,EAAYG,aAAa,OAAQ1D,GACjCuD,EAAYG,aAAa,QAASjD,GAClC5B,KAAKyE,WAAWK,YAAYJ,I,WAlDHxB,I,EACpBC,QAAU,CAAE,SAAU,S,iUCS7BrD,OAAA,WACE,IAAMC,EAAMC,KAAKC,KAAKC,IAAI,OAC1B,OAAO,SAACC,EAAOC,GACbC,QAAUN,EAAK,CAAEO,OAAQ,CAAEH,WAAWI,MAAK,SAACC,GAC1CJ,EAASI,EAASP,W,EAKxBQ,QAAA,WAAW,IAAD,OACRT,KAAKU,GAAKC,IACRX,KAAKY,YACL,CACEC,YAAY,EACZC,MAAM,GAER,CACE,CACEhB,OAAQE,KAAKF,SACbiB,SAAU,IACVC,UAAW,CACTC,MACE,gEACFC,WAAY,SAAUA,GACpB,OAAOA,EAAWC,UAM1BC,GAAG,yBAAyB,SAACC,EAAOH,EAAYI,EAASC,GACzD,EAAKb,GAAGC,aAAaa,OAAON,EAAWC,MACvC,EAAKM,WAAWP,EAAWhC,IAC3B,EAAKwC,cAAcR,EAAWhC,Q,EAKlCuC,WAAA,SAAWxB,GACTD,KAAK2B,kBAAkBC,MAAQ3B,G,EAGjCyB,cAAA,SAAczB,GAAO,IAAD,OACZ4B,EAAY5B,EAClB6B,MAAMC,KAAK,CACTC,KAAM,MACNC,YAAa,kCACblC,IAAI,aAAc8B,EAAf,QACHK,SAAU,OACVC,QAAS,SAACtD,GACR,EAAKuD,SAASvD,O,EAKpBuD,SAAA,SAASnC,GAEP,IAAIoC,EAAY,GAChBA,GAAarC,KAAKsC,cAAcrC,GAChCD,KAAKuC,kBAAkBC,UAAYH,G,EAGrCC,cAAA,SAAcG,GACZ,MAAM,8HAISA,EAAMC,OAJrB,6BAKgBD,EAAME,KALtB,IAK8BF,EAAMG,MALpC,IAK6CH,EAAMI,IALnD,4BAMeJ,EAAMK,aANrB,4BAOeL,EAAMM,MAPrB,4BAQeN,EAAMO,cARrB,4BASeP,EAAMQ,cATrB,+CAUkCR,EAAMvD,GAVxC,4E,GAvEyBgE,M,EACpBC,QAAU,CACf,QACA,qBACA,cACA,gB,6QCLF1C,QAAA,WACEuD,QAAQe,IAAI,2B,EAGdC,gBAAA,SAAgB3D,GAAQ,IAAD,OACf4D,EAAa5D,EAAM6D,OAAOtD,MAGhCE,MAAMC,KAAK,CACTC,KAAM,MACNC,YAAa,kCACblC,IAAI,aAAckF,EAAf,QACH/C,SAAU,OACVC,QAAS,SAAClC,GACR,EAAKmC,SAASnC,O,EAKpBmC,SAAA,SAASnC,GAEP,IAAIkF,EAAc,GAClBA,GAAenF,KAAKoF,gBAAgBnF,GACpCD,KAAKqF,cAAc7C,UAAY2C,G,EAGjCC,gBAAA,SAAgBE,GACd,MAAM,8HAISA,EAAQ5C,OAJvB,6BAKgB4C,EAAQ3C,KALxB,IAKgC2C,EAAQ1C,MALxC,IAKiD0C,EAAQzC,IALzD,4BAMeyC,EAAQxC,aANvB,4BAOewC,EAAQvC,MAPvB,4BAQeuC,EAAQtC,cARvB,4BASesC,EAAQrC,cATvB,+CAUkCqC,EAAQpG,GAV1C,4E,WA7ByBgE,I,EACpBC,QAAU,CAAC,Y,qQCElBoC,qBAAA,SAAqBC,GAAK,IAAD,OAIvBxF,KAAKyF,kBAAkB5F,SAAQ,SAACqF,GAC1B,EAAKQ,eAAeC,QACtBT,EAAOU,UAAUC,OAAO,UAExBX,EAAOU,UAAUE,IAAI,c,WAXA5C,I,EACpBC,QAAU,CAAC,oBAAqB,WAAY,e,qSCCnD1C,QAAA,WACET,KAAK+F,SAAWC,WAAgBhG,KAAKiG,QAAS,CAC5CC,MAAO,SACPC,UAAW,IACXC,MAAOpG,KAAKqG,IAAIxC,KAAK7D,S,EAIzBqG,IAAA,SAAIhF,GACF,IAAInC,EAAKmC,EAAMiF,KAAKhF,QAAQpC,GACxBe,EAAO,IAAIsG,SAEftG,EAAKuG,OAAO,WAAYnF,EAAMoF,SAAW,GAEzC3E,MAAMC,KAAK,CACThC,IAAKC,KAAKC,KAAKC,IAAI,OAAOwG,QAAQ,MAAOxH,GACzC8C,KAAM,QACN/B,KAAMA,K,GAlBiBiD,O,6QCE3ByD,WAAA,WACE3G,KAAK4G,SAAW5G,KAAK4G,SAAS/C,KAAK7D,O,EAGrCS,QAAA,WACET,KAAK6G,eACL7C,QAAQe,IAAI/E,KAAK8G,YAAYtE,Y,EAG/BqE,aAAA,WAAgB,IAAD,OAOG,CACd,CACE3H,GAAI,EACJ6H,MAAO,OACPC,KAAM,6CAER,CACE9H,GAAI,EACJ6H,MAAO,MACPC,KAAM,4CAER,CACE9H,GAAI,EACJ6H,MAAO,SACPC,KAAM,+CAER,CACE9H,GAAI,EACJ6H,MAAO,SACPC,KAAM,gDAGAnH,SAAQ,SAACoH,GACjB,IAAMC,EAAMvC,SAASC,cAAc,OACnCsC,EAAI1E,UAAYyE,EAAKF,MACrBG,EAAIrC,aACF,QACA,wOAMFqC,EAAIC,QAAU,WACZxC,SAASyC,eAAe,cAAcxF,MAAQqF,EAAKD,MAErD,EAAKK,cAAcvC,YAAYoC,O,EAInCN,SAAA,SAASI,GACPhH,KAAK8G,YAAYlF,MAAQoF,G,WA5DA9D,I,EACpBC,QAAU,CAAC,UAAW,U,8ECGzBmE,EAAcC,aACdhG,EAAU3B,QAChB0H,EAAYE,MAAKC,OAAuBlG,IAGxC+F,EAAYI,SAAS,QAASC,MAC9BL,EAAYI,SAAS,WAAYE,MACjCN,EAAYI,SAAS,QAASG,MAC9BP,EAAYI,SAAS,OAAQI,MAG7BR,EAAYI,SAAS,YAAaK,M,6QCZhCpB,WAAA,WAAc,IAAD,OACX3G,KAAKgI,qBAAuB,IAAIC,sBAAqB,SAACC,GAAD,OACnD,EAAKC,2BAA2BD,O,EAIpCzH,QAAA,WACET,KAAKgI,qBAAqBI,QAAQpI,KAAKqI,mB,EAGzCC,WAAA,WACEtI,KAAKgI,qBAAqBO,UAAUvI,KAAKqI,mB,EAG3CF,2BAAA,SAA2BD,GAAU,IAAD,OAClCA,EAAQrI,SAAQ,SAAC2I,GACXA,EAAMC,gBACR,EAAKC,e,EAMXC,OAAA,WACE,IAAI5I,EAAMC,KAAKqI,iBAAiBO,cAAc,iBAAiBC,KAE3DC,EAASC,KAAKC,IAChBhJ,KAAKiJ,WAAWC,aAChBlJ,KAAKiJ,WAAWE,aAChBnJ,KAAKiJ,WAAWG,cAGdpJ,KAAKiJ,WAAWI,WAAaP,EAASQ,OAAOC,aAC/CvJ,KAAK0I,SAAS3I,I,EAIlB2I,SAAA,WAAY,IAAD,OAET,IAAI1I,KAAKwJ,QAAT,CAIAxJ,KAAKwJ,SAAU,EAEf,IAAIC,EAAYzJ,KAAKqI,iBAAiBO,cAAc,iBACpD,GAAiB,MAAba,EAAJ,CAGA,IAAI1J,EAAM0J,EAAUZ,KAEpB/G,MAAMC,KAAK,CACTC,KAAM,MACNjC,IAAKA,EACLmC,SAAU,OACVC,QAAS,SAAClC,GACR+D,QAAQe,IAAI9E,GACZ,EAAKyJ,cAAcC,mBAAmB,YAAa1J,EAAKiI,SACxD,EAAKG,iBAAiB7F,UAAYvC,EAAK2J,WACvC,EAAKJ,SAAU,Q,WA9DMtG,I,EACpBC,QAAU,CAAC,OAAQ,UAAW,e,ybCErCwD,WAAA,WACE3G,KAAK6J,OAAS7J,KAAK6J,OAAOhG,KAAK7D,MAC/BA,KAAK8J,QAAU9J,KAAK8J,QAAQjG,KAAK7D,O,EAGnCS,QAAA,WAAW,IAAD,OACHT,KAAK+J,uBAEV/J,KAAKgK,kBAAkBC,iBAAiB,SAAUjK,KAAK6J,QACvD7J,KAAKkK,gBAAgBrK,SAAQ,SAACsK,GAAD,OAC3BA,EAASF,iBAAiB,SAAU,EAAKH,YAE3C9J,KAAK8J,Y,EAGPxB,WAAA,WAAc,IAAD,OACNtI,KAAK+J,uBAEV/J,KAAKgK,kBAAkBI,oBAAoB,SAAUpK,KAAK6J,QAC1D7J,KAAKkK,gBAAgBrK,SAAQ,SAACsK,GAAD,OAC3BA,EAASC,oBAAoB,SAAU,EAAKN,c,EAIhDD,OAAA,SAAOhL,GAAI,IAAD,OACRA,EAAEqF,iBAEFlE,KAAKkK,gBAAgBrK,SAAQ,SAACsK,GAC5BA,EAASxE,QAAU9G,EAAEqG,OAAOS,QAC5B,EAAK0E,kBAAkBF,O,EAM3BG,cAAA,SAAcjJ,GAEZA,EAAM6C,iBAEN,IAAIjE,EAAO,IAAIsG,SACfvG,KAAK2F,QAAQ9F,SAAQ,SAACsK,GAAD,OAAclK,EAAKuG,OAAO,QAAS2D,EAASvI,UAEjEE,MAAMC,KAAK,CACThC,IAAK,6BACLiC,KAAM,QACN/B,KAAMA,K,EAGVsK,WAAA,SAAWlJ,GAETA,EAAM6C,iBAEN,IAAIjE,EAAO,IAAIsG,SACfvG,KAAK2F,QAAQ9F,SAAQ,SAACsK,GAAD,OAAclK,EAAKuG,OAAO,QAAS2D,EAASvI,UAEjEE,MAAMC,KAAK,CACThC,IAAK,0BACLiC,KAAM,QACN/B,KAAMA,K,EAGVuK,cAAA,SAAcnJ,GAEZA,EAAM6C,iBAEN,IAAIjE,EAAO,IAAIsG,SACfvG,KAAK2F,QAAQ9F,SAAQ,SAACsK,GAAD,OAAclK,EAAKuG,OAAO,QAAS2D,EAASvI,UAEjEE,MAAMC,KAAK,CACThC,IAAK,6BACLiC,KAAM,QACN/B,KAAMA,K,EAIV6J,QAAA,WACE,IAAMW,EAAkBzK,KAAKkK,gBAAgBQ,OACvCC,EAAyB3K,KAAK2F,QAAQ+E,OAE5C1K,KAAKgK,kBAAkBrE,QAAUgF,EAAyB,EAC1D3K,KAAKgK,kBAAkBY,cACrBD,EAAyB,GAAKA,EAAyBF,G,EAG3DJ,kBAAA,SAAkBF,GAChB,IAAM9I,EAAQ,IAAIwJ,MAAM,QAAS,CAAEC,SAAS,EAAOC,YAAY,IAE/DZ,EAASa,cAAc3J,I,sCAIvB,OAAOrB,KAAKkK,gBAAgBe,QAAO,SAACd,GAAD,OAAcA,EAASxE,a,gCAI1D,OAAO3F,KAAKkK,gBAAgBe,QAAO,SAACd,GAAD,OAAeA,EAASxE,gB,sCAlGlCzC,I,EACpBC,QAAU,CAAC,cAAe,WAAY,kB,6QCC7C1C,QAAA,a,EAIAyK,iBAAA,SAAiB7J,GAAQ,IAAD,OAChB8J,EAAc9J,EAAM6D,OAAOtD,MAGjCE,MAAMC,KAAK,CACTC,KAAM,MACNC,YAAa,kCACblC,IAAI,cAAeoL,EAAhB,QACHjJ,SAAU,OACVC,QAAS,SAAClC,GACR,EAAKmC,SAASnC,O,EAMpBmC,SAAA,SAASnC,GAEP,IAAImL,EAAe,GACnBA,GAAgBpL,KAAKqL,iBAAiBpL,GACtCD,KAAKsL,eAAe9I,UAAY4I,G,EAGlCC,iBAAA,SAAiBE,GACf,MAAM,+HAISA,EAAS7I,OAJxB,6BAKgB6I,EAAS5I,KALzB,IAKiC4I,EAAS3I,MAL1C,IAKmD2I,EAAS1I,IAL5D,4BAMe0I,EAASzI,aANxB,4BAOeyI,EAASxI,MAPxB,4BAQewI,EAASvI,cARxB,4BASeuI,EAAStI,cATxB,gDAUmCsI,EAASrM,GAV5C,6E,WA9ByBgE,I,EACpBC,QAAU,CAAC,a,iUCIlB1C,QAAA,WACET,KAAKwL,OAASxL,KAAKY,YAAY4K,OAC/BxL,KAAKyL,qB,EAGPA,kBAAA,WACEzL,KAAK0L,QAAU,IAAIC,IAAJ,CAAY,CACzBC,aAAa,EACbC,OAAQ,OACRC,OAAQ9L,KAAK+L,aAEf/L,KAAK0L,QAAQM,OAAOhM,KAAKY,aACzBZ,KAAKY,YAAYqJ,iBAAiB,mBAAoBjK,KAAKiM,UAC3DjM,KAAK0L,QAAQQ,MAAMC,UAAYnM,KAAKoM,WAAWvI,KAAK7D,O,EAGtDsI,WAAA,WACEtI,KAAK0L,QAAQW,OAAOrM,KAAKY,c,EAG3BmL,WAAA,SAAWO,EAAMlM,GACfmM,MAAM,8BAA8BD,GACjC/L,MAAK,SAAAC,GAAQ,OAAIA,EAASgM,UAC1BjM,MAAK,SAAAkM,GAAK,OAAIrM,EAASqM,MAF1B,OAGS,SAAA3I,GAAK,OAAI1D,EAAS,Q,EAG7B6L,SAAA,SAASpN,GACP,IAAI6N,EAAU7N,EAAE8N,OAAOrG,KAAKsG,SACxBC,EAAa,IAAIC,gBAAgB,CACnCC,QAASL,EAAQK,QACjBC,KAAMN,EAAQM,OAEhBhN,KAAKwL,OAAOyB,iBAAiBJ,GAC7B7M,KAAKwL,OAAO0B,aAAa,M,EAG3Bd,WAAA,SAAWe,EAAMC,EAAUC,GACzB,IACIC,EADQtN,KAAKwL,OAAO+B,mBACH,GACjB7C,EAAS2C,EAASD,EAEtBpN,KAAKwL,OAAOgC,iBAAiB,CAACF,EAAW5C,EAAQ4C,IACjDtN,KAAKwL,OAAOiC,kBAAkB,a,GA9CLvK,M,EACpBC,QAAU,CAAE,U,6QCAnB1C,QAAA,WACET,KAAK0N,YAAc1N,KAAKC,KAAKC,IAAI,UAAY,U,EAG/CyN,cAAA,SAActM,GAAQ,IAAD,OACnBA,EAAM6C,iBAENlE,KAAKyF,kBAAkB5F,SAAQ,SAACqF,GAC9BA,EAAOU,UAAUiE,OAAO,EAAK6D,iB,WAXNxK,I,EACpBC,QAAU,CAAC,Y,6QCmClB1C,QAAA,WACET,KAAK4N,aAAe5N,KAAKC,KAAKC,IAAI,iBAAmB,gBACrD8D,QAAQe,IAAI/E,KAAK4N,e,EAGnBC,gBAAA,SAAgBxM,GACdA,EAAM6C,iBAEN,IAAI6I,EAAU/M,KAAK8N,eAAetL,UAAUkE,QAAQ,eAAe,IAAIqH,MAAOC,WAC9EhO,KAAKiO,YAAYtE,mBAAmB,cAAeoD,I,EAGrDmB,mBAAA,SAAmB7M,GACjBA,EAAM6C,iBAGN,IAAIiK,EAAU9M,EAAM6D,OAAOkJ,QAAQ,IAAMpO,KAAK4N,cAC9C5J,QAAQe,IAAIoJ,GAEqB,QAA7BA,EAAQ7M,QAAQ+M,WAClBrK,QAAQe,IAAI,eACZoJ,EAAQtI,WAIN7B,QAAQe,IAAI,WACdoJ,EAAQvF,cAAc,2BAA2BhH,MAAQ,EACzDuM,EAAQG,MAAMC,QAAU,S,WA9BDrL,I,EACpBC,QAAU,CAAE,QAAS,a,6FC/B9B,GAAeqL,E,QAAAA,kB,8LCCb/N,QAAA,WACET,KAAKyO,aAAeC,EAASC,cAAcrL,OAAO,CAAEsL,QAAS,uBAAyB,CACpFC,UAAW7O,KAAK8O,WAAWjL,KAAK7D,MAChC+O,aAAc/O,KAAKgP,cAAcnL,KAAK7D,MACtCiP,SAAUjP,KAAKkP,UAAUrL,KAAK7D,QAG5BA,KAAKmP,aAAanP,KAAKoP,kBACvBpP,KAAKiB,SAASjB,KAAKqP,mB,EAGzBP,WAAA,a,EAGAE,cAAA,a,EAGAE,UAAA,SAAUjP,GAEJA,EAAKqP,YAAcrP,EAAKqP,YAActP,KAAKC,KAAKC,IAAI,eAKpDD,EAAKkN,OACPnN,KAAKuP,kBACLvP,KAAKwP,WAAW7F,mBAAmB,aAAc1J,EAAKkN,MACtDnN,KAAKoP,mBAIHnP,EAAKwP,SACPzP,KAAK0P,yBAAyBzP,EAAKwP,W,EAKvCE,KAAA,WACE3P,KAAK4P,kBACL5P,KAAK6P,c,EAGPV,UAAA,WACE,OAAOnP,KAAK8P,oBAAoBC,MAAK,SAAC7K,GAAD,YAAqC8K,GAAzB9K,EAAO5D,QAAQ2O,W,EAGlEb,gBAAA,WACEpP,KAAKkQ,YAAYtK,UAAUC,OAAO,W,EAGpC+J,gBAAA,WACE5P,KAAKkQ,YAAYtK,UAAUE,IAAI,W,EAGjCqK,cAAA,WACE,IAAIC,EAAMpQ,KAAK8P,oBAAoBzQ,KAAI,SAAC6F,GAAD,OAAYA,EAAO5D,QAAQpC,MAClEc,KAAKyO,aAAa4B,QAAQ,eAAgB,CAACD,IAAKA,K,EAGlDP,WAAA,SAAWxO,GACT,IAAInC,EAAKmC,EAAMiP,cAAchP,QAAQpC,GAC3B,MAANA,GACJc,KAAKyO,aAAa4B,QAAQ,eAAgB,CAACD,IAAK,CAAClR,M,EAMnDqR,iBAAA,SAAiBlP,GACf,IAAInC,EAAKmC,EAAMiP,cAAchP,QAAQpC,GAC3B,MAANA,GACJc,KAAKyO,aAAa4B,QAAQ,qBAAsB,CAACD,IAAK,CAAClR,M,EAMzD+B,MAAA,WACE,OAA0C,GAAnCjB,KAAK8P,oBAAoBpF,Q,EAGlC2E,gBAAA,WACMrP,KAAKwQ,sBAAsBxQ,KAAKyQ,kBAAkB7K,UAAUC,OAAO,W,EAGzE0J,gBAAA,WACMvP,KAAKwQ,sBAAsBxQ,KAAKyQ,kBAAkB7K,UAAUE,IAAI,W,EAItE4J,yBAAA,SAAyBzP,GAAO,IAAD,OAEvB,iBAAkBqJ,SAEQ,YAA5BoH,aAAaC,WACf3Q,KAAK4Q,oBAAoB3Q,GAEY,WAA5ByQ,aAAaC,YACtBD,aAAaG,oBAAoBtQ,MAAK,SAACoQ,GAClB,YAAfA,GACF,EAAKC,oBAAoB3Q,Q,EAMjC2Q,oBAAA,SAAoB3Q,GAClB,IAAIyQ,aAAazQ,EAAK8G,MAAO9G,EAAK6Q,U,GA9GT5N,M,EACpBC,QAAU,CAAC,QAAS,OAAQ,cAAe,iB,6QCClD1C,QAAA,WACE2C,UAAU2N,OAAOzN,OAAO,CACtBC,cAAevD,KAAKC,KAAKC,IAAI,gBAC5BF,KAAK4D,cAAcC,KAAK7D,Q,EAG7BsI,WAAA,WAEEtI,KAAKgR,aAAapI,cAAc,kBAAkB/C,U,EAGpDjC,cAAA,SAAcE,EAAOmN,GACfnN,EACFE,QAAQF,MAAM,wBAAyBA,GAIzCV,UAAU8N,eAAe5N,OAAO,CAC9ByN,OAAQE,GACPjR,KAAKmR,cAActN,KAAK7D,Q,EAG7BmR,cAAA,SAAcC,EAAmBC,GAAyB,IAAD,OAInDD,EACFpN,QAAQF,MAAM,kCAAmCsN,GAKnD1N,OAAO4N,OAAOC,OAAO,CACnBC,IAAKxR,KAAKC,KAAKC,IAAI,OAGnBoO,MAAO,CACLmD,MAAO,OACPC,MAAO,OACPC,KAAO,SACPC,MAAO,MACPC,SAAS,GAGXC,QAAS,WACP,OAAOT,EAAuBU,cAAc,CAG1CpO,KAAM,WAIVqO,YAAa,SAAC/R,EAAMgS,GAClB,OAAOZ,EAAuBa,gBAAgBjS,EAAM,EAAKmE,cAAcP,KAAK,KAG9EsO,SAAU,SAAClS,GACT+D,QAAQe,IAAI,gCAAiCqN,KAAKC,UAAUpS,EAAM,EAAG,KAGvEqS,QAAS,SAACC,GACRvO,QAAQF,MAAM,oBAAqByO,KAEpCvS,KAAKgR,cAAczQ,MAAK,gB,EAO7B6D,cAAA,SAAcN,EAAOO,GACfP,EACFE,QAAQF,MAAM,6BAA8BA,IAI9C9D,KAAKsE,eAAe,qBAAsB,aAC1CtE,KAAKsE,eAAe,sBAAuBD,EAAQE,OAEnDzC,MAAM0C,KAAKxE,KAAKyE,WAAY,Y,EAG9BH,eAAA,SAAenD,EAAMS,GACnB,IAAI8C,EAAcC,SAASC,cAAc,SACzCF,EAAYG,aAAa,OAAQ,UACjCH,EAAYG,aAAa,OAAQ1D,GACjCuD,EAAYG,aAAa,QAASjD,GAClC5B,KAAKyE,WAAWK,YAAYJ,I,WA1FHxB,I,EACpBC,QAAU,CAAE,SAAU,S,6QCM7B1C,QAAA,WAAW,IAAD,OAERT,KAAKwS,sBAA0BxS,KAAKC,KAAKC,IAAI,2BAA6B,wCAAwCuS,MAAM,KACxHzS,KAAK0S,wBAA0B1S,KAAKC,KAAKC,IAAI,6BAA+B,kCAAkCuS,MAAM,KAGpHzS,KAAK2S,kBAAsB3S,KAAKC,KAAKC,IAAI,qBAAuB,QAAQuS,MAAM,KAC9EzS,KAAK4S,oBAAsB5S,KAAKC,KAAKC,IAAI,uBAAyB,UAAUuS,MAAM,KAGlFzS,KAAK6S,iBAAiBhT,SAAQ,SAAAqF,GAC5B,IAAI4N,EAAY5N,EAAO5D,QAAQwR,WAEjB,GADF,EAAKC,aAAaC,WAAU,SAAC/M,GAAD,OAAaA,EAAQ3E,QAAQwR,WAAaA,GAAa7M,EAAQgN,kBAAoB,MAC1G/N,EAAOW,YAItB7F,KAAK6S,iBAAiBnI,OAAS,GAAG1K,KAAKkT,uBAE3C,IAAIJ,EAAY9S,KAAKC,KAAKC,IAAI,WAAaF,KAAK6S,iBAAiB,GAAGvR,QAAQwR,UAC5E9S,KAAKmT,QAAQL,I,SAIf,SAAOzR,GACLA,EAAM6C,iBACNlE,KAAKmT,QAAQ9R,EAAM6D,OAAO5D,QAAQwR,Y,EAIpCI,qBAAA,WACElT,KAAKoT,aAAaxN,UAAUE,IAAI,W,EAKlCqN,QAAA,SAAQL,GAAY,IAAD,OAEjB9S,KAAKC,KAAKoT,IAAI,SAAUP,GAExB9S,KAAK6S,iBAAiBhT,SAAQ,SAAAqF,GACxBA,EAAO5D,QAAQwR,WAAaA,EAC9B,EAAKQ,cAAcpO,GAEnB,EAAKqO,cAAcrO,MAIvBlF,KAAK+S,aAAalT,SAAQ,SAAAqF,GACpBA,EAAO5D,QAAQwR,WAAaA,EAC9B,EAAKU,UAAUtO,GAEf,EAAKuO,UAAUvO,O,EAKrBoO,cAAA,SAAcrN,GAAU,IAAD,KACrB,EAAAA,EAAQL,WAAUE,IAAlB,QAAyB9F,KAAKwS,uBAC9B,EAAAvM,EAAQL,WAAUC,OAAlB,QAA4B7F,KAAK0S,yB,EAGnCa,cAAA,SAActN,GAAU,IAAD,KACrB,EAAAA,EAAQL,WAAUC,OAAlB,QAA4B7F,KAAKwS,uBACjC,EAAAvM,EAAQL,WAAUE,IAAlB,QAAyB9F,KAAK0S,yB,EAGhCc,UAAA,SAAUvN,GAAU,IAAD,KACjB,EAAAA,EAAQL,WAAUE,IAAlB,QAAyB9F,KAAK2S,mBAC9B,EAAA1M,EAAQL,WAAUC,OAAlB,QAA4B7F,KAAK4S,qB,EAGnCa,UAAA,SAAUxN,GAAU,IAAD,KACjB,EAAAA,EAAQL,WAAUC,OAAlB,QAA4B7F,KAAK2S,mBACjC,EAAA1M,EAAQL,WAAUE,IAAlB,QAAyB9F,KAAK4S,qB,WA7EL1P,I,EACpBC,QAAU,CAAE,SAAU,YAAa,U,6QCFxC1C,QAAA,WAC0B,oBAAXiT,QACP1T,KAAK2T,W,EAIbA,QAAA,WACI,IAAMC,EAAS5T,KAAKC,KAAKC,IAAI,iBAAmB,UAC1C2T,EAAS7T,KAAKC,KAAKC,IAAI,kBAAoB,UAC3C4T,EAAS9T,KAAKC,KAAKC,IAAI,iBAAmB,UAC1C6T,EAAS/T,KAAKC,KAAKC,IAAI,kBAAoB,UAE3C8T,GAAcJ,EAASE,GAAQ,EAC/BG,GAAcJ,EAASE,GAAQ,EAErC/T,KAAKX,IAAM,IAAIqU,OAAOQ,KAAKC,IAAInU,KAAKoU,UAAW,CAC3CC,OAAQ,IAAIX,OAAOQ,KAAKI,OAAON,EAAYC,GAC3CM,KAAM,KAGV,IAAMC,EAAkB,CACpBC,MAAOX,EACPY,MAAOd,EACPe,KAAMZ,EACNa,KAAMf,GAGV7T,KAAK6U,UAAY,IAAInB,OAAOQ,KAAKY,UAAU,CACvCC,OAAQP,EACRQ,UAAU,EACVC,WAAW,IAEfjV,KAAK6U,UAAUK,OAAOlV,KAAKX,KAE3BW,KAAK6U,UAAUM,YAAY,iBAAkBnV,KAAKoV,iBAAiBvR,KAAK7D,Q,EAM5EoV,iBAAA,WACG,IAAIP,EAAY7U,KAAK6U,UACfQ,EAAKR,EAAUS,YAAYC,eAC3BC,EAAKX,EAAUS,YAAYG,eAGjCJ,EAAGK,MACHL,EAAGM,MAEHH,EAAGE,MACHF,EAAGG,MAIH3V,KAAK4V,mBAAmBhU,MAAQ4T,EAAGE,MACnC1V,KAAK6V,mBAAmBjU,MAAQ4T,EAAGG,MACnC3V,KAAK8V,mBAAmBlU,MAAQyT,EAAGK,MACnC1V,KAAK+V,mBAAmBnU,MAAQyT,EAAGM,O,WA5DbzS,I,EAClBC,QAAU,CAAC,MAAO,eAAgB,eAAgB,eAAgB,iB,6QCC3E1C,QAAA,a,EAIAwD,OAAA,WAAU,IAAD,OACDrC,EAAQ5B,KAAKgW,YAAYpU,MAC/B2K,MAAM,WAAW3K,EAAS,CACxBqU,QAAS,CAAEC,OAAQ,sBAElB3V,MAAK,SAACC,GAAD,OAAcA,EAASgM,UAC5BjM,MAAK,SAACN,GACL,IAAIkW,EAAW,GACCzW,OAAOoM,OAAO7L,GAAM,GAC1BJ,SAAQ,SAAC2H,GACjB2O,GAAY,EAAKC,aAAa5O,MAEhC,EAAK6O,YAAY7T,UAAY2T,M,EAInCC,aAAA,SAAa5O,GACX,MAAM,gEAEeA,EAAKtI,GAF1B,4BAGesI,EAAK8O,cAHpB,0CAI6B9O,EAAK+O,cAJlC,oDAKuC/O,EAAKgP,eAL5C,gC,WAvByBtT,I,EACpBC,QAAU,CAAC,QAAS,U,ybCC3B1C,QAAA,a,EAGAgW,YAAA,SAAYpV,GACVA,EAAM6C,iBACyB,MAA3BlE,KAAK0W,aAAa9U,OACpB5B,KAAK2W,YAAYC,YAAc,qBAC/B5W,KAAK2W,YAAYxV,KAAO,WACY,YAA3BnB,KAAK0W,aAAa9U,OAC3B5B,KAAK2W,YAAYC,YAAc,2BAC/B5W,KAAK2W,YAAYxV,KAAO,SACY,WAA3BnB,KAAK0W,aAAa9U,OAC3B5B,KAAK2W,YAAYC,YAAc,0BAC/B5W,KAAK2W,YAAYxV,KAAO,YAExBnB,KAAK2W,YAAYC,YAAc,eAC/B5W,KAAK2W,YAAYxV,KAAO,U,EAI5B0V,aAAA,SAAaxV,GACXA,EAAM6C,iBACyB,MAA3BlE,KAAK0W,aAAa9U,MACpB5B,KAAK2W,YAAYxV,KAAO,WACY,YAA3BnB,KAAK0W,aAAa9U,OAElB5B,KAAK0W,aAAa9U,MAD3B5B,KAAK2W,YAAYxV,KAAO,U,EAS5B2V,KAAA,SAAKzV,GAEDA,IACCrB,KAAK+W,eAAeC,SAAS3V,EAAM6D,SAClClF,KAAK2W,YAAYK,SAAS3V,EAAM6D,UAOpClF,KAAK+W,eAAenR,UAAUiE,OAAO,W,oCAIrC,OAAO7J,KAAK2W,YAAY/U,W,sCAnDCsB,I,EACpBC,QAAU,CAAC,QAAS,WAAY,W,qQCGrC0G,OAAA,WACI7J,KAAKiX,iBAAiBrR,UAAUiE,OAAO,W,WALjB3G,I,EACpBC,QAAU,CAAE,e,6QCCpB1C,QAAA,WACEuD,QAAQe,IAAI,e,EAGdd,OAAA,WAAU,IAAD,OACDrC,EAAQ5B,KAAKgW,YAAYpU,MAC/B2K,MAAM,WAAW3K,EAAS,CACxBqU,QAAS,CAAEC,OAAQ,sBAElB3V,MAAK,SAACC,GAAD,OAAcA,EAASgM,UAC5BjM,MAAK,SAACN,GACL,IAAIiX,EAAW,GACCxX,OAAOoM,OAAO7L,GAAM,GAC1BJ,SAAQ,SAACsX,GACjBD,GAAY,EAAKE,aAAaD,MAEhC,EAAKE,YAAY7U,UAAY0U,M,EAInCE,aAAA,SAAaD,GACX,MAAM,gEAEeA,EAAKG,QAF1B,4BAGeH,EAAKI,QAHpB,4BAIeJ,EAAKxU,KAJpB,IAI4BwU,EAAKvU,MAJjC,+CAKkCuU,EAAKK,UALvC,gC,WAvByBtU,I,EACpBC,QAAU,CAAC,QAAS,U,6QCEzB1C,QAAA,WACIuD,QAAQe,IAAI,2B,EAGhB0S,iBAAA,SAAiBpW,GACb,IAAMqW,EAAYrW,EAAM6D,OAAOtD,MAEd,WAAb8V,GACA1T,QAAQe,IAAI,gBACZ/E,KAAK2X,aAAa/R,UAAUiE,OAAO,UACnC7J,KAAK4X,eAAehS,UAAUiE,OAAO,WACjB,aAAb6N,IAEP1T,QAAQe,IAAI,iBACZ/E,KAAK2X,aAAa/R,UAAUiE,OAAO,UACnC7J,KAAK4X,eAAehS,UAAUiE,OAAO,Y,WAlBpB3G,I,EAClBC,QAAU,CAAC,QAAS,SAAU,a,6QCEvC1C,QAAA,WACE,IAAIoX,EAAalT,SAASiE,cAAc,2BACxC,GAAmB,OAAfiP,EAAJ,CAEA,IAAIC,EAAYD,EAAWE,aAAa,WACxC/X,KAAKgY,OAAWC,OAAOH,GACvB,IAAII,EAAYlY,KAAKgY,OAAOE,WAG5BlY,KAAKmY,aAAenY,KAAKC,KAAKC,IAAI,gBAGlCF,KAAKoY,eAAiBpY,KAAKC,KAAKC,IAAI,kBAGpCF,KAAKqY,KAAOH,EAAS5U,OAAO,QAC5BtD,KAAKqY,KAAKC,MAAMtY,KAAKuY,YACrBvY,KAAKqY,KAAKpO,iBAAiB,SAAUjK,KAAKwY,QAAQ3U,KAAK7D,S,EAGzDwY,QAAA,SAAQnX,GACFA,EAAMyC,MACR9D,KAAKyY,YAAYC,YAAcrX,EAAMyC,MAAM6U,QAE3C3Y,KAAKyY,YAAYC,YAAc,I,EAInCE,QAAA,SAAQvX,GACe,IAAjBA,EAAMwX,UAERxX,EAAM6C,iBACNlE,KAAKiE,OAAO5C,K,EAIhB4C,OAAA,SAAO5C,GAAQ,IAAD,OACZA,EAAM6C,iBAEuB,IAAzBlE,KAAK8Y,WAAWlX,MAMhB5B,KAAKoY,eACPpY,KAAK+Y,oBAGI/Y,KAAKmY,aACdnY,KAAKgZ,eAILhZ,KAAKgY,OAAOiB,oBAAoB,CAC9BjX,KAAM,OACNqW,KAAMrY,KAAKqY,KACXa,gBAAiB,CACf/X,KAAMnB,KAAK8Y,WAAWlX,SAEvBrB,MAAK,SAAC4Y,GAAD,OAAY,EAAKC,oBAAoBD,EAAO/U,cAAclF,OApBlEc,KAAKyY,YAAYC,YAAc,6B,EAwBnCM,aAAA,WAAgB,IAAD,OACT/Y,EAAO,CACToZ,eAAgB,CACdhB,KAAMrY,KAAKqY,KACXa,gBAAiB,CACf/X,KAAMnB,KAAK8Y,WAAWlX,SAK5B5B,KAAKgY,OAAOsB,iBAAiBtZ,KAAKmY,aAAclY,GAAMM,MAAK,SAAC4Y,GACtDA,EAAOrV,MACT,EAAK2U,YAAYC,YAAcS,EAAOrV,MAAM6U,QAE5C,EAAKS,oBAAoBD,EAAOI,YAAYF,oB,EAKlDD,oBAAA,SAAoBI,GAClBxZ,KAAKsE,eAAe,qBAAsB,UAC1CtE,KAAKsE,eAAe,sBAAuBkV,GAE3C1X,MAAM0C,KAAKxE,KAAKyE,WAAY,W,EAG9BH,eAAA,SAAenD,EAAMS,GACnB,IAAI8C,EAAcC,SAASC,cAAc,SACzCF,EAAYG,aAAa,OAAQ,UACjCH,EAAYG,aAAa,OAAQ1D,GACjCuD,EAAYG,aAAa,QAASjD,GAClC5B,KAAKyE,WAAWK,YAAYJ,I,EAG9BqU,kBAAA,WAAqB,IAAD,OAElB/Y,KAAKgY,OAAOyB,mBAAmBzZ,KAAKoY,gBAAgB7X,MAAK,SAAC4Y,GACpDA,EAAOrV,MACT,EAAK2U,YAAYC,YAAcS,EAAOrV,MAAM6U,QAEnCQ,EAAOO,eAAiD,cAAhCP,EAAOO,cAAcC,SACtDC,WAAWC,aACXD,WAAWE,MAAM,U,WA7GI5W,I,EACpBC,QAAU,CAAE,OAAQ,OAAQ,QAAS,S,6QCG5C4W,YAAA,WACE/V,QAAQe,IAAI,U,EAGdiV,aAAA,a,WAR2B9W,I,EACpBC,QAAU,CAAC,QAAS,W,6QCE3B1C,QAAA,WACET,KAAK0N,YAAc1N,KAAKC,KAAKC,IAAI,UAAY,U,EAG/C2J,OAAA,SAAOxI,GAAQ,IAAD,OACZA,EAAM6C,iBAENlE,KAAKyF,kBAAkB5F,SAAS,SAAAqF,GAC9BA,EAAOU,UAAUiE,OAAO,EAAK6D,iB,WAXNxK,I,EACpBC,QAAU,CAAE,e,yDCDjB8W,EAAOnN,gBACXA,mBAAsB,CACpBoN,eAAgB,WACd,MAAM,iSAGuID,EAAKE,KAHlJ,mBAGyKF,EAAKE,KAH9K,iKAIiJF,EAAKG,OAJtJ,mBAI+KH,EAAKG,OAJpL,+IAK+HH,EAAKI,OALpI,mBAK6JJ,EAAKI,OALlK,qLAMqKJ,EAAKK,KAN1K,mBAMiML,EAAKK,KANtM,+QASoIL,EAAKM,SATzI,mBASoKN,EAAKM,SATzK,6IAU6HN,EAAKO,MAVlI,mBAU0JP,EAAKO,MAV/J,2IAW2HP,EAAKlb,KAXhI,mBAWuJkb,EAAKlb,KAX5J,oJAYoIkb,EAAKQ,QAZzI,mBAYmKR,EAAKQ,QAZxK,oJAaoIR,EAAKS,QAbzI,mBAamKT,EAAKS,QAbxK,0KAc0JT,EAAKU,QAd/J,mBAcyLV,EAAKU,QAd9L,0KAe0JV,EAAKW,OAf/J,mBAewLX,EAAKW,OAf7L,0QAkBiIX,EAAKY,YAlBtI,mBAkBoKZ,EAAKY,YAlBzK,+UAsB0IZ,EAAKa,KAtB/I,mBAsBsKb,EAAKa,KAtB3K,gKAuBgJb,EAAKc,KAvBrJ,mBAuB4Kd,EAAKc,KAvBjL,mVA6ByFd,EAAKe,eA7B9F,iBA6B6Hf,EAAKla,IA7BlI,+IA+B+Eka,EAAKK,KA/BpF,0HAgCiFL,EAAKgB,OAhCtF,mb,IA+CEC,E,WACJ,WAAYjV,GACVjG,KAAKmb,cAAWnL,EAChBhQ,KAAKiG,QAAUA,EACfjG,KAAKwL,OAASvF,EAAQuF,OACtBxL,KAAKob,QAAUnV,EAAQoV,eACvBrb,KAAKsb,YAActb,KAAKob,QAAQxS,cAAc,kCAC9C5I,KAAKub,sBAAwBvb,KAAKob,QAAQxS,cAAc,qCACxD5I,KAAKwb,aAAexb,KAAKob,QAAQxS,cAAc,+BAE/C5I,KAAKyb,QACLzb,KAAK0b,uB,2BAGPA,qBAAA,WACE1b,KAAKsb,YAAYrR,iBAAiB,QAASjK,KAAK2b,SAAS9X,KAAK7D,OAC9DA,KAAKsb,YAAYrR,iBAAiB,UAAWjK,KAAK2b,SAAS9X,KAAK7D,OAChEA,KAAKwb,aAAavR,iBAAiB,QAASjK,KAAK4b,MAAM/X,KAAK7D,Q,EAG9D2b,SAAA,SAASta,GACP,IAAIO,EAAQP,EAAM6D,OAAOtD,MAAMia,YAGT7L,IAAlBhQ,KAAKmb,SACPnb,KAAK8b,aAAala,GAGT5B,KAAK+b,MAAMna,GACpB5B,KAAKuM,MAAM3K,GAIX5B,KAAKyb,S,EAITK,aAAA,SAAala,GAAQ,IAAD,OAClBE,MAAMC,KAAK,CACTC,KAAM,MACNjC,IAAK,wBACLoC,QAAS,SAAC3B,GACR,EAAK2a,SAAW3a,EAASnB,KAAI,SAAA2c,GAAO,OAAI,IAAIC,OAAOD,EAAQlc,OAAQkc,EAAQlL,YACvE,EAAKiL,MAAMna,IACb,EAAK2K,MAAM3K,O,EAOnBma,MAAA,SAAMna,GACJ,OAAO5B,KAAKmb,SAASpL,MAAK,SAAAmM,GAAK,OAAIA,EAAMC,KAAKva,O,EAGhD2K,MAAA,SAAM3K,GACJE,MAAMC,KAAK,CACThC,IAAI,cAAeqc,mBAAmBxa,GACtCI,KAAM,OACN8B,MAAO9D,KAAKyb,MAAM5X,KAAK7D,MACvBmC,QAASnC,KAAKqc,UAAUxY,KAAK7D,S,EAIjC4b,MAAA,SAAMva,GACJ,GAAyB,MAArBrB,KAAKsc,aAAT,CAEA,IAAIzP,EAAa,IAAIC,gBAAgB9M,KAAKsc,cAC1Ctc,KAAKwL,OAAOyB,iBAAiBJ,GAC7B7M,KAAKiG,QAAQsW,U,EAGfF,UAAA,SAAUT,GACR5b,KAAKsc,aAAeV,EACpB5b,KAAKub,sBAAsBjN,MAAMC,QAAU,S,EAG7CkN,MAAA,WACEzb,KAAKub,sBAAsBjN,MAAMC,QAAU,OAC3CvO,KAAKsc,aAAe,M,KAGxB3X,SAASsF,iBAAiB,mBAAmB,SAAS5I,GACpD,IAAI6Z,EAAgB7Z,EAAM6D,Y,gBCvI5B+E,iBAAiB,4BAA4B,SAAA5I,GAAU,IAC7C6D,EAAmB7D,EAAnB6D,OAAQyH,EAAWtL,EAAXsL,OACRzN,EAAayN,EAAbzN,GAAIsd,EAAS7P,EAAT6P,KACZtX,EAAOyE,mBAAmB,cAA1B,gCAC2BzK,EAD3B,0FAEsCA,EAFtC,2GAG4Csd,EAAKrb,KAHjD,8BAQF8I,iBAAiB,uBAAuB,SAAA5I,GAAU,IACxCnC,EAAOmC,EAAMsL,OAAbzN,GACQyF,SAASyC,eAAT,iBAAyClI,GACjD0G,UAAUC,OAAO,6BAG3BoE,iBAAiB,0BAA0B,SAAA5I,GAAU,IAAD,EACzBA,EAAMsL,OAAvBzN,EAD0C,EAC1CA,GAAIud,EADsC,EACtCA,SACY9X,SAASyC,eAAT,0BAAkDlI,GAC1DoP,MAAMoO,MAAWD,EAAjC,OAGFxS,iBAAiB,uBAAuB,SAAA5I,GACtCA,EAAM6C,iBADyC,MAEzB7C,EAAMsL,OAApBzN,EAFuC,EAEvCA,GAAI4E,EAFmC,EAEnCA,MACNmC,EAAUtB,SAASyC,eAAT,iBAAyClI,GACzD+G,EAAQL,UAAUE,IAAI,wBACtBG,EAAQpB,aAAa,QAASf,MAGhCmG,iBAAiB,qBAAqB,SAAA5I,GAAU,IACtCnC,EAAOmC,EAAMsL,OAAbzN,GACQyF,SAASyC,eAAT,iBAAyClI,GACjD0G,UAAUE,IAAI,+B,gBClCxBnB,SAASsF,iBAAiB,mBAAmB,YAE7B,CACZ0S,KADY,WAEV3c,KAAK4c,mBAGPA,gBALY,WAMKjY,SAASkY,iBAAiB,cAElChd,SAAQ,SAASid,GACtB,IAAMlL,EAASkL,EAAMC,mBACrBC,EAAWpL,EAAMpP,UAEjBsa,EAAM7S,iBAAiB,UAAU,SAASpL,GACxC,IAAIoe,EAAW,IAGbA,EADEjd,KAAKkd,OAASld,KAAKkd,MAAMxS,OAAS,GACvB1K,KAAK+X,aAAc,0BAA6B,IAAKrR,QAAS,UAAW1G,KAAKkd,MAAMxS,QAEtF7L,EAAEqG,OAAOtD,MAAM6Q,MAAO,MAAO0K,OAIxCvL,EAAMhJ,cAAe,QAASpG,UAAYya,EAE1CrL,EAAMpP,UAAYwa,WAOtBL,W,4EChBRhY,SAASsF,iBAAiB,mBAAmB,WAC3CmT,QAAY,oBAdP,WACL,IAAMC,EAAU/T,OAAOgU,KACvB,IACEhU,OAAOgU,UAAOtN,EACd,IAAMuN,EAAKC,gBAAiBrc,OAE5B,OADAmI,OAAOgU,KAAOD,EACPE,EACP,MAAO1e,GAEP,OAAO2e,gBAAiBrc,QAKOsc,GAAgB,CAAEC,QAAS,IAAKC,KAAM,U,mECfzE,SAASC,EAAiB3X,EAAS0S,IACjCkF,QAAM5X,EAAS,CACb8G,QAAS4L,EACTmF,cAAc,EACdC,SAAU,SAACha,GACTA,EAASia,aAKfrZ,SAASsF,iBAAiB,mBAAmB,YAC3C4T,QAAMlZ,SAASkY,iBAAiB,yBAGhC,IAAIoB,EAAY,IAAIC,IAAJ,CAAgB,yBAChCD,EAAU7c,GAAG,WAAW,SAACvC,GAAQ+e,EAAiB/e,EAAEsf,QAAS,cAC7DF,EAAU7c,GAAG,SAAS,SAACvC,GAAQ+e,EAAiB/e,EAAEsf,QAAS,kB","file":"js/787-5802001d4a6be91bf34e.js","sourcesContent":["function webpackEmptyContext(req) {\n\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\te.code = 'MODULE_NOT_FOUND';\n\tthrow e;\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nwebpackEmptyContext.id = 6463;\nmodule.exports = webpackEmptyContext;","var map = {\n\t\"./autocomplete_controller.js\": 507,\n\t\"./braintree_controller.js\": 8290,\n\t\"./carrierautocomplete_controller.js\": 9756,\n\t\"./carriersaddress_controller.js\": 6012,\n\t\"./checkbox_controller.js\": 8308,\n\t\"./drag_controller.js\": 6626,\n\t\"./fill_form_controller.js\": 9079,\n\t\"./infinite_scroll_controller.js\": 5483,\n\t\"./loads_bulk_controller.js\": 8784,\n\t\"./locationsaddress_controller.js\": 3569,\n\t\"./mentions_controller.js\": 1072,\n\t\"./navbar_controller.js\": 5863,\n\t\"./nested_form_controller.js\": 8769,\n\t\"./notifications_controller.js\": 9968,\n\t\"./paypal_controller.js\": 8081,\n\t\"./pricing_controller.js\": 3209,\n\t\"./regionmap_controller.js\": 2061,\n\t\"./search_controller.js\": 4282,\n\t\"./search_topbar_controller.js\": 6282,\n\t\"./statusdropdown_controller.js\": 4983,\n\t\"./stopsearch_controller.js\": 2019,\n\t\"./stoptypeform_controller.js\": 7991,\n\t\"./stripe_controller.js\": 2254,\n\t\"./switch_controller.js\": 1931,\n\t\"./toggle_controller.js\": 5467,\n\t\"controllers/autocomplete_controller.js\": 507,\n\t\"controllers/braintree_controller.js\": 8290,\n\t\"controllers/carrierautocomplete_controller.js\": 9756,\n\t\"controllers/carriersaddress_controller.js\": 6012,\n\t\"controllers/checkbox_controller.js\": 8308,\n\t\"controllers/drag_controller.js\": 6626,\n\t\"controllers/fill_form_controller.js\": 9079,\n\t\"controllers/infinite_scroll_controller.js\": 5483,\n\t\"controllers/loads_bulk_controller.js\": 8784,\n\t\"controllers/locationsaddress_controller.js\": 3569,\n\t\"controllers/mentions_controller.js\": 1072,\n\t\"controllers/navbar_controller.js\": 5863,\n\t\"controllers/nested_form_controller.js\": 8769,\n\t\"controllers/notifications_controller.js\": 9968,\n\t\"controllers/paypal_controller.js\": 8081,\n\t\"controllers/pricing_controller.js\": 3209,\n\t\"controllers/regionmap_controller.js\": 2061,\n\t\"controllers/search_controller.js\": 4282,\n\t\"controllers/search_topbar_controller.js\": 6282,\n\t\"controllers/statusdropdown_controller.js\": 4983,\n\t\"controllers/stopsearch_controller.js\": 2019,\n\t\"controllers/stoptypeform_controller.js\": 7991,\n\t\"controllers/stripe_controller.js\": 2254,\n\t\"controllers/switch_controller.js\": 1931,\n\t\"controllers/toggle_controller.js\": 5467\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 7074;","// Load all the channels within this directory and all subdirectories.\n// Channel files must be named *_channel.js.\n\nconst channels = require.context('.', true, /_channel\\.js$/)\nchannels.keys().forEach(channels)\n","import { Controller } from \"stimulus\";\r\nimport axios from \"axios\";\r\nimport autocomplete from \"autocomplete.js\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\r\n \"field\",\r\n \"suggestionTemplate\",\r\n \"hiddenField\",\r\n \"showDetails\",\r\n ];\r\n\r\n source() {\r\n const url = this.data.get(\"url\");\r\n return (query, callback) => {\r\n axios.get(url, { params: { query } }).then((response) => {\r\n callback(response.data);\r\n });\r\n };\r\n }\r\n\r\n connect() {\r\n this.ac = autocomplete(\r\n this.fieldTarget,\r\n {\r\n autoselect: true,\r\n hint: false,\r\n },\r\n [\r\n {\r\n source: this.source(),\r\n debounce: 200,\r\n templates: {\r\n empty:\r\n '

No Locations Found. Please try again.

',\r\n suggestion: function (suggestion) {\r\n return suggestion.name;\r\n //return this.showData(suggestion)\r\n },\r\n },\r\n },\r\n ]\r\n ).on(\"autocomplete:selected\", (event, suggestion, dataset, context) => {\r\n this.ac.autocomplete.setVal(suggestion.name);\r\n this.insertData(suggestion.id);\r\n this.insertDetails(suggestion.id);\r\n });\r\n }\r\n\r\n //insert the data into the hidden field\r\n insertData(data) {\r\n this.hiddenFieldTarget.value = data;\r\n }\r\n\r\n insertDetails(data) {\r\n const record_id = data;\r\n Rails.ajax({\r\n type: \"GET\",\r\n contentType: \"application/json; charset=utf-8\",\r\n url: `/locations/${record_id}.json`,\r\n dataType: \"json\",\r\n success: (e) => {\r\n this.showData(e);\r\n },\r\n });\r\n }\r\n //insert the data into the DOM\r\n showData(data) {\r\n //console.log(data)\r\n var modelHTML = \"\";\r\n modelHTML += this.modelTemplate(data);\r\n this.showDetailsTarget.innerHTML = modelHTML;\r\n }\r\n\r\n modelTemplate(model) {\r\n return `\r\n
Location Details
\r\n\r\n
\r\n
${model.street}
\r\n
${model.city} ${model.state} ${model.zip}
\r\n
${model.contact_name}
\r\n
${model.phone}
\r\n
${model.contact_email}
\r\n
${model.contact_phone}
\r\n
Edit Location Details
\r\n
\r\n\r\n `;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [ \"dropin\", \"form\" ]\n\n connect() {\n braintree.dropin.create({\n authorization: this.data.get(\"clientToken\"),\n container: this.dropinTarget,\n //threeDSecure: true,\n paypal: {\n flow: \"vault\"\n },\n // Uncomment this to only display PayPal in the Drop-in UI\n //paymentOptionPriority: ['paypal']\n },\n this.clientCreated.bind(this)\n )\n }\n\n clientCreated(error, instance) {\n if (error) {\n console.error(\"Error setting up Braintree dropin:\", error)\n return\n }\n\n this.instance = instance\n }\n\n submit(event) {\n event.preventDefault()\n\n this.instance.requestPaymentMethod(this.paymentMethod.bind(this))\n }\n\n paymentMethod(error, payload) {\n if (error) {\n console.error(\"Error with payment method:\", error)\n return\n }\n\n this.addHiddenField(\"account[processor]\", \"braintree\")\n this.addHiddenField(\"account[card_token]\", payload.nonce)\n\n Rails.fire(this.formTarget, \"submit\")\n }\n\n addHiddenField(name, value) {\n let hiddenInput = document.createElement(\"input\")\n hiddenInput.setAttribute(\"type\", \"hidden\")\n hiddenInput.setAttribute(\"name\", name)\n hiddenInput.setAttribute(\"value\", value)\n this.formTarget.appendChild(hiddenInput)\n }\n}\n","import { Controller } from \"stimulus\";\r\nimport axios from \"axios\";\r\nimport autocomplete from \"autocomplete.js\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\r\n \"field\",\r\n \"suggestionTemplate\",\r\n \"hiddenField\",\r\n \"showDetails\",\r\n ];\r\n\r\n source() {\r\n const url = this.data.get(\"url\");\r\n return (query, callback) => {\r\n axios.get(url, { params: { query } }).then((response) => {\r\n callback(response.data);\r\n });\r\n };\r\n }\r\n\r\n connect() {\r\n this.ac = autocomplete(\r\n this.fieldTarget,\r\n {\r\n autoselect: true,\r\n hint: false,\r\n },\r\n [\r\n {\r\n source: this.source(),\r\n debounce: 400,\r\n templates: {\r\n empty:\r\n '

No Carriers Found. Please try again.

',\r\n suggestion: function (suggestion) {\r\n return suggestion.name;\r\n //return this.showData(suggestion)\r\n },\r\n },\r\n },\r\n ]\r\n ).on(\"autocomplete:selected\", (event, suggestion, dataset, context) => {\r\n this.ac.autocomplete.setVal(suggestion.name);\r\n this.insertData(suggestion.id);\r\n this.insertDetails(suggestion.id);\r\n });\r\n }\r\n\r\n //insert the data into the hidden field\r\n insertData(data) {\r\n this.hiddenFieldTarget.value = data;\r\n }\r\n\r\n insertDetails(data) {\r\n const record_id = data;\r\n Rails.ajax({\r\n type: \"GET\",\r\n contentType: \"application/json; charset=utf-8\",\r\n url: `/carriers/${record_id}.json`,\r\n dataType: \"json\",\r\n success: (e) => {\r\n this.showData(e);\r\n },\r\n });\r\n }\r\n //insert the data into the DOM\r\n showData(data) {\r\n //console.log(data)\r\n var modelHTML = \"\";\r\n modelHTML += this.modelTemplate(data);\r\n this.showDetailsTarget.innerHTML = modelHTML;\r\n }\r\n\r\n modelTemplate(model) {\r\n return `\r\n
Carrier Details
\r\n\r\n
\r\n
${model.street}
\r\n
${model.city} ${model.state} ${model.zip}
\r\n
${model.contact_name}
\r\n
${model.phone}
\r\n
${model.contact_email}
\r\n
${model.contact_phone}
\r\n
Edit Carrier Details
\r\n
\r\n\r\n `;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"carrier\"];\r\n connect() {\r\n console.log(\"Hello from Stimulus JS\");\r\n }\r\n\r\n onSelectCarrier(event) {\r\n const carrier_id = event.target.value;\r\n //console.log(carrier_id);\r\n\r\n Rails.ajax({\r\n type: \"GET\",\r\n contentType: \"application/json; charset=utf-8\",\r\n url: `/carriers/${carrier_id}.json`,\r\n dataType: \"json\",\r\n success: (data) => {\r\n this.showData(data);\r\n },\r\n });\r\n }\r\n\r\n showData(data) {\r\n //console.log(data);\r\n var carrierHTML = \"\";\r\n carrierHTML += this.carrierTemplate(data);\r\n this.carrierTarget.innerHTML = carrierHTML;\r\n }\r\n\r\n carrierTemplate(carrier) {\r\n return `\r\n
carrier Details
\r\n\r\n
\r\n
${carrier.street}
\r\n
${carrier.city} ${carrier.state} ${carrier.zip}
\r\n
${carrier.contact_name}
\r\n
${carrier.phone}
\r\n
${carrier.contact_email}
\r\n
${carrier.contact_phone}
\r\n
Edit Carrier Details
\r\n
\r\n\r\n `;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"checkboxContainer\", \"checkbox\", \"toggleable\"];\r\n\r\n handleChangeCheckbox(ev) {\r\n //console.log(this.checkboxTarget.checked);\r\n //console.log(ev.target.checked);\r\n\r\n this.toggleableTargets.forEach((target) => {\r\n if (this.checkboxTarget.checked) {\r\n target.classList.remove(\"hidden\");\r\n } else {\r\n target.classList.add(\"hidden\");\r\n }\r\n });\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\nimport Sortable from \"sortablejs\";\r\n\r\nexport default class extends Controller {\r\n connect() {\r\n this.sortable = Sortable.create(this.element, {\r\n group: \"shared\",\r\n animation: 150,\r\n onEnd: this.end.bind(this),\r\n });\r\n }\r\n\r\n end(event) {\r\n let id = event.item.dataset.id;\r\n let data = new FormData();\r\n //add 1 to the index as acts_as_list starts at 1\r\n data.append(\"position\", event.newIndex + 1);\r\n\r\n Rails.ajax({\r\n url: this.data.get(\"url\").replace(\":id\", id),\r\n type: \"PATCH\",\r\n data: data,\r\n });\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"buttons\", \"notes\"];\r\n\r\n initialize() {\r\n this.fillForm = this.fillForm.bind(this);\r\n }\r\n\r\n connect() {\r\n this.getTemplates();\r\n console.log(this.notesTarget.innerHTML);\r\n }\r\n\r\n getTemplates() {\r\n // console.log(\"getting the templates!\");\r\n // Rails.ajax({\r\n // url: \"/loads/bulk/mark_delivered\",\r\n // type: \"PATCH\",\r\n // data: data,\r\n // });\r\n let templates = [\r\n {\r\n id: 1,\r\n title: \"Tony\",\r\n body: \"Call Tony with any problems @209.456.0789\",\r\n },\r\n {\r\n id: 2,\r\n title: \"Joe\",\r\n body: \"Call Joe with any problems @209.613.6865\",\r\n },\r\n {\r\n id: 3,\r\n title: \"Leanna\",\r\n body: \"Call Leanna with any problems @209.608.1994\",\r\n },\r\n {\r\n id: 4,\r\n title: \"Chance\",\r\n body: \"Call Chance with any problems @209.857.9605\",\r\n },\r\n ];\r\n templates.forEach((temp) => {\r\n const btn = document.createElement(\"div\");\r\n btn.innerHTML = temp.title;\r\n btn.setAttribute(\r\n \"class\",\r\n \"inline-flex items-center px-2.5 py-1.5 border border-transparent text-xs font-medium rounded text-blue-700 bg-blue-100 hover:bg-blue-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 cursor-pointer ml-1\"\r\n );\r\n //btn.setAttribute(\r\n // \"data-action\",\r\n // `click->fill-form#fillForm(${temp.body}))`\r\n //);\r\n btn.onclick = function () {\r\n document.getElementById(\"load_notes\").value = temp.body;\r\n };\r\n this.buttonsTarget.appendChild(btn);\r\n });\r\n }\r\n\r\n fillForm(body) {\r\n this.notesTarget.value = body;\r\n }\r\n}\r\n","// Load all the controllers within this directory and all subdirectories.\n// Controller files must be named *_controller.js.\n\nimport { Application } from \"stimulus\";\nimport { definitionsFromContext } from \"stimulus/webpack-helpers\";\n\nconst application = Application.start();\nconst context = require.context(\"controllers\", true, /_controller\\.js$/);\napplication.load(definitionsFromContext(context));\n\nimport { Alert, Dropdown, Modal, Tabs } from \"tailwindcss-stimulus-components\";\napplication.register(\"alert\", Alert);\napplication.register(\"dropdown\", Dropdown);\napplication.register(\"modal\", Modal);\napplication.register(\"tabs\", Tabs);\n\nimport Flatpickr from \"stimulus-flatpickr\";\napplication.register(\"flatpickr\", Flatpickr);\n\n// import CheckboxSelectAll from \"stimulus-checkbox-select-all\";\n// application.register(\"checkbox-select-all\", CheckboxSelectAll);\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"area\", \"entries\", \"pagination\"];\r\n\r\n initialize() {\r\n this.intersectionObserver = new IntersectionObserver((entries) =>\r\n this.processIntersectionEntries(entries)\r\n );\r\n }\r\n\r\n connect() {\r\n this.intersectionObserver.observe(this.paginationTarget);\r\n }\r\n\r\n disconnect() {\r\n this.intersectionObserver.unobserve(this.paginationTarget);\r\n }\r\n\r\n processIntersectionEntries(entries) {\r\n entries.forEach((entry) => {\r\n if (entry.isIntersecting) {\r\n this.loadMore();\r\n }\r\n });\r\n }\r\n\r\n //Older scroll code\r\n scroll() {\r\n let url = this.paginationTarget.querySelector(\"a[rel='next']\").href;\r\n\r\n var height = Math.max(\r\n this.areaTarget.scrollHeight,\r\n this.areaTarget.offsetHeight,\r\n this.areaTarget.clientHeight\r\n );\r\n\r\n if (this.areaTarget.scrollTop >= height - window.innerHeight) {\r\n this.loadMore(url); // no longer valid as url is not a param\r\n }\r\n }\r\n\r\n loadMore() {\r\n // prevent duplicate loading if scrolling too fast\r\n if (this.loading) {\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n\r\n let next_page = this.paginationTarget.querySelector(\"a[rel='next']\");\r\n if (next_page == null) {\r\n return;\r\n }\r\n let url = next_page.href;\r\n\r\n Rails.ajax({\r\n type: \"GET\",\r\n url: url,\r\n dataType: \"json\",\r\n success: (data) => {\r\n console.log(data);\r\n this.entriesTarget.insertAdjacentHTML(\"beforeend\", data.entries);\r\n this.paginationTarget.innerHTML = data.pagination;\r\n this.loading = false;\r\n },\r\n });\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"checkboxAll\", \"checkbox\", \"updateButtons\"];\r\n\r\n initialize() {\r\n this.toggle = this.toggle.bind(this);\r\n this.refresh = this.refresh.bind(this);\r\n }\r\n\r\n connect() {\r\n if (!this.hasCheckboxAllTarget) return;\r\n\r\n this.checkboxAllTarget.addEventListener(\"change\", this.toggle);\r\n this.checkboxTargets.forEach((checkbox) =>\r\n checkbox.addEventListener(\"change\", this.refresh)\r\n );\r\n this.refresh();\r\n }\r\n\r\n disconnect() {\r\n if (!this.hasCheckboxAllTarget) return;\r\n\r\n this.checkboxAllTarget.removeEventListener(\"change\", this.toggle);\r\n this.checkboxTargets.forEach((checkbox) =>\r\n checkbox.removeEventListener(\"change\", this.refresh)\r\n );\r\n }\r\n\r\n toggle(e) {\r\n e.preventDefault();\r\n\r\n this.checkboxTargets.forEach((checkbox) => {\r\n checkbox.checked = e.target.checked;\r\n this.triggerInputEvent(checkbox);\r\n });\r\n\r\n // this.updateButtonsTarget.classList.toggle(\"hidden\");\r\n }\r\n\r\n markDelivered(event) {\r\n // Clicking button does not refresh\r\n event.preventDefault();\r\n\r\n let data = new FormData();\r\n this.checked.forEach((checkbox) => data.append(\"ids[]\", checkbox.value));\r\n\r\n Rails.ajax({\r\n url: \"/loads/bulk/mark_delivered\",\r\n type: \"PATCH\",\r\n data: data,\r\n });\r\n }\r\n markBooked(event) {\r\n // Clicking button does not refresh\r\n event.preventDefault();\r\n\r\n let data = new FormData();\r\n this.checked.forEach((checkbox) => data.append(\"ids[]\", checkbox.value));\r\n\r\n Rails.ajax({\r\n url: \"/loads/bulk/mark_booked\",\r\n type: \"PATCH\",\r\n data: data,\r\n });\r\n }\r\n markCancelled(event) {\r\n // Clicking button does not refresh\r\n event.preventDefault();\r\n\r\n let data = new FormData();\r\n this.checked.forEach((checkbox) => data.append(\"ids[]\", checkbox.value));\r\n\r\n Rails.ajax({\r\n url: \"/loads/bulk/mark_cancelled\",\r\n type: \"PATCH\",\r\n data: data,\r\n });\r\n }\r\n\r\n refresh() {\r\n const checkboxesCount = this.checkboxTargets.length;\r\n const checkboxesCheckedCount = this.checked.length;\r\n\r\n this.checkboxAllTarget.checked = checkboxesCheckedCount > 0;\r\n this.checkboxAllTarget.indeterminate =\r\n checkboxesCheckedCount > 0 && checkboxesCheckedCount < checkboxesCount;\r\n }\r\n\r\n triggerInputEvent(checkbox) {\r\n const event = new Event(\"input\", { bubbles: false, cancelable: true });\r\n\r\n checkbox.dispatchEvent(event);\r\n }\r\n\r\n get checked() {\r\n return this.checkboxTargets.filter((checkbox) => checkbox.checked);\r\n }\r\n\r\n get unchecked() {\r\n return this.checkboxTargets.filter((checkbox) => !checkbox.checked);\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"location\"];\r\n connect() {\r\n //console.log(\"Hello from Stimulus JS\");\r\n }\r\n\r\n onSelectLocation(event) {\r\n const location_id = event.target.value;\r\n //console.log(location_id);\r\n\r\n Rails.ajax({\r\n type: \"GET\",\r\n contentType: \"application/json; charset=utf-8\",\r\n url: `/locations/${location_id}.json`,\r\n dataType: \"json\",\r\n success: (data) => {\r\n this.showData(data);\r\n },\r\n });\r\n }\r\n\r\n //insert the data into the DOM\r\n showData(data) {\r\n //console.log(data)\r\n var locationHTML = \"\";\r\n locationHTML += this.locationTemplate(data);\r\n this.locationTarget.innerHTML = locationHTML;\r\n }\r\n\r\n locationTemplate(location) {\r\n return `\r\n
Location Details
\r\n\r\n
\r\n
${location.street}
\r\n
${location.city} ${location.state} ${location.zip}
\r\n
${location.contact_name}
\r\n
${location.phone}
\r\n
${location.contact_email}
\r\n
${location.contact_phone}
\r\n
Edit Location Details
\r\n
\r\n\r\n `;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\"\nimport Tribute from \"tributejs\"\nimport Trix from \"trix\"\n\nexport default class extends Controller {\n static targets = [ \"field\" ]\n\n connect() {\n this.editor = this.fieldTarget.editor\n this.initializeTribute()\n }\n\n initializeTribute() {\n this.tribute = new Tribute({\n allowSpaces: true,\n lookup: 'name',\n values: this.fetchUsers,\n })\n this.tribute.attach(this.fieldTarget)\n this.fieldTarget.addEventListener('tribute-replaced', this.replaced)\n this.tribute.range.pasteHtml = this._pasteHtml.bind(this)\n }\n\n disconnect() {\n this.tribute.detach(this.fieldTarget)\n }\n\n fetchUsers(text, callback) {\n fetch(`/users/mentions.json?query=${text}`)\n .then(response => response.json())\n .then(users => callback(users))\n .catch(error => callback([]))\n }\n\n replaced(e) {\n let mention = e.detail.item.original\n let attachment = new Trix.Attachment({\n content: mention.content,\n sgid: mention.sgid,\n })\n this.editor.insertAttachment(attachment)\n this.editor.insertString(\" \")\n }\n\n _pasteHtml(html, startPos, endPos) {\n let range = this.editor.getSelectedRange()\n let position = range[0]\n let length = endPos - startPos\n\n this.editor.setSelectedRange([position - length, position])\n this.editor.deleteInDirection(\"backward\")\n }\n}\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"sidebar\"];\r\n\r\n connect() {\r\n this.toggleClass = this.data.get(\"class\") || \"hidden\";\r\n }\r\n\r\n toggleSidebar(event) {\r\n event.preventDefault();\r\n\r\n this.toggleableTargets.forEach((target) => {\r\n target.classList.toggle(this.toggleClass);\r\n });\r\n }\r\n}\r\n","// Visit The Stimulus Handbook for more details\r\n// https://stimulusjs.org/handbook/introduction\r\n//\r\n// This example controller works with specially annotated HTML like:\r\n//\r\n//

Tasks

\r\n//
\r\n// \r\n//\r\n// <%= form.fields_for :tasks do |task| %>\r\n// <%= render \"task_fields\", form: task %>\r\n// <% end %>\r\n//\r\n//
\r\n// <%= link_to \"Add Task\", \"#\", class: \"btn btn-outline-primary\", data: { action: \"click->nested-form#add_association\" } %>\r\n//
\r\n//
\r\n//\r\n// # _task_fields.html.erb\r\n// <%= content_tag :div, class: \"nested-fields\", data: { new_record: form.object.new_record? } do %>\r\n//
\r\n// <%= form.label :description %>\r\n// <%= form.text_field :description, class: 'form-control' %>\r\n// <%= link_to \"Remove\", \"#\", data: { action: \"click->nested-form#remove_association\" } %>\r\n//
\r\n//\r\n// <%= form.hidden_field :_destroy %>\r\n// <% end %>\r\n\r\nimport { Controller } from \"stimulus\"\r\n\r\nexport default class extends Controller {\r\n static targets = [ \"links\", \"template\" ]\r\n\r\n connect() {\r\n this.wrapperClass = this.data.get(\"wrapperClass\") || \"nested-fields\"\r\n console.log(this.wrapperClass)\r\n }\r\n\r\n add_association(event) {\r\n event.preventDefault()\r\n\r\n var content = this.templateTarget.innerHTML.replace(/NEW_RECORD/g, new Date().getTime())\r\n this.linksTarget.insertAdjacentHTML('beforebegin', content)\r\n }\r\n\r\n remove_association(event) {\r\n event.preventDefault()\r\n \r\n\r\n let wrapper = event.target.closest(\".\" + this.wrapperClass)\r\n console.log(wrapper)\r\n // New records are simply removed from the page\r\n if (wrapper.dataset.newRecord == \"true\") {\r\n console.log(\"not removed\")\r\n wrapper.remove()\r\n\r\n // Existing records are hidden and flagged for deletion\r\n } else {\r\n console.log(\"flagged\")\r\n wrapper.querySelector(\"input[name*='_destroy']\").value = 1\r\n wrapper.style.display = 'none'\r\n }\r\n }\r\n}","// Action Cable provides the framework to deal with WebSockets in Rails.\n// You can generate new channels where WebSocket features live using the `rails generate channel` command.\n\nimport { createConsumer } from \"@rails/actioncable\"\n\nexport default createConsumer()\n","import { Controller } from \"stimulus\"\nimport consumer from \"channels/consumer\"\n\nexport default class extends Controller {\n static targets = [\"badge\", \"list\", \"placeholder\", \"notification\"]\n\n connect() {\n this.subscription = consumer.subscriptions.create({ channel: \"NotificationChannel\" }, {\n connected: this._connected.bind(this),\n disconnected: this._disconnected.bind(this),\n received: this._received.bind(this)\n })\n\n if (this.hasUnread()) this.showUnreadBadge()\n if (this.empty()) this.showPlaceholder()\n }\n\n _connected() {\n }\n\n _disconnected() {\n }\n\n _received(data) {\n // Ignore if user is signed in to a different account\n if (data.account_id && data.account_id != this.data.get(\"accountId\")) {\n return\n }\n\n // Regular notifications get added to the navbar\n if (data.html) {\n this.hidePlaceholder()\n this.listTarget.insertAdjacentHTML('afterbegin', data.html)\n this.showUnreadBadge()\n }\n\n // Native notifications trigger a browser notification\n if (data.browser) {\n this.checkPermissionAndNotify(data.browser)\n }\n }\n\n // Called when the notifications view opens\n open() {\n this.hideUnreadBadge()\n this.markAsRead()\n }\n\n hasUnread() {\n return this.notificationTargets.some((target) => target.dataset.readAt == undefined)\n }\n\n showUnreadBadge() {\n this.badgeTarget.classList.remove(\"hidden\")\n }\n\n hideUnreadBadge() {\n this.badgeTarget.classList.add(\"hidden\")\n }\n\n markAllAsRead() {\n let ids = this.notificationTargets.map((target) => target.dataset.id)\n this.subscription.perform(\"mark_as_read\", {ids: ids})\n }\n\n markAsRead(event) {\n let id = event.currentTarget.dataset.id\n if (id == null) return\n this.subscription.perform(\"mark_as_read\", {ids: [id]})\n\n // Uncomment to visual mark notification read\n // event.currentTarget.dataset.readAt= new Date()\n }\n\n markAsInteracted(event) {\n let id = event.currentTarget.dataset.id\n if (id == null) return\n this.subscription.perform(\"mark_as_interacted\", {ids: [id]})\n\n // Uncomment to visually mark notification as interacted\n // event.currentTarget.dataset.interactedAt = new Date()\n }\n\n empty() {\n return this.notificationTargets.length == 0\n }\n\n showPlaceholder() {\n if (this.hasPlaceholderTarget) this.placeholderTarget.classList.remove(\"hidden\")\n }\n\n hidePlaceholder() {\n if (this.hasPlaceholderTarget) this.placeholderTarget.classList.add(\"hidden\")\n }\n\n // Browser notifications\n checkPermissionAndNotify(data) {\n // Return if not supported\n if (!(\"Notification\" in window)) return\n\n if (Notification.permission === \"granted\") {\n this.browserNotification(data)\n\n } else if (Notification.permission !== \"denied\") {\n Notification.requestPermission().then((permission) => {\n if (permission === \"granted\") {\n this.browserNotification(data)\n }\n })\n }\n }\n\n browserNotification(data) {\n new Notification(data.title, data.options)\n }\n}\n\n","import { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [ \"button\", \"form\" ]\n\n connect() {\n braintree.client.create({\n authorization: this.data.get(\"clientToken\")\n }, this.clientCreated.bind(this))\n }\n\n disconnect() {\n // Remove the paypal button on disconnect\n this.buttonTarget.querySelector(\".paypal-button\").remove()\n }\n\n clientCreated(error, clientInstance) {\n if (error) {\n console.error(\"Error creating client\", error)\n return\n }\n\n braintree.paypalCheckout.create({\n client: clientInstance\n }, this.paypalCreated.bind(this))\n }\n\n paypalCreated(paypalCheckoutErr, paypalCheckoutInstance) {\n // Stop if there was a problem creating PayPal Checkout.\n // This could happen if there was a network error or if it's incorrectly\n // configured.\n if (paypalCheckoutErr) {\n console.error('Error creating PayPal Checkout:', paypalCheckoutErr);\n return;\n }\n\n // Set up PayPal with the checkout.js library\n paypal.Button.render({\n env: this.data.get(\"env\"), // or 'sandbox'\n\n // https://developer.paypal.com/docs/checkout/how-to/customize-button/#\n style: {\n color: 'gold', // gold blue silver black\n shape: 'rect', // shape: pill rect\n size: 'medium', // size: small medium large responsive\n label: 'pay', // label: checkout credit pay buynow paypal installment\n tagline: false, // tagline: true false\n },\n\n payment: () => {\n return paypalCheckoutInstance.createPayment({\n // Your PayPal options here. For available options, see\n // http://braintree.github.io/braintree-web/current/PayPalCheckout.html#createPayment\n flow: 'vault',\n })\n },\n\n onAuthorize: (data, actions) => {\n return paypalCheckoutInstance.tokenizePayment(data, this.paymentMethod.bind(this))\n },\n\n onCancel: (data) => {\n console.log('checkout.js payment cancelled', JSON.stringify(data, 0, 2));\n },\n\n onError: (err) => {\n console.error('checkout.js error', err);\n }\n }, this.buttonTarget).then(() => {\n // The PayPal button will be rendered in an html element with the id\n // `paypal-button`. This function will be called when the PayPal button\n // is set up and ready to be used.\n });\n }\n\n paymentMethod(error, payload) {\n if (error) {\n console.error(\"Error with payment method:\", error)\n return\n }\n\n this.addHiddenField(\"account[processor]\", \"braintree\")\n this.addHiddenField(\"account[card_token]\", payload.nonce)\n\n Rails.fire(this.formTarget, \"submit\")\n }\n\n addHiddenField(name, value) {\n let hiddenInput = document.createElement(\"input\")\n hiddenInput.setAttribute(\"type\", \"hidden\")\n hiddenInput.setAttribute(\"name\", name)\n hiddenInput.setAttribute(\"value\", value)\n this.formTarget.appendChild(hiddenInput)\n }\n}\n\n","// Options:\n//\n// Use data-pricing-active=\"yearly\" to select yearly by default\n\nimport { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [ \"toggle\", \"frequency\", \"plans\" ]\n\n connect() {\n // Classes toggle on the plan switcher items\n this.activeFrequencyClass = (this.data.get(\"active-frequency-class\") || \"bg-white text-black hover:text-black\").split(\" \")\n this.inactiveFrequencyClass = (this.data.get(\"inactive-frequency-class\") || \"text-white hover:text-gray-300\").split(\" \")\n\n // Classes toggle on the plans\n this.activePlansClass = (this.data.get(\"activePlansClass\") || \"flex\").split(\" \")\n this.inactivePlansClass = (this.data.get(\"inactivePlansClass\") || \"hidden\").split(\" \")\n\n // Remove any targets without plans in them\n this.frequencyTargets.forEach(target => {\n let frequency = target.dataset.frequency\n let index = this.plansTargets.findIndex((element) => element.dataset.frequency == frequency && element.childElementCount > 0)\n if (index == -1) target.remove()\n })\n\n // Hide frequency toggle if we have less than 2 frequencies with plans\n if (this.frequencyTargets.length < 2) this._hideFrequencyToggle()\n\n let frequency = this.data.get(\"active\") || this.frequencyTargets[0].dataset.frequency\n this._toggle(frequency)\n }\n\n // Switches visible plans\n switch(event) {\n event.preventDefault()\n this._toggle(event.target.dataset.frequency)\n }\n\n // Hides frequency toggle\n _hideFrequencyToggle() {\n this.toggleTarget.classList.add(\"hidden\")\n }\n\n // Toggles visible plans and selected frequency\n // Expects: \"monthly\", \"yearly\", etc\n _toggle(frequency) {\n // Keep track of active frequency on a data attribute\n this.data.set(\"active\", frequency)\n\n this.frequencyTargets.forEach(target => {\n if (target.dataset.frequency == frequency) {\n this.showFrequency(target)\n } else {\n this.hideFrequency(target)\n }\n })\n\n this.plansTargets.forEach(target => {\n if (target.dataset.frequency == frequency) {\n this.showPlans(target)\n } else {\n this.hidePlans(target)\n }\n })\n }\n\n showFrequency(element) {\n element.classList.add(...this.activeFrequencyClass)\n element.classList.remove(...this.inactiveFrequencyClass)\n }\n\n hideFrequency(element) {\n element.classList.remove(...this.activeFrequencyClass)\n element.classList.add(...this.inactiveFrequencyClass)\n }\n\n showPlans(element) {\n element.classList.add(...this.activePlansClass)\n element.classList.remove(...this.inactivePlansClass)\n }\n\n hidePlans(element) {\n element.classList.remove(...this.activePlansClass)\n element.classList.add(...this.inactivePlansClass)\n }\n}\n","import { Controller } from \"stimulus\"\r\n\r\nexport default class extends Controller {\r\n static targets = [\"map\", \"field_sw_lat\", \"field_sw_lng\", \"field_ne_lat\", \"field_ne_lng\"]\r\n\r\n connect() {\r\n if (typeof(google) != \"undefined\") {\r\n this.initMap()\r\n }\r\n }\r\n\r\n initMap() {\r\n const sw_lat = this.data.get(\"field_sw_lat\") || 37.690439\r\n const sw_lng = this.data.get(\"field_sw_lng\") || -121.23901\r\n const ne_lat = this.data.get(\"field_ne_lat\") || 37.798917\r\n const ne_lng = this.data.get(\"field_ne_lng\") || -121.00761\r\n\r\n const center_lat = (sw_lat + ne_lat)/2 \r\n const center_lng = (sw_lng + ne_lng)/2\r\n\r\n this.map = new google.maps.Map(this.mapTarget, {\r\n center: new google.maps.LatLng(center_lat, center_lng),\r\n zoom: 10\r\n })\r\n\r\n const original_bounds = {\r\n north: ne_lat,\r\n south: sw_lat,\r\n east: ne_lng,\r\n west: sw_lng,\r\n };\r\n // Define a rectangle and set its editable property to true.\r\n this.rectangle = new google.maps.Rectangle({\r\n bounds: original_bounds,\r\n editable: true,\r\n draggable: true,\r\n });\r\n this.rectangle.setMap(this.map);\r\n // Add an event listener on the rectangle.\r\n this.rectangle.addListener(\"bounds_changed\", this.getUpdatedBounds.bind(this));\r\n \r\n\r\n }\r\n\r\n /** Show the new coordinates for the rectangle in an info window. */\r\n getUpdatedBounds() {\r\n let rectangle = this.rectangle\r\n const ne = rectangle.getBounds().getNorthEast();\r\n const sw = rectangle.getBounds().getSouthWest();\r\n const contentString =\r\n \"New north-east corner: \" +\r\n ne.lat() + \" \" +\r\n ne.lng() + \" \" +\r\n \"New south-west corner: \" +\r\n sw.lat() + \" \" +\r\n sw.lng(); \r\n\r\n //console.log(contentString)\r\n\r\n this.field_sw_latTarget.value = sw.lat()\r\n this.field_sw_lngTarget.value = sw.lng()\r\n this.field_ne_latTarget.value = ne.lat()\r\n this.field_ne_lngTarget.value = ne.lng()\r\n\r\n }\r\n\r\n}","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"query\", \"loads\"];\r\n connect() {\r\n //console.log(\"hello from stimulus\");\r\n }\r\n\r\n submit() {\r\n const value = this.queryTarget.value;\r\n fetch(`/?query=${value}`, {\r\n headers: { accept: \"application/json\" },\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n var loadHTML = \"\";\r\n var loadArray = Object.values(data)[0];\r\n loadArray.forEach((load) => {\r\n loadHTML += this.loadTemplate(load);\r\n });\r\n this.loadsTarget.innerHTML = loadHTML;\r\n });\r\n }\r\n\r\n loadTemplate(load) {\r\n return `\r\n
\r\n
Load #${load.id}
\r\n
${load.date_received}
\r\n
Total Revenue ${load.total_revenue}
\r\n
${load.status_wording}
\r\n
\r\n `;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"input\", \"dropdown\", \"select\"];\r\n connect() {}\r\n\r\n // handle placeholder changes\r\n queryChange(event) {\r\n event.preventDefault();\r\n if (this.selectTarget.value == \"id\") {\r\n this.inputTarget.placeholder = \"Search Loads by ID\";\r\n this.inputTarget.name = \"load_id\";\r\n } else if (this.selectTarget.value == \"location\") {\r\n this.inputTarget.placeholder = \"Search Loads by Location\";\r\n this.inputTarget.name = \"query\";\r\n } else if (this.selectTarget.value == \"details\") {\r\n this.inputTarget.placeholder = \"Search Loads by Details\";\r\n this.inputTarget.name = \"details\";\r\n } else {\r\n this.inputTarget.placeholder = \"Search Loads\";\r\n this.inputTarget.name = \"query\";\r\n }\r\n }\r\n\r\n handleSubmit(event) {\r\n event.preventDefault();\r\n if (this.selectTarget.value == \"id\") {\r\n this.inputTarget.name = \"load_id\";\r\n } else if (this.selectTarget.value == \"location\") {\r\n this.inputTarget.name = \"query\";\r\n } else if (this.selectTarget.value == \"details\") {\r\n this.inputTarget.name = \"query\";\r\n } else {\r\n this.inputTarget.name = \"query\";\r\n }\r\n }\r\n\r\n // Click outside of event\r\n hide(event) {\r\n if (\r\n event &&\r\n (this.dropdownTarget.contains(event.target) ||\r\n this.inputTarget.contains(event.target))\r\n ) {\r\n return;\r\n }\r\n\r\n // this.buttonTarget.setAttribute('aria-expanded', 'false');\r\n // this.buttonTarget.classList.remove('is-active');\r\n this.dropdownTarget.classList.toggle(\"hidden\");\r\n }\r\n\r\n get query() {\r\n return this.inputTarget.value;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\" \r\n\r\n export default class extends Controller { \r\n static targets = [ \"toggleable\" ] \r\n\r\n // Toggle the hidden class on the dropdown\r\n toggle() {\r\n this.toggleableTarget.classList.toggle('hidden')\r\n } \r\n }","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"query\", \"stops\"];\r\n connect() {\r\n console.log(\"Stops Load\");\r\n }\r\n\r\n submit() {\r\n const value = this.queryTarget.value;\r\n fetch(`/?query=${value}`, {\r\n headers: { accept: \"application/json\" },\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n var stopHTML = \"\";\r\n var stopArray = Object.values(data)[0];\r\n stopArray.forEach((stop) => {\r\n stopHTML += this.stopTemplate(stop);\r\n });\r\n this.stopsTarget.innerHTML = stopHTML;\r\n });\r\n }\r\n\r\n stopTemplate(stop) {\r\n return `\r\n
\r\n
Load #${stop.load_id}
\r\n
${stop.address}
\r\n
${stop.city} ${stop.state}
\r\n
${stop.ship_type}
\r\n
\r\n `;\r\n }\r\n}\r\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"label\", \"pickup\", \"delivery\"]\r\n\r\n connect() {\r\n console.log(\"Stop Type Form working\")\r\n }\r\n\r\n onSelectStopType(event) {\r\n const stop_type = event.target.value;\r\n\r\n if (stop_type == \"shipper\") {\r\n console.log(\"pick up date\");\r\n this.pickupTarget.classList.toggle('hidden');\r\n this.deliveryTarget.classList.toggle('hidden');\r\n } else if (stop_type == \"consignee\") {\r\n\r\n console.log(\"delivery date\");\r\n this.pickupTarget.classList.toggle('hidden');\r\n this.deliveryTarget.classList.toggle('hidden');\r\n\r\n }\r\n\r\n }\r\n\r\n}","import { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [ \"card\", \"name\", \"error\", \"form\" ]\n\n connect() {\n let stripeMeta = document.querySelector('meta[name=\"stripe-key\"]')\n if (stripeMeta === null) { return }\n\n let stripeKey = stripeMeta.getAttribute(\"content\")\n this.stripe = Stripe(stripeKey)\n let elements = this.stripe.elements()\n\n // Setup Intents are used for adding new cards to be charged in the future\n this.setup_intent = this.data.get(\"setup-intent\")\n\n // Payment intents are for processing payments that require action\n this.payment_intent = this.data.get(\"payment-intent\")\n\n // Setup regular payments\n this.card = elements.create(\"card\")\n this.card.mount(this.cardTarget)\n this.card.addEventListener(\"change\", this.changed.bind(this))\n }\n\n changed(event) {\n if (event.error) {\n this.errorTarget.textContent = event.error.message\n } else {\n this.errorTarget.textContent = \"\"\n }\n }\n\n keydown(event) {\n if (event.keyCode == 13) {\n // Catch Enter key's form submission and process as submit\n event.preventDefault()\n this.submit(event)\n }\n }\n\n submit(event) {\n event.preventDefault()\n\n if (this.nameTarget.value == \"\") {\n this.errorTarget.textContent = \"Name on card is required.\"\n return\n }\n\n // One time payments\n if (this.payment_intent) {\n this.handleCardPayment()\n\n // Updating card with setup intent\n } else if (this.setup_intent) {\n this.setupNewCard()\n\n // Subscriptions simply tokenize the payment method and redirect to payment page if SCA required\n } else {\n this.stripe.createPaymentMethod({\n type: 'card',\n card: this.card,\n billing_details: {\n name: this.nameTarget.value\n },\n }).then((result) => this.handlePaymentMethod(result.paymentMethod.id))\n }\n }\n\n setupNewCard() {\n let data = {\n payment_method: {\n card: this.card,\n billing_details: {\n name: this.nameTarget.value\n }\n }\n }\n\n this.stripe.confirmCardSetup(this.setup_intent, data).then((result) => {\n if (result.error) {\n this.errorTarget.textContent = result.error.message\n } else {\n this.handlePaymentMethod(result.setupIntent.payment_method)\n }\n })\n }\n\n handlePaymentMethod(payment_method_id) {\n this.addHiddenField(\"account[processor]\", \"stripe\")\n this.addHiddenField(\"account[card_token]\", payment_method_id)\n\n Rails.fire(this.formTarget, \"submit\")\n }\n\n addHiddenField(name, value) {\n let hiddenInput = document.createElement(\"input\")\n hiddenInput.setAttribute(\"type\", \"hidden\")\n hiddenInput.setAttribute(\"name\", name)\n hiddenInput.setAttribute(\"value\", value)\n this.formTarget.appendChild(hiddenInput)\n }\n\n handleCardPayment() {\n // Handle an existing payment that needs confirmation\n this.stripe.confirmCardPayment(this.payment_intent).then((result) => {\n if (result.error) {\n this.errorTarget.textContent = result.error.message\n\n } else if (result.paymentIntent && result.paymentIntent.status === 'succeeded') {\n Turbolinks.clearCache()\n Turbolinks.visit(\"/\")\n }\n })\n }\n}\n","import { Controller } from \"stimulus\";\r\n\r\nexport default class extends Controller {\r\n static targets = [\"first\", \"second\"];\r\n\r\n // Toggle the hidden class on the dropdown\r\n toggleFirst() {\r\n console.log(\"CLICK\");\r\n }\r\n\r\n toggleSecond() {}\r\n}\r\n","import { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [ \"toggleable\" ]\n\n connect() {\n this.toggleClass = this.data.get(\"class\") || \"hidden\"\n }\n\n toggle(event) {\n event.preventDefault()\n\n this.toggleableTargets.forEach( target => {\n target.classList.toggle(this.toggleClass)\n })\n }\n}\n","import Trix from \"trix\"\n\nlet lang = Trix.config.lang;\nTrix.config.toolbar = {\n getDefaultHTML: function() {\n return `\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n
\n \n
\n
\n
\n `\n }\n}\n\nclass EmbedController {\n constructor(element) {\n this.patterns = undefined\n this.element = element\n this.editor = element.editor\n this.toolbar = element.toolbarElement\n this.hrefElement = this.toolbar.querySelector(\"[data-trix-input][name='href']\")\n this.embedContainerElement = this.toolbar.querySelector(\"[data-behavior='embed_container']\")\n this.embedElement = this.toolbar.querySelector(\"[data-behavior='embed_url']\")\n\n this.reset()\n this.installEventHandlers()\n }\n\n installEventHandlers() {\n this.hrefElement.addEventListener(\"input\", this.didInput.bind(this))\n this.hrefElement.addEventListener(\"focusin\", this.didInput.bind(this))\n this.embedElement.addEventListener(\"click\", this.embed.bind(this))\n }\n\n didInput(event) {\n let value = event.target.value.trim()\n\n // Load patterns from server so we can dynamically update them\n if (this.patterns === undefined) {\n this.loadPatterns(value)\n\n // When patterns are loaded, we can just fetch the embed code\n } else if (this.match(value)) {\n this.fetch(value)\n\n // No embed code, just reset the form\n } else {\n this.reset()\n }\n }\n\n loadPatterns(value) {\n Rails.ajax({\n type: \"get\",\n url: \"/embeds/patterns.json\",\n success: (response) => {\n this.patterns = response.map(pattern => new RegExp(pattern.source, pattern.options))\n if (this.match(value)) {\n this.fetch(value)\n }\n }\n })\n }\n\n // Checks if a url matches an embed code format\n match(value) {\n return this.patterns.some(regex => regex.test(value))\n }\n\n fetch(value) {\n Rails.ajax({\n url: `/embeds?id=${encodeURIComponent(value)}`,\n type: 'post',\n error: this.reset.bind(this),\n success: this.showEmbed.bind(this)\n })\n }\n\n embed(event) {\n if (this.currentEmbed == null) { return }\n\n let attachment = new Trix.Attachment(this.currentEmbed)\n this.editor.insertAttachment(attachment)\n this.element.focus()\n }\n\n showEmbed(embed) {\n this.currentEmbed = embed\n this.embedContainerElement.style.display = \"block\"\n }\n\n reset() {\n this.embedContainerElement.style.display = \"none\"\n this.currentEmbed = null\n }\n}\ndocument.addEventListener(\"trix-initialize\", function(event) {\n new EmbedController(event.target)\n})\n","addEventListener(\"direct-upload:initialize\", event => {\n const { target, detail } = event\n const { id, file } = detail\n target.insertAdjacentHTML(\"beforebegin\", `\n
\n
\n ${file.name}\n
\n `)\n})\n\naddEventListener(\"direct-upload:start\", event => {\n const { id } = event.detail\n const element = document.getElementById(`direct-upload-${id}`)\n element.classList.remove(\"direct-upload--pending\")\n})\n\naddEventListener(\"direct-upload:progress\", event => {\n const { id, progress } = event.detail\n const progressElement = document.getElementById(`direct-upload-progress-${id}`)\n progressElement.style.width = `${progress}%`\n})\n\naddEventListener(\"direct-upload:error\", event => {\n event.preventDefault()\n const { id, error } = event.detail\n const element = document.getElementById(`direct-upload-${id}`)\n element.classList.add(\"direct-upload--error\")\n element.setAttribute(\"title\", error)\n})\n\naddEventListener(\"direct-upload:end\", event => {\n const { id } = event.detail\n const element = document.getElementById(`direct-upload-${id}`)\n element.classList.add(\"direct-upload--complete\")\n})\n","document.addEventListener(\"turbolinks:load\", ()=> {\n\n const Forms = {\n init() {\n this.fileInputToggle();\n },\n\n fileInputToggle() {\n const inputs = document.querySelectorAll('.form-file');\n\n inputs.forEach(function(input) {\n const label = input.nextElementSibling,\n labelVal = label.innerHTML;\n\n input.addEventListener('change', function(e) {\n var fileName = '';\n\n if (this.files && this.files.length > 1) {\n fileName = ( this.getAttribute( 'data-multiple-caption' ) || '' ).replace( '{count}', this.files.length );\n } else {\n fileName = e.target.value.split( '\\\\' ).pop();\n }\n\n if (fileName) {\n label.querySelector( 'span' ).innerHTML = fileName;\n } else {\n label.innerHTML = labelVal;\n }\n });\n });\n }\n };\n\n Forms.init();\n\n});\n","import Cookies from 'js-cookie'\nimport jstz from 'jstz'\n\n// Rails doesn't support every timezone that Intl supports\nexport function findTimeZone() {\n const oldIntl = window.Intl\n try {\n window.Intl = undefined\n const tz = jstz.determine().name()\n window.Intl = oldIntl\n return tz\n } catch (e) {\n // sometimes (on android) you can't override intl\n return jstz.determine().name()\n }\n}\n\ndocument.addEventListener(\"turbolinks:load\", () => {\n Cookies.set(\"browser_time_zone\", findTimeZone(), { expires: 365, path: \"/\" })\n})\n","import tippy from \"tippy.js\"\nimport ClipboardJS from \"clipboard\"\n\nfunction clipboardTooltip(element, message) {\n tippy(element, {\n content: message,\n showOnCreate: true,\n onHidden: (instance) => {\n instance.destroy()\n }\n });\n}\n\ndocument.addEventListener(\"turbolinks:load\", () => {\n tippy(document.querySelectorAll(\"[data-tippy-content]\"))\n\n // Clipboard buttons should show tooltip showing result\n let clipboard = new ClipboardJS(\"[data-clipboard-text]\")\n clipboard.on(\"success\", (e) => { clipboardTooltip(e.trigger, \"Copied!\") })\n clipboard.on(\"error\", (e) => { clipboardTooltip(e.trigger, \"Failed!\") })\n})\n"],"sourceRoot":""}