@visactor/react-vtable 0.25.1-alpha.3 → 0.25.1-alpha.4
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/cjs/components/custom-component.d.ts +17 -0
- package/cjs/components/custom-component.js +98 -0
- package/cjs/components/custom-component.js.map +1 -0
- package/cjs/components/index.d.ts +1 -0
- package/cjs/components/index.js +10 -1
- package/cjs/components/index.js.map +1 -1
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +1 -2
- package/cjs/index.js.map +1 -1
- package/cjs/util.js +2 -1
- package/dist/react-vtable.js +161 -1
- package/dist/react-vtable.min.js +2 -2
- package/es/components/custom-component.d.ts +17 -0
- package/es/components/custom-component.js +67 -0
- package/es/components/custom-component.js.map +1 -0
- package/es/components/index.d.ts +1 -0
- package/es/components/index.js +2 -0
- package/es/components/index.js.map +1 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -2
- package/es/index.js.map +1 -1
- package/es/util.js +2 -1
- package/package.json +3 -3
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React, { type CSSProperties, type HTMLAttributes, type DetailedHTMLProps } from 'react';
|
|
2
|
+
export interface CustomComponentProps extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>, 'className' | 'ref'> {
|
|
3
|
+
style?: CSSProperties;
|
|
4
|
+
className?: string;
|
|
5
|
+
displayMode: 'position' | 'cell';
|
|
6
|
+
x?: number;
|
|
7
|
+
y?: number;
|
|
8
|
+
width?: number | string;
|
|
9
|
+
height?: number | string;
|
|
10
|
+
row?: number;
|
|
11
|
+
col?: number;
|
|
12
|
+
anchor?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
13
|
+
dx?: number | string;
|
|
14
|
+
dy?: number | string;
|
|
15
|
+
}
|
|
16
|
+
export declare const CustomComponent: React.FC<CustomComponentProps>;
|
|
17
|
+
export default function useMergeProps<PropsType>(componentProps: PropsType, defaultProps: Partial<PropsType>): PropsType;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
|
|
4
|
+
void 0 === k2 && (k2 = k);
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
desc && !("get" in desc ? !m.__esModule : desc.writable || desc.configurable) || (desc = {
|
|
7
|
+
enumerable: !0,
|
|
8
|
+
get: function() {
|
|
9
|
+
return m[k];
|
|
10
|
+
}
|
|
11
|
+
}), Object.defineProperty(o, k2, desc);
|
|
12
|
+
} : function(o, m, k, k2) {
|
|
13
|
+
void 0 === k2 && (k2 = k), o[k2] = m[k];
|
|
14
|
+
}), __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", {
|
|
16
|
+
enumerable: !0,
|
|
17
|
+
value: v
|
|
18
|
+
});
|
|
19
|
+
} : function(o, v) {
|
|
20
|
+
o.default = v;
|
|
21
|
+
}), __importStar = this && this.__importStar || function(mod) {
|
|
22
|
+
if (mod && mod.__esModule) return mod;
|
|
23
|
+
var result = {};
|
|
24
|
+
if (null != mod) for (var k in mod) "default" !== k && Object.prototype.hasOwnProperty.call(mod, k) && __createBinding(result, mod, k);
|
|
25
|
+
return __setModuleDefault(result, mod), result;
|
|
26
|
+
}, __importDefault = this && this.__importDefault || function(mod) {
|
|
27
|
+
return mod && mod.__esModule ? mod : {
|
|
28
|
+
default: mod
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
Object.defineProperty(exports, "__esModule", {
|
|
33
|
+
value: !0
|
|
34
|
+
}), exports.CustomComponent = void 0;
|
|
35
|
+
|
|
36
|
+
const react_1 = __importStar(require("react")), table_1 = __importDefault(require("../context/table")), vutils_1 = require("@visactor/vutils"), CustomComponent = baseProps => {
|
|
37
|
+
const context = (0, react_1.useContext)(table_1.default), {table: table} = context, props = useMergeProps(baseProps, {
|
|
38
|
+
style: {
|
|
39
|
+
left: 0,
|
|
40
|
+
top: 0
|
|
41
|
+
},
|
|
42
|
+
className: "vtable-custom-component",
|
|
43
|
+
displayMode: "position",
|
|
44
|
+
x: 0,
|
|
45
|
+
y: 0,
|
|
46
|
+
width: 0,
|
|
47
|
+
height: 0,
|
|
48
|
+
row: 0,
|
|
49
|
+
col: 0,
|
|
50
|
+
anchor: "top-left",
|
|
51
|
+
dx: 0,
|
|
52
|
+
dy: 0
|
|
53
|
+
}), {displayMode: displayMode, x: x, y: y, width: width, height: height, row: row, col: col, anchor: anchor, dx: dx, dy: dy, className: className, children: children, style: style} = props;
|
|
54
|
+
let styleLeft, styleTop, styleWidth, styleHeight;
|
|
55
|
+
if ("position" === displayMode) styleLeft = x + dx + "px", styleTop = y + dy + "px",
|
|
56
|
+
styleWidth = width + "px", styleHeight = height + "px"; else if ("cell" === displayMode) {
|
|
57
|
+
const cellRect = table && col >= 0 && row >= 0 ? null == table ? void 0 : table.getCellRelativeRect(col, row) : {
|
|
58
|
+
width: 0,
|
|
59
|
+
height: 0,
|
|
60
|
+
left: -9999,
|
|
61
|
+
top: -9999
|
|
62
|
+
};
|
|
63
|
+
styleWidth = dealWidthNumber(width, cellRect.width) + "px", styleHeight = dealWidthNumber(height, cellRect.height) + "px",
|
|
64
|
+
"top-left" === anchor ? (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + "px",
|
|
65
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + "px") : "top-right" === anchor ? (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + "px",
|
|
66
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + "px") : "bottom-left" === anchor ? (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + "px",
|
|
67
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + "px") : "bottom-right" === anchor && (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + "px",
|
|
68
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + "px");
|
|
69
|
+
}
|
|
70
|
+
const componentStyle = (0, vutils_1.merge)({}, style, {
|
|
71
|
+
position: "absolute",
|
|
72
|
+
zIndex: 1e3,
|
|
73
|
+
width: styleWidth,
|
|
74
|
+
height: styleHeight,
|
|
75
|
+
left: styleLeft,
|
|
76
|
+
top: styleTop
|
|
77
|
+
});
|
|
78
|
+
return react_1.default.createElement("div", {
|
|
79
|
+
className: className,
|
|
80
|
+
style: componentStyle
|
|
81
|
+
}, react_1.default.Children.map(children, (child => child ? react_1.default.cloneElement(child, {}) : child)));
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
function useMergeProps(componentProps, defaultProps) {
|
|
85
|
+
const _defaultProps = (0, react_1.useMemo)((() => Object.assign({}, defaultProps)), [ defaultProps ]);
|
|
86
|
+
return (0, react_1.useMemo)((() => {
|
|
87
|
+
const mProps = (0, vutils_1.merge)({}, componentProps);
|
|
88
|
+
for (const propName in _defaultProps) void 0 === mProps[propName] && (mProps[propName] = _defaultProps[propName]);
|
|
89
|
+
return mProps;
|
|
90
|
+
}), [ componentProps, _defaultProps ]);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function dealWidthNumber(value, refenceValue) {
|
|
94
|
+
return (0, vutils_1.isNumber)(value) ? value : "string" == typeof value && value.endsWith("%") ? Number(value.slice(0, -1)) / 100 * refenceValue : 0;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
//# sourceMappingURL=custom-component.js.map
|
|
98
|
+
exports.CustomComponent = CustomComponent, exports.default = useMergeProps;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["components/custom-component.tsx"],"names":[],"mappings":"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","file":"custom-component.js","sourcesContent":["import type { ReactElement } from 'react';\nimport React, {\n type CSSProperties,\n type ReactNode,\n type HTMLAttributes,\n type DetailedHTMLProps,\n useContext,\n useMemo\n} from 'react';\nimport RootTableContext from '../context/table';\nimport { isNumber, merge } from '@visactor/vutils';\n\nexport interface CustomComponentProps\n extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>, 'className' | 'ref'> {\n style?: CSSProperties;\n // className?: string | string[];\n className?: string;\n\n // for table\n displayMode: 'position' | 'cell';\n x?: number;\n y?: number;\n width?: number | string;\n height?: number | string;\n // width?: number;\n // height?: number;\n row?: number;\n col?: number;\n anchor?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';\n dx?: number | string;\n dy?: number | string;\n // dx?: number;\n // dy?: number;\n}\n\nexport const CustomComponent: React.FC<CustomComponentProps> = (baseProps: CustomComponentProps) => {\n const context = useContext(RootTableContext);\n const { table } = context;\n\n // if (!table) {\n // return null;\n // }\n\n const props = useMergeProps<CustomComponentProps>(baseProps, {\n style: {\n left: 0,\n top: 0\n },\n className: 'vtable-custom-component',\n displayMode: 'position',\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n row: 0,\n col: 0,\n anchor: 'top-left',\n dx: 0,\n dy: 0\n });\n const { displayMode, x, y, width, height, row, col, anchor, dx, dy, className, children, style } = props;\n\n let styleLeft;\n let styleTop;\n let styleWidth;\n let styleHeight;\n\n if (displayMode === 'position') {\n styleLeft = x + (dx as number) + 'px';\n styleTop = y + (dy as number) + 'px';\n styleWidth = width + 'px';\n styleHeight = height + 'px';\n } else if (displayMode === 'cell') {\n const cellRect =\n table && col >= 0 && row >= 0\n ? table?.getCellRelativeRect(col, row)\n : { width: 0, height: 0, left: -9999, top: -9999 };\n styleWidth = dealWidthNumber(width, cellRect.width) + 'px';\n styleHeight = dealWidthNumber(height, cellRect.height) + 'px';\n if (anchor === 'top-left') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + 'px';\n } else if (anchor === 'top-right') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + 'px';\n } else if (anchor === 'bottom-left') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + 'px';\n } else if (anchor === 'bottom-right') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + 'px';\n }\n }\n\n const componentStyle = merge({}, style, {\n position: 'absolute',\n zIndex: 1000,\n width: styleWidth,\n height: styleHeight,\n left: styleLeft,\n top: styleTop\n });\n\n return (\n <div className={className} style={componentStyle}>\n {React.Children.map(children, (child: ReactNode) => {\n if (child) {\n return React.cloneElement(child as ReactElement, {});\n }\n return child;\n })}\n </div>\n );\n};\n\n// export const CustomComponent = forwardRef<unknown, CustomComponentProps>(CustomComponent1);\n\nexport default function useMergeProps<PropsType>(\n componentProps: PropsType,\n defaultProps: Partial<PropsType>\n): PropsType {\n const _defaultProps = useMemo(() => {\n return { ...defaultProps };\n }, [defaultProps]);\n\n const props = useMemo(() => {\n const mProps = merge({}, componentProps);\n\n // https://github.com/facebook/react/blob/cae635054e17a6f107a39d328649137b83f25972/packages/react/src/ReactElement.js#L312\n for (const propName in _defaultProps) {\n if (mProps[propName] === undefined) {\n mProps[propName] = _defaultProps[propName];\n }\n }\n\n return mProps;\n }, [componentProps, _defaultProps]);\n\n return props;\n}\n\nfunction dealWidthNumber(value: string | number, refenceValue: number) {\n if (isNumber(value)) {\n return value;\n }\n\n if (typeof value === 'string' && value.endsWith('%')) {\n return (Number(value.slice(0, -1)) / 100) * refenceValue;\n }\n\n return 0;\n}\n"]}
|
|
@@ -6,6 +6,7 @@ export { PivotColumnHeaderTitle, PivotRowHeaderTitle } from './pivot/pivot-heade
|
|
|
6
6
|
export { PivotCorner } from './pivot/pivot-corner';
|
|
7
7
|
export { Menu } from './component/menu';
|
|
8
8
|
export { Tooltip } from './component/tooltip';
|
|
9
|
+
export { CustomComponent } from './custom-component';
|
|
9
10
|
type Props = {
|
|
10
11
|
updateId?: number;
|
|
11
12
|
};
|
package/cjs/components/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: !0
|
|
5
|
-
}), exports.Tooltip = exports.Menu = exports.PivotCorner = exports.PivotRowHeaderTitle = exports.PivotColumnHeaderTitle = exports.PivotIndicator = exports.PivotRowDimension = exports.PivotColumnDimension = exports.ListColumn = void 0;
|
|
5
|
+
}), exports.CustomComponent = exports.Tooltip = exports.Menu = exports.PivotCorner = exports.PivotRowHeaderTitle = exports.PivotColumnHeaderTitle = exports.PivotIndicator = exports.PivotRowDimension = exports.PivotColumnDimension = exports.ListColumn = void 0;
|
|
6
6
|
|
|
7
7
|
var list_column_1 = require("./list/list-column");
|
|
8
8
|
|
|
@@ -76,4 +76,13 @@ Object.defineProperty(exports, "Tooltip", {
|
|
|
76
76
|
return tooltip_1.Tooltip;
|
|
77
77
|
}
|
|
78
78
|
});
|
|
79
|
+
|
|
80
|
+
var custom_component_1 = require("./custom-component");
|
|
81
|
+
|
|
82
|
+
Object.defineProperty(exports, "CustomComponent", {
|
|
83
|
+
enumerable: !0,
|
|
84
|
+
get: function() {
|
|
85
|
+
return custom_component_1.CustomComponent;
|
|
86
|
+
}
|
|
87
|
+
});
|
|
79
88
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/index.ts"],"names":[],"mappings":";;;AACA,kDAAgD;AAAvC,yGAAA,UAAU,OAAA;AACnB,2DAAkF;AAAzE,uHAAA,oBAAoB,OAAA;AAAE,oHAAA,iBAAiB,OAAA;AAChD,2DAAyD;AAAhD,iHAAA,cAAc,OAAA;AACvB,iEAAyF;AAAhF,4HAAA,sBAAsB,OAAA;AAAE,yHAAA,mBAAmB,OAAA;AACpD,qDAAmD;AAA1C,2GAAA,WAAW,OAAA;AACpB,yCAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,+CAA8C;AAArC,kGAAA,OAAO,OAAA","file":"index.js","sourcesContent":["import type React from 'react';\nexport { ListColumn } from './list/list-column';\nexport { PivotColumnDimension, PivotRowDimension } from './pivot/pivot-dimension';\nexport { PivotIndicator } from './pivot/pivot-indicator';\nexport { PivotColumnHeaderTitle, PivotRowHeaderTitle } from './pivot/pivot-header-title';\nexport { PivotCorner } from './pivot/pivot-corner';\nexport { Menu } from './component/menu';\nexport { Tooltip } from './component/tooltip';\n\ntype Props = { updateId?: number };\n\nexport interface IMarkElement extends React.ReactElement<Props, React.JSXElementConstructor<Props>> {\n id: string | number;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["components/index.ts"],"names":[],"mappings":";;;AACA,kDAAgD;AAAvC,yGAAA,UAAU,OAAA;AACnB,2DAAkF;AAAzE,uHAAA,oBAAoB,OAAA;AAAE,oHAAA,iBAAiB,OAAA;AAChD,2DAAyD;AAAhD,iHAAA,cAAc,OAAA;AACvB,iEAAyF;AAAhF,4HAAA,sBAAsB,OAAA;AAAE,yHAAA,mBAAmB,OAAA;AACpD,qDAAmD;AAA1C,2GAAA,WAAW,OAAA;AACpB,yCAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,+CAA8C;AAArC,kGAAA,OAAO,OAAA;AAEhB,uDAAqD;AAA5C,mHAAA,eAAe,OAAA","file":"index.js","sourcesContent":["import type React from 'react';\nexport { ListColumn } from './list/list-column';\nexport { PivotColumnDimension, PivotRowDimension } from './pivot/pivot-dimension';\nexport { PivotIndicator } from './pivot/pivot-indicator';\nexport { PivotColumnHeaderTitle, PivotRowHeaderTitle } from './pivot/pivot-header-title';\nexport { PivotCorner } from './pivot/pivot-corner';\nexport { Menu } from './component/menu';\nexport { Tooltip } from './component/tooltip';\n\nexport { CustomComponent } from './custom-component';\n\ntype Props = { updateId?: number };\n\nexport interface IMarkElement extends React.ReactElement<Props, React.JSXElementConstructor<Props>> {\n id: string | number;\n}\n"]}
|
package/cjs/index.d.ts
CHANGED
package/cjs/index.js
CHANGED
|
@@ -34,5 +34,4 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
34
34
|
const VTable = __importStar(require("@visactor/vtable"));
|
|
35
35
|
|
|
36
36
|
exports.VTable = VTable, __exportStar(require("./tables"), exports), __exportStar(require("./components"), exports),
|
|
37
|
-
exports.version = "0.25.1-alpha.
|
|
38
|
-
//# sourceMappingURL=index.js.map
|
|
37
|
+
exports.version = "0.25.1-alpha.4";
|
package/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA2C;AAIlC,wBAAM;AAFf,2CAAyB;AACzB,+CAA6B;AAGhB,QAAA,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["import * as VTable from '@visactor/vtable';\n\nexport * from './tables';\nexport * from './components';\nexport { VTable };\n\nexport const version = \"0.25.1-alpha.
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA2C;AAIlC,wBAAM;AAFf,2CAAyB;AACzB,+CAA6B;AAGhB,QAAA,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["import * as VTable from '@visactor/vtable';\n\nexport * from './tables';\nexport * from './components';\nexport { VTable };\n\nexport const version = \"0.25.1-alpha.4\";\n"]}
|
package/cjs/util.js
CHANGED
package/dist/react-vtable.js
CHANGED
|
@@ -2835,6 +2835,9 @@
|
|
|
2835
2835
|
const isNil = value => null == value;
|
|
2836
2836
|
var isNil$1 = isNil;
|
|
2837
2837
|
|
|
2838
|
+
const isValid = value => null != value;
|
|
2839
|
+
var isValid$1 = isValid;
|
|
2840
|
+
|
|
2838
2841
|
const isObjectLike = value => "object" == typeof value && null !== value;
|
|
2839
2842
|
var isObjectLike$1 = isObjectLike;
|
|
2840
2843
|
|
|
@@ -2857,6 +2860,68 @@
|
|
|
2857
2860
|
const isArray = value => Array.isArray ? Array.isArray(value) : isType$1(value, "Array");
|
|
2858
2861
|
var isArray$1 = isArray;
|
|
2859
2862
|
|
|
2863
|
+
const isArrayLike = function (value) {
|
|
2864
|
+
return null !== value && "function" != typeof value && Number.isFinite(value.length);
|
|
2865
|
+
};
|
|
2866
|
+
var isArrayLike$1 = isArrayLike;
|
|
2867
|
+
|
|
2868
|
+
const isNumber = function (value) {
|
|
2869
|
+
let fuzzy = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !1;
|
|
2870
|
+
const type = typeof value;
|
|
2871
|
+
return fuzzy ? "number" === type : "number" === type || isType$1(value, "Number");
|
|
2872
|
+
};
|
|
2873
|
+
var isNumber$1 = isNumber;
|
|
2874
|
+
|
|
2875
|
+
function baseMerge(target, source) {
|
|
2876
|
+
let shallowArray = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !1;
|
|
2877
|
+
if (source) {
|
|
2878
|
+
if (target === source) return;
|
|
2879
|
+
if (isValid$1(source) && "object" == typeof source) {
|
|
2880
|
+
const iterable = Object(source),
|
|
2881
|
+
props = [];
|
|
2882
|
+
for (const key in iterable) props.push(key);
|
|
2883
|
+
let {
|
|
2884
|
+
length: length
|
|
2885
|
+
} = props,
|
|
2886
|
+
propIndex = -1;
|
|
2887
|
+
for (; length--;) {
|
|
2888
|
+
const key = props[++propIndex];
|
|
2889
|
+
isValid$1(iterable[key]) && "object" == typeof iterable[key] ? baseMergeDeep(target, source, key, shallowArray) : assignMergeValue(target, key, iterable[key]);
|
|
2890
|
+
}
|
|
2891
|
+
}
|
|
2892
|
+
}
|
|
2893
|
+
}
|
|
2894
|
+
function baseMergeDeep(target, source, key) {
|
|
2895
|
+
let shallowArray = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;
|
|
2896
|
+
const objValue = target[key],
|
|
2897
|
+
srcValue = source[key];
|
|
2898
|
+
let newValue = source[key],
|
|
2899
|
+
isCommon = !0;
|
|
2900
|
+
if (isArray$1(srcValue)) {
|
|
2901
|
+
if (shallowArray) newValue = [];else if (isArray$1(objValue)) newValue = objValue;else if (isArrayLike$1(objValue)) {
|
|
2902
|
+
newValue = new Array(objValue.length);
|
|
2903
|
+
let index = -1;
|
|
2904
|
+
const length = objValue.length;
|
|
2905
|
+
for (; ++index < length;) newValue[index] = objValue[index];
|
|
2906
|
+
}
|
|
2907
|
+
} else isPlainObject$1(srcValue) ? (newValue = objValue, "function" != typeof objValue && "object" == typeof objValue || (newValue = {})) : isCommon = !1;
|
|
2908
|
+
isCommon && baseMerge(newValue, srcValue, shallowArray), assignMergeValue(target, key, newValue);
|
|
2909
|
+
}
|
|
2910
|
+
function assignMergeValue(target, key, value) {
|
|
2911
|
+
(void 0 !== value && !eq(target[key], value) || void 0 === value && !(key in target)) && (target[key] = value);
|
|
2912
|
+
}
|
|
2913
|
+
function eq(value, other) {
|
|
2914
|
+
return value === other || Number.isNaN(value) && Number.isNaN(other);
|
|
2915
|
+
}
|
|
2916
|
+
function merge(target) {
|
|
2917
|
+
let sourceIndex = -1;
|
|
2918
|
+
const length = arguments.length <= 1 ? 0 : arguments.length - 1;
|
|
2919
|
+
for (; ++sourceIndex < length;) {
|
|
2920
|
+
baseMerge(target, sourceIndex + 1 < 1 || arguments.length <= sourceIndex + 1 ? undefined : arguments[sourceIndex + 1], !0);
|
|
2921
|
+
}
|
|
2922
|
+
return target;
|
|
2923
|
+
}
|
|
2924
|
+
|
|
2860
2925
|
function pickWithout(obj, keys) {
|
|
2861
2926
|
if (!obj || !isPlainObject$1(obj)) return obj;
|
|
2862
2927
|
const result = {};
|
|
@@ -3587,9 +3652,104 @@
|
|
|
3587
3652
|
|
|
3588
3653
|
const Tooltip = createComponent('Tooltip', 'tooltip', undefined, true);
|
|
3589
3654
|
|
|
3590
|
-
const
|
|
3655
|
+
const CustomComponent = (baseProps) => {
|
|
3656
|
+
const context = reactExports.useContext(TableContext);
|
|
3657
|
+
const { table } = context;
|
|
3658
|
+
const props = useMergeProps(baseProps, {
|
|
3659
|
+
style: {
|
|
3660
|
+
left: 0,
|
|
3661
|
+
top: 0
|
|
3662
|
+
},
|
|
3663
|
+
className: 'vtable-custom-component',
|
|
3664
|
+
displayMode: 'position',
|
|
3665
|
+
x: 0,
|
|
3666
|
+
y: 0,
|
|
3667
|
+
width: 0,
|
|
3668
|
+
height: 0,
|
|
3669
|
+
row: 0,
|
|
3670
|
+
col: 0,
|
|
3671
|
+
anchor: 'top-left',
|
|
3672
|
+
dx: 0,
|
|
3673
|
+
dy: 0
|
|
3674
|
+
});
|
|
3675
|
+
const { displayMode, x, y, width, height, row, col, anchor, dx, dy, className, children, style } = props;
|
|
3676
|
+
let styleLeft;
|
|
3677
|
+
let styleTop;
|
|
3678
|
+
let styleWidth;
|
|
3679
|
+
let styleHeight;
|
|
3680
|
+
if (displayMode === 'position') {
|
|
3681
|
+
styleLeft = x + dx + 'px';
|
|
3682
|
+
styleTop = y + dy + 'px';
|
|
3683
|
+
styleWidth = width + 'px';
|
|
3684
|
+
styleHeight = height + 'px';
|
|
3685
|
+
}
|
|
3686
|
+
else if (displayMode === 'cell') {
|
|
3687
|
+
const cellRect = table && col >= 0 && row >= 0
|
|
3688
|
+
? table?.getCellRelativeRect(col, row)
|
|
3689
|
+
: { width: 0, height: 0, left: -9999, top: -9999 };
|
|
3690
|
+
styleWidth = dealWidthNumber(width, cellRect.width) + 'px';
|
|
3691
|
+
styleHeight = dealWidthNumber(height, cellRect.height) + 'px';
|
|
3692
|
+
if (anchor === 'top-left') {
|
|
3693
|
+
styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + 'px';
|
|
3694
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + 'px';
|
|
3695
|
+
}
|
|
3696
|
+
else if (anchor === 'top-right') {
|
|
3697
|
+
styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + 'px';
|
|
3698
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + 'px';
|
|
3699
|
+
}
|
|
3700
|
+
else if (anchor === 'bottom-left') {
|
|
3701
|
+
styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + 'px';
|
|
3702
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + 'px';
|
|
3703
|
+
}
|
|
3704
|
+
else if (anchor === 'bottom-right') {
|
|
3705
|
+
styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + 'px';
|
|
3706
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + 'px';
|
|
3707
|
+
}
|
|
3708
|
+
}
|
|
3709
|
+
const componentStyle = merge({}, style, {
|
|
3710
|
+
position: 'absolute',
|
|
3711
|
+
zIndex: 1000,
|
|
3712
|
+
width: styleWidth,
|
|
3713
|
+
height: styleHeight,
|
|
3714
|
+
left: styleLeft,
|
|
3715
|
+
top: styleTop
|
|
3716
|
+
});
|
|
3717
|
+
return (React.createElement("div", { className: className, style: componentStyle }, React.Children.map(children, (child) => {
|
|
3718
|
+
if (child) {
|
|
3719
|
+
return React.cloneElement(child, {});
|
|
3720
|
+
}
|
|
3721
|
+
return child;
|
|
3722
|
+
})));
|
|
3723
|
+
};
|
|
3724
|
+
function useMergeProps(componentProps, defaultProps) {
|
|
3725
|
+
const _defaultProps = reactExports.useMemo(() => {
|
|
3726
|
+
return { ...defaultProps };
|
|
3727
|
+
}, [defaultProps]);
|
|
3728
|
+
const props = reactExports.useMemo(() => {
|
|
3729
|
+
const mProps = merge({}, componentProps);
|
|
3730
|
+
for (const propName in _defaultProps) {
|
|
3731
|
+
if (mProps[propName] === undefined) {
|
|
3732
|
+
mProps[propName] = _defaultProps[propName];
|
|
3733
|
+
}
|
|
3734
|
+
}
|
|
3735
|
+
return mProps;
|
|
3736
|
+
}, [componentProps, _defaultProps]);
|
|
3737
|
+
return props;
|
|
3738
|
+
}
|
|
3739
|
+
function dealWidthNumber(value, refenceValue) {
|
|
3740
|
+
if (isNumber$1(value)) {
|
|
3741
|
+
return value;
|
|
3742
|
+
}
|
|
3743
|
+
if (typeof value === 'string' && value.endsWith('%')) {
|
|
3744
|
+
return (Number(value.slice(0, -1)) / 100) * refenceValue;
|
|
3745
|
+
}
|
|
3746
|
+
return 0;
|
|
3747
|
+
}
|
|
3748
|
+
|
|
3749
|
+
const version = "0.25.1-alpha.4";
|
|
3591
3750
|
|
|
3592
3751
|
exports.VTable = VTable__namespace;
|
|
3752
|
+
exports.CustomComponent = CustomComponent;
|
|
3593
3753
|
exports.ListColumn = ListColumn;
|
|
3594
3754
|
exports.ListTable = ListTable;
|
|
3595
3755
|
exports.Menu = Menu;
|
package/dist/react-vtable.min.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* This source code is licensed under the MIT license found in the
|
|
9
9
|
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*/"production"===process.env.NODE_ENV?u.exports=function(){if(a)return i;a=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),c=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),d=Symbol.iterator,y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,v={};function h(e,t,r){this.props=e,this.context=t,this.refs=v,this.updater=r||y}function b(){}function _(e,t,r){this.props=e,this.context=t,this.refs=v,this.updater=r||y}h.prototype.isReactComponent={},h.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},h.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=h.prototype;var g=_.prototype=new b;g.constructor=_,m(g,h.prototype),g.isPureReactComponent=!0;var E=Array.isArray,C=Object.prototype.hasOwnProperty,S={current:null},O={key:!0,ref:!0,__self:!0,__source:!0};function R(t,r,n){var o,a={},u=null,i=null;if(null!=r)for(o in void 0!==r.ref&&(i=r.ref),void 0!==r.key&&(u=""+r.key),r)C.call(r,o)&&!O.hasOwnProperty(o)&&(a[o]=r[o]);var c=arguments.length-2;if(1===c)a.children=n;else if(1<c){for(var s=Array(c),l=0;l<c;l++)s[l]=arguments[l+2];a.children=s}if(t&&t.defaultProps)for(o in c=t.defaultProps)void 0===a[o]&&(a[o]=c[o]);return{$$typeof:e,type:t,key:u,ref:i,props:a,_owner:S.current}}function w(t){return"object"==typeof t&&null!==t&&t.$$typeof===e}var k=/\/+/g;function L(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(r,n,o,a,u){var i=typeof r;"undefined"!==i&&"boolean"!==i||(r=null);var c=!1;if(null===r)c=!0;else switch(i){case"string":case"number":c=!0;break;case"object":switch(r.$$typeof){case e:case t:c=!0}}if(c)return u=u(c=r),r=""===a?"."+L(c,0):a,E(u)?(o="",null!=r&&(o=r.replace(k,"$&/")+"/"),T(u,n,o,"",(function(e){return e}))):null!=u&&(w(u)&&(u=function(t,r){return{$$typeof:e,type:t.type,key:r,ref:t.ref,props:t.props,_owner:t._owner}}(u,o+(!u.key||c&&c.key===u.key?"":(""+u.key).replace(k,"$&/")+"/")+r)),n.push(u)),1;if(c=0,a=""===a?".":a+":",E(r))for(var s=0;s<r.length;s++){var l=a+L(i=r[s],s);c+=T(i,n,o,l,u)}else if(l=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=d&&e[d]||e["@@iterator"])?e:null}(r),"function"==typeof l)for(r=l.call(r),s=0;!(i=r.next()).done;)c+=T(i=i.value,n,o,l=a+L(i,s++),u);else if("object"===i)throw n=String(r),Error("Objects are not valid as a React child (found: "+("[object Object]"===n?"object with keys {"+Object.keys(r).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.");return c}function P(e,t,r){if(null==e)return e;var n=[],o=0;return T(e,n,"","",(function(e){return t.call(r,e,o++)})),n}function j(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var N={current:null},$={transition:null},I={ReactCurrentDispatcher:N,ReactCurrentBatchConfig:$,ReactCurrentOwner:S};return i.Children={map:P,forEach:function(e,t,r){P(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return P(e,(function(){t++})),t},toArray:function(e){return P(e,(function(e){return e}))||[]},only:function(e){if(!w(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},i.Component=h,i.Fragment=r,i.Profiler=o,i.PureComponent=_,i.StrictMode=n,i.Suspense=l,i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=I,i.cloneElement=function(t,r,n){if(null==t)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+t+".");var o=m({},t.props),a=t.key,u=t.ref,i=t._owner;if(null!=r){if(void 0!==r.ref&&(u=r.ref,i=S.current),void 0!==r.key&&(a=""+r.key),t.type&&t.type.defaultProps)var c=t.type.defaultProps;for(s in r)C.call(r,s)&&!O.hasOwnProperty(s)&&(o[s]=void 0===r[s]&&void 0!==c?c[s]:r[s])}var s=arguments.length-2;if(1===s)o.children=n;else if(1<s){c=Array(s);for(var l=0;l<s;l++)c[l]=arguments[l+2];o.children=c}return{$$typeof:e,type:t.type,key:a,ref:u,props:o,_owner:i}},i.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:u,_context:e},e.Consumer=e},i.createElement=R,i.createFactory=function(e){var t=R.bind(null,e);return t.type=e,t},i.createRef=function(){return{current:null}},i.forwardRef=function(e){return{$$typeof:s,render:e}},i.isValidElement=w,i.lazy=function(e){return{$$typeof:p,_payload:{_status:-1,_result:e},_init:j}},i.memo=function(e,t){return{$$typeof:f,type:e,compare:void 0===t?null:t}},i.startTransition=function(e){var t=$.transition;$.transition={};try{e()}finally{$.transition=t}},i.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},i.useCallback=function(e,t){return N.current.useCallback(e,t)},i.useContext=function(e){return N.current.useContext(e)},i.useDebugValue=function(){},i.useDeferredValue=function(e){return N.current.useDeferredValue(e)},i.useEffect=function(e,t){return N.current.useEffect(e,t)},i.useId=function(){return N.current.useId()},i.useImperativeHandle=function(e,t,r){return N.current.useImperativeHandle(e,t,r)},i.useInsertionEffect=function(e,t){return N.current.useInsertionEffect(e,t)},i.useLayoutEffect=function(e,t){return N.current.useLayoutEffect(e,t)},i.useMemo=function(e,t){return N.current.useMemo(e,t)},i.useReducer=function(e,t,r){return N.current.useReducer(e,t,r)},i.useRef=function(e){return N.current.useRef(e)},i.useState=function(e){return N.current.useState(e)},i.useSyncExternalStore=function(e,t,r){return N.current.useSyncExternalStore(e,t,r)},i.useTransition=function(){return N.current.useTransition()},i.version="18.2.0",i}():u.exports=(c||(c=1,function(e,t){"production"!==process.env.NODE_ENV&&function(){"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),u=Symbol.for("react.profiler"),i=Symbol.for("react.provider"),c=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),m=Symbol.iterator,v="@@iterator";function h(e){if(null===e||"object"!=typeof e)return null;var t=m&&e[m]||e[v];return"function"==typeof t?t:null}var b={current:null},_={transition:null},g={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},E={current:null},C={},S=null;function O(e){S=e}C.setExtraStackFrame=function(e){S=e},C.getCurrentStack=null,C.getStackAddendum=function(){var e="";S&&(e+=S);var t=C.getCurrentStack;return t&&(e+=t()||""),e};var R=!1,w=!1,k=!1,L=!1,T=!1,P={ReactCurrentDispatcher:b,ReactCurrentBatchConfig:_,ReactCurrentOwner:E};function j(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];$("warn",e,r)}function N(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];$("error",e,r)}function $(e,t,r){var n=P.ReactDebugCurrentFrame.getStackAddendum();""!==n&&(t+="%s",r=r.concat([n]));var o=r.map((function(e){return String(e)}));o.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,o)}P.ReactDebugCurrentFrame=C,P.ReactCurrentActQueue=g;var I={};function D(e,t){var r=e.constructor,n=r&&(r.displayName||r.name)||"ReactClass",o=n+"."+t;I[o]||(N("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",t,n),I[o]=!0)}var M={isMounted:function(e){return!1},enqueueForceUpdate:function(e,t,r){D(e,"forceUpdate")},enqueueReplaceState:function(e,t,r,n){D(e,"replaceState")},enqueueSetState:function(e,t,r,n){D(e,"setState")}},x=Object.assign,A={};function F(e,t,r){this.props=e,this.context=t,this.refs=A,this.updater=r||M}Object.freeze(A),F.prototype.isReactComponent={},F.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw new Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},F.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};var V={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},H=function(e,t){Object.defineProperty(F.prototype,e,{get:function(){j("%s(...) is deprecated in plain JavaScript React classes. %s",t[0],t[1])}})};for(var U in V)V.hasOwnProperty(U)&&H(U,V[U]);function z(){}function B(e,t,r){this.props=e,this.context=t,this.refs=A,this.updater=r||M}z.prototype=F.prototype;var Y=B.prototype=new z;Y.constructor=B,x(Y,F.prototype),Y.isPureReactComponent=!0;var K=Array.isArray;function W(e){return K(e)}function q(e){return""+e}function G(e){if(function(e){try{return q(e),!1}catch(e){return!0}}(e))return N("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),q(e)}function X(e){return e.displayName||"Context"}function Z(e){if(null==e)return null;if("number"==typeof e.tag&&N("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case o:return"Fragment";case n:return"Portal";case u:return"Profiler";case a:return"StrictMode";case l:return"Suspense";case f:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case c:return X(e)+".Consumer";case i:return X(e._context)+".Provider";case s:return function(e,t,r){var n=e.displayName;if(n)return n;var o=t.displayName||t.name||"";return""!==o?r+"("+o+")":r}(e,e.render,"ForwardRef");case p:var t=e.displayName||null;return null!==t?t:Z(e.type)||"Memo";case d:var r=e,y=r._payload,m=r._init;try{return Z(m(y))}catch(e){return null}}return null}var J,Q,ee,te=Object.prototype.hasOwnProperty,re={key:!0,ref:!0,__self:!0,__source:!0};function ne(e){if(te.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return void 0!==e.ref}function oe(e){if(te.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}ee={};var ae=function(e,t,n,o,a,u,i){var c={$$typeof:r,type:e,key:t,ref:n,props:i,_owner:u,_store:{}};return Object.defineProperty(c._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,"_self",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,"_source",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c};function ue(e,t,r){var n,o={},a=null,u=null,i=null,c=null;if(null!=t)for(n in ne(t)&&(u=t.ref,function(e){if("string"==typeof e.ref&&E.current&&e.__self&&E.current.stateNode!==e.__self){var t=Z(E.current.type);ee[t]||(N('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',t,e.ref),ee[t]=!0)}}(t)),oe(t)&&(G(t.key),a=""+t.key),i=void 0===t.__self?null:t.__self,c=void 0===t.__source?null:t.__source,t)te.call(t,n)&&!re.hasOwnProperty(n)&&(o[n]=t[n]);var s=arguments.length-2;if(1===s)o.children=r;else if(s>1){for(var l=Array(s),f=0;f<s;f++)l[f]=arguments[f+2];Object.freeze&&Object.freeze(l),o.children=l}if(e&&e.defaultProps){var p=e.defaultProps;for(n in p)void 0===o[n]&&(o[n]=p[n])}if(a||u){var d="function"==typeof e?e.displayName||e.name||"Unknown":e;a&&function(e,t){var r=function(){J||(J=!0,N("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};r.isReactWarning=!0,Object.defineProperty(e,"key",{get:r,configurable:!0})}(o,d),u&&function(e,t){var r=function(){Q||(Q=!0,N("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};r.isReactWarning=!0,Object.defineProperty(e,"ref",{get:r,configurable:!0})}(o,d)}return ae(e,a,u,i,c,E.current,o)}function ie(e,t,r){if(null==e)throw new Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var n,o,a=x({},e.props),u=e.key,i=e.ref,c=e._self,s=e._source,l=e._owner;if(null!=t)for(n in ne(t)&&(i=t.ref,l=E.current),oe(t)&&(G(t.key),u=""+t.key),e.type&&e.type.defaultProps&&(o=e.type.defaultProps),t)te.call(t,n)&&!re.hasOwnProperty(n)&&(void 0===t[n]&&void 0!==o?a[n]=o[n]:a[n]=t[n]);var f=arguments.length-2;if(1===f)a.children=r;else if(f>1){for(var p=Array(f),d=0;d<f;d++)p[d]=arguments[d+2];a.children=p}return ae(e.type,u,i,c,s,l,a)}function ce(e){return"object"==typeof e&&null!==e&&e.$$typeof===r}var se=".",le=":",fe=!1,pe=/\/+/g;function de(e){return e.replace(pe,"$&/")}function ye(e,t){return"object"==typeof e&&null!==e&&null!=e.key?(G(e.key),r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,(function(e){return n[e]}))):t.toString(36);var r,n}function me(e,t,o,a,u){var i=typeof e;"undefined"!==i&&"boolean"!==i||(e=null);var c,s,l,f=!1;if(null===e)f=!0;else switch(i){case"string":case"number":f=!0;break;case"object":switch(e.$$typeof){case r:case n:f=!0}}if(f){var p=e,d=u(p),y=""===a?se+ye(p,0):a;if(W(d)){var m="";null!=y&&(m=de(y)+"/"),me(d,t,m,"",(function(e){return e}))}else null!=d&&(ce(d)&&(!d.key||p&&p.key===d.key||G(d.key),c=d,s=o+(!d.key||p&&p.key===d.key?"":de(""+d.key)+"/")+y,d=ae(c.type,s,c.ref,c._self,c._source,c._owner,c.props)),t.push(d));return 1}var v=0,b=""===a?se:a+le;if(W(e))for(var _=0;_<e.length;_++)v+=me(l=e[_],t,o,b+ye(l,_),u);else{var g=h(e);if("function"==typeof g){var E=e;g===E.entries&&(fe||j("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),fe=!0);for(var C,S=g.call(E),O=0;!(C=S.next()).done;)v+=me(l=C.value,t,o,b+ye(l,O++),u)}else if("object"===i){var R=String(e);throw new Error("Objects are not valid as a React child (found: "+("[object Object]"===R?"object with keys {"+Object.keys(e).join(", ")+"}":R)+"). If you meant to render a collection of children, use an array instead.")}}return v}function ve(e,t,r){if(null==e)return e;var n=[],o=0;return me(e,n,"","",(function(e){return t.call(r,e,o++)})),n}var he,be=-1,_e=0,ge=1,Ee=2;function Ce(e){if(e._status===be){var t=(0,e._result)();if(t.then((function(t){if(e._status===_e||e._status===be){var r=e;r._status=ge,r._result=t}}),(function(t){if(e._status===_e||e._status===be){var r=e;r._status=Ee,r._result=t}})),e._status===be){var r=e;r._status=_e,r._result=t}}if(e._status===ge){var n=e._result;return void 0===n&&N("lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))\n\nDid you accidentally put curly braces around the import?",n),"default"in n||N("lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))",n),n.default}throw e._result}function Se(e){return"string"==typeof e||"function"==typeof e||!!(e===o||e===u||T||e===a||e===l||e===f||L||e===y||R||w||k)||"object"==typeof e&&null!==e&&(e.$$typeof===d||e.$$typeof===p||e.$$typeof===i||e.$$typeof===c||e.$$typeof===s||e.$$typeof===he||void 0!==e.getModuleId)}function Oe(){var e=b.current;return null===e&&N("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem."),e}he=Symbol.for("react.module.reference");var Re,we,ke,Le,Te,Pe,je,Ne=0;function $e(){}$e.__reactDisabledLog=!0;var Ie,De=P.ReactCurrentDispatcher;function Me(e,t,r){if(void 0===Ie)try{throw Error()}catch(e){var n=e.stack.trim().match(/\n( *(at )?)/);Ie=n&&n[1]||""}return"\n"+Ie+e}var xe,Ae=!1,Fe="function"==typeof WeakMap?WeakMap:Map;function Ve(e,t){if(!e||Ae)return"";var r,n=xe.get(e);if(void 0!==n)return n;Ae=!0;var o,a=Error.prepareStackTrace;Error.prepareStackTrace=void 0,o=De.current,De.current=null,function(){if(0===Ne){Re=console.log,we=console.info,ke=console.warn,Le=console.error,Te=console.group,Pe=console.groupCollapsed,je=console.groupEnd;var e={configurable:!0,enumerable:!0,value:$e,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}Ne++}();try{if(t){var u=function(){throw Error()};if(Object.defineProperty(u.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(u,[])}catch(e){r=e}Reflect.construct(e,[],u)}else{try{u.call()}catch(e){r=e}e.call(u.prototype)}}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&"string"==typeof t.stack){for(var i=t.stack.split("\n"),c=r.stack.split("\n"),s=i.length-1,l=c.length-1;s>=1&&l>=0&&i[s]!==c[l];)l--;for(;s>=1&&l>=0;s--,l--)if(i[s]!==c[l]){if(1!==s||1!==l)do{if(s--,--l<0||i[s]!==c[l]){var f="\n"+i[s].replace(" at new "," at ");return e.displayName&&f.includes("<anonymous>")&&(f=f.replace("<anonymous>",e.displayName)),"function"==typeof e&&xe.set(e,f),f}}while(s>=1&&l>=0);break}}}finally{Ae=!1,De.current=o,function(){if(0==--Ne){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:x({},e,{value:Re}),info:x({},e,{value:we}),warn:x({},e,{value:ke}),error:x({},e,{value:Le}),group:x({},e,{value:Te}),groupCollapsed:x({},e,{value:Pe}),groupEnd:x({},e,{value:je})})}Ne<0&&N("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=a}var p=e?e.displayName||e.name:"",d=p?Me(p):"";return"function"==typeof e&&xe.set(e,d),d}function He(e,t,r){if(null==e)return"";if("function"==typeof e)return Ve(e,function(e){var t=e.prototype;return!(!t||!t.isReactComponent)}(e));if("string"==typeof e)return Me(e);switch(e){case l:return Me("Suspense");case f:return Me("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case s:return Ve(e.render,!1);case p:return He(e.type,t,r);case d:var n=e,o=n._payload,a=n._init;try{return He(a(o),t,r)}catch(e){}}return""}xe=new Fe;var Ue,ze={},Be=P.ReactDebugCurrentFrame;function Ye(e){if(e){var t=e._owner,r=He(e.type,e._source,t?t.type:null);Be.setExtraStackFrame(r)}else Be.setExtraStackFrame(null)}function Ke(e){if(e){var t=e._owner;O(He(e.type,e._source,t?t.type:null))}else O(null)}function We(){if(E.current){var e=Z(E.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}Ue=!1;var qe={};function Ge(e,t){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var r=function(e){var t=We();if(!t){var r="string"==typeof e?e:e.displayName||e.name;r&&(t="\n\nCheck the top-level render call using <"+r+">.")}return t}(t);if(!qe[r]){qe[r]=!0;var n="";e&&e._owner&&e._owner!==E.current&&(n=" It was passed a child from "+Z(e._owner.type)+"."),Ke(e),N('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',r,n),Ke(null)}}}function Xe(e,t){if("object"==typeof e)if(W(e))for(var r=0;r<e.length;r++){var n=e[r];ce(n)&&Ge(n,t)}else if(ce(e))e._store&&(e._store.validated=!0);else if(e){var o=h(e);if("function"==typeof o&&o!==e.entries)for(var a,u=o.call(e);!(a=u.next()).done;)ce(a.value)&&Ge(a.value,t)}}function Ze(e){var t,r=e.type;if(null!=r&&"string"!=typeof r){if("function"==typeof r)t=r.propTypes;else{if("object"!=typeof r||r.$$typeof!==s&&r.$$typeof!==p)return;t=r.propTypes}if(t){var n=Z(r);!function(e,t,r,n,o){var a=Function.call.bind(te);for(var u in e)if(a(e,u)){var i=void 0;try{if("function"!=typeof e[u]){var c=Error((n||"React class")+": "+r+" type `"+u+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw c.name="Invariant Violation",c}i=e[u](t,u,n,r,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(e){i=e}!i||i instanceof Error||(Ye(o),N("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",n||"React class",r,u,typeof i),Ye(null)),i instanceof Error&&!(i.message in ze)&&(ze[i.message]=!0,Ye(o),N("Failed %s type: %s",r,i.message),Ye(null))}}(t,e.props,"prop",n,e)}else void 0===r.PropTypes||Ue||(Ue=!0,N("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",Z(r)||"Unknown"));"function"!=typeof r.getDefaultProps||r.getDefaultProps.isReactClassApproved||N("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Je(e,t,n){var a,u,i=Se(e);if(!i){var c,s="";(void 0===e||"object"==typeof e&&null!==e&&0===Object.keys(e).length)&&(s+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."),s+=(null!=(a=t)&&void 0!==(u=a.__source)?"\n\nCheck your code at "+u.fileName.replace(/^.*[\\\/]/,"")+":"+u.lineNumber+".":"")||We(),null===e?c="null":W(e)?c="array":void 0!==e&&e.$$typeof===r?(c="<"+(Z(e.type)||"Unknown")+" />",s=" Did you accidentally export a JSX literal instead of a component?"):c=typeof e,N("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",c,s)}var l=ue.apply(this,arguments);if(null==l)return l;if(i)for(var f=2;f<arguments.length;f++)Xe(arguments[f],e);return e===o?function(e){for(var t=Object.keys(e.props),r=0;r<t.length;r++){var n=t[r];if("children"!==n&&"key"!==n){Ke(e),N("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",n),Ke(null);break}}null!==e.ref&&(Ke(e),N("Invalid attribute `ref` supplied to `React.Fragment`."),Ke(null))}(l):Ze(l),l}var Qe=!1,et=!1,tt=null,rt=0,nt=!1;function ot(e){e!==rt-1&&N("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),rt=e}function at(t,r,n){var o=g.current;if(null!==o)try{it(o),function(t){if(null===tt)try{var r=("require"+Math.random()).slice(0,7);tt=(e&&e[r]).call(e,"timers").setImmediate}catch(e){tt=function(e){!1===et&&(et=!0,"undefined"==typeof MessageChannel&&N("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var t=new MessageChannel;t.port1.onmessage=e,t.port2.postMessage(void 0)}}tt(t)}((function(){0===o.length?(g.current=null,r(t)):at(t,r,n)}))}catch(e){n(e)}else r(t)}var ut=!1;function it(e){if(!ut){ut=!0;var t=0;try{for(;t<e.length;t++){var r=e[t];do{r=r(!0)}while(null!==r)}e.length=0}catch(r){throw e=e.slice(t+1),r}finally{ut=!1}}}var ct=Je,st=function(e,t,r){for(var n=ie.apply(this,arguments),o=2;o<arguments.length;o++)Xe(arguments[o],n.type);return Ze(n),n},lt=function(e){var t=Je.bind(null,e);return t.type=e,Qe||(Qe=!0,j("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")),Object.defineProperty(t,"type",{enumerable:!1,get:function(){return j("Factory.type is deprecated. Access the class directly before passing it to createFactory."),Object.defineProperty(this,"type",{value:e}),e}}),t},ft={map:ve,forEach:function(e,t,r){ve(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return ve(e,(function(){t++})),t},toArray:function(e){return ve(e,(function(e){return e}))||[]},only:function(e){if(!ce(e))throw new Error("React.Children.only expected to receive a single React element child.");return e}};t.Children=ft,t.Component=F,t.Fragment=o,t.Profiler=u,t.PureComponent=B,t.StrictMode=a,t.Suspense=l,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=P,t.cloneElement=st,t.createContext=function(e){var t={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};t.Provider={$$typeof:i,_context:t};var r=!1,n=!1,o=!1,a={$$typeof:c,_context:t};return Object.defineProperties(a,{Provider:{get:function(){return n||(n=!0,N("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")),t.Provider},set:function(e){t.Provider=e}},_currentValue:{get:function(){return t._currentValue},set:function(e){t._currentValue=e}},_currentValue2:{get:function(){return t._currentValue2},set:function(e){t._currentValue2=e}},_threadCount:{get:function(){return t._threadCount},set:function(e){t._threadCount=e}},Consumer:{get:function(){return r||(r=!0,N("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")),t.Consumer}},displayName:{get:function(){return t.displayName},set:function(e){o||(j("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",e),o=!0)}}}),t.Consumer=a,t._currentRenderer=null,t._currentRenderer2=null,t},t.createElement=ct,t.createFactory=lt,t.createRef=function(){var e={current:null};return Object.seal(e),e},t.forwardRef=function(e){null!=e&&e.$$typeof===p?N("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?N("forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&N("forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null!=e&&(null==e.defaultProps&&null==e.propTypes||N("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"));var t,r={$$typeof:s,render:e};return Object.defineProperty(r,"displayName",{enumerable:!1,configurable:!0,get:function(){return t},set:function(r){t=r,e.name||e.displayName||(e.displayName=r)}}),r},t.isValidElement=ce,t.lazy=function(e){var t,r,n={$$typeof:d,_payload:{_status:be,_result:e},_init:Ce};return Object.defineProperties(n,{defaultProps:{configurable:!0,get:function(){return t},set:function(e){N("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),t=e,Object.defineProperty(n,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return r},set:function(e){N("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),r=e,Object.defineProperty(n,"propTypes",{enumerable:!0})}}}),n},t.memo=function(e,t){Se(e)||N("memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e);var r,n={$$typeof:p,type:e,compare:void 0===t?null:t};return Object.defineProperty(n,"displayName",{enumerable:!1,configurable:!0,get:function(){return r},set:function(t){r=t,e.name||e.displayName||(e.displayName=t)}}),n},t.startTransition=function(e,t){var r=_.transition;_.transition={};var n=_.transition;_.transition._updatedFibers=new Set;try{e()}finally{_.transition=r,null===r&&n._updatedFibers&&(n._updatedFibers.size>10&&j("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."),n._updatedFibers.clear())}},t.unstable_act=function(e){var t=rt;rt++,null===g.current&&(g.current=[]);var r,n=g.isBatchingLegacy;try{if(g.isBatchingLegacy=!0,r=e(),!n&&g.didScheduleLegacyUpdate){var o=g.current;null!==o&&(g.didScheduleLegacyUpdate=!1,it(o))}}catch(e){throw ot(t),e}finally{g.isBatchingLegacy=n}if(null!==r&&"object"==typeof r&&"function"==typeof r.then){var a=r,u=!1,i={then:function(e,r){u=!0,a.then((function(n){ot(t),0===rt?at(n,e,r):e(n)}),(function(e){ot(t),r(e)}))}};return nt||"undefined"==typeof Promise||Promise.resolve().then((function(){})).then((function(){u||(nt=!0,N("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))})),i}var c=r;if(ot(t),0===rt){var s=g.current;return null!==s&&(it(s),g.current=null),{then:function(e,t){null===g.current?(g.current=[],at(c,e,t)):e(c)}}}return{then:function(e,t){e(c)}}},t.useCallback=function(e,t){return Oe().useCallback(e,t)},t.useContext=function(e){var t=Oe();if(void 0!==e._context){var r=e._context;r.Consumer===e?N("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&N("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return t.useContext(e)},t.useDebugValue=function(e,t){return Oe().useDebugValue(e,t)},t.useDeferredValue=function(e){return Oe().useDeferredValue(e)},t.useEffect=function(e,t){return Oe().useEffect(e,t)},t.useId=function(){return Oe().useId()},t.useImperativeHandle=function(e,t,r){return Oe().useImperativeHandle(e,t,r)},t.useInsertionEffect=function(e,t){return Oe().useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return Oe().useLayoutEffect(e,t)},t.useMemo=function(e,t){return Oe().useMemo(e,t)},t.useReducer=function(e,t,r){return Oe().useReducer(e,t,r)},t.useRef=function(e){return Oe().useRef(e)},t.useState=function(e){return Oe().useState(e)},t.useSyncExternalStore=function(e,t,r){return Oe().useSyncExternalStore(e,t,r)},t.useTransition=function(){return Oe().useTransition()},t.version="18.2.0","undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()}(s,s.exports)),s.exports);var l=u.exports,f=o(l);const p=f.createContext(null);p.displayName="TableContext";var d=(e,t)=>Object.prototype.toString.call(e)===`[object ${t}]`;var y=e=>"function"==typeof e;var m=e=>null==e;var v=e=>"object"==typeof e&&null!==e;var h=function(e){if(!v(e)||!d(e,"Object"))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t};var b=function(e){const t=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"string"===t:"string"===t||d(e,"String")};var _=e=>Array.isArray?Array.isArray(e):d(e,"Array");function g(e,t){if(!e||!h(e))return e;const r={};return Object.keys(e).forEach((n=>{const o=e[n];let a=!1;t.forEach((e=>{(b(e)&&e===n||e instanceof RegExp&&n.match(e))&&(a=!0)})),a||(r[n]=o)})),r}function E(e){return Object.prototype.toString.call(e)}function C(e){return Object.keys(e)}function S(e,t,r){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(null==e||null==t)return!1;if(Number.isNaN(e)&&Number.isNaN(t))return!0;if(E(e)!==E(t))return!1;if(y(e))return!!(null==r?void 0:r.skipFunction);if("object"!=typeof e)return!1;if(_(e)){if(e.length!==t.length)return!1;for(let n=e.length-1;n>=0;n--)if(!S(e[n],t[n],r))return!1;return!0}if(!h(e))return!1;const n=C(e),o=C(t);if(n.length!==o.length)return!1;n.sort(),o.sort();for(let e=n.length-1;e>=0;e--)if(n[e]!=o[e])return!1;for(let o=n.length-1;o>=0;o--){const a=n[o];if(!S(e[a],t[a],r))return!1}return!0}var O,R={exports:{}},w={};var k,L={};
|
|
10
|
+
*/"production"===process.env.NODE_ENV?u.exports=function(){if(a)return i;a=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),c=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),d=Symbol.iterator,y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,h={};function v(e,t,r){this.props=e,this.context=t,this.refs=h,this.updater=r||y}function b(){}function g(e,t,r){this.props=e,this.context=t,this.refs=h,this.updater=r||y}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=v.prototype;var _=g.prototype=new b;_.constructor=g,m(_,v.prototype),_.isPureReactComponent=!0;var E=Array.isArray,C=Object.prototype.hasOwnProperty,S={current:null},w={key:!0,ref:!0,__self:!0,__source:!0};function O(t,r,n){var o,a={},u=null,i=null;if(null!=r)for(o in void 0!==r.ref&&(i=r.ref),void 0!==r.key&&(u=""+r.key),r)C.call(r,o)&&!w.hasOwnProperty(o)&&(a[o]=r[o]);var c=arguments.length-2;if(1===c)a.children=n;else if(1<c){for(var s=Array(c),l=0;l<c;l++)s[l]=arguments[l+2];a.children=s}if(t&&t.defaultProps)for(o in c=t.defaultProps)void 0===a[o]&&(a[o]=c[o]);return{$$typeof:e,type:t,key:u,ref:i,props:a,_owner:S.current}}function R(t){return"object"==typeof t&&null!==t&&t.$$typeof===e}var k=/\/+/g;function L(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(r,n,o,a,u){var i=typeof r;"undefined"!==i&&"boolean"!==i||(r=null);var c=!1;if(null===r)c=!0;else switch(i){case"string":case"number":c=!0;break;case"object":switch(r.$$typeof){case e:case t:c=!0}}if(c)return u=u(c=r),r=""===a?"."+L(c,0):a,E(u)?(o="",null!=r&&(o=r.replace(k,"$&/")+"/"),T(u,n,o,"",(function(e){return e}))):null!=u&&(R(u)&&(u=function(t,r){return{$$typeof:e,type:t.type,key:r,ref:t.ref,props:t.props,_owner:t._owner}}(u,o+(!u.key||c&&c.key===u.key?"":(""+u.key).replace(k,"$&/")+"/")+r)),n.push(u)),1;if(c=0,a=""===a?".":a+":",E(r))for(var s=0;s<r.length;s++){var l=a+L(i=r[s],s);c+=T(i,n,o,l,u)}else if(l=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=d&&e[d]||e["@@iterator"])?e:null}(r),"function"==typeof l)for(r=l.call(r),s=0;!(i=r.next()).done;)c+=T(i=i.value,n,o,l=a+L(i,s++),u);else if("object"===i)throw n=String(r),Error("Objects are not valid as a React child (found: "+("[object Object]"===n?"object with keys {"+Object.keys(r).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.");return c}function P(e,t,r){if(null==e)return e;var n=[],o=0;return T(e,n,"","",(function(e){return t.call(r,e,o++)})),n}function N(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var j={current:null},x={transition:null},$={ReactCurrentDispatcher:j,ReactCurrentBatchConfig:x,ReactCurrentOwner:S};return i.Children={map:P,forEach:function(e,t,r){P(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return P(e,(function(){t++})),t},toArray:function(e){return P(e,(function(e){return e}))||[]},only:function(e){if(!R(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},i.Component=v,i.Fragment=r,i.Profiler=o,i.PureComponent=g,i.StrictMode=n,i.Suspense=l,i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=$,i.cloneElement=function(t,r,n){if(null==t)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+t+".");var o=m({},t.props),a=t.key,u=t.ref,i=t._owner;if(null!=r){if(void 0!==r.ref&&(u=r.ref,i=S.current),void 0!==r.key&&(a=""+r.key),t.type&&t.type.defaultProps)var c=t.type.defaultProps;for(s in r)C.call(r,s)&&!w.hasOwnProperty(s)&&(o[s]=void 0===r[s]&&void 0!==c?c[s]:r[s])}var s=arguments.length-2;if(1===s)o.children=n;else if(1<s){c=Array(s);for(var l=0;l<s;l++)c[l]=arguments[l+2];o.children=c}return{$$typeof:e,type:t.type,key:a,ref:u,props:o,_owner:i}},i.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:u,_context:e},e.Consumer=e},i.createElement=O,i.createFactory=function(e){var t=O.bind(null,e);return t.type=e,t},i.createRef=function(){return{current:null}},i.forwardRef=function(e){return{$$typeof:s,render:e}},i.isValidElement=R,i.lazy=function(e){return{$$typeof:p,_payload:{_status:-1,_result:e},_init:N}},i.memo=function(e,t){return{$$typeof:f,type:e,compare:void 0===t?null:t}},i.startTransition=function(e){var t=x.transition;x.transition={};try{e()}finally{x.transition=t}},i.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},i.useCallback=function(e,t){return j.current.useCallback(e,t)},i.useContext=function(e){return j.current.useContext(e)},i.useDebugValue=function(){},i.useDeferredValue=function(e){return j.current.useDeferredValue(e)},i.useEffect=function(e,t){return j.current.useEffect(e,t)},i.useId=function(){return j.current.useId()},i.useImperativeHandle=function(e,t,r){return j.current.useImperativeHandle(e,t,r)},i.useInsertionEffect=function(e,t){return j.current.useInsertionEffect(e,t)},i.useLayoutEffect=function(e,t){return j.current.useLayoutEffect(e,t)},i.useMemo=function(e,t){return j.current.useMemo(e,t)},i.useReducer=function(e,t,r){return j.current.useReducer(e,t,r)},i.useRef=function(e){return j.current.useRef(e)},i.useState=function(e){return j.current.useState(e)},i.useSyncExternalStore=function(e,t,r){return j.current.useSyncExternalStore(e,t,r)},i.useTransition=function(){return j.current.useTransition()},i.version="18.2.0",i}():u.exports=(c||(c=1,function(e,t){"production"!==process.env.NODE_ENV&&function(){"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),u=Symbol.for("react.profiler"),i=Symbol.for("react.provider"),c=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),m=Symbol.iterator,h="@@iterator";function v(e){if(null===e||"object"!=typeof e)return null;var t=m&&e[m]||e[h];return"function"==typeof t?t:null}var b={current:null},g={transition:null},_={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},E={current:null},C={},S=null;function w(e){S=e}C.setExtraStackFrame=function(e){S=e},C.getCurrentStack=null,C.getStackAddendum=function(){var e="";S&&(e+=S);var t=C.getCurrentStack;return t&&(e+=t()||""),e};var O=!1,R=!1,k=!1,L=!1,T=!1,P={ReactCurrentDispatcher:b,ReactCurrentBatchConfig:g,ReactCurrentOwner:E};function N(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];x("warn",e,r)}function j(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];x("error",e,r)}function x(e,t,r){var n=P.ReactDebugCurrentFrame.getStackAddendum();""!==n&&(t+="%s",r=r.concat([n]));var o=r.map((function(e){return String(e)}));o.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,o)}P.ReactDebugCurrentFrame=C,P.ReactCurrentActQueue=_;var $={};function I(e,t){var r=e.constructor,n=r&&(r.displayName||r.name)||"ReactClass",o=n+"."+t;$[o]||(j("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",t,n),$[o]=!0)}var M={isMounted:function(e){return!1},enqueueForceUpdate:function(e,t,r){I(e,"forceUpdate")},enqueueReplaceState:function(e,t,r,n){I(e,"replaceState")},enqueueSetState:function(e,t,r,n){I(e,"setState")}},D=Object.assign,A={};function F(e,t,r){this.props=e,this.context=t,this.refs=A,this.updater=r||M}Object.freeze(A),F.prototype.isReactComponent={},F.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw new Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},F.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};var V={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},H=function(e,t){Object.defineProperty(F.prototype,e,{get:function(){N("%s(...) is deprecated in plain JavaScript React classes. %s",t[0],t[1])}})};for(var U in V)V.hasOwnProperty(U)&&H(U,V[U]);function z(){}function B(e,t,r){this.props=e,this.context=t,this.refs=A,this.updater=r||M}z.prototype=F.prototype;var W=B.prototype=new z;W.constructor=B,D(W,F.prototype),W.isPureReactComponent=!0;var Y=Array.isArray;function K(e){return Y(e)}function q(e){return""+e}function G(e){if(function(e){try{return q(e),!1}catch(e){return!0}}(e))return j("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),q(e)}function X(e){return e.displayName||"Context"}function Z(e){if(null==e)return null;if("number"==typeof e.tag&&j("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case o:return"Fragment";case n:return"Portal";case u:return"Profiler";case a:return"StrictMode";case l:return"Suspense";case f:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case c:return X(e)+".Consumer";case i:return X(e._context)+".Provider";case s:return function(e,t,r){var n=e.displayName;if(n)return n;var o=t.displayName||t.name||"";return""!==o?r+"("+o+")":r}(e,e.render,"ForwardRef");case p:var t=e.displayName||null;return null!==t?t:Z(e.type)||"Memo";case d:var r=e,y=r._payload,m=r._init;try{return Z(m(y))}catch(e){return null}}return null}var J,Q,ee,te=Object.prototype.hasOwnProperty,re={key:!0,ref:!0,__self:!0,__source:!0};function ne(e){if(te.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return void 0!==e.ref}function oe(e){if(te.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}ee={};var ae=function(e,t,n,o,a,u,i){var c={$$typeof:r,type:e,key:t,ref:n,props:i,_owner:u,_store:{}};return Object.defineProperty(c._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,"_self",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,"_source",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c};function ue(e,t,r){var n,o={},a=null,u=null,i=null,c=null;if(null!=t)for(n in ne(t)&&(u=t.ref,function(e){if("string"==typeof e.ref&&E.current&&e.__self&&E.current.stateNode!==e.__self){var t=Z(E.current.type);ee[t]||(j('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',t,e.ref),ee[t]=!0)}}(t)),oe(t)&&(G(t.key),a=""+t.key),i=void 0===t.__self?null:t.__self,c=void 0===t.__source?null:t.__source,t)te.call(t,n)&&!re.hasOwnProperty(n)&&(o[n]=t[n]);var s=arguments.length-2;if(1===s)o.children=r;else if(s>1){for(var l=Array(s),f=0;f<s;f++)l[f]=arguments[f+2];Object.freeze&&Object.freeze(l),o.children=l}if(e&&e.defaultProps){var p=e.defaultProps;for(n in p)void 0===o[n]&&(o[n]=p[n])}if(a||u){var d="function"==typeof e?e.displayName||e.name||"Unknown":e;a&&function(e,t){var r=function(){J||(J=!0,j("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};r.isReactWarning=!0,Object.defineProperty(e,"key",{get:r,configurable:!0})}(o,d),u&&function(e,t){var r=function(){Q||(Q=!0,j("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};r.isReactWarning=!0,Object.defineProperty(e,"ref",{get:r,configurable:!0})}(o,d)}return ae(e,a,u,i,c,E.current,o)}function ie(e,t,r){if(null==e)throw new Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var n,o,a=D({},e.props),u=e.key,i=e.ref,c=e._self,s=e._source,l=e._owner;if(null!=t)for(n in ne(t)&&(i=t.ref,l=E.current),oe(t)&&(G(t.key),u=""+t.key),e.type&&e.type.defaultProps&&(o=e.type.defaultProps),t)te.call(t,n)&&!re.hasOwnProperty(n)&&(void 0===t[n]&&void 0!==o?a[n]=o[n]:a[n]=t[n]);var f=arguments.length-2;if(1===f)a.children=r;else if(f>1){for(var p=Array(f),d=0;d<f;d++)p[d]=arguments[d+2];a.children=p}return ae(e.type,u,i,c,s,l,a)}function ce(e){return"object"==typeof e&&null!==e&&e.$$typeof===r}var se=".",le=":",fe=!1,pe=/\/+/g;function de(e){return e.replace(pe,"$&/")}function ye(e,t){return"object"==typeof e&&null!==e&&null!=e.key?(G(e.key),r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,(function(e){return n[e]}))):t.toString(36);var r,n}function me(e,t,o,a,u){var i=typeof e;"undefined"!==i&&"boolean"!==i||(e=null);var c,s,l,f=!1;if(null===e)f=!0;else switch(i){case"string":case"number":f=!0;break;case"object":switch(e.$$typeof){case r:case n:f=!0}}if(f){var p=e,d=u(p),y=""===a?se+ye(p,0):a;if(K(d)){var m="";null!=y&&(m=de(y)+"/"),me(d,t,m,"",(function(e){return e}))}else null!=d&&(ce(d)&&(!d.key||p&&p.key===d.key||G(d.key),c=d,s=o+(!d.key||p&&p.key===d.key?"":de(""+d.key)+"/")+y,d=ae(c.type,s,c.ref,c._self,c._source,c._owner,c.props)),t.push(d));return 1}var h=0,b=""===a?se:a+le;if(K(e))for(var g=0;g<e.length;g++)h+=me(l=e[g],t,o,b+ye(l,g),u);else{var _=v(e);if("function"==typeof _){var E=e;_===E.entries&&(fe||N("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),fe=!0);for(var C,S=_.call(E),w=0;!(C=S.next()).done;)h+=me(l=C.value,t,o,b+ye(l,w++),u)}else if("object"===i){var O=String(e);throw new Error("Objects are not valid as a React child (found: "+("[object Object]"===O?"object with keys {"+Object.keys(e).join(", ")+"}":O)+"). If you meant to render a collection of children, use an array instead.")}}return h}function he(e,t,r){if(null==e)return e;var n=[],o=0;return me(e,n,"","",(function(e){return t.call(r,e,o++)})),n}var ve,be=-1,ge=0,_e=1,Ee=2;function Ce(e){if(e._status===be){var t=(0,e._result)();if(t.then((function(t){if(e._status===ge||e._status===be){var r=e;r._status=_e,r._result=t}}),(function(t){if(e._status===ge||e._status===be){var r=e;r._status=Ee,r._result=t}})),e._status===be){var r=e;r._status=ge,r._result=t}}if(e._status===_e){var n=e._result;return void 0===n&&j("lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))\n\nDid you accidentally put curly braces around the import?",n),"default"in n||j("lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))",n),n.default}throw e._result}function Se(e){return"string"==typeof e||"function"==typeof e||!!(e===o||e===u||T||e===a||e===l||e===f||L||e===y||O||R||k)||"object"==typeof e&&null!==e&&(e.$$typeof===d||e.$$typeof===p||e.$$typeof===i||e.$$typeof===c||e.$$typeof===s||e.$$typeof===ve||void 0!==e.getModuleId)}function we(){var e=b.current;return null===e&&j("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem."),e}ve=Symbol.for("react.module.reference");var Oe,Re,ke,Le,Te,Pe,Ne,je=0;function xe(){}xe.__reactDisabledLog=!0;var $e,Ie=P.ReactCurrentDispatcher;function Me(e,t,r){if(void 0===$e)try{throw Error()}catch(e){var n=e.stack.trim().match(/\n( *(at )?)/);$e=n&&n[1]||""}return"\n"+$e+e}var De,Ae=!1,Fe="function"==typeof WeakMap?WeakMap:Map;function Ve(e,t){if(!e||Ae)return"";var r,n=De.get(e);if(void 0!==n)return n;Ae=!0;var o,a=Error.prepareStackTrace;Error.prepareStackTrace=void 0,o=Ie.current,Ie.current=null,function(){if(0===je){Oe=console.log,Re=console.info,ke=console.warn,Le=console.error,Te=console.group,Pe=console.groupCollapsed,Ne=console.groupEnd;var e={configurable:!0,enumerable:!0,value:xe,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}je++}();try{if(t){var u=function(){throw Error()};if(Object.defineProperty(u.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(u,[])}catch(e){r=e}Reflect.construct(e,[],u)}else{try{u.call()}catch(e){r=e}e.call(u.prototype)}}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&"string"==typeof t.stack){for(var i=t.stack.split("\n"),c=r.stack.split("\n"),s=i.length-1,l=c.length-1;s>=1&&l>=0&&i[s]!==c[l];)l--;for(;s>=1&&l>=0;s--,l--)if(i[s]!==c[l]){if(1!==s||1!==l)do{if(s--,--l<0||i[s]!==c[l]){var f="\n"+i[s].replace(" at new "," at ");return e.displayName&&f.includes("<anonymous>")&&(f=f.replace("<anonymous>",e.displayName)),"function"==typeof e&&De.set(e,f),f}}while(s>=1&&l>=0);break}}}finally{Ae=!1,Ie.current=o,function(){if(0==--je){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:D({},e,{value:Oe}),info:D({},e,{value:Re}),warn:D({},e,{value:ke}),error:D({},e,{value:Le}),group:D({},e,{value:Te}),groupCollapsed:D({},e,{value:Pe}),groupEnd:D({},e,{value:Ne})})}je<0&&j("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=a}var p=e?e.displayName||e.name:"",d=p?Me(p):"";return"function"==typeof e&&De.set(e,d),d}function He(e,t,r){if(null==e)return"";if("function"==typeof e)return Ve(e,function(e){var t=e.prototype;return!(!t||!t.isReactComponent)}(e));if("string"==typeof e)return Me(e);switch(e){case l:return Me("Suspense");case f:return Me("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case s:return Ve(e.render,!1);case p:return He(e.type,t,r);case d:var n=e,o=n._payload,a=n._init;try{return He(a(o),t,r)}catch(e){}}return""}De=new Fe;var Ue,ze={},Be=P.ReactDebugCurrentFrame;function We(e){if(e){var t=e._owner,r=He(e.type,e._source,t?t.type:null);Be.setExtraStackFrame(r)}else Be.setExtraStackFrame(null)}function Ye(e){if(e){var t=e._owner;w(He(e.type,e._source,t?t.type:null))}else w(null)}function Ke(){if(E.current){var e=Z(E.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}Ue=!1;var qe={};function Ge(e,t){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var r=function(e){var t=Ke();if(!t){var r="string"==typeof e?e:e.displayName||e.name;r&&(t="\n\nCheck the top-level render call using <"+r+">.")}return t}(t);if(!qe[r]){qe[r]=!0;var n="";e&&e._owner&&e._owner!==E.current&&(n=" It was passed a child from "+Z(e._owner.type)+"."),Ye(e),j('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',r,n),Ye(null)}}}function Xe(e,t){if("object"==typeof e)if(K(e))for(var r=0;r<e.length;r++){var n=e[r];ce(n)&&Ge(n,t)}else if(ce(e))e._store&&(e._store.validated=!0);else if(e){var o=v(e);if("function"==typeof o&&o!==e.entries)for(var a,u=o.call(e);!(a=u.next()).done;)ce(a.value)&&Ge(a.value,t)}}function Ze(e){var t,r=e.type;if(null!=r&&"string"!=typeof r){if("function"==typeof r)t=r.propTypes;else{if("object"!=typeof r||r.$$typeof!==s&&r.$$typeof!==p)return;t=r.propTypes}if(t){var n=Z(r);!function(e,t,r,n,o){var a=Function.call.bind(te);for(var u in e)if(a(e,u)){var i=void 0;try{if("function"!=typeof e[u]){var c=Error((n||"React class")+": "+r+" type `"+u+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw c.name="Invariant Violation",c}i=e[u](t,u,n,r,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(e){i=e}!i||i instanceof Error||(We(o),j("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",n||"React class",r,u,typeof i),We(null)),i instanceof Error&&!(i.message in ze)&&(ze[i.message]=!0,We(o),j("Failed %s type: %s",r,i.message),We(null))}}(t,e.props,"prop",n,e)}else void 0===r.PropTypes||Ue||(Ue=!0,j("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",Z(r)||"Unknown"));"function"!=typeof r.getDefaultProps||r.getDefaultProps.isReactClassApproved||j("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Je(e,t,n){var a,u,i=Se(e);if(!i){var c,s="";(void 0===e||"object"==typeof e&&null!==e&&0===Object.keys(e).length)&&(s+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."),s+=(null!=(a=t)&&void 0!==(u=a.__source)?"\n\nCheck your code at "+u.fileName.replace(/^.*[\\\/]/,"")+":"+u.lineNumber+".":"")||Ke(),null===e?c="null":K(e)?c="array":void 0!==e&&e.$$typeof===r?(c="<"+(Z(e.type)||"Unknown")+" />",s=" Did you accidentally export a JSX literal instead of a component?"):c=typeof e,j("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",c,s)}var l=ue.apply(this,arguments);if(null==l)return l;if(i)for(var f=2;f<arguments.length;f++)Xe(arguments[f],e);return e===o?function(e){for(var t=Object.keys(e.props),r=0;r<t.length;r++){var n=t[r];if("children"!==n&&"key"!==n){Ye(e),j("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",n),Ye(null);break}}null!==e.ref&&(Ye(e),j("Invalid attribute `ref` supplied to `React.Fragment`."),Ye(null))}(l):Ze(l),l}var Qe=!1,et=!1,tt=null,rt=0,nt=!1;function ot(e){e!==rt-1&&j("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),rt=e}function at(t,r,n){var o=_.current;if(null!==o)try{it(o),function(t){if(null===tt)try{var r=("require"+Math.random()).slice(0,7);tt=(e&&e[r]).call(e,"timers").setImmediate}catch(e){tt=function(e){!1===et&&(et=!0,"undefined"==typeof MessageChannel&&j("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var t=new MessageChannel;t.port1.onmessage=e,t.port2.postMessage(void 0)}}tt(t)}((function(){0===o.length?(_.current=null,r(t)):at(t,r,n)}))}catch(e){n(e)}else r(t)}var ut=!1;function it(e){if(!ut){ut=!0;var t=0;try{for(;t<e.length;t++){var r=e[t];do{r=r(!0)}while(null!==r)}e.length=0}catch(r){throw e=e.slice(t+1),r}finally{ut=!1}}}var ct=Je,st=function(e,t,r){for(var n=ie.apply(this,arguments),o=2;o<arguments.length;o++)Xe(arguments[o],n.type);return Ze(n),n},lt=function(e){var t=Je.bind(null,e);return t.type=e,Qe||(Qe=!0,N("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")),Object.defineProperty(t,"type",{enumerable:!1,get:function(){return N("Factory.type is deprecated. Access the class directly before passing it to createFactory."),Object.defineProperty(this,"type",{value:e}),e}}),t},ft={map:he,forEach:function(e,t,r){he(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return he(e,(function(){t++})),t},toArray:function(e){return he(e,(function(e){return e}))||[]},only:function(e){if(!ce(e))throw new Error("React.Children.only expected to receive a single React element child.");return e}};t.Children=ft,t.Component=F,t.Fragment=o,t.Profiler=u,t.PureComponent=B,t.StrictMode=a,t.Suspense=l,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=P,t.cloneElement=st,t.createContext=function(e){var t={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};t.Provider={$$typeof:i,_context:t};var r=!1,n=!1,o=!1,a={$$typeof:c,_context:t};return Object.defineProperties(a,{Provider:{get:function(){return n||(n=!0,j("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")),t.Provider},set:function(e){t.Provider=e}},_currentValue:{get:function(){return t._currentValue},set:function(e){t._currentValue=e}},_currentValue2:{get:function(){return t._currentValue2},set:function(e){t._currentValue2=e}},_threadCount:{get:function(){return t._threadCount},set:function(e){t._threadCount=e}},Consumer:{get:function(){return r||(r=!0,j("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")),t.Consumer}},displayName:{get:function(){return t.displayName},set:function(e){o||(N("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",e),o=!0)}}}),t.Consumer=a,t._currentRenderer=null,t._currentRenderer2=null,t},t.createElement=ct,t.createFactory=lt,t.createRef=function(){var e={current:null};return Object.seal(e),e},t.forwardRef=function(e){null!=e&&e.$$typeof===p?j("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?j("forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&j("forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null!=e&&(null==e.defaultProps&&null==e.propTypes||j("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"));var t,r={$$typeof:s,render:e};return Object.defineProperty(r,"displayName",{enumerable:!1,configurable:!0,get:function(){return t},set:function(r){t=r,e.name||e.displayName||(e.displayName=r)}}),r},t.isValidElement=ce,t.lazy=function(e){var t,r,n={$$typeof:d,_payload:{_status:be,_result:e},_init:Ce};return Object.defineProperties(n,{defaultProps:{configurable:!0,get:function(){return t},set:function(e){j("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),t=e,Object.defineProperty(n,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return r},set:function(e){j("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),r=e,Object.defineProperty(n,"propTypes",{enumerable:!0})}}}),n},t.memo=function(e,t){Se(e)||j("memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e);var r,n={$$typeof:p,type:e,compare:void 0===t?null:t};return Object.defineProperty(n,"displayName",{enumerable:!1,configurable:!0,get:function(){return r},set:function(t){r=t,e.name||e.displayName||(e.displayName=t)}}),n},t.startTransition=function(e,t){var r=g.transition;g.transition={};var n=g.transition;g.transition._updatedFibers=new Set;try{e()}finally{g.transition=r,null===r&&n._updatedFibers&&(n._updatedFibers.size>10&&N("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."),n._updatedFibers.clear())}},t.unstable_act=function(e){var t=rt;rt++,null===_.current&&(_.current=[]);var r,n=_.isBatchingLegacy;try{if(_.isBatchingLegacy=!0,r=e(),!n&&_.didScheduleLegacyUpdate){var o=_.current;null!==o&&(_.didScheduleLegacyUpdate=!1,it(o))}}catch(e){throw ot(t),e}finally{_.isBatchingLegacy=n}if(null!==r&&"object"==typeof r&&"function"==typeof r.then){var a=r,u=!1,i={then:function(e,r){u=!0,a.then((function(n){ot(t),0===rt?at(n,e,r):e(n)}),(function(e){ot(t),r(e)}))}};return nt||"undefined"==typeof Promise||Promise.resolve().then((function(){})).then((function(){u||(nt=!0,j("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))})),i}var c=r;if(ot(t),0===rt){var s=_.current;return null!==s&&(it(s),_.current=null),{then:function(e,t){null===_.current?(_.current=[],at(c,e,t)):e(c)}}}return{then:function(e,t){e(c)}}},t.useCallback=function(e,t){return we().useCallback(e,t)},t.useContext=function(e){var t=we();if(void 0!==e._context){var r=e._context;r.Consumer===e?j("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&j("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return t.useContext(e)},t.useDebugValue=function(e,t){return we().useDebugValue(e,t)},t.useDeferredValue=function(e){return we().useDeferredValue(e)},t.useEffect=function(e,t){return we().useEffect(e,t)},t.useId=function(){return we().useId()},t.useImperativeHandle=function(e,t,r){return we().useImperativeHandle(e,t,r)},t.useInsertionEffect=function(e,t){return we().useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return we().useLayoutEffect(e,t)},t.useMemo=function(e,t){return we().useMemo(e,t)},t.useReducer=function(e,t,r){return we().useReducer(e,t,r)},t.useRef=function(e){return we().useRef(e)},t.useState=function(e){return we().useState(e)},t.useSyncExternalStore=function(e,t,r){return we().useSyncExternalStore(e,t,r)},t.useTransition=function(){return we().useTransition()},t.version="18.2.0","undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()}(s,s.exports)),s.exports);var l=u.exports,f=o(l);const p=f.createContext(null);p.displayName="TableContext";var d=(e,t)=>Object.prototype.toString.call(e)===`[object ${t}]`;var y=e=>"function"==typeof e;var m=e=>null==e;var h=e=>null!=e;var v=e=>"object"==typeof e&&null!==e;var b=function(e){if(!v(e)||!d(e,"Object"))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t};var g=function(e){const t=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"string"===t:"string"===t||d(e,"String")};var _=e=>Array.isArray?Array.isArray(e):d(e,"Array");var E=function(e){return null!==e&&"function"!=typeof e&&Number.isFinite(e.length)};var C=function(e){const t=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"number"===t:"number"===t||d(e,"Number")};function S(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(t){if(e===t)return;if(h(t)&&"object"==typeof t){const n=Object(t),o=[];for(const e in n)o.push(e);let{length:a}=o,u=-1;for(;a--;){const a=o[++u];h(n[a])&&"object"==typeof n[a]?w(e,t,a,r):O(e,a,n[a])}}}}function w(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const o=e[r],a=t[r];let u=t[r],i=!0;if(_(a)){if(n)u=[];else if(_(o))u=o;else if(E(o)){u=new Array(o.length);let e=-1;const t=o.length;for(;++e<t;)u[e]=o[e]}}else b(a)?(u=o,"function"!=typeof o&&"object"==typeof o||(u={})):i=!1;i&&S(u,a,n),O(e,r,u)}function O(e,t,r){(void 0!==r&&!function(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}(e[t],r)||void 0===r&&!(t in e))&&(e[t]=r)}function R(e){let t=-1;const r=arguments.length<=1?0:arguments.length-1;for(;++t<r;)S(e,t+1<1||arguments.length<=t+1?void 0:arguments[t+1],!0);return e}function k(e,t){if(!e||!b(e))return e;const r={};return Object.keys(e).forEach((n=>{const o=e[n];let a=!1;t.forEach((e=>{(g(e)&&e===n||e instanceof RegExp&&n.match(e))&&(a=!0)})),a||(r[n]=o)})),r}function L(e){return Object.prototype.toString.call(e)}function T(e){return Object.keys(e)}function P(e,t,r){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(null==e||null==t)return!1;if(Number.isNaN(e)&&Number.isNaN(t))return!0;if(L(e)!==L(t))return!1;if(y(e))return!!(null==r?void 0:r.skipFunction);if("object"!=typeof e)return!1;if(_(e)){if(e.length!==t.length)return!1;for(let n=e.length-1;n>=0;n--)if(!P(e[n],t[n],r))return!1;return!0}if(!b(e))return!1;const n=T(e),o=T(t);if(n.length!==o.length)return!1;n.sort(),o.sort();for(let e=n.length-1;e>=0;e--)if(n[e]!=o[e])return!1;for(let o=n.length-1;o>=0;o--){const a=n[o];if(!P(e[a],t[a],r))return!1}return!0}var N,j={exports:{}},x={};var $,I={};
|
|
11
11
|
/**
|
|
12
12
|
* @license React
|
|
13
13
|
* react-is.development.js
|
|
@@ -16,4 +16,4 @@
|
|
|
16
16
|
*
|
|
17
17
|
* This source code is licensed under the MIT license found in the
|
|
18
18
|
* LICENSE file in the root directory of this source tree.
|
|
19
|
-
*/"production"===process.env.NODE_ENV?R.exports=function(){if(O)return w;O=1;var e,t=Symbol.for("react.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),i=Symbol.for("react.context"),c=Symbol.for("react.server_context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen");function m(e){if("object"==typeof e&&null!==e){var y=e.$$typeof;switch(y){case t:switch(e=e.type){case n:case a:case o:case l:case f:return e;default:switch(e=e&&e.$$typeof){case c:case i:case s:case d:case p:case u:return e;default:return y}}case r:return y}}}return e=Symbol.for("react.module.reference"),w.ContextConsumer=i,w.ContextProvider=u,w.Element=t,w.ForwardRef=s,w.Fragment=n,w.Lazy=d,w.Memo=p,w.Portal=r,w.Profiler=a,w.StrictMode=o,w.Suspense=l,w.SuspenseList=f,w.isAsyncMode=function(){return!1},w.isConcurrentMode=function(){return!1},w.isContextConsumer=function(e){return m(e)===i},w.isContextProvider=function(e){return m(e)===u},w.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===t},w.isForwardRef=function(e){return m(e)===s},w.isFragment=function(e){return m(e)===n},w.isLazy=function(e){return m(e)===d},w.isMemo=function(e){return m(e)===p},w.isPortal=function(e){return m(e)===r},w.isProfiler=function(e){return m(e)===a},w.isStrictMode=function(e){return m(e)===o},w.isSuspense=function(e){return m(e)===l},w.isSuspenseList=function(e){return m(e)===f},w.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===n||t===a||t===o||t===l||t===f||t===y||"object"==typeof t&&null!==t&&(t.$$typeof===d||t.$$typeof===p||t.$$typeof===u||t.$$typeof===i||t.$$typeof===s||t.$$typeof===e||void 0!==t.getModuleId)},w.typeOf=m,w}():R.exports=(k||(k=1,"production"!==process.env.NODE_ENV&&function(){var e,t=Symbol.for("react.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),i=Symbol.for("react.context"),c=Symbol.for("react.server_context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen");function m(e){if("object"==typeof e&&null!==e){var y=e.$$typeof;switch(y){case t:var m=e.type;switch(m){case n:case a:case o:case l:case f:return m;default:var v=m&&m.$$typeof;switch(v){case c:case i:case s:case d:case p:case u:return v;default:return y}}case r:return y}}}e=Symbol.for("react.module.reference");var v=i,h=u,b=t,_=s,g=n,E=d,C=p,S=r,O=a,R=o,w=l,k=f,T=!1,P=!1;L.ContextConsumer=v,L.ContextProvider=h,L.Element=b,L.ForwardRef=_,L.Fragment=g,L.Lazy=E,L.Memo=C,L.Portal=S,L.Profiler=O,L.StrictMode=R,L.Suspense=w,L.SuspenseList=k,L.isAsyncMode=function(e){return T||(T=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 18+.")),!1},L.isConcurrentMode=function(e){return P||(P=!0,console.warn("The ReactIs.isConcurrentMode() alias has been deprecated, and will be removed in React 18+.")),!1},L.isContextConsumer=function(e){return m(e)===i},L.isContextProvider=function(e){return m(e)===u},L.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===t},L.isForwardRef=function(e){return m(e)===s},L.isFragment=function(e){return m(e)===n},L.isLazy=function(e){return m(e)===d},L.isMemo=function(e){return m(e)===p},L.isPortal=function(e){return m(e)===r},L.isProfiler=function(e){return m(e)===a},L.isStrictMode=function(e){return m(e)===o},L.isSuspense=function(e){return m(e)===l},L.isSuspenseList=function(e){return m(e)===f},L.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===n||t===a||t===o||t===l||t===f||t===y||"object"==typeof t&&null!==t&&(t.$$typeof===d||t.$$typeof===p||t.$$typeof===u||t.$$typeof===i||t.$$typeof===s||t.$$typeof===e||void 0!==t.getModuleId)},L.typeOf=m}()),L);var T=R.exports;const P=e=>{let t=[];return f.Children.forEach(e,(e=>{m(e)||(T.isFragment(e)?t=t.concat(P(e.props.children)):t.push(e))})),t},j={...t.ListTable.EVENT_TYPE,...t.PivotTable.EVENT_TYPE,...t.PivotChart.EVENT_TYPE},N={onClickCell:j.CLICK_CELL,onDblClickCell:j.DBLCLICK_CELL,onMouseDownCell:j.MOUSEDOWN_CELL,onMouseUpCell:j.MOUSEUP_CELL,onSelectedCell:j.SELECTED_CELL,onKeyDown:j.KEYDOWN,onMouseEnterTable:j.MOUSEENTER_TABLE,onMouseLeaveTable:j.MOUSELEAVE_TABLE,onMouseDownTable:j.MOUSEDOWN_TABLE,onMouseMoveCell:j.MOUSEMOVE_CELL,onMouseEnterCell:j.MOUSEENTER_CELL,onMouseLeaveCell:j.MOUSELEAVE_CELL,onContextMenuCell:j.CONTEXTMENU_CELL,onResizeColumn:j.RESIZE_COLUMN,onResizeColumnEnd:j.RESIZE_COLUMN_END,onChangeHeaderPosition:j.CHANGE_HEADER_POSITION,onSortClick:j.SORT_CLICK,onFreezeClick:j.FREEZE_CLICK,onScroll:j.SCROLL,onDropdownMenuClick:j.DROPDOWN_MENU_CLICK,onMouseOverChartSymbol:j.MOUSEOVER_CHART_SYMBOL,onDragSelectEnd:j.DRAG_SELECT_END,onDropdownIconClick:j.DROPDOWN_ICON_CLICK,onDropdownMenuClear:j.DROPDOWN_MENU_CLEAR,onTreeHierarchyStateChange:j.TREE_HIERARCHY_STATE_CHANGE,onShowMenu:j.SHOW_MENU,onHideMenu:j.HIDE_MENU,onIconClick:j.ICON_CLICK,onLegendItemClick:j.LEGEND_ITEM_CLICK,onLegendItemHover:j.LEGEND_ITEM_HOVER,onLegendItemUnHover:j.LEGEND_ITEM_UNHOVER,onLegendChange:j.LEGEND_CHANGE,onMouseEnterAxis:j.MOUSEENTER_AXIS,onMouseLeaveAxis:j.MOUSELEAVE_AXIS,onCheckboxStateChange:j.CHECKBOX_STATE_CHANGE,onRadioStateChange:j.RADIO_STATE_CHANGE,onAfterRender:j.AFTER_RENDER,onInitialized:j.INITIALIZED,onPivotSortClick:j.PIVOT_SORT_CLICK,onDrillMenuClick:j.DRILLMENU_CLICK,onVChartEventType:j.VCHART_EVENT_TYPE,onChangCellValue:j.CHANGE_CELL_VALUE,onMousedownFillHandle:j.MOUSEDOWN_FILL_HANDLE,onDragFillHandleEnd:j.DRAG_FILL_HANDLE_END,onDblclickFillHandle:j.DBLCLICK_FILL_HANDLE,onScrollVerticalEnd:j.SCROLL_VERTICAL_END,onScrollHorizontalEnd:j.SCROLL_HORIZONTAL_END},$=Object.keys(N),I=(e,t=N)=>{const r={};return Object.keys(e).forEach((n=>{t[n]&&e[n]&&(r[n]=e[n])})),r},D=(e,t,r,n=N)=>{if(!t&&!r||!e)return!1;const o=r?I(r,n):null,a=t?I(t,n):null;return o&&Object.keys(o).forEach((t=>{a&&a[t]&&a[t]===o[t]||e.off(n[t],r[t])})),a&&Object.keys(a).forEach((t=>{o&&o[t]&&o[t]===a[t]||e.on(n[t],a[t])})),!0},M=["children","hooks","ref",...$,"skipFunctionDiff","onError","onReady","option","records","container"],x=(e,t)=>`${e&&e.type&&(e.type.displayName||e.type.name)}-${t}`,A=f.forwardRef(((e,t)=>{const[r,o]=l.useState(0),a=l.useRef({});l.useImperativeHandle(t,(()=>a.current?.table));const u=!!e.option,i=!!e.records,c=l.useRef(!1),s=l.useRef(g(e,M)),d=l.useRef(null),y=l.useRef(e.records),v=f.useRef(null),h=!!e.skipFunctionDiff,b=l.useCallback((e=>u&&e.option?i&&e.records?{...e.option,records:e.records}:e.option:{records:e.records,...s.current,...d.current}),[u,i]),_=l.useCallback((e=>{let t;t="pivot-table"===e.type?new n.PivotTable(e.container,b(e)):"pivot-chart"===e.type?new n.PivotChart(e.container,b(e)):new n.ListTable(e.container,b(e)),a.current={...a.current,table:t},c.current=!1}),[b]),E=l.useCallback((()=>{if(!c.current){if(!a.current||!a.current.table)return;D(a.current.table,e,v.current,N),o(r+1),e.onReady&&e.onReady(a.current.table,0===r)}}),[r,o,e]),C=l.useCallback((()=>{a.current.table&&(a.current.table.render(),E())}),[E]);return l.useEffect((()=>{const t=u?null:(e=>{const t={};return P(e.children).map(((e,r)=>{const n=e&&e.type&&e.type.parseOption;if(n&&e.props){const o=n(m(e.props.componentId)?{...e.props,componentId:x(e,r)}:e.props);o.isSingle?t[o.optionName]=o.option:(t[o.optionName]||(t[o.optionName]=[]),t[o.optionName].push(o.option))}})),t})(e);if(!a.current?.table)return u||(d.current=t),_(e),C(),void(v.current=e);if(u)return void(S(v.current.option,e.option,{skipFunction:h})?i&&!S(v.current.records,e.records,{skipFunction:h})&&(a.current.table.setRecords(e.records),E(),v.current=e):(a.current.table.updateOption(b(e)),E(),v.current=e));const r=g(e,M);S(r,s.current,{skipFunction:h})&&S(t,d.current,{skipFunction:h})?i&&!S(e.records,y.current,{skipFunction:h})&&(y.current=e.records,a.current.table.setRecords(e.records),E(),v.current=e):(s.current=r,d.current=t,a.current.table.updateOption(b(e)),E(),v.current=e)}),[_,u,i,b,E,C,h,e]),l.useEffect((()=>()=>{a&&a.current&&a.current.table&&(a.current.table.release(),a.current=null),v.current=null,c.current=!0}),[]),f.createElement(p.Provider,{value:a.current},P(e.children).map(((e,t)=>{if("string"==typeof e)return;const n=x(e,t);return f.createElement(f.Fragment,{key:n},f.cloneElement(e,{updateId:r,componentId:n}))})))})),F=(e,t,r)=>{const n=function(e,t="TableContainer",r){const n=f.forwardRef(((t,n)=>{const o=l.useRef(),[a,u]=l.useState(!1),{className:i,style:c,width:s,...p}=t;return l.useLayoutEffect((()=>{u(!0)}),[]),f.createElement("div",{ref:o,className:i,style:{position:"relative",height:t.height||"100%",width:t.width||"100%",...c}},a?f.createElement(e,{ref:n,container:o.current,...r?r(p):p}):f.createElement(f.Fragment,null))}));return n.displayName=t||e.name,n}(A,e,(e=>(e.type=t,r?r(e):t?{...e,type:t}:e)));return n.displayName=e,n},V=F("ListTable","list-table"),H=F("PivotTable","pivot-table"),U=F("PivotChart","pivot-chart");const z=(e,t,r,n)=>{const o=["id","updateId","componentId"],a=r?Object.keys(r).concat(o):o,u=e=>{const t=l.useContext(p),n=f.useRef(null),o=f.useRef(e.updateId);if(e.updateId!==o.current){o.current=e.updateId;!!r&&D(t.table,e,n.current,r)&&(n.current=e)}return l.useEffect((()=>()=>{r&&D(t.table,null,n.current,r)}),[]),null};return u.displayName=e,u.parseOption=e=>({option:g(e,a),optionName:t,isSingle:n}),u},B=z("ListColumn","columns"),Y=z("PivotColumnDimension","columns"),K=z("PivotRowDimension","rows"),W=z("PivotIndicator","indicators"),q=z("PivotColumnHeaderTitle","columnHeaderTitle",void 0,!0),G=z("PivotRowHeaderTitle","rowHeaderTitle",void 0,!0),X=z("PivotCorner","corner",void 0,!0),Z=z("Menu","menu",void 0,!0),J=z("Tooltip","tooltip",void 0,!0);e.VTable=n,e.ListColumn=B,e.ListTable=V,e.Menu=Z,e.PivotChart=U,e.PivotColumnDimension=Y,e.PivotColumnHeaderTitle=q,e.PivotCorner=X,e.PivotIndicator=W,e.PivotRowDimension=K,e.PivotRowHeaderTitle=G,e.PivotTable=H,e.Tooltip=J,e.registerChartModule=function(e,t){n.register.chartModule(e,t)},e.version="0.25.1-alpha.3"}));
|
|
19
|
+
*/"production"===process.env.NODE_ENV?j.exports=function(){if(N)return x;N=1;var e,t=Symbol.for("react.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),i=Symbol.for("react.context"),c=Symbol.for("react.server_context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen");function m(e){if("object"==typeof e&&null!==e){var y=e.$$typeof;switch(y){case t:switch(e=e.type){case n:case a:case o:case l:case f:return e;default:switch(e=e&&e.$$typeof){case c:case i:case s:case d:case p:case u:return e;default:return y}}case r:return y}}}return e=Symbol.for("react.module.reference"),x.ContextConsumer=i,x.ContextProvider=u,x.Element=t,x.ForwardRef=s,x.Fragment=n,x.Lazy=d,x.Memo=p,x.Portal=r,x.Profiler=a,x.StrictMode=o,x.Suspense=l,x.SuspenseList=f,x.isAsyncMode=function(){return!1},x.isConcurrentMode=function(){return!1},x.isContextConsumer=function(e){return m(e)===i},x.isContextProvider=function(e){return m(e)===u},x.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===t},x.isForwardRef=function(e){return m(e)===s},x.isFragment=function(e){return m(e)===n},x.isLazy=function(e){return m(e)===d},x.isMemo=function(e){return m(e)===p},x.isPortal=function(e){return m(e)===r},x.isProfiler=function(e){return m(e)===a},x.isStrictMode=function(e){return m(e)===o},x.isSuspense=function(e){return m(e)===l},x.isSuspenseList=function(e){return m(e)===f},x.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===n||t===a||t===o||t===l||t===f||t===y||"object"==typeof t&&null!==t&&(t.$$typeof===d||t.$$typeof===p||t.$$typeof===u||t.$$typeof===i||t.$$typeof===s||t.$$typeof===e||void 0!==t.getModuleId)},x.typeOf=m,x}():j.exports=($||($=1,"production"!==process.env.NODE_ENV&&function(){var e,t=Symbol.for("react.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),i=Symbol.for("react.context"),c=Symbol.for("react.server_context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen");function m(e){if("object"==typeof e&&null!==e){var y=e.$$typeof;switch(y){case t:var m=e.type;switch(m){case n:case a:case o:case l:case f:return m;default:var h=m&&m.$$typeof;switch(h){case c:case i:case s:case d:case p:case u:return h;default:return y}}case r:return y}}}e=Symbol.for("react.module.reference");var h=i,v=u,b=t,g=s,_=n,E=d,C=p,S=r,w=a,O=o,R=l,k=f,L=!1,T=!1;I.ContextConsumer=h,I.ContextProvider=v,I.Element=b,I.ForwardRef=g,I.Fragment=_,I.Lazy=E,I.Memo=C,I.Portal=S,I.Profiler=w,I.StrictMode=O,I.Suspense=R,I.SuspenseList=k,I.isAsyncMode=function(e){return L||(L=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 18+.")),!1},I.isConcurrentMode=function(e){return T||(T=!0,console.warn("The ReactIs.isConcurrentMode() alias has been deprecated, and will be removed in React 18+.")),!1},I.isContextConsumer=function(e){return m(e)===i},I.isContextProvider=function(e){return m(e)===u},I.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===t},I.isForwardRef=function(e){return m(e)===s},I.isFragment=function(e){return m(e)===n},I.isLazy=function(e){return m(e)===d},I.isMemo=function(e){return m(e)===p},I.isPortal=function(e){return m(e)===r},I.isProfiler=function(e){return m(e)===a},I.isStrictMode=function(e){return m(e)===o},I.isSuspense=function(e){return m(e)===l},I.isSuspenseList=function(e){return m(e)===f},I.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===n||t===a||t===o||t===l||t===f||t===y||"object"==typeof t&&null!==t&&(t.$$typeof===d||t.$$typeof===p||t.$$typeof===u||t.$$typeof===i||t.$$typeof===s||t.$$typeof===e||void 0!==t.getModuleId)},I.typeOf=m}()),I);var M=j.exports;const D=e=>{let t=[];return f.Children.forEach(e,(e=>{m(e)||(M.isFragment(e)?t=t.concat(D(e.props.children)):t.push(e))})),t},A={...t.ListTable.EVENT_TYPE,...t.PivotTable.EVENT_TYPE,...t.PivotChart.EVENT_TYPE},F={onClickCell:A.CLICK_CELL,onDblClickCell:A.DBLCLICK_CELL,onMouseDownCell:A.MOUSEDOWN_CELL,onMouseUpCell:A.MOUSEUP_CELL,onSelectedCell:A.SELECTED_CELL,onKeyDown:A.KEYDOWN,onMouseEnterTable:A.MOUSEENTER_TABLE,onMouseLeaveTable:A.MOUSELEAVE_TABLE,onMouseDownTable:A.MOUSEDOWN_TABLE,onMouseMoveCell:A.MOUSEMOVE_CELL,onMouseEnterCell:A.MOUSEENTER_CELL,onMouseLeaveCell:A.MOUSELEAVE_CELL,onContextMenuCell:A.CONTEXTMENU_CELL,onResizeColumn:A.RESIZE_COLUMN,onResizeColumnEnd:A.RESIZE_COLUMN_END,onChangeHeaderPosition:A.CHANGE_HEADER_POSITION,onSortClick:A.SORT_CLICK,onFreezeClick:A.FREEZE_CLICK,onScroll:A.SCROLL,onDropdownMenuClick:A.DROPDOWN_MENU_CLICK,onMouseOverChartSymbol:A.MOUSEOVER_CHART_SYMBOL,onDragSelectEnd:A.DRAG_SELECT_END,onDropdownIconClick:A.DROPDOWN_ICON_CLICK,onDropdownMenuClear:A.DROPDOWN_MENU_CLEAR,onTreeHierarchyStateChange:A.TREE_HIERARCHY_STATE_CHANGE,onShowMenu:A.SHOW_MENU,onHideMenu:A.HIDE_MENU,onIconClick:A.ICON_CLICK,onLegendItemClick:A.LEGEND_ITEM_CLICK,onLegendItemHover:A.LEGEND_ITEM_HOVER,onLegendItemUnHover:A.LEGEND_ITEM_UNHOVER,onLegendChange:A.LEGEND_CHANGE,onMouseEnterAxis:A.MOUSEENTER_AXIS,onMouseLeaveAxis:A.MOUSELEAVE_AXIS,onCheckboxStateChange:A.CHECKBOX_STATE_CHANGE,onRadioStateChange:A.RADIO_STATE_CHANGE,onAfterRender:A.AFTER_RENDER,onInitialized:A.INITIALIZED,onPivotSortClick:A.PIVOT_SORT_CLICK,onDrillMenuClick:A.DRILLMENU_CLICK,onVChartEventType:A.VCHART_EVENT_TYPE,onChangCellValue:A.CHANGE_CELL_VALUE,onMousedownFillHandle:A.MOUSEDOWN_FILL_HANDLE,onDragFillHandleEnd:A.DRAG_FILL_HANDLE_END,onDblclickFillHandle:A.DBLCLICK_FILL_HANDLE,onScrollVerticalEnd:A.SCROLL_VERTICAL_END,onScrollHorizontalEnd:A.SCROLL_HORIZONTAL_END},V=Object.keys(F),H=(e,t=F)=>{const r={};return Object.keys(e).forEach((n=>{t[n]&&e[n]&&(r[n]=e[n])})),r},U=(e,t,r,n=F)=>{if(!t&&!r||!e)return!1;const o=r?H(r,n):null,a=t?H(t,n):null;return o&&Object.keys(o).forEach((t=>{a&&a[t]&&a[t]===o[t]||e.off(n[t],r[t])})),a&&Object.keys(a).forEach((t=>{o&&o[t]&&o[t]===a[t]||e.on(n[t],a[t])})),!0},z=["children","hooks","ref",...V,"skipFunctionDiff","onError","onReady","option","records","container"],B=(e,t)=>`${e&&e.type&&(e.type.displayName||e.type.name)}-${t}`,W=f.forwardRef(((e,t)=>{const[r,o]=l.useState(0),a=l.useRef({});l.useImperativeHandle(t,(()=>a.current?.table));const u=!!e.option,i=!!e.records,c=l.useRef(!1),s=l.useRef(k(e,z)),d=l.useRef(null),y=l.useRef(e.records),h=f.useRef(null),v=!!e.skipFunctionDiff,b=l.useCallback((e=>u&&e.option?i&&e.records?{...e.option,records:e.records}:e.option:{records:e.records,...s.current,...d.current}),[u,i]),g=l.useCallback((e=>{let t;t="pivot-table"===e.type?new n.PivotTable(e.container,b(e)):"pivot-chart"===e.type?new n.PivotChart(e.container,b(e)):new n.ListTable(e.container,b(e)),a.current={...a.current,table:t},c.current=!1}),[b]),_=l.useCallback((()=>{if(!c.current){if(!a.current||!a.current.table)return;U(a.current.table,e,h.current,F),o(r+1),e.onReady&&e.onReady(a.current.table,0===r)}}),[r,o,e]),E=l.useCallback((()=>{a.current.table&&(a.current.table.render(),_())}),[_]);return l.useEffect((()=>{const t=u?null:(e=>{const t={};return D(e.children).map(((e,r)=>{const n=e&&e.type&&e.type.parseOption;if(n&&e.props){const o=n(m(e.props.componentId)?{...e.props,componentId:B(e,r)}:e.props);o.isSingle?t[o.optionName]=o.option:(t[o.optionName]||(t[o.optionName]=[]),t[o.optionName].push(o.option))}})),t})(e);if(!a.current?.table)return u||(d.current=t),g(e),E(),void(h.current=e);if(u)return void(P(h.current.option,e.option,{skipFunction:v})?i&&!P(h.current.records,e.records,{skipFunction:v})&&(a.current.table.setRecords(e.records),_(),h.current=e):(a.current.table.updateOption(b(e)),_(),h.current=e));const r=k(e,z);P(r,s.current,{skipFunction:v})&&P(t,d.current,{skipFunction:v})?i&&!P(e.records,y.current,{skipFunction:v})&&(y.current=e.records,a.current.table.setRecords(e.records),_(),h.current=e):(s.current=r,d.current=t,a.current.table.updateOption(b(e)),_(),h.current=e)}),[g,u,i,b,_,E,v,e]),l.useEffect((()=>()=>{a&&a.current&&a.current.table&&(a.current.table.release(),a.current=null),h.current=null,c.current=!0}),[]),f.createElement(p.Provider,{value:a.current},D(e.children).map(((e,t)=>{if("string"==typeof e)return;const n=B(e,t);return f.createElement(f.Fragment,{key:n},f.cloneElement(e,{updateId:r,componentId:n}))})))})),Y=(e,t,r)=>{const n=function(e,t="TableContainer",r){const n=f.forwardRef(((t,n)=>{const o=l.useRef(),[a,u]=l.useState(!1),{className:i,style:c,width:s,...p}=t;return l.useLayoutEffect((()=>{u(!0)}),[]),f.createElement("div",{ref:o,className:i,style:{position:"relative",height:t.height||"100%",width:t.width||"100%",...c}},a?f.createElement(e,{ref:n,container:o.current,...r?r(p):p}):f.createElement(f.Fragment,null))}));return n.displayName=t||e.name,n}(W,e,(e=>(e.type=t,r?r(e):t?{...e,type:t}:e)));return n.displayName=e,n},K=Y("ListTable","list-table"),q=Y("PivotTable","pivot-table"),G=Y("PivotChart","pivot-chart");const X=(e,t,r,n)=>{const o=["id","updateId","componentId"],a=r?Object.keys(r).concat(o):o,u=e=>{const t=l.useContext(p),n=f.useRef(null),o=f.useRef(e.updateId);if(e.updateId!==o.current){o.current=e.updateId;!!r&&U(t.table,e,n.current,r)&&(n.current=e)}return l.useEffect((()=>()=>{r&&U(t.table,null,n.current,r)}),[]),null};return u.displayName=e,u.parseOption=e=>({option:k(e,a),optionName:t,isSingle:n}),u},Z=X("ListColumn","columns"),J=X("PivotColumnDimension","columns"),Q=X("PivotRowDimension","rows"),ee=X("PivotIndicator","indicators"),te=X("PivotColumnHeaderTitle","columnHeaderTitle",void 0,!0),re=X("PivotRowHeaderTitle","rowHeaderTitle",void 0,!0),ne=X("PivotCorner","corner",void 0,!0),oe=X("Menu","menu",void 0,!0),ae=X("Tooltip","tooltip",void 0,!0);function ue(e,t){return C(e)?e:"string"==typeof e&&e.endsWith("%")?Number(e.slice(0,-1))/100*t:0}e.VTable=n,e.CustomComponent=e=>{const t=l.useContext(p),{table:r}=t,n=function(e,t){const r=l.useMemo((()=>({...t})),[t]),n=l.useMemo((()=>{const t=R({},e);for(const e in r)void 0===t[e]&&(t[e]=r[e]);return t}),[e,r]);return n}(e,{style:{left:0,top:0},className:"vtable-custom-component",displayMode:"position",x:0,y:0,width:0,height:0,row:0,col:0,anchor:"top-left",dx:0,dy:0}),{displayMode:o,x:a,y:u,width:i,height:c,row:s,col:d,anchor:y,dx:m,dy:h,className:v,children:b,style:g}=n;let _,E,C,S;if("position"===o)_=a+m+"px",E=u+h+"px",C=i+"px",S=c+"px";else if("cell"===o){const e=r&&d>=0&&s>=0?r?.getCellRelativeRect(d,s):{width:0,height:0,left:-9999,top:-9999};C=ue(i,e.width)+"px",S=ue(c,e.height)+"px","top-left"===y?(_=e.left+ue(m,e.width)+"px",E=e.top+ue(h,e.height)+"px"):"top-right"===y?(_=e.left+ue(m,e.width)+e.width+"px",E=e.top+ue(h,e.height)+"px"):"bottom-left"===y?(_=e.left+ue(m,e.width)+"px",E=e.top+ue(h,e.height)+e.height+"px"):"bottom-right"===y&&(_=e.left+ue(m,e.width)+e.width+"px",E=e.top+ue(h,e.height)+e.height+"px")}const w=R({},g,{position:"absolute",zIndex:1e3,width:C,height:S,left:_,top:E});return f.createElement("div",{className:v,style:w},f.Children.map(b,(e=>e?f.cloneElement(e,{}):e)))},e.ListColumn=Z,e.ListTable=K,e.Menu=oe,e.PivotChart=G,e.PivotColumnDimension=J,e.PivotColumnHeaderTitle=te,e.PivotCorner=ne,e.PivotIndicator=ee,e.PivotRowDimension=Q,e.PivotRowHeaderTitle=re,e.PivotTable=q,e.Tooltip=ae,e.registerChartModule=function(e,t){n.register.chartModule(e,t)},e.version="0.25.1-alpha.4"}));
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React, { type CSSProperties, type HTMLAttributes, type DetailedHTMLProps } from 'react';
|
|
2
|
+
export interface CustomComponentProps extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>, 'className' | 'ref'> {
|
|
3
|
+
style?: CSSProperties;
|
|
4
|
+
className?: string;
|
|
5
|
+
displayMode: 'position' | 'cell';
|
|
6
|
+
x?: number;
|
|
7
|
+
y?: number;
|
|
8
|
+
width?: number | string;
|
|
9
|
+
height?: number | string;
|
|
10
|
+
row?: number;
|
|
11
|
+
col?: number;
|
|
12
|
+
anchor?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
13
|
+
dx?: number | string;
|
|
14
|
+
dy?: number | string;
|
|
15
|
+
}
|
|
16
|
+
export declare const CustomComponent: React.FC<CustomComponentProps>;
|
|
17
|
+
export default function useMergeProps<PropsType>(componentProps: PropsType, defaultProps: Partial<PropsType>): PropsType;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import React, { useContext, useMemo } from "react";
|
|
2
|
+
|
|
3
|
+
import RootTableContext from "../context/table";
|
|
4
|
+
|
|
5
|
+
import { isNumber, merge } from "@visactor/vutils";
|
|
6
|
+
|
|
7
|
+
export const CustomComponent = baseProps => {
|
|
8
|
+
const context = useContext(RootTableContext), {table: table} = context, props = useMergeProps(baseProps, {
|
|
9
|
+
style: {
|
|
10
|
+
left: 0,
|
|
11
|
+
top: 0
|
|
12
|
+
},
|
|
13
|
+
className: "vtable-custom-component",
|
|
14
|
+
displayMode: "position",
|
|
15
|
+
x: 0,
|
|
16
|
+
y: 0,
|
|
17
|
+
width: 0,
|
|
18
|
+
height: 0,
|
|
19
|
+
row: 0,
|
|
20
|
+
col: 0,
|
|
21
|
+
anchor: "top-left",
|
|
22
|
+
dx: 0,
|
|
23
|
+
dy: 0
|
|
24
|
+
}), {displayMode: displayMode, x: x, y: y, width: width, height: height, row: row, col: col, anchor: anchor, dx: dx, dy: dy, className: className, children: children, style: style} = props;
|
|
25
|
+
let styleLeft, styleTop, styleWidth, styleHeight;
|
|
26
|
+
if ("position" === displayMode) styleLeft = x + dx + "px", styleTop = y + dy + "px",
|
|
27
|
+
styleWidth = width + "px", styleHeight = height + "px"; else if ("cell" === displayMode) {
|
|
28
|
+
const cellRect = table && col >= 0 && row >= 0 ? null == table ? void 0 : table.getCellRelativeRect(col, row) : {
|
|
29
|
+
width: 0,
|
|
30
|
+
height: 0,
|
|
31
|
+
left: -9999,
|
|
32
|
+
top: -9999
|
|
33
|
+
};
|
|
34
|
+
styleWidth = dealWidthNumber(width, cellRect.width) + "px", styleHeight = dealWidthNumber(height, cellRect.height) + "px",
|
|
35
|
+
"top-left" === anchor ? (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + "px",
|
|
36
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + "px") : "top-right" === anchor ? (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + "px",
|
|
37
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + "px") : "bottom-left" === anchor ? (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + "px",
|
|
38
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + "px") : "bottom-right" === anchor && (styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + "px",
|
|
39
|
+
styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + "px");
|
|
40
|
+
}
|
|
41
|
+
const componentStyle = merge({}, style, {
|
|
42
|
+
position: "absolute",
|
|
43
|
+
zIndex: 1e3,
|
|
44
|
+
width: styleWidth,
|
|
45
|
+
height: styleHeight,
|
|
46
|
+
left: styleLeft,
|
|
47
|
+
top: styleTop
|
|
48
|
+
});
|
|
49
|
+
return React.createElement("div", {
|
|
50
|
+
className: className,
|
|
51
|
+
style: componentStyle
|
|
52
|
+
}, React.Children.map(children, (child => child ? React.cloneElement(child, {}) : child)));
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export default function useMergeProps(componentProps, defaultProps) {
|
|
56
|
+
const _defaultProps = useMemo((() => Object.assign({}, defaultProps)), [ defaultProps ]);
|
|
57
|
+
return useMemo((() => {
|
|
58
|
+
const mProps = merge({}, componentProps);
|
|
59
|
+
for (const propName in _defaultProps) void 0 === mProps[propName] && (mProps[propName] = _defaultProps[propName]);
|
|
60
|
+
return mProps;
|
|
61
|
+
}), [ componentProps, _defaultProps ]);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
function dealWidthNumber(value, refenceValue) {
|
|
65
|
+
return isNumber(value) ? value : "string" == typeof value && value.endsWith("%") ? Number(value.slice(0, -1)) / 100 * refenceValue : 0;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=custom-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["components/custom-component.tsx"],"names":[],"mappings":"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","file":"custom-component.js","sourcesContent":["import type { ReactElement } from 'react';\nimport React, {\n type CSSProperties,\n type ReactNode,\n type HTMLAttributes,\n type DetailedHTMLProps,\n useContext,\n useMemo\n} from 'react';\nimport RootTableContext from '../context/table';\nimport { isNumber, merge } from '@visactor/vutils';\n\nexport interface CustomComponentProps\n extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>, 'className' | 'ref'> {\n style?: CSSProperties;\n // className?: string | string[];\n className?: string;\n\n // for table\n displayMode: 'position' | 'cell';\n x?: number;\n y?: number;\n width?: number | string;\n height?: number | string;\n // width?: number;\n // height?: number;\n row?: number;\n col?: number;\n anchor?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';\n dx?: number | string;\n dy?: number | string;\n // dx?: number;\n // dy?: number;\n}\n\nexport const CustomComponent: React.FC<CustomComponentProps> = (baseProps: CustomComponentProps) => {\n const context = useContext(RootTableContext);\n const { table } = context;\n\n // if (!table) {\n // return null;\n // }\n\n const props = useMergeProps<CustomComponentProps>(baseProps, {\n style: {\n left: 0,\n top: 0\n },\n className: 'vtable-custom-component',\n displayMode: 'position',\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n row: 0,\n col: 0,\n anchor: 'top-left',\n dx: 0,\n dy: 0\n });\n const { displayMode, x, y, width, height, row, col, anchor, dx, dy, className, children, style } = props;\n\n let styleLeft;\n let styleTop;\n let styleWidth;\n let styleHeight;\n\n if (displayMode === 'position') {\n styleLeft = x + (dx as number) + 'px';\n styleTop = y + (dy as number) + 'px';\n styleWidth = width + 'px';\n styleHeight = height + 'px';\n } else if (displayMode === 'cell') {\n const cellRect =\n table && col >= 0 && row >= 0\n ? table?.getCellRelativeRect(col, row)\n : { width: 0, height: 0, left: -9999, top: -9999 };\n styleWidth = dealWidthNumber(width, cellRect.width) + 'px';\n styleHeight = dealWidthNumber(height, cellRect.height) + 'px';\n if (anchor === 'top-left') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + 'px';\n } else if (anchor === 'top-right') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + 'px';\n } else if (anchor === 'bottom-left') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + 'px';\n } else if (anchor === 'bottom-right') {\n styleLeft = cellRect.left + dealWidthNumber(dx, cellRect.width) + cellRect.width + 'px';\n styleTop = cellRect.top + dealWidthNumber(dy, cellRect.height) + cellRect.height + 'px';\n }\n }\n\n const componentStyle = merge({}, style, {\n position: 'absolute',\n zIndex: 1000,\n width: styleWidth,\n height: styleHeight,\n left: styleLeft,\n top: styleTop\n });\n\n return (\n <div className={className} style={componentStyle}>\n {React.Children.map(children, (child: ReactNode) => {\n if (child) {\n return React.cloneElement(child as ReactElement, {});\n }\n return child;\n })}\n </div>\n );\n};\n\n// export const CustomComponent = forwardRef<unknown, CustomComponentProps>(CustomComponent1);\n\nexport default function useMergeProps<PropsType>(\n componentProps: PropsType,\n defaultProps: Partial<PropsType>\n): PropsType {\n const _defaultProps = useMemo(() => {\n return { ...defaultProps };\n }, [defaultProps]);\n\n const props = useMemo(() => {\n const mProps = merge({}, componentProps);\n\n // https://github.com/facebook/react/blob/cae635054e17a6f107a39d328649137b83f25972/packages/react/src/ReactElement.js#L312\n for (const propName in _defaultProps) {\n if (mProps[propName] === undefined) {\n mProps[propName] = _defaultProps[propName];\n }\n }\n\n return mProps;\n }, [componentProps, _defaultProps]);\n\n return props;\n}\n\nfunction dealWidthNumber(value: string | number, refenceValue: number) {\n if (isNumber(value)) {\n return value;\n }\n\n if (typeof value === 'string' && value.endsWith('%')) {\n return (Number(value.slice(0, -1)) / 100) * refenceValue;\n }\n\n return 0;\n}\n"]}
|
package/es/components/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export { PivotColumnHeaderTitle, PivotRowHeaderTitle } from './pivot/pivot-heade
|
|
|
6
6
|
export { PivotCorner } from './pivot/pivot-corner';
|
|
7
7
|
export { Menu } from './component/menu';
|
|
8
8
|
export { Tooltip } from './component/tooltip';
|
|
9
|
+
export { CustomComponent } from './custom-component';
|
|
9
10
|
type Props = {
|
|
10
11
|
updateId?: number;
|
|
11
12
|
};
|
package/es/components/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC","file":"index.js","sourcesContent":["import type React from 'react';\nexport { ListColumn } from './list/list-column';\nexport { PivotColumnDimension, PivotRowDimension } from './pivot/pivot-dimension';\nexport { PivotIndicator } from './pivot/pivot-indicator';\nexport { PivotColumnHeaderTitle, PivotRowHeaderTitle } from './pivot/pivot-header-title';\nexport { PivotCorner } from './pivot/pivot-corner';\nexport { Menu } from './component/menu';\nexport { Tooltip } from './component/tooltip';\n\ntype Props = { updateId?: number };\n\nexport interface IMarkElement extends React.ReactElement<Props, React.JSXElementConstructor<Props>> {\n id: string | number;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC","file":"index.js","sourcesContent":["import type React from 'react';\nexport { ListColumn } from './list/list-column';\nexport { PivotColumnDimension, PivotRowDimension } from './pivot/pivot-dimension';\nexport { PivotIndicator } from './pivot/pivot-indicator';\nexport { PivotColumnHeaderTitle, PivotRowHeaderTitle } from './pivot/pivot-header-title';\nexport { PivotCorner } from './pivot/pivot-corner';\nexport { Menu } from './component/menu';\nexport { Tooltip } from './component/tooltip';\n\nexport { CustomComponent } from './custom-component';\n\ntype Props = { updateId?: number };\n\nexport interface IMarkElement extends React.ReactElement<Props, React.JSXElementConstructor<Props>> {\n id: string | number;\n}\n"]}
|
package/es/index.d.ts
CHANGED
package/es/index.js
CHANGED
package/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAE3C,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["import * as VTable from '@visactor/vtable';\n\nexport * from './tables';\nexport * from './components';\nexport { VTable };\n\nexport const version = \"0.25.1-alpha.
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAE3C,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["import * as VTable from '@visactor/vtable';\n\nexport * from './tables';\nexport * from './components';\nexport { VTable };\n\nexport const version = \"0.25.1-alpha.4\";\n"]}
|
package/es/util.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@visactor/react-vtable",
|
|
3
|
-
"version": "0.25.1-alpha.
|
|
3
|
+
"version": "0.25.1-alpha.4",
|
|
4
4
|
"description": "The react version of VTable",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -43,12 +43,12 @@
|
|
|
43
43
|
"access": "public"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@visactor/vtable": "0.25.1-alpha.
|
|
46
|
+
"@visactor/vtable": "0.25.1-alpha.4",
|
|
47
47
|
"@visactor/vutils": "~0.18.1",
|
|
48
48
|
"react-is": "^18.2.0"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
|
-
"@visactor/vchart": "1.10.
|
|
51
|
+
"@visactor/vchart": "1.10.5",
|
|
52
52
|
"@rushstack/eslint-patch": "~1.1.4",
|
|
53
53
|
"react": "^18.0.0",
|
|
54
54
|
"react-dom": "^18.0.0",
|