@cgi-learning-hub/ui 0.0.1-dev.1706708255 → 0.0.1-dev.1706796454

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 (28) hide show
  1. package/dist/TransitionGroupContext-SCyurvOT.js +4197 -0
  2. package/dist/assets/index.css +1 -1
  3. package/dist/components/Button/Button.d.ts +3 -3
  4. package/dist/components/Button/Button.js +1251 -26
  5. package/dist/components/Button/Button.stories.d.ts +4 -3
  6. package/dist/components/Button/Button.stories.js +16 -6
  7. package/dist/components/SearchField/SearchField.d.ts +7 -0
  8. package/dist/components/SearchField/SearchField.js +26605 -0
  9. package/dist/components/SearchField/index.d.ts +2 -0
  10. package/dist/components/SearchField/index.js +4 -0
  11. package/dist/components/index.d.ts +1 -2
  12. package/dist/components/index.js +4 -6
  13. package/dist/createSvgIcon-3ijLxpup.js +182 -0
  14. package/dist/index.js +4 -6
  15. package/package.json +2 -1
  16. package/dist/Button-t2XOOBeu.js +0 -5460
  17. package/dist/components/AnotherComponent/AnotherComponent.d.ts +0 -2
  18. package/dist/components/AnotherComponent/AnotherComponent.js +0 -5
  19. package/dist/components/AnotherComponent/AnotherComponent.stories.d.ts +0 -5
  20. package/dist/components/AnotherComponent/AnotherComponent.stories.js +0 -22
  21. package/dist/components/AnotherComponent/index.d.ts +0 -2
  22. package/dist/components/AnotherComponent/index.js +0 -4
  23. package/dist/components/BasicButtons/BasicButtons.d.ts +0 -2
  24. package/dist/components/BasicButtons/BasicButtons.js +0 -198
  25. package/dist/components/BasicButtons/BasicButtons.stories.d.ts +0 -5
  26. package/dist/components/BasicButtons/BasicButtons.stories.js +0 -22
  27. package/dist/components/BasicButtons/index.d.ts +0 -2
  28. package/dist/components/BasicButtons/index.js +0 -4
