@octane-xplat/ui 0.4.0 → 0.5.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.
- package/dist/native/octane-client-build.json +1 -1
- package/dist/native/ui.js +26 -23
- package/dist/native/ui14.js +16 -1
- package/dist/native/ui16.js +2 -2
- package/dist/native/ui24.js +2 -1
- package/dist/native/ui3.js +22 -1
- package/dist/native/ui39.js +89 -91
- package/dist/native/ui40.js +180 -53
- package/dist/native/ui41.js +55 -16
- package/dist/native/ui42.js +15 -6
- package/dist/native/ui43.js +18 -37
- package/dist/native/ui44.js +6 -265
- package/dist/native/ui45.js +24 -14
- package/dist/native/ui46.js +261 -29
- package/dist/native/ui47.js +17 -30
- package/dist/native/ui48.js +28 -65
- package/dist/native/ui49.js +21 -46
- package/dist/native/ui50.js +58 -13
- package/dist/native/ui51.js +65 -12
- package/dist/native/ui52.js +58 -86
- package/dist/native/ui53.js +8 -15
- package/dist/native/ui54.js +11 -15
- package/dist/native/ui55.js +82 -146
- package/dist/native/ui56.js +18 -17
- package/dist/native/ui57.js +18 -13
- package/dist/native/ui58.js +155 -21
- package/dist/native/ui59.js +32 -7
- package/dist/native/ui6.js +54 -12
- package/dist/native/ui60.js +8 -102
- package/dist/native/ui61.js +20 -74
- package/dist/native/ui62.js +8 -0
- package/dist/native/ui63.js +108 -0
- package/dist/native/ui64.js +76 -0
- package/dist/web/octane-client-build.json +1 -1
- package/dist/web/ui.js +26 -24
- package/dist/web/ui13.js +106 -41
- package/dist/web/ui34.js +147 -67
- package/dist/web/ui35.js +136 -51
- package/dist/web/ui36.js +86 -18
- package/dist/web/ui37.js +20 -5
- package/dist/web/ui38.js +6 -37
- package/dist/web/ui39.js +26 -142
- package/dist/web/ui40.js +143 -32
- package/dist/web/ui41.js +42 -41
- package/dist/web/ui42.js +40 -74
- package/dist/web/ui43.js +47 -13
- package/dist/web/ui44.js +13 -33
- package/dist/web/ui45.js +60 -7
- package/dist/web/ui46.js +47 -42
- package/dist/web/ui47.js +7 -11
- package/dist/web/ui48.js +30 -48
- package/dist/web/ui49.js +12 -46
- package/dist/web/ui50.js +62 -16
- package/dist/web/ui51.js +33 -135
- package/dist/web/ui52.js +18 -41
- package/dist/web/ui53.js +266 -10
- package/dist/web/ui54.js +41 -8
- package/dist/web/ui55.js +16 -21
- package/dist/web/ui56.js +7 -6
- package/dist/web/ui57.js +20 -42
- package/dist/web/ui58.js +6 -44
- package/dist/web/ui59.js +44 -0
- package/dist/web/ui60.js +46 -0
- package/package.json +5 -1
- package/src/theme/tokens.css +255 -30
- package/types/index.d.ts +10 -0
- package/types/props.d.ts +59 -4
package/dist/web/ui46.js
CHANGED
|
@@ -1,45 +1,50 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const _v = props.style;
|
|
31
|
-
if (_b.d !== _v) {
|
|
32
|
-
setStyle(_b.b, _v, _b.d);
|
|
33
|
-
_b.d = _v;
|
|
1
|
+
import { hookSlots, useEffect, useState } from "octane";
|
|
2
|
+
import { memoPublish, memoSlot, memoTake0 } from "octane/internal/client";
|
|
3
|
+
//#region src/useMeasure.web.tsrx
|
|
4
|
+
var _hs$ = /* @__PURE__ */ hookSlots(4);
|
|
5
|
+
var _h$0 = /* @__PURE__ */ Symbol(_hs$);
|
|
6
|
+
var _h$1 = /* @__PURE__ */ Symbol(_hs$ + 1);
|
|
7
|
+
var _h$2 = /* @__PURE__ */ Symbol(_hs$ + 2);
|
|
8
|
+
var _h$3 = /* @__PURE__ */ Symbol(_hs$ + 3);
|
|
9
|
+
function readBounds(element) {
|
|
10
|
+
const rect = element.getBoundingClientRect();
|
|
11
|
+
return {
|
|
12
|
+
x: rect.left,
|
|
13
|
+
y: rect.top,
|
|
14
|
+
width: rect.width,
|
|
15
|
+
height: rect.height
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function useMeasure(options = {}) {
|
|
19
|
+
let __hks, __hke;
|
|
20
|
+
const [element, setElement] = useState(null, _h$0);
|
|
21
|
+
const [bounds, setBounds] = useState(null, _h$1);
|
|
22
|
+
const observe = options.observe ?? true;
|
|
23
|
+
const bind = (__hks = memoSlot(_h$2, "useCallback"), __hke = memoTake0(__hks), __hke === null ? memoPublish(__hks, (next) => {
|
|
24
|
+
setElement((current) => current === next ? current : next);
|
|
25
|
+
}) : __hke.value);
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
if (!element) {
|
|
28
|
+
setBounds(null);
|
|
29
|
+
return;
|
|
34
30
|
}
|
|
35
|
-
|
|
31
|
+
const update = () => setBounds(readBounds(element));
|
|
32
|
+
update();
|
|
33
|
+
if (!observe) return;
|
|
34
|
+
const resizeObserver = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(update);
|
|
35
|
+
resizeObserver?.observe(element);
|
|
36
|
+
window.addEventListener("resize", update);
|
|
37
|
+
window.addEventListener("scroll", update, true);
|
|
38
|
+
return () => {
|
|
39
|
+
resizeObserver?.disconnect();
|
|
40
|
+
window.removeEventListener("resize", update);
|
|
41
|
+
window.removeEventListener("scroll", update, true);
|
|
42
|
+
};
|
|
43
|
+
}, [element, observe], _h$3);
|
|
44
|
+
return {
|
|
45
|
+
bind,
|
|
46
|
+
bounds
|
|
47
|
+
};
|
|
36
48
|
}
|
|
37
|
-
var ActivityIndicator = function ActivityIndicator(props, __s, __extra) {
|
|
38
|
-
const __block = __s.block;
|
|
39
|
-
{
|
|
40
|
-
const __ifCondition = !(props.busy === false);
|
|
41
|
-
ifBlock(__s, 0, __block.parentNode, __ifCondition, __then$0, null, __block.endMarker, __ifCondition ? [props] : void 0);
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
49
|
//#endregion
|
|
45
|
-
export {
|
|
50
|
+
export { useMeasure };
|
package/dist/web/ui47.js
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
1
|
-
//#region src/
|
|
2
|
-
/**
|
|
3
|
-
function
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
max: safeMax,
|
|
8
|
-
value: safeValue,
|
|
9
|
-
ratio: safeValue / safeMax
|
|
10
|
-
};
|
|
1
|
+
//#region src/platformProps.web.ts
|
|
2
|
+
/** Apply a web escape-hatch bag after the primitive's standard props. */
|
|
3
|
+
function applyWebProps(el, props) {
|
|
4
|
+
if (!el || !props) return;
|
|
5
|
+
for (const [name, value] of Object.entries(props)) if (name.includes("-")) el.setAttribute(name, String(value));
|
|
6
|
+
else el[name] = value;
|
|
11
7
|
}
|
|
12
8
|
//#endregion
|
|
13
|
-
export {
|
|
9
|
+
export { applyWebProps };
|
package/dist/web/ui48.js
CHANGED
|
@@ -1,63 +1,45 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { bindSignalAttribute,
|
|
4
|
-
//#region src/
|
|
1
|
+
import { applyWebProps } from "./ui47.js";
|
|
2
|
+
import { bag5, clone, ifBlock, queueRefAttach, queueRefDetach, setStyle, template } from "octane";
|
|
3
|
+
import { bindSignalAttribute, enableSignalBindings, replaceRef, setPlainAttribute, updateFreshClassName } from "octane/internal/client";
|
|
4
|
+
//#region src/ActivityIndicator.web.tsrx
|
|
5
5
|
enableSignalBindings(1, true);
|
|
6
|
-
var _t$0 = /* @__PURE__ */ template("<div role=\"progressbar\"
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const
|
|
14
|
-
const sweep = ratio * 360;
|
|
15
|
-
const ringStyle = {
|
|
16
|
-
position: "absolute",
|
|
17
|
-
inset: 0,
|
|
18
|
-
borderRadius: "50%",
|
|
19
|
-
backgroundImage: `conic-gradient(${color} 0deg ${sweep}deg, ${trackColor} ${sweep}deg 360deg)`,
|
|
20
|
-
mask: `radial-gradient(circle, transparent calc(50% - ${strokeWidth}px), #000 calc(50% - ${strokeWidth}px + 0.5px))`,
|
|
21
|
-
WebkitMask: `radial-gradient(circle, transparent calc(50% - ${strokeWidth}px), #000 calc(50% - ${strokeWidth}px + 0.5px))`
|
|
22
|
-
};
|
|
23
|
-
if (__s.block.pending && !__s.block.crossRenderUpdate) return;
|
|
6
|
+
var _t$0 = /* @__PURE__ */ template("<div role=\"progressbar\"></div>");
|
|
7
|
+
var _rm$1 = [
|
|
8
|
+
"r",
|
|
9
|
+
"e",
|
|
10
|
+
"b"
|
|
11
|
+
];
|
|
12
|
+
function __then$0(__props, __s, __extra) {
|
|
13
|
+
const props = __extra[0];
|
|
24
14
|
let _b = __s.slots[0];
|
|
25
15
|
if (_b === void 0) {
|
|
26
|
-
let _m1,
|
|
16
|
+
let _m1, _m4;
|
|
27
17
|
const _root = clone(_t$0);
|
|
28
18
|
_m1 = _root;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
19
|
+
queueRefAttach(__s, _m4 = (el) => applyWebProps(el, props.web), _m1);
|
|
20
|
+
(__s.cleanups ??= []).push(() => _b && queueRefDetach(_b.e, _b.b));
|
|
21
|
+
_b = bag5(__s, _root, void 0, _m1, void 0, void 0, _m4);
|
|
22
|
+
__s.refFields = _rm$1;
|
|
23
|
+
} else {
|
|
24
|
+
const _r = (el) => applyWebProps(el, props.web);
|
|
25
|
+
if (_r !== _b.e) _b.e = replaceRef(__s, _b.e, _r, _b.b);
|
|
33
26
|
}
|
|
34
|
-
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:
|
|
35
|
-
_b.c = updateFreshClassName(["vx-
|
|
27
|
+
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:da5807de", setPlainAttribute);
|
|
28
|
+
_b.c = updateFreshClassName(["vx-spinner", props.className], _b.c, _b.b);
|
|
36
29
|
{
|
|
37
|
-
const _v =
|
|
38
|
-
display: "grid",
|
|
39
|
-
placeItems: "center",
|
|
40
|
-
position: "relative",
|
|
41
|
-
width: size,
|
|
42
|
-
height: size,
|
|
43
|
-
...props.style
|
|
44
|
-
};
|
|
30
|
+
const _v = props.style;
|
|
45
31
|
if (_b.d !== _v) {
|
|
46
32
|
setStyle(_b.b, _v, _b.d);
|
|
47
33
|
_b.d = _v;
|
|
48
34
|
}
|
|
49
35
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
36
|
+
}
|
|
37
|
+
var ActivityIndicator = function ActivityIndicator(props, __s, __extra) {
|
|
38
|
+
const __block = __s.block;
|
|
53
39
|
{
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
setStyle(_b.i, _v, _b.h);
|
|
57
|
-
_b.h = _v;
|
|
58
|
-
}
|
|
40
|
+
const __ifCondition = !(props.busy === false);
|
|
41
|
+
ifBlock(__s, 0, __block.parentNode, __ifCondition, __then$0, null, __block.endMarker, __ifCondition ? [props] : void 0);
|
|
59
42
|
}
|
|
60
|
-
|
|
61
|
-
});
|
|
43
|
+
};
|
|
62
44
|
//#endregion
|
|
63
|
-
export {
|
|
45
|
+
export { ActivityIndicator };
|
package/dist/web/ui49.js
CHANGED
|
@@ -1,47 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
];
|
|
13
|
-
var Slider = /* @__PURE__ */ __s(function Slider(props, __s, __extra) {
|
|
14
|
-
let _b = __s.slots[0];
|
|
15
|
-
if (_b === void 0) {
|
|
16
|
-
let _m1, _m4, _m8;
|
|
17
|
-
const _root = clone(_t$0);
|
|
18
|
-
_m1 = _root;
|
|
19
|
-
_m4 = bindSignalValue(__s, void 0, _root, props.value, "i:c0018a58");
|
|
20
|
-
setEventHandler(_root, "$$input", (e) => props.onValueChange?.(Number(e.target.value)));
|
|
21
|
-
queueRefAttach(__s, _m8 = (el) => applyWebProps(el, props.web), _m1);
|
|
22
|
-
(__s.cleanups ??= []).push(() => _b && queueRefDetach(_b.i, _b.b));
|
|
23
|
-
_b = bag9(__s, _root, void 0, _m1, void 0, void 0, _m4, void 0, void 0, void 0, _m8);
|
|
24
|
-
__s.refFields = _rm$0;
|
|
25
|
-
} else {
|
|
26
|
-
_b.e = bindSignalValue(__s, _b.e, _b.b, props.value, "i:c0018a58");
|
|
27
|
-
setEventHandler(_b.b, "$$input", (e) => props.onValueChange?.(Number(e.target.value)));
|
|
28
|
-
{
|
|
29
|
-
const _r = (el) => applyWebProps(el, props.web);
|
|
30
|
-
if (_r !== _b.i) _b.i = replaceRef(__s, _b.i, _r, _b.b);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:97ef4e10", setPlainAttribute);
|
|
34
|
-
_b.c = updateFreshClassName(["vx-slider", props.className], _b.c, _b.b);
|
|
35
|
-
{
|
|
36
|
-
const _v = props.style;
|
|
37
|
-
if (_b.d !== _v) {
|
|
38
|
-
setStyle(_b.b, _v, _b.d);
|
|
39
|
-
_b.d = _v;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
_b.f = bindSignalAttribute(__s, _b.f, _b.b, "min", props.minValue ?? 0, "b:7991c980", setPlainAttribute);
|
|
43
|
-
_b.g = bindSignalAttribute(__s, _b.g, _b.b, "max", props.maxValue ?? 100, "b:ff7f1a7c", setPlainAttribute);
|
|
44
|
-
_b.h = bindSignalAttribute(__s, _b.h, _b.b, "disabled", props.disabled, "b:91d4cdb7", setBooleanAttribute);
|
|
45
|
-
});
|
|
1
|
+
//#region src/meter-math.ts
|
|
2
|
+
/** Clamp a progress value to its declared range for drawing and accessibility. */
|
|
3
|
+
function meterRange(value, max) {
|
|
4
|
+
const safeMax = Number.isFinite(max) && max > 0 ? max : 100;
|
|
5
|
+
const safeValue = Number.isFinite(value) ? Math.min(safeMax, Math.max(0, value)) : 0;
|
|
6
|
+
return {
|
|
7
|
+
max: safeMax,
|
|
8
|
+
value: safeValue,
|
|
9
|
+
ratio: safeValue / safeMax
|
|
10
|
+
};
|
|
11
|
+
}
|
|
46
12
|
//#endregion
|
|
47
|
-
export {
|
|
13
|
+
export { meterRange };
|
package/dist/web/ui50.js
CHANGED
|
@@ -1,17 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
function
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { meterRange } from "./ui49.js";
|
|
2
|
+
import { __s, bag12, child, clone, setAriaAttribute, setStyle, sibling, template } from "octane";
|
|
3
|
+
import { bindSignalAttribute, bindSignalChild, enableSignalBindings, setPlainAttribute, updateFreshClassName } from "octane/internal/client";
|
|
4
|
+
//#region src/Meter.web.tsrx
|
|
5
|
+
enableSignalBindings(1, true);
|
|
6
|
+
var _t$0 = /* @__PURE__ */ template("<div role=\"progressbar\" aria-valuemin=\"0\"><div aria-hidden=\"true\"></div><div style=\"position: relative;\"></div></div>");
|
|
7
|
+
var Meter = /* @__PURE__ */ __s(function Meter(props, __s, __extra) {
|
|
8
|
+
const max = props.max ?? 100;
|
|
9
|
+
const { max: rangeMax, value, ratio } = meterRange(props.value, max);
|
|
10
|
+
const size = props.size ?? 24;
|
|
11
|
+
const strokeWidth = Math.max(0, Math.min(props.strokeWidth ?? 3, size));
|
|
12
|
+
const color = props.color ?? "#3376cc";
|
|
13
|
+
const trackColor = props.trackColor ?? "#e1ecf7";
|
|
14
|
+
const sweep = ratio * 360;
|
|
15
|
+
const ringStyle = {
|
|
16
|
+
position: "absolute",
|
|
17
|
+
inset: 0,
|
|
18
|
+
borderRadius: "50%",
|
|
19
|
+
backgroundImage: `conic-gradient(${color} 0deg ${sweep}deg, ${trackColor} ${sweep}deg 360deg)`,
|
|
20
|
+
mask: `radial-gradient(circle, transparent calc(50% - ${strokeWidth}px), #000 calc(50% - ${strokeWidth}px + 0.5px))`,
|
|
21
|
+
WebkitMask: `radial-gradient(circle, transparent calc(50% - ${strokeWidth}px), #000 calc(50% - ${strokeWidth}px + 0.5px))`
|
|
22
|
+
};
|
|
23
|
+
if (__s.block.pending && !__s.block.crossRenderUpdate) return;
|
|
24
|
+
let _b = __s.slots[0];
|
|
25
|
+
if (_b === void 0) {
|
|
26
|
+
let _m1, _m8, _m9;
|
|
27
|
+
const _root = clone(_t$0);
|
|
28
|
+
_m1 = _root;
|
|
29
|
+
const _el0 = child(_root);
|
|
30
|
+
_m8 = _el0;
|
|
31
|
+
_m9 = sibling(_el0, 1);
|
|
32
|
+
_b = bag12(__s, _root, void 0, _m1, void 0, void 0, void 0, void 0, void 0, void 0, _m8, _m9, null, void 0);
|
|
33
|
+
}
|
|
34
|
+
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:fe732458", setPlainAttribute);
|
|
35
|
+
_b.c = updateFreshClassName(["vx-meter", props.className], _b.c, _b.b);
|
|
36
|
+
{
|
|
37
|
+
const _v = {
|
|
38
|
+
display: "grid",
|
|
39
|
+
placeItems: "center",
|
|
40
|
+
position: "relative",
|
|
41
|
+
width: size,
|
|
42
|
+
height: size,
|
|
43
|
+
...props.style
|
|
44
|
+
};
|
|
45
|
+
if (_b.d !== _v) {
|
|
46
|
+
setStyle(_b.b, _v, _b.d);
|
|
47
|
+
_b.d = _v;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
_b.e = bindSignalAttribute(__s, _b.e, _b.b, "aria-label", props.accessibilityLabel, "b:8b03ec71", setAriaAttribute);
|
|
51
|
+
_b.f = bindSignalAttribute(__s, _b.f, _b.b, "aria-valuemax", rangeMax, "b:b0ee791c", setAriaAttribute);
|
|
52
|
+
_b.g = bindSignalAttribute(__s, _b.g, _b.b, "aria-valuenow", value, "b:4be1f493", setAriaAttribute);
|
|
53
|
+
{
|
|
54
|
+
const _v = ringStyle;
|
|
55
|
+
if (_b.h !== _v) {
|
|
56
|
+
setStyle(_b.i, _v, _b.h);
|
|
57
|
+
_b.h = _v;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
_b.m = bindSignalChild(__s, _b.m, 1, _b.j, props.children, "b:c7af99f3", null, void 0, void 0, void 0, true);
|
|
61
|
+
});
|
|
16
62
|
//#endregion
|
|
17
|
-
export {
|
|
63
|
+
export { Meter };
|
package/dist/web/ui51.js
CHANGED
|
@@ -1,149 +1,47 @@
|
|
|
1
|
-
import { applyWebProps } from "./
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
//#region src/Icon.web.tsrx
|
|
1
|
+
import { applyWebProps } from "./ui47.js";
|
|
2
|
+
import { __s, bag9, clone, delegateEvents, queueRefAttach, queueRefDetach, setBooleanAttribute, setEventHandler, setStyle, template } from "octane";
|
|
3
|
+
import { bindSignalAttribute, bindSignalValue, enableSignalBindings, replaceRef, setPlainAttribute, updateFreshClassName } from "octane/internal/client";
|
|
4
|
+
//#region src/Slider.web.tsrx
|
|
6
5
|
enableSignalBindings(1, true);
|
|
7
|
-
|
|
8
|
-
var _t$
|
|
9
|
-
var
|
|
10
|
-
var _rm$1 = [
|
|
6
|
+
delegateEvents(["input"]);
|
|
7
|
+
var _t$0 = /* @__PURE__ */ template("<input type=\"range\" data-octane-input=\"i:c0018a58\"/>");
|
|
8
|
+
var _rm$0 = [
|
|
11
9
|
"r",
|
|
12
|
-
"
|
|
10
|
+
"i",
|
|
13
11
|
"b"
|
|
14
12
|
];
|
|
15
|
-
function
|
|
16
|
-
const glyph = __extra[0];
|
|
17
|
-
const props = __extra[1];
|
|
18
|
-
const size = __extra[2];
|
|
13
|
+
var Slider = /* @__PURE__ */ __s(function Slider(props, __s, __extra) {
|
|
19
14
|
let _b = __s.slots[0];
|
|
20
15
|
if (_b === void 0) {
|
|
21
|
-
let _m1,
|
|
16
|
+
let _m1, _m4, _m8;
|
|
22
17
|
const _root = clone(_t$0);
|
|
23
18
|
_m1 = _root;
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
(__s
|
|
29
|
-
|
|
30
|
-
__s.refFields = _rm$1;
|
|
19
|
+
_m4 = bindSignalValue(__s, void 0, _root, props.value, "i:c0018a58");
|
|
20
|
+
setEventHandler(_root, "$$input", (e) => props.onValueChange?.(Number(e.target.value)));
|
|
21
|
+
queueRefAttach(__s, _m8 = (el) => applyWebProps(el, props.web), _m1);
|
|
22
|
+
(__s.cleanups ??= []).push(() => _b && queueRefDetach(_b.i, _b.b));
|
|
23
|
+
_b = bag9(__s, _root, void 0, _m1, void 0, void 0, _m4, void 0, void 0, void 0, _m8);
|
|
24
|
+
__s.refFields = _rm$0;
|
|
31
25
|
} else {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
26
|
+
_b.e = bindSignalValue(__s, _b.e, _b.b, props.value, "i:c0018a58");
|
|
27
|
+
setEventHandler(_b.b, "$$input", (e) => props.onValueChange?.(Number(e.target.value)));
|
|
28
|
+
{
|
|
29
|
+
const _r = (el) => applyWebProps(el, props.web);
|
|
30
|
+
if (_r !== _b.i) _b.i = replaceRef(__s, _b.i, _r, _b.b);
|
|
31
|
+
}
|
|
37
32
|
}
|
|
38
|
-
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:
|
|
39
|
-
_b.c =
|
|
40
|
-
_b.d = bindSignalAttribute(__s, _b.d, _b.b, "viewBox", glyph.viewBox ?? "0 0 24 24", "b:c67a6a16", setPlainAttribute);
|
|
41
|
-
_b.e = bindSignalAttribute(__s, _b.e, _b.b, "width", size, "b:fb23295c", setPlainAttribute);
|
|
42
|
-
_b.f = bindSignalAttribute(__s, _b.f, _b.b, "height", size, "b:8d1adcef", setPlainAttribute);
|
|
33
|
+
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:97ef4e10", setPlainAttribute);
|
|
34
|
+
_b.c = updateFreshClassName(["vx-slider", props.className], _b.c, _b.b);
|
|
43
35
|
{
|
|
44
|
-
const _v = props.
|
|
45
|
-
if (_b.
|
|
46
|
-
setStyle(_b.b, _v, _b.
|
|
47
|
-
_b.
|
|
36
|
+
const _v = props.style;
|
|
37
|
+
if (_b.d !== _v) {
|
|
38
|
+
setStyle(_b.b, _v, _b.d);
|
|
39
|
+
_b.d = _v;
|
|
48
40
|
}
|
|
49
41
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
"
|
|
53
|
-
|
|
54
|
-
"b"
|
|
55
|
-
];
|
|
56
|
-
function __then$3(__props, __s, __extra) {
|
|
57
|
-
const glyph = __extra[0];
|
|
58
|
-
const props = __extra[1];
|
|
59
|
-
const size = __extra[2];
|
|
60
|
-
let _b = __s.slots[0];
|
|
61
|
-
if (_b === void 0) {
|
|
62
|
-
let _m1, _m5, _m7;
|
|
63
|
-
const _root = clone(_t$1);
|
|
64
|
-
_m1 = _root;
|
|
65
|
-
queueRefAttach(__s, _m5 = (el) => applyWebProps(el, props.web), _m1);
|
|
66
|
-
(__s.cleanups ??= []).push(() => _b && queueRefDetach(_b.f, _b.b));
|
|
67
|
-
_m7 = _root.firstChild;
|
|
68
|
-
_b = bag9(__s, _root, void 0, _m1, void 0, void 0, void 0, _m5, void 0, _m7, void 0);
|
|
69
|
-
__s.refFields = _rm$4;
|
|
70
|
-
} else {
|
|
71
|
-
const _r = (el) => applyWebProps(el, props.web);
|
|
72
|
-
if (_r !== _b.f) _b.f = replaceRef(__s, _b.f, _r, _b.b);
|
|
73
|
-
}
|
|
74
|
-
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:9e8c5282", setPlainAttribute);
|
|
75
|
-
_b.c = updateFreshClassAttr(["vx-icon", props.className], _b.c, _b.b);
|
|
76
|
-
_b.d = bindSignalAttribute(__s, _b.d, _b.b, "width", size, "b:3b5779f4", setPlainAttribute);
|
|
77
|
-
_b.e = bindSignalAttribute(__s, _b.e, _b.b, "height", size, "b:13d0b8b1", setPlainAttribute);
|
|
78
|
-
_b.g = bindSignalAttribute(__s, _b.g, _b.h, "d", glyph.svg, "b:5d6c1e35", setPlainAttribute);
|
|
79
|
-
_b.i = bindSignalAttribute(__s, _b.i, _b.h, "fill", props.color ?? "currentColor", "b:b6d02800", setPlainAttribute);
|
|
80
|
-
}
|
|
81
|
-
var _rm$7 = [
|
|
82
|
-
"r",
|
|
83
|
-
"h",
|
|
84
|
-
"b"
|
|
85
|
-
];
|
|
86
|
-
function __then$6(__props, __s, __extra) {
|
|
87
|
-
const glyph = __extra[0];
|
|
88
|
-
const props = __extra[1];
|
|
89
|
-
const size = __extra[2];
|
|
90
|
-
let _b = __s.slots[0];
|
|
91
|
-
if (_b === void 0) {
|
|
92
|
-
let _m1, _m7;
|
|
93
|
-
const _root = clone(_t$2);
|
|
94
|
-
_m1 = _root;
|
|
95
|
-
queueRefAttach(__s, _m7 = (el) => applyWebProps(el, props.web), _m1);
|
|
96
|
-
(__s.cleanups ??= []).push(() => _b && queueRefDetach(_b.h, _b.b));
|
|
97
|
-
_b = bag8(__s, _root, void 0, _m1, void 0, void 0, void 0, void 0, void 0, _m7);
|
|
98
|
-
__s.refFields = _rm$7;
|
|
99
|
-
} else {
|
|
100
|
-
const _r = (el) => applyWebProps(el, props.web);
|
|
101
|
-
if (_r !== _b.h) _b.h = replaceRef(__s, _b.h, _r, _b.b);
|
|
102
|
-
}
|
|
103
|
-
_b.a = bindSignalAttribute(__s, _b.a, _b.b, "id", props.id, "b:1374b84a", setPlainAttribute);
|
|
104
|
-
_b.c = updateFreshClassName(["vx-icon", props.className], _b.c, _b.b);
|
|
105
|
-
_b.d = bindSignalAttribute(__s, _b.d, _b.b, "src", glyph.src, "b:fdaa8e12", setURLAttribute);
|
|
106
|
-
_b.e = bindSignalAttribute(__s, _b.e, _b.b, "width", size, "b:a4c78316", setPlainAttribute);
|
|
107
|
-
_b.f = bindSignalAttribute(__s, _b.f, _b.b, "height", size, "b:2ca071e0", setPlainAttribute);
|
|
108
|
-
_b.g = bindSignalAttribute(__s, _b.g, _b.b, "alt", props.name, "b:731bb804", setPlainAttribute);
|
|
109
|
-
}
|
|
110
|
-
function __else$5(__props, __s, __extra) {
|
|
111
|
-
const __block = __s.block;
|
|
112
|
-
const glyph = __extra[0];
|
|
113
|
-
__extra[1];
|
|
114
|
-
__extra[2];
|
|
115
|
-
ifBlock(__s, 0, __block.parentNode, glyph.src, __then$6, null, __block.endMarker, __extra);
|
|
116
|
-
}
|
|
117
|
-
function __else$2(__props, __s, __extra) {
|
|
118
|
-
const __block = __s.block;
|
|
119
|
-
const glyph = __extra[0];
|
|
120
|
-
__extra[1];
|
|
121
|
-
__extra[2];
|
|
122
|
-
ifBlock(__s, 0, __block.parentNode, glyph.svg, __then$3, __else$5, __block.endMarker, __extra);
|
|
123
|
-
}
|
|
124
|
-
function _frag$0(props, __s, __extra) {
|
|
125
|
-
const __block = __s.block;
|
|
126
|
-
ifBlock(__s, 0, __block.parentNode, props.h0, props.h1, props.h2, __block.endMarker, props.h3);
|
|
127
|
-
}
|
|
128
|
-
var _hs$ = /* @__PURE__ */ hookSlots(7);
|
|
129
|
-
var Icon = function Icon(props, __s, __extra) {
|
|
130
|
-
const __memoRegion = compilerMemoRegion(__s, _hs$ + 0);
|
|
131
|
-
let __hk = __memoRegion.hooks;
|
|
132
|
-
if (__hk === void 0) __memoRegion.hooks = __hk = hookMemoCreate(3);
|
|
133
|
-
let __hkd0;
|
|
134
|
-
const glyph = (__hkd0 = props, __hk[0] !== true || !hookMemoEqual(__hk[1], __hkd0) ? hookMemoPublish1(__hk, 0, getIcon(props.name), __hkd0) : __hk[2]);
|
|
135
|
-
if (!glyph) return null;
|
|
136
|
-
const size = props.size ?? 24;
|
|
137
|
-
return createElementFromConfig("c:3275b5a7", _frag$0, {
|
|
138
|
-
h0: glyph.markup,
|
|
139
|
-
h1: __then$0,
|
|
140
|
-
h2: __else$2,
|
|
141
|
-
h3: [
|
|
142
|
-
glyph,
|
|
143
|
-
props,
|
|
144
|
-
size
|
|
145
|
-
]
|
|
146
|
-
});
|
|
147
|
-
};
|
|
42
|
+
_b.f = bindSignalAttribute(__s, _b.f, _b.b, "min", props.minValue ?? 0, "b:7991c980", setPlainAttribute);
|
|
43
|
+
_b.g = bindSignalAttribute(__s, _b.g, _b.b, "max", props.maxValue ?? 100, "b:ff7f1a7c", setPlainAttribute);
|
|
44
|
+
_b.h = bindSignalAttribute(__s, _b.h, _b.b, "disabled", props.disabled, "b:91d4cdb7", setBooleanAttribute);
|
|
45
|
+
});
|
|
148
46
|
//#endregion
|
|
149
|
-
export {
|
|
47
|
+
export { Slider };
|
package/dist/web/ui52.js
CHANGED
|
@@ -1,42 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
_m0 = __block.parentNode;
|
|
19
|
-
_m1 = child(_root);
|
|
20
|
-
drainFrag(_root, __block.parentNode, __block.endMarker);
|
|
21
|
-
_b = bag4(__s, null, _m0, _m1, null, void 0);
|
|
22
|
-
}
|
|
23
|
-
{
|
|
24
|
-
const _v = props.children;
|
|
25
|
-
_b.c = textHoleUpdate(__s, 1, _b.a, _v, _b.c, _b.d, _b.b, true, true);
|
|
26
|
-
_b.d = _v;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
componentSlot(__s, 0, __block.parentNode, tag, {
|
|
30
|
-
"id": props.id,
|
|
31
|
-
"className": [
|
|
32
|
-
"vx-heading",
|
|
33
|
-
`vx-h${level}`,
|
|
34
|
-
props.className
|
|
35
|
-
],
|
|
36
|
-
"style": normStyle(props.style),
|
|
37
|
-
"ref": (el) => applyWebProps(el, props.web),
|
|
38
|
-
"children": markChildrenBlock(__children$1, __childrenBody)
|
|
39
|
-
}, __block.endMarker, void 0, void 0, true, void 0, "c:4056bf45");
|
|
40
|
-
};
|
|
1
|
+
//#region src/icons.ts
|
|
2
|
+
/**
|
|
3
|
+
* App-owned icon registry. `svg` is SVG path `d` data (not a full SVG
|
|
4
|
+
* markup string). `src` can carry an image or an SVG source; the leaves only
|
|
5
|
+
* infer SVG from inline markup, SVG data URIs, and `.svg` paths/URLs. Native
|
|
6
|
+
* `font` glyphs render only when the app ships and registers that font.
|
|
7
|
+
*/
|
|
8
|
+
var icons = /* @__PURE__ */ new Map();
|
|
9
|
+
function registerIcon(name, glyph) {
|
|
10
|
+
icons.set(name, glyph);
|
|
11
|
+
}
|
|
12
|
+
function registerIcons(record) {
|
|
13
|
+
for (const [name, glyph] of Object.entries(record)) icons.set(name, glyph);
|
|
14
|
+
}
|
|
15
|
+
function getIcon(name) {
|
|
16
|
+
return icons.get(name);
|
|
17
|
+
}
|
|
41
18
|
//#endregion
|
|
42
|
-
export {
|
|
19
|
+
export { getIcon, registerIcon, registerIcons };
|