@jiaozhiye/qm-design-react 1.10.8 → 1.10.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/anchor/src/anchor-item.d.ts +3 -6
- package/lib/anchor/src/anchor-nav.d.ts +2 -5
- package/lib/anchor/src/anchor.d.ts +8 -44
- package/lib/config-provider/src/config-provider.d.ts +2 -26
- package/lib/drawer/index.d.ts +1 -1
- package/lib/drawer/src/drawer.d.ts +16 -37
- package/lib/form/src/types.d.ts +1 -1
- package/lib/index.d.ts +4 -4
- package/lib/index.esm.js +1 -1
- package/lib/index.full.js +1 -1
- package/lib/index.js +1 -1
- package/lib/locale/lang/en.js +5 -5
- package/lib/locale/lang/zh-cn.js +5 -5
- package/lib/modal/index.d.ts +1 -1
- package/lib/modal/src/modal.d.ts +17 -52
- package/lib/spin/style/index.less +18 -18
- package/lib/split/src/split-pane.d.ts +2 -2
- package/lib/split/src/split.d.ts +1 -1
- package/lib/tabs/src/tab-pane.d.ts +3 -6
- package/lib/tabs/src/tabs.d.ts +5 -11
- package/lib/upload-file/src/upload-file.d.ts +1 -1
- package/lib/upload-file/style/index.less +53 -53
- package/lib/upload-img/src/cropper-preview.d.ts +2 -26
- package/lib/upload-img/style/index.less +101 -101
- package/package.json +1 -1
package/lib/locale/lang/en.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @Author: 焦质晔
|
|
3
|
-
* @Date: 2021-06-19 08:46:00
|
|
4
|
-
* @Last Modified by: 焦质晔
|
|
5
|
-
* @Last Modified time: 2024-07-26 10:21:48
|
|
1
|
+
/*
|
|
2
|
+
* @Author: 焦质晔
|
|
3
|
+
* @Date: 2021-06-19 08:46:00
|
|
4
|
+
* @Last Modified by: 焦质晔
|
|
5
|
+
* @Last Modified time: 2024-07-26 10:21:48
|
|
6
6
|
*/
|
|
7
7
|
export default {
|
|
8
8
|
name: 'en',
|
package/lib/locale/lang/zh-cn.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @Author: 焦质晔
|
|
3
|
-
* @Date: 2021-06-19 08:45:54
|
|
4
|
-
* @Last Modified by: 焦质晔
|
|
5
|
-
* @Last Modified time: 2024-07-26 09:00:17
|
|
1
|
+
/*
|
|
2
|
+
* @Author: 焦质晔
|
|
3
|
+
* @Date: 2021-06-19 08:45:54
|
|
4
|
+
* @Last Modified by: 焦质晔
|
|
5
|
+
* @Last Modified time: 2024-07-26 09:00:17
|
|
6
6
|
*/
|
|
7
7
|
export default {
|
|
8
8
|
name: 'zh-cn',
|
package/lib/modal/index.d.ts
CHANGED
package/lib/modal/src/modal.d.ts
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import ConfigContext from '../../config-provider/context';
|
|
1
|
+
import React from 'react';
|
|
4
2
|
import type { ComponentSize } from '../../_utils/types';
|
|
5
3
|
import type { ModalProps as AntModalProps } from '../../antd';
|
|
6
|
-
type EventType = React.MouseEvent<HTMLElement>;
|
|
7
4
|
type IProps = AntModalProps & {
|
|
8
5
|
visible?: boolean;
|
|
9
6
|
size?: ComponentSize;
|
|
@@ -12,57 +9,25 @@ type IProps = AntModalProps & {
|
|
|
12
9
|
draggable?: boolean;
|
|
13
10
|
showHeader?: boolean;
|
|
14
11
|
showFullScreen?: boolean;
|
|
15
|
-
onClose?: (e:
|
|
12
|
+
onClose?: (e: React.MouseEvent<HTMLElement>) => void;
|
|
16
13
|
onClosed?: () => void;
|
|
17
14
|
onFullChange?: (value: boolean) => void;
|
|
18
15
|
};
|
|
19
|
-
type
|
|
20
|
-
fullscreen: boolean;
|
|
21
|
-
spinning: boolean;
|
|
22
|
-
sloading: boolean;
|
|
23
|
-
disabled: boolean;
|
|
24
|
-
bounds: {
|
|
25
|
-
left: number;
|
|
26
|
-
top: number;
|
|
27
|
-
bottom: number;
|
|
28
|
-
right: number;
|
|
29
|
-
};
|
|
30
|
-
position?: {
|
|
31
|
-
x: number;
|
|
32
|
-
y: number;
|
|
33
|
-
};
|
|
34
|
-
};
|
|
35
|
-
export type ModalProps = IProps;
|
|
36
|
-
declare class QmModal extends Component<IProps, IState> {
|
|
37
|
-
static contextType: React.Context<import("../../config-provider/context").IConfig>;
|
|
38
|
-
context: React.ContextType<typeof ConfigContext>;
|
|
39
|
-
static propTypes: {
|
|
40
|
-
size: (props: any, propName: any, componentName: any) => void;
|
|
41
|
-
spinning: PropTypes.Requireable<boolean>;
|
|
42
|
-
};
|
|
43
|
-
static defaultProps: {
|
|
44
|
-
width: string;
|
|
45
|
-
showHeader: boolean;
|
|
46
|
-
showFullScreen: boolean;
|
|
47
|
-
destroyOnClose: boolean;
|
|
48
|
-
draggable: boolean;
|
|
49
|
-
footer: null;
|
|
50
|
-
style: {
|
|
51
|
-
top: string;
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
draggleRef: React.RefObject<HTMLDivElement>;
|
|
55
|
-
private opened;
|
|
56
|
-
get $size(): ComponentSize;
|
|
57
|
-
get defaultHeight(): string;
|
|
58
|
-
state: IState;
|
|
59
|
-
componentDidUpdate(prevProps: IProps, prevState: IState): void;
|
|
60
|
-
onStart: (ev: any, uiData: any) => void;
|
|
61
|
-
toggleHandle: (ev: any) => void;
|
|
62
|
-
afterVisibleChange: () => void;
|
|
63
|
-
renderTitle(): React.JSX.Element;
|
|
16
|
+
export type ModalRef = {
|
|
64
17
|
START_LOADING: () => void;
|
|
65
18
|
STOP_LOADING: () => void;
|
|
66
|
-
|
|
67
|
-
|
|
19
|
+
};
|
|
20
|
+
export type ModalProps = IProps;
|
|
21
|
+
declare const QmModal: React.ForwardRefExoticComponent<AntModalProps & {
|
|
22
|
+
visible?: boolean | undefined;
|
|
23
|
+
size?: ComponentSize | undefined;
|
|
24
|
+
height?: string | number | undefined;
|
|
25
|
+
loading?: boolean | undefined;
|
|
26
|
+
draggable?: boolean | undefined;
|
|
27
|
+
showHeader?: boolean | undefined;
|
|
28
|
+
showFullScreen?: boolean | undefined;
|
|
29
|
+
onClose?: ((e: React.MouseEvent<HTMLElement>) => void) | undefined;
|
|
30
|
+
onClosed?: (() => void) | undefined;
|
|
31
|
+
onFullChange?: ((value: boolean) => void) | undefined;
|
|
32
|
+
} & React.RefAttributes<ModalRef>>;
|
|
68
33
|
export default QmModal;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @Author: 焦质晔
|
|
3
|
-
* @Date: 2021-07-23 19:05:57
|
|
4
|
-
* @Last Modified by: 焦质晔
|
|
5
|
-
* @Last Modified time: 2021-07-31 22:38:07
|
|
6
|
-
*/
|
|
7
|
-
@import '../../style/common';
|
|
8
|
-
|
|
9
|
-
@prefix-spin: ~'@{qm-prefix}-spin';
|
|
10
|
-
|
|
11
|
-
.@{prefix-spin} {
|
|
12
|
-
&-fullHeight {
|
|
13
|
-
height: 100%;
|
|
14
|
-
.ant-spin-container {
|
|
15
|
-
height: 100%;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
1
|
+
/*
|
|
2
|
+
* @Author: 焦质晔
|
|
3
|
+
* @Date: 2021-07-23 19:05:57
|
|
4
|
+
* @Last Modified by: 焦质晔
|
|
5
|
+
* @Last Modified time: 2021-07-31 22:38:07
|
|
6
|
+
*/
|
|
7
|
+
@import '../../style/common';
|
|
8
|
+
|
|
9
|
+
@prefix-spin: ~'@{qm-prefix}-spin';
|
|
10
|
+
|
|
11
|
+
.@{prefix-spin} {
|
|
12
|
+
&-fullHeight {
|
|
13
|
+
height: 100%;
|
|
14
|
+
.ant-spin-container {
|
|
15
|
+
height: 100%;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -6,7 +6,7 @@ type IProps = {
|
|
|
6
6
|
children?: React.ReactNode;
|
|
7
7
|
};
|
|
8
8
|
export type SplitPaneProps = IProps;
|
|
9
|
-
declare const
|
|
9
|
+
declare const SplitPane: React.ForwardRefExoticComponent<IProps & {
|
|
10
10
|
offset?: string | undefined;
|
|
11
11
|
} & React.RefAttributes<any>>;
|
|
12
|
-
export default
|
|
12
|
+
export default SplitPane;
|
package/lib/split/src/split.d.ts
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import type { TabPaneProps as AntTabPaneProps } from '../../antd';
|
|
3
3
|
type IProps = AntTabPaneProps;
|
|
4
4
|
export type TabPaneProps = IProps;
|
|
5
|
-
declare
|
|
6
|
-
|
|
7
|
-
render(): React.JSX.Element;
|
|
8
|
-
}
|
|
9
|
-
export default QmTabPane;
|
|
5
|
+
declare const TabPane: React.FC<IProps>;
|
|
6
|
+
export default TabPane;
|
package/lib/tabs/src/tabs.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import ConfigContext from '../../config-provider/context';
|
|
1
|
+
import React from 'react';
|
|
3
2
|
import type { IAuth } from '../../_utils/types';
|
|
4
3
|
import type { TabsProps as AntTabsProps } from '../../antd';
|
|
4
|
+
import type { TabPaneProps } from './tab-pane';
|
|
5
5
|
type IProps = AntTabsProps & {
|
|
6
6
|
children?: React.ReactNode;
|
|
7
7
|
authConfig?: {
|
|
@@ -9,13 +9,7 @@ type IProps = AntTabsProps & {
|
|
|
9
9
|
};
|
|
10
10
|
};
|
|
11
11
|
export type TabsProps = IProps;
|
|
12
|
-
declare
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
context: React.ContextType<typeof ConfigContext>;
|
|
16
|
-
static defaultProps: {
|
|
17
|
-
tabPosition: string;
|
|
18
|
-
};
|
|
19
|
-
render(): React.JSX.Element;
|
|
20
|
-
}
|
|
12
|
+
declare const QmTabs: React.FC<IProps> & {
|
|
13
|
+
TabPane: React.FC<TabPaneProps>;
|
|
14
|
+
};
|
|
21
15
|
export default QmTabs;
|
|
@@ -17,7 +17,7 @@ type IProps = Omit<UploadProps, 'onPreview'> & {
|
|
|
17
17
|
readOnly?: boolean;
|
|
18
18
|
draggable?: boolean;
|
|
19
19
|
editable?: boolean;
|
|
20
|
-
batchDownload?: boolean;
|
|
20
|
+
batchDownload?: (fileList: UploadFile[]) => Promise<void> | boolean;
|
|
21
21
|
fileDirection?: 'horizontal' | 'vertical';
|
|
22
22
|
downloadWithHeaders?: boolean | HttpRequestHeader;
|
|
23
23
|
button?: {
|
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @Author: 焦质晔
|
|
3
|
-
* @Date: 2021-07-23 19:05:57
|
|
4
|
-
* @Last Modified by: 焦质晔
|
|
5
|
-
* @Last Modified time: 2023-10-18 09:35:59
|
|
6
|
-
*/
|
|
7
|
-
@import '../../style/common';
|
|
8
|
-
|
|
9
|
-
@prefix-upload-file: ~'@{qm-prefix}-upload-file';
|
|
10
|
-
|
|
11
|
-
.@{prefix-upload-file} {
|
|
12
|
-
.ant-upload-select {
|
|
13
|
-
&:has(.inner:empty) {
|
|
14
|
-
display: none;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
.ant-upload-list {
|
|
18
|
-
.ant-upload-list-text-container {
|
|
19
|
-
max-width: 100%;
|
|
20
|
-
}
|
|
21
|
-
.ant-upload-list-item {
|
|
22
|
-
height: 30px;
|
|
23
|
-
margin: 0;
|
|
24
|
-
&-name {
|
|
25
|
-
padding: 0 4px;
|
|
26
|
-
a {
|
|
27
|
-
display: block;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
&.handle {
|
|
31
|
-
.ant-upload-list-item-name {
|
|
32
|
-
cursor: move;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
&--horizontal {
|
|
38
|
-
.ant-upload-list {
|
|
39
|
-
display: flex;
|
|
40
|
-
flex-wrap: wrap;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
&--lg {
|
|
44
|
-
.ant-upload-list .ant-upload-list-item {
|
|
45
|
-
height: 38px;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
&--sm {
|
|
49
|
-
.ant-upload-list .ant-upload-list-item {
|
|
50
|
-
height: 22px;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
1
|
+
/*
|
|
2
|
+
* @Author: 焦质晔
|
|
3
|
+
* @Date: 2021-07-23 19:05:57
|
|
4
|
+
* @Last Modified by: 焦质晔
|
|
5
|
+
* @Last Modified time: 2023-10-18 09:35:59
|
|
6
|
+
*/
|
|
7
|
+
@import '../../style/common';
|
|
8
|
+
|
|
9
|
+
@prefix-upload-file: ~'@{qm-prefix}-upload-file';
|
|
10
|
+
|
|
11
|
+
.@{prefix-upload-file} {
|
|
12
|
+
.ant-upload-select {
|
|
13
|
+
&:has(.inner:empty) {
|
|
14
|
+
display: none;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
.ant-upload-list {
|
|
18
|
+
.ant-upload-list-text-container {
|
|
19
|
+
max-width: 100%;
|
|
20
|
+
}
|
|
21
|
+
.ant-upload-list-item {
|
|
22
|
+
height: 30px;
|
|
23
|
+
margin: 0;
|
|
24
|
+
&-name {
|
|
25
|
+
padding: 0 4px;
|
|
26
|
+
a {
|
|
27
|
+
display: block;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
&.handle {
|
|
31
|
+
.ant-upload-list-item-name {
|
|
32
|
+
cursor: move;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
&--horizontal {
|
|
38
|
+
.ant-upload-list {
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-wrap: wrap;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
&--lg {
|
|
44
|
+
.ant-upload-list .ant-upload-list-item {
|
|
45
|
+
height: 38px;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
&--sm {
|
|
49
|
+
.ant-upload-list .ant-upload-list-item {
|
|
50
|
+
height: 22px;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import ConfigContext from '../../config-provider/context';
|
|
3
|
-
import type { CSSProperties } from '../../_utils/types';
|
|
1
|
+
import React from 'react';
|
|
4
2
|
type IProps = {
|
|
5
3
|
fixedSize?: [number, number];
|
|
6
4
|
quality?: number;
|
|
@@ -10,27 +8,5 @@ type IProps = {
|
|
|
10
8
|
beforeCrop?: (file: any, fileList: any[]) => Promise<boolean>;
|
|
11
9
|
children?: React.ReactNode;
|
|
12
10
|
};
|
|
13
|
-
|
|
14
|
-
src: string;
|
|
15
|
-
};
|
|
16
|
-
declare class CropperPreview extends Component<IProps, IState> {
|
|
17
|
-
static contextType: React.Context<import("../../config-provider/context").IConfig>;
|
|
18
|
-
context: React.ContextType<typeof ConfigContext>;
|
|
19
|
-
private cropperRef;
|
|
20
|
-
private beforeUploadRef;
|
|
21
|
-
private fileRef;
|
|
22
|
-
private resolveRef;
|
|
23
|
-
private rejectRef;
|
|
24
|
-
state: IState;
|
|
25
|
-
get previewSize(): CSSProperties;
|
|
26
|
-
setSrc(src: any): void;
|
|
27
|
-
renderUpload(): React.CElement<any, React.Component<any, any, any>> | null;
|
|
28
|
-
confirmHandle: () => Promise<void>;
|
|
29
|
-
scaleHandle(percent: number): void;
|
|
30
|
-
rotateHandle(deg: number): void;
|
|
31
|
-
renderCropper(): React.JSX.Element;
|
|
32
|
-
onOk: () => void;
|
|
33
|
-
onClose: () => void;
|
|
34
|
-
render(): React.JSX.Element;
|
|
35
|
-
}
|
|
11
|
+
declare const CropperPreview: React.FC<IProps>;
|
|
36
12
|
export default CropperPreview;
|
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @Author: 焦质晔
|
|
3
|
-
* @Date: 2021-07-23 19:05:57
|
|
4
|
-
* @Last Modified by: 焦质晔
|
|
5
|
-
* @Last Modified time: 2023-10-15 12:14:45
|
|
6
|
-
*/
|
|
7
|
-
@import '../../style/common';
|
|
8
|
-
|
|
9
|
-
@prefix-upload-img: ~'@{qm-prefix}-upload-img';
|
|
10
|
-
@prefix-cropper-preview: ~'@{qm-prefix}-cropper-preview';
|
|
11
|
-
|
|
12
|
-
.@{prefix-upload-img} {
|
|
13
|
-
.ant-upload-select {
|
|
14
|
-
& > span {
|
|
15
|
-
flex-direction: column;
|
|
16
|
-
}
|
|
17
|
-
&:has(.inner:empty) {
|
|
18
|
-
display: none;
|
|
19
|
-
}
|
|
20
|
-
.ant-upload-drag-icon {
|
|
21
|
-
font-size: 24px;
|
|
22
|
-
line-height: 0;
|
|
23
|
-
color: @--primary-5;
|
|
24
|
-
}
|
|
25
|
-
.ant-upload-text {
|
|
26
|
-
font-size: @--font-size-base - 1px;
|
|
27
|
-
}
|
|
28
|
-
.ant-upload-button {
|
|
29
|
-
display: inline-block;
|
|
30
|
-
text-align: center;
|
|
31
|
-
text-transform: none;
|
|
32
|
-
text-decoration: none;
|
|
33
|
-
background: transparent;
|
|
34
|
-
border: 0;
|
|
35
|
-
outline: 0;
|
|
36
|
-
font-size: @--font-size-base - 1px;
|
|
37
|
-
transition: all 0.3s ease;
|
|
38
|
-
cursor: inherit;
|
|
39
|
-
&:focus {
|
|
40
|
-
box-shadow: 0 0 2px 0 @--primary-5;
|
|
41
|
-
background-color: @--primary-1;
|
|
42
|
-
}
|
|
43
|
-
&.disabled {
|
|
44
|
-
pointer-events: none;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
&[class*='disabled'] {
|
|
48
|
-
.ant-upload-button {
|
|
49
|
-
pointer-events: none;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
.upload-item {
|
|
54
|
-
height: 100%;
|
|
55
|
-
position: relative;
|
|
56
|
-
&:hover {
|
|
57
|
-
.icon {
|
|
58
|
-
display: block;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
&.handle {
|
|
62
|
-
cursor: move;
|
|
63
|
-
}
|
|
64
|
-
.icon {
|
|
65
|
-
position: absolute;
|
|
66
|
-
top: 2px;
|
|
67
|
-
right: 2px;
|
|
68
|
-
padding: 1px;
|
|
69
|
-
border-radius: @--border-radius-base;
|
|
70
|
-
font-size: @--font-size-sm;
|
|
71
|
-
color: #fff;
|
|
72
|
-
background-color: rgba(0, 0, 0, 0.4);
|
|
73
|
-
z-index: 2;
|
|
74
|
-
cursor: pointer;
|
|
75
|
-
display: none;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.@{prefix-cropper-preview} {
|
|
81
|
-
.cropper-preview {
|
|
82
|
-
display: flex;
|
|
83
|
-
flex-direction: row;
|
|
84
|
-
.cropper-area {
|
|
85
|
-
flex: 1;
|
|
86
|
-
.actions {
|
|
87
|
-
margin-top: @--margin-md;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
.preview-area {
|
|
91
|
-
width: 380px;
|
|
92
|
-
min-height: 380px;
|
|
93
|
-
margin-left: @--margin-md;
|
|
94
|
-
display: flex;
|
|
95
|
-
justify-content: center;
|
|
96
|
-
.preview {
|
|
97
|
-
overflow: hidden;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
1
|
+
/*
|
|
2
|
+
* @Author: 焦质晔
|
|
3
|
+
* @Date: 2021-07-23 19:05:57
|
|
4
|
+
* @Last Modified by: 焦质晔
|
|
5
|
+
* @Last Modified time: 2023-10-15 12:14:45
|
|
6
|
+
*/
|
|
7
|
+
@import '../../style/common';
|
|
8
|
+
|
|
9
|
+
@prefix-upload-img: ~'@{qm-prefix}-upload-img';
|
|
10
|
+
@prefix-cropper-preview: ~'@{qm-prefix}-cropper-preview';
|
|
11
|
+
|
|
12
|
+
.@{prefix-upload-img} {
|
|
13
|
+
.ant-upload-select {
|
|
14
|
+
& > span {
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
}
|
|
17
|
+
&:has(.inner:empty) {
|
|
18
|
+
display: none;
|
|
19
|
+
}
|
|
20
|
+
.ant-upload-drag-icon {
|
|
21
|
+
font-size: 24px;
|
|
22
|
+
line-height: 0;
|
|
23
|
+
color: @--primary-5;
|
|
24
|
+
}
|
|
25
|
+
.ant-upload-text {
|
|
26
|
+
font-size: @--font-size-base - 1px;
|
|
27
|
+
}
|
|
28
|
+
.ant-upload-button {
|
|
29
|
+
display: inline-block;
|
|
30
|
+
text-align: center;
|
|
31
|
+
text-transform: none;
|
|
32
|
+
text-decoration: none;
|
|
33
|
+
background: transparent;
|
|
34
|
+
border: 0;
|
|
35
|
+
outline: 0;
|
|
36
|
+
font-size: @--font-size-base - 1px;
|
|
37
|
+
transition: all 0.3s ease;
|
|
38
|
+
cursor: inherit;
|
|
39
|
+
&:focus {
|
|
40
|
+
box-shadow: 0 0 2px 0 @--primary-5;
|
|
41
|
+
background-color: @--primary-1;
|
|
42
|
+
}
|
|
43
|
+
&.disabled {
|
|
44
|
+
pointer-events: none;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
&[class*='disabled'] {
|
|
48
|
+
.ant-upload-button {
|
|
49
|
+
pointer-events: none;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
.upload-item {
|
|
54
|
+
height: 100%;
|
|
55
|
+
position: relative;
|
|
56
|
+
&:hover {
|
|
57
|
+
.icon {
|
|
58
|
+
display: block;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
&.handle {
|
|
62
|
+
cursor: move;
|
|
63
|
+
}
|
|
64
|
+
.icon {
|
|
65
|
+
position: absolute;
|
|
66
|
+
top: 2px;
|
|
67
|
+
right: 2px;
|
|
68
|
+
padding: 1px;
|
|
69
|
+
border-radius: @--border-radius-base;
|
|
70
|
+
font-size: @--font-size-sm;
|
|
71
|
+
color: #fff;
|
|
72
|
+
background-color: rgba(0, 0, 0, 0.4);
|
|
73
|
+
z-index: 2;
|
|
74
|
+
cursor: pointer;
|
|
75
|
+
display: none;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.@{prefix-cropper-preview} {
|
|
81
|
+
.cropper-preview {
|
|
82
|
+
display: flex;
|
|
83
|
+
flex-direction: row;
|
|
84
|
+
.cropper-area {
|
|
85
|
+
flex: 1;
|
|
86
|
+
.actions {
|
|
87
|
+
margin-top: @--margin-md;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
.preview-area {
|
|
91
|
+
width: 380px;
|
|
92
|
+
min-height: 380px;
|
|
93
|
+
margin-left: @--margin-md;
|
|
94
|
+
display: flex;
|
|
95
|
+
justify-content: center;
|
|
96
|
+
.preview {
|
|
97
|
+
overflow: hidden;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|