UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

375 lines (374 loc) 12.2 kB
.x-date-picker, .x-date-range-picker { display: inline-flex; font: var(--td-font-body-medium); color: var(--td-text-color-primary); box-sizing: border-box; margin: 0; padding: 0; list-style: none; } .x-date-picker__header-controller-month-popup > .x-popup__content, .x-date-picker__header-controller-year-popup > .x-popup__content { max-height: 160px; } .x-date-picker__panel-container > .x-popup__content, .x-date-range-picker__panel-container > .x-popup__content { padding: 0; min-width: 280px; } .x-date-picker__panel, .x-date-range-picker__panel { display: flex; flex-direction: column; } .x-date-picker__panel--direction-row, .x-date-range-picker__panel--direction-row { flex-direction: row; } .x-date-picker__panel .x-time-picker__panel, .x-date-range-picker__panel .x-time-picker__panel { width: 216px; } .x-date-picker__panel .x-time-picker__panel-section-body, .x-date-range-picker__panel .x-time-picker__panel-section-body { padding: 0; } .x-date-picker__panel .x-time-picker__panel-body, .x-date-range-picker__panel .x-time-picker__panel-body { margin: 0; } .x-date-picker__panel-content, .x-date-range-picker__panel-content, .x-date-range-picker__panel-content-wrapper { display: flex; } .x-date-picker__header { display: flex; align-items: center; justify-content: space-between; gap: var(--td-comp-margin-m); width: 100%; } .x-date-picker__header-controller { display: inline-flex; gap: var(--td-comp-margin-s); } .x-date-picker__header-controller .x-date-picker__header-controller-month { width: 80px; display: flex; } .x-date-picker__header-controller .x-date-picker__header-controller-year { width: 78px; display: flex; } .x-date-picker__table table { width: 100%; border-collapse: collapse; } .x-date-picker__table table th { text-align: center; color: var(--td-text-color-secondary); font-weight: 400; } .x-date-picker__table table td.x-date-picker__cell { text-align: center; font-weight: 500; } .x-date-picker__table table th, .x-date-picker__table table td.x-date-picker__cell { padding: 0; border: 0; line-height: var(--td-line-height-body-medium); } .x-date-picker__table table thead::after { content: "-"; display: block; line-height: var(--td-comp-margin-xs); color: transparent; } .x-date-picker__table table thead::before { content: "-"; display: block; line-height: var(--td-comp-margin-xs); color: transparent; } .x-date-picker__table-week-row { cursor: pointer; position: sticky; } .x-date-picker__table-week-row .x-date-picker__cell:first-child .x-date-picker__cell-inner { color: var(--td-text-color-disabled); } .x-date-picker__table-week-row .x-date-picker__cell:hover .x-date-picker__cell-inner { box-shadow: none; background: none; } .x-date-picker__table-week-row::after { content: ""; position: absolute; left: var(--td-comp-margin-xxxl); right: 0; top: calc(var(--td-comp-margin-xs) - 1px); z-index: 10; height: var(--td-comp-size-xs); border-radius: var(--td-radius-default); transition: box-shadow 0.2s cubic-bezier(0.38, 0, 0.24, 1), background-color 0.2s linear, border-color 0.2s linear, color 0.2s linear; pointer-events: none; } .x-date-picker__table-week-row:hover .x-date-picker__cell:first-child .x-date-picker__cell-inner { color: var(--td-brand-color); } .x-date-picker__table-week-row:hover::after { box-shadow: inset 0 0 0 1px var(--td-brand-color); } .x-date-picker__table-week-row--active::after { opacity: 1; z-index: 0; background-color: var(--td-brand-color); } .x-date-picker__table-week-row--active .x-date-picker__cell:first-child .x-date-picker__cell-inner { color: var(--td-brand-color); } .x-date-picker__table-week-row--active .x-date-picker__cell .x-date-picker__cell-inner { background: transparent; color: var(--td-text-color-anti); } .x-date-picker__table-week-row--range::after { opacity: 1; z-index: 0; background-color: var(--td-brand-color-light); } .x-date-picker__table-week-row--range .x-date-picker__cell .x-date-picker__cell-inner { background: transparent; } .x-date-picker__footer { display: flex; justify-content: space-between; align-items: flex-start; padding: var(--td-pop-padding-xl); gap: var(--td-comp-margin-s); } .x-date-picker__footer--bottom { border-top: 1px solid var(--td-component-stroke); } .x-date-picker__footer--top { border-bottom: 1px solid var(--td-component-stroke); } .x-date-picker__footer--left { flex-direction: column; border-right: 1px solid var(--td-component-stroke); } .x-date-picker__footer--left .x-date-picker__presets { flex-direction: column; } .x-date-picker__footer--right { flex-direction: column; border-left: 1px solid var(--td-component-stroke); } .x-date-picker__footer--right .x-date-picker__presets { flex-direction: column; } .x-date-picker__presets { display: flex; gap: var(--td-comp-margin-s); white-space: nowrap; min-width: var(--td-comp-size-xl); } .x-date-picker__presets .x-button { cursor: pointer; } .x-date-picker__presets a { color: var(--td-brand-color); } .x-date-picker__presets a:hover { color: var(--td-brand-color-hover); } .x-date-picker__panel-time, .x-date-range-picker__panel-time { display: flex; flex-direction: column; gap: calc(var(--td-comp-margin-m) / 2); padding: var(--td-pop-padding-xl) calc(var(--td-pop-padding-xl) - var(--td-comp-margin-xs)); border-left: 1px solid var(--td-component-stroke); } .x-date-picker__panel-time-viewer, .x-date-range-picker__panel-time-viewer { display: flex; height: var(--td-comp-size-m); line-height: var(--td-line-height-body-medium); align-items: center; justify-content: center; color: var(--td-text-color-primary); } .x-date-picker__panel-time .x-time-picker__panel-body, .x-date-range-picker__panel-time .x-time-picker__panel-body { margin: 0; } .x-date-picker__panel-year, .x-date-picker__panel-month, .x-date-picker__panel-quarter, .x-date-picker__panel-week, .x-date-picker__panel-date { display: flex; flex-direction: column; padding: var(--td-pop-padding-xl); gap: var(--td-comp-margin-m); width: 280px; box-sizing: border-box; } .x-date-picker__panel-year .x-date-picker__cell--hover-highlight + .x-date-picker__cell--hover-highlight::before, .x-date-picker__panel-month .x-date-picker__cell--hover-highlight + .x-date-picker__cell--hover-highlight::before, .x-date-picker__panel-year .x-date-picker__cell--hover-highlight + .x-date-picker__cell--hover-highlight::after, .x-date-picker__panel-month .x-date-picker__cell--hover-highlight + .x-date-picker__cell--hover-highlight::after { opacity: 1; left: calc(0px - calc(var(--td-comp-size-xs) + var(--td-comp-margin-xxl))); } .x-date-picker__panel-year .x-date-picker__cell--hover-highlight + .x-date-picker__cell--active::after, .x-date-picker__panel-month .x-date-picker__cell--hover-highlight + .x-date-picker__cell--active::after { opacity: 1; left: calc(0px - calc(var(--td-comp-size-xs) + var(--td-comp-margin-xxl))); z-index: 5; } .x-date-picker__panel-year .x-date-picker__cell--highlight + .x-date-picker__cell--highlight::before, .x-date-picker__panel-month .x-date-picker__cell--highlight + .x-date-picker__cell--highlight::before { left: calc(0px - calc(var(--td-comp-size-xs) + var(--td-comp-margin-xxl))); } .x-date-picker__panel-year .x-date-picker__header-controller-year, .x-date-picker__panel-month .x-date-picker__header-controller-year, .x-date-picker__panel-quarter .x-date-picker__header-controller-year { width: 130px; display: flex; } .x-date-picker__panel-year .x-date-picker__table table tbody, .x-date-picker__panel-month .x-date-picker__table table tbody, .x-date-picker__panel-quarter .x-date-picker__table table tbody { width: 100%; display: flex; gap: var(--td-comp-margin-m); flex-direction: column; } .x-date-picker__panel-year .x-date-picker__table table tbody tr, .x-date-picker__panel-month .x-date-picker__table table tbody tr, .x-date-picker__panel-quarter .x-date-picker__table table tbody tr { display: flex; justify-content: space-between; } .x-date-picker__panel-year .x-date-picker__cell--disabled + .x-date-picker__cell--disabled:before, .x-date-picker__panel-month .x-date-picker__cell--disabled + .x-date-picker__cell--disabled:before, .x-date-picker__panel-quarter .x-date-picker__cell--disabled + .x-date-picker__cell--disabled:before { left: calc(0px - var(--td-comp-size-xxxl)); } .x-date-picker__panel-year .x-date-picker__cell:nth-child(1), .x-date-picker__panel-month .x-date-picker__cell:nth-child(1), .x-date-picker__panel-quarter .x-date-picker__cell:nth-child(1) { text-align: left; } .x-date-picker__panel-year .x-date-picker__cell:nth-child(3), .x-date-picker__panel-month .x-date-picker__cell:nth-child(3), .x-date-picker__panel-quarter .x-date-picker__cell:nth-child(3) { text-align: right; } .x-date-picker__panel-year .x-date-picker__cell-inner, .x-date-picker__panel-month .x-date-picker__cell-inner, .x-date-picker__panel-quarter .x-date-picker__cell-inner { width: var(--td-comp-size-xxl); } .x-date-picker__cell { cursor: pointer; position: relative; padding: 0; } .x-date-picker__cell::before, .x-date-picker__cell::after { content: ""; position: absolute; top: 50%; right: -5%; left: -5%; z-index: 1; opacity: 0; border-radius: var(--td-radius-default); height: var(--td-comp-size-xs); transform: translateY(-50%); transition: opacity 0.2s cubic-bezier(0, 0, 0.15, 1); } .x-date-picker__cell:hover .x-date-picker__cell-inner { box-shadow: inset 0 0 0 1px var(--td-brand-color); } .x-date-picker__cell-inner { position: relative; z-index: 5; display: inline-flex; justify-content: center; align-items: center; width: var(--td-comp-size-xs); height: var(--td-comp-size-xs); margin: calc(var(--td-comp-margin-xs) - 1px); border-radius: var(--td-radius-default); transition: box-shadow 0.2s cubic-bezier(0.38, 0, 0.24, 1), background-color 0.2s linear, border-color 0.2s linear, color 0.2s linear; } .x-date-picker__cell--now .x-date-picker__cell-inner { color: var(--td-brand-color); background: var(--td-brand-color-light); } .x-date-picker__cell--hover-highlight::after { opacity: 1; background-color: var(--td-brand-color-light); } .x-date-picker__cell--highlight::before { opacity: 1; background-color: var(--td-brand-color-light); } .x-date-picker__cell--highlight.x-date-picker__cell--hover-highlight::after { opacity: 1; background-color: rgba(0, 0, 0, 0.06); } .x-date-picker__cell--additional:hover .x-date-picker__cell-inner { box-shadow: none; border-color: var(--td-bg-color-container-hover); background-color: var(--td-bg-color-container-hover); } .x-date-picker__cell--additional .x-date-picker__cell-inner { color: var(--td-text-color-disabled); } .x-date-picker__cell--active .x-date-picker__cell-inner { color: var(--td-text-color-anti); background-color: var(--td-brand-color); } .x-date-picker__cell--active-start::before { opacity: 1; left: calc(calc(var(--td-comp-margin-xs) - 1px) * 2); border-top-left-radius: var(--td-radius-default); border-bottom-left-radius: var(--td-radius-default); } .x-date-picker__cell--active-start:hover::before { left: -5%; } .x-date-picker__cell--active-end::before { opacity: 1; right: calc(calc(var(--td-comp-margin-xs) - 1px) * 2); border-top-right-radius: var(--td-radius-default); border-bottom-right-radius: var(--td-radius-default); } .x-date-picker__cell--active-end:hover::before { right: -5%; } .x-date-picker__cell--disabled:hover .x-date-picker__cell-inner { box-shadow: none; background-color: var(--td-bg-color-component-disabled); } .x-date-picker__cell--disabled .x-date-picker__cell-inner { cursor: not-allowed; color: var(--td-text-color-disabled); background-color: var(--td-bg-color-component-disabled); } .x-date-picker__cell--disabled + .x-date-picker__cell--disabled::before { opacity: 1; left: calc(0px - var(--td-comp-size-l)); background-color: var(--td-bg-color-component-disabled); border-radius: var(--td-radius-default); } .x-date-picker__input--placeholder input { color: var(--td-text-color-placeholder); }