@tempoxyz/ds 0.0.0-canary-20261007072756 → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/mobile/components/Button.d.ts +1 -0
- package/dist/mobile/components/Button.d.ts.map +1 -1
- package/dist/mobile/components/Button.js +2 -5
- package/dist/mobile/components/Button.js.map +1 -1
- package/dist/mobile/components/IconButton.d.ts.map +1 -1
- package/dist/mobile/components/IconButton.js +1 -5
- package/dist/mobile/components/IconButton.js.map +1 -1
- package/dist/mobile/components/TextButton.d.ts.map +1 -1
- package/dist/mobile/components/TextButton.js +1 -5
- package/dist/mobile/components/TextButton.js.map +1 -1
- package/dist/mobile/components/Toggle.d.ts.map +1 -1
- package/dist/mobile/components/Toggle.js +0 -2
- package/dist/mobile/components/Toggle.js.map +1 -1
- package/package.json +1 -5
- package/src/mobile/README.md +2 -4
- package/src/mobile/components/Button.tsx +1 -5
- package/src/mobile/components/IconButton.tsx +0 -5
- package/src/mobile/components/TextButton.tsx +0 -5
- package/src/mobile/components/Toggle.tsx +0 -2
|
@@ -21,6 +21,7 @@ export declare namespace styles {
|
|
|
21
21
|
const button: zyzz.variants.ReturnType<{
|
|
22
22
|
readonly base: {
|
|
23
23
|
readonly alignItems: "center";
|
|
24
|
+
readonly alignSelf: "flex-start";
|
|
24
25
|
readonly borderRadius: "full";
|
|
25
26
|
readonly flexDirection: "row";
|
|
26
27
|
readonly justifyContent: "center";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/Button.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,qBAAqB,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AACnF,OAAO,EAAE,SAAS,EAAc,KAAK,UAAU,EAAE,MAAM,cAAc,CAAA;AACrE,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAA;AAMjC,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,+BA2CzC;AAED,yBAAiB,MAAM,CAAC;IACtB,KAAK,IAAI,GAAG,YAAY,CAAC;QAAE,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;KAAE,CAAC,CAAA;IAE5D,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,SAAS,CAAC,EAAE,UAAU,CAAC,GAC3E,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG;QACzD,QAAQ,EAAE,MAAM,CAAA;QAChB,uFAAuF;QACvF,WAAW,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;QAC9B,iGAAiG;QACjG,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC7B,uFAAuF;QACvF,YAAY,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;KAChC,CAAA;;CACJ;AAED,yBAAiB,MAAM,CAAC;IACf,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA4ClB,CAAA;IAEM,MAAM,OAAO;;;;;;;;;;;;;;eAMnB,CAAA;IAEM,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA6BjB,CAAA;IAEM,MAAM,OAAO,gCAWnB,CAAA;CACF"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import * as Haptics from 'expo-haptics';
|
|
3
2
|
import { cloneElement } from 'react';
|
|
4
3
|
import { Pressable, Text, View } from 'react-native';
|
|
5
4
|
import { useColor } from '../internal/useColor.js';
|
|
@@ -9,10 +8,7 @@ import { Spinner } from './Spinner.js';
|
|
|
9
8
|
export function Button(props) {
|
|
10
9
|
const { appearance, children, disabled, leadingIcon, loading, scale, trailingIcon, variant, ...pressableProps } = props;
|
|
11
10
|
const color = useColor(styles.label({ appearance, scale, variant }).style);
|
|
12
|
-
return (_jsxs(Pressable, { accessibilityRole: "button", "aria-busy": loading, ...pressableProps, disabled: disabled || loading,
|
|
13
|
-
void Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
|
|
14
|
-
props.onPress?.(event);
|
|
15
|
-
}, style: (state) => [
|
|
11
|
+
return (_jsxs(Pressable, { accessibilityRole: "button", "aria-busy": loading, ...pressableProps, disabled: disabled || loading, style: (state) => [
|
|
16
12
|
styles.button({
|
|
17
13
|
appearance,
|
|
18
14
|
scale,
|
|
@@ -27,6 +23,7 @@ export var styles;
|
|
|
27
23
|
styles.button = variants({
|
|
28
24
|
base: {
|
|
29
25
|
alignItems: 'center',
|
|
26
|
+
alignSelf: 'flex-start',
|
|
30
27
|
borderRadius: 'full',
|
|
31
28
|
flexDirection: 'row',
|
|
32
29
|
justifyContent: 'center',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/mobile/components/Button.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/mobile/components/Button.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAiD,MAAM,OAAO,CAAA;AACnF,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAmB,MAAM,cAAc,CAAA;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,UAAU,MAAM,CAAC,KAAmB;IACxC,MAAM,EACJ,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,OAAO,EACP,KAAK,EACL,YAAY,EACZ,OAAO,EACP,GAAG,cAAc,EAClB,GAAG,KAAK,CAAA;IACT,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAA;IAE1E,OAAO,CACL,MAAC,SAAS,IACR,iBAAiB,EAAC,QAAQ,eACf,OAAO,KACd,cAAc,EAClB,QAAQ,EAAE,QAAQ,IAAI,OAAO,EAC7B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC;gBACZ,UAAU;gBACV,KAAK;gBACL,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;gBACpE,OAAO;aACR,CAAC,CAAC,KAAK;YACR,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK;SACrE,aAGD,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,aAC7D,WAAW,IAAI,YAAY,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,EACpD,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,YAAG,QAAQ,GAAQ,EACjF,YAAY,IAAI,YAAY,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,IACjD,EACN,OAAO,IAAI,CACV,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,YACjC,KAAC,OAAO,IAAC,2BAA2B,QAAC,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAC,IAAI,GAAG,GAC/E,CACR,IACS,CACb,CAAA;AACH,CAAC;AAiBD,MAAM,KAAW,MAAM,CAkGtB;AAlGD,WAAiB,MAAM;IACR,aAAM,GAAG,QAAQ,CAC5B;QACE,IAAI,EAAE;YACJ,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,YAAY;YACvB,YAAY,EAAE,MAAM;YACpB,aAAa,EAAE,KAAK;YACpB,cAAc,EAAE,QAAQ;YACxB,QAAQ,EAAE,cAAc;YACxB,eAAe,EAAE,GAAG;SACrB;QACD,eAAe,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE;QAC5E,QAAQ,EAAE;YACR,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YAClD,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE;gBAChD,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE;gBACjD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE;aACjD;YACD,uFAAuF;YACvF,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;YACjE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,mBAAmB,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;SAC5F;QACD,gBAAgB,EAAE;YAChB;gBACE,IAAI,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;gBAChD,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE;aAC7D;YACD;gBACE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE;gBAChE,KAAK,EAAE,EAAE,eAAe,EAAE,sBAAsB,EAAE;aACnD;YACD;gBACE,IAAI,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE;gBACrD,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE;aAC5D;YACD;gBACE,qFAAqF;gBACrF,IAAI,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE;gBACrD,KAAK,EAAE,EAAE,eAAe,EAAE,mCAAmC,EAAE;aAChE;SACF;KACF,EACD,EAAE,EAAE,EAAE,mBAAmB,EAAE,CAC5B,CAAA;IAEY,cAAO,GAAG,QAAQ,CAC7B;QACE,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE;QAC9D,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE;KAC3D,EACD,EAAE,EAAE,EAAE,2BAA2B,EAAE,CACpC,CAAA;IAEY,YAAK,GAAG,QAAQ,CAC3B;QACE,IAAI,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE;QAClC,eAAe,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE;QAC5E,QAAQ,EAAE;YACR,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;gBACjD,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;aAClD;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE;gBACtC,MAAM,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE;gBACvC,KAAK,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE;aACvC;YACD,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;SACtD;QACD,gBAAgB,EAAE;YAChB;gBACE,IAAI,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;gBAChD,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;aAChD;YACD;gBACE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE;gBAChE,KAAK,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE;aACpC;SACF;KACF,EACD,EAAE,EAAE,EAAE,yBAAyB,EAAE,CAClC,CAAA;IAEY,cAAO,GAAG,KAAK,CAC1B;QACE,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,MAAM;QACd,cAAc,EAAE,QAAQ;QACxB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,MAAM;KACZ,EACD,EAAE,EAAE,EAAE,2BAA2B,EAAE,CACpC,CAAA;AACH,CAAC,EAlGgB,MAAM,KAAN,MAAM,QAkGtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/IconButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/IconButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,qBAAqB,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AACnF,OAAO,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAA;AAKjC,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,+BAsBjD;AAED,yBAAiB,UAAU,CAAC;IAC1B,KAAY,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,SAAS,CAAC,EAAE,UAAU,CAAC,GAC3E,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG;QACzD,kBAAkB,EAAE,MAAM,CAAA;QAC1B,QAAQ,EAAE,YAAY,CAAC;YAAE,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;SAAE,CAAC,CAAA;KAC3D,CAAA;CACJ;AAED,yBAAiB,MAAM,CAAC;IACf,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA0ClB,CAAA;IAEM,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAwBhB,CAAA;CACF"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import * as Haptics from 'expo-haptics';
|
|
3
2
|
import { cloneElement } from 'react';
|
|
4
3
|
import { Pressable } from 'react-native';
|
|
5
4
|
import { useColor } from '../internal/useColor.js';
|
|
@@ -8,10 +7,7 @@ import { variants } from '../zyzz.config.js';
|
|
|
8
7
|
export function IconButton(props) {
|
|
9
8
|
const { appearance, children, disabled, scale, variant, ...pressableProps } = props;
|
|
10
9
|
const color = useColor(styles.icon({ appearance, variant }).style);
|
|
11
|
-
return (_jsx(Pressable, { accessibilityRole: "button", ...pressableProps, disabled: disabled,
|
|
12
|
-
void Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
|
|
13
|
-
props.onPress?.(event);
|
|
14
|
-
}, style: (state) => [
|
|
10
|
+
return (_jsx(Pressable, { accessibilityRole: "button", ...pressableProps, disabled: disabled, style: (state) => [
|
|
15
11
|
styles.button({
|
|
16
12
|
appearance,
|
|
17
13
|
scale,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../src/mobile/components/IconButton.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../src/mobile/components/IconButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextButton.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/TextButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TextButton.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/TextButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAA;AAClD,OAAO,EAAE,SAAS,EAAQ,MAAM,cAAc,CAAA;AAK9C,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,+BAqBjD;AAED,yBAAiB,UAAU,CAAC;IAC1B,KAAY,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,SAAS,CAAC,EAAE,UAAU,CAAC,GAAG;QAC9E,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF;AAED,yBAAiB,MAAM,CAAC;IACf,MAAM,MAAM;;;;;;;;;;;;;;;;;eASlB,CAAA;IAEM,MAAM,KAAK,0CAGjB,CAAA;CACF"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import * as Haptics from 'expo-haptics';
|
|
3
2
|
import { Pressable, Text } from 'react-native';
|
|
4
3
|
import { ChevronRight } from '../icons/index.js';
|
|
5
4
|
import { useColor } from '../internal/useColor.js';
|
|
@@ -9,10 +8,7 @@ export function TextButton(props) {
|
|
|
9
8
|
const color = useColor(styles.label().style);
|
|
10
9
|
return (_jsxs(Pressable, { accessibilityRole: "button",
|
|
11
10
|
// Figma's hidden tap area extends the 20-point label to 32 points.
|
|
12
|
-
hitSlop: { bottom: 6, top: 6 }, ...pressableProps, disabled: disabled,
|
|
13
|
-
void Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
|
|
14
|
-
props.onPress?.(event);
|
|
15
|
-
}, style: (state) => [
|
|
11
|
+
hitSlop: { bottom: 6, top: 6 }, ...pressableProps, disabled: disabled, style: (state) => [
|
|
16
12
|
styles.button({ state: disabled ? 'disabled' : state.pressed ? 'pressed' : undefined })
|
|
17
13
|
.style,
|
|
18
14
|
typeof props.style === 'function' ? props.style(state) : props.style,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextButton.js","sourceRoot":"","sources":["../../../src/mobile/components/TextButton.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"TextButton.js","sourceRoot":"","sources":["../../../src/mobile/components/TextButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,UAAU,UAAU,CAAC,KAAuB;IAChD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,cAAc,EAAE,GAAG,KAAK,CAAA;IACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IAE5C,OAAO,CACL,MAAC,SAAS,IACR,iBAAiB,EAAC,QAAQ;QAC1B,mEAAmE;QACnE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAC1B,cAAc,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;iBACpF,KAAK;YACR,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK;SACrE,aAED,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,YAAG,QAAQ,GAAQ,EACpD,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAI,IAC3C,CACb,CAAA;AACH,CAAC;AAQD,MAAM,KAAW,MAAM,CAgBtB;AAhBD,WAAiB,MAAM;IACR,aAAM,GAAG,QAAQ,CAC5B;QACE,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE;QACvF,QAAQ,EAAE;YACR,yFAAyF;YACzF,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;SAClE;KACF,EACD,EAAE,EAAE,EAAE,wBAAwB,EAAE,CACjC,CAAA;IAEY,YAAK,GAAG,KAAK,CACxB,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,EAC3D,EAAE,EAAE,EAAE,8BAA8B,EAAE,CACvC,CAAA;AACH,CAAC,EAhBgB,MAAM,KAAN,MAAM,QAgBtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/Toggle.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../../src/mobile/components/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAA;AAClD,OAAO,EAAE,SAAS,EAAQ,MAAM,cAAc,CAAA;AAC9C,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAA;AAIjC,uGAAuG;AACvG,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,+BAqBzC;AAED,yBAAiB,MAAM,CAAC;IACtB,KAAY,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,SAAS,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC,GACxF,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG;QAC1C,aAAa,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;KACvD,CAAA;CACJ;AAED,yBAAiB,MAAM,CAAC;IACf,MAAM,KAAK,gCASjB,CAAA;IAEM,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAkBlB,CAAA;CACF"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import * as Haptics from 'expo-haptics';
|
|
3
2
|
import { Pressable, View } from 'react-native';
|
|
4
3
|
import { variables as core } from '../../core/vars.js';
|
|
5
4
|
import { style, variants } from '../zyzz.config.js';
|
|
@@ -7,7 +6,6 @@ import { style, variants } from '../zyzz.config.js';
|
|
|
7
6
|
export function Toggle(props) {
|
|
8
7
|
const { disabled, onValueChange, value, ...pressableProps } = props;
|
|
9
8
|
return (_jsx(Pressable, { accessibilityRole: "switch", accessibilityState: { checked: value === true, disabled: disabled === true }, ...pressableProps, disabled: disabled, onPress: (event) => {
|
|
10
|
-
void Haptics.selectionAsync();
|
|
11
9
|
props.onPress?.(event);
|
|
12
10
|
onValueChange?.(value !== true);
|
|
13
11
|
}, style: (state) => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../src/mobile/components/Toggle.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../src/mobile/components/Toggle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,EAAE,SAAS,IAAI,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEnD,uGAAuG;AACvG,MAAM,UAAU,MAAM,CAAC,KAAmB;IACxC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,cAAc,EAAE,GAAG,KAAK,CAAA;IAEnE,OAAO,CACL,KAAC,SAAS,IACR,iBAAiB,EAAC,QAAQ,EAC1B,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,KAAK,IAAI,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,EAAE,KACxE,cAAc,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;YACtB,aAAa,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;QACjC,CAAC,EACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK;YACxC,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK;SACrE,YAED,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,GAAI,GAC3B,CACb,CAAA;AACH,CAAC;AASD,MAAM,KAAW,MAAM,CA+BtB;AA/BD,WAAiB,MAAM;IACR,YAAK,GAAG,KAAK,CACxB;QACE,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAC1C,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,aAAa;QACrB,KAAK,EAAE,cAAc;KACtB,EACD,EAAE,EAAE,EAAE,yBAAyB,EAAE,CAClC,CAAA;IAEY,aAAM,GAAG,QAAQ,CAC5B;QACE,IAAI,EAAE;YACJ,YAAY,EAAE,MAAM;YACpB,MAAM,EAAE,cAAc;YACtB,cAAc,EAAE,QAAQ;YACxB,KAAK,EAAE,cAAc;SACtB;QACD,eAAe,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;QAClD,QAAQ,EAAE;YACR,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;YAChD,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE;gBACxE,IAAI,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;aAC/E;SACF;KACF,EACD,EAAE,EAAE,EAAE,mBAAmB,EAAE,CAC5B,CAAA;AACH,CAAC,EA/BgB,MAAM,KAAN,MAAM,QA+BtB"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tempoxyz/ds",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.1",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"files": [
|
|
7
7
|
"DESIGN.md",
|
|
@@ -2118,7 +2118,6 @@
|
|
|
2118
2118
|
}
|
|
2119
2119
|
},
|
|
2120
2120
|
"peerDependencies": {
|
|
2121
|
-
"expo-haptics": ">=57.0.0",
|
|
2122
2121
|
"react": "^19.0.0",
|
|
2123
2122
|
"react-dom": "^19.0.0",
|
|
2124
2123
|
"react-native": ">=0.86.0 <1.0.0",
|
|
@@ -2127,9 +2126,6 @@
|
|
|
2127
2126
|
"zyzz": "^0.0.24"
|
|
2128
2127
|
},
|
|
2129
2128
|
"peerDependenciesMeta": {
|
|
2130
|
-
"expo-haptics": {
|
|
2131
|
-
"optional": true
|
|
2132
|
-
},
|
|
2133
2129
|
"react-dom": {
|
|
2134
2130
|
"optional": true
|
|
2135
2131
|
},
|
package/src/mobile/README.md
CHANGED
|
@@ -4,10 +4,10 @@ Use `@tempoxyz/ds/mobile` for React Native apps that bundle with Metro, such as
|
|
|
4
4
|
|
|
5
5
|
## Setup
|
|
6
6
|
|
|
7
|
-
Install the library with its React Native peers, then wrap your Metro configuration with Zyzz. Metro compiles library and app styles during bundling, so mobile apps import no stylesheet. Components animate with Reanimated, whose Babel plugin Expo configures automatically
|
|
7
|
+
Install the library with its React Native peers, then wrap your Metro configuration with Zyzz. Metro compiles library and app styles during bundling, so mobile apps import no stylesheet. Components animate with Reanimated, whose Babel plugin Expo configures automatically.
|
|
8
8
|
|
|
9
9
|
```sh
|
|
10
|
-
npx expo install
|
|
10
|
+
npx expo install react-native-reanimated react-native-svg react-native-worklets
|
|
11
11
|
npm i @tempoxyz/ds zyzz
|
|
12
12
|
```
|
|
13
13
|
|
|
@@ -96,9 +96,7 @@ Components also accept the props and `ref` of the React Native element they rend
|
|
|
96
96
|
## Behavior
|
|
97
97
|
|
|
98
98
|
- Figma defines no pressed or disabled Button, IconButton, or TextButton. Pressed controls render at 65% opacity, and disabled controls render at 50%.
|
|
99
|
-
- Button follows its parent's alignment, so it fills a column and centers in a centered container. Set `alignSelf: 'flex-start'` to fit the label instead.
|
|
100
99
|
- Button's `leadingIcon` and `trailingIcon` match Figma's icon toggles and take the label color. `loading` shows a spinner over the hidden content, keeps the button's size, and blocks presses.
|
|
101
|
-
- Button, IconButton, and TextButton play a light impact haptic when pressed. Toggle plays a selection haptic when its value changes.
|
|
102
100
|
- Toggle draws Figma's 44 by 28 point track with `Pressable` and the `switch` role, since the native switch has a fixed size.
|
|
103
101
|
- CodeInput routes typing and one-time-code autofill through one hidden native input. The focused cell is the one that receives the next digit, and dismissing the keyboard ends entry.
|
|
104
102
|
- Toast renders a single message. Your app positions, queues, and dismisses notifications.
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as Haptics from 'expo-haptics'
|
|
2
1
|
import { cloneElement, type ComponentPropsWithRef, type ReactElement } from 'react'
|
|
3
2
|
import { Pressable, Text, View, type ColorValue } from 'react-native'
|
|
4
3
|
import type * as zyzz from 'zyzz'
|
|
@@ -27,10 +26,6 @@ export function Button(props: Button.Props) {
|
|
|
27
26
|
aria-busy={loading}
|
|
28
27
|
{...pressableProps}
|
|
29
28
|
disabled={disabled || loading}
|
|
30
|
-
onPress={(event) => {
|
|
31
|
-
void Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light)
|
|
32
|
-
props.onPress?.(event)
|
|
33
|
-
}}
|
|
34
29
|
style={(state) => [
|
|
35
30
|
styles.button({
|
|
36
31
|
appearance,
|
|
@@ -76,6 +71,7 @@ export namespace styles {
|
|
|
76
71
|
{
|
|
77
72
|
base: {
|
|
78
73
|
alignItems: 'center',
|
|
74
|
+
alignSelf: 'flex-start',
|
|
79
75
|
borderRadius: 'full',
|
|
80
76
|
flexDirection: 'row',
|
|
81
77
|
justifyContent: 'center',
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as Haptics from 'expo-haptics'
|
|
2
1
|
import { cloneElement, type ComponentPropsWithRef, type ReactElement } from 'react'
|
|
3
2
|
import { Pressable, type ColorValue } from 'react-native'
|
|
4
3
|
import type * as zyzz from 'zyzz'
|
|
@@ -15,10 +14,6 @@ export function IconButton(props: IconButton.Props) {
|
|
|
15
14
|
accessibilityRole="button"
|
|
16
15
|
{...pressableProps}
|
|
17
16
|
disabled={disabled}
|
|
18
|
-
onPress={(event) => {
|
|
19
|
-
void Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light)
|
|
20
|
-
props.onPress?.(event)
|
|
21
|
-
}}
|
|
22
17
|
style={(state) => [
|
|
23
18
|
styles.button({
|
|
24
19
|
appearance,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as Haptics from 'expo-haptics'
|
|
2
1
|
import type { ComponentPropsWithRef } from 'react'
|
|
3
2
|
import { Pressable, Text } from 'react-native'
|
|
4
3
|
import { ChevronRight } from '../icons/index.js'
|
|
@@ -16,10 +15,6 @@ export function TextButton(props: TextButton.Props) {
|
|
|
16
15
|
hitSlop={{ bottom: 6, top: 6 }}
|
|
17
16
|
{...pressableProps}
|
|
18
17
|
disabled={disabled}
|
|
19
|
-
onPress={(event) => {
|
|
20
|
-
void Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light)
|
|
21
|
-
props.onPress?.(event)
|
|
22
|
-
}}
|
|
23
18
|
style={(state) => [
|
|
24
19
|
styles.button({ state: disabled ? 'disabled' : state.pressed ? 'pressed' : undefined })
|
|
25
20
|
.style,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as Haptics from 'expo-haptics'
|
|
2
1
|
import type { ComponentPropsWithRef } from 'react'
|
|
3
2
|
import { Pressable, View } from 'react-native'
|
|
4
3
|
import type * as zyzz from 'zyzz'
|
|
@@ -16,7 +15,6 @@ export function Toggle(props: Toggle.Props) {
|
|
|
16
15
|
{...pressableProps}
|
|
17
16
|
disabled={disabled}
|
|
18
17
|
onPress={(event) => {
|
|
19
|
-
void Haptics.selectionAsync()
|
|
20
18
|
props.onPress?.(event)
|
|
21
19
|
onValueChange?.(value !== true)
|
|
22
20
|
}}
|