UNPKG

@esri/calcite-components

Version:

Web Components for Esri's Calcite Design System.

201 lines (166 loc) • 3.5 kB
/* mixins & extensions */ @keyframes in { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes in-down { 0% { opacity: 0; transform: translate3D(0, -5px, 0); } 100% { opacity: 1; transform: translate3D(0, 0, 0); } } @keyframes in-up { 0% { opacity: 0; transform: translate3D(0, 5px, 0); } 100% { opacity: 1; transform: translate3D(0, 0, 0); } } @keyframes in-scale { 0% { opacity: 0; transform: scale3D(0.95, 0.95, 1); } 100% { opacity: 1; transform: scale3D(1, 1, 1); } } /** * Currently only used in Checkbox. */ :root { --calcite-popper-transition: 150ms ease-in-out; } :host([hidden]) { display: none; } :host { display: block; position: absolute; z-index: 999; transform: scale(0); } .calcite-popper-anim { position: relative; z-index: 1; transition: var(--calcite-popper-transition); visibility: hidden; transition-property: transform, visibility, opacity; opacity: 0; box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16); border-radius: var(--calcite-border-radius); } :host([data-popper-placement^=bottom]) .calcite-popper-anim { transform: translateY(-5px); } :host([data-popper-placement^=top]) .calcite-popper-anim { transform: translateY(5px); } :host([data-popper-placement^=left]) .calcite-popper-anim { transform: translateX(5px); } :host([data-popper-placement^=right]) .calcite-popper-anim { transform: translateX(-5px); } :host([data-popper-placement]) .calcite-popper-anim--active { opacity: 1; visibility: visible; transform: translate(0); } .arrow, .arrow::before { position: absolute; width: 8px; height: 8px; z-index: -1; } .arrow::before { content: ""; box-shadow: 0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04); transform: rotate(45deg); background: var(--calcite-ui-foreground-1); } :host([data-popper-placement^=top]) .arrow { bottom: -4px; } :host([data-popper-placement^=bottom]) .arrow { top: -4px; } :host([data-popper-placement^=left]) .arrow { right: -4px; } :host([data-popper-placement^=right]) .arrow { left: -4px; } .container { background: var(--calcite-ui-foreground-1); position: relative; display: flex; overflow: hidden; flex-direction: column nowrap; color: var(--calcite-ui-text-1); } .content { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-start; line-height: 24px; } .close-button { outline-offset: 0; outline-color: transparent; transition: outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out; } .close-button:focus { outline: 2px solid var(--calcite-ui-blue-1); outline-offset: -2px; } .close-button { display: block; flex: 0 0 auto; padding: 12px; border: none; border-radius: 0 var(--calcite-border-radius) 0 0; color: var(--calcite-ui-text-1); cursor: pointer; background: var(--calcite-ui-foreground-1); z-index: 1; } .close-button:hover { background: var(--calcite-ui-foreground-2); } .close-button:active { background: var(--calcite-ui-foreground-3); } :host-context([dir=rtl]) .close-button { border-radius: var(--calcite-border-radius) 0 0 0; } .image-container { overflow: hidden; max-height: 200px; margin: 5px; } slot[name=image]::slotted(img) { height: auto; width: 100%; max-height: 200px; object-position: 50% 50%; object-fit: cover; } ::slotted(calcite-panel), ::slotted(calcite-flow) { height: 100%; }