UNPKG

@luminati-io/luminati-proxy

Version:

A configurable local proxy for luminati.io

1,104 lines (1,103 loc) 27.8 kB
@first_color: #004d74; @first_odd: #4a8398; @grey: #ccdbe3; @grey_border: #e0e9ee; @light_grey: #f5f5f5; @dark_grey: #d7d7d7; @light: #B4E6EE; @x_light: #E6F6F9; @xx_light: #F3FBFC; @dark: #003d5b; @error_dark: #eb3a28; @error: #ef6153; @error_x_light: #ffebeb; @warning: #fff5d7; @blue_grey: #6694AC; @black: #333333; @link: #428bca; @tooltip: #154055; @chrome_border: #d0d0d0; @font-face { font-family: 'Lato'; font-style: normal; font-weight: 400; src: local('Lato Regular'), local('Lato-Regular'), url(/font/lato_regular.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; } @font-face { font-family: 'Lato'; font-style: normal; font-weight: 700; src: local('Lato Bold'), local('Lato-Bold'), url(/font/lato_bold.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; } @keyframes field_highlight { 0% { border: 1px solid white; } 50% { border: 1px solid @first_color; margin-left: -5px; margin-right: -5px; padding-left: 8px; padding-right: 8px; } 100% { border: 1px solid white; } } .panel_container() { .tables_container, .header_container { table td, table th, div.chrome_table div.chrome_td, div.chrome_table div.chrome_th { &:nth-child(2) { border-left: none; } label { margin: 0; } .form-check { text-align: center; } input[type=checkbox] { margin: 0; top: 2px; } } table th, div.chrome_table div.chrome_th { &:first-child { text-align: center }; } } } a.link, button.link { cursor: pointer; color: @link; outline: 3px solid transparent; border: 1px solid transparent; background: none; text-decoration: none; &:hover { box-shadow: @link -2px 0 0 1px, @link 2px 0 0 1px; -webkit-box-shadow: @link -2px 0 0 1px, @link 2px 0 0 1px; border-radius: 0.15em; background-color: @link; border-color: @link; color: white; } } h1 { font-size: 36px; font-weight: 500; margin: 0; } h2 { color: @first_color; font-size: 36px; font-weight: bold; letter-spacing: 1px; margin: 0; } h3 { font-size: 24px; letter-spacing: 0.6px; font-weight: bold; margin: 0; line-height: 1; } h4 { margin: 0; } .btn_lpm { padding-left: 11px; padding-right: 11px; width: auto; min-width: 140px; height: 32px; border-radius: 2px; background-color: white; border: solid 1px @grey; color: @first_color; font-size: 16px; font-weight: 300; padding-top: 3px; margin: 0 2px; box-shadow: none; &:hover, &.active { background-color: @first_color; border-color: @first_color; color: white; } &:focus { outline: none !important; } } .btn_lpm_primary { color: white; background-color: @first_color; border-color: @first_color; &:hover { background-color: @first_odd; border-color: @first_odd; } &:focus { color: white; } } .btn_lpm.disabled { background-color: @grey; border-color: @grey; cursor: default; color: @first_color; &:active { color: white; } &:hover { color: @first_color; } } .btn_lpm_big { line-height: 0; font-size: 32px; padding-bottom: 9px; border-radius: 4px; font-weight: 700; width: 280px; height: 60px; } .btn_lpm_small { height: 24px; font-size: 12px; width: auto; min-width: auto; } .btn_copy { font-size: 9px; padding: 0; width: 35px; height: 20px; font-weight: 900; margin-left: 10px; position: relative; top: -1px; &:hover { color: white; } } .vbox { display: flex; flex-direction: column !important; position: relative; } .flag-icon { border-radius: 2px; margin-right: 2px; } .howto { flex: 1; .nav_header { padding: 0 15px 10px; } .nav_tabs { margin-bottom: 15px; } h1.header { width: auto; } .howto_panel { flex: 1; margin: 0 15px; display: flex; .panel_inner { width: 600px; min-width: 550px; } .gifs_inner { flex: 1; .gif { flex: 1; margin-left: 20px; max-width: 720px; min-width: 400px; background-repeat: no-repeat; background-size: contain; &.chrome_mac { background-image: url(/img/ins_chrome_mac.gif); } &.chrome_win { background-image: url(/img/ins_chrome_win.gif); } &.ie { background-image: url(/img/ins_ie.gif); } &.firefox { background-image: url(/img/ins_firefox.gif); } &.safari { background-image: url(/img/ins_safari.gif); } } } } .well { box-shadow: none; border-radius: 3px; background-color: white; } .browser_instructions .header_well { font-size: 14px; font-weight: bold; display: flex; align-items: center; p { margin: 0 10px 0 5px; } select { background-color: white; width: auto; } } .code_instructions .header_well { text-align: center; } .instructions_well { position: relative; margin: 10px 0; padding: 5px; pre { margin: 0; border: none; font-size: 12px; background-color: white; .btn_copy { position: absolute; top: 12px; right: 9px; } } } .btn_lang { margin: 0 2px; } } .nav_header { position: relative; h3 { height: 37px; line-height: 44px; } .subtitle { margin-bottom: 15px; } .warning { position: absolute; top: 0; right: 0; } } .nav_top { display: flex; position: fixed; background-color: @light_grey; top: 0; height: 60px; width: 100%; z-index: 20; .logo { height: 60px; width: 50px; background-color: @x_light; display: inline-block; background-image: url('img/lum_logo_short.svg'); background-position: center; background-repeat: no-repeat; background-size: 40px; cursor: pointer; &.lock { pointer-events: none; opacity: 0.4; cursor: default; } } .nav_top_right { margin-right: 10px; flex: 1; display: flex; align-items: center; .patent_note { position: absolute; top: -4px; left: 75px; font-size: 9px; } .notif_icon { text-align: right; flex: 1; .notif { position: relative; } .circle_wrapper { width: 14px; height: 14px; background-color: @first_color; border-radius: 50%; position: absolute; right: -5px; top: -4px; .circle { font-size: 11px; font-weight: bold; color: white; position: relative; top: -5px; left: -3.5px; } } .icon { background-image: url('img/bell.svg'); width: 18px; height: 18px; position: absolute; right: 15px; top: -9px; cursor: pointer; } } .cpu_warning { white-space: nowrap; margin-right: 40px; .glyphicon { margin-right: 5px; } } } .dropdown { margin-right: 10px; white-space: nowrap; } .dropdown-toggle { position: relative; text-decoration: none; } .dropdown-menu li a { color: @first_color; text-decoration: none; cursor: pointer; .flag-icon { margin-right: 5px; } } .schema { width: 100%; height: 100%; display: flex; justify-content: center; .schema_component { position: relative; top: 5px; width: 100%; max-width: 700px; white-space: nowrap; font-size: 13px; position: relative; display: flex; align-items: center; margin-right: 60px; .layer { margin-right: 32px; cursor: default; position: relative; z-index: 10; flex: 1; .layer_btn { text-align: center; border-radius: 4px; border: solid 1px #cecece; padding: 2px 5px; margin: 3px 0; background: white; } &:last-child { margin-right: 0; } &.active .layer_btn { border-color: @first_color; } &.lpm { .icon { width: 16px; height: 16px; background-image: url(/img/lum_logo_short.svg); display: inline-block; position: relative; top: 3px; left: -2px; } } &.port_numbers { position: relative; top: -8px; font-size: 12px; line-height: 1.2; margin-right: 20px; margin-left: -14px; flex: 0; } .globe { width: 18px; margin-right: 4px; position: relative; top: -1px; } .flag-icon { font-size: 15px; top: 1px; } .arr { position: absolute; left: -8px; border-left: 8px solid @first_color; border-top: 4px solid transparent; border-bottom: 4px solid transparent; top: 0; bottom: 0; height: 0; margin-top: auto; margin-bottom: auto; } } .line { position: absolute; width: 100%; border-bottom: solid 1px; top: 0; left: 0; right: 0; bottom: 0; margin-top: auto; margin-bottom: auto; height: 0; } @media (max-width: 1200px) { width: auto; font-size: 12px; .layer { margin-right: 22px; &.port_numbers { margin-right: 18px; font-size: 11px; } .layer_btn { padding: 0 4px; } } } } } } .api_link { margin-left: 3px; } .__react_component_tooltip { cursor: initial !important; white-space: normal; max-width: 300px; text-align: left; &.type-info { color: #303942; background-color: white; border: solid 1px #cdcdcd; opacity: 1; padding: 6px 12px; filter: drop-shadow(0px 2px 1px rgba(0, 0, 0, 0.15)); -webkit-filter: drop-shadow(0px 2px 1px rgba(0, 0, 0, 0.15)); &:after, &:before { content: none; } } &.type-light { padding: 4px 7px; border: solid 1px @tooltip; color: @first_color; &.place-top { &:after { border-top-color: @tooltip; border-top-width: 6px; border-left: 6px solid transparent; border-right: 6px solid transparent; bottom: -6px; margin-left: -6px; } } &.place-bottom { &:after { border-bottom-color: @tooltip; border-bottom-width: 6px; border-left: 6px solid transparent; border-right: 6px solid transparent; top: -6px; margin-left: -6px; } } &.place-left { &:after { border-left-color: @tooltip; } } &.place-right { &:after { border-right-color: @tooltip; } } } } .code_mirror_wrapper { position: relative; height: auto !important; padding-left: 5px !important; padding-right: 10px !important; &.error { border-color: @error_dark; } &.json { max-width: 300px; } .copy_btn { position: absolute; z-index: 10; top: 5px; right: 5px; } } select, input[type=number], input[type=text], input[type=password], input[type=email], input[type=url], textarea, .code_mirror_wrapper { min-width: 100px; width: auto; height: 32px; background-color: white; border: solid 1px @grey; border-radius: 3px; padding-left: 10px; padding-right: 25px; font-weight: 300; -webkit-appearance: none; -moz-appearance: none; appearance: none; &:focus { outline: none; border: solid 1px @first_color; } &::placeholder { color: #8e8e8e; } &[disabled], &[disabled]::placeholder { color: #8e8e8e; } } input[disabled], select[disabled] { background-color: @light_grey; border-color: @grey_border; } textarea { height: auto; resize: vertical; } select { background: url(/img/down.svg) no-repeat; background-position: right 10px center; &[disabled] { color: #8e8e8e; } } input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; } input[type=number] { -moz-appearance: textfield; } input[type=number], input[type=text] { padding-right: 10px; } label.form-check-label { font-weight: 300; cursor: pointer; } input[type=checkbox] { margin-right: 5px; position: relative; top: 1px; } input.regex { border-top-left-radius: 0; border-top-right-radius: 0; } input[type=url].error { border-color: @error_dark; } .select_multiple { min-width: 113px; input { min-width: 0; } &.status { min-width: 130px; } } ul.bullets { padding-left: 0; margin-bottom: 0; li { list-style: none; &::before { color: @link; content: "\2022"; font-size: 13px; padding-right: 6px; } } } .pins_field { display: flex; .pins { display: flex; flex-flow: wrap; .pin { background-color: @light_grey; border: 1px solid @grey_border; border-radius: 3px; padding: 3px; display: flex; margin: 0 6px 2px 0; &.active { border-color: @first_color; } &.disabled { background-color: @dark_grey; } .x, .v { width: 16px; font-size: 10px; text-align: center; cursor: pointer; &:hover { background-color: @first_color; color: white; } .glyphicon-remove { position: relative; top: 1px; } } .any { font-size: 12px; margin: 0 5px; padding: 0 2px; text-align: center; border: none; background-color: @light_grey; &:hover { background-color: @first_color; color: white; } } .content { padding: 0 2px 0 2px; input { width: 120px; height: 23px; border: none; padding: 0; } } } } .add_pin { margin-left: 0; cursor: pointer; height: 31px; .glyphicon-plus { margin-left: 5px; } } } span.icon_link { color: @first_color; cursor: pointer; display: inline-flex; justify-content: center; align-items: center; width: 18px; height: 18px; vertical-align: middle; border-radius: 2px; font-size: 14px; position: relative; .img_icon { background-size: contain; background-position: bottom; background-repeat: no-repeat; width: 90%; height: 90%; } &:hover { background-color: @first_color; color: white; .img_icon { filter: grayscale(100%) brightness(3); } } &.right i { left: 1px; } &.top i { top: 0; } &.small { top: -2px; width: 14px; height: 14px; i { font-size: 11px; } } &.disabled { color: #ccc; cursor: default; &:hover { background: inherit; color: #ccc; box-shadow: none; -webkit-box-shadow: none; } } } .loader_small { cursor: default; display: flex; align-items: center; margin-top: 5px; .spinner { background-image: url(/img/loader.gif); width: 30px; height: 30px; background-size: contain; margin-left: 10px; visibility: hidden; &.show { visibility: visible; } } .saving_label { margin-left: 5px; &:not(.saving) { text-decoration: underline; color: grey; } } } .loader_wrapper { position: fixed; z-index: 5000; .mask { background-color: @first_color; opacity: 0.1; width: 100%; height: 100%; position: fixed; top: 0; left: 0; } .loader { display: flex; align-items: center; background-color: white; border-radius: 50%; width: 130px; height: 130px; position: fixed; top: 0; bottom: 0; margin: auto; left: 0; right: 0; z-index: 10; box-shadow: 0px 4px 6px 0 @dark_grey; .spinner { background: url(/img/loader.gif); width: 88px; height: 88px; margin: auto; } } } .warning { background-color: @warning; &.error { background-color: @error_x_light; color: @error_dark; } margin: 10px 0; font-size: 14px; color: @dark; display: flex; align-items: center; border-radius: 2px; padding: 10px 20px; position: relative; .warning_icon { background: url(/img/warning.svg); width: 18px; min-width: 18px; height: 18px; margin-right: 22px; } .close_btn { position: absolute; right: 1px; top: 6px; } } .panel { margin-bottom: 10px; box-shadow: none; -webkit-box-shadow: none; border: 1px solid @chrome_border; border-radius: 0; &.no_border { border: none; .panel_body { padding: 5px 0 0 0; } .panel_heading { padding-top: 0; } } .panel_heading { padding: 10px 5px 0; position: relative; h2 { font-size: 18px; } .buttons_wrapper { position: absolute; right: 5px; top: 5px; } } .panel_body { padding: 5px; &.with_table { padding-bottom: 0; } } .panel_footer { padding: 20px; position: relative; } table { margin-bottom: 0; &.table-condensed { font-size: 14px; td, th { padding: 1px 10px; } } tr { cursor: pointer; &:hover td { background-color: @xx_light; } } thead tr th { font-weight: 300; font-size: 14px; color: @blue_grey; border-bottom: solid 1px @grey_border; } } } .modal { .modal-content { border: 0; width: 640px; } .modal-header { padding: 15px 40px 15px 15px; border: 0; h4.modal-title, h4 { font-size: 24px; font-weight: bold; text-align: center; padding-top: 15px; line-height: 0; } .close_icon { z-index: 100; background: url(/img/delete.svg); width: 16px; height: 16px; opacity: 1; position: absolute; top: 20px; right: 20px; } &.no_header { padding: 10px; } } .modal-body { padding: 15px 20px 0; } .modal-footer { padding: 15px 20px; border: 0; text-align: right; .default_footer { text-align: right; .btn.btn_lpm { width: auto; min-width: auto; } } } } .ic_warning { background-image: url(/img/ic_warning.svg); width: 15px; height: 13px; display: inline-block; position: relative; top: 2px; margin: 0 2px; } .ReactVirtualized__Table__headerTruncatedText { position: relative; top: 2px; } .ReactVirtualized__Grid__innerScrollContainer { min-height: 100%; } .zone_tooltip { ul { padding-top: 3px !important; padding-left: 3px !important; } } .field_row_wrapper { .field_row { display: inline-block; .field_row_inner { display: flex; align-items: center; padding: 3px; .info_icon { display: inline-block; position: relative; top: 1px; left: 5px; } &.disabled { color: @grey; input, select { background-color: @light_grey; border-color: @grey_border; } label { cursor: default; } } &.animated { border-radius: 3px; animation: field_highlight 900ms; animation-iteration-count: 3; border: 1px solid white; } .field { display: flex; align-items: center; } } .double_field { display: flex; } .double_field>* { &:first-child { margin-right: 5px; } &:last-child { margin-left: 5px; } } } } .flex_auto { flex: auto; } .browser_icon { width: 20px; height: 20px; background-size: contain; display: inline-block; &.firefox { background-image: url(/img/icon_firefox.jpg); } &.chrome { background-image: url(/img/icon_chrome.jpg); } &.explorer { background-image: url(/img/icon_explorer.png); } &.safari { background-image: url(/img/icon_safari.jpg); } } .logo_icon { height: 20px; background-size: contain; display: inline-block; background-repeat: no-repeat; margin-right: 4px; &.crawlera { background-image: url(/img/logo_crawlera.svg); width: 20px; } &.import { background-image: url(/img/logo_import.svg); width: 100px; } &.legs { background-image: url(/img/logo_80legs.svg); width: 56px; } } .select_zone { display: flex; align-items: center; } .hbox { white-space: pre-wrap; flex: 1; display: flex; align-items: center; } .alert.alert-info { margin: 0 15px 20px; } .default_cursor { cursor: default; } .page-body { padding: 0; margin-left: 50px; a { color: @link; outline: 3px solid transparent; border: 1px solid transparent; &:hover { color: white; background: @link; border-color: @link; text-decoration: none; box-shadow: @link -2px 0 0 1px, @link 2px 0 0 1px; border-radius: .15em; } } .messages a.custom_link:hover { background: none; border: none; box-shadow: none; } } .pointer { cursor: pointer; } .opened, .table-hover>tbody>tr.opened:hover { background-color: @x_light; } .table-hover>tbody>tr>td { border: none; } .table-hover .no-hover:hover { background: none; } .modal-open .modal { overflow-y: scroll; } .pagination>li>a:hover, .pagination>.disabled>a:hover { box-shadow: none; } .pagination { margin: 0; .active>a, .active>a:focus, .active>span { background: none; color: @first_color; font-weight: bold; &:hover { background: none; color: @first_color; font-weight: bold; text-decoration: none; } } li>a, li>span, li>a:focus { &:hover { border: none; background: none; color: white; background: @link; text-decoration: none; } font-size: 14px; padding: 0 5px; color: @link; line-height: 1.4; background: none; border: none; } li.disabled>a { padding: 0 2px; } } .pagination_panel { height: 35px; margin-right: 5px; .pagination { display: inline-block; } .select_multiple { float: right; width: auto; margin-left: 5px; background-position: right 7px center; padding: 0 4px; .react_select__control { height: 24px; width: 90px; } } .table_buttons { display: inline-block; float: right; position: relative; top: -3px; } .numbers { float: right; margin-left: 5px; } &.bottom { margin-top: 5px; } } .tooltip_block { width: 100%; height: 100%; } .rbt { &.open { width: 100%; min-width: 100px; &.clearfix:before { content: none; } } .rbt-input { padding: 1px 25px 1px 10px; color: @first_color; border-radius: 3px; border: solid 1px @grey; -webkit-box-shadow: none; box-shadow: none; cursor: text; &[disabled] { cursor: default; background-color: @light_grey; border-color: @grey_border; color: @grey; } } .rbt-input-wrapper { input { height: auto; } position: relative; top: 5px; } .rbt-input-hint-container { input { width: 100%; } .rbt-input-hint { top: 5px !important; } } .dropdown-menu { width: 100%; .dropdown-item { color: @first_color; mark { color: @first_color; } } } } .modal-backdrop.fade.in { opacity: 0.15; }