@multiplatform.one/forms 7.81.2 → 7.82.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/cjs/Button/IconButtonGroup.cjs +13 -9
- package/dist/cjs/Button/IconButtonGroup.native.js +13 -9
- package/dist/cjs/Button/IconButtonGroup.native.js.map +1 -1
- package/dist/cjs/Button/iconButtonGroupContext.cjs +6 -0
- package/dist/cjs/Button/iconButtonGroupContext.native.js +6 -0
- package/dist/cjs/Button/iconButtonGroupContext.native.js.map +1 -1
- package/dist/cjs/Button/index.cjs +38 -26
- package/dist/cjs/Button/index.native.js +38 -26
- package/dist/cjs/Button/index.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/RegularPanel.cjs +2 -2
- package/dist/cjs/FloatingPanel/RegularPanel.native.js +2 -2
- package/dist/cjs/FloatingPanel/RegularPanel.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/index.native.js +11 -10
- package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
- package/dist/cjs/InputParts/index.cjs +12 -6
- package/dist/cjs/InputParts/index.native.js +12 -6
- package/dist/cjs/InputParts/index.native.js.map +1 -1
- package/dist/cjs/index.cjs +1 -0
- package/dist/cjs/index.native.js +1 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/Button/IconButtonGroup.mjs +14 -10
- package/dist/esm/Button/IconButtonGroup.mjs.map +1 -1
- package/dist/esm/Button/IconButtonGroup.native.js +14 -10
- package/dist/esm/Button/IconButtonGroup.native.js.map +1 -1
- package/dist/esm/Button/iconButtonGroupContext.mjs +5 -1
- package/dist/esm/Button/iconButtonGroupContext.mjs.map +1 -1
- package/dist/esm/Button/iconButtonGroupContext.native.js +5 -1
- package/dist/esm/Button/iconButtonGroupContext.native.js.map +1 -1
- package/dist/esm/Button/index.mjs +39 -28
- package/dist/esm/Button/index.mjs.map +1 -1
- package/dist/esm/Button/index.native.js +39 -28
- package/dist/esm/Button/index.native.js.map +1 -1
- package/dist/esm/FloatingPanel/RegularPanel.mjs +2 -2
- package/dist/esm/FloatingPanel/RegularPanel.mjs.map +1 -1
- package/dist/esm/FloatingPanel/RegularPanel.native.js +2 -2
- package/dist/esm/FloatingPanel/RegularPanel.native.js.map +1 -1
- package/dist/esm/FloatingPanel/index.native.js +11 -10
- package/dist/esm/FloatingPanel/index.native.js.map +1 -1
- package/dist/esm/InputParts/index.mjs +13 -7
- package/dist/esm/InputParts/index.mjs.map +1 -1
- package/dist/esm/InputParts/index.native.js +13 -7
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/index.mjs +2 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/jsx/Button/IconButtonGroup.mjs +14 -10
- package/dist/jsx/Button/IconButtonGroup.mjs.map +1 -1
- package/dist/jsx/Button/IconButtonGroup.native.js +13 -9
- package/dist/jsx/Button/IconButtonGroup.native.js.map +1 -1
- package/dist/jsx/Button/iconButtonGroupContext.mjs +5 -1
- package/dist/jsx/Button/iconButtonGroupContext.mjs.map +1 -1
- package/dist/jsx/Button/iconButtonGroupContext.native.js +6 -0
- package/dist/jsx/Button/iconButtonGroupContext.native.js.map +1 -1
- package/dist/jsx/Button/index.mjs +39 -28
- package/dist/jsx/Button/index.mjs.map +1 -1
- package/dist/jsx/Button/index.native.js +38 -26
- package/dist/jsx/Button/index.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/RegularPanel.mjs +2 -2
- package/dist/jsx/FloatingPanel/RegularPanel.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/RegularPanel.native.js +2 -2
- package/dist/jsx/FloatingPanel/RegularPanel.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/index.native.js +11 -10
- package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
- package/dist/jsx/InputParts/index.mjs +13 -7
- package/dist/jsx/InputParts/index.mjs.map +1 -1
- package/dist/jsx/InputParts/index.native.js +12 -6
- package/dist/jsx/InputParts/index.native.js.map +1 -1
- package/dist/jsx/index.js +2 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +2 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +1 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/package.json +8 -8
- package/src/Button/Button.fieldGlyph.spec.tsx +186 -0
- package/src/Button/Button.stories.tsx +97 -82
- package/src/Button/IconButtonGroup.spec.tsx +48 -1
- package/src/Button/IconButtonGroup.tsx +26 -12
- package/src/Button/iconButtonGroupContext.ts +12 -0
- package/src/Button/index.tsx +73 -35
- package/src/FloatingPanel/FloatingPanel.menuFace.native.spec.tsx +2 -2
- package/src/FloatingPanel/FloatingPanel.openOnMount.native.spec.tsx +198 -0
- package/src/FloatingPanel/RegularPanel.tsx +8 -6
- package/src/FloatingPanel/index.native.tsx +29 -18
- package/src/InputParts/index.tsx +40 -27
- package/src/index.ts +1 -0
- package/types/Button/IconButtonGroup.d.ts.map +1 -1
- package/types/Button/iconButtonGroupContext.d.ts +8 -0
- package/types/Button/iconButtonGroupContext.d.ts.map +1 -1
- package/types/Button/index.d.ts +1 -0
- package/types/Button/index.d.ts.map +1 -1
- package/types/FloatingPanel/RegularPanel.d.ts.map +1 -1
- package/types/FloatingPanel/index.native.d.ts +5 -0
- package/types/FloatingPanel/index.native.d.ts.map +1 -1
- package/types/InputParts/index.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
|
@@ -38,7 +38,8 @@ function IconButtonGroup({
|
|
|
38
38
|
children,
|
|
39
39
|
...rest
|
|
40
40
|
}) {
|
|
41
|
-
const
|
|
41
|
+
const field = (0, import_theme.useFieldSurface)();
|
|
42
|
+
const bar = (0, import_theme.useBarSurface)() && !field;
|
|
42
43
|
const dark = (0, import_theme.isDarkThemeName)((0, import_tamagui.useThemeName)());
|
|
43
44
|
const [capsuleHeight, setCapsuleHeight] = (0, import_react.useState)(0);
|
|
44
45
|
const [members, setMembers] = (0, import_react.useState)(0);
|
|
@@ -63,7 +64,7 @@ function IconButtonGroup({
|
|
|
63
64
|
} : null));
|
|
64
65
|
}
|
|
65
66
|
}), []);
|
|
66
|
-
if (plate === "media") {
|
|
67
|
+
if (plate === "media" && !field) {
|
|
67
68
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_iconButtonGroupContext.IconButtonGroupContext.Provider, {
|
|
68
69
|
value: "media",
|
|
69
70
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Theme, {
|
|
@@ -83,23 +84,27 @@ function IconButtonGroup({
|
|
|
83
84
|
});
|
|
84
85
|
}
|
|
85
86
|
const GlassView = bar ? (0, import_glass.loadGlassView)() : null;
|
|
87
|
+
const lone = members === 1 && import_react.Children.toArray(children).length === 1;
|
|
86
88
|
if (GlassView && import_tamagui.isWeb && (0, import_webGlass.isAppleTouchWeb)()) {
|
|
89
|
+
const capsuled = members > 0 && !lone;
|
|
87
90
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_iconButtonGroupContext.IconButtonGroupRegistry.Provider, {
|
|
88
91
|
value: register,
|
|
89
92
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_iconButtonGroupContext.IconButtonGroupContext.Provider, {
|
|
90
|
-
value: "glass",
|
|
93
|
+
value: lone ? null : "glass",
|
|
91
94
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
|
|
92
95
|
alignItems: "center",
|
|
93
|
-
"data-mp-icon-button-group":
|
|
96
|
+
"data-mp-icon-button-group": capsuled ? "glass" : "bar",
|
|
94
97
|
...rest,
|
|
95
98
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
96
99
|
alignItems: "center",
|
|
97
100
|
position: "relative",
|
|
98
101
|
zIndex: 0,
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
102
|
+
...(lone ? null : {
|
|
103
|
+
paddingHorizontal: "$2",
|
|
104
|
+
gap: "$1",
|
|
105
|
+
"data-mp-glass-capsule": ""
|
|
106
|
+
}),
|
|
107
|
+
children: [capsuled ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GlassView, {
|
|
103
108
|
style: {
|
|
104
109
|
position: "absolute",
|
|
105
110
|
top: 0,
|
|
@@ -115,7 +120,6 @@ function IconButtonGroup({
|
|
|
115
120
|
});
|
|
116
121
|
}
|
|
117
122
|
const capsule = GlassView != null && members > 0;
|
|
118
|
-
const lone = members === 1 && import_react.Children.toArray(children).length === 1;
|
|
119
123
|
const row = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
|
|
120
124
|
alignItems: "center",
|
|
121
125
|
"data-mp-icon-button-group": capsule ? "glass" : bar ? "bar" : "row",
|
|
@@ -41,7 +41,8 @@ function IconButtonGroup(param) {
|
|
|
41
41
|
children,
|
|
42
42
|
...rest
|
|
43
43
|
} = param;
|
|
44
|
-
var
|
|
44
|
+
var field = (0, import_theme.useFieldSurface)();
|
|
45
|
+
var bar = (0, import_theme.useBarSurface)() && !field;
|
|
45
46
|
var dark = (0, import_theme.isDarkThemeName)((0, import_tamagui.useThemeName)());
|
|
46
47
|
var [capsuleHeight, setCapsuleHeight] = (0, import_react.useState)(0);
|
|
47
48
|
var [members, setMembers] = (0, import_react.useState)(0);
|
|
@@ -76,7 +77,7 @@ function IconButtonGroup(param) {
|
|
|
76
77
|
}
|
|
77
78
|
};
|
|
78
79
|
}, []);
|
|
79
|
-
if (plate === "media") {
|
|
80
|
+
if (plate === "media" && !field) {
|
|
80
81
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_iconButtonGroupContext.IconButtonGroupContext.Provider, {
|
|
81
82
|
value: "media",
|
|
82
83
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Theme, {
|
|
@@ -96,23 +97,27 @@ function IconButtonGroup(param) {
|
|
|
96
97
|
});
|
|
97
98
|
}
|
|
98
99
|
var GlassView = bar ? (0, import_glass.loadGlassView)() : null;
|
|
100
|
+
var lone = members === 1 && import_react.Children.toArray(children).length === 1;
|
|
99
101
|
if (GlassView && import_tamagui.isWeb && (0, import_webGlass.isAppleTouchWeb)()) {
|
|
102
|
+
var capsuled = members > 0 && !lone;
|
|
100
103
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_iconButtonGroupContext.IconButtonGroupRegistry.Provider, {
|
|
101
104
|
value: register,
|
|
102
105
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_iconButtonGroupContext.IconButtonGroupContext.Provider, {
|
|
103
|
-
value: "glass",
|
|
106
|
+
value: lone ? null : "glass",
|
|
104
107
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
|
|
105
108
|
alignItems: "center",
|
|
106
|
-
"data-mp-icon-button-group":
|
|
109
|
+
"data-mp-icon-button-group": capsuled ? "glass" : "bar",
|
|
107
110
|
...rest,
|
|
108
111
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
109
112
|
alignItems: "center",
|
|
110
113
|
position: "relative",
|
|
111
114
|
zIndex: 0,
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
115
|
+
...(lone ? null : {
|
|
116
|
+
paddingHorizontal: "$2",
|
|
117
|
+
gap: "$1",
|
|
118
|
+
"data-mp-glass-capsule": ""
|
|
119
|
+
}),
|
|
120
|
+
children: [capsuled ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GlassView, {
|
|
116
121
|
style: {
|
|
117
122
|
position: "absolute",
|
|
118
123
|
top: 0,
|
|
@@ -128,7 +133,6 @@ function IconButtonGroup(param) {
|
|
|
128
133
|
});
|
|
129
134
|
}
|
|
130
135
|
var capsule = GlassView != null && members > 0;
|
|
131
|
-
var lone = members === 1 && import_react.Children.toArray(children).length === 1;
|
|
132
136
|
var row = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
|
|
133
137
|
alignItems: "center",
|
|
134
138
|
"data-mp-icon-button-group": capsule ? "glass" : bar ? "bar" : "row",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","IconButtonGroup_exports","__export","IconButtonGroup","module","exports","import_jsx_runtime","require","import_theme","import_react","import_tamagui","import_glass","import_webGlass","import_iconButtonGroupContext","SYSTEM_GLASS_SPACING","param","plate","children","rest","bar","useBarSurface","dark","isDarkThemeName","useThemeName","capsuleHeight","setCapsuleHeight","useState","members","setMembers","register","useCallback","count","capsuleRef","useRef","surface","useMemo","measure","callback","node","current","measureInWindow","x","y","width","height","radius","jsx","IconButtonGroupContext","Provider","Theme","name","XStack","alignItems","alignSelf","borderRadius","backgroundColor","overflow","radiusClassProps","GlassView","loadGlassView","isWeb","isAppleTouchWeb","IconButtonGroupRegistry","jsxs","position","zIndex","paddingHorizontal","gap","style","top","right","bottom","left","capsule","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","IconButtonGroup_exports","__export","IconButtonGroup","module","exports","import_jsx_runtime","require","import_theme","import_react","import_tamagui","import_glass","import_webGlass","import_iconButtonGroupContext","SYSTEM_GLASS_SPACING","param","plate","children","rest","field","useFieldSurface","bar","useBarSurface","dark","isDarkThemeName","useThemeName","capsuleHeight","setCapsuleHeight","useState","members","setMembers","register","useCallback","count","capsuleRef","useRef","surface","useMemo","measure","callback","node","current","measureInWindow","x","y","width","height","radius","jsx","IconButtonGroupContext","Provider","Theme","name","XStack","alignItems","alignSelf","borderRadius","backgroundColor","overflow","radiusClassProps","GlassView","loadGlassView","lone","Children","toArray","length","isWeb","isAppleTouchWeb","capsuled","IconButtonGroupRegistry","jsxs","position","zIndex","paddingHorizontal","gap","style","top","right","bottom","left","capsule","row","glass","glassEffectStyle","isInteractive","colorScheme","flexShrink","minWidth"],"sources":["../../../src/Button/IconButtonGroup.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -22,9 +22,11 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
22
22
|
}), mod);
|
|
23
23
|
var iconButtonGroupContext_exports = {};
|
|
24
24
|
__export(iconButtonGroupContext_exports, {
|
|
25
|
+
GlyphPlateContext: () => GlyphPlateContext,
|
|
25
26
|
IconButtonGroupContext: () => IconButtonGroupContext,
|
|
26
27
|
IconButtonGroupRegistry: () => IconButtonGroupRegistry,
|
|
27
28
|
IconButtonGroupSurfaceContext: () => IconButtonGroupSurfaceContext,
|
|
29
|
+
useGlyphOnPlate: () => useGlyphOnPlate,
|
|
28
30
|
useIconButtonGroupGround: () => useIconButtonGroupGround,
|
|
29
31
|
useIconButtonGroupMember: () => useIconButtonGroupMember,
|
|
30
32
|
useIconButtonGroupSurface: () => useIconButtonGroupSurface
|
|
@@ -36,6 +38,10 @@ const IconButtonGroupContext = (0, import_react.createContext)(null);
|
|
|
36
38
|
function useIconButtonGroupGround() {
|
|
37
39
|
return (0, import_react.useContext)(IconButtonGroupContext);
|
|
38
40
|
}
|
|
41
|
+
const GlyphPlateContext = (0, import_react.createContext)(false);
|
|
42
|
+
function useGlyphOnPlate() {
|
|
43
|
+
return (0, import_react.useContext)(GlyphPlateContext);
|
|
44
|
+
}
|
|
39
45
|
const IconButtonGroupRegistry = (0, import_react.createContext)(null);
|
|
40
46
|
function useIconButtonGroupMember(iconOnly) {
|
|
41
47
|
const register = (0, import_react.useContext)(IconButtonGroupRegistry);
|
|
@@ -24,9 +24,11 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
24
24
|
}), mod);
|
|
25
25
|
var iconButtonGroupContext_exports = {};
|
|
26
26
|
__export(iconButtonGroupContext_exports, {
|
|
27
|
+
GlyphPlateContext: () => GlyphPlateContext,
|
|
27
28
|
IconButtonGroupContext: () => IconButtonGroupContext,
|
|
28
29
|
IconButtonGroupRegistry: () => IconButtonGroupRegistry,
|
|
29
30
|
IconButtonGroupSurfaceContext: () => IconButtonGroupSurfaceContext,
|
|
31
|
+
useGlyphOnPlate: () => useGlyphOnPlate,
|
|
30
32
|
useIconButtonGroupGround: () => useIconButtonGroupGround,
|
|
31
33
|
useIconButtonGroupMember: () => useIconButtonGroupMember,
|
|
32
34
|
useIconButtonGroupSurface: () => useIconButtonGroupSurface
|
|
@@ -38,6 +40,10 @@ var IconButtonGroupContext = (0, import_react.createContext)(null);
|
|
|
38
40
|
function useIconButtonGroupGround() {
|
|
39
41
|
return (0, import_react.useContext)(IconButtonGroupContext);
|
|
40
42
|
}
|
|
43
|
+
var GlyphPlateContext = (0, import_react.createContext)(false);
|
|
44
|
+
function useGlyphOnPlate() {
|
|
45
|
+
return (0, import_react.useContext)(GlyphPlateContext);
|
|
46
|
+
}
|
|
41
47
|
var IconButtonGroupRegistry = (0, import_react.createContext)(null);
|
|
42
48
|
function useIconButtonGroupMember(iconOnly) {
|
|
43
49
|
var register = (0, import_react.useContext)(IconButtonGroupRegistry);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","iconButtonGroupContext_exports","__export","IconButtonGroupContext","IconButtonGroupRegistry","IconButtonGroupSurfaceContext","useIconButtonGroupGround","useIconButtonGroupMember","useIconButtonGroupSurface","module","exports","import_react","require","useIsomorphicLayoutEffect","window","useEffect","useLayoutEffect","createContext","useContext","iconOnly","register"],"sources":["../../../src/Button/iconButtonGroupContext.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,8BAAA;AAAAC,QAAA,CAAAD,8BAAA;EAAAE,sBAAA,EAAAA,CAAA,KAAAA,sBAAA;EAAAC,uBAAA,EAAAA,CAAA,KAAAA,uBAAA;EAAAC,6BAAA,EAAAA,CAAA,KAAAA,6BAAA;EAAAC,wBAAA,EAAAA,CAAA,KAAAA,wBAAA;EAAAC,wBAAA,EAAAA,CAAA,KAAAA,wBAAA;EAAAC,yBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","iconButtonGroupContext_exports","__export","GlyphPlateContext","IconButtonGroupContext","IconButtonGroupRegistry","IconButtonGroupSurfaceContext","useGlyphOnPlate","useIconButtonGroupGround","useIconButtonGroupMember","useIconButtonGroupSurface","module","exports","import_react","require","useIsomorphicLayoutEffect","window","useEffect","useLayoutEffect","createContext","useContext","iconOnly","register"],"sources":["../../../src/Button/iconButtonGroupContext.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,8BAAA;AAAAC,QAAA,CAAAD,8BAAA;EAAAE,iBAAA,EAAAA,CAAA,KAAAA,iBAAA;EAAAC,sBAAA,EAAAA,CAAA,KAAAA,sBAAA;EAAAC,uBAAA,EAAAA,CAAA,KAAAA,uBAAA;EAAAC,6BAAA,EAAAA,CAAA,KAAAA,6BAAA;EAAAC,eAAA,EAAAA,CAAA,KAAAA,eAAA;EAAAC,wBAAA,EAAAA,CAAA,KAAAA,wBAAA;EAAAC,wBAAA,EAAAA,CAAA,KAAAA,wBAAA;EAAAC,yBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAhB,YAAsE,CAAAK,8BAAA;AAEtE,IAAAY,YAAM,GAAAC,OAAA,QAA4B;AAS3B,IAAAC,yBAAM,UAAyBC,MAAA,mBAAqCH,YAAI,CAAAI,SAAA,GAAAJ,YAAA,CAAAK,eAAA;AAExE,IAAAd,sBAAS,OAAAS,YAAkD,CAAAM,aAAA;AAChE,SAAAX,wBAAOA,CAAA;EACT,WAAAK,YAAA,CAAAO,UAAA,EAAAhB,sBAAA;AAQO;AAEA,IAAAD,iBAAS,OAA2BU,YAAA,CAAAM,aAAA;AACzC,SAAAZ,eAAOA,CAAA;EACT,WAAAM,YAAA,CAAAO,UAAA,EAAAjB,iBAAA;AAOO;AAEA,IAAAE,uBAAS,OAAyBQ,YAAyB,CAAAM,aAAA;AAChE,SAAMV,wBAAWA,CAAAY,QAAA;EACjB,IAAAC,QAAA,OAAAT,YAAA,CAAAO,UAAA,EAAAf,uBAAA;EAAAU,yBACqB,aAAW;IAC9B,OAACM,QAAU,IAAQC,QAAA,GAAAA,QAAA;EACrB,IACFD,QAAA,EAqBOC,QAAM,CAEN;AACL;AACF,IAAAhB,6BAAA,OAAAO,YAAA,CAAAM,aAAA","ignoreList":[]}
|
|
@@ -34,7 +34,8 @@ __export(Button_exports, {
|
|
|
34
34
|
buttonSizeRecipes: () => buttonSizeRecipes,
|
|
35
35
|
iconButtonGlyphPx: () => iconButtonGlyphPx,
|
|
36
36
|
labelLinePx: () => labelLinePx,
|
|
37
|
-
resolveButtonSizeRecipe: () => resolveButtonSizeRecipe
|
|
37
|
+
resolveButtonSizeRecipe: () => resolveButtonSizeRecipe,
|
|
38
|
+
useGlyphOnPlate: () => import_iconButtonGroupContext2.useGlyphOnPlate
|
|
38
39
|
});
|
|
39
40
|
module.exports = __toCommonJS(Button_exports);
|
|
40
41
|
var import_theme = require("@multiplatform.one/theme");
|
|
@@ -59,6 +60,7 @@ var import_glass = require("./glass.cjs");
|
|
|
59
60
|
var import_circleGlyph = require("./circleGlyph.cjs");
|
|
60
61
|
var import_iconButtonGroupContext = require("./iconButtonGroupContext.cjs");
|
|
61
62
|
var import_IconButtonGroup = require("./IconButtonGroup.cjs");
|
|
63
|
+
var import_iconButtonGroupContext2 = require("./iconButtonGroupContext.cjs");
|
|
62
64
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
63
65
|
const buttonSizeRecipes = import_theme3.recipeFamilies.control.recipes;
|
|
64
66
|
function resolveButtonSizeRecipe(size, family = "control", touch = false) {
|
|
@@ -385,18 +387,24 @@ function Button({
|
|
|
385
387
|
const grouped = (0, import_groupContext.useControlGrouped)();
|
|
386
388
|
const labelled = verb != null || children != null && children !== false && children !== "";
|
|
387
389
|
const iconOnly = !labelled && Boolean(icon || iconAfter);
|
|
388
|
-
const
|
|
390
|
+
const fieldSurface = (0, import_theme3.useFieldSurface)();
|
|
391
|
+
const fieldGlyph = iconOnly && fieldSurface;
|
|
392
|
+
if (fieldGlyph) {
|
|
393
|
+
outlined = false;
|
|
394
|
+
if (chromeless === false) chromeless = void 0;
|
|
395
|
+
}
|
|
396
|
+
const circular = circularProp && !fieldGlyph && !(iconOnly && chromeless === true && plate == null);
|
|
389
397
|
const groupGround = (0, import_iconButtonGroupContext.useIconButtonGroupGround)();
|
|
390
398
|
(0, import_iconButtonGroupContext.useIconButtonGroupMember)(iconOnly);
|
|
391
|
-
const mediaPlate = iconOnly && plate === "media" && groupGround !== "media";
|
|
392
|
-
const confirmPlate = iconOnly && primaryPlate;
|
|
399
|
+
const mediaPlate = iconOnly && plate === "media" && groupGround !== "media" && !fieldGlyph;
|
|
400
|
+
const confirmPlate = iconOnly && primaryPlate && !fieldGlyph;
|
|
393
401
|
const iconButton = iconOnly && !mediaPlate && !confirmPlate && !grouped && chromeless !== false && outlined !== true && !circular;
|
|
394
402
|
if (import_tamagui.isWeb) (0, import_theme3.ensureKeyboardModalityTracking)();
|
|
395
403
|
const barSurface = (0, import_theme3.useBarSurface)();
|
|
396
|
-
const neutralGlyph = iconButton && !(theme ?? intent) && !barSurface && accentInk == null && inline !== true;
|
|
404
|
+
const neutralGlyph = iconButton && !(theme ?? intent) && !barSurface && !fieldGlyph && accentInk == null && inline !== true;
|
|
397
405
|
if (iconButton) {
|
|
398
406
|
chromeless = true;
|
|
399
|
-
accentInk = accentInk ?? (!(theme ?? intent) && (barSurface || inline === true));
|
|
407
|
+
accentInk = accentInk ?? (!(theme ?? intent) && (barSurface || fieldGlyph || inline === true));
|
|
400
408
|
}
|
|
401
409
|
const resolvedGlyphWeight = glyphWeight ?? (iconOnly ? "bold" : "regular");
|
|
402
410
|
const elevatedGround = (0, import_theme3.useElevatedSurface)();
|
|
@@ -499,14 +507,14 @@ function Button({
|
|
|
499
507
|
const resolvedChildren = children ?? labelFromParts;
|
|
500
508
|
const ariaPressedProp = props["aria-pressed"];
|
|
501
509
|
const isSelected = selected ?? (ariaPressedProp === true || ariaPressedProp === "true" ? true : void 0);
|
|
502
|
-
const selectedFill = Boolean(isSelected) && !unavailable && !mediaPlate;
|
|
510
|
+
const selectedFill = Boolean(isSelected) && !unavailable && !mediaPlate && !fieldGlyph;
|
|
503
511
|
const barInk = accentInk && chromeless && !selectedFill && !unavailable && !confirmPlate ? labelled ? glyphTint.label : glyphTint.glyph : null;
|
|
504
512
|
const inlineGlyph = iconButton && inline === true && !nested;
|
|
505
513
|
const barGlyph = (iconButton || mediaPlate || confirmPlate) && !nested || labelled && chromeless && accentInk === true && edge === "start";
|
|
506
514
|
const labelLine = labelLinePx(knobProps.body.fontFamily);
|
|
507
515
|
const glyphFloor = iconButtonGlyphPx(labelLine);
|
|
508
516
|
const glassGroup = groupGround === "glass";
|
|
509
|
-
const GlassView = iconButton && !inlineGlyph && !nested && accentInk && barSurface && !selectedFill && !glassGroup ? (0, import_glass.loadGlassView)() : null;
|
|
517
|
+
const GlassView = iconButton && !inlineGlyph && !nested && accentInk && barSurface && !fieldGlyph && !selectedFill && !glassGroup ? (0, import_glass.loadGlassView)() : null;
|
|
510
518
|
const framedCircle = iconOnly && Boolean(circular) && !nested && !mediaPlate && !confirmPlate;
|
|
511
519
|
const accentFillHex = confirmPlate ? accentSolidFill(hostThemeName) : null;
|
|
512
520
|
const confirmInk = accentFillHex && (0, import_theme3.contrastRatio)((0, import_theme3.relativeLuminance)("#ffffff"), (0, import_theme3.relativeLuminance)(accentFillHex)) >= import_theme3.GLYPH_CONTRAST_FLOOR ? "#ffffff" : "$color";
|
|
@@ -641,9 +649,10 @@ function Button({
|
|
|
641
649
|
} : mediaPlate ? {
|
|
642
650
|
backgroundColor: "$shadow5"
|
|
643
651
|
} : void 0;
|
|
652
|
+
const glyphPlated = Boolean(GlassView || groupGround || mediaPlate || confirmPlate || framedCircle);
|
|
644
653
|
const glassInset = typeof resolvedBorderWidth === "number" ? -resolvedBorderWidth : 0;
|
|
645
|
-
const glyphEdgePull =
|
|
646
|
-
const buttonElement = /* @__PURE__ */(0, import_jsx_runtime.
|
|
654
|
+
const glyphEdgePull = glyphPlated ? 0 : iconButton ? -Math.max(0, (visualPx - iconSize) / 2) : edgePull;
|
|
655
|
+
const buttonElement = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ButtonFrame, {
|
|
647
656
|
disabled: explainedDisable ? false : isDisabled || false,
|
|
648
657
|
"aria-busy": loading || void 0,
|
|
649
658
|
opacity: 1,
|
|
@@ -844,22 +853,25 @@ function Button({
|
|
|
844
853
|
"aria-pressed": true,
|
|
845
854
|
"data-mp-selected": "true"
|
|
846
855
|
} : void 0),
|
|
847
|
-
children:
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
856
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_iconButtonGroupContext.GlyphPlateContext.Provider, {
|
|
857
|
+
value: glyphPlated,
|
|
858
|
+
children: [GlassView ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GlassView, {
|
|
859
|
+
glassEffectStyle: "regular",
|
|
860
|
+
isInteractive: !unavailable,
|
|
861
|
+
colorScheme: darkScheme ? "dark" : "light",
|
|
862
|
+
style: {
|
|
863
|
+
position: "absolute",
|
|
864
|
+
top: glassInset,
|
|
865
|
+
right: glassInset,
|
|
866
|
+
bottom: glassInset,
|
|
867
|
+
left: glassInset,
|
|
868
|
+
borderRadius: visualPx / 2,
|
|
869
|
+
alignItems: "center",
|
|
870
|
+
justifyContent: "center"
|
|
871
|
+
},
|
|
872
|
+
children: iconElement
|
|
873
|
+
}) : iconElement, labelContent, iconAfterElement]
|
|
874
|
+
})
|
|
863
875
|
});
|
|
864
876
|
const intentButton = activeThemeName ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Theme, {
|
|
865
877
|
name: activeThemeName,
|
|
@@ -36,7 +36,8 @@ __export(Button_exports, {
|
|
|
36
36
|
buttonSizeRecipes: () => buttonSizeRecipes,
|
|
37
37
|
iconButtonGlyphPx: () => iconButtonGlyphPx,
|
|
38
38
|
labelLinePx: () => labelLinePx,
|
|
39
|
-
resolveButtonSizeRecipe: () => resolveButtonSizeRecipe
|
|
39
|
+
resolveButtonSizeRecipe: () => resolveButtonSizeRecipe,
|
|
40
|
+
useGlyphOnPlate: () => import_iconButtonGroupContext2.useGlyphOnPlate
|
|
40
41
|
});
|
|
41
42
|
module.exports = __toCommonJS(Button_exports);
|
|
42
43
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
@@ -62,6 +63,7 @@ var import_glass = require("./glass.native.js");
|
|
|
62
63
|
var import_circleGlyph = require("./circleGlyph.native.js");
|
|
63
64
|
var import_iconButtonGroupContext = require("./iconButtonGroupContext.native.js");
|
|
64
65
|
var import_IconButtonGroup = require("./IconButtonGroup.native.js");
|
|
66
|
+
var import_iconButtonGroupContext2 = require("./iconButtonGroupContext.native.js");
|
|
65
67
|
function _type_of(obj) {
|
|
66
68
|
"@swc/helpers - typeof";
|
|
67
69
|
|
|
@@ -431,18 +433,24 @@ function Button(param) {
|
|
|
431
433
|
var grouped = (0, import_groupContext.useControlGrouped)();
|
|
432
434
|
var labelled = verb != null || children != null && children !== false && children !== "";
|
|
433
435
|
var iconOnly = !labelled && Boolean(icon || iconAfter);
|
|
434
|
-
var
|
|
436
|
+
var fieldSurface = (0, import_theme3.useFieldSurface)();
|
|
437
|
+
var fieldGlyph = iconOnly && fieldSurface;
|
|
438
|
+
if (fieldGlyph) {
|
|
439
|
+
outlined = false;
|
|
440
|
+
if (chromeless === false) chromeless = void 0;
|
|
441
|
+
}
|
|
442
|
+
var circular = circularProp && !fieldGlyph && !(iconOnly && chromeless === true && plate == null);
|
|
435
443
|
var groupGround = (0, import_iconButtonGroupContext.useIconButtonGroupGround)();
|
|
436
444
|
(0, import_iconButtonGroupContext.useIconButtonGroupMember)(iconOnly);
|
|
437
|
-
var mediaPlate = iconOnly && plate === "media" && groupGround !== "media";
|
|
438
|
-
var confirmPlate = iconOnly && primaryPlate;
|
|
445
|
+
var mediaPlate = iconOnly && plate === "media" && groupGround !== "media" && !fieldGlyph;
|
|
446
|
+
var confirmPlate = iconOnly && primaryPlate && !fieldGlyph;
|
|
439
447
|
var iconButton = iconOnly && !mediaPlate && !confirmPlate && !grouped && chromeless !== false && outlined !== true && !circular;
|
|
440
448
|
if (import_tamagui.isWeb) (0, import_theme3.ensureKeyboardModalityTracking)();
|
|
441
449
|
var barSurface = (0, import_theme3.useBarSurface)();
|
|
442
|
-
var neutralGlyph = iconButton && !(theme !== null && theme !== void 0 ? theme : intent) && !barSurface && accentInk == null && inline !== true;
|
|
450
|
+
var neutralGlyph = iconButton && !(theme !== null && theme !== void 0 ? theme : intent) && !barSurface && !fieldGlyph && accentInk == null && inline !== true;
|
|
443
451
|
if (iconButton) {
|
|
444
452
|
chromeless = true;
|
|
445
|
-
accentInk = accentInk !== null && accentInk !== void 0 ? accentInk : !(theme !== null && theme !== void 0 ? theme : intent) && (barSurface || inline === true);
|
|
453
|
+
accentInk = accentInk !== null && accentInk !== void 0 ? accentInk : !(theme !== null && theme !== void 0 ? theme : intent) && (barSurface || fieldGlyph || inline === true);
|
|
446
454
|
}
|
|
447
455
|
var resolvedGlyphWeight = glyphWeight !== null && glyphWeight !== void 0 ? glyphWeight : iconOnly ? "bold" : "regular";
|
|
448
456
|
var elevatedGround = (0, import_theme3.useElevatedSurface)();
|
|
@@ -557,14 +565,14 @@ function Button(param) {
|
|
|
557
565
|
var resolvedChildren = children !== null && children !== void 0 ? children : labelFromParts;
|
|
558
566
|
var ariaPressedProp = props["aria-pressed"];
|
|
559
567
|
var isSelected = selected !== null && selected !== void 0 ? selected : ariaPressedProp === true || ariaPressedProp === "true" ? true : void 0;
|
|
560
|
-
var selectedFill = Boolean(isSelected) && !unavailable && !mediaPlate;
|
|
568
|
+
var selectedFill = Boolean(isSelected) && !unavailable && !mediaPlate && !fieldGlyph;
|
|
561
569
|
var barInk = accentInk && chromeless && !selectedFill && !unavailable && !confirmPlate ? labelled ? glyphTint.label : glyphTint.glyph : null;
|
|
562
570
|
var inlineGlyph = iconButton && inline === true && !nested;
|
|
563
571
|
var barGlyph = (iconButton || mediaPlate || confirmPlate) && !nested || labelled && chromeless && accentInk === true && edge === "start";
|
|
564
572
|
var labelLine = labelLinePx(knobProps.body.fontFamily);
|
|
565
573
|
var glyphFloor = iconButtonGlyphPx(labelLine);
|
|
566
574
|
var glassGroup = groupGround === "glass";
|
|
567
|
-
var GlassView = iconButton && !inlineGlyph && !nested && accentInk && barSurface && !selectedFill && !glassGroup ? (0, import_glass.loadGlassView)() : null;
|
|
575
|
+
var GlassView = iconButton && !inlineGlyph && !nested && accentInk && barSurface && !fieldGlyph && !selectedFill && !glassGroup ? (0, import_glass.loadGlassView)() : null;
|
|
568
576
|
var framedCircle = iconOnly && Boolean(circular) && !nested && !mediaPlate && !confirmPlate;
|
|
569
577
|
var accentFillHex = confirmPlate ? accentSolidFill(hostThemeName) : null;
|
|
570
578
|
var confirmInk = accentFillHex && (0, import_theme3.contrastRatio)((0, import_theme3.relativeLuminance)("#ffffff"), (0, import_theme3.relativeLuminance)(accentFillHex)) >= import_theme3.GLYPH_CONTRAST_FLOOR ? "#ffffff" : "$color";
|
|
@@ -707,9 +715,10 @@ function Button(param) {
|
|
|
707
715
|
} : mediaPlate ? {
|
|
708
716
|
backgroundColor: "$shadow5"
|
|
709
717
|
} : void 0;
|
|
718
|
+
var glyphPlated = Boolean(GlassView || groupGround || mediaPlate || confirmPlate || framedCircle);
|
|
710
719
|
var glassInset = typeof resolvedBorderWidth === "number" ? -resolvedBorderWidth : 0;
|
|
711
|
-
var glyphEdgePull =
|
|
712
|
-
var buttonElement = /* @__PURE__ */(0, import_jsx_runtime.
|
|
720
|
+
var glyphEdgePull = glyphPlated ? 0 : iconButton ? -Math.max(0, (visualPx - iconSize) / 2) : edgePull;
|
|
721
|
+
var buttonElement = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ButtonFrame, {
|
|
713
722
|
// DG-ST-03: an explained disable is aria-disabled (focusable, press
|
|
714
723
|
// swallowed in handlePress) instead of a natively disabled dead end.
|
|
715
724
|
disabled: explainedDisable ? false : isDisabled || false,
|
|
@@ -954,22 +963,25 @@ function Button(param) {
|
|
|
954
963
|
"aria-pressed": true,
|
|
955
964
|
"data-mp-selected": "true"
|
|
956
965
|
} : void 0),
|
|
957
|
-
children:
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
966
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_iconButtonGroupContext.GlyphPlateContext.Provider, {
|
|
967
|
+
value: glyphPlated,
|
|
968
|
+
children: [GlassView ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GlassView, {
|
|
969
|
+
glassEffectStyle: "regular",
|
|
970
|
+
isInteractive: !unavailable,
|
|
971
|
+
colorScheme: darkScheme ? "dark" : "light",
|
|
972
|
+
style: {
|
|
973
|
+
position: "absolute",
|
|
974
|
+
top: glassInset,
|
|
975
|
+
right: glassInset,
|
|
976
|
+
bottom: glassInset,
|
|
977
|
+
left: glassInset,
|
|
978
|
+
borderRadius: visualPx / 2,
|
|
979
|
+
alignItems: "center",
|
|
980
|
+
justifyContent: "center"
|
|
981
|
+
},
|
|
982
|
+
children: iconElement
|
|
983
|
+
}) : iconElement, labelContent, iconAfterElement]
|
|
984
|
+
})
|
|
973
985
|
});
|
|
974
986
|
var intentButton = activeThemeName ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Theme, {
|
|
975
987
|
name: activeThemeName,
|