1<!DOCTYPE html> 2<html lang="en-US" prefix="og: https://ogp.me/ns#"> 3<head>
3<script src="/ummen-Opinion-hold-there-of-Banquo-Prima-Tis-the" async></script>
3 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6<!-- Search Engine Optimization by Rank Math - https://rankmath.com/ --> 7<title>FTL Freight Transportation & Delivery Services | Prime, Inc.</title> 8<meta name="description" content="Prime offers a variety of transportation solutions that move your business with incredible accuracy including on-time freight shipping services that are unmatched in our industry."/> 9<meta name="robots" content="follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> 10<link rel="canonical" href="https://www.primeinc.com/transportation-solutions/" /> 11<meta property="og:locale" content="en_US" /> 12<meta property="og:type" content="article" /> 13<meta property="og:title" content="FTL Freight Transportation & Delivery Services | Prime, Inc." /> 14<meta property="og:description" content="Prime offers a variety of transportation solutions that move your business with incredible accuracy including on-time freight shipping services that are unmatched in our industry." /> 15<meta property="og:url" content="https://www.primeinc.com/transportation-solutions/" /> 16<meta property="og:site_name" content="Prime, Inc." /> 17<meta property="article:publisher" content="https://www.facebook.com/primeinctrucking/" /> 18<meta property="og:updated_time" content="2021-12-08T16:08:04-05:00" /> 19<meta name="twitter:card" content="summary_large_image" /> 20<meta name="twitter:title" content="FTL Freight Transportation & Delivery Services | Prime, Inc." /> 21<meta name="twitter:description" content="Prime offers a variety of transportation solutions that move your business with incredible accuracy including on-time freight shipping services that are unmatched in our industry." /> 22<meta name="twitter:label1" content="Time to read" /> 23<meta name="twitter:data1" content="1 minute" />
24<script type="application/ld+json" class="rank-math-schema">{"@context":"https://schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https://www.primeinc.com/transportation-solutions/#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.primeinc.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.primeinc.com/transportation-solutions/","name":"Transportation Solutions"}}]}]}</script>
24 25<!-- /Rank Math WordPress SEO plugin --> 26 27<link rel="alternate" type="application/rss+xml" title="Prime, Inc. » Feed" href="https://www.primeinc.com/feed/" /> 28<link rel="alternate" type="application/rss+xml" title="Prime, Inc. » Comments Feed" href="https://www.primeinc.com/comments/feed/" /> 29<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.primeinc.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.primeinc.com%2Ftransportation-solutions%2F" /> 30<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.primeinc.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.primeinc.com%2Ftransportation-solutions%2F&format=xml" /> 31<link rel="stylesheet" type="text/css" href="https://use.typekit.net/stj0tgn.css"><style id="wp-img-auto-sizes-contain-inline-css"> 32img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 33/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 34</style> 35<style id="wp-emoji-styles-inline-css"> 36 37 img.wp-smiley, img.emoji { 38 display: inline !important; 39 border: none !important; 40 box-shadow: none !important; 41 height: 1em !important; 42 width: 1em !important; 43 margin: 0 0.07em !important; 44 vertical-align: -0.1em !important; 45 background: none !important; 46 padding: 0 !important; 47 } 48/*# sourceURL=wp-emoji-styles-inline-css */ 49</style> 50<style id="classic-theme-styles-inline-css"> 51/*! This file is auto-generated */ 52.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 53/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 54</style> 55<style id="wp-block-styles-placeholder-inline-css"> 56:root { --wp-internal-comment: "Placeholder for wp_hoist_late_printed_styles() to replace with the block styles printed at wp_footer." } 57/*# sourceURL=wp-block-styles-placeholder-inline-css */ 58</style> 59<link rel='stylesheet' id='jet-engine-frontend-css' href='https://www.primeinc.com/wp-content/plugins/jet-engine/assets/css/frontend.css?ver=3.8.16' media='all' /> 60<style id="wp-global-styles-placeholder-inline-css"> 61:root { --wp-internal-comment: "Placeholder for wp_hoist_late_printed_styles() to replace with the global-styles printed at wp_footer." } 62/*# sourceURL=wp-global-styles-placeholder-inline-css */ 63</style> 64<link rel='stylesheet' id='cookie-law-info-css' href='https://www.primeinc.com/wp-content/plugins/cookie-law-info/legacy/public/css/cookie-law-info-public.css?ver=3.5.6' media='all' /> 65<link rel='stylesheet' id='cookie-law-info-gdpr-css' href='https://www.primeinc.com/wp-content/plugins/cookie-law-info/legacy/public/css/cookie-law-info-gdpr.css?ver=3.5.6' media='all' /> 66<link rel='stylesheet' id='generate-style-grid-css' href='https://www.primeinc.com/wp-content/themes/generatepress/assets/css/unsemantic-grid.min.css?ver=3.6.1' media='all' /> 67<link rel='stylesheet' id='generate-style-css' href='https://www.primeinc.com/wp-content/themes/generatepress/assets/css/style.min.css?ver=3.6.1' media='all' /> 68<style id="generate-style-inline-css"> 69body{background-color:#ffffff;color:#878991;}a{color:#3b266e;}a:visited{color:#000000;}a:hover, a:focus, a:active{color:#bb4498;}body .grid-container{max-width:1100px;}.wp-block-group__inner-container{max-width:1100px;margin-left:auto;margin-right:auto;}:root{--contrast:#222222;--contrast-2:#575760;--contrast-3:#b2b2be;--base:#f0f0f0;--base-2:#f7f8f9;--base-3:#ffffff;--accent:#1e73be;}:root .has-contrast-color{color:var(--contrast);}:root .has-contrast-background-color{background-color:var(--contrast);}:root .has-contrast-2-color{color:var(--contrast-2);}:root .has-contrast-2-background-color{background-color:var(--contrast-2);}:root .has-contrast-3-color{color:var(--contrast-3);}:root .has-contrast-3-background-color{background-color:var(--contrast-3);}:root .has-base-color{color:var(--base);}:root .has-base-background-color{background-color:var(--base);}:root .has-base-2-color{color:var(--base-2);}:root .has-base-2-background-color{background-color:var(--base-2);}:root .has-base-3-color{color:var(--base-3);}:root .has-base-3-background-color{background-color:var(--base-3);}:root .has-accent-color{color:var(--accent);}:root .has-accent-background-color{background-color:var(--accent);}body, button, input, select, textarea{font-family:-apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:16px;}body{line-height:1.5;}.entry-content > [class*="wp-block-"]:not(:last-child):not(.wp-block-heading){margin-bottom:1.5em;}.main-title{font-size:45px;}.main-navigation .main-nav ul ul li a{font-size:14px;}.sidebar .widget, .footer-widgets .widget{font-size:17px;}h1{font-weight:400;text-transform:uppercase;font-size:80px;}h2{font-weight:400;text-transform:uppercase;font-size:60px;}h3{font-weight:400;text-transform:uppercase;font-size:28px;}h4{font-weight:300;text-transform:uppercase;font-size:21px;line-height:1em;}h5{font-size:inherit;}@media (max-width:768px){.main-title{font-size:30px;}h1{font-size:50px;}h2{font-size:50px;}}
69.top-bar{background-color:#636363;color:#ffffff;}.top-bar a{color:#ffffff;}.top-bar a:hover{color:#303030;}.site-header{background-color:#ffffff;color:#3a3a3a;}.site-header a{color:#3a3a3a;}.main-title a,.main-title a:hover{color:#222222;}.site-description{color:#757575;}.main-navigation,.main-navigation ul ul{background-color:#222222;}.main-navigation .main-nav ul li a, .main-navigation .menu-toggle, .main-navigation .menu-bar-items{color:#ffffff;}.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a, .main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a, .main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a, .main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a{color:#ffffff;background-color:#3f3f3f;}button.menu-toggle:hover,button.menu-toggle:focus,.main-navigation .mobile-bar-items a,.main-navigation .mobile-bar-items a:hover,.main-navigation .mobile-bar-items a:focus{color:#ffffff;}.main-navigation .main-nav ul li[class*="current-menu-"] > a{color:#ffffff;background-color:#3f3f3f;}.navigation-search input[type="search"],.navigation-search input[type="search"]:active, .navigation-search input[type="search"]:focus, .main-navigation .main-nav ul li.search-item.active > a, .main-navigation .menu-bar-items .search-item.active > a{color:#ffffff;background-color:#3f3f3f;}.main-navigation ul ul{background-color:#3f3f3f;}.main-navigation .main-nav ul ul li a{color:#ffffff;}.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):hover > a,.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):focus > a, .main-navigation .main-nav ul ul li.sfHover:not([class*="current-menu-"]) > a{color:#ffffff;background-color:#4f4f4f;}.main-navigation .main-nav ul ul li[class*="current-menu-"] > a{color:#ffffff;background-color:#4f4f4f;}.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header{background-color:#ffffff;}.entry-meta{color:#595959;}.entry-meta a{color:#595959;}.entry-meta a:hover{color:#1e73be;}.sidebar .widget{background-color:#ffffff;}.sidebar .widget .widget-title{color:#000000;}.footer-widgets{background-color:#ffffff;}.footer-widgets .widget-title{color:#000000;}.site-info{color:#ffffff;background-color:#222222;}.site-info a{color:#ffffff;}.site-info a:hover{color:#606060;}.footer-bar .widget_nav_menu .current-menu-item a{color:#606060;}input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="search"],input[type="tel"],input[type="number"],textarea,select{color:#666666;background-color:#fafafa;border-color:#cccccc;}input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="number"]:focus,textarea:focus,select:focus{color:#666666;background-color:#ffffff;border-color:#bfbfbf;}button,html input[type="button"],input[type="reset"],input[type="submit"],a.button,a.wp-block-button__link:not(.has-background){color:#ffffff;background-color:#666666;}button:hover,html input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover,a.button:hover,button:focus,html input[type="button"]:focus,input[type="reset"]:focus,input[type="submit"]:focus,a.button:focus,a.wp-block-button__link:not(.has-background):active,a.wp-block-button__link:not(.has-background):focus,a.wp-block-button__link:not(.has-background):hover{color:#ffffff;background-color:#3f3f3f;}a.generate-back-to-top{background-color:rgba( 0,0,0,0.4 );color:#ffffff;}a.generate-back-to-top:hover,a.generate-back-to-top:focus{background-color:rgba( 0,0,0,0.6 );color:#ffffff;}:root{--gp-search-modal-bg-color:var(--base-3);--gp-search-modal-text-color:var(--contrast);--gp-search-modal-overlay-bg-color:rgba(0,0,0,0.2);}@media (max-width:768px){.main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a{background:none;color:#ffffff;}}.inside-top-bar{padding:10px;}.inside-header{padding:40px;}.site-main .wp-block-group__inner-container{padding:40px;}.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull{margin-left:-40px;width:calc(100% + 80px);max-width:calc(100% + 80px);}.rtl .menu-item-has-children .dropdown-menu-toggle{padding-left:20px;}.rtl .main-navigation .main-nav ul li.menu-item-has-children > a{padding-right:20px;}.site-info{padding:20px;}@media (max-width:768px){.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .separate-containers .paging-navigation, .one-container .site-content, .inside-page-header{padding:30px;}.site-main .wp-block-group__inner-container{padding:30px;}.site-info{padding-right:10px;padding-left:10px;}.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull{margin-left:-30px;width:calc(100% + 60px);max-width:calc(100% + 60px);}}.one-container .sidebar .widget{padding:0px;}/* End cached CSS */@media (max-width:768px){.main-navigation .menu-toggle,.main-navigation .mobile-bar-items,.sidebar-nav-mobile:not(#sticky-placeholder){display:block;}.main-navigation ul,.gen-sidebar-nav{display:none;}[class*="nav-float-"] .site-header .inside-header > *{float:none;clear:both;}} 70.dynamic-author-image-rounded{border-radius:100%;}.dynamic-featured-image, .dynamic-author-image{vertical-align:middle;}.one-container.blog .dynamic-content-template:not(:last-child), .one-container.archive .dynamic-content-template:not(:last-child){padding-bottom:0px;}.dynamic-entry-excerpt > p:last-child{margin-bottom:0px;} 71/*# sourceURL=generate-style-inline-css */ 72</style> 73<link rel='stylesheet' id='generate-mobile-style-css' href='https://www.primeinc.com/w
73p-content/themes/generatepress/assets/css/mobile.min.css?ver=3.6.1' media='all' /> 74<link rel='stylesheet' id='generate-font-icons-css' href='https://www.primeinc.com/wp-content/themes/generatepress/assets/css/components/font-icons.min.css?ver=3.6.1' media='all' /> 75<link rel='stylesheet' id='generate-child-css' href='https://www.primeinc.com/wp-content/themes/generatepress_child/style.css?ver=1655383643' media='all' /> 76<link rel='stylesheet' id='elementor-frontend-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/frontend.min.css?ver=4.3.3' media='all' /> 77<link rel='stylesheet' id='widget-heading-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-heading.min.css?ver=4.3.3' media='all' /> 78<link rel='stylesheet' id='e-animation-fadeIn-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/animations/styles/fadeIn.min.css?ver=4.3.3' media='all' /> 79<link rel='stylesheet' id='e-popup-css' href='https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/css/conditionals/popup.min.css?ver=4.3.1' media='all' /> 80<link rel='stylesheet' id='elementor-post-2501-css' href='https://www.primeinc.com/wp-content/uploads/elementor/css/post-2501.css?ver=1790863639' media='all' /> 81<link rel='stylesheet' id='elementor-post-2335-css' href='https://www.primeinc.com/wp-content/uploads/elementor/css/post-2335.css?ver=1790863639' media='all' /> 82<link rel='stylesheet' id='widget-image-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-image.min.css?ver=4.3.3' media='all' /> 83<link rel='stylesheet' id='widget-icon-list-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-icon-list.min.css?ver=4.3.3' media='all' /> 84<link rel='stylesheet' id='widget-search-form-css' href='https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/css/widget-search-form.min.css?ver=4.3.1' media='all' /> 85<link rel='stylesheet' id='elementor-icons-shared-0-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/fontawesome.min.css?ver=5.15.3' media='all' /> 86<link rel='stylesheet' id='elementor-icons-fa-solid-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/solid.min.css?ver=5.15.3' media='all' /> 87<link rel='stylesheet' id='e-sticky-css' href='https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/css/modules/sticky.min.css?ver=4.3.1' media='all' /> 88<link rel='stylesheet' id='widget-image-box-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-image-box.min.css?ver=4.3.3' media='all' /> 89<link rel='stylesheet' id='widget-divider-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-divider.min.css?ver=4.3.3' media='all' /> 90<link rel='stylesheet' id='widget-social-icons-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-social-icons.min.css?ver=4.3.3' media='all' /> 91<link rel='stylesheet' id='e-apple-webkit-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/conditionals/apple-webkit.min.css?ver=4.3.3' media='all' /> 92<link rel='stylesheet' id='eael-general-css' href='https://www.primeinc.com/wp-content/plugins/essential-addons-for-elementor-lite/assets/front-end/css/view/general.min.css?ver=6.8.5' media='all' /> 93<link rel='stylesheet' id='eael-2252-css' href='https://www.primeinc.com/wp-content/uploads/essential-addons-elementor/eael-2252.css?ver=1638979684' media='all' /> 94<link rel='stylesheet' id='elementor-icons-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/eicons/css/elementor-icons.min.css?ver=5.54.0' media='all' /> 95<link rel='stylesheet' id='elementor-post-8505-css' href='https://www.primeinc.com/wp-content/uploads/elementor/css/post-8505.css?ver=1790863639' media='all' /> 96<link rel='stylesheet' id='uael-frontend-css' href='https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/min-css/uael-frontend.min.css?ver=1.45.5' media='all' /> 97<link rel='stylesheet' id='uael-teammember-social-icons-css' href='https://www.primeinc.com/w
97p-content/plugins/elementor/assets/css/widget-social-icons.min.css?ver=3.24.0' media='all' /> 98<link rel='stylesheet' id='uael-social-share-icons-brands-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/brands.css?ver=5.15.3' media='all' /> 99<link rel='stylesheet' id='uael-social-share-icons-fontawesome-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/fontawesome.css?ver=5.15.3' media='all' /> 100<link rel='stylesheet' id='uael-nav-menu-icons-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/solid.css?ver=5.15.3' media='all' /> 101<link rel='stylesheet' id='jet-blog-css' href='https://www.primeinc.com/wp-content/plugins/jet-blog/assets/css/jet-blog.css?ver=2.4.10.1' media='all' /> 102<link rel='stylesheet' id='jet-tabs-frontend-css' href='https://www.primeinc.com/wp-content/plugins/jet-tabs/assets/css/jet-tabs-frontend.css?ver=2.3.4' media='all' /> 103<link rel='stylesheet' id='swiper-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/swiper/v8/css/swiper.min.css?ver=8.4.5' media='all' /> 104<link rel='stylesheet' id='font-awesome-5-all-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/all.min.css?ver=4.3.3' media='all' /> 105<link rel='stylesheet' id='font-awesome-4-shim-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/v4-shims.min.css?ver=4.3.3' media='all' /> 106<link rel='stylesheet' id='e-motion-fx-css' href='https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/css/modules/motion-fx.min.css?ver=4.3.1' media='all' /> 107<link rel='stylesheet' id='widget-spacer-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/widget-spacer.min.css?ver=4.3.3' media='all' /> 108<link rel='stylesheet' id='elementor-post-2252-css' href='https://www.primeinc.com/wp-content/uploads/elementor/css/post-2252.css?ver=1790864521' media='all' /> 109<link rel='stylesheet' id='elementor-post-2368-css' href='https://www.primeinc.com/wp-content/uploads/elementor/css/post-2368.css?ver=1790863641' media='all' /> 110<link rel='stylesheet' id='elementor-post-2386-css' href='https://www.primeinc.com/wp-content/uploads/elementor/css/post-2386.css?ver=1790863642' media='all' /> 111<link rel='stylesheet' id='gradient-button-elementor-frontend-style-css' href='https://www.primeinc.com/wp-content/plugins/gradient-button-for-elementor/assets/css/frontend.css?ver=1.0.11' media='all' /> 112<link rel='stylesheet' id='eci-icon-fonts-css' href='https://www.primeinc.com/wp-content/uploads/elementor_icons_files/merged-icons-font.css?ver=1578684901' media='all' /> 113<link rel='stylesheet' id='elementor-gf-local-opensans-css' href='https://www.primeinc.com/wp-content/uploads/elementor/google-fonts/css/opensans.css?ver=1742551577' media='all' /> 114<link rel='stylesheet' id='elementor-icons-fa-brands-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/css/brands.min.css?ver=5.15.3' media='all' />
115<script id="jquery-core-js" src="https://www.primeinc.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 115
115
116<script id="jquery-migrate-js" src="https://www.primeinc.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 116
116
117<script id="cookie-law-info-js-extra"> 118var Cli_Data = {"nn_cookie_ids":[],"cookielist":[],"non_necessary_cookies":[],"ccpaEnabled":"","ccpaRegionBased":"","ccpaBarEnabled":"","strictlyEnabled":["necessary","obligatoire"],"ccpaType":"gdpr","js_blocking":"","custom_integration":"","triggerDomRefresh":"","secure_cookies":""}; 119var cli_cookiebar_settings = {"animate_speed_hide":"500","animate_speed_show":"500","background":"#3b266e","border":"#b1a6a6c2","border_on":"","button_1_button_colour":"#bb4498","button_1_button_hover":"#96367a","button_1_link_colour":"#fff","button_1_as_button":"1","button_1_new_win":"","button_2_button_colour":"#333","button_2_button_hover":"#292929","button_2_link_colour":"#ffffff","button_2_as_button":"","button_2_hidebar":"","button_3_button_colour":"#ffffff","button_3_button_hover":"#cccccc","button_3_link_colour":"#bb4498","button_3_as_button":"1","button_3_new_win":"","button_4_button_colour":"#000","button_4_button_hover":"#000000","button_4_link_colour":"#fff","button_4_as_button":"1","button_7_button_colour":"#61a229","button_7_button_hover":"#4e8221","button_7_link_colour":"#fff","button_7_as_button":"1","button_7_new_win":"","font_family":"Helvetica, Arial, sans-serif","header_fix":"","notify_animate_hide":"1","notify_animate_show":"","notify_div_id":"#cookie-law-info-bar","notify_position_horizontal":"right","notify_position_vertical":"bottom","scroll_close":"","scroll_close_reload":"","accept_close_reload":"","reject_close_reload":"","showagain_tab":"","showagain_background":"#fff","showagain_border":"#000","showagain_div_id":"#cookie-law-info-again","showagain_x_position":"100px","text":"#ffffff","show_once_yn":"","show_once":"10000","logging_on":"","as_popup":"","popup_overlay":"1","bar_heading_text":"","cookie_bar_as":"banner","popup_showagain_position":"bottom-right","widget_position":"left"}; 120var log_object = {"ajax_url":"https://www.primeinc.com/wp-admin/admin-ajax.php"}; 121//# sourceURL=cookie-law-info-js-extra 122</script>
vendor: 1 bytes, line 122
122
123<script id="cookie-law-info-js" src="https://www.primeinc.com/wp-content/plugins/cookie-law-info/legacy/public/js/cookie-law-info-public.js?ver=3.5.6"></script>
vendor: 1 bytes, line 123
123
124<script id="font-awesome-4-shim-js" src="https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/font-awesome/js/v4-shims.min.js?ver=4.3.3"></script>
124 125<link rel="https://api.w.org/" href="https://www.primeinc.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.primeinc.com/wp-json/wp/v2/pages/2252" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.primeinc.com/xmlrpc.php?rsd" /> 126<link rel='shortlink' href='https://www.primeinc.com/?p=2252' />
127<script type="text/javascript"> 128 129if((navigator.appName.indexOf("Internet Explorer") != -1 || navigator.userAgent.match(/Trident.*rv[ :]*11\./)) && window.location.href.toLowerCase().indexOf("https://www.primeinc.com/go") == -1) 130{ 131 //This user uses Internet Explorer 132 window.location = "https://www.primeinc.com/wp-content/uploads/2019/06/OldBrowser6.jpg"; 133} 134 135</script>
135 136
137<script src="https://cdnjs.cloudflare.com/ajax/libs/waypoints/4.0.1/noframework.waypoints.min.js"></script>
vendor: 2 bytes, line 137
137
138<script src="/wp-content/bodymovin/lottie.js" type="text/javascript"></script>
138 139 140<!-- Hotjar Tracking Code for https://www.primeinc.com -->
141<script>
vendor: 128 bytes, lines 141-144
141 142 (function(h,o,t,j,a,r){ 143 h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; 144 h._hjSettings={hjid:
1441573834
vendor: 264 bytes, lines 144-149
144,hjsv:6}; 145 a=o.getElementsByTagName('head')[0]; 146 r=o.createElement('script');r.async=1; 147 r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; 148 a.appendChild(r); 149 })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
150</script>
150 151
152<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.5.0/knockout-min.js" type="text/javascript"></script>
vendor: 2 bytes, line 152
152
153<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.4.0/moment.min.js"></script>
vendor: 2 bytes, line 153
153
154<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/core.min.js?ver=1.11.4'></script>
vendor: 2 bytes, line 154
154
155<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/mouse.min.js?ver=1.11.4'></script>
vendor: 2 bytes, line 155
155
156<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/draggable.min.js?ver=1.11.4'></script>
vendor: 2 bytes, line 156
156
157<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/slider.min.js?ver=1.11.4'></script>
vendor: 2 bytes, line 157
157
158<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/datepicker.min.js?ver=1.11.4'></script>
vendor: 2 bytes, line 158
158
159<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/menu.min.js'></script>
vendor: 2 bytes, line 159
159
160<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/autocomplete.min.js'></script>
vendor: 2 bytes, line 160
160
161<script type='text/javascript' src='https://www.primeinc.com/wp-includes/js/jquery/ui/accordion.min.js?ver=1.11.4'></script>
vendor: 2 bytes, line 161
161
162<script type='text/javascript' src='https://www.primeinc.com/wp-content/js/prime-utils-1.01.js'></script>
162 163<style type='text/css'> 164 165.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;
165color:#333;font-weight:bold}.ui-widget-header a{color:#333}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#454545;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#2b2b2b;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_777777_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_555555_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_777620_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cc0000_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}
165.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:3px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:0 0 0 0;padding:5px;background:#666;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px} 166 167 #ui-datepicker-div { display: none; } 168</style>
169<script type="text/javascript"> 170 /*! knockout-jqueryui - v2.2.4 - 7/19/2019 171* https://gvas.github.io/knockout-jqueryui/ 172* Copyright (c) 2019 Vas Gabor <[email protected]> Licensed MIT */ 173/*jslint browser:true*/ 174 175window.kojqui = { version: '2.2.4' }; 176 177(function (root, factory) { 178 179 'use strict'; 180 181 root.kojqui.utils = factory(root.jQuery, root.ko, root.jQuery.ui.core); 182}(this, 183 function ($, ko) { 184 185 'use strict'; 186 187 var match, uiVersion, descendantControllingBindings, createObject, register; 188 189 /*jslint regexp:true*/ 190 match = ($.ui.version || '').match(/^(\d)\.(\d+)/); 191 /*jslint regexp:false*/ 192 193 if (!match) { 194 uiVersion = null; 195 } else { 196 uiVersion = { 197 major: parseInt(match[1], 10), 198 minor: parseInt(match[2], 10) 199 }; 200 } 201 202 descendantControllingBindings = ['foreach', 'if', 'ifnot', 'with', 'html', 'text', 203 'options']; 204 205 createObject = Object.create || function (prototype) { 206 /// <summary>Simple (incomplete) shim for Object.create().</summary> 207 /// <param name='prototype' type='Object' mayBeNull='true'></param> 208 /// <returns type='Object'></returns> 209 210 function Type() { } 211 Type.prototype = prototype; 212 return new Type(); 213 }; 214 215 register = function (Constructor) { 216 /// <summary>Registers a binding.</summary> 217 /// <param name='Constructor' type='BindingHandler'>The binding handler's 218 /// constructor function.</param> 219 220 var handler = new Constructor(); 221 222 ko.bindingHandlers[handler.widgetName] = { 223 after: ko.utils.arrayGetDistinctValues( 224 descendantControllingBindings.concat(handler.after || []) 225 ), 226 init: handler.init.bind(handler), 227 update: handler.update.bind(handler) 228 }; 229 }; 230 231 return { 232 uiVersion: uiVersion, 233 descendantControllingBindings: descendantControllingBindings, 234 createObject: createObject, 235 register: register 236 }; 237 } 238)); 239(function (root, factory) { 240 241 'use strict'; 242 243 root.kojqui.BindingHandler = factory(root.jQuery, root.ko, root.kojqui.utils, root.jQuery.ui.widget); 244}(this, 245 function ($, ko, utils) { 246 247 'use strict'; 248 249 var domDataKey, filterAndUnwrapProperties, subscribeToRefreshOn, BindingHandler; 250 251 domDataKey = '__kojqui_options'; 252 253 filterAndUnwrapProperties = function (source, properties) { 254 /// <summary>Filters and unwraps the properties of an object.</summary> 255 /// <param name='source' type='Object'></param> 256 /// <param name='properties' type='Array' elementType='String'></param> 257 /// <returns type='Object'>A new object with the specified properties copied 258 /// and unwrapped from source.</returns> 259 260 var result = {}; 261 262 ko.utils.arrayForEach(properties, function (property) { 263 if (source[property] !== undefined) { 264 result[property] = ko.utils.unwrapObservable(source[property]); 265 } 266 }); 267 268 return result; 269 }; 270 271 subscribeToRefreshOn = function (widgetName, element, bindingValue) { 272 /// <summary>Creates a subscription to the refreshOn observable.</summary> 273 /// <param name='widgetName' type='String'>The widget's name.</param> 274 /// <param name='element' type='DOMNode'></param> 275 /// <param name='bindingValue' type='Object'></param> 276 277 if (ko.isObservable(bindingValue.refreshOn)) { 278 ko.computed({ 279 read: function () { 280 bindingValue.refreshOn(); 281 $(element)[widgetName]('refresh'); 282 }, 283 disposeWhenNodeIsRemoved: element 284 }); 285 } 286 }; 287 288 BindingHandler = function (widgetName) { 289 /// <summary>Constructor.</summary> 290 /// <param name='widgetName' type='String'>The jQuery UI widget's 291 /// name.</param> 292 293 this.widgetName = widgetName; 294 this.widgetEventPrefix = widgetName; 295 this.options = []; 296 this.events = []; 297 this.after = []; 298 this.hasRefresh = false; 299 }; 300 301 /*jslint unparam:true*/ 302 BindingHandler.prototype.init = function (element, valueAccessor, 303 allBindingsAccessor, viewModel, bindingContext) { 304 305 var widgetName, value, unwrappedOptions, unwrappedEvents, 306 shouldApplyBindingsToDescendants; 307 308 widgetName = this.widgetName; 309 value = valueAccessor(); 310 unwrappedOptions = filterAndUnwrapProperties(value, this.options); 311 unwrappedEvents = filterAndUnwrapProperties(value, this.events); 312 313 // There can be control flow- or other bindings on some of the descendant 314 // elements which affect the shape of the element-rooted DOM subtree. These 315 // should be processed before instantiating the jQuery UI widget, because they 316 // can add pages to the tabs widget, menu items to the menu widget, etc. 317 shouldApplyBindingsToDescendants = !ko.utils.arrayFirst( 318 utils.descendantControllingBindings, 319 function (bindingName) { 320 return this.hasOwnProperty(bindingName); 321 }, 322 allBindingsAccessor() 323 ); 324 if (shouldApplyBindingsToDescendants) { 325 // process descendant bindings 326 ko.applyBindingsToDescendants(bindingContext, element); 327 } 328 329 // store the options' values so they can be checked for changes in the
330 // update() method 331 ko.utils.domData.set(element, domDataKey, unwrappedOptions); 332 333 // bind the widget events to the viewmodel 334 $.each(unwrappedEvents, function (key, value) { 335 unwrappedEvents[key] = value.bind(viewModel); 336 }); 337 338 // initialize the widget 339 $(element)[widgetName](ko.utils.extend(unwrappedOptions, unwrappedEvents)); 340 341 if (this.hasRefresh) { 342 subscribeToRefreshOn(widgetName, element, value); 343 } 344 345 // store the element in the widget observable 346 if (ko.isWriteableObservable(value.widget)) { 347 value.widget($(element)); 348 } 349 350 // handle disposal 351 ko.utils.domNodeDisposal.addDisposeCallback(element, function () { 352 $(element)[widgetName]('destroy'); 353 }); 354 355 return { controlsDescendantBindings: shouldApplyBindingsToDescendants }; 356 }; 357 /*jslint unparam:false*/ 358 359 BindingHandler.prototype.update = function (element, valueAccessor) { 360 361 var widgetName, value, oldOptions, newOptions; 362 363 widgetName = this.widgetName; 364 value = valueAccessor(); 365 oldOptions = ko.utils.domData.get(element, domDataKey); 366 newOptions = filterAndUnwrapProperties(value, this.options); 367 368 // set only the changed options 369 $.each(newOptions, function (prop, val) { 370 if (val !== oldOptions[prop]) { 371 $(element)[widgetName]('option', prop, newOptions[prop]); 372 } 373 }); 374 375 // store the options' values so they can be checked for changes in the next 376 // update() method 377 ko.utils.domData.set(element, domDataKey, newOptions); 378 }; 379 380 BindingHandler.prototype.on = function (element, type, callback) { 381 /// <summary>Attaches callback to a widget event.</summary> 382 /// <param name='element' type='DOMElement'></param> 383 /// <param name='type' type='String'></param> 384 /// <param name='callback' type='Function'></param> 385 386 var eventName; 387 388 // the same algorithm as in widget._trigger() 389 if (type === this.widgetEventPrefix) { 390 eventName = type; 391 } else { 392 eventName = this.widgetEventPrefix + type; 393 } 394 eventName = [eventName.toLowerCase(), '.', this.widgetName].join(''); 395 396 $(element).on(eventName, callback); 397 398 // handle disposal 399 ko.utils.domNodeDisposal.addDisposeCallback(element, function () { 400 $(element).off(eventName); 401 }); 402 }; 403 404 return BindingHandler; 405 } 406)); 407(function (root, factory) { 408 409 'use strict'; 410 411 root.kojqui.Accordion = factory(root.jQuery, root.ko, root.kojqui.utils, root.kojqui.BindingHandler, root.jQuery.ui.accordion); 412}(this, 413 function ($, ko, utils, BindingHandler) { 414 415 'use strict'; 416 417 var Accordion = function () { 418 /// <summary>Constructor.</summary> 419 420 BindingHandler.call(this, 'accordion'); 421 422 if (utils.uiVersion.major === 1 && utils.uiVersion.minor === 8) { 423 this.options = ['active', 'animated', 'autoHeight', 'clearStyle', 424 'collapsible', 'disabled', 'event', 'fillSpace', 'header', 'icons', 425 'navigation', 'navigationFilter']; 426 this.events = ['change', 'changestart', 'create']; 427 this.hasRefresh = false; 428 this.eventToWatch = 'change'; 429 } else { 430 this.options = ['active', 'animate', 'collapsible', 'disabled', 'event', 431 'header', 'heightStyle', 'icons']; 432 this.events = ['activate', 'beforeActivate', 'create']; 433 this.hasRefresh = true; 434 this.eventToWatch = 'activate'; 435 } 436 }; 437 438 Accordion.prototype = utils.createObject(BindingHandler.prototype); 439 Accordion.prototype.constructor = Accordion; 440 441 Accordion.prototype.init = function (element, valueAccessor) { 442 /// <summary>Keeps the active binding property in sync with the widget's 443 /// state.</summary> 444 /// <param name='element' type='DOMNode'></param> 445 /// <param name='valueAccessor' type='Function'></param> 446 /// <returns type='Object'></returns> 447 448 var widgetName, value, result; 449 450 widgetName = this.widgetName; 451 value = valueAccessor(); 452
453 result = BindingHandler.prototype.init.apply(this, arguments); 454 455 if (ko.isWriteableObservable(value.active)) { 456 this.on(element, this.eventToWatch, function () { 457 value.active($(element)[widgetName]('option', 'active')); 458 }); 459 } 460 461 return result; 462 }; 463 464 utils.register(Accordion); 465 466 return Accordion; 467 } 468)); 469(function (root, factory) { 470 471 'use strict'; 472 473 root.kojqui.Autocomplete = factory(root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.autocomplete); 474}(this, 475 function (BindingHandler, utils) { 476 477 'use strict'; 478 479 var Autocomplete = function () { 480 /// <summary>Constructor.</summary> 481 482 BindingHandler.call(this, 'autocomplete'); 483 484 this.options = ['appendTo', 'autoFocus', 'delay', 'disabled', 'minLength', 485 'position', 'source']; 486 487 if (utils.uiVersion.major === 1 && utils.uiVersion.minor === 8) { 488 this.events = ['change', 'close', 'create', 'focus', 'open', 'search', 489 'select']; 490 } else { 491 this.options.push('messages'); 492 this.events = ['change', 'close', 'create', 'focus', 'open', 'response', 493 'search', 'select']; 494 } 495 }; 496 497 Autocomplete.prototype = utils.createObject(BindingHandler.prototype); 498 Autocomplete.prototype.constructor = Autocomplete; 499 500 utils.register(Autocomplete); 501 502 return Autocomplete; 503 } 504)); 505(function (root, factory) { 506 507 'use strict'; 508 509 root.kojqui.Button = factory(root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.button); 510}(this, 511 function (BindingHandler, utils) { 512 513 'use strict'; 514 515 var Button = function () { 516 /// <summary>Constructor.</summary> 517 518 BindingHandler.call(this, 'button'); 519 520 this.options = ['disabled', 'icons', 'label', 'text']; 521 this.events = ['create']; 522 this.hasRefresh = true; 523 }; 524 525 Button.prototype = utils.createObject(BindingHandler.prototype); 526 Button.prototype.constructor = Button; 527 528 utils.register(Button); 529 530 return Button; 531 } 532)); 533(function (root, factory) { 534 535 'use strict'; 536 537 root.kojqui.Buttonset = factory(root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.button); 538}(this, 539 function (BindingHandler, utils) { 540 541 'use strict'; 542 543 var Buttonset = function () { 544 /// <summary>Constructor.</summary> 545 546 BindingHandler.call(this, 'buttonset'); 547 548 this.options = ['items', 'disabled']; 549 this.events = ['create']; 550 this.hasRefresh = true; 551 }; 552 553 Buttonset.prototype = utils.createObject(BindingHandler.prototype); 554 Buttonset.prototype.constructor = Buttonset; 555 556 utils.register(Buttonset); 557 558 return Buttonset; 559 } 560)); 561(function (root, factory) { 562 563 'use strict'; 564 565 root.kojqui.Datepicker = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.datepicker); 566}(this, 567 function ($, ko, BindingHandler, utils) { 568 569 'use strict'; 570 571 var Datepicker = function () { 572 /// <summary>Constructor.</summary> 573 574 BindingHandler.call(this, 'datepicker'); 575 576 this.options = ['altField', 'altFormat', 'appendText', 'autoSize', 577 'buttonImage', 'buttonImageOnly', 'buttonText', 'calculateWeek', 578 'changeMonth', 'changeYear', 'closeText', 'constrainInput', 'currentText', 579 'dateFormat', 'dayNames', 'dayNamesMin', 'dayNamesShort', 'defaultDate', 580 'duration', 'firstDay', 'gotoCurrent', 'hideIfNoPrevNext', 'isRTL', 581 'maxDate', 'minDate', 'monthNames', 'monthNamesShort', 582 'navigationAsDateFormat', 'nextText', 'numberOfMonths', 'prevText', 583 'selectOtherMonths', 'shortYearCutoff', 'showAnim', 'showButtonPanel', 584 'showCurrentAtPos', 'showMonthAfterYear', 'showOn', 'showOptions', 585 'showOtherMonths', 'showWeek', 'stepMonths', 'weekHeader', 'yearRange',
586 'yearSuffix', 'beforeShow', 'beforeShowDay', 'onChangeMonthYear', 587 'onClose', 'onSelect']; 588 this.hasRefresh = true; 589 }; 590 591 Datepicker.prototype = utils.createObject(BindingHandler.prototype); 592 Datepicker.prototype.constructor = Datepicker; 593 594 Datepicker.prototype.init = function (element, valueAccessor) { 595 /// <summary>Keeps the value binding property in sync with the widget's state. 596 /// </summary> 597 /// <param name='element' type='DOMNode'></param> 598 /// <param name='valueAccessor' type='Function'></param> 599 /// <returns type='Object'></returns> 600 601 var result, widgetName, options, value, subscription, origOnSelect, origOnClose; 602 603 result = BindingHandler.prototype.init.apply(this, arguments); 604 605 widgetName = this.widgetName; 606 options = valueAccessor(); 607 value = ko.utils.unwrapObservable(options.value); 608 609 if (value) { 610 $(element)[widgetName]('setDate', value); 611 } 612 613 if (ko.isObservable(options.value)) { 614 subscription = options.value.subscribe(function (newValue) { 615 $(element)[widgetName]('setDate', newValue); 616 }); 617 618 ko.utils.domNodeDisposal.addDisposeCallback(element, function () { 619 subscription.dispose(); 620 }); 621 } 622 623 if (ko.isWriteableObservable(options.value)) { 624 origOnSelect = $(element)[widgetName]('option', 'onSelect'); 625 $(element)[widgetName]('option', 'onSelect', function (selectedText) { 626 var format, date; 627 628 format = $(element)[widgetName]('option', 'dateFormat'); 629 date = $.datepicker.parseDate(format, selectedText); 630 options.value(date); 631 632 if (typeof origOnSelect === 'function') { 633 origOnSelect.apply(this, Array.prototype.slice.call(arguments)); 634 } 635 }); 636 637 origOnClose = $(element)[widgetName]('option', 'onClose'); 638 $(element)[widgetName]('option', 'onClose', function (selectedText) { 639 var format, date; 640 641 format = $(element)[widgetName]('option', 'dateFormat'); 642 date = $.datepicker.parseDate(format, selectedText); 643 options.value(date); 644 645 if (typeof onClose=== 'function') { 646 onClose.apply(this, Array.prototype.slice.call(arguments)); 647 } 648 }); 649 } 650 651 return result; 652 }; 653 654 utils.register(Datepicker); 655 656 return Datepicker; 657 } 658)); 659(function (root, factory) { 660 661 'use strict'; 662 663 root.kojqui.Dialog = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.dialog); 664}(this, 665 function ($, ko, BindingHandler, utils) { 666 667 'use strict'; 668 669 var Dialog = function () { 670 /// <summary>Constructor.</summary> 671 672 BindingHandler.call(this, 'dialog'); 673 674 if (utils.uiVersion.major === 1 && utils.uiVersion.minor === 8) { 675 this.options = ['autoOpen', 'buttons', 'closeOnEscape', 'closeText', 676 'dialogClass', 'disabled', 'draggable', 'height', 'maxHeight', 677 'maxWidth', 'minHeight', 'minWidth', 'modal', 'position', 'resizable', 678 'show', 'stack', 'title', 'width', 'zIndex']; 679 this.events = ['beforeClose', 'create', 'open', 'focus', 'dragStart', 680 'drag', 'dragStop', 'resizeStart', 'resize', 'resizeStop', 'close']; 681 } else if (utils.uiVersion.major === 1 && utils.uiVersion.minor === 9) { 682 this.options = ['autoOpen', 'buttons', 'closeOnEscape', 'closeText', 683 'dialogClass', 'draggable', 'height', 'hide', 'maxHeight', 'maxWidth', 684 'minHeight', 'minWidth', 'modal', 'position', 'resizable', 'show', 685 'stack', 'title', 'width', 'zIndex']; 686 this.events = ['beforeClose', 'create', 'open', 'focus', 'dragStart', 687 'drag', 'dragStop', 'resizeStart', 'resize', 'resizeStop', 'close']; 688 } else { 689 this.options = ['appendTo', 'autoOpen', 'buttons', 'closeOnEscape', 690 'closeText', 'dialogClass', 'draggable', 'height', 'hide', 691 'maxHeight', 'maxWidth', 'minHeight', 'minWidth', 'modal', 'position', 692 'resizable', 'show', 'title', 'width']; 693 this.events = ['beforeClose', 'create', 'open', 'focus', 'dragStart', 694 'drag', 'dragStop', 'resizeStart', 'resize', 'resizeStop', 'close']; 695 } 696 }; 697 698 Dialog.prototype = utils.createObject(BindingHandler.prototype); 699 Dialog.prototype.constructor = Dialog; 700 701 Dialog.prototype.init = function (element, valueAccessor) { 702 /// <summary>Creates a hidden div before the element. This helps in disposing 703 /// the binding if the element is moved from its original location. 704 /// Keeps the isOpen binding property in sync with the dialog's state. 705 // </summary> 706 /// <param name='element' type='DOMNode'></param> 707 /// <param name='valueAccessor' type='Function'></param> 708 /// <returns type='Object'></returns> 709 710 var marker, result, value; 711 712 /// sets up the correct disposal 713 marker = document.createElement('DIV'); 714 marker.style.display = 'none'; 715 element.parentNode.insertBefore(marker, element); 716 717 ko.utils.domNodeDisposal.addDisposeCallback(marker, function () { 718 ko.removeNode(element); 719 }); 720 721 /// invokes the prototype's init() method
722 result = BindingHandler.prototype.init.apply(this, arguments); 723 724 /// sets up handling of the isOpen option 725 value = valueAccessor(); 726 727 if (value.isOpen) { 728 ko.computed({ 729 read: function () { 730 if (ko.utils.unwrapObservable(value.isOpen)) { 731 $(element)[this.widgetName]('open'); 732 } else { 733 $(element)[this.widgetName]('close'); 734 } 735 }, 736 disposeWhenNodeIsRemoved: element, 737 owner: this 738 }); 739 } 740 if (ko.isWriteableObservable(value.isOpen)) { 741 this.on(element, 'open', function () { 742 value.isOpen(true); 743 }); 744 this.on(element, 'close', function () { 745 value.isOpen(false); 746 }); 747 } 748 749 // make the width option two-way 750 if (ko.isWriteableObservable(value.width)) { 751 /*jslint unparam:true*/ 752 this.on(element, 'resizestop', function (ev, ui) { 753 value.width(Math.round(ui.size.width)); 754 }); 755 /*jslint unparam:false*/ 756 } 757 758 // make the height option two-way 759 if (ko.isWriteableObservable(value.height)) { 760 /*jslint unparam:true*/ 761 this.on(element, 'resizestop', function (ev, ui) { 762 value.height(Math.round(ui.size.height)); 763 }); 764 /*jslint unparam:false*/ 765 } 766 767 return result; 768 }; 769 770 utils.register(Dialog); 771 772 return Dialog; 773 } 774)); 775(function (root, factory) { 776 777 'use strict'; 778 779 root.kojqui.Menu = factory(root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.menu); 780}(this, 781 function (BindingHandler, utils) { 782 783 'use strict'; 784 785 var Menu = function () { 786 /// <summary>Constructor.</summary> 787 788 BindingHandler.call(this, 'menu'); 789 790 if (utils.uiVersion.major === 1 && utils.uiVersion.minor < 11) { 791 this.options = ['disabled', 'icons', 'menus', 'position', 'role']; 792 } else { 793 this.options = ['disabled', 'icons', 'items', 'menus', 'position', 794 'role']; 795 } 796 797 this.events = ['blur', 'create', 'focus', 'select']; 798 this.hasRefresh = true; 799 }; 800 801 Menu.prototype = utils.createObject(BindingHandler.prototype); 802 Menu.prototype.constructor = Menu; 803 804 utils.register(Menu); 805 806 return Menu; 807 } 808)); 809(function (root, factory) { 810 811 'use strict'; 812 813 root.kojqui.Progressbar = factory(root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.progressbar); 814}(this, 815 function (BindingHandler, utils) { 816 817 'use strict'; 818 819 var Progressbar = function () { 820 /// <summary>Constructor.</summary> 821 822 BindingHandler.call(this, 'progressbar'); 823 824 this.events = ['change', 'create', 'complete']; 825 this.hasRefresh = true; 826 827 if (utils.uiVersion.major === 1 && utils.uiVersion.minor === 8) { 828 this.options = ['disabled', 'value']; 829 } else { 830 this.options = ['disabled', 'max', 'value']; 831 } 832 }; 833 834 Progressbar.prototype = utils.createObject(BindingHandler.prototype); 835 Progressbar.prototype.constructor = Progressbar; 836 837 utils.register(Progressbar); 838 839 return Progressbar; 840 } 841)); 842(function (root, factory) { 843 844 'use strict'; 845 846 root.kojqui.Selectmenu = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.selectmenu); 847}(this, 848 function ($, ko, BindingHandler, utils) { 849 850 'use strict'; 851 852 var domDataKey, Selectmenu; 853 854 domDataKey = '__kojqui_selectmenu_value'; 855 856 Selectmenu = function () { 857 /// <summary>Constructor.</summary> 858 859 BindingHandler.call(this, 'selectmenu'); 860 861 this.after = ['value']; 862 this.options = ['appendTo', 'disabled', 'icons', 'position', 'width']; 863 this.events = ['change', 'close', 'create', 'focus', 'open', 'select']; 864 this.hasRefresh = true; 865 }; 866 867 Selectmenu.prototype = utils.createObject(BindingHandler.prototype); 868 Selectmenu.prototype.constructor = Selectmenu; 869 870 Selectmenu.prototype.init = function (element, valueAccessor) { 871 /// <summary>Connects the view model and the widget via the isOpen property. 872 // </summary> 873 /// <param name='element' type='DOMNode'></param> 874 /// <param name='valueAccessor' type='Function'></param> 875 /// <returns type='Object'></returns> 876 877 var value, result; 878 879 value = valueAccessor(); 880 881 /// invokes the prototype's init() method
882 result = BindingHandler.prototype.init.apply(this, arguments); 883 884 // maintain the isOpen option 885 if (value.hasOwnProperty('isOpen')) { 886 ko.computed({ 887 read: function () { 888 if (ko.utils.unwrapObservable(value.isOpen)) { 889 $(element)[this.widgetName]('open'); 890 } else { 891 $(element)[this.widgetName]('close'); 892 } 893 }, 894 disposeWhenNodeIsRemoved: element, 895 owner: this 896 }); 897 } 898 if (ko.isWriteableObservable(value.isOpen)) { 899 this.on(element, 'open', function () { 900 value.isOpen(true); 901 }); 902 this.on(element, 'close', function () { 903 value.isOpen(false); 904 }); 905 } 906 907 // Notify knockout's value- and selectedOptions bindings that the selected 908 // option has been changed. 909 this.on(element, 'change', function () { 910 $(element).trigger('change'); 911 }); 912 913 return result; 914 }; 915 916 /*jslint unparam:true*/ 917 Selectmenu.prototype.update = function (element, valueAccessor, 918 allBindingsAccessor) { 919 /// <summary>Refreshes the widget if the value binding changes.</summary> 920 /// <param name='element' type='DOMNode'></param> 921 /// <param name='valueAccessor' type='Function'></param> 922 /// <param name='allBindingsAccessor' type='Object'></param> 923 924 var oldValue, newValue; 925 926 BindingHandler.prototype.update.apply(this, arguments); 927 928 // synchronize the selected option with knockout's standard value binding 929 if (allBindingsAccessor().hasOwnProperty('value')) { 930 oldValue = ko.utils.domData.get(element, domDataKey); 931 newValue = ko.utils.unwrapObservable(allBindingsAccessor().value); 932 if (oldValue !== newValue) { 933 $(element).selectmenu('refresh'); 934 } 935 } 936 }; 937 /*jslint unparam:false*/ 938 939 utils.register(Selectmenu); 940 941 return Selectmenu; 942 } 943)); 944(function (root, factory) { 945 946 'use strict'; 947 948 root.kojqui.Slider = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.slider); 949}(this, 950 function ($, ko, BindingHandler, utils) { 951 952 'use strict'; 953 954 var domDataKey, Slider; 955 956 domDataKey = '__kojqui_options'; 957 958 Slider = function () { 959 /// <summary>Constructor.</summary> 960 961 BindingHandler.call(this, 'slider'); 962 963 this.widgetEventPrefix = 'slide'; 964 this.options = ['animate', 'disabled', 'max', 'min', 'orientation', 'range', 965 'step', 'value', 'values']; 966 this.events = ['create', 'start', 'slide', 'change', 'stop', 'touchStart', 'touchEnd']; 967 }; 968 969 Slider.prototype = utils.createObject(BindingHandler.prototype); 970 Slider.prototype.constructor = Slider; 971 972 Slider.prototype.init = function (element, valueAccessor) { 973 /// <summary>Keeps the value and the values binding property in sync with the 974 /// slider widget's values.</summary> 975 /// <param name='element' type='DOMNode'></param> 976 /// <param name='valueAccessor' type='Function'></param> 977 978 var result, value, changeEvent; 979 980 result = BindingHandler.prototype.init.apply(this, arguments); 981 982 value = valueAccessor(); 983 changeEvent = value.realtime ? 'slide' : 'change'; 984 985 if (ko.isWriteableObservable(value.value)) { 986 /*jslint unparam:true*/ 987 this.on(element, changeEvent, function (ev, ui) { 988 var index = $(element).find('.ui-slider-handle').index(ui.handle); 989 if (index === 0) { 990 // The slider widget, in its _slide() method, raises the 991 // slide/slidechange events, then immediately updates its value 992 // property. If any of the event handlers hooked onto the 993 // slide/slidechange event sets the widget's value property, it 994 // will ruin the sliding animation. 995 // To prevent that, we trick the update() method defined in 996 // BindingHandler to think that the value option is already 997 // updated. 998 ko.utils.domData.get(element, domDataKey).value = ui.value; 999 value.value(ui.value); 1000 } 1001 }); 1002 /*jslint unparam:false*/ 1003 } 1004 if (ko.isWriteableObservable(value.values)) { 1005 /*jslint unparam:true*/ 1006 this.on(element, changeEvent, function (ev, ui) { 1007 // see the explanation above 1008 ko.utils.domData.get(element, domDataKey).value = ui.values; 1009 value.values(ui.values); 1010 }); 1011 /*jslint unparam:false*/ 1012 } 1013 1014 return result; 1015 }; 1016 1017 utils.register(Slider); 1018 1019 return Slider; 1020 } 1021)); 1022(function (root, factory) { 1023 1024 'use strict'; 1025 1026 root.kojqui.Spinner = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.spinner); 1027}(this, 1028 function ($, ko, BindingHandler, utils) { 1029 1030 'use strict'; 1031 1032 var Spinner = function () { 1033 /// <summary>Constructor.</summary> 1034 1035 BindingHandler.call(this, 'spinner'); 1036 1037 this.widgetEventPrefix = 'spin'; 1038 this.options = ['culture', 'disabled', 'icons', 'incremental', 'max', 'min', 1039 'numberFormat', 'page', 'step']; 1040 this.events = ['create', 'start', 'spin', 'stop', 'change']; 1041 }; 1042 1043 Spinner.prototype = utils.createObject(BindingHandler.prototype); 1044 Spinner.prototype.constructor = Spinner; 1045 1046 Spinner.prototype.init = function (element, valueAccessor) { 1047 /// <summary>Keeps the value binding property in sync with the spinner's 1048 /// value.</summary> 1049 /// <param name='element' type='DOMNode'></param> 1050 /// <param name='valueAccessor' type='Function'></param> 1051 /// <param name='allBindingsAccessor' type='Function'></param> 1052 1053 var result, widgetName, value; 1054
1055 result = BindingHandler.prototype.init.apply(this, arguments); 1056 1057 widgetName = this.widgetName; 1058 value = valueAccessor(); 1059 1060 if (value.value) { 1061 ko.computed({ 1062 read: function () { 1063 $(element)[widgetName]('value', 1064 ko.utils.unwrapObservable(value.value)); 1065 }, 1066 disposeWhenNodeIsRemoved: element 1067 }); 1068 } 1069 1070 if (ko.isWriteableObservable(value.value)) { 1071 // The spin event is raised immediately when the value is changed with the 1072 // up/down buttons, while the change event is raised when the value is set 1073 // via the widget's value() method. Let's listen to both events. 1074 1075 /*jslint unparam:true*/ 1076 this.on(element, 'spin', function (ev, ui) { 1077 value.value(ui.value); 1078 }); 1079 /*jslint unparam:false*/ 1080 1081 this.on(element, 'change', function () { 1082 value.value($(element)[widgetName]('value')); 1083 }); 1084 } 1085 1086 return result; 1087 }; 1088 1089 utils.register(Spinner); 1090 1091 return Spinner; 1092 } 1093)); 1094(function (root, factory) { 1095 1096 'use strict'; 1097 1098 root.kojqui.Tabs = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.tabs); 1099}(this, 1100 function ($, ko, BindingHandler, utils) { 1101 1102 'use strict'; 1103 1104 var postInitHandler18, postInitHandler, Tabs; 1105 1106 postInitHandler18 = function (element, valueAccessor) { 1107 /// <summary>Keeps the active binding property in sync with the tabs' state. 1108 /// </summary> 1109 /// <param name='element' type='DOMNode'></param> 1110 /// <param name='valueAccessor' type='Function'></param> 1111 1112 var value = valueAccessor(); 1113 1114 if (ko.isWriteableObservable(value.selected)) { 1115 /*jslint unparam:true*/ 1116 this.on(element, 'show', function (ev, ui) { 1117 if ($(element)[0] === ev.target) { 1118 // Only activate if this is the right tab widget. 1119 value.selected(ui.index); 1120 } 1121 }); 1122 /*jslint unparam:false*/ 1123 } 1124 }; 1125 1126 postInitHandler = function (element, valueAccessor) { 1127 /// <summary>Keeps the active binding property in sync with the tabs' state. 1128 /// </summary> 1129 /// <param name='element' type='DOMNode'></param> 1130 /// <param name='valueAccessor' type='Function'></param> 1131 1132 var value = valueAccessor(); 1133 1134 if (ko.isWriteableObservable(value.active)) { 1135 /*jslint unparam:true*/ 1136 this.on(element, 'activate', function (ev, ui) { 1137 if ($(element)[0] === ev.target) { 1138 // Only activate if this is the right tab widget. 1139 value.active(ui.newTab.index()); 1140 } 1141 }); 1142 /*jslint unparam:false*/ 1143 } 1144 }; 1145 1146 Tabs = function () { 1147 /// <summary>Constructor.</summary> 1148 1149 BindingHandler.call(this, 'tabs'); 1150 1151 this.version = utils.uiVersion; 1152 1153 if (this.version.major === 1 && this.version.minor === 8) { 1154 this.options = ['ajaxOptions', 'cache', 'collapsible', 'cookie', 1155 'disabled', 'event', 'fx', 'idPrefix', 'panelTemplate', 'selected', 1156 'spinner', 'tabTemplate']; 1157 this.events = ['add', 'create', 'disable', 'enable', 'load', 'remove', 1158 'select', 'show']; 1159 this.hasRefresh = false; 1160 } else { 1161 this.options = ['active', 'collapsible', 'disabled', 'event', 1162 'heightStyle', 'hide', 'show']; 1163 this.events = ['activate', 'beforeActivate', 'beforeLoad', 'create', 1164 'load']; 1165 this.hasRefresh = true; 1166 } 1167 }; 1168 1169 Tabs.prototype = utils.createObject(BindingHandler.prototype); 1170 Tabs.prototype.constructor = Tabs; 1171 1172 Tabs.prototype.init = function (element, valueAccessor) { 1173 /// <summary>Keeps the active binding property in sync with the tabs' state. 1174 /// </summary> 1175 /// <param name='element' type='DOMNode'></param> 1176 /// <param name='valueAccessor' type='Function'></param> 1177
1178 var result = BindingHandler.prototype.init.apply(this, arguments); 1179 1180 if (this.version.major === 1 && this.version.minor === 8) { 1181 postInitHandler18.call(this, element, valueAccessor); 1182 } else { 1183 postInitHandler.call(this, element, valueAccessor); 1184 } 1185 1186 return result; 1187 }; 1188 1189 utils.register(Tabs); 1190 1191 return Tabs; 1192 } 1193)); 1194(function (root, factory) { 1195 1196 'use strict'; 1197 1198 root.kojqui.Tooltip = factory(root.jQuery, root.ko, root.kojqui.BindingHandler, root.kojqui.utils, root.jQuery.ui.tooltip); 1199}(this, 1200 function ($, ko, BindingHandler, utils) { 1201 1202 'use strict'; 1203 1204 var Tooltip = function () { 1205 /// <summary>Constructor.</summary> 1206 1207 BindingHandler.call(this, 'tooltip'); 1208 1209 this.options = ['content', 'disabled', 'hide', 'items', 'position', 'show', 1210 'tooltipClass', 'track']; 1211 this.events = ['create', 'open', 'close']; 1212 }; 1213 1214 Tooltip.prototype = utils.createObject(BindingHandler.prototype); 1215 Tooltip.prototype.constructor = Tooltip; 1216 1217 Tooltip.prototype.init = function (element, valueAccessor) { 1218 /// <summary>Keeps the isOpen binding property in sync with the tooltip's 1219 /// state. 1220 /// </summary> 1221 /// <param name='element' type='DOMNode'></param> 1222 /// <param name='valueAccessor' type='Function'></param> 1223 1224 var value, result; 1225 1226 value = valueAccessor(); 1227 1228 result = BindingHandler.prototype.init.apply(this, arguments); 1229 1230 if (value.isOpen) { 1231 ko.computed({ 1232 read: function () { 1233 if (ko.utils.unwrapObservable(value.isOpen)) { 1234 $(element)[this.widgetName]('open'); 1235 } else { 1236 $(element)[this.widgetName]('close'); 1237 } 1238 }, 1239 disposeWhenNodeIsRemoved: element, 1240 owner: this 1241 }); 1242 } 1243 if (ko.isWriteableObservable(value.isOpen)) { 1244 this.on(element, 'open', function () { 1245 value.isOpen(true); 1246 }); 1247 this.on(element, 'close', function () { 1248 value.isOpen(false); 1249 }); 1250 } 1251 1252 return result; 1253 }; 1254 1255 utils.register(Tooltip); 1256 1257 return Tooltip; 1258 } 1259)); 1260 1261ko.bindingHandlers.prependText = { 1262 update: function(element, valueAccessor) { 1263 var value = ko.utils.unwrapObservable(valueAccessor()); 1264 //replace the first child 1265 element.replaceChild(document.createTextNode(value), element.firstChild); 1266 } 1267}; 1268ko.bindingHandlers.textForChild = { 1269 init: function(element, valueAccessor) { 1270 var options = valueAccessor() || {}; 1271 var child = jQuery(element).find(options.childSelector); 1272 var text = ko.unwrap(options.text); 1273 jQuery(child).text(text); 1274 } 1275}; 1276 1277</script>
vendor: 2 bytes, line 1277
1277
vendor: 5,808 bytes, lines 1278-1454
1278<script type='text/javascript' defer> 1279/*! nouislider - 14.0.2 - 6/28/2019 */ 1280(function(factory) { 1281 if (typeof define === "function" && define.amd) { 1282 // AMD. Register as an anonymous module. 1283 define([], factory); 1284 } else if (typeof exports === "object") { 1285 // Node/CommonJS 1286 module.exports = factory(); 1287 } else { 1288 // Browser globals 1289 window.noUiSlider = factory(); 1290 } 1291})(function() { 1292 "use strict"; 1293 1294 var VERSION = "14.0.2"; 1295 1296 //region Helper Methods 1297 1298 function isValidFormatter(entry) { 1299 return typeof entry === "object" && typeof entry.to === "function" && typeof entry.from === "function"; 1300 } 1301 1302 function removeElement(el) { 1303 el.parentElement.removeChild(el); 1304 } 1305 1306 function isSet(value) { 1307 return value !== null && value !== undefined; 1308 } 1309 1310 // Bindable version 1311 function preventDefault(e) { 1312 e.preventDefault(); 1313 } 1314 1315 // Removes duplicates from an array. 1316 function unique(array) { 1317 return array.filter(function(a) { 1318 return !this[a] ? (this[a] = true) : false; 1319 }, {}); 1320 } 1321 1322 // Round a value to the closest 'to'. 1323 function closest(value, to) { 1324 return Math.round(value / to) * to; 1325 } 1326 1327 // Current position of an element relative to the document. 1328 function offset(elem, orientation) { 1329 var rect = elem.getBoundingClientRect(); 1330 var doc = elem.ownerDocument; 1331 var docElem = doc.documentElement; 1332 var pageOffset = getPageOffset(doc); 1333 1334 // getBoundingClientRect contains left scroll in Chrome on Android. 1335 // I haven't found a feature detection that proves this. Worst case 1336 // scenario on mis-match: the 'tap' feature on horizontal sliders breaks. 1337 if (/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)) { 1338 pageOffset.x = 0; 1339 } 1340 1341 return orientation 1342 ? rect.top + pageOffset.y - docElem.clientTop 1343 : rect.left + pageOffset.x - docElem.clientLeft; 1344 } 1345 1346 // Checks whether a value is numerical. 1347 function isNumeric(a) { 1348 return typeof a === "number" && !isNaN(a) && isFinite(a); 1349 } 1350 1351 // Sets a class and removes it after [duration] ms. 1352 function addClassFor(element, className, duration) { 1353 if (duration > 0) { 1354 addClass(element, className); 1355 setTimeout(function() { 1356 removeClass(element, className); 1357 }, duration); 1358 } 1359 } 1360 1361 // Limits a value to 0 - 100 1362 function limit(a) { 1363 return Math.max(Math.min(a, 100), 0); 1364 } 1365 1366 // Wraps a variable as an array, if it isn't one yet. 1367 // Note that an input array is returned by reference! 1368 function asArray(a) { 1369 return Array.isArray(a) ? a : [a]; 1370 } 1371 1372 // Counts decimals 1373 function countDecimals(numStr) { 1374 numStr = String(numStr); 1375 var pieces = numStr.split("."); 1376 return pieces.length > 1 ? pieces[1].length : 0; 1377 } 1378 1379 // https://youmightnotneedjquery.com/#add_class 1380 function addClass(el, className) { 1381 if (el.classList) { 1382 el.classList.add(className); 1383 } else { 1384 el.className += " " + className; 1385 } 1386 } 1387 1388 // https://youmightnotneedjquery.com/#remove_class 1389 function removeClass(el, className) { 1390 if (el.classList) { 1391 el.classList.remove(className); 1392 } else { 1393 el.className = el.className.replace( 1394 new RegExp("(^|\\b)" + className.split(" ").join("|") + "(\\b|$)", "gi"), 1395 " " 1396 ); 1397 } 1398 } 1399 1400 // https://plainjs.com/javascript/attributes/adding-removing-and-testing-for-classes-9/ 1401 function hasClass(el, className) { 1402 return el.classList 1403 ? el.classList.contains(className) 1404 : new RegExp("\\b" + className + "\\b").test(el.className); 1405 } 1406 1407 // https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY#Notes 1408 function getPageOffset(doc) { 1409 var supportPageOffset = window.pageXOffset !== undefined; 1410 var isCSS1Compat = (doc.compatMode || "") === "CSS1Compat"; 1411 var x = supportPageOffset 1412 ? window.pageXOffset 1413 : isCSS1Compat 1414 ? doc.documentElement.scrollLeft 1415 : doc.body.scrollLeft; 1416 var y = supportPageOffset 1417 ? window.pageYOffset 1418 : isCSS1Compat 1419 ? doc.documentElement.scrollTop 1420 : doc.body.scrollTop; 1421 1422 return { 1423 x: x, 1424 y: y 1425 }; 1426 } 1427 1428 // we provide a function to compute constants instead 1429 // of accessing window.* as soon as the module needs it 1430 // so that we do not compute anything if not needed 1431 function getActions() { 1432 // Determine the events to bind. IE11 implements pointerEvents without 1433 // a prefix, which breaks compatibility with the IE10 implementation. 1434 return window.navigator.pointerEnabled 1435 ? { 1436 start: "pointerdown", 1437 move: "pointermove", 1438 end: "pointerup" 1439 } 1440 : window.navigator.msPointerEnabled 1441 ? { 1442 start: "MSPointerDown", 1443 move: "MSPointerMove", 1444 end: "MSPointerUp" 1445 } 1446 : { 1447 start: "mousedown touchstart", 1448 move: "mousemove touchmove", 1449 end: "mouseup touchend" 1450 }; 1451 } 1452 1453 // https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md 1454 // Issue #785
1455 function getSupportsPassive() { 1456 var supportsPassive = false; 1457 1458 /* eslint-disable */ 1459 try { 1460 var opts = Object.defineProperty({}, "passive", { 1461 get: function() { 1462 supportsPassive = true; 1463 } 1464 }); 1465 1466 window.addEventListener("test", null, opts); 1467 } catch (e) {} 1468 /* eslint-enable */ 1469 1470 return supportsPassive; 1471 } 1472 1473 function getSupportsTouchActionNone() { 1474 return window.CSS && CSS.supports && CSS.supports("touch-action", "none"); 1475 } 1476 1477 //endregion 1478 1479 //region Range Calculation 1480 1481 // Determine the size of a sub-range in relation to a full range. 1482 function subRangeRatio(pa, pb) { 1483 return 100 / (pb - pa); 1484 } 1485 1486 // (percentage) How many percent is this value of this range? 1487 function fromPercentage(range, value) { 1488 return (value * 100) / (range[1] - range[0]); 1489 } 1490 1491 // (percentage) Where is this value on this range? 1492 function toPercentage(range, value) { 1493 return fromPercentage(range, range[0] < 0 ? value + Math.abs(range[0]) : value - range[0]); 1494 } 1495 1496 // (value) How much is this percentage on this range? 1497 function isPercentage(range, value) { 1498 return (value * (range[1] - range[0])) / 100 + range[0]; 1499 } 1500 1501 function getJ(value, arr) { 1502 var j = 1; 1503 1504 while (value >= arr[j]) { 1505 j += 1; 1506 } 1507 1508 return j; 1509 } 1510 1511 // (percentage) Input a value, find where, on a scale of 0-100, it applies. 1512 function toStepping(xVal, xPct, value) { 1513 if (value >= xVal.slice(-1)[0]) { 1514 return 100; 1515 } 1516 1517 var j = getJ(value, xVal); 1518 var va = xVal[j - 1]; 1519 var vb = xVal[j]; 1520 var pa = xPct[j - 1]; 1521 var pb = xPct[j]; 1522 1523 return pa + toPercentage([va, vb], value) / subRangeRatio(pa, pb); 1524 } 1525 1526 // (value) Input a percentage, find where it is on the specified range. 1527 function fromStepping(xVal, xPct, value) { 1528 // There is no range group that fits 100 1529 if (value >= 100) { 1530 return xVal.slice(-1)[0]; 1531 } 1532 1533 var j = getJ(value, xPct); 1534 var va = xVal[j - 1]; 1535 var vb = xVal[j]; 1536 var pa = xPct[j - 1]; 1537 var pb = xPct[j]; 1538 1539 return isPercentage([va, vb], (value - pa) * subRangeRatio(pa, pb)); 1540 } 1541 1542 // (percentage) Get the step that applies at a certain value. 1543 function getStep(xPct, xSteps, snap, value) { 1544 if (value === 100) { 1545 return value; 1546 } 1547 1548 var j = getJ(value, xPct); 1549 var a = xPct[j - 1]; 1550 var b = xPct[j]; 1551 1552 // If 'snap' is set, steps are used as fixed points on the slider. 1553 if (snap) { 1554 // Find the closest position, a or b. 1555 if (value - a > (b - a) / 2) { 1556 return b; 1557 } 1558 1559 return a; 1560 } 1561 1562 if (!xSteps[j - 1]) { 1563 return value; 1564 } 1565 1566 return xPct[j - 1] + closest(value - xPct[j - 1], xSteps[j - 1]); 1567 } 1568 1569 function handleEntryPoint(index, value, that) { 1570 var percentage; 1571 1572 // Wrap numerical input in an array. 1573 if (typeof value === "number") { 1574 value = [value]; 1575 } 1576 1577 // Reject any invalid input, by testing whether value is an array. 1578 if (!Array.isArray(value)) { 1579 throw new Error("noUiSlider (" + VERSION + "): 'range' contains invalid value."); 1580 } 1581 1582 // Covert min/max syntax to 0 and 100. 1583 if (index === "min") { 1584 percentage = 0; 1585 } else if (index === "max") { 1586 percentage = 100; 1587 } else { 1588 percentage = parseFloat(index); 1589 } 1590
1591 // Check for correct input. 1592 if (!isNumeric(percentage) || !isNumeric(value[0])) { 1593 throw new Error("noUiSlider (" + VERSION + "): 'range' value isn't numeric."); 1594 } 1595 1596 // Store values. 1597 that.xPct.push(percentage); 1598 that.xVal.push(value[0]); 1599 1600 // NaN will evaluate to false too, but to keep 1601 // logging clear, set step explicitly. Make sure 1602 // not to override the 'step' setting with false. 1603 if (!percentage) { 1604 if (!isNaN(value[1])) { 1605 that.xSteps[0] = value[1]; 1606 } 1607 } else { 1608 that.xSteps.push(isNaN(value[1]) ? false : value[1]); 1609 } 1610 1611 that.xHighestCompleteStep.push(0); 1612 } 1613 1614 function handleStepPoint(i, n, that) { 1615 // Ignore 'false' stepping. 1616 if (!n) { 1617 return; 1618 } 1619 1620 // Step over zero-length ranges (#948); 1621 if (that.xVal[i] === that.xVal[i + 1]) { 1622 that.xSteps[i] = that.xHighestCompleteStep[i] = that.xVal[i]; 1623 1624 return; 1625 } 1626 1627 // Factor to range ratio 1628 that.xSteps[i] = 1629 fromPercentage([that.xVal[i], that.xVal[i + 1]], n) / subRangeRatio(that.xPct[i], that.xPct[i + 1]); 1630 1631 var totalSteps = (that.xVal[i + 1] - that.xVal[i]) / that.xNumSteps[i]; 1632 var highestStep = Math.ceil(Number(totalSteps.toFixed(3)) - 1); 1633 var step = that.xVal[i] + that.xNumSteps[i] * highestStep; 1634 1635 that.xHighestCompleteStep[i] = step; 1636 } 1637 1638 //endregion 1639 1640 //region Spectrum 1641 1642 function Spectrum(entry, snap, singleStep) { 1643 this.xPct = []; 1644 this.xVal = []; 1645 this.xSteps = [singleStep || false]; 1646 this.xNumSteps = [false]; 1647 this.xHighestCompleteStep = []; 1648 1649 this.snap = snap; 1650 1651 var index; 1652 var ordered = []; // [0, 'min'], [1, '50%'], [2, 'max'] 1653 1654 // Map the object keys to an array. 1655 for (index in entry) { 1656 if (entry.hasOwnProperty(index)) { 1657 ordered.push([entry[index], index]); 1658 } 1659 } 1660 1661 // Sort all entries by value (numeric sort). 1662 if (ordered.length && typeof ordered[0][0] === "object") { 1663 ordered.sort(function(a, b) { 1664 return a[0][0] - b[0][0]; 1665 }); 1666 } else { 1667 ordered.sort(function(a, b) { 1668 return a[0] - b[0]; 1669 }); 1670 } 1671 1672 // Convert all entries to subranges. 1673 for (index = 0; index < ordered.length; index++) { 1674 handleEntryPoint(ordered[index][1], ordered[index][0], this); 1675 } 1676 1677 // Store the actual step values. 1678 // xSteps is sorted in the same order as xPct and xVal. 1679 this.xNumSteps = this.xSteps.slice(0); 1680 1681 // Convert all numeric steps to the percentage of the subrange they represent. 1682 for (index = 0; index < this.xNumSteps.length; index++) { 1683 handleStepPoint(index, this.xNumSteps[index], this); 1684 } 1685 } 1686 1687 Spectrum.prototype.getMargin = function(value) { 1688 var step = this.xNumSteps[0]; 1689 1690 if (step && (value / step) % 1 !== 0) { 1691 throw new Error("noUiSlider (" + VERSION + "): 'limit', 'margin' and 'padding' must be divisible by step."); 1692 } 1693 1694 return this.xPct.length === 2 ? fromPercentage(this.xVal, value) : false; 1695 }; 1696 1697 Spectrum.prototype.toStepping = function(value) { 1698 value = toStepping(this.xVal, this.xPct, value); 1699 1700 return value; 1701 }; 1702 1703 Spectrum.prototype.fromStepping = function(value) { 1704 return fromStepping(this.xVal, this.xPct, value); 1705 }; 1706 1707 Spectrum.prototype.getStep = function(value) { 1708 value = getStep(this.xPct, this.xSteps, this.snap, value); 1709 1710 return value; 1711 }; 1712 1713 Spectrum.prototype.getDefaultStep = function(value, isDown, size) { 1714 var j = getJ(value, this.xPct); 1715 1716 // When at the top or stepping down, look at the previous sub-range 1717 if (value === 100 || (isDown && value === this.xPct[j - 1])) { 1718 j = Math.max(j - 1, 1); 1719 } 1720 1721 return (this.xVal[j] - this.xVal[j - 1]) / size; 1722 }; 1723 1724 Spectrum.prototype.getNearbySteps = function(value) { 1725 var j = getJ(value, this.xPct); 1726 1727 return { 1728 stepBefore: { 1729 startValue: this.xVal[j - 2], 1730 step: this.xNumSteps[j - 2],
1731 highestStep: this.xHighestCompleteStep[j - 2] 1732 }, 1733 thisStep: { 1734 startValue: this.xVal[j - 1], 1735 step: this.xNumSteps[j - 1], 1736 highestStep: this.xHighestCompleteStep[j - 1] 1737 }, 1738 stepAfter: { 1739 startValue: this.xVal[j], 1740 step: this.xNumSteps[j], 1741 highestStep: this.xHighestCompleteStep[j] 1742 } 1743 }; 1744 }; 1745 1746 Spectrum.prototype.countStepDecimals = function() { 1747 var stepDecimals = this.xNumSteps.map(countDecimals); 1748 return Math.max.apply(null, stepDecimals); 1749 }; 1750 1751 // Outside testing 1752 Spectrum.prototype.convert = function(value) { 1753 return this.getStep(this.toStepping(value)); 1754 }; 1755 1756 //endregion 1757 1758 //region Options 1759 1760 /* Every input option is tested and parsed. This'll prevent 1761 endless validation in internal methods. These tests are 1762 structured with an item for every option available. An 1763 option can be marked as required by setting the 'r' flag. 1764 The testing function is provided with three arguments: 1765 - The provided value for the option; 1766 - A reference to the options object; 1767 - The name for the option; 1768 1769 The testing function returns false when an error is detected, 1770 or true when everything is OK. It can also modify the option 1771 object, to make sure all values can be correctly looped elsewhere. */ 1772 1773 var defaultFormatter = { 1774 to: function(value) { 1775 return value !== undefined && value.toFixed(2); 1776 }, 1777 from: Number 1778 }; 1779 1780 function validateFormat(entry) { 1781 // Any object with a to and from method is supported. 1782 if (isValidFormatter(entry)) { 1783 return true; 1784 } 1785 1786 throw new Error("noUiSlider (" + VERSION + "): 'format' requires 'to' and 'from' methods."); 1787 } 1788 1789 function testStep(parsed, entry) { 1790 if (!isNumeric(entry)) { 1791 throw new Error("noUiSlider (" + VERSION + "): 'step' is not numeric."); 1792 } 1793 1794 // The step option can still be used to set stepping 1795 // for linear sliders. Overwritten if set in 'range'. 1796 parsed.singleStep = entry; 1797 } 1798 1799 function testRange(parsed, entry) { 1800 // Filter incorrect input. 1801 if (typeof entry !== "object" || Array.isArray(entry)) { 1802 throw new Error("noUiSlider (" + VERSION + "): 'range' is not an object."); 1803 } 1804 1805 // Catch missing start or end. 1806 if (entry.min === undefined || entry.max === undefined) { 1807 throw new Error("noUiSlider (" + VERSION + "): Missing 'min' or 'max' in 'range'."); 1808 } 1809 1810 // Catch equal start or end. 1811 if (entry.min === entry.max) { 1812 throw new Error("noUiSlider (" + VERSION + "): 'range' 'min' and 'max' cannot be equal."); 1813 } 1814 1815 parsed.spectrum = new Spectrum(entry, parsed.snap, parsed.singleStep); 1816 } 1817 1818 function testStart(parsed, entry) { 1819 entry = asArray(entry); 1820 1821 // Validate input. Values aren't tested, as the public .val method 1822 // will always provide a valid location. 1823 if (!Array.isArray(entry) || !entry.length) { 1824 throw new Error("noUiSlider (" + VERSION + "): 'start' option is incorrect."); 1825 } 1826 1827 // Store the number of handles. 1828 parsed.handles = entry.length; 1829 1830 // When the slider is initialized, the .val method will 1831 // be called with the start options. 1832 parsed.start = entry; 1833 } 1834 1835 function testSnap(parsed, entry) { 1836 // Enforce 100% stepping within subranges. 1837 parsed.snap = entry; 1838 1839 if (typeof entry !== "boolean") { 1840 throw new Error("noUiSlider (" + VERSION + "): 'snap' option must be a boolean."); 1841 } 1842 } 1843 1844 function testAnimate(parsed, entry) { 1845 // Enforce 100% stepping within subranges. 1846 parsed.animate = entry; 1847 1848 if (typeof entry !== "boolean") { 1849 throw new Error("noUiSlider (" + VERSION + "): 'animate' option must be a boolean."); 1850 } 1851 } 1852 1853 function testAnimationDuration(parsed, entry) { 1854 parsed.animationDuration = entry; 1855 1856 if (typeof entry !== "number") { 1857 throw new Error("noUiSlider (" + VERSION + "): 'animationDuration' option must be a number."); 1858 } 1859 } 1860 1861 function testConnect(parsed, entry) { 1862 var connect = [false]; 1863 var i; 1864 1865 // Map legacy options 1866 if (entry === "lower") { 1867 entry = [true, false]; 1868 } else if (entry === "upper") {
1869 entry = [false, true]; 1870 } 1871 1872 // Handle boolean options 1873 if (entry === true || entry === false) { 1874 for (i = 1; i < parsed.handles; i++) { 1875 connect.push(entry); 1876 } 1877 1878 connect.push(false); 1879 } 1880 1881 // Reject invalid input 1882 else if (!Array.isArray(entry) || !entry.length || entry.length !== parsed.handles + 1) { 1883 throw new Error("noUiSlider (" + VERSION + "): 'connect' option doesn't match handle count."); 1884 } else { 1885 connect = entry; 1886 } 1887 1888 parsed.connect = connect; 1889 } 1890 1891 function testOrientation(parsed, entry) { 1892 // Set orientation to an a numerical value for easy 1893 // array selection. 1894 switch (entry) { 1895 case "horizontal": 1896 parsed.ort = 0; 1897 break; 1898 case "vertical": 1899 parsed.ort = 1; 1900 break; 1901 default: 1902 throw new Error("noUiSlider (" + VERSION + "): 'orientation' option is invalid."); 1903 } 1904 } 1905 1906 function testMargin(parsed, entry) { 1907 if (!isNumeric(entry)) { 1908 throw new Error("noUiSlider (" + VERSION + "): 'margin' option must be numeric."); 1909 } 1910 1911 // Issue #582 1912 if (entry === 0) { 1913 return; 1914 } 1915 1916 parsed.margin = parsed.spectrum.getMargin(entry); 1917 1918 if (!parsed.margin) { 1919 throw new Error("noUiSlider (" + VERSION + "): 'margin' option is only supported on linear sliders."); 1920 } 1921 } 1922 1923 function testLimit(parsed, entry) { 1924 if (!isNumeric(entry)) { 1925 throw new Error("noUiSlider (" + VERSION + "): 'limit' option must be numeric."); 1926 } 1927 1928 parsed.limit = parsed.spectrum.getMargin(entry); 1929 1930 if (!parsed.limit || parsed.handles < 2) { 1931 throw new Error( 1932 "noUiSlider (" + 1933 VERSION + 1934 "): 'limit' option is only supported on linear sliders with 2 or more handles." 1935 ); 1936 } 1937 } 1938 1939 function testPadding(parsed, entry) { 1940 if (!isNumeric(entry) && !Array.isArray(entry)) { 1941 throw new Error( 1942 "noUiSlider (" + VERSION + "): 'padding' option must be numeric or array of exactly 2 numbers." 1943 ); 1944 } 1945 1946 if (Array.isArray(entry) && !(entry.length === 2 || isNumeric(entry[0]) || isNumeric(entry[1]))) { 1947 throw new Error( 1948 "noUiSlider (" + VERSION + "): 'padding' option must be numeric or array of exactly 2 numbers." 1949 ); 1950 } 1951 1952 if (entry === 0) { 1953 return; 1954 } 1955 1956 if (!Array.isArray(entry)) { 1957 entry = [entry, entry]; 1958 } 1959 1960 // 'getMargin' returns false for invalid values. 1961 parsed.padding = [parsed.spectrum.getMargin(entry[0]), parsed.spectrum.getMargin(entry[1])]; 1962 1963 if (parsed.padding[0] === false || parsed.padding[1] === false) { 1964 throw new Error("noUiSlider (" + VERSION + "): 'padding' option is only supported on linear sliders."); 1965 } 1966 1967 if (parsed.padding[0] < 0 || parsed.padding[1] < 0) { 1968 throw new Error("noUiSlider (" + VERSION + "): 'padding' option must be a positive number(s)."); 1969 } 1970 1971 if (parsed.padding[0] + parsed.padding[1] > 100) { 1972 throw new Error("noUiSlider (" + VERSION + "): 'padding' option must not exceed 100% of the range."); 1973 } 1974 } 1975 1976 function testDirection(parsed, entry) { 1977 // Set direction as a numerical value for easy parsing. 1978 // Invert connection for RTL sliders, so that the proper 1979 // handles get the connect/background classes. 1980 switch (entry) { 1981 case "ltr": 1982 parsed.dir = 0; 1983 break; 1984 case "rtl": 1985 parsed.dir = 1; 1986 break; 1987 default: 1988 throw new Error("noUiSlider (" + VERSION + "): 'direction' option was not recognized."); 1989 } 1990 } 1991 1992 function testBehaviour(parsed, entry) { 1993 // Make sure the input is a string. 1994 if (typeof entry !== "string") { 1995 throw new Error("noUiSlider (" + VERSION + "): 'behaviour' must be a string containing options."); 1996 } 1997 1998 // Check if the string contains any keywords. 1999 // None are required. 2000 var tap = entry.indexOf("tap") >= 0; 2001 var drag = entry.indexOf("drag") >= 0; 2002 var fixed = entry.indexOf("fixed") >= 0; 2003 var snap = entry.indexOf("snap") >= 0; 2004 var hover = entry.indexOf("hover") >= 0; 2005 var unconstrained = entry.indexOf("unconstrained") >= 0; 2006 2007 if (fixed) { 2008 if (parsed.handles !== 2) { 2009 throw new Error("noUiSlider (" + VERSION + "): 'fixed' behaviour must be used with 2 handles"); 2010 } 2011 2012 // Use margin to enforce fixed state 2013 testMargin(parsed, parsed.start[1] - parsed.start[0]); 2014 } 2015 2016 if (unconstrained && (parsed.margin || parsed.limit)) { 2017 throw new Error( 2018 "noUiSlider (" + VERSION + "): 'unconstrained' behaviour cannot be used with margin or limit" 2019 ); 2020 } 2021 2022 parsed.events = { 2023 tap: tap || snap, 2024 drag: drag, 2025 fixed: fixed, 2026 snap: snap, 2027 hover: hover, 2028 unconstrained: unconstrained 2029 }; 2030 } 2031 2032 function testTooltips(parsed, entry) { 2033 if (entry === false) { 2034 return; 2035 } 2036 2037 if (entry === true) { 2038 parsed.tooltips = []; 2039 2040 for (var i = 0; i < parsed.handles; i++) { 2041 parsed.tooltips.push(true); 2042 } 2043 } else { 2044 parsed.tooltips = asArray(entry); 2045 2046 if (parsed.tooltips.length !== parsed.handles) { 2047 throw new Error("noUiSlider (" + VERSION + "): must pass a formatter for all handles."); 2048 } 2049 2050 parsed.tooltips.forEach(function(formatter) { 2051 if ( 2052 typeof formatter !== "boolean" && 2053 (typeof formatter !== "object" || typeof formatter.to !== "function") 2054 ) { 2055 throw new Error("noUiSlider (" + VERSION + "): 'tooltips' must be passed a formatter or 'false'."); 2056 } 2057 }); 2058 } 2059 } 2060 2061 function testAriaFormat(parsed, entry) { 2062 parsed.ariaFormat = entry; 2063 validateFormat(entry); 2064 } 2065 2066 function testFormat(parsed, entry) { 2067 parsed.format = entry; 2068 validateFormat(entry); 2069 } 2070 2071 function testKeyboardSupport(parsed, entry) { 2072 parsed.keyboardSupport = entry; 2073 2074 if (typeof entry !== "boolean") { 2075 throw new Error("noUiSlider (" + VERSION + "): 'keyboardSupport' option must be a boolean."); 2076 } 2077 } 2078 2079 function testDocumentElement(parsed, entry) { 2080 // This is an advanced option. Passed values are used without validation. 2081 parsed.documentElement = entry; 2082 } 2083 2084 function testCssPrefix(parsed, entry) { 2085 if (typeof entry !== "string" && entry !== false) { 2086 throw new Error("noUiSlider (" + VERSION + "): 'cssPrefix' must be a string or `false`."); 2087 } 2088 2089 parsed.cssPrefix = entry; 2090 } 2091
2092 function testCssClasses(parsed, entry) { 2093 if (typeof entry !== "object") { 2094 throw new Error("noUiSlider (" + VERSION + "): 'cssClasses' must be an object."); 2095 } 2096 2097 if (typeof parsed.cssPrefix === "string") { 2098 parsed.cssClasses = {}; 2099 2100 for (var key in entry) { 2101 if (!entry.hasOwnProperty(key)) { 2102 continue; 2103 } 2104 2105 parsed.cssClasses[key] = parsed.cssPrefix + entry[key]; 2106 } 2107 } else { 2108 parsed.cssClasses = entry; 2109 } 2110 } 2111 2112 // Test all developer settings and parse to assumption-safe values. 2113 function testOptions(options) { 2114 // To prove a fix for #537, freeze options here. 2115 // If the object is modified, an error will be thrown. 2116 // Object.freeze(options); 2117 2118 var parsed = { 2119 margin: 0, 2120 limit: 0, 2121 padding: 0, 2122 animate: true, 2123 animationDuration: 300, 2124 ariaFormat: defaultFormatter, 2125 format: defaultFormatter 2126 }; 2127 2128 // Tests are executed in the order they are presented here. 2129 var tests = { 2130 step: { r: false, t: testStep }, 2131 start: { r: true, t: testStart }, 2132 connect: { r: true, t: testConnect }, 2133 direction: { r: true, t: testDirection }, 2134 snap: { r: false, t: testSnap }, 2135 animate: { r: false, t: testAnimate }, 2136 animationDuration: { r: false, t: testAnimationDuration }, 2137 range: { r: true, t: testRange }, 2138 orientation: { r: false, t: testOrientation }, 2139 margin: { r: false, t: testMargin }, 2140 limit: { r: false, t: testLimit }, 2141 padding: { r: false, t: testPadding }, 2142 behaviour: { r: true, t: testBehaviour }, 2143 ariaFormat: { r: false, t: testAriaFormat }, 2144 format: { r: false, t: testFormat }, 2145 tooltips: { r: false, t: testTooltips }, 2146 keyboardSupport: { r: true, t: testKeyboardSupport }, 2147 documentElement: { r: false, t: testDocumentElement }, 2148 cssPrefix: { r: true, t: testCssPrefix },
2149 cssClasses: { r: true, t: testCssClasses } 2150 }; 2151 2152 var defaults = { 2153 connect: false, 2154 direction: "ltr", 2155 behaviour: "tap", 2156 orientation: "horizontal", 2157 keyboardSupport: true, 2158 cssPrefix: "noUi-", 2159 cssClasses: { 2160 target: "target", 2161 base: "base", 2162 origin: "origin", 2163 handle: "handle", 2164 handleLower: "handle-lower", 2165 handleUpper: "handle-upper", 2166 touchArea: "touch-area", 2167 horizontal: "horizontal", 2168 vertical: "vertical", 2169 background: "background", 2170 connect: "connect", 2171 connects: "connects", 2172 ltr: "ltr", 2173 rtl: "rtl", 2174 draggable: "draggable", 2175 drag: "state-drag", 2176 tap: "state-tap", 2177 active: "active", 2178 tooltip: "tooltip", 2179 pips: "pips", 2180 pipsHorizontal: "pips-horizontal", 2181 pipsVertical: "pips-vertical", 2182 marker: "marker", 2183 markerHorizontal: "marker-horizontal", 2184 markerVertical: "marker-vertical", 2185 markerNormal: "marker-normal", 2186 markerLarge: "marker-large", 2187 markerSub: "marker-sub", 2188 value: "value", 2189 valueHorizontal: "value-horizontal", 2190 valueVertical: "value-vertical", 2191 valueNormal: "value-normal", 2192 valueLarge: "value-large", 2193 valueSub: "value-sub" 2194 } 2195 }; 2196 2197 // AriaFormat defaults to regular format, if any. 2198 if (options.format && !options.ariaFormat) { 2199 options.ariaFormat = options.format; 2200 } 2201 2202 // Run all options through a testing mechanism to ensure correct 2203 // input. It should be noted that options might get modified to 2204 // be handled properly. E.g. wrapping integers in arrays. 2205 Object.keys(tests).forEach(function(name) { 2206 // If the option isn't set, but it is required, throw an error. 2207 if (!isSet(options[name]) && defaults[name] === undefined) { 2208 if (tests[name].r) { 2209 throw new Error("noUiSlider (" + VERSION + "): '" + name + "' is required."); 2210 } 2211 2212 return true; 2213 } 2214 2215 tests[name].t(parsed, !isSet(options[name]) ? defaults[name] : options[name]); 2216 }); 2217 2218 // Forward pips options 2219 parsed.pips = options.pips; 2220 2221 // All recent browsers accept unprefixed transform. 2222 // We need -ms- for IE9 and -webkit- for older Android; 2223 // Assume use of -webkit- if unprefixed and -ms- are not supported. 2224 // https://caniuse.com/#feat=transforms2d 2225 var d = document.createElement("div"); 2226 var msPrefix = d.style.msTransform !== undefined; 2227 var noPrefix = d.style.transform !== undefined; 2228 2229 parsed.transformRule = noPrefix ? "transform" : msPrefix ? "msTransform" : "webkitTransform"; 2230 2231 // Pips don't move, so we can place them using left/top. 2232 var styles = [["left", "top"], ["right", "bottom"]]; 2233 2234 parsed.style = styles[parsed.dir][parsed.ort]; 2235 2236 return parsed; 2237 } 2238 2239 //endregion 2240 2241 function scope(target, options, originalOptions) { 2242 var actions = getActions(); 2243 var supportsTouchActionNone = getSupportsTouchActionNone(); 2244 var supportsPassive = supportsTouchActionNone && getSupportsPassive(); 2245 2246 // All variables local to 'scope' are prefixed with 'scope_' 2247 2248 // Slider DOM Nodes 2249 var scope_Target = target; 2250 var scope_Base; 2251 var scope_Handles; 2252 var scope_Connects; 2253 var scope_Pips; 2254 var scope_Tooltips; 2255 2256 // Slider state values 2257 var scope_Spectrum = options.spectrum; 2258 var scope_Values = []; 2259 var scope_Locations = []; 2260 var scope_HandleNumbers = []; 2261 var scope_ActiveHandlesCount = 0; 2262 var scope_Events = {}; 2263 2264 // Exposed API 2265 var scope_Self; 2266 2267 // Document Nodes 2268 var scope_Document = target.ownerDocument; 2269 var scope_DocumentElement = options.documentElement || scope_Document.documentElement; 2270 var scope_Body = scope_Document.body; 2271 2272 // Pips constants 2273 var PIPS_NONE = -1; 2274 var PIPS_NO_VALUE = 0; 2275 var PIPS_LARGE_VALUE = 1; 2276 var PIPS_SMALL_VALUE = 2; 2277 2278 // For horizontal sliders in standard ltr documents, 2279 // make .noUi-origin overflow to the left so the document doesn't scroll. 2280 var scope_DirOffset = scope_Document.dir === "rtl" || options.ort === 1 ? 0 : 100; 2281 2282 // Creates a node, adds it to target, returns the new node. 2283 function addNodeTo(addTarget, className) { 2284 var div = scope_Document.createElement("div"); 2285 2286 if (className) { 2287 addClass(div, className); 2288 } 2289 2290 addTarget.appendChild(div); 2291 2292 return div; 2293 } 2294 2295 // Append a origin to the base 2296 function addOrigin(base, handleNumber) {
vendor: 4,840 bytes, lines 2297-2428
2297 var origin = addNodeTo(base, options.cssClasses.origin); 2298 var handle = addNodeTo(origin, options.cssClasses.handle); 2299 2300 addNodeTo(handle, options.cssClasses.touchArea); 2301 2302 handle.setAttribute("data-handle", handleNumber); 2303 2304 if (options.keyboardSupport) { 2305 // https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex 2306 // 0 = focusable and reachable 2307 handle.setAttribute("tabindex", "0"); 2308 handle.addEventListener("keydown", function(event) { 2309 return eventKeydown(event, handleNumber); 2310 }); 2311 } 2312 2313 handle.setAttribute("role", "slider"); 2314 handle.setAttribute("aria-orientation", options.ort ? "vertical" : "horizontal"); 2315 2316 if (handleNumber === 0) { 2317 addClass(handle, options.cssClasses.handleLower); 2318 } else if (handleNumber === options.handles - 1) { 2319 addClass(handle, options.cssClasses.handleUpper); 2320 } 2321 2322 return origin; 2323 } 2324 2325 // Insert nodes for connect elements 2326 function addConnect(base, add) { 2327 if (!add) { 2328 return false; 2329 } 2330 2331 return addNodeTo(base, options.cssClasses.connect); 2332 } 2333 2334 // Add handles to the slider base. 2335 function addElements(connectOptions, base) { 2336 var connectBase = addNodeTo(base, options.cssClasses.connects); 2337 2338 scope_Handles = []; 2339 scope_Connects = []; 2340 2341 scope_Connects.push(addConnect(connectBase, connectOptions[0])); 2342 2343 // [::::O====O====O====] 2344 // connectOptions = [0, 1, 1, 1] 2345 2346 for (var i = 0; i < options.handles; i++) { 2347 // Keep a list of all added handles. 2348 scope_Handles.push(addOrigin(base, i)); 2349 scope_HandleNumbers[i] = i; 2350 scope_Connects.push(addConnect(connectBase, connectOptions[i + 1])); 2351 } 2352 } 2353 2354 // Initialize a single slider. 2355 function addSlider(addTarget) { 2356 // Apply classes and data to the target. 2357 addClass(addTarget, options.cssClasses.target); 2358 2359 if (options.dir === 0) { 2360 addClass(addTarget, options.cssClasses.ltr); 2361 } else { 2362 addClass(addTarget, options.cssClasses.rtl); 2363 } 2364 2365 if (options.ort === 0) { 2366 addClass(addTarget, options.cssClasses.horizontal); 2367 } else { 2368 addClass(addTarget, options.cssClasses.vertical); 2369 } 2370 2371 return addNodeTo(addTarget, options.cssClasses.base); 2372 } 2373 2374 function addTooltip(handle, handleNumber) { 2375 if (!options.tooltips[handleNumber]) { 2376 return false; 2377 } 2378 2379 return addNodeTo(handle.firstChild, options.cssClasses.tooltip); 2380 } 2381 2382 function isSliderDisabled() { 2383 return scope_Target.hasAttribute("disabled"); 2384 } 2385 2386 // Disable the slider dragging if any handle is disabled 2387 function isHandleDisabled(handleNumber) { 2388 var handleOrigin = scope_Handles[handleNumber]; 2389 return handleOrigin.hasAttribute("disabled"); 2390 } 2391 2392 function removeTooltips() { 2393 if (scope_Tooltips) { 2394 removeEvent("update.tooltips"); 2395 scope_Tooltips.forEach(function(tooltip) { 2396 if (tooltip) { 2397 removeElement(tooltip); 2398 } 2399 }); 2400 scope_Tooltips = null; 2401 } 2402 } 2403 2404 // The tooltips option is a shorthand for using the 'update' event. 2405 function tooltips() { 2406 removeTooltips(); 2407 2408 // Tooltips are added with options.tooltips in original order. 2409 scope_Tooltips = scope_Handles.map(addTooltip); 2410 2411 bindEvent("update.tooltips", function(values, handleNumber, unencoded) { 2412 if (!scope_Tooltips[handleNumber]) { 2413 return; 2414 } 2415 2416 var formattedValue = values[handleNumber]; 2417 2418 if (options.tooltips[handleNumber] !== true) { 2419 formattedValue = options.tooltips[handleNumber].to(unencoded[handleNumber]); 2420 } 2421 2422 scope_Tooltips[handleNumber].innerHTML = formattedValue; 2423 }); 2424 } 2425 2426 function aria() { 2427 bindEvent("update", function(values, handleNumber, unencoded, tap, positions) { 2428 // Update Aria Values for all handles, as a change in one changes min and max values for the next.
2429 scope_HandleNumbers.forEach(function(index) { 2430 var handle = scope_Handles[index]; 2431 2432 var min = checkHandlePosition(scope_Locations, index, 0, true, true, true); 2433 var max = checkHandlePosition(scope_Locations, index, 100, true, true, true); 2434 2435 var now = positions[index]; 2436 2437 // Formatted value for display 2438 var text = options.ariaFormat.to(unencoded[index]); 2439 2440 // Map to slider range values 2441 min = scope_Spectrum.fromStepping(min).toFixed(1); 2442 max = scope_Spectrum.fromStepping(max).toFixed(1); 2443 now = scope_Spectrum.fromStepping(now).toFixed(1); 2444 2445 handle.children[0].setAttribute("aria-valuemin", min); 2446 handle.children[0].setAttribute("aria-valuemax", max); 2447 handle.children[0].setAttribute("aria-valuenow", now); 2448 handle.children[0].setAttribute("aria-valuetext", text); 2449 }); 2450 }); 2451 } 2452 2453 function getGroup(mode, values, stepped) { 2454 // Use the range. 2455 if (mode === "range" || mode === "steps") { 2456 return scope_Spectrum.xVal; 2457 } 2458 2459 if (mode === "count") { 2460 if (values < 2) { 2461 throw new Error("noUiSlider (" + VERSION + "): 'values' (>= 2) required for mode 'count'."); 2462 } 2463 2464 // Divide 0 - 100 in 'count' parts. 2465 var interval = values - 1; 2466 var spread = 100 / interval; 2467 2468 values = []; 2469 2470 // List these parts and have them handled as 'positions'. 2471 while (interval--) { 2472 values[interval] = interval * spread; 2473 } 2474 2475 values.push(100); 2476 2477 mode = "positions"; 2478 } 2479 2480 if (mode === "positions") { 2481 // Map all percentages to on-range values. 2482 return values.map(function(value) { 2483 return scope_Spectrum.fromStepping(stepped ? scope_Spectrum.getStep(value) : value); 2484 }); 2485 } 2486 2487 if (mode === "values") { 2488 // If the value must be stepped, it needs to be converted to a percentage first. 2489 if (stepped) { 2490 return values.map(function(value) { 2491 // Convert to percentage, apply step, return to value. 2492 return scope_Spectrum.fromStepping(scope_Spectrum.getStep(scope_Spectrum.toStepping(value))); 2493 }); 2494 } 2495 2496 // Otherwise, we can simply use the values. 2497 return values; 2498 } 2499 } 2500 2501 function generateSpread(density, mode, group) { 2502 function safeIncrement(value, increment) { 2503 // Avoid floating point variance by dropping the smallest decimal places. 2504 return (value + increment).toFixed(7) / 1; 2505 } 2506 2507 var indexes = {}; 2508 var firstInRange = scope_Spectrum.xVal[0]; 2509 var lastInRange = scope_Spectrum.xVal[scope_Spectrum.xVal.length - 1]; 2510 var ignoreFirst = false; 2511 var ignoreLast = false; 2512 var prevPct = 0; 2513 2514 // Create a copy of the group, sort it and filter away all duplicates. 2515 group = unique( 2516 group.slice().sort(function(a, b) { 2517 return a - b; 2518 }) 2519 ); 2520 2521 // Make sure the range starts with the first element. 2522 if (group[0] !== firstInRange) { 2523 group.unshift(firstInRange); 2524 ignoreFirst = true; 2525 } 2526 2527 // Likewise for the last one. 2528 if (group[group.length - 1] !== lastInRange) { 2529 group.push(lastInRange); 2530 ignoreLast = true; 2531 } 2532 2533 group.forEach(function(current, index) { 2534 // Get the current step and the lower + upper positions. 2535 var step; 2536 var i; 2537 var q; 2538 var low = current; 2539 var high = group[index + 1]; 2540 var newPct; 2541 var pctDifference; 2542 var pctPos; 2543 var type; 2544 var steps; 2545 var realSteps; 2546 var stepSize; 2547 var isSteps = mode === "steps"; 2548 2549 // When using 'steps' mode, use the provided steps. 2550 // Otherwise, we'll step on to the next subrange. 2551 if (isSteps) { 2552 step = scope_Spectrum.xNumSteps[index]; 2553 } 2554 2555 // Default to a 'full' step. 2556 if (!step) { 2557 step = high - low; 2558 } 2559 2560 // Low can be 0, so test for false. If high is undefined, 2561 // we are at the last subrange. Index 0 is already handled. 2562 if (low === false || high === undefined) { 2563 return; 2564 } 2565 2566 // Make sure step isn't 0, which would cause an infinite loop (#654) 2567 step = Math.max(step, 0.0000001); 2568 2569 // Find all steps in the subrange. 2570 for (i = low; i <= high; i = safeIncrement(i, step)) { 2571 // Get the percentage value for the current step, 2572 // calculate the size for the subrange. 2573 newPct = scope_Spectrum.toStepping(i); 2574 pctDifference = newPct - prevPct; 2575 2576 steps = pctDifference / density; 2577 realSteps = Math.round(steps); 2578 2579 // This ratio represents the amount of percentage-space a point indicates. 2580 // For a density 1 the points/percentage = 1. For density 2, that percentage needs to be re-divided. 2581 // Round the percentage offset to an even number, then divide by two 2582 // to spread the offset on both sides of the range. 2583 stepSize = pctDifference / realSteps; 2584 2585 // Divide all points evenly, adding the correct number to this subrange. 2586 // Run up to <= so that 100% gets a point, event if ignoreLast is set. 2587 for (q = 1; q <= realSteps; q += 1) { 2588 // The ratio between the rounded value and the actual size might be ~1% off. 2589 // Correct the percentage offset by the number of points 2590 // per subrange. density = 1 will result in 100 points on the 2591 // full range, 2 for 50, 4 for 25, etc. 2592 pctPos = prevPct + q * stepSize; 2593 indexes[pctPos.toFixed(5)] = [scope_Spectrum.fromStepping(pctPos), 0]; 2594 } 2595 2596 // Determine the point type. 2597 type = group.indexOf(i) > -1 ? PIPS_LARGE_VALUE : isSteps ? PIPS_SMALL_VALUE : PIPS_NO_VALUE; 2598 2599 // Enforce the 'ignoreFirst' option by overwriting the type for 0. 2600 if (!index && ignoreFirst) { 2601 type = 0; 2602 } 2603 2604 if (!(i === high && ignoreLast)) { 2605 // Mark the 'type' of this point. 0 = plain, 1 = real value, 2 = step value. 2606 indexes[newPct.toFixed(5)] = [i, type]; 2607 } 2608 2609 // Update the percentage count. 2610 prevPct = newPct; 2611 } 2612 }); 2613 2614 return indexes; 2615 } 2616 2617 function addMarking(spread, filterFunc, formatter) { 2618 var element = scope_Document.createElement("div"); 2619 2620 var valueSizeClasses = [];
2621 valueSizeClasses[PIPS_NO_VALUE] = options.cssClasses.valueNormal; 2622 valueSizeClasses[PIPS_LARGE_VALUE] = options.cssClasses.valueLarge; 2623 valueSizeClasses[PIPS_SMALL_VALUE] = options.cssClasses.valueSub; 2624 2625 var markerSizeClasses = []; 2626 markerSizeClasses[PIPS_NO_VALUE] = options.cssClasses.markerNormal; 2627 markerSizeClasses[PIPS_LARGE_VALUE] = options.cssClasses.markerLarge; 2628 markerSizeClasses[PIPS_SMALL_VALUE] = options.cssClasses.markerSub; 2629 2630 var valueOrientationClasses = [options.cssClasses.valueHorizontal, options.cssClasses.valueVertical]; 2631 var markerOrientationClasses = [options.cssClasses.markerHorizontal, options.cssClasses.markerVertical]; 2632 2633 addClass(element, options.cssClasses.pips); 2634 addClass(element, options.ort === 0 ? options.cssClasses.pipsHorizontal : options.cssClasses.pipsVertical); 2635 2636 function getClasses(type, source) { 2637 var a = source === options.cssClasses.value; 2638 var orientationClasses = a ? valueOrientationClasses : markerOrientationClasses; 2639 var sizeClasses = a ? valueSizeClasses : markerSizeClasses; 2640 2641 return source + " " + orientationClasses[options.ort] + " " + sizeClasses[type]; 2642 } 2643 2644 function addSpread(offset, value, type) { 2645 // Apply the filter function, if it is set. 2646 type = filterFunc ? filterFunc(value, type) : type; 2647 2648 if (type === PIPS_NONE) { 2649 return; 2650 } 2651 2652 // Add a marker for every point 2653 var node = addNodeTo(element, false); 2654 node.className = getClasses(type, options.cssClasses.marker); 2655 node.style[options.style] = offset + "%"; 2656 2657 // Values are only appended for points marked '1' or '2'. 2658 if (type > PIPS_NO_VALUE) { 2659 node = addNodeTo(element, false); 2660 node.className = getClasses(type, options.cssClasses.value); 2661 node.setAttribute("data-value", value); 2662 node.style[options.style] = offset + "%"; 2663 node.innerHTML = formatter.to(value); 2664 } 2665 } 2666 2667 // Append all points. 2668 Object.keys(spread).forEach(function(offset) { 2669 addSpread(offset, spread[offset][0], spread[offset][1]); 2670 }); 2671 2672 return element; 2673 } 2674 2675 function removePips() { 2676 if (scope_Pips) { 2677 removeElement(scope_Pips); 2678 scope_Pips = null; 2679 } 2680 } 2681 2682 function pips(grid) { 2683 // Fix #669 2684 removePips(); 2685 2686 var mode = grid.mode; 2687 var density = grid.density || 1; 2688 var filter = grid.filter || false; 2689 var values = grid.values || false; 2690 var stepped = grid.stepped || false; 2691 var group = getGroup(mode, values, stepped); 2692 var spread = generateSpread(density, mode, group); 2693 var format = grid.format || { 2694 to: Math.round 2695 }; 2696 2697 scope_Pips = scope_Target.appendChild(addMarking(spread, filter, format)); 2698 2699 return scope_Pips; 2700 } 2701 2702 // Shorthand for base dimensions. 2703 function baseSize() { 2704 var rect = scope_Base.getBoundingClientRect(); 2705 var alt = "offset" + ["Width", "Height"][options.ort]; 2706 return options.ort === 0 ? rect.width || scope_Base[alt] : rect.height || scope_Base[alt]; 2707 } 2708 2709 // Handler for attaching events trough a proxy. 2710 function attachEvent(events, element, callback, data) { 2711 // This function can be used to 'filter' events to the slider. 2712 // element is a node, not a nodeList 2713 2714 var method = function(e) { 2715 e = fixEvent(e, data.pageOffset, data.target || element); 2716 2717 // fixEvent returns false if this event has a different target 2718 // when handling (multi-) touch events; 2719 if (!e) { 2720 return false; 2721 } 2722 2723 // doNotReject is passed by all end events to make sure released touches 2724 // are not rejected, leaving the slider "stuck" to the cursor; 2725 if (isSliderDisabled() && !data.doNotReject) { 2726 return false; 2727 } 2728 2729 // Stop if an active 'tap' transition is taking place.
vendor: 12,130 bytes, lines 2730-3010
2730 if (hasClass(scope_Target, options.cssClasses.tap) && !data.doNotReject) { 2731 return false; 2732 } 2733 2734 // Ignore right or middle clicks on start #454 2735 if (events === actions.start && e.buttons !== undefined && e.buttons > 1) { 2736 return false; 2737 } 2738 2739 // Ignore right or middle clicks on start #454 2740 if (data.hover && e.buttons) { 2741 return false; 2742 } 2743 2744 // 'supportsPassive' is only true if a browser also supports touch-action: none in CSS. 2745 // iOS safari does not, so it doesn't get to benefit from passive scrolling. iOS does support 2746 // touch-action: manipulation, but that allows panning, which breaks 2747 // sliders after zooming/on non-responsive pages. 2748 // See: https://bugs.webkit.org/show_bug.cgi?id=133112 2749 if (!supportsPassive) { 2750 e.preventDefault(); 2751 } 2752 2753 e.calcPoint = e.points[options.ort]; 2754 2755 // Call the event handler with the event [ and additional data ]. 2756 callback(e, data); 2757 }; 2758 2759 var methods = []; 2760 2761 // Bind a closure on the target for every event type. 2762 events.split(" ").forEach(function(eventName) { 2763 element.addEventListener(eventName, method, supportsPassive ? { passive: true } : false); 2764 methods.push([eventName, method]); 2765 }); 2766 2767 return methods; 2768 } 2769 2770 // Provide a clean event with standardized offset values. 2771 function fixEvent(e, pageOffset, eventTarget) { 2772 // Filter the event to register the type, which can be 2773 // touch, mouse or pointer. Offset changes need to be 2774 // made on an event specific basis. 2775 var touch = e.type.indexOf("touch") === 0; 2776 var mouse = e.type.indexOf("mouse") === 0; 2777 var pointer = e.type.indexOf("pointer") === 0; 2778 2779 var x; 2780 var y; 2781 2782 // IE10 implemented pointer events with a prefix; 2783 if (e.type.indexOf("MSPointer") === 0) { 2784 pointer = true; 2785 } 2786 2787 // The only thing one handle should be concerned about is the touches that originated on top of it. 2788 if (touch) { 2789 // Returns true if a touch originated on the target. 2790 var isTouchOnTarget = function(checkTouch) { 2791 return checkTouch.target === eventTarget || eventTarget.contains(checkTouch.target); 2792 }; 2793 2794 // In the case of touchstart events, we need to make sure there is still no more than one 2795 // touch on the target so we look amongst all touches. 2796 if (e.type === "touchstart") { 2797 var targetTouches = Array.prototype.filter.call(e.touches, isTouchOnTarget); 2798 2799 // Do not support more than one touch per handle. 2800 if (targetTouches.length > 1) { 2801 return false; 2802 } 2803 2804 x = targetTouches[0].pageX; 2805 y = targetTouches[0].pageY; 2806 } else { 2807 // In the other cases, find on changedTouches is enough. 2808 var targetTouch = Array.prototype.find.call(e.changedTouches, isTouchOnTarget); 2809 2810 // Cancel if the target touch has not moved. 2811 if (!targetTouch) { 2812 return false; 2813 } 2814 2815 x = targetTouch.pageX; 2816 y = targetTouch.pageY; 2817 } 2818 } 2819 2820 pageOffset = pageOffset || getPageOffset(scope_Document); 2821 2822 if (mouse || pointer) { 2823 x = e.clientX + pageOffset.x; 2824 y = e.clientY + pageOffset.y; 2825 } 2826 2827 e.pageOffset = pageOffset; 2828 e.points = [x, y]; 2829 e.cursor = mouse || pointer; // Fix #435 2830 2831 return e; 2832 } 2833 2834 // Translate a coordinate in the document to a percentage on the slider 2835 function calcPointToPercentage(calcPoint) { 2836 var location = calcPoint - offset(scope_Base, options.ort); 2837 var proposal = (location * 100) / baseSize(); 2838 2839 // Clamp proposal between 0% and 100% 2840 // Out-of-bound coordinates may occur when .noUi-base pseudo-elements 2841 // are used (e.g. contained handles feature) 2842 proposal = limit(proposal); 2843 2844 return options.dir ? 100 - proposal : proposal; 2845 } 2846 2847 // Find handle closest to a certain percentage on the slider 2848 function getClosestHandle(clickedPosition) { 2849 var smallestDifference = 100; 2850 var handleNumber = false; 2851 2852 scope_Handles.forEach(function(handle, index) { 2853 // Disabled handles are ignored 2854 if (isHandleDisabled(index)) { 2855 return; 2856 } 2857 2858 var handlePosition = scope_Locations[index]; 2859 var differenceWithThisHandle = Math.abs(handlePosition - clickedPosition); 2860 2861 // Initial state 2862 var clickAtEdge = differenceWithThisHandle === 100 && smallestDifference === 100; 2863 2864 // Difference with this handle is smaller than the previously checked handle 2865 var isCloser = differenceWithThisHandle < smallestDifference; 2866 var isCloserAfter = differenceWithThisHandle <= smallestDifference && clickedPosition > handlePosition; 2867 2868 if (isCloser || isCloserAfter || clickAtEdge) { 2869 handleNumber = index; 2870 smallestDifference = differenceWithThisHandle; 2871 } 2872 }); 2873 2874 return handleNumber; 2875 } 2876 2877 // Fire 'end' when a mouse or pen leaves the document. 2878 function documentLeave(event, data) { 2879 if (event.type === "mouseout" && event.target.nodeName === "HTML" && event.relatedTarget === null) { 2880 eventEnd(event, data); 2881 } 2882 } 2883 2884 // Handle movement on document for handle and range drag. 2885 function eventMove(event, data) { 2886 // Fix #498 2887 // Check value of .buttons in 'start' to work around a bug in IE10 mobile (data.buttonsProperty). 2888 // https://connect.microsoft.com/IE/feedback/details/927005/mobile-ie10-windows-phone-buttons-property-of-pointermove-event-always-zero 2889 // IE9 has .buttons and .which zero on mousemove. 2890 // Firefox breaks the spec MDN defines. 2891 if (navigator.appVersion.indexOf("MSIE 9") === -1 && event.buttons === 0 && data.buttonsProperty !== 0) { 2892 return eventEnd(event, data); 2893 } 2894 2895 // Check if we are moving up or down 2896 var movement = (options.dir ? -1 : 1) * (event.calcPoint - data.startCalcPoint); 2897 2898 // Convert the movement into a percentage of the slider width/height 2899 var proposal = (movement * 100) / data.baseSize; 2900 2901 moveHandles(movement > 0, proposal, data.locations, data.handleNumbers); 2902 } 2903 2904 // Unbind move events on document, call callbacks. 2905 function eventEnd(event, data) { 2906 // The handle is no longer active, so remove the class. 2907 if (data.handle) { 2908 removeClass(data.handle, options.cssClasses.active); 2909 scope_ActiveHandlesCount -= 1; 2910 } 2911 2912 // Unbind the move and end events, which are added on 'start'. 2913 data.listeners.forEach(function(c) { 2914 scope_DocumentElement.removeEventListener(c[0], c[1]); 2915 }); 2916 2917 if (scope_ActiveHandlesCount === 0) { 2918 // Remove dragging class. 2919 removeClass(scope_Target, options.cssClasses.drag); 2920 setZindex(); 2921 2922 // Remove cursor styles and text-selection events bound to the body. 2923 if (event.cursor) { 2924 scope_Body.style.cursor = ""; 2925 scope_Body.removeEventListener("selectstart", preventDefault); 2926 } 2927 } 2928 2929 data.handleNumbers.forEach(function(handleNumber) { 2930 fireEvent("change", handleNumber); 2931 fireEvent("set", handleNumber); 2932 fireEvent("end", handleNumber); 2933 }); 2934 } 2935 2936 // Bind move events on document. 2937 function eventStart(event, data) { 2938 // Ignore event if any handle is disabled 2939 if (data.handleNumbers.some(isHandleDisabled)) { 2940 return false; 2941 } 2942 2943 var handle; 2944 2945 if (data.handleNumbers.length === 1) { 2946 var handleOrigin = scope_Handles[data.handleNumbers[0]]; 2947 2948 handle = handleOrigin.children[0]; 2949 scope_ActiveHandlesCount += 1; 2950 2951 // Mark the handle as 'active' so it can be styled. 2952 addClass(handle, options.cssClasses.active); 2953 } 2954 2955 // A drag should never propagate up to the 'tap' event. 2956 event.stopPropagation(); 2957 2958 // Record the event listeners. 2959 var listeners = []; 2960 2961 // Attach the move and end events. 2962 var moveEvent = attachEvent(actions.move, scope_DocumentElement, eventMove, { 2963 // The event target has changed so we need to propagate the original one so that we keep 2964 // relying on it to extract target touches. 2965 target: event.target, 2966 handle: handle, 2967 listeners: listeners, 2968 startCalcPoint: event.calcPoint, 2969 baseSize: baseSize(), 2970 pageOffset: event.pageOffset, 2971 handleNumbers: data.handleNumbers, 2972 buttonsProperty: event.buttons, 2973 locations: scope_Locations.slice() 2974 }); 2975 2976 var endEvent = attachEvent(actions.end, scope_DocumentElement, eventEnd, { 2977 target: event.target, 2978 handle: handle, 2979 listeners: listeners, 2980 doNotReject: true, 2981 handleNumbers: data.handleNumbers 2982 }); 2983 2984 var outEvent = attachEvent("mouseout", scope_DocumentElement, documentLeave, { 2985 target: event.target, 2986 handle: handle, 2987 listeners: listeners, 2988 doNotReject: true, 2989 handleNumbers: data.handleNumbers 2990 }); 2991 2992 // We want to make sure we pushed the listeners in the listener list rather than creating 2993 // a new one as it has already been passed to the event handlers. 2994 listeners.push.apply(listeners, moveEvent.concat(endEvent, outEvent)); 2995 2996 // Text selection isn't an issue on touch devices, 2997 // so adding cursor styles can be skipped. 2998 if (event.cursor) { 2999 // Prevent the 'I' cursor and extend the range-drag cursor. 3000 scope_Body.style.cursor = getComputedStyle(event.target).cursor; 3001 3002 // Mark the target with a dragging state. 3003 if (scope_Handles.length > 1) { 3004 addClass(scope_Target, options.cssClasses.drag); 3005 } 3006 3007 // Prevent text selection when dragging the handles. 3008 // In noUiSlider <= 9.2.0, this was handled by calling preventDefault on mouse/touch start/move, 3009 // which is scroll blocking. The selectstart event is supported by FireFox starting from version 52, 3010 // meaning the only holdout is iOS Safari. This doesn't matter: text selection isn't triggered there.
3011 // The 'cursor' flag is false. 3012 // See: https://caniuse.com/#search=selectstart 3013 scope_Body.addEventListener("selectstart", preventDefault, false); 3014 } 3015 3016 data.handleNumbers.forEach(function(handleNumber) { 3017 fireEvent("start", handleNumber); 3018 }); 3019 } 3020 3021 // Move closest handle to tapped location. 3022 function eventTap(event) { 3023 // The tap event shouldn't propagate up 3024 event.stopPropagation(); 3025 3026 var proposal = calcPointToPercentage(event.calcPoint); 3027 var handleNumber = getClosestHandle(proposal); 3028 3029 // Tackle the case that all handles are 'disabled'. 3030 if (handleNumber === false) { 3031 return false; 3032 } 3033 3034 // Flag the slider as it is now in a transitional state. 3035 // Transition takes a configurable amount of ms (default 300). Re-enable the slider after that. 3036 if (!options.events.snap) { 3037 addClassFor(scope_Target, options.cssClasses.tap, options.animationDuration); 3038 } 3039 3040 setHandle(handleNumber, proposal, true, true); 3041 3042 setZindex(); 3043 3044 fireEvent("slide", handleNumber, true); 3045 fireEvent("update", handleNumber, true); 3046 fireEvent("change", handleNumber, true); 3047 fireEvent("set", handleNumber, true); 3048 3049 if (options.events.snap) { 3050 eventStart(event, { handleNumbers: [handleNumber] }); 3051 } 3052 } 3053 3054 // Fires a 'hover' event for a hovered mouse/pen position. 3055 function eventHover(event) { 3056 var proposal = calcPointToPercentage(event.calcPoint); 3057 3058 var to = scope_Spectrum.getStep(proposal); 3059 var value = scope_Spectrum.fromStepping(to); 3060 3061 Object.keys(scope_Events).forEach(function(targetEvent) { 3062 if ("hover" === targetEvent.split(".")[0]) { 3063 scope_Events[targetEvent].forEach(function(callback) { 3064 callback.call(scope_Self, value); 3065 }); 3066 } 3067 }); 3068 } 3069 3070 // Handles keydown on focused handles 3071 // Don't move the document when pressing arrow keys on focused handles 3072 function eventKeydown(event, handleNumber) { 3073 if (isSliderDisabled() || isHandleDisabled(handleNumber)) { 3074 return false; 3075 } 3076 3077 var horizontalKeys = ["Left", "Right"]; 3078 var verticalKeys = ["Down", "Up"]; 3079 3080 if (options.dir && !options.ort) { 3081 // On an right-to-left slider, the left and right keys act inverted 3082 horizontalKeys.reverse(); 3083 } else if (options.ort && !options.dir) { 3084 // On a top-to-bottom slider, the up and down keys act inverted 3085 verticalKeys.reverse(); 3086 } 3087 3088 // Strip "Arrow" for IE compatibility. https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key 3089 var key = event.key.replace("Arrow", ""); 3090 var isDown = key === verticalKeys[0] || key === horizontalKeys[0]; 3091 var isUp = key === verticalKeys[1] || key === horizontalKeys[1]; 3092 3093 if (!isDown && !isUp) { 3094 return true; 3095 } 3096 3097 event.preventDefault(); 3098 3099 var direction = isDown ? 0 : 1; 3100 var steps = getNextStepsForHandle(handleNumber); 3101 var step = steps[direction]; 3102 3103 // At the edge of a slider, do nothing 3104 if (step === null) { 3105 return false; 3106 } 3107 3108 // No step set, use the default of 10% of the sub-range 3109 if (step === false) { 3110 step = scope_Spectrum.getDefaultStep(scope_Locations[handleNumber], isDown, 10); 3111 } 3112 3113 // Step over zero-length ranges (#948); 3114 step = Math.max(step, 0.0000001); 3115 3116 // Decrement for down steps 3117 step = (isDown ? -1 : 1) * step; 3118 3119 setHandle(handleNumber, scope_Spectrum.toStepping(scope_Values[handleNumber] + step), true, true); 3120 3121 fireEvent("slide", handleNumber); 3122 fireEvent("update", handleNumber); 3123 fireEvent("change", handleNumber); 3124 fireEvent("set", handleNumber); 3125 3126 return false; 3127 } 3128 3129 // Attach events to several slider parts. 3130 function bindSliderEvents(behaviour) { 3131 // Attach the standard drag event to the handles. 3132 if (!behaviour.fixed) {
3133 scope_Handles.forEach(function(handle, index) { 3134 // These events are only bound to the visual handle 3135 // element, not the 'real' origin element. 3136 attachEvent(actions.start, handle.children[0], eventStart, { 3137 handleNumbers: [index] 3138 }); 3139 }); 3140 } 3141 3142 // Attach the tap event to the slider base. 3143 if (behaviour.tap) { 3144 attachEvent(actions.start, scope_Base, eventTap, {}); 3145 } 3146 3147 // Fire hover events 3148 if (behaviour.hover) { 3149 attachEvent(actions.move, scope_Base, eventHover, { 3150 hover: true 3151 }); 3152 } 3153 3154 // Make the range draggable. 3155 if (behaviour.drag) { 3156 scope_Connects.forEach(function(connect, index) { 3157 if (connect === false || index === 0 || index === scope_Connects.length - 1) { 3158 return; 3159 } 3160 3161 var handleBefore = scope_Handles[index - 1]; 3162 var handleAfter = scope_Handles[index]; 3163 var eventHolders = [connect]; 3164 3165 addClass(connect, options.cssClasses.draggable); 3166 3167 // When the range is fixed, the entire range can 3168 // be dragged by the handles. The handle in the first 3169 // origin will propagate the start event upward, 3170 // but it needs to be bound manually on the other. 3171 if (behaviour.fixed) { 3172 eventHolders.push(handleBefore.children[0]); 3173 eventHolders.push(handleAfter.children[0]); 3174 } 3175 3176 eventHolders.forEach(function(eventHolder) { 3177 attachEvent(actions.start, eventHolder, eventStart, { 3178 handles: [handleBefore, handleAfter], 3179 handleNumbers: [index - 1, index] 3180 }); 3181 }); 3182 }); 3183 } 3184 } 3185 3186 // Attach an event to this slider, possibly including a namespace 3187 function bindEvent(namespacedEvent, callback) { 3188 scope_Events[namespacedEvent] = scope_Events[namespacedEvent] || []; 3189 scope_Events[namespacedEvent].push(callback); 3190 3191 // If the event bound is 'update,' fire it immediately for all handles. 3192 if (namespacedEvent.split(".")[0] === "update") { 3193 scope_Handles.forEach(function(a, index) { 3194 fireEvent("update", index); 3195 }); 3196 } 3197 } 3198 3199 // Undo attachment of event 3200 function removeEvent(namespacedEvent) { 3201 var event = namespacedEvent && namespacedEvent.split(".")[0]; 3202 var namespace = event && namespacedEvent.substring(event.length); 3203 3204 Object.keys(scope_Events).forEach(function(bind) { 3205 var tEvent = bind.split(".")[0]; 3206 var tNamespace = bind.substring(tEvent.length); 3207 3208 if ((!event || event === tEvent) && (!namespace || namespace === tNamespace)) { 3209 delete scope_Events[bind]; 3210 } 3211 }); 3212 } 3213 3214 // External event handling 3215 function fireEvent(eventName, handleNumber, tap) { 3216 Object.keys(scope_Events).forEach(function(targetEvent) { 3217 var eventType = targetEvent.split(".")[0]; 3218 3219 if (eventName === eventType) { 3220 scope_Events[targetEvent].forEach(function(callback) { 3221 callback.call( 3222 // Use the slider public API as the scope ('this') 3223 scope_Self, 3224 // Return values as array, so arg_1[arg_2] is always valid. 3225 scope_Values.map(options.format.to), 3226 // Handle index, 0 or 1 3227 handleNumber, 3228 // Un-formatted slider values 3229 scope_Values.slice(), 3230 // Event is fired by tap, true or false 3231 tap || false, 3232 // Left offset of the handle, in relation to the slider 3233 scope_Locations.slice() 3234 ); 3235 }); 3236 } 3237 }); 3238 } 3239 3240 // Split out the handle positioning logic so the Move event can use it, too 3241 function checkHandlePosition(reference, handleNumber, to, lookBackward, lookForward, getValue) { 3242 // For sliders with multiple handles, limit movement to the other handle. 3243 // Apply the margin option by adding it to the handle positions. 3244 if (scope_Handles.length > 1 && !options.events.unconstrained) { 3245 if (lookBackward && handleNumber > 0) { 3246 to = Math.max(to, reference[handleNumber - 1] + options.margin); 3247 } 3248 3249 if (lookForward && handleNumber < scope_Handles.length - 1) { 3250 to = Math.min(to, reference[handleNumber + 1] - options.margin); 3251 } 3252 } 3253 3254 // The limit option has the opposite effect, limiting handles to a 3255 // maximum distance from another. Limit must be > 0, as otherwise 3256 // handles would be unmovable. 3257 if (scope_Handles.length > 1 && options.limit) { 3258 if (lookBackward && handleNumber > 0) { 3259 to = Math.min(to, reference[handleNumber - 1] + options.limit); 3260 } 3261 3262 if (lookForward && handleNumber < scope_Handles.length - 1) { 3263 to = Math.max(to, reference[handleNumber + 1] - options.limit); 3264 } 3265 } 3266 3267 // The padding option keeps the handles a certain distance from the 3268 // edges of the slider. Padding must be > 0. 3269 if (options.padding) { 3270 if (handleNumber === 0) { 3271 to = Math.max(to, options.padding[0]); 3272 } 3273 3274 if (handleNumber === scope_Handles.length - 1) { 3275 to = Math.min(to, 100 - options.padding[1]); 3276 } 3277 } 3278 3279 to = scope_Spectrum.getStep(to); 3280 3281 // Limit percentage to the 0 - 100 range 3282 to = limit(to); 3283 3284 // Return false if handle can't move 3285 if (to === reference[handleNumber] && !getValue) { 3286 return false; 3287 } 3288 3289 return to; 3290 } 3291 3292 // Uses slider orientation to create CSS rules. a = base value; 3293 function inRuleOrder(v, a) { 3294 var o = options.ort; 3295 return (o ? a : v) + ", " + (o ? v : a); 3296 } 3297 3298 // Moves handle(s) by a percentage 3299 // (bool, % to move, [% where handle started, ...], [index in scope_Handles, ...]) 3300 function moveHandles(upward, proposal, locations, handleNumbers) { 3301 var proposals = locations.slice(); 3302 3303 var b = [!upward, upward]; 3304 var f = [upward, !upward]; 3305 3306 // Copy handleNumbers so we don't change the dataset 3307 handleNumbers = handleNumbers.slice(); 3308 3309 // Check to see which handle is 'leading'. 3310 // If that one can't move the second can't either. 3311 if (upward) { 3312 handleNumbers.reverse(); 3313 } 3314 3315 // Step 1: get the maximum percentage that any of the handles can move 3316 if (handleNumbers.length > 1) {
3317 handleNumbers.forEach(function(handleNumber, o) { 3318 var to = checkHandlePosition( 3319 proposals, 3320 handleNumber, 3321 proposals[handleNumber] + proposal, 3322 b[o], 3323 f[o], 3324 false 3325 ); 3326 3327 // Stop if one of the handles can't move. 3328 if (to === false) { 3329 proposal = 0; 3330 } else { 3331 proposal = to - proposals[handleNumber]; 3332 proposals[handleNumber] = to; 3333 } 3334 }); 3335 } 3336 3337 // If using one handle, check backward AND forward 3338 else { 3339 b = f = [true]; 3340 } 3341 3342 var state = false; 3343 3344 // Step 2: Try to set the handles with the found percentage 3345 handleNumbers.forEach(function(handleNumber, o) { 3346 state = setHandle(handleNumber, locations[handleNumber] + proposal, b[o], f[o]) || state; 3347 }); 3348 3349 // Step 3: If a handle moved, fire events 3350 if (state) { 3351 handleNumbers.forEach(function(handleNumber) { 3352 fireEvent("update", handleNumber); 3353 fireEvent("slide", handleNumber); 3354 }); 3355 } 3356 } 3357 3358 // Takes a base value and an offset. This offset is used for the connect bar size. 3359 // In the initial design for this feature, the origin element was 1% wide. 3360 // Unfortunately, a rounding bug in Chrome makes it impossible to implement this feature 3361 // in this manner: https://bugs.chromium.org/p/chromium/issues/detail?id=798223 3362 function transformDirection(a, b) { 3363 return options.dir ? 100 - a - b : a; 3364 } 3365 3366 // Updates scope_Locations and scope_Values, updates visual state 3367 function updateHandlePosition(handleNumber, to) { 3368 // Update locations. 3369 scope_Locations[handleNumber] = to; 3370 3371 // Convert the value to the slider stepping/range. 3372 scope_Values[handleNumber] = scope_Spectrum.fromStepping(to); 3373 3374 var translation = 10 * (transformDirection(to, 0) - scope_DirOffset); 3375 var translateRule = "translate(" + inRuleOrder(translation + "%", "0") + ")"; 3376 3377 scope_Handles[handleNumber].style[options.transformRule] = translateRule; 3378 3379 updateConnect(handleNumber); 3380 updateConnect(handleNumber + 1); 3381 } 3382 3383 // Handles before the slider middle are stacked later = higher, 3384 // Handles after the middle later is lower 3385 // [[7] [8] .......... | .......... [5] [4] 3386 function setZindex() { 3387 scope_HandleNumbers.forEach(function(handleNumber) { 3388 var dir = scope_Locations[handleNumber] > 50 ? -1 : 1; 3389 var zIndex = 3 + (scope_Handles.length + dir * handleNumber); 3390 scope_Handles[handleNumber].style.zIndex = zIndex; 3391 }); 3392 } 3393 3394 // Test suggested values and apply margin, step. 3395 function setHandle(handleNumber, to, lookBackward, lookForward) { 3396 to = checkHandlePosition(scope_Locations, handleNumber, to, lookBackward, lookForward, false); 3397 3398 if (to === false) { 3399 return false; 3400 } 3401 3402 updateHandlePosition(handleNumber, to); 3403 3404 return true; 3405 } 3406 3407 // Updates style attribute for connect nodes 3408 function updateConnect(index) { 3409 // Skip connects set to false 3410 if (!scope_Connects[index]) { 3411 return; 3412 } 3413 3414 var l = 0; 3415 var h = 100; 3416 3417 if (index !== 0) { 3418 l = scope_Locations[index - 1]; 3419 } 3420 3421 if (index !== scope_Connects.length - 1) { 3422 h = scope_Locations[index]; 3423 } 3424 3425 // We use two rules: 3426 // 'translate' to change the left/top offset; 3427 // 'scale' to change the width of the element; 3428 // As the element has a width of 100%, a translation of 100% is equal to 100% of the parent (.noUi-base) 3429 var connectWidth = h - l; 3430 var translateRule = "translate(" + inRuleOrder(transformDirection(l, connectWidth) + "%", "0") + ")"; 3431 var scaleRule = "scale(" + inRuleOrder(connectWidth / 100, "1") + ")"; 3432 3433 scope_Connects[index].style[options.transformRule] = translateRule + " " + scaleRule; 3434 } 3435 3436 // Parses value passed to .set method. Returns current value if not parse-able. 3437 function resolveToValue(to, handleNumber) { 3438 // Setting with null indicates an 'ignore'.
3439 // Inputting 'false' is invalid. 3440 if (to === null || to === false || to === undefined) { 3441 return scope_Locations[handleNumber]; 3442 } 3443 3444 // If a formatted number was passed, attempt to decode it. 3445 if (typeof to === "number") { 3446 to = String(to); 3447 } 3448 3449 to = options.format.from(to); 3450 to = scope_Spectrum.toStepping(to); 3451 3452 // If parsing the number failed, use the current value. 3453 if (to === false || isNaN(to)) { 3454 return scope_Locations[handleNumber]; 3455 } 3456 3457 return to; 3458 } 3459 3460 // Set the slider value. 3461 function valueSet(input, fireSetEvent) { 3462 var values = asArray(input); 3463 var isInit = scope_Locations[0] === undefined; 3464 3465 // Event fires by default 3466 fireSetEvent = fireSetEvent === undefined ? true : !!fireSetEvent; 3467 3468 // Animation is optional. 3469 // Make sure the initial values were set before using animated placement. 3470 if (options.animate && !isInit) { 3471 addClassFor(scope_Target, options.cssClasses.tap, options.animationDuration); 3472 } 3473 3474 // First pass, without lookAhead but with lookBackward. Values are set from left to right. 3475 scope_HandleNumbers.forEach(function(handleNumber) { 3476 setHandle(handleNumber, resolveToValue(values[handleNumber], handleNumber), true, false); 3477 }); 3478 3479 // Second pass. Now that all base values are set, apply constraints 3480 scope_HandleNumbers.forEach(function(handleNumber) { 3481 setHandle(handleNumber, scope_Locations[handleNumber], true, true); 3482 }); 3483 3484 setZindex(); 3485 3486 scope_HandleNumbers.forEach(function(handleNumber) { 3487 fireEvent("update", handleNumber); 3488 3489 // Fire the event only for handles that received a new value, as per #579 3490 if (values[handleNumber] !== null && fireSetEvent) { 3491 fireEvent("set", handleNumber); 3492 } 3493 }); 3494 } 3495 3496 // Reset slider to initial values 3497 function valueReset(fireSetEvent) { 3498 valueSet(options.start, fireSetEvent); 3499 } 3500 3501 // Set value for a single handle 3502 function valueSetHandle(handleNumber, value, fireSetEvent) { 3503 // Ensure numeric input 3504 handleNumber = Number(handleNumber); 3505 3506 if (!(handleNumber >= 0 && handleNumber < scope_HandleNumbers.length)) { 3507 throw new Error("noUiSlider (" + VERSION + "): invalid handle number, got: " + handleNumber); 3508 } 3509 3510 // Look both backward and forward, since we don't want this handle to "push" other handles (#960); 3511 setHandle(handleNumber, resolveToValue(value, handleNumber), true, true); 3512 3513 fireEvent("update", handleNumber); 3514 3515 if (fireSetEvent) { 3516 fireEvent("set", handleNumber); 3517 } 3518 } 3519 3520 // Get the slider value. 3521 function valueGet() { 3522 var values = scope_Values.map(options.format.to); 3523 3524 // If only one handle is used, return a single value. 3525 if (values.length === 1) { 3526 return values[0]; 3527 } 3528 3529 return values; 3530 } 3531 3532 // Removes classes from the root and empties it. 3533 function destroy() { 3534 for (var key in options.cssClasses) { 3535 if (!options.cssClasses.hasOwnProperty(key)) { 3536 continue; 3537 } 3538 removeClass(scope_Target, options.cssClasses[key]); 3539 } 3540 3541 while (scope_Target.firstChild) { 3542 scope_Target.removeChild(scope_Target.firstChild); 3543 } 3544 3545 delete scope_Target.noUiSlider; 3546 } 3547 3548 function getNextStepsForHandle(handleNumber) { 3549 var location = scope_Locations[handleNumber]; 3550 var nearbySteps = scope_Spectrum.getNearbySteps(location); 3551 var value = scope_Values[handleNumber]; 3552 var increment = nearbySteps.thisStep.step; 3553 var decrement = null; 3554 3555 // If snapped, directly use defined step value 3556 if (options.snap) { 3557 return [ 3558 value - nearbySteps.stepBefore.startValue || null, 3559 nearbySteps.stepAfter.startValue - value || null 3560 ]; 3561 } 3562 3563 // If the next value in this step moves into the next step, 3564 // the increment is the start of the next step - the current value 3565 if (increment !== false) { 3566 if (value + increment > nearbySteps.stepAfter.startValue) { 3567 increment = nearbySteps.stepAfter.startValue - value; 3568 } 3569 } 3570 3571 // If the value is beyond the starting point 3572 if (value > nearbySteps.thisStep.startValue) { 3573 decrement = nearbySteps.thisStep.step; 3574 }
vendor: 5,984 bytes, lines 3574-3747
3574 else if (nearbySteps.stepBefore.step === false) { 3575 decrement = false; 3576 } 3577 3578 // If a handle is at the start of a step, it always steps back into the previous step first 3579 else { 3580 decrement = value - nearbySteps.stepBefore.highestStep; 3581 } 3582 3583 // Now, if at the slider edges, there is no in/decrement 3584 if (location === 100) { 3585 increment = null; 3586 } else if (location === 0) { 3587 decrement = null; 3588 } 3589 3590 // As per #391, the comparison for the decrement step can have some rounding issues. 3591 var stepDecimals = scope_Spectrum.countStepDecimals(); 3592 3593 // Round per #391 3594 if (increment !== null && increment !== false) { 3595 increment = Number(increment.toFixed(stepDecimals)); 3596 } 3597 3598 if (decrement !== null && decrement !== false) { 3599 decrement = Number(decrement.toFixed(stepDecimals)); 3600 } 3601 3602 return [decrement, increment]; 3603 } 3604 3605 // Get the current step size for the slider. 3606 function getNextSteps() { 3607 return scope_HandleNumbers.map(getNextStepsForHandle); 3608 } 3609 3610 // Updateable: margin, limit, padding, step, range, animate, snap 3611 function updateOptions(optionsToUpdate, fireSetEvent) { 3612 // Spectrum is created using the range, snap, direction and step options. 3613 // 'snap' and 'step' can be updated. 3614 // If 'snap' and 'step' are not passed, they should remain unchanged. 3615 var v = valueGet(); 3616 3617 var updateAble = [ 3618 "margin", 3619 "limit", 3620 "padding", 3621 "range", 3622 "animate", 3623 "snap", 3624 "step", 3625 "format", 3626 "pips", 3627 "tooltips" 3628 ]; 3629 3630 // Only change options that we're actually passed to update. 3631 updateAble.forEach(function(name) { 3632 // Check for undefined. null removes the value. 3633 if (optionsToUpdate[name] !== undefined) { 3634 originalOptions[name] = optionsToUpdate[name]; 3635 } 3636 }); 3637 3638 var newOptions = testOptions(originalOptions); 3639 3640 // Load new options into the slider state 3641 updateAble.forEach(function(name) { 3642 if (optionsToUpdate[name] !== undefined) { 3643 options[name] = newOptions[name]; 3644 } 3645 }); 3646 3647 scope_Spectrum = newOptions.spectrum; 3648 3649 // Limit, margin and padding depend on the spectrum but are stored outside of it. (#677) 3650 options.margin = newOptions.margin; 3651 options.limit = newOptions.limit; 3652 options.padding = newOptions.padding; 3653 3654 // Update pips, removes existing. 3655 if (options.pips) { 3656 pips(options.pips); 3657 } else { 3658 removePips(); 3659 } 3660 3661 // Update tooltips, removes existing. 3662 if (options.tooltips) { 3663 tooltips(); 3664 } else { 3665 removeTooltips(); 3666 } 3667 3668 // Invalidate the current positioning so valueSet forces an update. 3669 scope_Locations = []; 3670 valueSet(optionsToUpdate.start || v, fireSetEvent); 3671 } 3672 3673 // Initialization steps 3674 function setupSlider() { 3675 // Create the base element, initialize HTML and set classes. 3676 // Add handles and connect elements. 3677 scope_Base = addSlider(scope_Target); 3678 3679 addElements(options.connect, scope_Base); 3680 3681 // Attach user events. 3682 bindSliderEvents(options.events); 3683 3684 // Use the public value method to set the start values. 3685 valueSet(options.start); 3686 3687 if (options.pips) { 3688 pips(options.pips); 3689 } 3690 3691 if (options.tooltips) { 3692 tooltips(); 3693 } 3694 3695 aria(); 3696 } 3697 3698 setupSlider(); 3699 3700 // noinspection JSUnusedGlobalSymbols 3701 scope_Self = { 3702 destroy: destroy, 3703 steps: getNextSteps, 3704 on: bindEvent, 3705 off: removeEvent, 3706 get: valueGet, 3707 set: valueSet, 3708 setHandle: valueSetHandle, 3709 reset: valueReset, 3710 // Exposed for unit testing, don't use this in your application. 3711 __moveHandles: function(a, b, c) { 3712 moveHandles(a, b, scope_Locations, c); 3713 }, 3714 options: originalOptions, // Issue #600, #678 3715 updateOptions: updateOptions, 3716 target: scope_Target, // Issue #597 3717 removePips: removePips, 3718 removeTooltips: removeTooltips, 3719 pips: pips // Issue #594 3720 }; 3721 3722 return scope_Self; 3723 } 3724 3725 // Run the standard initializer 3726 function initialize(target, originalOptions) { 3727 if (!target || !target.nodeName) { 3728 throw new Error("noUiSlider (" + VERSION + "): create requires a single element, got: " + target); 3729 } 3730 3731 // Throw an error if the slider was already initialized. 3732 if (target.noUiSlider) { 3733 throw new Error("noUiSlider (" + VERSION + "): Slider was already initialized."); 3734 } 3735 3736 // Test the options and create the slider environment; 3737 var options = testOptions(originalOptions, target); 3738 var api = scope(target, options, originalOptions); 3739 3740 target.noUiSlider = api; 3741 3742 return api; 3743 } 3744 3745 // Use an object instead of a function for future expandability; 3746 return { 3747 // Exposed for unit testing, don't use this in your application.
3748 __spectrum: Spectrum, 3749 version: VERSION, 3750 create: initialize 3751 }; 3752}); 3753 3754ko.bindingHandlers.noUiSlider = { 3755 init: function (element, valueAccessor, allBindingsAccesor, viewModel, bindingContext) { 3756 var params = valueAccessor(); 3757 3758 noUiSlider.create(element, { 3759 start: [0], 3760 range: { 3761 'min': params.minValue, 3762 'max': params.maxValue 3763 }, 3764 connect: true, 3765 step: 1, 3766 }); 3767 element.noUiSlider.on('update', function(values, handle) { 3768 var value = values[handle]; 3769 params.value(parseInt(value)); 3770 }); 3771 3772 }, 3773 3774 update: function (element, valueAccessor, allBindingsAccesor, viewModel, bindingContext) { 3775 var options = valueAccessor() || {}; 3776 var slider = element.noUiSlider; 3777 if(!slider) 3778 return; 3779 var disabled = options.disabled(); 3780 3781 if(disabled) 3782 { 3783 element.setAttribute('disabled', true); 3784 3785 } 3786 else{ 3787 element.removeAttribute('disabled'); 3788 } 3789 } 3790}; 3791 3792ko.bindingHandlers.slider = { 3793 init: function(element, valueAccessor, allBindingsAccessor) { 3794 var params = valueAccessor(); 3795 noUiSlider.create(element, { 3796 start: [0], 3797 range: { 3798 'min': params.minValue, 3799 'max': params.maxValue 3800 }, 3801 connect: true, 3802 step: 1, 3803 }); 3804 var ignoreObservableChanges = false; 3805 3806 // works with with noUiSlider but not with knockout event bindings 3807 element.noUiSlider.on('set', function(values, handle) { 3808 var value = values[handle]; 3809 ignoreObservableChanges = true; 3810 params.value(parseInt(value)); 3811 ignoreObservableChanges = false; 3812 }); 3813 3814 // works with with noUiSlider but not with knockout event bindings 3815 element.noUiSlider.on('update', function(values, handle) { 3816 var value = values[handle]; 3817 ignoreObservableChanges = true; 3818 params.value(parseInt(value)); 3819 ignoreObservableChanges = false; 3820 }); 3821 3822 params.value.subscribe(function(newValue) { 3823 if (ignoreObservableChanges) { 3824 return; 3825 } 3826 3827 element.noUiSlider.set(ko.utils.unwrapObservable(newValue)); 3828 }); 3829 3830 ko.utils.domNodeDisposal.addDisposeCallback(element, function() { 3831 element.noUiSlider.destroy(); 3832 }); 3833 }, 3834 update: function(element, valueAccessor) { 3835 3836 } 3837}; 3838 3839</script>
3839 3840<!--BEGIN: TRACKING CODE MANAGER (v2.8.0) BY INTELLYWP.COM IN HEAD//-->
3841<script async src="https://gstatic.com/conversions/gclidless.js"></script>
vendor: 2 bytes, line 3841
3841
3842<script> 3843window.addEventListener('load', function(event) { gclidless.setUp(); 3844}); </script>
vendor: 1 bytes, line 3844
3844
3845<script src="https://www.googleoptimize.com/optimize.js?id=OPT-P6G66Q6"></script>
3845 3846 3847 3848<!-- Google Tag Manager -->
3849<script>
vendor: 331 bytes, lines 3849-3853
3849(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 3850new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 3851j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 3852'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 3853})(window,document,'script','dataLayer','
3853GTM-5CVZWQ3
vendor: 3 bytes, line 3853
3853');
3853</script>
3853 3854
3855<script>
vendor: 331 bytes, lines 3855-3859
3855(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 3856new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 3857j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 3858'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 3859})(window,document,'script','dataLayer','
3859GTM-WXFSX68
vendor: 3 bytes, line 3859
3859');
3859</script>
3859 3860<!-- End Google Tag Manager --> 3861 3862<!-- Facebook Conversion Tracking -->
3863<script type="text/javascript"> 3864 var myIframeCover = document.querySelector('#facebook-chat-start-conversion'); 3865 myIframeCover.addEventListener("click", function() { 3866 myIframeCover.style.display = 'none'; 3867 }); 3868</script>
3868 3869
3870<script> 3871jQuery(function ($) { 3872 $('#facebook-chat-start-conversion').on("click", function(e) { 3873 $('#facebook-chat-start-conversion').addClass('hidden'); 3874 }); 3875}); 3876</script>
3876 3877<!--END: https://wordpress.org/plugins/tracking-code-manager IN HEAD//--><meta name="generator" content="Elementor 4.3.3; features: additional_custom_breakpoints; settings: css_print_method-external, google_font-enabled, font_display-auto"> 3878 <style> 3879 .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload), 3880 .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * { 3881 background-image: none !important; 3882 } 3883 @media screen and (max-height: 1024px) { 3884 .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload), 3885 .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * { 3886 background-image: none !important; 3887 } 3888 } 3889 @media screen and (max-height: 640px) { 3890 .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload), 3891 .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * { 3892 background-image: none !important; 3893 } 3894 } 3895 </style> 3896 <link rel="stylesheet" href="https://use.typekit.net/stj0tgn.css">
3896<script id='nitro-generic' nitro-exclude>(()=>{if(window.NitroPack=window.NitroPack||{coreVersion:"na",isCounted:!1},!window.NitroPack.isCounted){window.NitroPack.isCounted=!0;const e=()=>{let e=performance?.getEntriesByType?.("navigation")?.[0];return document.prerendering||e?.activationStart>0?"_prr":"navigational-prefetch"===e?.deliveryType||void 0===e?.deliveryType&&e&&e.responseStart-e.requestStart<=5?"_pre":"_dow"},i=(e,i)=>{navigator.sendBeacon("https://to.getnitropack.com/p",JSON.stringify({siteId:"toEDnGIJVqyYgDVctlcjyrrZBmZBwQLg",url:window.location.href,referrer:i||"",isOptimized:!!window.IS_NITROPACK,coreVersion:"na",missReason:window.NPTelemetryMetadata?.missReason||"",pageType:window.NPTelemetryMetadata?.pageType||"",isEligibleForOptimization:!!window.NPTelemetryMetadata?.isEligibleForOptimization||!1,pageLoadMode:e}))};(async()=>{await new Promise(e=>{document.prerendering?document.addEventListener("prerenderingchange",e,{once:!0}):e()}),await new Promise(e=>{"complete"===document.readyState?e():window.addEventListener("load",e)}),i(e(),document.referrer)})(),window.addEventListener("pageshow",e=>{if(e.persisted){let e=document.prerendering||self.performance?.getEntriesByType?.("navigation")[0]?.activationStart>0;"visible"!==document.visibilityState||e||i("_bfr","")}})}})();</script>
3896<link rel="icon" href="https://www.primeinc.com/wp-content/uploads/2019/04/cropped-Prime_Favicon_1-32x32.png" sizes="32x32" /> 3897<link rel="icon" href="https://www.primeinc.com/wp-content/uploads/2019/04/cropped-Prime_Favicon_1-192x192.png" sizes="192x192" /> 3898<link rel="apple-touch-icon" href="https://www.primeinc.com/wp-content/uploads/2019/04/cropped-Prime_Favicon_1-180x180.png" /> 3899<meta name="msapplication-TileImage" content="https://www.primeinc.com/wp-content/uploads/2019/04/cropped-Prime_Favicon_1-270x270.png" /> 3900<style id="wp-custom-css"> 3901 3902/*** Global Text Styling ***/ 3903 3904/* H1 */ 3905h1.elementor-heading-title.elementor-size-default { 3906 line-height: 1em; 3907} 3908 3909/* H4 */ 3910h4.elementor-heading-title.elementor-size-default { 3911 font-family: "ff-good-web-pro", Sans-serif; 3912 letter-spacing: 1px; 3913} 3914 3915a.terms-conditions { 3916 color: #35e7fc; 3917} 3918 3919a.terms-conditions:hover { 3920 color: #bb4498; 3921} 3922 3923/** Stats Styling **/ 3924.stat-text { 3925 font-size: 11px; 3926} 3927 3928.white-link { 3929 color: #ffffff; 3930} 3931 3932/* Driver Awards */ 3933#awards9 .grid-content ul { 3934 text-align: center; 3935 margin: 0; 3936} 3937 3938/* Lease Table */ 3939.elementor-widget-uael-table .fa-times-circle { 3940 color: #bb4498 !important; 3941} 3942 3943 3944/*Transparent Main Menu */ 3945.elementor-section-wrap .hero { 3946 margin-top: -100px !important; 3947} 3948 3949#elementor-popup-modal-2335 .menu .menu-item-has-children .sub-menu .menu-item-has-children > a { 3950 margin-top: 20px !important; 3951} 3952 3953/** Pop Up - Apply Now **/ 3954@media only screen and (max-width: 600px) { 3955li.gfield.gf_right_half { 3956 width: 100% !important; 3957 } 3958} 3959 3960@media only screen and (max-width: 600px) { 3961li.gfield.gf_left_half { 3962 width: 100% !important; 3963 } 3964} 3965 3966@media only screen and (max-width: 600px) { 3967.elementor-widget-container .elementor-2691 .elementor-element.elementor-element-daee3c0 .gf_right_half { 3968 padding-left: 0px !important; 3969} 3970} 3971 3972@media only screen and (max-width: 600px) { 3973.elementor-widget-container .elementor-2696 .elementor-element.elementor-element-bed830a .gf_right_half { 3974 padding-left: 0px !important; 3975} 3976} 3977 3978@media only screen and (max-width: 600px) { 3979.elementor-widget-container .elementor-2691 .elementor-element.elementor-element-daee3c0 .uael-gf-style .ginput_container_email { 3980 padding-right: 0px !important; 3981} 3982} 3983 3984@media only screen and (max-width: 600px) { 3985.elementor-widget-container .elementor-2696 .elementor-element.elementor-element-bed830a .uael-gf-style .ginput_container_email { 3986 padding-right: 0px !important; 3987} 3988} 3989 3990/*** Gradient Button ***/ 3991.grad-btn .container { 3992 text-align: center; 3993 position: relative; 3994 min-width: 100px; 3995 margin: 0 auto; 3996 cursor: pointer; 3997} 3998 3999.grad-btn button { 4000 font-family: "Open Sans", Sans-serif; 4001 font-size: 12px; 4002 font-weight: bold; 4003 text-transform: uppercase; 4004 letter-spacing: 0.5px; 4005 color: #fff; 4006 position: relative; 4007 padding: 10px 25px; 4008 height: 50px; 4009 min-width: 100px; 4010 border: 0; 4011 border-radius: 0; 4012 overflow: hidden; 4013 z-index: 1; 4014} 4015 4016.grad-btn .fill-one { 4017 position: absolute; 4018 background-image: linear-gradient(to right, #3B256E 30%, #B24195 100%); 4019 height: 70px; 4020 width: 400px; 4021 border-radius: 5px; 4022 margin: -44px 0 0 -86px; 4023 z-index: -1; 4024 transition: all 0.4s ease; 4025} 4026 4027.grad-btn .container-one:hover .fill-one { 4028 -webkit-transform: translateX(-100px); 4029 -moz-transform: translateX(-100px); 4030 transform: translateX(-100px); 4031} 4032 4033/*** Equipment Tab Styling ***/ 4034@media only screen and (min-width: 770px) { 4035.elementor-tabs-wrapper .elementor-tab-title { 4036 padding: 25px 53px 25px 52px; 4037} 4038} 4039 4040.elementor-tabs-wrapper .elementor-tab-title { 4041 text-align: center !important; 4042} 4043 4044.elementor-widget-tabs .elementor-tabs .elementor-tab-title { 4045 text-align: center !important; 4046} 4047 4048/*** Cookie Pop UP***/ 4049 4050div#cookie-law-info-bar span { 4051 font-size: 12px !important; 4052} 4053 4054@media only screen and (max-width: 600px) { 4055.medium.cli-plugin-button { 4056 display: block !important; 4057} 4058} 4059 4060div#cookie-law-info-bar { 4061 font-family: "Open Sans", Sans-serif !important; 4062} 4063/*** Grid Styling - 3 Column Layout ***/ 4064/* Facilities Page */ 4065.box-min-height .elementor-widget-container { 4066 min-height: 425px; 4067} 4068 4069/* Light Border */ 4070.light-border .elementor-widget-container { 4071 border-color: #d0d2d3 !important; 4072} 4073 4074/* Prime Culture */ 4075.box-min-height-prime-culture .elementor-widget-container { 4076 min-height: 350px; 4077} 4078 4079/* In House Hide Apply */ 4080.page-id-2254 .hide-in-house { 4081 display: none; 4082} 4083 4084.page-id-2260 .hide-in-house { 4085 display: none; 4086} 4087 4088.page-id-2275 .hide-in-house { 4089 display: none; 4090} 4091 4092/* Facebook Chat */ 4093#facebook-chat-start-conversion { 4094 position: fixed; 4095 z-index: 2147483649; 4096 bottom: 24px; 4097 top: auto; 4098 height: 100px; 4099 width: 70px; 4100 left: 20px;
4101 cursor: pointer; 4102} 4103 4104#facebook-chat-start-conversion.hidden { 4105 display: none; 4106} 4107 4108#facebook-chat-start-conversion .facebook-chat-text { 4109 font-size: 12px; 4110 text-align: center; 4111} 4112 4113/* Table Styling */ 4114.uael-table { 4115 border: none !important; 4116} 4117 4118 4119/* Browser-specific fixes */ 4120@media all and (-ms-high-contrast:none) { 4121.eael-nav-dot { 4122 height: 20px!important; 4123} 4124} 4125 4126.elementor-11698 .elementor-element.elementor-element-061260b .elementor-pagination { 4127 margin-top: 60px; 4128} 4129.grecaptcha-badge { 4130width: 70px !important; 4131overflow: hidden !important; 4132transition: all 0.3s ease !important; 4133left: 4px !important; 4134 z-index: 9999; 4135} 4136 4137.grecaptcha-badge:hover { 4138width: 256px !important; 4139} 4140 4141.container.grid-container { 4142 margin-top: -100px; 4143} 4144 4145</style> 4146</head> 4147 4148<body class="wp-singular page-template page-template-elementor_header_footer page page-id-2252 page-parent wp-embed-responsive wp-theme-generatepress wp-child-theme-generatepress_child no-sidebar nav-below-header separate-containers fluid-header active-footer-widgets-0 nav-aligned-left header-aligned-left dropdown-hover elementor-default elementor-template-full-width elementor-kit-8505 elementor-page elementor-page-2252 full-width-content" itemtype="https://schema.org/WebPage" itemscope> 4149 4150<!--BEGIN: TRACKING CODE MANAGER (v2.8.0) BY INTELLYWP.COM IN BODY//--> 4151<!-- Google Tag Manager (noscript) --> 4152<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5CVZWQ3" height="0" width="0" style="display:none"></iframe></noscript> 4153 4154<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-WXFSX68" height="0" width="0" style="display:none"></iframe></noscript> 4155<!-- End Google Tag Manager (noscript) --> 4156<!--END: https://wordpress.org/plugins/tracking-code-manager IN BODY//--><a class="screen-reader-text skip-link" href="#content" title="Skip to content">Skip to content</a> <header data-elementor-type="header" data-elementor-id="2368" class="elementor elementor-2368 elementor-location-header" data-elementor-post-type="elementor_library"> 4157 <section class="elementor-section elementor-top-section elementor-element elementor-element-6cc128b elementor-section-full_width elementor-section-height-min-height elementor-section-height-default elementor-section-items-middle" data-id="6cc128b" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"de0689b","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_background":"classic","sticky":"top","sticky_effects_offset":91,"sticky_on":["desktop","tablet","mobile"],"sticky_offset":0,"sticky_anchor_link_offset":0}"> 4158 <div class="elementor-container elementor-column-gap-default"> 4159 <div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-17de3d4" data-id="17de3d4" data-element_type="column" data-e-type="column"> 4160 <div class="elementor-widget-wrap elementor-element-populated"> 4161 <div class="elementor-element elementor-element-d64a03e elementor-widget elementor-widget-image" data-id="d64a03e" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4162 <div class="elementor-widget-container"> 4163 <a href="https://www.primeinc.com"> 4164 <img width="200" height="61" src="https://www.primeinc.com/w
4164p-content/uploads/2019/04/NEW-PRIME-LOGO.svg" class="attachment-full size-full wp-image-4790" alt="Black Prime, Inc. logo with the words "Driven by the best" written underneath." /> </a> 4165 </div> 4166 </div> 4167 </div> 4168 </div> 4169 <div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-6cef156" data-id="6cef156" data-element_type="column" data-e-type="column"> 4170 <div class="elementor-widget-wrap elementor-element-populated"> 4171 <div class="elementor-element elementor-element-514e3f8 elementor-widget__width-auto elementor-hidden-phone driver-application elementor-widget elementor-widget-button" data-id="514e3f8" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 4172 <div class="elementor-widget-container"> 4173 <div class="elementor-button-wrapper"> 4174 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://intelliapp.driverapponline.com/c/primeinc"> 4175 <span class="elementor-button-content-wrapper"> 4176 <span class="elementor-button-text">Driver Application</span> 4177 </span> 4178 </a> 4179 </div> 4180 </div> 4181 </div> 4182 <div class="elementor-element elementor-element-1e4a7b0 elementor-widget__width-auto elementor-hidden-phone work-in-house elementor-widget elementor-widget-button" data-id="1e4a7b0" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 4183 <div class="elementor-widget-container"> 4184 <div class="elementor-button-wrapper"> 4185 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://careers.primeinc.com"> 4186 <span class="elementor-button-content-wrapper"> 4187 <span class="elementor-button-text">Work In House</span> 4188 </span> 4189 </a> 4190 </div> 4191 </div> 4192 </div> 4193 <div class="elementor-element elementor-element-ad76e40 elementor-widget__width-auto hide-in-house elementor-hidden-desktop elementor-hidden-tablet elementor-widget elementor-widget-button" data-id="ad76e40" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 4194 <div class="elementor-widget-container"> 4195 <div class="elementor-button-wrapper"> 4196 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://intelliapp.driverapponline.com/c/primeinc"> 4197 <span class="elementor-button-content-wrapper"> 4198 <span class="elementor-button-text">Apply Now</span> 4199 </span> 4200 </a> 4201 </div> 4202 </div> 4203 </div> 4204 <div class="elementor-element elementor-element-6b97407 elementor-icon-list--layout-inline elementor-align-end elementor-widget__width-auto elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="6b97407" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 4205 <div class="elementor-widget-container"> 4206 <ul class="elementor-icon-list-items elementor-inline-items"> 4207 <li class="elementor-icon-list-item elementor-inline-item"> 4208 <a href="#elementor-action%3Aaction%3Dpopup%3Aopen%26settings%3DeyJpZCI6IjI1MDEiLCJ0b2dnbGUiOnRydWV9"> 4209 4210 <span class="elementor-icon-list-icon"> 4211 <i aria-hidden="true" class="fas fa-phone"></i> </span> 4212 <span class="elementor-icon-list-text">Call</span> 4213 </a> 4214 </li> 4215 </ul> 4216 </div> 4217 </div> 4218 <div class="elementor-element elementor-element-aff4f68 elementor-search-form--skin-full_screen elementor-widget__width-auto elementor-hidden-phone elementor-widget elementor-widget-search-form" data-id="aff4f68" data-element_type="widget" data-e-type="widget" data-settings="{"skin":"full_screen"}" data-widget_type="search-form.default"> 4219 <div class="elementor-widget-container"> 4220 <search role="search"> 4221 <form class="elementor-search-form" action="https://www.primeinc.com" method="get"> 4222 <div class="elementor-search-form__toggle" role="button" tabindex="0" aria-label="Search"> 4223 <i aria-hidden="true" class="fas fa-search"></i> </div> 4224 <div class="elementor-search-form__container"> 4225 <label class="elementor-screen-only" for="elementor-search-form-aff4f68">Search</label> 4226 4227 4228 <input id="elementor-search-form-aff4f68" placeholder="" class="elementor-search-form__input" type="search" name="s" value=""> 4229 4230 4231 <div class="dialog-lightbox-close-button dialog-close-button" role="button" tabindex="0" aria-label="Close this search box."> 4232 <i aria-hidden="true" class="eicon-close"></i> </div> 4233 </div> 4234 </form> 4235 </search> 4236 </div>
4237 </div> 4238 <div class="elementor-element elementor-element-88ad6d0 elementor-icon-list--layout-inline elementor-align-end elementor-widget__width-auto elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="88ad6d0" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 4239 <div class="elementor-widget-container"> 4240 <ul class="elementor-icon-list-items elementor-inline-items"> 4241 <li class="elementor-icon-list-item elementor-inline-item"> 4242 <a href="#elementor-action%3Aaction%3Dpopup%3Aopen%26settings%3DeyJpZCI6IjIzMzUiLCJ0b2dnbGUiOnRydWV9"> 4243 4244 <span class="elementor-icon-list-icon"> 4245 <i class="fa fa-navicon" aria-hidden="true"></i> 4246 </span> 4247 <span class="elementor-icon-list-text">Menu</span> 4248 </a> 4249 </li> 4250 </ul> 4251 </div> 4252 </div> 4253 </div> 4254 </div> 4255 </div> 4256 </section> 4257 </header> 4258 4259 <div class="site grid-container container hfeed grid-parent" id="page"> 4260 <div class="site-content" id="content"> 4261 <div data-elementor-type="wp-post" data-elementor-id="2252" class="elementor elementor-2252" data-elementor-post-type="page"> 4262 <section class="elementor-section elementor-top-section elementor-element elementor-element-5fa005d elementor-section-height-min-height hero elementor-section-boxed elementor-section-height-default elementor-section-items-middle" data-id="5fa005d" data-element_type="section" data-e-type="section" id="transportation-solutions" data-settings="{"background_background":"video","jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"bf6836f","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_video_link":"https:\/\/www.primeinc.com\/wp-content\/uploads\/2019\/04\/TransportaionSolutionsHeaderVideo.mp4","motion_fx_motion_fx_scrolling":"yes","motion_fx_devices":["desktop","tablet","mobile"]}"> 4263 <div class="elementor-background-video-container elementor-hidden-mobile"> 4264 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 4265 </div> 4266 <div class="elementor-background-overlay"></div> 4267 <div class="elementor-container elementor-column-gap-default"> 4268 <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-89615a7" data-id="89615a7" data-element_type="column" data-e-type="column" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_devices":["desktop","tablet","mobile"]}"> 4269 <div class="elementor-widget-wrap elementor-element-populated"> 4270 <div class="elementor-element elementor-element-d90a84e nav-align-left fixed-nav elementor-hidden-tablet elementor-hidden-phone elementor-widget elementor-widget-eael-one-page-nav" data-id="d90a84e" data-element_type="widget" data-e-type="widget" data-settings="{"heading_alignment":"left"}" data-widget_type="eael-one-page-nav.default"> 4271 <div class="elementor-widget-container"> 4272 <div class="eael-one-page-nav-container"> 4273 <ul class="eael-one-page-nav" id="eael-one-page-nav-d90a84e" data-section-id="eael-one-page-nav-d90a84e" data-top-offset="100" data-scroll-speed="700" data-scroll-wheel="off" data-scroll-touch="" data-scroll-keys="off" data-section-ids="["transportation-solutions","load-tracing","transportation-divisions","industry-awards"]"> 4274 <li class="eael-one-page-nav-item"><span class="eael-nav-dot-tooltip eael-tooltip-arrow"><span class="eael-nav-dot-tooltip-content">TRANSPORTATION SOLUTIONS</span></span><a href="#" aria-label="TRANSPORTATION SOLUTIONS" data-row-id="transportation-solutions"><span class="eael-nav-dot-wrap"><i class="eael-nav-dot eci fontello-b9426991-Icons_TransportationSolutions"></i></span></a></li><li class="eael-one-page-nav-item"><span class="eael-nav-dot-tooltip eael-tooltip-arrow"><span class="eael-nav-dot-tooltip-content">LOAD TRACING</span></span><a href="#" aria-label="LOAD TRACING" data-row-id="load-tracing"><span class="eael-nav-dot-wrap"><i class="eael-nav-dot eci fontello-27a1860b-icon_loadtracing2"></i></span></a></li><li class="eael-one-page-nav-item"><span class="eael-nav-dot-tooltip eael-tooltip-arrow"><span class="eael-nav-dot-tooltip-content">TRANSPORTATION DIVISIONS</span></span><a href="#" aria-label="TRANSPORTATION DIVISIONS" data-row-id="transportation-divisions"><span class="eael-nav-dot-wrap"><i class="eael-nav-dot eci fontello-27a1860b-icons_transportationdivisions"></i></span></a></li><li class="eael-one-page-nav-item"><span class="eael-nav-dot-tooltip eael-tooltip-arrow"><span class="eael-nav-dot-tooltip-content">INDUSTRY AWARDS</span></span><a href="#" aria-label="INDUSTRY AWARDS" data-row-id="industry-awards"><span class="eael-nav-dot-wrap"><i class="eael-nav-dot eci fontello-27a1860b-icons_industryawards"></i></span></a></li> </ul> 4275 </div>
4276 </div> 4277 </div> 4278 <div class="elementor-element elementor-element-eba4c86 elementor-invisible elementor-widget elementor-widget-heading" data-id="eba4c86" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4279 <div class="elementor-widget-container"> 4280 <h1 class="elementor-heading-title elementor-size-default">Transportation Solutions</h1> </div> 4281 </div> 4282 </div> 4283 </div> 4284 </div> 4285 </section> 4286 <section class="elementor-section elementor-top-section elementor-element elementor-element-283a28e elementor-section-full_width elementor-section-height-min-height elementor-section-height-default elementor-section-items-middle" data-id="283a28e" data-element_type="section" data-e-type="section" id="load-tracing" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"c9d6c72","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_background":"classic"}"> 4287 <div class="elementor-container elementor-column-gap-default"> 4288 <div class="elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-b6d0e97" data-id="b6d0e97" data-element_type="column" data-e-type="column" data-settings="{"background_background":"classic"}"> 4289 <div class="elementor-widget-wrap elementor-element-populated"> 4290 <div class="elementor-element elementor-element-db93fe7 elementor-view-default elementor-widget elementor-widget-icon" data-id="db93fe7" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default"> 4291 <div class="elementor-widget-container"> 4292 <div class="elementor-icon-wrapper"> 4293 <div class="elementor-icon"> 4294 <i aria-hidden="true" class="eci fontello-27a1860b-icon_loadtracing2"></i> </div> 4295 </div> 4296 </div> 4297 </div> 4298 <div class="elementor-element elementor-element-c287763 elementor-invisible elementor-widget elementor-widget-heading" data-id="c287763" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="heading.default"> 4299 <div class="elementor-widget-container"> 4300 <h2 class="elementor-heading-title elementor-size-default">Load Tracing</h2> </div> 4301 </div> 4302 <div class="elementor-element elementor-element-80d4665 elementor-invisible elementor-widget elementor-widget-text-editor" data-id="80d4665" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="text-editor.default"> 4303 <div class="elementor-widget-container"> 4304 <p><span style="font-weight: 400;">Check the status and </span><span style="font-weight: 400;">track the</span><span style="font-weight: 400;"> location of your </span><span style="font-weight: 400;">freight</span> <span style="font-weight: 400;">shipment</span><span style="font-weight: 400;"> in real time.</span></p> </div>
4305 </div> 4306 <div class="elementor-element elementor-element-b1a051e grad-btn elementor-widget__width-auto elementor-invisible elementor-widget elementor-widget-html" data-id="b1a051e" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="html.default"> 4307 <div class="elementor-widget-container"> 4308 <div class="container container-one"> 4309 <a href="https://loadtracing.primeinc.com/" target="_blank" rel="noopener"><button> 4310 Track Your Load 4311 <div class="fill-one"></div> 4312 </button></a> 4313 </div> </div> 4314 </div> 4315 </div> 4316 </div> 4317 <div class="elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-223bb02" data-id="223bb02" data-element_type="column" data-e-type="column" data-settings="{"background_background":"classic"}"> 4318 <div class="elementor-widget-wrap elementor-element-populated"> 4319 <div class="elementor-element elementor-element-24f2559 elementor-view-default elementor-widget elementor-widget-icon" data-id="24f2559" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default"> 4320 <div class="elementor-widget-container"> 4321 <div class="elementor-icon-wrapper"> 4322 <div class="elementor-icon"> 4323 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="Layer_1" x="0px" y="0px" viewBox="0 0 60 56.2" style="enable-background:new 0 0 60 56.2;" xml:space="preserve"><path d="M58.7,15.2l-21-5.8V5.7c0-1.1-0.7-2.1-1.3-2.2L23.7,0c-0.4,0-0.6,0.5-0.6,1v3.1l6.3,1.7c1.7,0.5,3,2.5,3,4.5v1.9l19.3,5.3 c1.7,0.5,3,2.5,3,4.5v18.7l5.3,1.5V17.4C60,16.4,59.3,15.4,58.7,15.2z M51,19.9l-21-5.8v-3.7c0-1.1-0.7-2.1-1.3-2.2L16,4.7 c-0.4,0-0.6,0.5-0.6,1v3.1l6.3,1.7c1.7,0.5,3,2.5,3,4.5v1.9L44,22.2c1.7,0.5,3,2.5,3,4.5v18.7l5.3,1.5V22.1C52.3,21,51.6,20,51,19.9 z M43.3,24.5l-21-5.8V15c0-1.1-0.7-2.1-1.3-2.2L8.3,9.3c-0.4-0.1-0.6,0.5-0.6,1v3.1l6.3,1.7c1.7,0.5,3,2.5,3,4.5v1.9l19.3,5.3 c1.7,0.5,3,2.5,3,4.5v18.7l5.3,1.5V26.8C44.6,25.7,43.9,24.7,43.3,24.5z M35.7,29.2l-21-5.8v-3.7c0-1.1-0.7-2.1-1.3-2.2L0.6,14 c0,0,0,0,0,0C0.2,14,0,14.4,0,15v31l36.9,10.2V31.4C36.9,30.3,36.3,29.3,35.7,29.2z M11.6,44.6c0,0,0-5.8-5.6-7.2l4.2-2.6l3.6,4.4 c0,0,8.4-7.8,11.2-8c0,0,2.6,0.6,3.6,2.8C28.5,34,18.6,36.8,11.6,44.6z"></path></svg> </div> 4324 </div> 4325 </div> 4326 </div> 4327 <div class="elementor-element elementor-element-481ab37 elementor-invisible elementor-widget elementor-widget-heading" data-id="481ab37" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4328 <div class="elementor-widget-container"> 4329 <h2 class="elementor-heading-title elementor-size-default">Documentation</h2> </div> 4330 </div> 4331 <div class="elementor-element elementor-element-4550cbb elementor-invisible elementor-widget elementor-widget-text-editor" data-id="4550cbb" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="text-editor.default"> 4332 <div class="elementor-widget-container"> 4333 <p>View permits, certifications, insurance information and more.</p> </div> 4334 </div> 4335 <div class="elementor-element elementor-element-8a1ef70 grad-btn elementor-invisible elementor-widget elementor-widget-html" data-id="8a1ef70" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="html.default"> 4336 <div class="elementor-widget-container"> 4337 <div class="container container-one"> 4338 <a href="/transportation-solutions/documentation/" ><button> 4339 View documents 4340 <div class="fill-one"></div> 4341 </button></a> 4342 </div> </div> 4343 </div> 4344 </div> 4345 </div> 4346 <div class="elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-b7adb78" data-id="b7adb78" data-element_type="column" data-e-type="column" data-settings="{"background_background":"classic"}"> 4347 <div class="elementor-widget-wrap elementor-element-populated"> 4348 <div class="elementor-element elementor-element-1c31304 elementor-view-default elementor-widget elementor-widget-icon" data-id="1c31304" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default"> 4349 <div class="elementor-widget-container"> 4350 <div class="elementor-icon-wrapper"> 4351 <div class="elementor-icon"> 4352 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 102.8 60" xml:space="preserve"><g id="Layer_2"></g><g id="Layer_1"> <g> <path fill="#ECECEC" d="M99,52.6H55.4l-1.3-10.6c-0.9-7-6.8-12.3-13.8-12.3h-9.7c-7,0-13,5.3-13.8,12.3l-1.3,10.6H3.7 c-2.1,0-3.7,1.6-3.7,3.7C0,58.4,1.6,60,3.7,60h95.5c2.1,0,3.7-1.6,3.7-3.7C102.7,54.3,101.1,52.6,99,52.6z"></path> <circle fill="#ECECEC" cx="35.4" cy="13.1" r="13.1"></circle> <path fill="#ECECEC" d="M62.9,34.2h2.4c0.6,0,1.1-0.5,1.1-1.1V22.3c0-0.6-0.5-1.1-1.1-1.1h-1.1v-0.6c0-5.8,4.8-10.5,10.5-10.5 c5.8,0,10.5,4.8,10.5,10.5v0.6h-1.1c-0.6,0-1.1,0.5-1.1,1.1v10.8c0,0.6,0.5,1.1,1.1,1.1h0.5c-1.1,2.6-3.6,4.4-6.5,4.6 c-0.1-0.8-0.9-1.3-1.6-1.3H
435273c-0.9,0-1.6,0.8-1.6,1.6V41c0,0.9,0.8,1.6,1.6,1.6h3.7c0.9,0,1.5-0.5,1.6-1.4c4.3-0.2,8-3.2,9.2-7.2 c3.1-0.4,5.6-3.1,5.6-6.5c0-2.8-1.7-5.2-4.2-6.1v-1.1c0-7.8-6.3-14.1-14.1-14.1s-14.1,6.3-14.1,14.1v1.1c-2.5,1-4.2,3.4-4.2,6.1 C56.4,31.2,59.4,34.2,62.9,34.2z"></path> </g></g></svg> </div> 4353 </div> 4354 </div> 4355 </div> 4356 <div class="elementor-element elementor-element-4032fc4 elementor-invisible elementor-widget elementor-widget-heading" data-id="4032fc4" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="heading.default"> 4357 <div class="elementor-widget-container"> 4358 <h2 class="elementor-heading-title elementor-size-default">New customer</h2> </div> 4359 </div> 4360 <div class="elementor-element elementor-element-6c3bdff elementor-invisible elementor-widget elementor-widget-text-editor" data-id="6c3bdff" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="text-editor.default"> 4361 <div class="elementor-widget-container"> 4362 <p>Connect with our Sales team to learn more about our options.</p> </div> 4363 </div> 4364 <div class="elementor-element elementor-element-dcb5b7e grad-btn elementor-widget__width-auto elementor-invisible elementor-widget elementor-widget-html" data-id="dcb5b7e" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="html.default"> 4365 <div class="elementor-widget-container"> 4366 <div class="container container-one"> 4367 <a href="https://www.primeinc.com/transportation-solutions/refrigerated-division/"><button> 4368 Connect with sales 4369 <div class="fill-one"></div> 4370 </button></a> 4371 </div> </div> 4372 </div> 4373 </div> 4374 </div> 4375 </div> 4376 </section> 4377 <section class="elementor-section elementor-top-section elementor-element elementor-element-14e89e6 elementor-section-full_width elementor-section-height-min-height elementor-section-items-top elementor-section-height-default" data-id="14e89e6" data-element_type="section" data-e-type="section" id="transportation-divisions" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"8185f7e","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_background":"gradient"}"> 4378 <div class="elementor-container elementor-column-gap-default"> 4379 <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-64ddf45" data-id="64ddf45" data-element_type="column" data-e-type="column" data-settings="{"background_background":"classic"}"> 4380 <div class="elementor-widget-wrap elementor-element-populated"> 4381 <section class="elementor-section elementor-inner-section elementor-element elementor-element-f695053 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f695053" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"65f436e","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4382 <div class="elementor-container elementor-column-gap-default"> 4383 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-cc1ed6f" data-id="cc1ed6f" data-element_type="column" data-e-type="column"> 4384 <div class="elementor-widget-wrap elementor-element-populated"> 4385 <div class="elementor-element elementor-element-c7f0573 elementor-view-default elementor-widget elementor-widget-icon" data-id="c7f0573" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default"> 4386 <div class="elementor-widget-container"> 4387 <div class="elementor-icon-wrapper"> 4388 <div class="elementor-icon"> 4389 <i aria-hidden="true" class="eci fontello-27a1860b-icons_transportationdivisions"></i> </div> 4390 </div> 4391 </div>
4392 </div> 4393 <div class="elementor-element elementor-element-f973191 elementor-invisible elementor-widget elementor-widget-heading" data-id="f973191" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4394 <div class="elementor-widget-container"> 4395 <h4 class="elementor-heading-title elementor-size-default">FREIGHT TRANSPORTATION SOLUTIONS</h4> </div> 4396 </div> 4397 <div class="elementor-element elementor-element-a49c57c elementor-invisible elementor-widget elementor-widget-heading" data-id="a49c57c" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="heading.default"> 4398 <div class="elementor-widget-container"> 4399 <h2 class="elementor-heading-title elementor-size-default">TRANSPORTATION DIVISIONS</h2> </div> 4400 </div> 4401 <div class="elementor-element elementor-element-5cf249f elementor-invisible elementor-widget elementor-widget-text-editor" data-id="5cf249f" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="text-editor.default"> 4402 <div class="elementor-widget-container"> 4403 <p><span style="font-weight: 400;">Prime has built an international reputation as North America’s ultimate </span><span style="font-weight: 400;">freight</span><span style="font-weight: 400;"> delivery system. From pick-up to delivery, Prime moves your business with incredible accuracy and on-time </span><span style="font-weight: 400;">shipping</span><span style="font-weight: 400;"> service</span><span style="font-weight: 400;">s</span><span style="font-weight: 400;"> that </span><span style="font-weight: 400;">are</span><span style="font-weight: 400;"> unmatched in our industry. Our commitment to total customer satisfaction doesn’t stop there. From 24-hour customer service to motivated professional drivers to the most technologically advanced fleet in the market today, Prime guarantees the best possible service every time. We are your total </span><span style="font-weight: 400;">freight</span><span style="font-weight: 400;"> transportation solution. </span></p> </div> 4404 </div> 4405 </div> 4406 </div> 4407 </div> 4408 </section> 4409 <section class="elementor-section elementor-inner-section elementor-element elementor-element-7e00de3 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7e00de3" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"562b5ce","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4410 <div class="elementor-container elementor-column-gap-default"> 4411 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-d7be31f" data-id="d7be31f" data-element_type="column" data-e-type="column"> 4412 <div class="elementor-widget-wrap elementor-element-populated"> 4413 <div class="elementor-element elementor-element-581dd88 elementor-invisible elementor-widget elementor-widget-heading" data-id="581dd88" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4414 <div class="elementor-widget-container"> 4415 <h4 class="elementor-heading-title elementor-size-default">REFRIGERATED DIVISION</h4> </div>
4416 </div> 4417 </div> 4418 </div> 4419 </div> 4420 </section> 4421 <section class="elementor-section elementor-inner-section elementor-element elementor-element-dd96e14 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="dd96e14" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateX_effect":"yes","motion_fx_translateX_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_devices":["desktop","tablet","mobile"]}"> 4422 <div class="elementor-container elementor-column-gap-default"> 4423 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-6c71580" data-id="6c71580" data-element_type="column" data-e-type="column"> 4424 <div class="elementor-widget-wrap elementor-element-populated"> 4425 <div class="elementor-element elementor-element-c20e217 elementor-widget elementor-widget-image" data-id="c20e217" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4426 <div class="elementor-widget-container"> 4427 <img fetchpriority="high" decoding="async" width="1072" height="254" src="https://www.primeinc.com/wp-content/uploads/2019/06/Refrigerated.svg" class="attachment-full size-full wp-image-4779" alt="" /> </div> 4428 </div> 4429 </div> 4430 </div> 4431 </div> 4432 </section> 4433 <section class="elementor-section elementor-inner-section elementor-element elementor-element-7933914 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7933914" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"animation":"none"}"> 4434 <div class="elementor-container elementor-column-gap-default"> 4435 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-8591de1" data-id="8591de1" data-element_type="column" data-e-type="column"> 4436 <div class="elementor-widget-wrap elementor-element-populated"> 4437 <div class="elementor-element elementor-element-8014cf5 elementor-invisible elementor-widget elementor-widget-text-editor" data-id="8014cf5" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="text-editor.default"> 4438 <div class="elementor-widget-container"> 4439 <p><span style="font-weight: 400;">Prime’s refrigerated </span><span style="font-weight: 400;">transport</span><span style="font-weight: 400;"> fleet is the largest in North America, made up of over 6,100 trucks and over 11,600 remotely-monitored, temperature-controlled trailers.</span></p> </div>
4440 </div> 4441 </div> 4442 </div> 4443 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-57a387b" data-id="57a387b" data-element_type="column" data-e-type="column"> 4444 <div class="elementor-widget-wrap elementor-element-populated"> 4445 <div class="elementor-element elementor-element-d9fb462 elementor-align-right elementor-mobile-align-center elementor-invisible elementor-widget elementor-widget-button" data-id="d9fb462" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="button.default"> 4446 <div class="elementor-widget-container"> 4447 <div class="elementor-button-wrapper"> 4448 <a class="elementor-button elementor-button-link elementor-size-md" href="/transportation-solutions/refrigerated-division/"> 4449 <span class="elementor-button-content-wrapper"> 4450 <span class="elementor-button-text">EXPLORE REFRIGERATED</span> 4451 </span> 4452 </a> 4453 </div> 4454 </div> 4455 </div> 4456 </div> 4457 </div> 4458 </div> 4459 </section> 4460 <section class="elementor-section elementor-inner-section elementor-element elementor-element-5267b9e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5267b9e" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"562b5ce","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4461 <div class="elementor-container elementor-column-gap-default"> 4462 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-6c48b57" data-id="6c48b57" data-element_type="column" data-e-type="column"> 4463 <div class="elementor-widget-wrap elementor-element-populated"> 4464 <div class="elementor-element elementor-element-a294df3 elementor-invisible elementor-widget elementor-widget-heading" data-id="a294df3" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4465 <div class="elementor-widget-container"> 4466 <h4 class="elementor-heading-title elementor-size-default">FLATBED DIVISION</h4> </div> 4467 </div> 4468 </div> 4469 </div> 4470 </div> 4471 </section> 4472 <section class="elementor-section elementor-inner-section elementor-element elementor-element-2180f91 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2180f91" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateX_effect":"yes","motion_fx_translateX_speed":{"unit":"px","size":6,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_devices":["desktop","tablet","mobile"]}"> 4473 <div class="elementor-container elementor-column-gap-default"> 4474 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-16f5511" data-id="16f5511" data-element_type="column" data-e-type="column"> 4475 <div class="elementor-widget-wrap elementor-element-populated"> 4476 <div class="elementor-element elementor-element-605404a elementor-widget elementor-widget-image" data-id="605404a" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4477 <div class="elementor-widget-container"> 4478 <img decoding="async" width="1050" height="253" src="https://www.primeinc.com/w
4478p-content/uploads/2019/05/Trans_Divisions_Flatbed.svg" class="attachment-full size-full wp-image-4362" alt="A diagram showing the length & height of Prime, Inc.'s flatbed semi-trailers." /> </div> 4479 </div> 4480 </div> 4481 </div> 4482 </div> 4483 </section> 4484 <section class="elementor-section elementor-inner-section elementor-element elementor-element-aa8e4b2 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="aa8e4b2" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"animation":"none"}"> 4485 <div class="elementor-container elementor-column-gap-default"> 4486 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-066c449" data-id="066c449" data-element_type="column" data-e-type="column"> 4487 <div class="elementor-widget-wrap elementor-element-populated"> 4488 <div class="elementor-element elementor-element-4e84a5c elementor-invisible elementor-widget elementor-widget-text-editor" data-id="4e84a5c" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="text-editor.default"> 4489 <div class="elementor-widget-container"> 4490 <p><span style="font-weight: 400;">Prime’s flatbed </span><span style="font-weight: 400;">transport</span><span style="font-weight: 400;"> fleet is comprised of over 850 trucks and 900 flatbed and 400 step deck trailers.  </span></p> </div> 4491 </div> 4492 </div> 4493 </div> 4494 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-d470733" data-id="d470733" data-element_type="column" data-e-type="column"> 4495 <div class="elementor-widget-wrap elementor-element-populated"> 4496 <div class="elementor-element elementor-element-21f8b37 elementor-align-right animated-slow elementor-mobile-align-center elementor-invisible elementor-widget elementor-widget-button" data-id="21f8b37" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="button.default"> 4497 <div class="elementor-widget-container"> 4498 <div class="elementor-button-wrapper"> 4499 <a class="elementor-button elementor-button-link elementor-size-md" href="/transportation-solutions/flatbed-division/"> 4500 <span class="elementor-button-content-wrapper"> 4501 <span class="elementor-button-text">EXPLORE FLATBED</span> 4502 </span> 4503 </a> 4504 </div> 4505 </div> 4506 </div> 4507 </div> 4508 </div> 4509 </div> 4510 </section> 4511 <section class="elementor-section elementor-inner-section elementor-element elementor-element-e5f92c9 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="e5f92c9" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"562b5ce","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4512 <div class="elementor-container elementor-column-gap-default"> 4513 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-0275fdc" data-id="0275fdc" data-element_type="column" data-e-type="column"> 4514 <div class="elementor-widget-wrap elementor-element-populated"> 4515 <div class="elementor-element elementor-element-708fe52 elementor-invisible elementor-widget elementor-widget-heading" data-id="708fe52" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4516 <div class="elementor-widget-container"> 4517 <h4 class="elementor-heading-title elementor-size-default">TANKER DIVISION</h4> </div>
4518 </div> 4519 </div> 4520 </div> 4521 </div> 4522 </section> 4523 <section class="elementor-section elementor-inner-section elementor-element elementor-element-bbd169e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="bbd169e" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateX_effect":"yes","motion_fx_translateX_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_devices":["desktop","tablet","mobile"]}"> 4524 <div class="elementor-container elementor-column-gap-default"> 4525 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-98ecc0f" data-id="98ecc0f" data-element_type="column" data-e-type="column"> 4526 <div class="elementor-widget-wrap elementor-element-populated"> 4527 <div class="elementor-element elementor-element-6728228 elementor-widget elementor-widget-image" data-id="6728228" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4528 <div class="elementor-widget-container"> 4529 <img loading="lazy" decoding="async" width="1055" height="253" src="https://www.primeinc.com/wp-content/uploads/2019/05/Trans_Divisions_Tanker.svg" class="attachment-full size-full wp-image-4365" alt="A diagram showing the capacity, in gallons, of Prime, Inc.'s tanker semi-trailers." /> </div> 4530 </div> 4531 </div> 4532 </div> 4533 </div> 4534 </section> 4535 <section class="elementor-section elementor-inner-section elementor-element elementor-element-398252b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="398252b" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"animation":"none"}"> 4536 <div class="elementor-container elementor-column-gap-default"> 4537 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-3473244" data-id="3473244" data-element_type="column" data-e-type="column"> 4538 <div class="elementor-widget-wrap elementor-element-populated"> 4539 <div class="elementor-element elementor-element-ed168bc elementor-invisible elementor-widget elementor-widget-text-editor" data-id="ed168bc" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="text-editor.default"> 4540 <div class="elementor-widget-container"> 4541 <p><span style="font-weight: 400;">Prime’s tanker fleet includes 300 food grade and 50 inedible </span><span style="font-weight: 400;">bulk liquid transport</span><span style="font-weight: 400;"> trucks and 525 food grade and 100 inedible trailers. We are proud to have kosher options available.</span></p> </div>
4542 </div> 4543 </div> 4544 </div> 4545 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-b5185ad" data-id="b5185ad" data-element_type="column" data-e-type="column"> 4546 <div class="elementor-widget-wrap elementor-element-populated"> 4547 <div class="elementor-element elementor-element-03a298b elementor-align-right elementor-mobile-align-center elementor-invisible elementor-widget elementor-widget-button" data-id="03a298b" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="button.default"> 4548 <div class="elementor-widget-container"> 4549 <div class="elementor-button-wrapper"> 4550 <a class="elementor-button elementor-button-link elementor-size-md" href="/transportation-solutions/tanker-division/"> 4551 <span class="elementor-button-content-wrapper"> 4552 <span class="elementor-button-text">EXPLORE TANKER</span> 4553 </span> 4554 </a> 4555 </div> 4556 </div> 4557 </div> 4558 </div> 4559 </div> 4560 </div> 4561 </section> 4562 <section class="elementor-section elementor-inner-section elementor-element elementor-element-67dad3a elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="67dad3a" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"562b5ce","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4563 <div class="elementor-container elementor-column-gap-default"> 4564 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-e213458" data-id="e213458" data-element_type="column" data-e-type="column"> 4565 <div class="elementor-widget-wrap elementor-element-populated"> 4566 <div class="elementor-element elementor-element-799c43f elementor-invisible elementor-widget elementor-widget-heading" data-id="799c43f" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4567 <div class="elementor-widget-container"> 4568 <h4 class="elementor-heading-title elementor-size-default">INTERMODAL DIVISION</h4> </div> 4569 </div> 4570 </div> 4571 </div> 4572 </div> 4573 </section> 4574 <section class="elementor-section elementor-inner-section elementor-element elementor-element-8b3e268 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="8b3e268" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateX_effect":"yes","motion_fx_translateX_speed":{"unit":"px","size":6,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_devices":["desktop","tablet","mobile"]}"> 4575 <div class="elementor-container elementor-column-gap-default"> 4576 <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-98dd38c" data-id="98dd38c" data-element_type="column" data-e-type="column"> 4577 <div class="elementor-widget-wrap elementor-element-populated"> 4578 <div class="elementor-element elementor-element-c34853a elementor-widget elementor-widget-image" data-id="c34853a" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4579 <div class="elementor-widget-container"> 4580 <img loading="lazy" decoding="async" width="1073" height="255" src="https://www.primeinc.com/w
4580p-content/uploads/2021/12/Intermodal2.svg" class="attachment-full size-full wp-image-15016" alt="" /> </div> 4581 </div> 4582 </div> 4583 </div> 4584 </div> 4585 </section> 4586 <section class="elementor-section elementor-inner-section elementor-element elementor-element-b3e04e7 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="b3e04e7" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"04a5e38","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"animation":"none"}"> 4587 <div class="elementor-container elementor-column-gap-default"> 4588 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-c445806" data-id="c445806" data-element_type="column" data-e-type="column"> 4589 <div class="elementor-widget-wrap elementor-element-populated"> 4590 <div class="elementor-element elementor-element-80ff450 elementor-invisible elementor-widget elementor-widget-text-editor" data-id="80ff450" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="text-editor.default"> 4591 <div class="elementor-widget-container"> 4592 <p><span style="font-weight: 400;">Prime’s Intermodal </span><span style="font-weight: 400;">transportation and logistics division</span><span style="font-weight: 400;"> is your direct link to virtually every market across the continent. We are America’s only flatbed and refrigerated intermodal </span><span style="font-weight: 400;">freight</span><span style="font-weight: 400;"> carrier and manage every aspect of your shipment, from departure to delivery.</span></p> </div> 4593 </div> 4594 </div> 4595 </div> 4596 <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-2e71c3f" data-id="2e71c3f" data-element_type="column" data-e-type="column"> 4597 <div class="elementor-widget-wrap elementor-element-populated"> 4598 <div class="elementor-element elementor-element-269c391 elementor-align-right elementor-mobile-align-center elementor-invisible elementor-widget elementor-widget-button" data-id="269c391" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="button.default"> 4599 <div class="elementor-widget-container"> 4600 <div class="elementor-button-wrapper"> 4601 <a class="elementor-button elementor-button-link elementor-size-md" href="/transportation-solutions/intermodal/"> 4602 <span class="elementor-button-content-wrapper"> 4603 <span class="elementor-button-text">EXPLORE INTERMODAL</span> 4604 </span> 4605 </a> 4606 </div> 4607 </div>
4608 </div> 4609 </div> 4610 </div> 4611 </div> 4612 </section> 4613 </div> 4614 </div> 4615 </div> 4616 </section> 4617 <section class="elementor-section elementor-top-section elementor-element elementor-element-177453f elementor-section-height-min-height elementor-section-boxed elementor-section-height-default elementor-section-items-middle" data-id="177453f" data-element_type="section" data-e-type="section" id="industry-awards" data-settings="{"background_background":"classic","jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"bf6836f","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"motion_fx_motion_fx_scrolling":"yes","motion_fx_devices":["desktop","tablet","mobile"]}"> 4618 <div class="elementor-background-overlay"></div> 4619 <div class="elementor-container elementor-column-gap-default"> 4620 <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3c2b703" data-id="3c2b703" data-element_type="column" data-e-type="column"> 4621 <div class="elementor-widget-wrap elementor-element-populated"> 4622 <div class="elementor-element elementor-element-3184add elementor-view-default elementor-widget elementor-widget-icon" data-id="3184add" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default"> 4623 <div class="elementor-widget-container"> 4624 <div class="elementor-icon-wrapper"> 4625 <div class="elementor-icon"> 4626 <i aria-hidden="true" class="eci fontello-27a1860b-icons_industryawards"></i> </div> 4627 </div> 4628 </div> 4629 </div> 4630 <div class="elementor-element elementor-element-2cc91e8 elementor-invisible elementor-widget elementor-widget-heading" data-id="2cc91e8" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4631 <div class="elementor-widget-container"> 4632 <h4 class="elementor-heading-title elementor-size-default">A Few honors we'd like to mention</h4> </div> 4633 </div> 4634 <div class="elementor-element elementor-element-2ec812a elementor-invisible elementor-widget elementor-widget-heading" data-id="2ec812a" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="heading.default"> 4635 <div class="elementor-widget-container"> 4636 <h2 class="elementor-heading-title elementor-size-default">Industry Awards</h2> </div> 4637 </div> 4638 <div class="elementor-element elementor-element-181d2e3 elementor-invisible elementor-widget elementor-widget-text-editor" data-id="181d2e3" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="text-editor.default"> 4639 <div class="elementor-widget-container"> 4640 <p>Prime’s decades of experience in the shipping industry, our fervor for innovation and our dedication to unmatched customer service have placed us on top.</p> </div>
4641 </div> 4642 <div class="elementor-element elementor-element-6d1bc4b grad-btn elementor-widget__width-auto elementor-invisible elementor-widget elementor-widget-html" data-id="6d1bc4b" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":400}" data-widget_type="html.default"> 4643 <div class="elementor-widget-container"> 4644 <div class="container container-one"> 4645 <a href="/transportation-solutions/industry-awards/"><button> 4646 Learn More 4647 <div class="fill-one"></div> 4648 </button></a> 4649 </div> </div> 4650 </div> 4651 </div> 4652 </div> 4653 </div> 4654 </section> 4655 <section class="elementor-section elementor-top-section elementor-element elementor-element-6eb1ec1 elementor-section-height-min-height elementor-section-full_width elementor-section-content-middle elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-phone elementor-section-height-default elementor-section-items-middle" data-id="6eb1ec1" data-element_type="section" data-e-type="section" id="capacity-solutions" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"f07dda6","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_background":"classic"}"> 4656 <div class="elementor-container elementor-column-gap-default"> 4657 <div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5ac5c8a" data-id="5ac5c8a" data-element_type="column" data-e-type="column"> 4658 <div class="elementor-widget-wrap elementor-element-populated"> 4659 <div class="elementor-element elementor-element-339e408 elementor-invisible elementor-widget elementor-widget-heading" data-id="339e408" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":100}" data-widget_type="heading.default"> 4660 <div class="elementor-widget-container"> 4661 <h4 class="elementor-heading-title elementor-size-default">room to grow</h4> </div> 4662 </div> 4663 <div class="elementor-element elementor-element-1206854 elementor-invisible elementor-widget elementor-widget-heading" data-id="1206854" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":200}" data-widget_type="heading.default"> 4664 <div class="elementor-widget-container"> 4665 <h2 class="elementor-heading-title elementor-size-default">Capacity Solutions</h2> </div> 4666 </div> 4667 <div class="elementor-element elementor-element-0d4b7fe elementor-invisible elementor-widget elementor-widget-text-editor" data-id="0d4b7fe" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":300}" data-widget_type="text-editor.default"> 4668 <div class="elementor-widget-container"> 4669 <p>Our dedication to excellence and top-notch customer service creates a high-demand for our transportation services. Rather than resting on our laurels, we are working harder than ever to create capacity for you. </p> </div>
4670 </div> 4671 <div class="elementor-element elementor-element-ba660b4 grad-btn elementor-widget__width-auto elementor-widget-mobile__width-auto elementor-invisible elementor-widget elementor-widget-html" data-id="ba660b4" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeIn","_animation_delay":400}" data-widget_type="html.default"> 4672 <div class="elementor-widget-container"> 4673 <div class="container container-one"> 4674 <a href="/transportation-solutions/capacity-solutions/"><button> 4675 Learn More 4676 <div class="fill-one"></div> 4677 </button></a> 4678 </div> </div> 4679 </div> 4680 </div> 4681 </div> 4682 <div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3dc3491" data-id="3dc3491" data-element_type="column" data-e-type="column" data-settings="{"background_background":"classic"}"> 4683 <div class="elementor-widget-wrap elementor-element-populated"> 4684 <div class="elementor-element elementor-element-b886907 elementor-widget elementor-widget-spacer" data-id="b886907" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default"> 4685 <div class="elementor-widget-container"> 4686 <div class="elementor-spacer"> 4687 <div class="elementor-spacer-inner"></div> 4688 </div> 4689 </div> 4690 </div> 4691 </div> 4692 </div> 4693 </div> 4694 </section> 4695 </div> 4696
4696<script nitro-exclude> 4697 document.cookie = 'nitroCachedPage=' + (!window.NITROPACK_STATE ? '0' : '1') + '; path=/; SameSite=Lax'; 4698 </script>
4698 4699 </div> 4700</div> 4701 4702 4703<div class="site-footer"> 4704 <footer data-elementor-type="footer" data-elementor-id="2386" class="elementor elementor-2386 elementor-location-footer" data-elementor-post-type="elementor_library"> 4705 <section class="elementor-section elementor-top-section elementor-element elementor-element-164054a elementor-section-height-min-height dc-has-condition dc-condition-empty elementor-section-boxed elementor-section-height-default elementor-section-items-middle" data-id="164054a" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"34b4ac3","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_background":"gradient"}"> 4706 <div class="elementor-container elementor-column-gap-default"> 4707 <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7d6db63" data-id="7d6db63" data-element_type="column" data-e-type="column"> 4708 <div class="elementor-widget-wrap elementor-element-populated"> 4709 <div class="elementor-element elementor-element-2bdd24b dc-has-condition dc-condition-empty elementor-widget elementor-widget-heading" data-id="2bdd24b" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4710 <div class="elementor-widget-container"> 4711 <h4 class="elementor-heading-title elementor-size-default">More questions? Reach out</h4> </div> 4712 </div> 4713 <div class="elementor-element elementor-element-f1c7f1a dc-has-condition dc-condition-empty elementor-widget elementor-widget-heading" data-id="f1c7f1a" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4714 <div class="elementor-widget-container"> 4715 <h2 class="elementor-heading-title elementor-size-default">Contact us</h2> </div> 4716 </div> 4717 <!-- hidden widget 2252-fef16fd --> </div> 4718 </div> 4719 </div> 4720 </section> 4721 <section class="elementor-section elementor-top-section elementor-element elementor-element-f70ef15 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f70ef15" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"e57f1fc","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}],"background_background":"classic"}"> 4722 <div class="elementor-container elementor-column-gap-default"> 4723 <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1ba5703" data-id="1ba5703" data-element_type="column" data-e-type="column"> 4724 <div class="elementor-widget-wrap elementor-element-populated"> 4725 <section class="elementor-section elementor-inner-section elementor-element elementor-element-16342c6 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="16342c6" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"06f0ec1","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4726 <div class="elementor-container elementor-column-gap-default"> 4727 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-5c9bc9d" data-id="5c9bc9d" data-element_type="column" data-e-type="column"> 4728 <div class="elementor-widget-wrap elementor-element-populated"> 4729 <div class="elementor-element elementor-element-fc3aae5 elementor-widget elementor-widget-heading" data-id="fc3aae5" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4730 <div class="elementor-widget-container"> 4731 <span class="elementor-heading-title elementor-size-default">Need more information?</span> </div>
4732 </div> 4733 <div class="elementor-element elementor-element-6a09839 elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="6a09839" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4734 <div class="elementor-widget-container"> 4735 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/why-prime/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_WhyPrime.svg" title="Icons_WhyPrime" alt="Why Prime Icon. Two figures standing side by side." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/why-prime/">Why Prime</a></h6></div></div> </div> 4736 </div> 4737 <div class="elementor-element elementor-element-f44fd37 elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="f44fd37" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4738 <div class="elementor-widget-container"> 4739 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/why-prime/prime-news/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_News.svg" title="Icons_News" alt="News icon" loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/why-prime/prime-news/">Prime News</a></h6></div></div> </div> 4740 </div> 4741 </div> 4742 </div> 4743 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-220b4ef" data-id="220b4ef" data-element_type="column" data-e-type="column"> 4744 <div class="elementor-widget-wrap elementor-element-populated"> 4745 <div class="elementor-element elementor-element-e7eacf7 elementor-widget elementor-widget-heading" data-id="e7eacf7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4746 <div class="elementor-widget-container"> 4747 <span class="elementor-heading-title elementor-size-default">Shipping or hauling freight?</span> </div> 4748 </div> 4749 <div class="elementor-element elementor-element-ba8c60c elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="ba8c60c" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4750 <div class="elementor-widget-container"> 4751 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/transportation-solutions/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_TransportationSolutions.svg" title="Icons_TransportationSolutions" alt="Transportation Solutions Icon. A small globe." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/transportation-solutions/">TRANSPORTATION SOLUTIONS</a></h6></div></div> </div> 4752 </div> 4753 <div class="elementor-element elementor-element-e43ab7a elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="e43ab7a" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4754 <div class="elementor-widget-container"> 4755 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/carrier-solutions/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_CarrierSolutions.svg" title="Icons_CarrierSolutions" alt="Carrier Solutions. Two people shaking hands." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/carrier-solutions/">CARRIER SOLUTIONS</a></h6></div></div> </div> 4756 </div> 4757 </div> 4758 </div> 4759 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-10c5659" data-id="10c5659" data-element_type="column" data-e-type="column"> 4760 <div class="elementor-widget-wrap elementor-element-populated"> 4761 <div class="elementor-element elementor-element-6380bf7 elementor-widget elementor-widget-heading" data-id="6380bf7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4762 <div class="elementor-widget-container"> 4763 <span class="elementor-heading-title elementor-size-default">Looking for a career?</span> </div>
4764 </div> 4765 <div class="elementor-element elementor-element-ae4e091 elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="ae4e091" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4766 <div class="elementor-widget-container"> 4767 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/drive-for-prime/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_DriveForPrime.svg" title="Icons_DriveForPrime" alt="Drive for Prime icon. A person siting in the drivers seat of a semi truck." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/drive-for-prime/">DRIVE FOR PRIME</a></h6></div></div> </div> 4768 </div> 4769 <div class="elementor-element elementor-element-770d703 elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="770d703" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4770 <div class="elementor-widget-container"> 4771 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/work-in-house/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_WorkInHouse.svg" title="Icons_WorkInHouse" alt="Work In House icon. A person sitting at a desk and looking at a computer." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/work-in-house/">WORK IN HOUSE</a></h6></div></div> </div> 4772 </div> 4773 </div> 4774 </div> 4775 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-514eed5" data-id="514eed5" data-element_type="column" data-e-type="column"> 4776 <div class="elementor-widget-wrap elementor-element-populated"> 4777 <div class="elementor-element elementor-element-27a6c6d elementor-widget elementor-widget-heading" data-id="27a6c6d" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4778 <div class="elementor-widget-container"> 4779 <span class="elementor-heading-title elementor-size-default">Buying or leasing equipment?</span> </div> 4780 </div> 4781 <div class="elementor-element elementor-element-2c82f6f elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="2c82f6f" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4782 <div class="elementor-widget-container"> 4783 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/pedigree/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_Pedigree.svg" title="Icons_Pedigree" alt="Pedigree icon. A shopping cart." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/pedigree/">PEDIGREE</a></h6></div></div> </div> 4784 </div> 4785 <div class="elementor-element elementor-element-fc57e74 elementor-position-left elementor-vertical-align-top elementor-widget elementor-widget-image-box" data-id="fc57e74" data-element_type="widget" data-e-type="widget" data-widget_type="image-box.default"> 4786 <div class="elementor-widget-container"> 4787 <div class="elementor-image-box-wrapper"><figure class="elementor-image-box-img"><a href="https://www.primeinc.com/success-leasing/" tabindex="-1"><img src="https://www.primeinc.com/wp-content/uploads/2019/04/Icons_SuccessLeasing.svg" title="Icons_SuccessLeasing" alt="Success Leasing icon. A hand holding a key." loading="lazy" /></a></figure><div class="elementor-image-box-content"><h6 class="elementor-image-box-title"><a href="https://www.primeinc.com/success-leasing/">SUCCESS LEASING</a></h6></div></div> </div> 4788 </div> 4789 </div> 4790 </div> 4791 </div> 4792 </section> 4793 <div class="elementor-element elementor-element-00aa0e1 elementor-widget-divider--view-line elementor-widget elementor-widget-divider" data-id="00aa0e1" data-element_type="widget" data-e-type="widget" data-widget_type="divider.default"> 4794 <div class="elementor-widget-container"> 4795 <div class="elementor-divider"> 4796 <span class="elementor-divider-separator"> 4797 </span> 4798 </div> 4799 </div>
4800 </div> 4801 <section class="elementor-section elementor-inner-section elementor-element elementor-element-68ad2de elementor-section-content-top elementor-reverse-mobile elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="68ad2de" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"65e7a81","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 4802 <div class="elementor-container elementor-column-gap-default"> 4803 <div class="elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-14227e3" data-id="14227e3" data-element_type="column" data-e-type="column"> 4804 <div class="elementor-widget-wrap elementor-element-populated"> 4805 <div class="elementor-element elementor-element-94aaa25 elementor-widget elementor-widget-text-editor" data-id="94aaa25" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 4806 <div class="elementor-widget-container"> 4807 © 2026 Prime Inc. All Rights Reserved. </div> 4808 </div> 4809 <div class="elementor-element elementor-element-2763f66 elementor-widget elementor-widget-text-editor" data-id="2763f66" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 4810 <div class="elementor-widget-container"> 4811 <p>Created by: <span style="color: #3b266e;"><a style="color: #3b266e;" href="https://www.campaignium.com/" target="_blank" rel="noopener">Campaignium</a></span></p> </div> 4812 </div> 4813 </div> 4814 </div> 4815 <div class="elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-dbb7c55" data-id="dbb7c55" data-element_type="column" data-e-type="column"> 4816 <div class="elementor-widget-wrap elementor-element-populated"> 4817 <div class="elementor-element elementor-element-14a462c elementor-shape-circle elementor-grid-0 e-grid-align-center elementor-widget elementor-widget-social-icons" data-id="14a462c" data-element_type="widget" data-e-type="widget" data-widget_type="social-icons.default"> 4818 <div class="elementor-widget-container"> 4819 <div class="elementor-social-icons-wrapper elementor-grid" role="list"> 4820 <span class="elementor-grid-item" role="listitem"> 4821 <a class="elementor-icon elementor-social-icon elementor-social-icon-instagram elementor-repeater-item-c08f136" href="https://www.instagram.com/primetrucking/" target="_blank"> 4822 <span class="elementor-screen-only">Instagram</span> 4823 <i aria-hidden="true" class="fab fa-instagram"></i> </a> 4824 </span> 4825 <span class="elementor-grid-item" role="listitem"> 4826 <a class="elementor-icon elementor-social-icon elementor-social-icon-youtube elementor-repeater-item-0c276ee" href="https://www.youtube.com/user/PRIMEINCTRUCKING" target="_blank"> 4827 <span class="elementor-screen-only">Youtube</span> 4828 <i aria-hidden="true" class="fab fa-youtube"></i> </a> 4829 </span> 4830 <span class="elementor-grid-item" role="listitem"> 4831 <a class="elementor-icon elementor-social-icon elementor-social-icon-facebook-f elementor-repeater-item-f0dde54" href="https://www.facebook.com/primeinctrucking" target="_blank"> 4832 <span class="elementor-screen-only">Facebook-f</span> 4833 <i aria-hidden="true" class="fab fa-facebook-f"></i> </a> 4834 </span> 4835 </div> 4836 </div>
4837 </div> 4838 </div> 4839 </div> 4840 <div class="elementor-column elementor-col-33 elementor-inner-column elementor-element elementor-element-30bf841" data-id="30bf841" data-element_type="column" data-e-type="column"> 4841 <div class="elementor-widget-wrap elementor-element-populated"> 4842 <div class="elementor-element elementor-element-4f89ff5 elementor-widget elementor-widget-text-editor" data-id="4f89ff5" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 4843 <div class="elementor-widget-container"> 4844 <span style="color: #ffffff;"><a style="color: #ffffff;" href="https://goo.gl/maps/aNEfDsYwwVuvqkCN8" target="_blank" rel="noopener">2740 North Mayfair, Springfield, MO 65803</a></span> 4845<p> </p> </div> 4846 </div> 4847 </div> 4848 </div> 4849 </div> 4850 </section> 4851 </div> 4852 </div> 4853 </div> 4854 </section> 4855 </footer> 4856 </div> 4857
4858<script type='text/javascript'> 4859/* <![CDATA[ */ 4860var hasJetBlogPlaylist = 0; 4861/* ]]> */ 4862</script>
vendor: 1 bytes, line 4862
4862
4863<script type="speculationrules"> 4864{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/generatepress_child/*","/wp-content/themes/generatepress/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 4865</script>
vendor: 1 bytes, line 4865
4865
4866<script>console.log("acsb not injected")</script>
4866<script>(function(){var s=document.createElement('script');var e = !document.body ? document.querySelector('head'):document.body;s.src='https://acsbapp.com/apps/app/dist/js/app.js';s.setAttribute('data-source', 'WordPress');s.setAttribute('data-plugin-version', '2.13');s.defer=true;s.onload=function(){acsbJS.init({ 4867 statementLink : '', 4868 footerHtml : '', 4869 hideMobile : false, 4870 hideTrigger : false, 4871 language : 'en', 4872 position : 'right', 4873 leadColor : '#3b266e', 4874 triggerColor : '#3b266e', 4875 triggerRadius : '50%', 4876 triggerPositionX : 'right', 4877 triggerPositionY : 'bottom', 4878 triggerIcon : 'people', 4879 triggerSize : 'medium', 4880 triggerOffsetX : 20, 4881 triggerOffsetY : 20, 4882 mobile : { 4883 triggerSize : 'small', 4884 triggerPositionX : 'right', 4885 triggerPositionY : 'bottom', 4886 triggerOffsetX : 10, 4887 triggerOffsetY : 10, 4888 triggerRadius : '50%' 4889 } 4890 }); 4891 }; 4892 e.appendChild(s);}());</script>
4892<!--googleoff: all--><div id="cookie-law-info-bar" data-nosnippet="true"><span>This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.<a role="button" data-cli_action="accept" id="cookie_action_close_header" class="medium cli-plugin-button cli-plugin-main-button cookie_action_close_header cli_action_button wt-cli-accept-btn" style="display:inline-block;margin:10px">Accept</a><a role="button" id="cookie_action_close_header_reject" class="medium cli-plugin-button cli-plugin-main-button cookie_action_close_header_reject cli_action_button wt-cli-reject-btn" data-cli_action="reject" style="margin:10px">Reject</a> </span></div><div id="cookie-law-info-again" style="display:none" data-nosnippet="true"><span id="cookie_hdr_showagain">Privacy & Cookies Policy</span></div><div class="cli-modal" data-nosnippet="true" id="cliSettingsPopup" tabindex="-1" role="dialog" aria-labelledby="cliSettingsPopup" aria-hidden="true"> 4893 <div class="cli-modal-dialog" role="document"> 4894 <div class="cli-modal-content cli-bar-popup"> 4895 <button type="button" class="cli-modal-close" id="cliModalClose"> 4896 <svg class="" viewBox="0 0 24 24"><path d="M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z"></path><path d="M0 0h24v24h-24z" fill="none"></path></svg> 4897 <span class="wt-cli-sr-only">Close</span> 4898 </button> 4899 <div class="cli-modal-body"> 4900 <div class="cli-container-fluid cli-tab-container"> 4901 <div class="cli-row"> 4902 <div class="cli-col-12 cli-align-items-stretch cli-px-0"> 4903 <div class="cli-privacy-overview"> 4904 <h4>Privacy Overview</h4> <div class="cli-privacy-content"> 4905 <div class="cli-privacy-content-text">This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.</div> 4906 </div> 4907 <a class="cli-privacy-readmore" aria-label="Show more" role="button" data-readmore-text="Show more" data-readless-text="Show less"></a> </div> 4908 </div> 4909 <div class="cli-col-12 cli-align-items-stretch cli-px-0 cli-tab-section-container"> 4910 <div class="cli-tab-section"> 4911 <div class="cli-tab-header"> 4912 <a role="button" tabindex="0" class="cli-nav-link cli-settings-mobile" data-target="necessary" data-toggle="cli-toggle-tab"> 4913 Necessary </a> 4914 <div class="wt-cli-necessary-checkbox"> 4915 <input type="checkbox" class="cli-user-preference-checkbox" id="wt-cli-checkbox-necessary" data-id="checkbox-necessary" checked="checked" /> 4916 <label class="form-check-label" for="wt-cli-checkbox-necessary">Necessary</label> 4917 </div> 4918 <span class="cli-necessary-caption">Always Enabled</span> 4919 </div> 4920 <div class="cli-tab-content"> 4921 <div class="cli-tab-pane cli-fade" data-id="necessary"> 4922 <div class="wt-cli-cookie-description"> 4923 Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information. </div> 4924 </div> 4925 </div> 4926 </div> 4927 <div class="cli-tab-section"> 4928 <div class="cli-tab-header"> 4929 <a role="button" tabindex="0" class="cli-nav-link cli-settings-mobile" data-target="non-necessary" data-toggle="cli-toggle-tab"> 4930 Non-necessary </a> 4931 <div class="cli-switch"> 4932 <input type="checkbox" id="wt-cli-checkbox-non-necessary" class="cli-user-preference-checkbox" data-id="checkbox-non-necessary" checked='checked' /> 4933 <label for="wt-cli-checkbox-non-necessary" class="cli-slider" data-cli-enable="Enabled" data-cli-disable="Disabled"><span class="wt-cli-sr-only">Non-necessary</span></label> 4934 </div> 4935 </div> 4936 <div class="cli-tab-content"> 4937 <div class="cli-tab-pane cli-fade" data-id="non-necessary"> 4938 <div class="wt-cli-cookie-description"> 4939 Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via anal
4939ytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website. </div> 4940 </div> 4941 </div> 4942 </div> 4943 </div> 4944 </div> 4945</div> 4946 </div> 4947 <div class="cli-modal-footer"> 4948 <div class="wt-cli-element cli-container-fluid cli-tab-container"> 4949 <div class="cli-row"> 4950 <div class="cli-col-12 cli-align-items-stretch cli-px-0"> 4951 <div class="cli-tab-footer wt-cli-privacy-overview-actions"> 4952 4953 <a id="wt-cli-privacy-save-btn" role="button" tabindex="0" data-cli-action="accept" class="wt-cli-privacy-btn cli_setting_save_button wt-cli-privacy-accept-btn cli-btn">SAVE & ACCEPT</a> 4954 </div> 4955 4956 </div> 4957 </div> 4958 </div> 4959 </div> 4960 </div> 4961 </div> 4962</div> 4963<div class="cli-modal-backdrop cli-fade cli-settings-overlay"></div> 4964<div class="cli-modal-backdrop cli-fade cli-popupbar-overlay"></div> 4965<!--googleon: all-->
4965<script type="text/javascript"> 4966 jQuery(document).ready(function(){ 4967 4968 jQuery(document).on('gform_confirmation_loaded', function(event, formId){ 4969 console.log('gform_confirmation_loaded'); 4970 if(formId == 2) { 4971 <!-- Event snippet for Quick Contact Form conversion page --> 4972 gtag('event', 'conversion', {'send_to': 'AW-858057019/_HVdCLG-m3MQu9KTmQM'}); 4973 } 4974 }); 4975 4976 jQuery(document).bind('gform_confirmation_loaded', function(event, formId){ 4977 console.log('gform_confirmation_loaded 2'); 4978 //if(formId == 2) { 4979 // <!-- Event snippet for Quick Contact Form conversion page --> 4980 // gtag('event', 'conversion', {'send_to': 'AW-858057019/_HVdCLG-m3MQu9KTmQM'}); 4981 //} 4982 }); 4983 4984 jQuery(document).on('gform_post_render', function(event, form_id, current_page){ 4985 console.log('gform_post_render'); 4986 if(event.currentTarget.activeElement.id == "gform_submit_button_2" ){ 4987 console.log('gform_post_render 2'); 4988 <!-- Event snippet for Quick Contact Form conversion page --> 4989 gtag('event', 'conversion', {'send_to': 'AW-858057019/_HVdCLG-m3MQu9KTmQM'}); 4990 } 4991 }); 4992 }) 4993 4994 4995</script>
4995
4995<script type="text/javascript"> 4996 (function() { 4997 // Global page view and session tracking for UAEL Modal Popup feature 4998 try { 4999 // Session tracking: increment if this is a new session 5000 5001 // Check if any popup on this page uses current page tracking 5002 var hasCurrentPageTracking = false; 5003 var currentPagePopups = []; 5004 // Check all modal popups on this page for current page tracking 5005 if (typeof jQuery !== 'undefined') { 5006 jQuery('.uael-modal-parent-wrapper').each(function() { 5007 var scope = jQuery(this).data('page-views-scope'); 5008 var enabled = jQuery(this).data('page-views-enabled'); 5009 var popupId = jQuery(this).attr('id').replace('-overlay', ''); 5010 if (enabled === 'yes' && scope === 'current') { 5011 hasCurrentPageTracking = true; 5012 currentPagePopups.push(popupId); 5013 } 5014 }); 5015 } 5016 // Global tracking: ALWAYS increment if ANY popup on the site uses global tracking 5017 // Current page tracking: increment per-page counters 5018 if (hasCurrentPageTracking && currentPagePopups.length > 0) { 5019 var currentUrl = window.location.href; 5020 var urlKey = 'uael_page_views_' + btoa(currentUrl).replace(/[^a-zA-Z0-9]/g, '').substring(0, 50); 5021 var currentPageViews = parseInt(localStorage.getItem(urlKey) || '0'); 5022 currentPageViews++; 5023 localStorage.setItem(urlKey, currentPageViews.toString()); 5024 // Store URL mapping for each popup 5025 for (var i = 0; i < currentPagePopups.length; i++) { 5026 var popupUrlKey = 'uael_popup_' + currentPagePopups[i] + '_url_key'; 5027 localStorage.setItem(popupUrlKey, urlKey); 5028 } 5029 } 5030 } catch (e) { 5031 // Silently fail if localStorage is not available 5032 } 5033 })(); 5034 </script>
5034 5035
5035<script id="generate-a11y"> 5036!function(){"use strict";if("querySelector"in document&&"addEventListener"in window){var e=document.body;e.addEventListener("pointerdown",(function(){e.classList.add("using-mouse")}),{passive:!0}),e.addEventListener("keydown",(function(){e.classList.remove("using-mouse")}),{passive:!0})}}(); 5037</script>
5037 5038 <div data-elementor-type="popup" data-elementor-id="2501" class="elementor elementor-2501 elementor-location-popup" data-elementor-settings="{"entrance_animation":"fadeIn","prevent_scroll":"yes","entrance_animation_duration":{"unit":"px","size":1.2,"sizes":[]},"a11y_navigation":"yes","triggers":[],"timing":[]}" data-elementor-post-type="elementor_library"> 5039 <section class="elementor-section elementor-top-section elementor-element elementor-element-d8cdad4 elementor-section-full_width elementor-section-height-default elementor-section-height-default" data-id="d8cdad4" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"3c14c8f","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 5040 <div class="elementor-container elementor-column-gap-default"> 5041 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-e450498" data-id="e450498" data-element_type="column" data-e-type="column"> 5042 <div class="elementor-widget-wrap elementor-element-populated"> 5043 <div class="elementor-element elementor-element-e678862 elementor-widget elementor-widget-heading" data-id="e678862" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5044 <div class="elementor-widget-container"> 5045 <span class="elementor-heading-title elementor-size-default">driver Recruiting</span> </div> 5046 </div> 5047 <div class="elementor-element elementor-element-23e87f7 elementor-widget elementor-widget-heading" data-id="23e87f7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5048 <div class="elementor-widget-container"> 5049 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-877-774-6356">1-877-774-6356 5050</a></span> </div> 5051 </div> 5052 </div> 5053 </div> 5054 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-ded321b" data-id="ded321b" data-element_type="column" data-e-type="column"> 5055 <div class="elementor-widget-wrap elementor-element-populated"> 5056 <div class="elementor-element elementor-element-7eada00 elementor-widget elementor-widget-heading" data-id="7eada00" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5057 <div class="elementor-widget-container"> 5058 <span class="elementor-heading-title elementor-size-default">GENERAL SWITCHBOARD</span> </div> 5059 </div> 5060 <div class="elementor-element elementor-element-d6bb72e elementor-widget elementor-widget-heading" data-id="d6bb72e" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5061 <div class="elementor-widget-container"> 5062 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-321-4552">417-866-0001</a></span> </div>
5063 </div> 5064 </div> 5065 </div> 5066 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-c4b1fd0" data-id="c4b1fd0" data-element_type="column" data-e-type="column"> 5067 <div class="elementor-widget-wrap elementor-element-populated"> 5068 <div class="elementor-element elementor-element-551a1c7 elementor-widget elementor-widget-heading" data-id="551a1c7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5069 <div class="elementor-widget-container"> 5070 <span class="elementor-heading-title elementor-size-default">wORK iN hOUSE/hr</span> </div> 5071 </div> 5072 <div class="elementor-element elementor-element-a56bec6 elementor-widget elementor-widget-heading" data-id="a56bec6" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5073 <div class="elementor-widget-container"> 5074 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-801-977-5929">417-799-8883</a></span> </div> 5075 </div> 5076 </div> 5077 </div> 5078 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-65247f8" data-id="65247f8" data-element_type="column" data-e-type="column"> 5079 <div class="elementor-widget-wrap elementor-element-populated"> 5080 <div class="elementor-element elementor-element-4a25d57 elementor-widget elementor-widget-heading" data-id="4a25d57" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5081 <div class="elementor-widget-container"> 5082 <span class="elementor-heading-title elementor-size-default">LOGISTICS/Brokerage 5083</span> </div> 5084 </div> 5085 <div class="elementor-element elementor-element-6c16588 elementor-widget elementor-widget-heading" data-id="6c16588" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5086 <div class="elementor-widget-container"> 5087 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-321-1354">417-521-3743 5088</a></span> </div> 5089 </div> 5090 </div> 5091 </div> 5092 </div> 5093 </section> 5094 <section class="elementor-section elementor-top-section elementor-element elementor-element-b04c035 elementor-section-full_width elementor-section-height-default elementor-section-height-default" data-id="b04c035" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"3c14c8f","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 5095 <div class="elementor-container elementor-column-gap-default"> 5096 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-b5c42a1" data-id="b5c42a1" data-element_type="column" data-e-type="column"> 5097 <div class="elementor-widget-wrap elementor-element-populated"> 5098 <div class="elementor-element elementor-element-753711a elementor-widget elementor-widget-heading" data-id="753711a" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5099 <div class="elementor-widget-container"> 5100 <span class="elementor-heading-title elementor-size-default">truck/trailer Sales</span> </div>
5101 </div> 5102 <div class="elementor-element elementor-element-548b296 elementor-widget elementor-widget-heading" data-id="548b296" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5103 <div class="elementor-widget-container"> 5104 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-574-3011">417-607-6111</a></span> </div> 5105 </div> 5106 </div> 5107 </div> 5108 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-6e03c72" data-id="6e03c72" data-element_type="column" data-e-type="column"> 5109 <div class="elementor-widget-wrap elementor-element-populated"> 5110 <div class="elementor-element elementor-element-9e594ff elementor-widget elementor-widget-heading" data-id="9e594ff" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5111 <div class="elementor-widget-container"> 5112 <span class="elementor-heading-title elementor-size-default">FLATBED Division SALES 5113</span> </div> 5114 </div> 5115 <div class="elementor-element elementor-element-0c2aebb elementor-widget elementor-widget-heading" data-id="0c2aebb" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5116 <div class="elementor-widget-container"> 5117 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-491-1273">417-521-6888</a></span> </div> 5118 </div> 5119 </div> 5120 </div> 5121 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-a65bec6" data-id="a65bec6" data-element_type="column" data-e-type="column"> 5122 <div class="elementor-widget-wrap elementor-element-populated"> 5123 <div class="elementor-element elementor-element-8ec222c elementor-widget elementor-widget-heading" data-id="8ec222c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5124 <div class="elementor-widget-container"> 5125 <span class="elementor-heading-title elementor-size-default">refrigerated division sales</span> </div> 5126 </div> 5127 <div class="elementor-element elementor-element-807630f elementor-widget elementor-widget-heading" data-id="807630f" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5128 <div class="elementor-widget-container"> 5129 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-848-4560">417-521-6886</a></span> </div> 5130 </div> 5131 </div> 5132 </div> 5133 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-1d94542" data-id="1d94542" data-element_type="column" data-e-type="column"> 5134 <div class="elementor-widget-wrap elementor-element-populated"> 5135 <div class="elementor-element elementor-element-84b89e8 elementor-widget elementor-widget-heading" data-id="84b89e8" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5136 <div class="elementor-widget-container"> 5137 <span class="elementor-heading-title elementor-size-default">Tanker Division Sales</span> </div> 5138 </div> 5139 <div class="elementor-element elementor-element-08ea3cd elementor-widget elementor-widget-heading" data-id="08ea3cd" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5140 <div class="elementor-widget-container"> 5141 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-876-8710">417-521-6874</a></span> </div> 5142 </div> 5143 </div> 5144 </div> 5145 </div> 5146 </section> 5147 <section class="elementor-section elementor-top-section elementor-element elementor-element-96dff77 elementor-section-full_width elementor-section-height-default elementor-section-height-default" data-id="96dff77" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"3c14c8f","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size":"auto","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":"","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"]}]}"> 5148 <div class="elementor-container elementor-column-gap-default"> 5149 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-6d170ac" data-id="6d170ac" data-element_type="column" data-e-type="column"> 5150 <div class="elementor-widget-wrap elementor-element-populated"> 5151 <div class="elementor-element elementor-element-c4c6287 elementor-widget elementor-widget-heading" data-id="c4c6287" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5152 <div class="elementor-widget-container"> 5153 <span class="elementor-heading-title elementor-size-default">
5153INTERMODAL division Sales 5154 5155</span> </div> 5156 </div> 5157 <div class="elementor-element elementor-element-8188be5 elementor-widget elementor-widget-heading" data-id="8188be5" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5158 <div class="elementor-widget-container"> 5159 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-888-745-1146">417-521-3661</a></span> </div> 5160 </div> 5161 </div> 5162 </div> 5163 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-c5cd690" data-id="c5cd690" data-element_type="column" data-e-type="column"> 5164 <div class="elementor-widget-wrap elementor-element-populated"> 5165 <div class="elementor-element elementor-element-fa76dd7 elementor-widget elementor-widget-heading" data-id="fa76dd7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5166 <div class="elementor-widget-container"> 5167 <span class="elementor-heading-title elementor-size-default">Success Leasing</span> </div> 5168 </div> 5169 <div class="elementor-element elementor-element-293e222 elementor-widget elementor-widget-heading" data-id="293e222" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5170 <div class="elementor-widget-container"> 5171 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-417-521-3712">417-521-3712</a></span> </div> 5172 </div> 5173 </div> 5174 </div> 5175 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-2a1f3d1" data-id="2a1f3d1" data-element_type="column" data-e-type="column"> 5176 <div class="elementor-widget-wrap elementor-element-populated"> 5177 <div class="elementor-element elementor-element-7b6a8e3 elementor-widget elementor-widget-heading" data-id="7b6a8e3" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5178 <div class="elementor-widget-container"> 5179 <span class="elementor-heading-title elementor-size-default">Safety dept</span> </div> 5180 </div> 5181 <div class="elementor-element elementor-element-522f860 elementor-widget elementor-widget-heading" data-id="522f860" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5182 <div class="elementor-widget-container"> 5183 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-800-491-1253">417-799-8880</a></span> </div> 5184 </div> 5185 </div> 5186 </div> 5187 <div class="elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-9f65858" data-id="9f65858" data-element_type="column" data-e-type="column"> 5188 <div class="elementor-widget-wrap elementor-element-populated"> 5189 <div class="elementor-element elementor-element-74c49b9 elementor-widget elementor-widget-heading" data-id="74c49b9" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5190 <div class="elementor-widget-container"> 5191 <span class="elementor-heading-title elementor-size-default">Company Store</span> </div> 5192 </div> 5193 <div class="elementor-element elementor-element-25f1439 elementor-widget elementor-widget-heading" data-id="25f1439" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 5194 <div class="elementor-widget-container"> 5195 <span class="elementor-heading-title elementor-size-default"><a href="tel:+1-417-521-3814">417-521-3114</a></span> </div> 5196 </div> 5197 </div> 5198 </div> 5199 </div> 5200 </section> 5201 </div> 5202 <div data-elementor-type="popup" data-elementor-id="2335" class="elementor elementor-2335 elementor-location-popup" data-elementor-settings="{"entrance_animation":"fadeIn","entrance_animation_duration":{"unit":"px","size":0.5,"sizes":[]},"prevent_scroll":"yes","prevent_close_on_background_click":"yes","a11y_navigation":"yes","timing":[]}" data-elementor-post-type="elementor_library"> 5203 <section class="elementor-section elementor-top-section elementor-element elementor-element-58393b6 elementor-section-full_width elementor-section-height-default elementor-section-height-default" data-id="58393b6" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"3c14c8f","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_size":"auto","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"],"jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":""}]}"> 5204 <div class="elementor-container elementor-column-gap-default"> 5205 <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5e6047e" data-id="5e6047e" data-element_type="column" data-e-type="column"> 5206 <div class="elementor-widget-wrap elementor-element-populated"> 5207 <section class="elementor-section elementor-inner-section elementor-element elementor-element-f653128 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f653128" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"1f1e7d5","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_size":"auto","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"],"jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":""}]}"> 5208 <div class="elementor-container elementor-column-gap-default"> 5209 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-c07b5ae" data-id="c07b5ae" data-element_type="column" data-e-type="column"> 5210 <div class="elementor-widget-wrap elementor-element-populated"> 5211 <div class="elementor-element elementor-element-8a7323a elementor-widget elementor-widget-wp-widget-nav_menu" data-id="8a7323a" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5212 <div class="elementor-widget-container"> 5213 <div class="menu-why-prime-container"><ul id="menu-why-prime" class="menu">
5213<li id="menu-item-2638" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2638"><a href="https://www.primeinc.com/why-prime/">Why Prime</a> 5214<ul class="sub-menu"> 5215 <li id="menu-item-2639" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2639"><a href="https://www.primeinc.com/why-prime/company-culture/">Company Culture</a></li> 5216 <li id="menu-item-4348" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-4348"><a href="https://www.primeinc.com/why-prime/company-culture/#company-programs">Company Programs</a></li> 5217 <li id="menu-item-4339" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4339"><a href="https://www.primeinc.com/why-prime/company-culture/leadership-team/">Leadership Team</a></li> 5218 <li id="menu-item-3038" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-3038"><a href="/success-leasing/equipment/">Equipment</a></li> 5219 <li id="menu-item-14437" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-14437"><a href="https://www.primeinc.com/why-prime/facilities/">Facilities</a></li> 5220 <li id="menu-item-2641" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2641"><a href="https://www.primeinc.com/work-in-house/fleet-maintenance/">Fleet Maintenance</a></li> 5221 <li id="menu-item-2768" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2768"><a href="https://www.primeinc.com/why-prime/prime-news/">Prime News</a></li> 5222</ul> 5223</li> 5224</ul></div> </div> 5225 </div> 5226 </div> 5227 </div> 5228 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-feed7f5" data-id="feed7f5" data-element_type="column" data-e-type="column"> 5229 <div class="elementor-widget-wrap elementor-element-populated"> 5230 <div class="elementor-element elementor-element-5375522 elementor-widget elementor-widget-wp-widget-nav_menu" data-id="5375522" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5231 <div class="elementor-widget-container"> 5232 <div class="menu-transportation-solutions-container"><ul id="menu-transportation-solutions" class="menu"><li id="menu-item-2632" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-2252 current_page_item menu-item-has-children menu-item-2632"><a href="https://www.primeinc.com/transportation-solutions/" aria-current="page">Transportation Solutions</a> 5233<ul class="sub-menu"> 5234 <li id="menu-item-2633" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2633"><a href="https://www.primeinc.com/transportation-solutions/refrigerated-division/">Refrigerated Division</a></li> 5235 <li id="menu-item-3050" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3050"><a href="https://www.primeinc.com/transportation-solutions/flatbed-division/">Flatbed Division</a></li> 5236 <li id="menu-item-3051" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3051"><a href="https://www.primeinc.com/transportation-solutions/tanker-division/">Tanker Division</a></li> 5237 <li id="menu-item-3429" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3429"><a href="https://www.primeinc.com/transportation-solutions/intermodal/">Intermodal Division</a></li> 5238 <li id="menu-item-2634" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2634"><a target="_blank" href="https://loadtracing.primeinc.com/#new_tab">Load Tracing <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5239 <li id="menu-item-2635" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2635"><a href="https://www.primeinc.com/transportation-solutions/industry-awards/">Awards</a></li> 5240 <li id="menu-item-4688" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4688"><a href="https://www.primeinc.com/transportation-solutions/documentation/">Documentation</a></li> 5241</ul> 5242</li> 5243</ul></div>
5243 </div> 5244 </div> 5245 </div> 5246 </div> 5247 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-d2c684c" data-id="d2c684c" data-element_type="column" data-e-type="column"> 5248 <div class="elementor-widget-wrap elementor-element-populated"> 5249 <div class="elementor-element elementor-element-0c74a47 elementor-widget elementor-widget-wp-widget-nav_menu" data-id="0c74a47" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5250 <div class="elementor-widget-container"> 5251 <div class="menu-drive-for-prime-container"><ul id="menu-drive-for-prime" class="menu"><li id="menu-item-2648" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2648"><a href="https://www.primeinc.com/drive-for-prime/">Drive For Prime</a> 5252<ul class="sub-menu"> 5253 <li id="menu-item-2649" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2649"><a href="https://www.primeinc.com/drive-for-prime/qualifications-expectations/">Qualifications & Expectations</a></li> 5254 <li id="menu-item-2650" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2650"><a href="https://www.primeinc.com/drive-for-prime/pay-benefits/">Pay & Benefits</a></li> 5255 <li id="menu-item-2651" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2651"><a href="https://www.primeinc.com/drive-for-prime/driver-training-program/">Driver Training Program</a></li> 5256 <li id="menu-item-2652" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2652"><a href="https://www.primeinc.com/drive-for-prime/cdl-holders/">CDL Holders</a></li> 5257 <li id="menu-item-2653" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2653"><a href="https://www.primeinc.com/drive-for-prime/driver-awards/">Driver Awards</a></li> 5258 <li id="menu-item-11593" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11593"><a href="https://www.primeinc.com/drive-for-prime/slc/">Salt Lake City</a></li> 5259 <li id="menu-item-13808" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13808"><a href="https://www.primeinc.com/drive-for-prime/pittston-pa/">Pittston, PA</a></li> 5260 <li id="menu-item-13809" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13809"><a href="https://www.primeinc.com/drive-for-prime/springfield-mo/">Springfield, MO</a></li> 5261</ul> 5262</li> 5263</ul></div> </div> 5264 </div> 5265 </div> 5266 </div> 5267 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-567fce4" data-id="567fce4" data-element_type="column" data-e-type="column"> 5268 <div class="elementor-widget-wrap elementor-element-populated"> 5269 <div class="elementor-element elementor-element-ecb1966 elementor-widget elementor-widget-wp-widget-nav_menu" data-id="ecb1966" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5270 <div class="elementor-widget-container"> 5271 <div class="menu-work-in-house-container"><ul id="menu-work-in-house" class="menu"><li id="menu-item-2643" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2643"><a href="https://www.primeinc.com/work-in-house/">Work In House</a> 5272<ul class="sub-menu"> 5273 <li id="menu-item-2644" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2644"><a target="_blank" href="https://careers-primeinc.icims.com/jobs/search?ss=1&mobile=false&width=960&height=500&bga=true&needsRedirect=false&jan1offset=-360&jun1offset=-300#new_tab">Jobs At Prime <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5274 <li id="menu-item-2645" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2645"><a href="https://www.primeinc.com/why-prime/facilities/#amenities">Amenities</a></li> 5275 <li id="menu-item-2646" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2646">
5275<a href="https://www.primeinc.com/work-in-house/benefits/">Benefits</a></li> 5276 <li id="menu-item-3279" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3279"><a href="https://www.primeinc.com/why-prime/company-culture/">Company Culture</a></li> 5277 <li id="menu-item-11594" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11594"><a href="https://www.primeinc.com/drive-for-prime/slc/">Salt Lake City</a></li> 5278</ul> 5279</li> 5280</ul></div> </div> 5281 </div> 5282 </div> 5283 </div> 5284 </div> 5285 </section> 5286 <section class="elementor-section elementor-inner-section elementor-element elementor-element-d9feeab elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="d9feeab" data-element_type="section" data-e-type="section" data-settings="{"jet_parallax_layout_list":[{"jet_parallax_layout_image":{"url":"","id":"","size":""},"_id":"1f1e7d5","jet_parallax_layout_image_tablet":{"url":"","id":"","size":""},"jet_parallax_layout_image_mobile":{"url":"","id":"","size":""},"jet_parallax_layout_speed":{"unit":"%","size":50,"sizes":[]},"jet_parallax_layout_type":"scroll","jet_parallax_layout_z_index":"","jet_parallax_layout_bg_x":50,"jet_parallax_layout_bg_y":50,"jet_parallax_layout_bg_size":"auto","jet_parallax_layout_animation_prop":"transform","jet_parallax_layout_on":["desktop","tablet"],"jet_parallax_layout_direction":"1","jet_parallax_layout_fx_direction":null,"jet_parallax_layout_bg_x_tablet":"","jet_parallax_layout_bg_x_mobile":"","jet_parallax_layout_bg_y_tablet":"","jet_parallax_layout_bg_y_mobile":"","jet_parallax_layout_bg_size_tablet":"","jet_parallax_layout_bg_size_mobile":""}]}"> 5287 <div class="elementor-container elementor-column-gap-default"> 5288 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-8a8e351" data-id="8a8e351" data-element_type="column" data-e-type="column"> 5289 <div class="elementor-widget-wrap elementor-element-populated"> 5290 <div class="elementor-element elementor-element-4b2cf1c elementor-widget elementor-widget-wp-widget-nav_menu" data-id="4b2cf1c" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5291 <div class="elementor-widget-container"> 5292 <div class="menu-carrier-solutions-container"><ul id="menu-carrier-solutions" class="menu"><li id="menu-item-2655" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2655"><a href="https://www.primeinc.com/carrier-solutions/">Carrier Solutions</a> 5293<ul class="sub-menu"> 5294 <li id="menu-item-8380" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-8380"><a href="/carrier-solutions/brokerage/loads/">View Available Loads​</a></li> 5295 <li id="menu-item-2656" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2656"><a href="https://www.primeinc.com/carrier-solutions/brokerage/">Brokerage</a></li> 5296 <li id="menu-item-15952" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15952"><a href="https://www.primeinc.com/carrier-solutions/prime-power-fleet/">Prime Power Fleet</a></li> 5297</ul> 5298</li> 5299</ul></div> </div> 5300 </div> 5301 </div> 5302 </div> 5303 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-be5ee35" data-id="be5ee35" data-element_type="column" data-e-type="column"> 5304 <div class="elementor-widget-wrap elementor-element-populated"> 5305 <div class="elementor-element elementor-element-fae5c5c elementor-widget elementor-widget-wp-widget-nav_menu" data-id="fae5c5c" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5306 <div class="elementor-widget-container"> 5307 <div class="menu-success-leasing-container"><ul id="menu-success-leasing" class="menu"><li id="menu-item-2628" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2628"><a href="https://www.primeinc.com/success-leasing/">Success Leasing</a> 5308<ul class="sub-menu"> 5309 <li id="menu-item-2788" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2788"><a href="https://www.primeinc.com/success-leasing/equipment/">Equipment</a></li> 5310 <li id="menu-item-2631" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2631"><a href="https://www.primeinc.com/success-leasing/lease-lease-purchase/">Lease & Lease Purchase</a></li> 5311 <li id="menu-item-2629" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2629"><a href="https://www.primeinc.com/success-leasing/benefits-of-leasing/">Benefits of Leasing</a></li> 5312 <li id="menu-item-8157" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-8157"><a target="_blank" href="https://intelliapp.driverapponline.com/c/primeinc?uri_b=ia_primeinc_1310919569">How to Get Started <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5313</ul> 5314</li> 5315</ul></div>
5315 </div> 5316 </div> 5317 </div> 5318 </div> 5319 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-786bde1" data-id="786bde1" data-element_type="column" data-e-type="column"> 5320 <div class="elementor-widget-wrap elementor-element-populated"> 5321 <div class="elementor-element elementor-element-656da70 elementor-widget elementor-widget-wp-widget-nav_menu" data-id="656da70" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5322 <div class="elementor-widget-container"> 5323 <div class="menu-pedigree-container"><ul id="menu-pedigree" class="menu"><li id="menu-item-2623" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2623"><a href="https://www.primeinc.com/pedigree/">Pedigree</a> 5324<ul class="sub-menu"> 5325 <li id="menu-item-2624" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2624"><a href="https://www.primeinc.com/pedigree/pedigree-benefits/">Pedigree Benefits</a></li> 5326 <li id="menu-item-2625" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2625"><a href="https://www.primeinc.com/pedigree/financing-information/">Financing Information</a></li> 5327 <li id="menu-item-3791" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3791"><a href="https://www.primeinc.com/pedigree/equipment-inventory/">Equipment Inventory</a></li> 5328</ul> 5329</li> 5330</ul></div> </div> 5331 </div> 5332 </div> 5333 </div> 5334 <div class="elementor-column elementor-col-25 elementor-inner-column elementor-element elementor-element-39cb80d" data-id="39cb80d" data-element_type="column" data-e-type="column"> 5335 <div class="elementor-widget-wrap elementor-element-populated"> 5336 <div class="elementor-element elementor-element-6da4f2a elementor-widget elementor-widget-wp-widget-nav_menu" data-id="6da4f2a" data-element_type="widget" data-e-type="widget" data-widget_type="wp-widget-nav_menu.default"> 5337 <div class="elementor-widget-container"> 5338 <div class="menu-contact-us-container"><ul id="menu-contact-us" class="menu"><li id="menu-item-3449" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-3449"><a href="https://www.primeinc.com/contact-us/">Quick Links</a> 5339<ul class="sub-menu"> 5340 <li id="menu-item-5476" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5476"><a target="_blank" href="https://dhos.omnitracs.com/dhm/?company=Prime%20Inc.">Omnitracs Logs <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5341 <li id="menu-item-5477" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5477"><a target="_blank" href="https://www.myprimeinc.com/login/">My Prime <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5342 <li id="menu-item-5478" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5478"><a target="_blank" href="https://primeincstore.com">Company Store <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5343 <li id="menu-item-6041" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-6041"><a target="_blank" href="https://form.jotform.com/31485165790157%20">Submit Pics from the Road <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5344 <li id="menu-item-6689" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-6689"><a href="https://home.driverfacts.com/">Driver Verification <i class="fa fa-external-link-square" aria-hidden="true"></i></a></li> 5345</ul> 5346</li> 5347</ul></div> </div> 5348 </div> 5349 </div> 5350 </div> 5351 </div> 5352 </section> 5353 </div> 5354 </div> 5355 </div> 5356 </section> 5357 </div> 5358
5358<script> 5359 ( () => { 5360 const lazyloadRunObserver = () => { 5361 const lazyloadBackgrounds = document.querySelectorAll( `.e-con.e-parent:not(.e-lazyloaded)` ); 5362 const lazyloadBackgroundObserver = new IntersectionObserver( ( entries ) => { 5363 entries.forEach( ( entry ) => { 5364 if ( entry.isIntersecting ) { 5365 let lazyloadBackground = entry.target; 5366 if( lazyloadBackground ) { 5367 lazyloadBackground.classList.add( 'e-lazyloaded' ); 5368 } 5369 lazyloadBackgroundObserver.unobserve( entry.target ); 5370 } 5371 }); 5372 }, { rootMargin: '200px 0px 200px 0px' } ); 5373 lazyloadBackgrounds.forEach( ( lazyloadBackground ) => { 5374 lazyloadBackgroundObserver.observe( lazyloadBackground ); 5375 } ); 5376 }; 5377 const events = [ 5378 'DOMContentLoaded', 5379 'elementor/lazyload/observe', 5380 ]; 5381 events.forEach( ( event ) => { 5382 document.addEventListener( event, lazyloadRunObserver ); 5383 } ); 5384 } )(); 5385 </script>
5385 5386 <style id="global-styles-inline-css"> 5387:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--contrast: var(--contrast);--wp--preset--color--contrast-2: var(--contrast-2);--wp--preset--color--contrast-3: var(--contrast-3);--wp--preset--color--base: var(--base);--wp--preset--color--base-2: var(--base-2);--wp--preset--color--base-3: var(--base-3);--wp--preset--color--accent: var(--accent);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
5387--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}.has-contrast-2-color{color: var(--wp--preset--color--contrast-2) !important;}.has-contrast-3-color{color: var(--wp--preset--color--contrast-3) !important;}.has-base-color{color: var(--wp--preset--color--base) !important;}.has-base-2-color{color: var(--wp--preset--color--base-2) !important;}.has-base-3-color{color: var(--wp--preset--color--base-3) !important;}.has-accent-color{color: var(--wp--preset--color--accent) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}.has-contrast-2-background-color{background-color: var(--wp--preset--color--contrast-2) !important;}.has-contrast-3-background-color{background-color: var(--wp--preset--color--contrast-3) !important;}.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}.has-base-2-background-color{background-color: var(--wp--preset--color--base-2) !important;}.has-base-3-background-color{background-color: var(--wp--preset--color--base-3) !important;}.has-accent-background-color{background-color: var(--wp--preset--color--accent) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}.has-contrast-2-border-color{border-color: var(--wp--preset--color--contrast-2) !important;}.has-contrast-3-border-color{border-color: var(--wp--preset--color--contrast-3) !important;}.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}.has-base-2-border-color{border-color: var(--wp--preset--color--base-2) !important;}.has-base-3-border-color{border-color: var(--wp--preset--color--base-3) !important;}.has-accent-border-color{border-color: var(--wp--preset--color--accent) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
5387.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 5388/*# sourceURL=global-styles-inline-css */ 5389</style> 5390<link rel='stylesheet' id='e-swiper-css' href='https://www.primeinc.com/wp-content/plugins/elementor/assets/css/conditionals/e-swiper.min.css?ver=4.3.3' media='all' /> 5391<link rel='stylesheet' id='jet-elements-css' href='https://www.primeinc.com/wp-content/plugins/jet-elements/assets/css/jet-elements.css?ver=2.9.2.2' media='all' />
5392<script id="dynamic-conditions-js" src="https://www.primeinc.com/wp-content/plugins/dynamicconditions/Public/js/dynamic-conditions-public.js?ver=1.7.5"></script>
vendor: 1 bytes, line 5392
5392
5393<script id="generate-menu-js-before"> 5394var generatepressMenu = {"toggleOpenedSubMenus":true,"openSubMenuLabel":"Open Sub-Menu","closeSubMenuLabel":"Close Sub-Menu"}; 5395//# sourceURL=generate-menu-js-before 5396</script>
vendor: 1 bytes, line 5396
5396
5397<script id="generate-menu-js" src="https://www.primeinc.com/wp-content/themes/generatepress/assets/js/menu.min.js?ver=3.6.1"></script>
vendor: 1 bytes, line 5397
5397
5398<script id="elementor-webpack-runtime-js" src="https://www.primeinc.com/wp-content/plugins/elementor/assets/js/webpack.runtime.min.js?ver=4.3.3"></script>
vendor: 1 bytes, line 5398
5398
5399<script id="elementor-frontend-modules-js" src="https://www.primeinc.com/wp-content/plugins/elementor/assets/js/frontend-modules.min.js?ver=4.3.3"></script>
vendor: 1 bytes, line 5399
5399
5400<script id="jquery-ui-core-js" src="https://www.primeinc.com/wp-includes/js/jquery/ui/core.min.js?ver=1.13.3"></script>
vendor: 1 bytes, line 5400
5400
5401<script id="elementor-frontend-js-extra"> 5402var uael_particles_script = {"uael_particles_url":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/min-js/uael-particles.min.js","particles_url":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/lib/particles/particles.min.js","snowflakes_image":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/snowflake.svg","gift":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/gift.png","tree":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/tree.png","skull":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/skull.png","ghost":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/ghost.png","moon":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/moon.png","bat":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/bat.png","pumpkin":"https://www.primeinc.com/wp-content/plugins/ultimate-elementor/assets/img/pumpkin.png"}; 5403var EAELImageMaskingConfig = {"svg_dir_url":"https://www.primeinc.com/wp-content/plugins/essential-addons-for-elementor-lite/assets/front-end/img/image-masking/svg-shapes/"}; 5404//# sourceURL=elementor-frontend-js-extra 5405</script>
vendor: 1 bytes, line 5405
5405
5406<script id="elementor-frontend-js-before"> 5407var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"Share on Facebook","shareOnX":"Share on X","pinIt":"Pin it","download":"Download","downloadImage":"Download image","fullscreen":"Fullscreen","zoom":"Zoom","share":"Share","playVideo":"Play Video","previous":"Previous","next":"Next","close":"Close","a11yCarouselPrevSlideMessage":"Previous slide","a11yCarouselNextSlideMessage":"Next slide","a11yCarouselFirstSlideMessage":"This is the first slide","a11yCarouselLastSlideMessage":"This is the last slide","a11yCarouselPaginationBulletMessage":"Go to slide"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobile Portrait","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":false}},"hasCustomBreakpoints":false},"version":"4.3.3","is_static":false,"experimentalFeatures":{"additional_custom_breakpoints":true,"theme_builder_v2":true,"landing-pages":true,"import-export-customization":true,"e_pro_atomic_form":true,"e_pro_collection_loop":true},"urls":{"assets":"https:\/\/www.primeinc.com\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/www.primeinc.com\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/www.primeinc.com\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"c8e72c23bd","atomicFormsSendForm":"e9a889e628"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"active_breakpoints":["viewport_mobile","viewport_tablet"],"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":2252,"title":"FTL%20Freight%20Transportation%20%26%20Delivery%20Services%20%7C%20Prime%2C%20Inc.","excerpt":"","featuredImage":false}}; 5408//# sourceURL=elementor-frontend-js-before 5409</script>
vendor: 1 bytes, line 5409
5409
5410<script id="elementor-frontend-js" src="https://www.primeinc.com/wp-content/plugins/elementor/assets/js/frontend.min.js?ver=4.3.3"></script>
vendor: 1 bytes, line 5410
5410
5411<script id="elementor-frontend-js-after"> 5412window.scope_array = []; 5413 window.backend = 0; 5414 jQuery.cachedScript = function( url, options ) { 5415 // Allow user to set any option except for dataType, cache, and url. 5416 options = jQuery.extend( options || {}, { 5417 dataType: "script", 5418 cache: true, 5419 url: url 5420 }); 5421 // Return the jqXHR object so we can chain callbacks. 5422 return jQuery.ajax( options ); 5423 }; 5424 jQuery( window ).on( "elementor/frontend/init", function() { 5425 elementorFrontend.hooks.addAction( "frontend/element_ready/global", function( $scope, $ ){ 5426 if ( "undefined" == typeof $scope ) { 5427 return; 5428 } 5429 if ( $scope.hasClass( "uael-particle-yes" ) ) { 5430 window.scope_array.push( $scope ); 5431 $scope.find(".uael-particle-wrapper").addClass("js-is-enabled"); 5432 }else{ 5433 return; 5434 } 5435 if(elementorFrontend.isEditMode() && $scope.find(".uael-particle-wrapper").hasClass("js-is-enabled") && window.backend == 0 ){ 5436 var uael_url = uael_particles_script.uael_particles_url; 5437 5438 jQuery.cachedScript( uael_url ); 5439 window.backend = 1; 5440 }else if(elementorFrontend.isEditMode()){ 5441 var uael_url = uael_particles_script.uael_particles_url; 5442 jQuery.cachedScript( uael_url ).done(function(){ 5443 var flag = true; 5444 }); 5445 } 5446 }); 5447 }); 5448 5449 // Added both `document` and `window` event listeners to address issues where some users faced problems with the `document` event not triggering as expected. 5450 // Define cachedScript globally to avoid redefining it. 5451 5452 jQuery.cachedScript = function(url, options) { 5453 options = jQuery.extend(options || {}, { 5454 dataType: "script", 5455 cache: true, 5456 url: url 5457 }); 5458 return jQuery.ajax(options); // Return the jqXHR object so we can chain callbacks 5459 }; 5460 5461 let uael_particle_loaded = false; //flag to prevent multiple script loads. 5462 5463 jQuery( document ).on( "ready elementor/popup/show", () => { 5464 loadParticleScript(); 5465 }); 5466 5467 jQuery( window ).one( "elementor/frontend/init", () => { 5468 if (!uael_particle_loaded) { 5469 loadParticleScript(); 5470 } 5471 }); 5472 5473 function loadParticleScript(){ 5474 // Use jQuery to check for the presence of the element 5475 if (jQuery(".uael-particle-yes").length < 1) { 5476 return; 5477 } 5478 5479 uael_particle_loaded = true; 5480 var uael_url = uael_particles_script.uael_particles_url; 5481 // Call the cachedScript function 5482 jQuery.cachedScript(uael_url); 5483 } 5484//# sourceURL=elementor-frontend-js-after 5485</script>
vendor: 1 bytes, line 5485
5485
5486<script id="e-sticky-js" src="https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/lib/sticky/jquery.sticky.min.js?ver=4.3.1"></script>
vendor: 1 bytes, line 5486
5486
5487<script id="eael-general-js-extra"> 5488var localize = {"ajaxurl":"https://www.primeinc.com/wp-admin/admin-ajax.php","nonce":"d6e5d7fd05","i18n":{"added":"Added ","compare":"Compare","loading":"Loading..."},"eael_translate_text":{"required_text":"is a required field","invalid_text":"Invalid","billing_text":"Billing","shipping_text":"Shipping","fg_mfp_counter_text":"of"},"page_permalink":"https://www.primeinc.com/transportation-solutions/","cart_redirectition":"","cart_page_url":"","el_breakpoints":{"mobile":{"label":"Mobile Portrait","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":false}},"ParticleThemesData":{"default":"{\"particles\":{\"number\":{\"value\":160,\"density\":{\"enable\":true,\"value_area\":800}},\"color\":{\"value\":\"#ffffff\"},\"shape\":{\"type\":\"circle\",\"stroke\":{\"width\":0,\"color\":\"#000000\"},\"polygon\":{\"nb_sides\":5},\"image\":{\"src\":\"img/github.svg\",\"width\":100,\"height\":100}},\"opacity\":{\"value\":0.5,\"random\":false,\"anim\":{\"enable\":false,\"speed\":1,\"opacity_min\":0.1,\"sync\":false}},\"size\":{\"value\":3,\"random\":true,\"anim\":{\"enable\":false,\"speed\":40,\"size_min\":0.1,\"sync\":false}},\"line_linked\":{\"enable\":true,\"distance\":150,\"color\":\"#ffffff\",\"opacity\":0.4,\"width\":1},\"move\":{\"enable\":true,\"speed\":6,\"direction\":\"none\",\"random\":false,\"straight\":false,\"out_mode\":\"out\",\"bounce\":false,\"attract\":{\"enable\":false,\"rotateX\":600,\"rotateY\":1200}}},\"interactivity\":{\"detect_on\":\"canvas\",\"events\":{\"onhover\":{\"enable\":true,\"mode\":\"repulse\"},\"onclick\":{\"enable\":true,\"mode\":\"push\"},\"resize\":true},\"modes\":{\"grab\":{\"distance\":400,\"line_linked\":{\"opacity\":1}},\"bubble\":{\"distance\":400,\"size\":40,\"duration\":2,\"opacity\":8,\"speed\":3},\"repulse\":{\"distance\":200,\"duration\":0.4},\"push\":{\"particles_nb\":4},\"remove\":{\"particles_nb\":2}}},\"retina_detect\":true}","nasa":"{\"particles\":{\"number\":{\"value\":250,\"density\":{\"enable\":true,\"value_area\":800}},\"color\":{\"value\":\"#ffffff\"},\"shape\":{\"type\":\"circle\",\"stroke\":{\"width\":0,\"color\":\"#000000\"},\"polygon\":{\"nb_sides\":5},\"image\":{\"src\":\"img/github.svg\",\"width\":100,\"height\":100}},\"opacity\":{\"value\":1,\"random\":true,\"anim\":{\"enable\":true,\"speed\":1,\"opacity_min\":0,\"sync\":false}},\"size\":{\"value\":3,\"random\":true,\"anim\":{\"enable\":false,\"speed\":4,\"size_min\":0.3,\"sync\":false}},\"line_linked\":{\"enable\":false,\"distance\":150,\"color\":\"#ffffff\",\"opacity\":0.4,\"width\":1},\"move\":{\"enable\":true,\"speed\":1,\"direction\":\"none\",\"random\":true,\"straight\":false,\"out_mode\":\"out\",\"bounce\":false,\"attract\":{\"enable\":false,\"rotateX\":600,\"rotateY\":600}}},\"interactivity\":{\"detect_on\":\"canvas\",\"events\":{\"onhover\":{\"enable\":true,\"mode\":\"bubble\"},\"onclick\":{\"enable\":true,\"mode\":\"repulse\"},\"resize\":true},\"modes\":{\"grab\":{\"distance\":400,\"line_linked\":{\"opacity\":1}},\"bubble\":{\"distance\":250,\"size\":0,\"duration\":2,\"opacity\":0,\"speed\":3},\"repulse\":{\"distance\":400,\"duration\":0.4},\"push\":{\"particles_nb\":4},\"remove\":{\"particles_nb\":2}}},\"retina_detect\":true}","bubble":"{\"particles\":{\"number\":{\"value\":15,\"density\":{\"enable\":true,\"value_area\":800}},\"color\":{\"value\":\"#1b1e34\"},\"shape\":{\"type\":\"polygon\",\"stroke\":{\"width\":0,\"color\":\"#000\"},\"polygon\":{\"nb_sides\":6},\"image\":{\"src\":\"img/github.svg\",\"width\":100,\"height\":100}},\"opacity\":{\"value\":0.3,\"random\":true,\"anim\":{\"enable\":false,\"speed\":1,\"opacity_min\":0.1,\"sync\":false}},\"size\":{\"value\":50,\"random\":false,\"anim\":{\"enable\":true,\"speed\":10,\"size_min\":40,\"
5488sync\":false}},\"line_linked\":{\"enable\":false,\"distance\":200,\"color\":\"#ffffff\",\"opacity\":1,\"width\":2},\"move\":{\"enable\":true,\"speed\":8,\"direction\":\"none\",\"random\":false,\"straight\":false,\"out_mode\":\"out\",\"bounce\":false,\"attract\":{\"enable\":false,\"rotateX\":600,\"rotateY\":1200}}},\"interactivity\":{\"detect_on\":\"canvas\",\"events\":{\"onhover\":{\"enable\":false,\"mode\":\"grab\"},\"onclick\":{\"enable\":false,\"mode\":\"push\"},\"resize\":true},\"modes\":{\"grab\":{\"distance\":400,\"line_linked\":{\"opacity\":1}},\"bubble\":{\"distance\":400,\"size\":40,\"duration\":2,\"opacity\":8,\"speed\":3},\"repulse\":{\"distance\":200,\"duration\":0.4},\"push\":{\"particles_nb\":4},\"remove\":{\"particles_nb\":2}}},\"retina_detect\":true}","snow":"{\"particles\":{\"number\":{\"value\":450,\"density\":{\"enable\":true,\"value_area\":800}},\"color\":{\"value\":\"#fff\"},\"shape\":{\"type\":\"circle\",\"stroke\":{\"width\":0,\"color\":\"#000000\"},\"polygon\":{\"nb_sides\":5},\"image\":{\"src\":\"img/github.svg\",\"width\":100,\"height\":100}},\"opacity\":{\"value\":0.5,\"random\":true,\"anim\":{\"enable\":false,\"speed\":1,\"opacity_min\":0.1,\"sync\":false}},\"size\":{\"value\":5,\"random\":true,\"anim\":{\"enable\":false,\"speed\":40,\"size_min\":0.1,\"sync\":false}},\"line_linked\":{\"enable\":false,\"distance\":500,\"color\":\"#ffffff\",\"opacity\":0.4,\"width\":2},\"move\":{\"enable\":true,\"speed\":6,\"direction\":\"bottom\",\"random\":false,\"straight\":false,\"out_mode\":\"out\",\"bounce\":false,\"attract\":{\"enable\":false,\"rotateX\":600,\"rotateY\":1200}}},\"interactivity\":{\"detect_on\":\"canvas\",\"events\":{\"onhover\":{\"enable\":true,\"mode\":\"bubble\"},\"onclick\":{\"enable\":true,\"mode\":\"repulse\"},\"resize\":true},\"modes\":{\"grab\":{\"distance\":400,\"line_linked\":{\"opacity\":0.5}},\"bubble\":{\"distance\":400,\"size\":4,\"duration\":0.3,\"opacity\":1,\"speed\":3},\"repulse\":{\"distance\":200,\"duration\":0.4},\"push\":{\"particles_nb\":4},\"remove\":{\"particles_nb\":2}}},\"retina_detect\":true}","nyan_cat":"{\"particles\":{\"number\":{\"value\":150,\"density\":{\"enable\":false,\"value_area\":800}},\"color\":{\"value\":\"#ffffff\"},\"shape\":{\"type\":\"star\",\"stroke\":{\"width\":0,\"color\":\"#000000\"},\"polygon\":{\"nb_sides\":5},\"image\":{\"src\":\"http://wiki.lexisnexis.com/academic/images/f/fb/Itunes_podcast_icon_300.jpg\",\"width\":100,\"height\":100}},\"opacity\":{\"value\":0.5,\"random\":false,\"anim\":{\"enable\":false,\"speed\":1,\"opacity_min\":0.1,\"sync\":false}},\"size\":{\"value\":4,\"random\":true,\"anim\":{\"enable\":false,\"speed\":40,\"size_min\":0.1,\"sync\":false}},\"line_linked\":{\"enable\":false,\"distance\":150,\"color\":\"#ffffff\",\"opacity\":0.4,\"width\":1},\"move\":{\"enable\":true,\"speed\":14,\"direction\":\"left\",\"random\":false,\"straight\":true,\"out_mode\":\"out\",\"bounce\":false,\"attract\":{\"enable\":false,\"rotateX\":600,\"rotateY\":1200}}},\"interactivity\":{\"detect_on\":\"canvas\",\"events\":{\"onhover\":{\"enable\":false,\"mode\":\"grab\"},\"onclick\":{\"enable\":true,\"mode\":\"repulse\"},\"resize\":true},\"modes\":{\"grab\":{\"distance\":200,\"line_linked\":{\"opacity\":1}},\"bubble\":{\"distance\":400,\"size\":40,\"duration\":2,\"opacity\":8,\"speed\":3},\"repulse\":{\"distance\":200,\"duration\":0.4},\"push\":{\"particles_nb\":4},\"remove\":{\"particles_nb\":2}}},\"retina_detect\":true}"},"eael_login_nonce":"d6dacb5138","eael_register_nonce":"c4baa38c3f","eael_lostpassword_nonce":"23ecc54de4","eael_resetpassword_nonce":"56dcc69388"}; 5489//# sourceURL=eael-general-js-extra 5490</script>
vendor: 1 bytes, line 5490
5490
5491<script id="eael-general-js" src="https://www.primeinc.com/wp-content/plugins/essential-addons-for-elementor-lite/assets/front-end/js/view/general.min.js?ver=6.8.5"></script>
vendor: 1 bytes, line 5491
5491
5492<script id="eael-2252-js" src="https://www.primeinc.com/wp-content/uploads/essential-addons-elementor/eael-2252.js?ver=1638979684"></script>
vendor: 1 bytes, line 5492
5492
5493<script id="page-links-to-js" src="https://www.primeinc.com/wp-content/plugins/page-links-to/dist/new-tab.js?ver=3.4.1"></script>
vendor: 1 bytes, line 5493
5493
5494<script id="swiper-js" src="https://www.primeinc.com/wp-content/plugins/elementor/assets/lib/swiper/v8/swiper.min.js?ver=8.4.5"></script>
vendor: 1 bytes, line 5494
5494
5495<script id="jet-tween-js-js" src="https://www.primeinc.com/wp-content/plugins/jet-elements/assets/js/lib/tweenjs/tweenjs.min.js?ver=2.0.2"></script>
vendor: 1 bytes, line 5495
5495
5496<script id="jet-elements-js-extra"> 5497var jetElements = {"ajaxUrl":"https://www.primeinc.com/wp-admin/admin-ajax.php","isMobile":"false","templateApiUrl":"https://www.primeinc.com/wp-json/jet-elements-api/v1/elementor-template","devMode":"false","mapboxToken":"","messages":{"invalidMail":"Please specify a valid e-mail"}}; 5498//# sourceURL=jet-elements-js-extra 5499</script>
vendor: 1 bytes, line 5499
5499
5500<script id="jet-elements-js" src="https://www.primeinc.com/wp-content/plugins/jet-elements/assets/js/jet-elements.min.js?ver=2.9.2.2"></script>
vendor: 1 bytes, line 5500
5500
5501<script id="wp-hooks-js" src="https://www.primeinc.com/wp-includes/js/dist/hooks.min.js?ver=7496969728ca0f95732d"></script>
vendor: 1 bytes, line 5501
5501
5502<script id="wp-i18n-js" src="https://www.primeinc.com/wp-includes/js/dist/i18n.min.js?ver=781d11515ad3d91786ec"></script>
vendor: 1 bytes, line 5502
5502
5503<script id="wp-i18n-js-after"> 5504wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 5505//# sourceURL=wp-i18n-js-after 5506</script>
vendor: 1 bytes, line 5506
5506
5507<script id="elementor-pro-frontend-js-before"> 5508var ElementorProFrontendConfig = {"ajaxurl":"https:\/\/www.primeinc.com\/wp-admin\/admin-ajax.php","nonce":"976e87d2ba","urls":{"assets":"https:\/\/www.primeinc.com\/wp-content\/plugins\/elementor-pro\/assets\/","rest":"https:\/\/www.primeinc.com\/wp-json\/"},"settings":{"lazy_load_background_images":true},"popup":{"hasPopUps":true},"shareButtonsNetworks":{"facebook":{"title":"Facebook","has_counter":true},"twitter":{"title":"Twitter"},"linkedin":{"title":"LinkedIn","has_counter":true},"pinterest":{"title":"Pinterest","has_counter":true},"reddit":{"title":"Reddit","has_counter":true},"vk":{"title":"VK","has_counter":true},"odnoklassniki":{"title":"OK","has_counter":true},"tumblr":{"title":"Tumblr"},"digg":{"title":"Digg"},"skype":{"title":"Skype"},"stumbleupon":{"title":"StumbleUpon","has_counter":true},"mix":{"title":"Mix"},"telegram":{"title":"Telegram"},"pocket":{"title":"Pocket","has_counter":true},"xing":{"title":"XING","has_counter":true},"whatsapp":{"title":"WhatsApp"},"email":{"title":"Email"},"print":{"title":"Print"},"x-twitter":{"title":"X"},"threads":{"title":"Threads"}},"facebook_sdk":{"lang":"en_US","app_id":""},"lottie":{"defaultAnimationUrl":"https:\/\/www.primeinc.com\/wp-content\/plugins\/elementor-pro\/modules\/lottie\/assets\/animations\/default.json"}}; 5509//# sourceURL=elementor-pro-frontend-js-before 5510</script>
vendor: 1 bytes, line 5510
5510
5511<script id="elementor-pro-frontend-js" src="https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/js/frontend.min.js?ver=4.3.1"></script>
vendor: 1 bytes, line 5511
5511
5512<script id="pro-elements-handlers-js" src="https://www.primeinc.com/wp-content/plugins/elementor-pro/assets/js/elements-handlers.min.js?ver=4.3.1"></script>
vendor: 1 bytes, line 5512
5512
5513<script id="jet-tabs-frontend-js-extra"> 5514var JetTabsSettings = {"ajaxurl":"https://www.primeinc.com/wp-admin/admin-ajax.php","isMobile":"false","templateApiUrl":"https://www.primeinc.com/wp-json/jet-tabs-api/v1/elementor-template","devMode":"false","isSelfRequest":""}; 5515//# sourceURL=jet-tabs-frontend-js-extra 5516</script>
vendor: 1 bytes, line 5516
5516
5517<script id="jet-tabs-frontend-js" src="https://www.primeinc.com/wp-content/plugins/jet-tabs/assets/js/jet-tabs-frontend.min.js?ver=2.3.4"></script>
vendor: 1 bytes, line 5517
5517
5518<script id="gradient-button-elementor-frontend-js-js-extra"> 5519var GradientButtonElementorFrontendConfig = {"ajaxurl":"https://www.primeinc.com/wp-admin/admin-ajax.php","nonce":"f2932400a9"}; 5520//# sourceURL=gradient-button-elementor-frontend-js-js-extra 5521</script>
vendor: 1 bytes, line 5521
5521
5522<script id="gradient-button-elementor-frontend-js-js" src="https://www.primeinc.com/wp-content/plugins/gradient-button-for-elementor/assets/js/frontend.min.js?ver=1.0.11"></script>
vendor: 1 bytes, line 5522
5522
5523<script id="jet-blog-js-extra"> 5524var JetBlogSettings = {"ajaxurl":"https://www.primeinc.com/transportation-solutions/?nocache=1790926866&jet_blog_ajax=1"}; 5525//# sourceURL=jet-blog-js-extra 5526</script>
vendor: 1 bytes, line 5526
5526
5527<script id="jet-blog-js" src="https://www.primeinc.com/wp-content/plugins/jet-blog/assets/js/jet-blog.min.js?ver=2.4.10.1"></script>
vendor: 1 bytes, line 5527
5527
5528<script id="wp-emoji-settings" type="application/json"> 5529{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.primeinc.com/wp-includes/js/wp-emoji-release.min.js?ver=a73fd9d6cecc7d01bec96bffe1b268fb"}} 5530</script>
vendor: 1 bytes, line 5530
5530
5531<script type="module"> 5532/*! This file is auto-generated */ 5533var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 5534//# sourceURL=https://www.primeinc.com/wp-includes/js/wp-emoji-loader.min.js 5535</script>
5535 5536 5537 5538
5538<script type="text/javascript"> 5539 5540 var referral_name = ''; 5541 5542 jQuery(document).ready(function(){ 5543 5544 if (readCookie('passthrough_referer') != null) { 5545 referral_name = readCookie('passthrough_referer'); 5546 } else { 5547 if(jQuery("#referral_name").length > 0){ 5548 referral_name = jQuery("#referral_name").val(); 5549 } 5550 } 5551 if(referral_name != ''){ 5552 var querystring = "r="+referral_name; 5553 5554 //hard coded field on short form - hidden field for passthrough referer 5555 jQuery("#input_2_7").val(referral_name); 5556 5557 jQuery('a:not([href*="#elementor-action"],[href*="tel:"],[href*="%23elementor-action"])').each(function() { 5558 var href = jQuery(this).attr('href'); 5559 console.log('link to replace: ' + href); 5560 swapGeneralPhoneNumbers(referral_name); 5561 if (href) { 5562 var connector = href.match(/\?/) ? '&' : '?'; 5563 var hashIdx = href.indexOf('#'); 5564 var hash = ""; 5565 var hrefWithoutHash = href; 5566 if(hashIdx >= 0){ 5567 hash = href.substring(hashIdx); 5568 hrefWithoutHash = href.substring(0,hashIdx); 5569 } 5570 href = hrefWithoutHash + connector + querystring + hash; 5571 console.log('link switched to: ' + href); 5572 5573 jQuery(this).attr('href', href); 5574 5575 } 5576 5577 }); 5578 5579 jQuery('a[href*="#elementor-action"],[href*="tel:"],a[href*="%23elementor-action"]').click(function() { 5580 setTimeout(function(){ 5581 var referral_name = ''; 5582 5583 if (readCookie('passthrough_referer') != null) { 5584 referral_name = readCookie('passthrough_referer'); 5585 } else { 5586 if(jQuery("#referral_name").length > 0){ 5587 referral_name = jQuery("#referral_name").val(); 5588 } 5589 } 5590 5591 swapGeneralPhoneNumbers(referral_name); 5592 5593 jQuery('.elementor-location-popup a:not([href*="#elementor-action"],[href*="%23elementor-action"])').each(function(){ 5594 var href = jQuery(this).attr('href'); 5595 console.log('link to replace: ' + href); 5596 5597 if (href) { 5598 var connector = href.match(/\?/) ? '&' : '?'; 5599 var hashIdx = href.indexOf('#'); 5600 var hash = ""; 5601 var hrefWithoutHash = href; 5602 if(hashIdx >= 0){ 5603 hash = href.substring(hashIdx); 5604 hrefWithoutHash = href.substring(0,hashIdx); 5605 } 5606 href = hrefWithoutHash + connector + querystring + hash; 5607 console.log('link switched to: ' + href); 5608 5609 jQuery(this).attr('href', href); 5610 5611 } 5612 }); 5613 5614 if(referral_name != ''){ 5615 //hard coded field on short form - hidden field for passthrough referer 5616 jQuery("#input_2_7").val(referral_name); 5617 } 5618 }, 250); 5619 }); 5620 } 5621 5622 }); 5623 </script>
5623 5624
5625<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a442100a5be38158',t:'MTc5MDkyNjg2NQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
5625<script type="text/javascript" src="/_Incapsula_Resource?SWJIYLWA=719d34d31c8e3a6e6fffd425f7e032f3&ns=5&cb=426414536" async></script>
5625</body> 5626</html>
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.