@@ -1,35 +1,1260 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import "react";
3
- import { C as s, c as a, P as i, M as d } from "../../Button-t2XOOBeu.js";
4
- let r;
5
- typeof document == "object" && (r = a({
6
- key: "css",
7
- prepend: !0
8
- }));
9
- function c(o) {
1
+ import { jsx as P, jsxs as Ie } from "react/jsx-runtime";
2
+ import { f as it, b as m, _ as ne, T as Ce, P as n, d as M, a as de, k as fe, s as A, u as he, g as Ne, h as Te, i as H, r as rt, j as st, e as $e, l as at, c as I, m as J, n as lt } from "../../TransitionGroupContext-SCyurvOT.js";
3
+ import * as u from "react";
4
+ import Q, { Children as ct, isValidElement as ee, cloneElement as te } from "react";
5
+ class be {
6
+ constructor() {
7
+ this.currentId = 0, this.clear = () => {
8
+ this.currentId !== 0 && (clearTimeout(this.currentId), this.currentId = 0);
9
+ }, this.disposeEffect = () => this.clear;
10
+ }
11
+ static create() {
12
+ return new be();
13
+ }
14
+ /**
15
+ * Executes `fn` after `delay`, clearing any previously scheduled call.
16
+ */
17
+ start(t, o) {
18
+ this.clear(), this.currentId = setTimeout(() => {
19
+ this.currentId = 0, o();
20
+ }, t);
21
+ }
22
+ }
23
+ let oe = !0, ue = !1;
24
+ const ut = new be(), pt = {
25
+ text: !0,
26
+ search: !0,
27
+ url: !0,
28
+ tel: !0,
29
+ email: !0,
30
+ password: !0,
31
+ number: !0,
32
+ date: !0,
33
+ month: !0,
34
+ week: !0,
35
+ time: !0,
36
+ datetime: !0,
37
+ "datetime-local": !0
38
+ };
39
+ function dt(e) {
40
+ const {
41
+ type: t,
42
+ tagName: o
43
+ } = e;
44
+ return !!(o === "INPUT" && pt[t] && !e.readOnly || o === "TEXTAREA" && !e.readOnly || e.isContentEditable);
45
+ }
46
+ function ft(e) {
47
+ e.metaKey || e.altKey || e.ctrlKey || (oe = !0);
48
+ }
49
+ function ce() {
50
+ oe = !1;
51
+ }
52
+ function ht() {
53
+ this.visibilityState === "hidden" && ue && (oe = !0);
54
+ }
55
+ function bt(e) {
56
+ e.addEventListener("keydown", ft, !0), e.addEventListener("mousedown", ce, !0), e.addEventListener("pointerdown", ce, !0), e.addEventListener("touchstart", ce, !0), e.addEventListener("visibilitychange", ht, !0);
57
+ }
58
+ function mt(e) {
59
+ const {
60
+ target: t
61
+ } = e;
62
+ try {
63
+ return t.matches(":focus-visible");
64
+ } catch {
65
+ }
66
+ return oe || dt(t);
67
+ }
68
+ function gt() {
69
+ const e = u.useCallback((i) => {
70
+ i != null && bt(i.ownerDocument);
71
+ }, []), t = u.useRef(!1);
72
+ function o() {
73
+ return t.current ? (ue = !0, ut.start(100, () => {
74
+ ue = !1;
75
+ }), t.current = !1, !0) : !1;
76
+ }
77
+ function a(i) {
78
+ return mt(i) ? (t.current = !0, !0) : !1;
79
+ }
80
+ return {
81
+ isFocusVisibleRef: t,
82
+ onFocus: a,
83
+ onBlur: o,
84
+ ref: e
85
+ };
86
+ }
87
+ function vt(e) {
88
+ if (e === void 0)
89
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
90
+ return e;
91
+ }
92
+ function me(e, t) {
93
+ var o = function(r) {
94
+ return t && ee(r) ? t(r) : r;
95
+ }, a = /* @__PURE__ */ Object.create(null);
96
+ return e && ct.map(e, function(i) {
97
+ return i;
98
+ }).forEach(function(i) {
99
+ a[i.key] = o(i);
100
+ }), a;
101
+ }
102
+ function yt(e, t) {
103
+ e = e || {}, t = t || {};
104
+ function o(h) {
105
+ return h in t ? t[h] : e[h];
106
+ }
107
+ var a = /* @__PURE__ */ Object.create(null), i = [];
108
+ for (var r in e)
109
+ r in t ? i.length && (a[r] = i, i = []) : i.push(r);
110
+ var s, p = {};
111
+ for (var c in t) {
112
+ if (a[c])
113
+ for (s = 0; s < a[c].length; s++) {
114
+ var d = a[c][s];
115
+ p[a[c][s]] = o(d);
116
+ }
117
+ p[c] = o(c);
118
+ }
119
+ for (s = 0; s < i.length; s++)
120
+ p[i[s]] = o(i[s]);
121
+ return p;
122
+ }
123
+ function w(e, t, o) {
124
+ return o[t] != null ? o[t] : e.props[t];
125
+ }
126
+ function xt(e, t) {
127
+ return me(e.children, function(o) {
128
+ return te(o, {
129
+ onExited: t.bind(null, o),
130
+ in: !0,
131
+ appear: w(o, "appear", e),
132
+ enter: w(o, "enter", e),
133
+ exit: w(o, "exit", e)
134
+ });
135
+ });
136
+ }
137
+ function Rt(e, t, o) {
138
+ var a = me(e.children), i = yt(t, a);
139
+ return Object.keys(i).forEach(function(r) {
140
+ var s = i[r];
141
+ if (ee(s)) {
142
+ var p = r in t, c = r in a, d = t[r], h = ee(d) && !d.props.in;
143
+ c && (!p || h) ? i[r] = te(s, {
144
+ onExited: o.bind(null, s),
145
+ in: !0,
146
+ exit: w(s, "exit", e),
147
+ enter: w(s, "enter", e)
148
+ }) : !c && p && !h ? i[r] = te(s, {
149
+ in: !1
150
+ }) : c && p && ee(d) && (i[r] = te(s, {
151
+ onExited: o.bind(null, s),
152
+ in: d.props.in,
153
+ exit: w(s, "exit", e),
154
+ enter: w(s, "enter", e)
155
+ }));
156
+ }
157
+ }), i;
158
+ }
159
+ var Ct = Object.values || function(e) {
160
+ return Object.keys(e).map(function(t) {
161
+ return e[t];
162
+ });
163
+ }, Tt = {
164
+ component: "div",
165
+ childFactory: function(t) {
166
+ return t;
167
+ }
168
+ }, ge = /* @__PURE__ */ function(e) {
169
+ it(t, e);
170
+ function t(a, i) {
171
+ var r;
172
+ r = e.call(this, a, i) || this;
173
+ var s = r.handleExited.bind(vt(r));
174
+ return r.state = {
175
+ contextValue: {
176
+ isMounting: !0
177
+ },
178
+ handleExited: s,
179
+ firstRender: !0
180
+ }, r;
181
+ }
182
+ var o = t.prototype;
183
+ return o.componentDidMount = function() {
184
+ this.mounted = !0, this.setState({
185
+ contextValue: {
186
+ isMounting: !1
187
+ }
188
+ });
189
+ }, o.componentWillUnmount = function() {
190
+ this.mounted = !1;
191
+ }, t.getDerivedStateFromProps = function(i, r) {
192
+ var s = r.children, p = r.handleExited, c = r.firstRender;
193
+ return {
194
+ children: c ? xt(i, p) : Rt(i, s, p),
195
+ firstRender: !1
196
+ };
197
+ }, o.handleExited = function(i, r) {
198
+ var s = me(this.props.children);
199
+ i.key in s || (i.props.onExited && i.props.onExited(r), this.mounted && this.setState(function(p) {
200
+ var c = m({}, p.children);
201
+ return delete c[i.key], {
202
+ children: c
203
+ };
204
+ }));
205
+ }, o.render = function() {
206
+ var i = this.props, r = i.component, s = i.childFactory, p = ne(i, ["component", "childFactory"]), c = this.state.contextValue, d = Ct(this.state.children).map(s);
207
+ return delete p.appear, delete p.enter, delete p.exit, r === null ? /* @__PURE__ */ Q.createElement(Ce.Provider, {
208
+ value: c
209
+ }, d) : /* @__PURE__ */ Q.createElement(Ce.Provider, {
210
+ value: c
211
+ }, /* @__PURE__ */ Q.createElement(r, p, d));
212
+ }, t;
213
+ }(Q.Component);
214
+ ge.propTypes = process.env.NODE_ENV !== "production" ? {
215
+ /**
216
+ * `<TransitionGroup>` renders a `<div>` by default. You can change this
217
+ * behavior by providing a `component` prop.
218
+ * If you use React v16+ and would like to avoid a wrapping `<div>` element
219
+ * you can pass in `component={null}`. This is useful if the wrapping div
220
+ * borks your css styles.
221
+ */
222
+ component: n.any,
223
+ /**
224
+ * A set of `<Transition>` components, that are toggled `in` and out as they
225
+ * leave. the `<TransitionGroup>` will inject specific transition props, so
226
+ * remember to spread them through if you are wrapping the `<Transition>` as
227
+ * with our `<Fade>` example.
228
+ *
229
+ * While this component is meant for multiple `Transition` or `CSSTransition`
230
+ * children, sometimes you may want to have a single transition child with
231
+ * content that you want to be transitioned out and in when you change it
232
+ * (e.g. routes, images etc.) In that case you can change the `key` prop of
233
+ * the transition child as you change its content, this will cause
234
+ * `TransitionGroup` to transition the child out and back in.
235
+ */
236
+ children: n.node,
237
+ /**
238
+ * A convenience prop that enables or disables appear animations
239
+ * for all children. Note that specifying this will override any defaults set
240
+ * on individual children Transitions.
241
+ */
242
+ appear: n.bool,
243
+ /**
244
+ * A convenience prop that enables or disables enter animations
245
+ * for all children. Note that specifying this will override any defaults set
246
+ * on individual children Transitions.
247
+ */
248
+ enter: n.bool,
249
+ /**
250
+ * A convenience prop that enables or disables exit animations
251
+ * for all children. Note that specifying this will override any defaults set
252
+ * on individual children Transitions.
253
+ */
254
+ exit: n.bool,
255
+ /**
256
+ * You may need to apply reactive updates to a child as it is exiting.
257
+ * This is generally done by using `cloneElement` however in the case of an exiting
258
+ * child the element has already been removed and not accessible to the consumer.
259
+ *
260
+ * If you do need to update a child as it leaves you can provide a `childFactory`
261
+ * to wrap every child, even the ones that are leaving.
262
+ *
263
+ * @type Function(child: ReactElement) -> ReactElement
264
+ */
265
+ childFactory: n.func
266
+ } : {};
267
+ ge.defaultProps = Tt;
268
+ const Et = ge;
269
+ function Ve(e) {
10
270
  const {
11
- injectFirst: e,
12
- children: n
13
- } = o;
14
- return e && r ? /* @__PURE__ */ t(s, {
15
- value: r,
16
- children: n
17
- }) : n;
271
+ className: t,
272
+ classes: o,
273
+ pulsate: a = !1,
274
+ rippleX: i,
275
+ rippleY: r,
276
+ rippleSize: s,
277
+ in: p,
278
+ onExited: c,
279
+ timeout: d
280
+ } = e, [h, v] = u.useState(!1), y = M(t, o.ripple, o.rippleVisible, a && o.ripplePulsate), R = {
281
+ width: s,
282
+ height: s,
283
+ top: -(s / 2) + r,
284
+ left: -(s / 2) + i
285
+ }, b = M(o.child, h && o.childLeaving, a && o.childPulsate);
286
+ return !p && !h && v(!0), u.useEffect(() => {
287
+ if (!p && c != null) {
288
+ const C = setTimeout(c, d);
289
+ return () => {
290
+ clearTimeout(C);
291
+ };
292
+ }
293
+ }, [c, p, d]), /* @__PURE__ */ P("span", {
294
+ className: y,
295
+ style: R,
296
+ children: /* @__PURE__ */ P("span", {
297
+ className: b
298
+ })
299
+ });
300
+ }
301
+ process.env.NODE_ENV !== "production" && (Ve.propTypes = {
302
+ /**
303
+ * Override or extend the styles applied to the component.
304
+ * See [CSS API](#css) below for more details.
305
+ */
306
+ classes: n.object.isRequired,
307
+ className: n.string,
308
+ /**
309
+ * @ignore - injected from TransitionGroup
310
+ */
311
+ in: n.bool,
312
+ /**
313
+ * @ignore - injected from TransitionGroup
314
+ */
315
+ onExited: n.func,
316
+ /**
317
+ * If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.
318
+ */
319
+ pulsate: n.bool,
320
+ /**
321
+ * Diameter of the ripple.
322
+ */
323
+ rippleSize: n.number,
324
+ /**
325
+ * Horizontal position of the ripple center.
326
+ */
327
+ rippleX: n.number,
328
+ /**
329
+ * Vertical position of the ripple center.
330
+ */
331
+ rippleY: n.number,
332
+ /**
333
+ * exit delay
334
+ */
335
+ timeout: n.number.isRequired
336
+ });
337
+ const B = de("MuiTouchRipple", ["root", "ripple", "rippleVisible", "ripplePulsate", "child", "childLeaving", "childPulsate"]), Mt = ["center", "classes", "className"];
338
+ let ie = (e) => e, Ee, Me, Be, ze;
339
+ const pe = 550, Bt = 80, zt = fe(Ee || (Ee = ie`
340
+ 0% {
341
+ transform: scale(0);
342
+ opacity: 0.1;
343
+ }
344
+
345
+ 100% {
346
+ transform: scale(1);
347
+ opacity: 0.3;
348
+ }
349
+ `)), It = fe(Me || (Me = ie`
350
+ 0% {
351
+ opacity: 1;
352
+ }
353
+
354
+ 100% {
355
+ opacity: 0;
356
+ }
357
+ `)), Nt = fe(Be || (Be = ie`
358
+ 0% {
359
+ transform: scale(1);
360
+ }
361
+
362
+ 50% {
363
+ transform: scale(0.92);
364
+ }
365
+
366
+ 100% {
367
+ transform: scale(1);
368
+ }
369
+ `)), $t = A("span", {
370
+ name: "MuiTouchRipple",
371
+ slot: "Root"
372
+ })({
373
+ overflow: "hidden",
374
+ pointerEvents: "none",
375
+ position: "absolute",
376
+ zIndex: 0,
377
+ top: 0,
378
+ right: 0,
379
+ bottom: 0,
380
+ left: 0,
381
+ borderRadius: "inherit"
382
+ }), Vt = A(Ve, {
383
+ name: "MuiTouchRipple",
384
+ slot: "Ripple"
385
+ })(ze || (ze = ie`
386
+ opacity: 0;
387
+ position: absolute;
388
+
389
+ &.${0} {
390
+ opacity: 0.3;
391
+ transform: scale(1);
392
+ animation-name: ${0};
393
+ animation-duration: ${0}ms;
394
+ animation-timing-function: ${0};
395
+ }
396
+
397
+ &.${0} {
398
+ animation-duration: ${0}ms;
399
+ }
400
+
401
+ & .${0} {
402
+ opacity: 1;
403
+ display: block;
404
+ width: 100%;
405
+ height: 100%;
406
+ border-radius: 50%;
407
+ background-color: currentColor;
408
+ }
409
+
410
+ & .${0} {
411
+ opacity: 0;
412
+ animation-name: ${0};
413
+ animation-duration: ${0}ms;
414
+ animation-timing-function: ${0};
415
+ }
416
+
417
+ & .${0} {
418
+ position: absolute;
419
+ /* @noflip */
420
+ left: 0px;
421
+ top: 0;
422
+ animation-name: ${0};
423
+ animation-duration: 2500ms;
424
+ animation-timing-function: ${0};
425
+ animation-iteration-count: infinite;
426
+ animation-delay: 200ms;
427
+ }
428
+ `), B.rippleVisible, zt, pe, ({
429
+ theme: e
430
+ }) => e.transitions.easing.easeInOut, B.ripplePulsate, ({
431
+ theme: e
432
+ }) => e.transitions.duration.shorter, B.child, B.childLeaving, It, pe, ({
433
+ theme: e
434
+ }) => e.transitions.easing.easeInOut, B.childPulsate, Nt, ({
435
+ theme: e
436
+ }) => e.transitions.easing.easeInOut), ke = /* @__PURE__ */ u.forwardRef(function(t, o) {
437
+ const a = he({
438
+ props: t,
439
+ name: "MuiTouchRipple"
440
+ }), {
441
+ center: i = !1,
442
+ classes: r = {},
443
+ className: s
444
+ } = a, p = ne(a, Mt), [c, d] = u.useState([]), h = u.useRef(0), v = u.useRef(null);
445
+ u.useEffect(() => {
446
+ v.current && (v.current(), v.current = null);
447
+ }, [c]);
448
+ const y = u.useRef(!1), R = u.useRef(0), b = u.useRef(null), C = u.useRef(null);
449
+ u.useEffect(() => () => {
450
+ R.current && clearTimeout(R.current);
451
+ }, []);
452
+ const U = u.useCallback((f) => {
453
+ const {
454
+ pulsate: T,
455
+ rippleX: g,
456
+ rippleY: x,
457
+ rippleSize: L,
458
+ cb: j
459
+ } = f;
460
+ d((E) => [...E, /* @__PURE__ */ P(Vt, {
461
+ classes: {
462
+ ripple: M(r.ripple, B.ripple),
463
+ rippleVisible: M(r.rippleVisible, B.rippleVisible),
464
+ ripplePulsate: M(r.ripplePulsate, B.ripplePulsate),
465
+ child: M(r.child, B.child),
466
+ childLeaving: M(r.childLeaving, B.childLeaving),
467
+ childPulsate: M(r.childPulsate, B.childPulsate)
468
+ },
469
+ timeout: pe,
470
+ pulsate: T,
471
+ rippleX: g,
472
+ rippleY: x,
473
+ rippleSize: L
474
+ }, h.current)]), h.current += 1, v.current = j;
475
+ }, [r]), O = u.useCallback((f = {}, T = {}, g = () => {
476
+ }) => {
477
+ const {
478
+ pulsate: x = !1,
479
+ center: L = i || T.pulsate,
480
+ fakeElement: j = !1
481
+ // For test purposes
482
+ } = T;
483
+ if ((f == null ? void 0 : f.type) === "mousedown" && y.current) {
484
+ y.current = !1;
485
+ return;
486
+ }
487
+ (f == null ? void 0 : f.type) === "touchstart" && (y.current = !0);
488
+ const E = j ? null : C.current, S = E ? E.getBoundingClientRect() : {
489
+ width: 0,
490
+ height: 0,
491
+ left: 0,
492
+ top: 0
493
+ };
494
+ let $, F, _;
495
+ if (L || f === void 0 || f.clientX === 0 && f.clientY === 0 || !f.clientX && !f.touches)
496
+ $ = Math.round(S.width / 2), F = Math.round(S.height / 2);
497
+ else {
498
+ const {
499
+ clientX: W,
500
+ clientY: V
501
+ } = f.touches && f.touches.length > 0 ? f.touches[0] : f;
502
+ $ = Math.round(W - S.left), F = Math.round(V - S.top);
503
+ }
504
+ if (L)
505
+ _ = Math.sqrt((2 * S.width ** 2 + S.height ** 2) / 3), _ % 2 === 0 && (_ += 1);
506
+ else {
507
+ const W = Math.max(Math.abs((E ? E.clientWidth : 0) - $), $) * 2 + 2, V = Math.max(Math.abs((E ? E.clientHeight : 0) - F), F) * 2 + 2;
508
+ _ = Math.sqrt(W ** 2 + V ** 2);
509
+ }
510
+ f != null && f.touches ? b.current === null && (b.current = () => {
511
+ U({
512
+ pulsate: x,
513
+ rippleX: $,
514
+ rippleY: F,
515
+ rippleSize: _,
516
+ cb: g
517
+ });
518
+ }, R.current = setTimeout(() => {
519
+ b.current && (b.current(), b.current = null);
520
+ }, Bt)) : U({
521
+ pulsate: x,
522
+ rippleX: $,
523
+ rippleY: F,
524
+ rippleSize: _,
525
+ cb: g
526
+ });
527
+ }, [i, U]), D = u.useCallback(() => {
528
+ O({}, {
529
+ pulsate: !0
530
+ });
531
+ }, [O]), N = u.useCallback((f, T) => {
532
+ if (clearTimeout(R.current), (f == null ? void 0 : f.type) === "touchend" && b.current) {
533
+ b.current(), b.current = null, R.current = setTimeout(() => {
534
+ N(f, T);
535
+ });
536
+ return;
537
+ }
538
+ b.current = null, d((g) => g.length > 0 ? g.slice(1) : g), v.current = T;
539
+ }, []);
540
+ return u.useImperativeHandle(o, () => ({
541
+ pulsate: D,
542
+ start: O,
543
+ stop: N
544
+ }), [D, O, N]), /* @__PURE__ */ P($t, m({
545
+ className: M(B.root, r.root, s),
546
+ ref: C
547
+ }, p, {
548
+ children: /* @__PURE__ */ P(Et, {
549
+ component: null,
550
+ exit: !0,
551
+ children: c
552
+ })
553
+ }));
554
+ });
555
+ process.env.NODE_ENV !== "production" && (ke.propTypes = {
556
+ /**
557
+ * If `true`, the ripple starts at the center of the component
558
+ * rather than at the point of interaction.
559
+ */
560
+ center: n.bool,
561
+ /**
562
+ * Override or extend the styles applied to the component.
563
+ * See [CSS API](#css) below for more details.
564
+ */
565
+ classes: n.object,
566
+ /**
567
+ * @ignore
568
+ */
569
+ className: n.string
570
+ });
571
+ const kt = ke;
572
+ function Pt(e) {
573
+ return Ne("MuiButtonBase", e);
18
574
  }
19
- process.env.NODE_ENV !== "production" && (c.propTypes = {
575
+ const Ot = de("MuiButtonBase", ["root", "disabled", "focusVisible"]), Dt = ["action", "centerRipple", "children", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "LinkComponent", "onBlur", "onClick", "onContextMenu", "onDragLeave", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "touchRippleRef", "type"], Lt = (e) => {
576
+ const {
577
+ disabled: t,
578
+ focusVisible: o,
579
+ focusVisibleClassName: a,
580
+ classes: i
581
+ } = e, s = $e({
582
+ root: ["root", t && "disabled", o && "focusVisible"]
583
+ }, Pt, i);
584
+ return o && a && (s.root += ` ${a}`), s;
585
+ }, St = A("button", {
586
+ name: "MuiButtonBase",
587
+ slot: "Root",
588
+ overridesResolver: (e, t) => t.root
589
+ })({
590
+ display: "inline-flex",
591
+ alignItems: "center",
592
+ justifyContent: "center",
593
+ position: "relative",
594
+ boxSizing: "border-box",
595
+ WebkitTapHighlightColor: "transparent",
596
+ backgroundColor: "transparent",
597
+ // Reset default value
598
+ // We disable the focus ring for mouse, touch and keyboard users.
599
+ outline: 0,
600
+ border: 0,
601
+ margin: 0,
602
+ // Remove the margin in Safari
603
+ borderRadius: 0,
604
+ padding: 0,
605
+ // Remove the padding in Firefox
606
+ cursor: "pointer",
607
+ userSelect: "none",
608
+ verticalAlign: "middle",
609
+ MozAppearance: "none",
610
+ // Reset
611
+ WebkitAppearance: "none",
612
+ // Reset
613
+ textDecoration: "none",
614
+ // So we take precedent over the style of a native <a /> element.
615
+ color: "inherit",
616
+ "&::-moz-focus-inner": {
617
+ borderStyle: "none"
618
+ // Remove Firefox dotted outline.
619
+ },
620
+ [`&.${Ot.disabled}`]: {
621
+ pointerEvents: "none",
622
+ // Disable link interactions
623
+ cursor: "default"
624
+ },
625
+ "@media print": {
626
+ colorAdjust: "exact"
627
+ }
628
+ }), Pe = /* @__PURE__ */ u.forwardRef(function(t, o) {
629
+ const a = he({
630
+ props: t,
631
+ name: "MuiButtonBase"
632
+ }), {
633
+ action: i,
634
+ centerRipple: r = !1,
635
+ children: s,
636
+ className: p,
637
+ component: c = "button",
638
+ disabled: d = !1,
639
+ disableRipple: h = !1,
640
+ disableTouchRipple: v = !1,
641
+ focusRipple: y = !1,
642
+ LinkComponent: R = "a",
643
+ onBlur: b,
644
+ onClick: C,
645
+ onContextMenu: U,
646
+ onDragLeave: O,
647
+ onFocus: D,
648
+ onFocusVisible: N,
649
+ onKeyDown: f,
650
+ onKeyUp: T,
651
+ onMouseDown: g,
652
+ onMouseLeave: x,
653
+ onMouseUp: L,
654
+ onTouchEnd: j,
655
+ onTouchMove: E,
656
+ onTouchStart: S,
657
+ tabIndex: $ = 0,
658
+ TouchRippleProps: F,
659
+ touchRippleRef: _,
660
+ type: W
661
+ } = a, V = ne(a, Dt), G = u.useRef(null), z = u.useRef(null), Fe = Te(z, _), {
662
+ isFocusVisibleRef: ve,
663
+ onFocus: _e,
664
+ onBlur: Ue,
665
+ ref: je
666
+ } = gt(), [K, Y] = u.useState(!1);
667
+ d && K && Y(!1), u.useImperativeHandle(i, () => ({
668
+ focusVisible: () => {
669
+ Y(!0), G.current.focus();
670
+ }
671
+ }), []);
672
+ const [re, We] = u.useState(!1);
673
+ u.useEffect(() => {
674
+ We(!0);
675
+ }, []);
676
+ const se = re && !h && !d;
677
+ u.useEffect(() => {
678
+ K && y && !h && re && z.current.pulsate();
679
+ }, [h, y, K, re]);
680
+ function k(l, xe, ot = v) {
681
+ return H((Re) => (xe && xe(Re), !ot && z.current && z.current[l](Re), !0));
682
+ }
683
+ const Ke = k("start", g), we = k("stop", U), Ae = k("stop", O), Ge = k("stop", L), Xe = k("stop", (l) => {
684
+ K && l.preventDefault(), x && x(l);
685
+ }), Ye = k("start", S), qe = k("stop", j), He = k("stop", E), Je = k("stop", (l) => {
686
+ Ue(l), ve.current === !1 && Y(!1), b && b(l);
687
+ }, !1), Qe = H((l) => {
688
+ G.current || (G.current = l.currentTarget), _e(l), ve.current === !0 && (Y(!0), N && N(l)), D && D(l);
689
+ }), ae = () => {
690
+ const l = G.current;
691
+ return c && c !== "button" && !(l.tagName === "A" && l.href);
692
+ }, le = u.useRef(!1), Ze = H((l) => {
693
+ y && !le.current && K && z.current && l.key === " " && (le.current = !0, z.current.stop(l, () => {
694
+ z.current.start(l);
695
+ })), l.target === l.currentTarget && ae() && l.key === " " && l.preventDefault(), f && f(l), l.target === l.currentTarget && ae() && l.key === "Enter" && !d && (l.preventDefault(), C && C(l));
696
+ }), et = H((l) => {
697
+ y && l.key === " " && z.current && K && !l.defaultPrevented && (le.current = !1, z.current.stop(l, () => {
698
+ z.current.pulsate(l);
699
+ })), T && T(l), C && l.target === l.currentTarget && ae() && l.key === " " && !l.defaultPrevented && C(l);
700
+ });
701
+ let q = c;
702
+ q === "button" && (V.href || V.to) && (q = R);
703
+ const X = {};
704
+ q === "button" ? (X.type = W === void 0 ? "button" : W, X.disabled = d) : (!V.href && !V.to && (X.role = "button"), d && (X["aria-disabled"] = d));
705
+ const tt = Te(o, je, G);
706
+ process.env.NODE_ENV !== "production" && u.useEffect(() => {
707
+ se && !z.current && console.error(["MUI: The `component` prop provided to ButtonBase is invalid.", "Please make sure the children prop is rendered in this custom component."].join(`
708
+ `));
709
+ }, [se]);
710
+ const ye = m({}, a, {
711
+ centerRipple: r,
712
+ component: c,
713
+ disabled: d,
714
+ disableRipple: h,
715
+ disableTouchRipple: v,
716
+ focusRipple: y,
717
+ tabIndex: $,
718
+ focusVisible: K
719
+ }), nt = Lt(ye);
720
+ return /* @__PURE__ */ Ie(St, m({
721
+ as: q,
722
+ className: M(nt.root, p),
723
+ ownerState: ye,
724
+ onBlur: Je,
725
+ onClick: C,
726
+ onContextMenu: we,
727
+ onFocus: Qe,
728
+ onKeyDown: Ze,
729
+ onKeyUp: et,
730
+ onMouseDown: Ke,
731
+ onMouseLeave: Xe,
732
+ onMouseUp: Ge,
733
+ onDragLeave: Ae,
734
+ onTouchEnd: qe,
735
+ onTouchMove: He,
736
+ onTouchStart: Ye,
737
+ ref: tt,
738
+ tabIndex: d ? -1 : $,
739
+ type: W
740
+ }, X, V, {
741
+ children: [s, se ? (
742
+ /* TouchRipple is only needed client-side, x2 boost on the server. */
743
+ /* @__PURE__ */ P(kt, m({
744
+ ref: Fe,
745
+ center: r
746
+ }, F))
747
+ ) : null]
748
+ }));
749
+ });
750
+ process.env.NODE_ENV !== "production" && (Pe.propTypes = {
751
+ // ----------------------------- Warning --------------------------------
752
+ // | These PropTypes are generated from the TypeScript type definitions |
753
+ // | To update them edit the d.ts file and run "yarn proptypes" |
754
+ // ----------------------------------------------------------------------
755
+ /**
756
+ * A ref for imperative actions.
757
+ * It currently only supports `focusVisible()` action.
758
+ */
759
+ action: rt,
760
+ /**
761
+ * If `true`, the ripples are centered.
762
+ * They won't start at the cursor interaction position.
763
+ * @default false
764
+ */
765
+ centerRipple: n.bool,
766
+ /**
767
+ * The content of the component.
768
+ */
769
+ children: n.node,
770
+ /**
771
+ * Override or extend the styles applied to the component.
772
+ */
773
+ classes: n.object,
774
+ /**
775
+ * @ignore
776
+ */
777
+ className: n.string,
778
+ /**
779
+ * The component used for the root node.
780
+ * Either a string to use a HTML element or a component.
781
+ */
782
+ component: st,
783
+ /**
784
+ * If `true`, the component is disabled.
785
+ * @default false
786
+ */
787
+ disabled: n.bool,
788
+ /**
789
+ * If `true`, the ripple effect is disabled.
790
+ *
791
+ * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
792
+ * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
793
+ * @default false
794
+ */
795
+ disableRipple: n.bool,
796
+ /**
797
+ * If `true`, the touch ripple effect is disabled.
798
+ * @default false
799
+ */
800
+ disableTouchRipple: n.bool,
801
+ /**
802
+ * If `true`, the base button will have a keyboard focus ripple.
803
+ * @default false
804
+ */
805
+ focusRipple: n.bool,
806
+ /**
807
+ * This prop can help identify which element has keyboard focus.
808
+ * The class name will be applied when the element gains the focus through keyboard interaction.
809
+ * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
810
+ * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).
811
+ * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components
812
+ * if needed.
813
+ */
814
+ focusVisibleClassName: n.string,
815
+ /**
816
+ * @ignore
817
+ */
818
+ href: n.any,
819
+ /**
820
+ * The component used to render a link when the `href` prop is provided.
821
+ * @default 'a'
822
+ */
823
+ LinkComponent: n.elementType,
824
+ /**
825
+ * @ignore
826
+ */
827
+ onBlur: n.func,
828
+ /**
829
+ * @ignore
830
+ */
831
+ onClick: n.func,
832
+ /**
833
+ * @ignore
834
+ */
835
+ onContextMenu: n.func,
836
+ /**
837
+ * @ignore
838
+ */
839
+ onDragLeave: n.func,
840
+ /**
841
+ * @ignore
842
+ */
843
+ onFocus: n.func,
844
+ /**
845
+ * Callback fired when the component is focused with a keyboard.
846
+ * We trigger a `onFocus` callback too.
847
+ */
848
+ onFocusVisible: n.func,
849
+ /**
850
+ * @ignore
851
+ */
852
+ onKeyDown: n.func,
853
+ /**
854
+ * @ignore
855
+ */
856
+ onKeyUp: n.func,
857
+ /**
858
+ * @ignore
859
+ */
860
+ onMouseDown: n.func,
861
+ /**
862
+ * @ignore
863
+ */
864
+ onMouseLeave: n.func,
865
+ /**
866
+ * @ignore
867
+ */
868
+ onMouseUp: n.func,
869
+ /**
870
+ * @ignore
871
+ */
872
+ onTouchEnd: n.func,
873
+ /**
874
+ * @ignore
875
+ */
876
+ onTouchMove: n.func,
877
+ /**
878
+ * @ignore
879
+ */
880
+ onTouchStart: n.func,
881
+ /**
882
+ * The system prop that allows defining system overrides as well as additional CSS styles.
883
+ */
884
+ sx: n.oneOfType([n.arrayOf(n.oneOfType([n.func, n.object, n.bool])), n.func, n.object]),
885
+ /**
886
+ * @default 0
887
+ */
888
+ tabIndex: n.number,
889
+ /**
890
+ * Props applied to the `TouchRipple` element.
891
+ */
892
+ TouchRippleProps: n.object,
893
+ /**
894
+ * A ref that points to the `TouchRipple` element.
895
+ */
896
+ touchRippleRef: n.oneOfType([n.func, n.shape({
897
+ current: n.shape({
898
+ pulsate: n.func.isRequired,
899
+ start: n.func.isRequired,
900
+ stop: n.func.isRequired
901
+ })
902
+ })]),
903
+ /**
904
+ * @ignore
905
+ */
906
+ type: n.oneOfType([n.oneOf(["button", "reset", "submit"]), n.string])
907
+ });
908
+ const Ft = Pe;
909
+ function _t(e) {
910
+ return Ne("MuiButton", e);
911
+ }
912
+ const Ut = de("MuiButton", ["root", "text", "textInherit", "textPrimary", "textSecondary", "textSuccess", "textError", "textInfo", "textWarning", "outlined", "outlinedInherit", "outlinedPrimary", "outlinedSecondary", "outlinedSuccess", "outlinedError", "outlinedInfo", "outlinedWarning", "contained", "containedInherit", "containedPrimary", "containedSecondary", "containedSuccess", "containedError", "containedInfo", "containedWarning", "disableElevation", "focusVisible", "disabled", "colorInherit", "textSizeSmall", "textSizeMedium", "textSizeLarge", "outlinedSizeSmall", "outlinedSizeMedium", "outlinedSizeLarge", "containedSizeSmall", "containedSizeMedium", "containedSizeLarge", "sizeMedium", "sizeSmall", "sizeLarge", "fullWidth", "startIcon", "endIcon", "iconSizeSmall", "iconSizeMedium", "iconSizeLarge"]), Z = Ut, Oe = /* @__PURE__ */ u.createContext({});
913
+ process.env.NODE_ENV !== "production" && (Oe.displayName = "ButtonGroupContext");
914
+ const jt = Oe, De = /* @__PURE__ */ u.createContext(void 0);
915
+ process.env.NODE_ENV !== "production" && (De.displayName = "ButtonGroupButtonContext");
916
+ const Wt = De, Kt = ["children", "color", "component", "className", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"], wt = (e) => {
917
+ const {
918
+ color: t,
919
+ disableElevation: o,
920
+ fullWidth: a,
921
+ size: i,
922
+ variant: r,
923
+ classes: s
924
+ } = e, p = {
925
+ root: ["root", r, `${r}${I(t)}`, `size${I(i)}`, `${r}Size${I(i)}`, t === "inherit" && "colorInherit", o && "disableElevation", a && "fullWidth"],
926
+ label: ["label"],
927
+ startIcon: ["startIcon", `iconSize${I(i)}`],
928
+ endIcon: ["endIcon", `iconSize${I(i)}`]
929
+ }, c = $e(p, _t, s);
930
+ return m({}, s, c);
931
+ }, Le = (e) => m({}, e.size === "small" && {
932
+ "& > *:nth-of-type(1)": {
933
+ fontSize: 18
934
+ }
935
+ }, e.size === "medium" && {
936
+ "& > *:nth-of-type(1)": {
937
+ fontSize: 20
938
+ }
939
+ }, e.size === "large" && {
940
+ "& > *:nth-of-type(1)": {
941
+ fontSize: 22
942
+ }
943
+ }), At = A(Ft, {
944
+ shouldForwardProp: (e) => at(e) || e === "classes",
945
+ name: "MuiButton",
946
+ slot: "Root",
947
+ overridesResolver: (e, t) => {
948
+ const {
949
+ ownerState: o
950
+ } = e;
951
+ return [t.root, t[o.variant], t[`${o.variant}${I(o.color)}`], t[`size${I(o.size)}`], t[`${o.variant}Size${I(o.size)}`], o.color === "inherit" && t.colorInherit, o.disableElevation && t.disableElevation, o.fullWidth && t.fullWidth];
952
+ }
953
+ })(({
954
+ theme: e,
955
+ ownerState: t
956
+ }) => {
957
+ var o, a;
958
+ const i = e.palette.mode === "light" ? e.palette.grey[300] : e.palette.grey[800], r = e.palette.mode === "light" ? e.palette.grey.A100 : e.palette.grey[700];
959
+ return m({}, e.typography.button, {
960
+ minWidth: 64,
961
+ padding: "6px 16px",
962
+ borderRadius: (e.vars || e).shape.borderRadius,
963
+ transition: e.transitions.create(["background-color", "box-shadow", "border-color", "color"], {
964
+ duration: e.transitions.duration.short
965
+ }),
966
+ "&:hover": m({
967
+ textDecoration: "none",
968
+ backgroundColor: e.vars ? `rgba(${e.vars.palette.text.primaryChannel} / ${e.vars.palette.action.hoverOpacity})` : J(e.palette.text.primary, e.palette.action.hoverOpacity),
969
+ // Reset on touch devices, it doesn't add specificity
970
+ "@media (hover: none)": {
971
+ backgroundColor: "transparent"
972
+ }
973
+ }, t.variant === "text" && t.color !== "inherit" && {
974
+ backgroundColor: e.vars ? `rgba(${e.vars.palette[t.color].mainChannel} / ${e.vars.palette.action.hoverOpacity})` : J(e.palette[t.color].main, e.palette.action.hoverOpacity),
975
+ // Reset on touch devices, it doesn't add specificity
976
+ "@media (hover: none)": {
977
+ backgroundColor: "transparent"
978
+ }
979
+ }, t.variant === "outlined" && t.color !== "inherit" && {
980
+ border: `1px solid ${(e.vars || e).palette[t.color].main}`,
981
+ backgroundColor: e.vars ? `rgba(${e.vars.palette[t.color].mainChannel} / ${e.vars.palette.action.hoverOpacity})` : J(e.palette[t.color].main, e.palette.action.hoverOpacity),
982
+ // Reset on touch devices, it doesn't add specificity
983
+ "@media (hover: none)": {
984
+ backgroundColor: "transparent"
985
+ }
986
+ }, t.variant === "contained" && {
987
+ backgroundColor: e.vars ? e.vars.palette.Button.inheritContainedHoverBg : r,
988
+ boxShadow: (e.vars || e).shadows[4],
989
+ // Reset on touch devices, it doesn't add specificity
990
+ "@media (hover: none)": {
991
+ boxShadow: (e.vars || e).shadows[2],
992
+ backgroundColor: (e.vars || e).palette.grey[300]
993
+ }
994
+ }, t.variant === "contained" && t.color !== "inherit" && {
995
+ backgroundColor: (e.vars || e).palette[t.color].dark,
996
+ // Reset on touch devices, it doesn't add specificity
997
+ "@media (hover: none)": {
998
+ backgroundColor: (e.vars || e).palette[t.color].main
999
+ }
1000
+ }),
1001
+ "&:active": m({}, t.variant === "contained" && {
1002
+ boxShadow: (e.vars || e).shadows[8]
1003
+ }),
1004
+ [`&.${Z.focusVisible}`]: m({}, t.variant === "contained" && {
1005
+ boxShadow: (e.vars || e).shadows[6]
1006
+ }),
1007
+ [`&.${Z.disabled}`]: m({
1008
+ color: (e.vars || e).palette.action.disabled
1009
+ }, t.variant === "outlined" && {
1010
+ border: `1px solid ${(e.vars || e).palette.action.disabledBackground}`
1011
+ }, t.variant === "contained" && {
1012
+ color: (e.vars || e).palette.action.disabled,
1013
+ boxShadow: (e.vars || e).shadows[0],
1014
+ backgroundColor: (e.vars || e).palette.action.disabledBackground
1015
+ })
1016
+ }, t.variant === "text" && {
1017
+ padding: "6px 8px"
1018
+ }, t.variant === "text" && t.color !== "inherit" && {
1019
+ color: (e.vars || e).palette[t.color].main
1020
+ }, t.variant === "outlined" && {
1021
+ padding: "5px 15px",
1022
+ border: "1px solid currentColor"
1023
+ }, t.variant === "outlined" && t.color !== "inherit" && {
1024
+ color: (e.vars || e).palette[t.color].main,
1025
+ border: e.vars ? `1px solid rgba(${e.vars.palette[t.color].mainChannel} / 0.5)` : `1px solid ${J(e.palette[t.color].main, 0.5)}`
1026
+ }, t.variant === "contained" && {
1027
+ color: e.vars ? (
1028
+ // this is safe because grey does not change between default light/dark mode
1029
+ e.vars.palette.text.primary
1030
+ ) : (o = (a = e.palette).getContrastText) == null ? void 0 : o.call(a, e.palette.grey[300]),
1031
+ backgroundColor: e.vars ? e.vars.palette.Button.inheritContainedBg : i,
1032
+ boxShadow: (e.vars || e).shadows[2]
1033
+ }, t.variant === "contained" && t.color !== "inherit" && {
1034
+ color: (e.vars || e).palette[t.color].contrastText,
1035
+ backgroundColor: (e.vars || e).palette[t.color].main
1036
+ }, t.color === "inherit" && {
1037
+ color: "inherit",
1038
+ borderColor: "currentColor"
1039
+ }, t.size === "small" && t.variant === "text" && {
1040
+ padding: "4px 5px",
1041
+ fontSize: e.typography.pxToRem(13)
1042
+ }, t.size === "large" && t.variant === "text" && {
1043
+ padding: "8px 11px",
1044
+ fontSize: e.typography.pxToRem(15)
1045
+ }, t.size === "small" && t.variant === "outlined" && {
1046
+ padding: "3px 9px",
1047
+ fontSize: e.typography.pxToRem(13)
1048
+ }, t.size === "large" && t.variant === "outlined" && {
1049
+ padding: "7px 21px",
1050
+ fontSize: e.typography.pxToRem(15)
1051
+ }, t.size === "small" && t.variant === "contained" && {
1052
+ padding: "4px 10px",
1053
+ fontSize: e.typography.pxToRem(13)
1054
+ }, t.size === "large" && t.variant === "contained" && {
1055
+ padding: "8px 22px",
1056
+ fontSize: e.typography.pxToRem(15)
1057
+ }, t.fullWidth && {
1058
+ width: "100%"
1059
+ });
1060
+ }, ({
1061
+ ownerState: e
1062
+ }) => e.disableElevation && {
1063
+ boxShadow: "none",
1064
+ "&:hover": {
1065
+ boxShadow: "none"
1066
+ },
1067
+ [`&.${Z.focusVisible}`]: {
1068
+ boxShadow: "none"
1069
+ },
1070
+ "&:active": {
1071
+ boxShadow: "none"
1072
+ },
1073
+ [`&.${Z.disabled}`]: {
1074
+ boxShadow: "none"
1075
+ }
1076
+ }), Gt = A("span", {
1077
+ name: "MuiButton",
1078
+ slot: "StartIcon",
1079
+ overridesResolver: (e, t) => {
1080
+ const {
1081
+ ownerState: o
1082
+ } = e;
1083
+ return [t.startIcon, t[`iconSize${I(o.size)}`]];
1084
+ }
1085
+ })(({
1086
+ ownerState: e
1087
+ }) => m({
1088
+ display: "inherit",
1089
+ marginRight: 8,
1090
+ marginLeft: -4
1091
+ }, e.size === "small" && {
1092
+ marginLeft: -2
1093
+ }, Le(e))), Xt = A("span", {
1094
+ name: "MuiButton",
1095
+ slot: "EndIcon",
1096
+ overridesResolver: (e, t) => {
1097
+ const {
1098
+ ownerState: o
1099
+ } = e;
1100
+ return [t.endIcon, t[`iconSize${I(o.size)}`]];
1101
+ }
1102
+ })(({
1103
+ ownerState: e
1104
+ }) => m({
1105
+ display: "inherit",
1106
+ marginRight: -4,
1107
+ marginLeft: 8
1108
+ }, e.size === "small" && {
1109
+ marginRight: -2
1110
+ }, Le(e))), Se = /* @__PURE__ */ u.forwardRef(function(t, o) {
1111
+ const a = u.useContext(jt), i = u.useContext(Wt), r = lt(a, t), s = he({
1112
+ props: r,
1113
+ name: "MuiButton"
1114
+ }), {
1115
+ children: p,
1116
+ color: c = "primary",
1117
+ component: d = "button",
1118
+ className: h,
1119
+ disabled: v = !1,
1120
+ disableElevation: y = !1,
1121
+ disableFocusRipple: R = !1,
1122
+ endIcon: b,
1123
+ focusVisibleClassName: C,
1124
+ fullWidth: U = !1,
1125
+ size: O = "medium",
1126
+ startIcon: D,
1127
+ type: N,
1128
+ variant: f = "text"
1129
+ } = s, T = ne(s, Kt), g = m({}, s, {
1130
+ color: c,
1131
+ component: d,
1132
+ disabled: v,
1133
+ disableElevation: y,
1134
+ disableFocusRipple: R,
1135
+ fullWidth: U,
1136
+ size: O,
1137
+ type: N,
1138
+ variant: f
1139
+ }), x = wt(g), L = D && /* @__PURE__ */ P(Gt, {
1140
+ className: x.startIcon,
1141
+ ownerState: g,
1142
+ children: D
1143
+ }), j = b && /* @__PURE__ */ P(Xt, {
1144
+ className: x.endIcon,
1145
+ ownerState: g,
1146
+ children: b
1147
+ }), E = i || "";
1148
+ return /* @__PURE__ */ Ie(At, m({
1149
+ ownerState: g,
1150
+ className: M(a.className, x.root, h, E),
1151
+ component: d,
1152
+ disabled: v,
1153
+ focusRipple: !R,
1154
+ focusVisibleClassName: M(x.focusVisible, C),
1155
+ ref: o,
1156
+ type: N
1157
+ }, T, {
1158
+ classes: x,
1159
+ children: [L, p, j]
1160
+ }));
1161
+ });
1162
+ process.env.NODE_ENV !== "production" && (Se.propTypes = {
1163
+ // ----------------------------- Warning --------------------------------
1164
+ // | These PropTypes are generated from the TypeScript type definitions |
1165
+ // | To update them edit the d.ts file and run "yarn proptypes" |
1166
+ // ----------------------------------------------------------------------
1167
+ /**
1168
+ * The content of the component.
1169
+ */
1170
+ children: n.node,
1171
+ /**
1172
+ * Override or extend the styles applied to the component.
1173
+ */
1174
+ classes: n.object,
1175
+ /**
1176
+ * @ignore
1177
+ */
1178
+ className: n.string,
1179
+ /**
1180
+ * The color of the component.
1181
+ * It supports both default and custom theme colors, which can be added as shown in the
1182
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
1183
+ * @default 'primary'
1184
+ */
1185
+ color: n.oneOfType([n.oneOf(["inherit", "primary", "secondary", "success", "error", "info", "warning"]), n.string]),
1186
+ /**
1187
+ * The component used for the root node.
1188
+ * Either a string to use a HTML element or a component.
1189
+ */
1190
+ component: n.elementType,
1191
+ /**
1192
+ * If `true`, the component is disabled.
1193
+ * @default false
1194
+ */
1195
+ disabled: n.bool,
1196
+ /**
1197
+ * If `true`, no elevation is used.
1198
+ * @default false
1199
+ */
1200
+ disableElevation: n.bool,
1201
+ /**
1202
+ * If `true`, the keyboard focus ripple is disabled.
1203
+ * @default false
1204
+ */
1205
+ disableFocusRipple: n.bool,
1206
+ /**
1207
+ * If `true`, the ripple effect is disabled.
1208
+ *
1209
+ * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
1210
+ * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
1211
+ * @default false
1212
+ */
1213
+ disableRipple: n.bool,
1214
+ /**
1215
+ * Element placed after the children.
1216
+ */
1217
+ endIcon: n.node,
1218
+ /**
1219
+ * @ignore
1220
+ */
1221
+ focusVisibleClassName: n.string,
1222
+ /**
1223
+ * If `true`, the button will take up the full width of its container.
1224
+ * @default false
1225
+ */
1226
+ fullWidth: n.bool,
1227
+ /**
1228
+ * The URL to link to when the button is clicked.
1229
+ * If defined, an `a` element will be used as the root node.
1230
+ */
1231
+ href: n.string,
1232
+ /**
1233
+ * The size of the component.
1234
+ * `small` is equivalent to the dense button styling.
1235
+ * @default 'medium'
1236
+ */
1237
+ size: n.oneOfType([n.oneOf(["small", "medium", "large"]), n.string]),
1238
+ /**
1239
+ * Element placed before the children.
1240
+ */
1241
+ startIcon: n.node,
1242
+ /**
1243
+ * The system prop that allows defining system overrides as well as additional CSS styles.
1244
+ */
1245
+ sx: n.oneOfType([n.arrayOf(n.oneOfType([n.func, n.object, n.bool])), n.func, n.object]),
20
1246
  /**
21
- * Your component tree.
1247
+ * @ignore
22
1248
  */
23
- children: i.node,
1249
+ type: n.oneOfType([n.oneOf(["button", "reset", "submit"]), n.string]),
24
1250
  /**
25
- * By default, the styles are injected last in the <head> element of the page.
26
- * As a result, they gain more specificity than any other style sheet.
27
- * If you want to override MUI's styles, set this prop.
1251
+ * The variant to use.
1252
+ * @default 'text'
28
1253
  */
29
- injectFirst: i.bool
1254
+ variant: n.oneOfType([n.oneOf(["contained", "outlined", "text"]), n.string])
30
1255
  });
31
- const p = ({ text: o, icon: e }) => /* @__PURE__ */ t(c, { injectFirst: !0, children: /* @__PURE__ */ t(d, { variant: "outlined", startIcon: e, className: "border-8", children: "Bonjourr" }) });
32
- p.displayName = "Button";
1256
+ const Yt = Se, qt = ({ onClick: e, text: t, icon: o, className: a, ...i }) => /* @__PURE__ */ P(Yt, { onClick: e, startIcon: o, variant: "outlined", className: a, ...i, children: t });
1257
+ qt.displayName = "Button";
33
1258
  export {
34
- p as default
1259
+ qt as default
35
1260
  };