bmi-next-brokers 2.2.6 → 2.2.8

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.
@@ -9,6 +9,7 @@ type DrawerButtonProps = {
9
9
  variant?: ButtonVariant;
10
10
  loading?: boolean;
11
11
  id?: string;
12
+ className?: string;
12
13
  };
13
14
  /**
14
15
  * Props del componente Drawer.
@@ -1,156 +1,158 @@
1
- import { jsxs as n, Fragment as P, jsx as d } from "react/jsx-runtime";
2
- import { useState as V, useRef as D } from "react";
3
- import { createPortal as U } from "react-dom";
4
- import { Icon as q } from "../../icons/Icon.js";
5
- import { useScrollLock as J } from "../../hooks/useScrollLock.js";
6
- import { CloseContext as K } from "../../hooks/useClose.js";
7
- import { Button as A } from "../Button/Button.js";
8
- import { useCloseOnBack as Q } from "../../hooks/useCloseOnBack.js";
9
- import '../../assets/index12.css';const B = "_overlay_1fhs2_1", ee = "_closing_1fhs2_12", se = "_bottomDrawer_1fhs2_36", re = "_header_1fhs2_60", ae = "_indicator_1fhs2_73", te = "_drawer_1fhs2_83", de = "_closeDiv_1fhs2_90", ie = "_closeIcon_1fhs2_98", oe = "_drawerHeader_1fhs2_105", le = "_drawerContent_1fhs2_109", ne = "_drawerFooter_1fhs2_122", a = {
1
+ import { jsxs as n, Fragment as V, jsx as l } from "react/jsx-runtime";
2
+ import { useState as U, useRef as D } from "react";
3
+ import { createPortal as q } from "react-dom";
4
+ import { Icon as J } from "../../icons/Icon.js";
5
+ import { useScrollLock as K } from "../../hooks/useScrollLock.js";
6
+ import { CloseContext as Q } from "../../hooks/useClose.js";
7
+ import { Button as S } from "../Button/Button.js";
8
+ import { useCloseOnBack as u } from "../../hooks/useCloseOnBack.js";
9
+ import '../../assets/index12.css';const B = "_overlay_1fhs2_1", ee = "_closing_1fhs2_12", se = "_bottomDrawer_1fhs2_36", re = "_header_1fhs2_60", ae = "_indicator_1fhs2_73", de = "_drawer_1fhs2_83", le = "_closeDiv_1fhs2_90", ie = "_closeIcon_1fhs2_98", te = "_drawerHeader_1fhs2_105", oe = "_drawerContent_1fhs2_109", ne = "_drawerFooter_1fhs2_122", a = {
10
10
  overlay: B,
11
11
  closing: ee,
12
12
  bottomDrawer: se,
13
13
  header: re,
14
14
  indicator: ae,
15
- drawer: te,
16
- closeDiv: de,
15
+ drawer: de,
16
+ closeDiv: le,
17
17
  closeIcon: ie,
18
- drawerHeader: oe,
19
- drawerContent: le,
18
+ drawerHeader: te,
19
+ drawerContent: oe,
20
20
  drawerFooter: ne
21
21
  }, ge = ({
22
22
  isOpen: m,
23
- setIsOpen: I,
24
- title: N,
23
+ setIsOpen: A,
24
+ title: I,
25
25
  zIndex: v,
26
26
  className: H,
27
27
  headerClassName: Y,
28
28
  contentClassName: L,
29
29
  footerClassName: R,
30
30
  onClickOverlay: w,
31
- onClose: c,
31
+ onClose: h,
32
32
  confirmButton: e,
33
33
  cancelButton: s,
34
34
  children: k,
35
- ...u
35
+ ...x
36
36
  }) => {
37
- const x = v ? 50 : 70, [C, g] = V(!1), y = D(0), f = D(0), r = D(null);
38
- let o = 0;
39
- const $ = () => {
37
+ const $ = v ? 50 : 70, [C, g] = U(!1), y = D(0), E = D(0), r = D(null);
38
+ let t = 0;
39
+ const j = () => {
40
40
  if (r.current) {
41
- const t = "slideDown", i = document.styleSheets[0];
41
+ const d = "slideDown", i = document.styleSheets[0];
42
42
  i.insertRule(
43
43
  `
44
- @keyframes ${t} {
45
- from { transform: translateY(${o}px); }
44
+ @keyframes ${d} {
45
+ from { transform: translateY(${t}px); }
46
46
  to { transform: translateY(100%); }
47
47
  }
48
48
  `,
49
49
  i.cssRules.length
50
- ), r.current.style.animation = `${t} 0.35s cubic-bezier(0.4,0,0.2,1) forwards`;
50
+ ), r.current.style.animation = `${d} 0.35s cubic-bezier(0.4,0,0.2,1) forwards`;
51
51
  }
52
- }, j = () => {
52
+ }, X = () => {
53
53
  r.current && (r.current.style.transition = "transform 0.25s cubic-bezier(0.4,0,0.2,1)", r.current.style.transform = "translateY(0)", setTimeout(() => {
54
54
  r.current && (r.current.style.transition = "", r.current.style.transform = "");
55
55
  }, 350));
56
56
  };
57
- J(m);
58
- const X = async () => {
59
- w !== !1 && (typeof w == "function" && await w(), l());
60
- }, E = async () => {
61
- c !== !1 && (typeof c == "function" && await c(), l());
62
- }, l = () => {
63
- $(), g(!0), setTimeout(() => {
64
- I(!1), g(!1);
57
+ K(m);
58
+ const z = async () => {
59
+ w !== !1 && (typeof w == "function" && await w(), o());
60
+ }, f = async () => {
61
+ h !== !1 && (typeof h == "function" && await h(), o());
62
+ }, o = () => {
63
+ j(), g(!0), setTimeout(() => {
64
+ A(!1), g(!1);
65
65
  }, 350);
66
66
  };
67
- Q({ isOpen: m, onClose: E });
68
- const b = (t) => {
69
- const i = "touches" in t ? t.touches[0].clientY : t.clientY;
70
- y.current = i, f.current = i, document.addEventListener("mousemove", h), document.addEventListener("touchmove", h), document.addEventListener("mouseup", _), document.addEventListener("touchend", _);
71
- }, h = (t) => {
72
- const i = "touches" in t ? t.touches[0].clientY : t.clientY;
73
- o = i - y.current, f.current = i, o < 0 && (o = 0), r.current && (r.current.style.transform = `translateY(${o}px)`);
67
+ u({ isOpen: m, onClose: f });
68
+ const N = (d) => {
69
+ const i = "touches" in d ? d.touches[0].clientY : d.clientY;
70
+ y.current = i, E.current = i, document.addEventListener("mousemove", c), document.addEventListener("touchmove", c), document.addEventListener("mouseup", _), document.addEventListener("touchend", _);
71
+ }, c = (d) => {
72
+ const i = "touches" in d ? d.touches[0].clientY : d.clientY;
73
+ t = i - y.current, E.current = i, t < 0 && (t = 0), r.current && (r.current.style.transform = `translateY(${t}px)`);
74
74
  }, _ = () => {
75
- r.current && (r.current.style.transition = ""), document.removeEventListener("mousemove", h), document.removeEventListener("touchmove", h), document.removeEventListener("mouseup", _), document.removeEventListener("touchend", _), o = f.current - y.current, o > 100 && r.current ? E() : j();
76
- }, z = [a.drawer, H].filter(Boolean).join(" "), T = [a.drawerHeader, "title5Bold", Y].filter(Boolean).join(" "), M = [a.drawerContent, L].filter(Boolean).join(" "), F = [a.drawerFooter, R].filter(Boolean).join(" "), G = async () => {
75
+ r.current && (r.current.style.transition = ""), document.removeEventListener("mousemove", c), document.removeEventListener("touchmove", c), document.removeEventListener("mouseup", _), document.removeEventListener("touchend", _), t = E.current - y.current, t > 100 && r.current ? f() : X();
76
+ }, T = [a.drawer, H].filter(Boolean).join(" "), M = [a.drawerHeader, "title5Bold", Y].filter(Boolean).join(" "), F = [a.drawerContent, L].filter(Boolean).join(" "), G = [a.drawerFooter, R].filter(Boolean).join(" "), W = async () => {
77
77
  if (e != null && e.action)
78
78
  try {
79
- await e.action(), l();
79
+ await e.action(), o();
80
80
  } catch {
81
81
  return;
82
82
  }
83
- }, W = async () => {
83
+ }, Z = async () => {
84
84
  if (s != null && s.action)
85
85
  try {
86
- await s.action(), l();
86
+ await s.action(), o();
87
87
  } catch {
88
88
  return;
89
89
  }
90
- }, Z = s && Object.keys(s).length > 0, O = e && Object.keys(e).length > 0, p = Z && (s.show ?? !0), S = O && (e.show ?? !0);
91
- return m ? U(
92
- /* @__PURE__ */ n(P, { children: [
93
- /* @__PURE__ */ d(
90
+ }, O = s && Object.keys(s).length > 0, P = e && Object.keys(e).length > 0, b = O && (s.show ?? !0), p = P && (e.show ?? !0);
91
+ return m ? q(
92
+ /* @__PURE__ */ n(V, { children: [
93
+ /* @__PURE__ */ l(
94
94
  "div",
95
95
  {
96
96
  style: { zIndex: 3e3 + (v || 0) },
97
97
  className: `${a.overlay} ${C ? a.closing : ""}`,
98
- onClick: X
98
+ onClick: z
99
99
  }
100
100
  ),
101
101
  /* @__PURE__ */ n(
102
102
  "div",
103
103
  {
104
104
  ref: r,
105
- ...u,
105
+ ...x,
106
106
  className: `${a.bottomDrawer} ${C ? a.closing : ""}`,
107
107
  style: {
108
108
  zIndex: 3001 + (v || 0)
109
109
  },
110
110
  children: [
111
- c !== !1 && /* @__PURE__ */ n(
111
+ h !== !1 && /* @__PURE__ */ n(
112
112
  "header",
113
113
  {
114
114
  className: a.header,
115
- onMouseDown: b,
116
- onTouchStart: b,
115
+ onMouseDown: N,
116
+ onTouchStart: N,
117
117
  children: [
118
- /* @__PURE__ */ d("div", { className: a.indicator }),
119
- /* @__PURE__ */ d("div", { className: a.closeDiv, children: /* @__PURE__ */ d("div", { className: a.closeIcon, onClick: E, children: /* @__PURE__ */ d(q, { name: "CloseDrawer", size: 31 }) }) })
118
+ /* @__PURE__ */ l("div", { className: a.indicator }),
119
+ /* @__PURE__ */ l("div", { className: a.closeDiv, children: /* @__PURE__ */ l("div", { className: a.closeIcon, onClick: f, children: /* @__PURE__ */ l(J, { name: "CloseDrawer", size: 31 }) }) })
120
120
  ]
121
121
  }
122
122
  ),
123
- /* @__PURE__ */ d(K.Provider, { value: l, children: /* @__PURE__ */ n(
123
+ /* @__PURE__ */ l(Q.Provider, { value: o, children: /* @__PURE__ */ n(
124
124
  "div",
125
125
  {
126
- className: z,
127
- style: { maxHeight: `${x}dvh` },
126
+ className: T,
127
+ style: { maxHeight: `${$}dvh` },
128
128
  children: [
129
- /* @__PURE__ */ d("span", { className: T, children: N }),
130
- /* @__PURE__ */ d("div", { className: M, children: k }),
131
- (p || S) && /* @__PURE__ */ n("div", { className: F, children: [
132
- p && /* @__PURE__ */ d(
133
- A,
129
+ /* @__PURE__ */ l("span", { className: M, children: I }),
130
+ /* @__PURE__ */ l("div", { className: F, children: k }),
131
+ (b || p) && /* @__PURE__ */ n("div", { className: G, children: [
132
+ b && /* @__PURE__ */ l(
133
+ S,
134
134
  {
135
135
  variant: (s == null ? void 0 : s.variant) || "outline",
136
- onClick: W,
136
+ onClick: Z,
137
137
  disabled: (s == null ? void 0 : s.disabled) || !1,
138
138
  size: (s == null ? void 0 : s.size) || "small",
139
139
  loading: s == null ? void 0 : s.loading,
140
+ className: s == null ? void 0 : s.className,
140
141
  fullWidth: !0,
141
142
  children: (s == null ? void 0 : s.text) || "Cancelar"
142
143
  }
143
144
  ),
144
- S && /* @__PURE__ */ d(
145
- A,
145
+ p && /* @__PURE__ */ l(
146
+ S,
146
147
  {
147
148
  type: "submit",
148
149
  form: e == null ? void 0 : e.id,
149
150
  variant: (e == null ? void 0 : e.variant) || "brand",
150
- onClick: G,
151
+ onClick: W,
151
152
  disabled: (e == null ? void 0 : e.disabled) || !1,
152
153
  size: (e == null ? void 0 : e.size) || "small",
153
154
  loading: e == null ? void 0 : e.loading,
155
+ className: e == null ? void 0 : e.className,
154
156
  fullWidth: !0,
155
157
  children: (e == null ? void 0 : e.text) || "Confirmar"
156
158
  }
@@ -9,6 +9,7 @@ type ModalButtonProps = {
9
9
  variant?: ButtonVariant;
10
10
  loading?: boolean;
11
11
  id?: string;
12
+ className?: string;
12
13
  };
13
14
  /**
14
15
  * Props del Modal
@@ -1,99 +1,100 @@
1
- import { jsx as d, jsxs as h } from "react/jsx-runtime";
1
+ import { jsx as a, jsxs as h } from "react/jsx-runtime";
2
2
  import { useRef as p, useState as v, useEffect as M } from "react";
3
- import { Icon as P } from "../../icons/Icon.js";
4
- import { useScrollLock as q } from "../../hooks/useScrollLock.js";
5
- import { Button as C } from "../Button/Button.js";
6
- import { createPortal as G } from "react-dom";
7
- import '../../assets/index7.css';const J = "_modalOverlay_1hyzx_1", K = "_closing_1hyzx_15", Q = "_modalLayout_1hyzx_37", U = "_modal_1hyzx_1", n = "_modalHeader_1hyzx_57", u = "_withBorder_1hyzx_65", B = "_modalTitle_1hyzx_70", ss = "_closeIcon_1hyzx_82", es = "_modalBody_1hyzx_95", ls = "_modalFooter_1hyzx_106", as = "_buttonsDiv_1hyzx_111", ds = "_fullWidthFooter_1hyzx_121", l = {
8
- modalOverlay: J,
9
- closing: K,
10
- modalLayout: Q,
11
- modal: U,
3
+ import { Icon as q } from "../../icons/Icon.js";
4
+ import { useScrollLock as G } from "../../hooks/useScrollLock.js";
5
+ import { CloseContext as J } from "../../hooks/useClose.js";
6
+ import { Button as E } from "../Button/Button.js";
7
+ import { createPortal as K } from "react-dom";
8
+ import '../../assets/index7.css';const Q = "_modalOverlay_1hyzx_1", U = "_closing_1hyzx_15", c = "_modalLayout_1hyzx_37", u = "_modal_1hyzx_1", n = "_modalHeader_1hyzx_57", B = "_withBorder_1hyzx_65", ss = "_modalTitle_1hyzx_70", es = "_closeIcon_1hyzx_82", ls = "_modalBody_1hyzx_95", as = "_modalFooter_1hyzx_106", ds = "_buttonsDiv_1hyzx_111", rs = "_fullWidthFooter_1hyzx_121", l = {
9
+ modalOverlay: Q,
10
+ closing: U,
11
+ modalLayout: c,
12
+ modal: u,
12
13
  modalHeader: n,
13
- withBorder: u,
14
- modalTitle: B,
15
- closeIcon: ss,
16
- modalBody: es,
17
- modalFooter: ls,
18
- buttonsDiv: as,
19
- fullWidthFooter: ds
20
- }, ms = ({
14
+ withBorder: B,
15
+ modalTitle: ss,
16
+ closeIcon: es,
17
+ modalBody: ls,
18
+ modalFooter: as,
19
+ buttonsDiv: ds,
20
+ fullWidthFooter: rs
21
+ }, bs = ({
21
22
  isOpen: m,
22
- title: t,
23
- children: x,
24
- width: N = 752,
23
+ title: x,
24
+ children: b,
25
+ width: I = 752,
25
26
  confirmButton: s,
26
27
  cancelButton: e,
27
- zIndex: E,
28
- className: I,
29
- style: S,
28
+ zIndex: S,
29
+ className: $,
30
+ style: f,
30
31
  onClickOverlay: y,
31
- onClose: i,
32
- closeModal: $,
33
- withScroll: c = !0,
34
- fullWidthFooter: k = !1,
35
- helperElement: L,
36
- ...O
32
+ onClose: o,
33
+ closeModal: k,
34
+ withScroll: L = !0,
35
+ fullWidthFooter: O = !1,
36
+ helperElement: F,
37
+ ...H
37
38
  }) => {
38
- const b = p(null), [F, g] = v(!1), _ = p(null), [H, T] = v(!1), [W, D] = v(!1);
39
- q(m);
40
- const o = () => {
41
- g(!0), setTimeout(() => {
42
- $(), g(!1);
39
+ const g = p(null), [T, w] = v(!1), _ = p(null), [W, t] = v(!1), [D, R] = v(!1);
40
+ G(m);
41
+ const i = () => {
42
+ w(!0), setTimeout(() => {
43
+ k(), w(!1);
43
44
  }, 250);
44
- }, R = async (a) => {
45
+ }, j = async (d) => {
45
46
  var r;
46
- (r = b.current) != null && r.contains(a.target) || y !== !1 && (typeof y == "function" && await y(), o());
47
- }, j = async () => {
48
- i !== !1 && (typeof i == "function" && await i(), o());
47
+ (r = g.current) != null && r.contains(d.target) || y !== !1 && (typeof y == "function" && await y(), i());
49
48
  }, A = async () => {
49
+ o !== !1 && (typeof o == "function" && await o(), i());
50
+ }, Y = async () => {
50
51
  if (s != null && s.action)
51
52
  try {
52
- await s.action(), o();
53
+ await s.action(), i();
53
54
  } catch {
54
55
  return;
55
56
  }
56
- }, Y = async () => {
57
+ }, P = async () => {
57
58
  if (e != null && e.action)
58
59
  try {
59
- await e.action(), o();
60
+ await e.action(), i();
60
61
  } catch {
61
62
  return;
62
63
  }
63
- }, V = e && Object.keys(e).length > 0, X = s && Object.keys(s).length > 0, w = V && (e.show ?? !0), z = X && (s.show ?? !0), Z = `${l.modal} ${I || ""}`;
64
+ }, V = e && Object.keys(e).length > 0, X = s && Object.keys(s).length > 0, z = V && (e.show ?? !0), C = X && (s.show ?? !0), Z = `${l.modal} ${$ || ""}`;
64
65
  return M(() => {
65
66
  if (!_.current) return;
66
- const a = _.current, r = () => {
67
- D(a.scrollTop > 0), T(a.scrollHeight > a.clientHeight);
67
+ const d = _.current, r = () => {
68
+ R(d.scrollTop > 0), t(d.scrollHeight > d.clientHeight);
68
69
  };
69
- r(), a.addEventListener("scroll", r);
70
- const f = new ResizeObserver(r);
71
- return f.observe(a), () => {
72
- a.removeEventListener("scroll", r), f.disconnect();
70
+ r(), d.addEventListener("scroll", r);
71
+ const N = new ResizeObserver(r);
72
+ return N.observe(d), () => {
73
+ d.removeEventListener("scroll", r), N.disconnect();
73
74
  };
74
- }, [x]), m ? G(
75
- /* @__PURE__ */ d(
75
+ }, [b]), m ? K(
76
+ /* @__PURE__ */ a(
76
77
  "div",
77
78
  {
78
- className: `${l.modalOverlay} ${F ? l.closing : ""}`,
79
- style: { zIndex: 3e3 + (E || 0) },
80
- onClick: R,
81
- children: /* @__PURE__ */ h("div", { ref: b, className: l.modalLayout, children: [
79
+ className: `${l.modalOverlay} ${T ? l.closing : ""}`,
80
+ style: { zIndex: 3e3 + (S || 0) },
81
+ onClick: j,
82
+ children: /* @__PURE__ */ h("div", { ref: g, className: l.modalLayout, children: [
82
83
  /* @__PURE__ */ h(
83
84
  "div",
84
85
  {
85
86
  className: Z,
86
- style: { maxWidth: N, ...S },
87
- ...O,
87
+ style: { maxWidth: I, ...f },
88
+ ...H,
88
89
  children: [
89
90
  /* @__PURE__ */ h(
90
91
  "div",
91
92
  {
92
- className: `${l.modalHeader} ${W ? l.withBorder : ""}`,
93
+ className: `${l.modalHeader} ${D ? l.withBorder : ""}`,
93
94
  children: [
94
- t && /* @__PURE__ */ d("span", { className: l.modalTitle, children: t }),
95
- i !== !1 && /* @__PURE__ */ d("div", { className: l.closeIcon, onClick: j, children: /* @__PURE__ */ d(
96
- P,
95
+ x && /* @__PURE__ */ a("span", { className: l.modalTitle, children: x }),
96
+ o !== !1 && /* @__PURE__ */ a("div", { className: l.closeIcon, onClick: A, children: /* @__PURE__ */ a(
97
+ q,
97
98
  {
98
99
  name: "Close",
99
100
  width: 12,
@@ -104,48 +105,50 @@ import '../../assets/index7.css';const J = "_modalOverlay_1hyzx_1", K = "_closin
104
105
  ]
105
106
  }
106
107
  ),
107
- /* @__PURE__ */ d(
108
+ /* @__PURE__ */ a(
108
109
  "div",
109
110
  {
110
111
  className: l.modalBody,
111
112
  style: {
112
- overflowY: c ? "auto" : "hidden"
113
+ overflowY: L ? "auto" : "hidden"
113
114
  },
114
115
  ref: _,
115
- children: x
116
+ children: /* @__PURE__ */ a(J.Provider, { value: i, children: b })
116
117
  }
117
118
  ),
118
- (w || z) && /* @__PURE__ */ d(
119
+ (z || C) && /* @__PURE__ */ a(
119
120
  "div",
120
121
  {
121
- className: `${l.modalFooter} ${H ? l.withBorder : ""}`,
122
+ className: `${l.modalFooter} ${W ? l.withBorder : ""}`,
122
123
  children: /* @__PURE__ */ h(
123
124
  "div",
124
125
  {
125
- className: `${l.buttonsDiv} ${k ? l.fullWidthFooter : ""}`,
126
+ className: `${l.buttonsDiv} ${O ? l.fullWidthFooter : ""}`,
126
127
  children: [
127
- w && /* @__PURE__ */ d(
128
- C,
128
+ z && /* @__PURE__ */ a(
129
+ E,
129
130
  {
130
131
  variant: (e == null ? void 0 : e.variant) || "outline",
131
- onClick: Y,
132
+ onClick: P,
132
133
  disabled: (e == null ? void 0 : e.disabled) || !1,
133
134
  size: (e == null ? void 0 : e.size) || "small",
134
135
  loading: e == null ? void 0 : e.loading,
136
+ className: e == null ? void 0 : e.className,
135
137
  fullWidth: !0,
136
138
  children: (e == null ? void 0 : e.text) || "Cancelar"
137
139
  }
138
140
  ),
139
- z && /* @__PURE__ */ d(
140
- C,
141
+ C && /* @__PURE__ */ a(
142
+ E,
141
143
  {
142
144
  type: "submit",
143
145
  form: s == null ? void 0 : s.id,
144
146
  variant: (s == null ? void 0 : s.variant) || "brand",
145
- onClick: A,
147
+ onClick: Y,
146
148
  disabled: (s == null ? void 0 : s.disabled) || !1,
147
149
  size: (s == null ? void 0 : s.size) || "small",
148
150
  loading: s == null ? void 0 : s.loading,
151
+ className: s == null ? void 0 : s.className,
149
152
  fullWidth: !0,
150
153
  children: (s == null ? void 0 : s.text) || "Confirmar"
151
154
  }
@@ -158,7 +161,7 @@ import '../../assets/index7.css';const J = "_modalOverlay_1hyzx_1", K = "_closin
158
161
  ]
159
162
  }
160
163
  ),
161
- L
164
+ F
162
165
  ] })
163
166
  }
164
167
  ),
@@ -166,5 +169,5 @@ import '../../assets/index7.css';const J = "_modalOverlay_1hyzx_1", K = "_closin
166
169
  ) : null;
167
170
  };
168
171
  export {
169
- ms as Modal
172
+ bs as Modal
170
173
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bmi-next-brokers",
3
3
  "description": "Componentes de UI para proyecto BMI Next Brokers",
4
- "version": "2.2.6",
4
+ "version": "2.2.8",
5
5
  "author": "BMI Ahorro España",
6
6
  "contributors": [
7
7
  "José Ramón Jiménez <jrjimenez@bmicos.com>",