UNPKG

drip-table

Version:

A tiny and powerful enterprise-class solution for building tables.

241 lines (237 loc) 7.16 kB
/** * This file is part of the drip-table project. * @link : https://drip-table.jd.com/ * @author : Emil Zhai (root@derzh.com) * @modifier : Emil Zhai (root@derzh.com) * @copyright: Copyright (c) 2021 JD Network Technology Co., Ltd. */ @prefixCls: jfe-drip-table-rc-image; .@{prefixCls} { display: inline-flex; position: relative; } .@{prefixCls}-img { width: 100%; height: auto; } .@{prefixCls}-img-placeholder { background-color: #f3f3f3; background-repeat: no-repeat; background-position: center center; background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjhweCIgaGVpZ2h0PSIyMnB4IiB2aWV3Qm94PSIwIDAgMjggMjIiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDU1LjIgKDc4MTgxKSAtIGh0dHBzOi8vc2tldGNoYXBwLmNvbSAtLT4KICAgIDx0aXRsZT5pbWFnZS1maWxs5aSH5Lu9PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9Iuafpeeci+WbvueJh+S8mOWMljQuMCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IuWKoOi9veWbvueJhyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTU3Mi4wMDAwMDAsIC01MDYuMDAwMDAwKSI+CiAgICAgICAgICAgIDxnIGlkPSJpbWFnZS1maWxs5aSH5Lu9IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1NzAuMDAwMDAwLCA1MDEuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiBmaWxsPSIjMDAwMDAwIiBvcGFjaXR5PSIwIiB4PSIwIiB5PSIwIiB3aWR0aD0iMzIiIGhlaWdodD0iMzIiPjwvcmVjdD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0yOSw1IEwzLDUgQzIuNDQ2ODc1LDUgMiw1LjQ0Njg3NSAyLDYgTDIsMjYgQzIsMjYuNTUzMTI1IDIuNDQ2ODc1LDI3IDMsMjcgTDI5LDI3IEMyOS41NTMxMjUsMjcgMzAsMjYuNTUzMTI1IDMwLDI2IEwzMCw2IEMzMCw1LjQ0Njg3NSAyOS41NTMxMjUsNSAyOSw1IFogTTEwLjU2MjUsOS41IEMxMS42NjU2MjUsOS41IDEyLjU2MjUsMTAuMzk2ODc1IDEyLjU2MjUsMTEuNSBDMTIuNTYyNSwxMi42MDMxMjUgMTEuNjY1NjI1LDEzLjUgMTAuNTYyNSwxMy41IEM5LjQ1OTM3NSwxMy41IDguNTYyNSwxMi42MDMxMjUgOC41NjI1LDExLjUgQzguNTYyNSwxMC4zOTY4NzUgOS40NTkzNzUsOS41IDEwLjU2MjUsOS41IFogTTI2LjYyMTg3NSwyMy4xNTkzNzUgQzI2LjU3ODEyNSwyMy4xOTY4NzUgMjYuNTE4NzUsMjMuMjE4NzUgMjYuNDU5Mzc1LDIzLjIxODc1IEw1LjUzNzUsMjMuMjE4NzUgQzUuNCwyMy4yMTg3NSA1LjI4NzUsMjMuMTA2MjUgNS4yODc1LDIyLjk2ODc1IEM1LjI4NzUsMjIuOTA5Mzc1IDUuMzA5Mzc1LDIyLjg1MzEyNSA1LjM0Njg3NSwyMi44MDYyNSBMMTAuNjY4NzUsMTYuNDkzNzUgQzEwLjc1NjI1LDE2LjM4NzUgMTAuOTE1NjI1LDE2LjM3NSAxMS4wMjE4NzUsMTYuNDYyNSBDMTEuMDMxMjUsMTYuNDcxODc1IDExLjA0Mzc1LDE2LjQ4MTI1IDExLjA1MzEyNSwxNi40OTM3NSBMMTQuMTU5Mzc1LDIwLjE4MTI1IEwxOS4xLDE0LjMyMTg3NSBDMTkuMTg3NSwxNC4yMTU2MjUgMTkuMzQ2ODc1LDE0LjIwMzEyNSAxOS40NTMxMjUsMTQuMjkwNjI1IEMxOS40NjI1LDE0LjMgMTkuNDc1LDE0LjMwOTM3NSAxOS40ODQzNzUsMTQuMzIxODc1IEwyNi42NTkzNzUsMjIuODA5Mzc1IEMyNi43NDA2MjUsMjIuOTEyNSAyNi43MjgxMjUsMjMuMDcxODc1IDI2LjYyMTg3NSwyMy4xNTkzNzUgWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRThFOEU4Ij48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg=="); } .@{prefixCls}-placeholder { position: absolute; top: 0; left: 0; right: 0; bottom: 0; } .@{prefixCls}-mask { position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: #0000004d; opacity: 0; pointer-events: none; display: flex; align-items: center; justify-content: center; color: #ffffff; transition: opacity .3s; } .@{prefixCls}:hover .@{prefixCls}-mask { opacity: 1; } .@{prefixCls}-preview { text-align: center; height: 100%; pointer-events: none; } .@{prefixCls}-preview-body { position: absolute; top: 0; left: 0; right: 0; bottom: 0; overflow: hidden; } .@{prefixCls}-preview.zoom-enter, .@{prefixCls}-preview.zoom-appear { transform: none; opacity: 0; animation-duration: .3s; } .@{prefixCls}-preview-mask { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1000; height: 100%; background-color: #00000073; } .@{prefixCls}-preview-mask-hidden { display: none; } .@{prefixCls}-preview-img { cursor: grab; transform: scale3d(1, 1, 1); transition: transform .3s cubic-bezier(0, 0, .25, 1) 0s; user-select: none; vertical-align: middle; max-width: 100%; max-height: 70%; } .@{prefixCls}-preview-img-wrapper { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: flex; justify-content: center; align-items: center; } .@{prefixCls}-preview-img-wrapper > * { pointer-events: auto; } .@{prefixCls}-preview-moving .@{prefixCls}-preview-img { cursor: grabbing; } .@{prefixCls}-preview-moving .@{prefixCls}-preview-img-wrapper { transition-duration: 0s; } .@{prefixCls}-preview-wrap { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1000; overflow: auto; outline: 0; -webkit-overflow-scrolling: touch; } .@{prefixCls}-preview-close { position: fixed; top: 32px; right: 32px; display: flex; color: #ffffff; background-color: #00000080; border-radius: 50%; padding: 15px; outline: 0; border: 0; cursor: pointer; } .@{prefixCls}-preview-close:hover { opacity: .3; } .@{prefixCls}-preview-operations-wrapper { position: fixed; z-index: 1001; } .@{prefixCls}-preview-footer { position: fixed; z-index: 1001; bottom: 32px; left: 0; width: 100%; display: flex; flex-direction: column; align-items: center; } .@{prefixCls}-preview-progress { margin-bottom: 20px; } .@{prefixCls}-preview-operations { display: flex; color: #bbbbbb; background: #00000073; border-radius: 100px; padding: 0 20px; } .@{prefixCls}-preview-operations-operation { padding: 10px; cursor: pointer; margin-left: 10px; font-size: 18px; } .@{prefixCls}-preview-operations-operation-disabled { pointer-events: none; color: #6e6e6e; } .@{prefixCls}-preview-operations-operation:first-of-type { margin-left: 0; } .@{prefixCls}-preview-switch-left { position: fixed; left: 10px; top: 50%; width: 44px; height: 44px; margin-top: -22px; background: #bbbbbb73; border-radius: 50%; display: flex; align-items: center; justify-content: center; z-index: 1001; cursor: pointer; color: #bbbbbb; } .@{prefixCls}-preview-switch-left-disabled { background: #bbbbbb4d; color: #6e6e6e; cursor: not-allowed; } .@{prefixCls}-preview-switch-left-disabled > .@{prefixCls}-icon { cursor: not-allowed; } .@{prefixCls}-preview-switch-left > .@{prefixCls}-icon { font-size: 24px; } .@{prefixCls}-preview-switch-right { position: fixed; right: 10px; top: 50%; width: 44px; height: 44px; margin-top: -22px; background: #bbbbbb73; border-radius: 50%; display: flex; align-items: center; justify-content: center; z-index: 1001; cursor: pointer; color: #bbbbbb; } .@{prefixCls}-preview-switch-right-disabled { background: #bbbbbb33; color: #6e6e6e; cursor: not-allowed; } .@{prefixCls}-preview-switch-right-disabled > .@{prefixCls}-icon { cursor: not-allowed; } .@{prefixCls}-preview-switch-right > .@{prefixCls}-icon { font-size: 24px; } .@{prefixCls}-icon { display: inline-block; color: inherit; font-style: normal; line-height: 0; text-align: center; text-transform: none; vertical-align: -.125em; text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }