sakana-element 2.1.5 → 2.3.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 (157) hide show
  1. package/README.md +95 -19
  2. package/dist/es/{Alert-C76ZWSVk.js → Alert-BwTsp4X3.js} +2 -2
  3. package/dist/es/Avatar-CJu6JYV3.js +9 -0
  4. package/dist/es/Badge-BmxZXX8k.js +14 -0
  5. package/dist/es/Breadcrumb-BP8MSklj.js +15 -0
  6. package/dist/es/{Button-fW_ZOLmT.js → Button-BJHtN7gh.js} +5 -5
  7. package/dist/es/Card-DJHkCmsz.js +16 -0
  8. package/dist/es/Checkbox-DX8L3fyp.js +51 -0
  9. package/dist/es/Collapse-Ir3V9CuO.js +53 -0
  10. package/dist/es/ConfigProvider-CsbSqwwi.js +44 -0
  11. package/dist/es/Divider-C7PtODSK.js +9 -0
  12. package/dist/es/Drawer-C2eVmvUp.js +40 -0
  13. package/dist/es/Dropdown-CVg_c2fB.js +104 -0
  14. package/dist/es/FileInput-BE26BmXm.js +33 -0
  15. package/dist/es/Form-7lZt5ehf.js +122 -0
  16. package/dist/es/{Icon-DpJyuj7c.js → Icon-BLDDdSU-.js} +1 -1
  17. package/dist/es/Indicator-B-en-MgG.js +9 -0
  18. package/dist/es/{Input-DBPpvf0Y.js → Input-C5HuVehE.js} +4 -4
  19. package/dist/es/Link-Av9RdcFv.js +11 -0
  20. package/dist/es/Loading-CBNDUWQd.js +92 -0
  21. package/dist/es/Message-DgnyyuXn.js +152 -0
  22. package/dist/es/Notification-LYRXnVAf.js +69 -0
  23. package/dist/es/{Overlay-BRDSWspM.js → Overlay-CpvMhnuU.js} +1 -1
  24. package/dist/es/Pixelate-BPypBgJU.js +67 -0
  25. package/dist/es/Popconfirm-DvxFdLrw.js +23 -0
  26. package/dist/es/Progress-Bc5INMhJ.js +12 -0
  27. package/dist/es/Radio-263_rtRl.js +33 -0
  28. package/dist/es/Select-7ZxUCS8z.js +133 -0
  29. package/dist/es/Switch-DiCsMJT3.js +34 -0
  30. package/dist/es/Table-BvA_xzDe.js +10 -0
  31. package/dist/es/Tooltip-J3ji6weH.js +74 -0
  32. package/dist/es/hooks-BqobYUzS.js +171 -0
  33. package/dist/es/index.js +94 -64
  34. package/dist/{theme → es/theme}/Alert.css +1 -1
  35. package/dist/es/theme/Avatar.css +86 -0
  36. package/dist/{theme → es/theme}/Badge.css +36 -30
  37. package/dist/es/theme/Breadcrumb.css +192 -0
  38. package/dist/{theme → es/theme}/Button.css +216 -216
  39. package/dist/es/theme/Card.css +347 -0
  40. package/dist/es/theme/Checkbox.css +484 -0
  41. package/dist/{theme → es/theme}/Collapse.css +214 -54
  42. package/dist/es/theme/Divider.css +111 -0
  43. package/dist/es/theme/Drawer.css +206 -0
  44. package/dist/es/theme/Dropdown.css +471 -0
  45. package/dist/es/theme/FileInput.css +365 -0
  46. package/dist/es/theme/Form.css +83 -0
  47. package/dist/es/theme/Indicator.css +159 -0
  48. package/dist/{theme → es/theme}/Input.css +1 -0
  49. package/dist/es/theme/Link.css +69 -0
  50. package/dist/es/theme/Loading.css +266 -0
  51. package/dist/es/theme/Message.css +565 -0
  52. package/dist/es/theme/Notification.css +316 -0
  53. package/dist/es/theme/Popconfirm.css +46 -0
  54. package/dist/es/theme/Progress.css +278 -0
  55. package/dist/es/theme/Radio.css +426 -0
  56. package/dist/{theme → es/theme}/Select.css +78 -78
  57. package/dist/es/theme/Table.css +680 -0
  58. package/dist/es/theme/Tooltip.css +235 -0
  59. package/dist/es/utils-BS5vsvlM.js +101 -0
  60. package/dist/index.css +1 -1
  61. package/dist/types/components/Avatar/index.d.ts +30 -0
  62. package/dist/types/components/Avatar/types.d.ts +8 -0
  63. package/dist/types/components/Badge/types.d.ts +1 -0
  64. package/dist/types/components/Breadcrumb/constants.d.ts +3 -0
  65. package/dist/types/components/Breadcrumb/index.d.ts +45 -0
  66. package/dist/types/components/Breadcrumb/types.d.ts +13 -0
  67. package/dist/types/components/Card/types.d.ts +6 -0
  68. package/dist/types/components/Checkbox/constants.d.ts +5 -0
  69. package/dist/types/components/Checkbox/index.d.ts +94 -0
  70. package/dist/types/components/Checkbox/types.d.ts +46 -0
  71. package/dist/types/components/Collapse/constants.d.ts +3 -0
  72. package/dist/types/components/Collapse/index.d.ts +14 -8
  73. package/dist/types/components/Collapse/types.d.ts +12 -0
  74. package/dist/types/components/Divider/index.d.ts +30 -0
  75. package/dist/types/components/Divider/types.d.ts +10 -0
  76. package/dist/types/components/Drawer/constants.d.ts +1 -0
  77. package/dist/types/components/Drawer/index.d.ts +72 -0
  78. package/dist/types/components/Drawer/types.d.ts +20 -0
  79. package/dist/types/components/Dropdown/index.d.ts +11 -1
  80. package/dist/types/components/Dropdown/types.d.ts +3 -0
  81. package/dist/types/components/Dropdown/useDropdownKeyboard.d.ts +8 -0
  82. package/dist/types/components/FileInput/constants.d.ts +3 -0
  83. package/dist/types/components/FileInput/index.d.ts +58 -0
  84. package/dist/types/components/FileInput/types.d.ts +24 -0
  85. package/dist/types/components/Form/types.d.ts +17 -7
  86. package/dist/types/components/Indicator/constants.d.ts +2 -0
  87. package/dist/types/components/Indicator/index.d.ts +28 -0
  88. package/dist/types/components/Indicator/types.d.ts +10 -0
  89. package/dist/types/components/Input/index.d.ts +10 -10
  90. package/dist/types/components/Link/index.d.ts +34 -0
  91. package/dist/types/components/Link/types.d.ts +10 -0
  92. package/dist/types/components/Loading/index.d.ts +25 -0
  93. package/dist/types/components/Loading/types.d.ts +9 -0
  94. package/dist/types/components/Message/methods.d.ts +2 -0
  95. package/dist/types/components/Message/types.d.ts +9 -3
  96. package/dist/types/components/MessageBox/types.d.ts +16 -4
  97. package/dist/types/components/Notification/index.d.ts +1 -1
  98. package/dist/types/components/Notification/methods.d.ts +6 -1
  99. package/dist/types/components/Notification/types.d.ts +10 -4
  100. package/dist/types/components/Pixelate/constants.d.ts +2 -0
  101. package/dist/types/components/Pixelate/index.d.ts +71 -0
  102. package/dist/types/components/Pixelate/types.d.ts +23 -0
  103. package/dist/types/components/Popconfirm/index.d.ts +16 -7
  104. package/dist/types/components/Popconfirm/types.d.ts +2 -1
  105. package/dist/types/components/Progress/constants.d.ts +2 -0
  106. package/dist/types/components/Progress/index.d.ts +50 -0
  107. package/dist/types/components/Progress/types.d.ts +22 -0
  108. package/dist/types/components/Radio/constants.d.ts +5 -0
  109. package/dist/types/components/Radio/index.d.ts +88 -0
  110. package/dist/types/components/Radio/types.d.ts +43 -0
  111. package/dist/types/components/Select/constants.d.ts +2 -1
  112. package/dist/types/components/Select/index.d.ts +35 -26
  113. package/dist/types/components/Switch/index.d.ts +5 -5
  114. package/dist/types/components/Table/index.d.ts +27 -0
  115. package/dist/types/components/Table/types.d.ts +20 -0
  116. package/dist/types/components/Tooltip/index.d.ts +6 -0
  117. package/dist/types/components/Tooltip/types.d.ts +7 -0
  118. package/dist/types/components/index.d.ts +12 -0
  119. package/dist/types/hooks/index.d.ts +3 -1
  120. package/dist/types/hooks/useDraggable.d.ts +7 -0
  121. package/dist/types/hooks/useFocusTrap.d.ts +5 -0
  122. package/dist/types/hooks/vitest.setup.d.ts +4 -0
  123. package/dist/types/utils/index.d.ts +1 -0
  124. package/dist/types/utils/instance-management.d.ts +40 -0
  125. package/dist/umd/index.css +1 -1
  126. package/dist/umd/index.css.gz +0 -0
  127. package/dist/umd/index.umd.cjs +5 -14
  128. package/dist/umd/index.umd.cjs.gz +0 -0
  129. package/package.json +5 -6
  130. package/dist/es/Badge-BG-vYP8Y.js +0 -13
  131. package/dist/es/Card-BCBnlVi_.js +0 -12
  132. package/dist/es/Collapse-B08VhCVq.js +0 -38
  133. package/dist/es/ConfigProvider-DZO1d5Eq.js +0 -44
  134. package/dist/es/Dropdown-49nf6F8P.js +0 -40
  135. package/dist/es/Form-CGiTDSGI.js +0 -108
  136. package/dist/es/Loading-DlygqGOv.js +0 -88
  137. package/dist/es/Message-ganFfLeU.js +0 -123
  138. package/dist/es/Notification-D4RYHV9o.js +0 -58
  139. package/dist/es/Popconfirm-Cop44KwQ.js +0 -22
  140. package/dist/es/Select-Blw_iO2r.js +0 -133
  141. package/dist/es/Switch-CHjcLtHs.js +0 -34
  142. package/dist/es/Tooltip-HWx_i2FA.js +0 -74
  143. package/dist/es/hooks-CYdEHUVd.js +0 -105
  144. package/dist/es/utils-bsCscZfS.js +0 -84
  145. package/dist/theme/Card.css +0 -112
  146. package/dist/theme/Dropdown.css +0 -187
  147. package/dist/theme/Form.css +0 -52
  148. package/dist/theme/Loading.css +0 -78
  149. package/dist/theme/Message.css +0 -353
  150. package/dist/theme/Notification.css +0 -126
  151. package/dist/theme/Popconfirm.css +0 -30
  152. package/dist/theme/Tooltip.css +0 -111
  153. /package/dist/{theme → es/theme}/Icon.css +0 -0
  154. /package/dist/{theme → es/theme}/Overlay.css +0 -0
  155. /package/dist/{theme → es/theme}/Switch.css +0 -0
  156. /package/dist/{theme → es/theme}/fonts/zpix.woff2 +0 -0
  157. /package/dist/{theme → es/theme}/index.css +0 -0
