@seeqdev/qomponents 0.0.125 → 0.0.127
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/Carousel/Carousel.d.ts +9 -0
- package/dist/Carousel/Carousel.js +17 -12
- package/dist/Carousel/Carousel.js.map +1 -1
- package/dist/Carousel/Carousel.stories.d.ts +5 -0
- package/dist/Carousel/Carousel.stories.js +48 -48
- package/dist/Carousel/Carousel.stories.js.map +1 -1
- package/dist/Carousel/Carousel.test.d.ts +1 -0
- package/dist/Carousel/Carousel.test.js +1 -1
- package/dist/Carousel/Carousel.test.js.map +1 -1
- package/dist/Carousel/Carousel.types.d.ts +23 -0
- package/dist/Carousel/index.d.ts +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.esm.js +319 -2
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +319 -1
- package/dist/index.js.map +1 -1
- package/dist/styles.css +53 -0
- package/package.json +1 -1
- package/dist/Accordion/Accordion.js +0 -9
- package/dist/Accordion/Accordion.js.map +0 -1
- package/dist/Accordion/Accordion.stories.js +0 -115
- package/dist/Accordion/Accordion.stories.js.map +0 -1
- package/dist/Accordion/Accordion.test.js +0 -55
- package/dist/Accordion/Accordion.test.js.map +0 -1
- package/dist/Accordion/Accordion.types.js +0 -2
- package/dist/Accordion/Accordion.types.js.map +0 -1
- package/dist/Accordion/index.js +0 -2
- package/dist/Accordion/index.js.map +0 -1
- package/dist/Alert/Alert.js +0 -34
- package/dist/Alert/Alert.js.map +0 -1
- package/dist/Alert/Alert.stories.js +0 -52
- package/dist/Alert/Alert.stories.js.map +0 -1
- package/dist/Alert/Alert.test.js +0 -51
- package/dist/Alert/Alert.test.js.map +0 -1
- package/dist/Alert/Alert.types.js +0 -2
- package/dist/Alert/Alert.types.js.map +0 -1
- package/dist/Alert/index.js +0 -2
- package/dist/Alert/index.js.map +0 -1
- package/dist/Button/Button.js +0 -92
- package/dist/Button/Button.js.map +0 -1
- package/dist/Button/Button.stories.js +0 -100
- package/dist/Button/Button.stories.js.map +0 -1
- package/dist/Button/Button.test.js +0 -49
- package/dist/Button/Button.test.js.map +0 -1
- package/dist/Button/Button.types.js +0 -5
- package/dist/Button/Button.types.js.map +0 -1
- package/dist/Button/index.js +0 -2
- package/dist/Button/index.js.map +0 -1
- package/dist/ButtonGroup/ButtonGroup.js +0 -33
- package/dist/ButtonGroup/ButtonGroup.js.map +0 -1
- package/dist/ButtonGroup/ButtonGroup.stories.js +0 -385
- package/dist/ButtonGroup/ButtonGroup.stories.js.map +0 -1
- package/dist/ButtonGroup/ButtonGroup.test.js +0 -67
- package/dist/ButtonGroup/ButtonGroup.test.js.map +0 -1
- package/dist/ButtonGroup/ButtonGroup.types.js +0 -2
- package/dist/ButtonGroup/ButtonGroup.types.js.map +0 -1
- package/dist/ButtonGroup/index.js +0 -2
- package/dist/ButtonGroup/index.js.map +0 -1
- package/dist/ButtonWithDropdown/ButtonWithDropdown.js +0 -60
- package/dist/ButtonWithDropdown/ButtonWithDropdown.js.map +0 -1
- package/dist/ButtonWithDropdown/ButtonWithDropdown.stories.js +0 -143
- package/dist/ButtonWithDropdown/ButtonWithDropdown.stories.js.map +0 -1
- package/dist/ButtonWithDropdown/ButtonWithDropdown.test.js +0 -93
- package/dist/ButtonWithDropdown/ButtonWithDropdown.test.js.map +0 -1
- package/dist/ButtonWithDropdown/ButtonWithDropdown.types.js +0 -2
- package/dist/ButtonWithDropdown/ButtonWithDropdown.types.js.map +0 -1
- package/dist/ButtonWithDropdown/index.js +0 -2
- package/dist/ButtonWithDropdown/index.js.map +0 -1
- package/dist/ButtonWithPopover/ButtonWithPopover.js +0 -53
- package/dist/ButtonWithPopover/ButtonWithPopover.js.map +0 -1
- package/dist/ButtonWithPopover/ButtonWithPopover.stories.js +0 -75
- package/dist/ButtonWithPopover/ButtonWithPopover.stories.js.map +0 -1
- package/dist/ButtonWithPopover/ButtonWithPopover.test.js +0 -82
- package/dist/ButtonWithPopover/ButtonWithPopover.test.js.map +0 -1
- package/dist/ButtonWithPopover/ButtonWithPopover.types.js +0 -2
- package/dist/ButtonWithPopover/ButtonWithPopover.types.js.map +0 -1
- package/dist/ButtonWithPopover/index.js +0 -2
- package/dist/ButtonWithPopover/index.js.map +0 -1
- package/dist/Checkbox/Checkbox.js +0 -26
- package/dist/Checkbox/Checkbox.js.map +0 -1
- package/dist/Checkbox/Checkbox.stories.js +0 -34
- package/dist/Checkbox/Checkbox.stories.js.map +0 -1
- package/dist/Checkbox/Checkbox.test.js +0 -94
- package/dist/Checkbox/Checkbox.test.js.map +0 -1
- package/dist/Checkbox/Checkbox.types.js +0 -2
- package/dist/Checkbox/Checkbox.types.js.map +0 -1
- package/dist/Checkbox/index.js +0 -2
- package/dist/Checkbox/index.js.map +0 -1
- package/dist/Collapse/Collapse.js +0 -18
- package/dist/Collapse/Collapse.js.map +0 -1
- package/dist/Collapse/Collapse.stories.js +0 -37
- package/dist/Collapse/Collapse.stories.js.map +0 -1
- package/dist/Collapse/Collapse.test.js +0 -19
- package/dist/Collapse/Collapse.test.js.map +0 -1
- package/dist/Collapse/Collapse.types.js +0 -2
- package/dist/Collapse/Collapse.types.js.map +0 -1
- package/dist/Collapse/index.js +0 -2
- package/dist/Collapse/index.js.map +0 -1
- package/dist/Icon/Icon.js +0 -55
- package/dist/Icon/Icon.js.map +0 -1
- package/dist/Icon/Icon.stories.js +0 -50
- package/dist/Icon/Icon.stories.js.map +0 -1
- package/dist/Icon/Icon.test.js +0 -55
- package/dist/Icon/Icon.test.js.map +0 -1
- package/dist/Icon/Icon.types.js +0 -16
- package/dist/Icon/Icon.types.js.map +0 -1
- package/dist/Icon/index.js +0 -2
- package/dist/Icon/index.js.map +0 -1
- package/dist/InputGroup/InputGroup.js +0 -32
- package/dist/InputGroup/InputGroup.js.map +0 -1
- package/dist/InputGroup/InputGroup.stories.js +0 -168
- package/dist/InputGroup/InputGroup.stories.js.map +0 -1
- package/dist/InputGroup/InputGroup.test.js +0 -43
- package/dist/InputGroup/InputGroup.test.js.map +0 -1
- package/dist/InputGroup/InputGroup.types.js +0 -2
- package/dist/InputGroup/InputGroup.types.js.map +0 -1
- package/dist/InputGroup/index.js +0 -2
- package/dist/InputGroup/index.js.map +0 -1
- package/dist/Modal/Modal.js +0 -100
- package/dist/Modal/Modal.js.map +0 -1
- package/dist/Modal/Modal.stories.js +0 -127
- package/dist/Modal/Modal.stories.js.map +0 -1
- package/dist/Modal/Modal.test.js +0 -108
- package/dist/Modal/Modal.test.js.map +0 -1
- package/dist/Modal/Modal.types.js +0 -2
- package/dist/Modal/Modal.types.js.map +0 -1
- package/dist/Modal/index.js +0 -2
- package/dist/Modal/index.js.map +0 -1
- package/dist/ProgressBar/ProgressBar.js +0 -30
- package/dist/ProgressBar/ProgressBar.js.map +0 -1
- package/dist/ProgressBar/ProgressBar.stories.js +0 -73
- package/dist/ProgressBar/ProgressBar.stories.js.map +0 -1
- package/dist/ProgressBar/ProgressBar.test.js +0 -38
- package/dist/ProgressBar/ProgressBar.test.js.map +0 -1
- package/dist/ProgressBar/ProgressBar.types.js +0 -2
- package/dist/ProgressBar/ProgressBar.types.js.map +0 -1
- package/dist/ProgressBar/index.js +0 -2
- package/dist/ProgressBar/index.js.map +0 -1
- package/dist/SeeqActionDropdown/SeeqActionDropdown.js +0 -48
- package/dist/SeeqActionDropdown/SeeqActionDropdown.js.map +0 -1
- package/dist/SeeqActionDropdown/SeeqActionDropdown.stories.js +0 -80
- package/dist/SeeqActionDropdown/SeeqActionDropdown.stories.js.map +0 -1
- package/dist/SeeqActionDropdown/SeeqActionDropdown.test.js +0 -73
- package/dist/SeeqActionDropdown/SeeqActionDropdown.test.js.map +0 -1
- package/dist/SeeqActionDropdown/SeeqActionDropdown.types.js +0 -2
- package/dist/SeeqActionDropdown/SeeqActionDropdown.types.js.map +0 -1
- package/dist/SeeqActionDropdown/index.js +0 -2
- package/dist/SeeqActionDropdown/index.js.map +0 -1
- package/dist/SeeqActionDropdown/variants.js +0 -23
- package/dist/SeeqActionDropdown/variants.js.map +0 -1
- package/dist/Select/Select.js +0 -174
- package/dist/Select/Select.js.map +0 -1
- package/dist/Select/Select.stories.js +0 -80
- package/dist/Select/Select.stories.js.map +0 -1
- package/dist/Select/Select.test.js +0 -182
- package/dist/Select/Select.test.js.map +0 -1
- package/dist/Select/Select.types.js +0 -2
- package/dist/Select/Select.types.js.map +0 -1
- package/dist/Select/index.js +0 -3
- package/dist/Select/index.js.map +0 -1
- package/dist/Slider/Slider.js +0 -13
- package/dist/Slider/Slider.js.map +0 -1
- package/dist/Slider/Slider.stories.js +0 -58
- package/dist/Slider/Slider.stories.js.map +0 -1
- package/dist/Slider/Slider.test.js +0 -33
- package/dist/Slider/Slider.test.js.map +0 -1
- package/dist/Slider/Slider.types.js +0 -2
- package/dist/Slider/Slider.types.js.map +0 -1
- package/dist/Slider/index.js +0 -2
- package/dist/Slider/index.js.map +0 -1
- package/dist/Tabs/Tabs.js +0 -22
- package/dist/Tabs/Tabs.js.map +0 -1
- package/dist/Tabs/Tabs.stories.js +0 -91
- package/dist/Tabs/Tabs.stories.js.map +0 -1
- package/dist/Tabs/Tabs.test.js +0 -91
- package/dist/Tabs/Tabs.test.js.map +0 -1
- package/dist/Tabs/Tabs.types.js +0 -2
- package/dist/Tabs/Tabs.types.js.map +0 -1
- package/dist/Tabs/index.js +0 -2
- package/dist/Tabs/index.js.map +0 -1
- package/dist/TextArea/TextArea.js +0 -25
- package/dist/TextArea/TextArea.js.map +0 -1
- package/dist/TextArea/TextArea.stories.js +0 -46
- package/dist/TextArea/TextArea.stories.js.map +0 -1
- package/dist/TextArea/TextArea.test.js +0 -68
- package/dist/TextArea/TextArea.test.js.map +0 -1
- package/dist/TextArea/TextArea.types.js +0 -2
- package/dist/TextArea/TextArea.types.js.map +0 -1
- package/dist/TextArea/index.js +0 -2
- package/dist/TextArea/index.js.map +0 -1
- package/dist/TextField/TextField.js +0 -79
- package/dist/TextField/TextField.js.map +0 -1
- package/dist/TextField/TextField.stories.js +0 -70
- package/dist/TextField/TextField.stories.js.map +0 -1
- package/dist/TextField/TextField.test.js +0 -39
- package/dist/TextField/TextField.test.js.map +0 -1
- package/dist/TextField/TextField.types.js +0 -2
- package/dist/TextField/TextField.types.js.map +0 -1
- package/dist/TextField/index.js +0 -2
- package/dist/TextField/index.js.map +0 -1
- package/dist/ToolbarButton/ToolbarButton.js +0 -75
- package/dist/ToolbarButton/ToolbarButton.js.map +0 -1
- package/dist/ToolbarButton/ToolbarButton.stories.js +0 -94
- package/dist/ToolbarButton/ToolbarButton.stories.js.map +0 -1
- package/dist/ToolbarButton/ToolbarButton.test.js +0 -93
- package/dist/ToolbarButton/ToolbarButton.test.js.map +0 -1
- package/dist/ToolbarButton/ToolbarButton.types.js +0 -2
- package/dist/ToolbarButton/ToolbarButton.types.js.map +0 -1
- package/dist/ToolbarButton/index.js +0 -2
- package/dist/ToolbarButton/index.js.map +0 -1
- package/dist/Tooltip/QTip.stories.js +0 -45
- package/dist/Tooltip/QTip.stories.js.map +0 -1
- package/dist/Tooltip/QTip.types.js +0 -2
- package/dist/Tooltip/QTip.types.js.map +0 -1
- package/dist/Tooltip/QTipPerformance.stories.js +0 -30
- package/dist/Tooltip/QTipPerformance.stories.js.map +0 -1
- package/dist/Tooltip/Qtip.js +0 -168
- package/dist/Tooltip/Qtip.js.map +0 -1
- package/dist/Tooltip/Tooltip.js +0 -36
- package/dist/Tooltip/Tooltip.js.map +0 -1
- package/dist/Tooltip/Tooltip.stories.js +0 -32
- package/dist/Tooltip/Tooltip.stories.js.map +0 -1
- package/dist/Tooltip/Tooltip.types.js +0 -3
- package/dist/Tooltip/Tooltip.types.js.map +0 -1
- package/dist/Tooltip/TooltipPerformance.stories.js +0 -30
- package/dist/Tooltip/TooltipPerformance.stories.js.map +0 -1
- package/dist/Tooltip/index.js +0 -3
- package/dist/Tooltip/index.js.map +0 -1
- package/dist/Tooltip/qTip.utilities.js +0 -11
- package/dist/Tooltip/qTip.utilities.js.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
- package/dist/utils/browserId.js +0 -29
- package/dist/utils/browserId.js.map +0 -1
- package/dist/utils/svg.js +0 -20
- package/dist/utils/svg.js.map +0 -1
- package/dist/utils/validateStyleDimension.js +0 -14
- package/dist/utils/validateStyleDimension.js.map +0 -1
- package/dist/utils/validateStyleDimension.test.js +0 -20
- package/dist/utils/validateStyleDimension.test.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -18978,6 +18978,260 @@ function useSpring(props, deps) {
|
|
|
18978
18978
|
);
|
|
18979
18979
|
return isFn || arguments.length == 2 ? [values, ref] : values;
|
|
18980
18980
|
}
|
|
18981
|
+
function useTransition(data, props, deps) {
|
|
18982
|
+
const propsFn = is.fun(props) && props;
|
|
18983
|
+
const {
|
|
18984
|
+
reset,
|
|
18985
|
+
sort,
|
|
18986
|
+
trail = 0,
|
|
18987
|
+
expires = true,
|
|
18988
|
+
exitBeforeEnter = false,
|
|
18989
|
+
onDestroyed,
|
|
18990
|
+
ref: propsRef,
|
|
18991
|
+
config: propsConfig
|
|
18992
|
+
} = propsFn ? propsFn() : props;
|
|
18993
|
+
const ref = React.useMemo(
|
|
18994
|
+
() => propsFn || arguments.length == 3 ? SpringRef() : void 0,
|
|
18995
|
+
[]
|
|
18996
|
+
);
|
|
18997
|
+
const items = toArray(data);
|
|
18998
|
+
const transitions = [];
|
|
18999
|
+
const usedTransitions = React.useRef(null);
|
|
19000
|
+
const prevTransitions = reset ? null : usedTransitions.current;
|
|
19001
|
+
useIsomorphicLayoutEffect(() => {
|
|
19002
|
+
usedTransitions.current = transitions;
|
|
19003
|
+
});
|
|
19004
|
+
useOnce(() => {
|
|
19005
|
+
each(transitions, (t) => {
|
|
19006
|
+
ref?.add(t.ctrl);
|
|
19007
|
+
t.ctrl.ref = ref;
|
|
19008
|
+
});
|
|
19009
|
+
return () => {
|
|
19010
|
+
each(usedTransitions.current, (t) => {
|
|
19011
|
+
if (t.expired) {
|
|
19012
|
+
clearTimeout(t.expirationId);
|
|
19013
|
+
}
|
|
19014
|
+
detachRefs(t.ctrl, ref);
|
|
19015
|
+
t.ctrl.stop(true);
|
|
19016
|
+
});
|
|
19017
|
+
};
|
|
19018
|
+
});
|
|
19019
|
+
const keys = getKeys(items, propsFn ? propsFn() : props, prevTransitions);
|
|
19020
|
+
const expired = reset && usedTransitions.current || [];
|
|
19021
|
+
useIsomorphicLayoutEffect(
|
|
19022
|
+
() => each(expired, ({ ctrl, item, key }) => {
|
|
19023
|
+
detachRefs(ctrl, ref);
|
|
19024
|
+
callProp(onDestroyed, item, key);
|
|
19025
|
+
})
|
|
19026
|
+
);
|
|
19027
|
+
const reused = [];
|
|
19028
|
+
if (prevTransitions)
|
|
19029
|
+
each(prevTransitions, (t, i) => {
|
|
19030
|
+
if (t.expired) {
|
|
19031
|
+
clearTimeout(t.expirationId);
|
|
19032
|
+
expired.push(t);
|
|
19033
|
+
} else {
|
|
19034
|
+
i = reused[i] = keys.indexOf(t.key);
|
|
19035
|
+
if (~i)
|
|
19036
|
+
transitions[i] = t;
|
|
19037
|
+
}
|
|
19038
|
+
});
|
|
19039
|
+
each(items, (item, i) => {
|
|
19040
|
+
if (!transitions[i]) {
|
|
19041
|
+
transitions[i] = {
|
|
19042
|
+
key: keys[i],
|
|
19043
|
+
item,
|
|
19044
|
+
phase: "mount" /* MOUNT */,
|
|
19045
|
+
ctrl: new Controller()
|
|
19046
|
+
};
|
|
19047
|
+
transitions[i].ctrl.item = item;
|
|
19048
|
+
}
|
|
19049
|
+
});
|
|
19050
|
+
if (reused.length) {
|
|
19051
|
+
let i = -1;
|
|
19052
|
+
const { leave } = propsFn ? propsFn() : props;
|
|
19053
|
+
each(reused, (keyIndex, prevIndex) => {
|
|
19054
|
+
const t = prevTransitions[prevIndex];
|
|
19055
|
+
if (~keyIndex) {
|
|
19056
|
+
i = transitions.indexOf(t);
|
|
19057
|
+
transitions[i] = { ...t, item: items[keyIndex] };
|
|
19058
|
+
} else if (leave) {
|
|
19059
|
+
transitions.splice(++i, 0, t);
|
|
19060
|
+
}
|
|
19061
|
+
});
|
|
19062
|
+
}
|
|
19063
|
+
if (is.fun(sort)) {
|
|
19064
|
+
transitions.sort((a, b) => sort(a.item, b.item));
|
|
19065
|
+
}
|
|
19066
|
+
let delay = -trail;
|
|
19067
|
+
const forceUpdate = useForceUpdate();
|
|
19068
|
+
const defaultProps = getDefaultProps(props);
|
|
19069
|
+
const changes = /* @__PURE__ */ new Map();
|
|
19070
|
+
const exitingTransitions = React.useRef(/* @__PURE__ */ new Map());
|
|
19071
|
+
const forceChange = React.useRef(false);
|
|
19072
|
+
each(transitions, (t, i) => {
|
|
19073
|
+
const key = t.key;
|
|
19074
|
+
const prevPhase = t.phase;
|
|
19075
|
+
const p = propsFn ? propsFn() : props;
|
|
19076
|
+
let to2;
|
|
19077
|
+
let phase;
|
|
19078
|
+
const propsDelay = callProp(p.delay || 0, key);
|
|
19079
|
+
if (prevPhase == "mount" /* MOUNT */) {
|
|
19080
|
+
to2 = p.enter;
|
|
19081
|
+
phase = "enter" /* ENTER */;
|
|
19082
|
+
} else {
|
|
19083
|
+
const isLeave = keys.indexOf(key) < 0;
|
|
19084
|
+
if (prevPhase != "leave" /* LEAVE */) {
|
|
19085
|
+
if (isLeave) {
|
|
19086
|
+
to2 = p.leave;
|
|
19087
|
+
phase = "leave" /* LEAVE */;
|
|
19088
|
+
} else if (to2 = p.update) {
|
|
19089
|
+
phase = "update" /* UPDATE */;
|
|
19090
|
+
} else
|
|
19091
|
+
return;
|
|
19092
|
+
} else if (!isLeave) {
|
|
19093
|
+
to2 = p.enter;
|
|
19094
|
+
phase = "enter" /* ENTER */;
|
|
19095
|
+
} else
|
|
19096
|
+
return;
|
|
19097
|
+
}
|
|
19098
|
+
to2 = callProp(to2, t.item, i);
|
|
19099
|
+
to2 = is.obj(to2) ? inferTo(to2) : { to: to2 };
|
|
19100
|
+
if (!to2.config) {
|
|
19101
|
+
const config2 = propsConfig || defaultProps.config;
|
|
19102
|
+
to2.config = callProp(config2, t.item, i, phase);
|
|
19103
|
+
}
|
|
19104
|
+
delay += trail;
|
|
19105
|
+
const payload = {
|
|
19106
|
+
...defaultProps,
|
|
19107
|
+
// we need to add our props.delay value you here.
|
|
19108
|
+
delay: propsDelay + delay,
|
|
19109
|
+
ref: propsRef,
|
|
19110
|
+
immediate: p.immediate,
|
|
19111
|
+
// This prevents implied resets.
|
|
19112
|
+
reset: false,
|
|
19113
|
+
// Merge any phase-specific props.
|
|
19114
|
+
...to2
|
|
19115
|
+
};
|
|
19116
|
+
if (phase == "enter" /* ENTER */ && is.und(payload.from)) {
|
|
19117
|
+
const p2 = propsFn ? propsFn() : props;
|
|
19118
|
+
const from = is.und(p2.initial) || prevTransitions ? p2.from : p2.initial;
|
|
19119
|
+
payload.from = callProp(from, t.item, i);
|
|
19120
|
+
}
|
|
19121
|
+
const { onResolve } = payload;
|
|
19122
|
+
payload.onResolve = (result) => {
|
|
19123
|
+
callProp(onResolve, result);
|
|
19124
|
+
const transitions2 = usedTransitions.current;
|
|
19125
|
+
const t2 = transitions2.find((t3) => t3.key === key);
|
|
19126
|
+
if (!t2)
|
|
19127
|
+
return;
|
|
19128
|
+
if (result.cancelled && t2.phase != "update" /* UPDATE */) {
|
|
19129
|
+
return;
|
|
19130
|
+
}
|
|
19131
|
+
if (t2.ctrl.idle) {
|
|
19132
|
+
const idle = transitions2.every((t3) => t3.ctrl.idle);
|
|
19133
|
+
if (t2.phase == "leave" /* LEAVE */) {
|
|
19134
|
+
const expiry = callProp(expires, t2.item);
|
|
19135
|
+
if (expiry !== false) {
|
|
19136
|
+
const expiryMs = expiry === true ? 0 : expiry;
|
|
19137
|
+
t2.expired = true;
|
|
19138
|
+
if (!idle && expiryMs > 0) {
|
|
19139
|
+
if (expiryMs <= 2147483647)
|
|
19140
|
+
t2.expirationId = setTimeout(forceUpdate, expiryMs);
|
|
19141
|
+
return;
|
|
19142
|
+
}
|
|
19143
|
+
}
|
|
19144
|
+
}
|
|
19145
|
+
if (idle && transitions2.some((t3) => t3.expired)) {
|
|
19146
|
+
exitingTransitions.current.delete(t2);
|
|
19147
|
+
if (exitBeforeEnter) {
|
|
19148
|
+
forceChange.current = true;
|
|
19149
|
+
}
|
|
19150
|
+
forceUpdate();
|
|
19151
|
+
}
|
|
19152
|
+
}
|
|
19153
|
+
};
|
|
19154
|
+
const springs = getSprings(t.ctrl, payload);
|
|
19155
|
+
if (phase === "leave" /* LEAVE */ && exitBeforeEnter) {
|
|
19156
|
+
exitingTransitions.current.set(t, { phase, springs, payload });
|
|
19157
|
+
} else {
|
|
19158
|
+
changes.set(t, { phase, springs, payload });
|
|
19159
|
+
}
|
|
19160
|
+
});
|
|
19161
|
+
const context = React.useContext(SpringContext);
|
|
19162
|
+
const prevContext = usePrev(context);
|
|
19163
|
+
const hasContext = context !== prevContext && hasProps(context);
|
|
19164
|
+
useIsomorphicLayoutEffect(() => {
|
|
19165
|
+
if (hasContext) {
|
|
19166
|
+
each(transitions, (t) => {
|
|
19167
|
+
t.ctrl.start({ default: context });
|
|
19168
|
+
});
|
|
19169
|
+
}
|
|
19170
|
+
}, [context]);
|
|
19171
|
+
each(changes, (_, t) => {
|
|
19172
|
+
if (exitingTransitions.current.size) {
|
|
19173
|
+
const ind = transitions.findIndex((state) => state.key === t.key);
|
|
19174
|
+
transitions.splice(ind, 1);
|
|
19175
|
+
}
|
|
19176
|
+
});
|
|
19177
|
+
useIsomorphicLayoutEffect(
|
|
19178
|
+
() => {
|
|
19179
|
+
each(
|
|
19180
|
+
exitingTransitions.current.size ? exitingTransitions.current : changes,
|
|
19181
|
+
({ phase, payload }, t) => {
|
|
19182
|
+
const { ctrl } = t;
|
|
19183
|
+
t.phase = phase;
|
|
19184
|
+
ref?.add(ctrl);
|
|
19185
|
+
if (hasContext && phase == "enter" /* ENTER */) {
|
|
19186
|
+
ctrl.start({ default: context });
|
|
19187
|
+
}
|
|
19188
|
+
if (payload) {
|
|
19189
|
+
replaceRef(ctrl, payload.ref);
|
|
19190
|
+
if ((ctrl.ref || ref) && !forceChange.current) {
|
|
19191
|
+
ctrl.update(payload);
|
|
19192
|
+
} else {
|
|
19193
|
+
ctrl.start(payload);
|
|
19194
|
+
if (forceChange.current) {
|
|
19195
|
+
forceChange.current = false;
|
|
19196
|
+
}
|
|
19197
|
+
}
|
|
19198
|
+
}
|
|
19199
|
+
}
|
|
19200
|
+
);
|
|
19201
|
+
},
|
|
19202
|
+
reset ? void 0 : deps
|
|
19203
|
+
);
|
|
19204
|
+
const renderTransitions = (render) => /* @__PURE__ */ React__namespace.createElement(React__namespace.Fragment, null, transitions.map((t, i) => {
|
|
19205
|
+
const { springs } = changes.get(t) || t.ctrl;
|
|
19206
|
+
const elem = render({ ...springs }, t.item, t, i);
|
|
19207
|
+
return elem && elem.type ? /* @__PURE__ */ React__namespace.createElement(
|
|
19208
|
+
elem.type,
|
|
19209
|
+
{
|
|
19210
|
+
...elem.props,
|
|
19211
|
+
key: is.str(t.key) || is.num(t.key) ? t.key : t.ctrl.id,
|
|
19212
|
+
ref: elem.ref
|
|
19213
|
+
}
|
|
19214
|
+
) : elem;
|
|
19215
|
+
}));
|
|
19216
|
+
return ref ? [renderTransitions, ref] : renderTransitions;
|
|
19217
|
+
}
|
|
19218
|
+
var nextKey = 1;
|
|
19219
|
+
function getKeys(items, { key, keys = key }, prevTransitions) {
|
|
19220
|
+
if (keys === null) {
|
|
19221
|
+
const reused = /* @__PURE__ */ new Set();
|
|
19222
|
+
return items.map((item) => {
|
|
19223
|
+
const t = prevTransitions && prevTransitions.find(
|
|
19224
|
+
(t2) => t2.item === item && t2.phase !== "leave" /* LEAVE */ && !reused.has(t2)
|
|
19225
|
+
);
|
|
19226
|
+
if (t) {
|
|
19227
|
+
reused.add(t);
|
|
19228
|
+
return t.key;
|
|
19229
|
+
}
|
|
19230
|
+
return nextKey++;
|
|
19231
|
+
});
|
|
19232
|
+
}
|
|
19233
|
+
return is.und(keys) ? items : is.fun(keys) ? items.map(keys) : toArray(keys);
|
|
19234
|
+
}
|
|
18981
19235
|
var Interpolation = class extends FrameValue {
|
|
18982
19236
|
constructor(source, args) {
|
|
18983
19237
|
super();
|
|
@@ -20691,7 +20945,7 @@ const ProgressIndicator = (props) => {
|
|
|
20691
20945
|
}, 100);
|
|
20692
20946
|
return () => clearTimeout(timeout);
|
|
20693
20947
|
}, [value]);
|
|
20694
|
-
return (React.createElement(Indicator, { className: `tw-ease-[cubic-bezier(0.65, 0, 0.35, 1)] tw-w-full tw-h-full tw-duration-[660ms] tw-flex tw-bg-sq-color-dark ${extraClasses}`, ...tooltipData, "data-qtip-text": tooltipProps.tooltip ? tooltipProps.tooltip : `${value}%`, "data-testid": `progress-bar-indicator-${testId ? testId : value}`, key: `${index}-${value}`, style: {
|
|
20948
|
+
return (React.createElement(Indicator, { className: `tw-ease-[cubic-bezier(0.65, 0, 0.35, 1)] tw-w-full tw-h-full tw-duration-[660ms] tw-flex tw-bg-sq-color-dark tw-justify-center tw-items-center ${extraClasses}`, ...tooltipData, "data-qtip-text": tooltipProps.tooltip ? tooltipProps.tooltip : `${value}%`, "data-testid": `progress-bar-indicator-${testId ? testId : value}`, key: `${index}-${value}`, style: {
|
|
20695
20949
|
// Background color will default to the theme color if undefined
|
|
20696
20950
|
backgroundColor: color ? color : undefined,
|
|
20697
20951
|
animation: 'width 660ms forwards',
|
|
@@ -20733,12 +20987,76 @@ const ButtonGroup = (props) => {
|
|
|
20733
20987
|
: ''} ${item.buttonProps.extraClassNames}`, onClick: () => onChange && onChange(item?.buttonProps?.value) })) : (React.createElement("div", { key: index, className: ` tw-flex tw-items-center tw-justify-center tw-rounded-none tw-ml-[-1px] active:tw-z-30 ${item?.extraClassNames || ''}` }, item?.element)))));
|
|
20734
20988
|
};
|
|
20735
20989
|
|
|
20990
|
+
/**
|
|
20991
|
+
* Carousel:
|
|
20992
|
+
* - Easily create a carousel with custom slides.
|
|
20993
|
+
* - Supports automatic sliding, navigation arrows, and slide indicators.
|
|
20994
|
+
*/
|
|
20995
|
+
const Carousel = ({ testId = 'carousel-id', activeIndex = 0, extraClassNames = '', onSlide = () => { }, autoSlide, showIndicators = true, continuous = true, interval = 4000, prevIcon = 'fc-arrow-dropdown tw-rotate-90', nextIcon = 'fc-arrow-dropdown -tw-rotate-90', showArrows = true, iconExtraClassNames = '', carouselItems = [], }) => {
|
|
20996
|
+
const [currentIndex, setCurrentIndex] = React.useState(activeIndex);
|
|
20997
|
+
const changeSlide = (nextIndex) => {
|
|
20998
|
+
const newIndex = nextIndex % carouselItems.length;
|
|
20999
|
+
setCurrentIndex(newIndex);
|
|
21000
|
+
onSlide(newIndex, newIndex > currentIndex ? 'right' : 'left');
|
|
21001
|
+
};
|
|
21002
|
+
React.useEffect(() => {
|
|
21003
|
+
if (autoSlide) {
|
|
21004
|
+
const currentInterval = setInterval(() => {
|
|
21005
|
+
if (continuous) {
|
|
21006
|
+
setCurrentIndex((prevCurrentIndex) => {
|
|
21007
|
+
onSlide((prevCurrentIndex + 1) % carouselItems.length, (prevCurrentIndex + 1) % carouselItems.length > prevCurrentIndex ? 'right' : 'left');
|
|
21008
|
+
return (prevCurrentIndex + 1) % carouselItems.length;
|
|
21009
|
+
});
|
|
21010
|
+
}
|
|
21011
|
+
else if (currentIndex === carouselItems.length - 1) {
|
|
21012
|
+
clearInterval(currentInterval);
|
|
21013
|
+
}
|
|
21014
|
+
else {
|
|
21015
|
+
changeSlide(currentIndex + 1);
|
|
21016
|
+
}
|
|
21017
|
+
}, interval);
|
|
21018
|
+
return () => clearInterval(currentInterval);
|
|
21019
|
+
}
|
|
21020
|
+
}, [autoSlide]);
|
|
21021
|
+
React.useEffect(() => {
|
|
21022
|
+
if (activeIndex && activeIndex !== currentIndex) {
|
|
21023
|
+
setCurrentIndex(activeIndex);
|
|
21024
|
+
}
|
|
21025
|
+
}, [activeIndex]);
|
|
21026
|
+
const transitions = useTransition([currentIndex], {
|
|
21027
|
+
keys: null,
|
|
21028
|
+
exitBeforeEnter: true,
|
|
21029
|
+
from: { transform: 'translate3d(100%,0,0)' },
|
|
21030
|
+
enter: { transform: 'translate3d(0%,0,0)' },
|
|
21031
|
+
leave: { transform: 'translate3d(0%,0,0)' },
|
|
21032
|
+
});
|
|
21033
|
+
const onBackClick = () => {
|
|
21034
|
+
if (currentIndex === 0 && !continuous) {
|
|
21035
|
+
return;
|
|
21036
|
+
}
|
|
21037
|
+
changeSlide((currentIndex - 1) % carouselItems.length);
|
|
21038
|
+
};
|
|
21039
|
+
const onForwardClick = () => {
|
|
21040
|
+
if (currentIndex === carouselItems.length - 1 && !continuous) {
|
|
21041
|
+
return;
|
|
21042
|
+
}
|
|
21043
|
+
changeSlide((currentIndex + 1) % carouselItems.length);
|
|
21044
|
+
};
|
|
21045
|
+
return (React.createElement("div", { "data-testid": testId, className: `tw-flex tw-flex-col tw-items-center tw-justify-center tw-w-full ${extraClassNames}` },
|
|
21046
|
+
React.createElement("div", { className: "tw-flex tw-items-center tw-w-full tw-h-max tw-gap-1" },
|
|
21047
|
+
showArrows && (React.createElement(Button, { icon: prevIcon, size: "lg", variant: "no-border", testId: "carousel-prev", extraClassNames: `${currentIndex === 0 && !continuous ? 'tw-invisible' : ''} ${iconExtraClassNames} tw-animate-fadeIn`, onClick: onBackClick })),
|
|
21048
|
+
transitions((style, i) => (React.createElement(animated.div, { "data-testid": `${testId}-${currentIndex}`, style: style }, carouselItems[currentIndex]))),
|
|
21049
|
+
showArrows && (React.createElement(Button, { icon: nextIcon, testId: "carousel-next", size: "lg", variant: "no-border", extraClassNames: `${currentIndex === carouselItems.length - 1 && !continuous ? 'tw-invisible' : ''} ${iconExtraClassNames} tw-animate-fadeIn`, onClick: onForwardClick }))),
|
|
21050
|
+
showIndicators && (React.createElement("div", { className: "tw-flex tw-gap-1 tw-mt-2" }, carouselItems.map((_, i) => (React.createElement("div", { key: i, className: `tw-w-2 tw-h-2 tw-rounded-full tw-cursor-pointer ${i === currentIndex ? 'tw-bg-sq-color-dark' : 'tw-bg-sq-darkish-gray'}`, onClick: () => changeSlide(i) })))))));
|
|
21051
|
+
};
|
|
21052
|
+
|
|
20736
21053
|
exports.Accordion = Accordion;
|
|
20737
21054
|
exports.Alert = Alert;
|
|
20738
21055
|
exports.Button = Button;
|
|
20739
21056
|
exports.ButtonGroup = ButtonGroup;
|
|
20740
21057
|
exports.ButtonWithDropdown = ButtonWithDropdown;
|
|
20741
21058
|
exports.ButtonWithPopover = ButtonWithPopover;
|
|
21059
|
+
exports.Carousel = Carousel;
|
|
20742
21060
|
exports.Checkbox = Checkbox;
|
|
20743
21061
|
exports.Collapse = Collapse;
|
|
20744
21062
|
exports.Icon = Icon;
|