@sisense/sdk-shared-ui 1.28.0 → 1.30.0

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.
Files changed (87) hide show
  1. package/dist/Breadcrumbs-B46ViOSv.cjs +3 -0
  2. package/dist/Breadcrumbs-CQNCIJ2Y.js +301 -0
  3. package/dist/Button-CoMaroSC.cjs +1 -0
  4. package/dist/Button-D5ZAS_sd.js +569 -0
  5. package/dist/ButtonBase-Camgk6s8.cjs +74 -0
  6. package/dist/{createSvgIcon-CXJWSg3i.js → ButtonBase-DPVWpC8-.js} +331 -350
  7. package/dist/{Checkbox-CrbGw8d7.js → Checkbox-3bG1OLg3.js} +21 -18
  8. package/dist/Checkbox-oJOn5Vb9.cjs +1 -0
  9. package/dist/{Icon-B1V-T6UH.cjs → Icon-CqoYg88-.cjs} +1 -1
  10. package/dist/{Icon-Cs6oGRgo.js → Icon-D0uZg6iJ.js} +31 -10
  11. package/dist/{SvgIcon-SnObJHZS.cjs → SvgIcon-Dg-EBYZz.cjs} +1 -1
  12. package/dist/{SvgIcon-LwOuESoH.js → SvgIcon-DsAvI5iY.js} +1 -1
  13. package/dist/{TablePagination-B8I5QURH.js → TablePagination-DUkJaWJG.js} +2133 -2304
  14. package/dist/TablePagination-Yp8eKLZB.cjs +15 -0
  15. package/dist/{ThemeProvider-aq1EWT1u.js → ThemeProvider-BCsnqK18.js} +1198 -1154
  16. package/dist/ThemeProvider-BjBWRt7C.cjs +114 -0
  17. package/dist/{Tooltip-vVc6Lxew.js → Tooltip-B0-7TF8b.js} +15 -13
  18. package/dist/Tooltip-DE1hlnS3.cjs +7 -0
  19. package/dist/{Typography-C891hjk2.js → Typography-BGFgTnYN.js} +3 -2
  20. package/dist/{Typography-vldQClJj.cjs → Typography-CGsd6zC4.cjs} +1 -1
  21. package/dist/createSvgIcon-DDrcw4wZ.cjs +1 -0
  22. package/dist/createSvgIcon-rAujRRtd.js +17 -0
  23. package/dist/deepmerge-BuAjuQR6.cjs +17 -0
  24. package/dist/deepmerge-DNqbOtFI.js +177 -0
  25. package/dist/index.cjs +1 -1
  26. package/dist/index.js +30 -24
  27. package/dist/integerPropType-B8hl-7D0.js +180 -0
  28. package/dist/integerPropType-BGlNA6vX.cjs +17 -0
  29. package/dist/lib/Breadcrumbs/Breadcrumbs.cjs +1 -0
  30. package/dist/lib/Breadcrumbs/Breadcrumbs.d.ts +16 -0
  31. package/dist/lib/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
  32. package/dist/lib/Breadcrumbs/Breadcrumbs.js +7 -0
  33. package/dist/lib/Breadcrumbs/index.d.ts +5 -0
  34. package/dist/lib/Breadcrumbs/index.d.ts.map +1 -0
  35. package/dist/lib/Breadcrumbs/themes/breadcrumbsTheme.d.ts +4 -0
  36. package/dist/lib/Breadcrumbs/themes/breadcrumbsTheme.d.ts.map +1 -0
  37. package/dist/lib/Breadcrumbs/themes/index.d.ts +2 -0
  38. package/dist/lib/Breadcrumbs/themes/index.d.ts.map +1 -0
  39. package/dist/lib/Button/Button.cjs +1 -0
  40. package/dist/lib/Button/Button.d.ts +10 -0
  41. package/dist/lib/Button/Button.d.ts.map +1 -0
  42. package/dist/lib/Button/Button.js +7 -0
  43. package/dist/lib/Button/index.d.ts +5 -0
  44. package/dist/lib/Button/index.d.ts.map +1 -0
  45. package/dist/lib/Button/themes/buttonsTheme.d.ts +11 -0
  46. package/dist/lib/Button/themes/buttonsTheme.d.ts.map +1 -0
  47. package/dist/lib/Button/themes/index.d.ts +2 -0
  48. package/dist/lib/Button/themes/index.d.ts.map +1 -0
  49. package/dist/lib/Checkbox/Checkbox.cjs +1 -1
  50. package/dist/lib/Checkbox/Checkbox.js +1 -1
  51. package/dist/lib/DEPRECATED_Button/DEPRECATED_Button.d.ts +2 -2
  52. package/dist/lib/DEPRECATED_Button/DEPRECATED_Button.d.ts.map +1 -1
  53. package/dist/lib/Icon/Icon.cjs +1 -1
  54. package/dist/lib/Icon/Icon.d.ts +1 -1
  55. package/dist/lib/Icon/Icon.d.ts.map +1 -1
  56. package/dist/lib/Icon/Icon.js +1 -1
  57. package/dist/lib/TablePagination/TablePagination.cjs +1 -1
  58. package/dist/lib/TablePagination/TablePagination.js +1 -1
  59. package/dist/lib/Tooltip/Tooltip.cjs +1 -1
  60. package/dist/lib/Tooltip/Tooltip.js +2 -2
  61. package/dist/lib/Typography/Typography.cjs +1 -1
  62. package/dist/lib/Typography/Typography.js +2 -2
  63. package/dist/lib/index.d.ts +2 -0
  64. package/dist/lib/index.d.ts.map +1 -1
  65. package/dist/package.json +18 -1
  66. package/dist/useControlled-BYdyS7Pn.js +31 -0
  67. package/dist/useControlled-Ysk4KqoX.cjs +3 -0
  68. package/dist/useFormControl-CatNKXAi.js +10 -0
  69. package/dist/useFormControl-haP0iPhl.cjs +1 -0
  70. package/dist/useSlot-7x9FkqBW.js +720 -0
  71. package/dist/useSlot-B_P_o-pz.cjs +1 -0
  72. package/dist/useSlotProps-BpXHXb21.js +102 -0
  73. package/dist/useSlotProps-COvANhgg.cjs +1 -0
  74. package/dist/{useTheme-DJmNR5EL.cjs → useTheme-BN6DGaDZ.cjs} +1 -1
  75. package/dist/{useTheme-CtIZL8WJ.js → useTheme-eCVqNAnk.js} +1 -1
  76. package/dist/useTimeout-BG7TPjEm.js +92 -0
  77. package/dist/useTimeout-DQN9lwd_.cjs +2 -0
  78. package/package.json +18 -1
  79. package/dist/Checkbox-Dy9BTXfS.cjs +0 -1
  80. package/dist/TablePagination-DH0TZ21v.cjs +0 -31
  81. package/dist/ThemeProvider-sqppyE-5.cjs +0 -114
  82. package/dist/Tooltip-Dokek6y8.cjs +0 -7
  83. package/dist/TransitionGroupContext-BlR3HYBG.cjs +0 -4
  84. package/dist/TransitionGroupContext-Ci_clMyv.js +0 -120
  85. package/dist/createSvgIcon-DF4qzIJY.cjs +0 -74
  86. package/dist/useSlot-BfQr8KCN.js +0 -803
  87. package/dist/useSlot-C3-OaWva.cjs +0 -1
