UNPKG

@senx/discovery-widgets

Version:

Discovery Widgets Elements

481 lines 14.7 kB
/*! * Copyright 2025 SenX S.A.S. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /*! * Copyright 2022-2024 SenX S.A.S. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ :host { display: block; width: 100%; height: 100%; /** * @author: Alumuko https://github.com/alumuko/alumuko * @copyright: Copyright (c) 2021 Alumuko. All rights reserved. * @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php * @website: https://github.com/alumuko/vanilla-datetimerange-picker * * Special thanks to Dan Grossman. * This program is base on Dan Grossman's bootstrap-daterangepicker (version 3.1) * I just changed the code a bit to not need jquery. */ } :host .wrapper { display: flex; flex-direction: row; align-items: stretch; justify-content: stretch; } :host input.discovery-input { margin: 0.25rem 0; display: inline-block; position: relative; font-size: var(--warp-view-input-font-size, 1rem); border-radius: 0; border: none; border-top: 1px solid var(--warp-view-input-border-color, #c0c0c0); border-bottom: 1px solid var(--warp-view-input-border-color, #c0c0c0); color: var(--warp-view-input-label-color, #404040); background-color: var(--warp-view-input-bg-color, #ffffff); vertical-align: middle; width: calc(100% - 0.75rem); height: 34px; padding: 1px 5px; } :host input.discovery-input[disabled] { background-color: var(--warp-view-input-disabled-bg-color, #c0c0c0); color: var(--warp-view-input-disabled-label-color, #404040); border: 1px solid var(--warp-view-input-disabled-border-color, #c0c0c0); } :host input.discovery-input:focus { outline: 0; box-shadow: 0 0 0 0.25rem var(--warp-view-input-focus-outline-color, rgba(13, 110, 253, 0.25)); } :host button.discovery-btn { margin: 0.25rem 0.125rem; display: inline-block; font-weight: 400; line-height: 1.5em; text-align: center; text-decoration: none; vertical-align: middle; cursor: pointer; font-size: var(--warp-view-button-font-size, 1rem); border: 1px solid var(--warp-view-button-border-color, #004eff); padding: var(--warp-view-button-padding, 0.375rem 0.75rem); color: var(--warp-view-button-label-color, #ffffff); background-color: var(--warp-view-button-bg-color, #004eff); width: var(--warp-view-button-width, auto); border-radius: var(--warp-view-button-border-radius, 0.25rem); max-width: 100%; } :host button.discovery-btn.secondary { border: 1px solid var(--warp-view-button-secondary-border-color, #a0a0a0); background-color: var(--warp-view-button-secondary-bg-color, #a0a0a0); color: var(--warp-view-button-secondary-label-color, #ffffff); } :host button.discovery-btn.prev { margin: 0.25rem 0; border: 1px solid var(--warp-view-input-border-color, #c0c0c0); color: var(--warp-view-input-label-color, #404040); background-color: var(--warp-view-input-bg-color, #ffffff); border-radius: var(--warp-view-button-border-radius, 0.25rem); border-top-right-radius: 0; border-bottom-right-radius: 0; width: auto !important; } :host button.discovery-btn.prev:hover { background-color: var(--warp-view-button-secondary-bg-color, #c0c0c0); } :host button.discovery-btn.next { margin: 0.25rem 0; border: 1px solid var(--warp-view-input-border-color, #c0c0c0); color: var(--warp-view-input-label-color, #404040); background-color: var(--warp-view-input-bg-color, #ffffff); border-radius: var(--warp-view-button-border-radius, 0.25rem); border-top-left-radius: 0; border-bottom-left-radius: 0; width: auto !important; } :host button.discovery-btn.next:hover { background-color: var(--warp-view-button-secondary-bg-color, #c0c0c0); } :host button:disabled { background-color: var(--warp-view-button-disabled-bg-color, #c0c0c0) !important; color: var(--warp-view-button-disabled-label-color, #404040) !important; border: 1px solid var(--warp-view-button-disabled-border-color, #c0c0c0) !important; } :host .daterangepicker { position: absolute; color: var(--warp-view-tooltip-label-color, #404040); background-color: var(--warp-view-tooltip-bg-color, #ffffff); border-radius: 4px; border: 1px solid var(--warp-view-tooltip-border-color, #c0c0c0); width: 528px; max-width: none; padding: 0; margin-top: 7px; top: 100px; left: 20px; z-index: 3001; display: none; font-size: 15px; line-height: 1em; } :host .daterangepicker .ranges { display: none; } :host .daterangepicker.with-range { width: 669px; } :host .daterangepicker.with-range .ranges { display: block; } :host .daterangepicker.sm { width: 278px; } :host .daterangepicker .dp-wrapper { display: flex; flex-direction: row; flex-wrap: wrap; } :host .daterangepicker:before, :host .daterangepicker:after { position: absolute; display: inline-block; border-bottom-color: var(--warp-view-tooltip-border-color, #c0c0c0); content: ""; } :host .daterangepicker:before { top: -7px; border-right: 7px solid transparent; border-left: 7px solid transparent; border-bottom: 7px solid var(--warp-view-tooltip-border-color, #c0c0c0); } :host .daterangepicker:after { top: -6px; border-right: 6px solid transparent; border-bottom: 6px solid var(--warp-view-tooltip-bg-color, #ffffff); border-left: 6px solid transparent; } :host .daterangepicker.opensleft:before { right: var(--pos, 9px); } :host .daterangepicker.opensleft:after { right: calc(var(--pos, 9px) + 1); } :host .daterangepicker.openscenter:before { left: 0; right: 0; width: 0; margin-left: auto; margin-right: auto; } :host .daterangepicker.openscenter:after { left: 0; right: 0; width: 0; margin-left: auto; margin-right: auto; } :host .daterangepicker.opensright:before { left: var(--pos, 9px); } :host .daterangepicker.opensright:after { left: calc(var(--pos, 9px) + 1px); } :host .daterangepicker.drop-up { margin-top: -7px; } :host .daterangepicker.drop-up:before { top: initial; bottom: -7px; border-bottom: initial; border-top: 7px solid var(--warp-view-tooltip-border-color, #c0c0c0); } :host .daterangepicker.drop-up:after { top: initial; bottom: -6px; border-bottom: initial; border-top: 6px solid var(--warp-view-tooltip-bg-color, #ffffff); } :host .daterangepicker.single .daterangepicker .ranges, :host .daterangepicker.single .drp-calendar { float: none; } :host .daterangepicker.single .drp-selected { display: none; } :host .daterangepicker.show-calendar .drp-calendar { display: block; } :host .daterangepicker.show-calendar .drp-buttons { display: block; } :host .daterangepicker.auto-apply .drp-buttons { display: none; } :host .daterangepicker .drp-calendar { display: none; max-width: 270px; } :host .daterangepicker .drp-calendar.left { padding: 8px 0 8px 8px; } :host .daterangepicker .drp-calendar.right { padding: 8px; } :host .daterangepicker .drp-calendar.single .calendar-table { border: none; } :host .daterangepicker .calendar-table .next span, :host .daterangepicker .calendar-table .prev span { color: var(--warp-view-tooltip-bg-color, #ffffff); border: solid var(--warp-view-font-color, #404040); border-width: 0 2px 2px 0; border-radius: 0; display: inline-block; padding: 3px; } :host .daterangepicker .calendar-table .next span { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); } :host .daterangepicker .calendar-table .prev span { transform: rotate(135deg); -webkit-transform: rotate(135deg); } :host .daterangepicker .calendar-table th, :host .daterangepicker .calendar-table td { white-space: nowrap; text-align: center; vertical-align: middle; min-width: 32px; width: 32px; height: 24px; line-height: 24px; font-size: 12px; border-radius: 4px; border: 1px solid transparent; cursor: pointer; } :host .daterangepicker .calendar-table { border: 1px solid var(--warp-view-tooltip-bg-color, #ffffff); border-radius: 4px; background-color: var(--warp-view-tooltip-bg-color, #ffffff); } :host .daterangepicker .calendar-table table { width: 100%; margin: 0; border-spacing: 0; border-collapse: collapse; } :host .daterangepicker td.available:hover, :host .daterangepicker th.available:hover { background-color: var(--warp-view-pagination-hover-bg-color, #c0c0c0); border-color: transparent; color: inherit; } :host .daterangepicker td.week, :host .daterangepicker th.week { font-size: 80%; color: var(--warp-view-pagination-hover-color, #c0c0c0); } :host .daterangepicker td.off, :host .daterangepicker td.off.in-range, :host .daterangepicker td.off.start-date, :host .daterangepicker td.off.end-date { background-color: var(--warp-view-tooltip-bg-color, #ffffff); border-color: transparent; color: var(--warp-view-pagination-hover-color, #404040); } :host .daterangepicker td.in-range { background-color: var(--warp-view-pagination-hover-bg-color, #c0c0c0); border-color: transparent; color: var(--warp-view-pagination-hover-color, #404040); border-radius: 0; } :host .daterangepicker td.start-date { border-radius: 4px 0 0 4px; } :host .daterangepicker td.end-date { border-radius: 0 4px 4px 0; } :host .daterangepicker td.start-date.end-date { border-radius: 4px; } :host .daterangepicker td.active, :host .daterangepicker td.active:hover { background-color: var(--warp-view-button-bg-color, #004eff); border-color: transparent; color: var(--warp-view-button-label-color, #ffffff); } :host .daterangepicker th.month { width: auto; } :host .daterangepicker td.disabled, :host .daterangepicker option.disabled { color: var(--warp-view-button-secondary-label-color, #404040); cursor: not-allowed; text-decoration: line-through; } :host .daterangepicker select.monthselect, :host .daterangepicker select.yearselect { font-size: 12px; padding: 1px; height: auto; margin: 0; cursor: default; } :host .daterangepicker select.monthselect { margin-right: 2%; width: 56%; } :host .daterangepicker select.yearselect { width: 40%; } :host .daterangepicker select.hourselect, :host .daterangepicker select.minuteselect, :host .daterangepicker select.secondselect, :host .daterangepicker select.ampmselect { width: 50px; margin: 0 auto; background: var(--warp-view-input-bg-color, #ffffff); border: 1px solid var(--warp-view-input-border-color, #c0c0c0); color: var(--warp-view-input-label-color, #404040); padding: 2px; outline: 0; font-size: 12px; } :host .daterangepicker .calendar-time { text-align: center; margin: 4px auto 0 auto; line-height: 30px; position: relative; } :host .daterangepicker .calendar-time select.disabled { color: var(--warp-view-button-secondary-border-color, #c0c0c0); cursor: not-allowed; } :host .daterangepicker .drp-buttons { clear: both; text-align: right; padding: 8px; border-top: 1px solid var(--warp-view-tooltip-border-color, #c0c0c0); display: none; line-height: 12px; vertical-align: middle; } :host .daterangepicker .drp-selected { display: inline-block; font-size: 12px; padding-right: 8px; } :host .daterangepicker .drp-buttons .btn { margin-left: 8px; font-size: 12px; font-weight: bold; padding: 4px 8px; } :host .daterangepicker.show-ranges.single.rtl .drp-calendar.left { border-right: 1px solid var(--warp-view-tooltip-border-color, #c0c0c0); } :host .daterangepicker.show-ranges.single.ltr .drp-calendar.left { border-left: 1px solid var(--warp-view-tooltip-border-color, #c0c0c0); } :host .daterangepicker.show-ranges.rtl .drp-calendar.right { border-right: 1px solid var(--warp-view-tooltip-border-color, #c0c0c0); } :host .daterangepicker.show-ranges.ltr .drp-calendar.left { border-left: 1px solid var(--warp-view-tooltip-border-color, #c0c0c0); } :host .daterangepicker .ranges { float: none; text-align: left; margin: 0; flex-grow: 1; } :host .daterangepicker .ranges ul { width: 100%; } :host .daterangepicker.show-calendar .ranges { margin-top: 8px; } :host .daterangepicker .ranges ul { list-style: none; margin: 0 auto; padding: 0; width: 100%; } :host .daterangepicker .ranges li { font-size: 12px; padding: 8px 12px; cursor: pointer; } :host .daterangepicker .ranges li:hover { background-color: var(--warp-view-pagination-hover-bg-color, #c0c0c0); } :host .daterangepicker .ranges li.active { background-color: var(--warp-view-button-bg-color, #004eff); color: var(--warp-view-button-label-color, #ffffff); } @media (min-width: 564px) { :host .daterangepicker.single .ranges ul { width: 100%; } :host .daterangepicker.single .drp-calendar.left { clear: none; } :host .daterangepicker.single .ranges, :host .daterangepicker.single .drp-calendar { float: left; } :host .daterangepicker { direction: ltr; text-align: left; } :host .daterangepicker .drp-calendar.left { clear: left; margin-right: 0; } :host .daterangepicker .drp-calendar.left .calendar-table { border-right: none; border-top-right-radius: 0; border-bottom-right-radius: 0; } :host .daterangepicker .drp-calendar.right { margin-left: 0; } :host .daterangepicker .drp-calendar.right .calendar-table { border-left: none; border-top-left-radius: 0; border-bottom-left-radius: 0; } :host .daterangepicker .drp-calendar.left .calendar-table { padding-right: 8px; } :host .daterangepicker .ranges, :host .daterangepicker .drp-calendar { float: left; } } @media (min-width: 730px) { :host .daterangepicker .ranges { width: auto; } :host .daterangepicker .ranges { float: left; } :host .daterangepicker.rtl .ranges { float: right; } :host .daterangepicker .drp-calendar.left { clear: none !important; } }