amis 1.4.2-beta.17 → 1.4.2-beta.18
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/components/Alert2.d.ts +26 -21
- package/lib/components/Alert2.js +11 -4
- package/lib/components/Alert2.js.map +2 -2
- package/lib/components/Button.js +1 -1
- package/lib/components/Button.js.map +2 -2
- package/lib/components/Collapse.js +3 -2
- package/lib/components/Collapse.js.map +2 -2
- package/lib/components/ColorPicker.d.ts +5 -1
- package/lib/components/ColorPicker.js +17 -4
- package/lib/components/ColorPicker.js.map +2 -2
- package/lib/components/Overlay.js +5 -0
- package/lib/components/Overlay.js.map +2 -2
- package/lib/components/PopOver.d.ts +1 -0
- package/lib/components/PopOver.js +12 -1
- package/lib/components/PopOver.js.map +2 -2
- package/lib/components/Toast.d.ts +4 -2
- package/lib/components/Toast.js +10 -3
- package/lib/components/Toast.js.map +2 -2
- package/lib/components/Tree.d.ts +84 -84
- package/lib/components/condition-builder/Field.js +2 -3
- package/lib/components/condition-builder/Field.js.map +2 -2
- package/lib/components/icons.js +8 -0
- package/lib/components/icons.js.map +2 -2
- package/lib/icons/alert-danger.js +7 -0
- package/lib/icons/alert-info.js +7 -0
- package/lib/icons/alert-success.js +7 -0
- package/lib/icons/alert-warning.js +7 -0
- package/lib/index.js +1 -1
- package/lib/renderers/Alert.d.ts +21 -1
- package/lib/renderers/Alert.js.map +2 -2
- package/lib/renderers/Card.d.ts +1 -0
- package/lib/renderers/Card.js +7 -2
- package/lib/renderers/Card.js.map +2 -2
- package/lib/renderers/Form/ConditionBuilder.js +2 -2
- package/lib/renderers/Form/ConditionBuilder.js.map +2 -2
- package/lib/renderers/Form/InputColor.d.ts +2 -1
- package/lib/renderers/Form/InputColor.js +1 -1
- package/lib/renderers/Form/InputColor.js.map +2 -2
- package/lib/renderers/Page.d.ts +18 -0
- package/lib/renderers/Page.js +53 -9
- package/lib/renderers/Page.js.map +2 -2
- package/lib/store/formItem.js +2 -18
- package/lib/store/formItem.js.map +2 -2
- package/lib/themes/ang-ie11.css +131 -23
- package/lib/themes/ang.css +131 -23
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +131 -23
- package/lib/themes/antd.css +131 -23
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +142 -36
- package/lib/themes/cxd.css +142 -36
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +131 -23
- package/lib/themes/dark.css +131 -23
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +142 -36
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/helper.d.ts +2 -0
- package/lib/utils/helper.js +16 -2
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/tpl-builtin.js +5 -0
- package/lib/utils/tpl-builtin.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +123 -15
- package/scss/_properties.scss +2 -1
- package/scss/components/_alert.scss +28 -5
- package/scss/components/_button.scss +5 -0
- package/scss/components/_card.scss +1 -1
- package/scss/components/_collapse-group.scss +4 -0
- package/scss/components/_collapse.scss +1 -2
- package/scss/components/_nav.scss +1 -6
- package/scss/components/_page.scss +35 -2
- package/scss/components/_toast.scss +41 -11
- package/scss/components/form/_color.scss +32 -3
- package/scss/components/form/_fieldset.scss +1 -0
- package/scss/components/form/_transfer.scss +1 -0
- package/scss/themes/_cxd-variables.scss +14 -8
- package/scss/themes/cxd.scss +0 -7
- package/sdk/ang-ie11.css +150 -27
- package/sdk/ang.css +151 -27
- package/sdk/antd-ie11.css +150 -27
- package/sdk/antd.css +151 -27
- package/sdk/charts.js +15 -15
- package/sdk/color-picker.js +69 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +158 -40
- package/sdk/cxd.css +162 -40
- package/sdk/dark-ie11.css +150 -27
- package/sdk/dark.css +151 -27
- package/sdk/exceljs.js +1 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +16 -20
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +158 -40
- package/sdk/sdk.css +162 -40
- package/sdk/sdk.js +1195 -1187
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/components/Alert2.tsx +32 -4
- package/src/components/Button.tsx +1 -0
- package/src/components/Collapse.tsx +3 -8
- package/src/components/ColorPicker.tsx +32 -10
- package/src/components/Overlay.tsx +6 -0
- package/src/components/PopOver.tsx +15 -1
- package/src/components/Toast.tsx +25 -5
- package/src/components/condition-builder/Field.tsx +3 -1
- package/src/components/icons.tsx +8 -0
- package/src/icons/alert-danger.svg +1 -0
- package/src/icons/alert-info.svg +1 -0
- package/src/icons/alert-success.svg +1 -0
- package/src/icons/alert-warning.svg +1 -0
- package/src/renderers/Alert.tsx +31 -1
- package/src/renderers/Card.tsx +13 -2
- package/src/renderers/Form/ConditionBuilder.tsx +2 -2
- package/src/renderers/Form/InputColor.tsx +4 -2
- package/src/renderers/Page.tsx +62 -1
- package/src/store/formItem.ts +1 -22
- package/src/utils/helper.ts +14 -0
- package/src/utils/tpl-builtin.ts +6 -0
@@ -7,8 +7,13 @@ import React from 'react';
|
|
7
7
|
import { ClassNamesFn } from '../theme';
|
8
8
|
export interface AlertProps {
|
9
9
|
level: 'danger' | 'info' | 'success' | 'warning';
|
10
|
-
|
10
|
+
title?: string;
|
11
|
+
className?: string;
|
11
12
|
showCloseButton: boolean;
|
13
|
+
showIcon?: boolean;
|
14
|
+
icon?: string | React.ReactNode;
|
15
|
+
iconClassName?: string;
|
16
|
+
closeButtonClassName?: string;
|
12
17
|
onClose?: () => void;
|
13
18
|
classnames: ClassNamesFn;
|
14
19
|
classPrefix: string;
|
@@ -24,12 +29,12 @@ export declare class Alert extends React.Component<AlertProps, AlertState> {
|
|
24
29
|
render(): JSX.Element | null;
|
25
30
|
}
|
26
31
|
declare const _default: {
|
27
|
-
new (props: (Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps) | Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>): {
|
32
|
+
new (props: (Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps) | Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>): {
|
28
33
|
render(): JSX.Element;
|
29
34
|
context: any;
|
30
|
-
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
|
35
|
+
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
|
31
36
|
forceUpdate(callback?: (() => void) | undefined): void;
|
32
|
-
readonly props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps> & Readonly<{
|
37
|
+
readonly props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps> & Readonly<{
|
33
38
|
children?: React.ReactNode;
|
34
39
|
}>;
|
35
40
|
state: Readonly<{}>;
|
@@ -37,24 +42,24 @@ declare const _default: {
|
|
37
42
|
[key: string]: React.ReactInstance;
|
38
43
|
};
|
39
44
|
componentDidMount?(): void;
|
40
|
-
shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): boolean;
|
45
|
+
shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): boolean;
|
41
46
|
componentWillUnmount?(): void;
|
42
47
|
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
43
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>): any;
|
44
|
-
componentDidUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>, snapshot?: any): void;
|
48
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>): any;
|
49
|
+
componentDidUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>, snapshot?: any): void;
|
45
50
|
componentWillMount?(): void;
|
46
51
|
UNSAFE_componentWillMount?(): void;
|
47
|
-
componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
48
|
-
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
49
|
-
componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
50
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
52
|
+
componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
53
|
+
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
54
|
+
componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
55
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
51
56
|
};
|
52
|
-
new (props: Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps, context: any): {
|
57
|
+
new (props: Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps, context: any): {
|
53
58
|
render(): JSX.Element;
|
54
59
|
context: any;
|
55
|
-
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
|
60
|
+
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
|
56
61
|
forceUpdate(callback?: (() => void) | undefined): void;
|
57
|
-
readonly props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps> & Readonly<{
|
62
|
+
readonly props: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps> & Readonly<{
|
58
63
|
children?: React.ReactNode;
|
59
64
|
}>;
|
60
65
|
state: Readonly<{}>;
|
@@ -62,17 +67,17 @@ declare const _default: {
|
|
62
67
|
[key: string]: React.ReactInstance;
|
63
68
|
};
|
64
69
|
componentDidMount?(): void;
|
65
|
-
shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): boolean;
|
70
|
+
shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): boolean;
|
66
71
|
componentWillUnmount?(): void;
|
67
72
|
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
68
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>): any;
|
69
|
-
componentDidUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>, snapshot?: any): void;
|
73
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>): any;
|
74
|
+
componentDidUpdate?(prevProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>, snapshot?: any): void;
|
70
75
|
componentWillMount?(): void;
|
71
76
|
UNSAFE_componentWillMount?(): void;
|
72
|
-
componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
73
|
-
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
74
|
-
componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
75
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
77
|
+
componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
78
|
+
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextContext: any): void;
|
79
|
+
componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
80
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "title" | "icon" | "showIcon" | "iconClassName" | "closeButtonClassName" | "onClose"> & Partial<Pick<Omit<AlertProps, keyof import("../theme").ThemeProps>, "level" | "showCloseButton">> & Partial<Pick<Pick<AlertProps, "className" | "level" | "showCloseButton">, "className">> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
|
76
81
|
};
|
77
82
|
displayName: string;
|
78
83
|
contextType: React.Context<string>;
|
package/lib/components/Alert2.js
CHANGED
@@ -25,11 +25,18 @@ var Alert = /** @class */ (function (_super) {
|
|
25
25
|
}, this.props.onClose);
|
26
26
|
};
|
27
27
|
Alert.prototype.render = function () {
|
28
|
-
var _a
|
28
|
+
var _a;
|
29
|
+
var _b = this.props, cx = _b.classnames, className = _b.className, level = _b.level, children = _b.children, showCloseButton = _b.showCloseButton, title = _b.title, icon = _b.icon, showIcon = _b.showIcon, iconClassName = _b.iconClassName, closeButtonClassName = _b.closeButtonClassName;
|
30
|
+
var iconNode = icon ? (typeof icon === 'string' ? (react_1.default.createElement(icons_1.Icon, { icon: icon, className: cx("Alert-icon icon") })) : react_1.default.isValidElement(icon) ? (react_1.default.cloneElement(icon, {
|
31
|
+
className: cx("Alert-icon", (_a = icon.props) === null || _a === void 0 ? void 0 : _a.className)
|
32
|
+
})) : null) : showIcon ? (react_1.default.createElement(icons_1.Icon, { icon: "alert-" + level, className: cx("Alert-icon icon") })) : null;
|
29
33
|
return this.state.show ? (react_1.default.createElement("div", { className: cx('Alert', level ? "Alert--" + level : '', className) },
|
30
|
-
|
31
|
-
|
32
|
-
|
34
|
+
showIcon && iconNode ? (react_1.default.createElement("div", { className: cx('Alert-icon', iconClassName) }, iconNode)) : null,
|
35
|
+
react_1.default.createElement("div", { className: cx('Alert-content') },
|
36
|
+
title ? react_1.default.createElement("div", { className: cx('Alert-title') }, title) : null,
|
37
|
+
react_1.default.createElement("div", { className: cx('Alert-desc') }, children)),
|
38
|
+
showCloseButton ? (react_1.default.createElement("button", { className: cx('Alert-close', closeButtonClassName), onClick: this.handleClick, type: "button" },
|
39
|
+
react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : null)) : null;
|
33
40
|
};
|
34
41
|
Alert.defaultProps = {
|
35
42
|
level: 'info',
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Alert2.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;GAGG;;;;AAEH,6DAA0B;AAC1B,kCAAiD;AACjD,iCAA6B;
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Alert2\n * @author fex\n */\n\nimport React from 'react';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {Icon} from './icons';\n\nexport interface AlertProps {\n level: 'danger' | 'info' | 'success' | 'warning';\n className
|
11
|
+
"/**\n * @file Alert2\n * @author fex\n */\n\nimport React from 'react';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {Icon} from './icons';\n\nexport interface AlertProps {\n level: 'danger' | 'info' | 'success' | 'warning';\n title?: string;\n className?: string;\n showCloseButton: boolean;\n showIcon?: boolean;\n icon?: string | React.ReactNode;\n iconClassName?: string;\n closeButtonClassName?: string;\n onClose?: () => void;\n classnames: ClassNamesFn;\n classPrefix: string;\n}\n\nexport interface AlertState {\n show: boolean;\n}\n\nexport class Alert extends React.Component<AlertProps, AlertState> {\n static defaultProps: Pick<\n AlertProps,\n 'level' | 'className' | 'showCloseButton'\n > = {\n level: 'info',\n className: '',\n showCloseButton: false\n };\n static propsList: Array<string> = [\n 'level',\n 'className',\n 'showCloseButton',\n 'onClose'\n ];\n\n constructor(props: AlertProps) {\n super(props);\n\n this.handleClick = this.handleClick.bind(this);\n this.state = {\n show: true\n };\n }\n\n handleClick() {\n this.setState(\n {\n show: false\n },\n this.props.onClose\n );\n }\n\n render() {\n const {\n classnames: cx,\n className,\n level,\n children,\n showCloseButton,\n title,\n icon,\n showIcon,\n iconClassName,\n closeButtonClassName\n } = this.props;\n\n const iconNode = icon ? (\n typeof icon === 'string' ? (\n <Icon icon={icon} className={cx(`Alert-icon icon`)} />\n ) : React.isValidElement(icon) ? (\n React.cloneElement(icon, {\n className: cx(`Alert-icon`, icon.props?.className)\n })\n ) : null\n ) : showIcon ? (\n <Icon icon={`alert-${level}`} className={cx(`Alert-icon icon`)} />\n ) : null;\n\n return this.state.show ? (\n <div className={cx('Alert', level ? `Alert--${level}` : '', className)}>\n {showIcon && iconNode ? (\n <div className={cx('Alert-icon', iconClassName)}>{iconNode}</div>\n ) : null}\n <div className={cx('Alert-content')}>\n {title ? <div className={cx('Alert-title')}>{title}</div> : null}\n <div className={cx('Alert-desc')}>{children}</div>\n </div>\n {showCloseButton ? (\n <button\n className={cx('Alert-close', closeButtonClassName)}\n onClick={this.handleClick}\n type=\"button\"\n >\n <Icon icon=\"close\" className=\"icon\" />\n </button>\n ) : null}\n </div>\n ) : null;\n }\n}\n\nexport default themeable(Alert);\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/components/Button.js
CHANGED
@@ -25,7 +25,7 @@ var Button = /** @class */ (function (_super) {
|
|
25
25
|
else if ((Comp === 'button' && disabled) || loading) {
|
26
26
|
Comp = 'div';
|
27
27
|
}
|
28
|
-
return (react_1.default.createElement(Comp, (0, tslib_1.__assign)({ type: Comp === 'input' || Comp === 'button' ? type : undefined }, (0, helper_1.pickEventsProps)(rest), { href: href, className: cx(overrideClassName
|
28
|
+
return (react_1.default.createElement(Comp, (0, tslib_1.__assign)({ type: Comp === 'input' || Comp === 'button' ? type : undefined }, (0, helper_1.pickEventsProps)(rest), { onClick: rest.onClick && disabled ? function () { } : rest.onClick, href: href, className: cx(overrideClassName
|
29
29
|
? ''
|
30
30
|
: (_a = {
|
31
31
|
'Button': true
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Button.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;GAGG;;;;AAEH,6DAA0B;AAC1B,iFAAwE;AACxE,0CAAgD;AAChD,kCAAiD;AACjD,iCAA6B;AA0B7B;IAA4B,uCAA4B;IAAxD;;
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Button\n * @author fex\n */\n\nimport React from 'react';\nimport TooltipWrapper, {TooltipObject, Trigger} from './TooltipWrapper';\nimport {pickEventsProps} from '../utils/helper';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {Icon} from './icons';\ninterface ButtonProps extends React.DOMAttributes<HTMLButtonElement> {\n id?: string;\n className?: string;\n href?: string;\n size?: 'xs' | 'sm' | 'md' | 'lg';\n type: 'button' | 'reset' | 'submit';\n level: string; // 'link' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'default';\n tooltip?: string | TooltipObject;\n tooltipPlacement: 'top' | 'right' | 'bottom' | 'left';\n tooltipContainer?: any;\n tooltipTrigger: Trigger | Array<Trigger>;\n tooltipRootClose: boolean;\n disabled?: boolean;\n active?: boolean;\n block?: boolean;\n iconOnly?: boolean;\n disabledTip?: string | TooltipObject;\n classPrefix: string;\n classnames: ClassNamesFn;\n componentClass: React.ReactType;\n overrideClassName?: boolean;\n loading?: boolean;\n loadingClassName?: string;\n}\n\nexport class Button extends React.Component<ButtonProps> {\n static defaultProps: Pick<\n ButtonProps,\n | 'componentClass'\n | 'level'\n | 'type'\n | 'tooltipPlacement'\n | 'tooltipTrigger'\n | 'tooltipRootClose'\n > = {\n componentClass: 'button',\n level: 'default',\n type: 'button',\n tooltipPlacement: 'top',\n tooltipTrigger: ['hover', 'focus'],\n tooltipRootClose: false\n };\n\n renderButton() {\n let {\n level,\n size,\n disabled,\n className,\n componentClass: Comp,\n classnames: cx,\n children,\n disabledTip,\n block,\n type,\n active,\n iconOnly,\n href,\n loading,\n loadingClassName,\n overrideClassName,\n ...rest\n } = this.props;\n\n if (href) {\n Comp = 'a';\n } else if ((Comp === 'button' && disabled) || loading) {\n Comp = 'div';\n }\n\n return (\n <Comp\n type={Comp === 'input' || Comp === 'button' ? type : undefined}\n {...pickEventsProps(rest)}\n href={href}\n className={cx(\n overrideClassName\n ? ''\n : {\n 'Button': true,\n [`Button--${level}`]: level,\n [`Button--${size}`]: size,\n [`Button--block`]: block,\n [`Button--iconOnly`]: iconOnly,\n 'is-disabled': disabled,\n 'is-active': active\n },\n className\n )}\n disabled={disabled}\n >\n {loading && !disabled ? (\n <span\n className={cx(\n overrideClassName\n ? ''\n : {[`Button--loading Button--loading--${level}`]: level},\n loadingClassName\n )}\n >\n <Icon icon=\"loading-outline\" className=\"icon\" />\n </span>\n ) : null}\n {children}\n </Comp>\n );\n }\n\n render() {\n const {\n tooltip,\n tooltipPlacement,\n tooltipContainer,\n tooltipTrigger,\n tooltipRootClose,\n disabled,\n disabledTip,\n classnames: cx\n } = this.props;\n\n return (\n <TooltipWrapper\n placement={tooltipPlacement}\n tooltip={disabled ? disabledTip : tooltip}\n container={tooltipContainer}\n trigger={tooltipTrigger}\n rootClose={tooltipRootClose}\n >\n {this.renderButton()}\n </TooltipWrapper>\n );\n }\n}\n\nexport default themeable(Button);\n"
|
11
|
+
"/**\n * @file Button\n * @author fex\n */\n\nimport React from 'react';\nimport TooltipWrapper, {TooltipObject, Trigger} from './TooltipWrapper';\nimport {pickEventsProps} from '../utils/helper';\nimport {ClassNamesFn, themeable} from '../theme';\nimport {Icon} from './icons';\ninterface ButtonProps extends React.DOMAttributes<HTMLButtonElement> {\n id?: string;\n className?: string;\n href?: string;\n size?: 'xs' | 'sm' | 'md' | 'lg';\n type: 'button' | 'reset' | 'submit';\n level: string; // 'link' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'default';\n tooltip?: string | TooltipObject;\n tooltipPlacement: 'top' | 'right' | 'bottom' | 'left';\n tooltipContainer?: any;\n tooltipTrigger: Trigger | Array<Trigger>;\n tooltipRootClose: boolean;\n disabled?: boolean;\n active?: boolean;\n block?: boolean;\n iconOnly?: boolean;\n disabledTip?: string | TooltipObject;\n classPrefix: string;\n classnames: ClassNamesFn;\n componentClass: React.ReactType;\n overrideClassName?: boolean;\n loading?: boolean;\n loadingClassName?: string;\n}\n\nexport class Button extends React.Component<ButtonProps> {\n static defaultProps: Pick<\n ButtonProps,\n | 'componentClass'\n | 'level'\n | 'type'\n | 'tooltipPlacement'\n | 'tooltipTrigger'\n | 'tooltipRootClose'\n > = {\n componentClass: 'button',\n level: 'default',\n type: 'button',\n tooltipPlacement: 'top',\n tooltipTrigger: ['hover', 'focus'],\n tooltipRootClose: false\n };\n\n renderButton() {\n let {\n level,\n size,\n disabled,\n className,\n componentClass: Comp,\n classnames: cx,\n children,\n disabledTip,\n block,\n type,\n active,\n iconOnly,\n href,\n loading,\n loadingClassName,\n overrideClassName,\n ...rest\n } = this.props;\n\n if (href) {\n Comp = 'a';\n } else if ((Comp === 'button' && disabled) || loading) {\n Comp = 'div';\n }\n\n return (\n <Comp\n type={Comp === 'input' || Comp === 'button' ? type : undefined}\n {...pickEventsProps(rest)}\n onClick={rest.onClick && disabled ? () => {} : rest.onClick}\n href={href}\n className={cx(\n overrideClassName\n ? ''\n : {\n 'Button': true,\n [`Button--${level}`]: level,\n [`Button--${size}`]: size,\n [`Button--block`]: block,\n [`Button--iconOnly`]: iconOnly,\n 'is-disabled': disabled,\n 'is-active': active\n },\n className\n )}\n disabled={disabled}\n >\n {loading && !disabled ? (\n <span\n className={cx(\n overrideClassName\n ? ''\n : {[`Button--loading Button--loading--${level}`]: level},\n loadingClassName\n )}\n >\n <Icon icon=\"loading-outline\" className=\"icon\" />\n </span>\n ) : null}\n {children}\n </Comp>\n );\n }\n\n render() {\n const {\n tooltip,\n tooltipPlacement,\n tooltipContainer,\n tooltipTrigger,\n tooltipRootClose,\n disabled,\n disabledTip,\n classnames: cx\n } = this.props;\n\n return (\n <TooltipWrapper\n placement={tooltipPlacement}\n tooltip={disabled ? disabledTip : tooltip}\n container={tooltipContainer}\n trigger={tooltipTrigger}\n rootClose={tooltipRootClose}\n >\n {this.renderButton()}\n </TooltipWrapper>\n );\n }\n}\n\nexport default themeable(Button);\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -75,7 +75,7 @@ var Collapse = /** @class */ (function (_super) {
|
|
75
75
|
Collapse.prototype.render = function () {
|
76
76
|
var _a;
|
77
77
|
var _this = this;
|
78
|
-
var _b = this.props, cx = _b.classnames, mountOnEnter = _b.mountOnEnter, unmountOnExit = _b.unmountOnExit, ns = _b.classPrefix, size = _b.size, WrapperComponent = _b.wrapperComponent, HeadingComponent = _b.headingComponent, className = _b.className, headingClassName = _b.headingClassName, headerPosition = _b.headerPosition, collapseHeader = _b.collapseHeader, header = _b.header, body = _b.body, bodyClassName = _b.bodyClassName, collapsable = _b.collapsable, __ = _b.translate, showArrow = _b.showArrow, expandIcon = _b.expandIcon, disabled = _b.disabled;
|
78
|
+
var _b = this.props, cx = _b.classnames, mountOnEnter = _b.mountOnEnter, unmountOnExit = _b.unmountOnExit, ns = _b.classPrefix, size = _b.size, WrapperComponent = _b.wrapperComponent, HeadingComponent = _b.headingComponent, className = _b.className, headingClassName = _b.headingClassName, headerPosition = _b.headerPosition, collapseHeader = _b.collapseHeader, header = _b.header, body = _b.body, bodyClassName = _b.bodyClassName, collapsable = _b.collapsable, __ = _b.translate, showArrow = _b.showArrow, expandIcon = _b.expandIcon, disabled = _b.disabled, children = _b.children;
|
79
79
|
var finalHeader = this.state.collapsed ? header : collapseHeader || header;
|
80
80
|
var dom = [
|
81
81
|
finalHeader ? (react_1.default.createElement(HeadingComponent, { key: "header", onClick: this.toggleCollapsed, className: cx("Collapse-header", headingClassName) },
|
@@ -90,7 +90,8 @@ var Collapse = /** @class */ (function (_super) {
|
|
90
90
|
_this.contentDom.offsetWidth;
|
91
91
|
}
|
92
92
|
return (react_1.default.createElement("div", { className: cx('Collapse-contentWrapper', collapseStyles[status]), ref: _this.contentRef },
|
93
|
-
react_1.default.createElement("div", { className: cx('Collapse-body', bodyClassName) },
|
93
|
+
react_1.default.createElement("div", { className: cx('Collapse-body', bodyClassName) },
|
94
|
+
react_1.default.createElement("div", { className: cx('Collapse-content') }, body || children))));
|
94
95
|
})
|
95
96
|
];
|
96
97
|
if (headerPosition === 'bottom') {
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Collapse.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;;GAIG;;;;;AAEH,6DAA0B;AAC1B,kCAAiD;AACjD,2FAI2C;AAC3C,0CAAyC;AACzC,0CAA+C;AAG/C,IAAM,cAAc;IAGlB,GAAC,mBAAM,IAAG,KAAK;IACf,GAAC,oBAAO,IAAG,KAAK;IAChB,GAAC,qBAAQ,IAAG,IAAI;OACjB,CAAC;AAiCF;IAA8B,yCAA6C;IAqBzE,kBAAY,KAAoB;QAAhC,YACE,kBAAM,KAAK,CAAC,SAIb;QATD,WAAK,GAAkB;YACrB,SAAS,EAAE,KAAK;SACjB,CAAC;QAiCF,gBAAU,GAAG,UAAC,GAAQ,IAAK,OAAA,CAAC,KAAI,CAAC,UAAU,GAAG,GAAG,CAAC,EAAvB,CAAuB,CAAC;QA5BjD,KAAI,CAAC,eAAe,GAAG,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACvD,KAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;;IAC3C,CAAC;IAEM,iCAAwB,GAA/B,UAAgC,SAAwB,EAAE,QAAuB;QAC/E,IAAI,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,EAAE;YACvE,OAAO;gBACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,SAAS;aACjC,CAAC;SACH;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kCAAe,GAAf,UAAgB,CAAgC;QAC9C,IAAI,IAAA,uBAAc,EAAC,CAAC,CAAC,EAAE;YACrB,OAAO;SACR;QACD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,EAAE;YACjD,OAAO;SACR;QACD,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS;SACjC,CAAC,CAAC;IACL,CAAC;IAMD,8BAAW,GAAX,UAAY,IAAiB;QAC3B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;IAGD,iCAAc,GAAd,UAAe,IAAiB;QAC9B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAM,IAAI,CAAC,cAAc,CAAC,OAAI,CAAC;IACrD,CAAC;IAGD,gCAAa,GAAb,UAAc,IAAiB;QAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;IAGD,6BAAU,GAAV,UAAW,IAAiB;QAC1B,IAAI,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QACxC,IAAM,MAAM,GACV,YAAY;YACZ,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YACnE,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAM,MAAM,OAAI,CAAC;QACrC,yBAAyB;QACzB,IAAI,CAAC,YAAY,CAAC;IACpB,CAAC;IAGD,gCAAa,GAAb,UAAc,IAAiB;QAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,yBAAM,GAAN;;QAAA,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Collapse\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport {ClassNamesFn, themeable} from '../theme';\nimport Transition, {\n EXITED,\n ENTERING,\n EXITING\n} from 'react-transition-group/Transition';\nimport {autobind} from '../utils/helper';\nimport {isClickOnInput} from '../utils/helper';\nimport {TranslateFn} from '../locale';\n\nconst collapseStyles: {\n [propName: string]: string;\n} = {\n [EXITED]: 'out',\n [EXITING]: 'out',\n [ENTERING]: 'in'\n};\n\nexport interface CollapseProps {\n key?: string;\n id?: string;\n mountOnEnter?: boolean;\n unmountOnExit?: boolean;\n className?: string;\n classPrefix: string;\n classnames: ClassNamesFn;\n headerPosition?: 'top' | 'bottom';\n header?: React.ReactElement;\n body: any;\n bodyClassName?: string;\n disabled?: boolean;\n collapsable?: boolean;\n collapsed?: boolean;\n showArrow?: boolean;\n expandIcon?: React.ReactElement | null;\n headingClassName?: string;\n collapseHeader?: React.ReactElement | null;\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'base';\n onCollapse?: (item: any, collapsed: boolean) => void;\n wrapperComponent?: any;\n headingComponent?: any;\n translate?: TranslateFn;\n propsUpdate?: boolean;\n}\n\nexport interface CollapseState {\n collapsed: boolean;\n}\n\nexport class Collapse extends React.Component<CollapseProps, CollapseState> {\n\n static defaultProps: Partial<CollapseProps> = {\n mountOnEnter: false,\n unmountOnExit: false,\n headerPosition: 'top',\n wrapperComponent: 'div',\n headingComponent: 'div',\n className: '',\n headingClassName: '',\n bodyClassName: '',\n collapsable: true,\n disabled: false,\n showArrow: true,\n propsUpdate: false\n };\n\n state: CollapseState = {\n collapsed: false\n };\n\n constructor(props: CollapseProps) {\n super(props);\n\n this.toggleCollapsed = this.toggleCollapsed.bind(this);\n this.state.collapsed = !!props.collapsed;\n }\n\n static getDerivedStateFromProps(nextProps: CollapseProps, preState: CollapseState) {\n if (nextProps.propsUpdate && nextProps.collapsed !== preState.collapsed) {\n return {\n collapsed: !!nextProps.collapsed\n };\n }\n return null;\n }\n\n toggleCollapsed(e: React.MouseEvent<HTMLElement>) {\n if (isClickOnInput(e)) {\n return;\n }\n const props = this.props;\n if (props.disabled || props.collapsable === false) {\n return;\n }\n props.onCollapse && props.onCollapse(props, !this.state.collapsed);\n this.setState({\n collapsed: !this.state.collapsed\n });\n }\n\n contentDom: any;\n contentRef = (ref: any) => (this.contentDom = ref);\n\n @autobind\n handleEnter(elem: HTMLElement) {\n elem.style['height'] = '';\n }\n\n @autobind\n handleEntering(elem: HTMLElement) {\n elem.style['height'] = `${elem['scrollHeight']}px`;\n }\n\n @autobind\n handleEntered(elem: HTMLElement) {\n elem.style['height'] = '';\n }\n\n @autobind\n handleExit(elem: HTMLElement) {\n let offsetHeight = elem['offsetHeight'];\n const height =\n offsetHeight +\n parseInt(getComputedStyle(elem).getPropertyValue('margin-top'), 10) +\n parseInt(getComputedStyle(elem).getPropertyValue('margin-bottom'), 10);\n elem.style['height'] = `${height}px`;\n // trigger browser reflow\n elem.offsetHeight;\n }\n\n @autobind\n handleExiting(elem: HTMLElement) {\n elem.style['height'] = '';\n }\n\n render() {\n const {\n classnames: cx,\n mountOnEnter,\n unmountOnExit,\n classPrefix: ns,\n size,\n wrapperComponent: WrapperComponent,\n headingComponent: HeadingComponent,\n className,\n headingClassName,\n headerPosition,\n collapseHeader,\n header,\n body,\n bodyClassName,\n collapsable,\n translate: __,\n showArrow,\n expandIcon,\n disabled\n } = this.props;\n\n const finalHeader = this.state.collapsed ? header : collapseHeader || header;\n\n let dom = [\n finalHeader ? (\n <HeadingComponent\n key=\"header\"\n onClick={this.toggleCollapsed}\n className={cx(`Collapse-header`, headingClassName)}\n >\n {showArrow && collapsable\n ? expandIcon\n ? React.cloneElement(expandIcon, {\n ...expandIcon.props,\n className: cx('Collapse-icon-tranform')\n })\n : <span className={cx('Collapse-arrow')} />\n : ''}\n {finalHeader}\n </HeadingComponent>\n ) : null,\n\n <Transition\n key=\"body\"\n mountOnEnter={mountOnEnter}\n unmountOnExit={unmountOnExit}\n in={!this.state.collapsed}\n timeout={300}\n onEnter={this.handleEnter}\n onEntering={this.handleEntering}\n onEntered={this.handleEntered}\n onExit={this.handleExit}\n onExiting={this.handleExiting}\n >\n {(status: string) => {\n if (status === ENTERING) {\n this.contentDom.offsetWidth;\n }\n return (\n <div\n className={cx('Collapse-contentWrapper', collapseStyles[status])}\n ref={this.contentRef}\n >\n <div className={cx('Collapse-body', bodyClassName)}>\n
|
11
|
+
"/**\n * @file Collapse\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport {ClassNamesFn, themeable} from '../theme';\nimport Transition, {\n EXITED,\n ENTERING,\n EXITING\n} from 'react-transition-group/Transition';\nimport {autobind} from '../utils/helper';\nimport {isClickOnInput} from '../utils/helper';\nimport {TranslateFn} from '../locale';\n\nconst collapseStyles: {\n [propName: string]: string;\n} = {\n [EXITED]: 'out',\n [EXITING]: 'out',\n [ENTERING]: 'in'\n};\n\nexport interface CollapseProps {\n key?: string;\n id?: string;\n mountOnEnter?: boolean;\n unmountOnExit?: boolean;\n className?: string;\n classPrefix: string;\n classnames: ClassNamesFn;\n headerPosition?: 'top' | 'bottom';\n header?: React.ReactElement;\n body: any;\n bodyClassName?: string;\n disabled?: boolean;\n collapsable?: boolean;\n collapsed?: boolean;\n showArrow?: boolean;\n expandIcon?: React.ReactElement | null;\n headingClassName?: string;\n collapseHeader?: React.ReactElement | null;\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'base';\n onCollapse?: (item: any, collapsed: boolean) => void;\n wrapperComponent?: any;\n headingComponent?: any;\n translate?: TranslateFn;\n propsUpdate?: boolean;\n}\n\nexport interface CollapseState {\n collapsed: boolean;\n}\n\nexport class Collapse extends React.Component<CollapseProps, CollapseState> {\n\n static defaultProps: Partial<CollapseProps> = {\n mountOnEnter: false,\n unmountOnExit: false,\n headerPosition: 'top',\n wrapperComponent: 'div',\n headingComponent: 'div',\n className: '',\n headingClassName: '',\n bodyClassName: '',\n collapsable: true,\n disabled: false,\n showArrow: true,\n propsUpdate: false\n };\n\n state: CollapseState = {\n collapsed: false\n };\n\n constructor(props: CollapseProps) {\n super(props);\n\n this.toggleCollapsed = this.toggleCollapsed.bind(this);\n this.state.collapsed = !!props.collapsed;\n }\n\n static getDerivedStateFromProps(nextProps: CollapseProps, preState: CollapseState) {\n if (nextProps.propsUpdate && nextProps.collapsed !== preState.collapsed) {\n return {\n collapsed: !!nextProps.collapsed\n };\n }\n return null;\n }\n\n toggleCollapsed(e: React.MouseEvent<HTMLElement>) {\n if (isClickOnInput(e)) {\n return;\n }\n const props = this.props;\n if (props.disabled || props.collapsable === false) {\n return;\n }\n props.onCollapse && props.onCollapse(props, !this.state.collapsed);\n this.setState({\n collapsed: !this.state.collapsed\n });\n }\n\n contentDom: any;\n contentRef = (ref: any) => (this.contentDom = ref);\n\n @autobind\n handleEnter(elem: HTMLElement) {\n elem.style['height'] = '';\n }\n\n @autobind\n handleEntering(elem: HTMLElement) {\n elem.style['height'] = `${elem['scrollHeight']}px`;\n }\n\n @autobind\n handleEntered(elem: HTMLElement) {\n elem.style['height'] = '';\n }\n\n @autobind\n handleExit(elem: HTMLElement) {\n let offsetHeight = elem['offsetHeight'];\n const height =\n offsetHeight +\n parseInt(getComputedStyle(elem).getPropertyValue('margin-top'), 10) +\n parseInt(getComputedStyle(elem).getPropertyValue('margin-bottom'), 10);\n elem.style['height'] = `${height}px`;\n // trigger browser reflow\n elem.offsetHeight;\n }\n\n @autobind\n handleExiting(elem: HTMLElement) {\n elem.style['height'] = '';\n }\n\n render() {\n const {\n classnames: cx,\n mountOnEnter,\n unmountOnExit,\n classPrefix: ns,\n size,\n wrapperComponent: WrapperComponent,\n headingComponent: HeadingComponent,\n className,\n headingClassName,\n headerPosition,\n collapseHeader,\n header,\n body,\n bodyClassName,\n collapsable,\n translate: __,\n showArrow,\n expandIcon,\n disabled,\n children\n } = this.props;\n\n const finalHeader = this.state.collapsed ? header : collapseHeader || header;\n\n let dom = [\n finalHeader ? (\n <HeadingComponent\n key=\"header\"\n onClick={this.toggleCollapsed}\n className={cx(`Collapse-header`, headingClassName)}\n >\n {showArrow && collapsable\n ? expandIcon\n ? React.cloneElement(expandIcon, {\n ...expandIcon.props,\n className: cx('Collapse-icon-tranform')\n })\n : <span className={cx('Collapse-arrow')} />\n : ''}\n {finalHeader}\n </HeadingComponent>\n ) : null,\n\n <Transition\n key=\"body\"\n mountOnEnter={mountOnEnter}\n unmountOnExit={unmountOnExit}\n in={!this.state.collapsed}\n timeout={300}\n onEnter={this.handleEnter}\n onEntering={this.handleEntering}\n onEntered={this.handleEntered}\n onExit={this.handleExit}\n onExiting={this.handleExiting}\n >\n {(status: string) => {\n if (status === ENTERING) {\n this.contentDom.offsetWidth;\n }\n return (\n <div\n className={cx('Collapse-contentWrapper', collapseStyles[status])}\n ref={this.contentRef}\n >\n <div className={cx('Collapse-body', bodyClassName)}>\n <div className={cx('Collapse-content')}>{body || children}</div>\n </div>\n </div>\n );\n }}\n </Transition>\n \n ];\n\n if (headerPosition === 'bottom') {\n dom.reverse();\n }\n\n return (\n <WrapperComponent\n className={cx(\n `Collapse`,\n {\n 'is-active': !this.state.collapsed,\n [`Collapse--${size}`]: size,\n 'Collapse--disabled': disabled || collapsable === false,\n 'Collapse--title-bottom': headerPosition === 'bottom'\n },\n className\n )}\n >\n {dom}\n </WrapperComponent>\n );\n }\n}\n\nexport default themeable(Collapse);\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -8,6 +8,10 @@ import React from 'react';
|
|
8
8
|
import { ColorResult } from 'react-color';
|
9
9
|
import { ThemeProps } from '../theme';
|
10
10
|
import { LocaleProps } from '../locale';
|
11
|
+
export declare type PresetColor = {
|
12
|
+
color: string;
|
13
|
+
title: string;
|
14
|
+
} | string;
|
11
15
|
export interface ColorProps extends LocaleProps, ThemeProps {
|
12
16
|
placeholder?: string;
|
13
17
|
format: string;
|
@@ -19,7 +23,7 @@ export interface ColorProps extends LocaleProps, ThemeProps {
|
|
19
23
|
placement?: string;
|
20
24
|
value?: any;
|
21
25
|
onChange: (value: any) => void;
|
22
|
-
presetColors?:
|
26
|
+
presetColors?: PresetColor[];
|
23
27
|
resetValue?: string;
|
24
28
|
allowCustomColor?: boolean;
|
25
29
|
}
|
@@ -146,15 +146,28 @@ var ColorControl = /** @class */ (function (_super) {
|
|
146
146
|
var isFocused = this.state.isFocused;
|
147
147
|
return (react_1.default.createElement("div", { className: cx("ColorPicker", {
|
148
148
|
'is-disabled': disabled,
|
149
|
-
'is-focused': isFocused
|
149
|
+
'is-focused': isFocused,
|
150
|
+
'is-opened': isOpened
|
150
151
|
}, className) },
|
152
|
+
react_1.default.createElement("span", { onClick: this.handleClick, className: cx('ColorPicker-preview') },
|
153
|
+
react_1.default.createElement("i", { ref: this.preview, className: ns + "ColorPicker-previewIcon", style: { background: this.state.inputValue || '#ccc' } })),
|
151
154
|
react_1.default.createElement("input", { ref: this.input, type: "text", autoComplete: "off", size: 10, className: cx('ColorPicker-input'), value: this.state.inputValue || '', placeholder: __(placeholder), disabled: disabled, onChange: this.handleInputChange, onFocus: this.handleFocus, onBlur: this.handleBlur, onClick: this.handleClick }),
|
152
155
|
clearable && !disabled && value ? (react_1.default.createElement("a", { onClick: this.clearValue, className: cx('ColorPicker-clear') },
|
153
156
|
react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : null,
|
154
|
-
react_1.default.createElement("span", {
|
155
|
-
react_1.default.createElement(
|
157
|
+
react_1.default.createElement("span", { className: cx('ColorPicker-arrow') },
|
158
|
+
react_1.default.createElement(icons_1.Icon, { icon: "caret", className: "icon", onClick: this.handleClick })),
|
156
159
|
isOpened ? (react_1.default.createElement(Overlay_1.default, { placement: placement || 'auto', target: function () { return (0, react_dom_1.findDOMNode)(_this); }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, show: true },
|
157
|
-
react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: cx('ColorPicker-popover', popoverClassName), onHide: this.close, overlay: true }, allowCustomColor ? (react_1.default.createElement(react_color_1.SketchPicker, { disableAlpha: !!~['rgb', 'hex'].indexOf(format), color: value, presetColors: presetColors, onChangeComplete: this.handleChange })) : (react_1.default.createElement(react_color_1.GithubPicker, { color: value, colors: presetColors
|
160
|
+
react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: cx('ColorPicker-popover', popoverClassName), onHide: this.close, overlay: true }, allowCustomColor ? (react_1.default.createElement(react_color_1.SketchPicker, { styles: {}, disableAlpha: !!~['rgb', 'hex'].indexOf(format), color: value, presetColors: presetColors, onChangeComplete: this.handleChange })) : (react_1.default.createElement(react_color_1.GithubPicker, { color: value, colors: Array.isArray(presetColors)
|
161
|
+
? presetColors
|
162
|
+
.filter(function (item) { return typeof item === 'string' || (0, helper_1.isObject)(item); })
|
163
|
+
.map(function (item) {
|
164
|
+
return typeof item === 'string'
|
165
|
+
? item
|
166
|
+
: (0, helper_1.isObject)(item)
|
167
|
+
? item === null || item === void 0 ? void 0 : item.color
|
168
|
+
: item;
|
169
|
+
})
|
170
|
+
: undefined, onChangeComplete: this.handleChange }))))) : null));
|
158
171
|
};
|
159
172
|
ColorControl.defaultProps = {
|
160
173
|
format: 'hex',
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/ColorPicker.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";AAAA;;;;GAIG;;;;AAEH,6DAA0B;AAC1B,uCAAsC;AACtC,2CAAoE;AACpE,iCAA6B;AAC7B,mEAAgC;AAChC,iDAA8C;AAC9C,mEAAgC;AAChC,kCAA6D;AAC7D,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file ColorPicker\n * @description 颜色选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {SketchPicker, GithubPicker, ColorResult} from 'react-color';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {uncontrollable} from 'uncontrollable';\nimport PopOver from './PopOver';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {autobind} from '../utils/helper';\nimport {localeable, LocaleProps} from '../locale';\n\nexport interface ColorProps extends LocaleProps, ThemeProps {\n placeholder?: string;\n format: string;\n // closeOnSelect:boolean;\n clearable: boolean;\n className?: string;\n popoverClassName?: string;\n disabled?: boolean;\n popOverContainer?: any;\n placement?: string;\n value?: any;\n onChange: (value: any) => void;\n presetColors?:
|
11
|
+
"/**\n * @file ColorPicker\n * @description 颜色选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {SketchPicker, GithubPicker, ColorResult} from 'react-color';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {uncontrollable} from 'uncontrollable';\nimport PopOver from './PopOver';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {autobind, isObject} from '../utils/helper';\nimport {localeable, LocaleProps} from '../locale';\n\nexport type PresetColor = {color: string; title: string} | string;\n\nexport interface ColorProps extends LocaleProps, ThemeProps {\n placeholder?: string;\n format: string;\n // closeOnSelect:boolean;\n clearable: boolean;\n className?: string;\n popoverClassName?: string;\n disabled?: boolean;\n popOverContainer?: any;\n placement?: string;\n value?: any;\n onChange: (value: any) => void;\n presetColors?: PresetColor[];\n resetValue?: string;\n allowCustomColor?: boolean;\n}\n\nexport interface ColorControlState {\n isOpened: boolean;\n isFocused: boolean;\n inputValue: string;\n}\n\nexport class ColorControl extends React.PureComponent<\n ColorProps,\n ColorControlState\n> {\n static defaultProps = {\n format: 'hex',\n clearable: true,\n placeholder: 'ColorPicker.placeholder',\n allowCustomColor: true\n // closeOnSelect: true\n };\n state = {\n isOpened: false,\n isFocused: false,\n inputValue: this.props.value || ''\n };\n popover: any;\n closeTimer: number;\n preview: React.RefObject<HTMLElement>;\n input: React.RefObject<HTMLInputElement>;\n constructor(props: ColorProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.focus = this.focus.bind(this);\n this.blur = this.blur.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.preview = React.createRef();\n this.input = React.createRef();\n }\n\n componentDidUpdate(prevProps: ColorProps) {\n const props = this.props;\n\n if (prevProps.value !== props.value) {\n this.setState({\n inputValue: props.value || ''\n });\n }\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false,\n inputValue: this.props.value\n });\n }\n\n focus() {\n this.input.current && this.input.current.focus();\n }\n\n blur() {\n this.input.current && this.input.current.blur();\n }\n\n open(fn?: () => void) {\n if (this.props.disabled) {\n return;\n }\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n clearValue() {\n const {onChange, resetValue} = this.props;\n onChange(resetValue || '');\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open(this.focus);\n }\n\n handleInputChange(e: React.ChangeEvent<HTMLInputElement>) {\n if (!this.props.allowCustomColor) {\n return;\n }\n\n const onChange = this.props.onChange;\n\n this.setState(\n {\n inputValue: e.currentTarget.value\n },\n () => {\n let isValidated = this.validateColor(this.state.inputValue);\n if (isValidated) {\n onChange(this.state.inputValue);\n }\n }\n );\n }\n\n @autobind\n validateColor(value: string) {\n if (value === '') {\n return false;\n }\n if (value === 'inherit') {\n return false;\n }\n if (value === 'transparent') {\n return false;\n }\n\n let image = document.createElement('img');\n image.style.color = 'rgb(0, 0, 0)';\n image.style.color = value;\n if (image.style.color !== 'rgb(0, 0, 0)') {\n return true;\n }\n image.style.color = 'rgb(255, 255, 255)';\n image.style.color = value;\n return image.style.color !== 'rgb(255, 255, 255)';\n }\n\n handleChange(color: ColorResult) {\n const {\n onChange,\n format\n // closeOnSelect\n } = this.props;\n\n if (format === 'rgba') {\n onChange(\n `rgba(${color.rgb.r}, ${color.rgb.g}, ${color.rgb.b}, ${color.rgb.a})`\n );\n } else if (format === 'rgb') {\n onChange(`rgb(${color.rgb.r}, ${color.rgb.g}, ${color.rgb.b})`);\n } else if (format === 'hsl') {\n onChange(\n `hsl(${Math.round(color.hsl.h)}, ${Math.round(\n color.hsl.s * 100\n )}%, ${Math.round(color.hsl.l * 100)}%)`\n );\n } else {\n onChange(color.hex);\n }\n\n // closeOnSelect && this.close();\n }\n\n render() {\n const {\n classPrefix: ns,\n className,\n popoverClassName,\n value,\n placeholder,\n disabled,\n popOverContainer,\n format,\n clearable,\n placement,\n classnames: cx,\n presetColors,\n allowCustomColor\n } = this.props;\n\n const __ = this.props.translate;\n const isOpened = this.state.isOpened;\n const isFocused = this.state.isFocused;\n\n return (\n <div\n className={cx(\n `ColorPicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused,\n 'is-opened': isOpened\n },\n className\n )}\n >\n <span onClick={this.handleClick} className={cx('ColorPicker-preview')}>\n <i\n ref={this.preview}\n className={`${ns}ColorPicker-previewIcon`}\n style={{background: this.state.inputValue || '#ccc'}}\n />\n </span>\n\n <input\n ref={this.input}\n type=\"text\"\n autoComplete=\"off\"\n size={10}\n className={cx('ColorPicker-input')}\n value={this.state.inputValue || ''}\n placeholder={__(placeholder)}\n disabled={disabled}\n onChange={this.handleInputChange}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n />\n\n {clearable && !disabled && value ? (\n <a onClick={this.clearValue} className={cx('ColorPicker-clear')}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <span className={cx('ColorPicker-arrow')}>\n <Icon icon=\"caret\" className=\"icon\" onClick={this.handleClick} />\n </span>\n\n {isOpened ? (\n <Overlay\n placement={placement || 'auto'}\n target={() => findDOMNode(this)}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx('ColorPicker-popover', popoverClassName)}\n onHide={this.close}\n overlay\n >\n {allowCustomColor ? (\n <SketchPicker\n styles={{}}\n disableAlpha={!!~['rgb', 'hex'].indexOf(format as string)}\n color={value}\n presetColors={presetColors}\n onChangeComplete={this.handleChange}\n />\n ) : (\n <GithubPicker\n color={value}\n colors={\n Array.isArray(presetColors)\n ? (presetColors\n .filter(\n item => typeof item === 'string' || isObject(item)\n )\n .map(item =>\n typeof item === 'string'\n ? item\n : isObject(item)\n ? item?.color\n : item\n ) as string[])\n : undefined\n }\n onChangeComplete={this.handleChange}\n />\n )}\n </PopOver>\n </Overlay>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(ColorControl, {\n value: 'onChange'\n })\n )\n);\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -179,6 +179,11 @@ var Overlay = /** @class */ (function (_super) {
|
|
179
179
|
// @ts-ignore
|
180
180
|
react_1.default.createElement(Portal_1.default, { container: container },
|
181
181
|
react_1.default.createElement(RootClose_1.RootClose, { onRootClose: props.onHide }, function (ref) {
|
182
|
+
if (react_1.default.isValidElement(child)) {
|
183
|
+
return react_1.default.cloneElement(child, {
|
184
|
+
ref: ref
|
185
|
+
});
|
186
|
+
}
|
182
187
|
return react_1.default.createElement("div", { ref: ref }, child);
|
183
188
|
})));
|
184
189
|
}
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/components/Overlay.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"/**\n * @file Overlay\n * @description\n * @author fex\n */\n\nimport Portal from 'react-overlays/Portal';\nimport classNames from 'classnames';\nimport ReactDOM, {findDOMNode} from 'react-dom';\nimport React, {cloneElement} from 'react';\nimport {calculatePosition, getContainer, ownerDocument} from '../utils/dom';\nimport {autobind, getScrollParent, noop} from '../utils/helper';\nimport {resizeSensor, getComputedStyle} from '../utils/resize-sensor';\nimport {RootClose} from '../utils/RootClose';\n\nfunction onScroll(elem: HTMLElement, callback: () => void) {\n const handler = () => {\n requestAnimationFrame(callback);\n };\n elem.addEventListener('scroll', handler);\n return function () {\n elem.removeEventListener('scroll', handler);\n };\n}\n\nclass Position extends React.Component<any, any> {\n props: any;\n _lastTarget: any;\n resizeDispose: Array<() => void>;\n watchedTarget: any;\n setState: (state: any) => void;\n\n static defaultProps = {\n containerPadding: 0,\n placement: 'right',\n shouldUpdatePosition: false\n };\n\n constructor(props: any) {\n super(props);\n\n this.state = {\n positionLeft: 0,\n positionTop: 0,\n arrowOffsetLeft: null,\n arrowOffsetTop: null\n };\n\n this._lastTarget = null;\n }\n\n updatePosition(target: any) {\n this._lastTarget = target;\n\n if (!target) {\n return this.setState({\n positionLeft: 0,\n positionTop: 0,\n arrowOffsetLeft: null,\n arrowOffsetTop: null\n });\n }\n\n const watchTargetSizeChange = this.props.watchTargetSizeChange;\n const overlay = findDOMNode(this as any) as HTMLElement;\n const container = getContainer(\n this.props.container,\n ownerDocument(this).body\n );\n\n if (\n (!this.watchedTarget || this.watchedTarget !== target) &&\n getComputedStyle(target, 'position') !== 'static'\n ) {\n this.resizeDispose?.forEach(fn => fn());\n this.watchedTarget = target;\n this.resizeDispose = [\n watchTargetSizeChange !== false\n ? resizeSensor(target, () => this.updatePosition(target))\n : noop,\n resizeSensor(overlay, () => this.updatePosition(target))\n ];\n\n const scrollParent = getScrollParent(target);\n if (scrollParent && container.contains(scrollParent)) {\n this.resizeDispose.push(\n onScroll(scrollParent, () => {\n this.updatePosition(target);\n })\n );\n }\n }\n\n this.setState(\n calculatePosition(\n this.props.placement,\n overlay,\n target,\n container,\n this.props.containerPadding\n )\n );\n }\n\n componentDidMount() {\n this.updatePosition(this.getTarget());\n }\n\n getTarget = () => {\n const {target} = this.props;\n const targetElement = typeof target === 'function' ? target() : target;\n return (targetElement && ReactDOM.findDOMNode(targetElement)) || null;\n };\n\n componentDidUpdate(prevProps: any) {\n this.maybeUpdatePosition(this.props.placement !== prevProps.placement);\n }\n\n maybeUpdatePosition = (placementChanged: any) => {\n const target = this.getTarget();\n\n if (\n !this.props.shouldUpdatePosition &&\n target === this._lastTarget &&\n !placementChanged\n ) {\n return;\n }\n\n this.updatePosition(target);\n };\n\n componentWillUnmount() {\n this.resizeDispose?.forEach(fn => fn());\n }\n\n render() {\n const {children, className, ...props} = this.props;\n const {positionLeft, positionTop, ...arrowPosition} = this.state;\n\n // These should not be forwarded to the child.\n delete props.target;\n delete props.container;\n delete props.containerPadding;\n delete props.shouldUpdatePosition;\n\n const child = React.Children.only(children);\n return cloneElement(child, {\n ...props,\n ...arrowPosition,\n // FIXME: Don't forward `positionLeft` and `positionTop` via both props\n // and `props.style`.\n positionLeft,\n positionTop,\n className: classNames(className, child.props.className),\n style: {\n ...child.props.style,\n left: positionLeft,\n top: positionTop\n }\n });\n }\n}\n\ninterface OverlayProps {\n placement?: string;\n show?: boolean;\n transition?: React.ReactType;\n containerPadding?: number;\n shouldUpdatePosition?: boolean;\n rootClose?: boolean;\n onHide?(props: any, ...args: any[]): any;\n container?: React.ReactNode | Function;\n target?: React.ReactNode | Function;\n watchTargetSizeChange?: boolean;\n\n onEnter?(node: HTMLElement): any;\n onEntering?(node: HTMLElement): any;\n onEntered?(node: HTMLElement): any;\n onExit?(node: HTMLElement): any;\n onExiting?(node: HTMLElement): any;\n onExited?(node: HTMLElement): any;\n}\ninterface OverlayState {\n exited: boolean;\n}\nexport default class Overlay extends React.Component<\n OverlayProps,\n OverlayState\n> {\n static defaultProps = {\n placement: 'auto'\n };\n constructor(props: OverlayProps) {\n super(props as any);\n\n this.state = {\n exited: !props.show\n };\n }\n\n position: any = null;\n positionRef = (position: any) => {\n this.position = position;\n };\n\n updatePosition() {\n this.position?.maybeUpdatePosition(true);\n }\n\n componentDidUpdate(prevProps: OverlayProps) {\n const props = this.props;\n if (prevProps.show !== props.show && props.show) {\n this.setState({exited: false});\n } else if (props.transition !== prevProps.transition && !props.transition) {\n // Otherwise let handleHidden take care of marking exited.\n this.setState({exited: true});\n }\n }\n\n @autobind\n onHiddenListener(node: HTMLElement) {\n this.setState({exited: true});\n\n if (this.props.onExited) {\n this.props.onExited(node);\n }\n }\n\n render() {\n const {\n container,\n containerPadding,\n target,\n placement,\n shouldUpdatePosition,\n rootClose,\n children,\n watchTargetSizeChange,\n transition: Transition,\n ...props\n } = this.props;\n\n const mountOverlay = props.show || (Transition && !this.state.exited);\n if (!mountOverlay) {\n // Don't bother showing anything if we don't have to.\n return null;\n }\n\n let child = children;\n\n // Position is be inner-most because it adds inline styles into the child,\n // which the other wrappers don't forward correctly.\n child = (\n // @ts-ignore\n <Position\n {...{\n container,\n containerPadding,\n target,\n placement,\n shouldUpdatePosition\n }}\n ref={this.positionRef}\n >\n {child}\n </Position>\n );\n\n if (Transition) {\n let {onExit, onExiting, onEnter, onEntering, onEntered} = props;\n\n // This animates the child node by injecting props, so it must precede\n // anything that adds a wrapping div.\n child = (\n <Transition\n in={props.show}\n appear\n onExit={onExit}\n onExiting={onExiting}\n onExited={this.onHiddenListener}\n onEnter={onEnter}\n onEntering={onEntering}\n onEntered={onEntered}\n >\n {child}\n </Transition>\n );\n }\n\n // This goes after everything else because it adds a wrapping div.\n if (rootClose) {\n return (\n // @ts-ignore\n <Portal container={container}>\n <RootClose onRootClose={props.onHide}>\n {(ref: any) => {\n return <div ref={ref}>{child}</div>;\n }}\n </RootClose>\n </Portal>\n );\n }\n\n // @ts-ignore\n return <Portal container={container}>{child}</Portal>;\n }\n}\n"
|
11
|
+
"/**\n * @file Overlay\n * @description\n * @author fex\n */\n\nimport Portal from 'react-overlays/Portal';\nimport classNames from 'classnames';\nimport ReactDOM, {findDOMNode} from 'react-dom';\nimport React, {cloneElement} from 'react';\nimport {calculatePosition, getContainer, ownerDocument} from '../utils/dom';\nimport {autobind, getScrollParent, noop} from '../utils/helper';\nimport {resizeSensor, getComputedStyle} from '../utils/resize-sensor';\nimport {RootClose} from '../utils/RootClose';\n\nfunction onScroll(elem: HTMLElement, callback: () => void) {\n const handler = () => {\n requestAnimationFrame(callback);\n };\n elem.addEventListener('scroll', handler);\n return function () {\n elem.removeEventListener('scroll', handler);\n };\n}\n\nclass Position extends React.Component<any, any> {\n props: any;\n _lastTarget: any;\n resizeDispose: Array<() => void>;\n watchedTarget: any;\n setState: (state: any) => void;\n\n static defaultProps = {\n containerPadding: 0,\n placement: 'right',\n shouldUpdatePosition: false\n };\n\n constructor(props: any) {\n super(props);\n\n this.state = {\n positionLeft: 0,\n positionTop: 0,\n arrowOffsetLeft: null,\n arrowOffsetTop: null\n };\n\n this._lastTarget = null;\n }\n\n updatePosition(target: any) {\n this._lastTarget = target;\n\n if (!target) {\n return this.setState({\n positionLeft: 0,\n positionTop: 0,\n arrowOffsetLeft: null,\n arrowOffsetTop: null\n });\n }\n\n const watchTargetSizeChange = this.props.watchTargetSizeChange;\n const overlay = findDOMNode(this as any) as HTMLElement;\n const container = getContainer(\n this.props.container,\n ownerDocument(this).body\n );\n\n if (\n (!this.watchedTarget || this.watchedTarget !== target) &&\n getComputedStyle(target, 'position') !== 'static'\n ) {\n this.resizeDispose?.forEach(fn => fn());\n this.watchedTarget = target;\n this.resizeDispose = [\n watchTargetSizeChange !== false\n ? resizeSensor(target, () => this.updatePosition(target))\n : noop,\n resizeSensor(overlay, () => this.updatePosition(target))\n ];\n\n const scrollParent = getScrollParent(target);\n if (scrollParent && container.contains(scrollParent)) {\n this.resizeDispose.push(\n onScroll(scrollParent, () => {\n this.updatePosition(target);\n })\n );\n }\n }\n\n this.setState(\n calculatePosition(\n this.props.placement,\n overlay,\n target,\n container,\n this.props.containerPadding\n )\n );\n }\n\n componentDidMount() {\n this.updatePosition(this.getTarget());\n }\n\n getTarget = () => {\n const {target} = this.props;\n const targetElement = typeof target === 'function' ? target() : target;\n return (targetElement && ReactDOM.findDOMNode(targetElement)) || null;\n };\n\n componentDidUpdate(prevProps: any) {\n this.maybeUpdatePosition(this.props.placement !== prevProps.placement);\n }\n\n maybeUpdatePosition = (placementChanged: any) => {\n const target = this.getTarget();\n\n if (\n !this.props.shouldUpdatePosition &&\n target === this._lastTarget &&\n !placementChanged\n ) {\n return;\n }\n\n this.updatePosition(target);\n };\n\n componentWillUnmount() {\n this.resizeDispose?.forEach(fn => fn());\n }\n\n render() {\n const {children, className, ...props} = this.props;\n const {positionLeft, positionTop, ...arrowPosition} = this.state;\n\n // These should not be forwarded to the child.\n delete props.target;\n delete props.container;\n delete props.containerPadding;\n delete props.shouldUpdatePosition;\n\n const child = React.Children.only(children);\n return cloneElement(child, {\n ...props,\n ...arrowPosition,\n // FIXME: Don't forward `positionLeft` and `positionTop` via both props\n // and `props.style`.\n positionLeft,\n positionTop,\n className: classNames(className, child.props.className),\n style: {\n ...child.props.style,\n left: positionLeft,\n top: positionTop\n }\n });\n }\n}\n\ninterface OverlayProps {\n placement?: string;\n show?: boolean;\n transition?: React.ReactType;\n containerPadding?: number;\n shouldUpdatePosition?: boolean;\n rootClose?: boolean;\n onHide?(props: any, ...args: any[]): any;\n container?: React.ReactNode | Function;\n target?: React.ReactNode | Function;\n watchTargetSizeChange?: boolean;\n\n onEnter?(node: HTMLElement): any;\n onEntering?(node: HTMLElement): any;\n onEntered?(node: HTMLElement): any;\n onExit?(node: HTMLElement): any;\n onExiting?(node: HTMLElement): any;\n onExited?(node: HTMLElement): any;\n}\ninterface OverlayState {\n exited: boolean;\n}\nexport default class Overlay extends React.Component<\n OverlayProps,\n OverlayState\n> {\n static defaultProps = {\n placement: 'auto'\n };\n constructor(props: OverlayProps) {\n super(props as any);\n\n this.state = {\n exited: !props.show\n };\n }\n\n position: any = null;\n positionRef = (position: any) => {\n this.position = position;\n };\n\n updatePosition() {\n this.position?.maybeUpdatePosition(true);\n }\n\n componentDidUpdate(prevProps: OverlayProps) {\n const props = this.props;\n if (prevProps.show !== props.show && props.show) {\n this.setState({exited: false});\n } else if (props.transition !== prevProps.transition && !props.transition) {\n // Otherwise let handleHidden take care of marking exited.\n this.setState({exited: true});\n }\n }\n\n @autobind\n onHiddenListener(node: HTMLElement) {\n this.setState({exited: true});\n\n if (this.props.onExited) {\n this.props.onExited(node);\n }\n }\n\n render() {\n const {\n container,\n containerPadding,\n target,\n placement,\n shouldUpdatePosition,\n rootClose,\n children,\n watchTargetSizeChange,\n transition: Transition,\n ...props\n } = this.props;\n\n const mountOverlay = props.show || (Transition && !this.state.exited);\n if (!mountOverlay) {\n // Don't bother showing anything if we don't have to.\n return null;\n }\n\n let child = children;\n\n // Position is be inner-most because it adds inline styles into the child,\n // which the other wrappers don't forward correctly.\n child = (\n // @ts-ignore\n <Position\n {...{\n container,\n containerPadding,\n target,\n placement,\n shouldUpdatePosition\n }}\n ref={this.positionRef}\n >\n {child}\n </Position>\n );\n\n if (Transition) {\n let {onExit, onExiting, onEnter, onEntering, onEntered} = props;\n\n // This animates the child node by injecting props, so it must precede\n // anything that adds a wrapping div.\n child = (\n <Transition\n in={props.show}\n appear\n onExit={onExit}\n onExiting={onExiting}\n onExited={this.onHiddenListener}\n onEnter={onEnter}\n onEntering={onEntering}\n onEntered={onEntered}\n >\n {child}\n </Transition>\n );\n }\n\n // This goes after everything else because it adds a wrapping div.\n if (rootClose) {\n return (\n // @ts-ignore\n <Portal container={container}>\n <RootClose onRootClose={props.onHide}>\n {(ref: any) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n ref: ref\n });\n }\n\n return <div ref={ref}>{child}</div>;\n }}\n </RootClose>\n </Portal>\n );\n }\n\n // @ts-ignore\n return <Portal container={container}>{child}</Portal>;\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -45,6 +45,7 @@ export declare class PopOver extends React.PureComponent<PopOverPorps, PopOverSt
|
|
45
45
|
yOffset: number;
|
46
46
|
};
|
47
47
|
parent: HTMLElement;
|
48
|
+
wrapperRef: React.RefObject<HTMLDivElement>;
|
48
49
|
componentDidMount(): void;
|
49
50
|
componentDidUpdate(): void;
|
50
51
|
componentWillUnmount(): void;
|