@@ -1,120 +0,0 @@
1
- var m = Object.defineProperty;
2
- var E = (e, t, n) => t in e ? m(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
- var c = (e, t, n) => E(e, typeof t != "symbol" ? t + "" : t, n);
4
- import { P as i } from "./index-D0lMis-I.js";
5
- import * as o from "react";
6
- import y from "react";
7
- import { a as I } from "./setPrototypeOf-CEtRTXk2.js";
8
- const j = i.oneOfType([i.func, i.object]), v = typeof window < "u" ? o.useLayoutEffect : o.useEffect;
9
- function M(e, t) {
10
- return process.env.NODE_ENV === "production" ? () => null : function(...r) {
11
- return e(...r) || t(...r);
12
- };
13
- }
14
- function T(e, t) {
15
- typeof e == "function" ? e(t) : e && (e.current = t);
16
- }
17
- function V({
18
- controlled: e,
19
- default: t,
20
- name: n,
21
- state: r = "value"
22
- }) {
23
- const {
24
- current: s
25
- } = o.useRef(e !== void 0), [a, d] = o.useState(t), p = s ? e : a;
26
- if (process.env.NODE_ENV !== "production") {
27
- o.useEffect(() => {
28
- s !== (e !== void 0) && console.error([`MUI: A component is changing the ${s ? "" : "un"}controlled ${r} state of ${n} to be ${s ? "un" : ""}controlled.`, "Elements should not switch from uncontrolled to controlled (or vice versa).", `Decide between using a controlled or uncontrolled ${n} element for the lifetime of the component.`, "The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.", "More info: https://fb.me/react-controlled-components"].join(`
29
- `));
30
- }, [r, n, e]);
31
- const {
32
- current: u
33
- } = o.useRef(t);
34
- o.useEffect(() => {
35
- !s && !Object.is(u, t) && console.error([`MUI: A component is changing the default ${r} state of an uncontrolled ${n} after being initialized. To suppress this warning opt to use a controlled ${n}.`].join(`
36
- `));
37
- }, [JSON.stringify(t)]);
38
- }
39
- const h = o.useCallback((u) => {
40
- s || d(u);
41
- }, []);
42
- return [p, h];
43
- }
44
- function _(e) {
45
- const t = o.useRef(e);
46
- return v(() => {
47
- t.current = e;
48
- }), o.useRef((...n) => (
49
- // @ts-expect-error hide `this`
50
- (0, t.current)(...n)
51
- )).current;
52
- }
53
- function D(...e) {
54
- return o.useMemo(() => e.every((t) => t == null) ? null : (t) => {
55
- e.forEach((n) => {
56
- T(n, t);
57
- });
58
- }, e);
59
- }
60
- const l = {};
61
- function b(e, t) {
62
- const n = o.useRef(l);
63
- return n.current === l && (n.current = e(t)), n;
64
- }
65
- const g = [];
66
- function w(e) {
67
- o.useEffect(e, g);
68
- }
69
- class f {
70
- constructor() {
71
- c(this, "currentId", null);
72
- c(this, "clear", () => {
73
- this.currentId !== null && (clearTimeout(this.currentId), this.currentId = null);
74
- });
75
- c(this, "disposeEffect", () => this.clear);
76
- }
77
- static create() {
78
- return new f();
79
- }
80
- /**
81
- * Executes `fn` after `delay`, clearing any previously scheduled call.
82
- */
83
- start(t, n) {
84
- this.clear(), this.currentId = setTimeout(() => {
85
- this.currentId = null, n();
86
- }, t);
87
- }
88
- }
89
- function U() {
90
- const e = b(f.create).current;
91
- return w(e.disposeEffect), e;
92
- }
93
- function k(e) {
94
- try {
95
- return e.matches(":focus-visible");
96
- } catch {
97
- process.env.NODE_ENV !== "production" && !/jsdom/.test(window.navigator.userAgent) && console.warn(["MUI: The `:focus-visible` pseudo class is not supported in this browser.", "Some components rely on this feature to work properly."].join(`
98
- `));
99
- }
100
- return !1;
101
- }
102
- function A(e, t) {
103
- e.prototype = Object.create(t.prototype), e.prototype.constructor = e, I(e, t);
104
- }
105
- const L = y.createContext(null);
106
- export {
107
- L as T,
108
- A as _,
109
- b as a,
110
- U as b,
111
- M as c,
112
- D as d,
113
- _ as e,
114
- v as f,
115
- f as g,
116
- k as i,
117
- j as r,
118
- T as s,
119
- V as u
120
- };
@@ -1,74 +0,0 @@
1
- "use strict";var Ee=Object.defineProperty;var ve=(n,e,t)=>e in n?Ee(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var oe=(n,e,t)=>ve(n,typeof e!="symbol"?e+"":e,t);const P=require("react"),o=require("./index-B-zZeebW.cjs"),h=require("./ThemeProvider-sqppyE-5.cjs"),k=require("react/jsx-runtime"),b=require("./TransitionGroupContext-BlR3HYBG.cjs"),Ne=require("./setPrototypeOf-BmHXYjK5.cjs"),Ve=require("./extends-q0Hkx4pQ.cjs"),De=require("./assertThisInitialized-BSnhOY1M.cjs"),re=require("./SvgIcon-SnObJHZS.cjs");function Se(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const l=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,l.get?l:{enumerable:!0,get:()=>n[t]})}}return e.default=n,Object.freeze(e)}const f=Se(P);function we(n){const{prototype:e={}}=n;return!!e.isReactComponent}function je(n,e,t,l,r){const s=n[e],i=r||e;if(s==null||typeof window>"u")return null;let a;return typeof s=="function"&&!we(s)&&(a="Did you accidentally provide a plain function component instead?"),a!==void 0?new Error(`Invalid ${l} \`${i}\` supplied to \`${t}\`. Expected an element type that can hold a ref. ${a} For more information see https://mui.com/r/caveat-with-refs-guide`):null}const se=b.chainPropTypes(o.PropTypes.elementType,je),Z=f.createContext(void 0);process.env.NODE_ENV!=="production"&&(Z.displayName="FormControlContext");function ke(){return f.useContext(Z)}class G{constructor(){oe(this,"mountEffect",()=>{this.shouldMount&&!this.didMount&&this.ref.current!==null&&(this.didMount=!0,this.mounted.resolve())});this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}static create(){return new G}static use(){const e=b.useLazyRef(G.create).current,[t,l]=f.useState(!1);return e.shouldMount=t,e.setShouldMount=l,f.useEffect(e.mountEffect,[t]),e}mount(){return this.mounted||(this.mounted=Be(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}start(...e){this.mount().then(()=>{var t;return(t=this.ref.current)==null?void 0:t.start(...e)})}stop(...e){this.mount().then(()=>{var t;return(t=this.ref.current)==null?void 0:t.stop(...e)})}pulsate(...e){this.mount().then(()=>{var t;return(t=this.ref.current)==null?void 0:t.pulsate(...e)})}}function Oe(){return G.use()}function Be(){let n,e;const t=new Promise((l,r)=>{n=l,e=r});return t.resolve=n,t.reject=e,t}function ee(n,e){var t=function(s){return e&&P.isValidElement(s)?e(s):s},l=Object.create(null);return n&&P.Children.map(n,function(r){return r}).forEach(function(r){l[r.key]=t(r)}),l}function Fe(n,e){n=n||{},e=e||{};function t(m){return m in e?e[m]:n[m]}var l=Object.create(null),r=[];for(var s in n)s in e?r.length&&(l[s]=r,r=[]):r.push(s);var i,a={};for(var c in e){if(l[c])for(i=0;i<l[c].length;i++){var d=l[c][i];a[l[c][i]]=t(d)}a[c]=t(c)}for(i=0;i<r.length;i++)a[r[i]]=t(r[i]);return a}function L(n,e,t){return t[e]!=null?t[e]:n.props[e]}function Ie(n,e){return ee(n.children,function(t){return P.cloneElement(t,{onExited:e.bind(null,t),in:!0,appear:L(t,"appear",n),enter:L(t,"enter",n),exit:L(t,"exit",n)})})}function Le(n,e,t){var l=ee(n.children),r=Fe(e,l);return Object.keys(r).forEach(function(s){var i=r[s];if(P.isValidElement(i)){var a=s in e,c=s in l,d=e[s],m=P.isValidElement(d)&&!d.props.in;c&&(!a||m)?r[s]=P.cloneElement(i,{onExited:t.bind(null,i),in:!0,exit:L(i,"exit",n),enter:L(i,"enter",n)}):!c&&a&&!m?r[s]=P.cloneElement(i,{in:!1}):c&&a&&P.isValidElement(d)&&(r[s]=P.cloneElement(i,{onExited:t.bind(null,i),in:d.props.in,exit:L(i,"exit",n),enter:L(i,"enter",n)}))}}),r}var $e=Object.values||function(n){return Object.keys(n).map(function(e){return n[e]})},qe={component:"div",childFactory:function(e){return e}},te=function(n){b._inheritsLoose(e,n);function e(l,r){var s;s=n.call(this,l,r)||this;var i=s.handleExited.bind(De._assertThisInitialized(s));return s.state={contextValue:{isMounting:!0},handleExited:i,firstRender:!0},s}var t=e.prototype;return t.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},t.componentWillUnmount=function(){this.mounted=!1},e.getDerivedStateFromProps=function(r,s){var i=s.children,a=s.handleExited,c=s.firstRender;return{children:c?Ie(r,a):Le(r,i,a),firstRender:!1}},t.handleExited=function(r,s){var i=ee(this.props.children);r.key in i||(r.props.onExited&&r.props.onExited(s),this.mounted&&this.setState(function(a){var c=Ve._extends({},a.children);return delete c[r.key],{children:c}}))},t.render=function(){var r=this.props,s=r.component,i=r.childFactory,a=Ne._objectWithoutPropertiesLoose(r,["component","childFactory"]),c=this.state.contextValue,d=$e(this.state.children).map(i);return delete a.appear,delete a.enter,delete a.exit,s===null?P.createElement(b.TransitionGroupContext.Provider,{value:c},d):P.createElement(b.TransitionGroupContext.Provider,{value:c},P.createElement(s,a,d))},e}(P.Component);te.propTypes=process.env.NODE_ENV!=="production"?{component:o.PropTypes.any,children:o.PropTypes.node,appear:o.PropTypes.bool,enter:o.PropTypes.bool,exit:o.PropTypes.bool,childFactory:o.PropTypes.func}:{};te.defaultProps=qe;function ie(n){const{className:e,classes:t,pulsate:l=!1,rippleX:r,rippleY:s,rippleSize:i,in:a,onExited:c,timeout:d}=n,[m,y]=f.useState(!1),x=h.clsx(e,t.ripple,t.rippleVisible,l&&t.ripplePulsate),D={width:i,height:i,top:-(i/2)+s,left:-(i/2)+r},g=h.clsx(t.child,m&&t.childLeaving,l&&t.childPulsate);return!a&&!m&&y(!0),f.useEffect(()=>{if(!a&&c!=null){const O=setTimeout(c,d);return()=>{clearTimeout(O)}}},[c,a,d]),k.jsx("span",{className:x,style:D,children:k.jsx("span",{className:g})})}process.env.NODE_ENV!=="production"&&(ie.propTypes={classes:o.PropTypes.object.isRequired,className:o.PropTypes.string,in:o.PropTypes.bool,onExited:o.PropTypes.func,pulsate:o.PropTypes.bool,rippleSize:o.PropTypes.number,rippleX:o.PropTypes.number,rippleY:o.PropTypes.number,timeout:o.PropTypes.number.isRequired});const R=h.generateUtilityClasses("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Q=550,Ue=80,ze=h.keyframes`
2
- 0% {
3
- transform: scale(0);
4
- opacity: 0.1;
5
- }
6
-
7
- 100% {
8
- transform: scale(1);
9
- opacity: 0.3;
10
- }
11
- `,_e=h.keyframes`
12
- 0% {
13
- opacity: 1;
14
- }
15
-
16
- 100% {
17
- opacity: 0;
18
- }
19
- `,Ae=h.keyframes`
20
- 0% {
21
- transform: scale(1);
22
- }
23
-
24
- 50% {
25
- transform: scale(0.92);
26
- }
27
-
28
- 100% {
29
- transform: scale(1);
30
- }
31
- `,Xe=h.styled("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),Ye=h.styled(ie,{name:"MuiTouchRipple",slot:"Ripple"})`
32
- opacity: 0;
33
- position: absolute;
34
-
35
- &.${R.rippleVisible} {
36
- opacity: 0.3;
37
- transform: scale(1);
38
- animation-name: ${ze};
39
- animation-duration: ${Q}ms;
40
- animation-timing-function: ${({theme:n})=>n.transitions.easing.easeInOut};
41
- }
42
-
43
- &.${R.ripplePulsate} {
44
- animation-duration: ${({theme:n})=>n.transitions.duration.shorter}ms;
45
- }
46
-
47
- & .${R.child} {
48
- opacity: 1;
49
- display: block;
50
- width: 100%;
51
- height: 100%;
52
- border-radius: 50%;
53
- background-color: currentColor;
54
- }
55
-
56
- & .${R.childLeaving} {
57
- opacity: 0;
58
- animation-name: ${_e};
59
- animation-duration: ${Q}ms;
60
- animation-timing-function: ${({theme:n})=>n.transitions.easing.easeInOut};
61
- }
62
-
63
- & .${R.childPulsate} {
64
- position: absolute;
65
- /* @noflip */
66
- left: 0px;
67
- top: 0;
68
- animation-name: ${Ae};
69
- animation-duration: 2500ms;
70
- animation-timing-function: ${({theme:n})=>n.transitions.easing.easeInOut};
71
- animation-iteration-count: infinite;
72
- animation-delay: 200ms;
73
- }
74
- `,le=f.forwardRef(function(e,t){const l=h.useDefaultProps({props:e,name:"MuiTouchRipple"}),{center:r=!1,classes:s={},className:i,...a}=l,[c,d]=f.useState([]),m=f.useRef(0),y=f.useRef(null);f.useEffect(()=>{y.current&&(y.current(),y.current=null)},[c]);const x=f.useRef(!1),D=b.useTimeout(),g=f.useRef(null),O=f.useRef(null),v=f.useCallback(p=>{const{pulsate:M,rippleX:C,rippleY:U,rippleSize:B,cb:z}=p;d(E=>[...E,k.jsx(Ye,{classes:{ripple:h.clsx(s.ripple,R.ripple),rippleVisible:h.clsx(s.rippleVisible,R.rippleVisible),ripplePulsate:h.clsx(s.ripplePulsate,R.ripplePulsate),child:h.clsx(s.child,R.child),childLeaving:h.clsx(s.childLeaving,R.childLeaving),childPulsate:h.clsx(s.childPulsate,R.childPulsate)},timeout:Q,pulsate:M,rippleX:C,rippleY:U,rippleSize:B},m.current)]),m.current+=1,y.current=z},[s]),$=f.useCallback((p={},M={},C=()=>{})=>{const{pulsate:U=!1,center:B=r||M.pulsate,fakeElement:z=!1}=M;if((p==null?void 0:p.type)==="mousedown"&&x.current){x.current=!1;return}(p==null?void 0:p.type)==="touchstart"&&(x.current=!0);const E=z?null:O.current,S=E?E.getBoundingClientRect():{width:0,height:0,left:0,top:0};let w,N,j;if(B||p===void 0||p.clientX===0&&p.clientY===0||!p.clientX&&!p.touches)w=Math.round(S.width/2),N=Math.round(S.height/2);else{const{clientX:_,clientY:F}=p.touches&&p.touches.length>0?p.touches[0]:p;w=Math.round(_-S.left),N=Math.round(F-S.top)}if(B)j=Math.sqrt((2*S.width**2+S.height**2)/3),j%2===0&&(j+=1);else{const _=Math.max(Math.abs((E?E.clientWidth:0)-w),w)*2+2,F=Math.max(Math.abs((E?E.clientHeight:0)-N),N)*2+2;j=Math.sqrt(_**2+F**2)}p!=null&&p.touches?g.current===null&&(g.current=()=>{v({pulsate:U,rippleX:w,rippleY:N,rippleSize:j,cb:C})},D.start(Ue,()=>{g.current&&(g.current(),g.current=null)})):v({pulsate:U,rippleX:w,rippleY:N,rippleSize:j,cb:C})},[r,v,D]),K=f.useCallback(()=>{$({},{pulsate:!0})},[$]),q=f.useCallback((p,M)=>{if(D.clear(),(p==null?void 0:p.type)==="touchend"&&g.current){g.current(),g.current=null,D.start(0,()=>{q(p,M)});return}g.current=null,d(C=>C.length>0?C.slice(1):C),y.current=M},[D]);return f.useImperativeHandle(t,()=>({pulsate:K,start:$,stop:q}),[K,$,q]),k.jsx(Xe,{className:h.clsx(R.root,s.root,i),ref:O,...a,children:k.jsx(te,{component:null,exit:!0,children:c})})});process.env.NODE_ENV!=="production"&&(le.propTypes={center:o.PropTypes.bool,classes:o.PropTypes.object,className:o.PropTypes.string});function Ke(n){return h.generateUtilityClass("MuiButtonBase",n)}const He=h.generateUtilityClasses("MuiButtonBase",["root","disabled","focusVisible"]),We=n=>{const{disabled:e,focusVisible:t,focusVisibleClassName:l,classes:r}=n,s={root:["root",e&&"disabled",t&&"focusVisible"]},i=h.composeClasses(s,Ke,r);return t&&l&&(i.root+=` ${l}`),i},Ge=h.styled("button",{name:"MuiButtonBase",slot:"Root",overridesResolver:(n,e)=>e.root})({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"},[`&.${He.disabled}`]:{pointerEvents:"none",cursor:"default"},"@media print":{colorAdjust:"exact"}}),ue=f.forwardRef(function(e,t){const l=h.useDefaultProps({props:e,name:"MuiButtonBase"}),{action:r,centerRipple:s=!1,children:i,className:a,component:c="button",disabled:d=!1,disableRipple:m=!1,disableTouchRipple:y=!1,focusRipple:x=!1,focusVisibleClassName:D,LinkComponent:g="a",onBlur:O,onClick:v,onContextMenu:$,onDragLeave:K,onFocus:q,onFocusVisible:p,onKeyDown:M,onKeyUp:C,onMouseDown:U,onMouseLeave:B,onMouseUp:z,onTouchEnd:E,onTouchMove:S,onTouchStart:w,tabIndex:N=0,TouchRippleProps:j,touchRippleRef:_,type:F,...A}=l,X=f.useRef(null),T=Oe(),ae=b.useForkRef(T.ref,_),[I,H]=f.useState(!1);d&&I&&H(!1),f.useImperativeHandle(r,()=>({focusVisible:()=>{H(!0),X.current.focus()}}),[]);const ce=T.shouldMount&&!m&&!d;f.useEffect(()=>{I&&x&&!m&&T.pulsate()},[m,x,I,T]);const pe=V(T,"start",U,y),fe=V(T,"stop",$,y),de=V(T,"stop",K,y),he=V(T,"stop",z,y),me=V(T,"stop",u=>{I&&u.preventDefault(),B&&B(u)},y),ye=V(T,"start",w,y),Te=V(T,"stop",E,y),be=V(T,"stop",S,y),Pe=V(T,"stop",u=>{b.isFocusVisible(u.target)||H(!1),O&&O(u)},!1),ge=b.useEventCallback(u=>{X.current||(X.current=u.currentTarget),b.isFocusVisible(u.target)&&(H(!0),p&&p(u)),q&&q(u)}),J=()=>{const u=X.current;return c&&c!=="button"&&!(u.tagName==="A"&&u.href)},Re=b.useEventCallback(u=>{x&&!u.repeat&&I&&u.key===" "&&T.stop(u,()=>{T.start(u)}),u.target===u.currentTarget&&J()&&u.key===" "&&u.preventDefault(),M&&M(u),u.target===u.currentTarget&&J()&&u.key==="Enter"&&!d&&(u.preventDefault(),v&&v(u))}),xe=b.useEventCallback(u=>{x&&u.key===" "&&I&&!u.defaultPrevented&&T.stop(u,()=>{T.pulsate(u)}),C&&C(u),v&&u.target===u.currentTarget&&J()&&u.key===" "&&!u.defaultPrevented&&v(u)});let W=c;W==="button"&&(A.href||A.to)&&(W=g);const Y={};W==="button"?(Y.type=F===void 0?"button":F,Y.disabled=d):(!A.href&&!A.to&&(Y.role="button"),d&&(Y["aria-disabled"]=d));const Ce=b.useForkRef(t,X),ne={...l,centerRipple:s,component:c,disabled:d,disableRipple:m,disableTouchRipple:y,focusRipple:x,tabIndex:N,focusVisible:I},Me=We(ne);return k.jsxs(Ge,{as:W,className:h.clsx(Me.root,a),ownerState:ne,onBlur:Pe,onClick:v,onContextMenu:fe,onFocus:ge,onKeyDown:Re,onKeyUp:xe,onMouseDown:pe,onMouseLeave:me,onMouseUp:he,onDragLeave:de,onTouchEnd:Te,onTouchMove:be,onTouchStart:ye,ref:Ce,tabIndex:d?-1:N,type:F,...Y,...A,children:[i,ce?k.jsx(le,{ref:ae,center:s,...j}):null]})});function V(n,e,t,l=!1){return b.useEventCallback(r=>(t&&t(r),l||n[e](r),!0))}process.env.NODE_ENV!=="production"&&(ue.propTypes={action:b.refType,centerRipple:o.PropTypes.bool,children:o.PropTypes.node,classes:o.PropTypes.object,className:o.PropTypes.string,component:se,disabled:o.PropTypes.bool,disableRipple:o.PropTypes.bool,disableTouchRipple:o.PropTypes.bool,focusRipple:o.PropTypes.bool,focusVisibleClassName:o.PropTypes.string,href:o.PropTypes.any,LinkComponent:o.PropTypes.elementType,onBlur:o.PropTypes.func,onClick:o.PropTypes.func,onContextMenu:o.PropTypes.func,onDragLeave:o.PropTypes.func,onFocus:o.PropTypes.func,onFocusVisible:o.PropTypes.func,onKeyDown:o.PropTypes.func,onKeyUp:o.PropTypes.func,onMouseDown:o.PropTypes.func,onMouseLeave:o.PropTypes.func,onMouseUp:o.PropTypes.func,onTouchEnd:o.PropTypes.func,onTouchMove:o.PropTypes.func,onTouchStart:o.PropTypes.func,sx:o.PropTypes.oneOfType([o.PropTypes.arrayOf(o.PropTypes.oneOfType([o.PropTypes.func,o.PropTypes.object,o.PropTypes.bool])),o.PropTypes.func,o.PropTypes.object]),tabIndex:o.PropTypes.number,TouchRippleProps:o.PropTypes.object,touchRippleRef:o.PropTypes.oneOfType([o.PropTypes.func,o.PropTypes.shape({current:o.PropTypes.shape({pulsate:o.PropTypes.func.isRequired,start:o.PropTypes.func.isRequired,stop:o.PropTypes.func.isRequired})})]),type:o.PropTypes.oneOfType([o.PropTypes.oneOf(["button","reset","submit"]),o.PropTypes.string])});function Je(n,e){function t(l,r){return k.jsx(re.SvgIcon,{"data-testid":`${e}Icon`,ref:r,...l,children:n})}return process.env.NODE_ENV!=="production"&&(t.displayName=`${e}Icon`),t.muiName=re.SvgIcon.muiName,f.memo(f.forwardRef(t))}exports.ButtonBase=ue;exports.FormControlContext=Z;exports.createSvgIcon=Je;exports.elementTypeAcceptingRef=se;exports.useFormControl=ke;