sakana-element 2.2.0 → 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 (130) hide show
  1. package/README.md +95 -22
  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-CoFWwBwv.js → Badge-BmxZXX8k.js} +2 -2
  5. package/dist/es/{Breadcrumb-BtrwTVKW.js → Breadcrumb-BP8MSklj.js} +2 -2
  6. package/dist/es/{Button-S_31-UWJ.js → Button-BJHtN7gh.js} +2 -2
  7. package/dist/es/{Card-DcW6nHYD.js → Card-DJHkCmsz.js} +2 -2
  8. package/dist/es/Checkbox-DX8L3fyp.js +51 -0
  9. package/dist/es/{Collapse-DsS7M-m3.js → Collapse-Ir3V9CuO.js} +2 -2
  10. package/dist/es/{ConfigProvider-BgIewHXP.js → ConfigProvider-CsbSqwwi.js} +1 -1
  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-BQ59woas.js → FileInput-BE26BmXm.js} +3 -3
  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-CiE4bPJN.js → Input-C5HuVehE.js} +6 -6
  19. package/dist/es/{Link-B9B2APZq.js → Link-Av9RdcFv.js} +1 -1
  20. package/dist/es/{Loading-BW99pE5N.js → Loading-CBNDUWQd.js} +12 -12
  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-Dwqv8isB.js → Select-7ZxUCS8z.js} +13 -13
  29. package/dist/es/{Switch-B1Gnv1tB.js → Switch-DiCsMJT3.js} +3 -3
  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 +90 -70
  34. package/dist/{theme → es/theme}/Avatar.css +13 -43
  35. package/dist/{theme → es/theme}/Breadcrumb.css +46 -4
  36. package/dist/es/theme/Card.css +347 -0
  37. package/dist/es/theme/Checkbox.css +484 -0
  38. package/dist/es/theme/Divider.css +111 -0
  39. package/dist/es/theme/Drawer.css +206 -0
  40. package/dist/es/theme/Dropdown.css +471 -0
  41. package/dist/es/theme/Indicator.css +159 -0
  42. package/dist/{theme → es/theme}/Input.css +1 -0
  43. package/dist/{theme → es/theme}/Link.css +22 -3
  44. package/dist/{theme → es/theme}/Loading.css +50 -12
  45. package/dist/{theme → es/theme}/Message.css +249 -40
  46. package/dist/es/theme/Notification.css +316 -0
  47. package/dist/es/theme/Popconfirm.css +46 -0
  48. package/dist/es/theme/Progress.css +278 -0
  49. package/dist/es/theme/Radio.css +426 -0
  50. package/dist/es/theme/Table.css +680 -0
  51. package/dist/es/theme/Tooltip.css +235 -0
  52. package/dist/es/utils-BS5vsvlM.js +101 -0
  53. package/dist/index.css +1 -1
  54. package/dist/types/components/Avatar/types.d.ts +0 -2
  55. package/dist/types/components/Checkbox/constants.d.ts +5 -0
  56. package/dist/types/components/Checkbox/index.d.ts +94 -0
  57. package/dist/types/components/Checkbox/types.d.ts +46 -0
  58. package/dist/types/components/Collapse/index.d.ts +5 -5
  59. package/dist/types/components/Divider/index.d.ts +30 -0
  60. package/dist/types/components/Divider/types.d.ts +10 -0
  61. package/dist/types/components/Drawer/constants.d.ts +1 -0
  62. package/dist/types/components/Drawer/index.d.ts +72 -0
  63. package/dist/types/components/Drawer/types.d.ts +20 -0
  64. package/dist/types/components/Dropdown/index.d.ts +11 -1
  65. package/dist/types/components/Dropdown/types.d.ts +3 -0
  66. package/dist/types/components/Dropdown/useDropdownKeyboard.d.ts +8 -0
  67. package/dist/types/components/FileInput/index.d.ts +5 -5
  68. package/dist/types/components/Indicator/constants.d.ts +2 -0
  69. package/dist/types/components/Indicator/index.d.ts +28 -0
  70. package/dist/types/components/Indicator/types.d.ts +10 -0
  71. package/dist/types/components/Input/index.d.ts +10 -10
  72. package/dist/types/components/Message/methods.d.ts +2 -0
  73. package/dist/types/components/Message/types.d.ts +7 -1
  74. package/dist/types/components/MessageBox/types.d.ts +14 -2
  75. package/dist/types/components/Notification/methods.d.ts +3 -0
  76. package/dist/types/components/Notification/types.d.ts +8 -2
  77. package/dist/types/components/Pixelate/constants.d.ts +2 -0
  78. package/dist/types/components/Pixelate/index.d.ts +71 -0
  79. package/dist/types/components/Pixelate/types.d.ts +23 -0
  80. package/dist/types/components/Popconfirm/index.d.ts +16 -7
  81. package/dist/types/components/Popconfirm/types.d.ts +2 -1
  82. package/dist/types/components/Progress/constants.d.ts +2 -0
  83. package/dist/types/components/Progress/index.d.ts +50 -0
  84. package/dist/types/components/Progress/types.d.ts +22 -0
  85. package/dist/types/components/Radio/constants.d.ts +5 -0
  86. package/dist/types/components/Radio/index.d.ts +88 -0
  87. package/dist/types/components/Radio/types.d.ts +43 -0
  88. package/dist/types/components/Select/index.d.ts +30 -21
  89. package/dist/types/components/Switch/index.d.ts +5 -5
  90. package/dist/types/components/Table/index.d.ts +27 -0
  91. package/dist/types/components/Table/types.d.ts +20 -0
  92. package/dist/types/components/Tooltip/index.d.ts +6 -0
  93. package/dist/types/components/Tooltip/types.d.ts +7 -0
  94. package/dist/types/components/index.d.ts +8 -0
  95. package/dist/types/hooks/index.d.ts +3 -1
  96. package/dist/types/hooks/useDraggable.d.ts +7 -0
  97. package/dist/types/hooks/useFocusTrap.d.ts +5 -0
  98. package/dist/types/utils/index.d.ts +1 -0
  99. package/dist/types/utils/instance-management.d.ts +40 -0
  100. package/dist/umd/index.css +1 -1
  101. package/dist/umd/index.css.gz +0 -0
  102. package/dist/umd/index.umd.cjs +4 -4
  103. package/dist/umd/index.umd.cjs.gz +0 -0
  104. package/package.json +59 -59
  105. package/dist/es/Avatar-CxsRW-wl.js +0 -9
  106. package/dist/es/Dropdown-GcomGMAI.js +0 -40
  107. package/dist/es/Form-j90EzLXU.js +0 -122
  108. package/dist/es/Message-DCNnTUje.js +0 -123
  109. package/dist/es/Notification-CBzY5904.js +0 -58
  110. package/dist/es/Popconfirm-DF6d2ORS.js +0 -23
  111. package/dist/es/Tooltip-k6gKnMyt.js +0 -74
  112. package/dist/es/hooks-BaG7l8K5.js +0 -116
  113. package/dist/es/utils-bsCscZfS.js +0 -84
  114. package/dist/theme/Card.css +0 -263
  115. package/dist/theme/Dropdown.css +0 -187
  116. package/dist/theme/Notification.css +0 -126
  117. package/dist/theme/Popconfirm.css +0 -30
  118. package/dist/theme/Tooltip.css +0 -111
  119. /package/dist/{theme → es/theme}/Alert.css +0 -0
  120. /package/dist/{theme → es/theme}/Badge.css +0 -0
  121. /package/dist/{theme → es/theme}/Button.css +0 -0
  122. /package/dist/{theme → es/theme}/Collapse.css +0 -0
  123. /package/dist/{theme → es/theme}/FileInput.css +0 -0
  124. /package/dist/{theme → es/theme}/Form.css +0 -0
  125. /package/dist/{theme → es/theme}/Icon.css +0 -0
  126. /package/dist/{theme → es/theme}/Overlay.css +0 -0
  127. /package/dist/{theme → es/theme}/Select.css +0 -0
  128. /package/dist/{theme → es/theme}/Switch.css +0 -0
  129. /package/dist/{theme → es/theme}/fonts/zpix.woff2 +0 -0
  130. /package/dist/{theme → es/theme}/index.css +0 -0
