energy-components 2.2.0 → 2.3.1

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.
@@ -1,24 +1,69 @@
1
- import { defineComponent as q, computed as h, openBlock as s, createElementBlock as r, normalizeClass as i, createElementVNode as d, Fragment as u, renderList as _, normalizeStyle as C, renderSlot as k, createVNode as f, withModifiers as v, unref as g, createCommentVNode as b, toDisplayString as p, createTextVNode as F } from "vue";
2
- import S from "./checkbox.es.js";
3
- import { R as L } from "./icon-svg-CW3eQRcp.js";
4
- import { g as M } from "./getInstance-GhoEcxLF.js";
5
- import { _ as j } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
- import './style/tableRenderer.css';const G = { key: 0 }, J = ["aria-sort", "onClick"], O = {
1
+ import { reactive as le, ref as j, watch as M, getCurrentInstance as se, onUnmounted as re, defineComponent as oe, computed as w, onMounted as ae, nextTick as A, openBlock as o, createElementBlock as a, normalizeClass as b, createElementVNode as d, normalizeStyle as V, Fragment as z, renderList as K, unref as E, withModifiers as L, createCommentVNode as k, renderSlot as N, createVNode as H, toDisplayString as U } from "vue";
2
+ import F from "./checkbox.es.js";
3
+ import ie from "./loader.es.js";
4
+ import { g as ce } from "./getInstance-GhoEcxLF.js";
5
+ import { _ as de } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
+ import './style/tableRenderer.css';const P = 150, ue = 50;
7
+ function X(s, u) {
8
+ if (!s) return u;
9
+ const n = Number.parseFloat(s);
10
+ return Number.isNaN(n) ? u : n;
11
+ }
12
+ function ye(s) {
13
+ const u = le({}), n = j(null), g = () => {
14
+ const y = new Set(s.value.map((i) => i.key));
15
+ for (const i of Object.keys(u))
16
+ y.has(i) || delete u[i];
17
+ for (const i of s.value)
18
+ u[i.key] === void 0 && (u[i.key] = X(i.width, P));
19
+ };
20
+ g(), M(s, g, { deep: !0 });
21
+ let v = 0, p = 0, h = null;
22
+ function S() {
23
+ document.removeEventListener("pointermove", x), document.removeEventListener("pointerup", C), document.removeEventListener("pointercancel", C), document.body.style.cursor = "", document.body.style.userSelect = "";
24
+ }
25
+ function x(y) {
26
+ const i = n.value;
27
+ if (!i) return;
28
+ const f = s.value.find((R) => R.key === i), m = X(f?.minWidth, ue), $ = y.clientX - v;
29
+ u[i] = Math.max(m, p + $);
30
+ }
31
+ function C(y) {
32
+ n.value && (h?.(n.value), n.value = null, S());
33
+ }
34
+ function _(y) {
35
+ const i = new Set(s.value.map((f) => f.key));
36
+ for (const [f, m] of Object.entries(y))
37
+ i.has(f) && (!Number.isFinite(m) || m <= 0 || (u[f] = m));
38
+ }
39
+ function D(y, i, f, m) {
40
+ const $ = s.value.find((T) => T.key === y);
41
+ if (!$ || $.resizable !== !0) return;
42
+ n.value = y, v = i.clientX, p = m || u[y] || P, h = f, i.currentTarget?.setPointerCapture?.(i.pointerId), document.addEventListener("pointermove", x), document.addEventListener("pointerup", C), document.addEventListener("pointercancel", C), document.body.style.cursor = "col-resize", document.body.style.userSelect = "none";
43
+ }
44
+ function B() {
45
+ n.value && (n.value = null, S());
46
+ }
47
+ return se() && re(() => {
48
+ S();
49
+ }), { columnWidths: u, resizingKey: n, startResize: D, stopResize: B, applyMeasuredWidths: _ };
50
+ }
51
+ const be = { key: 0 }, fe = ["aria-sort", "onClick"], me = ["onPointerdown"], _e = {
7
52
  key: 0,
8
53
  class: "header-content header-content--center"
9
- }, P = ["for"], Q = {
54
+ }, ke = ["for"], ve = {
10
55
  key: 0,
11
56
  class: "rds-e-table-renderer__sortable-icon rds-flex rds-flex-center-center rds-flex-col"
12
- }, W = {
57
+ }, pe = {
13
58
  key: 0,
14
59
  class: "loading-row"
15
- }, X = ["colspan"], Y = { class: "loading-overlay" }, Z = ["onClick"], I = ["data-label"], ee = ["for"], te = {
60
+ }, ge = ["colspan"], he = { class: "loading-overlay" }, Ce = ["onClick"], $e = ["data-label"], Re = ["for"], we = {
16
61
  key: 0,
17
62
  class: "rds-e-table-renderer__group--dropdown"
18
- }, le = ["colspan"], se = {
63
+ }, ze = ["colspan"], Se = {
19
64
  key: 1,
20
65
  class: "rds-e-table-renderer__group--spacer"
21
- }, re = ["colspan"], ne = { key: 2 }, oe = ["colspan"], de = { class: "rds-e-table-renderer__empty-state" }, ae = { class: "rds-title-02" }, ce = /* @__PURE__ */ q({
66
+ }, xe = ["colspan"], Ee = { key: 2 }, De = ["colspan"], We = { class: "rds-e-table-renderer__empty-state" }, Ke = { class: "rds-title-02" }, Le = /* @__PURE__ */ oe({
22
67
  __name: "table-renderer",
23
68
  props: {
24
69
  headers: {},
@@ -33,197 +78,255 @@ import './style/tableRenderer.css';const G = { key: 0 }, J = ["aria-sort", "onCl
33
78
  emptyStateText: { default: "No hay elementos a mostrar." },
34
79
  selectedKeys: { default: () => [] },
35
80
  expandedKeys: { default: () => [] },
81
+ resizableColumns: { type: Boolean },
36
82
  rowClass: {},
37
83
  cellClass: {},
38
84
  isRowDisabled: {}
39
85
  },
40
- emits: ["headerClick", "toggleSelectAll", "toggleRowSelection", "rowClick"],
41
- setup(n, { emit: R }) {
42
- const a = n, $ = R, y = M(), w = h(() => [
43
- `rds-e-table-renderer--${a.variant}`,
44
- { "rds-e-table-renderer--condensed": a.condensed }
45
- ]), x = h(() => [
46
- `rds-e-table-renderer__body--${a.variant}`,
47
- { "rds-e-table-renderer__body--condensed": a.condensed }
48
- ]), K = (t, l) => {
49
- const e = t[a.rowKey];
50
- return e !== void 0 ? e : l;
51
- }, D = (t) => {
52
- const l = t[a.rowKey];
53
- return a.selectedKeys.includes(l);
54
- }, m = (t) => {
55
- const l = t[a.rowKey];
56
- return a.expandedKeys.includes(l);
57
- }, V = (t) => a.isRowDisabled ? a.isRowDisabled(t) : !1, B = (t) => ({
58
- [`rds-e-table-renderer__cell--${t.align || "left"}`]: !0,
59
- "rds-e-table-renderer__cell--sortable": t.sortable,
60
- "rds-e-table-renderer__cell--shadow": t.sticky,
61
- "rds-e-table-renderer__cell--no-sticky": !t.sticky,
62
- "rds-e-table-renderer__cell--right": t.align === "right",
63
- "rds-e-table-renderer__cell--center": t.align === "center"
64
- }), A = (t) => {
65
- if (t.sortable)
66
- return t.sort === "asc" ? "ascending" : t.sort === "desc" ? "descending" : "none";
67
- }, E = (t, l) => {
68
- const e = a.rowClass ? a.rowClass(t, l) : "";
86
+ emits: ["headerClick", "toggleSelectAll", "toggleRowSelection", "rowClick", "columnResize"],
87
+ setup(s, { emit: u }) {
88
+ const n = s, g = u, v = ce(), { columnWidths: p, resizingKey: h, startResize: S, stopResize: x, applyMeasuredWidths: C } = ye(w(() => n.headers)), _ = w(() => !!n.resizableColumns), D = j(null), B = w(() => [
89
+ `rds-e-table-renderer--${n.variant}`,
90
+ { "rds-e-table-renderer--condensed": n.condensed },
91
+ { "rds-e-table-renderer--resizable": _.value }
92
+ ]), y = w(() => [
93
+ `rds-e-table-renderer__body--${n.variant}`,
94
+ { "rds-e-table-renderer__body--condensed": n.condensed }
95
+ ]), i = w(() => n.headers.reduce((e, l) => {
96
+ const t = p[l.key];
97
+ return e + (typeof t == "number" ? t : 0);
98
+ }, 0)), f = w(() => {
99
+ if (_.value)
100
+ return {
101
+ minWidth: "100%",
102
+ width: `${i.value}px`
103
+ };
104
+ }), m = (e, l) => {
105
+ const t = e[n.rowKey];
106
+ return t !== void 0 ? t : l;
107
+ }, $ = (e) => {
108
+ const l = e[n.rowKey];
109
+ return n.selectedKeys.includes(l);
110
+ }, R = (e) => {
111
+ const l = e[n.rowKey];
112
+ return n.expandedKeys.includes(l);
113
+ }, T = (e) => n.isRowDisabled ? n.isRowDisabled(e) : !1, q = (e) => ({
114
+ [`rds-e-table-renderer__cell--${e.align || "left"}`]: !0,
115
+ "rds-e-table-renderer__cell--sortable": e.sortable,
116
+ "rds-e-table-renderer__cell--shadow": e.sticky,
117
+ "rds-e-table-renderer__cell--no-sticky": !e.sticky,
118
+ "rds-e-table-renderer__cell--right": e.align === "right",
119
+ "rds-e-table-renderer__cell--center": e.align === "center",
120
+ "rds-e-table-renderer__cell--resizing": h.value === e.key
121
+ }), I = (e) => !_.value || e.type === "selection" || e.type === "actions" ? !1 : e.resizable === !0, W = () => {
122
+ const e = D.value;
123
+ if (!e) return;
124
+ const l = e.querySelectorAll("thead th");
125
+ if (!l.length) return;
126
+ const t = {};
127
+ for (let r = 0; r < n.headers.length; r++) {
128
+ const c = l[r]?.getBoundingClientRect?.().width || 0;
129
+ c > 0 && (t[n.headers[r].key] = c);
130
+ }
131
+ C(t);
132
+ }, O = (e, l) => {
133
+ W();
134
+ const t = p[e];
135
+ S(e, l, G, t);
136
+ };
137
+ function G(e) {
138
+ g("columnResize", { key: e, width: p[e] }), x();
139
+ }
140
+ const J = (e) => {
141
+ if (e.sortable)
142
+ return e.sort === "asc" ? "ascending" : e.sort === "desc" ? "descending" : "none";
143
+ }, Q = (e, l) => {
144
+ const t = n.rowClass ? n.rowClass(e, l) : "";
69
145
  return [
70
146
  { "rds-e-table-renderer__group--odd": l % 2 === 0 },
71
- { "rds-e-table-renderer__group--is-open rds-background-grey": m(t) },
147
+ { "rds-e-table-renderer__group--is-open rds-background-grey": R(e) },
72
148
  { "rds-e-table-renderer__group--expandible": !0 },
73
- e
149
+ t
74
150
  ];
75
- }, N = (t, l, e) => {
76
- const o = a.cellClass ? a.cellClass(t, l, e) : "";
151
+ }, Y = (e, l, t) => {
152
+ const r = n.cellClass ? n.cellClass(e, l, t) : "";
77
153
  return [
78
154
  [`rds-e-table-renderer__cell--${l.align || "left"}`],
79
155
  { "rds-e-table-renderer__cell--shadow": l.sticky },
80
- o
156
+ r
81
157
  ];
82
- }, H = (t, l, e) => {
83
- if (l.formatter) return l.formatter(t[l.key], t, e);
84
- const o = t[l.key];
85
- return o ?? "---";
86
- }, T = (t) => {
87
- t.sortable && $("headerClick", t);
88
- }, U = (t) => {
89
- $("rowClick", t);
158
+ }, Z = (e, l, t) => {
159
+ if (l.formatter) return l.formatter(e[l.key], e, t);
160
+ const r = e[l.key];
161
+ return r ?? "---";
162
+ }, ee = (e) => {
163
+ e.sortable && g("headerClick", e);
164
+ }, te = (e) => {
165
+ g("rowClick", e);
90
166
  };
91
- return (t, l) => (s(), r("div", {
92
- class: i(["rds-e-table-renderer__container", w.value])
167
+ return ae(() => {
168
+ A(() => {
169
+ W();
170
+ });
171
+ }), M(() => n.headers, () => {
172
+ A(() => {
173
+ _.value && (h.value || W());
174
+ });
175
+ }, { deep: !0 }), M(_, (e) => {
176
+ if (!e) {
177
+ x();
178
+ return;
179
+ }
180
+ A(() => {
181
+ h.value || W();
182
+ });
183
+ }), (e, l) => (o(), a("div", {
184
+ class: b(["rds-e-table-renderer__container", B.value])
93
185
  }, [
94
- d("table", null, [
186
+ d("table", {
187
+ ref_key: "tableRef",
188
+ ref: D,
189
+ style: V(f.value)
190
+ }, [
95
191
  d("colgroup", null, [
96
- (s(!0), r(u, null, _(n.headers, (e, o) => (s(), r("col", {
97
- key: `col-${e.key}-${o}`,
98
- style: C({ width: e.width || "auto" })
192
+ (o(!0), a(z, null, K(s.headers, (t, r) => (o(), a("col", {
193
+ key: `col-${t.key}-${r}`,
194
+ style: V({ width: _.value ? `${E(p)[t.key]}px` : t.width || "auto" })
99
195
  }, null, 4))), 128))
100
196
  ]),
101
- n.hideHeaders ? b("", !0) : (s(), r("thead", G, [
197
+ s.hideHeaders ? k("", !0) : (o(), a("thead", be, [
102
198
  d("tr", null, [
103
- (s(!0), r(u, null, _(n.headers, (e, o) => (s(), r("th", {
104
- key: `th-${e.key}-${o}`,
105
- class: i(["rds-e-table-renderer__cell rds-e-table-renderer__cell--heading rds-body-01", B(e)]),
106
- style: C({ width: e.width }),
107
- "aria-sort": A(e),
199
+ (o(!0), a(z, null, K(s.headers, (t, r) => (o(), a("th", {
200
+ key: `th-${t.key}-${r}`,
201
+ class: b(["rds-e-table-renderer__cell rds-e-table-renderer__cell--heading rds-body-01", q(t)]),
202
+ "aria-sort": J(t),
108
203
  scope: "col",
109
- onClick: (c) => T(e)
204
+ onClick: (c) => ee(t)
110
205
  }, [
111
- k(t.$slots, `header-${e.key}`, { header: e }, () => [
112
- e.type === "selection" ? (s(), r(u, { key: 0 }, [
113
- n.hideSelectAll ? b("", !0) : (s(), r("div", O, [
114
- f(S, {
115
- id: `checkbox-all-${g(y)}-${e.key}`,
116
- "is-checked": e.allSelected,
117
- "onUpdate:modelValue": l[0] || (l[0] = (c) => t.$emit("toggleSelectAll", c)),
118
- onClick: l[1] || (l[1] = v(() => {
206
+ I(t) ? (o(), a("div", {
207
+ key: 0,
208
+ class: "rds-e-table-renderer__resize-handle",
209
+ onClick: l[0] || (l[0] = L(() => {
210
+ }, ["stop"])),
211
+ onPointerdown: L((c) => O(t.key, c), ["stop"])
212
+ }, null, 40, me)) : k("", !0),
213
+ N(e.$slots, `header-${t.key}`, { header: t }, () => [
214
+ t.type === "selection" ? (o(), a(z, { key: 0 }, [
215
+ s.hideSelectAll ? k("", !0) : (o(), a("div", _e, [
216
+ H(F, {
217
+ id: `checkbox-all-${E(v)}-${t.key}`,
218
+ "model-value": t.allSelected,
219
+ "onUpdate:modelValue": l[1] || (l[1] = (c) => e.$emit("toggleSelectAll", c)),
220
+ onClick: l[2] || (l[2] = L(() => {
119
221
  }, ["stop"]))
120
- }, null, 8, ["id", "is-checked"]),
222
+ }, null, 8, ["id", "model-value"]),
121
223
  d("label", {
122
- for: `checkbox-all-${g(y)}-${e.key}`,
224
+ for: `checkbox-all-${E(v)}-${t.key}`,
123
225
  class: "rds-checkbox__label rds-checkbox__label--no-text"
124
- }, null, 8, P)
226
+ }, null, 8, ke)
125
227
  ]))
126
- ], 64)) : (s(), r("div", {
228
+ ], 64)) : (o(), a("div", {
127
229
  key: 1,
128
- class: i(["header-content", `header-content--${e.align || "left"}`])
230
+ class: b(["header-content", `header-content--${t.align || "left"}`])
129
231
  }, [
130
232
  d("span", {
131
- class: i(["rds-title-02", { "text-active": !!e.sort }])
132
- }, p(e.text), 3),
133
- e.sortable ? (s(), r("span", Q, [
233
+ class: b(["rds-title-02 header-content__text", { "text-active": !!t.sort }])
234
+ }, U(t.text), 3),
235
+ t.sortable ? (o(), a("span", ve, [
134
236
  d("span", {
135
- class: i(["rds-e-table-renderer__sortable-icon--up sortable-icon", { active: e.sort === "asc" }])
237
+ class: b(["rds-e-table-renderer__sortable-icon--up sortable-icon", { active: t.sort === "asc" }])
136
238
  }, "▲", 2),
137
239
  d("span", {
138
- class: i(["rds-e-table-renderer__sortable-icon--down sortable-icon", { active: e.sort === "desc" }])
240
+ class: b(["rds-e-table-renderer__sortable-icon--down sortable-icon", { active: t.sort === "desc" }])
139
241
  }, "▼", 2)
140
- ])) : b("", !0)
242
+ ])) : k("", !0)
141
243
  ], 2))
142
244
  ], !0)
143
- ], 14, J))), 128))
245
+ ], 10, fe))), 128))
144
246
  ])
145
247
  ])),
146
248
  d("tbody", {
147
- class: i(x.value)
249
+ class: b(y.value)
148
250
  }, [
149
- n.loading ? (s(), r("tr", W, [
251
+ s.loading ? (o(), a("tr", pe, [
150
252
  d("td", {
151
- colspan: n.headers.length,
253
+ colspan: s.headers.length,
152
254
  class: "loading-cell"
153
255
  }, [
154
- d("div", Y, [
155
- f(L, { name: "loading" })
256
+ d("div", he, [
257
+ H(ie, { size: 20 })
156
258
  ])
157
- ], 8, X)
158
- ])) : b("", !0),
159
- n.rows.length > 0 ? (s(!0), r(u, { key: 1 }, _(n.rows, (e, o) => (s(), r(u, {
160
- key: K(e, o)
259
+ ], 8, ge)
260
+ ])) : k("", !0),
261
+ s.rows.length > 0 ? (o(!0), a(z, { key: 1 }, K(s.rows, (t, r) => (o(), a(z, {
262
+ key: m(t, r)
161
263
  }, [
162
264
  d("tr", {
163
- class: i(["rds-e-table-renderer__group", E(e, o)]),
164
- onClick: (c) => U(e)
265
+ class: b(["rds-e-table-renderer__group", Q(t, r)]),
266
+ onClick: (c) => te(t)
165
267
  }, [
166
- (s(!0), r(u, null, _(n.headers, (c, z) => (s(), r("td", {
167
- key: `td-${c.key}-${z}`,
168
- class: i(["rds-e-table-renderer__cell rds-body-01", N(e, c, o)]),
268
+ (o(!0), a(z, null, K(s.headers, (c, ne) => (o(), a("td", {
269
+ key: `td-${c.key}-${ne}`,
270
+ class: b(["rds-e-table-renderer__cell rds-body-01", Y(t, c, r)]),
169
271
  "data-label": c.text
170
272
  }, [
171
- k(t.$slots, `td-${c.key}`, {
172
- item: e,
173
- value: e[c.key],
174
- index: o
273
+ N(e.$slots, `td-${c.key}`, {
274
+ item: t,
275
+ value: t[c.key],
276
+ index: r
175
277
  }, () => [
176
- c.type === "selection" ? (s(), r("div", {
278
+ c.type === "selection" ? (o(), a("div", {
177
279
  key: 0,
178
- class: i(["cell-content", `cell-content--${c.align || "left"}`])
280
+ class: b(["cell-content", `cell-content--${c.align || "left"}`])
179
281
  }, [
180
- f(S, {
181
- id: `chk-${g(y)}-${o}-${c.key}`,
182
- "is-checked": D(e),
183
- disabled: V(e),
184
- "onUpdate:modelValue": () => t.$emit("toggleRowSelection", e),
185
- onClick: l[2] || (l[2] = v(() => {
282
+ H(F, {
283
+ id: `chk-${E(v)}-${r}-${c.key}`,
284
+ "model-value": $(t),
285
+ disabled: T(t),
286
+ "onUpdate:modelValue": () => e.$emit("toggleRowSelection", t),
287
+ onClick: l[3] || (l[3] = L(() => {
186
288
  }, ["stop"]))
187
- }, null, 8, ["id", "is-checked", "disabled", "onUpdate:modelValue"]),
289
+ }, null, 8, ["id", "model-value", "disabled", "onUpdate:modelValue"]),
188
290
  d("label", {
189
- for: `chk-${g(y)}-${o}-${c.key}`,
291
+ for: `chk-${E(v)}-${r}-${c.key}`,
190
292
  class: "rds-checkbox__label rds-checkbox__label--no-text"
191
- }, null, 8, ee)
192
- ], 2)) : (s(), r(u, { key: 1 }, [
193
- F(p(H(e, c, o)), 1)
194
- ], 64))
293
+ }, null, 8, Re)
294
+ ], 2)) : (o(), a("div", {
295
+ key: 1,
296
+ class: b(["cell-text", `cell-text--${c.align || "left"}`])
297
+ }, U(Z(t, c, r)), 3))
195
298
  ], !0)
196
- ], 10, I))), 128))
197
- ], 10, Z),
198
- m(e) ? (s(), r("tr", te, [
299
+ ], 10, $e))), 128))
300
+ ], 10, Ce),
301
+ R(t) ? (o(), a("tr", we, [
199
302
  d("td", {
200
- colspan: n.headers.length,
303
+ colspan: s.headers.length,
201
304
  class: "rds-e-table-renderer__cell rds-e-table-renderer__group--dropdown rds-background-grey"
202
305
  }, [
203
- k(t.$slots, "expandible", { item: e }, void 0, !0)
204
- ], 8, le)
205
- ])) : b("", !0),
206
- !n.condensed && m(e) ? (s(), r("tr", se, [
306
+ N(e.$slots, "expandible", { item: t }, void 0, !0)
307
+ ], 8, ze)
308
+ ])) : k("", !0),
309
+ !s.condensed && R(t) ? (o(), a("tr", Se, [
207
310
  d("td", {
208
- colspan: n.headers.length
209
- }, null, 8, re)
210
- ])) : b("", !0)
211
- ], 64))), 128)) : !n.loading && n.showEmptyState ? (s(), r("tr", ne, [
311
+ colspan: s.headers.length
312
+ }, null, 8, xe)
313
+ ])) : k("", !0)
314
+ ], 64))), 128)) : !s.loading && s.showEmptyState ? (o(), a("tr", Ee, [
212
315
  d("td", {
213
- colspan: n.headers.length
316
+ colspan: s.headers.length
214
317
  }, [
215
- k(t.$slots, "empty", {}, () => [
216
- d("div", de, [
217
- d("h3", ae, p(n.emptyStateText), 1)
318
+ N(e.$slots, "empty", {}, () => [
319
+ d("div", We, [
320
+ d("h3", Ke, U(s.emptyStateText), 1)
218
321
  ])
219
322
  ], !0)
220
- ], 8, oe)
221
- ])) : b("", !0)
323
+ ], 8, De)
324
+ ])) : k("", !0)
222
325
  ], 2)
223
- ])
326
+ ], 4)
224
327
  ], 2));
225
328
  }
226
- }), ke = /* @__PURE__ */ j(ce, [["__scopeId", "data-v-baaf72ee"]]);
329
+ }), Ue = /* @__PURE__ */ de(Le, [["__scopeId", "data-v-9b371162"]]);
227
330
  export {
228
- ke as default
331
+ Ue as default
229
332
  };