datocms-react-ui 2.1.0-alpha.0 → 2.1.0-alpha.2
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/dist/cjs/HotKey/index.js +105 -0
- package/dist/cjs/HotKey/index.js.map +1 -0
- package/dist/cjs/HotKey/styles.module.css.json +1 -0
- package/dist/cjs/SplitView/SplitViewPane/index.js +14 -0
- package/dist/cjs/SplitView/SplitViewPane/index.js.map +1 -0
- package/dist/cjs/SplitView/SplitViewPane/styles.module.css.json +1 -0
- package/dist/cjs/SplitView/SplitViewSash/index.js +76 -0
- package/dist/cjs/SplitView/SplitViewSash/index.js.map +1 -0
- package/dist/cjs/SplitView/SplitViewSash/styles.module.css.json +1 -0
- package/dist/cjs/SplitView/index.js +206 -0
- package/dist/cjs/SplitView/index.js.map +1 -0
- package/dist/cjs/SplitView/styles.module.css.json +1 -0
- package/dist/cjs/SplitView/types.js +3 -0
- package/dist/cjs/SplitView/types.js.map +1 -0
- package/dist/cjs/Tooltip/Tooltip/index.js +116 -0
- package/dist/cjs/Tooltip/Tooltip/index.js.map +1 -0
- package/dist/cjs/Tooltip/TooltipContent/index.js +147 -0
- package/dist/cjs/Tooltip/TooltipContent/index.js.map +1 -0
- package/dist/cjs/Tooltip/TooltipContent/styles.module.css.json +1 -0
- package/dist/cjs/Tooltip/TooltipDelayGroup/index.js +140 -0
- package/dist/cjs/Tooltip/TooltipDelayGroup/index.js.map +1 -0
- package/dist/cjs/Tooltip/TooltipTrigger/index.js +102 -0
- package/dist/cjs/Tooltip/TooltipTrigger/index.js.map +1 -0
- package/dist/cjs/Tooltip/index.js +12 -0
- package/dist/cjs/Tooltip/index.js.map +1 -0
- package/dist/cjs/Tooltip/utils.js +165 -0
- package/dist/cjs/Tooltip/utils.js.map +1 -0
- package/dist/cjs/VerticalSplit/index.js +337 -0
- package/dist/cjs/VerticalSplit/index.js.map +1 -0
- package/dist/cjs/VerticalSplit/styles.module.css.json +1 -0
- package/dist/cjs/icons.js +19 -1
- package/dist/cjs/icons.js.map +1 -1
- package/dist/cjs/index.js +7 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/HotKey/index.d.ts +70 -0
- package/dist/esm/HotKey/index.js +75 -0
- package/dist/esm/HotKey/index.js.map +1 -0
- package/dist/esm/HotKey/styles.module.css.json +1 -0
- package/dist/esm/SplitView/SplitViewPane/index.d.ts +7 -0
- package/dist/esm/SplitView/SplitViewPane/index.js +7 -0
- package/dist/esm/SplitView/SplitViewPane/index.js.map +1 -0
- package/dist/esm/SplitView/SplitViewPane/styles.module.css.json +1 -0
- package/dist/esm/SplitView/SplitViewSash/index.d.ts +17 -0
- package/dist/esm/SplitView/SplitViewSash/index.js +46 -0
- package/dist/esm/SplitView/SplitViewSash/index.js.map +1 -0
- package/dist/esm/SplitView/SplitViewSash/styles.module.css.json +1 -0
- package/dist/esm/SplitView/index.d.ts +16 -0
- package/dist/esm/SplitView/index.js +176 -0
- package/dist/esm/SplitView/index.js.map +1 -0
- package/dist/esm/SplitView/styles.module.css.json +1 -0
- package/dist/esm/SplitView/types.d.ts +8 -0
- package/dist/esm/SplitView/types.js +2 -0
- package/dist/esm/SplitView/types.js.map +1 -0
- package/dist/esm/Tooltip/Tooltip/index.d.ts +74 -0
- package/dist/esm/Tooltip/Tooltip/index.js +89 -0
- package/dist/esm/Tooltip/Tooltip/index.js.map +1 -0
- package/dist/esm/Tooltip/TooltipContent/index.d.ts +68 -0
- package/dist/esm/Tooltip/TooltipContent/index.js +118 -0
- package/dist/esm/Tooltip/TooltipContent/index.js.map +1 -0
- package/dist/esm/Tooltip/TooltipContent/styles.module.css.json +1 -0
- package/dist/esm/Tooltip/TooltipDelayGroup/index.d.ts +118 -0
- package/dist/esm/Tooltip/TooltipDelayGroup/index.js +113 -0
- package/dist/esm/Tooltip/TooltipDelayGroup/index.js.map +1 -0
- package/dist/esm/Tooltip/TooltipTrigger/index.d.ts +45 -0
- package/dist/esm/Tooltip/TooltipTrigger/index.js +76 -0
- package/dist/esm/Tooltip/TooltipTrigger/index.js.map +1 -0
- package/dist/esm/Tooltip/index.d.ts +8 -0
- package/dist/esm/Tooltip/index.js +5 -0
- package/dist/esm/Tooltip/index.js.map +1 -0
- package/dist/esm/Tooltip/utils.d.ts +166 -0
- package/dist/esm/Tooltip/utils.js +135 -0
- package/dist/esm/Tooltip/utils.js.map +1 -0
- package/dist/esm/VerticalSplit/index.d.ts +238 -0
- package/dist/esm/VerticalSplit/index.js +307 -0
- package/dist/esm/VerticalSplit/index.js.map +1 -0
- package/dist/esm/VerticalSplit/styles.module.css.json +1 -0
- package/dist/esm/icons.d.ts +3 -0
- package/dist/esm/icons.js +15 -0
- package/dist/esm/icons.js.map +1 -1
- package/dist/esm/index.d.ts +7 -3
- package/dist/esm/index.js +7 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/types/HotKey/index.d.ts +70 -0
- package/dist/types/SplitView/SplitViewPane/index.d.ts +7 -0
- package/dist/types/SplitView/SplitViewSash/index.d.ts +17 -0
- package/dist/types/SplitView/index.d.ts +16 -0
- package/dist/types/SplitView/types.d.ts +8 -0
- package/dist/types/Tooltip/Tooltip/index.d.ts +74 -0
- package/dist/types/Tooltip/TooltipContent/index.d.ts +68 -0
- package/dist/types/Tooltip/TooltipDelayGroup/index.d.ts +118 -0
- package/dist/types/Tooltip/TooltipTrigger/index.d.ts +45 -0
- package/dist/types/Tooltip/index.d.ts +8 -0
- package/dist/types/Tooltip/utils.d.ts +166 -0
- package/dist/types/VerticalSplit/index.d.ts +238 -0
- package/dist/types/icons.d.ts +3 -0
- package/dist/types/index.d.ts +7 -3
- package/package.json +4 -3
- package/src/HotKey/index.tsx +95 -0
- package/src/HotKey/styles.module.css +22 -0
- package/src/HotKey/styles.module.css.json +1 -0
- package/src/SplitView/SplitViewPane/index.tsx +19 -0
- package/src/SplitView/SplitViewPane/styles.module.css +6 -0
- package/src/SplitView/SplitViewPane/styles.module.css.json +1 -0
- package/src/SplitView/SplitViewSash/index.tsx +99 -0
- package/src/SplitView/SplitViewSash/styles.module.css +68 -0
- package/src/SplitView/SplitViewSash/styles.module.css.json +1 -0
- package/src/SplitView/index.tsx +256 -0
- package/src/SplitView/styles.module.css +22 -0
- package/src/SplitView/styles.module.css.json +1 -0
- package/src/SplitView/types.ts +9 -0
- package/src/Tooltip/Tooltip/index.tsx +85 -0
- package/src/Tooltip/TooltipContent/index.tsx +145 -0
- package/src/Tooltip/TooltipContent/styles.module.css +10 -0
- package/src/Tooltip/TooltipContent/styles.module.css.json +1 -0
- package/src/Tooltip/TooltipDelayGroup/index.tsx +128 -0
- package/src/Tooltip/TooltipTrigger/index.tsx +71 -0
- package/src/Tooltip/index.ts +8 -0
- package/src/Tooltip/utils.ts +176 -0
- package/src/VerticalSplit/index.tsx +401 -0
- package/src/VerticalSplit/styles.module.css +103 -0
- package/src/VerticalSplit/styles.module.css.json +1 -0
- package/src/global.css +31 -25
- package/src/icons.tsx +60 -0
- package/src/index.ts +7 -3
- package/styles.css +1 -1
- package/types.json +6126 -3451
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import classNames from 'classnames';
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
|
+
import s from './styles.module.css.json';
|
|
4
|
+
export function SplitViewSash(_a) {
|
|
5
|
+
var onMouseDown = _a.onMouseDown, onMouseMove = _a.onMouseMove, onMouseUp = _a.onMouseUp, style = _a.style, split = _a.split, allowResize = _a.allowResize, action = _a.action;
|
|
6
|
+
var _b = useState(false), dragging = _b[0], setDrag = _b[1];
|
|
7
|
+
function handleMouseMove(e) {
|
|
8
|
+
onMouseMove(e.pageX, e.pageY);
|
|
9
|
+
}
|
|
10
|
+
function handleMouseUp() {
|
|
11
|
+
setDrag(false);
|
|
12
|
+
onMouseUp();
|
|
13
|
+
window.removeEventListener('mousemove', handleMouseMove);
|
|
14
|
+
window.removeEventListener('mouseup', handleMouseUp);
|
|
15
|
+
}
|
|
16
|
+
function handleTouchMove(e) {
|
|
17
|
+
onMouseMove(e.touches[0].pageX, e.touches[0].pageY);
|
|
18
|
+
}
|
|
19
|
+
function handleTouchEnd() {
|
|
20
|
+
setDrag(false);
|
|
21
|
+
onMouseUp();
|
|
22
|
+
window.removeEventListener('touchmove', handleTouchMove);
|
|
23
|
+
window.removeEventListener('touchend', handleTouchEnd);
|
|
24
|
+
}
|
|
25
|
+
var actionEl = (action === null || action === void 0 ? void 0 : action.icon) && (React.createElement("div", { className: s.SplitViewSash__content, onMouseDown: function (e) {
|
|
26
|
+
e.stopPropagation();
|
|
27
|
+
}, onClick: function () {
|
|
28
|
+
action.onClick();
|
|
29
|
+
} },
|
|
30
|
+
React.createElement("div", { className: s.SplitViewSash__content__button }, action === null || action === void 0 ? void 0 : action.icon)));
|
|
31
|
+
return (React.createElement("div", { role: "Resizer", className: classNames(s.SplitViewSash, split === 'vertical'
|
|
32
|
+
? s['SplitViewSash--vertical']
|
|
33
|
+
: s['SplitViewSash--horizontal'], !allowResize && s['SplitViewSash--no-resize'], dragging && s['SplitViewSash--dragging']), onMouseDown: function (e) {
|
|
34
|
+
setDrag(true);
|
|
35
|
+
onMouseDown(e.pageX, e.pageY);
|
|
36
|
+
window.addEventListener('mousemove', handleMouseMove);
|
|
37
|
+
window.addEventListener('mouseup', handleMouseUp);
|
|
38
|
+
}, onTouchStart: function (e) {
|
|
39
|
+
e.preventDefault();
|
|
40
|
+
setDrag(true);
|
|
41
|
+
onMouseDown(e.touches[0].pageX, e.touches[0].pageY);
|
|
42
|
+
window.addEventListener('touchmove', handleTouchMove);
|
|
43
|
+
window.addEventListener('touchend', handleTouchEnd);
|
|
44
|
+
}, style: style }, actionEl));
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/SplitView/SplitViewSash/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "SplitViewSash": "_SplitViewSash_tds51_1", "SplitViewSash--dragging": "_SplitViewSash--dragging_tds51_15", "SplitViewSash__content": "_SplitViewSash__content_tds51_19", "SplitViewSash--no-resize": "_SplitViewSash--no-resize_tds51_24", "SplitViewSash--vertical": "_SplitViewSash--vertical_tds51_28", "SplitViewSash--horizontal": "_SplitViewSash--horizontal_tds51_32", "SplitViewSash__content__button": "_SplitViewSash__content__button_tds51_46" }
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { SashAction } from './SplitViewSash';
|
|
3
|
+
declare type SplitViewProps = {
|
|
4
|
+
children: JSX.Element[];
|
|
5
|
+
allowResize?: boolean;
|
|
6
|
+
split?: 'vertical' | 'horizontal';
|
|
7
|
+
sizes: (string | number)[];
|
|
8
|
+
onChange: (sizes: number[]) => void;
|
|
9
|
+
onDragStart?: () => void;
|
|
10
|
+
onDragEnd?: () => void;
|
|
11
|
+
performanceMode?: boolean;
|
|
12
|
+
resizerSize?: number;
|
|
13
|
+
sashAction?: SashAction;
|
|
14
|
+
};
|
|
15
|
+
export declare const SplitView: ({ children, sizes: propSizes, allowResize, split, resizerSize, performanceMode, onChange, onDragStart, onDragEnd, sashAction, }: SplitViewProps) => JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
13
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
14
|
+
if (ar || !(i in from)) {
|
|
15
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
16
|
+
ar[i] = from[i];
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
20
|
+
};
|
|
21
|
+
import classNames from 'classnames';
|
|
22
|
+
import React, { useCallback, useEffect, useMemo, useRef, useState, } from 'react';
|
|
23
|
+
import { SplitViewPane } from './SplitViewPane';
|
|
24
|
+
import { SplitViewSash } from './SplitViewSash';
|
|
25
|
+
import s from './styles.module.css.json';
|
|
26
|
+
export var SplitView = function (_a) {
|
|
27
|
+
var children = _a.children, propSizes = _a.sizes, _b = _a.allowResize, allowResize = _b === void 0 ? true : _b, _c = _a.split, split = _c === void 0 ? 'vertical' : _c, _d = _a.resizerSize, resizerSize = _d === void 0 ? 10 : _d, _e = _a.performanceMode, performanceMode = _e === void 0 ? false : _e, _f = _a.onChange, onChange = _f === void 0 ? function () { return null; } : _f, _g = _a.onDragStart, onDragStart = _g === void 0 ? function () { return null; } : _g, _h = _a.onDragEnd, onDragEnd = _h === void 0 ? function () { return null; } : _h, sashAction = _a.sashAction;
|
|
28
|
+
var axis = useRef({ x: 0, y: 0 });
|
|
29
|
+
var wrapper = useRef(null);
|
|
30
|
+
var cacheSizes = useRef({ sizes: [], sashPosSizes: [] });
|
|
31
|
+
var _j = useState(undefined), wrapperRect = _j[0], setWrapperRect = _j[1];
|
|
32
|
+
var _k = useState(false), isDragging = _k[0], setDragging = _k[1];
|
|
33
|
+
useEffect(function () {
|
|
34
|
+
var resizeObserver = new ResizeObserver(function () {
|
|
35
|
+
if (wrapper === null || wrapper === void 0 ? void 0 : wrapper.current) {
|
|
36
|
+
setWrapperRect(wrapper.current.getBoundingClientRect());
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
resizeObserver.observe(wrapper.current);
|
|
40
|
+
return function () {
|
|
41
|
+
resizeObserver.disconnect();
|
|
42
|
+
};
|
|
43
|
+
}, []);
|
|
44
|
+
var _l = useMemo(function () { return ({
|
|
45
|
+
sizeName: split === 'vertical' ? 'width' : 'height',
|
|
46
|
+
splitPos: split === 'vertical' ? 'left' : 'top',
|
|
47
|
+
splitAxis: split === 'vertical' ? 'x' : 'y',
|
|
48
|
+
}); }, [split]), sizeName = _l.sizeName, splitPos = _l.splitPos, splitAxis = _l.splitAxis;
|
|
49
|
+
var wrapSize = wrapperRect ? wrapperRect[sizeName] : 0;
|
|
50
|
+
// Get limit sizes via children
|
|
51
|
+
var paneLimitSizes = useMemo(function () {
|
|
52
|
+
return children.map(function (childNode) {
|
|
53
|
+
var limits = [0, Infinity];
|
|
54
|
+
if (childNode.type === SplitViewPane) {
|
|
55
|
+
var _a = childNode.props, minSize = _a.minSize, maxSize = _a.maxSize;
|
|
56
|
+
limits[0] = assertSize(minSize, wrapSize, 0);
|
|
57
|
+
limits[1] = assertSize(maxSize, wrapSize);
|
|
58
|
+
}
|
|
59
|
+
return limits;
|
|
60
|
+
});
|
|
61
|
+
}, [children, wrapSize]);
|
|
62
|
+
var sizes = useMemo(function () {
|
|
63
|
+
var count = 0;
|
|
64
|
+
var curSum = 0;
|
|
65
|
+
var res = children.map(function (_child, index) {
|
|
66
|
+
var size = clampSize(assertSize(propSizes[index], wrapSize), paneLimitSizes[index]);
|
|
67
|
+
if (size === Infinity) {
|
|
68
|
+
count = count + 1;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
curSum = curSum + size;
|
|
72
|
+
}
|
|
73
|
+
return size;
|
|
74
|
+
});
|
|
75
|
+
// resize or illegal size input,recalculate pane sizes
|
|
76
|
+
if (curSum > wrapSize || (!count && curSum < wrapSize)) {
|
|
77
|
+
var cacheNum_1 = (curSum - wrapSize) / curSum;
|
|
78
|
+
return res.map(function (size) {
|
|
79
|
+
return size === Infinity ? 0 : size - size * cacheNum_1;
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
if (count > 0) {
|
|
83
|
+
var average_1 = (wrapSize - curSum) / count;
|
|
84
|
+
return res.map(function (size) {
|
|
85
|
+
return size === Infinity ? average_1 : size;
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
return res;
|
|
89
|
+
}, [
|
|
90
|
+
JSON.stringify(propSizes),
|
|
91
|
+
JSON.stringify(paneLimitSizes),
|
|
92
|
+
children.length,
|
|
93
|
+
wrapSize,
|
|
94
|
+
]);
|
|
95
|
+
var sashPosSizes = useMemo(function () { return sizes.reduce(function (a, b) { return __spreadArray(__spreadArray([], a, true), [a[a.length - 1] + b], false); }, [0]); }, [JSON.stringify(sizes)]);
|
|
96
|
+
var handleMouseDown = useCallback(function (x, y) {
|
|
97
|
+
var _a, _b;
|
|
98
|
+
(_b = (_a = document === null || document === void 0 ? void 0 : document.body) === null || _a === void 0 ? void 0 : _a.classList) === null || _b === void 0 ? void 0 : _b.add(s['SplitView--disable-select']);
|
|
99
|
+
axis.current = { x: x, y: y };
|
|
100
|
+
cacheSizes.current = { sizes: sizes, sashPosSizes: sashPosSizes };
|
|
101
|
+
setDragging(true);
|
|
102
|
+
onDragStart();
|
|
103
|
+
}, [onDragStart, sizes, sashPosSizes]);
|
|
104
|
+
var handleMouseUp = useCallback(function () {
|
|
105
|
+
var _a, _b;
|
|
106
|
+
(_b = (_a = document === null || document === void 0 ? void 0 : document.body) === null || _a === void 0 ? void 0 : _a.classList) === null || _b === void 0 ? void 0 : _b.remove(s['SplitView--disable-select']);
|
|
107
|
+
setDragging(false);
|
|
108
|
+
onDragEnd();
|
|
109
|
+
}, [onDragEnd]);
|
|
110
|
+
var handleMouseMove = useCallback(function (x, y, i) {
|
|
111
|
+
var curAxis = { x: x, y: y };
|
|
112
|
+
var distanceX = curAxis[splitAxis] - axis.current[splitAxis];
|
|
113
|
+
var leftBorder = -Math.min(sizes[i] - paneLimitSizes[i][0], paneLimitSizes[i + 1][1] - sizes[i + 1]);
|
|
114
|
+
var rightBorder = Math.min(sizes[i + 1] - paneLimitSizes[i + 1][0], paneLimitSizes[i][1] - sizes[i]);
|
|
115
|
+
if (distanceX < leftBorder) {
|
|
116
|
+
distanceX = leftBorder;
|
|
117
|
+
}
|
|
118
|
+
if (distanceX > rightBorder) {
|
|
119
|
+
distanceX = rightBorder;
|
|
120
|
+
}
|
|
121
|
+
var nextSizes = __spreadArray([], sizes, true);
|
|
122
|
+
nextSizes[i] += distanceX;
|
|
123
|
+
nextSizes[i + 1] -= distanceX;
|
|
124
|
+
onChange(nextSizes);
|
|
125
|
+
}, [paneLimitSizes, onChange]);
|
|
126
|
+
var paneFollow = !(performanceMode && isDragging);
|
|
127
|
+
var paneSizes = paneFollow ? sizes : cacheSizes.current.sizes;
|
|
128
|
+
var panePoses = paneFollow ? sashPosSizes : cacheSizes.current.sashPosSizes;
|
|
129
|
+
return (React.createElement("div", { className: classNames(s.SplitView, split === 'vertical' && s['SplitView--vertical'], split === 'horizontal' && s['SplitView--horizontal'], isDragging && s['SplitView--dragging']), ref: wrapper },
|
|
130
|
+
children.map(function (childNode, childIndex) {
|
|
131
|
+
var _a;
|
|
132
|
+
var isPane = childNode.type === SplitViewPane;
|
|
133
|
+
var paneProps = isPane ? childNode.props : {};
|
|
134
|
+
return (React.createElement(SplitViewPane
|
|
135
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
|
|
136
|
+
, {
|
|
137
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
|
|
138
|
+
key: childIndex, style: __assign(__assign({}, paneProps.style), (_a = {}, _a[sizeName] = paneSizes[childIndex], _a[splitPos] = panePoses[childIndex], _a)) }, isPane ? paneProps.children : childNode));
|
|
139
|
+
}),
|
|
140
|
+
sashPosSizes.slice(1, -1).map(function (posSize, index) {
|
|
141
|
+
var _a;
|
|
142
|
+
return (React.createElement(SplitViewSash
|
|
143
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
|
|
144
|
+
, {
|
|
145
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
|
|
146
|
+
key: index, allowResize: allowResize, split: split, style: (_a = {},
|
|
147
|
+
_a[sizeName] = resizerSize,
|
|
148
|
+
_a[splitPos] = posSize - resizerSize / 2,
|
|
149
|
+
_a), onMouseDown: handleMouseDown, onMouseMove: function (x, y) { return handleMouseMove(x, y, index); }, onMouseUp: handleMouseUp, action: sashAction }));
|
|
150
|
+
})));
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* Convert size to absolute number or Infinity
|
|
154
|
+
* SplitPane allows sizes in string and number, but the state sizes only support number,
|
|
155
|
+
* so convert string and number to number in here
|
|
156
|
+
* 'auto' -> divide the remaining space equally
|
|
157
|
+
* 'xxxpx' -> xxx
|
|
158
|
+
* 'xxx%' -> wrapper.size * xxx/100
|
|
159
|
+
* xxx -> xxx
|
|
160
|
+
*/
|
|
161
|
+
function assertSize(size, sum, defaultValue) {
|
|
162
|
+
if (defaultValue === void 0) { defaultValue = Infinity; }
|
|
163
|
+
if (typeof size === 'undefined')
|
|
164
|
+
return defaultValue;
|
|
165
|
+
if (typeof size === 'number')
|
|
166
|
+
return size;
|
|
167
|
+
if (size.endsWith('%'))
|
|
168
|
+
return sum * (+size.replace('%', '') / 100);
|
|
169
|
+
if (size.endsWith('px'))
|
|
170
|
+
return +size.replace('px', '');
|
|
171
|
+
return defaultValue;
|
|
172
|
+
}
|
|
173
|
+
function clampSize(size, minMax) {
|
|
174
|
+
return Math.max(minMax[0], Math.min(minMax[1], size));
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/SplitView/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "SplitView": "_SplitView_1oi17_1", "SplitView--dragging": "_SplitView--dragging_1oi17_8", "SplitView--vertical": "_SplitView--vertical_1oi17_8", "SplitView--horizontal": "_SplitView--horizontal_1oi17_12", "SplitView--disable-select": "_SplitView--disable-select_1oi17_16", "SplitViewPane": "_SplitViewPane_1oi17_20" }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/SplitView/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { TooltipOptions } from '../utils';
|
|
3
|
+
export declare type TooltipProps = {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
} & TooltipOptions;
|
|
6
|
+
/**
|
|
7
|
+
* Tooltip wrapper component that provides context for TooltipTrigger and TooltipContent.
|
|
8
|
+
*
|
|
9
|
+
* This is a compound component pattern. The Tooltip component itself doesn't render anything,
|
|
10
|
+
* but provides the necessary context for its children (TooltipTrigger and TooltipContent).
|
|
11
|
+
*
|
|
12
|
+
* @example Basic tooltip
|
|
13
|
+
*
|
|
14
|
+
* Create a simple tooltip that appears when hovering over a button:
|
|
15
|
+
*
|
|
16
|
+
* ```js
|
|
17
|
+
* <Canvas ctx={ctx}>
|
|
18
|
+
* <Tooltip>
|
|
19
|
+
* <TooltipTrigger>
|
|
20
|
+
* <Button>Hover me</Button>
|
|
21
|
+
* </TooltipTrigger>
|
|
22
|
+
* <TooltipContent>
|
|
23
|
+
* This is helpful information!
|
|
24
|
+
* </TooltipContent>
|
|
25
|
+
* </Tooltip>
|
|
26
|
+
* </Canvas>;
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @example Tooltip with custom placement
|
|
30
|
+
*
|
|
31
|
+
* Control where the tooltip appears relative to its trigger using the `placement` prop:
|
|
32
|
+
*
|
|
33
|
+
* ```js
|
|
34
|
+
* <Canvas ctx={ctx}>
|
|
35
|
+
* <Tooltip placement="right">
|
|
36
|
+
* <TooltipTrigger>
|
|
37
|
+
* <Button>Right tooltip</Button>
|
|
38
|
+
* </TooltipTrigger>
|
|
39
|
+
* <TooltipContent>
|
|
40
|
+
* Appears on the right side
|
|
41
|
+
* </TooltipContent>
|
|
42
|
+
* </Tooltip>
|
|
43
|
+
* </Canvas>;
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @example Multiple tooltips
|
|
47
|
+
*
|
|
48
|
+
* Use multiple tooltips on the same page to provide contextual help for different actions:
|
|
49
|
+
*
|
|
50
|
+
* ```js
|
|
51
|
+
* <Canvas ctx={ctx}>
|
|
52
|
+
* <div style={{ display: 'flex', gap: 'var(--spacing-m)' }}>
|
|
53
|
+
* <Tooltip>
|
|
54
|
+
* <TooltipTrigger>
|
|
55
|
+
* <Button leftIcon={<SaveIcon />} />
|
|
56
|
+
* </TooltipTrigger>
|
|
57
|
+
* <TooltipContent>
|
|
58
|
+
* Save changes (⌘S)
|
|
59
|
+
* </TooltipContent>
|
|
60
|
+
* </Tooltip>
|
|
61
|
+
*
|
|
62
|
+
* <Tooltip>
|
|
63
|
+
* <TooltipTrigger>
|
|
64
|
+
* <Button leftIcon={<DeleteIcon />} />
|
|
65
|
+
* </TooltipTrigger>
|
|
66
|
+
* <TooltipContent>
|
|
67
|
+
* Delete item
|
|
68
|
+
* </TooltipContent>
|
|
69
|
+
* </Tooltip>
|
|
70
|
+
* </div>
|
|
71
|
+
* </Canvas>;
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare function Tooltip({ children, ...options }: TooltipProps): JSX.Element;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import * as React from 'react';
|
|
13
|
+
import { TooltipContext, useTooltip } from '../utils';
|
|
14
|
+
/**
|
|
15
|
+
* Tooltip wrapper component that provides context for TooltipTrigger and TooltipContent.
|
|
16
|
+
*
|
|
17
|
+
* This is a compound component pattern. The Tooltip component itself doesn't render anything,
|
|
18
|
+
* but provides the necessary context for its children (TooltipTrigger and TooltipContent).
|
|
19
|
+
*
|
|
20
|
+
* @example Basic tooltip
|
|
21
|
+
*
|
|
22
|
+
* Create a simple tooltip that appears when hovering over a button:
|
|
23
|
+
*
|
|
24
|
+
* ```js
|
|
25
|
+
* <Canvas ctx={ctx}>
|
|
26
|
+
* <Tooltip>
|
|
27
|
+
* <TooltipTrigger>
|
|
28
|
+
* <Button>Hover me</Button>
|
|
29
|
+
* </TooltipTrigger>
|
|
30
|
+
* <TooltipContent>
|
|
31
|
+
* This is helpful information!
|
|
32
|
+
* </TooltipContent>
|
|
33
|
+
* </Tooltip>
|
|
34
|
+
* </Canvas>;
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* @example Tooltip with custom placement
|
|
38
|
+
*
|
|
39
|
+
* Control where the tooltip appears relative to its trigger using the `placement` prop:
|
|
40
|
+
*
|
|
41
|
+
* ```js
|
|
42
|
+
* <Canvas ctx={ctx}>
|
|
43
|
+
* <Tooltip placement="right">
|
|
44
|
+
* <TooltipTrigger>
|
|
45
|
+
* <Button>Right tooltip</Button>
|
|
46
|
+
* </TooltipTrigger>
|
|
47
|
+
* <TooltipContent>
|
|
48
|
+
* Appears on the right side
|
|
49
|
+
* </TooltipContent>
|
|
50
|
+
* </Tooltip>
|
|
51
|
+
* </Canvas>;
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* @example Multiple tooltips
|
|
55
|
+
*
|
|
56
|
+
* Use multiple tooltips on the same page to provide contextual help for different actions:
|
|
57
|
+
*
|
|
58
|
+
* ```js
|
|
59
|
+
* <Canvas ctx={ctx}>
|
|
60
|
+
* <div style={{ display: 'flex', gap: 'var(--spacing-m)' }}>
|
|
61
|
+
* <Tooltip>
|
|
62
|
+
* <TooltipTrigger>
|
|
63
|
+
* <Button leftIcon={<SaveIcon />} />
|
|
64
|
+
* </TooltipTrigger>
|
|
65
|
+
* <TooltipContent>
|
|
66
|
+
* Save changes (⌘S)
|
|
67
|
+
* </TooltipContent>
|
|
68
|
+
* </Tooltip>
|
|
69
|
+
*
|
|
70
|
+
* <Tooltip>
|
|
71
|
+
* <TooltipTrigger>
|
|
72
|
+
* <Button leftIcon={<DeleteIcon />} />
|
|
73
|
+
* </TooltipTrigger>
|
|
74
|
+
* <TooltipContent>
|
|
75
|
+
* Delete item
|
|
76
|
+
* </TooltipContent>
|
|
77
|
+
* </Tooltip>
|
|
78
|
+
* </div>
|
|
79
|
+
* </Canvas>;
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
export function Tooltip(_a) {
|
|
83
|
+
var children = _a.children, options = __rest(_a, ["children"]);
|
|
84
|
+
// This can accept any props as options, e.g. `placement`,
|
|
85
|
+
// or other positioning options.
|
|
86
|
+
var tooltip = useTooltip(options);
|
|
87
|
+
return (React.createElement(TooltipContext.Provider, { value: tooltip }, children));
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Tooltip/Tooltip/index.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAkB,UAAU,EAAE,MAAM,UAAU,CAAC;AAMtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,MAAM,UAAU,OAAO,CAAC,EAAsC;IAApC,IAAA,QAAQ,cAAA,EAAK,OAAO,cAAtB,YAAwB,CAAF;IAC5C,0DAA0D;IAC1D,gCAAgC;IAChC,IAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,OAAO,CACL,oBAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,IACpC,QAAQ,CACe,CAC3B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export declare type TooltipContentProps = {
|
|
3
|
+
children?: React.ReactNode;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* TooltipContent contains the content displayed in the floating tooltip.
|
|
7
|
+
*
|
|
8
|
+
* The content is automatically wrapped in a Canvas component to inherit the DatoCMS
|
|
9
|
+
* theme and styling. The tooltip uses a portal to render outside the normal DOM
|
|
10
|
+
* hierarchy, ensuring proper positioning and z-index stacking.
|
|
11
|
+
*
|
|
12
|
+
* @example Simple text tooltip
|
|
13
|
+
*
|
|
14
|
+
* Display plain text in a tooltip to provide helpful information:
|
|
15
|
+
*
|
|
16
|
+
* ```js
|
|
17
|
+
* <Canvas ctx={ctx}>
|
|
18
|
+
* <Tooltip>
|
|
19
|
+
* <TooltipTrigger>
|
|
20
|
+
* <Button>Delete</Button>
|
|
21
|
+
* </TooltipTrigger>
|
|
22
|
+
* <TooltipContent>
|
|
23
|
+
* This action cannot be undone
|
|
24
|
+
* </TooltipContent>
|
|
25
|
+
* </Tooltip>
|
|
26
|
+
* </Canvas>;
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @example Rich content tooltip
|
|
30
|
+
*
|
|
31
|
+
* Include formatted content with custom styles for more detailed information:
|
|
32
|
+
*
|
|
33
|
+
* ```js
|
|
34
|
+
* <Canvas ctx={ctx}>
|
|
35
|
+
* <Tooltip placement="right">
|
|
36
|
+
* <TooltipTrigger>
|
|
37
|
+
* <Button leftIcon={<HelpIcon />}>Help</Button>
|
|
38
|
+
* </TooltipTrigger>
|
|
39
|
+
* <TooltipContent>
|
|
40
|
+
* <div>
|
|
41
|
+
* <strong>Need assistance?</strong>
|
|
42
|
+
* <p style={{ margin: '5px 0 0 0', fontSize: 'var(--font-size-xs)' }}>
|
|
43
|
+
* Contact support@example.com
|
|
44
|
+
* </p>
|
|
45
|
+
* </div>
|
|
46
|
+
* </TooltipContent>
|
|
47
|
+
* </Tooltip>
|
|
48
|
+
* </Canvas>;
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @example Tooltip with keyboard shortcut
|
|
52
|
+
*
|
|
53
|
+
* Combine tooltips with the HotKey component to show keyboard shortcuts:
|
|
54
|
+
*
|
|
55
|
+
* ```js
|
|
56
|
+
* <Canvas ctx={ctx}>
|
|
57
|
+
* <Tooltip>
|
|
58
|
+
* <TooltipTrigger>
|
|
59
|
+
* <Button leftIcon={<SaveIcon />}>Save</Button>
|
|
60
|
+
* </TooltipTrigger>
|
|
61
|
+
* <TooltipContent>
|
|
62
|
+
* <HotKey hotkey="mod+s" label="Save changes" />
|
|
63
|
+
* </TooltipContent>
|
|
64
|
+
* </Tooltip>
|
|
65
|
+
* </Canvas>;
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export declare const TooltipContent: React.ForwardRefExoticComponent<TooltipContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import { FloatingPortal, useDelayGroup, useDelayGroupContext, useMergeRefs, useTransitionStyles, } from '@floating-ui/react';
|
|
13
|
+
import * as React from 'react';
|
|
14
|
+
import { Canvas, useCtx } from '../../Canvas';
|
|
15
|
+
import { getSharedPortalRoot, releaseSharedPortalRoot, useTooltipState, } from '../utils';
|
|
16
|
+
import s from './styles.module.css.json';
|
|
17
|
+
/**
|
|
18
|
+
* TooltipContent contains the content displayed in the floating tooltip.
|
|
19
|
+
*
|
|
20
|
+
* The content is automatically wrapped in a Canvas component to inherit the DatoCMS
|
|
21
|
+
* theme and styling. The tooltip uses a portal to render outside the normal DOM
|
|
22
|
+
* hierarchy, ensuring proper positioning and z-index stacking.
|
|
23
|
+
*
|
|
24
|
+
* @example Simple text tooltip
|
|
25
|
+
*
|
|
26
|
+
* Display plain text in a tooltip to provide helpful information:
|
|
27
|
+
*
|
|
28
|
+
* ```js
|
|
29
|
+
* <Canvas ctx={ctx}>
|
|
30
|
+
* <Tooltip>
|
|
31
|
+
* <TooltipTrigger>
|
|
32
|
+
* <Button>Delete</Button>
|
|
33
|
+
* </TooltipTrigger>
|
|
34
|
+
* <TooltipContent>
|
|
35
|
+
* This action cannot be undone
|
|
36
|
+
* </TooltipContent>
|
|
37
|
+
* </Tooltip>
|
|
38
|
+
* </Canvas>;
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @example Rich content tooltip
|
|
42
|
+
*
|
|
43
|
+
* Include formatted content with custom styles for more detailed information:
|
|
44
|
+
*
|
|
45
|
+
* ```js
|
|
46
|
+
* <Canvas ctx={ctx}>
|
|
47
|
+
* <Tooltip placement="right">
|
|
48
|
+
* <TooltipTrigger>
|
|
49
|
+
* <Button leftIcon={<HelpIcon />}>Help</Button>
|
|
50
|
+
* </TooltipTrigger>
|
|
51
|
+
* <TooltipContent>
|
|
52
|
+
* <div>
|
|
53
|
+
* <strong>Need assistance?</strong>
|
|
54
|
+
* <p style={{ margin: '5px 0 0 0', fontSize: 'var(--font-size-xs)' }}>
|
|
55
|
+
* Contact support@example.com
|
|
56
|
+
* </p>
|
|
57
|
+
* </div>
|
|
58
|
+
* </TooltipContent>
|
|
59
|
+
* </Tooltip>
|
|
60
|
+
* </Canvas>;
|
|
61
|
+
* ```
|
|
62
|
+
*
|
|
63
|
+
* @example Tooltip with keyboard shortcut
|
|
64
|
+
*
|
|
65
|
+
* Combine tooltips with the HotKey component to show keyboard shortcuts:
|
|
66
|
+
*
|
|
67
|
+
* ```js
|
|
68
|
+
* <Canvas ctx={ctx}>
|
|
69
|
+
* <Tooltip>
|
|
70
|
+
* <TooltipTrigger>
|
|
71
|
+
* <Button leftIcon={<SaveIcon />}>Save</Button>
|
|
72
|
+
* </TooltipTrigger>
|
|
73
|
+
* <TooltipContent>
|
|
74
|
+
* <HotKey hotkey="mod+s" label="Save changes" />
|
|
75
|
+
* </TooltipContent>
|
|
76
|
+
* </Tooltip>
|
|
77
|
+
* </Canvas>;
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export var TooltipContent = React.forwardRef(function TooltipContent(_a, propRef) {
|
|
81
|
+
var children = _a.children;
|
|
82
|
+
var ctx = useCtx();
|
|
83
|
+
var state = useTooltipState();
|
|
84
|
+
var _b = useDelayGroupContext(), isInstantPhase = _b.isInstantPhase, currentId = _b.currentId;
|
|
85
|
+
var ref = useMergeRefs([state.refs.setFloating, propRef]);
|
|
86
|
+
// Use the shared portal root
|
|
87
|
+
var portalRootRef = React.useRef(null);
|
|
88
|
+
React.useEffect(function () {
|
|
89
|
+
// Get the shared portal root and increment ref count
|
|
90
|
+
portalRootRef.current = getSharedPortalRoot();
|
|
91
|
+
// Cleanup function to release the shared portal root
|
|
92
|
+
return function () {
|
|
93
|
+
releaseSharedPortalRoot();
|
|
94
|
+
};
|
|
95
|
+
}, []);
|
|
96
|
+
useDelayGroup(state.context, { id: state.context.floatingId });
|
|
97
|
+
var instantDuration = 0;
|
|
98
|
+
var duration = 250;
|
|
99
|
+
var _c = useTransitionStyles(state.context, {
|
|
100
|
+
duration: isInstantPhase
|
|
101
|
+
? {
|
|
102
|
+
open: instantDuration,
|
|
103
|
+
// `id` is this component's `id`
|
|
104
|
+
// `currentId` is the current group's `id`
|
|
105
|
+
close: currentId === state.context.floatingId ? duration : instantDuration,
|
|
106
|
+
}
|
|
107
|
+
: duration,
|
|
108
|
+
initial: {
|
|
109
|
+
opacity: 0,
|
|
110
|
+
},
|
|
111
|
+
}), isMounted = _c.isMounted, styles = _c.styles;
|
|
112
|
+
if (!isMounted)
|
|
113
|
+
return null;
|
|
114
|
+
return (React.createElement(FloatingPortal, { root: portalRootRef },
|
|
115
|
+
React.createElement(Canvas, { ctx: ctx, noAutoResizer: true },
|
|
116
|
+
React.createElement("div", __assign({ ref: ref, style: __assign(__assign({}, state.floatingStyles), styles) }, state.getFloatingProps(), { className: s.tooltip }), children))));
|
|
117
|
+
});
|
|
118
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Tooltip/TooltipContent/index.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,eAAe,GAChB,MAAM,UAAU,CAAC;AAClB,OAAO,CAAC,MAAM,0BAA0B,CAAC;AAMzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,MAAM,CAAC,IAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAG5C,SAAS,cAAc,CAAC,EAAY,EAAE,OAAO;QAAnB,QAAQ,cAAA;IAClC,IAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IACrB,IAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAC1B,IAAA,KAAgC,oBAAoB,EAAE,EAApD,cAAc,oBAAA,EAAE,SAAS,eAA2B,CAAC;IAC7D,IAAM,GAAG,GAAG,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAE5D,6BAA6B;IAC7B,IAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEhE,KAAK,CAAC,SAAS,CAAC;QACd,qDAAqD;QACrD,aAAa,CAAC,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAE9C,qDAAqD;QACrD,OAAO;YACL,uBAAuB,EAAE,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAE/D,IAAM,eAAe,GAAG,CAAC,CAAC;IAC1B,IAAM,QAAQ,GAAG,GAAG,CAAC;IAEf,IAAA,KAAwB,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE;QAC/D,QAAQ,EAAE,cAAc;YACtB,CAAC,CAAC;gBACE,IAAI,EAAE,eAAe;gBACrB,gCAAgC;gBAChC,0CAA0C;gBAC1C,KAAK,EACH,SAAS,KAAK,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe;aACtE;YACH,CAAC,CAAC,QAAQ;QACZ,OAAO,EAAE;YACP,OAAO,EAAE,CAAC;SACX;KACF,CAAC,EAbM,SAAS,eAAA,EAAE,MAAM,YAavB,CAAC;IAEH,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,OAAO,CACL,oBAAC,cAAc,IAAC,IAAI,EAAE,aAAa;QACjC,oBAAC,MAAM,IAAC,GAAG,EAAE,GAAG,EAAE,aAAa;YAC7B,sCACE,GAAG,EAAE,GAAG,EACR,KAAK,wBACA,KAAK,CAAC,cAAc,GACpB,MAAM,KAEP,KAAK,CAAC,gBAAgB,EAAE,IAC5B,SAAS,EAAE,CAAC,CAAC,OAAO,KAEnB,QAAQ,CACL,CACC,CACM,CAClB,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "tooltip": "_tooltip_3z5rn_1" }
|