@darajs/ui-components 1.16.14 → 1.16.16
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/numeric-input/numeric-input.d.ts.map +1 -1
- package/dist/numeric-input/numeric-input.js +19 -12
- package/dist/numeric-input/numeric-input.js.map +1 -1
- package/dist/slider/{slider-inputs.d.ts → slider-input-field.d.ts} +6 -12
- package/dist/slider/slider-input-field.d.ts.map +1 -0
- package/dist/slider/slider-input-field.js +58 -0
- package/dist/slider/slider-input-field.js.map +1 -0
- package/dist/slider/slider.d.ts +2 -0
- package/dist/slider/slider.d.ts.map +1 -1
- package/dist/slider/slider.js +208 -101
- package/dist/slider/slider.js.map +1 -1
- package/dist/tooltip/tooltip.d.ts +1 -2
- package/dist/tooltip/tooltip.d.ts.map +1 -1
- package/dist/tooltip/tooltip.js +96 -93
- package/dist/tooltip/tooltip.js.map +1 -1
- package/package.json +12 -12
- package/dist/slider/slider-inputs.d.ts.map +0 -1
- package/dist/slider/slider-inputs.js +0 -88
- package/dist/slider/slider-inputs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"numeric-input.d.ts","sourceRoot":"","sources":["../../src/numeric-input/numeric-input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAwHrD,MAAM,WAAW,iBACb,SAAQ,yBAAyB,CAAC,MAAM,CAAC,EAErC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,cAAc,CAAC;IAC5F,mEAAmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/F,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"numeric-input.d.ts","sourceRoot":"","sources":["../../src/numeric-input/numeric-input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAwHrD,MAAM,WAAW,iBACb,SAAQ,yBAAyB,CAAC,MAAM,CAAC,EAErC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,cAAc,CAAC;IAC5F,mEAAmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/F,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,QAAA,MAAM,YAAY,4FA6HjB,CAAC;AAGF,eAAe,YAAY,CAAC"}
|
|
@@ -148,21 +148,28 @@ const getInitialValue = (value, initialValue) => {
|
|
|
148
148
|
const NumericInput = React.forwardRef((_a, ref) => {
|
|
149
149
|
var { value, onChange, initialValue } = _a, props = __rest(_a, ["value", "onChange", "initialValue"]);
|
|
150
150
|
const keydownFilter = useMemo(() => numericFilter(props.integerOnly), [props.integerOnly]);
|
|
151
|
-
const [input, setInput] = useState(getInitialValue(value, initialValue));
|
|
151
|
+
const [input, setInput] = useState(() => getInitialValue(value, initialValue));
|
|
152
152
|
const step = (v) => {
|
|
153
|
+
var _a, _b;
|
|
154
|
+
let currentInput = input;
|
|
153
155
|
if (!input || input === '-') {
|
|
154
|
-
|
|
156
|
+
currentInput = props.minValue ? String(props.minValue) : '0';
|
|
157
|
+
}
|
|
158
|
+
const parsedValue = parseFloat(currentInput) || 0;
|
|
159
|
+
const nextValueNumber = parsedValue + v;
|
|
160
|
+
// Determine appropriate decimal places for formatting
|
|
161
|
+
let nextValueStr;
|
|
162
|
+
const inputHasDecimals = currentInput.includes('.');
|
|
163
|
+
const stepHasDecimals = v % 1 !== 0;
|
|
164
|
+
if (inputHasDecimals || stepHasDecimals) {
|
|
165
|
+
// Preserve reasonable precision
|
|
166
|
+
const inputDecimals = inputHasDecimals ? ((_a = currentInput.split('.')[1]) === null || _a === void 0 ? void 0 : _a.length) || 0 : 0;
|
|
167
|
+
const stepDecimals = stepHasDecimals ? ((_b = v.toString().split('.')[1]) === null || _b === void 0 ? void 0 : _b.length) || 0 : 0;
|
|
168
|
+
const maxDecimals = Math.max(inputDecimals, stepDecimals);
|
|
169
|
+
nextValueStr = nextValueNumber.toFixed(maxDecimals);
|
|
155
170
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
let nextValueNumber = parsedValue + v;
|
|
159
|
-
let nextValueStr = String(nextValueNumber);
|
|
160
|
-
if (isFloat) {
|
|
161
|
-
const decimals = input.split('.')[1];
|
|
162
|
-
if (decimals) {
|
|
163
|
-
nextValueStr = (parsedValue + v / Math.pow(10, decimals.length)).toFixed(decimals.length);
|
|
164
|
-
nextValueNumber = parseFloat(nextValueStr);
|
|
165
|
-
}
|
|
171
|
+
else {
|
|
172
|
+
nextValueStr = String(nextValueNumber);
|
|
166
173
|
}
|
|
167
174
|
// controlled
|
|
168
175
|
if (value !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"numeric-input.js","sourceRoot":"","sources":["../../src/numeric-input/numeric-input.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"numeric-input.js","sourceRoot":"","sources":["../../src/numeric-input/numeric-input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,21 +16,15 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { FunctionComponent } from 'react';
|
|
18
18
|
interface SliderInputsProps {
|
|
19
|
-
/** The domain defines the range of possible values that the slider can take */
|
|
20
|
-
domain: [number, number];
|
|
21
19
|
/** The error message callback for inputs when value is out of domain range */
|
|
22
|
-
getErrorMsg: (value: number, index: number) => string;
|
|
23
|
-
/**
|
|
24
|
-
|
|
25
|
-
/** Slider Values */
|
|
26
|
-
sliderValues: number[];
|
|
20
|
+
getErrorMsg: (value: number, index: number, currentValues: number[]) => string;
|
|
21
|
+
/** An optional set of labels to display for the thumbs */
|
|
22
|
+
thumbLabels?: string[];
|
|
27
23
|
}
|
|
28
24
|
/**
|
|
29
25
|
* The SliderInputs component displays the actual input values of the slider in a horizontal scrollable view
|
|
30
26
|
* that can be edited and have the changes reflected on the slider.
|
|
31
|
-
*
|
|
32
|
-
* @param {SliderInputsProps} props - the props for the component
|
|
33
27
|
*/
|
|
34
|
-
declare const
|
|
35
|
-
export default
|
|
36
|
-
//# sourceMappingURL=slider-
|
|
28
|
+
declare const SliderInputField: FunctionComponent<SliderInputsProps>;
|
|
29
|
+
export default SliderInputField;
|
|
30
|
+
//# sourceMappingURL=slider-input-field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider-input-field.d.ts","sourceRoot":"","sources":["../../src/slider/slider-input-field.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,iBAAiB,EAAc,MAAM,OAAO,CAAC;AA6BtD,UAAU,iBAAiB;IACvB,8EAA8E;IAC9E,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IAC/E,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;GAGG;AACH,QAAA,MAAM,gBAAgB,EAAE,iBAAiB,CAAC,iBAAiB,CA6B1D,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright 2023 Impulse Innovations Limited
|
|
4
|
+
*
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
import { useContext } from 'react';
|
|
19
|
+
import { SliderStateContext } from 'react-aria-components';
|
|
20
|
+
import styled from '@darajs/styled-components';
|
|
21
|
+
import NumericInput from '../numeric-input/numeric-input';
|
|
22
|
+
const InputList = styled.div `
|
|
23
|
+
position: relative;
|
|
24
|
+
|
|
25
|
+
overflow-x: auto;
|
|
26
|
+
display: flex;
|
|
27
|
+
flex: 1;
|
|
28
|
+
gap: 0.25rem;
|
|
29
|
+
|
|
30
|
+
min-width: 0;
|
|
31
|
+
`;
|
|
32
|
+
const InputWrapper = styled.div `
|
|
33
|
+
display: flex;
|
|
34
|
+
flex-direction: column;
|
|
35
|
+
gap: 0.25rem;
|
|
36
|
+
`;
|
|
37
|
+
const InputLabel = styled.span `
|
|
38
|
+
font-size: 0.825rem;
|
|
39
|
+
color: ${(props) => props.theme.colors.grey4};
|
|
40
|
+
`;
|
|
41
|
+
/**
|
|
42
|
+
* The SliderInputs component displays the actual input values of the slider in a horizontal scrollable view
|
|
43
|
+
* that can be edited and have the changes reflected on the slider.
|
|
44
|
+
*/
|
|
45
|
+
const SliderInputField = ({ getErrorMsg, thumbLabels }) => {
|
|
46
|
+
const state = useContext(SliderStateContext);
|
|
47
|
+
if (!state) {
|
|
48
|
+
throw new Error('SliderStateContext is not available, SliderInputField must be used within a Slider component');
|
|
49
|
+
}
|
|
50
|
+
return (_jsx(InputList, { children: state.values.map((value, index) => {
|
|
51
|
+
var _a;
|
|
52
|
+
return (_jsxs(InputWrapper, { children: [_jsx(NumericInput, { errorMsg: getErrorMsg(value, index, state.values), onChange: (val) => {
|
|
53
|
+
state.setThumbValue(index, val);
|
|
54
|
+
}, value: value, stepper: true, stepSkip: state.step, minValue: state.getThumbMinValue(index), maxValue: state.getThumbMaxValue(index) }), _jsx(InputLabel, { children: (_a = thumbLabels === null || thumbLabels === void 0 ? void 0 : thumbLabels[index]) !== null && _a !== void 0 ? _a : `Thumb ${index + 1}` })] }, index));
|
|
55
|
+
}) }));
|
|
56
|
+
};
|
|
57
|
+
export default SliderInputField;
|
|
58
|
+
//# sourceMappingURL=slider-input-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider-input-field.js","sourceRoot":"","sources":["../../src/slider/slider-input-field.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAqB,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAE/C,OAAO,YAAY,MAAM,gCAAgC,CAAC;AAE1D,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;CAS3B,CAAC;AAEF,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA;;;;CAI9B,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAA;;aAEjB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;CAC/C,CAAC;AASF;;;GAGG;AACH,MAAM,gBAAgB,GAAyC,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,EAAe,EAAE;IACzG,MAAM,KAAK,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAE7C,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,8FAA8F,CAAC,CAAC;IACpH,CAAC;IAED,OAAO,CACH,KAAC,SAAS,cACL,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;;YAC/B,OAAO,CACH,MAAC,YAAY,eACT,KAAC,YAAY,IACT,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EACjD,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;4BACd,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;wBACpC,CAAC,EACD,KAAK,EAAE,KAAK,EACZ,OAAO,QACP,QAAQ,EAAE,KAAK,CAAC,IAAI,EACpB,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACvC,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,GACzC,EACF,KAAC,UAAU,cAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAG,KAAK,CAAC,mCAAI,SAAS,KAAK,GAAG,CAAC,EAAE,GAAc,KAZxD,KAAK,CAaT,CAClB,CAAC;QACN,CAAC,CAAC,GACM,CACf,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
package/dist/slider/slider.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ import { InteractiveComponentProps } from '../types';
|
|
|
6
6
|
*/
|
|
7
7
|
export declare function computeStep(difference: number): number;
|
|
8
8
|
export interface BaseSliderProps<T> extends InteractiveComponentProps<Array<number>> {
|
|
9
|
+
'aria-label'?: string;
|
|
10
|
+
thumbLabels?: string[];
|
|
9
11
|
/** An optional flag to disable the input alternative switch render, its false by default */
|
|
10
12
|
disableInputAlternative?: boolean;
|
|
11
13
|
/** The domain defines the range of possible values that the slider can take */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../src/slider/slider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../src/slider/slider.tsx"],"names":[],"mappings":"AA2BA,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAGrD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAYtD;AA0PD,MAAM,WAAW,eAAe,CAAC,CAAC,CAAE,SAAQ,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,4FAA4F;IAC5F,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,+EAA+E;IAC/E,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,sGAAsG;IACtG,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;IACrC,oGAAoG;IACpG,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC/B,mEAAmE;IACnE,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,wFAAwF;IACxF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yFAAyF;IACzF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kGAAkG;IAClG,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC1B;AA6PD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAElE;AAED,MAAM,WAAW,sBACb,SAAQ,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,yBAAyB,CAAC;IAC5F,gEAAgE;IAChE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB,qCAAqC;IACrC,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAChC;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,GAAG,CAAC,OAAO,CAe5E"}
|
package/dist/slider/slider.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* Copyright 2023 Impulse Innovations Limited
|
|
4
4
|
*
|
|
@@ -15,15 +15,16 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
|
+
import { ticks as d3Ticks } from 'd3-array';
|
|
18
19
|
import isEqual from 'lodash/isEqual';
|
|
19
20
|
import round from 'lodash/round';
|
|
20
21
|
import { Fragment, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
21
|
-
import {
|
|
22
|
+
import { Slider as AriaSlider, SliderThumb, SliderTrack } from 'react-aria-components';
|
|
22
23
|
import styled from '@darajs/styled-components';
|
|
23
24
|
import { SwapHorizontal } from '@darajs/ui-icons';
|
|
24
|
-
import
|
|
25
|
+
import Button from '../button/button';
|
|
25
26
|
import Tooltip from '../tooltip/tooltip';
|
|
26
|
-
import
|
|
27
|
+
import SliderInputField from './slider-input-field';
|
|
27
28
|
/**
|
|
28
29
|
* Compute what step should be used for the given domain difference
|
|
29
30
|
*
|
|
@@ -45,63 +46,85 @@ export function computeStep(difference) {
|
|
|
45
46
|
*
|
|
46
47
|
* @param value value to map
|
|
47
48
|
* @param step current step
|
|
49
|
+
* @param domain the domain of the slider
|
|
48
50
|
*/
|
|
49
|
-
function mapToClosestStep(value, step) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
const mappedRaw = Math.floor(stepsNumber) * step;
|
|
53
|
-
const fractionDigits = Math.abs(Math.floor(Math.log10(step)));
|
|
54
|
-
return parseFloat(mappedRaw.toFixed(fractionDigits));
|
|
51
|
+
function mapToClosestStep(value, step, domain) {
|
|
52
|
+
const stepsNumber = Math.round((value - domain[0]) / step);
|
|
53
|
+
return domain[0] + stepsNumber * step;
|
|
55
54
|
}
|
|
56
55
|
const SliderWrapper = styled.div `
|
|
57
56
|
display: flex;
|
|
58
57
|
width: 100%;
|
|
59
58
|
`;
|
|
60
59
|
const SliderInner = styled.div `
|
|
61
|
-
|
|
60
|
+
position: relative;
|
|
62
61
|
display: flex;
|
|
63
62
|
width: 100%;
|
|
63
|
+
min-width: 0;
|
|
64
64
|
`;
|
|
65
|
-
const StyledSlider = styled(
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
const StyledSlider = styled(AriaSlider) `
|
|
66
|
+
overflow: hidden;
|
|
68
67
|
display: inline-flex;
|
|
69
68
|
flex-direction: column;
|
|
70
69
|
justify-content: center;
|
|
71
70
|
|
|
71
|
+
width: 100%;
|
|
72
|
+
padding: 0 1rem;
|
|
73
|
+
`;
|
|
74
|
+
const StyledSliderTrack = styled(SliderTrack) `
|
|
75
|
+
cursor: pointer;
|
|
72
76
|
width: 100%;
|
|
73
77
|
height: 3rem;
|
|
74
|
-
|
|
78
|
+
|
|
79
|
+
&[data-focus-visible] {
|
|
80
|
+
outline: 2px solid ${(props) => props.theme.colors.primary};
|
|
81
|
+
outline-offset: 2px;
|
|
82
|
+
}
|
|
75
83
|
`;
|
|
76
84
|
const SliderRail = styled.div `
|
|
77
|
-
|
|
85
|
+
position: absolute;
|
|
86
|
+
top: 50%;
|
|
87
|
+
transform: translateY(-50%);
|
|
78
88
|
|
|
79
89
|
width: 100%;
|
|
80
90
|
height: 0.25rem;
|
|
81
|
-
padding: 0 0.3rem;
|
|
82
91
|
|
|
83
92
|
background-color: ${(props) => props.theme.colors.grey2};
|
|
84
93
|
border-radius: 0.125rem;
|
|
85
94
|
`;
|
|
86
|
-
const
|
|
95
|
+
const StyledSliderThumb = styled(SliderThumb) `
|
|
87
96
|
cursor: pointer;
|
|
88
97
|
|
|
89
98
|
position: absolute;
|
|
90
99
|
z-index: 2;
|
|
100
|
+
top: 50%;
|
|
91
101
|
|
|
92
102
|
width: 1rem;
|
|
93
103
|
height: 1rem;
|
|
94
|
-
margin-top: ${(props) => (props.hasTicks ? '-0.5rem' : '0')};
|
|
95
|
-
margin-left: -0.6rem;
|
|
96
104
|
|
|
97
105
|
background-color: ${(props) => props.theme.colors.primary};
|
|
98
106
|
border-radius: 50%;
|
|
107
|
+
|
|
108
|
+
&[data-focus-visible] {
|
|
109
|
+
outline: 2px solid ${(props) => props.theme.colors.primary};
|
|
110
|
+
outline-offset: 2px;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
&[data-disabled] {
|
|
114
|
+
cursor: not-allowed;
|
|
115
|
+
opacity: 0.5;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
&[data-dragging] {
|
|
119
|
+
background-color: ${(props) => props.theme.colors.primaryDown};
|
|
120
|
+
}
|
|
99
121
|
`;
|
|
100
|
-
const Track = styled.
|
|
122
|
+
const Track = styled.div `
|
|
101
123
|
position: absolute;
|
|
124
|
+
top: 50%;
|
|
125
|
+
transform: translateY(-50%);
|
|
102
126
|
|
|
103
127
|
height: 0.25rem;
|
|
104
|
-
margin-top: ${(props) => (props.hasTicks ? '-0.5rem' : '0')};
|
|
105
128
|
|
|
106
129
|
background-color: ${(props) => props.theme.colors.primary};
|
|
107
130
|
border-radius: 0.125rem;
|
|
@@ -109,28 +132,25 @@ const Track = styled.span `
|
|
|
109
132
|
const TrackLabel = styled.span `
|
|
110
133
|
position: absolute;
|
|
111
134
|
z-index: 1;
|
|
112
|
-
|
|
135
|
+
transform: translateX(-50%);
|
|
113
136
|
color: ${(props) => props.theme.colors.grey6};
|
|
114
137
|
`;
|
|
115
|
-
const LabelInner = styled.span `
|
|
116
|
-
margin-left: -50%;
|
|
117
|
-
line-height: 1.5rem;
|
|
118
|
-
`;
|
|
119
138
|
const SliderTicks = styled.div `
|
|
120
|
-
|
|
121
|
-
margin-top: 0.5rem;
|
|
139
|
+
overflow: hidden;
|
|
122
140
|
`;
|
|
123
141
|
const Tick = styled.span `
|
|
124
142
|
position: absolute;
|
|
143
|
+
top: 2.125rem;
|
|
125
144
|
font-size: 0.875rem;
|
|
126
145
|
color: ${(props) => props.theme.colors.grey6};
|
|
127
146
|
|
|
128
147
|
&${(props) => (props.showLine ? '' : ':not(:first-child):not(:last-child)')}::before {
|
|
129
148
|
content: '';
|
|
130
149
|
|
|
131
|
-
position:
|
|
150
|
+
position: fixed;
|
|
132
151
|
z-index: 1;
|
|
133
152
|
left: 50%;
|
|
153
|
+
transform: translateX(-50%);
|
|
134
154
|
|
|
135
155
|
display: block;
|
|
136
156
|
|
|
@@ -142,10 +162,17 @@ const Tick = styled.span `
|
|
|
142
162
|
border-radius: 50%;
|
|
143
163
|
}
|
|
144
164
|
`;
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
|
|
165
|
+
const SwapButton = styled(Button).attrs({ styling: 'plain' }) `
|
|
166
|
+
flex-shrink: 0;
|
|
167
|
+
|
|
168
|
+
width: min-content;
|
|
169
|
+
height: min-content;
|
|
148
170
|
margin-top: 0.3rem;
|
|
171
|
+
padding: 0 0.25rem;
|
|
172
|
+
|
|
173
|
+
svg {
|
|
174
|
+
cursor: pointer;
|
|
175
|
+
}
|
|
149
176
|
`;
|
|
150
177
|
/**
|
|
151
178
|
* Helper to get the transformation for the tick labels, has the affect to tuck in the start and end labels so they
|
|
@@ -156,23 +183,75 @@ const SwapButtonWrapper = styled.div `
|
|
|
156
183
|
*/
|
|
157
184
|
function getTickTransform(idx, length) {
|
|
158
185
|
if (idx === 0) {
|
|
159
|
-
return 'translateX(
|
|
186
|
+
return 'translateX(0.7rem)';
|
|
160
187
|
}
|
|
161
|
-
return idx === length - 1 ? 'translateX(-100%) translateX(0.7rem)' : 'translateX(-50%)';
|
|
188
|
+
return idx === length - 1 ? 'translateX(-100%) translateX(-0.7rem)' : 'translateX(-50%)';
|
|
162
189
|
}
|
|
163
190
|
/**
|
|
164
|
-
*
|
|
165
|
-
*
|
|
166
|
-
*
|
|
167
|
-
* step size and control the display of ticks respectively.
|
|
191
|
+
* Generate tick values.
|
|
192
|
+
* If ticks is a list of values, return those values and calculate the percent for each tick.
|
|
193
|
+
* If ticks is a number, first calculate interpolated ticks between the domain min/max.
|
|
168
194
|
*
|
|
169
|
-
*
|
|
170
|
-
*
|
|
171
|
-
|
|
195
|
+
* @param ticks - the number of ticks or an array of tick values
|
|
196
|
+
* @param domain - the domain of the slider
|
|
197
|
+
*/
|
|
198
|
+
function getTicks(ticks, domain) {
|
|
199
|
+
if (!ticks) {
|
|
200
|
+
return [];
|
|
201
|
+
}
|
|
202
|
+
const [min, max] = domain;
|
|
203
|
+
// tick values
|
|
204
|
+
const values = Array.isArray(ticks) ? ticks : d3Ticks(min, max, ticks);
|
|
205
|
+
return values.map((val) => ({ value: val, percent: ((val - min) / (max - min)) * 100 }));
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Correct the values to be within the domain and snap to the nearest step
|
|
172
209
|
*
|
|
173
|
-
* @param
|
|
210
|
+
* @param values - the values to correct
|
|
211
|
+
* @param domain - the domain of the slider
|
|
212
|
+
* @param step - the step of the slider
|
|
174
213
|
*/
|
|
175
|
-
function
|
|
214
|
+
function correctValues(values, domain, step) {
|
|
215
|
+
return values.map((value) => {
|
|
216
|
+
// First clamp to domain
|
|
217
|
+
const clampedValue = Math.max(domain[0], Math.min(domain[1], value));
|
|
218
|
+
// Then snap to nearest step
|
|
219
|
+
return mapToClosestStep(clampedValue, step, domain);
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Hook to handle value correction when domain/step changes.
|
|
224
|
+
*
|
|
225
|
+
* @param values - the values to correct
|
|
226
|
+
* @param domain - the domain of the slider
|
|
227
|
+
* @param step - the step of the slider
|
|
228
|
+
* @param onChange - the onChange handler
|
|
229
|
+
* @param getValueLabel - the getValueLabel handler
|
|
230
|
+
*/
|
|
231
|
+
function useValueCorrection(values, domain, step, onChange, getValueLabel) {
|
|
232
|
+
const previousConstraints = useRef({ domain, step });
|
|
233
|
+
useEffect(() => {
|
|
234
|
+
// Only correct values if constraints actually changed and we have controlled values
|
|
235
|
+
const constraintsChanged = !isEqual(previousConstraints.current.domain, domain) || previousConstraints.current.step !== step;
|
|
236
|
+
if (!constraintsChanged || !(values === null || values === void 0 ? void 0 : values.length) || !onChange) {
|
|
237
|
+
previousConstraints.current = { domain, step };
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
// Check if any values need correction
|
|
241
|
+
const correctedValues = correctValues(values, domain, step);
|
|
242
|
+
// Only fire onChange if values actually changed
|
|
243
|
+
if (!isEqual(values, correctedValues)) {
|
|
244
|
+
const formattedValues = correctedValues.map(getValueLabel);
|
|
245
|
+
onChange(formattedValues);
|
|
246
|
+
}
|
|
247
|
+
previousConstraints.current = { domain, step };
|
|
248
|
+
}, [domain, step, values, onChange, getValueLabel]);
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* The BaseSlider component forms the basis for the other sliders. It wraps the react-aria-components library
|
|
252
|
+
* and adds a simple UI to the component, with support for multiple handle sliders.
|
|
253
|
+
*/
|
|
254
|
+
function BaseSlider({ 'aria-label': ariaLabel, thumbLabels, domain, getValueLabel, initialValue, onChange, step, style, ticks = 5, trackLabels, trackToStart = true, trackToEnd = false, disableInputAlternative = false, values, className, }) {
|
|
176
255
|
// If step isn't set then pick a reasonable one
|
|
177
256
|
const adjustedStep = useMemo(() => {
|
|
178
257
|
if (step) {
|
|
@@ -180,72 +259,100 @@ function BaseSlider({ domain, getValueLabel, initialValue, onChange, step, style
|
|
|
180
259
|
}
|
|
181
260
|
return computeStep(domain[1] - domain[0]);
|
|
182
261
|
}, [domain, step]);
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
const currSliderValues = useRef(sliderValues);
|
|
186
|
-
currSliderValues.current = sliderValues;
|
|
187
|
-
const isFirstRender = useRef(true);
|
|
188
|
-
useEffect(() => {
|
|
189
|
-
if (values !== undefined) {
|
|
190
|
-
const mappedValues = values.map((v) => mapToClosestStep(v, adjustedStep));
|
|
191
|
-
if (!isEqual(mappedValues, currSliderValues.current)) {
|
|
192
|
-
setSliderValues(mappedValues);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
}, [adjustedStep, values]);
|
|
262
|
+
// Handle value correction for controlled mode
|
|
263
|
+
useValueCorrection(values, domain, adjustedStep, onChange, getValueLabel);
|
|
196
264
|
const [showInputs, setShowInputs] = useState(false);
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
265
|
+
// Handle controlled/uncontrolled mode
|
|
266
|
+
const defaultValue = useMemo(() => {
|
|
267
|
+
const initial = (initialValue === null || initialValue === void 0 ? void 0 : initialValue.map((v) => mapToClosestStep(v, adjustedStep, domain))) || [domain[0]];
|
|
268
|
+
return initial.length === 1 ? initial[0] : initial;
|
|
269
|
+
}, [initialValue, adjustedStep, domain]);
|
|
270
|
+
const isControlled = values !== undefined;
|
|
271
|
+
// For controlled mode, we need to ensure values are valid before using them
|
|
272
|
+
const safeControlledValues = useMemo(() => {
|
|
273
|
+
if (!isControlled || !(values === null || values === void 0 ? void 0 : values.length)) {
|
|
274
|
+
return undefined;
|
|
275
|
+
}
|
|
276
|
+
// Correct any invalid values for internal use
|
|
277
|
+
return correctValues(values, domain, adjustedStep);
|
|
278
|
+
}, [values, isControlled, domain, adjustedStep]);
|
|
279
|
+
const handleChange = useCallback((value) => {
|
|
280
|
+
if (!onChange) {
|
|
281
|
+
return;
|
|
282
|
+
}
|
|
283
|
+
const valueArray = Array.isArray(value) ? value : [value];
|
|
284
|
+
const formattedValues = valueArray.map(getValueLabel);
|
|
285
|
+
onChange(formattedValues);
|
|
286
|
+
}, [onChange, getValueLabel]);
|
|
287
|
+
// Generate tick values
|
|
288
|
+
const tickValues = useMemo(() => getTicks(ticks, domain), [ticks, domain]);
|
|
289
|
+
// Get error message for input validation
|
|
290
|
+
const getErrorMsg = useCallback((value, index, currentValues) => {
|
|
200
291
|
if (Number.isNaN(value)) {
|
|
201
292
|
return 'Value should not be left blank';
|
|
202
293
|
}
|
|
203
294
|
if (value < domain[0] || value > domain[1]) {
|
|
204
295
|
return `Value out of allowed range of ${domain[0]} - ${domain[1]}`;
|
|
205
296
|
}
|
|
206
|
-
if ((index > 0 && value <
|
|
207
|
-
(index <
|
|
297
|
+
if ((index > 0 && value < currentValues[index - 1]) ||
|
|
298
|
+
(index < currentValues.length - 1 && value > currentValues[index + 1])) {
|
|
208
299
|
return 'Values have to be in ascending order';
|
|
209
300
|
}
|
|
210
301
|
return '';
|
|
211
|
-
}, [domain
|
|
212
|
-
|
|
213
|
-
const
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
302
|
+
}, [domain]);
|
|
303
|
+
const adjustedLabel = ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : 'Slider';
|
|
304
|
+
const renderTrackContent = useCallback((renderProps) => {
|
|
305
|
+
const { state } = renderProps;
|
|
306
|
+
const currentValues = state.values;
|
|
307
|
+
return (_jsxs(_Fragment, { children: [_jsx(SliderRail, { "data-testid": "rail" }), (() => {
|
|
308
|
+
const segments = [];
|
|
309
|
+
const sortedIndices = Array.from({ length: currentValues.length }, (_, i) => i).sort((a, b) => currentValues[a] - currentValues[b]);
|
|
310
|
+
// Track to start
|
|
311
|
+
if (trackToStart && sortedIndices.length > 0) {
|
|
312
|
+
const firstIndex = sortedIndices[0];
|
|
313
|
+
const startPercent = 0;
|
|
314
|
+
const endPercent = state.getThumbPercent(firstIndex) * 100;
|
|
315
|
+
segments.push(_jsx(Track, { "data-testid": "track-start", style: {
|
|
316
|
+
left: `${startPercent}%`,
|
|
317
|
+
width: `${endPercent - startPercent}%`,
|
|
318
|
+
} }, "track-start"));
|
|
319
|
+
}
|
|
320
|
+
// Tracks between thumbs
|
|
321
|
+
for (let i = 0; i < sortedIndices.length - 1; i++) {
|
|
322
|
+
const startIndex = sortedIndices[i];
|
|
323
|
+
const endIndex = sortedIndices[i + 1];
|
|
324
|
+
const startPercent = state.getThumbPercent(startIndex) * 100;
|
|
325
|
+
const endPercent = state.getThumbPercent(endIndex) * 100;
|
|
326
|
+
segments.push(_jsxs(Fragment, { children: [_jsx(Track, { "data-testid": `track-${i}`, style: {
|
|
327
|
+
left: `${startPercent}%`,
|
|
328
|
+
width: `${endPercent - startPercent}%`,
|
|
329
|
+
} }), trackLabels && trackLabels[i] && (_jsx(TrackLabel, { "data-testid": `track-label-${i}`, style: {
|
|
330
|
+
display: endPercent - startPercent === 0 ? 'none' : 'flex',
|
|
331
|
+
left: `${(endPercent + startPercent) / 2}%`,
|
|
332
|
+
}, children: _jsx("span", { children: trackLabels[i] }) }))] }, `track-${i}`));
|
|
333
|
+
}
|
|
334
|
+
// Track to end
|
|
335
|
+
if (trackToEnd && sortedIndices.length > 0) {
|
|
336
|
+
const lastIndex = sortedIndices[sortedIndices.length - 1];
|
|
337
|
+
const startPercent = state.getThumbPercent(lastIndex) * 100;
|
|
338
|
+
const endPercent = 100;
|
|
339
|
+
segments.push(_jsx(Track, { "data-testid": "track-end", style: {
|
|
340
|
+
left: `${startPercent}%`,
|
|
341
|
+
width: `${endPercent - startPercent}%`,
|
|
342
|
+
} }, "track-end"));
|
|
343
|
+
}
|
|
344
|
+
return segments;
|
|
345
|
+
})(), currentValues.map((value, index) => {
|
|
346
|
+
var _a, _b;
|
|
347
|
+
return (_jsx(Tooltip, { content: getValueLabel(value), hideOnClick: false, placement: "top", children: _jsx(StyledSliderThumb, { "aria-label": (_b = (_a = thumbLabels === null || thumbLabels === void 0 ? void 0 : thumbLabels[index]) !== null && _a !== void 0 ? _a : getValueLabel === null || getValueLabel === void 0 ? void 0 : getValueLabel(value)) !== null && _b !== void 0 ? _b : `Thumb ${index + 1}`, index: index, "data-testid": `handle-${index}`, hasTicks: !!ticks }) }, index));
|
|
348
|
+
})] }));
|
|
349
|
+
}, [trackToStart, trackToEnd, ticks, trackLabels, getValueLabel, thumbLabels]);
|
|
350
|
+
return (_jsxs(SliderWrapper, { className: className, children: [_jsx(SliderInner, { children: _jsxs(StyledSlider, { "aria-label": adjustedLabel, minValue: domain[0], maxValue: domain[1], step: adjustedStep, value: isControlled ? safeControlledValues : undefined, defaultValue: !isControlled ? defaultValue : undefined, onChange: handleChange, style: style, children: [showInputs && _jsx(SliderInputField, { getErrorMsg: getErrorMsg, thumbLabels: thumbLabels }), !showInputs && (_jsxs(_Fragment, { children: [_jsx(StyledSliderTrack, { "data-testid": "slider-track", children: renderTrackContent }), tickValues.length > 0 && (_jsx(SliderTicks, { children: tickValues.map(({ value: tickValue, percent }, idx) => {
|
|
351
|
+
return (_jsx(Tick, { "data-testid": `tick-${idx}`, showLine: tickValue !== domain[0] && tickValue !== domain[1], style: {
|
|
352
|
+
left: `${percent}%`,
|
|
353
|
+
transform: getTickTransform(idx, tickValues.length),
|
|
354
|
+
}, children: getValueLabel(tickValue) }, idx));
|
|
355
|
+
}) }))] }))] }) }), !disableInputAlternative && (_jsx(Tooltip, { content: showInputs ? 'Use Slider' : 'Use Input Alternative', children: _jsx(SwapButton, { children: _jsx(SwapHorizontal, { onClick: () => setShowInputs((v) => !v), size: "2x" }) }) }))] }));
|
|
249
356
|
}
|
|
250
357
|
/**
|
|
251
358
|
* A simple numeric slider, essentially the same as BaseSlider
|
|
@@ -253,7 +360,7 @@ function BaseSlider({ domain, getValueLabel, initialValue, onChange, step, style
|
|
|
253
360
|
* @param props - the component props
|
|
254
361
|
*/
|
|
255
362
|
export function Slider(props) {
|
|
256
|
-
return
|
|
363
|
+
return _jsx(BaseSlider, Object.assign({}, props, { getValueLabel: (val) => round(val, 4) }));
|
|
257
364
|
}
|
|
258
365
|
/**
|
|
259
366
|
* The Categorical slider component accepts an array of string values to use on the slider, e.g.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.js","sourceRoot":"","sources":["../../src/slider/slider.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slider.js","sourceRoot":"","sources":["../../src/slider/slider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { GetReferenceClientRect } from 'tippy.js';
|
|
3
2
|
export interface TooltipProps {
|
|
4
3
|
/** The element to append the tooltip to, by default it gets appended to the body of the document */
|
|
5
4
|
appendTo?: Element | 'parent' | ((ref: Element) => Element);
|
|
@@ -16,7 +15,7 @@ export interface TooltipProps {
|
|
|
16
15
|
/** Whether the tooltip should follow the mouse cursor; or control how it will be followed */
|
|
17
16
|
followCursor?: boolean | 'horizontal' | 'vertical' | 'initial';
|
|
18
17
|
/** Optional prop to use with a virtual element */
|
|
19
|
-
getReferenceClientRect?:
|
|
18
|
+
getReferenceClientRect?: () => DOMRect;
|
|
20
19
|
/** Optional parameter to determine whether to hide the tooltip wrapper */
|
|
21
20
|
hidden?: boolean;
|
|
22
21
|
/** Optional parameter to determine if the tooltip should be shown even when the children are clicked, by default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":"AAoCA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqC/B,MAAM,WAAW,YAAY;IACzB,qGAAqG;IACrG,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC;IAC5D,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IAC9B,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6FAA6F;IAC7F,YAAY,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/D,kDAAkD;IAClD,sBAAsB,CAAC,EAAE,MAAM,OAAO,CAAC;IACvC,0EAA0E;IAC1E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;mEAC+D;IAC/D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;gBACY;IACZ,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gHAAgH;IAChH,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACvD,mGAAmG;IACnG,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACzD;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,sFAAsF;IACtF,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC9B,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,iBAAS,OAAO,CAAC,EACb,QAAQ,EACR,sBAAsB,EACtB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACR,WAAkB,EAClB,WAAW,EACX,OAAO,EACP,SAAkB,EAClB,OAAmB,EACnB,YAAoB,EACpB,MAAc,EACd,KAAK,EACL,KAAS,EACT,cAA4B,GAC/B,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO,CAuJ5B;AAED,eAAe,OAAO,CAAC"}
|
package/dist/tooltip/tooltip.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* Copyright 2023 Impulse Innovations Limited
|
|
4
4
|
*
|
|
@@ -15,9 +15,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import styled from '@darajs/styled-components';
|
|
18
|
+
import { FloatingArrow, FloatingPortal, arrow, autoPlacement, autoUpdate, flip, offset, shift, useClick, useDismiss, useFloating, useFocus, useHover, useInteractions, useMergeRefs, useRole, } from '@floating-ui/react';
|
|
19
|
+
import * as React from 'react';
|
|
20
|
+
import styled, { useTheme } from '@darajs/styled-components';
|
|
21
21
|
const TooltipWrapper = styled.div `
|
|
22
22
|
position: relative;
|
|
23
23
|
|
|
@@ -44,100 +44,103 @@ const TooltipWrapper = styled.div `
|
|
|
44
44
|
}
|
|
45
45
|
}};
|
|
46
46
|
`;
|
|
47
|
-
const Arrow = styled.span `
|
|
48
|
-
position: absolute;
|
|
49
|
-
|
|
50
|
-
${(props) => {
|
|
51
|
-
switch (props.placement) {
|
|
52
|
-
case 'top':
|
|
53
|
-
return 'bottom: 3px; left: -3px !important;';
|
|
54
|
-
case 'bottom':
|
|
55
|
-
return 'top: -5px;';
|
|
56
|
-
case 'left':
|
|
57
|
-
return 'right: 3px;';
|
|
58
|
-
case 'right':
|
|
59
|
-
return 'left: -5px;';
|
|
60
|
-
case 'top-start':
|
|
61
|
-
case 'top-end':
|
|
62
|
-
return 'bottom: 3px;';
|
|
63
|
-
case 'bottom-start':
|
|
64
|
-
case 'bottom-end':
|
|
65
|
-
return 'top: -5px;';
|
|
66
|
-
case 'left-start':
|
|
67
|
-
case 'left-end':
|
|
68
|
-
return 'right: 3px;';
|
|
69
|
-
case 'right-start':
|
|
70
|
-
case 'right-end':
|
|
71
|
-
return 'left: -5px;';
|
|
72
|
-
case 'auto':
|
|
73
|
-
case 'auto-start':
|
|
74
|
-
case 'auto-end':
|
|
75
|
-
default:
|
|
76
|
-
// Unsupported placement, hide the arrow
|
|
77
|
-
return 'display: none;';
|
|
78
|
-
}
|
|
79
|
-
}}
|
|
80
|
-
|
|
81
|
-
${(props) => {
|
|
82
|
-
if (props.$hidden) {
|
|
83
|
-
return 'display: none;';
|
|
84
|
-
}
|
|
85
|
-
}}
|
|
86
|
-
|
|
87
|
-
&::before {
|
|
88
|
-
content: '';
|
|
89
|
-
|
|
90
|
-
position: absolute;
|
|
91
|
-
|
|
92
|
-
${(props) => {
|
|
93
|
-
switch (props.placement) {
|
|
94
|
-
case 'top':
|
|
95
|
-
case 'top-start':
|
|
96
|
-
case 'top-end':
|
|
97
|
-
return 'transform: rotate(45deg);';
|
|
98
|
-
case 'bottom':
|
|
99
|
-
case 'bottom-start':
|
|
100
|
-
case 'bottom-end':
|
|
101
|
-
return 'transform: rotate(45deg);';
|
|
102
|
-
case 'left':
|
|
103
|
-
case 'left-start':
|
|
104
|
-
case 'left-end':
|
|
105
|
-
return 'transform: rotate(135deg);';
|
|
106
|
-
case 'right':
|
|
107
|
-
case 'right-start':
|
|
108
|
-
case 'right-end':
|
|
109
|
-
return 'transform: rotate(-45deg);';
|
|
110
|
-
case 'auto':
|
|
111
|
-
case 'auto-start':
|
|
112
|
-
case 'auto-end':
|
|
113
|
-
default:
|
|
114
|
-
return 'display: none;';
|
|
115
|
-
}
|
|
116
|
-
}}
|
|
117
|
-
|
|
118
|
-
width: 0.5rem;
|
|
119
|
-
height: 0.5rem;
|
|
120
|
-
|
|
121
|
-
background: ${(props) => {
|
|
122
|
-
return props.styling === 'default' ? props.theme.colors.grey2 : props.theme.colors.error;
|
|
123
|
-
}};
|
|
124
|
-
${(props) => {
|
|
125
|
-
if (props.placement === 'top') {
|
|
126
|
-
return `border-bottom: 1px solid ${props.styling === 'default' ? props.theme.colors.grey5 : props.theme.colors.errorDown};
|
|
127
|
-
border-right: 1px solid ${props.styling === 'default' ? props.theme.colors.grey5 : props.theme.colors.errorDown};`;
|
|
128
|
-
}
|
|
129
|
-
return `border-top: 1px solid ${props.styling === 'default' ? props.theme.colors.grey5 : props.theme.colors.errorDown};
|
|
130
|
-
border-left: 1px solid ${props.styling === 'default' ? props.theme.colors.grey5 : props.theme.colors.errorDown};`;
|
|
131
|
-
}}
|
|
132
|
-
}
|
|
133
|
-
`;
|
|
134
47
|
/**
|
|
135
48
|
* A tooltip component that can be wrapped around any other react component and attach a tooltip to it
|
|
136
49
|
*
|
|
137
50
|
* @param props the props for the tooltip component
|
|
138
51
|
*/
|
|
139
|
-
function Tooltip({ appendTo
|
|
140
|
-
|
|
52
|
+
function Tooltip({ appendTo, getReferenceClientRect, children, className, content, disabled, hideOnClick = true, interactive, visible, placement = 'auto', styling = 'default', followCursor = false, hidden = false, style, delay = 0, onClickOutside = () => false, }) {
|
|
53
|
+
const [isOpen, setIsOpen] = React.useState(false);
|
|
54
|
+
const arrowRef = React.useRef(null);
|
|
55
|
+
const theme = useTheme();
|
|
56
|
+
// Handle delay prop (can be number or array)
|
|
57
|
+
const delayValue = React.useMemo(() => {
|
|
58
|
+
if (typeof delay === 'number') {
|
|
59
|
+
return { open: delay, close: delay };
|
|
60
|
+
}
|
|
61
|
+
if (Array.isArray(delay)) {
|
|
62
|
+
return { open: delay[0] || 0, close: delay[1] || 0 };
|
|
63
|
+
}
|
|
64
|
+
return { open: 0, close: 0 };
|
|
65
|
+
}, [delay]);
|
|
66
|
+
const middleware = React.useMemo(() => {
|
|
67
|
+
const middlewares = [
|
|
68
|
+
offset(8),
|
|
69
|
+
placement === 'auto' ? autoPlacement() : flip(),
|
|
70
|
+
shift({ padding: 8 }),
|
|
71
|
+
arrow({ element: arrowRef }),
|
|
72
|
+
];
|
|
73
|
+
return middlewares;
|
|
74
|
+
}, [placement]);
|
|
75
|
+
const { refs, floatingStyles, context } = useFloating({
|
|
76
|
+
open: visible !== undefined ? visible : isOpen,
|
|
77
|
+
onOpenChange: visible !== undefined ? undefined : setIsOpen,
|
|
78
|
+
// Only specify placement if it's not 'auto' - let autoPlacement middleware handle 'auto'
|
|
79
|
+
placement: placement === 'auto' ? undefined : placement,
|
|
80
|
+
middleware,
|
|
81
|
+
whileElementsMounted: autoUpdate,
|
|
82
|
+
});
|
|
83
|
+
// Set up virtual element if getReferenceClientRect is provided
|
|
84
|
+
const { setReference } = refs;
|
|
85
|
+
React.useEffect(() => {
|
|
86
|
+
if (getReferenceClientRect) {
|
|
87
|
+
setReference({
|
|
88
|
+
getBoundingClientRect: getReferenceClientRect,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}, [getReferenceClientRect, setReference]);
|
|
92
|
+
const hover = useHover(context, {
|
|
93
|
+
enabled: visible === undefined && !disabled,
|
|
94
|
+
delay: delayValue,
|
|
95
|
+
move: followCursor !== false,
|
|
96
|
+
});
|
|
97
|
+
const focus = useFocus(context, {
|
|
98
|
+
enabled: visible === undefined && !disabled,
|
|
99
|
+
});
|
|
100
|
+
const click = useClick(context, {
|
|
101
|
+
enabled: visible === undefined && !disabled && !hideOnClick,
|
|
102
|
+
});
|
|
103
|
+
const dismiss = useDismiss(context, {
|
|
104
|
+
enabled: !disabled,
|
|
105
|
+
outsidePress: (event) => {
|
|
106
|
+
if (onClickOutside) {
|
|
107
|
+
onClickOutside(context, event);
|
|
108
|
+
}
|
|
109
|
+
return true;
|
|
110
|
+
},
|
|
111
|
+
});
|
|
112
|
+
const role = useRole(context, {
|
|
113
|
+
role: 'tooltip',
|
|
114
|
+
});
|
|
115
|
+
const { getReferenceProps, getFloatingProps } = useInteractions([hover, focus, click, dismiss, role]);
|
|
116
|
+
const isVisible = visible !== undefined ? visible : isOpen;
|
|
117
|
+
// Always call useMergeRefs but conditionally use the result
|
|
118
|
+
const childRef = children && typeof children === 'object' && 'ref' in children ? children.ref : null;
|
|
119
|
+
const mergedRef = useMergeRefs([refs.setReference, childRef]);
|
|
120
|
+
// Clone children and add reference props
|
|
121
|
+
const referenceElement = children ?
|
|
122
|
+
React.cloneElement(children, getReferenceProps(Object.assign({ ref: mergedRef }, children.props)))
|
|
123
|
+
: null;
|
|
124
|
+
// Determine portal container
|
|
125
|
+
const portalContainer = React.useMemo(() => {
|
|
126
|
+
if (!appendTo) {
|
|
127
|
+
return document.body;
|
|
128
|
+
}
|
|
129
|
+
if (appendTo === 'parent') {
|
|
130
|
+
return undefined;
|
|
131
|
+
}
|
|
132
|
+
if (typeof appendTo === 'function') {
|
|
133
|
+
const appendToFn = appendTo;
|
|
134
|
+
return appendToFn(refs.reference.current || document.body);
|
|
135
|
+
}
|
|
136
|
+
return appendTo;
|
|
137
|
+
}, [appendTo, refs.reference]);
|
|
138
|
+
const tooltipContent = isVisible && !disabled && !hidden && content ?
|
|
139
|
+
_jsx("div", Object.assign({ ref: refs.setFloating, style: Object.assign(Object.assign(Object.assign({}, floatingStyles), { zIndex: 9998 }), (interactive && { pointerEvents: 'auto' })) }, getFloatingProps(), { children: _jsxs(TooltipWrapper, { "$hidden": false, className: className, style: style, styling: styling, "data-placement": context.placement, children: [content, _jsx(FloatingArrow, { ref: arrowRef, context: context, width: 12, height: 6, tipRadius: 2, stroke: styling === 'default' ? theme.colors.grey5 : theme.colors.errorDown, strokeWidth: 1, fill: styling === 'default' ? theme.colors.grey2 : theme.colors.error })] }) }))
|
|
140
|
+
: null;
|
|
141
|
+
return (_jsxs(_Fragment, { children: [referenceElement, portalContainer ?
|
|
142
|
+
_jsx(FloatingPortal, { root: portalContainer, children: tooltipContent })
|
|
143
|
+
: tooltipContent] }));
|
|
141
144
|
}
|
|
142
145
|
export default Tooltip;
|
|
143
146
|
//# sourceMappingURL=tooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACH,aAAa,EACb,cAAc,EAGd,KAAK,EACL,aAAa,EACb,UAAU,EACV,IAAI,EACJ,MAAM,EACN,KAAK,EACL,QAAQ,EACR,UAAU,EACV,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,OAAO,GACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAO7D,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAa;;;;;;;;;;;;;;MAcxC,CAAC,KAAK,EAAE,EAAE;IACR,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO;qBACE,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;yBAC7E,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;gCACd,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS;;gCAErF,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;aACpG,CAAC;IACN,CAAC;AACL,CAAC;CACJ,CAAC;AAyCF;;;;GAIG;AACH,SAAS,OAAO,CAAC,EACb,QAAQ,EACR,sBAAsB,EACtB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACR,WAAW,GAAG,IAAI,EAClB,WAAW,EACX,OAAO,EACP,SAAS,GAAG,MAAM,EAClB,OAAO,GAAG,SAAS,EACnB,YAAY,GAAG,KAAK,EACpB,MAAM,GAAG,KAAK,EACd,KAAK,EACL,KAAK,GAAG,CAAC,EACT,cAAc,GAAG,GAAG,EAAE,CAAC,KAAK,GACjB;IACX,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,6CAA6C;IAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACzC,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAClC,MAAM,WAAW,GAAG;YAChB,MAAM,CAAC,CAAC,CAAC;YACT,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;YAC/C,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YACrB,KAAK,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;SAC/B,CAAC;QAEF,OAAO,WAAW,CAAC;IACvB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;QAClD,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;QAC9C,YAAY,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC3D,yFAAyF;QACzF,SAAS,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,SAAuB;QACtE,UAAU;QACV,oBAAoB,EAAE,UAAU;KACnC,CAAC,CAAC;IAEH,+DAA+D;IAC/D,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,sBAAsB,EAAE,CAAC;YACzB,YAAY,CAAC;gBACT,qBAAqB,EAAE,sBAAsB;aAC/B,CAAC,CAAC;QACxB,CAAC;IACL,CAAC,EAAE,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC,CAAC;IAE3C,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE;QAC5B,OAAO,EAAE,OAAO,KAAK,SAAS,IAAI,CAAC,QAAQ;QAC3C,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,YAAY,KAAK,KAAK;KAC/B,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE;QAC5B,OAAO,EAAE,OAAO,KAAK,SAAS,IAAI,CAAC,QAAQ;KAC9C,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE;QAC5B,OAAO,EAAE,OAAO,KAAK,SAAS,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW;KAC9D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE;QAChC,OAAO,EAAE,CAAC,QAAQ;QAClB,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;YACpB,IAAI,cAAc,EAAE,CAAC;gBACjB,cAAc,CAAC,OAAO,EAAE,KAAc,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE;QAC1B,IAAI,EAAE,SAAS;KAClB,CAAC,CAAC;IAEH,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAEtG,MAAM,SAAS,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAE3D,4DAA4D;IAC5D,MAAM,QAAQ,GACV,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAE,QAAQ,CAAC,GAAoB,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1G,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE9D,yCAAyC;IACzC,MAAM,gBAAgB,GAClB,QAAQ,CAAC,CAAC;QACN,KAAK,CAAC,YAAY,CACd,QAAQ,EACR,iBAAiB,iBACb,GAAG,EAAE,SAAS,IACX,QAAQ,CAAC,KAAK,EACnB,CACL;QACL,CAAC,CAAG,IAAI,CAAC;IAEb,6BAA6B;IAC7B,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,QAAQ,CAAC,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,QAAqC,CAAC;YACzD,OAAO,UAAU,CAAE,IAAI,CAAC,SAAS,CAAC,OAAmB,IAAI,QAAQ,CAAC,IAAI,CAAgB,CAAC;QAC3F,CAAC;QACD,OAAO,QAAuB,CAAC;IACnC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAE/B,MAAM,cAAc,GAChB,SAAS,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;QAC1C,4BACI,GAAG,EAAE,IAAI,CAAC,WAAW,EACrB,KAAK,gDACE,cAAc,KACjB,MAAM,EAAE,IAAI,KACT,CAAC,WAAW,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,KAE7C,gBAAgB,EAAE,cAEtB,MAAC,cAAc,eACF,KAAK,EACd,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,oBACA,OAAO,CAAC,SAAS,aAEhC,OAAO,EACR,KAAC,aAAa,IACV,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,CAAC,EACT,SAAS,EAAE,CAAC,EACZ,MAAM,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAC3E,WAAW,EAAE,CAAC,EACd,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GACvE,IACW,IACf;QACV,CAAC,CAAG,IAAI,CAAC;IAEb,OAAO,CACH,8BACK,gBAAgB,EAChB,eAAe,CAAC,CAAC;gBACd,KAAC,cAAc,IAAC,IAAI,EAAE,eAAe,YAAG,cAAc,GAAkB;gBAC5E,CAAC,CAAG,cAAc,IACnB,CACN,CAAC;AACN,CAAC;AAED,eAAe,OAAO,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@darajs/ui-components",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.16",
|
|
4
4
|
"description": "The core React UI kit for Dara",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
"@babel/preset-env": "^7.15.6",
|
|
25
25
|
"@babel/preset-react": "^7.14.5",
|
|
26
26
|
"@babel/preset-typescript": "^7.15.0",
|
|
27
|
-
"@darajs/eslint-config": "1.16.
|
|
28
|
-
"@darajs/prettier-config": "1.16.
|
|
29
|
-
"@darajs/stylelint-config": "1.16.
|
|
27
|
+
"@darajs/eslint-config": "1.16.16",
|
|
28
|
+
"@darajs/prettier-config": "1.16.16",
|
|
29
|
+
"@darajs/stylelint-config": "1.16.16",
|
|
30
30
|
"@storybook/addon-a11y": "^6.5.16",
|
|
31
31
|
"@storybook/addon-actions": "^6.5.16",
|
|
32
32
|
"@storybook/addon-essentials": "^6.5.16",
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
"@testing-library/jest-dom": "^5.16.5",
|
|
41
41
|
"@testing-library/react": "^14.0.0",
|
|
42
42
|
"@testing-library/user-event": "^13.2.1",
|
|
43
|
+
"@types/d3-array": "^3.2.1",
|
|
43
44
|
"@types/jest": "^27.0.0",
|
|
44
45
|
"@types/lodash": "^4.14.155",
|
|
45
46
|
"@types/react": "^18.0",
|
|
@@ -67,14 +68,14 @@
|
|
|
67
68
|
"typescript": "^5.8.2"
|
|
68
69
|
},
|
|
69
70
|
"dependencies": {
|
|
70
|
-
"@darajs/styled-components": "1.16.
|
|
71
|
-
"@darajs/ui-icons": "1.16.
|
|
72
|
-
"@darajs/ui-utils": "1.16.
|
|
71
|
+
"@darajs/styled-components": "1.16.16",
|
|
72
|
+
"@darajs/ui-icons": "1.16.16",
|
|
73
|
+
"@darajs/ui-utils": "1.16.16",
|
|
73
74
|
"@floating-ui/react": "^0.26.12",
|
|
74
75
|
"@fortawesome/free-regular-svg-icons": "~6.4.0",
|
|
75
76
|
"@fortawesome/free-solid-svg-icons": "~6.4.0",
|
|
76
77
|
"@fortawesome/react-fontawesome": "^0.2.0",
|
|
77
|
-
"
|
|
78
|
+
"d3-array": "^3.2.4",
|
|
78
79
|
"date-fns": "2.9.0",
|
|
79
80
|
"downshift": "^7.0.0",
|
|
80
81
|
"lodash": "4.17.21",
|
|
@@ -83,8 +84,8 @@
|
|
|
83
84
|
"polished": "3.6.4",
|
|
84
85
|
"prism-react-renderer": "^1.2.0",
|
|
85
86
|
"react": "^18.0",
|
|
87
|
+
"react-aria-components": "~1.9.0",
|
|
86
88
|
"react-collapse": "^5.1.1",
|
|
87
|
-
"react-compound-slider": "3.3.0",
|
|
88
89
|
"react-datepicker": "4.8.0",
|
|
89
90
|
"react-dom": "^18.0",
|
|
90
91
|
"react-dropzone": "11.0.1",
|
|
@@ -93,8 +94,7 @@
|
|
|
93
94
|
"react-table-sticky": "^1.1.3",
|
|
94
95
|
"react-virtualized-auto-sizer": "1.0.6",
|
|
95
96
|
"react-window": "1.8.10",
|
|
96
|
-
"remark-gfm": "^4.0.0"
|
|
97
|
-
"tippy.js": "6.2.6"
|
|
97
|
+
"remark-gfm": "^4.0.0"
|
|
98
98
|
},
|
|
99
99
|
"files": [
|
|
100
100
|
"dist"
|
|
@@ -102,5 +102,5 @@
|
|
|
102
102
|
"publishConfig": {
|
|
103
103
|
"access": "public"
|
|
104
104
|
},
|
|
105
|
-
"gitHead": "
|
|
105
|
+
"gitHead": "206d5d5d29d2812a6431c507821e04a462d5e37e"
|
|
106
106
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slider-inputs.d.ts","sourceRoot":"","sources":["../../src/slider/slider-inputs.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAiD/D,UAAU,iBAAiB;IACvB,+EAA+E;IAC/E,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,8EAA8E;IAC9E,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACtD,iCAAiC;IACjC,eAAe,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAChE,oBAAoB;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,QAAA,MAAM,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,CA8CtD,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright 2023 Impulse Innovations Limited
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
18
|
-
import { useCallback, useRef } from 'react';
|
|
19
|
-
import styled from '@darajs/styled-components';
|
|
20
|
-
import { useIntersectionObserver } from '@darajs/ui-utils';
|
|
21
|
-
import NumericInput from '../numeric-input/numeric-input';
|
|
22
|
-
const InputWrapper = styled.div `
|
|
23
|
-
position: relative;
|
|
24
|
-
display: flex;
|
|
25
|
-
flex: 1 1 auto;
|
|
26
|
-
height: 3rem;
|
|
27
|
-
|
|
28
|
-
div {
|
|
29
|
-
flex: 1 1 auto;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
input {
|
|
33
|
-
height: 100%;
|
|
34
|
-
|
|
35
|
-
::before {
|
|
36
|
-
content: ' ';
|
|
37
|
-
|
|
38
|
-
position: sticky;
|
|
39
|
-
top: 0;
|
|
40
|
-
left: 0;
|
|
41
|
-
|
|
42
|
-
width: ${(props) => (!props.firstInputVisible ? '8px' : 0)};
|
|
43
|
-
height: 2.5rem;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
::after {
|
|
47
|
-
content: '';
|
|
48
|
-
|
|
49
|
-
position: sticky;
|
|
50
|
-
top: 0;
|
|
51
|
-
right: 0;
|
|
52
|
-
|
|
53
|
-
width: ${(props) => (!props.lastInputVisible ? '8px' : 0)};
|
|
54
|
-
height: 2.5rem;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
`;
|
|
58
|
-
/**
|
|
59
|
-
* The SliderInputs component displays the actual input values of the slider in a horizontal scrollable view
|
|
60
|
-
* that can be edited and have the changes reflected on the slider.
|
|
61
|
-
*
|
|
62
|
-
* @param {SliderInputsProps} props - the props for the component
|
|
63
|
-
*/
|
|
64
|
-
const SliderInputs = ({ getErrorMsg, sliderValues, setSliderValues, domain, }) => {
|
|
65
|
-
const firstInputRef = useRef();
|
|
66
|
-
const lastInputRef = useRef();
|
|
67
|
-
const firstInputVisible = useIntersectionObserver(firstInputRef, '0px', 0.5);
|
|
68
|
-
const lastInputVisible = useIntersectionObserver(lastInputRef, '0px', 0.5);
|
|
69
|
-
const onInputChange = useCallback((value, index) => {
|
|
70
|
-
setSliderValues((currSliderValues) => {
|
|
71
|
-
const updatedValues = [...currSliderValues];
|
|
72
|
-
updatedValues[index] = Number.isNaN(value) ? domain[0] : value;
|
|
73
|
-
return updatedValues;
|
|
74
|
-
});
|
|
75
|
-
}, [domain, setSliderValues]);
|
|
76
|
-
return (_jsx(InputWrapper, { firstInputVisible: firstInputVisible, lastInputVisible: lastInputVisible, children: sliderValues.map((value, index) => {
|
|
77
|
-
let inputRef = null;
|
|
78
|
-
if (index === 0) {
|
|
79
|
-
inputRef = firstInputRef;
|
|
80
|
-
}
|
|
81
|
-
if (index === sliderValues.length - 1) {
|
|
82
|
-
inputRef = lastInputRef;
|
|
83
|
-
}
|
|
84
|
-
return (_jsx("div", { ref: inputRef, children: _jsx(NumericInput, { errorMsg: getErrorMsg(value, index), onChange: (val) => onInputChange(val, index), style: { height: '2rem', margin: '0.25rem 0.5rem' }, value: value }) }, index));
|
|
85
|
-
}) }));
|
|
86
|
-
};
|
|
87
|
-
export default SliderInputs;
|
|
88
|
-
//# sourceMappingURL=slider-inputs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slider-inputs.js","sourceRoot":"","sources":["../../src/slider/slider-inputs.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAqB,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/D,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,YAAY,MAAM,gCAAgC,CAAC;AAO1D,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAmB;;;;;;;;;;;;;;;;;;;;qBAoB7B,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;qBAWjD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;;;;CAIpE,CAAC;AAaF;;;;;GAKG;AACH,MAAM,YAAY,GAAyC,CAAC,EACxD,WAAW,EACX,YAAY,EACZ,eAAe,EACf,MAAM,GACT,EAAe,EAAE;IACd,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC;IAC/B,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC;IAE9B,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,aAAa,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC7E,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAE3E,MAAM,aAAa,GAAG,WAAW,CAC7B,CAAC,KAAa,EAAE,KAAa,EAAQ,EAAE;QACnC,eAAe,CAAC,CAAC,gBAAgB,EAAE,EAAE;YACjC,MAAM,aAAa,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC;YAC5C,aAAa,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC/D,OAAO,aAAa,CAAC;QACzB,CAAC,CAAC,CAAC;IACP,CAAC,EACD,CAAC,MAAM,EAAE,eAAe,CAAC,CAC5B,CAAC;IAEF,OAAO,CACH,KAAC,YAAY,IAAC,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,YACjF,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC/B,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACd,QAAQ,GAAG,aAAa,CAAC;YAC7B,CAAC;YACD,IAAI,KAAK,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,QAAQ,GAAG,YAAY,CAAC;YAC5B,CAAC;YACD,OAAO,CACH,cAAiB,GAAG,EAAE,QAAQ,YAC1B,KAAC,YAAY,IACT,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EACnC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,EAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,EACnD,KAAK,EAAE,KAAK,GACd,IANI,KAAK,CAOT,CACT,CAAC;QACN,CAAC,CAAC,GACS,CAClB,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|