@@ -1,116 +0,0 @@
1
- import { isRef as e, watch as t, onMounted as n, onBeforeUnmount as a, unref as o, getCurrentInstance as l, useSlots as r, watchEffect as s, ref as u, inject as c, computed as d, onUnmounted as i } from "vue";
2
- import { f as v, y as f, k as m, z as p, n as h, o as g, a as w } from "./vendor-DXmGx29U.js";
3
- function L(l2, r2, s2) {
4
- e(l2) ? t(l2, ((e2, t2) => {
5
- null == t2 || t2.removeEventListener(r2, s2), null == e2 || e2.addEventListener(r2, s2);
6
- })) : n((() => null == l2 ? void 0 : l2.addEventListener(r2, s2))), a((() => {
7
- var e2;
8
- return null == (e2 = o(l2)) ? void 0 : e2.removeEventListener(r2, s2);
9
- }));
10
- }
11
- function x(e2, t2) {
12
- L(document, "click", ((n2) => {
13
- e2.value && n2.target && (e2.value.contains(n2.target) || t2(n2));
14
- }));
15
- }
16
- const k = (e2, t2) => v(e2, ((e3) => {
17
- f(t2) && t2(e3), e3.children && k(e3.children, t2);
18
- }));
19
- function y() {
20
- var e2, t2;
21
- const n2 = /* @__PURE__ */ new Map(), a2 = l(), o2 = null == (t2 = null == (e2 = r()) ? void 0 : e2.default) ? void 0 : t2.call(e2);
22
- s((() => {
23
- (null == a2 ? void 0 : a2.props.disabled) ? k(o2 ?? [], ((e3) => {
24
- (null == e3 ? void 0 : e3.props) && (n2.set(e3, m(e3.props)), e3.props = p(null == e3 ? void 0 : e3.props, { style: { cursor: "not-allowed", color: "var(--px-text-color-placeholder)" } }));
25
- })) : k(o2 ?? [], ((e3) => {
26
- n2.has(e3) && (e3.props = n2.get(e3));
27
- }));
28
- }));
29
- }
30
- function E(e2, { afterBlur: t2, beforeBlur: n2, afterFocus: a2 } = {}) {
31
- const o2 = l(), { emit: r2 } = o2, s2 = u(), c2 = u(false);
32
- return L(s2, "click", (() => {
33
- var t3;
34
- null == (t3 = e2.value) || t3.focus();
35
- })), { wrapperRef: s2, isFocused: c2, handleFocus: (e3) => {
36
- c2.value || (c2.value = true, r2("focus", e3), null == a2 || a2());
37
- }, handleBlur: (e3) => {
38
- var a3;
39
- f(n2) && n2(e3) || e3.relatedTarget && (null == (a3 = s2.value) ? void 0 : a3.contains(e3.relatedTarget)) || (c2.value = false, r2("blur", e3), null == t2 || t2());
40
- } };
41
- }
42
- const M = { prefix: Math.floor(1e4 * Math.random()), current: 0 };
43
- function b(e2 = "er") {
44
- const t2 = `${e2}-${M.prefix}-${M.current++}`;
45
- return u(t2);
46
- }
47
- const T = { name: "en", el: { select: { loading: "Loading", noMatch: "No matching data", noData: "No data", placeholder: "Select" }, dropdown: { toggleDropdown: "Toggle Dropdown" }, messagebox: { title: "Message", confirm: "OK", cancel: "Cancel", error: "Illegal input", close: "Close this dialog" }, popconfirm: { confirmButtonText: "Yes", cancelButtonText: "No" } } };
48
- function B(e2) {
49
- {
50
- const e3 = c(h, u(g({ locale: T.name, messages: { en: T.el } })));
51
- return d((() => {
52
- return t2 = o(e3), w(t2, "install");
53
- var t2;
54
- }));
55
- }
56
- }
57
- function D(e2) {
58
- const t2 = d((() => e2.getLastBottomOffset())), n2 = d((() => e2.offset + t2.value)), a2 = d((() => n2.value + e2.boxHeight.value));
59
- return { topOffset: n2, bottomOffset: a2 };
60
- }
61
- const I = u(0);
62
- function O(e2 = 2e3) {
63
- const t2 = u(e2), n2 = d((() => I.value + t2.value));
64
- return { initialValue: t2, currentZIndex: n2, nextZIndex: () => (I.value++, n2.value) };
65
- }
66
- function S() {
67
- const e2 = u(false);
68
- let t2 = null, a2 = null;
69
- return n((() => {
70
- "undefined" != typeof window && (t2 = window.matchMedia("(prefers-color-scheme: dark)"), e2.value = t2.matches, a2 = (t3) => {
71
- e2.value = t3.matches;
72
- }, t2.addEventListener ? t2.addEventListener("change", a2) : t2.addListener(a2));
73
- })), i((() => {
74
- t2 && a2 && (t2.removeEventListener ? t2.removeEventListener("change", a2) : t2.removeListener(a2));
75
- })), { prefersDark: e2, prefers: d((() => e2.value ? "dark" : "light")) };
76
- }
77
- const F = "px-theme", N = "px-dark", $ = u("system"), C = u(false);
78
- function Z(e2) {
79
- "undefined" != typeof document && (e2 ? document.documentElement.classList.add(N) : document.documentElement.classList.remove(N));
80
- }
81
- function j(e2) {
82
- return "system" === e2 ? "undefined" != typeof window && window.matchMedia("(prefers-color-scheme: dark)").matches : "dark" === e2;
83
- }
84
- let z = false;
85
- function H() {
86
- if (!z && "undefined" != typeof window) {
87
- !(function() {
88
- if ("undefined" == typeof window) return;
89
- const e4 = localStorage.getItem(F);
90
- e4 && ["light", "dark", "system"].includes(e4) ? $.value = e4 : $.value = "system", C.value = j($.value), Z(C.value);
91
- })(), z = true;
92
- const e3 = window.matchMedia("(prefers-color-scheme: dark)"), t2 = (e4) => {
93
- "system" === $.value && (C.value = e4.matches, Z(C.value));
94
- };
95
- e3.addEventListener ? e3.addEventListener("change", t2) : e3.addListener(t2);
96
- }
97
- const e2 = (e3) => {
98
- $.value = e3, C.value = j(e3), Z(C.value), "undefined" != typeof localStorage && localStorage.setItem(F, e3);
99
- };
100
- return { theme: d((() => $.value)), isDark: d((() => C.value)), setTheme: e2, toggleTheme: () => {
101
- const t2 = C.value ? "light" : "dark";
102
- e2(t2);
103
- } };
104
- }
105
- export {
106
- x as a,
107
- y as b,
108
- E as c,
109
- O as d,
110
- D as e,
111
- L as f,
112
- B as g,
113
- S as h,
114
- H as i,
115
- b as u
116
- };
@@ -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,263 +0,0 @@
1
- /* Card Variables */
2
- .px-card[data-v-61d3ab66] {
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-61d3ab66] {
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-61d3ab66]::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-61d3ab66]::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-61d3ab66] {
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-61d3ab66] {
62
- position: relative;
63
- z-index: 1;
64
- padding: var(--px-card-padding);
65
- flex: 1;
66
- }
67
- .px-card__footer[data-v-61d3ab66] {
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-61d3ab66] {
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-61d3ab66] {
78
- filter: none;
79
- }
80
- .px-card--shadow-hover[data-v-61d3ab66]: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-61d3ab66] {
84
- filter: none;
85
- }
86
- /* Hoverable interaction */
87
- .px-card.is-hoverable[data-v-61d3ab66] {
88
- cursor: pointer;
89
- }
90
- .px-card.is-hoverable[data-v-61d3ab66]: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-61d3ab66]:active {
95
- transform: translateY(0);
96
- }
97
- /* Size variants */
98
- .px-card--small[data-v-61d3ab66] {
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-61d3ab66] { filter: none;
104
- }
105
- .px-card--small.px-card--shadow-hover[data-v-61d3ab66]:hover { filter: drop-shadow(2px 2px 0px var(--px-card-shadow-color));
106
- }
107
- .px-card--small.px-card--shadow-never[data-v-61d3ab66] { filter: none;
108
- }
109
- .px-card--large[data-v-61d3ab66] {
110
- --px-card-padding: 20px;
111
- font-size: var(--px-font-size-large);
112
- }
113
- /* Type variants */
114
- .px-card--primary[data-v-61d3ab66] {
115
- --px-card-bg-color: var(--px-color-primary-light-9);
116
- --px-card-border-color: var(--px-color-primary);
117
- --px-card-shadow-color: var(--px-color-primary-dark);
118
- --px-card-text-color: var(--px-text-color-primary);
119
- --px-card-header-border-color: var(--px-color-primary);
120
- --px-card-footer-border-color: var(--px-color-primary);
121
- }
122
- .px-card--primary.is-outline[data-v-61d3ab66] {
123
- --px-card-bg-color: transparent;
124
- --px-card-border-color: var(--px-color-primary);
125
- --px-card-text-color: var(--px-color-primary);
126
- }
127
- .px-card--primary.is-dash[data-v-61d3ab66] {
128
- --px-card-bg-color: var(--px-color-primary-light-9);
129
- --px-card-border-color: var(--px-color-primary);
130
- --px-card-text-color: var(--px-color-primary);
131
- }
132
- .px-card--primary.is-ghost[data-v-61d3ab66] {
133
- --px-card-bg-color: transparent;
134
- --px-card-border-color: transparent;
135
- --px-card-shadow-color: transparent;
136
- --px-card-text-color: var(--px-color-primary);
137
- }
138
- .px-card--success[data-v-61d3ab66] {
139
- --px-card-bg-color: var(--px-color-success-light-9);
140
- --px-card-border-color: var(--px-color-success);
141
- --px-card-shadow-color: var(--px-color-success-dark);
142
- --px-card-text-color: var(--px-text-color-primary);
143
- --px-card-header-border-color: var(--px-color-success);
144
- --px-card-footer-border-color: var(--px-color-success);
145
- }
146
- .px-card--success.is-outline[data-v-61d3ab66] {
147
- --px-card-bg-color: transparent;
148
- --px-card-border-color: var(--px-color-success);
149
- --px-card-text-color: var(--px-color-success);
150
- }
151
- .px-card--success.is-dash[data-v-61d3ab66] {
152
- --px-card-bg-color: var(--px-color-success-light-9);
153
- --px-card-border-color: var(--px-color-success);
154
- --px-card-text-color: var(--px-color-success);
155
- }
156
- .px-card--success.is-ghost[data-v-61d3ab66] {
157
- --px-card-bg-color: transparent;
158
- --px-card-border-color: transparent;
159
- --px-card-shadow-color: transparent;
160
- --px-card-text-color: var(--px-color-success);
161
- }
162
- .px-card--info[data-v-61d3ab66] {
163
- --px-card-bg-color: var(--px-color-info-light-9);
164
- --px-card-border-color: var(--px-color-info);
165
- --px-card-shadow-color: var(--px-color-info-dark);
166
- --px-card-text-color: var(--px-text-color-primary);
167
- --px-card-header-border-color: var(--px-color-info);
168
- --px-card-footer-border-color: var(--px-color-info);
169
- }
170
- .px-card--info.is-outline[data-v-61d3ab66] {
171
- --px-card-bg-color: transparent;
172
- --px-card-border-color: var(--px-color-info);
173
- --px-card-text-color: var(--px-color-info);
174
- }
175
- .px-card--info.is-dash[data-v-61d3ab66] {
176
- --px-card-bg-color: var(--px-color-info-light-9);
177
- --px-card-border-color: var(--px-color-info);
178
- --px-card-text-color: var(--px-color-info);
179
- }
180
- .px-card--info.is-ghost[data-v-61d3ab66] {
181
- --px-card-bg-color: transparent;
182
- --px-card-border-color: transparent;
183
- --px-card-shadow-color: transparent;
184
- --px-card-text-color: var(--px-color-info);
185
- }
186
- .px-card--warning[data-v-61d3ab66] {
187
- --px-card-bg-color: var(--px-color-warning-light-9);
188
- --px-card-border-color: var(--px-color-warning);
189
- --px-card-shadow-color: var(--px-color-warning-dark);
190
- --px-card-text-color: var(--px-text-color-primary);
191
- --px-card-header-border-color: var(--px-color-warning);
192
- --px-card-footer-border-color: var(--px-color-warning);
193
- }
194
- .px-card--warning.is-outline[data-v-61d3ab66] {
195
- --px-card-bg-color: transparent;
196
- --px-card-border-color: var(--px-color-warning);
197
- --px-card-text-color: var(--px-color-warning);
198
- }
199
- .px-card--warning.is-dash[data-v-61d3ab66] {
200
- --px-card-bg-color: var(--px-color-warning-light-9);
201
- --px-card-border-color: var(--px-color-warning);
202
- --px-card-text-color: var(--px-color-warning);
203
- }
204
- .px-card--warning.is-ghost[data-v-61d3ab66] {
205
- --px-card-bg-color: transparent;
206
- --px-card-border-color: transparent;
207
- --px-card-shadow-color: transparent;
208
- --px-card-text-color: var(--px-color-warning);
209
- }
210
- .px-card--danger[data-v-61d3ab66] {
211
- --px-card-bg-color: var(--px-color-danger-light-9);
212
- --px-card-border-color: var(--px-color-danger);
213
- --px-card-shadow-color: var(--px-color-danger-dark);
214
- --px-card-text-color: var(--px-text-color-primary);
215
- --px-card-header-border-color: var(--px-color-danger);
216
- --px-card-footer-border-color: var(--px-color-danger);
217
- }
218
- .px-card--danger.is-outline[data-v-61d3ab66] {
219
- --px-card-bg-color: transparent;
220
- --px-card-border-color: var(--px-color-danger);
221
- --px-card-text-color: var(--px-color-danger);
222
- }
223
- .px-card--danger.is-dash[data-v-61d3ab66] {
224
- --px-card-bg-color: var(--px-color-danger-light-9);
225
- --px-card-border-color: var(--px-color-danger);
226
- --px-card-text-color: var(--px-color-danger);
227
- }
228
- .px-card--danger.is-ghost[data-v-61d3ab66] {
229
- --px-card-bg-color: transparent;
230
- --px-card-border-color: transparent;
231
- --px-card-shadow-color: transparent;
232
- --px-card-text-color: var(--px-color-danger);
233
- }
234
- /* Outline variant */
235
- .px-card.is-outline[data-v-61d3ab66] {
236
- border: 2px solid var(--px-card-border-color);
237
- filter: none;
238
- }
239
- .px-card.is-outline[data-v-61d3ab66]::before { display: none;
240
- }
241
- .px-card.is-outline[data-v-61d3ab66]::after {
242
- clip-path: none;
243
- inset: 0;
244
- background: var(--px-card-bg-color);
245
- }
246
- /* Dash variant */
247
- .px-card.is-dash[data-v-61d3ab66] {
248
- border: 2px dashed var(--px-card-border-color);
249
- filter: none;
250
- }
251
- .px-card.is-dash[data-v-61d3ab66]::before { display: none;
252
- }
253
- .px-card.is-dash[data-v-61d3ab66]::after {
254
- clip-path: none;
255
- inset: 0;
256
- background: var(--px-card-bg-color);
257
- }
258
- /* Ghost variant */
259
- .px-card.is-ghost[data-v-61d3ab66] {
260
- filter: none;
261
- }
262
- .px-card.is-ghost[data-v-61d3ab66]::before, .px-card.is-ghost[data-v-61d3ab66]::after { display: none;
263
- }
@@ -1,187 +0,0 @@
1
- /* Dropdown Variables */
2
- .px-dropdown .px-dropdown__menu {
3
- --px-dropdown-menuItem-hover-fill: var(--px-hover-bg-color);
4
- --px-dropdown-menuItem-hover-color: var(--px-hover-text-color);
5
- --px-dropdown-menuItem-disabled-color: var(--px-text-color-disabled);
6
- --px-dropdown-menuItem-divided-color: var(--px-border-color-dark);
7
- --px-dropdown-shadow-color: var(--px-shadow-color-dark);
8
- }
9
- /* Base Dropdown Styles - Pixel Game Menu */
10
- .px-dropdown {
11
- display: inline-block;
12
- font-family: var(--px-font-family);
13
- }
14
- .px-dropdown .px-tooltip {
15
- --px-popover-padding: 4px 0;
16
- }
17
- /* Disabled state */
18
- .px-dropdown.is-disabled > * {
19
- color: var(--px-text-color-placeholder) !important;
20
- cursor: not-allowed !important;
21
- }
22
- /* Dropdown Menu - Pixel style list */
23
- .px-dropdown__menu {
24
- list-style-type: none;
25
- margin: 0;
26
- padding: 4px 0;
27
- background: var(--px-bg-color);
28
- }
29
- /* Menu items - Pixel RPG menu style */
30
- .px-dropdown__menu .px-dropdown__item {
31
- display: flex;
32
- align-items: center;
33
- white-space: nowrap;
34
- list-style: none;
35
- line-height: 1.5;
36
- padding: 8px 16px;
37
- margin: 0;
38
- font-size: var(--px-font-size-base);
39
- font-family: var(--px-font-family);
40
- color: var(--px-text-color-primary);
41
- cursor: pointer;
42
- outline: none;
43
- position: relative;
44
- transition: none;
45
- }
46
- /* Hover effect - Pixel highlight */
47
- .px-dropdown__menu .px-dropdown__item:hover {
48
- background-color: var(--px-dropdown-menuItem-hover-fill);
49
- color: var(--px-dropdown-menuItem-hover-color);
50
- }
51
- /* Pixel cursor indicator */
52
- .px-dropdown__menu .px-dropdown__item:hover::before {
53
- content: ">";
54
- position: absolute;
55
- left: 6px;
56
- color: var(--px-dropdown-menuItem-hover-color);
57
- font-weight: bold;
58
- }
59
- /* Disabled state */
60
- .px-dropdown__menu .px-dropdown__item.is-disabled {
61
- color: var(--px-dropdown-menuItem-disabled-color);
62
- cursor: not-allowed;
63
- background-image: none;
64
- }
65
- .px-dropdown__menu .px-dropdown__item.is-disabled:hover {
66
- background-color: transparent;
67
- }
68
- .px-dropdown__menu .px-dropdown__item.is-disabled:hover::before {
69
- content: none;
70
- }
71
- /* Size variants */
72
- .px-dropdown__menu .px-dropdown__item--large {
73
- padding: 10px 20px;
74
- line-height: 1.5;
75
- font-size: var(--px-font-size-large);
76
- }
77
- .px-dropdown__menu .px-dropdown__item--large:hover::before {
78
- left: 8px;
79
- }
80
- .px-dropdown__menu .px-dropdown__item--small {
81
- padding: 4px 12px;
82
- line-height: 1.4;
83
- font-size: var(--px-font-size-small);
84
- }
85
- .px-dropdown__menu .px-dropdown__item--small:hover::before {
86
- left: 4px;
87
- }
88
- /* Divider - Pixel style dashed line */
89
- .px-dropdown__menu .divided-placeholder {
90
- margin: 6px 8px;
91
- border-top: 2px dashed var(--px-dropdown-menuItem-divided-color);
92
- }
93
- /* Dropdown Variables */
94
- .px-dropdown .px-dropdown__menu {
95
- --px-dropdown-menuItem-hover-fill: var(--px-hover-bg-color);
96
- --px-dropdown-menuItem-hover-color: var(--px-hover-text-color);
97
- --px-dropdown-menuItem-disabled-color: var(--px-text-color-disabled);
98
- --px-dropdown-menuItem-divided-color: var(--px-border-color-dark);
99
- --px-dropdown-shadow-color: var(--px-shadow-color-dark);
100
- }
101
- /* Base Dropdown Styles - Pixel Game Menu */
102
- .px-dropdown {
103
- display: inline-block;
104
- font-family: var(--px-font-family);
105
- }
106
- .px-dropdown .px-tooltip {
107
- --px-popover-padding: 4px 0;
108
- }
109
- /* Disabled state */
110
- .px-dropdown.is-disabled > * {
111
- color: var(--px-text-color-placeholder) !important;
112
- cursor: not-allowed !important;
113
- }
114
- /* Dropdown Menu - Pixel style list */
115
- .px-dropdown__menu {
116
- list-style-type: none;
117
- margin: 0;
118
- padding: 4px 0;
119
- background: var(--px-bg-color);
120
- }
121
- /* Menu items - Pixel RPG menu style */
122
- .px-dropdown__menu .px-dropdown__item {
123
- display: flex;
124
- align-items: center;
125
- white-space: nowrap;
126
- list-style: none;
127
- line-height: 1.5;
128
- padding: 8px 16px;
129
- margin: 0;
130
- font-size: var(--px-font-size-base);
131
- font-family: var(--px-font-family);
132
- color: var(--px-text-color-primary);
133
- cursor: pointer;
134
- outline: none;
135
- position: relative;
136
- transition: none;
137
- }
138
- /* Hover effect - Pixel highlight */
139
- .px-dropdown__menu .px-dropdown__item:hover {
140
- background-color: var(--px-dropdown-menuItem-hover-fill);
141
- color: var(--px-dropdown-menuItem-hover-color);
142
- }
143
- /* Pixel cursor indicator */
144
- .px-dropdown__menu .px-dropdown__item:hover::before {
145
- content: ">";
146
- position: absolute;
147
- left: 6px;
148
- color: var(--px-dropdown-menuItem-hover-color);
149
- font-weight: bold;
150
- }
151
- /* Disabled state */
152
- .px-dropdown__menu .px-dropdown__item.is-disabled {
153
- color: var(--px-dropdown-menuItem-disabled-color);
154
- cursor: not-allowed;
155
- background-image: none;
156
- }
157
- .px-dropdown__menu .px-dropdown__item.is-disabled:hover {
158
- background-color: transparent;
159
- }
160
- .px-dropdown__menu .px-dropdown__item.is-disabled:hover::before {
161
- content: none;
162
- }
163
- /* Size variants */
164
- .px-dropdown__menu .px-dropdown__item--large {
165
- padding: 10px 20px;
166
- line-height: 1.5;
167
- font-size: var(--px-font-size-large);
168
- }
169
- .px-dropdown__menu .px-dropdown__item--large:hover::before {
170
- left: 8px;
171
- }
172
- .px-dropdown__menu .px-dropdown__item--small {
173
- padding: 4px 12px;
174
- line-height: 1.4;
175
- font-size: var(--px-font-size-small);
176
- }
177
- .px-dropdown__menu .px-dropdown__item--small:hover::before {
178
- left: 4px;
179
- }
180
- /* Divider - Pixel style dashed line */
181
- .px-dropdown__menu .divided-placeholder {
182
- margin: 6px 8px;
183
- border-top: 2px dashed var(--px-dropdown-menuItem-divided-color);
184
- }
185
- .px-dropdown .px-button-group > :last-child {
186
- padding: 5px 7px;
187
- }