@tachui/modifiers 0.8.0-alpha → 0.8.5-alpha
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.
- package/README.md +19 -9
- package/dist/animation/index.d.ts +11 -0
- package/dist/animation/index.d.ts.map +1 -0
- package/dist/appearance/background.d.ts +23 -6
- package/dist/appearance/background.d.ts.map +1 -1
- package/dist/appearance/border.d.ts +2 -2
- package/dist/appearance/border.d.ts.map +1 -1
- package/dist/appearance/clip-shape.d.ts +2 -2
- package/dist/appearance/clip-shape.d.ts.map +1 -1
- package/dist/appearance/clipped.d.ts +2 -2
- package/dist/appearance/clipped.d.ts.map +1 -1
- package/dist/appearance/foreground.d.ts +14 -5
- package/dist/appearance/foreground.d.ts.map +1 -1
- package/dist/appearance/index.js +11 -12
- package/dist/appearance/reactive-factories.d.ts +20 -0
- package/dist/appearance/reactive-factories.d.ts.map +1 -0
- package/dist/attributes/accessibility.d.ts +10 -0
- package/dist/attributes/accessibility.d.ts.map +1 -0
- package/dist/attributes/aria.d.ts +2 -2
- package/dist/attributes/aria.d.ts.map +1 -1
- package/dist/attributes/css-properties.d.ts +2 -2
- package/dist/attributes/css-properties.d.ts.map +1 -1
- package/dist/attributes/html.d.ts +2 -2
- package/dist/attributes/html.d.ts.map +1 -1
- package/dist/attributes/index.d.ts +1 -0
- package/dist/attributes/index.d.ts.map +1 -1
- package/dist/base.d.ts +6 -7
- package/dist/base.d.ts.map +1 -1
- package/dist/base.js +9 -840
- package/dist/basic/animation.d.ts +41 -0
- package/dist/basic/animation.d.ts.map +1 -0
- package/dist/basic/base.d.ts +7 -8
- package/dist/basic/base.d.ts.map +1 -1
- package/dist/basic/index.d.ts +19 -2
- package/dist/basic/index.d.ts.map +1 -1
- package/dist/basic/index.js +252 -0
- package/dist/basic/margin.d.ts +2 -2
- package/dist/basic/margin.d.ts.map +1 -1
- package/dist/basic/margin.js +13 -158
- package/dist/basic/padding.d.ts +2 -2
- package/dist/basic/padding.d.ts.map +1 -1
- package/dist/basic/padding.js +13 -153
- package/dist/basic/size.d.ts +2 -2
- package/dist/basic/size.d.ts.map +1 -1
- package/dist/basic/size.js +10 -76
- package/dist/effects/backdrop/index.d.ts +60 -0
- package/dist/effects/backdrop/index.d.ts.map +1 -0
- package/dist/effects/backdrop/index.js +118 -0
- package/dist/effects/effects/index.d.ts +190 -0
- package/dist/effects/effects/index.d.ts.map +1 -0
- package/dist/effects/filters/index.d.ts +297 -0
- package/dist/effects/filters/index.d.ts.map +1 -0
- package/dist/effects/filters/index.js +234 -0
- package/dist/effects/index.d.ts +14 -0
- package/dist/effects/index.d.ts.map +1 -0
- package/dist/effects/index.js +373 -0
- package/dist/effects/internal-exports.d.ts +9 -0
- package/dist/effects/internal-exports.d.ts.map +1 -0
- package/dist/effects/shadows/index.d.ts +316 -0
- package/dist/effects/shadows/index.d.ts.map +1 -0
- package/dist/effects/shadows/index.js +405 -0
- package/dist/effects/transforms/index.d.ts +316 -0
- package/dist/effects/transforms/index.d.ts.map +1 -0
- package/dist/effects/transforms/index.js +193 -0
- package/dist/elements/pseudo-elements.d.ts +2 -2
- package/dist/elements/pseudo-elements.d.ts.map +1 -1
- package/dist/essential-manifest.d.ts +5 -0
- package/dist/essential-manifest.d.ts.map +1 -0
- package/dist/index.d.ts +10 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +273 -881
- package/dist/interaction/allows-hit-testing.d.ts +1 -1
- package/dist/interaction/allows-hit-testing.d.ts.map +1 -1
- package/dist/interaction/dom-events.d.ts +35 -0
- package/dist/interaction/dom-events.d.ts.map +1 -0
- package/dist/interaction/focus-events.d.ts +54 -0
- package/dist/interaction/focus-events.d.ts.map +1 -0
- package/dist/interaction/focusable.d.ts +1 -1
- package/dist/interaction/focusable.d.ts.map +1 -1
- package/dist/interaction/focused.d.ts +1 -1
- package/dist/interaction/focused.d.ts.map +1 -1
- package/dist/interaction/index.d.ts +5 -0
- package/dist/interaction/index.d.ts.map +1 -1
- package/dist/interaction/index.js +75 -28
- package/dist/interaction/keyboard-events.d.ts +69 -0
- package/dist/interaction/keyboard-events.d.ts.map +1 -0
- package/dist/interaction/keyboard-shortcut.d.ts +1 -1
- package/dist/interaction/keyboard-shortcut.d.ts.map +1 -1
- package/dist/interaction/mouse-events.d.ts +125 -0
- package/dist/interaction/mouse-events.d.ts.map +1 -0
- package/dist/interaction/on-continuous-hover.d.ts +1 -1
- package/dist/interaction/on-continuous-hover.d.ts.map +1 -1
- package/dist/interaction/on-hover.d.ts +30 -0
- package/dist/interaction/on-hover.d.ts.map +1 -0
- package/dist/interaction/on-long-press-gesture.d.ts +1 -1
- package/dist/interaction/on-long-press-gesture.d.ts.map +1 -1
- package/dist/interaction/scroll.d.ts +2 -2
- package/dist/interaction/scroll.d.ts.map +1 -1
- package/dist/layout/aspect-ratio.d.ts +2 -2
- package/dist/layout/aspect-ratio.d.ts.map +1 -1
- package/dist/layout/fixed-size.d.ts +2 -2
- package/dist/layout/fixed-size.d.ts.map +1 -1
- package/dist/layout/flexbox.d.ts +2 -2
- package/dist/layout/flexbox.d.ts.map +1 -1
- package/dist/layout/frame.d.ts +13 -0
- package/dist/layout/frame.d.ts.map +1 -0
- package/dist/layout/index.d.ts +2 -0
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +25 -22
- package/dist/layout/offset.d.ts +2 -2
- package/dist/layout/offset.d.ts.map +1 -1
- package/dist/layout/overlay.d.ts +1 -1
- package/dist/layout/overlay.d.ts.map +1 -1
- package/dist/layout/position.d.ts +2 -2
- package/dist/layout/position.d.ts.map +1 -1
- package/dist/layout/resizable.d.ts +6 -0
- package/dist/layout/resizable.d.ts.map +1 -0
- package/dist/layout/scale-effect.d.ts +6 -5
- package/dist/layout/scale-effect.d.ts.map +1 -1
- package/dist/layout/z-index.d.ts +2 -2
- package/dist/layout/z-index.d.ts.map +1 -1
- package/dist/lifecycle/index.d.ts +6 -0
- package/dist/lifecycle/index.d.ts.map +1 -0
- package/dist/modifiers-basic-DLmE749_.js +5604 -0
- package/dist/navigation/index.d.ts +12 -0
- package/dist/navigation/index.d.ts.map +1 -0
- package/dist/preload/backdrop.d.ts +5 -0
- package/dist/preload/backdrop.d.ts.map +1 -0
- package/dist/preload/backdrop.js +7 -0
- package/dist/preload/basic.d.ts +7 -0
- package/dist/preload/basic.d.ts.map +1 -0
- package/dist/preload/basic.js +251 -0
- package/dist/preload/effects.d.ts +6 -0
- package/dist/preload/effects.d.ts.map +1 -0
- package/dist/preload/effects.js +95 -0
- package/dist/preload/filters.d.ts +6 -0
- package/dist/preload/filters.d.ts.map +1 -0
- package/dist/preload/filters.js +31 -0
- package/dist/preload/shadows.d.ts +5 -0
- package/dist/preload/shadows.d.ts.map +1 -0
- package/dist/preload/shadows.js +27 -0
- package/dist/preload/transforms.d.ts +5 -0
- package/dist/preload/transforms.d.ts.map +1 -0
- package/dist/preload/transforms.js +30 -0
- package/dist/types.d.ts +7 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -1
- package/dist/typography/font.d.ts +5 -2
- package/dist/typography/font.d.ts.map +1 -1
- package/dist/typography/index.d.ts +1 -0
- package/dist/typography/index.d.ts.map +1 -1
- package/dist/typography/index.js +26 -28
- package/dist/typography/text.d.ts +2 -2
- package/dist/typography/text.d.ts.map +1 -1
- package/dist/typography/text.js +9 -127
- package/dist/typography/typography.d.ts +6 -4
- package/dist/typography/typography.d.ts.map +1 -1
- package/dist/utility/as-html-validator.d.ts +20 -0
- package/dist/utility/as-html-validator.d.ts.map +1 -0
- package/dist/utility/as-html.d.ts +65 -0
- package/dist/utility/as-html.d.ts.map +1 -0
- package/dist/utility/basic-sanitizer.d.ts +54 -0
- package/dist/utility/basic-sanitizer.d.ts.map +1 -0
- package/dist/utility/css.d.ts +2 -2
- package/dist/utility/css.d.ts.map +1 -1
- package/dist/utility/index.d.ts +3 -0
- package/dist/utility/index.d.ts.map +1 -1
- package/dist/utility/index.js +19 -15
- package/dist/utility/utility.d.ts +2 -2
- package/dist/utility/utility.d.ts.map +1 -1
- package/dist/version.d.ts +14 -0
- package/dist/version.d.ts.map +1 -0
- package/package.json +59 -4
- package/dist/allows-hit-testing-DscPrcOw.js +0 -464
- package/dist/allows-hit-testing-DscPrcOw.js.map +0 -1
- package/dist/appearance/index.js.map +0 -1
- package/dist/base-CkGf4b9G.js +0 -786
- package/dist/base-CkGf4b9G.js.map +0 -1
- package/dist/base.js.map +0 -1
- package/dist/basic/margin.js.map +0 -1
- package/dist/basic/padding.js.map +0 -1
- package/dist/basic/size.js.map +0 -1
- package/dist/clipped-CCW8gJqJ.js +0 -282
- package/dist/clipped-CCW8gJqJ.js.map +0 -1
- package/dist/css-CJEXRr6H.js +0 -124
- package/dist/css-CJEXRr6H.js.map +0 -1
- package/dist/font-3qM2Z97N.js +0 -135
- package/dist/font-3qM2Z97N.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/interaction/index.js.map +0 -1
- package/dist/layout/index.js.map +0 -1
- package/dist/overlay-DDiSLprp.js +0 -774
- package/dist/overlay-DDiSLprp.js.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/typography/index.js.map +0 -1
- package/dist/typography/text.js.map +0 -1
- package/dist/utility/index.js.map +0 -1
package/dist/basic/padding.js
CHANGED
|
@@ -1,155 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var g = (t, o, i) => f(t, typeof o != "symbol" ? o + "" : o, i);
|
|
4
|
-
import { B as c } from "../base-CkGf4b9G.js";
|
|
5
|
-
import { isSignal as u, isComputed as m } from "@tachui/core/reactive";
|
|
6
|
-
class r extends c {
|
|
7
|
-
// Optimized priority for internal spacing (before margin at 50)
|
|
8
|
-
constructor(i) {
|
|
9
|
-
super(i);
|
|
10
|
-
g(this, "type", "padding");
|
|
11
|
-
g(this, "priority", 45);
|
|
12
|
-
}
|
|
13
|
-
apply(i, d) {
|
|
14
|
-
if (!d.element) return;
|
|
15
|
-
const a = this.computePaddingStyles(this.properties);
|
|
16
|
-
this.applyStyles(d.element, a);
|
|
17
|
-
}
|
|
18
|
-
computePaddingStyles(i) {
|
|
19
|
-
const d = {}, a = (n) => u(n) || m(n) ? n : typeof n == "number" ? `${n}px` : n === "auto" ? n : typeof n == "string" ? /^-?\d*\.?\d+(px|rem|em|%|vw|vh|vmin|vmax)$/.test(n) ? n : `${n}px` : String(n);
|
|
20
|
-
if ("all" in i && i.all !== void 0)
|
|
21
|
-
d.padding = a(i.all);
|
|
22
|
-
else {
|
|
23
|
-
if ("vertical" in i && i.vertical !== void 0) {
|
|
24
|
-
const n = a(i.vertical);
|
|
25
|
-
d.paddingTop = n, d.paddingBottom = n;
|
|
26
|
-
}
|
|
27
|
-
if ("horizontal" in i && i.horizontal !== void 0) {
|
|
28
|
-
const n = a(i.horizontal);
|
|
29
|
-
d.paddingLeft = n, d.paddingRight = n;
|
|
30
|
-
}
|
|
31
|
-
"top" in i && i.top !== void 0 && (d.paddingTop = a(i.top)), "right" in i && i.right !== void 0 && (d.paddingRight = a(i.right)), "bottom" in i && i.bottom !== void 0 && (d.paddingBottom = a(i.bottom)), "left" in i && i.left !== void 0 && (d.paddingLeft = a(i.left)), "leading" in i && i.leading !== void 0 && (d.paddingLeft = a(i.leading)), "trailing" in i && i.trailing !== void 0 && (d.paddingRight = a(i.trailing));
|
|
32
|
-
}
|
|
33
|
-
return d;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
function e(t) {
|
|
37
|
-
return typeof t == "number" || typeof t == "string" ? new r({ all: t }) : new r(t);
|
|
38
|
-
}
|
|
39
|
-
function z(t) {
|
|
40
|
-
return new r({ top: t });
|
|
41
|
-
}
|
|
42
|
-
function s(t) {
|
|
43
|
-
return new r({ bottom: t });
|
|
44
|
-
}
|
|
45
|
-
function w(t) {
|
|
46
|
-
return new r({ left: t });
|
|
47
|
-
}
|
|
48
|
-
function b(t) {
|
|
49
|
-
return new r({ right: t });
|
|
50
|
-
}
|
|
51
|
-
function L(t) {
|
|
52
|
-
return new r({ leading: t });
|
|
53
|
-
}
|
|
54
|
-
function S(t) {
|
|
55
|
-
return new r({ trailing: t });
|
|
56
|
-
}
|
|
57
|
-
function R(t) {
|
|
58
|
-
return new r({ horizontal: t });
|
|
59
|
-
}
|
|
60
|
-
function B(t) {
|
|
61
|
-
return new r({ vertical: t });
|
|
62
|
-
}
|
|
63
|
-
const P = {
|
|
64
|
-
/**
|
|
65
|
-
* Extra small padding (4px) - For tight spacing
|
|
66
|
-
*/
|
|
67
|
-
xs: () => e(4),
|
|
68
|
-
/**
|
|
69
|
-
* Small padding (8px) - For compact components
|
|
70
|
-
*/
|
|
71
|
-
sm: () => e(8),
|
|
72
|
-
/**
|
|
73
|
-
* Medium padding (12px) - Default comfortable spacing
|
|
74
|
-
*/
|
|
75
|
-
md: () => e(12),
|
|
76
|
-
/**
|
|
77
|
-
* Large padding (16px) - For prominent components
|
|
78
|
-
*/
|
|
79
|
-
lg: () => e(16),
|
|
80
|
-
/**
|
|
81
|
-
* Extra large padding (24px) - For emphasis
|
|
82
|
-
*/
|
|
83
|
-
xl: () => e(24),
|
|
84
|
-
/**
|
|
85
|
-
* Extra extra large padding (32px) - For major sections
|
|
86
|
-
*/
|
|
87
|
-
xxl: () => e(32),
|
|
88
|
-
/**
|
|
89
|
-
* Huge padding (48px) - For hero sections
|
|
90
|
-
*/
|
|
91
|
-
xxxl: () => e(48),
|
|
92
|
-
// Semantic presets for common UI patterns
|
|
93
|
-
/**
|
|
94
|
-
* Button padding preset (horizontal: 16, vertical: 8)
|
|
95
|
-
* Optimized for interactive elements
|
|
96
|
-
*/
|
|
97
|
-
button: () => e({ horizontal: 16, vertical: 8 }),
|
|
98
|
-
/**
|
|
99
|
-
* Small button padding (horizontal: 12, vertical: 6)
|
|
100
|
-
*/
|
|
101
|
-
buttonSm: () => e({ horizontal: 12, vertical: 6 }),
|
|
102
|
-
/**
|
|
103
|
-
* Large button padding (horizontal: 24, vertical: 12)
|
|
104
|
-
*/
|
|
105
|
-
buttonLg: () => e({ horizontal: 24, vertical: 12 }),
|
|
106
|
-
/**
|
|
107
|
-
* Card padding preset (all: 16)
|
|
108
|
-
* Standard for card-like containers
|
|
109
|
-
*/
|
|
110
|
-
card: () => e(16),
|
|
111
|
-
/**
|
|
112
|
-
* Compact card padding (all: 12)
|
|
113
|
-
*/
|
|
114
|
-
cardSm: () => e(12),
|
|
115
|
-
/**
|
|
116
|
-
* Spacious card padding (all: 24)
|
|
117
|
-
*/
|
|
118
|
-
cardLg: () => e(24),
|
|
119
|
-
/**
|
|
120
|
-
* Section padding preset (horizontal: 20, vertical: 12)
|
|
121
|
-
* For content sections and layout blocks
|
|
122
|
-
*/
|
|
123
|
-
section: () => e({ horizontal: 20, vertical: 12 }),
|
|
124
|
-
/**
|
|
125
|
-
* Page padding preset (horizontal: 24, vertical: 16)
|
|
126
|
-
* For top-level page containers
|
|
127
|
-
*/
|
|
128
|
-
page: () => e({ horizontal: 24, vertical: 16 }),
|
|
129
|
-
/**
|
|
130
|
-
* Form field padding (horizontal: 12, vertical: 8)
|
|
131
|
-
*/
|
|
132
|
-
field: () => e({ horizontal: 12, vertical: 8 }),
|
|
133
|
-
/**
|
|
134
|
-
* Navigation item padding (horizontal: 16, vertical: 8)
|
|
135
|
-
*/
|
|
136
|
-
nav: () => e({ horizontal: 16, vertical: 8 }),
|
|
137
|
-
/**
|
|
138
|
-
* List item padding (horizontal: 16, vertical: 12)
|
|
139
|
-
*/
|
|
140
|
-
listItem: () => e({ horizontal: 16, vertical: 12 })
|
|
141
|
-
};
|
|
1
|
+
import { cx as g, cy as n, cA as p, cF as s, cD as c, cB as o, cH as t, cC as r, cz as e, cE as f, cG as l } from "../modifiers-basic-DLmE749_.js";
|
|
2
|
+
import "@tachui/core/reactive";
|
|
142
3
|
export {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
4
|
+
g as PaddingModifier,
|
|
5
|
+
n as padding,
|
|
6
|
+
p as paddingBottom,
|
|
7
|
+
s as paddingHorizontal,
|
|
8
|
+
c as paddingLeading,
|
|
9
|
+
o as paddingLeft,
|
|
10
|
+
t as paddingPresets,
|
|
11
|
+
r as paddingRight,
|
|
12
|
+
e as paddingTop,
|
|
13
|
+
f as paddingTrailing,
|
|
14
|
+
l as paddingVertical
|
|
154
15
|
};
|
|
155
|
-
//# sourceMappingURL=padding.js.map
|
package/dist/basic/size.d.ts
CHANGED
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
* Provides a unified interface for setting element dimensions
|
|
5
5
|
* with support for SwiftUI-style infinity constants.
|
|
6
6
|
*/
|
|
7
|
-
import type { DOMNode } from '@tachui/
|
|
7
|
+
import type { DOMNode } from '@tachui/types/runtime';
|
|
8
8
|
import type { Dimension } from '@tachui/core/constants/layout';
|
|
9
9
|
import { BaseModifier } from './base';
|
|
10
|
-
import type { ModifierContext, ReactiveModifierProps } from '@tachui/
|
|
10
|
+
import type { ModifierContext, ReactiveModifierProps } from '@tachui/types/modifiers';
|
|
11
11
|
export interface SizeOptions {
|
|
12
12
|
width?: Dimension;
|
|
13
13
|
height?: Dimension;
|
package/dist/basic/size.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"size.d.ts","sourceRoot":"","sources":["../../src/basic/size.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"size.d.ts","sourceRoot":"","sources":["../../src/basic/size.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAM9D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,KAAK,EACV,eAAe,EACf,qBAAqB,EACtB,MAAM,yBAAyB,CAAA;AAEhC,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAED,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAA;AAEpE,qBAAa,YAAa,SAAQ,YAAY,CAAC,WAAW,CAAC;IACzD,QAAQ,CAAC,IAAI,UAAS;IACtB,QAAQ,CAAC,QAAQ,MAAK;gBAEV,OAAO,EAAE,mBAAmB;IAKxC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,GAAG,SAAS;IASpE,OAAO,CAAC,iBAAiB;CA0D1B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,YAAY,CAE/D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAEpD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAErD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAEvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAEvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAExD;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAExD"}
|
package/dist/basic/size.js
CHANGED
|
@@ -1,78 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var a = (t, h, i) => u(t, typeof h != "symbol" ? h + "" : h, i);
|
|
4
|
-
import { shouldExpandForInfinity as c, dimensionToCSS as m, isInfinity as s } from "@tachui/core/constants/layout";
|
|
5
|
-
import { B as g } from "../base-CkGf4b9G.js";
|
|
6
|
-
class d extends g {
|
|
7
|
-
// Priority 80 for layout
|
|
8
|
-
constructor(i) {
|
|
9
|
-
super(i);
|
|
10
|
-
a(this, "type", "size");
|
|
11
|
-
a(this, "priority", 80);
|
|
12
|
-
}
|
|
13
|
-
apply(i, n) {
|
|
14
|
-
if (!n.element) return;
|
|
15
|
-
const o = this.computeSizeStyles(this.properties);
|
|
16
|
-
this.applyStyles(n.element, o);
|
|
17
|
-
}
|
|
18
|
-
computeSizeStyles(i) {
|
|
19
|
-
const n = {}, o = c(i);
|
|
20
|
-
if (Object.assign(n, o.cssProps), i.width !== void 0) {
|
|
21
|
-
const e = m(i.width);
|
|
22
|
-
e !== void 0 && !s(i.width) && (n.width = e);
|
|
23
|
-
}
|
|
24
|
-
if (i.height !== void 0) {
|
|
25
|
-
const e = m(i.height);
|
|
26
|
-
e !== void 0 && !s(i.height) && (n.height = e);
|
|
27
|
-
}
|
|
28
|
-
if (i.minWidth !== void 0) {
|
|
29
|
-
const e = m(i.minWidth);
|
|
30
|
-
e !== void 0 && (n.minWidth = e);
|
|
31
|
-
}
|
|
32
|
-
if (i.maxWidth !== void 0 && !s(i.maxWidth)) {
|
|
33
|
-
const e = m(i.maxWidth);
|
|
34
|
-
e !== void 0 && (n.maxWidth = e);
|
|
35
|
-
} else s(i.maxWidth) && (n.maxWidth = "none");
|
|
36
|
-
if (i.minHeight !== void 0) {
|
|
37
|
-
const e = m(i.minHeight);
|
|
38
|
-
e !== void 0 && (n.minHeight = e);
|
|
39
|
-
}
|
|
40
|
-
if (i.maxHeight !== void 0 && !s(i.maxHeight)) {
|
|
41
|
-
const e = m(i.maxHeight);
|
|
42
|
-
e !== void 0 && (n.maxHeight = e);
|
|
43
|
-
} else s(i.maxHeight) && (n.maxHeight = "none");
|
|
44
|
-
return n;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
function v(t) {
|
|
48
|
-
return new d(t);
|
|
49
|
-
}
|
|
50
|
-
function w(t) {
|
|
51
|
-
return new d({ width: t });
|
|
52
|
-
}
|
|
53
|
-
function H(t) {
|
|
54
|
-
return new d({ height: t });
|
|
55
|
-
}
|
|
56
|
-
function W(t) {
|
|
57
|
-
return new d({ maxWidth: t });
|
|
58
|
-
}
|
|
59
|
-
function y(t) {
|
|
60
|
-
return new d({ minWidth: t });
|
|
61
|
-
}
|
|
62
|
-
function S(t) {
|
|
63
|
-
return new d({ maxHeight: t });
|
|
64
|
-
}
|
|
65
|
-
function V(t) {
|
|
66
|
-
return new d({ minHeight: t });
|
|
67
|
-
}
|
|
1
|
+
import "@tachui/core/constants/layout";
|
|
2
|
+
import { cT as c, cW as t, cZ as e, cX as h, c_ as m, cY as d, cU as o, cV as r } from "../modifiers-basic-DLmE749_.js";
|
|
68
3
|
export {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
4
|
+
c as SizeModifier,
|
|
5
|
+
t as height,
|
|
6
|
+
e as maxHeight,
|
|
7
|
+
h as maxWidth,
|
|
8
|
+
m as minHeight,
|
|
9
|
+
d as minWidth,
|
|
10
|
+
o as size,
|
|
11
|
+
r as width
|
|
77
12
|
};
|
|
78
|
-
//# sourceMappingURL=size.js.map
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backdrop Filter Modifiers Implementation
|
|
3
|
+
*
|
|
4
|
+
* Unified implementation combining the best elements of both previous backdrop filter
|
|
5
|
+
* implementations - production-ready browser support with enhanced developer experience.
|
|
6
|
+
*/
|
|
7
|
+
import type { DOMNode } from '@tachui/types/runtime';
|
|
8
|
+
import { BaseModifier } from '@tachui/core/modifiers/base';
|
|
9
|
+
import type { ModifierContext, ReactiveModifierProps } from '@tachui/types/modifiers';
|
|
10
|
+
import type { ColorValue } from '@tachui/core';
|
|
11
|
+
export interface BackdropFilterConfig {
|
|
12
|
+
blur?: number;
|
|
13
|
+
brightness?: number;
|
|
14
|
+
contrast?: number;
|
|
15
|
+
dropShadow?: {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
blur: number;
|
|
19
|
+
color: string;
|
|
20
|
+
} | string;
|
|
21
|
+
grayscale?: number;
|
|
22
|
+
hueRotate?: number;
|
|
23
|
+
invert?: number;
|
|
24
|
+
opacity?: number;
|
|
25
|
+
saturate?: number;
|
|
26
|
+
sepia?: number;
|
|
27
|
+
}
|
|
28
|
+
export interface BackdropFilterOptions {
|
|
29
|
+
backdropFilter: BackdropFilterConfig | string;
|
|
30
|
+
fallbackColor?: ColorValue;
|
|
31
|
+
}
|
|
32
|
+
export type ReactiveBackdropFilterOptions = ReactiveModifierProps<BackdropFilterOptions>;
|
|
33
|
+
export declare class BackdropFilterModifier extends BaseModifier<BackdropFilterOptions> {
|
|
34
|
+
readonly type = "backdropFilter";
|
|
35
|
+
readonly priority: number;
|
|
36
|
+
constructor(options: ReactiveBackdropFilterOptions);
|
|
37
|
+
apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined;
|
|
38
|
+
private computeBackdropFilterStyles;
|
|
39
|
+
private formatBackdropFilter;
|
|
40
|
+
private supportsBackdropFilter;
|
|
41
|
+
/**
|
|
42
|
+
* Resolve ColorValue (including ColorAssets) to CSS color string
|
|
43
|
+
*/
|
|
44
|
+
private resolveColorValue;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Create a backdrop filter modifier with enhanced configuration options
|
|
48
|
+
*/
|
|
49
|
+
export declare function backdropFilter(config: BackdropFilterConfig, fallbackColor?: ColorValue): BackdropFilterModifier;
|
|
50
|
+
export declare function backdropFilter(cssValue: string, fallbackColor?: ColorValue): BackdropFilterModifier;
|
|
51
|
+
export type GlassmorphismIntensity = 'light' | 'medium' | 'heavy' | 'subtle';
|
|
52
|
+
/**
|
|
53
|
+
* Create glassmorphism effect with intensity-based presets
|
|
54
|
+
*/
|
|
55
|
+
export declare function glassmorphism(intensity?: GlassmorphismIntensity, customFallback?: ColorValue): BackdropFilterModifier;
|
|
56
|
+
/**
|
|
57
|
+
* Create custom glassmorphism effect with fine-tuned parameters
|
|
58
|
+
*/
|
|
59
|
+
export declare function customGlassmorphism(blur: number, saturate?: number, brightness?: number, fallbackColor?: ColorValue): BackdropFilterModifier;
|
|
60
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/effects/backdrop/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAO9C,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EACP;QACE,CAAC,EAAE,MAAM,CAAA;QACT,CAAC,EAAE,MAAM,CAAA;QACT,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;KACd,GACD,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,oBAAoB,GAAG,MAAM,CAAA;IAC7C,aAAa,CAAC,EAAE,UAAU,CAAA;CAC3B;AAED,MAAM,MAAM,6BAA6B,GACvC,qBAAqB,CAAC,qBAAqB,CAAC,CAAA;AAM9C,qBAAa,sBAAuB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;IAC7E,QAAQ,CAAC,IAAI,oBAAmB;IAChC,QAAQ,CAAC,QAAQ,SAAmC;gBAExC,OAAO,EAAE,6BAA6B;IAmClD,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,GAAG,SAAS;IASpE,OAAO,CAAC,2BAA2B;IA0BnC,OAAO,CAAC,oBAAoB;IAyD5B,OAAO,CAAC,sBAAsB;IAY9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CA+B1B;AAMD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,oBAAoB,EAC5B,aAAa,CAAC,EAAE,UAAU,GACzB,sBAAsB,CAAA;AACzB,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,UAAU,GACzB,sBAAsB,CAAA;AAezB,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;AAgC5E;;GAEG;AACH,wBAAgB,aAAa,CAC3B,SAAS,GAAE,sBAAiC,EAC5C,cAAc,CAAC,EAAE,UAAU,GAC1B,sBAAsB,CAOxB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,QAAQ,GAAE,MAAY,EACtB,UAAU,GAAE,MAAY,EACxB,aAAa,CAAC,EAAE,UAAU,GACzB,sBAAsB,CAMxB"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
var u = Object.defineProperty;
|
|
2
|
+
var c = (o, t, e) => t in o ? u(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;
|
|
3
|
+
var i = (o, t, e) => c(o, typeof t != "symbol" ? t + "" : t, e);
|
|
4
|
+
import { BaseModifier as d } from "@tachui/core/modifiers/base";
|
|
5
|
+
import { M as f } from "../../modifiers-basic-DLmE749_.js";
|
|
6
|
+
class s extends d {
|
|
7
|
+
constructor(e) {
|
|
8
|
+
let r = "blur(10px)";
|
|
9
|
+
e.backdropFilter && (typeof e.backdropFilter == "function" && "peek" in e.backdropFilter ? r = e.backdropFilter.peek() : r = e.backdropFilter);
|
|
10
|
+
const a = {
|
|
11
|
+
backdropFilter: r
|
|
12
|
+
};
|
|
13
|
+
"fallbackColor" in e && e.fallbackColor !== void 0 && (typeof e.fallbackColor == "function" && "peek" in e.fallbackColor ? a.fallbackColor = e.fallbackColor.peek() : a.fallbackColor = e.fallbackColor);
|
|
14
|
+
super(a);
|
|
15
|
+
i(this, "type", "backdropFilter");
|
|
16
|
+
i(this, "priority", f.APPEARANCE + 15);
|
|
17
|
+
}
|
|
18
|
+
apply(e, r) {
|
|
19
|
+
if (!r.element) return;
|
|
20
|
+
const a = this.computeBackdropFilterStyles(this.properties);
|
|
21
|
+
this.applyStyles(r.element, a);
|
|
22
|
+
}
|
|
23
|
+
computeBackdropFilterStyles(e) {
|
|
24
|
+
const r = {};
|
|
25
|
+
if (e.backdropFilter) {
|
|
26
|
+
if (this.supportsBackdropFilter()) {
|
|
27
|
+
const a = this.formatBackdropFilter(e.backdropFilter);
|
|
28
|
+
r.backdropFilter = a, r.webkitBackdropFilter = a;
|
|
29
|
+
} else if (e.fallbackColor) {
|
|
30
|
+
const a = this.resolveColorValue(e.fallbackColor);
|
|
31
|
+
r.backgroundColor = a, process.env.NODE_ENV === "development" && console.info(
|
|
32
|
+
"TachUI: backdrop-filter not supported, using fallback color:",
|
|
33
|
+
a
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return r;
|
|
38
|
+
}
|
|
39
|
+
formatBackdropFilter(e) {
|
|
40
|
+
if (typeof e == "string")
|
|
41
|
+
return e;
|
|
42
|
+
const r = [];
|
|
43
|
+
if (e.blur !== void 0 && r.push(`blur(${e.blur}px)`), e.brightness !== void 0 && r.push(`brightness(${e.brightness})`), e.contrast !== void 0 && r.push(`contrast(${e.contrast})`), e.dropShadow)
|
|
44
|
+
if (typeof e.dropShadow == "string")
|
|
45
|
+
r.push(`drop-shadow(${e.dropShadow})`);
|
|
46
|
+
else {
|
|
47
|
+
const { x: a, y: l, blur: n, color: p } = e.dropShadow;
|
|
48
|
+
r.push(`drop-shadow(${a}px ${l}px ${n}px ${p})`);
|
|
49
|
+
}
|
|
50
|
+
return e.grayscale !== void 0 && r.push(`grayscale(${e.grayscale})`), e.hueRotate !== void 0 && r.push(`hue-rotate(${e.hueRotate}deg)`), e.invert !== void 0 && r.push(`invert(${e.invert})`), e.opacity !== void 0 && r.push(`opacity(${e.opacity})`), e.saturate !== void 0 && r.push(`saturate(${e.saturate})`), e.sepia !== void 0 && r.push(`sepia(${e.sepia})`), r.length === 0 ? (process.env.NODE_ENV === "development" && console.warn(
|
|
51
|
+
"TachUI BackdropFilter: No filter functions specified - provide blur, brightness, contrast, etc."
|
|
52
|
+
), "none") : r.join(" ");
|
|
53
|
+
}
|
|
54
|
+
supportsBackdropFilter() {
|
|
55
|
+
return typeof CSS < "u" && CSS.supports ? CSS.supports("backdrop-filter", "blur(1px)") || CSS.supports("-webkit-backdrop-filter", "blur(1px)") : !1;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Resolve ColorValue (including ColorAssets) to CSS color string
|
|
59
|
+
*/
|
|
60
|
+
resolveColorValue(e) {
|
|
61
|
+
if (typeof e == "string")
|
|
62
|
+
return e;
|
|
63
|
+
if (typeof e == "function" && "peek" in e)
|
|
64
|
+
return e.peek();
|
|
65
|
+
if (e && typeof e == "object") {
|
|
66
|
+
if ("getValue" in e && typeof e.getValue == "function")
|
|
67
|
+
return e.getValue();
|
|
68
|
+
if ("value" in e && typeof e.value == "string")
|
|
69
|
+
return e.value;
|
|
70
|
+
if ("toString" in e && typeof e.toString == "function")
|
|
71
|
+
return e.toString();
|
|
72
|
+
}
|
|
73
|
+
return String(e);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
function y(o, t) {
|
|
77
|
+
return new s({
|
|
78
|
+
backdropFilter: o,
|
|
79
|
+
...t && { fallbackColor: t }
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
const b = {
|
|
83
|
+
subtle: {
|
|
84
|
+
config: { blur: 3, saturate: 1.05, brightness: 1.05 },
|
|
85
|
+
fallbackColor: "rgba(255, 255, 255, 0.05)"
|
|
86
|
+
},
|
|
87
|
+
light: {
|
|
88
|
+
config: { blur: 8, saturate: 1.15, brightness: 1.1 },
|
|
89
|
+
fallbackColor: "rgba(255, 255, 255, 0.1)"
|
|
90
|
+
},
|
|
91
|
+
medium: {
|
|
92
|
+
config: { blur: 16, saturate: 1.3, brightness: 1.15 },
|
|
93
|
+
fallbackColor: "rgba(255, 255, 255, 0.15)"
|
|
94
|
+
},
|
|
95
|
+
heavy: {
|
|
96
|
+
config: { blur: 24, saturate: 1.5, brightness: 1.2 },
|
|
97
|
+
fallbackColor: "rgba(255, 255, 255, 0.2)"
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
function v(o = "medium", t) {
|
|
101
|
+
const e = b[o];
|
|
102
|
+
return new s({
|
|
103
|
+
backdropFilter: e.config,
|
|
104
|
+
fallbackColor: t || e.fallbackColor
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
function C(o, t = 1.2, e = 1.1, r) {
|
|
108
|
+
return new s({
|
|
109
|
+
backdropFilter: { blur: o, saturate: t, brightness: e },
|
|
110
|
+
fallbackColor: r || `rgba(255, 255, 255, ${Math.min(o / 200, 0.25)})`
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
export {
|
|
114
|
+
s as BackdropFilterModifier,
|
|
115
|
+
y as backdropFilter,
|
|
116
|
+
C as customGlassmorphism,
|
|
117
|
+
v as glassmorphism
|
|
118
|
+
};
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Effects Modifiers - Hover effects and cursor styling
|
|
3
|
+
*
|
|
4
|
+
* Provides comprehensive hover effect system with SwiftUI-style effects
|
|
5
|
+
* and enhanced cursor styling with complete CSS cursor support.
|
|
6
|
+
*/
|
|
7
|
+
import type { Signal } from '@tachui/types/reactive';
|
|
8
|
+
import type { DOMNode } from '@tachui/types/runtime';
|
|
9
|
+
import { BaseModifier } from '@tachui/core/modifiers/base';
|
|
10
|
+
import type { ModifierContext, ReactiveModifierProps } from '@tachui/types/modifiers';
|
|
11
|
+
export type CSSCursorValue = 'auto' | 'default' | 'pointer' | 'text' | 'wait' | 'help' | 'not-allowed' | 'none' | 'grab' | 'grabbing' | 'zoom-in' | 'zoom-out' | 'alias' | 'cell' | 'copy' | string;
|
|
12
|
+
export interface CursorOptions {
|
|
13
|
+
cursor: CSSCursorValue;
|
|
14
|
+
}
|
|
15
|
+
export type ReactiveCursorOptions = ReactiveModifierProps<CursorOptions>;
|
|
16
|
+
export declare class CursorModifier extends BaseModifier<CursorOptions> {
|
|
17
|
+
readonly type = "cursor";
|
|
18
|
+
readonly priority = 10;
|
|
19
|
+
constructor(options: ReactiveCursorOptions);
|
|
20
|
+
apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined;
|
|
21
|
+
private validateCursorValue;
|
|
22
|
+
}
|
|
23
|
+
export type SwiftUIHoverEffect = 'automatic' | 'highlight' | 'lift' | 'scale';
|
|
24
|
+
export interface HoverStyles {
|
|
25
|
+
backgroundColor?: string;
|
|
26
|
+
color?: string;
|
|
27
|
+
transform?: string;
|
|
28
|
+
opacity?: number;
|
|
29
|
+
boxShadow?: string;
|
|
30
|
+
borderColor?: string;
|
|
31
|
+
filter?: string;
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
}
|
|
34
|
+
export interface HoverOptions {
|
|
35
|
+
effect?: SwiftUIHoverEffect;
|
|
36
|
+
hoverStyles?: HoverStyles;
|
|
37
|
+
transition?: string | number;
|
|
38
|
+
isEnabled?: boolean;
|
|
39
|
+
}
|
|
40
|
+
export type ReactiveHoverOptions = ReactiveModifierProps<HoverOptions>;
|
|
41
|
+
export declare class HoverModifier extends BaseModifier<HoverOptions> {
|
|
42
|
+
readonly type = "hover";
|
|
43
|
+
readonly priority = 15;
|
|
44
|
+
private static hoverCount;
|
|
45
|
+
constructor(options: ReactiveHoverOptions);
|
|
46
|
+
apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined;
|
|
47
|
+
private addHoverStyles;
|
|
48
|
+
private computeHoverStyles;
|
|
49
|
+
private getSwiftUIEffectStyles;
|
|
50
|
+
private formatTransition;
|
|
51
|
+
private getOrCreateStyleSheet;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Enhanced cursor modifier with complete CSS cursor support
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* .cursor('pointer') // Standard pointer cursor
|
|
59
|
+
* .cursor('grab') // Grab cursor for draggable elements
|
|
60
|
+
* .cursor('zoom-in') // Zoom cursor for zoomable content
|
|
61
|
+
* .cursor('url(custom.cur), pointer') // Custom cursor with fallback
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
export declare function cursor(value: CSSCursorValue): CursorModifier;
|
|
65
|
+
/**
|
|
66
|
+
* SwiftUI-style hover effect modifier with preset effects
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```typescript
|
|
70
|
+
* .hoverEffect('automatic') // Default SwiftUI hover with scale + shadow
|
|
71
|
+
* .hoverEffect('lift') // Elevation effect with shadow
|
|
72
|
+
* .hoverEffect('highlight') // Subtle background change
|
|
73
|
+
* .hoverEffect('scale') // Scale transform only
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare function hoverEffect(effect: SwiftUIHoverEffect, isEnabled?: boolean | Signal<boolean>): HoverModifier;
|
|
77
|
+
/**
|
|
78
|
+
* Custom hover styles with optional transition
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* .hover({
|
|
83
|
+
* backgroundColor: '#f0f0f0',
|
|
84
|
+
* transform: 'scale(1.05)'
|
|
85
|
+
* })
|
|
86
|
+
* .hover({
|
|
87
|
+
* opacity: 0.8,
|
|
88
|
+
* filter: 'blur(2px)'
|
|
89
|
+
* }, 300)
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
export declare function hover(styles: HoverStyles, transition?: string | number): HoverModifier;
|
|
93
|
+
/**
|
|
94
|
+
* Hover styles with explicit transition duration
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```typescript
|
|
98
|
+
* .hoverWithTransition({
|
|
99
|
+
* transform: 'rotate(5deg)',
|
|
100
|
+
* color: '#007AFF'
|
|
101
|
+
* }, 250)
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
export declare function hoverWithTransition(styles: HoverStyles, duration?: number): HoverModifier;
|
|
105
|
+
/**
|
|
106
|
+
* Conditional hover effect - can be toggled on/off
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* .conditionalHover('lift', isInteractive) // Signal<boolean>
|
|
111
|
+
* .conditionalHover('highlight', false) // Disabled
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
export declare function conditionalHover(effect: SwiftUIHoverEffect, isEnabled: boolean | Signal<boolean>): HoverModifier;
|
|
115
|
+
/**
|
|
116
|
+
* Interactive cursor - pointer with hover effect
|
|
117
|
+
*/
|
|
118
|
+
export declare function interactiveCursor(): CursorModifier;
|
|
119
|
+
/**
|
|
120
|
+
* Draggable cursor - grab when idle, grabbing when active
|
|
121
|
+
*/
|
|
122
|
+
export declare function draggableCursor(): CursorModifier;
|
|
123
|
+
/**
|
|
124
|
+
* Text selection cursor
|
|
125
|
+
*/
|
|
126
|
+
export declare function textCursor(): CursorModifier;
|
|
127
|
+
/**
|
|
128
|
+
* Disabled/not-allowed cursor
|
|
129
|
+
*/
|
|
130
|
+
export declare function disabledCursor(): CursorModifier;
|
|
131
|
+
/**
|
|
132
|
+
* Loading cursor
|
|
133
|
+
*/
|
|
134
|
+
export declare function loadingCursor(): CursorModifier;
|
|
135
|
+
/**
|
|
136
|
+
* Help cursor
|
|
137
|
+
*/
|
|
138
|
+
export declare function helpCursor(): CursorModifier;
|
|
139
|
+
/**
|
|
140
|
+
* Zoom cursor for zoomable content
|
|
141
|
+
*/
|
|
142
|
+
export declare function zoomCursor(mode?: 'in' | 'out'): CursorModifier;
|
|
143
|
+
/**
|
|
144
|
+
* Button hover effect - lift with shadow
|
|
145
|
+
*/
|
|
146
|
+
export declare function buttonHover(): HoverModifier;
|
|
147
|
+
/**
|
|
148
|
+
* Card hover effect - subtle scale and shadow
|
|
149
|
+
*/
|
|
150
|
+
export declare function cardHover(): HoverModifier;
|
|
151
|
+
/**
|
|
152
|
+
* Link hover effect - highlight background
|
|
153
|
+
*/
|
|
154
|
+
export declare function linkHover(): HoverModifier;
|
|
155
|
+
/**
|
|
156
|
+
* Image hover effect - scale on hover
|
|
157
|
+
*/
|
|
158
|
+
export declare function imageHover(): HoverModifier;
|
|
159
|
+
/**
|
|
160
|
+
* Active state effect for pressed/mousedown states
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```typescript
|
|
164
|
+
* .active({ opacity: 0.8, transform: 'scale(0.95)' }) // Pressed effect
|
|
165
|
+
* .active({ backgroundColor: '#e0e0e0' }) // Active background
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
export declare function active(styles: HoverStyles): HoverModifier;
|
|
169
|
+
/**
|
|
170
|
+
* Focus state effect for keyboard navigation and accessibility
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* ```typescript
|
|
174
|
+
* .focus({ outline: '2px solid #007AFF' }) // Focus outline
|
|
175
|
+
* .focus({ boxShadow: '0 0 0 3px rgba(0,122,255,0.3)' }) // Focus glow
|
|
176
|
+
* .focus({ borderColor: '#007AFF' }) // Focus border
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
export declare function focus(styles: HoverStyles): HoverModifier;
|
|
180
|
+
/**
|
|
181
|
+
* Pressed state effect (alias for active)
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* ```typescript
|
|
185
|
+
* .pressed({ opacity: 0.9 }) // Slightly transparent when pressed
|
|
186
|
+
* .pressed({ transform: 'scale(0.98)' }) // Slight scale reduction
|
|
187
|
+
* ```
|
|
188
|
+
*/
|
|
189
|
+
export declare function pressed(styles: HoverStyles): HoverModifier;
|
|
190
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/effects/effects/index.ts"],"names":[],"mappings":"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"}
|