@@ -1,133 +0,0 @@
1
- import { R as e, _ as l, c as t, r as o, w as a } from "./utils-bsCscZfS.js";
2
- import { defineComponent as i, inject as s, computed as n, createElementBlock as u, openBlock as r, withModifiers as d, normalizeClass as c, renderSlot as p, createVNode as h, unref as v, useSlots as f, ref as g, reactive as m, watchEffect as b, watch as y, onMounted as x, onBeforeUnmount as _, provide as V, normalizeStyle as w, withCtx as I, createCommentVNode as M, createElementVNode as k, Fragment as S, renderList as O, createBlock as L, mergeProps as B, nextTick as z } from "vue";
3
- import { C as D, D as j, g as C, b as F, s as R, e as $, E, F as H, f as P, y as N, q as W, i as q, G as A, c as T } from "./vendor-DXmGx29U.js";
4
- import { u as U, c as G, a as K } from "./hooks-CYdEHUVd.js";
5
- import { P as J } from "./Icon-DpJyuj7c.js";
6
- import { _ as Q } from "./Input-DBPpvf0Y.js";
7
- import { T as X } from "./Tooltip-HWx_i2FA.js";
8
- const Y = Symbol("selectContext"), Z = { modifiers: [{ name: "offset", options: { offset: [0, 9] } }, { name: "sameWidth", enabled: true, fn: ({ state: e2 }) => {
9
- e2.styles.popper.width = `${e2.rects.reference.width}px`;
10
- }, phase: "beforeWrite", requires: ["computeStyles"] }] }, ee = /* @__PURE__ */ new Set(["primary", "success", "warning", "danger", "info"]), le = { default: { "item-selected-font-color": "color", "item-selected-bg-color": "light", "item-indicator-color": "color", "item-highlighted-border-color": "color" }, ghost: { "item-selected-font-color": "color", "item-selected-bg-color": "light", "item-indicator-color": "color", "item-highlighted-border-color": "color" } }, te = ["id"], oe = l(i({ name: "PxOption", __name: "Option", props: { value: {}, label: {}, disabled: { type: Boolean, default: false } }, setup(l2) {
11
- const t2 = l2, o2 = s(Y), a2 = n((() => {
12
- var _a;
13
- return ((_a = o2 == null ? void 0 : o2.selectStates.selectedOption) == null ? void 0 : _a.value) === t2.value;
14
- })), i2 = n((() => D(["label", "value"], ((e2) => j(C(o2, ["highlightedLine", "value", e2]), C(t2, e2))))));
15
- function f2() {
16
- t2.disabled || (o2 == null ? void 0 : o2.handleSelect(t2));
17
- }
18
- return (l3, s2) => (r(), u("li", { class: c(["px-select__menu-item", { "is-disabled": l3.disabled, "is-selected": a2.value, "is-highlighted": i2.value }]), id: `select-item-${l3.value}`, onClick: d(f2, ["stop"]) }, [p(l3.$slots, "default", {}, (() => {
19
- var _a, _b;
20
- return [h(v(e), { vNode: ((_a = v(o2)) == null ? void 0 : _a.renderLabel) ? (_b = v(o2)) == null ? void 0 : _b.renderLabel(t2) : l3.label }, null, 8, ["vNode"])];
21
- }), true)], 10, te));
22
- } }), [["__scopeId", "data-v-c5f1823d"]]), ae = { key: 0, class: "px-select__loading" }, ie = { key: 1, class: "px-select__nodata" }, se = { class: "px-select__menu" }, ne = a(l(i({ name: "PxSelect", __name: "Select", props: { modelValue: {}, id: {}, options: { default: () => [] }, placeholder: {}, disabled: { type: Boolean }, clearable: { type: Boolean }, ghost: { type: Boolean }, color: {}, size: {}, renderLabel: {}, filterable: { type: Boolean }, filterMethod: {}, remote: { type: Boolean }, remoteMethod: {} }, emits: ["update:modelValue", "change", "visible-change", "clear", "focus", "blur"], setup(e2, { expose: l2, emit: a2 }) {
23
- const i2 = e2, s2 = a2, p2 = f(), D2 = g(), te2 = g(), ne2 = g(), ue2 = g(/* @__PURE__ */ new Map()), re = g(i2.options ?? []), de = g(false), ce = Ee(i2.modelValue), pe = m({ inputValue: (ce == null ? void 0 : ce.label) ?? "", selectedOption: ce, mouseHover: false, loading: false, highlightedIndex: -1 }), he = n((() => i2.disabled)), ve = n((() => ee.has(i2.color ?? ""))), fe = n((() => !!i2.color && !ve.value)), ge = n((() => {
24
- if (!fe.value) return {};
25
- const e3 = t(i2.color), l3 = i2.ghost ? "ghost" : "default";
26
- return o(e3, "px-select", le[l3]);
27
- })), me = n((() => {
28
- var _a;
29
- return F((_a = p2 == null ? void 0 : p2.default) == null ? void 0 : _a.call(p2), ((e3) => j(e3.type, oe)));
30
- })), be = n((() => R(me.value) > 0)), ye = n((() => i2.clearable && pe.mouseHover && "" !== pe.inputValue)), xe = n((() => {
31
- let e3;
32
- return e3 = be.value ? [...ue2.value.values()][pe.highlightedIndex] : re.value[pe.highlightedIndex], e3;
33
- })), _e = n((() => be.value ? $(me.value, ((e3) => {
34
- var _a, _b, _c;
35
- return { props: { ...e3.props, disabled: true === ((_a = e3.props) == null ? void 0 : _a.disabled) || !q((_b = e3.props) == null ? void 0 : _b.disabled) && !A((_c = e3.props) == null ? void 0 : _c.disabled) } };
36
- })) : [])), Ve = n((() => !!i2.filterable && !we.value)), we = n((() => be.value && ue2.value.size > 0 || !be.value && R(re.value) > 0)), Ie = n((() => be.value ? ue2.value.size - 1 : R(re.value) - 1)), Me = n((() => i2.filterable && pe.selectedOption && de.value ? pe.selectedOption.label : i2.placeholder)), ke = n((() => i2.remote ? 300 : 100));
37
- let Se = E(Ne, ke.value);
38
- b((() => {
39
- Se.cancel(), Se = E(Ne, ke.value);
40
- }));
41
- const Oe = U().value, { wrapperRef: Le, isFocused: Be, handleBlur: ze, handleFocus: De } = G(ne2), je = (function({ isDropdownVisible: e3, controlVisible: l3, selectStates: t2, highlightedLine: o2, handleSelect: a3, hasData: i3, lastIndex: s3 }) {
42
- const n2 = /* @__PURE__ */ new Map();
43
- return n2.set("Enter", (() => {
44
- e3.value && t2.highlightedIndex >= 0 && o2.value && a3(o2.value), l3(!e3.value);
45
- })), n2.set("Escape", (() => e3.value && l3(!e3.value))), n2.set("ArrowUp", ((e4) => {
46
- e4.preventDefault(), i3.value && (-1 !== t2.highlightedIndex && 0 !== t2.highlightedIndex ? t2.highlightedIndex-- : t2.highlightedIndex = s3.value);
47
- })), n2.set("ArrowDown", ((e4) => {
48
- e4.preventDefault(), i3.value && (-1 !== t2.highlightedIndex && t2.highlightedIndex !== s3.value ? t2.highlightedIndex++ : t2.highlightedIndex = 0);
49
- })), n2;
50
- })({ isDropdownVisible: de, controlVisible: Fe, selectStates: pe, highlightedLine: xe, handleSelect: He, hasData: we, lastIndex: Ie });
51
- function Ce(e3) {
52
- Be.value && z((() => ze(new FocusEvent("focus", e3))));
53
- }
54
- function Fe(e3) {
55
- var _a;
56
- te2.value && ((_a = C(te2, ["value", e3 ? "show" : "hide"])) == null ? void 0 : _a(), i2.filterable && (function(e4) {
57
- var _a2;
58
- i2.filterable && (e4 ? (pe.selectedOption && (pe.inputValue = ""), Se()) : pe.inputValue = ((_a2 = pe.selectedOption) == null ? void 0 : _a2.label) || "");
59
- })(e3), de.value = e3, s2("visible-change", e3), pe.highlightedIndex = -1);
60
- }
61
- function Re() {
62
- he.value || Fe(!de.value);
63
- }
64
- function $e() {
65
- var _a;
66
- (_a = ne2.value) == null ? void 0 : _a.clear(), pe.inputValue = "", pe.selectedOption = null, s2("clear"), P(["change", "update:modelValue"], ((e3) => s2(e3, "")));
67
- }
68
- function Ee(e3) {
69
- return H(i2.options, ((l3) => l3.value === e3));
70
- }
71
- function He(e3) {
72
- var _a;
73
- e3.disabled || (pe.inputValue = e3.label, pe.selectedOption = e3, P(["change", "update:modelValue"], ((l3) => s2(l3, e3.value))), Fe(false), (_a = ne2.value) == null ? void 0 : _a.focus());
74
- }
75
- function Pe(e3) {
76
- ue2.value.clear(), P(e3, ((e4) => {
77
- ue2.value.set(e4.props.value, e4.props);
78
- }));
79
- }
80
- function Ne() {
81
- const e3 = pe.inputValue;
82
- pe.highlightedIndex = -1, be.value ? (async function(e4) {
83
- if (i2.filterable) {
84
- if (i2.remote && i2.remoteMethod && N(i2.remoteMethod)) return await qe(i2.remoteMethod, e4), void Pe(_e.value);
85
- if (i2.filterMethod && N(i2.filterMethod)) {
86
- const l3 = $(i2.filterMethod(e4), "value");
87
- Pe(F(_e.value, ((e5) => T(l3, C(e5, ["props", "value"])))));
88
- } else Pe(F(_e.value, ((l3) => T(C(l3, ["props", "label"]), e4))));
89
- }
90
- })(e3) : (async function(e4) {
91
- i2.filterable && (i2.remote && i2.remoteMethod && N(i2.remoteMethod) ? re.value = await qe(i2.remoteMethod, e4) : i2.filterMethod && N(i2.filterMethod) ? re.value = i2.filterMethod(e4) : re.value = F(i2.options, ((l3) => T(l3.label, e4))));
92
- })(e3);
93
- }
94
- function We(e3) {
95
- var _a;
96
- je.has(e3.key) && ((_a = je.get(e3.key)) == null ? void 0 : _a(e3));
97
- }
98
- async function qe(e3, l3) {
99
- if (!e3 || !N(e3)) return;
100
- let t2;
101
- pe.loading = true;
102
- try {
103
- t2 = await e3(l3);
104
- } catch (e4) {
105
- t2 = [];
106
- }
107
- return t2;
108
- }
109
- function Ae() {
110
- const e3 = Ee(i2.modelValue);
111
- e3 && (pe.inputValue = e3.label, pe.selectedOption = e3);
112
- }
113
- return K(D2, ((e3) => Ce(e3))), y((() => i2.options), ((e3) => {
114
- re.value = e3 ?? [];
115
- })), y((() => _e.value), ((e3) => Pe(e3)), { immediate: true }), y((() => i2.modelValue), (() => {
116
- Ae();
117
- })), x((() => {
118
- Ae();
119
- })), _((() => {
120
- Se.cancel();
121
- })), V(Y, { handleSelect: He, selectStates: pe, renderLabel: function(e3) {
122
- return N(i2.renderLabel) ? i2.renderLabel(e3) : e3.label;
123
- }, highlightedLine: xe }), l2({ focus: () => {
124
- var _a;
125
- (_a = ne2.value) == null ? void 0 : _a.focus();
126
- }, blur: () => {
127
- Ce();
128
- } }), (e3, l3) => (r(), u("div", { ref_key: "selectRef", ref: D2, class: c(["px-select", { "is-disabled": he.value, "is-ghost": e3.ghost, [`px-select--${e3.size}`]: e3.size, [`px-select--${e3.color}`]: ve.value }]), style: w(ge.value), onClick: d(Re, ["stop"]), onMouseenter: l3[2] || (l3[2] = (e4) => pe.mouseHover = true), onMouseleave: l3[3] || (l3[3] = (e4) => pe.mouseHover = false) }, [h(X, { ref_key: "tooltipRef", ref: te2, placement: "bottom-start", "popper-options": v(Z), onClickOutside: l3[1] || (l3[1] = (e4) => Fe(false)), manual: "" }, { default: I((() => [k("div", { ref_key: "inputWrapperRef", ref: Le }, [h(Q, { ref_key: "inputRef", ref: ne2, modelValue: pe.inputValue, "onUpdate:modelValue": l3[0] || (l3[0] = (e4) => pe.inputValue = e4), id: v(Oe), disabled: he.value, ghost: e3.ghost, color: e3.color, size: e3.size, placeholder: e3.filterable ? Me.value : e3.placeholder, readonly: !e3.filterable || !de.value, onFocus: v(De), onBlur: v(ze), onInput: v(Se), onKeydown: We }, { suffix: I((() => [ye.value ? (r(), L(J, { key: 0, icon: "close-box", class: "px-input__clear", onClick: d($e, ["stop"]), onMousedown: d(v(W), ["prevent"]) }, null, 8, ["onMousedown"])) : (r(), L(J, { key: 1, class: c(["header-angle", { "is-active": de.value }]), icon: "chevron-down" }, null, 8, ["class"]))])), _: 1 }, 8, ["modelValue", "id", "disabled", "ghost", "color", "size", "placeholder", "readonly", "onFocus", "onBlur", "onInput"])], 512)])), content: I((() => [pe.loading ? (r(), u("div", ae, [h(J, { icon: "loader", spin: "" })])) : e3.filterable && Ve.value ? (r(), u("div", ie, " No data ")) : M("", true), k("ul", se, [be.value ? (r(true), u(S, { key: 1 }, O(ue2.value, (([e4, l4]) => (r(), L(oe, B({ key: e4, ref_for: true }, l4), null, 16)))), 128)) : (r(true), u(S, { key: 0 }, O(re.value, ((e4) => (r(), L(oe, B({ key: e4.value, ref_for: true }, e4), null, 16)))), 128))])])), _: 1 }, 8, ["popper-options"])], 38));
129
- } }), [["__scopeId", "data-v-28834867"]])), ue = a(oe);
130
- export {
131
- ne as P,
132
- ue as a
133
- };
@@ -1,34 +0,0 @@
1
- import { c as e, w as i } from "./utils-bsCscZfS.js";
2
- import { defineComponent as c, computed as t, ref as a, onMounted as o, watch as l, createElementBlock as s, openBlock as n, normalizeStyle as r, normalizeClass as u, createElementVNode as v, withKeys as d, unref as p, createCommentVNode as h, toDisplayString as x, createBlock as m } from "vue";
3
- import { u as f } from "./hooks-CYdEHUVd.js";
4
- import { P as w } from "./Icon-DpJyuj7c.js";
5
- const _ = ["id", "name", "disabled", "checked"], k = { class: "px-switch__core" }, y = { class: "px-switch__core-inner" }, b = { key: 0, class: "px-switch__core-inner-text" }, V = { class: "px-switch__core-action" }, C = i(c({ name: "PxSwitch", inheritAttrs: false, __name: "Switch", props: { modelValue: { type: [Boolean, String, Number] }, disabled: { type: Boolean }, activeText: {}, inactiveText: {}, activeValue: { type: [Boolean, String, Number], default: true }, inactiveValue: { type: [Boolean, String, Number], default: false }, name: {}, id: {}, size: {}, type: {}, activeColor: {}, inactiveColor: {}, activeIcon: {}, inactiveIcon: {} }, emits: ["update:modelValue", "change"], setup(i2, { expose: c2, emit: C2 }) {
6
- const T = i2, g = C2, I = t((() => T.disabled)), S = a(T.modelValue), z = a(), B = f().value, j = t((() => S.value === T.activeValue)), N = t((() => j.value ? T.activeIcon : T.inactiveIcon)), P = t((() => {
7
- const i3 = {};
8
- if (T.activeColor) {
9
- const c3 = e(T.activeColor);
10
- i3["--px-switch-on-color"] = c3.color, i3["--px-switch-on-border-color"] = c3.dark;
11
- }
12
- if (T.inactiveColor) {
13
- const c3 = e(T.inactiveColor);
14
- i3["--px-switch-off-color"] = c3.color, i3["--px-switch-off-border-color"] = c3.dark;
15
- }
16
- return i3;
17
- }));
18
- function $() {
19
- if (I.value) return;
20
- const e2 = j.value ? T.inactiveValue : T.activeValue;
21
- S.value = e2, g("update:modelValue", e2), g("change", e2);
22
- }
23
- return o((() => {
24
- z.value.checked = j.value;
25
- })), l(j, ((e2) => {
26
- z.value.checked = e2;
27
- })), c2({ checked: j, focus: () => {
28
- var _a;
29
- (_a = z.value) == null ? void 0 : _a.focus();
30
- } }), (e2, i3) => (n(), s("div", { class: u(["px-switch", { [`px-switch--${e2.size}`]: e2.size, [`px-switch--${e2.type}`]: e2.type, "is-disabled": I.value, "is-checked": j.value }]), style: r(P.value), onClick: $ }, [v("input", { class: "px-switch__input", type: "checkbox", role: "switch", ref_key: "inputRef", ref: z, id: p(B), name: e2.name, disabled: I.value, checked: j.value, onKeydown: d($, ["enter"]) }, null, 40, _), v("div", k, [v("div", y, [e2.activeText || e2.inactiveText ? (n(), s("span", b, x(j.value ? e2.activeText : e2.inactiveText), 1)) : h("", true)]), v("div", V, [N.value ? (n(), m(w, { key: 0, class: "px-switch__icon", icon: N.value, size: "xs" }, null, 8, ["icon"])) : h("", true)])])], 6));
31
- } }));
32
- export {
33
- C as P
34
- };
@@ -1,74 +0,0 @@
1
- import { _ as e, w as t } from "./utils-bsCscZfS.js";
2
- import { onMounted as a, watch as o, onUnmounted as i, defineComponent as l, ref as r, computed as n, watchEffect as u, createElementBlock as s, openBlock as v, mergeProps as c, toHandlers as p, renderSlot as d, createVNode as f, unref as g, Transition as m, withCtx as h, createCommentVNode as b, createElementVNode as _, createTextVNode as k, toDisplayString as y } from "vue";
3
- import { createPopper as T } from "@popperjs/core";
4
- import { u as x, a as w } from "./hooks-CYdEHUVd.js";
5
- import { H as j, f as B, E, v as L } from "./vendor-DXmGx29U.js";
6
- const N = ["aria-describedby"], R = ["id"], $ = e(l({ name: "PxTooltip", __name: "Tooltip", props: { content: {}, trigger: { default: "hover" }, placement: { default: "bottom" }, manual: { type: Boolean }, disabled: { type: Boolean }, popperOptions: {}, transition: { default: "fade" }, showTimeout: { default: 0 }, hideTimeout: { default: 200 }, virtualRef: {}, virtualTriggering: { type: Boolean } }, emits: ["visible-change", "click-outside"], setup(e2, { expose: t2, emit: l2 }) {
7
- const $2 = e2, O2 = l2, P = r(false), A = x("px-tooltip"), D = r({}), H = r({}), I = r({}), M = r(), q = r(), z = r(), C = n((() => $2.virtualTriggering ? $2.virtualRef : z.value)), F = n((() => ({ placement: $2.placement, modifiers: [{ name: "offset", options: { offset: [0, 9] } }], ...$2.popperOptions }))), G = n((() => "hover" === $2.trigger ? $2.showTimeout : 0)), J = n((() => "hover" === $2.trigger ? $2.hideTimeout : 0));
8
- let K, Q, S;
9
- function U() {
10
- Q == null ? void 0 : Q.cancel(), K == null ? void 0 : K();
11
- }
12
- function V() {
13
- K == null ? void 0 : K.cancel(), Q == null ? void 0 : Q();
14
- }
15
- function W() {
16
- P.value ? V() : U();
17
- }
18
- function X(e3) {
19
- $2.disabled || (P.value = e3, O2("visible-change", e3));
20
- }
21
- function Y() {
22
- if (!$2.disabled && !$2.manual) return "hover" === $2.trigger ? (D.value.mouseenter = U, H.value.mouseleave = V, void (I.value.mouseenter = U)) : void ("click" !== $2.trigger ? "contextmenu" !== $2.trigger || (D.value.contextmenu = (e3) => {
23
- e3.preventDefault(), U();
24
- }) : D.value.click = W);
25
- }
26
- function Z() {
27
- S == null ? void 0 : S.destroy(), S = null;
28
- }
29
- function ee() {
30
- D.value = {}, H.value = {}, I.value = {}, Y();
31
- }
32
- const te = U, ae = () => {
33
- K == null ? void 0 : K.cancel(), X(false);
34
- };
35
- return o(P, ((e3) => {
36
- e3 && C.value && q.value && (S = T(C.value, q.value, F.value));
37
- }), { flush: "post" }), o((() => $2.manual), ((e3) => {
38
- e3 ? ee() : Y();
39
- })), o((() => $2.trigger), (() => {
40
- K == null ? void 0 : K.cancel(), P.value = false, O2("visible-change", false), ee();
41
- })), u((() => {
42
- $2.manual || Y(), K == null ? void 0 : K.cancel(), Q == null ? void 0 : Q.cancel(), K = E(L(X, null, true), G.value), Q = E(L(X, null, false), J.value);
43
- })), w(M, (() => {
44
- O2("click-outside"), "hover" === $2.trigger || $2.manual || P.value && V();
45
- })), (function(e3, t3, l3) {
46
- let r2, n2;
47
- const u2 = /* @__PURE__ */ new Map(), s2 = () => {
48
- const e4 = t3.value;
49
- e4 && j(e4) && B(l3.value, ((t4, a2) => {
50
- u2.set(a2, t4), e4.addEventListener(a2, t4);
51
- }));
52
- }, v2 = (e4) => {
53
- const a2 = e4 ?? t3.value;
54
- a2 && j(a2) && B(["mouseenter", "click", "contextmenu"], ((e5) => u2.has(e5) && a2.removeEventListener(e5, u2.get(e5))));
55
- };
56
- a((() => {
57
- n2 = o((() => e3.virtualRef), ((t4, a2) => {
58
- e3.virtualTriggering && (j(a2) && v2(a2), j(t4) && s2());
59
- }), { immediate: true }), r2 = o(l3, (() => {
60
- e3.virtualTriggering && (v2(), s2(), K == null ? void 0 : K.cancel(), X(false));
61
- }), { deep: true });
62
- })), i((() => {
63
- r2 == null ? void 0 : r2(), n2 == null ? void 0 : n2();
64
- }));
65
- })($2, C, D), i((() => {
66
- Z(), K == null ? void 0 : K.cancel(), Q == null ? void 0 : Q.cancel();
67
- })), t2({ show: te, hide: ae, toggle: () => {
68
- P.value ? ae() : te();
69
- } }), (e3, t3) => (v(), s("div", c({ class: "px-tooltip", ref_key: "containerNode", ref: M }, p(H.value, true)), [e3.virtualTriggering ? d(e3.$slots, "default", { key: 1 }, void 0, true) : (v(), s("div", c({ key: 0, class: "px-tooltip__trigger", ref_key: "_triggerNode", ref: z }, p(D.value, true), { "aria-describedby": P.value ? g(A) : void 0 }), [d(e3.$slots, "default", {}, void 0, true)], 16, N)), f(m, { name: e3.transition, onAfterLeave: Z }, { default: h((() => [P.value ? (v(), s("div", c({ key: 0, class: "px-tooltip__popper", ref_key: "popperNode", ref: q }, p(I.value, true), { id: g(A), role: "tooltip" }), [d(e3.$slots, "content", {}, (() => [k(y(e3.content), 1)]), true), t3[0] || (t3[0] = _("div", { id: "arrow", "data-popper-arrow": "" }, null, -1))], 16, R)) : b("", true)])), _: 3 }, 8, ["name"])], 16));
70
- } }), [["__scopeId", "data-v-4e2bfb45"]]), O = t($);
71
- export {
72
- O as P,
73
- $ as T
74
- };
@@ -1,105 +0,0 @@
1
- import { isRef as e, watch as t, onMounted as n, onBeforeUnmount as a, unref as r, getCurrentInstance as o, useSlots as l, watchEffect as s, ref as u, computed as d, onUnmounted as c } from "vue";
2
- import { f as i, y as v, k as f, z as m } from "./vendor-DXmGx29U.js";
3
- function p(o2, l2, s2) {
4
- e(o2) ? t(o2, ((e2, t2) => {
5
- null == t2 || t2.removeEventListener(l2, s2), null == e2 || e2.addEventListener(l2, s2);
6
- })) : n((() => null == o2 ? void 0 : o2.addEventListener(l2, s2))), a((() => {
7
- var e2;
8
- return null == (e2 = r(o2)) ? void 0 : e2.removeEventListener(l2, s2);
9
- }));
10
- }
11
- function h(e2, t2) {
12
- p(document, "click", ((n2) => {
13
- e2.value && n2.target && (e2.value.contains(n2.target) || t2(n2));
14
- }));
15
- }
16
- const g = (e2, t2) => i(e2, ((e3) => {
17
- v(t2) && t2(e3), e3.children && g(e3.children, t2);
18
- }));
19
- function w() {
20
- var e2, t2;
21
- const n2 = /* @__PURE__ */ new Map(), a2 = o(), r2 = null == (t2 = null == (e2 = l()) ? void 0 : e2.default) ? void 0 : t2.call(e2);
22
- s((() => {
23
- (null == a2 ? void 0 : a2.props.disabled) ? g(r2 ?? [], ((e3) => {
24
- (null == e3 ? void 0 : e3.props) && (n2.set(e3, f(e3.props)), e3.props = m(null == e3 ? void 0 : e3.props, { style: { cursor: "not-allowed", color: "var(--px-text-color-placeholder)" } }));
25
- })) : g(r2 ?? [], ((e3) => {
26
- n2.has(e3) && (e3.props = n2.get(e3));
27
- }));
28
- }));
29
- }
30
- function L(e2, { afterBlur: t2, beforeBlur: n2, afterFocus: a2 } = {}) {
31
- const r2 = o(), { emit: l2 } = r2, s2 = u(), d2 = u(false);
32
- return p(s2, "click", (() => {
33
- var t3;
34
- null == (t3 = e2.value) || t3.focus();
35
- })), { wrapperRef: s2, isFocused: d2, handleFocus: (e3) => {
36
- d2.value || (d2.value = true, l2("focus", e3), null == a2 || a2());
37
- }, handleBlur: (e3) => {
38
- var a3;
39
- v(n2) && n2(e3) || e3.relatedTarget && (null == (a3 = s2.value) ? void 0 : a3.contains(e3.relatedTarget)) || (d2.value = false, l2("blur", e3), null == t2 || t2());
40
- } };
41
- }
42
- const k = { prefix: Math.floor(1e4 * Math.random()), current: 0 };
43
- function y(e2 = "er") {
44
- const t2 = `${e2}-${k.prefix}-${k.current++}`;
45
- return u(t2);
46
- }
47
- function E(e2) {
48
- const t2 = d((() => e2.getLastBottomOffset())), n2 = d((() => e2.offset + t2.value)), a2 = d((() => n2.value + e2.boxHeight.value));
49
- return { topOffset: n2, bottomOffset: a2 };
50
- }
51
- const x = u(0);
52
- function b(e2 = 2e3) {
53
- const t2 = u(e2), n2 = d((() => x.value + t2.value));
54
- return { initialValue: t2, currentZIndex: n2, nextZIndex: () => (x.value++, n2.value) };
55
- }
56
- function M() {
57
- const e2 = u(false);
58
- let t2 = null, a2 = null;
59
- return n((() => {
60
- "undefined" != typeof window && (t2 = window.matchMedia("(prefers-color-scheme: dark)"), e2.value = t2.matches, a2 = (t3) => {
61
- e2.value = t3.matches;
62
- }, t2.addEventListener ? t2.addEventListener("change", a2) : t2.addListener(a2));
63
- })), c((() => {
64
- t2 && a2 && (t2.removeEventListener ? t2.removeEventListener("change", a2) : t2.removeListener(a2));
65
- })), { prefersDark: e2, prefers: d((() => e2.value ? "dark" : "light")) };
66
- }
67
- const B = "px-theme", I = "px-dark", T = u("system"), F = u(false);
68
- function O(e2) {
69
- "undefined" != typeof document && (e2 ? document.documentElement.classList.add(I) : document.documentElement.classList.remove(I));
70
- }
71
- function S(e2) {
72
- return "system" === e2 ? "undefined" != typeof window && window.matchMedia("(prefers-color-scheme: dark)").matches : "dark" === e2;
73
- }
74
- let $ = false;
75
- function D() {
76
- if (!$ && "undefined" != typeof window) {
77
- !(function() {
78
- if ("undefined" == typeof window) return;
79
- const e4 = localStorage.getItem(B);
80
- e4 && ["light", "dark", "system"].includes(e4) ? T.value = e4 : T.value = "system", F.value = S(T.value), O(F.value);
81
- })(), $ = true;
82
- const e3 = window.matchMedia("(prefers-color-scheme: dark)"), t2 = (e4) => {
83
- "system" === T.value && (F.value = e4.matches, O(F.value));
84
- };
85
- e3.addEventListener ? e3.addEventListener("change", t2) : e3.addListener(t2);
86
- }
87
- const e2 = (e3) => {
88
- T.value = e3, F.value = S(e3), O(F.value), "undefined" != typeof localStorage && localStorage.setItem(B, e3);
89
- };
90
- return { theme: d((() => T.value)), isDark: d((() => F.value)), setTheme: e2, toggleTheme: () => {
91
- const t2 = F.value ? "light" : "dark";
92
- e2(t2);
93
- } };
94
- }
95
- export {
96
- h as a,
97
- w as b,
98
- L as c,
99
- b as d,
100
- E as e,
101
- p as f,
102
- M as g,
103
- D as h,
104
- y as u
105
- };
@@ -1,84 +0,0 @@
1
- import { h as o, d as e, y as r } from "./vendor-DXmGx29U.js";
2
- import { defineComponent as n } from "vue";
3
- function t(o2, e2) {
4
- const r2 = parseInt(o2.replace("#", ""), 16);
5
- return `#${(Math.max(0, (r2 >> 16) - Math.round(2.55 * e2)) << 16 | Math.max(0, (r2 >> 8 & 255) - Math.round(2.55 * e2)) << 8 | Math.max(0, (255 & r2) - Math.round(2.55 * e2))).toString(16).padStart(6, "0")}`;
6
- }
7
- function c(o2, e2) {
8
- const r2 = parseInt(o2.replace("#", ""), 16);
9
- return `#${(Math.min(255, (r2 >> 16) + Math.round(2.55 * e2)) << 16 | Math.min(255, (r2 >> 8 & 255) + Math.round(2.55 * e2)) << 8 | Math.min(255, (255 & r2) + Math.round(2.55 * e2))).toString(16).padStart(6, "0")}`;
10
- }
11
- function a(o2) {
12
- const e2 = parseInt(o2.replace("#", ""), 16);
13
- return (0.299 * (e2 >> 16) + 0.587 * (e2 >> 8 & 255) + 0.114 * (255 & e2)) / 255 > 0.6 ? "#1e1e2e" : "#ffffff";
14
- }
15
- function s(o2) {
16
- return { color: o2, dark: t(o2, 15), light: c(o2, 35), contrast: a(o2), transparent: "transparent" };
17
- }
18
- function i(o2, e2, r2) {
19
- const n2 = {};
20
- for (const [t2, c2] of Object.entries(r2)) n2[`--${e2}-${t2}`] = o2[c2];
21
- return n2;
22
- }
23
- const l = { outline: { "text-color": "color", "bg-color": "transparent", "border-color": "color", "shadow-color": "transparent" }, dash: { "text-color": "color", "bg-color": "light", "border-color": "color", "shadow-color": "transparent" }, default: { "text-color": "contrast", "bg-color": "color", "border-color": "dark", "shadow-color": "dark" } };
24
- function f(o2, e2) {
25
- }
26
- const u = { spinner: "loader", loading: "loader", "eye-slash": "eye-closed", "eye-off": "eye-closed", xmark: "close", x: "close", times: "close", "circle-xmark": "close-box", "x-circle": "close-box", "times-circle": "close-box", error: "close-box", "circle-info": "info-box", "info-circle": "info-box", info: "info-box", "check-circle": "check", "circle-check": "check", success: "check", "circle-exclamation": "warning-box", "exclamation-circle": "warning-box", warning: "warning-box", "angle-down": "chevron-down", "caret-down": "chevron-down", "angle-up": "chevron-up", "caret-up": "chevron-up", "angle-left": "chevron-left", "caret-left": "chevron-left", "angle-right": "chevron-right", "caret-right": "chevron-right", "question-circle": "info-box", "circle-question": "info-box", help: "info-box", question: "info-box", gear: "sliders", cog: "sliders", settings: "sliders", star: "bookmark", "star-solid": "bookmark" };
27
- function d(o2) {
28
- return o2 in u ? u[o2] : o2;
29
- }
30
- const h = /* @__PURE__ */ new Set(["svg", "path", "rect", "circle", "ellipse", "line", "polyline", "polygon", "g", "defs", "clipPath", "mask", "title", "desc", "linearGradient", "radialGradient", "stop", "symbol", "use"]), p = /^on/i, m = /^\s*javascript\s*:/i;
31
- function g(o2) {
32
- if (!o2 || "string" != typeof o2) return "";
33
- if ("undefined" == typeof DOMParser) return "";
34
- const e2 = new DOMParser().parseFromString(o2, "image/svg+xml");
35
- return e2.querySelector("parsererror") ? "" : (b(e2.documentElement), e2.documentElement.outerHTML);
36
- }
37
- function b(o2) {
38
- const e2 = Array.from(o2.children);
39
- for (const o3 of e2) {
40
- const e3 = o3.tagName.toLowerCase();
41
- if (h.has(e3)) {
42
- for (const e4 of Array.from(o3.attributes)) (p.test(e4.name) || "href" === e4.name && m.test(e4.value) || "xlink:href" === e4.name && m.test(e4.value)) && o3.removeAttribute(e4.name);
43
- b(o3);
44
- } else o3.remove();
45
- }
46
- }
47
- const x = /* @__PURE__ */ new Map();
48
- function v(o2) {
49
- for (const [e2, r2] of Object.entries(o2)) x.set(e2, g(r2));
50
- }
51
- function w(o2) {
52
- return x.get(o2);
53
- }
54
- const k = (o2) => (o2.install = (e2) => {
55
- const r2 = o2.name;
56
- e2.component(r2, o2);
57
- }, o2), M = (o2, e2) => (o2.install = (r2) => {
58
- r2.config.globalProperties[e2] = o2;
59
- }, o2);
60
- function y(r2, n2 = "px") {
61
- return r2 ? o(r2) || ((o2) => !!e(o2) && !Number.isNaN(Number(o2)))(r2) ? `${r2}${n2}` : e(r2) ? r2 : void 0 : "";
62
- }
63
- const N = /* @__PURE__ */ new Map([["info", "info-box"], ["success", "check"], ["warning", "warning-box"], ["danger", "close-box"], ["error", "close-box"]]), S = n({ props: { vNode: { type: [String, Object, Function], required: true } }, setup: (o2) => () => r(o2.vNode) ? o2.vNode() : o2.vNode }), O = (o2, e2) => {
64
- const r2 = o2.__vccOpts || o2;
65
- for (const [o3, n2] of e2) r2[o3] = n2;
66
- return r2;
67
- };
68
- export {
69
- S as R,
70
- l as S,
71
- O as _,
72
- d as a,
73
- v as b,
74
- s as c,
75
- f as d,
76
- y as e,
77
- M as f,
78
- w as g,
79
- c as l,
80
- i as r,
81
- g as s,
82
- N as t,
83
- k as w
84
- };
@@ -1,112 +0,0 @@
1
- /* Card Variables */
2
- .px-card[data-v-1f65a210] {
3
- --px-card-bg-color: var(--px-bg-color);
4
- --px-card-border-color: var(--px-border-color);
5
- --px-card-shadow-color: var(--px-shadow-color);
6
- --px-card-text-color: var(--px-text-color-primary);
7
- --px-card-header-border-color: var(--px-border-color-light);
8
- --px-card-footer-border-color: var(--px-border-color-light);
9
- --px-card-padding: 16px;
10
- }
11
- /* Base Card Styles - Pixel Game Aesthetic */
12
- .px-card[data-v-1f65a210] {
13
- position: relative;
14
- display: flex;
15
- flex-direction: column;
16
- color: var(--px-card-text-color);
17
- font-family: var(--px-font-family);
18
- font-size: var(--px-font-size-base);
19
- background: transparent;
20
- border: none;
21
- box-sizing: border-box;
22
- overflow: hidden;
23
- transition: none;
24
- }
25
- /* Border layer — filled with border color, clipped to pixel shape */
26
- .px-card[data-v-1f65a210]::before {
27
- content: '';
28
- position: absolute;
29
- inset: 0;
30
- background: var(--px-card-border-color);
31
- clip-path: polygon(
32
- 0 2px, 2px 2px, 2px 0,
33
- calc(100% - 2px) 0, calc(100% - 2px) 2px, 100% 2px,
34
- 100% calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) 100%,
35
- 2px 100%, 2px calc(100% - 2px), 0 calc(100% - 2px)
36
- );
37
- z-index: 0;
38
- }
39
- /* Fill layer — inset by border width, filled with bg color */
40
- .px-card[data-v-1f65a210]::after {
41
- content: '';
42
- position: absolute;
43
- inset: 2px;
44
- background: var(--px-card-bg-color);
45
- clip-path: polygon(
46
- 0 2px, 2px 2px, 2px 0,
47
- calc(100% - 2px) 0, calc(100% - 2px) 2px, 100% 2px,
48
- 100% calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) 100%,
49
- 2px 100%, 2px calc(100% - 2px), 0 calc(100% - 2px)
50
- );
51
- z-index: 0;
52
- }
53
- /* Card sections - all above pseudo-elements */
54
- .px-card__header[data-v-1f65a210] {
55
- position: relative;
56
- z-index: 1;
57
- padding: var(--px-card-padding);
58
- border-bottom: 2px solid var(--px-card-header-border-color);
59
- font-weight: 600;
60
- }
61
- .px-card__body[data-v-1f65a210] {
62
- position: relative;
63
- z-index: 1;
64
- padding: var(--px-card-padding);
65
- flex: 1;
66
- }
67
- .px-card__footer[data-v-1f65a210] {
68
- position: relative;
69
- z-index: 1;
70
- padding: var(--px-card-padding);
71
- border-top: 2px solid var(--px-card-footer-border-color);
72
- }
73
- /* Shadow variants */
74
- .px-card--shadow-always[data-v-1f65a210] {
75
- filter: drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-card-shadow-color));
76
- }
77
- .px-card--shadow-hover[data-v-1f65a210] {
78
- filter: none;
79
- }
80
- .px-card--shadow-hover[data-v-1f65a210]:hover {
81
- filter: drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-card-shadow-color));
82
- }
83
- .px-card--shadow-never[data-v-1f65a210] {
84
- filter: none;
85
- }
86
- /* Hoverable interaction */
87
- .px-card.is-hoverable[data-v-1f65a210] {
88
- cursor: pointer;
89
- }
90
- .px-card.is-hoverable[data-v-1f65a210]:hover {
91
- transform: translateY(-4px);
92
- filter: drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-card-shadow-color));
93
- }
94
- .px-card.is-hoverable[data-v-1f65a210]:active {
95
- transform: translateY(0);
96
- }
97
- /* Size variants */
98
- .px-card--small[data-v-1f65a210] {
99
- --px-card-padding: 12px;
100
- font-size: var(--px-font-size-small);
101
- filter: drop-shadow(2px 2px 0px var(--px-card-shadow-color));
102
- }
103
- .px-card--small.px-card--shadow-hover[data-v-1f65a210] { filter: none;
104
- }
105
- .px-card--small.px-card--shadow-hover[data-v-1f65a210]:hover { filter: drop-shadow(2px 2px 0px var(--px-card-shadow-color));
106
- }
107
- .px-card--small.px-card--shadow-never[data-v-1f65a210] { filter: none;
108
- }
109
- .px-card--large[data-v-1f65a210] {
110
- --px-card-padding: 20px;
111
- font-size: var(--px-font-size-large);
112
- }